puzzles: resync with upstream

This brings the puzzles source in sync with Simon's branch, commit fd304c5
(from March 2024), with some added Rockbox-specific compatibility changes:

https://www.franklinwei.com/git/puzzles/commit/?h=rockbox-devel&id=516830d9d76bdfe64fe5ccf2a9b59c33f5c7c078

There are quite a lot of backend changes, including a new "Mosaic" puzzle.
In addition, some new frontend changes were necessary:

- New "Preferences" menu to access the user preferences system.
- Enabled spacebar input for several games.

Change-Id: I94c7df674089c92f32d5f07025f6a1059068af1e
This commit is contained in:
Franklin Wei 2024-07-22 21:43:25 -04:00
parent c72030f98c
commit 09aa8de52c
184 changed files with 27833 additions and 15572 deletions

View file

@ -128,6 +128,7 @@ sgt-loopy,games
sgt-magnets,games
sgt-map,games
sgt-mines,games
sgt-mosaic,games
sgt-net,games
sgt-netslide,games
sgt-palisade,games

View file

@ -17,6 +17,7 @@ src/matching.c
src/midend.c
src/misc.c
src/penrose.c
src/penrose-legacy.c
src/printing.c
src/random.c
src/sort.c
@ -24,6 +25,9 @@ src/tdq.c
src/tree234.c
src/version.c
src/hat.c
src/spectre.c
#ifdef COMBINED
src/list.c
#endif

View file

@ -16,6 +16,7 @@ src/lightup.c
src/magnets.c
src/map.c
src/mines.c
src/mosaic.c
src/net.c
src/netslide.c
src/palisade.c
@ -37,7 +38,8 @@ src/unequal.c
src/unruly.c
src/untangle.c
/* disabled for now (fix puzzles.make and CATEGORIES to accomodate these) */
/* Disabled for now. Fix puzzles.make and CATEGORIES to accomodate these. */
/* The help system would also need to be patched to compile these. */
/*src/unfinished/group.c*/
/*src/unfinished/separate.c*/
/*src/unfinished/slide.c*/

View file

@ -36,6 +36,9 @@ BEGIN {
if($3 ~ "Rectangles")
file = "help/rect.c";
if($3 ~ "Train")
file = "help/tracks.c";
print "/* auto-generated by genhelp.sh (intermediate file) */" > file;
print "/* DO NOT EDIT! */" > file;
print "const char help_text[] = " > file;
@ -87,8 +90,24 @@ do
mv $f.tmp $f
done
# generate quick help from all the .R files
cat src/*.R | awk 'print_next { print_next = 0; print; } /!begin/ && />/ && /gamedesc.txt/ { print_next = 1; }' | awk -F ":" '{print "const char quick_help_text[] = \""$5"\";" >> "help/"$1".c" }'
# Generate quick help by parsing the CMakeLists.txt file to isolate
# the "Objective" text for each puzzle.
cat <<EOF > parsed_cmakelists.txt
function(puzzle NAME)
cmake_parse_arguments(OPT
"" "DISPLAYNAME;DESCRIPTION;OBJECTIVE;WINDOWS_EXE_NAME" "" \${ARGN})
message("\${NAME}:\${OPT_OBJECTIVE}")
endfunction()
EOF
# This parses out the puzzle(...) definitions from CMakeLists.
# TODO: Perhaps ask Simon to include special header/footer comments to
# make this less brittle?
cat src/CMakeLists.txt | awk '/puzzle\(/{p=1} p{print} /\)/{p=0}' >> parsed_cmakelists.txt
cmake -P parsed_cmakelists.txt 2>&1 | awk -F ":" '{print "const char quick_help_text[] = \""$2"\";" >> "help/"$1".c" }'
rm parsed_cmakelists.txt
rm puzzles.txt
rm compress

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,337 +6,338 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 450, TEXT_UNDERLINE },
{ 476, TEXT_UNDERLINE },
{ 503, TEXT_CENTER | C_RED },
{ 869, TEXT_UNDERLINE },
{ 897, TEXT_CENTER | C_RED },
{ 914, TEXT_UNDERLINE },
{ 451, TEXT_UNDERLINE },
{ 477, TEXT_UNDERLINE },
{ 504, TEXT_CENTER | C_RED },
{ 870, TEXT_UNDERLINE },
{ 898, TEXT_CENTER | C_RED },
{ 915, TEXT_UNDERLINE },
{ 927, TEXT_UNDERLINE },
{ 929, TEXT_UNDERLINE },
{ 942, TEXT_UNDERLINE },
{ 916, TEXT_UNDERLINE },
{ 928, TEXT_UNDERLINE },
{ 930, TEXT_UNDERLINE },
{ 943, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 5458 comp 3139 ratio 0.575119 level 10 saved 2319 */
/* orig 5480 comp 3142 ratio 0.573358 level 10 saved 2338 */
const char help_text[] = {
0xf0, 0x37, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x09, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x39, 0x3a, 0x20, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x20,
0x42, 0x6f, 0x78, 0x20, 0x00, 0x00, 0x00, 0x41, 0x00, 0x6e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x00, 0x6f, 0x66, 0x00, 0x62,
0x61, 0x6c, 0x6c, 0x73, 0x00, 0x61, 0x72, 0x65, 0x00, 0x68,
0x69, 0x64, 0x64, 0x65, 0x6e, 0x00, 0x69, 0x6e, 0x00, 0x61,
0x00, 0x72, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67, 0x75, 0x6c,
0x61, 0x72, 0x1c, 0x00, 0xf0, 0x15, 0x6e, 0x61, 0x2e, 0x00,
0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x74,
0x6f, 0x00, 0x64, 0x65, 0x64, 0x75, 0x63, 0x65, 0x00, 0x74,
0x68, 0x65, 0x00, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x4d, 0x00, 0x00, 0x11, 0x00, 0x02, 0x51, 0x00,
0xf5, 0x01, 0x62, 0x79, 0x00, 0x66, 0x69, 0x72, 0x69, 0x6e,
0x67, 0x00, 0x6c, 0x61, 0x73, 0x65, 0x72, 0x73, 0x28, 0x00,
0x51, 0x65, 0x64, 0x00, 0x61, 0x74, 0x29, 0x00, 0x45, 0x65,
0x64, 0x67, 0x65, 0x36, 0x00, 0x01, 0x65, 0x00, 0xb0, 0x00,
0x61, 0x6e, 0x64, 0x00, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76,
0x3a, 0x00, 0x30, 0x68, 0x6f, 0x77, 0x1c, 0x00, 0x72, 0x69,
0x72, 0x00, 0x62, 0x65, 0x61, 0x6d, 0xa5, 0x00, 0xe1, 0x64,
0x65, 0x66, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x2e, 0x00,
0x00, 0x00, 0x42, 0x17, 0x00, 0xf3, 0x0a, 0x77, 0x69, 0x6c,
0x6c, 0x00, 0x74, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x00, 0x73,
0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, 0x00, 0x66, 0x72,
0x6f, 0x6d, 0x3d, 0x00, 0xc0, 0x6f, 0x72, 0x69, 0x67, 0x69,
0x6e, 0x00, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x13, 0x00, 0x42,
0x79, 0x00, 0x68, 0x69, 0x82, 0x00, 0x21, 0x6f, 0x70, 0x96,
0x00, 0x6a, 0x65, 0x00, 0x73, 0x69, 0x64, 0x65, 0x8a, 0x00,
0xf2, 0x00, 0x28, 0x61, 0x74, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x38, 0x00, 0xf1,
0x04, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x29, 0x2c, 0x00,
0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x00, 0x61, 0x66, 0x66,
0x8c, 0x00, 0x00, 0xee, 0x00, 0x02, 0xf7, 0x00, 0x55, 0x69,
0x6e, 0x00, 0x6f, 0x6e, 0x4b, 0x00, 0x60, 0x66, 0x6f, 0x6c,
0x6c, 0x6f, 0x77, 0xcb, 0x00, 0xb1, 0x77, 0x61, 0x79, 0x73,
0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x41, 0xcd, 0x00, 0x50,
0x00, 0x74, 0x68, 0x61, 0x74, 0x88, 0x00, 0x31, 0x73, 0x00,
0x61, 0x3b, 0x00, 0xf1, 0x05, 0x00, 0x68, 0x65, 0x61, 0x64,
0x2d, 0x6f, 0x6e, 0x00, 0x69, 0x73, 0x00, 0x61, 0x62, 0x73,
0x6f, 0x72, 0x62, 0x65, 0x64, 0x0f, 0x01, 0x01, 0xde, 0x00,
0x93, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x00, 0x72, 0x65, 0x2d,
0x83, 0x00, 0x50, 0x2e, 0x00, 0x54, 0x68, 0x69, 0x6e, 0x00,
0x63, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x01, 0x01,
0x54, 0x00, 0x44, 0x6d, 0x65, 0x65, 0x74, 0x54, 0x00, 0x22,
0x6f, 0x6e, 0x87, 0x00, 0x99, 0x69, 0x72, 0x73, 0x74, 0x00,
0x72, 0x61, 0x6e, 0x6b, 0xe4, 0x00, 0x18, 0x2e, 0x90, 0x00,
0x44, 0x77, 0x69, 0x74, 0x68, 0x37, 0x00, 0x30, 0x69, 0x6e,
0x00, 0x99, 0x00, 0xe0, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x2d,
0x6c, 0x65, 0x66, 0x74, 0x00, 0x73, 0x71, 0x75, 0x7d, 0x01,
0x00, 0x90, 0x00, 0x22, 0x6e, 0x6f, 0x25, 0x00, 0x10, 0x61,
0xb1, 0x00, 0x00, 0x50, 0x00, 0x76, 0x69, 0x74, 0x00, 0x67,
0x65, 0x74, 0x73, 0x9a, 0x01, 0xb0, 0x00, 0x39, 0x30, 0x00,
0x64, 0x65, 0x67, 0x72, 0x65, 0x65, 0x73, 0x2c, 0x02, 0x00,
0x70, 0x00, 0x10, 0x72, 0x94, 0x01, 0x0f, 0x70, 0x00, 0x13,
0x01, 0x2b, 0x00, 0x0f, 0x71, 0x00, 0x12, 0x97, 0x73, 0x69,
0x6d, 0x69, 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x7b, 0x00, 0x03,
0x70, 0x00, 0x00, 0xb5, 0x00, 0x1d, 0x2e, 0x6f, 0x01, 0x50,
0x77, 0x6f, 0x75, 0x6c, 0x64, 0x46, 0x01, 0x02, 0x45, 0x01,
0x02, 0x24, 0x02, 0x00, 0x7a, 0x00, 0xc2, 0x65, 0x6e, 0x74,
0x72, 0x79, 0x00, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x83,
0x01, 0x30, 0x63, 0x6f, 0x6e, 0x14, 0x02, 0x12, 0x72, 0x53,
0x00, 0x54, 0x62, 0x65, 0x00, 0x60, 0x72, 0x64, 0x00, 0x1a,
0x27, 0xc8, 0x00, 0x01, 0x24, 0x02, 0x02, 0x5a, 0x00, 0x37,
0x67, 0x65, 0x74, 0x8b, 0x00, 0x60, 0x62, 0x65, 0x66, 0x6f,
0x72, 0x65, 0x5c, 0x00, 0x11, 0x65, 0x08, 0x03, 0x06, 0x5c,
0x02, 0x24, 0x62, 0x79, 0xfa, 0x00, 0x03, 0xaf, 0x00, 0x07,
0x6a, 0x01, 0x29, 0x6f, 0x72, 0x08, 0x01, 0x27, 0x6f, 0x66,
0xa1, 0x00, 0x02, 0x8a, 0x02, 0x00, 0x21, 0x02, 0x3f, 0x6c,
0x73, 0x6f, 0xa3, 0x00, 0x0e, 0x16, 0x42, 0x14, 0x02, 0x00,
0x4b, 0x01, 0x15, 0x72, 0x99, 0x00, 0x40, 0x61, 0x70, 0x70,
0x65, 0xd7, 0x03, 0x00, 0x7b, 0x02, 0x48, 0x60, 0x52, 0x27,
0x3b, 0x3e, 0x02, 0x00, 0x1a, 0x03, 0x02, 0xca, 0x02, 0x01,
0x90, 0x02, 0x00, 0x42, 0x02, 0x06, 0x2f, 0x00, 0xf4, 0x02,
0x60, 0x48, 0x27, 0x2e, 0x00, 0x4f, 0x74, 0x68, 0x65, 0x72,
0x77, 0x69, 0x73, 0x65, 0x2c, 0x00, 0x61, 0x47, 0x04, 0x02,
0x23, 0x00, 0x14, 0x73, 0xd9, 0x03, 0x03, 0xf9, 0x03, 0x02,
0xaf, 0x00, 0x00, 0xc3, 0x01, 0x01, 0x93, 0x01, 0x04, 0x5e,
0x01, 0x42, 0x77, 0x68, 0x65, 0x72, 0x3b, 0x04, 0x01, 0x41,
0x01, 0x02, 0x8c, 0x01, 0x40, 0x73, 0x00, 0x28, 0x74, 0xd2,
0x02, 0x03, 0x51, 0x00, 0x81, 0x69, 0x73, 0x00, 0x75, 0x6e,
0x69, 0x71, 0x75, 0x6d, 0x04, 0x01, 0x99, 0x00, 0x50, 0x73,
0x68, 0x6f, 0x74, 0x29, 0xd7, 0x00, 0x00, 0x87, 0x04, 0xf5,
0x04, 0x63, 0x61, 0x6e, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65,
0x00, 0x67, 0x75, 0x65, 0x73, 0x73, 0x65, 0x73, 0x00, 0x61,
0x6b, 0x02, 0x05, 0x68, 0x00, 0x08, 0x8f, 0x04, 0x74, 0x2c,
0x00, 0x62, 0x61, 0x73, 0x65, 0x64, 0x11, 0x03, 0x02, 0x4f,
0x01, 0x00, 0x9a, 0x00, 0xb7, 0x65, 0x78, 0x69, 0x74, 0x00,
0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0xc2, 0x04, 0x00, 0x10,
0x01, 0x84, 0x3b, 0x00, 0x6f, 0x6e, 0x63, 0x65, 0x00, 0x79,
0xf6, 0x04, 0x01, 0x70, 0x00, 0x84, 0x64, 0x00, 0x65, 0x6e,
0x6f, 0x75, 0x67, 0x68, 0x36, 0x05, 0x55, 0x00, 0x62, 0x75,
0x74, 0x74, 0x24, 0x01, 0x00, 0xa8, 0x01, 0x30, 0x61, 0x62,
0x6c, 0xfc, 0x00, 0x00, 0x37, 0x00, 0x22, 0x74, 0x6f, 0x3a,
0x00, 0x45, 0x79, 0x6f, 0x75, 0x72, 0xa9, 0x00, 0x52, 0x63,
0x68, 0x65, 0x63, 0x6b, 0xbe, 0x04, 0x10, 0x48, 0x08, 0x01,
0x10, 0x69, 0x46, 0x00, 0x70, 0x64, 0x69, 0x61, 0x67, 0x72,
0x61, 0x6d, 0xe5, 0x00, 0x17, 0x77, 0xf9, 0x04, 0x0a, 0x5c,
0x05, 0x02, 0x73, 0x00, 0x00, 0xfb, 0x00, 0xb8, 0x63, 0x72,
0x65, 0x61, 0x74, 0x65, 0x00, 0x65, 0x61, 0x63, 0x68, 0xb3,
0x00, 0xb1, 0x00, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f,
0x75, 0x72, 0x73, 0x4a, 0x00, 0x70, 0x6e, 0x00, 0x61, 0x62,
0x6f, 0x76, 0x65, 0x77, 0x04, 0xf3, 0x09, 0x31, 0x52, 0x48,
0x52, 0x2d, 0x2d, 0x2d, 0x2d, 0x00, 0x00, 0x7c, 0x2e, 0x2e,
0x4f, 0x2e, 0x4f, 0x2e, 0x2e, 0x2e, 0x7c, 0x00, 0x00, 0x32,
0x2e, 0x01, 0x00, 0x11, 0x33, 0x18, 0x00, 0x02, 0x01, 0x00,
0x1a, 0x7c, 0x0c, 0x00, 0x1e, 0x33, 0x18, 0x00, 0x10, 0x4f,
0x0c, 0x00, 0x1d, 0x48, 0x18, 0x00, 0x11, 0x4f, 0x0c, 0x00,
0x51, 0x31, 0x32, 0x2d, 0x52, 0x52, 0x6a, 0x00, 0x33, 0x00,
0x00, 0x41, 0x88, 0x00, 0x10, 0x2c, 0xb3, 0x03, 0x11, 0x69,
0x03, 0x06, 0x40, 0x73, 0x69, 0x62, 0x6c, 0x18, 0x05, 0x33,
0x72, 0x00, 0x61, 0x99, 0x03, 0x10, 0x6f, 0x6c, 0x06, 0xc5,
0x65, 0x69, 0x76, 0x65, 0x00, 0x6d, 0x75, 0x6c, 0x74, 0x69,
0x70, 0x6c, 0xab, 0x02, 0x01, 0xf9, 0x00, 0x03, 0x46, 0x03,
0x04, 0xb5, 0x03, 0x00, 0x1e, 0x01, 0xf4, 0x00, 0x28, 0x73,
0x65, 0x65, 0x00, 0x74, 0x75, 0x72, 0x6e, 0x00, 0x33, 0x29,
0x2e, 0x00, 0x53, 0x06, 0x04, 0x14, 0x2c, 0x53, 0x00, 0x58,
0x6d, 0x61, 0x79, 0x00, 0x62, 0xf1, 0x02, 0x13, 0x28, 0x79,
0x00, 0x41, 0x79, 0x00, 0x6d, 0x6f, 0x7b, 0x02, 0x21, 0x61,
0x6e, 0xdd, 0x01, 0x16, 0x29, 0x5e, 0x00, 0x00, 0x82, 0x00,
0x00, 0x5c, 0x00, 0x11, 0x61, 0x02, 0x03, 0x10, 0x28, 0x53,
0x01, 0x34, 0x60, 0x48, 0x27, 0x30, 0x02, 0x02, 0x04, 0x05,
0x07, 0x24, 0x06, 0x71, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c,
0x65, 0x91, 0x02, 0x43, 0x4e, 0x6f, 0x74, 0x65, 0x67, 0x03,
0x92, 0x6e, 0x79, 0x00, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74,
0xdf, 0x04, 0x06, 0x6e, 0x00, 0x13, 0x34, 0xbe, 0x01, 0x00,
0x9b, 0x00, 0x01, 0x14, 0x02, 0x63, 0x61, 0x00, 0x6e, 0x6f,
0x6e, 0x2d, 0xe4, 0x02, 0x40, 0x73, 0x6f, 0x6c, 0x75, 0xee,
0x00, 0x00, 0xd6, 0x05, 0x08, 0x35, 0x06, 0x04, 0x17, 0x02,
0x40, 0x69, 0x6c, 0x6c, 0x75, 0xd9, 0x06, 0x20, 0x74, 0x65,
0xa6, 0x03, 0x61, 0x69, 0x73, 0x3b, 0x00, 0x69, 0x66, 0x62,
0x02, 0x23, 0x6b, 0x6e, 0x29, 0x02, 0x50, 0x62, 0x6f, 0x61,
0x72, 0x64, 0x12, 0x04, 0x74, 0x74, 0x61, 0x69, 0x6e, 0x73,
0x00, 0x35, 0xf6, 0x02, 0x02, 0x78, 0x01, 0x25, 0x69, 0x6d,
0x7a, 0x01, 0x01, 0xbc, 0x07, 0x77, 0x74, 0x65, 0x72, 0x6d,
0x69, 0x6e, 0x65, 0x8a, 0x03, 0x53, 0x66, 0x69, 0x66, 0x74,
0x68, 0x8d, 0x05, 0x15, 0x73, 0x30, 0x01, 0x08, 0x81, 0x02,
0x63, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x64, 0xb7, 0x05, 0x41,
0x6e, 0x00, 0x78, 0x29, 0xce, 0x06, 0x03, 0x01, 0x00, 0x0f,
0x3f, 0x02, 0x07, 0x11, 0x7c, 0x18, 0x02, 0x15, 0x4f, 0x18,
0x00, 0x3e, 0x78, 0x78, 0x2e, 0x0c, 0x00, 0x0b, 0x24, 0x00,
0x0e, 0x48, 0x00, 0x08, 0x6a, 0x00, 0x61, 0x00, 0x00, 0x46,
0x6f, 0x72, 0x00, 0x2d, 0x04, 0x70, 0x72, 0x65, 0x61, 0x73,
0x6f, 0x6e, 0x2c, 0xc8, 0x00, 0x16, 0x6e, 0xa9, 0x03, 0x0f,
0x6f, 0x03, 0x01, 0x11, 0x2c, 0xe6, 0x00, 0x42, 0x67, 0x61,
0x6d, 0x65, 0x50, 0x07, 0x01, 0x17, 0x00, 0x02, 0xb5, 0x01,
0x01, 0x2f, 0x00, 0x04, 0x82, 0x01, 0x40, 0x00, 0x70, 0x72,
0x6f, 0xda, 0x08, 0xf2, 0x02, 0x73, 0x20, 0x74, 0x68, 0x65,
0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x72, 0x65, 0x73, 0x75,
0x6c, 0x74, 0x62, 0x04, 0xf0, 0x02, 0x68, 0x65, 0x00, 0x63,
0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x27, 0x73, 0x2c,
0x00, 0x72, 0x61, 0x0c, 0x05, 0x02, 0xe2, 0x01, 0x0e, 0x4c,
0x00, 0x01, 0x7a, 0x01, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x69,
0x63, 0x61, 0xea, 0x05, 0x06, 0x3f, 0x00, 0x62, 0x2e, 0x00,
0x53, 0x6f, 0x00, 0x69, 0x60, 0x02, 0x01, 0xa8, 0x03, 0x04,
0x55, 0x02, 0x11, 0x2c, 0xcb, 0x00, 0x11, 0x63, 0x52, 0x06,
0x3c, 0x70, 0x75, 0x74, 0xa0, 0x01, 0x03, 0x68, 0x02, 0x29,
0x6f, 0x66, 0xee, 0x04, 0x0e, 0xa1, 0x01, 0x11, 0x2c, 0xe0,
0x04, 0x00, 0x4b, 0x00, 0x02, 0x9d, 0x06, 0x20, 0x73, 0x74,
0xf9, 0x00, 0x31, 0x77, 0x69, 0x6e, 0x1c, 0x06, 0x00, 0x0e,
0x0a, 0x81, 0x00, 0x42, 0x6f, 0x78, 0x00, 0x77, 0x61, 0x73,
0x38, 0x02, 0x45, 0x72, 0x69, 0x62, 0x75, 0x41, 0x07, 0x01,
0x01, 0x07, 0x13, 0x6c, 0x84, 0x03, 0x00, 0xaf, 0x06, 0xd0,
0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61, 0x72, 0x76,
0x65, 0x79, 0x2e, 0x50, 0x04, 0x37, 0x39, 0x2e, 0x31, 0x53,
0x0a, 0x01, 0x41, 0x00, 0x30, 0x6f, 0x6c, 0x73, 0x5c, 0x0a,
0x20, 0x54, 0x6f, 0x00, 0x06, 0x00, 0xe2, 0x02, 0x01, 0xf9,
0x09, 0x01, 0x93, 0x03, 0x11, 0x2c, 0x42, 0x03, 0x62, 0x2d,
0x63, 0x6c, 0x69, 0x63, 0x6b, 0x60, 0x0a, 0x04, 0xe0, 0x07,
0x55, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x0e, 0x0a, 0x0b, 0x9f,
0x08, 0x00, 0x0e, 0x03, 0x04, 0x7f, 0x01, 0x01, 0xb7, 0x01,
0xf0, 0x0c, 0x62, 0x65, 0x00, 0x64, 0x69, 0x73, 0x70, 0x6c,
0x61, 0x79, 0x65, 0x64, 0x00, 0x69, 0x6d, 0x6d, 0x65, 0x64,
0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x2e, 0x00, 0x43, 0x5b,
0x00, 0x00, 0x34, 0x03, 0x74, 0x6f, 0x72, 0x00, 0x68, 0x6f,
0x6c, 0x64, 0x71, 0x07, 0x01, 0xba, 0x03, 0x03, 0xa5, 0x05,
0x18, 0x6f, 0x9c, 0x09, 0x23, 0x73, 0x65, 0x84, 0x00, 0x03,
0x5b, 0x00, 0x51, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x73, 0x07,
0x01, 0xa7, 0x01, 0xb1, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
0x00, 0x67, 0x6f, 0x00, 0x28, 0xac, 0x04, 0x30, 0x70, 0x72,
0x65, 0x5a, 0x05, 0x71, 0x73, 0x00, 0x67, 0x6f, 0x29, 0x00,
0x74, 0x7d, 0x07, 0x31, 0x66, 0x69, 0x72, 0x62, 0x0a, 0x03,
0x44, 0x06, 0x01, 0xed, 0x06, 0x00, 0xd9, 0x04, 0x01, 0x0a,
0x02, 0x01, 0xfc, 0x00, 0x10, 0x2c, 0xa8, 0x03, 0xb2, 0x61,
0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x62, 0x6c, 0x65, 0x2e,
0x1e, 0x01, 0x01, 0x9b, 0x02, 0x0d, 0xab, 0x06, 0x02, 0x11,
0x08, 0x09, 0x29, 0x01, 0x00, 0xcb, 0x01, 0x2b, 0x69, 0x6e,
0x1e, 0x0b, 0x31, 0x61, 0x00, 0x62, 0xbc, 0x01, 0x53, 0x63,
0x69, 0x72, 0x63, 0x6c, 0xce, 0x02, 0x03, 0xa2, 0x07, 0x00,
0x02, 0x02, 0x04, 0xf8, 0x00, 0x01, 0x65, 0x00, 0x22, 0x3b,
0x00, 0x49, 0x00, 0x52, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x6a,
0x05, 0x10, 0x6d, 0x69, 0x02, 0x05, 0x21, 0x00, 0x21, 0x65,
0x64, 0x76, 0x00, 0x00, 0x99, 0x00, 0x15, 0x4c, 0x49, 0x02,
0x09, 0x73, 0x00, 0x03, 0x4c, 0x05, 0x20, 0x6c, 0x6f, 0x46,
0x03, 0x02, 0x49, 0x00, 0xb4, 0x73, 0x74, 0x00, 0x6d, 0x6f,
0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x1f, 0x02, 0x01, 0xac,
0x08, 0x33, 0x2d, 0x00, 0x63, 0x85, 0x01, 0x50, 0x3b, 0x00,
0x77, 0x68, 0x6f, 0xc8, 0x05, 0x31, 0x6f, 0x77, 0x73, 0xb5,
0x00, 0x74, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x4e,
0x00, 0x06, 0xb9, 0x09, 0x03, 0x58, 0x00, 0x0e, 0x43, 0x00,
0x04, 0x86, 0x00, 0x02, 0x44, 0x02, 0x04, 0x2e, 0x02, 0x00,
0x27, 0x03, 0x62, 0x2f, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x66,
0x01, 0x02, 0x58, 0x00, 0x10, 0x2c, 0xf5, 0x01, 0x07, 0xf9,
0x09, 0x15, 0x2f, 0x3b, 0x09, 0x01, 0x25, 0x00, 0x31, 0x72,
0x6f, 0x77, 0x7a, 0x01, 0x02, 0xd7, 0x01, 0x72, 0x73, 0x6f,
0x72, 0x00, 0x6b, 0x65, 0x79, 0x8c, 0x00, 0x01, 0x48, 0x09,
0x52, 0x62, 0x65, 0x00, 0x75, 0x73, 0xfa, 0x02, 0x01, 0x1e,
0x01, 0x07, 0x94, 0x02, 0xb4, 0x67, 0x72, 0x69, 0x64, 0x2e,
0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0x59, 0x01, 0x10, 0x45,
0xcf, 0x09, 0x00, 0x42, 0x00, 0x02, 0x7b, 0x01, 0x09, 0xeb,
0x02, 0x00, 0x2a, 0x02, 0x20, 0x64, 0x64, 0xdc, 0x05, 0x21,
0x65, 0x77, 0x59, 0x01, 0x15, 0x2d, 0xe2, 0x01, 0x01, 0x6f,
0x01, 0x02, 0x93, 0x03, 0x14, 0x70, 0x4f, 0x00, 0x43, 0x53,
0x70, 0x61, 0x63, 0xc2, 0x01, 0x20, 0x6c, 0x6f, 0xa7, 0x01,
0x30, 0x00, 0x63, 0x65, 0x03, 0x02, 0x31, 0x72, 0x6f, 0x77,
0xd3, 0x00, 0x02, 0xde, 0x00, 0x00, 0xbc, 0x00, 0x10, 0x57,
0xe1, 0x04, 0x11, 0x61, 0x67, 0x08, 0x40, 0x72, 0x6f, 0x70,
0x72, 0xf5, 0x02, 0x0d, 0xc2, 0x0d, 0x01, 0xfc, 0x04, 0x44,
0x62, 0x65, 0x65, 0x6e, 0xdb, 0x01, 0x16, 0x2c, 0x9f, 0x08,
0x08, 0x26, 0x02, 0x03, 0xa4, 0x09, 0x32, 0x74, 0x6f, 0x70,
0x71, 0x0a, 0x42, 0x63, 0x6f, 0x72, 0x6e, 0x48, 0x00, 0x04,
0xf2, 0x00, 0x16, 0x3b, 0x86, 0x01, 0x01, 0x41, 0x01, 0x13,
0x28, 0xcd, 0x06, 0x31, 0x75, 0x73, 0x65, 0x97, 0x00, 0x01,
0x45, 0x01, 0x18, 0x29, 0x49, 0x05, 0x08, 0x73, 0x05, 0x00,
0xb0, 0x00, 0x12, 0x49, 0x9f, 0x06, 0x02, 0x7e, 0x02, 0x01,
0x4c, 0x07, 0x01, 0x28, 0x00, 0x15, 0x27, 0x2f, 0x09, 0x2a,
0x6e, 0x64, 0xa7, 0x05, 0x00, 0xde, 0x01, 0x21, 0x6e, 0x6f,
0x8d, 0x00, 0x00, 0x7a, 0x0e, 0x0c, 0xaf, 0x05, 0x00, 0x46,
0x08, 0x02, 0x53, 0x09, 0xf2, 0x02, 0x68, 0x65, 0x00, 0x6d,
0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x00, 0x69, 0x6e, 0x66,
0x6f, 0x72, 0x6d, 0x5f, 0x01, 0x92, 0x6e, 0x65, 0x63, 0x65,
0x73, 0x73, 0x61, 0x72, 0x79, 0xe1, 0x06, 0x32, 0x6d, 0x6f,
0x6e, 0x30, 0x07, 0x02, 0xcc, 0x04, 0x20, 0x74, 0x6f, 0x3d,
0x00, 0x31, 0x2c, 0x00, 0x73, 0x08, 0x00, 0x01, 0x43, 0x09,
0x01, 0x00, 0x0a, 0x00, 0xce, 0x02, 0x13, 0x2e, 0xad, 0x00,
0x12, 0x72, 0x5e, 0x05, 0x06, 0xf1, 0x06, 0x06, 0x93, 0x00,
0x73, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0xd5, 0x07,
0x05, 0x6e, 0x09, 0x51, 0x70, 0x61, 0x74, 0x68, 0x73, 0x51,
0x00, 0x72, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x8f,
0x07, 0x61, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x2c, 0x6a, 0x04,
0x05, 0x27, 0x00, 0x05, 0xbe, 0x04, 0x02, 0xb6, 0x03, 0x01,
0x6c, 0x02, 0x30, 0x69, 0x6e, 0x64, 0x42, 0x03, 0x03, 0x3b,
0x08, 0x20, 0x69, 0x74, 0x7b, 0x06, 0x32, 0x76, 0x65, 0x73,
0xb2, 0x05, 0x46, 0x72, 0x6f, 0x6e, 0x67, 0x9a, 0x00, 0x08,
0x86, 0x07, 0x41, 0x74, 0x63, 0x68, 0x00, 0x3a, 0x0c, 0x02,
0x79, 0x04, 0x20, 0x73, 0x74, 0xa7, 0x01, 0x07, 0x90, 0x00,
0x22, 0x62, 0x75, 0xef, 0x0b, 0x03, 0xef, 0x05, 0x00, 0x49,
0x00, 0x02, 0x8d, 0x00, 0x01, 0x94, 0x02, 0x0d, 0x91, 0x00,
0x60, 0x72, 0x65, 0x76, 0x65, 0x61, 0x6c, 0x24, 0x09, 0x52,
0x77, 0x72, 0x69, 0x74, 0x74, 0xff, 0x0f, 0x43, 0x72, 0x65,
0x64, 0x29, 0xd9, 0x0c, 0x2f, 0x69, 0x73, 0x05, 0x01, 0x02,
0x01, 0x97, 0x00, 0x05, 0x25, 0x05, 0x0d, 0xf9, 0x01, 0x51,
0x64, 0x65, 0x63, 0x69, 0x64, 0x6d, 0x08, 0x10, 0x67, 0xd9,
0x09, 0x21, 0x75, 0x70, 0xf8, 0x06, 0x20, 0x6c, 0x65, 0xac,
0x05, 0x15, 0x2c, 0x84, 0x01, 0x20, 0x73, 0x65, 0x62, 0x06,
0x42, 0x00, 0x53, 0x6f, 0x6c, 0x55, 0x10, 0x02, 0x8c, 0x00,
0x02, 0x7d, 0x04, 0x5b, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x93,
0x01, 0x42, 0x2e, 0x00, 0x41, 0x74, 0xd1, 0x01, 0x01, 0x6d,
0x05, 0x14, 0x2c, 0x2e, 0x02, 0x33, 0x6c, 0x79, 0x2d, 0x9d,
0x0b, 0x02, 0x0a, 0x03, 0x0e, 0x2b, 0x06, 0x60, 0x61, 0x73,
0x00, 0x66, 0x69, 0x6c, 0xe7, 0x00, 0x08, 0x3d, 0x05, 0x00,
0x20, 0x09, 0x1f, 0x6e, 0x44, 0x00, 0x04, 0x0f, 0x32, 0x00,
0x04, 0x02, 0xfe, 0x00, 0x00, 0x73, 0x0d, 0x30, 0x63, 0x72,
0x6f, 0xf5, 0x00, 0x02, 0xd3, 0x03, 0x22, 0x6d, 0x69, 0xd2,
0x03, 0x0c, 0x3c, 0x00, 0x01, 0x29, 0x00, 0x02, 0x3a, 0x00,
0x40, 0x2e, 0x00, 0x49, 0x6e, 0x1e, 0x04, 0x01, 0xcb, 0x00,
0x00, 0x9b, 0x03, 0x06, 0x1c, 0x00, 0x01, 0xb9, 0x05, 0x13,
0x73, 0x3e, 0x0a, 0x00, 0x48, 0x04, 0x02, 0xcb, 0x08, 0x15,
0x64, 0x58, 0x02, 0x00, 0x65, 0x04, 0x1f, 0x64, 0x91, 0x01,
0x10, 0x01, 0x2f, 0x01, 0x03, 0x81, 0x0a, 0x50, 0x28, 0x6a,
0x75, 0x73, 0x74, 0x8b, 0x00, 0x05, 0x1d, 0x09, 0x01, 0x78,
0x04, 0x0f, 0x8e, 0x03, 0x00, 0x12, 0x29, 0xc4, 0x00, 0x01,
0x48, 0x0e, 0x3e, 0x65, 0x78, 0x74, 0x8e, 0x00, 0x05, 0x8e,
0x08, 0x01, 0x63, 0x04, 0x02, 0x8d, 0x00, 0x00, 0xe8, 0x10,
0x41, 0x72, 0x64, 0x65, 0x72, 0x70, 0x03, 0x02, 0x86, 0x02,
0x3e, 0x75, 0x69, 0x73, 0x88, 0x00, 0x05, 0x88, 0x11, 0x04,
0xad, 0x01, 0x00, 0x8c, 0x02, 0x00, 0x2a, 0x02, 0x35, 0x28,
0x41, 0x6c, 0xeb, 0x01, 0x01, 0xdb, 0x02, 0x72, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x5c, 0x00, 0x13, 0x73, 0x7b,
0x08, 0x31, 0x32, 0x2e, 0x31, 0xce, 0x02, 0x01, 0xa9, 0x05,
0x51, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x49, 0x07, 0x12, 0x29,
0x83, 0x08, 0x17, 0x32, 0x83, 0x08, 0x50, 0x70, 0x61, 0x72,
0x61, 0x6d, 0xda, 0x0a, 0x02, 0x85, 0x08, 0x01, 0xe1, 0x07,
0x06, 0x14, 0x00, 0x02, 0x45, 0x00, 0x04, 0x40, 0x00, 0x06,
0x95, 0x00, 0xe2, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x8c, 0x07, 0x12,
0x6e, 0x1a, 0x00, 0xa1, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0x82, 0x05, 0x81, 0x69, 0x64, 0x74,
0x68, 0x2c, 0x00, 0x48, 0x65, 0x5b, 0x06, 0x51, 0x00, 0x00,
0x53, 0x69, 0x7a, 0x4a, 0x08, 0x00, 0x30, 0x05, 0x01, 0xb1,
0x00, 0x02, 0x4c, 0x08, 0x01, 0xb4, 0x08, 0x21, 0x72, 0x65,
0x6f, 0x00, 0x32, 0x32, 0x00, 0x78, 0x37, 0x00, 0x24, 0x00,
0x78, 0x38, 0x00, 0x04, 0x0b, 0x13, 0x21, 0x65, 0x72, 0x39,
0x00, 0x51, 0x2c, 0x00, 0x74, 0x77, 0x6f, 0x0e, 0x00, 0x32,
0x72, 0x6f, 0x77, 0x29, 0x0f, 0x03, 0x10, 0x00, 0x06, 0xfb,
0x05, 0x72, 0x4e, 0x6f, 0x2e, 0x20, 0x6f, 0x66, 0x20, 0x5a,
0x02, 0x3b, 0x00, 0x00, 0x4e, 0xf6, 0x05, 0x23, 0x74, 0x6f,
0x09, 0x0f, 0x27, 0x69, 0x6e, 0xb2, 0x06, 0x01, 0x1d, 0x12,
0x00, 0x63, 0x03, 0x10, 0x62, 0x9d, 0x06, 0x00, 0x9b, 0x02,
0x14, 0x6c, 0x31, 0x06, 0x11, 0x2c, 0xa6, 0x06, 0x00, 0x0d,
0x12, 0x20, 0x67, 0x65, 0x4a, 0x0d, 0x00, 0x24, 0x01, 0x15,
0x74, 0x38, 0x0a, 0xf3, 0x04, 0x00, 0x68, 0x79, 0x70, 0x68,
0x65, 0x6e, 0x2c, 0x00, 0x6c, 0x69, 0x6b, 0x65, 0x00, 0x60,
0x32, 0x2d, 0x36, 0x27, 0x1f, 0x02, 0x05, 0x36, 0x0c, 0x02,
0x43, 0x02, 0x1f, 0x6e, 0x88, 0x00, 0x05, 0x1a, 0x6f, 0x88,
0x00, 0x01, 0x96, 0x10, 0x00, 0xd7, 0x03, 0x05, 0xfc, 0x05,
0x72, 0x69, 0x73, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x2b, 0x0f,
0x00, 0xee, 0x01, 0x16, 0x66, 0xbb, 0x0b, 0x04, 0x95, 0x08,
0x0f, 0xeb, 0x06, 0x0b, 0x33, 0x3b, 0x00, 0x61, 0x45, 0x09,
0x11, 0x75, 0x76, 0x03, 0x00, 0x40, 0x0f, 0x31, 0x66, 0x66,
0x65, 0x8c, 0x04, 0x03, 0x2b, 0x00, 0x03, 0x0e, 0x08, 0x02,
0xfa, 0x13, 0x29, 0x61, 0x6c, 0x94, 0x0b, 0x02, 0x1a, 0x05,
0x60, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x83, 0x00, 0x02,
0xa6, 0x09, 0x26, 0x6c, 0x6c, 0xda, 0x05, 0x62, 0x69, 0x6e,
0x70, 0x75, 0x74, 0x73, 0x8d, 0x14, 0x21, 0x75, 0x74, 0x0c,
0x00, 0x70, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x00,
0x42, 0x6f, 0x78, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x01, 0xf0,
0x21, 0x00, 0x00, 0x00, 0x41, 0x00, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x00, 0x6f, 0x66, 0x00, 0x62, 0x61, 0x6c, 0x6c,
0x73, 0x00, 0x61, 0x72, 0x65, 0x00, 0x68, 0x69, 0x64, 0x64,
0x65, 0x6e, 0x00, 0x69, 0x6e, 0x00, 0x61, 0x00, 0x72, 0x65,
0x63, 0x74, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x1c,
0x00, 0xf0, 0x15, 0x6e, 0x61, 0x2e, 0x00, 0x59, 0x6f, 0x75,
0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x74, 0x6f, 0x00, 0x64,
0x65, 0x64, 0x75, 0x63, 0x65, 0x00, 0x74, 0x68, 0x65, 0x00,
0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d,
0x00, 0x00, 0x11, 0x00, 0x02, 0x51, 0x00, 0xf5, 0x01, 0x62,
0x79, 0x00, 0x66, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x00, 0x6c,
0x61, 0x73, 0x65, 0x72, 0x73, 0x28, 0x00, 0x51, 0x65, 0x64,
0x00, 0x61, 0x74, 0x29, 0x00, 0x45, 0x65, 0x64, 0x67, 0x65,
0x36, 0x00, 0x01, 0x65, 0x00, 0xb0, 0x00, 0x61, 0x6e, 0x64,
0x00, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x3a, 0x00, 0x30,
0x68, 0x6f, 0x77, 0x1c, 0x00, 0x72, 0x69, 0x72, 0x00, 0x62,
0x65, 0x61, 0x6d, 0xa5, 0x00, 0xe1, 0x64, 0x65, 0x66, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x2e, 0x00, 0x00, 0x00, 0x42,
0x17, 0x00, 0xf3, 0x0a, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x74,
0x72, 0x61, 0x76, 0x65, 0x6c, 0x00, 0x73, 0x74, 0x72, 0x61,
0x69, 0x67, 0x68, 0x74, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x3d,
0x00, 0xc0, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x00, 0x75,
0x6e, 0x74, 0x69, 0x6c, 0x13, 0x00, 0x42, 0x79, 0x00, 0x68,
0x69, 0x82, 0x00, 0x21, 0x6f, 0x70, 0x96, 0x00, 0x6a, 0x65,
0x00, 0x73, 0x69, 0x64, 0x65, 0x8a, 0x00, 0xf2, 0x00, 0x28,
0x61, 0x74, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x70,
0x6f, 0x69, 0x6e, 0x74, 0x38, 0x00, 0xf1, 0x04, 0x65, 0x6d,
0x65, 0x72, 0x67, 0x65, 0x29, 0x2c, 0x00, 0x75, 0x6e, 0x6c,
0x65, 0x73, 0x73, 0x00, 0x61, 0x66, 0x66, 0x8c, 0x00, 0x00,
0xee, 0x00, 0x02, 0xf7, 0x00, 0x55, 0x69, 0x6e, 0x00, 0x6f,
0x6e, 0x4b, 0x00, 0x60, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77,
0xcb, 0x00, 0xb1, 0x77, 0x61, 0x79, 0x73, 0x3a, 0x00, 0x00,
0x00, 0x2d, 0x00, 0x41, 0xcd, 0x00, 0x50, 0x00, 0x74, 0x68,
0x61, 0x74, 0x88, 0x00, 0x31, 0x73, 0x00, 0x61, 0x3b, 0x00,
0xf1, 0x05, 0x00, 0x68, 0x65, 0x61, 0x64, 0x2d, 0x6f, 0x6e,
0x00, 0x69, 0x73, 0x00, 0x61, 0x62, 0x73, 0x6f, 0x72, 0x62,
0x65, 0x64, 0x0f, 0x01, 0x01, 0xde, 0x00, 0x93, 0x6e, 0x65,
0x76, 0x65, 0x72, 0x00, 0x72, 0x65, 0x2d, 0x83, 0x00, 0x50,
0x2e, 0x00, 0x54, 0x68, 0x69, 0x6e, 0x00, 0x63, 0x63, 0x6c,
0x75, 0x64, 0x65, 0x73, 0x20, 0x01, 0x01, 0x54, 0x00, 0x44,
0x6d, 0x65, 0x65, 0x74, 0x54, 0x00, 0x22, 0x6f, 0x6e, 0x87,
0x00, 0x99, 0x69, 0x72, 0x73, 0x74, 0x00, 0x72, 0x61, 0x6e,
0x6b, 0xe4, 0x00, 0x18, 0x2e, 0x90, 0x00, 0x44, 0x77, 0x69,
0x74, 0x68, 0x37, 0x00, 0x30, 0x69, 0x6e, 0x00, 0x99, 0x00,
0xe0, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x2d, 0x6c, 0x65, 0x66,
0x74, 0x00, 0x73, 0x71, 0x75, 0x7d, 0x01, 0x00, 0x90, 0x00,
0x22, 0x6e, 0x6f, 0x25, 0x00, 0x10, 0x61, 0xb1, 0x00, 0x00,
0x50, 0x00, 0x76, 0x69, 0x74, 0x00, 0x67, 0x65, 0x74, 0x73,
0x9a, 0x01, 0xb0, 0x00, 0x39, 0x30, 0x00, 0x64, 0x65, 0x67,
0x72, 0x65, 0x65, 0x73, 0x2c, 0x02, 0x00, 0x70, 0x00, 0x10,
0x72, 0x94, 0x01, 0x0f, 0x70, 0x00, 0x13, 0x01, 0x2b, 0x00,
0x0f, 0x71, 0x00, 0x12, 0x97, 0x73, 0x69, 0x6d, 0x69, 0x6c,
0x61, 0x72, 0x6c, 0x79, 0x7b, 0x00, 0x03, 0x70, 0x00, 0x00,
0xb5, 0x00, 0x1d, 0x2e, 0x6f, 0x01, 0x50, 0x77, 0x6f, 0x75,
0x6c, 0x64, 0x46, 0x01, 0x02, 0x45, 0x01, 0x02, 0x24, 0x02,
0x00, 0x7a, 0x00, 0xc2, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x00,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x83, 0x01, 0x30, 0x63,
0x6f, 0x6e, 0x14, 0x02, 0x12, 0x72, 0x53, 0x00, 0x54, 0x62,
0x65, 0x00, 0x60, 0x72, 0x64, 0x00, 0x1a, 0x27, 0xc8, 0x00,
0x01, 0x24, 0x02, 0x02, 0x5a, 0x00, 0x37, 0x67, 0x65, 0x74,
0x8b, 0x00, 0x60, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x5c,
0x00, 0x11, 0x65, 0x08, 0x03, 0x06, 0x5c, 0x02, 0x24, 0x62,
0x79, 0xfa, 0x00, 0x03, 0xaf, 0x00, 0x07, 0x6a, 0x01, 0x29,
0x6f, 0x72, 0x08, 0x01, 0x27, 0x6f, 0x66, 0xa1, 0x00, 0x02,
0x8a, 0x02, 0x00, 0x21, 0x02, 0x3f, 0x6c, 0x73, 0x6f, 0xa3,
0x00, 0x0e, 0x16, 0x42, 0x14, 0x02, 0x00, 0x4b, 0x01, 0x15,
0x72, 0x99, 0x00, 0x40, 0x61, 0x70, 0x70, 0x65, 0xd7, 0x03,
0x00, 0x7b, 0x02, 0x48, 0x60, 0x52, 0x27, 0x3b, 0x3e, 0x02,
0x00, 0x1a, 0x03, 0x02, 0xca, 0x02, 0x01, 0x90, 0x02, 0x00,
0x42, 0x02, 0x06, 0x2f, 0x00, 0xf4, 0x02, 0x60, 0x48, 0x27,
0x2e, 0x00, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x77, 0x69, 0x73,
0x65, 0x2c, 0x00, 0x61, 0x47, 0x04, 0x02, 0x23, 0x00, 0x14,
0x73, 0xd9, 0x03, 0x03, 0xf9, 0x03, 0x02, 0xaf, 0x00, 0x00,
0xc3, 0x01, 0x01, 0x93, 0x01, 0x04, 0x5e, 0x01, 0x42, 0x77,
0x68, 0x65, 0x72, 0x3b, 0x04, 0x01, 0x41, 0x01, 0x02, 0x8c,
0x01, 0x40, 0x73, 0x00, 0x28, 0x74, 0xd2, 0x02, 0x03, 0x51,
0x00, 0x81, 0x69, 0x73, 0x00, 0x75, 0x6e, 0x69, 0x71, 0x75,
0x6d, 0x04, 0x01, 0x99, 0x00, 0x50, 0x73, 0x68, 0x6f, 0x74,
0x29, 0xd7, 0x00, 0x00, 0x87, 0x04, 0xf5, 0x04, 0x63, 0x61,
0x6e, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x00, 0x67, 0x75,
0x65, 0x73, 0x73, 0x65, 0x73, 0x00, 0x61, 0x6b, 0x02, 0x05,
0x68, 0x00, 0x08, 0x8f, 0x04, 0x74, 0x2c, 0x00, 0x62, 0x61,
0x73, 0x65, 0x64, 0x11, 0x03, 0x02, 0x4f, 0x01, 0x00, 0x9a,
0x00, 0xb7, 0x65, 0x78, 0x69, 0x74, 0x00, 0x70, 0x61, 0x74,
0x74, 0x65, 0x72, 0xc2, 0x04, 0x00, 0x10, 0x01, 0x84, 0x3b,
0x00, 0x6f, 0x6e, 0x63, 0x65, 0x00, 0x79, 0xf6, 0x04, 0x01,
0x70, 0x00, 0x84, 0x64, 0x00, 0x65, 0x6e, 0x6f, 0x75, 0x67,
0x68, 0x36, 0x05, 0x55, 0x00, 0x62, 0x75, 0x74, 0x74, 0x24,
0x01, 0x00, 0xa8, 0x01, 0x30, 0x61, 0x62, 0x6c, 0xfc, 0x00,
0x00, 0x37, 0x00, 0x22, 0x74, 0x6f, 0x3a, 0x00, 0x45, 0x79,
0x6f, 0x75, 0x72, 0xa9, 0x00, 0x52, 0x63, 0x68, 0x65, 0x63,
0x6b, 0xbe, 0x04, 0x10, 0x48, 0x08, 0x01, 0x10, 0x69, 0x46,
0x00, 0x70, 0x64, 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d, 0xe5,
0x00, 0x17, 0x77, 0xf9, 0x04, 0x0a, 0x5c, 0x05, 0x02, 0x73,
0x00, 0x00, 0xfb, 0x00, 0xb8, 0x63, 0x72, 0x65, 0x61, 0x74,
0x65, 0x00, 0x65, 0x61, 0x63, 0x68, 0xb3, 0x00, 0xb1, 0x00,
0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x75, 0x72, 0x73,
0x4a, 0x00, 0x70, 0x6e, 0x00, 0x61, 0x62, 0x6f, 0x76, 0x65,
0x77, 0x04, 0x42, 0x31, 0x52, 0x48, 0x52, 0xfc, 0x05, 0xe3,
0x7c, 0x2e, 0x2e, 0x4f, 0x2e, 0x4f, 0x2e, 0x2e, 0x2e, 0x7c,
0x00, 0x00, 0x32, 0x2e, 0x01, 0x00, 0x11, 0x33, 0x18, 0x00,
0x02, 0x01, 0x00, 0x1a, 0x7c, 0x0c, 0x00, 0x1e, 0x33, 0x18,
0x00, 0x10, 0x4f, 0x0c, 0x00, 0x1d, 0x48, 0x18, 0x00, 0x11,
0x4f, 0x0c, 0x00, 0x52, 0x31, 0x32, 0x2d, 0x52, 0x52, 0x66,
0x06, 0x23, 0x00, 0x41, 0x88, 0x00, 0x10, 0x2c, 0xb3, 0x03,
0x11, 0x69, 0x03, 0x06, 0x40, 0x73, 0x69, 0x62, 0x6c, 0x18,
0x05, 0x33, 0x72, 0x00, 0x61, 0x99, 0x03, 0x10, 0x6f, 0x6c,
0x06, 0xc5, 0x65, 0x69, 0x76, 0x65, 0x00, 0x6d, 0x75, 0x6c,
0x74, 0x69, 0x70, 0x6c, 0xab, 0x02, 0x01, 0xf9, 0x00, 0x03,
0x46, 0x03, 0x04, 0xb5, 0x03, 0x00, 0x1e, 0x01, 0xf4, 0x00,
0x28, 0x73, 0x65, 0x65, 0x00, 0x74, 0x75, 0x72, 0x6e, 0x00,
0x33, 0x29, 0x2e, 0x00, 0x53, 0x06, 0x04, 0x14, 0x2c, 0x53,
0x00, 0x58, 0x6d, 0x61, 0x79, 0x00, 0x62, 0xf1, 0x02, 0x13,
0x28, 0x79, 0x00, 0x41, 0x79, 0x00, 0x6d, 0x6f, 0x7b, 0x02,
0x21, 0x61, 0x6e, 0xdd, 0x01, 0x16, 0x29, 0x5e, 0x00, 0x00,
0x82, 0x00, 0x00, 0x5c, 0x00, 0x11, 0x61, 0x02, 0x03, 0x10,
0x28, 0x53, 0x01, 0x34, 0x60, 0x48, 0x27, 0x30, 0x02, 0x02,
0x04, 0x05, 0x07, 0x24, 0x06, 0x71, 0x65, 0x78, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x91, 0x02, 0x43, 0x4e, 0x6f, 0x74, 0x65,
0x67, 0x03, 0x92, 0x6e, 0x79, 0x00, 0x6c, 0x61, 0x79, 0x6f,
0x75, 0x74, 0xdf, 0x04, 0x06, 0x6e, 0x00, 0x13, 0x34, 0xbe,
0x01, 0x00, 0x9b, 0x00, 0x01, 0x14, 0x02, 0x63, 0x61, 0x00,
0x6e, 0x6f, 0x6e, 0x2d, 0xe4, 0x02, 0x40, 0x73, 0x6f, 0x6c,
0x75, 0xee, 0x00, 0x00, 0xd6, 0x05, 0x08, 0x35, 0x06, 0x04,
0x17, 0x02, 0x40, 0x69, 0x6c, 0x6c, 0x75, 0xd9, 0x06, 0x20,
0x74, 0x65, 0xa6, 0x03, 0x61, 0x69, 0x73, 0x3b, 0x00, 0x69,
0x66, 0x62, 0x02, 0x23, 0x6b, 0x6e, 0x29, 0x02, 0x50, 0x62,
0x6f, 0x61, 0x72, 0x64, 0x12, 0x04, 0x74, 0x74, 0x61, 0x69,
0x6e, 0x73, 0x00, 0x35, 0xf6, 0x02, 0x02, 0x78, 0x01, 0x25,
0x69, 0x6d, 0x7a, 0x01, 0x01, 0xbc, 0x07, 0x77, 0x74, 0x65,
0x72, 0x6d, 0x69, 0x6e, 0x65, 0x8a, 0x03, 0x53, 0x66, 0x69,
0x66, 0x74, 0x68, 0x8d, 0x05, 0x15, 0x73, 0x30, 0x01, 0x08,
0x81, 0x02, 0x63, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x64, 0xb7,
0x05, 0x41, 0x6e, 0x00, 0x78, 0x29, 0xce, 0x06, 0x05, 0x53,
0x08, 0x0f, 0x3f, 0x02, 0x05, 0x11, 0x7c, 0x18, 0x02, 0x15,
0x4f, 0x18, 0x00, 0x3e, 0x78, 0x78, 0x2e, 0x0c, 0x00, 0x0b,
0x24, 0x00, 0x0f, 0x48, 0x00, 0x01, 0x07, 0xbd, 0x08, 0x51,
0x00, 0x46, 0x6f, 0x72, 0x00, 0x2d, 0x04, 0x70, 0x72, 0x65,
0x61, 0x73, 0x6f, 0x6e, 0x2c, 0xc8, 0x00, 0x16, 0x6e, 0xa9,
0x03, 0x0f, 0x6f, 0x03, 0x01, 0x11, 0x2c, 0xe6, 0x00, 0x42,
0x67, 0x61, 0x6d, 0x65, 0x50, 0x07, 0x01, 0x17, 0x00, 0x02,
0xb5, 0x01, 0x01, 0x2f, 0x00, 0x04, 0x82, 0x01, 0x40, 0x00,
0x70, 0x72, 0x6f, 0xda, 0x08, 0xf2, 0x02, 0x73, 0x20, 0x74,
0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x72, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x62, 0x04, 0xf0, 0x02, 0x68, 0x65,
0x00, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x27,
0x73, 0x2c, 0x00, 0x72, 0x61, 0x0c, 0x05, 0x02, 0xe2, 0x01,
0x0e, 0x4c, 0x00, 0x01, 0x7a, 0x01, 0x75, 0x64, 0x65, 0x6e,
0x74, 0x69, 0x63, 0x61, 0xea, 0x05, 0x06, 0x3f, 0x00, 0x62,
0x2e, 0x00, 0x53, 0x6f, 0x00, 0x69, 0x60, 0x02, 0x01, 0xa8,
0x03, 0x04, 0x55, 0x02, 0x11, 0x2c, 0xcb, 0x00, 0x11, 0x63,
0x52, 0x06, 0x3c, 0x70, 0x75, 0x74, 0xa0, 0x01, 0x03, 0x68,
0x02, 0x29, 0x6f, 0x66, 0xee, 0x04, 0x0e, 0xa1, 0x01, 0x11,
0x2c, 0xe0, 0x04, 0x00, 0x4b, 0x00, 0x02, 0x9d, 0x06, 0x20,
0x73, 0x74, 0xf9, 0x00, 0x31, 0x77, 0x69, 0x6e, 0x1c, 0x06,
0x00, 0x24, 0x0a, 0x81, 0x00, 0x42, 0x6f, 0x78, 0x00, 0x77,
0x61, 0x73, 0x38, 0x02, 0x45, 0x72, 0x69, 0x62, 0x75, 0x41,
0x07, 0x01, 0x01, 0x07, 0x13, 0x6c, 0x84, 0x03, 0x00, 0xaf,
0x06, 0xd0, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61,
0x72, 0x76, 0x65, 0x79, 0x2e, 0x50, 0x04, 0x37, 0x39, 0x2e,
0x31, 0x69, 0x0a, 0x01, 0x41, 0x00, 0x90, 0x6f, 0x6c, 0x73,
0x20, 0x00, 0x00, 0x00, 0x54, 0x6f, 0x00, 0x06, 0x00, 0xe2,
0x02, 0x01, 0xf9, 0x09, 0x01, 0x93, 0x03, 0x11, 0x2c, 0x42,
0x03, 0x62, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x60, 0x0a,
0x04, 0xe0, 0x07, 0x55, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x0e,
0x0a, 0x0b, 0x9f, 0x08, 0x00, 0x0e, 0x03, 0x04, 0x7f, 0x01,
0x01, 0xb7, 0x01, 0xf0, 0x0c, 0x62, 0x65, 0x00, 0x64, 0x69,
0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x00, 0x69, 0x6d,
0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x2e,
0x00, 0x43, 0x5b, 0x00, 0x00, 0x34, 0x03, 0x74, 0x6f, 0x72,
0x00, 0x68, 0x6f, 0x6c, 0x64, 0x71, 0x07, 0x01, 0xba, 0x03,
0x03, 0xa5, 0x05, 0x18, 0x6f, 0x9c, 0x09, 0x23, 0x73, 0x65,
0x84, 0x00, 0x03, 0x5b, 0x00, 0x51, 0x68, 0x69, 0x67, 0x68,
0x6c, 0x73, 0x07, 0x01, 0xa7, 0x01, 0xb1, 0x75, 0x72, 0x72,
0x65, 0x6e, 0x74, 0x00, 0x67, 0x6f, 0x00, 0x28, 0xac, 0x04,
0x30, 0x70, 0x72, 0x65, 0x5a, 0x05, 0x71, 0x73, 0x00, 0x67,
0x6f, 0x29, 0x00, 0x74, 0x7d, 0x07, 0x31, 0x66, 0x69, 0x72,
0x62, 0x0a, 0x03, 0x44, 0x06, 0x01, 0xed, 0x06, 0x00, 0xd9,
0x04, 0x01, 0x0a, 0x02, 0x01, 0xfc, 0x00, 0x10, 0x2c, 0xa8,
0x03, 0xb2, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x62,
0x6c, 0x65, 0x2e, 0x1e, 0x01, 0x01, 0x9b, 0x02, 0x0d, 0xab,
0x06, 0x02, 0x11, 0x08, 0x09, 0x29, 0x01, 0x00, 0xcb, 0x01,
0x2b, 0x69, 0x6e, 0x1e, 0x0b, 0x31, 0x61, 0x00, 0x62, 0xbc,
0x01, 0x53, 0x63, 0x69, 0x72, 0x63, 0x6c, 0xce, 0x02, 0x03,
0xa2, 0x07, 0x00, 0x02, 0x02, 0x04, 0xf8, 0x00, 0x01, 0x65,
0x00, 0x22, 0x3b, 0x00, 0x49, 0x00, 0x52, 0x61, 0x67, 0x61,
0x69, 0x6e, 0x6a, 0x05, 0x10, 0x6d, 0x69, 0x02, 0x05, 0x21,
0x00, 0x21, 0x65, 0x64, 0x76, 0x00, 0x00, 0x99, 0x00, 0x15,
0x4c, 0x49, 0x02, 0x09, 0x73, 0x00, 0x03, 0x4c, 0x05, 0x20,
0x6c, 0x6f, 0x46, 0x03, 0x02, 0x49, 0x00, 0xb4, 0x73, 0x74,
0x00, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x1f,
0x02, 0x01, 0xac, 0x08, 0x33, 0x2d, 0x00, 0x63, 0x85, 0x01,
0x50, 0x3b, 0x00, 0x77, 0x68, 0x6f, 0xc8, 0x05, 0x31, 0x6f,
0x77, 0x73, 0xb5, 0x00, 0x74, 0x63, 0x6f, 0x6c, 0x75, 0x6d,
0x6e, 0x73, 0x4e, 0x00, 0x06, 0xb9, 0x09, 0x03, 0x58, 0x00,
0x0e, 0x43, 0x00, 0x04, 0x86, 0x00, 0x02, 0x44, 0x02, 0x04,
0x2e, 0x02, 0x00, 0x27, 0x03, 0x62, 0x2f, 0x62, 0x65, 0x6c,
0x6f, 0x77, 0x66, 0x01, 0x02, 0x58, 0x00, 0x10, 0x2c, 0xf5,
0x01, 0x07, 0xf9, 0x09, 0x15, 0x2f, 0x3b, 0x09, 0x01, 0x25,
0x00, 0x31, 0x72, 0x6f, 0x77, 0x7a, 0x01, 0x02, 0xd7, 0x01,
0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x8c, 0x00,
0x01, 0x48, 0x09, 0x52, 0x62, 0x65, 0x00, 0x75, 0x73, 0xfa,
0x02, 0x01, 0x1e, 0x01, 0x07, 0x94, 0x02, 0xb4, 0x67, 0x72,
0x69, 0x64, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0x59,
0x01, 0x10, 0x45, 0xcf, 0x09, 0x00, 0x42, 0x00, 0x02, 0x7b,
0x01, 0x09, 0xeb, 0x02, 0x00, 0x2a, 0x02, 0x20, 0x64, 0x64,
0xdc, 0x05, 0x21, 0x65, 0x77, 0x59, 0x01, 0x15, 0x2d, 0xe2,
0x01, 0x01, 0x6f, 0x01, 0x02, 0x93, 0x03, 0x14, 0x70, 0x4f,
0x00, 0x43, 0x53, 0x70, 0x61, 0x63, 0xc2, 0x01, 0x20, 0x6c,
0x6f, 0xa7, 0x01, 0x30, 0x00, 0x63, 0x65, 0x03, 0x02, 0x31,
0x72, 0x6f, 0x77, 0xd3, 0x00, 0x02, 0xde, 0x00, 0x00, 0xbc,
0x00, 0x10, 0x57, 0xe1, 0x04, 0x11, 0x61, 0x67, 0x08, 0x40,
0x72, 0x6f, 0x70, 0x72, 0xf5, 0x02, 0x0d, 0xc2, 0x0d, 0x01,
0xfc, 0x04, 0x44, 0x62, 0x65, 0x65, 0x6e, 0xdb, 0x01, 0x16,
0x2c, 0x9f, 0x08, 0x08, 0x26, 0x02, 0x03, 0xa4, 0x09, 0x32,
0x74, 0x6f, 0x70, 0x71, 0x0a, 0x42, 0x63, 0x6f, 0x72, 0x6e,
0x48, 0x00, 0x04, 0xf2, 0x00, 0x16, 0x3b, 0x86, 0x01, 0x01,
0x41, 0x01, 0x13, 0x28, 0xcd, 0x06, 0x31, 0x75, 0x73, 0x65,
0x97, 0x00, 0x01, 0x45, 0x01, 0x18, 0x29, 0x49, 0x05, 0x08,
0x73, 0x05, 0x00, 0xb0, 0x00, 0x12, 0x49, 0x9f, 0x06, 0x02,
0x7e, 0x02, 0x01, 0x4c, 0x07, 0x01, 0x28, 0x00, 0x15, 0x27,
0x2f, 0x09, 0x2a, 0x6e, 0x64, 0xa7, 0x05, 0x00, 0xde, 0x01,
0x21, 0x6e, 0x6f, 0x8d, 0x00, 0x00, 0x7a, 0x0e, 0x0c, 0xaf,
0x05, 0x00, 0x46, 0x08, 0x02, 0x53, 0x09, 0xf2, 0x02, 0x68,
0x65, 0x00, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x00,
0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x01, 0x92, 0x6e,
0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0xe1, 0x06,
0x32, 0x6d, 0x6f, 0x6e, 0x30, 0x07, 0x02, 0xcc, 0x04, 0x20,
0x74, 0x6f, 0x3d, 0x00, 0x31, 0x2c, 0x00, 0x73, 0x08, 0x00,
0x01, 0x43, 0x09, 0x01, 0x00, 0x0a, 0x00, 0xce, 0x02, 0x13,
0x2e, 0xad, 0x00, 0x12, 0x72, 0x5e, 0x05, 0x06, 0xf1, 0x06,
0x06, 0x93, 0x00, 0x73, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0xd5, 0x07, 0x05, 0x6e, 0x09, 0x51, 0x70, 0x61, 0x74,
0x68, 0x73, 0x51, 0x00, 0x72, 0x61, 0x6c, 0x72, 0x65, 0x61,
0x64, 0x79, 0x8f, 0x07, 0x61, 0x61, 0x62, 0x6f, 0x75, 0x74,
0x2c, 0x6a, 0x04, 0x05, 0x27, 0x00, 0x05, 0xbe, 0x04, 0x02,
0xb6, 0x03, 0x01, 0x6c, 0x02, 0x30, 0x69, 0x6e, 0x64, 0x42,
0x03, 0x03, 0x3b, 0x08, 0x20, 0x69, 0x74, 0x7b, 0x06, 0x32,
0x76, 0x65, 0x73, 0xb2, 0x05, 0x46, 0x72, 0x6f, 0x6e, 0x67,
0x9a, 0x00, 0x08, 0x86, 0x07, 0x41, 0x74, 0x63, 0x68, 0x00,
0x3a, 0x0c, 0x02, 0x79, 0x04, 0x20, 0x73, 0x74, 0xa7, 0x01,
0x07, 0x90, 0x00, 0x22, 0x62, 0x75, 0xef, 0x0b, 0x03, 0xef,
0x05, 0x00, 0x49, 0x00, 0x02, 0x8d, 0x00, 0x01, 0x94, 0x02,
0x0d, 0x91, 0x00, 0x60, 0x72, 0x65, 0x76, 0x65, 0x61, 0x6c,
0x24, 0x09, 0x52, 0x77, 0x72, 0x69, 0x74, 0x74, 0xff, 0x0f,
0x43, 0x72, 0x65, 0x64, 0x29, 0xd9, 0x0c, 0x2f, 0x69, 0x73,
0x05, 0x01, 0x02, 0x01, 0x97, 0x00, 0x05, 0x25, 0x05, 0x0d,
0xf9, 0x01, 0x51, 0x64, 0x65, 0x63, 0x69, 0x64, 0x6d, 0x08,
0x10, 0x67, 0xd9, 0x09, 0x21, 0x75, 0x70, 0xf8, 0x06, 0x20,
0x6c, 0x65, 0xac, 0x05, 0x15, 0x2c, 0x84, 0x01, 0x20, 0x73,
0x65, 0x62, 0x06, 0x42, 0x00, 0x53, 0x6f, 0x6c, 0x55, 0x10,
0x02, 0x8c, 0x00, 0x02, 0x7d, 0x04, 0x5b, 0x63, 0x74, 0x75,
0x61, 0x6c, 0x93, 0x01, 0x42, 0x2e, 0x00, 0x41, 0x74, 0xd1,
0x01, 0x01, 0x6d, 0x05, 0x14, 0x2c, 0x2e, 0x02, 0x33, 0x6c,
0x79, 0x2d, 0x9d, 0x0b, 0x02, 0x0a, 0x03, 0x0e, 0x2b, 0x06,
0x60, 0x61, 0x73, 0x00, 0x66, 0x69, 0x6c, 0xe7, 0x00, 0x08,
0x3d, 0x05, 0x00, 0x20, 0x09, 0x1f, 0x6e, 0x44, 0x00, 0x04,
0x0f, 0x32, 0x00, 0x04, 0x02, 0xfe, 0x00, 0x00, 0x73, 0x0d,
0x30, 0x63, 0x72, 0x6f, 0xf5, 0x00, 0x02, 0xd3, 0x03, 0x22,
0x6d, 0x69, 0xd2, 0x03, 0x0c, 0x3c, 0x00, 0x01, 0x29, 0x00,
0x02, 0x3a, 0x00, 0x40, 0x2e, 0x00, 0x49, 0x6e, 0x1e, 0x04,
0x01, 0xcb, 0x00, 0x00, 0x9b, 0x03, 0x06, 0x1c, 0x00, 0x01,
0xb9, 0x05, 0x13, 0x73, 0x3e, 0x0a, 0x00, 0x48, 0x04, 0x02,
0xcb, 0x08, 0x15, 0x64, 0x58, 0x02, 0x00, 0x65, 0x04, 0x1f,
0x64, 0x91, 0x01, 0x10, 0x01, 0x2f, 0x01, 0x03, 0x81, 0x0a,
0x50, 0x28, 0x6a, 0x75, 0x73, 0x74, 0x8b, 0x00, 0x05, 0x1d,
0x09, 0x01, 0x78, 0x04, 0x0f, 0x8e, 0x03, 0x00, 0x12, 0x29,
0xc4, 0x00, 0x01, 0x48, 0x0e, 0x3e, 0x65, 0x78, 0x74, 0x8e,
0x00, 0x05, 0x8e, 0x08, 0x01, 0x63, 0x04, 0x02, 0x8d, 0x00,
0x00, 0xe8, 0x10, 0x41, 0x72, 0x64, 0x65, 0x72, 0x70, 0x03,
0x02, 0x86, 0x02, 0x3e, 0x75, 0x69, 0x73, 0x88, 0x00, 0x05,
0x88, 0x11, 0x04, 0xad, 0x01, 0x00, 0x8c, 0x02, 0x00, 0x2a,
0x02, 0x35, 0x28, 0x41, 0x6c, 0xeb, 0x01, 0x01, 0xdb, 0x02,
0x72, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x5c, 0x00,
0x13, 0x73, 0x7b, 0x08, 0x31, 0x32, 0x2e, 0x31, 0xce, 0x02,
0x01, 0xa9, 0x05, 0x51, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x49,
0x07, 0x12, 0x29, 0x83, 0x08, 0x17, 0x32, 0x83, 0x08, 0x50,
0x70, 0x61, 0x72, 0x61, 0x6d, 0xda, 0x0a, 0x02, 0x85, 0x08,
0x01, 0xe1, 0x07, 0x06, 0x14, 0x00, 0x02, 0x45, 0x00, 0x04,
0x40, 0x00, 0x06, 0x95, 0x00, 0xe2, 0x60, 0x43, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70,
0x8c, 0x07, 0x12, 0x6e, 0x1a, 0x00, 0xa1, 0x54, 0x79, 0x70,
0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x82, 0x05, 0x81,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x5b, 0x06,
0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x4a, 0x08, 0x00, 0x30,
0x05, 0x01, 0xb1, 0x00, 0x02, 0x4c, 0x08, 0x01, 0xb4, 0x08,
0x21, 0x72, 0x65, 0x6f, 0x00, 0x32, 0x32, 0x00, 0x78, 0x37,
0x00, 0x24, 0x00, 0x78, 0x38, 0x00, 0x04, 0x0b, 0x13, 0x21,
0x65, 0x72, 0x39, 0x00, 0x51, 0x2c, 0x00, 0x74, 0x77, 0x6f,
0x0e, 0x00, 0x32, 0x72, 0x6f, 0x77, 0x29, 0x0f, 0x03, 0x10,
0x00, 0x06, 0xfb, 0x05, 0x72, 0x4e, 0x6f, 0x2e, 0x20, 0x6f,
0x66, 0x20, 0x5a, 0x02, 0x3b, 0x00, 0x00, 0x4e, 0xf6, 0x05,
0x23, 0x74, 0x6f, 0x09, 0x0f, 0x27, 0x69, 0x6e, 0xb2, 0x06,
0x01, 0x1d, 0x12, 0x00, 0x63, 0x03, 0x10, 0x62, 0x9d, 0x06,
0x00, 0x9b, 0x02, 0x14, 0x6c, 0x31, 0x06, 0x11, 0x2c, 0xa6,
0x06, 0x00, 0x0d, 0x12, 0x20, 0x67, 0x65, 0x4a, 0x0d, 0x00,
0x24, 0x01, 0x15, 0x74, 0x38, 0x0a, 0xf3, 0x04, 0x00, 0x68,
0x79, 0x70, 0x68, 0x65, 0x6e, 0x2c, 0x00, 0x6c, 0x69, 0x6b,
0x65, 0x00, 0x60, 0x32, 0x2d, 0x36, 0x27, 0x1f, 0x02, 0x05,
0x36, 0x0c, 0x02, 0x43, 0x02, 0x1f, 0x6e, 0x88, 0x00, 0x05,
0x1a, 0x6f, 0x88, 0x00, 0x01, 0x96, 0x10, 0x00, 0xd7, 0x03,
0x05, 0xfc, 0x05, 0x72, 0x69, 0x73, 0x00, 0x6f, 0x6e, 0x6c,
0x79, 0x2b, 0x0f, 0x00, 0xee, 0x01, 0x16, 0x66, 0xbb, 0x0b,
0x04, 0x95, 0x08, 0x0f, 0xeb, 0x06, 0x0b, 0x33, 0x3b, 0x00,
0x61, 0x45, 0x09, 0x11, 0x75, 0x76, 0x03, 0x00, 0x40, 0x0f,
0x31, 0x66, 0x66, 0x65, 0x8c, 0x04, 0x03, 0x2b, 0x00, 0x03,
0x0e, 0x08, 0x02, 0xfa, 0x13, 0x29, 0x61, 0x6c, 0x94, 0x0b,
0x02, 0x1a, 0x05, 0x60, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74,
0x83, 0x00, 0x02, 0xa6, 0x09, 0x26, 0x6c, 0x6c, 0xda, 0x05,
0x62, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x8d, 0x14, 0x21,
0x75, 0x74, 0x0c, 0x00, 0x70, 0x6d, 0x61, 0x74, 0x63, 0x68,
0x2e, 0x00,
};
const unsigned short help_text_len = 5458;
const unsigned short help_text_words = 1015;
const unsigned short help_text_len = 5480;
const unsigned short help_text_words = 1016;
const char quick_help_text[] = "Find the hidden balls in the box by bouncing laser beams off them.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,336 +6,356 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 180, TEXT_CENTER | C_RED },
{ 312, TEXT_UNDERLINE },
{ 737, TEXT_CENTER | C_RED },
{ 754, TEXT_UNDERLINE },
{ 755, TEXT_UNDERLINE },
{ 765, TEXT_UNDERLINE },
{ 774, TEXT_UNDERLINE },
{ 813, TEXT_UNDERLINE },
{ 845, TEXT_UNDERLINE },
{ 880, TEXT_UNDERLINE },
{ 178, TEXT_CENTER | C_RED },
{ 310, TEXT_UNDERLINE },
{ 763, TEXT_CENTER | C_RED },
{ 780, TEXT_UNDERLINE },
{ 781, TEXT_UNDERLINE },
{ 791, TEXT_UNDERLINE },
{ 800, TEXT_UNDERLINE },
{ 839, TEXT_UNDERLINE },
{ 871, TEXT_UNDERLINE },
{ 906, TEXT_UNDERLINE },
{ 991, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 5230 comp 3126 ratio 0.597706 level 10 saved 2104 */
/* orig 5613 comp 3312 ratio 0.590059 level 10 saved 2301 */
const char help_text[] = {
0xf3, 0x4b, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x36, 0x3a, 0x20, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65,
0x73, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68,
0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x73, 0x65, 0x74, 0x00,
0x6f, 0x66, 0x00, 0x69, 0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73,
0x00, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x64, 0x00, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x00,
0x74, 0x68, 0x65, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e,
0x67, 0x00, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x00, 0x45, 0x61,
0x63, 0x68, 0x32, 0x00, 0xf0, 0x04, 0x00, 0x63, 0x6f, 0x6e,
0x74, 0x61, 0x69, 0x6e, 0x73, 0x00, 0x61, 0x00, 0x6e, 0x75,
0x6d, 0x62, 0x65, 0x72, 0x2e, 0x5e, 0x00, 0xb0, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x22,
0x00, 0x41, 0x6e, 0x65, 0x63, 0x74, 0x48, 0x00, 0x04, 0x67,
0x00, 0xf2, 0x00, 0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65,
0x72, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x62, 0x9a, 0x00,
0xf3, 0x0b, 0x2c, 0x00, 0x69, 0x6e, 0x00, 0x73, 0x75, 0x63,
0x68, 0x00, 0x61, 0x00, 0x77, 0x61, 0x79, 0x00, 0x74, 0x68,
0x61, 0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00, 0xbb, 0x00,
0xa0, 0x00, 0x72, 0x75, 0x6e, 0x00, 0x68, 0x6f, 0x72, 0x69,
0x7a, 0x75, 0x00, 0xd0, 0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x72,
0x00, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00, 0x11,
0x2e, 0x2c, 0x00, 0x33, 0x54, 0x68, 0x65, 0x8a, 0x00, 0x00,
0xd8, 0x00, 0x13, 0x62, 0x3a, 0x00, 0x81, 0x74, 0x65, 0x72,
0x6d, 0x69, 0x6e, 0x61, 0x74, 0xc5, 0x00, 0x54, 0x74, 0x00,
0x61, 0x6e, 0x79, 0xc1, 0x00, 0x80, 0x69, 0x73, 0x00, 0x65,
0x71, 0x75, 0x61, 0x6c, 0xab, 0x00, 0x16, 0x74, 0x3c, 0x00,
0x70, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x93, 0x00,
0x00, 0x88, 0x00, 0x03, 0x2e, 0x00, 0x03, 0x63, 0x00, 0x25,
0x77, 0x6f, 0x59, 0x00, 0x31, 0x6d, 0x61, 0x79, 0x97, 0x00,
0xf1, 0x04, 0x69, 0x6e, 0x00, 0x70, 0x61, 0x72, 0x61, 0x6c,
0x6c, 0x65, 0x6c, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65,
0x6e, 0x4f, 0x00, 0x84, 0x73, 0x61, 0x6d, 0x65, 0x00, 0x74,
0x77, 0x6f, 0xfb, 0x00, 0xd0, 0x2c, 0x00, 0x62, 0x75, 0x74,
0x00, 0x6e, 0x6f, 0x00, 0x6d, 0x6f, 0x72, 0x65, 0x5b, 0x00,
0x11, 0x6e, 0x1e, 0x00, 0x00, 0x47, 0x00, 0x52, 0x64, 0x6f,
0x00, 0x73, 0x6f, 0x62, 0x00, 0x14, 0x4e, 0x61, 0x00, 0x11,
0x00, 0x84, 0x01, 0x61, 0x65, 0x73, 0x00, 0x61, 0x6e, 0x6f,
0x31, 0x01, 0x02, 0x17, 0x00, 0x02, 0x26, 0x00, 0x39, 0x41,
0x6c, 0x6c, 0x56, 0x01, 0x34, 0x61, 0x72, 0x65, 0x6e, 0x01,
0x25, 0x65, 0x64, 0x64, 0x01, 0x00, 0x2c, 0x00, 0x51, 0x54,
0x68, 0x65, 0x72, 0x65, 0x20, 0x00, 0x31, 0x73, 0x6f, 0x6d,
0x25, 0x00, 0xf0, 0x00, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61,
0x62, 0x6c, 0x65, 0x00, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x1b,
0x01, 0x60, 0x76, 0x65, 0x00, 0x6d, 0x6f, 0x64, 0x88, 0x01,
0x30, 0x77, 0x68, 0x69, 0xe2, 0x01, 0xc0, 0x6e, 0x76, 0x6f,
0x6c, 0x76, 0x65, 0x00, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x39,
0x01, 0x01, 0x0a, 0x02, 0x03, 0xe5, 0x00, 0x13, 0x2d, 0xa0,
0x00, 0x50, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x3c, 0x01, 0x00,
0x59, 0x00, 0x20, 0x74, 0x68, 0x27, 0x00, 0x02, 0xa9, 0x00,
0x01, 0xdb, 0x00, 0x31, 0x32, 0x2c, 0x00, 0x64, 0x01, 0x74,
0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x45, 0x00, 0xa0,
0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
0x8b, 0x00, 0x72, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74,
0x68, 0x01, 0xb8, 0x6e, 0x6f, 0x00, 0x73, 0x65, 0x71, 0x75,
0x65, 0x6e, 0x63, 0x65, 0xc0, 0x01, 0x00, 0x20, 0x01, 0xf4,
0x05, 0x66, 0x6f, 0x72, 0x6d, 0x00, 0x61, 0x00, 0x6c, 0x6f,
0x6f, 0x70, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x6f, 0x6e,
0x65, 0xc6, 0x01, 0x44, 0x62, 0x61, 0x63, 0x6b, 0xc2, 0x01,
0x01, 0x73, 0x01, 0x04, 0xb0, 0x01, 0x00, 0x0f, 0x02, 0x91,
0x72, 0x75, 0x6c, 0x65, 0x73, 0x00, 0x73, 0x74, 0x61, 0xd6,
0x02, 0x32, 0x62, 0x6f, 0x76, 0x0b, 0x01, 0x00, 0x2c, 0x00,
0x70, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4b, 0x00,
0x10, 0x73, 0x29, 0x01, 0x60, 0x43, 0x72, 0x65, 0x64, 0x69,
0x74, 0x6b, 0x00, 0xf1, 0x01, 0x00, 0x74, 0x68, 0x69, 0x73,
0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f,
0x65, 0xcc, 0x02, 0xb0, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69,
0x00, 0x5b, 0x31, 0x32, 0x5d, 0x2e, 0x00, 0x04, 0x98, 0x02,
0x31, 0x77, 0x61, 0x73, 0x09, 0x03, 0x04, 0x3a, 0x03, 0x01,
0x89, 0x00, 0x10, 0x69, 0x14, 0x00, 0x40, 0x6c, 0x6c, 0x65,
0x63, 0xea, 0x00, 0xf1, 0x00, 0x00, 0x62, 0x79, 0x00, 0x4a,
0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61, 0x72, 0x76, 0x65,
0xac, 0x02, 0x00, 0x46, 0x00, 0xd1, 0x00, 0x68, 0x74, 0x74,
0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x5d,
0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65,
0x6e, 0x2f, 0x7c, 0x00, 0xf1, 0x0c, 0x73, 0x2f, 0x68, 0x61,
0x73, 0x68, 0x69, 0x77, 0x6f, 0x6b, 0x61, 0x6b, 0x65, 0x72,
0x6f, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x00, 0x28, 0x62, 0x65,
0x77, 0x61, 0x72, 0x22, 0x01, 0xd5, 0x46, 0x6c, 0x61, 0x73,
0x68, 0x29, 0x00, 0x00, 0x00, 0x32, 0x36, 0x2e, 0x31, 0xe5,
0x03, 0x01, 0x8e, 0x00, 0x21, 0x6f, 0x6c, 0xee, 0x03, 0x20,
0x54, 0x6f, 0xc0, 0x03, 0x10, 0x63, 0xee, 0x03, 0x03, 0xb5,
0x01, 0x05, 0xa1, 0x02, 0x08, 0x98, 0x02, 0x30, 0x63, 0x6c,
0x69, 0x44, 0x01, 0x10, 0x68, 0x06, 0x02, 0xb8, 0x75, 0x73,
0x65, 0x00, 0x64, 0x6f, 0x77, 0x6e, 0x00, 0x6f, 0x6e, 0x66,
0x01, 0x00, 0x04, 0x00, 0x51, 0x64, 0x72, 0x61, 0x67, 0x00,
0xf3, 0x01, 0x42, 0x77, 0x61, 0x72, 0x64, 0x1f, 0x04, 0x01,
0xf2, 0x01, 0x01, 0xf9, 0x03, 0x00, 0xc5, 0x02, 0x62, 0x6e,
0x6f, 0x74, 0x00, 0x6e, 0x65, 0x07, 0x01, 0x01, 0x2e, 0x00,
0x13, 0x61, 0xa8, 0x02, 0x01, 0xd5, 0x03, 0x16, 0x6f, 0x32,
0x00, 0x03, 0x57, 0x00, 0xa5, 0x3b, 0x00, 0x79, 0x6f, 0x75,
0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x37, 0x00, 0x10, 0x6d, 0xa4,
0x01, 0x06, 0x8b, 0x00, 0xa3, 0x66, 0x61, 0x72, 0x00, 0x65,
0x6e, 0x6f, 0x75, 0x67, 0x68, 0x9a, 0x01, 0x10, 0x65, 0x53,
0x02, 0x54, 0x65, 0x6e, 0x64, 0x65, 0x64, 0xd3, 0x00, 0x33,
0x64, 0x69, 0x72, 0x6a, 0x01, 0xf1, 0x07, 0x74, 0x6f, 0x00,
0x62, 0x65, 0x00, 0x75, 0x6e, 0x61, 0x6d, 0x62, 0x69, 0x67,
0x75, 0x6f, 0x75, 0x73, 0x2e, 0x00, 0x28, 0x53, 0x6f, 0x64,
0x00, 0x87, 0x63, 0x61, 0x6e, 0x00, 0x6b, 0x65, 0x65, 0x70,
0x5b, 0x00, 0x42, 0x6e, 0x65, 0x61, 0x72, 0x36, 0x02, 0x31,
0x74, 0x61, 0x72, 0x1f, 0x04, 0x07, 0xec, 0x00, 0xb0, 0x63,
0x6f, 0x6e, 0x76, 0x65, 0x6e, 0x69, 0x65, 0x6e, 0x74, 0x6c,
0x8f, 0x04, 0x35, 0x72, 0x6f, 0x77, 0x91, 0x02, 0x32, 0x6f,
0x75, 0x74, 0x85, 0x02, 0x20, 0x69, 0x74, 0xfc, 0x03, 0x10,
0x6d, 0x52, 0x04, 0x05, 0x84, 0x00, 0x20, 0x73, 0x2e, 0x91,
0x01, 0x22, 0x44, 0x6f, 0xf0, 0x02, 0xd6, 0x69, 0x73, 0x00,
0x61, 0x67, 0x61, 0x69, 0x6e, 0x00, 0x77, 0x68, 0x65, 0x6e,
0x85, 0x01, 0x00, 0x17, 0x00, 0xf0, 0x04, 0x6c, 0x72, 0x65,
0x61, 0x64, 0x79, 0x00, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e,
0x74, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x1d, 0x03, 0x05, 0xee,
0x03, 0x06, 0x53, 0x04, 0x03, 0xf7, 0x03, 0x45, 0x49, 0x66,
0x00, 0x74, 0xcc, 0x03, 0x04, 0x3f, 0x00, 0x22, 0x61, 0x73,
0x80, 0x00, 0x04, 0x9c, 0x00, 0x08, 0x80, 0x04, 0x07, 0xe3,
0x01, 0x00, 0x28, 0x00, 0x10, 0x70, 0x08, 0x05, 0x20, 0x74,
0x74, 0x38, 0x01, 0x11, 0x79, 0x20, 0x00, 0x40, 0x63, 0x75,
0x72, 0x72, 0x7b, 0x00, 0x34, 0x67, 0x61, 0x6d, 0x29, 0x03,
0x51, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x39, 0x00, 0x24, 0x62,
0x79, 0x21, 0x03, 0x26, 0x29, 0x2c, 0x5b, 0x03, 0x00, 0xd4,
0x01, 0x11, 0x67, 0x49, 0x05, 0x02, 0x71, 0x01, 0x01, 0xb6,
0x00, 0x21, 0x72, 0x65, 0xb4, 0x01, 0x00, 0xeb, 0x01, 0x11,
0x6f, 0xa4, 0x00, 0x10, 0x6d, 0xe3, 0x02, 0x21, 0x49, 0x66,
0x78, 0x01, 0x31, 0x77, 0x61, 0x6e, 0x24, 0x04, 0x60, 0x72,
0x65, 0x6d, 0x69, 0x6e, 0x64, 0x13, 0x00, 0x52, 0x72, 0x73,
0x65, 0x6c, 0x66, 0xf2, 0x03, 0x08, 0xa2, 0x00, 0x90, 0x64,
0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x6c, 0x0e, 0x05,
0x10, 0x20, 0x49, 0x02, 0x03, 0xa7, 0x06, 0x0c, 0xb9, 0x02,
0x45, 0x68, 0x65, 0x6d, 0x2c, 0xd3, 0x01, 0x61, 0x72, 0x69,
0x67, 0x68, 0x74, 0x2d, 0x6b, 0x02, 0x08, 0x21, 0x00, 0x27,
0x00, 0x69, 0x83, 0x05, 0x03, 0x7c, 0x02, 0xb3, 0x64, 0x72,
0x61, 0x77, 0x00, 0x61, 0x00, 0x60, 0x6e, 0x6f, 0x6e, 0xc2,
0x04, 0x87, 0x27, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72,
0xaf, 0x00, 0x00, 0xc7, 0x04, 0x34, 0x6b, 0x00, 0x79, 0x25,
0x07, 0x00, 0x93, 0x00, 0x42, 0x73, 0x68, 0x65, 0x64, 0xad,
0x06, 0x24, 0x61, 0x6e, 0x22, 0x02, 0x02, 0x28, 0x01, 0x05,
0x27, 0x00, 0x01, 0x64, 0x03, 0x11, 0x64, 0x02, 0x01, 0x35,
0x69, 0x74, 0x73, 0x8d, 0x01, 0x01, 0x4c, 0x02, 0x13, 0x72,
0x74, 0x05, 0x24, 0x64, 0x65, 0xe8, 0x04, 0x41, 0x74, 0x68,
0x65, 0x79, 0x18, 0x00, 0x03, 0xa5, 0x00, 0x01, 0xc4, 0x00,
0x02, 0x44, 0x00, 0x26, 0x73, 0x29, 0xdb, 0x00, 0x00, 0x9c,
0x00, 0x07, 0xe4, 0x05, 0x00, 0xc3, 0x01, 0x05, 0x8f, 0x00,
0x81, 0x62, 0x79, 0x00, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0xb9,
0x03, 0x01, 0x79, 0x05, 0x40, 0x6e, 0x00, 0x69, 0x74, 0xf3,
0x04, 0x22, 0x69, 0x73, 0x95, 0x01, 0x51, 0x68, 0x69, 0x67,
0x68, 0x6c, 0x59, 0x00, 0x22, 0x69, 0x74, 0x89, 0x00, 0x03,
0x8a, 0x03, 0x04, 0x9d, 0x00, 0x08, 0x2e, 0x06, 0x32, 0x00,
0x69, 0x74, 0xae, 0x05, 0x01, 0xb2, 0x01, 0x20, 0x69, 0x6c,
0xc8, 0x06, 0x00, 0x9a, 0x02, 0x30, 0x76, 0x65, 0x6e, 0x21,
0x00, 0x01, 0xed, 0x02, 0x31, 0x61, 0x63, 0x63, 0xc4, 0x00,
0x01, 0x7d, 0x07, 0x52, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x17,
0x08, 0x22, 0x6e, 0x79, 0xf6, 0x01, 0x26, 0x6f, 0x73, 0x5c,
0x00, 0xc9, 0x69, 0x6e, 0x00, 0x66, 0x75, 0x74, 0x75, 0x72,
0x65, 0x2e, 0x00, 0x4c, 0xa7, 0x00, 0x02, 0x0d, 0x03, 0x10,
0x6f, 0x0b, 0x03, 0x05, 0xa1, 0x00, 0x24, 0x65, 0x64, 0xe2,
0x00, 0x01, 0x7a, 0x00, 0x21, 0x75, 0x6e, 0xf9, 0x00, 0x03,
0xb6, 0x00, 0x40, 0x72, 0x65, 0x73, 0x74, 0x2e, 0x07, 0x11,
0x79, 0x59, 0x08, 0x51, 0x62, 0x69, 0x6c, 0x69, 0x74, 0xcd,
0x01, 0x02, 0x81, 0x00, 0x01, 0xf4, 0x00, 0x02, 0xd4, 0x08,
0x00, 0x32, 0x01, 0x50, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0xda,
0x03, 0x03, 0xde, 0x02, 0x85, 0x73, 0x6f, 0x72, 0x00, 0x6b,
0x65, 0x79, 0x73, 0x57, 0x04, 0x61, 0x61, 0x72, 0x6f, 0x75,
0x6e, 0x64, 0x1f, 0x00, 0xf9, 0x01, 0x67, 0x72, 0x69, 0x64,
0x3a, 0x00, 0x69, 0x66, 0x00, 0x70, 0x6f, 0x73, 0x73, 0x69,
0x62, 0x6c, 0x35, 0x00, 0x02, 0x8d, 0x03, 0x52, 0x6c, 0x77,
0x61, 0x79, 0x73, 0x39, 0x00, 0x80, 0x6f, 0x72, 0x74, 0x68,
0x6f, 0x67, 0x6f, 0x6e, 0xfd, 0x00, 0x12, 0x2c, 0xc2, 0x04,
0x63, 0x77, 0x69, 0x73, 0x65, 0x00, 0x69, 0xb9, 0x03, 0x02,
0xb5, 0x04, 0x07, 0x17, 0x05, 0x00, 0x5c, 0x04, 0x24, 0x65,
0x73, 0x3c, 0x08, 0x04, 0xfb, 0x04, 0x51, 0x69, 0x6e, 0x64,
0x69, 0x63, 0x8b, 0x06, 0x05, 0x30, 0x04, 0x60, 0x2e, 0x00,
0x48, 0x6f, 0x6c, 0x64, 0x1c, 0x01, 0x12, 0x43, 0xb8, 0x05,
0x01, 0xf7, 0x00, 0x00, 0x16, 0x04, 0x11, 0x73, 0x31, 0x01,
0x07, 0xc8, 0x00, 0x02, 0x6b, 0x00, 0x37, 0x6c, 0x61, 0x79,
0x49, 0x04, 0x03, 0xa3, 0x08, 0x06, 0x03, 0x05, 0x90, 0x28,
0x69, 0x66, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c, 0xe1, 0x07,
0x73, 0x29, 0x3b, 0x00, 0x53, 0x68, 0x69, 0x66, 0x01, 0x02,
0x0f, 0x4b, 0x00, 0x04, 0x01, 0x11, 0x03, 0x1c, 0x00, 0x12,
0x03, 0x14, 0x50, 0x82, 0x00, 0x01, 0xa2, 0x02, 0x40, 0x65,
0x74, 0x75, 0x72, 0x40, 0x05, 0x00, 0x8a, 0x07, 0x42, 0x6c,
0x6c, 0x6f, 0x77, 0x83, 0x02, 0x0e, 0x52, 0x00, 0x01, 0x82,
0x01, 0x0f, 0xa2, 0x00, 0x0b, 0x08, 0xb1, 0x01, 0x01, 0xea,
0x01, 0x2f, 0x61, 0x6e, 0xe2, 0x02, 0x04, 0x18, 0x70, 0x83,
0x00, 0x20, 0x73, 0x70, 0xc7, 0x06, 0x30, 0x62, 0x61, 0x72,
0xf9, 0x09, 0x0c, 0x1d, 0x00, 0x07, 0xa0, 0x00, 0x51, 0x74,
0x77, 0x69, 0x63, 0x65, 0xa1, 0x07, 0x07, 0x24, 0x00, 0x04,
0xa1, 0x0a, 0x00, 0x22, 0x00, 0x06, 0x61, 0x03, 0x45, 0x6a,
0x75, 0x6d, 0x70, 0xfb, 0x09, 0x0a, 0xb0, 0x01, 0x01, 0xef,
0x03, 0x02, 0x95, 0x08, 0x03, 0xda, 0x0a, 0xf0, 0x0c, 0x4c,
0x65, 0x74, 0x74, 0x65, 0x72, 0x73, 0x00, 0x60, 0x61, 0x27,
0x2c, 0x00, 0x2e, 0x2e, 0x2e, 0x2c, 0x00, 0x60, 0x66, 0x27,
0x00, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0xb8, 0x00, 0x23, 0x31,
0x30, 0x16, 0x00, 0x21, 0x31, 0x35, 0x6d, 0x01, 0x31, 0x60,
0x30, 0x27, 0x17, 0x00, 0x10, 0x36, 0x8b, 0x00, 0x51, 0x56,
0x69, 0x6f, 0x6c, 0x61, 0x1d, 0x06, 0x03, 0x21, 0x05, 0x04,
0x5c, 0x08, 0x02, 0x75, 0x05, 0x04, 0x71, 0x03, 0x01, 0x7b,
0x01, 0x10, 0x64, 0x32, 0x01, 0x42, 0x72, 0x65, 0x64, 0x3a,
0xe7, 0x09, 0x1a, 0x6e, 0x92, 0x00, 0x2a, 0x6f, 0x6f, 0xef,
0x05, 0x04, 0x3b, 0x00, 0x09, 0x4d, 0x03, 0x01, 0x40, 0x00,
0x1f, 0x2e, 0x40, 0x00, 0x05, 0x3f, 0x66, 0x65, 0x77, 0x3f,
0x00, 0x10, 0x00, 0x1a, 0x03, 0x00, 0xdf, 0x06, 0x09, 0x98,
0x05, 0xf3, 0x03, 0x61, 0x6e, 0x00, 0x65, 0x72, 0x72, 0x6f,
0x72, 0x00, 0x28, 0x61, 0x73, 0x00, 0x6f, 0x70, 0x70, 0x6f,
0x73, 0xb3, 0x07, 0x20, 0x65, 0x72, 0x1f, 0x00, 0x00, 0xb4,
0x05, 0x20, 0x62, 0x65, 0x70, 0x01, 0x05, 0xc6, 0x01, 0x41,
0x79, 0x65, 0x74, 0x29, 0x66, 0x03, 0x21, 0x61, 0x64, 0xe4,
0x02, 0x03, 0xca, 0x07, 0x05, 0x80, 0x00, 0x45, 0x6f, 0x75,
0x6c, 0x64, 0x6d, 0x0a, 0x31, 0x68, 0x61, 0x76, 0xd1, 0x01,
0x12, 0x6f, 0xfa, 0x0a, 0x0b, 0xf8, 0x0a, 0x00, 0xf8, 0x01,
0x04, 0x6a, 0x06, 0x16, 0x00, 0xc4, 0x05, 0x03, 0xb1, 0x02,
0x10, 0x2c, 0x1f, 0x00, 0x28, 0x69, 0x66, 0x30, 0x05, 0x20,
0x68, 0x61, 0x0f, 0x07, 0x29, 0x65, 0x6e, 0xde, 0x00, 0x01,
0xae, 0x09, 0x54, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x49, 0x0b,
0x68, 0x00, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x09, 0x0d, 0x01,
0x55, 0x0a, 0x07, 0x7d, 0x0a, 0x0f, 0x21, 0x01, 0x0c, 0x41,
0x61, 0x00, 0x63, 0x6c, 0x0a, 0x01, 0x33, 0x73, 0x75, 0x62,
0x53, 0x0d, 0x07, 0xe3, 0x01, 0x01, 0x78, 0x01, 0x24, 0x6e,
0x6f, 0x85, 0x06, 0x04, 0x12, 0x0d, 0x02, 0x39, 0x0b, 0x02,
0xbc, 0x02, 0x15, 0x73, 0x34, 0x00, 0x03, 0x82, 0x00, 0x90,
0x2e, 0x00, 0x46, 0x6f, 0x72, 0x00, 0x65, 0x78, 0x61, 0xa9,
0x00, 0x32, 0x2c, 0x00, 0x69, 0x9b, 0x06, 0x02, 0x42, 0x03,
0x26, 0x6c, 0x79, 0x56, 0x0d, 0x4c, 0x77, 0x6f, 0x00, 0x31,
0x51, 0x0d, 0x05, 0x79, 0x03, 0x01, 0x77, 0x04, 0x04, 0x6a,
0x06, 0x22, 0x6e, 0x6f, 0x85, 0x0d, 0x01, 0x6a, 0x09, 0x08,
0x76, 0x07, 0x25, 0x6f, 0x6e, 0x0e, 0x05, 0x01, 0xe7, 0x07,
0x04, 0x1a, 0x04, 0x01, 0x3a, 0x06, 0x43, 0x75, 0x70, 0x00,
0x72, 0x20, 0x06, 0x03, 0xb9, 0x04, 0x02, 0x14, 0x03, 0x03,
0xa9, 0x0d, 0x02, 0x39, 0x01, 0x32, 0x63, 0x61, 0x6e, 0xf9,
0x01, 0x04, 0x10, 0x0e, 0x02, 0x23, 0x01, 0x00, 0xa6, 0x02,
0xa4, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x00, 0x73, 0x6f, 0x6c,
0x75, 0xf9, 0x03, 0x14, 0x2d, 0x68, 0x07, 0x01, 0x37, 0x07,
0x33, 0x73, 0x65, 0x6c, 0x82, 0x06, 0x40, 0x68, 0x65, 0x00,
0x28, 0xd4, 0x01, 0x04, 0x73, 0x08, 0x34, 0x00, 0x6f, 0x70,
0xd1, 0x09, 0x40, 0x64, 0x69, 0x73, 0x61, 0x73, 0x04, 0x01,
0xfd, 0x0b, 0x15, 0x73, 0xd9, 0x07, 0x03, 0x55, 0x00, 0x15,
0x2c, 0x88, 0x00, 0x07, 0x32, 0x0c, 0x02, 0xc4, 0x0c, 0x00,
0x34, 0x0c, 0x14, 0x73, 0x35, 0x0c, 0x0e, 0xea, 0x02, 0x01,
0x22, 0x03, 0x14, 0x28, 0x48, 0x0d, 0x02, 0xd0, 0x08, 0x00,
0xee, 0x02, 0x52, 0x73, 0x63, 0x72, 0x69, 0x62, 0xc4, 0x00,
0x13, 0x73, 0x54, 0x05, 0x33, 0x32, 0x2e, 0x31, 0x75, 0x09,
0x26, 0x73, 0x6f, 0x5d, 0x05, 0x13, 0x2e, 0x7a, 0x0b, 0x15,
0x32, 0x7a, 0x0b, 0x00, 0xb3, 0x09, 0x20, 0x6d, 0x65, 0x27,
0x04, 0x12, 0x20, 0x79, 0x0d, 0x36, 0x73, 0x65, 0x00, 0x14,
0x00, 0x02, 0x43, 0x00, 0x04, 0x3e, 0x00, 0x02, 0x55, 0x07,
0x00, 0x7b, 0x00, 0xb4, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0xf7, 0x00, 0x03, 0x96, 0x01,
0x40, 0x60, 0x54, 0x79, 0x70, 0x93, 0x05, 0x30, 0x65, 0x6e,
0x75, 0xad, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c,
0x00, 0x48, 0x65, 0x9d, 0x01, 0x51, 0x00, 0x00, 0x53, 0x69,
0x7a, 0x07, 0x0c, 0x00, 0xbd, 0x01, 0x01, 0xaf, 0x00, 0x42,
0x71, 0x75, 0x61, 0x72, 0xcc, 0x0c, 0xaa, 0x44, 0x69, 0x66,
0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x0d, 0x00, 0x41,
0x6c, 0x65, 0x76, 0x65, 0xa6, 0x09, 0x02, 0x9e, 0x02, 0x00,
0x2b, 0x00, 0x10, 0x41, 0x5d, 0x01, 0x12, 0x20, 0x5d, 0x01,
0x12, 0x00, 0x41, 0x08, 0x21, 0x69, 0x73, 0x1c, 0x10, 0x06,
0x03, 0x0a, 0x01, 0x7d, 0x0a, 0x20, 0x63, 0x6c, 0x24, 0x05,
0x23, 0x64, 0x2c, 0x3c, 0x00, 0x06, 0x3e, 0x04, 0x51, 0x67,
0x65, 0x6e, 0x65, 0x72, 0xd6, 0x06, 0x0e, 0xc5, 0x0f, 0x06,
0x83, 0x02, 0x03, 0x4f, 0x07, 0x00, 0xb9, 0x01, 0x13, 0x62,
0x18, 0x03, 0x00, 0x49, 0x0b, 0x33, 0x63, 0x72, 0x65, 0x9b,
0x0f, 0x01, 0xa9, 0x01, 0x02, 0x87, 0x08, 0x04, 0xde, 0x01,
0x04, 0xcb, 0x01, 0x25, 0x64, 0x6f, 0x25, 0x04, 0x0b, 0xd0,
0x01, 0x04, 0x1e, 0x02, 0x02, 0xcf, 0x01, 0x64, 0x4d, 0x61,
0x78, 0x2e, 0x20, 0x62, 0x8e, 0x01, 0x36, 0x65, 0x72, 0x20,
0x18, 0x07, 0x01, 0x1d, 0x00, 0x4e, 0x69, 0x6d, 0x75, 0x6d,
0x22, 0x10, 0x04, 0xaf, 0x02, 0x20, 0x70, 0x61, 0x4f, 0x10,
0x48, 0x75, 0x6c, 0x61, 0x72, 0xae, 0x06, 0x17, 0x54, 0x2b,
0x0e, 0x42, 0x69, 0x73, 0x00, 0x32, 0xc6, 0x0f, 0x04, 0x44,
0x06, 0x01, 0x21, 0x0f, 0x13, 0x65, 0xcf, 0x03, 0x40, 0x31,
0x2c, 0x00, 0x33, 0x88, 0x04, 0x53, 0x34, 0x2e, 0x00, 0x49,
0x6e, 0x17, 0x01, 0x20, 0x6c, 0x2c, 0x72, 0x05, 0x21, 0x65,
0x72, 0x6d, 0x10, 0x32, 0x61, 0x73, 0x69, 0x6e, 0x0a, 0x82,
0x25, 0x61, 0x67, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x87, 0x03,
0x13, 0x20, 0xba, 0x01, 0x70, 0x00, 0x00, 0x00, 0x47, 0x69,
0x76, 0x65, 0xb5, 0x02, 0x11, 0x72, 0x28, 0x05, 0x40, 0x70,
0x65, 0x72, 0x63, 0x73, 0x09, 0x28, 0x67, 0x65, 0xa0, 0x04,
0x25, 0x74, 0x68, 0x74, 0x01, 0x04, 0xac, 0x08, 0x31, 0x74,
0x72, 0x79, 0x39, 0x01, 0x11, 0x6c, 0xaf, 0x04, 0x34, 0x66,
0x6f, 0x72, 0xbb, 0x0a, 0x05, 0xbc, 0x0f, 0x03, 0xf0, 0x01,
0x30, 0x43, 0x65, 0x72, 0xa4, 0x03, 0x00, 0x29, 0x00, 0x33,
0x6f, 0x75, 0x74, 0xc4, 0x01, 0x00, 0xc0, 0x03, 0x30, 0x6d,
0x61, 0x6e, 0x67, 0x00, 0x12, 0x74, 0xbf, 0x07, 0x03, 0xa8,
0x05, 0x03, 0x72, 0x00, 0x12, 0x3b, 0xca, 0x0c, 0x10, 0x69,
0x1b, 0x05, 0x40, 0x00, 0x75, 0x70, 0x70, 0x94, 0x05, 0x22,
0x6f, 0x75, 0x13, 0x11, 0xf0, 0x03, 0x45, 0x78, 0x70, 0x61,
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x61, 0x63, 0x74,
0x6f, 0x72, 0x20, 0x28, 0xdc, 0x00, 0x12, 0x29, 0x00, 0x03,
0x02, 0x9b, 0x02, 0x07, 0xac, 0x00, 0x41, 0x6f, 0x72, 0x6b,
0x73, 0xbe, 0x07, 0x04, 0x10, 0x0a, 0x69, 0x6e, 0x00, 0x65,
0x78, 0x69, 0x73, 0x7d, 0x0d, 0xf8, 0x05, 0x74, 0x00, 0x72,
0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x00, 0x28, 0x61, 0x66, 0x74,
0x65, 0x72, 0x00, 0x66, 0x69, 0x72, 0x73, 0x28, 0x02, 0x20,
0x6e, 0x00, 0x90, 0x06, 0x34, 0x69, 0x61, 0x6c, 0x32, 0x00,
0x00, 0x7f, 0x10, 0x10, 0x77, 0x1a, 0x0d, 0x41, 0x29, 0x2e,
0x00, 0x49, 0x72, 0x02, 0x40, 0x6e, 0x00, 0x64, 0x65, 0xae,
0x0a, 0x12, 0x73, 0x6b, 0x0a, 0x07, 0x1e, 0x09, 0x05, 0x5e,
0x00, 0x24, 0x29, 0x2c, 0x22, 0x05, 0x13, 0x6e, 0x97, 0x00,
0x00, 0x8e, 0x02, 0x31, 0x68, 0x6f, 0x77, 0x72, 0x0e, 0x41,
0x69, 0x74, 0x00, 0x63, 0x9c, 0x06, 0x20, 0x65, 0x78, 0x6c,
0x0e, 0x04, 0x54, 0x01, 0x07, 0x85, 0x00, 0x08, 0xc6, 0x0e,
0x03, 0x78, 0x0b, 0x05, 0xeb, 0x03, 0x32, 0x00, 0x64, 0x65,
0x75, 0x12, 0x21, 0x65, 0x73, 0x52, 0x00, 0x50, 0x6c, 0x69,
0x6b, 0x65, 0x6c, 0xad, 0x0a, 0x03, 0x17, 0x13, 0x03, 0x55,
0x00, 0x21, 0x61, 0x73, 0x6c, 0x00, 0x21, 0x61, 0x73, 0x6f,
0x00, 0x66, 0x61, 0x6e, 0x2c, 0x00, 0x72, 0x61, 0x40, 0x11,
0x41, 0x63, 0x68, 0x6f, 0x6f, 0xbd, 0x08, 0x05, 0xdf, 0x00,
0x02, 0x68, 0x06, 0x01, 0x40, 0x02, 0x64, 0x48, 0x69, 0x67,
0x68, 0x00, 0x65, 0x7b, 0x01, 0x12, 0x00, 0x7b, 0x01, 0x52,
0x73, 0x00, 0x75, 0x73, 0x75, 0x9f, 0x0b, 0x33, 0x65, 0x61,
0x6e, 0x6e, 0x02, 0x07, 0xae, 0x03, 0x23, 0x74, 0x68, 0x8b,
0x02, 0x05, 0xf3, 0x0a, 0x05, 0xe0, 0x01, 0x00, 0x60, 0x05,
0x0e, 0x4f, 0x00, 0x01, 0xe1, 0x02, 0x20, 0x72, 0x65, 0xf8,
0x05, 0x32, 0x6c, 0x6f, 0x74, 0xbd, 0x08, 0x00, 0x7c, 0x04,
0x73, 0x6c, 0x79, 0x2d, 0x70, 0x61, 0x63, 0x6b, 0xb9, 0x0b,
0x50, 0x6e, 0x64, 0x73, 0x2e, 0x00,
0x73, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf3, 0x37, 0x00, 0x00,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x61, 0x00, 0x73, 0x65, 0x74, 0x00, 0x6f, 0x66, 0x00, 0x69,
0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x00, 0x64, 0x69, 0x73,
0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x00, 0x61,
0x63, 0x72, 0x6f, 0x73, 0x73, 0x00, 0x74, 0x68, 0x65, 0x00,
0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x00, 0x61, 0x72,
0x65, 0x61, 0x2e, 0x00, 0x45, 0x61, 0x63, 0x68, 0x32, 0x00,
0xf0, 0x04, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
0x73, 0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x2e, 0x5e, 0x00, 0xb0, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00,
0x69, 0x73, 0x00, 0x74, 0x6f, 0x22, 0x00, 0x41, 0x6e, 0x65,
0x63, 0x74, 0x48, 0x00, 0x04, 0x67, 0x00, 0xf2, 0x00, 0x74,
0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x00, 0x77, 0x69,
0x74, 0x68, 0x00, 0x62, 0xae, 0x00, 0xf3, 0x0b, 0x2c, 0x00,
0x69, 0x6e, 0x00, 0x73, 0x75, 0x63, 0x68, 0x00, 0x61, 0x00,
0x77, 0x61, 0x79, 0x00, 0x74, 0x68, 0x61, 0x74, 0x3a, 0x00,
0x00, 0x00, 0x2d, 0x00, 0xcf, 0x00, 0xa0, 0x00, 0x72, 0x75,
0x6e, 0x00, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x75, 0x00, 0xd0,
0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x72, 0x00, 0x76, 0x65, 0x72,
0x74, 0x69, 0x63, 0x0e, 0x00, 0x11, 0x2e, 0x2c, 0x00, 0x33,
0x54, 0x68, 0x65, 0x8a, 0x00, 0x00, 0xd8, 0x00, 0x13, 0x62,
0x3a, 0x00, 0x81, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61,
0x74, 0xc5, 0x00, 0x54, 0x74, 0x00, 0x61, 0x6e, 0x79, 0xc1,
0x00, 0x80, 0x69, 0x73, 0x00, 0x65, 0x71, 0x75, 0x61, 0x6c,
0xab, 0x00, 0x16, 0x74, 0x3c, 0x00, 0x70, 0x77, 0x72, 0x69,
0x74, 0x74, 0x65, 0x6e, 0x93, 0x00, 0x00, 0x88, 0x00, 0x03,
0x2e, 0x00, 0x03, 0x63, 0x00, 0x25, 0x77, 0x6f, 0x59, 0x00,
0x31, 0x6d, 0x61, 0x79, 0x97, 0x00, 0xf1, 0x04, 0x69, 0x6e,
0x00, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x00,
0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x4f, 0x00, 0x84,
0x73, 0x61, 0x6d, 0x65, 0x00, 0x74, 0x77, 0x6f, 0xfb, 0x00,
0xd0, 0x2c, 0x00, 0x62, 0x75, 0x74, 0x00, 0x6e, 0x6f, 0x00,
0x6d, 0x6f, 0x72, 0x65, 0x5b, 0x00, 0x11, 0x6e, 0x1e, 0x00,
0x00, 0x47, 0x00, 0x52, 0x64, 0x6f, 0x00, 0x73, 0x6f, 0x62,
0x00, 0x14, 0x4e, 0x61, 0x00, 0x11, 0x00, 0x84, 0x01, 0x61,
0x65, 0x73, 0x00, 0x61, 0x6e, 0x6f, 0x31, 0x01, 0x02, 0x17,
0x00, 0x02, 0x26, 0x00, 0x39, 0x41, 0x6c, 0x6c, 0x56, 0x01,
0x34, 0x61, 0x72, 0x65, 0x6e, 0x01, 0x25, 0x65, 0x64, 0x64,
0x01, 0x00, 0x2c, 0x00, 0x51, 0x54, 0x68, 0x65, 0x72, 0x65,
0x20, 0x00, 0x31, 0x73, 0x6f, 0x6d, 0x25, 0x00, 0xf0, 0x00,
0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x00,
0x61, 0x6c, 0x74, 0x65, 0x72, 0x1b, 0x01, 0x60, 0x76, 0x65,
0x00, 0x6d, 0x6f, 0x64, 0x88, 0x01, 0x30, 0x77, 0x68, 0x69,
0xe2, 0x01, 0xc0, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x00,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x39, 0x01, 0x01, 0x0a, 0x02,
0x03, 0xe5, 0x00, 0x13, 0x2d, 0xa0, 0x00, 0x50, 0x6c, 0x69,
0x6d, 0x69, 0x74, 0x3c, 0x01, 0x00, 0x59, 0x00, 0x20, 0x74,
0x68, 0x27, 0x00, 0x02, 0xa9, 0x00, 0x01, 0xdb, 0x00, 0x31,
0x32, 0x2c, 0x00, 0x64, 0x01, 0x74, 0x6e, 0x74, 0x72, 0x6f,
0x64, 0x75, 0x63, 0x45, 0x00, 0xa0, 0x61, 0x64, 0x64, 0x69,
0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x8b, 0x00, 0x72, 0x73,
0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x68, 0x01, 0xb8, 0x6e,
0x6f, 0x00, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65,
0xc0, 0x01, 0x00, 0x20, 0x01, 0xf4, 0x05, 0x66, 0x6f, 0x72,
0x6d, 0x00, 0x61, 0x00, 0x6c, 0x6f, 0x6f, 0x70, 0x00, 0x66,
0x72, 0x6f, 0x6d, 0x00, 0x6f, 0x6e, 0x65, 0xc6, 0x01, 0x44,
0x62, 0x61, 0x63, 0x6b, 0xc2, 0x01, 0x01, 0x73, 0x01, 0x04,
0xb0, 0x01, 0x00, 0x0f, 0x02, 0x91, 0x72, 0x75, 0x6c, 0x65,
0x73, 0x00, 0x73, 0x74, 0x61, 0xd6, 0x02, 0x32, 0x62, 0x6f,
0x76, 0x0b, 0x01, 0x00, 0x2c, 0x00, 0x70, 0x64, 0x65, 0x66,
0x61, 0x75, 0x6c, 0x74, 0x4b, 0x00, 0x10, 0x73, 0x29, 0x01,
0x60, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x6b, 0x00, 0xf1,
0x01, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a,
0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0xcc, 0x02, 0xb0,
0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x31, 0x32,
0x5d, 0x2e, 0x00, 0x04, 0x98, 0x02, 0x31, 0x77, 0x61, 0x73,
0x09, 0x03, 0x04, 0x3a, 0x03, 0x01, 0x89, 0x00, 0x10, 0x69,
0x14, 0x00, 0x40, 0x6c, 0x6c, 0x65, 0x63, 0xea, 0x00, 0xf1,
0x00, 0x00, 0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73,
0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0xac, 0x02, 0x00, 0x46,
0x00, 0xe1, 0x00, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x5e, 0x00, 0xa2, 0x2e,
0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x7d,
0x00, 0xf5, 0x08, 0x73, 0x2f, 0x48, 0x61, 0x73, 0x68, 0x69,
0x77, 0x6f, 0x6b, 0x61, 0x6b, 0x65, 0x72, 0x6f, 0x2f, 0x00,
0x00, 0x00, 0x32, 0x36, 0x2e, 0x31, 0xe4, 0x03, 0x01, 0x79,
0x00, 0x40, 0x6f, 0x6c, 0x73, 0x20, 0xe8, 0x01, 0x10, 0x6f,
0xab, 0x03, 0x10, 0x63, 0xd9, 0x03, 0x03, 0xa0, 0x01, 0x05,
0x8c, 0x02, 0x08, 0x83, 0x02, 0x30, 0x63, 0x6c, 0x69, 0x2f,
0x01, 0x10, 0x68, 0xf1, 0x01, 0xb8, 0x75, 0x73, 0x65, 0x00,
0x64, 0x6f, 0x77, 0x6e, 0x00, 0x6f, 0x6e, 0x51, 0x01, 0x00,
0x04, 0x00, 0x51, 0x64, 0x72, 0x61, 0x67, 0x00, 0xde, 0x01,
0x42, 0x77, 0x61, 0x72, 0x64, 0x0a, 0x04, 0x01, 0xdd, 0x01,
0x01, 0xe4, 0x03, 0x00, 0xb0, 0x02, 0x62, 0x6e, 0x6f, 0x74,
0x00, 0x6e, 0x65, 0xf2, 0x00, 0x01, 0x2e, 0x00, 0x13, 0x61,
0x93, 0x02, 0x01, 0xc0, 0x03, 0x16, 0x6f, 0x32, 0x00, 0x03,
0x57, 0x00, 0xa5, 0x3b, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x6f,
0x6e, 0x6c, 0x79, 0x37, 0x00, 0x10, 0x6d, 0x8f, 0x01, 0x06,
0x8b, 0x00, 0xa3, 0x66, 0x61, 0x72, 0x00, 0x65, 0x6e, 0x6f,
0x75, 0x67, 0x68, 0x85, 0x01, 0x10, 0x65, 0x3e, 0x02, 0x54,
0x65, 0x6e, 0x64, 0x65, 0x64, 0xd3, 0x00, 0x33, 0x64, 0x69,
0x72, 0x55, 0x01, 0xf1, 0x07, 0x74, 0x6f, 0x00, 0x62, 0x65,
0x00, 0x75, 0x6e, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f,
0x75, 0x73, 0x2e, 0x00, 0x28, 0x53, 0x6f, 0x64, 0x00, 0x87,
0x63, 0x61, 0x6e, 0x00, 0x6b, 0x65, 0x65, 0x70, 0x5b, 0x00,
0x42, 0x6e, 0x65, 0x61, 0x72, 0x21, 0x02, 0x31, 0x74, 0x61,
0x72, 0x0a, 0x04, 0x07, 0xec, 0x00, 0xb0, 0x63, 0x6f, 0x6e,
0x76, 0x65, 0x6e, 0x69, 0x65, 0x6e, 0x74, 0x6c, 0x7a, 0x04,
0x35, 0x72, 0x6f, 0x77, 0x7c, 0x02, 0x32, 0x6f, 0x75, 0x74,
0x70, 0x02, 0x20, 0x69, 0x74, 0xe7, 0x03, 0x10, 0x6d, 0x3d,
0x04, 0x05, 0x84, 0x00, 0x82, 0x73, 0x2e, 0x29, 0x00, 0x00,
0x00, 0x44, 0x6f, 0xdb, 0x02, 0xd6, 0x69, 0x73, 0x00, 0x61,
0x67, 0x61, 0x69, 0x6e, 0x00, 0x77, 0x68, 0x65, 0x6e, 0x85,
0x01, 0x00, 0x17, 0x00, 0xf0, 0x04, 0x6c, 0x72, 0x65, 0x61,
0x64, 0x79, 0x00, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
0x00, 0x77, 0x69, 0x6c, 0x6c, 0x08, 0x03, 0x05, 0xd9, 0x03,
0x06, 0x3e, 0x04, 0x03, 0xe2, 0x03, 0x45, 0x49, 0x66, 0x00,
0x74, 0xb7, 0x03, 0x04, 0x3f, 0x00, 0x22, 0x61, 0x73, 0x80,
0x00, 0x04, 0x9c, 0x00, 0x08, 0x6b, 0x04, 0x07, 0xe3, 0x01,
0x00, 0x28, 0x00, 0x10, 0x70, 0xf3, 0x04, 0x20, 0x74, 0x74,
0x38, 0x01, 0x11, 0x79, 0x20, 0x00, 0x40, 0x63, 0x75, 0x72,
0x72, 0x7b, 0x00, 0x34, 0x67, 0x61, 0x6d, 0x14, 0x03, 0x51,
0x28, 0x69, 0x2e, 0x65, 0x2e, 0x39, 0x00, 0x24, 0x62, 0x79,
0x0c, 0x03, 0x26, 0x29, 0x2c, 0x46, 0x03, 0x00, 0xd4, 0x01,
0x11, 0x67, 0x34, 0x05, 0x02, 0x71, 0x01, 0x01, 0xb6, 0x00,
0x21, 0x72, 0x65, 0xb4, 0x01, 0x00, 0xeb, 0x01, 0x11, 0x6f,
0xa4, 0x00, 0x10, 0x6d, 0xce, 0x02, 0x21, 0x49, 0x66, 0x78,
0x01, 0x31, 0x77, 0x61, 0x6e, 0x0f, 0x04, 0x60, 0x72, 0x65,
0x6d, 0x69, 0x6e, 0x64, 0x13, 0x00, 0x52, 0x72, 0x73, 0x65,
0x6c, 0x66, 0xdd, 0x03, 0x08, 0xa2, 0x00, 0x90, 0x64, 0x65,
0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x6c, 0xf9, 0x04, 0x10,
0x20, 0x49, 0x02, 0x03, 0x92, 0x06, 0x0c, 0xb9, 0x02, 0x45,
0x68, 0x65, 0x6d, 0x2c, 0xd3, 0x01, 0x61, 0x72, 0x69, 0x67,
0x68, 0x74, 0x2d, 0x6b, 0x02, 0x08, 0x21, 0x00, 0x27, 0x00,
0x69, 0x6e, 0x05, 0x03, 0x7c, 0x02, 0xb3, 0x64, 0x72, 0x61,
0x77, 0x00, 0x61, 0x00, 0x60, 0x6e, 0x6f, 0x6e, 0xad, 0x04,
0x87, 0x27, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0xaf,
0x00, 0x00, 0xb2, 0x04, 0x34, 0x6b, 0x00, 0x79, 0x10, 0x07,
0x00, 0x93, 0x00, 0x42, 0x73, 0x68, 0x65, 0x64, 0x98, 0x06,
0x24, 0x61, 0x6e, 0x22, 0x02, 0x02, 0x28, 0x01, 0x05, 0x27,
0x00, 0x01, 0x64, 0x03, 0x11, 0x64, 0x02, 0x01, 0x35, 0x69,
0x74, 0x73, 0x8d, 0x01, 0x01, 0x4c, 0x02, 0x13, 0x72, 0x5f,
0x05, 0x24, 0x64, 0x65, 0xd3, 0x04, 0x41, 0x74, 0x68, 0x65,
0x79, 0x18, 0x00, 0x03, 0xa5, 0x00, 0x01, 0xc4, 0x00, 0x02,
0x44, 0x00, 0x26, 0x73, 0x29, 0xdb, 0x00, 0x00, 0x9c, 0x00,
0x07, 0xcf, 0x05, 0x00, 0xc3, 0x01, 0x05, 0x8f, 0x00, 0x81,
0x62, 0x79, 0x00, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0xb9, 0x03,
0x01, 0x64, 0x05, 0x40, 0x6e, 0x00, 0x69, 0x74, 0xde, 0x04,
0x22, 0x69, 0x73, 0x95, 0x01, 0x51, 0x68, 0x69, 0x67, 0x68,
0x6c, 0x59, 0x00, 0x22, 0x69, 0x74, 0x89, 0x00, 0x03, 0x8a,
0x03, 0x04, 0x9d, 0x00, 0x08, 0x19, 0x06, 0x32, 0x00, 0x69,
0x74, 0x99, 0x05, 0x01, 0xb2, 0x01, 0x20, 0x69, 0x6c, 0xb3,
0x06, 0x00, 0x9a, 0x02, 0x30, 0x76, 0x65, 0x6e, 0x21, 0x00,
0x01, 0xed, 0x02, 0x31, 0x61, 0x63, 0x63, 0xc4, 0x00, 0x01,
0x68, 0x07, 0x52, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x02, 0x08,
0x22, 0x6e, 0x79, 0xf6, 0x01, 0x26, 0x6f, 0x73, 0x5c, 0x00,
0xc9, 0x69, 0x6e, 0x00, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65,
0x2e, 0x00, 0x4c, 0xa7, 0x00, 0x02, 0x0d, 0x03, 0x10, 0x6f,
0x0b, 0x03, 0x05, 0xa1, 0x00, 0x24, 0x65, 0x64, 0xe2, 0x00,
0x01, 0x7a, 0x00, 0x21, 0x75, 0x6e, 0xf9, 0x00, 0x03, 0xb6,
0x00, 0x40, 0x72, 0x65, 0x73, 0x74, 0x19, 0x07, 0x11, 0x79,
0x44, 0x08, 0x51, 0x62, 0x69, 0x6c, 0x69, 0x74, 0xcd, 0x01,
0x02, 0x81, 0x00, 0x01, 0xf4, 0x00, 0x02, 0xbf, 0x08, 0x00,
0x32, 0x01, 0x50, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0xda, 0x03,
0x03, 0xde, 0x02, 0x85, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65,
0x79, 0x73, 0x57, 0x04, 0x61, 0x61, 0x72, 0x6f, 0x75, 0x6e,
0x64, 0x1f, 0x00, 0xf9, 0x01, 0x67, 0x72, 0x69, 0x64, 0x3a,
0x00, 0x69, 0x66, 0x00, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62,
0x6c, 0x35, 0x00, 0x02, 0x8d, 0x03, 0x52, 0x6c, 0x77, 0x61,
0x79, 0x73, 0x39, 0x00, 0x80, 0x6f, 0x72, 0x74, 0x68, 0x6f,
0x67, 0x6f, 0x6e, 0xfd, 0x00, 0x12, 0x2c, 0xc2, 0x04, 0x63,
0x77, 0x69, 0x73, 0x65, 0x00, 0x69, 0xb9, 0x03, 0x02, 0xb5,
0x04, 0x07, 0x17, 0x05, 0x00, 0x5c, 0x04, 0x24, 0x65, 0x73,
0x27, 0x08, 0x04, 0xfb, 0x04, 0x51, 0x69, 0x6e, 0x64, 0x69,
0x63, 0x76, 0x06, 0x05, 0x30, 0x04, 0x60, 0x2e, 0x00, 0x48,
0x6f, 0x6c, 0x64, 0x1c, 0x01, 0x12, 0x43, 0xb8, 0x05, 0x01,
0xf7, 0x00, 0x00, 0x16, 0x04, 0x11, 0x73, 0x31, 0x01, 0x07,
0xc8, 0x00, 0x02, 0x6b, 0x00, 0x37, 0x6c, 0x61, 0x79, 0x49,
0x04, 0x03, 0x8e, 0x08, 0x06, 0x03, 0x05, 0x90, 0x28, 0x69,
0x66, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c, 0xcc, 0x07, 0x73,
0x29, 0x3b, 0x00, 0x53, 0x68, 0x69, 0x66, 0x01, 0x02, 0x0f,
0x4b, 0x00, 0x04, 0x01, 0x11, 0x03, 0x1c, 0x00, 0x12, 0x03,
0x14, 0x50, 0x82, 0x00, 0x01, 0xa2, 0x02, 0x40, 0x65, 0x74,
0x75, 0x72, 0x40, 0x05, 0x00, 0x75, 0x07, 0x42, 0x6c, 0x6c,
0x6f, 0x77, 0x83, 0x02, 0x0e, 0x52, 0x00, 0x01, 0x82, 0x01,
0x0f, 0xa2, 0x00, 0x0b, 0x08, 0xb1, 0x01, 0x01, 0xea, 0x01,
0x2f, 0x61, 0x6e, 0xe2, 0x02, 0x04, 0x18, 0x70, 0x83, 0x00,
0x20, 0x73, 0x70, 0xc7, 0x06, 0x30, 0x62, 0x61, 0x72, 0xe4,
0x09, 0x0c, 0x1d, 0x00, 0x07, 0xa0, 0x00, 0x51, 0x74, 0x77,
0x69, 0x63, 0x65, 0x8c, 0x07, 0x07, 0x24, 0x00, 0x04, 0x8c,
0x0a, 0x00, 0x22, 0x00, 0x06, 0x61, 0x03, 0x45, 0x6a, 0x75,
0x6d, 0x70, 0xe6, 0x09, 0x0a, 0xb0, 0x01, 0x01, 0xef, 0x03,
0x02, 0x80, 0x08, 0x03, 0xc5, 0x0a, 0xf0, 0x0c, 0x4c, 0x65,
0x74, 0x74, 0x65, 0x72, 0x73, 0x00, 0x60, 0x61, 0x27, 0x2c,
0x00, 0x2e, 0x2e, 0x2e, 0x2c, 0x00, 0x60, 0x66, 0x27, 0x00,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0xb8, 0x00, 0x23, 0x31, 0x30,
0x16, 0x00, 0x21, 0x31, 0x35, 0x6d, 0x01, 0x31, 0x60, 0x30,
0x27, 0x17, 0x00, 0x13, 0x36, 0x6e, 0x09, 0x46, 0x00, 0x60,
0x47, 0x27, 0x27, 0x01, 0x03, 0x8b, 0x04, 0x86, 0x67, 0x72,
0x65, 0x79, 0x00, 0x6c, 0x69, 0x6e, 0xdd, 0x04, 0x10, 0x65,
0x4a, 0x0b, 0x48, 0x70, 0x61, 0x69, 0x72, 0x84, 0x0b, 0x01,
0x88, 0x00, 0x78, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x62,
0xd1, 0x09, 0x02, 0x94, 0x04, 0x04, 0x69, 0x01, 0x36, 0x6f,
0x72, 0x00, 0xda, 0x04, 0x01, 0x55, 0x0a, 0x25, 0x61, 0x72,
0xe4, 0x05, 0x00, 0x60, 0x07, 0x11, 0x6f, 0x2c, 0x03, 0x51,
0x56, 0x69, 0x6f, 0x6c, 0x61, 0xa9, 0x06, 0x03, 0xad, 0x05,
0x04, 0xd3, 0x08, 0x02, 0x01, 0x06, 0x04, 0xfd, 0x03, 0x01,
0x07, 0x02, 0x10, 0x64, 0xbe, 0x01, 0x42, 0x72, 0x65, 0x64,
0x3a, 0x5e, 0x0a, 0x1a, 0x6e, 0x1e, 0x01, 0x2a, 0x6f, 0x6f,
0x7b, 0x06, 0x04, 0x3b, 0x00, 0x09, 0xd9, 0x03, 0x01, 0x40,
0x00, 0x1f, 0x2e, 0x40, 0x00, 0x05, 0x3f, 0x66, 0x65, 0x77,
0x3f, 0x00, 0x10, 0x00, 0xa6, 0x03, 0x00, 0x6b, 0x07, 0x09,
0x24, 0x06, 0xf3, 0x03, 0x61, 0x6e, 0x00, 0x65, 0x72, 0x72,
0x6f, 0x72, 0x00, 0x28, 0x61, 0x73, 0x00, 0x6f, 0x70, 0x70,
0x6f, 0x73, 0x3f, 0x08, 0x32, 0x65, 0x72, 0x65, 0xee, 0x00,
0x30, 0x00, 0x62, 0x65, 0xfc, 0x01, 0x05, 0x52, 0x02, 0x41,
0x79, 0x65, 0x74, 0x29, 0xf2, 0x03, 0x21, 0x61, 0x64, 0x70,
0x03, 0x03, 0x56, 0x08, 0x05, 0x80, 0x00, 0x01, 0x61, 0x01,
0x04, 0xe4, 0x0a, 0x31, 0x68, 0x61, 0x76, 0x5d, 0x02, 0x12,
0x6f, 0x71, 0x0b, 0x0b, 0x6f, 0x0b, 0x00, 0x6d, 0x01, 0x04,
0xf6, 0x06, 0x08, 0x76, 0x01, 0x02, 0x3d, 0x03, 0x10, 0x2c,
0x1f, 0x00, 0x28, 0x69, 0x66, 0xbc, 0x05, 0x20, 0x68, 0x61,
0x9b, 0x07, 0x29, 0x65, 0x6e, 0xde, 0x00, 0x01, 0x25, 0x0a,
0x54, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0xc0, 0x0b, 0x68, 0x00,
0x67, 0x72, 0x6f, 0x75, 0x70, 0xfc, 0x01, 0x01, 0xcc, 0x0a,
0x07, 0xf4, 0x0a, 0x0f, 0x21, 0x01, 0x0c, 0x41, 0x61, 0x00,
0x63, 0x6c, 0x0a, 0x01, 0x33, 0x73, 0x75, 0x62, 0xca, 0x0d,
0x07, 0xe3, 0x01, 0x01, 0x78, 0x01, 0x24, 0x6e, 0x6f, 0x11,
0x07, 0x04, 0x89, 0x0d, 0x02, 0xb0, 0x0b, 0x02, 0x48, 0x03,
0x15, 0x73, 0x34, 0x00, 0x03, 0x82, 0x00, 0x90, 0x2e, 0x00,
0x46, 0x6f, 0x72, 0x00, 0x65, 0x78, 0x61, 0xa9, 0x00, 0x32,
0x2c, 0x00, 0x69, 0x27, 0x07, 0x02, 0xce, 0x03, 0x26, 0x6c,
0x79, 0xcd, 0x0d, 0x4c, 0x77, 0x6f, 0x00, 0x31, 0xc8, 0x0d,
0x05, 0x9c, 0x02, 0x01, 0x03, 0x05, 0x04, 0xf6, 0x06, 0x22,
0x6e, 0x6f, 0xfc, 0x0d, 0x01, 0xf6, 0x09, 0x08, 0x02, 0x08,
0x25, 0x6f, 0x6e, 0x9a, 0x05, 0x01, 0x73, 0x08, 0x04, 0xa6,
0x04, 0x01, 0xc6, 0x06, 0x43, 0x75, 0x70, 0x00, 0x72, 0xac,
0x06, 0x03, 0x45, 0x05, 0x02, 0x18, 0x03, 0x03, 0x20, 0x0e,
0x02, 0x39, 0x01, 0x32, 0x63, 0x61, 0x6e, 0xf9, 0x01, 0x04,
0x87, 0x0e, 0x02, 0x23, 0x01, 0x00, 0xa6, 0x02, 0xa4, 0x76,
0x61, 0x6c, 0x69, 0x64, 0x00, 0x73, 0x6f, 0x6c, 0x75, 0x85,
0x04, 0x14, 0x2d, 0xf4, 0x07, 0x01, 0xc3, 0x07, 0x33, 0x73,
0x65, 0x6c, 0x0e, 0x07, 0x40, 0x68, 0x65, 0x00, 0x28, 0xd4,
0x01, 0x04, 0xff, 0x08, 0x34, 0x00, 0x6f, 0x70, 0x5d, 0x0a,
0x40, 0x64, 0x69, 0x73, 0x61, 0xff, 0x04, 0x01, 0x74, 0x0c,
0x15, 0x73, 0x65, 0x08, 0x03, 0x55, 0x00, 0x15, 0x2c, 0x88,
0x00, 0x07, 0xa9, 0x0c, 0x02, 0x3b, 0x0d, 0x00, 0xab, 0x0c,
0x14, 0x73, 0xac, 0x0c, 0x0e, 0xea, 0x02, 0x01, 0x22, 0x03,
0x14, 0x28, 0xbf, 0x0d, 0x02, 0x5c, 0x09, 0x00, 0xee, 0x02,
0x52, 0x73, 0x63, 0x72, 0x69, 0x62, 0xc4, 0x00, 0x13, 0x73,
0xe0, 0x05, 0x33, 0x32, 0x2e, 0x31, 0x01, 0x0a, 0x26, 0x73,
0x6f, 0xe9, 0x05, 0x22, 0x2e, 0x29, 0x06, 0x0c, 0x15, 0x32,
0x06, 0x0c, 0x00, 0x3f, 0x0a, 0x20, 0x6d, 0x65, 0xb3, 0x04,
0x12, 0x20, 0x82, 0x04, 0x36, 0x73, 0x65, 0x00, 0x14, 0x00,
0x02, 0x43, 0x00, 0x04, 0x3e, 0x00, 0x02, 0xe1, 0x07, 0x10,
0x74, 0xa6, 0x04, 0xa4, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0xf7, 0x00, 0x03, 0x96, 0x01, 0x40,
0x60, 0x54, 0x79, 0x70, 0x1f, 0x06, 0x30, 0x65, 0x6e, 0x75,
0xad, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x65, 0x9d, 0x01, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a,
0xa0, 0x0d, 0x00, 0xbd, 0x01, 0x01, 0xaf, 0x00, 0x42, 0x71,
0x75, 0x61, 0x72, 0x43, 0x0d, 0xaa, 0x44, 0x69, 0x66, 0x66,
0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x0d, 0x00, 0x41, 0x6c,
0x65, 0x76, 0x65, 0x32, 0x0a, 0x02, 0x9e, 0x02, 0x00, 0x2b,
0x00, 0x10, 0x41, 0x5d, 0x01, 0x12, 0x20, 0x5d, 0x01, 0x12,
0x00, 0xcd, 0x08, 0x21, 0x69, 0x73, 0x93, 0x10, 0x06, 0x8f,
0x0a, 0x01, 0x09, 0x0b, 0x20, 0x63, 0x6c, 0xb0, 0x05, 0x23,
0x64, 0x2c, 0x3c, 0x00, 0x06, 0x3e, 0x04, 0x51, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x62, 0x07, 0x0e, 0x3c, 0x10, 0x06, 0x83,
0x02, 0x03, 0xdb, 0x07, 0x00, 0xb9, 0x01, 0x13, 0x62, 0x18,
0x03, 0x00, 0xd5, 0x0b, 0x33, 0x63, 0x72, 0x65, 0x12, 0x10,
0x01, 0xa9, 0x01, 0x02, 0x13, 0x09, 0x04, 0xde, 0x01, 0x04,
0xcb, 0x01, 0x25, 0x64, 0x6f, 0x25, 0x04, 0x0b, 0xd0, 0x01,
0x04, 0x1e, 0x02, 0x02, 0xcf, 0x01, 0x64, 0x4d, 0x61, 0x78,
0x2e, 0x20, 0x62, 0x8e, 0x01, 0x36, 0x65, 0x72, 0x20, 0xa4,
0x07, 0x01, 0x1d, 0x00, 0x4e, 0x69, 0x6d, 0x75, 0x6d, 0x99,
0x10, 0x04, 0xaf, 0x02, 0x20, 0x70, 0x61, 0xc6, 0x10, 0x48,
0x75, 0x6c, 0x61, 0x72, 0x3a, 0x07, 0x17, 0x54, 0xa2, 0x0e,
0x42, 0x69, 0x73, 0x00, 0x32, 0x3d, 0x10, 0x04, 0xd0, 0x06,
0x01, 0x98, 0x0f, 0x13, 0x65, 0xcf, 0x03, 0x40, 0x31, 0x2c,
0x00, 0x33, 0x88, 0x04, 0x53, 0x34, 0x2e, 0x00, 0x49, 0x6e,
0x17, 0x01, 0x20, 0x6c, 0x2c, 0x72, 0x05, 0x21, 0x65, 0x72,
0xe4, 0x10, 0x32, 0x61, 0x73, 0x69, 0xfa, 0x0a, 0x82, 0x25,
0x61, 0x67, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x87, 0x03, 0x13,
0x20, 0xba, 0x01, 0x70, 0x00, 0x00, 0x00, 0x47, 0x69, 0x76,
0x65, 0xb5, 0x02, 0x11, 0x72, 0x28, 0x05, 0x40, 0x70, 0x65,
0x72, 0x63, 0xff, 0x09, 0x2a, 0x67, 0x65, 0x9c, 0x06, 0x05,
0x74, 0x01, 0x04, 0x38, 0x09, 0x31, 0x74, 0x72, 0x79, 0x39,
0x01, 0x11, 0x6c, 0xaf, 0x04, 0x34, 0x66, 0x6f, 0x72, 0x47,
0x0b, 0x05, 0x33, 0x10, 0x03, 0xf0, 0x01, 0x30, 0x43, 0x65,
0x72, 0xa4, 0x03, 0x00, 0x29, 0x00, 0x33, 0x6f, 0x75, 0x74,
0xc4, 0x01, 0x00, 0xc0, 0x03, 0x30, 0x6d, 0x61, 0x6e, 0x67,
0x00, 0x12, 0x74, 0x4b, 0x08, 0x03, 0xa8, 0x05, 0x03, 0x72,
0x00, 0x12, 0x3b, 0x56, 0x0d, 0x10, 0x69, 0x1b, 0x05, 0x40,
0x00, 0x75, 0x70, 0x70, 0x94, 0x05, 0x22, 0x6f, 0x75, 0x8a,
0x11, 0xf0, 0x03, 0x45, 0x78, 0x70, 0x61, 0x6e, 0x73, 0x69,
0x6f, 0x6e, 0x20, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x20,
0x28, 0xdc, 0x00, 0x13, 0x29, 0x82, 0x07, 0x01, 0x9b, 0x02,
0x07, 0xac, 0x00, 0x41, 0x6f, 0x72, 0x6b, 0x73, 0x4a, 0x08,
0x04, 0x9c, 0x0a, 0x69, 0x6e, 0x00, 0x65, 0x78, 0x69, 0x73,
0x09, 0x0e, 0xf8, 0x05, 0x74, 0x00, 0x72, 0x61, 0x6e, 0x64,
0x6f, 0x6d, 0x00, 0x28, 0x61, 0x66, 0x74, 0x65, 0x72, 0x00,
0x66, 0x69, 0x72, 0x73, 0x28, 0x02, 0x20, 0x6e, 0x00, 0x90,
0x06, 0x34, 0x69, 0x61, 0x6c, 0x32, 0x00, 0x00, 0xf6, 0x10,
0x10, 0x77, 0xa6, 0x0d, 0x41, 0x29, 0x2e, 0x00, 0x49, 0x72,
0x02, 0x40, 0x6e, 0x00, 0x64, 0x65, 0x3a, 0x0b, 0x12, 0x73,
0xf7, 0x0a, 0x07, 0xaa, 0x09, 0x05, 0x5e, 0x00, 0x24, 0x29,
0x2c, 0x22, 0x05, 0x13, 0x6e, 0x97, 0x00, 0x00, 0x8e, 0x02,
0x31, 0x68, 0x6f, 0x77, 0xfe, 0x0e, 0x14, 0x69, 0xfd, 0x07,
0x20, 0x65, 0x78, 0xf8, 0x0e, 0x04, 0x54, 0x01, 0x07, 0x85,
0x00, 0x08, 0x52, 0x0f, 0x03, 0x04, 0x0c, 0x05, 0xeb, 0x03,
0x32, 0x00, 0x64, 0x65, 0xec, 0x12, 0x21, 0x65, 0x73, 0x52,
0x00, 0x50, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x39, 0x0b, 0x03,
0x8e, 0x13, 0x03, 0x55, 0x00, 0x21, 0x61, 0x73, 0x6c, 0x00,
0x21, 0x61, 0x73, 0x6f, 0x00, 0x66, 0x61, 0x6e, 0x2c, 0x00,
0x72, 0x61, 0xb7, 0x11, 0x41, 0x63, 0x68, 0x6f, 0x6f, 0x49,
0x09, 0x05, 0xdf, 0x00, 0x02, 0x68, 0x06, 0x01, 0x40, 0x02,
0x64, 0x48, 0x69, 0x67, 0x68, 0x00, 0x65, 0x7b, 0x01, 0x12,
0x00, 0x7b, 0x01, 0x52, 0x73, 0x00, 0x75, 0x73, 0x75, 0x2b,
0x0c, 0x33, 0x65, 0x61, 0x6e, 0x6e, 0x02, 0x07, 0xae, 0x03,
0x23, 0x74, 0x68, 0x8b, 0x02, 0x05, 0x7f, 0x0b, 0x05, 0xe0,
0x01, 0x00, 0x60, 0x05, 0x0e, 0x4f, 0x00, 0x01, 0xe1, 0x02,
0x20, 0x72, 0x65, 0xf8, 0x05, 0x32, 0x6c, 0x6f, 0x74, 0xbd,
0x08, 0x00, 0x7c, 0x04, 0x61, 0x6c, 0x79, 0x2d, 0x70, 0x61,
0x63, 0xac, 0x08, 0x04, 0xb1, 0x06, 0x01, 0x0a, 0x05, 0x15,
0x33, 0x0a, 0x05, 0xb0, 0x75, 0x73, 0x65, 0x72, 0x20, 0x70,
0x72, 0x65, 0x66, 0x65, 0x72, 0x46, 0x12, 0x01, 0x10, 0x05,
0x20, 0x4f, 0x6e, 0x70, 0x0d, 0x12, 0x74, 0x97, 0x05, 0x03,
0x48, 0x06, 0x60, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x00, 0x2e,
0x00, 0x17, 0x00, 0x2e, 0x00, 0x12, 0x2c, 0xfe, 0x04, 0x16,
0x50, 0x12, 0x00, 0x0d, 0x1a, 0x05, 0x33, 0x47, 0x61, 0x6d,
0x1a, 0x05, 0x03, 0xb1, 0x06, 0x13, 0x65, 0x94, 0x03, 0x03,
0x56, 0x13, 0x10, 0x65, 0xfe, 0x0f, 0x28, 0x74, 0x68, 0xed,
0x00, 0x04, 0x2d, 0x13, 0x23, 0x6f, 0x63, 0x8c, 0x09, 0x01,
0x8b, 0x13, 0x80, 0x68, 0x6f, 0x77, 0x6e, 0x2e, 0x00, 0x55,
0x6e, 0xa4, 0x01, 0x26, 0x00, 0x74, 0x35, 0x0a, 0x00, 0x84,
0x00, 0x04, 0xd8, 0x0d, 0x75, 0x70, 0x65, 0x72, 0x73, 0x69,
0x73, 0x74, 0x32, 0x0a, 0x70, 0x67, 0x61, 0x6d, 0x65, 0x73,
0x2e, 0x00,
};
const unsigned short help_text_len = 5230;
const unsigned short help_text_words = 963;
const unsigned short help_text_len = 5613;
const unsigned short help_text_words = 1026;
const char quick_help_text[] = "Connect all the islands with a network of bridges.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,163 +6,164 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 207, TEXT_CENTER | C_RED },
{ 319, TEXT_CENTER | C_RED },
{ 336, TEXT_UNDERLINE },
{ 358, TEXT_UNDERLINE },
{ 208, TEXT_CENTER | C_RED },
{ 320, TEXT_CENTER | C_RED },
{ 337, TEXT_UNDERLINE },
{ 359, TEXT_UNDERLINE },
{ 360, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2055 comp 1444 ratio 0.702676 level 10 saved 611 */
/* orig 2071 comp 1451 ratio 0.700628 level 10 saved 620 */
const char help_text[] = {
0xf2, 0x37, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x34, 0x3a, 0x20, 0x43, 0x75, 0x62, 0x65, 0x20, 0x00, 0x00,
0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x69, 0x73, 0x00, 0x61,
0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x00, 0x6f, 0x6e, 0x65,
0x00, 0x49, 0x00, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61,
0x6c, 0x6c, 0x79, 0x00, 0x73, 0x61, 0x77, 0x00, 0x61, 0x73,
0x00, 0x61, 0x00, 0x77, 0x65, 0x62, 0x00, 0x67, 0x61, 0x6d,
0x65, 0x2e, 0x34, 0x00, 0x00, 0x29, 0x00, 0x11, 0x77, 0x19,
0x00, 0x41, 0x4a, 0x61, 0x76, 0x61, 0x1a, 0x00, 0xf0, 0x28,
0x00, 0x5b, 0x32, 0x5d, 0x2c, 0x00, 0x62, 0x79, 0x00, 0x50,
0x61, 0x75, 0x6c, 0x00, 0x53, 0x63, 0x6f, 0x74, 0x74, 0x2e,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00,
0x31, 0x36, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73,
0x2c, 0x00, 0x73, 0x69, 0x78, 0x13, 0x00, 0xf1, 0x03, 0x77,
0x68, 0x69, 0x63, 0x68, 0x00, 0x61, 0x72, 0x65, 0x00, 0x62,
0x6c, 0x75, 0x65, 0x3b, 0x00, 0x6f, 0x6e, 0x61, 0x00, 0x02,
0x27, 0x00, 0x50, 0x00, 0x72, 0x65, 0x73, 0x74, 0x6a, 0x00,
0x41, 0x63, 0x75, 0x62, 0x65, 0x52, 0x00, 0x60, 0x72, 0x00,
0x6d, 0x6f, 0x76, 0x65, 0xb8, 0x00, 0xf1, 0x05, 0x74, 0x6f,
0x00, 0x75, 0x73, 0x65, 0x00, 0x74, 0x68, 0x65, 0x00, 0x61,
0x72, 0x72, 0x6f, 0x77, 0x00, 0x6b, 0x65, 0x79, 0x16, 0x00,
0x41, 0x72, 0x6f, 0x6c, 0x6c, 0x17, 0x00, 0x00, 0x35, 0x00,
0xf1, 0x0f, 0x00, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68,
0x00, 0x39, 0x30, 0x00, 0x64, 0x65, 0x67, 0x72, 0x65, 0x65,
0x73, 0x00, 0x73, 0x6f, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00,
0x69, 0x74, 0x4d, 0x00, 0x01, 0x35, 0x00, 0xb3, 0x61, 0x6e,
0x00, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x7c,
0x00, 0x8b, 0x2e, 0x00, 0x49, 0x66, 0x00, 0x79, 0x6f, 0x75,
0x50, 0x00, 0x21, 0x6f, 0x6e, 0x2f, 0x00, 0x01, 0xae, 0x00,
0x03, 0x2a, 0x00, 0x11, 0x2c, 0x1e, 0x00, 0x07, 0x11, 0x00,
0x00, 0x9f, 0x00, 0x94, 0x70, 0x69, 0x63, 0x6b, 0x65, 0x64,
0x00, 0x75, 0x70, 0xd2, 0x00, 0x40, 0x66, 0x61, 0x63, 0x65,
0xf1, 0x00, 0x04, 0x4a, 0x00, 0x37, 0x3b, 0x00, 0x69, 0x60,
0x00, 0x03, 0x51, 0x00, 0x0c, 0x25, 0x00, 0x05, 0x6f, 0x00,
0x4f, 0x6e, 0x6f, 0x6e, 0x2d, 0x73, 0x00, 0x02, 0x41, 0x6e,
0x65, 0x73, 0x73, 0x70, 0x00, 0xfe, 0x15, 0x75, 0x74, 0x00,
0x64, 0x6f, 0x77, 0x6e, 0x00, 0x61, 0x67, 0x61, 0x69, 0x6e,
0x2e, 0x00, 0x28, 0x49, 0x6e, 0x00, 0x67, 0x65, 0x6e, 0x65,
0x72, 0x61, 0x6c, 0x2c, 0x00, 0x77, 0x68, 0x65, 0x6e, 0x65,
0x76, 0x65, 0x72, 0xd0, 0x00, 0x02, 0x49, 0x00, 0x31, 0x74,
0x77, 0x6f, 0x7b, 0x00, 0x12, 0x73, 0x19, 0x01, 0xf2, 0x11,
0x63, 0x6f, 0x6d, 0x65, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00,
0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x00, 0x73, 0x77,
0x61, 0x70, 0x00, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x73,
0x2e, 0x29, 0x89, 0x01, 0x33, 0x6a, 0x6f, 0x62, 0x88, 0x01,
0x71, 0x67, 0x65, 0x74, 0x00, 0x61, 0x6c, 0x6c, 0xd3, 0x01,
0x07, 0xa5, 0x00, 0x13, 0x73, 0xbe, 0x00, 0x00, 0x62, 0x00,
0x00, 0x1b, 0x00, 0x02, 0x62, 0x00, 0x08, 0xde, 0x00, 0x22,
0x61, 0x74, 0x1d, 0x00, 0x00, 0x43, 0x02, 0x20, 0x74, 0x69,
0x62, 0x02, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x00, 0x79,
0xe9, 0x01, 0x00, 0x9f, 0x02, 0x50, 0x64, 0x00, 0x74, 0x72,
0x79, 0x48, 0x00, 0x20, 0x64, 0x6f, 0xb3, 0x01, 0x20, 0x69,
0x6e, 0x96, 0x02, 0x21, 0x66, 0x65, 0x9d, 0x02, 0xf2, 0x02,
0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x2e, 0x00,
0x00, 0x00, 0x55, 0x6e, 0x6c, 0x69, 0x6b, 0x11, 0x02, 0x04,
0xc6, 0x02, 0x06, 0xa2, 0x02, 0xf2, 0x01, 0x2c, 0x00, 0x6d,
0x79, 0x00, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x00,
0x68, 0x61, 0x73, 0xf1, 0x01, 0x50, 0x64, 0x69, 0x74, 0x69,
0x6f, 0x28, 0x00, 0xd0, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
0x65, 0x3a, 0x00, 0x6f, 0x6e, 0x63, 0x65, 0x7f, 0x00, 0xc1,
0x27, 0x76, 0x65, 0x00, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72,
0x65, 0x64, 0x53, 0x00, 0x01, 0xe7, 0x02, 0x43, 0x77, 0x69,
0x74, 0x68, 0x8e, 0x02, 0x01, 0x47, 0x01, 0x30, 0x69, 0x6e,
0x67, 0xe4, 0x00, 0x14, 0x61, 0xf8, 0x01, 0x00, 0xe8, 0x02,
0x11, 0x2c, 0x65, 0x01, 0xa2, 0x63, 0x61, 0x6e, 0x00, 0x63,
0x68, 0x61, 0x6e, 0x67, 0x65, 0xc0, 0x01, 0xa2, 0x74, 0x72,
0x69, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x0d, 0x03,
0x00, 0xd7, 0x00, 0x02, 0xf9, 0x01, 0x20, 0x6e, 0x79, 0x13,
0x01, 0xe0, 0x61, 0x00, 0x74, 0x65, 0x74, 0x72, 0x61, 0x68,
0x65, 0x64, 0x72, 0x6f, 0x6e, 0x2c, 0x9e, 0x00, 0x33, 0x6f,
0x63, 0x74, 0x0f, 0x00, 0x30, 0x00, 0x6f, 0x72, 0x11, 0x00,
0x43, 0x69, 0x63, 0x6f, 0x73, 0x12, 0x00, 0x00, 0xef, 0x00,
0xf0, 0x13, 0x5b, 0x32, 0x5d, 0x00, 0x68, 0x74, 0x74, 0x70,
0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x33, 0x2e, 0x73, 0x79,
0x6d, 0x70, 0x61, 0x74, 0x69, 0x63, 0x6f, 0x2e, 0x63, 0x61,
0x2f, 0x70, 0x61, 0x75, 0x6c, 0x73, 0x87, 0x03, 0x10, 0x2f,
0xac, 0x00, 0x11, 0x2f, 0x3f, 0x03, 0x92, 0x68, 0x74, 0x6d,
0x00, 0x00, 0x00, 0x34, 0x2e, 0x31, 0x03, 0x04, 0x00, 0xdb,
0x01, 0x45, 0x72, 0x6f, 0x6c, 0x73, 0x0c, 0x04, 0x01, 0xe2,
0x00, 0x00, 0xb8, 0x00, 0x92, 0x62, 0x65, 0x00, 0x70, 0x6c,
0x61, 0x79, 0x65, 0x64, 0xf0, 0x00, 0x21, 0x65, 0x69, 0x20,
0x04, 0x00, 0x05, 0x01, 0xa2, 0x6b, 0x65, 0x79, 0x62, 0x6f,
0x61, 0x72, 0x64, 0x00, 0x6f, 0x10, 0x00, 0x41, 0x6d, 0x6f,
0x75, 0x73, 0x7c, 0x01, 0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d,
0x63, 0x6c, 0x69, 0x63, 0x6b, 0x13, 0x01, 0x72, 0x61, 0x6e,
0x79, 0x77, 0x68, 0x65, 0x72, 0xbe, 0x02, 0x10, 0x68, 0x37,
0x01, 0x92, 0x6e, 0x64, 0x6f, 0x77, 0x00, 0x77, 0x69, 0x6c,
0x6c, 0xbf, 0x03, 0x05, 0x01, 0x02, 0x42, 0x28, 0x6f, 0x72,
0x00, 0x7f, 0x04, 0xe6, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x29,
0x00, 0x74, 0x6f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5e, 0x00,
0x91, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e,
0xa7, 0x00, 0x09, 0xec, 0x03, 0x10, 0x63, 0xc4, 0x01, 0x21,
0x6c, 0x73, 0x08, 0x04, 0x1e, 0x64, 0xfa, 0x03, 0x68, 0x6f,
0x6e, 0x00, 0x69, 0x74, 0x73, 0x9b, 0x01, 0x22, 0x00, 0x69,
0x90, 0x00, 0x10, 0x66, 0x5f, 0x02, 0x41, 0x63, 0x61, 0x72,
0x64, 0x24, 0x02, 0x50, 0x64, 0x69, 0x72, 0x65, 0x63, 0x08,
0x02, 0x42, 0x73, 0x2e, 0x00, 0x4f, 0x21, 0x00, 0x0b, 0xae,
0x01, 0x22, 0x73, 0x2c, 0x90, 0x00, 0x31, 0x61, 0x70, 0x70,
0xf2, 0x01, 0x1b, 0x66, 0x72, 0x04, 0x06, 0x42, 0x00, 0x00,
0x11, 0x03, 0xf2, 0x0a, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x61,
0x70, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x61, 0x74, 0x65,
0x2e, 0x00, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0xfd,
0x00, 0x10, 0x6d, 0x63, 0x04, 0xb0, 0x69, 0x73, 0x00, 0x64,
0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x67, 0x01, 0x01,
0x2d, 0x01, 0x10, 0x69, 0xc1, 0x03, 0xe0, 0x65, 0x73, 0x6e,
0x27, 0x74, 0x00, 0x6d, 0x61, 0x6b, 0x65, 0x00, 0x73, 0x65,
0x6e, 0x5d, 0x01, 0x14, 0x54, 0xb1, 0x00, 0x01, 0x6e, 0x00,
0x80, 0x73, 0x75, 0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x88,
0x00, 0x0b, 0xfb, 0x04, 0x03, 0x6d, 0x01, 0x70, 0x6e, 0x75,
0x6d, 0x65, 0x72, 0x69, 0x63, 0x14, 0x00, 0xc0, 0x70, 0x61,
0x64, 0x00, 0x28, 0x60, 0x37, 0x27, 0x2c, 0x00, 0x60, 0x39,
0x05, 0x00, 0x10, 0x31, 0x05, 0x00, 0x34, 0x33, 0x27, 0x29,
0xe6, 0x01, 0x01, 0x38, 0x01, 0xa7, 0x66, 0x6f, 0x72, 0x00,
0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, 0xa1, 0x00, 0x00, 0x6e,
0x01, 0x23, 0x28, 0x41, 0x4e, 0x01, 0x13, 0x61, 0xdc, 0x00,
0x81, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x48,
0x01, 0x12, 0x73, 0xf2, 0x00, 0x41, 0x00, 0x32, 0x2e, 0x31,
0xbe, 0x05, 0x01, 0x89, 0x01, 0x60, 0x61, 0x76, 0x61, 0x69,
0x6c, 0x61, 0x90, 0x03, 0x11, 0x29, 0x6b, 0x02, 0x12, 0x32,
0x6b, 0x02, 0x93, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x6d, 0x02, 0x10, 0x65, 0xd7, 0x01, 0x05, 0x14,
0x00, 0x02, 0x3f, 0x00, 0x04, 0x3a, 0x00, 0x51, 0x00, 0x66,
0x72, 0x6f, 0x6d, 0x77, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70,
0x6d, 0x00, 0x03, 0xe3, 0x00, 0xb1, 0x60, 0x54, 0x79, 0x70,
0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x17, 0x02, 0x71,
0x79, 0x70, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x43, 0x02, 0x92,
0x00, 0x00, 0x00, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44,
0x02, 0x02, 0x14, 0x00, 0x04, 0x1c, 0x02, 0x10, 0x28, 0x77,
0x03, 0x20, 0x68, 0x65, 0xe4, 0x03, 0x01, 0x1d, 0x00, 0x35,
0x68, 0x61, 0x70, 0x6f, 0x05, 0x00, 0xe9, 0x01, 0x2a, 0x29,
0x3a, 0x87, 0x03, 0x02, 0x22, 0x05, 0x06, 0x8a, 0x03, 0x10,
0x2c, 0xf9, 0x02, 0x0b, 0x88, 0x03, 0xf0, 0x0c, 0x57, 0x69,
0x64, 0x74, 0x68, 0x20, 0x2f, 0x20, 0x74, 0x6f, 0x70, 0x2c,
0x00, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x2f, 0x20,
0x62, 0x6f, 0x74, 0x74, 0x6f, 0x70, 0x03, 0x1d, 0x4f, 0x1f,
0x04, 0x50, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x58, 0x05, 0x11,
0x6c, 0x06, 0x04, 0x14, 0x76, 0x1d, 0x02, 0x65, 0x64, 0x69,
0x6d, 0x65, 0x6e, 0x73, 0x88, 0x02, 0x0d, 0x34, 0x04, 0x14,
0x2c, 0xdf, 0x01, 0x10, 0x62, 0xae, 0x07, 0x13, 0x66, 0x1f,
0x00, 0x25, 0x6c, 0x65, 0xfa, 0x01, 0x31, 0x74, 0x6f, 0x70,
0x52, 0x00, 0x03, 0x7c, 0x00, 0x40, 0x72, 0x6f, 0x77, 0x73,
0x41, 0x07, 0xb0, 0x70, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65,
0x6c, 0x79, 0x2e, 0x00,
0xfa, 0x03, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x34, 0x3a, 0x20, 0x43, 0x75, 0x62, 0x65, 0x20, 0x00, 0x2d,
0x01, 0x00, 0xf2, 0x27, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69,
0x73, 0x00, 0x69, 0x73, 0x00, 0x61, 0x6e, 0x6f, 0x74, 0x68,
0x65, 0x72, 0x00, 0x6f, 0x6e, 0x65, 0x00, 0x49, 0x00, 0x6f,
0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x00,
0x73, 0x61, 0x77, 0x00, 0x61, 0x73, 0x00, 0x61, 0x00, 0x77,
0x65, 0x62, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x2e, 0x34, 0x00,
0x00, 0x29, 0x00, 0x11, 0x77, 0x19, 0x00, 0x41, 0x4a, 0x61,
0x76, 0x61, 0x1a, 0x00, 0xf0, 0x28, 0x00, 0x5b, 0x32, 0x5d,
0x2c, 0x00, 0x62, 0x79, 0x00, 0x50, 0x61, 0x75, 0x6c, 0x00,
0x53, 0x63, 0x6f, 0x74, 0x74, 0x2e, 0x00, 0x59, 0x6f, 0x75,
0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72,
0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x31, 0x36, 0x00, 0x73,
0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x69,
0x78, 0x13, 0x00, 0xf1, 0x03, 0x77, 0x68, 0x69, 0x63, 0x68,
0x00, 0x61, 0x72, 0x65, 0x00, 0x62, 0x6c, 0x75, 0x65, 0x3b,
0x00, 0x6f, 0x6e, 0x61, 0x00, 0x02, 0x27, 0x00, 0x50, 0x00,
0x72, 0x65, 0x73, 0x74, 0x6a, 0x00, 0x41, 0x63, 0x75, 0x62,
0x65, 0x52, 0x00, 0x60, 0x72, 0x00, 0x6d, 0x6f, 0x76, 0x65,
0xb8, 0x00, 0xf1, 0x05, 0x74, 0x6f, 0x00, 0x75, 0x73, 0x65,
0x00, 0x74, 0x68, 0x65, 0x00, 0x61, 0x72, 0x72, 0x6f, 0x77,
0x00, 0x6b, 0x65, 0x79, 0x16, 0x00, 0x41, 0x72, 0x6f, 0x6c,
0x6c, 0x17, 0x00, 0x00, 0x35, 0x00, 0xf1, 0x0f, 0x00, 0x74,
0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x00, 0x39, 0x30, 0x00,
0x64, 0x65, 0x67, 0x72, 0x65, 0x65, 0x73, 0x00, 0x73, 0x6f,
0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x69, 0x74, 0x4d, 0x00,
0x01, 0x35, 0x00, 0xb3, 0x61, 0x6e, 0x00, 0x61, 0x64, 0x6a,
0x61, 0x63, 0x65, 0x6e, 0x74, 0x7c, 0x00, 0x8b, 0x2e, 0x00,
0x49, 0x66, 0x00, 0x79, 0x6f, 0x75, 0x50, 0x00, 0x21, 0x6f,
0x6e, 0x2f, 0x00, 0x01, 0xae, 0x00, 0x03, 0x2a, 0x00, 0x11,
0x2c, 0x1e, 0x00, 0x07, 0x11, 0x00, 0x00, 0x9f, 0x00, 0x94,
0x70, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x00, 0x75, 0x70, 0xd2,
0x00, 0x40, 0x66, 0x61, 0x63, 0x65, 0xf1, 0x00, 0x04, 0x4a,
0x00, 0x37, 0x3b, 0x00, 0x69, 0x60, 0x00, 0x03, 0x51, 0x00,
0x0c, 0x25, 0x00, 0x05, 0x6f, 0x00, 0x4f, 0x6e, 0x6f, 0x6e,
0x2d, 0x73, 0x00, 0x02, 0x41, 0x6e, 0x65, 0x73, 0x73, 0x70,
0x00, 0xfe, 0x15, 0x75, 0x74, 0x00, 0x64, 0x6f, 0x77, 0x6e,
0x00, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x2e, 0x00, 0x28, 0x49,
0x6e, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x2c,
0x00, 0x77, 0x68, 0x65, 0x6e, 0x65, 0x76, 0x65, 0x72, 0xd0,
0x00, 0x02, 0x49, 0x00, 0x31, 0x74, 0x77, 0x6f, 0x7b, 0x00,
0x12, 0x73, 0x19, 0x01, 0xf2, 0x11, 0x63, 0x6f, 0x6d, 0x65,
0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x63, 0x74, 0x00, 0x73, 0x77, 0x61, 0x70, 0x00, 0x63,
0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x73, 0x2e, 0x29, 0x89, 0x01,
0x33, 0x6a, 0x6f, 0x62, 0x88, 0x01, 0x71, 0x67, 0x65, 0x74,
0x00, 0x61, 0x6c, 0x6c, 0xd3, 0x01, 0x07, 0xa5, 0x00, 0x13,
0x73, 0xbe, 0x00, 0x00, 0x62, 0x00, 0x00, 0x1b, 0x00, 0x02,
0x62, 0x00, 0x08, 0xde, 0x00, 0x22, 0x61, 0x74, 0x1d, 0x00,
0x00, 0x43, 0x02, 0x20, 0x74, 0x69, 0x62, 0x02, 0x74, 0x43,
0x6f, 0x75, 0x6e, 0x74, 0x00, 0x79, 0xe9, 0x01, 0x00, 0x9f,
0x02, 0x50, 0x64, 0x00, 0x74, 0x72, 0x79, 0x48, 0x00, 0x20,
0x64, 0x6f, 0xb3, 0x01, 0x20, 0x69, 0x6e, 0x96, 0x02, 0x21,
0x66, 0x65, 0x9d, 0x02, 0xf2, 0x02, 0x70, 0x6f, 0x73, 0x73,
0x69, 0x62, 0x6c, 0x65, 0x2e, 0x00, 0x00, 0x00, 0x55, 0x6e,
0x6c, 0x69, 0x6b, 0x11, 0x02, 0x04, 0xc6, 0x02, 0x06, 0xa2,
0x02, 0xf2, 0x01, 0x2c, 0x00, 0x6d, 0x79, 0x00, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x00, 0x68, 0x61, 0x73, 0xf1,
0x01, 0x50, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x28, 0x00, 0xd0,
0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x3a, 0x00, 0x6f,
0x6e, 0x63, 0x65, 0x7f, 0x00, 0xc1, 0x27, 0x76, 0x65, 0x00,
0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x53, 0x00,
0x01, 0xe7, 0x02, 0x43, 0x77, 0x69, 0x74, 0x68, 0x8e, 0x02,
0x01, 0x47, 0x01, 0x30, 0x69, 0x6e, 0x67, 0xe4, 0x00, 0x14,
0x61, 0xf8, 0x01, 0x00, 0xe8, 0x02, 0x11, 0x2c, 0x65, 0x01,
0xa2, 0x63, 0x61, 0x6e, 0x00, 0x63, 0x68, 0x61, 0x6e, 0x67,
0x65, 0xc0, 0x01, 0xa2, 0x74, 0x72, 0x69, 0x61, 0x6e, 0x67,
0x75, 0x6c, 0x61, 0x72, 0x0d, 0x03, 0x00, 0xd7, 0x00, 0x02,
0xf9, 0x01, 0x20, 0x6e, 0x79, 0x13, 0x01, 0xe0, 0x61, 0x00,
0x74, 0x65, 0x74, 0x72, 0x61, 0x68, 0x65, 0x64, 0x72, 0x6f,
0x6e, 0x2c, 0x9e, 0x00, 0x33, 0x6f, 0x63, 0x74, 0x0f, 0x00,
0x30, 0x00, 0x6f, 0x72, 0x11, 0x00, 0x43, 0x69, 0x63, 0x6f,
0x73, 0x12, 0x00, 0x00, 0xef, 0x00, 0xf0, 0x13, 0x5b, 0x32,
0x5d, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77,
0x77, 0x77, 0x33, 0x2e, 0x73, 0x79, 0x6d, 0x70, 0x61, 0x74,
0x69, 0x63, 0x6f, 0x2e, 0x63, 0x61, 0x2f, 0x70, 0x61, 0x75,
0x6c, 0x73, 0x87, 0x03, 0x10, 0x2f, 0xac, 0x00, 0x11, 0x2f,
0x3f, 0x03, 0x92, 0x68, 0x74, 0x6d, 0x00, 0x00, 0x00, 0x34,
0x2e, 0x31, 0x13, 0x04, 0x00, 0xdb, 0x01, 0x54, 0x72, 0x6f,
0x6c, 0x73, 0x20, 0x0c, 0x04, 0x01, 0xe2, 0x00, 0x00, 0xb8,
0x00, 0x92, 0x62, 0x65, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x65,
0x64, 0xf0, 0x00, 0x21, 0x65, 0x69, 0x20, 0x04, 0x00, 0x05,
0x01, 0xa2, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64,
0x00, 0x6f, 0x10, 0x00, 0x41, 0x6d, 0x6f, 0x75, 0x73, 0x7c,
0x01, 0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0x13, 0x01, 0x72, 0x61, 0x6e, 0x79, 0x77, 0x68,
0x65, 0x72, 0xbe, 0x02, 0x10, 0x68, 0x37, 0x01, 0x92, 0x6e,
0x64, 0x6f, 0x77, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0xbf, 0x03,
0x05, 0x01, 0x02, 0x42, 0x28, 0x6f, 0x72, 0x00, 0x7f, 0x04,
0xe6, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x29, 0x00, 0x74, 0x6f,
0x77, 0x61, 0x72, 0x64, 0x73, 0x5e, 0x00, 0x91, 0x00, 0x70,
0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0xa7, 0x00, 0x09,
0xec, 0x03, 0x10, 0x63, 0xc4, 0x01, 0x21, 0x6c, 0x73, 0x08,
0x04, 0x1e, 0x64, 0xfa, 0x03, 0x68, 0x6f, 0x6e, 0x00, 0x69,
0x74, 0x73, 0x9b, 0x01, 0x22, 0x00, 0x69, 0x90, 0x00, 0x10,
0x66, 0x5f, 0x02, 0x41, 0x63, 0x61, 0x72, 0x64, 0x24, 0x02,
0x50, 0x64, 0x69, 0x72, 0x65, 0x63, 0x08, 0x02, 0x42, 0x73,
0x2e, 0x00, 0x4f, 0x21, 0x00, 0x0b, 0xae, 0x01, 0x22, 0x73,
0x2c, 0x90, 0x00, 0x31, 0x61, 0x70, 0x70, 0xf2, 0x01, 0x1b,
0x66, 0x72, 0x04, 0x06, 0x42, 0x00, 0x00, 0x11, 0x03, 0xf2,
0x0a, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x61, 0x70, 0x70, 0x72,
0x6f, 0x78, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x00, 0x56,
0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0xfd, 0x00, 0x10, 0x6d,
0x63, 0x04, 0xb0, 0x69, 0x73, 0x00, 0x64, 0x69, 0x73, 0x61,
0x6c, 0x6c, 0x6f, 0x77, 0x67, 0x01, 0x01, 0x2d, 0x01, 0x10,
0x69, 0xc1, 0x03, 0xe0, 0x65, 0x73, 0x6e, 0x27, 0x74, 0x00,
0x6d, 0x61, 0x6b, 0x65, 0x00, 0x73, 0x65, 0x6e, 0x5d, 0x01,
0x14, 0x54, 0xb1, 0x00, 0x01, 0x6e, 0x00, 0x80, 0x73, 0x75,
0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x88, 0x00, 0x0b, 0xfb,
0x04, 0x03, 0x6d, 0x01, 0x70, 0x6e, 0x75, 0x6d, 0x65, 0x72,
0x69, 0x63, 0x14, 0x00, 0xc0, 0x70, 0x61, 0x64, 0x00, 0x28,
0x60, 0x37, 0x27, 0x2c, 0x00, 0x60, 0x39, 0x05, 0x00, 0x10,
0x31, 0x05, 0x00, 0x34, 0x33, 0x27, 0x29, 0xe6, 0x01, 0x01,
0x38, 0x01, 0xa7, 0x66, 0x6f, 0x72, 0x00, 0x64, 0x69, 0x61,
0x67, 0x6f, 0x6e, 0xa1, 0x00, 0x00, 0x6e, 0x01, 0x23, 0x28,
0x41, 0x4e, 0x01, 0x13, 0x61, 0xdc, 0x00, 0x81, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x48, 0x01, 0x12, 0x73,
0xf2, 0x00, 0x41, 0x00, 0x32, 0x2e, 0x31, 0xbe, 0x05, 0x01,
0x89, 0x01, 0x60, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x90,
0x03, 0x11, 0x29, 0x6b, 0x02, 0x12, 0x32, 0x6b, 0x02, 0x93,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x6d,
0x02, 0x10, 0x65, 0xd7, 0x01, 0x05, 0x14, 0x00, 0x02, 0x3f,
0x00, 0x04, 0x3a, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d,
0x77, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6d, 0x00, 0x03,
0xe3, 0x00, 0xb1, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0x17, 0x02, 0x71, 0x79, 0x70, 0x65,
0x20, 0x6f, 0x66, 0x20, 0x43, 0x02, 0x92, 0x00, 0x00, 0x00,
0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x02, 0x02, 0x14,
0x00, 0x04, 0x1c, 0x02, 0x10, 0x28, 0x77, 0x03, 0x20, 0x68,
0x65, 0xe4, 0x03, 0x01, 0x1d, 0x00, 0x35, 0x68, 0x61, 0x70,
0x6f, 0x05, 0x00, 0xe9, 0x01, 0x2a, 0x29, 0x3a, 0x87, 0x03,
0x02, 0x22, 0x05, 0x06, 0x8a, 0x03, 0x10, 0x2c, 0xf9, 0x02,
0x0b, 0x88, 0x03, 0xf0, 0x0c, 0x57, 0x69, 0x64, 0x74, 0x68,
0x20, 0x2f, 0x20, 0x74, 0x6f, 0x70, 0x2c, 0x00, 0x48, 0x65,
0x69, 0x67, 0x68, 0x74, 0x20, 0x2f, 0x20, 0x62, 0x6f, 0x74,
0x74, 0x6f, 0x70, 0x03, 0x1d, 0x4f, 0x1f, 0x04, 0x50, 0x68,
0x6f, 0x72, 0x69, 0x7a, 0x58, 0x05, 0x11, 0x6c, 0x06, 0x04,
0x14, 0x76, 0x1d, 0x02, 0x65, 0x64, 0x69, 0x6d, 0x65, 0x6e,
0x73, 0x88, 0x02, 0x0d, 0x34, 0x04, 0x14, 0x2c, 0xdf, 0x01,
0x10, 0x62, 0xae, 0x07, 0x13, 0x66, 0x1f, 0x00, 0x25, 0x6c,
0x65, 0xfa, 0x01, 0x31, 0x74, 0x6f, 0x70, 0x52, 0x00, 0x03,
0x7c, 0x00, 0x40, 0x72, 0x6f, 0x77, 0x73, 0x41, 0x07, 0xb0,
0x70, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x2e,
0x00,
};
const unsigned short help_text_len = 2055;
const unsigned short help_text_words = 385;
const unsigned short help_text_len = 2071;
const unsigned short help_text_words = 386;
const char quick_help_text[] = "Pick up all the blue squares by rolling the cube over them.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,174 +6,174 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 88, TEXT_CENTER | C_RED },
{ 151, TEXT_UNDERLINE },
{ 267, TEXT_CENTER | C_RED },
{ 284, TEXT_UNDERLINE },
{ 336, TEXT_UNDERLINE },
{ 377, TEXT_UNDERLINE },
{ 89, TEXT_CENTER | C_RED },
{ 152, TEXT_UNDERLINE },
{ 268, TEXT_CENTER | C_RED },
{ 285, TEXT_UNDERLINE },
{ 337, TEXT_UNDERLINE },
{ 378, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2278 comp 1541 ratio 0.676471 level 10 saved 737 */
/* orig 2299 comp 1550 ratio 0.674206 level 10 saved 749 */
const char help_text[] = {
0xf1, 0x1a, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x08, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x37, 0x3a, 0x20, 0x44, 0x6f, 0x6d, 0x69, 0x6e, 0x6f,
0x73, 0x61, 0x20, 0x00, 0x00, 0x00, 0x41, 0x00, 0x6e, 0x6f,
0x72, 0x6d, 0x61, 0x6c, 0x00, 0x73, 0x65, 0x74, 0x00, 0x6f,
0x66, 0x00, 0x64, 0x1c, 0x00, 0xf0, 0x0b, 0x65, 0x73, 0x00,
0x2d, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x69, 0x73, 0x2c,
0x00, 0x6f, 0x6e, 0x65, 0x00, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x24, 0x00, 0xf0, 0x07, 0x65, 0x76, 0x65,
0x72, 0x79, 0x00, 0x28, 0x75, 0x6e, 0x6f, 0x72, 0x64, 0x65,
0x72, 0x65, 0x64, 0x29, 0x00, 0x70, 0x61, 0x69, 0x72, 0x1a,
0x00, 0xf0, 0x3b, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73,
0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x30, 0x00, 0x74, 0x6f,
0x00, 0x36, 0x00, 0x2d, 0x00, 0x68, 0x61, 0x73, 0x00, 0x62,
0x65, 0x65, 0x6e, 0x00, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67,
0x65, 0x64, 0x00, 0x69, 0x72, 0x72, 0x65, 0x67, 0x75, 0x6c,
0x61, 0x72, 0x6c, 0x79, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00,
0x61, 0x00, 0x72, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67, 0x6c,
0x65, 0x3b, 0x00, 0x74, 0x68, 0x65, 0x6e, 0x05, 0x00, 0x03,
0x4f, 0x00, 0xf6, 0x00, 0x00, 0x69, 0x6e, 0x00, 0x65, 0x61,
0x63, 0x68, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x4f,
0x00, 0xf1, 0x01, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e,
0x00, 0x64, 0x6f, 0x77, 0x6e, 0x00, 0x61, 0x6e, 0x64, 0x34,
0x00, 0x05, 0xc1, 0x00, 0xf0, 0x11, 0x74, 0x68, 0x65, 0x6d,
0x73, 0x65, 0x6c, 0x76, 0x65, 0x73, 0x00, 0x72, 0x65, 0x6d,
0x6f, 0x76, 0x65, 0x64, 0x2e, 0x00, 0x59, 0x6f, 0x75, 0x72,
0x00, 0x74, 0x61, 0x73, 0x6b, 0x00, 0x69, 0x73, 0x9e, 0x00,
0xb1, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75,
0x63, 0x74, 0x3d, 0x00, 0xa3, 0x70, 0x61, 0x74, 0x74, 0x65,
0x72, 0x6e, 0x00, 0x62, 0x79, 0xac, 0x00, 0x31, 0x69, 0x6e,
0x67, 0x19, 0x00, 0x0c, 0x1e, 0x01, 0x82, 0x74, 0x6f, 0x00,
0x6d, 0x61, 0x74, 0x63, 0x68, 0x36, 0x00, 0x71, 0x72, 0x6f,
0x76, 0x69, 0x64, 0x65, 0x64, 0x34, 0x00, 0x17, 0x79, 0x08,
0x01, 0xf0, 0x00, 0x2e, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69,
0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x75, 0x00,
0xf0, 0x00, 0x77, 0x69, 0x64, 0x65, 0x6c, 0x79, 0x00, 0x63,
0x72, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x49, 0x00, 0xc2,
0x4f, 0x2e, 0x00, 0x53, 0x2e, 0x00, 0x41, 0x64, 0x6c, 0x65,
0x72, 0x2c, 0xc7, 0x00, 0x81, 0x61, 0x6b, 0x65, 0x73, 0x00,
0x70, 0x61, 0x72, 0x74, 0x00, 0x82, 0x69, 0x74, 0x73, 0x00,
0x6e, 0x61, 0x6d, 0x65, 0x55, 0x01, 0x40, 0x74, 0x68, 0x6f,
0x73, 0x8e, 0x01, 0x51, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x61,
0x00, 0x46, 0x31, 0x37, 0x2e, 0x31, 0xd3, 0x01, 0x80, 0x63,
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0xdc, 0x01, 0xa0,
0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0xc7, 0x00, 0x41, 0x62, 0x65, 0x74, 0x77, 0x85, 0x01, 0xf5,
0x00, 0x6e, 0x79, 0x00, 0x74, 0x77, 0x6f, 0x00, 0x61, 0x64,
0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0xb5, 0x01, 0x83, 0x70,
0x6c, 0x61, 0x63, 0x65, 0x73, 0x00, 0x61, 0xe6, 0x00, 0x63,
0x00, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x01, 0x01, 0x53, 0x6d,
0x2c, 0x00, 0x6f, 0x72, 0x48, 0x01, 0x12, 0x73, 0x11, 0x02,
0x00, 0x9a, 0x00, 0x00, 0xd2, 0x00, 0xf1, 0x05, 0x61, 0x6c,
0x72, 0x65, 0x61, 0x64, 0x79, 0x00, 0x70, 0x72, 0x65, 0x73,
0x65, 0x6e, 0x74, 0x2e, 0x00, 0x54, 0x72, 0x79, 0x36, 0x00,
0x12, 0x6f, 0x52, 0x00, 0x06, 0x51, 0x00, 0x60, 0x77, 0x68,
0x69, 0x63, 0x68, 0x00, 0x56, 0x00, 0xa0, 0x6c, 0x61, 0x70,
0x73, 0x00, 0x65, 0x78, 0x69, 0x73, 0x74, 0x2a, 0x00, 0x05,
0x56, 0x01, 0x43, 0x77, 0x69, 0x6c, 0x6c, 0x65, 0x00, 0x01,
0x59, 0x01, 0x40, 0x6f, 0x6e, 0x65, 0x73, 0x66, 0x00, 0x04,
0x33, 0x00, 0x00, 0xef, 0x00, 0x4e, 0x52, 0x69, 0x67, 0x68,
0xd6, 0x00, 0x0f, 0xd2, 0x00, 0x03, 0x40, 0x64, 0x72, 0x61,
0x77, 0xd1, 0x00, 0x46, 0x6c, 0x69, 0x6e, 0x65, 0x2a, 0x00,
0x01, 0xce, 0x00, 0x02, 0x8c, 0x00, 0xb2, 0x79, 0x6f, 0x75,
0x00, 0x63, 0x61, 0x6e, 0x00, 0x75, 0x73, 0x65, 0x0f, 0x02,
0x40, 0x6d, 0x69, 0x6e, 0x64, 0x16, 0x00, 0x52, 0x72, 0x73,
0x65, 0x6c, 0x66, 0x02, 0x03, 0x00, 0x24, 0x00, 0x43, 0x6b,
0x6e, 0x6f, 0x77, 0x7b, 0x01, 0x00, 0x69, 0x00, 0x04, 0x60,
0x00, 0x00, 0x8e, 0x02, 0x32, 0x6e, 0x6f, 0x74, 0x2a, 0x01,
0x21, 0x65, 0x64, 0x37, 0x02, 0x30, 0x00, 0x73, 0x69, 0xc6,
0x02, 0x03, 0xd5, 0x00, 0x1c, 0x2e, 0xb0, 0x00, 0x55, 0x61,
0x67, 0x61, 0x69, 0x6e, 0x49, 0x01, 0x00, 0xe5, 0x00, 0x00,
0x9d, 0x00, 0x00, 0xd9, 0x00, 0x13, 0x59, 0x8c, 0x00, 0x42,
0x61, 0x6c, 0x73, 0x6f, 0x91, 0x00, 0xd2, 0x68, 0x65, 0x00,
0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79,
0x74, 0x02, 0x00, 0x1a, 0x01, 0x14, 0x61, 0x16, 0x00, 0x43,
0x61, 0x72, 0x6f, 0x75, 0xf6, 0x02, 0x74, 0x67, 0x72, 0x69,
0x64, 0x2e, 0x00, 0x57, 0x39, 0x03, 0x03, 0x21, 0x00, 0xbf,
0x69, 0x73, 0x00, 0x68, 0x61, 0x6c, 0x66, 0x00, 0x77, 0x61,
0x79, 0x29, 0x01, 0x0a, 0x11, 0x2c, 0xbd, 0x01, 0x14, 0x73,
0xed, 0x02, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x75,
0x00, 0x02, 0x92, 0x01, 0x0b, 0xc7, 0x01, 0x07, 0x18, 0x02,
0x00, 0x11, 0x01, 0x05, 0x44, 0x00, 0x2a, 0x6f, 0x72, 0x47,
0x00, 0x20, 0x73, 0x70, 0x37, 0x00, 0x32, 0x62, 0x61, 0x72,
0x46, 0x00, 0x3e, 0x6c, 0x61, 0x79, 0x8b, 0x01, 0x02, 0x50,
0x01, 0x02, 0xd9, 0x03, 0x81, 0x73, 0x2e, 0x00, 0x52, 0x65,
0x70, 0x65, 0x61, 0x14, 0x02, 0xca, 0x65, 0x69, 0x74, 0x68,
0x65, 0x72, 0x00, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x30, 0x01,
0x03, 0x86, 0x00, 0x25, 0x6f, 0x72, 0x3a, 0x01, 0x14, 0x50,
0x76, 0x00, 0x14, 0x61, 0x32, 0x04, 0x05, 0xbb, 0x00, 0x50,
0x68, 0x69, 0x67, 0x68, 0x6c, 0x82, 0x01, 0xe0, 0x00, 0x61,
0x6c, 0x6c, 0x00, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65,
0x6e, 0x63, 0xc4, 0x02, 0x03, 0xdf, 0x01, 0x02, 0x32, 0x00,
0x16, 0x2e, 0x45, 0x00, 0x07, 0x16, 0x00, 0x03, 0xae, 0x01,
0x01, 0x4a, 0x00, 0x51, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x81,
0x00, 0x05, 0x54, 0x00, 0x70, 0x69, 0x6e, 0x67, 0x2e, 0x00,
0x55, 0x70, 0x99, 0x01, 0x00, 0xc6, 0x00, 0x68, 0x64, 0x69,
0x66, 0x66, 0x65, 0x72, 0x80, 0x02, 0x00, 0xcf, 0x01, 0x17,
0x62, 0x31, 0x00, 0x00, 0x23, 0x04, 0x11, 0x74, 0x81, 0x03,
0x30, 0x67, 0x69, 0x76, 0x00, 0x01, 0x21, 0x69, 0x6d, 0xc1,
0x00, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x5b, 0x00, 0x02, 0xef,
0x00, 0xb0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x65, 0x64, 0xfc, 0x04, 0x22, 0x73, 0x65, 0x05, 0x01,
0x31, 0x32, 0x2e, 0x31, 0x72, 0x02, 0x01, 0x21, 0x02, 0xb2,
0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e,
0x29, 0x04, 0x04, 0x16, 0x32, 0x04, 0x04, 0xb1, 0x70, 0x61,
0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x81,
0x04, 0x46, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x44,
0x00, 0x04, 0x3f, 0x00, 0x04, 0x56, 0x04, 0xf1, 0x01, 0x65,
0x00, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x72, 0x00, 0x22, 0x6f, 0x6e,
0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d,
0x65, 0x6e, 0x75, 0xae, 0x00, 0x82, 0x4d, 0x61, 0x78, 0x69,
0x6d, 0x75, 0x6d, 0x20, 0xe6, 0x00, 0x45, 0x20, 0x6f, 0x6e,
0x20, 0xc1, 0x03, 0x33, 0x00, 0x00, 0x43, 0x80, 0x04, 0x02,
0x02, 0x02, 0x32, 0x69, 0x7a, 0x65, 0x69, 0x01, 0x13, 0x65,
0x03, 0x05, 0x10, 0x2c, 0x24, 0x03, 0x03, 0xa4, 0x04, 0x15,
0x6c, 0x29, 0x02, 0x07, 0x27, 0x00, 0x0c, 0x69, 0x05, 0x42,
0x75, 0x73, 0x65, 0x64, 0x6e, 0x05, 0x86, 0x6b, 0x65, 0x00,
0x69, 0x74, 0x2e, 0x00, 0x44, 0x2d, 0x04, 0x25, 0x74, 0x68,
0x6a, 0x01, 0x20, 0x67, 0x6f, 0x4d, 0x00, 0x11, 0x75, 0x8c,
0x01, 0x12, 0x4e, 0xb1, 0x01, 0x00, 0x63, 0x01, 0x32, 0x00,
0x72, 0x69, 0xda, 0x03, 0xa0, 0x61, 0x6e, 0x00, 0x28, 0x4e,
0x2b, 0x32, 0x29, 0x00, 0x78, 0x08, 0x00, 0x28, 0x31, 0x29,
0x6f, 0x06, 0x30, 0x73, 0x6f, 0x2c, 0x67, 0x01, 0x00, 0x70,
0x05, 0x20, 0x69, 0x63, 0x95, 0x06, 0x12, 0x2c, 0x68, 0x02,
0xb1, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x00, 0x76, 0x61,
0x6c, 0x75, 0x9f, 0x00, 0x11, 0x36, 0x53, 0x00, 0x10, 0x73,
0x4c, 0x00, 0x33, 0x38, 0x78, 0x37, 0x73, 0x03, 0xf1, 0x05,
0x00, 0x00, 0x45, 0x6e, 0x73, 0x75, 0x72, 0x65, 0x20, 0x75,
0x6e, 0x69, 0x71, 0x75, 0x65, 0x20, 0x73, 0x6f, 0x6c, 0x75,
0x3c, 0x01, 0x31, 0x00, 0x00, 0x4e, 0x59, 0x07, 0x44, 0x6c,
0x79, 0x2c, 0x00, 0x9a, 0x01, 0x02, 0x99, 0x00, 0x01, 0xcb,
0x00, 0x00, 0x34, 0x00, 0x02, 0x6b, 0x02, 0x06, 0x1d, 0x01,
0x01, 0xec, 0x04, 0x03, 0x47, 0x05, 0x00, 0xba, 0x03, 0x10,
0x76, 0x02, 0x05, 0x21, 0x6c, 0x79, 0x6f, 0x05, 0x04, 0x58,
0x00, 0x33, 0x2e, 0x00, 0x50, 0x2c, 0x00, 0x01, 0x00, 0x01,
0x94, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73,
0x26, 0x02, 0x05, 0x75, 0x02, 0x41, 0x6d, 0x6f, 0x72, 0x65,
0x93, 0x02, 0x00, 0xd4, 0x00, 0x11, 0x74, 0x58, 0x06, 0x40,
0x73, 0x6f, 0x6d, 0x65, 0x73, 0x02, 0x12, 0x73, 0x1d, 0x00,
0x40, 0x73, 0x75, 0x62, 0x74, 0x92, 0x01, 0x20, 0x73, 0x6f,
0xcd, 0x05, 0x00, 0xe7, 0x04, 0x45, 0x6c, 0x69, 0x6b, 0x65,
0x14, 0x05, 0x01, 0x04, 0x04, 0x20, 0x6f, 0x66, 0x97, 0x01,
0xe0, 0x69, 0x73, 0x00, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
0x65, 0x2e, 0x00, 0x41, 0x6c, 0x30, 0x01, 0x41, 0x66, 0x69,
0x6e, 0x64, 0x72, 0x03, 0x03, 0xb9, 0x02, 0x76, 0x70, 0x6f,
0x73, 0x73, 0x69, 0x62, 0x6c, 0xa8, 0x00, 0x05, 0x88, 0x00,
0x00, 0xd2, 0x04, 0x30, 0x64, 0x64, 0x69, 0x14, 0x00, 0xf2,
0x01, 0x61, 0x6c, 0x00, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65,
0x6e, 0x67, 0x65, 0x00, 0x66, 0x6f, 0x72, 0x1c, 0x00, 0x10,
0x76, 0x57, 0x08, 0x10, 0x64, 0x65, 0x04, 0x10, 0x79, 0x88,
0x03, 0x40, 0x54, 0x75, 0x72, 0x6e, 0x5a, 0x00, 0x05, 0x7a,
0x00, 0x03, 0x8c, 0x02, 0x05, 0x1b, 0x05, 0x50, 0x73, 0x70,
0x65, 0x65, 0x64, 0xeb, 0x01, 0x03, 0x55, 0x07, 0xc0, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
0x00,
0x73, 0x61, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x00, 0xf1, 0x05,
0x00, 0x00, 0x00, 0x41, 0x00, 0x6e, 0x6f, 0x72, 0x6d, 0x61,
0x6c, 0x00, 0x73, 0x65, 0x74, 0x00, 0x6f, 0x66, 0x00, 0x64,
0x31, 0x00, 0xf0, 0x0b, 0x65, 0x73, 0x00, 0x2d, 0x00, 0x74,
0x68, 0x61, 0x74, 0x00, 0x69, 0x73, 0x2c, 0x00, 0x6f, 0x6e,
0x65, 0x00, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x24, 0x00, 0xf0, 0x07, 0x65, 0x76, 0x65, 0x72, 0x79, 0x00,
0x28, 0x75, 0x6e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64,
0x29, 0x00, 0x70, 0x61, 0x69, 0x72, 0x1a, 0x00, 0xf0, 0x3b,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x00, 0x66, 0x72,
0x6f, 0x6d, 0x00, 0x30, 0x00, 0x74, 0x6f, 0x00, 0x36, 0x00,
0x2d, 0x00, 0x68, 0x61, 0x73, 0x00, 0x62, 0x65, 0x65, 0x6e,
0x00, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x00,
0x69, 0x72, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x6c,
0x79, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00, 0x61, 0x00, 0x72,
0x65, 0x63, 0x74, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x3b, 0x00,
0x74, 0x68, 0x65, 0x6e, 0x05, 0x00, 0x03, 0x4f, 0x00, 0xf6,
0x00, 0x00, 0x69, 0x6e, 0x00, 0x65, 0x61, 0x63, 0x68, 0x00,
0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x4f, 0x00, 0xf1, 0x01,
0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x00, 0x64, 0x6f,
0x77, 0x6e, 0x00, 0x61, 0x6e, 0x64, 0x34, 0x00, 0x05, 0xc1,
0x00, 0xf0, 0x11, 0x74, 0x68, 0x65, 0x6d, 0x73, 0x65, 0x6c,
0x76, 0x65, 0x73, 0x00, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
0x64, 0x2e, 0x00, 0x59, 0x6f, 0x75, 0x72, 0x00, 0x74, 0x61,
0x73, 0x6b, 0x00, 0x69, 0x73, 0x9e, 0x00, 0xb1, 0x72, 0x65,
0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x3d,
0x00, 0xa3, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x00,
0x62, 0x79, 0xac, 0x00, 0x31, 0x69, 0x6e, 0x67, 0x19, 0x00,
0x0c, 0x1e, 0x01, 0x82, 0x74, 0x6f, 0x00, 0x6d, 0x61, 0x74,
0x63, 0x68, 0x36, 0x00, 0x71, 0x72, 0x6f, 0x76, 0x69, 0x64,
0x65, 0x64, 0x34, 0x00, 0x17, 0x79, 0x08, 0x01, 0xf0, 0x00,
0x2e, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x75, 0x00, 0xf0, 0x00, 0x77,
0x69, 0x64, 0x65, 0x6c, 0x79, 0x00, 0x63, 0x72, 0x65, 0x64,
0x69, 0x74, 0x65, 0x64, 0x49, 0x00, 0xc2, 0x4f, 0x2e, 0x00,
0x53, 0x2e, 0x00, 0x41, 0x64, 0x6c, 0x65, 0x72, 0x2c, 0xc7,
0x00, 0x81, 0x61, 0x6b, 0x65, 0x73, 0x00, 0x70, 0x61, 0x72,
0x74, 0x00, 0x82, 0x69, 0x74, 0x73, 0x00, 0x6e, 0x61, 0x6d,
0x65, 0x55, 0x01, 0x40, 0x74, 0x68, 0x6f, 0x73, 0x8e, 0x01,
0x51, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x61, 0x00, 0x46, 0x31,
0x37, 0x2e, 0x31, 0xe8, 0x01, 0xf0, 0x07, 0x63, 0x6f, 0x6e,
0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x4c,
0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xc7,
0x00, 0x41, 0x62, 0x65, 0x74, 0x77, 0x85, 0x01, 0xf5, 0x00,
0x6e, 0x79, 0x00, 0x74, 0x77, 0x6f, 0x00, 0x61, 0x64, 0x6a,
0x61, 0x63, 0x65, 0x6e, 0x74, 0xb5, 0x01, 0x83, 0x70, 0x6c,
0x61, 0x63, 0x65, 0x73, 0x00, 0x61, 0xe6, 0x00, 0x63, 0x00,
0x63, 0x6f, 0x76, 0x65, 0x72, 0x01, 0x01, 0x53, 0x6d, 0x2c,
0x00, 0x6f, 0x72, 0x48, 0x01, 0x12, 0x73, 0x11, 0x02, 0x00,
0x9a, 0x00, 0x00, 0xd2, 0x00, 0xf1, 0x05, 0x61, 0x6c, 0x72,
0x65, 0x61, 0x64, 0x79, 0x00, 0x70, 0x72, 0x65, 0x73, 0x65,
0x6e, 0x74, 0x2e, 0x00, 0x54, 0x72, 0x79, 0x36, 0x00, 0x12,
0x6f, 0x52, 0x00, 0x06, 0x51, 0x00, 0x60, 0x77, 0x68, 0x69,
0x63, 0x68, 0x00, 0x56, 0x00, 0xa0, 0x6c, 0x61, 0x70, 0x73,
0x00, 0x65, 0x78, 0x69, 0x73, 0x74, 0x2a, 0x00, 0x05, 0x56,
0x01, 0x43, 0x77, 0x69, 0x6c, 0x6c, 0x65, 0x00, 0x01, 0x59,
0x01, 0x40, 0x6f, 0x6e, 0x65, 0x73, 0x66, 0x00, 0x04, 0x33,
0x00, 0x00, 0xef, 0x00, 0x4e, 0x52, 0x69, 0x67, 0x68, 0xd6,
0x00, 0x0f, 0xd2, 0x00, 0x03, 0x40, 0x64, 0x72, 0x61, 0x77,
0xd1, 0x00, 0x46, 0x6c, 0x69, 0x6e, 0x65, 0x2a, 0x00, 0x01,
0xce, 0x00, 0x02, 0x8c, 0x00, 0xb2, 0x79, 0x6f, 0x75, 0x00,
0x63, 0x61, 0x6e, 0x00, 0x75, 0x73, 0x65, 0x0f, 0x02, 0x40,
0x6d, 0x69, 0x6e, 0x64, 0x16, 0x00, 0x52, 0x72, 0x73, 0x65,
0x6c, 0x66, 0x02, 0x03, 0x00, 0x24, 0x00, 0x43, 0x6b, 0x6e,
0x6f, 0x77, 0x7b, 0x01, 0x00, 0x69, 0x00, 0x04, 0x60, 0x00,
0x00, 0x8e, 0x02, 0x32, 0x6e, 0x6f, 0x74, 0x2a, 0x01, 0x21,
0x65, 0x64, 0x37, 0x02, 0x30, 0x00, 0x73, 0x69, 0xc6, 0x02,
0x03, 0xd5, 0x00, 0x1c, 0x2e, 0xb0, 0x00, 0x55, 0x61, 0x67,
0x61, 0x69, 0x6e, 0x49, 0x01, 0x00, 0xe5, 0x00, 0x00, 0x9d,
0x00, 0x00, 0xd9, 0x00, 0x13, 0x59, 0x8c, 0x00, 0x42, 0x61,
0x6c, 0x73, 0x6f, 0x91, 0x00, 0xd2, 0x68, 0x65, 0x00, 0x63,
0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x74,
0x02, 0x00, 0x1a, 0x01, 0x14, 0x61, 0x16, 0x00, 0x43, 0x61,
0x72, 0x6f, 0x75, 0xf6, 0x02, 0x74, 0x67, 0x72, 0x69, 0x64,
0x2e, 0x00, 0x57, 0x39, 0x03, 0x03, 0x21, 0x00, 0xbf, 0x69,
0x73, 0x00, 0x68, 0x61, 0x6c, 0x66, 0x00, 0x77, 0x61, 0x79,
0x29, 0x01, 0x0a, 0x11, 0x2c, 0xbd, 0x01, 0x14, 0x73, 0xed,
0x02, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x75, 0x00,
0x02, 0x92, 0x01, 0x0b, 0xc7, 0x01, 0x07, 0x18, 0x02, 0x00,
0x11, 0x01, 0x05, 0x44, 0x00, 0x2a, 0x6f, 0x72, 0x47, 0x00,
0x20, 0x73, 0x70, 0x37, 0x00, 0x32, 0x62, 0x61, 0x72, 0x46,
0x00, 0x3e, 0x6c, 0x61, 0x79, 0x8b, 0x01, 0x02, 0x50, 0x01,
0x02, 0xd9, 0x03, 0x81, 0x73, 0x2e, 0x00, 0x52, 0x65, 0x70,
0x65, 0x61, 0x14, 0x02, 0xca, 0x65, 0x69, 0x74, 0x68, 0x65,
0x72, 0x00, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x30, 0x01, 0x03,
0x86, 0x00, 0x25, 0x6f, 0x72, 0x3a, 0x01, 0x14, 0x50, 0x76,
0x00, 0x14, 0x61, 0x32, 0x04, 0x05, 0xbb, 0x00, 0x50, 0x68,
0x69, 0x67, 0x68, 0x6c, 0x82, 0x01, 0xe0, 0x00, 0x61, 0x6c,
0x6c, 0x00, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x63, 0xc4, 0x02, 0x03, 0xdf, 0x01, 0x02, 0x32, 0x00, 0x16,
0x2e, 0x45, 0x00, 0x07, 0x16, 0x00, 0x03, 0xae, 0x01, 0x01,
0x4a, 0x00, 0x51, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x81, 0x00,
0x05, 0x54, 0x00, 0x70, 0x69, 0x6e, 0x67, 0x2e, 0x00, 0x55,
0x70, 0x99, 0x01, 0x00, 0xc6, 0x00, 0x68, 0x64, 0x69, 0x66,
0x66, 0x65, 0x72, 0x80, 0x02, 0x00, 0xcf, 0x01, 0x17, 0x62,
0x31, 0x00, 0x00, 0x23, 0x04, 0x11, 0x74, 0x81, 0x03, 0x30,
0x67, 0x69, 0x76, 0x00, 0x01, 0x21, 0x69, 0x6d, 0xc1, 0x00,
0x41, 0x28, 0x41, 0x6c, 0x6c, 0x5b, 0x00, 0x02, 0xef, 0x00,
0xb0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x64, 0xfc, 0x04, 0x22, 0x73, 0x65, 0x05, 0x01, 0x31,
0x32, 0x2e, 0x31, 0x72, 0x02, 0x01, 0x21, 0x02, 0xb2, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29,
0x04, 0x04, 0x16, 0x32, 0x04, 0x04, 0xb1, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x81, 0x04,
0x46, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x44, 0x00,
0x04, 0x3f, 0x00, 0x04, 0x56, 0x04, 0xf1, 0x01, 0x65, 0x00,
0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e,
0x27, 0x00, 0x6f, 0x70, 0x72, 0x00, 0x22, 0x6f, 0x6e, 0x1a,
0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65,
0x6e, 0x75, 0xae, 0x00, 0x82, 0x4d, 0x61, 0x78, 0x69, 0x6d,
0x75, 0x6d, 0x20, 0xe6, 0x00, 0x45, 0x20, 0x6f, 0x6e, 0x20,
0xc1, 0x03, 0x33, 0x00, 0x00, 0x43, 0x80, 0x04, 0x02, 0x02,
0x02, 0x32, 0x69, 0x7a, 0x65, 0x69, 0x01, 0x13, 0x65, 0x03,
0x05, 0x10, 0x2c, 0x24, 0x03, 0x03, 0xa4, 0x04, 0x15, 0x6c,
0x29, 0x02, 0x07, 0x27, 0x00, 0x0c, 0x69, 0x05, 0x42, 0x75,
0x73, 0x65, 0x64, 0x6e, 0x05, 0x86, 0x6b, 0x65, 0x00, 0x69,
0x74, 0x2e, 0x00, 0x44, 0x2d, 0x04, 0x25, 0x74, 0x68, 0x6a,
0x01, 0x20, 0x67, 0x6f, 0x4d, 0x00, 0x11, 0x75, 0x8c, 0x01,
0x12, 0x4e, 0xb1, 0x01, 0x00, 0x63, 0x01, 0x32, 0x00, 0x72,
0x69, 0xda, 0x03, 0xa0, 0x61, 0x6e, 0x00, 0x28, 0x4e, 0x2b,
0x32, 0x29, 0x00, 0x78, 0x08, 0x00, 0x28, 0x31, 0x29, 0x6f,
0x06, 0x30, 0x73, 0x6f, 0x2c, 0x67, 0x01, 0x00, 0x70, 0x05,
0x20, 0x69, 0x63, 0x95, 0x06, 0x12, 0x2c, 0x68, 0x02, 0xb1,
0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x00, 0x76, 0x61, 0x6c,
0x75, 0x9f, 0x00, 0x11, 0x36, 0x53, 0x00, 0x10, 0x73, 0x4c,
0x00, 0x33, 0x38, 0x78, 0x37, 0x73, 0x03, 0xf1, 0x05, 0x00,
0x00, 0x45, 0x6e, 0x73, 0x75, 0x72, 0x65, 0x20, 0x75, 0x6e,
0x69, 0x71, 0x75, 0x65, 0x20, 0x73, 0x6f, 0x6c, 0x75, 0x3c,
0x01, 0x31, 0x00, 0x00, 0x4e, 0x59, 0x07, 0x44, 0x6c, 0x79,
0x2c, 0x00, 0x9a, 0x01, 0x02, 0x99, 0x00, 0x01, 0xcb, 0x00,
0x00, 0x34, 0x00, 0x02, 0x6b, 0x02, 0x06, 0x1d, 0x01, 0x01,
0xec, 0x04, 0x03, 0x47, 0x05, 0x00, 0xba, 0x03, 0x10, 0x76,
0x02, 0x05, 0x21, 0x6c, 0x79, 0x6f, 0x05, 0x04, 0x58, 0x00,
0x33, 0x2e, 0x00, 0x50, 0x2c, 0x00, 0x01, 0x00, 0x01, 0x94,
0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73, 0x26,
0x02, 0x05, 0x75, 0x02, 0x41, 0x6d, 0x6f, 0x72, 0x65, 0x93,
0x02, 0x00, 0xd4, 0x00, 0x11, 0x74, 0x58, 0x06, 0x40, 0x73,
0x6f, 0x6d, 0x65, 0x73, 0x02, 0x12, 0x73, 0x1d, 0x00, 0x40,
0x73, 0x75, 0x62, 0x74, 0x92, 0x01, 0x20, 0x73, 0x6f, 0xcd,
0x05, 0x00, 0xe7, 0x04, 0x45, 0x6c, 0x69, 0x6b, 0x65, 0x14,
0x05, 0x01, 0x04, 0x04, 0x20, 0x6f, 0x66, 0x97, 0x01, 0xe0,
0x69, 0x73, 0x00, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
0x2e, 0x00, 0x41, 0x6c, 0x30, 0x01, 0x41, 0x66, 0x69, 0x6e,
0x64, 0x72, 0x03, 0x03, 0xb9, 0x02, 0x76, 0x70, 0x6f, 0x73,
0x73, 0x69, 0x62, 0x6c, 0xa8, 0x00, 0x05, 0x88, 0x00, 0x00,
0xd2, 0x04, 0x30, 0x64, 0x64, 0x69, 0x14, 0x00, 0xf2, 0x01,
0x61, 0x6c, 0x00, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e,
0x67, 0x65, 0x00, 0x66, 0x6f, 0x72, 0x1c, 0x00, 0x10, 0x76,
0x57, 0x08, 0x10, 0x64, 0x65, 0x04, 0x10, 0x79, 0x88, 0x03,
0x40, 0x54, 0x75, 0x72, 0x6e, 0x5a, 0x00, 0x05, 0x7a, 0x00,
0x03, 0x8c, 0x02, 0x05, 0x1b, 0x05, 0x50, 0x73, 0x70, 0x65,
0x65, 0x64, 0xeb, 0x01, 0x03, 0x55, 0x07, 0xc0, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x00,
};
const unsigned short help_text_len = 2278;
const unsigned short help_text_words = 400;
const unsigned short help_text_len = 2299;
const unsigned short help_text_words = 401;
const char quick_help_text[] = "Tile the rectangle with a full set of dominoes.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,112 +6,150 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 83, TEXT_UNDERLINE },
{ 86, TEXT_CENTER | C_RED },
{ 153, TEXT_UNDERLINE },
{ 195, TEXT_CENTER | C_RED },
{ 211, TEXT_UNDERLINE },
{ 213, TEXT_UNDERLINE },
{ 89, TEXT_UNDERLINE },
{ 92, TEXT_CENTER | C_RED },
{ 161, TEXT_UNDERLINE },
{ 203, TEXT_CENTER | C_RED },
{ 219, TEXT_UNDERLINE },
{ 221, TEXT_UNDERLINE },
{ 239, TEXT_CENTER | C_RED },
{ 343, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 1245 comp 925 ratio 0.742972 level 5 saved 320 */
/* orig 1927 comp 1285 ratio 0.66684 level 10 saved 642 */
const char help_text[] = {
0xf1, 0x29, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfd, 0x06, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x35, 0x3a, 0x20, 0x46, 0x69, 0x66, 0x74, 0x65, 0x65, 0x6e,
0x20, 0x00, 0x00, 0x00, 0x54, 0x68, 0x65, 0x00, 0x6f, 0x6c,
0x64, 0x00, 0x6f, 0x6e, 0x65, 0x73, 0x00, 0x61, 0x72, 0x65,
0x00, 0x74, 0x68, 0x65, 0x00, 0x62, 0x65, 0x73, 0x74, 0x3a,
0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x69, 0x73, 0x12, 0x00,
0x41, 0x67, 0x6f, 0x6f, 0x64, 0x28, 0x00, 0xf0, 0x23, 0x60,
0x31, 0x35, 0x2d, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x27,
0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x73, 0x6c, 0x69, 0x64,
0x69, 0x6e, 0x67, 0x00, 0x74, 0x69, 0x6c, 0x65, 0x73, 0x2e,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x61, 0x00, 0x34, 0x78, 0x34, 0x00, 0x73, 0x71, 0x75, 0x55,
0x00, 0x83, 0x67, 0x72, 0x69, 0x64, 0x3b, 0x00, 0x31, 0x35,
0x10, 0x00, 0xf2, 0x03, 0x73, 0x00, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x65, 0x64, 0x3f, 0x00, 0x51, 0x2c, 0x00, 0x61, 0x6e, 0x64,
0x70, 0x00, 0x30, 0x73, 0x69, 0x78, 0xa2, 0x00, 0x20, 0x74,
0x68, 0x81, 0x00, 0x51, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5b,
0x00, 0x61, 0x72, 0x00, 0x6d, 0x6f, 0x76, 0x65, 0x95, 0x00,
0x70, 0x6f, 0x00, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x69, 0x00,
0x00, 0x3c, 0x00, 0x50, 0x00, 0x6e, 0x65, 0x78, 0x74, 0x16,
0x00, 0x00, 0x3e, 0x00, 0x01, 0x31, 0x00, 0x62, 0x00, 0x73,
0x70, 0x61, 0x63, 0x65, 0x53, 0x00, 0x00, 0xa5, 0x00, 0x73,
0x65, 0x00, 0x69, 0x74, 0x00, 0x69, 0x6e, 0x23, 0x00, 0x01,
0x1d, 0x00, 0x11, 0x2e, 0xff, 0x00, 0x33, 0x61, 0x69, 0x6d,
0x52, 0x00, 0x62, 0x65, 0x6e, 0x64, 0x00, 0x75, 0x70, 0xd8,
0x00, 0x00, 0x25, 0x00, 0x01, 0x95, 0x00, 0x12, 0x00, 0xa7,
0x00, 0xd6, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x00, 0x6f,
0x72, 0x64, 0x65, 0x72, 0x2c, 0x23, 0x00, 0x01, 0x48, 0x00,
0x00, 0x23, 0x00, 0x01, 0x38, 0x01, 0xe0, 0x6f, 0x74, 0x74,
0x6f, 0x6d, 0x00, 0x72, 0x69, 0x67, 0x68, 0x74, 0x00, 0x28,
0x73, 0x6a, 0x00, 0x22, 0x61, 0x74, 0x4a, 0x00, 0xf5, 0x05,
0x6f, 0x70, 0x00, 0x72, 0x6f, 0x77, 0x00, 0x72, 0x65, 0x61,
0x64, 0x73, 0x00, 0x31, 0x2c, 0x32, 0x2c, 0x33, 0x2c, 0x34,
0xee, 0x00, 0x04, 0x38, 0x00, 0x06, 0x21, 0x00, 0x81, 0x33,
0x2c, 0x31, 0x34, 0x2c, 0x31, 0x35, 0x2c, 0x5f, 0x00, 0x85,
0x29, 0x2e, 0x00, 0x00, 0x00, 0x35, 0x2e, 0x31, 0xb8, 0x01,
0x00, 0x3e, 0x01, 0x42, 0x72, 0x6f, 0x6c, 0x73, 0xc1, 0x01,
0xf3, 0x00, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x00,
0x63, 0x61, 0x6e, 0x00, 0x62, 0x65, 0x00, 0x1d, 0x00, 0x36,
0x6c, 0x65, 0x64, 0xa6, 0x00, 0x81, 0x6d, 0x6f, 0x75, 0x73,
0x65, 0x00, 0x6f, 0x72, 0x0d, 0x00, 0x80, 0x6b, 0x65, 0x79,
0x62, 0x6f, 0x61, 0x72, 0x64, 0x56, 0x00, 0xcc, 0x41, 0x00,
0x6c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0x2f, 0x00, 0x03, 0xd5, 0x00, 0x00, 0x96, 0x00, 0x94, 0x6f,
0x72, 0x00, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0xb9, 0x01,
0x01, 0xf2, 0x01, 0x0a, 0x6a, 0x01, 0x52, 0x00, 0x77, 0x69,
0x6c, 0x6c, 0xa0, 0x01, 0x73, 0x61, 0x73, 0x00, 0x6d, 0x61,
0x6e, 0x79, 0x40, 0x01, 0xc0, 0x61, 0x73, 0x00, 0x6e, 0x65,
0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x66, 0x01, 0x01,
0x23, 0x00, 0x06, 0x3c, 0x01, 0x27, 0x74, 0x6f, 0x74, 0x00,
0x83, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x9a,
0x02, 0x20, 0x61, 0x72, 0x7e, 0x00, 0x48, 0x6b, 0x65, 0x79,
0x73, 0x5e, 0x00, 0x02, 0xf1, 0x01, 0x75, 0x61, 0x64, 0x6a,
0x61, 0x63, 0x65, 0x6e, 0xf5, 0x01, 0x09, 0x8a, 0x01, 0xf4,
0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x00, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64,
0x00, 0x28, 0x6d, 0x6f, 0x76, 0xb8, 0x00, 0x09, 0x2d, 0x00,
0x77, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x36, 0x00,
0x01, 0x72, 0x01, 0x50, 0x50, 0x72, 0x65, 0x73, 0x73, 0x31,
0x00, 0x33, 0x60, 0x68, 0x27, 0x7f, 0x00, 0x20, 0x61, 0x6b,
0x7f, 0x00, 0x60, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x53,
0x00, 0x00, 0x90, 0x00, 0x1a, 0x2e, 0x29, 0x00, 0xb3, 0x65,
0x6e, 0x6f, 0x75, 0x67, 0x68, 0x00, 0x74, 0x69, 0x6d, 0x65,
0xb5, 0x00, 0x33, 0x73, 0x6f, 0x6c, 0xf1, 0x00, 0x00, 0xa7,
0x01, 0x50, 0x2c, 0x00, 0x62, 0x75, 0x74, 0x8b, 0x02, 0xe0,
0x6d, 0x61, 0x79, 0x00, 0x73, 0x63, 0x72, 0x61, 0x6d, 0x62,
0x6c, 0x65, 0x00, 0x79, 0xdc, 0x02, 0x40, 0x70, 0x72, 0x6f,
0x67, 0x4b, 0x00, 0x30, 0x00, 0x77, 0x68, 0xe1, 0x00, 0x20,
0x64, 0x6f, 0x54, 0x00, 0x20, 0x73, 0x6f, 0x8c, 0x00, 0x41,
0x28, 0x41, 0x6c, 0x6c, 0x43, 0x00, 0x11, 0x61, 0xa0, 0x00,
0xb0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x64, 0xc5, 0x00, 0x13, 0x73, 0xec, 0x00, 0x31, 0x32,
0x2e, 0x31, 0xc4, 0x03, 0xf1, 0x01, 0x61, 0x6c, 0x73, 0x6f,
0x00, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65,
0x2e, 0x29, 0x3f, 0x02, 0x15, 0x32, 0x3f, 0x02, 0xa5, 0x70,
0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x02,
0x04, 0x62, 0x6e, 0x6c, 0x79, 0x00, 0x6f, 0x70, 0x5b, 0x00,
0x05, 0x39, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x76,
0x00, 0xb3, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e,
0x2e, 0x2e, 0x27, 0x27, 0x00, 0x22, 0x00, 0x6f, 0x3c, 0x01,
0xb1, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65,
0x20, 0x00, 0x2d, 0x01, 0x00, 0xf1, 0x16, 0x00, 0x00, 0x00,
0x54, 0x68, 0x65, 0x00, 0x6f, 0x6c, 0x64, 0x00, 0x6f, 0x6e,
0x65, 0x73, 0x00, 0x61, 0x72, 0x65, 0x00, 0x74, 0x68, 0x65,
0x00, 0x62, 0x65, 0x73, 0x74, 0x3a, 0x00, 0x74, 0x68, 0x69,
0x73, 0x00, 0x69, 0x73, 0x12, 0x00, 0x41, 0x67, 0x6f, 0x6f,
0x64, 0x28, 0x00, 0xf1, 0x21, 0x60, 0x31, 0x35, 0x2d, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x27, 0x00, 0x77, 0x69, 0x74,
0x68, 0x00, 0x73, 0x6c, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x00,
0x74, 0x69, 0x6c, 0x65, 0x73, 0x2c, 0x00, 0x77, 0x68, 0x69,
0x63, 0x68, 0x00, 0x64, 0x61, 0x74, 0x65, 0x73, 0x00, 0x66,
0x72, 0x6f, 0x6d, 0x3e, 0x00, 0xf0, 0x0a, 0x31, 0x38, 0x37,
0x30, 0x73, 0x2e, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61,
0x76, 0x65, 0x00, 0x61, 0x00, 0x34, 0x78, 0x34, 0x00, 0x73,
0x71, 0x75, 0x71, 0x00, 0x83, 0x67, 0x72, 0x69, 0x64, 0x3b,
0x00, 0x31, 0x35, 0x10, 0x00, 0xf4, 0x03, 0x73, 0x00, 0x63,
0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x65, 0x64, 0x5b, 0x00, 0x31, 0x61, 0x6e,
0x64, 0x4e, 0x00, 0x30, 0x73, 0x69, 0x78, 0xd1, 0x00, 0x20,
0x74, 0x68, 0x9d, 0x00, 0x51, 0x65, 0x6d, 0x70, 0x74, 0x79,
0x5b, 0x00, 0x61, 0x72, 0x00, 0x6d, 0x6f, 0x76, 0x65, 0xb1,
0x00, 0x70, 0x6f, 0x00, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x69,
0x00, 0x00, 0x3c, 0x00, 0x50, 0x00, 0x6e, 0x65, 0x78, 0x74,
0x16, 0x00, 0x00, 0x3e, 0x00, 0x01, 0x31, 0x00, 0x62, 0x00,
0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x00, 0x00, 0xc1, 0x00,
0x73, 0x65, 0x00, 0x69, 0x74, 0x00, 0x69, 0x6e, 0x23, 0x00,
0x01, 0x1d, 0x00, 0x11, 0x2e, 0x1b, 0x01, 0x33, 0x61, 0x69,
0x6d, 0x52, 0x00, 0x62, 0x65, 0x6e, 0x64, 0x00, 0x75, 0x70,
0xf4, 0x00, 0x00, 0x25, 0x00, 0x01, 0x95, 0x00, 0x12, 0x00,
0xa7, 0x00, 0xd6, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x00,
0x6f, 0x72, 0x64, 0x65, 0x72, 0x2c, 0x23, 0x00, 0x01, 0x48,
0x00, 0x00, 0x23, 0x00, 0x01, 0x54, 0x01, 0xe0, 0x6f, 0x74,
0x74, 0x6f, 0x6d, 0x00, 0x72, 0x69, 0x67, 0x68, 0x74, 0x00,
0x28, 0x73, 0x6a, 0x00, 0x22, 0x61, 0x74, 0x4a, 0x00, 0xf5,
0x05, 0x6f, 0x70, 0x00, 0x72, 0x6f, 0x77, 0x00, 0x72, 0x65,
0x61, 0x64, 0x73, 0x00, 0x31, 0x2c, 0x32, 0x2c, 0x33, 0x2c,
0x34, 0xee, 0x00, 0x04, 0x38, 0x00, 0x06, 0x21, 0x00, 0x81,
0x33, 0x2c, 0x31, 0x34, 0x2c, 0x31, 0x35, 0x2c, 0x5f, 0x00,
0x85, 0x29, 0x2e, 0x00, 0x00, 0x00, 0x35, 0x2e, 0x31, 0xe7,
0x01, 0x00, 0x3e, 0x01, 0x51, 0x72, 0x6f, 0x6c, 0x73, 0x20,
0xdd, 0x01, 0xf3, 0x00, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d,
0x65, 0x00, 0x63, 0x61, 0x6e, 0x00, 0x62, 0x65, 0x00, 0x1d,
0x00, 0x36, 0x6c, 0x65, 0x64, 0xa6, 0x00, 0x81, 0x6d, 0x6f,
0x75, 0x73, 0x65, 0x00, 0x6f, 0x72, 0x0d, 0x00, 0x80, 0x6b,
0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x56, 0x00, 0xcc,
0x41, 0x00, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0x2f, 0x00, 0x03, 0xd5, 0x00, 0x00, 0x96, 0x00,
0x94, 0x6f, 0x72, 0x00, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,
0xb9, 0x01, 0x01, 0x0e, 0x02, 0x0a, 0x6a, 0x01, 0x52, 0x00,
0x77, 0x69, 0x6c, 0x6c, 0xa0, 0x01, 0x73, 0x61, 0x73, 0x00,
0x6d, 0x61, 0x6e, 0x79, 0x40, 0x01, 0xc0, 0x61, 0x73, 0x00,
0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x66,
0x01, 0x01, 0x23, 0x00, 0x06, 0x3c, 0x01, 0x27, 0x74, 0x6f,
0x74, 0x00, 0x70, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72,
0x9b, 0x00, 0xb1, 0x42, 0x79, 0x00, 0x64, 0x65, 0x66, 0x61,
0x75, 0x6c, 0x74, 0x2c, 0x21, 0x00, 0x20, 0x61, 0x72, 0x8a,
0x00, 0x48, 0x6b, 0x65, 0x79, 0x73, 0x6a, 0x00, 0x02, 0xfd,
0x01, 0x75, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x01,
0x02, 0x09, 0x96, 0x01, 0xf4, 0x09, 0x64, 0x69, 0x72, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x69, 0x6e, 0x64, 0x69,
0x63, 0x61, 0x74, 0x65, 0x64, 0x00, 0x28, 0x6d, 0x6f, 0x76,
0xc4, 0x00, 0x09, 0x2d, 0x00, 0x77, 0x6f, 0x70, 0x70, 0x6f,
0x73, 0x69, 0x74, 0x36, 0x00, 0x01, 0x7e, 0x01, 0x50, 0x50,
0x72, 0x65, 0x73, 0x73, 0x31, 0x00, 0x33, 0x60, 0x68, 0x27,
0x7f, 0x00, 0x20, 0x61, 0x6b, 0x7f, 0x00, 0x60, 0x73, 0x75,
0x67, 0x67, 0x65, 0x73, 0x53, 0x00, 0x00, 0x90, 0x00, 0x1a,
0x2e, 0x29, 0x00, 0xb3, 0x65, 0x6e, 0x6f, 0x75, 0x67, 0x68,
0x00, 0x74, 0x69, 0x6d, 0x65, 0xb5, 0x00, 0x33, 0x73, 0x6f,
0x6c, 0xfd, 0x00, 0x00, 0xb3, 0x01, 0x50, 0x2c, 0x00, 0x62,
0x75, 0x74, 0x97, 0x02, 0xe0, 0x6d, 0x61, 0x79, 0x00, 0x73,
0x63, 0x72, 0x61, 0x6d, 0x62, 0x6c, 0x65, 0x00, 0x79, 0xe8,
0x02, 0x40, 0x70, 0x72, 0x6f, 0x67, 0x4b, 0x00, 0x00, 0x6d,
0x03, 0x50, 0x6c, 0x65, 0x00, 0x64, 0x6f, 0x54, 0x00, 0x20,
0x73, 0x6f, 0x8c, 0x00, 0x42, 0x28, 0x41, 0x6c, 0x6c, 0x12,
0x01, 0x01, 0xa0, 0x00, 0xb0, 0x73, 0x00, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xc5, 0x00, 0x13, 0x73,
0xec, 0x00, 0x31, 0x32, 0x2e, 0x31, 0xec, 0x03, 0xf1, 0x01,
0x61, 0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x4b, 0x02, 0x15, 0x32,
0x4b, 0x02, 0xb4, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x73, 0x20, 0x2a, 0x04, 0x62, 0x6e, 0x6c, 0x79,
0x00, 0x6f, 0x70, 0x5b, 0x00, 0x05, 0x39, 0x00, 0x06, 0xe9,
0x03, 0xb3, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e,
0x2e, 0x2e, 0x27, 0x27, 0x00, 0x32, 0x00, 0x6f, 0x6e, 0x1a,
0x00, 0xa1, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65,
0x6e, 0x75, 0x7b, 0x00, 0x51, 0x57, 0x69, 0x64, 0x74, 0x68,
0xd9, 0x02, 0x20, 0x48, 0x65, 0x07, 0x03, 0x10, 0x2c, 0xcd,
0x00, 0x21, 0x63, 0x68, 0x1c, 0x00, 0xf1, 0x07, 0x73, 0x65,
0x6c, 0x66, 0x2d, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61,
0x74, 0x6f, 0x72, 0x79, 0x2e, 0x00, 0x28, 0x4f, 0x6e, 0x63,
0xfd, 0x00, 0xa1, 0x27, 0x76, 0x65, 0x00, 0x63, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x12, 0x03, 0xe9, 0x73, 0x65, 0x2c, 0x00,
0x69, 0x74, 0x27, 0x73, 0x00, 0x6e, 0x6f, 0x74, 0x00, 0x61,
0x75, 0x04, 0x00, 0x58, 0x02, 0xf0, 0x03, 0x6d, 0x6f, 0x72,
0x65, 0x2c, 0x00, 0x6f, 0x66, 0x00, 0x63, 0x6f, 0x75, 0x72,
0x73, 0x65, 0x21, 0x29, 0x00,
0xe5, 0x02, 0x20, 0x48, 0x65, 0x13, 0x03, 0x04, 0x3a, 0x04,
0x00, 0x1c, 0x00, 0xf1, 0x07, 0x73, 0x65, 0x6c, 0x66, 0x2d,
0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x6f, 0x72,
0x79, 0x2e, 0x00, 0x28, 0x4f, 0x6e, 0x63, 0xfd, 0x00, 0xa1,
0x27, 0x76, 0x65, 0x00, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x1e, 0x03, 0xe9, 0x73, 0x65, 0x2c, 0x00, 0x69, 0x74, 0x27,
0x73, 0x00, 0x6e, 0x6f, 0x74, 0x00, 0x61, 0x9d, 0x04, 0x00,
0x64, 0x02, 0xf2, 0x01, 0x6d, 0x6f, 0x72, 0x65, 0x2c, 0x00,
0x6f, 0x66, 0x00, 0x63, 0x6f, 0x75, 0x72, 0x73, 0x65, 0x21,
0xe1, 0x00, 0x15, 0x33, 0xe1, 0x00, 0xf1, 0x00, 0x75, 0x73,
0x65, 0x72, 0x20, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65,
0x6e, 0x63, 0x65, 0xe7, 0x00, 0xc2, 0x4f, 0x6e, 0x00, 0x70,
0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xa4, 0x03,
0x80, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x00, 0x2e,
0x00, 0x17, 0x00, 0x2e, 0x00, 0x12, 0x2c, 0xd9, 0x00, 0x16,
0x50, 0x12, 0x00, 0x0d, 0xf5, 0x00, 0x34, 0x47, 0x61, 0x6d,
0xf5, 0x00, 0x01, 0xe3, 0x01, 0x30, 0x6c, 0x65, 0x74, 0xc6,
0x00, 0x00, 0x2a, 0x03, 0x53, 0x66, 0x69, 0x67, 0x75, 0x72,
0xec, 0x02, 0x20, 0x65, 0x6e, 0x82, 0x03, 0x1b, 0x66, 0xcb,
0x02, 0x34, 0x2e, 0x00, 0x57, 0x75, 0x03, 0x03, 0xed, 0x02,
0xc4, 0x00, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x2c,
0x00, 0x60, 0x4d, 0x29, 0x03, 0x00, 0xe4, 0x02, 0x1b, 0x27,
0x06, 0x03, 0x01, 0x64, 0x00, 0x11, 0x70, 0x23, 0x02, 0x04,
0xd7, 0x02, 0x1b, 0x73, 0xef, 0x02, 0x01, 0xda, 0x00, 0x00,
0x27, 0x00, 0x44, 0x77, 0x61, 0x6e, 0x74, 0x2b, 0x03, 0x03,
0x81, 0x03, 0x24, 0x2c, 0x00, 0x9f, 0x04, 0xf6, 0x01, 0x28,
0x66, 0x6f, 0x72, 0x00, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c,
0x65, 0x29, 0x00, 0x69, 0x66, 0x32, 0x00, 0x08, 0xac, 0x03,
0x01, 0x3c, 0x00, 0x00, 0x2c, 0x04, 0x04, 0xc4, 0x00, 0x32,
0x67, 0x61, 0x70, 0xe9, 0x04, 0x56, 0x77, 0x61, 0x72, 0x64,
0x73, 0x59, 0x05, 0x41, 0x67, 0x61, 0x70, 0x2c, 0xc6, 0x01,
0x13, 0x64, 0x9e, 0x00, 0x10, 0x52, 0x25, 0x00, 0x07, 0xe8,
0x00, 0x05, 0x62, 0x03, 0x0e, 0xe9, 0x00, 0x00, 0x3d, 0x00,
0x23, 0x27, 0x2c, 0x9f, 0x06, 0x40, 0x68, 0x61, 0x76, 0x69,
0x0a, 0x03, 0x0d, 0x34, 0x01, 0x00, 0xad, 0x05, 0x82, 0x72,
0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x64, 0xdf, 0x05, 0x01,
0xb2, 0x00, 0x34, 0x6f, 0x75, 0x6c, 0x73, 0x00, 0x3f, 0x4c,
0x65, 0x66, 0xbe, 0x00, 0x10, 0x0a, 0xb3, 0x00, 0x08, 0xae,
0x05, 0x00, 0x1e, 0x00, 0x40, 0x65, 0x6e, 0x64, 0x73, 0x0d,
0x06, 0x34, 0x6f, 0x6e, 0x65, 0xc6, 0x06, 0x04, 0x41, 0x00,
0xe0, 0x77, 0x68, 0x65, 0x72, 0x65, 0x00, 0x69, 0x74, 0x00,
0x77, 0x61, 0x73, 0x2e, 0x00,
};
const unsigned short help_text_len = 1245;
const unsigned short help_text_words = 229;
const unsigned short help_text_len = 1927;
const unsigned short help_text_words = 353;
const char quick_help_text[] = "Slide the tiles around to arrange them into order.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,140 +6,140 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 141, TEXT_CENTER | C_RED },
{ 306, TEXT_CENTER | C_RED },
{ 142, TEXT_CENTER | C_RED },
{ 307, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 1804 comp 1242 ratio 0.68847 level 10 saved 562 */
/* orig 1821 comp 1245 ratio 0.68369 level 10 saved 576 */
const char help_text[] = {
0xf0, 0x28, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x39, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x6c, 0x69, 0x6e,
0x67, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68,
0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65,
0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d, 0x65, 0x11, 0x00, 0xf6,
0x13, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x63, 0x6f, 0x6e,
0x74, 0x61, 0x69, 0x6e, 0x00, 0x64, 0x69, 0x67, 0x69, 0x74,
0x73, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x74, 0x68, 0x65,
0x00, 0x72, 0x65, 0x73, 0x74, 0x26, 0x00, 0xa0, 0x61, 0x72,
0x65, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x5b, 0x00,
0xf5, 0x02, 0x72, 0x00, 0x6a, 0x6f, 0x62, 0x00, 0x69, 0x73,
0x00, 0x74, 0x6f, 0x00, 0x66, 0x69, 0x6c, 0x6c, 0x00, 0x40,
0x00, 0x00, 0x0a, 0x00, 0x23, 0x74, 0x68, 0x2c, 0x00, 0x06,
0x73, 0x00, 0x50, 0x69, 0x6e, 0x00, 0x73, 0x75, 0x47, 0x00,
0xc2, 0x00, 0x77, 0x61, 0x79, 0x00, 0x74, 0x68, 0x61, 0x74,
0x00, 0x65, 0x61, 0x7d, 0x00, 0xd7, 0x6e, 0x65, 0x63, 0x74,
0x65, 0x64, 0x00, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0xa8,
0x00, 0x44, 0x00, 0x61, 0x6c, 0x6c, 0x9d, 0x00, 0x31, 0x69,
0x6e, 0x67, 0x56, 0x00, 0x42, 0x73, 0x61, 0x6d, 0x65, 0x69,
0x00, 0x70, 0x00, 0x68, 0x61, 0x73, 0x00, 0x61, 0x6e, 0x98,
0x00, 0x70, 0x61, 0x00, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x8c,
0x00, 0x01, 0x59, 0x00, 0x01, 0x20, 0x00, 0x7b, 0x2e, 0x00,
0x00, 0x00, 0x28, 0x60, 0x43, 0x5f, 0x00, 0x61, 0x27, 0x2c,
0x00, 0x66, 0x6f, 0x72, 0x4b, 0x00, 0x80, 0x70, 0x75, 0x72,
0x70, 0x6f, 0x73, 0x65, 0x73, 0x72, 0x00, 0xf0, 0x09, 0x74,
0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x00,
0x64, 0x6f, 0x65, 0x73, 0x00, 0x6e, 0x6f, 0x74, 0x00, 0x63,
0x6f, 0x75, 0x6e, 0x4c, 0x00, 0xf0, 0x00, 0x61, 0x67, 0x6f,
0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x73, 0x65, 0x70, 0x61,
0x72, 0x61, 0x4c, 0x00, 0x05, 0xa1, 0x00, 0xf2, 0x17, 0x73,
0x00, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x2e,
0x29, 0x00, 0x00, 0x00, 0x46, 0x6f, 0x72, 0x00, 0x65, 0x78,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x00, 0x69, 0x74, 0x00,
0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x96, 0x00, 0x23,
0x6e, 0x6f, 0x38, 0x00, 0x45, 0x00, 0x63, 0x61, 0x6e, 0x75,
0x01, 0x64, 0x61, 0x00, 0x7a, 0x65, 0x72, 0x6f, 0x75, 0x01,
0x65, 0x61, 0x74, 0x00, 0x74, 0x77, 0x6f, 0x55, 0x00, 0x05,
0x69, 0x00, 0x00, 0x32, 0x00, 0x00, 0x94, 0x00, 0x47, 0x62,
0x6f, 0x74, 0x68, 0x3b, 0x00, 0x74, 0x6f, 0x6e, 0x65, 0x2e,
0x00, 0x4e, 0x6f, 0x3b, 0x01, 0x08, 0x12, 0x01, 0x70, 0x67,
0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x54, 0x00, 0xc0, 0x6e,
0x00, 0x39, 0x00, 0x28, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73,
0x65, 0xfa, 0x00, 0x20, 0x6e, 0x00, 0xa7, 0x01, 0x01, 0x26,
0x00, 0x52, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x5a, 0x00, 0x00,
0x29, 0x02, 0x53, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x60, 0x01,
0x10, 0x29, 0x41, 0x01, 0x41, 0x43, 0x72, 0x65, 0x64, 0xc8,
0x00, 0x12, 0x72, 0x23, 0x01, 0xa1, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0xfa, 0x01, 0xb0, 0x4e,
0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x31, 0x34, 0x5d,
0x2e, 0x00, 0x03, 0x7e, 0x02, 0x41, 0x00, 0x77, 0x61, 0x73,
0xa5, 0x00, 0x40, 0x72, 0x69, 0x62, 0x75, 0x2f, 0x01, 0x01,
0x98, 0x01, 0x10, 0x69, 0x14, 0x00, 0x50, 0x6c, 0x6c, 0x65,
0x63, 0x74, 0xab, 0x00, 0xf0, 0x01, 0x62, 0x79, 0x00, 0x4a,
0x6f, 0x6e, 0x61, 0x73, 0x00, 0x4b, 0x6f, 0x65, 0x6c, 0x6b,
0x65, 0x72, 0x3f, 0x00, 0x00, 0x47, 0x00, 0xd1, 0x00, 0x68,
0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
0x6e, 0x5e, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70,
0x2f, 0x65, 0x6e, 0x2f, 0x7d, 0x00, 0x20, 0x73, 0x2f, 0x70,
0x02, 0xf5, 0x02, 0x6f, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x68,
0x74, 0x6d, 0x6c, 0x00, 0x00, 0x00, 0x32, 0x39, 0x2e, 0x31,
0xfb, 0x02, 0x01, 0x79, 0x00, 0x30, 0x6f, 0x6c, 0x73, 0x04,
0x03, 0x74, 0x54, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x99,
0x00, 0xe1, 0x2c, 0x00, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79,
0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x05, 0x02, 0x20, 0x6d,
0x6f, 0x15, 0x01, 0x00, 0x4d, 0x01, 0x29, 0x6e, 0x79, 0xb3,
0x02, 0x04, 0x06, 0x03, 0x50, 0x6e, 0x00, 0x74, 0x79, 0x70,
0x1c, 0x01, 0x02, 0x75, 0x02, 0x12, 0x6f, 0xdd, 0x02, 0x85,
0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0xff, 0x02,
0x01, 0xbb, 0x01, 0x02, 0x3a, 0x00, 0xa4, 0x2e, 0x00, 0x42,
0x79, 0x00, 0x64, 0x72, 0x61, 0x67, 0x67, 0xb5, 0x02, 0x01,
0x65, 0x00, 0x51, 0x2c, 0x00, 0x79, 0x6f, 0x75, 0xc9, 0x01,
0x20, 0x73, 0x65, 0x06, 0x01, 0x95, 0x00, 0x6d, 0x75, 0x6c,
0x74, 0x69, 0x70, 0x6c, 0x65, 0xe5, 0x01, 0x04, 0x4c, 0x00,
0x46, 0x77, 0x69, 0x74, 0x68, 0x8d, 0x01, 0xc1, 0x6b, 0x65,
0x79, 0x70, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x00, 0x49, 0x66,
0x43, 0x00, 0x30, 0x6d, 0x61, 0x6b, 0x90, 0x00, 0x8e, 0x6d,
0x69, 0x73, 0x74, 0x61, 0x6b, 0x65, 0x2c, 0xcd, 0x00, 0x02,
0xa3, 0x00, 0x60, 0x69, 0x6e, 0x63, 0x6f, 0x72, 0x72, 0x69,
0x00, 0x07, 0xd1, 0x00, 0x01, 0x4a, 0x00, 0xf0, 0x01, 0x00,
0x30, 0x2c, 0x00, 0x53, 0x70, 0x61, 0x63, 0x65, 0x2c, 0x00,
0x42, 0x61, 0x63, 0x6b, 0x73, 0x0b, 0x00, 0x61, 0x00, 0x6f,
0x72, 0x00, 0x45, 0x6e, 0x31, 0x02, 0x70, 0x6f, 0x00, 0x63,
0x6c, 0x65, 0x61, 0x72, 0xc0, 0x02, 0x20, 0x61, 0x67, 0x68,
0x02, 0x43, 0x28, 0x6f, 0x72, 0x00, 0x3b, 0x02, 0xd1, 0x00,
0x55, 0x6e, 0x64, 0x6f, 0x00, 0x66, 0x65, 0x61, 0x74, 0x75,
0x72, 0x65, 0x22, 0x02, 0x13, 0x59, 0xd5, 0x00, 0x70, 0x61,
0x6c, 0x73, 0x6f, 0x00, 0x6d, 0x6f, 0x70, 0x04, 0x33, 0x72,
0x6f, 0x75, 0x42, 0x04, 0x01, 0x79, 0x04, 0x01, 0xcf, 0x00,
0x00, 0x0e, 0x00, 0x60, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
0xd1, 0x00, 0x20, 0x73, 0x3b, 0x56, 0x01, 0x00, 0x1f, 0x01,
0x04, 0x58, 0x01, 0x10, 0x77, 0xf9, 0x00, 0x03, 0x4a, 0x01,
0x04, 0x12, 0x01, 0x0c, 0xfc, 0x03, 0x03, 0x40, 0x00, 0x03,
0x50, 0x00, 0x00, 0x52, 0x03, 0x55, 0x75, 0x6d, 0x62, 0x65,
0x72, 0x4c, 0x00, 0x12, 0x30, 0x46, 0x00, 0x04, 0xbe, 0x00,
0x1a, 0x2e, 0x9c, 0x00, 0x0f, 0x76, 0x01, 0x05, 0x00, 0xdc,
0x02, 0x02, 0x49, 0x00, 0x00, 0x44, 0x00, 0x22, 0x6f, 0x72,
0x40, 0x00, 0x01, 0xc7, 0x02, 0x04, 0xb9, 0x00, 0x61, 0x72,
0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x01, 0x51, 0x61, 0x72,
0x72, 0x6f, 0x77, 0xc3, 0x00, 0x8c, 0x2c, 0x00, 0x62, 0x65,
0x66, 0x6f, 0x72, 0x65, 0xca, 0x00, 0x04, 0xc6, 0x01, 0x04,
0x4a, 0x00, 0x01, 0x42, 0x00, 0x88, 0x68, 0x69, 0x67, 0x68,
0x6c, 0x69, 0x67, 0x68, 0x3d, 0x04, 0x10, 0x28, 0xae, 0x03,
0x30, 0x62, 0x6f, 0x76, 0x48, 0x01, 0x10, 0x54, 0xf5, 0x00,
0x01, 0x88, 0x01, 0x70, 0x62, 0x61, 0x72, 0x00, 0x61, 0x64,
0x64, 0xc9, 0x03, 0x00, 0xb4, 0x04, 0x00, 0x52, 0x01, 0x14,
0x73, 0x0b, 0x02, 0x07, 0x29, 0x02, 0x00, 0x1e, 0x00, 0x42,
0x66, 0x72, 0x6f, 0x6d, 0x2f, 0x01, 0x13, 0x65, 0x57, 0x03,
0x17, 0x2e, 0xd1, 0x01, 0x00, 0x22, 0x00, 0x63, 0x65, 0x73,
0x63, 0x61, 0x70, 0x65, 0x47, 0x00, 0x01, 0x4f, 0x05, 0x05,
0xf6, 0x00, 0x0e, 0x3c, 0x00, 0x00, 0x30, 0x05, 0x13, 0x41,
0x81, 0x01, 0x11, 0x61, 0x13, 0x00, 0xb1, 0x73, 0x00, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xc0, 0x05,
0x03, 0xbc, 0x03, 0x31, 0x32, 0x2e, 0x31, 0x0e, 0x06, 0x01,
0x57, 0x01, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
0x6c, 0x65, 0x2e, 0x29, 0x8a, 0x03, 0x15, 0x32, 0x8a, 0x03,
0x00, 0x2e, 0x05, 0x77, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
0x20, 0x1d, 0x04, 0x12, 0x61, 0x13, 0x05, 0x00, 0xca, 0x02,
0x20, 0x74, 0x6f, 0xe3, 0x01, 0x52, 0x66, 0x69, 0x67, 0x75,
0x72, 0x5e, 0x02, 0x02, 0x88, 0x01, 0x00, 0x91, 0x05, 0x32,
0x72, 0x6f, 0x77, 0x03, 0x01, 0x63, 0x63, 0x6f, 0x6c, 0x75,
0x6d, 0x6e, 0xa5, 0x05, 0x02, 0x52, 0x02, 0x82, 0x2c, 0x00,
0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x9d, 0x01, 0xd0, 0x60,
0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75,
0x2e, 0x00,
0x67, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf0, 0x14, 0x00, 0x00,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00,
0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73,
0x6f, 0x6d, 0x65, 0x11, 0x00, 0xf6, 0x13, 0x77, 0x68, 0x69,
0x63, 0x68, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
0x00, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x2c, 0x00, 0x61,
0x6e, 0x64, 0x00, 0x74, 0x68, 0x65, 0x00, 0x72, 0x65, 0x73,
0x74, 0x26, 0x00, 0xa0, 0x61, 0x72, 0x65, 0x00, 0x65, 0x6d,
0x70, 0x74, 0x79, 0x2e, 0x5b, 0x00, 0xf5, 0x02, 0x72, 0x00,
0x6a, 0x6f, 0x62, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00,
0x66, 0x69, 0x6c, 0x6c, 0x00, 0x40, 0x00, 0x00, 0x0a, 0x00,
0x23, 0x74, 0x68, 0x2c, 0x00, 0x06, 0x73, 0x00, 0x50, 0x69,
0x6e, 0x00, 0x73, 0x75, 0x47, 0x00, 0xc2, 0x00, 0x77, 0x61,
0x79, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x65, 0x61, 0x7d,
0x00, 0xd7, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x00, 0x72,
0x65, 0x67, 0x69, 0x6f, 0x6e, 0xa8, 0x00, 0x44, 0x00, 0x61,
0x6c, 0x6c, 0x9d, 0x00, 0x31, 0x69, 0x6e, 0x67, 0x56, 0x00,
0x42, 0x73, 0x61, 0x6d, 0x65, 0x69, 0x00, 0x70, 0x00, 0x68,
0x61, 0x73, 0x00, 0x61, 0x6e, 0x98, 0x00, 0x70, 0x61, 0x00,
0x65, 0x71, 0x75, 0x61, 0x6c, 0x8c, 0x00, 0x01, 0x59, 0x00,
0x01, 0x20, 0x00, 0x7b, 0x2e, 0x00, 0x00, 0x00, 0x28, 0x60,
0x43, 0x5f, 0x00, 0x61, 0x27, 0x2c, 0x00, 0x66, 0x6f, 0x72,
0x4b, 0x00, 0x80, 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65,
0x73, 0x72, 0x00, 0xf0, 0x09, 0x74, 0x68, 0x69, 0x73, 0x00,
0x67, 0x61, 0x6d, 0x65, 0x2c, 0x00, 0x64, 0x6f, 0x65, 0x73,
0x00, 0x6e, 0x6f, 0x74, 0x00, 0x63, 0x6f, 0x75, 0x6e, 0x4c,
0x00, 0xf0, 0x00, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x6c,
0x79, 0x00, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x4c, 0x00,
0x05, 0xa1, 0x00, 0xf2, 0x17, 0x73, 0x00, 0x61, 0x64, 0x6a,
0x61, 0x63, 0x65, 0x6e, 0x74, 0x2e, 0x29, 0x00, 0x00, 0x00,
0x46, 0x6f, 0x72, 0x00, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c,
0x65, 0x2c, 0x00, 0x69, 0x74, 0x00, 0x66, 0x6f, 0x6c, 0x6c,
0x6f, 0x77, 0x73, 0x96, 0x00, 0x23, 0x6e, 0x6f, 0x38, 0x00,
0x45, 0x00, 0x63, 0x61, 0x6e, 0x75, 0x01, 0x64, 0x61, 0x00,
0x7a, 0x65, 0x72, 0x6f, 0x75, 0x01, 0x65, 0x61, 0x74, 0x00,
0x74, 0x77, 0x6f, 0x55, 0x00, 0x05, 0x69, 0x00, 0x00, 0x32,
0x00, 0x00, 0x94, 0x00, 0x47, 0x62, 0x6f, 0x74, 0x68, 0x3b,
0x00, 0x74, 0x6f, 0x6e, 0x65, 0x2e, 0x00, 0x4e, 0x6f, 0x3b,
0x01, 0x08, 0x12, 0x01, 0x70, 0x67, 0x72, 0x65, 0x61, 0x74,
0x65, 0x72, 0x54, 0x00, 0xc0, 0x6e, 0x00, 0x39, 0x00, 0x28,
0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0xfa, 0x00, 0x20,
0x6e, 0x00, 0xa7, 0x01, 0x01, 0x26, 0x00, 0x52, 0x77, 0x6f,
0x75, 0x6c, 0x64, 0x5a, 0x00, 0x00, 0x29, 0x02, 0x53, 0x73,
0x69, 0x6e, 0x67, 0x6c, 0x60, 0x01, 0x10, 0x29, 0x41, 0x01,
0x41, 0x43, 0x72, 0x65, 0x64, 0xc8, 0x00, 0x12, 0x72, 0x23,
0x01, 0xa1, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67,
0x6f, 0x65, 0xfa, 0x01, 0xb0, 0x4e, 0x69, 0x6b, 0x6f, 0x6c,
0x69, 0x00, 0x5b, 0x31, 0x34, 0x5d, 0x2e, 0x00, 0x03, 0x92,
0x02, 0x41, 0x00, 0x77, 0x61, 0x73, 0xa5, 0x00, 0x40, 0x72,
0x69, 0x62, 0x75, 0x2f, 0x01, 0x01, 0x98, 0x01, 0x10, 0x69,
0x14, 0x00, 0x50, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0xab, 0x00,
0xf0, 0x01, 0x62, 0x79, 0x00, 0x4a, 0x6f, 0x6e, 0x61, 0x73,
0x00, 0x4b, 0x6f, 0x65, 0x6c, 0x6b, 0x65, 0x72, 0x3f, 0x00,
0x00, 0x47, 0x00, 0xe1, 0x00, 0x68, 0x74, 0x74, 0x70, 0x73,
0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x5f, 0x00,
0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e,
0x2f, 0x7e, 0x00, 0x20, 0x73, 0x2f, 0x71, 0x02, 0xd5, 0x6f,
0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x00, 0x00, 0x00, 0x32, 0x39,
0x2e, 0x31, 0x0c, 0x03, 0x01, 0x76, 0x00, 0xe4, 0x6f, 0x6c,
0x73, 0x20, 0x00, 0x00, 0x00, 0x54, 0x6f, 0x00, 0x70, 0x6c,
0x61, 0x79, 0x96, 0x00, 0xe1, 0x2c, 0x00, 0x73, 0x69, 0x6d,
0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x02,
0x02, 0x20, 0x6d, 0x6f, 0x12, 0x01, 0x00, 0x4a, 0x01, 0x29,
0x6e, 0x79, 0xb0, 0x02, 0x04, 0x03, 0x03, 0x50, 0x6e, 0x00,
0x74, 0x79, 0x70, 0x19, 0x01, 0x02, 0x72, 0x02, 0x12, 0x6f,
0xda, 0x02, 0x85, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72,
0x64, 0xfc, 0x02, 0x01, 0xb8, 0x01, 0x02, 0x3a, 0x00, 0xa4,
0x2e, 0x00, 0x42, 0x79, 0x00, 0x64, 0x72, 0x61, 0x67, 0x67,
0xb2, 0x02, 0x01, 0x65, 0x00, 0x51, 0x2c, 0x00, 0x79, 0x6f,
0x75, 0xc6, 0x01, 0x20, 0x73, 0x65, 0x03, 0x01, 0x95, 0x00,
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0xe2, 0x01,
0x04, 0x4c, 0x00, 0x46, 0x77, 0x69, 0x74, 0x68, 0x8a, 0x01,
0xc1, 0x6b, 0x65, 0x79, 0x70, 0x72, 0x65, 0x73, 0x73, 0x2e,
0x00, 0x49, 0x66, 0x43, 0x00, 0x30, 0x6d, 0x61, 0x6b, 0x90,
0x00, 0x8e, 0x6d, 0x69, 0x73, 0x74, 0x61, 0x6b, 0x65, 0x2c,
0xcd, 0x00, 0x02, 0xa3, 0x00, 0x60, 0x69, 0x6e, 0x63, 0x6f,
0x72, 0x72, 0x69, 0x00, 0x07, 0xd1, 0x00, 0x01, 0x4a, 0x00,
0xf0, 0x01, 0x00, 0x30, 0x2c, 0x00, 0x53, 0x70, 0x61, 0x63,
0x65, 0x2c, 0x00, 0x42, 0x61, 0x63, 0x6b, 0x73, 0x0b, 0x00,
0x61, 0x00, 0x6f, 0x72, 0x00, 0x45, 0x6e, 0x2e, 0x02, 0x70,
0x6f, 0x00, 0x63, 0x6c, 0x65, 0x61, 0x72, 0xbd, 0x02, 0x20,
0x61, 0x67, 0x65, 0x02, 0x43, 0x28, 0x6f, 0x72, 0x00, 0x38,
0x02, 0xd1, 0x00, 0x55, 0x6e, 0x64, 0x6f, 0x00, 0x66, 0x65,
0x61, 0x74, 0x75, 0x72, 0x65, 0x1f, 0x02, 0x13, 0x59, 0xd5,
0x00, 0x70, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x6d, 0x6f, 0x6d,
0x04, 0x33, 0x72, 0x6f, 0x75, 0x3f, 0x04, 0x01, 0x76, 0x04,
0x01, 0xcf, 0x00, 0x00, 0x0e, 0x00, 0x60, 0x63, 0x75, 0x72,
0x73, 0x6f, 0x72, 0xd1, 0x00, 0x20, 0x73, 0x3b, 0x56, 0x01,
0x00, 0x1f, 0x01, 0x04, 0x58, 0x01, 0x10, 0x77, 0xf9, 0x00,
0x03, 0x4a, 0x01, 0x04, 0x12, 0x01, 0x0c, 0xf9, 0x03, 0x03,
0x40, 0x00, 0x03, 0x50, 0x00, 0x00, 0x4f, 0x03, 0x55, 0x75,
0x6d, 0x62, 0x65, 0x72, 0x4c, 0x00, 0x12, 0x30, 0x46, 0x00,
0x04, 0xbe, 0x00, 0x1a, 0x2e, 0x9c, 0x00, 0x0f, 0x76, 0x01,
0x05, 0x00, 0xd9, 0x02, 0x02, 0x49, 0x00, 0x00, 0x44, 0x00,
0x22, 0x6f, 0x72, 0x40, 0x00, 0x01, 0xc4, 0x02, 0x04, 0xb9,
0x00, 0x61, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x01,
0x51, 0x61, 0x72, 0x72, 0x6f, 0x77, 0xc3, 0x00, 0x8c, 0x2c,
0x00, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0xca, 0x00, 0x04,
0xc6, 0x01, 0x04, 0x4a, 0x00, 0x01, 0x42, 0x00, 0x88, 0x68,
0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x3a, 0x04, 0x10,
0x28, 0xab, 0x03, 0x30, 0x62, 0x6f, 0x76, 0x48, 0x01, 0x10,
0x54, 0xf5, 0x00, 0x01, 0x88, 0x01, 0x70, 0x62, 0x61, 0x72,
0x00, 0x61, 0x64, 0x64, 0xc6, 0x03, 0x00, 0xb1, 0x04, 0x00,
0x52, 0x01, 0x14, 0x73, 0x0b, 0x02, 0x07, 0x29, 0x02, 0x00,
0x1e, 0x00, 0x42, 0x66, 0x72, 0x6f, 0x6d, 0x2f, 0x01, 0x13,
0x65, 0x54, 0x03, 0x17, 0x2e, 0xd1, 0x01, 0x00, 0x22, 0x00,
0x63, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x47, 0x00, 0x01,
0x4c, 0x05, 0x05, 0xf6, 0x00, 0x0e, 0x3c, 0x00, 0x00, 0x2d,
0x05, 0x13, 0x41, 0x81, 0x01, 0x11, 0x61, 0x13, 0x00, 0xb1,
0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x64, 0xbd, 0x05, 0x03, 0xb9, 0x03, 0x31, 0x32, 0x2e, 0x31,
0x0b, 0x06, 0x01, 0x57, 0x01, 0xb2, 0x61, 0x76, 0x61, 0x69,
0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x8a, 0x03, 0x15,
0x32, 0x8a, 0x03, 0x00, 0x2b, 0x05, 0x77, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x73, 0x20, 0x1a, 0x04, 0x12, 0x61, 0x10, 0x05,
0x00, 0xca, 0x02, 0x20, 0x74, 0x6f, 0xe3, 0x01, 0x52, 0x66,
0x69, 0x67, 0x75, 0x72, 0x5e, 0x02, 0x02, 0x88, 0x01, 0x00,
0x8e, 0x05, 0x32, 0x72, 0x6f, 0x77, 0x03, 0x01, 0x63, 0x63,
0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0xa2, 0x05, 0x02, 0x52, 0x02,
0x82, 0x2c, 0x00, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x9d,
0x01, 0xd0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d,
0x65, 0x6e, 0x75, 0x2e, 0x00,
};
const unsigned short help_text_len = 1804;
const unsigned short help_text_words = 327;
const unsigned short help_text_len = 1821;
const unsigned short help_text_words = 328;
const char quick_help_text[] = "Mark every square with the area of its containing region.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,129 +6,129 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 76, TEXT_CENTER | C_RED },
{ 164, TEXT_UNDERLINE },
{ 203, TEXT_CENTER | C_RED },
{ 220, TEXT_UNDERLINE },
{ 77, TEXT_CENTER | C_RED },
{ 165, TEXT_UNDERLINE },
{ 204, TEXT_CENTER | C_RED },
{ 221, TEXT_UNDERLINE },
{ 231, TEXT_UNDERLINE },
{ 222, TEXT_UNDERLINE },
{ 232, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 1522 comp 1092 ratio 0.717477 level 10 saved 430 */
/* orig 1539 comp 1099 ratio 0.7141 level 10 saved 440 */
const char help_text[] = {
0xf2, 0x2f, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfb, 0x04, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x34, 0x3a, 0x20, 0x46, 0x6c, 0x69, 0x70, 0x20, 0x00,
0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65,
0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66,
0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00,
0x73, 0x6f, 0x6d, 0x65, 0x00, 0x6c, 0x69, 0x67, 0x68, 0x74,
0x00, 0x61, 0x6e, 0x64, 0x0f, 0x00, 0x50, 0x64, 0x61, 0x72,
0x6b, 0x2e, 0x36, 0x00, 0xb4, 0x72, 0x00, 0x61, 0x69, 0x6d,
0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x24, 0x00, 0x64, 0x6c,
0x6c, 0x00, 0x74, 0x68, 0x65, 0x40, 0x00, 0x62, 0x00, 0x75,
0x70, 0x00, 0x61, 0x74, 0x12, 0x00, 0x91, 0x61, 0x6d, 0x65,
0x00, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x70, 0x00, 0xe3, 0x63,
0x61, 0x6e, 0x00, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x00,
0x61, 0x6e, 0x79, 0x30, 0x00, 0x01, 0x63, 0x00, 0xf3, 0x04,
0x66, 0x6c, 0x69, 0x70, 0x00, 0x69, 0x74, 0x73, 0x00, 0x73,
0x74, 0x61, 0x74, 0x65, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x5d,
0x00, 0x21, 0x74, 0x6f, 0x7b, 0x00, 0x32, 0x00, 0x6f, 0x72,
0x08, 0x00, 0x04, 0x76, 0x00, 0xf5, 0x0c, 0x2c, 0x00, 0x62,
0x75, 0x74, 0x00, 0x77, 0x68, 0x65, 0x6e, 0x00, 0x79, 0x6f,
0x75, 0x00, 0x64, 0x6f, 0x00, 0x73, 0x6f, 0x2c, 0x00, 0x6f,
0x74, 0x68, 0x65, 0x72, 0x89, 0x00, 0xf3, 0x01, 0x61, 0x72,
0x6f, 0x75, 0x6e, 0x64, 0x00, 0x69, 0x74, 0x00, 0x63, 0x68,
0x61, 0x6e, 0x67, 0x65, 0x5e, 0x00, 0xf4, 0x00, 0x61, 0x73,
0x00, 0x77, 0x65, 0x6c, 0x6c, 0x2e, 0x00, 0x00, 0x00, 0x45,
0x61, 0x63, 0x68, 0x88, 0x00, 0xd0, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x69, 0x6e, 0x73, 0x00, 0x61, 0x00, 0x73, 0x6d, 0xd4,
0x00, 0xfb, 0x06, 0x64, 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d,
0x00, 0x73, 0x68, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x00, 0x77,
0x68, 0x69, 0x63, 0x68, 0x63, 0x00, 0x03, 0x59, 0x00, 0x05,
0x88, 0x00, 0x03, 0xc9, 0x00, 0x00, 0x5c, 0x00, 0x42, 0x31,
0x34, 0x2e, 0x31, 0x6f, 0x01, 0x00, 0x5a, 0x00, 0x40, 0x72,
0x6f, 0x6c, 0x73, 0x78, 0x01, 0x60, 0x54, 0x68, 0x69, 0x73,
0x00, 0x67, 0x18, 0x01, 0x00, 0x0e, 0x01, 0xf1, 0x02, 0x62,
0x65, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x00, 0x77,
0x69, 0x74, 0x68, 0x00, 0x65, 0x69, 0x5d, 0x00, 0x00, 0x3b,
0x01, 0xa2, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64,
0x00, 0x6f, 0x10, 0x00, 0x50, 0x6d, 0x6f, 0x75, 0x73, 0x65,
0x57, 0x00, 0xf4, 0x00, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63,
0x6c, 0x69, 0x63, 0x6b, 0x00, 0x69, 0x6e, 0x00, 0x61, 0xbe,
0x00, 0x24, 0x74, 0x6f, 0x7c, 0x00, 0x01, 0x51, 0x01, 0x00,
0x4c, 0x01, 0xa6, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61,
0x74, 0x65, 0x64, 0xdb, 0x01, 0x61, 0x6f, 0x72, 0x00, 0x75,
0x73, 0x65, 0x52, 0x00, 0x60, 0x63, 0x75, 0x72, 0x73, 0x6f,
0x72, 0x69, 0x00, 0x01, 0xcc, 0x01, 0x04, 0x99, 0x01, 0x08,
0x97, 0x01, 0x01, 0xc4, 0x01, 0x80, 0x70, 0x61, 0x63, 0x65,
0x00, 0x62, 0x61, 0x72, 0x3c, 0x00, 0x41, 0x45, 0x6e, 0x74,
0x65, 0x33, 0x00, 0x04, 0x70, 0x00, 0x00, 0x92, 0x00, 0x21,
0x49, 0x66, 0xfb, 0x00, 0x04, 0x58, 0x00, 0xf4, 0x06, 0x60,
0x53, 0x6f, 0x6c, 0x76, 0x65, 0x27, 0x00, 0x66, 0x75, 0x6e,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x6f, 0x6e, 0x00, 0x74,
0xf6, 0x00, 0x10, 0x2c, 0xa1, 0x00, 0x60, 0x77, 0x69, 0x6c,
0x6c, 0x00, 0x6d, 0xce, 0x01, 0x01, 0x5b, 0x02, 0x29, 0x6f,
0x66, 0x3f, 0x02, 0x74, 0x69, 0x6e, 0x00, 0x72, 0x65, 0x64,
0x2e, 0x57, 0x00, 0x02, 0xeb, 0x00, 0x40, 0x6f, 0x6e, 0x63,
0x65, 0x1a, 0x00, 0x45, 0x65, 0x76, 0x65, 0x72, 0x3a, 0x02,
0x01, 0x34, 0x01, 0x10, 0x61, 0x2e, 0x00, 0x01, 0x4e, 0x00,
0x11, 0x2c, 0x47, 0x00, 0x01, 0x5c, 0x01, 0x60, 0x73, 0x68,
0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x01, 0x10, 0x73, 0x8d, 0x00,
0x49, 0x64, 0x2e, 0x00, 0x28, 0x4f, 0x00, 0x08, 0x3a, 0x01,
0x00, 0x46, 0x00, 0x39, 0x6f, 0x75, 0x74, 0x49, 0x00, 0x06,
0x0c, 0x00, 0x02, 0xad, 0x00, 0x60, 0x61, 0x70, 0x70, 0x65,
0x61, 0x72, 0x37, 0x00, 0x11, 0x69, 0x93, 0x02, 0x70, 0x69,
0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0xf1, 0x00, 0x21, 0x61,
0x74, 0x58, 0x00, 0x01, 0x27, 0x00, 0x40, 0x6e, 0x65, 0x65,
0x64, 0x1f, 0x00, 0x10, 0x72, 0xa7, 0x00, 0x13, 0x73, 0x1e,
0x00, 0x51, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x09, 0x01, 0x01,
0x1a, 0x00, 0x00, 0x72, 0x02, 0x21, 0x74, 0x68, 0x99, 0x00,
0x10, 0x75, 0x16, 0x00, 0x73, 0x2e, 0x29, 0x00, 0x00, 0x00,
0x28, 0x41, 0x44, 0x03, 0x11, 0x61, 0x33, 0x01, 0xb0, 0x73,
0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64,
0x74, 0x00, 0x22, 0x73, 0x65, 0x49, 0x01, 0x41, 0x32, 0x2e,
0x31, 0x00, 0x9b, 0x01, 0xf2, 0x00, 0x6c, 0x73, 0x6f, 0x00,
0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e,
0x29, 0x6d, 0x02, 0x12, 0x32, 0x6d, 0x02, 0x93, 0x70, 0x61,
0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x6f, 0x02, 0x46,
0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x40, 0x00, 0x04,
0x3b, 0x00, 0x02, 0x69, 0x03, 0x01, 0xb5, 0x01, 0xd6, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00,
0x6f, 0x70, 0xb7, 0x01, 0xd0, 0x65, 0x00, 0x60, 0x54, 0x79,
0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xed, 0x01,
0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65,
0x9e, 0x03, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0xc2, 0x01,
0x01, 0x45, 0x04, 0x24, 0x69, 0x6e, 0xc6, 0x01, 0x10, 0x2e,
0x1b, 0x00, 0x94, 0x68, 0x61, 0x70, 0x65, 0x20, 0x74, 0x79,
0x70, 0x65, 0xf8, 0x02, 0x03, 0x09, 0x03, 0x20, 0x00, 0x64,
0x8c, 0x00, 0x52, 0x6d, 0x69, 0x6e, 0x65, 0x73, 0x0b, 0x01,
0x00, 0x29, 0x00, 0x04, 0x07, 0x02, 0x30, 0x72, 0x65, 0x67,
0x7e, 0x00, 0x02, 0x6d, 0x03, 0x21, 0x69, 0x73, 0x66, 0x02,
0x62, 0x70, 0x65, 0x64, 0x00, 0x62, 0x79, 0xbc, 0x01, 0x00,
0x8a, 0x03, 0x21, 0x69, 0x6e, 0x41, 0x04, 0x44, 0x67, 0x69,
0x76, 0x65, 0x72, 0x00, 0x10, 0x2e, 0xeb, 0x00, 0xfa, 0x14,
0x00, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x00, 0x73,
0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x2c, 0x00, 0x60, 0x43,
0x72, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x27, 0x2c, 0x00, 0x63,
0x61, 0x75, 0x73, 0x65, 0x73, 0x42, 0x02, 0x06, 0x36, 0x03,
0x45, 0x73, 0x65, 0x6c, 0x66, 0x3a, 0x03, 0x10, 0x66, 0xe7,
0x04, 0x60, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0xe5, 0x01,
0x10, 0x6e, 0xed, 0x00, 0x71, 0x62, 0x6f, 0x75, 0x72, 0x73,
0x00, 0x28, 0x8f, 0x03, 0x31, 0x72, 0x65, 0x65, 0x98, 0x03,
0xc0, 0x77, 0x6f, 0x00, 0x69, 0x66, 0x00, 0x69, 0x74, 0x27,
0x73, 0x00, 0x61, 0x78, 0x03, 0x41, 0x00, 0x65, 0x64, 0x67,
0x1a, 0x00, 0x72, 0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0x29,
0x95, 0x00, 0x03, 0x32, 0x04, 0x05, 0x93, 0x00, 0x66, 0x52,
0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x92, 0x00, 0x31, 0x61, 0x00,
0x72, 0x12, 0x00, 0x03, 0x08, 0x01, 0x20, 0x74, 0x6f, 0xb8,
0x02, 0xa9, 0x63, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x00, 0x66,
0x6f, 0x72, 0xb2, 0x00, 0x00, 0x9d, 0x05, 0x06, 0xe7, 0x02,
0xc3, 0x69, 0x73, 0x00, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72,
0x65, 0x6e, 0x74, 0x27, 0x00, 0x60, 0x74, 0x69, 0x6d, 0x65,
0x2e, 0x00,
0x2d, 0x01, 0x00, 0xf2, 0x1e, 0x00, 0x00, 0x00, 0x59, 0x6f,
0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67,
0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75,
0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d, 0x65,
0x00, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x00, 0x61, 0x6e, 0x64,
0x0f, 0x00, 0x50, 0x64, 0x61, 0x72, 0x6b, 0x2e, 0x36, 0x00,
0xb4, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00,
0x74, 0x6f, 0x24, 0x00, 0x64, 0x6c, 0x6c, 0x00, 0x74, 0x68,
0x65, 0x40, 0x00, 0x62, 0x00, 0x75, 0x70, 0x00, 0x61, 0x74,
0x12, 0x00, 0x91, 0x61, 0x6d, 0x65, 0x00, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x70, 0x00, 0xe3, 0x63, 0x61, 0x6e, 0x00, 0x63,
0x68, 0x6f, 0x6f, 0x73, 0x65, 0x00, 0x61, 0x6e, 0x79, 0x30,
0x00, 0x01, 0x63, 0x00, 0xf3, 0x04, 0x66, 0x6c, 0x69, 0x70,
0x00, 0x69, 0x74, 0x73, 0x00, 0x73, 0x74, 0x61, 0x74, 0x65,
0x00, 0x66, 0x72, 0x6f, 0x6d, 0x5d, 0x00, 0x21, 0x74, 0x6f,
0x7b, 0x00, 0x32, 0x00, 0x6f, 0x72, 0x08, 0x00, 0x04, 0x76,
0x00, 0xf5, 0x0c, 0x2c, 0x00, 0x62, 0x75, 0x74, 0x00, 0x77,
0x68, 0x65, 0x6e, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x64, 0x6f,
0x00, 0x73, 0x6f, 0x2c, 0x00, 0x6f, 0x74, 0x68, 0x65, 0x72,
0x89, 0x00, 0xf3, 0x01, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64,
0x00, 0x69, 0x74, 0x00, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x5e, 0x00, 0xf4, 0x00, 0x61, 0x73, 0x00, 0x77, 0x65, 0x6c,
0x6c, 0x2e, 0x00, 0x00, 0x00, 0x45, 0x61, 0x63, 0x68, 0x88,
0x00, 0xd0, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73,
0x00, 0x61, 0x00, 0x73, 0x6d, 0xd4, 0x00, 0xfb, 0x06, 0x64,
0x69, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x00, 0x73, 0x68, 0x6f,
0x77, 0x69, 0x6e, 0x67, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68,
0x63, 0x00, 0x03, 0x59, 0x00, 0x05, 0x88, 0x00, 0x03, 0xc9,
0x00, 0x00, 0x5c, 0x00, 0x42, 0x31, 0x34, 0x2e, 0x31, 0x80,
0x01, 0x00, 0x5a, 0x00, 0xe0, 0x72, 0x6f, 0x6c, 0x73, 0x20,
0x00, 0x00, 0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x67, 0x18,
0x01, 0x00, 0x0e, 0x01, 0xf1, 0x02, 0x62, 0x65, 0x00, 0x70,
0x6c, 0x61, 0x79, 0x65, 0x64, 0x00, 0x77, 0x69, 0x74, 0x68,
0x00, 0x65, 0x69, 0x5d, 0x00, 0x00, 0x3b, 0x01, 0xa2, 0x6b,
0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x00, 0x6f, 0x10,
0x00, 0x50, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x57, 0x00, 0xf4,
0x00, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0x00, 0x69, 0x6e, 0x00, 0x61, 0xbe, 0x00, 0x24, 0x74,
0x6f, 0x7c, 0x00, 0x01, 0x51, 0x01, 0x00, 0x4c, 0x01, 0xa6,
0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64,
0xdb, 0x01, 0x61, 0x6f, 0x72, 0x00, 0x75, 0x73, 0x65, 0x52,
0x00, 0x60, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x69, 0x00,
0x01, 0xcc, 0x01, 0x04, 0x99, 0x01, 0x08, 0x97, 0x01, 0x01,
0xc4, 0x01, 0x80, 0x70, 0x61, 0x63, 0x65, 0x00, 0x62, 0x61,
0x72, 0x3c, 0x00, 0x41, 0x45, 0x6e, 0x74, 0x65, 0x33, 0x00,
0x04, 0x70, 0x00, 0x00, 0x92, 0x00, 0x21, 0x49, 0x66, 0xfb,
0x00, 0x04, 0x58, 0x00, 0xf4, 0x06, 0x60, 0x53, 0x6f, 0x6c,
0x76, 0x65, 0x27, 0x00, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x00, 0x6f, 0x6e, 0x00, 0x74, 0xf6, 0x00, 0x10,
0x2c, 0xa1, 0x00, 0x60, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x6d,
0xce, 0x01, 0x01, 0x5b, 0x02, 0x29, 0x6f, 0x66, 0x3f, 0x02,
0x74, 0x69, 0x6e, 0x00, 0x72, 0x65, 0x64, 0x2e, 0x57, 0x00,
0x02, 0xeb, 0x00, 0x40, 0x6f, 0x6e, 0x63, 0x65, 0x1a, 0x00,
0x45, 0x65, 0x76, 0x65, 0x72, 0x3a, 0x02, 0x01, 0x34, 0x01,
0x10, 0x61, 0x2e, 0x00, 0x01, 0x4e, 0x00, 0x11, 0x2c, 0x47,
0x00, 0x01, 0x5c, 0x01, 0x60, 0x73, 0x68, 0x6f, 0x75, 0x6c,
0x64, 0x5f, 0x01, 0x10, 0x73, 0x8d, 0x00, 0x49, 0x64, 0x2e,
0x00, 0x28, 0x4f, 0x00, 0x08, 0x3a, 0x01, 0x00, 0x46, 0x00,
0x39, 0x6f, 0x75, 0x74, 0x49, 0x00, 0x06, 0x0c, 0x00, 0x02,
0xad, 0x00, 0x60, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x37,
0x00, 0x11, 0x69, 0x93, 0x02, 0x70, 0x69, 0x6e, 0x64, 0x69,
0x63, 0x61, 0x74, 0xf1, 0x00, 0x21, 0x61, 0x74, 0x58, 0x00,
0x01, 0x27, 0x00, 0x40, 0x6e, 0x65, 0x65, 0x64, 0x1f, 0x00,
0x10, 0x72, 0xa7, 0x00, 0x13, 0x73, 0x1e, 0x00, 0x51, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x09, 0x01, 0x01, 0x1a, 0x00, 0x00,
0x72, 0x02, 0x21, 0x74, 0x68, 0x99, 0x00, 0x10, 0x75, 0x16,
0x00, 0x73, 0x2e, 0x29, 0x00, 0x00, 0x00, 0x28, 0x41, 0x44,
0x03, 0x11, 0x61, 0x33, 0x01, 0xb0, 0x73, 0x00, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x74, 0x00, 0x22,
0x73, 0x65, 0x49, 0x01, 0x41, 0x32, 0x2e, 0x31, 0x00, 0x9b,
0x01, 0xf2, 0x00, 0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61,
0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x6d, 0x02,
0x12, 0x32, 0x6d, 0x02, 0x93, 0x70, 0x61, 0x72, 0x61, 0x6d,
0x65, 0x74, 0x65, 0x72, 0x6f, 0x02, 0x46, 0x65, 0x73, 0x65,
0x00, 0x14, 0x00, 0x02, 0x40, 0x00, 0x04, 0x3b, 0x00, 0x02,
0x69, 0x03, 0x01, 0xb5, 0x01, 0xd6, 0x43, 0x75, 0x73, 0x74,
0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0xb7,
0x01, 0xd0, 0x65, 0x00, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0xed, 0x01, 0x91, 0x57, 0x69,
0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x9e, 0x03, 0x51,
0x00, 0x00, 0x53, 0x69, 0x7a, 0xc2, 0x01, 0x01, 0x45, 0x04,
0x24, 0x69, 0x6e, 0xc6, 0x01, 0x10, 0x2e, 0x1b, 0x00, 0x94,
0x68, 0x61, 0x70, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0xf8,
0x02, 0x03, 0x09, 0x03, 0x20, 0x00, 0x64, 0x8c, 0x00, 0x52,
0x6d, 0x69, 0x6e, 0x65, 0x73, 0x0b, 0x01, 0x00, 0x29, 0x00,
0x04, 0x07, 0x02, 0x30, 0x72, 0x65, 0x67, 0x7e, 0x00, 0x02,
0x6d, 0x03, 0x21, 0x69, 0x73, 0x66, 0x02, 0x62, 0x70, 0x65,
0x64, 0x00, 0x62, 0x79, 0xbc, 0x01, 0x00, 0x8a, 0x03, 0x21,
0x69, 0x6e, 0x41, 0x04, 0x44, 0x67, 0x69, 0x76, 0x65, 0x72,
0x00, 0x10, 0x2e, 0xeb, 0x00, 0xfa, 0x14, 0x00, 0x64, 0x65,
0x66, 0x61, 0x75, 0x6c, 0x74, 0x00, 0x73, 0x65, 0x74, 0x74,
0x69, 0x6e, 0x67, 0x2c, 0x00, 0x60, 0x43, 0x72, 0x6f, 0x73,
0x73, 0x65, 0x73, 0x27, 0x2c, 0x00, 0x63, 0x61, 0x75, 0x73,
0x65, 0x73, 0x42, 0x02, 0x06, 0x36, 0x03, 0x45, 0x73, 0x65,
0x6c, 0x66, 0x3a, 0x03, 0x10, 0x66, 0xe7, 0x04, 0x60, 0x69,
0x6d, 0x6d, 0x65, 0x64, 0x69, 0xe5, 0x01, 0x10, 0x6e, 0xed,
0x00, 0x71, 0x62, 0x6f, 0x75, 0x72, 0x73, 0x00, 0x28, 0x8f,
0x03, 0x31, 0x72, 0x65, 0x65, 0x98, 0x03, 0xc0, 0x77, 0x6f,
0x00, 0x69, 0x66, 0x00, 0x69, 0x74, 0x27, 0x73, 0x00, 0x61,
0x78, 0x03, 0x41, 0x00, 0x65, 0x64, 0x67, 0x1a, 0x00, 0x72,
0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0x29, 0x95, 0x00, 0x03,
0x32, 0x04, 0x05, 0x93, 0x00, 0x66, 0x52, 0x61, 0x6e, 0x64,
0x6f, 0x6d, 0x92, 0x00, 0x31, 0x61, 0x00, 0x72, 0x12, 0x00,
0x03, 0x08, 0x01, 0x20, 0x74, 0x6f, 0xb8, 0x02, 0xa9, 0x63,
0x68, 0x6f, 0x73, 0x65, 0x6e, 0x00, 0x66, 0x6f, 0x72, 0xb2,
0x00, 0x00, 0x9d, 0x05, 0x06, 0xe7, 0x02, 0xc3, 0x69, 0x73,
0x00, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74,
0x27, 0x00, 0x60, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x00,
};
const unsigned short help_text_len = 1522;
const unsigned short help_text_words = 298;
const unsigned short help_text_len = 1539;
const unsigned short help_text_words = 299;
const char quick_help_text[] = "Flip groups of squares to light them all up at once.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,180 +6,180 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 155, TEXT_CENTER | C_RED },
{ 261, TEXT_CENTER | C_RED },
{ 278, TEXT_UNDERLINE },
{ 156, TEXT_CENTER | C_RED },
{ 262, TEXT_CENTER | C_RED },
{ 279, TEXT_UNDERLINE },
{ 290, TEXT_UNDERLINE },
{ 332, TEXT_UNDERLINE },
{ 444, TEXT_UNDERLINE },
{ 280, TEXT_UNDERLINE },
{ 291, TEXT_UNDERLINE },
{ 333, TEXT_UNDERLINE },
{ 445, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2377 comp 1592 ratio 0.669752 level 10 saved 785 */
/* orig 2395 comp 1600 ratio 0.668058 level 10 saved 795 */
const char help_text[] = {
0xf3, 0x45, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x39, 0x3a, 0x20, 0x46, 0x6c, 0x6f, 0x6f, 0x64, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65,
0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x67,
0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75,
0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x63, 0x6f, 0x6c, 0x6f,
0x75, 0x72, 0x65, 0x64, 0x00, 0x61, 0x74, 0x00, 0x72, 0x61,
0x6e, 0x64, 0x6f, 0x6d, 0x00, 0x69, 0x6e, 0x00, 0x6d, 0x75,
0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x1f, 0x00, 0xf0, 0x0b,
0x73, 0x2e, 0x00, 0x49, 0x6e, 0x00, 0x65, 0x61, 0x63, 0x68,
0x00, 0x6d, 0x6f, 0x76, 0x65, 0x2c, 0x00, 0x79, 0x6f, 0x75,
0x00, 0x63, 0x61, 0x6e, 0x00, 0x66, 0x68, 0x00, 0xf3, 0x03,
0x2d, 0x66, 0x69, 0x6c, 0x6c, 0x00, 0x74, 0x68, 0x65, 0x00,
0x74, 0x6f, 0x70, 0x00, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x00,
0x00, 0x4a, 0x00, 0x13, 0x61, 0x43, 0x00, 0x00, 0x75, 0x00,
0x10, 0x79, 0x08, 0x00, 0xf4, 0x03, 0x63, 0x68, 0x6f, 0x69,
0x63, 0x65, 0x00, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x00, 0x65,
0x76, 0x65, 0x72, 0x79, 0x2e, 0x00, 0x10, 0x72, 0x61, 0x00,
0x91, 0x61, 0x62, 0x6c, 0x65, 0x00, 0x66, 0x72, 0x6f, 0x6d,
0x51, 0x00, 0x84, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e,
0x67, 0x23, 0x00, 0xf7, 0x12, 0x62, 0x79, 0x00, 0x61, 0x6e,
0x00, 0x6f, 0x72, 0x74, 0x68, 0x6f, 0x67, 0x6f, 0x6e, 0x61,
0x6c, 0x6c, 0x79, 0x00, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
0x74, 0x65, 0x64, 0x00, 0x70, 0x61, 0x74, 0x68, 0xdc, 0x00,
0x23, 0x00, 0x61, 0x96, 0x00, 0x44, 0x73, 0x61, 0x6d, 0x65,
0x86, 0x00, 0x10, 0x77, 0xab, 0x00, 0x30, 0x62, 0x65, 0x00,
0xb3, 0x00, 0x20, 0x65, 0x64, 0xa1, 0x00, 0x00, 0x22, 0x00,
0x33, 0x6e, 0x65, 0x77, 0x21, 0x00, 0x51, 0x29, 0x2e, 0x00,
0x41, 0x73, 0xdf, 0x00, 0xf2, 0x02, 0x64, 0x6f, 0x00, 0x74,
0x68, 0x69, 0x73, 0x2c, 0x00, 0x6d, 0x6f, 0x72, 0x65, 0x00,
0x61, 0x6e, 0x64, 0x09, 0x00, 0x21, 0x6f, 0x66, 0x32, 0x00,
0x01, 0x48, 0x01, 0x77, 0x62, 0x65, 0x63, 0x6f, 0x6d, 0x65,
0x73, 0x83, 0x00, 0x2f, 0x74, 0x6f, 0xb7, 0x00, 0x01, 0x12,
0x2e, 0x89, 0x01, 0x80, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00,
0x69, 0x73, 0x26, 0x00, 0x41, 0x6d, 0x61, 0x6b, 0x65, 0x2b,
0x00, 0x43, 0x77, 0x68, 0x6f, 0x6c, 0x4f, 0x00, 0x0b, 0xac,
0x00, 0x11, 0x2c, 0x3f, 0x01, 0x51, 0x73, 0x00, 0x66, 0x65,
0x77, 0x76, 0x01, 0x10, 0x73, 0x0d, 0x00, 0xb0, 0x70, 0x6f,
0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x2e, 0x00, 0x54, 0x86,
0x00, 0x00, 0x2e, 0x00, 0x01, 0xd3, 0x00, 0xd3, 0x73, 0x65,
0x74, 0x00, 0x61, 0x00, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x00,
0x6f, 0xd5, 0x00, 0x41, 0x75, 0x6d, 0x62, 0x65, 0x78, 0x01,
0x01, 0x3e, 0x00, 0x70, 0x2c, 0x00, 0x62, 0x61, 0x73, 0x65,
0x64, 0x1e, 0x00, 0x40, 0x72, 0x75, 0x6e, 0x6e, 0x9e, 0x00,
0xf1, 0x09, 0x69, 0x74, 0x73, 0x00, 0x6f, 0x77, 0x6e, 0x00,
0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x00, 0x73,
0x6f, 0x6c, 0x76, 0x65, 0x72, 0x2e, 0x36, 0x02, 0x65, 0x77,
0x69, 0x6e, 0x00, 0x69, 0x66, 0xea, 0x01, 0x0f, 0xb1, 0x00,
0x10, 0x02, 0x4e, 0x01, 0x73, 0x61, 0x74, 0x00, 0x6d, 0x61,
0x6e, 0x79, 0xb3, 0x00, 0x20, 0x6f, 0x72, 0xc0, 0x00, 0x20,
0x65, 0x72, 0x03, 0x01, 0x51, 0x49, 0x00, 0x73, 0x61, 0x77,
0x55, 0x01, 0x02, 0xb9, 0x00, 0xd2, 0x28, 0x77, 0x69, 0x74,
0x68, 0x00, 0x61, 0x00, 0x66, 0x69, 0x78, 0x65, 0x64, 0x52,
0x00, 0x53, 0x73, 0x69, 0x7a, 0x65, 0x2c, 0x11, 0x00, 0x06,
0xc0, 0x00, 0x03, 0x85, 0x02, 0x11, 0x2c, 0x86, 0x01, 0x02,
0x1d, 0x00, 0x00, 0x5e, 0x00, 0x02, 0xef, 0x00, 0x10, 0x29,
0xba, 0x02, 0x71, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
0x8f, 0x02, 0xf2, 0x0f, 0x69, 0x74, 0x2e, 0x61, 0x70, 0x70,
0x73, 0x70, 0x6f, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x00, 0x28,
0x6e, 0x6f, 0x00, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x00,
0x61, 0x63, 0x63, 0x65, 0x3f, 0x01, 0x10, 0x29, 0x90, 0x00,
0x43, 0x33, 0x39, 0x2e, 0x31, 0x2a, 0x03, 0x80, 0x63, 0x6f,
0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x33, 0x03, 0x81, 0x54,
0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x00, 0x1a, 0x00, 0x71,
0x2c, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xeb, 0x00, 0x43,
0x6d, 0x6f, 0x75, 0x73, 0xd4, 0x02, 0x04, 0xd8, 0x01, 0x18,
0x54, 0xf5, 0x02, 0x61, 0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72,
0xa5, 0x00, 0x01, 0xd8, 0x02, 0x20, 0x74, 0x68, 0x65, 0x01,
0x09, 0x1d, 0x02, 0x26, 0x69, 0x74, 0x82, 0x02, 0x05, 0x3b,
0x03, 0x31, 0x65, 0x64, 0x00, 0x0a, 0x01, 0x25, 0x74, 0x68,
0x4a, 0x01, 0x03, 0x66, 0x02, 0x03, 0xf6, 0x02, 0x01, 0x84,
0x01, 0x00, 0x87, 0x00, 0x50, 0x65, 0x64, 0x2e, 0x00, 0x43,
0x09, 0x00, 0x00, 0x59, 0x00, 0x04, 0x86, 0x00, 0x0d, 0x87,
0x01, 0x4f, 0x61, 0x73, 0x00, 0x74, 0x98, 0x00, 0x00, 0xd2,
0x68, 0x61, 0x73, 0x00, 0x6e, 0x6f, 0x00, 0x65, 0x66, 0x66,
0x65, 0x63, 0x74, 0x4c, 0x01, 0x60, 0x74, 0x68, 0x65, 0x72,
0x65, 0x66, 0xd7, 0x02, 0x30, 0x64, 0x6f, 0x65, 0x1e, 0x00,
0x00, 0x2d, 0x00, 0x30, 0x75, 0x6e, 0x74, 0x43, 0x00, 0x11,
0x61, 0x64, 0x01, 0x03, 0xbb, 0x02, 0x01, 0x03, 0x02, 0x50,
0x61, 0x6c, 0x73, 0x6f, 0x00, 0x03, 0x01, 0x01, 0xa9, 0x00,
0x92, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79,
0xd0, 0x02, 0x00, 0x90, 0x01, 0x14, 0x61, 0x16, 0x00, 0xe3,
0x28, 0x6f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x00, 0x62,
0x6c, 0x61, 0x63, 0x6b, 0xa8, 0x00, 0x85, 0x29, 0x00, 0x61,
0x72, 0x6f, 0x75, 0x6e, 0x64, 0x40, 0x03, 0x40, 0x2e, 0x00,
0x50, 0x72, 0x90, 0x01, 0x21, 0x6e, 0x67, 0x13, 0x00, 0x60,
0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x52, 0x00, 0x02, 0x24,
0x01, 0x0e, 0x56, 0x04, 0x03, 0xc9, 0x00, 0x2f, 0x69, 0x6e,
0x2b, 0x01, 0x07, 0x57, 0x75, 0x6e, 0x64, 0x65, 0x72, 0xa1,
0x00, 0x00, 0xc0, 0x00, 0x23, 0x28, 0x41, 0x49, 0x00, 0xf2,
0x00, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x00, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x00, 0x04, 0x21, 0x73,
0x65, 0x16, 0x00, 0x41, 0x00, 0x32, 0x2e, 0x31, 0x2a, 0x05,
0x01, 0xe6, 0x00, 0x60, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x68, 0x03, 0x12, 0x29, 0x29, 0x02, 0x13, 0x32, 0x29, 0x02,
0x92, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
0x2b, 0x02, 0x56, 0x68, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00,
0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x06, 0xc7, 0x04, 0xe1,
0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e,
0x27, 0x00, 0x6f, 0x70, 0x6f, 0x00, 0x03, 0xa5, 0x03, 0xb0,
0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e,
0x75, 0xab, 0x00, 0xf9, 0x04, 0x57, 0x69, 0x64, 0x74, 0x68,
0x2c, 0x00, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x00,
0x00, 0x53, 0x69, 0x7a, 0x73, 0x04, 0x01, 0x14, 0x04, 0x03,
0xe0, 0x04, 0x00, 0x30, 0x00, 0x12, 0x43, 0x1a, 0x03, 0x4c,
0x00, 0x00, 0x00, 0x4e, 0x2e, 0x03, 0x00, 0xaa, 0x01, 0x01,
0x74, 0x02, 0x05, 0x48, 0x01, 0x02, 0x74, 0x01, 0x40, 0x4d,
0x75, 0x73, 0x74, 0x80, 0x02, 0xa3, 0x61, 0x74, 0x00, 0x6c,
0x65, 0x61, 0x73, 0x74, 0x00, 0x33, 0x89, 0x03, 0x35, 0x74,
0x77, 0x6f, 0x3c, 0x00, 0x01, 0x19, 0x02, 0x50, 0x00, 0x77,
0x6f, 0x75, 0x6c, 0x31, 0x04, 0x20, 0x6c, 0x79, 0x31, 0x00,
0x93, 0x6f, 0x6e, 0x65, 0x00, 0x6c, 0x65, 0x67, 0x61, 0x6c,
0xed, 0x01, 0x20, 0x74, 0x00, 0xe7, 0x03, 0xc0, 0x73, 0x74,
0x61, 0x67, 0x65, 0x2c, 0x00, 0x68, 0x65, 0x6e, 0x63, 0x65,
0x5f, 0x02, 0x03, 0xdf, 0x05, 0x04, 0xe3, 0x04, 0x20, 0x61,
0x74, 0x87, 0x05, 0x12, 0x29, 0x6f, 0x02, 0x00, 0x1b, 0x04,
0x60, 0x6f, 0x73, 0x74, 0x00, 0x31, 0x30, 0xbc, 0x00, 0x61,
0x45, 0x78, 0x74, 0x72, 0x61, 0x20, 0x27, 0x04, 0x70, 0x20,
0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x25, 0x03, 0x00, 0xd4,
0x00, 0x02, 0x8c, 0x03, 0x01, 0xb4, 0x00, 0xa4, 0x64, 0x69,
0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x07, 0x01,
0x70, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x0b, 0x06,
0x65, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x41, 0x02, 0x06,
0x14, 0x04, 0x06, 0xaf, 0x06, 0x00, 0xda, 0x05, 0x02, 0x39,
0x01, 0x01, 0xc0, 0x01, 0x02, 0x5a, 0x02, 0x5d, 0x72, 0x75,
0x6e, 0x00, 0x61, 0xf7, 0x04, 0x00, 0xb4, 0x00, 0x85, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x1b, 0x05, 0x40,
0x73, 0x6f, 0x6c, 0x75, 0xb0, 0x01, 0x05, 0x30, 0x03, 0x02,
0xb7, 0x01, 0x41, 0x76, 0x61, 0x6c, 0x75, 0x0b, 0x04, 0x01,
0xce, 0x04, 0x55, 0x66, 0x69, 0x65, 0x6c, 0x64, 0xd9, 0x03,
0x36, 0x61, 0x64, 0x64, 0x0a, 0x06, 0x42, 0x6c, 0x65, 0x6e,
0x67, 0x96, 0x06, 0x01, 0x80, 0x00, 0x25, 0x27, 0x73, 0x52,
0x00, 0x09, 0x6f, 0x00, 0x13, 0x74, 0xcd, 0x05, 0x29, 0x27,
0x73, 0xc6, 0x00, 0x43, 0x53, 0x6f, 0x00, 0x61, 0x6c, 0x00,
0xc2, 0x6f, 0x66, 0x00, 0x30, 0x00, 0x72, 0x65, 0x71, 0x75,
0x69, 0x72, 0x65, 0xa1, 0x06, 0x20, 0x74, 0x6f, 0x6e, 0x00,
0x31, 0x6a, 0x75, 0x73, 0xaf, 0x03, 0x10, 0x65, 0x28, 0x01,
0x22, 0x69, 0x65, 0xbc, 0x03, 0x04, 0x6c, 0x00, 0x60, 0x61,
0x75, 0x74, 0x6f, 0x6d, 0x61, 0x57, 0x01, 0x02, 0xe3, 0x00,
0x03, 0x87, 0x01, 0x40, 0x00, 0x6c, 0x61, 0x72, 0x10, 0x05,
0x02, 0x5a, 0x00, 0x00, 0xa8, 0x01, 0x10, 0x73, 0x9a, 0x04,
0x00, 0x4b, 0x01, 0x12, 0x65, 0x32, 0x03, 0x42, 0x4e, 0x6f,
0x74, 0x65, 0xcc, 0x05, 0x04, 0x4b, 0x00, 0x0c, 0x2d, 0x01,
0x01, 0xee, 0x00, 0x00, 0x31, 0x04, 0x20, 0x6e, 0x65, 0x55,
0x05, 0x93, 0x61, 0x72, 0x69, 0x6c, 0x79, 0x00, 0x66, 0x69,
0x6e, 0x16, 0x06, 0x75, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x73,
0x74, 0xb0, 0x06, 0x07, 0x49, 0x01, 0xf0, 0x00, 0x74, 0x68,
0x6f, 0x75, 0x67, 0x68, 0x00, 0x49, 0x00, 0x62, 0x65, 0x6c,
0x69, 0x65, 0x76, 0x6c, 0x01, 0xf0, 0x07, 0x27, 0x73, 0x00,
0x70, 0x72, 0x65, 0x74, 0x74, 0x79, 0x00, 0x63, 0x6c, 0x6f,
0x73, 0x65, 0x2e, 0x00, 0x46, 0x6f, 0x72, 0x00, 0x61, 0x11,
0x08, 0x60, 0x6c, 0x00, 0x63, 0x68, 0x61, 0x6c, 0x46, 0x01,
0x21, 0x65, 0x2c, 0xe5, 0x06, 0x01, 0x71, 0x01, 0x02, 0xb9,
0x00, 0x47, 0x74, 0x6f, 0x00, 0x30, 0x97, 0x01, 0x20, 0x72,
0x79, 0x12, 0x00, 0x01, 0x9f, 0x00, 0x04, 0xe9, 0x08, 0x00,
0x2d, 0x03, 0x81, 0x74, 0x72, 0x69, 0x63, 0x74, 0x6c, 0x79,
0x20, 0x87, 0x06, 0x03, 0x96, 0x06, 0x32, 0x74, 0x68, 0x61,
0xc8, 0x01, 0x02, 0x31, 0x07, 0xf0, 0x00, 0x79, 0x6f, 0x75,
0x27, 0x72, 0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x21,
0x29, 0x00,
0x00, 0x2d, 0x01, 0x00, 0xf3, 0x33, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x76,
0x65, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00,
0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73,
0x2c, 0x00, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x65, 0x64,
0x00, 0x61, 0x74, 0x00, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d,
0x00, 0x69, 0x6e, 0x00, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70,
0x6c, 0x65, 0x1f, 0x00, 0xf0, 0x0b, 0x73, 0x2e, 0x00, 0x49,
0x6e, 0x00, 0x65, 0x61, 0x63, 0x68, 0x00, 0x6d, 0x6f, 0x76,
0x65, 0x2c, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x63, 0x61, 0x6e,
0x00, 0x66, 0x7a, 0x00, 0xf3, 0x03, 0x2d, 0x66, 0x69, 0x6c,
0x6c, 0x00, 0x74, 0x68, 0x65, 0x00, 0x74, 0x6f, 0x70, 0x00,
0x6c, 0x65, 0x66, 0x74, 0x5f, 0x00, 0x00, 0x4a, 0x00, 0x13,
0x61, 0x43, 0x00, 0x00, 0x75, 0x00, 0x10, 0x79, 0x08, 0x00,
0xf4, 0x03, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x00, 0x28,
0x69, 0x2e, 0x65, 0x2e, 0x00, 0x65, 0x76, 0x65, 0x72, 0x79,
0x2e, 0x00, 0x10, 0x72, 0x61, 0x00, 0x91, 0x61, 0x62, 0x6c,
0x65, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x51, 0x00, 0x84, 0x73,
0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x23, 0x00, 0xf7,
0x12, 0x62, 0x79, 0x00, 0x61, 0x6e, 0x00, 0x6f, 0x72, 0x74,
0x68, 0x6f, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x00,
0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x00,
0x70, 0x61, 0x74, 0x68, 0xdc, 0x00, 0x23, 0x00, 0x61, 0x96,
0x00, 0x44, 0x73, 0x61, 0x6d, 0x65, 0x86, 0x00, 0x10, 0x77,
0xab, 0x00, 0x30, 0x62, 0x65, 0x00, 0xb3, 0x00, 0x20, 0x65,
0x64, 0xa1, 0x00, 0x00, 0x22, 0x00, 0x33, 0x6e, 0x65, 0x77,
0x21, 0x00, 0x51, 0x29, 0x2e, 0x00, 0x41, 0x73, 0xdf, 0x00,
0xf2, 0x02, 0x64, 0x6f, 0x00, 0x74, 0x68, 0x69, 0x73, 0x2c,
0x00, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x61, 0x6e, 0x64, 0x09,
0x00, 0x21, 0x6f, 0x66, 0x32, 0x00, 0x01, 0x48, 0x01, 0x77,
0x62, 0x65, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x83, 0x00, 0x2f,
0x74, 0x6f, 0xb7, 0x00, 0x01, 0x12, 0x2e, 0x89, 0x01, 0x80,
0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x26, 0x00,
0x41, 0x6d, 0x61, 0x6b, 0x65, 0x2b, 0x00, 0x43, 0x77, 0x68,
0x6f, 0x6c, 0x4f, 0x00, 0x0b, 0xac, 0x00, 0x11, 0x2c, 0x3f,
0x01, 0x51, 0x73, 0x00, 0x66, 0x65, 0x77, 0x76, 0x01, 0x10,
0x73, 0x0d, 0x00, 0xb0, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62,
0x6c, 0x65, 0x2e, 0x00, 0x54, 0x86, 0x00, 0x00, 0x2e, 0x00,
0x01, 0xd3, 0x00, 0xd3, 0x73, 0x65, 0x74, 0x00, 0x61, 0x00,
0x6c, 0x69, 0x6d, 0x69, 0x74, 0x00, 0x6f, 0xd5, 0x00, 0x41,
0x75, 0x6d, 0x62, 0x65, 0x78, 0x01, 0x01, 0x3e, 0x00, 0x70,
0x2c, 0x00, 0x62, 0x61, 0x73, 0x65, 0x64, 0x1e, 0x00, 0x40,
0x72, 0x75, 0x6e, 0x6e, 0x9e, 0x00, 0xf1, 0x09, 0x69, 0x74,
0x73, 0x00, 0x6f, 0x77, 0x6e, 0x00, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x00, 0x73, 0x6f, 0x6c, 0x76, 0x65,
0x72, 0x2e, 0x36, 0x02, 0x65, 0x77, 0x69, 0x6e, 0x00, 0x69,
0x66, 0xea, 0x01, 0x0f, 0xb1, 0x00, 0x10, 0x02, 0x4e, 0x01,
0x73, 0x61, 0x74, 0x00, 0x6d, 0x61, 0x6e, 0x79, 0xb3, 0x00,
0x20, 0x6f, 0x72, 0xc0, 0x00, 0x20, 0x65, 0x72, 0x03, 0x01,
0x51, 0x49, 0x00, 0x73, 0x61, 0x77, 0x55, 0x01, 0x02, 0xb9,
0x00, 0xd2, 0x28, 0x77, 0x69, 0x74, 0x68, 0x00, 0x61, 0x00,
0x66, 0x69, 0x78, 0x65, 0x64, 0x52, 0x00, 0x53, 0x73, 0x69,
0x7a, 0x65, 0x2c, 0x11, 0x00, 0x06, 0xc0, 0x00, 0x03, 0x85,
0x02, 0x11, 0x2c, 0x86, 0x01, 0x02, 0x1d, 0x00, 0x00, 0x5e,
0x00, 0x02, 0xef, 0x00, 0x10, 0x29, 0xba, 0x02, 0x71, 0x68,
0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x8f, 0x02, 0xf2, 0x0f,
0x69, 0x74, 0x2e, 0x61, 0x70, 0x70, 0x73, 0x70, 0x6f, 0x74,
0x2e, 0x63, 0x6f, 0x6d, 0x00, 0x28, 0x6e, 0x6f, 0x00, 0x6c,
0x6f, 0x6e, 0x67, 0x65, 0x72, 0x00, 0x61, 0x63, 0x63, 0x65,
0x3f, 0x01, 0x10, 0x29, 0x90, 0x00, 0x43, 0x33, 0x39, 0x2e,
0x31, 0x3c, 0x03, 0xf1, 0x05, 0x63, 0x6f, 0x6e, 0x74, 0x72,
0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x54, 0x6f, 0x00,
0x70, 0x6c, 0x61, 0x79, 0x00, 0x1a, 0x00, 0x71, 0x2c, 0x00,
0x63, 0x6c, 0x69, 0x63, 0x6b, 0xeb, 0x00, 0x43, 0x6d, 0x6f,
0x75, 0x73, 0xd4, 0x02, 0x04, 0xd8, 0x01, 0x18, 0x54, 0xf5,
0x02, 0x61, 0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0xa5, 0x00,
0x01, 0xd8, 0x02, 0x20, 0x74, 0x68, 0x65, 0x01, 0x09, 0x1d,
0x02, 0x26, 0x69, 0x74, 0x82, 0x02, 0x05, 0x3b, 0x03, 0x31,
0x65, 0x64, 0x00, 0x0a, 0x01, 0x25, 0x74, 0x68, 0x4a, 0x01,
0x03, 0x66, 0x02, 0x03, 0xf6, 0x02, 0x01, 0x84, 0x01, 0x00,
0x87, 0x00, 0x50, 0x65, 0x64, 0x2e, 0x00, 0x43, 0x09, 0x00,
0x00, 0x59, 0x00, 0x04, 0x86, 0x00, 0x0d, 0x87, 0x01, 0x4f,
0x61, 0x73, 0x00, 0x74, 0x98, 0x00, 0x00, 0xd2, 0x68, 0x61,
0x73, 0x00, 0x6e, 0x6f, 0x00, 0x65, 0x66, 0x66, 0x65, 0x63,
0x74, 0x4c, 0x01, 0x60, 0x74, 0x68, 0x65, 0x72, 0x65, 0x66,
0xd7, 0x02, 0x30, 0x64, 0x6f, 0x65, 0x1e, 0x00, 0x00, 0x2d,
0x00, 0x30, 0x75, 0x6e, 0x74, 0x43, 0x00, 0x11, 0x61, 0x64,
0x01, 0x03, 0xbb, 0x02, 0x01, 0x03, 0x02, 0x50, 0x61, 0x6c,
0x73, 0x6f, 0x00, 0x03, 0x01, 0x01, 0xa9, 0x00, 0x92, 0x75,
0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0xd0, 0x02,
0x00, 0x90, 0x01, 0x14, 0x61, 0x16, 0x00, 0xe3, 0x28, 0x6f,
0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x00, 0x62, 0x6c, 0x61,
0x63, 0x6b, 0xa8, 0x00, 0x85, 0x29, 0x00, 0x61, 0x72, 0x6f,
0x75, 0x6e, 0x64, 0x40, 0x03, 0x40, 0x2e, 0x00, 0x50, 0x72,
0x90, 0x01, 0x21, 0x6e, 0x67, 0x13, 0x00, 0x60, 0x72, 0x65,
0x74, 0x75, 0x72, 0x6e, 0x52, 0x00, 0x02, 0x24, 0x01, 0x0e,
0x56, 0x04, 0x03, 0xc9, 0x00, 0x2f, 0x69, 0x6e, 0x2b, 0x01,
0x07, 0x57, 0x75, 0x6e, 0x64, 0x65, 0x72, 0xa1, 0x00, 0x00,
0xc0, 0x00, 0x23, 0x28, 0x41, 0x49, 0x00, 0xf2, 0x00, 0x61,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x00, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x62, 0x00, 0x04, 0x21, 0x73, 0x65, 0x16,
0x00, 0x41, 0x00, 0x32, 0x2e, 0x31, 0x2a, 0x05, 0x01, 0xe6,
0x00, 0x60, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x68, 0x03,
0x12, 0x29, 0x29, 0x02, 0x13, 0x32, 0x29, 0x02, 0x92, 0x70,
0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x2b, 0x02,
0x56, 0x68, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x41,
0x00, 0x04, 0x3c, 0x00, 0x06, 0xc7, 0x04, 0xe1, 0x60, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00,
0x6f, 0x70, 0x6f, 0x00, 0x03, 0xa5, 0x03, 0xb0, 0x60, 0x54,
0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xab,
0x00, 0xf9, 0x04, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x00, 0x00, 0x53,
0x69, 0x7a, 0x73, 0x04, 0x01, 0x14, 0x04, 0x03, 0xe0, 0x04,
0x00, 0x30, 0x00, 0x12, 0x43, 0x1a, 0x03, 0x4c, 0x00, 0x00,
0x00, 0x4e, 0x2e, 0x03, 0x00, 0xaa, 0x01, 0x01, 0x74, 0x02,
0x05, 0x48, 0x01, 0x02, 0x74, 0x01, 0x40, 0x4d, 0x75, 0x73,
0x74, 0x80, 0x02, 0xa3, 0x61, 0x74, 0x00, 0x6c, 0x65, 0x61,
0x73, 0x74, 0x00, 0x33, 0x89, 0x03, 0x35, 0x74, 0x77, 0x6f,
0x3c, 0x00, 0x01, 0x19, 0x02, 0x50, 0x00, 0x77, 0x6f, 0x75,
0x6c, 0x31, 0x04, 0x20, 0x6c, 0x79, 0x31, 0x00, 0x93, 0x6f,
0x6e, 0x65, 0x00, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0xed, 0x01,
0x20, 0x74, 0x00, 0xe7, 0x03, 0xc0, 0x73, 0x74, 0x61, 0x67,
0x65, 0x2c, 0x00, 0x68, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x02,
0x03, 0xdf, 0x05, 0x04, 0xe3, 0x04, 0x20, 0x61, 0x74, 0x87,
0x05, 0x12, 0x29, 0x6f, 0x02, 0x00, 0x1b, 0x04, 0x60, 0x6f,
0x73, 0x74, 0x00, 0x31, 0x30, 0xbc, 0x00, 0x61, 0x45, 0x78,
0x74, 0x72, 0x61, 0x20, 0x27, 0x04, 0x70, 0x20, 0x70, 0x65,
0x72, 0x6d, 0x69, 0x74, 0x25, 0x03, 0x00, 0xd4, 0x00, 0x02,
0x8c, 0x03, 0x01, 0xb4, 0x00, 0xa4, 0x64, 0x69, 0x66, 0x66,
0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x07, 0x01, 0x70, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x0b, 0x06, 0x65, 0x69,
0x6e, 0x63, 0x72, 0x65, 0x61, 0x41, 0x02, 0x06, 0x14, 0x04,
0x06, 0xaf, 0x06, 0x00, 0xda, 0x05, 0x02, 0x39, 0x01, 0x01,
0xc0, 0x01, 0x02, 0x5a, 0x02, 0x5d, 0x72, 0x75, 0x6e, 0x00,
0x61, 0xf7, 0x04, 0x00, 0xb4, 0x00, 0x85, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x65, 0x1b, 0x05, 0x40, 0x73, 0x6f,
0x6c, 0x75, 0xb0, 0x01, 0x05, 0x30, 0x03, 0x02, 0xb7, 0x01,
0x41, 0x76, 0x61, 0x6c, 0x75, 0x0b, 0x04, 0x01, 0xce, 0x04,
0x55, 0x66, 0x69, 0x65, 0x6c, 0x64, 0xd9, 0x03, 0x36, 0x61,
0x64, 0x64, 0x0a, 0x06, 0x42, 0x6c, 0x65, 0x6e, 0x67, 0x96,
0x06, 0x01, 0x80, 0x00, 0x25, 0x27, 0x73, 0x52, 0x00, 0x09,
0x6f, 0x00, 0x13, 0x74, 0xcd, 0x05, 0x29, 0x27, 0x73, 0xc6,
0x00, 0x43, 0x53, 0x6f, 0x00, 0x61, 0x6c, 0x00, 0xc2, 0x6f,
0x66, 0x00, 0x30, 0x00, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0xa1, 0x06, 0x20, 0x74, 0x6f, 0x6e, 0x00, 0x31, 0x6a,
0x75, 0x73, 0xaf, 0x03, 0x10, 0x65, 0x28, 0x01, 0x22, 0x69,
0x65, 0xbc, 0x03, 0x04, 0x6c, 0x00, 0x60, 0x61, 0x75, 0x74,
0x6f, 0x6d, 0x61, 0x57, 0x01, 0x02, 0xe3, 0x00, 0x03, 0x87,
0x01, 0x40, 0x00, 0x6c, 0x61, 0x72, 0x10, 0x05, 0x02, 0x5a,
0x00, 0x00, 0xa8, 0x01, 0x10, 0x73, 0x9a, 0x04, 0x00, 0x4b,
0x01, 0x12, 0x65, 0x32, 0x03, 0x42, 0x4e, 0x6f, 0x74, 0x65,
0xcc, 0x05, 0x04, 0x4b, 0x00, 0x0c, 0x2d, 0x01, 0x01, 0xee,
0x00, 0x00, 0x31, 0x04, 0x20, 0x6e, 0x65, 0x55, 0x05, 0x93,
0x61, 0x72, 0x69, 0x6c, 0x79, 0x00, 0x66, 0x69, 0x6e, 0x16,
0x06, 0x75, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x73, 0x74, 0xb0,
0x06, 0x07, 0x49, 0x01, 0xf0, 0x00, 0x74, 0x68, 0x6f, 0x75,
0x67, 0x68, 0x00, 0x49, 0x00, 0x62, 0x65, 0x6c, 0x69, 0x65,
0x76, 0x6c, 0x01, 0xf0, 0x07, 0x27, 0x73, 0x00, 0x70, 0x72,
0x65, 0x74, 0x74, 0x79, 0x00, 0x63, 0x6c, 0x6f, 0x73, 0x65,
0x2e, 0x00, 0x46, 0x6f, 0x72, 0x00, 0x61, 0x11, 0x08, 0x60,
0x6c, 0x00, 0x63, 0x68, 0x61, 0x6c, 0x46, 0x01, 0x21, 0x65,
0x2c, 0xe5, 0x06, 0x01, 0x71, 0x01, 0x02, 0xb9, 0x00, 0x47,
0x74, 0x6f, 0x00, 0x30, 0x97, 0x01, 0x20, 0x72, 0x79, 0x12,
0x00, 0x01, 0x9f, 0x00, 0x04, 0xe9, 0x08, 0x00, 0x2d, 0x03,
0x81, 0x74, 0x72, 0x69, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x87,
0x06, 0x03, 0x96, 0x06, 0x32, 0x74, 0x68, 0x61, 0xc8, 0x01,
0x02, 0x31, 0x07, 0xf0, 0x00, 0x79, 0x6f, 0x75, 0x27, 0x72,
0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x21, 0x29, 0x00,
};
const unsigned short help_text_len = 2377;
const unsigned short help_text_words = 451;
const unsigned short help_text_len = 2395;
const unsigned short help_text_words = 452;
const char quick_help_text[] = "Turn the grid the same colour in as few flood fills as possible.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,206 +6,206 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 132, TEXT_CENTER | C_RED },
{ 444, TEXT_CENTER | C_RED },
{ 461, TEXT_UNDERLINE },
{ 133, TEXT_CENTER | C_RED },
{ 445, TEXT_CENTER | C_RED },
{ 462, TEXT_UNDERLINE },
{ 472, TEXT_UNDERLINE },
{ 463, TEXT_UNDERLINE },
{ 473, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2754 comp 1877 ratio 0.681554 level 10 saved 877 */
/* orig 2766 comp 1876 ratio 0.678236 level 10 saved 890 */
const char help_text[] = {
0xf0, 0x41, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x08, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x38, 0x3a, 0x20, 0x47, 0x61, 0x6c, 0x61, 0x78, 0x69,
0x65, 0x73, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00,
0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x72, 0x65, 0x63,
0x74, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x00, 0x67,
0x72, 0x69, 0x64, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
0x6e, 0x69, 0x6e, 0x67, 0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x00, 0x6f, 0x66, 0x00, 0x64, 0x6f, 0x74,
0x73, 0x2e, 0x39, 0x00, 0xf4, 0x0a, 0x72, 0x00, 0x61, 0x69,
0x6d, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x70, 0x61,
0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x74, 0x68,
0x65, 0x4b, 0x00, 0x70, 0x6c, 0x65, 0x00, 0x69, 0x6e, 0x74,
0x6f, 0x49, 0x00, 0xe0, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64,
0x00, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x00,
0xf3, 0x12, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c,
0x00, 0x69, 0x6e, 0x00, 0x73, 0x75, 0x63, 0x68, 0x00, 0x61,
0x00, 0x77, 0x61, 0x79, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00,
0x65, 0x76, 0x65, 0x72, 0x79, 0x2d, 0x00, 0x00, 0x61, 0x00,
0xf0, 0x00, 0x31, 0x38, 0x30, 0x2d, 0x64, 0x65, 0x67, 0x72,
0x65, 0x65, 0x00, 0x72, 0x6f, 0x74, 0x61, 0x68, 0x00, 0xf5,
0x03, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x73, 0x79, 0x6d, 0x6d,
0x65, 0x74, 0x72, 0x69, 0x63, 0x2c, 0x00, 0x61, 0x6e, 0xb1,
0x00, 0xd0, 0x73, 0x00, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c,
0x79, 0x00, 0x6f, 0x6e, 0x65, 0xaf, 0x00, 0x60, 0x00, 0x77,
0x68, 0x69, 0x63, 0x68, 0x49, 0x00, 0x40, 0x6c, 0x6f, 0x63,
0x61, 0x88, 0x00, 0xd1, 0x61, 0x74, 0x00, 0x69, 0x74, 0x73,
0x00, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x8e, 0x00, 0x02,
0x4a, 0x00, 0xf0, 0x00, 0x79, 0x2e, 0x00, 0x00, 0x00, 0x54,
0x6f, 0x00, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x00, 0x79, 0xe4,
0x00, 0x40, 0x73, 0x6f, 0x6c, 0x75, 0x71, 0x00, 0x10, 0x2c,
0x0f, 0x00, 0xf1, 0x02, 0x00, 0x64, 0x72, 0x61, 0x77, 0x00,
0x6c, 0x69, 0x6e, 0x65, 0x73, 0x00, 0x61, 0x6c, 0x6f, 0x6e,
0x67, 0xef, 0x00, 0x01, 0x2e, 0x01, 0x41, 0x65, 0x64, 0x67,
0x65, 0x0b, 0x01, 0x41, 0x6d, 0x61, 0x72, 0x6b, 0x17, 0x00,
0x91, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, 0x65,
0xf0, 0x00, 0x02, 0x18, 0x01, 0x01, 0xff, 0x00, 0xc0, 0x2e,
0x00, 0x54, 0x68, 0x65, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c,
0x65, 0x96, 0x00, 0xc2, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
0x74, 0x65, 0x00, 0x77, 0x68, 0x65, 0x41, 0x01, 0x00, 0x44,
0x00, 0x23, 0x65, 0x64, 0x69, 0x00, 0x26, 0x6f, 0x6e, 0x66,
0x00, 0xc0, 0x61, 0x72, 0x65, 0x00, 0x70, 0x72, 0x65, 0x63,
0x69, 0x73, 0x65, 0x6c, 0x2d, 0x01, 0x32, 0x6f, 0x73, 0x65,
0x33, 0x01, 0xc4, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74,
0x65, 0x00, 0x74, 0x77, 0x6f, 0x5c, 0x01, 0x30, 0x00, 0x62,
0x65, 0xa4, 0x00, 0x10, 0x69, 0xa7, 0x00, 0xb6, 0x6f, 0x00,
0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x87,
0x00, 0x64, 0x00, 0x00, 0x54, 0x68, 0x69, 0x73, 0x8a, 0x00,
0x90, 0x77, 0x61, 0x73, 0x00, 0x69, 0x6e, 0x76, 0x65, 0x6e,
0x22, 0x01, 0xf1, 0x06, 0x62, 0x79, 0x00, 0x4e, 0x69, 0x6b,
0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x31, 0x33, 0x5d, 0x2c, 0x00,
0x75, 0x6e, 0x64, 0x65, 0x72, 0x88, 0x00, 0x80, 0x6e, 0x61,
0x6d, 0x65, 0x00, 0x60, 0x54, 0x65, 0x6c, 0x01, 0x71, 0x00,
0x53, 0x68, 0x6f, 0x77, 0x27, 0x3b, 0x4d, 0x01, 0x01, 0x18,
0x00, 0x02, 0xce, 0x00, 0x30, 0x6d, 0x6f, 0x6e, 0x9e, 0x00,
0x51, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x70, 0x01, 0x01, 0x07,
0x02, 0xf4, 0x04, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68,
0x00, 0x61, 0x73, 0x00, 0x60, 0x53, 0x70, 0x69, 0x72, 0x61,
0x6c, 0x00, 0x8b, 0x02, 0x10, 0x27, 0x8c, 0x00, 0x04, 0x0d,
0x00, 0x01, 0x89, 0x00, 0x00, 0xcc, 0x01, 0x40, 0x72, 0x69,
0x62, 0x75, 0x3e, 0x00, 0x51, 0x74, 0x6f, 0x00, 0x74, 0x68,
0x5a, 0x00, 0x41, 0x6c, 0x6c, 0x65, 0x63, 0x66, 0x02, 0xe1,
0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48,
0x61, 0x72, 0x76, 0x65, 0xb7, 0x01, 0x00, 0xa8, 0x00, 0xd1,
0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
0x77, 0x2e, 0x6e, 0xbf, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e,
0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0xe6, 0x00, 0xf6, 0x10,
0x73, 0x2f, 0x61, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x6f, 0x6d,
0x69, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x2e,
0x68, 0x74, 0x6d, 0x6c, 0x00, 0x00, 0x00, 0x32, 0x38, 0x2e,
0x31, 0x1d, 0x03, 0x01, 0x81, 0x00, 0x21, 0x6f, 0x6c, 0x26,
0x03, 0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0x8d, 0x01, 0x32, 0x61, 0x6e, 0x79, 0x8d, 0x01,
0x00, 0x9f, 0x01, 0x01, 0x5a, 0x01, 0x00, 0x15, 0x02, 0x21,
0x61, 0x6e, 0x03, 0x02, 0x21, 0x00, 0x69, 0xeb, 0x01, 0x10,
0x72, 0x0b, 0x01, 0x31, 0x6e, 0x27, 0x74, 0x83, 0x02, 0xb0,
0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x2c, 0x00, 0x6f,
0x72, 0x2f, 0x00, 0x61, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
0x1a, 0x00, 0x07, 0x2d, 0x00, 0x30, 0x2e, 0x00, 0x57, 0xfe,
0x01, 0x00, 0x65, 0x02, 0x50, 0x63, 0x72, 0x65, 0x61, 0x74,
0x93, 0x03, 0x54, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x08, 0x03,
0x10, 0x28, 0x31, 0x00, 0x05, 0xca, 0x02, 0x7f, 0x63, 0x6c,
0x6f, 0x73, 0x65, 0x64, 0x2c, 0xf4, 0x02, 0x06, 0x1b, 0x2c,
0x38, 0x03, 0x05, 0x2b, 0x03, 0x62, 0x00, 0x61, 0x62, 0x6f,
0x75, 0x74, 0x35, 0x02, 0x01, 0x28, 0x00, 0x09, 0x3a, 0x03,
0x50, 0x6e, 0x6f, 0x00, 0x65, 0x78, 0xb9, 0x01, 0x43, 0x65,
0x6f, 0x75, 0x73, 0xd4, 0x02, 0x71, 0x62, 0x65, 0x74, 0x77,
0x65, 0x65, 0x6e, 0x5a, 0x02, 0x21, 0x6f, 0x66, 0xec, 0x01,
0x34, 0x6f, 0x77, 0x6e, 0x65, 0x02, 0xf1, 0x07, 0x29, 0x2c,
0x00, 0x69, 0x74, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x62,
0x65, 0x00, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68,
0x65, 0x03, 0x80, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69,
0x63, 0xac, 0x03, 0x6a, 0x3b, 0x00, 0x73, 0x6f, 0x00, 0x79,
0x35, 0x04, 0x01, 0x79, 0x04, 0x20, 0x74, 0x68, 0xd6, 0x00,
0x23, 0x6f, 0x6c, 0xe1, 0x02, 0x08, 0x41, 0x00, 0x22, 0x69,
0x6e, 0xa7, 0x00, 0x21, 0x77, 0x61, 0xe1, 0x01, 0x30, 0x44,
0x75, 0x72, 0xcb, 0x02, 0x72, 0x73, 0x6f, 0x6c, 0x76, 0x69,
0x6e, 0x67, 0x90, 0x03, 0x10, 0x6d, 0x2b, 0x00, 0x52, 0x00,
0x6b, 0x6e, 0x6f, 0x77, 0x2b, 0x00, 0x12, 0x61, 0x8a, 0x04,
0x16, 0x63, 0xc6, 0x04, 0x02, 0xa7, 0x00, 0x03, 0x0b, 0x03,
0x01, 0x77, 0x00, 0xa2, 0x61, 0x00, 0x73, 0x70, 0x65, 0x63,
0x69, 0x66, 0x69, 0x63, 0x01, 0x01, 0x70, 0x62, 0x75, 0x74,
0x00, 0x6e, 0x6f, 0x74, 0xbf, 0x00, 0x22, 0x73, 0x75, 0x0f,
0x04, 0x11, 0x77, 0x95, 0x01, 0x00, 0x9b, 0x00, 0x02, 0x03,
0x01, 0x21, 0x67, 0x6f, 0x27, 0x01, 0x02, 0x7e, 0x01, 0x10,
0x6f, 0xb3, 0x01, 0x05, 0x64, 0x03, 0x00, 0x5d, 0x00, 0x06,
0xe1, 0x04, 0x01, 0xab, 0x02, 0x01, 0x81, 0x01, 0x71, 0x2e,
0x00, 0x49, 0x6e, 0x00, 0x6f, 0x72, 0x36, 0x03, 0x05, 0x15,
0x04, 0x23, 0x69, 0x73, 0x07, 0x01, 0x30, 0x00, 0x64, 0x6f,
0x1e, 0x02, 0x72, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x2c,
0xf6, 0x01, 0x40, 0x61, 0x6e, 0x00, 0x72, 0xcf, 0x00, 0x06,
0x6a, 0x02, 0x03, 0x4b, 0x00, 0x01, 0x7c, 0x00, 0x53, 0x64,
0x72, 0x61, 0x67, 0x2c, 0x82, 0x00, 0x01, 0x6e, 0x01, 0x04,
0x26, 0x02, 0x72, 0x6e, 0x00, 0x61, 0x72, 0x72, 0x6f, 0x77,
0x34, 0x04, 0x71, 0x72, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74,
0xb4, 0x05, 0x16, 0x74, 0x8b, 0x00, 0x42, 0x44, 0x72, 0x6f,
0x70, 0x21, 0x01, 0x44, 0x69, 0x6e, 0x00, 0x61, 0x14, 0x01,
0x22, 0x6f, 0x66, 0x92, 0x01, 0x61, 0x63, 0x68, 0x6f, 0x69,
0x63, 0x65, 0x66, 0x00, 0x04, 0xcb, 0x01, 0x61, 0x72, 0x65,
0x6d, 0x69, 0x6e, 0x64, 0x98, 0x00, 0x02, 0x73, 0x00, 0x20,
0x64, 0x6f, 0x33, 0x05, 0x91, 0x27, 0x73, 0x00, 0x61, 0x73,
0x73, 0x6f, 0x63, 0x69, 0xd6, 0x03, 0x41, 0x77, 0x69, 0x74,
0x68, 0x0a, 0x06, 0x01, 0xbc, 0x00, 0x4c, 0x61, 0x6c, 0x73,
0x6f, 0xc1, 0x00, 0x42, 0x65, 0x78, 0x69, 0x73, 0x8d, 0x00,
0x00, 0xa3, 0x00, 0x02, 0x2a, 0x06, 0x21, 0x69, 0x63, 0x1f,
0x05, 0x41, 0x6d, 0x00, 0x75, 0x70, 0x73, 0x00, 0x01, 0x0d,
0x03, 0x00, 0x11, 0x00, 0x01, 0x20, 0x03, 0x20, 0x64, 0x65,
0x9f, 0x03, 0x12, 0x79, 0x22, 0x00, 0x81, 0x62, 0x79, 0x00,
0x64, 0x72, 0x6f, 0x70, 0x70, 0xc2, 0x04, 0x00, 0x11, 0x00,
0x35, 0x6f, 0x66, 0x66, 0x96, 0x01, 0x04, 0x55, 0x05, 0x00,
0xe6, 0x01, 0xa1, 0x2e, 0x00, 0x28, 0x41, 0x6c, 0x73, 0x6f,
0x2c, 0x00, 0x69, 0xd3, 0x00, 0x31, 0x27, 0x72, 0x65, 0xd2,
0x01, 0x01, 0xcf, 0x01, 0x06, 0xc0, 0x00, 0x05, 0x2b, 0x01,
0x28, 0x69, 0x73, 0x27, 0x01, 0x06, 0x7f, 0x01, 0x01, 0x9c,
0x00, 0x29, 0x69, 0x74, 0x9a, 0x00, 0x50, 0x69, 0x74, 0x00,
0x61, 0x72, 0xca, 0x05, 0x02, 0xc7, 0x01, 0x11, 0x6b, 0x12,
0x00, 0xa3, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x72, 0x2e,
0x00, 0x49, 0x30, 0x01, 0x60, 0x73, 0x77, 0x69, 0x76, 0x65,
0x6c, 0x09, 0x02, 0x40, 0x73, 0x74, 0x61, 0x6e, 0x88, 0x03,
0x24, 0x61, 0x73, 0x31, 0x06, 0x50, 0x67, 0x00, 0x69, 0x74,
0x2c, 0x3e, 0x00, 0x42, 0x73, 0x74, 0x61, 0x79, 0x79, 0x00,
0x06, 0x83, 0x06, 0x21, 0x70, 0x61, 0x93, 0x05, 0x00, 0xa6,
0x01, 0x3a, 0x29, 0x00, 0x00, 0x4d, 0x01, 0x22, 0x75, 0x73,
0x84, 0x02, 0xa2, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00,
0x6b, 0x65, 0x79, 0x61, 0x06, 0x00, 0x97, 0x00, 0x04, 0x94,
0x00, 0x04, 0x19, 0x06, 0x05, 0x8f, 0x02, 0x13, 0x6e, 0x37,
0x06, 0x83, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0x69,
0xa4, 0x06, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44,
0x00, 0x02, 0x66, 0x06, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x00,
0x61, 0xc8, 0x04, 0x01, 0xc7, 0x00, 0x01, 0xca, 0x04, 0x22,
0x6f, 0x72, 0xe0, 0x00, 0x01, 0xa0, 0x00, 0x00, 0x6a, 0x01,
0x10, 0x2c, 0xcd, 0x00, 0x5f, 0x61, 0x62, 0x6f, 0x76, 0x65,
0x55, 0x00, 0x13, 0x23, 0x64, 0x6f, 0x16, 0x01, 0x01, 0x50,
0x01, 0x25, 0x75, 0x70, 0x79, 0x01, 0x01, 0x06, 0x01, 0x22,
0x62, 0x65, 0xd5, 0x01, 0x22, 0x65, 0x64, 0x4f, 0x06, 0x8c,
0x65, 0x78, 0x74, 0x00, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x00,
0x00, 0xa5, 0x01, 0x00, 0x6d, 0x00, 0x33, 0x65, 0x64, 0x3b,
0xff, 0x05, 0x04, 0x18, 0x01, 0x20, 0x62, 0x65, 0x1b, 0x01,
0x15, 0x64, 0x0c, 0x01, 0x0c, 0x66, 0x02, 0x02, 0x1c, 0x01,
0x12, 0x2c, 0x69, 0x05, 0x05, 0x3c, 0x02, 0x0e, 0x4d, 0x02,
0x13, 0x6e, 0xac, 0x00, 0x52, 0x6f, 0x72, 0x00, 0x61, 0x6e,
0xd6, 0x03, 0x01, 0x42, 0x00, 0x00, 0x6d, 0x04, 0x41, 0x28,
0x41, 0x6c, 0x6c, 0x92, 0x00, 0x11, 0x61, 0x71, 0x06, 0x10,
0x73, 0x99, 0x02, 0x42, 0x63, 0x72, 0x69, 0x62, 0x97, 0x04,
0x13, 0x73, 0x87, 0x06, 0x31, 0x32, 0x2e, 0x31, 0x01, 0x04,
0x01, 0x97, 0x00, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x2e, 0x29, 0x4e, 0x06, 0x16, 0x32, 0x4e,
0x06, 0x00, 0x9d, 0x07, 0x71, 0x6d, 0x65, 0x74, 0x65, 0x72,
0x73, 0x20, 0x76, 0x07, 0x46, 0x65, 0x73, 0x65, 0x00, 0x14,
0x00, 0x02, 0x44, 0x00, 0x04, 0x3f, 0x00, 0x51, 0x00, 0x66,
0x72, 0x6f, 0x6d, 0x7c, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70,
0x72, 0x00, 0x03, 0x16, 0x04, 0xb0, 0x60, 0x54, 0x79, 0x70,
0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xae, 0x00, 0x91,
0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x0f,
0x05, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x20, 0x03, 0x01,
0xdf, 0x01, 0x15, 0x69, 0xac, 0x05, 0x01, 0x46, 0x05, 0x30,
0x69, 0x66, 0x66, 0x20, 0x05, 0x63, 0x74, 0x79, 0x00, 0x00,
0x00, 0x43, 0xe5, 0x06, 0x02, 0x2a, 0x04, 0x06, 0x1a, 0x00,
0x04, 0x5b, 0x03, 0x41, 0x65, 0x6e, 0x65, 0x72, 0xeb, 0x03,
0x02, 0x3d, 0x07, 0x57, 0x2e, 0x00, 0x4d, 0x6f, 0x72, 0x29,
0x00, 0x13, 0x00, 0x54, 0x07, 0xa0, 0x00, 0x72, 0x65, 0x71,
0x75, 0x69, 0x72, 0x65, 0x00, 0x6d, 0x1f, 0x00, 0x02, 0xcf,
0x08, 0x62, 0x78, 0x00, 0x64, 0x65, 0x64, 0x75, 0x3d, 0x01,
0x02, 0x65, 0x06, 0x01, 0xb8, 0x00, 0x80, 0x55, 0x6e, 0x72,
0x65, 0x61, 0x73, 0x6f, 0x6e, 0xe9, 0x00, 0x18, 0x27, 0x73,
0x00, 0x20, 0x6c, 0x65, 0x41, 0x03, 0x35, 0x6d, 0x61, 0x79,
0x4d, 0x00, 0xe0, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61,
0x63, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x00,
0x65, 0x73, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x00, 0xf0, 0x2c,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x72, 0x65, 0x63, 0x74, 0x61, 0x6e,
0x67, 0x75, 0x6c, 0x61, 0x72, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e,
0x67, 0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x00, 0x6f, 0x66, 0x00, 0x64, 0x6f, 0x74, 0x73, 0x2e, 0x39,
0x00, 0xf4, 0x0a, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69,
0x73, 0x00, 0x74, 0x6f, 0x00, 0x70, 0x61, 0x72, 0x74, 0x69,
0x74, 0x69, 0x6f, 0x6e, 0x00, 0x74, 0x68, 0x65, 0x4b, 0x00,
0x70, 0x6c, 0x65, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x49, 0x00,
0xe0, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x00, 0x72, 0x65,
0x67, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x00, 0xf3, 0x12, 0x73,
0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x69, 0x6e,
0x00, 0x73, 0x75, 0x63, 0x68, 0x00, 0x61, 0x00, 0x77, 0x61,
0x79, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x65, 0x76, 0x65,
0x72, 0x79, 0x2d, 0x00, 0x00, 0x61, 0x00, 0xf0, 0x00, 0x31,
0x38, 0x30, 0x2d, 0x64, 0x65, 0x67, 0x72, 0x65, 0x65, 0x00,
0x72, 0x6f, 0x74, 0x61, 0x68, 0x00, 0xf5, 0x03, 0x61, 0x6c,
0x6c, 0x79, 0x00, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72,
0x69, 0x63, 0x2c, 0x00, 0x61, 0x6e, 0xb1, 0x00, 0xd0, 0x73,
0x00, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x00, 0x6f,
0x6e, 0x65, 0xaf, 0x00, 0x60, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x49, 0x00, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x88, 0x00,
0xd1, 0x61, 0x74, 0x00, 0x69, 0x74, 0x73, 0x00, 0x63, 0x65,
0x6e, 0x74, 0x72, 0x65, 0x8e, 0x00, 0x02, 0x4a, 0x00, 0xf0,
0x00, 0x79, 0x2e, 0x00, 0x00, 0x00, 0x54, 0x6f, 0x00, 0x65,
0x6e, 0x74, 0x65, 0x72, 0x00, 0x79, 0xe4, 0x00, 0x40, 0x73,
0x6f, 0x6c, 0x75, 0x71, 0x00, 0x10, 0x2c, 0x0f, 0x00, 0xf1,
0x02, 0x00, 0x64, 0x72, 0x61, 0x77, 0x00, 0x6c, 0x69, 0x6e,
0x65, 0x73, 0x00, 0x61, 0x6c, 0x6f, 0x6e, 0x67, 0xef, 0x00,
0x01, 0x2e, 0x01, 0x41, 0x65, 0x64, 0x67, 0x65, 0x0b, 0x01,
0x41, 0x6d, 0x61, 0x72, 0x6b, 0x17, 0x00, 0x91, 0x62, 0x6f,
0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, 0x65, 0xf0, 0x00, 0x02,
0x18, 0x01, 0x01, 0xff, 0x00, 0xc0, 0x2e, 0x00, 0x54, 0x68,
0x65, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x96, 0x00,
0xc2, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x00,
0x77, 0x68, 0x65, 0x41, 0x01, 0x00, 0x44, 0x00, 0x23, 0x65,
0x64, 0x69, 0x00, 0x26, 0x6f, 0x6e, 0x66, 0x00, 0xc0, 0x61,
0x72, 0x65, 0x00, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x65,
0x6c, 0x2d, 0x01, 0x32, 0x6f, 0x73, 0x65, 0x33, 0x01, 0xc4,
0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x00, 0x74,
0x77, 0x6f, 0x5c, 0x01, 0x30, 0x00, 0x62, 0x65, 0xa4, 0x00,
0x10, 0x69, 0xa7, 0x00, 0xb6, 0x6f, 0x00, 0x64, 0x69, 0x66,
0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x87, 0x00, 0x64, 0x00,
0x00, 0x54, 0x68, 0x69, 0x73, 0x8a, 0x00, 0x90, 0x77, 0x61,
0x73, 0x00, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x22, 0x01, 0xf1,
0x06, 0x62, 0x79, 0x00, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69,
0x00, 0x5b, 0x31, 0x33, 0x5d, 0x2c, 0x00, 0x75, 0x6e, 0x64,
0x65, 0x72, 0x88, 0x00, 0x80, 0x6e, 0x61, 0x6d, 0x65, 0x00,
0x60, 0x54, 0x65, 0x6c, 0x01, 0x71, 0x00, 0x53, 0x68, 0x6f,
0x77, 0x27, 0x3b, 0x4d, 0x01, 0x01, 0x18, 0x00, 0x02, 0xce,
0x00, 0x30, 0x6d, 0x6f, 0x6e, 0x9e, 0x00, 0x51, 0x72, 0x61,
0x6e, 0x73, 0x6c, 0x70, 0x01, 0x01, 0x07, 0x02, 0xf4, 0x04,
0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x00, 0x61, 0x73,
0x00, 0x60, 0x53, 0x70, 0x69, 0x72, 0x61, 0x6c, 0x00, 0xa0,
0x02, 0x10, 0x27, 0x8c, 0x00, 0x04, 0x0d, 0x00, 0x01, 0x89,
0x00, 0x00, 0xcc, 0x01, 0x40, 0x72, 0x69, 0x62, 0x75, 0x3e,
0x00, 0x51, 0x74, 0x6f, 0x00, 0x74, 0x68, 0x5a, 0x00, 0x41,
0x6c, 0x6c, 0x65, 0x63, 0x66, 0x02, 0xe1, 0x62, 0x79, 0x00,
0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61, 0x72, 0x76,
0x65, 0xb7, 0x01, 0x00, 0xa8, 0x00, 0xe1, 0x00, 0x68, 0x74,
0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
0x6e, 0xc0, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70,
0x2f, 0x65, 0x6e, 0x2f, 0xe7, 0x00, 0x31, 0x73, 0x2f, 0x74,
0xbb, 0x00, 0xd6, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x2f, 0x00,
0x00, 0x00, 0x32, 0x38, 0x2e, 0x31, 0x29, 0x03, 0x01, 0x78,
0x00, 0xf0, 0x02, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00,
0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0x84, 0x01, 0x32, 0x61, 0x6e, 0x79, 0x84, 0x01, 0x00, 0x96,
0x01, 0x01, 0x51, 0x01, 0x00, 0x0c, 0x02, 0x21, 0x61, 0x6e,
0xfa, 0x01, 0x21, 0x00, 0x69, 0xe2, 0x01, 0x10, 0x72, 0x02,
0x01, 0x31, 0x6e, 0x27, 0x74, 0x7a, 0x02, 0xb0, 0x61, 0x6c,
0x72, 0x65, 0x61, 0x64, 0x79, 0x2c, 0x00, 0x6f, 0x72, 0x2f,
0x00, 0x61, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x1a, 0x00,
0x07, 0x2d, 0x00, 0x30, 0x2e, 0x00, 0x57, 0xf5, 0x01, 0x00,
0x5c, 0x02, 0x50, 0x63, 0x72, 0x65, 0x61, 0x74, 0x8a, 0x03,
0x54, 0x76, 0x61, 0x6c, 0x69, 0x64, 0xff, 0x02, 0x10, 0x28,
0x31, 0x00, 0x05, 0xc1, 0x02, 0x7f, 0x63, 0x6c, 0x6f, 0x73,
0x65, 0x64, 0x2c, 0xeb, 0x02, 0x06, 0x1b, 0x2c, 0x2f, 0x03,
0x05, 0x22, 0x03, 0x62, 0x00, 0x61, 0x62, 0x6f, 0x75, 0x74,
0x2c, 0x02, 0x01, 0x28, 0x00, 0x09, 0x31, 0x03, 0x50, 0x6e,
0x6f, 0x00, 0x65, 0x78, 0xb0, 0x01, 0x43, 0x65, 0x6f, 0x75,
0x73, 0xcb, 0x02, 0x71, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65,
0x6e, 0x51, 0x02, 0x21, 0x6f, 0x66, 0xe3, 0x01, 0x34, 0x6f,
0x77, 0x6e, 0x5c, 0x02, 0xf1, 0x07, 0x29, 0x2c, 0x00, 0x69,
0x74, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x62, 0x65, 0x00,
0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x5c, 0x03,
0x80, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0xa3,
0x03, 0x6a, 0x3b, 0x00, 0x73, 0x6f, 0x00, 0x79, 0x2c, 0x04,
0x01, 0x70, 0x04, 0x20, 0x74, 0x68, 0xd6, 0x00, 0x23, 0x6f,
0x6c, 0xd8, 0x02, 0x08, 0x41, 0x00, 0x22, 0x69, 0x6e, 0xa7,
0x00, 0x21, 0x77, 0x61, 0xd8, 0x01, 0x30, 0x44, 0x75, 0x72,
0xc2, 0x02, 0x72, 0x73, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67,
0x87, 0x03, 0x10, 0x6d, 0x2b, 0x00, 0x52, 0x00, 0x6b, 0x6e,
0x6f, 0x77, 0x2b, 0x00, 0x12, 0x61, 0x81, 0x04, 0x16, 0x63,
0xbd, 0x04, 0x02, 0xa7, 0x00, 0x03, 0x02, 0x03, 0x01, 0x77,
0x00, 0xa2, 0x61, 0x00, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66,
0x69, 0x63, 0x01, 0x01, 0x70, 0x62, 0x75, 0x74, 0x00, 0x6e,
0x6f, 0x74, 0xbf, 0x00, 0x22, 0x73, 0x75, 0x06, 0x04, 0x11,
0x77, 0x95, 0x01, 0x00, 0x9b, 0x00, 0x02, 0x03, 0x01, 0x21,
0x67, 0x6f, 0x27, 0x01, 0x02, 0x7e, 0x01, 0x10, 0x6f, 0xb3,
0x01, 0x05, 0x5b, 0x03, 0x00, 0x5d, 0x00, 0x06, 0xd8, 0x04,
0x01, 0xa2, 0x02, 0x01, 0x81, 0x01, 0x71, 0x2e, 0x00, 0x49,
0x6e, 0x00, 0x6f, 0x72, 0x2d, 0x03, 0x05, 0x0c, 0x04, 0x23,
0x69, 0x73, 0x07, 0x01, 0x30, 0x00, 0x64, 0x6f, 0x1e, 0x02,
0x72, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x2c, 0xf6, 0x01,
0x40, 0x61, 0x6e, 0x00, 0x72, 0xcf, 0x00, 0x06, 0x6a, 0x02,
0x03, 0x4b, 0x00, 0x01, 0x7c, 0x00, 0x53, 0x64, 0x72, 0x61,
0x67, 0x2c, 0x82, 0x00, 0x01, 0x6e, 0x01, 0x04, 0x26, 0x02,
0x72, 0x6e, 0x00, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x2b, 0x04,
0x71, 0x72, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0xab, 0x05,
0x16, 0x74, 0x8b, 0x00, 0x42, 0x44, 0x72, 0x6f, 0x70, 0x21,
0x01, 0x44, 0x69, 0x6e, 0x00, 0x61, 0x14, 0x01, 0x22, 0x6f,
0x66, 0x92, 0x01, 0x61, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65,
0x66, 0x00, 0x04, 0xcb, 0x01, 0x61, 0x72, 0x65, 0x6d, 0x69,
0x6e, 0x64, 0x98, 0x00, 0x02, 0x73, 0x00, 0x20, 0x64, 0x6f,
0x2a, 0x05, 0x91, 0x27, 0x73, 0x00, 0x61, 0x73, 0x73, 0x6f,
0x63, 0x69, 0xcd, 0x03, 0x41, 0x77, 0x69, 0x74, 0x68, 0x01,
0x06, 0x01, 0xbc, 0x00, 0x4c, 0x61, 0x6c, 0x73, 0x6f, 0xc1,
0x00, 0x42, 0x65, 0x78, 0x69, 0x73, 0x8d, 0x00, 0x00, 0xa3,
0x00, 0x02, 0x21, 0x06, 0x21, 0x69, 0x63, 0x16, 0x05, 0x41,
0x6d, 0x00, 0x75, 0x70, 0x73, 0x00, 0x01, 0x0d, 0x03, 0x00,
0x11, 0x00, 0x01, 0x20, 0x03, 0x72, 0x64, 0x65, 0x73, 0x74,
0x72, 0x6f, 0x79, 0x22, 0x00, 0x81, 0x62, 0x79, 0x00, 0x64,
0x72, 0x6f, 0x70, 0x70, 0xb9, 0x04, 0x00, 0x11, 0x00, 0x35,
0x6f, 0x66, 0x66, 0x96, 0x01, 0x04, 0x4c, 0x05, 0x00, 0xe6,
0x01, 0xa1, 0x2e, 0x00, 0x28, 0x41, 0x6c, 0x73, 0x6f, 0x2c,
0x00, 0x69, 0xd3, 0x00, 0x31, 0x27, 0x72, 0x65, 0xd2, 0x01,
0x01, 0xcf, 0x01, 0x06, 0xc0, 0x00, 0x05, 0x2b, 0x01, 0x28,
0x69, 0x73, 0x27, 0x01, 0x06, 0x7f, 0x01, 0x01, 0x9c, 0x00,
0x29, 0x69, 0x74, 0x9a, 0x00, 0x50, 0x69, 0x74, 0x00, 0x61,
0x72, 0xc1, 0x05, 0x02, 0xc7, 0x01, 0x11, 0x6b, 0x12, 0x00,
0xa3, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x72, 0x2e, 0x00,
0x49, 0x30, 0x01, 0x60, 0x73, 0x77, 0x69, 0x76, 0x65, 0x6c,
0x09, 0x02, 0x40, 0x73, 0x74, 0x61, 0x6e, 0x88, 0x03, 0x24,
0x61, 0x73, 0x28, 0x06, 0x50, 0x67, 0x00, 0x69, 0x74, 0x2c,
0x3e, 0x00, 0x42, 0x73, 0x74, 0x61, 0x79, 0x79, 0x00, 0x06,
0x7a, 0x06, 0x21, 0x70, 0x61, 0x8a, 0x05, 0x00, 0xa6, 0x01,
0x3a, 0x29, 0x00, 0x00, 0x4d, 0x01, 0x22, 0x75, 0x73, 0x84,
0x02, 0xa2, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b,
0x65, 0x79, 0x58, 0x06, 0x00, 0x97, 0x00, 0x04, 0x94, 0x00,
0x04, 0x10, 0x06, 0x05, 0x8f, 0x02, 0x13, 0x6e, 0x2e, 0x06,
0x83, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0x69, 0x9b,
0x06, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x00,
0x02, 0x5d, 0x06, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x00, 0x61,
0xc8, 0x04, 0x01, 0xc7, 0x00, 0x01, 0xca, 0x04, 0x22, 0x6f,
0x72, 0xe0, 0x00, 0x01, 0xa0, 0x00, 0x00, 0x6a, 0x01, 0x10,
0x2c, 0xcd, 0x00, 0x5f, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x55,
0x00, 0x13, 0x23, 0x64, 0x6f, 0x16, 0x01, 0x01, 0x50, 0x01,
0x25, 0x75, 0x70, 0x79, 0x01, 0x01, 0x06, 0x01, 0x22, 0x62,
0x65, 0xd5, 0x01, 0x22, 0x65, 0x64, 0x46, 0x06, 0x8c, 0x65,
0x78, 0x74, 0x00, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x00, 0x00,
0xa5, 0x01, 0x00, 0x6d, 0x00, 0x33, 0x65, 0x64, 0x3b, 0xf6,
0x05, 0x04, 0x18, 0x01, 0x20, 0x62, 0x65, 0x1b, 0x01, 0x15,
0x64, 0x0c, 0x01, 0x0c, 0x66, 0x02, 0x02, 0x1c, 0x01, 0x12,
0x2c, 0x69, 0x05, 0x05, 0x3c, 0x02, 0x0e, 0x4d, 0x02, 0x13,
0x6e, 0xac, 0x00, 0x52, 0x6f, 0x72, 0x00, 0x61, 0x6e, 0xd6,
0x03, 0x01, 0x42, 0x00, 0x00, 0x6d, 0x04, 0x41, 0x28, 0x41,
0x6c, 0x6c, 0x92, 0x00, 0x11, 0x61, 0x68, 0x06, 0x10, 0x73,
0x99, 0x02, 0x42, 0x63, 0x72, 0x69, 0x62, 0x97, 0x04, 0x13,
0x73, 0x7e, 0x06, 0x31, 0x32, 0x2e, 0x31, 0x01, 0x04, 0x01,
0x97, 0x00, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
0x6c, 0x65, 0x2e, 0x29, 0x4e, 0x06, 0x16, 0x32, 0x4e, 0x06,
0x00, 0x94, 0x07, 0x71, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
0x20, 0x6d, 0x07, 0x46, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00,
0x02, 0x44, 0x00, 0x04, 0x3f, 0x00, 0x51, 0x00, 0x66, 0x72,
0x6f, 0x6d, 0x7c, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74,
0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x72,
0x00, 0x03, 0x16, 0x04, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65,
0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xae, 0x00, 0x91, 0x57,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x0f, 0x05,
0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x20, 0x03, 0x01, 0xdf,
0x01, 0x15, 0x69, 0xac, 0x05, 0x01, 0x46, 0x05, 0x30, 0x69,
0x66, 0x66, 0x20, 0x05, 0x63, 0x74, 0x79, 0x00, 0x00, 0x00,
0x43, 0xe5, 0x06, 0x02, 0x2a, 0x04, 0x06, 0x1a, 0x00, 0x04,
0x5b, 0x03, 0x41, 0x65, 0x6e, 0x65, 0x72, 0xeb, 0x03, 0x02,
0x33, 0x07, 0x57, 0x2e, 0x00, 0x4d, 0x6f, 0x72, 0x29, 0x00,
0x13, 0x00, 0x4a, 0x07, 0xa0, 0x00, 0x72, 0x65, 0x71, 0x75,
0x69, 0x72, 0x65, 0x00, 0x6d, 0x1f, 0x00, 0x02, 0xc6, 0x08,
0x62, 0x78, 0x00, 0x64, 0x65, 0x64, 0x75, 0x3d, 0x01, 0x02,
0x65, 0x06, 0x01, 0xb8, 0x00, 0x80, 0x55, 0x6e, 0x72, 0x65,
0x61, 0x73, 0x6f, 0x6e, 0xe9, 0x00, 0x18, 0x27, 0x73, 0x00,
0x20, 0x6c, 0x65, 0x41, 0x03, 0x35, 0x6d, 0x61, 0x79, 0x4d,
0x00, 0xe0, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63,
0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x00,
};
const unsigned short help_text_len = 2754;
const unsigned short help_text_words = 497;
const unsigned short help_text_len = 2766;
const unsigned short help_text_words = 498;
const char quick_help_text[] = "Divide the grid into rotationally symmetric regions each centred on a dot.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,209 +6,236 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 123, TEXT_CENTER | C_RED },
{ 404, TEXT_CENTER | C_RED },
{ 432, TEXT_UNDERLINE },
{ 452, TEXT_UNDERLINE },
{ 465, TEXT_UNDERLINE },
{ 483, TEXT_UNDERLINE },
{ 543, TEXT_UNDERLINE },
{ 124, TEXT_CENTER | C_RED },
{ 444, TEXT_CENTER | C_RED },
{ 472, TEXT_UNDERLINE },
{ 492, TEXT_UNDERLINE },
{ 505, TEXT_UNDERLINE },
{ 523, TEXT_UNDERLINE },
{ 583, TEXT_UNDERLINE },
{ 614, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 3042 comp 1883 ratio 0.619001 level 10 saved 1159 */
/* orig 3506 comp 2143 ratio 0.611238 level 10 saved 1363 */
const char help_text[] = {
0xf2, 0x2a, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x35, 0x3a, 0x20, 0x47, 0x75, 0x65, 0x73, 0x73, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x73, 0x65, 0x74, 0x00, 0x6f, 0x66,
0x00, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x65, 0x64, 0x00,
0x70, 0x65, 0x67, 0x73, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x21,
0x00, 0xb0, 0x74, 0x6f, 0x00, 0x72, 0x65, 0x70, 0x72, 0x6f,
0x64, 0x75, 0x63, 0x2e, 0x00, 0xf0, 0x07, 0x70, 0x72, 0x65,
0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x65, 0x64,
0x00, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x41,
0x00, 0xf0, 0x00, 0x74, 0x68, 0x65, 0x6d, 0x00, 0x28, 0x63,
0x68, 0x6f, 0x73, 0x65, 0x6e, 0x00, 0x62, 0x79, 0x10, 0x00,
0xf0, 0x13, 0x00, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65,
0x72, 0x29, 0x00, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x00,
0x61, 0x00, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x00,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x39, 0x00, 0x10, 0x67,
0x95, 0x00, 0xa2, 0x65, 0x73, 0x2e, 0x00, 0x00, 0x00, 0x45,
0x61, 0x63, 0x68, 0x10, 0x00, 0xc1, 0x00, 0x67, 0x65, 0x74,
0x73, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x64, 0x3d, 0x00,
0x01, 0x50, 0x00, 0x06, 0x35, 0x00, 0xa9, 0x63, 0x6f, 0x72,
0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x2d, 0xb9, 0x00, 0x33,
0x00, 0x69, 0x6e, 0x79, 0x00, 0x01, 0x1f, 0x00, 0xf2, 0x03,
0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x00, 0x28, 0x69,
0x6e, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x29, 0xda, 0x00,
0x4f, 0x61, 0x6c, 0x73, 0x6f, 0x51, 0x00, 0x06, 0x1f, 0x00,
0x52, 0x00, 0x02, 0x58, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x50,
0x00, 0x60, 0x77, 0x68, 0x69, 0x74, 0x65, 0x29, 0xb6, 0x00,
0xc2, 0x54, 0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d, 0x65,
0x00, 0x69, 0x73, 0x5b, 0x00, 0x70, 0x6b, 0x6e, 0x6f, 0x77,
0x6e, 0x00, 0x28, 0x6b, 0x00, 0x01, 0xc3, 0x00, 0x40, 0x74,
0x65, 0x64, 0x2c, 0x14, 0x01, 0xf2, 0x0b, 0x48, 0x61, 0x73,
0x62, 0x72, 0x6f, 0x2c, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x6c,
0x79, 0x29, 0x00, 0x61, 0x73, 0x00, 0x61, 0x00, 0x62, 0x6f,
0x61, 0x72, 0x64, 0x40, 0x00, 0x42, 0x60, 0x4d, 0x61, 0x73,
0x5d, 0x01, 0x32, 0x64, 0x27, 0x2c, 0xf7, 0x00, 0x13, 0x36,
0x8f, 0x00, 0x42, 0x73, 0x2c, 0x00, 0x34, 0x91, 0x00, 0x72,
0x70, 0x65, 0x72, 0x00, 0x72, 0x6f, 0x77, 0xca, 0x00, 0x26,
0x31, 0x30, 0x40, 0x01, 0xa0, 0x48, 0x6f, 0x77, 0x65, 0x76,
0x65, 0x72, 0x2c, 0x00, 0x74, 0x91, 0x00, 0xf0, 0x06, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x00, 0x61, 0x6c, 0x6c,
0x6f, 0x77, 0x73, 0x00, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0xee, 0x01, 0x50, 0x74, 0x69, 0x6e, 0x67, 0x73, 0xf3, 0x00,
0x08, 0xfd, 0x00, 0x01, 0x63, 0x00, 0x40, 0x00, 0x28, 0x75,
0x70, 0xf1, 0x01, 0x47, 0x31, 0x30, 0x29, 0x2c, 0x1e, 0x00,
0x0e, 0x76, 0x00, 0x0f, 0xbd, 0x01, 0x02, 0x11, 0x47, 0xb8,
0x01, 0xf0, 0x00, 0x77, 0x61, 0x73, 0x00, 0x63, 0x6f, 0x6e,
0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x4f, 0x00,
0x01, 0x8f, 0x00, 0x91, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x1d, 0x02, 0xc0, 0x4a, 0x61, 0x6d, 0x65,
0x73, 0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x3c, 0x00,
0x43, 0x31, 0x35, 0x2e, 0x31, 0x9e, 0x02, 0x01, 0x3d, 0x00,
0x49, 0x6f, 0x6c, 0x73, 0x20, 0x5a, 0x01, 0x60, 0x63, 0x61,
0x6e, 0x00, 0x62, 0x65, 0x80, 0x01, 0x14, 0x79, 0x11, 0x02,
0x61, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x9d, 0x01, 0x32,
0x6b, 0x65, 0x79, 0x46, 0x01, 0x12, 0x6f, 0x10, 0x00, 0x50,
0x6d, 0x6f, 0x75, 0x73, 0x65, 0x58, 0x00, 0x14, 0x57, 0x3a,
0x02, 0x01, 0x12, 0x00, 0x89, 0x2c, 0x00, 0x64, 0x72, 0x61,
0x67, 0x00, 0x61, 0xe2, 0x01, 0x51, 0x00, 0x66, 0x72, 0x6f,
0x6d, 0x24, 0x00, 0x62, 0x74, 0x72, 0x61, 0x79, 0x00, 0x6f,
0xef, 0x01, 0x60, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x68, 0xec,
0x00, 0x31, 0x73, 0x69, 0x64, 0x06, 0x03, 0x91, 0x69, 0x74,
0x73, 0x00, 0x72, 0x65, 0x71, 0x75, 0x69, 0x38, 0x00, 0x31,
0x6f, 0x73, 0x69, 0xcc, 0x00, 0x04, 0x70, 0x02, 0x62, 0x75,
0x72, 0x72, 0x65, 0x6e, 0x74, 0x0f, 0x01, 0x12, 0x3b, 0x32,
0x01, 0x32, 0x6d, 0x61, 0x79, 0x0e, 0x02, 0x21, 0x62, 0x65,
0x78, 0x00, 0x32, 0x67, 0x65, 0x64, 0x6c, 0x00, 0x04, 0x2d,
0x00, 0x00, 0x5e, 0x00, 0x44, 0x70, 0x61, 0x73, 0x74, 0x45,
0x01, 0x00, 0x66, 0x00, 0x42, 0x63, 0x6f, 0x70, 0x79, 0x4b,
0x03, 0xc0, 0x65, 0x6c, 0x73, 0x65, 0x77, 0x68, 0x65, 0x72,
0x65, 0x2e, 0x00, 0x54, 0x84, 0x03, 0x31, 0x6d, 0x6f, 0x76,
0x81, 0x03, 0x23, 0x65, 0x67, 0xc7, 0x00, 0x10, 0x69, 0xb8,
0x03, 0x11, 0x66, 0x98, 0x00, 0x04, 0x52, 0x00, 0x05, 0x97,
0x00, 0x62, 0x74, 0x6f, 0x00, 0x73, 0x6f, 0x6d, 0x40, 0x00,
0x80, 0x00, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10,
0x01, 0xef, 0x52, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x63, 0x6c,
0x69, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0xbe, 0x00, 0x02, 0x40,
0x00, 0x61, 0x64, 0x64, 0x97, 0x02, 0x62, 0x60, 0x68, 0x6f,
0x6c, 0x64, 0x27, 0xc0, 0x02, 0x13, 0x72, 0xd3, 0x00, 0x42,
0x74, 0x68, 0x61, 0x74, 0x17, 0x04, 0x00, 0x1d, 0x00, 0x03,
0x1c, 0x00, 0x60, 0x73, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0xe6,
0x00, 0xd0, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69,
0x63, 0x61, 0x6c, 0x6c, 0x79, 0x48, 0x00, 0x04, 0x00, 0x02,
0x55, 0x65, 0x00, 0x6e, 0x65, 0x78, 0x60, 0x00, 0x41, 0x66,
0x74, 0x65, 0x72, 0x3c, 0x00, 0x30, 0x69, 0x6e, 0x67, 0x95,
0x00, 0xd3, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74,
0x69, 0x76, 0x65, 0x6c, 0x79, 0xf7, 0x02, 0x08, 0xd6, 0x01,
0x11, 0x2c, 0x0e, 0x00, 0x21, 0x75, 0x70, 0x31, 0x01, 0x10,
0x64, 0x5a, 0x03, 0x60, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
0x21, 0x00, 0x14, 0x73, 0x1a, 0x02, 0x22, 0x75, 0x73, 0x6d,
0x00, 0x20, 0x73, 0x65, 0x67, 0x02, 0x02, 0x29, 0x01, 0x03,
0xe8, 0x01, 0x15, 0x2c, 0xd2, 0x01, 0x01, 0x42, 0x00, 0x10,
0x72, 0x04, 0x01, 0x02, 0x3c, 0x00, 0x0c, 0x30, 0x00, 0x04,
0x40, 0x01, 0x02, 0xe6, 0x02, 0x00, 0x36, 0x00, 0x90, 0x73,
0x70, 0x61, 0x63, 0x65, 0x00, 0x62, 0x61, 0x72, 0x5b, 0x02,
0x41, 0x45, 0x6e, 0x74, 0x65, 0x76, 0x00, 0x00, 0x39, 0x00,
0x01, 0x0b, 0x04, 0x03, 0x38, 0x00, 0x02, 0xff, 0x04, 0x03,
0x4c, 0x00, 0x23, 0x65, 0x64, 0x78, 0x00, 0x05, 0x5f, 0x01,
0x02, 0x14, 0x05, 0x04, 0x5d, 0x00, 0x50, 0x2e, 0x00, 0x60,
0x44, 0x27, 0x4f, 0x00, 0x42, 0x42, 0x61, 0x63, 0x6b, 0x60,
0x00, 0x02, 0xde, 0x01, 0x14, 0x73, 0xdf, 0x01, 0x00, 0x7d,
0x00, 0x11, 0x53, 0x19, 0x00, 0x03, 0x8c, 0x01, 0x07, 0x6e,
0x01, 0x00, 0x31, 0x01, 0x50, 0x50, 0x72, 0x65, 0x73, 0x73,
0xc0, 0x01, 0x21, 0x60, 0x68, 0x49, 0x00, 0x32, 0x60, 0x3f,
0x27, 0x84, 0x01, 0x10, 0x66, 0x05, 0x00, 0x0e, 0xd2, 0x01,
0x01, 0x52, 0x01, 0x80, 0x61, 0x00, 0x73, 0x75, 0x67, 0x67,
0x65, 0x73, 0xa0, 0x00, 0x01, 0x17, 0x00, 0x31, 0x2e, 0x00,
0x55, 0x45, 0x00, 0x01, 0x9f, 0x03, 0xf0, 0x01, 0x69, 0x73,
0x00, 0x2d, 0x01, 0x00, 0xf2, 0x18, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00,
0x73, 0x65, 0x74, 0x00, 0x6f, 0x66, 0x00, 0x63, 0x6f, 0x6c,
0x6f, 0x75, 0x72, 0x65, 0x64, 0x00, 0x70, 0x65, 0x67, 0x73,
0x2c, 0x00, 0x61, 0x6e, 0x64, 0x21, 0x00, 0xb0, 0x74, 0x6f,
0x00, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x2e,
0x00, 0xf0, 0x07, 0x70, 0x72, 0x65, 0x64, 0x65, 0x74, 0x65,
0x72, 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x00, 0x73, 0x65, 0x71,
0x75, 0x65, 0x6e, 0x63, 0x65, 0x41, 0x00, 0xf0, 0x00, 0x74,
0x68, 0x65, 0x6d, 0x00, 0x28, 0x63, 0x68, 0x6f, 0x73, 0x65,
0x6e, 0x00, 0x62, 0x79, 0x10, 0x00, 0xf0, 0x13, 0x00, 0x63,
0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x29, 0x00, 0x77,
0x69, 0x74, 0x68, 0x69, 0x6e, 0x00, 0x61, 0x00, 0x63, 0x65,
0x72, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x39, 0x00, 0x10, 0x67, 0xa7, 0x00, 0xa2, 0x65,
0x73, 0x2e, 0x00, 0x00, 0x00, 0x45, 0x61, 0x63, 0x68, 0x10,
0x00, 0xc1, 0x00, 0x67, 0x65, 0x74, 0x73, 0x00, 0x6d, 0x61,
0x72, 0x6b, 0x65, 0x64, 0x3d, 0x00, 0x01, 0x50, 0x00, 0x06,
0x35, 0x00, 0xa9, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74,
0x6c, 0x79, 0x2d, 0xb9, 0x00, 0x33, 0x00, 0x69, 0x6e, 0x79,
0x00, 0x01, 0x1f, 0x00, 0xf2, 0x03, 0x00, 0x70, 0x6c, 0x61,
0x63, 0x65, 0x73, 0x00, 0x28, 0x69, 0x6e, 0x00, 0x62, 0x6c,
0x61, 0x63, 0x6b, 0x29, 0xda, 0x00, 0x4f, 0x61, 0x6c, 0x73,
0x6f, 0x51, 0x00, 0x06, 0x1f, 0x00, 0x52, 0x00, 0x02, 0x58,
0x77, 0x72, 0x6f, 0x6e, 0x67, 0x50, 0x00, 0x60, 0x77, 0x68,
0x69, 0x74, 0x65, 0x29, 0xb6, 0x00, 0xc2, 0x54, 0x68, 0x69,
0x73, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x00, 0x69, 0x73, 0x5b,
0x00, 0x70, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x00, 0x28, 0x6b,
0x00, 0x01, 0xc3, 0x00, 0x40, 0x74, 0x65, 0x64, 0x2c, 0x14,
0x01, 0xf2, 0x0b, 0x48, 0x61, 0x73, 0x62, 0x72, 0x6f, 0x2c,
0x00, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x79, 0x29, 0x00, 0x61,
0x73, 0x00, 0x61, 0x00, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x40,
0x00, 0x42, 0x60, 0x4d, 0x61, 0x73, 0x5d, 0x01, 0x32, 0x64,
0x27, 0x2c, 0xf7, 0x00, 0x13, 0x36, 0x8f, 0x00, 0x42, 0x73,
0x2c, 0x00, 0x34, 0x91, 0x00, 0x72, 0x70, 0x65, 0x72, 0x00,
0x72, 0x6f, 0x77, 0xca, 0x00, 0x26, 0x31, 0x30, 0x40, 0x01,
0xa0, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x00,
0x74, 0x91, 0x00, 0xf0, 0x06, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x00, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x00,
0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0xee, 0x01, 0x50, 0x74,
0x69, 0x6e, 0x67, 0x73, 0xf3, 0x00, 0x08, 0xfd, 0x00, 0x01,
0x63, 0x00, 0x40, 0x00, 0x28, 0x75, 0x70, 0xf1, 0x01, 0x47,
0x31, 0x30, 0x29, 0x2c, 0x1e, 0x00, 0x0e, 0x76, 0x00, 0x0f,
0xbd, 0x01, 0x02, 0x11, 0x47, 0xb8, 0x01, 0xf0, 0x00, 0x77,
0x61, 0x73, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62,
0x75, 0x74, 0x65, 0x64, 0x4f, 0x00, 0x01, 0x8f, 0x00, 0x91,
0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x1d,
0x02, 0xc0, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61,
0x72, 0x76, 0x65, 0x79, 0x3c, 0x00, 0x43, 0x31, 0x35, 0x2e,
0x31, 0xb0, 0x02, 0x01, 0x3d, 0x00, 0x49, 0x6f, 0x6c, 0x73,
0x20, 0x5a, 0x01, 0x60, 0x63, 0x61, 0x6e, 0x00, 0x62, 0x65,
0x80, 0x01, 0x14, 0x79, 0x11, 0x02, 0x61, 0x65, 0x69, 0x74,
0x68, 0x65, 0x72, 0x9d, 0x01, 0x32, 0x6b, 0x65, 0x79, 0x46,
0x01, 0x12, 0x6f, 0x10, 0x00, 0x50, 0x6d, 0x6f, 0x75, 0x73,
0x65, 0x58, 0x00, 0x14, 0x57, 0x3a, 0x02, 0x01, 0x12, 0x00,
0x89, 0x2c, 0x00, 0x64, 0x72, 0x61, 0x67, 0x00, 0x61, 0xe2,
0x01, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x24, 0x00, 0x62,
0x74, 0x72, 0x61, 0x79, 0x00, 0x6f, 0xef, 0x01, 0x60, 0x6c,
0x65, 0x66, 0x74, 0x2d, 0x68, 0xec, 0x00, 0x31, 0x73, 0x69,
0x64, 0x06, 0x03, 0x91, 0x69, 0x74, 0x73, 0x00, 0x72, 0x65,
0x71, 0x75, 0x69, 0x38, 0x00, 0x31, 0x6f, 0x73, 0x69, 0xcc,
0x00, 0x04, 0x70, 0x02, 0x62, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x74, 0x0f, 0x01, 0x12, 0x3b, 0x32, 0x01, 0x32, 0x6d, 0x61,
0x79, 0x0e, 0x02, 0x21, 0x62, 0x65, 0x78, 0x00, 0x32, 0x67,
0x65, 0x64, 0x6c, 0x00, 0x04, 0x2d, 0x00, 0x00, 0x5e, 0x00,
0x44, 0x70, 0x61, 0x73, 0x74, 0x45, 0x01, 0x00, 0x66, 0x00,
0x42, 0x63, 0x6f, 0x70, 0x79, 0x4b, 0x03, 0xc0, 0x65, 0x6c,
0x73, 0x65, 0x77, 0x68, 0x65, 0x72, 0x65, 0x2e, 0x00, 0x54,
0x84, 0x03, 0x31, 0x6d, 0x6f, 0x76, 0x81, 0x03, 0x23, 0x65,
0x67, 0xc7, 0x00, 0x10, 0x69, 0xb8, 0x03, 0x11, 0x66, 0x98,
0x00, 0x04, 0x52, 0x00, 0x05, 0x97, 0x00, 0x62, 0x74, 0x6f,
0x00, 0x73, 0x6f, 0x6d, 0x40, 0x00, 0x80, 0x00, 0x69, 0x6e,
0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x01, 0xef, 0x52, 0x69,
0x67, 0x68, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x69,
0x6e, 0x67, 0xbe, 0x00, 0x02, 0x40, 0x00, 0x61, 0x64, 0x64,
0x97, 0x02, 0x62, 0x60, 0x68, 0x6f, 0x6c, 0x64, 0x27, 0xc0,
0x02, 0x13, 0x72, 0xd3, 0x00, 0x42, 0x74, 0x68, 0x61, 0x74,
0x17, 0x04, 0x00, 0x1d, 0x00, 0x03, 0x1c, 0x00, 0x60, 0x73,
0x00, 0x77, 0x69, 0x6c, 0x6c, 0xe6, 0x00, 0xd0, 0x61, 0x75,
0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x6c,
0x79, 0x48, 0x00, 0x04, 0x00, 0x02, 0x55, 0x65, 0x00, 0x6e,
0x65, 0x78, 0x60, 0x00, 0x41, 0x66, 0x74, 0x65, 0x72, 0x3c,
0x00, 0x30, 0x69, 0x6e, 0x67, 0x95, 0x00, 0xd3, 0x41, 0x6c,
0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c,
0x79, 0xf7, 0x02, 0x08, 0xd6, 0x01, 0x11, 0x2c, 0x0e, 0x00,
0x21, 0x75, 0x70, 0x31, 0x01, 0x10, 0x64, 0x5a, 0x03, 0x60,
0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x21, 0x00, 0x14, 0x73,
0x1a, 0x02, 0x22, 0x75, 0x73, 0x6d, 0x00, 0x20, 0x73, 0x65,
0x67, 0x02, 0x02, 0x29, 0x01, 0x03, 0xe8, 0x01, 0x15, 0x2c,
0xd2, 0x01, 0x01, 0x42, 0x00, 0x10, 0x72, 0x04, 0x01, 0x02,
0x3c, 0x00, 0x0c, 0x30, 0x00, 0x04, 0x40, 0x01, 0x02, 0xe6,
0x02, 0x00, 0x36, 0x00, 0x41, 0x45, 0x6e, 0x74, 0x65, 0x69,
0x00, 0x00, 0x2c, 0x00, 0x01, 0xfe, 0x03, 0x03, 0x2b, 0x00,
0x02, 0xf2, 0x04, 0x03, 0x3f, 0x00, 0x23, 0x65, 0x64, 0x6b,
0x00, 0x05, 0x52, 0x01, 0x02, 0x07, 0x05, 0x04, 0x50, 0x00,
0x50, 0x2e, 0x00, 0x60, 0x44, 0x27, 0x9d, 0x02, 0x60, 0x42,
0x61, 0x63, 0x6b, 0x73, 0x70, 0x46, 0x00, 0x02, 0xd1, 0x01,
0x14, 0x73, 0xd2, 0x01, 0x00, 0x70, 0x00, 0x11, 0x53, 0x19,
0x00, 0x03, 0x7f, 0x01, 0x07, 0x61, 0x01, 0x02, 0x64, 0x04,
0x05, 0xad, 0x04, 0x05, 0xf6, 0x00, 0x04, 0x5d, 0x02, 0x04,
0xfb, 0x00, 0x61, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0xaa,
0x01, 0x53, 0x3a, 0x00, 0x60, 0x31, 0x27, 0x11, 0x00, 0x12,
0x73, 0xdd, 0x02, 0x75, 0x6f, 0x70, 0x2d, 0x6d, 0x6f, 0x73,
0x74, 0x14, 0x01, 0x33, 0x60, 0x32, 0x27, 0xc2, 0x00, 0x82,
0x63, 0x6f, 0x6e, 0x64, 0x00, 0x6f, 0x6e, 0x65, 0x86, 0x00,
0x90, 0x73, 0x6f, 0x00, 0x66, 0x6f, 0x72, 0x74, 0x68, 0x2e,
0x74, 0x00, 0x22, 0x73, 0x65, 0x66, 0x00, 0x01, 0x7d, 0x02,
0x00, 0x2e, 0x00, 0x01, 0x56, 0x01, 0x02, 0x7e, 0x01, 0x03,
0xda, 0x01, 0x01, 0x4f, 0x01, 0x70, 0x2e, 0x00, 0x50, 0x72,
0x65, 0x73, 0x73, 0x54, 0x02, 0x32, 0x60, 0x4c, 0x27, 0x11,
0x02, 0x54, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x35, 0x00, 0x15,
0x73, 0xd7, 0x01, 0x23, 0x69, 0x72, 0xc9, 0x00, 0x01, 0x35,
0x04, 0x06, 0x37, 0x00, 0x11, 0x68, 0x21, 0x01, 0x23, 0x60,
0x3f, 0x3e, 0x00, 0x10, 0x66, 0x05, 0x00, 0x0e, 0x9d, 0x02,
0x01, 0x46, 0x00, 0x80, 0x61, 0x00, 0x73, 0x75, 0x67, 0x67,
0x65, 0x73, 0x78, 0x01, 0x01, 0x17, 0x00, 0x31, 0x2e, 0x00,
0x55, 0x45, 0x00, 0x01, 0x6a, 0x04, 0xf0, 0x01, 0x69, 0x73,
0x00, 0x6e, 0x6f, 0x74, 0x00, 0x72, 0x65, 0x63, 0x6f, 0x6d,
0x6d, 0x65, 0x6e, 0x64, 0xac, 0x02, 0x20, 0x6f, 0x72, 0x5f,
0x04, 0x72, 0x6f, 0x72, 0x00, 0x6d, 0x6f, 0x72, 0x65, 0x01,
0x02, 0x20, 0x61, 0x73, 0x77, 0x02, 0x71, 0x69, 0x73, 0x00,
0x73, 0x6c, 0x6f, 0x77, 0x61, 0x03, 0x22, 0x68, 0x65, 0xe5,
0x00, 0x02, 0x6a, 0x00, 0x21, 0x69, 0x73, 0xf4, 0x05, 0x52,
0x6c, 0x65, 0x74, 0x65, 0x2c, 0x13, 0x01, 0xf2, 0x00, 0x6d,
0x61, 0x6c, 0x6c, 0x65, 0x72, 0x00, 0x66, 0x65, 0x65, 0x64,
0x62, 0x61, 0x63, 0x6b, 0x47, 0x00, 0x04, 0x31, 0x02, 0x50,
0x68, 0x69, 0x67, 0x68, 0x6c, 0x8f, 0x01, 0x45, 0x65, 0x64,
0x3b, 0x00, 0x96, 0x02, 0x02, 0x83, 0x03, 0x41, 0x73, 0x65,
0x00, 0x28, 0x7c, 0x00, 0x12, 0x76, 0xa5, 0x00, 0x01, 0x82,
0x00, 0x04, 0xfa, 0x01, 0x02, 0x56, 0x02, 0x16, 0x6d, 0x2c,
0x02, 0x52, 0x61, 0x72, 0x72, 0x6f, 0x77, 0xd5, 0x01, 0x01,
0x57, 0x03, 0x04, 0x22, 0x01, 0x0f, 0xc4, 0x01, 0x07, 0x12,
0x29, 0x86, 0x00, 0x00, 0x56, 0x01, 0x0e, 0x33, 0x01, 0x12,
0x2c, 0x89, 0x03, 0x73, 0x61, 0x6e, 0x79, 0x00, 0x68, 0x65,
0x6c, 0x0a, 0x06, 0x0d, 0xcb, 0x02, 0x02, 0xaa, 0x01, 0x01,
0x99, 0x03, 0x00, 0x19, 0x00, 0x19, 0x60, 0x43, 0x00, 0x17,
0x27, 0xb1, 0x01, 0x66, 0x49, 0x66, 0x00, 0x79, 0x6f, 0x75,
0x64, 0x06, 0x06, 0xa9, 0x03, 0x13, 0x61, 0xb1, 0x01, 0x03,
0x5f, 0x03, 0x61, 0x65, 0x00, 0x73, 0x6f, 0x6c, 0x75, 0x1a,
0x00, 0x04, 0x24, 0x01, 0x33, 0x64, 0x69, 0x73, 0xf6, 0x04,
0x6d, 0x65, 0x6e, 0x64, 0x77, 0x03, 0x20, 0x6f, 0x72, 0x2a,
0x05, 0x63, 0x6f, 0x72, 0x00, 0x6d, 0x6f, 0x72, 0x90, 0x00,
0x20, 0x61, 0x73, 0x42, 0x03, 0x71, 0x69, 0x73, 0x00, 0x73,
0x6c, 0x6f, 0x77, 0x2c, 0x04, 0x22, 0x68, 0x65, 0xbd, 0x01,
0x02, 0x6a, 0x00, 0x21, 0x69, 0x73, 0xbf, 0x06, 0x52, 0x6c,
0x65, 0x74, 0x65, 0x2c, 0x29, 0x01, 0xf4, 0x00, 0x6d, 0x61,
0x6c, 0x6c, 0x65, 0x72, 0x00, 0x66, 0x65, 0x65, 0x64, 0x62,
0x61, 0x63, 0x6b, 0xd7, 0x00, 0x02, 0xfc, 0x02, 0x50, 0x68,
0x69, 0x67, 0x68, 0x6c, 0x0b, 0x01, 0x45, 0x65, 0x64, 0x3b,
0x00, 0x61, 0x03, 0x02, 0x4e, 0x04, 0x41, 0x73, 0x65, 0x00,
0x28, 0x7c, 0x00, 0x12, 0x76, 0xa5, 0x00, 0x0f, 0x47, 0x01,
0x00, 0x16, 0x6d, 0xf7, 0x02, 0x52, 0x61, 0x72, 0x72, 0x6f,
0x77, 0xe6, 0x01, 0x01, 0x22, 0x04, 0x04, 0x22, 0x01, 0x01,
0x84, 0x00, 0x01, 0x23, 0x02, 0x30, 0x62, 0x61, 0x72, 0xcc,
0x00, 0x05, 0x9c, 0x02, 0x12, 0x29, 0x86, 0x00, 0x00, 0x2e,
0x02, 0x0e, 0x33, 0x01, 0x12, 0x2c, 0x54, 0x04, 0x73, 0x61,
0x6e, 0x79, 0x00, 0x68, 0x65, 0x6c, 0xd5, 0x06, 0x0d, 0x96,
0x03, 0x02, 0xfc, 0x01, 0x05, 0xe7, 0x01, 0x19, 0x60, 0x43,
0x00, 0x17, 0x27, 0x89, 0x02, 0x66, 0x49, 0x66, 0x00, 0x79,
0x6f, 0x75, 0x2f, 0x07, 0x06, 0x74, 0x04, 0x27, 0x61, 0x6c,
0xee, 0x01, 0x01, 0xad, 0x00, 0x31, 0x6f, 0x6c, 0x75, 0x1a,
0x00, 0x04, 0x24, 0x01, 0x33, 0x64, 0x69, 0x73, 0xc1, 0x05,
0x82, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x3b, 0x00, 0x69, 0x4d,
0x00, 0x77, 0x72, 0x75, 0x6e, 0x00, 0x6f, 0x75, 0x74, 0x85,
0x05, 0x01, 0x30, 0x01, 0x03, 0xd0, 0x02, 0xbe, 0x60, 0x53,
0x00, 0x77, 0x72, 0x75, 0x6e, 0x00, 0x6f, 0x75, 0x74, 0x50,
0x06, 0x01, 0x30, 0x01, 0x03, 0x9b, 0x03, 0xbe, 0x60, 0x53,
0x6f, 0x6c, 0x76, 0x65, 0x2e, 0x2e, 0x2e, 0x27, 0x29, 0x57,
0x00, 0x05, 0x97, 0x04, 0x71, 0x72, 0x65, 0x76, 0x65, 0x61,
0x6c, 0x65, 0x1b, 0x04, 0x23, 0x28, 0x41, 0x8b, 0x00, 0x11,
0x61, 0xa6, 0x05, 0xb0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x64, 0xc8, 0x02, 0x13, 0x73, 0xbc,
0x05, 0x72, 0x32, 0x2e, 0x31, 0x00, 0x61, 0x72, 0x65, 0x42,
0x00, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0x65, 0x2e, 0x29, 0xc4, 0x05, 0x13, 0x32, 0xc4, 0x05, 0x50,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x27, 0x08, 0x03, 0xc6, 0x05,
0x00, 0xcd, 0x01, 0x06, 0x14, 0x00, 0x02, 0x41, 0x00, 0x04,
0x3c, 0x00, 0x06, 0x80, 0x05, 0x21, 0x60, 0x43, 0xa4, 0x06,
0x00, 0xb5, 0x00, 0x31, 0x00, 0x6f, 0x70, 0x6f, 0x00, 0x03,
0x8e, 0x05, 0xc0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x4f, 0x00, 0x82, 0x00, 0x64,
0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x1c, 0x06, 0x62, 0x6d,
0x61, 0x74, 0x63, 0x68, 0x65, 0x3f, 0x01, 0x07, 0x66, 0x00,
0x13, 0x66, 0x0d, 0x06, 0x0f, 0x60, 0x07, 0x04, 0x00, 0xf4,
0x00, 0x13, 0x43, 0xf8, 0x06, 0x3d, 0x00, 0x00, 0x4e, 0x0c,
0x07, 0x09, 0x36, 0x01, 0x24, 0x69, 0x73, 0xc6, 0x03, 0x00,
0xae, 0x00, 0x12, 0x3b, 0xb4, 0x00, 0x12, 0x32, 0x2c, 0x07,
0x21, 0x00, 0x28, 0x20, 0x03, 0xa1, 0x69, 0x73, 0x00, 0x68,
0x61, 0x72, 0x64, 0x65, 0x72, 0x29, 0xa3, 0x03, 0x82, 0x65,
0x67, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x18, 0x03, 0x08,
0x61, 0x00, 0x05, 0x4f, 0x07, 0x02, 0x1b, 0x00, 0x0e, 0x3e,
0x00, 0x03, 0x4b, 0x07, 0x1a, 0x65, 0x37, 0x00, 0x04, 0xe5,
0x01, 0x00, 0xfc, 0x01, 0x04, 0x9a, 0x09, 0x4b, 0x66, 0x69,
0x6e, 0x64, 0xa9, 0x00, 0x8b, 0x6e, 0x00, 0x28, 0x66, 0x65,
0x77, 0x65, 0x72, 0x52, 0x00, 0x10, 0x41, 0x06, 0x08, 0x74,
0x20, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x73, 0x0f, 0x00, 0x21,
0x73, 0x00, 0x10, 0x00, 0x05, 0xdd, 0x02, 0x80, 0x62, 0x65,
0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0xe6, 0x03, 0x31, 0x70,
0x61, 0x72, 0x5b, 0x02, 0x15, 0x61, 0xa6, 0x00, 0x31, 0x61,
0x6b, 0x65, 0xfd, 0x03, 0x40, 0x65, 0x61, 0x73, 0x69, 0x65,
0x08, 0x71, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x90,
0x00, 0x00, 0xf0, 0x08, 0x02, 0x1d, 0x06, 0x10, 0x74, 0x26,
0x01, 0x02, 0x65, 0x02, 0x10, 0x6e, 0x8d, 0x08, 0x20, 0x00,
0x62, 0x8d, 0x09, 0x20, 0x75, 0x6e, 0x76, 0x04, 0x07, 0x57,
0x00, 0x08, 0xb4, 0x00, 0x10, 0x29, 0xd3, 0x01, 0x02, 0x83,
0x04, 0x30, 0x74, 0x75, 0x72, 0x57, 0x0a, 0x00, 0xd7, 0x06,
0x24, 0x62, 0x79, 0xe5, 0x01, 0x10, 0x2e, 0x07, 0x01, 0x34,
0x6f, 0x74, 0x65, 0x61, 0x00, 0xa2, 0x69, 0x73, 0x00, 0x64,
0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74, 0xdc, 0x08, 0x08, 0xc6,
0x00, 0x29, 0x69, 0x6e, 0x5b, 0x00, 0x06, 0x2d, 0x03, 0x11,
0x65, 0x93, 0x06, 0x21, 0x77, 0x61, 0x89, 0x00, 0x00, 0x49,
0x00, 0x20, 0x2c, 0x00, 0xbd, 0x00, 0x84, 0x6f, 0x6e, 0x65,
0x00, 0x65, 0x78, 0x74, 0x72, 0x13, 0x08, 0x06, 0x2b, 0x01,
0x97, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65,
0x2f, 0x01, 0x09, 0x6a, 0x01, 0x14, 0x28, 0x23, 0x06, 0x03,
0x99, 0x01, 0x12, 0x29, 0xbf, 0x07, 0x11, 0x6e, 0xde, 0x0a,
0x04, 0x45, 0x02, 0x01, 0xdc, 0x01, 0x30, 0x74, 0x68, 0x61,
0xca, 0x02, 0x33, 0x63, 0x65, 0x3b, 0x6c, 0x05, 0x51, 0x6e,
0x63, 0x72, 0x65, 0x61, 0xf1, 0x07, 0x01, 0x35, 0x06, 0x43,
0x61, 0x72, 0x63, 0x68, 0xa5, 0x04, 0x00, 0x67, 0x01, 0x03,
0x94, 0x05, 0x25, 0x6e, 0x67, 0xc1, 0x01, 0x02, 0x68, 0x04,
0x07, 0x20, 0x01, 0x14, 0x6e, 0x1f, 0x01, 0x50, 0x75, 0x6c,
0x74, 0x2e, 0x00,
0x00, 0x05, 0x05, 0x03, 0x71, 0x72, 0x65, 0x76, 0x65, 0x61,
0x6c, 0x65, 0xe6, 0x04, 0x23, 0x28, 0x41, 0x8b, 0x00, 0x11,
0x61, 0x71, 0x06, 0xb0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x64, 0xa0, 0x03, 0x13, 0x73, 0x87,
0x06, 0x63, 0x32, 0x2e, 0x31, 0x00, 0x61, 0x72, 0xe1, 0x02,
0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65,
0x2e, 0x29, 0x8f, 0x06, 0x13, 0x32, 0x8f, 0x06, 0x50, 0x70,
0x61, 0x72, 0x61, 0x6d, 0xf2, 0x08, 0x03, 0x91, 0x06, 0x00,
0xcd, 0x01, 0x06, 0x14, 0x00, 0x02, 0x41, 0x00, 0x04, 0x3c,
0x00, 0x06, 0x4b, 0x06, 0x21, 0x60, 0x43, 0x6f, 0x07, 0x00,
0xb5, 0x00, 0x31, 0x00, 0x6f, 0x70, 0x6f, 0x00, 0x03, 0x59,
0x06, 0xc1, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d,
0x65, 0x6e, 0x75, 0x2e, 0xd6, 0x03, 0x72, 0x64, 0x65, 0x66,
0x61, 0x75, 0x6c, 0x74, 0xe7, 0x06, 0x62, 0x6d, 0x61, 0x74,
0x63, 0x68, 0x65, 0x3f, 0x01, 0x07, 0x66, 0x00, 0x13, 0x66,
0xd8, 0x06, 0x0f, 0x2b, 0x08, 0x04, 0x00, 0xf4, 0x00, 0x13,
0x43, 0xc3, 0x07, 0x3d, 0x00, 0x00, 0x4e, 0xd7, 0x07, 0x09,
0x36, 0x01, 0x24, 0x69, 0x73, 0x9e, 0x04, 0x00, 0xae, 0x00,
0x12, 0x3b, 0xb4, 0x00, 0x12, 0x32, 0xf7, 0x07, 0x21, 0x00,
0x28, 0x20, 0x03, 0xa1, 0x69, 0x73, 0x00, 0x68, 0x61, 0x72,
0x64, 0x65, 0x72, 0x29, 0xa3, 0x03, 0x82, 0x65, 0x67, 0x73,
0x20, 0x70, 0x65, 0x72, 0x20, 0x18, 0x03, 0x08, 0x61, 0x00,
0x05, 0x1a, 0x08, 0x02, 0x1b, 0x00, 0x0e, 0x3e, 0x00, 0x03,
0x16, 0x08, 0x1a, 0x65, 0x37, 0x00, 0x04, 0xe5, 0x01, 0x00,
0xfc, 0x01, 0x04, 0x65, 0x0a, 0x4b, 0x66, 0x69, 0x6e, 0x64,
0xa9, 0x00, 0x8b, 0x6e, 0x00, 0x28, 0x66, 0x65, 0x77, 0x65,
0x72, 0x52, 0x00, 0x10, 0x41, 0xd1, 0x08, 0x74, 0x20, 0x62,
0x6c, 0x61, 0x6e, 0x6b, 0x73, 0x0f, 0x00, 0x21, 0x73, 0x00,
0x10, 0x00, 0x05, 0xdd, 0x02, 0x80, 0x62, 0x65, 0x00, 0x67,
0x69, 0x76, 0x65, 0x6e, 0xe6, 0x03, 0x31, 0x70, 0x61, 0x72,
0x5b, 0x02, 0x15, 0x61, 0xa6, 0x00, 0x31, 0x61, 0x6b, 0x65,
0xfd, 0x03, 0x40, 0x65, 0x61, 0x73, 0x69, 0x30, 0x09, 0x71,
0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x90, 0x00, 0x00,
0xbb, 0x09, 0x02, 0xe8, 0x06, 0x10, 0x74, 0x26, 0x01, 0x02,
0x65, 0x02, 0x10, 0x6e, 0x58, 0x09, 0x20, 0x00, 0x62, 0x58,
0x0a, 0x20, 0x75, 0x6e, 0x76, 0x04, 0x07, 0x57, 0x00, 0x08,
0xb4, 0x00, 0x10, 0x29, 0xd3, 0x01, 0x02, 0x83, 0x04, 0x30,
0x74, 0x75, 0x72, 0x22, 0x0b, 0x00, 0xa2, 0x07, 0x24, 0x62,
0x79, 0xe5, 0x01, 0x10, 0x2e, 0x07, 0x01, 0x34, 0x6f, 0x74,
0x65, 0x61, 0x00, 0xa2, 0x69, 0x73, 0x00, 0x64, 0x6f, 0x65,
0x73, 0x6e, 0x27, 0x74, 0xa7, 0x09, 0x08, 0xc6, 0x00, 0x29,
0x69, 0x6e, 0x5b, 0x00, 0x06, 0x2d, 0x03, 0x11, 0x65, 0x5e,
0x07, 0x21, 0x77, 0x61, 0x89, 0x00, 0x00, 0x49, 0x00, 0x10,
0x2c, 0x02, 0x06, 0x00, 0xc1, 0x05, 0x54, 0x00, 0x65, 0x78,
0x74, 0x72, 0xde, 0x08, 0x06, 0x2b, 0x01, 0x97, 0x64, 0x75,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2f, 0x01, 0x09,
0x6a, 0x01, 0x14, 0x28, 0xee, 0x06, 0x03, 0x99, 0x01, 0x12,
0x29, 0x8a, 0x08, 0x11, 0x6e, 0xa9, 0x0b, 0x04, 0x45, 0x02,
0x01, 0xdc, 0x01, 0x30, 0x74, 0x68, 0x61, 0xca, 0x02, 0x33,
0x63, 0x65, 0x3b, 0x6c, 0x05, 0x51, 0x6e, 0x63, 0x72, 0x65,
0x61, 0xbc, 0x08, 0x01, 0x4b, 0x06, 0x43, 0x61, 0x72, 0x63,
0x68, 0xa5, 0x04, 0x00, 0x67, 0x01, 0x03, 0x94, 0x05, 0x25,
0x6e, 0x67, 0xc1, 0x01, 0x02, 0x68, 0x04, 0x07, 0x20, 0x01,
0x1b, 0x6e, 0x1f, 0x01, 0x43, 0x31, 0x35, 0x2e, 0x33, 0x7b,
0x03, 0xb0, 0x75, 0x73, 0x65, 0x72, 0x20, 0x70, 0x72, 0x65,
0x66, 0x65, 0x72, 0x65, 0x0c, 0x01, 0x81, 0x03, 0x20, 0x4f,
0x6e, 0x86, 0x07, 0x53, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x8f,
0x08, 0x80, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x00,
0x2e, 0x00, 0x17, 0x00, 0x2e, 0x00, 0x12, 0x2c, 0x6f, 0x03,
0x16, 0x50, 0x12, 0x00, 0x0d, 0x8b, 0x03, 0x33, 0x47, 0x61,
0x6d, 0x8b, 0x03, 0x03, 0xb2, 0x06, 0x23, 0x65, 0x74, 0xdd,
0x04, 0xb1, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x00,
0x77, 0x68, 0x65, 0x65, 0x0a, 0x02, 0x32, 0x06, 0x22, 0x72,
0x65, 0xd5, 0x06, 0x3f, 0x6c, 0x65, 0x64, 0xcf, 0x06, 0x02,
0x53, 0x55, 0x6e, 0x6c, 0x69, 0x6b, 0x41, 0x05, 0x20, 0x4c,
0x27, 0x9a, 0x05, 0x03, 0x8c, 0x0b, 0x01, 0x5e, 0x00, 0x10,
0x70, 0x91, 0x0b, 0xf0, 0x03, 0x73, 0x74, 0x00, 0x62, 0x65,
0x74, 0x77, 0x65, 0x65, 0x6e, 0x00, 0x67, 0x61, 0x6d, 0x65,
0x73, 0x2e, 0x00,
};
const unsigned short help_text_len = 3042;
const unsigned short help_text_words = 572;
const unsigned short help_text_len = 3506;
const unsigned short help_text_words = 650;
const char quick_help_text[] = "Guess the hidden combination of colours.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,176 +6,177 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 39, TEXT_UNDERLINE },
{ 110, TEXT_UNDERLINE },
{ 196, TEXT_CENTER | C_RED },
{ 404, TEXT_CENTER | C_RED },
{ 421, TEXT_UNDERLINE },
{ 40, TEXT_UNDERLINE },
{ 111, TEXT_UNDERLINE },
{ 197, TEXT_CENTER | C_RED },
{ 405, TEXT_CENTER | C_RED },
{ 422, TEXT_UNDERLINE },
{ 423, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2266 comp 1565 ratio 0.690644 level 10 saved 701 */
/* orig 2286 comp 1571 ratio 0.687227 level 10 saved 715 */
const char help_text[] = {
0xf0, 0x1f, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x34, 0x3a, 0x20, 0x49, 0x6e, 0x65, 0x72, 0x74, 0x69,
0x61, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x61,
0x72, 0x65, 0x00, 0x61, 0x00, 0x73, 0x6d, 0x61, 0x6c, 0x6c,
0x00, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x00, 0x62, 0x0b, 0x00,
0xf0, 0x15, 0x73, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x00,
0x69, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00,
0x66, 0x75, 0x6c, 0x6c, 0x00, 0x6f, 0x66, 0x00, 0x6f, 0x62,
0x73, 0x74, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x2e, 0x40, 0x00,
0xf0, 0x05, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73,
0x00, 0x74, 0x6f, 0x00, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x74, 0x00, 0x40, 0x00, 0xf2, 0x06, 0x74, 0x68, 0x65, 0x00,
0x67, 0x65, 0x6d, 0x73, 0x00, 0x77, 0x69, 0x74, 0x68, 0x6f,
0x75, 0x74, 0x00, 0x72, 0x75, 0x6e, 0x6e, 0x51, 0x00, 0xa0,
0x74, 0x6f, 0x00, 0x61, 0x6e, 0x79, 0x00, 0x6d, 0x69, 0x6e,
0x44, 0x00, 0x02, 0x86, 0x00, 0x81, 0x63, 0x61, 0x6e, 0x00,
0x6d, 0x6f, 0x76, 0x65, 0x38, 0x00, 0x01, 0x81, 0x00, 0x21,
0x69, 0x6e, 0x26, 0x00, 0xf2, 0x02, 0x6f, 0x72, 0x74, 0x68,
0x6f, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x00, 0x6f, 0x72, 0x20,
0x64, 0x69, 0x61, 0x0c, 0x00, 0xe7, 0x64, 0x69, 0x72, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x00, 0x4f, 0x6e, 0x63,
0x37, 0x00, 0x60, 0x73, 0x74, 0x61, 0x72, 0x74, 0x73, 0x4c,
0x00, 0xf0, 0x13, 0x69, 0x6e, 0x67, 0x2c, 0x00, 0x69, 0x74,
0x00, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x63, 0x6f, 0x6e, 0x74,
0x69, 0x6e, 0x75, 0x65, 0x00, 0x75, 0x6e, 0x74, 0x69, 0x6c,
0x00, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x8f, 0x00, 0xf4,
0x00, 0x73, 0x74, 0x6f, 0x70, 0x73, 0x00, 0x69, 0x74, 0x2e,
0x00, 0x41, 0x00, 0x77, 0x61, 0x6c, 0x5a, 0x00, 0x20, 0x6c,
0x79, 0x81, 0x00, 0x82, 0x69, 0x74, 0x73, 0x00, 0x70, 0x61,
0x74, 0x68, 0x44, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x51, 0x00,
0x70, 0x28, 0x62, 0x75, 0x74, 0x00, 0x69, 0x66, 0x0b, 0x00,
0x14, 0x69, 0x6a, 0x00, 0x14, 0x00, 0x9a, 0x00, 0x26, 0x6c,
0x79, 0x75, 0x00, 0x03, 0xd1, 0x00, 0x85, 0x72, 0x6f, 0x75,
0x67, 0x68, 0x00, 0x61, 0x00, 0xbd, 0x00, 0x80, 0x67, 0x61,
0x70, 0x00, 0x62, 0x65, 0x74, 0x77, 0x6d, 0x01, 0x91, 0x74,
0x77, 0x6f, 0x00, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x7e, 0x00,
0x06, 0x2f, 0x01, 0x00, 0x6d, 0x00, 0xc1, 0x70, 0x69, 0x6e,
0x67, 0x29, 0x2e, 0x00, 0x41, 0x6c, 0x73, 0x6f, 0x2c, 0xb3,
0x00, 0x00, 0x7f, 0x01, 0x00, 0xea, 0x00, 0x71, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0xbc, 0x01, 0x11, 0x60, 0xc2,
0x00, 0x76, 0x27, 0x3b, 0x00, 0x77, 0x68, 0x65, 0x6e, 0x08,
0x01, 0x00, 0x7c, 0x00, 0x50, 0x73, 0x00, 0x6f, 0x6e, 0x00,
0x6e, 0x01, 0x01, 0x4e, 0x00, 0x06, 0x98, 0x00, 0x01, 0xc9,
0x00, 0x03, 0xb8, 0x00, 0x70, 0x6e, 0x6f, 0x00, 0x6d, 0x61,
0x74, 0x74, 0x80, 0x00, 0x36, 0x68, 0x61, 0x74, 0x58, 0x01,
0x01, 0x2d, 0x00, 0x52, 0x61, 0x73, 0x00, 0x67, 0x6f, 0xb5,
0x01, 0x30, 0x2e, 0x00, 0x47, 0xce, 0x01, 0x52, 0x64, 0x6f,
0x00, 0x6e, 0x6f, 0x9e, 0x00, 0x05, 0x6c, 0x00, 0x10, 0x3b,
0x2c, 0x00, 0x50, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x13, 0x00,
0xd1, 0x6d, 0x00, 0x75, 0x70, 0x00, 0x61, 0x6e, 0x64, 0x00,
0x6b, 0x65, 0x65, 0x70, 0x82, 0x00, 0x01, 0x43, 0x00, 0x00,
0xe9, 0x01, 0x19, 0x52, 0x03, 0x02, 0x01, 0x01, 0x02, 0x00,
0x42, 0x01, 0xb0, 0x66, 0x61, 0x74, 0x61, 0x6c, 0x2e, 0x00,
0x45, 0x76, 0x65, 0x6e, 0x57, 0x01, 0x31, 0x79, 0x6f, 0x75,
0x4e, 0x00, 0x42, 0x65, 0x64, 0x00, 0x75, 0x65, 0x00, 0x40,
0x6c, 0x61, 0x73, 0x74, 0x4d, 0x02, 0x00, 0x93, 0x01, 0x01,
0xff, 0x00, 0x32, 0x61, 0x6d, 0x65, 0x5d, 0x01, 0x70, 0x77,
0x68, 0x69, 0x63, 0x68, 0x00, 0x74, 0xfa, 0x00, 0x33, 0x68,
0x69, 0x74, 0x54, 0x00, 0x12, 0x2c, 0x7d, 0x02, 0x00, 0x25,
0x00, 0x03, 0xfc, 0x01, 0x31, 0x75, 0x6e, 0x74, 0x57, 0x00,
0xa1, 0x61, 0x73, 0x00, 0x64, 0x65, 0x61, 0x64, 0x00, 0x72,
0x61, 0x72, 0x01, 0xe1, 0x74, 0x68, 0x61, 0x6e, 0x00, 0x76,
0x69, 0x63, 0x74, 0x6f, 0x72, 0x69, 0x6f, 0x75, 0x8c, 0x02,
0x43, 0x54, 0x68, 0x69, 0x73, 0x3b, 0x00, 0x81, 0x61, 0x73,
0x00, 0x6f, 0x72, 0x69, 0x67, 0x69, 0xd5, 0x01, 0xf0, 0x16,
0x00, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
0x65, 0x64, 0x00, 0x66, 0x6f, 0x72, 0x00, 0x57, 0x69, 0x6e,
0x64, 0x6f, 0x77, 0x73, 0x00, 0x62, 0x79, 0x00, 0x42, 0x65,
0x6e, 0x00, 0x4f, 0x6c, 0x6d, 0x73, 0x74, 0x5b, 0x00, 0x91,
0x5b, 0x31, 0x31, 0x5d, 0x2c, 0x00, 0x77, 0x68, 0x6f, 0x41,
0x00, 0x71, 0x6b, 0x69, 0x6e, 0x64, 0x00, 0x65, 0x6e, 0x01,
0x02, 0xb0, 0x74, 0x6f, 0x00, 0x72, 0x65, 0x6c, 0x65, 0x61,
0x73, 0x65, 0x00, 0x65, 0x00, 0xb0, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x00, 0x63, 0x6f, 0x64, 0x65, 0x25, 0x01, 0xa0,
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x00, 0x73, 0x6f,
0x97, 0x00, 0x10, 0x74, 0x53, 0x01, 0xcc, 0x63, 0x6f, 0x75,
0x6c, 0x64, 0x00, 0x62, 0x65, 0x00, 0x72, 0x65, 0x2d, 0x7f,
0x00, 0x10, 0x74, 0x43, 0x00, 0x03, 0x70, 0x03, 0x01, 0x06,
0x03, 0x11, 0x00, 0x7a, 0x00, 0xf5, 0x09, 0x00, 0x68, 0x74,
0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x78, 0x6e, 0x31, 0x33, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x00, 0x00, 0x00, 0x32, 0x34, 0x2e,
0x31, 0xf5, 0x03, 0x00, 0x08, 0x03, 0x5f, 0x72, 0x6f, 0x6c,
0x73, 0x20, 0x78, 0x03, 0x0e, 0x02, 0x6a, 0x02, 0x47, 0x65,
0x69, 0x67, 0x68, 0x16, 0x02, 0x40, 0x73, 0x00, 0x75, 0x73,
0xc2, 0x01, 0x00, 0x1b, 0x00, 0xe0, 0x6e, 0x75, 0x6d, 0x65,
0x72, 0x69, 0x63, 0x00, 0x6b, 0x65, 0x79, 0x70, 0x61, 0x64,
0xa7, 0x02, 0x91, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
0x76, 0x65, 0x05, 0x03, 0x02, 0xca, 0x01, 0x52, 0x63, 0x6c,
0x69, 0x63, 0x6b, 0xc6, 0x01, 0xf2, 0x03, 0x65, 0x66, 0x74,
0x00, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x00, 0x62, 0x75, 0x74,
0x74, 0x6f, 0x6e, 0x00, 0x6f, 0xcf, 0x01, 0x00, 0x5e, 0x04,
0x16, 0x2c, 0x81, 0x00, 0x01, 0xb4, 0x01, 0x31, 0x62, 0x65,
0x67, 0x7a, 0x04, 0x01, 0x9c, 0x00, 0x23, 0x69, 0x6e, 0x4f,
0x04, 0x38, 0x6e, 0x65, 0x72, 0xfc, 0x03, 0x00, 0xa5, 0x00,
0x56, 0x77, 0x68, 0x65, 0x72, 0x65, 0x6a, 0x00, 0x20, 0x65,
0x64, 0x0b, 0x01, 0x12, 0x49, 0x7c, 0x00, 0x22, 0x75, 0x73,
0xd8, 0x00, 0xb3, 0x60, 0x53, 0x6f, 0x6c, 0x76, 0x65, 0x27,
0x00, 0x66, 0x75, 0x6e, 0x38, 0x00, 0x00, 0x51, 0x00, 0x03,
0xe9, 0x01, 0x02, 0x7a, 0x00, 0x74, 0x70, 0x72, 0x6f, 0x67,
0x72, 0x61, 0x6d, 0x31, 0x02, 0x40, 0x6d, 0x70, 0x75, 0x74,
0x17, 0x05, 0x01, 0xfd, 0x03, 0x04, 0xc2, 0x03, 0x04, 0xac,
0x00, 0x03, 0x76, 0x02, 0x03, 0x7e, 0x01, 0x15, 0x73, 0xef,
0x04, 0x51, 0x72, 0x65, 0x6d, 0x61, 0x69, 0xe1, 0x02, 0x01,
0xf9, 0x04, 0x00, 0x04, 0x03, 0x61, 0x72, 0x65, 0x74, 0x75,
0x72, 0x6e, 0x1d, 0x05, 0x00, 0x22, 0x00, 0xc2, 0x63, 0x75,
0x72, 0x72, 0x65, 0x6e, 0x74, 0x00, 0x70, 0x6f, 0x73, 0x69,
0xb7, 0x01, 0xc2, 0x41, 0x00, 0x68, 0x69, 0x6e, 0x74, 0x00,
0x61, 0x72, 0x72, 0x6f, 0x77, 0x7d, 0x00, 0x64, 0x61, 0x70,
0x70, 0x65, 0x61, 0x72, 0x1c, 0x01, 0x03, 0x93, 0x01, 0x54,
0x64, 0x69, 0x63, 0x61, 0x74, 0x79, 0x01, 0x07, 0xa4, 0x03,
0x13, 0x6e, 0x8c, 0x00, 0x00, 0xee, 0x00, 0x21, 0x73, 0x68,
0x30, 0x02, 0x02, 0xce, 0x01, 0x13, 0x6f, 0x42, 0x01, 0x04,
0xea, 0x00, 0x00, 0xc9, 0x00, 0x14, 0x2e, 0x18, 0x01, 0x01,
0x30, 0x03, 0x06, 0x5a, 0x01, 0x08, 0xf7, 0x03, 0x02, 0x0e,
0x01, 0x07, 0x8f, 0x00, 0x51, 0x75, 0x70, 0x64, 0x61, 0x74,
0x51, 0x00, 0x03, 0x86, 0x00, 0x12, 0x65, 0xfd, 0x01, 0x28,
0x65, 0x78, 0x2d, 0x04, 0x03, 0xae, 0x00, 0x02, 0x66, 0x00,
0x04, 0x58, 0x02, 0xf1, 0x01, 0x61, 0x6c, 0x73, 0x6f, 0x00,
0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x53, 0x70, 0x61, 0x63,
0x65, 0x8b, 0x04, 0x81, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74,
0x69, 0x63, 0x55, 0x03, 0x08, 0xde, 0x01, 0x09, 0xd6, 0x01,
0x00, 0x11, 0x00, 0x06, 0x19, 0x01, 0x05, 0xb9, 0x00, 0x04,
0x30, 0x00, 0x00, 0x4c, 0x05, 0x31, 0x66, 0x66, 0x65, 0x4c,
0x01, 0x06, 0x38, 0x00, 0x41, 0x66, 0x72, 0x6f, 0x6d, 0x3a,
0x00, 0x30, 0x6f, 0x6e, 0x65, 0x0e, 0x01, 0x20, 0x77, 0x6e,
0x9e, 0x03, 0x05, 0xd0, 0x00, 0x12, 0x2c, 0x07, 0x00, 0x14,
0x73, 0x61, 0x02, 0x03, 0x23, 0x00, 0x20, 0x6f, 0x6e, 0xde,
0x03, 0x12, 0x66, 0xc0, 0x00, 0x41, 0x75, 0x7a, 0x7a, 0x6c,
0x94, 0x04, 0x21, 0x73, 0x74, 0x29, 0x05, 0x70, 0x6f, 0x6c,
0x76, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x02, 0x13, 0x41, 0xe6,
0x01, 0x13, 0x61, 0x09, 0x03, 0x90, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x64, 0x91, 0x00, 0x13, 0x73, 0x83,
0x00, 0x32, 0x32, 0x2e, 0x31, 0x51, 0x07, 0x00, 0xfb, 0x00,
0x52, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x3f, 0x00, 0xd5, 0x49,
0x6e, 0x00, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c,
0x61, 0x72, 0x1c, 0x03, 0x20, 0x64, 0x6f, 0x16, 0x07, 0x09,
0x0f, 0x05, 0x00, 0x35, 0x02, 0x63, 0x64, 0x69, 0x65, 0x2c,
0x00, 0x79, 0x45, 0x01, 0x04, 0xc4, 0x02, 0x46, 0x55, 0x6e,
0x64, 0x6f, 0xc1, 0x02, 0x02, 0x5c, 0x02, 0x90, 0x73, 0x75,
0x6d, 0x65, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x1a, 0x02, 0x01,
0xfe, 0x00, 0x52, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x31, 0x00,
0x01, 0x56, 0x05, 0x01, 0x32, 0x01, 0x39, 0x2e, 0x00, 0x54,
0x10, 0x05, 0x00, 0x99, 0x05, 0x64, 0x00, 0x74, 0x72, 0x61,
0x63, 0x6b, 0x6b, 0x01, 0x61, 0x6e, 0x75, 0x6d, 0x62, 0x65,
0x72, 0x0e, 0x00, 0x41, 0x69, 0x6d, 0x65, 0x73, 0x7d, 0x00,
0x60, 0x68, 0x61, 0x76, 0x65, 0x00, 0x64, 0x4b, 0x01, 0x00,
0x41, 0x02, 0x12, 0x2e, 0x49, 0x04, 0x15, 0x32, 0x49, 0x04,
0xb1, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
0x73, 0x20, 0x37, 0x05, 0x46, 0x65, 0x73, 0x65, 0x00, 0x14,
0x00, 0x02, 0x05, 0x01, 0x04, 0x00, 0x01, 0x06, 0x9a, 0x01,
0xe8, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x3b, 0x02, 0xb0, 0x60, 0x54,
0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x6c,
0x00, 0x82, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48,
0x80, 0x04, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0xfe, 0x06,
0x01, 0x80, 0x03, 0x00, 0x71, 0x01, 0x80, 0x71, 0x75, 0x61,
0x72, 0x65, 0x73, 0x2e, 0x00,
0x61, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf0, 0x0b, 0x00, 0x00,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x61,
0x00, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x00, 0x67, 0x72, 0x65,
0x65, 0x6e, 0x00, 0x62, 0x0b, 0x00, 0xf0, 0x15, 0x73, 0x69,
0x74, 0x74, 0x69, 0x6e, 0x67, 0x00, 0x69, 0x6e, 0x00, 0x61,
0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x66, 0x75, 0x6c, 0x6c,
0x00, 0x6f, 0x66, 0x00, 0x6f, 0x62, 0x73, 0x74, 0x61, 0x63,
0x6c, 0x65, 0x73, 0x2e, 0x40, 0x00, 0xf0, 0x05, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00,
0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x00, 0x40, 0x00,
0xf2, 0x06, 0x74, 0x68, 0x65, 0x00, 0x67, 0x65, 0x6d, 0x73,
0x00, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x00, 0x72,
0x75, 0x6e, 0x6e, 0x51, 0x00, 0xa0, 0x74, 0x6f, 0x00, 0x61,
0x6e, 0x79, 0x00, 0x6d, 0x69, 0x6e, 0x44, 0x00, 0x02, 0x86,
0x00, 0x81, 0x63, 0x61, 0x6e, 0x00, 0x6d, 0x6f, 0x76, 0x65,
0x38, 0x00, 0x01, 0x81, 0x00, 0x21, 0x69, 0x6e, 0x26, 0x00,
0xf2, 0x02, 0x6f, 0x72, 0x74, 0x68, 0x6f, 0x67, 0x6f, 0x6e,
0x61, 0x6c, 0x00, 0x6f, 0x72, 0x20, 0x64, 0x69, 0x61, 0x0c,
0x00, 0xe7, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x2e, 0x00, 0x4f, 0x6e, 0x63, 0x37, 0x00, 0x60, 0x73,
0x74, 0x61, 0x72, 0x74, 0x73, 0x4c, 0x00, 0xf0, 0x13, 0x69,
0x6e, 0x67, 0x2c, 0x00, 0x69, 0x74, 0x00, 0x77, 0x69, 0x6c,
0x6c, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65,
0x00, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x00, 0x73, 0x6f, 0x6d,
0x65, 0x74, 0x68, 0x8f, 0x00, 0xf4, 0x00, 0x73, 0x74, 0x6f,
0x70, 0x73, 0x00, 0x69, 0x74, 0x2e, 0x00, 0x41, 0x00, 0x77,
0x61, 0x6c, 0x5a, 0x00, 0x20, 0x6c, 0x79, 0x81, 0x00, 0x82,
0x69, 0x74, 0x73, 0x00, 0x70, 0x61, 0x74, 0x68, 0x44, 0x00,
0x00, 0x2b, 0x00, 0x00, 0x51, 0x00, 0x70, 0x28, 0x62, 0x75,
0x74, 0x00, 0x69, 0x66, 0x0b, 0x00, 0x14, 0x69, 0x6a, 0x00,
0x14, 0x00, 0x9a, 0x00, 0x26, 0x6c, 0x79, 0x75, 0x00, 0x03,
0xd1, 0x00, 0x85, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x00, 0x61,
0x00, 0xbd, 0x00, 0x80, 0x67, 0x61, 0x70, 0x00, 0x62, 0x65,
0x74, 0x77, 0x6d, 0x01, 0x91, 0x74, 0x77, 0x6f, 0x00, 0x6f,
0x74, 0x68, 0x65, 0x72, 0x7e, 0x00, 0x06, 0x2f, 0x01, 0x00,
0x6d, 0x00, 0xc1, 0x70, 0x69, 0x6e, 0x67, 0x29, 0x2e, 0x00,
0x41, 0x6c, 0x73, 0x6f, 0x2c, 0xb3, 0x00, 0x00, 0x7f, 0x01,
0x00, 0xea, 0x00, 0x71, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65,
0x73, 0xbc, 0x01, 0x11, 0x60, 0xc2, 0x00, 0x76, 0x27, 0x3b,
0x00, 0x77, 0x68, 0x65, 0x6e, 0x08, 0x01, 0x00, 0x7c, 0x00,
0x50, 0x73, 0x00, 0x6f, 0x6e, 0x00, 0x6e, 0x01, 0x01, 0x4e,
0x00, 0x06, 0x98, 0x00, 0x01, 0xc9, 0x00, 0x03, 0xb8, 0x00,
0x70, 0x6e, 0x6f, 0x00, 0x6d, 0x61, 0x74, 0x74, 0x80, 0x00,
0x36, 0x68, 0x61, 0x74, 0x58, 0x01, 0x01, 0x2d, 0x00, 0x52,
0x61, 0x73, 0x00, 0x67, 0x6f, 0xb5, 0x01, 0x30, 0x2e, 0x00,
0x47, 0xce, 0x01, 0x52, 0x64, 0x6f, 0x00, 0x6e, 0x6f, 0x9e,
0x00, 0x05, 0x6c, 0x00, 0x10, 0x3b, 0x2c, 0x00, 0x50, 0x70,
0x69, 0x63, 0x6b, 0x73, 0x13, 0x00, 0xd1, 0x6d, 0x00, 0x75,
0x70, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x6b, 0x65, 0x65, 0x70,
0x82, 0x00, 0x01, 0x43, 0x00, 0x00, 0xe9, 0x01, 0x19, 0x52,
0x03, 0x02, 0x01, 0x01, 0x02, 0x00, 0x42, 0x01, 0xb0, 0x66,
0x61, 0x74, 0x61, 0x6c, 0x2e, 0x00, 0x45, 0x76, 0x65, 0x6e,
0x57, 0x01, 0x31, 0x79, 0x6f, 0x75, 0x4e, 0x00, 0x42, 0x65,
0x64, 0x00, 0x75, 0x65, 0x00, 0x40, 0x6c, 0x61, 0x73, 0x74,
0x4d, 0x02, 0x00, 0x93, 0x01, 0x01, 0xff, 0x00, 0x32, 0x61,
0x6d, 0x65, 0x5d, 0x01, 0x70, 0x77, 0x68, 0x69, 0x63, 0x68,
0x00, 0x74, 0xfa, 0x00, 0x33, 0x68, 0x69, 0x74, 0x54, 0x00,
0x12, 0x2c, 0x7d, 0x02, 0x00, 0x25, 0x00, 0x03, 0xfc, 0x01,
0x31, 0x75, 0x6e, 0x74, 0x57, 0x00, 0xa1, 0x61, 0x73, 0x00,
0x64, 0x65, 0x61, 0x64, 0x00, 0x72, 0x61, 0x72, 0x01, 0xe1,
0x74, 0x68, 0x61, 0x6e, 0x00, 0x76, 0x69, 0x63, 0x74, 0x6f,
0x72, 0x69, 0x6f, 0x75, 0x8c, 0x02, 0x43, 0x54, 0x68, 0x69,
0x73, 0x3b, 0x00, 0x81, 0x61, 0x73, 0x00, 0x6f, 0x72, 0x69,
0x67, 0x69, 0xd5, 0x01, 0xf0, 0x16, 0x00, 0x69, 0x6d, 0x70,
0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x00, 0x66,
0x6f, 0x72, 0x00, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73,
0x00, 0x62, 0x79, 0x00, 0x42, 0x65, 0x6e, 0x00, 0x4f, 0x6c,
0x6d, 0x73, 0x74, 0x5b, 0x00, 0x91, 0x5b, 0x31, 0x31, 0x5d,
0x2c, 0x00, 0x77, 0x68, 0x6f, 0x41, 0x00, 0x71, 0x6b, 0x69,
0x6e, 0x64, 0x00, 0x65, 0x6e, 0x01, 0x02, 0xb0, 0x74, 0x6f,
0x00, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x00, 0x65,
0x00, 0xb0, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x00, 0x63,
0x6f, 0x64, 0x65, 0x25, 0x01, 0xa0, 0x72, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x00, 0x73, 0x6f, 0x97, 0x00, 0x10, 0x74,
0x53, 0x01, 0xcc, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x62,
0x65, 0x00, 0x72, 0x65, 0x2d, 0x7f, 0x00, 0x10, 0x74, 0x43,
0x00, 0x03, 0x70, 0x03, 0x01, 0x06, 0x03, 0x11, 0x00, 0x7a,
0x00, 0xf5, 0x09, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
0x2f, 0x78, 0x6e, 0x31, 0x33, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
0x00, 0x00, 0x00, 0x32, 0x34, 0x2e, 0x31, 0x09, 0x04, 0x00,
0x08, 0x03, 0x5f, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x78, 0x03,
0x0e, 0x02, 0x6a, 0x02, 0x47, 0x65, 0x69, 0x67, 0x68, 0x16,
0x02, 0x40, 0x73, 0x00, 0x75, 0x73, 0xc2, 0x01, 0x00, 0x1b,
0x00, 0xe0, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x00,
0x6b, 0x65, 0x79, 0x70, 0x61, 0x64, 0xa7, 0x02, 0x91, 0x74,
0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x05, 0x03,
0x02, 0xca, 0x01, 0x52, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xc6,
0x01, 0xf2, 0x03, 0x65, 0x66, 0x74, 0x00, 0x6d, 0x6f, 0x75,
0x73, 0x65, 0x00, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x00,
0x6f, 0xcf, 0x01, 0x00, 0x5e, 0x04, 0x16, 0x2c, 0x81, 0x00,
0x01, 0xb4, 0x01, 0x31, 0x62, 0x65, 0x67, 0x7a, 0x04, 0x01,
0x9c, 0x00, 0x23, 0x69, 0x6e, 0x4f, 0x04, 0x38, 0x6e, 0x65,
0x72, 0xfc, 0x03, 0x00, 0xa5, 0x00, 0x56, 0x77, 0x68, 0x65,
0x72, 0x65, 0x6a, 0x00, 0x20, 0x65, 0x64, 0x0b, 0x01, 0x12,
0x49, 0x7c, 0x00, 0x22, 0x75, 0x73, 0xd8, 0x00, 0xb3, 0x60,
0x53, 0x6f, 0x6c, 0x76, 0x65, 0x27, 0x00, 0x66, 0x75, 0x6e,
0x38, 0x00, 0x00, 0x51, 0x00, 0x03, 0xe9, 0x01, 0x02, 0x7a,
0x00, 0x74, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31,
0x02, 0x40, 0x6d, 0x70, 0x75, 0x74, 0x17, 0x05, 0x01, 0xfd,
0x03, 0x04, 0xc2, 0x03, 0x04, 0xac, 0x00, 0x03, 0x76, 0x02,
0x03, 0x7e, 0x01, 0x15, 0x73, 0xef, 0x04, 0x51, 0x72, 0x65,
0x6d, 0x61, 0x69, 0xe1, 0x02, 0x01, 0xf9, 0x04, 0x00, 0x04,
0x03, 0x61, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x1d, 0x05,
0x00, 0x22, 0x00, 0xc2, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x74, 0x00, 0x70, 0x6f, 0x73, 0x69, 0xb7, 0x01, 0xc2, 0x41,
0x00, 0x68, 0x69, 0x6e, 0x74, 0x00, 0x61, 0x72, 0x72, 0x6f,
0x77, 0x7d, 0x00, 0x64, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72,
0x1c, 0x01, 0x03, 0x93, 0x01, 0x54, 0x64, 0x69, 0x63, 0x61,
0x74, 0x79, 0x01, 0x07, 0xa4, 0x03, 0x13, 0x6e, 0x8c, 0x00,
0x00, 0xee, 0x00, 0x21, 0x73, 0x68, 0x30, 0x02, 0x02, 0xce,
0x01, 0x13, 0x6f, 0x42, 0x01, 0x04, 0xea, 0x00, 0x00, 0xc9,
0x00, 0x14, 0x2e, 0x18, 0x01, 0x01, 0x30, 0x03, 0x06, 0x5a,
0x01, 0x08, 0xf7, 0x03, 0x02, 0x0e, 0x01, 0x07, 0x8f, 0x00,
0x51, 0x75, 0x70, 0x64, 0x61, 0x74, 0x51, 0x00, 0x03, 0x86,
0x00, 0x12, 0x65, 0xfd, 0x01, 0x28, 0x65, 0x78, 0x2d, 0x04,
0x03, 0xae, 0x00, 0x02, 0x66, 0x00, 0x04, 0x58, 0x02, 0xf1,
0x01, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x70, 0x72, 0x65, 0x73,
0x73, 0x00, 0x53, 0x70, 0x61, 0x63, 0x65, 0x8b, 0x04, 0x81,
0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x55, 0x03,
0x08, 0xde, 0x01, 0x09, 0xd6, 0x01, 0x00, 0x11, 0x00, 0x06,
0x19, 0x01, 0x05, 0xb9, 0x00, 0x04, 0x30, 0x00, 0x00, 0x4c,
0x05, 0x31, 0x66, 0x66, 0x65, 0x4c, 0x01, 0x06, 0x38, 0x00,
0x41, 0x66, 0x72, 0x6f, 0x6d, 0x3a, 0x00, 0x30, 0x6f, 0x6e,
0x65, 0x0e, 0x01, 0x20, 0x77, 0x6e, 0x9e, 0x03, 0x05, 0xd0,
0x00, 0x12, 0x2c, 0x07, 0x00, 0x14, 0x73, 0x61, 0x02, 0x03,
0x23, 0x00, 0x20, 0x6f, 0x6e, 0xde, 0x03, 0x12, 0x66, 0xc0,
0x00, 0x41, 0x75, 0x7a, 0x7a, 0x6c, 0x94, 0x04, 0x21, 0x73,
0x74, 0x29, 0x05, 0x70, 0x6f, 0x6c, 0x76, 0x61, 0x62, 0x6c,
0x65, 0x54, 0x02, 0x13, 0x41, 0xe6, 0x01, 0x13, 0x61, 0x09,
0x03, 0x90, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x64, 0x91, 0x00, 0x13, 0x73, 0x83, 0x00, 0x32, 0x32, 0x2e,
0x31, 0x51, 0x07, 0x00, 0xfb, 0x00, 0x52, 0x61, 0x76, 0x61,
0x69, 0x6c, 0x3f, 0x00, 0xd5, 0x49, 0x6e, 0x00, 0x70, 0x61,
0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x1c, 0x03,
0x20, 0x64, 0x6f, 0x16, 0x07, 0x09, 0x0f, 0x05, 0x00, 0x35,
0x02, 0x63, 0x64, 0x69, 0x65, 0x2c, 0x00, 0x79, 0x45, 0x01,
0x04, 0xc4, 0x02, 0x46, 0x55, 0x6e, 0x64, 0x6f, 0xc1, 0x02,
0x02, 0x5c, 0x02, 0x90, 0x73, 0x75, 0x6d, 0x65, 0x00, 0x70,
0x6c, 0x61, 0x79, 0x1a, 0x02, 0x01, 0xfe, 0x00, 0x52, 0x62,
0x65, 0x66, 0x6f, 0x72, 0x31, 0x00, 0x01, 0x56, 0x05, 0x01,
0x32, 0x01, 0x39, 0x2e, 0x00, 0x54, 0x10, 0x05, 0x00, 0x99,
0x05, 0x64, 0x00, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x6b, 0x01,
0x61, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x0e, 0x00, 0x41,
0x69, 0x6d, 0x65, 0x73, 0x7d, 0x00, 0x60, 0x68, 0x61, 0x76,
0x65, 0x00, 0x64, 0x4b, 0x01, 0x00, 0x41, 0x02, 0x12, 0x2e,
0x49, 0x04, 0x15, 0x32, 0x49, 0x04, 0xb1, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x37, 0x05,
0x46, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x05, 0x01,
0x04, 0x00, 0x01, 0x06, 0x9a, 0x01, 0xe8, 0x60, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f,
0x70, 0x3b, 0x02, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0x6c, 0x00, 0x82, 0x57, 0x69,
0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x80, 0x04, 0x51, 0x00,
0x00, 0x53, 0x69, 0x7a, 0xfe, 0x06, 0x01, 0x80, 0x03, 0x00,
0x71, 0x01, 0x80, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2e,
0x00,
};
const unsigned short help_text_len = 2266;
const unsigned short help_text_words = 430;
const unsigned short help_text_len = 2286;
const unsigned short help_text_words = 431;
const char quick_help_text[] = "Collect all the gems without running into any of the mines.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,257 +6,258 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 324, TEXT_CENTER | C_RED },
{ 391, TEXT_UNDERLINE },
{ 649, TEXT_CENTER | C_RED },
{ 666, TEXT_UNDERLINE },
{ 698, TEXT_UNDERLINE },
{ 737, TEXT_UNDERLINE },
{ 325, TEXT_CENTER | C_RED },
{ 392, TEXT_UNDERLINE },
{ 650, TEXT_CENTER | C_RED },
{ 667, TEXT_UNDERLINE },
{ 699, TEXT_UNDERLINE },
{ 738, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 3952 comp 2376 ratio 0.601215 level 10 saved 1576 */
/* orig 3969 comp 2383 ratio 0.600403 level 10 saved 1586 */
const char help_text[] = {
0xf4, 0x21, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfb, 0x04, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x30, 0x3a, 0x20, 0x4b, 0x65, 0x65, 0x6e, 0x20, 0x00,
0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65,
0x00, 0x61, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x00,
0x67, 0x72, 0x69, 0x64, 0x3b, 0x00, 0x65, 0x61, 0x63, 0x68,
0x12, 0x00, 0xf1, 0x1a, 0x6d, 0x61, 0x79, 0x00, 0x63, 0x6f,
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x61, 0x00, 0x64, 0x69,
0x67, 0x69, 0x74, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x31,
0x00, 0x74, 0x6f, 0x00, 0x74, 0x68, 0x65, 0x00, 0x73, 0x69,
0x7a, 0x65, 0x00, 0x6f, 0x66, 0x0c, 0x00, 0x00, 0x40, 0x00,
0x33, 0x2e, 0x00, 0x54, 0x0a, 0x00, 0xf0, 0x08, 0x00, 0x69,
0x73, 0x00, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x64, 0x00,
0x69, 0x6e, 0x74, 0x6f, 0x00, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
0x73, 0x2d, 0x00, 0xf1, 0x02, 0x76, 0x61, 0x72, 0x79, 0x69,
0x6e, 0x67, 0x00, 0x73, 0x68, 0x61, 0x70, 0x65, 0x00, 0x61,
0x6e, 0x64, 0x47, 0x00, 0xf0, 0x13, 0x2c, 0x00, 0x77, 0x69,
0x74, 0x68, 0x00, 0x61, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x65,
0x74, 0x69, 0x63, 0x00, 0x63, 0x6c, 0x75, 0x65, 0x73, 0x00,
0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x00, 0x69, 0x6e,
0x66, 0x00, 0x20, 0x6d, 0x2e, 0xba, 0x00, 0x50, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x62, 0x00, 0xf5, 0x02, 0x74, 0x6f, 0x00,
0x66, 0x75, 0x6c, 0x6c, 0x79, 0x00, 0x70, 0x6f, 0x70, 0x75,
0x6c, 0x61, 0x74, 0x65, 0x8a, 0x00, 0x02, 0x4e, 0x00, 0x01,
0xb4, 0x00, 0xf0, 0x03, 0x73, 0x00, 0x73, 0x75, 0x63, 0x68,
0x00, 0x74, 0x68, 0x61, 0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d,
0x00, 0x45, 0xe4, 0x00, 0x34, 0x72, 0x6f, 0x77, 0xdd, 0x00,
0xf1, 0x05, 0x73, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x00, 0x6f,
0x6e, 0x65, 0x00, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65,
0x6e, 0x63, 0xd7, 0x00, 0x01, 0x0d, 0x01, 0x02, 0xf8, 0x00,
0x05, 0x38, 0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,
0x3b, 0x00, 0x1d, 0x00, 0x17, 0x01, 0x03, 0x8d, 0x00, 0x22,
0x69, 0x6e, 0x1d, 0x00, 0x01, 0x11, 0x01, 0xf1, 0x01, 0x00,
0x63, 0x61, 0x6e, 0x00, 0x62, 0x65, 0x00, 0x63, 0x6f, 0x6d,
0x62, 0x69, 0x6e, 0x65, 0x64, 0xd2, 0x00, 0x31, 0x6f, 0x72,
0x6d, 0xc8, 0x00, 0xd3, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x00, 0x73, 0x74, 0x61, 0x74, 0x65, 0x64, 0x01, 0x01, 0x01,
0x16, 0x01, 0x40, 0x2c, 0x00, 0x75, 0x73, 0x42, 0x01, 0x00,
0x10, 0x00, 0x07, 0x31, 0x01, 0xf8, 0x00, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x67, 0x69, 0x76,
0x65, 0x6e, 0x32, 0x00, 0x00, 0x99, 0x01, 0x52, 0x61, 0x74,
0x00, 0x69, 0x73, 0x02, 0x01, 0x71, 0x41, 0x6e, 0x00, 0x61,
0x64, 0x64, 0x69, 0x2c, 0x00, 0x00, 0x1f, 0x00, 0x61, 0x00,
0x6d, 0x65, 0x61, 0x6e, 0x73, 0x23, 0x01, 0x02, 0xd8, 0x01,
0x24, 0x75, 0x6d, 0xd7, 0x01, 0x06, 0xb6, 0x00, 0x00, 0x0e,
0x00, 0x02, 0xb5, 0x00, 0x63, 0x6d, 0x75, 0x73, 0x74, 0x00,
0x62, 0x6d, 0x01, 0x01, 0x6b, 0x00, 0x02, 0xab, 0x00, 0xf5,
0x05, 0x2e, 0x00, 0x46, 0x6f, 0x72, 0x00, 0x65, 0x78, 0x61,
0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x00, 0x60, 0x31, 0x35, 0x2b,
0x27, 0x5b, 0x00, 0x11, 0x65, 0x34, 0x01, 0x31, 0x65, 0x6e,
0x74, 0x05, 0x02, 0x06, 0x4d, 0x00, 0x71, 0x61, 0x64, 0x64,
0x73, 0x00, 0x75, 0x70, 0xfa, 0x00, 0x72, 0x69, 0x66, 0x74,
0x65, 0x65, 0x6e, 0x2e, 0xa4, 0x00, 0xb6, 0x00, 0x6d, 0x75,
0x6c, 0x74, 0x69, 0x70, 0x6c, 0x69, 0x63, 0x61, 0xa9, 0x00,
0xfc, 0x09, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x00, 0x60, 0x36,
0x30, 0x2a, 0x27, 0x29, 0x2c, 0x00, 0x73, 0x69, 0x6d, 0x69,
0x6c, 0x61, 0x72, 0x6c, 0x79, 0x2c, 0xc2, 0x00, 0x7f, 0x70,
0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0xc6, 0x00, 0x23, 0x02,
0x7f, 0x00, 0x76, 0x73, 0x75, 0x62, 0x74, 0x72, 0x61, 0x63,
0x7c, 0x00, 0xb0, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x61, 0x6c,
0x77, 0x61, 0x79, 0x73, 0x38, 0x00, 0x07, 0x9a, 0x02, 0x13,
0x61, 0x53, 0x00, 0x22, 0x6f, 0x66, 0x13, 0x03, 0x41, 0x74,
0x77, 0x6f, 0x2c, 0xda, 0x02, 0x28, 0x69, 0x74, 0x99, 0x00,
0x01, 0x27, 0x02, 0x0f, 0x91, 0x00, 0x07, 0xa0, 0x69, 0x73,
0x00, 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x2f, 0x00,
0x02, 0x1a, 0x00, 0x87, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x00,
0x62, 0x79, 0xa6, 0x00, 0x6c, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
0x74, 0x6c, 0x01, 0x3f, 0x32, 0x2d, 0x27, 0x6b, 0x00, 0x1b,
0x6b, 0x32, 0x00, 0x6d, 0x6f, 0x72, 0x65, 0x6a, 0x00, 0x20,
0x2c, 0x00, 0x55, 0x00, 0xb6, 0x71, 0x75, 0x69, 0x76, 0x61,
0x6c, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x4e, 0x00, 0x02, 0xcd,
0x02, 0x57, 0x6d, 0x69, 0x6e, 0x75, 0x73, 0x9a, 0x00, 0x00,
0x1a, 0x00, 0x00, 0x4d, 0x00, 0x02, 0xfa, 0x03, 0x34, 0x74,
0x77, 0x6f, 0x6f, 0x00, 0x50, 0x63, 0x6f, 0x75, 0x6c, 0x64,
0x27, 0x01, 0x21, 0x65, 0x69, 0x29, 0x00, 0xf4, 0x02, 0x77,
0x61, 0x79, 0x00, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x00,
0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x67, 0x01, 0x00, 0x26,
0x04, 0x1c, 0x73, 0xe0, 0x01, 0x2b, 0x33, 0x2f, 0xdf, 0x01,
0x24, 0x69, 0x73, 0x7a, 0x01, 0x0f, 0x6f, 0x01, 0x03, 0x01,
0x6e, 0x01, 0x0b, 0x00, 0x01, 0x02, 0xb2, 0x00, 0x04, 0x86,
0x04, 0x27, 0x62, 0x79, 0xb7, 0x00, 0x20, 0x69, 0x73, 0xe6,
0x00, 0x24, 0x61, 0x6c, 0xc9, 0x04, 0x0a, 0x5a, 0x01, 0x62,
0x00, 0x00, 0x4e, 0x6f, 0x74, 0x65, 0x49, 0x00, 0x04, 0x6c,
0x00, 0x08, 0x0d, 0x05, 0x01, 0x23, 0x03, 0x25, 0x61, 0x6d,
0x14, 0x01, 0x05, 0x48, 0x01, 0x10, 0x6f, 0xfe, 0x03, 0x42,
0x28, 0x70, 0x72, 0x6f, 0x73, 0x00, 0x00, 0x28, 0x00, 0x90,
0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x93,
0x00, 0x20, 0x73, 0x00, 0x58, 0x05, 0x48, 0x6e, 0x6f, 0x74,
0x00, 0x46, 0x00, 0x00, 0x8b, 0x04, 0x00, 0xbf, 0x00, 0x02,
0x5b, 0x04, 0x10, 0x29, 0x4b, 0x01, 0x61, 0x69, 0x73, 0x00,
0x72, 0x75, 0x6c, 0x5b, 0x01, 0x83, 0x70, 0x72, 0x65, 0x63,
0x69, 0x73, 0x65, 0x6c, 0xbf, 0x00, 0x65, 0x70, 0x70, 0x6f,
0x73, 0x69, 0x74, 0xdd, 0x01, 0x02, 0x26, 0x00, 0xf2, 0x0e,
0x6e, 0x00, 0x53, 0x6f, 0x6c, 0x6f, 0x27, 0x73, 0x00, 0x60,
0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x27, 0x00, 0x6d, 0x6f,
0x64, 0x65, 0x00, 0x28, 0x73, 0x65, 0x65, 0x00, 0x63, 0xfe,
0x05, 0x40, 0x00, 0x31, 0x31, 0x29, 0xda, 0x00, 0x01, 0x5c,
0x00, 0xd5, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x61,
0x70, 0x70, 0x65, 0x61, 0x72, 0x1b, 0x02, 0xb2, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x00, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x80,
0x04, 0x00, 0x9d, 0x00, 0x80, 0x60, 0x4b, 0x65, 0x6e, 0x4b,
0x65, 0x6e, 0x27, 0x3c, 0x00, 0x42, 0x33, 0x30, 0x2e, 0x31,
0x42, 0x06, 0x00, 0x0a, 0x01, 0x40, 0x72, 0x6f, 0x6c, 0x73,
0x4b, 0x06, 0x00, 0x11, 0x00, 0x00, 0xcd, 0x05, 0x50, 0x72,
0x65, 0x73, 0x00, 0x6d, 0x6a, 0x05, 0x32, 0x6f, 0x66, 0x00,
0x02, 0x02, 0x01, 0x24, 0x00, 0x72, 0x00, 0x73, 0x79, 0x73,
0x74, 0x65, 0x6d, 0x91, 0x05, 0x00, 0xa7, 0x00, 0x20, 0x00,
0x28, 0xed, 0x00, 0x21, 0x55, 0x6e, 0x81, 0x01, 0x02, 0x94,
0x00, 0x61, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x4a, 0x00,
0x01, 0xf6, 0x01, 0x91, 0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c,
0x69, 0x63, 0x6b, 0x88, 0x00, 0x51, 0x6d, 0x6f, 0x75, 0x73,
0x65, 0xf8, 0x01, 0x84, 0x6e, 0x79, 0x00, 0x65, 0x6d, 0x70,
0x74, 0x79, 0xa2, 0x06, 0x21, 0x61, 0x6e, 0x65, 0x01, 0x65,
0x6e, 0x00, 0x74, 0x79, 0x70, 0x65, 0xa4, 0x06, 0x12, 0x6f,
0xcf, 0x00, 0x72, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72,
0x54, 0x05, 0x00, 0xbb, 0x03, 0x01, 0xd0, 0x01, 0x02, 0x3a,
0x00, 0xc0, 0x2e, 0x00, 0x49, 0x66, 0x00, 0x79, 0x6f, 0x75,
0x00, 0x6d, 0x61, 0x6b, 0x39, 0x00, 0x8f, 0x6d, 0x69, 0x73,
0x74, 0x61, 0x6b, 0x65, 0x2c, 0x76, 0x00, 0x01, 0x01, 0xc6,
0x01, 0x88, 0x6e, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74,
0x7a, 0x00, 0xb0, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x53,
0x70, 0x61, 0x63, 0x65, 0x64, 0x00, 0x50, 0x63, 0x6c, 0x65,
0x61, 0x72, 0xf2, 0x03, 0x20, 0x61, 0x67, 0x25, 0x02, 0x62,
0x28, 0x6f, 0x72, 0x00, 0x75, 0x73, 0x5f, 0x04, 0xc1, 0x55,
0x6e, 0x64, 0x6f, 0x00, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
0x65, 0xf2, 0x00, 0x03, 0x7e, 0x00, 0x62, 0x72, 0x69, 0x67,
0x68, 0x74, 0x2d, 0x74, 0x00, 0x01, 0xd8, 0x02, 0x0f, 0xd8,
0x00, 0x04, 0x02, 0x99, 0x04, 0x12, 0x2c, 0xc2, 0x00, 0x03,
0x17, 0x06, 0x01, 0x8e, 0x04, 0x00, 0x60, 0x03, 0x46, 0x6e,
0x74, 0x65, 0x72, 0x20, 0x06, 0x04, 0x42, 0x00, 0xf1, 0x02,
0x73, 0x00, 0x61, 0x00, 0x60, 0x70, 0x65, 0x6e, 0x63, 0x69,
0x6c, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x27, 0x3a, 0x07, 0x01,
0x70, 0x06, 0x01, 0xf8, 0x07, 0x07, 0x1b, 0x00, 0x10, 0x73,
0x73, 0x06, 0x04, 0x6e, 0x05, 0x04, 0x77, 0x06, 0x19, 0x73,
0xa3, 0x02, 0x04, 0x36, 0x01, 0x11, 0x53, 0x08, 0x00, 0x14,
0x73, 0x0a, 0x03, 0x00, 0x85, 0x06, 0x10, 0x66, 0x72, 0x02,
0x45, 0x64, 0x2d, 0x69, 0x6e, 0x39, 0x00, 0x30, 0x63, 0x61,
0x6e, 0xe3, 0x02, 0x45, 0x61, 0x6c, 0x73, 0x6f, 0x33, 0x03,
0x08, 0x6f, 0x00, 0x02, 0x87, 0x02, 0x30, 0x65, 0x00, 0x67,
0x5a, 0x00, 0x10, 0x70, 0xd4, 0x03, 0x40, 0x6e, 0x6f, 0x00,
0x61, 0x4c, 0x05, 0x01, 0x6c, 0x05, 0x29, 0x74, 0x6f, 0x2e,
0x00, 0x40, 0x2c, 0x00, 0x73, 0x6f, 0xe8, 0x04, 0x10, 0x63,
0x8e, 0x04, 0x10, 0x77, 0x01, 0x01, 0x00, 0x3a, 0x01, 0x03,
0x5a, 0x01, 0x11, 0x6d, 0xbb, 0x00, 0x14, 0x69, 0x41, 0x06,
0x63, 0x79, 0x6f, 0x75, 0x3a, 0x00, 0x79, 0xe7, 0x00, 0x05,
0x23, 0x00, 0x70, 0x61, 0x73, 0x00, 0x72, 0x65, 0x6d, 0x69,
0xd8, 0x02, 0x14, 0x73, 0xd5, 0x03, 0xa4, 0x70, 0x61, 0x72,
0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x32, 0x01, 0x41,
0x6e, 0x65, 0x65, 0x64, 0x52, 0x08, 0x60, 0x62, 0x65, 0x00,
0x72, 0x65, 0x2d, 0x5a, 0x05, 0x01, 0x92, 0x07, 0x01, 0xd4,
0x03, 0x00, 0x54, 0x00, 0x42, 0x6b, 0x6e, 0x6f, 0x77, 0xec,
0x03, 0x4b, 0x61, 0x62, 0x6f, 0x75, 0x45, 0x00, 0x04, 0xa2,
0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00, 0x02, 0x36, 0x6c, 0x69,
0x73, 0xf8, 0x06, 0x6a, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62,
0x6a, 0x01, 0x13, 0x61, 0x83, 0x04, 0x02, 0x8d, 0x00, 0x01,
0x48, 0x00, 0x50, 0x61, 0x6e, 0x79, 0x74, 0x68, 0x62, 0x01,
0x32, 0x65, 0x6c, 0x73, 0x82, 0x00, 0x93, 0x66, 0x65, 0x65,
0x6c, 0x00, 0x6c, 0x69, 0x6b, 0x65, 0x35, 0x03, 0x41, 0x65,
0x72, 0x61, 0x73, 0xc2, 0x09, 0x49, 0x69, 0x6e, 0x67, 0x6c,
0xd3, 0x01, 0x1c, 0x2c, 0x5b, 0x02, 0x08, 0x1b, 0x02, 0x22,
0x6e, 0x64, 0x58, 0x02, 0x05, 0xde, 0x01, 0x03, 0x52, 0x02,
0x01, 0xb8, 0x02, 0x00, 0x5b, 0x00, 0x3a, 0x41, 0x6c, 0x6c,
0x20, 0x02, 0x09, 0x9c, 0x02, 0x22, 0x72, 0x65, 0x79, 0x00,
0x30, 0x64, 0x00, 0x77, 0xa3, 0x02, 0x00, 0x99, 0x00, 0x34,
0x6c, 0x65, 0x66, 0x6c, 0x00, 0x05, 0x5e, 0x00, 0x18, 0x61,
0x14, 0x01, 0x0f, 0x2a, 0x00, 0x05, 0x02, 0x43, 0x03, 0x10,
0x73, 0x43, 0x03, 0x36, 0x2e, 0x00, 0x52, 0xb3, 0x00, 0x00,
0xf7, 0x00, 0x05, 0x20, 0x00, 0x01, 0x2d, 0x0a, 0x01, 0x66,
0x03, 0x03, 0x82, 0x07, 0x14, 0x73, 0xfb, 0x00, 0x0c, 0x56,
0x02, 0x12, 0x41, 0xcb, 0x02, 0x00, 0x66, 0x04, 0x12, 0x2c,
0x73, 0x08, 0x50, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x0b, 0x04,
0x14, 0x73, 0x6b, 0x09, 0x22, 0x75, 0x73, 0x2d, 0x03, 0x62,
0x63, 0x6f, 0x6e, 0x6a, 0x75, 0x6e, 0xdf, 0x07, 0x01, 0x9c,
0x04, 0x05, 0x2c, 0x07, 0x02, 0x2f, 0x00, 0x65, 0x74, 0x6f,
0x00, 0x73, 0x65, 0x74, 0xa4, 0x01, 0x2b, 0x6f, 0x72, 0x6e,
0x00, 0x3d, 0x55, 0x73, 0x65, 0x63, 0x00, 0x51, 0x74, 0x6f,
0x00, 0x6d, 0x6f, 0x55, 0x0b, 0x50, 0x68, 0x69, 0x67, 0x68,
0x6c, 0xd0, 0x00, 0x21, 0x00, 0x61, 0xf6, 0x06, 0x05, 0x99,
0x0a, 0x02, 0x18, 0x08, 0x09, 0xb0, 0x04, 0x22, 0x74, 0x6f,
0xc5, 0x03, 0x25, 0x00, 0x69, 0x18, 0x06, 0x05, 0x3f, 0x00,
0x25, 0x65, 0x64, 0x7c, 0x03, 0x14, 0x50, 0x0c, 0x01, 0x50,
0x72, 0x65, 0x74, 0x75, 0x72, 0x28, 0x03, 0x5a, 0x67, 0x67,
0x6c, 0x65, 0x73, 0x30, 0x00, 0x02, 0x6d, 0x0b, 0x12, 0x61,
0x00, 0x06, 0x85, 0x69, 0x6e, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x93, 0x02, 0x02, 0x67, 0x00, 0x20, 0x6f, 0x72, 0x10,
0x03, 0x2e, 0x6f, 0x76, 0x40, 0x01, 0x05, 0x63, 0x00, 0x12,
0x4d, 0x6b, 0x01, 0x01, 0x37, 0x05, 0x01, 0xfd, 0x01, 0x00,
0x67, 0x0b, 0x01, 0x10, 0x01, 0x2d, 0x6f, 0x66, 0x1b, 0x02,
0x45, 0x65, 0x76, 0x65, 0x72, 0x93, 0x05, 0x01, 0x60, 0x03,
0x41, 0x64, 0x6f, 0x65, 0x73, 0xe7, 0x06, 0x03, 0x63, 0x0c,
0x10, 0x6d, 0x03, 0x04, 0x02, 0xed, 0x00, 0x41, 0x69, 0x6e,
0x00, 0x69, 0x63, 0x07, 0x10, 0x28, 0x66, 0x02, 0x01, 0xc2,
0x0a, 0x01, 0x84, 0x01, 0x92, 0x73, 0x00, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x62, 0x9e, 0x01, 0x22, 0x73, 0x65, 0x9a,
0x01, 0x31, 0x32, 0x2e, 0x31, 0x72, 0x02, 0x01, 0xf5, 0x01,
0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65,
0x2e, 0x29, 0x8e, 0x06, 0x12, 0x32, 0x8e, 0x06, 0xb2, 0x70,
0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20,
0x5b, 0x04, 0x00, 0x1b, 0x02, 0x05, 0x14, 0x00, 0x02, 0x40,
0x00, 0x04, 0x3b, 0x00, 0x02, 0xc2, 0x0c, 0x00, 0x78, 0x00,
0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6e, 0x00, 0x03, 0x3a, 0x06,
0x50, 0x60, 0x54, 0x79, 0x70, 0x65, 0x4f, 0x09, 0x20, 0x6e,
0x75, 0xaa, 0x00, 0x51, 0x47, 0x72, 0x69, 0x64, 0x20, 0x69,
0x08, 0xbf, 0x00, 0x00, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66,
0x69, 0x65, 0x73, 0x00, 0x0d, 0x04, 0xb0, 0x4c, 0x6f, 0x77,
0x65, 0x72, 0x00, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x97, 0x04,
0x68, 0x33, 0x3b, 0x00, 0x75, 0x70, 0x70, 0x12, 0x00, 0x74,
0x39, 0x00, 0x28, 0x62, 0x65, 0x63, 0x61, 0x1a, 0x06, 0x20,
0x75, 0x73, 0xf8, 0x01, 0x00, 0x97, 0x01, 0x11, 0x66, 0xe1,
0x02, 0x03, 0x36, 0x09, 0x42, 0x63, 0x6f, 0x6d, 0x65, 0x6c,
0x04, 0x40, 0x64, 0x69, 0x66, 0x66, 0x64, 0x04, 0x12, 0x74,
0xa5, 0x02, 0x12, 0x60, 0x5f, 0x09, 0x64, 0x27, 0x00, 0x62,
0x69, 0x67, 0x67, 0x29, 0x0a, 0x21, 0x39, 0x21, 0x55, 0x06,
0x14, 0x44, 0x2b, 0x00, 0x53, 0x79, 0x00, 0x00, 0x00, 0x43,
0xa2, 0x07, 0x03, 0xd7, 0x02, 0x05, 0x1a, 0x00, 0x04, 0xae,
0x00, 0x41, 0x65, 0x6e, 0x65, 0x72, 0x58, 0x0c, 0x02, 0x0c,
0x08, 0xd1, 0x2e, 0x00, 0x41, 0x74, 0x00, 0x55, 0x6e, 0x72,
0x65, 0x61, 0x73, 0x6f, 0x6e, 0x28, 0x01, 0x50, 0x6c, 0x65,
0x76, 0x65, 0x6c, 0x7d, 0x05, 0x70, 0x6d, 0x65, 0x00, 0x62,
0x61, 0x63, 0x6b, 0x0c, 0x0b, 0x01, 0x98, 0x03, 0x04, 0x79,
0x06, 0x10, 0x72, 0x28, 0x0a, 0x73, 0x72, 0x65, 0x64, 0x2c,
0x00, 0x62, 0x75, 0x37, 0x0c, 0x31, 0x6f, 0x6c, 0x75, 0x48,
0x01, 0x21, 0x73, 0x68, 0xc8, 0x00, 0x23, 0x73, 0x74, 0x2b,
0x00, 0x42, 0x75, 0x6e, 0x69, 0x71, 0x85, 0x0c, 0x10, 0x65,
0x7b, 0x02, 0x03, 0x3a, 0x06, 0x01, 0x62, 0x00, 0x14, 0x73,
0x48, 0x00, 0x00, 0x64, 0x07, 0x00, 0x7f, 0x00, 0x00, 0xcc,
0x04, 0x00, 0x6b, 0x09, 0x00, 0xd8, 0x0a, 0x22, 0x78, 0x00,
0x91, 0x00, 0x01, 0xed, 0x0c, 0x00, 0x00, 0x02, 0x30, 0x6f,
0x69, 0x64, 0x54, 0x02, 0x03, 0x10, 0x00, 0x05, 0x97, 0x00,
0x00, 0xfe, 0x00, 0x19, 0x4d, 0x2e, 0x0c, 0x11, 0x20, 0x98,
0x0d, 0x01, 0x69, 0x07, 0x10, 0x74, 0xf2, 0x08, 0x00, 0xf1,
0x09, 0x01, 0xd8, 0x00, 0x00, 0x81, 0x03, 0x00, 0x95, 0x00,
0x45, 0x6f, 0x78, 0x65, 0x73, 0xcb, 0x00, 0x0b, 0x6a, 0x0c,
0x01, 0x1d, 0x00, 0x32, 0x2e, 0x00, 0x57, 0x16, 0x04, 0x03,
0x8c, 0x09, 0x02, 0x51, 0x04, 0x03, 0x3a, 0x09, 0x21, 0x69,
0x73, 0x0f, 0x06, 0x10, 0x6e, 0xdc, 0x05, 0xf0, 0x02, 0x60,
0x49, 0x6e, 0x73, 0x68, 0x69, 0x00, 0x4e, 0x6f, 0x00, 0x48,
0x65, 0x79, 0x61, 0x27, 0x2e, 0x00,
0x2d, 0x01, 0x00, 0xf4, 0x10, 0x00, 0x00, 0x00, 0x59, 0x6f,
0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x73,
0x71, 0x75, 0x61, 0x72, 0x65, 0x00, 0x67, 0x72, 0x69, 0x64,
0x3b, 0x00, 0x65, 0x61, 0x63, 0x68, 0x12, 0x00, 0xf1, 0x1a,
0x6d, 0x61, 0x79, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
0x6e, 0x00, 0x61, 0x00, 0x64, 0x69, 0x67, 0x69, 0x74, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x00, 0x31, 0x00, 0x74, 0x6f, 0x00,
0x74, 0x68, 0x65, 0x00, 0x73, 0x69, 0x7a, 0x65, 0x00, 0x6f,
0x66, 0x0c, 0x00, 0x00, 0x40, 0x00, 0x33, 0x2e, 0x00, 0x54,
0x0a, 0x00, 0xf0, 0x08, 0x00, 0x69, 0x73, 0x00, 0x64, 0x69,
0x76, 0x69, 0x64, 0x65, 0x64, 0x00, 0x69, 0x6e, 0x74, 0x6f,
0x00, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x2d, 0x00, 0xf1,
0x02, 0x76, 0x61, 0x72, 0x79, 0x69, 0x6e, 0x67, 0x00, 0x73,
0x68, 0x61, 0x70, 0x65, 0x00, 0x61, 0x6e, 0x64, 0x47, 0x00,
0xf0, 0x13, 0x2c, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x61,
0x72, 0x69, 0x74, 0x68, 0x6d, 0x65, 0x74, 0x69, 0x63, 0x00,
0x63, 0x6c, 0x75, 0x65, 0x73, 0x00, 0x77, 0x72, 0x69, 0x74,
0x74, 0x65, 0x6e, 0x00, 0x69, 0x6e, 0x66, 0x00, 0x20, 0x6d,
0x2e, 0xba, 0x00, 0x50, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x62,
0x00, 0xf5, 0x02, 0x74, 0x6f, 0x00, 0x66, 0x75, 0x6c, 0x6c,
0x79, 0x00, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65,
0x8a, 0x00, 0x02, 0x4e, 0x00, 0x01, 0xb4, 0x00, 0xf0, 0x03,
0x73, 0x00, 0x73, 0x75, 0x63, 0x68, 0x00, 0x74, 0x68, 0x61,
0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x45, 0xe4, 0x00,
0x34, 0x72, 0x6f, 0x77, 0xdd, 0x00, 0xf1, 0x05, 0x73, 0x00,
0x6f, 0x6e, 0x6c, 0x79, 0x00, 0x6f, 0x6e, 0x65, 0x00, 0x6f,
0x63, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0xd7, 0x00,
0x01, 0x0d, 0x01, 0x02, 0xf8, 0x00, 0x05, 0x38, 0x00, 0x6f,
0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x3b, 0x00, 0x1d, 0x00,
0x17, 0x01, 0x03, 0x8d, 0x00, 0x22, 0x69, 0x6e, 0x1d, 0x00,
0x01, 0x11, 0x01, 0xf1, 0x01, 0x00, 0x63, 0x61, 0x6e, 0x00,
0x62, 0x65, 0x00, 0x63, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65,
0x64, 0xd2, 0x00, 0x31, 0x6f, 0x72, 0x6d, 0xc8, 0x00, 0xd3,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x00, 0x73, 0x74, 0x61,
0x74, 0x65, 0x64, 0x01, 0x01, 0x01, 0x16, 0x01, 0x40, 0x2c,
0x00, 0x75, 0x73, 0x42, 0x01, 0x00, 0x10, 0x00, 0x07, 0x31,
0x01, 0xf8, 0x00, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x32, 0x00,
0x00, 0x99, 0x01, 0x52, 0x61, 0x74, 0x00, 0x69, 0x73, 0x02,
0x01, 0x71, 0x41, 0x6e, 0x00, 0x61, 0x64, 0x64, 0x69, 0x2c,
0x00, 0x00, 0x1f, 0x00, 0x61, 0x00, 0x6d, 0x65, 0x61, 0x6e,
0x73, 0x23, 0x01, 0x02, 0xd8, 0x01, 0x24, 0x75, 0x6d, 0xd7,
0x01, 0x06, 0xb6, 0x00, 0x00, 0x0e, 0x00, 0x02, 0xb5, 0x00,
0x63, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x62, 0x6d, 0x01, 0x01,
0x6b, 0x00, 0x02, 0xab, 0x00, 0xf5, 0x05, 0x2e, 0x00, 0x46,
0x6f, 0x72, 0x00, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65,
0x2c, 0x00, 0x60, 0x31, 0x35, 0x2b, 0x27, 0x5b, 0x00, 0x11,
0x65, 0x34, 0x01, 0x31, 0x65, 0x6e, 0x74, 0x05, 0x02, 0x06,
0x4d, 0x00, 0x71, 0x61, 0x64, 0x64, 0x73, 0x00, 0x75, 0x70,
0xfa, 0x00, 0x72, 0x69, 0x66, 0x74, 0x65, 0x65, 0x6e, 0x2e,
0xa4, 0x00, 0xb6, 0x00, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70,
0x6c, 0x69, 0x63, 0x61, 0xa9, 0x00, 0xfc, 0x09, 0x28, 0x65,
0x2e, 0x67, 0x2e, 0x00, 0x60, 0x36, 0x30, 0x2a, 0x27, 0x29,
0x2c, 0x00, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x6c,
0x79, 0x2c, 0xc2, 0x00, 0x7f, 0x70, 0x72, 0x6f, 0x64, 0x75,
0x63, 0x74, 0xc6, 0x00, 0x23, 0x02, 0x7f, 0x00, 0x76, 0x73,
0x75, 0x62, 0x74, 0x72, 0x61, 0x63, 0x7c, 0x00, 0xb0, 0x77,
0x69, 0x6c, 0x6c, 0x00, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73,
0x38, 0x00, 0x07, 0x9a, 0x02, 0x13, 0x61, 0x53, 0x00, 0x22,
0x6f, 0x66, 0x13, 0x03, 0x41, 0x74, 0x77, 0x6f, 0x2c, 0xda,
0x02, 0x28, 0x69, 0x74, 0x99, 0x00, 0x01, 0x27, 0x02, 0x0f,
0x91, 0x00, 0x07, 0xa0, 0x69, 0x73, 0x00, 0x67, 0x72, 0x65,
0x61, 0x74, 0x65, 0x72, 0x2f, 0x00, 0x02, 0x1a, 0x00, 0x87,
0x6f, 0x74, 0x68, 0x65, 0x72, 0x00, 0x62, 0x79, 0xa6, 0x00,
0x6c, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x6c, 0x01, 0x3f,
0x32, 0x2d, 0x27, 0x6b, 0x00, 0x1b, 0x6b, 0x32, 0x00, 0x6d,
0x6f, 0x72, 0x65, 0x6a, 0x00, 0x20, 0x2c, 0x00, 0x55, 0x00,
0xb6, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74,
0x6c, 0x79, 0x4e, 0x00, 0x02, 0xcd, 0x02, 0x57, 0x6d, 0x69,
0x6e, 0x75, 0x73, 0x9a, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x4d,
0x00, 0x02, 0xfa, 0x03, 0x34, 0x74, 0x77, 0x6f, 0x6f, 0x00,
0x50, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x27, 0x01, 0x21, 0x65,
0x69, 0x29, 0x00, 0xf4, 0x02, 0x77, 0x61, 0x79, 0x00, 0x72,
0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x00, 0x74, 0x68, 0x6f, 0x75,
0x67, 0x68, 0x67, 0x01, 0x00, 0x26, 0x04, 0x1c, 0x73, 0xe0,
0x01, 0x2b, 0x33, 0x2f, 0xdf, 0x01, 0x24, 0x69, 0x73, 0x7a,
0x01, 0x0f, 0x6f, 0x01, 0x03, 0x01, 0x6e, 0x01, 0x0b, 0x00,
0x01, 0x02, 0xb2, 0x00, 0x04, 0x86, 0x04, 0x27, 0x62, 0x79,
0xb7, 0x00, 0x20, 0x69, 0x73, 0xe6, 0x00, 0x24, 0x61, 0x6c,
0xc9, 0x04, 0x0a, 0x5a, 0x01, 0x62, 0x00, 0x00, 0x4e, 0x6f,
0x74, 0x65, 0x49, 0x00, 0x04, 0x6c, 0x00, 0x08, 0x0d, 0x05,
0x01, 0x23, 0x03, 0x25, 0x61, 0x6d, 0x14, 0x01, 0x05, 0x48,
0x01, 0x10, 0x6f, 0xfe, 0x03, 0x42, 0x28, 0x70, 0x72, 0x6f,
0x73, 0x00, 0x00, 0x28, 0x00, 0x90, 0x69, 0x64, 0x65, 0x6e,
0x74, 0x69, 0x63, 0x61, 0x6c, 0x93, 0x00, 0x20, 0x73, 0x00,
0x58, 0x05, 0x48, 0x6e, 0x6f, 0x74, 0x00, 0x46, 0x00, 0x00,
0x8b, 0x04, 0x00, 0xbf, 0x00, 0x02, 0x5b, 0x04, 0x10, 0x29,
0x4b, 0x01, 0x61, 0x69, 0x73, 0x00, 0x72, 0x75, 0x6c, 0x5b,
0x01, 0x83, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x65, 0x6c,
0xbf, 0x00, 0x65, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0xdd,
0x01, 0x02, 0x26, 0x00, 0xf2, 0x0e, 0x6e, 0x00, 0x53, 0x6f,
0x6c, 0x6f, 0x27, 0x73, 0x00, 0x60, 0x4b, 0x69, 0x6c, 0x6c,
0x65, 0x72, 0x27, 0x00, 0x6d, 0x6f, 0x64, 0x65, 0x00, 0x28,
0x73, 0x65, 0x65, 0x00, 0x63, 0x0f, 0x06, 0x40, 0x00, 0x31,
0x31, 0x29, 0xda, 0x00, 0x01, 0x5c, 0x00, 0xd5, 0x70, 0x75,
0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x61, 0x70, 0x70, 0x65, 0x61,
0x72, 0x1b, 0x02, 0xb2, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x00,
0x75, 0x6e, 0x64, 0x65, 0x72, 0x80, 0x04, 0x00, 0x9d, 0x00,
0x80, 0x60, 0x4b, 0x65, 0x6e, 0x4b, 0x65, 0x6e, 0x27, 0x3c,
0x00, 0x42, 0x33, 0x30, 0x2e, 0x31, 0x53, 0x06, 0x00, 0x0a,
0x01, 0x80, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00,
0x11, 0x00, 0x00, 0xcd, 0x05, 0x50, 0x72, 0x65, 0x73, 0x00,
0x6d, 0x6a, 0x05, 0x32, 0x6f, 0x66, 0x00, 0x02, 0x02, 0x01,
0x24, 0x00, 0x72, 0x00, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
0x91, 0x05, 0x00, 0xa7, 0x00, 0x20, 0x00, 0x28, 0xed, 0x00,
0x21, 0x55, 0x6e, 0x81, 0x01, 0x02, 0x94, 0x00, 0x61, 0x6f,
0x00, 0x70, 0x6c, 0x61, 0x79, 0x4a, 0x00, 0x01, 0xf6, 0x01,
0x91, 0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0x88, 0x00, 0x51, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0xf8, 0x01,
0x84, 0x6e, 0x79, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0xa2,
0x06, 0x21, 0x61, 0x6e, 0x65, 0x01, 0x65, 0x6e, 0x00, 0x74,
0x79, 0x70, 0x65, 0xa4, 0x06, 0x12, 0x6f, 0xcf, 0x00, 0x72,
0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x54, 0x05, 0x00,
0xbb, 0x03, 0x01, 0xd0, 0x01, 0x02, 0x3a, 0x00, 0xc0, 0x2e,
0x00, 0x49, 0x66, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x6d, 0x61,
0x6b, 0x39, 0x00, 0x8f, 0x6d, 0x69, 0x73, 0x74, 0x61, 0x6b,
0x65, 0x2c, 0x76, 0x00, 0x01, 0x01, 0xc6, 0x01, 0x88, 0x6e,
0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x7a, 0x00, 0xb0,
0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x53, 0x70, 0x61, 0x63,
0x65, 0x64, 0x00, 0x50, 0x63, 0x6c, 0x65, 0x61, 0x72, 0xf2,
0x03, 0x20, 0x61, 0x67, 0x25, 0x02, 0x62, 0x28, 0x6f, 0x72,
0x00, 0x75, 0x73, 0x5f, 0x04, 0xc1, 0x55, 0x6e, 0x64, 0x6f,
0x00, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0xf2, 0x00,
0x03, 0x7e, 0x00, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d,
0x74, 0x00, 0x01, 0xd8, 0x02, 0x0f, 0xd8, 0x00, 0x04, 0x02,
0x99, 0x04, 0x12, 0x2c, 0xc2, 0x00, 0x03, 0x17, 0x06, 0x01,
0x8e, 0x04, 0x00, 0x60, 0x03, 0x46, 0x6e, 0x74, 0x65, 0x72,
0x20, 0x06, 0x04, 0x42, 0x00, 0xf1, 0x02, 0x73, 0x00, 0x61,
0x00, 0x60, 0x70, 0x65, 0x6e, 0x63, 0x69, 0x6c, 0x00, 0x6d,
0x61, 0x72, 0x6b, 0x27, 0x3a, 0x07, 0x01, 0x70, 0x06, 0x01,
0xf8, 0x07, 0x07, 0x1b, 0x00, 0x10, 0x73, 0x73, 0x06, 0x04,
0x6e, 0x05, 0x04, 0x77, 0x06, 0x19, 0x73, 0xa3, 0x02, 0x04,
0x36, 0x01, 0x11, 0x53, 0x08, 0x00, 0x14, 0x73, 0x0a, 0x03,
0x00, 0x85, 0x06, 0x10, 0x66, 0x72, 0x02, 0x45, 0x64, 0x2d,
0x69, 0x6e, 0x39, 0x00, 0x30, 0x63, 0x61, 0x6e, 0xe3, 0x02,
0x45, 0x61, 0x6c, 0x73, 0x6f, 0x33, 0x03, 0x08, 0x6f, 0x00,
0x02, 0x87, 0x02, 0x30, 0x65, 0x00, 0x67, 0x5a, 0x00, 0x10,
0x70, 0xd4, 0x03, 0x40, 0x6e, 0x6f, 0x00, 0x61, 0x4c, 0x05,
0x01, 0x6c, 0x05, 0x29, 0x74, 0x6f, 0x2e, 0x00, 0x40, 0x2c,
0x00, 0x73, 0x6f, 0xe8, 0x04, 0x10, 0x63, 0x8e, 0x04, 0x10,
0x77, 0x01, 0x01, 0x00, 0x3a, 0x01, 0x03, 0x5a, 0x01, 0x11,
0x6d, 0xbb, 0x00, 0x14, 0x69, 0x41, 0x06, 0x63, 0x79, 0x6f,
0x75, 0x3a, 0x00, 0x79, 0xe7, 0x00, 0x05, 0x23, 0x00, 0x70,
0x61, 0x73, 0x00, 0x72, 0x65, 0x6d, 0x69, 0xd8, 0x02, 0x14,
0x73, 0xd5, 0x03, 0xa4, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63,
0x75, 0x6c, 0x61, 0x72, 0x32, 0x01, 0x41, 0x6e, 0x65, 0x65,
0x64, 0x52, 0x08, 0x60, 0x62, 0x65, 0x00, 0x72, 0x65, 0x2d,
0x5a, 0x05, 0x01, 0x92, 0x07, 0x01, 0xd4, 0x03, 0x00, 0x54,
0x00, 0x42, 0x6b, 0x6e, 0x6f, 0x77, 0xec, 0x03, 0x4b, 0x61,
0x62, 0x6f, 0x75, 0x45, 0x00, 0x04, 0xa2, 0x01, 0x2f, 0x6f,
0x72, 0x80, 0x00, 0x02, 0x36, 0x6c, 0x69, 0x73, 0xf8, 0x06,
0x6a, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6a, 0x01, 0x13,
0x61, 0x83, 0x04, 0x02, 0x8d, 0x00, 0x01, 0x48, 0x00, 0x50,
0x61, 0x6e, 0x79, 0x74, 0x68, 0x62, 0x01, 0x32, 0x65, 0x6c,
0x73, 0x82, 0x00, 0x93, 0x66, 0x65, 0x65, 0x6c, 0x00, 0x6c,
0x69, 0x6b, 0x65, 0x35, 0x03, 0x41, 0x65, 0x72, 0x61, 0x73,
0xc2, 0x09, 0x49, 0x69, 0x6e, 0x67, 0x6c, 0xd3, 0x01, 0x1c,
0x2c, 0x5b, 0x02, 0x08, 0x1b, 0x02, 0x22, 0x6e, 0x64, 0x58,
0x02, 0x05, 0xde, 0x01, 0x03, 0x52, 0x02, 0x01, 0xb8, 0x02,
0x00, 0x5b, 0x00, 0x3a, 0x41, 0x6c, 0x6c, 0x20, 0x02, 0x09,
0x9c, 0x02, 0x22, 0x72, 0x65, 0x79, 0x00, 0x30, 0x64, 0x00,
0x77, 0xa3, 0x02, 0x00, 0x99, 0x00, 0x34, 0x6c, 0x65, 0x66,
0x6c, 0x00, 0x05, 0x5e, 0x00, 0x18, 0x61, 0x14, 0x01, 0x0f,
0x2a, 0x00, 0x05, 0x02, 0x43, 0x03, 0x10, 0x73, 0x43, 0x03,
0x36, 0x2e, 0x00, 0x52, 0xb3, 0x00, 0x00, 0xf7, 0x00, 0x05,
0x20, 0x00, 0x01, 0x2d, 0x0a, 0x01, 0x66, 0x03, 0x03, 0x82,
0x07, 0x14, 0x73, 0xfb, 0x00, 0x0c, 0x56, 0x02, 0x12, 0x41,
0xcb, 0x02, 0x00, 0x66, 0x04, 0x12, 0x2c, 0x73, 0x08, 0x50,
0x75, 0x72, 0x73, 0x6f, 0x72, 0x0b, 0x04, 0x14, 0x73, 0x6b,
0x09, 0x22, 0x75, 0x73, 0x2d, 0x03, 0x62, 0x63, 0x6f, 0x6e,
0x6a, 0x75, 0x6e, 0xdf, 0x07, 0x01, 0x9c, 0x04, 0x05, 0x2c,
0x07, 0x02, 0x2f, 0x00, 0x65, 0x74, 0x6f, 0x00, 0x73, 0x65,
0x74, 0xa4, 0x01, 0x2b, 0x6f, 0x72, 0x6e, 0x00, 0x3d, 0x55,
0x73, 0x65, 0x63, 0x00, 0x51, 0x74, 0x6f, 0x00, 0x6d, 0x6f,
0x55, 0x0b, 0x50, 0x68, 0x69, 0x67, 0x68, 0x6c, 0xd0, 0x00,
0x21, 0x00, 0x61, 0xf6, 0x06, 0x05, 0x99, 0x0a, 0x02, 0x18,
0x08, 0x09, 0xb0, 0x04, 0x22, 0x74, 0x6f, 0xc5, 0x03, 0x25,
0x00, 0x69, 0x18, 0x06, 0x05, 0x3f, 0x00, 0x25, 0x65, 0x64,
0x7c, 0x03, 0x14, 0x50, 0x0c, 0x01, 0x50, 0x72, 0x65, 0x74,
0x75, 0x72, 0x28, 0x03, 0x5a, 0x67, 0x67, 0x6c, 0x65, 0x73,
0x30, 0x00, 0x02, 0x6d, 0x0b, 0x12, 0x61, 0x00, 0x06, 0x85,
0x69, 0x6e, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x93, 0x02,
0x02, 0x67, 0x00, 0x20, 0x6f, 0x72, 0x10, 0x03, 0x2e, 0x6f,
0x76, 0x40, 0x01, 0x05, 0x63, 0x00, 0x12, 0x4d, 0x6b, 0x01,
0x01, 0x37, 0x05, 0x01, 0xfd, 0x01, 0x00, 0x67, 0x0b, 0x01,
0x10, 0x01, 0x2d, 0x6f, 0x66, 0x1b, 0x02, 0x45, 0x65, 0x76,
0x65, 0x72, 0x93, 0x05, 0x01, 0x60, 0x03, 0x41, 0x64, 0x6f,
0x65, 0x73, 0xe7, 0x06, 0x03, 0x63, 0x0c, 0x10, 0x6d, 0x03,
0x04, 0x02, 0xed, 0x00, 0x41, 0x69, 0x6e, 0x00, 0x69, 0x63,
0x07, 0x10, 0x28, 0x66, 0x02, 0x01, 0xc2, 0x0a, 0x01, 0x84,
0x01, 0x92, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x9e, 0x01, 0x22, 0x73, 0x65, 0x9a, 0x01, 0x31, 0x32,
0x2e, 0x31, 0x72, 0x02, 0x01, 0xf5, 0x01, 0xb2, 0x61, 0x76,
0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x8e,
0x06, 0x12, 0x32, 0x8e, 0x06, 0xb2, 0x70, 0x61, 0x72, 0x61,
0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x5b, 0x04, 0x00,
0x1b, 0x02, 0x05, 0x14, 0x00, 0x02, 0x40, 0x00, 0x04, 0x3b,
0x00, 0x02, 0xc2, 0x0c, 0x00, 0x78, 0x00, 0xe1, 0x60, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00,
0x6f, 0x70, 0x6e, 0x00, 0x03, 0x3a, 0x06, 0x50, 0x60, 0x54,
0x79, 0x70, 0x65, 0x4f, 0x09, 0x20, 0x6e, 0x75, 0xaa, 0x00,
0x51, 0x47, 0x72, 0x69, 0x64, 0x20, 0x69, 0x08, 0xbf, 0x00,
0x00, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x73,
0x00, 0x0d, 0x04, 0xb0, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x00,
0x6c, 0x69, 0x6d, 0x69, 0x74, 0x97, 0x04, 0x68, 0x33, 0x3b,
0x00, 0x75, 0x70, 0x70, 0x12, 0x00, 0x74, 0x39, 0x00, 0x28,
0x62, 0x65, 0x63, 0x61, 0x1a, 0x06, 0x20, 0x75, 0x73, 0xf8,
0x01, 0x00, 0x97, 0x01, 0x11, 0x66, 0xe1, 0x02, 0x03, 0x36,
0x09, 0x42, 0x63, 0x6f, 0x6d, 0x65, 0x6c, 0x04, 0x40, 0x64,
0x69, 0x66, 0x66, 0x64, 0x04, 0x12, 0x74, 0xa5, 0x02, 0x12,
0x60, 0x5f, 0x09, 0x64, 0x27, 0x00, 0x62, 0x69, 0x67, 0x67,
0x29, 0x0a, 0x21, 0x39, 0x21, 0x55, 0x06, 0x14, 0x44, 0x2b,
0x00, 0x53, 0x79, 0x00, 0x00, 0x00, 0x43, 0xa2, 0x07, 0x03,
0xd7, 0x02, 0x05, 0x1a, 0x00, 0x04, 0xae, 0x00, 0x41, 0x65,
0x6e, 0x65, 0x72, 0x58, 0x0c, 0x02, 0x0c, 0x08, 0xd1, 0x2e,
0x00, 0x41, 0x74, 0x00, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x73,
0x6f, 0x6e, 0x28, 0x01, 0x50, 0x6c, 0x65, 0x76, 0x65, 0x6c,
0x7d, 0x05, 0x70, 0x6d, 0x65, 0x00, 0x62, 0x61, 0x63, 0x6b,
0x0c, 0x0b, 0x01, 0x98, 0x03, 0x04, 0x79, 0x06, 0x10, 0x72,
0x28, 0x0a, 0x73, 0x72, 0x65, 0x64, 0x2c, 0x00, 0x62, 0x75,
0x37, 0x0c, 0x31, 0x6f, 0x6c, 0x75, 0x48, 0x01, 0x21, 0x73,
0x68, 0xc8, 0x00, 0x23, 0x73, 0x74, 0x2b, 0x00, 0x42, 0x75,
0x6e, 0x69, 0x71, 0x85, 0x0c, 0x10, 0x65, 0x7b, 0x02, 0x03,
0x3a, 0x06, 0x01, 0x62, 0x00, 0x14, 0x73, 0x48, 0x00, 0x00,
0x64, 0x07, 0x00, 0x7f, 0x00, 0x00, 0xcc, 0x04, 0x00, 0x6b,
0x09, 0x00, 0xd8, 0x0a, 0x22, 0x78, 0x00, 0x91, 0x00, 0x01,
0xed, 0x0c, 0x00, 0x00, 0x02, 0x30, 0x6f, 0x69, 0x64, 0x54,
0x02, 0x03, 0x10, 0x00, 0x05, 0x97, 0x00, 0x00, 0xfe, 0x00,
0x19, 0x4d, 0x2e, 0x0c, 0x11, 0x20, 0x98, 0x0d, 0x01, 0x69,
0x07, 0x10, 0x74, 0xf2, 0x08, 0x00, 0xf1, 0x09, 0x01, 0xd8,
0x00, 0x00, 0x81, 0x03, 0x00, 0x95, 0x00, 0x45, 0x6f, 0x78,
0x65, 0x73, 0xcb, 0x00, 0x0b, 0x6a, 0x0c, 0x01, 0x1d, 0x00,
0x32, 0x2e, 0x00, 0x57, 0x16, 0x04, 0x03, 0x8c, 0x09, 0x02,
0x51, 0x04, 0x03, 0x3a, 0x09, 0x21, 0x69, 0x73, 0x0f, 0x06,
0x10, 0x6e, 0xdc, 0x05, 0xf0, 0x02, 0x60, 0x49, 0x6e, 0x73,
0x68, 0x69, 0x00, 0x4e, 0x6f, 0x00, 0x48, 0x65, 0x79, 0x61,
0x27, 0x2e, 0x00,
};
const unsigned short help_text_len = 3952;
const unsigned short help_text_words = 761;
const unsigned short help_text_len = 3969;
const unsigned short help_text_words = 762;
const char quick_help_text[] = "Complete the latin square in accordance with the arithmetic clues.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,176 +6,189 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 169, TEXT_CENTER | C_RED },
{ 304, TEXT_CENTER | C_RED },
{ 321, TEXT_UNDERLINE },
{ 322, TEXT_UNDERLINE },
{ 332, TEXT_UNDERLINE },
{ 380, TEXT_UNDERLINE },
{ 409, TEXT_UNDERLINE },
{ 167, TEXT_CENTER | C_RED },
{ 302, TEXT_CENTER | C_RED },
{ 319, TEXT_UNDERLINE },
{ 320, TEXT_UNDERLINE },
{ 330, TEXT_UNDERLINE },
{ 378, TEXT_UNDERLINE },
{ 407, TEXT_UNDERLINE },
{ 433, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 2327 comp 1558 ratio 0.669532 level 10 saved 769 */
/* orig 2549 comp 1677 ratio 0.657905 level 10 saved 872 */
const char help_text[] = {
0xf0, 0x40, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x08, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x31, 0x3a, 0x20, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x20,
0x55, 0x70, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00,
0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69,
0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72,
0x65, 0x73, 0x2e, 0x00, 0x53, 0x6f, 0x6d, 0x65, 0x00, 0x61,
0x72, 0x65, 0x00, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00,
0x69, 0x6e, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x3b, 0x00,
0x73, 0x1a, 0x00, 0x62, 0x6f, 0x66, 0x00, 0x74, 0x68, 0x65,
0x13, 0x00, 0x04, 0x35, 0x00, 0x01, 0x2f, 0x00, 0x90, 0x6e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x2e, 0x5e, 0x00,
0xe0, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00,
0x74, 0x6f, 0x00, 0x60, 0x6c, 0x7a, 0x00, 0x81, 0x00, 0x75,
0x70, 0x27, 0x00, 0x61, 0x6c, 0x6c, 0x3e, 0x00, 0x55, 0x65,
0x6d, 0x70, 0x74, 0x79, 0x3e, 0x00, 0xb2, 0x62, 0x79, 0x00,
0x70, 0x6c, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x00, 0x2b, 0x00,
0x50, 0x62, 0x75, 0x6c, 0x62, 0x73, 0x79, 0x00, 0x07, 0x72,
0x00, 0x97, 0x6d, 0x2e, 0x00, 0x00, 0x00, 0x45, 0x61, 0x63,
0x68, 0x24, 0x00, 0xc1, 0x00, 0x69, 0x6c, 0x6c, 0x75, 0x6d,
0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x58, 0x00, 0x02, 0x52,
0x00, 0x30, 0x00, 0x69, 0x74, 0x7b, 0x00, 0x81, 0x6f, 0x6e,
0x2c, 0x00, 0x70, 0x6c, 0x75, 0x73, 0x76, 0x00, 0x04, 0x6c,
0x00, 0xc0, 0x69, 0x6e, 0x00, 0x6c, 0x69, 0x6e, 0x65, 0x00,
0x77, 0x69, 0x74, 0x68, 0x28, 0x00, 0xf1, 0x07, 0x68, 0x6f,
0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79,
0x00, 0x6f, 0x72, 0x00, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63,
0x0e, 0x00, 0x89, 0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x00,
0x61, 0xec, 0x00, 0x00, 0x59, 0x00, 0x50, 0x62, 0x6c, 0x6f,
0x63, 0x6b, 0xae, 0x00, 0x00, 0x73, 0x00, 0x30, 0x77, 0x61,
0x79, 0x9a, 0x00, 0x61, 0x54, 0x6f, 0x00, 0x77, 0x69, 0x6e,
0x12, 0x00, 0xf1, 0x07, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x00,
0x79, 0x6f, 0x75, 0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x73,
0x61, 0x74, 0x69, 0x73, 0x66, 0x79, 0x1b, 0x00, 0x60, 0x66,
0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x3b, 0x00, 0xfe, 0x09, 0x63,
0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a,
0x00, 0x00, 0x00, 0x2d, 0x00, 0x41, 0x6c, 0x6c, 0x00, 0x6e,
0x6f, 0x6e, 0x2d, 0x58, 0x01, 0x41, 0x6c, 0x69, 0x74, 0x2e,
0x23, 0x00, 0x23, 0x4e, 0x6f, 0xfb, 0x00, 0x20, 0x69, 0x73,
0x15, 0x00, 0x00, 0x37, 0x01, 0x72, 0x61, 0x6e, 0x6f, 0x74,
0x68, 0x65, 0x72, 0x18, 0x00, 0x16, 0x2e, 0x49, 0x00, 0x03,
0x8b, 0x01, 0x0b, 0xa6, 0x01, 0x01, 0xf2, 0x01, 0x60, 0x65,
0x78, 0x61, 0x63, 0x74, 0x6c, 0x8f, 0x00, 0x23, 0x61, 0x74,
0x29, 0x00, 0x00, 0x62, 0x01, 0x01, 0x42, 0x00, 0xa0, 0x73,
0x00, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0xb8,
0x01, 0x00, 0x75, 0x01, 0x23, 0x00, 0x28, 0xd5, 0x00, 0x10,
0x66, 0xd4, 0x01, 0x05, 0x97, 0x00, 0xf3, 0x01, 0x62, 0x6f,
0x76, 0x65, 0x2c, 0x00, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x2c,
0x00, 0x61, 0x6e, 0x64, 0x2f, 0x00, 0x60, 0x00, 0x73, 0x69,
0x64, 0x65, 0x29, 0x88, 0x00, 0x4f, 0x4e, 0x6f, 0x6e, 0x2d,
0x86, 0x00, 0x04, 0x33, 0x6d, 0x61, 0x79, 0x7c, 0x02, 0x2f,
0x6e, 0x79, 0x81, 0x00, 0x0f, 0x00, 0x4d, 0x00, 0xf1, 0x0b,
0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x00, 0x66, 0x6f, 0x72,
0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0x60, 0x02, 0xa0, 0x4e,
0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x39, 0x5d, 0x2d,
0x00, 0x11, 0x4c, 0x23, 0x01, 0x60, 0x55, 0x70, 0x00, 0x77,
0x61, 0x73, 0x66, 0x01, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75,
0x74, 0x65, 0xa3, 0x00, 0x10, 0x69, 0x14, 0x00, 0x40, 0x6c,
0x6c, 0x65, 0x63, 0x7b, 0x01, 0x00, 0x42, 0x01, 0xb1, 0x4a,
0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61, 0x72, 0x76, 0x65,
0xc8, 0x01, 0xf1, 0x01, 0x5b, 0x39, 0x5d, 0x00, 0x68, 0x74,
0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e,
0x5c, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f,
0x65, 0x6e, 0x2f, 0x7b, 0x00, 0xf1, 0x04, 0x73, 0x2f, 0x61,
0x6b, 0x61, 0x72, 0x69, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x00,
0x28, 0x62, 0x65, 0x77, 0x61, 0x72, 0xa7, 0x02, 0xd6, 0x46,
0x6c, 0x61, 0x73, 0x68, 0x29, 0x00, 0x00, 0x00, 0x32, 0x31,
0x2e, 0x31, 0x71, 0x03, 0x01, 0x86, 0x00, 0x40, 0x6f, 0x6c,
0x73, 0x20, 0x9f, 0x00, 0x72, 0x65, 0x66, 0x74, 0x2d, 0x63,
0x6c, 0x69, 0x41, 0x02, 0x4d, 0x69, 0x6e, 0x00, 0x61, 0xf7,
0x01, 0x30, 0x00, 0x77, 0x69, 0x27, 0x03, 0x51, 0x6f, 0x67,
0x67, 0x6c, 0x65, 0x56, 0x01, 0x71, 0x70, 0x72, 0x65, 0x73,
0x65, 0x6e, 0x63, 0x63, 0x00, 0x14, 0x61, 0x04, 0x02, 0x12,
0x6e, 0xc2, 0x01, 0x02, 0x33, 0x00, 0x30, 0x2e, 0x00, 0x52,
0x16, 0x00, 0x0f, 0x59, 0x00, 0x0d, 0x02, 0x54, 0x00, 0x00,
0xd3, 0x02, 0x40, 0x6d, 0x61, 0x72, 0x6b, 0x5c, 0x00, 0x01,
0x15, 0x00, 0xd0, 0x00, 0x61, 0x69, 0x64, 0x00, 0x73, 0x6f,
0x6c, 0x76, 0x69, 0x6e, 0x67, 0x3b, 0x15, 0x03, 0x92, 0x63,
0x61, 0x6e, 0x00, 0x62, 0x65, 0x00, 0x75, 0x73, 0x37, 0x01,
0x42, 0x68, 0x69, 0x67, 0x68, 0x76, 0x00, 0x04, 0xc4, 0x01,
0x01, 0x7b, 0x00, 0x81, 0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x00, 0x62, 0xa3, 0x02, 0x11, 0x2c, 0x9f, 0x01, 0x83, 0x65,
0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x63, 0x04, 0x00,
0xeb, 0x01, 0x00, 0x23, 0x00, 0x00, 0xde, 0x03, 0x18, 0x65,
0xbb, 0x00, 0x02, 0x81, 0x00, 0x23, 0x65, 0x64, 0x51, 0x00,
0x55, 0x2c, 0x00, 0x6e, 0x6f, 0x72, 0x26, 0x00, 0x01, 0x9c,
0x00, 0x21, 0x69, 0x6e, 0x30, 0x00, 0x06, 0xe1, 0x00, 0x33,
0x00, 0x00, 0x54, 0x5c, 0x03, 0x02, 0x20, 0x01, 0x06, 0x95,
0x00, 0xd1, 0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x00,
0x65, 0x72, 0x72, 0x6f, 0x72, 0xe2, 0x03, 0x01, 0x86, 0x04,
0x01, 0x7f, 0x01, 0x05, 0x2a, 0x03, 0x07, 0x28, 0x03, 0x02,
0x57, 0x03, 0x05, 0x40, 0x00, 0x02, 0xe3, 0x04, 0x01, 0x1b,
0x02, 0x6a, 0x77, 0x61, 0x79, 0x2c, 0x00, 0x61, 0xcf, 0x04,
0x05, 0xf4, 0x00, 0x81, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00,
0x64, 0x6f, 0xd2, 0x00, 0x33, 0x28, 0x6f, 0x72, 0x00, 0x01,
0x12, 0x29, 0xcd, 0x02, 0x00, 0xa8, 0x01, 0x11, 0x72, 0x8f,
0x00, 0x0d, 0xd3, 0x02, 0x39, 0x6e, 0x65, 0x78, 0xcf, 0x02,
0x52, 0x54, 0x68, 0x75, 0x73, 0x2c, 0x2a, 0x04, 0x00, 0x7c,
0x05, 0x21, 0x69, 0x73, 0x7c, 0x01, 0x9e, 0x65, 0x64, 0x00,
0x77, 0x68, 0x65, 0x6e, 0x00, 0x61, 0x09, 0x04, 0x04, 0xbb,
0x03, 0x20, 0x79, 0x65, 0x3e, 0x04, 0x06, 0xba, 0x00, 0x12,
0x73, 0x7b, 0x03, 0x01, 0xc6, 0x01, 0x01, 0xb3, 0x00, 0x10,
0x6f, 0xfa, 0x00, 0x03, 0x77, 0x00, 0x00, 0x6a, 0x00, 0x23,
0x28, 0x41, 0x70, 0x05, 0x21, 0x61, 0x63, 0x6b, 0x04, 0x82,
0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0xf3, 0x00,
0x13, 0x73, 0x06, 0x03, 0x31, 0x32, 0x2e, 0x31, 0x3f, 0x00,
0xf3, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61,
0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0xc8, 0x02, 0x16,
0x32, 0xc8, 0x02, 0xb2, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
0x74, 0x65, 0x72, 0x73, 0x20, 0x8f, 0x01, 0x36, 0x73, 0x65,
0x00, 0x14, 0x00, 0x02, 0x44, 0x00, 0x04, 0x3f, 0x00, 0x51,
0x00, 0x66, 0x72, 0x6f, 0x6d, 0x7c, 0x00, 0xe1, 0x60, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00,
0x6f, 0x70, 0x72, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xa0,
0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75,
0xae, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x65, 0x47, 0x01, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a,
0xf3, 0x02, 0x02, 0x26, 0x01, 0x16, 0x6e, 0xa2, 0x06, 0xa1,
0x00, 0x00, 0x25, 0x61, 0x67, 0x65, 0x20, 0x6f, 0x66, 0x20,
0x25, 0x01, 0x14, 0x20, 0x25, 0x01, 0xb0, 0x00, 0x00, 0x52,
0x6f, 0x75, 0x67, 0x68, 0x00, 0x70, 0x65, 0x72, 0x43, 0x04,
0x21, 0x61, 0x67, 0x3f, 0x00, 0x0a, 0x49, 0x01, 0x25, 0x69,
0x6e, 0x7a, 0x01, 0x02, 0x8c, 0x01, 0x40, 0x69, 0x73, 0x00,
0x69, 0x12, 0x03, 0x71, 0x68, 0x69, 0x6e, 0x74, 0x00, 0x72,
0x61, 0x27, 0x02, 0xe1, 0x74, 0x68, 0x61, 0x6e, 0x00, 0x61,
0x6e, 0x00, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x26, 0x01,
0x46, 0x2e, 0x00, 0x49, 0x66, 0xb4, 0x01, 0x90, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x3c, 0x00, 0x21,
0x75, 0x6e, 0xf1, 0x00, 0x24, 0x74, 0x6f, 0x17, 0x00, 0x00,
0xc5, 0x02, 0x03, 0xa4, 0x04, 0x04, 0x75, 0x04, 0xf0, 0x02,
0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x65, 0x00, 0x73, 0x70,
0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x54, 0x00, 0x10,
0x2c, 0x6c, 0x03, 0x01, 0xcd, 0x02, 0x74, 0x69, 0x6e, 0x63,
0x72, 0x65, 0x61, 0x73, 0xef, 0x03, 0x42, 0x6f, 0x70, 0x6f,
0x72, 0x29, 0x01, 0x0c, 0xbf, 0x00, 0x53, 0x75, 0x6e, 0x74,
0x69, 0x6c, 0xa3, 0x03, 0x10, 0x2e, 0x24, 0x01, 0xb0, 0x79,
0x6d, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x00, 0x00, 0x00, 0x41,
0x1d, 0x02, 0x11, 0x73, 0x78, 0x06, 0x23, 0x74, 0x6f, 0x69,
0x00, 0x12, 0x79, 0x98, 0x02, 0x41, 0x65, 0x71, 0x75, 0x69,
0xcb, 0x02, 0x04, 0x2e, 0x00, 0x0e, 0xc5, 0x07, 0x0c, 0x1b,
0x01, 0x11, 0x28, 0x1a, 0x01, 0x10, 0x64, 0x63, 0x05, 0x00,
0xf0, 0x02, 0x61, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20,
0x00, 0x95, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c,
0x74, 0x47, 0x00, 0x03, 0x15, 0x05, 0x00, 0x29, 0x00, 0x71,
0x69, 0x63, 0x65, 0x61, 0x62, 0x6c, 0x79, 0x3d, 0x02, 0x16,
0x44, 0x29, 0x00, 0x70, 0x00, 0x00, 0x60, 0x45, 0x61, 0x73,
0x79, 0xec, 0x01, 0x23, 0x61, 0x6e, 0x3f, 0x04, 0x08, 0x3a,
0x00, 0x60, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x4b, 0x04,
0x62, 0x73, 0x6f, 0x6c, 0x75, 0x62, 0x6c, 0xa0, 0x07, 0xb2,
0x6f, 0x75, 0x74, 0x00, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72,
0x61, 0xd6, 0x04, 0xf9, 0x03, 0x6f, 0x72, 0x00, 0x67, 0x75,
0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2c, 0x00, 0x60, 0x48,
0x61, 0x72, 0x64, 0x52, 0x00, 0x01, 0x2e, 0x08, 0x01, 0x21,
0x00, 0x22, 0x65, 0x73, 0x58, 0x01, 0x40, 0x70, 0x72, 0x6f,
0x62, 0x90, 0x00, 0x00, 0x5a, 0x00, 0xb0, 0x6e, 0x65, 0x63,
0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x2e, 0x00,
0x55, 0x70, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x00, 0xf0, 0x2b,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2e,
0x00, 0x53, 0x6f, 0x6d, 0x65, 0x00, 0x61, 0x72, 0x65, 0x00,
0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x69, 0x6e, 0x00,
0x62, 0x6c, 0x61, 0x63, 0x6b, 0x3b, 0x00, 0x73, 0x1a, 0x00,
0x62, 0x6f, 0x66, 0x00, 0x74, 0x68, 0x65, 0x13, 0x00, 0x04,
0x35, 0x00, 0x01, 0x2f, 0x00, 0x90, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x65, 0x64, 0x2e, 0x5e, 0x00, 0xe0, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00,
0x60, 0x6c, 0x8f, 0x00, 0x81, 0x00, 0x75, 0x70, 0x27, 0x00,
0x61, 0x6c, 0x6c, 0x3e, 0x00, 0x55, 0x65, 0x6d, 0x70, 0x74,
0x79, 0x3e, 0x00, 0xb2, 0x62, 0x79, 0x00, 0x70, 0x6c, 0x61,
0x63, 0x69, 0x6e, 0x67, 0x00, 0x2b, 0x00, 0x50, 0x62, 0x75,
0x6c, 0x62, 0x73, 0x79, 0x00, 0x07, 0x72, 0x00, 0x97, 0x6d,
0x2e, 0x00, 0x00, 0x00, 0x45, 0x61, 0x63, 0x68, 0x24, 0x00,
0xc1, 0x00, 0x69, 0x6c, 0x6c, 0x75, 0x6d, 0x69, 0x6e, 0x61,
0x74, 0x65, 0x73, 0x58, 0x00, 0x02, 0x52, 0x00, 0x30, 0x00,
0x69, 0x74, 0x7b, 0x00, 0x81, 0x6f, 0x6e, 0x2c, 0x00, 0x70,
0x6c, 0x75, 0x73, 0x76, 0x00, 0x04, 0x6c, 0x00, 0xc0, 0x69,
0x6e, 0x00, 0x6c, 0x69, 0x6e, 0x65, 0x00, 0x77, 0x69, 0x74,
0x68, 0x28, 0x00, 0xf1, 0x07, 0x68, 0x6f, 0x72, 0x69, 0x7a,
0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x72,
0x00, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00, 0x89,
0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x00, 0x61, 0xec, 0x00,
0x00, 0x59, 0x00, 0x50, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0xae,
0x00, 0x00, 0x73, 0x00, 0x30, 0x77, 0x61, 0x79, 0x9a, 0x00,
0x61, 0x54, 0x6f, 0x00, 0x77, 0x69, 0x6e, 0x12, 0x00, 0xf1,
0x07, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x00, 0x79, 0x6f, 0x75,
0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x73, 0x61, 0x74, 0x69,
0x73, 0x66, 0x79, 0x1b, 0x00, 0x60, 0x66, 0x6f, 0x6c, 0x6c,
0x6f, 0x77, 0x3b, 0x00, 0xfe, 0x09, 0x63, 0x6f, 0x6e, 0x64,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x00, 0x00, 0x00,
0x2d, 0x00, 0x41, 0x6c, 0x6c, 0x00, 0x6e, 0x6f, 0x6e, 0x2d,
0x58, 0x01, 0x41, 0x6c, 0x69, 0x74, 0x2e, 0x23, 0x00, 0x23,
0x4e, 0x6f, 0xfb, 0x00, 0x20, 0x69, 0x73, 0x15, 0x00, 0x00,
0x37, 0x01, 0x72, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72,
0x18, 0x00, 0x16, 0x2e, 0x49, 0x00, 0x03, 0x8b, 0x01, 0x0b,
0xa6, 0x01, 0x01, 0xf2, 0x01, 0x60, 0x65, 0x78, 0x61, 0x63,
0x74, 0x6c, 0x8f, 0x00, 0x23, 0x61, 0x74, 0x29, 0x00, 0x00,
0x62, 0x01, 0x01, 0x42, 0x00, 0xa0, 0x73, 0x00, 0x61, 0x64,
0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0xb8, 0x01, 0x00, 0x75,
0x01, 0x23, 0x00, 0x28, 0xd5, 0x00, 0x10, 0x66, 0xd4, 0x01,
0x05, 0x97, 0x00, 0xf3, 0x01, 0x62, 0x6f, 0x76, 0x65, 0x2c,
0x00, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x2c, 0x00, 0x61, 0x6e,
0x64, 0x2f, 0x00, 0x60, 0x00, 0x73, 0x69, 0x64, 0x65, 0x29,
0x88, 0x00, 0x4f, 0x4e, 0x6f, 0x6e, 0x2d, 0x86, 0x00, 0x04,
0x33, 0x6d, 0x61, 0x79, 0x7c, 0x02, 0x2f, 0x6e, 0x79, 0x81,
0x00, 0x0f, 0x00, 0x4d, 0x00, 0xf1, 0x0b, 0x43, 0x72, 0x65,
0x64, 0x69, 0x74, 0x00, 0x66, 0x6f, 0x72, 0x00, 0x74, 0x68,
0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00,
0x67, 0x6f, 0x65, 0x60, 0x02, 0xa0, 0x4e, 0x69, 0x6b, 0x6f,
0x6c, 0x69, 0x00, 0x5b, 0x39, 0x5d, 0x2d, 0x00, 0x11, 0x4c,
0x23, 0x01, 0x60, 0x55, 0x70, 0x00, 0x77, 0x61, 0x73, 0x66,
0x01, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0xa3,
0x00, 0x10, 0x69, 0x14, 0x00, 0x40, 0x6c, 0x6c, 0x65, 0x63,
0x7b, 0x01, 0x00, 0x42, 0x01, 0xb1, 0x4a, 0x61, 0x6d, 0x65,
0x73, 0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0xc8, 0x01, 0xf1,
0x02, 0x5b, 0x39, 0x5d, 0x00, 0x68, 0x74, 0x74, 0x70, 0x73,
0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x5d, 0x00,
0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e,
0x2f, 0x7c, 0x00, 0xf6, 0x00, 0x73, 0x2f, 0x61, 0x6b, 0x61,
0x72, 0x69, 0x2f, 0x00, 0x00, 0x00, 0x32, 0x31, 0x2e, 0x31,
0x71, 0x03, 0x01, 0x71, 0x00, 0x40, 0x6f, 0x6c, 0x73, 0x20,
0x8a, 0x00, 0x72, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69,
0x2c, 0x02, 0x4d, 0x69, 0x6e, 0x00, 0x61, 0xe2, 0x01, 0x30,
0x00, 0x77, 0x69, 0x12, 0x03, 0x51, 0x6f, 0x67, 0x67, 0x6c,
0x65, 0x41, 0x01, 0x71, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e,
0x63, 0xf5, 0x02, 0x14, 0x61, 0xef, 0x01, 0x12, 0x6e, 0xad,
0x01, 0x02, 0x33, 0x00, 0x30, 0x2e, 0x00, 0x52, 0x16, 0x00,
0x0f, 0x59, 0x00, 0x0d, 0x02, 0x54, 0x00, 0x00, 0xbe, 0x02,
0x40, 0x6d, 0x61, 0x72, 0x6b, 0x5c, 0x00, 0x01, 0x15, 0x00,
0xd0, 0x00, 0x61, 0x69, 0x64, 0x00, 0x73, 0x6f, 0x6c, 0x76,
0x69, 0x6e, 0x67, 0x3b, 0x00, 0x03, 0x92, 0x63, 0x61, 0x6e,
0x00, 0x62, 0x65, 0x00, 0x75, 0x73, 0x22, 0x01, 0x42, 0x68,
0x69, 0x67, 0x68, 0x76, 0x00, 0x04, 0xaf, 0x01, 0x01, 0x7b,
0x00, 0x81, 0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x00, 0x62,
0x8e, 0x02, 0x11, 0x2c, 0x8a, 0x01, 0x83, 0x65, 0x78, 0x61,
0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x4e, 0x04, 0x00, 0xd6, 0x01,
0x00, 0x23, 0x00, 0x00, 0xc9, 0x03, 0x18, 0x65, 0xbb, 0x00,
0x02, 0x81, 0x00, 0x23, 0x65, 0x64, 0x51, 0x00, 0x55, 0x2c,
0x00, 0x6e, 0x6f, 0x72, 0x26, 0x00, 0x01, 0x9c, 0x00, 0x21,
0x69, 0x6e, 0x30, 0x00, 0x06, 0xe1, 0x00, 0x33, 0x00, 0x00,
0x54, 0x47, 0x03, 0x02, 0x20, 0x01, 0x06, 0x95, 0x00, 0xd1,
0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x65, 0x72,
0x72, 0x6f, 0x72, 0xcd, 0x03, 0x01, 0x71, 0x04, 0x01, 0x7f,
0x01, 0x05, 0x15, 0x03, 0x07, 0x13, 0x03, 0x02, 0x42, 0x03,
0x05, 0x40, 0x00, 0x02, 0xce, 0x04, 0x01, 0x06, 0x02, 0x6a,
0x77, 0x61, 0x79, 0x2c, 0x00, 0x61, 0xba, 0x04, 0x05, 0xf4,
0x00, 0x81, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x64, 0x6f,
0xd2, 0x00, 0x33, 0x28, 0x6f, 0x72, 0x00, 0x01, 0x12, 0x29,
0xb8, 0x02, 0x00, 0xa8, 0x01, 0x11, 0x72, 0x8f, 0x00, 0x0d,
0xbe, 0x02, 0x39, 0x6e, 0x65, 0x78, 0xba, 0x02, 0x52, 0x54,
0x68, 0x75, 0x73, 0x2c, 0x15, 0x04, 0x00, 0x67, 0x05, 0x21,
0x69, 0x73, 0x7c, 0x01, 0x9e, 0x65, 0x64, 0x00, 0x77, 0x68,
0x65, 0x6e, 0x00, 0x61, 0xf4, 0x03, 0x04, 0xa6, 0x03, 0x20,
0x79, 0x65, 0x29, 0x04, 0x06, 0xba, 0x00, 0x12, 0x73, 0x66,
0x03, 0x01, 0xc6, 0x01, 0x01, 0xb3, 0x00, 0x10, 0x6f, 0xfa,
0x00, 0x03, 0x77, 0x00, 0x00, 0x6a, 0x00, 0x23, 0x28, 0x41,
0x5b, 0x05, 0x21, 0x61, 0x63, 0x56, 0x04, 0x82, 0x00, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0xf3, 0x00, 0x13, 0x73,
0xf1, 0x02, 0x31, 0x32, 0x2e, 0x31, 0x3f, 0x00, 0xf2, 0x01,
0x61, 0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0xc8, 0x02, 0x16, 0x32,
0xc8, 0x02, 0xb2, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x73, 0x20, 0x8f, 0x01, 0x36, 0x73, 0x65, 0x00,
0x14, 0x00, 0x02, 0x44, 0x00, 0x04, 0x3f, 0x00, 0x51, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x7c, 0x00, 0xe1, 0x60, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f,
0x70, 0x72, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xa0, 0x54,
0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xae,
0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48,
0x65, 0x47, 0x01, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0xf3,
0x02, 0x02, 0x26, 0x01, 0x16, 0x6e, 0x8d, 0x06, 0xa1, 0x00,
0x00, 0x25, 0x61, 0x67, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x25,
0x01, 0x14, 0x20, 0x25, 0x01, 0xb0, 0x00, 0x00, 0x52, 0x6f,
0x75, 0x67, 0x68, 0x00, 0x70, 0x65, 0x72, 0x2e, 0x04, 0x21,
0x61, 0x67, 0x3f, 0x00, 0x0a, 0x49, 0x01, 0x25, 0x69, 0x6e,
0x7a, 0x01, 0x02, 0x8c, 0x01, 0x40, 0x69, 0x73, 0x00, 0x69,
0x12, 0x03, 0x71, 0x68, 0x69, 0x6e, 0x74, 0x00, 0x72, 0x61,
0x27, 0x02, 0xe1, 0x74, 0x68, 0x61, 0x6e, 0x00, 0x61, 0x6e,
0x00, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x26, 0x01, 0x46,
0x2e, 0x00, 0x49, 0x66, 0xb4, 0x01, 0x90, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x3c, 0x00, 0x21, 0x75,
0x6e, 0xf1, 0x00, 0x24, 0x74, 0x6f, 0x17, 0x00, 0x00, 0xc5,
0x02, 0x03, 0x8f, 0x04, 0x04, 0x60, 0x04, 0xf0, 0x02, 0x70,
0x72, 0x65, 0x63, 0x69, 0x73, 0x65, 0x00, 0x73, 0x70, 0x65,
0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x54, 0x00, 0x10, 0x2c,
0x6c, 0x03, 0x01, 0xcd, 0x02, 0x74, 0x69, 0x6e, 0x63, 0x72,
0x65, 0x61, 0x73, 0xef, 0x03, 0x42, 0x6f, 0x70, 0x6f, 0x72,
0x29, 0x01, 0x0c, 0xbf, 0x00, 0x53, 0x75, 0x6e, 0x74, 0x69,
0x6c, 0xa3, 0x03, 0x10, 0x2e, 0x24, 0x01, 0xb0, 0x79, 0x6d,
0x6d, 0x65, 0x74, 0x72, 0x79, 0x00, 0x00, 0x00, 0x41, 0x1d,
0x02, 0x11, 0x73, 0x63, 0x06, 0x23, 0x74, 0x6f, 0x69, 0x00,
0x12, 0x79, 0x98, 0x02, 0x41, 0x65, 0x71, 0x75, 0x69, 0xcb,
0x02, 0x04, 0x2e, 0x00, 0x0e, 0xb0, 0x07, 0x0c, 0x1b, 0x01,
0x11, 0x28, 0x1a, 0x01, 0x10, 0x64, 0x4e, 0x05, 0x00, 0xf0,
0x02, 0x61, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x00,
0x95, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74,
0x47, 0x00, 0x03, 0xff, 0x04, 0x00, 0x29, 0x00, 0x71, 0x69,
0x63, 0x65, 0x61, 0x62, 0x6c, 0x79, 0x3d, 0x02, 0x16, 0x44,
0x29, 0x00, 0x70, 0x00, 0x00, 0x60, 0x45, 0x61, 0x73, 0x79,
0xec, 0x01, 0x23, 0x61, 0x6e, 0x3f, 0x04, 0x08, 0x3a, 0x00,
0x60, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x4b, 0x04, 0x62,
0x73, 0x6f, 0x6c, 0x75, 0x62, 0x6c, 0x8b, 0x07, 0xb2, 0x6f,
0x75, 0x74, 0x00, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61,
0xd6, 0x04, 0xf9, 0x03, 0x6f, 0x72, 0x00, 0x67, 0x75, 0x65,
0x73, 0x73, 0x69, 0x6e, 0x67, 0x2c, 0x00, 0x60, 0x48, 0x61,
0x72, 0x64, 0x52, 0x00, 0x01, 0x19, 0x08, 0x01, 0x21, 0x00,
0x22, 0x65, 0x73, 0x58, 0x01, 0x40, 0x70, 0x72, 0x6f, 0x62,
0x90, 0x00, 0x00, 0x5a, 0x00, 0xa2, 0x6e, 0x65, 0x63, 0x65,
0x73, 0x73, 0x61, 0x72, 0x79, 0x2e, 0xd9, 0x02, 0x16, 0x33,
0xd9, 0x02, 0xb0, 0x75, 0x73, 0x65, 0x72, 0x20, 0x70, 0x72,
0x65, 0x66, 0x65, 0x72, 0x68, 0x05, 0x01, 0xdf, 0x02, 0x20,
0x4f, 0x6e, 0x91, 0x04, 0x54, 0x74, 0x66, 0x6f, 0x72, 0x6d,
0x5f, 0x00, 0x20, 0x75, 0x70, 0x98, 0x01, 0x10, 0x00, 0x2e,
0x00, 0x17, 0x00, 0x2e, 0x00, 0x12, 0x2c, 0xcd, 0x02, 0x16,
0x50, 0x12, 0x00, 0x0d, 0xe9, 0x02, 0x33, 0x47, 0x61, 0x6d,
0xe9, 0x02, 0x02, 0x98, 0x00, 0x31, 0x6c, 0x65, 0x74, 0xa9,
0x01, 0x90, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72,
0x65, 0xfc, 0x03, 0x01, 0x7b, 0x02, 0x23, 0x60, 0x74, 0x92,
0x02, 0x01, 0x76, 0x01, 0x02, 0xcc, 0x03, 0x11, 0x27, 0x13,
0x05, 0x02, 0x61, 0x03, 0x52, 0x73, 0x68, 0x6f, 0x77, 0x6e,
0x2a, 0x04, 0x08, 0xdc, 0x08, 0x00, 0xd0, 0x08, 0x80, 0x73,
0x6f, 0x00, 0x6c, 0x69, 0x74, 0x2e, 0x00,
};
const unsigned short help_text_len = 2327;
const unsigned short help_text_words = 433;
const unsigned short help_text_len = 2549;
const unsigned short help_text_words = 468;
const char quick_help_text[] = "Place bulbs to light up all the squares.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,184 +6,262 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 169, TEXT_CENTER | C_RED },
{ 220, TEXT_UNDERLINE },
{ 262, TEXT_CENTER | C_RED },
{ 279, TEXT_UNDERLINE },
{ 280, TEXT_UNDERLINE },
{ 324, TEXT_UNDERLINE },
{ 167, TEXT_CENTER | C_RED },
{ 218, TEXT_UNDERLINE },
{ 260, TEXT_CENTER | C_RED },
{ 277, TEXT_UNDERLINE },
{ 278, TEXT_UNDERLINE },
{ 322, TEXT_UNDERLINE },
{ 353, TEXT_UNDERLINE },
{ 355, TEXT_UNDERLINE },
{ 357, TEXT_UNDERLINE },
{ 375, TEXT_UNDERLINE },
{ 390, TEXT_UNDERLINE },
{ 404, TEXT_UNDERLINE },
{ 373, TEXT_UNDERLINE },
{ 388, TEXT_UNDERLINE },
{ 402, TEXT_UNDERLINE },
{ 414, TEXT_CENTER | C_RED },
{ 618, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2260 comp 1600 ratio 0.707965 level 10 saved 660 */
/* orig 3584 comp 2352 ratio 0.65625 level 10 saved 1232 */
const char help_text[] = {
0xf1, 0x4e, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x33, 0x3a, 0x20, 0x4c, 0x6f, 0x6f, 0x70, 0x79, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65,
0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x67,
0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x64, 0x6f, 0x74,
0x73, 0x2c, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x64, 0x00,
0x77, 0x69, 0x74, 0x68, 0x00, 0x79, 0x65, 0x6c, 0x6c, 0x6f,
0x77, 0x00, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x00, 0x74, 0x6f,
0x00, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x00,
0x77, 0x68, 0x69, 0x63, 0x68, 0x31, 0x00, 0x23, 0x00, 0x79,
0x4e, 0x00, 0x10, 0x61, 0x2b, 0x00, 0x20, 0x65, 0x64, 0x27,
0x00, 0xf0, 0x0b, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
0x00, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x00,
0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x7c,
0x00, 0x71, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x51,
0x00, 0xf0, 0x00, 0x75, 0x73, 0x65, 0x00, 0x73, 0x6f, 0x6d,
0x65, 0x00, 0x73, 0x75, 0x62, 0x73, 0x65, 0x74, 0x86, 0x00,
0x5d, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x7a, 0x00, 0xf0, 0x11,
0x64, 0x72, 0x61, 0x77, 0x00, 0x61, 0x00, 0x73, 0x69, 0x6e,
0x67, 0x6c, 0x65, 0x00, 0x75, 0x6e, 0x62, 0x72, 0x6f, 0x6b,
0x65, 0x6e, 0x00, 0x6c, 0x6f, 0x6f, 0x70, 0x00, 0x66, 0x72,
0x6f, 0x6d, 0x8c, 0x00, 0x01, 0x28, 0x00, 0x21, 0x6f, 0x74,
0xbb, 0x00, 0x61, 0x69, 0x6e, 0x00, 0x74, 0x68, 0x65, 0xdb,
0x00, 0x50, 0x2e, 0x00, 0x00, 0x00, 0x53, 0x64, 0x00, 0x21,
0x6f, 0x66, 0x14, 0x00, 0xd2, 0x73, 0x70, 0x61, 0x63, 0x65,
0x73, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x27, 0x00,
0x02, 0x67, 0x00, 0xf4, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73,
0x2e, 0x00, 0x54, 0x68, 0x65, 0x73, 0x65, 0x0f, 0x00, 0x06,
0xfd, 0x00, 0x84, 0x68, 0x6f, 0x77, 0x00, 0x6d, 0x61, 0x6e,
0x79, 0x51, 0x00, 0x02, 0x3e, 0x00, 0xb2, 0x61, 0x72, 0x6f,
0x75, 0x6e, 0x64, 0x00, 0x74, 0x68, 0x61, 0x74, 0x63, 0x00,
0xa5, 0x00, 0x66, 0x6f, 0x72, 0x6d, 0x00, 0x70, 0x61, 0x72,
0x74, 0x29, 0x00, 0x31, 0x6f, 0x6f, 0x70, 0x56, 0x00, 0x02,
0xb8, 0x00, 0x00, 0x3a, 0x01, 0x01, 0xd8, 0x00, 0x83, 0x6d,
0x75, 0x73, 0x74, 0x00, 0x63, 0x6f, 0x72, 0x2e, 0x01, 0x70,
0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x79, 0x52, 0x01, 0x03,
0x3a, 0x00, 0x62, 0x73, 0x65, 0x00, 0x63, 0x6c, 0x75, 0x0a,
0x01, 0x20, 0x62, 0x65, 0xa9, 0x00, 0x94, 0x73, 0x69, 0x64,
0x65, 0x72, 0x65, 0x64, 0x00, 0x61, 0x38, 0x00, 0x90, 0x00,
0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0xef, 0x00,
0x12, 0x49, 0xd7, 0x00, 0xd2, 0x64, 0x65, 0x66, 0x61, 0x75,
0x6c, 0x74, 0x00, 0x6d, 0x6f, 0x64, 0x65, 0x2c, 0x12, 0x00,
0x00, 0xb2, 0x01, 0x01, 0xae, 0x01, 0x98, 0x72, 0x72, 0x61,
0x6e, 0x67, 0x65, 0x64, 0x00, 0x69, 0x02, 0x02, 0x80, 0x73,
0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x3b, 0xe3, 0x00, 0x51,
0x65, 0x76, 0x65, 0x72, 0x2c, 0xa4, 0x00, 0xf1, 0x19, 0x63,
0x61, 0x6e, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x70, 0x6c,
0x61, 0x79, 0x00, 0x6f, 0x6e, 0x00, 0x74, 0x72, 0x69, 0x61,
0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x00, 0x6f, 0x72, 0x00,
0x68, 0x65, 0x78, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x47,
0x00, 0x20, 0x73, 0x2c, 0x14, 0x00, 0x10, 0x65, 0x5a, 0x02,
0xf0, 0x01, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x65, 0x78, 0x6f,
0x74, 0x69, 0x63, 0x00, 0x6f, 0x6e, 0x65, 0x73, 0x9a, 0x00,
0x60, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x1b, 0x01, 0x01,
0x90, 0x00, 0xf2, 0x05, 0x62, 0x61, 0x73, 0x69, 0x63, 0x00,
0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x69, 0x64, 0x65,
0x61, 0x00, 0x67, 0x6f, 0xe7, 0x00, 0xb0, 0x4e, 0x69, 0x6b,
0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x31, 0x30, 0x5d, 0x38, 0x00,
0x01, 0xbd, 0x02, 0xf1, 0x00, 0x00, 0x77, 0x61, 0x73, 0x00,
0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79,
0xb1, 0x01, 0x52, 0x72, 0x69, 0x62, 0x75, 0x74, 0x77, 0x02,
0x30, 0x74, 0x68, 0x69, 0xc5, 0x01, 0x40, 0x6c, 0x6c, 0x65,
0x63, 0x09, 0x01, 0xf2, 0x04, 0x00, 0x62, 0x79, 0x00, 0x4d,
0x69, 0x6b, 0x65, 0x00, 0x50, 0x69, 0x6e, 0x6e, 0x61, 0x2c,
0x00, 0x61, 0x6e, 0x64, 0x67, 0x02, 0x40, 0x71, 0x75, 0x65,
0x6e, 0x68, 0x01, 0x62, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63,
0x3c, 0x00, 0xf0, 0x05, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65,
0x00, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x74,
0x79, 0x70, 0x65, 0x73, 0x12, 0x01, 0x42, 0x6e, 0x6f, 0x6e,
0x2d, 0x16, 0x01, 0x02, 0x25, 0x01, 0xa3, 0x62, 0x79, 0x00,
0x4c, 0x61, 0x6d, 0x62, 0x72, 0x6f, 0x73, 0x08, 0x00, 0x10,
0x75, 0x9e, 0x00, 0x00, 0xa6, 0x00, 0xd1, 0x00, 0x68, 0x74,
0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e,
0xbd, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f,
0x65, 0x6e, 0x2f, 0xe1, 0x00, 0x50, 0x73, 0x2f, 0x73, 0x6c,
0x69, 0x07, 0x03, 0xf1, 0x01, 0x6c, 0x69, 0x6e, 0x6b, 0x2e,
0x68, 0x74, 0x6d, 0x6c, 0x00, 0x28, 0x62, 0x65, 0x77, 0x61,
0x72, 0x9b, 0x02, 0xd3, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x29,
0x00, 0x00, 0x00, 0x32, 0x33, 0x2e, 0x31, 0xad, 0x03, 0x01,
0xe1, 0x00, 0x40, 0x6f, 0x6c, 0x73, 0x20, 0x3a, 0x01, 0x42,
0x6c, 0x69, 0x63, 0x6b, 0x47, 0x02, 0x20, 0x65, 0x66, 0xd4,
0x01, 0x00, 0x3c, 0x03, 0x60, 0x62, 0x75, 0x74, 0x74, 0x6f,
0x6e, 0x94, 0x01, 0x18, 0x61, 0x33, 0x03, 0x01, 0x0e, 0x01,
0xd4, 0x75, 0x72, 0x6e, 0x00, 0x69, 0x74, 0x00, 0x62, 0x6c,
0x61, 0x63, 0x6b, 0x2c, 0xbe, 0x02, 0x32, 0x69, 0x6e, 0x67,
0xa3, 0x02, 0x00, 0xd9, 0x01, 0x00, 0x27, 0x03, 0x10, 0x6b,
0x24, 0x00, 0x2e, 0x69, 0x73, 0xa8, 0x02, 0x03, 0x71, 0x00,
0x20, 0x61, 0x67, 0x13, 0x03, 0x04, 0x50, 0x00, 0x04, 0xef,
0x02, 0x04, 0x6d, 0x00, 0x02, 0x1e, 0x00, 0x50, 0x28, 0x6d,
0x65, 0x61, 0x6e, 0x5a, 0x00, 0x03, 0x0c, 0x04, 0x70, 0x6e,
0x27, 0x74, 0x00, 0x73, 0x75, 0x72, 0x26, 0x00, 0x21, 0x74,
0x29, 0x90, 0x02, 0x15, 0x66, 0x27, 0x04, 0x01, 0x18, 0x00,
0x01, 0x82, 0x00, 0x11, 0x61, 0x74, 0x00, 0x21, 0x69, 0x63,
0x48, 0x02, 0x01, 0x55, 0x00, 0x61, 0x73, 0x65, 0x67, 0x6d,
0x65, 0x6e, 0x8f, 0x00, 0x3d, 0x6e, 0x6f, 0x74, 0x93, 0x00,
0x06, 0x8e, 0x02, 0x15, 0x63, 0x0c, 0x01, 0x4b, 0x72, 0x69,
0x67, 0x68, 0x0d, 0x01, 0xb0, 0x74, 0x6f, 0x00, 0x72, 0x65,
0x6d, 0x6f, 0x76, 0x65, 0x00, 0x69, 0x56, 0x03, 0xb0, 0x6d,
0x70, 0x6c, 0x65, 0x74, 0x65, 0x6c, 0x79, 0x2e, 0x00, 0x41,
0xad, 0x00, 0x12, 0x2c, 0x3d, 0x00, 0x00, 0xae, 0x00, 0x60,
0x61, 0x00, 0x73, 0x65, 0x63, 0x6f, 0xb4, 0x03, 0x8b, 0x69,
0x6d, 0x65, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0xe5, 0x00, 0x20,
0x62, 0x61, 0x66, 0x00, 0x13, 0x6f, 0xed, 0x00, 0x00, 0xc9,
0x00, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x20, 0x00, 0x11, 0x61,
0x63, 0x02, 0x92, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72,
0x69, 0x62, 0x49, 0x03, 0x13, 0x73, 0x79, 0x02, 0x33, 0x32,
0x2e, 0x31, 0x13, 0x05, 0xd3, 0x73, 0x6f, 0x00, 0x61, 0x76,
0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0xdd, 0x01,
0x13, 0x32, 0xdd, 0x01, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d,
0x65, 0x74, 0x65, 0x72, 0xdf, 0x01, 0x02, 0x6c, 0x04, 0x06,
0x14, 0x00, 0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x02, 0xe4,
0x04, 0x00, 0x79, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74,
0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6f,
0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, 0x91, 0x54, 0x79, 0x70,
0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x94, 0x02, 0x91, 0x57,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x22, 0x01,
0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x68, 0x02, 0x00, 0xc7,
0x02, 0x70, 0x2c, 0x00, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x41,
0x04, 0x05, 0xf0, 0x04, 0x00, 0x1c, 0x00, 0x31, 0x72, 0x65,
0x67, 0xd6, 0x00, 0x61, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73,
0x32, 0x03, 0x93, 0x64, 0x6f, 0x77, 0x6e, 0x2e, 0x00, 0x46,
0x6f, 0x72, 0x1d, 0x04, 0x04, 0xe5, 0x03, 0xa1, 0x69, 0x74,
0x27, 0x73, 0x00, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x10, 0x05,
0x01, 0x7c, 0x03, 0x01, 0x7f, 0x03, 0x61, 0x75, 0x6e, 0x74,
0x65, 0x64, 0x3b, 0xe2, 0x03, 0x10, 0x6f, 0xed, 0x02, 0x06,
0x4c, 0x03, 0x01, 0x41, 0x03, 0x00, 0xc3, 0x01, 0x72, 0x6d,
0x61, 0x79, 0x00, 0x68, 0x61, 0x76, 0xa7, 0x02, 0x01, 0x84,
0x02, 0x41, 0x61, 0x00, 0x62, 0x69, 0xc0, 0x05, 0x22, 0x73,
0x65, 0x60, 0x05, 0x01, 0xad, 0x04, 0x52, 0x69, 0x6d, 0x65,
0x6e, 0x73, 0x91, 0x00, 0x25, 0x72, 0x65, 0xb3, 0x00, 0x00,
0xdd, 0x00, 0x50, 0x47, 0x72, 0x69, 0x64, 0x20, 0x59, 0x00,
0x40, 0x00, 0x00, 0x00, 0x41, 0x9d, 0x01, 0x02, 0x88, 0x06,
0x00, 0x7c, 0x06, 0x20, 0x68, 0x6f, 0x40, 0x06, 0x04, 0xde,
0x05, 0x00, 0xe4, 0x01, 0x04, 0x10, 0x04, 0x26, 0x6f, 0x66,
0x8c, 0x00, 0x72, 0x74, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x2e,
0x19, 0x06, 0x01, 0x8c, 0x00, 0x13, 0x61, 0xda, 0x01, 0x11,
0x66, 0x1e, 0x06, 0x01, 0x29, 0x06, 0x21, 0x61, 0x6d, 0x55,
0x02, 0x06, 0xb0, 0x00, 0x70, 0x6d, 0x75, 0x6c, 0x74, 0x69,
0x70, 0x6c, 0x9b, 0x00, 0x40, 0x66, 0x66, 0x65, 0x72, 0xac,
0x02, 0x05, 0x52, 0x00, 0xc1, 0x76, 0x65, 0x72, 0x74, 0x65,
0x78, 0x00, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x3f, 0x00, 0x50,
0x43, 0x61, 0x69, 0x72, 0x6f, 0x0d, 0x05, 0x51, 0x4b, 0x69,
0x74, 0x65, 0x73, 0x85, 0x05, 0x22, 0x29, 0x3b, 0x14, 0x01,
0x1a, 0x73, 0x73, 0x00, 0x00, 0x3b, 0x00, 0x1f, 0x69, 0x76,
0x00, 0x07, 0x0e, 0x6d, 0x00, 0x01, 0xa5, 0x00, 0x07, 0x6b,
0x00, 0x74, 0x47, 0x72, 0x65, 0x61, 0x74, 0x20, 0x48, 0x89,
0x05, 0x12, 0x29, 0x65, 0x06, 0x02, 0xb1, 0x01, 0x18, 0x2c,
0xaf, 0x05, 0x00, 0xd2, 0x01, 0x92, 0x68, 0x6f, 0x6e, 0x65,
0x79, 0x63, 0x6f, 0x6d, 0x62, 0xcb, 0x01, 0x01, 0x5c, 0x01,
0x20, 0x66, 0x75, 0x50, 0x05, 0x21, 0x72, 0x65, 0x26, 0x00,
0x02, 0x2b, 0x05, 0x08, 0xa2, 0x00, 0x26, 0x69, 0x72, 0xa4,
0x00, 0x00, 0x1c, 0x00, 0x0a, 0x24, 0x01, 0x12, 0x3b, 0xfe,
0x01, 0x32, 0x6d, 0x61, 0x6b, 0x15, 0x00, 0x13, 0x6d, 0xa6,
0x04, 0x11, 0x61, 0xd6, 0x06, 0x41, 0x6e, 0x66, 0x75, 0x73,
0x76, 0x04, 0x02, 0x40, 0x06, 0x00, 0xbe, 0x01, 0x40, 0x44,
0x69, 0x66, 0x66, 0xf8, 0x03, 0x20, 0x74, 0x79, 0xd8, 0x04,
0x03, 0xe4, 0x04, 0x03, 0xf3, 0x01, 0x05, 0x1a, 0x00, 0x03,
0xf9, 0x03, 0x60, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0xe2,
0x05, 0x80, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2e, 0x00,
0x00, 0x2d, 0x01, 0x00, 0xf1, 0x3c, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x76,
0x65, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00,
0x6f, 0x66, 0x00, 0x64, 0x6f, 0x74, 0x73, 0x2c, 0x00, 0x6d,
0x61, 0x72, 0x6b, 0x65, 0x64, 0x00, 0x77, 0x69, 0x74, 0x68,
0x00, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x00, 0x6c, 0x69,
0x6e, 0x65, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x69, 0x6e, 0x64,
0x69, 0x63, 0x61, 0x74, 0x65, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x31, 0x00, 0x23, 0x00, 0x79, 0x4e, 0x00, 0x10, 0x61,
0x2b, 0x00, 0x20, 0x65, 0x64, 0x27, 0x00, 0xf0, 0x0b, 0x63,
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x00, 0x64, 0x69, 0x72,
0x65, 0x63, 0x74, 0x6c, 0x79, 0x00, 0x74, 0x6f, 0x67, 0x65,
0x74, 0x68, 0x65, 0x72, 0x2e, 0x7c, 0x00, 0x71, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x00, 0x69, 0x51, 0x00, 0xf0, 0x00, 0x75,
0x73, 0x65, 0x00, 0x73, 0x6f, 0x6d, 0x65, 0x00, 0x73, 0x75,
0x62, 0x73, 0x65, 0x74, 0x86, 0x00, 0x5d, 0x74, 0x68, 0x6f,
0x73, 0x65, 0x7a, 0x00, 0xf0, 0x11, 0x64, 0x72, 0x61, 0x77,
0x00, 0x61, 0x00, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x00,
0x75, 0x6e, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x6e, 0x00, 0x6c,
0x6f, 0x6f, 0x70, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x8c, 0x00,
0x01, 0x28, 0x00, 0x21, 0x6f, 0x74, 0xbb, 0x00, 0x61, 0x69,
0x6e, 0x00, 0x74, 0x68, 0x65, 0xdb, 0x00, 0x50, 0x2e, 0x00,
0x00, 0x00, 0x53, 0x64, 0x00, 0x21, 0x6f, 0x66, 0x14, 0x00,
0xd2, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x00, 0x62, 0x65,
0x74, 0x77, 0x65, 0x65, 0x27, 0x00, 0x02, 0x67, 0x00, 0xf4,
0x07, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x00, 0x54, 0x68,
0x65, 0x73, 0x65, 0x0f, 0x00, 0x06, 0xfd, 0x00, 0x84, 0x68,
0x6f, 0x77, 0x00, 0x6d, 0x61, 0x6e, 0x79, 0x51, 0x00, 0x02,
0x3e, 0x00, 0xb2, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x00,
0x74, 0x68, 0x61, 0x74, 0x63, 0x00, 0xa5, 0x00, 0x66, 0x6f,
0x72, 0x6d, 0x00, 0x70, 0x61, 0x72, 0x74, 0x29, 0x00, 0x31,
0x6f, 0x6f, 0x70, 0x56, 0x00, 0x02, 0xb8, 0x00, 0x00, 0x3a,
0x01, 0x01, 0xd8, 0x00, 0x83, 0x6d, 0x75, 0x73, 0x74, 0x00,
0x63, 0x6f, 0x72, 0x2e, 0x01, 0x70, 0x73, 0x61, 0x74, 0x69,
0x73, 0x66, 0x79, 0x52, 0x01, 0x03, 0x3a, 0x00, 0x62, 0x73,
0x65, 0x00, 0x63, 0x6c, 0x75, 0x0a, 0x01, 0x20, 0x62, 0x65,
0xa9, 0x00, 0x94, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64,
0x00, 0x61, 0x38, 0x00, 0x90, 0x00, 0x73, 0x6f, 0x6c, 0x75,
0x74, 0x69, 0x6f, 0x6e, 0xef, 0x00, 0x12, 0x49, 0xd7, 0x00,
0xd2, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x00, 0x6d,
0x6f, 0x64, 0x65, 0x2c, 0x12, 0x00, 0x00, 0xb2, 0x01, 0x01,
0xae, 0x01, 0x98, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x64,
0x00, 0x69, 0x02, 0x02, 0x80, 0x73, 0x71, 0x75, 0x61, 0x72,
0x65, 0x73, 0x3b, 0xe3, 0x00, 0x51, 0x65, 0x76, 0x65, 0x72,
0x2c, 0xa4, 0x00, 0xf1, 0x19, 0x63, 0x61, 0x6e, 0x00, 0x61,
0x6c, 0x73, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x00, 0x6f,
0x6e, 0x00, 0x74, 0x72, 0x69, 0x61, 0x6e, 0x67, 0x75, 0x6c,
0x61, 0x72, 0x00, 0x6f, 0x72, 0x00, 0x68, 0x65, 0x78, 0x61,
0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x47, 0x00, 0x20, 0x73, 0x2c,
0x14, 0x00, 0x10, 0x65, 0x5a, 0x02, 0xf0, 0x01, 0x6d, 0x6f,
0x72, 0x65, 0x00, 0x65, 0x78, 0x6f, 0x74, 0x69, 0x63, 0x00,
0x6f, 0x6e, 0x65, 0x73, 0x9a, 0x00, 0x60, 0x43, 0x72, 0x65,
0x64, 0x69, 0x74, 0x1b, 0x01, 0x01, 0x90, 0x00, 0xf2, 0x05,
0x62, 0x61, 0x73, 0x69, 0x63, 0x00, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x65, 0x00, 0x69, 0x64, 0x65, 0x61, 0x00, 0x67, 0x6f,
0xe7, 0x00, 0xb0, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00,
0x5b, 0x31, 0x30, 0x5d, 0x38, 0x00, 0x01, 0xcf, 0x02, 0xf1,
0x00, 0x00, 0x77, 0x61, 0x73, 0x00, 0x6f, 0x72, 0x69, 0x67,
0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0xb1, 0x01, 0x52, 0x72,
0x69, 0x62, 0x75, 0x74, 0x77, 0x02, 0x30, 0x74, 0x68, 0x69,
0xc5, 0x01, 0x40, 0x6c, 0x6c, 0x65, 0x63, 0x09, 0x01, 0xf2,
0x04, 0x00, 0x62, 0x79, 0x00, 0x4d, 0x69, 0x6b, 0x65, 0x00,
0x50, 0x69, 0x6e, 0x6e, 0x61, 0x2c, 0x00, 0x61, 0x6e, 0x64,
0x67, 0x02, 0x40, 0x71, 0x75, 0x65, 0x6e, 0x68, 0x01, 0x62,
0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x3c, 0x00, 0xf0, 0x05,
0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x00, 0x76, 0x61, 0x72,
0x69, 0x6f, 0x75, 0x73, 0x00, 0x74, 0x79, 0x70, 0x65, 0x73,
0x12, 0x01, 0x42, 0x6e, 0x6f, 0x6e, 0x2d, 0x16, 0x01, 0x02,
0x25, 0x01, 0xa3, 0x62, 0x79, 0x00, 0x4c, 0x61, 0x6d, 0x62,
0x72, 0x6f, 0x73, 0x08, 0x00, 0x10, 0x75, 0x9e, 0x00, 0x00,
0xa6, 0x00, 0xe1, 0x00, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a,
0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0xbe, 0x00, 0xa2,
0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f,
0xe2, 0x00, 0x50, 0x73, 0x2f, 0x73, 0x6c, 0x69, 0x08, 0x03,
0xc3, 0x6c, 0x69, 0x6e, 0x6b, 0x2f, 0x00, 0x00, 0x00, 0x32,
0x33, 0x2e, 0x31, 0xaa, 0x03, 0x01, 0xcc, 0x00, 0x40, 0x6f,
0x6c, 0x73, 0x20, 0x25, 0x01, 0x42, 0x6c, 0x69, 0x63, 0x6b,
0x32, 0x02, 0x20, 0x65, 0x66, 0xbf, 0x01, 0x00, 0x27, 0x03,
0x60, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x7f, 0x01, 0x18,
0x61, 0x1e, 0x03, 0x01, 0xf9, 0x00, 0xd4, 0x75, 0x72, 0x6e,
0x00, 0x69, 0x74, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x2c,
0xa9, 0x02, 0x32, 0x69, 0x6e, 0x67, 0x8e, 0x02, 0x00, 0xc4,
0x01, 0x00, 0x12, 0x03, 0x10, 0x6b, 0x24, 0x00, 0x2e, 0x69,
0x73, 0x93, 0x02, 0x03, 0x71, 0x00, 0x20, 0x61, 0x67, 0xfe,
0x02, 0x04, 0x50, 0x00, 0x04, 0xda, 0x02, 0x04, 0x6d, 0x00,
0x02, 0x1e, 0x00, 0x50, 0x28, 0x6d, 0x65, 0x61, 0x6e, 0x5a,
0x00, 0x03, 0xf7, 0x03, 0x70, 0x6e, 0x27, 0x74, 0x00, 0x73,
0x75, 0x72, 0x26, 0x00, 0x21, 0x74, 0x29, 0x7b, 0x02, 0x15,
0x66, 0x12, 0x04, 0x01, 0x18, 0x00, 0x01, 0x82, 0x00, 0x11,
0x61, 0x74, 0x00, 0x21, 0x69, 0x63, 0x33, 0x02, 0x01, 0x55,
0x00, 0x61, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x8f, 0x00,
0x3d, 0x6e, 0x6f, 0x74, 0x93, 0x00, 0x06, 0x79, 0x02, 0x15,
0x63, 0x0c, 0x01, 0x4b, 0x72, 0x69, 0x67, 0x68, 0x0d, 0x01,
0xb0, 0x74, 0x6f, 0x00, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
0x00, 0x69, 0x41, 0x03, 0xb0, 0x6d, 0x70, 0x6c, 0x65, 0x74,
0x65, 0x6c, 0x79, 0x2e, 0x00, 0x41, 0xad, 0x00, 0x12, 0x2c,
0x3d, 0x00, 0x00, 0xae, 0x00, 0x60, 0x61, 0x00, 0x73, 0x65,
0x63, 0x6f, 0x9f, 0x03, 0x8b, 0x69, 0x6d, 0x65, 0x00, 0x77,
0x69, 0x6c, 0x6c, 0xe5, 0x00, 0x20, 0x62, 0x61, 0x66, 0x00,
0x13, 0x6f, 0xed, 0x00, 0x00, 0xc9, 0x00, 0x41, 0x28, 0x41,
0x6c, 0x6c, 0x20, 0x00, 0x11, 0x61, 0x4e, 0x02, 0x92, 0x73,
0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x34, 0x03,
0x13, 0x73, 0x64, 0x02, 0x33, 0x32, 0x2e, 0x31, 0xfe, 0x04,
0xe2, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x2e, 0x29, 0xdd, 0x01, 0x13, 0x32, 0xdd,
0x01, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0xdf, 0x01, 0x02, 0x57, 0x04, 0x06, 0x14, 0x00, 0x02,
0x41, 0x00, 0x04, 0x3c, 0x00, 0x02, 0xcf, 0x04, 0x00, 0x79,
0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e,
0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6f, 0x00, 0x22, 0x6f,
0x6e, 0x1a, 0x00, 0x91, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x7f, 0x02, 0x91, 0x57, 0x69, 0x64, 0x74,
0x68, 0x2c, 0x00, 0x48, 0x65, 0x22, 0x01, 0x51, 0x00, 0x00,
0x53, 0x69, 0x7a, 0xee, 0x04, 0x00, 0xb2, 0x02, 0x70, 0x2c,
0x00, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x2c, 0x04, 0x05, 0xdb,
0x04, 0x00, 0x1c, 0x00, 0x31, 0x72, 0x65, 0x67, 0xd6, 0x00,
0x61, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x1d, 0x03, 0x93,
0x64, 0x6f, 0x77, 0x6e, 0x2e, 0x00, 0x46, 0x6f, 0x72, 0x08,
0x04, 0x04, 0xd0, 0x03, 0xa1, 0x69, 0x74, 0x27, 0x73, 0x00,
0x63, 0x6c, 0x65, 0x61, 0x72, 0xfb, 0x04, 0x01, 0x67, 0x03,
0x01, 0x6a, 0x03, 0x61, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x3b,
0xcd, 0x03, 0x10, 0x6f, 0xd7, 0x02, 0x06, 0x37, 0x03, 0x01,
0x2c, 0x03, 0x00, 0xc3, 0x01, 0x72, 0x6d, 0x61, 0x79, 0x00,
0x68, 0x61, 0x76, 0xa7, 0x02, 0x01, 0x84, 0x02, 0x41, 0x61,
0x00, 0x62, 0x69, 0xab, 0x05, 0x22, 0x73, 0x65, 0x4b, 0x05,
0x01, 0x98, 0x04, 0x52, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x91,
0x00, 0x25, 0x72, 0x65, 0xb3, 0x00, 0x00, 0xdd, 0x00, 0x50,
0x47, 0x72, 0x69, 0x64, 0x20, 0x59, 0x00, 0x40, 0x00, 0x00,
0x00, 0x41, 0x9d, 0x01, 0x02, 0x73, 0x06, 0x00, 0x67, 0x06,
0x20, 0x68, 0x6f, 0x2b, 0x06, 0x04, 0xc9, 0x05, 0x00, 0xe4,
0x01, 0x04, 0xfb, 0x03, 0x26, 0x6f, 0x66, 0x8c, 0x00, 0x72,
0x74, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x04, 0x06, 0x01,
0x8c, 0x00, 0x13, 0x61, 0xda, 0x01, 0x11, 0x66, 0x09, 0x06,
0x01, 0x14, 0x06, 0x21, 0x61, 0x6d, 0x55, 0x02, 0x06, 0xb0,
0x00, 0x70, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x9b,
0x00, 0x40, 0x66, 0x66, 0x65, 0x72, 0xac, 0x02, 0x05, 0x52,
0x00, 0xc1, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x00, 0x28,
0x65, 0x2e, 0x67, 0x2e, 0x3f, 0x00, 0x50, 0x43, 0x61, 0x69,
0x72, 0x6f, 0xf8, 0x04, 0x51, 0x4b, 0x69, 0x74, 0x65, 0x73,
0x70, 0x05, 0x22, 0x29, 0x3b, 0x14, 0x01, 0x1a, 0x73, 0x73,
0x00, 0x00, 0x3b, 0x00, 0x1f, 0x69, 0x76, 0x00, 0x07, 0x0e,
0x6d, 0x00, 0x01, 0xa5, 0x00, 0x07, 0x6b, 0x00, 0x74, 0x47,
0x72, 0x65, 0x61, 0x74, 0x20, 0x48, 0x74, 0x05, 0x12, 0x29,
0x50, 0x06, 0x02, 0xb1, 0x01, 0x18, 0x2c, 0x9a, 0x05, 0x00,
0xd2, 0x01, 0x92, 0x68, 0x6f, 0x6e, 0x65, 0x79, 0x63, 0x6f,
0x6d, 0x62, 0xcb, 0x01, 0x01, 0x5c, 0x01, 0x20, 0x66, 0x75,
0x3b, 0x05, 0x21, 0x72, 0x65, 0x26, 0x00, 0x02, 0x16, 0x05,
0x08, 0xa2, 0x00, 0x26, 0x69, 0x72, 0xa4, 0x00, 0x00, 0x1c,
0x00, 0x0a, 0x24, 0x01, 0x12, 0x3b, 0xfe, 0x01, 0x32, 0x6d,
0x61, 0x6b, 0x15, 0x00, 0x13, 0x6d, 0xa6, 0x04, 0x11, 0x61,
0xc1, 0x06, 0x41, 0x6e, 0x66, 0x75, 0x73, 0x76, 0x04, 0x02,
0x2b, 0x06, 0x00, 0xbe, 0x01, 0x40, 0x44, 0x69, 0x66, 0x66,
0xf8, 0x03, 0x20, 0x74, 0x79, 0xd8, 0x04, 0x03, 0xe4, 0x04,
0x03, 0xf3, 0x01, 0x05, 0x1a, 0x00, 0x03, 0xf9, 0x03, 0x60,
0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0xcd, 0x05, 0x02, 0x2f,
0x05, 0x12, 0x2e, 0x45, 0x03, 0x13, 0x33, 0x45, 0x03, 0x81,
0x75, 0x73, 0x65, 0x72, 0x20, 0x70, 0x72, 0x65, 0x21, 0x01,
0x21, 0x63, 0x65, 0x4b, 0x03, 0x20, 0x4f, 0x6e, 0x6a, 0x00,
0x10, 0x74, 0x6a, 0x07, 0x13, 0x73, 0x7b, 0x07, 0x70, 0x75,
0x70, 0x70, 0x6f, 0x72, 0x74, 0x00, 0x2e, 0x00, 0x17, 0x00,
0x2e, 0x00, 0x12, 0x2c, 0x39, 0x03, 0x16, 0x50, 0x12, 0x00,
0x0d, 0x55, 0x03, 0x33, 0x47, 0x61, 0x6d, 0x55, 0x03, 0x02,
0x22, 0x04, 0x22, 0x6c, 0x65, 0x3c, 0x05, 0x00, 0xd9, 0x00,
0x22, 0x69, 0x67, 0xcd, 0x04, 0x00, 0xd6, 0x07, 0x00, 0x85,
0x02, 0x02, 0x5d, 0x05, 0xa0, 0x69, 0x6e, 0x67, 0x73, 0x3a,
0x00, 0x00, 0x00, 0x60, 0x44, 0xc7, 0x07, 0x82, 0x65, 0x78,
0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0xfe, 0x02, 0x02, 0x16,
0x08, 0x30, 0x66, 0x61, 0x69, 0x6c, 0x06, 0x10, 0x27, 0xa7,
0x01, 0x02, 0x37, 0x03, 0x02, 0x99, 0x06, 0x03, 0x9b, 0x07,
0x41, 0x3a, 0x00, 0x77, 0x68, 0xbb, 0x02, 0x01, 0x85, 0x04,
0x04, 0x08, 0x01, 0x00, 0x3f, 0x00, 0x20, 0x68, 0x61, 0xa3,
0x08, 0xa1, 0x65, 0x6e, 0x00, 0x65, 0x78, 0x70, 0x6c, 0x69,
0x63, 0x69, 0xb1, 0x06, 0x04, 0x61, 0x00, 0x05, 0x23, 0x04,
0x04, 0xf5, 0x07, 0x00, 0x53, 0x00, 0x01, 0x20, 0x05, 0x15,
0x2d, 0xf3, 0x04, 0x36, 0x69, 0x74, 0x2c, 0xdf, 0x04, 0x50,
0x69, 0x73, 0x00, 0x73, 0x74, 0xd4, 0x00, 0x00, 0x70, 0x08,
0x40, 0x6e, 0x2c, 0x00, 0x6a, 0x72, 0x08, 0x01, 0xfb, 0x07,
0x01, 0xa1, 0x00, 0x50, 0x00, 0x67, 0x72, 0x65, 0x79, 0x3b,
0x07, 0x44, 0x6f, 0x75, 0x72, 0x2e, 0xc3, 0x05, 0x03, 0x21,
0x05, 0x25, 0x69, 0x73, 0x28, 0x01, 0x36, 0x66, 0x66, 0x2c,
0x84, 0x00, 0x04, 0xf6, 0x08, 0x11, 0x65, 0xc1, 0x05, 0x01,
0x58, 0x00, 0x30, 0x00, 0x61, 0x74, 0x47, 0x02, 0x10, 0x2e,
0x12, 0x01, 0x52, 0x41, 0x75, 0x74, 0x6f, 0x2d, 0x2c, 0x01,
0x60, 0x00, 0x75, 0x6e, 0x69, 0x71, 0x75, 0xf2, 0x04, 0x21,
0x74, 0x68, 0xd3, 0x02, 0x58, 0x65, 0x64, 0x67, 0x65, 0x73,
0x13, 0x01, 0x27, 0x66, 0x66, 0x14, 0x01, 0x30, 0x2e, 0x00,
0x57, 0x14, 0x01, 0x01, 0x76, 0x04, 0x18, 0x6f, 0xc5, 0x05,
0x01, 0xf3, 0x03, 0x00, 0xb6, 0x08, 0x02, 0xfb, 0x00, 0x41,
0x74, 0x61, 0x74, 0x75, 0x4f, 0x00, 0x05, 0x17, 0x0a, 0x05,
0x78, 0x01, 0x02, 0xc0, 0x01, 0x71, 0x70, 0x6f, 0x74, 0x65,
0x6e, 0x74, 0x69, 0x2b, 0x08, 0x82, 0x70, 0x72, 0x6f, 0x70,
0x61, 0x67, 0x61, 0x74, 0x3c, 0x00, 0x03, 0x47, 0x00, 0x56,
0x61, 0x6c, 0x6f, 0x6e, 0x67, 0xea, 0x03, 0x01, 0xd2, 0x00,
0x40, 0x2c, 0x00, 0x69, 0x66, 0xae, 0x08, 0x00, 0xce, 0x03,
0x98, 0x62, 0x6f, 0x74, 0x68, 0x00, 0x65, 0x6e, 0x64, 0x73,
0xea, 0x09, 0x02, 0x13, 0x02, 0x00, 0x94, 0x00, 0x25, 0x65,
0x64, 0xea, 0x0a, 0x72, 0x74, 0x6f, 0x00, 0x6f, 0x6e, 0x6c,
0x79, 0x39, 0x00, 0x01, 0x0b, 0x05, 0x00, 0x2b, 0x00, 0x53,
0x2e, 0x00, 0x28, 0x54, 0x68, 0xd8, 0x08, 0x13, 0x69, 0xa0,
0x02, 0x63, 0x69, 0x66, 0x00, 0x74, 0x77, 0x6f, 0x3e, 0x01,
0x41, 0x6d, 0x65, 0x65, 0x74, 0x35, 0x01, 0x04, 0x53, 0x04,
0x00, 0x72, 0x03, 0x27, 0x6e, 0x6f, 0x43, 0x00, 0x43, 0x73,
0x00, 0x64, 0x6f, 0x57, 0x01, 0x01, 0xcf, 0x01, 0x13, 0x6e,
0x20, 0x0b, 0x06, 0x7e, 0x01, 0x11, 0x65, 0x52, 0x08, 0x02,
0xac, 0x00, 0x0c, 0x47, 0x07, 0x00, 0xc5, 0x00, 0x12, 0x6e,
0x21, 0x00, 0x50, 0x2c, 0x00, 0x73, 0x6f, 0x00, 0x09, 0x00,
0x30, 0x65, 0x27, 0x73, 0x63, 0x00, 0x61, 0x72, 0x65, 0x61,
0x73, 0x6f, 0x6e, 0xcd, 0x00, 0x65, 0x73, 0x68, 0x6f, 0x75,
0x6c, 0x64, 0xa7, 0x05, 0x02, 0x72, 0x07, 0x40, 0x73, 0x65,
0x70, 0x61, 0x8d, 0x03, 0x01, 0xbe, 0x0b, 0x00, 0xc1, 0x0b,
0x00, 0x61, 0x01, 0x40, 0x65, 0x61, 0x63, 0x68, 0xe4, 0x00,
0x26, 0x2e, 0x29, 0x65, 0x0a, 0x00, 0xed, 0x04, 0x70, 0x00,
0x60, 0x42, 0x61, 0x73, 0x65, 0x64, 0xdc, 0x02, 0x02, 0x4b,
0x0a, 0x42, 0x6e, 0x6c, 0x79, 0x27, 0x7f, 0x02, 0x63, 0x65,
0x66, 0x66, 0x65, 0x63, 0x74, 0xa8, 0x01, 0x02, 0x5b, 0x00,
0x01, 0x9d, 0x01, 0x29, 0x6f, 0x6e, 0x96, 0x01, 0x03, 0x87,
0x06, 0x07, 0x1f, 0x05, 0x23, 0x61, 0x74, 0x13, 0x05, 0x83,
0x65, 0x67, 0x72, 0x65, 0x65, 0x00, 0x32, 0x00, 0xd3, 0x0b,
0x70, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x79, 0x11, 0x02,
0x02, 0xde, 0x0b, 0x10, 0x46, 0x70, 0x0a, 0x20, 0x78, 0x61,
0xfd, 0x07, 0x14, 0x2c, 0x25, 0x00, 0x07, 0xc1, 0x06, 0x08,
0x87, 0x00, 0x07, 0x7b, 0x00, 0x30, 0x6f, 0x63, 0x63, 0x8a,
0x0c, 0x13, 0x74, 0xd4, 0x03, 0x22, 0x75, 0x72, 0xba, 0x00,
0x41, 0x63, 0x6f, 0x72, 0x6e, 0xfc, 0x0b, 0x0f, 0xe0, 0x00,
0x0a, 0x00, 0xa7, 0x01, 0x32, 0x67, 0x61, 0x6d, 0x85, 0x02,
0x13, 0x65, 0xea, 0x00, 0x04, 0xcd, 0x00, 0x00, 0x2b, 0x03,
0x01, 0x68, 0x00, 0x01, 0x14, 0x08, 0x30, 0x74, 0x61, 0x6b,
0xde, 0x00, 0x01, 0x2d, 0x07, 0x05, 0xfc, 0x02, 0x00, 0x77,
0x01, 0x11, 0x27, 0x74, 0x05, 0x4f, 0x72, 0x65, 0x61, 0x64,
0xd9, 0x03, 0x09, 0x03, 0xb7, 0x01, 0x00, 0x39, 0x02, 0x03,
0xbe, 0x00, 0x27, 0x64, 0x6f, 0x5e, 0x0b, 0xe0, 0x77, 0x6f,
0x72, 0x6b, 0x00, 0x66, 0x6f, 0x72, 0x00, 0x79, 0x6f, 0x75,
0x2e, 0x00,
};
const unsigned short help_text_len = 2260;
const unsigned short help_text_words = 414;
const unsigned short help_text_len = 3584;
const unsigned short help_text_words = 660;
const char quick_help_text[] = "Draw a single closed loop, given clues about number of adjacent edges.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,187 +6,188 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 143, TEXT_CENTER | C_RED },
{ 323, TEXT_CENTER | C_RED },
{ 340, TEXT_UNDERLINE },
{ 144, TEXT_CENTER | C_RED },
{ 324, TEXT_CENTER | C_RED },
{ 341, TEXT_UNDERLINE },
{ 353, TEXT_UNDERLINE },
{ 355, TEXT_UNDERLINE },
{ 388, TEXT_UNDERLINE },
{ 416, TEXT_UNDERLINE },
{ 342, TEXT_UNDERLINE },
{ 354, TEXT_UNDERLINE },
{ 356, TEXT_UNDERLINE },
{ 389, TEXT_UNDERLINE },
{ 417, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2502 comp 1653 ratio 0.660671 level 10 saved 849 */
/* orig 2522 comp 1662 ratio 0.659001 level 10 saved 860 */
const char help_text[] = {
0xf2, 0x3e, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x33, 0x3a, 0x20, 0x4d, 0x61, 0x67, 0x6e, 0x65, 0x74,
0x73, 0x20, 0x00, 0x00, 0x00, 0x41, 0x00, 0x72, 0x65, 0x63,
0x74, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x00, 0x67,
0x72, 0x69, 0x64, 0x00, 0x68, 0x61, 0x73, 0x00, 0x62, 0x65,
0x65, 0x6e, 0x00, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00,
0x77, 0x69, 0x74, 0x68, 0x00, 0x61, 0x00, 0x6d, 0x69, 0x78,
0x74, 0x75, 0x72, 0x65, 0x00, 0x6f, 0x66, 0x00, 0x6d, 0x40,
0x00, 0xf2, 0x04, 0x00, 0x28, 0x74, 0x68, 0x61, 0x74, 0x00,
0x69, 0x73, 0x2c, 0x00, 0x64, 0x6f, 0x6d, 0x69, 0x6e, 0x6f,
0x65, 0x73, 0x2d, 0x00, 0xf1, 0x05, 0x6f, 0x6e, 0x65, 0x00,
0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x00, 0x65,
0x6e, 0x64, 0x00, 0x61, 0x6e, 0x64, 0x15, 0x00, 0x44, 0x6e,
0x65, 0x67, 0x61, 0x15, 0x00, 0x11, 0x29, 0x16, 0x00, 0x56,
0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x3f, 0x00, 0x0f, 0x52, 0x00,
0x05, 0xf6, 0x0a, 0x74, 0x77, 0x6f, 0x00, 0x6e, 0x65, 0x75,
0x74, 0x72, 0x61, 0x6c, 0x00, 0x70, 0x6f, 0x6c, 0x65, 0x73,
0x29, 0x2e, 0x00, 0x54, 0x68, 0x65, 0x73, 0x65, 0x28, 0x00,
0xf0, 0x05, 0x61, 0x72, 0x65, 0x00, 0x69, 0x6e, 0x69, 0x74,
0x69, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x6e, 0x6c, 0x79,
0x00, 0x73, 0xc6, 0x00, 0xf2, 0x0a, 0x69, 0x6e, 0x00, 0x73,
0x69, 0x6c, 0x68, 0x6f, 0x75, 0x65, 0x74, 0x74, 0x65, 0x2e,
0x00, 0x41, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x00, 0x74, 0x68,
0x65, 0xee, 0x00, 0x00, 0x37, 0x00, 0xf0, 0x00, 0x70, 0x6c,
0x61, 0x63, 0x65, 0x64, 0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0xe3, 0x00, 0xf1, 0x01, 0x63, 0x6c, 0x75,
0x65, 0x73, 0x00, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6e, 0x67, 0x31, 0x00, 0x06, 0x1f, 0x00, 0x05, 0xde,
0x00, 0x00, 0xc4, 0x00, 0x05, 0xd6, 0x00, 0x01, 0x9a, 0x00,
0xa0, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
0x64, 0x7b, 0x00, 0x50, 0x63, 0x65, 0x72, 0x74, 0x61, 0x08,
0x00, 0x61, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x30, 0x00,
0xf0, 0x0b, 0x72, 0x6f, 0x77, 0x73, 0x2e, 0x00, 0x00, 0x00,
0x59, 0x6f, 0x75, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69,
0x73, 0x00, 0x74, 0x6f, 0x00, 0x63, 0x6f, 0x72, 0x8c, 0x01,
0x22, 0x6c, 0x79, 0x90, 0x00, 0x01, 0x72, 0x00, 0x04, 0x6a,
0x01, 0x0f, 0x2b, 0x01, 0x00, 0x51, 0x73, 0x75, 0x63, 0x68,
0x00, 0x2f, 0x01, 0x31, 0x61, 0x6c, 0x6c, 0x2d, 0x00, 0x02,
0xb4, 0x00, 0x00, 0xd1, 0x00, 0xa3, 0x73, 0x61, 0x74, 0x69,
0x73, 0x66, 0x69, 0x65, 0x64, 0x2c, 0x3f, 0x01, 0xd0, 0x68,
0x65, 0x00, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x61, 0x6c, 0xa2, 0x00, 0x72, 0x73, 0x74, 0x72, 0x61, 0x69,
0x6e, 0x74, 0x41, 0x00, 0x21, 0x6e, 0x6f, 0x61, 0x01, 0x40,
0x73, 0x69, 0x6d, 0x69, 0x06, 0x02, 0x02, 0x75, 0x00, 0x23,
0x69, 0x63, 0xd0, 0x00, 0xf1, 0x00, 0x6d, 0x61, 0x79, 0x00,
0x62, 0x65, 0x00, 0x6f, 0x72, 0x74, 0x68, 0x6f, 0x67, 0x6f,
0x6e, 0x5f, 0x01, 0xd2, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65,
0x6e, 0x74, 0x00, 0x28, 0x73, 0x69, 0x6e, 0xac, 0x00, 0xb8,
0x79, 0x00, 0x72, 0x65, 0x70, 0x65, 0x6c, 0x29, 0x2e, 0x00,
0x4e, 0xa9, 0x01, 0x72, 0x00, 0x64, 0x6f, 0x00, 0x6e, 0x6f,
0x74, 0x1d, 0x00, 0x11, 0x2c, 0xc9, 0x00, 0x30, 0x63, 0x61,
0x6e, 0x51, 0x00, 0x05, 0x44, 0x00, 0xc1, 0x74, 0x6f, 0x00,
0x61, 0x6e, 0x79, 0x00, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x35,
0x00, 0x00, 0x1d, 0x01, 0xf1, 0x0b, 0x43, 0x72, 0x65, 0x64,
0x69, 0x74, 0x00, 0x66, 0x6f, 0x72, 0x00, 0x74, 0x68, 0x69,
0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67,
0x6f, 0x65, 0x2d, 0x01, 0xa0, 0x4a, 0x61, 0x6e, 0x6b, 0x6f,
0x00, 0x5b, 0x31, 0x36, 0x5d, 0x2d, 0x00, 0x13, 0x4d, 0x27,
0x01, 0x22, 0x77, 0x61, 0x7f, 0x01, 0x70, 0x72, 0x69, 0x62,
0x75, 0x74, 0x65, 0x64, 0x29, 0x00, 0x01, 0x3d, 0x00, 0x60,
0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0xfe, 0x00, 0xf0, 0x01,
0x00, 0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00,
0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x3e, 0x00, 0x00, 0x46,
0x00, 0xd0, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
0x77, 0x77, 0x77, 0x2e, 0x6a, 0x5c, 0x00, 0xc2, 0x2e, 0x61,
0x74, 0x2f, 0x52, 0x61, 0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f,
0x5f, 0x00, 0xf5, 0x03, 0x65, 0x2f, 0x69, 0x6e, 0x64, 0x65,
0x78, 0x2e, 0x68, 0x74, 0x6d, 0x00, 0x00, 0x00, 0x33, 0x33,
0x2e, 0x31, 0x49, 0x03, 0x01, 0x74, 0x00, 0x21, 0x6f, 0x6c,
0x52, 0x03, 0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c,
0x69, 0x63, 0x6b, 0x37, 0x02, 0xf5, 0x00, 0x6f, 0x6e, 0x00,
0x61, 0x6e, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x00, 0x73,
0x71, 0x75, 0x6e, 0x02, 0x33, 0x73, 0x00, 0x61, 0x68, 0x01,
0x23, 0x00, 0x61, 0x86, 0x01, 0x02, 0x54, 0x02, 0x26, 0x6f,
0x6e, 0xb3, 0x01, 0x05, 0x66, 0x02, 0x00, 0x15, 0x01, 0x00,
0x4b, 0x00, 0x00, 0x15, 0x00, 0x03, 0x46, 0x00, 0x13, 0x61,
0xc5, 0x02, 0x09, 0x7d, 0x02, 0x04, 0x24, 0x00, 0x02, 0x4b,
0x01, 0x40, 0x68, 0x61, 0x6c, 0x66, 0xad, 0x02, 0x06, 0x49,
0x02, 0x39, 0x3b, 0x00, 0x6c, 0x9e, 0x00, 0x20, 0x61, 0x67,
0x9c, 0x02, 0x83, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65,
0x73, 0x74, 0x00, 0x62, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79,
0xab, 0x01, 0x10, 0x61, 0x40, 0x01, 0x31, 0x72, 0x64, 0x00,
0x32, 0x00, 0x87, 0x00, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
0x73, 0x51, 0x00, 0x00, 0x3f, 0x01, 0x4f, 0x52, 0x69, 0x67,
0x68, 0xf2, 0x00, 0x14, 0x08, 0xc3, 0x02, 0x10, 0x00, 0xa4,
0x00, 0x2c, 0x65, 0x2e, 0x3f, 0x00, 0x02, 0x93, 0x00, 0x03,
0x32, 0x00, 0x00, 0x96, 0x02, 0x41, 0x71, 0x75, 0x65, 0x73,
0x17, 0x01, 0x54, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0xe2, 0x00,
0x02, 0x44, 0x00, 0x90, 0x2c, 0x00, 0x73, 0x69, 0x67, 0x6e,
0x69, 0x66, 0x79, 0x3a, 0x00, 0x12, 0x60, 0xeb, 0x01, 0x20,
0x61, 0x6e, 0x6f, 0x02, 0x22, 0x62, 0x65, 0x6d, 0x00, 0x84,
0x27, 0x00, 0x28, 0x77, 0x68, 0x69, 0x63, 0x68, 0x75, 0x02,
0x81, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x00, 0x74, 0x95,
0x02, 0x61, 0x65, 0x00, 0x64, 0x65, 0x64, 0x75, 0x18, 0x02,
0xf2, 0x02, 0x73, 0x00, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x00,
0x73, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x29, 0x2c, 0xaa,
0x03, 0x0e, 0x9c, 0x00, 0x02, 0xdb, 0x00, 0x37, 0x69, 0x65,
0x73, 0x87, 0x00, 0x1d, 0x2e, 0xf7, 0x01, 0x11, 0x61, 0x8d,
0x03, 0x51, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0xb8, 0x00, 0x50,
0x00, 0x69, 0x74, 0x00, 0x61, 0x0c, 0x03, 0x80, 0x6e, 0x65,
0x00, 0x28, 0x67, 0x72, 0x65, 0x79, 0x11, 0x00, 0xb4, 0x6f,
0x75, 0x74, 0x29, 0x2c, 0x00, 0x6f, 0x72, 0x00, 0x75, 0x6e,
0x24, 0x00, 0x21, 0x69, 0x66, 0x06, 0x00, 0x91, 0x73, 0x00,
0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x3d, 0x00, 0x23,
0x65, 0x64, 0x2e, 0x04, 0x01, 0xc5, 0x00, 0x40, 0x61, 0x6c,
0x73, 0x6f, 0xc7, 0x00, 0x02, 0xf3, 0x03, 0x91, 0x75, 0x72,
0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x16, 0x03, 0x20,
0x6d, 0x6f, 0x93, 0x04, 0x04, 0x16, 0x00, 0x1a, 0x61, 0xeb,
0x04, 0x74, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0xcd,
0x04, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x00,
0x02, 0xa7, 0x00, 0x54, 0x6c, 0x61, 0x79, 0x00, 0x61, 0x9c,
0x01, 0x03, 0xf4, 0x05, 0x0a, 0x81, 0x02, 0x0c, 0xa9, 0x02,
0x34, 0x3b, 0x00, 0x70, 0x51, 0x00, 0x0f, 0x49, 0x02, 0x08,
0x04, 0xaa, 0x02, 0x19, 0x6e, 0x3f, 0x02, 0x04, 0xc0, 0x01,
0x13, 0x61, 0xe1, 0x05, 0x09, 0x98, 0x02, 0x35, 0x2e, 0x00,
0x55, 0xa7, 0x00, 0x20, 0x73, 0x70, 0x0c, 0x05, 0x30, 0x62,
0x61, 0x72, 0xe7, 0x04, 0x32, 0x6f, 0x77, 0x73, 0x1b, 0x02,
0x10, 0x6d, 0x38, 0x04, 0x2c, 0x6f, 0x66, 0x14, 0x05, 0x03,
0x5e, 0x04, 0x72, 0x6e, 0x6f, 0x74, 0x2d, 0x62, 0x65, 0x2d,
0x1d, 0x00, 0x51, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x69, 0x00,
0x00, 0x4c, 0x04, 0x02, 0xd2, 0x01, 0x16, 0x00, 0x6a, 0x00,
0x43, 0x00, 0x00, 0x28, 0x41, 0x40, 0x05, 0x13, 0x61, 0x0a,
0x02, 0x72, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0xc1,
0x05, 0x13, 0x73, 0x38, 0x04, 0x31, 0x32, 0x2e, 0x31, 0x5b,
0x05, 0x01, 0x7f, 0x01, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x0b, 0x04, 0x15, 0x32,
0x0b, 0x04, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x0d, 0x04, 0x02, 0xa4, 0x06, 0x06, 0x14, 0x00,
0x02, 0x43, 0x00, 0x04, 0x3e, 0x00, 0x51, 0x00, 0x66, 0x72,
0x6f, 0x6d, 0x7b, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74,
0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x71,
0x00, 0x03, 0xe9, 0x02, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65,
0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xad, 0x00, 0x90, 0x57,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0xc8, 0x00,
0x61, 0x00, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x93, 0x07, 0x01,
0xcc, 0x06, 0x23, 0x69, 0x6e, 0x72, 0x03, 0x11, 0x73, 0x1e,
0x07, 0x13, 0x72, 0x81, 0x02, 0x22, 0x62, 0x65, 0x0b, 0x04,
0x01, 0x3c, 0x00, 0x24, 0x00, 0x78, 0x3d, 0x00, 0x05, 0x36,
0x01, 0x25, 0x69, 0x6e, 0x24, 0x02, 0x10, 0x3a, 0x82, 0x02,
0x01, 0x48, 0x03, 0x03, 0xec, 0x06, 0x53, 0x69, 0x73, 0x00,
0x6f, 0x64, 0xc0, 0x01, 0x25, 0x6f, 0x6e, 0x7e, 0x04, 0x04,
0x58, 0x00, 0x01, 0x63, 0x01, 0x01, 0x45, 0x01, 0x53, 0x47,
0x72, 0x69, 0x64, 0x73, 0x38, 0x02, 0x71, 0x74, 0x00, 0x6c,
0x65, 0x61, 0x73, 0x74, 0x31, 0x00, 0x00, 0x3e, 0x00, 0x70,
0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0xd2, 0x00, 0x21,
0x65, 0x6e, 0x96, 0x05, 0x90, 0x62, 0x65, 0x00, 0x65, 0x61,
0x73, 0x69, 0x65, 0x72, 0x0d, 0x00, 0x00, 0x74, 0x03, 0x02,
0x4a, 0x01, 0xa0, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75,
0x6c, 0x74, 0x79, 0x02, 0x06, 0x03, 0x55, 0x05, 0x02, 0x30,
0x02, 0x06, 0x1a, 0x00, 0x03, 0xd2, 0x04, 0x60, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x61, 0xe6, 0x05, 0x02, 0x1b, 0x06, 0xf0,
0x00, 0x2e, 0x00, 0x41, 0x74, 0x00, 0x54, 0x72, 0x69, 0x63,
0x6b, 0x79, 0x00, 0x6c, 0x65, 0x76, 0x6d, 0x06, 0x31, 0x79,
0x6f, 0x75, 0x71, 0x01, 0x62, 0x72, 0x65, 0x71, 0x75, 0x69,
0x72, 0x10, 0x06, 0x89, 0x6d, 0x61, 0x6b, 0x65, 0x00, 0x6d,
0x6f, 0x72, 0xfc, 0x03, 0x53, 0x61, 0x62, 0x6f, 0x75, 0x74,
0xb4, 0x04, 0x09, 0x4d, 0x02, 0x42, 0x72, 0x6f, 0x77, 0x2f,
0xbb, 0x07, 0x61, 0x00, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0xb8,
0x07, 0x62, 0x53, 0x74, 0x72, 0x69, 0x70, 0x20, 0x6e, 0x07,
0xe1, 0x00, 0x00, 0x49, 0x66, 0x00, 0x74, 0x72, 0x75, 0x65,
0x2c, 0x00, 0x73, 0x6f, 0x6d, 0x8b, 0x01, 0x08, 0x8b, 0x07,
0x0e, 0x6c, 0x08, 0x02, 0x05, 0x03, 0x10, 0x64, 0x25, 0x01,
0x03, 0xc2, 0x00, 0x01, 0x18, 0x01, 0x40, 0x69, 0x6d, 0x65,
0x2c, 0x9c, 0x00, 0x04, 0xf7, 0x02, 0x03, 0xef, 0x06, 0x02,
0xa9, 0x00, 0xa0, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c,
0x74, 0x2e, 0x00,
0x73, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf2, 0x2a, 0x00, 0x00,
0x00, 0x41, 0x00, 0x72, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67,
0x75, 0x6c, 0x61, 0x72, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00,
0x68, 0x61, 0x73, 0x00, 0x62, 0x65, 0x65, 0x6e, 0x00, 0x66,
0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x77, 0x69, 0x74, 0x68,
0x00, 0x61, 0x00, 0x6d, 0x69, 0x78, 0x74, 0x75, 0x72, 0x65,
0x00, 0x6f, 0x66, 0x00, 0x6d, 0x54, 0x00, 0xf2, 0x04, 0x00,
0x28, 0x74, 0x68, 0x61, 0x74, 0x00, 0x69, 0x73, 0x2c, 0x00,
0x64, 0x6f, 0x6d, 0x69, 0x6e, 0x6f, 0x65, 0x73, 0x2d, 0x00,
0xf1, 0x05, 0x6f, 0x6e, 0x65, 0x00, 0x70, 0x6f, 0x73, 0x69,
0x74, 0x69, 0x76, 0x65, 0x00, 0x65, 0x6e, 0x64, 0x00, 0x61,
0x6e, 0x64, 0x15, 0x00, 0x44, 0x6e, 0x65, 0x67, 0x61, 0x15,
0x00, 0x11, 0x29, 0x16, 0x00, 0x56, 0x62, 0x6c, 0x61, 0x6e,
0x6b, 0x3f, 0x00, 0x0f, 0x52, 0x00, 0x05, 0xf6, 0x0a, 0x74,
0x77, 0x6f, 0x00, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c,
0x00, 0x70, 0x6f, 0x6c, 0x65, 0x73, 0x29, 0x2e, 0x00, 0x54,
0x68, 0x65, 0x73, 0x65, 0x28, 0x00, 0xf0, 0x05, 0x61, 0x72,
0x65, 0x00, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x6c,
0x79, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x00, 0x73, 0xc6, 0x00,
0xf2, 0x0a, 0x69, 0x6e, 0x00, 0x73, 0x69, 0x6c, 0x68, 0x6f,
0x75, 0x65, 0x74, 0x74, 0x65, 0x2e, 0x00, 0x41, 0x72, 0x6f,
0x75, 0x6e, 0x64, 0x00, 0x74, 0x68, 0x65, 0xee, 0x00, 0x00,
0x37, 0x00, 0xf0, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64,
0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0xe3,
0x00, 0xf1, 0x01, 0x63, 0x6c, 0x75, 0x65, 0x73, 0x00, 0x69,
0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x31,
0x00, 0x06, 0x1f, 0x00, 0x05, 0xde, 0x00, 0x00, 0xc4, 0x00,
0x05, 0xd6, 0x00, 0x01, 0x9a, 0x00, 0xa0, 0x00, 0x63, 0x6f,
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x7b, 0x00, 0x50,
0x63, 0x65, 0x72, 0x74, 0x61, 0x08, 0x00, 0x61, 0x6f, 0x6c,
0x75, 0x6d, 0x6e, 0x73, 0x30, 0x00, 0xf0, 0x0b, 0x72, 0x6f,
0x77, 0x73, 0x2e, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x72,
0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f,
0x00, 0x63, 0x6f, 0x72, 0x8c, 0x01, 0x22, 0x6c, 0x79, 0x90,
0x00, 0x01, 0x72, 0x00, 0x04, 0x6a, 0x01, 0x0f, 0x2b, 0x01,
0x00, 0x51, 0x73, 0x75, 0x63, 0x68, 0x00, 0x2f, 0x01, 0x31,
0x61, 0x6c, 0x6c, 0x2d, 0x00, 0x02, 0xb4, 0x00, 0x00, 0xd1,
0x00, 0xa3, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65,
0x64, 0x2c, 0x3f, 0x01, 0xd0, 0x68, 0x65, 0x00, 0x61, 0x64,
0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0xa2, 0x00,
0x72, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x41, 0x00,
0x21, 0x6e, 0x6f, 0x61, 0x01, 0x40, 0x73, 0x69, 0x6d, 0x69,
0x06, 0x02, 0x02, 0x75, 0x00, 0x23, 0x69, 0x63, 0xd0, 0x00,
0xf1, 0x00, 0x6d, 0x61, 0x79, 0x00, 0x62, 0x65, 0x00, 0x6f,
0x72, 0x74, 0x68, 0x6f, 0x67, 0x6f, 0x6e, 0x5f, 0x01, 0xd2,
0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x00, 0x28,
0x73, 0x69, 0x6e, 0xac, 0x00, 0xb8, 0x79, 0x00, 0x72, 0x65,
0x70, 0x65, 0x6c, 0x29, 0x2e, 0x00, 0x4e, 0xa9, 0x01, 0x72,
0x00, 0x64, 0x6f, 0x00, 0x6e, 0x6f, 0x74, 0x1d, 0x00, 0x11,
0x2c, 0xc9, 0x00, 0x30, 0x63, 0x61, 0x6e, 0x51, 0x00, 0x05,
0x44, 0x00, 0xc1, 0x74, 0x6f, 0x00, 0x61, 0x6e, 0x79, 0x00,
0x6f, 0x74, 0x68, 0x65, 0x72, 0x35, 0x00, 0x00, 0x1d, 0x01,
0xf1, 0x0b, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x00, 0x66,
0x6f, 0x72, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75,
0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0x2d, 0x01,
0xa0, 0x4a, 0x61, 0x6e, 0x6b, 0x6f, 0x00, 0x5b, 0x31, 0x36,
0x5d, 0x2d, 0x00, 0x13, 0x4d, 0x27, 0x01, 0x22, 0x77, 0x61,
0x7f, 0x01, 0x70, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64,
0x29, 0x00, 0x01, 0x3d, 0x00, 0x60, 0x63, 0x6f, 0x6c, 0x6c,
0x65, 0x63, 0xfe, 0x00, 0xf0, 0x01, 0x00, 0x62, 0x79, 0x00,
0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61, 0x72, 0x76,
0x65, 0x79, 0x3e, 0x00, 0x00, 0x46, 0x00, 0xd0, 0x00, 0x68,
0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
0x6a, 0x5c, 0x00, 0xc2, 0x2e, 0x61, 0x74, 0x2f, 0x52, 0x61,
0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f, 0x5f, 0x00, 0xf5, 0x03,
0x65, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74,
0x6d, 0x00, 0x00, 0x00, 0x33, 0x33, 0x2e, 0x31, 0x5d, 0x03,
0x01, 0x74, 0x00, 0xf0, 0x02, 0x6f, 0x6c, 0x73, 0x20, 0x00,
0x00, 0x00, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0x37, 0x02, 0xf5, 0x00, 0x6f, 0x6e, 0x00, 0x61,
0x6e, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x00, 0x73, 0x71,
0x75, 0x6e, 0x02, 0x33, 0x73, 0x00, 0x61, 0x68, 0x01, 0x23,
0x00, 0x61, 0x86, 0x01, 0x02, 0x54, 0x02, 0x26, 0x6f, 0x6e,
0xb3, 0x01, 0x05, 0x66, 0x02, 0x00, 0x15, 0x01, 0x00, 0x4b,
0x00, 0x00, 0x15, 0x00, 0x03, 0x46, 0x00, 0x13, 0x61, 0xc5,
0x02, 0x09, 0x7d, 0x02, 0x04, 0x24, 0x00, 0x02, 0x4b, 0x01,
0x40, 0x68, 0x61, 0x6c, 0x66, 0xad, 0x02, 0x06, 0x49, 0x02,
0x39, 0x3b, 0x00, 0x6c, 0x9e, 0x00, 0x20, 0x61, 0x67, 0x9c,
0x02, 0x83, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x73,
0x74, 0x00, 0x62, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0xab,
0x01, 0x10, 0x61, 0x40, 0x01, 0x31, 0x72, 0x64, 0x00, 0x32,
0x00, 0x87, 0x00, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73,
0x51, 0x00, 0x00, 0x3f, 0x01, 0x4f, 0x52, 0x69, 0x67, 0x68,
0xf2, 0x00, 0x14, 0x08, 0xc3, 0x02, 0x10, 0x00, 0xa4, 0x00,
0x2c, 0x65, 0x2e, 0x3f, 0x00, 0x02, 0x93, 0x00, 0x03, 0x32,
0x00, 0x00, 0x96, 0x02, 0x41, 0x71, 0x75, 0x65, 0x73, 0x17,
0x01, 0x54, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0xe2, 0x00, 0x02,
0x44, 0x00, 0x90, 0x2c, 0x00, 0x73, 0x69, 0x67, 0x6e, 0x69,
0x66, 0x79, 0x3a, 0x00, 0x12, 0x60, 0xeb, 0x01, 0x20, 0x61,
0x6e, 0x6f, 0x02, 0x22, 0x62, 0x65, 0x6d, 0x00, 0x84, 0x27,
0x00, 0x28, 0x77, 0x68, 0x69, 0x63, 0x68, 0x75, 0x02, 0x81,
0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x00, 0x74, 0x95, 0x02,
0x61, 0x65, 0x00, 0x64, 0x65, 0x64, 0x75, 0x18, 0x02, 0xf2,
0x02, 0x73, 0x00, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x00, 0x73,
0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x29, 0x2c, 0xaa, 0x03,
0x0e, 0x9c, 0x00, 0x02, 0xdb, 0x00, 0x37, 0x69, 0x65, 0x73,
0x87, 0x00, 0x1d, 0x2e, 0xf7, 0x01, 0x11, 0x61, 0x8d, 0x03,
0x51, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0xb8, 0x00, 0x50, 0x00,
0x69, 0x74, 0x00, 0x61, 0x0c, 0x03, 0x80, 0x6e, 0x65, 0x00,
0x28, 0x67, 0x72, 0x65, 0x79, 0x11, 0x00, 0xb4, 0x6f, 0x75,
0x74, 0x29, 0x2c, 0x00, 0x6f, 0x72, 0x00, 0x75, 0x6e, 0x24,
0x00, 0x21, 0x69, 0x66, 0x06, 0x00, 0x91, 0x73, 0x00, 0x61,
0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x3d, 0x00, 0x23, 0x65,
0x64, 0x2e, 0x04, 0x01, 0xc5, 0x00, 0x40, 0x61, 0x6c, 0x73,
0x6f, 0xc7, 0x00, 0x02, 0xf3, 0x03, 0x91, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x16, 0x03, 0x20, 0x6d,
0x6f, 0x93, 0x04, 0x04, 0x16, 0x00, 0x1a, 0x61, 0xeb, 0x04,
0x74, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0xcd, 0x04,
0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x00, 0x02,
0xa7, 0x00, 0x54, 0x6c, 0x61, 0x79, 0x00, 0x61, 0x9c, 0x01,
0x03, 0xf4, 0x05, 0x0a, 0x81, 0x02, 0x0c, 0xa9, 0x02, 0x34,
0x3b, 0x00, 0x70, 0x51, 0x00, 0x0f, 0x49, 0x02, 0x08, 0x04,
0xaa, 0x02, 0x19, 0x6e, 0x3f, 0x02, 0x04, 0xc0, 0x01, 0x13,
0x61, 0xe1, 0x05, 0x09, 0x98, 0x02, 0x35, 0x2e, 0x00, 0x55,
0xa7, 0x00, 0x20, 0x73, 0x70, 0x0c, 0x05, 0x30, 0x62, 0x61,
0x72, 0xe7, 0x04, 0x32, 0x6f, 0x77, 0x73, 0x1b, 0x02, 0x10,
0x6d, 0x38, 0x04, 0x2c, 0x6f, 0x66, 0x14, 0x05, 0x03, 0x5e,
0x04, 0x72, 0x6e, 0x6f, 0x74, 0x2d, 0x62, 0x65, 0x2d, 0x1d,
0x00, 0x51, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x69, 0x00, 0x00,
0x4c, 0x04, 0x02, 0xd2, 0x01, 0x16, 0x00, 0x6a, 0x00, 0x43,
0x00, 0x00, 0x28, 0x41, 0x40, 0x05, 0x13, 0x61, 0x0a, 0x02,
0x72, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0xc1, 0x05,
0x13, 0x73, 0x38, 0x04, 0x31, 0x32, 0x2e, 0x31, 0x5b, 0x05,
0x01, 0x7f, 0x01, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x2e, 0x29, 0x0b, 0x04, 0x15, 0x32, 0x0b,
0x04, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x0d, 0x04, 0x02, 0xa4, 0x06, 0x06, 0x14, 0x00, 0x02,
0x43, 0x00, 0x04, 0x3e, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f,
0x6d, 0x7b, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x71, 0x00,
0x03, 0xe9, 0x02, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0xad, 0x00, 0x90, 0x57, 0x69,
0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0xc8, 0x00, 0x61,
0x00, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x93, 0x07, 0x01, 0xcc,
0x06, 0x23, 0x69, 0x6e, 0x72, 0x03, 0x11, 0x73, 0x1e, 0x07,
0x13, 0x72, 0x81, 0x02, 0x22, 0x62, 0x65, 0x0b, 0x04, 0x01,
0x3c, 0x00, 0x24, 0x00, 0x78, 0x3d, 0x00, 0x05, 0x36, 0x01,
0x25, 0x69, 0x6e, 0x24, 0x02, 0x10, 0x3a, 0x82, 0x02, 0x01,
0x48, 0x03, 0x03, 0xec, 0x06, 0x53, 0x69, 0x73, 0x00, 0x6f,
0x64, 0xc0, 0x01, 0x25, 0x6f, 0x6e, 0x7e, 0x04, 0x04, 0x58,
0x00, 0x01, 0x63, 0x01, 0x01, 0x45, 0x01, 0x53, 0x47, 0x72,
0x69, 0x64, 0x73, 0x38, 0x02, 0x71, 0x74, 0x00, 0x6c, 0x65,
0x61, 0x73, 0x74, 0x31, 0x00, 0x00, 0x3e, 0x00, 0x70, 0x64,
0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0xd2, 0x00, 0x21, 0x65,
0x6e, 0x96, 0x05, 0x90, 0x62, 0x65, 0x00, 0x65, 0x61, 0x73,
0x69, 0x65, 0x72, 0x0d, 0x00, 0x00, 0x74, 0x03, 0x02, 0x4a,
0x01, 0xa0, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c,
0x74, 0x79, 0x02, 0x06, 0x03, 0x55, 0x05, 0x02, 0x30, 0x02,
0x06, 0x1a, 0x00, 0x03, 0xd2, 0x04, 0x60, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0xe6, 0x05, 0x02, 0x1b, 0x06, 0xf0, 0x00,
0x2e, 0x00, 0x41, 0x74, 0x00, 0x54, 0x72, 0x69, 0x63, 0x6b,
0x79, 0x00, 0x6c, 0x65, 0x76, 0x6d, 0x06, 0x31, 0x79, 0x6f,
0x75, 0x71, 0x01, 0x62, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72,
0x10, 0x06, 0x89, 0x6d, 0x61, 0x6b, 0x65, 0x00, 0x6d, 0x6f,
0x72, 0xfc, 0x03, 0x53, 0x61, 0x62, 0x6f, 0x75, 0x74, 0xb4,
0x04, 0x09, 0x4d, 0x02, 0x42, 0x72, 0x6f, 0x77, 0x2f, 0xbb,
0x07, 0x61, 0x00, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0xb8, 0x07,
0x62, 0x53, 0x74, 0x72, 0x69, 0x70, 0x20, 0x6e, 0x07, 0xe1,
0x00, 0x00, 0x49, 0x66, 0x00, 0x74, 0x72, 0x75, 0x65, 0x2c,
0x00, 0x73, 0x6f, 0x6d, 0x8b, 0x01, 0x08, 0x8b, 0x07, 0x0e,
0x6c, 0x08, 0x02, 0x05, 0x03, 0x10, 0x64, 0x25, 0x01, 0x03,
0xc2, 0x00, 0x01, 0x18, 0x01, 0x40, 0x69, 0x6d, 0x65, 0x2c,
0x9c, 0x00, 0x04, 0xf7, 0x02, 0x03, 0xef, 0x06, 0x02, 0xa9,
0x00, 0xa0, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74,
0x2e, 0x00,
};
const unsigned short help_text_len = 2502;
const unsigned short help_text_words = 438;
const unsigned short help_text_len = 2522;
const unsigned short help_text_words = 439;
const char quick_help_text[] = "Place magnets to satisfy the clues and avoid like poles touching.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,251 +6,269 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 81, TEXT_UNDERLINE },
{ 157, TEXT_CENTER | C_RED },
{ 244, TEXT_UNDERLINE },
{ 268, TEXT_UNDERLINE },
{ 507, TEXT_CENTER | C_RED },
{ 524, TEXT_UNDERLINE },
{ 525, TEXT_UNDERLINE },
{ 535, TEXT_UNDERLINE },
{ 547, TEXT_UNDERLINE },
{ 87, TEXT_UNDERLINE },
{ 163, TEXT_CENTER | C_RED },
{ 250, TEXT_UNDERLINE },
{ 274, TEXT_UNDERLINE },
{ 513, TEXT_CENTER | C_RED },
{ 530, TEXT_UNDERLINE },
{ 531, TEXT_UNDERLINE },
{ 541, TEXT_UNDERLINE },
{ 553, TEXT_UNDERLINE },
{ 650, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 3466 comp 2283 ratio 0.658684 level 10 saved 1183 */
/* orig 3752 comp 2460 ratio 0.65565 level 10 saved 1292 */
const char help_text[] = {
0xf0, 0x2e, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x32, 0x3a, 0x20, 0x4d, 0x61, 0x70, 0x20, 0x00, 0x00,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x67,
0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x6d, 0x61, 0x70,
0x00, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x69, 0x6e,
0x67, 0x00, 0x6f, 0x66, 0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x0c, 0x00, 0x80, 0x72, 0x65, 0x67, 0x69,
0x6f, 0x6e, 0x73, 0x2e, 0x37, 0x00, 0xf0, 0x01, 0x72, 0x00,
0x74, 0x61, 0x73, 0x6b, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f,
0x00, 0x63, 0x6f, 0x6c, 0x12, 0x00, 0x43, 0x65, 0x61, 0x63,
0x68, 0x25, 0x00, 0x90, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00,
0x6f, 0x6e, 0x65, 0x38, 0x00, 0x10, 0x66, 0x1d, 0x00, 0x02,
0x24, 0x00, 0xf4, 0x0d, 0x73, 0x2c, 0x00, 0x69, 0x6e, 0x00,
0x73, 0x75, 0x63, 0x68, 0x00, 0x61, 0x00, 0x77, 0x61, 0x79,
0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x6e, 0x6f, 0x00, 0x74,
0x77, 0x6f, 0x60, 0x00, 0x50, 0x00, 0x73, 0x68, 0x61, 0x72,
0x7f, 0x00, 0xf3, 0x09, 0x61, 0x00, 0x62, 0x6f, 0x75, 0x6e,
0x64, 0x61, 0x72, 0x79, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x74, 0x68, 0x65, 0x00, 0x73, 0x61, 0x6d, 0x65, 0x4c, 0x00,
0x15, 0x2e, 0xbf, 0x00, 0x82, 0x70, 0x72, 0x6f, 0x76, 0x69,
0x64, 0x65, 0x64, 0x76, 0x00, 0x45, 0x73, 0x6f, 0x6d, 0x65,
0x4c, 0x00, 0x73, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79,
0x33, 0x00, 0xe0, 0x65, 0x64, 0x2c, 0x00, 0x73, 0x75, 0x66,
0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0xbb, 0x00, 0x32,
0x6d, 0x61, 0x6b, 0x59, 0x00, 0x72, 0x72, 0x65, 0x6d, 0x61,
0x69, 0x6e, 0x64, 0xea, 0x00, 0x01, 0x6a, 0x00, 0x40, 0x6f,
0x6c, 0x75, 0x74, 0xcb, 0x00, 0xe5, 0x75, 0x6e, 0x69, 0x71,
0x75, 0x65, 0x2e, 0x00, 0x00, 0x00, 0x4f, 0x6e, 0x6c, 0x79,
0x5a, 0x00, 0x51, 0x77, 0x68, 0x69, 0x63, 0x68, 0xac, 0x00,
0xa0, 0x65, 0x00, 0x61, 0x00, 0x6c, 0x65, 0x6e, 0x67, 0x74,
0x68, 0x3c, 0x00, 0x30, 0x62, 0x6f, 0x72, 0x46, 0x00, 0x20,
0x61, 0x72, 0x54, 0x00, 0x60, 0x71, 0x75, 0x69, 0x72, 0x65,
0x64, 0x69, 0x00, 0x90, 0x62, 0x65, 0x00, 0x64, 0x69, 0x66,
0x66, 0x65, 0x72, 0x79, 0x00, 0x03, 0x0d, 0x01, 0x5b, 0x2e,
0x00, 0x54, 0x77, 0x6f, 0x51, 0x00, 0x90, 0x6d, 0x65, 0x65,
0x74, 0x00, 0x61, 0x74, 0x00, 0x6f, 0x6c, 0x00, 0x00, 0x41,
0x01, 0xb1, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x00, 0x28, 0x69,
0x2e, 0x65, 0x2e, 0x55, 0x00, 0xff, 0x0c, 0x64, 0x69, 0x61,
0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x73, 0x65,
0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x29, 0x00, 0x6d,
0x61, 0x79, 0x00, 0x62, 0x23, 0x01, 0x00, 0x91, 0x00, 0x00,
0x49, 0x00, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x40, 0x01, 0x90,
0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0xb9,
0x01, 0xf0, 0x08, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61,
0x6c, 0x3b, 0x00, 0x49, 0x27, 0x76, 0x65, 0x00, 0x6e, 0x65,
0x76, 0x65, 0x72, 0x00, 0x73, 0x65, 0x09, 0x02, 0xc1, 0x6e,
0x00, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
0x61, 0x04, 0x01, 0xf0, 0x09, 0x6f, 0x66, 0x00, 0x69, 0x74,
0x00, 0x61, 0x6e, 0x79, 0x77, 0x68, 0x65, 0x72, 0x65, 0x00,
0x65, 0x6c, 0x73, 0x65, 0x2e, 0x00, 0x54, 0x68, 0x65, 0x2e,
0x02, 0x42, 0x63, 0x65, 0x70, 0x74, 0x2b, 0x02, 0x00, 0xe9,
0x01, 0x12, 0x2d, 0x7a, 0x00, 0x00, 0xc0, 0x01, 0x03, 0x6b,
0x00, 0xf0, 0x20, 0x77, 0x61, 0x73, 0x00, 0x73, 0x75, 0x67,
0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x00, 0x62, 0x79, 0x00,
0x4f, 0x77, 0x65, 0x6e, 0x00, 0x44, 0x75, 0x6e, 0x6e, 0x3b,
0x00, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x00, 0x6d, 0x75,
0x73, 0x74, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x67, 0x6f,
0x2d, 0x01, 0x91, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00,
0x61, 0x6e, 0x3b, 0x01, 0xf1, 0x07, 0x56, 0x65, 0x72, 0x69,
0x74, 0x79, 0x00, 0x41, 0x6c, 0x6c, 0x61, 0x6e, 0x00, 0x66,
0x6f, 0x72, 0x00, 0x69, 0x6e, 0x73, 0x70, 0x69, 0x63, 0x00,
0x00, 0xf0, 0x00, 0x52, 0x74, 0x72, 0x61, 0x69, 0x6e, 0xb6,
0x01, 0x52, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x54, 0x02, 0x12,
0x6c, 0x77, 0x01, 0x01, 0x0b, 0x02, 0x40, 0x61, 0x6c, 0x69,
0x73, 0x2e, 0x00, 0x00, 0x79, 0x00, 0x15, 0x27, 0x8d, 0x00,
0x01, 0xa7, 0x02, 0xb3, 0x61, 0x73, 0x00, 0x61, 0x00, 0x76,
0x69, 0x61, 0x62, 0x6c, 0x65, 0xb0, 0x00, 0x00, 0xd8, 0x00,
0x42, 0x61, 0x6e, 0x6b, 0x73, 0x90, 0x00, 0xf1, 0x01, 0x74,
0x6f, 0x00, 0x47, 0x61, 0x72, 0x65, 0x74, 0x68, 0x00, 0x54,
0x61, 0x79, 0x6c, 0x6f, 0x72, 0x80, 0x00, 0xa0, 0x6d, 0x61,
0x6e, 0x79, 0x00, 0x64, 0x65, 0x74, 0x61, 0x69, 0x66, 0x00,
0x06, 0x4f, 0x00, 0x10, 0x73, 0x70, 0x01, 0x41, 0x32, 0x32,
0x2e, 0x31, 0x60, 0x03, 0x80, 0x63, 0x6f, 0x6e, 0x74, 0x72,
0x6f, 0x6c, 0x73, 0x69, 0x03, 0x15, 0x54, 0x25, 0x03, 0x13,
0x61, 0xf0, 0x01, 0x71, 0x2c, 0x00, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0xc2, 0x00, 0xf0, 0x00, 0x6c, 0x65, 0x66, 0x74, 0x00,
0x6d, 0x6f, 0x75, 0x73, 0x65, 0x00, 0x62, 0x75, 0x74, 0x74,
0x70, 0x01, 0x01, 0x85, 0x01, 0x23, 0x65, 0x78, 0x89, 0x03,
0x03, 0x55, 0x03, 0x03, 0x9a, 0x02, 0x31, 0x64, 0x65, 0x73,
0x56, 0x02, 0x04, 0x52, 0x00, 0x72, 0x6e, 0x64, 0x00, 0x64,
0x72, 0x61, 0x67, 0xf8, 0x00, 0x03, 0x15, 0x00, 0x41, 0x69,
0x6e, 0x74, 0x6f, 0x2d, 0x00, 0x33, 0x6e, 0x65, 0x77, 0x3f,
0x00, 0x00, 0x9d, 0x00, 0x31, 0x28, 0x54, 0x68, 0x2f, 0x03,
0xf3, 0x07, 0x67, 0x72, 0x61, 0x6d, 0x00, 0x77, 0x69, 0x6c,
0x6c, 0x00, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x00, 0x65,
0x6e, 0x73, 0x75, 0x72, 0x40, 0x02, 0x47, 0x74, 0x61, 0x72,
0x74, 0xc0, 0x01, 0x10, 0x68, 0x24, 0x01, 0x00, 0x51, 0x01,
0x31, 0x61, 0x73, 0x74, 0x92, 0x02, 0x06, 0x8e, 0x00, 0x01,
0xf2, 0x03, 0x02, 0x72, 0x00, 0x42, 0x2c, 0x00, 0x73, 0x6f,
0x82, 0x00, 0x01, 0x67, 0x02, 0x24, 0x69, 0x73, 0x5a, 0x00,
0xa0, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x21,
0x29, 0x8d, 0x02, 0x82, 0x66, 0x00, 0x79, 0x6f, 0x75, 0x00,
0x6e, 0x65, 0x9e, 0x01, 0x48, 0x63, 0x6c, 0x65, 0x61, 0x13,
0x01, 0x00, 0x1c, 0x00, 0x32, 0x63, 0x61, 0x6e, 0xcf, 0x00,
0x41, 0x66, 0x72, 0x6f, 0x6d, 0x06, 0x01, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x23, 0x00, 0x22, 0x6f, 0x72, 0x19, 0x00, 0x24,
0x74, 0x68, 0xb1, 0x01, 0x06, 0x26, 0x04, 0x11, 0x69, 0x20,
0x01, 0x21, 0x72, 0x65, 0x28, 0x03, 0x29, 0x6e, 0x6f, 0x3a,
0x00, 0x11, 0x73, 0x66, 0x01, 0x00, 0x04, 0x01, 0x52, 0x44,
0x72, 0x61, 0x67, 0x67, 0x60, 0x04, 0x03, 0x2d, 0x01, 0x24,
0x75, 0x73, 0x4c, 0x02, 0x4b, 0x72, 0x69, 0x67, 0x68, 0x8b,
0x01, 0x01, 0x26, 0x01, 0x64, 0x73, 0x74, 0x69, 0x70, 0x70,
0x6c, 0x2a, 0x04, 0x01, 0xff, 0x00, 0x28, 0x69, 0x6e, 0x71,
0x01, 0x13, 0x2c, 0xbf, 0x03, 0x04, 0xc2, 0x00, 0x00, 0x41,
0x00, 0x01, 0x5c, 0x02, 0x40, 0x6e, 0x6f, 0x74, 0x65, 0xeb,
0x00, 0x10, 0x79, 0xf1, 0x03, 0x32, 0x65, 0x6c, 0x66, 0x35,
0x00, 0x00, 0x27, 0x00, 0x58, 0x74, 0x68, 0x69, 0x6e, 0x6b,
0x52, 0x00, 0x11, 0x6d, 0x7d, 0x00, 0x28, 0x62, 0x65, 0x58,
0x00, 0x34, 0x2e, 0x00, 0x41, 0x1f, 0x00, 0x00, 0x57, 0x00,
0x00, 0x54, 0x02, 0x00, 0xee, 0x02, 0x03, 0x90, 0x00, 0x10,
0x73, 0x86, 0x00, 0x74, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70,
0x6c, 0xf4, 0x03, 0x01, 0xad, 0x01, 0x00, 0x96, 0x03, 0x10,
0x2e, 0xee, 0x01, 0x02, 0x8b, 0x01, 0x41, 0x6f, 0x66, 0x74,
0x65, 0x94, 0x00, 0x41, 0x66, 0x75, 0x6c, 0x00, 0xa3, 0x01,
0x00, 0xd7, 0x01, 0x01, 0xa8, 0x04, 0x20, 0x64, 0x69, 0x0f,
0x05, 0xd3, 0x75, 0x6c, 0x74, 0x79, 0x00, 0x6c, 0x65, 0x76,
0x65, 0x6c, 0x73, 0x2e, 0x29, 0x19, 0x06, 0x00, 0x70, 0x00,
0x01, 0x04, 0x03, 0x22, 0x75, 0x73, 0xf9, 0x00, 0xb1, 0x63,
0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73,
0x5b, 0x03, 0x20, 0x6f, 0x76, 0x6a, 0x01, 0x00, 0x7d, 0x01,
0x01, 0x1f, 0x00, 0x42, 0x6d, 0x61, 0x70, 0x3a, 0x28, 0x00,
0x02, 0x56, 0x01, 0x28, 0x6f, 0x66, 0x36, 0x00, 0x92, 0x69,
0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0xba, 0x01,
0x34, 0x6f, 0x73, 0x69, 0x59, 0x04, 0x07, 0x33, 0x00, 0x00,
0x17, 0x01, 0x43, 0x77, 0x6f, 0x75, 0x6c, 0xd1, 0x02, 0x12,
0x28, 0x54, 0x01, 0x20, 0x69, 0x73, 0x46, 0x01, 0xa1, 0x00,
0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x69, 0x44,
0x02, 0x31, 0x27, 0x72, 0x65, 0x26, 0x03, 0x03, 0x1e, 0x01,
0x25, 0x27, 0x73, 0x07, 0x02, 0x70, 0x2c, 0x00, 0x73, 0x69,
0x6e, 0x63, 0x65, 0xb1, 0x04, 0x70, 0x64, 0x65, 0x70, 0x65,
0x6e, 0x64, 0x73, 0x29, 0x00, 0x01, 0x39, 0x03, 0x41, 0x69,
0x72, 0x65, 0x63, 0x77, 0x00, 0x01, 0x43, 0x02, 0x06, 0xb2,
0x01, 0x92, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x61, 0x63, 0x68,
0x65, 0xca, 0x00, 0x04, 0x4a, 0x00, 0x76, 0x29, 0x2e, 0x00,
0x50, 0x72, 0x65, 0x73, 0x1e, 0x02, 0x50, 0x65, 0x74, 0x75,
0x72, 0x6e, 0x01, 0x01, 0x02, 0x25, 0x03, 0x00, 0xe0, 0x01,
0x01, 0xa9, 0x00, 0x2a, 0x6f, 0x66, 0x0c, 0x02, 0x00, 0xfa,
0x01, 0x49, 0x62, 0x6f, 0x76, 0x65, 0x16, 0x02, 0x02, 0x0f,
0x04, 0x02, 0xa4, 0x06, 0x0b, 0x4f, 0x01, 0x3f, 0x3b, 0x00,
0x70, 0x68, 0x00, 0x04, 0x20, 0x61, 0x67, 0xef, 0x01, 0x63,
0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x3c, 0x01, 0x00, 0x72,
0x00, 0x02, 0x7d, 0x05, 0x91, 0x73, 0x70, 0x61, 0x63, 0x65,
0x00, 0x62, 0x61, 0x72, 0xac, 0x01, 0x20, 0x62, 0x65, 0xaa,
0x01, 0xb1, 0x64, 0x00, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61,
0x72, 0x6c, 0x79, 0x62, 0x03, 0x40, 0x72, 0x65, 0x61, 0x74,
0xa1, 0x06, 0x03, 0x32, 0x02, 0x15, 0x64, 0x0d, 0x04, 0x7f,
0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x2d, 0x79, 0x00, 0x05,
0x30, 0x28, 0x77, 0x69, 0x50, 0x05, 0x10, 0x74, 0xe7, 0x01,
0x04, 0x1f, 0x00, 0x02, 0xb2, 0x00, 0x12, 0x29, 0x13, 0x03,
0x02, 0xbc, 0x03, 0x06, 0xbf, 0x02, 0x02, 0xf6, 0x00, 0x0f,
0xbb, 0x03, 0x07, 0x65, 0x00, 0x64, 0x6f, 0x65, 0x73, 0x3a,
0x1e, 0x04, 0x03, 0x8d, 0x02, 0x0c, 0x0e, 0x01, 0x43, 0x6d,
0x6f, 0x64, 0x65, 0xe2, 0x01, 0x02, 0xf5, 0x07, 0x43, 0x66,
0x69, 0x6c, 0x6c, 0x97, 0x01, 0x51, 0x65, 0x6e, 0x74, 0x69,
0x72, 0x68, 0x02, 0x00, 0xf7, 0x02, 0x36, 0x62, 0x75, 0x74,
0x48, 0x04, 0x20, 0x6f, 0x72, 0xda, 0x01, 0x02, 0x4d, 0x05,
0x66, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x2e, 0x6d, 0x04, 0x01,
0xe2, 0x00, 0x43, 0x00, 0x4c, 0x00, 0x64, 0x96, 0x06, 0x41,
0x6c, 0x61, 0x79, 0x2c, 0x2a, 0x00, 0x10, 0x67, 0x29, 0x07,
0x01, 0xcc, 0x00, 0x50, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x20,
0x02, 0x10, 0x73, 0x1e, 0x00, 0x09, 0xf8, 0x08, 0x29, 0x69,
0x6e, 0xd8, 0x08, 0x24, 0x6f, 0x66, 0xec, 0x02, 0x00, 0x83,
0x01, 0x09, 0xcb, 0x00, 0x03, 0xb6, 0x00, 0x22, 0x77, 0x61,
0x5a, 0x08, 0x60, 0x64, 0x69, 0x73, 0x63, 0x75, 0x73, 0x13,
0x01, 0x10, 0x70, 0x50, 0x05, 0x55, 0x63, 0x75, 0x6c, 0x61,
0x72, 0x7e, 0x07, 0x40, 0x6e, 0x73, 0x74, 0x61, 0xa4, 0x02,
0x01, 0xff, 0x00, 0xa0, 0x61, 0x00, 0x66, 0x72, 0x69, 0x65,
0x6e, 0x64, 0x00, 0x2d, 0xf3, 0x00, 0x01, 0x9a, 0x04, 0x00,
0x76, 0x08, 0x60, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0xf2,
0x02, 0x10, 0x6e, 0xa9, 0x00, 0x2a, 0x66, 0x6f, 0x62, 0x09,
0x40, 0x69, 0x73, 0x00, 0x6d, 0x48, 0x09, 0x60, 0x65, 0x61,
0x73, 0x69, 0x65, 0x72, 0x80, 0x02, 0x51, 0x6e, 0x00, 0x74,
0x72, 0x79, 0xac, 0x01, 0x00, 0x55, 0x08, 0x10, 0x66, 0x15,
0x00, 0x01, 0x04, 0x06, 0x50, 0x6d, 0x00, 0x61, 0x6c, 0x6c,
0x79, 0x07, 0x00, 0x48, 0x00, 0x13, 0x73, 0x7e, 0x09, 0x30,
0x73, 0x00, 0x60, 0xc9, 0x00, 0x00, 0xd0, 0x05, 0x41, 0x64,
0x6f, 0x77, 0x6e, 0x46, 0x06, 0x02, 0xfe, 0x04, 0x03, 0xe3,
0x00, 0x20, 0x62, 0x72, 0x17, 0x00, 0x01, 0xc3, 0x09, 0x12,
0x6e, 0x68, 0x07, 0x23, 0x6f, 0x70, 0xdd, 0x08, 0x11, 0x27,
0x4b, 0x06, 0x31, 0x41, 0x6c, 0x6c, 0x18, 0x00, 0x21, 0x61,
0x63, 0xfc, 0x06, 0x00, 0x97, 0x06, 0x61, 0x63, 0x72, 0x69,
0x62, 0x65, 0x64, 0xe3, 0x09, 0x03, 0x69, 0x03, 0x31, 0x32,
0x2e, 0x31, 0x8e, 0x05, 0x01, 0x49, 0x04, 0x50, 0x61, 0x76,
0x61, 0x69, 0x6c, 0x6b, 0x07, 0x22, 0x2e, 0x29, 0x29, 0x07,
0x11, 0x32, 0x29, 0x07, 0x00, 0xc5, 0x08, 0x52, 0x6d, 0x65,
0x74, 0x65, 0x72, 0x2b, 0x07, 0x56, 0x68, 0x65, 0x73, 0x65,
0x00, 0x14, 0x00, 0x02, 0x3f, 0x00, 0x04, 0x3a, 0x00, 0x06,
0xfd, 0x05, 0xe2, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x4d, 0x04, 0x12,
0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0xa9, 0x00, 0x91, 0x57, 0x69, 0x64,
0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0xde, 0x00, 0x51, 0x00,
0x00, 0x53, 0x69, 0x7a, 0x97, 0x0a, 0x32, 0x67, 0x72, 0x69,
0xab, 0x00, 0x51, 0x71, 0x75, 0x61, 0x72, 0x65, 0xbc, 0x07,
0x13, 0x52, 0x2b, 0x06, 0x3c, 0x00, 0x00, 0x4e, 0xf6, 0x0a,
0x22, 0x00, 0x69, 0x5d, 0x00, 0x41, 0x67, 0x65, 0x6e, 0x65,
0x74, 0x09, 0x02, 0x04, 0x02, 0x36, 0x00, 0x00, 0x44, 0x41,
0x05, 0xb1, 0x00, 0x00, 0x49, 0x6e, 0x00, 0x60, 0x45, 0x61,
0x73, 0x79, 0x27, 0xc9, 0x02, 0x13, 0x2c, 0x8f, 0x06, 0x21,
0x73, 0x68, 0xd4, 0x04, 0x03, 0x11, 0x07, 0x2f, 0x62, 0x65,
0x4f, 0x07, 0x02, 0x45, 0x77, 0x68, 0x6f, 0x73, 0x09, 0x05,
0x03, 0xd0, 0x03, 0x10, 0x64, 0x02, 0x01, 0x30, 0x6d, 0x69,
0x6e, 0xe6, 0x02, 0x40, 0x72, 0x69, 0x76, 0x69, 0xf6, 0x09,
0x11, 0x2e, 0x65, 0x00, 0x71, 0x4e, 0x6f, 0x72, 0x6d, 0x61,
0x6c, 0x27, 0xb7, 0x01, 0x52, 0x60, 0x48, 0x61, 0x72, 0x64,
0x72, 0x00, 0x12, 0x73, 0x44, 0x07, 0x01, 0xd5, 0x02, 0x02,
0x34, 0x0b, 0x02, 0xbf, 0x05, 0x20, 0x69, 0x6e, 0x09, 0x04,
0x00, 0xe8, 0x03, 0x10, 0x6c, 0x0c, 0x0b, 0x00, 0xdd, 0x09,
0x71, 0x78, 0x00, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0xab, 0x02,
0x5b, 0x65, 0x64, 0x75, 0x63, 0x65, 0xbc, 0x05, 0x08, 0x47,
0x0b, 0x50, 0x2e, 0x00, 0x48, 0x6f, 0x77, 0x20, 0x0a, 0x10,
0x2c, 0x56, 0x05, 0x08, 0x38, 0x08, 0x25, 0x62, 0x65, 0xe1,
0x07, 0x14, 0x00, 0x32, 0x04, 0x03, 0xc5, 0x02, 0x70, 0x74,
0x6f, 0x00, 0x67, 0x75, 0x65, 0x73, 0x69, 0x0a, 0xb3, 0x00,
0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x2e,
0x25, 0x01, 0x20, 0x55, 0x6e, 0x90, 0x00, 0x20, 0x6f, 0x6e,
0xd4, 0x01, 0x07, 0x2d, 0x01, 0x0a, 0x9c, 0x08, 0x81, 0x66,
0x65, 0x65, 0x6c, 0x00, 0x66, 0x72, 0x65, 0xc7, 0x00, 0x04,
0x79, 0x01, 0x03, 0x44, 0x03, 0x04, 0x30, 0x0b, 0x01, 0x1e,
0x02, 0x11, 0x73, 0xce, 0x06, 0x00, 0x08, 0x00, 0x21, 0x69,
0x74, 0x3c, 0x01, 0x03, 0x94, 0x00, 0x15, 0x79, 0xe0, 0x0b,
0x12, 0x6d, 0x9b, 0x06, 0x01, 0x56, 0x0b, 0x00, 0xe2, 0x0c,
0x01, 0x35, 0x0a, 0x11, 0x74, 0xc0, 0x0c, 0x12, 0x68, 0x11,
0x07, 0x14, 0x79, 0xa7, 0x01, 0x25, 0x73, 0x74, 0x3e, 0x01,
0x13, 0x61, 0xfd, 0x0b, 0x05, 0x0d, 0x0c, 0x51, 0x2e, 0x00,
0x53, 0x6f, 0x6c, 0xde, 0x00, 0x08, 0xc1, 0x00, 0x05, 0x93,
0x00, 0x00, 0x86, 0x0b, 0x03, 0xf5, 0x0b, 0x02, 0xfc, 0x00,
0x02, 0xcd, 0x03, 0x16, 0x64, 0x00, 0x01, 0x50, 0x69, 0x6e,
0x67, 0x2e, 0x00,
0xfa, 0x03, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x32, 0x3a, 0x20, 0x4d, 0x61, 0x70, 0x20, 0x00, 0x2d,
0x01, 0x00, 0xf0, 0x1e, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75,
0x00, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e,
0x00, 0x61, 0x00, 0x6d, 0x61, 0x70, 0x00, 0x63, 0x6f, 0x6e,
0x73, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x00, 0x6f, 0x66,
0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x0c,
0x00, 0x80, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
0x37, 0x00, 0xf0, 0x01, 0x72, 0x00, 0x74, 0x61, 0x73, 0x6b,
0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x63, 0x6f, 0x6c,
0x12, 0x00, 0x43, 0x65, 0x61, 0x63, 0x68, 0x25, 0x00, 0x90,
0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x6f, 0x6e, 0x65, 0x38,
0x00, 0x10, 0x66, 0x1d, 0x00, 0x02, 0x24, 0x00, 0xf4, 0x0d,
0x73, 0x2c, 0x00, 0x69, 0x6e, 0x00, 0x73, 0x75, 0x63, 0x68,
0x00, 0x61, 0x00, 0x77, 0x61, 0x79, 0x00, 0x74, 0x68, 0x61,
0x74, 0x00, 0x6e, 0x6f, 0x00, 0x74, 0x77, 0x6f, 0x60, 0x00,
0x50, 0x00, 0x73, 0x68, 0x61, 0x72, 0x7f, 0x00, 0xf3, 0x09,
0x61, 0x00, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x79,
0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x74, 0x68, 0x65, 0x00,
0x73, 0x61, 0x6d, 0x65, 0x4c, 0x00, 0x15, 0x2e, 0xbf, 0x00,
0x82, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x76,
0x00, 0x45, 0x73, 0x6f, 0x6d, 0x65, 0x4c, 0x00, 0x73, 0x61,
0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x33, 0x00, 0xe0, 0x65,
0x64, 0x2c, 0x00, 0x73, 0x75, 0x66, 0x66, 0x69, 0x63, 0x69,
0x65, 0x6e, 0x74, 0xbb, 0x00, 0x32, 0x6d, 0x61, 0x6b, 0x59,
0x00, 0x72, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x64, 0xea,
0x00, 0x01, 0x6a, 0x00, 0x40, 0x6f, 0x6c, 0x75, 0x74, 0xcb,
0x00, 0xb0, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x2c, 0x00,
0x61, 0x6e, 0x64, 0x19, 0x00, 0xf5, 0x0d, 0x73, 0x65, 0x00,
0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x00, 0x62, 0x65, 0x00,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x2e, 0x00, 0x00,
0x00, 0x4f, 0x6e, 0x6c, 0x79, 0x77, 0x00, 0x51, 0x77, 0x68,
0x69, 0x63, 0x68, 0xc9, 0x00, 0xa0, 0x65, 0x00, 0x61, 0x00,
0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x59, 0x00, 0x30, 0x62,
0x6f, 0x72, 0x63, 0x00, 0x20, 0x61, 0x72, 0x71, 0x00, 0x60,
0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x86, 0x00, 0x90, 0x62,
0x65, 0x00, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x96, 0x00,
0x03, 0x2a, 0x01, 0x5b, 0x2e, 0x00, 0x54, 0x77, 0x6f, 0x51,
0x00, 0x90, 0x6d, 0x65, 0x65, 0x74, 0x00, 0x61, 0x74, 0x00,
0x6f, 0x6c, 0x00, 0x00, 0x5e, 0x01, 0xb1, 0x70, 0x6f, 0x69,
0x6e, 0x74, 0x00, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x55, 0x00,
0xff, 0x0c, 0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c,
0x6c, 0x79, 0x00, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74,
0x65, 0x64, 0x29, 0x00, 0x6d, 0x61, 0x79, 0x00, 0x62, 0x40,
0x01, 0x00, 0x91, 0x00, 0x00, 0x49, 0x00, 0x62, 0x65, 0x6c,
0x69, 0x65, 0x5d, 0x01, 0x90, 0x69, 0x73, 0x00, 0x70, 0x75,
0x7a, 0x7a, 0x6c, 0x65, 0xd6, 0x01, 0xf0, 0x08, 0x6f, 0x72,
0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x3b, 0x00, 0x49, 0x27,
0x76, 0x65, 0x00, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x00, 0x73,
0x65, 0x26, 0x02, 0xc1, 0x6e, 0x00, 0x69, 0x6d, 0x70, 0x6c,
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x21, 0x01, 0xf0, 0x09,
0x6f, 0x66, 0x00, 0x69, 0x74, 0x00, 0x61, 0x6e, 0x79, 0x77,
0x68, 0x65, 0x72, 0x65, 0x00, 0x65, 0x6c, 0x73, 0x65, 0x2e,
0x00, 0x54, 0x68, 0x65, 0x4b, 0x02, 0x42, 0x63, 0x65, 0x70,
0x74, 0x48, 0x02, 0x00, 0x06, 0x02, 0x12, 0x2d, 0x7a, 0x00,
0x00, 0xdd, 0x01, 0x03, 0x6b, 0x00, 0xf0, 0x26, 0x77, 0x61,
0x73, 0x00, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65,
0x64, 0x00, 0x62, 0x79, 0x00, 0x41, 0x6c, 0x65, 0x78, 0x61,
0x6e, 0x64, 0x72, 0x61, 0x00, 0x4c, 0x61, 0x6e, 0x65, 0x73,
0x3b, 0x00, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x00, 0x6d,
0x75, 0x73, 0x74, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x67,
0x6f, 0x33, 0x01, 0x62, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69,
0x95, 0x01, 0x70, 0x6f, 0x00, 0x56, 0x65, 0x72, 0x69, 0x74,
0x3d, 0x00, 0xd1, 0x6c, 0x61, 0x6e, 0x00, 0x66, 0x6f, 0x72,
0x00, 0x69, 0x6e, 0x73, 0x70, 0x69, 0x69, 0x00, 0x00, 0xf6,
0x00, 0x52, 0x74, 0x72, 0x61, 0x69, 0x6e, 0xd9, 0x01, 0x52,
0x6f, 0x75, 0x67, 0x68, 0x74, 0x77, 0x02, 0x12, 0x6c, 0x7d,
0x01, 0x01, 0x2e, 0x02, 0x40, 0x61, 0x6c, 0x69, 0x73, 0x2e,
0x00, 0x00, 0x7f, 0x00, 0x15, 0x27, 0x93, 0x00, 0x01, 0xca,
0x02, 0xb3, 0x61, 0x73, 0x00, 0x61, 0x00, 0x76, 0x69, 0x61,
0x62, 0x6c, 0x65, 0xb6, 0x00, 0x00, 0xde, 0x00, 0x42, 0x61,
0x6e, 0x6b, 0x73, 0x90, 0x00, 0xf1, 0x01, 0x74, 0x6f, 0x00,
0x47, 0x61, 0x72, 0x65, 0x74, 0x68, 0x00, 0x54, 0x61, 0x79,
0x6c, 0x6f, 0x72, 0x80, 0x00, 0xa0, 0x6d, 0x61, 0x6e, 0x79,
0x00, 0x64, 0x65, 0x74, 0x61, 0x69, 0x66, 0x00, 0x06, 0x4f,
0x00, 0x10, 0x73, 0x76, 0x01, 0x41, 0x32, 0x32, 0x2e, 0x31,
0x93, 0x03, 0xd5, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
0x73, 0x20, 0x00, 0x00, 0x00, 0x54, 0x48, 0x03, 0x13, 0x61,
0xf6, 0x01, 0x71, 0x2c, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0xc2, 0x00, 0xf0, 0x00, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x6d,
0x6f, 0x75, 0x73, 0x65, 0x00, 0x62, 0x75, 0x74, 0x74, 0x76,
0x01, 0x01, 0x8b, 0x01, 0x23, 0x65, 0x78, 0xac, 0x03, 0x03,
0x78, 0x03, 0x03, 0xbd, 0x02, 0x31, 0x64, 0x65, 0x73, 0x5c,
0x02, 0x04, 0x52, 0x00, 0x72, 0x6e, 0x64, 0x00, 0x64, 0x72,
0x61, 0x67, 0xf8, 0x00, 0x03, 0x15, 0x00, 0x41, 0x69, 0x6e,
0x74, 0x6f, 0x2d, 0x00, 0x33, 0x6e, 0x65, 0x77, 0x3f, 0x00,
0x00, 0x9d, 0x00, 0x31, 0x28, 0x54, 0x68, 0x52, 0x03, 0xf3,
0x07, 0x67, 0x72, 0x61, 0x6d, 0x00, 0x77, 0x69, 0x6c, 0x6c,
0x00, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x00, 0x65, 0x6e,
0x73, 0x75, 0x72, 0x46, 0x02, 0x47, 0x74, 0x61, 0x72, 0x74,
0xc6, 0x01, 0x10, 0x68, 0x24, 0x01, 0x00, 0x51, 0x01, 0x31,
0x61, 0x73, 0x74, 0x98, 0x02, 0x06, 0x8e, 0x00, 0x01, 0x15,
0x04, 0x02, 0x72, 0x00, 0x42, 0x2c, 0x00, 0x73, 0x6f, 0x82,
0x00, 0x01, 0x6d, 0x02, 0x24, 0x69, 0x73, 0x5a, 0x00, 0xa0,
0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x21, 0x29,
0x93, 0x02, 0x82, 0x66, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x6e,
0x65, 0x9e, 0x01, 0x48, 0x63, 0x6c, 0x65, 0x61, 0x13, 0x01,
0x00, 0x1c, 0x00, 0x32, 0x63, 0x61, 0x6e, 0xcf, 0x00, 0x41,
0x66, 0x72, 0x6f, 0x6d, 0x06, 0x01, 0x45, 0x6d, 0x70, 0x74,
0x79, 0x23, 0x00, 0x22, 0x6f, 0x72, 0x19, 0x00, 0x24, 0x74,
0x68, 0xb1, 0x01, 0x06, 0x49, 0x04, 0x11, 0x69, 0x20, 0x01,
0x21, 0x72, 0x65, 0x2e, 0x03, 0x29, 0x6e, 0x6f, 0x3a, 0x00,
0x11, 0x73, 0x66, 0x01, 0x00, 0x04, 0x01, 0x52, 0x44, 0x72,
0x61, 0x67, 0x67, 0x83, 0x04, 0x03, 0x2d, 0x01, 0x24, 0x75,
0x73, 0x4c, 0x02, 0x4b, 0x72, 0x69, 0x67, 0x68, 0x8b, 0x01,
0x01, 0x26, 0x01, 0x64, 0x73, 0x74, 0x69, 0x70, 0x70, 0x6c,
0x4d, 0x04, 0x01, 0xff, 0x00, 0x28, 0x69, 0x6e, 0x71, 0x01,
0x13, 0x2c, 0xc5, 0x03, 0x04, 0xc2, 0x00, 0x00, 0x41, 0x00,
0x01, 0x5c, 0x02, 0x40, 0x6e, 0x6f, 0x74, 0x65, 0xeb, 0x00,
0x10, 0x79, 0xf7, 0x03, 0x32, 0x65, 0x6c, 0x66, 0x35, 0x00,
0x00, 0x27, 0x00, 0x58, 0x74, 0x68, 0x69, 0x6e, 0x6b, 0x52,
0x00, 0x11, 0x6d, 0x7d, 0x00, 0x28, 0x62, 0x65, 0x58, 0x00,
0x34, 0x2e, 0x00, 0x41, 0x1f, 0x00, 0x00, 0x57, 0x00, 0x00,
0x54, 0x02, 0x00, 0xee, 0x02, 0x03, 0x90, 0x00, 0x10, 0x73,
0x86, 0x00, 0x74, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c,
0xfa, 0x03, 0x01, 0xad, 0x01, 0x00, 0x9c, 0x03, 0x10, 0x2e,
0xee, 0x01, 0x02, 0x8b, 0x01, 0x41, 0x6f, 0x66, 0x74, 0x65,
0x94, 0x00, 0x41, 0x66, 0x75, 0x6c, 0x00, 0xa3, 0x01, 0x00,
0xd7, 0x01, 0x01, 0xae, 0x04, 0x20, 0x64, 0x69, 0x32, 0x05,
0xd3, 0x75, 0x6c, 0x74, 0x79, 0x00, 0x6c, 0x65, 0x76, 0x65,
0x6c, 0x73, 0x2e, 0x29, 0x3c, 0x06, 0x00, 0x70, 0x00, 0x01,
0x04, 0x03, 0x22, 0x75, 0x73, 0xf9, 0x00, 0xb1, 0x63, 0x75,
0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x5b,
0x03, 0x20, 0x6f, 0x76, 0x6a, 0x01, 0x22, 0x6f, 0x75, 0x3b,
0x05, 0x00, 0x60, 0x06, 0x12, 0x3a, 0x28, 0x00, 0x02, 0x56,
0x01, 0x28, 0x6f, 0x66, 0x36, 0x00, 0x92, 0x69, 0x6e, 0x64,
0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0xba, 0x01, 0x34, 0x6f,
0x73, 0x69, 0x5f, 0x04, 0x07, 0x33, 0x00, 0x00, 0x17, 0x01,
0x43, 0x77, 0x6f, 0x75, 0x6c, 0xd1, 0x02, 0x12, 0x28, 0x54,
0x01, 0x30, 0x69, 0x73, 0x00, 0x92, 0x05, 0x91, 0x6f, 0x62,
0x76, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x69, 0x44, 0x02, 0x31,
0x27, 0x72, 0x65, 0x26, 0x03, 0x03, 0x1e, 0x01, 0x25, 0x27,
0x73, 0x07, 0x02, 0x70, 0x2c, 0x00, 0x73, 0x69, 0x6e, 0x63,
0x65, 0xb7, 0x04, 0x70, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64,
0x73, 0x29, 0x00, 0x01, 0x39, 0x03, 0x41, 0x69, 0x72, 0x65,
0x63, 0x77, 0x00, 0x01, 0x43, 0x02, 0x06, 0xb2, 0x01, 0x92,
0x61, 0x70, 0x70, 0x72, 0x6f, 0x61, 0x63, 0x68, 0x65, 0xca,
0x00, 0x04, 0x4a, 0x00, 0x76, 0x29, 0x2e, 0x00, 0x50, 0x72,
0x65, 0x73, 0x1e, 0x02, 0x50, 0x65, 0x74, 0x75, 0x72, 0x6e,
0x01, 0x01, 0x02, 0x25, 0x03, 0x00, 0xe0, 0x01, 0x01, 0xa9,
0x00, 0x2a, 0x6f, 0x66, 0x0c, 0x02, 0x00, 0xfa, 0x01, 0x49,
0x62, 0x6f, 0x76, 0x65, 0x16, 0x02, 0x02, 0x0f, 0x04, 0x02,
0xc7, 0x06, 0x0b, 0x4f, 0x01, 0x3f, 0x3b, 0x00, 0x70, 0x68,
0x00, 0x04, 0x20, 0x61, 0x67, 0xef, 0x01, 0x63, 0x66, 0x69,
0x6e, 0x69, 0x73, 0x68, 0x3c, 0x01, 0x00, 0x72, 0x00, 0x02,
0x83, 0x05, 0x91, 0x73, 0x70, 0x61, 0x63, 0x65, 0x00, 0x62,
0x61, 0x72, 0xac, 0x01, 0x20, 0x62, 0x65, 0xaa, 0x01, 0xb1,
0x64, 0x00, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x6c,
0x79, 0x62, 0x03, 0x40, 0x72, 0x65, 0x61, 0x74, 0xa7, 0x06,
0x03, 0x32, 0x02, 0x15, 0x64, 0x0d, 0x04, 0x7f, 0x44, 0x6f,
0x75, 0x62, 0x6c, 0x65, 0x2d, 0x79, 0x00, 0x05, 0x30, 0x28,
0x77, 0x69, 0x50, 0x05, 0x10, 0x74, 0xe7, 0x01, 0x04, 0x1f,
0x00, 0x02, 0xb2, 0x00, 0x12, 0x29, 0x13, 0x03, 0x02, 0xbc,
0x03, 0x06, 0xbf, 0x02, 0x02, 0xf6, 0x00, 0x0f, 0xbb, 0x03,
0x07, 0x65, 0x00, 0x64, 0x6f, 0x65, 0x73, 0x3a, 0x1e, 0x04,
0x03, 0x8d, 0x02, 0x0c, 0x0e, 0x01, 0x43, 0x6d, 0x6f, 0x64,
0x65, 0xe2, 0x01, 0x02, 0x18, 0x08, 0x43, 0x66, 0x69, 0x6c,
0x6c, 0x97, 0x01, 0x51, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x68,
0x02, 0x00, 0xf7, 0x02, 0x36, 0x62, 0x75, 0x74, 0x48, 0x04,
0x20, 0x6f, 0x72, 0xda, 0x01, 0x02, 0x4d, 0x05, 0x66, 0x61,
0x79, 0x6f, 0x75, 0x74, 0x2e, 0x6d, 0x04, 0x01, 0xe2, 0x00,
0x43, 0x00, 0x4c, 0x00, 0x64, 0x9c, 0x06, 0x41, 0x6c, 0x61,
0x79, 0x2c, 0x2a, 0x00, 0x10, 0x67, 0x2f, 0x07, 0x01, 0xcc,
0x00, 0x50, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x20, 0x02, 0x10,
0x73, 0x1e, 0x00, 0x09, 0x1b, 0x09, 0x29, 0x69, 0x6e, 0xfb,
0x08, 0x24, 0x6f, 0x66, 0xec, 0x02, 0x00, 0x83, 0x01, 0x09,
0xcb, 0x00, 0x03, 0xb6, 0x00, 0x22, 0x77, 0x61, 0x7d, 0x08,
0x60, 0x64, 0x69, 0x73, 0x63, 0x75, 0x73, 0x13, 0x01, 0x10,
0x70, 0x50, 0x05, 0x55, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x84,
0x07, 0x40, 0x6e, 0x73, 0x74, 0x61, 0xa4, 0x02, 0x01, 0xff,
0x00, 0xa0, 0x61, 0x00, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
0x00, 0x2d, 0xf3, 0x00, 0x01, 0x9a, 0x04, 0x00, 0x99, 0x08,
0x60, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0xf2, 0x02, 0x10,
0x6e, 0xa9, 0x00, 0x2a, 0x66, 0x6f, 0x85, 0x09, 0x40, 0x69,
0x73, 0x00, 0x6d, 0x6b, 0x09, 0x60, 0x65, 0x61, 0x73, 0x69,
0x65, 0x72, 0x80, 0x02, 0x51, 0x6e, 0x00, 0x74, 0x72, 0x79,
0xac, 0x01, 0x00, 0x5b, 0x08, 0x10, 0x66, 0x15, 0x00, 0x01,
0x04, 0x06, 0x50, 0x6d, 0x00, 0x61, 0x6c, 0x6c, 0x7f, 0x07,
0x00, 0x48, 0x00, 0x13, 0x73, 0xa1, 0x09, 0x30, 0x73, 0x00,
0x60, 0xc9, 0x00, 0x00, 0xd0, 0x05, 0x41, 0x64, 0x6f, 0x77,
0x6e, 0x46, 0x06, 0x02, 0xfe, 0x04, 0x03, 0xe3, 0x00, 0x20,
0x62, 0x72, 0x17, 0x00, 0x01, 0xe6, 0x09, 0x12, 0x6e, 0x68,
0x07, 0x23, 0x6f, 0x70, 0xe3, 0x08, 0x11, 0x27, 0x4b, 0x06,
0x31, 0x41, 0x6c, 0x6c, 0x18, 0x00, 0x21, 0x61, 0x63, 0xfc,
0x06, 0x00, 0x97, 0x06, 0x61, 0x63, 0x72, 0x69, 0x62, 0x65,
0x64, 0x06, 0x0a, 0x03, 0x69, 0x03, 0x31, 0x32, 0x2e, 0x31,
0x8e, 0x05, 0x01, 0x49, 0x04, 0x50, 0x61, 0x76, 0x61, 0x69,
0x6c, 0x6b, 0x07, 0x22, 0x2e, 0x29, 0x29, 0x07, 0x11, 0x32,
0x29, 0x07, 0x00, 0xcb, 0x08, 0x52, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x2b, 0x07, 0x01, 0x86, 0x09, 0x06, 0x14, 0x00, 0x02,
0x3f, 0x00, 0x04, 0x3a, 0x00, 0x06, 0xfd, 0x05, 0xe2, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27,
0x00, 0x6f, 0x70, 0x4d, 0x04, 0x12, 0x6e, 0x1a, 0x00, 0xa0,
0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75,
0xa9, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x65, 0xde, 0x00, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a,
0xba, 0x0a, 0x32, 0x67, 0x72, 0x69, 0xab, 0x00, 0x51, 0x71,
0x75, 0x61, 0x72, 0x65, 0xbc, 0x07, 0x13, 0x52, 0x2b, 0x06,
0x3c, 0x00, 0x00, 0x4e, 0x19, 0x0b, 0x22, 0x00, 0x69, 0x5d,
0x00, 0x41, 0x67, 0x65, 0x6e, 0x65, 0x7a, 0x09, 0x02, 0x04,
0x02, 0x36, 0x00, 0x00, 0x44, 0x41, 0x05, 0xb1, 0x00, 0x00,
0x49, 0x6e, 0x00, 0x60, 0x45, 0x61, 0x73, 0x79, 0x27, 0xc9,
0x02, 0x13, 0x2c, 0x8f, 0x06, 0x21, 0x73, 0x68, 0xd4, 0x04,
0x03, 0x11, 0x07, 0x2f, 0x62, 0x65, 0x4f, 0x07, 0x02, 0x45,
0x77, 0x68, 0x6f, 0x73, 0x09, 0x05, 0x03, 0xd0, 0x03, 0x10,
0x64, 0x02, 0x01, 0x30, 0x6d, 0x69, 0x6e, 0xe6, 0x02, 0x40,
0x72, 0x69, 0x76, 0x69, 0xfc, 0x09, 0x11, 0x2e, 0x65, 0x00,
0x71, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x27, 0xb7, 0x01,
0x52, 0x60, 0x48, 0x61, 0x72, 0x64, 0x72, 0x00, 0x12, 0x73,
0x44, 0x07, 0x01, 0xd5, 0x02, 0x02, 0x57, 0x0b, 0x02, 0xbf,
0x05, 0x20, 0x69, 0x6e, 0x09, 0x04, 0x00, 0xe8, 0x03, 0x10,
0x6c, 0x2f, 0x0b, 0x00, 0xe3, 0x09, 0x71, 0x78, 0x00, 0x6c,
0x6f, 0x67, 0x69, 0x63, 0xab, 0x02, 0x5b, 0x65, 0x64, 0x75,
0x63, 0x65, 0xbc, 0x05, 0x08, 0x6a, 0x0b, 0x50, 0x2e, 0x00,
0x48, 0x6f, 0x77, 0x26, 0x0a, 0x10, 0x2c, 0x56, 0x05, 0x08,
0x38, 0x08, 0x25, 0x62, 0x65, 0xe1, 0x07, 0x14, 0x00, 0x32,
0x04, 0x03, 0xc5, 0x02, 0x70, 0x74, 0x6f, 0x00, 0x67, 0x75,
0x65, 0x73, 0x6f, 0x0a, 0xb3, 0x00, 0x62, 0x61, 0x63, 0x6b,
0x74, 0x72, 0x61, 0x63, 0x6b, 0x2e, 0x25, 0x01, 0x20, 0x55,
0x6e, 0x90, 0x00, 0x20, 0x6f, 0x6e, 0xd4, 0x01, 0x07, 0x2d,
0x01, 0x0a, 0x9c, 0x08, 0x81, 0x66, 0x65, 0x65, 0x6c, 0x00,
0x66, 0x72, 0x65, 0xc7, 0x00, 0x04, 0x79, 0x01, 0x03, 0x44,
0x03, 0x04, 0x36, 0x0b, 0x01, 0x1e, 0x02, 0x11, 0x73, 0xce,
0x06, 0x00, 0x08, 0x00, 0x21, 0x69, 0x74, 0x3c, 0x01, 0x03,
0x94, 0x00, 0x15, 0x79, 0x03, 0x0c, 0x12, 0x6d, 0x9b, 0x06,
0x01, 0x5c, 0x0b, 0x00, 0x05, 0x0d, 0x01, 0x35, 0x0a, 0x11,
0x74, 0xe3, 0x0c, 0x12, 0x68, 0x11, 0x07, 0x14, 0x79, 0xa7,
0x01, 0x25, 0x73, 0x74, 0x3e, 0x01, 0x13, 0x61, 0x20, 0x0c,
0x05, 0x30, 0x0c, 0x51, 0x2e, 0x00, 0x53, 0x6f, 0x6c, 0xde,
0x00, 0x08, 0xc1, 0x00, 0x05, 0x93, 0x00, 0x00, 0x8c, 0x0b,
0x03, 0xfb, 0x0b, 0x02, 0xfc, 0x00, 0x02, 0xcd, 0x03, 0x16,
0x64, 0x00, 0x01, 0x33, 0x69, 0x6e, 0x67, 0x25, 0x0a, 0x11,
0x33, 0xfc, 0x02, 0x81, 0x75, 0x73, 0x65, 0x72, 0x20, 0x70,
0x72, 0x65, 0x1f, 0x0c, 0x41, 0x63, 0x65, 0x73, 0x20, 0x6d,
0x0c, 0x00, 0xa5, 0x04, 0x53, 0x74, 0x66, 0x6f, 0x72, 0x6d,
0x9f, 0x00, 0x80, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74,
0x00, 0x2e, 0x00, 0x17, 0x00, 0x2e, 0x00, 0x12, 0x2c, 0xf0,
0x02, 0x16, 0x50, 0x12, 0x00, 0x0d, 0x0c, 0x03, 0x33, 0x47,
0x61, 0x6d, 0x0c, 0x03, 0x02, 0x54, 0x01, 0x34, 0x6c, 0x65,
0x74, 0x8f, 0x06, 0x36, 0x66, 0x69, 0x67, 0xf4, 0x09, 0x34,
0x79, 0x6c, 0x65, 0xfa, 0x03, 0xd1, 0x76, 0x69, 0x63, 0x74,
0x6f, 0x72, 0x79, 0x00, 0x66, 0x6c, 0x61, 0x73, 0x68, 0xbf,
0x00, 0x01, 0xbe, 0x03, 0x30, 0x77, 0x68, 0x65, 0xcf, 0x02,
0x07, 0xf3, 0x05, 0x12, 0x73, 0x07, 0x07, 0x10, 0x00, 0xf5,
0x01, 0x64, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x6c, 0xa7, 0x0d,
0x90, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x00,
};
const unsigned short help_text_len = 3466;
const unsigned short help_text_words = 642;
const unsigned short help_text_len = 3752;
const unsigned short help_text_words = 686;
const char quick_help_text[] = "Colour the map so that adjacent regions are never the same colour.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,258 +6,258 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 29, TEXT_UNDERLINE },
{ 119, TEXT_UNDERLINE },
{ 171, TEXT_CENTER | C_RED },
{ 248, TEXT_UNDERLINE },
{ 283, TEXT_UNDERLINE },
{ 334, TEXT_UNDERLINE },
{ 583, TEXT_CENTER | C_RED },
{ 600, TEXT_UNDERLINE },
{ 30, TEXT_UNDERLINE },
{ 120, TEXT_UNDERLINE },
{ 172, TEXT_CENTER | C_RED },
{ 249, TEXT_UNDERLINE },
{ 284, TEXT_UNDERLINE },
{ 335, TEXT_UNDERLINE },
{ 584, TEXT_CENTER | C_RED },
{ 601, TEXT_UNDERLINE },
{ 611, TEXT_UNDERLINE },
{ 685, TEXT_UNDERLINE },
{ 602, TEXT_UNDERLINE },
{ 612, TEXT_UNDERLINE },
{ 686, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 3796 comp 2333 ratio 0.614594 level 10 saved 1463 */
/* orig 3814 comp 2339 ratio 0.613267 level 10 saved 1475 */
const char help_text[] = {
0xf0, 0x2e, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x32, 0x3a, 0x20, 0x4d, 0x69, 0x6e, 0x65, 0x73, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x00,
0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73,
0x6f, 0x6d, 0x65, 0x19, 0x00, 0xf0, 0x02, 0x77, 0x68, 0x69,
0x63, 0x68, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
0x00, 0x6d, 0x69, 0x6e, 0x1d, 0x00, 0xf2, 0x03, 0x62, 0x75,
0x74, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x64, 0x6f, 0x6e, 0x27,
0x74, 0x00, 0x6b, 0x6e, 0x6f, 0x77, 0x28, 0x00, 0x10, 0x2e,
0x5b, 0x00, 0xe1, 0x72, 0x00, 0x6a, 0x6f, 0x62, 0x00, 0x69,
0x73, 0x00, 0x74, 0x6f, 0x00, 0x75, 0x6e, 0x59, 0x00, 0x63,
0x00, 0x65, 0x76, 0x65, 0x72, 0x79, 0x5d, 0x00, 0x03, 0x53,
0x00, 0x85, 0x64, 0x6f, 0x65, 0x73, 0x00, 0x6e, 0x6f, 0x74,
0x5c, 0x00, 0x11, 0x61, 0x5e, 0x00, 0x41, 0x2e, 0x00, 0x49,
0x66, 0x5c, 0x00, 0x04, 0x3b, 0x00, 0x14, 0x61, 0x37, 0x00,
0x03, 0x28, 0x00, 0x33, 0x69, 0x6e, 0x67, 0x2b, 0x00, 0x11,
0x2c, 0x28, 0x00, 0x3f, 0x6c, 0x6f, 0x73, 0x35, 0x00, 0x08,
0x0f, 0x6c, 0x00, 0x0a, 0x02, 0x41, 0x00, 0x00, 0x27, 0x00,
0xd2, 0x74, 0x6f, 0x6c, 0x64, 0x00, 0x68, 0x6f, 0x77, 0x00,
0x6d, 0x61, 0x6e, 0x79, 0xe6, 0x00, 0x17, 0x00, 0x74, 0x00,
0xf0, 0x0d, 0x65, 0x64, 0x00, 0x77, 0x69, 0x74, 0x68, 0x69,
0x6e, 0x00, 0x74, 0x68, 0x65, 0x00, 0x65, 0x69, 0x67, 0x68,
0x74, 0x00, 0x73, 0x75, 0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64,
0x90, 0x00, 0x03, 0x36, 0x01, 0xf0, 0x03, 0x2e, 0x00, 0x00,
0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d, 0x65,
0x00, 0x6e, 0x65, 0x65, 0x64, 0x76, 0x00, 0xf0, 0x1a, 0x00,
0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x3b, 0x00, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61,
0x72, 0x69, 0x73, 0x65, 0x64, 0x00, 0x62, 0x79, 0x00, 0x57,
0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x2c, 0x00, 0x69, 0x74,
0x34, 0x01, 0x71, 0x70, 0x65, 0x72, 0x68, 0x61, 0x70, 0x73,
0x68, 0x00, 0xa2, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x00,
0x62, 0x65, 0x73, 0x64, 0x01, 0xf2, 0x01, 0x6e, 0x00, 0x64,
0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x00, 0x70, 0x75, 0x7a,
0x7a, 0x6c, 0x65, 0x67, 0x00, 0xc5, 0x69, 0x6e, 0x00, 0x65,
0x78, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x81, 0x00,
0x70, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0xc1, 0x01,
0xf1, 0x17, 0x69, 0x74, 0x00, 0x68, 0x61, 0x73, 0x00, 0x61,
0x6e, 0x00, 0x75, 0x6e, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x00,
0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2e, 0x00,
0x42, 0x79, 0x00, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
0x80, 0x00, 0xf1, 0x02, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x00, 0x69, 0x74,
0x73, 0x0a, 0x01, 0x50, 0x00, 0x70, 0x6f, 0x73, 0x69, 0xbc,
0x00, 0x10, 0x73, 0x6c, 0x00, 0xc1, 0x73, 0x75, 0x63, 0x68,
0x00, 0x61, 0x00, 0x77, 0x61, 0x79, 0x00, 0x61, 0xe3, 0x01,
0x40, 0x65, 0x6e, 0x73, 0x75, 0x42, 0x01, 0x22, 0x68, 0x61,
0x14, 0x02, 0x10, 0x6e, 0xec, 0x01, 0x01, 0xfd, 0x00, 0x00,
0x1e, 0x00, 0xb3, 0x67, 0x75, 0x65, 0x73, 0x73, 0x00, 0x77,
0x68, 0x65, 0x72, 0x65, 0x75, 0x01, 0x41, 0x00, 0x69, 0x73,
0x3a, 0x29, 0x00, 0x01, 0x6e, 0x00, 0xe0, 0x61, 0x6c, 0x77,
0x61, 0x79, 0x73, 0x00, 0x62, 0x65, 0x00, 0x61, 0x62, 0x6c,
0x65, 0x32, 0x00, 0x50, 0x64, 0x65, 0x64, 0x75, 0x63, 0x7e,
0x00, 0x01, 0x83, 0x02, 0x76, 0x68, 0x6f, 0x77, 0x2e, 0x00,
0x53, 0x6f, 0x31, 0x00, 0x01, 0x5f, 0x00, 0x10, 0x2c, 0x7c,
0x00, 0xa0, 0x63, 0x61, 0x6e, 0x00, 0x68, 0x61, 0x70, 0x70,
0x65, 0x6e, 0x98, 0x00, 0x54, 0x6f, 0x74, 0x68, 0x65, 0x72,
0xf8, 0x00, 0x60, 0x73, 0x2c, 0x00, 0x67, 0x65, 0x74, 0x4e,
0x00, 0x00, 0x48, 0x01, 0x60, 0x6c, 0x61, 0x73, 0x74, 0x00,
0x66, 0x99, 0x02, 0x03, 0xa8, 0x01, 0x82, 0x00, 0x61, 0x6e,
0x64, 0x00, 0x64, 0x69, 0x73, 0x2c, 0x02, 0x01, 0xba, 0x00,
0x12, 0x74, 0xa2, 0x00, 0x00, 0xc9, 0x00, 0x23, 0x77, 0x6f,
0x01, 0x02, 0x45, 0x6c, 0x65, 0x66, 0x74, 0xeb, 0x02, 0x01,
0x30, 0x03, 0x21, 0x6e, 0x6f, 0xf9, 0x00, 0x21, 0x6f, 0x66,
0x90, 0x01, 0x00, 0xfa, 0x01, 0x41, 0x66, 0x6f, 0x72, 0x00,
0x00, 0x01, 0x02, 0xe3, 0x00, 0x40, 0x74, 0x68, 0x65, 0x79,
0x46, 0x00, 0x00, 0x89, 0x01, 0x43, 0x31, 0x32, 0x2e, 0x31,
0x74, 0x03, 0x20, 0x63, 0x6f, 0x03, 0x02, 0x39, 0x6c, 0x73,
0x20, 0x21, 0x02, 0x00, 0xef, 0x01, 0x33, 0x6c, 0x61, 0x79,
0x5d, 0x02, 0x01, 0xab, 0x00, 0x41, 0x6d, 0x6f, 0x75, 0x73,
0x3d, 0x00, 0x03, 0xd0, 0x02, 0x00, 0x83, 0x00, 0x71, 0x2d,
0x63, 0x6c, 0x69, 0x63, 0x6b, 0x00, 0xb6, 0x02, 0x0a, 0xa7,
0x03, 0x06, 0xb5, 0x01, 0x24, 0x62, 0x65, 0xfb, 0x02, 0x27,
0x65, 0x64, 0x3f, 0x00, 0x10, 0x72, 0xaa, 0x02, 0x0f, 0x40,
0x00, 0x11, 0x40, 0x70, 0x6c, 0x61, 0x63, 0xa1, 0x01, 0x43,
0x66, 0x6c, 0x61, 0x67, 0x34, 0x03, 0x95, 0x69, 0x6e, 0x64,
0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x21, 0x01, 0x04, 0x54,
0x03, 0x10, 0x69, 0xb0, 0x01, 0x42, 0x6c, 0x69, 0x65, 0x76,
0xe3, 0x01, 0x25, 0x62, 0x65, 0xbb, 0x03, 0x15, 0x4c, 0xaf,
0x00, 0x00, 0x1c, 0x01, 0x02, 0x68, 0x03, 0x35, 0x61, 0x72,
0x6b, 0x71, 0x00, 0x03, 0xc3, 0x01, 0x25, 0x6f, 0x74, 0xa9,
0x03, 0x32, 0x69, 0x74, 0x2c, 0x44, 0x01, 0x51, 0x61, 0x66,
0x65, 0x74, 0x79, 0x40, 0x04, 0x01, 0xd9, 0x01, 0x08, 0xba,
0x00, 0x30, 0x61, 0x67, 0x61, 0x7a, 0x03, 0x83, 0x6f, 0x00,
0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x55, 0x00, 0x02, 0xb4,
0x00, 0x11, 0x64, 0x00, 0x03, 0x4f, 0x72, 0x72, 0x6f, 0x72,
0x36, 0x01, 0x07, 0x00, 0xfa, 0x02, 0x0f, 0xf9, 0x00, 0x05,
0x81, 0x60, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x00, 0x61, 0xcb,
0x03, 0x17, 0x27, 0xe6, 0x00, 0x12, 0x2e, 0xa9, 0x01, 0x98,
0x6d, 0x65, 0x61, 0x6e, 0x73, 0x3a, 0x00, 0x69, 0x66, 0x01,
0x01, 0x00, 0x50, 0x03, 0x61, 0x65, 0x78, 0x61, 0x63, 0x74,
0x6c, 0x05, 0x03, 0x01, 0x34, 0x04, 0x00, 0x3a, 0x01, 0x19,
0x73, 0x15, 0x04, 0x20, 0x69, 0x74, 0x1d, 0x00, 0x00, 0xc8,
0x02, 0x52, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x42, 0x02, 0x03,
0x41, 0x05, 0x81, 0x74, 0x68, 0x65, 0x6e, 0x00, 0x61, 0x6c,
0x6c, 0x56, 0x00, 0x0b, 0x7c, 0x05, 0x41, 0x00, 0x6e, 0x65,
0x78, 0xbc, 0x02, 0x23, 0x69, 0x74, 0x8b, 0x01, 0x00, 0x74,
0x00, 0x00, 0x35, 0x01, 0x00, 0x64, 0x00, 0x3e, 0x67, 0x65,
0x64, 0xf3, 0x01, 0x01, 0x23, 0x03, 0x41, 0x6f, 0x6e, 0x63,
0x65, 0xff, 0x00, 0x00, 0xa9, 0x04, 0x11, 0x6b, 0x0a, 0x00,
0x01, 0x9a, 0x05, 0x01, 0x03, 0x03, 0x43, 0x6f, 0x63, 0x61,
0x74, 0x11, 0x04, 0x04, 0x77, 0x00, 0x04, 0xe6, 0x04, 0x00,
0xb0, 0x00, 0x05, 0x31, 0x05, 0x02, 0x13, 0x05, 0x10, 0x63,
0x34, 0x01, 0x20, 0x73, 0x65, 0x4a, 0x00, 0x61, 0x73, 0x00,
0x66, 0x75, 0x6e, 0x63, 0x3c, 0x00, 0x00, 0x46, 0x04, 0x00,
0xcd, 0x00, 0x41, 0x72, 0x74, 0x63, 0x75, 0xa1, 0x00, 0x41,
0x61, 0x76, 0x6f, 0x69, 0xd8, 0x00, 0x00, 0xef, 0x00, 0x32,
0x74, 0x6f, 0x00, 0x73, 0x01, 0x92, 0x6f, 0x6e, 0x00, 0x65,
0x61, 0x63, 0x68, 0x00, 0x6f, 0x34, 0x01, 0x33, 0x72, 0x65,
0x6d, 0xb6, 0x05, 0x04, 0xe0, 0x00, 0x30, 0x6f, 0x6e, 0x65,
0xfa, 0x04, 0x28, 0x6f, 0x6e, 0xea, 0x02, 0x0f, 0xba, 0x05,
0x04, 0x00, 0x6b, 0x01, 0x14, 0x6e, 0x91, 0x03, 0x03, 0x80,
0x05, 0x08, 0x65, 0x01, 0x03, 0x8c, 0x05, 0x04, 0xb6, 0x06,
0x01, 0x58, 0x01, 0x02, 0x4a, 0x05, 0x91, 0x6f, 0x62, 0x76,
0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x5c, 0x02, 0x08, 0x8d,
0x06, 0x44, 0x74, 0x68, 0x6f, 0x73, 0xcc, 0x01, 0x02, 0x55,
0x00, 0x41, 0x75, 0x72, 0x6e, 0x2c, 0x15, 0x04, 0x10, 0x73,
0x47, 0x01, 0x00, 0xee, 0x01, 0x00, 0xd3, 0x01, 0x02, 0xc1,
0x00, 0x64, 0x6d, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x89, 0x00,
0x08, 0x7c, 0x00, 0x01, 0x95, 0x00, 0x03, 0x28, 0x02, 0x04,
0x93, 0x01, 0x10, 0x64, 0xdd, 0x00, 0x00, 0xd1, 0x02, 0x01,
0x5a, 0x06, 0xd0, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69,
0x63, 0x61, 0x6c, 0x6c, 0x79, 0x3b, 0x5d, 0x00, 0x00, 0xd3,
0x04, 0x41, 0x74, 0x69, 0x6d, 0x65, 0x13, 0x05, 0x1f, 0x6e,
0xf9, 0x00, 0x02, 0x10, 0x2c, 0x5e, 0x05, 0x30, 0x68, 0x6f,
0x6c, 0x41, 0x06, 0x10, 0x77, 0xfb, 0x01, 0x12, 0x61, 0x5d,
0x00, 0x10, 0x6f, 0xe9, 0x04, 0x23, 0x75, 0x70, 0x72, 0x03,
0x53, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0xed, 0x03, 0x04, 0x34,
0x03, 0x01, 0xa8, 0x00, 0x02, 0xb7, 0x01, 0xc1, 0x65, 0x00,
0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79,
0xa6, 0x05, 0x02, 0x39, 0x03, 0x02, 0xec, 0x01, 0x04, 0xfd,
0x01, 0xb0, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x00, 0x50,
0x72, 0x65, 0x73, 0x6b, 0x06, 0x03, 0xae, 0x01, 0x00, 0x0d,
0x01, 0x00, 0x37, 0x00, 0x0f, 0x31, 0x04, 0x01, 0x04, 0xad,
0x00, 0x00, 0xd7, 0x02, 0x02, 0x31, 0x01, 0x0e, 0x60, 0x03,
0x06, 0xe8, 0x03, 0x08, 0x5b, 0x03, 0x00, 0x95, 0x01, 0x31,
0x28, 0x73, 0x6f, 0x15, 0x03, 0x52, 0x63, 0x74, 0x73, 0x00,
0x61, 0xe3, 0x06, 0x04, 0x63, 0x05, 0x78, 0x74, 0x6f, 0x6e,
0x29, 0x2c, 0x00, 0x70, 0x8a, 0x00, 0x20, 0x73, 0x70, 0x93,
0x04, 0x3f, 0x62, 0x61, 0x72, 0x89, 0x00, 0x02, 0x0e, 0xb6,
0x04, 0xbc, 0x28, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72,
0x6c, 0x79, 0x2c, 0x66, 0x00, 0x01, 0x4d, 0x04, 0x04, 0x67,
0x00, 0x00, 0x32, 0x01, 0x13, 0x41, 0x03, 0x03, 0x22, 0x61,
0x63, 0xd8, 0x06, 0x72, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x4e, 0x04, 0x22, 0x73, 0x65, 0xef, 0x02, 0x31, 0x32,
0x2e, 0x31, 0x7a, 0x03, 0x01, 0x57, 0x01, 0x50, 0x61, 0x76,
0x61, 0x69, 0x6c, 0xa3, 0x06, 0x00, 0x3f, 0x00, 0x90, 0x45,
0x76, 0x65, 0x6e, 0x00, 0x55, 0x6e, 0x64, 0x6f, 0x68, 0x02,
0x05, 0x1a, 0x00, 0xa1, 0x2c, 0x00, 0x61, 0x6c, 0x74, 0x68,
0x6f, 0x75, 0x67, 0x68, 0xd8, 0x01, 0x11, 0x6d, 0x75, 0x00,
0x61, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0xe9, 0x04, 0x63,
0x00, 0x63, 0x68, 0x65, 0x61, 0x74, 0x2b, 0x03, 0x20, 0x75,
0x73, 0xe3, 0x06, 0x05, 0xb8, 0x08, 0x66, 0x73, 0x74, 0x65,
0x70, 0x00, 0x6f, 0x98, 0x08, 0x00, 0x9d, 0x00, 0x73, 0x70,
0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0xfe, 0x01, 0x96, 0x6e,
0x6c, 0x79, 0x00, 0x72, 0x65, 0x76, 0x65, 0x61, 0xbd, 0x03,
0x00, 0xad, 0x00, 0x41, 0x71, 0x75, 0x65, 0x73, 0xae, 0x00,
0x60, 0x28, 0x75, 0x6e, 0x6c, 0x69, 0x6b, 0x42, 0x06, 0x23,
0x73, 0x74, 0x0d, 0x07, 0xb2, 0x69, 0x6d, 0x70, 0x6c, 0x65,
0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x14, 0x07, 0x02, 0x53,
0x03, 0x03, 0x46, 0x00, 0x00, 0x07, 0x04, 0x03, 0xe2, 0x02,
0x16, 0x29, 0x78, 0x05, 0x24, 0x74, 0x68, 0xdb, 0x00, 0x10,
0x79, 0x31, 0x07, 0x53, 0x66, 0x61, 0x74, 0x61, 0x6c, 0x3d,
0x02, 0x21, 0x6e, 0x64, 0x0f, 0x09, 0x41, 0x69, 0x6e, 0x75,
0x65, 0xb8, 0x06, 0x01, 0xe4, 0x04, 0x03, 0x71, 0x05, 0x21,
0x69, 0x6b, 0x31, 0x05, 0x0b, 0xb5, 0x00, 0x51, 0x74, 0x72,
0x61, 0x63, 0x6b, 0xaf, 0x00, 0x61, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x70, 0x00, 0x01, 0xfe, 0x02, 0x01, 0x3d, 0x0a,
0x50, 0x69, 0x65, 0x64, 0x00, 0x28, 0x57, 0x00, 0x01, 0x70,
0x00, 0x05, 0x1b, 0x06, 0x12, 0x72, 0x01, 0x08, 0x01, 0x76,
0x06, 0x80, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x29,
0x90, 0x0a, 0x06, 0x33, 0x03, 0x07, 0xdc, 0x07, 0x34, 0x65,
0x6e, 0x64, 0x69, 0x04, 0x01, 0x54, 0x07, 0x05, 0xf6, 0x04,
0x31, 0x77, 0x68, 0x65, 0x05, 0x01, 0x21, 0x6f, 0x72, 0x55,
0x00, 0x02, 0x71, 0x00, 0x12, 0x64, 0xf8, 0x05, 0x00, 0xa6,
0x01, 0x41, 0x74, 0x00, 0x6d, 0x61, 0xa6, 0x06, 0x00, 0xea,
0x03, 0x01, 0x41, 0x06, 0x01, 0xbf, 0x09, 0x14, 0x28, 0x3a,
0x07, 0x10, 0x65, 0xb4, 0x03, 0x41, 0x00, 0x77, 0x61, 0x6e,
0x6b, 0x00, 0x05, 0x49, 0x05, 0x80, 0x66, 0x75, 0x6c, 0x6c,
0x00, 0x6c, 0x61, 0x79, 0x41, 0x00, 0x04, 0x78, 0x00, 0x34,
0x72, 0x69, 0x64, 0x5c, 0x01, 0x0f, 0x79, 0x01, 0x02, 0x02,
0xdb, 0x00, 0x10, 0x73, 0x5f, 0x0a, 0x01, 0x16, 0x04, 0x44,
0x66, 0x74, 0x65, 0x72, 0x02, 0x01, 0x06, 0x70, 0x05, 0x03,
0x0a, 0x09, 0x04, 0xc0, 0x03, 0x30, 0x53, 0x6f, 0x6c, 0x2f,
0x06, 0x60, 0x65, 0x6e, 0x75, 0x00, 0x6f, 0x70, 0x47, 0x00,
0x22, 0x2e, 0x29, 0x54, 0x08, 0x13, 0x32, 0x54, 0x08, 0x93,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x56,
0x08, 0x13, 0x65, 0x28, 0x00, 0x07, 0x92, 0x02, 0x51, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x00, 0xb3, 0x60, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x27, 0x00,
0x00, 0x6e, 0x02, 0x01, 0x1a, 0x00, 0x52, 0x54, 0x79, 0x70,
0x65, 0x27, 0x69, 0x00, 0xf2, 0x00, 0x61, 0x72, 0x65, 0x3a,
0x00, 0x00, 0x00, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x5c, 0x05, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x0b,
0x0c, 0x01, 0x2c, 0x0c, 0x28, 0x69, 0x6e, 0xee, 0x0a, 0x11,
0x4d, 0x98, 0x05, 0x35, 0x00, 0x00, 0x4e, 0xe0, 0x01, 0x09,
0xaa, 0x05, 0x00, 0x32, 0x00, 0x06, 0x5c, 0x02, 0x10, 0x65,
0xcb, 0x01, 0x02, 0x54, 0x06, 0x02, 0x91, 0x0a, 0x73, 0x61,
0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0xce, 0x02, 0x01, 0xec,
0x01, 0x10, 0x2c, 0xb1, 0x01, 0xd5, 0x61, 0x6c, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x21,
0x01, 0xb5, 0x70, 0x75, 0x74, 0x00, 0x61, 0x00, 0x25, 0x00,
0x73, 0x69, 0x67, 0xbe, 0x00, 0x12, 0x65, 0x83, 0x04, 0x03,
0xa5, 0x0c, 0x36, 0x61, 0x73, 0x65, 0x0a, 0x02, 0x02, 0x5f,
0x0a, 0x52, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x92, 0x05, 0x01,
0x51, 0x02, 0x00, 0xfc, 0x0a, 0x24, 0x6f, 0x72, 0x0b, 0x07,
0x06, 0xd4, 0x07, 0x09, 0xb3, 0x00, 0x03, 0x64, 0x05, 0x03,
0xe0, 0x05, 0x71, 0x00, 0x00, 0x42, 0x65, 0x77, 0x61, 0x72,
0x03, 0x01, 0x44, 0x73, 0x65, 0x74, 0x74, 0xa1, 0x04, 0x06,
0xb5, 0x00, 0xe1, 0x00, 0x74, 0x6f, 0x6f, 0x00, 0x68, 0x69,
0x67, 0x68, 0x2e, 0x00, 0x41, 0x74, 0x00, 0xeb, 0x0c, 0x00,
0x0e, 0x00, 0x40, 0x00, 0x64, 0x65, 0x6e, 0x3a, 0x0b, 0x2a,
0x65, 0x73, 0xd1, 0x03, 0x60, 0x6d, 0x61, 0x79, 0x00, 0x73,
0x70, 0xbb, 0x00, 0x31, 0x66, 0x6f, 0x72, 0x2e, 0x0b, 0x64,
0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x0a, 0x61, 0x61,
0x00, 0x73, 0x6f, 0x6c, 0x76, 0xc1, 0x01, 0x02, 0x41, 0x01,
0x31, 0x00, 0x00, 0x45, 0x65, 0x0b, 0x10, 0x20, 0x2f, 0x01,
0x60, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0xa7, 0x01, 0x00,
0x0f, 0x03, 0x01, 0x4e, 0x01, 0x03, 0xd2, 0x01, 0x50, 0x69,
0x73, 0x00, 0x65, 0x6e, 0x37, 0x00, 0x00, 0x57, 0x03, 0x13,
0x73, 0x07, 0x07, 0x15, 0x62, 0xe3, 0x0b, 0x23, 0x29, 0x2c,
0xaf, 0x01, 0x01, 0x1a, 0x01, 0x08, 0xb7, 0x0b, 0x02, 0x4a,
0x01, 0x33, 0x74, 0x69, 0x72, 0xff, 0x00, 0x00, 0x6e, 0x01,
0x12, 0x62, 0xec, 0x02, 0x13, 0x79, 0x90, 0x0b, 0x61, 0x64,
0x00, 0x73, 0x74, 0x61, 0x72, 0xfc, 0x00, 0x05, 0x55, 0x02,
0x63, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x9a, 0x06, 0x01,
0xaf, 0x05, 0x05, 0xd0, 0x04, 0x63, 0x70, 0x72, 0x65, 0x66,
0x65, 0x72, 0x7d, 0x05, 0x51, 0x73, 0x6b, 0x69, 0x65, 0x72,
0x5a, 0x00, 0x15, 0x73, 0x5e, 0x0c, 0x01, 0xfc, 0x0c, 0x0f,
0xa7, 0x04, 0x04, 0x04, 0xf1, 0x01, 0x41, 0x73, 0x77, 0x69,
0x74, 0x48, 0x08, 0x15, 0x66, 0xe7, 0x00, 0x50, 0x69, 0x6f,
0x6e, 0x2e, 0x00,
0x00, 0x2d, 0x01, 0x00, 0xf0, 0x1c, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x63, 0x6f,
0x76, 0x65, 0x72, 0x65, 0x64, 0x00, 0x73, 0x71, 0x75, 0x61,
0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d, 0x65, 0x19,
0x00, 0xf0, 0x02, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x63,
0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6d, 0x69, 0x6e,
0x1d, 0x00, 0xf2, 0x03, 0x62, 0x75, 0x74, 0x00, 0x79, 0x6f,
0x75, 0x00, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x00, 0x6b, 0x6e,
0x6f, 0x77, 0x28, 0x00, 0x10, 0x2e, 0x5b, 0x00, 0xe1, 0x72,
0x00, 0x6a, 0x6f, 0x62, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f,
0x00, 0x75, 0x6e, 0x59, 0x00, 0x63, 0x00, 0x65, 0x76, 0x65,
0x72, 0x79, 0x5d, 0x00, 0x03, 0x53, 0x00, 0x85, 0x64, 0x6f,
0x65, 0x73, 0x00, 0x6e, 0x6f, 0x74, 0x5c, 0x00, 0x11, 0x61,
0x5e, 0x00, 0x41, 0x2e, 0x00, 0x49, 0x66, 0x5c, 0x00, 0x04,
0x3b, 0x00, 0x14, 0x61, 0x37, 0x00, 0x03, 0x28, 0x00, 0x33,
0x69, 0x6e, 0x67, 0x2b, 0x00, 0x11, 0x2c, 0x28, 0x00, 0x3f,
0x6c, 0x6f, 0x73, 0x35, 0x00, 0x08, 0x0f, 0x6c, 0x00, 0x0a,
0x02, 0x41, 0x00, 0x00, 0x27, 0x00, 0xd2, 0x74, 0x6f, 0x6c,
0x64, 0x00, 0x68, 0x6f, 0x77, 0x00, 0x6d, 0x61, 0x6e, 0x79,
0xe6, 0x00, 0x17, 0x00, 0x74, 0x00, 0xf0, 0x0d, 0x65, 0x64,
0x00, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x00, 0x74, 0x68,
0x65, 0x00, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x73, 0x75,
0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x90, 0x00, 0x03, 0x36,
0x01, 0xf0, 0x03, 0x2e, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69,
0x73, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x00, 0x6e, 0x65, 0x65,
0x64, 0x76, 0x00, 0xf0, 0x1a, 0x00, 0x69, 0x6e, 0x74, 0x72,
0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3b, 0x00,
0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x73, 0x65,
0x64, 0x00, 0x62, 0x79, 0x00, 0x57, 0x69, 0x6e, 0x64, 0x6f,
0x77, 0x73, 0x2c, 0x00, 0x69, 0x74, 0x34, 0x01, 0x71, 0x70,
0x65, 0x72, 0x68, 0x61, 0x70, 0x73, 0x68, 0x00, 0xa2, 0x73,
0x69, 0x6e, 0x67, 0x6c, 0x65, 0x00, 0x62, 0x65, 0x73, 0x64,
0x01, 0xf2, 0x01, 0x6e, 0x00, 0x64, 0x65, 0x73, 0x6b, 0x74,
0x6f, 0x70, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x67,
0x00, 0xc5, 0x69, 0x6e, 0x00, 0x65, 0x78, 0x69, 0x73, 0x74,
0x65, 0x6e, 0x63, 0x65, 0x81, 0x00, 0x70, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0xc1, 0x01, 0xf1, 0x17, 0x69, 0x74,
0x00, 0x68, 0x61, 0x73, 0x00, 0x61, 0x6e, 0x00, 0x75, 0x6e,
0x75, 0x73, 0x75, 0x61, 0x6c, 0x00, 0x70, 0x72, 0x6f, 0x70,
0x65, 0x72, 0x74, 0x79, 0x2e, 0x00, 0x42, 0x79, 0x00, 0x64,
0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x80, 0x00, 0xf1, 0x02,
0x77, 0x69, 0x6c, 0x6c, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x74, 0x65, 0x00, 0x69, 0x74, 0x73, 0x0a, 0x01, 0x50,
0x00, 0x70, 0x6f, 0x73, 0x69, 0xbc, 0x00, 0x10, 0x73, 0x6c,
0x00, 0xc1, 0x73, 0x75, 0x63, 0x68, 0x00, 0x61, 0x00, 0x77,
0x61, 0x79, 0x00, 0x61, 0xe3, 0x01, 0x40, 0x65, 0x6e, 0x73,
0x75, 0x42, 0x01, 0x22, 0x68, 0x61, 0x14, 0x02, 0x10, 0x6e,
0xec, 0x01, 0x01, 0xfd, 0x00, 0x00, 0x1e, 0x00, 0xb3, 0x67,
0x75, 0x65, 0x73, 0x73, 0x00, 0x77, 0x68, 0x65, 0x72, 0x65,
0x75, 0x01, 0x41, 0x00, 0x69, 0x73, 0x3a, 0x29, 0x00, 0x01,
0x6e, 0x00, 0xe0, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x00,
0x62, 0x65, 0x00, 0x61, 0x62, 0x6c, 0x65, 0x32, 0x00, 0x50,
0x64, 0x65, 0x64, 0x75, 0x63, 0x7e, 0x00, 0x01, 0x83, 0x02,
0x76, 0x68, 0x6f, 0x77, 0x2e, 0x00, 0x53, 0x6f, 0x31, 0x00,
0x01, 0x5f, 0x00, 0x10, 0x2c, 0x7c, 0x00, 0xa0, 0x63, 0x61,
0x6e, 0x00, 0x68, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x98, 0x00,
0x54, 0x6f, 0x74, 0x68, 0x65, 0x72, 0xf8, 0x00, 0x60, 0x73,
0x2c, 0x00, 0x67, 0x65, 0x74, 0x4e, 0x00, 0x00, 0x48, 0x01,
0x60, 0x6c, 0x61, 0x73, 0x74, 0x00, 0x66, 0x99, 0x02, 0x03,
0xa8, 0x01, 0x82, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x64, 0x69,
0x73, 0x2c, 0x02, 0x01, 0xba, 0x00, 0x12, 0x74, 0xa2, 0x00,
0x00, 0xc9, 0x00, 0x23, 0x77, 0x6f, 0x01, 0x02, 0x45, 0x6c,
0x65, 0x66, 0x74, 0xeb, 0x02, 0x01, 0x30, 0x03, 0x21, 0x6e,
0x6f, 0xf9, 0x00, 0x21, 0x6f, 0x66, 0x90, 0x01, 0x00, 0xfa,
0x01, 0x41, 0x66, 0x6f, 0x72, 0x00, 0x00, 0x01, 0x02, 0xe3,
0x00, 0x40, 0x74, 0x68, 0x65, 0x79, 0x46, 0x00, 0x00, 0x89,
0x01, 0x43, 0x31, 0x32, 0x2e, 0x31, 0x86, 0x03, 0x20, 0x63,
0x6f, 0x03, 0x02, 0x39, 0x6c, 0x73, 0x20, 0x21, 0x02, 0x00,
0xef, 0x01, 0x33, 0x6c, 0x61, 0x79, 0x5d, 0x02, 0x01, 0xab,
0x00, 0x41, 0x6d, 0x6f, 0x75, 0x73, 0x3d, 0x00, 0x03, 0xd0,
0x02, 0x00, 0x83, 0x00, 0x71, 0x2d, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0x00, 0xb6, 0x02, 0x0a, 0xa7, 0x03, 0x06, 0xb5, 0x01,
0x24, 0x62, 0x65, 0xfb, 0x02, 0x27, 0x65, 0x64, 0x3f, 0x00,
0x10, 0x72, 0xaa, 0x02, 0x0f, 0x40, 0x00, 0x11, 0x40, 0x70,
0x6c, 0x61, 0x63, 0xa1, 0x01, 0x43, 0x66, 0x6c, 0x61, 0x67,
0x34, 0x03, 0x95, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74,
0x65, 0x73, 0x21, 0x01, 0x04, 0x54, 0x03, 0x10, 0x69, 0xb0,
0x01, 0x42, 0x6c, 0x69, 0x65, 0x76, 0xe3, 0x01, 0x25, 0x62,
0x65, 0xbb, 0x03, 0x15, 0x4c, 0xaf, 0x00, 0x00, 0x1c, 0x01,
0x02, 0x68, 0x03, 0x35, 0x61, 0x72, 0x6b, 0x71, 0x00, 0x03,
0xc3, 0x01, 0x25, 0x6f, 0x74, 0xa9, 0x03, 0x32, 0x69, 0x74,
0x2c, 0x44, 0x01, 0x51, 0x61, 0x66, 0x65, 0x74, 0x79, 0x40,
0x04, 0x01, 0xd9, 0x01, 0x08, 0xba, 0x00, 0x30, 0x61, 0x67,
0x61, 0x7a, 0x03, 0x83, 0x6f, 0x00, 0x72, 0x65, 0x6d, 0x6f,
0x76, 0x65, 0x55, 0x00, 0x02, 0xb4, 0x00, 0x11, 0x64, 0x00,
0x03, 0x4f, 0x72, 0x72, 0x6f, 0x72, 0x36, 0x01, 0x07, 0x00,
0xfa, 0x02, 0x0f, 0xf9, 0x00, 0x05, 0x81, 0x60, 0x63, 0x6c,
0x65, 0x61, 0x72, 0x00, 0x61, 0xcb, 0x03, 0x17, 0x27, 0xe6,
0x00, 0x12, 0x2e, 0xa9, 0x01, 0x98, 0x6d, 0x65, 0x61, 0x6e,
0x73, 0x3a, 0x00, 0x69, 0x66, 0x01, 0x01, 0x00, 0x50, 0x03,
0x61, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x05, 0x03, 0x01,
0x34, 0x04, 0x00, 0x3a, 0x01, 0x19, 0x73, 0x15, 0x04, 0x20,
0x69, 0x74, 0x1d, 0x00, 0x00, 0xc8, 0x02, 0x52, 0x68, 0x6f,
0x75, 0x6c, 0x64, 0x42, 0x02, 0x03, 0x41, 0x05, 0x81, 0x74,
0x68, 0x65, 0x6e, 0x00, 0x61, 0x6c, 0x6c, 0x56, 0x00, 0x0b,
0x7c, 0x05, 0x41, 0x00, 0x6e, 0x65, 0x78, 0xbc, 0x02, 0x23,
0x69, 0x74, 0x8b, 0x01, 0x00, 0x74, 0x00, 0x00, 0x35, 0x01,
0x00, 0x64, 0x00, 0x3e, 0x67, 0x65, 0x64, 0xf3, 0x01, 0x01,
0x23, 0x03, 0x41, 0x6f, 0x6e, 0x63, 0x65, 0xff, 0x00, 0x00,
0xa9, 0x04, 0x11, 0x6b, 0x0a, 0x00, 0x01, 0x9a, 0x05, 0x01,
0x03, 0x03, 0x43, 0x6f, 0x63, 0x61, 0x74, 0x11, 0x04, 0x04,
0x77, 0x00, 0x04, 0xe6, 0x04, 0x00, 0xb0, 0x00, 0x05, 0x31,
0x05, 0x02, 0x13, 0x05, 0x10, 0x63, 0x34, 0x01, 0x20, 0x73,
0x65, 0x4a, 0x00, 0x61, 0x73, 0x00, 0x66, 0x75, 0x6e, 0x63,
0x3c, 0x00, 0x00, 0x46, 0x04, 0x00, 0xcd, 0x00, 0x41, 0x72,
0x74, 0x63, 0x75, 0xa1, 0x00, 0x41, 0x61, 0x76, 0x6f, 0x69,
0xd8, 0x00, 0x00, 0xef, 0x00, 0x32, 0x74, 0x6f, 0x00, 0x73,
0x01, 0x92, 0x6f, 0x6e, 0x00, 0x65, 0x61, 0x63, 0x68, 0x00,
0x6f, 0x34, 0x01, 0x33, 0x72, 0x65, 0x6d, 0xb6, 0x05, 0x04,
0xe0, 0x00, 0x30, 0x6f, 0x6e, 0x65, 0xfa, 0x04, 0x28, 0x6f,
0x6e, 0xea, 0x02, 0x0f, 0xba, 0x05, 0x04, 0x00, 0x6b, 0x01,
0x14, 0x6e, 0x91, 0x03, 0x03, 0x80, 0x05, 0x08, 0x65, 0x01,
0x03, 0x8c, 0x05, 0x04, 0xb6, 0x06, 0x01, 0x58, 0x01, 0x02,
0x4a, 0x05, 0x91, 0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73,
0x6c, 0x79, 0x5c, 0x02, 0x08, 0x8d, 0x06, 0x44, 0x74, 0x68,
0x6f, 0x73, 0xcc, 0x01, 0x02, 0x55, 0x00, 0x41, 0x75, 0x72,
0x6e, 0x2c, 0x15, 0x04, 0x10, 0x73, 0x47, 0x01, 0x00, 0xee,
0x01, 0x00, 0xd3, 0x01, 0x02, 0xc1, 0x00, 0x64, 0x6d, 0x00,
0x61, 0x6c, 0x73, 0x6f, 0x89, 0x00, 0x08, 0x7c, 0x00, 0x01,
0x95, 0x00, 0x03, 0x28, 0x02, 0x04, 0x93, 0x01, 0x10, 0x64,
0xdd, 0x00, 0x00, 0xd1, 0x02, 0x01, 0x5a, 0x06, 0xd0, 0x75,
0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x6c,
0x79, 0x3b, 0x5d, 0x00, 0x00, 0xd3, 0x04, 0x41, 0x74, 0x69,
0x6d, 0x65, 0x13, 0x05, 0x1f, 0x6e, 0xf9, 0x00, 0x02, 0x10,
0x2c, 0x5e, 0x05, 0x30, 0x68, 0x6f, 0x6c, 0x41, 0x06, 0x10,
0x77, 0xfb, 0x01, 0x12, 0x61, 0x5d, 0x00, 0x10, 0x6f, 0xe9,
0x04, 0x23, 0x75, 0x70, 0x72, 0x03, 0x53, 0x65, 0x78, 0x70,
0x6c, 0x6f, 0xed, 0x03, 0x04, 0x34, 0x03, 0x01, 0xa8, 0x00,
0x02, 0xb7, 0x01, 0xc1, 0x65, 0x00, 0x63, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0xa6, 0x05, 0x02, 0x39,
0x03, 0x02, 0xec, 0x01, 0x04, 0xfd, 0x01, 0xb0, 0x66, 0x69,
0x65, 0x6c, 0x64, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x6b,
0x06, 0x03, 0xae, 0x01, 0x00, 0x0d, 0x01, 0x00, 0x37, 0x00,
0x0f, 0x31, 0x04, 0x01, 0x04, 0xad, 0x00, 0x00, 0xd7, 0x02,
0x02, 0x31, 0x01, 0x0e, 0x60, 0x03, 0x06, 0xe8, 0x03, 0x08,
0x5b, 0x03, 0x00, 0x95, 0x01, 0x31, 0x28, 0x73, 0x6f, 0x15,
0x03, 0x52, 0x63, 0x74, 0x73, 0x00, 0x61, 0xe3, 0x06, 0x04,
0x63, 0x05, 0x78, 0x74, 0x6f, 0x6e, 0x29, 0x2c, 0x00, 0x70,
0x8a, 0x00, 0x20, 0x73, 0x70, 0x93, 0x04, 0x3f, 0x62, 0x61,
0x72, 0x89, 0x00, 0x02, 0x0e, 0xb6, 0x04, 0xbc, 0x28, 0x73,
0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x2c, 0x66,
0x00, 0x01, 0x4d, 0x04, 0x04, 0x67, 0x00, 0x00, 0x32, 0x01,
0x13, 0x41, 0x03, 0x03, 0x22, 0x61, 0x63, 0xd8, 0x06, 0x72,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x4e, 0x04, 0x22,
0x73, 0x65, 0xef, 0x02, 0x31, 0x32, 0x2e, 0x31, 0x7a, 0x03,
0x01, 0x57, 0x01, 0x50, 0x61, 0x76, 0x61, 0x69, 0x6c, 0xa3,
0x06, 0x00, 0x3f, 0x00, 0x90, 0x45, 0x76, 0x65, 0x6e, 0x00,
0x55, 0x6e, 0x64, 0x6f, 0x68, 0x02, 0x05, 0x1a, 0x00, 0xa1,
0x2c, 0x00, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68,
0xd8, 0x01, 0x11, 0x6d, 0x75, 0x00, 0x61, 0x63, 0x6f, 0x6e,
0x73, 0x69, 0x64, 0xe9, 0x04, 0x63, 0x00, 0x63, 0x68, 0x65,
0x61, 0x74, 0x2b, 0x03, 0x20, 0x75, 0x73, 0xe3, 0x06, 0x05,
0xb8, 0x08, 0x66, 0x73, 0x74, 0x65, 0x70, 0x00, 0x6f, 0x98,
0x08, 0x00, 0x9d, 0x00, 0x73, 0x70, 0x72, 0x6f, 0x67, 0x72,
0x61, 0x6d, 0xfe, 0x01, 0x96, 0x6e, 0x6c, 0x79, 0x00, 0x72,
0x65, 0x76, 0x65, 0x61, 0xbd, 0x03, 0x00, 0xad, 0x00, 0x41,
0x71, 0x75, 0x65, 0x73, 0xae, 0x00, 0x60, 0x28, 0x75, 0x6e,
0x6c, 0x69, 0x6b, 0x42, 0x06, 0x23, 0x73, 0x74, 0x0d, 0x07,
0xb2, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
0x61, 0x74, 0x14, 0x07, 0x02, 0x53, 0x03, 0x03, 0x46, 0x00,
0x00, 0x07, 0x04, 0x03, 0xe2, 0x02, 0x16, 0x29, 0x78, 0x05,
0x24, 0x74, 0x68, 0xdb, 0x00, 0x10, 0x79, 0x31, 0x07, 0x53,
0x66, 0x61, 0x74, 0x61, 0x6c, 0x3d, 0x02, 0x21, 0x6e, 0x64,
0x0f, 0x09, 0x41, 0x69, 0x6e, 0x75, 0x65, 0xb8, 0x06, 0x01,
0xe4, 0x04, 0x03, 0x71, 0x05, 0x21, 0x69, 0x6b, 0x31, 0x05,
0x0b, 0xb5, 0x00, 0x51, 0x74, 0x72, 0x61, 0x63, 0x6b, 0xaf,
0x00, 0x61, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x70, 0x00,
0x01, 0xfe, 0x02, 0x01, 0x3d, 0x0a, 0x50, 0x69, 0x65, 0x64,
0x00, 0x28, 0x57, 0x00, 0x01, 0x70, 0x00, 0x05, 0x1b, 0x06,
0x12, 0x72, 0x01, 0x08, 0x01, 0x76, 0x06, 0x80, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x65, 0x72, 0x29, 0x90, 0x0a, 0x06, 0x33,
0x03, 0x07, 0xdc, 0x07, 0x34, 0x65, 0x6e, 0x64, 0x69, 0x04,
0x01, 0x54, 0x07, 0x05, 0xf6, 0x04, 0x31, 0x77, 0x68, 0x65,
0x05, 0x01, 0x21, 0x6f, 0x72, 0x55, 0x00, 0x02, 0x71, 0x00,
0x12, 0x64, 0xf8, 0x05, 0x00, 0xa6, 0x01, 0x41, 0x74, 0x00,
0x6d, 0x61, 0xa6, 0x06, 0x00, 0xea, 0x03, 0x01, 0x41, 0x06,
0x01, 0xbf, 0x09, 0x14, 0x28, 0x3a, 0x07, 0x10, 0x65, 0xb4,
0x03, 0x41, 0x00, 0x77, 0x61, 0x6e, 0x6b, 0x00, 0x05, 0x49,
0x05, 0x80, 0x66, 0x75, 0x6c, 0x6c, 0x00, 0x6c, 0x61, 0x79,
0x41, 0x00, 0x04, 0x78, 0x00, 0x34, 0x72, 0x69, 0x64, 0x5c,
0x01, 0x0f, 0x79, 0x01, 0x02, 0x02, 0xdb, 0x00, 0x10, 0x73,
0x5f, 0x0a, 0x01, 0x16, 0x04, 0x44, 0x66, 0x74, 0x65, 0x72,
0x02, 0x01, 0x06, 0x70, 0x05, 0x03, 0x0a, 0x09, 0x04, 0xc0,
0x03, 0x30, 0x53, 0x6f, 0x6c, 0x2f, 0x06, 0x60, 0x65, 0x6e,
0x75, 0x00, 0x6f, 0x70, 0x47, 0x00, 0x22, 0x2e, 0x29, 0x54,
0x08, 0x13, 0x32, 0x54, 0x08, 0x93, 0x70, 0x61, 0x72, 0x61,
0x6d, 0x65, 0x74, 0x65, 0x72, 0x56, 0x08, 0x13, 0x65, 0x28,
0x00, 0x07, 0x92, 0x02, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d,
0x4e, 0x00, 0xb3, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x27, 0x00, 0x00, 0x6e, 0x02, 0x01,
0x1a, 0x00, 0x52, 0x54, 0x79, 0x70, 0x65, 0x27, 0x69, 0x00,
0xf2, 0x00, 0x61, 0x72, 0x65, 0x3a, 0x00, 0x00, 0x00, 0x57,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x5c, 0x05, 0x51,
0x00, 0x00, 0x53, 0x69, 0x7a, 0x0b, 0x0c, 0x01, 0x2c, 0x0c,
0x28, 0x69, 0x6e, 0xee, 0x0a, 0x11, 0x4d, 0x98, 0x05, 0x35,
0x00, 0x00, 0x4e, 0xe0, 0x01, 0x09, 0xaa, 0x05, 0x00, 0x32,
0x00, 0x06, 0x5c, 0x02, 0x10, 0x65, 0xcb, 0x01, 0x02, 0x54,
0x06, 0x02, 0x91, 0x0a, 0x73, 0x61, 0x62, 0x73, 0x6f, 0x6c,
0x75, 0x74, 0xce, 0x02, 0x01, 0xec, 0x01, 0x10, 0x2c, 0xb1,
0x01, 0xd5, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74,
0x69, 0x76, 0x65, 0x6c, 0x79, 0x21, 0x01, 0xb5, 0x70, 0x75,
0x74, 0x00, 0x61, 0x00, 0x25, 0x00, 0x73, 0x69, 0x67, 0xbe,
0x00, 0x12, 0x65, 0x83, 0x04, 0x03, 0xa5, 0x0c, 0x36, 0x61,
0x73, 0x65, 0x0a, 0x02, 0x02, 0x5f, 0x0a, 0x52, 0x72, 0x72,
0x61, 0x6e, 0x67, 0x92, 0x05, 0x01, 0x51, 0x02, 0x00, 0xfc,
0x0a, 0x24, 0x6f, 0x72, 0x0b, 0x07, 0x06, 0xd4, 0x07, 0x09,
0xb3, 0x00, 0x03, 0x64, 0x05, 0x03, 0xe0, 0x05, 0x71, 0x00,
0x00, 0x42, 0x65, 0x77, 0x61, 0x72, 0x03, 0x01, 0x44, 0x73,
0x65, 0x74, 0x74, 0xa1, 0x04, 0x06, 0xb5, 0x00, 0xe1, 0x00,
0x74, 0x6f, 0x6f, 0x00, 0x68, 0x69, 0x67, 0x68, 0x2e, 0x00,
0x41, 0x74, 0x00, 0xeb, 0x0c, 0x00, 0x0e, 0x00, 0x40, 0x00,
0x64, 0x65, 0x6e, 0x3a, 0x0b, 0x2a, 0x65, 0x73, 0xd1, 0x03,
0x60, 0x6d, 0x61, 0x79, 0x00, 0x73, 0x70, 0xbb, 0x00, 0x31,
0x66, 0x6f, 0x72, 0x2e, 0x0b, 0x64, 0x73, 0x65, 0x61, 0x72,
0x63, 0x68, 0x50, 0x0a, 0x61, 0x61, 0x00, 0x73, 0x6f, 0x6c,
0x76, 0xc1, 0x01, 0x02, 0x41, 0x01, 0x31, 0x00, 0x00, 0x45,
0x65, 0x0b, 0x10, 0x20, 0x2f, 0x01, 0x60, 0x62, 0x69, 0x6c,
0x69, 0x74, 0x79, 0xa7, 0x01, 0x00, 0x0f, 0x03, 0x01, 0x4e,
0x01, 0x03, 0xd2, 0x01, 0x50, 0x69, 0x73, 0x00, 0x65, 0x6e,
0x37, 0x00, 0x00, 0x57, 0x03, 0x13, 0x73, 0x07, 0x07, 0x15,
0x62, 0xe3, 0x0b, 0x23, 0x29, 0x2c, 0xaf, 0x01, 0x01, 0x1a,
0x01, 0x08, 0xb7, 0x0b, 0x02, 0x4a, 0x01, 0x33, 0x74, 0x69,
0x72, 0xff, 0x00, 0x00, 0x6e, 0x01, 0x12, 0x62, 0xec, 0x02,
0x13, 0x79, 0x90, 0x0b, 0x61, 0x64, 0x00, 0x73, 0x74, 0x61,
0x72, 0xfc, 0x00, 0x05, 0x55, 0x02, 0x63, 0x69, 0x6e, 0x69,
0x74, 0x69, 0x61, 0x9a, 0x06, 0x01, 0xaf, 0x05, 0x05, 0xd0,
0x04, 0x63, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x7d, 0x05,
0x51, 0x73, 0x6b, 0x69, 0x65, 0x72, 0x5a, 0x00, 0x15, 0x73,
0x5e, 0x0c, 0x01, 0xfc, 0x0c, 0x0f, 0xa7, 0x04, 0x04, 0x04,
0xf1, 0x01, 0x41, 0x73, 0x77, 0x69, 0x74, 0x48, 0x08, 0x15,
0x66, 0xe7, 0x00, 0x50, 0x69, 0x6f, 0x6e, 0x2e, 0x00,
};
const unsigned short help_text_len = 3796;
const unsigned short help_text_words = 731;
const unsigned short help_text_len = 3814;
const unsigned short help_text_words = 732;
const char quick_help_text[] = "Find all the mines without treading on any of them.";

View file

@ -0,0 +1,150 @@
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
#include "lib/display_text.h"
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 43, TEXT_UNDERLINE },
{ 105, TEXT_CENTER | C_RED },
{ 223, TEXT_CENTER | C_RED },
{ 240, TEXT_UNDERLINE },
{ 241, TEXT_UNDERLINE },
{ 251, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 1673 comp 1259 ratio 0.75254 level 10 saved 414 */
const char help_text[] = {
0xfd, 0x06, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x34, 0x32, 0x3a, 0x20, 0x4d, 0x6f, 0x73, 0x61, 0x69, 0x63,
0x20, 0x00, 0x2d, 0x01, 0x00, 0xf0, 0x3a, 0x00, 0x00, 0x00,
0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69,
0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65,
0x73, 0x2c, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x79,
0x6f, 0x75, 0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x63, 0x6f,
0x6c, 0x6f, 0x75, 0x72, 0x00, 0x65, 0x69, 0x74, 0x68, 0x65,
0x72, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x00, 0x6f, 0x72,
0x26, 0x00, 0xa4, 0x74, 0x65, 0x2e, 0x00, 0x00, 0x00, 0x53,
0x6f, 0x6d, 0x65, 0x3d, 0x00, 0xf2, 0x0c, 0x00, 0x63, 0x6f,
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x63, 0x6c, 0x75, 0x65,
0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x00,
0x45, 0x61, 0x63, 0x68, 0x13, 0x00, 0x51, 0x74, 0x65, 0x6c,
0x6c, 0x73, 0x5c, 0x00, 0x24, 0x74, 0x68, 0x21, 0x00, 0x00,
0x7d, 0x00, 0x02, 0x57, 0x00, 0x04, 0x46, 0x00, 0x21, 0x69,
0x6e, 0x1f, 0x00, 0xf1, 0x07, 0x33, 0x2a, 0x33, 0x00, 0x72,
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x00, 0x73, 0x75, 0x72, 0x72,
0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x1b, 0x00, 0x01,
0x4d, 0x00, 0x7a, 0x2d, 0x00, 0x69, 0x6e, 0x63, 0x6c, 0x75,
0x15, 0x00, 0x02, 0x44, 0x00, 0x70, 0x00, 0x69, 0x74, 0x73,
0x65, 0x6c, 0x66, 0xa0, 0x00, 0xf0, 0x0d, 0x54, 0x68, 0x69,
0x73, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x00, 0x69, 0x73, 0x00,
0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x00,
0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x6a, 0x00, 0x11, 0x6f, 0xd8,
0x00, 0xf2, 0x02, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x00, 0x61, 0x73, 0x3a, 0x00, 0x41, 0x72, 0x74,
0x44, 0x01, 0xf0, 0x0e, 0x6f, 0x2c, 0x00, 0x43, 0x6f, 0x75,
0x6e, 0x74, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x44, 0x61, 0x72,
0x6b, 0x65, 0x6e, 0x2c, 0x00, 0x43, 0x75, 0x65, 0x6e, 0x74,
0x61, 0x00, 0x59, 0xfb, 0x00, 0xf3, 0x01, 0x62, 0x72, 0x65,
0x61, 0x2c, 0x00, 0x46, 0x69, 0x6c, 0x6c, 0x2d, 0x61, 0x2d,
0x50, 0x69, 0x78, 0x0c, 0x00, 0xf0, 0x0a, 0x49, 0x6e, 0x2c,
0x00, 0x4b, 0x6f, 0x6d, 0x73, 0x75, 0x00, 0x4b, 0x61, 0x72,
0x61, 0x6c, 0x61, 0x2c, 0x00, 0x4d, 0x61, 0x67, 0x69, 0x70,
0x69, 0x63, 0x09, 0x00, 0x85, 0x6a, 0x69, 0x70, 0x69, 0x6b,
0x75, 0x2c, 0x00, 0x63, 0x00, 0x01, 0x09, 0x00, 0x10, 0x6b,
0x08, 0x00, 0xf4, 0x0d, 0x7a, 0x61, 0x69, 0x65, 0x6b, 0x2c,
0x00, 0x4e, 0x61, 0x6d, 0x70, 0x72, 0x65, 0x00, 0x50, 0x75,
0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x00, 0x4e, 0x75, 0x72, 0x69,
0x65, 0x2d, 0x0e, 0x00, 0x62, 0x4f, 0x65, 0x6b, 0x61, 0x6b,
0x69, 0x6d, 0x00, 0x81, 0x56, 0x6f, 0x69, 0x73, 0x69, 0x6d,
0x61, 0x67, 0x8a, 0x01, 0x02, 0x50, 0x00, 0x32, 0x00, 0x77,
0x61, 0x88, 0x01, 0xe0, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65,
0x64, 0x00, 0x74, 0x6f, 0x00, 0x74, 0x68, 0x69, 0x14, 0x00,
0x50, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x4f, 0x01, 0xf2, 0x01,
0x62, 0x79, 0x00, 0x44, 0x69, 0x64, 0x69, 0x00, 0x4b, 0x6f,
0x68, 0x65, 0x6e, 0x2e, 0x00, 0x43, 0xe3, 0x01, 0x51, 0x64,
0x65, 0x73, 0x69, 0x67, 0x1d, 0x00, 0xf0, 0x0a, 0x4d, 0x69,
0x63, 0x68, 0x61, 0x6c, 0x00, 0x53, 0x68, 0x6f, 0x6d, 0x65,
0x72, 0x2e, 0x00, 0x54, 0x68, 0x65, 0x00, 0x69, 0x6d, 0x70,
0x6c, 0x65, 0x6d, 0xf9, 0x00, 0x01, 0x42, 0x00, 0xf2, 0x1b,
0x69, 0x73, 0x00, 0x6c, 0x6f, 0x6f, 0x73, 0x65, 0x6c, 0x79,
0x00, 0x62, 0x61, 0x73, 0x65, 0x64, 0x00, 0x6f, 0x6e, 0x00,
0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
0x2f, 0x6d, 0x6f, 0x72, 0x64, 0x65, 0x63, 0x68, 0x61, 0x69,
0x6d, 0x2f, 0x96, 0x00, 0x00, 0xa0, 0x00, 0x44, 0x34, 0x32,
0x2e, 0x31, 0x9c, 0x02, 0x01, 0xa1, 0x00, 0x40, 0x6f, 0x6c,
0x73, 0x20, 0xa2, 0x01, 0x63, 0x6f, 0x00, 0x70, 0x6c, 0x61,
0x79, 0xc0, 0x00, 0x71, 0x2c, 0x00, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0xd2, 0x01, 0x50, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0xa5,
0x01, 0x14, 0x61, 0xd8, 0x01, 0x81, 0x74, 0x6f, 0x00, 0x63,
0x68, 0x61, 0x6e, 0x67, 0xe2, 0x01, 0x03, 0x9c, 0x02, 0x71,
0x2e, 0x00, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x37, 0x00, 0x00,
0x0c, 0x02, 0x84, 0x61, 0x6e, 0x00, 0x65, 0x6d, 0x70, 0x74,
0x79, 0x34, 0x00, 0xc2, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x74,
0x75, 0x72, 0x6e, 0x00, 0x69, 0x74, 0x6a, 0x02, 0x11, 0x2c,
0xd0, 0x01, 0x47, 0x72, 0x69, 0x67, 0x68, 0x37, 0x00, 0x09,
0x27, 0x00, 0x03, 0xdf, 0x02, 0x42, 0x4b, 0x65, 0x65, 0x70,
0x90, 0x00, 0x04, 0x65, 0x02, 0x10, 0x73, 0x4a, 0x02, 0x61,
0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x8d, 0x00, 0xc1, 0x79,
0x63, 0x6c, 0x65, 0x00, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67,
0x68, 0x21, 0x00, 0xf2, 0x0a, 0x74, 0x68, 0x72, 0x65, 0x65,
0x00, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x00,
0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x00, 0x66, 0x6f, 0x72,
0x3f, 0x00, 0x01, 0x93, 0x00, 0x00, 0x0e, 0x01, 0x21, 0x49,
0x66, 0x08, 0x03, 0x60, 0x68, 0x6f, 0x6c, 0x64, 0x00, 0x64,
0x8c, 0x02, 0x06, 0xf1, 0x00, 0x03, 0x5f, 0x00, 0x00, 0xa4,
0x00, 0x51, 0x64, 0x72, 0x61, 0x67, 0x2c, 0x29, 0x00, 0x34,
0x63, 0x61, 0x6e, 0x8c, 0x03, 0xa1, 0x6d, 0x75, 0x6c, 0x74,
0x69, 0x70, 0x6c, 0x65, 0x00, 0x63, 0x4f, 0x03, 0x02, 0x20,
0x01, 0x71, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x00, 0x61, 0xe1,
0x01, 0x13, 0x2e, 0xe8, 0x03, 0x00, 0x34, 0x00, 0x50, 0x61,
0x6c, 0x73, 0x6f, 0x00, 0x56, 0x00, 0x01, 0x23, 0x03, 0xa0,
0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73,
0xbe, 0x00, 0x61, 0x6d, 0x6f, 0x76, 0x65, 0x00, 0x61, 0x5a,
0x03, 0x01, 0x1f, 0x00, 0x00, 0x0c, 0x04, 0x74, 0x2e, 0x00,
0x50, 0x72, 0x65, 0x73, 0x73, 0xf0, 0x00, 0x21, 0x72, 0x65,
0x13, 0x01, 0x82, 0x6f, 0x72, 0x00, 0x73, 0x70, 0x61, 0x63,
0x65, 0x3b, 0x00, 0x06, 0x2b, 0x01, 0x0c, 0x6c, 0x01, 0x0a,
0x20, 0x04, 0x50, 0x00, 0x72, 0x65, 0x73, 0x70, 0x74, 0x02,
0x10, 0x76, 0x29, 0x02, 0x22, 0x28, 0x61, 0x67, 0x00, 0x15,
0x6e, 0x36, 0x01, 0x13, 0x65, 0xd2, 0x00, 0x05, 0xf3, 0x03,
0x01, 0x5e, 0x01, 0x6d, 0x77, 0x61, 0x79, 0x00, 0x61, 0x73,
0x10, 0x01, 0x22, 0x73, 0x29, 0xb7, 0x01, 0x14, 0x70, 0x9f,
0x00, 0x42, 0x42, 0x61, 0x63, 0x6b, 0x95, 0x00, 0x01, 0x90,
0x00, 0x59, 0x72, 0x65, 0x73, 0x65, 0x74, 0x2a, 0x02, 0x01,
0x9a, 0x00, 0x03, 0x7a, 0x02, 0x14, 0x32, 0x7a, 0x02, 0x92,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x7c,
0x02, 0x56, 0x68, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x01,
0x1b, 0x05, 0x60, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0xbe,
0x01, 0x41, 0x66, 0x72, 0x6f, 0x6d, 0x89, 0x00, 0xe1, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27,
0x00, 0x6f, 0x70, 0x03, 0x03, 0x22, 0x6f, 0x6e, 0x1a, 0x00,
0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e,
0x75, 0x6b, 0x00, 0x90, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c,
0x00, 0x48, 0x65, 0x5d, 0x02, 0x00, 0x1f, 0x05, 0x30, 0x69,
0x7a, 0x65, 0xe2, 0x04, 0x01, 0x67, 0x05, 0x24, 0x69, 0x6e,
0xe4, 0x04, 0x00, 0x2b, 0x00, 0x31, 0x41, 0x67, 0x67, 0xcb,
0x00, 0x82, 0x76, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x5a, 0x03, 0x00, 0x43, 0x00, 0x22, 0x74, 0x68, 0xb3, 0x03,
0x03, 0x6a, 0x00, 0x42, 0x73, 0x65, 0x74, 0x2c, 0xa0, 0x01,
0x00, 0x1f, 0x01, 0x03, 0x2c, 0x00, 0x23, 0x6f, 0x72, 0x87,
0x01, 0x91, 0x72, 0x79, 0x00, 0x68, 0x61, 0x72, 0x64, 0x65,
0x72, 0xf3, 0x00, 0xf1, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x6e,
0x61, 0x74, 0x65, 0x00, 0x75, 0x6e, 0x6e, 0x65, 0x63, 0x65,
0x73, 0x73, 0x61, 0x72, 0x79, 0x1a, 0x05, 0x14, 0x73, 0xb1,
0x00, 0x62, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x18, 0x05,
0x52, 0x73, 0x6c, 0x6f, 0x77, 0x73, 0x7f, 0x02, 0x06, 0x83,
0x00, 0xf1, 0x0a, 0x2c, 0x00, 0x73, 0x6f, 0x00, 0x69, 0x74,
0x27, 0x73, 0x00, 0x6e, 0x6f, 0x74, 0x00, 0x72, 0x65, 0x63,
0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0xc6, 0x02,
0x01, 0x3f, 0x00, 0x70, 0x73, 0x00, 0x6c, 0x61, 0x72, 0x67,
0x65, 0xd4, 0x02, 0x10, 0x61, 0x30, 0x00, 0xb0, 0x61, 0x79,
0x2c, 0x00, 0x33, 0x30, 0x2a, 0x33, 0x30, 0x2e, 0x00,
};
const unsigned short help_text_len = 1673;
const unsigned short help_text_words = 285;
const char quick_help_text[] = "Fill in the grid given clues about number of nearby black squares.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,268 +6,295 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 3, TEXT_UNDERLINE },
{ 120, TEXT_CENTER | C_RED },
{ 140, TEXT_UNDERLINE },
{ 147, TEXT_UNDERLINE },
{ 155, TEXT_UNDERLINE },
{ 163, TEXT_UNDERLINE },
{ 168, TEXT_UNDERLINE },
{ 221, TEXT_UNDERLINE },
{ 257, TEXT_UNDERLINE },
{ 313, TEXT_UNDERLINE },
{ 344, TEXT_CENTER | C_RED },
{ 361, TEXT_UNDERLINE },
{ 4, TEXT_UNDERLINE },
{ 121, TEXT_CENTER | C_RED },
{ 141, TEXT_UNDERLINE },
{ 148, TEXT_UNDERLINE },
{ 156, TEXT_UNDERLINE },
{ 164, TEXT_UNDERLINE },
{ 169, TEXT_UNDERLINE },
{ 222, TEXT_UNDERLINE },
{ 258, TEXT_UNDERLINE },
{ 314, TEXT_UNDERLINE },
{ 345, TEXT_CENTER | C_RED },
{ 362, TEXT_UNDERLINE },
{ 372, TEXT_UNDERLINE },
{ 398, TEXT_UNDERLINE },
{ 485, TEXT_UNDERLINE },
{ 553, TEXT_UNDERLINE },
{ 598, TEXT_UNDERLINE },
{ 363, TEXT_UNDERLINE },
{ 373, TEXT_UNDERLINE },
{ 399, TEXT_UNDERLINE },
{ 486, TEXT_UNDERLINE },
{ 554, TEXT_UNDERLINE },
{ 599, TEXT_UNDERLINE },
{ 614, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 3439 comp 2361 ratio 0.686537 level 10 saved 1078 */
/* orig 3919 comp 2622 ratio 0.669048 level 10 saved 1297 */
const char help_text[] = {
0xf4, 0x57, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x3a, 0x20, 0x4e, 0x65, 0x74, 0x20, 0x00, 0x00, 0x00,
0x28, 0x4e, 0x6f, 0x74, 0x65, 0x3a, 0x00, 0x74, 0x68, 0x65,
0x00, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x00, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x00, 0x6f, 0x66, 0x00,
0x74, 0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x00,
0x69, 0x73, 0x00, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x00,
0x4e, 0x45, 0x54, 0x47, 0x41, 0x4d, 0x45, 0x2e, 0x45, 0x58,
0x45, 0x00, 0x74, 0x6f, 0x00, 0x61, 0x76, 0x6f, 0x69, 0x64,
0x00, 0x63, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x00,
0x77, 0x69, 0x74, 0x68, 0x4a, 0x00, 0x60, 0x27, 0x73, 0x00,
0x6f, 0x77, 0x6e, 0x31, 0x00, 0x00, 0x2d, 0x00, 0xf2, 0x06,
0x2e, 0x29, 0x00, 0x00, 0x00, 0x49, 0x00, 0x6f, 0x72, 0x69,
0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x73, 0x61,
0x77, 0x62, 0x00, 0x21, 0x69, 0x6e, 0x81, 0x00, 0x40, 0x66,
0x6f, 0x72, 0x6d, 0x76, 0x00, 0x30, 0x61, 0x00, 0x46, 0x4f,
0x00, 0x02, 0x79, 0x00, 0x03, 0x76, 0x00, 0xf0, 0x18, 0x46,
0x72, 0x65, 0x65, 0x4e, 0x65, 0x74, 0x00, 0x5b, 0x31, 0x5d,
0x2c, 0x00, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x00,
0x62, 0x79, 0x00, 0x50, 0x61, 0x76, 0x69, 0x6c, 0x73, 0x00,
0x4a, 0x75, 0x72, 0x6a, 0x61, 0x6e, 0x73, 0x3b, 0x48, 0x00,
0xf0, 0x01, 0x72, 0x65, 0x00, 0x61, 0x72, 0x65, 0x00, 0x73,
0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x00, 0x6f, 0x13, 0x00,
0xf1, 0x07, 0x00, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65,
0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x00, 0x75,
0x6e, 0x64, 0x65, 0x72, 0x76, 0x00, 0x10, 0x6e, 0x66, 0x00,
0xf0, 0x19, 0x4e, 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6b, 0x2e,
0x00, 0x54, 0x68, 0x65, 0x00, 0x63, 0x6f, 0x6d, 0x70, 0x75,
0x74, 0x65, 0x72, 0x00, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72,
0x65, 0x73, 0x00, 0x61, 0x00, 0x6e, 0x65, 0x74, 0x77, 0x6f,
0x72, 0x6b, 0x73, 0x00, 0x70, 0x63, 0x6f, 0x6e, 0x6e, 0x65,
0x63, 0x74, 0xee, 0x00, 0x21, 0x75, 0x70, 0x43, 0x00, 0x40,
0x63, 0x65, 0x6e, 0x74, 0x27, 0x00, 0x61, 0x6f, 0x66, 0x00,
0x73, 0x71, 0x75, 0x32, 0x00, 0xe0, 0x69, 0x6e, 0x00, 0x61,
0x00, 0x67, 0x72, 0x69, 0x64, 0x2c, 0x00, 0x61, 0x6e, 0x64,
0x26, 0x00, 0xa2, 0x6e, 0x00, 0x73, 0x68, 0x75, 0x66, 0x66,
0x6c, 0x65, 0x73, 0x77, 0x00, 0x06, 0x51, 0x00, 0x41, 0x72,
0x6f, 0x74, 0x61, 0x4f, 0x00, 0x00, 0xb2, 0x00, 0xf0, 0x0a,
0x79, 0x00, 0x74, 0x69, 0x6c, 0x65, 0x00, 0x72, 0x61, 0x6e,
0x64, 0x6f, 0x6d, 0x6c, 0x79, 0x2e, 0x00, 0x59, 0x6f, 0x75,
0x72, 0x00, 0x6a, 0x6f, 0x62, 0x83, 0x01, 0x22, 0x74, 0x6f,
0x2d, 0x00, 0xf2, 0x09, 0x65, 0x00, 0x69, 0x74, 0x00, 0x61,
0x6c, 0x6c, 0x00, 0x62, 0x61, 0x63, 0x6b, 0x00, 0x69, 0x6e,
0x74, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0xc0, 0x00,
0xf0, 0x01, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66,
0x75, 0x6c, 0x00, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0xcd, 0x01,
0x20, 0x77, 0x69, 0x2e, 0x00, 0xc5, 0x65, 0x00, 0x61, 0x6e,
0x00, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x6c, 0xc9, 0x00,
0x24, 0x65, 0x64, 0x8d, 0x00, 0x12, 0x2c, 0xbf, 0x01, 0xf0,
0x03, 0x6e, 0x6f, 0x00, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64,
0x00, 0x6c, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x00, 0x41, 0x02,
0x01, 0x81, 0x76, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x00, 0x61,
0xd3, 0x00, 0x21, 0x6c, 0x6c, 0xa7, 0x00, 0x71, 0x73, 0x00,
0x77, 0x68, 0x69, 0x63, 0x68, 0x70, 0x01, 0x06, 0x4e, 0x00,
0x21, 0x74, 0x6f, 0xe2, 0x00, 0x34, 0x6f, 0x6e, 0x65, 0xda,
0x01, 0x52, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x97, 0x01, 0xe0,
0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x65,
0x64, 0x2e, 0x00, 0x00, 0xd0, 0x01, 0xd2, 0x00, 0x68, 0x74,
0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6a,
0xc8, 0x01, 0xe3, 0x2e, 0x6c, 0x76, 0x2f, 0x73, 0x74, 0x75,
0x66, 0x66, 0x2f, 0x6e, 0x65, 0x74, 0x2f, 0xfc, 0x01, 0xa1,
0x2e, 0x68, 0x74, 0x6d, 0x00, 0x00, 0x00, 0x33, 0x2e, 0x31,
0xbd, 0x02, 0x80, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
0x73, 0xc6, 0x02, 0x15, 0x54, 0xa8, 0x02, 0x30, 0x63, 0x61,
0x6e, 0xe7, 0x00, 0x62, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64,
0xcf, 0x00, 0x43, 0x65, 0x69, 0x74, 0x68, 0xec, 0x01, 0xb2,
0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x00, 0x6f,
0x72, 0x98, 0x00, 0x33, 0x6f, 0x75, 0x73, 0x35, 0x01, 0x04,
0x4f, 0x00, 0x00, 0xa5, 0x00, 0xb0, 0x3a, 0x00, 0x00, 0x00,
0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0xe6, 0x00, 0x12,
0x3a, 0x28, 0x00, 0xf0, 0x00, 0x00, 0x70, 0x6f, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x2c, 0x00, 0x61, 0x72, 0x72, 0x6f, 0x77,
0x4d, 0x00, 0x51, 0x73, 0x00, 0x00, 0x00, 0x52, 0x91, 0x01,
0x01, 0x29, 0x00, 0xf3, 0x05, 0x20, 0x61, 0x6e, 0x74, 0x69,
0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x77, 0x69, 0x73, 0x65, 0x3a,
0x00, 0x6c, 0x65, 0x66, 0x74, 0x3c, 0x00, 0xb0, 0x62, 0x75,
0x74, 0x74, 0x6f, 0x6e, 0x2c, 0x00, 0x60, 0x41, 0x27, 0x39,
0x00, 0x0b, 0x38, 0x00, 0x07, 0x34, 0x00, 0x10, 0x72, 0x1c,
0x01, 0x0c, 0x35, 0x00, 0x1f, 0x44, 0x35, 0x00, 0x01, 0xf4,
0x03, 0x62, 0x79, 0x20, 0x31, 0x38, 0x30, 0x20, 0x64, 0x65,
0x67, 0x72, 0x65, 0x65, 0x73, 0x3a, 0x00, 0x60, 0x46, 0x26,
0x00, 0xb0, 0x4c, 0x6f, 0x63, 0x6b, 0x20, 0x28, 0x6f, 0x72,
0x20, 0x75, 0x6e, 0x59, 0x00, 0x14, 0x29, 0xc6, 0x00, 0x02,
0x86, 0x01, 0x0a, 0x5c, 0x00, 0xf4, 0x00, 0x73, 0x68, 0x69,
0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x2c, 0x00,
0x60, 0x53, 0x43, 0x00, 0x31, 0x59, 0x6f, 0x75, 0x4c, 0x01,
0x00, 0x40, 0x00, 0x22, 0x00, 0x61, 0x94, 0x02, 0xa0, 0x6f,
0x6e, 0x63, 0x65, 0x00, 0x79, 0x6f, 0x75, 0x27, 0x72, 0x64,
0x02, 0x20, 0x72, 0x65, 0xf0, 0x02, 0x30, 0x69, 0x74, 0x73,
0xd3, 0x03, 0x04, 0x59, 0x03, 0x15, 0x2e, 0x39, 0x00, 0x52,
0x61, 0x6c, 0x73, 0x6f, 0x00, 0x80, 0x00, 0x01, 0xad, 0x02,
0x50, 0x67, 0x61, 0x69, 0x6e, 0x2c, 0x76, 0x00, 0x00, 0x33,
0x02, 0x10, 0x6c, 0xc1, 0x02, 0x21, 0x27, 0x73, 0x5e, 0x00,
0x42, 0x65, 0x64, 0x00, 0x79, 0x34, 0x00, 0x80, 0x27, 0x74,
0x00, 0x61, 0x63, 0x63, 0x69, 0x64, 0x4d, 0x00, 0x00, 0x20,
0x04, 0x81, 0x74, 0x75, 0x72, 0x6e, 0x00, 0x69, 0x74, 0x2e,
0xe1, 0x01, 0x00, 0x1f, 0x04, 0x40, 0x6c, 0x6c, 0x6f, 0x77,
0x28, 0x03, 0x08, 0xac, 0x01, 0x70, 0x00, 0x6e, 0x6f, 0x74,
0x00, 0x6e, 0x65, 0xf1, 0x02, 0x10, 0x61, 0x3d, 0x03, 0x11,
0x6f, 0xbf, 0x03, 0x41, 0x6c, 0x65, 0x74, 0x65, 0xe2, 0x01,
0x00, 0x15, 0x02, 0x02, 0x77, 0x00, 0x30, 0x6d, 0x61, 0x79,
0x1a, 0x02, 0x61, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0xe2,
0x01, 0x00, 0xfa, 0x00, 0x10, 0x20, 0xa4, 0x03, 0x12, 0x3a,
0x0c, 0x00, 0x2a, 0x00, 0x2b, 0xda, 0x01, 0x21, 0x4f, 0x6e,
0xc2, 0x03, 0x00, 0xb0, 0x03, 0x84, 0x61, 0x74, 0x00, 0x77,
0x72, 0x61, 0x70, 0x2c, 0xab, 0x00, 0x42, 0x00, 0x6d, 0x6f,
0x76, 0x61, 0x00, 0x02, 0xd0, 0x04, 0x02, 0x2d, 0x05, 0x13,
0x65, 0xf2, 0x03, 0x22, 0x73, 0x6f, 0x33, 0x00, 0x02, 0x23,
0x03, 0x02, 0x3e, 0x00, 0x00, 0x97, 0x04, 0x00, 0x55, 0x05,
0xd8, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x00, 0x73,
0x69, 0x64, 0x65, 0x73, 0x37, 0x00, 0x04, 0xbb, 0x02, 0x90,
0x73, 0x65, 0x65, 0x6e, 0x00, 0x74, 0x6f, 0x67, 0x65, 0xb6,
0x02, 0x00, 0xfc, 0x00, 0x52, 0x4d, 0x6f, 0x76, 0x65, 0x20,
0x63, 0x04, 0x6c, 0x3a, 0x00, 0x43, 0x74, 0x72, 0x6c, 0xa8,
0x00, 0x04, 0x73, 0x01, 0x63, 0x63, 0x68, 0x61, 0x6e, 0x67,
0x65, 0x93, 0x03, 0x11, 0x74, 0x65, 0x01, 0x30, 0x73, 0x00,
0x75, 0xc8, 0x03, 0x12, 0x61, 0x74, 0x04, 0x51, 0x73, 0x6f,
0x75, 0x72, 0x63, 0xb7, 0x01, 0x05, 0x86, 0x03, 0xd0, 0x69,
0x6e, 0x67, 0x2e, 0x00, 0x28, 0x49, 0x74, 0x00, 0x64, 0x6f,
0x65, 0x73, 0x82, 0x01, 0x70, 0x75, 0x6c, 0x74, 0x69, 0x6d,
0x61, 0x74, 0x20, 0x04, 0x30, 0x6d, 0x61, 0x74, 0x06, 0x05,
0x07, 0x50, 0x00, 0x02, 0xae, 0x05, 0x20, 0x73, 0x2c, 0x51,
0x00, 0x07, 0xad, 0x04, 0x04, 0x5d, 0x04, 0x09, 0x03, 0x04,
0x02, 0x20, 0x00, 0x02, 0x7e, 0x05, 0x02, 0x8d, 0x00, 0x00,
0x13, 0x05, 0x75, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74,
0x99, 0x04, 0x02, 0x9c, 0x01, 0x15, 0x69, 0x9f, 0x01, 0x40,
0x68, 0x65, 0x6c, 0x70, 0xb9, 0x04, 0x03, 0x39, 0x04, 0x01,
0x71, 0x03, 0x50, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x33, 0x01,
0x33, 0x74, 0x61, 0x67, 0x66, 0x05, 0x30, 0x6f, 0x6c, 0x76,
0x09, 0x02, 0x00, 0x23, 0x00, 0x61, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x65, 0x5e, 0x06, 0x52, 0x4a, 0x75, 0x6d, 0x62, 0x6c,
0x1e, 0x03, 0x00, 0x10, 0x03, 0x14, 0x4a, 0xcd, 0x02, 0x01,
0x1f, 0x04, 0x22, 0x6b, 0x65, 0x52, 0x02, 0x17, 0x73, 0xbe,
0x04, 0x01, 0x9b, 0x01, 0x04, 0x45, 0x02, 0x03, 0x8d, 0x02,
0x23, 0x74, 0x6f, 0x7d, 0x05, 0x08, 0xd8, 0x02, 0x20, 0x73,
0x2e, 0x2c, 0x07, 0x31, 0x41, 0x6c, 0x6c, 0x73, 0x00, 0x22,
0x61, 0x63, 0x45, 0x06, 0x90, 0x64, 0x65, 0x73, 0x63, 0x72,
0x69, 0x62, 0x65, 0x64, 0xaf, 0x00, 0x31, 0x73, 0x65, 0x63,
0x6a, 0x05, 0x31, 0x32, 0x2e, 0x31, 0x53, 0x00, 0x01, 0x01,
0x03, 0x73, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0xa0,
0x00, 0x31, 0x33, 0x2e, 0x32, 0xbb, 0x04, 0x93, 0x70, 0x61,
0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0xbd, 0x04, 0x10,
0x65, 0x5d, 0x04, 0x05, 0x14, 0x00, 0x02, 0x3e, 0x00, 0x04,
0x39, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x76, 0x00,
0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6c, 0x00, 0x22, 0x6f, 0x6e,
0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d,
0x65, 0x6e, 0x75, 0xa8, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74,
0x68, 0x2c, 0x00, 0x48, 0x65, 0x4b, 0x04, 0x51, 0x00, 0x00,
0x53, 0x69, 0x7a, 0xf5, 0x01, 0x01, 0x66, 0x02, 0x22, 0x69,
0x6e, 0xfc, 0x00, 0x01, 0x29, 0x00, 0x50, 0x61, 0x6c, 0x6c,
0x73, 0x20, 0xd9, 0x02, 0x70, 0x20, 0x61, 0x72, 0x6f, 0x75,
0x6e, 0x64, 0xa2, 0x07, 0x50, 0x66, 0x00, 0x63, 0x68, 0x65,
0x0a, 0x01, 0x61, 0x2c, 0x00, 0x66, 0x6c, 0x6f, 0x77, 0x5a,
0x02, 0x46, 0x70, 0x61, 0x73, 0x73, 0x89, 0x00, 0x01, 0xd7,
0x04, 0x44, 0x65, 0x64, 0x67, 0x65, 0xea, 0x05, 0x02, 0xb4,
0x04, 0x00, 0x12, 0x00, 0x02, 0xee, 0x06, 0x02, 0x2a, 0x00,
0x20, 0x6f, 0x70, 0x20, 0x00, 0x62, 0x62, 0x6f, 0x74, 0x74,
0x6f, 0x6d, 0x18, 0x00, 0x41, 0x76, 0x69, 0x63, 0x65, 0x5f,
0x08, 0x10, 0x61, 0x7e, 0x00, 0xf0, 0x03, 0x42, 0x61, 0x72,
0x72, 0x69, 0x65, 0x72, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x61,
0x62, 0x69, 0x6c, 0x69, 0x74, 0xac, 0x01, 0xd0, 0x41, 0x00,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x00, 0x62, 0x65, 0x74,
0x77, 0x0b, 0x03, 0x31, 0x30, 0x2e, 0x30, 0x3d, 0x00, 0x34,
0x31, 0x2e, 0x30, 0xf9, 0x03, 0x11, 0x6c, 0x6a, 0x08, 0x11,
0x68, 0x22, 0x03, 0x00, 0xd2, 0x06, 0x51, 0x69, 0x6d, 0x6d,
0x6f, 0x76, 0x2d, 0x01, 0x12, 0x62, 0x54, 0x00, 0x00, 0xf9,
0x02, 0x01, 0x11, 0x07, 0x15, 0x64, 0x47, 0x00, 0x34, 0x74,
0x77, 0x6f, 0xf5, 0x01, 0x10, 0x6f, 0xd9, 0x07, 0x42, 0x76,
0x65, 0x6e, 0x74, 0xe1, 0x00, 0x05, 0x22, 0x00, 0x61, 0x68,
0x65, 0x6d, 0x00, 0x28, 0x61, 0x1c, 0x03, 0x24, 0x65, 0x72,
0x87, 0x00, 0x95, 0x67, 0x69, 0x76, 0x65, 0x73, 0x00, 0x6d,
0x6f, 0x72, 0x5d, 0x00, 0x86, 0x73, 0x29, 0x2e, 0x00, 0x53,
0x69, 0x6e, 0x63, 0x11, 0x00, 0x01, 0xb2, 0x01, 0x05, 0x85,
0x00, 0x10, 0x2c, 0x4a, 0x00, 0x10, 0x79, 0x25, 0x02, 0x00,
0x27, 0x03, 0xb4, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61,
0x69, 0x6e, 0x74, 0x73, 0xaf, 0x01, 0x05, 0x95, 0x07, 0x80,
0x28, 0x69, 0x2e, 0x65, 0x2e, 0x2c, 0x00, 0x68, 0x1d, 0x00,
0x14, 0x29, 0xe7, 0x04, 0x01, 0xa6, 0x01, 0x51, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x7a, 0x02, 0x00, 0xb1, 0x01, 0x00, 0xf9,
0x08, 0x50, 0x68, 0x61, 0x73, 0x00, 0x62, 0xa7, 0x00, 0x30,
0x63, 0x61, 0x72, 0xc2, 0x04, 0x20, 0x6c, 0x79, 0x05, 0x04,
0x00, 0xf1, 0x03, 0x16, 0x64, 0x70, 0x04, 0x1c, 0x68, 0x94,
0x00, 0x60, 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x52, 0x05,
0x04, 0x6b, 0x04, 0x48, 0x72, 0x65, 0x73, 0x74, 0x77, 0x04,
0x12, 0x2e, 0x1e, 0x03, 0x43, 0x6d, 0x65, 0x61, 0x6e, 0x10,
0x03, 0x21, 0x69, 0x66, 0xe6, 0x04, 0x82, 0x6e, 0x6f, 0x74,
0x65, 0x00, 0x64, 0x6f, 0x77, 0xb4, 0x00, 0x03, 0x13, 0x03,
0x42, 0x73, 0x65, 0x65, 0x64, 0x53, 0x04, 0x24, 0x74, 0x6f,
0xa5, 0x00, 0x12, 0x65, 0x04, 0x09, 0x30, 0x75, 0x72, 0x72,
0x67, 0x00, 0x02, 0x8f, 0x03, 0x57, 0x00, 0x28, 0x73, 0x65,
0x65, 0x13, 0x03, 0x34, 0x32, 0x29, 0x2c, 0x9f, 0x04, 0x00,
0x2d, 0x00, 0x0f, 0xfb, 0x01, 0x01, 0x05, 0x01, 0x03, 0x07,
0x32, 0x09, 0x40, 0x72, 0x65, 0x2d, 0x65, 0x02, 0x04, 0x02,
0x37, 0x01, 0x29, 0x61, 0x6d, 0x88, 0x00, 0x02, 0x8d, 0x05,
0x70, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x6f, 0x00,
0x76, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x2d, 0x00,
0x41, 0x73, 0x74, 0x61, 0x72, 0x59, 0x09, 0x02, 0x97, 0x05,
0x01, 0x0e, 0x08, 0x02, 0x9a, 0x08, 0x24, 0x6c, 0x79, 0x8f,
0x00, 0x24, 0x62, 0x65, 0x49, 0x04, 0x03, 0xf1, 0x01, 0x25,
0x6f, 0x66, 0x44, 0x01, 0x43, 0x2e, 0x00, 0x53, 0x6f, 0x0f,
0x01, 0x01, 0xf4, 0x06, 0x60, 0x74, 0x75, 0x63, 0x6b, 0x00,
0x6f, 0xc7, 0x04, 0x10, 0x70, 0x59, 0x00, 0x52, 0x63, 0x75,
0x6c, 0x61, 0x72, 0xb0, 0x01, 0x20, 0x61, 0x6e, 0x45, 0x09,
0x00, 0x6a, 0x05, 0x01, 0xce, 0x01, 0x03, 0x28, 0x06, 0x02,
0x9a, 0x00, 0x00, 0x85, 0x00, 0x00, 0x2a, 0x0a, 0x23, 0x61,
0x6e, 0x8b, 0x0a, 0x52, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x88,
0x05, 0x71, 0x4e, 0x65, 0x74, 0x2c, 0x00, 0x73, 0x65, 0x20,
0x00, 0x05, 0xb7, 0x00, 0x07, 0x0b, 0x04, 0x00, 0x1d, 0x05,
0x05, 0x92, 0x02, 0x04, 0xdd, 0x02, 0x07, 0x36, 0x01, 0x02,
0x2c, 0x01, 0x06, 0x24, 0x01, 0x01, 0x04, 0x09, 0x01, 0xa5,
0x01, 0x05, 0xae, 0x03, 0x04, 0x71, 0x0b, 0x01, 0x46, 0x02,
0x11, 0x77, 0x9a, 0x0b, 0x00, 0x6b, 0x02, 0x20, 0x45, 0x6e,
0xc3, 0x07, 0x85, 0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65,
0x20, 0x93, 0x02, 0x60, 0x00, 0x00, 0x4e, 0x6f, 0x72, 0x6d,
0x7f, 0x07, 0x13, 0x2c, 0x31, 0x00, 0x63, 0x6c, 0x6c, 0x00,
0x6d, 0x61, 0x6b, 0xf2, 0x07, 0x05, 0x67, 0x02, 0x02, 0xe7,
0x01, 0x10, 0x73, 0xba, 0x05, 0x50, 0x70, 0x72, 0x65, 0x73,
0x65, 0xdf, 0x02, 0x33, 0x68, 0x61, 0x76, 0x5c, 0x01, 0x26,
0x6f, 0x6e, 0xe6, 0x02, 0x33, 0x2e, 0x00, 0x50, 0x2c, 0x00,
0x01, 0x80, 0x01, 0x94, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75,
0x6f, 0x75, 0x73, 0x1e, 0x02, 0x14, 0x73, 0xf9, 0x06, 0x01,
0x64, 0x03, 0x40, 0x64, 0x69, 0x66, 0x66, 0x59, 0x01, 0x11,
0x74, 0xd9, 0x00, 0x21, 0x6d, 0x6f, 0x6b, 0x08, 0x41, 0x62,
0x74, 0x6c, 0x65, 0x56, 0x07, 0x03, 0x9b, 0x02, 0x45, 0x6c,
0x69, 0x6b, 0x65, 0x8a, 0x07, 0x01, 0x26, 0x08, 0x23, 0x6f,
0x66, 0xad, 0x0c, 0x40, 0x66, 0x65, 0x61, 0x74, 0xa9, 0x00,
0x00, 0x3e, 0x00, 0x40, 0x72, 0x69, 0x73, 0x6b, 0x95, 0x00,
0x00, 0xe1, 0x01, 0x06, 0x77, 0x00, 0x03, 0xba, 0x00, 0x10,
0x2e, 0xcf, 0x05, 0x81, 0x73, 0x6f, 0x2c, 0x00, 0x66, 0x69,
0x6e, 0x64, 0x22, 0x00, 0x03, 0xdd, 0x05, 0x76, 0x70, 0x6f,
0x73, 0x73, 0x69, 0x62, 0x6c, 0xc1, 0x00, 0x05, 0xa1, 0x00,
0x00, 0xd6, 0x08, 0x30, 0x64, 0x64, 0x69, 0x14, 0x00, 0x20,
0x61, 0x6c, 0x40, 0x02, 0x51, 0x6c, 0x6c, 0x65, 0x6e, 0x67,
0xb8, 0x0c, 0x02, 0x1c, 0x00, 0x30, 0x76, 0x61, 0x6e, 0x73,
0x04, 0x90, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x29,
0x00,
0xf9, 0x02, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x3a, 0x20, 0x4e, 0x65, 0x74, 0x20, 0x00, 0x2d, 0x01,
0x00, 0xf4, 0x48, 0x00, 0x00, 0x00, 0x28, 0x4e, 0x6f, 0x74,
0x65, 0x3a, 0x00, 0x74, 0x68, 0x65, 0x00, 0x57, 0x69, 0x6e,
0x64, 0x6f, 0x77, 0x73, 0x00, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x00, 0x6f, 0x66, 0x00, 0x74, 0x68, 0x69, 0x73,
0x00, 0x67, 0x61, 0x6d, 0x65, 0x00, 0x69, 0x73, 0x00, 0x63,
0x61, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x4e, 0x45, 0x54, 0x47,
0x41, 0x4d, 0x45, 0x2e, 0x45, 0x58, 0x45, 0x00, 0x74, 0x6f,
0x00, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x00, 0x63, 0x6c, 0x61,
0x73, 0x68, 0x69, 0x6e, 0x67, 0x00, 0x77, 0x69, 0x74, 0x68,
0x4a, 0x00, 0x60, 0x27, 0x73, 0x00, 0x6f, 0x77, 0x6e, 0x31,
0x00, 0x00, 0x2d, 0x00, 0xf2, 0x06, 0x2e, 0x29, 0x00, 0x00,
0x00, 0x49, 0x00, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61,
0x6c, 0x6c, 0x79, 0x00, 0x73, 0x61, 0x77, 0x62, 0x00, 0x21,
0x69, 0x6e, 0x81, 0x00, 0x40, 0x66, 0x6f, 0x72, 0x6d, 0x76,
0x00, 0x30, 0x61, 0x00, 0x46, 0x4f, 0x00, 0x02, 0x79, 0x00,
0x03, 0x76, 0x00, 0xf0, 0x18, 0x46, 0x72, 0x65, 0x65, 0x4e,
0x65, 0x74, 0x00, 0x5b, 0x31, 0x5d, 0x2c, 0x00, 0x77, 0x72,
0x69, 0x74, 0x74, 0x65, 0x6e, 0x00, 0x62, 0x79, 0x00, 0x50,
0x61, 0x76, 0x69, 0x6c, 0x73, 0x00, 0x4a, 0x75, 0x72, 0x6a,
0x61, 0x6e, 0x73, 0x3b, 0x48, 0x00, 0xf0, 0x01, 0x72, 0x65,
0x00, 0x61, 0x72, 0x65, 0x00, 0x73, 0x65, 0x76, 0x65, 0x72,
0x61, 0x6c, 0x00, 0x6f, 0x13, 0x00, 0xf1, 0x07, 0x00, 0x69,
0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x00, 0x75, 0x6e, 0x64, 0x65, 0x72,
0x76, 0x00, 0x10, 0x6e, 0x66, 0x00, 0xf0, 0x19, 0x4e, 0x65,
0x74, 0x57, 0x61, 0x6c, 0x6b, 0x2e, 0x00, 0x54, 0x68, 0x65,
0x00, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x00,
0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x73, 0x00, 0x61,
0x00, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x00,
0x70, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0xee, 0x00,
0x21, 0x75, 0x70, 0x43, 0x00, 0x40, 0x63, 0x65, 0x6e, 0x74,
0x27, 0x00, 0x61, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x32,
0x00, 0xe0, 0x69, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69,
0x64, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x26, 0x00, 0xa2, 0x6e,
0x00, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x73, 0x77,
0x00, 0x06, 0x51, 0x00, 0x41, 0x72, 0x6f, 0x74, 0x61, 0x4f,
0x00, 0x00, 0xb2, 0x00, 0xf0, 0x0a, 0x79, 0x00, 0x74, 0x69,
0x6c, 0x65, 0x00, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x6c,
0x79, 0x2e, 0x00, 0x59, 0x6f, 0x75, 0x72, 0x00, 0x6a, 0x6f,
0x62, 0x83, 0x01, 0x22, 0x74, 0x6f, 0x2d, 0x00, 0xf2, 0x09,
0x65, 0x00, 0x69, 0x74, 0x00, 0x61, 0x6c, 0x6c, 0x00, 0x62,
0x61, 0x63, 0x6b, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00, 0x70,
0x6c, 0x61, 0x63, 0x65, 0xc0, 0x00, 0xf0, 0x01, 0x73, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x00, 0x73,
0x6f, 0x6c, 0x75, 0x74, 0xcd, 0x01, 0x20, 0x77, 0x69, 0x2e,
0x00, 0xc5, 0x65, 0x00, 0x61, 0x6e, 0x00, 0x65, 0x6e, 0x74,
0x69, 0x72, 0x65, 0x6c, 0xc9, 0x00, 0x24, 0x65, 0x64, 0x8d,
0x00, 0x12, 0x2c, 0xbf, 0x01, 0xf0, 0x03, 0x6e, 0x6f, 0x00,
0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x00, 0x6c, 0x6f, 0x6f,
0x70, 0x73, 0x2e, 0x00, 0x41, 0x02, 0x01, 0x81, 0x76, 0x69,
0x73, 0x75, 0x61, 0x6c, 0x00, 0x61, 0xd3, 0x00, 0x21, 0x6c,
0x6c, 0xa7, 0x00, 0x71, 0x73, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x70, 0x01, 0x06, 0x4e, 0x00, 0x21, 0x74, 0x6f, 0xe2,
0x00, 0x34, 0x6f, 0x6e, 0x65, 0xda, 0x01, 0x52, 0x6d, 0x69,
0x64, 0x64, 0x6c, 0x97, 0x01, 0xe0, 0x68, 0x69, 0x67, 0x68,
0x6c, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x2e, 0x00, 0x00,
0xd0, 0x01, 0xd2, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6a, 0xc8, 0x01, 0xe3, 0x2e,
0x6c, 0x76, 0x2f, 0x73, 0x74, 0x75, 0x66, 0x66, 0x2f, 0x6e,
0x65, 0x74, 0x2f, 0xfc, 0x01, 0xa1, 0x2e, 0x68, 0x74, 0x6d,
0x00, 0x00, 0x00, 0x33, 0x2e, 0x31, 0xcc, 0x02, 0xd5, 0x63,
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00,
0x00, 0x54, 0xa8, 0x02, 0x30, 0x63, 0x61, 0x6e, 0xe7, 0x00,
0x62, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0xcf, 0x00, 0x43,
0x65, 0x69, 0x74, 0x68, 0xec, 0x01, 0xb2, 0x6b, 0x65, 0x79,
0x62, 0x6f, 0x61, 0x72, 0x64, 0x00, 0x6f, 0x72, 0x98, 0x00,
0x33, 0x6f, 0x75, 0x73, 0x35, 0x01, 0x04, 0x4f, 0x00, 0x00,
0xa5, 0x00, 0xb0, 0x3a, 0x00, 0x00, 0x00, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x20, 0xe6, 0x00, 0x12, 0x3a, 0x28, 0x00,
0xf0, 0x00, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72,
0x2c, 0x00, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x4d, 0x00, 0x51,
0x73, 0x00, 0x00, 0x00, 0x52, 0x91, 0x01, 0x01, 0x29, 0x00,
0xf3, 0x05, 0x20, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x6c, 0x6f,
0x63, 0x6b, 0x77, 0x69, 0x73, 0x65, 0x3a, 0x00, 0x6c, 0x65,
0x66, 0x74, 0x3c, 0x00, 0xb0, 0x62, 0x75, 0x74, 0x74, 0x6f,
0x6e, 0x2c, 0x00, 0x60, 0x41, 0x27, 0x39, 0x00, 0x0b, 0x38,
0x00, 0x07, 0x34, 0x00, 0x10, 0x72, 0x1c, 0x01, 0x0c, 0x35,
0x00, 0x1f, 0x44, 0x35, 0x00, 0x01, 0xf4, 0x03, 0x62, 0x79,
0x20, 0x31, 0x38, 0x30, 0x20, 0x64, 0x65, 0x67, 0x72, 0x65,
0x65, 0x73, 0x3a, 0x00, 0x60, 0x46, 0x26, 0x00, 0xb0, 0x4c,
0x6f, 0x63, 0x6b, 0x20, 0x28, 0x6f, 0x72, 0x20, 0x75, 0x6e,
0x59, 0x00, 0x14, 0x29, 0xc6, 0x00, 0x02, 0x86, 0x01, 0x0a,
0x5c, 0x00, 0xf4, 0x00, 0x73, 0x68, 0x69, 0x66, 0x74, 0x2d,
0x63, 0x6c, 0x69, 0x63, 0x6b, 0x2c, 0x00, 0x60, 0x53, 0x43,
0x00, 0x31, 0x59, 0x6f, 0x75, 0x4c, 0x01, 0x00, 0x40, 0x00,
0x22, 0x00, 0x61, 0x94, 0x02, 0xa0, 0x6f, 0x6e, 0x63, 0x65,
0x00, 0x79, 0x6f, 0x75, 0x27, 0x72, 0x64, 0x02, 0x20, 0x72,
0x65, 0xf0, 0x02, 0x30, 0x69, 0x74, 0x73, 0xd3, 0x03, 0x04,
0x59, 0x03, 0x15, 0x2e, 0x39, 0x00, 0x52, 0x61, 0x6c, 0x73,
0x6f, 0x00, 0x80, 0x00, 0x01, 0xad, 0x02, 0x50, 0x67, 0x61,
0x69, 0x6e, 0x2c, 0x76, 0x00, 0x00, 0x33, 0x02, 0x10, 0x6c,
0xc1, 0x02, 0x21, 0x27, 0x73, 0x5e, 0x00, 0x42, 0x65, 0x64,
0x00, 0x79, 0x34, 0x00, 0x80, 0x27, 0x74, 0x00, 0x61, 0x63,
0x63, 0x69, 0x64, 0x4d, 0x00, 0x00, 0x20, 0x04, 0x81, 0x74,
0x75, 0x72, 0x6e, 0x00, 0x69, 0x74, 0x2e, 0xe1, 0x01, 0x00,
0x1f, 0x04, 0x40, 0x6c, 0x6c, 0x6f, 0x77, 0x28, 0x03, 0x08,
0xac, 0x01, 0x70, 0x00, 0x6e, 0x6f, 0x74, 0x00, 0x6e, 0x65,
0xf1, 0x02, 0x10, 0x61, 0x3d, 0x03, 0x11, 0x6f, 0xbf, 0x03,
0x41, 0x6c, 0x65, 0x74, 0x65, 0xe2, 0x01, 0x00, 0x15, 0x02,
0x02, 0x77, 0x00, 0x30, 0x6d, 0x61, 0x79, 0x1a, 0x02, 0x61,
0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0xe2, 0x01, 0x00, 0xfa,
0x00, 0x10, 0x20, 0xa4, 0x03, 0x12, 0x3a, 0x0c, 0x00, 0x2a,
0x00, 0x2b, 0xda, 0x01, 0x21, 0x4f, 0x6e, 0xc2, 0x03, 0x00,
0xb0, 0x03, 0x84, 0x61, 0x74, 0x00, 0x77, 0x72, 0x61, 0x70,
0x2c, 0xab, 0x00, 0x42, 0x00, 0x6d, 0x6f, 0x76, 0x61, 0x00,
0x02, 0xd0, 0x04, 0x02, 0x2d, 0x05, 0x13, 0x65, 0xf2, 0x03,
0x22, 0x73, 0x6f, 0x33, 0x00, 0x02, 0x23, 0x03, 0x02, 0x3e,
0x00, 0x00, 0x97, 0x04, 0x00, 0x55, 0x05, 0xd8, 0x70, 0x70,
0x6f, 0x73, 0x69, 0x74, 0x65, 0x00, 0x73, 0x69, 0x64, 0x65,
0x73, 0x37, 0x00, 0x04, 0xbb, 0x02, 0x90, 0x73, 0x65, 0x65,
0x6e, 0x00, 0x74, 0x6f, 0x67, 0x65, 0xb6, 0x02, 0x00, 0xfc,
0x00, 0x52, 0x4d, 0x6f, 0x76, 0x65, 0x20, 0x63, 0x04, 0x6c,
0x3a, 0x00, 0x43, 0x74, 0x72, 0x6c, 0xa8, 0x00, 0x04, 0x73,
0x01, 0x63, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x93, 0x03,
0x11, 0x74, 0x65, 0x01, 0x30, 0x73, 0x00, 0x75, 0xc8, 0x03,
0x12, 0x61, 0x74, 0x04, 0x51, 0x73, 0x6f, 0x75, 0x72, 0x63,
0xb7, 0x01, 0x05, 0x86, 0x03, 0xd0, 0x69, 0x6e, 0x67, 0x2e,
0x00, 0x28, 0x49, 0x74, 0x00, 0x64, 0x6f, 0x65, 0x73, 0x82,
0x01, 0x70, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x20,
0x04, 0x30, 0x6d, 0x61, 0x74, 0x06, 0x05, 0x07, 0x50, 0x00,
0x02, 0xae, 0x05, 0x20, 0x73, 0x2c, 0x51, 0x00, 0x07, 0xad,
0x04, 0x04, 0x5d, 0x04, 0x09, 0x03, 0x04, 0x02, 0x20, 0x00,
0x02, 0x7e, 0x05, 0x02, 0x8d, 0x00, 0x00, 0x13, 0x05, 0x75,
0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x99, 0x04, 0x02,
0x9c, 0x01, 0x15, 0x69, 0x9f, 0x01, 0x40, 0x68, 0x65, 0x6c,
0x70, 0xb9, 0x04, 0x03, 0x39, 0x04, 0x01, 0x71, 0x03, 0x50,
0x6d, 0x65, 0x64, 0x69, 0x61, 0x33, 0x01, 0x33, 0x74, 0x61,
0x67, 0x66, 0x05, 0x30, 0x6f, 0x6c, 0x76, 0x09, 0x02, 0x00,
0x23, 0x00, 0x61, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x5e,
0x06, 0x52, 0x4a, 0x75, 0x6d, 0x62, 0x6c, 0x1e, 0x03, 0x00,
0x10, 0x03, 0x14, 0x4a, 0xcd, 0x02, 0x01, 0x1f, 0x04, 0x22,
0x6b, 0x65, 0x52, 0x02, 0x17, 0x73, 0xbe, 0x04, 0x01, 0x9b,
0x01, 0x04, 0x45, 0x02, 0x03, 0x8d, 0x02, 0x23, 0x74, 0x6f,
0x7d, 0x05, 0x08, 0xd8, 0x02, 0x20, 0x73, 0x2e, 0x2c, 0x07,
0x31, 0x41, 0x6c, 0x6c, 0x73, 0x00, 0x22, 0x61, 0x63, 0x45,
0x06, 0x90, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x64, 0xaf, 0x00, 0x31, 0x73, 0x65, 0x63, 0x6a, 0x05, 0x31,
0x32, 0x2e, 0x31, 0x53, 0x00, 0x01, 0x01, 0x03, 0x73, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0xa0, 0x00, 0x31, 0x33,
0x2e, 0x32, 0xbb, 0x04, 0x93, 0x70, 0x61, 0x72, 0x61, 0x6d,
0x65, 0x74, 0x65, 0x72, 0xbd, 0x04, 0x10, 0x65, 0x5d, 0x04,
0x05, 0x14, 0x00, 0x02, 0x3e, 0x00, 0x04, 0x39, 0x00, 0x51,
0x00, 0x66, 0x72, 0x6f, 0x6d, 0x76, 0x00, 0xe1, 0x60, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00,
0x6f, 0x70, 0x6c, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xa0,
0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75,
0xa8, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x65, 0x4b, 0x04, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a,
0xf5, 0x01, 0x01, 0x66, 0x02, 0x22, 0x69, 0x6e, 0xfc, 0x00,
0x01, 0x29, 0x00, 0x50, 0x61, 0x6c, 0x6c, 0x73, 0x20, 0xd9,
0x02, 0x70, 0x20, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0xa2,
0x07, 0x50, 0x66, 0x00, 0x63, 0x68, 0x65, 0x0a, 0x01, 0x61,
0x2c, 0x00, 0x66, 0x6c, 0x6f, 0x77, 0x5a, 0x02, 0x46, 0x70,
0x61, 0x73, 0x73, 0x89, 0x00, 0x01, 0xd7, 0x04, 0x44, 0x65,
0x64, 0x67, 0x65, 0xea, 0x05, 0x02, 0xb4, 0x04, 0x00, 0x12,
0x00, 0x02, 0xee, 0x06, 0x02, 0x2a, 0x00, 0x20, 0x6f, 0x70,
0x20, 0x00, 0x62, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x18,
0x00, 0x41, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x08, 0x10, 0x61,
0x7e, 0x00, 0xf0, 0x03, 0x42, 0x61, 0x72, 0x72, 0x69, 0x65,
0x72, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c,
0x69, 0x74, 0xac, 0x01, 0xd0, 0x41, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x00, 0x62, 0x65, 0x74, 0x77, 0x0b, 0x03,
0x31, 0x30, 0x2e, 0x30, 0x3d, 0x00, 0x34, 0x31, 0x2e, 0x30,
0xf9, 0x03, 0x11, 0x6c, 0x6a, 0x08, 0x11, 0x68, 0x22, 0x03,
0x00, 0xd2, 0x06, 0x51, 0x69, 0x6d, 0x6d, 0x6f, 0x76, 0x2d,
0x01, 0x12, 0x62, 0x54, 0x00, 0x00, 0xf9, 0x02, 0x01, 0x11,
0x07, 0x15, 0x64, 0x47, 0x00, 0x34, 0x74, 0x77, 0x6f, 0xf5,
0x01, 0x10, 0x6f, 0xd9, 0x07, 0x42, 0x76, 0x65, 0x6e, 0x74,
0xe1, 0x00, 0x05, 0x22, 0x00, 0x61, 0x68, 0x65, 0x6d, 0x00,
0x28, 0x61, 0x1c, 0x03, 0x24, 0x65, 0x72, 0x87, 0x00, 0x95,
0x67, 0x69, 0x76, 0x65, 0x73, 0x00, 0x6d, 0x6f, 0x72, 0x5d,
0x00, 0x86, 0x73, 0x29, 0x2e, 0x00, 0x53, 0x69, 0x6e, 0x63,
0x11, 0x00, 0x01, 0xb2, 0x01, 0x05, 0x85, 0x00, 0x10, 0x2c,
0x4a, 0x00, 0x10, 0x79, 0x25, 0x02, 0x00, 0x27, 0x03, 0xb4,
0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74,
0x73, 0xaf, 0x01, 0x05, 0x95, 0x07, 0x80, 0x28, 0x69, 0x2e,
0x65, 0x2e, 0x2c, 0x00, 0x68, 0x1d, 0x00, 0x14, 0x29, 0xe7,
0x04, 0x01, 0xa6, 0x01, 0x51, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x7a, 0x02, 0x00, 0xb1, 0x01, 0x00, 0xf9, 0x08, 0x50, 0x68,
0x61, 0x73, 0x00, 0x62, 0xa7, 0x00, 0x30, 0x63, 0x61, 0x72,
0xc2, 0x04, 0x20, 0x6c, 0x79, 0x05, 0x04, 0x00, 0xf1, 0x03,
0x16, 0x64, 0x70, 0x04, 0x1c, 0x68, 0x94, 0x00, 0x60, 0x6e,
0x64, 0x65, 0x70, 0x65, 0x6e, 0x52, 0x05, 0x04, 0x6b, 0x04,
0x48, 0x72, 0x65, 0x73, 0x74, 0x77, 0x04, 0x12, 0x2e, 0x1e,
0x03, 0x43, 0x6d, 0x65, 0x61, 0x6e, 0x10, 0x03, 0x21, 0x69,
0x66, 0xe6, 0x04, 0x82, 0x6e, 0x6f, 0x74, 0x65, 0x00, 0x64,
0x6f, 0x77, 0xb4, 0x00, 0x03, 0x13, 0x03, 0x42, 0x73, 0x65,
0x65, 0x64, 0x53, 0x04, 0x24, 0x74, 0x6f, 0xa5, 0x00, 0x12,
0x65, 0x04, 0x09, 0x30, 0x75, 0x72, 0x72, 0x67, 0x00, 0x02,
0x8f, 0x03, 0x57, 0x00, 0x28, 0x73, 0x65, 0x65, 0x13, 0x03,
0x34, 0x32, 0x29, 0x2c, 0x9f, 0x04, 0x00, 0x2d, 0x00, 0x0f,
0xfb, 0x01, 0x01, 0x05, 0x01, 0x03, 0x07, 0x32, 0x09, 0x40,
0x72, 0x65, 0x2d, 0x65, 0x02, 0x04, 0x02, 0x37, 0x01, 0x29,
0x61, 0x6d, 0x88, 0x00, 0x02, 0x8d, 0x05, 0x70, 0x73, 0x68,
0x6f, 0x75, 0x6c, 0x64, 0x00, 0x6f, 0x00, 0x76, 0x65, 0x78,
0x61, 0x63, 0x74, 0x6c, 0x79, 0x2d, 0x00, 0x41, 0x73, 0x74,
0x61, 0x72, 0x59, 0x09, 0x02, 0x97, 0x05, 0x01, 0x0e, 0x08,
0x02, 0x9a, 0x08, 0x24, 0x6c, 0x79, 0x8f, 0x00, 0x24, 0x62,
0x65, 0x49, 0x04, 0x03, 0xf1, 0x01, 0x25, 0x6f, 0x66, 0x44,
0x01, 0x43, 0x2e, 0x00, 0x53, 0x6f, 0x0f, 0x01, 0x01, 0xf4,
0x06, 0x60, 0x74, 0x75, 0x63, 0x6b, 0x00, 0x6f, 0xc7, 0x04,
0x10, 0x70, 0x59, 0x00, 0x52, 0x63, 0x75, 0x6c, 0x61, 0x72,
0xb0, 0x01, 0x20, 0x61, 0x6e, 0x45, 0x09, 0x00, 0x6a, 0x05,
0x01, 0xce, 0x01, 0x03, 0x28, 0x06, 0x02, 0x9a, 0x00, 0x00,
0x85, 0x00, 0x00, 0x2a, 0x0a, 0x23, 0x61, 0x6e, 0x8b, 0x0a,
0x52, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x88, 0x05, 0x71, 0x4e,
0x65, 0x74, 0x2c, 0x00, 0x73, 0x65, 0x20, 0x00, 0x05, 0xb7,
0x00, 0x07, 0x0b, 0x04, 0x00, 0x1d, 0x05, 0x05, 0x92, 0x02,
0x04, 0xdd, 0x02, 0x07, 0x36, 0x01, 0x02, 0x2c, 0x01, 0x06,
0x24, 0x01, 0x01, 0x04, 0x09, 0x01, 0xa5, 0x01, 0x05, 0xae,
0x03, 0x04, 0x71, 0x0b, 0x01, 0x46, 0x02, 0x11, 0x77, 0x9a,
0x0b, 0x00, 0x6b, 0x02, 0x20, 0x45, 0x6e, 0xc3, 0x07, 0x85,
0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x20, 0x93, 0x02,
0x60, 0x00, 0x00, 0x4e, 0x6f, 0x72, 0x6d, 0x7f, 0x07, 0x13,
0x2c, 0x31, 0x00, 0x63, 0x6c, 0x6c, 0x00, 0x6d, 0x61, 0x6b,
0xf2, 0x07, 0x05, 0x67, 0x02, 0x02, 0xe7, 0x01, 0x10, 0x73,
0xba, 0x05, 0x50, 0x70, 0x72, 0x65, 0x73, 0x65, 0xdf, 0x02,
0x33, 0x68, 0x61, 0x76, 0x5c, 0x01, 0x26, 0x6f, 0x6e, 0xe6,
0x02, 0x33, 0x2e, 0x00, 0x50, 0x2c, 0x00, 0x01, 0x80, 0x01,
0x94, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73,
0x1e, 0x02, 0x14, 0x73, 0xf9, 0x06, 0x01, 0x64, 0x03, 0x40,
0x64, 0x69, 0x66, 0x66, 0x59, 0x01, 0x11, 0x74, 0xd9, 0x00,
0x21, 0x6d, 0x6f, 0x6b, 0x08, 0x41, 0x62, 0x74, 0x6c, 0x65,
0x56, 0x07, 0x03, 0x9b, 0x02, 0x45, 0x6c, 0x69, 0x6b, 0x65,
0x8a, 0x07, 0x01, 0x26, 0x08, 0x23, 0x6f, 0x66, 0xad, 0x0c,
0x40, 0x66, 0x65, 0x61, 0x74, 0xa9, 0x00, 0x00, 0x3e, 0x00,
0x40, 0x72, 0x69, 0x73, 0x6b, 0x95, 0x00, 0x00, 0xe1, 0x01,
0x06, 0x77, 0x00, 0x03, 0xba, 0x00, 0x10, 0x2e, 0xcf, 0x05,
0x81, 0x73, 0x6f, 0x2c, 0x00, 0x66, 0x69, 0x6e, 0x64, 0x22,
0x00, 0x03, 0xdd, 0x05, 0x76, 0x70, 0x6f, 0x73, 0x73, 0x69,
0x62, 0x6c, 0xc1, 0x00, 0x05, 0xa1, 0x00, 0x00, 0xd6, 0x08,
0x30, 0x64, 0x64, 0x69, 0x14, 0x00, 0x20, 0x61, 0x6c, 0x40,
0x02, 0x51, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0xb8, 0x0c, 0x02,
0x1c, 0x00, 0x10, 0x76, 0xd7, 0x01, 0x12, 0x64, 0x7d, 0x0a,
0x13, 0x72, 0xf2, 0x05, 0x11, 0x33, 0xf2, 0x05, 0x21, 0x75,
0x73, 0xee, 0x02, 0xa2, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
0x63, 0x65, 0x73, 0x20, 0x5f, 0x08, 0x40, 0x70, 0x6c, 0x61,
0x74, 0xf6, 0x0c, 0x03, 0x7a, 0x03, 0x50, 0x73, 0x75, 0x70,
0x70, 0x6f, 0x2d, 0x02, 0x12, 0x73, 0x7d, 0x0c, 0x04, 0x2e,
0x00, 0x12, 0x2c, 0xe6, 0x05, 0x16, 0x50, 0x12, 0x00, 0x0d,
0x02, 0x06, 0x33, 0x47, 0x61, 0x6d, 0x02, 0x06, 0x02, 0xb3,
0x01, 0x33, 0x6c, 0x65, 0x74, 0x84, 0x02, 0x40, 0x6e, 0x66,
0x69, 0x67, 0x12, 0x01, 0x10, 0x77, 0x51, 0x03, 0x01, 0xd1,
0x0b, 0x0c, 0x88, 0x0b, 0x01, 0xce, 0x07, 0x30, 0x72, 0x72,
0x6f, 0xf1, 0x02, 0xa2, 0x42, 0x79, 0x00, 0x64, 0x65, 0x66,
0x61, 0x75, 0x6c, 0x74, 0xc7, 0x04, 0x11, 0x27, 0xca, 0x06,
0x48, 0x77, 0x61, 0x79, 0x73, 0x32, 0x00, 0x33, 0x3b, 0x00,
0x62, 0x41, 0x03, 0x02, 0x3d, 0x03, 0x23, 0x69, 0x73, 0x90,
0x00, 0x06, 0x21, 0x09, 0x32, 0x61, 0x73, 0x6b, 0x19, 0x01,
0x01, 0x74, 0x00, 0x01, 0x0a, 0x06, 0x0a, 0x75, 0x00, 0x01,
0x29, 0x02, 0x28, 0x69, 0x66, 0x48, 0x08, 0x00, 0x0b, 0x01,
0x00, 0x51, 0x00, 0x00, 0x5e, 0x03, 0x04, 0xa4, 0x04, 0x01,
0x3e, 0x00, 0x14, 0x69, 0x2b, 0x0a, 0x03, 0xae, 0x04, 0x01,
0x75, 0x0e, 0x16, 0x73, 0x20, 0x00, 0x08, 0xcf, 0x08, 0x01,
0x9e, 0x07, 0x00, 0x07, 0x00, 0x00, 0xb5, 0x0c, 0x72, 0x73,
0x70, 0x6f, 0x69, 0x6c, 0x65, 0x72, 0x8a, 0x00, 0x05, 0x53,
0x07, 0x43, 0x64, 0x65, 0x64, 0x75, 0x7c, 0x02, 0x55, 0x61,
0x62, 0x6f, 0x75, 0x74, 0xb6, 0x0d, 0x00, 0xbd, 0x00, 0x00,
0xc6, 0x02, 0x00, 0x09, 0x09, 0x22, 0x65, 0x76, 0x30, 0x01,
0x00, 0x14, 0x08, 0x80, 0x61, 0x74, 0x00, 0x79, 0x65, 0x74,
0x2e, 0x00,
};
const unsigned short help_text_len = 3439;
const unsigned short help_text_words = 611;
const unsigned short help_text_len = 3919;
const unsigned short help_text_words = 689;
const char quick_help_text[] = "Rotate each tile to reassemble the network.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -9,52 +9,53 @@ struct style_text help_text_style[] = {
LAST_STYLE_ITEM
};
/* orig 526 comp 419 ratio 0.796578 level 3 saved 107 */
/* orig 546 comp 425 ratio 0.778388 level 3 saved 121 */
const char help_text[] = {
0xf2, 0x3c, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x39, 0x3a, 0x20, 0x4e, 0x65, 0x74, 0x73, 0x6c, 0x69, 0x64,
0x65, 0x20, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69, 0x73, 0x00,
0x67, 0x61, 0x6d, 0x65, 0x00, 0x63, 0x6f, 0x6d, 0x62, 0x69,
0x6e, 0x65, 0x73, 0x00, 0x74, 0x68, 0x65, 0x00, 0x67, 0x72,
0x69, 0x64, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x00, 0x6f, 0x66, 0x00, 0x4e, 0x65, 0x74,
0x00, 0x28, 0x73, 0x65, 0x65, 0x00, 0x63, 0x4a, 0x00, 0x81,
0x00, 0x33, 0x29, 0x00, 0x77, 0x69, 0x74, 0x68, 0x30, 0x00,
0x80, 0x6d, 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x29,
0x00, 0x7a, 0x53, 0x69, 0x78, 0x74, 0x65, 0x65, 0x6e, 0x2d,
0x00, 0xe1, 0x36, 0x29, 0x3a, 0x00, 0x79, 0x6f, 0x75, 0x00,
0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x4d, 0x00, 0x00, 0x64,
0x00, 0xd0, 0x2c, 0x00, 0x62, 0x75, 0x74, 0x00, 0x69, 0x6e,
0x73, 0x74, 0x65, 0x61, 0x64, 0x3d, 0x00, 0xf6, 0x0f, 0x72,
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x00, 0x74, 0x69,
0x6c, 0x65, 0x73, 0x00, 0x62, 0x61, 0x63, 0x6b, 0x00, 0x69,
0x6e, 0x74, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x43,
0x00, 0x31, 0x74, 0x6f, 0x00, 0xc4, 0x00, 0x00, 0x7e, 0x00,
0x18, 0x6d, 0x22, 0x00, 0x20, 0x62, 0x79, 0x8d, 0x00, 0x00,
0x42, 0x00, 0xf4, 0x0f, 0x61, 0x00, 0x77, 0x68, 0x6f, 0x6c,
0x65, 0x00, 0x72, 0x6f, 0x77, 0x00, 0x61, 0x74, 0x00, 0x61,
0x00, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x00, 0x00, 0x00, 0x41,
0x73, 0x00, 0x69, 0x6e, 0xa7, 0x00, 0xc8, 0x2c, 0x00, 0x63,
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x00, 0x69, 0x73, 0xd0,
0x00, 0xf1, 0x0c, 0x75, 0x73, 0x65, 0x00, 0x6f, 0x72, 0x00,
0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79,
0x73, 0x2e, 0x00, 0x53, 0x65, 0x65, 0x00, 0x73, 0x65, 0x63,
0x12, 0x01, 0x41, 0x36, 0x2e, 0x31, 0x2e, 0x40, 0x01, 0xb2,
0x65, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0x65, 0x49, 0x01, 0xa2, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
0x74, 0x65, 0x72, 0x73, 0xab, 0x00, 0xf0, 0x01, 0x73, 0x69,
0x6d, 0x69, 0x6c, 0x61, 0x72, 0x00, 0x6d, 0x65, 0x61, 0x6e,
0x69, 0x6e, 0x67, 0x73, 0xbc, 0x00, 0x50, 0x74, 0x68, 0x6f,
0x73, 0x65, 0x86, 0x00, 0x05, 0x56, 0x01, 0x04, 0x58, 0x00,
0x8a, 0x33, 0x2e, 0x32, 0x29, 0x00, 0x61, 0x6e, 0x64, 0x47,
0x01, 0x06, 0x76, 0x00, 0x20, 0x32, 0x29, 0x77, 0x00, 0x04,
0xc3, 0x01, 0x42, 0x00, 0x77, 0x61, 0x73, 0xc1, 0x00, 0x62,
0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x5c, 0x00, 0x10, 0x69,
0x14, 0x00, 0x23, 0x6c, 0x6c, 0x34, 0x00, 0xf0, 0x05, 0x62,
0x79, 0x00, 0x52, 0x69, 0x63, 0x68, 0x61, 0x72, 0x64, 0x00,
0x42, 0x6f, 0x75, 0x6c, 0x74, 0x6f, 0x6e, 0x2e, 0x00,
0x65, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf2, 0x28, 0x00, 0x00,
0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d, 0x65,
0x00, 0x63, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x73, 0x00,
0x74, 0x68, 0x65, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00,
0x6f, 0x66, 0x00, 0x4e, 0x65, 0x74, 0x00, 0x28, 0x73, 0x65,
0x65, 0x00, 0x63, 0x5e, 0x00, 0x81, 0x00, 0x33, 0x29, 0x00,
0x77, 0x69, 0x74, 0x68, 0x30, 0x00, 0x80, 0x6d, 0x6f, 0x76,
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x29, 0x00, 0x7a, 0x53, 0x69,
0x78, 0x74, 0x65, 0x65, 0x6e, 0x2d, 0x00, 0xe1, 0x36, 0x29,
0x3a, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65,
0x00, 0x61, 0x4d, 0x00, 0x00, 0x64, 0x00, 0xd0, 0x2c, 0x00,
0x62, 0x75, 0x74, 0x00, 0x69, 0x6e, 0x73, 0x74, 0x65, 0x61,
0x64, 0x3d, 0x00, 0xf6, 0x0f, 0x72, 0x6f, 0x74, 0x61, 0x74,
0x69, 0x6e, 0x67, 0x00, 0x74, 0x69, 0x6c, 0x65, 0x73, 0x00,
0x62, 0x61, 0x63, 0x6b, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00,
0x70, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x00, 0x31, 0x74, 0x6f,
0x00, 0xd8, 0x00, 0x00, 0x7e, 0x00, 0x18, 0x6d, 0x22, 0x00,
0x20, 0x62, 0x79, 0x8d, 0x00, 0x00, 0x42, 0x00, 0xf4, 0x0f,
0x61, 0x00, 0x77, 0x68, 0x6f, 0x6c, 0x65, 0x00, 0x72, 0x6f,
0x77, 0x00, 0x61, 0x74, 0x00, 0x61, 0x00, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x00, 0x00, 0x00, 0x41, 0x73, 0x00, 0x69, 0x6e,
0xa7, 0x00, 0xc8, 0x2c, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x72,
0x6f, 0x6c, 0x00, 0x69, 0x73, 0xd0, 0x00, 0xf1, 0x0c, 0x75,
0x73, 0x65, 0x00, 0x6f, 0x72, 0x00, 0x63, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x00, 0x53,
0x65, 0x65, 0x00, 0x73, 0x65, 0x63, 0x12, 0x01, 0x41, 0x36,
0x2e, 0x31, 0x2e, 0x40, 0x01, 0xb2, 0x65, 0x00, 0x61, 0x76,
0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x01, 0xa2,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
0xab, 0x00, 0xf0, 0x01, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61,
0x72, 0x00, 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, 0x73,
0xbc, 0x00, 0x50, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x86, 0x00,
0x05, 0x56, 0x01, 0x04, 0x58, 0x00, 0x8a, 0x33, 0x2e, 0x32,
0x29, 0x00, 0x61, 0x6e, 0x64, 0x47, 0x01, 0x06, 0x76, 0x00,
0x20, 0x32, 0x29, 0x77, 0x00, 0x04, 0xd7, 0x01, 0x42, 0x00,
0x77, 0x61, 0x73, 0xc1, 0x00, 0x62, 0x69, 0x62, 0x75, 0x74,
0x65, 0x64, 0x5c, 0x00, 0x10, 0x69, 0x14, 0x00, 0x23, 0x6c,
0x6c, 0x34, 0x00, 0xf0, 0x05, 0x62, 0x79, 0x00, 0x52, 0x69,
0x63, 0x68, 0x61, 0x72, 0x64, 0x00, 0x42, 0x6f, 0x75, 0x6c,
0x74, 0x6f, 0x6e, 0x2e, 0x00,
};
const unsigned short help_text_len = 526;
const unsigned short help_text_words = 98;
const unsigned short help_text_len = 546;
const unsigned short help_text_words = 99;
const char quick_help_text[] = "Slide a row at a time to reassemble the network.";

View file

@ -0,0 +1 @@
const char quick_help_text[] = "";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,89 +6,90 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 87, TEXT_CENTER | C_RED },
{ 149, TEXT_CENTER | C_RED },
{ 166, TEXT_UNDERLINE },
{ 88, TEXT_CENTER | C_RED },
{ 150, TEXT_CENTER | C_RED },
{ 167, TEXT_UNDERLINE },
{ 177, TEXT_UNDERLINE },
{ 168, TEXT_UNDERLINE },
{ 178, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 1113 comp 892 ratio 0.801438 level 3 saved 221 */
/* orig 1135 comp 902 ratio 0.794714 level 3 saved 233 */
const char help_text[] = {
0xf0, 0x2d, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x08, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x34, 0x31, 0x3a, 0x20, 0x50, 0x61, 0x6c, 0x69, 0x73, 0x61,
0x64, 0x65, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x27,
0x72, 0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61,
0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73,
0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x6f,
0x6d, 0x65, 0x11, 0x00, 0xf0, 0x07, 0x77, 0x68, 0x69, 0x63,
0x68, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x3f, 0x00,
0xf2, 0x0b, 0x72, 0x00, 0x67, 0x6f, 0x61, 0x6c, 0x00, 0x69,
0x73, 0x00, 0x74, 0x6f, 0x00, 0x73, 0x75, 0x62, 0x64, 0x69,
0x76, 0x69, 0x64, 0x65, 0x00, 0x74, 0x68, 0x65, 0x4e, 0x00,
0x41, 0x69, 0x6e, 0x74, 0x6f, 0x39, 0x00, 0xf0, 0x04, 0x69,
0x67, 0x75, 0x6f, 0x75, 0x73, 0x00, 0x72, 0x65, 0x67, 0x69,
0x6f, 0x6e, 0x73, 0x2c, 0x00, 0x61, 0x6c, 0x6c, 0x5a, 0x00,
0x00, 0x29, 0x00, 0x61, 0x73, 0x61, 0x6d, 0x65, 0x00, 0x28,
0x85, 0x00, 0xf3, 0x07, 0x29, 0x00, 0x73, 0x69, 0x7a, 0x65,
0x2c, 0x00, 0x73, 0x75, 0x63, 0x68, 0x00, 0x74, 0x68, 0x61,
0x74, 0x00, 0x65, 0x61, 0x63, 0x68, 0x91, 0x00, 0x04, 0x81,
0x00, 0x53, 0x69, 0x6e, 0x67, 0x00, 0x61, 0x86, 0x00, 0x00,
0x7a, 0x00, 0x80, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e,
0x74, 0x83, 0x00, 0x72, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c,
0x79, 0x3c, 0x00, 0xf0, 0x03, 0x6d, 0x61, 0x6e, 0x79, 0x00,
0x65, 0x64, 0x67, 0x65, 0x73, 0x00, 0x28, 0x69, 0x6e, 0x63,
0x6c, 0x75, 0x64, 0x3b, 0x00, 0xd1, 0x74, 0x68, 0x6f, 0x73,
0x65, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x81,
0x00, 0x30, 0x69, 0x6e, 0x73, 0xb5, 0x00, 0x31, 0x61, 0x6e,
0x64, 0x0f, 0x00, 0x31, 0x6f, 0x75, 0x74, 0x10, 0x00, 0x25,
0x6f, 0x66, 0xc8, 0x00, 0xf1, 0x10, 0x29, 0x2e, 0x00, 0x00,
0x00, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x00, 0x66, 0x6f,
0x72, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a,
0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0xfe, 0x00, 0xd0,
0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x2c, 0x00, 0x77, 0x68,
0x6f, 0x00, 0x63, 0xdf, 0x00, 0xf0, 0x06, 0x69, 0x74, 0x00,
0x60, 0x46, 0x69, 0x76, 0x65, 0x00, 0x43, 0x65, 0x6c, 0x6c,
0x73, 0x27, 0x2e, 0x00, 0x5b, 0x32, 0x32, 0x5d, 0x49, 0x00,
0x04, 0x83, 0x01, 0x41, 0x00, 0x77, 0x61, 0x73, 0xd5, 0x00,
0x70, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x46, 0x00,
0x01, 0x5a, 0x00, 0xf0, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x62, 0x79, 0x00, 0x4a,
0x6f, 0x6e, 0x61, 0x73, 0x00, 0x4b, 0x6f, 0x65, 0x6c, 0x6b,
0x65, 0x72, 0x40, 0x00, 0x00, 0x48, 0x00, 0x91, 0x00, 0x68,
0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6e, 0x76, 0x00, 0xa2,
0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f,
0x95, 0x00, 0x80, 0x73, 0x2f, 0x66, 0x69, 0x76, 0x65, 0x5f,
0x63, 0x79, 0x00, 0xc6, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x00,
0x00, 0x00, 0x34, 0x31, 0x2e, 0x31, 0xfe, 0x01, 0x01, 0x77,
0x00, 0x30, 0x6f, 0x6c, 0x73, 0x07, 0x02, 0xa0, 0x4c, 0x65,
0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x82, 0x00,
0x40, 0x70, 0x6c, 0x61, 0x63, 0x0d, 0x01, 0x01, 0x3a, 0x01,
0x64, 0x65, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x00, 0xf0, 0x18,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x27, 0x72, 0x65, 0x00,
0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72,
0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61,
0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d, 0x65, 0x11,
0x00, 0xf0, 0x07, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x63,
0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x73, 0x2e, 0x3f, 0x00, 0xf2, 0x0b, 0x72,
0x00, 0x67, 0x6f, 0x61, 0x6c, 0x00, 0x69, 0x73, 0x00, 0x74,
0x6f, 0x00, 0x73, 0x75, 0x62, 0x64, 0x69, 0x76, 0x69, 0x64,
0x65, 0x00, 0x74, 0x68, 0x65, 0x4e, 0x00, 0x41, 0x69, 0x6e,
0x74, 0x6f, 0x39, 0x00, 0xf0, 0x04, 0x69, 0x67, 0x75, 0x6f,
0x75, 0x73, 0x00, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73,
0x2c, 0x00, 0x61, 0x6c, 0x6c, 0x5a, 0x00, 0x00, 0x29, 0x00,
0x61, 0x73, 0x61, 0x6d, 0x65, 0x00, 0x28, 0x85, 0x00, 0xf3,
0x07, 0x29, 0x00, 0x73, 0x69, 0x7a, 0x65, 0x2c, 0x00, 0x73,
0x75, 0x63, 0x68, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x65,
0x61, 0x63, 0x68, 0x91, 0x00, 0x04, 0x81, 0x00, 0x53, 0x69,
0x6e, 0x67, 0x00, 0x61, 0x86, 0x00, 0x00, 0x7a, 0x00, 0x80,
0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x83, 0x00,
0x72, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x3c, 0x00,
0xf0, 0x03, 0x6d, 0x61, 0x6e, 0x79, 0x00, 0x65, 0x64, 0x67,
0x65, 0x73, 0x00, 0x28, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64,
0x3b, 0x00, 0xd1, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x00, 0x62,
0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x81, 0x00, 0x30, 0x69,
0x6e, 0x73, 0xb5, 0x00, 0x31, 0x61, 0x6e, 0x64, 0x0f, 0x00,
0x31, 0x6f, 0x75, 0x74, 0x10, 0x00, 0x25, 0x6f, 0x66, 0xc8,
0x00, 0xf1, 0x10, 0x29, 0x2e, 0x00, 0x00, 0x00, 0x43, 0x72,
0x65, 0x64, 0x69, 0x74, 0x00, 0x66, 0x6f, 0x72, 0x00, 0x74,
0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65,
0x00, 0x67, 0x6f, 0x65, 0xfe, 0x00, 0xd0, 0x4e, 0x69, 0x6b,
0x6f, 0x6c, 0x69, 0x2c, 0x00, 0x77, 0x68, 0x6f, 0x00, 0x63,
0xdf, 0x00, 0xf0, 0x06, 0x69, 0x74, 0x00, 0x60, 0x46, 0x69,
0x76, 0x65, 0x00, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x27, 0x2e,
0x00, 0x5b, 0x32, 0x32, 0x5d, 0x49, 0x00, 0x04, 0x98, 0x01,
0x41, 0x00, 0x77, 0x61, 0x73, 0xd5, 0x00, 0x70, 0x72, 0x69,
0x62, 0x75, 0x74, 0x65, 0x64, 0x46, 0x00, 0x01, 0x5a, 0x00,
0xf0, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x00, 0x62, 0x79, 0x00, 0x4a, 0x6f, 0x6e, 0x61,
0x73, 0x00, 0x4b, 0x6f, 0x65, 0x6c, 0x6b, 0x65, 0x72, 0x40,
0x00, 0x00, 0x48, 0x00, 0xe1, 0x00, 0x68, 0x74, 0x74, 0x70,
0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x7b,
0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65,
0x6e, 0x2f, 0x9a, 0x00, 0x80, 0x73, 0x2f, 0x66, 0x69, 0x76,
0x65, 0x5f, 0x63, 0x7e, 0x00, 0x86, 0x2f, 0x00, 0x00, 0x00,
0x34, 0x31, 0x2e, 0x31, 0x14, 0x02, 0x01, 0x78, 0x00, 0xf0,
0x02, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x4c, 0x65,
0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x83, 0x00,
0x40, 0x70, 0x6c, 0x61, 0x63, 0x0e, 0x01, 0x01, 0x3b, 0x01,
0x67, 0x2e, 0x00, 0x52, 0x69, 0x67, 0x68, 0x1e, 0x00, 0xc1,
0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x00, 0x60,
0x6e, 0x6f, 0x22, 0x00, 0xf1, 0x02, 0x27, 0x2e, 0x00, 0x41,
0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65,
0x6c, 0x79, 0x2c, 0x35, 0x01, 0xf0, 0x07, 0x61, 0x72, 0x72,
0x6c, 0x79, 0x2c, 0x36, 0x01, 0xf0, 0x07, 0x61, 0x72, 0x72,
0x6f, 0x77, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x00, 0x77, 0x69,
0x6c, 0x6c, 0x00, 0x6d, 0x6f, 0x76, 0x65, 0x00, 0x61, 0x11,
0x00, 0xf1, 0x02, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x00, 0x63,
0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x00, 0x48, 0x6f, 0x6c,
0x95, 0x01, 0x12, 0x43, 0x8f, 0x00, 0x00, 0x6a, 0x02, 0x81,
0x6c, 0x65, 0x00, 0x70, 0x72, 0x65, 0x73, 0x73, 0xe7, 0x01,
0x96, 0x01, 0x12, 0x43, 0x8f, 0x00, 0x00, 0x6b, 0x02, 0x81,
0x6c, 0x65, 0x00, 0x70, 0x72, 0x65, 0x73, 0x73, 0xe8, 0x01,
0x16, 0x6e, 0x4a, 0x00, 0x02, 0x49, 0x00, 0x0b, 0x9e, 0x00,
0x10, 0x50, 0x2a, 0x00, 0x72, 0x00, 0x53, 0x68, 0x69, 0x66,
0x74, 0x2d, 0x2b, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x8c, 0x02,
0x74, 0x2d, 0x2b, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x8d, 0x02,
0x97, 0x77, 0x69, 0x74, 0x63, 0x68, 0x00, 0x6f, 0x66, 0x66,
0xcb, 0x00, 0x51, 0x65, 0x70, 0x65, 0x61, 0x74, 0x55, 0x00,
0x02, 0x5d, 0x01, 0x00, 0xee, 0x00, 0xf0, 0x03, 0x65, 0x72,
0x02, 0x5e, 0x01, 0x00, 0xee, 0x00, 0xf0, 0x03, 0x65, 0x72,
0x66, 0x6f, 0x72, 0x6d, 0x00, 0x69, 0x74, 0x73, 0x00, 0x69,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x65, 0x63, 0x01, 0x42, 0x28,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x65, 0x64, 0x01, 0x42, 0x28,
0x41, 0x6c, 0x6c, 0xc9, 0x00, 0x01, 0x2a, 0x00, 0xa0, 0x73,
0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0xd3,
0x02, 0x23, 0x00, 0x73, 0x9d, 0x01, 0x40, 0x32, 0x2e, 0x31,
0x00, 0x99, 0x02, 0xf2, 0x01, 0x61, 0x6c, 0x73, 0x6f, 0x00,
0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0xd4,
0x02, 0x23, 0x00, 0x73, 0x9e, 0x01, 0x40, 0x32, 0x2e, 0x31,
0x00, 0x9a, 0x02, 0xf2, 0x01, 0x61, 0x6c, 0x73, 0x6f, 0x00,
0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e,
0x29, 0x6e, 0x01, 0x16, 0x32, 0x6e, 0x01, 0x91, 0x70, 0x61,
0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x70, 0x01, 0x66,
@ -99,15 +100,15 @@ const char help_text[] = {
0x6f, 0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0xae, 0x00, 0x90, 0x57, 0x69,
0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0xac, 0x01, 0x61,
0x00, 0x00, 0x00, 0x53, 0x69, 0x7a, 0xbf, 0x02, 0x03, 0x83,
0x03, 0x04, 0xd1, 0x03, 0x00, 0x2b, 0x00, 0x11, 0x52, 0x81,
0x03, 0x10, 0x20, 0x67, 0x03, 0x02, 0x8a, 0x00, 0x01, 0x72,
0x03, 0x04, 0xec, 0x02, 0x03, 0x9f, 0x03, 0x02, 0xb7, 0x03,
0x02, 0xf6, 0x03, 0x05, 0xcb, 0x03, 0x74, 0x6d, 0x75, 0x73,
0x74, 0x00, 0x62, 0x65, 0xe6, 0x03, 0x50, 0x64, 0x65, 0x64,
0x00, 0x00, 0x00, 0x53, 0x69, 0x7a, 0xc0, 0x02, 0x03, 0x84,
0x03, 0x04, 0xd2, 0x03, 0x00, 0x2b, 0x00, 0x11, 0x52, 0x82,
0x03, 0x10, 0x20, 0x68, 0x03, 0x02, 0x8a, 0x00, 0x01, 0x73,
0x03, 0x04, 0xed, 0x02, 0x03, 0xa0, 0x03, 0x02, 0xb8, 0x03,
0x02, 0xf7, 0x03, 0x05, 0xcc, 0x03, 0x74, 0x6d, 0x75, 0x73,
0x74, 0x00, 0x62, 0x65, 0xe7, 0x03, 0x50, 0x64, 0x65, 0x64,
0x2e, 0x00,
};
const unsigned short help_text_len = 1113;
const unsigned short help_text_words = 192;
const unsigned short help_text_len = 1135;
const unsigned short help_text_words = 193;
const char quick_help_text[] = "Divide the grid into equal-sized areas in accordance with the clues.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,92 +6,94 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 137, TEXT_UNDERLINE },
{ 173, TEXT_CENTER | C_RED },
{ 362, TEXT_CENTER | C_RED },
{ 378, TEXT_UNDERLINE },
{ 380, TEXT_UNDERLINE },
{ 142, TEXT_UNDERLINE },
{ 178, TEXT_CENTER | C_RED },
{ 367, TEXT_CENTER | C_RED },
{ 383, TEXT_UNDERLINE },
{ 385, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2125 comp 1459 ratio 0.686588 level 4 saved 666 */
/* orig 2167 comp 1479 ratio 0.68251 level 4 saved 688 */
const char help_text[] = {
0xf0, 0x4f, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x30, 0x3a, 0x20, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72,
0x6e, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68,
0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65,
0x73, 0x2c, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x6d,
0x75, 0x73, 0x74, 0x00, 0x61, 0x6c, 0x6c, 0x00, 0x62, 0x65,
0x00, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x69, 0x6e,
0x00, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x00, 0x62, 0x6c,
0x61, 0x63, 0x6b, 0x00, 0x6f, 0x72, 0x2c, 0x00, 0xf0, 0x04,
0x74, 0x65, 0x2e, 0x00, 0x42, 0x65, 0x73, 0x69, 0x64, 0x65,
0x00, 0x65, 0x61, 0x63, 0x68, 0x00, 0x72, 0x6f, 0x77, 0x4f,
0x00, 0x32, 0x74, 0x68, 0x65, 0x5b, 0x00, 0xa1, 0x61, 0x72,
0x65, 0x00, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x14, 0x00,
0x74, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x23, 0x00,
0x31, 0x72, 0x75, 0x6e, 0x0c, 0x00, 0x02, 0x52, 0x00, 0x03,
0x84, 0x00, 0x80, 0x00, 0x6f, 0x6e, 0x00, 0x74, 0x68, 0x61,
0x74, 0x4c, 0x00, 0x63, 0x3b, 0x00, 0x61, 0x62, 0x6f, 0x76,
0x5c, 0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x53,
0x00, 0x22, 0x13, 0x69, 0x53, 0x00, 0x02, 0x43, 0x00, 0x10,
0x2e, 0x02, 0x01, 0xb1, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00,
0x69, 0x73, 0x00, 0x74, 0x6f, 0xe3, 0x00, 0x02, 0x24, 0x00,
0x73, 0x65, 0x00, 0x65, 0x6e, 0x74, 0x69, 0x72, 0xbe, 0x00,
0x0c, 0xea, 0x00, 0xf1, 0x22, 0x00, 0x00, 0x49, 0x00, 0x66,
0x69, 0x72, 0x73, 0x74, 0x00, 0x73, 0x61, 0x77, 0x00, 0x74,
0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65,
0x00, 0x66, 0x6f, 0x72, 0x6d, 0x00, 0x61, 0x72, 0x6f, 0x75,
0x6e, 0x64, 0x00, 0x31, 0x39, 0x39, 0x35, 0x2c, 0x00, 0x75,
0x6e, 0x64, 0x65, 0x72, 0x52, 0x00, 0xf0, 0x0f, 0x6e, 0x61,
0x6d, 0x65, 0x00, 0x60, 0x6e, 0x6f, 0x6e, 0x6f, 0x67, 0x72,
0x61, 0x6d, 0x73, 0x27, 0x2e, 0x00, 0x49, 0x27, 0x76, 0x65,
0x00, 0x73, 0x65, 0x65, 0x6e, 0x00, 0x69, 0x74, 0x78, 0x00,
0xf0, 0x05, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x00,
0x70, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x00, 0x73, 0x69, 0x6e,
0x63, 0x65, 0x3b, 0x00, 0x14, 0x6e, 0x47, 0x00, 0x91, 0x64,
0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x00,
0x10, 0x73, 0x8a, 0x00, 0x93, 0x4e, 0x6f, 0x72, 0x6d, 0x61,
0x6c, 0x6c, 0x79, 0x2c, 0x83, 0x00, 0x03, 0x02, 0x01, 0x00,
0xd1, 0x00, 0xc0, 0x79, 0x70, 0x65, 0x00, 0x74, 0x75, 0x72,
0x6e, 0x00, 0x6f, 0x75, 0x74, 0xdf, 0x00, 0x10, 0x62, 0xea,
0x01, 0xf1, 0x03, 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67,
0x66, 0x75, 0x6c, 0x00, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72,
0x65, 0xf8, 0x01, 0xa0, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x69,
0x6e, 0x67, 0x00, 0x6f, 0x74, 0x00, 0x31, 0x79, 0x6f, 0x75,
0x9b, 0x00, 0x32, 0x6f, 0x6c, 0x76, 0x5f, 0x01, 0xb5, 0x6d,
0x2e, 0x00, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c,
0x97, 0x00, 0xf1, 0x05, 0x69, 0x73, 0x00, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x74, 0x65, 0x73, 0xe9, 0x00, 0x04, 0x89, 0x00, 0x92,
0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0xa0,
0x00, 0x60, 0x74, 0x68, 0x65, 0x79, 0x00, 0x77, 0x63, 0x01,
0x10, 0x6a, 0x57, 0x02, 0xf7, 0x0b, 0x6c, 0x6f, 0x6f, 0x6b,
0x00, 0x6c, 0x69, 0x6b, 0x65, 0x00, 0x72, 0x61, 0x6e, 0x64,
0x6f, 0x6d, 0x00, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e,
0x67, 0x73, 0x89, 0x02, 0xf3, 0x06, 0x2e, 0x00, 0x28, 0x4f,
0x6e, 0x65, 0x00, 0x75, 0x73, 0x65, 0x72, 0x00, 0x68, 0x61,
0x73, 0x00, 0x73, 0x75, 0x67, 0x67, 0x65, 0xf4, 0x01, 0x22,
0x61, 0x74, 0x85, 0x00, 0x70, 0x69, 0x73, 0x00, 0x61, 0x63,
0x74, 0x75, 0x65, 0x00, 0x00, 0xca, 0x02, 0x41, 0x6f, 0x6f,
0x64, 0x00, 0xcb, 0x00, 0x04, 0xaa, 0x00, 0xb0, 0x69, 0x74,
0x00, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0xd9,
0x00, 0x30, 0x00, 0x66, 0x72, 0x6d, 0x00, 0x40, 0x75, 0x65,
0x73, 0x73, 0xf0, 0x00, 0x00, 0xb1, 0x00, 0x30, 0x63, 0x6f,
0x6c, 0x09, 0x02, 0x06, 0x77, 0x00, 0x62, 0x00, 0x62, 0x61,
0x73, 0x65, 0x64, 0x82, 0x02, 0x14, 0x65, 0x28, 0x01, 0x50,
0x2c, 0x00, 0x61, 0x6e, 0x64, 0xe2, 0x01, 0x22, 0x63, 0x65,
0x49, 0x00, 0x20, 0x74, 0x6f, 0x99, 0x00, 0xf0, 0x0f, 0x00,
0x6c, 0x6f, 0x67, 0x69, 0x63, 0x00, 0x69, 0x6e, 0x73, 0x74,
0x65, 0x61, 0x64, 0x2e, 0x29, 0x00, 0x54, 0x68, 0x65, 0x00,
0x61, 0x64, 0x76, 0x61, 0x6e, 0x74, 0x61, 0x67, 0x65, 0xf7,
0x00, 0x51, 0x6f, 0x75, 0x67, 0x68, 0x2c, 0x63, 0x02, 0x00,
0xb4, 0x00, 0x00, 0x3a, 0x00, 0x10, 0x6e, 0x4a, 0x01, 0x00,
0xa4, 0x02, 0x01, 0x9b, 0x01, 0x23, 0x6f, 0x66, 0x63, 0x01,
0x65, 0x00, 0x00, 0x31, 0x30, 0x2e, 0x31, 0xa3, 0x03, 0x80,
0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0xac, 0x03,
0x10, 0x54, 0xea, 0x00, 0x10, 0x67, 0x42, 0x02, 0x11, 0x69,
0x6e, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf0, 0x3b, 0x00, 0x00,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00,
0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x77,
0x68, 0x69, 0x63, 0x68, 0x00, 0x6d, 0x75, 0x73, 0x74, 0x00,
0x61, 0x6c, 0x6c, 0x00, 0x62, 0x65, 0x00, 0x66, 0x69, 0x6c,
0x6c, 0x65, 0x64, 0x00, 0x69, 0x6e, 0x00, 0x65, 0x69, 0x74,
0x68, 0x65, 0x72, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x00,
0x6f, 0x72, 0x2c, 0x00, 0xf0, 0x04, 0x74, 0x65, 0x2e, 0x00,
0x42, 0x65, 0x73, 0x69, 0x64, 0x65, 0x00, 0x65, 0x61, 0x63,
0x68, 0x00, 0x72, 0x6f, 0x77, 0x4f, 0x00, 0x32, 0x74, 0x68,
0x65, 0x5b, 0x00, 0xb0, 0x61, 0x72, 0x65, 0x00, 0x6c, 0x69,
0x73, 0x74, 0x65, 0x64, 0x2c, 0x42, 0x00, 0x61, 0x6f, 0x72,
0x64, 0x65, 0x72, 0x2c, 0x1f, 0x00, 0x74, 0x6c, 0x65, 0x6e,
0x67, 0x74, 0x68, 0x73, 0x2e, 0x00, 0x31, 0x72, 0x75, 0x6e,
0x0c, 0x00, 0x02, 0x5d, 0x00, 0x03, 0x8f, 0x00, 0x80, 0x00,
0x6f, 0x6e, 0x00, 0x74, 0x68, 0x61, 0x74, 0x57, 0x00, 0x63,
0x3b, 0x00, 0x61, 0x62, 0x6f, 0x76, 0x67, 0x00, 0x6f, 0x63,
0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5e, 0x00, 0x2d, 0x13, 0x69,
0x5e, 0x00, 0x02, 0x4e, 0x00, 0x10, 0x2e, 0x18, 0x01, 0xb1,
0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00, 0x74,
0x6f, 0xf9, 0x00, 0x02, 0x24, 0x00, 0x73, 0x65, 0x00, 0x65,
0x6e, 0x74, 0x69, 0x72, 0xd4, 0x00, 0x0c, 0x00, 0x01, 0xf1,
0x22, 0x00, 0x00, 0x49, 0x00, 0x66, 0x69, 0x72, 0x73, 0x74,
0x00, 0x73, 0x61, 0x77, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00,
0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x66, 0x6f, 0x72,
0x6d, 0x00, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x00, 0x31,
0x39, 0x39, 0x35, 0x2c, 0x00, 0x75, 0x6e, 0x64, 0x65, 0x72,
0x52, 0x00, 0xf0, 0x0f, 0x6e, 0x61, 0x6d, 0x65, 0x00, 0x60,
0x6e, 0x6f, 0x6e, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x73, 0x27,
0x2e, 0x00, 0x49, 0x27, 0x76, 0x65, 0x00, 0x73, 0x65, 0x65,
0x6e, 0x00, 0x69, 0x74, 0x78, 0x00, 0xf0, 0x05, 0x76, 0x61,
0x72, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x70, 0x6c, 0x61, 0x63,
0x65, 0x73, 0x00, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x3b, 0x00,
0x14, 0x6e, 0x47, 0x00, 0x91, 0x64, 0x69, 0x66, 0x66, 0x65,
0x72, 0x65, 0x6e, 0x74, 0x4d, 0x00, 0x10, 0x73, 0x8a, 0x00,
0x93, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x6c, 0x79, 0x2c,
0x83, 0x00, 0x03, 0x02, 0x01, 0x00, 0xd1, 0x00, 0xc0, 0x79,
0x70, 0x65, 0x00, 0x74, 0x75, 0x72, 0x6e, 0x00, 0x6f, 0x75,
0x74, 0xdf, 0x00, 0x10, 0x62, 0x00, 0x02, 0xf1, 0x03, 0x6d,
0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, 0x66, 0x75, 0x6c, 0x00,
0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x0e, 0x02, 0xa0,
0x6f, 0x6d, 0x65, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x00, 0x6f,
0x74, 0x00, 0x31, 0x79, 0x6f, 0x75, 0x9b, 0x00, 0x50, 0x6f,
0x6c, 0x76, 0x65, 0x64, 0x82, 0x00, 0x80, 0x6d, 0x2e, 0x00,
0x48, 0x6f, 0x77, 0x65, 0x76, 0x6e, 0x01, 0x04, 0x97, 0x00,
0xf1, 0x05, 0x69, 0x73, 0x00, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
0x65, 0x73, 0xe9, 0x00, 0x04, 0x89, 0x00, 0x92, 0x61, 0x75,
0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0xa0, 0x00, 0x60,
0x74, 0x68, 0x65, 0x79, 0x00, 0x77, 0x63, 0x01, 0x10, 0x6a,
0x6d, 0x02, 0xf7, 0x0b, 0x6c, 0x6f, 0x6f, 0x6b, 0x00, 0x6c,
0x69, 0x6b, 0x65, 0x00, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d,
0x00, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x73,
0x9f, 0x02, 0xf0, 0x06, 0x2e, 0x00, 0x28, 0x4f, 0x6e, 0x65,
0x00, 0x75, 0x73, 0x65, 0x72, 0x00, 0x68, 0x61, 0x73, 0x00,
0x73, 0x75, 0x67, 0x67, 0x65, 0xff, 0x01, 0x02, 0xc8, 0x01,
0x01, 0x85, 0x00, 0x70, 0x69, 0x73, 0x00, 0x61, 0x63, 0x74,
0x75, 0x65, 0x00, 0x00, 0xe0, 0x02, 0x41, 0x6f, 0x6f, 0x64,
0x00, 0xcb, 0x00, 0x04, 0xaa, 0x00, 0xb0, 0x69, 0x74, 0x00,
0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0xd9, 0x00,
0x30, 0x00, 0x66, 0x72, 0x6d, 0x00, 0x40, 0x75, 0x65, 0x73,
0x73, 0xf0, 0x00, 0x00, 0xb1, 0x00, 0x30, 0x63, 0x6f, 0x6c,
0x09, 0x02, 0x06, 0x77, 0x00, 0x62, 0x00, 0x62, 0x61, 0x73,
0x65, 0x64, 0x8d, 0x02, 0x14, 0x65, 0x28, 0x01, 0x50, 0x2c,
0x00, 0x61, 0x6e, 0x64, 0xe2, 0x01, 0x22, 0x63, 0x65, 0x49,
0x00, 0x20, 0x74, 0x6f, 0x99, 0x00, 0xf0, 0x0f, 0x00, 0x6c,
0x6f, 0x67, 0x69, 0x63, 0x00, 0x69, 0x6e, 0x73, 0x74, 0x65,
0x61, 0x64, 0x2e, 0x29, 0x00, 0x54, 0x68, 0x65, 0x00, 0x61,
0x64, 0x76, 0x61, 0x6e, 0x74, 0x61, 0x67, 0x65, 0xf7, 0x00,
0x51, 0x6f, 0x75, 0x67, 0x68, 0x2c, 0x63, 0x02, 0x00, 0xb4,
0x00, 0x00, 0x3a, 0x00, 0x10, 0x6e, 0x4a, 0x01, 0x00, 0xa4,
0x02, 0x01, 0x9b, 0x01, 0x23, 0x6f, 0x66, 0x63, 0x01, 0x65,
0x00, 0x00, 0x31, 0x30, 0x2e, 0x31, 0xcd, 0x03, 0xd0, 0x63,
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00,
0x00, 0x54, 0xea, 0x00, 0x10, 0x67, 0x42, 0x02, 0x11, 0x69,
0x20, 0x02, 0x81, 0x79, 0x65, 0x64, 0x00, 0x77, 0x69, 0x74,
0x68, 0xa1, 0x00, 0x41, 0x6d, 0x6f, 0x75, 0x73, 0x97, 0x02,
0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63,
@ -111,7 +113,7 @@ const char help_text[] = {
0x74, 0x00, 0x67, 0x72, 0x65, 0x79, 0x00, 0x28, 0xb2, 0x02,
0x20, 0x00, 0x60, 0x04, 0x03, 0xe3, 0x63, 0x69, 0x64, 0x65,
0x64, 0x27, 0x29, 0x00, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x2e,
0xc5, 0x04, 0x00, 0x91, 0x00, 0x02, 0xca, 0x00, 0x00, 0xa2,
0xdb, 0x04, 0x00, 0x91, 0x00, 0x02, 0xca, 0x00, 0x00, 0xa2,
0x01, 0x46, 0x64, 0x72, 0x61, 0x67, 0x1c, 0x01, 0x40, 0x6c,
0x65, 0x66, 0x74, 0xa0, 0x00, 0x10, 0x72, 0xf0, 0x00, 0x02,
0x2a, 0x01, 0x03, 0x84, 0x00, 0x07, 0x83, 0x00, 0x10, 0x61,
@ -126,8 +128,8 @@ const char help_text[] = {
0x6f, 0x01, 0x05, 0xa8, 0x00, 0xe9, 0x77, 0x68, 0x6f, 0x6c,
0x65, 0x00, 0x72, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67, 0x6c,
0x9c, 0x00, 0x00, 0x2e, 0x01, 0x08, 0x12, 0x01, 0x60, 0x61,
0x6c, 0x73, 0x6f, 0x00, 0x6d, 0x37, 0x05, 0x03, 0x91, 0x04,
0x05, 0x8e, 0x05, 0x05, 0x39, 0x02, 0xf7, 0x00, 0x63, 0x75,
0x6c, 0x73, 0x6f, 0x00, 0x6d, 0x42, 0x05, 0x03, 0x91, 0x04,
0x05, 0xa4, 0x05, 0x05, 0x39, 0x02, 0xf7, 0x00, 0x63, 0x75,
0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x2e,
0x00, 0x50, 0x72, 0x13, 0x03, 0x21, 0x72, 0x65, 0x3a, 0x04,
0x14, 0x6b, 0xb3, 0x03, 0x54, 0x63, 0x79, 0x63, 0x6c, 0x65,
@ -148,8 +150,8 @@ const char help_text[] = {
0x6f, 0x74, 0x68, 0x3b, 0x00, 0x15, 0x6d, 0x87, 0x01, 0x21,
0x28, 0x41, 0x20, 0x01, 0x10, 0x65, 0x9d, 0x04, 0xc2, 0x69,
0x6f, 0x6e, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x44, 0x07, 0x21, 0x73, 0x65, 0x16, 0x00, 0x41, 0x00,
0x32, 0x2e, 0x31, 0xca, 0x06, 0x01, 0xad, 0x01, 0xb2, 0x61,
0x62, 0x5a, 0x07, 0x21, 0x73, 0x65, 0x16, 0x00, 0x41, 0x00,
0x32, 0x2e, 0x31, 0xd5, 0x06, 0x01, 0xad, 0x01, 0xb2, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29,
0x0c, 0x04, 0x15, 0x32, 0x0c, 0x04, 0x93, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x0e, 0x04, 0x92, 0x65,
@ -159,11 +161,11 @@ const char help_text[] = {
0x27, 0x27, 0x00, 0x04, 0xd0, 0x04, 0xb1, 0x60, 0x54, 0x79,
0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x7c, 0x00,
0x31, 0x57, 0x69, 0x64, 0x9d, 0x03, 0x40, 0x64, 0x00, 0x48,
0x65, 0x26, 0x03, 0x04, 0xfe, 0x07, 0x00, 0x1c, 0x00, 0xf0,
0x65, 0x26, 0x03, 0x04, 0x14, 0x08, 0x00, 0x1c, 0x00, 0xf0,
0x03, 0x73, 0x65, 0x6c, 0x66, 0x2d, 0x65, 0x78, 0x70, 0x6c,
0x61, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x00,
};
const unsigned short help_text_len = 2125;
const unsigned short help_text_words = 384;
const unsigned short help_text_len = 2167;
const unsigned short help_text_words = 389;
const char quick_help_text[] = "Fill in the pattern in the grid, given only the lengths of runs of black squares.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,180 +6,247 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 138, TEXT_UNDERLINE },
{ 164, TEXT_UNDERLINE },
{ 185, TEXT_UNDERLINE },
{ 223, TEXT_CENTER | C_RED },
{ 369, TEXT_UNDERLINE },
{ 460, TEXT_CENTER | C_RED },
{ 139, TEXT_UNDERLINE },
{ 165, TEXT_UNDERLINE },
{ 186, TEXT_UNDERLINE },
{ 221, TEXT_CENTER | C_RED },
{ 367, TEXT_UNDERLINE },
{ 458, TEXT_CENTER | C_RED },
{ 475, TEXT_UNDERLINE },
{ 476, TEXT_UNDERLINE },
{ 486, TEXT_UNDERLINE },
{ 498, TEXT_UNDERLINE },
{ 586, TEXT_CENTER | C_RED },
{ 652, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2570 comp 1610 ratio 0.626459 level 10 saved 960 */
/* orig 3598 comp 2217 ratio 0.616176 level 10 saved 1381 */
const char help_text[] = {
0xf0, 0x21, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x36, 0x3a, 0x20, 0x50, 0x65, 0x61, 0x72, 0x6c, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2e,
0x1c, 0x00, 0xf0, 0x1b, 0x72, 0x00, 0x6a, 0x6f, 0x62, 0x00,
0x69, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x64, 0x72, 0x61, 0x77,
0x00, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x00, 0x62, 0x65, 0x74,
0x77, 0x65, 0x65, 0x6e, 0x00, 0x74, 0x68, 0x65, 0x00, 0x63,
0x65, 0x6e, 0x74, 0x72, 0x65, 0x73, 0x3a, 0x00, 0xf1, 0x07,
0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c,
0x6c, 0x79, 0x00, 0x6f, 0x72, 0x00, 0x76, 0x65, 0x72, 0x74,
0x69, 0x63, 0x0e, 0x00, 0x40, 0x61, 0x64, 0x6a, 0x61, 0x2a,
0x00, 0x04, 0x5e, 0x00, 0x91, 0x2c, 0x00, 0x73, 0x6f, 0x00,
0x74, 0x68, 0x61, 0x74, 0x44, 0x00, 0x02, 0x56, 0x00, 0xf2,
0x0d, 0x66, 0x6f, 0x72, 0x6d, 0x00, 0x61, 0x00, 0x73, 0x69,
0x6e, 0x67, 0x6c, 0x65, 0x00, 0x63, 0x6c, 0x6f, 0x73, 0x65,
0x64, 0x00, 0x6c, 0x6f, 0x6f, 0x70, 0x2e, 0x00, 0x49, 0x6c,
0x00, 0x91, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e,
0x67, 0xad, 0x00, 0x00, 0x44, 0x00, 0x20, 0x6d, 0x65, 0x79,
0x00, 0x00, 0x1c, 0x00, 0x03, 0x59, 0x00, 0x07, 0x55, 0x00,
0x81, 0x6f, 0x6f, 0x70, 0x00, 0x70, 0x61, 0x73, 0x73, 0x15,
0x00, 0xc0, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x00, 0x77, 0x69,
0x6c, 0x6c, 0x00, 0x63, 0xa3, 0x00, 0xf2, 0x00, 0x69, 0x6e,
0x00, 0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0x73, 0x2c, 0x00,
0x61, 0x6e, 0x64, 0x4b, 0x00, 0x01, 0x1f, 0x00, 0xb7, 0x62,
0x65, 0x00, 0x73, 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74,
0xd2, 0x00, 0x08, 0xd0, 0x00, 0x02, 0xb0, 0x00, 0x44, 0x2e,
0x00, 0x28, 0x41, 0x39, 0x00, 0x04, 0x7d, 0x00, 0x30, 0x63,
0x61, 0x6e, 0x40, 0x00, 0xf6, 0x03, 0x63, 0x6f, 0x6d, 0x70,
0x6c, 0x65, 0x74, 0x65, 0x6c, 0x79, 0x00, 0x65, 0x6d, 0x70,
0x74, 0x79, 0x00, 0x2d, 0x92, 0x00, 0x72, 0x64, 0x6f, 0x65,
0x73, 0x6e, 0x27, 0x74, 0x76, 0x01, 0x21, 0x74, 0x6f, 0xa2,
0x00, 0x05, 0xa0, 0x00, 0x53, 0x65, 0x76, 0x65, 0x72, 0x79,
0x4e, 0x00, 0x6e, 0x2e, 0x29, 0x00, 0x00, 0x00, 0x53, 0xe2,
0x00, 0x05, 0xc0, 0x00, 0x51, 0x62, 0x6c, 0x61, 0x63, 0x6b,
0xbd, 0x00, 0xb0, 0x77, 0x68, 0x69, 0x74, 0x65, 0x00, 0x63,
0x69, 0x72, 0x63, 0x6c, 0x5b, 0x01, 0x80, 0x77, 0x68, 0x69,
0x63, 0x68, 0x00, 0x61, 0x72, 0x45, 0x01, 0x1d, 0x75, 0x13,
0x01, 0xf3, 0x02, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x73, 0x61,
0x74, 0x69, 0x73, 0x66, 0x79, 0x2e, 0x00, 0x00, 0x00, 0x41,
0x49, 0x00, 0x02, 0x3f, 0x00, 0x53, 0x00, 0x69, 0x6e, 0x00,
0x61, 0x6b, 0x00, 0x86, 0x00, 0x69, 0x6e, 0x64, 0x69, 0x63,
0x61, 0x74, 0x43, 0x00, 0x14, 0x61, 0xc1, 0x01, 0x00, 0x14,
0x02, 0x13, 0x61, 0x42, 0x01, 0xdc, 0x2c, 0x00, 0x62, 0x75,
0x74, 0x00, 0x6e, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0xad,
0x00, 0x05, 0xf9, 0x01, 0x50, 0x74, 0x6f, 0x00, 0x69, 0x74,
0x5e, 0x00, 0x05, 0x89, 0x00, 0x00, 0x43, 0x00, 0x35, 0x6c,
0x73, 0x6f, 0x48, 0x00, 0x02, 0x8d, 0x00, 0x08, 0xcc, 0x00,
0x0e, 0x81, 0x00, 0x19, 0x65, 0x80, 0x00, 0x05, 0xa8, 0x01,
0x42, 0x65, 0x64, 0x67, 0x65, 0x87, 0x00, 0xcf, 0x61, 0x74,
0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x6f, 0x6e, 0x65,
0x8c, 0x00, 0x1c, 0x07, 0x87, 0x00, 0xc0, 0x28, 0x49, 0x6e,
0x00, 0x62, 0x6f, 0x74, 0x68, 0x00, 0x63, 0x61, 0x73, 0x52,
0x01, 0x22, 0x74, 0x68, 0x4c, 0x01, 0x50, 0x00, 0x6f, 0x6e,
0x6c, 0x79, 0x81, 0x01, 0x01, 0x7a, 0x00, 0x21, 0x6e, 0x73,
0x19, 0x00, 0x3e, 0x74, 0x77, 0x6f, 0x63, 0x00, 0x70, 0x69,
0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x5d, 0x00, 0x12, 0x2c,
0xbd, 0x00, 0x3f, 0x69, 0x73, 0x2c, 0xa9, 0x02, 0x0f, 0xf0,
0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00, 0x61, 0x66, 0x74, 0x65,
0x72, 0x00, 0x6c, 0x65, 0x61, 0x76, 0xeb, 0x02, 0x05, 0x7c,
0x00, 0x03, 0x17, 0x02, 0x2c, 0x00, 0x54, 0x45, 0x00, 0x23,
0x61, 0x72, 0x99, 0x00, 0x0c, 0x7e, 0x00, 0x01, 0xd3, 0x03,
0x00, 0x1e, 0x00, 0x36, 0x6e, 0x6f, 0x74, 0xb6, 0x00, 0x21,
0x65, 0x64, 0x5b, 0x02, 0x60, 0x43, 0x72, 0x65, 0x64, 0x69,
0x74, 0x76, 0x03, 0xf1, 0x01, 0x00, 0x74, 0x68, 0x69, 0x73,
0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f,
0x65, 0xef, 0x03, 0x60, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69,
0x4d, 0x02, 0x20, 0x6f, 0x00, 0xc4, 0x03, 0x00, 0x32, 0x01,
0xf1, 0x06, 0x60, 0x4d, 0x61, 0x73, 0x79, 0x75, 0x27, 0x2e,
0x00, 0x5b, 0x31, 0x39, 0x5d, 0x00, 0x00, 0x00, 0x54, 0x68,
0x61, 0x6e, 0x6b, 0x2e, 0x00, 0xc1, 0x4a, 0x61, 0x6d, 0x65,
0x73, 0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x53, 0x00,
0x90, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x56, 0x03, 0x21, 0x74, 0x68, 0xc6, 0x00, 0x10, 0x69, 0x16,
0x03, 0x90, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x68, 0x01, 0x01, 0x48, 0x00, 0xc1, 0x68, 0x74, 0x74,
0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x75,
0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65,
0x6e, 0x2f, 0x94, 0x00, 0x30, 0x73, 0x2f, 0x6d, 0x78, 0x00,
0xc1, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x00, 0x28, 0x62, 0x65,
0x77, 0x61, 0x72, 0xdc, 0x01, 0x50, 0x46, 0x6c, 0x61, 0x73,
0x68, 0xcb, 0x00, 0x43, 0x33, 0x36, 0x2e, 0x31, 0xd4, 0x04,
0x00, 0x1d, 0x03, 0x50, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0xe2,
0x00, 0x46, 0x6c, 0x69, 0x63, 0x6b, 0x7f, 0x00, 0x40, 0x6c,
0x65, 0x66, 0x74, 0x24, 0x02, 0x64, 0x74, 0x6f, 0x6e, 0x00,
0x6f, 0x6e, 0xf2, 0x04, 0x00, 0x3b, 0x02, 0x05, 0xdf, 0x04,
0x50, 0x61, 0x00, 0x73, 0x65, 0x67, 0xa2, 0x00, 0x04, 0x3b,
0x02, 0x01, 0x9c, 0x01, 0x04, 0x9e, 0x03, 0x01, 0x6d, 0x01,
0x02, 0x6b, 0x02, 0x20, 0x6f, 0x72, 0x34, 0x00, 0x68, 0x72,
0x65, 0x6d, 0x6f, 0x76, 0x65, 0x36, 0x00, 0x00, 0xf0, 0x00,
0x10, 0x69, 0xec, 0x01, 0x01, 0x50, 0x00, 0x01, 0xe4, 0x00,
0x4f, 0x44, 0x72, 0x61, 0x67, 0x85, 0x00, 0x03, 0x04, 0x58,
0x00, 0x00, 0x40, 0x00, 0x47, 0x72, 0x69, 0x65, 0x73, 0x7e,
0x05, 0x05, 0x92, 0x00, 0x40, 0x6d, 0x6f, 0x72, 0x65, 0x79,
0x00, 0x00, 0xb3, 0x00, 0x1f, 0x65, 0x9e, 0x00, 0x02, 0x12,
0x69, 0x1b, 0x00, 0xf0, 0x05, 0x67, 0x6f, 0x2e, 0x00, 0x41,
0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65,
0x6c, 0x79, 0x2c, 0x00, 0x64, 0x7a, 0x00, 0xc1, 0x6f, 0x76,
0x65, 0x72, 0x00, 0x61, 0x6e, 0x00, 0x65, 0x78, 0x69, 0x73,
0x3b, 0x05, 0x3b, 0x70, 0x61, 0x72, 0xdf, 0x00, 0x41, 0x6f,
0x00, 0x75, 0x6e, 0x6d, 0x00, 0x24, 0x69, 0x74, 0xda, 0x00,
0x03, 0x11, 0x00, 0x04, 0x2c, 0x00, 0x21, 0x69, 0x74, 0x68,
0x04, 0x72, 0x74, 0x68, 0x65, 0x6e, 0x00, 0x67, 0x6f, 0x24,
0x04, 0x60, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x8e, 0x00,
0x54, 0x64, 0x69, 0x72, 0x65, 0x63, 0xd3, 0x01, 0x0b, 0x75,
0x01, 0x11, 0x72, 0xa0, 0x03, 0x0f, 0x76, 0x01, 0x06, 0x40,
0x6d, 0x61, 0x72, 0x6b, 0x5e, 0x00, 0x01, 0x30, 0x00, 0x84,
0x61, 0x00, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x2c, 0xf7, 0x03,
0x02, 0xfe, 0x02, 0x61, 0x61, 0x74, 0x00, 0x79, 0x6f, 0x75,
0xc7, 0x02, 0x4a, 0x73, 0x75, 0x72, 0x65, 0x4a, 0x05, 0x01,
0xda, 0x02, 0x2e, 0x67, 0x6f, 0xa3, 0x01, 0x92, 0x2e, 0x00,
0x28, 0x46, 0x6f, 0x72, 0x00, 0x69, 0x6e, 0x85, 0x02, 0x64,
0x2c, 0x00, 0x69, 0x66, 0x00, 0x79, 0xed, 0x06, 0x73, 0x64,
0x65, 0x63, 0x69, 0x64, 0x65, 0x64, 0x29, 0x05, 0x0f, 0x26,
0x04, 0x08, 0x14, 0x61, 0x8f, 0x04, 0x00, 0x80, 0x03, 0x21,
0x68, 0x61, 0x97, 0x01, 0x2b, 0x62, 0x65, 0xfa, 0x04, 0x20,
0x64, 0x6f, 0xd0, 0x05, 0x83, 0x79, 0x65, 0x74, 0x00, 0x6b,
0x6e, 0x6f, 0x77, 0x55, 0x00, 0x32, 0x77, 0x61, 0x79, 0xba,
0x03, 0x01, 0x29, 0x00, 0x71, 0x00, 0x74, 0x75, 0x72, 0x6e,
0x73, 0x2c, 0x82, 0x00, 0x11, 0x6d, 0x12, 0x01, 0x01, 0xf9,
0x00, 0x00, 0x21, 0x00, 0x00, 0xbc, 0x01, 0x00, 0x2d, 0x00,
0x20, 0x69, 0x74, 0x3e, 0x06, 0x11, 0x27, 0xce, 0x00, 0x08,
0x0e, 0x01, 0x01, 0xac, 0x03, 0x0b, 0xd9, 0x01, 0x32, 0x75,
0x73, 0x65, 0x5d, 0x00, 0x91, 0x75, 0x72, 0x73, 0x6f, 0x72,
0x00, 0x6b, 0x65, 0x79, 0x9a, 0x00, 0x01, 0x8d, 0x02, 0x06,
0x18, 0x00, 0x33, 0x2e, 0x00, 0x55, 0x28, 0x00, 0x41, 0x45,
0x6e, 0x74, 0x65, 0x27, 0x00, 0x02, 0xc0, 0x00, 0x31, 0x67,
0x69, 0x6e, 0xcf, 0x01, 0x30, 0x65, 0x6e, 0x64, 0x15, 0x00,
0x70, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x00, 0x60, 0x2e, 0x02,
0x61, 0x27, 0x00, 0x6f, 0x70, 0x65, 0x72, 0x9f, 0x03, 0x16,
0x73, 0x3f, 0x00, 0x30, 0x53, 0x70, 0x61, 0x42, 0x01, 0x60,
0x45, 0x73, 0x63, 0x61, 0x70, 0x65, 0x21, 0x02, 0x50, 0x42,
0x61, 0x63, 0x6b, 0x73, 0x15, 0x00, 0x05, 0x7b, 0x00, 0x10,
0x63, 0x65, 0x01, 0x11, 0x6c, 0x2e, 0x00, 0x00, 0x48, 0x00,
0xc2, 0x2e, 0x00, 0x4f, 0x72, 0x2c, 0x00, 0x68, 0x6f, 0x6c,
0x64, 0x00, 0x43, 0x91, 0x03, 0x00, 0x17, 0x01, 0x12, 0x6c,
0x1d, 0x00, 0x37, 0x67, 0x69, 0x6e, 0x11, 0x03, 0x0b, 0xc4,
0x00, 0x55, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0xe9, 0x02, 0x42,
0x73, 0x00, 0x61, 0x73, 0x35, 0x01, 0x00, 0xdb, 0x00, 0x04,
0x77, 0x08, 0x05, 0xa2, 0x08, 0x60, 0x00, 0x00, 0x50, 0x72,
0x65, 0x73, 0x31, 0x08, 0x04, 0x67, 0x00, 0xe1, 0x2d, 0x53,
0x68, 0x69, 0x66, 0x74, 0x2d, 0x61, 0x72, 0x72, 0x6f, 0x77,
0x6b, 0x65, 0x86, 0x08, 0x0b, 0x12, 0x00, 0x51, 0x73, 0x69,
0x6d, 0x75, 0x6c, 0x53, 0x06, 0x12, 0x61, 0x8d, 0x03, 0x23,
0x6f, 0x72, 0xa5, 0x02, 0x10, 0x63, 0xba, 0x02, 0x10, 0x2c,
0x65, 0x08, 0x34, 0x70, 0x65, 0x63, 0x6b, 0x01, 0x12, 0x6f,
0x25, 0x06, 0x01, 0xb0, 0x02, 0x03, 0x31, 0x06, 0x05, 0xef,
0x02, 0x04, 0x3a, 0x02, 0x31, 0x6b, 0x65, 0x79, 0x35, 0x06,
0x22, 0x41, 0x6c, 0x02, 0x01, 0x21, 0x61, 0x63, 0x41, 0x01,
0xa0, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x64, 0x3a, 0x00, 0x13, 0x73, 0x34, 0x00, 0x31, 0x32, 0x2e,
0x31, 0xcc, 0x02, 0x02, 0xfb, 0x06, 0x93, 0x76, 0x61, 0x69,
0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0xc7, 0x04, 0x13, 0x32,
0xc7, 0x04, 0xb1, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x73, 0x20, 0x68, 0x05, 0x46, 0x65, 0x73, 0x65,
0x00, 0x14, 0x00, 0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x51,
0x00, 0x66, 0x72, 0x6f, 0x6d, 0x79, 0x00, 0xa0, 0x60, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0xc9, 0x01,
0x02, 0xa3, 0x00, 0x12, 0x6e, 0x1a, 0x00, 0xc0, 0x54, 0x79,
0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x00,
0x00, 0x2d, 0x01, 0x00, 0xf0, 0x0f, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x2e, 0x1c, 0x00, 0xf0, 0x1b,
0x72, 0x00, 0x6a, 0x6f, 0x62, 0x00, 0x69, 0x73, 0x00, 0x74,
0x6f, 0x00, 0x64, 0x72, 0x61, 0x77, 0x00, 0x6c, 0x69, 0x6e,
0x65, 0x73, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e,
0x00, 0x74, 0x68, 0x65, 0x00, 0x63, 0x65, 0x6e, 0x74, 0x72,
0x65, 0x73, 0x3a, 0x00, 0xf1, 0x07, 0x68, 0x6f, 0x72, 0x69,
0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x6f,
0x72, 0x00, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00,
0x40, 0x61, 0x64, 0x6a, 0x61, 0x2a, 0x00, 0x04, 0x5e, 0x00,
0x91, 0x2c, 0x00, 0x73, 0x6f, 0x00, 0x74, 0x68, 0x61, 0x74,
0x44, 0x00, 0x02, 0x56, 0x00, 0xf2, 0x0d, 0x66, 0x6f, 0x72,
0x6d, 0x00, 0x61, 0x00, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65,
0x00, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x00, 0x6c, 0x6f,
0x6f, 0x70, 0x2e, 0x00, 0x49, 0x6c, 0x00, 0x91, 0x72, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e, 0x67, 0xad, 0x00, 0x00,
0x44, 0x00, 0x20, 0x6d, 0x65, 0x79, 0x00, 0x00, 0x1c, 0x00,
0x03, 0x59, 0x00, 0x07, 0x55, 0x00, 0x81, 0x6f, 0x6f, 0x70,
0x00, 0x70, 0x61, 0x73, 0x73, 0x15, 0x00, 0xc0, 0x72, 0x6f,
0x75, 0x67, 0x68, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x63,
0xa3, 0x00, 0xf2, 0x00, 0x69, 0x6e, 0x00, 0x63, 0x6f, 0x72,
0x6e, 0x65, 0x72, 0x73, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x4b,
0x00, 0x01, 0x1f, 0x00, 0xb7, 0x62, 0x65, 0x00, 0x73, 0x74,
0x72, 0x61, 0x69, 0x67, 0x68, 0x74, 0xd2, 0x00, 0x08, 0xd0,
0x00, 0x02, 0xb0, 0x00, 0x44, 0x2e, 0x00, 0x28, 0x41, 0x39,
0x00, 0x04, 0x7d, 0x00, 0x30, 0x63, 0x61, 0x6e, 0x40, 0x00,
0xf6, 0x03, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
0x6c, 0x79, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x00, 0x2d,
0x92, 0x00, 0x72, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74,
0x76, 0x01, 0x21, 0x74, 0x6f, 0xa2, 0x00, 0x05, 0xa0, 0x00,
0x53, 0x65, 0x76, 0x65, 0x72, 0x79, 0x4e, 0x00, 0x6e, 0x2e,
0x29, 0x00, 0x00, 0x00, 0x53, 0xe2, 0x00, 0x05, 0xc0, 0x00,
0x51, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0xbd, 0x00, 0xb0, 0x77,
0x68, 0x69, 0x74, 0x65, 0x00, 0x63, 0x69, 0x72, 0x63, 0x6c,
0x5b, 0x01, 0x80, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x61,
0x72, 0x45, 0x01, 0x1d, 0x75, 0x13, 0x01, 0xf3, 0x02, 0x6d,
0x75, 0x73, 0x74, 0x00, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66,
0x79, 0x2e, 0x00, 0x00, 0x00, 0x41, 0x49, 0x00, 0x02, 0x3f,
0x00, 0x53, 0x00, 0x69, 0x6e, 0x00, 0x61, 0x6b, 0x00, 0x86,
0x00, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x43, 0x00,
0x14, 0x61, 0xc1, 0x01, 0x00, 0x14, 0x02, 0x13, 0x61, 0x42,
0x01, 0xdc, 0x2c, 0x00, 0x62, 0x75, 0x74, 0x00, 0x6e, 0x65,
0x69, 0x74, 0x68, 0x65, 0x72, 0xad, 0x00, 0x05, 0xf9, 0x01,
0x50, 0x74, 0x6f, 0x00, 0x69, 0x74, 0x5e, 0x00, 0x05, 0x89,
0x00, 0x00, 0x43, 0x00, 0x35, 0x6c, 0x73, 0x6f, 0x48, 0x00,
0x02, 0x8d, 0x00, 0x08, 0xcc, 0x00, 0x0e, 0x81, 0x00, 0x19,
0x65, 0x80, 0x00, 0x05, 0xa8, 0x01, 0x42, 0x65, 0x64, 0x67,
0x65, 0x87, 0x00, 0xcf, 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61,
0x73, 0x74, 0x20, 0x6f, 0x6e, 0x65, 0x8c, 0x00, 0x1c, 0x07,
0x87, 0x00, 0xc0, 0x28, 0x49, 0x6e, 0x00, 0x62, 0x6f, 0x74,
0x68, 0x00, 0x63, 0x61, 0x73, 0x52, 0x01, 0x22, 0x74, 0x68,
0x4c, 0x01, 0x50, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x81, 0x01,
0x01, 0x7a, 0x00, 0x21, 0x6e, 0x73, 0x19, 0x00, 0x3e, 0x74,
0x77, 0x6f, 0x63, 0x00, 0x70, 0x69, 0x6e, 0x20, 0x74, 0x68,
0x65, 0x20, 0x5d, 0x00, 0x12, 0x2c, 0xbd, 0x00, 0x3f, 0x69,
0x73, 0x2c, 0xa9, 0x02, 0x0f, 0xf0, 0x00, 0x69, 0x6e, 0x74,
0x6f, 0x00, 0x61, 0x66, 0x74, 0x65, 0x72, 0x00, 0x6c, 0x65,
0x61, 0x76, 0xeb, 0x02, 0x05, 0x7c, 0x00, 0x03, 0x17, 0x02,
0x2c, 0x00, 0x54, 0x45, 0x00, 0x23, 0x61, 0x72, 0x99, 0x00,
0x0c, 0x7e, 0x00, 0x01, 0xd3, 0x03, 0x00, 0x1e, 0x00, 0x36,
0x6e, 0x6f, 0x74, 0xb6, 0x00, 0x21, 0x65, 0x64, 0x5b, 0x02,
0x60, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x76, 0x03, 0xf1,
0x01, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a,
0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0xef, 0x03, 0x60,
0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x4d, 0x02, 0x20, 0x6f,
0x00, 0xc4, 0x03, 0x00, 0x32, 0x01, 0xf1, 0x06, 0x60, 0x4d,
0x61, 0x73, 0x79, 0x75, 0x27, 0x2e, 0x00, 0x5b, 0x31, 0x39,
0x5d, 0x00, 0x00, 0x00, 0x54, 0x68, 0x61, 0x6e, 0x6b, 0x2e,
0x00, 0xc1, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61,
0x72, 0x76, 0x65, 0x79, 0x53, 0x00, 0x90, 0x61, 0x73, 0x73,
0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x56, 0x03, 0x21, 0x74,
0x68, 0xc6, 0x00, 0x10, 0x69, 0x16, 0x03, 0x90, 0x6d, 0x65,
0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x68, 0x01, 0x01,
0x48, 0x00, 0xd1, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x76, 0x00, 0xa2, 0x2e,
0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x95,
0x00, 0x30, 0x73, 0x2f, 0x6d, 0x79, 0x00, 0x83, 0x2f, 0x00,
0x00, 0x00, 0x33, 0x36, 0x2e, 0x31, 0xd1, 0x04, 0x00, 0x08,
0x03, 0x50, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0xcd, 0x00, 0x46,
0x6c, 0x69, 0x63, 0x6b, 0x6a, 0x00, 0x40, 0x6c, 0x65, 0x66,
0x74, 0x0f, 0x02, 0x64, 0x74, 0x6f, 0x6e, 0x00, 0x6f, 0x6e,
0xdd, 0x04, 0x00, 0x26, 0x02, 0x05, 0xca, 0x04, 0x50, 0x61,
0x00, 0x73, 0x65, 0x67, 0x8d, 0x00, 0x04, 0x26, 0x02, 0x01,
0x87, 0x01, 0x04, 0x89, 0x03, 0x01, 0x58, 0x01, 0x02, 0x56,
0x02, 0x20, 0x6f, 0x72, 0x34, 0x00, 0x68, 0x72, 0x65, 0x6d,
0x6f, 0x76, 0x65, 0x36, 0x00, 0x00, 0xdb, 0x00, 0x10, 0x69,
0xd7, 0x01, 0x01, 0x50, 0x00, 0x01, 0xcf, 0x00, 0x4f, 0x44,
0x72, 0x61, 0x67, 0x85, 0x00, 0x03, 0x04, 0x58, 0x00, 0x00,
0x40, 0x00, 0x47, 0x72, 0x69, 0x65, 0x73, 0x69, 0x05, 0x05,
0x92, 0x00, 0x40, 0x6d, 0x6f, 0x72, 0x65, 0x79, 0x00, 0x00,
0xb3, 0x00, 0x1f, 0x65, 0x9e, 0x00, 0x02, 0x12, 0x69, 0x1b,
0x00, 0xf0, 0x05, 0x67, 0x6f, 0x2e, 0x00, 0x41, 0x6c, 0x74,
0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79,
0x2c, 0x00, 0x64, 0x7a, 0x00, 0xc1, 0x6f, 0x76, 0x65, 0x72,
0x00, 0x61, 0x6e, 0x00, 0x65, 0x78, 0x69, 0x73, 0x26, 0x05,
0x3b, 0x70, 0x61, 0x72, 0xdf, 0x00, 0x41, 0x6f, 0x00, 0x75,
0x6e, 0x6d, 0x00, 0x24, 0x69, 0x74, 0xda, 0x00, 0x03, 0x11,
0x00, 0x04, 0x2c, 0x00, 0x21, 0x69, 0x74, 0x53, 0x04, 0x72,
0x74, 0x68, 0x65, 0x6e, 0x00, 0x67, 0x6f, 0x0f, 0x04, 0x60,
0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x8e, 0x00, 0x54, 0x64,
0x69, 0x72, 0x65, 0x63, 0xbe, 0x01, 0x0b, 0x75, 0x01, 0x11,
0x72, 0x8b, 0x03, 0x0f, 0x76, 0x01, 0x06, 0x40, 0x6d, 0x61,
0x72, 0x6b, 0x5e, 0x00, 0x01, 0x30, 0x00, 0x84, 0x61, 0x00,
0x63, 0x72, 0x6f, 0x73, 0x73, 0x2c, 0xe2, 0x03, 0x02, 0xe9,
0x02, 0x61, 0x61, 0x74, 0x00, 0x79, 0x6f, 0x75, 0xb2, 0x02,
0x4a, 0x73, 0x75, 0x72, 0x65, 0x35, 0x05, 0x01, 0xc5, 0x02,
0x2e, 0x67, 0x6f, 0xa3, 0x01, 0x92, 0x2e, 0x00, 0x28, 0x46,
0x6f, 0x72, 0x00, 0x69, 0x6e, 0x70, 0x02, 0x64, 0x2c, 0x00,
0x69, 0x66, 0x00, 0x79, 0xd8, 0x06, 0x73, 0x64, 0x65, 0x63,
0x69, 0x64, 0x65, 0x64, 0x14, 0x05, 0x0f, 0x11, 0x04, 0x08,
0x14, 0x61, 0x7a, 0x04, 0x00, 0x6b, 0x03, 0x21, 0x68, 0x61,
0x97, 0x01, 0x2b, 0x62, 0x65, 0xe5, 0x04, 0x20, 0x64, 0x6f,
0xbb, 0x05, 0x83, 0x79, 0x65, 0x74, 0x00, 0x6b, 0x6e, 0x6f,
0x77, 0x55, 0x00, 0x32, 0x77, 0x61, 0x79, 0xa5, 0x03, 0x01,
0x29, 0x00, 0x71, 0x00, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x2c,
0x82, 0x00, 0x11, 0x6d, 0x12, 0x01, 0x01, 0xf9, 0x00, 0x00,
0x21, 0x00, 0x00, 0xbc, 0x01, 0x00, 0x2d, 0x00, 0x20, 0x69,
0x74, 0x29, 0x06, 0x11, 0x27, 0xce, 0x00, 0x08, 0x0e, 0x01,
0x01, 0x97, 0x03, 0x0b, 0xd9, 0x01, 0x32, 0x75, 0x73, 0x65,
0x5d, 0x00, 0x91, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b,
0x65, 0x79, 0x9a, 0x00, 0x01, 0x8d, 0x02, 0x06, 0x18, 0x00,
0x33, 0x2e, 0x00, 0x55, 0x28, 0x00, 0x41, 0x45, 0x6e, 0x74,
0x65, 0x27, 0x00, 0x02, 0xc0, 0x00, 0x31, 0x67, 0x69, 0x6e,
0xcf, 0x01, 0x30, 0x65, 0x6e, 0x64, 0x15, 0x00, 0x70, 0x62,
0x6f, 0x61, 0x72, 0x64, 0x00, 0x60, 0x2e, 0x02, 0x61, 0x27,
0x00, 0x6f, 0x70, 0x65, 0x72, 0x8a, 0x03, 0x16, 0x73, 0x3f,
0x00, 0x30, 0x53, 0x70, 0x61, 0x42, 0x01, 0x60, 0x45, 0x73,
0x63, 0x61, 0x70, 0x65, 0x21, 0x02, 0x50, 0x42, 0x61, 0x63,
0x6b, 0x73, 0x15, 0x00, 0x05, 0x7b, 0x00, 0x10, 0x63, 0x65,
0x01, 0x11, 0x6c, 0x2e, 0x00, 0x00, 0x48, 0x00, 0xc2, 0x2e,
0x00, 0x4f, 0x72, 0x2c, 0x00, 0x68, 0x6f, 0x6c, 0x64, 0x00,
0x43, 0x91, 0x03, 0x00, 0x17, 0x01, 0x12, 0x6c, 0x1d, 0x00,
0x37, 0x67, 0x69, 0x6e, 0x11, 0x03, 0x0b, 0xc4, 0x00, 0x55,
0x74, 0x6f, 0x67, 0x67, 0x6c, 0xe9, 0x02, 0x42, 0x73, 0x00,
0x61, 0x73, 0x35, 0x01, 0x00, 0xdb, 0x00, 0x04, 0x62, 0x08,
0x05, 0x8d, 0x08, 0x60, 0x00, 0x00, 0x50, 0x72, 0x65, 0x73,
0x1c, 0x08, 0x04, 0x67, 0x00, 0xe1, 0x2d, 0x53, 0x68, 0x69,
0x66, 0x74, 0x2d, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x6b, 0x65,
0x71, 0x08, 0x0b, 0x12, 0x00, 0x51, 0x73, 0x69, 0x6d, 0x75,
0x6c, 0x3e, 0x06, 0x12, 0x61, 0x8d, 0x03, 0x23, 0x6f, 0x72,
0xa5, 0x02, 0x10, 0x63, 0xba, 0x02, 0x10, 0x2c, 0x50, 0x08,
0x34, 0x70, 0x65, 0x63, 0x6b, 0x01, 0x12, 0x6f, 0x10, 0x06,
0x01, 0xb0, 0x02, 0x03, 0x1c, 0x06, 0x05, 0xef, 0x02, 0x04,
0x3a, 0x02, 0x31, 0x6b, 0x65, 0x79, 0x20, 0x06, 0x22, 0x41,
0x6c, 0x02, 0x01, 0x21, 0x61, 0x63, 0x41, 0x01, 0xa0, 0x00,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x3a,
0x00, 0x13, 0x73, 0x34, 0x00, 0x31, 0x32, 0x2e, 0x31, 0xcc,
0x02, 0x02, 0xe6, 0x06, 0x72, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0xd8, 0x07, 0x43, 0x33, 0x36, 0x2e, 0x32, 0xc7,
0x04, 0xb1, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x73, 0x20, 0x53, 0x05, 0x46, 0x65, 0x73, 0x65, 0x00,
0x14, 0x00, 0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x51, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x79, 0x00, 0xa0, 0x60, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0xc9, 0x01, 0x02,
0xa3, 0x00, 0x12, 0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70,
0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xab, 0x00, 0x91,
0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0xf9,
0x00, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x19, 0x07, 0x01,
0x9c, 0x03, 0x19, 0x69, 0x62, 0x01, 0xa0, 0x44, 0x69, 0x66,
0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0xdd, 0x03, 0x03,
0x5e, 0x05, 0x03, 0x08, 0x01, 0x05, 0x1a, 0x00, 0x03, 0x09,
0x01, 0x30, 0x67, 0x65, 0x6e, 0x3e, 0x02, 0x23, 0x65, 0x64,
0x38, 0x06, 0x11, 0x2e, 0xbb, 0x02, 0xa0, 0x6c, 0x6f, 0x77,
0x20, 0x75, 0x6e, 0x73, 0x6f, 0x6c, 0x75, 0xad, 0x00, 0x42,
0x00, 0x00, 0x49, 0x66, 0x5c, 0x06, 0x72, 0x69, 0x73, 0x00,
0x73, 0x65, 0x74, 0x2c, 0x56, 0x04, 0x01, 0x3f, 0x00, 0x17,
0x61, 0x6f, 0x09, 0x06, 0x4c, 0x00, 0x03, 0x77, 0x01, 0x11,
0x73, 0x2a, 0x06, 0x20, 0x73, 0x74, 0x2e, 0x03, 0x13, 0x3a,
0x15, 0x09, 0x07, 0x03, 0x07, 0x02, 0xfb, 0x03, 0x00, 0x6c,
0x09, 0x80, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x79,
0x46, 0x00, 0x42, 0x70, 0x72, 0x6f, 0x76, 0xeb, 0x03, 0x04,
0xc6, 0x09, 0x42, 0x68, 0x6f, 0x77, 0x6e, 0xde, 0x09, 0x07,
0xb2, 0x00, 0x22, 0x6f, 0x72, 0x21, 0x00, 0x01, 0x13, 0x07,
0x20, 0x68, 0x65, 0xc1, 0x04, 0x21, 0x68, 0x65, 0xba, 0x08,
0x00, 0x25, 0x00, 0x03, 0x05, 0x07, 0x03, 0xc8, 0x09, 0x50,
0x75, 0x6e, 0x69, 0x71, 0x75, 0xc6, 0x09, 0x71, 0x73, 0x6f,
0x6c, 0x76, 0x65, 0x64, 0x2e, 0xa0, 0x01, 0x00, 0xcc, 0x00,
0x82, 0x70, 0x65, 0x65, 0x64, 0x73, 0x00, 0x75, 0x70, 0xc8,
0x00, 0x03, 0x5a, 0x00, 0x23, 0x69, 0x6f, 0x6e, 0x00, 0x10,
0x61, 0x08, 0x01, 0xd1, 0x73, 0x00, 0x6d, 0x75, 0x63, 0x68,
0x00, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x6e, 0x01, 0x04,
0x53, 0x04, 0x40, 0x70, 0x6c, 0x61, 0x79, 0x4d, 0x00, 0x31,
0x41, 0x74, 0x00, 0xab, 0x08, 0x01, 0x18, 0x04, 0x03, 0xca,
0x00, 0x20, 0x65, 0x00, 0x3d, 0x01, 0x01, 0xcf, 0x01, 0x01,
0xa6, 0x00, 0x20, 0x73, 0x74, 0x06, 0x00, 0x62, 0x61, 0x6c,
0x77, 0x61, 0x79, 0x73, 0xd8, 0x05, 0x02, 0x89, 0x04, 0x00,
0xb1, 0x00, 0x20, 0x65, 0x27, 0x14, 0x05, 0xa3, 0x00, 0x67,
0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x67, 0x08,
0x15, 0x74, 0x01, 0x01, 0x02, 0xbf, 0x00, 0x02, 0xe8, 0x05,
0x0b, 0x1b, 0x00, 0x05, 0x6f, 0x00, 0x00, 0x7d, 0x06, 0x32,
0x65, 0x64, 0x75, 0xcc, 0x06, 0x71, 0x73, 0x74, 0x65, 0x70,
0x00, 0x62, 0x79, 0x08, 0x00, 0x12, 0x2e, 0xa6, 0x02, 0x13,
0x33, 0xa6, 0x02, 0x81, 0x75, 0x73, 0x65, 0x72, 0x20, 0x70,
0x72, 0x65, 0x08, 0x06, 0x21, 0x63, 0x65, 0xac, 0x02, 0x20,
0x4f, 0x6e, 0xcc, 0x00, 0x10, 0x74, 0xb8, 0x0b, 0x13, 0x73,
0x1d, 0x0a, 0x70, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x00,
0x2e, 0x00, 0x17, 0x00, 0x2e, 0x00, 0x12, 0x2c, 0x9a, 0x02,
0x16, 0x50, 0x12, 0x00, 0x0d, 0xb6, 0x02, 0x33, 0x47, 0x61,
0x6d, 0xb6, 0x02, 0x02, 0xa5, 0x00, 0x22, 0x6c, 0x65, 0x0d,
0x06, 0x64, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x0e, 0x06,
0x45, 0x73, 0x74, 0x79, 0x6c, 0xd8, 0x09, 0x01, 0x7d, 0x01,
0x30, 0x64, 0x69, 0x73, 0x51, 0x01, 0x80, 0x2e, 0x00, 0x60,
0x54, 0x72, 0x61, 0x64, 0x69, 0x54, 0x00, 0x53, 0x61, 0x6c,
0x27, 0x00, 0x69, 0xb9, 0x02, 0xb0, 0x65, 0x66, 0x61, 0x75,
0x6c, 0x74, 0x00, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x06, 0x03,
0xb3, 0x05, 0x05, 0x59, 0x06, 0x36, 0x72, 0x75, 0x6e, 0xcf,
0x0c, 0x07, 0xcb, 0x0c, 0x01, 0x1e, 0x03, 0x05, 0xac, 0x0c,
0x01, 0x42, 0x05, 0x33, 0x61, 0x63, 0x68, 0x04, 0x0a, 0x51,
0x63, 0x63, 0x75, 0x70, 0x69, 0x56, 0x04, 0x04, 0x93, 0x09,
0x71, 0x60, 0x4c, 0x6f, 0x6f, 0x70, 0x79, 0x2d, 0x9e, 0x00,
0x11, 0x27, 0x4d, 0x0a, 0x36, 0x6e, 0x00, 0x61, 0xc9, 0x05,
0x01, 0x7f, 0x00, 0x02, 0x22, 0x01, 0x52, 0x6c, 0x6f, 0x6f,
0x6b, 0x73, 0xeb, 0x07, 0x51, 0x6c, 0x69, 0x6b, 0x65, 0x00,
0x39, 0x00, 0x32, 0x00, 0x28, 0x63, 0xaf, 0x0d, 0x4f, 0x00,
0x32, 0x33, 0x29, 0xa7, 0x00, 0x0e, 0x01, 0x9c, 0x00, 0x02,
0x8c, 0x0c, 0x04, 0x9d, 0x00, 0x04, 0x24, 0x0a, 0x03, 0x52,
0x0b, 0x01, 0xa2, 0x00, 0xc0, 0x79, 0x00, 0x76, 0x65, 0x72,
0x74, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x00,
};
const unsigned short help_text_len = 2570;
const unsigned short help_text_words = 475;
const unsigned short help_text_len = 3598;
const unsigned short help_text_words = 659;
const char quick_help_text[] = "Draw a single closed loop, given clues about corner and straight squares.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,143 +6,146 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 72, TEXT_CENTER | C_RED },
{ 228, TEXT_CENTER | C_RED },
{ 245, TEXT_UNDERLINE },
{ 73, TEXT_CENTER | C_RED },
{ 229, TEXT_CENTER | C_RED },
{ 246, TEXT_UNDERLINE },
{ 256, TEXT_UNDERLINE },
{ 247, TEXT_UNDERLINE },
{ 257, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 1689 comp 1250 ratio 0.740083 level 3 saved 439 */
/* orig 1734 comp 1272 ratio 0.733564 level 4 saved 462 */
const char help_text[] = {
0xf0, 0x46, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfb, 0x04, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x36, 0x3a, 0x20, 0x50, 0x65, 0x67, 0x73, 0x20, 0x00,
0x00, 0x00, 0x41, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x00, 0x6f, 0x66, 0x00, 0x70, 0x65, 0x67, 0x73, 0x00, 0x61,
0x72, 0x65, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x00,
0x69, 0x6e, 0x00, 0x68, 0x6f, 0x6c, 0x65, 0x73, 0x00, 0x6f,
0x6e, 0x00, 0x61, 0x00, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x63, 0x61, 0x6e, 0x00, 0x72,
0x65, 0x6d, 0x6f, 0x76, 0x65, 0x00, 0x61, 0x36, 0x00, 0xf1,
0x08, 0x00, 0x62, 0x79, 0x00, 0x6a, 0x75, 0x6d, 0x70, 0x69,
0x6e, 0x67, 0x00, 0x61, 0x6e, 0x00, 0x61, 0x64, 0x6a, 0x61,
0x63, 0x65, 0x6e, 0x74, 0x1b, 0x00, 0xf0, 0x10, 0x6f, 0x76,
0x65, 0x72, 0x00, 0x69, 0x74, 0x00, 0x28, 0x68, 0x6f, 0x72,
0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x00,
0x6f, 0x72, 0x00, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e,
0x00, 0xd1, 0x29, 0x00, 0x74, 0x6f, 0x00, 0x61, 0x00, 0x76,
0x61, 0x63, 0x61, 0x6e, 0x74, 0x73, 0x00, 0x00, 0x72, 0x00,
0xe1, 0x74, 0x68, 0x65, 0x00, 0x6f, 0x74, 0x68, 0x65, 0x72,
0x00, 0x73, 0x69, 0x64, 0x65, 0x79, 0x00, 0x80, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x30, 0x00, 0x04, 0x80,
0x00, 0xa0, 0x6c, 0x6c, 0x00, 0x62, 0x75, 0x74, 0x00, 0x6f,
0x6e, 0x65, 0xc3, 0x00, 0x00, 0x35, 0x00, 0x01, 0xc7, 0x00,
0x51, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6b, 0x00, 0xf0, 0x25,
0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x2e, 0x00, 0x00,
0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d, 0x65,
0x2c, 0x00, 0x62, 0x65, 0x73, 0x74, 0x00, 0x6b, 0x6e, 0x6f,
0x77, 0x6e, 0x00, 0x61, 0x73, 0x00, 0x60, 0x50, 0x65, 0x67,
0x00, 0x53, 0x6f, 0x6c, 0x69, 0x74, 0x61, 0x69, 0x72, 0x65,
0x27, 0x2c, 0x64, 0x00, 0x88, 0x70, 0x6f, 0x73, 0x73, 0x69,
0x62, 0x6c, 0x79, 0x5b, 0x00, 0x30, 0x6f, 0x6c, 0x64, 0x38,
0x00, 0x61, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x4a, 0x00,
0xf2, 0x01, 0x73, 0x00, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x00,
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x6c, 0x79, 0x54, 0x00,
0x00, 0x6d, 0x00, 0x42, 0x31, 0x36, 0x2e, 0x31, 0x67, 0x01,
0x71, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x70, 0x01,
0x36, 0x54, 0x6f, 0x00, 0x38, 0x01, 0x60, 0x2c, 0x00, 0x64,
0x72, 0x61, 0x67, 0x1e, 0x01, 0x41, 0x77, 0x69, 0x74, 0x68,
0x62, 0x00, 0xf1, 0x04, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x00, 0x69, 0x74, 0x73, 0x00, 0x63,
0x75, 0x72, 0x72, 0x4a, 0x01, 0x50, 0x6f, 0x73, 0x69, 0x74,
0x69, 0x16, 0x01, 0x11, 0x6f, 0x18, 0x00, 0x55, 0x66, 0x69,
0x6e, 0x61, 0x6c, 0x16, 0x00, 0x32, 0x2e, 0x00, 0x49, 0xa0,
0x00, 0x0a, 0x17, 0x00, 0x00, 0xc6, 0x00, 0xb3, 0x65, 0x78,
0x61, 0x63, 0x74, 0x6c, 0x79, 0x00, 0x74, 0x77, 0x6f, 0xcd,
0x01, 0x42, 0x61, 0x77, 0x61, 0x79, 0x61, 0x00, 0x00, 0x32,
0x00, 0x03, 0x28, 0x01, 0x05, 0x34, 0x00, 0x01, 0xfb, 0x00,
0x03, 0x76, 0x00, 0xd0, 0x6c, 0x79, 0x00, 0x75, 0x6e, 0x6f,
0x63, 0x63, 0x75, 0x70, 0x69, 0x65, 0x64, 0xe4, 0x01, 0x03,
0xb5, 0x00, 0x30, 0x61, 0x6e, 0x64, 0x3c, 0x00, 0x20, 0x72,
0x65, 0x2c, 0x00, 0x02, 0x01, 0x02, 0x23, 0x69, 0x6e, 0x4e,
0x00, 0x60, 0x74, 0x65, 0x72, 0x76, 0x65, 0x6e, 0x09, 0x02,
0x73, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x2c, 0xd6, 0x00,
0x40, 0x76, 0x65, 0x00, 0x77, 0x28, 0x01, 0x10, 0x62, 0xa0,
0x01, 0x74, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x49,
0x00, 0x09, 0x37, 0x00, 0x00, 0x4e, 0x00, 0x04, 0x2a, 0x00,
0x02, 0xe4, 0x01, 0x10, 0x64, 0x4e, 0x01, 0x12, 0x56, 0x1d,
0x02, 0xe3, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x00, 0x77,
0x68, 0x69, 0x63, 0x68, 0x00, 0x79, 0x8b, 0x02, 0x06, 0x51,
0x01, 0x00, 0x4a, 0x00, 0x11, 0x6f, 0xc3, 0x02, 0x62, 0x6d,
0x61, 0x72, 0x6b, 0x65, 0x64, 0x58, 0x01, 0x01, 0xf8, 0x00,
0x32, 0x2e, 0x00, 0x41, 0x3e, 0x00, 0x02, 0x14, 0x00, 0x21,
0x6e, 0x6f, 0x30, 0x00, 0x00, 0x82, 0x00, 0x12, 0x6e, 0x1a,
0x01, 0x00, 0xcd, 0x00, 0xf0, 0x02, 0x6e, 0x6f, 0x74, 0x00,
0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x00,
0x66, 0x6f, 0x72, 0x5c, 0x00, 0x01, 0xd6, 0x02, 0x10, 0x74,
0x6a, 0x02, 0x10, 0x3a, 0xab, 0x01, 0x00, 0xf4, 0x00, 0xa7,
0x6e, 0x00, 0x6f, 0x62, 0x73, 0x74, 0x61, 0x63, 0x6c, 0x65,
0x8b, 0x00, 0xf1, 0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x77,
0x6f, 0x72, 0x6b, 0x00, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0xb7,
0x00, 0x04, 0x2e, 0x03, 0x50, 0x61, 0x6c, 0x73, 0x6f, 0x00,
0xda, 0x01, 0x00, 0xef, 0x00, 0xa1, 0x63, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0xca, 0x02, 0x04, 0x10,
0x02, 0x05, 0xb6, 0x01, 0x83, 0x6e, 0x64, 0x69, 0x63, 0x61,
0x74, 0x6f, 0x72, 0x48, 0x00, 0x01, 0x34, 0x00, 0x03, 0x7e,
0x03, 0x50, 0x50, 0x72, 0x65, 0x73, 0x73, 0x91, 0x00, 0x00,
0x14, 0x00, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x48,
0x00, 0x00, 0x86, 0x00, 0x22, 0x6c, 0x65, 0x6c, 0x03, 0x03,
0xa5, 0x01, 0x64, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0xb8,
0x01, 0x06, 0x73, 0x00, 0x12, 0x2c, 0x5e, 0x01, 0x00, 0xaf,
0x03, 0x04, 0x2e, 0x03, 0x02, 0xbe, 0x01, 0x81, 0x61, 0x74,
0x00, 0x64, 0x69, 0x72, 0x65, 0x63, 0x84, 0x00, 0x32, 0x28,
0x69, 0x66, 0x13, 0x00, 0x01, 0xe2, 0x01, 0x51, 0x6c, 0x65,
0x67, 0x61, 0x6c, 0xa8, 0x00, 0x10, 0x29, 0xd5, 0x00, 0x41,
0x28, 0x41, 0x6c, 0x6c, 0x3c, 0x00, 0x11, 0x61, 0x2d, 0x00,
0x92, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x33, 0x04, 0x13, 0x73, 0x43, 0x00, 0x31, 0x32, 0x2e, 0x31,
0x8a, 0x01, 0x01, 0xfb, 0x00, 0x05, 0x55, 0x01, 0x22, 0x2e,
0x29, 0x1b, 0x03, 0x12, 0x32, 0x1b, 0x03, 0x92, 0x70, 0x61,
0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x1d, 0x03, 0x56,
0x68, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x40, 0x00,
0x06, 0x90, 0x01, 0x04, 0xb5, 0x02, 0xe1, 0x60, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f,
0x70, 0x6e, 0x00, 0x03, 0x31, 0x04, 0xb0, 0x60, 0x54, 0x79,
0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xaa, 0x00,
0xf1, 0x04, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48,
0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x00, 0x00, 0x53, 0x69,
0x7a, 0xcc, 0x03, 0x36, 0x67, 0x72, 0x69, 0xdf, 0x04, 0x00,
0x29, 0x00, 0x10, 0x42, 0x5f, 0x01, 0x93, 0x20, 0x74, 0x79,
0x70, 0x65, 0x00, 0x00, 0x00, 0x43, 0xb0, 0x03, 0x41, 0x00,
0x77, 0x68, 0x65, 0x81, 0x04, 0x00, 0xde, 0x01, 0x00, 0x8b,
0x00, 0x45, 0x67, 0x69, 0x76, 0x65, 0x0b, 0x05, 0x00, 0x48,
0x00, 0x70, 0x61, 0x00, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x0e,
0x00, 0x50, 0x73, 0x68, 0x61, 0x70, 0x65, 0xd8, 0x04, 0xf3,
0x04, 0x61, 0x00, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x6c,
0x79, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65,
0x1e, 0x00, 0x10, 0x2e, 0xe1, 0x00, 0x01, 0x8a, 0x03, 0x0a,
0x36, 0x00, 0x08, 0x71, 0x03, 0x61, 0x73, 0x75, 0x70, 0x70,
0x6f, 0x72, 0x1d, 0x03, 0x10, 0x72, 0xe9, 0x00, 0x51, 0x72,
0x6f, 0x73, 0x73, 0x27, 0xa7, 0x02, 0xb1, 0x60, 0x4f, 0x63,
0x74, 0x61, 0x67, 0x6f, 0x6e, 0x27, 0x00, 0x28, 0x53, 0x01,
0x0a, 0x72, 0x04, 0x00, 0xc6, 0x04, 0x00, 0x01, 0x01, 0x71,
0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x32, 0x00, 0xd1,
0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x61, 0x6e, 0x00, 0x74,
0x72, 0x61, 0x64, 0x5c, 0x02, 0x23, 0x61, 0x6c, 0xbc, 0x00,
0xc0, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x73, 0x00, 0x72,
0x65, 0x73, 0x70, 0xb0, 0x01, 0xa0, 0x76, 0x65, 0x6c, 0x79,
0x29, 0x2e, 0x00, 0x53, 0x65, 0x6c, 0x0e, 0x00, 0x51, 0x6e,
0x67, 0x00, 0x60, 0x52, 0xc5, 0x00, 0x12, 0x27, 0x2e, 0x02,
0x00, 0xf9, 0x00, 0x02, 0x06, 0x01, 0x61, 0x00, 0x64, 0x69,
0x66, 0x66, 0x65, 0x94, 0x04, 0x26, 0x62, 0x6f, 0xf8, 0x00,
0xc0, 0x65, 0x76, 0x65, 0x72, 0x79, 0x00, 0x74, 0x69, 0x6d,
0x65, 0x00, 0x28, 0x8f, 0x05, 0x61, 0x61, 0x6c, 0x77, 0x61,
0x79, 0x73, 0x3b, 0x05, 0x04, 0x47, 0x02, 0x02, 0xa7, 0x00,
0x51, 0x74, 0x6f, 0x00, 0x68, 0x61, 0xf0, 0x02, 0xb0, 0x73,
0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x29, 0x2e, 0x00,
0x2d, 0x01, 0x00, 0xf0, 0x35, 0x00, 0x00, 0x00, 0x41, 0x00,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x00, 0x6f, 0x66, 0x00,
0x70, 0x65, 0x67, 0x73, 0x00, 0x61, 0x72, 0x65, 0x00, 0x70,
0x6c, 0x61, 0x63, 0x65, 0x64, 0x00, 0x69, 0x6e, 0x00, 0x68,
0x6f, 0x6c, 0x65, 0x73, 0x00, 0x6f, 0x6e, 0x00, 0x61, 0x00,
0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x00, 0x59, 0x6f, 0x75,
0x00, 0x63, 0x61, 0x6e, 0x00, 0x72, 0x65, 0x6d, 0x6f, 0x76,
0x65, 0x00, 0x61, 0x36, 0x00, 0xf1, 0x08, 0x00, 0x62, 0x79,
0x00, 0x6a, 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x67, 0x00, 0x61,
0x6e, 0x00, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74,
0x1b, 0x00, 0xf0, 0x10, 0x6f, 0x76, 0x65, 0x72, 0x00, 0x69,
0x74, 0x00, 0x28, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e,
0x74, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x72, 0x00, 0x76,
0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00, 0xd1, 0x29, 0x00,
0x74, 0x6f, 0x00, 0x61, 0x00, 0x76, 0x61, 0x63, 0x61, 0x6e,
0x74, 0x73, 0x00, 0x00, 0x72, 0x00, 0xe1, 0x74, 0x68, 0x65,
0x00, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x00, 0x73, 0x69, 0x64,
0x65, 0x79, 0x00, 0x80, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00,
0x69, 0x73, 0x30, 0x00, 0x04, 0x80, 0x00, 0xa0, 0x6c, 0x6c,
0x00, 0x62, 0x75, 0x74, 0x00, 0x6f, 0x6e, 0x65, 0xc3, 0x00,
0x00, 0x35, 0x00, 0x01, 0xc7, 0x00, 0x51, 0x69, 0x6e, 0x69,
0x74, 0x69, 0x6b, 0x00, 0xf0, 0x25, 0x70, 0x72, 0x65, 0x73,
0x65, 0x6e, 0x74, 0x2e, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69,
0x73, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x00, 0x62, 0x65,
0x73, 0x74, 0x00, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x00, 0x61,
0x73, 0x00, 0x60, 0x50, 0x65, 0x67, 0x00, 0x53, 0x6f, 0x6c,
0x69, 0x74, 0x61, 0x69, 0x72, 0x65, 0x27, 0x2c, 0x64, 0x00,
0x88, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x79, 0x5b,
0x00, 0x30, 0x6f, 0x6c, 0x64, 0x38, 0x00, 0x61, 0x70, 0x75,
0x7a, 0x7a, 0x6c, 0x65, 0x4a, 0x00, 0xf2, 0x01, 0x73, 0x00,
0x73, 0x74, 0x69, 0x6c, 0x6c, 0x00, 0x63, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x6c, 0x79, 0x54, 0x00, 0x00, 0x6d, 0x00, 0x42,
0x31, 0x36, 0x2e, 0x31, 0x78, 0x01, 0x90, 0x63, 0x6f, 0x6e,
0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x83, 0x00, 0x26, 0x6f,
0x00, 0x38, 0x01, 0x60, 0x2c, 0x00, 0x64, 0x72, 0x61, 0x67,
0x1e, 0x01, 0x41, 0x77, 0x69, 0x74, 0x68, 0x62, 0x00, 0xf1,
0x04, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x00, 0x66, 0x72, 0x6f,
0x6d, 0x00, 0x69, 0x74, 0x73, 0x00, 0x63, 0x75, 0x72, 0x72,
0x4a, 0x01, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x16, 0x01,
0x11, 0x6f, 0x18, 0x00, 0x55, 0x66, 0x69, 0x6e, 0x61, 0x6c,
0x16, 0x00, 0x32, 0x2e, 0x00, 0x49, 0xa0, 0x00, 0x0a, 0x17,
0x00, 0x00, 0xc6, 0x00, 0xb3, 0x65, 0x78, 0x61, 0x63, 0x74,
0x6c, 0x79, 0x00, 0x74, 0x77, 0x6f, 0xcd, 0x01, 0x42, 0x61,
0x77, 0x61, 0x79, 0x61, 0x00, 0x00, 0x32, 0x00, 0x03, 0x28,
0x01, 0x05, 0x34, 0x00, 0x01, 0xfb, 0x00, 0x03, 0x76, 0x00,
0xd0, 0x6c, 0x79, 0x00, 0x75, 0x6e, 0x6f, 0x63, 0x63, 0x75,
0x70, 0x69, 0x65, 0x64, 0xe4, 0x01, 0x03, 0xb5, 0x00, 0x30,
0x61, 0x6e, 0x64, 0x3c, 0x00, 0x20, 0x72, 0x65, 0x2c, 0x00,
0x02, 0x01, 0x02, 0x23, 0x69, 0x6e, 0x4e, 0x00, 0x60, 0x74,
0x65, 0x72, 0x76, 0x65, 0x6e, 0x09, 0x02, 0x73, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x2c, 0xd6, 0x00, 0x40, 0x76, 0x65,
0x00, 0x77, 0x28, 0x01, 0x10, 0x62, 0xa0, 0x01, 0x74, 0x72,
0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x49, 0x00, 0x09, 0x37,
0x00, 0x00, 0x4e, 0x00, 0x04, 0x2a, 0x00, 0x02, 0xe4, 0x01,
0x10, 0x64, 0x4e, 0x01, 0x12, 0x56, 0x1d, 0x02, 0xe3, 0x73,
0x70, 0x61, 0x63, 0x65, 0x73, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x00, 0x79, 0x8b, 0x02, 0x07, 0x89, 0x02, 0x41, 0x69,
0x6e, 0x74, 0x6f, 0xc3, 0x02, 0x62, 0x6d, 0x61, 0x72, 0x6b,
0x65, 0x64, 0x58, 0x01, 0x01, 0xf8, 0x00, 0x32, 0x2e, 0x00,
0x41, 0x3e, 0x00, 0x02, 0x14, 0x00, 0x21, 0x6e, 0x6f, 0x30,
0x00, 0x00, 0x82, 0x00, 0x12, 0x6e, 0x1a, 0x01, 0x00, 0xcd,
0x00, 0xf0, 0x02, 0x6e, 0x6f, 0x74, 0x00, 0x61, 0x76, 0x61,
0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x00, 0x66, 0x6f, 0x72,
0x5c, 0x00, 0x01, 0xd6, 0x02, 0x10, 0x74, 0x6a, 0x02, 0x10,
0x3a, 0xab, 0x01, 0x00, 0xf4, 0x00, 0xa7, 0x6e, 0x00, 0x6f,
0x62, 0x73, 0x74, 0x61, 0x63, 0x6c, 0x65, 0x8b, 0x00, 0xf1,
0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x77, 0x6f, 0x72, 0x6b,
0x00, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0xb7, 0x00, 0x04, 0x2e,
0x03, 0x50, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0xda, 0x01, 0x00,
0xef, 0x00, 0xa1, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00,
0x6b, 0x65, 0x79, 0xca, 0x02, 0x04, 0x10, 0x02, 0x05, 0xb6,
0x01, 0x83, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72,
0x48, 0x00, 0x01, 0x34, 0x00, 0x03, 0x7e, 0x03, 0x50, 0x50,
0x72, 0x65, 0x73, 0x73, 0x91, 0x00, 0x00, 0x14, 0x00, 0x60,
0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x48, 0x00, 0x00, 0x86,
0x00, 0x22, 0x6c, 0x65, 0x6c, 0x03, 0x03, 0xa5, 0x01, 0x64,
0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0xb8, 0x01, 0x06, 0x73,
0x00, 0x12, 0x2c, 0x5e, 0x01, 0x00, 0xaf, 0x03, 0x04, 0x2e,
0x03, 0x02, 0xbe, 0x01, 0x81, 0x61, 0x74, 0x00, 0x64, 0x69,
0x72, 0x65, 0x63, 0x84, 0x00, 0x32, 0x28, 0x69, 0x66, 0x13,
0x00, 0x01, 0xe2, 0x01, 0x51, 0x6c, 0x65, 0x67, 0x61, 0x6c,
0xa8, 0x00, 0x10, 0x29, 0xd5, 0x00, 0x41, 0x28, 0x41, 0x6c,
0x6c, 0x3c, 0x00, 0x11, 0x61, 0x2d, 0x00, 0x92, 0x73, 0x00,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x33, 0x04, 0x13,
0x73, 0x43, 0x00, 0x31, 0x32, 0x2e, 0x31, 0x8a, 0x01, 0x01,
0xfb, 0x00, 0x05, 0x55, 0x01, 0x22, 0x2e, 0x29, 0x1b, 0x03,
0x12, 0x32, 0x1b, 0x03, 0x92, 0x70, 0x61, 0x72, 0x61, 0x6d,
0x65, 0x74, 0x65, 0x72, 0x1d, 0x03, 0x56, 0x68, 0x65, 0x73,
0x65, 0x00, 0x14, 0x00, 0x02, 0x40, 0x00, 0x06, 0x90, 0x01,
0x04, 0xb5, 0x02, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6e, 0x00,
0x03, 0x31, 0x04, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0xaa, 0x00, 0xf1, 0x04, 0x57,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x69, 0x67,
0x68, 0x74, 0x00, 0x00, 0x00, 0x53, 0x69, 0x7a, 0xcc, 0x03,
0x36, 0x67, 0x72, 0x69, 0xdf, 0x04, 0x00, 0x29, 0x00, 0x10,
0x42, 0x5f, 0x01, 0x93, 0x20, 0x74, 0x79, 0x70, 0x65, 0x00,
0x00, 0x00, 0x43, 0xb0, 0x03, 0x41, 0x00, 0x77, 0x68, 0x65,
0x81, 0x04, 0x00, 0xde, 0x01, 0x00, 0x8b, 0x00, 0x45, 0x67,
0x69, 0x76, 0x65, 0x0b, 0x05, 0x00, 0x48, 0x00, 0x70, 0x61,
0x00, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x0e, 0x00, 0x50, 0x73,
0x68, 0x61, 0x70, 0x65, 0xd8, 0x04, 0xf3, 0x04, 0x61, 0x00,
0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x6c, 0x79, 0x00, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x1e, 0x00, 0x10,
0x2e, 0xe1, 0x00, 0x01, 0x8a, 0x03, 0x0a, 0x36, 0x00, 0x08,
0x71, 0x03, 0x61, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x1d,
0x03, 0x10, 0x72, 0xe9, 0x00, 0xf1, 0x09, 0x72, 0x6f, 0x73,
0x73, 0x27, 0x00, 0x28, 0x69, 0x6e, 0x00, 0x76, 0x61, 0x72,
0x69, 0x6f, 0x75, 0x73, 0x00, 0x73, 0x69, 0x7a, 0x65, 0x73,
0x29, 0xba, 0x02, 0x92, 0x60, 0x4f, 0x63, 0x74, 0x61, 0x67,
0x6f, 0x6e, 0x27, 0x5a, 0x00, 0x41, 0x37, 0x78, 0x37, 0x00,
0x31, 0x00, 0x01, 0x23, 0x05, 0x00, 0x6b, 0x00, 0x31, 0x72,
0x61, 0x64, 0x54, 0x02, 0xa3, 0x61, 0x6c, 0x00, 0x45, 0x6e,
0x67, 0x6c, 0x69, 0x73, 0x68, 0xbc, 0x00, 0x62, 0x6c, 0x61,
0x79, 0x6f, 0x75, 0x74, 0x37, 0x00, 0x03, 0x45, 0x00, 0x0f,
0x35, 0x00, 0x01, 0x60, 0x46, 0x72, 0x65, 0x6e, 0x63, 0x68,
0x02, 0x05, 0x50, 0x2e, 0x00, 0x53, 0x65, 0x6c, 0xda, 0x01,
0x51, 0x6e, 0x67, 0x00, 0x60, 0x52, 0xe1, 0x00, 0x12, 0x27,
0x4a, 0x02, 0x00, 0x15, 0x01, 0x02, 0x22, 0x01, 0x61, 0x00,
0x64, 0x69, 0x66, 0x66, 0x65, 0xb0, 0x04, 0x26, 0x62, 0x6f,
0x14, 0x01, 0xc0, 0x65, 0x76, 0x65, 0x72, 0x79, 0x00, 0x74,
0x69, 0x6d, 0x65, 0x00, 0x28, 0xab, 0x05, 0x61, 0x61, 0x6c,
0x77, 0x61, 0x79, 0x73, 0x57, 0x05, 0x04, 0x63, 0x02, 0x02,
0x89, 0x05, 0x51, 0x74, 0x6f, 0x00, 0x68, 0x61, 0x0c, 0x03,
0xb0, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x29,
0x2e, 0x00,
};
const unsigned short help_text_len = 1689;
const unsigned short help_text_words = 318;
const unsigned short help_text_len = 1734;
const unsigned short help_text_words = 326;
const char quick_help_text[] = "Jump pegs over each other to remove all but one.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,157 +6,168 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 212, TEXT_CENTER | C_RED },
{ 245, TEXT_UNDERLINE },
{ 339, TEXT_CENTER | C_RED },
{ 356, TEXT_UNDERLINE },
{ 213, TEXT_CENTER | C_RED },
{ 246, TEXT_UNDERLINE },
{ 340, TEXT_CENTER | C_RED },
{ 357, TEXT_UNDERLINE },
{ 358, TEXT_UNDERLINE },
{ 368, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 2036 comp 1387 ratio 0.681238 level 4 saved 649 */
/* orig 2223 comp 1486 ratio 0.668466 level 10 saved 737 */
const char help_text[] = {
0xf4, 0x26, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x35, 0x3a, 0x20, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x3b,
0x00, 0x73, 0x6f, 0x6d, 0x65, 0x0e, 0x00, 0xf0, 0x02, 0x00,
0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6e, 0x75,
0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x3a, 0x00, 0xf0, 0x00,
0x72, 0x00, 0x6a, 0x6f, 0x62, 0x00, 0x69, 0x73, 0x00, 0x74,
0x6f, 0x00, 0x63, 0x6f, 0x6c, 0x11, 0x00, 0x01, 0x34, 0x00,
0x56, 0x6f, 0x66, 0x00, 0x74, 0x68, 0x3b, 0x00, 0xf3, 0x28,
0x62, 0x6c, 0x61, 0x63, 0x6b, 0x2c, 0x00, 0x73, 0x75, 0x63,
0x68, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x73, 0x65, 0x76,
0x65, 0x72, 0x61, 0x6c, 0x00, 0x63, 0x72, 0x69, 0x74, 0x65,
0x72, 0x69, 0x61, 0x00, 0x61, 0x72, 0x65, 0x00, 0x73, 0x61,
0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x64, 0x3a, 0x00, 0x00,
0x00, 0x2d, 0x00, 0x6e, 0x6f, 0x40, 0x00, 0x73, 0x00, 0x77,
0x69, 0x74, 0x68, 0x00, 0x61, 0x79, 0x00, 0x00, 0x6e, 0x00,
0x02, 0x6b, 0x00, 0x22, 0x65, 0x64, 0x59, 0x00, 0x14, 0x2e,
0x2f, 0x00, 0x32, 0x74, 0x77, 0x6f, 0x12, 0x00, 0x05, 0x79,
0x00, 0x00, 0x3e, 0x00, 0xf0, 0x00, 0x61, 0x64, 0x6a, 0x61,
0x63, 0x65, 0x6e, 0x74, 0x00, 0x28, 0x68, 0x6f, 0x72, 0x69,
0x7a, 0xc6, 0x00, 0xd0, 0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x72,
0x00, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00, 0x12,
0x29, 0x44, 0x00, 0x71, 0x66, 0x6f, 0x72, 0x00, 0x61, 0x6e,
0x79, 0x49, 0x00, 0x45, 0x77, 0x68, 0x69, 0x74, 0xc2, 0x00,
0x10, 0x2c, 0xcf, 0x00, 0x20, 0x72, 0x65, 0x7c, 0x00, 0xe0,
0x61, 0x00, 0x70, 0x61, 0x74, 0x68, 0x00, 0x62, 0x65, 0x74,
0x77, 0x65, 0x65, 0x6e, 0x18, 0x00, 0xca, 0x6d, 0x00, 0x75,
0x73, 0x69, 0x6e, 0x67, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x37,
0x00, 0x06, 0x56, 0x00, 0x4f, 0x65, 0x61, 0x63, 0x68, 0xcf,
0x00, 0x02, 0x12, 0x2c, 0x11, 0x01, 0x03, 0xdc, 0x00, 0x71,
0x64, 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x3d, 0x01, 0x54,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x19, 0x00, 0x2a, 0x6f, 0x66,
0x5a, 0x00, 0x20, 0x00, 0x72, 0x52, 0x00, 0x93, 0x61, 0x62,
0x6c, 0x65, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x56, 0x01, 0x02,
0x60, 0x00, 0x20, 0x67, 0x6f, 0x8e, 0x00, 0xf1, 0x03, 0x69,
0x6e, 0x00, 0x61, 0x00, 0x73, 0x74, 0x72, 0x61, 0x69, 0x67,
0x68, 0x74, 0x00, 0x6c, 0x69, 0x6e, 0x65, 0x13, 0x00, 0x36,
0x6e, 0x79, 0x00, 0x07, 0x01, 0x08, 0x05, 0x01, 0xf0, 0x06,
0x00, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x00, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x00, 0x68, 0x69, 0x74,
0x74, 0x49, 0x00, 0x51, 0x61, 0x00, 0x77, 0x61, 0x6c, 0x2b,
0x00, 0x19, 0x61, 0x5e, 0x01, 0x17, 0x3b, 0xe3, 0x01, 0x02,
0xd4, 0x00, 0x00, 0x10, 0x00, 0x06, 0xa5, 0x01, 0x80, 0x69,
0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x77, 0x00, 0x06,
0xd0, 0x00, 0x51, 0x28, 0x6f, 0x6e, 0x63, 0x65, 0x6f, 0x01,
0xf4, 0x00, 0x46, 0x6f, 0x72, 0x00, 0x69, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x2c, 0x00, 0x61, 0x4a, 0x00, 0x03,
0x67, 0x02, 0x00, 0x7a, 0x00, 0x07, 0x50, 0x00, 0x82, 0x6f,
0x6e, 0x65, 0x00, 0x6d, 0x75, 0x73, 0x74, 0xab, 0x02, 0x10,
0x66, 0x69, 0x02, 0x0b, 0xea, 0x01, 0xf1, 0x04, 0x73, 0x00,
0x69, 0x74, 0x73, 0x00, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62,
0x6f, 0x75, 0x72, 0x73, 0x00, 0x62, 0x79, 0x41, 0x00, 0x44,
0x6c, 0x61, 0x73, 0x74, 0x68, 0x02, 0x70, 0x6f, 0x6e, 0x3b,
0x00, 0x62, 0x75, 0x74, 0x18, 0x00, 0xe1, 0x6e, 0x00, 0x69,
0x74, 0x27, 0x73, 0x00, 0x69, 0x6d, 0x70, 0x6f, 0x73, 0x73,
0x69, 0x48, 0x01, 0x00, 0x90, 0x00, 0x10, 0x74, 0xca, 0x02,
0x11, 0x62, 0x86, 0x00, 0x60, 0x6e, 0x65, 0x63, 0x74, 0x65,
0x64, 0x10, 0x00, 0x00, 0x35, 0x01, 0x79, 0x6f, 0x75, 0x74,
0x73, 0x69, 0x64, 0x65, 0x86, 0x01, 0x10, 0x2c, 0x0e, 0x00,
0x84, 0x63, 0x68, 0x00, 0x76, 0x69, 0x6f, 0x6c, 0x61, 0xb7,
0x01, 0x51, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x37, 0x00, 0x0a,
0x7a, 0x00, 0x49, 0x2e, 0x00, 0x53, 0x6f, 0xd4, 0x02, 0x25,
0x6c, 0x6c, 0x53, 0x03, 0x0a, 0xe9, 0x00, 0x00, 0x1d, 0x01,
0x61, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x94, 0x00, 0xa0,
0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c,
0xdb, 0x01, 0x11, 0x65, 0x6c, 0x03, 0x60, 0x4e, 0x69, 0x6b,
0x6f, 0x6c, 0x69, 0x80, 0x00, 0x12, 0x6f, 0x12, 0x01, 0xa0,
0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x00,
0xd0, 0x02, 0x00, 0x75, 0x01, 0xd2, 0x74, 0x00, 0x60, 0x4b,
0x75, 0x72, 0x6f, 0x64, 0x6f, 0x6b, 0x6f, 0x27, 0x2c, 0x0c,
0x00, 0x50, 0x6d, 0x61, 0x73, 0x75, 0x27, 0xc9, 0x01, 0x24,
0x60, 0x57, 0xce, 0x02, 0x11, 0x42, 0x45, 0x01, 0xc0, 0x43,
0x65, 0x6c, 0x6c, 0x73, 0x27, 0x2e, 0x00, 0x5b, 0x31, 0x38,
0x5d, 0x7e, 0x00, 0x01, 0x1d, 0x04, 0x32, 0x00, 0x77, 0x61,
0xf5, 0x03, 0x43, 0x72, 0x69, 0x62, 0x75, 0x0a, 0x01, 0x22,
0x74, 0x68, 0x7e, 0x03, 0x13, 0x6c, 0x2a, 0x02, 0xf0, 0x01,
0x62, 0x79, 0x00, 0x4a, 0x6f, 0x6e, 0x61, 0x73, 0x00, 0x4b,
0x6f, 0x65, 0x6c, 0x6b, 0x65, 0x72, 0x3d, 0x00, 0x00, 0x45,
0x00, 0xd1, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
0x77, 0x77, 0x77, 0x2e, 0x6e, 0xac, 0x00, 0xa2, 0x2e, 0x63,
0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0xcb, 0x00,
0x30, 0x73, 0x2f, 0x77, 0x84, 0x00, 0x41, 0x5f, 0x69, 0x73,
0x5f, 0xc9, 0x01, 0x20, 0x5f, 0x63, 0x84, 0x00, 0xc3, 0x2e,
0x68, 0x74, 0x6d, 0x6c, 0x00, 0x00, 0x00, 0x33, 0x35, 0x2e,
0x31, 0xa3, 0x04, 0x01, 0x82, 0x00, 0x30, 0x6f, 0x6c, 0x73,
0xac, 0x04, 0x56, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x6c, 0x02,
0x40, 0x6c, 0x65, 0x66, 0x74, 0xd0, 0x01, 0x30, 0x74, 0x6f,
0x6e, 0x9d, 0x00, 0x56, 0x70, 0x61, 0x69, 0x6e, 0x74, 0x49,
0x02, 0x03, 0x75, 0x04, 0x26, 0x6f, 0x72, 0x31, 0x00, 0x11,
0x72, 0x0c, 0x03, 0x06, 0x32, 0x00, 0x6b, 0x6d, 0x61, 0x72,
0x6b, 0x00, 0x61, 0x98, 0x03, 0x21, 0x64, 0x6f, 0x05, 0x02,
0x82, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5b,
0x03, 0x32, 0x79, 0x6f, 0x75, 0xa4, 0x04, 0x10, 0x75, 0x38,
0x01, 0xc0, 0x74, 0x00, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64,
0x00, 0x6e, 0x6f, 0x74, 0x2e, 0x02, 0x01, 0x7a, 0x00, 0x06,
0x8f, 0x04, 0x50, 0x52, 0x65, 0x70, 0x65, 0x61, 0x10, 0x00,
0x10, 0x63, 0xb0, 0x00, 0x00, 0xca, 0x02, 0x01, 0x5b, 0x00,
0x20, 0x65, 0x69, 0x45, 0x04, 0x04, 0x7f, 0x00, 0x02, 0x01,
0x02, 0x48, 0x79, 0x63, 0x6c, 0x65, 0x48, 0x03, 0x62, 0x74,
0x68, 0x72, 0x6f, 0x75, 0x67, 0xae, 0x00, 0x65, 0x74, 0x68,
0x72, 0x65, 0x65, 0x00, 0xa0, 0x02, 0x21, 0x73, 0x74, 0x64,
0x02, 0x30, 0x28, 0x66, 0x69, 0xe1, 0x01, 0x10, 0x2c, 0xa8,
0x00, 0x00, 0x64, 0x00, 0x00, 0x5d, 0x04, 0x50, 0x6d, 0x70,
0x74, 0x79, 0x29, 0x68, 0x03, 0x50, 0x6f, 0x70, 0x70, 0x6f,
0x73, 0xa1, 0x02, 0x05, 0xcd, 0x03, 0x23, 0x73, 0x2e, 0xe4,
0x05, 0xb2, 0x63, 0x61, 0x6e, 0x00, 0x61, 0x6c, 0x73, 0x6f,
0x00, 0x75, 0x73, 0x72, 0x00, 0xa1, 0x63, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x53, 0x02, 0x20, 0x6d,
0x6f, 0x04, 0x06, 0x51, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1f,
0x00, 0x01, 0x0d, 0x06, 0x05, 0xc8, 0x04, 0x41, 0x50, 0x72,
0x65, 0x73, 0xe5, 0x04, 0x94, 0x52, 0x65, 0x74, 0x75, 0x72,
0x6e, 0x00, 0x64, 0x6f, 0xef, 0x02, 0x30, 0x61, 0x6d, 0x65,
0x7d, 0x03, 0x0a, 0xeb, 0x00, 0x0b, 0x9e, 0x01, 0x01, 0x29,
0x03, 0x44, 0x6c, 0x65, 0x00, 0x70, 0x46, 0x00, 0x5e, 0x53,
0x70, 0x61, 0x63, 0x65, 0x45, 0x00, 0x1a, 0x61, 0xa2, 0x01,
0x01, 0x54, 0x00, 0x59, 0x2e, 0x00, 0x4d, 0x6f, 0x76, 0x59,
0x00, 0x08, 0xb9, 0x00, 0x02, 0x58, 0x00, 0x41, 0x68, 0x6f,
0x6c, 0x64, 0x57, 0x00, 0x42, 0x68, 0x69, 0x66, 0x74, 0x5a,
0x01, 0x22, 0x70, 0x6c, 0x62, 0x00, 0x21, 0x74, 0x73, 0xf7,
0x04, 0x25, 0x6c, 0x6c, 0x2a, 0x04, 0x01, 0xd0, 0x01, 0x00,
0x6c, 0x01, 0x00, 0xf2, 0x00, 0x14, 0x64, 0x72, 0x01, 0x00,
0x27, 0x01, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x62, 0x00, 0x12,
0x61, 0x3b, 0x01, 0x82, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72,
0x69, 0x62, 0xc4, 0x04, 0x13, 0x73, 0xf4, 0x02, 0x32, 0x32,
0x2e, 0x31, 0x58, 0x06, 0x00, 0x4d, 0x01, 0x50, 0x61, 0x76,
0x61, 0x69, 0x6c, 0x87, 0x05, 0x22, 0x2e, 0x29, 0xb7, 0x02,
0x13, 0x32, 0xb7, 0x02, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d,
0x65, 0x74, 0x65, 0x72, 0xb9, 0x02, 0x66, 0x54, 0x68, 0x65,
0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x41, 0x00, 0x04, 0x3c,
0x00, 0x04, 0xc3, 0x05, 0xf1, 0x01, 0x65, 0x00, 0x60, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00,
0x6f, 0x70, 0x6f, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xa0,
0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75,
0xab, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x65, 0x30, 0x01, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a,
0x76, 0x07, 0x01, 0xb6, 0x01, 0x00, 0xad, 0x00, 0x80, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x2e, 0x00,
0x00, 0x2d, 0x01, 0x00, 0xf4, 0x14, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x3b, 0x00, 0x73, 0x6f, 0x6d,
0x65, 0x0e, 0x00, 0xf0, 0x02, 0x00, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x73, 0x2e, 0x3a, 0x00, 0xf0, 0x00, 0x72, 0x00, 0x6a, 0x6f,
0x62, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x63, 0x6f,
0x6c, 0x11, 0x00, 0x01, 0x34, 0x00, 0x56, 0x6f, 0x66, 0x00,
0x74, 0x68, 0x3b, 0x00, 0xf3, 0x28, 0x62, 0x6c, 0x61, 0x63,
0x6b, 0x2c, 0x00, 0x73, 0x75, 0x63, 0x68, 0x00, 0x74, 0x68,
0x61, 0x74, 0x00, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c,
0x00, 0x63, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x00,
0x61, 0x72, 0x65, 0x00, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66,
0x69, 0x65, 0x64, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x6e,
0x6f, 0x40, 0x00, 0x73, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00,
0x61, 0x79, 0x00, 0x00, 0x6e, 0x00, 0x02, 0x6b, 0x00, 0x22,
0x65, 0x64, 0x59, 0x00, 0x14, 0x2e, 0x2f, 0x00, 0x32, 0x74,
0x77, 0x6f, 0x12, 0x00, 0x05, 0x79, 0x00, 0x00, 0x3e, 0x00,
0xf0, 0x00, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74,
0x00, 0x28, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0xc6, 0x00, 0xd0,
0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x72, 0x00, 0x76, 0x65, 0x72,
0x74, 0x69, 0x63, 0x0e, 0x00, 0x12, 0x29, 0x44, 0x00, 0x71,
0x66, 0x6f, 0x72, 0x00, 0x61, 0x6e, 0x79, 0x49, 0x00, 0x45,
0x77, 0x68, 0x69, 0x74, 0xc2, 0x00, 0x10, 0x2c, 0xcf, 0x00,
0x20, 0x72, 0x65, 0x7c, 0x00, 0xe0, 0x61, 0x00, 0x70, 0x61,
0x74, 0x68, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e,
0x18, 0x00, 0xca, 0x6d, 0x00, 0x75, 0x73, 0x69, 0x6e, 0x67,
0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x37, 0x00, 0x06, 0x56, 0x00,
0x4f, 0x65, 0x61, 0x63, 0x68, 0xcf, 0x00, 0x02, 0x12, 0x2c,
0x11, 0x01, 0x03, 0xdc, 0x00, 0x71, 0x64, 0x65, 0x6e, 0x6f,
0x74, 0x65, 0x73, 0x3d, 0x01, 0x54, 0x74, 0x6f, 0x74, 0x61,
0x6c, 0x19, 0x00, 0x2a, 0x6f, 0x66, 0x5a, 0x00, 0x20, 0x00,
0x72, 0x52, 0x00, 0x93, 0x61, 0x62, 0x6c, 0x65, 0x00, 0x66,
0x72, 0x6f, 0x6d, 0x56, 0x01, 0x02, 0x60, 0x00, 0x20, 0x67,
0x6f, 0x8e, 0x00, 0xf1, 0x03, 0x69, 0x6e, 0x00, 0x61, 0x00,
0x73, 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, 0x00, 0x6c,
0x69, 0x6e, 0x65, 0x13, 0x00, 0x36, 0x6e, 0x79, 0x00, 0x07,
0x01, 0x08, 0x05, 0x01, 0xf0, 0x06, 0x00, 0x64, 0x69, 0x72,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x75, 0x6e, 0x74,
0x69, 0x6c, 0x00, 0x68, 0x69, 0x74, 0x74, 0x49, 0x00, 0x51,
0x61, 0x00, 0x77, 0x61, 0x6c, 0x2b, 0x00, 0x19, 0x61, 0x5e,
0x01, 0x17, 0x3b, 0xe3, 0x01, 0x02, 0xd4, 0x00, 0x00, 0x10,
0x00, 0x06, 0xa5, 0x01, 0x80, 0x69, 0x6e, 0x63, 0x6c, 0x75,
0x64, 0x65, 0x64, 0x77, 0x00, 0x06, 0xd0, 0x00, 0x51, 0x28,
0x6f, 0x6e, 0x63, 0x65, 0x6f, 0x01, 0xf4, 0x00, 0x46, 0x6f,
0x72, 0x00, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x2c, 0x00, 0x61, 0x4a, 0x00, 0x03, 0x67, 0x02, 0x00, 0x7a,
0x00, 0x07, 0x50, 0x00, 0x82, 0x6f, 0x6e, 0x65, 0x00, 0x6d,
0x75, 0x73, 0x74, 0xab, 0x02, 0x10, 0x66, 0x69, 0x02, 0x0b,
0xea, 0x01, 0xf1, 0x04, 0x73, 0x00, 0x69, 0x74, 0x73, 0x00,
0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x73,
0x00, 0x62, 0x79, 0x41, 0x00, 0x44, 0x6c, 0x61, 0x73, 0x74,
0x68, 0x02, 0x70, 0x6f, 0x6e, 0x3b, 0x00, 0x62, 0x75, 0x74,
0x18, 0x00, 0xe1, 0x6e, 0x00, 0x69, 0x74, 0x27, 0x73, 0x00,
0x69, 0x6d, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x48, 0x01, 0x00,
0x90, 0x00, 0x10, 0x74, 0xca, 0x02, 0x11, 0x62, 0x86, 0x00,
0x60, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x00, 0x00,
0x35, 0x01, 0x79, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65,
0x86, 0x01, 0x10, 0x2c, 0x0e, 0x00, 0x84, 0x63, 0x68, 0x00,
0x76, 0x69, 0x6f, 0x6c, 0x61, 0xb7, 0x01, 0x51, 0x73, 0x65,
0x63, 0x6f, 0x6e, 0x37, 0x00, 0x0a, 0x7a, 0x00, 0x49, 0x2e,
0x00, 0x53, 0x6f, 0xd4, 0x02, 0x25, 0x6c, 0x6c, 0x53, 0x03,
0x0a, 0xe9, 0x00, 0x00, 0x1d, 0x01, 0x61, 0x43, 0x72, 0x65,
0x64, 0x69, 0x74, 0x94, 0x00, 0xa0, 0x74, 0x68, 0x69, 0x73,
0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0xdb, 0x01, 0x11, 0x65,
0x6c, 0x03, 0x60, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x80,
0x00, 0x12, 0x6f, 0x12, 0x01, 0xa0, 0x76, 0x61, 0x72, 0x69,
0x6f, 0x75, 0x73, 0x6c, 0x79, 0x00, 0xd0, 0x02, 0x20, 0x65,
0x64, 0xca, 0x00, 0xb2, 0x60, 0x4b, 0x75, 0x72, 0x6f, 0x64,
0x6f, 0x6b, 0x6f, 0x27, 0x2c, 0x0c, 0x00, 0x50, 0x6d, 0x61,
0x73, 0x75, 0x27, 0xc9, 0x01, 0x24, 0x60, 0x57, 0xce, 0x02,
0x11, 0x42, 0x45, 0x01, 0xc0, 0x43, 0x65, 0x6c, 0x6c, 0x73,
0x27, 0x2e, 0x00, 0x5b, 0x31, 0x38, 0x5d, 0x7e, 0x00, 0x01,
0x2f, 0x04, 0x32, 0x00, 0x77, 0x61, 0xf5, 0x03, 0x43, 0x72,
0x69, 0x62, 0x75, 0x0a, 0x01, 0x22, 0x74, 0x68, 0x7e, 0x03,
0x13, 0x6c, 0x2a, 0x02, 0xf0, 0x01, 0x62, 0x79, 0x00, 0x4a,
0x6f, 0x6e, 0x61, 0x73, 0x00, 0x4b, 0x6f, 0x65, 0x6c, 0x6b,
0x65, 0x72, 0x3d, 0x00, 0x00, 0x45, 0x00, 0xe1, 0x00, 0x68,
0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77,
0x2e, 0x6e, 0xad, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a,
0x70, 0x2f, 0x65, 0x6e, 0x2f, 0xcc, 0x00, 0x33, 0x73, 0x2f,
0x6b, 0x9f, 0x00, 0x83, 0x2f, 0x00, 0x00, 0x00, 0x33, 0x35,
0x2e, 0x31, 0xa6, 0x04, 0x01, 0x73, 0x00, 0x40, 0x6f, 0x6c,
0x73, 0x20, 0x07, 0x01, 0x46, 0x6c, 0x69, 0x63, 0x6b, 0x5d,
0x02, 0x40, 0x6c, 0x65, 0x66, 0x74, 0xc1, 0x01, 0x30, 0x74,
0x6f, 0x6e, 0x8e, 0x00, 0x56, 0x70, 0x61, 0x69, 0x6e, 0x74,
0x3a, 0x02, 0x03, 0x66, 0x04, 0x26, 0x6f, 0x72, 0x31, 0x00,
0x11, 0x72, 0xfd, 0x02, 0x06, 0x32, 0x00, 0x6b, 0x6d, 0x61,
0x72, 0x6b, 0x00, 0x61, 0x89, 0x03, 0x21, 0x64, 0x6f, 0xf6,
0x01, 0x82, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65,
0x4c, 0x03, 0x32, 0x79, 0x6f, 0x75, 0x95, 0x04, 0x30, 0x75,
0x72, 0x65, 0x4d, 0x01, 0xa0, 0x73, 0x68, 0x6f, 0x75, 0x6c,
0x64, 0x00, 0x6e, 0x6f, 0x74, 0x1f, 0x02, 0x01, 0x7a, 0x00,
0x06, 0x80, 0x04, 0x50, 0x52, 0x65, 0x70, 0x65, 0x61, 0x10,
0x00, 0x10, 0x63, 0xb0, 0x00, 0x00, 0xbb, 0x02, 0x01, 0x5b,
0x00, 0x20, 0x65, 0x69, 0x36, 0x04, 0x04, 0x7f, 0x00, 0x02,
0xf2, 0x01, 0x48, 0x79, 0x63, 0x6c, 0x65, 0x39, 0x03, 0x72,
0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x22, 0x03, 0x55,
0x68, 0x72, 0x65, 0x65, 0x00, 0x91, 0x02, 0x21, 0x73, 0x74,
0x55, 0x02, 0x30, 0x28, 0x66, 0x69, 0xd2, 0x01, 0x10, 0x2c,
0xa8, 0x00, 0x00, 0x64, 0x00, 0x00, 0x4e, 0x04, 0x50, 0x6d,
0x70, 0x74, 0x79, 0x29, 0x59, 0x03, 0x50, 0x6f, 0x70, 0x70,
0x6f, 0x73, 0x92, 0x02, 0x05, 0xbe, 0x03, 0x23, 0x73, 0x2e,
0xd5, 0x05, 0xb2, 0x63, 0x61, 0x6e, 0x00, 0x61, 0x6c, 0x73,
0x6f, 0x00, 0x75, 0x73, 0x72, 0x00, 0xb1, 0x63, 0x75, 0x72,
0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x0c, 0x01,
0x10, 0x6f, 0xf5, 0x05, 0x51, 0x72, 0x6f, 0x75, 0x6e, 0x64,
0x1f, 0x00, 0x01, 0xfe, 0x05, 0x05, 0xb9, 0x04, 0x41, 0x50,
0x72, 0x65, 0x73, 0xd6, 0x04, 0x94, 0x52, 0x65, 0x74, 0x75,
0x72, 0x6e, 0x00, 0x64, 0x6f, 0xe0, 0x02, 0x30, 0x61, 0x6d,
0x65, 0x6e, 0x03, 0x0a, 0xeb, 0x00, 0x0b, 0x9e, 0x01, 0x01,
0x1a, 0x03, 0x44, 0x6c, 0x65, 0x00, 0x70, 0x46, 0x00, 0x5e,
0x53, 0x70, 0x61, 0x63, 0x65, 0x45, 0x00, 0x1a, 0x61, 0xa2,
0x01, 0x01, 0x54, 0x00, 0x59, 0x2e, 0x00, 0x4d, 0x6f, 0x76,
0x59, 0x00, 0x08, 0xb9, 0x00, 0x02, 0x58, 0x00, 0x41, 0x68,
0x6f, 0x6c, 0x64, 0x57, 0x00, 0x42, 0x68, 0x69, 0x66, 0x74,
0x5a, 0x01, 0x22, 0x70, 0x6c, 0x62, 0x00, 0x21, 0x74, 0x73,
0xe8, 0x04, 0x25, 0x6c, 0x6c, 0x1b, 0x04, 0x01, 0xd0, 0x01,
0x00, 0x6c, 0x01, 0x00, 0xf2, 0x00, 0x14, 0x64, 0x72, 0x01,
0x00, 0x27, 0x01, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x62, 0x00,
0x12, 0x61, 0x3b, 0x01, 0x82, 0x00, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0xb5, 0x04, 0x13, 0x73, 0xe5, 0x02, 0x32,
0x32, 0x2e, 0x31, 0x49, 0x06, 0x00, 0x4d, 0x01, 0x50, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x78, 0x05, 0x22, 0x2e, 0x29, 0xb7,
0x02, 0x13, 0x32, 0xb7, 0x02, 0x91, 0x70, 0x61, 0x72, 0x61,
0x6d, 0x65, 0x74, 0x65, 0x72, 0xb9, 0x02, 0x66, 0x54, 0x68,
0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x41, 0x00, 0x04,
0x3c, 0x00, 0x04, 0xb4, 0x05, 0xf1, 0x01, 0x65, 0x00, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27,
0x00, 0x6f, 0x70, 0x6f, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00,
0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e,
0x75, 0xab, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c,
0x00, 0x48, 0x65, 0x30, 0x01, 0x51, 0x00, 0x00, 0x53, 0x69,
0x7a, 0x67, 0x07, 0x01, 0xb6, 0x01, 0x28, 0x69, 0x6e, 0x72,
0x06, 0x43, 0x33, 0x35, 0x2e, 0x33, 0x95, 0x00, 0xf1, 0x00,
0x75, 0x73, 0x65, 0x72, 0x20, 0x70, 0x72, 0x65, 0x66, 0x65,
0x72, 0x65, 0x6e, 0x63, 0x65, 0x9b, 0x00, 0x20, 0x4f, 0x6e,
0x2c, 0x01, 0x63, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x38,
0x06, 0x70, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x00, 0x2e,
0x00, 0x17, 0x00, 0x2e, 0x00, 0x12, 0x2c, 0x89, 0x00, 0x16,
0x50, 0x12, 0x00, 0x0d, 0xa5, 0x00, 0x33, 0x47, 0x61, 0x6d,
0xa5, 0x00, 0x02, 0x86, 0x01, 0x22, 0x6c, 0x65, 0x3b, 0x03,
0x60, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3c, 0x03, 0x02,
0x23, 0x05, 0x46, 0x77, 0x61, 0x79, 0x00, 0x6b, 0x02, 0x20,
0x6d, 0x6f, 0x94, 0x02, 0x02, 0xf5, 0x01, 0x80, 0x73, 0x00,
0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x00,
};
const unsigned short help_text_len = 2036;
const unsigned short help_text_words = 365;
const unsigned short help_text_len = 2223;
const unsigned short help_text_words = 395;
const char quick_help_text[] = "Place black squares to limit the visible distance from each numbered cell.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,257 +6,256 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 144, TEXT_CENTER | C_RED },
{ 311, TEXT_CENTER | C_RED },
{ 328, TEXT_UNDERLINE },
{ 329, TEXT_UNDERLINE },
{ 339, TEXT_UNDERLINE },
{ 381, TEXT_UNDERLINE },
{ 512, TEXT_UNDERLINE },
{ 537, TEXT_UNDERLINE },
{ 582, TEXT_UNDERLINE },
{ 142, TEXT_CENTER | C_RED },
{ 309, TEXT_CENTER | C_RED },
{ 326, TEXT_UNDERLINE },
{ 327, TEXT_UNDERLINE },
{ 337, TEXT_UNDERLINE },
{ 379, TEXT_UNDERLINE },
{ 510, TEXT_UNDERLINE },
{ 535, TEXT_UNDERLINE },
{ 580, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 3535 comp 2341 ratio 0.662235 level 10 saved 1194 */
/* orig 3536 comp 2332 ratio 0.659502 level 10 saved 1204 */
const char help_text[] = {
0xf0, 0x50, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x09, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x38, 0x3a, 0x20, 0x52, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67,
0x6c, 0x65, 0x73, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75,
0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72,
0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61,
0x72, 0x65, 0x73, 0x2c, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x00, 0x77, 0x72,
0x69, 0x74, 0x74, 0x65, 0x6e, 0x00, 0x69, 0x6e, 0x00, 0x73,
0x6f, 0x6d, 0x65, 0x00, 0x28, 0x62, 0x75, 0x74, 0x00, 0x6e,
0x6f, 0x74, 0x00, 0x61, 0x6c, 0x6c, 0x29, 0x37, 0x00, 0x34,
0x74, 0x68, 0x65, 0x3b, 0x00, 0x10, 0x2e, 0x57, 0x00, 0xf1,
0x07, 0x72, 0x00, 0x74, 0x61, 0x73, 0x6b, 0x00, 0x69, 0x73,
0x00, 0x74, 0x6f, 0x00, 0x73, 0x75, 0x62, 0x64, 0x69, 0x76,
0x69, 0x64, 0x65, 0x27, 0x00, 0x01, 0x6a, 0x00, 0x65, 0x69,
0x6e, 0x74, 0x6f, 0x00, 0x72, 0x8d, 0x00, 0x00, 0x43, 0x00,
0xb0, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x73,
0x69, 0x7a, 0x80, 0x00, 0xf6, 0x04, 0x73, 0x75, 0x63, 0x68,
0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x28, 0x61, 0x29, 0x00,
0x65, 0x76, 0x65, 0x72, 0x79, 0x31, 0x00, 0xf3, 0x06, 0x00,
0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x00, 0x65,
0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x00, 0x6f, 0x6e, 0x65,
0xae, 0x00, 0x23, 0x65, 0x64, 0x8a, 0x00, 0x91, 0x2c, 0x00,
0x61, 0x6e, 0x64, 0x00, 0x28, 0x62, 0x29, 0x77, 0x00, 0x40,
0x61, 0x72, 0x65, 0x61, 0x67, 0x00, 0x47, 0x65, 0x61, 0x63,
0x68, 0x49, 0x00, 0x80, 0x69, 0x73, 0x00, 0x65, 0x71, 0x75,
0x61, 0x6c, 0xa8, 0x00, 0x24, 0x74, 0x68, 0x44, 0x00, 0x08,
0xf1, 0x00, 0x3c, 0x69, 0x74, 0x73, 0x5a, 0x00, 0xf4, 0x0e,
0x2e, 0x00, 0x00, 0x00, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74,
0x00, 0x66, 0x6f, 0x72, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00,
0x67, 0x61, 0x6d, 0x65, 0x00, 0x67, 0x6f, 0x65, 0x73, 0x4a,
0x00, 0xf0, 0x18, 0x4a, 0x61, 0x70, 0x61, 0x6e, 0x65, 0x73,
0x65, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x6d,
0x61, 0x67, 0x61, 0x7a, 0x69, 0x6e, 0x65, 0x00, 0x4e, 0x69,
0x6b, 0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x33, 0x5d, 0x3b, 0x00,
0x49, 0x27, 0x7e, 0x01, 0xf2, 0x14, 0x6c, 0x73, 0x6f, 0x00,
0x73, 0x65, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x50, 0x61, 0x6c,
0x6d, 0x00, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x61, 0x74, 0x00,
0x50, 0x44, 0x00, 0xfa, 0x03, 0x50, 0x61, 0x6c, 0x61, 0x63,
0x65, 0x00, 0x5b, 0x34, 0x5d, 0x2e, 0x00, 0x55, 0x6e, 0x6c,
0x69, 0x6b, 0x65, 0x1a, 0x00, 0x2b, 0x27, 0x73, 0x3c, 0x00,
0x91, 0x2c, 0x00, 0x6d, 0x79, 0x00, 0x76, 0x65, 0x72, 0x73,
0x48, 0x00, 0xf1, 0x0e, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74,
0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x00, 0x72, 0x61, 0x6e,
0x64, 0x6f, 0x6d, 0x99, 0x01, 0x01, 0x8a, 0x01, 0x31, 0x61,
0x6e, 0x79, 0x86, 0x01, 0x50, 0x00, 0x79, 0x6f, 0x75, 0x00,
0x65, 0x00, 0x60, 0x2e, 0x00, 0x54, 0x68, 0x65, 0x00, 0x27,
0x01, 0x30, 0x69, 0x74, 0x79, 0x22, 0x00, 0x03, 0xd3, 0x00,
0x61, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0xe6, 0x01, 0x81,
0x68, 0x65, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x16, 0x02,
0xd0, 0x71, 0x75, 0x69, 0x74, 0x65, 0x00, 0x61, 0x73, 0x00,
0x67, 0x6f, 0x6f, 0x64, 0x08, 0x00, 0xc3, 0x68, 0x61, 0x6e,
0x64, 0x2d, 0x63, 0x72, 0x61, 0x66, 0x74, 0x65, 0x64, 0x3d,
0x00, 0xc0, 0x73, 0x00, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x00,
0x62, 0x65, 0x2c, 0x00, 0x4e, 0x02, 0x21, 0x6f, 0x6e, 0x36,
0x01, 0x21, 0x70, 0x6c, 0x03, 0x02, 0x12, 0x64, 0x7d, 0x00,
0x50, 0x67, 0x65, 0x74, 0x00, 0x61, 0x86, 0x01, 0xf7, 0x02,
0x65, 0x78, 0x68, 0x61, 0x75, 0x73, 0x74, 0x69, 0x62, 0x6c,
0x65, 0x00, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x87, 0x00, 0x70,
0x73, 0x00, 0x74, 0x61, 0x69, 0x6c, 0x6f, 0x9f, 0x01, 0x40,
0x74, 0x6f, 0x00, 0x79, 0x7d, 0x02, 0xc1, 0x6f, 0x77, 0x6e,
0x00, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x08,
0x01, 0x00, 0xb2, 0x01, 0xf1, 0x01, 0x5b, 0x33, 0x5d, 0x00,
0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77,
0x2e, 0x6e, 0x87, 0x01, 0xa3, 0x2e, 0x63, 0x6f, 0x2e, 0x6a,
0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x4d, 0x00, 0xf0, 0x06, 0x2f,
0x73, 0x68, 0x69, 0x6b, 0x61, 0x6b, 0x75, 0x2e, 0x68, 0x74,
0x6d, 0x6c, 0x00, 0x28, 0x62, 0x65, 0x77, 0x61, 0x72, 0x65,
0x6d, 0x00, 0x60, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x29, 0x48,
0x00, 0x12, 0x34, 0x48, 0x00, 0x10, 0x73, 0x49, 0x00, 0xe0,
0x65, 0x62, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65,
0x2e, 0x6f, 0x72, 0x67, 0x10, 0x00, 0xf7, 0x01, 0x2f, 0x32,
0x30, 0x30, 0x34, 0x31, 0x30, 0x32, 0x34, 0x30, 0x30, 0x31,
0x34, 0x35, 0x39, 0x2f, 0x73, 0x00, 0x02, 0x63, 0x00, 0x30,
0x2e, 0x67, 0x72, 0x73, 0x00, 0x02, 0x0d, 0x00, 0x21, 0x2f,
0x73, 0x6e, 0x00, 0xb1, 0x2f, 0x70, 0x61, 0x6c, 0x6d, 0x2f,
0x69, 0x6e, 0x64, 0x65, 0x78, 0x79, 0x00, 0x98, 0x2e, 0x65,
0x6e, 0x00, 0x00, 0x00, 0x38, 0x2e, 0x31, 0xb2, 0x03, 0x00,
0xf5, 0x02, 0x31, 0x72, 0x6f, 0x6c, 0xbb, 0x03, 0x15, 0x54,
0x74, 0x02, 0x92, 0x69, 0x73, 0x00, 0x70, 0x6c, 0x61, 0x79,
0x65, 0x64, 0xb3, 0x03, 0x00, 0x45, 0x01, 0xf0, 0x05, 0x6d,
0x6f, 0x75, 0x73, 0x65, 0x00, 0x6f, 0x72, 0x00, 0x63, 0x75,
0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x02,
0x01, 0xa1, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0xe4, 0x01, 0x41, 0x65, 0x64, 0x67, 0x65, 0xae,
0x02, 0x21, 0x6f, 0x67, 0x0b, 0x03, 0x01, 0x85, 0x01, 0x70,
0x6f, 0x72, 0x00, 0x6f, 0x66, 0x66, 0x2c, 0x08, 0x00, 0x18,
0x6c, 0x2f, 0x00, 0x60, 0x64, 0x00, 0x64, 0x72, 0x61, 0x67,
0x2f, 0x00, 0x40, 0x64, 0x72, 0x61, 0x77, 0x96, 0x01, 0x67,
0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x4c, 0x03, 0x10, 0x28,
0x34, 0x00, 0x44, 0x69, 0x6e, 0x65, 0x29, 0xcd, 0x01, 0x03,
0xeb, 0x03, 0x01, 0x9d, 0x03, 0xc2, 0x67, 0x6f, 0x00, 0x28,
0x72, 0x65, 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x7e, 0x00,
0x40, 0x78, 0x69, 0x73, 0x74, 0x0d, 0x00, 0x00, 0x87, 0x00,
0x11, 0x73, 0xbd, 0x00, 0x22, 0x69, 0x6e, 0xf2, 0x03, 0x05,
0x53, 0x00, 0x73, 0x29, 0x2e, 0x00, 0x52, 0x69, 0x67, 0x68,
0x86, 0x00, 0x02, 0x3a, 0x00, 0x02, 0x89, 0x00, 0x10, 0x67,
0x0d, 0x00, 0x40, 0x77, 0x69, 0x6c, 0x6c, 0x83, 0x04, 0x21,
0x6f, 0x77, 0x2e, 0x02, 0x72, 0x74, 0x6f, 0x00, 0x65, 0x72,
0x61, 0x73, 0x67, 0x04, 0x00, 0x2d, 0x01, 0x32, 0x65, 0x6e,
0x74, 0xd1, 0x02, 0x07, 0xa5, 0x00, 0x00, 0x68, 0x00, 0x91,
0x6f, 0x75, 0x74, 0x00, 0x61, 0x66, 0x66, 0x65, 0x63, 0x80,
0x00, 0x00, 0xe1, 0x03, 0x01, 0x84, 0x00, 0x00, 0x23, 0x01,
0xf4, 0x01, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74,
0x69, 0x76, 0x65, 0x6c, 0x79, 0x2c, 0x00, 0x75, 0x4e, 0x00,
0x06, 0x49, 0x01, 0x00, 0x67, 0x00, 0x42, 0x6d, 0x6f, 0x76,
0x65, 0xaf, 0x02, 0x31, 0x6f, 0x73, 0x69, 0xa4, 0x03, 0x30,
0x69, 0x6e, 0x64, 0x6b, 0x02, 0x91, 0x6f, 0x72, 0x00, 0x61,
0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1e, 0x00, 0xc0, 0x62, 0x6f,
0x61, 0x72, 0x64, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73,
0x6a, 0x00, 0x20, 0x74, 0x68, 0x2f, 0x01, 0x40, 0x74, 0x75,
0x72, 0x6e, 0x4a, 0x00, 0x00, 0x0f, 0x00, 0x12, 0x6e, 0xbf,
0x00, 0x14, 0x73, 0xc0, 0x00, 0x0f, 0x70, 0x00, 0x04, 0x01,
0x7b, 0x01, 0x08, 0xc6, 0x00, 0x00, 0xc2, 0x00, 0x42, 0x66,
0x72, 0x6f, 0x6d, 0x30, 0x01, 0x04, 0x86, 0x00, 0x02, 0xf2,
0x04, 0x1f, 0x70, 0x6f, 0x00, 0x04, 0x80, 0x61, 0x67, 0x61,
0x69, 0x6e, 0x00, 0x63, 0x6f, 0x21, 0x04, 0x21, 0x74, 0x65,
0xb4, 0x03, 0x06, 0x52, 0x00, 0x35, 0x2e, 0x00, 0x55, 0x34,
0x00, 0x20, 0x73, 0x70, 0x65, 0x04, 0xa1, 0x62, 0x61, 0x72,
0x00, 0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x19, 0x06, 0x0c,
0x4d, 0x00, 0x09, 0xb7, 0x00, 0x0f, 0x77, 0x01, 0x2a, 0x10,
0x2c, 0x22, 0x04, 0x57, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2b,
0x01, 0xf1, 0x01, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x00,
0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x73, 0x00, 0x61, 0x03,
0x01, 0x00, 0xa1, 0x01, 0x11, 0x57, 0x35, 0x01, 0x08, 0x0b,
0x01, 0x13, 0x66, 0x79, 0x00, 0x10, 0x72, 0x14, 0x00, 0x02,
0xb9, 0x04, 0x25, 0x69, 0x73, 0xe8, 0x00, 0x20, 0x64, 0x2c,
0xd9, 0x02, 0x01, 0x2a, 0x02, 0x90, 0x62, 0x65, 0x00, 0x73,
0x68, 0x61, 0x64, 0x65, 0x64, 0x48, 0x00, 0x42, 0x28, 0x41,
0x6c, 0x6c, 0x19, 0x06, 0x10, 0x63, 0x3b, 0x01, 0x10, 0x73,
0xcd, 0x04, 0x61, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xe6,
0x06, 0x21, 0x65, 0x63, 0xd7, 0x01, 0x30, 0x32, 0x2e, 0x31,
0x3a, 0x06, 0x02, 0xa3, 0x05, 0xb1, 0x61, 0x76, 0x61, 0x69,
0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x9d, 0x03, 0x18,
0x32, 0x9d, 0x03, 0x93, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
0x74, 0x65, 0x72, 0x9f, 0x03, 0x01, 0xfa, 0x05, 0x05, 0x14,
0x00, 0x02, 0x45, 0x00, 0x04, 0x40, 0x00, 0x04, 0xbb, 0x01,
0xf1, 0x01, 0x65, 0x00, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x73, 0x00,
0x03, 0x3c, 0x03, 0xb1, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0xf7, 0x00, 0x80, 0x69, 0x64,
0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x0f, 0x03, 0x61, 0x00,
0x00, 0x00, 0x53, 0x69, 0x7a, 0xfb, 0x00, 0x00, 0x63, 0x03,
0x11, 0x2c, 0xb2, 0x00, 0x04, 0x7e, 0x07, 0x70, 0x00, 0x00,
0x45, 0x78, 0x70, 0x61, 0x6e, 0xf2, 0x05, 0x40, 0x20, 0x66,
0x61, 0x63, 0x93, 0x02, 0x03, 0x2f, 0x04, 0x10, 0x69, 0x48,
0x01, 0x91, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73,
0x6d, 0xbb, 0x06, 0x00, 0x0c, 0x00, 0x14, 0x67, 0xf8, 0x01,
0x35, 0x74, 0x79, 0x70, 0x54, 0x00, 0x15, 0x73, 0x20, 0x06,
0x42, 0x64, 0x00, 0x62, 0x79, 0xec, 0x02, 0x90, 0x72, 0x6f,
0x67, 0x72, 0x61, 0x6d, 0x2e, 0x00, 0x53, 0x03, 0x08, 0x60,
0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x6d, 0x02, 0x34, 0x66,
0x65, 0x72, 0x41, 0x08, 0x03, 0x97, 0x07, 0x01, 0xa9, 0x03,
0x97, 0x00, 0x66, 0x65, 0x77, 0x00, 0x6c, 0x61, 0x72, 0x67,
0x66, 0x02, 0x01, 0xcd, 0x02, 0x00, 0x0e, 0x04, 0x07, 0x29,
0x00, 0x11, 0x6d, 0x6f, 0x06, 0x40, 0x6d, 0x61, 0x6c, 0x6c,
0x1a, 0x00, 0x10, 0x73, 0x5f, 0x00, 0x01, 0x57, 0x02, 0x40,
0x63, 0x61, 0x6e, 0x00, 0x44, 0x08, 0x19, 0x52, 0x3d, 0x00,
0x30, 0x65, 0x73, 0x73, 0x78, 0x04, 0x09, 0xc2, 0x06, 0x22,
0x00, 0x61, 0x40, 0x00, 0x22, 0x65, 0x72, 0x86, 0x00, 0x32,
0x74, 0x68, 0x61, 0x44, 0x01, 0x05, 0xc5, 0x06, 0x03, 0x0c,
0x06, 0x22, 0x65, 0x64, 0x22, 0x03, 0x01, 0x79, 0x03, 0x00,
0x4d, 0x00, 0x00, 0x29, 0x01, 0x10, 0x64, 0x20, 0x02, 0x60,
0x62, 0x79, 0x00, 0x61, 0x64, 0x64, 0x8f, 0x00, 0x10, 0x72,
0xd7, 0x02, 0x20, 0x61, 0x6e, 0xcc, 0x00, 0x41, 0x6c, 0x75,
0x6d, 0x6e, 0x51, 0x01, 0x00, 0xfe, 0x06, 0x72, 0x64, 0x65,
0x66, 0x61, 0x75, 0x6c, 0x74, 0x34, 0x00, 0x01, 0x4f, 0x07,
0x03, 0x5d, 0x01, 0xd2, 0x6f, 0x66, 0x00, 0x7a, 0x65, 0x72,
0x6f, 0x00, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x90, 0x03, 0x07,
0xb3, 0x00, 0x01, 0x79, 0x02, 0x10, 0x73, 0x95, 0x07, 0x09,
0xb0, 0x00, 0x04, 0x6f, 0x09, 0x09, 0xa6, 0x00, 0x00, 0xee,
0x00, 0x42, 0x66, 0x6f, 0x72, 0x2c, 0xe5, 0x04, 0x10, 0x6f,
0x4b, 0x07, 0x10, 0x68, 0x93, 0x00, 0x30, 0x66, 0x75, 0x72,
0x60, 0x07, 0x42, 0x2e, 0x00, 0x49, 0x66, 0xce, 0x00, 0x02,
0x16, 0x07, 0x0f, 0x8a, 0x00, 0x01, 0x91, 0x28, 0x73, 0x61,
0x79, 0x29, 0x00, 0x30, 0x2e, 0x35, 0xf6, 0x02, 0x07, 0x93,
0x00, 0x01, 0xf7, 0x08, 0x42, 0x64, 0x69, 0x6d, 0x65, 0x32,
0x00, 0x26, 0x6f, 0x66, 0xa1, 0x05, 0x04, 0x1c, 0x03, 0x02,
0x0e, 0x01, 0x02, 0x46, 0x07, 0x43, 0x68, 0x61, 0x6c, 0x66,
0x31, 0x04, 0x70, 0x61, 0x73, 0x00, 0x62, 0x69, 0x67, 0x00,
0xbc, 0x07, 0x14, 0x72, 0xc3, 0x00, 0x01, 0x52, 0x07, 0x60,
0x49, 0x6e, 0x00, 0x6f, 0x74, 0x68, 0x2d, 0x09, 0x51, 0x6f,
0x72, 0x64, 0x73, 0x2c, 0x51, 0x00, 0x30, 0x69, 0x6e, 0x69,
0x9d, 0x01, 0x0a, 0x59, 0x00, 0x36, 0x32, 0x2f, 0x33, 0xe9,
0x00, 0x2b, 0x69, 0x6e, 0x8c, 0x00, 0x02, 0xef, 0x00, 0x0f,
0x85, 0x00, 0x01, 0x00, 0x22, 0x04, 0x21, 0x66, 0x75, 0x40,
0x01, 0x17, 0x7a, 0x42, 0x04, 0x24, 0x64, 0x64, 0x43, 0x06,
0x28, 0x6d, 0x6f, 0x80, 0x06, 0x01, 0xab, 0x01, 0x31, 0x53,
0x65, 0x74, 0x5e, 0x04, 0x0f, 0x20, 0x01, 0x04, 0x03, 0x9d,
0x05, 0x82, 0x30, 0x2e, 0x35, 0x00, 0x74, 0x65, 0x6e, 0x64,
0xcd, 0x05, 0x23, 0x61, 0x6b, 0x9a, 0x0a, 0x00, 0x4f, 0x07,
0x01, 0x54, 0x00, 0x92, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63,
0x75, 0x6c, 0x74, 0x9d, 0x00, 0x01, 0xfe, 0x03, 0x50, 0x28,
0x69, 0x6e, 0x00, 0x6d, 0xb7, 0x06, 0xb0, 0x70, 0x65, 0x72,
0x69, 0x65, 0x6e, 0x63, 0x65, 0x29, 0x00, 0x72, 0x1d, 0x08,
0x10, 0x64, 0x56, 0x03, 0x30, 0x6c, 0x65, 0x73, 0x42, 0x04,
0x30, 0x64, 0x75, 0x63, 0x3a, 0x06, 0x01, 0x35, 0x00, 0x01,
0x49, 0x00, 0x51, 0x69, 0x6e, 0x74, 0x75, 0x69, 0x13, 0x00,
0x00, 0xa4, 0x07, 0x00, 0x99, 0x00, 0x59, 0x73, 0x74, 0x79,
0x6c, 0x65, 0xcb, 0x01, 0xd0, 0x69, 0x74, 0x00, 0x74, 0x6f,
0x6f, 0x00, 0x68, 0x69, 0x67, 0x68, 0x2c, 0x00, 0xe4, 0x00,
0x02, 0x08, 0x00, 0x03, 0x90, 0x00, 0x03, 0x3c, 0x02, 0x30,
0x63, 0x61, 0x6e, 0x5a, 0x09, 0x05, 0x43, 0x02, 0x01, 0x5e,
0x00, 0x01, 0xe9, 0x02, 0x02, 0x69, 0x03, 0x0a, 0x63, 0x03,
0x51, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x00, 0x03, 0xa5,
0x07, 0x02, 0x27, 0x04, 0x03, 0xfc, 0x02, 0x02, 0x59, 0x00,
0x50, 0x62, 0x65, 0x63, 0x6f, 0x6d, 0x2f, 0x00, 0x61, 0x72,
0x69, 0x76, 0x69, 0x61, 0x6c, 0x39, 0x04, 0xf1, 0x02, 0x6e,
0x73, 0x75, 0x72, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x71, 0x75,
0x65, 0x20, 0x73, 0x6f, 0x6c, 0x75, 0x92, 0x04, 0x60, 0x00,
0x00, 0x4e, 0x6f, 0x72, 0x6d, 0x73, 0x03, 0x1d, 0x2c, 0xdb,
0x02, 0x01, 0x3d, 0x01, 0x00, 0x36, 0x00, 0x02, 0x67, 0x02,
0x01, 0x28, 0x04, 0x03, 0x96, 0x09, 0x21, 0x69, 0x74, 0x8b,
0x06, 0x01, 0x0e, 0x06, 0x01, 0x66, 0x0c, 0x23, 0x6f, 0x6e,
0xa9, 0x0b, 0x04, 0x5a, 0x00, 0x13, 0x2e, 0xbe, 0x0a, 0x12,
0x73, 0xbb, 0x08, 0x61, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75,
0x04, 0x0c, 0x13, 0x65, 0x95, 0x05, 0x00, 0x05, 0x04, 0x1c,
0x62, 0x95, 0x01, 0x06, 0x5f, 0x01, 0xd5, 0x73, 0x75, 0x62,
0x74, 0x6c, 0x65, 0x2c, 0x00, 0x73, 0x6f, 0x00, 0x69, 0x66,
0xaf, 0x0a, 0x05, 0x3f, 0x04, 0x01, 0xae, 0x06, 0x32, 0x6f,
0x66, 0x66, 0xa2, 0x0b, 0x62, 0x66, 0x65, 0x61, 0x74, 0x75,
0x72, 0x9d, 0x01, 0x40, 0x72, 0x69, 0x73, 0x6b, 0x95, 0x00,
0x01, 0x2b, 0x02, 0x05, 0x77, 0x00, 0x03, 0xba, 0x00, 0xb2,
0x2e, 0x00, 0x41, 0x6c, 0x73, 0x6f, 0x2c, 0x00, 0x66, 0x69,
0x6e, 0x6b, 0x02, 0x24, 0x6c, 0x6c, 0xed, 0x07, 0x12, 0x73,
0x82, 0x0a, 0x03, 0xc0, 0x00, 0x05, 0xa0, 0x00, 0x21, 0x61,
0x6e, 0x97, 0x02, 0x00, 0x14, 0x00, 0x20, 0x61, 0x6c, 0x55,
0x05, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x63, 0x05,
0x01, 0x1c, 0x00, 0x10, 0x76, 0xc8, 0x06, 0x12, 0x64, 0xa9,
0x09, 0x61, 0x72, 0x2e, 0x00, 0x54, 0x75, 0x72, 0xfc, 0x04,
0x05, 0x9c, 0x00, 0x03, 0xfc, 0x05, 0x01, 0xf4, 0x04, 0x01,
0x0e, 0x0c, 0x74, 0x70, 0x65, 0x65, 0x64, 0x00, 0x75, 0x70,
0x6a, 0x0b, 0x03, 0xf8, 0x01, 0x50, 0x69, 0x6f, 0x6e, 0x2e,
0x00,
0x6c, 0x65, 0x73, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x01, 0xf0,
0x3a, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61,
0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00,
0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73,
0x2c, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x73, 0x00, 0x77, 0x72, 0x69, 0x74, 0x74,
0x65, 0x6e, 0x00, 0x69, 0x6e, 0x00, 0x73, 0x6f, 0x6d, 0x65,
0x00, 0x28, 0x62, 0x75, 0x74, 0x00, 0x6e, 0x6f, 0x74, 0x00,
0x61, 0x6c, 0x6c, 0x29, 0x37, 0x00, 0x34, 0x74, 0x68, 0x65,
0x3b, 0x00, 0x10, 0x2e, 0x57, 0x00, 0xf1, 0x07, 0x72, 0x00,
0x74, 0x61, 0x73, 0x6b, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f,
0x00, 0x73, 0x75, 0x62, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65,
0x27, 0x00, 0x01, 0x6a, 0x00, 0x65, 0x69, 0x6e, 0x74, 0x6f,
0x00, 0x72, 0xa3, 0x00, 0x00, 0x43, 0x00, 0xb0, 0x76, 0x61,
0x72, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x73, 0x69, 0x7a, 0x80,
0x00, 0xf6, 0x04, 0x73, 0x75, 0x63, 0x68, 0x00, 0x74, 0x68,
0x61, 0x74, 0x00, 0x28, 0x61, 0x29, 0x00, 0x65, 0x76, 0x65,
0x72, 0x79, 0x31, 0x00, 0xf3, 0x06, 0x00, 0x63, 0x6f, 0x6e,
0x74, 0x61, 0x69, 0x6e, 0x73, 0x00, 0x65, 0x78, 0x61, 0x63,
0x74, 0x6c, 0x79, 0x00, 0x6f, 0x6e, 0x65, 0xae, 0x00, 0x23,
0x65, 0x64, 0x8a, 0x00, 0x91, 0x2c, 0x00, 0x61, 0x6e, 0x64,
0x00, 0x28, 0x62, 0x29, 0x77, 0x00, 0x40, 0x61, 0x72, 0x65,
0x61, 0x67, 0x00, 0x47, 0x65, 0x61, 0x63, 0x68, 0x49, 0x00,
0x80, 0x69, 0x73, 0x00, 0x65, 0x71, 0x75, 0x61, 0x6c, 0xa8,
0x00, 0x24, 0x74, 0x68, 0x44, 0x00, 0x08, 0xf1, 0x00, 0x3c,
0x69, 0x74, 0x73, 0x5a, 0x00, 0xf4, 0x0e, 0x2e, 0x00, 0x00,
0x00, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x00, 0x66, 0x6f,
0x72, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d,
0x65, 0x00, 0x67, 0x6f, 0x65, 0x73, 0x4a, 0x00, 0xf0, 0x18,
0x4a, 0x61, 0x70, 0x61, 0x6e, 0x65, 0x73, 0x65, 0x00, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x6d, 0x61, 0x67, 0x61,
0x7a, 0x69, 0x6e, 0x65, 0x00, 0x4e, 0x69, 0x6b, 0x6f, 0x6c,
0x69, 0x00, 0x5b, 0x33, 0x5d, 0x3b, 0x00, 0x49, 0x27, 0x7e,
0x01, 0xf2, 0x14, 0x6c, 0x73, 0x6f, 0x00, 0x73, 0x65, 0x65,
0x6e, 0x00, 0x61, 0x00, 0x50, 0x61, 0x6c, 0x6d, 0x00, 0x69,
0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x00, 0x61, 0x74, 0x00, 0x50, 0x44, 0x00,
0xfa, 0x03, 0x50, 0x61, 0x6c, 0x61, 0x63, 0x65, 0x00, 0x5b,
0x34, 0x5d, 0x2e, 0x00, 0x55, 0x6e, 0x6c, 0x69, 0x6b, 0x65,
0x1a, 0x00, 0x2b, 0x27, 0x73, 0x3c, 0x00, 0x91, 0x2c, 0x00,
0x6d, 0x79, 0x00, 0x76, 0x65, 0x72, 0x73, 0x48, 0x00, 0xf1,
0x0e, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61,
0x6c, 0x6c, 0x79, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x73, 0x00, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d,
0x99, 0x01, 0x01, 0x8a, 0x01, 0x31, 0x61, 0x6e, 0x79, 0x86,
0x01, 0x50, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x65, 0x00, 0x60,
0x2e, 0x00, 0x54, 0x68, 0x65, 0x00, 0x27, 0x01, 0x30, 0x69,
0x74, 0x79, 0x22, 0x00, 0x03, 0xd3, 0x00, 0x61, 0x64, 0x65,
0x73, 0x69, 0x67, 0x6e, 0xe6, 0x01, 0x81, 0x68, 0x65, 0x72,
0x65, 0x66, 0x6f, 0x72, 0x65, 0x16, 0x02, 0xd0, 0x71, 0x75,
0x69, 0x74, 0x65, 0x00, 0x61, 0x73, 0x00, 0x67, 0x6f, 0x6f,
0x64, 0x08, 0x00, 0xc3, 0x68, 0x61, 0x6e, 0x64, 0x2d, 0x63,
0x72, 0x61, 0x66, 0x74, 0x65, 0x64, 0x3d, 0x00, 0xc0, 0x73,
0x00, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x62, 0x65, 0x2c,
0x00, 0x4e, 0x02, 0x21, 0x6f, 0x6e, 0x36, 0x01, 0x21, 0x70,
0x6c, 0x03, 0x02, 0x12, 0x64, 0x7d, 0x00, 0x50, 0x67, 0x65,
0x74, 0x00, 0x61, 0x86, 0x01, 0xf7, 0x02, 0x65, 0x78, 0x68,
0x61, 0x75, 0x73, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x00, 0x73,
0x75, 0x70, 0x70, 0x6c, 0x87, 0x00, 0x70, 0x73, 0x00, 0x74,
0x61, 0x69, 0x6c, 0x6f, 0x9f, 0x01, 0x40, 0x74, 0x6f, 0x00,
0x79, 0x7d, 0x02, 0xc1, 0x6f, 0x77, 0x6e, 0x00, 0x73, 0x70,
0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x08, 0x01, 0x00, 0xb2,
0x01, 0xf1, 0x02, 0x5b, 0x33, 0x5d, 0x00, 0x68, 0x74, 0x74,
0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e,
0x88, 0x01, 0xa3, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f,
0x65, 0x6e, 0x2f, 0x4e, 0x00, 0x90, 0x2f, 0x73, 0x68, 0x69,
0x6b, 0x61, 0x6b, 0x75, 0x2f, 0x33, 0x00, 0x17, 0x34, 0x33,
0x00, 0xe0, 0x65, 0x62, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69,
0x76, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x10, 0x00, 0xf0, 0x01,
0x2f, 0x32, 0x30, 0x30, 0x34, 0x31, 0x30, 0x32, 0x34, 0x30,
0x30, 0x31, 0x34, 0x35, 0x39, 0x2f, 0x2b, 0x00, 0x03, 0x5d,
0x00, 0x02, 0x4d, 0x00, 0x30, 0x2e, 0x67, 0x72, 0x5d, 0x00,
0x02, 0x0d, 0x00, 0x22, 0x2f, 0x73, 0x58, 0x00, 0xf8, 0x09,
0x70, 0x61, 0x6c, 0x6d, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78,
0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x65, 0x6e, 0x00, 0x00,
0x00, 0x38, 0x2e, 0x31, 0xb3, 0x03, 0x00, 0xe0, 0x02, 0x95,
0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x54, 0x5f,
0x02, 0x92, 0x69, 0x73, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x65,
0x64, 0x9e, 0x03, 0x00, 0x30, 0x01, 0xf0, 0x05, 0x6d, 0x6f,
0x75, 0x73, 0x65, 0x00, 0x6f, 0x72, 0x00, 0x63, 0x75, 0x72,
0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0xed, 0x00,
0xa1, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0xcf, 0x01, 0x41, 0x65, 0x64, 0x67, 0x65, 0x99, 0x02,
0x21, 0x6f, 0x67, 0xf6, 0x02, 0x01, 0x70, 0x01, 0x70, 0x6f,
0x72, 0x00, 0x6f, 0x66, 0x66, 0x2c, 0x08, 0x00, 0x18, 0x6c,
0x2f, 0x00, 0x60, 0x64, 0x00, 0x64, 0x72, 0x61, 0x67, 0x2f,
0x00, 0x40, 0x64, 0x72, 0x61, 0x77, 0x81, 0x01, 0x67, 0x65,
0x6e, 0x74, 0x69, 0x72, 0x65, 0x37, 0x03, 0x10, 0x28, 0x34,
0x00, 0x44, 0x69, 0x6e, 0x65, 0x29, 0xb8, 0x01, 0x03, 0xd6,
0x03, 0x01, 0x88, 0x03, 0xc2, 0x67, 0x6f, 0x00, 0x28, 0x72,
0x65, 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x7e, 0x00, 0x40,
0x78, 0x69, 0x73, 0x74, 0x0d, 0x00, 0x00, 0x87, 0x00, 0x11,
0x73, 0xbd, 0x00, 0x22, 0x69, 0x6e, 0xdd, 0x03, 0x05, 0x53,
0x00, 0x73, 0x29, 0x2e, 0x00, 0x52, 0x69, 0x67, 0x68, 0x86,
0x00, 0x02, 0x3a, 0x00, 0x02, 0x89, 0x00, 0x10, 0x67, 0x0d,
0x00, 0x40, 0x77, 0x69, 0x6c, 0x6c, 0x6e, 0x04, 0x21, 0x6f,
0x77, 0x19, 0x02, 0x72, 0x74, 0x6f, 0x00, 0x65, 0x72, 0x61,
0x73, 0x52, 0x04, 0x00, 0x2d, 0x01, 0x32, 0x65, 0x6e, 0x74,
0xbc, 0x02, 0x07, 0xa5, 0x00, 0x00, 0x68, 0x00, 0x91, 0x6f,
0x75, 0x74, 0x00, 0x61, 0x66, 0x66, 0x65, 0x63, 0x80, 0x00,
0x00, 0xcc, 0x03, 0x01, 0x84, 0x00, 0x00, 0x23, 0x01, 0xf4,
0x01, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
0x76, 0x65, 0x6c, 0x79, 0x2c, 0x00, 0x75, 0x4e, 0x00, 0x06,
0x49, 0x01, 0x00, 0x67, 0x00, 0x42, 0x6d, 0x6f, 0x76, 0x65,
0x9a, 0x02, 0x31, 0x6f, 0x73, 0x69, 0x8f, 0x03, 0x30, 0x69,
0x6e, 0x64, 0x56, 0x02, 0x91, 0x6f, 0x72, 0x00, 0x61, 0x72,
0x6f, 0x75, 0x6e, 0x64, 0x1e, 0x00, 0xc0, 0x62, 0x6f, 0x61,
0x72, 0x64, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0x6a,
0x00, 0x20, 0x74, 0x68, 0x2f, 0x01, 0x40, 0x74, 0x75, 0x72,
0x6e, 0x4a, 0x00, 0x00, 0x0f, 0x00, 0x12, 0x6e, 0xbf, 0x00,
0x14, 0x73, 0xc0, 0x00, 0x0f, 0x70, 0x00, 0x04, 0x01, 0x7b,
0x01, 0x08, 0xc6, 0x00, 0x00, 0xc2, 0x00, 0x42, 0x66, 0x72,
0x6f, 0x6d, 0x30, 0x01, 0x04, 0x86, 0x00, 0x02, 0xdd, 0x04,
0x1f, 0x70, 0x6f, 0x00, 0x04, 0x80, 0x61, 0x67, 0x61, 0x69,
0x6e, 0x00, 0x63, 0x6f, 0x0c, 0x04, 0x21, 0x74, 0x65, 0x9f,
0x03, 0x06, 0x52, 0x00, 0x35, 0x2e, 0x00, 0x55, 0x34, 0x00,
0x20, 0x73, 0x70, 0x50, 0x04, 0xa1, 0x62, 0x61, 0x72, 0x00,
0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x04, 0x06, 0x0c, 0x4d,
0x00, 0x09, 0xb7, 0x00, 0x0f, 0x77, 0x01, 0x2a, 0x10, 0x2c,
0x0d, 0x04, 0x57, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2b, 0x01,
0xf1, 0x01, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x00, 0x63,
0x61, 0x6e, 0x63, 0x65, 0x6c, 0x73, 0x00, 0x61, 0x03, 0x01,
0x00, 0xa1, 0x01, 0x11, 0x57, 0x35, 0x01, 0x08, 0x0b, 0x01,
0x13, 0x66, 0x79, 0x00, 0x10, 0x72, 0x14, 0x00, 0x02, 0xa4,
0x04, 0x25, 0x69, 0x73, 0xe8, 0x00, 0x20, 0x64, 0x2c, 0xd9,
0x02, 0x01, 0x2a, 0x02, 0x90, 0x62, 0x65, 0x00, 0x73, 0x68,
0x61, 0x64, 0x65, 0x64, 0x48, 0x00, 0x42, 0x28, 0x41, 0x6c,
0x6c, 0x04, 0x06, 0x10, 0x63, 0x3b, 0x01, 0x10, 0x73, 0xb8,
0x04, 0x61, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xd1, 0x06,
0x21, 0x65, 0x63, 0xd7, 0x01, 0x30, 0x32, 0x2e, 0x31, 0x25,
0x06, 0x02, 0x8e, 0x05, 0xb1, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x9d, 0x03, 0x18, 0x32,
0x9d, 0x03, 0x93, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x9f, 0x03, 0x01, 0xe5, 0x05, 0x05, 0x14, 0x00,
0x02, 0x45, 0x00, 0x04, 0x40, 0x00, 0x04, 0xbb, 0x01, 0xf1,
0x01, 0x65, 0x00, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x73, 0x00, 0x03,
0x3c, 0x03, 0xb1, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0xf7, 0x00, 0x80, 0x69, 0x64, 0x74,
0x68, 0x2c, 0x00, 0x48, 0x65, 0x0f, 0x03, 0x61, 0x00, 0x00,
0x00, 0x53, 0x69, 0x7a, 0xfb, 0x00, 0x00, 0x63, 0x03, 0x11,
0x2c, 0xb2, 0x00, 0x04, 0x69, 0x07, 0x70, 0x00, 0x00, 0x45,
0x78, 0x70, 0x61, 0x6e, 0xdd, 0x05, 0x40, 0x20, 0x66, 0x61,
0x63, 0x93, 0x02, 0x03, 0x2f, 0x04, 0x10, 0x69, 0x48, 0x01,
0x91, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d,
0xa6, 0x06, 0x00, 0x0c, 0x00, 0x14, 0x67, 0xf8, 0x01, 0x35,
0x74, 0x79, 0x70, 0x54, 0x00, 0x15, 0x73, 0x0b, 0x06, 0x42,
0x64, 0x00, 0x62, 0x79, 0xec, 0x02, 0x90, 0x72, 0x6f, 0x67,
0x72, 0x61, 0x6d, 0x2e, 0x00, 0x53, 0xee, 0x07, 0x60, 0x70,
0x65, 0x6f, 0x70, 0x6c, 0x65, 0x6d, 0x02, 0x34, 0x66, 0x65,
0x72, 0x2c, 0x08, 0x03, 0x82, 0x07, 0x01, 0xa9, 0x03, 0x97,
0x00, 0x66, 0x65, 0x77, 0x00, 0x6c, 0x61, 0x72, 0x67, 0x66,
0x02, 0x01, 0xcd, 0x02, 0x00, 0x0e, 0x04, 0x07, 0x29, 0x00,
0x11, 0x6d, 0x5a, 0x06, 0x40, 0x6d, 0x61, 0x6c, 0x6c, 0x1a,
0x00, 0x10, 0x73, 0x5f, 0x00, 0x01, 0x57, 0x02, 0x40, 0x63,
0x61, 0x6e, 0x00, 0x2f, 0x08, 0x19, 0x52, 0x3d, 0x00, 0x30,
0x65, 0x73, 0x73, 0x78, 0x04, 0x09, 0xad, 0x06, 0x22, 0x00,
0x61, 0x40, 0x00, 0x22, 0x65, 0x72, 0x86, 0x00, 0x32, 0x74,
0x68, 0x61, 0x44, 0x01, 0x05, 0xb0, 0x06, 0x03, 0xf7, 0x05,
0x22, 0x65, 0x64, 0x22, 0x03, 0x01, 0x79, 0x03, 0x00, 0x4d,
0x00, 0x00, 0x29, 0x01, 0x10, 0x64, 0x20, 0x02, 0x60, 0x62,
0x79, 0x00, 0x61, 0x64, 0x64, 0x8f, 0x00, 0x10, 0x72, 0xd7,
0x02, 0x20, 0x61, 0x6e, 0xcc, 0x00, 0x41, 0x6c, 0x75, 0x6d,
0x6e, 0x51, 0x01, 0x00, 0xe9, 0x06, 0x72, 0x64, 0x65, 0x66,
0x61, 0x75, 0x6c, 0x74, 0x34, 0x00, 0x01, 0x3a, 0x07, 0x03,
0x5d, 0x01, 0xd2, 0x6f, 0x66, 0x00, 0x7a, 0x65, 0x72, 0x6f,
0x00, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x90, 0x03, 0x07, 0xb3,
0x00, 0x01, 0x79, 0x02, 0x10, 0x73, 0x80, 0x07, 0x09, 0xb0,
0x00, 0x04, 0x5a, 0x09, 0x09, 0xa6, 0x00, 0x00, 0xee, 0x00,
0x42, 0x66, 0x6f, 0x72, 0x2c, 0xe5, 0x04, 0x10, 0x6f, 0x36,
0x07, 0x10, 0x68, 0x93, 0x00, 0x30, 0x66, 0x75, 0x72, 0x4b,
0x07, 0x42, 0x2e, 0x00, 0x49, 0x66, 0xce, 0x00, 0x02, 0x01,
0x07, 0x0f, 0x8a, 0x00, 0x01, 0x91, 0x28, 0x73, 0x61, 0x79,
0x29, 0x00, 0x30, 0x2e, 0x35, 0xf6, 0x02, 0x07, 0x93, 0x00,
0x01, 0xe2, 0x08, 0x42, 0x64, 0x69, 0x6d, 0x65, 0x32, 0x00,
0x26, 0x6f, 0x66, 0xa1, 0x05, 0x04, 0x1c, 0x03, 0x02, 0x0e,
0x01, 0x02, 0x31, 0x07, 0x43, 0x68, 0x61, 0x6c, 0x66, 0x31,
0x04, 0x70, 0x61, 0x73, 0x00, 0x62, 0x69, 0x67, 0x00, 0xa7,
0x07, 0x14, 0x72, 0xc3, 0x00, 0x01, 0x3d, 0x07, 0x60, 0x49,
0x6e, 0x00, 0x6f, 0x74, 0x68, 0x18, 0x09, 0x51, 0x6f, 0x72,
0x64, 0x73, 0x2c, 0x51, 0x00, 0x30, 0x69, 0x6e, 0x69, 0x9d,
0x01, 0x0a, 0x59, 0x00, 0x36, 0x32, 0x2f, 0x33, 0xe9, 0x00,
0x2b, 0x69, 0x6e, 0x8c, 0x00, 0x02, 0xef, 0x00, 0x0f, 0x85,
0x00, 0x01, 0x00, 0x22, 0x04, 0x21, 0x66, 0x75, 0x40, 0x01,
0x17, 0x7a, 0x42, 0x04, 0x24, 0x64, 0x64, 0x43, 0x06, 0x28,
0x6d, 0x6f, 0x80, 0x06, 0x01, 0xab, 0x01, 0x31, 0x53, 0x65,
0x74, 0x5e, 0x04, 0x0f, 0x20, 0x01, 0x04, 0x03, 0x9d, 0x05,
0x82, 0x30, 0x2e, 0x35, 0x00, 0x74, 0x65, 0x6e, 0x64, 0xcd,
0x05, 0x23, 0x61, 0x6b, 0x85, 0x0a, 0x00, 0x4f, 0x07, 0x01,
0x54, 0x00, 0x92, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75,
0x6c, 0x74, 0x9d, 0x00, 0x01, 0xfe, 0x03, 0x50, 0x28, 0x69,
0x6e, 0x00, 0x6d, 0xb7, 0x06, 0xf0, 0x01, 0x70, 0x65, 0x72,
0x69, 0x65, 0x6e, 0x63, 0x65, 0x29, 0x00, 0x72, 0x65, 0x77,
0x61, 0x72, 0x64, 0x56, 0x03, 0x30, 0x6c, 0x65, 0x73, 0x42,
0x04, 0x30, 0x64, 0x75, 0x63, 0x3a, 0x06, 0x01, 0x35, 0x00,
0x01, 0x49, 0x00, 0x51, 0x69, 0x6e, 0x74, 0x75, 0x69, 0x13,
0x00, 0x00, 0xa4, 0x07, 0x00, 0x99, 0x00, 0x59, 0x73, 0x74,
0x79, 0x6c, 0x65, 0xcb, 0x01, 0xd0, 0x69, 0x74, 0x00, 0x74,
0x6f, 0x6f, 0x00, 0x68, 0x69, 0x67, 0x68, 0x2c, 0x00, 0xe4,
0x00, 0x02, 0x08, 0x00, 0x03, 0x90, 0x00, 0x03, 0x3c, 0x02,
0x30, 0x63, 0x61, 0x6e, 0x45, 0x09, 0x05, 0x43, 0x02, 0x01,
0x5e, 0x00, 0x01, 0xe9, 0x02, 0x02, 0x69, 0x03, 0x0a, 0x63,
0x03, 0x51, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x00, 0x03,
0xa5, 0x07, 0x02, 0x27, 0x04, 0x03, 0xfc, 0x02, 0x02, 0x59,
0x00, 0x50, 0x62, 0x65, 0x63, 0x6f, 0x6d, 0x2f, 0x00, 0x61,
0x72, 0x69, 0x76, 0x69, 0x61, 0x6c, 0x39, 0x04, 0xf1, 0x02,
0x6e, 0x73, 0x75, 0x72, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x71,
0x75, 0x65, 0x20, 0x73, 0x6f, 0x6c, 0x75, 0x92, 0x04, 0x60,
0x00, 0x00, 0x4e, 0x6f, 0x72, 0x6d, 0x73, 0x03, 0x1d, 0x2c,
0xdb, 0x02, 0x01, 0x3d, 0x01, 0x00, 0x36, 0x00, 0x02, 0x67,
0x02, 0x01, 0x28, 0x04, 0x03, 0x81, 0x09, 0x21, 0x69, 0x74,
0x8b, 0x06, 0x01, 0x0e, 0x06, 0x01, 0x51, 0x0c, 0x23, 0x6f,
0x6e, 0x94, 0x0b, 0x04, 0x5a, 0x00, 0x13, 0x2e, 0xa9, 0x0a,
0x12, 0x73, 0xbb, 0x08, 0x61, 0x61, 0x6d, 0x62, 0x69, 0x67,
0x75, 0xef, 0x0b, 0x13, 0x65, 0x95, 0x05, 0x00, 0x05, 0x04,
0x1c, 0x62, 0x95, 0x01, 0x06, 0x5f, 0x01, 0xd5, 0x73, 0x75,
0x62, 0x74, 0x6c, 0x65, 0x2c, 0x00, 0x73, 0x6f, 0x00, 0x69,
0x66, 0x9a, 0x0a, 0x05, 0x3f, 0x04, 0x01, 0xae, 0x06, 0x32,
0x6f, 0x66, 0x66, 0x8d, 0x0b, 0x62, 0x66, 0x65, 0x61, 0x74,
0x75, 0x72, 0x9d, 0x01, 0x40, 0x72, 0x69, 0x73, 0x6b, 0x95,
0x00, 0x01, 0x2b, 0x02, 0x05, 0x77, 0x00, 0x03, 0xba, 0x00,
0xb2, 0x2e, 0x00, 0x41, 0x6c, 0x73, 0x6f, 0x2c, 0x00, 0x66,
0x69, 0x6e, 0x6b, 0x02, 0x24, 0x6c, 0x6c, 0xed, 0x07, 0x12,
0x73, 0x6d, 0x0a, 0x03, 0xc0, 0x00, 0x05, 0xa0, 0x00, 0x21,
0x61, 0x6e, 0x97, 0x02, 0x00, 0x14, 0x00, 0x20, 0x61, 0x6c,
0x55, 0x05, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x63,
0x05, 0x01, 0x1c, 0x00, 0x10, 0x76, 0xc8, 0x06, 0x12, 0x64,
0xa9, 0x09, 0x61, 0x72, 0x2e, 0x00, 0x54, 0x75, 0x72, 0xfc,
0x04, 0x05, 0x9c, 0x00, 0x03, 0xfc, 0x05, 0x01, 0xf4, 0x04,
0x01, 0xf9, 0x0b, 0x74, 0x70, 0x65, 0x65, 0x64, 0x00, 0x75,
0x70, 0x55, 0x0b, 0x03, 0xf8, 0x01, 0x50, 0x69, 0x6f, 0x6e,
0x2e, 0x00,
};
const unsigned short help_text_len = 3535;
const unsigned short help_text_words = 605;
const unsigned short help_text_len = 3536;
const unsigned short help_text_words = 603;
const char quick_help_text[] = "Divide the grid into rectangles with areas equal to the numbers.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,185 +6,186 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 116, TEXT_CENTER | C_RED },
{ 229, TEXT_CENTER | C_RED },
{ 246, TEXT_UNDERLINE },
{ 117, TEXT_CENTER | C_RED },
{ 230, TEXT_CENTER | C_RED },
{ 247, TEXT_UNDERLINE },
{ 257, TEXT_UNDERLINE },
{ 292, TEXT_UNDERLINE },
{ 342, TEXT_UNDERLINE },
{ 414, TEXT_UNDERLINE },
{ 248, TEXT_UNDERLINE },
{ 258, TEXT_UNDERLINE },
{ 293, TEXT_UNDERLINE },
{ 343, TEXT_UNDERLINE },
{ 415, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2470 comp 1634 ratio 0.661538 level 10 saved 836 */
/* orig 2492 comp 1641 ratio 0.658507 level 10 saved 851 */
const char help_text[] = {
0xf0, 0x03, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x33, 0x3a, 0x20, 0x53, 0x61, 0x6d, 0x65, 0x20, 0x47,
0x05, 0x00, 0xf4, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75,
0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72,
0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x63, 0x6f, 0x6c, 0x6f,
0x75, 0x72, 0x65, 0x64, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72,
0x65, 0x73, 0x2c, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00,
0x79, 0x2b, 0x00, 0xf0, 0x1c, 0x74, 0x6f, 0x00, 0x63, 0x6c,
0x65, 0x61, 0x72, 0x00, 0x62, 0x79, 0x00, 0x68, 0x69, 0x67,
0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x00,
0x63, 0x6f, 0x6e, 0x74, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73,
0x00, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x00,
0xdc, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x74, 0x68, 0x61, 0x6e,
0x00, 0x6f, 0x6e, 0x65, 0x5e, 0x00, 0xc1, 0x3b, 0x00, 0x74,
0x68, 0x65, 0x00, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x0b,
0x00, 0x02, 0x39, 0x00, 0x02, 0x6d, 0x00, 0x04, 0x5c, 0x00,
0x11, 0x2c, 0x1a, 0x00, 0x01, 0x48, 0x00, 0x61, 0x70, 0x6f,
0x69, 0x6e, 0x74, 0x73, 0x1f, 0x00, 0x81, 0x67, 0x65, 0x74,
0x00, 0x28, 0x61, 0x6e, 0x64, 0x1d, 0x00, 0x61, 0x66, 0x61,
0x73, 0x74, 0x65, 0x72, 0x18, 0x00, 0x02, 0x9c, 0x00, 0x00,
0x15, 0x00, 0xcb, 0x61, 0x72, 0x65, 0x6e, 0x61, 0x29, 0x2e,
0x00, 0x00, 0x00, 0x49, 0x66, 0x1b, 0x00, 0x01, 0xed, 0x00,
0x00, 0x13, 0x00, 0x44, 0x77, 0x69, 0x6e, 0x2e, 0x1f, 0x00,
0xf0, 0x01, 0x65, 0x6e, 0x64, 0x00, 0x75, 0x70, 0x00, 0x77,
0x69, 0x74, 0x68, 0x00, 0x6e, 0x6f, 0x74, 0x68, 0xd4, 0x00,
0xa4, 0x62, 0x75, 0x74, 0x00, 0x73, 0x69, 0x6e, 0x67, 0x6c,
0x65, 0x10, 0x01, 0x61, 0x00, 0x28, 0x69, 0x2e, 0x65, 0x2e,
0x94, 0x00, 0x11, 0x72, 0x64, 0x00, 0x32, 0x00, 0x6e, 0x6f,
0x9d, 0x00, 0x95, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x61, 0x62,
0x6c, 0x65, 0xff, 0x00, 0x51, 0x6c, 0x65, 0x66, 0x74, 0x29,
0x5c, 0x00, 0x40, 0x6c, 0x6f, 0x73, 0x65, 0x8a, 0x00, 0x50,
0x52, 0x65, 0x6d, 0x6f, 0x76, 0x59, 0x00, 0x14, 0x61, 0xeb,
0x00, 0x63, 0x63, 0x61, 0x75, 0x73, 0x65, 0x73, 0xfd, 0x00,
0x20, 0x73, 0x74, 0x33, 0x01, 0x05, 0xa2, 0x00, 0xf0, 0x06,
0x74, 0x6f, 0x00, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65,
0x00, 0x75, 0x70, 0x3a, 0x00, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
0x73, 0x4d, 0x01, 0x11, 0x74, 0x79, 0x00, 0xf3, 0x13, 0x73,
0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x00, 0x77,
0x69, 0x6c, 0x6c, 0x00, 0x66, 0x61, 0x6c, 0x6c, 0x00, 0x64,
0x6f, 0x77, 0x6e, 0x00, 0x28, 0x66, 0x69, 0x72, 0x73, 0x74,
0x29, 0x2c, 0x00, 0x20, 0x01, 0x70, 0x6e, 0x00, 0x65, 0x6d,
0x70, 0x74, 0x79, 0x7e, 0x01, 0x41, 0x75, 0x6d, 0x6e, 0x73,
0x3d, 0x00, 0xb2, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x7d, 0x00, 0x00, 0x6b, 0x01, 0x00,
0xa3, 0x00, 0x00, 0x21, 0x02, 0x20, 0x00, 0x47, 0x05, 0x00,
0x31, 0x77, 0x61, 0x73, 0xd5, 0x01, 0x61, 0x72, 0x69, 0x62,
0x75, 0x74, 0x65, 0x8f, 0x00, 0x40, 0x74, 0x68, 0x69, 0x73,
0x47, 0x00, 0x40, 0x6c, 0x65, 0x63, 0x74, 0xbe, 0x00, 0xf0,
0x00, 0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00,
0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x40, 0x00, 0x47, 0x31,
0x33, 0x2e, 0x31, 0x66, 0x02, 0x01, 0x41, 0x00, 0x30, 0x6f,
0x6c, 0x73, 0x6f, 0x02, 0x10, 0x54, 0x3e, 0x00, 0x10, 0x67,
0x5b, 0x00, 0xd2, 0x63, 0x61, 0x6e, 0x00, 0x62, 0x65, 0x00,
0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x73, 0x01, 0x43, 0x65,
0x69, 0x74, 0x68, 0x06, 0x02, 0xb3, 0x6b, 0x65, 0x79, 0x62,
0x6f, 0x61, 0x72, 0x64, 0x00, 0x6f, 0x72, 0xfc, 0x01, 0x37,
0x75, 0x73, 0x65, 0xc9, 0x01, 0x00, 0x58, 0x01, 0x11, 0x2d,
0x6f, 0x01, 0x80, 0x00, 0x61, 0x6e, 0x00, 0x75, 0x6e, 0x73,
0x65, 0x90, 0x00, 0x23, 0x65, 0x64, 0x54, 0x01, 0x90, 0x2c,
0x00, 0x69, 0x74, 0x00, 0x62, 0x65, 0x63, 0x6f, 0x99, 0x00,
0x05, 0x1c, 0x00, 0x92, 0x28, 0x70, 0x6f, 0x73, 0x73, 0x69,
0x62, 0x6c, 0x79, 0x08, 0x02, 0x00, 0x85, 0x01, 0x00, 0x5c,
0x00, 0x73, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x28,
0x00, 0x4f, 0x69, 0x6f, 0x6e, 0x29, 0x69, 0x00, 0x03, 0x00,
0x2c, 0x00, 0x0f, 0x68, 0x00, 0x01, 0x01, 0x7b, 0x01, 0x10,
0x62, 0xbd, 0x01, 0x56, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x94,
0x02, 0x0d, 0xce, 0x01, 0x03, 0xcb, 0x01, 0xd8, 0x64, 0x00,
0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c,
0x79, 0x6d, 0x00, 0x01, 0x82, 0x01, 0x0f, 0x6e, 0x00, 0x14,
0x06, 0xf4, 0x00, 0x11, 0x2e, 0x58, 0x01, 0x01, 0xc8, 0x00,
0x30, 0x73, 0x6f, 0x72, 0x3b, 0x01, 0x41, 0x73, 0x00, 0x6d,
0x6f, 0xd3, 0x03, 0x03, 0x13, 0x00, 0x65, 0x61, 0x72, 0x6f,
0x75, 0x6e, 0x64, 0x88, 0x00, 0x74, 0x2e, 0x00, 0x50, 0x72,
0x65, 0x73, 0x73, 0x00, 0x01, 0x50, 0x53, 0x70, 0x61, 0x63,
0x65, 0x69, 0x01, 0x43, 0x45, 0x6e, 0x74, 0x65, 0x40, 0x00,
0x40, 0x77, 0x68, 0x69, 0x6c, 0xb5, 0x03, 0x05, 0x56, 0x00,
0x5f, 0x69, 0x73, 0x00, 0x69, 0x6e, 0x6c, 0x01, 0x02, 0x03,
0xa6, 0x00, 0x74, 0x73, 0x00, 0x69, 0x74, 0x3b, 0x00, 0x70,
0x59, 0x00, 0x0b, 0x55, 0x00, 0x53, 0x61, 0x67, 0x61, 0x69,
0x6e, 0x22, 0x01, 0x10, 0x73, 0xc7, 0x00, 0x71, 0x61, 0x73,
0x00, 0x61, 0x62, 0x6f, 0x76, 0xd4, 0x01, 0x42, 0x28, 0x41,
0x6c, 0x6c, 0xb0, 0x03, 0x21, 0x63, 0x74, 0x36, 0x03, 0x70,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x29, 0x01, 0x00,
0x5f, 0x00, 0x02, 0x69, 0x02, 0x31, 0x32, 0x2e, 0x31, 0xb7,
0x02, 0xa0, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61,
0x69, 0x6c, 0x6a, 0x03, 0x22, 0x2e, 0x29, 0x71, 0x02, 0x17,
0x32, 0x71, 0x02, 0x93, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
0x74, 0x65, 0x72, 0x73, 0x02, 0x46, 0x65, 0x73, 0x65, 0x00,
0x14, 0x00, 0x02, 0x45, 0x00, 0x04, 0x40, 0x00, 0x06, 0xff,
0x02, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e,
0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x73, 0x00, 0x22, 0x6f,
0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0xaf, 0x00, 0x90, 0x57, 0x69, 0x64,
0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0xae, 0x01, 0x00, 0x2f,
0x03, 0x30, 0x69, 0x7a, 0x65, 0xe7, 0x01, 0x01, 0xe3, 0x01,
0x24, 0x69, 0x6e, 0x27, 0x04, 0x00, 0x2b, 0x00, 0x72, 0x4e,
0x6f, 0x2e, 0x20, 0x6f, 0x66, 0x20, 0xf4, 0x04, 0x10, 0x73,
0x11, 0x00, 0x50, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x00,
0x51, 0x64, 0x69, 0x66, 0x66, 0x65, 0x78, 0x02, 0x04, 0x1e,
0x00, 0x22, 0x75, 0x73, 0x62, 0x03, 0x00, 0x98, 0x03, 0x05,
0xac, 0x01, 0x16, 0x3b, 0xfb, 0x04, 0x03, 0x28, 0x00, 0x12,
0x2c, 0xf0, 0x04, 0x42, 0x65, 0x77, 0x65, 0x72, 0x38, 0x05,
0x08, 0x6c, 0x05, 0x02, 0x24, 0x00, 0x03, 0xf6, 0x03, 0x26,
0x75, 0x73, 0x3d, 0x00, 0x00, 0x6f, 0x00, 0x50, 0x69, 0x63,
0x75, 0x6c, 0x74, 0x7d, 0x01, 0x21, 0x69, 0x73, 0x59, 0x04,
0xbb, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c,
0x6c, 0x79, 0x1a, 0x05, 0x01, 0x06, 0x04, 0x20, 0x63, 0x6f,
0x23, 0x03, 0xb3, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
0x00, 0x00, 0x00, 0x43, 0xc8, 0x03, 0x01, 0x26, 0x00, 0xf2,
0x02, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x65, 0x00, 0x6d,
0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0xbf, 0x00,
0x52, 0x66, 0x6f, 0x72, 0x00, 0x73, 0x39, 0x00, 0x30, 0x2e,
0x00, 0x57, 0xd5, 0x03, 0x00, 0x2d, 0x00, 0x40, 0x64, 0x65,
0x66, 0x61, 0x7b, 0x00, 0x02, 0x4b, 0x00, 0xf8, 0x02, 0x2c,
0x00, 0x60, 0x28, 0x6e, 0x2d, 0x32, 0x29, 0x5e, 0x32, 0x27,
0x2c, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0xc1, 0x00, 0x46, 0x74,
0x68, 0x72, 0x65, 0x6a, 0x05, 0x22, 0x6f, 0x72, 0xbe, 0x00,
0x01, 0xf5, 0x02, 0x20, 0x73, 0x63, 0x0b, 0x00, 0x34, 0x61,
0x6e, 0x79, 0x05, 0x06, 0x00, 0x05, 0x05, 0x27, 0x6c, 0x6c,
0x68, 0x00, 0xb1, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x74, 0x69, 0x76, 0x65, 0x64, 0x00, 0x10, 0x31, 0x64, 0x00,
0x05, 0x76, 0x00, 0x08, 0x66, 0x00, 0x25, 0x77, 0x6f, 0x64,
0x00, 0x03, 0x57, 0x00, 0x02, 0x55, 0x00, 0x52, 0x00, 0x65,
0x61, 0x63, 0x68, 0x36, 0x05, 0x03, 0x94, 0x06, 0x04, 0x36,
0x00, 0x02, 0x27, 0x00, 0x31, 0x72, 0x65, 0x6c, 0x5f, 0x00,
0x28, 0x6c, 0x79, 0x8f, 0x06, 0x00, 0x2f, 0x01, 0xf2, 0x02,
0x45, 0x6e, 0x73, 0x75, 0x72, 0x65, 0x20, 0x73, 0x6f, 0x6c,
0x75, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0xd7, 0x03, 0x01,
0x2f, 0x05, 0x03, 0x4f, 0x02, 0x00, 0x77, 0x01, 0x30, 0x69,
0x63, 0x6b, 0x23, 0x04, 0x09, 0x16, 0x01, 0xd0, 0x74, 0x61,
0x74, 0x65, 0x29, 0x2c, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x59, 0x03, 0x00, 0x83, 0x01, 0x15, 0x73, 0xea, 0x03,
0x82, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x1e,
0x02, 0x02, 0xad, 0x07, 0x71, 0x74, 0x00, 0x6c, 0x65, 0x61,
0x73, 0x74, 0x52, 0x07, 0x00, 0x73, 0x00, 0x00, 0x60, 0x00,
0x07, 0x49, 0x04, 0x60, 0x74, 0x75, 0x72, 0x6e, 0x00, 0x69,
0x7d, 0x04, 0x12, 0x66, 0x2f, 0x02, 0x01, 0x73, 0x05, 0x03,
0x61, 0x00, 0x22, 0x6f, 0x72, 0x5b, 0x00, 0x70, 0x6e, 0x6f,
0x74, 0x00, 0x74, 0x72, 0x79, 0x55, 0x00, 0x05, 0x63, 0x00,
0x01, 0x4d, 0x00, 0x00, 0x17, 0x03, 0x01, 0x83, 0x00, 0x14,
0x3b, 0x71, 0x04, 0xd0, 0x2c, 0x00, 0x68, 0x6f, 0x77, 0x65,
0x76, 0x65, 0x72, 0x2c, 0x00, 0x73, 0x74, 0x3c, 0x00, 0x11,
0x65, 0xee, 0x00, 0x02, 0x89, 0x06, 0x06, 0x08, 0x07, 0x05,
0x97, 0x00, 0x16, 0x32, 0xc2, 0x01, 0x11, 0x66, 0x53, 0x01,
0x04, 0x99, 0x02, 0x26, 0x6f, 0x6e, 0x0e, 0x05, 0x02, 0x3b,
0x00, 0x00, 0xff, 0x00, 0x85, 0x72, 0x74, 0x00, 0x28, 0x73,
0x69, 0x6e, 0x63, 0x86, 0x08, 0x02, 0x0f, 0x06, 0x62, 0x78,
0x61, 0x63, 0x74, 0x6c, 0x79, 0xe4, 0x00, 0x01, 0x4f, 0x00,
0x00, 0x4e, 0x00, 0x74, 0x61, 0x00, 0x67, 0x69, 0x76, 0x65,
0x6e, 0x51, 0x00, 0x20, 0x69, 0x73, 0x48, 0x01, 0x40, 0x69,
0x6e, 0x69, 0x74, 0x94, 0x01, 0x23, 0x69, 0x6e, 0xc0, 0x00,
0x41, 0x29, 0x2e, 0x00, 0x47, 0x45, 0x01, 0x06, 0x55, 0x01,
0x01, 0x54, 0x00, 0x08, 0x8f, 0x01, 0x50, 0x64, 0x69, 0x73,
0x61, 0x62, 0x8e, 0x05, 0x31, 0x6d, 0x61, 0x79, 0xe6, 0x06,
0x00, 0xa3, 0x04, 0x01, 0xd6, 0x01, 0x02, 0x57, 0x03, 0x43,
0x61, 0x72, 0x65, 0x61, 0x55, 0x03, 0x05, 0xd7, 0x08, 0x02,
0x76, 0x00, 0x10, 0x2c, 0xe7, 0x00, 0x11, 0x64, 0x40, 0x05,
0xf1, 0x00, 0x6f, 0x00, 0x6f, 0x70, 0x70, 0x6f, 0x72, 0x74,
0x75, 0x6e, 0x69, 0x74, 0x69, 0x65, 0x73, 0x01, 0x03, 0x00,
0xb8, 0x08, 0x22, 0x65, 0x72, 0x32, 0x02, 0x11, 0x73, 0xc1,
0x03, 0x11, 0x79, 0xef, 0x06, 0x01, 0xba, 0x04, 0x80, 0x74,
0x61, 0x6b, 0x65, 0x00, 0x6c, 0x65, 0x73, 0x0c, 0x02, 0x21,
0x6d, 0x65, 0x7d, 0x01, 0x90, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x2e, 0x00,
0x05, 0x00, 0x2f, 0x00, 0x2d, 0x01, 0x00, 0x01, 0xf4, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x65, 0x64,
0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00,
0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x79, 0x2b, 0x00, 0xf0,
0x1c, 0x74, 0x6f, 0x00, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x00,
0x62, 0x79, 0x00, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67,
0x68, 0x74, 0x69, 0x6e, 0x67, 0x00, 0x63, 0x6f, 0x6e, 0x74,
0x69, 0x67, 0x75, 0x6f, 0x75, 0x73, 0x00, 0x72, 0x65, 0x67,
0x69, 0x6f, 0x6e, 0x73, 0x50, 0x00, 0xdc, 0x6d, 0x6f, 0x72,
0x65, 0x00, 0x74, 0x68, 0x61, 0x6e, 0x00, 0x6f, 0x6e, 0x65,
0x5e, 0x00, 0xc1, 0x3b, 0x00, 0x74, 0x68, 0x65, 0x00, 0x6c,
0x61, 0x72, 0x67, 0x65, 0x72, 0x0b, 0x00, 0x02, 0x39, 0x00,
0x02, 0x6d, 0x00, 0x04, 0x5c, 0x00, 0x11, 0x2c, 0x1a, 0x00,
0x01, 0x48, 0x00, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73,
0x1f, 0x00, 0x81, 0x67, 0x65, 0x74, 0x00, 0x28, 0x61, 0x6e,
0x64, 0x1d, 0x00, 0x61, 0x66, 0x61, 0x73, 0x74, 0x65, 0x72,
0x18, 0x00, 0x02, 0x9c, 0x00, 0x00, 0x15, 0x00, 0xcb, 0x61,
0x72, 0x65, 0x6e, 0x61, 0x29, 0x2e, 0x00, 0x00, 0x00, 0x49,
0x66, 0x1b, 0x00, 0x01, 0xed, 0x00, 0x00, 0x13, 0x00, 0x44,
0x77, 0x69, 0x6e, 0x2e, 0x1f, 0x00, 0xf0, 0x01, 0x65, 0x6e,
0x64, 0x00, 0x75, 0x70, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00,
0x6e, 0x6f, 0x74, 0x68, 0xd4, 0x00, 0xa4, 0x62, 0x75, 0x74,
0x00, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x10, 0x01, 0x61,
0x00, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x94, 0x00, 0x11, 0x72,
0x64, 0x00, 0x32, 0x00, 0x6e, 0x6f, 0x9d, 0x00, 0x95, 0x63,
0x6c, 0x69, 0x63, 0x6b, 0x61, 0x62, 0x6c, 0x65, 0xff, 0x00,
0x51, 0x6c, 0x65, 0x66, 0x74, 0x29, 0x5c, 0x00, 0x40, 0x6c,
0x6f, 0x73, 0x65, 0x8a, 0x00, 0x50, 0x52, 0x65, 0x6d, 0x6f,
0x76, 0x59, 0x00, 0x14, 0x61, 0xeb, 0x00, 0x63, 0x63, 0x61,
0x75, 0x73, 0x65, 0x73, 0xfd, 0x00, 0x20, 0x73, 0x74, 0x33,
0x01, 0x05, 0xa2, 0x00, 0xf0, 0x06, 0x74, 0x6f, 0x00, 0x73,
0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x00, 0x75, 0x70, 0x3a,
0x00, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x4d, 0x01, 0x11,
0x74, 0x79, 0x00, 0xf3, 0x13, 0x73, 0x75, 0x73, 0x70, 0x65,
0x6e, 0x64, 0x65, 0x64, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x00,
0x66, 0x61, 0x6c, 0x6c, 0x00, 0x64, 0x6f, 0x77, 0x6e, 0x00,
0x28, 0x66, 0x69, 0x72, 0x73, 0x74, 0x29, 0x2c, 0x00, 0x20,
0x01, 0x70, 0x6e, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x7e,
0x01, 0x41, 0x75, 0x6d, 0x6e, 0x73, 0x3d, 0x00, 0xb2, 0x66,
0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x66, 0x72, 0x6f, 0x6d,
0x7d, 0x00, 0x00, 0x6b, 0x01, 0x00, 0xa3, 0x00, 0x00, 0x37,
0x02, 0x20, 0x00, 0x47, 0x05, 0x00, 0x31, 0x77, 0x61, 0x73,
0xd5, 0x01, 0x61, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x8f,
0x00, 0x40, 0x74, 0x68, 0x69, 0x73, 0x47, 0x00, 0x40, 0x6c,
0x65, 0x63, 0x74, 0xbe, 0x00, 0xf0, 0x00, 0x62, 0x79, 0x00,
0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61, 0x72, 0x76,
0x65, 0x79, 0x40, 0x00, 0x47, 0x31, 0x33, 0x2e, 0x31, 0x7c,
0x02, 0x01, 0x41, 0x00, 0x80, 0x6f, 0x6c, 0x73, 0x20, 0x00,
0x00, 0x00, 0x54, 0x3e, 0x00, 0x10, 0x67, 0x5b, 0x00, 0xd2,
0x63, 0x61, 0x6e, 0x00, 0x62, 0x65, 0x00, 0x70, 0x6c, 0x61,
0x79, 0x65, 0x64, 0x73, 0x01, 0x43, 0x65, 0x69, 0x74, 0x68,
0x06, 0x02, 0xb3, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72,
0x64, 0x00, 0x6f, 0x72, 0xfc, 0x01, 0x37, 0x75, 0x73, 0x65,
0xc9, 0x01, 0x00, 0x58, 0x01, 0x11, 0x2d, 0x6f, 0x01, 0x80,
0x00, 0x61, 0x6e, 0x00, 0x75, 0x6e, 0x73, 0x65, 0x90, 0x00,
0x23, 0x65, 0x64, 0x54, 0x01, 0x90, 0x2c, 0x00, 0x69, 0x74,
0x00, 0x62, 0x65, 0x63, 0x6f, 0x99, 0x00, 0x05, 0x1c, 0x00,
0x92, 0x28, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x79,
0x08, 0x02, 0x00, 0x85, 0x01, 0x00, 0x5c, 0x00, 0x73, 0x63,
0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x28, 0x00, 0x4f, 0x69,
0x6f, 0x6e, 0x29, 0x69, 0x00, 0x03, 0x00, 0x2c, 0x00, 0x0f,
0x68, 0x00, 0x01, 0x01, 0x7b, 0x01, 0x10, 0x62, 0xbd, 0x01,
0x56, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x94, 0x02, 0x0d, 0xce,
0x01, 0x03, 0xcb, 0x01, 0xd8, 0x64, 0x00, 0x69, 0x6d, 0x6d,
0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x6d, 0x00,
0x01, 0x82, 0x01, 0x0f, 0x6e, 0x00, 0x14, 0x06, 0xf4, 0x00,
0x11, 0x2e, 0x58, 0x01, 0x01, 0xc8, 0x00, 0x30, 0x73, 0x6f,
0x72, 0x3b, 0x01, 0x41, 0x73, 0x00, 0x6d, 0x6f, 0xd3, 0x03,
0x03, 0x13, 0x00, 0x65, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64,
0x88, 0x00, 0x74, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73,
0x00, 0x01, 0x50, 0x53, 0x70, 0x61, 0x63, 0x65, 0x69, 0x01,
0x43, 0x45, 0x6e, 0x74, 0x65, 0x40, 0x00, 0x40, 0x77, 0x68,
0x69, 0x6c, 0xb5, 0x03, 0x05, 0x56, 0x00, 0x5f, 0x69, 0x73,
0x00, 0x69, 0x6e, 0x6c, 0x01, 0x02, 0x03, 0xa6, 0x00, 0x74,
0x73, 0x00, 0x69, 0x74, 0x3b, 0x00, 0x70, 0x59, 0x00, 0x0b,
0x55, 0x00, 0x53, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x22, 0x01,
0x10, 0x73, 0xc7, 0x00, 0x71, 0x61, 0x73, 0x00, 0x61, 0x62,
0x6f, 0x76, 0xd4, 0x01, 0x42, 0x28, 0x41, 0x6c, 0x6c, 0xb0,
0x03, 0x21, 0x63, 0x74, 0x36, 0x03, 0x70, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x62, 0x29, 0x01, 0x00, 0x5f, 0x00, 0x02,
0x69, 0x02, 0x31, 0x32, 0x2e, 0x31, 0xb7, 0x02, 0xa0, 0x61,
0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x6a,
0x03, 0x22, 0x2e, 0x29, 0x71, 0x02, 0x17, 0x32, 0x71, 0x02,
0x93, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
0x73, 0x02, 0x46, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02,
0x45, 0x00, 0x04, 0x40, 0x00, 0x06, 0xff, 0x02, 0xe1, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27,
0x00, 0x6f, 0x70, 0x73, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00,
0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e,
0x75, 0xaf, 0x00, 0x90, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c,
0x00, 0x48, 0x65, 0xae, 0x01, 0x00, 0x2f, 0x03, 0x30, 0x69,
0x7a, 0x65, 0xe7, 0x01, 0x01, 0xe3, 0x01, 0x24, 0x69, 0x6e,
0x27, 0x04, 0x00, 0x2b, 0x00, 0x72, 0x4e, 0x6f, 0x2e, 0x20,
0x6f, 0x66, 0x20, 0xf4, 0x04, 0x10, 0x73, 0x11, 0x00, 0x50,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x00, 0x51, 0x64, 0x69,
0x66, 0x66, 0x65, 0x78, 0x02, 0x04, 0x1e, 0x00, 0x22, 0x75,
0x73, 0x62, 0x03, 0x00, 0x98, 0x03, 0x05, 0xac, 0x01, 0x16,
0x3b, 0xfb, 0x04, 0x03, 0x28, 0x00, 0x12, 0x2c, 0xf0, 0x04,
0x42, 0x65, 0x77, 0x65, 0x72, 0x38, 0x05, 0x08, 0x6c, 0x05,
0x02, 0x24, 0x00, 0x03, 0xf6, 0x03, 0x26, 0x75, 0x73, 0x3d,
0x00, 0x00, 0x6f, 0x00, 0x50, 0x69, 0x63, 0x75, 0x6c, 0x74,
0x7d, 0x01, 0x21, 0x69, 0x73, 0x59, 0x04, 0xbb, 0x75, 0x63,
0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x1a,
0x05, 0x01, 0x06, 0x04, 0x20, 0x63, 0x6f, 0x23, 0x03, 0xb3,
0x20, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x00, 0x00, 0x00,
0x43, 0xc8, 0x03, 0x01, 0x26, 0x00, 0xf2, 0x02, 0x70, 0x72,
0x65, 0x63, 0x69, 0x73, 0x65, 0x00, 0x6d, 0x65, 0x63, 0x68,
0x61, 0x6e, 0x69, 0x73, 0x6d, 0xbf, 0x00, 0x52, 0x66, 0x6f,
0x72, 0x00, 0x73, 0x39, 0x00, 0x30, 0x2e, 0x00, 0x57, 0xd5,
0x03, 0x00, 0x2d, 0x00, 0x40, 0x64, 0x65, 0x66, 0x61, 0x7b,
0x00, 0x02, 0x4b, 0x00, 0xf8, 0x02, 0x2c, 0x00, 0x60, 0x28,
0x6e, 0x2d, 0x32, 0x29, 0x5e, 0x32, 0x27, 0x2c, 0x00, 0x6f,
0x6e, 0x6c, 0x79, 0xc1, 0x00, 0x46, 0x74, 0x68, 0x72, 0x65,
0x6a, 0x05, 0x22, 0x6f, 0x72, 0xbe, 0x00, 0x01, 0xf5, 0x02,
0x20, 0x73, 0x63, 0x0b, 0x00, 0x34, 0x61, 0x6e, 0x79, 0x05,
0x06, 0x00, 0x05, 0x05, 0x27, 0x6c, 0x6c, 0x68, 0x00, 0xb1,
0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76,
0x65, 0x64, 0x00, 0x10, 0x31, 0x64, 0x00, 0x05, 0x76, 0x00,
0x08, 0x66, 0x00, 0x25, 0x77, 0x6f, 0x64, 0x00, 0x03, 0x57,
0x00, 0x02, 0x55, 0x00, 0x52, 0x00, 0x65, 0x61, 0x63, 0x68,
0x36, 0x05, 0x03, 0x94, 0x06, 0x04, 0x36, 0x00, 0x02, 0x27,
0x00, 0x31, 0x72, 0x65, 0x6c, 0x5f, 0x00, 0x28, 0x6c, 0x79,
0x8f, 0x06, 0x00, 0x2f, 0x01, 0xf2, 0x02, 0x45, 0x6e, 0x73,
0x75, 0x72, 0x65, 0x20, 0x73, 0x6f, 0x6c, 0x75, 0x62, 0x69,
0x6c, 0x69, 0x74, 0x79, 0xd7, 0x03, 0x01, 0x2f, 0x05, 0x03,
0x4f, 0x02, 0x00, 0x77, 0x01, 0x30, 0x69, 0x63, 0x6b, 0x23,
0x04, 0x09, 0x16, 0x01, 0xd0, 0x74, 0x61, 0x74, 0x65, 0x29,
0x2c, 0x00, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x59, 0x03,
0x00, 0x83, 0x01, 0x15, 0x73, 0xea, 0x03, 0x82, 0x67, 0x75,
0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x1e, 0x02, 0x02, 0xad,
0x07, 0x71, 0x74, 0x00, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x52,
0x07, 0x00, 0x73, 0x00, 0x00, 0x60, 0x00, 0x07, 0x49, 0x04,
0x60, 0x74, 0x75, 0x72, 0x6e, 0x00, 0x69, 0x7d, 0x04, 0x12,
0x66, 0x2f, 0x02, 0x01, 0x73, 0x05, 0x03, 0x61, 0x00, 0x22,
0x6f, 0x72, 0x5b, 0x00, 0x70, 0x6e, 0x6f, 0x74, 0x00, 0x74,
0x72, 0x79, 0x55, 0x00, 0x05, 0x63, 0x00, 0x01, 0x4d, 0x00,
0x00, 0x17, 0x03, 0x01, 0x83, 0x00, 0x14, 0x3b, 0x71, 0x04,
0xd0, 0x2c, 0x00, 0x68, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72,
0x2c, 0x00, 0x73, 0x74, 0x3c, 0x00, 0x11, 0x65, 0xee, 0x00,
0x02, 0x89, 0x06, 0x06, 0x08, 0x07, 0x05, 0x97, 0x00, 0x16,
0x32, 0xc2, 0x01, 0x11, 0x66, 0x53, 0x01, 0x04, 0x99, 0x02,
0x26, 0x6f, 0x6e, 0x0e, 0x05, 0x02, 0x3b, 0x00, 0x00, 0xff,
0x00, 0x85, 0x72, 0x74, 0x00, 0x28, 0x73, 0x69, 0x6e, 0x63,
0x86, 0x08, 0x02, 0x0f, 0x06, 0x62, 0x78, 0x61, 0x63, 0x74,
0x6c, 0x79, 0xe4, 0x00, 0x01, 0x4f, 0x00, 0x00, 0x4e, 0x00,
0x74, 0x61, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x51, 0x00,
0x20, 0x69, 0x73, 0x48, 0x01, 0x40, 0x69, 0x6e, 0x69, 0x74,
0x94, 0x01, 0x23, 0x69, 0x6e, 0xc0, 0x00, 0x41, 0x29, 0x2e,
0x00, 0x47, 0x45, 0x01, 0x06, 0x55, 0x01, 0x01, 0x54, 0x00,
0x08, 0x8f, 0x01, 0x50, 0x64, 0x69, 0x73, 0x61, 0x62, 0x8e,
0x05, 0x31, 0x6d, 0x61, 0x79, 0xe6, 0x06, 0x00, 0xa3, 0x04,
0x01, 0xd6, 0x01, 0x02, 0x57, 0x03, 0x43, 0x61, 0x72, 0x65,
0x61, 0x55, 0x03, 0x05, 0xd7, 0x08, 0x02, 0x76, 0x00, 0x10,
0x2c, 0xe7, 0x00, 0x11, 0x64, 0x40, 0x05, 0xf1, 0x00, 0x6f,
0x00, 0x6f, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x75, 0x6e, 0x69,
0x74, 0x69, 0x65, 0x73, 0x01, 0x03, 0x00, 0xb8, 0x08, 0x22,
0x65, 0x72, 0x32, 0x02, 0x11, 0x73, 0xc1, 0x03, 0x11, 0x79,
0xef, 0x06, 0x01, 0xba, 0x04, 0x80, 0x74, 0x61, 0x6b, 0x65,
0x00, 0x6c, 0x65, 0x73, 0x0c, 0x02, 0x21, 0x6d, 0x65, 0x7d,
0x01, 0x90, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x2e,
0x00,
};
const unsigned short help_text_len = 2470;
const unsigned short help_text_words = 444;
const unsigned short help_text_len = 2492;
const unsigned short help_text_words = 445;
const char quick_help_text[] = "Clear the grid by removing touching groups of the same colour squares.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,208 +6,220 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 158, TEXT_CENTER | C_RED },
{ 495, TEXT_CENTER | C_RED },
{ 512, TEXT_UNDERLINE },
{ 159, TEXT_CENTER | C_RED },
{ 496, TEXT_CENTER | C_RED },
{ 513, TEXT_UNDERLINE },
{ 523, TEXT_UNDERLINE },
{ 514, TEXT_UNDERLINE },
{ 524, TEXT_UNDERLINE },
{ 569, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 3054 comp 1895 ratio 0.620498 level 10 saved 1159 */
/* orig 3255 comp 2009 ratio 0.617204 level 10 saved 1246 */
const char help_text[] = {
0xf3, 0x29, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x08, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x34, 0x3a, 0x20, 0x53, 0x69, 0x67, 0x6e, 0x70, 0x6f,
0x73, 0x74, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00,
0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69,
0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72,
0x65, 0x73, 0x3b, 0x00, 0x65, 0x61, 0x63, 0x68, 0x0e, 0x00,
0xf4, 0x23, 0x00, 0x28, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74,
0x00, 0x74, 0x68, 0x65, 0x00, 0x6c, 0x61, 0x73, 0x74, 0x00,
0x6f, 0x6e, 0x65, 0x29, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x73, 0x00, 0x61, 0x6e, 0x00, 0x61, 0x72, 0x72,
0x6f, 0x77, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x73, 0x6f,
0x6d, 0x65, 0x47, 0x00, 0x54, 0x00, 0x61, 0x6c, 0x73, 0x6f,
0x29, 0x00, 0x90, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x73, 0x2e, 0x78, 0x00, 0xa1, 0x72, 0x00, 0x6a, 0x6f, 0x62,
0x00, 0x69, 0x73, 0x00, 0x74, 0x20, 0x00, 0x32, 0x6e, 0x65,
0x63, 0x5f, 0x00, 0x04, 0x39, 0x00, 0x91, 0x74, 0x6f, 0x00,
0x66, 0x6f, 0x72, 0x6d, 0x00, 0x61, 0x3e, 0x00, 0x90, 0x69,
0x6e, 0x75, 0x6f, 0x75, 0x73, 0x00, 0x6c, 0x69, 0x7c, 0x00,
0x14, 0x66, 0x49, 0x00, 0xe1, 0x00, 0x73, 0x74, 0x61, 0x72,
0x74, 0x69, 0x6e, 0x67, 0x00, 0x61, 0x74, 0x00, 0x31, 0x7d,
0x00, 0x91, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x00, 0x69,
0x6e, 0x4d, 0x00, 0x90, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x35, 0x00, 0x00, 0x11, 0x00, 0x01, 0xa7,
0x00, 0x66, 0x73, 0x00, 0x2d, 0x00, 0x73, 0x6f, 0x10, 0x00,
0x77, 0x00, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x7f, 0x00,
0x51, 0x00, 0x77, 0x69, 0x74, 0x68, 0x10, 0x00, 0x02, 0x6a,
0x00, 0xd0, 0x00, 0x31, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x00,
0x70, 0x6f, 0x69, 0x6e, 0x74, 0x9b, 0x00, 0x07, 0x2b, 0x00,
0x03, 0xdd, 0x00, 0x00, 0x86, 0x00, 0x07, 0x31, 0x00, 0x8f,
0x32, 0x2c, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x38, 0x00,
0x1d, 0x97, 0x33, 0x2c, 0x00, 0x65, 0x74, 0x63, 0x2e, 0x00,
0x45, 0x7e, 0x01, 0xf1, 0x0e, 0x63, 0x61, 0x6e, 0x00, 0x62,
0x65, 0x00, 0x61, 0x6e, 0x79, 0x00, 0x64, 0x69, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x00, 0x61, 0x77, 0x61, 0x79, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x3d, 0x00, 0x50, 0x70, 0x72, 0x65,
0x76, 0x69, 0x21, 0x01, 0xc0, 0x6f, 0x6e, 0x65, 0x2c, 0x00,
0x61, 0x73, 0x00, 0x6c, 0x6f, 0x6e, 0x67, 0x08, 0x00, 0x20,
0x69, 0x74, 0x63, 0x01, 0x00, 0x92, 0x01, 0x5f, 0x77, 0x68,
0x65, 0x72, 0x65, 0x18, 0x01, 0x0b, 0x60, 0x2e, 0x00, 0x00,
0x00, 0x42, 0x79, 0x99, 0x00, 0x31, 0x76, 0x65, 0x6e, 0x1e,
0x00, 0x00, 0x1b, 0x00, 0x52, 0x66, 0x69, 0x72, 0x73, 0x74,
0x5c, 0x01, 0x00, 0xfa, 0x01, 0x04, 0x7b, 0x01, 0x00, 0x99,
0x00, 0x60, 0x73, 0x68, 0x6f, 0x77, 0x6e, 0x3b, 0x75, 0x00,
0x61, 0x00, 0x6f, 0x72, 0x00, 0x6d, 0x6f, 0x61, 0x00, 0x55,
0x74, 0x65, 0x72, 0x69, 0x6d, 0x27, 0x00, 0x32, 0x6d, 0x61,
0x79, 0x04, 0x02, 0x82, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72,
0x00, 0x61, 0xe6, 0x01, 0x50, 0x62, 0x65, 0x67, 0x69, 0x6e,
0xfc, 0x00, 0x00, 0x74, 0x00, 0x60, 0x43, 0x72, 0x65, 0x64,
0x69, 0x74, 0xef, 0x01, 0xf2, 0x00, 0x00, 0x74, 0x68, 0x69,
0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67,
0x6f, 0x07, 0x02, 0xa0, 0x4a, 0x61, 0x6e, 0x6b, 0x6f, 0x00,
0x5b, 0x31, 0x37, 0x5d, 0x54, 0x01, 0x60, 0x6f, 0x00, 0x63,
0x61, 0x6c, 0x6c, 0xd9, 0x00, 0xe2, 0x60, 0x50, 0x66, 0x65,
0x69, 0x6c, 0x70, 0x66, 0x61, 0x64, 0x27, 0x00, 0x28, 0x60,
0xca, 0x01, 0x60, 0x70, 0x61, 0x74, 0x68, 0x27, 0x29, 0x55,
0x00, 0x04, 0xe7, 0x02, 0x41, 0x00, 0x77, 0x61, 0x73, 0x6c,
0x01, 0x72, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x86,
0x01, 0x10, 0x69, 0x14, 0x00, 0x23, 0x6c, 0x6c, 0x05, 0x01,
0xf0, 0x00, 0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73,
0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x3f, 0x00, 0x00,
0x6f, 0x00, 0x90, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
0x2f, 0x6a, 0x81, 0x00, 0xc5, 0x2e, 0x61, 0x74, 0x2f, 0x52,
0x61, 0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f, 0x79, 0x00, 0xf6,
0x02, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74,
0x6d, 0x00, 0x00, 0x00, 0x33, 0x34, 0x2e, 0x31, 0x5e, 0x03,
0x01, 0x73, 0x00, 0x30, 0x6f, 0x6c, 0x73, 0x67, 0x03, 0x75,
0x54, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x94, 0x00, 0x55,
0x2c, 0x00, 0x79, 0x6f, 0x75, 0xf6, 0x02, 0x06, 0xf2, 0x02,
0x60, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x8f, 0x00, 0x50,
0x64, 0x72, 0x61, 0x67, 0x67, 0x1b, 0x02, 0x01, 0xe3, 0x01,
0x25, 0x6f, 0x6e, 0x36, 0x02, 0x60, 0x74, 0x6f, 0x00, 0x61,
0x6e, 0x6f, 0x27, 0x00, 0x92, 0x2c, 0x00, 0x69, 0x6e, 0x64,
0x69, 0x63, 0x61, 0x74, 0x42, 0x02, 0x02, 0x59, 0x01, 0x11,
0x79, 0x98, 0x01, 0x84, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65,
0x6e, 0x74, 0xef, 0x01, 0xe6, 0x73, 0x65, 0x71, 0x75, 0x65,
0x6e, 0x63, 0x65, 0x2e, 0x00, 0x44, 0x72, 0x61, 0x67, 0xdd,
0x02, 0xb2, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x62, 0x75, 0x74,
0x74, 0x6f, 0x6e, 0x69, 0x00, 0x17, 0x61, 0x67, 0x00, 0xe0,
0x69, 0x74, 0x73, 0x00, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x2c, 0xe1, 0x01, 0x05, 0x38, 0x00, 0x4f,
0x72, 0x69, 0x67, 0x68, 0x39, 0x00, 0x0b, 0x52, 0x70, 0x72,
0x65, 0x64, 0x65, 0x3b, 0x00, 0x00, 0x4e, 0x01, 0x29, 0x49,
0x66, 0xf2, 0x00, 0x05, 0xea, 0x00, 0x35, 0x74, 0x77, 0x6f,
0xff, 0x00, 0x22, 0x69, 0x6e, 0x98, 0x01, 0x00, 0xd9, 0x02,
0x00, 0x6e, 0x02, 0x01, 0x56, 0x02, 0x01, 0x9e, 0x02, 0x74,
0x6d, 0x00, 0x68, 0x61, 0x73, 0x00, 0x61, 0x23, 0x03, 0x62,
0x69, 0x6e, 0x00, 0x69, 0x74, 0x2c, 0xb7, 0x02, 0x95, 0x70,
0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x41, 0x03,
0x01, 0x70, 0x03, 0x03, 0x6d, 0x02, 0x03, 0xff, 0x00, 0x01,
0x2f, 0x01, 0x03, 0x68, 0x00, 0x1d, 0x2e, 0x8c, 0x00, 0x72,
0x77, 0x6f, 0x00, 0x6e, 0x6f, 0x6e, 0x2d, 0x3f, 0x00, 0x24,
0x65, 0x64, 0x90, 0x00, 0x12, 0x2c, 0x4f, 0x01, 0x01, 0x4f,
0x00, 0x00, 0x7d, 0x03, 0x50, 0x73, 0x73, 0x69, 0x67, 0x6e,
0x3f, 0x02, 0x70, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72,
0xd7, 0x02, 0xf9, 0x01, 0x67, 0x65, 0x62, 0x72, 0x61, 0x69,
0x63, 0x00, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x3a, 0x00,
0x32, 0x03, 0x8b, 0x6f, 0x63, 0x63, 0x61, 0x73, 0x69, 0x6f,
0x6e, 0x49, 0x00, 0x01, 0x2c, 0x00, 0x71, 0x6c, 0x65, 0x64,
0x00, 0x60, 0x61, 0x27, 0xe8, 0x00, 0x52, 0x60, 0x61, 0x2b,
0x31, 0x27, 0x3a, 0x05, 0x73, 0x74, 0x68, 0x65, 0x6e, 0x00,
0x60, 0x62, 0x18, 0x00, 0x15, 0x62, 0x18, 0x00, 0x82, 0x73,
0x6f, 0x00, 0x6f, 0x6e, 0x2e, 0x00, 0x43, 0xb3, 0x00, 0x00,
0xf0, 0x01, 0x01, 0x6c, 0x03, 0x04, 0x3a, 0x01, 0x24, 0x6f,
0x6e, 0x5b, 0x04, 0x41, 0x65, 0x6e, 0x64, 0x73, 0xc5, 0x05,
0x30, 0x75, 0x63, 0x68, 0x3a, 0x05, 0x10, 0x68, 0x76, 0x05,
0x01, 0x7a, 0x00, 0x52, 0x63, 0x61, 0x75, 0x73, 0x65, 0x4d,
0x01, 0x00, 0x3f, 0x03, 0x29, 0x74, 0x6f, 0x8c, 0x00, 0x05,
0xda, 0x01, 0x30, 0x73, 0x61, 0x6d, 0x17, 0x02, 0x31, 0x74,
0x74, 0x65, 0xb8, 0x01, 0x10, 0x57, 0x91, 0x00, 0x00, 0x2e,
0x01, 0x00, 0x2a, 0x02, 0x60, 0x2d, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0x09, 0x02, 0x01, 0x00, 0x02, 0x03, 0x0f, 0x00, 0x25,
0x69, 0x6e, 0xfd, 0x01, 0x13, 0x2c, 0x55, 0x02, 0x38, 0x67,
0x61, 0x6c, 0xc7, 0x05, 0x04, 0x6a, 0x01, 0x11, 0x69, 0x02,
0x05, 0x04, 0x08, 0x01, 0x01, 0x3c, 0x04, 0x10, 0x2e, 0x1d,
0x03, 0x07, 0x87, 0x05, 0x09, 0x75, 0x06, 0x01, 0xdd, 0x05,
0x00, 0xcf, 0x00, 0x72, 0x66, 0x00, 0x62, 0x6c, 0x61, 0x63,
0x6b, 0x0c, 0x01, 0x01, 0x16, 0x04, 0x60, 0x67, 0x72, 0x65,
0x79, 0x00, 0x6f, 0x08, 0x05, 0x09, 0xcb, 0x01, 0x2e, 0x68,
0x65, 0xc0, 0x02, 0x04, 0x85, 0x02, 0x59, 0x41, 0x6c, 0x73,
0x6f, 0x2c, 0x60, 0x00, 0x02, 0xa0, 0x05, 0x40, 0x6e, 0x65,
0x65, 0x64, 0x5d, 0x02, 0x07, 0xb2, 0x02, 0x03, 0x6f, 0x02,
0x20, 0x73, 0x6d, 0x2a, 0x01, 0x25, 0x64, 0x6f, 0x47, 0x03,
0x62, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x36, 0x03, 0x64,
0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0xe5, 0x05, 0x86, 0x76,
0x61, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x73, 0x94, 0x00, 0x00,
0x88, 0x06, 0x0b, 0x16, 0x03, 0x60, 0x2e, 0x00, 0x53, 0x6f,
0x00, 0x79, 0xfa, 0x06, 0x50, 0x61, 0x69, 0x6d, 0x00, 0x69,
0x1c, 0x07, 0x39, 0x77, 0x61, 0x79, 0x23, 0x01, 0x19, 0x61,
0x80, 0x06, 0x12, 0x61, 0xf8, 0x00, 0x03, 0x1e, 0x01, 0x2d,
0x74, 0x6f, 0x1f, 0x00, 0x42, 0x64, 0x6f, 0x74, 0x2e, 0x5f,
0x04, 0x52, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x23, 0x06, 0x00,
0x7a, 0x00, 0x11, 0x73, 0x4d, 0x05, 0x30, 0x61, 0x00, 0x70,
0x1f, 0x07, 0x55, 0x63, 0x75, 0x6c, 0x61, 0x72, 0xca, 0x07,
0xa1, 0x62, 0x6f, 0x74, 0x68, 0x00, 0x69, 0x6e, 0x63, 0x6f,
0x6d, 0x38, 0x07, 0x00, 0x69, 0x03, 0x92, 0x75, 0x74, 0x67,
0x6f, 0x69, 0x6e, 0x67, 0x29, 0x2c, 0xe7, 0x01, 0x10, 0x64,
0x24, 0x04, 0x10, 0x69, 0x68, 0x07, 0x02, 0x1c, 0x06, 0x00,
0x1a, 0x08, 0x18, 0x2e, 0x65, 0x00, 0x00, 0x86, 0x05, 0x22,
0x6c, 0x65, 0x5e, 0x02, 0x13, 0x2c, 0x0d, 0x02, 0x01, 0x35,
0x00, 0x00, 0x7f, 0x00, 0x03, 0x68, 0x00, 0x03, 0x33, 0x01,
0x02, 0x82, 0x02, 0x0a, 0x4a, 0x00, 0x02, 0x77, 0x08, 0x00,
0xd5, 0x06, 0x01, 0x19, 0x06, 0x03, 0x98, 0x02, 0x40, 0x00,
0x63, 0x75, 0x72, 0x7c, 0x01, 0x22, 0x6b, 0x65, 0x13, 0x01,
0x02, 0x6b, 0x00, 0x55, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x3c,
0x00, 0x06, 0x56, 0x08, 0x02, 0xea, 0x07, 0x94, 0x65, 0x73,
0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0x45, 0x07, 0x80,
0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x00, 0x6b, 0x70, 0x03,
0x00, 0xbb, 0x02, 0x30, 0x6f, 0x76, 0x65, 0x07, 0x01, 0x0a,
0x51, 0x02, 0x12, 0x61, 0x9d, 0x01, 0x50, 0x6f, 0x70, 0x65,
0x72, 0x61, 0xff, 0x05, 0x02, 0x58, 0x02, 0x1f, 0x70, 0x48,
0x00, 0x04, 0x4c, 0x61, 0x67, 0x61, 0x69, 0x49, 0x00, 0x01,
0xc4, 0x02, 0x20, 0x66, 0x69, 0xf4, 0x01, 0x02, 0xf3, 0x02,
0x70, 0x69, 0x6e, 0x6b, 0x2c, 0x00, 0x69, 0x66, 0x5b, 0x03,
0x6b, 0x6f, 0x77, 0x61, 0x62, 0x6c, 0x65, 0x98, 0x00, 0x9f,
0x73, 0x70, 0x61, 0x63, 0x65, 0x00, 0x62, 0x61, 0x72, 0x49,
0x00, 0x01, 0x00, 0x0a, 0x03, 0x0d, 0xa8, 0x04, 0x12, 0x73,
0x34, 0x08, 0x01, 0x41, 0x00, 0x00, 0x3d, 0x02, 0x02, 0xa5,
0x00, 0x01, 0x60, 0x00, 0x01, 0x60, 0x02, 0x06, 0x1f, 0x09,
0x72, 0x62, 0x61, 0x63, 0x6b, 0x77, 0x61, 0x72, 0xfb, 0x08,
0x0e, 0xcc, 0x00, 0x07, 0x7c, 0x00, 0x02, 0xcb, 0x00, 0x10,
0x63, 0x40, 0x08, 0x21, 0x6c, 0x73, 0x6d, 0x05, 0x00, 0x8d,
0x01, 0x42, 0x28, 0x41, 0x6c, 0x6c, 0x4d, 0x05, 0x01, 0x0d,
0x07, 0x92, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x46, 0x09, 0x13, 0x73, 0x23, 0x07, 0x32, 0x32, 0x2e,
0x31, 0x5b, 0x06, 0x01, 0xcc, 0x07, 0x41, 0x76, 0x61, 0x69,
0x6c, 0xe7, 0x00, 0x12, 0x29, 0xf8, 0x06, 0x16, 0x32, 0xf8,
0x06, 0xb2, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x73, 0x20, 0xdd, 0x03, 0x36, 0x73, 0x65, 0x00, 0x14,
0x00, 0x02, 0x44, 0x00, 0x04, 0x3f, 0x00, 0x06, 0xc1, 0x08,
0xe2, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x9a, 0x08, 0x12, 0x6e, 0x1a,
0x00, 0xa1, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65,
0x6e, 0x75, 0x92, 0x04, 0x81, 0x69, 0x64, 0x74, 0x68, 0x2c,
0x00, 0x48, 0x65, 0x83, 0x06, 0x00, 0xe7, 0x07, 0x11, 0x7a,
0x27, 0x06, 0x01, 0x1f, 0x02, 0x24, 0x69, 0x6e, 0x3e, 0x01,
0x00, 0x2b, 0x00, 0x61, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x20,
0xf5, 0x01, 0x82, 0x2f, 0x65, 0x6e, 0x64, 0x20, 0x74, 0x6f,
0x20, 0xb6, 0x03, 0x12, 0x73, 0x92, 0x06, 0x33, 0x74, 0x72,
0x75, 0xb3, 0x04, 0x01, 0x24, 0x00, 0x01, 0x3a, 0x01, 0x27,
0x65, 0x6e, 0x65, 0x02, 0x24, 0x72, 0x65, 0xa3, 0x03, 0x42,
0x70, 0x6c, 0x61, 0x63, 0x10, 0x01, 0x94, 0x6f, 0x70, 0x70,
0x6f, 0x73, 0x69, 0x74, 0x65, 0x00, 0x4b, 0x00, 0x17, 0x28,
0x41, 0x00, 0x02, 0x83, 0x04, 0x31, 0x74, 0x6f, 0x70, 0x49,
0x03, 0x05, 0xd4, 0x05, 0x01, 0x56, 0x00, 0x28, 0x61, 0x74,
0x44, 0x04, 0x01, 0x35, 0x03, 0x11, 0x29, 0x8d, 0x06, 0x5f,
0x66, 0x61, 0x6c, 0x73, 0x65, 0x87, 0x00, 0x0c, 0x03, 0x80,
0x00, 0xf4, 0x03, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x6c,
0x79, 0x00, 0x28, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67,
0x68, 0xa1, 0x00, 0x01, 0xd6, 0x03, 0x80, 0x73, 0x68, 0x6f,
0x77, 0x6e, 0x29, 0x2e, 0x00,
0x73, 0x74, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x00, 0xf3, 0x14,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x3b,
0x00, 0x65, 0x61, 0x63, 0x68, 0x0e, 0x00, 0xf4, 0x23, 0x00,
0x28, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x00, 0x74, 0x68,
0x65, 0x00, 0x6c, 0x61, 0x73, 0x74, 0x00, 0x6f, 0x6e, 0x65,
0x29, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73,
0x00, 0x61, 0x6e, 0x00, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x2c,
0x00, 0x61, 0x6e, 0x64, 0x00, 0x73, 0x6f, 0x6d, 0x65, 0x47,
0x00, 0x54, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x29, 0x00, 0x90,
0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x78,
0x00, 0xa1, 0x72, 0x00, 0x6a, 0x6f, 0x62, 0x00, 0x69, 0x73,
0x00, 0x74, 0x20, 0x00, 0x32, 0x6e, 0x65, 0x63, 0x5f, 0x00,
0x04, 0x39, 0x00, 0x91, 0x74, 0x6f, 0x00, 0x66, 0x6f, 0x72,
0x6d, 0x00, 0x61, 0x3e, 0x00, 0x90, 0x69, 0x6e, 0x75, 0x6f,
0x75, 0x73, 0x00, 0x6c, 0x69, 0x7c, 0x00, 0x14, 0x66, 0x49,
0x00, 0xe1, 0x00, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e,
0x67, 0x00, 0x61, 0x74, 0x00, 0x31, 0x7d, 0x00, 0x91, 0x6c,
0x69, 0x6e, 0x6b, 0x65, 0x64, 0x00, 0x69, 0x6e, 0x4d, 0x00,
0x90, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x35, 0x00, 0x00, 0x11, 0x00, 0x01, 0xa7, 0x00, 0x66, 0x73,
0x00, 0x2d, 0x00, 0x73, 0x6f, 0x10, 0x00, 0x77, 0x00, 0x69,
0x6e, 0x73, 0x69, 0x64, 0x65, 0x7f, 0x00, 0x51, 0x00, 0x77,
0x69, 0x74, 0x68, 0x10, 0x00, 0x02, 0x6a, 0x00, 0xd0, 0x00,
0x31, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x70, 0x6f, 0x69,
0x6e, 0x74, 0x9b, 0x00, 0x07, 0x2b, 0x00, 0x03, 0xdd, 0x00,
0x00, 0x86, 0x00, 0x07, 0x31, 0x00, 0x8f, 0x32, 0x2c, 0x00,
0x77, 0x68, 0x69, 0x63, 0x68, 0x38, 0x00, 0x1d, 0x97, 0x33,
0x2c, 0x00, 0x65, 0x74, 0x63, 0x2e, 0x00, 0x45, 0x7e, 0x01,
0xf1, 0x0e, 0x63, 0x61, 0x6e, 0x00, 0x62, 0x65, 0x00, 0x61,
0x6e, 0x79, 0x00, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x00, 0x61, 0x77, 0x61, 0x79, 0x00, 0x66, 0x72, 0x6f,
0x6d, 0x3d, 0x00, 0x50, 0x70, 0x72, 0x65, 0x76, 0x69, 0x21,
0x01, 0xc0, 0x6f, 0x6e, 0x65, 0x2c, 0x00, 0x61, 0x73, 0x00,
0x6c, 0x6f, 0x6e, 0x67, 0x08, 0x00, 0x20, 0x69, 0x74, 0x63,
0x01, 0x00, 0x92, 0x01, 0x5f, 0x77, 0x68, 0x65, 0x72, 0x65,
0x18, 0x01, 0x0b, 0x60, 0x2e, 0x00, 0x00, 0x00, 0x42, 0x79,
0x99, 0x00, 0x31, 0x76, 0x65, 0x6e, 0x1e, 0x00, 0x00, 0x1b,
0x00, 0x52, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5c, 0x01, 0x00,
0xfa, 0x01, 0x04, 0x7b, 0x01, 0x00, 0x99, 0x00, 0x60, 0x73,
0x68, 0x6f, 0x77, 0x6e, 0x3b, 0x75, 0x00, 0x61, 0x00, 0x6f,
0x72, 0x00, 0x6d, 0x6f, 0x61, 0x00, 0x55, 0x74, 0x65, 0x72,
0x69, 0x6d, 0x27, 0x00, 0x32, 0x6d, 0x61, 0x79, 0x04, 0x02,
0x82, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x00, 0x61, 0xe6,
0x01, 0x50, 0x62, 0x65, 0x67, 0x69, 0x6e, 0xfc, 0x00, 0x00,
0x74, 0x00, 0x60, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0xef,
0x01, 0xf2, 0x00, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f, 0x07, 0x02,
0xa0, 0x4a, 0x61, 0x6e, 0x6b, 0x6f, 0x00, 0x5b, 0x31, 0x37,
0x5d, 0x54, 0x01, 0x60, 0x6f, 0x00, 0x63, 0x61, 0x6c, 0x6c,
0xd9, 0x00, 0xe2, 0x60, 0x50, 0x66, 0x65, 0x69, 0x6c, 0x70,
0x66, 0x61, 0x64, 0x27, 0x00, 0x28, 0x60, 0xca, 0x01, 0x60,
0x70, 0x61, 0x74, 0x68, 0x27, 0x29, 0x55, 0x00, 0x04, 0xfc,
0x02, 0x41, 0x00, 0x77, 0x61, 0x73, 0x6c, 0x01, 0x72, 0x72,
0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x86, 0x01, 0x10, 0x69,
0x14, 0x00, 0x23, 0x6c, 0x6c, 0x05, 0x01, 0xf0, 0x00, 0x62,
0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61,
0x72, 0x76, 0x65, 0x79, 0x3f, 0x00, 0x00, 0x6f, 0x00, 0x90,
0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6a, 0x81,
0x00, 0xc5, 0x2e, 0x61, 0x74, 0x2f, 0x52, 0x61, 0x65, 0x74,
0x73, 0x65, 0x6c, 0x2f, 0x79, 0x00, 0xf6, 0x02, 0x2f, 0x69,
0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, 0x00, 0x00,
0x00, 0x33, 0x34, 0x2e, 0x31, 0x73, 0x03, 0x01, 0x73, 0x00,
0xe5, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x54, 0x6f,
0x00, 0x70, 0x6c, 0x61, 0x79, 0x94, 0x00, 0x55, 0x2c, 0x00,
0x79, 0x6f, 0x75, 0xf6, 0x02, 0x06, 0xf2, 0x02, 0x60, 0x67,
0x65, 0x74, 0x68, 0x65, 0x72, 0x8f, 0x00, 0x50, 0x64, 0x72,
0x61, 0x67, 0x67, 0x1b, 0x02, 0x01, 0xe3, 0x01, 0x25, 0x6f,
0x6e, 0x36, 0x02, 0x60, 0x74, 0x6f, 0x00, 0x61, 0x6e, 0x6f,
0x27, 0x00, 0x92, 0x2c, 0x00, 0x69, 0x6e, 0x64, 0x69, 0x63,
0x61, 0x74, 0x42, 0x02, 0x02, 0x59, 0x01, 0x11, 0x79, 0x98,
0x01, 0x84, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74,
0xef, 0x01, 0xe6, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63,
0x65, 0x2e, 0x00, 0x44, 0x72, 0x61, 0x67, 0xdd, 0x02, 0xb2,
0x6c, 0x65, 0x66, 0x74, 0x00, 0x62, 0x75, 0x74, 0x74, 0x6f,
0x6e, 0x69, 0x00, 0x17, 0x61, 0x67, 0x00, 0xe0, 0x69, 0x74,
0x73, 0x00, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6f,
0x72, 0x2c, 0xe1, 0x01, 0x05, 0x38, 0x00, 0x4f, 0x72, 0x69,
0x67, 0x68, 0x39, 0x00, 0x0b, 0x52, 0x70, 0x72, 0x65, 0x64,
0x65, 0x3b, 0x00, 0x00, 0x4e, 0x01, 0x29, 0x49, 0x66, 0xf2,
0x00, 0x05, 0xea, 0x00, 0x35, 0x74, 0x77, 0x6f, 0xff, 0x00,
0x22, 0x69, 0x6e, 0x98, 0x01, 0x00, 0xd9, 0x02, 0x00, 0x6e,
0x02, 0x01, 0x56, 0x02, 0x01, 0x9e, 0x02, 0x74, 0x6d, 0x00,
0x68, 0x61, 0x73, 0x00, 0x61, 0x23, 0x03, 0x62, 0x69, 0x6e,
0x00, 0x69, 0x74, 0x2c, 0xb7, 0x02, 0x95, 0x70, 0x70, 0x72,
0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x41, 0x03, 0x01, 0x70,
0x03, 0x03, 0x6d, 0x02, 0x03, 0xff, 0x00, 0x01, 0x2f, 0x01,
0x03, 0x68, 0x00, 0x1d, 0x2e, 0x8c, 0x00, 0x72, 0x77, 0x6f,
0x00, 0x6e, 0x6f, 0x6e, 0x2d, 0x3f, 0x00, 0x24, 0x65, 0x64,
0x90, 0x00, 0x12, 0x2c, 0x4f, 0x01, 0x01, 0x4f, 0x00, 0x00,
0x7d, 0x03, 0x50, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x3f, 0x02,
0x70, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, 0xd7, 0x02,
0xf9, 0x01, 0x67, 0x65, 0x62, 0x72, 0x61, 0x69, 0x63, 0x00,
0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x3a, 0x00, 0x32, 0x03,
0x8b, 0x6f, 0x63, 0x63, 0x61, 0x73, 0x69, 0x6f, 0x6e, 0x49,
0x00, 0x01, 0x2c, 0x00, 0x71, 0x6c, 0x65, 0x64, 0x00, 0x60,
0x61, 0x27, 0xe8, 0x00, 0x52, 0x60, 0x61, 0x2b, 0x31, 0x27,
0x3a, 0x05, 0x73, 0x74, 0x68, 0x65, 0x6e, 0x00, 0x60, 0x62,
0x18, 0x00, 0x15, 0x62, 0x18, 0x00, 0x82, 0x73, 0x6f, 0x00,
0x6f, 0x6e, 0x2e, 0x00, 0x43, 0xb3, 0x00, 0x00, 0xf0, 0x01,
0x01, 0x6c, 0x03, 0x04, 0x3a, 0x01, 0x24, 0x6f, 0x6e, 0x5b,
0x04, 0x41, 0x65, 0x6e, 0x64, 0x73, 0xc5, 0x05, 0x30, 0x75,
0x63, 0x68, 0x3a, 0x05, 0x10, 0x68, 0x76, 0x05, 0x01, 0x7a,
0x00, 0x52, 0x63, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x01, 0x00,
0x3f, 0x03, 0x29, 0x74, 0x6f, 0x8c, 0x00, 0x05, 0xda, 0x01,
0x30, 0x73, 0x61, 0x6d, 0x17, 0x02, 0x31, 0x74, 0x74, 0x65,
0xb8, 0x01, 0x10, 0x57, 0x91, 0x00, 0x00, 0x2e, 0x01, 0x00,
0x2a, 0x02, 0x60, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x09,
0x02, 0x01, 0x00, 0x02, 0x03, 0x0f, 0x00, 0x25, 0x69, 0x6e,
0xfd, 0x01, 0x13, 0x2c, 0x55, 0x02, 0x38, 0x67, 0x61, 0x6c,
0xc7, 0x05, 0x04, 0x6a, 0x01, 0x11, 0x69, 0x02, 0x05, 0x04,
0x08, 0x01, 0x01, 0x3c, 0x04, 0x10, 0x2e, 0x1d, 0x03, 0x07,
0x87, 0x05, 0x09, 0x75, 0x06, 0x01, 0xdd, 0x05, 0x00, 0xcf,
0x00, 0x72, 0x66, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x0c,
0x01, 0x01, 0x16, 0x04, 0x60, 0x67, 0x72, 0x65, 0x79, 0x00,
0x6f, 0x08, 0x05, 0x09, 0xcb, 0x01, 0x2e, 0x68, 0x65, 0xc0,
0x02, 0x04, 0x85, 0x02, 0x59, 0x41, 0x6c, 0x73, 0x6f, 0x2c,
0x60, 0x00, 0x02, 0xa0, 0x05, 0x40, 0x6e, 0x65, 0x65, 0x64,
0x5d, 0x02, 0x07, 0xb2, 0x02, 0x03, 0x6f, 0x02, 0x20, 0x73,
0x6d, 0x2a, 0x01, 0x25, 0x64, 0x6f, 0x47, 0x03, 0x62, 0x62,
0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x36, 0x03, 0x64, 0x63, 0x6f,
0x72, 0x6e, 0x65, 0x72, 0xe5, 0x05, 0x86, 0x76, 0x61, 0x6e,
0x69, 0x73, 0x68, 0x65, 0x73, 0x94, 0x00, 0x00, 0x88, 0x06,
0x0b, 0x16, 0x03, 0x60, 0x2e, 0x00, 0x53, 0x6f, 0x00, 0x79,
0xfa, 0x06, 0x50, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x1c, 0x07,
0x39, 0x77, 0x61, 0x79, 0x23, 0x01, 0x19, 0x61, 0x80, 0x06,
0x12, 0x61, 0xf8, 0x00, 0x03, 0x1e, 0x01, 0x2d, 0x74, 0x6f,
0x1f, 0x00, 0x42, 0x64, 0x6f, 0x74, 0x2e, 0x5f, 0x04, 0x52,
0x72, 0x65, 0x6d, 0x6f, 0x76, 0x23, 0x06, 0x00, 0x7a, 0x00,
0x11, 0x73, 0x4d, 0x05, 0x30, 0x61, 0x00, 0x70, 0x1f, 0x07,
0x55, 0x63, 0x75, 0x6c, 0x61, 0x72, 0xca, 0x07, 0xa1, 0x62,
0x6f, 0x74, 0x68, 0x00, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x38,
0x07, 0x00, 0x69, 0x03, 0x92, 0x75, 0x74, 0x67, 0x6f, 0x69,
0x6e, 0x67, 0x29, 0x2c, 0xe7, 0x01, 0x10, 0x64, 0x24, 0x04,
0x10, 0x69, 0x68, 0x07, 0x02, 0x1c, 0x06, 0x00, 0x1a, 0x08,
0x18, 0x2e, 0x65, 0x00, 0x00, 0x86, 0x05, 0x22, 0x6c, 0x65,
0x5e, 0x02, 0x13, 0x2c, 0x0d, 0x02, 0x01, 0x35, 0x00, 0x00,
0x7f, 0x00, 0x03, 0x68, 0x00, 0x03, 0x33, 0x01, 0x02, 0x82,
0x02, 0x0a, 0x4a, 0x00, 0x02, 0x77, 0x08, 0x00, 0xd5, 0x06,
0x01, 0x19, 0x06, 0x03, 0x98, 0x02, 0x40, 0x00, 0x63, 0x75,
0x72, 0x7c, 0x01, 0x22, 0x6b, 0x65, 0x13, 0x01, 0x02, 0x6b,
0x00, 0x55, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x3c, 0x00, 0x06,
0x56, 0x08, 0x02, 0xea, 0x07, 0x94, 0x65, 0x73, 0x2e, 0x00,
0x50, 0x72, 0x65, 0x73, 0x73, 0x45, 0x07, 0x80, 0x72, 0x65,
0x74, 0x75, 0x72, 0x6e, 0x00, 0x6b, 0x70, 0x03, 0x00, 0xbb,
0x02, 0x30, 0x6f, 0x76, 0x65, 0x07, 0x01, 0x0a, 0x51, 0x02,
0x12, 0x61, 0x9d, 0x01, 0x50, 0x6f, 0x70, 0x65, 0x72, 0x61,
0xff, 0x05, 0x02, 0x58, 0x02, 0x1f, 0x70, 0x48, 0x00, 0x04,
0x4c, 0x61, 0x67, 0x61, 0x69, 0x49, 0x00, 0x01, 0xc4, 0x02,
0x20, 0x66, 0x69, 0xf4, 0x01, 0x02, 0xf3, 0x02, 0x70, 0x69,
0x6e, 0x6b, 0x2c, 0x00, 0x69, 0x66, 0x5b, 0x03, 0x6b, 0x6f,
0x77, 0x61, 0x62, 0x6c, 0x65, 0x98, 0x00, 0x9f, 0x73, 0x70,
0x61, 0x63, 0x65, 0x00, 0x62, 0x61, 0x72, 0x49, 0x00, 0x01,
0x00, 0x0a, 0x03, 0x0d, 0xa8, 0x04, 0x12, 0x73, 0x34, 0x08,
0x01, 0x41, 0x00, 0x00, 0x3d, 0x02, 0x02, 0xa5, 0x00, 0x01,
0x60, 0x00, 0x01, 0x60, 0x02, 0x06, 0x1f, 0x09, 0x72, 0x62,
0x61, 0x63, 0x6b, 0x77, 0x61, 0x72, 0xfb, 0x08, 0x0e, 0xcc,
0x00, 0x07, 0x7c, 0x00, 0x02, 0xcb, 0x00, 0x10, 0x63, 0x40,
0x08, 0x21, 0x6c, 0x73, 0x6d, 0x05, 0x00, 0x8d, 0x01, 0x42,
0x28, 0x41, 0x6c, 0x6c, 0x4d, 0x05, 0x01, 0x0d, 0x07, 0x92,
0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x46,
0x09, 0x13, 0x73, 0x23, 0x07, 0x32, 0x32, 0x2e, 0x31, 0x5b,
0x06, 0x01, 0xcc, 0x07, 0x41, 0x76, 0x61, 0x69, 0x6c, 0xe7,
0x00, 0x12, 0x29, 0xf8, 0x06, 0x16, 0x32, 0xf8, 0x06, 0xb2,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
0x20, 0xdd, 0x03, 0x36, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02,
0x44, 0x00, 0x04, 0x3f, 0x00, 0x06, 0xc1, 0x08, 0xe2, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27,
0x00, 0x6f, 0x70, 0x9a, 0x08, 0x12, 0x6e, 0x1a, 0x00, 0xa1,
0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75,
0x92, 0x04, 0x81, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48,
0x65, 0x83, 0x06, 0x00, 0xe7, 0x07, 0x11, 0x7a, 0x27, 0x06,
0x01, 0x1f, 0x02, 0x24, 0x69, 0x6e, 0x3e, 0x01, 0x00, 0x2b,
0x00, 0x61, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x20, 0xf5, 0x01,
0x82, 0x2f, 0x65, 0x6e, 0x64, 0x20, 0x74, 0x6f, 0x20, 0xb6,
0x03, 0x12, 0x73, 0x92, 0x06, 0x33, 0x74, 0x72, 0x75, 0xb3,
0x04, 0x01, 0x24, 0x00, 0x01, 0x3a, 0x01, 0x27, 0x65, 0x6e,
0x65, 0x02, 0x24, 0x72, 0x65, 0xa3, 0x03, 0x42, 0x70, 0x6c,
0x61, 0x63, 0x10, 0x01, 0x94, 0x6f, 0x70, 0x70, 0x6f, 0x73,
0x69, 0x74, 0x65, 0x00, 0x4b, 0x00, 0x17, 0x28, 0x41, 0x00,
0x02, 0x83, 0x04, 0x31, 0x74, 0x6f, 0x70, 0x49, 0x03, 0x05,
0xd4, 0x05, 0x01, 0x56, 0x00, 0x28, 0x61, 0x74, 0x44, 0x04,
0x01, 0x35, 0x03, 0x11, 0x29, 0x8d, 0x06, 0x5f, 0x66, 0x61,
0x6c, 0x73, 0x65, 0x87, 0x00, 0x0c, 0x03, 0x80, 0x00, 0xf4,
0x03, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x6c, 0x79, 0x00,
0x28, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0xa1,
0x00, 0x01, 0xd6, 0x03, 0x01, 0x53, 0x05, 0x22, 0x29, 0x2e,
0x93, 0x01, 0x16, 0x33, 0x93, 0x01, 0xb0, 0x75, 0x73, 0x65,
0x72, 0x20, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x06, 0x08,
0x01, 0x99, 0x01, 0x20, 0x4f, 0x6e, 0x55, 0x00, 0x10, 0x74,
0x44, 0x02, 0x12, 0x73, 0x3e, 0x08, 0x80, 0x73, 0x75, 0x70,
0x70, 0x6f, 0x72, 0x74, 0x00, 0x2e, 0x00, 0x17, 0x00, 0x2e,
0x00, 0x12, 0x2c, 0x87, 0x01, 0x16, 0x50, 0x12, 0x00, 0x0d,
0xa3, 0x01, 0x33, 0x47, 0x61, 0x6d, 0xa3, 0x01, 0x02, 0xd2,
0x02, 0x34, 0x6c, 0x65, 0x74, 0x99, 0x05, 0x54, 0x66, 0x69,
0x67, 0x75, 0x72, 0xdf, 0x00, 0x34, 0x79, 0x6c, 0x65, 0x71,
0x0a, 0xf0, 0x01, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79,
0x00, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x2e, 0x00,
};
const unsigned short help_text_len = 3054;
const unsigned short help_text_words = 566;
const unsigned short help_text_len = 3255;
const unsigned short help_text_words = 595;
const char quick_help_text[] = "Connect the squares into a path following the arrows.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,124 +6,147 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 122, TEXT_CENTER | C_RED },
{ 212, TEXT_CENTER | C_RED },
{ 229, TEXT_UNDERLINE },
{ 230, TEXT_UNDERLINE },
{ 240, TEXT_UNDERLINE },
{ 120, TEXT_CENTER | C_RED },
{ 232, TEXT_CENTER | C_RED },
{ 249, TEXT_UNDERLINE },
{ 250, TEXT_UNDERLINE },
{ 260, TEXT_UNDERLINE },
{ 272, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 1392 comp 1052 ratio 0.755747 level 10 saved 340 */
/* orig 1780 comp 1279 ratio 0.718539 level 10 saved 501 */
const char help_text[] = {
0xf3, 0x2d, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x32, 0x3a, 0x20, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65,
0x73, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68,
0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x6f, 0x66, 0x00, 0x77, 0x68, 0x69, 0x74, 0x65, 0x00,
0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x61,
0x6c, 0x6c, 0x16, 0x00, 0xf0, 0x04, 0x63, 0x68, 0x00, 0x63,
0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x73, 0x2e, 0x40, 0x00, 0xf0, 0x01, 0x72,
0x00, 0x74, 0x61, 0x73, 0x6b, 0x00, 0x69, 0x73, 0x00, 0x74,
0x6f, 0x00, 0x63, 0x6f, 0x6c, 0x12, 0x00, 0x40, 0x73, 0x6f,
0x6d, 0x65, 0x36, 0x00, 0x25, 0x74, 0x68, 0x4a, 0x00, 0xf1,
0x01, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x00, 0x28, 0x72,
0x65, 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x1c, 0x00, 0x02,
0x48, 0x00, 0x61, 0x29, 0x00, 0x73, 0x6f, 0x00, 0x61, 0x40,
0x00, 0x74, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x79, 0x76,
0x00, 0x00, 0x24, 0x00, 0x60, 0x66, 0x6f, 0x6c, 0x6c, 0x6f,
0x77, 0x32, 0x00, 0xf3, 0x03, 0x63, 0x6f, 0x6e, 0x64, 0x69,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x00, 0x00, 0x00, 0x2d,
0x00, 0x4e, 0x6f, 0x41, 0x00, 0xf0, 0x15, 0x00, 0x6f, 0x63,
0x63, 0x75, 0x72, 0x73, 0x00, 0x6d, 0x6f, 0x72, 0x65, 0x00,
0x74, 0x68, 0x61, 0x6e, 0x00, 0x6f, 0x6e, 0x63, 0x65, 0x00,
0x69, 0x6e, 0x00, 0x61, 0x6e, 0x79, 0x00, 0x72, 0x6f, 0x77,
0x00, 0x6f, 0x72, 0x9b, 0x00, 0x44, 0x75, 0x6d, 0x6e, 0x2e,
0x3a, 0x00, 0x02, 0x8f, 0x00, 0x02, 0x9d, 0x00, 0x00, 0xbd,
0x00, 0x50, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0xdf, 0x00, 0x30,
0x6c, 0x6c, 0x79, 0x2f, 0x00, 0x61, 0x76, 0x65, 0x72, 0x74,
0x69, 0x63, 0x0e, 0x00, 0x80, 0x61, 0x64, 0x6a, 0x61, 0x63,
0x65, 0x6e, 0x74, 0xa1, 0x00, 0x00, 0x51, 0x00, 0x59, 0x6f,
0x74, 0x68, 0x65, 0x72, 0x41, 0x00, 0x02, 0x56, 0x00, 0xa0,
0x54, 0x68, 0x65, 0x00, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e,
0xae, 0x00, 0x09, 0x48, 0x01, 0x51, 0x00, 0x6d, 0x75, 0x73,
0x74, 0xd6, 0x00, 0x81, 0x66, 0x6f, 0x72, 0x6d, 0x00, 0x6f,
0x6e, 0x65, 0x4c, 0x01, 0xf0, 0x10, 0x69, 0x67, 0x75, 0x6f,
0x75, 0x73, 0x00, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x00,
0x28, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64,
0x00, 0x62, 0x79, 0x00, 0x65, 0x64, 0x67, 0x80, 0x01, 0x70,
0x6e, 0x6f, 0x74, 0x00, 0x6a, 0x75, 0x73, 0x7d, 0x00, 0x30,
0x75, 0x63, 0x68, 0x59, 0x00, 0xb0, 0x61, 0x74, 0x00, 0x63,
0x6f, 0x72, 0x6e, 0x65, 0x72, 0x73, 0x29, 0x78, 0x00, 0x60,
0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x58, 0x00, 0xf1, 0x01,
0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0x52, 0x01, 0xf0, 0x02,
0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x31, 0x35,
0x5d, 0x00, 0x77, 0x68, 0x6f, 0x00, 0x63, 0x85, 0x00, 0x90,
0x69, 0x74, 0x00, 0x48, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x41,
0x00, 0x03, 0x0f, 0x02, 0x41, 0x00, 0x77, 0x61, 0x73, 0x95,
0x00, 0x40, 0x72, 0x69, 0x62, 0x75, 0x84, 0x00, 0x22, 0x74,
0x6f, 0x51, 0x00, 0x60, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x78, 0x01, 0x00, 0x97, 0x00, 0xc0, 0x4a, 0x61, 0x6d, 0x65,
0x73, 0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x3e, 0x00,
0x01, 0x59, 0x00, 0xc1, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x70, 0x00, 0x82, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x65, 0x6e, 0x2f, 0x8d, 0x00, 0x32,
0x73, 0x2f, 0x68, 0x6e, 0x00, 0xb1, 0x68, 0x74, 0x6d, 0x6c,
0x00, 0x28, 0x62, 0x65, 0x77, 0x61, 0x72, 0x20, 0x02, 0xd5,
0x46, 0x6c, 0x61, 0x73, 0x68, 0x29, 0x00, 0x00, 0x00, 0x33,
0x32, 0x2e, 0x31, 0x98, 0x02, 0x01, 0x85, 0x00, 0x21, 0x6f,
0x6c, 0xa1, 0x02, 0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63,
0x6c, 0x69, 0x63, 0x6b, 0xfb, 0x00, 0x10, 0x6f, 0xd2, 0x01,
0x64, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0xbb, 0x01, 0x44,
0x77, 0x69, 0x6c, 0x6c, 0x77, 0x02, 0x22, 0x69, 0x74, 0x96,
0x01, 0x39, 0x3b, 0x00, 0x6c, 0x37, 0x00, 0x20, 0x61, 0x67,
0xb5, 0x02, 0x01, 0x2a, 0x00, 0x42, 0x72, 0x65, 0x73, 0x74,
0x26, 0x02, 0x04, 0x7e, 0x02, 0x67, 0x2e, 0x00, 0x52, 0x69,
0x67, 0x68, 0x2e, 0x00, 0x01, 0x28, 0x00, 0xf1, 0x05, 0x61,
0x64, 0x64, 0x00, 0x61, 0x00, 0x63, 0x69, 0x72, 0x63, 0x6c,
0x65, 0x00, 0x28, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x64,
0x01, 0x72, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0xc2,
0x02, 0x20, 0x61, 0x74, 0x25, 0x00, 0x30, 0x65, 0x6c, 0x6c,
0x42, 0x02, 0xa1, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74,
0x65, 0x6c, 0x79, 0xb5, 0x01, 0x01, 0x8a, 0x00, 0x23, 0x29,
0x2e, 0x65, 0x03, 0xb2, 0x63, 0x61, 0x6e, 0x00, 0x61, 0x6c,
0x73, 0x6f, 0x00, 0x75, 0x73, 0x7d, 0x00, 0x00, 0xb1, 0x02,
0x61, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0xa7, 0x01, 0x20,
0x6d, 0x6f, 0x85, 0x03, 0x51, 0x72, 0x6f, 0x75, 0x6e, 0x64,
0x1f, 0x00, 0x00, 0x8e, 0x03, 0x74, 0x2e, 0x00, 0x50, 0x72,
0x65, 0x73, 0x73, 0x2d, 0x03, 0x60, 0x72, 0x65, 0x74, 0x75,
0x72, 0x6e, 0x9c, 0x02, 0x52, 0x73, 0x70, 0x61, 0x63, 0x65,
0x3b, 0x00, 0x01, 0xad, 0x00, 0x01, 0x18, 0x00, 0x14, 0x61,
0x12, 0x01, 0x02, 0x99, 0x02, 0x2a, 0x6f, 0x72, 0xc4, 0x00,
0x40, 0x72, 0x65, 0x73, 0x70, 0xc6, 0x01, 0xb8, 0x76, 0x65,
0x6c, 0x79, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x70, 0x5d,
0x00, 0x3f, 0x6b, 0x65, 0x79, 0x27, 0x01, 0x0b, 0x00, 0x51,
0x00, 0x01, 0xbc, 0x03, 0x03, 0xbf, 0x00, 0x01, 0x56, 0x00,
0x00, 0xde, 0x00, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x13, 0x00,
0x11, 0x61, 0x24, 0x02, 0x00, 0x08, 0x01, 0x70, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x64, 0x81, 0x03, 0x13, 0x73, 0x3a,
0x02, 0x40, 0x32, 0x2e, 0x31, 0x00, 0x9d, 0x00, 0x01, 0x04,
0x01, 0xa3, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0x65, 0x2e, 0xfc, 0x01, 0x15, 0x32, 0xfc, 0x01, 0x91, 0x70,
0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0xfe, 0x01,
0x66, 0x54, 0x68, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02,
0x43, 0x00, 0x04, 0x3e, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f,
0x6d, 0x7b, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x71, 0x00,
0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65,
0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xad, 0x00, 0x90, 0x57,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0xf3, 0x01,
0x01, 0xfc, 0x02, 0x11, 0x7a, 0x89, 0x02, 0x01, 0xfd, 0x04,
0x24, 0x69, 0x6e, 0xaf, 0x03, 0x00, 0x2b, 0x00, 0xa0, 0x44,
0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x65,
0x03, 0x03, 0x93, 0x02, 0x01, 0x54, 0x00, 0x16, 0x64, 0x1a,
0x00, 0x03, 0xa4, 0x04, 0x60, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x35, 0x03, 0x80, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65,
0x2e, 0x00,
0x73, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf3, 0x19, 0x00, 0x00,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00,
0x77, 0x68, 0x69, 0x74, 0x65, 0x00, 0x73, 0x71, 0x75, 0x61,
0x72, 0x65, 0x73, 0x2c, 0x00, 0x61, 0x6c, 0x6c, 0x16, 0x00,
0xf0, 0x04, 0x63, 0x68, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73,
0x2e, 0x40, 0x00, 0xf0, 0x01, 0x72, 0x00, 0x74, 0x61, 0x73,
0x6b, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x63, 0x6f,
0x6c, 0x12, 0x00, 0x40, 0x73, 0x6f, 0x6d, 0x65, 0x36, 0x00,
0x25, 0x74, 0x68, 0x4a, 0x00, 0xf1, 0x01, 0x00, 0x62, 0x6c,
0x61, 0x63, 0x6b, 0x00, 0x28, 0x72, 0x65, 0x6d, 0x6f, 0x76,
0x69, 0x6e, 0x67, 0x1c, 0x00, 0x02, 0x48, 0x00, 0x61, 0x29,
0x00, 0x73, 0x6f, 0x00, 0x61, 0x40, 0x00, 0x74, 0x73, 0x61,
0x74, 0x69, 0x73, 0x66, 0x79, 0x76, 0x00, 0x00, 0x24, 0x00,
0x60, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x32, 0x00, 0xf3,
0x03, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x4e, 0x6f, 0x41,
0x00, 0xf0, 0x15, 0x00, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x73,
0x00, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x74, 0x68, 0x61, 0x6e,
0x00, 0x6f, 0x6e, 0x63, 0x65, 0x00, 0x69, 0x6e, 0x00, 0x61,
0x6e, 0x79, 0x00, 0x72, 0x6f, 0x77, 0x00, 0x6f, 0x72, 0x9b,
0x00, 0x44, 0x75, 0x6d, 0x6e, 0x2e, 0x3a, 0x00, 0x02, 0x8f,
0x00, 0x02, 0x9d, 0x00, 0x00, 0xbd, 0x00, 0x50, 0x68, 0x6f,
0x72, 0x69, 0x7a, 0xdf, 0x00, 0x30, 0x6c, 0x6c, 0x79, 0x2f,
0x00, 0x61, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00,
0x80, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0xa1,
0x00, 0x00, 0x51, 0x00, 0x59, 0x6f, 0x74, 0x68, 0x65, 0x72,
0x41, 0x00, 0x02, 0x56, 0x00, 0xa0, 0x54, 0x68, 0x65, 0x00,
0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0xae, 0x00, 0x09, 0x48,
0x01, 0x51, 0x00, 0x6d, 0x75, 0x73, 0x74, 0xd6, 0x00, 0x81,
0x66, 0x6f, 0x72, 0x6d, 0x00, 0x6f, 0x6e, 0x65, 0x4c, 0x01,
0xf0, 0x10, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73, 0x00, 0x72,
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x00, 0x28, 0x63, 0x6f, 0x6e,
0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x00, 0x62, 0x79, 0x00,
0x65, 0x64, 0x67, 0x80, 0x01, 0x70, 0x6e, 0x6f, 0x74, 0x00,
0x6a, 0x75, 0x73, 0x7d, 0x00, 0x30, 0x75, 0x63, 0x68, 0x59,
0x00, 0xb0, 0x61, 0x74, 0x00, 0x63, 0x6f, 0x72, 0x6e, 0x65,
0x72, 0x73, 0x29, 0x78, 0x00, 0x60, 0x43, 0x72, 0x65, 0x64,
0x69, 0x74, 0x58, 0x00, 0xf1, 0x01, 0x00, 0x74, 0x68, 0x69,
0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67,
0x6f, 0x65, 0x52, 0x01, 0xf0, 0x02, 0x4e, 0x69, 0x6b, 0x6f,
0x6c, 0x69, 0x00, 0x5b, 0x31, 0x35, 0x5d, 0x00, 0x77, 0x68,
0x6f, 0x00, 0x63, 0x85, 0x00, 0x90, 0x69, 0x74, 0x00, 0x48,
0x69, 0x74, 0x6f, 0x72, 0x69, 0x41, 0x00, 0x03, 0x23, 0x02,
0x41, 0x00, 0x77, 0x61, 0x73, 0x95, 0x00, 0x40, 0x72, 0x69,
0x62, 0x75, 0x84, 0x00, 0x22, 0x74, 0x6f, 0x51, 0x00, 0x60,
0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x78, 0x01, 0x00, 0x97,
0x00, 0xc0, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61,
0x72, 0x76, 0x65, 0x79, 0x3e, 0x00, 0x01, 0x59, 0x00, 0xd1,
0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
0x77, 0x2e, 0x6e, 0x71, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e,
0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x90, 0x00, 0x31, 0x73,
0x2f, 0x68, 0x71, 0x00, 0x85, 0x2f, 0x00, 0x00, 0x00, 0x33,
0x32, 0x2e, 0x31, 0x99, 0x02, 0x01, 0x72, 0x00, 0xf0, 0x02,
0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x4c, 0x65, 0x66,
0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xe8, 0x00, 0x10,
0x6f, 0xbf, 0x01, 0x64, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79,
0xa8, 0x01, 0x44, 0x77, 0x69, 0x6c, 0x6c, 0x64, 0x02, 0x22,
0x69, 0x74, 0x83, 0x01, 0x30, 0x3b, 0x00, 0x6c, 0x37, 0x00,
0x15, 0x00, 0x38, 0x00, 0x20, 0x61, 0x67, 0xa3, 0x02, 0x01,
0x2b, 0x00, 0x42, 0x72, 0x65, 0x73, 0x74, 0x14, 0x02, 0x04,
0x6c, 0x02, 0x67, 0x2e, 0x00, 0x52, 0x69, 0x67, 0x68, 0x66,
0x00, 0x01, 0x28, 0x00, 0xf1, 0x05, 0x61, 0x64, 0x64, 0x00,
0x61, 0x00, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x00, 0x28,
0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x52, 0x01, 0x72, 0x69,
0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0xb0, 0x02, 0x20, 0x61,
0x74, 0x25, 0x00, 0x30, 0x65, 0x6c, 0x6c, 0x30, 0x02, 0xa1,
0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x6c, 0x79,
0xa3, 0x01, 0x01, 0x8b, 0x00, 0x45, 0x29, 0x2e, 0x00, 0x43,
0xbe, 0x00, 0x52, 0x75, 0x74, 0x73, 0x69, 0x64, 0x7b, 0x00,
0x01, 0x5b, 0x03, 0x01, 0x69, 0x00, 0xad, 0x74, 0x6f, 0x67,
0x67, 0x6c, 0x65, 0x00, 0x77, 0x68, 0x65, 0x44, 0x02, 0x00,
0x69, 0x01, 0x41, 0x6d, 0x70, 0x6c, 0x65, 0x53, 0x00, 0x14,
0x68, 0x3b, 0x00, 0x03, 0x6a, 0x03, 0x00, 0x0d, 0x01, 0x50,
0x74, 0x68, 0x65, 0x6d, 0x2c, 0x9b, 0x02, 0x71, 0x64, 0x69,
0x73, 0x70, 0x6c, 0x61, 0x79, 0x11, 0x00, 0x00, 0xe5, 0x02,
0x72, 0x64, 0x61, 0x72, 0x6b, 0x00, 0x67, 0x72, 0x90, 0x01,
0x00, 0xd2, 0x03, 0xb2, 0x63, 0x61, 0x6e, 0x00, 0x61, 0x6c,
0x73, 0x6f, 0x00, 0x75, 0x73, 0x46, 0x00, 0x00, 0x1e, 0x03,
0x61, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x14, 0x02, 0x20,
0x6d, 0x6f, 0xf2, 0x03, 0x55, 0x72, 0x6f, 0x75, 0x6e, 0x64,
0xa0, 0x00, 0x74, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73,
0x9a, 0x03, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x6e,
0x00, 0x52, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3b, 0x00, 0x02,
0xc3, 0x00, 0x00, 0x18, 0x00, 0x14, 0x61, 0x92, 0x01, 0x02,
0xc2, 0x00, 0x2a, 0x6f, 0x72, 0x43, 0x01, 0x40, 0x72, 0x65,
0x73, 0x70, 0x33, 0x02, 0xb8, 0x76, 0x65, 0x6c, 0x79, 0x2c,
0x00, 0x61, 0x6e, 0x64, 0x00, 0x70, 0x5d, 0x00, 0x3f, 0x6b,
0x65, 0x79, 0xa6, 0x01, 0x0b, 0x00, 0x51, 0x00, 0x01, 0x29,
0x04, 0x03, 0xbf, 0x00, 0x01, 0x56, 0x00, 0x00, 0xde, 0x00,
0x41, 0x28, 0x41, 0x6c, 0x6c, 0x13, 0x00, 0x11, 0x61, 0x91,
0x02, 0x00, 0x87, 0x01, 0x70, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x64, 0x09, 0x01, 0x13, 0x73, 0xa7, 0x02, 0x40, 0x32,
0x2e, 0x31, 0x00, 0x9d, 0x00, 0x01, 0x04, 0x01, 0xb2, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29,
0x7c, 0x02, 0x15, 0x32, 0x7c, 0x02, 0x91, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x7e, 0x02, 0x66, 0x54,
0x68, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x43, 0x00,
0x04, 0x3e, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x7b,
0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e,
0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x71, 0x00, 0x22, 0x6f,
0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0xad, 0x00, 0x90, 0x57, 0x69, 0x64,
0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x72, 0x02, 0x01, 0x69,
0x03, 0x11, 0x7a, 0x16, 0x05, 0x01, 0x0f, 0x02, 0x24, 0x69,
0x6e, 0xf8, 0x01, 0x00, 0x2b, 0x00, 0xa0, 0x44, 0x69, 0x66,
0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0xd2, 0x03, 0x03,
0x13, 0x03, 0x01, 0x54, 0x00, 0x16, 0x64, 0x1a, 0x00, 0x03,
0x11, 0x05, 0x60, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0xa2,
0x03, 0x02, 0x5b, 0x03, 0x12, 0x2e, 0xd7, 0x00, 0x15, 0x33,
0xd7, 0x00, 0xf1, 0x00, 0x75, 0x73, 0x65, 0x72, 0x20, 0x70,
0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0xdd,
0x00, 0x70, 0x4f, 0x6e, 0x00, 0x70, 0x6c, 0x61, 0x74, 0x7e,
0x04, 0x12, 0x73, 0xcb, 0x02, 0x80, 0x73, 0x75, 0x70, 0x70,
0x6f, 0x72, 0x74, 0x00, 0x2e, 0x00, 0x17, 0x00, 0x2e, 0x00,
0x12, 0x2c, 0xcb, 0x00, 0x16, 0x50, 0x12, 0x00, 0x0d, 0xe7,
0x00, 0x33, 0x47, 0x61, 0x6d, 0xe7, 0x00, 0x02, 0xc1, 0x01,
0x70, 0x6c, 0x65, 0x74, 0x00, 0x79, 0x6f, 0x75, 0x3e, 0x04,
0x56, 0x66, 0x69, 0x67, 0x75, 0x72, 0xe1, 0x02, 0x07, 0xbf,
0x02, 0x0a, 0xec, 0x02, 0x00, 0x5c, 0x01, 0x50, 0x76, 0x69,
0x73, 0x69, 0x62, 0xc0, 0x00, 0x8f, 0x55, 0x6e, 0x6c, 0x69,
0x6b, 0x65, 0x00, 0x63, 0x3c, 0x03, 0x05, 0x12, 0x2c, 0x89,
0x04, 0x01, 0x6c, 0x00, 0xf0, 0x08, 0x70, 0x65, 0x72, 0x73,
0x69, 0x73, 0x74, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65,
0x6e, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x00,
};
const unsigned short help_text_len = 1392;
const unsigned short help_text_words = 250;
const unsigned short help_text_len = 1780;
const unsigned short help_text_words = 309;
const char quick_help_text[] = "Black out the right set of duplicate numbers.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,194 +6,195 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 113, TEXT_UNDERLINE },
{ 187, TEXT_CENTER | C_RED },
{ 321, TEXT_CENTER | C_RED },
{ 339, TEXT_UNDERLINE },
{ 341, TEXT_UNDERLINE },
{ 114, TEXT_UNDERLINE },
{ 188, TEXT_CENTER | C_RED },
{ 322, TEXT_CENTER | C_RED },
{ 340, TEXT_UNDERLINE },
{ 342, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2534 comp 1755 ratio 0.692581 level 6 saved 779 */
/* orig 2553 comp 1763 ratio 0.69056 level 6 saved 790 */
const char help_text[] = {
0xf0, 0x3b, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfd, 0x06, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x36, 0x3a, 0x20, 0x53, 0x69, 0x78, 0x74, 0x65, 0x65, 0x6e,
0x20, 0x00, 0x00, 0x00, 0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65,
0x72, 0x00, 0x73, 0x6c, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x00,
0x74, 0x69, 0x6c, 0x65, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c,
0x65, 0x2c, 0x00, 0x76, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x6c,
0x79, 0x00, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x00,
0x74, 0x6f, 0x00, 0x46, 0x69, 0x66, 0x3c, 0x00, 0x72, 0x00,
0x28, 0x73, 0x65, 0x65, 0x00, 0x63, 0x54, 0x00, 0xf0, 0x23,
0x00, 0x35, 0x29, 0x00, 0x62, 0x75, 0x74, 0x00, 0x77, 0x69,
0x74, 0x68, 0x00, 0x61, 0x00, 0x64, 0x69, 0x66, 0x66, 0x65,
0x72, 0x65, 0x6e, 0x74, 0x00, 0x74, 0x79, 0x70, 0x65, 0x00,
0x6f, 0x66, 0x00, 0x6d, 0x6f, 0x76, 0x65, 0x2e, 0x00, 0x54,
0x68, 0x69, 0x73, 0x00, 0x74, 0x69, 0x6d, 0x65, 0x2c, 0x00,
0x74, 0x00, 0xf0, 0x10, 0x65, 0x00, 0x69, 0x73, 0x00, 0x6e,
0x6f, 0x00, 0x68, 0x6f, 0x6c, 0x65, 0x3a, 0x00, 0x61, 0x6c,
0x6c, 0x00, 0x31, 0x36, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72,
0x65, 0x73, 0x00, 0x6f, 0x6e, 0x24, 0x00, 0xf4, 0x07, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65,
0x64, 0x25, 0x00, 0x61, 0x2e, 0x00, 0x59, 0x6f, 0x75, 0x72,
0x5d, 0x00, 0x00, 0x4b, 0x00, 0xf0, 0x16, 0x74, 0x6f, 0x00,
0x73, 0x68, 0x69, 0x66, 0x74, 0x00, 0x61, 0x6e, 0x00, 0x65,
0x6e, 0x74, 0x69, 0x72, 0x65, 0x00, 0x72, 0x6f, 0x77, 0x00,
0x6c, 0x65, 0x66, 0x74, 0x00, 0x6f, 0x72, 0x00, 0x72, 0x69,
0x67, 0x68, 0x74, 0x2c, 0x0a, 0x00, 0x0c, 0x26, 0x00, 0x90,
0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x00, 0x75, 0x70, 0x1d,
0x00, 0xb1, 0x64, 0x6f, 0x77, 0x6e, 0x3b, 0x00, 0x65, 0x76,
0x65, 0x72, 0x79, 0xac, 0x00, 0xc1, 0x00, 0x79, 0x6f, 0x75,
0x00, 0x64, 0x6f, 0x00, 0x74, 0x68, 0x61, 0x74, 0xb8, 0x00,
0x02, 0x23, 0x01, 0x00, 0x16, 0x00, 0x02, 0x48, 0x00, 0x36,
0x6f, 0x66, 0x66, 0xab, 0x00, 0xd1, 0x72, 0x65, 0x2d, 0x61,
0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x00, 0x61, 0x74, 0x17,
0x00, 0x02, 0x5f, 0x01, 0x52, 0x65, 0x6e, 0x64, 0x00, 0x6f,
0x28, 0x00, 0x31, 0x73, 0x61, 0x6d, 0x99, 0x00, 0x32, 0x2c,
0x00, 0x69, 0xe4, 0x00, 0x42, 0x73, 0x70, 0x61, 0x63, 0x51,
0x00, 0xf5, 0x0e, 0x6a, 0x75, 0x73, 0x74, 0x00, 0x76, 0x61,
0x63, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x00, 0x54, 0x6f, 0x00,
0x77, 0x69, 0x6e, 0x2c, 0x00, 0x61, 0x72, 0x72, 0x61, 0x6e,
0x67, 0x65, 0x7c, 0x00, 0x60, 0x73, 0x00, 0x69, 0x6e, 0x74,
0x6f, 0x0e, 0x01, 0xf4, 0x06, 0x65, 0x72, 0x69, 0x63, 0x61,
0x6c, 0x00, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x00, 0x28, 0x31,
0x2c, 0x32, 0x2c, 0x33, 0x2c, 0x34, 0x3b, 0x01, 0x32, 0x74,
0x6f, 0x70, 0x67, 0x00, 0xb4, 0x31, 0x33, 0x2c, 0x31, 0x34,
0x2c, 0x31, 0x35, 0x2c, 0x31, 0x36, 0x1c, 0x00, 0xd0, 0x62,
0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x29, 0x2e, 0x00, 0x57, 0x68,
0x65, 0x6e, 0x7b, 0x00, 0x84, 0x27, 0x76, 0x65, 0x00, 0x64,
0x6f, 0x6e, 0x65, 0xe7, 0x00, 0x70, 0x72, 0x79, 0x00, 0x70,
0x6c, 0x61, 0x79, 0x12, 0x02, 0x27, 0x6f, 0x6e, 0xd1, 0x01,
0x30, 0x73, 0x69, 0x7a, 0x9d, 0x01, 0x11, 0x66, 0xee, 0x00,
0x70, 0x2e, 0x00, 0x00, 0x00, 0x49, 0x00, 0x6d, 0x58, 0x01,
0x30, 0x00, 0x68, 0x61, 0x85, 0x01, 0x90, 0x6e, 0x76, 0x65,
0x6e, 0x74, 0x65, 0x64, 0x00, 0x74, 0xea, 0x01, 0x10, 0x67,
0xe9, 0x00, 0x60, 0x6d, 0x79, 0x73, 0x65, 0x6c, 0x66, 0x39,
0x01, 0xf0, 0x03, 0x6f, 0x75, 0x67, 0x68, 0x00, 0x6f, 0x6e,
0x6c, 0x79, 0x00, 0x62, 0x79, 0x00, 0x61, 0x63, 0x63, 0x69,
0x64, 0x51, 0x00, 0xf4, 0x03, 0x69, 0x66, 0x00, 0x73, 0x6f,
0x00, 0x28, 0x61, 0x6e, 0x64, 0x00, 0x49, 0x27, 0x6d, 0x00,
0x73, 0x75, 0x72, 0x33, 0x01, 0x64, 0x70, 0x65, 0x6f, 0x70,
0x6c, 0x65, 0x59, 0x00, 0x50, 0x64, 0x65, 0x70, 0x65, 0x6e,
0x32, 0x00, 0x26, 0x6c, 0x79, 0x67, 0x00, 0x63, 0x69, 0x74,
0x29, 0x2e, 0x00, 0x49, 0x5c, 0x00, 0xe0, 0x74, 0x00, 0x49,
0x00, 0x77, 0x61, 0x73, 0x00, 0x69, 0x6d, 0x69, 0x74, 0x61,
0x74, 0xba, 0x00, 0xf1, 0x08, 0x61, 0x00, 0x73, 0x63, 0x72,
0x65, 0x65, 0x6e, 0x73, 0x61, 0x76, 0x65, 0x72, 0x00, 0x49,
0x27, 0x64, 0x00, 0x73, 0x65, 0x65, 0x6e, 0x2c, 0xab, 0x02,
0x12, 0x49, 0x59, 0x00, 0x61, 0x61, 0x00, 0x66, 0x65, 0x65,
0x6c, 0xf9, 0x02, 0x13, 0x68, 0xb1, 0x01, 0x08, 0x34, 0x00,
0x02, 0xdc, 0x00, 0x32, 0x61, 0x63, 0x74, 0x07, 0x03, 0x01,
0x33, 0x00, 0x10, 0x62, 0xfe, 0x02, 0x14, 0x61, 0x08, 0x03,
0x11, 0x2d, 0xe3, 0x02, 0x02, 0x31, 0x03, 0x31, 0x00, 0x72,
0x61, 0xba, 0x00, 0x42, 0x74, 0x68, 0x61, 0x6e, 0x03, 0x01,
0x20, 0x73, 0x6c, 0x41, 0x00, 0x27, 0x6c, 0x79, 0x42, 0x01,
0x82, 0x6b, 0x69, 0x6e, 0x64, 0x2e, 0x00, 0x53, 0x6f, 0x21,
0x00, 0x02, 0x61, 0x00, 0x12, 0x62, 0xdd, 0x01, 0x02, 0x80,
0x01, 0x00, 0x8d, 0x00, 0x54, 0x69, 0x6e, 0x00, 0x6d, 0x79,
0x56, 0x00, 0xf2, 0x19, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68,
0x00, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
0x73, 0x00, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x76, 0x69,
0x74, 0x79, 0x00, 0x6f, 0x34, 0x00, 0x39, 0x61, 0x72, 0x74,
0x88, 0x00, 0x01, 0x54, 0x02, 0xb0, 0x65, 0x6e, 0x67, 0x69,
0x6e, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0xb5, 0x01, 0x35,
0x36, 0x2e, 0x31, 0x04, 0x04, 0x00, 0x5d, 0x03, 0x40, 0x72,
0x6f, 0x6c, 0x73, 0x0d, 0x04, 0xa3, 0x4c, 0x65, 0x66, 0x74,
0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xf9, 0x01, 0x20, 0x61,
0x6e, 0x7e, 0x02, 0x72, 0x6f, 0x77, 0x00, 0x77, 0x69, 0x6c,
0x6c, 0x69, 0x03, 0x00, 0xa9, 0x00, 0xa2, 0x61, 0x70, 0x70,
0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x63, 0x03, 0x24,
0x6f, 0x72, 0x44, 0x03, 0x03, 0xd3, 0x02, 0x33, 0x64, 0x69,
0x72, 0xb2, 0x00, 0x43, 0x69, 0x6e, 0x64, 0x69, 0xd0, 0x02,
0x10, 0x52, 0xec, 0x00, 0x06, 0x5f, 0x00, 0x06, 0x53, 0x00,
0x24, 0x69, 0x74, 0x38, 0x00, 0x77, 0x6f, 0x70, 0x70, 0x6f,
0x73, 0x69, 0x74, 0x41, 0x00, 0x00, 0xaf, 0x00, 0x60, 0x41,
0x6c, 0x74, 0x65, 0x72, 0x6e, 0xe8, 0x00, 0x72, 0x65, 0x6c,
0x79, 0x2c, 0x00, 0x75, 0x73, 0x86, 0x00, 0xa1, 0x63, 0x75,
0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0xfc, 0x03,
0x05, 0x9e, 0x00, 0x01, 0x43, 0x00, 0x07, 0x7c, 0x00, 0x91,
0x6f, 0x72, 0x00, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1e,
0x00, 0x31, 0x65, 0x64, 0x67, 0x93, 0x04, 0x04, 0xb3, 0x03,
0x20, 0x2c, 0x00, 0x7c, 0x02, 0x04, 0x54, 0x00, 0x60, 0x72,
0x65, 0x74, 0x75, 0x72, 0x6e, 0x54, 0x00, 0x09, 0x53, 0x00,
0x4f, 0x72, 0x6f, 0x77, 0x2f, 0xe2, 0x00, 0x10, 0x10, 0x00,
0x91, 0x04, 0x20, 0x00, 0x63, 0x36, 0x01, 0x27, 0x6c, 0x73,
0x3f, 0x00, 0x02, 0xb6, 0x03, 0x02, 0x33, 0x00, 0x79, 0x6c,
0x79, 0x2e, 0x00, 0x4d, 0x6f, 0x76, 0xc3, 0x00, 0x10, 0x6f,
0xd0, 0x03, 0x11, 0x61, 0x27, 0x00, 0x10, 0x2c, 0x0f, 0x05,
0x32, 0x64, 0x00, 0x43, 0x96, 0x01, 0x01, 0x9c, 0x00, 0x00,
0xed, 0x01, 0x16, 0x73, 0x8b, 0x01, 0x0c, 0x9c, 0x00, 0x01,
0x8f, 0x04, 0x20, 0x75, 0x6e, 0x03, 0x04, 0x07, 0x53, 0x00,
0x00, 0x39, 0x00, 0x1b, 0x6d, 0x67, 0x00, 0x52, 0x61, 0x6c,
0x6f, 0x6e, 0x67, 0xa5, 0x05, 0x04, 0x39, 0x00, 0x43, 0x2e,
0x00, 0x4f, 0x72, 0x73, 0x00, 0x11, 0x53, 0xce, 0x04, 0x04,
0x5a, 0x00, 0x01, 0xa9, 0x03, 0x06, 0x26, 0x00, 0x10, 0x50,
0x84, 0x00, 0x00, 0xb6, 0x01, 0x20, 0x45, 0x6e, 0xf0, 0x05,
0x91, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x73,
0x3b, 0x00, 0x00, 0x18, 0x00, 0x00, 0x37, 0x05, 0x05, 0xb6,
0x00, 0x12, 0x28, 0xb3, 0x00, 0x02, 0x2c, 0x00, 0x20, 0x61,
0x67, 0xbc, 0x05, 0xc0, 0x74, 0x6f, 0x00, 0x72, 0x65, 0x6c,
0x65, 0x61, 0x73, 0x65, 0x29, 0x2c, 0xc7, 0x02, 0x00, 0x66,
0x06, 0x04, 0x54, 0x00, 0x11, 0x53, 0x01, 0x05, 0x0f, 0x54,
0x00, 0x04, 0x01, 0x65, 0x05, 0x00, 0x5b, 0x01, 0x42, 0x28,
0x41, 0x6c, 0x6c, 0x7e, 0x02, 0x01, 0x78, 0x01, 0x90, 0x73,
0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x08, 0x04,
0x33, 0x6e, 0x00, 0x73, 0x8e, 0x01, 0x72, 0x32, 0x2e, 0x31,
0x00, 0x61, 0x72, 0x65, 0x81, 0x01, 0xb1, 0x61, 0x76, 0x61,
0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0xf6, 0x02,
0x15, 0x32, 0xf6, 0x02, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d,
0x65, 0x74, 0x65, 0x72, 0xf8, 0x02, 0x10, 0x54, 0x36, 0x02,
0x05, 0x12, 0x00, 0x06, 0x37, 0x00, 0x51, 0x00, 0x66, 0x72,
0x6f, 0x6d, 0x74, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74,
0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6a,
0x00, 0x03, 0x4b, 0x05, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65,
0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x79, 0x00, 0xb1, 0x3a,
0x00, 0x00, 0x00, 0x2d, 0x00, 0x57, 0x69, 0x64, 0x74, 0x68,
0x84, 0x01, 0x22, 0x48, 0x65, 0x77, 0x06, 0x02, 0xba, 0x03,
0x00, 0x9a, 0x00, 0x00, 0x10, 0x05, 0x70, 0x2d, 0x65, 0x78,
0x70, 0x6c, 0x61, 0x6e, 0x9c, 0x02, 0x21, 0x79, 0x2e, 0x32,
0x00, 0x05, 0x39, 0x02, 0x40, 0x73, 0x6b, 0x00, 0x66, 0xac,
0x01, 0x20, 0x00, 0x6c, 0xc9, 0x04, 0x00, 0xed, 0x06, 0x41,
0x68, 0x75, 0x66, 0x66, 0xa3, 0x04, 0x51, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x7c, 0x00, 0x20, 0x74, 0x6f, 0x34, 0x04, 0x98,
0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x2e,
0x07, 0xe3, 0x2e, 0x00, 0x42, 0x79, 0x00, 0x64, 0x65, 0x66,
0x61, 0x75, 0x6c, 0x74, 0x2c, 0x00, 0xf0, 0x00, 0x02, 0x6d,
0x03, 0x02, 0x4a, 0x00, 0x16, 0x65, 0xae, 0x06, 0x00, 0x38,
0x01, 0x10, 0x75, 0x97, 0x00, 0x42, 0x00, 0x77, 0x61, 0x79,
0x02, 0x05, 0x34, 0x61, 0x6e, 0x79, 0x71, 0x06, 0x11, 0x6d,
0xa0, 0x05, 0xf1, 0x00, 0x73, 0x00, 0x61, 0x62, 0x6f, 0x75,
0x74, 0x00, 0x61, 0x73, 0x00, 0x70, 0x72, 0x6f, 0x62, 0x17,
0x01, 0x21, 0x61, 0x73, 0x28, 0x00, 0x01, 0xa8, 0x05, 0x15,
0x2e, 0xbb, 0x00, 0x82, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69,
0x64, 0x65, 0xda, 0x04, 0x93, 0x62, 0x79, 0x00, 0x72, 0x65,
0x71, 0x75, 0x65, 0x73, 0x8b, 0x05, 0x73, 0x70, 0x72, 0x65,
0x63, 0x69, 0x73, 0x65, 0xc5, 0x07, 0x00, 0x82, 0x03, 0x06,
0xd9, 0x00, 0x00, 0x72, 0x02, 0x1c, 0x73, 0xd5, 0x00, 0x71,
0x2e, 0x00, 0x54, 0x79, 0x70, 0x69, 0x63, 0x79, 0x05, 0x10,
0x79, 0xe8, 0x07, 0x31, 0x61, 0x69, 0x6d, 0xe7, 0x07, 0x21,
0x68, 0x65, 0x01, 0x01, 0x10, 0x64, 0xad, 0x01, 0x33, 0x6d,
0x69, 0x6e, 0xf5, 0x03, 0x03, 0x5f, 0x00, 0x3f, 0x73, 0x65,
0x74, 0x5c, 0x00, 0x01, 0x00, 0x8b, 0x01, 0x00, 0x37, 0x06,
0x11, 0x72, 0xe4, 0x05, 0x50, 0x6d, 0x00, 0x65, 0x78, 0x61,
0x8b, 0x03, 0x32, 0x2c, 0x00, 0x73, 0xda, 0x07, 0x01, 0x7f,
0x07, 0x40, 0x61, 0x6e, 0x73, 0x77, 0x49, 0x07, 0x40, 0x73,
0x61, 0x79, 0x29, 0x1a, 0x06, 0x41, 0x6f, 0x75, 0x72, 0x2d,
0x0d, 0x03, 0x04, 0x39, 0x01, 0x03, 0xe0, 0x08, 0x07, 0x19,
0x00, 0x32, 0x6f, 0x6c, 0x75, 0xa6, 0x04, 0x46, 0x4e, 0x6f,
0x74, 0x65, 0x44, 0x06, 0x43, 0x6d, 0x6f, 0x72, 0x65, 0x7a,
0x00, 0x01, 0x59, 0x00, 0x02, 0xd5, 0x01, 0x16, 0x2c, 0x1c,
0x00, 0x40, 0x6c, 0x69, 0x6b, 0x65, 0xca, 0x06, 0x12, 0x74,
0xd2, 0x00, 0x25, 0x61, 0x74, 0x4b, 0x00, 0x76, 0x73, 0x00,
0x73, 0x68, 0x6f, 0x72, 0x74, 0x47, 0x06, 0xf2, 0x00, 0x65,
0x00, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x6c, 0x65,
0x6e, 0x67, 0x74, 0x68, 0xcb, 0x01, 0x01, 0xa6, 0x04, 0x00,
0x97, 0x01, 0x03, 0x35, 0x01, 0x90, 0x6f, 0x73, 0x73, 0x69,
0x62, 0x6c, 0x65, 0x2e, 0x00,
0x20, 0x00, 0x2d, 0x01, 0x00, 0xf0, 0x28, 0x00, 0x00, 0x00,
0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x00, 0x73, 0x6c,
0x69, 0x64, 0x69, 0x6e, 0x67, 0x00, 0x74, 0x69, 0x6c, 0x65,
0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x00, 0x76,
0x69, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x00, 0x73, 0x69,
0x6d, 0x69, 0x6c, 0x61, 0x72, 0x00, 0x74, 0x6f, 0x00, 0x46,
0x69, 0x66, 0x4f, 0x00, 0x72, 0x00, 0x28, 0x73, 0x65, 0x65,
0x00, 0x63, 0x67, 0x00, 0xf0, 0x23, 0x00, 0x35, 0x29, 0x00,
0x62, 0x75, 0x74, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x61,
0x00, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74,
0x00, 0x74, 0x79, 0x70, 0x65, 0x00, 0x6f, 0x66, 0x00, 0x6d,
0x6f, 0x76, 0x65, 0x2e, 0x00, 0x54, 0x68, 0x69, 0x73, 0x00,
0x74, 0x69, 0x6d, 0x65, 0x2c, 0x00, 0x74, 0x00, 0xf0, 0x10,
0x65, 0x00, 0x69, 0x73, 0x00, 0x6e, 0x6f, 0x00, 0x68, 0x6f,
0x6c, 0x65, 0x3a, 0x00, 0x61, 0x6c, 0x6c, 0x00, 0x31, 0x36,
0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x00, 0x6f,
0x6e, 0x24, 0x00, 0xf4, 0x07, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x6e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x25, 0x00, 0x61,
0x2e, 0x00, 0x59, 0x6f, 0x75, 0x72, 0x5d, 0x00, 0x00, 0x4b,
0x00, 0xf0, 0x16, 0x74, 0x6f, 0x00, 0x73, 0x68, 0x69, 0x66,
0x74, 0x00, 0x61, 0x6e, 0x00, 0x65, 0x6e, 0x74, 0x69, 0x72,
0x65, 0x00, 0x72, 0x6f, 0x77, 0x00, 0x6c, 0x65, 0x66, 0x74,
0x00, 0x6f, 0x72, 0x00, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2c,
0x0a, 0x00, 0x0c, 0x26, 0x00, 0x90, 0x63, 0x6f, 0x6c, 0x75,
0x6d, 0x6e, 0x00, 0x75, 0x70, 0x1d, 0x00, 0xb1, 0x64, 0x6f,
0x77, 0x6e, 0x3b, 0x00, 0x65, 0x76, 0x65, 0x72, 0x79, 0xac,
0x00, 0xc1, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x64, 0x6f, 0x00,
0x74, 0x68, 0x61, 0x74, 0xb8, 0x00, 0x02, 0x23, 0x01, 0x00,
0x16, 0x00, 0x02, 0x48, 0x00, 0x36, 0x6f, 0x66, 0x66, 0xab,
0x00, 0xd1, 0x72, 0x65, 0x2d, 0x61, 0x70, 0x70, 0x65, 0x61,
0x72, 0x73, 0x00, 0x61, 0x74, 0x17, 0x00, 0x02, 0x5f, 0x01,
0x52, 0x65, 0x6e, 0x64, 0x00, 0x6f, 0x28, 0x00, 0x31, 0x73,
0x61, 0x6d, 0x99, 0x00, 0x32, 0x2c, 0x00, 0x69, 0xe4, 0x00,
0x42, 0x73, 0x70, 0x61, 0x63, 0x51, 0x00, 0xf5, 0x0e, 0x6a,
0x75, 0x73, 0x74, 0x00, 0x76, 0x61, 0x63, 0x61, 0x74, 0x65,
0x64, 0x2e, 0x00, 0x54, 0x6f, 0x00, 0x77, 0x69, 0x6e, 0x2c,
0x00, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x7c, 0x00,
0x60, 0x73, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x0e, 0x01, 0xf4,
0x06, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x00, 0x6f, 0x72,
0x64, 0x65, 0x72, 0x00, 0x28, 0x31, 0x2c, 0x32, 0x2c, 0x33,
0x2c, 0x34, 0x3b, 0x01, 0x32, 0x74, 0x6f, 0x70, 0x67, 0x00,
0xb4, 0x31, 0x33, 0x2c, 0x31, 0x34, 0x2c, 0x31, 0x35, 0x2c,
0x31, 0x36, 0x1c, 0x00, 0xd0, 0x62, 0x6f, 0x74, 0x74, 0x6f,
0x6d, 0x29, 0x2e, 0x00, 0x57, 0x68, 0x65, 0x6e, 0x7b, 0x00,
0x84, 0x27, 0x76, 0x65, 0x00, 0x64, 0x6f, 0x6e, 0x65, 0xe7,
0x00, 0x70, 0x72, 0x79, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x12,
0x02, 0x27, 0x6f, 0x6e, 0xd1, 0x01, 0x30, 0x73, 0x69, 0x7a,
0x9d, 0x01, 0x11, 0x66, 0xee, 0x00, 0x70, 0x2e, 0x00, 0x00,
0x00, 0x49, 0x00, 0x6d, 0x58, 0x01, 0x30, 0x00, 0x68, 0x61,
0x85, 0x01, 0x90, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64,
0x00, 0x74, 0xea, 0x01, 0x10, 0x67, 0xe9, 0x00, 0x60, 0x6d,
0x79, 0x73, 0x65, 0x6c, 0x66, 0x39, 0x01, 0xf0, 0x03, 0x6f,
0x75, 0x67, 0x68, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x00, 0x62,
0x79, 0x00, 0x61, 0x63, 0x63, 0x69, 0x64, 0x51, 0x00, 0xf4,
0x03, 0x69, 0x66, 0x00, 0x73, 0x6f, 0x00, 0x28, 0x61, 0x6e,
0x64, 0x00, 0x49, 0x27, 0x6d, 0x00, 0x73, 0x75, 0x72, 0x33,
0x01, 0x64, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x59, 0x00,
0x50, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x32, 0x00, 0x26, 0x6c,
0x79, 0x67, 0x00, 0x63, 0x69, 0x74, 0x29, 0x2e, 0x00, 0x49,
0x5c, 0x00, 0xe0, 0x74, 0x00, 0x49, 0x00, 0x77, 0x61, 0x73,
0x00, 0x69, 0x6d, 0x69, 0x74, 0x61, 0x74, 0xba, 0x00, 0xf1,
0x08, 0x61, 0x00, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73,
0x61, 0x76, 0x65, 0x72, 0x00, 0x49, 0x27, 0x64, 0x00, 0x73,
0x65, 0x65, 0x6e, 0x2c, 0xab, 0x02, 0x12, 0x49, 0x59, 0x00,
0x61, 0x61, 0x00, 0x66, 0x65, 0x65, 0x6c, 0xf9, 0x02, 0x13,
0x68, 0xb1, 0x01, 0x08, 0x34, 0x00, 0x02, 0xdc, 0x00, 0x32,
0x61, 0x63, 0x74, 0x07, 0x03, 0x01, 0x33, 0x00, 0x10, 0x62,
0xfe, 0x02, 0x14, 0x61, 0x08, 0x03, 0x11, 0x2d, 0xe3, 0x02,
0x02, 0x31, 0x03, 0x31, 0x00, 0x72, 0x61, 0xba, 0x00, 0x42,
0x74, 0x68, 0x61, 0x6e, 0x03, 0x01, 0x20, 0x73, 0x6c, 0x41,
0x00, 0x27, 0x6c, 0x79, 0x42, 0x01, 0x82, 0x6b, 0x69, 0x6e,
0x64, 0x2e, 0x00, 0x53, 0x6f, 0x21, 0x00, 0x02, 0x61, 0x00,
0x12, 0x62, 0xdd, 0x01, 0x02, 0x80, 0x01, 0x00, 0x8d, 0x00,
0x54, 0x69, 0x6e, 0x00, 0x6d, 0x79, 0x56, 0x00, 0xf2, 0x19,
0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x72, 0x65, 0x70,
0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x00, 0x63, 0x72,
0x65, 0x61, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x00, 0x6f,
0x34, 0x00, 0x39, 0x61, 0x72, 0x74, 0x88, 0x00, 0x01, 0x54,
0x02, 0xb0, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x65, 0x72,
0x69, 0x6e, 0x67, 0xb5, 0x01, 0x35, 0x36, 0x2e, 0x31, 0x17,
0x04, 0x00, 0x5d, 0x03, 0xf3, 0x03, 0x72, 0x6f, 0x6c, 0x73,
0x20, 0x00, 0x00, 0x00, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63,
0x6c, 0x69, 0x63, 0x6b, 0xf9, 0x01, 0x20, 0x61, 0x6e, 0x7e,
0x02, 0x72, 0x6f, 0x77, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x69,
0x03, 0x00, 0xa9, 0x00, 0xa2, 0x61, 0x70, 0x70, 0x72, 0x6f,
0x70, 0x72, 0x69, 0x61, 0x74, 0x63, 0x03, 0x24, 0x6f, 0x72,
0x44, 0x03, 0x03, 0xd3, 0x02, 0x33, 0x64, 0x69, 0x72, 0xb2,
0x00, 0x43, 0x69, 0x6e, 0x64, 0x69, 0xd0, 0x02, 0x10, 0x52,
0xec, 0x00, 0x06, 0x5f, 0x00, 0x06, 0x53, 0x00, 0x24, 0x69,
0x74, 0x38, 0x00, 0x77, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69,
0x74, 0x41, 0x00, 0x00, 0xaf, 0x00, 0x60, 0x41, 0x6c, 0x74,
0x65, 0x72, 0x6e, 0xe8, 0x00, 0x72, 0x65, 0x6c, 0x79, 0x2c,
0x00, 0x75, 0x73, 0x86, 0x00, 0xa1, 0x63, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0xfc, 0x03, 0x05, 0x9e,
0x00, 0x01, 0x43, 0x00, 0x07, 0x7c, 0x00, 0x91, 0x6f, 0x72,
0x00, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1e, 0x00, 0x31,
0x65, 0x64, 0x67, 0x93, 0x04, 0x04, 0xb3, 0x03, 0x20, 0x2c,
0x00, 0x7c, 0x02, 0x04, 0x54, 0x00, 0x60, 0x72, 0x65, 0x74,
0x75, 0x72, 0x6e, 0x54, 0x00, 0x09, 0x53, 0x00, 0x4f, 0x72,
0x6f, 0x77, 0x2f, 0xe2, 0x00, 0x10, 0x10, 0x00, 0x91, 0x04,
0x20, 0x00, 0x63, 0x36, 0x01, 0x27, 0x6c, 0x73, 0x3f, 0x00,
0x02, 0xb6, 0x03, 0x02, 0x33, 0x00, 0x79, 0x6c, 0x79, 0x2e,
0x00, 0x4d, 0x6f, 0x76, 0xc3, 0x00, 0x10, 0x6f, 0xd0, 0x03,
0x11, 0x61, 0x27, 0x00, 0x10, 0x2c, 0x0f, 0x05, 0x32, 0x64,
0x00, 0x43, 0x96, 0x01, 0x01, 0x9c, 0x00, 0x00, 0xed, 0x01,
0x16, 0x73, 0x8b, 0x01, 0x0c, 0x9c, 0x00, 0x01, 0x8f, 0x04,
0x20, 0x75, 0x6e, 0x03, 0x04, 0x07, 0x53, 0x00, 0x00, 0x39,
0x00, 0x1b, 0x6d, 0x67, 0x00, 0x52, 0x61, 0x6c, 0x6f, 0x6e,
0x67, 0xa5, 0x05, 0x04, 0x39, 0x00, 0x43, 0x2e, 0x00, 0x4f,
0x72, 0x73, 0x00, 0x11, 0x53, 0xce, 0x04, 0x04, 0x5a, 0x00,
0x01, 0xa9, 0x03, 0x06, 0x26, 0x00, 0x10, 0x50, 0x84, 0x00,
0x00, 0xb6, 0x01, 0x20, 0x45, 0x6e, 0xf0, 0x05, 0x91, 0x73,
0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x3b, 0x00,
0x00, 0x18, 0x00, 0x00, 0x37, 0x05, 0x05, 0xb6, 0x00, 0x12,
0x28, 0xb3, 0x00, 0x02, 0x2c, 0x00, 0x20, 0x61, 0x67, 0xbc,
0x05, 0xc0, 0x74, 0x6f, 0x00, 0x72, 0x65, 0x6c, 0x65, 0x61,
0x73, 0x65, 0x29, 0x2c, 0xc7, 0x02, 0x00, 0x66, 0x06, 0x04,
0x54, 0x00, 0x11, 0x53, 0x01, 0x05, 0x0f, 0x54, 0x00, 0x04,
0x01, 0x65, 0x05, 0x00, 0x5b, 0x01, 0x42, 0x28, 0x41, 0x6c,
0x6c, 0x7e, 0x02, 0x01, 0x78, 0x01, 0x90, 0x73, 0x00, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x08, 0x04, 0x33, 0x6e,
0x00, 0x73, 0x8e, 0x01, 0x72, 0x32, 0x2e, 0x31, 0x00, 0x61,
0x72, 0x65, 0x81, 0x01, 0xb1, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0xf6, 0x02, 0x15, 0x32,
0xf6, 0x02, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0xf8, 0x02, 0x10, 0x54, 0x36, 0x02, 0x05, 0x12,
0x00, 0x06, 0x37, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d,
0x74, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6a, 0x00, 0x03,
0x4b, 0x05, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0x79, 0x00, 0xb1, 0x3a, 0x00, 0x00,
0x00, 0x2d, 0x00, 0x57, 0x69, 0x64, 0x74, 0x68, 0x84, 0x01,
0x22, 0x48, 0x65, 0x77, 0x06, 0x02, 0xba, 0x03, 0x00, 0x9a,
0x00, 0x00, 0x10, 0x05, 0x70, 0x2d, 0x65, 0x78, 0x70, 0x6c,
0x61, 0x6e, 0x9c, 0x02, 0x21, 0x79, 0x2e, 0x32, 0x00, 0x05,
0x39, 0x02, 0x40, 0x73, 0x6b, 0x00, 0x66, 0xac, 0x01, 0x20,
0x00, 0x6c, 0xc9, 0x04, 0x00, 0xed, 0x06, 0x41, 0x68, 0x75,
0x66, 0x66, 0xa3, 0x04, 0x51, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x7c, 0x00, 0x20, 0x74, 0x6f, 0x34, 0x04, 0x98, 0x70, 0x65,
0x72, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x2e, 0x07, 0xe3,
0x2e, 0x00, 0x42, 0x79, 0x00, 0x64, 0x65, 0x66, 0x61, 0x75,
0x6c, 0x74, 0x2c, 0x00, 0xf0, 0x00, 0x02, 0x6d, 0x03, 0x02,
0x4a, 0x00, 0x16, 0x65, 0xae, 0x06, 0x00, 0x38, 0x01, 0x10,
0x75, 0x97, 0x00, 0x42, 0x00, 0x77, 0x61, 0x79, 0x02, 0x05,
0x34, 0x61, 0x6e, 0x79, 0x71, 0x06, 0x11, 0x6d, 0xa0, 0x05,
0xf1, 0x00, 0x73, 0x00, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x00,
0x61, 0x73, 0x00, 0x70, 0x72, 0x6f, 0x62, 0x17, 0x01, 0x21,
0x61, 0x73, 0x28, 0x00, 0x01, 0xa8, 0x05, 0x15, 0x2e, 0xbb,
0x00, 0x82, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65,
0xda, 0x04, 0x93, 0x62, 0x79, 0x00, 0x72, 0x65, 0x71, 0x75,
0x65, 0x73, 0x8b, 0x05, 0x73, 0x70, 0x72, 0x65, 0x63, 0x69,
0x73, 0x65, 0xc5, 0x07, 0x00, 0x82, 0x03, 0x06, 0xd9, 0x00,
0x00, 0x72, 0x02, 0x1c, 0x73, 0xd5, 0x00, 0x71, 0x2e, 0x00,
0x54, 0x79, 0x70, 0x69, 0x63, 0x79, 0x05, 0x10, 0x79, 0xe8,
0x07, 0x31, 0x61, 0x69, 0x6d, 0xe7, 0x07, 0x21, 0x68, 0x65,
0x01, 0x01, 0x10, 0x64, 0xad, 0x01, 0x33, 0x6d, 0x69, 0x6e,
0xf5, 0x03, 0x03, 0x5f, 0x00, 0x3f, 0x73, 0x65, 0x74, 0x5c,
0x00, 0x01, 0x00, 0x8b, 0x01, 0x00, 0x37, 0x06, 0x11, 0x72,
0xe4, 0x05, 0x50, 0x6d, 0x00, 0x65, 0x78, 0x61, 0x8b, 0x03,
0x32, 0x2c, 0x00, 0x73, 0xda, 0x07, 0x01, 0x7f, 0x07, 0x40,
0x61, 0x6e, 0x73, 0x77, 0x49, 0x07, 0x40, 0x73, 0x61, 0x79,
0x29, 0x1a, 0x06, 0x41, 0x6f, 0x75, 0x72, 0x2d, 0x0d, 0x03,
0x04, 0x39, 0x01, 0x03, 0xe0, 0x08, 0x07, 0x19, 0x00, 0x32,
0x6f, 0x6c, 0x75, 0xa6, 0x04, 0x46, 0x4e, 0x6f, 0x74, 0x65,
0x44, 0x06, 0x43, 0x6d, 0x6f, 0x72, 0x65, 0x7a, 0x00, 0x01,
0x59, 0x00, 0x02, 0xd5, 0x01, 0x16, 0x2c, 0x1c, 0x00, 0x40,
0x6c, 0x69, 0x6b, 0x65, 0xca, 0x06, 0x12, 0x74, 0xd2, 0x00,
0x25, 0x61, 0x74, 0x4b, 0x00, 0x76, 0x73, 0x00, 0x73, 0x68,
0x6f, 0x72, 0x74, 0x47, 0x06, 0xf2, 0x00, 0x65, 0x00, 0x74,
0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x6c, 0x65, 0x6e, 0x67,
0x74, 0x68, 0xcb, 0x01, 0x01, 0xa6, 0x04, 0x00, 0x97, 0x01,
0x03, 0x35, 0x01, 0x90, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c,
0x65, 0x2e, 0x00,
};
const unsigned short help_text_len = 2534;
const unsigned short help_text_words = 453;
const unsigned short help_text_len = 2553;
const unsigned short help_text_words = 454;
const char quick_help_text[] = "Slide a row at a time to arrange the tiles into order.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,184 +6,197 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 125, TEXT_CENTER | C_RED },
{ 328, TEXT_CENTER | C_RED },
{ 345, TEXT_UNDERLINE },
{ 126, TEXT_CENTER | C_RED },
{ 329, TEXT_CENTER | C_RED },
{ 346, TEXT_UNDERLINE },
{ 356, TEXT_UNDERLINE },
{ 379, TEXT_UNDERLINE },
{ 347, TEXT_UNDERLINE },
{ 357, TEXT_UNDERLINE },
{ 380, TEXT_UNDERLINE },
{ 447, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 2378 comp 1650 ratio 0.69386 level 10 saved 728 */
/* orig 2582 comp 1767 ratio 0.684353 level 10 saved 815 */
const char help_text[] = {
0xf0, 0x21, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x30, 0x3a, 0x20, 0x53, 0x6c, 0x61, 0x6e, 0x74, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2e,
0x1c, 0x00, 0xf3, 0x1e, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00,
0x69, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x64, 0x72, 0x61, 0x77,
0x00, 0x61, 0x00, 0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61,
0x6c, 0x00, 0x6c, 0x69, 0x6e, 0x65, 0x00, 0x74, 0x68, 0x72,
0x6f, 0x75, 0x67, 0x68, 0x00, 0x65, 0x61, 0x63, 0x68, 0x3a,
0x00, 0xf2, 0x07, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x63,
0x68, 0x6f, 0x6f, 0x73, 0x65, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x00, 0x77, 0x61, 0x79, 0x22, 0x00, 0x01, 0x34, 0x00,
0x10, 0x73, 0x7d, 0x00, 0xfa, 0x24, 0x73, 0x00, 0x73, 0x6f,
0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x74, 0x68, 0x65, 0x00,
0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x00,
0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x00, 0x61, 0x72, 0x65, 0x00, 0x6d, 0x65, 0x74, 0x3a, 0x00,
0x00, 0x00, 0x2d, 0x00, 0x54, 0x68, 0x65, 0x7b, 0x00, 0xf1,
0x05, 0x73, 0x00, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x00, 0x66,
0x6f, 0x72, 0x6d, 0x00, 0x61, 0x00, 0x6c, 0x6f, 0x6f, 0x70,
0x2e, 0x2a, 0x00, 0xf2, 0x1e, 0x41, 0x6e, 0x79, 0x00, 0x70,
0x6f, 0x69, 0x6e, 0x74, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00,
0x61, 0x00, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x64, 0x00,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x00, 0x68, 0x61, 0x73,
0x00, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x65, 0x6c, 0x79,
0x83, 0x00, 0x43, 0x6d, 0x61, 0x6e, 0x79, 0x55, 0x00, 0x40,
0x6d, 0x65, 0x65, 0x74, 0x88, 0x00, 0xf1, 0x02, 0x61, 0x74,
0x00, 0x69, 0x74, 0x2e, 0x00, 0x28, 0x54, 0x68, 0x75, 0x73,
0x2c, 0x00, 0x61, 0x00, 0x34, 0x06, 0x01, 0x90, 0x68, 0x65,
0x00, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x29, 0x01, 0xfe,
0x0e, 0x61, 0x00, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x00, 0x73,
0x68, 0x61, 0x70, 0x65, 0x2c, 0x00, 0x77, 0x68, 0x65, 0x72,
0x65, 0x61, 0x73, 0x00, 0x61, 0x00, 0x7a, 0x65, 0x72, 0x6f,
0x2f, 0x00, 0x01, 0x3b, 0x01, 0x42, 0x6d, 0x6f, 0x6e, 0x64,
0x31, 0x00, 0xc0, 0x00, 0x2d, 0x00, 0x6f, 0x72, 0x00, 0x72,
0x61, 0x74, 0x68, 0x65, 0x72, 0x61, 0x00, 0x7a, 0x70, 0x61,
0x72, 0x74, 0x69, 0x61, 0x6c, 0x25, 0x00, 0x94, 0x2c, 0x00,
0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x56, 0x00, 0x33,
0x63, 0x61, 0x6e, 0xf8, 0x00, 0x91, 0x61, 0x70, 0x70, 0x65,
0x61, 0x72, 0x00, 0x69, 0x6e, 0x67, 0x00, 0x51, 0x6d, 0x69,
0x64, 0x64, 0x6c, 0x67, 0x00, 0x00, 0x0e, 0x00, 0x01, 0xcb,
0x01, 0x04, 0x3a, 0x00, 0x01, 0xe2, 0x00, 0xe0, 0x77, 0x6f,
0x75, 0x6c, 0x64, 0x00, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69,
0x61, 0x74, 0xf9, 0x00, 0x04, 0x57, 0x00, 0x01, 0x39, 0x01,
0xa0, 0x29, 0x00, 0x00, 0x00, 0x43, 0x72, 0x65, 0x64, 0x69,
0x74, 0x50, 0x01, 0xf1, 0x01, 0x00, 0x74, 0x68, 0x69, 0x73,
0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f,
0x65, 0xff, 0x01, 0xa0, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69,
0x00, 0x5b, 0x38, 0x5d, 0x67, 0x01, 0xf1, 0x01, 0x5b, 0x38,
0x5d, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77,
0x77, 0x77, 0x2e, 0x6e, 0x1d, 0x00, 0xa2, 0x2e, 0x63, 0x6f,
0x2e, 0x6a, 0x70, 0x2f, 0x6a, 0x61, 0x2f, 0x3c, 0x00, 0xf0,
0x0e, 0x73, 0x2f, 0x67, 0x6f, 0x6b, 0x69, 0x67, 0x65, 0x6e,
0x5f, 0x6e, 0x61, 0x6e, 0x61, 0x6d, 0x65, 0x00, 0x28, 0x69,
0x6e, 0x00, 0x4a, 0x61, 0x70, 0x61, 0x6e, 0x65, 0x73, 0x65,
0x73, 0x00, 0x43, 0x32, 0x30, 0x2e, 0x31, 0x8c, 0x02, 0x80,
0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x95, 0x02,
0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0x8a, 0x01, 0xa3, 0x69, 0x6e, 0x00, 0x61, 0x00, 0x62,
0x6c, 0x61, 0x6e, 0x6b, 0x61, 0x02, 0xa0, 0x00, 0x77, 0x69,
0x6c, 0x6c, 0x00, 0x70, 0x6c, 0x61, 0x63, 0xc0, 0x00, 0x10,
0x5c, 0x21, 0x00, 0x52, 0x69, 0x74, 0x00, 0x28, 0x61, 0x5e,
0x00, 0x2d, 0x01, 0x00, 0xf0, 0x0f, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x2e, 0x1c, 0x00, 0xf3, 0x1e,
0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00, 0x74,
0x6f, 0x00, 0x64, 0x72, 0x61, 0x77, 0x00, 0x61, 0x00, 0x64,
0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x00, 0x6c, 0x69,
0x6e, 0x65, 0x00, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68,
0x00, 0x65, 0x61, 0x63, 0x68, 0x3a, 0x00, 0xf2, 0x07, 0x2c,
0x00, 0x61, 0x6e, 0x64, 0x00, 0x63, 0x68, 0x6f, 0x6f, 0x73,
0x65, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x77, 0x61,
0x79, 0x22, 0x00, 0x01, 0x34, 0x00, 0x10, 0x73, 0x8f, 0x00,
0xfa, 0x24, 0x73, 0x00, 0x73, 0x6f, 0x00, 0x74, 0x68, 0x61,
0x74, 0x00, 0x74, 0x68, 0x65, 0x00, 0x66, 0x6f, 0x6c, 0x6c,
0x6f, 0x77, 0x69, 0x6e, 0x67, 0x00, 0x63, 0x6f, 0x6e, 0x64,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x00, 0x61, 0x72, 0x65,
0x00, 0x6d, 0x65, 0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00,
0x54, 0x68, 0x65, 0x7b, 0x00, 0xf1, 0x05, 0x73, 0x00, 0x6e,
0x65, 0x76, 0x65, 0x72, 0x00, 0x66, 0x6f, 0x72, 0x6d, 0x00,
0x61, 0x00, 0x6c, 0x6f, 0x6f, 0x70, 0x2e, 0x2a, 0x00, 0xf2,
0x1e, 0x41, 0x6e, 0x79, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74,
0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x61, 0x00, 0x63, 0x69,
0x72, 0x63, 0x6c, 0x65, 0x64, 0x00, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x00, 0x68, 0x61, 0x73, 0x00, 0x70, 0x72, 0x65,
0x63, 0x69, 0x73, 0x65, 0x6c, 0x79, 0x83, 0x00, 0x43, 0x6d,
0x61, 0x6e, 0x79, 0x55, 0x00, 0x40, 0x6d, 0x65, 0x65, 0x74,
0x88, 0x00, 0xf1, 0x02, 0x61, 0x74, 0x00, 0x69, 0x74, 0x2e,
0x00, 0x28, 0x54, 0x68, 0x75, 0x73, 0x2c, 0x00, 0x61, 0x00,
0x34, 0x06, 0x01, 0x90, 0x68, 0x65, 0x00, 0x63, 0x65, 0x6e,
0x74, 0x72, 0x65, 0x29, 0x01, 0xfe, 0x0e, 0x61, 0x00, 0x63,
0x72, 0x6f, 0x73, 0x73, 0x00, 0x73, 0x68, 0x61, 0x70, 0x65,
0x2c, 0x00, 0x77, 0x68, 0x65, 0x72, 0x65, 0x61, 0x73, 0x00,
0x61, 0x00, 0x7a, 0x65, 0x72, 0x6f, 0x2f, 0x00, 0x01, 0x3b,
0x01, 0x42, 0x6d, 0x6f, 0x6e, 0x64, 0x31, 0x00, 0xc0, 0x00,
0x2d, 0x00, 0x6f, 0x72, 0x00, 0x72, 0x61, 0x74, 0x68, 0x65,
0x72, 0x61, 0x00, 0x7a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61,
0x6c, 0x25, 0x00, 0x94, 0x2c, 0x00, 0x62, 0x65, 0x63, 0x61,
0x75, 0x73, 0x65, 0x56, 0x00, 0x33, 0x63, 0x61, 0x6e, 0xf8,
0x00, 0x91, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x00, 0x69,
0x6e, 0x67, 0x00, 0x51, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x67,
0x00, 0x00, 0x0e, 0x00, 0x01, 0xcb, 0x01, 0x04, 0x3a, 0x00,
0x01, 0xe2, 0x00, 0xe0, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x00,
0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0xf9, 0x00,
0x04, 0x57, 0x00, 0x01, 0x39, 0x01, 0xa0, 0x29, 0x00, 0x00,
0x00, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x50, 0x01, 0xf1,
0x01, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a,
0x7a, 0x6c, 0x65, 0x00, 0x67, 0x6f, 0x65, 0xff, 0x01, 0xa0,
0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00, 0x5b, 0x38, 0x5d,
0x67, 0x01, 0xf1, 0x02, 0x5b, 0x38, 0x5d, 0x00, 0x68, 0x74,
0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
0x6e, 0x1e, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70,
0x2f, 0x6a, 0x61, 0x2f, 0x3d, 0x00, 0xf0, 0x0f, 0x73, 0x2f,
0x67, 0x6f, 0x6b, 0x69, 0x67, 0x65, 0x6e, 0x5f, 0x6e, 0x61,
0x6e, 0x61, 0x6d, 0x65, 0x2f, 0x00, 0x28, 0x69, 0x6e, 0x00,
0x4a, 0x61, 0x70, 0x61, 0x6e, 0x65, 0x73, 0x65, 0x75, 0x00,
0x43, 0x32, 0x30, 0x2e, 0x31, 0xa0, 0x02, 0xf0, 0x07, 0x63,
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00,
0x00, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0x8c, 0x01, 0xa3, 0x69, 0x6e, 0x00, 0x61, 0x00, 0x62,
0x6c, 0x61, 0x6e, 0x6b, 0x63, 0x02, 0xa0, 0x00, 0x77, 0x69,
0x6c, 0x6c, 0x00, 0x70, 0x6c, 0x61, 0x63, 0xc2, 0x00, 0x10,
0x5c, 0x21, 0x00, 0x52, 0x69, 0x74, 0x00, 0x28, 0x61, 0x60,
0x02, 0x40, 0x6c, 0x65, 0x61, 0x6e, 0x37, 0x00, 0x10, 0x74,
0x5f, 0x02, 0x00, 0x0f, 0x00, 0xc1, 0x66, 0x74, 0x2c, 0x00,
0x61, 0x02, 0x00, 0x0f, 0x00, 0xc1, 0x66, 0x74, 0x2c, 0x00,
0x69, 0x2e, 0x65, 0x2e, 0x00, 0x72, 0x75, 0x6e, 0x1a, 0x00,
0x41, 0x66, 0x72, 0x6f, 0x6d, 0x1c, 0x00, 0x31, 0x74, 0x6f,
0x70, 0x20, 0x00, 0x04, 0x37, 0x01, 0x03, 0x5f, 0x00, 0x03,
0x70, 0x20, 0x00, 0x04, 0x39, 0x01, 0x03, 0x5f, 0x00, 0x03,
0x3a, 0x00, 0xf0, 0x01, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d,
0x00, 0x72, 0x69, 0x67, 0x68, 0x74, 0x29, 0x2e, 0x00, 0x52,
0x08, 0x00, 0x0f, 0x96, 0x00, 0x16, 0x14, 0x2f, 0x96, 0x00,
0x0b, 0x8f, 0x00, 0x01, 0x4e, 0x00, 0x1b, 0x2c, 0x8b, 0x00,
0x22, 0x6f, 0x70, 0x18, 0x00, 0x00, 0x25, 0x00, 0x03, 0x76,
0x00, 0x00, 0x97, 0x00, 0x20, 0x29, 0x2e, 0x96, 0x01, 0x63,
0x00, 0x00, 0x97, 0x00, 0x20, 0x29, 0x2e, 0x98, 0x01, 0x63,
0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x43, 0x00, 0x01, 0x7f,
0x00, 0x30, 0x00, 0x65, 0x69, 0x35, 0x02, 0x72, 0x00, 0x62,
0x00, 0x30, 0x00, 0x65, 0x69, 0x37, 0x02, 0x72, 0x00, 0x62,
0x75, 0x74, 0x74, 0x6f, 0x6e, 0x78, 0x00, 0xd2, 0x63, 0x79,
0x63, 0x6c, 0x65, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65,
0x6e, 0xdd, 0x00, 0xc5, 0x68, 0x72, 0x65, 0x65, 0x00, 0x70,
0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0xdc, 0x00, 0x00, 0x67,
0x01, 0x62, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x00, 0xd9, 0x02,
0x01, 0x62, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x00, 0xdb, 0x02,
0x85, 0x69, 0x66, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x6c, 0x72,
0x01, 0xbe, 0x00, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65,
0x64, 0x6c, 0x79, 0xe4, 0x00, 0x00, 0xd2, 0x00, 0x02, 0x6f,
0x00, 0x52, 0x68, 0x61, 0x6e, 0x67, 0x65, 0xbf, 0x00, 0x02,
0x21, 0x00, 0x40, 0x74, 0x6f, 0x00, 0x5c, 0x05, 0x00, 0x51,
0x2f, 0x00, 0x62, 0x61, 0x63, 0x0f, 0x00, 0x01, 0x18, 0x00,
0x02, 0x0d, 0x04, 0x03, 0x66, 0x00, 0x01, 0xe5, 0x00, 0x0e,
0x02, 0x0f, 0x04, 0x03, 0x66, 0x00, 0x01, 0xe5, 0x00, 0x0e,
0x67, 0x00, 0x07, 0x7b, 0x01, 0x0f, 0x5d, 0x00, 0x07, 0x12,
0x2f, 0x62, 0x00, 0x09, 0x5d, 0x00, 0x01, 0x9f, 0x03, 0x50,
0x65, 0x72, 0x65, 0x66, 0x6f, 0x76, 0x04, 0x00, 0x62, 0x00,
0x00, 0x1f, 0x03, 0x42, 0x70, 0x6c, 0x61, 0x79, 0x06, 0x03,
0x00, 0x73, 0x02, 0x50, 0x65, 0x6e, 0x74, 0x69, 0x72, 0xf0,
0x02, 0x01, 0x0d, 0x04, 0x34, 0x6f, 0x6e, 0x65, 0x37, 0x01,
0x03, 0x94, 0x00, 0x71, 0x6e, 0x65, 0x65, 0x64, 0x00, 0x74,
0x6f, 0x02, 0x03, 0x13, 0x59, 0x42, 0x00, 0x52, 0x61, 0x6c,
0x73, 0x6f, 0x00, 0x3b, 0x03, 0xc1, 0x65, 0x00, 0x63, 0x75,
0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x07, 0x03,
0x20, 0x6d, 0x6f, 0x2d, 0x05, 0x55, 0x72, 0x6f, 0x75, 0x6e,
0x64, 0x6b, 0x03, 0x71, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73,
0x73, 0xa4, 0x01, 0x00, 0xe4, 0x01, 0x50, 0x65, 0x74, 0x75,
0x72, 0x6e, 0xde, 0x03, 0x20, 0x73, 0x70, 0x0e, 0x02, 0x01,
0x3b, 0x00, 0x0b, 0xb4, 0x02, 0x20, 0x6f, 0x72, 0x25, 0x02,
0xe2, 0x2c, 0x00, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74,
0x69, 0x76, 0x65, 0x6c, 0x79, 0x2c, 0x01, 0x01, 0x29, 0x00,
0x43, 0x74, 0x68, 0x65, 0x6e, 0xd4, 0x01, 0x50, 0x74, 0x68,
0x65, 0x6d, 0x00, 0x57, 0x04, 0x5a, 0x62, 0x6f, 0x76, 0x65,
0x2e, 0xa4, 0x00, 0x10, 0x70, 0x77, 0x00, 0x20, 0x00, 0x2f,
0x4e, 0x00, 0x01, 0x7d, 0x01, 0x06, 0x7e, 0x02, 0x00, 0x12,
0x00, 0x0c, 0x5e, 0x00, 0xa1, 0x69, 0x6e, 0x64, 0x65, 0x70,
0x65, 0x6e, 0x64, 0x65, 0x6e, 0xf2, 0x02, 0x20, 0x77, 0x68,
0xe4, 0x04, 0x81, 0x73, 0x00, 0x61, 0x6c, 0x72, 0x65, 0x61,
0x64, 0xee, 0x01, 0x07, 0xf0, 0x00, 0x02, 0x91, 0x01, 0x62,
0x2e, 0x00, 0x42, 0x61, 0x63, 0x6b, 0xc7, 0x00, 0x20, 0x72,
0x65, 0xfc, 0x00, 0x24, 0x73, 0x00, 0x2c, 0x05, 0x06, 0x48,
0x03, 0x0b, 0x33, 0x00, 0x42, 0x00, 0x00, 0x28, 0x41, 0xc4,
0x00, 0x32, 0x00, 0x61, 0x63, 0xcb, 0x05, 0x90, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x66, 0x00, 0x21,
0x73, 0x65, 0x16, 0x00, 0x41, 0x00, 0x32, 0x2e, 0x31, 0xe4,
0x05, 0x01, 0xcb, 0x00, 0xa3, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x2e, 0x19, 0x04, 0x13, 0x32, 0x19,
0x04, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x1b, 0x04, 0x66, 0x54, 0x68, 0x65, 0x73, 0x65, 0x00,
0x14, 0x00, 0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x06, 0x93,
0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e,
0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6f, 0x00, 0x22, 0x6f,
0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0xab, 0x00, 0x91, 0x57, 0x69, 0x64,
0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x81, 0x03, 0x51, 0x00,
0x00, 0x53, 0x69, 0x7a, 0x47, 0x05, 0x01, 0x43, 0x05, 0x26,
0x69, 0x6e, 0x0e, 0x07, 0xc3, 0x00, 0x00, 0x44, 0x69, 0x66,
0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x98, 0x03, 0x00,
0xb0, 0x04, 0x01, 0x54, 0x00, 0x16, 0x64, 0x1a, 0x00, 0x04,
0x82, 0x05, 0x40, 0x65, 0x6e, 0x65, 0x72, 0xe0, 0x02, 0x03,
0x47, 0x05, 0xf2, 0x00, 0x2e, 0x00, 0x41, 0x74, 0x00, 0x48,
0x61, 0x72, 0x64, 0x00, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0xae,
0x02, 0x20, 0x61, 0x72, 0x56, 0x01, 0x61, 0x71, 0x75, 0x69,
0x72, 0x65, 0x64, 0x62, 0x07, 0x63, 0x6f, 0x00, 0x64, 0x65,
0x64, 0x75, 0x34, 0x01, 0x50, 0x62, 0x61, 0x73, 0x65, 0x64,
0xb6, 0x00, 0x81, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
0x67, 0x98, 0x00, 0x41, 0x72, 0x65, 0x6c, 0x61, 0x20, 0x00,
0x45, 0x68, 0x69, 0x70, 0x73, 0xf1, 0x03, 0x03, 0xa6, 0x00,
0x03, 0x4f, 0x06, 0x00, 0xf3, 0x05, 0x00, 0x22, 0x02, 0x30,
0x77, 0x61, 0x79, 0x23, 0x00, 0x01, 0xcf, 0x06, 0x10, 0x62,
0x4b, 0x02, 0x03, 0x60, 0x00, 0x02, 0xd9, 0x02, 0x55, 0x65,
0x78, 0x61, 0x63, 0x74, 0x11, 0x04, 0x00, 0x5c, 0x00, 0x25,
0x6f, 0x6e, 0x89, 0x03, 0xf0, 0x00, 0x61, 0x74, 0x00, 0x61,
0x00, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x00, 0x28, 0x46, 0x6f,
0x72, 0x2d, 0x00, 0x33, 0x6d, 0x70, 0x6c, 0x66, 0x03, 0x11,
0x6d, 0x2c, 0x01, 0x00, 0x97, 0x00, 0x03, 0xc2, 0x07, 0x25,
0x77, 0x6f, 0x82, 0x00, 0x01, 0xdd, 0x07, 0x04, 0x4c, 0x02,
0x30, 0x73, 0x61, 0x6d, 0x1d, 0x01, 0x12, 0x72, 0xf1, 0x01,
0x55, 0x2c, 0x00, 0x65, 0x76, 0x65, 0x79, 0x03, 0x83, 0x64,
0x6f, 0x6e, 0x27, 0x74, 0x00, 0x79, 0x65, 0x49, 0x00, 0x01,
0x8e, 0x02, 0x01, 0x4e, 0x00, 0x05, 0x30, 0x00, 0x32, 0x00,
0x69, 0x73, 0x13, 0x03, 0x01, 0x8f, 0x06, 0x02, 0x75, 0x00,
0x21, 0x65, 0x6e, 0xca, 0x00, 0x00, 0x41, 0x00, 0x06, 0xce,
0x00, 0x62, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0xe7, 0x00,
0x60, 0x6f, 0x75, 0x74, 0x00, 0x73, 0x74, 0x44, 0x03, 0x11,
0x6f, 0x0b, 0x01, 0x04, 0xc0, 0x01, 0x30, 0x29, 0x00, 0x45,
0x7d, 0x00, 0x1a, 0x61, 0x86, 0x01, 0x91, 0x67, 0x75, 0x65,
0x73, 0x73, 0x77, 0x6f, 0x72, 0x6b, 0x68, 0x00, 0x00, 0x5d,
0x04, 0x32, 0x74, 0x72, 0x61, 0xe1, 0x05, 0x21, 0x73, 0x68,
0x33, 0x07, 0x02, 0x6d, 0x07, 0xe0, 0x62, 0x65, 0x00, 0x6e,
0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x2e, 0x00,
0x2f, 0x62, 0x00, 0x09, 0x5d, 0x00, 0x01, 0xa1, 0x03, 0x50,
0x65, 0x72, 0x65, 0x66, 0x6f, 0x78, 0x04, 0x00, 0x62, 0x00,
0x00, 0x21, 0x03, 0x42, 0x70, 0x6c, 0x61, 0x79, 0x08, 0x03,
0x90, 0x61, 0x6d, 0x65, 0x00, 0x65, 0x6e, 0x74, 0x69, 0x72,
0xf2, 0x02, 0x01, 0x0f, 0x04, 0x34, 0x6f, 0x6e, 0x65, 0x37,
0x01, 0x03, 0x94, 0x00, 0x71, 0x6e, 0x65, 0x65, 0x64, 0x00,
0x74, 0x6f, 0x04, 0x03, 0x13, 0x59, 0x42, 0x00, 0x52, 0x61,
0x6c, 0x73, 0x6f, 0x00, 0x3d, 0x03, 0xc1, 0x65, 0x00, 0x63,
0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x09,
0x03, 0x20, 0x6d, 0x6f, 0x2f, 0x05, 0x55, 0x72, 0x6f, 0x75,
0x6e, 0x64, 0x6d, 0x03, 0x71, 0x2e, 0x00, 0x50, 0x72, 0x65,
0x73, 0x73, 0xa4, 0x01, 0x00, 0xe4, 0x01, 0x50, 0x65, 0x74,
0x75, 0x72, 0x6e, 0xe0, 0x03, 0x20, 0x73, 0x70, 0x0e, 0x02,
0x01, 0x3b, 0x00, 0x0b, 0xb4, 0x02, 0x20, 0x6f, 0x72, 0x25,
0x02, 0xe2, 0x2c, 0x00, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63,
0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x2c, 0x01, 0x01, 0x29,
0x00, 0x43, 0x74, 0x68, 0x65, 0x6e, 0xd4, 0x01, 0x50, 0x74,
0x68, 0x65, 0x6d, 0x00, 0x59, 0x04, 0x5a, 0x62, 0x6f, 0x76,
0x65, 0x2e, 0xa4, 0x00, 0x10, 0x70, 0x77, 0x00, 0x20, 0x00,
0x2f, 0x4e, 0x00, 0x01, 0x7d, 0x01, 0x06, 0x7e, 0x02, 0x00,
0x12, 0x00, 0x0c, 0x5e, 0x00, 0xa1, 0x69, 0x6e, 0x64, 0x65,
0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0xf2, 0x02, 0x20, 0x77,
0x68, 0xe6, 0x04, 0x81, 0x73, 0x00, 0x61, 0x6c, 0x72, 0x65,
0x61, 0x64, 0xee, 0x01, 0x07, 0xf0, 0x00, 0x02, 0x91, 0x01,
0x62, 0x2e, 0x00, 0x42, 0x61, 0x63, 0x6b, 0xc7, 0x00, 0x20,
0x72, 0x65, 0xfc, 0x00, 0x24, 0x73, 0x00, 0x2e, 0x05, 0x06,
0x48, 0x03, 0x0b, 0x33, 0x00, 0x42, 0x00, 0x00, 0x28, 0x41,
0xc4, 0x00, 0x32, 0x00, 0x61, 0x63, 0xcd, 0x05, 0x90, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x66, 0x00,
0x21, 0x73, 0x65, 0x16, 0x00, 0x41, 0x00, 0x32, 0x2e, 0x31,
0xe6, 0x05, 0x01, 0xcb, 0x00, 0xa3, 0x61, 0x76, 0x61, 0x69,
0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x19, 0x04, 0x13, 0x32,
0x19, 0x04, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x1b, 0x04, 0x66, 0x54, 0x68, 0x65, 0x73, 0x65,
0x00, 0x14, 0x00, 0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x06,
0x93, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6f, 0x00, 0x22,
0x6f, 0x6e, 0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0xab, 0x00, 0x91, 0x57, 0x69,
0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x81, 0x03, 0x51,
0x00, 0x00, 0x53, 0x69, 0x7a, 0x49, 0x05, 0x01, 0x45, 0x05,
0x26, 0x69, 0x6e, 0x10, 0x07, 0xc3, 0x00, 0x00, 0x44, 0x69,
0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x98, 0x03,
0x00, 0xb0, 0x04, 0x01, 0x54, 0x00, 0x16, 0x64, 0x1a, 0x00,
0x04, 0x84, 0x05, 0x40, 0x65, 0x6e, 0x65, 0x72, 0xe0, 0x02,
0x03, 0x49, 0x05, 0xf2, 0x00, 0x2e, 0x00, 0x41, 0x74, 0x00,
0x48, 0x61, 0x72, 0x64, 0x00, 0x6c, 0x65, 0x76, 0x65, 0x6c,
0xae, 0x02, 0x20, 0x61, 0x72, 0x56, 0x01, 0x61, 0x71, 0x75,
0x69, 0x72, 0x65, 0x64, 0x64, 0x07, 0x63, 0x6f, 0x00, 0x64,
0x65, 0x64, 0x75, 0x34, 0x01, 0x50, 0x62, 0x61, 0x73, 0x65,
0x64, 0xb6, 0x00, 0x81, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
0x64, 0x67, 0x98, 0x00, 0x41, 0x72, 0x65, 0x6c, 0x61, 0x20,
0x00, 0x45, 0x68, 0x69, 0x70, 0x73, 0xf1, 0x03, 0x03, 0xa6,
0x00, 0x03, 0x51, 0x06, 0x00, 0xf5, 0x05, 0x00, 0x22, 0x02,
0x30, 0x77, 0x61, 0x79, 0x23, 0x00, 0x01, 0xd1, 0x06, 0x10,
0x62, 0x4b, 0x02, 0x03, 0x60, 0x00, 0x02, 0xd9, 0x02, 0x55,
0x65, 0x78, 0x61, 0x63, 0x74, 0x11, 0x04, 0x00, 0x5c, 0x00,
0x25, 0x6f, 0x6e, 0x89, 0x03, 0xf0, 0x00, 0x61, 0x74, 0x00,
0x61, 0x00, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x00, 0x28, 0x46,
0x6f, 0x72, 0x2d, 0x00, 0x33, 0x6d, 0x70, 0x6c, 0x66, 0x03,
0x11, 0x6d, 0x2c, 0x01, 0x00, 0x97, 0x00, 0x03, 0xc4, 0x07,
0x25, 0x77, 0x6f, 0x82, 0x00, 0x01, 0xdf, 0x07, 0x04, 0x4c,
0x02, 0x30, 0x73, 0x61, 0x6d, 0x1d, 0x01, 0x12, 0x72, 0xf1,
0x01, 0x55, 0x2c, 0x00, 0x65, 0x76, 0x65, 0x79, 0x03, 0x83,
0x64, 0x6f, 0x6e, 0x27, 0x74, 0x00, 0x79, 0x65, 0x49, 0x00,
0x01, 0x8e, 0x02, 0x01, 0x4e, 0x00, 0x05, 0x30, 0x00, 0x32,
0x00, 0x69, 0x73, 0x13, 0x03, 0x01, 0x91, 0x06, 0x02, 0x75,
0x00, 0x21, 0x65, 0x6e, 0xca, 0x00, 0x00, 0x41, 0x00, 0x06,
0xce, 0x00, 0x62, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0xe7,
0x00, 0x60, 0x6f, 0x75, 0x74, 0x00, 0x73, 0x74, 0x44, 0x03,
0x11, 0x6f, 0x0b, 0x01, 0x04, 0xc0, 0x01, 0x30, 0x29, 0x00,
0x45, 0x7d, 0x00, 0x1a, 0x61, 0x86, 0x01, 0x91, 0x67, 0x75,
0x65, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x6b, 0x68, 0x00, 0x00,
0x5d, 0x04, 0x32, 0x74, 0x72, 0x61, 0xe1, 0x05, 0x21, 0x73,
0x68, 0x35, 0x07, 0x02, 0x6f, 0x07, 0xd2, 0x62, 0x65, 0x00,
0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x2e,
0xa0, 0x02, 0x13, 0x33, 0xa0, 0x02, 0xf1, 0x00, 0x75, 0x73,
0x65, 0x72, 0x20, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65,
0x6e, 0x63, 0x65, 0xa6, 0x02, 0x11, 0x4f, 0x86, 0x04, 0x10,
0x74, 0x9d, 0x08, 0x12, 0x73, 0xd5, 0x00, 0x80, 0x73, 0x75,
0x70, 0x70, 0x6f, 0x72, 0x74, 0x00, 0x2e, 0x00, 0x17, 0x00,
0x2e, 0x00, 0x12, 0x2c, 0x94, 0x02, 0x16, 0x50, 0x12, 0x00,
0x0d, 0xb0, 0x02, 0x33, 0x47, 0x61, 0x6d, 0xb0, 0x02, 0x02,
0x1c, 0x04, 0x32, 0x6c, 0x65, 0x74, 0xec, 0x04, 0x78, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x67, 0x09, 0x06, 0x98,
0x04, 0x44, 0x6d, 0x6f, 0x75, 0x73, 0xec, 0x04, 0x80, 0x73,
0x00, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x00,
};
const unsigned short help_text_len = 2378;
const unsigned short help_text_words = 444;
const unsigned short help_text_len = 2582;
const unsigned short help_text_words = 474;
const char quick_help_text[] = "Draw a maze of slanting lines that matches the clues.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,382 +6,381 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 360, TEXT_UNDERLINE },
{ 390, TEXT_CENTER | C_RED },
{ 446, TEXT_UNDERLINE },
{ 674, TEXT_CENTER | C_RED },
{ 1059, TEXT_UNDERLINE },
{ 361, TEXT_UNDERLINE },
{ 388, TEXT_CENTER | C_RED },
{ 444, TEXT_UNDERLINE },
{ 672, TEXT_CENTER | C_RED },
{ 1057, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 6263 comp 3635 ratio 0.580393 level 10 saved 2628 */
/* orig 6259 comp 3626 ratio 0.579326 level 10 saved 2633 */
const char help_text[] = {
0xf0, 0x53, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfb, 0x04, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x31, 0x3a, 0x20, 0x53, 0x6f, 0x6c, 0x6f, 0x20, 0x00,
0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65,
0x00, 0x61, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x00,
0x67, 0x72, 0x69, 0x64, 0x2c, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x00, 0x69, 0x73, 0x00, 0x64, 0x69, 0x76, 0x69, 0x64,
0x65, 0x64, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x00, 0x61, 0x73,
0x00, 0x6d, 0x61, 0x6e, 0x79, 0x00, 0x65, 0x71, 0x75, 0x61,
0x6c, 0x6c, 0x79, 0x00, 0x73, 0x69, 0x7a, 0x65, 0x64, 0x00,
0x73, 0x75, 0x62, 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
0x21, 0x00, 0x22, 0x74, 0x68, 0x44, 0x00, 0xf4, 0x00, 0x00,
0x68, 0x61, 0x73, 0x00, 0x72, 0x6f, 0x77, 0x73, 0x2e, 0x00,
0x45, 0x61, 0x63, 0x68, 0x5f, 0x00, 0xc1, 0x6d, 0x75, 0x73,
0x74, 0x00, 0x62, 0x65, 0x00, 0x66, 0x69, 0x6c, 0x6c, 0x57,
0x00, 0xf1, 0x08, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x61,
0x00, 0x64, 0x69, 0x67, 0x69, 0x74, 0x00, 0x66, 0x72, 0x6f,
0x6d, 0x00, 0x31, 0x00, 0x74, 0x6f, 0x48, 0x00, 0x00, 0x60,
0x00, 0x35, 0x00, 0x6f, 0x66, 0x54, 0x00, 0x10, 0x2c, 0x30,
0x00, 0x30, 0x73, 0x75, 0x63, 0x30, 0x00, 0xf0, 0x03, 0x77,
0x61, 0x79, 0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x00, 0x00,
0x2d, 0x00, 0x65, 0x76, 0x65, 0x72, 0x79, 0x6e, 0x00, 0xf1,
0x0d, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73,
0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x00, 0x6f, 0x6e, 0x65, 0x00,
0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x4b,
0x00, 0x10, 0x65, 0x8c, 0x00, 0x02, 0x6c, 0x00, 0x06, 0x39,
0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x3c, 0x00,
0x23, 0x01, 0xfa, 0x00, 0x0f, 0x3b, 0x00, 0x18, 0x11, 0x2e,
0x3c, 0x00, 0x70, 0x28, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x46, 0x01, 0xf2, 0x02, 0x2c, 0x00, 0x62, 0x79, 0x00, 0x64,
0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x00, 0x6f, 0x66, 0x66,
0x29, 0x2d, 0x00, 0x03, 0xf7, 0x00, 0x02, 0x37, 0x01, 0xf0,
0x01, 0x27, 0x73, 0x00, 0x74, 0x77, 0x6f, 0x00, 0x6d, 0x61,
0x69, 0x6e, 0x00, 0x64, 0x69, 0x61, 0x67, 0x3a, 0x00, 0x1f,
0x73, 0x75, 0x00, 0x1c, 0x00, 0xeb, 0x01, 0x01, 0xe1, 0x01,
0x85, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x73, 0x6f, 0x6d, 0x5b,
0x01, 0x61, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0xbe, 0x01,
0xf0, 0x00, 0x63, 0x6c, 0x75, 0x65, 0x73, 0x3b, 0x00, 0x79,
0x6f, 0x75, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x02, 0x02, 0x81,
0x74, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x2b, 0x00,
0x4c, 0x72, 0x65, 0x73, 0x74, 0x37, 0x00, 0x90, 0x63, 0x6f,
0x72, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x66, 0x00, 0x51,
0x55, 0x6e, 0x64, 0x65, 0x72, 0x1f, 0x00, 0x04, 0xd3, 0x00,
0x92, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2c,
0xd0, 0x00, 0x07, 0x2d, 0x02, 0x24, 0x72, 0x65, 0x16, 0x02,
0x30, 0x6f, 0x72, 0x00, 0x43, 0x00, 0xa7, 0x61, 0x6e, 0x67,
0x75, 0x6c, 0x61, 0x72, 0x2e, 0x00, 0x54, 0x40, 0x00, 0x53,
0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x0c, 0x02, 0xf3, 0x05, 0x69,
0x73, 0x00, 0x33, 0x78, 0x33, 0x00, 0x28, 0x61, 0x00, 0x39,
0x78, 0x39, 0x00, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x1a,
0x02, 0x09, 0xa9, 0x02, 0x41, 0x6e, 0x69, 0x6e, 0x65, 0x2a,
0x00, 0x02, 0x6b, 0x00, 0x21, 0x29, 0x2e, 0xfe, 0x00, 0xf1,
0x00, 0x63, 0x61, 0x6e, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00,
0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x00, 0x12, 0x73,
0x80, 0x02, 0x07, 0x7e, 0x00, 0x13, 0x00, 0x9f, 0x00, 0x70,
0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x64, 0xee, 0x00, 0x04,
0xa6, 0x00, 0x43, 0x6e, 0x65, 0x73, 0x2c, 0x80, 0x02, 0x32,
0x73, 0x00, 0x32, 0x89, 0x00, 0x32, 0x36, 0x78, 0x36, 0xf0,
0x02, 0x09, 0x81, 0x00, 0x76, 0x73, 0x69, 0x78, 0x00, 0x33,
0x78, 0x32, 0x80, 0x00, 0xb0, 0x41, 0x6c, 0x74, 0x65, 0x72,
0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0xf3, 0x01, 0x13, 0x79,
0x8f, 0x00, 0x03, 0x8a, 0x00, 0xd1, 0x60, 0x6a, 0x69, 0x67,
0x73, 0x61, 0x77, 0x27, 0x00, 0x6d, 0x6f, 0x64, 0x65, 0xe6,
0x02, 0x02, 0x81, 0x03, 0x0f, 0x32, 0x01, 0x00, 0xe0, 0x61,
0x72, 0x62, 0x69, 0x74, 0x72, 0x61, 0x72, 0x79, 0x00, 0x73,
0x68, 0x61, 0x70, 0xc0, 0x00, 0x21, 0x68, 0x69, 0xe7, 0x01,
0xf1, 0x00, 0x66, 0x66, 0x65, 0x72, 0x00, 0x62, 0x65, 0x74,
0x77, 0x65, 0x65, 0x6e, 0x00, 0x69, 0x6e, 0x8f, 0x00, 0x00,
0x1f, 0x01, 0x02, 0x40, 0x01, 0x10, 0x73, 0x9d, 0x01, 0xf1,
0x02, 0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x00, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x70, 0x00,
0x00, 0x56, 0x01, 0x20, 0x60, 0x6b, 0x90, 0x03, 0xb3, 0x72,
0x27, 0x2e, 0x00, 0x49, 0x6e, 0x00, 0x74, 0x68, 0x69, 0x73,
0x8a, 0x00, 0x01, 0x10, 0x02, 0x01, 0x78, 0x00, 0x33, 0x6e,
0x6f, 0x74, 0x3b, 0x02, 0x21, 0x69, 0x6e, 0x98, 0x00, 0x40,
0x66, 0x6f, 0x72, 0x6d, 0x1d, 0x01, 0x02, 0xca, 0x03, 0x33,
0x2d, 0x69, 0x6e, 0x27, 0x01, 0x24, 0x73, 0x3b, 0x3b, 0x01,
0x16, 0x2c, 0x0d, 0x04, 0x0c, 0x4a, 0x04, 0x91, 0x60, 0x63,
0x61, 0x67, 0x65, 0x73, 0x27, 0x00, 0x62, 0x7d, 0x03, 0x81,
0x6f, 0x75, 0x72, 0x65, 0x64, 0x00, 0x6c, 0x69, 0x60, 0x01,
0x30, 0x61, 0x6e, 0x64, 0x5c, 0x00, 0x02, 0xbe, 0x02, 0x00,
0x27, 0x00, 0x02, 0x46, 0x00, 0x91, 0x61, 0x6d, 0x65, 0x00,
0x74, 0x65, 0x6c, 0x6c, 0x73, 0x3c, 0x01, 0x10, 0x77, 0xfa,
0x03, 0x02, 0x1e, 0x01, 0x01, 0x85, 0x00, 0x32, 0x61, 0x6c,
0x6c, 0x75, 0x02, 0x00, 0xee, 0x02, 0x00, 0xbc, 0x01, 0x02,
0x1c, 0x04, 0x01, 0x3f, 0x00, 0x90, 0x73, 0x68, 0x6f, 0x75,
0x6c, 0x64, 0x00, 0x62, 0x65, 0x86, 0x01, 0x63, 0x73, 0x6f,
0x2c, 0x00, 0x6e, 0x6f, 0xc6, 0x03, 0xe0, 0x6d, 0x61, 0x79,
0x00, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x00, 0x6d, 0x6f,
0x72, 0x69, 0x00, 0x40, 0x61, 0x6e, 0x00, 0x6f, 0x3e, 0x03,
0x00, 0x15, 0x02, 0x41, 0x69, 0x6e, 0x00, 0x61, 0x42, 0x00,
0x31, 0x2c, 0x00, 0x65, 0xf8, 0x00, 0x02, 0xf7, 0x02, 0x01,
0x54, 0x00, 0x62, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0xee,
0x04, 0xa1, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x69,
0x65, 0x73, 0x75, 0x03, 0x30, 0x78, 0x69, 0x73, 0xf0, 0x02,
0x71, 0x00, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x78, 0x01,
0x21, 0x49, 0x66, 0xb5, 0x00, 0x03, 0xed, 0x01, 0x19, 0x61,
0xd3, 0x02, 0x02, 0xbf, 0x01, 0x87, 0x72, 0x65, 0x71, 0x75,
0x69, 0x72, 0x65, 0x73, 0x88, 0x00, 0x13, 0x39, 0xcd, 0x00,
0x02, 0x46, 0x01, 0x42, 0x61, 0x64, 0x64, 0x69, 0x32, 0x04,
0x04, 0xe4, 0x00, 0x40, 0x77, 0x69, 0x6c, 0x6c, 0x4a, 0x05,
0x40, 0x6c, 0x65, 0x74, 0x74, 0x87, 0x03, 0x03, 0x96, 0x03,
0xb0, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74, 0x2e,
0x00, 0x46, 0x45, 0x01, 0x50, 0x78, 0x61, 0x6d, 0x70, 0x6c,
0x53, 0x02, 0x09, 0x83, 0x00, 0x30, 0x33, 0x78, 0x34, 0x2d,
0x00, 0x18, 0x6e, 0x34, 0x01, 0x02, 0x89, 0x00, 0x20, 0x67,
0x6f, 0x3d, 0x01, 0x01, 0x00, 0x04, 0x01, 0xb9, 0x01, 0x04,
0x66, 0x00, 0x01, 0x94, 0x05, 0xf1, 0x01, 0x39, 0x2c, 0x00,
0x70, 0x6c, 0x75, 0x73, 0x00, 0x60, 0x61, 0x27, 0x2c, 0x00,
0x60, 0x62, 0x27, 0xac, 0x01, 0x30, 0x60, 0x63, 0x27, 0xb1,
0x03, 0x20, 0x69, 0x73, 0xd1, 0x02, 0x21, 0x6e, 0x6f, 0xde,
0x05, 0x02, 0x67, 0x00, 0x12, 0x65, 0xc9, 0x01, 0x02, 0x5b,
0x02, 0x08, 0x88, 0x02, 0xb2, 0x49, 0x00, 0x66, 0x69, 0x72,
0x73, 0x74, 0x00, 0x73, 0x61, 0x77, 0x6d, 0x02, 0x03, 0x11,
0x01, 0xf2, 0x0d, 0x69, 0x6e, 0x00, 0x4e, 0x69, 0x6b, 0x6f,
0x6c, 0x69, 0x00, 0x5b, 0x35, 0x5d, 0x2c, 0x00, 0x61, 0x6c,
0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x00, 0x69, 0x74, 0x27,
0x73, 0xba, 0x03, 0x10, 0x62, 0xdd, 0x02, 0x30, 0x70, 0x6f,
0x70, 0xa9, 0x03, 0x40, 0x69, 0x73, 0x65, 0x64, 0x41, 0x02,
0xf0, 0x00, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x00,
0x6e, 0x65, 0x77, 0x73, 0x70, 0x61, 0x70, 0x0c, 0x01, 0x15,
0x75, 0x86, 0x04, 0x10, 0x6e, 0x38, 0x02, 0x80, 0x60, 0x53,
0x75, 0x64, 0x6f, 0x6b, 0x75, 0x27, 0x68, 0x04, 0x50, 0x60,
0x53, 0x75, 0x00, 0x44, 0x0d, 0x00, 0xf1, 0x01, 0x2e, 0x00,
0x48, 0x6f, 0x77, 0x61, 0x72, 0x64, 0x00, 0x47, 0x61, 0x72,
0x6e, 0x73, 0x00, 0x69, 0x50, 0x05, 0x40, 0x73, 0x69, 0x64,
0x65, 0x8c, 0x02, 0x20, 0x74, 0x68, 0x8e, 0x00, 0x64, 0x76,
0x65, 0x6e, 0x74, 0x6f, 0x72, 0x5a, 0x01, 0x00, 0x12, 0x03,
0x25, 0x72, 0x6e, 0xf8, 0x02, 0x00, 0x13, 0x00, 0x02, 0xb8,
0x00, 0x02, 0xb4, 0x02, 0x63, 0x69, 0x74, 0x00, 0x77, 0x61,
0x73, 0xda, 0x00, 0x72, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73,
0x68, 0xe2, 0x06, 0xd2, 0x44, 0x65, 0x6c, 0x6c, 0x20, 0x50,
0x65, 0x6e, 0x63, 0x69, 0x6c, 0x20, 0x50, 0x06, 0x01, 0xd0,
0x20, 0x61, 0x6e, 0x64, 0x20, 0x57, 0x6f, 0x72, 0x64, 0x20,
0x47, 0x61, 0x6d, 0x15, 0x01, 0x12, 0x41, 0xfa, 0x01, 0xf5,
0x03, 0x65, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x65,
0x00, 0x74, 0x72, 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x6f,
0x05, 0x7a, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x7b,
0x00, 0x01, 0x45, 0x04, 0x00, 0x4f, 0x07, 0x00, 0x84, 0x02,
0xf0, 0x02, 0x00, 0x6f, 0x6e, 0x00, 0x57, 0x69, 0x6b, 0x69,
0x70, 0x65, 0x64, 0x69, 0x61, 0x00, 0x5b, 0x36, 0x5d, 0x6c,
0x01, 0xf1, 0x01, 0x5b, 0x35, 0x5d, 0x00, 0x68, 0x74, 0x74,
0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x60,
0x01, 0xa3, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65,
0x6e, 0x2f, 0x96, 0x01, 0x21, 0x2f, 0x73, 0x22, 0x01, 0xc1,
0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x00, 0x28, 0x62, 0x65, 0x77,
0x61, 0x72, 0x1f, 0x06, 0x60, 0x46, 0x6c, 0x61, 0x73, 0x68,
0x29, 0x47, 0x00, 0x15, 0x36, 0x47, 0x00, 0x44, 0x65, 0x6e,
0x2e, 0x77, 0x66, 0x00, 0x50, 0x2e, 0x6f, 0x72, 0x67, 0x2f,
0x0e, 0x00, 0x12, 0x2f, 0x63, 0x01, 0x72, 0x00, 0x00, 0x00,
0x31, 0x31, 0x2e, 0x31, 0x60, 0x08, 0x00, 0xa0, 0x06, 0x40,
0x72, 0x6f, 0x6c, 0x73, 0x69, 0x08, 0x11, 0x54, 0x46, 0x06,
0x20, 0x79, 0x00, 0x19, 0x00, 0xe3, 0x2c, 0x00, 0x73, 0x69,
0x6d, 0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0x5c, 0x01, 0x21, 0x75, 0x73, 0x00, 0x02, 0x01, 0x5f, 0x08,
0x44, 0x6d, 0x70, 0x74, 0x79, 0x75, 0x05, 0x00, 0x5b, 0x01,
0x02, 0xab, 0x02, 0x35, 0x79, 0x70, 0x65, 0x28, 0x08, 0x23,
0x6f, 0x72, 0xf8, 0x02, 0x22, 0x00, 0x6f, 0xc5, 0x02, 0x50,
0x6b, 0x65, 0x79, 0x62, 0x6f, 0xce, 0x01, 0x21, 0x74, 0x6f,
0x92, 0x04, 0x02, 0x00, 0x04, 0x02, 0x44, 0x00, 0x14, 0x2e,
0x81, 0x03, 0x30, 0x6d, 0x61, 0x6b, 0x43, 0x00, 0x8f, 0x6d,
0x69, 0x73, 0x74, 0x61, 0x6b, 0x65, 0x2c, 0x80, 0x00, 0x01,
0x02, 0xf9, 0x01, 0x03, 0xd3, 0x06, 0x08, 0x84, 0x00, 0x81,
0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x53, 0x70, 0x0a, 0x07,
0x40, 0x6f, 0x00, 0x63, 0x6c, 0x36, 0x04, 0x50, 0x69, 0x74,
0x00, 0x61, 0x67, 0x95, 0x07, 0x62, 0x28, 0x6f, 0x72, 0x00,
0x75, 0x73, 0xab, 0x04, 0xd7, 0x55, 0x6e, 0x64, 0x6f, 0x00,
0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x29, 0xff, 0x03,
0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x74, 0x00, 0x01,
0x5c, 0x04, 0x0f, 0xe2, 0x00, 0x04, 0x02, 0x58, 0x07, 0x12,
0x2c, 0xc2, 0x00, 0x02, 0x0d, 0x00, 0x05, 0x87, 0x03, 0x52,
0x65, 0x6e, 0x74, 0x65, 0x72, 0x56, 0x02, 0x06, 0x1e, 0x08,
0x00, 0x8e, 0x06, 0x41, 0x61, 0x00, 0x60, 0x70, 0x62, 0x02,
0x66, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x27, 0xf1, 0x06, 0x01,
0xde, 0x09, 0x07, 0x1b, 0x00, 0x11, 0x73, 0x94, 0x03, 0x76,
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0xc5, 0x07, 0x04,
0x51, 0x00, 0x00, 0x2f, 0x03, 0x04, 0x36, 0x01, 0x12, 0x53,
0xd0, 0x05, 0x04, 0x68, 0x08, 0x00, 0xd5, 0x04, 0x06, 0xed,
0x05, 0x05, 0xfe, 0x07, 0x02, 0xf5, 0x03, 0x01, 0x9e, 0x03,
0x03, 0x29, 0x00, 0x09, 0x6f, 0x00, 0x10, 0x2e, 0xfd, 0x01,
0x04, 0xc1, 0x05, 0x40, 0x70, 0x61, 0x79, 0x73, 0x7f, 0x05,
0x50, 0x61, 0x74, 0x74, 0x65, 0x6e, 0xcf, 0x04, 0x01, 0x5e,
0x08, 0x07, 0x2e, 0x00, 0x40, 0x2c, 0x00, 0x73, 0x6f, 0xb5,
0x04, 0x00, 0x4f, 0x08, 0x02, 0xe5, 0x05, 0x00, 0x3a, 0x01,
0x03, 0x5a, 0x01, 0x11, 0x6d, 0xbb, 0x00, 0x50, 0x69, 0x73,
0x00, 0x75, 0x70, 0x38, 0x00, 0x45, 0x79, 0x6f, 0x75, 0x3a,
0x49, 0x07, 0x05, 0x23, 0x00, 0x00, 0x76, 0x0a, 0x30, 0x65,
0x6d, 0x69, 0x01, 0x04, 0x12, 0x73, 0x43, 0x01, 0x81, 0x61,
0x00, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0xdd, 0x07, 0x03,
0x32, 0x01, 0x41, 0x6e, 0x65, 0x65, 0x64, 0xdb, 0x08, 0x10,
0x62, 0xd4, 0x08, 0x10, 0x2d, 0x27, 0x05, 0x42, 0x69, 0x6e,
0x65, 0x64, 0xfd, 0x05, 0x00, 0x54, 0x00, 0x42, 0x6b, 0x6e,
0x6f, 0x77, 0x93, 0x03, 0x4b, 0x61, 0x62, 0x6f, 0x75, 0x45,
0x00, 0x04, 0xa2, 0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00, 0x02,
0x55, 0x6c, 0x69, 0x73, 0x74, 0x73, 0xa8, 0x03, 0x5a, 0x6f,
0x73, 0x73, 0x69, 0x62, 0x6a, 0x01, 0x14, 0x61, 0x85, 0x09,
0x01, 0x8d, 0x00, 0x01, 0x48, 0x00, 0x50, 0x61, 0x6e, 0x79,
0x74, 0x68, 0x62, 0x01, 0x32, 0x65, 0x6c, 0x73, 0x82, 0x00,
0xa2, 0x66, 0x65, 0x65, 0x6c, 0x00, 0x6c, 0x69, 0x6b, 0x65,
0x2e, 0x3f, 0x03, 0x41, 0x65, 0x72, 0x61, 0x73, 0xa8, 0x0b,
0x49, 0x69, 0x6e, 0x67, 0x6c, 0xd3, 0x01, 0x1c, 0x2c, 0x5b,
0x02, 0x08, 0x1b, 0x02, 0x22, 0x6e, 0x64, 0x58, 0x02, 0x05,
0xde, 0x01, 0x03, 0x52, 0x02, 0x01, 0xb8, 0x02, 0x01, 0x15,
0x08, 0x2a, 0x6c, 0x6c, 0x20, 0x02, 0x09, 0x9c, 0x02, 0x22,
0x72, 0x65, 0x79, 0x00, 0x30, 0x64, 0x00, 0x77, 0xa3, 0x02,
0x00, 0x99, 0x00, 0x34, 0x6c, 0x65, 0x66, 0x6c, 0x00, 0x05,
0x5e, 0x00, 0x18, 0x61, 0x14, 0x01, 0x0f, 0x2a, 0x00, 0x05,
0x02, 0x43, 0x03, 0x10, 0x73, 0x43, 0x03, 0x36, 0x2e, 0x00,
0x52, 0xb3, 0x00, 0x00, 0xf7, 0x00, 0x05, 0x20, 0x00, 0x00,
0x0d, 0x00, 0x01, 0x23, 0x00, 0x02, 0xf4, 0x02, 0x01, 0x58,
0x02, 0x02, 0xfb, 0x00, 0x0c, 0x56, 0x02, 0x0b, 0x53, 0x09,
0x04, 0x7f, 0x03, 0x60, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
0x11, 0x04, 0x01, 0xe1, 0x01, 0x32, 0x6d, 0x6f, 0x76, 0x18,
0x00, 0x00, 0x38, 0x00, 0x31, 0x00, 0x61, 0x72, 0x29, 0x05,
0x04, 0x98, 0x08, 0x34, 0x2e, 0x00, 0x50, 0x74, 0x00, 0x02,
0xde, 0x0a, 0x40, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x00, 0x86,
0x00, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x73, 0x3a, 0x00,
0x11, 0x28, 0x9b, 0x0c, 0x82, 0x61, 0x00, 0x6e, 0x6f, 0x72,
0x6d, 0x61, 0x6c, 0x14, 0x00, 0x00, 0x13, 0x0d, 0x08, 0x97,
0x00, 0x24, 0x29, 0x2c, 0x12, 0x01, 0x01, 0xd3, 0x00, 0x04,
0x6b, 0x01, 0x20, 0x69, 0x6e, 0xb5, 0x02, 0x0f, 0xbb, 0x03,
0x03, 0x03, 0x0e, 0x00, 0x80, 0x61, 0x70, 0x70, 0x72, 0x6f,
0x70, 0x72, 0x69, 0xfa, 0x05, 0x44, 0x77, 0x61, 0x79, 0x3b,
0x44, 0x00, 0x01, 0x8c, 0x01, 0x21, 0x30, 0x00, 0x5e, 0x04,
0x04, 0xa6, 0x00, 0x02, 0x1e, 0x01, 0x23, 0x62, 0x61, 0x16,
0x04, 0x02, 0x8a, 0x04, 0x14, 0x61, 0x52, 0x0d, 0x04, 0xbd,
0x03, 0x43, 0x00, 0x00, 0x28, 0x41, 0x15, 0x09, 0x30, 0x61,
0x63, 0x74, 0x8a, 0x08, 0x82, 0x00, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x84, 0x00, 0x31, 0x73, 0x65, 0x63, 0x81,
0x03, 0x32, 0x32, 0x2e, 0x31, 0x58, 0x0a, 0x00, 0x69, 0x01,
0x05, 0x19, 0x0a, 0x22, 0x2e, 0x29, 0xca, 0x05, 0x12, 0x32,
0xca, 0x05, 0x60, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x67,
0x08, 0x00, 0xcc, 0x05, 0x00, 0x13, 0x00, 0x00, 0x72, 0x09,
0x22, 0x6f, 0x77, 0x8d, 0x09, 0x11, 0x74, 0xfa, 0x03, 0x40,
0x66, 0x69, 0x67, 0x75, 0xbc, 0x08, 0x10, 0x77, 0x60, 0x0b,
0x00, 0x31, 0x00, 0x10, 0x74, 0x5b, 0x08, 0x41, 0x6d, 0x65,
0x6e, 0x73, 0x7d, 0x00, 0x0a, 0xb7, 0x06, 0x01, 0x5c, 0x08,
0x03, 0xbb, 0x05, 0xc7, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0x3a, 0x59, 0x0c, 0x00, 0x32,
0x00, 0x02, 0x99, 0x0d, 0x03, 0x15, 0x0a, 0x0a, 0x1b, 0x00,
0x00, 0x5b, 0x0e, 0x12, 0x2c, 0x4d, 0x0a, 0x06, 0x2c, 0x0b,
0x01, 0x21, 0x0d, 0x0b, 0x71, 0x0a, 0x47, 0x2e, 0x00, 0x28,
0x54, 0x4c, 0x0e, 0x13, 0x61, 0xb2, 0x0d, 0x25, 0x69, 0x73,
0xe5, 0x07, 0x23, 0x72, 0x73, 0x0b, 0x0d, 0x5f, 0x69, 0x73,
0x3a, 0x00, 0x66, 0x36, 0x09, 0x07, 0x14, 0x32, 0x90, 0x00,
0x01, 0x8f, 0x00, 0x13, 0x33, 0x83, 0x00, 0x01, 0xa8, 0x0a,
0x03, 0x8b, 0x0c, 0x02, 0x5b, 0x00, 0x01, 0x97, 0x01, 0x01,
0x78, 0x05, 0x19, 0x33, 0x32, 0x00, 0x12, 0x32, 0x10, 0x0f,
0x16, 0x29, 0x13, 0x06, 0x14, 0x74, 0x80, 0x06, 0xd2, 0x60,
0x58, 0x27, 0x00, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x62, 0x6f,
0x78, 0x2c, 0x61, 0x01, 0x02, 0xff, 0x02, 0x10, 0x70, 0x28,
0x07, 0x00, 0x22, 0x00, 0x04, 0x31, 0x0e, 0x61, 0x00, 0x65,
0x78, 0x74, 0x72, 0x61, 0xac, 0x08, 0x50, 0x74, 0x72, 0x61,
0x69, 0x6e, 0x07, 0x0b, 0x03, 0x0c, 0x0b, 0x0e, 0x23, 0x0e,
0x08, 0x3d, 0x0f, 0x0a, 0xa3, 0x05, 0x01, 0x2e, 0x0e, 0x13,
0x66, 0xc4, 0x0e, 0x03, 0x24, 0x0e, 0x11, 0x28, 0xc6, 0x09,
0x21, 0x69, 0x73, 0x1d, 0x0e, 0x51, 0x74, 0x69, 0x6d, 0x65,
0x73, 0x07, 0x05, 0x10, 0x6e, 0xd4, 0x04, 0x03, 0x43, 0x09,
0x30, 0x2d, 0x58, 0x27, 0x3d, 0x02, 0x06, 0x6b, 0x09, 0x2b,
0x2e, 0x29, 0x32, 0x0c, 0x06, 0xdc, 0x02, 0x00, 0x98, 0x0e,
0x0f, 0x98, 0x00, 0x05, 0x04, 0xd0, 0x06, 0x40, 0x73, 0x68,
0x61, 0x64, 0xb5, 0x02, 0x10, 0x6c, 0x0e, 0x04, 0x00, 0x52,
0x10, 0x12, 0x6f, 0xcf, 0x00, 0x05, 0x83, 0x05, 0x01, 0xfb,
0x09, 0x20, 0x65, 0x6e, 0x94, 0x02, 0x2f, 0x64, 0x2e, 0x39,
0x01, 0x01, 0x13, 0x4a, 0x3a, 0x0d, 0x0f, 0x3e, 0x01, 0x01,
0x41, 0x67, 0x65, 0x6e, 0x65, 0x88, 0x02, 0x73, 0x72, 0x61,
0x6e, 0x64, 0x6f, 0x6d, 0x6c, 0x34, 0x0d, 0x08, 0xb3, 0x10,
0x1e, 0x2e, 0xbf, 0x00, 0x08, 0x58, 0x0e, 0x03, 0xa4, 0x0b,
0x03, 0xae, 0x00, 0x00, 0x36, 0x08, 0x13, 0x6e, 0x36, 0x06,
0x01, 0xcd, 0x02, 0x5d, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x11,
0x0f, 0x0b, 0xea, 0x03, 0x22, 0x60, 0x43, 0x04, 0x02, 0x03,
0x2f, 0x0b, 0x30, 0x52, 0x6f, 0x77, 0xf9, 0x0c, 0x41, 0x6f,
0x78, 0x65, 0x73, 0xe9, 0x0e, 0x00, 0x05, 0x04, 0x01, 0x15,
0x07, 0x50, 0x72, 0x65, 0x61, 0x73, 0x6f, 0xfa, 0x0d, 0x34,
0x79, 0x00, 0x79, 0x97, 0x11, 0x22, 0x74, 0x6f, 0x4e, 0x00,
0x06, 0x4d, 0x04, 0x10, 0x67, 0x18, 0x0a, 0x22, 0x65, 0x72,
0x24, 0x0c, 0x10, 0x31, 0x64, 0x00, 0x42, 0x62, 0x6f, 0x74,
0x68, 0x50, 0x00, 0x22, 0x3b, 0x00, 0x0e, 0x01, 0x02, 0xd7,
0x0d, 0x21, 0x68, 0x61, 0x57, 0x00, 0x07, 0x2a, 0x02, 0x03,
0x90, 0x01, 0x05, 0xd9, 0x00, 0x05, 0xb9, 0x0a, 0x00, 0xc2,
0x06, 0x01, 0xe4, 0x0c, 0x20, 0x62, 0x65, 0xd2, 0x04, 0x26,
0x72, 0x69, 0x28, 0x06, 0x2a, 0x69, 0x66, 0x8e, 0x06, 0x3f,
0x00, 0x69, 0x74, 0x88, 0x01, 0x02, 0x12, 0x4b, 0x41, 0x0e,
0x0f, 0x88, 0x01, 0x0b, 0x10, 0x61, 0x0e, 0x10, 0x00, 0x2f,
0x01, 0x00, 0xdc, 0x03, 0x00, 0x02, 0x0e, 0x04, 0x6a, 0x12,
0x2e, 0x61, 0x72, 0xa5, 0x01, 0x00, 0x9c, 0x00, 0x41, 0x64,
0x72, 0x61, 0x77, 0x72, 0x0e, 0x00, 0x99, 0x0d, 0x20, 0x75,
0x74, 0x23, 0x0e, 0x02, 0xc5, 0x03, 0x02, 0xf0, 0x0e, 0x00,
0x1f, 0x0b, 0x02, 0x40, 0x0e, 0x03, 0x66, 0x12, 0x02, 0x8a,
0x01, 0x24, 0x73, 0x65, 0x7e, 0x0d, 0x06, 0x24, 0x11, 0x51,
0x61, 0x00, 0x73, 0x6d, 0x61, 0x89, 0x0c, 0x00, 0xd4, 0x0e,
0x03, 0x77, 0x00, 0x20, 0x73, 0x68, 0xc4, 0x04, 0x05, 0x05,
0x0d, 0x0c, 0x4e, 0x0e, 0x04, 0xc8, 0x02, 0x13, 0x69, 0x23,
0x02, 0x02, 0x55, 0x00, 0x04, 0x4d, 0x11, 0x05, 0x4f, 0x10,
0x07, 0xfd, 0x04, 0x22, 0x68, 0x65, 0x10, 0x07, 0x00, 0x35,
0x10, 0x71, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x65,
0x00, 0x05, 0x36, 0x0f, 0x04, 0x0b, 0x01, 0x16, 0x64, 0x10,
0x0d, 0x10, 0x4d, 0x66, 0x08, 0x05, 0x2e, 0x00, 0x00, 0xa4,
0x0a, 0x17, 0x73, 0x2b, 0x05, 0x60, 0x73, 0x00, 0x6c, 0x6f,
0x6f, 0x6b, 0x1c, 0x07, 0x30, 0x74, 0x74, 0x69, 0xe2, 0x0f,
0x13, 0x75, 0xb8, 0x0e, 0x00, 0x7a, 0x00, 0x01, 0xd1, 0x0a,
0x01, 0x77, 0x08, 0x60, 0x65, 0x61, 0x73, 0x69, 0x65, 0x72,
0x5a, 0x0b, 0x13, 0x6e, 0xab, 0x11, 0x05, 0x52, 0x00, 0x06,
0x01, 0x02, 0x01, 0xae, 0x09, 0x00, 0xe2, 0x04, 0x22, 0x63,
0x65, 0xdc, 0x08, 0x02, 0xdf, 0x0f, 0x01, 0x4b, 0x02, 0x60,
0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x58, 0x10, 0x02, 0xe0,
0x02, 0x00, 0x8d, 0x07, 0x70, 0x65, 0x6e, 0x74, 0x2e, 0x00,
0x43, 0x6f, 0x0c, 0x05, 0x63, 0x74, 0x65, 0x6c, 0x79, 0x00,
0x61, 0x54, 0x00, 0x25, 0x69, 0x63, 0x9d, 0x00, 0x02, 0xa6,
0x02, 0x00, 0x0f, 0x10, 0x86, 0x72, 0x65, 0x65, 0x64, 0x6f,
0x6d, 0x00, 0x74, 0x64, 0x04, 0x00, 0x0e, 0x0d, 0x24, 0x65,
0x77, 0x44, 0x10, 0x15, 0x73, 0x0b, 0x09, 0x00, 0x41, 0x01,
0x23, 0x46, 0x69, 0xfd, 0x12, 0x04, 0x41, 0x09, 0x0a, 0x45,
0x01, 0x00, 0xdf, 0x01, 0x00, 0x6d, 0x09, 0x15, 0x74, 0xf0,
0x0c, 0x0f, 0x39, 0x01, 0x00, 0x16, 0x44, 0x25, 0x00, 0x52,
0x6c, 0x65, 0x76, 0x65, 0x6c, 0xa9, 0x10, 0x42, 0x6a, 0x75,
0x64, 0x67, 0x19, 0x0e, 0x01, 0x0e, 0x08, 0x01, 0xbe, 0x00,
0x26, 0x78, 0x69, 0x49, 0x00, 0x82, 0x74, 0x65, 0x63, 0x68,
0x6e, 0x69, 0x71, 0x75, 0xaf, 0x0f, 0x42, 0x64, 0x65, 0x64,
0x75, 0x09, 0x07, 0x03, 0x83, 0x0f, 0x01, 0x42, 0x0c, 0x57,
0x73, 0x6f, 0x6c, 0x76, 0x65, 0x85, 0x01, 0x12, 0x3a, 0xe6,
0x05, 0x01, 0x66, 0x00, 0x06, 0xac, 0x0f, 0x12, 0x61, 0x68,
0x03, 0x23, 0x6f, 0x66, 0xbb, 0x03, 0x00, 0xa1, 0x07, 0x02,
0x58, 0x02, 0x11, 0x77, 0x7b, 0x03, 0x17, 0x74, 0x55, 0x01,
0x23, 0x69, 0x6e, 0x32, 0x04, 0x21, 0x65, 0x76, 0xad, 0x0e,
0x31, 0x6f, 0x6e, 0x65, 0x7b, 0x04, 0x06, 0x56, 0x0a, 0x10,
0x2c, 0x9f, 0x03, 0x1d, 0x64, 0xd3, 0x00, 0x83, 0x60, 0x54,
0x72, 0x69, 0x76, 0x69, 0x61, 0x6c, 0x3e, 0x04, 0x70, 0x42,
0x61, 0x73, 0x69, 0x63, 0x27, 0x00, 0xc7, 0x11, 0x06, 0x98,
0x04, 0x05, 0xaf, 0x09, 0x04, 0x4d, 0x01, 0x01, 0x02, 0x0d,
0x06, 0x5c, 0x15, 0x03, 0x33, 0x0a, 0x04, 0xfa, 0x09, 0x12,
0x74, 0xe1, 0x02, 0x22, 0x69, 0x6d, 0x80, 0x03, 0x10, 0x65,
0xbe, 0x00, 0x00, 0x16, 0x00, 0x20, 0x60, 0x49, 0x6b, 0x04,
0x30, 0x6d, 0x65, 0x64, 0x87, 0x08, 0x13, 0x27, 0xee, 0x00,
0x20, 0x61, 0x6e, 0x3b, 0x11, 0x42, 0x79, 0x6f, 0x6e, 0x64,
0x79, 0x11, 0x05, 0xdc, 0x06, 0x13, 0x74, 0x7f, 0x02, 0x01,
0xc2, 0x00, 0x26, 0x61, 0x6c, 0x4a, 0x01, 0x13, 0x73, 0x33,
0x0b, 0x01, 0x85, 0x02, 0x02, 0xef, 0x03, 0x04, 0x49, 0x03,
0x05, 0xc6, 0x04, 0x13, 0x63, 0x93, 0x11, 0x13, 0x00, 0x3c,
0x0d, 0x07, 0x2c, 0x00, 0x04, 0x46, 0x05, 0x02, 0xc1, 0x11,
0x07, 0x28, 0x00, 0x04, 0xe6, 0x00, 0x00, 0x4e, 0x13, 0x52,
0x74, 0x00, 0x60, 0x55, 0x6e, 0x76, 0x01, 0x00, 0x1b, 0x06,
0x03, 0xad, 0x00, 0x03, 0xa9, 0x11, 0x13, 0x74, 0xc7, 0x06,
0x00, 0x82, 0x01, 0x20, 0x65, 0x6e, 0x42, 0x10, 0x02, 0xe9,
0x04, 0x05, 0xc0, 0x00, 0x10, 0x65, 0xd9, 0x0f, 0x02, 0xc3,
0x16, 0x09, 0xcb, 0x00, 0x86, 0x61, 0x00, 0x67, 0x75, 0x65,
0x73, 0x73, 0x2c, 0x93, 0x0d, 0x70, 0x62, 0x61, 0x63, 0x6b,
0x74, 0x72, 0x61, 0x30, 0x08, 0x10, 0x66, 0x29, 0x05, 0x00,
0x20, 0x0a, 0x10, 0x73, 0x8a, 0x04, 0x03, 0x26, 0x03, 0x50,
0x77, 0x72, 0x6f, 0x6e, 0x67, 0xd0, 0x02, 0x12, 0x47, 0x9f,
0x02, 0x00, 0x03, 0x02, 0x05, 0xc4, 0x01, 0x05, 0x25, 0x03,
0x00, 0x8f, 0x00, 0x56, 0x74, 0x73, 0x65, 0x6c, 0x66, 0x1c,
0x00, 0x1b, 0x3a, 0x5c, 0x08, 0x03, 0x90, 0x07, 0x02, 0xe9,
0x0f, 0x10, 0x67, 0xa5, 0x13, 0x0d, 0x0b, 0x02, 0x03, 0x52,
0x05, 0x2b, 0x6d, 0x61, 0xb6, 0x00, 0x01, 0x93, 0x17, 0x00,
0x52, 0x0d, 0x31, 0x6d, 0x70, 0x74, 0xc8, 0x01, 0x16, 0x67,
0x8c, 0x00, 0x05, 0x6c, 0x12, 0x30, 0x62, 0x65, 0x66, 0xf1,
0x03, 0x00, 0x63, 0x17, 0x41, 0x69, 0x6e, 0x64, 0x73, 0x70,
0x00, 0x10, 0x68, 0x30, 0x0f, 0x02, 0x21, 0x01, 0x22, 0x00,
0x66, 0xcc, 0x0c, 0x31, 0x2e, 0x00, 0x42, 0xa5, 0x02, 0x23,
0x70, 0x61, 0x0a, 0x03, 0xc1, 0x77, 0x61, 0x69, 0x74, 0x2c,
0x00, 0x65, 0x73, 0x70, 0x65, 0x63, 0x69, 0x31, 0x01, 0x26,
0x69, 0x66, 0x9e, 0x06, 0x0a, 0xfe, 0x04, 0x95, 0x64, 0x00,
0x61, 0x00, 0x6c, 0x61, 0x72, 0x67, 0x65, 0xe0, 0x12, 0x50,
0x69, 0x7a, 0x65, 0x2e, 0x00,
0x2d, 0x01, 0x00, 0xf0, 0x42, 0x00, 0x00, 0x00, 0x59, 0x6f,
0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x73,
0x71, 0x75, 0x61, 0x72, 0x65, 0x00, 0x67, 0x72, 0x69, 0x64,
0x2c, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x69, 0x73,
0x00, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x64, 0x00, 0x69,
0x6e, 0x74, 0x6f, 0x00, 0x61, 0x73, 0x00, 0x6d, 0x61, 0x6e,
0x79, 0x00, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x00,
0x73, 0x69, 0x7a, 0x65, 0x64, 0x00, 0x73, 0x75, 0x62, 0x2d,
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x21, 0x00, 0x22, 0x74,
0x68, 0x44, 0x00, 0xf4, 0x00, 0x00, 0x68, 0x61, 0x73, 0x00,
0x72, 0x6f, 0x77, 0x73, 0x2e, 0x00, 0x45, 0x61, 0x63, 0x68,
0x5f, 0x00, 0xc1, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x62, 0x65,
0x00, 0x66, 0x69, 0x6c, 0x6c, 0x57, 0x00, 0xf1, 0x08, 0x00,
0x77, 0x69, 0x74, 0x68, 0x00, 0x61, 0x00, 0x64, 0x69, 0x67,
0x69, 0x74, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x31, 0x00,
0x74, 0x6f, 0x48, 0x00, 0x00, 0x60, 0x00, 0x35, 0x00, 0x6f,
0x66, 0x54, 0x00, 0x10, 0x2c, 0x30, 0x00, 0x30, 0x73, 0x75,
0x63, 0x30, 0x00, 0xf0, 0x03, 0x77, 0x61, 0x79, 0x00, 0x74,
0x68, 0x61, 0x74, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x65, 0x76,
0x65, 0x72, 0x79, 0x6e, 0x00, 0xf1, 0x0d, 0x00, 0x63, 0x6f,
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x00, 0x6f, 0x6e, 0x6c,
0x79, 0x00, 0x6f, 0x6e, 0x65, 0x00, 0x6f, 0x63, 0x63, 0x75,
0x72, 0x72, 0x65, 0x6e, 0x63, 0x4b, 0x00, 0x10, 0x65, 0x8c,
0x00, 0x02, 0x6c, 0x00, 0x06, 0x39, 0x00, 0x6f, 0x63, 0x6f,
0x6c, 0x75, 0x6d, 0x6e, 0x3c, 0x00, 0x23, 0x01, 0xfa, 0x00,
0x0f, 0x3b, 0x00, 0x18, 0x11, 0x2e, 0x3c, 0x00, 0x70, 0x28,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x01, 0xf2, 0x02,
0x2c, 0x00, 0x62, 0x79, 0x00, 0x64, 0x65, 0x66, 0x61, 0x75,
0x6c, 0x74, 0x00, 0x6f, 0x66, 0x66, 0x29, 0x2d, 0x00, 0x03,
0xf7, 0x00, 0x02, 0x37, 0x01, 0xf0, 0x01, 0x27, 0x73, 0x00,
0x74, 0x77, 0x6f, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x64,
0x69, 0x61, 0x67, 0x3a, 0x00, 0x1f, 0x73, 0x75, 0x00, 0x1c,
0x00, 0xeb, 0x01, 0x01, 0xe1, 0x01, 0x85, 0x69, 0x76, 0x65,
0x6e, 0x00, 0x73, 0x6f, 0x6d, 0x5b, 0x01, 0x61, 0x6e, 0x75,
0x6d, 0x62, 0x65, 0x72, 0xbe, 0x01, 0xf0, 0x00, 0x63, 0x6c,
0x75, 0x65, 0x73, 0x3b, 0x00, 0x79, 0x6f, 0x75, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x02, 0x02, 0x81, 0x74, 0x6f, 0x00, 0x70,
0x6c, 0x61, 0x63, 0x65, 0x2b, 0x00, 0x4c, 0x72, 0x65, 0x73,
0x74, 0x37, 0x00, 0x90, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63,
0x74, 0x6c, 0x79, 0x66, 0x00, 0x51, 0x55, 0x6e, 0x64, 0x65,
0x72, 0x1f, 0x00, 0x04, 0xd3, 0x00, 0x92, 0x73, 0x65, 0x74,
0x74, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0xd0, 0x00, 0x07, 0x2d,
0x02, 0x24, 0x72, 0x65, 0x16, 0x02, 0x30, 0x6f, 0x72, 0x00,
0x43, 0x00, 0xa7, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72,
0x2e, 0x00, 0x54, 0x40, 0x00, 0x53, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x0c, 0x02, 0xf3, 0x05, 0x69, 0x73, 0x00, 0x33, 0x78,
0x33, 0x00, 0x28, 0x61, 0x00, 0x39, 0x78, 0x39, 0x00, 0x61,
0x63, 0x74, 0x75, 0x61, 0x6c, 0x1a, 0x02, 0x09, 0xa9, 0x02,
0x41, 0x6e, 0x69, 0x6e, 0x65, 0x2a, 0x00, 0x02, 0x6b, 0x00,
0x21, 0x29, 0x2e, 0xfe, 0x00, 0xf1, 0x00, 0x63, 0x61, 0x6e,
0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x73, 0x65, 0x6c, 0x65,
0x63, 0x74, 0x53, 0x00, 0x12, 0x73, 0x80, 0x02, 0x07, 0x7e,
0x00, 0x13, 0x00, 0x9f, 0x00, 0x70, 0x69, 0x6e, 0x73, 0x74,
0x65, 0x61, 0x64, 0xee, 0x00, 0x04, 0xa6, 0x00, 0x43, 0x6e,
0x65, 0x73, 0x2c, 0x80, 0x02, 0x32, 0x73, 0x00, 0x32, 0x89,
0x00, 0x32, 0x36, 0x78, 0x36, 0xf0, 0x02, 0x09, 0x81, 0x00,
0x76, 0x73, 0x69, 0x78, 0x00, 0x33, 0x78, 0x32, 0x80, 0x00,
0xb0, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
0x76, 0x65, 0xf3, 0x01, 0x13, 0x79, 0x8f, 0x00, 0x03, 0x8a,
0x00, 0xd1, 0x60, 0x6a, 0x69, 0x67, 0x73, 0x61, 0x77, 0x27,
0x00, 0x6d, 0x6f, 0x64, 0x65, 0xe6, 0x02, 0x02, 0x81, 0x03,
0x0f, 0x32, 0x01, 0x00, 0xe0, 0x61, 0x72, 0x62, 0x69, 0x74,
0x72, 0x61, 0x72, 0x79, 0x00, 0x73, 0x68, 0x61, 0x70, 0xc0,
0x00, 0x21, 0x68, 0x69, 0xe7, 0x01, 0xf1, 0x00, 0x66, 0x66,
0x65, 0x72, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e,
0x00, 0x69, 0x6e, 0x8f, 0x00, 0x00, 0x1f, 0x01, 0x02, 0x40,
0x01, 0x10, 0x73, 0x9d, 0x01, 0xf1, 0x02, 0x41, 0x6e, 0x6f,
0x74, 0x68, 0x65, 0x72, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x70, 0x00, 0x00, 0x56, 0x01, 0x20,
0x60, 0x6b, 0x90, 0x03, 0xb3, 0x72, 0x27, 0x2e, 0x00, 0x49,
0x6e, 0x00, 0x74, 0x68, 0x69, 0x73, 0x8a, 0x00, 0x01, 0x10,
0x02, 0x01, 0x78, 0x00, 0x33, 0x6e, 0x6f, 0x74, 0x3b, 0x02,
0x21, 0x69, 0x6e, 0x98, 0x00, 0x40, 0x66, 0x6f, 0x72, 0x6d,
0x1d, 0x01, 0x02, 0xca, 0x03, 0x33, 0x2d, 0x69, 0x6e, 0x27,
0x01, 0x24, 0x73, 0x3b, 0x3b, 0x01, 0x16, 0x2c, 0x0d, 0x04,
0x0c, 0x4a, 0x04, 0x91, 0x60, 0x63, 0x61, 0x67, 0x65, 0x73,
0x27, 0x00, 0x62, 0x7d, 0x03, 0x81, 0x6f, 0x75, 0x72, 0x65,
0x64, 0x00, 0x6c, 0x69, 0x60, 0x01, 0x30, 0x61, 0x6e, 0x64,
0x5c, 0x00, 0x02, 0xbe, 0x02, 0x00, 0x27, 0x00, 0x02, 0x46,
0x00, 0x91, 0x61, 0x6d, 0x65, 0x00, 0x74, 0x65, 0x6c, 0x6c,
0x73, 0x3c, 0x01, 0x10, 0x77, 0xfa, 0x03, 0x02, 0x1e, 0x01,
0x01, 0x85, 0x00, 0x32, 0x61, 0x6c, 0x6c, 0x75, 0x02, 0x00,
0xee, 0x02, 0x00, 0xbc, 0x01, 0x02, 0x1c, 0x04, 0x01, 0x3f,
0x00, 0x90, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x62,
0x65, 0x86, 0x01, 0x63, 0x73, 0x6f, 0x2c, 0x00, 0x6e, 0x6f,
0xc6, 0x03, 0xe0, 0x6d, 0x61, 0x79, 0x00, 0x61, 0x70, 0x70,
0x65, 0x61, 0x72, 0x00, 0x6d, 0x6f, 0x72, 0x69, 0x00, 0x40,
0x61, 0x6e, 0x00, 0x6f, 0x3e, 0x03, 0x00, 0x15, 0x02, 0x41,
0x69, 0x6e, 0x00, 0x61, 0x42, 0x00, 0x31, 0x2c, 0x00, 0x65,
0xf8, 0x00, 0x02, 0xf7, 0x02, 0x01, 0x54, 0x00, 0x62, 0x63,
0x72, 0x6f, 0x73, 0x73, 0x65, 0xee, 0x04, 0xa1, 0x62, 0x6f,
0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, 0x65, 0x73, 0x75, 0x03,
0x30, 0x78, 0x69, 0x73, 0xf0, 0x02, 0x71, 0x00, 0x72, 0x65,
0x67, 0x69, 0x6f, 0x6e, 0x78, 0x01, 0x21, 0x49, 0x66, 0xb5,
0x00, 0x03, 0xed, 0x01, 0x19, 0x61, 0xd3, 0x02, 0x02, 0xbf,
0x01, 0x87, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73,
0x88, 0x00, 0x13, 0x39, 0xcd, 0x00, 0x02, 0x46, 0x01, 0x42,
0x61, 0x64, 0x64, 0x69, 0x32, 0x04, 0x04, 0xe4, 0x00, 0x40,
0x77, 0x69, 0x6c, 0x6c, 0x4a, 0x05, 0x40, 0x6c, 0x65, 0x74,
0x74, 0x87, 0x03, 0x03, 0x96, 0x03, 0xb0, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x62, 0x65, 0x74, 0x2e, 0x00, 0x46, 0x45, 0x01,
0x50, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x53, 0x02, 0x09, 0x83,
0x00, 0x30, 0x33, 0x78, 0x34, 0x2d, 0x00, 0x18, 0x6e, 0x34,
0x01, 0x02, 0x89, 0x00, 0x20, 0x67, 0x6f, 0x3d, 0x01, 0x01,
0x00, 0x04, 0x01, 0xb9, 0x01, 0x04, 0x66, 0x00, 0x01, 0x94,
0x05, 0xf1, 0x01, 0x39, 0x2c, 0x00, 0x70, 0x6c, 0x75, 0x73,
0x00, 0x60, 0x61, 0x27, 0x2c, 0x00, 0x60, 0x62, 0x27, 0xac,
0x01, 0x30, 0x60, 0x63, 0x27, 0xb1, 0x03, 0x20, 0x69, 0x73,
0xd1, 0x02, 0x21, 0x6e, 0x6f, 0xde, 0x05, 0x02, 0x67, 0x00,
0x12, 0x65, 0xc9, 0x01, 0x02, 0x5b, 0x02, 0x08, 0x88, 0x02,
0xb2, 0x49, 0x00, 0x66, 0x69, 0x72, 0x73, 0x74, 0x00, 0x73,
0x61, 0x77, 0x6d, 0x02, 0x03, 0x11, 0x01, 0xf2, 0x0d, 0x69,
0x6e, 0x00, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x00, 0x5b,
0x35, 0x5d, 0x2c, 0x00, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75,
0x67, 0x68, 0x00, 0x69, 0x74, 0x27, 0x73, 0xba, 0x03, 0x10,
0x62, 0xdd, 0x02, 0x30, 0x70, 0x6f, 0x70, 0xa9, 0x03, 0x40,
0x69, 0x73, 0x65, 0x64, 0x41, 0x02, 0xf0, 0x00, 0x76, 0x61,
0x72, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x6e, 0x65, 0x77, 0x73,
0x70, 0x61, 0x70, 0x0c, 0x01, 0x15, 0x75, 0x86, 0x04, 0x10,
0x6e, 0x38, 0x02, 0x80, 0x60, 0x53, 0x75, 0x64, 0x6f, 0x6b,
0x75, 0x27, 0x68, 0x04, 0x50, 0x60, 0x53, 0x75, 0x00, 0x44,
0x0d, 0x00, 0xf1, 0x01, 0x2e, 0x00, 0x48, 0x6f, 0x77, 0x61,
0x72, 0x64, 0x00, 0x47, 0x61, 0x72, 0x6e, 0x73, 0x00, 0x69,
0x50, 0x05, 0x40, 0x73, 0x69, 0x64, 0x65, 0x8c, 0x02, 0x20,
0x74, 0x68, 0x8e, 0x00, 0x64, 0x76, 0x65, 0x6e, 0x74, 0x6f,
0x72, 0x5a, 0x01, 0x00, 0x12, 0x03, 0x25, 0x72, 0x6e, 0xf8,
0x02, 0x00, 0x13, 0x00, 0x02, 0xb8, 0x00, 0x02, 0xb4, 0x02,
0x63, 0x69, 0x74, 0x00, 0x77, 0x61, 0x73, 0xda, 0x00, 0x72,
0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0xe2, 0x06, 0xd2,
0x44, 0x65, 0x6c, 0x6c, 0x20, 0x50, 0x65, 0x6e, 0x63, 0x69,
0x6c, 0x20, 0x50, 0x06, 0x01, 0xd0, 0x20, 0x61, 0x6e, 0x64,
0x20, 0x57, 0x6f, 0x72, 0x64, 0x20, 0x47, 0x61, 0x6d, 0x15,
0x01, 0x12, 0x41, 0xfa, 0x01, 0xf5, 0x03, 0x65, 0x6c, 0x61,
0x62, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x00, 0x74, 0x72, 0x65,
0x61, 0x74, 0x6d, 0x65, 0x6e, 0x6f, 0x05, 0x7a, 0x68, 0x69,
0x73, 0x74, 0x6f, 0x72, 0x79, 0x7b, 0x00, 0x01, 0x45, 0x04,
0x00, 0x4f, 0x07, 0x00, 0x84, 0x02, 0xf0, 0x02, 0x00, 0x6f,
0x6e, 0x00, 0x57, 0x69, 0x6b, 0x69, 0x70, 0x65, 0x64, 0x69,
0x61, 0x00, 0x5b, 0x36, 0x5d, 0x6c, 0x01, 0xf1, 0x02, 0x5b,
0x35, 0x5d, 0x00, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x61, 0x01, 0xa3, 0x2e,
0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x97,
0x01, 0x21, 0x2f, 0x73, 0x23, 0x01, 0x10, 0x2f, 0x32, 0x00,
0x12, 0x36, 0x32, 0x00, 0x74, 0x3a, 0x2f, 0x2f, 0x65, 0x6e,
0x2e, 0x77, 0x51, 0x00, 0x50, 0x2e, 0x6f, 0x72, 0x67, 0x2f,
0x0e, 0x00, 0x12, 0x2f, 0x4e, 0x01, 0x72, 0x00, 0x00, 0x00,
0x31, 0x31, 0x2e, 0x31, 0x5c, 0x08, 0x00, 0x8b, 0x06, 0x91,
0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x54, 0x31,
0x06, 0x20, 0x79, 0x00, 0x19, 0x00, 0xe3, 0x2c, 0x00, 0x73,
0x69, 0x6d, 0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0x47, 0x01, 0x21, 0x75, 0x73, 0xeb, 0x01, 0x01, 0x4a,
0x08, 0x44, 0x6d, 0x70, 0x74, 0x79, 0x60, 0x05, 0x00, 0x46,
0x01, 0x02, 0x96, 0x02, 0x35, 0x79, 0x70, 0x65, 0x13, 0x08,
0x23, 0x6f, 0x72, 0xe3, 0x02, 0x22, 0x00, 0x6f, 0xb0, 0x02,
0x50, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0xb9, 0x01, 0x21, 0x74,
0x6f, 0x7d, 0x04, 0x02, 0xeb, 0x03, 0x02, 0x44, 0x00, 0x14,
0x2e, 0x6c, 0x03, 0x30, 0x6d, 0x61, 0x6b, 0x43, 0x00, 0x8f,
0x6d, 0x69, 0x73, 0x74, 0x61, 0x6b, 0x65, 0x2c, 0x80, 0x00,
0x01, 0x02, 0xe4, 0x01, 0x03, 0xbe, 0x06, 0x08, 0x84, 0x00,
0x81, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x53, 0x70, 0xf5,
0x06, 0x40, 0x6f, 0x00, 0x63, 0x6c, 0x21, 0x04, 0x50, 0x69,
0x74, 0x00, 0x61, 0x67, 0x80, 0x07, 0x62, 0x28, 0x6f, 0x72,
0x00, 0x75, 0x73, 0x96, 0x04, 0xd7, 0x55, 0x6e, 0x64, 0x6f,
0x00, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x29, 0xea,
0x03, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x74, 0x00,
0x01, 0x47, 0x04, 0x0f, 0xe2, 0x00, 0x04, 0x02, 0x43, 0x07,
0x12, 0x2c, 0xc2, 0x00, 0x02, 0x0d, 0x00, 0x05, 0x72, 0x03,
0x52, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x41, 0x02, 0x06, 0x09,
0x08, 0x00, 0x79, 0x06, 0x41, 0x61, 0x00, 0x60, 0x70, 0x4d,
0x02, 0x66, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x27, 0xdc, 0x06,
0x01, 0xc9, 0x09, 0x07, 0x1b, 0x00, 0x11, 0x73, 0x7f, 0x03,
0x76, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0xb0, 0x07,
0x04, 0x51, 0x00, 0x00, 0x1a, 0x03, 0x04, 0x36, 0x01, 0x12,
0x53, 0xbb, 0x05, 0x04, 0x53, 0x08, 0x00, 0xc0, 0x04, 0x06,
0xd8, 0x05, 0x05, 0xe9, 0x07, 0x02, 0xe0, 0x03, 0x01, 0x89,
0x03, 0x03, 0x29, 0x00, 0x09, 0x6f, 0x00, 0x10, 0x2e, 0xfd,
0x01, 0x04, 0xac, 0x05, 0x40, 0x70, 0x61, 0x79, 0x73, 0x6a,
0x05, 0x50, 0x61, 0x74, 0x74, 0x65, 0x6e, 0xba, 0x04, 0x01,
0x49, 0x08, 0x07, 0x2e, 0x00, 0x40, 0x2c, 0x00, 0x73, 0x6f,
0xa0, 0x04, 0x00, 0x3a, 0x08, 0x02, 0xd0, 0x05, 0x00, 0x3a,
0x01, 0x03, 0x5a, 0x01, 0x11, 0x6d, 0xbb, 0x00, 0x50, 0x69,
0x73, 0x00, 0x75, 0x70, 0x38, 0x00, 0x45, 0x79, 0x6f, 0x75,
0x3a, 0x34, 0x07, 0x05, 0x23, 0x00, 0x00, 0x61, 0x0a, 0x30,
0x65, 0x6d, 0x69, 0xec, 0x03, 0x12, 0x73, 0x43, 0x01, 0x81,
0x61, 0x00, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0xc8, 0x07,
0x03, 0x32, 0x01, 0x41, 0x6e, 0x65, 0x65, 0x64, 0xc6, 0x08,
0x10, 0x62, 0xbf, 0x08, 0x10, 0x2d, 0x12, 0x05, 0x42, 0x69,
0x6e, 0x65, 0x64, 0xe8, 0x05, 0x00, 0x54, 0x00, 0x42, 0x6b,
0x6e, 0x6f, 0x77, 0x7e, 0x03, 0x4b, 0x61, 0x62, 0x6f, 0x75,
0x45, 0x00, 0x04, 0xa2, 0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00,
0x02, 0x55, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x93, 0x03, 0x5a,
0x6f, 0x73, 0x73, 0x69, 0x62, 0x6a, 0x01, 0x14, 0x61, 0x70,
0x09, 0x01, 0x8d, 0x00, 0x01, 0x48, 0x00, 0x50, 0x61, 0x6e,
0x79, 0x74, 0x68, 0x62, 0x01, 0x32, 0x65, 0x6c, 0x73, 0x82,
0x00, 0xa2, 0x66, 0x65, 0x65, 0x6c, 0x00, 0x6c, 0x69, 0x6b,
0x65, 0x2e, 0x3f, 0x03, 0x41, 0x65, 0x72, 0x61, 0x73, 0x93,
0x0b, 0x49, 0x69, 0x6e, 0x67, 0x6c, 0xd3, 0x01, 0x1c, 0x2c,
0x5b, 0x02, 0x08, 0x1b, 0x02, 0x22, 0x6e, 0x64, 0x58, 0x02,
0x05, 0xde, 0x01, 0x03, 0x52, 0x02, 0x01, 0xb8, 0x02, 0x01,
0x00, 0x08, 0x2a, 0x6c, 0x6c, 0x20, 0x02, 0x09, 0x9c, 0x02,
0x22, 0x72, 0x65, 0x79, 0x00, 0x30, 0x64, 0x00, 0x77, 0xa3,
0x02, 0x00, 0x99, 0x00, 0x34, 0x6c, 0x65, 0x66, 0x6c, 0x00,
0x05, 0x5e, 0x00, 0x18, 0x61, 0x14, 0x01, 0x0f, 0x2a, 0x00,
0x05, 0x02, 0x43, 0x03, 0x10, 0x73, 0x43, 0x03, 0x36, 0x2e,
0x00, 0x52, 0xb3, 0x00, 0x00, 0xf7, 0x00, 0x05, 0x20, 0x00,
0x00, 0x0d, 0x00, 0x01, 0x23, 0x00, 0x02, 0xf4, 0x02, 0x01,
0x58, 0x02, 0x02, 0xfb, 0x00, 0x0c, 0x56, 0x02, 0x0b, 0x3e,
0x09, 0x04, 0x7f, 0x03, 0x60, 0x63, 0x75, 0x72, 0x73, 0x6f,
0x72, 0x11, 0x04, 0x01, 0xe1, 0x01, 0x32, 0x6d, 0x6f, 0x76,
0x18, 0x00, 0x00, 0x38, 0x00, 0x31, 0x00, 0x61, 0x72, 0x14,
0x05, 0x04, 0x83, 0x08, 0x34, 0x2e, 0x00, 0x50, 0x74, 0x00,
0x02, 0xc9, 0x0a, 0x40, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x00,
0x86, 0x00, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x73, 0x3a,
0x00, 0x11, 0x28, 0x86, 0x0c, 0x82, 0x61, 0x00, 0x6e, 0x6f,
0x72, 0x6d, 0x61, 0x6c, 0x14, 0x00, 0x00, 0xfe, 0x0c, 0x08,
0x97, 0x00, 0x24, 0x29, 0x2c, 0x12, 0x01, 0x01, 0xd3, 0x00,
0x04, 0x6b, 0x01, 0x20, 0x69, 0x6e, 0xb5, 0x02, 0x0f, 0xbb,
0x03, 0x03, 0x03, 0x0e, 0x00, 0x80, 0x61, 0x70, 0x70, 0x72,
0x6f, 0x70, 0x72, 0x69, 0xe5, 0x05, 0x44, 0x77, 0x61, 0x79,
0x3b, 0x44, 0x00, 0x01, 0x8c, 0x01, 0x21, 0x30, 0x00, 0x5e,
0x04, 0x04, 0xa6, 0x00, 0x02, 0x1e, 0x01, 0x23, 0x62, 0x61,
0x16, 0x04, 0x02, 0x8a, 0x04, 0x14, 0x61, 0x3d, 0x0d, 0x04,
0xbd, 0x03, 0x43, 0x00, 0x00, 0x28, 0x41, 0x00, 0x09, 0x30,
0x61, 0x63, 0x74, 0x75, 0x08, 0x82, 0x00, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x62, 0x84, 0x00, 0x31, 0x73, 0x65, 0x63,
0x81, 0x03, 0x32, 0x32, 0x2e, 0x31, 0x43, 0x0a, 0x00, 0x69,
0x01, 0x05, 0x04, 0x0a, 0x22, 0x2e, 0x29, 0xca, 0x05, 0x12,
0x32, 0xca, 0x05, 0x60, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
0x52, 0x08, 0x00, 0xcc, 0x05, 0x00, 0x13, 0x00, 0x00, 0x5d,
0x09, 0x22, 0x6f, 0x77, 0x78, 0x09, 0x11, 0x74, 0xfa, 0x03,
0x40, 0x66, 0x69, 0x67, 0x75, 0xa7, 0x08, 0x10, 0x77, 0x4b,
0x0b, 0x00, 0x31, 0x00, 0x10, 0x74, 0x46, 0x08, 0x41, 0x6d,
0x65, 0x6e, 0x73, 0x7d, 0x00, 0x0a, 0xa2, 0x06, 0x01, 0x47,
0x08, 0x03, 0xbb, 0x05, 0xc7, 0x60, 0x54, 0x79, 0x70, 0x65,
0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x3a, 0x44, 0x0c, 0x00,
0x32, 0x00, 0x02, 0x84, 0x0d, 0x03, 0x00, 0x0a, 0x0a, 0x1b,
0x00, 0x00, 0x46, 0x0e, 0x12, 0x2c, 0x38, 0x0a, 0x06, 0x17,
0x0b, 0x01, 0x0c, 0x0d, 0x0b, 0x5c, 0x0a, 0x47, 0x2e, 0x00,
0x28, 0x54, 0x37, 0x0e, 0x13, 0x61, 0x9d, 0x0d, 0x25, 0x69,
0x73, 0xd0, 0x07, 0x23, 0x72, 0x73, 0xf6, 0x0c, 0x5f, 0x69,
0x73, 0x3a, 0x00, 0x66, 0x21, 0x09, 0x07, 0x14, 0x32, 0x90,
0x00, 0x01, 0x8f, 0x00, 0x13, 0x33, 0x83, 0x00, 0x01, 0x93,
0x0a, 0x03, 0x76, 0x0c, 0x02, 0x5b, 0x00, 0x01, 0x97, 0x01,
0x01, 0x78, 0x05, 0x19, 0x33, 0x32, 0x00, 0x12, 0x32, 0xfb,
0x0e, 0x16, 0x29, 0x13, 0x06, 0x14, 0x74, 0x80, 0x06, 0xd2,
0x60, 0x58, 0x27, 0x00, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x62,
0x6f, 0x78, 0x2c, 0x61, 0x01, 0x02, 0xff, 0x02, 0x10, 0x70,
0x28, 0x07, 0x00, 0x22, 0x00, 0x04, 0x1c, 0x0e, 0x61, 0x00,
0x65, 0x78, 0x74, 0x72, 0x61, 0x97, 0x08, 0x50, 0x74, 0x72,
0x61, 0x69, 0x6e, 0xf2, 0x0a, 0x03, 0xf7, 0x0a, 0x0e, 0x0e,
0x0e, 0x08, 0x28, 0x0f, 0x0a, 0xa3, 0x05, 0x01, 0x19, 0x0e,
0x13, 0x66, 0xaf, 0x0e, 0x03, 0x0f, 0x0e, 0x11, 0x28, 0xb1,
0x09, 0x21, 0x69, 0x73, 0x08, 0x0e, 0x51, 0x74, 0x69, 0x6d,
0x65, 0x73, 0x07, 0x05, 0x10, 0x6e, 0xd4, 0x04, 0x03, 0x2e,
0x09, 0x30, 0x2d, 0x58, 0x27, 0x3d, 0x02, 0x06, 0x56, 0x09,
0x2b, 0x2e, 0x29, 0x1d, 0x0c, 0x06, 0xdc, 0x02, 0x00, 0x83,
0x0e, 0x0f, 0x98, 0x00, 0x05, 0x04, 0xd0, 0x06, 0x40, 0x73,
0x68, 0x61, 0x64, 0xb5, 0x02, 0x10, 0x6c, 0x0e, 0x04, 0x00,
0x3d, 0x10, 0x12, 0x6f, 0xcf, 0x00, 0x05, 0x83, 0x05, 0x01,
0xe6, 0x09, 0x20, 0x65, 0x6e, 0x94, 0x02, 0x2f, 0x64, 0x2e,
0x39, 0x01, 0x01, 0x13, 0x4a, 0x25, 0x0d, 0x0f, 0x3e, 0x01,
0x01, 0x41, 0x67, 0x65, 0x6e, 0x65, 0x88, 0x02, 0x73, 0x72,
0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x6c, 0x1f, 0x0d, 0x08, 0x9e,
0x10, 0x1e, 0x2e, 0xbf, 0x00, 0x08, 0x43, 0x0e, 0x03, 0x8f,
0x0b, 0x03, 0xae, 0x00, 0x00, 0x36, 0x08, 0x13, 0x6e, 0x36,
0x06, 0x01, 0xcd, 0x02, 0x5d, 0x72, 0x6f, 0x64, 0x75, 0x63,
0xfc, 0x0e, 0x0b, 0xea, 0x03, 0x22, 0x60, 0x43, 0x04, 0x02,
0x03, 0x1a, 0x0b, 0x30, 0x52, 0x6f, 0x77, 0xe4, 0x0c, 0x41,
0x6f, 0x78, 0x65, 0x73, 0xd4, 0x0e, 0x00, 0x05, 0x04, 0x01,
0x15, 0x07, 0x50, 0x72, 0x65, 0x61, 0x73, 0x6f, 0xe5, 0x0d,
0x34, 0x79, 0x00, 0x79, 0x82, 0x11, 0x22, 0x74, 0x6f, 0x4e,
0x00, 0x06, 0x4d, 0x04, 0x10, 0x67, 0x03, 0x0a, 0x22, 0x65,
0x72, 0x0f, 0x0c, 0x10, 0x31, 0x64, 0x00, 0x42, 0x62, 0x6f,
0x74, 0x68, 0x50, 0x00, 0x22, 0x3b, 0x00, 0x0e, 0x01, 0x02,
0xc2, 0x0d, 0x21, 0x68, 0x61, 0x57, 0x00, 0x07, 0x2a, 0x02,
0x03, 0x90, 0x01, 0x05, 0xd9, 0x00, 0x05, 0xa4, 0x0a, 0x00,
0xc2, 0x06, 0x01, 0xcf, 0x0c, 0x20, 0x62, 0x65, 0xd2, 0x04,
0x26, 0x72, 0x69, 0x28, 0x06, 0x2a, 0x69, 0x66, 0x8e, 0x06,
0x3f, 0x00, 0x69, 0x74, 0x88, 0x01, 0x02, 0x12, 0x4b, 0x2c,
0x0e, 0x0f, 0x88, 0x01, 0x0b, 0x10, 0x61, 0xf9, 0x0f, 0x00,
0x2f, 0x01, 0x00, 0xdc, 0x03, 0x00, 0xed, 0x0d, 0x04, 0x55,
0x12, 0x2e, 0x61, 0x72, 0xa5, 0x01, 0x00, 0x9c, 0x00, 0x41,
0x64, 0x72, 0x61, 0x77, 0x5d, 0x0e, 0x00, 0x84, 0x0d, 0x20,
0x75, 0x74, 0x0e, 0x0e, 0x02, 0xc5, 0x03, 0x02, 0xdb, 0x0e,
0x00, 0x0a, 0x0b, 0x02, 0x2b, 0x0e, 0x03, 0x51, 0x12, 0x02,
0x8a, 0x01, 0x24, 0x73, 0x65, 0x69, 0x0d, 0x06, 0x0f, 0x11,
0x51, 0x61, 0x00, 0x73, 0x6d, 0x61, 0x74, 0x0c, 0x00, 0xbf,
0x0e, 0x03, 0x77, 0x00, 0x20, 0x73, 0x68, 0xc4, 0x04, 0x05,
0xf0, 0x0c, 0x0c, 0x39, 0x0e, 0x04, 0xc8, 0x02, 0x13, 0x69,
0x23, 0x02, 0x02, 0x55, 0x00, 0x04, 0x38, 0x11, 0x05, 0x3a,
0x10, 0x07, 0xfd, 0x04, 0x22, 0x68, 0x65, 0x10, 0x07, 0x00,
0x20, 0x10, 0x71, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x79,
0x65, 0x00, 0x05, 0x21, 0x0f, 0x04, 0x0b, 0x01, 0x16, 0x64,
0xfb, 0x0c, 0x10, 0x4d, 0x66, 0x08, 0x05, 0x2e, 0x00, 0x00,
0xa4, 0x0a, 0x17, 0x73, 0x2b, 0x05, 0x60, 0x73, 0x00, 0x6c,
0x6f, 0x6f, 0x6b, 0x1c, 0x07, 0x30, 0x74, 0x74, 0x69, 0xcd,
0x0f, 0x13, 0x75, 0xa3, 0x0e, 0x00, 0x7a, 0x00, 0x01, 0xd1,
0x0a, 0x01, 0x77, 0x08, 0x60, 0x65, 0x61, 0x73, 0x69, 0x65,
0x72, 0x5a, 0x0b, 0x13, 0x6e, 0x96, 0x11, 0x05, 0x52, 0x00,
0x06, 0x01, 0x02, 0x01, 0xae, 0x09, 0x00, 0xe2, 0x04, 0x22,
0x63, 0x65, 0xdc, 0x08, 0x02, 0xca, 0x0f, 0x01, 0x4b, 0x02,
0x60, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x43, 0x10, 0x02,
0xe0, 0x02, 0x00, 0x8d, 0x07, 0x70, 0x65, 0x6e, 0x74, 0x2e,
0x00, 0x43, 0x6f, 0x0c, 0x05, 0x63, 0x74, 0x65, 0x6c, 0x79,
0x00, 0x61, 0x54, 0x00, 0x25, 0x69, 0x63, 0x9d, 0x00, 0x02,
0xa6, 0x02, 0x00, 0xfa, 0x0f, 0x86, 0x72, 0x65, 0x65, 0x64,
0x6f, 0x6d, 0x00, 0x74, 0x64, 0x04, 0x00, 0xf9, 0x0c, 0x24,
0x65, 0x77, 0x2f, 0x10, 0x15, 0x73, 0x0b, 0x09, 0x00, 0x41,
0x01, 0x23, 0x46, 0x69, 0xe8, 0x12, 0x04, 0x41, 0x09, 0x0a,
0x45, 0x01, 0x00, 0xdf, 0x01, 0x00, 0x6d, 0x09, 0x15, 0x74,
0xdb, 0x0c, 0x0f, 0x39, 0x01, 0x00, 0x16, 0x44, 0x25, 0x00,
0x52, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x94, 0x10, 0x42, 0x6a,
0x75, 0x64, 0x67, 0x04, 0x0e, 0x01, 0x0e, 0x08, 0x01, 0xbe,
0x00, 0x26, 0x78, 0x69, 0x49, 0x00, 0x82, 0x74, 0x65, 0x63,
0x68, 0x6e, 0x69, 0x71, 0x75, 0x9a, 0x0f, 0x42, 0x64, 0x65,
0x64, 0x75, 0x09, 0x07, 0x03, 0x6e, 0x0f, 0x01, 0x42, 0x0c,
0x57, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x85, 0x01, 0x12, 0x3a,
0xe6, 0x05, 0x01, 0x66, 0x00, 0x06, 0x97, 0x0f, 0x12, 0x61,
0x68, 0x03, 0x23, 0x6f, 0x66, 0xbb, 0x03, 0x00, 0xa1, 0x07,
0x02, 0x58, 0x02, 0x11, 0x77, 0x7b, 0x03, 0x17, 0x74, 0x55,
0x01, 0x23, 0x69, 0x6e, 0x32, 0x04, 0x21, 0x65, 0x76, 0x98,
0x0e, 0x31, 0x6f, 0x6e, 0x65, 0x7b, 0x04, 0x06, 0x56, 0x0a,
0x10, 0x2c, 0x9f, 0x03, 0x1d, 0x64, 0xd3, 0x00, 0x83, 0x60,
0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x6c, 0x3e, 0x04, 0x70,
0x42, 0x61, 0x73, 0x69, 0x63, 0x27, 0x00, 0xb2, 0x11, 0x06,
0x98, 0x04, 0x05, 0xaf, 0x09, 0x04, 0x4d, 0x01, 0x01, 0x02,
0x0d, 0x06, 0x47, 0x15, 0x03, 0x33, 0x0a, 0x04, 0xfa, 0x09,
0x12, 0x74, 0xe1, 0x02, 0x22, 0x69, 0x6d, 0x80, 0x03, 0x10,
0x65, 0xbe, 0x00, 0x00, 0x16, 0x00, 0x20, 0x60, 0x49, 0x6b,
0x04, 0x30, 0x6d, 0x65, 0x64, 0x87, 0x08, 0x13, 0x27, 0xee,
0x00, 0x20, 0x61, 0x6e, 0x26, 0x11, 0x42, 0x79, 0x6f, 0x6e,
0x64, 0x64, 0x11, 0x05, 0xdc, 0x06, 0x13, 0x74, 0x7f, 0x02,
0x01, 0xc2, 0x00, 0x26, 0x61, 0x6c, 0x4a, 0x01, 0x13, 0x73,
0x33, 0x0b, 0x01, 0x85, 0x02, 0x02, 0xef, 0x03, 0x04, 0x49,
0x03, 0x05, 0xc6, 0x04, 0x13, 0x63, 0x7e, 0x11, 0x13, 0x00,
0x3c, 0x0d, 0x07, 0x2c, 0x00, 0x04, 0x46, 0x05, 0x02, 0xac,
0x11, 0x07, 0x28, 0x00, 0x04, 0xe6, 0x00, 0x00, 0x39, 0x13,
0x52, 0x74, 0x00, 0x60, 0x55, 0x6e, 0x76, 0x01, 0x00, 0x1b,
0x06, 0x03, 0xad, 0x00, 0x03, 0x94, 0x11, 0x13, 0x74, 0xc7,
0x06, 0x00, 0x82, 0x01, 0x20, 0x65, 0x6e, 0x2d, 0x10, 0x02,
0xe9, 0x04, 0x05, 0xc0, 0x00, 0x10, 0x65, 0xc4, 0x0f, 0x02,
0xae, 0x16, 0x09, 0xcb, 0x00, 0x86, 0x61, 0x00, 0x67, 0x75,
0x65, 0x73, 0x73, 0x2c, 0x93, 0x0d, 0x70, 0x62, 0x61, 0x63,
0x6b, 0x74, 0x72, 0x61, 0x30, 0x08, 0x10, 0x66, 0x29, 0x05,
0x00, 0x20, 0x0a, 0x10, 0x73, 0x8a, 0x04, 0x03, 0x26, 0x03,
0x50, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0xd0, 0x02, 0x12, 0x47,
0x9f, 0x02, 0x00, 0x03, 0x02, 0x05, 0xc4, 0x01, 0x05, 0x25,
0x03, 0x00, 0x8f, 0x00, 0x56, 0x74, 0x73, 0x65, 0x6c, 0x66,
0x1c, 0x00, 0x1b, 0x3a, 0x5c, 0x08, 0x03, 0x90, 0x07, 0x02,
0xd4, 0x0f, 0x10, 0x67, 0x90, 0x13, 0x0d, 0x0b, 0x02, 0x03,
0x52, 0x05, 0x2b, 0x6d, 0x61, 0xb6, 0x00, 0x01, 0x7e, 0x17,
0x00, 0x52, 0x0d, 0x31, 0x6d, 0x70, 0x74, 0xc8, 0x01, 0x16,
0x67, 0x8c, 0x00, 0x05, 0x57, 0x12, 0x30, 0x62, 0x65, 0x66,
0xf1, 0x03, 0x00, 0x4e, 0x17, 0x41, 0x69, 0x6e, 0x64, 0x73,
0x70, 0x00, 0x10, 0x68, 0x30, 0x0f, 0x02, 0x21, 0x01, 0x22,
0x00, 0x66, 0xcc, 0x0c, 0x31, 0x2e, 0x00, 0x42, 0xa5, 0x02,
0x23, 0x70, 0x61, 0x0a, 0x03, 0xc1, 0x77, 0x61, 0x69, 0x74,
0x2c, 0x00, 0x65, 0x73, 0x70, 0x65, 0x63, 0x69, 0x31, 0x01,
0x26, 0x69, 0x66, 0x9e, 0x06, 0x0a, 0xfe, 0x04, 0x95, 0x64,
0x00, 0x61, 0x00, 0x6c, 0x61, 0x72, 0x67, 0x65, 0xcb, 0x12,
0x50, 0x69, 0x7a, 0x65, 0x2e, 0x00,
};
const unsigned short help_text_len = 6263;
const unsigned short help_text_words = 1155;
const unsigned short help_text_len = 6259;
const unsigned short help_text_words = 1153;
const char quick_help_text[] = "Fill in the grid so that each row, column and square block contains one of every digit.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,160 +6,161 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 102, TEXT_UNDERLINE },
{ 160, TEXT_CENTER | C_RED },
{ 190, TEXT_UNDERLINE },
{ 207, TEXT_UNDERLINE },
{ 342, TEXT_CENTER | C_RED },
{ 359, TEXT_UNDERLINE },
{ 103, TEXT_UNDERLINE },
{ 161, TEXT_CENTER | C_RED },
{ 191, TEXT_UNDERLINE },
{ 208, TEXT_UNDERLINE },
{ 343, TEXT_CENTER | C_RED },
{ 360, TEXT_UNDERLINE },
{ 370, TEXT_UNDERLINE },
{ 361, TEXT_UNDERLINE },
{ 371, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 2140 comp 1385 ratio 0.647196 level 10 saved 755 */
/* orig 2158 comp 1394 ratio 0.645968 level 10 saved 764 */
const char help_text[] = {
0xf0, 0x26, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfc, 0x05, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x35, 0x3a, 0x20, 0x54, 0x65, 0x6e, 0x74, 0x73, 0x20,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76,
0x65, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f,
0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c,
0x00, 0x73, 0x6f, 0x6d, 0x65, 0x11, 0x00, 0xf0, 0x05, 0x77,
0x68, 0x69, 0x63, 0x68, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x00, 0x74, 0x72, 0x65, 0x65, 0x73, 0x2e, 0x39,
0x00, 0xf0, 0x04, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69,
0x73, 0x00, 0x74, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x63, 0x65,
0x00, 0x74, 0x57, 0x00, 0x35, 0x00, 0x69, 0x6e, 0x3b, 0x00,
0xd6, 0x74, 0x68, 0x65, 0x00, 0x72, 0x65, 0x6d, 0x61, 0x69,
0x6e, 0x69, 0x6e, 0x67, 0x5a, 0x00, 0x00, 0x22, 0x00, 0xe1,
0x75, 0x63, 0x68, 0x00, 0x61, 0x00, 0x77, 0x61, 0x79, 0x00,
0x74, 0x68, 0x61, 0x74, 0x2a, 0x00, 0x60, 0x66, 0x6f, 0x6c,
0x6c, 0x6f, 0x77, 0x2a, 0x00, 0xf1, 0x0e, 0x63, 0x6f, 0x6e,
0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x00, 0x61, 0x72,
0x65, 0x00, 0x6d, 0x65, 0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d,
0x00, 0x54, 0x68, 0x65, 0x72, 0x65, 0x13, 0x00, 0xf3, 0x00,
0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x00, 0x61, 0x73,
0x00, 0x6d, 0x61, 0x6e, 0x79, 0x7b, 0x00, 0x24, 0x61, 0x73,
0xa0, 0x00, 0x03, 0x2e, 0x00, 0x04, 0x18, 0x00, 0x22, 0x6e,
0x64, 0x19, 0x00, 0xff, 0x03, 0x00, 0x63, 0x61, 0x6e, 0x00,
0x62, 0x65, 0x00, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64,
0x00, 0x75, 0x70, 0x8d, 0x00, 0x01, 0x41, 0x65, 0x61, 0x63,
0x68, 0x3a, 0x00, 0x00, 0xde, 0x00, 0x42, 0x64, 0x69, 0x72,
0x65, 0x6b, 0x00, 0x40, 0x64, 0x6a, 0x61, 0x63, 0x15, 0x00,
0x60, 0x28, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x10, 0x01, 0xd0,
0x6c, 0x6c, 0x79, 0x00, 0x6f, 0x72, 0x00, 0x76, 0x65, 0x72,
0x74, 0x69, 0x63, 0x0e, 0x00, 0xf0, 0x01, 0x2c, 0x00, 0x62,
0x75, 0x74, 0x00, 0x6e, 0x6f, 0x74, 0x00, 0x64, 0x69, 0x61,
0x67, 0x6f, 0x6e, 0x14, 0x00, 0x10, 0x29, 0x21, 0x01, 0x62,
0x69, 0x74, 0x73, 0x00, 0x6f, 0x77, 0x3f, 0x01, 0xc2, 0x2e,
0x00, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x00,
0x61, 0x67, 0x00, 0x30, 0x6d, 0x61, 0x79, 0x96, 0x00, 0x05,
0x62, 0x00, 0x83, 0x74, 0x6f, 0x00, 0x6f, 0x74, 0x68, 0x65,
0x72, 0xb5, 0x00, 0x70, 0x61, 0x73, 0x00, 0x77, 0x65, 0x6c,
0x6c, 0x08, 0x00, 0x03, 0x48, 0x00, 0x02, 0xe1, 0x00, 0x64,
0x4e, 0x6f, 0x00, 0x74, 0x77, 0x6f, 0xe4, 0x00, 0x17, 0x72,
0x41, 0x00, 0x08, 0xa2, 0x00, 0x17, 0x2c, 0xa0, 0x00, 0x46,
0x00, 0x6f, 0x72, 0x20, 0x9a, 0x00, 0x06, 0x27, 0x01, 0x61,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0xb3, 0x01, 0x04, 0xc4,
0x01, 0x01, 0x05, 0x01, 0x41, 0x72, 0x6f, 0x77, 0x2c, 0x3e,
0x01, 0x04, 0x11, 0x00, 0x73, 0x63, 0x6f, 0x6c, 0x75, 0x6d,
0x6e, 0x2c, 0x41, 0x01, 0x35, 0x73, 0x00, 0x74, 0x3d, 0x00,
0xd1, 0x73, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x72,
0x6f, 0x75, 0x6e, 0x64, 0x18, 0x00, 0x54, 0x73, 0x69, 0x64,
0x65, 0x73, 0x07, 0x02, 0x00, 0x5f, 0x02, 0x00, 0x70, 0x00,
0xb4, 0x54, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x65, 0x8d, 0x01, 0x11, 0x66, 0x32, 0x00, 0x00, 0x88,
0x01, 0x00, 0x15, 0x01, 0x22, 0x61, 0x6c, 0x4e, 0x02, 0x41,
0x73, 0x00, 0x6f, 0x6e, 0x3a, 0x00, 0x82, 0x49, 0x6e, 0x74,
0x65, 0x72, 0x6e, 0x65, 0x74, 0x89, 0x00, 0xa1, 0x77, 0x61,
0x73, 0x00, 0x62, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x27, 0x01,
0x50, 0x6d, 0x79, 0x00, 0x61, 0x74, 0xb4, 0x00, 0xf0, 0x28,
0x69, 0x6f, 0x6e, 0x00, 0x62, 0x79, 0x00, 0x65, 0x2d, 0x6d,
0x61, 0x69, 0x6c, 0x2e, 0x00, 0x49, 0x00, 0x64, 0x6f, 0x6e,
0x27, 0x74, 0x00, 0x6b, 0x6e, 0x6f, 0x77, 0x00, 0x77, 0x68,
0x6f, 0x00, 0x49, 0x00, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64,
0x00, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x00, 0x66, 0x6f,
0x72, 0x00, 0x69, 0x6e, 0x76, 0x3a, 0x00, 0x50, 0x6e, 0x67,
0x00, 0x69, 0x74, 0x9c, 0x00, 0x43, 0x32, 0x35, 0x2e, 0x31,
0x1c, 0x03, 0x00, 0xef, 0x02, 0x31, 0x72, 0x6f, 0x6c, 0x25,
0x03, 0xa1, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0x2b, 0x00, 0x93, 0x6e, 0x00, 0x61, 0x00, 0x62,
0x6c, 0x61, 0x6e, 0x6b, 0xd1, 0x02, 0x43, 0x00, 0x77, 0x69,
0x6c, 0xb4, 0x00, 0x04, 0xd0, 0x01, 0x21, 0x69, 0x6e, 0x52,
0x00, 0x7f, 0x52, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x00, 0x3b,
0x00, 0x0d, 0x30, 0x63, 0x6f, 0x6c, 0x4e, 0x03, 0x80, 0x69,
0x74, 0x00, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x20, 0x03, 0x41,
0x64, 0x69, 0x63, 0x61, 0x99, 0x00, 0x01, 0x90, 0x02, 0x31,
0x79, 0x6f, 0x75, 0xdf, 0x01, 0x60, 0x73, 0x75, 0x72, 0x65,
0x00, 0x69, 0x96, 0x02, 0x00, 0xdb, 0x00, 0x02, 0x6c, 0x00,
0x34, 0x2e, 0x00, 0x43, 0x5f, 0x00, 0x21, 0x65, 0x69, 0x34,
0x02, 0x61, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x6d, 0x00,
0xaa, 0x6e, 0x00, 0x6f, 0x63, 0x63, 0x75, 0x70, 0x69, 0x65,
0x64, 0x71, 0x00, 0x43, 0x6c, 0x65, 0x61, 0x72, 0xf4, 0x00,
0x21, 0x49, 0x66, 0x5f, 0x00, 0x92, 0x64, 0x72, 0x61, 0x67,
0x00, 0x77, 0x69, 0x74, 0x68, 0xb4, 0x03, 0x00, 0xb9, 0x00,
0x04, 0x49, 0x00, 0x70, 0x61, 0x6c, 0x6f, 0x6e, 0x67, 0x00,
0x61, 0x0c, 0x02, 0x00, 0xed, 0x02, 0x04, 0x02, 0x02, 0x00,
0xac, 0x01, 0x1a, 0x79, 0xce, 0x00, 0x23, 0x69, 0x6e, 0xf2,
0x03, 0x10, 0x67, 0x8e, 0x01, 0x00, 0x57, 0x00, 0x52, 0x63,
0x6f, 0x76, 0x65, 0x72, 0x75, 0x00, 0x94, 0x62, 0x65, 0x00,
0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0xe6, 0x00, 0x00, 0xce,
0x01, 0x14, 0x6e, 0xe9, 0x02, 0x03, 0x1c, 0x04, 0x05, 0x2b,
0x00, 0xb1, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64,
0x2e, 0x00, 0x28, 0x32, 0x02, 0x91, 0x69, 0x73, 0x00, 0x75,
0x73, 0x65, 0x66, 0x75, 0x6c, 0xb9, 0x01, 0x01, 0xc1, 0x00,
0x02, 0x1f, 0x01, 0x04, 0x61, 0x04, 0x12, 0x64, 0xbf, 0x02,
0x03, 0xa7, 0x00, 0x54, 0x6e, 0x63, 0x65, 0x00, 0x79, 0xdc,
0x04, 0x01, 0x9b, 0x01, 0x51, 0x64, 0x00, 0x61, 0x6c, 0x6c,
0x3f, 0x03, 0x01, 0xe2, 0x02, 0x23, 0x2e, 0x29, 0xfe, 0x04,
0x20, 0x63, 0x61, 0xe2, 0x00, 0x20, 0x73, 0x6f, 0x5f, 0x00,
0x01, 0x4f, 0x00, 0xb1, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
0x00, 0x6b, 0x65, 0x79, 0x73, 0x61, 0x02, 0x10, 0x6f, 0x1e,
0x05, 0x06, 0xd5, 0x02, 0x02, 0xc8, 0x02, 0x56, 0x50, 0x72,
0x65, 0x73, 0x73, 0x81, 0x00, 0x00, 0xd9, 0x00, 0x00, 0x32,
0x00, 0x11, 0x00, 0xef, 0x00, 0x8f, 0x61, 0x6e, 0x00, 0x65,
0x6d, 0x70, 0x74, 0x79, 0x20, 0x02, 0x06, 0x02, 0xfc, 0x00,
0x18, 0x70, 0x44, 0x00, 0x20, 0x73, 0x70, 0x1f, 0x00, 0x3e,
0x62, 0x61, 0x72, 0x43, 0x00, 0x0f, 0x28, 0x02, 0x05, 0x14,
0x3b, 0xf1, 0x01, 0x00, 0x79, 0x00, 0x07, 0xd8, 0x01, 0x0e,
0xf6, 0x01, 0x00, 0x71, 0x04, 0x20, 0x6c, 0x64, 0x6b, 0x00,
0x5e, 0x53, 0x68, 0x69, 0x66, 0x74, 0x7e, 0x00, 0x08, 0xf4,
0x00, 0x08, 0x6b, 0x00, 0x08, 0x84, 0x00, 0x12, 0x73, 0x76,
0x00, 0x06, 0x4c, 0x00, 0x12, 0x43, 0x23, 0x03, 0x0f, 0x4e,
0x00, 0x17, 0x01, 0x40, 0x00, 0x5b, 0x00, 0x62, 0x6f, 0x74,
0x68, 0x59, 0x00, 0x00, 0x42, 0x00, 0x06, 0x01, 0x02, 0x12,
0x74, 0x7c, 0x05, 0x01, 0xc5, 0x05, 0x41, 0x28, 0x41, 0x6c,
0x6c, 0x54, 0x00, 0x22, 0x61, 0x63, 0x0f, 0x06, 0x83, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x30, 0x04, 0x11,
0x63, 0xf8, 0x03, 0x32, 0x32, 0x2e, 0x31, 0xff, 0x04, 0x00,
0xc8, 0x01, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
0x6c, 0x65, 0x2e, 0x29, 0xd3, 0x03, 0x13, 0x32, 0xd3, 0x03,
0xb1, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
0x73, 0x20, 0x88, 0x04, 0x46, 0x65, 0x73, 0x65, 0x00, 0x14,
0x00, 0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x51, 0x00, 0x66,
0x72, 0x6f, 0x6d, 0x79, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70,
0x6f, 0x00, 0x03, 0x98, 0x04, 0xb0, 0x60, 0x54, 0x79, 0x70,
0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xab, 0x00, 0x91,
0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x3c,
0x03, 0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x04, 0x07, 0x01,
0x58, 0x07, 0x24, 0x69, 0x6e, 0xe1, 0x00, 0x00, 0x2b, 0x00,
0xc4, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74,
0x79, 0x00, 0x00, 0x47, 0x01, 0x02, 0x4b, 0x05, 0x16, 0x64,
0x1a, 0x00, 0x04, 0x38, 0x05, 0x83, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x74, 0x65, 0x64, 0x35, 0x05, 0x57, 0x2e, 0x00, 0x4d,
0x6f, 0x72, 0x29, 0x00, 0x03, 0x17, 0x00, 0x70, 0x73, 0x00,
0x72, 0x65, 0x71, 0x75, 0x69, 0x2d, 0x07, 0x00, 0x1f, 0x00,
0xc2, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x00, 0x64,
0x65, 0x64, 0x75, 0x3a, 0x01, 0x02, 0x9a, 0x06, 0x21, 0x61,
0x74, 0xab, 0x01, 0x20, 0x65, 0x6e, 0xa5, 0x06, 0x15, 0x6e,
0xa4, 0x07, 0x06, 0xf8, 0x00, 0x07, 0x81, 0x00, 0x55, 0x6c,
0x65, 0x76, 0x65, 0x6c, 0x58, 0x00, 0xb0, 0x73, 0x00, 0x67,
0x75, 0x65, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x6b, 0x06, 0x04,
0xe0, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63, 0x6b,
0x69, 0x6e, 0x67, 0x2e, 0x00,
0x00, 0x2d, 0x01, 0x00, 0xf0, 0x14, 0x00, 0x00, 0x00, 0x59,
0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d,
0x65, 0x11, 0x00, 0xf0, 0x05, 0x77, 0x68, 0x69, 0x63, 0x68,
0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x74,
0x72, 0x65, 0x65, 0x73, 0x2e, 0x39, 0x00, 0xf0, 0x04, 0x72,
0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73, 0x00, 0x74, 0x6f,
0x00, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x00, 0x74, 0x69, 0x00,
0x35, 0x00, 0x69, 0x6e, 0x3b, 0x00, 0xd6, 0x74, 0x68, 0x65,
0x00, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67,
0x5a, 0x00, 0x00, 0x22, 0x00, 0xe1, 0x75, 0x63, 0x68, 0x00,
0x61, 0x00, 0x77, 0x61, 0x79, 0x00, 0x74, 0x68, 0x61, 0x74,
0x2a, 0x00, 0x60, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x2a,
0x00, 0xf1, 0x0e, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x00, 0x61, 0x72, 0x65, 0x00, 0x6d, 0x65,
0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x54, 0x68, 0x65,
0x72, 0x65, 0x13, 0x00, 0xf3, 0x00, 0x65, 0x78, 0x61, 0x63,
0x74, 0x6c, 0x79, 0x00, 0x61, 0x73, 0x00, 0x6d, 0x61, 0x6e,
0x79, 0x7b, 0x00, 0x24, 0x61, 0x73, 0xa0, 0x00, 0x03, 0x2e,
0x00, 0x04, 0x18, 0x00, 0x22, 0x6e, 0x64, 0x19, 0x00, 0xff,
0x03, 0x00, 0x63, 0x61, 0x6e, 0x00, 0x62, 0x65, 0x00, 0x6d,
0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x00, 0x75, 0x70, 0x8d,
0x00, 0x01, 0x41, 0x65, 0x61, 0x63, 0x68, 0x3a, 0x00, 0x00,
0xde, 0x00, 0x42, 0x64, 0x69, 0x72, 0x65, 0x6b, 0x00, 0x40,
0x64, 0x6a, 0x61, 0x63, 0x15, 0x00, 0x60, 0x28, 0x68, 0x6f,
0x72, 0x69, 0x7a, 0x10, 0x01, 0xd0, 0x6c, 0x6c, 0x79, 0x00,
0x6f, 0x72, 0x00, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e,
0x00, 0xf0, 0x01, 0x2c, 0x00, 0x62, 0x75, 0x74, 0x00, 0x6e,
0x6f, 0x74, 0x00, 0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, 0x14,
0x00, 0x10, 0x29, 0x21, 0x01, 0x62, 0x69, 0x74, 0x73, 0x00,
0x6f, 0x77, 0x3f, 0x01, 0xc2, 0x2e, 0x00, 0x48, 0x6f, 0x77,
0x65, 0x76, 0x65, 0x72, 0x2c, 0x00, 0x61, 0x67, 0x00, 0x30,
0x6d, 0x61, 0x79, 0x96, 0x00, 0x05, 0x62, 0x00, 0x83, 0x74,
0x6f, 0x00, 0x6f, 0x74, 0x68, 0x65, 0x72, 0xb5, 0x00, 0x70,
0x61, 0x73, 0x00, 0x77, 0x65, 0x6c, 0x6c, 0x08, 0x00, 0x03,
0x48, 0x00, 0x02, 0xe1, 0x00, 0x64, 0x4e, 0x6f, 0x00, 0x74,
0x77, 0x6f, 0xe4, 0x00, 0x17, 0x72, 0x41, 0x00, 0x08, 0xa2,
0x00, 0x17, 0x2c, 0xa0, 0x00, 0x46, 0x00, 0x6f, 0x72, 0x20,
0x9a, 0x00, 0x06, 0x27, 0x01, 0x61, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0xb3, 0x01, 0x04, 0xc4, 0x01, 0x01, 0x05, 0x01,
0x41, 0x72, 0x6f, 0x77, 0x2c, 0x3e, 0x01, 0x04, 0x11, 0x00,
0x73, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x2c, 0x41, 0x01,
0x35, 0x73, 0x00, 0x74, 0x3d, 0x00, 0xd1, 0x73, 0x00, 0x67,
0x69, 0x76, 0x65, 0x6e, 0x00, 0x72, 0x6f, 0x75, 0x6e, 0x64,
0x18, 0x00, 0x54, 0x73, 0x69, 0x64, 0x65, 0x73, 0x07, 0x02,
0x00, 0x5f, 0x02, 0x00, 0x70, 0x00, 0xb4, 0x54, 0x68, 0x69,
0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x8d, 0x01,
0x11, 0x66, 0x32, 0x00, 0x00, 0x88, 0x01, 0x00, 0x15, 0x01,
0x22, 0x61, 0x6c, 0x4e, 0x02, 0x41, 0x73, 0x00, 0x6f, 0x6e,
0x3a, 0x00, 0x82, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
0x74, 0x89, 0x00, 0xa1, 0x77, 0x61, 0x73, 0x00, 0x62, 0x72,
0x6f, 0x75, 0x67, 0x68, 0x27, 0x01, 0x50, 0x6d, 0x79, 0x00,
0x61, 0x74, 0xb4, 0x00, 0xf0, 0x28, 0x69, 0x6f, 0x6e, 0x00,
0x62, 0x79, 0x00, 0x65, 0x2d, 0x6d, 0x61, 0x69, 0x6c, 0x2e,
0x00, 0x49, 0x00, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x00, 0x6b,
0x6e, 0x6f, 0x77, 0x00, 0x77, 0x68, 0x6f, 0x00, 0x49, 0x00,
0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x63, 0x72, 0x65,
0x64, 0x69, 0x74, 0x00, 0x66, 0x6f, 0x72, 0x00, 0x69, 0x6e,
0x76, 0x3a, 0x00, 0x50, 0x6e, 0x67, 0x00, 0x69, 0x74, 0x9c,
0x00, 0x43, 0x32, 0x35, 0x2e, 0x31, 0x2e, 0x03, 0x00, 0xef,
0x02, 0xf1, 0x03, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00,
0x00, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63,
0x6b, 0x2b, 0x00, 0x93, 0x6e, 0x00, 0x61, 0x00, 0x62, 0x6c,
0x61, 0x6e, 0x6b, 0xd1, 0x02, 0x43, 0x00, 0x77, 0x69, 0x6c,
0xb4, 0x00, 0x04, 0xd0, 0x01, 0x21, 0x69, 0x6e, 0x52, 0x00,
0x7f, 0x52, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x00, 0x3b, 0x00,
0x0d, 0x30, 0x63, 0x6f, 0x6c, 0x4e, 0x03, 0x80, 0x69, 0x74,
0x00, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x20, 0x03, 0x41, 0x64,
0x69, 0x63, 0x61, 0x99, 0x00, 0x01, 0x90, 0x02, 0x31, 0x79,
0x6f, 0x75, 0xdf, 0x01, 0x60, 0x73, 0x75, 0x72, 0x65, 0x00,
0x69, 0x96, 0x02, 0x00, 0xdb, 0x00, 0x02, 0x6c, 0x00, 0x34,
0x2e, 0x00, 0x43, 0x5f, 0x00, 0x21, 0x65, 0x69, 0x34, 0x02,
0x61, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x6d, 0x00, 0xaa,
0x6e, 0x00, 0x6f, 0x63, 0x63, 0x75, 0x70, 0x69, 0x65, 0x64,
0x71, 0x00, 0x43, 0x6c, 0x65, 0x61, 0x72, 0xf4, 0x00, 0x21,
0x49, 0x66, 0x5f, 0x00, 0x92, 0x64, 0x72, 0x61, 0x67, 0x00,
0x77, 0x69, 0x74, 0x68, 0xb4, 0x03, 0x00, 0xb9, 0x00, 0x04,
0x49, 0x00, 0x70, 0x61, 0x6c, 0x6f, 0x6e, 0x67, 0x00, 0x61,
0x0c, 0x02, 0x00, 0xed, 0x02, 0x04, 0x02, 0x02, 0x00, 0xac,
0x01, 0x1a, 0x79, 0xce, 0x00, 0x23, 0x69, 0x6e, 0xf2, 0x03,
0x10, 0x67, 0x8e, 0x01, 0x00, 0x57, 0x00, 0x52, 0x63, 0x6f,
0x76, 0x65, 0x72, 0x75, 0x00, 0x94, 0x62, 0x65, 0x00, 0x74,
0x75, 0x72, 0x6e, 0x65, 0x64, 0xe6, 0x00, 0x00, 0xce, 0x01,
0x14, 0x6e, 0xe9, 0x02, 0x03, 0x1c, 0x04, 0x05, 0x2b, 0x00,
0xb1, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x2e,
0x00, 0x28, 0x32, 0x02, 0x91, 0x69, 0x73, 0x00, 0x75, 0x73,
0x65, 0x66, 0x75, 0x6c, 0xb9, 0x01, 0x01, 0xc1, 0x00, 0x02,
0x1f, 0x01, 0x04, 0x61, 0x04, 0x12, 0x64, 0xbf, 0x02, 0x03,
0xa7, 0x00, 0x54, 0x6e, 0x63, 0x65, 0x00, 0x79, 0xdc, 0x04,
0x01, 0x9b, 0x01, 0x51, 0x64, 0x00, 0x61, 0x6c, 0x6c, 0x3f,
0x03, 0x01, 0xe2, 0x02, 0x23, 0x2e, 0x29, 0xfe, 0x04, 0x20,
0x63, 0x61, 0xe2, 0x00, 0x20, 0x73, 0x6f, 0x5f, 0x00, 0x01,
0x4f, 0x00, 0xb1, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00,
0x6b, 0x65, 0x79, 0x73, 0x61, 0x02, 0x10, 0x6f, 0x1e, 0x05,
0x06, 0xd5, 0x02, 0x02, 0xc8, 0x02, 0x56, 0x50, 0x72, 0x65,
0x73, 0x73, 0x81, 0x00, 0x00, 0xd9, 0x00, 0x00, 0x32, 0x00,
0x11, 0x00, 0xef, 0x00, 0x8f, 0x61, 0x6e, 0x00, 0x65, 0x6d,
0x70, 0x74, 0x79, 0x20, 0x02, 0x06, 0x02, 0xfc, 0x00, 0x18,
0x70, 0x44, 0x00, 0x20, 0x73, 0x70, 0x1f, 0x00, 0x3e, 0x62,
0x61, 0x72, 0x43, 0x00, 0x0f, 0x28, 0x02, 0x05, 0x14, 0x3b,
0xf1, 0x01, 0x00, 0x79, 0x00, 0x07, 0xd8, 0x01, 0x0e, 0xf6,
0x01, 0x00, 0x71, 0x04, 0x20, 0x6c, 0x64, 0x6b, 0x00, 0x5e,
0x53, 0x68, 0x69, 0x66, 0x74, 0x7e, 0x00, 0x08, 0xf4, 0x00,
0x08, 0x6b, 0x00, 0x08, 0x84, 0x00, 0x12, 0x73, 0x76, 0x00,
0x06, 0x4c, 0x00, 0x12, 0x43, 0x23, 0x03, 0x0f, 0x4e, 0x00,
0x17, 0x01, 0x40, 0x00, 0x5b, 0x00, 0x62, 0x6f, 0x74, 0x68,
0x59, 0x00, 0x00, 0x42, 0x00, 0x06, 0x01, 0x02, 0x12, 0x74,
0x7c, 0x05, 0x01, 0xc5, 0x05, 0x41, 0x28, 0x41, 0x6c, 0x6c,
0x54, 0x00, 0x22, 0x61, 0x63, 0x0f, 0x06, 0x83, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x30, 0x04, 0x11, 0x63,
0xf8, 0x03, 0x32, 0x32, 0x2e, 0x31, 0xff, 0x04, 0x00, 0xc8,
0x01, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0x65, 0x2e, 0x29, 0xd3, 0x03, 0x13, 0x32, 0xd3, 0x03, 0xb1,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
0x20, 0x88, 0x04, 0x46, 0x65, 0x73, 0x65, 0x00, 0x14, 0x00,
0x02, 0x41, 0x00, 0x04, 0x3c, 0x00, 0x51, 0x00, 0x66, 0x72,
0x6f, 0x6d, 0x79, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74,
0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x6f,
0x00, 0x03, 0x98, 0x04, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65,
0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xab, 0x00, 0x91, 0x57,
0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x3c, 0x03,
0x51, 0x00, 0x00, 0x53, 0x69, 0x7a, 0x04, 0x07, 0x01, 0x58,
0x07, 0x24, 0x69, 0x6e, 0xe1, 0x00, 0x00, 0x2b, 0x00, 0xc4,
0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79,
0x00, 0x00, 0x47, 0x01, 0x02, 0x4b, 0x05, 0x16, 0x64, 0x1a,
0x00, 0x04, 0x38, 0x05, 0x83, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x64, 0x35, 0x05, 0x57, 0x2e, 0x00, 0x4d, 0x6f,
0x72, 0x29, 0x00, 0x03, 0x17, 0x00, 0x70, 0x73, 0x00, 0x72,
0x65, 0x71, 0x75, 0x69, 0x2d, 0x07, 0x00, 0x1f, 0x00, 0xc2,
0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x00, 0x64, 0x65,
0x64, 0x75, 0x3a, 0x01, 0x02, 0x9a, 0x06, 0x21, 0x61, 0x74,
0xab, 0x01, 0x20, 0x65, 0x6e, 0xa5, 0x06, 0x15, 0x6e, 0xa4,
0x07, 0x06, 0xf8, 0x00, 0x07, 0x81, 0x00, 0x55, 0x6c, 0x65,
0x76, 0x65, 0x6c, 0x58, 0x00, 0xb0, 0x73, 0x00, 0x67, 0x75,
0x65, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x6b, 0x06, 0x04, 0xe0,
0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69,
0x6e, 0x67, 0x2e, 0x00,
};
const unsigned short help_text_len = 2140;
const unsigned short help_text_words = 400;
const unsigned short help_text_len = 2158;
const unsigned short help_text_words = 401;
const char quick_help_text[] = "Place a tent next to each tree.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,239 +6,261 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 216, TEXT_CENTER | C_RED },
{ 291, TEXT_UNDERLINE },
{ 588, TEXT_CENTER | C_RED },
{ 605, TEXT_UNDERLINE },
{ 637, TEXT_UNDERLINE },
{ 217, TEXT_CENTER | C_RED },
{ 292, TEXT_UNDERLINE },
{ 589, TEXT_CENTER | C_RED },
{ 606, TEXT_UNDERLINE },
{ 638, TEXT_UNDERLINE },
{ 677, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 3541 comp 2203 ratio 0.622141 level 10 saved 1338 */
/* orig 3906 comp 2412 ratio 0.617512 level 10 saved 1494 */
const char help_text[] = {
0xf4, 0x26, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfd, 0x06, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x31, 0x3a, 0x20, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x73,
0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61,
0x76, 0x65, 0x00, 0x61, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72,
0x65, 0x00, 0x67, 0x72, 0x69, 0x64, 0x2e, 0x00, 0x4f, 0x6e,
0x00, 0x65, 0x61, 0x63, 0x68, 0x15, 0x00, 0x52, 0x6f, 0x66,
0x00, 0x74, 0x68, 0x1c, 0x00, 0xf0, 0x03, 0x00, 0x79, 0x6f,
0x75, 0x00, 0x63, 0x61, 0x6e, 0x00, 0x62, 0x75, 0x69, 0x6c,
0x64, 0x00, 0x61, 0x00, 0x74, 0x4d, 0x00, 0xf1, 0x14, 0x2c,
0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x69, 0x74, 0x73, 0x00,
0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x72, 0x61, 0x6e,
0x67, 0x69, 0x6e, 0x67, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00,
0x31, 0x00, 0x74, 0x6f, 0x42, 0x00, 0x39, 0x73, 0x69, 0x7a,
0x4e, 0x00, 0x81, 0x2e, 0x00, 0x41, 0x72, 0x6f, 0x75, 0x6e,
0x64, 0x11, 0x00, 0x3a, 0x65, 0x64, 0x67, 0x6b, 0x00, 0x00,
0x7b, 0x00, 0xf2, 0x04, 0x73, 0x6f, 0x6d, 0x65, 0x00, 0x6e,
0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x00, 0x63, 0x6c, 0x75,
0x65, 0x73, 0x2e, 0xb8, 0x00, 0x90, 0x72, 0x00, 0x74, 0x61,
0x73, 0x6b, 0x00, 0x69, 0x73, 0x5c, 0x00, 0x09, 0x8d, 0x00,
0x93, 0x00, 0x6f, 0x6e, 0x00, 0x65, 0x76, 0x65, 0x72, 0x79,
0xbf, 0x00, 0xf0, 0x0c, 0x2c, 0x00, 0x69, 0x6e, 0x00, 0x73,
0x75, 0x63, 0x68, 0x00, 0x61, 0x00, 0x77, 0x61, 0x79, 0x00,
0x74, 0x68, 0x61, 0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00,
0x45, 0xe4, 0x00, 0xc3, 0x72, 0x6f, 0x77, 0x00, 0x63, 0x6f,
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x38, 0x00, 0x84, 0x70,
0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0xcd, 0x00, 0x25,
0x6f, 0x66, 0x5a, 0x00, 0x26, 0x63, 0x65, 0x3a, 0x00, 0x6f,
0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x3d, 0x00, 0x24, 0x08,
0xd4, 0x00, 0xa1, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x65, 0x73, 0xfd, 0x00, 0x65, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x39, 0x00, 0x11, 0x73, 0xb2, 0x00, 0x02, 0x75,
0x01, 0x91, 0x65, 0x00, 0x73, 0x65, 0x65, 0x6e, 0x00, 0x69,
0x66, 0x88, 0x01, 0x74, 0x6c, 0x6f, 0x6f, 0x6b, 0x00, 0x69,
0x6e, 0x5d, 0x01, 0x02, 0xad, 0x01, 0x01, 0x72, 0x01, 0x01,
0x32, 0x00, 0xf0, 0x01, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x2c, 0x00, 0x61, 0x73, 0x73, 0x75, 0x6d,
0x90, 0x01, 0x01, 0x19, 0x00, 0x74, 0x73, 0x68, 0x6f, 0x72,
0x74, 0x65, 0x72, 0x5f, 0x00, 0x00, 0x36, 0x00, 0x50, 0x68,
0x69, 0x64, 0x64, 0x65, 0x61, 0x00, 0x20, 0x68, 0x69, 0x8f,
0x01, 0x31, 0x61, 0x6c, 0x6c, 0xb2, 0x00, 0x00, 0x6f, 0x01,
0xa2, 0x46, 0x6f, 0x72, 0x00, 0x65, 0x78, 0x61, 0x6d, 0x70,
0x6c, 0x4b, 0x01, 0x51, 0x61, 0x00, 0x35, 0x78, 0x35, 0xa2,
0x01, 0x32, 0x2c, 0x00, 0x61, 0xc0, 0x00, 0xf3, 0x04, 0x6d,
0x61, 0x72, 0x6b, 0x65, 0x64, 0x00, 0x60, 0x35, 0x27, 0x00,
0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0xb6, 0x00,
0x00, 0x99, 0x00, 0x43, 0x66, 0x69, 0x76, 0x65, 0x04, 0x01,
0x02, 0x14, 0x01, 0xd0, 0x73, 0x00, 0x6d, 0x75, 0x73, 0x74,
0x00, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x53, 0x00, 0x70,
0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0xa1, 0x00, 0xf1,
0x01, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x00, 0x28, 0x6f, 0x74,
0x68, 0x65, 0x72, 0x77, 0x69, 0x73, 0x65, 0xe9, 0x00, 0x90,
0x77, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x6e, 0x6f, 0x74, 0x02,
0x01, 0x30, 0x61, 0x62, 0x6c, 0x4f, 0x00, 0x00, 0x0a, 0x01,
0x47, 0x00, 0x61, 0x6c, 0x6c, 0x5f, 0x00, 0x70, 0x73, 0x29,
0x2c, 0x00, 0x77, 0x68, 0x65, 0x4b, 0x00, 0x0c, 0x9a, 0x00,
0x1f, 0x31, 0x9a, 0x00, 0x02, 0x01, 0xe8, 0x00, 0x23, 0x73,
0x74, 0x9d, 0x00, 0x10, 0x28, 0x13, 0x00, 0x25, 0x6f, 0x6e,
0x35, 0x00, 0x22, 0x35, 0x29, 0xa8, 0x00, 0x30, 0x63, 0x6f,
0x6d, 0xc5, 0x00, 0x30, 0x72, 0x73, 0x74, 0x7c, 0x02, 0x51,
0x49, 0x6e, 0x00, 0x68, 0x61, 0xa5, 0x00, 0xf2, 0x03, 0x6f,
0x72, 0x00, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x00, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x73, 0x2c, 0xaf, 0x02, 0x03,
0x57, 0x01, 0x41, 0x77, 0x69, 0x6c, 0x6c, 0xb2, 0x01, 0xc1,
0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x00, 0x66,
0x6f, 0x72, 0xcf, 0x00, 0x92, 0x61, 0x73, 0x00, 0x77, 0x65,
0x6c, 0x6c, 0x00, 0x61, 0xf0, 0x01, 0x01, 0xd7, 0x02, 0x1a,
0x00, 0x09, 0x03, 0x52, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x4f,
0x00, 0x01, 0x18, 0x03, 0x02, 0x24, 0x00, 0x30, 0x6d, 0x61,
0x79, 0x52, 0x00, 0x30, 0x6d, 0x69, 0x73, 0x2c, 0x01, 0x00,
0x8e, 0x00, 0x43, 0x54, 0x68, 0x69, 0x73, 0x7f, 0x00, 0x03,
0x50, 0x01, 0x10, 0x73, 0x00, 0x03, 0x00, 0x47, 0x00, 0x60,
0x77, 0x65, 0x62, 0x00, 0x75, 0x6e, 0xa9, 0x00, 0xb0, 0x76,
0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x00, 0x6e, 0x61, 0x6d,
0xa5, 0x00, 0xf2, 0x21, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63,
0x75, 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x00, 0x60, 0x53, 0x6b,
0x79, 0x73, 0x63, 0x72, 0x61, 0x70, 0x65, 0x72, 0x73, 0x27,
0x2c, 0x00, 0x62, 0x75, 0x74, 0x00, 0x49, 0x00, 0x64, 0x6f,
0x6e, 0x27, 0x74, 0x00, 0x6b, 0x6e, 0x6f, 0x77, 0x00, 0x77,
0x68, 0x6f, 0xfc, 0x00, 0xb1, 0x00, 0x69, 0x6e, 0x76, 0x65,
0x6e, 0x74, 0x65, 0x64, 0x00, 0x69, 0x08, 0x01, 0x44, 0x33,
0x31, 0x2e, 0x31, 0x4b, 0x04, 0x00, 0x03, 0x03, 0x31, 0x72,
0x6f, 0x6c, 0x54, 0x04, 0x12, 0x54, 0xfe, 0x00, 0x40, 0x73,
0x68, 0x61, 0x72, 0xb2, 0x00, 0x00, 0x78, 0x03, 0x21, 0x6f,
0x66, 0x1b, 0x04, 0x03, 0x26, 0x00, 0x72, 0x00, 0x73, 0x79,
0x73, 0x74, 0x65, 0x6d, 0x33, 0x04, 0xd1, 0x53, 0x6f, 0x6c,
0x6f, 0x2c, 0x00, 0x55, 0x6e, 0x65, 0x71, 0x75, 0x61, 0x6c,
0xf4, 0x00, 0x51, 0x4b, 0x65, 0x65, 0x6e, 0x2e, 0x48, 0x00,
0x53, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x50, 0x00, 0xe1, 0x2c,
0x00, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c,
0x69, 0x63, 0x6b, 0xe0, 0x00, 0x51, 0x6d, 0x6f, 0x75, 0x73,
0x65, 0x91, 0x02, 0x84, 0x6e, 0x79, 0x00, 0x65, 0x6d, 0x70,
0x74, 0x79, 0x03, 0x03, 0x12, 0x61, 0x49, 0x01, 0x50, 0x6e,
0x00, 0x74, 0x79, 0x70, 0xdc, 0x04, 0x54, 0x64, 0x69, 0x67,
0x69, 0x74, 0x17, 0x01, 0x80, 0x6b, 0x65, 0x79, 0x62, 0x6f,
0x61, 0x72, 0x64, 0x43, 0x02, 0x10, 0x66, 0xa3, 0x01, 0x02,
0x13, 0x03, 0x02, 0x3a, 0x00, 0x01, 0x94, 0x00, 0x05, 0x48,
0x04, 0x03, 0x8c, 0x04, 0x43, 0x69, 0x76, 0x65, 0x6e, 0xba,
0x02, 0x32, 0x2e, 0x00, 0x49, 0x7b, 0x03, 0x30, 0x6d, 0x61,
0x6b, 0x5a, 0x00, 0x8e, 0x6d, 0x69, 0x73, 0x74, 0x61, 0x6b,
0x65, 0x2c, 0x97, 0x00, 0x02, 0x6d, 0x00, 0x50, 0x69, 0x6e,
0x63, 0x6f, 0x72, 0x86, 0x03, 0x08, 0x9b, 0x00, 0xa1, 0x70,
0x72, 0x65, 0x73, 0x73, 0x00, 0x53, 0x70, 0x61, 0x63, 0xc8,
0x02, 0x21, 0x63, 0x6c, 0x06, 0x03, 0xc0, 0x74, 0x00, 0x61,
0x67, 0x61, 0x69, 0x6e, 0x00, 0x28, 0x6f, 0x72, 0x00, 0x42,
0x00, 0x00, 0x3f, 0x00, 0xd1, 0x55, 0x6e, 0x64, 0x6f, 0x00,
0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x29, 0x7d, 0x02,
0x02, 0x7e, 0x00, 0x10, 0x72, 0x8c, 0x00, 0x12, 0x2d, 0x74,
0x00, 0x01, 0x92, 0x03, 0x0f, 0xf9, 0x00, 0x04, 0x02, 0x4a,
0x04, 0x12, 0x2c, 0xe3, 0x00, 0x03, 0x57, 0x04, 0x04, 0x97,
0x02, 0x00, 0xcc, 0x01, 0x10, 0x72, 0xce, 0x01, 0x18, 0x6e,
0x3e, 0x04, 0x01, 0x3a, 0x03, 0x71, 0x60, 0x70, 0x65, 0x6e,
0x63, 0x69, 0x6c, 0x08, 0x03, 0x43, 0x27, 0x2e, 0x00, 0x59,
0xf3, 0x05, 0x01, 0x2a, 0x06, 0x07, 0x1b, 0x00, 0x11, 0x73,
0xd1, 0x02, 0x74, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c,
0xb7, 0x04, 0x15, 0x73, 0x51, 0x00, 0x24, 0x61, 0x6d, 0x56,
0x00, 0x34, 0x2e, 0x00, 0x41, 0x60, 0x00, 0x03, 0x2d, 0x05,
0x00, 0xea, 0x03, 0x04, 0x67, 0x01, 0x30, 0x63, 0x61, 0x6e,
0xda, 0x03, 0x44, 0x61, 0x6c, 0x73, 0x6f, 0x1f, 0x00, 0x09,
0x66, 0x00, 0x02, 0xe7, 0x02, 0x30, 0x65, 0x00, 0x67, 0x51,
0x00, 0xd0, 0x70, 0x61, 0x79, 0x73, 0x00, 0x6e, 0x6f, 0x00,
0x61, 0x74, 0x74, 0x65, 0x6e, 0xdc, 0x04, 0x00, 0x42, 0x01,
0x08, 0x2e, 0x00, 0x00, 0x84, 0x03, 0x00, 0xaf, 0x04, 0x60,
0x63, 0x74, 0x6c, 0x79, 0x00, 0x77, 0xf8, 0x00, 0x00, 0x31,
0x01, 0x03, 0x51, 0x01, 0x11, 0x6d, 0xb2, 0x00, 0x50, 0x69,
0x73, 0x00, 0x75, 0x70, 0x38, 0x00, 0x45, 0x79, 0x6f, 0x75,
0x3a, 0xd1, 0x06, 0x05, 0x23, 0x00, 0x95, 0x61, 0x73, 0x00,
0x72, 0x65, 0x6d, 0x69, 0x6e, 0x64, 0x7b, 0x05, 0x17, 0x61,
0x33, 0x03, 0x04, 0xc9, 0x00, 0x42, 0x6e, 0x65, 0x65, 0x64,
0x7c, 0x06, 0x50, 0x65, 0x00, 0x72, 0x65, 0x2d, 0x21, 0x05,
0x42, 0x69, 0x6e, 0x65, 0x64, 0xe6, 0x05, 0x00, 0x54, 0x00,
0x01, 0x3e, 0x03, 0x30, 0x6d, 0x6f, 0x72, 0xb1, 0x04, 0x2b,
0x6f, 0x75, 0x45, 0x00, 0x04, 0x99, 0x01, 0x2f, 0x6f, 0x72,
0x80, 0x00, 0x02, 0x54, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x80,
0x02, 0x05, 0x51, 0x06, 0x07, 0x61, 0x01, 0x13, 0x61, 0x96,
0x02, 0x04, 0xe2, 0x06, 0x20, 0x6f, 0x72, 0x06, 0x03, 0x20,
0x74, 0x68, 0x58, 0x01, 0x23, 0x65, 0x6c, 0x36, 0x05, 0x93,
0x66, 0x65, 0x65, 0x6c, 0x00, 0x6c, 0x69, 0x6b, 0x65, 0x4f,
0x03, 0x41, 0x65, 0x72, 0x61, 0x73, 0xeb, 0x07, 0x49, 0x69,
0x6e, 0x67, 0x6c, 0xca, 0x01, 0x1c, 0x2c, 0x52, 0x02, 0x08,
0x12, 0x02, 0x22, 0x6e, 0x64, 0x4f, 0x02, 0x05, 0xd5, 0x01,
0x03, 0x49, 0x02, 0x01, 0xaf, 0x02, 0x00, 0x5b, 0x00, 0x3a,
0x41, 0x6c, 0x6c, 0x17, 0x02, 0x09, 0x93, 0x02, 0x22, 0x72,
0x65, 0x79, 0x00, 0x10, 0x64, 0x9b, 0x05, 0x12, 0x6e, 0xb8,
0x06, 0x24, 0x65, 0x66, 0x6c, 0x00, 0x05, 0x5e, 0x00, 0x18,
0x61, 0x14, 0x01, 0x0f, 0x2a, 0x00, 0x05, 0x02, 0x3a, 0x03,
0x10, 0x73, 0x3a, 0x03, 0x36, 0x2e, 0x00, 0x52, 0xb3, 0x00,
0x01, 0x4f, 0x02, 0x04, 0x20, 0x00, 0x00, 0x0d, 0x00, 0x01,
0x23, 0x00, 0x02, 0xeb, 0x02, 0x01, 0x58, 0x02, 0x02, 0xfb,
0x00, 0x0c, 0x56, 0x02, 0x12, 0x41, 0xc2, 0x02, 0x02, 0x84,
0x04, 0x01, 0x8a, 0x05, 0x50, 0x75, 0x72, 0x73, 0x6f, 0x72,
0x23, 0x04, 0x14, 0x73, 0x70, 0x07, 0x22, 0x75, 0x73, 0x24,
0x03, 0x61, 0x63, 0x6f, 0x6e, 0x6a, 0x75, 0x6e, 0x4f, 0x07,
0x02, 0x26, 0x04, 0x00, 0x30, 0x00, 0x02, 0x59, 0x04, 0x01,
0x2f, 0x00, 0x01, 0x91, 0x06, 0x15, 0x74, 0xa4, 0x01, 0x2b,
0x6f, 0x72, 0x6e, 0x00, 0x3d, 0x55, 0x73, 0x65, 0x63, 0x00,
0x51, 0x74, 0x6f, 0x00, 0x6d, 0x6f, 0x7e, 0x09, 0x51, 0x68,
0x69, 0x67, 0x68, 0x6c, 0x2f, 0x08, 0x16, 0x61, 0x08, 0x06,
0x03, 0x63, 0x07, 0x2a, 0x6e, 0x64, 0xc8, 0x04, 0x22, 0x74,
0x6f, 0xbc, 0x03, 0x00, 0x33, 0x04, 0x03, 0xab, 0x01, 0x05,
0x3f, 0x00, 0x25, 0x65, 0x64, 0x73, 0x03, 0x14, 0x50, 0x0c,
0x01, 0x50, 0x72, 0x65, 0x74, 0x75, 0x72, 0x28, 0x03, 0x5a,
0x67, 0x67, 0x6c, 0x65, 0x73, 0x30, 0x00, 0x02, 0x3e, 0x08,
0x51, 0x61, 0x00, 0x6d, 0x6f, 0x64, 0xb4, 0x04, 0x55, 0x77,
0x68, 0x69, 0x63, 0x68, 0x93, 0x02, 0x02, 0x67, 0x00, 0x20,
0x6f, 0x72, 0x10, 0x03, 0x2e, 0x6f, 0x76, 0x40, 0x01, 0x05,
0x63, 0x00, 0x12, 0x4d, 0x6b, 0x01, 0x01, 0x4f, 0x05, 0x01,
0xfd, 0x01, 0x41, 0x66, 0x75, 0x6c, 0x6c, 0x10, 0x01, 0x2d,
0x6f, 0x66, 0x1b, 0x02, 0x08, 0x9c, 0x09, 0x03, 0xa9, 0x08,
0x31, 0x6f, 0x65, 0x73, 0xde, 0x07, 0x03, 0x8c, 0x0a, 0x10,
0x6d, 0x03, 0x04, 0x02, 0xed, 0x00, 0x23, 0x69, 0x6e, 0x6f,
0x06, 0x38, 0x4c, 0x65, 0x66, 0xed, 0x01, 0x02, 0xde, 0x07,
0x01, 0x76, 0x00, 0x00, 0x59, 0x00, 0x01, 0x3f, 0x05, 0x30,
0x73, 0x00, 0x64, 0xbe, 0x07, 0x60, 0x28, 0x67, 0x72, 0x65,
0x79, 0x00, 0xf1, 0x05, 0x31, 0x75, 0x74, 0x29, 0x4f, 0x02,
0x24, 0x75, 0x6e, 0x24, 0x00, 0x10, 0x69, 0x8a, 0x06, 0x00,
0x01, 0x04, 0x73, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79,
0xeb, 0x07, 0x60, 0x2e, 0x00, 0x48, 0x6f, 0x6c, 0x64, 0x59,
0x00, 0x13, 0x43, 0xa4, 0x06, 0x00, 0x17, 0x02, 0x4a, 0x68,
0x69, 0x66, 0x74, 0x57, 0x02, 0x50, 0x61, 0x6e, 0x00, 0x61,
0x72, 0x31, 0x0a, 0x31, 0x6b, 0x65, 0x79, 0x5a, 0x03, 0x01,
0xa2, 0x08, 0x02, 0xda, 0x00, 0x00, 0x86, 0x06, 0x01, 0x95,
0x00, 0x27, 0x69, 0x6e, 0x37, 0x06, 0x05, 0x84, 0x09, 0x00,
0xc4, 0x00, 0x10, 0x28, 0x2a, 0x03, 0x00, 0x1c, 0x00, 0x11,
0x61, 0x13, 0x00, 0x15, 0x73, 0xf8, 0x09, 0x11, 0x64, 0xa3,
0x0a, 0x12, 0x65, 0x5e, 0x02, 0x31, 0x32, 0x2e, 0x31, 0x36,
0x03, 0x01, 0xb9, 0x02, 0x50, 0x61, 0x76, 0x61, 0x69, 0x6c,
0xf2, 0x08, 0x22, 0x2e, 0x29, 0x74, 0x07, 0x14, 0x32, 0x74,
0x07, 0x73, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0xca,
0x0b, 0x30, 0x54, 0x68, 0x65, 0xe1, 0x02, 0x05, 0x14, 0x00,
0x02, 0x42, 0x00, 0x04, 0x3d, 0x00, 0x04, 0x15, 0x0a, 0xf1,
0x01, 0x65, 0x00, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x70, 0x00, 0x03,
0x18, 0x07, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0xac, 0x00, 0x51, 0x47, 0x72, 0x69,
0x64, 0x20, 0xb0, 0x0b, 0x33, 0x00, 0x00, 0x53, 0xc2, 0x08,
0x1f, 0x73, 0xc5, 0x0b, 0x04, 0x11, 0x4c, 0xc8, 0x05, 0x32,
0x6c, 0x69, 0x6d, 0x5c, 0x01, 0x68, 0x33, 0x3b, 0x00, 0x75,
0x70, 0x70, 0x12, 0x00, 0x74, 0x39, 0x00, 0x28, 0x62, 0x65,
0x63, 0x61, 0xd7, 0x06, 0x20, 0x75, 0x73, 0xbe, 0x02, 0x00,
0x5d, 0x02, 0x11, 0x66, 0xa7, 0x03, 0x01, 0xde, 0x09, 0x21,
0x62, 0x65, 0x68, 0x09, 0x01, 0x32, 0x05, 0x40, 0x64, 0x69,
0x66, 0x66, 0x2a, 0x05, 0x12, 0x74, 0x6b, 0x03, 0x11, 0x60,
0x0c, 0x02, 0x70, 0x73, 0x27, 0x00, 0x62, 0x69, 0x67, 0x67,
0xb8, 0x0a, 0x61, 0x68, 0x61, 0x6e, 0x00, 0x39, 0x21, 0x12,
0x07, 0x14, 0x44, 0x2b, 0x00, 0x34, 0x79, 0x00, 0x00, 0xbe,
0x01, 0x13, 0x73, 0x9d, 0x03, 0x05, 0x1a, 0x00, 0x04, 0xae,
0x00, 0x50, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x25, 0x03, 0x02,
0x32, 0x09, 0x70, 0x2e, 0x00, 0x41, 0x74, 0x00, 0x55, 0x6e,
0x30, 0x0a, 0x21, 0x6f, 0x6e, 0x28, 0x01, 0x53, 0x6c, 0x65,
0x76, 0x65, 0x6c, 0xc7, 0x09, 0x72, 0x62, 0x61, 0x63, 0x6b,
0x74, 0x72, 0x61, 0x71, 0x02, 0x04, 0x36, 0x07, 0x82, 0x72,
0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2a, 0x09, 0x01,
0x0f, 0x01, 0x31, 0x6f, 0x6c, 0x75, 0x48, 0x01, 0x21, 0x73,
0x68, 0xc8, 0x00, 0x23, 0x73, 0x74, 0x2b, 0x00, 0x71, 0x75,
0x6e, 0x69, 0x71, 0x75, 0x65, 0x2e, 0xbc, 0x06, 0x33, 0x72,
0x65, 0x6d, 0xf6, 0x06, 0x01, 0x62, 0x00, 0x14, 0x73, 0x48,
0x00, 0x07, 0xfa, 0x0a, 0x00, 0xdc, 0x08, 0x10, 0x6f, 0x65,
0x0b, 0x22, 0x78, 0x00, 0x91, 0x00, 0x01, 0xaf, 0x0b, 0x00,
0x02, 0x02, 0x30, 0x6f, 0x69, 0x64, 0x1a, 0x03, 0x03, 0x10,
0x00, 0xb0, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63,
0x6b, 0x2e, 0x00,
0x20, 0x00, 0x2d, 0x01, 0x00, 0xf4, 0x13, 0x00, 0x00, 0x00,
0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61,
0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x00, 0x67, 0x72,
0x69, 0x64, 0x2e, 0x00, 0x4f, 0x6e, 0x00, 0x65, 0x61, 0x63,
0x68, 0x15, 0x00, 0x52, 0x6f, 0x66, 0x00, 0x74, 0x68, 0x1c,
0x00, 0xf0, 0x03, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x63, 0x61,
0x6e, 0x00, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x00, 0x61, 0x00,
0x74, 0x60, 0x00, 0xf1, 0x14, 0x2c, 0x00, 0x77, 0x69, 0x74,
0x68, 0x00, 0x69, 0x74, 0x73, 0x00, 0x68, 0x65, 0x69, 0x67,
0x68, 0x74, 0x00, 0x72, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67,
0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x31, 0x00, 0x74, 0x6f,
0x42, 0x00, 0x39, 0x73, 0x69, 0x7a, 0x4e, 0x00, 0x81, 0x2e,
0x00, 0x41, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x11, 0x00, 0x3a,
0x65, 0x64, 0x67, 0x6b, 0x00, 0x00, 0x7b, 0x00, 0xf2, 0x04,
0x73, 0x6f, 0x6d, 0x65, 0x00, 0x6e, 0x75, 0x6d, 0x65, 0x72,
0x69, 0x63, 0x00, 0x63, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0xb8,
0x00, 0x90, 0x72, 0x00, 0x74, 0x61, 0x73, 0x6b, 0x00, 0x69,
0x73, 0x5c, 0x00, 0x09, 0x8d, 0x00, 0x93, 0x00, 0x6f, 0x6e,
0x00, 0x65, 0x76, 0x65, 0x72, 0x79, 0xbf, 0x00, 0xf0, 0x0c,
0x2c, 0x00, 0x69, 0x6e, 0x00, 0x73, 0x75, 0x63, 0x68, 0x00,
0x61, 0x00, 0x77, 0x61, 0x79, 0x00, 0x74, 0x68, 0x61, 0x74,
0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x45, 0xe4, 0x00, 0xc3,
0x72, 0x6f, 0x77, 0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
0x6e, 0x73, 0x38, 0x00, 0x84, 0x70, 0x6f, 0x73, 0x73, 0x69,
0x62, 0x6c, 0x65, 0xcd, 0x00, 0x25, 0x6f, 0x66, 0x5a, 0x00,
0x26, 0x63, 0x65, 0x3a, 0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75,
0x6d, 0x6e, 0x3d, 0x00, 0x24, 0x08, 0xd4, 0x00, 0xa1, 0x00,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0xfd,
0x00, 0x65, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x39, 0x00,
0x11, 0x73, 0xb2, 0x00, 0x02, 0x75, 0x01, 0x91, 0x65, 0x00,
0x73, 0x65, 0x65, 0x6e, 0x00, 0x69, 0x66, 0x88, 0x01, 0x74,
0x6c, 0x6f, 0x6f, 0x6b, 0x00, 0x69, 0x6e, 0x5d, 0x01, 0x02,
0xad, 0x01, 0x01, 0x72, 0x01, 0x01, 0x32, 0x00, 0xf0, 0x01,
0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2c,
0x00, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x90, 0x01, 0x01, 0x19,
0x00, 0x74, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x5f,
0x00, 0x00, 0x36, 0x00, 0x50, 0x68, 0x69, 0x64, 0x64, 0x65,
0x61, 0x00, 0x20, 0x68, 0x69, 0x8f, 0x01, 0x31, 0x61, 0x6c,
0x6c, 0xb2, 0x00, 0x00, 0x6f, 0x01, 0xa2, 0x46, 0x6f, 0x72,
0x00, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x4b, 0x01, 0x51,
0x61, 0x00, 0x35, 0x78, 0x35, 0xa2, 0x01, 0x32, 0x2c, 0x00,
0x61, 0xc0, 0x00, 0xf3, 0x04, 0x6d, 0x61, 0x72, 0x6b, 0x65,
0x64, 0x00, 0x60, 0x35, 0x27, 0x00, 0x69, 0x6e, 0x64, 0x69,
0x63, 0x61, 0x74, 0x65, 0xb6, 0x00, 0x00, 0x99, 0x00, 0x43,
0x66, 0x69, 0x76, 0x65, 0x04, 0x01, 0x02, 0x14, 0x01, 0xd0,
0x73, 0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x61, 0x70, 0x70,
0x65, 0x61, 0x72, 0x53, 0x00, 0x70, 0x69, 0x6e, 0x63, 0x72,
0x65, 0x61, 0x73, 0xa1, 0x00, 0xf1, 0x01, 0x6f, 0x72, 0x64,
0x65, 0x72, 0x00, 0x28, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x77,
0x69, 0x73, 0x65, 0xe9, 0x00, 0x90, 0x77, 0x6f, 0x75, 0x6c,
0x64, 0x00, 0x6e, 0x6f, 0x74, 0x02, 0x01, 0x30, 0x61, 0x62,
0x6c, 0x4f, 0x00, 0x00, 0x0a, 0x01, 0x47, 0x00, 0x61, 0x6c,
0x6c, 0x5f, 0x00, 0x70, 0x73, 0x29, 0x2c, 0x00, 0x77, 0x68,
0x65, 0x4b, 0x00, 0x0c, 0x9a, 0x00, 0x1f, 0x31, 0x9a, 0x00,
0x02, 0x01, 0xe8, 0x00, 0x23, 0x73, 0x74, 0x9d, 0x00, 0x10,
0x28, 0x13, 0x00, 0x25, 0x6f, 0x6e, 0x35, 0x00, 0x22, 0x35,
0x29, 0xa8, 0x00, 0x30, 0x63, 0x6f, 0x6d, 0xc5, 0x00, 0x30,
0x72, 0x73, 0x74, 0x7c, 0x02, 0x51, 0x49, 0x6e, 0x00, 0x68,
0x61, 0xa5, 0x00, 0xf2, 0x03, 0x6f, 0x72, 0x00, 0x6c, 0x61,
0x72, 0x67, 0x65, 0x72, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c,
0x65, 0x73, 0x2c, 0xaf, 0x02, 0x03, 0x57, 0x01, 0x41, 0x77,
0x69, 0x6c, 0x6c, 0xb2, 0x01, 0xc1, 0x70, 0x65, 0x63, 0x69,
0x66, 0x69, 0x65, 0x64, 0x00, 0x66, 0x6f, 0x72, 0xcf, 0x00,
0x92, 0x61, 0x73, 0x00, 0x77, 0x65, 0x6c, 0x6c, 0x00, 0x61,
0xf0, 0x01, 0x01, 0xd7, 0x02, 0x1a, 0x00, 0x09, 0x03, 0x52,
0x2c, 0x00, 0x61, 0x6e, 0x64, 0x4f, 0x00, 0x01, 0x18, 0x03,
0x02, 0x24, 0x00, 0x30, 0x6d, 0x61, 0x79, 0x52, 0x00, 0x30,
0x6d, 0x69, 0x73, 0x2c, 0x01, 0x00, 0x8e, 0x00, 0x43, 0x54,
0x68, 0x69, 0x73, 0x7f, 0x00, 0x03, 0x50, 0x01, 0x10, 0x73,
0x00, 0x03, 0x00, 0x47, 0x00, 0x60, 0x77, 0x65, 0x62, 0x00,
0x75, 0x6e, 0xa9, 0x00, 0xb0, 0x76, 0x61, 0x72, 0x69, 0x6f,
0x75, 0x73, 0x00, 0x6e, 0x61, 0x6d, 0xa5, 0x00, 0xf2, 0x21,
0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72,
0x6c, 0x79, 0x00, 0x60, 0x53, 0x6b, 0x79, 0x73, 0x63, 0x72,
0x61, 0x70, 0x65, 0x72, 0x73, 0x27, 0x2c, 0x00, 0x62, 0x75,
0x74, 0x00, 0x49, 0x00, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x00,
0x6b, 0x6e, 0x6f, 0x77, 0x00, 0x77, 0x68, 0x6f, 0xfc, 0x00,
0xb1, 0x00, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64,
0x00, 0x69, 0x08, 0x01, 0x44, 0x33, 0x31, 0x2e, 0x31, 0x5e,
0x04, 0x00, 0x03, 0x03, 0x50, 0x72, 0x6f, 0x6c, 0x73, 0x20,
0x92, 0x00, 0x02, 0xfe, 0x00, 0x40, 0x73, 0x68, 0x61, 0x72,
0xb2, 0x00, 0x00, 0x78, 0x03, 0x21, 0x6f, 0x66, 0x1b, 0x04,
0x03, 0x26, 0x00, 0x72, 0x00, 0x73, 0x79, 0x73, 0x74, 0x65,
0x6d, 0x33, 0x04, 0xd1, 0x53, 0x6f, 0x6c, 0x6f, 0x2c, 0x00,
0x55, 0x6e, 0x65, 0x71, 0x75, 0x61, 0x6c, 0xf4, 0x00, 0x51,
0x4b, 0x65, 0x65, 0x6e, 0x2e, 0x48, 0x00, 0x53, 0x00, 0x70,
0x6c, 0x61, 0x79, 0x50, 0x00, 0xe1, 0x2c, 0x00, 0x73, 0x69,
0x6d, 0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0xe0, 0x00, 0x51, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x91, 0x02,
0x84, 0x6e, 0x79, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x03,
0x03, 0x12, 0x61, 0x49, 0x01, 0x50, 0x6e, 0x00, 0x74, 0x79,
0x70, 0xdc, 0x04, 0x54, 0x64, 0x69, 0x67, 0x69, 0x74, 0x17,
0x01, 0x80, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64,
0x43, 0x02, 0x10, 0x66, 0xa3, 0x01, 0x02, 0x13, 0x03, 0x02,
0x3a, 0x00, 0x01, 0x94, 0x00, 0x05, 0x48, 0x04, 0x03, 0x8c,
0x04, 0x43, 0x69, 0x76, 0x65, 0x6e, 0xba, 0x02, 0x32, 0x2e,
0x00, 0x49, 0x7b, 0x03, 0x30, 0x6d, 0x61, 0x6b, 0x5a, 0x00,
0x8e, 0x6d, 0x69, 0x73, 0x74, 0x61, 0x6b, 0x65, 0x2c, 0x97,
0x00, 0x02, 0x6d, 0x00, 0x50, 0x69, 0x6e, 0x63, 0x6f, 0x72,
0x86, 0x03, 0x08, 0x9b, 0x00, 0xa1, 0x70, 0x72, 0x65, 0x73,
0x73, 0x00, 0x53, 0x70, 0x61, 0x63, 0xc8, 0x02, 0x21, 0x63,
0x6c, 0x06, 0x03, 0xc0, 0x74, 0x00, 0x61, 0x67, 0x61, 0x69,
0x6e, 0x00, 0x28, 0x6f, 0x72, 0x00, 0x42, 0x00, 0x00, 0x3f,
0x00, 0xd1, 0x55, 0x6e, 0x64, 0x6f, 0x00, 0x66, 0x65, 0x61,
0x74, 0x75, 0x72, 0x65, 0x29, 0x7d, 0x02, 0x02, 0x7e, 0x00,
0x10, 0x72, 0x8c, 0x00, 0x12, 0x2d, 0x74, 0x00, 0x01, 0x92,
0x03, 0x0f, 0xf9, 0x00, 0x04, 0x02, 0x4a, 0x04, 0x12, 0x2c,
0xe3, 0x00, 0x03, 0x57, 0x04, 0x04, 0x97, 0x02, 0x00, 0xcc,
0x01, 0x10, 0x72, 0xce, 0x01, 0x18, 0x6e, 0x3e, 0x04, 0x01,
0x3a, 0x03, 0x71, 0x60, 0x70, 0x65, 0x6e, 0x63, 0x69, 0x6c,
0x08, 0x03, 0x43, 0x27, 0x2e, 0x00, 0x59, 0xf3, 0x05, 0x01,
0x2a, 0x06, 0x07, 0x1b, 0x00, 0x11, 0x73, 0xd1, 0x02, 0x74,
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0xb7, 0x04, 0x15,
0x73, 0x51, 0x00, 0x24, 0x61, 0x6d, 0x56, 0x00, 0x34, 0x2e,
0x00, 0x41, 0x60, 0x00, 0x03, 0x2d, 0x05, 0x00, 0xea, 0x03,
0x04, 0x67, 0x01, 0x30, 0x63, 0x61, 0x6e, 0xda, 0x03, 0x44,
0x61, 0x6c, 0x73, 0x6f, 0x1f, 0x00, 0x09, 0x66, 0x00, 0x02,
0xe7, 0x02, 0x30, 0x65, 0x00, 0x67, 0x51, 0x00, 0xd0, 0x70,
0x61, 0x79, 0x73, 0x00, 0x6e, 0x6f, 0x00, 0x61, 0x74, 0x74,
0x65, 0x6e, 0xdc, 0x04, 0x00, 0x42, 0x01, 0x08, 0x2e, 0x00,
0x00, 0x84, 0x03, 0x00, 0xaf, 0x04, 0x60, 0x63, 0x74, 0x6c,
0x79, 0x00, 0x77, 0xf8, 0x00, 0x00, 0x31, 0x01, 0x03, 0x51,
0x01, 0x11, 0x6d, 0xb2, 0x00, 0x50, 0x69, 0x73, 0x00, 0x75,
0x70, 0x38, 0x00, 0x45, 0x79, 0x6f, 0x75, 0x3a, 0xd1, 0x06,
0x05, 0x23, 0x00, 0x95, 0x61, 0x73, 0x00, 0x72, 0x65, 0x6d,
0x69, 0x6e, 0x64, 0x7b, 0x05, 0x17, 0x61, 0x33, 0x03, 0x04,
0xc9, 0x00, 0x42, 0x6e, 0x65, 0x65, 0x64, 0x7c, 0x06, 0x50,
0x65, 0x00, 0x72, 0x65, 0x2d, 0x21, 0x05, 0x42, 0x69, 0x6e,
0x65, 0x64, 0xe6, 0x05, 0x00, 0x54, 0x00, 0x01, 0x3e, 0x03,
0x30, 0x6d, 0x6f, 0x72, 0xb1, 0x04, 0x2b, 0x6f, 0x75, 0x45,
0x00, 0x04, 0x99, 0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00, 0x02,
0x54, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x80, 0x02, 0x05, 0x51,
0x06, 0x07, 0x61, 0x01, 0x13, 0x61, 0x96, 0x02, 0x04, 0xe2,
0x06, 0x20, 0x6f, 0x72, 0x06, 0x03, 0x20, 0x74, 0x68, 0x58,
0x01, 0x23, 0x65, 0x6c, 0x36, 0x05, 0x93, 0x66, 0x65, 0x65,
0x6c, 0x00, 0x6c, 0x69, 0x6b, 0x65, 0x4f, 0x03, 0x41, 0x65,
0x72, 0x61, 0x73, 0xeb, 0x07, 0x49, 0x69, 0x6e, 0x67, 0x6c,
0xca, 0x01, 0x1c, 0x2c, 0x52, 0x02, 0x08, 0x12, 0x02, 0x22,
0x6e, 0x64, 0x4f, 0x02, 0x05, 0xd5, 0x01, 0x03, 0x49, 0x02,
0x01, 0xaf, 0x02, 0x00, 0x5b, 0x00, 0x3a, 0x41, 0x6c, 0x6c,
0x17, 0x02, 0x09, 0x93, 0x02, 0x22, 0x72, 0x65, 0x79, 0x00,
0x10, 0x64, 0x9b, 0x05, 0x12, 0x6e, 0xb8, 0x06, 0x24, 0x65,
0x66, 0x6c, 0x00, 0x05, 0x5e, 0x00, 0x18, 0x61, 0x14, 0x01,
0x0f, 0x2a, 0x00, 0x05, 0x02, 0x3a, 0x03, 0x10, 0x73, 0x3a,
0x03, 0x36, 0x2e, 0x00, 0x52, 0xb3, 0x00, 0x01, 0x4f, 0x02,
0x04, 0x20, 0x00, 0x00, 0x0d, 0x00, 0x01, 0x23, 0x00, 0x02,
0xeb, 0x02, 0x01, 0x58, 0x02, 0x02, 0xfb, 0x00, 0x0c, 0x56,
0x02, 0x12, 0x41, 0xc2, 0x02, 0x02, 0x84, 0x04, 0x01, 0x8a,
0x05, 0x50, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x23, 0x04, 0x14,
0x73, 0x70, 0x07, 0x22, 0x75, 0x73, 0x24, 0x03, 0x61, 0x63,
0x6f, 0x6e, 0x6a, 0x75, 0x6e, 0x4f, 0x07, 0x02, 0x26, 0x04,
0x00, 0x30, 0x00, 0x02, 0x59, 0x04, 0x01, 0x2f, 0x00, 0x01,
0x91, 0x06, 0x15, 0x74, 0xa4, 0x01, 0x2b, 0x6f, 0x72, 0x6e,
0x00, 0x3d, 0x55, 0x73, 0x65, 0x63, 0x00, 0x51, 0x74, 0x6f,
0x00, 0x6d, 0x6f, 0x7e, 0x09, 0x51, 0x68, 0x69, 0x67, 0x68,
0x6c, 0x2f, 0x08, 0x16, 0x61, 0x08, 0x06, 0x03, 0x63, 0x07,
0x2a, 0x6e, 0x64, 0xc8, 0x04, 0x22, 0x74, 0x6f, 0xbc, 0x03,
0x00, 0x33, 0x04, 0x03, 0xab, 0x01, 0x05, 0x3f, 0x00, 0x25,
0x65, 0x64, 0x73, 0x03, 0x14, 0x50, 0x0c, 0x01, 0x50, 0x72,
0x65, 0x74, 0x75, 0x72, 0x28, 0x03, 0x5a, 0x67, 0x67, 0x6c,
0x65, 0x73, 0x30, 0x00, 0x02, 0x3e, 0x08, 0x51, 0x61, 0x00,
0x6d, 0x6f, 0x64, 0xb4, 0x04, 0x55, 0x77, 0x68, 0x69, 0x63,
0x68, 0x93, 0x02, 0x02, 0x67, 0x00, 0x20, 0x6f, 0x72, 0x10,
0x03, 0x2e, 0x6f, 0x76, 0x40, 0x01, 0x05, 0x63, 0x00, 0x12,
0x4d, 0x6b, 0x01, 0x01, 0x4f, 0x05, 0x01, 0xfd, 0x01, 0x41,
0x66, 0x75, 0x6c, 0x6c, 0x10, 0x01, 0x2d, 0x6f, 0x66, 0x1b,
0x02, 0x08, 0x9c, 0x09, 0x03, 0xa9, 0x08, 0x31, 0x6f, 0x65,
0x73, 0xde, 0x07, 0x03, 0x8c, 0x0a, 0x10, 0x6d, 0x03, 0x04,
0x02, 0xed, 0x00, 0x23, 0x69, 0x6e, 0x6f, 0x06, 0x38, 0x4c,
0x65, 0x66, 0xed, 0x01, 0x02, 0xde, 0x07, 0x01, 0x76, 0x00,
0x00, 0x59, 0x00, 0x01, 0x3f, 0x05, 0x30, 0x73, 0x00, 0x64,
0xbe, 0x07, 0x60, 0x28, 0x67, 0x72, 0x65, 0x79, 0x00, 0xf1,
0x05, 0x31, 0x75, 0x74, 0x29, 0x4f, 0x02, 0x24, 0x75, 0x6e,
0x24, 0x00, 0x10, 0x69, 0x8a, 0x06, 0x00, 0x01, 0x04, 0x73,
0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0xeb, 0x07, 0x60,
0x2e, 0x00, 0x48, 0x6f, 0x6c, 0x64, 0x59, 0x00, 0x13, 0x43,
0xa4, 0x06, 0x00, 0x17, 0x02, 0x4a, 0x68, 0x69, 0x66, 0x74,
0x57, 0x02, 0x50, 0x61, 0x6e, 0x00, 0x61, 0x72, 0x31, 0x0a,
0x31, 0x6b, 0x65, 0x79, 0x5a, 0x03, 0x01, 0xa2, 0x08, 0x02,
0xda, 0x00, 0x00, 0x86, 0x06, 0x01, 0x95, 0x00, 0x27, 0x69,
0x6e, 0x37, 0x06, 0x05, 0x84, 0x09, 0x00, 0xc4, 0x00, 0x10,
0x28, 0x2a, 0x03, 0x00, 0x1c, 0x00, 0x11, 0x61, 0x13, 0x00,
0x15, 0x73, 0xf8, 0x09, 0x11, 0x64, 0xa3, 0x0a, 0x12, 0x65,
0x5e, 0x02, 0x31, 0x32, 0x2e, 0x31, 0x36, 0x03, 0x01, 0xb9,
0x02, 0x50, 0x61, 0x76, 0x61, 0x69, 0x6c, 0xf2, 0x08, 0x22,
0x2e, 0x29, 0x74, 0x07, 0x14, 0x32, 0x74, 0x07, 0x71, 0x70,
0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0xdd, 0x0b, 0x01, 0x21,
0x05, 0x00, 0xe1, 0x02, 0x05, 0x14, 0x00, 0x02, 0x42, 0x00,
0x04, 0x3d, 0x00, 0x04, 0x15, 0x0a, 0xf1, 0x01, 0x65, 0x00,
0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e,
0x27, 0x00, 0x6f, 0x70, 0x70, 0x00, 0x03, 0x18, 0x07, 0xb0,
0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e,
0x75, 0xac, 0x00, 0x51, 0x47, 0x72, 0x69, 0x64, 0x20, 0xb0,
0x0b, 0x33, 0x00, 0x00, 0x53, 0xc2, 0x08, 0x1f, 0x73, 0xc5,
0x0b, 0x04, 0x11, 0x4c, 0xc8, 0x05, 0x32, 0x6c, 0x69, 0x6d,
0x5c, 0x01, 0x68, 0x33, 0x3b, 0x00, 0x75, 0x70, 0x70, 0x12,
0x00, 0x74, 0x39, 0x00, 0x28, 0x62, 0x65, 0x63, 0x61, 0xd7,
0x06, 0x20, 0x75, 0x73, 0xbe, 0x02, 0x00, 0x5d, 0x02, 0x11,
0x66, 0xa7, 0x03, 0x01, 0xde, 0x09, 0x21, 0x62, 0x65, 0x68,
0x09, 0x01, 0x32, 0x05, 0x40, 0x64, 0x69, 0x66, 0x66, 0x2a,
0x05, 0x12, 0x74, 0x6b, 0x03, 0x11, 0x60, 0x0c, 0x02, 0x70,
0x73, 0x27, 0x00, 0x62, 0x69, 0x67, 0x67, 0xb8, 0x0a, 0x61,
0x68, 0x61, 0x6e, 0x00, 0x39, 0x21, 0x12, 0x07, 0x14, 0x44,
0x2b, 0x00, 0x34, 0x79, 0x00, 0x00, 0xbe, 0x01, 0x13, 0x73,
0x9d, 0x03, 0x05, 0x1a, 0x00, 0x04, 0xae, 0x00, 0x50, 0x65,
0x6e, 0x65, 0x72, 0x61, 0x25, 0x03, 0x02, 0x32, 0x09, 0x70,
0x2e, 0x00, 0x41, 0x74, 0x00, 0x55, 0x6e, 0x30, 0x0a, 0x21,
0x6f, 0x6e, 0x28, 0x01, 0x53, 0x6c, 0x65, 0x76, 0x65, 0x6c,
0xc7, 0x09, 0x72, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61,
0x71, 0x02, 0x04, 0x36, 0x07, 0x82, 0x72, 0x65, 0x71, 0x75,
0x69, 0x72, 0x65, 0x64, 0x2a, 0x09, 0x01, 0x0f, 0x01, 0x31,
0x6f, 0x6c, 0x75, 0x48, 0x01, 0x21, 0x73, 0x68, 0xc8, 0x00,
0x23, 0x73, 0x74, 0x2b, 0x00, 0x71, 0x75, 0x6e, 0x69, 0x71,
0x75, 0x65, 0x2e, 0xbc, 0x06, 0x33, 0x72, 0x65, 0x6d, 0xf6,
0x06, 0x01, 0x62, 0x00, 0x14, 0x73, 0x48, 0x00, 0x07, 0xfa,
0x0a, 0x00, 0xdc, 0x08, 0x10, 0x6f, 0x65, 0x0b, 0x22, 0x78,
0x00, 0x91, 0x00, 0x01, 0xaf, 0x0b, 0x00, 0x02, 0x02, 0x30,
0x6f, 0x69, 0x64, 0x1a, 0x03, 0x03, 0x10, 0x00, 0x05, 0x97,
0x00, 0x03, 0x85, 0x09, 0x14, 0x33, 0x11, 0x02, 0x00, 0x56,
0x01, 0xb1, 0x20, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65,
0x6e, 0x63, 0x65, 0x17, 0x02, 0x20, 0x4f, 0x6e, 0x45, 0x09,
0x63, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe9, 0x08, 0x62,
0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x84, 0x01, 0x07, 0x2e,
0x00, 0x12, 0x2c, 0x05, 0x02, 0x16, 0x50, 0x12, 0x00, 0x0d,
0x21, 0x02, 0x33, 0x47, 0x61, 0x6d, 0x21, 0x02, 0x02, 0x0f,
0x01, 0x32, 0x6c, 0x65, 0x74, 0x2b, 0x04, 0x73, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x75, 0x72, 0x23, 0x06, 0x36, 0x74, 0x79,
0x6c, 0x20, 0x02, 0x20, 0x61, 0x6d, 0x89, 0x01, 0x10, 0x73,
0xca, 0x09, 0x05, 0x3c, 0x09, 0x02, 0x5e, 0x0a, 0x00, 0x3f,
0x03, 0x02, 0x85, 0x0b, 0xf1, 0x01, 0x68, 0x72, 0x65, 0x65,
0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x6c, 0x8e, 0x04, 0x50, 0x2c, 0x00, 0x73, 0x65, 0x6c,
0x12, 0x03, 0x72, 0x6e, 0x67, 0x00, 0x60, 0x32, 0x44, 0x27,
0x73, 0x00, 0x61, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x17,
0x01, 0x02, 0x11, 0x0a, 0x24, 0x65, 0x72, 0x5f, 0x00, 0x03,
0x79, 0x00, 0x05, 0xc5, 0x04, 0x07, 0xdd, 0x0c, 0xa0, 0x73,
0x68, 0x6f, 0x77, 0x6e, 0x00, 0x62, 0x79, 0x00, 0x6a, 0xcf,
0x0b, 0x42, 0x77, 0x72, 0x69, 0x74, 0x0b, 0x0d, 0x24, 0x65,
0x69, 0x92, 0x0c, 0x07, 0xf4, 0x06, 0x50, 0x61, 0x72, 0x65,
0x2e, 0x00,
};
const unsigned short help_text_len = 3541;
const unsigned short help_text_words = 674;
const unsigned short help_text_len = 3906;
const unsigned short help_text_words = 732;
const char quick_help_text[] = "Complete the latin square of towers in accordance with the clues.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,27 +6,28 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 86, TEXT_CENTER | C_RED },
{ 207, TEXT_CENTER | C_RED },
{ 224, TEXT_UNDERLINE },
{ 225, TEXT_UNDERLINE },
{ 236, TEXT_UNDERLINE },
{ 268, TEXT_UNDERLINE },
{ 88, TEXT_CENTER | C_RED },
{ 209, TEXT_CENTER | C_RED },
{ 226, TEXT_UNDERLINE },
{ 227, TEXT_UNDERLINE },
{ 238, TEXT_UNDERLINE },
{ 270, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 1862 comp 1274 ratio 0.684211 level 10 saved 588 */
/* orig 1917 comp 1289 ratio 0.672405 level 10 saved 628 */
const char help_text[] = {
0xf0, 0x2c, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x34, 0x30, 0x3a, 0x20, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x73,
0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72,
0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d,
0x65, 0x11, 0x00, 0x51, 0x77, 0x68, 0x69, 0x63, 0x68, 0x2b,
0x00, 0xf1, 0x04, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00,
0x77, 0x69, 0x74, 0x68, 0x00, 0x74, 0x72, 0x61, 0x69, 0x6e,
0x00, 0x74, 0x4f, 0x00, 0x11, 0x2e, 0x4d, 0x00, 0xf2, 0x05,
0xf0, 0x02, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x34, 0x30, 0x3a, 0x20, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x06,
0x00, 0x6f, 0x63, 0x6b, 0x73, 0x20, 0x00, 0x2d, 0x01, 0x00,
0x04, 0xf0, 0x19, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00,
0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00,
0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00,
0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73,
0x6f, 0x6d, 0x65, 0x11, 0x00, 0x51, 0x77, 0x68, 0x69, 0x63,
0x68, 0x2b, 0x00, 0xd0, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64,
0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x74, 0x68, 0x00, 0x21,
0x00, 0x74, 0x68, 0x00, 0x11, 0x2e, 0x4d, 0x00, 0xf2, 0x05,
0x6e, 0x65, 0x65, 0x64, 0x00, 0x74, 0x6f, 0x00, 0x63, 0x6f,
0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x00, 0x74, 0x68, 0x65,
0x21, 0x00, 0x70, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x41,
@ -49,104 +50,104 @@ const char help_text[] = {
0x00, 0x72, 0x61, 0x69, 0x6c, 0x73, 0x2c, 0x1c, 0x00, 0x06,
0xd7, 0x00, 0xf1, 0x05, 0x6d, 0x61, 0x79, 0x00, 0x6e, 0x6f,
0x74, 0x00, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x00, 0x69, 0x74,
0x73, 0x65, 0x6c, 0x66, 0x5a, 0x00, 0x01, 0x16, 0x01, 0x32,
0x00, 0x77, 0x61, 0xd1, 0x00, 0x40, 0x72, 0x69, 0x62, 0x75,
0xa2, 0x00, 0x01, 0x95, 0x00, 0x20, 0x69, 0x73, 0xed, 0x00,
0xf0, 0x08, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x00,
0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48,
0x61, 0x72, 0x76, 0x65, 0x79, 0x3d, 0x00, 0x44, 0x34, 0x30,
0x2e, 0x31, 0xa7, 0x01, 0x01, 0x3e, 0x00, 0x21, 0x6f, 0x6c,
0xb0, 0x01, 0xf4, 0x15, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63,
0x6c, 0x69, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x00, 0x6f, 0x6e,
0x00, 0x61, 0x6e, 0x00, 0x65, 0x64, 0x67, 0x65, 0x00, 0x62,
0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x00, 0x74, 0x77, 0x6f,
0xbd, 0x01, 0x7a, 0x00, 0x61, 0x64, 0x64, 0x73, 0x00, 0x61,
0x34, 0x01, 0x06, 0x29, 0x00, 0x28, 0x68, 0x65, 0x2d, 0x00,
0x30, 0x2e, 0x00, 0x52, 0xf8, 0x00, 0x0f, 0x5c, 0x00, 0x02,
0x03, 0x48, 0x00, 0x02, 0xe1, 0x00, 0x12, 0x6f, 0x3b, 0x00,
0x00, 0x19, 0x00, 0x14, 0x2c, 0x79, 0x01, 0x00, 0x30, 0x00,
0x23, 0x6e, 0x6f, 0x69, 0x00, 0xa1, 0x69, 0x73, 0x00, 0x70,
0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0xfd, 0x01, 0x3d, 0x72,
0x65, 0x2e, 0xb8, 0x00, 0x10, 0x69, 0x6b, 0x02, 0x02, 0x79,
0x00, 0x05, 0x5d, 0x00, 0x54, 0x6f, 0x6c, 0x6f, 0x75, 0x72,
0x51, 0x00, 0x70, 0x6f, 0x72, 0x00, 0x73, 0x68, 0x6f, 0x77,
0x2c, 0x00, 0x01, 0x27, 0x02, 0x82, 0x79, 0x6f, 0x75, 0x00,
0x6b, 0x6e, 0x6f, 0x77, 0x13, 0x02, 0x02, 0x39, 0x00, 0x45,
0x6d, 0x75, 0x73, 0x74, 0x2b, 0x02, 0x03, 0xe6, 0x00, 0x30,
0x2c, 0x00, 0x65, 0xc8, 0x02, 0x21, 0x69, 0x66, 0x32, 0x00,
0x52, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x38, 0x00, 0x02, 0xbf,
0x02, 0x00, 0xb5, 0x00, 0x00, 0xa3, 0x01, 0x02, 0xcb, 0x00,
0x6d, 0x65, 0x73, 0x00, 0x79, 0x65, 0x74, 0xf9, 0x00, 0x0e,
0x9d, 0x00, 0x04, 0xdb, 0x01, 0x06, 0xed, 0x00, 0x15, 0x69,
0x7a, 0x00, 0x16, 0x73, 0xf9, 0x00, 0x03, 0x62, 0x01, 0x05,
0xef, 0x00, 0x32, 0x00, 0x6f, 0x72, 0x74, 0x02, 0x60, 0x2d,
0x64, 0x72, 0x61, 0x67, 0x67, 0x38, 0x00, 0x04, 0x7d, 0x01,
0x05, 0xa2, 0x01, 0x20, 0x6c, 0x6c, 0xfd, 0x02, 0x00, 0xad,
0x00, 0x86, 0x74, 0x6f, 0x00, 0x6c, 0x61, 0x79, 0x00, 0x61,
0x83, 0x02, 0x31, 0x6c, 0x69, 0x6e, 0x7b, 0x03, 0x32, 0x69,
0x73, 0x2d, 0x61, 0x00, 0x20, 0x6f, 0x72, 0x0c, 0x00, 0x33,
0x6e, 0x6f, 0x74, 0x10, 0x00, 0x05, 0x2d, 0x01, 0xd1, 0x73,
0x2c, 0x00, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x00, 0x66,
0x6f, 0x72, 0xa1, 0x03, 0x03, 0xc9, 0x00, 0x01, 0x5b, 0x03,
0x25, 0x6f, 0x72, 0x5a, 0x03, 0x85, 0x74, 0x6f, 0x00, 0x6d,
0x61, 0x74, 0x63, 0x68, 0x25, 0x03, 0x00, 0xad, 0x00, 0x41,
0x28, 0x41, 0x6c, 0x6c, 0x11, 0x00, 0x11, 0x61, 0x8f, 0x02,
0x92, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x4f, 0x03, 0x13, 0x73, 0xa5, 0x02, 0x41, 0x32, 0x2e, 0x31,
0x00, 0x13, 0x01, 0xf2, 0x00, 0x6c, 0x73, 0x6f, 0x00, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29,
0xad, 0x02, 0x14, 0x32, 0xad, 0x02, 0xb2, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x5e, 0x03,
0x36, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x42, 0x00, 0x04,
0x3d, 0x00, 0x02, 0x12, 0x04, 0x00, 0x7a, 0x00, 0xe1, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27,
0x00, 0x6f, 0x70, 0x70, 0x00, 0x03, 0x68, 0x02, 0xb0, 0x60,
0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75,
0xac, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00,
0x48, 0x65, 0x22, 0x01, 0x68, 0x00, 0x00, 0x53, 0x69, 0x7a,
0x65, 0xd3, 0x03, 0x00, 0x93, 0x02, 0x06, 0xd3, 0x02, 0xf3,
0x01, 0x00, 0x00, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75,
0x6c, 0x74, 0x79, 0x00, 0x00, 0x00, 0x43, 0x49, 0x03, 0x01,
0x2e, 0x00, 0x16, 0x64, 0x1a, 0x00, 0x04, 0x40, 0x00, 0x41,
0x65, 0x6e, 0x65, 0x72, 0x46, 0x04, 0xf3, 0x0b, 0x70, 0x75,
0x7a, 0x7a, 0x6c, 0x65, 0x3a, 0x00, 0x61, 0x74, 0x00, 0x54,
0x72, 0x69, 0x63, 0x6b, 0x79, 0x00, 0x6c, 0x65, 0x76, 0x65,
0x6c, 0x2c, 0x00, 0x79, 0x2f, 0x05, 0x82, 0x72, 0x65, 0x71,
0x75, 0x69, 0x72, 0x65, 0x64, 0x51, 0x01, 0xc3, 0x6b, 0x65,
0x00, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x64, 0x65, 0x64, 0x75,
0x43, 0x01, 0x60, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x86,
0x01, 0x36, 0x64, 0x69, 0x73, 0x0d, 0x00, 0x52, 0x6d, 0x6f,
0x76, 0x65, 0x73, 0xd3, 0x02, 0x91, 0x77, 0x6f, 0x75, 0x6c,
0x64, 0x00, 0x6c, 0x65, 0x61, 0x45, 0x00, 0x25, 0x69, 0x6d,
0x34, 0x03, 0x01, 0x6d, 0x02, 0xa2, 0x69, 0x6e, 0x67, 0x73,
0x00, 0x6c, 0x61, 0x74, 0x65, 0x72, 0xc6, 0x00, 0x11, 0x73,
0x2a, 0x02, 0x00, 0x0b, 0x04, 0xb2, 0x73, 0x65, 0x63, 0x75,
0x74, 0x69, 0x76, 0x65, 0x20, 0x31, 0x20, 0xe6, 0x04, 0x07,
0xd8, 0x00, 0x30, 0x77, 0x68, 0x65, 0x72, 0x03, 0x01, 0xce,
0x00, 0x03, 0x7f, 0x04, 0x35, 0x67, 0x61, 0x6d, 0xda, 0x00,
0x00, 0x57, 0x01, 0x71, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74,
0x73, 0xfb, 0x03, 0x50, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x14,
0x04, 0x0f, 0x27, 0x02, 0x00, 0x81, 0x68, 0x61, 0x76, 0x65,
0x00, 0x61, 0x00, 0x31, 0x26, 0x02, 0x10, 0x2c, 0x1d, 0x00,
0x05, 0x3a, 0x00, 0x02, 0xb3, 0x05, 0x06, 0x30, 0x00, 0x04,
0x40, 0x01, 0x01, 0x95, 0x02, 0xbd, 0x27, 0x73, 0x00, 0x65,
0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x47, 0x00, 0xc2,
0x2e, 0x00, 0x42, 0x79, 0x00, 0x64, 0x65, 0x66, 0x61, 0x75,
0x6c, 0x74, 0x05, 0x05, 0x21, 0x69, 0x73, 0x3b, 0x05, 0x02,
0x5b, 0x00, 0x60, 0x74, 0x65, 0x64, 0x2c, 0x00, 0x74, 0x5d,
0x02, 0x86, 0x6f, 0x69, 0x64, 0x00, 0x6c, 0x6f, 0x6e, 0x67,
0x0c, 0x03, 0x30, 0x62, 0x6f, 0x72, 0x40, 0x01, 0x05, 0xf9,
0x05, 0x05, 0x0b, 0x06, 0x00, 0x8c, 0x05, 0x01, 0x82, 0x01,
0x01, 0xc2, 0x01, 0x01, 0x46, 0x05, 0x01, 0x8c, 0x01, 0x71,
0x74, 0x77, 0x69, 0x64, 0x64, 0x6c, 0x79, 0x20, 0x00, 0x70,
0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0xba, 0x03, 0x32,
0x2e, 0x00, 0x49, 0x1c, 0x04, 0x22, 0x77, 0x61, 0xa1, 0x00,
0x00, 0x18, 0x00, 0x22, 0x6f, 0x72, 0x3f, 0x00, 0x02, 0x83,
0x01, 0xb2, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2c, 0x00, 0x74,
0x75, 0x72, 0x6e, 0xa5, 0x00, 0x03, 0x91, 0x02, 0x50, 0x6f,
0x66, 0x66, 0x2e, 0x00,
0x73, 0x65, 0x6c, 0x66, 0x5a, 0x00, 0x01, 0x1c, 0x01, 0x02,
0x84, 0x01, 0x32, 0x00, 0x77, 0x61, 0xd7, 0x00, 0x40, 0x72,
0x69, 0x62, 0x75, 0xa8, 0x00, 0x01, 0x9b, 0x00, 0x20, 0x69,
0x73, 0xf3, 0x00, 0xf0, 0x08, 0x6c, 0x65, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x00, 0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65,
0x73, 0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x43, 0x00,
0x4a, 0x34, 0x30, 0x2e, 0x31, 0xcc, 0x01, 0x01, 0x44, 0x00,
0xf4, 0x1c, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x00, 0x00, 0x4c,
0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x69,
0x6e, 0x67, 0x00, 0x6f, 0x6e, 0x00, 0x61, 0x6e, 0x00, 0x65,
0x64, 0x67, 0x65, 0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65,
0x6e, 0x00, 0x74, 0x77, 0x6f, 0xc9, 0x01, 0x7a, 0x00, 0x61,
0x64, 0x64, 0x73, 0x00, 0x61, 0x40, 0x01, 0x06, 0x29, 0x00,
0x28, 0x68, 0x65, 0x2d, 0x00, 0x30, 0x2e, 0x00, 0x52, 0x04,
0x01, 0x0f, 0x5c, 0x00, 0x02, 0x03, 0x48, 0x00, 0x02, 0xed,
0x00, 0x12, 0x6f, 0x3b, 0x00, 0x00, 0x19, 0x00, 0x14, 0x2c,
0x85, 0x01, 0x00, 0x30, 0x00, 0x23, 0x6e, 0x6f, 0x69, 0x00,
0xa1, 0x69, 0x73, 0x00, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62,
0x6c, 0x09, 0x02, 0x3d, 0x72, 0x65, 0x2e, 0xb8, 0x00, 0x10,
0x69, 0x77, 0x02, 0x02, 0x79, 0x00, 0x05, 0x5d, 0x00, 0x54,
0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x51, 0x00, 0x70, 0x6f, 0x72,
0x00, 0x73, 0x68, 0x6f, 0x77, 0x2c, 0x00, 0x01, 0x33, 0x02,
0x82, 0x79, 0x6f, 0x75, 0x00, 0x6b, 0x6e, 0x6f, 0x77, 0x1f,
0x02, 0x02, 0x39, 0x00, 0x45, 0x6d, 0x75, 0x73, 0x74, 0x37,
0x02, 0x03, 0xe6, 0x00, 0x30, 0x2c, 0x00, 0x65, 0xd4, 0x02,
0x21, 0x69, 0x66, 0x32, 0x00, 0x52, 0x64, 0x6f, 0x6e, 0x27,
0x74, 0x38, 0x00, 0x02, 0xcb, 0x02, 0x00, 0xb5, 0x00, 0x00,
0xaf, 0x01, 0x02, 0xcb, 0x00, 0x6d, 0x65, 0x73, 0x00, 0x79,
0x65, 0x74, 0xf9, 0x00, 0x0e, 0x9d, 0x00, 0x04, 0xe7, 0x01,
0x06, 0xed, 0x00, 0x15, 0x69, 0x7a, 0x00, 0x16, 0x73, 0xf9,
0x00, 0x03, 0x62, 0x01, 0x05, 0xef, 0x00, 0x32, 0x00, 0x6f,
0x72, 0x80, 0x02, 0x60, 0x2d, 0x64, 0x72, 0x61, 0x67, 0x67,
0x38, 0x00, 0x04, 0x7d, 0x01, 0x05, 0xa2, 0x01, 0x20, 0x6c,
0x6c, 0x09, 0x03, 0x00, 0xad, 0x00, 0x86, 0x74, 0x6f, 0x00,
0x6c, 0x61, 0x79, 0x00, 0x61, 0x8f, 0x02, 0x31, 0x6c, 0x69,
0x6e, 0x87, 0x03, 0x32, 0x69, 0x73, 0x2d, 0x61, 0x00, 0x20,
0x6f, 0x72, 0x0c, 0x00, 0x33, 0x6e, 0x6f, 0x74, 0x10, 0x00,
0x05, 0x2d, 0x01, 0xd1, 0x73, 0x2c, 0x00, 0x75, 0x73, 0x65,
0x66, 0x75, 0x6c, 0x00, 0x66, 0x6f, 0x72, 0xad, 0x03, 0x03,
0xc9, 0x00, 0x01, 0x67, 0x03, 0x25, 0x6f, 0x72, 0x66, 0x03,
0x85, 0x74, 0x6f, 0x00, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x31,
0x03, 0x00, 0xad, 0x00, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x11,
0x00, 0x11, 0x61, 0x95, 0x02, 0x92, 0x73, 0x00, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x5b, 0x03, 0x13, 0x73, 0xab,
0x02, 0x41, 0x32, 0x2e, 0x31, 0x00, 0x13, 0x01, 0xf2, 0x00,
0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x2e, 0x29, 0xb3, 0x02, 0x1a, 0x32, 0xb3,
0x02, 0xb2, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x73, 0x20, 0x70, 0x03, 0x36, 0x73, 0x65, 0x00, 0x14,
0x00, 0x02, 0x48, 0x00, 0x04, 0x43, 0x00, 0x02, 0x24, 0x04,
0x00, 0x80, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x76, 0x00,
0x03, 0x6e, 0x02, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27,
0x00, 0x6d, 0x65, 0x6e, 0x75, 0xb2, 0x00, 0x91, 0x57, 0x69,
0x64, 0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x28, 0x01, 0x68,
0x00, 0x00, 0x53, 0x69, 0x7a, 0x65, 0xe5, 0x03, 0x00, 0x99,
0x02, 0x06, 0xd9, 0x02, 0xf3, 0x01, 0x00, 0x00, 0x44, 0x69,
0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x00, 0x00,
0x00, 0x43, 0x4f, 0x03, 0x01, 0x2e, 0x00, 0x16, 0x64, 0x1a,
0x00, 0x04, 0x40, 0x00, 0x41, 0x65, 0x6e, 0x65, 0x72, 0x58,
0x04, 0xf3, 0x0b, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x3a,
0x00, 0x61, 0x74, 0x00, 0x54, 0x72, 0x69, 0x63, 0x6b, 0x79,
0x00, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x2c, 0x00, 0x79, 0x41,
0x05, 0x82, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64,
0x57, 0x01, 0xc3, 0x6b, 0x65, 0x00, 0x6d, 0x6f, 0x72, 0x65,
0x00, 0x64, 0x65, 0x64, 0x75, 0x49, 0x01, 0x60, 0x72, 0x65,
0x67, 0x61, 0x72, 0x64, 0x8c, 0x01, 0x36, 0x64, 0x69, 0x73,
0x0d, 0x00, 0x52, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0xd9, 0x02,
0x91, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x6c, 0x65, 0x61,
0x45, 0x00, 0x25, 0x69, 0x6d, 0x3a, 0x03, 0x01, 0x73, 0x02,
0xa2, 0x69, 0x6e, 0x67, 0x73, 0x00, 0x6c, 0x61, 0x74, 0x65,
0x72, 0xc6, 0x00, 0x11, 0x73, 0x30, 0x02, 0x00, 0x11, 0x04,
0xb2, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x20,
0x31, 0x20, 0xf8, 0x04, 0x07, 0xd8, 0x00, 0x30, 0x77, 0x68,
0x65, 0x78, 0x03, 0x01, 0xce, 0x00, 0x09, 0x91, 0x04, 0x35,
0x67, 0x61, 0x6d, 0xe0, 0x00, 0x00, 0x5d, 0x01, 0x71, 0x70,
0x65, 0x72, 0x6d, 0x69, 0x74, 0x73, 0x07, 0x04, 0x50, 0x61,
0x64, 0x6a, 0x61, 0x63, 0x20, 0x04, 0x0f, 0x33, 0x02, 0x00,
0x81, 0x68, 0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x31, 0x32,
0x02, 0x10, 0x2c, 0x1d, 0x00, 0x05, 0x3a, 0x00, 0x02, 0xcb,
0x05, 0x06, 0x30, 0x00, 0x04, 0x46, 0x01, 0x01, 0xa1, 0x02,
0xbd, 0x27, 0x73, 0x00, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69,
0x6e, 0x74, 0x47, 0x00, 0xc2, 0x2e, 0x00, 0x42, 0x79, 0x00,
0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x17, 0x05, 0x21,
0x69, 0x73, 0x53, 0x05, 0x02, 0x5b, 0x00, 0x60, 0x74, 0x65,
0x64, 0x2c, 0x00, 0x74, 0x69, 0x02, 0x86, 0x6f, 0x69, 0x64,
0x00, 0x6c, 0x6f, 0x6e, 0x67, 0x18, 0x03, 0x30, 0x62, 0x6f,
0x72, 0x46, 0x01, 0x05, 0x11, 0x06, 0x05, 0x23, 0x06, 0x00,
0xa4, 0x05, 0x01, 0x88, 0x01, 0x01, 0xc8, 0x01, 0x01, 0x58,
0x05, 0x01, 0x92, 0x01, 0x71, 0x74, 0x77, 0x69, 0x64, 0x64,
0x6c, 0x79, 0x20, 0x00, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72,
0x65, 0x73, 0xc6, 0x03, 0x32, 0x2e, 0x00, 0x49, 0x28, 0x04,
0x22, 0x77, 0x61, 0xa1, 0x00, 0x00, 0x18, 0x00, 0x22, 0x6f,
0x72, 0x3f, 0x00, 0x02, 0x89, 0x01, 0xb2, 0x69, 0x6c, 0x69,
0x74, 0x79, 0x2c, 0x00, 0x74, 0x75, 0x72, 0x6e, 0xa5, 0x00,
0x03, 0x97, 0x02, 0x50, 0x6f, 0x66, 0x66, 0x2e, 0x00,
};
const unsigned short help_text_len = 1862;
const unsigned short help_text_words = 336;
const unsigned short help_text_len = 1917;
const unsigned short help_text_words = 339;
const char quick_help_text[] = "Fill in the railway track according to the clues.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,202 +6,203 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 137, TEXT_CENTER | C_RED },
{ 297, TEXT_CENTER | C_RED },
{ 138, TEXT_CENTER | C_RED },
{ 298, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 2926 comp 1866 ratio 0.637731 level 10 saved 1060 */
/* orig 2945 comp 1873 ratio 0.635993 level 10 saved 1072 */
const char help_text[] = {
0xf3, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfd, 0x06, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x37, 0x3a, 0x20, 0x54, 0x77, 0x69, 0x64, 0x64, 0x6c, 0x65,
0x20, 0x00, 0x00, 0x00, 0x0b, 0x00, 0xf2, 0x34, 0x00, 0x69,
0x73, 0x00, 0x61, 0x00, 0x74, 0x69, 0x6c, 0x65, 0x2d, 0x72,
0x65, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x6d, 0x65,
0x6e, 0x74, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c,
0x00, 0x76, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x00,
0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x00, 0x74, 0x6f,
0x00, 0x53, 0x69, 0x78, 0x74, 0x65, 0x65, 0x6e, 0x00, 0x28,
0x73, 0x65, 0x65, 0x00, 0x63, 0x5f, 0x00, 0xf0, 0x11, 0x00,
0x36, 0x29, 0x3a, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x61, 0x72,
0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x17, 0x00, 0x00, 0x67, 0x00, 0xf0, 0x11, 0x73, 0x2c,
0x00, 0x65, 0x61, 0x63, 0x68, 0x00, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x00, 0x61, 0x00, 0x6e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x2c, 0x00, 0x61, 0x6e, 0x64,
0x44, 0x00, 0x50, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x9a, 0x00,
0x33, 0x74, 0x6f, 0x00, 0x94, 0x00, 0x43, 0x00, 0x74, 0x68,
0x65, 0x27, 0x00, 0x40, 0x73, 0x00, 0x69, 0x6e, 0x19, 0x00,
0x50, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x40, 0x00, 0xf4, 0x02,
0x6f, 0x72, 0x64, 0x65, 0x72, 0x2e, 0x00, 0x00, 0x00, 0x49,
0x6e, 0x00, 0x62, 0x61, 0x73, 0x69, 0x63, 0xdd, 0x00, 0x12,
0x2c, 0x4d, 0x00, 0x43, 0x6d, 0x6f, 0x76, 0x65, 0x4e, 0x00,
0x84, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x00, 0x61, 0x92,
0x00, 0x50, 0x67, 0x72, 0x6f, 0x75, 0x70, 0xa2, 0x00, 0x10,
0x66, 0x29, 0x00, 0x01, 0xa0, 0x00, 0x60, 0x00, 0x61, 0x62,
0x6f, 0x75, 0x74, 0x70, 0x00, 0xf0, 0x0f, 0x69, 0x72, 0x00,
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x00, 0x63, 0x65, 0x6e,
0x74, 0x72, 0x65, 0x2e, 0x00, 0x28, 0x4f, 0x72, 0x69, 0x65,
0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x00, 0xf1,
0x03, 0x6e, 0x6f, 0x74, 0x00, 0x73, 0x69, 0x67, 0x6e, 0x69,
0x66, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x00, 0x69, 0x6e, 0xa8,
0x00, 0x02, 0x85, 0x00, 0x04, 0x42, 0x01, 0x81, 0x61, 0x6c,
0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x1e, 0x01, 0xf5, 0x1b,
0x63, 0x61, 0x6e, 0x00, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x00, 0x69, 0x74, 0x2e, 0x29, 0x00, 0x4f, 0x6e, 0x00, 0x6d,
0x6f, 0x72, 0x65, 0x00, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63,
0x65, 0x64, 0x00, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
0x73, 0x2c, 0x2f, 0x00, 0x05, 0xb4, 0x00, 0x6d, 0x6c, 0x61,
0x72, 0x67, 0x65, 0x72, 0xbb, 0x00, 0x01, 0xb6, 0x00, 0x01,
0xff, 0x00, 0xd0, 0x00, 0x66, 0x69, 0x72, 0x73, 0x74, 0x00,
0x73, 0x61, 0x77, 0x00, 0x74, 0x68, 0xf1, 0x00, 0x30, 0x79,
0x70, 0x65, 0x22, 0x00, 0x02, 0x8a, 0x00, 0x04, 0x9e, 0x00,
0xf2, 0x13, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x75, 0x62, 0x65,
0x00, 0x67, 0x61, 0x6d, 0x65, 0x00, 0x60, 0x4d, 0x65, 0x74,
0x72, 0x6f, 0x69, 0x64, 0x00, 0x50, 0x72, 0x69, 0x6d, 0x65,
0x00, 0x32, 0x27, 0x2e, 0x00, 0x49, 0x28, 0x00, 0xd0, 0x4d,
0x61, 0x69, 0x6e, 0x00, 0x47, 0x79, 0x72, 0x6f, 0x00, 0x43,
0x68, 0x61, 0x79, 0x01, 0x02, 0x41, 0x00, 0x21, 0x61, 0x74,
0x39, 0x00, 0x10, 0x2c, 0x24, 0x00, 0x13, 0x72, 0x40, 0x02,
0x03, 0x61, 0x00, 0x00, 0xb2, 0x00, 0x50, 0x73, 0x6f, 0x6c,
0x76, 0x65, 0x6b, 0x01, 0xf2, 0x05, 0x75, 0x6e, 0x6c, 0x6f,
0x63, 0x6b, 0x00, 0x61, 0x00, 0x64, 0x6f, 0x6f, 0x72, 0x2c,
0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x2e, 0x00, 0xb1, 0x73,
0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x00, 0x63, 0x61, 0x73,
0x9f, 0x00, 0x03, 0xae, 0x01, 0xd2, 0x2e, 0x00, 0x49, 0x00,
0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x64, 0xc1,
0x00, 0x01, 0xa2, 0x00, 0x20, 0x61, 0x73, 0x4a, 0x02, 0x82,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x69, 0x73, 0x7c, 0x01,
0x22, 0x6f, 0x66, 0x8a, 0x00, 0x02, 0x79, 0x00, 0x00, 0xfd,
0x00, 0x35, 0x37, 0x2e, 0x31, 0xdf, 0x02, 0x00, 0x5c, 0x02,
0x41, 0x72, 0x6f, 0x6c, 0x73, 0xe8, 0x02, 0x66, 0x6f, 0x00,
0x70, 0x6c, 0x61, 0x79, 0x13, 0x02, 0x51, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0xe1, 0x00, 0x45, 0x6d, 0x6f, 0x75, 0x73, 0x16,
0x01, 0x02, 0xe3, 0x01, 0x02, 0x59, 0x00, 0x1a, 0x65, 0x64,
0x01, 0x00, 0xd7, 0x00, 0x46, 0x77, 0x69, 0x73, 0x68, 0x41,
0x02, 0x05, 0x24, 0x01, 0x02, 0xea, 0x01, 0x32, 0x6d, 0x6f,
0x64, 0x6c, 0x02, 0x06, 0xac, 0x01, 0x33, 0x32, 0x78, 0x32,
0x45, 0x00, 0x04, 0xfb, 0x00, 0x51, 0x6d, 0x65, 0x61, 0x6e,
0x73, 0x25, 0x00, 0x22, 0x68, 0x61, 0x22, 0x01, 0x02, 0x8a,
0x00, 0xf1, 0x04, 0x61, 0x74, 0x00, 0x61, 0x00, 0x63, 0x6f,
0x72, 0x6e, 0x65, 0x72, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74,
0x00, 0x77, 0x59, 0x01, 0x07, 0x92, 0x02, 0x43, 0x6d, 0x65,
0x65, 0x74, 0xe0, 0x02, 0x0a, 0x2d, 0x02, 0x00, 0x79, 0x00,
0x02, 0x54, 0x00, 0x82, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x00,
0x62, 0x65, 0x82, 0x00, 0x00, 0x16, 0x03, 0xa4, 0x33, 0x78,
0x33, 0x00, 0x6f, 0x72, 0x00, 0x65, 0x76, 0x65, 0x36, 0x00,
0x11, 0x74, 0xea, 0x03, 0x53, 0x6d, 0x65, 0x3b, 0x00, 0x69,
0xe6, 0x00, 0x2c, 0x69, 0x7a, 0xf2, 0x00, 0x60, 0x69, 0x73,
0x00, 0x6f, 0x64, 0x64, 0x12, 0x00, 0x12, 0x6e, 0xcf, 0x01,
0x53, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0xab, 0x00, 0x0a, 0x2b,
0x01, 0x00, 0x9c, 0x00, 0x0b, 0x3e, 0x00, 0x01, 0x2a, 0x01,
0x00, 0x09, 0x03, 0x07, 0x2a, 0x01, 0x30, 0x00, 0x00, 0x43,
0x3d, 0x00, 0x00, 0x93, 0x00, 0x41, 0x77, 0x69, 0x74, 0x68,
0x2f, 0x00, 0x43, 0x6c, 0x65, 0x66, 0x74, 0x7f, 0x01, 0x54,
0x62, 0x75, 0x74, 0x74, 0x6f, 0xe5, 0x02, 0x11, 0x73, 0x1e,
0x00, 0x02, 0x76, 0x01, 0x50, 0x61, 0x6e, 0x74, 0x69, 0x63,
0x43, 0x02, 0x5f, 0x77, 0x69, 0x73, 0x65, 0x2e, 0x45, 0x00,
0x00, 0x12, 0x72, 0xf3, 0x00, 0x0a, 0x40, 0x00, 0x37, 0x69,
0x74, 0x00, 0x35, 0x00, 0x33, 0x00, 0x00, 0x59, 0x45, 0x03,
0x42, 0x61, 0x6c, 0x73, 0x6f, 0x09, 0x04, 0x95, 0x61, 0x6e,
0x00, 0x6f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0xb6, 0x00, 0x51,
0x61, 0x72, 0x6f, 0x75, 0x6e, 0xf4, 0x00, 0x02, 0xb1, 0x04,
0x05, 0x62, 0x00, 0xcb, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
0x00, 0x6b, 0x65, 0x79, 0x73, 0x3b, 0x25, 0x01, 0x05, 0x3f,
0x01, 0x20, 0x61, 0x62, 0x55, 0x00, 0x10, 0x28, 0xf0, 0x01,
0xb0, 0x62, 0x79, 0x00, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c,
0x74, 0x2c, 0x7a, 0x01, 0x02, 0xaf, 0x03, 0x80, 0x29, 0x2e,
0x00, 0x50, 0x72, 0x65, 0x73, 0x73, 0xbb, 0x00, 0x01, 0xb6,
0x00, 0x50, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x54, 0x00, 0x00,
0x24, 0x00, 0x40, 0x73, 0x70, 0x61, 0x63, 0x46, 0x02, 0x64,
0x72, 0x00, 0x77, 0x69, 0x6c, 0x6c, 0x3f, 0x02, 0x03, 0x7c,
0x00, 0x10, 0x72, 0x88, 0x05, 0x04, 0xa4, 0x00, 0x08, 0x0e,
0x01, 0x00, 0x3a, 0x00, 0x06, 0x0d, 0x00, 0x20, 0x72, 0x65,
0x51, 0x03, 0x60, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0xf3,
0x00, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x43, 0x00, 0x20, 0x61,
0x63, 0x2c, 0x03, 0xd0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x64, 0x00, 0x69, 0x7d, 0x04, 0x11,
0x63, 0x42, 0x03, 0x31, 0x32, 0x2e, 0x31, 0xab, 0x05, 0x01,
0x19, 0x01, 0xb1, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
0x6c, 0x65, 0x2e, 0x29, 0x4b, 0x03, 0x15, 0x32, 0x4b, 0x03,
0xa8, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
0x73, 0x35, 0x06, 0x50, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x7b,
0x02, 0x30, 0x73, 0x65, 0x76, 0x97, 0x03, 0x00, 0xce, 0x05,
0x53, 0x66, 0x69, 0x67, 0x75, 0x72, 0x9e, 0x03, 0x12, 0x70,
0x79, 0x00, 0x31, 0x76, 0x69, 0x61, 0x89, 0x00, 0x83, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x27, 0x19, 0x00, 0x32,
0x00, 0x6f, 0x6e, 0x17, 0x00, 0xf5, 0x00, 0x54, 0x79, 0x70,
0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x3a, 0x00, 0x00,
0x00, 0x2d, 0xad, 0x01, 0x04, 0x4e, 0x00, 0x02, 0x0a, 0x01,
0x51, 0x77, 0x69, 0x64, 0x74, 0x68, 0x1b, 0x06, 0x21, 0x68,
0x65, 0xf3, 0x01, 0x03, 0x74, 0x02, 0x03, 0x75, 0x04, 0x00,
0xb3, 0x01, 0x1f, 0x2e, 0x3f, 0x00, 0x08, 0x04, 0xe5, 0x02,
0x03, 0x49, 0x01, 0x11, 0x62, 0x96, 0x04, 0x01, 0x3d, 0x04,
0x04, 0x34, 0x02, 0x05, 0x19, 0x03, 0x0a, 0x47, 0x00, 0x52,
0x61, 0x73, 0x6b, 0x00, 0x66, 0x42, 0x03, 0x25, 0x72, 0x79,
0xfb, 0x01, 0x16, 0x6e, 0x28, 0x02, 0x20, 0x74, 0x6f, 0x71,
0x03, 0x30, 0x64, 0x69, 0x73, 0x70, 0x03, 0x40, 0x75, 0x69,
0x73, 0x68, 0x42, 0x01, 0x20, 0x00, 0x28, 0x20, 0x00, 0x03,
0x08, 0x02, 0x11, 0x29, 0x09, 0x02, 0x1b, 0x79, 0x51, 0x00,
0x12, 0x61, 0x56, 0x03, 0x57, 0x69, 0x66, 0x69, 0x65, 0x64,
0x9c, 0x05, 0x02, 0x27, 0x04, 0x02, 0x56, 0x05, 0x05, 0x7d,
0x04, 0x10, 0x73, 0xbb, 0x00, 0x30, 0x69, 0x64, 0x65, 0xff,
0x01, 0x24, 0x61, 0x6c, 0x02, 0x07, 0x05, 0x80, 0x04, 0x0e,
0x49, 0x00, 0x08, 0x3f, 0x07, 0x48, 0x6a, 0x75, 0x73, 0x74,
0x44, 0x07, 0x13, 0x61, 0x19, 0x02, 0x13, 0x31, 0x43, 0x07,
0x00, 0x0c, 0x00, 0x02, 0x33, 0x06, 0x45, 0x72, 0x6f, 0x77,
0x2c, 0x1f, 0x00, 0x17, 0x32, 0x1f, 0x00, 0x63, 0x73, 0x65,
0x63, 0x6f, 0x6e, 0x64, 0x20, 0x00, 0x8f, 0x6e, 0x64, 0x00,
0x73, 0x6f, 0x00, 0x6f, 0x6e, 0x6f, 0x01, 0x05, 0x30, 0x77,
0x68, 0x65, 0xbf, 0x00, 0x01, 0x39, 0x00, 0x17, 0x6f, 0x2a,
0x07, 0x24, 0x6f, 0x66, 0xc9, 0x04, 0x32, 0x61, 0x74, 0x74,
0xbf, 0x00, 0x12, 0x66, 0x2c, 0x08, 0x04, 0x12, 0x01, 0x14,
0x6e, 0x30, 0x00, 0x24, 0x62, 0x6c, 0xd9, 0x01, 0x03, 0x28,
0x08, 0x01, 0x66, 0x04, 0x01, 0x1d, 0x03, 0x01, 0x37, 0x05,
0xf0, 0x01, 0x61, 0x00, 0x74, 0x72, 0x69, 0x61, 0x6e, 0x67,
0x6c, 0x65, 0x00, 0x64, 0x72, 0x61, 0x77, 0x6e, 0x39, 0x01,
0x44, 0x69, 0x74, 0x2e, 0x00, 0xf4, 0x02, 0x04, 0x1e, 0x00,
0x51, 0x73, 0x00, 0x6d, 0x75, 0x73, 0x11, 0x05, 0x01, 0x54,
0x05, 0x00, 0x7e, 0x03, 0x71, 0x75, 0x70, 0x77, 0x61, 0x72,
0x64, 0x73, 0x7a, 0x05, 0x77, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
0x74, 0x65, 0x48, 0x02, 0x0e, 0xfc, 0x01, 0x02, 0xab, 0x01,
0x50, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x98, 0x07, 0x51, 0x68,
0x75, 0x66, 0x66, 0x6c, 0x6f, 0x08, 0x23, 0x70, 0x65, 0xe8,
0x02, 0x02, 0x01, 0x02, 0x94, 0x70, 0x65, 0x72, 0x66, 0x6f,
0x72, 0x6d, 0x65, 0x64, 0xd8, 0x02, 0x02, 0x92, 0x02, 0x17,
0x42, 0x0e, 0x04, 0x04, 0x38, 0x03, 0x01, 0xc8, 0x00, 0x02,
0x4a, 0x00, 0x16, 0x65, 0x48, 0x02, 0x00, 0x9a, 0x04, 0x11,
0x75, 0xfb, 0x01, 0x00, 0x8a, 0x02, 0x38, 0x6e, 0x79, 0x00,
0x88, 0x09, 0x14, 0x69, 0x91, 0x08, 0x20, 0x61, 0x73, 0x77,
0x03, 0x11, 0x62, 0x22, 0x01, 0x21, 0x61, 0x73, 0x28, 0x00,
0x10, 0x6f, 0x6e, 0x01, 0x15, 0x2e, 0xb5, 0x00, 0x82, 0x6f,
0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x3c, 0x07, 0x81,
0x62, 0x79, 0x00, 0x72, 0x65, 0x71, 0x75, 0x65, 0x9e, 0x02,
0x00, 0xa4, 0x07, 0x54, 0x72, 0x65, 0x63, 0x69, 0x73, 0x45,
0x09, 0x01, 0x12, 0x03, 0x05, 0xd3, 0x00, 0x00, 0x19, 0x05,
0x1c, 0x73, 0xcf, 0x00, 0x71, 0x2e, 0x00, 0x54, 0x79, 0x70,
0x69, 0x63, 0xfd, 0x09, 0x09, 0x95, 0x09, 0x21, 0x68, 0x65,
0xfb, 0x00, 0x10, 0x64, 0x17, 0x04, 0x33, 0x6d, 0x69, 0x6e,
0x46, 0x01, 0x03, 0x5f, 0x00, 0x3e, 0x73, 0x65, 0x74, 0x5c,
0x00, 0x00, 0xaf, 0x00, 0x00, 0x7e, 0x04, 0x31, 0x76, 0x65,
0x72, 0x5a, 0x09, 0xa0, 0x6d, 0x00, 0x65, 0x78, 0x61, 0x63,
0x74, 0x6c, 0x79, 0x2c, 0xfd, 0x00, 0x01, 0xf8, 0x00, 0x01,
0x0f, 0x02, 0xd1, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x00, 0x28,
0x73, 0x61, 0x79, 0x29, 0x00, 0x61, 0x02, 0x07, 0x11, 0x2d,
0xb4, 0x05, 0x04, 0x33, 0x01, 0x01, 0x9a, 0x05, 0x09, 0x19,
0x00, 0x50, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x92, 0x02, 0x21,
0x4e, 0x6f, 0xcf, 0x01, 0x11, 0x61, 0x60, 0x00, 0x02, 0xf1,
0x06, 0x02, 0x7a, 0x00, 0x07, 0x68, 0x02, 0x16, 0x2c, 0x1c,
0x00, 0x81, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x79, 0x00, 0x69,
0x61, 0x01, 0x01, 0x37, 0x00, 0x04, 0x4b, 0x00, 0x71, 0x73,
0x00, 0x73, 0x68, 0x6f, 0x72, 0x74, 0xc7, 0x02, 0x22, 0x61,
0x6e, 0x55, 0x02, 0x00, 0xca, 0x05, 0x82, 0x74, 0x00, 0x6c,
0x65, 0x6e, 0x67, 0x74, 0x68, 0xc5, 0x01, 0x01, 0xc5, 0x05,
0x01, 0x28, 0x0a, 0x12, 0x6f, 0x65, 0x02, 0x80, 0x73, 0x73,
0x69, 0x62, 0x6c, 0x65, 0x2e, 0x00,
0x20, 0x00, 0x2d, 0x01, 0x00, 0x33, 0x00, 0x00, 0x00, 0x1e,
0x00, 0xf2, 0x34, 0x00, 0x69, 0x73, 0x00, 0x61, 0x00, 0x74,
0x69, 0x6c, 0x65, 0x2d, 0x72, 0x65, 0x61, 0x72, 0x72, 0x61,
0x6e, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x70, 0x75,
0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x00, 0x76, 0x69, 0x73, 0x75,
0x61, 0x6c, 0x6c, 0x79, 0x00, 0x73, 0x69, 0x6d, 0x69, 0x6c,
0x61, 0x72, 0x00, 0x74, 0x6f, 0x00, 0x53, 0x69, 0x78, 0x74,
0x65, 0x65, 0x6e, 0x00, 0x28, 0x73, 0x65, 0x65, 0x00, 0x63,
0x72, 0x00, 0xf0, 0x11, 0x00, 0x36, 0x29, 0x3a, 0x00, 0x79,
0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x76,
0x65, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64, 0x00,
0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x17, 0x00, 0x00, 0x67,
0x00, 0xf0, 0x11, 0x73, 0x2c, 0x00, 0x65, 0x61, 0x63, 0x68,
0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e,
0x67, 0x00, 0x61, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x2c, 0x00, 0x61, 0x6e, 0x64, 0x44, 0x00, 0x50, 0x72, 0x00,
0x61, 0x69, 0x6d, 0x9a, 0x00, 0x33, 0x74, 0x6f, 0x00, 0x94,
0x00, 0x43, 0x00, 0x74, 0x68, 0x65, 0x27, 0x00, 0x40, 0x73,
0x00, 0x69, 0x6e, 0x19, 0x00, 0x50, 0x73, 0x63, 0x65, 0x6e,
0x64, 0x40, 0x00, 0xf4, 0x02, 0x6f, 0x72, 0x64, 0x65, 0x72,
0x2e, 0x00, 0x00, 0x00, 0x49, 0x6e, 0x00, 0x62, 0x61, 0x73,
0x69, 0x63, 0xdd, 0x00, 0x12, 0x2c, 0x4d, 0x00, 0x43, 0x6d,
0x6f, 0x76, 0x65, 0x4e, 0x00, 0x84, 0x72, 0x6f, 0x74, 0x61,
0x74, 0x65, 0x00, 0x61, 0x92, 0x00, 0x50, 0x67, 0x72, 0x6f,
0x75, 0x70, 0xa2, 0x00, 0x10, 0x66, 0x29, 0x00, 0x01, 0xa0,
0x00, 0x60, 0x00, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x70, 0x00,
0xf0, 0x0f, 0x69, 0x72, 0x00, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
0x6e, 0x00, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x2e, 0x00,
0x28, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x00, 0xf1, 0x03, 0x6e, 0x6f, 0x74, 0x00,
0x73, 0x69, 0x67, 0x6e, 0x69, 0x66, 0x69, 0x63, 0x61, 0x6e,
0x74, 0x00, 0x69, 0x6e, 0xa8, 0x00, 0x02, 0x85, 0x00, 0x04,
0x42, 0x01, 0x81, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67,
0x68, 0x1e, 0x01, 0xf5, 0x1b, 0x63, 0x61, 0x6e, 0x00, 0x73,
0x65, 0x6c, 0x65, 0x63, 0x74, 0x00, 0x69, 0x74, 0x2e, 0x29,
0x00, 0x4f, 0x6e, 0x00, 0x6d, 0x6f, 0x72, 0x65, 0x00, 0x61,
0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x00, 0x73, 0x65,
0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x2f, 0x00, 0x05,
0xb4, 0x00, 0x6d, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0xbb,
0x00, 0x01, 0xb6, 0x00, 0x01, 0xff, 0x00, 0xd0, 0x00, 0x66,
0x69, 0x72, 0x73, 0x74, 0x00, 0x73, 0x61, 0x77, 0x00, 0x74,
0x68, 0xf1, 0x00, 0x30, 0x79, 0x70, 0x65, 0x22, 0x00, 0x02,
0x8a, 0x00, 0x04, 0x9e, 0x00, 0xf2, 0x13, 0x47, 0x61, 0x6d,
0x65, 0x43, 0x75, 0x62, 0x65, 0x00, 0x67, 0x61, 0x6d, 0x65,
0x00, 0x60, 0x4d, 0x65, 0x74, 0x72, 0x6f, 0x69, 0x64, 0x00,
0x50, 0x72, 0x69, 0x6d, 0x65, 0x00, 0x32, 0x27, 0x2e, 0x00,
0x49, 0x28, 0x00, 0xd0, 0x4d, 0x61, 0x69, 0x6e, 0x00, 0x47,
0x79, 0x72, 0x6f, 0x00, 0x43, 0x68, 0x61, 0x79, 0x01, 0x02,
0x41, 0x00, 0x21, 0x61, 0x74, 0x39, 0x00, 0x10, 0x2c, 0x24,
0x00, 0x13, 0x72, 0x40, 0x02, 0x03, 0x61, 0x00, 0x00, 0xb2,
0x00, 0x50, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x6b, 0x01, 0xf2,
0x05, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x00, 0x61, 0x00,
0x64, 0x6f, 0x6f, 0x72, 0x2c, 0x00, 0x77, 0x68, 0x69, 0x63,
0x68, 0x2e, 0x00, 0xb1, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61,
0x6c, 0x00, 0x63, 0x61, 0x73, 0x9f, 0x00, 0x03, 0xae, 0x01,
0xd2, 0x2e, 0x00, 0x49, 0x00, 0x64, 0x65, 0x76, 0x65, 0x6c,
0x6f, 0x70, 0x65, 0x64, 0xc1, 0x00, 0x01, 0xa2, 0x00, 0x20,
0x61, 0x73, 0x4a, 0x02, 0x82, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x6c, 0x69, 0x73, 0x7c, 0x01, 0x22, 0x6f, 0x66, 0x8a, 0x00,
0x02, 0x79, 0x00, 0x00, 0xfd, 0x00, 0x35, 0x37, 0x2e, 0x31,
0xf2, 0x02, 0x00, 0x5c, 0x02, 0x50, 0x72, 0x6f, 0x6c, 0x73,
0x20, 0xe8, 0x02, 0x66, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79,
0x13, 0x02, 0x51, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xe1, 0x00,
0x45, 0x6d, 0x6f, 0x75, 0x73, 0x16, 0x01, 0x02, 0xe3, 0x01,
0x02, 0x59, 0x00, 0x1a, 0x65, 0x64, 0x01, 0x00, 0xd7, 0x00,
0x46, 0x77, 0x69, 0x73, 0x68, 0x41, 0x02, 0x05, 0x24, 0x01,
0x02, 0xea, 0x01, 0x32, 0x6d, 0x6f, 0x64, 0x6c, 0x02, 0x06,
0xac, 0x01, 0x33, 0x32, 0x78, 0x32, 0x45, 0x00, 0x04, 0xfb,
0x00, 0x51, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x25, 0x00, 0x22,
0x68, 0x61, 0x22, 0x01, 0x02, 0x8a, 0x00, 0xf1, 0x04, 0x61,
0x74, 0x00, 0x61, 0x00, 0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72,
0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x00, 0x77, 0x59, 0x01,
0x07, 0x92, 0x02, 0x43, 0x6d, 0x65, 0x65, 0x74, 0xe0, 0x02,
0x0a, 0x2d, 0x02, 0x00, 0x79, 0x00, 0x02, 0x54, 0x00, 0x82,
0x6d, 0x69, 0x67, 0x68, 0x74, 0x00, 0x62, 0x65, 0x82, 0x00,
0x00, 0x16, 0x03, 0xa4, 0x33, 0x78, 0x33, 0x00, 0x6f, 0x72,
0x00, 0x65, 0x76, 0x65, 0x36, 0x00, 0x11, 0x74, 0xea, 0x03,
0x53, 0x6d, 0x65, 0x3b, 0x00, 0x69, 0xe6, 0x00, 0x2c, 0x69,
0x7a, 0xf2, 0x00, 0x60, 0x69, 0x73, 0x00, 0x6f, 0x64, 0x64,
0x12, 0x00, 0x12, 0x6e, 0xcf, 0x01, 0x53, 0x69, 0x6d, 0x70,
0x6c, 0x79, 0xab, 0x00, 0x0a, 0x2b, 0x01, 0x00, 0x9c, 0x00,
0x0b, 0x3e, 0x00, 0x01, 0x2a, 0x01, 0x00, 0x09, 0x03, 0x07,
0x2a, 0x01, 0x30, 0x00, 0x00, 0x43, 0x3d, 0x00, 0x00, 0x93,
0x00, 0x41, 0x77, 0x69, 0x74, 0x68, 0x2f, 0x00, 0x43, 0x6c,
0x65, 0x66, 0x74, 0x7f, 0x01, 0x54, 0x62, 0x75, 0x74, 0x74,
0x6f, 0xe5, 0x02, 0x11, 0x73, 0x1e, 0x00, 0x02, 0x76, 0x01,
0x50, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x43, 0x02, 0x5f, 0x77,
0x69, 0x73, 0x65, 0x2e, 0x45, 0x00, 0x00, 0x12, 0x72, 0xf3,
0x00, 0x0a, 0x40, 0x00, 0x37, 0x69, 0x74, 0x00, 0x35, 0x00,
0x33, 0x00, 0x00, 0x59, 0x45, 0x03, 0x42, 0x61, 0x6c, 0x73,
0x6f, 0x09, 0x04, 0x95, 0x61, 0x6e, 0x00, 0x6f, 0x75, 0x74,
0x6c, 0x69, 0x6e, 0xb6, 0x00, 0x51, 0x61, 0x72, 0x6f, 0x75,
0x6e, 0xf4, 0x00, 0x02, 0xb1, 0x04, 0x05, 0x62, 0x00, 0xcb,
0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79,
0x73, 0x3b, 0x25, 0x01, 0x05, 0x3f, 0x01, 0x20, 0x61, 0x62,
0x55, 0x00, 0x10, 0x28, 0xf0, 0x01, 0xb0, 0x62, 0x79, 0x00,
0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2c, 0x7a, 0x01,
0x02, 0xaf, 0x03, 0x80, 0x29, 0x2e, 0x00, 0x50, 0x72, 0x65,
0x73, 0x73, 0xbb, 0x00, 0x01, 0xb6, 0x00, 0x50, 0x65, 0x74,
0x75, 0x72, 0x6e, 0x54, 0x00, 0x00, 0x24, 0x00, 0x40, 0x73,
0x70, 0x61, 0x63, 0x46, 0x02, 0x64, 0x72, 0x00, 0x77, 0x69,
0x6c, 0x6c, 0x3f, 0x02, 0x03, 0x7c, 0x00, 0x10, 0x72, 0x88,
0x05, 0x04, 0xa4, 0x00, 0x08, 0x0e, 0x01, 0x00, 0x3a, 0x00,
0x06, 0x0d, 0x00, 0x20, 0x72, 0x65, 0x51, 0x03, 0x60, 0x74,
0x69, 0x76, 0x65, 0x6c, 0x79, 0xf3, 0x00, 0x41, 0x28, 0x41,
0x6c, 0x6c, 0x43, 0x00, 0x20, 0x61, 0x63, 0x2c, 0x03, 0xd0,
0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x64, 0x00, 0x69, 0x7d, 0x04, 0x11, 0x63, 0x42, 0x03, 0x31,
0x32, 0x2e, 0x31, 0xab, 0x05, 0x01, 0x19, 0x01, 0xb1, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29,
0x4b, 0x03, 0x15, 0x32, 0x4b, 0x03, 0xb7, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x35, 0x06,
0x50, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x7b, 0x02, 0x30, 0x73,
0x65, 0x76, 0x97, 0x03, 0x00, 0xce, 0x05, 0x53, 0x66, 0x69,
0x67, 0x75, 0x72, 0x9e, 0x03, 0x12, 0x70, 0x79, 0x00, 0x31,
0x76, 0x69, 0x61, 0x89, 0x00, 0x83, 0x60, 0x43, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x27, 0x19, 0x00, 0x32, 0x00, 0x6f, 0x6e,
0x17, 0x00, 0xf5, 0x00, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0xad,
0x01, 0x04, 0x4e, 0x00, 0x02, 0x0a, 0x01, 0x51, 0x77, 0x69,
0x64, 0x74, 0x68, 0x1b, 0x06, 0x21, 0x68, 0x65, 0xf3, 0x01,
0x03, 0x74, 0x02, 0x03, 0x75, 0x04, 0x00, 0xb3, 0x01, 0x1f,
0x2e, 0x3f, 0x00, 0x08, 0x04, 0xe5, 0x02, 0x03, 0x49, 0x01,
0x11, 0x62, 0x96, 0x04, 0x01, 0x3d, 0x04, 0x04, 0x34, 0x02,
0x05, 0x19, 0x03, 0x0a, 0x47, 0x00, 0x52, 0x61, 0x73, 0x6b,
0x00, 0x66, 0x42, 0x03, 0x25, 0x72, 0x79, 0xfb, 0x01, 0x16,
0x6e, 0x28, 0x02, 0x20, 0x74, 0x6f, 0x71, 0x03, 0x30, 0x64,
0x69, 0x73, 0x70, 0x03, 0x40, 0x75, 0x69, 0x73, 0x68, 0x42,
0x01, 0x20, 0x00, 0x28, 0x20, 0x00, 0x03, 0x08, 0x02, 0x11,
0x29, 0x09, 0x02, 0x1b, 0x79, 0x51, 0x00, 0x12, 0x61, 0x56,
0x03, 0x57, 0x69, 0x66, 0x69, 0x65, 0x64, 0x9c, 0x05, 0x02,
0x27, 0x04, 0x02, 0x56, 0x05, 0x05, 0x7d, 0x04, 0x10, 0x73,
0xbb, 0x00, 0x30, 0x69, 0x64, 0x65, 0xff, 0x01, 0x24, 0x61,
0x6c, 0x02, 0x07, 0x05, 0x80, 0x04, 0x0e, 0x49, 0x00, 0x08,
0x3f, 0x07, 0x48, 0x6a, 0x75, 0x73, 0x74, 0x44, 0x07, 0x13,
0x61, 0x19, 0x02, 0x13, 0x31, 0x43, 0x07, 0x00, 0x0c, 0x00,
0x02, 0x33, 0x06, 0x45, 0x72, 0x6f, 0x77, 0x2c, 0x1f, 0x00,
0x17, 0x32, 0x1f, 0x00, 0x63, 0x73, 0x65, 0x63, 0x6f, 0x6e,
0x64, 0x20, 0x00, 0x8f, 0x6e, 0x64, 0x00, 0x73, 0x6f, 0x00,
0x6f, 0x6e, 0x6f, 0x01, 0x05, 0x30, 0x77, 0x68, 0x65, 0xbf,
0x00, 0x01, 0x39, 0x00, 0x17, 0x6f, 0x2a, 0x07, 0x24, 0x6f,
0x66, 0xc9, 0x04, 0x32, 0x61, 0x74, 0x74, 0xbf, 0x00, 0x12,
0x66, 0x2c, 0x08, 0x04, 0x12, 0x01, 0x14, 0x6e, 0x30, 0x00,
0x24, 0x62, 0x6c, 0xd9, 0x01, 0x03, 0x28, 0x08, 0x01, 0x66,
0x04, 0x01, 0x1d, 0x03, 0x01, 0x37, 0x05, 0xf0, 0x01, 0x61,
0x00, 0x74, 0x72, 0x69, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x00,
0x64, 0x72, 0x61, 0x77, 0x6e, 0x39, 0x01, 0x44, 0x69, 0x74,
0x2e, 0x00, 0xf4, 0x02, 0x04, 0x1e, 0x00, 0x51, 0x73, 0x00,
0x6d, 0x75, 0x73, 0x11, 0x05, 0x01, 0x54, 0x05, 0x00, 0x7e,
0x03, 0x71, 0x75, 0x70, 0x77, 0x61, 0x72, 0x64, 0x73, 0x7a,
0x05, 0x77, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x48,
0x02, 0x0e, 0xfc, 0x01, 0x02, 0xab, 0x01, 0x50, 0x6c, 0x69,
0x6d, 0x69, 0x74, 0x98, 0x07, 0x51, 0x68, 0x75, 0x66, 0x66,
0x6c, 0x6f, 0x08, 0x23, 0x70, 0x65, 0xe8, 0x02, 0x02, 0x01,
0x02, 0x94, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x65,
0x64, 0xd8, 0x02, 0x02, 0x92, 0x02, 0x17, 0x42, 0x0e, 0x04,
0x04, 0x38, 0x03, 0x01, 0xc8, 0x00, 0x02, 0x4a, 0x00, 0x16,
0x65, 0x48, 0x02, 0x00, 0x9a, 0x04, 0x11, 0x75, 0xfb, 0x01,
0x00, 0x8a, 0x02, 0x38, 0x6e, 0x79, 0x00, 0x88, 0x09, 0x14,
0x69, 0x91, 0x08, 0x20, 0x61, 0x73, 0x77, 0x03, 0x11, 0x62,
0x22, 0x01, 0x21, 0x61, 0x73, 0x28, 0x00, 0x10, 0x6f, 0x6e,
0x01, 0x15, 0x2e, 0xb5, 0x00, 0x82, 0x6f, 0x76, 0x65, 0x72,
0x72, 0x69, 0x64, 0x65, 0x3c, 0x07, 0x81, 0x62, 0x79, 0x00,
0x72, 0x65, 0x71, 0x75, 0x65, 0x9e, 0x02, 0x00, 0xa4, 0x07,
0x54, 0x72, 0x65, 0x63, 0x69, 0x73, 0x45, 0x09, 0x01, 0x12,
0x03, 0x05, 0xd3, 0x00, 0x00, 0x19, 0x05, 0x1c, 0x73, 0xcf,
0x00, 0x71, 0x2e, 0x00, 0x54, 0x79, 0x70, 0x69, 0x63, 0xfd,
0x09, 0x09, 0x95, 0x09, 0x21, 0x68, 0x65, 0xfb, 0x00, 0x10,
0x64, 0x17, 0x04, 0x33, 0x6d, 0x69, 0x6e, 0x46, 0x01, 0x03,
0x5f, 0x00, 0x3e, 0x73, 0x65, 0x74, 0x5c, 0x00, 0x00, 0xaf,
0x00, 0x00, 0x7e, 0x04, 0x31, 0x76, 0x65, 0x72, 0x5a, 0x09,
0xa0, 0x6d, 0x00, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79,
0x2c, 0xfd, 0x00, 0x01, 0xf8, 0x00, 0x01, 0x0f, 0x02, 0xd1,
0x6e, 0x73, 0x77, 0x65, 0x72, 0x00, 0x28, 0x73, 0x61, 0x79,
0x29, 0x00, 0x61, 0x02, 0x07, 0x11, 0x2d, 0xb4, 0x05, 0x04,
0x33, 0x01, 0x01, 0x9a, 0x05, 0x09, 0x19, 0x00, 0x50, 0x6f,
0x6c, 0x75, 0x74, 0x69, 0x92, 0x02, 0x21, 0x4e, 0x6f, 0xcf,
0x01, 0x11, 0x61, 0x60, 0x00, 0x02, 0xf1, 0x06, 0x02, 0x7a,
0x00, 0x07, 0x68, 0x02, 0x16, 0x2c, 0x1c, 0x00, 0x81, 0x6c,
0x69, 0x6b, 0x65, 0x6c, 0x79, 0x00, 0x69, 0x61, 0x01, 0x01,
0x37, 0x00, 0x04, 0x4b, 0x00, 0x71, 0x73, 0x00, 0x73, 0x68,
0x6f, 0x72, 0x74, 0xc7, 0x02, 0x22, 0x61, 0x6e, 0x55, 0x02,
0x00, 0xca, 0x05, 0x82, 0x74, 0x00, 0x6c, 0x65, 0x6e, 0x67,
0x74, 0x68, 0xc5, 0x01, 0x01, 0xc5, 0x05, 0x01, 0x28, 0x0a,
0x12, 0x6f, 0x65, 0x02, 0x80, 0x73, 0x73, 0x69, 0x62, 0x6c,
0x65, 0x2e, 0x00,
};
const unsigned short help_text_len = 2926;
const unsigned short help_text_words = 548;
const unsigned short help_text_len = 2945;
const unsigned short help_text_words = 549;
const char quick_help_text[] = "Rotate the tiles around themselves to arrange them into order.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,230 +6,246 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 202, TEXT_CENTER | C_RED },
{ 282, TEXT_UNDERLINE },
{ 576, TEXT_CENTER | C_RED },
{ 593, TEXT_UNDERLINE },
{ 594, TEXT_UNDERLINE },
{ 604, TEXT_UNDERLINE },
{ 203, TEXT_CENTER | C_RED },
{ 291, TEXT_UNDERLINE },
{ 591, TEXT_CENTER | C_RED },
{ 608, TEXT_UNDERLINE },
{ 609, TEXT_UNDERLINE },
{ 619, TEXT_UNDERLINE },
{ 631, TEXT_CENTER | C_RED },
LAST_STYLE_ITEM
};
/* orig 3286 comp 2109 ratio 0.641814 level 10 saved 1177 */
/* orig 3574 comp 2258 ratio 0.631785 level 10 saved 1316 */
const char help_text[] = {
0xf0, 0x2c, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfd, 0x06, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x37, 0x3a, 0x20, 0x55, 0x6e, 0x64, 0x65, 0x61, 0x64,
0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72,
0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d,
0x65, 0x11, 0x00, 0xf3, 0x16, 0x77, 0x68, 0x69, 0x63, 0x68,
0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x64,
0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x00, 0x6d, 0x69,
0x72, 0x72, 0x6f, 0x72, 0x73, 0x2e, 0x00, 0x45, 0x76, 0x65,
0x72, 0x79, 0x37, 0x00, 0x03, 0x2d, 0x00, 0x83, 0x69, 0x73,
0x00, 0x6e, 0x6f, 0x74, 0x00, 0x61, 0x25, 0x00, 0xf1, 0x08,
0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x62, 0x65, 0x00, 0x66,
0x69, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x77, 0x69, 0x74, 0x68,
0x00, 0x6f, 0x6e, 0x5e, 0x00, 0xb0, 0x74, 0x68, 0x72, 0x65,
0x65, 0x00, 0x74, 0x79, 0x70, 0x65, 0x73, 0x0f, 0x00, 0x11,
0x75, 0xa0, 0x00, 0x90, 0x00, 0x6d, 0x6f, 0x6e, 0x73, 0x74,
0x65, 0x72, 0x3a, 0x98, 0x00, 0xf2, 0x12, 0x68, 0x6f, 0x73,
0x74, 0x2c, 0x00, 0x61, 0x00, 0x76, 0x61, 0x6d, 0x70, 0x69,
0x72, 0x65, 0x2c, 0x00, 0x6f, 0x72, 0x00, 0x61, 0x00, 0x7a,
0x6f, 0x6d, 0x62, 0x69, 0x65, 0x2e, 0x00, 0x00, 0x00, 0x56,
0x18, 0x00, 0x50, 0x73, 0x00, 0x63, 0x61, 0x6e, 0x65, 0x00,
0x30, 0x73, 0x65, 0x65, 0xa7, 0x00, 0xb1, 0x72, 0x65, 0x63,
0x74, 0x6c, 0x79, 0x2c, 0x00, 0x62, 0x75, 0x74, 0xe8, 0x00,
0x80, 0x69, 0x6e, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0xa4,
0x00, 0xf6, 0x00, 0x65, 0x6e, 0x00, 0x72, 0x65, 0x66, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x00, 0x69, 0x6e, 0xcc, 0x00,
0x10, 0x47, 0x6d, 0x00, 0x11, 0x73, 0x30, 0x00, 0xf0, 0x08,
0x74, 0x68, 0x65, 0x00, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69,
0x74, 0x65, 0x00, 0x77, 0x61, 0x79, 0x00, 0x72, 0x6f, 0x75,
0x6e, 0x64, 0x3a, 0x18, 0x00, 0x19, 0x79, 0x6b, 0x00, 0x06,
0x40, 0x00, 0x0f, 0x6d, 0x00, 0x06, 0x95, 0x6c, 0x6f, 0x6f,
0x6b, 0x65, 0x64, 0x00, 0x61, 0x74, 0x98, 0x00, 0x31, 0x2e,
0x00, 0x5a, 0xc1, 0x00, 0x02, 0x6c, 0x00, 0x04, 0x2d, 0x00,
0xd7, 0x62, 0x79, 0x00, 0x61, 0x6e, 0x79, 0x00, 0x6d, 0x65,
0x61, 0x6e, 0x73, 0x2e, 0xa4, 0x01, 0x91, 0x61, 0x6c, 0x73,
0x6f, 0x00, 0x74, 0x6f, 0x6c, 0x64, 0x96, 0x00, 0xc0, 0x74,
0x6f, 0x74, 0x61, 0x6c, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65,
0x72, 0x34, 0x01, 0x41, 0x65, 0x61, 0x63, 0x68, 0x42, 0x01,
0x00, 0x0d, 0x00, 0x03, 0x3a, 0x01, 0x00, 0x96, 0x00, 0x00,
0x2c, 0x00, 0x00, 0xd6, 0x01, 0x30, 0x2e, 0x00, 0x41, 0x40,
0x00, 0x11, 0x61, 0xc1, 0x00, 0x01, 0x16, 0x00, 0x33, 0x65,
0x64, 0x67, 0x7d, 0x01, 0x12, 0x65, 0xf8, 0x01, 0x01, 0xbb,
0x01, 0x63, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x59, 0x00,
0x24, 0x73, 0x2c, 0xcc, 0x01, 0xd1, 0x6e, 0x64, 0x69, 0x63,
0x61, 0x74, 0x65, 0x00, 0x68, 0x6f, 0x77, 0x00, 0x6d, 0x9f,
0x00, 0x02, 0x63, 0x00, 0x1a, 0x73, 0x06, 0x01, 0x51, 0x66,
0x00, 0x79, 0x6f, 0x75, 0xea, 0x00, 0x57, 0x00, 0x69, 0x6e,
0x74, 0x6f, 0x5c, 0x00, 0xa0, 0x6c, 0x6f, 0x6e, 0x67, 0x00,
0x61, 0x00, 0x72, 0x6f, 0x77, 0xbb, 0x01, 0xf1, 0x0b, 0x63,
0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x00, 0x73, 0x74, 0x61, 0x72,
0x74, 0x69, 0x6e, 0x67, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00,
0x74, 0x68, 0x61, 0x74, 0x00, 0x6c, 0x01, 0x9d, 0x69, 0x6f,
0x6e, 0x2e, 0x00, 0x28, 0x54, 0x68, 0x65, 0x6a, 0x02, 0x01,
0xa5, 0x00, 0x03, 0xb7, 0x01, 0xf1, 0x05, 0x69, 0x76, 0x65,
0x00, 0x6f, 0x6e, 0x00, 0x62, 0x6f, 0x74, 0x68, 0x00, 0x73,
0x69, 0x64, 0x65, 0x73, 0x2e, 0x00, 0x49, 0x81, 0x00, 0x17,
0x72, 0xd9, 0x01, 0x22, 0x6c, 0x69, 0x63, 0x02, 0xd1, 0x73,
0x69, 0x67, 0x68, 0x74, 0x00, 0x63, 0x72, 0x6f, 0x73, 0x73,
0x65, 0x73, 0x98, 0x00, 0x45, 0x73, 0x61, 0x6d, 0x65, 0x2a,
0x01, 0x21, 0x6d, 0x6f, 0xee, 0x01, 0x81, 0x61, 0x6e, 0x00,
0x6f, 0x6e, 0x63, 0x65, 0x2c, 0x21, 0x00, 0x03, 0x5d, 0x01,
0xd3, 0x77, 0x69, 0x6c, 0x6c, 0x00, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x00, 0x69, 0x74, 0x68, 0x01, 0x30, 0x69, 0x6d, 0x65,
0x0d, 0x00, 0x24, 0x69, 0x73, 0xb6, 0x01, 0x11, 0x2c, 0xec,
0x02, 0x10, 0x6a, 0xe3, 0x02, 0x00, 0x41, 0x00, 0xf2, 0x01,
0x2e, 0x29, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69, 0x73, 0x00,
0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x9a, 0x01, 0x30, 0x77,
0x61, 0x73, 0x15, 0x02, 0x20, 0x65, 0x6e, 0x99, 0x00, 0xf1,
0x01, 0x62, 0x79, 0x00, 0x44, 0x61, 0x76, 0x69, 0x64, 0x00,
0x4d, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x2c, 0xf6, 0x02, 0x12,
0x72, 0x79, 0x00, 0x00, 0x9a, 0x00, 0x41, 0x60, 0x48, 0x61,
0x75, 0x29, 0x00, 0x12, 0x4d, 0x3f, 0x03, 0xf3, 0x03, 0x4d,
0x61, 0x7a, 0x65, 0x27, 0x2e, 0x00, 0x53, 0x65, 0x65, 0x00,
0x5b, 0x32, 0x30, 0x5d, 0x00, 0x66, 0x6f, 0xb6, 0x00, 0x61,
0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2b, 0x02, 0x02, 0xd9,
0x03, 0x01, 0x68, 0x00, 0x00, 0xab, 0x03, 0x40, 0x72, 0x69,
0x62, 0x75, 0x42, 0x00, 0x01, 0x89, 0x01, 0x20, 0x69, 0x73,
0x76, 0x01, 0x01, 0x38, 0x01, 0x20, 0x6f, 0x6e, 0x7e, 0x00,
0xd0, 0x53, 0x74, 0x65, 0x66, 0x66, 0x65, 0x6e, 0x00, 0x42,
0x61, 0x75, 0x65, 0x72, 0x3e, 0x00, 0x01, 0x57, 0x00, 0xf4,
0x29, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
0x77, 0x2e, 0x6a, 0x61, 0x6e, 0x6b, 0x6f, 0x2e, 0x61, 0x74,
0x2f, 0x52, 0x61, 0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f, 0x53,
0x70, 0x75, 0x6b, 0x73, 0x63, 0x68, 0x6c, 0x6f, 0x73, 0x73,
0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d,
0x00, 0x00, 0x00, 0x33, 0x37, 0x2e, 0x31, 0x55, 0x04, 0x01,
0x78, 0x00, 0x46, 0x6f, 0x6c, 0x73, 0x20, 0x8f, 0x00, 0xe3,
0x68, 0x61, 0x73, 0x00, 0x61, 0x00, 0x73, 0x69, 0x6d, 0x69,
0x6c, 0x61, 0x72, 0x00, 0x21, 0x00, 0x70, 0x00, 0x73, 0x79,
0x73, 0x74, 0x65, 0x6d, 0x9c, 0x00, 0xf0, 0x08, 0x53, 0x6f,
0x6c, 0x6f, 0x2c, 0x00, 0x55, 0x6e, 0x65, 0x71, 0x75, 0x61,
0x6c, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x4b, 0x65, 0x65, 0x6e,
0x2e, 0x42, 0x01, 0x63, 0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79,
0x49, 0x00, 0x71, 0x2c, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b,
0x23, 0x01, 0x40, 0x6d, 0x6f, 0x75, 0x73, 0x62, 0x03, 0x01,
0x2b, 0x03, 0x45, 0x65, 0x6d, 0x70, 0x74, 0x7d, 0x04, 0x12,
0x61, 0xdf, 0x02, 0x12, 0x6e, 0x73, 0x01, 0x60, 0x61, 0x00,
0x6c, 0x65, 0x74, 0x74, 0x23, 0x03, 0x02, 0x0b, 0x03, 0x84,
0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0xd2, 0x02,
0x00, 0x7d, 0x02, 0x01, 0x4f, 0x03, 0x0a, 0x3a, 0x03, 0x51,
0x3a, 0x00, 0x60, 0x47, 0x27, 0x63, 0x01, 0x05, 0x7c, 0x04,
0x24, 0x60, 0x56, 0x11, 0x00, 0x08, 0x84, 0x04, 0x24, 0x60,
0x5a, 0x16, 0x00, 0x04, 0x8c, 0x04, 0x12, 0x49, 0x04, 0x03,
0x41, 0x6d, 0x61, 0x6b, 0x65, 0xfc, 0x04, 0x5e, 0x73, 0x74,
0x61, 0x6b, 0x65, 0xbb, 0x00, 0x03, 0x9b, 0x03, 0x50, 0x69,
0x6e, 0x63, 0x6f, 0x72, 0x0e, 0x04, 0x08, 0xbf, 0x00, 0xb0,
0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x53, 0x70, 0x61, 0x63,
0x65, 0x20, 0x01, 0x50, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x6f,
0x02, 0x20, 0x61, 0x67, 0x7d, 0x05, 0x62, 0x28, 0x6f, 0x72,
0x00, 0x75, 0x73, 0x9c, 0x04, 0xd0, 0x55, 0x6e, 0x64, 0x6f,
0x00, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x29, 0x32,
0x01, 0x03, 0x7e, 0x00, 0x10, 0x72, 0xee, 0x02, 0x12, 0x2d,
0x74, 0x00, 0x00, 0x25, 0x01, 0x0f, 0x1d, 0x01, 0x0b, 0x02,
0xef, 0x02, 0x01, 0x89, 0x00, 0x50, 0x73, 0x70, 0x6f, 0x6e,
0x64, 0x15, 0x01, 0x04, 0x19, 0x03, 0x01, 0xfe, 0x02, 0x00,
0xe0, 0x03, 0x31, 0x68, 0x6f, 0x77, 0xe7, 0x04, 0xb3, 0x72,
0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x00, 0x73, 0x69, 0x7a,
0xc6, 0x00, 0x14, 0x61, 0xbd, 0x00, 0x21, 0x2c, 0x00, 0xea,
0x01, 0xe1, 0x60, 0x70, 0x65, 0x6e, 0x63, 0x69, 0x6c, 0x00,
0x6d, 0x61, 0x72, 0x6b, 0x27, 0x2e, 0xc0, 0x04, 0x00, 0x25,
0x04, 0x57, 0x68, 0x61, 0x76, 0x65, 0x00, 0x1b, 0x00, 0x12,
0x73, 0xc3, 0x02, 0x65, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c,
0x8a, 0x03, 0x00, 0x22, 0x03, 0x06, 0x9f, 0x03, 0x02, 0x58,
0x00, 0x34, 0x2e, 0x00, 0x41, 0xc1, 0x00, 0x03, 0x82, 0x06,
0x11, 0x69, 0x4d, 0x04, 0x51, 0x66, 0x75, 0x6c, 0x6c, 0x2d,
0x88, 0x00, 0x04, 0xae, 0x00, 0x31, 0x63, 0x61, 0x6e, 0x74,
0x06, 0x00, 0xeb, 0x04, 0x04, 0xad, 0x06, 0x08, 0x73, 0x00,
0x01, 0x55, 0x02, 0x00, 0x94, 0x04, 0x00, 0x5d, 0x00, 0x30,
0x70, 0x61, 0x79, 0xa3, 0x06, 0x20, 0x00, 0x61, 0xf2, 0x04,
0x01, 0x16, 0x03, 0x29, 0x74, 0x6f, 0x2e, 0x00, 0x00, 0xff,
0x06, 0x40, 0x00, 0x65, 0x78, 0x61, 0xac, 0x05, 0x20, 0x00,
0x77, 0xe8, 0x00, 0x00, 0x5c, 0x01, 0x03, 0x7c, 0x01, 0x11,
0x6d, 0xbf, 0x00, 0x50, 0x69, 0x73, 0x00, 0x75, 0x70, 0x38,
0x00, 0x63, 0x79, 0x6f, 0x75, 0x3a, 0x00, 0x79, 0xeb, 0x00,
0x05, 0x23, 0x00, 0x70, 0x61, 0x73, 0x00, 0x72, 0x65, 0x6d,
0x69, 0xda, 0x03, 0x12, 0x73, 0x2a, 0x01, 0x30, 0x61, 0x00,
0x70, 0xf4, 0x04, 0x20, 0x63, 0x75, 0x0c, 0x03, 0x03, 0xd5,
0x00, 0x50, 0x6e, 0x65, 0x65, 0x64, 0x73, 0x45, 0x00, 0x10,
0x62, 0xdc, 0x04, 0x91, 0x2d, 0x65, 0x78, 0x61, 0x6d, 0x69,
0x6e, 0x65, 0x64, 0x4a, 0x04, 0x01, 0x54, 0x00, 0x42, 0x6b,
0x6e, 0x6f, 0x77, 0xed, 0x03, 0x4b, 0x61, 0x62, 0x6f, 0x75,
0x45, 0x00, 0x03, 0xfc, 0x00, 0x01, 0x8f, 0x02, 0x0f, 0x81,
0x00, 0x01, 0x20, 0x6c, 0x69, 0xce, 0x06, 0x03, 0xe9, 0x05,
0x32, 0x70, 0x6f, 0x73, 0x66, 0x06, 0x07, 0x23, 0x06, 0x13,
0x61, 0xff, 0x07, 0x04, 0xc5, 0x01, 0x20, 0x6f, 0x72, 0x56,
0x03, 0x20, 0x74, 0x68, 0x65, 0x01, 0x32, 0x65, 0x6c, 0x73,
0x83, 0x00, 0x93, 0x66, 0x65, 0x65, 0x6c, 0x00, 0x6c, 0x69,
0x6b, 0x65, 0x98, 0x03, 0x51, 0x65, 0x72, 0x61, 0x73, 0x65,
0xd7, 0x03, 0x39, 0x6e, 0x67, 0x6c, 0xd8, 0x01, 0x1c, 0x2c,
0x7e, 0x02, 0x01, 0xce, 0x01, 0x07, 0x80, 0x02, 0x00, 0x7b,
0x02, 0x05, 0xe2, 0x01, 0x03, 0x9f, 0x03, 0x01, 0xdb, 0x02,
0x00, 0x5b, 0x00, 0x3a, 0x41, 0x6c, 0x6c, 0x25, 0x02, 0x09,
0xbf, 0x02, 0x22, 0x72, 0x65, 0x79, 0x00, 0x12, 0x64, 0x53,
0x07, 0x01, 0x6d, 0x06, 0x24, 0x65, 0x66, 0x6c, 0x00, 0x05,
0x5e, 0x00, 0x15, 0x61, 0xdf, 0x00, 0x04, 0xe1, 0x02, 0x2f,
0x6f, 0x72, 0x32, 0x00, 0x06, 0x07, 0x6e, 0x03, 0x31, 0x2e,
0x00, 0x52, 0xbb, 0x00, 0x02, 0xae, 0x03, 0x01, 0x65, 0x02,
0x04, 0x21, 0x00, 0x00, 0x0d, 0x00, 0x11, 0x73, 0x92, 0x03,
0x01, 0x12, 0x03, 0x01, 0x62, 0x02, 0x02, 0x04, 0x01, 0x0c,
0x60, 0x02, 0x12, 0x41, 0xd9, 0x02, 0x02, 0xd6, 0x04, 0x01,
0x59, 0x03, 0x50, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x7b, 0x04,
0x05, 0x2e, 0x07, 0x22, 0x75, 0x73, 0x74, 0x08, 0x62, 0x63,
0x6f, 0x6e, 0x6a, 0x75, 0x6e, 0x93, 0x05, 0x01, 0x11, 0x09,
0x25, 0x74, 0x68, 0x13, 0x01, 0x01, 0x30, 0x00, 0x11, 0x74,
0x02, 0x05, 0x17, 0x63, 0x1f, 0x03, 0x2b, 0x6f, 0x72, 0x72,
0x00, 0x3d, 0x55, 0x73, 0x65, 0x67, 0x00, 0x60, 0x74, 0x6f,
0x00, 0x6d, 0x6f, 0x76, 0x09, 0x01, 0x51, 0x68, 0x69, 0x67,
0x68, 0x6c, 0xfc, 0x06, 0x07, 0xfb, 0x07, 0x00, 0x93, 0x07,
0x1f, 0x2c, 0x2f, 0x01, 0x07, 0x00, 0x3f, 0x00, 0x00, 0xa5,
0x06, 0x01, 0x75, 0x04, 0x03, 0xc1, 0x01, 0x05, 0x48, 0x00,
0x25, 0x65, 0x64, 0x96, 0x03, 0x14, 0x50, 0x19, 0x01, 0x50,
0x72, 0x65, 0x74, 0x75, 0x72, 0x3f, 0x03, 0x5a, 0x67, 0x67,
0x6c, 0x65, 0x73, 0x30, 0x00, 0x02, 0x09, 0x08, 0x00, 0x63,
0x00, 0x11, 0x64, 0x30, 0x04, 0x02, 0x51, 0x08, 0x04, 0xa9,
0x02, 0x02, 0x67, 0x00, 0x20, 0x6f, 0x72, 0x27, 0x03, 0x1b,
0x6f, 0x20, 0x04, 0x07, 0xd0, 0x04, 0x60, 0x70, 0x72, 0x65,
0x66, 0x65, 0x72, 0x0b, 0x01, 0x23, 0x69, 0x6e, 0xa5, 0x00,
0x05, 0xd3, 0x02, 0x81, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x62,
0x65, 0x74, 0x2b, 0x05, 0x26, 0x75, 0x74, 0xdb, 0x02, 0x51,
0x70, 0x69, 0x63, 0x74, 0x75, 0xc6, 0x0a, 0x04, 0x6e, 0x00,
0x02, 0xeb, 0x01, 0x31, 0x60, 0x41, 0x27, 0x13, 0x07, 0x01,
0xae, 0x00, 0x50, 0x00, 0x62, 0x65, 0x74, 0x77, 0xbc, 0x08,
0x00, 0xe1, 0x04, 0x04, 0x0e, 0x06, 0x05, 0x6d, 0x01, 0x29,
0x61, 0x73, 0x79, 0x01, 0x07, 0x24, 0x00, 0x02, 0x5b, 0x03,
0x02, 0x8a, 0x00, 0x00, 0xa9, 0x00, 0x15, 0x4c, 0x55, 0x02,
0x02, 0x9c, 0x04, 0x33, 0x63, 0x6c, 0x75, 0x2b, 0x02, 0x00,
0xcc, 0x00, 0x01, 0xbe, 0x05, 0x30, 0x73, 0x00, 0x64, 0xf0,
0x0a, 0x50, 0x28, 0x67, 0x72, 0x65, 0x79, 0x11, 0x00, 0x41,
0x6f, 0x75, 0x74, 0x29, 0x9a, 0x02, 0x24, 0x75, 0x6e, 0x24,
0x00, 0x23, 0x69, 0x66, 0x57, 0x08, 0x71, 0x61, 0x6c, 0x72,
0x65, 0x61, 0x64, 0x79, 0x3d, 0x00, 0x20, 0x65, 0x64, 0x61,
0x00, 0x10, 0x28, 0x1a, 0x03, 0x01, 0xf0, 0x00, 0x01, 0x2f,
0x02, 0x92, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x49, 0x02, 0x13, 0x73, 0xd8, 0x07, 0x36, 0x32, 0x2e,
0x31, 0x2d, 0x0a, 0x82, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x8f, 0x08, 0x44, 0x33, 0x37, 0x2e, 0x32, 0xa6,
0x07, 0x60, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0xbc, 0x00,
0x12, 0x20, 0x12, 0x05, 0x00, 0xc8, 0x02, 0x05, 0x14, 0x00,
0x02, 0x42, 0x00, 0x04, 0x3d, 0x00, 0x04, 0x9d, 0x09, 0xf1,
0x01, 0x65, 0x00, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x70, 0x00, 0x03,
0x57, 0x07, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00,
0x6d, 0x65, 0x6e, 0x75, 0xac, 0x00, 0x91, 0x57, 0x69, 0x64,
0x74, 0x68, 0x2c, 0x00, 0x48, 0x65, 0x01, 0x02, 0x51, 0x00,
0x00, 0x53, 0x69, 0x7a, 0x5e, 0x07, 0x01, 0x0b, 0x0a, 0x14,
0x69, 0x6a, 0x04, 0x01, 0x38, 0x01, 0x40, 0x44, 0x69, 0x66,
0x66, 0xc9, 0x04, 0x63, 0x74, 0x79, 0x00, 0x00, 0x00, 0x43,
0x3d, 0x08, 0x01, 0x54, 0x00, 0x16, 0x64, 0x1a, 0x00, 0x04,
0xa6, 0x0a, 0x50, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x82, 0x02,
0x80, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2e, 0x00,
0x20, 0x00, 0x2d, 0x01, 0x00, 0xf0, 0x19, 0x00, 0x00, 0x00,
0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69,
0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65,
0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d, 0x65, 0x11, 0x00, 0xf3,
0x16, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x63, 0x6f, 0x6e,
0x74, 0x61, 0x69, 0x6e, 0x00, 0x64, 0x69, 0x61, 0x67, 0x6f,
0x6e, 0x61, 0x6c, 0x00, 0x6d, 0x69, 0x72, 0x72, 0x6f, 0x72,
0x73, 0x2e, 0x00, 0x45, 0x76, 0x65, 0x72, 0x79, 0x37, 0x00,
0x03, 0x2d, 0x00, 0x83, 0x69, 0x73, 0x00, 0x6e, 0x6f, 0x74,
0x00, 0x61, 0x25, 0x00, 0xf1, 0x08, 0x00, 0x6d, 0x75, 0x73,
0x74, 0x00, 0x62, 0x65, 0x00, 0x66, 0x69, 0x6c, 0x6c, 0x65,
0x64, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x6f, 0x6e, 0x5e,
0x00, 0xb0, 0x74, 0x68, 0x72, 0x65, 0x65, 0x00, 0x74, 0x79,
0x70, 0x65, 0x73, 0x0f, 0x00, 0x11, 0x75, 0xb3, 0x00, 0x90,
0x00, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, 0x3a, 0x98,
0x00, 0xf2, 0x12, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x00, 0x61,
0x00, 0x76, 0x61, 0x6d, 0x70, 0x69, 0x72, 0x65, 0x2c, 0x00,
0x6f, 0x72, 0x00, 0x61, 0x00, 0x7a, 0x6f, 0x6d, 0x62, 0x69,
0x65, 0x2e, 0x00, 0x00, 0x00, 0x56, 0x18, 0x00, 0x50, 0x73,
0x00, 0x63, 0x61, 0x6e, 0x65, 0x00, 0x30, 0x73, 0x65, 0x65,
0xa7, 0x00, 0xb1, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x2c,
0x00, 0x62, 0x75, 0x74, 0xe8, 0x00, 0x80, 0x69, 0x6e, 0x76,
0x69, 0x73, 0x69, 0x62, 0x6c, 0xa4, 0x00, 0xf6, 0x00, 0x65,
0x6e, 0x00, 0x72, 0x65, 0x66, 0x6c, 0x65, 0x63, 0x74, 0x65,
0x64, 0x00, 0x69, 0x6e, 0xcc, 0x00, 0x10, 0x47, 0x6d, 0x00,
0x11, 0x73, 0x30, 0x00, 0xf0, 0x08, 0x74, 0x68, 0x65, 0x00,
0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x00, 0x77,
0x61, 0x79, 0x00, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x3a, 0x18,
0x00, 0x19, 0x79, 0x6b, 0x00, 0x06, 0x40, 0x00, 0x0f, 0x6d,
0x00, 0x06, 0x95, 0x6c, 0x6f, 0x6f, 0x6b, 0x65, 0x64, 0x00,
0x61, 0x74, 0x98, 0x00, 0x31, 0x2e, 0x00, 0x5a, 0xc1, 0x00,
0x02, 0x6c, 0x00, 0x04, 0x2d, 0x00, 0xd7, 0x62, 0x79, 0x00,
0x61, 0x6e, 0x79, 0x00, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x2e,
0xa4, 0x01, 0x91, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x74, 0x6f,
0x6c, 0x64, 0x96, 0x00, 0xc0, 0x74, 0x6f, 0x74, 0x61, 0x6c,
0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x34, 0x01, 0x41,
0x65, 0x61, 0x63, 0x68, 0x42, 0x01, 0x00, 0x0d, 0x00, 0x03,
0x3a, 0x01, 0x00, 0x96, 0x00, 0x00, 0x2c, 0x00, 0x00, 0xd6,
0x01, 0x30, 0x2e, 0x00, 0x41, 0x40, 0x00, 0x11, 0x61, 0xc1,
0x00, 0x01, 0x16, 0x00, 0x33, 0x65, 0x64, 0x67, 0x7d, 0x01,
0x12, 0x65, 0xf8, 0x01, 0x01, 0xbb, 0x01, 0x63, 0x72, 0x69,
0x74, 0x74, 0x65, 0x6e, 0x59, 0x00, 0x24, 0x73, 0x2c, 0xcc,
0x01, 0xd1, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x00,
0x68, 0x6f, 0x77, 0x00, 0x6d, 0x9f, 0x00, 0x02, 0x63, 0x00,
0x1a, 0x73, 0x06, 0x01, 0x51, 0x66, 0x00, 0x79, 0x6f, 0x75,
0xea, 0x00, 0x57, 0x00, 0x69, 0x6e, 0x74, 0x6f, 0x5c, 0x00,
0xa0, 0x6c, 0x6f, 0x6e, 0x67, 0x00, 0x61, 0x00, 0x72, 0x6f,
0x77, 0xbb, 0x01, 0xf1, 0x0b, 0x63, 0x6f, 0x6c, 0x75, 0x6d,
0x6e, 0x00, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67,
0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x74, 0x68, 0x61, 0x74,
0x00, 0x6c, 0x01, 0x9d, 0x69, 0x6f, 0x6e, 0x2e, 0x00, 0x28,
0x54, 0x68, 0x65, 0x6a, 0x02, 0x01, 0xa5, 0x00, 0x03, 0xb7,
0x01, 0xf1, 0x05, 0x69, 0x76, 0x65, 0x00, 0x6f, 0x6e, 0x00,
0x62, 0x6f, 0x74, 0x68, 0x00, 0x73, 0x69, 0x64, 0x65, 0x73,
0x2e, 0x00, 0x49, 0x81, 0x00, 0x17, 0x72, 0xd9, 0x01, 0x22,
0x6c, 0x69, 0x63, 0x02, 0xd1, 0x73, 0x69, 0x67, 0x68, 0x74,
0x00, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x98, 0x00,
0x45, 0x73, 0x61, 0x6d, 0x65, 0x2a, 0x01, 0x21, 0x6d, 0x6f,
0xee, 0x01, 0x81, 0x61, 0x6e, 0x00, 0x6f, 0x6e, 0x63, 0x65,
0x2c, 0x21, 0x00, 0x03, 0x5d, 0x01, 0xd3, 0x77, 0x69, 0x6c,
0x6c, 0x00, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x00, 0x69, 0x74,
0x68, 0x01, 0x30, 0x69, 0x6d, 0x65, 0x0d, 0x00, 0x24, 0x69,
0x73, 0xb6, 0x01, 0x11, 0x2c, 0xec, 0x02, 0x10, 0x6a, 0xe3,
0x02, 0x00, 0x41, 0x00, 0xf2, 0x01, 0x2e, 0x29, 0x00, 0x00,
0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a,
0x6c, 0x65, 0x9a, 0x01, 0x30, 0x77, 0x61, 0x73, 0x15, 0x02,
0x20, 0x65, 0x6e, 0x99, 0x00, 0xf1, 0x01, 0x62, 0x79, 0x00,
0x44, 0x61, 0x76, 0x69, 0x64, 0x00, 0x4d, 0x69, 0x6c, 0x6c,
0x61, 0x72, 0x2c, 0xf6, 0x02, 0x12, 0x72, 0x79, 0x00, 0x00,
0x9a, 0x00, 0x41, 0x60, 0x48, 0x61, 0x75, 0x29, 0x00, 0x12,
0x4d, 0x3f, 0x03, 0xf3, 0x03, 0x4d, 0x61, 0x7a, 0x65, 0x27,
0x2e, 0x00, 0x53, 0x65, 0x65, 0x00, 0x5b, 0x32, 0x30, 0x5d,
0x00, 0x66, 0x6f, 0xb6, 0x00, 0x61, 0x64, 0x65, 0x74, 0x61,
0x69, 0x6c, 0x2b, 0x02, 0x02, 0xec, 0x03, 0x01, 0x68, 0x00,
0x00, 0xab, 0x03, 0x40, 0x72, 0x69, 0x62, 0x75, 0x42, 0x00,
0x01, 0x89, 0x01, 0x20, 0x69, 0x73, 0x76, 0x01, 0x01, 0x38,
0x01, 0x20, 0x6f, 0x6e, 0x7e, 0x00, 0xd0, 0x53, 0x74, 0x65,
0x66, 0x66, 0x65, 0x6e, 0x00, 0x42, 0x61, 0x75, 0x65, 0x72,
0x3e, 0x00, 0x01, 0x57, 0x00, 0xf4, 0x29, 0x68, 0x74, 0x74,
0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6a, 0x61,
0x6e, 0x6b, 0x6f, 0x2e, 0x61, 0x74, 0x2f, 0x52, 0x61, 0x65,
0x74, 0x73, 0x65, 0x6c, 0x2f, 0x53, 0x70, 0x75, 0x6b, 0x73,
0x63, 0x68, 0x6c, 0x6f, 0x73, 0x73, 0x2f, 0x69, 0x6e, 0x64,
0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, 0x00, 0x00, 0x00, 0x33,
0x37, 0x2e, 0x31, 0x68, 0x04, 0x01, 0x78, 0x00, 0x46, 0x6f,
0x6c, 0x73, 0x20, 0x8f, 0x00, 0xe3, 0x68, 0x61, 0x73, 0x00,
0x61, 0x00, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x00,
0x21, 0x00, 0x70, 0x00, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
0x9c, 0x00, 0xf0, 0x08, 0x53, 0x6f, 0x6c, 0x6f, 0x2c, 0x00,
0x55, 0x6e, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x00, 0x61, 0x6e,
0x64, 0x00, 0x4b, 0x65, 0x65, 0x6e, 0x2e, 0x42, 0x01, 0x63,
0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x00, 0x71, 0x2c,
0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x23, 0x01, 0x40, 0x6d,
0x6f, 0x75, 0x73, 0x62, 0x03, 0x01, 0x2b, 0x03, 0x45, 0x65,
0x6d, 0x70, 0x74, 0x7d, 0x04, 0x12, 0x61, 0xdf, 0x02, 0x12,
0x6e, 0x73, 0x01, 0x60, 0x61, 0x00, 0x6c, 0x65, 0x74, 0x74,
0x23, 0x03, 0x15, 0x72, 0x2d, 0x03, 0x02, 0x15, 0x03, 0x84,
0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0xdc, 0x02,
0x00, 0x87, 0x02, 0x01, 0x59, 0x03, 0x0a, 0x44, 0x03, 0x50,
0x3a, 0x00, 0x60, 0x47, 0x27, 0x3e, 0x00, 0x31, 0x60, 0x31,
0x27, 0x74, 0x01, 0x05, 0x8d, 0x04, 0x22, 0x60, 0x56, 0x18,
0x00, 0x14, 0x32, 0x18, 0x00, 0x08, 0x9c, 0x04, 0x22, 0x60,
0x5a, 0x1d, 0x00, 0x14, 0x33, 0x1d, 0x00, 0x04, 0xab, 0x04,
0x12, 0x49, 0x23, 0x03, 0x41, 0x6d, 0x61, 0x6b, 0x65, 0x1b,
0x05, 0x5e, 0x73, 0x74, 0x61, 0x6b, 0x65, 0xda, 0x00, 0x03,
0xba, 0x03, 0x50, 0x69, 0x6e, 0x63, 0x6f, 0x72, 0x2d, 0x04,
0x08, 0xde, 0x00, 0xb0, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00,
0x53, 0x70, 0x61, 0x63, 0x65, 0x3f, 0x01, 0x50, 0x63, 0x6c,
0x65, 0x61, 0x72, 0x8e, 0x02, 0x20, 0x61, 0x67, 0x9c, 0x05,
0x62, 0x28, 0x6f, 0x72, 0x00, 0x75, 0x73, 0xbb, 0x04, 0xd0,
0x55, 0x6e, 0x64, 0x6f, 0x00, 0x66, 0x65, 0x61, 0x74, 0x75,
0x72, 0x65, 0x29, 0x51, 0x01, 0x03, 0x7e, 0x00, 0x10, 0x72,
0x0d, 0x03, 0x12, 0x2d, 0x74, 0x00, 0x00, 0x44, 0x01, 0x0f,
0x3c, 0x01, 0x15, 0x02, 0x18, 0x03, 0x01, 0x93, 0x00, 0x50,
0x73, 0x70, 0x6f, 0x6e, 0x64, 0x34, 0x01, 0x04, 0x42, 0x03,
0x01, 0x27, 0x03, 0x00, 0x09, 0x04, 0x31, 0x68, 0x6f, 0x77,
0x10, 0x05, 0xb3, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64,
0x00, 0x73, 0x69, 0x7a, 0xd0, 0x00, 0x14, 0x61, 0xc7, 0x00,
0x21, 0x2c, 0x00, 0x13, 0x02, 0xe1, 0x60, 0x70, 0x65, 0x6e,
0x63, 0x69, 0x6c, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x27, 0x2e,
0xe9, 0x04, 0x00, 0x4e, 0x04, 0x57, 0x68, 0x61, 0x76, 0x65,
0x00, 0x1b, 0x00, 0x12, 0x73, 0xec, 0x02, 0x65, 0x75, 0x6c,
0x74, 0x69, 0x70, 0x6c, 0xb3, 0x03, 0x00, 0x4b, 0x03, 0x06,
0xc8, 0x03, 0x02, 0x58, 0x00, 0x34, 0x2e, 0x00, 0x41, 0xcb,
0x00, 0x03, 0xab, 0x06, 0x11, 0x69, 0x76, 0x04, 0x51, 0x66,
0x75, 0x6c, 0x6c, 0x2d, 0x88, 0x00, 0x04, 0xae, 0x00, 0x31,
0x63, 0x61, 0x6e, 0x9d, 0x06, 0x00, 0x14, 0x05, 0x04, 0xd6,
0x06, 0x08, 0x73, 0x00, 0x01, 0x7e, 0x02, 0x00, 0xbd, 0x04,
0x00, 0x5d, 0x00, 0x30, 0x70, 0x61, 0x79, 0xcc, 0x06, 0x20,
0x00, 0x61, 0x1b, 0x05, 0x01, 0x3f, 0x03, 0x29, 0x74, 0x6f,
0x2e, 0x00, 0x00, 0x28, 0x07, 0x40, 0x00, 0x65, 0x78, 0x61,
0xd5, 0x05, 0x20, 0x00, 0x77, 0xe8, 0x00, 0x00, 0x66, 0x01,
0x03, 0x86, 0x01, 0x11, 0x6d, 0xbf, 0x00, 0x50, 0x69, 0x73,
0x00, 0x75, 0x70, 0x38, 0x00, 0x63, 0x79, 0x6f, 0x75, 0x3a,
0x00, 0x79, 0xeb, 0x00, 0x05, 0x23, 0x00, 0x70, 0x61, 0x73,
0x00, 0x72, 0x65, 0x6d, 0x69, 0x03, 0x04, 0x12, 0x73, 0x2a,
0x01, 0x30, 0x61, 0x00, 0x70, 0x1d, 0x05, 0x20, 0x63, 0x75,
0x35, 0x03, 0x03, 0xd5, 0x00, 0x50, 0x6e, 0x65, 0x65, 0x64,
0x73, 0x45, 0x00, 0x10, 0x62, 0x05, 0x05, 0x91, 0x2d, 0x65,
0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x73, 0x04, 0x01,
0x54, 0x00, 0x42, 0x6b, 0x6e, 0x6f, 0x77, 0x16, 0x04, 0x4b,
0x61, 0x62, 0x6f, 0x75, 0x45, 0x00, 0x03, 0xfc, 0x00, 0x01,
0xa0, 0x02, 0x0f, 0x81, 0x00, 0x01, 0x20, 0x6c, 0x69, 0xf7,
0x06, 0x03, 0x12, 0x06, 0x32, 0x70, 0x6f, 0x73, 0x8f, 0x06,
0x07, 0x4c, 0x06, 0x13, 0x61, 0x28, 0x08, 0x04, 0xc5, 0x01,
0x20, 0x6f, 0x72, 0x7f, 0x03, 0x20, 0x74, 0x68, 0x65, 0x01,
0x32, 0x65, 0x6c, 0x73, 0x83, 0x00, 0x93, 0x66, 0x65, 0x65,
0x6c, 0x00, 0x6c, 0x69, 0x6b, 0x65, 0xc1, 0x03, 0x51, 0x65,
0x72, 0x61, 0x73, 0x65, 0x00, 0x04, 0x39, 0x6e, 0x67, 0x6c,
0xd8, 0x01, 0x1c, 0x2c, 0x88, 0x02, 0x01, 0xce, 0x01, 0x07,
0x8a, 0x02, 0x00, 0x85, 0x02, 0x05, 0xe2, 0x01, 0x0d, 0xc8,
0x03, 0x01, 0xef, 0x02, 0x00, 0x65, 0x00, 0x3a, 0x41, 0x6c,
0x6c, 0x2f, 0x02, 0x09, 0xd3, 0x02, 0x22, 0x72, 0x65, 0x83,
0x00, 0x12, 0x64, 0x86, 0x07, 0x01, 0xa0, 0x06, 0x24, 0x65,
0x66, 0x76, 0x00, 0x05, 0x68, 0x00, 0x15, 0x61, 0xe9, 0x00,
0x02, 0x69, 0x00, 0x01, 0xde, 0x00, 0x0f, 0x32, 0x00, 0x05,
0x07, 0x82, 0x03, 0x31, 0x2e, 0x00, 0x52, 0xc5, 0x00, 0x02,
0xc2, 0x03, 0x01, 0x6f, 0x02, 0x04, 0x21, 0x00, 0x00, 0x0d,
0x00, 0x11, 0x73, 0xa6, 0x03, 0x01, 0x1c, 0x03, 0x01, 0x6c,
0x02, 0x02, 0x0e, 0x01, 0x0c, 0x6a, 0x02, 0x12, 0x41, 0xe3,
0x02, 0x02, 0x09, 0x05, 0x01, 0x63, 0x03, 0x50, 0x75, 0x72,
0x73, 0x6f, 0x72, 0xa4, 0x04, 0x05, 0x61, 0x07, 0x22, 0x75,
0x73, 0xa7, 0x08, 0x62, 0x63, 0x6f, 0x6e, 0x6a, 0x75, 0x6e,
0xc6, 0x05, 0x01, 0x44, 0x09, 0x25, 0x74, 0x68, 0x1d, 0x01,
0x01, 0x30, 0x00, 0x11, 0x74, 0x35, 0x05, 0x17, 0x63, 0x29,
0x03, 0x2b, 0x6f, 0x72, 0x72, 0x00, 0x3d, 0x55, 0x73, 0x65,
0x67, 0x00, 0x60, 0x74, 0x6f, 0x00, 0x6d, 0x6f, 0x76, 0x09,
0x01, 0x51, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x2f, 0x07, 0x07,
0x2e, 0x08, 0x00, 0xc6, 0x07, 0x1f, 0x2c, 0x2f, 0x01, 0x07,
0x07, 0x98, 0x01, 0x30, 0x74, 0x6f, 0x00, 0xe2, 0x06, 0x01,
0x93, 0x04, 0x03, 0xd5, 0x01, 0x05, 0x52, 0x00, 0x25, 0x65,
0x64, 0xaa, 0x03, 0x14, 0x50, 0x23, 0x01, 0x50, 0x72, 0x65,
0x74, 0x75, 0x72, 0x53, 0x03, 0x5a, 0x67, 0x67, 0x6c, 0x65,
0x73, 0x30, 0x00, 0x02, 0x46, 0x08, 0x00, 0x6d, 0x00, 0x11,
0x64, 0x44, 0x04, 0x02, 0x8e, 0x08, 0x04, 0xbd, 0x02, 0x02,
0x67, 0x00, 0x10, 0x6f, 0xef, 0x07, 0x2b, 0x6d, 0x6f, 0x34,
0x04, 0x07, 0xee, 0x04, 0x60, 0x70, 0x72, 0x65, 0x66, 0x65,
0x72, 0x15, 0x01, 0x23, 0x69, 0x6e, 0xaf, 0x00, 0x05, 0xe7,
0x02, 0x81, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74,
0x49, 0x05, 0x26, 0x75, 0x74, 0xef, 0x02, 0x51, 0x70, 0x69,
0x63, 0x74, 0x75, 0x03, 0x0b, 0x04, 0x6e, 0x00, 0x02, 0xf5,
0x01, 0x31, 0x60, 0x41, 0x27, 0x50, 0x07, 0x01, 0xae, 0x00,
0x50, 0x00, 0x62, 0x65, 0x74, 0x77, 0xf9, 0x08, 0x00, 0xf5,
0x04, 0x04, 0x41, 0x06, 0x05, 0x77, 0x01, 0x29, 0x61, 0x73,
0x83, 0x01, 0x07, 0x24, 0x00, 0x02, 0x6f, 0x03, 0x02, 0x8a,
0x00, 0x00, 0xa9, 0x00, 0x15, 0x4c, 0x5f, 0x02, 0x02, 0xb0,
0x04, 0x33, 0x63, 0x6c, 0x75, 0x35, 0x02, 0x00, 0xcc, 0x00,
0x01, 0xdc, 0x05, 0x30, 0x73, 0x00, 0x64, 0x2d, 0x0b, 0x50,
0x28, 0x67, 0x72, 0x65, 0x79, 0x11, 0x00, 0x41, 0x6f, 0x75,
0x74, 0x29, 0xa4, 0x02, 0x24, 0x75, 0x6e, 0x24, 0x00, 0x23,
0x69, 0x66, 0x94, 0x08, 0x71, 0x61, 0x6c, 0x72, 0x65, 0x61,
0x64, 0x79, 0x3d, 0x00, 0x20, 0x65, 0x64, 0x61, 0x00, 0x10,
0x28, 0x24, 0x03, 0x01, 0xf0, 0x00, 0x01, 0x39, 0x02, 0x92,
0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x53,
0x02, 0x13, 0x73, 0x15, 0x08, 0x36, 0x32, 0x2e, 0x31, 0x6a,
0x0a, 0x82, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0xcc, 0x08, 0x44, 0x33, 0x37, 0x2e, 0x32, 0xe3, 0x07, 0x60,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0xbc, 0x00, 0x12, 0x20,
0x26, 0x05, 0x00, 0xd2, 0x02, 0x05, 0x14, 0x00, 0x02, 0x42,
0x00, 0x04, 0x3d, 0x00, 0x04, 0xda, 0x09, 0xf1, 0x01, 0x65,
0x00, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x70, 0x00, 0x03, 0x8a, 0x07,
0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65,
0x6e, 0x75, 0xac, 0x00, 0x91, 0x57, 0x69, 0x64, 0x74, 0x68,
0x2c, 0x00, 0x48, 0x65, 0x01, 0x02, 0x51, 0x00, 0x00, 0x53,
0x69, 0x7a, 0x91, 0x07, 0x01, 0x48, 0x0a, 0x14, 0x69, 0x7e,
0x04, 0x01, 0x38, 0x01, 0x40, 0x44, 0x69, 0x66, 0x66, 0xdd,
0x04, 0x63, 0x74, 0x79, 0x00, 0x00, 0x00, 0x43, 0x7a, 0x08,
0x01, 0x54, 0x00, 0x16, 0x64, 0x1a, 0x00, 0x04, 0xe3, 0x0a,
0x50, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x82, 0x02, 0x02, 0x93,
0x09, 0x12, 0x2e, 0xd6, 0x00, 0x14, 0x33, 0xd6, 0x00, 0x52,
0x75, 0x73, 0x65, 0x72, 0x20, 0x2b, 0x02, 0x41, 0x65, 0x6e,
0x63, 0x65, 0xdc, 0x00, 0x20, 0x4f, 0x6e, 0x36, 0x02, 0x63,
0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xc0, 0x06, 0x70, 0x75,
0x70, 0x70, 0x6f, 0x72, 0x74, 0x00, 0x2e, 0x00, 0x17, 0x00,
0x2e, 0x00, 0x12, 0x2c, 0xca, 0x00, 0x16, 0x50, 0x12, 0x00,
0x0d, 0xe6, 0x00, 0x33, 0x47, 0x61, 0x6d, 0xe6, 0x00, 0x02,
0xdb, 0x01, 0x32, 0x6c, 0x65, 0x74, 0x5c, 0x02, 0x71, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x27, 0x0c, 0x44, 0x74,
0x68, 0x65, 0x72, 0x38, 0x09, 0x10, 0x75, 0xaa, 0x0a, 0x05,
0xb0, 0x02, 0x06, 0x93, 0x02, 0x00, 0x80, 0x02, 0x20, 0x72,
0x65, 0x8f, 0x02, 0xe0, 0x65, 0x6e, 0x74, 0x00, 0x6d, 0x6f,
0x6e, 0x73, 0x74, 0x65, 0x72, 0x73, 0x2e, 0x00,
};
const unsigned short help_text_len = 3286;
const unsigned short help_text_words = 614;
const unsigned short help_text_len = 3574;
const unsigned short help_text_words = 660;
const char quick_help_text[] = "Place ghosts, vampires and zombies so that the right numbers of them can be seen in mirrors.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,255 +6,255 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 239, TEXT_CENTER | C_RED },
{ 306, TEXT_UNDERLINE },
{ 631, TEXT_CENTER | C_RED },
{ 648, TEXT_UNDERLINE },
{ 660, TEXT_UNDERLINE },
{ 668, TEXT_UNDERLINE },
{ 240, TEXT_CENTER | C_RED },
{ 307, TEXT_UNDERLINE },
{ 632, TEXT_CENTER | C_RED },
{ 649, TEXT_UNDERLINE },
{ 661, TEXT_UNDERLINE },
{ 669, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 3934 comp 2352 ratio 0.597865 level 10 saved 1582 */
/* orig 3954 comp 2358 ratio 0.596358 level 10 saved 1596 */
const char help_text[] = {
0xf4, 0x24, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfe, 0x07, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x32, 0x37, 0x3a, 0x20, 0x55, 0x6e, 0x65, 0x71, 0x75, 0x61,
0x6c, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x68,
0x61, 0x76, 0x65, 0x00, 0x61, 0x00, 0x73, 0x71, 0x75, 0x61,
0x72, 0x65, 0x00, 0x67, 0x72, 0x69, 0x64, 0x3b, 0x00, 0x65,
0x61, 0x63, 0x68, 0x12, 0x00, 0xf1, 0x1a, 0x6d, 0x61, 0x79,
0x00, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x00, 0x61,
0x00, 0x64, 0x69, 0x67, 0x69, 0x74, 0x00, 0x66, 0x72, 0x6f,
0x6d, 0x00, 0x31, 0x00, 0x74, 0x6f, 0x00, 0x74, 0x68, 0x65,
0x00, 0x73, 0x69, 0x7a, 0x65, 0x00, 0x6f, 0x66, 0x0c, 0x00,
0x00, 0x40, 0x00, 0xa3, 0x2c, 0x00, 0x61, 0x6e, 0x64, 0x00,
0x73, 0x6f, 0x6d, 0x65, 0x44, 0x00, 0x12, 0x73, 0x65, 0x00,
0x30, 0x63, 0x6c, 0x75, 0x2d, 0x00, 0xb0, 0x67, 0x6e, 0x73,
0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x33, 0x00,
0x20, 0x6d, 0x2e, 0x87, 0x00, 0x80, 0x72, 0x00, 0x61, 0x69,
0x6d, 0x00, 0x69, 0x73, 0x54, 0x00, 0xe5, 0x66, 0x75, 0x6c,
0x6c, 0x79, 0x00, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74,
0x65, 0x57, 0x00, 0xf0, 0x0f, 0x00, 0x77, 0x69, 0x74, 0x68,
0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x00, 0x73,
0x75, 0x63, 0x68, 0x00, 0x74, 0x68, 0x61, 0x74, 0x3a, 0x00,
0x00, 0x00, 0x2d, 0x00, 0x45, 0xb2, 0x00, 0x34, 0x72, 0x6f,
0x77, 0xab, 0x00, 0xf1, 0x05, 0x73, 0x00, 0x6f, 0x6e, 0x6c,
0x79, 0x00, 0x6f, 0x6e, 0x65, 0x00, 0x6f, 0x63, 0x63, 0x75,
0x72, 0x72, 0x65, 0x6e, 0x63, 0xa5, 0x00, 0x01, 0xdb, 0x00,
0x02, 0xc6, 0x00, 0x05, 0x38, 0x00, 0x6f, 0x63, 0x6f, 0x6c,
0x75, 0x6d, 0x6e, 0x3b, 0x00, 0x1d, 0x31, 0x41, 0x6c, 0x6c,
0x9c, 0x00, 0x07, 0xd7, 0x00, 0x00, 0x30, 0x01, 0xf1, 0x03,
0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x64, 0x2e,
0x00, 0x00, 0x00, 0x54, 0x68, 0x65, 0x72, 0x65, 0x17, 0x00,
0xf3, 0x0b, 0x74, 0x77, 0x6f, 0x00, 0x6d, 0x6f, 0x64, 0x65,
0x73, 0x00, 0x66, 0x6f, 0x72, 0x00, 0x74, 0x68, 0x69, 0x73,
0x00, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x00, 0x60, 0x90, 0x01,
0x11, 0x27, 0x36, 0x01, 0xa0, 0x60, 0x41, 0x64, 0x6a, 0x61,
0x63, 0x65, 0x6e, 0x74, 0x27, 0x3f, 0x00, 0x27, 0x49, 0x6e,
0x1f, 0x00, 0x00, 0x3e, 0x00, 0x1e, 0x2c, 0x72, 0x00, 0x00,
0x1d, 0x01, 0xf1, 0x0e, 0x65, 0x61, 0x74, 0x65, 0x72, 0x2d,
0x74, 0x68, 0x61, 0x6e, 0x00, 0x73, 0x79, 0x6d, 0x62, 0x6f,
0x6c, 0x73, 0x00, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6e, 0x67, 0xca, 0x00, 0x02, 0x89, 0x01, 0x50, 0x27,
0x73, 0x00, 0x76, 0x61, 0x3d, 0x00, 0x24, 0x69, 0x73, 0x36,
0x00, 0x11, 0x00, 0x36, 0x00, 0xf0, 0x01, 0x69, 0x74, 0x73,
0x00, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72,
0x27, 0x73, 0x2e, 0x7a, 0x00, 0x01, 0xa4, 0x00, 0x00, 0x75,
0x00, 0x81, 0x00, 0x6e, 0x6f, 0x74, 0x00, 0x61, 0x6c, 0x6c,
0x78, 0x00, 0x11, 0x73, 0x11, 0x02, 0xf0, 0x18, 0x62, 0x65,
0x00, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x2c, 0x00,
0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72,
0x6c, 0x79, 0x00, 0x61, 0x74, 0x00, 0x68, 0x69, 0x67, 0x68,
0x65, 0x72, 0x00, 0x64, 0x69, 0x66, 0x66, 0x17, 0x00, 0x94,
0x74, 0x79, 0x00, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0xd1,
0x00, 0x05, 0xe2, 0x00, 0x0f, 0xd2, 0x00, 0x07, 0x3f, 0x62,
0x61, 0x72, 0xc2, 0x00, 0x10, 0x90, 0x6e, 0x75, 0x6d, 0x65,
0x72, 0x69, 0x63, 0x61, 0x6c, 0x78, 0x00, 0x03, 0x55, 0x00,
0x61, 0x00, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x31, 0x00, 0x03,
0x88, 0x00, 0x21, 0x6f, 0x72, 0x0e, 0x00, 0x6f, 0x6c, 0x6f,
0x77, 0x65, 0x72, 0x29, 0xee, 0x00, 0x00, 0x0b, 0xec, 0x00,
0x06, 0xe8, 0x00, 0x20, 0x61, 0x72, 0x0e, 0x00, 0x44, 0x77,
0x61, 0x79, 0x73, 0xec, 0x00, 0x54, 0x3a, 0x00, 0x61, 0x62,
0x73, 0x0e, 0x02, 0x10, 0x61, 0xa6, 0x00, 0xb1, 0x00, 0x74,
0x68, 0x75, 0x73, 0x00, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x8d,
0x02, 0x2f, 0x00, 0x61, 0xa8, 0x00, 0x00, 0xa1, 0x64, 0x65,
0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x6c, 0x79, 0x4a, 0x01,
0x0f, 0xb7, 0x00, 0x02, 0x22, 0x74, 0x6f, 0x40, 0x00, 0x09,
0x85, 0x01, 0x02, 0x30, 0x01, 0x50, 0x54, 0x72, 0x69, 0x76,
0x69, 0x01, 0x02, 0x0c, 0x52, 0x01, 0xa0, 0x00, 0x28, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x8e, 0x01, 0x11,
0x61, 0x49, 0x01, 0x81, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x27, 0x5d, 0x02, 0xf1, 0x00, 0x00, 0x74, 0x79, 0x70,
0x65, 0x00, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72,
0x29, 0x6b, 0x01, 0x03, 0x8f, 0x02, 0x2b, 0x6e, 0x6f, 0x37,
0x02, 0x01, 0x7c, 0x01, 0x1c, 0x69, 0x70, 0x02, 0x11, 0x3b,
0x55, 0x00, 0x63, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x9e,
0x03, 0x42, 0x73, 0x6f, 0x6c, 0x76, 0x95, 0x03, 0x10, 0x4c,
0x9d, 0x01, 0x04, 0x27, 0x04, 0x00, 0x34, 0x03, 0x00, 0xb2,
0x00, 0x21, 0x41, 0x74, 0x1c, 0x00, 0x31, 0x74, 0x69, 0x6d,
0x26, 0x01, 0x30, 0x77, 0x72, 0x69, 0xc2, 0x01, 0x02, 0xe6,
0x01, 0x0a, 0x5c, 0x00, 0x02, 0x33, 0x04, 0x27, 0x69, 0x73,
0x5f, 0x00, 0x60, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0xf2,
0x01, 0x21, 0x69, 0x6e, 0x32, 0x00, 0xf1, 0x06, 0x47, 0x75,
0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x00, 0x77, 0x65, 0x65,
0x6b, 0x6c, 0x79, 0x00, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x1a,
0x00, 0x10, 0x6e, 0xe0, 0x00, 0xa1, 0x60, 0x46, 0x75, 0x74,
0x6f, 0x73, 0x68, 0x69, 0x6b, 0x69, 0x2f, 0x03, 0x03, 0x5f,
0x00, 0x41, 0x00, 0x77, 0x61, 0x73, 0xcd, 0x03, 0x72, 0x72,
0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x5d, 0x01, 0x20, 0x69,
0x73, 0xe8, 0x03, 0x00, 0x0b, 0x01, 0xf1, 0x03, 0x69, 0x6f,
0x6e, 0x00, 0x62, 0x79, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73,
0x00, 0x48, 0x61, 0x72, 0x76, 0x65, 0xba, 0x00, 0x45, 0x32,
0x37, 0x2e, 0x31, 0x1d, 0x05, 0x01, 0x3f, 0x00, 0x47, 0x6f,
0x6c, 0x73, 0x20, 0x57, 0x00, 0x21, 0x73, 0x68, 0xcc, 0x04,
0x10, 0x6d, 0x7a, 0x04, 0x21, 0x6f, 0x66, 0x46, 0x02, 0x03,
0x27, 0x00, 0x72, 0x00, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
0xa2, 0x04, 0x41, 0x53, 0x6f, 0x6c, 0x6f, 0xfc, 0x03, 0x64,
0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x3f, 0x00, 0xe1, 0x2c,
0x00, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c,
0x69, 0x63, 0x6b, 0xc4, 0x00, 0x60, 0x6d, 0x6f, 0x75, 0x73,
0x65, 0x00, 0x58, 0x05, 0x84, 0x6e, 0x79, 0x00, 0x65, 0x6d,
0x70, 0x74, 0x79, 0x4e, 0x01, 0x00, 0x0b, 0x04, 0x42, 0x74,
0x68, 0x65, 0x6e, 0xc2, 0x01, 0x04, 0x77, 0x05, 0x70, 0x6f,
0x72, 0x00, 0x6c, 0x65, 0x74, 0x74, 0xd5, 0x02, 0x02, 0x1f,
0x01, 0x81, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64,
0x36, 0x05, 0x32, 0x69, 0x6c, 0x6c, 0x44, 0x02, 0x02, 0x44,
0x00, 0xc0, 0x2e, 0x00, 0x49, 0x66, 0x00, 0x79, 0x6f, 0x75,
0x00, 0x6d, 0x61, 0x6b, 0x43, 0x00, 0x8e, 0x6d, 0x69, 0x73,
0x74, 0x61, 0x6b, 0x65, 0x2c, 0x80, 0x00, 0x02, 0x4c, 0x00,
0x98, 0x69, 0x6e, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74,
0x84, 0x00, 0xb0, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x53,
0x70, 0x61, 0x63, 0x65, 0x64, 0x00, 0xb0, 0x63, 0x6c, 0x65,
0x61, 0x72, 0x00, 0x69, 0x74, 0x00, 0x61, 0x67, 0x0f, 0x06,
0x62, 0x28, 0x6f, 0x72, 0x00, 0x75, 0x73, 0x0d, 0x02, 0xd1,
0x55, 0x6e, 0x64, 0x6f, 0x00, 0x66, 0x65, 0x61, 0x74, 0x75,
0x72, 0x65, 0x29, 0xbb, 0x02, 0x02, 0x7e, 0x00, 0x62, 0x72,
0x69, 0x67, 0x68, 0x74, 0x2d, 0x74, 0x00, 0x01, 0x42, 0x06,
0x0f, 0xe2, 0x00, 0x04, 0x02, 0xd8, 0x05, 0x13, 0x2c, 0x06,
0x03, 0x01, 0x0d, 0x00, 0x20, 0x00, 0x77, 0xd3, 0x00, 0xa4,
0x62, 0x65, 0x00, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x64,
0xaa, 0x00, 0x04, 0x42, 0x00, 0xf1, 0x03, 0x73, 0x00, 0x61,
0x00, 0x60, 0x70, 0x65, 0x6e, 0x63, 0x69, 0x6c, 0x00, 0x6d,
0x61, 0x72, 0x6b, 0x27, 0x2e, 0xd1, 0x06, 0x32, 0x63, 0x61,
0x6e, 0x70, 0x06, 0x07, 0x1b, 0x00, 0x02, 0x76, 0x05, 0x85,
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x45, 0x06,
0x04, 0x51, 0x00, 0x00, 0x4c, 0x02, 0x04, 0x36, 0x01, 0x13,
0x53, 0xb3, 0x06, 0x03, 0x0e, 0x06, 0x00, 0x8d, 0x02, 0x00,
0x5b, 0x01, 0x55, 0x65, 0x64, 0x2d, 0x69, 0x6e, 0x39, 0x00,
0x32, 0x63, 0x61, 0x6e, 0x15, 0x05, 0x25, 0x73, 0x6f, 0x1d,
0x07, 0x08, 0x6f, 0x00, 0x03, 0xfc, 0x05, 0x02, 0x86, 0x03,
0x10, 0x70, 0x43, 0x04, 0x81, 0x6e, 0x6f, 0x00, 0x61, 0x74,
0x74, 0x65, 0x6e, 0x7e, 0x02, 0x29, 0x74, 0x6f, 0x2e, 0x00,
0xe0, 0x2c, 0x00, 0x73, 0x6f, 0x00, 0x65, 0x78, 0x61, 0x63,
0x74, 0x6c, 0x79, 0x00, 0x77, 0x01, 0x01, 0x00, 0x3a, 0x01,
0x03, 0x5a, 0x01, 0x11, 0x6d, 0xbb, 0x00, 0x50, 0x69, 0x73,
0x00, 0x75, 0x70, 0x38, 0x00, 0x63, 0x79, 0x6f, 0x75, 0x3a,
0x00, 0x79, 0xe7, 0x00, 0x05, 0x23, 0x00, 0x70, 0x61, 0x73,
0x00, 0x72, 0x65, 0x6d, 0x69, 0x1e, 0x03, 0x05, 0x89, 0x04,
0x06, 0x98, 0x05, 0x04, 0x32, 0x01, 0x41, 0x6e, 0x65, 0x65,
0x64, 0xc4, 0x03, 0xf0, 0x01, 0x62, 0x65, 0x00, 0x72, 0x65,
0x2d, 0x65, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x00,
0x6f, 0xd3, 0x04, 0x00, 0x54, 0x00, 0x70, 0x6b, 0x6e, 0x6f,
0x77, 0x00, 0x6d, 0x6f, 0x5d, 0x01, 0x3b, 0x62, 0x6f, 0x75,
0x45, 0x00, 0x04, 0xa2, 0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00,
0x02, 0x54, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x07, 0x08, 0x31,
0x70, 0x6f, 0x73, 0x32, 0x05, 0x08, 0x6a, 0x01, 0x64, 0x61,
0x00, 0x67, 0x69, 0x76, 0x65, 0x31, 0x04, 0x01, 0x48, 0x00,
0x50, 0x61, 0x6e, 0x79, 0x74, 0x68, 0x62, 0x01, 0x32, 0x65,
0x6c, 0x73, 0x82, 0x00, 0x93, 0x66, 0x65, 0x65, 0x6c, 0x00,
0x6c, 0x69, 0x6b, 0x65, 0x42, 0x03, 0x41, 0x65, 0x72, 0x61,
0x73, 0x9f, 0x08, 0x49, 0x69, 0x6e, 0x67, 0x6c, 0xd3, 0x01,
0x1c, 0x2c, 0x5b, 0x02, 0x08, 0x1b, 0x02, 0x22, 0x6e, 0x64,
0x58, 0x02, 0x05, 0xde, 0x01, 0x03, 0x52, 0x02, 0x01, 0xb8,
0x02, 0x01, 0xa7, 0x04, 0x2a, 0x6c, 0x6c, 0x20, 0x02, 0x09,
0x9c, 0x02, 0x22, 0x72, 0x65, 0x79, 0x00, 0x30, 0x64, 0x00,
0x77, 0xa3, 0x02, 0x00, 0x99, 0x00, 0x34, 0x6c, 0x65, 0x66,
0x6c, 0x00, 0x05, 0x5e, 0x00, 0x18, 0x61, 0x14, 0x01, 0x0f,
0x2a, 0x00, 0x05, 0x02, 0x43, 0x03, 0x10, 0x73, 0x43, 0x03,
0x36, 0x2e, 0x00, 0x52, 0xb3, 0x00, 0x00, 0xf7, 0x00, 0x05,
0x20, 0x00, 0x00, 0x0d, 0x00, 0x01, 0x23, 0x00, 0x02, 0xf4,
0x02, 0x01, 0x58, 0x02, 0x02, 0xfb, 0x00, 0x0c, 0x56, 0x02,
0x12, 0x41, 0xcb, 0x02, 0x00, 0x65, 0x04, 0x03, 0x3b, 0x07,
0x50, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x0b, 0x04, 0x01, 0x97,
0x02, 0x00, 0xdc, 0x01, 0x22, 0x75, 0x73, 0x2d, 0x03, 0x62,
0x63, 0x6f, 0x6e, 0x6a, 0x75, 0x6e, 0xf1, 0x04, 0x01, 0x9b,
0x04, 0x00, 0x30, 0x00, 0x02, 0x4b, 0x04, 0x01, 0x2f, 0x00,
0x00, 0xce, 0x05, 0x25, 0x65, 0x74, 0xa4, 0x01, 0x2b, 0x6f,
0x72, 0x6e, 0x00, 0x04, 0x4e, 0x03, 0x01, 0x8f, 0x00, 0x04,
0xe9, 0x03, 0x30, 0x60, 0x4d, 0x27, 0x3e, 0x00, 0x00, 0x3d,
0x00, 0x51, 0x61, 0x75, 0x74, 0x6f, 0x2d, 0x78, 0x04, 0x54,
0x65, 0x76, 0x65, 0x72, 0x79, 0xda, 0x06, 0xc1, 0x00, 0x68,
0x69, 0x6e, 0x74, 0x2c, 0x00, 0x72, 0x65, 0x61, 0x64, 0x79,
0xad, 0x00, 0x72, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x61, 0x6c,
0xa6, 0x02, 0x61, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x33,
0x01, 0x01, 0x4f, 0x00, 0x15, 0x48, 0x4f, 0x00, 0x26, 0x64,
0x6f, 0xb0, 0x01, 0x23, 0x62, 0x75, 0x5e, 0x03, 0x22, 0x74,
0x6f, 0x3f, 0x00, 0x02, 0x9a, 0x07, 0x71, 0x6f, 0x62, 0x76,
0x69, 0x6f, 0x75, 0x73, 0x62, 0x00, 0x12, 0x73, 0xc8, 0x01,
0xc5, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65,
0x6c, 0x79, 0x2c, 0xa5, 0x00, 0x08, 0x15, 0x01, 0x10, 0x74,
0x79, 0x09, 0x03, 0xb3, 0x06, 0x00, 0xd9, 0x00, 0x75, 0x00,
0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x58, 0x0a, 0x34, 0x2e,
0x00, 0x50, 0x83, 0x01, 0x20, 0x74, 0x68, 0x19, 0x03, 0x43,
0x74, 0x75, 0x72, 0x6e, 0x94, 0x00, 0x56, 0x67, 0x67, 0x6c,
0x65, 0x73, 0x3a, 0x00, 0x11, 0x28, 0xf9, 0x0a, 0x72, 0x61,
0x00, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x27, 0x01, 0x01, 0x08,
0x01, 0x08, 0x38, 0x01, 0x24, 0x29, 0x2c, 0x21, 0x02, 0x01,
0xe2, 0x01, 0x04, 0x7a, 0x02, 0x20, 0x69, 0x6e, 0xc4, 0x03,
0x0f, 0xca, 0x04, 0x03, 0x03, 0x0e, 0x00, 0x80, 0x61, 0x70,
0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0xf5, 0x0a, 0x44, 0x77,
0x61, 0x79, 0x3b, 0x44, 0x00, 0x01, 0x9b, 0x02, 0x21, 0x30,
0x00, 0x6d, 0x05, 0x04, 0xa6, 0x00, 0x02, 0x2d, 0x02, 0x23,
0x62, 0x61, 0x25, 0x05, 0x02, 0x99, 0x05, 0x13, 0x61, 0xaa,
0x04, 0x05, 0xcc, 0x04, 0x58, 0x00, 0x00, 0x4c, 0x65, 0x66,
0x70, 0x02, 0x02, 0x69, 0x09, 0x01, 0x33, 0x00, 0x01, 0xbd,
0x00, 0x20, 0x69, 0x74, 0x95, 0x01, 0x10, 0x64, 0x21, 0x09,
0x60, 0x28, 0x67, 0x72, 0x65, 0x79, 0x00, 0x66, 0x06, 0x41,
0x75, 0x74, 0x29, 0x2c, 0x6e, 0x00, 0x14, 0x6e, 0x24, 0x00,
0x10, 0x69, 0xee, 0x06, 0x01, 0xa1, 0x07, 0x12, 0x6c, 0xd6,
0x01, 0x00, 0x19, 0x00, 0x00, 0xe2, 0x0a, 0x40, 0x48, 0x6f,
0x6c, 0x64, 0x59, 0x00, 0x13, 0x43, 0x08, 0x07, 0x00, 0x9a,
0x02, 0x4a, 0x68, 0x69, 0x66, 0x74, 0xda, 0x02, 0x00, 0x43,
0x02, 0x10, 0x72, 0x9d, 0x0b, 0x00, 0x55, 0x01, 0x00, 0xdd,
0x03, 0x43, 0x77, 0x69, 0x73, 0x65, 0x78, 0x03, 0x00, 0xfb,
0x06, 0x01, 0x95, 0x00, 0x0a, 0x0b, 0x09, 0x05, 0xc3, 0x01,
0x03, 0x1c, 0x01, 0x02, 0x3b, 0x04, 0x32, 0x64, 0x69, 0x72,
0xc0, 0x07, 0x00, 0xdb, 0x00, 0x14, 0x28, 0x81, 0x0b, 0x11,
0x61, 0x13, 0x00, 0x00, 0x68, 0x09, 0x52, 0x73, 0x63, 0x72,
0x69, 0x62, 0x5f, 0x01, 0x13, 0x73, 0xe9, 0x07, 0x33, 0x32,
0x2e, 0x31, 0xca, 0x09, 0x35, 0x73, 0x6f, 0x00, 0x30, 0x09,
0x22, 0x2e, 0x29, 0xf1, 0x07, 0x15, 0x32, 0xf1, 0x07, 0xb2,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
0x20, 0xbc, 0x05, 0x00, 0x7c, 0x03, 0x05, 0x14, 0x00, 0x02,
0x43, 0x00, 0x05, 0x6e, 0x09, 0x01, 0x07, 0x02, 0x07, 0x6f,
0x09, 0x71, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70, 0x71,
0x00, 0x03, 0x9b, 0x07, 0xb0, 0x60, 0x54, 0x79, 0x70, 0x65,
0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xad, 0x00, 0x10, 0x4d,
0xf1, 0x08, 0x03, 0x07, 0x00, 0x28, 0x6f, 0x66, 0x56, 0x09,
0x16, 0x28, 0x16, 0x09, 0x27, 0x6f, 0x72, 0x1e, 0x0b, 0x00,
0xa2, 0x00, 0x94, 0x53, 0x69, 0x7a, 0x65, 0x20, 0x28, 0x73,
0x2a, 0x73, 0x0d, 0x00, 0x00, 0x3c, 0x00, 0x02, 0xb4, 0x02,
0x36, 0x00, 0x00, 0x44, 0x0f, 0x0a, 0x14, 0x00, 0x81, 0x01,
0x02, 0xac, 0x02, 0x07, 0x29, 0x0a, 0x04, 0x97, 0x0d, 0x50,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x0c, 0x09, 0x02, 0x76, 0x00,
0x10, 0x2e, 0xa8, 0x09, 0x03, 0x59, 0x0a, 0x02, 0x4d, 0x0a,
0x0f, 0x1d, 0x0a, 0x0e, 0x0f, 0x0b, 0x0a, 0x1d, 0x50, 0x41,
0x74, 0x00, 0x52, 0x65, 0xc5, 0x01, 0x34, 0x69, 0x76, 0x65,
0xb0, 0x0a, 0x01, 0x59, 0x0d, 0x0f, 0xb5, 0x0a, 0x1b, 0x82,
0x00, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0xc1, 0x02,
0x04, 0x12, 0x08, 0x06, 0x47, 0x04, 0x00, 0x29, 0x04, 0x01,
0x11, 0x03, 0x31, 0x6f, 0x6c, 0x75, 0x80, 0x01, 0x93, 0x73,
0x68, 0x6f, 0x75, 0x6c, 0x64, 0x00, 0x73, 0x74, 0x2b, 0x00,
0x71, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x2e, 0x8f, 0x07,
0x02, 0x89, 0x0c, 0x00, 0x1f, 0x02, 0x04, 0x81, 0x0e, 0x03,
0x49, 0x00, 0x00, 0xfe, 0x08, 0x31, 0x72, 0x65, 0x61, 0x66,
0x06, 0x00, 0xef, 0x0e, 0x60, 0x6d, 0x70, 0x6c, 0x65, 0x78,
0x00, 0x12, 0x00, 0x21, 0x6f, 0x6e, 0x73, 0x03, 0x00, 0x3c,
0x02, 0x30, 0x6f, 0x69, 0x64, 0x59, 0x08, 0x03, 0x10, 0x00,
0xb0, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63, 0x6b,
0x2e, 0x00,
0x6c, 0x20, 0x00, 0x2d, 0x01, 0x00, 0xf4, 0x10, 0x00, 0x00,
0x00, 0x59, 0x6f, 0x75, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00,
0x61, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x00, 0x67,
0x72, 0x69, 0x64, 0x3b, 0x00, 0x65, 0x61, 0x63, 0x68, 0x12,
0x00, 0xf1, 0x1a, 0x6d, 0x61, 0x79, 0x00, 0x63, 0x6f, 0x6e,
0x74, 0x61, 0x69, 0x6e, 0x00, 0x61, 0x00, 0x64, 0x69, 0x67,
0x69, 0x74, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x00, 0x31, 0x00,
0x74, 0x6f, 0x00, 0x74, 0x68, 0x65, 0x00, 0x73, 0x69, 0x7a,
0x65, 0x00, 0x6f, 0x66, 0x0c, 0x00, 0x00, 0x40, 0x00, 0xa3,
0x2c, 0x00, 0x61, 0x6e, 0x64, 0x00, 0x73, 0x6f, 0x6d, 0x65,
0x44, 0x00, 0x12, 0x73, 0x65, 0x00, 0x30, 0x63, 0x6c, 0x75,
0x2d, 0x00, 0xb0, 0x67, 0x6e, 0x73, 0x00, 0x62, 0x65, 0x74,
0x77, 0x65, 0x65, 0x6e, 0x33, 0x00, 0x20, 0x6d, 0x2e, 0x87,
0x00, 0x80, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73,
0x54, 0x00, 0xe5, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x00, 0x70,
0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x57, 0x00, 0xf0,
0x0f, 0x00, 0x77, 0x69, 0x74, 0x68, 0x00, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x73, 0x00, 0x73, 0x75, 0x63, 0x68, 0x00,
0x74, 0x68, 0x61, 0x74, 0x3a, 0x00, 0x00, 0x00, 0x2d, 0x00,
0x45, 0xb2, 0x00, 0x34, 0x72, 0x6f, 0x77, 0xab, 0x00, 0xf1,
0x05, 0x73, 0x00, 0x6f, 0x6e, 0x6c, 0x79, 0x00, 0x6f, 0x6e,
0x65, 0x00, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x63, 0xa5, 0x00, 0x01, 0xdb, 0x00, 0x02, 0xc6, 0x00, 0x05,
0x38, 0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x3b,
0x00, 0x1d, 0x31, 0x41, 0x6c, 0x6c, 0x9c, 0x00, 0x07, 0xd7,
0x00, 0x00, 0x30, 0x01, 0xf1, 0x03, 0x73, 0x61, 0x74, 0x69,
0x73, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x00, 0x00, 0x00, 0x54,
0x68, 0x65, 0x72, 0x65, 0x17, 0x00, 0xf3, 0x0b, 0x74, 0x77,
0x6f, 0x00, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x00, 0x66, 0x6f,
0x72, 0x00, 0x74, 0x68, 0x69, 0x73, 0x00, 0x67, 0x61, 0x6d,
0x65, 0x2c, 0x00, 0x60, 0xa4, 0x01, 0x11, 0x27, 0x36, 0x01,
0xa0, 0x60, 0x41, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74,
0x27, 0x3f, 0x00, 0x27, 0x49, 0x6e, 0x1f, 0x00, 0x00, 0x3e,
0x00, 0x1e, 0x2c, 0x72, 0x00, 0x00, 0x1d, 0x01, 0xf1, 0x0e,
0x65, 0x61, 0x74, 0x65, 0x72, 0x2d, 0x74, 0x68, 0x61, 0x6e,
0x00, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x00, 0x69,
0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0xca,
0x00, 0x02, 0x89, 0x01, 0x50, 0x27, 0x73, 0x00, 0x76, 0x61,
0x3d, 0x00, 0x24, 0x69, 0x73, 0x36, 0x00, 0x11, 0x00, 0x36,
0x00, 0xf0, 0x01, 0x69, 0x74, 0x73, 0x00, 0x6e, 0x65, 0x69,
0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x27, 0x73, 0x2e, 0x7a,
0x00, 0x01, 0xa4, 0x00, 0x00, 0x75, 0x00, 0x81, 0x00, 0x6e,
0x6f, 0x74, 0x00, 0x61, 0x6c, 0x6c, 0x78, 0x00, 0x11, 0x73,
0x11, 0x02, 0xf0, 0x18, 0x62, 0x65, 0x00, 0x76, 0x69, 0x73,
0x69, 0x62, 0x6c, 0x65, 0x2c, 0x00, 0x70, 0x61, 0x72, 0x74,
0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x00, 0x61,
0x74, 0x00, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x00, 0x64,
0x69, 0x66, 0x66, 0x17, 0x00, 0x94, 0x74, 0x79, 0x00, 0x6c,
0x65, 0x76, 0x65, 0x6c, 0x73, 0xd1, 0x00, 0x05, 0xe2, 0x00,
0x0f, 0xd2, 0x00, 0x07, 0x3f, 0x62, 0x61, 0x72, 0xc2, 0x00,
0x10, 0x90, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61,
0x6c, 0x78, 0x00, 0x03, 0x55, 0x00, 0x61, 0x00, 0x28, 0x69,
0x2e, 0x65, 0x2e, 0x31, 0x00, 0x03, 0x88, 0x00, 0x21, 0x6f,
0x72, 0x0e, 0x00, 0x6f, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x29,
0xee, 0x00, 0x00, 0x0b, 0xec, 0x00, 0x06, 0xe8, 0x00, 0x20,
0x61, 0x72, 0x0e, 0x00, 0x44, 0x77, 0x61, 0x79, 0x73, 0xec,
0x00, 0x54, 0x3a, 0x00, 0x61, 0x62, 0x73, 0x0e, 0x02, 0x10,
0x61, 0xa6, 0x00, 0xb1, 0x00, 0x74, 0x68, 0x75, 0x73, 0x00,
0x6d, 0x65, 0x61, 0x6e, 0x73, 0x8d, 0x02, 0x2f, 0x00, 0x61,
0xa8, 0x00, 0x00, 0xa1, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69,
0x74, 0x65, 0x6c, 0x79, 0x4a, 0x01, 0x0f, 0xb7, 0x00, 0x02,
0x22, 0x74, 0x6f, 0x40, 0x00, 0x09, 0x85, 0x01, 0x02, 0x30,
0x01, 0x50, 0x54, 0x72, 0x69, 0x76, 0x69, 0x01, 0x02, 0x0c,
0x52, 0x01, 0xa0, 0x00, 0x28, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x8e, 0x01, 0x11, 0x61, 0x49, 0x01, 0x81,
0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x27, 0x5d, 0x02,
0xf1, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x00, 0x73, 0x65,
0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x29, 0x6b, 0x01, 0x03,
0x8f, 0x02, 0x2b, 0x6e, 0x6f, 0x37, 0x02, 0x01, 0x7c, 0x01,
0x1c, 0x69, 0x70, 0x02, 0x11, 0x3b, 0x55, 0x00, 0x63, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x9e, 0x03, 0x42, 0x73, 0x6f,
0x6c, 0x76, 0x95, 0x03, 0x10, 0x4c, 0x9d, 0x01, 0x04, 0x27,
0x04, 0x00, 0x34, 0x03, 0x00, 0xb2, 0x00, 0x21, 0x41, 0x74,
0x1c, 0x00, 0x31, 0x74, 0x69, 0x6d, 0x26, 0x01, 0x30, 0x77,
0x72, 0x69, 0xc2, 0x01, 0x02, 0xe6, 0x01, 0x0a, 0x5c, 0x00,
0x02, 0x33, 0x04, 0x27, 0x69, 0x73, 0x5f, 0x00, 0x60, 0x61,
0x70, 0x70, 0x65, 0x61, 0x72, 0xf2, 0x01, 0x21, 0x69, 0x6e,
0x32, 0x00, 0xf1, 0x06, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69,
0x61, 0x6e, 0x00, 0x77, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x00,
0x75, 0x6e, 0x64, 0x65, 0x72, 0x1a, 0x00, 0x10, 0x6e, 0xe0,
0x00, 0xa1, 0x60, 0x46, 0x75, 0x74, 0x6f, 0x73, 0x68, 0x69,
0x6b, 0x69, 0x2f, 0x03, 0x03, 0x5f, 0x00, 0x41, 0x00, 0x77,
0x61, 0x73, 0xcd, 0x03, 0x72, 0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x64, 0x5d, 0x01, 0x20, 0x69, 0x73, 0xe8, 0x03, 0x00,
0x0b, 0x01, 0xf1, 0x03, 0x69, 0x6f, 0x6e, 0x00, 0x62, 0x79,
0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x00, 0x48, 0x61, 0x72,
0x76, 0x65, 0xba, 0x00, 0x45, 0x32, 0x37, 0x2e, 0x31, 0x31,
0x05, 0x01, 0x3f, 0x00, 0x47, 0x6f, 0x6c, 0x73, 0x20, 0x57,
0x00, 0x21, 0x73, 0x68, 0xcc, 0x04, 0x10, 0x6d, 0x7a, 0x04,
0x21, 0x6f, 0x66, 0x46, 0x02, 0x03, 0x27, 0x00, 0x72, 0x00,
0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0xa2, 0x04, 0x41, 0x53,
0x6f, 0x6c, 0x6f, 0xfc, 0x03, 0x64, 0x6f, 0x00, 0x70, 0x6c,
0x61, 0x79, 0x3f, 0x00, 0xe1, 0x2c, 0x00, 0x73, 0x69, 0x6d,
0x70, 0x6c, 0x79, 0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xc4,
0x00, 0x60, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x00, 0x58, 0x05,
0x84, 0x6e, 0x79, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x4e,
0x01, 0x00, 0x0b, 0x04, 0x42, 0x74, 0x68, 0x65, 0x6e, 0xc2,
0x01, 0x04, 0x77, 0x05, 0x70, 0x6f, 0x72, 0x00, 0x6c, 0x65,
0x74, 0x74, 0xd5, 0x02, 0x02, 0x1f, 0x01, 0x81, 0x6b, 0x65,
0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x36, 0x05, 0x32, 0x69,
0x6c, 0x6c, 0x44, 0x02, 0x02, 0x44, 0x00, 0xc0, 0x2e, 0x00,
0x49, 0x66, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x6d, 0x61, 0x6b,
0x43, 0x00, 0x8e, 0x6d, 0x69, 0x73, 0x74, 0x61, 0x6b, 0x65,
0x2c, 0x80, 0x00, 0x02, 0x4c, 0x00, 0x98, 0x69, 0x6e, 0x63,
0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x84, 0x00, 0xb0, 0x70,
0x72, 0x65, 0x73, 0x73, 0x00, 0x53, 0x70, 0x61, 0x63, 0x65,
0x64, 0x00, 0xb0, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x00, 0x69,
0x74, 0x00, 0x61, 0x67, 0x0f, 0x06, 0x62, 0x28, 0x6f, 0x72,
0x00, 0x75, 0x73, 0x0d, 0x02, 0xd1, 0x55, 0x6e, 0x64, 0x6f,
0x00, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x29, 0xbb,
0x02, 0x02, 0x7e, 0x00, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74,
0x2d, 0x74, 0x00, 0x01, 0x42, 0x06, 0x0f, 0xe2, 0x00, 0x04,
0x02, 0xd8, 0x05, 0x13, 0x2c, 0x06, 0x03, 0x01, 0x0d, 0x00,
0x20, 0x00, 0x77, 0xd3, 0x00, 0xa4, 0x62, 0x65, 0x00, 0x65,
0x6e, 0x74, 0x65, 0x72, 0x65, 0x64, 0xaa, 0x00, 0x04, 0x42,
0x00, 0xf1, 0x03, 0x73, 0x00, 0x61, 0x00, 0x60, 0x70, 0x65,
0x6e, 0x63, 0x69, 0x6c, 0x00, 0x6d, 0x61, 0x72, 0x6b, 0x27,
0x2e, 0xd1, 0x06, 0x32, 0x63, 0x61, 0x6e, 0x70, 0x06, 0x07,
0x1b, 0x00, 0x02, 0x76, 0x05, 0x85, 0x6d, 0x75, 0x6c, 0x74,
0x69, 0x70, 0x6c, 0x65, 0x45, 0x06, 0x04, 0x51, 0x00, 0x00,
0x4c, 0x02, 0x04, 0x36, 0x01, 0x13, 0x53, 0xb3, 0x06, 0x03,
0x0e, 0x06, 0x00, 0x8d, 0x02, 0x00, 0x5b, 0x01, 0x55, 0x65,
0x64, 0x2d, 0x69, 0x6e, 0x39, 0x00, 0x32, 0x63, 0x61, 0x6e,
0x15, 0x05, 0x25, 0x73, 0x6f, 0x1d, 0x07, 0x08, 0x6f, 0x00,
0x03, 0xfc, 0x05, 0x02, 0x86, 0x03, 0x10, 0x70, 0x43, 0x04,
0x81, 0x6e, 0x6f, 0x00, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x7e,
0x02, 0x29, 0x74, 0x6f, 0x2e, 0x00, 0xe0, 0x2c, 0x00, 0x73,
0x6f, 0x00, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x00,
0x77, 0x01, 0x01, 0x00, 0x3a, 0x01, 0x03, 0x5a, 0x01, 0x11,
0x6d, 0xbb, 0x00, 0x50, 0x69, 0x73, 0x00, 0x75, 0x70, 0x38,
0x00, 0x63, 0x79, 0x6f, 0x75, 0x3a, 0x00, 0x79, 0xe7, 0x00,
0x05, 0x23, 0x00, 0x70, 0x61, 0x73, 0x00, 0x72, 0x65, 0x6d,
0x69, 0x1e, 0x03, 0x05, 0x89, 0x04, 0x06, 0x98, 0x05, 0x04,
0x32, 0x01, 0x41, 0x6e, 0x65, 0x65, 0x64, 0xc4, 0x03, 0xf0,
0x01, 0x62, 0x65, 0x00, 0x72, 0x65, 0x2d, 0x65, 0x78, 0x61,
0x6d, 0x69, 0x6e, 0x65, 0x64, 0x00, 0x6f, 0xd3, 0x04, 0x00,
0x54, 0x00, 0x70, 0x6b, 0x6e, 0x6f, 0x77, 0x00, 0x6d, 0x6f,
0x5d, 0x01, 0x3b, 0x62, 0x6f, 0x75, 0x45, 0x00, 0x04, 0xa2,
0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00, 0x02, 0x54, 0x6c, 0x69,
0x73, 0x74, 0x73, 0x07, 0x08, 0x31, 0x70, 0x6f, 0x73, 0x32,
0x05, 0x08, 0x6a, 0x01, 0x64, 0x61, 0x00, 0x67, 0x69, 0x76,
0x65, 0x31, 0x04, 0x01, 0x48, 0x00, 0x50, 0x61, 0x6e, 0x79,
0x74, 0x68, 0x62, 0x01, 0x32, 0x65, 0x6c, 0x73, 0x82, 0x00,
0x93, 0x66, 0x65, 0x65, 0x6c, 0x00, 0x6c, 0x69, 0x6b, 0x65,
0x42, 0x03, 0x41, 0x65, 0x72, 0x61, 0x73, 0x9f, 0x08, 0x49,
0x69, 0x6e, 0x67, 0x6c, 0xd3, 0x01, 0x1c, 0x2c, 0x5b, 0x02,
0x08, 0x1b, 0x02, 0x22, 0x6e, 0x64, 0x58, 0x02, 0x05, 0xde,
0x01, 0x03, 0x52, 0x02, 0x01, 0xb8, 0x02, 0x01, 0xa7, 0x04,
0x2a, 0x6c, 0x6c, 0x20, 0x02, 0x09, 0x9c, 0x02, 0x22, 0x72,
0x65, 0x79, 0x00, 0x30, 0x64, 0x00, 0x77, 0xa3, 0x02, 0x00,
0x99, 0x00, 0x34, 0x6c, 0x65, 0x66, 0x6c, 0x00, 0x05, 0x5e,
0x00, 0x18, 0x61, 0x14, 0x01, 0x0f, 0x2a, 0x00, 0x05, 0x02,
0x43, 0x03, 0x10, 0x73, 0x43, 0x03, 0x36, 0x2e, 0x00, 0x52,
0xb3, 0x00, 0x00, 0xf7, 0x00, 0x05, 0x20, 0x00, 0x00, 0x0d,
0x00, 0x01, 0x23, 0x00, 0x02, 0xf4, 0x02, 0x01, 0x58, 0x02,
0x02, 0xfb, 0x00, 0x0c, 0x56, 0x02, 0x12, 0x41, 0xcb, 0x02,
0x00, 0x65, 0x04, 0x03, 0x3b, 0x07, 0x50, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x0b, 0x04, 0x01, 0x97, 0x02, 0x00, 0xdc, 0x01,
0x22, 0x75, 0x73, 0x2d, 0x03, 0x62, 0x63, 0x6f, 0x6e, 0x6a,
0x75, 0x6e, 0xf1, 0x04, 0x01, 0x9b, 0x04, 0x00, 0x30, 0x00,
0x02, 0x4b, 0x04, 0x01, 0x2f, 0x00, 0x00, 0xce, 0x05, 0x25,
0x65, 0x74, 0xa4, 0x01, 0x2b, 0x6f, 0x72, 0x6e, 0x00, 0x04,
0x4e, 0x03, 0x01, 0x8f, 0x00, 0x04, 0xe9, 0x03, 0x30, 0x60,
0x4d, 0x27, 0x3e, 0x00, 0x00, 0x3d, 0x00, 0x51, 0x61, 0x75,
0x74, 0x6f, 0x2d, 0x78, 0x04, 0x54, 0x65, 0x76, 0x65, 0x72,
0x79, 0xda, 0x06, 0xc1, 0x00, 0x68, 0x69, 0x6e, 0x74, 0x2c,
0x00, 0x72, 0x65, 0x61, 0x64, 0x79, 0xad, 0x00, 0x72, 0x72,
0x65, 0x6d, 0x6f, 0x76, 0x61, 0x6c, 0xa6, 0x02, 0x61, 0x71,
0x75, 0x69, 0x72, 0x65, 0x64, 0x33, 0x01, 0x01, 0x4f, 0x00,
0x15, 0x48, 0x4f, 0x00, 0x26, 0x64, 0x6f, 0xb0, 0x01, 0x23,
0x62, 0x75, 0x5e, 0x03, 0x22, 0x74, 0x6f, 0x3f, 0x00, 0x02,
0x9a, 0x07, 0x71, 0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73,
0x62, 0x00, 0x12, 0x73, 0xc8, 0x01, 0xc5, 0x74, 0x65, 0x72,
0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x2c, 0xa5,
0x00, 0x08, 0x15, 0x01, 0x10, 0x74, 0x79, 0x09, 0x03, 0xb3,
0x06, 0x00, 0xd9, 0x00, 0x75, 0x00, 0x61, 0x72, 0x6f, 0x75,
0x6e, 0x64, 0x58, 0x0a, 0x34, 0x2e, 0x00, 0x50, 0x83, 0x01,
0x20, 0x74, 0x68, 0x19, 0x03, 0x43, 0x74, 0x75, 0x72, 0x6e,
0x94, 0x00, 0x56, 0x67, 0x67, 0x6c, 0x65, 0x73, 0x3a, 0x00,
0x11, 0x28, 0xf9, 0x0a, 0x72, 0x61, 0x00, 0x6e, 0x6f, 0x72,
0x6d, 0x61, 0x27, 0x01, 0x01, 0x08, 0x01, 0x08, 0x38, 0x01,
0x24, 0x29, 0x2c, 0x21, 0x02, 0x01, 0xe2, 0x01, 0x04, 0x7a,
0x02, 0x20, 0x69, 0x6e, 0xc4, 0x03, 0x0f, 0xca, 0x04, 0x03,
0x03, 0x0e, 0x00, 0x80, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70,
0x72, 0x69, 0xf5, 0x0a, 0x44, 0x77, 0x61, 0x79, 0x3b, 0x44,
0x00, 0x01, 0x9b, 0x02, 0x21, 0x30, 0x00, 0x6d, 0x05, 0x04,
0xa6, 0x00, 0x02, 0x2d, 0x02, 0x23, 0x62, 0x61, 0x25, 0x05,
0x02, 0x99, 0x05, 0x13, 0x61, 0xaa, 0x04, 0x05, 0xcc, 0x04,
0x58, 0x00, 0x00, 0x4c, 0x65, 0x66, 0x70, 0x02, 0x02, 0x69,
0x09, 0x01, 0x33, 0x00, 0x01, 0xbd, 0x00, 0x20, 0x69, 0x74,
0x95, 0x01, 0x10, 0x64, 0x21, 0x09, 0x60, 0x28, 0x67, 0x72,
0x65, 0x79, 0x00, 0x66, 0x06, 0x41, 0x75, 0x74, 0x29, 0x2c,
0x6e, 0x00, 0x14, 0x6e, 0x24, 0x00, 0x10, 0x69, 0xee, 0x06,
0x01, 0xa1, 0x07, 0x12, 0x6c, 0xd6, 0x01, 0x00, 0x19, 0x00,
0x00, 0xe2, 0x0a, 0x40, 0x48, 0x6f, 0x6c, 0x64, 0x59, 0x00,
0x13, 0x43, 0x08, 0x07, 0x00, 0x9a, 0x02, 0x4a, 0x68, 0x69,
0x66, 0x74, 0xda, 0x02, 0x00, 0x43, 0x02, 0x10, 0x72, 0x9d,
0x0b, 0x00, 0x55, 0x01, 0x00, 0xdd, 0x03, 0x43, 0x77, 0x69,
0x73, 0x65, 0x78, 0x03, 0x00, 0xfb, 0x06, 0x01, 0x95, 0x00,
0x0a, 0x0b, 0x09, 0x05, 0xc3, 0x01, 0x03, 0x1c, 0x01, 0x02,
0x3b, 0x04, 0x32, 0x64, 0x69, 0x72, 0xc0, 0x07, 0x00, 0xdb,
0x00, 0x14, 0x28, 0x81, 0x0b, 0x11, 0x61, 0x13, 0x00, 0x00,
0x68, 0x09, 0x52, 0x73, 0x63, 0x72, 0x69, 0x62, 0x5f, 0x01,
0x13, 0x73, 0xe9, 0x07, 0x33, 0x32, 0x2e, 0x31, 0xca, 0x09,
0x35, 0x73, 0x6f, 0x00, 0x30, 0x09, 0x22, 0x2e, 0x29, 0xf1,
0x07, 0x15, 0x32, 0xf1, 0x07, 0xb2, 0x70, 0x61, 0x72, 0x61,
0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0xbc, 0x05, 0x00,
0x7c, 0x03, 0x05, 0x14, 0x00, 0x02, 0x43, 0x00, 0x05, 0x6e,
0x09, 0x01, 0x07, 0x02, 0x07, 0x6f, 0x09, 0x71, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x71, 0x00, 0x03, 0x9b, 0x07,
0xb0, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65,
0x6e, 0x75, 0xad, 0x00, 0x10, 0x4d, 0xf1, 0x08, 0x03, 0x07,
0x00, 0x28, 0x6f, 0x66, 0x56, 0x09, 0x16, 0x28, 0x16, 0x09,
0x27, 0x6f, 0x72, 0x1e, 0x0b, 0x00, 0xa2, 0x00, 0x94, 0x53,
0x69, 0x7a, 0x65, 0x20, 0x28, 0x73, 0x2a, 0x73, 0x0d, 0x00,
0x00, 0x3c, 0x00, 0x02, 0xb4, 0x02, 0x36, 0x00, 0x00, 0x44,
0x0f, 0x0a, 0x14, 0x00, 0x81, 0x01, 0x02, 0xac, 0x02, 0x07,
0x29, 0x0a, 0x04, 0x97, 0x0d, 0x50, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x0c, 0x09, 0x02, 0x76, 0x00, 0x10, 0x2e, 0xa8, 0x09,
0x03, 0x59, 0x0a, 0x02, 0x4d, 0x0a, 0x0f, 0x1d, 0x0a, 0x0e,
0x0f, 0x0b, 0x0a, 0x1d, 0x50, 0x41, 0x74, 0x00, 0x52, 0x65,
0xc5, 0x01, 0x34, 0x69, 0x76, 0x65, 0xb0, 0x0a, 0x01, 0x59,
0x0d, 0x0f, 0xb5, 0x0a, 0x1b, 0x82, 0x00, 0x62, 0x61, 0x63,
0x6b, 0x74, 0x72, 0x61, 0xc1, 0x02, 0x04, 0x12, 0x08, 0x06,
0x47, 0x04, 0x00, 0x29, 0x04, 0x01, 0x11, 0x03, 0x31, 0x6f,
0x6c, 0x75, 0x80, 0x01, 0x93, 0x73, 0x68, 0x6f, 0x75, 0x6c,
0x64, 0x00, 0x73, 0x74, 0x2b, 0x00, 0x71, 0x75, 0x6e, 0x69,
0x71, 0x75, 0x65, 0x2e, 0x8f, 0x07, 0x02, 0x89, 0x0c, 0x00,
0x1f, 0x02, 0x04, 0x81, 0x0e, 0x03, 0x49, 0x00, 0x00, 0xfe,
0x08, 0x31, 0x72, 0x65, 0x61, 0x66, 0x06, 0x00, 0xef, 0x0e,
0x60, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x00, 0x12, 0x00, 0x21,
0x6f, 0x6e, 0x73, 0x03, 0x00, 0x3c, 0x02, 0x30, 0x6f, 0x69,
0x64, 0x59, 0x08, 0x03, 0x10, 0x00, 0xb0, 0x62, 0x61, 0x63,
0x6b, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x2e, 0x00,
};
const unsigned short help_text_len = 3934;
const unsigned short help_text_words = 730;
const unsigned short help_text_len = 3954;
const unsigned short help_text_words = 731;
const char quick_help_text[] = "Complete the latin square in accordance with the > signs.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,142 +6,143 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 99, TEXT_CENTER | C_RED },
{ 221, TEXT_CENTER | C_RED },
{ 238, TEXT_UNDERLINE },
{ 100, TEXT_CENTER | C_RED },
{ 222, TEXT_CENTER | C_RED },
{ 239, TEXT_UNDERLINE },
{ 266, TEXT_UNDERLINE },
{ 278, TEXT_UNDERLINE },
{ 240, TEXT_UNDERLINE },
{ 267, TEXT_UNDERLINE },
{ 279, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 1688 comp 1225 ratio 0.725711 level 10 saved 463 */
/* orig 1707 comp 1231 ratio 0.721148 level 10 saved 476 */
const char help_text[] = {
0xf0, 0x4d, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xfd, 0x06, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x33, 0x38, 0x3a, 0x20, 0x55, 0x6e, 0x72, 0x75, 0x6c, 0x79,
0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72,
0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00,
0x67, 0x72, 0x69, 0x64, 0x00, 0x6f, 0x66, 0x00, 0x73, 0x71,
0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x00, 0x77, 0x68, 0x69,
0x63, 0x68, 0x00, 0x79, 0x6f, 0x75, 0x00, 0x6d, 0x75, 0x73,
0x74, 0x00, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x00, 0x65,
0x69, 0x74, 0x68, 0x65, 0x72, 0x00, 0x62, 0x6c, 0x61, 0x63,
0x6b, 0x00, 0x6f, 0x72, 0x26, 0x00, 0x84, 0x74, 0x65, 0x2e,
0x00, 0x53, 0x6f, 0x6d, 0x65, 0x3b, 0x00, 0x01, 0x57, 0x00,
0xf1, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64,
0x00, 0x61, 0x73, 0x00, 0x63, 0x6c, 0x75, 0x65, 0x73, 0x3b,
0x00, 0x74, 0x68, 0x65, 0x00, 0x72, 0x65, 0x73, 0x74, 0x20,
0x00, 0x81, 0x6c, 0x65, 0x66, 0x74, 0x00, 0x66, 0x6f, 0x72,
0x61, 0x00, 0xf0, 0x09, 0x74, 0x6f, 0x00, 0x66, 0x69, 0x6c,
0x6c, 0x00, 0x69, 0x6e, 0x2e, 0x00, 0x45, 0x61, 0x63, 0x68,
0x00, 0x72, 0x6f, 0x77, 0x00, 0x61, 0x6e, 0x64, 0x75, 0x00,
0x34, 0x75, 0x6d, 0x6e, 0x81, 0x00, 0x51, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x47, 0x00, 0xb0, 0x73, 0x61, 0x6d, 0x65, 0x00,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0xb4, 0x00, 0x02, 0x8e,
0x00, 0x00, 0x31, 0x00, 0x01, 0x8f, 0x00, 0x06, 0xc4, 0x00,
0x00, 0x13, 0x00, 0x21, 0x6e, 0x6f, 0x4f, 0x00, 0x25, 0x6f,
0x72, 0x4e, 0x00, 0x27, 0x61, 0x79, 0x4d, 0x00, 0x30, 0x72,
0x65, 0x65, 0x0e, 0x00, 0x76, 0x73, 0x65, 0x63, 0x75, 0x74,
0x69, 0x76, 0xc5, 0x00, 0x26, 0x6f, 0x66, 0x6a, 0x00, 0x02,
0xfc, 0x00, 0xf1, 0x2d, 0x2e, 0x00, 0x00, 0x00, 0x54, 0x68,
0x69, 0x73, 0x00, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00,
0x74, 0x79, 0x70, 0x65, 0x00, 0x77, 0x61, 0x73, 0x00, 0x69,
0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x00, 0x62, 0x79,
0x00, 0x41, 0x64, 0x6f, 0x6c, 0x66, 0x6f, 0x00, 0x5a, 0x61,
0x6e, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x2c, 0x00, 0x75,
0x6e, 0x64, 0x65, 0x72, 0x4c, 0x00, 0x10, 0x6e, 0x4c, 0x00,
0xf1, 0x09, 0x60, 0x54, 0x6f, 0x68, 0x75, 0x00, 0x77, 0x61,
0x00, 0x56, 0x6f, 0x68, 0x75, 0x27, 0x2e, 0x00, 0x53, 0x65,
0x65, 0x00, 0x5b, 0x32, 0x31, 0x5d, 0x0d, 0x01, 0xc0, 0x6d,
0x6f, 0x72, 0x65, 0x00, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
0x73, 0x6f, 0x00, 0x02, 0xaf, 0x01, 0x01, 0x65, 0x00, 0x00,
0xb2, 0x00, 0x40, 0x72, 0x69, 0x62, 0x75, 0x68, 0x00, 0x60,
0x74, 0x6f, 0x00, 0x74, 0x68, 0x69, 0x14, 0x00, 0x80, 0x6c,
0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x7b, 0x00, 0xe0,
0x4c, 0x65, 0x6e, 0x6e, 0x61, 0x72, 0x64, 0x00, 0x53, 0x70,
0x72, 0x6f, 0x6e, 0x67, 0x3f, 0x00, 0x01, 0x58, 0x00, 0xf0,
0x0d, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
0x77, 0x2e, 0x6a, 0x61, 0x6e, 0x6b, 0x6f, 0x2e, 0x61, 0x74,
0x2f, 0x52, 0x61, 0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f, 0x8c,
0x00, 0x40, 0x2d, 0x57, 0x61, 0x2d, 0x8c, 0x00, 0xf4, 0x02,
0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d,
0x00, 0x00, 0x00, 0x33, 0x38, 0x2e, 0x31, 0x2d, 0x02, 0x01,
0x7a, 0x00, 0x40, 0x6f, 0x6c, 0x73, 0x20, 0x00, 0x01, 0x63,
0x6f, 0x00, 0x70, 0x6c, 0x61, 0x79, 0x99, 0x00, 0x71, 0x2c,
0x00, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xdd, 0x00, 0x70, 0x6d,
0x6f, 0x75, 0x73, 0x65, 0x00, 0x69, 0x4b, 0x02, 0x02, 0x43,
0x01, 0x00, 0xa6, 0x00, 0xa5, 0x63, 0x68, 0x61, 0x6e, 0x67,
0x65, 0x00, 0x69, 0x74, 0x73, 0x44, 0x01, 0x51, 0x4c, 0x65,
0x66, 0x74, 0x2d, 0x37, 0x00, 0xc4, 0x69, 0x6e, 0x67, 0x00,
0x61, 0x6e, 0x00, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x34, 0x00,
0x10, 0x77, 0x07, 0x02, 0x72, 0x74, 0x75, 0x72, 0x6e, 0x00,
0x69, 0x74, 0xd7, 0x01, 0x02, 0xc5, 0x01, 0x47, 0x72, 0x69,
0x67, 0x68, 0x37, 0x00, 0x09, 0x27, 0x00, 0x03, 0x83, 0x02,
0x55, 0x4b, 0x65, 0x65, 0x70, 0x00, 0x22, 0x00, 0x05, 0xbc,
0x01, 0x61, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x8d, 0x00,
0x40, 0x79, 0x63, 0x6c, 0x65, 0xf2, 0x01, 0x41, 0x6f, 0x75,
0x67, 0x68, 0x21, 0x00, 0x02, 0xfe, 0x01, 0xf1, 0x00, 0x70,
0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x00, 0x73, 0x74,
0x61, 0x74, 0x65, 0x73, 0x89, 0x01, 0x24, 0x74, 0x68, 0x0a,
0x02, 0x42, 0x2e, 0x00, 0x49, 0x66, 0x06, 0x03, 0x52, 0x69,
0x64, 0x64, 0x6c, 0x65, 0x84, 0x00, 0x09, 0xe8, 0x00, 0x22,
0x69, 0x74, 0x90, 0x00, 0x11, 0x62, 0xdf, 0x02, 0x20, 0x65,
0x74, 0x6c, 0x00, 0x01, 0xd5, 0x00, 0x13, 0x2e, 0x67, 0x03,
0x90, 0x63, 0x61, 0x6e, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00,
0x22, 0x01, 0x00, 0x5a, 0x00, 0xb0, 0x63, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x2d, 0x00, 0xb1,
0x6d, 0x6f, 0x76, 0x65, 0x00, 0x61, 0x72, 0x6f, 0x75, 0x6e,
0x64, 0x1f, 0x00, 0x00, 0x8b, 0x03, 0x74, 0x2e, 0x00, 0x50,
0x72, 0x65, 0x73, 0x73, 0xcb, 0x00, 0x21, 0x72, 0x65, 0xee,
0x00, 0x82, 0x6f, 0x72, 0x00, 0x73, 0x70, 0x61, 0x63, 0x65,
0x3b, 0x00, 0x06, 0x06, 0x01, 0x0c, 0x47, 0x01, 0x0a, 0x9f,
0x03, 0x00, 0x97, 0x00, 0x30, 0x70, 0x65, 0x63, 0xdf, 0x02,
0x52, 0x6c, 0x79, 0x00, 0x28, 0x61, 0x67, 0x00, 0x15, 0x6e,
0x11, 0x01, 0x04, 0xe1, 0x02, 0x28, 0x73, 0x00, 0x5f, 0x03,
0x30, 0x77, 0x61, 0x79, 0xbd, 0x03, 0x06, 0xdc, 0x01, 0x02,
0x4a, 0x01, 0x22, 0x73, 0x29, 0x92, 0x01, 0x14, 0x70, 0x9f,
0x00, 0x42, 0x42, 0x61, 0x63, 0x6b, 0x95, 0x00, 0x01, 0x90,
0x00, 0x02, 0x03, 0x01, 0x08, 0x05, 0x02, 0x05, 0x0c, 0x01,
0x41, 0x28, 0x41, 0x6c, 0x6c, 0x50, 0x00, 0x11, 0x61, 0xb4,
0x02, 0xb0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x65, 0x64, 0x79, 0x00, 0x13, 0x73, 0xca, 0x02, 0x31,
0x32, 0x2e, 0x31, 0x22, 0x04, 0x01, 0x32, 0x01, 0xb2, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29,
0x96, 0x02, 0x14, 0x32, 0x96, 0x02, 0x92, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x98, 0x02, 0x56, 0x68,
0x65, 0x73, 0x65, 0x00, 0x14, 0x00, 0x02, 0x42, 0x00, 0x04,
0x3d, 0x00, 0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x7a, 0x00,
0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e,
0x2e, 0x27, 0x00, 0x6f, 0x70, 0x70, 0x00, 0x22, 0x6f, 0x6e,
0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d,
0x65, 0x6e, 0x75, 0xac, 0x00, 0x90, 0x57, 0x69, 0x64, 0x74,
0x68, 0x2c, 0x00, 0x48, 0x65, 0x79, 0x02, 0x70, 0x00, 0x00,
0x00, 0x53, 0x69, 0x7a, 0x65, 0x14, 0x04, 0x01, 0x27, 0x05,
0x24, 0x69, 0x6e, 0x27, 0x04, 0x60, 0x2e, 0x00, 0x28, 0x4e,
0x6f, 0x74, 0x45, 0x01, 0x22, 0x61, 0x74, 0xa9, 0x01, 0x26,
0x75, 0x6c, 0x3d, 0x04, 0x30, 0x67, 0x61, 0x6d, 0x7d, 0x01,
0x30, 0x71, 0x75, 0x69, 0x94, 0x01, 0x22, 0x6f, 0x74, 0x76,
0x02, 0x10, 0x77, 0x5b, 0x00, 0x01, 0x44, 0x01, 0x12, 0x68,
0x5e, 0x00, 0x20, 0x74, 0x6f, 0x3c, 0x02, 0x10, 0x65, 0x88,
0x05, 0x02, 0xd4, 0x04, 0x11, 0x73, 0xee, 0x00, 0xe3, 0x44,
0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x00,
0x00, 0x00, 0x43, 0x85, 0x03, 0x01, 0x42, 0x00, 0x16, 0x64,
0x1a, 0x00, 0x04, 0x6a, 0x00, 0x50, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x1c, 0x04, 0x02, 0x9d, 0x04, 0x02, 0x3d, 0x04, 0xe2,
0x69, 0x71, 0x75, 0x65, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x20,
0x61, 0x6e, 0x64, 0x20, 0xff, 0x04, 0x30, 0x73, 0x00, 0x00,
0xd2, 0x02, 0x20, 0x65, 0x6e, 0x19, 0x01, 0x20, 0x64, 0x2c,
0x1f, 0x05, 0x21, 0x74, 0x77, 0x23, 0x05, 0x03, 0xb9, 0x05,
0x53, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x66, 0x04, 0xc6, 0x68,
0x61, 0x76, 0x65, 0x00, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c,
0x79, 0x1a, 0x02, 0x72, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72,
0x6e, 0x08, 0x02, 0x83, 0x6c, 0x69, 0x6b, 0x65, 0x77, 0x69,
0x73, 0x65, 0x5e, 0x05, 0x00, 0x12, 0x01, 0x15, 0x41, 0xc0,
0x05, 0x14, 0x61, 0x74, 0x05, 0x20, 0x63, 0x61, 0x78, 0x05,
0xe0, 0x74, 0x63, 0x68, 0x2c, 0x00, 0x74, 0x68, 0x6f, 0x75,
0x67, 0x68, 0x2e, 0x29, 0x00,
0x20, 0x00, 0x2d, 0x01, 0x00, 0xf0, 0x3a, 0x00, 0x00, 0x00,
0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69,
0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x67, 0x72, 0x69, 0x64,
0x00, 0x6f, 0x66, 0x00, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65,
0x73, 0x2c, 0x00, 0x77, 0x68, 0x69, 0x63, 0x68, 0x00, 0x79,
0x6f, 0x75, 0x00, 0x6d, 0x75, 0x73, 0x74, 0x00, 0x63, 0x6f,
0x6c, 0x6f, 0x75, 0x72, 0x00, 0x65, 0x69, 0x74, 0x68, 0x65,
0x72, 0x00, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x00, 0x6f, 0x72,
0x26, 0x00, 0x84, 0x74, 0x65, 0x2e, 0x00, 0x53, 0x6f, 0x6d,
0x65, 0x3b, 0x00, 0x01, 0x57, 0x00, 0xf1, 0x0c, 0x70, 0x72,
0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x00, 0x61, 0x73, 0x00,
0x63, 0x6c, 0x75, 0x65, 0x73, 0x3b, 0x00, 0x74, 0x68, 0x65,
0x00, 0x72, 0x65, 0x73, 0x74, 0x20, 0x00, 0x81, 0x6c, 0x65,
0x66, 0x74, 0x00, 0x66, 0x6f, 0x72, 0x61, 0x00, 0xf0, 0x09,
0x74, 0x6f, 0x00, 0x66, 0x69, 0x6c, 0x6c, 0x00, 0x69, 0x6e,
0x2e, 0x00, 0x45, 0x61, 0x63, 0x68, 0x00, 0x72, 0x6f, 0x77,
0x00, 0x61, 0x6e, 0x64, 0x75, 0x00, 0x34, 0x75, 0x6d, 0x6e,
0x81, 0x00, 0x51, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x47, 0x00,
0xb0, 0x73, 0x61, 0x6d, 0x65, 0x00, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0xb4, 0x00, 0x02, 0x8e, 0x00, 0x00, 0x31, 0x00,
0x01, 0x8f, 0x00, 0x06, 0xc4, 0x00, 0x00, 0x13, 0x00, 0x21,
0x6e, 0x6f, 0x4f, 0x00, 0x25, 0x6f, 0x72, 0x4e, 0x00, 0x27,
0x61, 0x79, 0x4d, 0x00, 0x30, 0x72, 0x65, 0x65, 0x0e, 0x00,
0x76, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0xc5, 0x00,
0x26, 0x6f, 0x66, 0x6a, 0x00, 0x02, 0xfc, 0x00, 0xf1, 0x2d,
0x2e, 0x00, 0x00, 0x00, 0x54, 0x68, 0x69, 0x73, 0x00, 0x70,
0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x00, 0x74, 0x79, 0x70, 0x65,
0x00, 0x77, 0x61, 0x73, 0x00, 0x69, 0x6e, 0x76, 0x65, 0x6e,
0x74, 0x65, 0x64, 0x00, 0x62, 0x79, 0x00, 0x41, 0x64, 0x6f,
0x6c, 0x66, 0x6f, 0x00, 0x5a, 0x61, 0x6e, 0x65, 0x6c, 0x6c,
0x61, 0x74, 0x69, 0x2c, 0x00, 0x75, 0x6e, 0x64, 0x65, 0x72,
0x4c, 0x00, 0x10, 0x6e, 0x4c, 0x00, 0xf1, 0x09, 0x60, 0x54,
0x6f, 0x68, 0x75, 0x00, 0x77, 0x61, 0x00, 0x56, 0x6f, 0x68,
0x75, 0x27, 0x2e, 0x00, 0x53, 0x65, 0x65, 0x00, 0x5b, 0x32,
0x31, 0x5d, 0x0d, 0x01, 0xc0, 0x6d, 0x6f, 0x72, 0x65, 0x00,
0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x6f, 0x00, 0x02,
0xc2, 0x01, 0x01, 0x65, 0x00, 0x00, 0xb2, 0x00, 0x40, 0x72,
0x69, 0x62, 0x75, 0x68, 0x00, 0x60, 0x74, 0x6f, 0x00, 0x74,
0x68, 0x69, 0x14, 0x00, 0x80, 0x6c, 0x6c, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x7b, 0x00, 0xe0, 0x4c, 0x65, 0x6e, 0x6e,
0x61, 0x72, 0x64, 0x00, 0x53, 0x70, 0x72, 0x6f, 0x6e, 0x67,
0x3f, 0x00, 0x01, 0x58, 0x00, 0xf0, 0x0d, 0x68, 0x74, 0x74,
0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6a, 0x61,
0x6e, 0x6b, 0x6f, 0x2e, 0x61, 0x74, 0x2f, 0x52, 0x61, 0x65,
0x74, 0x73, 0x65, 0x6c, 0x2f, 0x8c, 0x00, 0x40, 0x2d, 0x57,
0x61, 0x2d, 0x8c, 0x00, 0xf4, 0x02, 0x2f, 0x69, 0x6e, 0x64,
0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, 0x00, 0x00, 0x00, 0x33,
0x38, 0x2e, 0x31, 0x40, 0x02, 0x01, 0x7a, 0x00, 0x40, 0x6f,
0x6c, 0x73, 0x20, 0x00, 0x01, 0x63, 0x6f, 0x00, 0x70, 0x6c,
0x61, 0x79, 0x99, 0x00, 0x71, 0x2c, 0x00, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0xdd, 0x00, 0x70, 0x6d, 0x6f, 0x75, 0x73, 0x65,
0x00, 0x69, 0x4b, 0x02, 0x02, 0x43, 0x01, 0x00, 0xa6, 0x00,
0xa5, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x00, 0x69, 0x74,
0x73, 0x44, 0x01, 0x51, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x37,
0x00, 0xc4, 0x69, 0x6e, 0x67, 0x00, 0x61, 0x6e, 0x00, 0x65,
0x6d, 0x70, 0x74, 0x79, 0x34, 0x00, 0x10, 0x77, 0x07, 0x02,
0x72, 0x74, 0x75, 0x72, 0x6e, 0x00, 0x69, 0x74, 0xd7, 0x01,
0x02, 0xc5, 0x01, 0x47, 0x72, 0x69, 0x67, 0x68, 0x37, 0x00,
0x09, 0x27, 0x00, 0x03, 0x83, 0x02, 0x55, 0x4b, 0x65, 0x65,
0x70, 0x00, 0x22, 0x00, 0x05, 0xbc, 0x01, 0x61, 0x62, 0x75,
0x74, 0x74, 0x6f, 0x6e, 0x8d, 0x00, 0x40, 0x79, 0x63, 0x6c,
0x65, 0xf2, 0x01, 0x41, 0x6f, 0x75, 0x67, 0x68, 0x21, 0x00,
0x02, 0xfe, 0x01, 0xf1, 0x00, 0x70, 0x6f, 0x73, 0x73, 0x69,
0x62, 0x6c, 0x65, 0x00, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73,
0x89, 0x01, 0x24, 0x74, 0x68, 0x0a, 0x02, 0x42, 0x2e, 0x00,
0x49, 0x66, 0x06, 0x03, 0x52, 0x69, 0x64, 0x64, 0x6c, 0x65,
0x84, 0x00, 0x09, 0xe8, 0x00, 0x22, 0x69, 0x74, 0x90, 0x00,
0x11, 0x62, 0xdf, 0x02, 0x20, 0x65, 0x74, 0x6c, 0x00, 0x01,
0xd5, 0x00, 0x13, 0x2e, 0x67, 0x03, 0x90, 0x63, 0x61, 0x6e,
0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x22, 0x01, 0x00, 0x5a,
0x00, 0xb0, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x00, 0x6b,
0x65, 0x79, 0x73, 0x2d, 0x00, 0xb1, 0x6d, 0x6f, 0x76, 0x65,
0x00, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1f, 0x00, 0x00,
0x8b, 0x03, 0x74, 0x2e, 0x00, 0x50, 0x72, 0x65, 0x73, 0x73,
0xcb, 0x00, 0x21, 0x72, 0x65, 0xee, 0x00, 0x82, 0x6f, 0x72,
0x00, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3b, 0x00, 0x06, 0x06,
0x01, 0x0c, 0x47, 0x01, 0x0a, 0x9f, 0x03, 0x00, 0x97, 0x00,
0x30, 0x70, 0x65, 0x63, 0xdf, 0x02, 0x52, 0x6c, 0x79, 0x00,
0x28, 0x61, 0x67, 0x00, 0x15, 0x6e, 0x11, 0x01, 0x04, 0xe1,
0x02, 0x28, 0x73, 0x00, 0x5f, 0x03, 0x30, 0x77, 0x61, 0x79,
0xbd, 0x03, 0x06, 0xdc, 0x01, 0x02, 0x4a, 0x01, 0x22, 0x73,
0x29, 0x92, 0x01, 0x14, 0x70, 0x9f, 0x00, 0x42, 0x42, 0x61,
0x63, 0x6b, 0x95, 0x00, 0x01, 0x90, 0x00, 0x02, 0x03, 0x01,
0x08, 0x05, 0x02, 0x05, 0x0c, 0x01, 0x41, 0x28, 0x41, 0x6c,
0x6c, 0x50, 0x00, 0x11, 0x61, 0xb4, 0x02, 0xb0, 0x73, 0x00,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x79,
0x00, 0x13, 0x73, 0xca, 0x02, 0x31, 0x32, 0x2e, 0x31, 0x22,
0x04, 0x01, 0x32, 0x01, 0xb2, 0x61, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x96, 0x02, 0x14, 0x32,
0x96, 0x02, 0x92, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
0x65, 0x72, 0x98, 0x02, 0x56, 0x68, 0x65, 0x73, 0x65, 0x00,
0x14, 0x00, 0x02, 0x42, 0x00, 0x04, 0x3d, 0x00, 0x51, 0x00,
0x66, 0x72, 0x6f, 0x6d, 0x7a, 0x00, 0xe1, 0x60, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f,
0x70, 0x70, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xa0, 0x54,
0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0xac,
0x00, 0x90, 0x57, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x00, 0x48,
0x65, 0x79, 0x02, 0x70, 0x00, 0x00, 0x00, 0x53, 0x69, 0x7a,
0x65, 0x14, 0x04, 0x01, 0x27, 0x05, 0x24, 0x69, 0x6e, 0x27,
0x04, 0x60, 0x2e, 0x00, 0x28, 0x4e, 0x6f, 0x74, 0x45, 0x01,
0x22, 0x61, 0x74, 0xa9, 0x01, 0x26, 0x75, 0x6c, 0x3d, 0x04,
0x30, 0x67, 0x61, 0x6d, 0x7d, 0x01, 0x30, 0x71, 0x75, 0x69,
0x94, 0x01, 0x22, 0x6f, 0x74, 0x76, 0x02, 0x10, 0x77, 0x5b,
0x00, 0x01, 0x44, 0x01, 0x12, 0x68, 0x5e, 0x00, 0x20, 0x74,
0x6f, 0x3c, 0x02, 0x10, 0x65, 0x88, 0x05, 0x02, 0xd4, 0x04,
0x11, 0x73, 0xee, 0x00, 0xe3, 0x44, 0x69, 0x66, 0x66, 0x69,
0x63, 0x75, 0x6c, 0x74, 0x79, 0x00, 0x00, 0x00, 0x43, 0x85,
0x03, 0x01, 0x42, 0x00, 0x16, 0x64, 0x1a, 0x00, 0x04, 0x6a,
0x00, 0x50, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x1c, 0x04, 0x02,
0x9d, 0x04, 0x02, 0x3d, 0x04, 0xe2, 0x69, 0x71, 0x75, 0x65,
0x20, 0x72, 0x6f, 0x77, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20,
0xff, 0x04, 0x30, 0x73, 0x00, 0x00, 0xd2, 0x02, 0x20, 0x65,
0x6e, 0x19, 0x01, 0x20, 0x64, 0x2c, 0x1f, 0x05, 0x21, 0x74,
0x77, 0x23, 0x05, 0x03, 0xb9, 0x05, 0x53, 0x65, 0x72, 0x6d,
0x69, 0x74, 0x66, 0x04, 0xc6, 0x68, 0x61, 0x76, 0x65, 0x00,
0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x1a, 0x02, 0x72,
0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x08, 0x02, 0x83,
0x6c, 0x69, 0x6b, 0x65, 0x77, 0x69, 0x73, 0x65, 0x5e, 0x05,
0x00, 0x12, 0x01, 0x15, 0x41, 0xc0, 0x05, 0x14, 0x61, 0x74,
0x05, 0x20, 0x63, 0x61, 0x78, 0x05, 0xe0, 0x74, 0x63, 0x68,
0x2c, 0x00, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x2e, 0x29,
0x00,
};
const unsigned short help_text_len = 1688;
const unsigned short help_text_words = 305;
const unsigned short help_text_len = 1707;
const unsigned short help_text_words = 306;
const char quick_help_text[] = "Fill in the black and white grid to avoid runs of three.";

View file

@ -1,4 +1,4 @@
/* auto-generated on Dec 7 2020 by genhelp.sh */
/* auto-generated on Jul 22 2024 by genhelp.sh */
/* help text is compressed using LZ4; see compress.c for details */
/* DO NOT EDIT! */
@ -6,79 +6,95 @@
struct style_text help_text_style[] = {
{ 0, TEXT_CENTER | C_RED },
{ 64, TEXT_CENTER | C_RED },
{ 100, TEXT_CENTER | C_RED },
{ 119, TEXT_UNDERLINE },
{ 65, TEXT_CENTER | C_RED },
{ 136, TEXT_CENTER | C_RED },
{ 155, TEXT_UNDERLINE },
LAST_STYLE_ITEM
};
/* orig 751 comp 627 ratio 0.834887 level 4 saved 124 */
/* orig 974 comp 787 ratio 0.808008 level 4 saved 187 */
const char help_text[] = {
0xf0, 0x2f, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0xff, 0x08, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x20,
0x31, 0x38, 0x3a, 0x20, 0x55, 0x6e, 0x74, 0x61, 0x6e, 0x67,
0x6c, 0x65, 0x20, 0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00,
0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00,
0x61, 0x00, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x00, 0x6f,
0x66, 0x00, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2c, 0x00,
0x73, 0x6f, 0x6d, 0x65, 0x10, 0x00, 0xf1, 0x15, 0x77, 0x68,
0x69, 0x63, 0x68, 0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x6c,
0x69, 0x6e, 0x65, 0x73, 0x00, 0x64, 0x72, 0x61, 0x77, 0x6e,
0x00, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x00, 0x74,
0x68, 0x65, 0x6d, 0x2e, 0x4f, 0x00, 0x80, 0x63, 0x61, 0x6e,
0x00, 0x6d, 0x6f, 0x76, 0x65, 0x13, 0x00, 0x03, 0x46, 0x00,
0xf8, 0x1c, 0x00, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x00, 0x61,
0x72, 0x62, 0x69, 0x74, 0x72, 0x61, 0x72, 0x69, 0x6c, 0x79,
0x3b, 0x00, 0x79, 0x6f, 0x75, 0x72, 0x00, 0x61, 0x69, 0x6d,
0x00, 0x69, 0x73, 0x00, 0x74, 0x6f, 0x00, 0x70, 0x6f, 0x73,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x36, 0x00, 0xa1, 0x73, 0x6f,
0x00, 0x74, 0x68, 0x61, 0x74, 0x00, 0x6e, 0x6f, 0x73, 0x00,
0xf2, 0x1c, 0x00, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x73,
0x00, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x00,
0x00, 0x00, 0x49, 0x00, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
0x61, 0x6c, 0x6c, 0x79, 0x00, 0x73, 0x61, 0x77, 0x00, 0x74,
0x68, 0x69, 0x73, 0x00, 0x69, 0x47, 0x00, 0x40, 0x66, 0x6f,
0x72, 0x6d, 0xbb, 0x00, 0xf0, 0x2b, 0x61, 0x00, 0x46, 0x6c,
0x61, 0x73, 0x68, 0x00, 0x67, 0x61, 0x6d, 0x65, 0x00, 0x63,
0x61, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x50, 0x6c, 0x61, 0x6e,
0x61, 0x72, 0x69, 0x74, 0x79, 0x00, 0x5b, 0x37, 0x5d, 0x2c,
0x00, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x00, 0x62,
0x79, 0x00, 0x4a, 0x6f, 0x68, 0x6e, 0x00, 0x54, 0x61, 0x6e,
0x74, 0x61, 0x6c, 0x6f, 0x63, 0x00, 0xc4, 0x5b, 0x37, 0x5d,
0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x70, 0x35,
0x00, 0xb6, 0x2e, 0x6e, 0x65, 0x74, 0x00, 0x00, 0x00, 0x31,
0x38, 0x2e, 0x31, 0x4f, 0x01, 0x80, 0x63, 0x6f, 0x6e, 0x74,
0x72, 0x6f, 0x6c, 0x73, 0x58, 0x01, 0x22, 0x54, 0x6f, 0x04,
0x01, 0x12, 0x61, 0xcc, 0x00, 0xf1, 0x03, 0x2c, 0x00, 0x63,
0x6c, 0x69, 0x63, 0x6b, 0x00, 0x6f, 0x6e, 0x00, 0x69, 0x74,
0x00, 0x77, 0x69, 0x74, 0x68, 0xa1, 0x00, 0xf0, 0x06, 0x6c,
0x65, 0x66, 0x74, 0x00, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x00,
0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x00, 0x61, 0x6e, 0x64,
0x59, 0x01, 0x10, 0x67, 0x27, 0x00, 0x40, 0x69, 0x6e, 0x74,
0x6f, 0x93, 0x01, 0x25, 0x65, 0x77, 0x1e, 0x01, 0x00, 0x90,
0x00, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x3e, 0x00, 0x20, 0x61,
0x63, 0x13, 0x00, 0xb0, 0x73, 0x00, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x64, 0xf8, 0x00, 0x21, 0x73, 0x65,
0x16, 0x00, 0x41, 0x00, 0x32, 0x2e, 0x31, 0xd9, 0x01, 0xf2,
0x01, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x61, 0x76, 0x61, 0x69,
0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0xb6, 0x00, 0x16,
0x32, 0xb6, 0x00, 0x92, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
0x74, 0x65, 0x72, 0xb8, 0x00, 0x40, 0x68, 0x65, 0x72, 0x65,
0x93, 0x01, 0x95, 0x6f, 0x6e, 0x6c, 0x79, 0x00, 0x6f, 0x6e,
0x65, 0x00, 0x20, 0x00, 0x06, 0x46, 0x00, 0x51, 0x00, 0x66,
0x72, 0x6f, 0x6d, 0x83, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x00, 0x6f, 0x70,
0x79, 0x00, 0x03, 0xc3, 0x01, 0xf1, 0x01, 0x60, 0x54, 0x79,
0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e, 0x75, 0x3a, 0x00,
0x00, 0x00, 0x4e, 0x58, 0x02, 0x43, 0x20, 0x6f, 0x66, 0x20,
0xdc, 0x01, 0x33, 0x00, 0x00, 0x43, 0x2f, 0x01, 0x01, 0x2f,
0x00, 0x31, 0x73, 0x69, 0x7a, 0x66, 0x02, 0x01, 0xfe, 0x01,
0x60, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x8c, 0x01, 0xa1,
0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67,
0x1a, 0x00, 0x0c, 0x9e, 0x02, 0x04, 0xe9, 0x01, 0xf0, 0x02,
0x6c, 0x65, 0x20, 0x00, 0x2d, 0x01, 0x00, 0x00, 0xf0, 0x1a,
0x00, 0x00, 0x00, 0x59, 0x6f, 0x75, 0x00, 0x61, 0x72, 0x65,
0x00, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x00, 0x61, 0x00, 0x6e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x00, 0x6f, 0x66, 0x00, 0x70,
0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2c, 0x00, 0x73, 0x6f, 0x6d,
0x65, 0x10, 0x00, 0xf1, 0x15, 0x77, 0x68, 0x69, 0x63, 0x68,
0x00, 0x68, 0x61, 0x76, 0x65, 0x00, 0x6c, 0x69, 0x6e, 0x65,
0x73, 0x00, 0x64, 0x72, 0x61, 0x77, 0x6e, 0x00, 0x62, 0x65,
0x74, 0x77, 0x65, 0x65, 0x6e, 0x00, 0x74, 0x68, 0x65, 0x6d,
0x2e, 0x4f, 0x00, 0x80, 0x63, 0x61, 0x6e, 0x00, 0x6d, 0x6f,
0x76, 0x65, 0x13, 0x00, 0x03, 0x46, 0x00, 0xf8, 0x1c, 0x00,
0x61, 0x62, 0x6f, 0x75, 0x74, 0x00, 0x61, 0x72, 0x62, 0x69,
0x74, 0x72, 0x61, 0x72, 0x69, 0x6c, 0x79, 0x3b, 0x00, 0x79,
0x6f, 0x75, 0x72, 0x00, 0x61, 0x69, 0x6d, 0x00, 0x69, 0x73,
0x00, 0x74, 0x6f, 0x00, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69,
0x6f, 0x6e, 0x36, 0x00, 0xa1, 0x73, 0x6f, 0x00, 0x74, 0x68,
0x61, 0x74, 0x00, 0x6e, 0x6f, 0x73, 0x00, 0xf2, 0x1c, 0x00,
0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x00, 0x61, 0x6e,
0x6f, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x00, 0x00, 0x00, 0x49,
0x00, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c,
0x79, 0x00, 0x73, 0x61, 0x77, 0x00, 0x74, 0x68, 0x69, 0x73,
0x00, 0x69, 0x47, 0x00, 0x40, 0x66, 0x6f, 0x72, 0x6d, 0xbb,
0x00, 0xf0, 0x2b, 0x61, 0x00, 0x46, 0x6c, 0x61, 0x73, 0x68,
0x00, 0x67, 0x61, 0x6d, 0x65, 0x00, 0x63, 0x61, 0x6c, 0x6c,
0x65, 0x64, 0x00, 0x50, 0x6c, 0x61, 0x6e, 0x61, 0x72, 0x69,
0x74, 0x79, 0x00, 0x5b, 0x37, 0x5d, 0x2c, 0x00, 0x77, 0x72,
0x69, 0x74, 0x74, 0x65, 0x6e, 0x00, 0x62, 0x79, 0x00, 0x4a,
0x6f, 0x68, 0x6e, 0x00, 0x54, 0x61, 0x6e, 0x74, 0x61, 0x6c,
0x6f, 0x63, 0x00, 0xc4, 0x5b, 0x37, 0x5d, 0x00, 0x68, 0x74,
0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x70, 0x35, 0x00, 0xb6, 0x2e,
0x6e, 0x65, 0x74, 0x00, 0x00, 0x00, 0x31, 0x38, 0x2e, 0x31,
0x64, 0x01, 0xe2, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
0x73, 0x20, 0x00, 0x00, 0x00, 0x54, 0x6f, 0x04, 0x01, 0x12,
0x61, 0xcc, 0x00, 0xf1, 0x03, 0x2c, 0x00, 0x63, 0x6c, 0x69,
0x63, 0x6b, 0x00, 0x6f, 0x6e, 0x00, 0x69, 0x74, 0x00, 0x77,
0x69, 0x74, 0x68, 0xa1, 0x00, 0xf0, 0x06, 0x6c, 0x65, 0x66,
0x74, 0x00, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x00, 0x62, 0x75,
0x74, 0x74, 0x6f, 0x6e, 0x00, 0x61, 0x6e, 0x64, 0x59, 0x01,
0x10, 0x67, 0x27, 0x00, 0x40, 0x69, 0x6e, 0x74, 0x6f, 0x93,
0x01, 0x25, 0x65, 0x77, 0x1e, 0x01, 0x00, 0x90, 0x00, 0xf0,
0x11, 0x54, 0x68, 0x65, 0x00, 0x63, 0x75, 0x72, 0x73, 0x6f,
0x72, 0x00, 0x6b, 0x65, 0x79, 0x73, 0x00, 0x6d, 0x61, 0x79,
0x00, 0x61, 0x6c, 0x73, 0x6f, 0x00, 0x62, 0x65, 0x00, 0x75,
0x73, 0x65, 0x64, 0x4e, 0x01, 0xf7, 0x01, 0x6e, 0x61, 0x76,
0x69, 0x67, 0x61, 0x74, 0x65, 0x00, 0x61, 0x6d, 0x6f, 0x6e,
0x67, 0x73, 0x74, 0x56, 0x01, 0xa1, 0x2e, 0x00, 0x50, 0x72,
0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x15, 0x00, 0x41, 0x45,
0x6e, 0x74, 0x65, 0x49, 0x00, 0xc1, 0x00, 0x77, 0x69, 0x6c,
0x6c, 0x00, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x83, 0x00,
0x14, 0x67, 0x23, 0x00, 0xf2, 0x07, 0x63, 0x75, 0x72, 0x72,
0x65, 0x6e, 0x74, 0x6c, 0x79, 0x2d, 0x00, 0x68, 0x69, 0x67,
0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x4f, 0x00,
0x07, 0x4e, 0x00, 0xc2, 0x54, 0x61, 0x62, 0x00, 0x6f, 0x72,
0x00, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4d, 0x00, 0x40, 0x63,
0x79, 0x63, 0x6c, 0x07, 0x02, 0x99, 0x72, 0x6f, 0x75, 0x67,
0x68, 0x00, 0x61, 0x6c, 0x6c, 0x87, 0x00, 0x43, 0x00, 0x00,
0x28, 0x41, 0x13, 0x00, 0x20, 0x61, 0x63, 0xdd, 0x00, 0xb0,
0x73, 0x00, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x64, 0xc2, 0x01, 0x21, 0x73, 0x65, 0x16, 0x00, 0x41, 0x00,
0x32, 0x2e, 0x31, 0xa3, 0x02, 0x01, 0xe4, 0x00, 0xb2, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29,
0x80, 0x01, 0x16, 0x32, 0x80, 0x01, 0x92, 0x70, 0x61, 0x72,
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x82, 0x01, 0x40, 0x68,
0x65, 0x72, 0x65, 0x5d, 0x02, 0x95, 0x6f, 0x6e, 0x6c, 0x79,
0x00, 0x6f, 0x6e, 0x65, 0x00, 0x20, 0x00, 0x06, 0x46, 0x00,
0x51, 0x00, 0x66, 0x72, 0x6f, 0x6d, 0x83, 0x00, 0xe1, 0x60,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27,
0x00, 0x6f, 0x70, 0x79, 0x00, 0x03, 0x8d, 0x02, 0xf1, 0x01,
0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x00, 0x6d, 0x65, 0x6e,
0x75, 0x3a, 0x00, 0x00, 0x00, 0x4e, 0x22, 0x03, 0x43, 0x20,
0x6f, 0x66, 0x20, 0xa6, 0x02, 0x33, 0x00, 0x00, 0x43, 0xf9,
0x01, 0x01, 0x2f, 0x00, 0x31, 0x73, 0x69, 0x7a, 0x30, 0x03,
0x01, 0xeb, 0x00, 0x60, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c,
0x56, 0x02, 0x74, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x79,
0x54, 0x01, 0x0c, 0x68, 0x03, 0x04, 0xb3, 0x02, 0xf0, 0x02,
0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x00,
0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x00,
};
const unsigned short help_text_len = 751;
const unsigned short help_text_words = 138;
const unsigned short help_text_len = 974;
const unsigned short help_text_words = 174;
const char quick_help_text[] = "Reposition the points so that the lines do not cross.";

View file

@ -34,6 +34,8 @@ int sscanf_wrapper(const char *ibuf, const char *fmt, ...);
double atof_wrapper(const char *s);
double acos_wrapper(double x);
#define NO_TGMATH_H
#define acos acos_wrapper
#define atan atan_wrapper
#define atan2 atan2_wrapper

View file

@ -19,7 +19,7 @@ then
fi
echo "=== POTENTIALLY DANGEROUS OPERATION ==="
echo "Are you sure you want to remove all files in src/?"
echo "Are you sure you want to remove all files in src/ and help/?"
echo -n "If so, type \"yes\" in all caps: "
read ans
if [ "YES" == $ans ]
@ -30,8 +30,9 @@ then
rm -rf src
echo "[2/5] Copying new sources"
mkdir src
cp -r "$1"/{*.c,*.h,*.R,*.but,LICENCE,README} src
cp -r "$1"/{*.c,*.h,*.but,LICENCE,README,CMakeLists.txt} src
echo "[3/5] Regenerating help"
rm -rf help
./genhelp.sh
echo "[4/5] Staging for commit"

View file

@ -163,6 +163,11 @@
* cases by waiting until a key has been released before we
* send the input keystroke(s) to the game.
*
* e) Key repeat
*
* In some games, we would like to send repeated key events to
* allow long drags. Currently, this is only used in Untangle.
*
* 5) Game configuration and preset management
*
* The backend games specify a hierarchy of user-adjustable game
@ -1211,7 +1216,7 @@ static void zoom_filltriangle(int x1, int y1,
}
/* Should probably refactor this */
static void rb_draw_poly(void *handle, int *coords, int npoints,
static void rb_draw_poly(void *handle, const int *coords, int npoints,
int fillcolor, int outlinecolor)
{
if(!zoom_enabled)
@ -2268,7 +2273,7 @@ static void zoom(void)
zoom_clipl = 0;
zoom_clipr = zoom_w;
midend_size(me, &zoom_w, &zoom_h, true);
midend_size(me, &zoom_w, &zoom_h, true, 1.0);
/* Allocating the framebuffer will mostly likely grab the
* audiobuffer, which will make impossible to load new fonts, and
@ -2634,10 +2639,10 @@ const char *config_formatter(int sel, void *data, char *buf, size_t len)
return buf;
}
static bool config_menu(void)
static bool config_menu_core(int which)
{
char *title;
config_item *config = midend_get_config(me, CFG_SETTINGS, &title);
config_item *config = midend_get_config(me, which, &title);
rb->lcd_setfont(cur_font = FONT_UI);
@ -2689,7 +2694,7 @@ static bool config_menu(void)
old_str = dupstr(old.u.string.sval);
bool freed_str = do_configure_item(config, pos);
const char *err = midend_set_config(me, CFG_SETTINGS, config);
const char *err = midend_set_config(me, which, config);
if(err)
{
@ -2728,6 +2733,16 @@ done:
return success;
}
static bool config_menu(void)
{
return config_menu_core(CFG_SETTINGS);
}
static bool preferences_menu(void)
{
return config_menu_core(CFG_PREFS);
}
static const char *preset_formatter(int sel, void *data, char *buf, size_t len)
{
struct preset_menu *menu = data;
@ -3108,8 +3123,9 @@ static int pause_menu(void)
"Game Type", // 10
"Debug Menu", // 11
"Configure Game", // 12
"Quit without Saving", // 13
"Quit"); // 14
"Preferences", // 13
"Quit without Saving", // 14
"Quit"); // 15
#if defined(FOR_REAL) && defined(DEBUG_MENU)
help_times = 0;
@ -3190,9 +3206,13 @@ static int pause_menu(void)
quit = true;
}
break;
case 13:
return -2;
case 13:
preferences_menu();
// do not go straight into game.
break;
case 14:
return -2;
case 15:
return -3;
default:
break;
@ -3217,7 +3237,7 @@ static void fix_size(void)
rb->lcd_setfont(cur_font = FONT_UI);
rb->lcd_getstringsize("X", NULL, &h_x);
h -= h_x;
midend_size(me, &w, &h, true);
midend_size(me, &w, &h, true, 1.0);
}
static void init_tlsf(void)
@ -3277,32 +3297,39 @@ static bool string_in_list(const char *target, const char **list)
static void tune_input(const char *name)
{
static const char *want_spacebar[] = {
"Black Box",
"Bridges",
"Galaxies",
"Keen",
"Magnets",
"Map",
"Mines",
"Palisade",
"Pattern",
"Rectangles",
"Signpost",
"Singles",
"Solo",
"Tents",
"Towers",
"Unequal",
"Group",
NULL
};
/* these get a spacebar on long click - you must also add to the
* falling_edge list below! */
/* these get a spacebar on long click - this implicitly enables
* falling-edge button events (see below)! */
input_settings.want_spacebar = string_in_list(name, want_spacebar);
static const char *falling_edge[] = {
"Inertia",
"Magnets",
"Map",
"Mines",
"Palisade",
"Rectangles",
NULL
};
/* wait until a key is released to send an action (useful for
* chording in Inertia; must be enabled if the game needs a
* spacebar) */
input_settings.falling_edge = string_in_list(name, falling_edge);
input_settings.falling_edge = string_in_list(name, falling_edge) || input_settings.want_spacebar;
/* For want_spacebar to work, events must be sent on the falling
* edge */
@ -3691,8 +3718,9 @@ static void puzzles_main(void)
"Playback Control", // 4
"Game Type", // 5
"Configure Game", // 6
"Quit without Saving", // 7
"Quit"); // 8
"Preferences", // 7
"Quit without Saving", // 8
"Quit"); // 9
bool quit = false;
int sel = 0;
@ -3738,11 +3766,14 @@ static void puzzles_main(void)
goto game_loop;
}
break;
case 8:
case 7:
preferences_menu();
break;
case 9:
if(load_success)
save_game();
/* fall through */
case 7:
case 8:
/* we don't care about freeing anything because tlsf will
* be wiped out the next time around */
return;

View file

@ -0,0 +1,287 @@
cmake_minimum_required(VERSION 3.5)
project(puzzles
LANGUAGES C)
include(cmake/setup.cmake)
add_library(core_obj OBJECT
combi.c divvy.c drawing.c dsf.c findloop.c grid.c latin.c
laydomino.c loopgen.c malloc.c matching.c midend.c misc.c penrose.c
penrose-legacy.c ps.c random.c sort.c tdq.c tree234.c version.c
${platform_common_sources})
add_library(core $<TARGET_OBJECTS:core_obj>)
add_library(common $<TARGET_OBJECTS:core_obj> hat.c spectre.c)
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
puzzle(blackbox
DISPLAYNAME "Black Box"
DESCRIPTION "Ball-finding puzzle"
OBJECTIVE "Find the hidden balls in the box by bouncing laser beams \
off them.")
puzzle(bridges
DISPLAYNAME "Bridges"
DESCRIPTION "Bridge-placing puzzle"
OBJECTIVE "Connect all the islands with a network of bridges.")
puzzle(cube
DISPLAYNAME "Cube"
DESCRIPTION "Rolling cube puzzle"
OBJECTIVE "Pick up all the blue squares by rolling the cube over them.")
puzzle(dominosa
DISPLAYNAME "Dominosa"
DESCRIPTION "Domino tiling puzzle"
OBJECTIVE "Tile the rectangle with a full set of dominoes.")
solver(dominosa)
puzzle(fifteen
DISPLAYNAME "Fifteen"
DESCRIPTION "Sliding block puzzle"
OBJECTIVE "Slide the tiles around to arrange them into order.")
solver(fifteen)
puzzle(filling
DISPLAYNAME "Filling"
DESCRIPTION "Polyomino puzzle"
OBJECTIVE "Mark every square with the area of its containing region.")
solver(filling)
puzzle(flip
DISPLAYNAME "Flip"
DESCRIPTION "Tile inversion puzzle"
OBJECTIVE "Flip groups of squares to light them all up at once.")
puzzle(flood
DISPLAYNAME "Flood"
DESCRIPTION "Flood-filling puzzle"
OBJECTIVE "Turn the grid the same colour in as few flood fills as possible.")
puzzle(galaxies
DISPLAYNAME "Galaxies"
DESCRIPTION "Symmetric polyomino puzzle"
OBJECTIVE "Divide the grid into rotationally symmetric regions each \
centred on a dot.")
solver(galaxies)
cliprogram(galaxiespicture galaxies.c
COMPILE_DEFINITIONS STANDALONE_PICTURE_GENERATOR)
guiprogram(galaxieseditor galaxies.c
COMPILE_DEFINITIONS EDITOR)
puzzle(guess
DISPLAYNAME "Guess"
DESCRIPTION "Combination-guessing puzzle"
OBJECTIVE "Guess the hidden combination of colours.")
puzzle(inertia
DISPLAYNAME "Inertia"
DESCRIPTION "Gem-collecting puzzle"
OBJECTIVE "Collect all the gems without running into any of the mines.")
puzzle(keen
DISPLAYNAME "Keen"
DESCRIPTION "Arithmetic Latin square puzzle"
OBJECTIVE "Complete the latin square in accordance with the \
arithmetic clues.")
solver(keen latin.c)
puzzle(lightup
DISPLAYNAME "Light Up"
DESCRIPTION "Light-bulb placing puzzle"
OBJECTIVE "Place bulbs to light up all the squares.")
solver(lightup)
puzzle(loopy
DISPLAYNAME "Loopy"
DESCRIPTION "Loop-drawing puzzle"
OBJECTIVE "Draw a single closed loop, given clues about number of \
adjacent edges.")
solver(loopy)
puzzle(magnets
DISPLAYNAME "Magnets"
DESCRIPTION "Magnet-placing puzzle"
OBJECTIVE "Place magnets to satisfy the clues and avoid like poles \
touching.")
solver(magnets)
puzzle(map
DISPLAYNAME "Map"
DESCRIPTION "Map-colouring puzzle"
OBJECTIVE "Colour the map so that adjacent regions are never the \
same colour.")
solver(map)
puzzle(mines
DISPLAYNAME "Mines"
DESCRIPTION "Mine-finding puzzle"
OBJECTIVE "Find all the mines without treading on any of them.")
cliprogram(mineobfusc mines.c COMPILE_DEFINITIONS STANDALONE_OBFUSCATOR)
puzzle(mosaic
DISPLAYNAME "Mosaic"
DESCRIPTION "Grid-filling puzzle"
OBJECTIVE "Fill in the grid given clues about number of \
nearby black squares.")
puzzle(net
# The Windows Net shouldn't be called 'net.exe', since Windows
# already has a reasonably important utility program by that name!
WINDOWS_EXE_NAME netgame
DISPLAYNAME "Net"
DESCRIPTION "Network jigsaw puzzle"
OBJECTIVE "Rotate each tile to reassemble the network.")
puzzle(netslide
DISPLAYNAME "Netslide"
DESCRIPTION "Toroidal sliding network puzzle"
OBJECTIVE "Slide a row at a time to reassemble the network.")
puzzle(nullgame)
puzzle(palisade
DISPLAYNAME "Palisade"
DESCRIPTION "Grid-division puzzle"
OBJECTIVE "Divide the grid into equal-sized areas in accordance with\
the clues.")
puzzle(pattern
DISPLAYNAME "Pattern"
DESCRIPTION "Pattern puzzle"
OBJECTIVE "Fill in the pattern in the grid, given only the lengths \
of runs of black squares.")
solver(pattern)
cliprogram(patternpicture pattern.c
COMPILE_DEFINITIONS STANDALONE_PICTURE_GENERATOR)
puzzle(pearl
DISPLAYNAME "Pearl"
DESCRIPTION "Loop-drawing puzzle"
OBJECTIVE "Draw a single closed loop, given clues about corner and \
straight squares.")
solver(pearl)
cliprogram(pearlbench pearl.c COMPILE_DEFINITIONS STANDALONE_SOLVER)
puzzle(pegs
DISPLAYNAME "Pegs"
DESCRIPTION "Peg solitaire puzzle"
OBJECTIVE "Jump pegs over each other to remove all but one.")
puzzle(range
DISPLAYNAME "Range"
DESCRIPTION "Visible-distance puzzle"
OBJECTIVE "Place black squares to limit the visible distance from \
each numbered cell.")
puzzle(rect
DISPLAYNAME "Rectangles"
DESCRIPTION "Rectangles puzzle"
OBJECTIVE "Divide the grid into rectangles with areas equal to the \
numbers.")
puzzle(samegame
DISPLAYNAME "Same Game"
DESCRIPTION "Block-clearing puzzle"
OBJECTIVE "Clear the grid by removing touching groups of the same \
colour squares.")
puzzle(signpost
DISPLAYNAME "Signpost"
DESCRIPTION "Square-connecting puzzle"
OBJECTIVE "Connect the squares into a path following the arrows.")
solver(signpost)
puzzle(singles
DISPLAYNAME "Singles"
DESCRIPTION "Number-removing puzzle"
OBJECTIVE "Black out the right set of duplicate numbers.")
solver(singles)
puzzle(sixteen
DISPLAYNAME "Sixteen"
DESCRIPTION "Toroidal sliding block puzzle"
OBJECTIVE "Slide a row at a time to arrange the tiles into order.")
puzzle(slant
DISPLAYNAME "Slant"
DESCRIPTION "Maze-drawing puzzle"
OBJECTIVE "Draw a maze of slanting lines that matches the clues.")
solver(slant)
puzzle(solo
DISPLAYNAME "Solo"
DESCRIPTION "Number placement puzzle"
OBJECTIVE "Fill in the grid so that each row, column and square \
block contains one of every digit.")
solver(solo)
puzzle(tents
DISPLAYNAME "Tents"
DESCRIPTION "Tent-placing puzzle"
OBJECTIVE "Place a tent next to each tree.")
solver(tents)
puzzle(towers
DISPLAYNAME "Towers"
DESCRIPTION "Tower-placing Latin square puzzle"
OBJECTIVE "Complete the latin square of towers in accordance with \
the clues.")
solver(towers latin.c)
puzzle(tracks
DISPLAYNAME "Tracks"
DESCRIPTION "Path-finding railway track puzzle"
OBJECTIVE "Fill in the railway track according to the clues.")
solver(tracks)
puzzle(twiddle
DISPLAYNAME "Twiddle"
DESCRIPTION "Rotational sliding block puzzle"
OBJECTIVE "Rotate the tiles around themselves to arrange them into order.")
puzzle(undead
DISPLAYNAME "Undead"
DESCRIPTION "Monster-placing puzzle"
OBJECTIVE "Place ghosts, vampires and zombies so that the right \
numbers of them can be seen in mirrors.")
puzzle(unequal
DISPLAYNAME "Unequal"
DESCRIPTION "Latin square puzzle"
OBJECTIVE "Complete the latin square in accordance with the > signs.")
solver(unequal latin.c)
puzzle(unruly
DISPLAYNAME "Unruly"
DESCRIPTION "Black and white grid puzzle"
OBJECTIVE "Fill in the black and white grid to avoid runs of three.")
solver(unruly)
puzzle(untangle
DISPLAYNAME "Untangle"
DESCRIPTION "Planar graph layout puzzle"
OBJECTIVE "Reposition the points so that the lines do not cross.")
add_subdirectory(unfinished)
add_subdirectory(auxiliary)
if(build_cli_programs)
write_generated_games_header()
include(CheckFunctionExists)
check_function_exists(HF_ITER HAVE_HF_ITER)
set(WITH_LIBFUZZER OFF
CACHE BOOL "Build fuzzpuzz using Clang's libFuzzer")
cliprogram(fuzzpuzz fuzzpuzz.c list.c ${puzzle_sources}
COMPILE_DEFINITIONS COMBINED $<$<BOOL:${WITH_LIBFUZZER}>:OMIT_MAIN>
$<$<BOOL:${HAVE_HF_ITER}>:HAVE_HF_ITER>)
target_include_directories(fuzzpuzz PRIVATE ${generated_include_dir})
if(WITH_LIBFUZZER)
target_compile_options(fuzzpuzz PRIVATE -fsanitize=fuzzer)
set_target_properties(fuzzpuzz PROPERTIES LINK_FLAGS -fsanitize=fuzzer)
endif()
endif()
build_extras()

View file

@ -1,9 +1,9 @@
This software is copyright (c) 2004-2014 Simon Tatham.
This software is copyright (c) 2004-2024 Simon Tatham.
Portions copyright Richard Boulton, James Harvey, Mike Pinna, Jonas
Kölker, Dariusz Olszewski, Michael Schierl, Lambros Lambrou, Bernd
Schmidt, Steffen Bauer, Lennard Sprong, Rogier Goossens, Michael
Quevillon and Asher Gordon.
Quevillon, Asher Gordon, Didi Kohen and Ben Harris.
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation files

View file

@ -2,48 +2,12 @@ This is the README accompanying the source code to Simon Tatham's
puzzle collection. The collection's web site is at
<https://www.chiark.greenend.org.uk/~sgtatham/puzzles/>.
If you've obtained the source code by downloading a .tar.gz archive
from the Puzzles web site, you should find several Makefiles in the
source code. However, if you've checked the source code out from the
Puzzles git repository, you won't find the Makefiles: they're
automatically generated by `mkfiles.pl', so run that to create them.
The puzzle collection is built using CMake <https://cmake.org/>. To
compile in the simplest way (on any of Linux, Windows or Mac), run
these commands in the source directory:
The Makefiles include:
- `Makefile.am', together with the static `configure.ac', is intended
as input to automake. Run `mkauto.sh' to turn these into a
configure script and Makefile.in, after which you can then run
`./configure' to create an actual Unix Makefile.
- `Makefile.vc' should work under MS Visual C++ on Windows. Run
'nmake /f Makefile.vc' in a Visual Studio command prompt.
- `Makefile.cyg' should work under Cygwin / MinGW. With appropriate
tweaks and setting of TOOLPATH, it should work for both compiling
on Windows and cross-compiling on Unix.
- `Makefile.osx' should work under Mac OS X, provided the Xcode
tools are installed. It builds a single monolithic OS X
application capable of running any of the puzzles, or even more
than one of them at a time.
- `Makefile.wce' should work under MS eMbedded Visual C++ on
Windows and the Pocket PC SDK; it builds Pocket PC binaries.
Many of these Makefiles build a program called `nullgame' in
addition to the actual game binaries. This program doesn't do
anything; it's just a template for people to start from when adding
a new game to the collection, and it's compiled every time to ensure
that it _does_ compile and link successfully (because otherwise it
wouldn't be much use as a template). Once it's built, you can run it
if you really want to (but it's very boring), and then you should
ignore it.
DO NOT EDIT THE MAKEFILES DIRECTLY, if you plan to send any changes
back to the maintainer. The makefiles are generated automatically by
the Perl script `mkfiles.pl' from the file `Recipe' and the various
.R files. If you need to change the makefiles as part of a patch,
you should change Recipe, *.R, and/or mkfiles.pl.
cmake .
cmake --build .
The manual is provided in Windows Help format for the Windows build;
in text format for anyone who needs it; and in HTML for the Mac OS X

View file

@ -1,19 +0,0 @@
# -*- makefile -*-
blackbox : [X] GTK COMMON blackbox blackbox-icon|no-icon
blackbox : [G] WINDOWS COMMON blackbox blackbox.res|noicon.res
ALL += blackbox[COMBINED]
!begin am gtk
GAMES += blackbox
!end
!begin >list.c
A(blackbox) \
!end
!begin >gamedesc.txt
blackbox:blackbox.exe:Black Box:Ball-finding puzzle:Find the hidden balls in the box by bouncing laser beams off them.
!end

View file

@ -7,7 +7,11 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -192,12 +196,14 @@ static const char *validate_params(const game_params *params, bool full)
* types, and could be worked around if required. */
if (params->w > 255 || params->h > 255)
return "Widths and heights greater than 255 are not supported";
if (params->minballs < 0)
return "Negative number of balls";
if (params->minballs < 1)
return "Number of balls must be at least one";
if (params->minballs > params->maxballs)
return "Minimum number of balls may not be greater than maximum";
if (params->minballs >= params->w * params->h)
return "Too many balls to fit in grid";
if (params->minballs < 1)
return "Number of balls must be at least one";
return NULL;
}
@ -307,7 +313,7 @@ struct game_state {
#define GRID(s,x,y) ((s)->grid[(y)*((s)->w+2) + (x)])
#define RANGECHECK(s,x) ((x) >= 0 && (x) <= (s)->nlasers)
#define RANGECHECK(s,x) ((x) >= 0 && (x) < (s)->nlasers)
/* specify numbers because they must match array indexes. */
enum { DIR_UP = 0, DIR_RIGHT = 1, DIR_DOWN = 2, DIR_LEFT = 3 };
@ -468,16 +474,6 @@ static char *solve_game(const game_state *state, const game_state *currstate,
return dupstr("S");
}
static bool game_can_format_as_text_now(const game_params *params)
{
return true;
}
static char *game_text_format(const game_state *state)
{
return NULL;
}
struct game_ui {
int flash_laserno;
int errors;
@ -495,7 +491,7 @@ static game_ui *new_ui(const game_state *state)
ui->newmove = false;
ui->cur_x = ui->cur_y = 1;
ui->cur_visible = false;
ui->cur_visible = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->flash_laser = 0;
@ -517,7 +513,8 @@ static char *encode_ui(const game_ui *ui)
return dupstr(buf);
}
static void decode_ui(game_ui *ui, const char *encoding)
static void decode_ui(game_ui *ui, const char *encoding,
const game_state *state)
{
sscanf(encoding, "E%d", &ui->errors);
}
@ -534,6 +531,41 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
ui->newmove = false;
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (IS_CURSOR_SELECT(button) && ui->cur_visible && !state->reveal) {
int gx = ui->cur_x, gy = ui->cur_y, rangeno = -1;
if (gx == 0 && gy == 0 && button == CURSOR_SELECT) return "Check";
if (gx >= 1 && gx <= state->w && gy >= 1 && gy <= state->h) {
/* Cursor somewhere in the arena. */
if (button == CURSOR_SELECT && !(GRID(state, gx,gy) & BALL_LOCK))
return (GRID(state, gx, gy) & BALL_GUESS) ? "Clear" : "Ball";
if (button == CURSOR_SELECT2)
return (GRID(state, gx, gy) & BALL_LOCK) ? "Unlock" : "Lock";
}
if (grid2range(state, gx, gy, &rangeno)) {
if (button == CURSOR_SELECT &&
state->exits[rangeno] == LASER_EMPTY)
return "Fire";
if (button == CURSOR_SELECT2) {
int n = 0;
/* Row or column lock or unlock. */
if (gy == 0 || gy > state->h) { /* Column lock */
for (gy = 1; gy <= state->h; gy++)
n += !!(GRID(state, gx, gy) & BALL_LOCK);
return n > state->h/2 ? "Unlock" : "Lock";
} else { /* Row lock */
for (gx = 1; gx <= state->w; gx++)
n += !!(GRID(state, gx, gy) & BALL_LOCK);
return n > state->w/2 ? "Unlock" : "Lock";
}
}
}
}
return "";
}
#define OFFSET(gx,gy,o) do { \
int off = (4 + (o) % 4) % 4; \
(gx) += offsets[off].x; \
@ -875,7 +907,7 @@ done:
#define TILE_SIZE (ds->tilesize)
#define TODRAW(x) ((TILE_SIZE * (x)) + (TILE_SIZE / 2))
#define FROMDRAW(x) (((x) - (TILE_SIZE / 2)) / TILE_SIZE)
#define FROMDRAW(x) (((x) + (TILE_SIZE / 2)) / TILE_SIZE - 1)
#define CAN_REVEAL(state) ((state)->nguesses >= (state)->minballs && \
(state)->nguesses <= (state)->maxballs && \
@ -900,7 +932,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
if (IS_CURSOR_MOVE(button)) {
int cx = ui->cur_x, cy = ui->cur_y;
move_cursor(button, &cx, &cy, state->w+2, state->h+2, false);
move_cursor(button, &cx, &cy, state->w+2, state->h+2, false, NULL);
if ((cx == 0 && cy == 0 && !CAN_REVEAL(state)) ||
(cx == 0 && cy == state->h+1) ||
(cx == state->w+1 && cy == 0) ||
@ -909,7 +941,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
ui->cur_x = cx;
ui->cur_y = cy;
ui->cur_visible = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (button == LEFT_BUTTON || button == RIGHT_BUTTON) {
@ -919,7 +951,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
wouldflash = 1;
} else if (button == LEFT_RELEASE) {
ui->flash_laser = 0;
return UI_UPDATE;
return MOVE_UI_UPDATE;
} else if (IS_CURSOR_SELECT(button)) {
if (ui->cur_visible) {
gx = ui->cur_x;
@ -928,7 +960,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
wouldflash = 2;
} else {
ui->cur_visible = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
/* Fix up 'button' for the below logic. */
if (button == CURSOR_SELECT2) button = RIGHT_BUTTON;
@ -977,9 +1009,9 @@ static char *interpret_move(const game_state *state, game_ui *ui,
return nullret;
ui->flash_laserno = rangeno;
ui->flash_laser = wouldflash;
nullret = UI_UPDATE;
nullret = MOVE_UI_UPDATE;
if (state->exits[rangeno] != LASER_EMPTY)
return UI_UPDATE;
return MOVE_UI_UPDATE;
sprintf(buf, "F%d", rangeno);
break;
@ -1034,10 +1066,10 @@ static game_state *execute_move(const game_state *from, const char *move)
case 'F':
sscanf(move+1, "%d", &rangeno);
if (ret->exits[rangeno] != LASER_EMPTY)
goto badmove;
if (!RANGECHECK(ret, rangeno))
goto badmove;
if (ret->exits[rangeno] != LASER_EMPTY)
goto badmove;
fire_laser(ret, rangeno);
break;
@ -1119,7 +1151,7 @@ static void game_get_cursor_location(const game_ui *ui,
*/
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Border is ts/2, to make things easier.
* Thus we have (width) + 2 (firing range*2) + 1 (border*2) tiles
@ -1379,10 +1411,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
int x0 = TODRAW(0)-1, y0 = TODRAW(0)-1;
int x1 = TODRAW(state->w+2), y1 = TODRAW(state->h+2);
draw_rect(dr, 0, 0,
TILE_SIZE * (state->w+3), TILE_SIZE * (state->h+3),
COL_BACKGROUND);
/* clockwise around the outline starting at pt behind (1,1). */
draw_line(dr, x0+ts, y0+ts, x0+ts, y0, COL_HIGHLIGHT);
draw_line(dr, x0+ts, y0, x1-ts, y0, COL_HIGHLIGHT);
@ -1429,14 +1457,14 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
int outline = (ui->cur_visible && ui->cur_x == 0 && ui->cur_y == 0)
? COL_CURSOR : COL_BALL;
clip(dr, TODRAW(0)-1, TODRAW(0)-1, TILE_SIZE+1, TILE_SIZE+1);
draw_circle(dr, TODRAW(0) + ds->crad, TODRAW(0) + ds->crad, ds->crad,
draw_circle(dr, TODRAW(0) + ds->crad-1, TODRAW(0) + ds->crad-1, ds->crad-1,
outline, outline);
draw_circle(dr, TODRAW(0) + ds->crad, TODRAW(0) + ds->crad, ds->crad-2,
draw_circle(dr, TODRAW(0) + ds->crad-1, TODRAW(0) + ds->crad-1, ds->crad-3,
COL_BUTTON, COL_BUTTON);
unclip(dr);
} else {
draw_rect(dr, TODRAW(0)-1, TODRAW(0)-1,
TILE_SIZE+1, TILE_SIZE+1, COL_BACKGROUND);
TILE_SIZE, TILE_SIZE, COL_BACKGROUND);
}
draw_update(dr, TODRAW(0), TODRAW(0), TILE_SIZE, TILE_SIZE);
ds->reveal = state->reveal;
@ -1509,19 +1537,6 @@ static int game_status(const game_state *state)
return 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
{
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
{
}
#ifdef COMBINED
#define thegame blackbox
#endif
@ -1542,13 +1557,15 @@ const struct game thegame = {
dup_game,
free_game,
true, solve_game,
false, game_can_format_as_text_now, game_text_format,
false, NULL, NULL, /* can_format_as_text_now, text_format */
NULL, NULL, /* get_prefs, set_prefs */
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILE_SIZE, game_compute_size, game_set_size,
@ -1560,9 +1577,9 @@ const struct game thegame = {
game_flash_length,
game_get_cursor_location,
game_status,
false, false, game_print_size, game_print,
false, false, NULL, NULL, /* print_size, print */
true, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
REQUIRE_RBUTTON, /* flags */
};

View file

@ -1,21 +0,0 @@
# -*- makefile -*-
BRIDGES_EXTRA = dsf findloop
bridges : [X] GTK COMMON bridges BRIDGES_EXTRA bridges-icon|no-icon
bridges : [G] WINDOWS COMMON bridges BRIDGES_EXTRA bridges.res|noicon.res
ALL += bridges[COMBINED] BRIDGES_EXTRA
!begin am gtk
GAMES += bridges
!end
!begin >list.c
A(bridges) \
!end
!begin >gamedesc.txt
bridges:bridges.exe:Bridges:Bridge-placing puzzle:Connect all the islands with a network of bridges.
!end

View file

@ -72,11 +72,15 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#include <limits.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
/* Turn this on for hints about which lines are considered possibilities. */
#undef DRAW_GRID
/* --- structures for params, state, etc. --- */
@ -134,8 +138,8 @@ struct game_params {
typedef unsigned int grid_type; /* change me later if we invent > 16 bits of flags. */
struct solver_state {
int *dsf, *comptspaces;
int *tmpdsf, *tmpcompspaces;
DSF *dsf, *tmpdsf;
int *comptspaces, *tmpcompspaces;
int refcount;
};
@ -183,7 +187,7 @@ struct game_state {
#define GRIDCOUNT(s,x,y,f) ((GRID(s,x,y) & (f)) ? (INDEX(s,lines,x,y)) : 0)
#define WITHIN2(x,min,max) ((x) >= (min) && (x) < (max))
#define WITHIN2(x,min,max) ((x) >= (min) && (x) <= (max))
#define WITHIN(x,min,max) ((min) > (max) ? \
WITHIN2(x,max,min) : WITHIN2(x,min,max))
@ -803,6 +807,8 @@ static const char *validate_params(const game_params *params, bool full)
{
if (params->w < 3 || params->h < 3)
return "Width and height must be at least 3";
if (params->w > INT_MAX / params->h)
return "Width times height must not be unreasonably large";
if (params->maxb < 1 || params->maxb > MAX_BRIDGES)
return "Too many bridges.";
if (full) {
@ -1133,13 +1139,13 @@ static bool map_hasloops(game_state *state, bool mark)
static void map_group(game_state *state)
{
int i, wh = state->w*state->h, d1, d2;
int i, d1, d2;
int x, y, x2, y2;
int *dsf = state->solver->dsf;
DSF *dsf = state->solver->dsf;
struct island *is, *is_join;
/* Initialise dsf. */
dsf_init(dsf, wh);
dsf_reinit(dsf);
/* For each island, find connected islands right or down
* and merge the dsf for the island squares as well as the
@ -1160,7 +1166,7 @@ static void map_group(game_state *state)
if (!is_join) continue;
d2 = DINDEX(is_join->x, is_join->y);
if (dsf_canonify(dsf,d1) == dsf_canonify(dsf,d2)) {
if (dsf_equivalent(dsf, d1, d2)) {
; /* we have a loop. See comment in map_hasloops. */
/* However, we still want to merge all squares joining
* this side-that-makes-a-loop. */
@ -1180,7 +1186,8 @@ static void map_group(game_state *state)
static bool map_group_check(game_state *state, int canon, bool warn,
int *nislands_r)
{
int *dsf = state->solver->dsf, nislands = 0;
DSF *dsf = state->solver->dsf;
int nislands = 0;
int x, y, i;
bool allfull = true;
struct island *is;
@ -1212,7 +1219,8 @@ static bool map_group_check(game_state *state, int canon, bool warn,
static bool map_group_full(game_state *state, int *ngroups_r)
{
int *dsf = state->solver->dsf, ngroups = 0;
DSF *dsf = state->solver->dsf;
int ngroups = 0;
int i;
bool anyfull = false;
struct island *is;
@ -1267,7 +1275,8 @@ static void map_clear(game_state *state)
static void solve_join(struct island *is, int direction, int n, bool is_max)
{
struct island *is_orth;
int d1, d2, *dsf = is->state->solver->dsf;
int d1, d2;
DSF *dsf = is->state->solver->dsf;
game_state *state = is->state; /* for DINDEX */
is_orth = INDEX(is->state, gridi,
@ -1281,7 +1290,7 @@ static void solve_join(struct island *is, int direction, int n, bool is_max)
if (n > 0 && !is_max) {
d1 = DINDEX(is->x, is->y);
d2 = DINDEX(is_orth->x, is_orth->y);
if (dsf_canonify(dsf, d1) != dsf_canonify(dsf, d2))
if (!dsf_equivalent(dsf, d1, d2))
dsf_merge(dsf, d1, d2);
}
}
@ -1382,7 +1391,8 @@ static bool solve_island_stage1(struct island *is, bool *didsth_r)
static bool solve_island_checkloop(struct island *is, int direction)
{
struct island *is_orth;
int *dsf = is->state->solver->dsf, d1, d2;
DSF *dsf = is->state->solver->dsf;
int d1, d2;
game_state *state = is->state;
if (is->state->allowloops)
@ -1399,7 +1409,7 @@ static bool solve_island_checkloop(struct island *is, int direction)
d1 = DINDEX(is->x, is->y);
d2 = DINDEX(is_orth->x, is_orth->y);
if (dsf_canonify(dsf, d1) == dsf_canonify(dsf, d2)) {
if (dsf_equivalent(dsf, d1, d2)) {
/* two islands are connected already; don't join them. */
return true;
}
@ -1457,7 +1467,8 @@ static bool solve_island_stage2(struct island *is, bool *didsth_r)
static bool solve_island_subgroup(struct island *is, int direction)
{
struct island *is_join;
int nislands, *dsf = is->state->solver->dsf;
int nislands;
DSF *dsf = is->state->solver->dsf;
game_state *state = is->state;
debug(("..checking subgroups.\n"));
@ -1520,7 +1531,6 @@ static bool solve_island_stage3(struct island *is, bool *didsth_r)
{
int i, n, x, y, missing, spc, curr, maxb;
bool didsth = false;
int wh = is->state->w * is->state->h;
struct solver_state *ss = is->state->solver;
assert(didsth_r);
@ -1544,7 +1554,7 @@ static bool solve_island_stage3(struct island *is, bool *didsth_r)
maxb = -1;
/* We have to squirrel the dsf away and restore it afterwards;
* it is additive only, and can't be removed from. */
memcpy(ss->tmpdsf, ss->dsf, wh*sizeof(int));
dsf_copy(ss->tmpdsf, ss->dsf);
for (n = curr+1; n <= curr+spc; n++) {
solve_join(is, i, n, false);
map_update_possibles(is->state);
@ -1560,7 +1570,7 @@ static bool solve_island_stage3(struct island *is, bool *didsth_r)
}
}
solve_join(is, i, curr, false); /* put back to before. */
memcpy(ss->dsf, ss->tmpdsf, wh*sizeof(int));
dsf_copy(ss->dsf, ss->tmpdsf);
if (maxb != -1) {
/*debug_state(is->state);*/
@ -1629,7 +1639,7 @@ static bool solve_island_stage3(struct island *is, bool *didsth_r)
is->adj.points[j].dx ? G_LINEH : G_LINEV);
if (before[i] != 0) continue; /* this idea is pointless otherwise */
memcpy(ss->tmpdsf, ss->dsf, wh*sizeof(int));
dsf_copy(ss->tmpdsf, ss->dsf);
for (j = 0; j < is->adj.npoints; j++) {
spc = island_adjspace(is, true, missing, j);
@ -1644,7 +1654,7 @@ static bool solve_island_stage3(struct island *is, bool *didsth_r)
for (j = 0; j < is->adj.npoints; j++)
solve_join(is, j, before[j], false);
memcpy(ss->dsf, ss->tmpdsf, wh*sizeof(int));
dsf_copy(ss->dsf, ss->tmpdsf);
if (got) {
debug(("island at (%d,%d) must connect in direction (%d,%d) to"
@ -1763,8 +1773,8 @@ static game_state *new_state(const game_params *params)
ret->completed = false;
ret->solver = snew(struct solver_state);
ret->solver->dsf = snew_dsf(wh);
ret->solver->tmpdsf = snewn(wh, int);
ret->solver->dsf = dsf_new(wh);
ret->solver->tmpdsf = dsf_new(wh);
ret->solver->refcount = 1;
@ -1813,8 +1823,8 @@ static game_state *dup_game(const game_state *state)
static void free_game(game_state *state)
{
if (--state->solver->refcount <= 0) {
sfree(state->solver->dsf);
sfree(state->solver->tmpdsf);
dsf_free(state->solver->dsf);
dsf_free(state->solver->tmpdsf);
sfree(state->solver);
}
@ -2004,28 +2014,38 @@ generated:
static const char *validate_desc(const game_params *params, const char *desc)
{
int i, wh = params->w * params->h;
int i, j, wh = params->w * params->h, nislands = 0;
bool *last_row = snewn(params->w, bool);
memset(last_row, 0, params->w * sizeof(bool));
for (i = 0; i < wh; i++) {
if (*desc >= '1' && *desc <= '9')
/* OK */;
else if (*desc >= 'a' && *desc <= 'z')
if ((*desc >= '1' && *desc <= '9') || (*desc >= 'A' && *desc <= 'G')) {
nislands++;
/* Look for other islands to the left and above. */
if ((i % params->w > 0 && last_row[i % params->w - 1]) ||
last_row[i % params->w]) {
sfree(last_row);
return "Game description contains joined islands";
}
last_row[i % params->w] = true;
} else if (*desc >= 'a' && *desc <= 'z') {
for (j = 0; j < *desc - 'a' + 1; j++)
last_row[(i + j) % params->w] = false;
i += *desc - 'a'; /* plus the i++ */
else if (*desc >= 'A' && *desc <= 'G')
/* OK */;
else if (*desc == 'V' || *desc == 'W' ||
*desc == 'X' || *desc == 'Y' ||
*desc == 'H' || *desc == 'I' ||
*desc == 'J' || *desc == 'K')
/* OK */;
else if (!*desc)
} else if (!*desc) {
sfree(last_row);
return "Game description shorter than expected";
else
} else {
sfree(last_row);
return "Game description contains unexpected character";
}
desc++;
}
sfree(last_row);
if (*desc || i > wh)
return "Game description longer than expected";
if (nislands < 2)
return "Game description has too few islands";
return NULL;
}
@ -2105,39 +2125,68 @@ static char *ui_cancel_drag(game_ui *ui)
ui->dragx_src = ui->dragy_src = -1;
ui->dragx_dst = ui->dragy_dst = -1;
ui->dragging = false;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
static game_ui *new_ui(const game_state *state)
{
game_ui *ui = snew(game_ui);
ui_cancel_drag(ui);
ui->cur_x = state->islands[0].x;
ui->cur_y = state->islands[0].y;
ui->cur_visible = false;
if (state != NULL) {
ui->cur_x = state->islands[0].x;
ui->cur_y = state->islands[0].y;
}
ui->cur_visible = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->show_hints = false;
return ui;
}
static config_item *get_prefs(game_ui *ui)
{
config_item *ret;
ret = snewn(2, config_item);
ret[0].name = "Show possible bridge locations";
ret[0].kw = "show-hints";
ret[0].type = C_BOOLEAN;
ret[0].u.boolean.bval = ui->show_hints;
ret[1].name = NULL;
ret[1].type = C_END;
return ret;
}
static void set_prefs(game_ui *ui, const config_item *cfg)
{
ui->show_hints = cfg[0].u.boolean.bval;
}
static void free_ui(game_ui *ui)
{
sfree(ui);
}
static char *encode_ui(const game_ui *ui)
{
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
const game_state *newstate)
{
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (IS_CURSOR_SELECT(button)) {
if (!ui->cur_visible)
return ""; /* Actually shows cursor. */
if (ui->dragging || button == CURSOR_SELECT2)
return "Finished";
if (GRID(state, ui->cur_x, ui->cur_y) & G_ISLAND)
return "Select";
}
return "";
}
struct game_drawstate {
int tilesize;
int w, h;
@ -2307,7 +2356,7 @@ static char *update_drag_dst(const game_state *state, game_ui *ui,
/*debug(("update_drag src (%d,%d) d(%d,%d) dst (%d,%d)\n",
ui->dragx_src, ui->dragy_src, dx, dy,
ui->dragx_dst, ui->dragy_dst));*/
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
static char *finish_drag(const game_state *state, game_ui *ui)
@ -2342,15 +2391,15 @@ static char *interpret_move(const game_state *state, game_ui *ui,
char buf[80], *ret;
grid_type ggrid = INGRID(state,gx,gy) ? GRID(state,gx,gy) : 0;
bool shift = button & MOD_SHFT, control = button & MOD_CTRL;
button &= ~MOD_MASK;
button = STRIP_BUTTON_MODIFIERS(button);
if (button == LEFT_BUTTON || button == RIGHT_BUTTON) {
if (!INGRID(state, gx, gy)) return NULL;
if (!INGRID(state, gx, gy)) return MOVE_UNUSED;
ui->cur_visible = false;
if (ggrid & G_ISLAND) {
ui->dragx_src = gx;
ui->dragy_src = gy;
return UI_UPDATE;
return MOVE_UI_UPDATE;
} else
return ui_cancel_drag(ui);
} else if (button == LEFT_DRAG || button == RIGHT_DRAG) {
@ -2364,7 +2413,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
/* cancel a drag when we go back to the starting point */
ui->dragx_dst = -1;
ui->dragy_dst = -1;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
} else if (button == LEFT_RELEASE || button == RIGHT_RELEASE) {
if (ui->dragging) {
@ -2375,8 +2424,8 @@ static char *interpret_move(const game_state *state, game_ui *ui,
return ui_cancel_drag(ui);
}
ui_cancel_drag(ui);
if (!INGRID(state, gx, gy)) return NULL;
if (!(GRID(state, gx, gy) & G_ISLAND)) return NULL;
if (!INGRID(state, gx, gy)) return MOVE_UNUSED;
if (!(GRID(state, gx, gy) & G_ISLAND)) return MOVE_NO_EFFECT;
sprintf(buf, "M%d,%d", gx, gy);
return dupstr(buf);
}
@ -2397,9 +2446,9 @@ static char *interpret_move(const game_state *state, game_ui *ui,
if (ui->dragging) {
int nx = ui->cur_x, ny = ui->cur_y;
move_cursor(button, &nx, &ny, state->w, state->h, false);
move_cursor(button, &nx, &ny, state->w, state->h, false, NULL);
if (nx == ui->cur_x && ny == ui->cur_y)
return NULL;
return MOVE_NO_EFFECT;
update_drag_dst(state, ui, ds,
COORD(nx)+TILE_SIZE/2,
COORD(ny)+TILE_SIZE/2);
@ -2451,19 +2500,19 @@ static char *interpret_move(const game_state *state, game_ui *ui,
if (!dingrid) break;
}
if (!oingrid) return UI_UPDATE;
if (!oingrid) return MOVE_UI_UPDATE;
}
/* not reached */
found:
ui->cur_x = nx;
ui->cur_y = ny;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
} else if (IS_CURSOR_SELECT(button)) {
if (!ui->cur_visible) {
ui->cur_visible = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (ui->dragging || button == CURSOR_SELECT2) {
ui_cancel_drag(ui);
@ -2471,7 +2520,7 @@ found:
sprintf(buf, "M%d,%d", ui->cur_x, ui->cur_y);
return dupstr(buf);
} else
return UI_UPDATE;
return MOVE_UI_UPDATE;
} else {
grid_type v = GRID(state, ui->cur_x, ui->cur_y);
if (v & G_ISLAND) {
@ -2480,7 +2529,7 @@ found:
ui->dragy_src = ui->cur_y;
ui->dragx_dst = ui->dragy_dst = -1;
ui->drag_is_noline = (button == CURSOR_SELECT2);
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
}
} else if ((button >= '0' && button <= '9') ||
@ -2498,7 +2547,7 @@ found:
if (!ui->cur_visible) {
ui->cur_visible = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
for (i = 0; i < state->n_islands; ++i) {
@ -2525,15 +2574,15 @@ found:
if (best_x != -1 && best_y != -1) {
ui->cur_x = best_x;
ui->cur_y = best_y;
return UI_UPDATE;
return MOVE_UI_UPDATE;
} else
return NULL;
return MOVE_NO_EFFECT;
} else if (button == 'g' || button == 'G') {
ui->show_hints = !ui->show_hints;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
return NULL;
return MOVE_UNUSED;
}
static game_state *execute_move(const game_state *state, const char *move)
@ -2557,6 +2606,8 @@ static game_state *execute_move(const game_state *state, const char *move)
goto badmove;
if (!INGRID(ret, x1, y1) || !INGRID(ret, x2, y2))
goto badmove;
/* Precisely one co-ordinate must differ between islands. */
if ((x1 != x2) + (y1 != y2) != 1) goto badmove;
is1 = INDEX(ret, gridi, x1, y1);
is2 = INDEX(ret, gridi, x2, y2);
if (!is1 || !is2) goto badmove;
@ -2568,6 +2619,7 @@ static game_state *execute_move(const game_state *state, const char *move)
goto badmove;
if (!INGRID(ret, x1, y1) || !INGRID(ret, x2, y2))
goto badmove;
if ((x1 != x2) + (y1 != y2) != 1) goto badmove;
is1 = INDEX(ret, gridi, x1, y1);
is2 = INDEX(ret, gridi, x2, y2);
if (!is1 || !is2) goto badmove;
@ -2636,7 +2688,7 @@ static char *solve_game(const game_state *state, const game_state *currstate,
*/
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Ick: fake up `ds->tilesize' for macro expansion purposes */
struct { int tilesize; } ads, *ds = &ads;
@ -2987,9 +3039,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
/* Clear screen, if required. */
if (!ds->started) {
draw_rect(dr, 0, 0,
TILE_SIZE * ds->w + 2 * BORDER,
TILE_SIZE * ds->h + 2 * BORDER, COL_BACKGROUND);
#ifdef DRAW_GRID
draw_rect_outline(dr,
COORD(0)-1, COORD(0)-1,
@ -3177,22 +3226,19 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
static void game_print_size(const game_params *params, const game_ui *ui,
float *x, float *y)
{
int pw, ph;
/* 10mm squares by default. */
game_compute_size(params, 1000, &pw, &ph);
game_compute_size(params, 1000, ui, &pw, &ph);
*x = pw / 100.0F;
*y = ph / 100.0F;
}
static void game_print(drawing *dr, const game_state *state, int ts)
static void game_print(drawing *dr, const game_state *state, const game_ui *ui,
int ts)
{
int ink = print_mono_colour(dr, 0);
int paper = print_mono_colour(dr, 1);
@ -3266,12 +3312,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
get_prefs, set_prefs,
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILE_SIZE, game_compute_size, game_set_size,
@ -3285,7 +3333,7 @@ const struct game thegame = {
game_status,
true, false, game_print_size, game_print,
false, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
REQUIRE_RBUTTON, /* flags */
};

View file

@ -71,40 +71,3 @@ void free_combi(combi_ctx *combi)
sfree(combi->a);
sfree(combi);
}
/* compile this with:
* gcc -o combi.exe -DSTANDALONE_COMBI_TEST combi.c malloc.c
*/
#ifdef STANDALONE_COMBI_TEST
#include <stdio.h>
void fatal(const char *fmt, ...)
{
abort();
}
int main(int argc, char *argv[])
{
combi_ctx *c;
int i, r, n;
if (argc < 3) {
fprintf(stderr, "Usage: combi R N\n");
exit(1);
}
r = atoi(argv[1]); n = atoi(argv[2]);
c = new_combi(r, n);
printf("combi %d of %d, %d elements.\n", c->r, c->n, c->total);
while (next_combi(c)) {
for (i = 0; i < c->r; i++) {
printf("%d ", c->a[i]);
}
printf("\n");
}
free_combi(c);
}
#endif

View file

@ -1,19 +0,0 @@
# -*- makefile -*-
cube : [X] GTK COMMON cube cube-icon|no-icon
cube : [G] WINDOWS COMMON cube cube.res|noicon.res
ALL += cube[COMBINED]
!begin am gtk
GAMES += cube
!end
!begin >list.c
A(cube) \
!end
!begin >gamedesc.txt
cube:cube.exe:Cube:Rolling cube puzzle:Pick up all the blue squares by rolling the cube over them.
!end

View file

@ -7,7 +7,11 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -171,7 +175,7 @@ enum { LEFT, RIGHT, UP, DOWN, UP_LEFT, UP_RIGHT, DOWN_LEFT, DOWN_RIGHT };
(ra)[0] = rx; (ra)[1] = ry; (ra)[2] = rz; \
} while (0)
#define APPROXEQ(x,y) ( SQ(x-y) < 0.1 )
#define APPROXEQ(x,y) ( SQ(x-y) < 0.1F )
struct grid_square {
float x, y;
@ -202,8 +206,8 @@ struct game_grid {
};
#define SET_SQUARE(state, i, val) \
((state)->bluemask[(i)/32] &= ~(1 << ((i)%32)), \
(state)->bluemask[(i)/32] |= ((!!val) << ((i)%32)))
((state)->bluemask[(i)/32] &= ~(1UL << ((i)%32)), \
(state)->bluemask[(i)/32] |= ((unsigned long)(!!val) << ((i)%32)))
#define GET_SQUARE(state, i) \
(((state)->bluemask[(i)/32] >> ((i)%32)) & 1)
@ -542,12 +546,38 @@ static const char *validate_params(const game_params *params, bool full)
if (params->solid < 0 || params->solid >= lenof(solids))
return "Unrecognised solid type";
if (params->d1 < 0 || params->d2 < 0)
return "Grid dimensions may not be negative";
if (solids[params->solid]->order == 4) {
if (params->d1 <= 1 || params->d2 <= 1)
return "Both grid dimensions must be greater than one";
if (params->d2 > INT_MAX / params->d1)
return "Grid area must not be unreasonably large";
} else {
if (params->d1 <= 0 && params->d2 <= 0)
return "At least one grid dimension must be greater than zero";
/*
* Check whether d1^2 + d2^2 + 4 d1 d2 > INT_MAX, without overflow:
*
* First check d1^2 doesn't overflow by itself.
*
* Then check d2^2 doesn't exceed the remaining space between
* d1^2 and INT_MAX.
*
* If that's all OK then we know both d1 and d2 are
* individually less than the square root of INT_MAX, so we
* can safely multiply them and compare against the
* _remaining_ space.
*/
if ((params->d1 > 0 && params->d1 > INT_MAX / params->d1) ||
(params->d2 > 0 &&
params->d2 > (INT_MAX - params->d1*params->d1) / params->d2) ||
(params->d2 > 0 &&
params->d1*params->d2 > (INT_MAX - params->d1*params->d1 -
params->d2*params->d2) / params->d2))
return "Grid area must not be unreasonably large";
}
for (i = 0; i < 4; i++)
@ -761,7 +791,7 @@ static bool align_poly(const struct solid *solid, struct grid_square *sq,
dist += SQ(solid->vertices[i*3+1] * flip - sq->points[j*2+1] + sq->y);
dist += SQ(solid->vertices[i*3+2] - zmin);
if (dist < 0.1) {
if (dist < 0.1F) {
matches++;
index = i;
}
@ -811,7 +841,7 @@ static struct solid *transform_poly(const struct solid *solid, bool flip,
*/
vx = ret->vertices[key1*3+0] - ret->vertices[key0*3+0];
vy = ret->vertices[key1*3+1] - ret->vertices[key0*3+1];
assert(APPROXEQ(vx*vx + vy*vy, 1.0));
assert(APPROXEQ(vx*vx + vy*vy, 1.0F));
vmatrix[0] = vx; vmatrix[3] = vy; vmatrix[6] = 0;
vmatrix[1] = -vy; vmatrix[4] = vx; vmatrix[7] = 0;
@ -999,22 +1029,6 @@ static void free_game(game_state *state)
sfree(state);
}
static char *solve_game(const game_state *state, const game_state *currstate,
const char *aux, const char **error)
{
return NULL;
}
static bool game_can_format_as_text_now(const game_params *params)
{
return true;
}
static char *game_text_format(const game_state *state)
{
return NULL;
}
static game_ui *new_ui(const game_state *state)
{
return NULL;
@ -1024,15 +1038,6 @@ static void free_ui(game_ui *ui)
{
}
static char *encode_ui(const game_ui *ui)
{
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
const game_state *newstate)
{
@ -1081,11 +1086,11 @@ static int find_move_dest(const game_state *from, int direction,
for (j = 0; j < from->grid->squares[i].npoints; j++) {
dist = (SQ(from->grid->squares[i].points[j*2] - points[0]) +
SQ(from->grid->squares[i].points[j*2+1] - points[1]));
if (dist < 0.1)
if (dist < 0.1F)
dkey[match++] = j;
dist = (SQ(from->grid->squares[i].points[j*2] - points[2]) +
SQ(from->grid->squares[i].points[j*2+1] - points[3]));
if (dist < 0.1)
if (dist < 0.1F)
dkey[match++] = j;
}
@ -1140,7 +1145,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
cy = (int)(state->grid->squares[state->current].y * GRID_SCALE) + ds->oy;
if (x == cx && y == cy)
return NULL; /* clicked in exact centre! */
return MOVE_NO_EFFECT; /* clicked in exact centre! */
angle = atan2(y - cy, x - cx);
/*
@ -1191,11 +1196,11 @@ static char *interpret_move(const game_state *state, game_ui *ui,
direction = RIGHT;
}
} else
return NULL;
return MOVE_UNUSED;
mask = state->grid->squares[state->current].directions[direction];
if (mask == 0)
return NULL;
return MOVE_NO_EFFECT;
/*
* Translate diagonal directions into orthogonal ones.
@ -1210,14 +1215,14 @@ static char *interpret_move(const game_state *state, game_ui *ui,
}
if (find_move_dest(state, direction, skey, dkey) < 0)
return NULL;
return MOVE_NO_EFFECT;
if (direction == LEFT) return dupstr("L");
if (direction == RIGHT) return dupstr("R");
if (direction == UP) return dupstr("U");
if (direction == DOWN) return dupstr("D");
return NULL; /* should never happen */
return MOVE_NO_EFFECT; /* should never happen */
}
static game_state *execute_move(const game_state *from, const char *move)
@ -1484,7 +1489,7 @@ static struct bbox find_bbox(const game_params *params)
((int)(((bb).d - (bb).u + 2*(solid)->border) * gs))
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
struct bbox bb = find_bbox(params);
@ -1734,19 +1739,6 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
{
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
{
}
#ifdef COMBINED
#define thegame cube
#endif
@ -1766,14 +1758,16 @@ const struct game thegame = {
new_game,
dup_game,
free_game,
false, solve_game,
false, game_can_format_as_text_now, game_text_format,
false, NULL, /* solve */
false, NULL, NULL, /* can_format_as_text_now, text_format */
NULL, NULL, /* get_prefs, set_prefs */
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
NULL, /* game_request_keys */
game_changed_state,
NULL, /* current_key_label */
interpret_move,
execute_move,
PREFERRED_GRID_SCALE, game_compute_size, game_set_size,
@ -1785,8 +1779,8 @@ const struct game thegame = {
game_flash_length,
game_get_cursor_location,
game_status,
false, false, game_print_size, game_print,
false, false, NULL, NULL, /* print_size, print */
true, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

File diff suppressed because it is too large Load diff

View file

@ -260,9 +260,10 @@ static bool addremcommon(int w, int h, int x, int y, int *own, int val)
* In both of the above suggested use cases, the user would
* probably want w==h==k, but that isn't a requirement.
*/
static int *divvy_internal(int w, int h, int k, random_state *rs)
DSF *divvy_rectangle_attempt(int w, int h, int k, random_state *rs)
{
int *order, *queue, *tmp, *own, *sizes, *addable, *retdsf;
int *order, *queue, *tmp, *own, *sizes, *addable;
DSF *retdsf, *tmpdsf;
bool *removable;
int wh = w*h;
int i, j, n, x, y, qhead, qtail;
@ -277,6 +278,7 @@ static int *divvy_internal(int w, int h, int k, random_state *rs)
queue = snewn(n, int);
addable = snewn(wh*4, int);
removable = snewn(wh, bool);
retdsf = tmpdsf = NULL;
/*
* Permute the grid squares into a random order, which will be
@ -609,7 +611,7 @@ static int *divvy_internal(int w, int h, int k, random_state *rs)
assert(own[i] >= 0 && own[i] < n);
tmp[own[i]] = i;
}
retdsf = snew_dsf(wh);
retdsf = dsf_new(wh);
for (i = 0; i < wh; i++) {
dsf_merge(retdsf, i, tmp[own[i]]);
}
@ -619,18 +621,18 @@ static int *divvy_internal(int w, int h, int k, random_state *rs)
* the ominoes really are k-ominoes and we haven't
* accidentally split one into two disconnected pieces.
*/
dsf_init(tmp, wh);
tmpdsf = dsf_new(wh);
for (y = 0; y < h; y++)
for (x = 0; x+1 < w; x++)
if (own[y*w+x] == own[y*w+(x+1)])
dsf_merge(tmp, y*w+x, y*w+(x+1));
dsf_merge(tmpdsf, y*w+x, y*w+(x+1));
for (x = 0; x < w; x++)
for (y = 0; y+1 < h; y++)
if (own[y*w+x] == own[(y+1)*w+x])
dsf_merge(tmp, y*w+x, (y+1)*w+x);
dsf_merge(tmpdsf, y*w+x, (y+1)*w+x);
for (i = 0; i < wh; i++) {
j = dsf_canonify(retdsf, i);
assert(dsf_canonify(tmp, j) == dsf_canonify(tmp, i));
assert(dsf_equivalent(tmpdsf, j, i));
}
cleanup:
@ -640,6 +642,7 @@ static int *divvy_internal(int w, int h, int k, random_state *rs)
*/
sfree(order);
sfree(tmp);
dsf_free(tmpdsf);
sfree(own);
sfree(sizes);
sfree(queue);
@ -652,131 +655,13 @@ static int *divvy_internal(int w, int h, int k, random_state *rs)
return retdsf;
}
#ifdef TESTMODE
static int fail_counter = 0;
#endif
int *divvy_rectangle(int w, int h, int k, random_state *rs)
DSF *divvy_rectangle(int w, int h, int k, random_state *rs)
{
int *ret;
DSF *ret;
do {
ret = divvy_internal(w, h, k, rs);
#ifdef TESTMODE
if (!ret)
fail_counter++;
#endif
ret = divvy_rectangle_attempt(w, h, k, rs);
} while (!ret);
return ret;
}
#ifdef TESTMODE
/*
* gcc -g -O0 -DTESTMODE -I.. -o divvy divvy.c ../random.c ../malloc.c ../dsf.c ../misc.c ../nullfe.c
*
* or to debug
*
* gcc -g -O0 -DDIVVY_DIAGNOSTICS -DTESTMODE -I.. -o divvy divvy.c ../random.c ../malloc.c ../dsf.c ../misc.c ../nullfe.c
*/
int main(int argc, char **argv)
{
int *dsf;
int i;
int w = 9, h = 4, k = 6, tries = 100;
random_state *rs;
rs = random_new("123456", 6);
if (argc > 1)
w = atoi(argv[1]);
if (argc > 2)
h = atoi(argv[2]);
if (argc > 3)
k = atoi(argv[3]);
if (argc > 4)
tries = atoi(argv[4]);
for (i = 0; i < tries; i++) {
int x, y;
dsf = divvy_rectangle(w, h, k, rs);
assert(dsf);
for (y = 0; y <= 2*h; y++) {
for (x = 0; x <= 2*w; x++) {
int miny = y/2 - 1, maxy = y/2;
int minx = x/2 - 1, maxx = x/2;
int classes[4], tx, ty;
for (ty = 0; ty < 2; ty++)
for (tx = 0; tx < 2; tx++) {
int cx = minx+tx, cy = miny+ty;
if (cx < 0 || cx >= w || cy < 0 || cy >= h)
classes[ty*2+tx] = -1;
else
classes[ty*2+tx] = dsf_canonify(dsf, cy*w+cx);
}
switch (y%2 * 2 + x%2) {
case 0: /* corner */
/*
* Cases for the corner:
*
* - if all four surrounding squares belong
* to the same omino, we print a space.
*
* - if the top two are the same and the
* bottom two are the same, we print a
* horizontal line.
*
* - if the left two are the same and the
* right two are the same, we print a
* vertical line.
*
* - otherwise, we print a cross.
*/
if (classes[0] == classes[1] &&
classes[1] == classes[2] &&
classes[2] == classes[3])
printf(" ");
else if (classes[0] == classes[1] &&
classes[2] == classes[3])
printf("-");
else if (classes[0] == classes[2] &&
classes[1] == classes[3])
printf("|");
else
printf("+");
break;
case 1: /* horiz edge */
if (classes[1] == classes[3])
printf(" ");
else
printf("--");
break;
case 2: /* vert edge */
if (classes[2] == classes[3])
printf(" ");
else
printf("|");
break;
case 3: /* square centre */
printf(" ");
break;
}
}
printf("\n");
}
printf("\n");
sfree(dsf);
}
printf("%d retries needed for %d successes\n", fail_counter, tries);
return 0;
}
#endif

View file

@ -1,24 +0,0 @@
# -*- makefile -*-
DOMINOSA_EXTRA = laydomino dsf sort findloop
dominosa : [X] GTK COMMON dominosa DOMINOSA_EXTRA dominosa-icon|no-icon
dominosa : [G] WINDOWS COMMON dominosa DOMINOSA_EXTRA dominosa.res|noicon.res
ALL += dominosa[COMBINED] DOMINOSA_EXTRA
dominosasolver : [U] dominosa[STANDALONE_SOLVER] DOMINOSA_EXTRA STANDALONE
dominosasolver : [C] dominosa[STANDALONE_SOLVER] DOMINOSA_EXTRA STANDALONE
!begin am gtk
GAMES += dominosa
!end
!begin >list.c
A(dominosa) \
!end
!begin >gamedesc.txt
dominosa:dominosa.exe:Dominosa:Domino tiling puzzle:Tile the rectangle with a full set of dominoes.
!end

View file

@ -47,7 +47,12 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#include <limits.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -243,6 +248,10 @@ static const char *validate_params(const game_params *params, bool full)
{
if (params->n < 1)
return "Maximum face number must be at least one";
if (params->n > INT_MAX - 2 ||
params->n + 2 > INT_MAX / (params->n + 1))
return "Maximum face number must not be unreasonably large";
if (params->diff >= DIFFCOUNT)
return "Unknown difficulty rating";
return NULL;
@ -254,9 +263,9 @@ static const char *validate_params(const game_params *params, bool full)
#ifdef STANDALONE_SOLVER
#define SOLVER_DIAGNOSTICS
bool solver_diagnostics = false;
static bool solver_diagnostics = false;
#elif defined SOLVER_DIAGNOSTICS
const bool solver_diagnostics = true;
static const bool solver_diagnostics = true;
#endif
struct solver_domino;
@ -342,6 +351,7 @@ struct solver_scratch {
struct findloopstate *fls;
bool squares_by_number_initialised;
int *wh_scratch, *pc_scratch, *pc_scratch2, *dc_scratch;
DSF *dsf_scratch;
};
static struct solver_scratch *solver_make_scratch(int n)
@ -473,6 +483,7 @@ static struct solver_scratch *solver_make_scratch(int n)
sc->wh_scratch = NULL;
sc->pc_scratch = sc->pc_scratch2 = NULL;
sc->dc_scratch = NULL;
sc->dsf_scratch = NULL;
return sc;
}
@ -500,6 +511,7 @@ static void solver_free_scratch(struct solver_scratch *sc)
sfree(sc->pc_scratch);
sfree(sc->pc_scratch2);
sfree(sc->dc_scratch);
dsf_free(sc->dsf_scratch);
sfree(sc);
}
@ -925,7 +937,7 @@ struct parity_findloop_ctx {
int i;
};
int parity_neighbour(int vertex, void *vctx)
static int parity_neighbour(int vertex, void *vctx)
{
struct parity_findloop_ctx *ctx = (struct parity_findloop_ctx *)vctx;
struct solver_placement *p;
@ -1416,21 +1428,23 @@ static bool deduce_forcing_chain(struct solver_scratch *sc)
sc->pc_scratch2 = snewn(sc->pc, int);
if (!sc->dc_scratch)
sc->dc_scratch = snewn(sc->dc, int);
if (!sc->dsf_scratch)
sc->dsf_scratch = dsf_new_flip(sc->pc);
/*
* Start by identifying chains of placements which must all occur
* together if any of them occurs. We do this by making
* pc_scratch2 an edsf binding the placements into an equivalence
* dsf_scratch a flip dsf binding the placements into an equivalence
* class for each entire forcing chain, with the two possible sets
* of dominoes for the chain listed as inverses.
*/
dsf_init(sc->pc_scratch2, sc->pc);
dsf_reinit(sc->dsf_scratch);
for (si = 0; si < sc->wh; si++) {
struct solver_square *sq = &sc->squares[si];
if (sq->nplacements == 2)
edsf_merge(sc->pc_scratch2,
sq->placements[0]->index,
sq->placements[1]->index, true);
dsf_merge_flip(sc->dsf_scratch,
sq->placements[0]->index,
sq->placements[1]->index, true);
}
/*
* Now read out the whole dsf into pc_scratch, flattening its
@ -1443,7 +1457,7 @@ static bool deduce_forcing_chain(struct solver_scratch *sc)
*/
for (pi = 0; pi < sc->pc; pi++) {
bool inv;
int c = edsf_canonify(sc->pc_scratch2, pi, &inv);
int c = dsf_canonify_flip(sc->dsf_scratch, pi, &inv);
sc->pc_scratch[pi] = c * 2 + (inv ? 1 : 0);
}
@ -2708,7 +2722,7 @@ static game_ui *new_ui(const game_state *state)
{
game_ui *ui = snew(game_ui);
ui->cur_x = ui->cur_y = 0;
ui->cur_visible = false;
ui->cur_visible = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->highlight_1 = ui->highlight_2 = -1;
return ui;
}
@ -2718,15 +2732,6 @@ static void free_ui(game_ui *ui)
sfree(ui);
}
static char *encode_ui(const game_ui *ui)
{
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
const game_state *newstate)
{
@ -2734,6 +2739,33 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
ui->cur_visible = false;
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (IS_CURSOR_SELECT(button)) {
int d1, d2, w = state->w;
if (!((ui->cur_x ^ ui->cur_y) & 1))
return ""; /* must have exactly one dimension odd */
d1 = (ui->cur_y / 2) * w + (ui->cur_x / 2);
d2 = ((ui->cur_y+1) / 2) * w + ((ui->cur_x+1) / 2);
/* We can't mark an edge next to any domino. */
if (button == CURSOR_SELECT2 &&
(state->grid[d1] != d1 || state->grid[d2] != d2))
return "";
if (button == CURSOR_SELECT) {
if (state->grid[d1] == d2) return "Remove";
return "Place";
} else {
int edge = d2 == d1 + 1 ? EDGE_R : EDGE_B;
if (state->edges[d1] & edge) return "Remove";
return "Line";
}
}
return "";
}
#define PREFERRED_TILESIZE 32
#define TILESIZE (ds->tilesize)
#define BORDER (TILESIZE * 3 / 4)
@ -2746,7 +2778,6 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
#define FROMCOORD(x) ( ((x) - BORDER + TILESIZE) / TILESIZE - 1 )
struct game_drawstate {
bool started;
int w, h, tilesize;
unsigned long *visible;
};
@ -2768,7 +2799,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
int d1, d2;
if (tx < 0 || tx >= w || ty < 0 || ty >= h)
return NULL;
return MOVE_UNUSED;
/*
* Now we know which square the click was in, decide which
@ -2786,29 +2817,26 @@ static char *interpret_move(const game_state *state, game_ui *ui,
else if (abs(dy) > abs(dx) && dy > 0 && ty+1 < h)
d1 = t, d2 = t + w; /* clicked in top half of domino */
else
return NULL;
return MOVE_NO_EFFECT; /* clicked precisely on a diagonal */
/*
* We can't mark an edge next to any domino.
*/
if (button == RIGHT_BUTTON &&
(state->grid[d1] != d1 || state->grid[d2] != d2))
return NULL;
return MOVE_NO_EFFECT;
ui->cur_visible = false;
sprintf(buf, "%c%d,%d", (int)(button == RIGHT_BUTTON ? 'E' : 'D'), d1, d2);
return dupstr(buf);
} else if (IS_CURSOR_MOVE(button)) {
ui->cur_visible = true;
move_cursor(button, &ui->cur_x, &ui->cur_y, 2*w-1, 2*h-1, false);
return UI_UPDATE;
return move_cursor(button, &ui->cur_x, &ui->cur_y, 2*w-1, 2*h-1, false,
&ui->cur_visible);
} else if (IS_CURSOR_SELECT(button)) {
int d1, d2;
if (!((ui->cur_x ^ ui->cur_y) & 1))
return NULL; /* must have exactly one dimension odd */
return MOVE_NO_EFFECT; /* must have exactly one dimension odd */
d1 = (ui->cur_y / 2) * w + (ui->cur_x / 2);
d2 = ((ui->cur_y+1) / 2) * w + ((ui->cur_x+1) / 2);
@ -2817,14 +2845,14 @@ static char *interpret_move(const game_state *state, game_ui *ui,
*/
if (button == CURSOR_SELECT2 &&
(state->grid[d1] != d1 || state->grid[d2] != d2))
return NULL;
return MOVE_NO_EFFECT;
sprintf(buf, "%c%d,%d", (int)(button == CURSOR_SELECT2 ? 'E' : 'D'), d1, d2);
return dupstr(buf);
} else if (isdigit(button)) {
int n = state->params.n, num = button - '0';
if (num > n) {
return NULL;
return MOVE_UNUSED;
} else if (ui->highlight_1 == num) {
ui->highlight_1 = -1;
} else if (ui->highlight_2 == num) {
@ -2834,12 +2862,12 @@ static char *interpret_move(const game_state *state, game_ui *ui,
} else if (ui->highlight_2 == -1) {
ui->highlight_2 = num;
} else {
return NULL;
return MOVE_NO_EFFECT;
}
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
return NULL;
return MOVE_UNUSED;
}
static game_state *execute_move(const game_state *state, const char *move)
@ -2865,7 +2893,8 @@ static game_state *execute_move(const game_state *state, const char *move)
move++;
} else if (move[0] == 'D' &&
sscanf(move+1, "%d,%d%n", &d1, &d2, &p) == 2 &&
d1 >= 0 && d1 < wh && d2 >= 0 && d2 < wh && d1 < d2) {
d1 >= 0 && d1 < wh && d2 >= 0 && d2 < wh && d1 < d2 &&
(d2 - d1 == 1 || d2 - d1 == w)) {
/*
* Toggle domino presence between d1 and d2.
@ -2933,7 +2962,8 @@ static game_state *execute_move(const game_state *state, const char *move)
} else if (move[0] == 'E' &&
sscanf(move+1, "%d,%d%n", &d1, &d2, &p) == 2 &&
d1 >= 0 && d1 < wh && d2 >= 0 && d2 < wh && d1 < d2 &&
ret->grid[d1] == d1 && ret->grid[d2] == d2) {
ret->grid[d1] == d1 && ret->grid[d2] == d2 &&
(d2 - d1 == 1 || d2 - d1 == w)) {
/*
* Toggle edge presence between d1 and d2.
@ -2998,7 +3028,7 @@ static game_state *execute_move(const game_state *state, const char *move)
*/
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
int n = params->n, w = n+2, h = n+1;
@ -3059,7 +3089,6 @@ static game_drawstate *game_new_drawstate(drawing *dr, const game_state *state)
struct game_drawstate *ds = snew(struct game_drawstate);
int i;
ds->started = false;
ds->w = state->w;
ds->h = state->h;
ds->visible = snewn(ds->w * ds->h, unsigned long);
@ -3225,14 +3254,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
int x, y, i;
unsigned char *used;
if (!ds->started) {
int pw, ph;
game_compute_size(&state->params, TILESIZE, &pw, &ph);
draw_rect(dr, 0, 0, pw, ph, COL_BACKGROUND);
draw_update(dr, 0, 0, pw, ph);
ds->started = true;
}
/*
* See how many dominoes of each type there are, so we can
* highlight clashes in red.
@ -3347,24 +3368,21 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
static void game_print_size(const game_params *params, const game_ui *ui,
float *x, float *y)
{
int pw, ph;
/*
* I'll use 6mm squares by default.
*/
game_compute_size(params, 600, &pw, &ph);
game_compute_size(params, 600, ui, &pw, &ph);
*x = pw / 100.0F;
*y = ph / 100.0F;
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
static void game_print(drawing *dr, const game_state *state, const game_ui *ui,
int tilesize)
{
int w = state->w, h = state->h;
int c, x, y;
@ -3421,12 +3439,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
NULL, NULL, /* get_prefs, set_prefs */
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILESIZE, game_compute_size, game_set_size,
@ -3440,7 +3460,7 @@ const struct game thegame = {
game_status,
true, false, game_print_size, game_print,
false, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

View file

@ -27,7 +27,11 @@
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -90,8 +94,8 @@ void draw_line(drawing *dr, int x1, int y1, int x2, int y2, int colour)
void draw_thick_line(drawing *dr, float thickness,
float x1, float y1, float x2, float y2, int colour)
{
if (thickness < 1.0)
thickness = 1.0;
if (thickness < 1.0F)
thickness = 1.0F;
if (dr->api->draw_thick_line) {
dr->api->draw_thick_line(dr->handle, thickness,
x1, y1, x2, y2, colour);
@ -101,8 +105,8 @@ void draw_thick_line(drawing *dr, float thickness,
* polygon rendering uses integer coordinates.
*/
float len = sqrt((x2 - x1)*(x2 - x1) + (y2 - y1)*(y2 - y1));
float tvhatx = (x2 - x1)/len * (thickness/2 - 0.2);
float tvhaty = (y2 - y1)/len * (thickness/2 - 0.2);
float tvhatx = (x2 - x1)/len * (thickness/2 - 0.2F);
float tvhaty = (y2 - y1)/len * (thickness/2 - 0.2F);
int p[8];
p[0] = x1 - tvhaty;
@ -117,7 +121,7 @@ void draw_thick_line(drawing *dr, float thickness,
}
}
void draw_polygon(drawing *dr, int *coords, int npoints,
void draw_polygon(drawing *dr, const int *coords, int npoints,
int fillcolour, int outlinecolour)
{
dr->api->draw_polygon(dr->handle, coords, npoints, fillcolour,

View file

@ -5,188 +5,301 @@
*/
#include <assert.h>
#include <limits.h>
#include <string.h>
#include "puzzles.h"
/*void print_dsf(int *dsf, int size)
#define DSF_INDEX_MASK (UINT_MAX >> 1)
#define DSF_FLAG_CANONICAL (UINT_MAX & ~(UINT_MAX >> 1))
#define DSF_MAX (DSF_INDEX_MASK + 1)
struct DSF {
/*
* Size of the dsf.
*/
size_t size;
/*
* Main array storing the data structure.
*
* If n is the canonical element of an equivalence class,
* parent_or_size[n] holds the number of elements in that class,
* bitwise-ORed with DSF_FLAG_CANONICAL.
*
* If n is not the canonical element, parent_or_size[n] holds the
* index of another element nearer to the root of the tree for
* that class.
*/
unsigned *parent_or_size;
/*
* Extra storage for flip tracking.
*
* If n is not a canonical element, flip[n] indicates whether the
* sense of this element is flipped relative to parent_or_size[n].
*
* If n is a canonical element, flip[n] is unused.
*/
unsigned char *flip;
/*
* Extra storage for minimal-element tracking.
*
* If n is a canonical element, min[n] holds the index of the
* smallest value in n's equivalence class.
*
* If n is not a canonical element, min[n] is unused.
*/
unsigned *min;
};
static DSF *dsf_new_internal(int size, bool flip, bool min)
{
int *printed_elements = snewn(size, int);
int *equal_elements = snewn(size, int);
int *inverse_elements = snewn(size, int);
int printed_count = 0, equal_count, inverse_count;
int i, n;
bool inverse;
DSF *dsf;
memset(printed_elements, -1, sizeof(int) * size);
assert(0 < size && size <= DSF_MAX && "Bad dsf size");
while (1) {
equal_count = 0;
inverse_count = 0;
for (i = 0; i < size; ++i) {
if (!memchr(printed_elements, i, sizeof(int) * size))
break;
}
if (i == size)
goto done;
dsf = snew(DSF);
dsf->size = size;
dsf->parent_or_size = snewn(size, unsigned);
dsf->flip = flip ? snewn(size, unsigned char) : NULL;
dsf->min = min ? snewn(size, unsigned) : NULL;
i = dsf_canonify(dsf, i);
dsf_reinit(dsf);
for (n = 0; n < size; ++n) {
if (edsf_canonify(dsf, n, &inverse) == i) {
if (inverse)
inverse_elements[inverse_count++] = n;
else
equal_elements[equal_count++] = n;
}
}
return dsf;
}
for (n = 0; n < equal_count; ++n) {
fprintf(stderr, "%d ", equal_elements[n]);
printed_elements[printed_count++] = equal_elements[n];
}
if (inverse_count) {
fprintf(stderr, "!= ");
for (n = 0; n < inverse_count; ++n) {
fprintf(stderr, "%d ", inverse_elements[n]);
printed_elements[printed_count++] = inverse_elements[n];
}
}
fprintf(stderr, "\n");
DSF *dsf_new(int size)
{
return dsf_new_internal(size, false, false);
}
DSF *dsf_new_flip(int size)
{
return dsf_new_internal(size, true, false);
}
DSF *dsf_new_min(int size)
{
return dsf_new_internal(size, false, true);
}
void dsf_reinit(DSF *dsf)
{
size_t i;
/* Every element starts as the root of an equivalence class of size 1 */
for (i = 0; i < dsf->size; i++)
dsf->parent_or_size[i] = DSF_FLAG_CANONICAL | 1;
/* If we're tracking minima then every element is also its own min */
if (dsf->min)
for (i = 0; i < dsf->size; i++)
dsf->min[i] = i;
/* No need to initialise dsf->flip, even if it exists, because
* only the entries for non-root elements are meaningful, and
* currently there are none. */
}
void dsf_copy(DSF *to, DSF *from)
{
assert(to->size == from->size && "Mismatch in dsf_copy");
memcpy(to->parent_or_size, from->parent_or_size,
to->size * sizeof(*to->parent_or_size));
if (to->flip) {
assert(from->flip && "Copying a non-flip dsf to a flip one");
memcpy(to->flip, from->flip, to->size * sizeof(*to->flip));
}
done:
sfree(printed_elements);
sfree(equal_elements);
sfree(inverse_elements);
}*/
void dsf_init(int *dsf, int size)
{
int i;
for (i = 0; i < size; i++) dsf[i] = 6;
/* Bottom bit of each element of this array stores whether that
* element is opposite to its parent, which starts off as
* false. Second bit of each element stores whether that element
* is the root of its tree or not. If it's not the root, the
* remaining 30 bits are the parent, otherwise the remaining 30
* bits are the number of elements in the tree. */
}
int *snew_dsf(int size)
{
int *ret;
ret = snewn(size, int);
dsf_init(ret, size);
/*print_dsf(ret, size); */
return ret;
}
int dsf_canonify(int *dsf, int index)
{
return edsf_canonify(dsf, index, NULL);
}
void dsf_merge(int *dsf, int v1, int v2)
{
edsf_merge(dsf, v1, v2, false);
}
int dsf_size(int *dsf, int index) {
return dsf[dsf_canonify(dsf, index)] >> 2;
}
int edsf_canonify(int *dsf, int index, bool *inverse_return)
{
int start_index = index, canonical_index;
bool inverse = false;
/* fprintf(stderr, "dsf = %p\n", dsf); */
/* fprintf(stderr, "Canonify %2d\n", index); */
assert(index >= 0);
/* Find the index of the canonical element of the 'equivalence class' of
* which start_index is a member, and figure out whether start_index is the
* same as or inverse to that. */
while ((dsf[index] & 2) == 0) {
inverse ^= (dsf[index] & 1);
index = dsf[index] >> 2;
/* fprintf(stderr, "index = %2d, ", index); */
/* fprintf(stderr, "inverse = %d\n", inverse); */
if (to->min) {
assert(from->min && "Copying a non-min dsf to a min one");
memcpy(to->min, from->min, to->size * sizeof(*to->min));
}
canonical_index = index;
}
if (inverse_return)
*inverse_return = inverse;
/* Update every member of this 'equivalence class' to point directly at the
* canonical member. */
index = start_index;
while (index != canonical_index) {
int nextindex = dsf[index] >> 2;
bool nextinverse = inverse ^ (dsf[index] & 1);
dsf[index] = (canonical_index << 2) | inverse;
inverse = nextinverse;
index = nextindex;
void dsf_free(DSF *dsf)
{
if (dsf) {
sfree(dsf->parent_or_size);
sfree(dsf->flip);
sfree(dsf->min);
sfree(dsf);
}
}
static inline size_t dsf_find_root(DSF *dsf, size_t n)
{
while (!(dsf->parent_or_size[n] & DSF_FLAG_CANONICAL))
n = dsf->parent_or_size[n];
return n;
}
static inline void dsf_path_compress(DSF *dsf, size_t n, size_t root)
{
while (!(dsf->parent_or_size[n] & DSF_FLAG_CANONICAL)) {
size_t prev = n;
n = dsf->parent_or_size[n];
dsf->parent_or_size[prev] = root;
}
assert(n == root);
}
int dsf_canonify(DSF *dsf, int n)
{
size_t root;
assert(0 <= n && n < dsf->size && "Overrun in dsf_canonify");
root = dsf_find_root(dsf, n);
dsf_path_compress(dsf, n, root);
return root;
}
void dsf_merge(DSF *dsf, int n1, int n2)
{
size_t r1, r2, s1, s2, root;
assert(0 <= n1 && n1 < dsf->size && "Overrun in dsf_merge");
assert(0 <= n2 && n2 < dsf->size && "Overrun in dsf_merge");
assert(!dsf->flip && "dsf_merge on a flip dsf");
/* Find the root elements */
r1 = dsf_find_root(dsf, n1);
r2 = dsf_find_root(dsf, n2);
if (r1 == r2) {
/* Classes are already the same, so we have a common root */
root = r1;
} else {
/* Classes must be merged */
/* Decide which one to use as the overall root, based on size */
s1 = dsf->parent_or_size[r1] & DSF_INDEX_MASK;
s2 = dsf->parent_or_size[r2] & DSF_INDEX_MASK;
if (s1 > s2) {
dsf->parent_or_size[r2] = root = r1;
} else {
dsf->parent_or_size[r1] = root = r2;
}
dsf->parent_or_size[root] = (s1 + s2) | DSF_FLAG_CANONICAL;
if (dsf->min) {
/* Update the min of the merged class */
unsigned m1 = dsf->min[r1], m2 = dsf->min[r2];
dsf->min[root] = m1 < m2 ? m1 : m2;
}
}
assert(!inverse);
/* fprintf(stderr, "Return %2d\n", index); */
return index;
/* Path-compress both paths from n1 and n2 so they point at the new root */
dsf_path_compress(dsf, n1, root);
dsf_path_compress(dsf, n2, root);
}
void edsf_merge(int *dsf, int v1, int v2, bool inverse)
bool dsf_equivalent(DSF *dsf, int n1, int n2)
{
bool i1, i2;
return dsf_canonify(dsf, n1) == dsf_canonify(dsf, n2);
}
/* fprintf(stderr, "dsf = %p\n", dsf); */
/* fprintf(stderr, "Merge [%2d,%2d], %d\n", v1, v2, inverse); */
int dsf_size(DSF *dsf, int n)
{
size_t root = dsf_canonify(dsf, n);
return dsf->parent_or_size[root] & DSF_INDEX_MASK;
}
v1 = edsf_canonify(dsf, v1, &i1);
assert(dsf[v1] & 2);
inverse ^= i1;
v2 = edsf_canonify(dsf, v2, &i2);
assert(dsf[v2] & 2);
inverse ^= i2;
static inline size_t dsf_find_root_flip(DSF *dsf, size_t n, unsigned *flip)
{
*flip = 0;
while (!(dsf->parent_or_size[n] & DSF_FLAG_CANONICAL)) {
*flip ^= dsf->flip[n];
n = dsf->parent_or_size[n];
}
return n;
}
/* fprintf(stderr, "Doing [%2d,%2d], %d\n", v1, v2, inverse); */
static inline void dsf_path_compress_flip(DSF *dsf, size_t n, size_t root,
unsigned flip)
{
while (!(dsf->parent_or_size[n] & DSF_FLAG_CANONICAL)) {
size_t prev = n;
unsigned flip_prev = flip;
n = dsf->parent_or_size[n];
flip ^= dsf->flip[prev];
dsf->flip[prev] = flip_prev;
dsf->parent_or_size[prev] = root;
}
assert(n == root);
}
if (v1 == v2)
assert(!inverse);
else {
/*
* We always make the smaller of v1 and v2 the new canonical
* element. This ensures that the canonical element of any
* class in this structure is always the first element in
* it. 'Keen' depends critically on this property.
*
* (Jonas Koelker previously had this code choosing which
* way round to connect the trees by examining the sizes of
* the classes being merged, so that the root of the
* larger-sized class became the new root. This gives better
* asymptotic performance, but I've changed it to do it this
* way because I like having a deterministic canonical
* element.)
*/
if (v1 > v2) {
int v3 = v1;
v1 = v2;
v2 = v3;
}
dsf[v1] += (dsf[v2] >> 2) << 2;
dsf[v2] = (v1 << 2) | inverse;
int dsf_canonify_flip(DSF *dsf, int n, bool *inverse)
{
size_t root;
unsigned flip;
assert(0 <= n && n < dsf->size && "Overrun in dsf_canonify_flip");
assert(dsf->flip && "dsf_canonify_flip on a non-flip dsf");
root = dsf_find_root_flip(dsf, n, &flip);
dsf_path_compress_flip(dsf, n, root, flip);
*inverse = flip;
return root;
}
void dsf_merge_flip(DSF *dsf, int n1, int n2, bool inverse)
{
size_t r1, r2, s1, s2, root;
unsigned f1, f2;
assert(0 <= n1 && n1 < dsf->size && "Overrun in dsf_merge_flip");
assert(0 <= n2 && n2 < dsf->size && "Overrun in dsf_merge_flip");
assert(dsf->flip && "dsf_merge_flip on a non-flip dsf");
/* Find the root elements */
r1 = dsf_find_root_flip(dsf, n1, &f1);
r2 = dsf_find_root_flip(dsf, n2, &f2);
if (r1 == r2) {
/* Classes are already the same, so we have a common root */
assert((f1 ^ f2 ^ inverse) == 0 && "Inconsistency in dsf_merge_flip");
root = r1;
} else {
/* Classes must be merged */
/* Decide which one to use as the overall root, based on size */
s1 = dsf->parent_or_size[r1] & DSF_INDEX_MASK;
s2 = dsf->parent_or_size[r2] & DSF_INDEX_MASK;
if (s1 > s2) {
dsf->parent_or_size[r2] = root = r1;
dsf->flip[r2] = f1 ^ f2 ^ inverse;
f2 ^= dsf->flip[r2];
} else {
root = r2;
dsf->parent_or_size[r1] = root = r2;
dsf->flip[r1] = f1 ^ f2 ^ inverse;
f1 ^= dsf->flip[r1];
}
dsf->parent_or_size[root] = (s1 + s2) | DSF_FLAG_CANONICAL;
if (dsf->min) {
/* Update the min of the merged class */
unsigned m1 = dsf->min[r1], m2 = dsf->min[r2];
dsf->min[root] = m1 < m2 ? m1 : m2;
}
}
v2 = edsf_canonify(dsf, v2, &i2);
assert(v2 == v1);
assert(i2 == inverse);
/* fprintf(stderr, "dsf[%2d] = %2d\n", v2, dsf[v2]); */
/* Path-compress both paths from n1 and n2 so they point at the new root */
dsf_path_compress_flip(dsf, n1, root, f1);
dsf_path_compress_flip(dsf, n2, root, f2);
}
int dsf_minimal(DSF *dsf, int n)
{
size_t root;
assert(dsf->min && "dsf_minimal on a non-min dsf");
root = dsf_canonify(dsf, n);
return dsf->min[root];
}

View file

@ -12,19 +12,8 @@
/*
* Further thoughts on possible enhancements:
*
* - I think it might be feasible to have these JS puzzles permit
* loading and saving games in disk files. Saving would be done by
* constructing a data: URI encapsulating the save file, and then
* telling the browser to visit that URI with the effect that it
* would naturally pop up a 'where would you like to save this'
* dialog box. Loading, more or less similarly, might be feasible
* by using the DOM File API to ask the user to select a file and
* permit us to see its contents.
*
* - I should think about whether these webified puzzles can support
* touchscreen-based tablet browsers (assuming there are any that
* can cope with the reasonably modern JS and run it fast enough to
* be worthwhile).
* touchscreen-based tablet browsers.
*
* - think about making use of localStorage. It might be useful to
* let the user save games into there as an alternative to disk
@ -32,11 +21,7 @@
* out of your browser to (e.g.) email to me as a bug report, but
* for just resuming a game you were in the middle of, you'd
* probably rather have a nice simple 'quick save' and 'quick load'
* button pair. Also, that might be a useful place to store
* preferences, if I ever get round to writing a preferences UI.
*
* - some CSS to make the button bar and configuration dialogs a
* little less ugly would probably not go amiss.
* button pair.
*
* - this is a downright silly idea, but it does occur to me that if
* I were to write a PDF output driver for the Puzzles printing
@ -57,6 +42,8 @@
/*
* Extern references to Javascript functions provided in emcclib.js.
*/
extern void js_init_puzzle(void);
extern void js_post_init(void);
extern void js_debug(const char *);
extern void js_error_box(const char *message);
extern void js_remove_type_dropdown(void);
@ -65,37 +52,39 @@ extern void js_add_preset(int menuid, const char *name, int value);
extern int js_add_preset_submenu(int menuid, const char *name);
extern int js_get_selected_preset(void);
extern void js_select_preset(int n);
extern void js_default_colour(float *output);
extern void js_set_colour(int colour_number, const char *colour_string);
extern void js_get_date_64(unsigned *p);
extern void js_update_permalinks(const char *desc, const char *seed);
extern void js_enable_undo_redo(bool undo, bool redo);
extern void js_activate_timer();
extern void js_deactivate_timer();
extern void js_update_key_labels(const char *lsk, const char *csk);
extern void js_activate_timer(void);
extern void js_deactivate_timer(void);
extern void js_canvas_start_draw(void);
extern void js_canvas_draw_update(int x, int y, int w, int h);
extern void js_canvas_end_draw(void);
extern void js_canvas_draw_rect(int x, int y, int w, int h,
const char *colour);
extern void js_canvas_draw_rect(int x, int y, int w, int h, int colour);
extern void js_canvas_clip_rect(int x, int y, int w, int h);
extern void js_canvas_unclip(void);
extern void js_canvas_draw_line(float x1, float y1, float x2, float y2,
int width, const char *colour);
extern void js_canvas_draw_poly(int *points, int npoints,
const char *fillcolour,
const char *outlinecolour);
int width, int colour);
extern void js_canvas_draw_poly(const int *points, int npoints,
int fillcolour, int outlinecolour);
extern void js_canvas_draw_circle(int x, int y, int r,
const char *fillcolour,
const char *outlinecolour);
extern int js_canvas_find_font_midpoint(int height, const char *fontptr);
int fillcolour, int outlinecolour);
extern int js_canvas_find_font_midpoint(int height, bool monospaced);
extern void js_canvas_draw_text(int x, int y, int halign,
const char *colptr, const char *fontptr,
const char *text);
int colour, int height,
bool monospaced, const char *text);
extern int js_canvas_new_blitter(int w, int h);
extern void js_canvas_free_blitter(int id);
extern void js_canvas_copy_to_blitter(int id, int x, int y, int w, int h);
extern void js_canvas_copy_from_blitter(int id, int x, int y, int w, int h);
extern void js_canvas_make_statusbar(void);
extern void js_canvas_remove_statusbar(void);
extern void js_canvas_set_statusbar(const char *text);
extern bool js_canvas_get_preferred_size(int *wp, int *hp);
extern void js_canvas_set_size(int w, int h);
extern double js_get_device_pixel_ratio(void);
extern void js_dialog_init(const char *title);
extern void js_dialog_string(int i, const char *title, const char *initvalue);
@ -106,6 +95,38 @@ extern void js_dialog_launch(void);
extern void js_dialog_cleanup(void);
extern void js_focus_canvas(void);
extern bool js_savefile_read(void *buf, int len);
extern void js_save_prefs(const char *);
extern void js_load_prefs(midend *);
/*
* These functions are called from JavaScript, so their prototypes
* need to be kept in sync with emccpre.js.
*/
bool mouseup(int x, int y, int button);
bool mousedown(int x, int y, int button);
bool mousemove(int x, int y, int buttons);
bool key(int keycode, const char *key, const char *chr, int location,
bool shift, bool ctrl);
void timer_callback(double tplus);
void command(int n);
char *get_text_format(void);
void free_save_file(char *buffer);
char *get_save_file(void);
void free_save_file(char *buffer);
void load_game(void);
void dlg_return_sval(int index, const char *val);
void dlg_return_ival(int index, int val);
void resize_puzzle(int w, int h);
void restore_puzzle_size(int w, int h);
void rescale_puzzle(void);
/*
* Internal forward references.
*/
static void save_prefs(midend *me);
/*
* Call JS to get the date, and use that to initialise our random
* number generator to invent the first game seed.
@ -136,6 +157,7 @@ void fatal(const char *fmt, ...)
js_error_box(buf);
}
#ifdef DEBUGGING
void debug_printf(const char *fmt, ...)
{
char buf[512];
@ -145,33 +167,28 @@ void debug_printf(const char *fmt, ...)
va_end(ap);
js_debug(buf);
}
#endif
/*
* Helper function that makes it easy to test strings that might be
* NULL.
*/
int strnullcmp(const char *a, const char *b)
static int strnullcmp(const char *a, const char *b)
{
if (a == NULL || b == NULL)
return a != NULL ? +1 : b != NULL ? -1 : 0;
return strcmp(a, b);
}
/*
* HTMLish names for the colours allocated by the puzzle.
*/
char **colour_strings;
int ncolours;
/*
* The global midend object.
*/
midend *me;
static midend *me;
/* ----------------------------------------------------------------------
* Timing functions.
*/
bool timer_active = false;
static bool timer_active = false;
void deactivate_timer(frontend *fe)
{
js_deactivate_timer();
@ -196,21 +213,33 @@ void timer_callback(double tplus)
*/
static int canvas_w, canvas_h;
/* Called when we resize as a result of changing puzzle settings */
/*
* Called when we resize as a result of changing puzzle settings
* or device pixel ratio.
*/
static void resize(void)
{
int w, h;
bool user;
w = h = INT_MAX;
midend_size(me, &w, &h, false);
user = js_canvas_get_preferred_size(&w, &h);
midend_size(me, &w, &h, user, js_get_device_pixel_ratio());
js_canvas_set_size(w, h);
canvas_w = w;
canvas_h = h;
}
/* Called from JS when the device pixel ratio changes */
void rescale_puzzle(void)
{
resize();
midend_force_redraw(me);
}
/* Called from JS when the user uses the resize handle */
void resize_puzzle(int w, int h)
{
midend_size(me, &w, &h, true);
midend_size(me, &w, &h, true, js_get_device_pixel_ratio());
if (canvas_w != w || canvas_h != h) {
js_canvas_set_size(w, h);
canvas_w = w;
@ -228,12 +257,13 @@ void restore_puzzle_size(int w, int h)
}
/*
* HTML doesn't give us a default frontend colour of its own, so we
* just make up a lightish grey ourselves.
* Try to extract a background colour from the canvas's CSS. In case
* it doesn't have a usable one, make up a lightish grey ourselves.
*/
void frontend_default_colour(frontend *fe, float *output)
{
output[0] = output[1] = output[2] = 0.9F;
js_default_colour(output);
}
/*
@ -241,60 +271,85 @@ void frontend_default_colour(frontend *fe, float *output)
* and redo buttons get properly enabled and disabled after every move
* or undo or new-game event.
*/
static void update_undo_redo(void)
static void post_move(void)
{
js_enable_undo_redo(midend_can_undo(me), midend_can_redo(me));
js_update_key_labels(midend_current_key_label(me, CURSOR_SELECT2),
midend_current_key_label(me, CURSOR_SELECT));
}
/*
* Mouse event handlers called from JS.
*/
void mousedown(int x, int y, int button)
bool mousedown(int x, int y, int button)
{
bool handled;
button = (button == 0 ? LEFT_BUTTON :
button == 1 ? MIDDLE_BUTTON : RIGHT_BUTTON);
midend_process_key(me, x, y, button);
update_undo_redo();
handled = midend_process_key(me, x, y, button) != PKR_UNUSED;
post_move();
return handled;
}
void mouseup(int x, int y, int button)
bool mouseup(int x, int y, int button)
{
bool handled;
button = (button == 0 ? LEFT_RELEASE :
button == 1 ? MIDDLE_RELEASE : RIGHT_RELEASE);
midend_process_key(me, x, y, button);
update_undo_redo();
handled = midend_process_key(me, x, y, button) != PKR_UNUSED;
post_move();
return handled;
}
void mousemove(int x, int y, int buttons)
bool mousemove(int x, int y, int buttons)
{
int button = (buttons & 2 ? MIDDLE_DRAG :
buttons & 4 ? RIGHT_DRAG : LEFT_DRAG);
midend_process_key(me, x, y, button);
update_undo_redo();
bool handled;
handled = midend_process_key(me, x, y, button) != PKR_UNUSED;
post_move();
return handled;
}
/*
* Keyboard handler called from JS.
* Keyboard handler called from JS. Returns true if the key was
* handled and hence the keydown event should be cancelled.
*/
void key(int keycode, int charcode, const char *key, const char *chr,
bool key(int keycode, const char *key, const char *chr, int location,
bool shift, bool ctrl)
{
/* Key location constants from JavaScript. */
#define DOM_KEY_LOCATION_STANDARD 0
#define DOM_KEY_LOCATION_LEFT 1
#define DOM_KEY_LOCATION_RIGHT 2
#define DOM_KEY_LOCATION_NUMPAD 3
int keyevent = -1;
int process_key_result;
if (!strnullcmp(key, "Backspace") || !strnullcmp(key, "Del") ||
keycode == 8 || keycode == 46) {
if (!strnullcmp(key, "Backspace") || !strnullcmp(key, "Delete") ||
!strnullcmp(key, "Del"))
keyevent = 127; /* Backspace / Delete */
} else if (!strnullcmp(key, "Enter") || keycode == 13) {
else if (!strnullcmp(key, "Enter"))
keyevent = 13; /* return */
} else if (!strnullcmp(key, "Left") || keycode == 37) {
else if (!strnullcmp(key, "Spacebar"))
keyevent = ' ';
else if (!strnullcmp(key, "Escape"))
keyevent = 27;
else if (!strnullcmp(key, "ArrowLeft") || !strnullcmp(key, "Left"))
keyevent = CURSOR_LEFT;
} else if (!strnullcmp(key, "Up") || keycode == 38) {
else if (!strnullcmp(key, "ArrowUp") || !strnullcmp(key, "Up"))
keyevent = CURSOR_UP;
} else if (!strnullcmp(key, "Right") || keycode == 39) {
else if (!strnullcmp(key, "ArrowRight") || !strnullcmp(key, "Right"))
keyevent = CURSOR_RIGHT;
} else if (!strnullcmp(key, "Down") || keycode == 40) {
else if (!strnullcmp(key, "ArrowDown") || !strnullcmp(key, "Down"))
keyevent = CURSOR_DOWN;
} else if (!strnullcmp(key, "End") || keycode == 35) {
else if (!strnullcmp(key, "SoftLeft"))
/* Left soft key on KaiOS. */
keyevent = CURSOR_SELECT2;
else if (!strnullcmp(key, "End"))
/*
* We interpret Home, End, PgUp and PgDn as numeric keypad
* controls regardless of whether they're the ones on the
@ -304,40 +359,73 @@ void key(int keycode, int charcode, const char *key, const char *chr,
* puzzles like Cube and Inertia.
*/
keyevent = MOD_NUM_KEYPAD | '1';
} else if (!strnullcmp(key, "PageDown") || keycode==34) {
else if (!strnullcmp(key, "PageDown"))
keyevent = MOD_NUM_KEYPAD | '3';
} else if (!strnullcmp(key, "Home") || keycode==36) {
else if (!strnullcmp(key, "Home"))
keyevent = MOD_NUM_KEYPAD | '7';
} else if (!strnullcmp(key, "PageUp") || keycode==33) {
else if (!strnullcmp(key, "PageUp"))
keyevent = MOD_NUM_KEYPAD | '9';
} else if (shift && ctrl && (keycode & 0x1F) == 26) {
else if (shift && ctrl && (!strnullcmp(key, "Z") || !strnullcmp(key, "z")))
keyevent = UI_REDO;
} else if (chr && chr[0] && !chr[1]) {
else if (key && (unsigned char)key[0] < 0x80 && key[1] == '\0')
/* Key generating a single ASCII character. */
keyevent = key[0];
/*
* In modern browsers (since about 2017), all keys that Puzzles
* cares about should be matched by one of the clauses above. The
* code below that checks keycode and chr should be relavent only
* in older browsers.
*/
else if (keycode == 8 || keycode == 46)
keyevent = 127; /* Backspace / Delete */
else if (keycode == 13)
keyevent = 13; /* return */
else if (keycode == 37)
keyevent = CURSOR_LEFT;
else if (keycode == 38)
keyevent = CURSOR_UP;
else if (keycode == 39)
keyevent = CURSOR_RIGHT;
else if (keycode == 40)
keyevent = CURSOR_DOWN;
else if (keycode == 35)
keyevent = MOD_NUM_KEYPAD | '1';
else if (keycode == 34)
keyevent = MOD_NUM_KEYPAD | '3';
else if (keycode == 36)
keyevent = MOD_NUM_KEYPAD | '7';
else if (keycode == 33)
keyevent = MOD_NUM_KEYPAD | '9';
else if (shift && ctrl && (keycode & 0x1F) == 26)
keyevent = UI_REDO;
else if (chr && chr[0] && !chr[1])
keyevent = chr[0] & 0xFF;
} else if (keycode >= 96 && keycode < 106) {
else if (keycode >= 96 && keycode < 106)
keyevent = MOD_NUM_KEYPAD | ('0' + keycode - 96);
} else if (keycode >= 65 && keycode <= 90) {
else if (keycode >= 65 && keycode <= 90)
keyevent = keycode + (shift ? 0 : 32);
} else if (keycode >= 48 && keycode <= 57) {
else if (keycode >= 48 && keycode <= 57)
keyevent = keycode;
} else if (keycode == 32) { /* space / CURSOR_SELECT2 */
else if (keycode == 32) /* space / CURSOR_SELECT2 */
keyevent = keycode;
}
if (keyevent >= 0) {
if (shift && (keyevent >= 0x100 && !IS_UI_FAKE_KEY(keyevent)))
keyevent |= MOD_SHFT;
if (shift) keyevent |= MOD_SHFT;
if (ctrl) keyevent |= MOD_CTRL;
if (location == DOM_KEY_LOCATION_NUMPAD) keyevent |= MOD_NUM_KEYPAD;
if (ctrl && !IS_UI_FAKE_KEY(keyevent)) {
if (keyevent >= 0x100)
keyevent |= MOD_CTRL;
else
keyevent &= 0x1F;
}
midend_process_key(me, 0, 0, keyevent);
update_undo_redo();
process_key_result = midend_process_key(me, 0, 0, keyevent);
post_move();
/*
* Treat Backspace specially because that's expected on KaiOS.
* https://developer.kaiostech.com/docs/design-guide/key
*/
if (process_key_result == PKR_NO_EFFECT &&
!strnullcmp(key, "Backspace"))
return false;
return process_key_result != PKR_UNUSED;
}
return false; /* Event not handled, because we don't even recognise it. */
}
/*
@ -387,14 +475,10 @@ static void js_draw_text(void *handle, int x, int y, int fonttype,
int fontsize, int align, int colour,
const char *text)
{
char fontstyle[80];
int halign;
sprintf(fontstyle, "%dpx %s", fontsize,
fonttype == FONT_FIXED ? "monospace" : "sans-serif");
if (align & ALIGN_VCENTRE)
y += js_canvas_find_font_midpoint(fontsize, fontstyle);
y += js_canvas_find_font_midpoint(fontsize, fonttype == FONT_FIXED);
if (align & ALIGN_HCENTRE)
halign = 1;
@ -403,41 +487,38 @@ static void js_draw_text(void *handle, int x, int y, int fonttype,
else
halign = 0;
js_canvas_draw_text(x, y, halign, colour_strings[colour], fontstyle, text);
js_canvas_draw_text(x, y, halign, colour,
fontsize, fonttype == FONT_FIXED, text);
}
static void js_draw_rect(void *handle, int x, int y, int w, int h, int colour)
{
js_canvas_draw_rect(x, y, w, h, colour_strings[colour]);
js_canvas_draw_rect(x, y, w, h, colour);
}
static void js_draw_line(void *handle, int x1, int y1, int x2, int y2,
int colour)
{
js_canvas_draw_line(x1, y1, x2, y2, 1, colour_strings[colour]);
js_canvas_draw_line(x1, y1, x2, y2, 1, colour);
}
static void js_draw_thick_line(void *handle, float thickness,
float x1, float y1, float x2, float y2,
int colour)
{
js_canvas_draw_line(x1, y1, x2, y2, thickness, colour_strings[colour]);
js_canvas_draw_line(x1, y1, x2, y2, thickness, colour);
}
static void js_draw_poly(void *handle, int *coords, int npoints,
static void js_draw_poly(void *handle, const int *coords, int npoints,
int fillcolour, int outlinecolour)
{
js_canvas_draw_poly(coords, npoints,
fillcolour >= 0 ? colour_strings[fillcolour] : NULL,
colour_strings[outlinecolour]);
js_canvas_draw_poly(coords, npoints, fillcolour, outlinecolour);
}
static void js_draw_circle(void *handle, int cx, int cy, int radius,
int fillcolour, int outlinecolour)
{
js_canvas_draw_circle(cx, cy, radius,
fillcolour >= 0 ? colour_strings[fillcolour] : NULL,
colour_strings[outlinecolour]);
js_canvas_draw_circle(cx, cy, radius, fillcolour, outlinecolour);
}
struct blitter {
@ -527,7 +608,7 @@ static char *js_text_fallback(void *handle, const char *const *strings,
return dupstr(strings[0]); /* Emscripten has no trouble with UTF-8 */
}
const struct drawing_api js_drawing = {
static const struct drawing_api js_drawing = {
js_draw_text,
js_draw_rect,
js_draw_line,
@ -554,9 +635,9 @@ const struct drawing_api js_drawing = {
*/
static game_params **presets;
static int npresets;
bool have_presets_dropdown;
static bool have_presets_dropdown;
void populate_js_preset_menu(int menuid, struct preset_menu *menu)
static void populate_js_preset_menu(int menuid, struct preset_menu *menu)
{
int i;
for (i = 0; i < menu->n_entries; i++) {
@ -571,7 +652,7 @@ void populate_js_preset_menu(int menuid, struct preset_menu *menu)
}
}
void select_appropriate_preset(void)
static void select_appropriate_preset(void)
{
if (have_presets_dropdown) {
int preset = midend_which_preset(me);
@ -665,10 +746,20 @@ static void cfg_end(bool use_results)
* open for the user to adjust them and try again.
*/
js_error_box(err);
} else if (cfg_which == CFG_PREFS) {
/*
* Acceptable settings for user preferences: enact them
* without blowing away the current game.
*/
resize();
midend_redraw(me);
free_cfg(cfg);
js_dialog_cleanup();
save_prefs(me);
} else {
/*
* New settings are fine; start a new game and close the
* dialog.
* Acceptable settings for the remaining configuration
* types: start a new game and close the dialog.
*/
select_appropriate_preset();
midend_new_game(me);
@ -686,10 +777,7 @@ static void cfg_end(bool use_results)
* select Custom from the list, but change your mind and hit
* Esc. The Custom option will now still be selected in the
* list, whereas obviously it should show the preset you still
* _actually_ have selected. Worse still, it'll be the visible
* rather than invisible Custom option - see the comment in
* js_add_preset in emcclib.js - so you won't even be able to
* select Custom without a faffy workaround.)
* _actually_ have selected.)
*/
select_appropriate_preset();
@ -731,7 +819,7 @@ void command(int n)
midend_new_game(me);
resize();
midend_redraw(me);
update_undo_redo();
post_move();
js_focus_canvas();
select_appropriate_preset();
}
@ -739,30 +827,30 @@ void command(int n)
break;
case 3: /* OK clicked in a config box */
cfg_end(true);
update_undo_redo();
post_move();
break;
case 4: /* Cancel clicked in a config box */
cfg_end(false);
update_undo_redo();
post_move();
break;
case 5: /* New Game */
midend_process_key(me, 0, 0, UI_NEWGAME);
update_undo_redo();
post_move();
js_focus_canvas();
break;
case 6: /* Restart */
midend_restart_game(me);
update_undo_redo();
post_move();
js_focus_canvas();
break;
case 7: /* Undo */
midend_process_key(me, 0, 0, UI_UNDO);
update_undo_redo();
post_move();
js_focus_canvas();
break;
case 8: /* Redo */
midend_process_key(me, 0, 0, UI_REDO);
update_undo_redo();
post_move();
js_focus_canvas();
break;
case 9: /* Solve */
@ -771,12 +859,25 @@ void command(int n)
if (msg)
js_error_box(msg);
}
update_undo_redo();
post_move();
js_focus_canvas();
break;
case 10: /* user preferences */
cfg_start(CFG_PREFS);
break;
}
}
char *get_text_format(void)
{
return midend_text_format(me);
}
void free_text_format(char *buffer)
{
sfree(buffer);
}
/* ----------------------------------------------------------------------
* Called from JS to prepare a save-game file, and free one after it's
* been used.
@ -824,30 +925,20 @@ void free_save_file(char *buffer)
sfree(buffer);
}
struct savefile_read_ctx {
const char *buffer;
int len_remaining;
};
static bool savefile_read(void *vctx, void *buf, int len)
{
struct savefile_read_ctx *ctx = (struct savefile_read_ctx *)vctx;
if (ctx->len_remaining < len)
return false;
memcpy(buf, ctx->buffer, len);
ctx->len_remaining -= len;
ctx->buffer += len;
return true;
return js_savefile_read(buf, len);
}
void load_game(const char *buffer, int len)
void load_game(void)
{
struct savefile_read_ctx ctx;
const char *err;
ctx.buffer = buffer;
ctx.len_remaining = len;
err = midend_deserialise(me, savefile_read, &ctx);
/*
* savefile_read_callback in JavaScript was set up by our caller
* as a closure that knows what file we're loading.
*/
err = midend_deserialise(me, savefile_read, NULL);
if (err) {
js_error_box(err);
@ -855,9 +946,69 @@ void load_game(const char *buffer, int len)
select_appropriate_preset();
resize();
midend_redraw(me);
update_permalinks();
post_move();
}
}
/* ----------------------------------------------------------------------
* Functions to load and save preferences, calling out to JS to access
* the appropriate localStorage slot.
*/
static void save_prefs(midend *me)
{
struct savefile_write_ctx ctx;
size_t size;
/* First pass, to count up the size */
ctx.buffer = NULL;
ctx.pos = 0;
midend_save_prefs(me, savefile_write, &ctx);
size = ctx.pos;
/* Second pass, to actually write out the data. As with
* get_save_file, we append a terminating \0. */
ctx.buffer = snewn(size+1, char);
ctx.pos = 0;
midend_save_prefs(me, savefile_write, &ctx);
assert(ctx.pos == size);
ctx.buffer[ctx.pos] = '\0';
js_save_prefs(ctx.buffer);
sfree(ctx.buffer);
}
struct prefs_read_ctx {
const char *buffer;
size_t pos, len;
};
static bool prefs_read(void *vctx, void *buf, int len)
{
struct prefs_read_ctx *ctx = (struct prefs_read_ctx *)vctx;
if (len < 0)
return false;
if (ctx->len - ctx->pos < len)
return false;
memcpy(buf, ctx->buffer + ctx->pos, len);
ctx->pos += len;
return true;
}
void prefs_load_callback(midend *me, const char *prefs)
{
struct prefs_read_ctx ctx;
ctx.buffer = prefs;
ctx.len = strlen(prefs);
ctx.pos = 0;
midend_load_prefs(me, prefs_read, &ctx);
}
/* ----------------------------------------------------------------------
* Setup function called at page load time. It's called main() because
* that's the most convenient thing in Emscripten, but it's not main()
@ -870,12 +1021,18 @@ int main(int argc, char **argv)
{
const char *param_err;
float *colours;
int i;
int i, ncolours;
/*
* Initialise JavaScript event handlers.
*/
js_init_puzzle();
/*
* Instantiate a midend.
*/
me = midend_new(NULL, &thegame, &js_drawing, NULL);
js_load_prefs(me);
/*
* Chuck in the HTML fragment ID if we have one (trimming the
@ -896,10 +1053,10 @@ int main(int argc, char **argv)
resize();
/*
* Create a status bar, if needed.
* Remove the status bar, if not needed.
*/
if (midend_wants_statusbar(me))
js_canvas_make_statusbar();
if (!midend_wants_statusbar(me))
js_canvas_remove_statusbar();
/*
* Set up the game-type dropdown with presets and/or the Custom
@ -907,23 +1064,33 @@ int main(int argc, char **argv)
*/
{
struct preset_menu *menu = midend_get_presets(me, &npresets);
bool may_configure = false;
presets = snewn(npresets, game_params *);
for (i = 0; i < npresets; i++)
presets[i] = NULL;
populate_js_preset_menu(0, menu);
if (thegame.can_configure)
js_add_preset(0, "Custom", -1);
have_presets_dropdown = true;
/*
* Now ensure the appropriate element of the presets menu
* starts off selected, in case it isn't the first one in the
* list (e.g. Slant).
* Crude hack to allow the "Custom..." item to be hidden on
* KaiOS, where dialogs don't yet work.
*/
select_appropriate_preset();
if (thegame.can_configure && getenv_bool("PUZZLES_ALLOW_CUSTOM", true))
may_configure = true;
if (may_configure)
js_add_preset(0, "Custom...", -1);
have_presets_dropdown = npresets > 1 || may_configure;
if (have_presets_dropdown)
/*
* Now ensure the appropriate element of the presets menu
* starts off selected, in case it isn't the first one in the
* list (e.g. Slant).
*/
select_appropriate_preset();
else
js_remove_type_dropdown();
}
/*
@ -937,14 +1104,13 @@ int main(int argc, char **argv)
* hex ID strings.
*/
colours = midend_colours(me, &ncolours);
colour_strings = snewn(ncolours, char *);
for (i = 0; i < ncolours; i++) {
char col[40];
sprintf(col, "#%02x%02x%02x",
(unsigned)(0.5 + 255 * colours[i*3+0]),
(unsigned)(0.5 + 255 * colours[i*3+1]),
(unsigned)(0.5 + 255 * colours[i*3+2]));
colour_strings[i] = dupstr(col);
(unsigned)(0.5F + 255 * colours[i*3+0]),
(unsigned)(0.5F + 255 * colours[i*3+1]),
(unsigned)(0.5F + 255 * colours[i*3+2]));
js_set_colour(i, col);
}
/*
@ -960,7 +1126,7 @@ int main(int argc, char **argv)
*/
midend_redraw(me);
update_permalinks();
update_undo_redo();
post_move();
/*
* If we were given an erroneous game ID in argv[1], now's the
@ -971,6 +1137,11 @@ int main(int argc, char **argv)
if (param_err)
js_error_box(param_err);
/*
* Reveal the puzzle!
*/
js_post_init();
/*
* Done. Return to JS, and await callbacks!
*/

View file

@ -0,0 +1,128 @@
\A{thirdparty} Third-party software licences
\# This file should contain the copyright notices for third-party code
included in the Emscripten builds of Puzzles. To get a list of
relevant source files, you can build Puzzles with "-gsource-map" and
then do something like:
\# jq -r '.sources[]' *.map | sort -u
\# This file is based on a build of Git commit
2e48ce132e011e83517a9fc4905edcc8f9a5ef58 using Emscripten 3.1.35
\# system/lib/compiler-rt/lib/builtins/*
\# upstream/lib/clang/17/include/tgmath.h
\# These are under the Apache Licence v2.0 with LLVM Exceptions. The
LLVM Exceptions allow us not to mention them in binary distributions.
\# system/lib/dlmalloc.c
\# dlmalloc is in the public domain and so needs no acknowledgement.
The JavaScript and KaiOS versions of Puzzles incorporate some third
party software. Most of it is licensed under the \i{MIT licence} (see
\k{licence}) and requires the following \i{copyright} notices:
\quote{
\# system/lib/libc/emscripten_get_heap_size.c
\# system/lib/libc/emscripten_memcpy.c
\# system/lib/libc/emscripten_syscall_stubs.c
\# system/lib/libc/wasi-helpers.c
\# system/lib/pthread/library_pthread_stub.c
\# system/lib/pthread/pthread_self_stub.c
\# system/lib/sbrk.c
\# These are parts of Emscripten and either refer explicitly to the
Emscripten LICENSE file or make no mention of a licence. LICENSE
allows use under the MIT licence and specifies this copyright notice:
Copyright (c) 2010-2014 Emscripten authors, see AUTHORS file.
\# cache/sysroot/include/math.h
\# system/lib/libc/musl/src/ctype/*
\# system/lib/libc/musl/src/env/*
\# system/lib/libc/musl/src/errno/*
\# system/lib/libc/musl/src/internal/atomic.h
\# system/lib/libc/musl/src/internal/floatscan.c
\# system/lib/libc/musl/src/internal/intscan.c
\# system/lib/libc/musl/src/internal/shgetc.c
\# system/lib/libc/musl/src/math/copysignl.c
\# system/lib/libc/musl/src/math/fabs.c
\# system/lib/libc/musl/src/math/fabsl.c
\# system/lib/libc/musl/src/math/floor.c
\# system/lib/libc/musl/src/math/fmodl.c
\# system/lib/libc/musl/src/math/__fpclassifyl.c
\# system/lib/libc/musl/src/math/frexp.c
\# system/lib/libc/musl/src/math/scalbn.c
\# system/lib/libc/musl/src/math/scalbnl.c
\# system/lib/libc/musl/src/math/sqrtf.c
\# system/lib/libc/musl/src/multibyte/*
\# system/lib/libc/musl/src/stdio/*
\# system/lib/libc/musl/src/stdlib/abs.c
\# system/lib/libc/musl/src/stdlib/atof.c
\# system/lib/libc/musl/src/stdlib/atoi.c
\# system/lib/libc/musl/src/stdlib/atol.c
\# system/lib/libc/musl/src/stdlib/labs.c
\# system/lib/libc/musl/src/stdlib/qsort_nr.c
\# system/lib/libc/musl/src/stdlib/strtod.c
\# system/lib/libc/musl/src/stdlib/strtol.c
\# system/lib/libc/musl/src/string/*
\# system/lib/libc/musl/src/unistd/getpid.c
\# These are parts of musl, which is licensed "as a whole" under the
MIT licence. These parts don't carry any licence notice themselves.
This is the copyright notice from musl's COPYRIGHT file, modified to
allow for non-Unicode targets:
Copyright \u00A9{(C)} 2005-2020 Rich Felker, et al.
\# system/lib/libc/musl/src/stdlib/qsort.c
\# This is part of musl, but has its own copyright notice and MIT
licence in its source file.
Copyright (C) 2011 by Valentin Ochs
}
Other incorporated software requires these notices:
\quote{
\# system/lib/libc/musl/src/math/acosf.c
\# system/lib/libc/musl/src/math/atan.c
\# system/lib/libc/musl/src/math/cos.c
\# system/lib/libc/musl/src/math/__cosdf.c
\# system/lib/libc/musl/src/math/cosf.c
\# system/lib/libc/musl/src/math/__rem_pio2f.c
\# system/lib/libc/musl/src/math/sin.c
\# system/lib/libc/musl/src/math/__sindf.c
\# system/lib/libc/musl/src/math/sinf.c
\# These are parts of musl with a SunPro copyright notice and licence.
Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
Developed at SunPro, a Sun Microsystems, Inc. business.
Permission to use, copy, modify, and distribute this
software is freely granted, provided that this notice
is preserved.
\# system/lib/libc/musl/src/math/atan2.c
\# system/lib/libc/musl/src/math/__cos.c
\# system/lib/libc/musl/src/math/__rem_pio2.c
\# system/lib/libc/musl/src/math/__rem_pio2_large.c
\# system/lib/libc/musl/src/math/__sin.c
\# These are parts of musl with a SunSoft copyright notice and licence.
Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
Developed at SunSoft, a Sun Microsystems, Inc. business.
Permission to use, copy, modify, and distribute this
software is freely granted, provided that this notice
is preserved.
}

View file

@ -1,22 +0,0 @@
# -*- makefile -*-
fifteen : [X] GTK COMMON fifteen fifteen-icon|no-icon
fifteen : [G] WINDOWS COMMON fifteen fifteen.res|noicon.res
fifteensolver : [U] fifteen[STANDALONE_SOLVER] STANDALONE
fifteensolver : [C] fifteen[STANDALONE_SOLVER] STANDALONE
ALL += fifteen[COMBINED]
!begin am gtk
GAMES += fifteen
!end
!begin >list.c
A(fifteen) \
!end
!begin >gamedesc.txt
fifteen:fifteen.exe:Fifteen:Sliding block puzzle:Slide the tiles around to arrange them into order.
!end

View file

@ -7,7 +7,12 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#include <limits.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -138,6 +143,8 @@ static const char *validate_params(const game_params *params, bool full)
{
if (params->w < 2 || params->h < 2)
return "Width and height must both be at least two";
if (params->w > INT_MAX / params->h)
return "Width times height must not be unreasonably large";
return NULL;
}
@ -156,6 +163,14 @@ static int perm_parity(int *perm, int n)
return ret;
}
static int is_completed(int *tiles, int n) {
int p;
for (p = 0; p < n; p++)
if (tiles[p] != (p < n-1 ? p+1 : 0))
return 0;
return 1;
}
static char *new_game_desc(const game_params *params, random_state *rs,
char **aux, bool interactive)
{
@ -171,81 +186,83 @@ static char *new_game_desc(const game_params *params, random_state *rs,
tiles = snewn(n, int);
used = snewn(n, bool);
for (i = 0; i < n; i++) {
tiles[i] = -1;
used[i] = false;
}
do {
for (i = 0; i < n; i++) {
tiles[i] = -1;
used[i] = false;
}
gap = random_upto(rs, n);
tiles[gap] = 0;
used[0] = true;
gap = random_upto(rs, n);
tiles[gap] = 0;
used[0] = true;
/*
* Place everything else except the last two tiles.
*/
for (x = 0, i = n-1; i > 2; i--) {
int k = random_upto(rs, i);
int j;
/*
* Place everything else except the last two tiles.
*/
for (x = 0, i = n - 1; i > 2; i--) {
int k = random_upto(rs, i);
int j;
for (j = 0; j < n; j++)
if (!used[j] && (k-- == 0))
break;
for (j = 0; j < n; j++)
if (!used[j] && (k-- == 0))
break;
assert(j < n && !used[j]);
used[j] = true;
assert(j < n && !used[j]);
used[j] = true;
while (tiles[x] >= 0)
x++;
assert(x < n);
tiles[x] = j;
}
/*
* Find the last two locations, and the last two pieces.
*/
while (tiles[x] >= 0)
x++;
assert(x < n);
tiles[x] = j;
}
/*
* Find the last two locations, and the last two pieces.
*/
while (tiles[x] >= 0)
x1 = x;
x++;
assert(x < n);
x1 = x;
x++;
while (tiles[x] >= 0)
x++;
assert(x < n);
x2 = x;
while (tiles[x] >= 0)
x++;
assert(x < n);
x2 = x;
for (i = 0; i < n; i++)
if (!used[i])
break;
p1 = i;
for (i = p1+1; i < n; i++)
if (!used[i])
break;
p2 = i;
for (i = 0; i < n; i++)
if (!used[i])
break;
p1 = i;
for (i = p1 + 1; i < n; i++)
if (!used[i])
break;
p2 = i;
/*
* Determine the required parity of the overall permutation.
* This is the XOR of:
*
* - The chessboard parity ((x^y)&1) of the gap square. The
* bottom right counts as even.
*
* - The parity of n. (The target permutation is 1,...,n-1,0
* rather than 0,...,n-1; this is a cyclic permutation of
* the starting point and hence is odd iff n is even.)
*/
parity = PARITY_P(params, gap);
/*
* Determine the required parity of the overall permutation.
* This is the XOR of:
*
* - The chessboard parity ((x^y)&1) of the gap square. The
* bottom right counts as even.
*
* - The parity of n. (The target permutation is 1,...,n-1,0
* rather than 0,...,n-1; this is a cyclic permutation of
* the starting point and hence is odd iff n is even.)
*/
parity = PARITY_P(params, gap);
/*
* Try the last two tiles one way round. If that fails, swap
* them.
*/
tiles[x1] = p1;
tiles[x2] = p2;
if (perm_parity(tiles, n) != parity) {
tiles[x1] = p2;
tiles[x2] = p1;
assert(perm_parity(tiles, n) == parity);
}
/*
* Try the last two tiles one way round. If that fails, swap
* them.
*/
tiles[x1] = p1;
tiles[x2] = p2;
if (perm_parity(tiles, n) != parity) {
tiles[x1] = p2;
tiles[x2] = p1;
assert(perm_parity(tiles, n) == parity);
}
} while (is_completed(tiles, n));
/*
* Now construct the game description, by describing the tile
@ -432,22 +449,68 @@ static char *game_text_format(const game_state *state)
return ret;
}
struct game_ui {
/*
* User-preference option: invert the direction of arrow-key
* control, so that the arrow on the key you press indicates in
* which direction you want the _space_ to move, rather than in
* which direction you want a tile to move to fill the space.
*/
bool invert_cursor;
};
static void legacy_prefs_override(struct game_ui *ui_out)
{
static bool initialised = false;
static int invert_cursor = -1;
if (!initialised) {
initialised = true;
invert_cursor = getenv_bool("FIFTEEN_INVERT_CURSOR", -1);
}
if (invert_cursor != -1)
ui_out->invert_cursor = invert_cursor;
}
static game_ui *new_ui(const game_state *state)
{
return NULL;
struct game_ui *ui = snew(struct game_ui);
ui->invert_cursor = false;
legacy_prefs_override(ui);
return ui;
}
static config_item *get_prefs(game_ui *ui)
{
config_item *ret;
ret = snewn(2, config_item);
ret[0].name = "Sense of arrow keys";
ret[0].kw = "arrow-semantics";
ret[0].type = C_CHOICES;
ret[0].u.choices.choicenames = ":Move the tile:Move the gap";
ret[0].u.choices.choicekws = ":tile:gap";
ret[0].u.choices.selected = ui->invert_cursor;
ret[1].name = NULL;
ret[1].type = C_END;
return ret;
}
static void set_prefs(game_ui *ui, const config_item *cfg)
{
ui->invert_cursor = cfg[0].u.choices.selected;
}
static void free_ui(game_ui *ui)
{
}
static char *encode_ui(const game_ui *ui)
{
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
sfree(ui);
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
@ -692,28 +755,23 @@ static char *interpret_move(const game_state *state, game_ui *ui,
int cy = Y(state, state->gap_pos), ny = cy;
char buf[80];
button &= ~MOD_MASK;
button = STRIP_BUTTON_MODIFIERS(button);
if (button == LEFT_BUTTON) {
nx = FROMCOORD(x);
ny = FROMCOORD(y);
if (nx < 0 || nx >= state->w || ny < 0 || ny >= state->h)
return NULL; /* out of bounds */
return MOVE_UNUSED; /* out of bounds */
} else if (IS_CURSOR_MOVE(button)) {
static int invert_cursor = -1;
if (invert_cursor == -1) {
char *env = getenv("FIFTEEN_INVERT_CURSOR");
invert_cursor = (env && (env[0] == 'y' || env[0] == 'Y'));
}
button = flip_cursor(button); /* the default */
if (invert_cursor)
if (ui->invert_cursor)
button = flip_cursor(button); /* undoes the first flip */
move_cursor(button, &nx, &ny, state->w, state->h, false);
move_cursor(button, &nx, &ny, state->w, state->h, false, NULL);
} else if ((button == 'h' || button == 'H') && !state->completed) {
if (!compute_hint(state, &nx, &ny))
return NULL; /* shouldn't happen, since ^^we^^checked^^ */
return MOVE_NO_EFFECT;/* shouldn't happen, since ^^we^^checked^^ */
} else
return NULL; /* no move */
return MOVE_UNUSED; /* no move */
/*
* Any click location should be equal to the gap location
@ -724,7 +782,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
return dupstr(buf);
}
return NULL;
return MOVE_NO_EFFECT;
}
static game_state *execute_move(const game_state *from, const char *move)
@ -786,11 +844,8 @@ static game_state *execute_move(const game_state *from, const char *move)
/*
* See if the game has been completed.
*/
if (!ret->completed) {
if (!ret->completed && is_completed(ret->tiles, ret->n)) {
ret->completed = ret->movecount;
for (p = 0; p < ret->n; p++)
if (ret->tiles[p] != (p < ret->n-1 ? p+1 : 0))
ret->completed = 0;
}
return ret;
@ -801,7 +856,7 @@ static game_state *execute_move(const game_state *from, const char *move)
*/
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Ick: fake up `ds->tilesize' for macro expansion purposes */
struct { int tilesize; } ads, *ds = &ads;
@ -904,13 +959,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
if (!ds->started) {
int coords[10];
draw_rect(dr, 0, 0,
TILE_SIZE * state->w + 2 * BORDER,
TILE_SIZE * state->h + 2 * BORDER, COL_BACKGROUND);
draw_update(dr, 0, 0,
TILE_SIZE * state->w + 2 * BORDER,
TILE_SIZE * state->h + 2 * BORDER);
/*
* Recessed area containing the whole puzzle.
*/
@ -1077,19 +1125,6 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
{
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
{
}
#ifdef COMBINED
#define thegame fifteen
#endif
@ -1111,12 +1146,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
get_prefs, set_prefs,
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
NULL, /* game_request_keys */
game_changed_state,
NULL, /* current_key_label */
interpret_move,
execute_move,
PREFERRED_TILE_SIZE, game_compute_size, game_set_size,
@ -1128,9 +1165,9 @@ const struct game thegame = {
game_flash_length,
game_get_cursor_location,
game_status,
false, false, game_print_size, game_print,
false, false, NULL, NULL, /* print_size, print */
true, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

View file

@ -1,24 +0,0 @@
# -*- makefile -*-
FILLING_EXTRA = dsf
fillingsolver : [U] filling[STANDALONE_SOLVER] FILLING_EXTRA STANDALONE
fillingsolver : [C] filling[STANDALONE_SOLVER] FILLING_EXTRA STANDALONE
filling : [X] GTK COMMON filling FILLING_EXTRA filling-icon|no-icon
filling : [G] WINDOWS COMMON filling FILLING_EXTRA filling.res|noicon.res
ALL += filling[COMBINED] FILLING_EXTRA
!begin am gtk
GAMES += filling
!end
!begin >list.c
A(filling) \
!end
!begin >gamedesc.txt
filling:filling.exe:Filling:Polyomino puzzle:Mark every square with the area of its containing region.
!end

View file

@ -1,4 +1,4 @@
/* -*- tab-width: 8; indent-tabs-mode: t -*-
/*
* filling.c: An implementation of the Nikoli game fillomino.
* Copyright (C) 2007 Jonas Kölker. See LICENSE for the license.
*/
@ -58,7 +58,11 @@
#include <assert.h>
#include <ctype.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
@ -68,16 +72,11 @@
static bool verbose;
static void printv(const char *fmt, ...) {
#if !defined(PALM) && !defined(ROCKBOX)
if (verbose) {
va_list va;
va_start(va, fmt);
vprintf(fmt, va);
va_end(va);
}
#ifdef STANDALONE_SOLVER
#define printv if (!verbose); else printf
#else
#define printv(...)
#endif
}
/*****************************************************************************
* GAME CONFIGURATION AND PARAMETERS *
@ -188,6 +187,8 @@ static const char *validate_params(const game_params *params, bool full)
{
if (params->w < 1) return "Width must be at least one";
if (params->h < 1) return "Height must be at least one";
if (params->w > INT_MAX / params->h)
return "Width times height must not be unreasonably large";
return NULL;
}
@ -289,14 +290,15 @@ static const int dy[4] = {0, 0, -1, 1};
struct solver_state
{
int *dsf;
DSF *dsf;
int *board;
int *connected;
int nempty;
/* Used internally by learn_bitmap_deductions; kept here to avoid
* mallocing/freeing them every time that function is called. */
int *bm, *bmdsf, *bmminsize;
int *bm, *bmminsize;
DSF *bmdsf;
};
static void print_board(int *board, int w, int h) {
@ -310,7 +312,7 @@ static void print_board(int *board, int w, int h) {
static game_state *new_game(midend *, const game_params *, const char *);
static void free_game(game_state *);
#define SENTINEL sz
#define SENTINEL (sz+1)
static bool mark_region(int *board, int w, int h, int i, int n, int m) {
int j;
@ -390,7 +392,8 @@ static void make_board(int *board, int w, int h, random_state *rs) {
/* Note that if 1 in {w, h} then it's impossible to have a region
* of size > w*h, so the special case only affects w=h=2. */
int i, *dsf;
int i;
DSF *dsf;
bool change;
assert(w >= 1);
@ -401,9 +404,9 @@ static void make_board(int *board, int w, int h, random_state *rs) {
* contains a shuffled list of numbers {0, ..., sz-1}. */
for (i = 0; i < sz; ++i) board[i] = i;
dsf = snewn(sz, int);
dsf = dsf_new(sz);
retry:
dsf_init(dsf, sz);
dsf_reinit(dsf);
shuffle(board, sz, sizeof (int), rs);
do {
@ -414,10 +417,15 @@ retry:
int merge = SENTINEL, min = maxsize - size + 1;
bool error = false;
int neighbour, neighbour_size, j;
int directions[4];
for (j = 0; j < 4; ++j)
directions[j] = j;
shuffle(directions, 4, sizeof(int), rs);
for (j = 0; j < 4; ++j) {
const int x = (board[i] % w) + dx[j];
const int y = (board[i] / w) + dy[j];
const int x = (board[i] % w) + dx[directions[j]];
const int y = (board[i] / w) + dy[directions[j]];
if (x < 0 || x >= w || y < 0 || y >= h) continue;
neighbour = dsf_canonify(dsf, w*y + x);
@ -429,7 +437,7 @@ retry:
/* find the smallest neighbour to merge with, which
* wouldn't make the region too large. (This is
* guaranteed by the initial value of `min'.) */
if (neighbour_size < min) {
if (neighbour_size < min && random_upto(rs, 10)) {
min = neighbour_size;
merge = neighbour;
}
@ -453,10 +461,10 @@ retry:
for (i = 0; i < sz; ++i) board[i] = dsf_size(dsf, i);
merge_ones(board, w, h);
sfree(dsf);
dsf_free(dsf);
}
static void merge(int *dsf, int *connected, int a, int b) {
static void merge(DSF *dsf, int *connected, int a, int b) {
int c;
assert(dsf);
assert(connected);
@ -532,7 +540,7 @@ static bool check_capacity(int *board, int w, int h, int i) {
return n == 0;
}
static int expandsize(const int *board, int *dsf, int w, int h, int i, int n) {
static int expandsize(const int *board, DSF *dsf, int w, int h, int i, int n) {
int j;
int nhits = 0;
int hits[4];
@ -548,7 +556,7 @@ static int expandsize(const int *board, int *dsf, int w, int h, int i, int n) {
root = dsf_canonify(dsf, idx);
for (m = 0; m < nhits && root != hits[m]; ++m);
if (m < nhits) continue;
printv("\t (%d, %d) contrib %d to size\n", x, y, dsf[root] >> 2);
printv("\t (%d, %d) contrib %d to size\n", x, y, dsf_size(dsf, root));
size += dsf_size(dsf, root);
assert(dsf_size(dsf, root) >= 1);
hits[nhits++] = root;
@ -833,7 +841,7 @@ static bool learn_bitmap_deductions(struct solver_state *s, int w, int h)
{
const int sz = w * h;
int *bm = s->bm;
int *dsf = s->bmdsf;
DSF *dsf = s->bmdsf;
int *minsize = s->bmminsize;
int x, y, i, j, n;
bool learn = false;
@ -933,7 +941,7 @@ static bool learn_bitmap_deductions(struct solver_state *s, int w, int h)
* have a completely new n-region in it.
*/
for (n = 1; n <= 9; n++) {
dsf_init(dsf, sz);
dsf_reinit(dsf);
/* Build the dsf */
for (y = 0; y < h; y++)
@ -1076,12 +1084,12 @@ static bool solver(const int *orig, int w, int h, char **solution) {
struct solver_state ss;
ss.board = memdup(orig, sz, sizeof (int));
ss.dsf = snew_dsf(sz); /* eqv classes: connected components */
ss.dsf = dsf_new(sz); /* eqv classes: connected components */
ss.connected = snewn(sz, int); /* connected[n] := n.next; */
/* cyclic disjoint singly linked lists, same partitioning as dsf.
* The lists lets you iterate over a partition given any member */
ss.bm = snewn(sz, int);
ss.bmdsf = snew_dsf(sz);
ss.bmdsf = dsf_new(sz);
ss.bmminsize = snewn(sz, int);
printv("trying to solve this:\n");
@ -1105,28 +1113,26 @@ static bool solver(const int *orig, int w, int h, char **solution) {
**solution = 's';
for (i = 0; i < sz; ++i) (*solution)[i + 1] = ss.board[i] + '0';
(*solution)[sz + 1] = '\0';
/* We don't need the \0 for execute_move (the only user)
* I'm just being printf-friendly in case I wanna print */
}
sfree(ss.dsf);
dsf_free(ss.dsf);
sfree(ss.board);
sfree(ss.connected);
sfree(ss.bm);
sfree(ss.bmdsf);
dsf_free(ss.bmdsf);
sfree(ss.bmminsize);
return !ss.nempty;
}
static int *make_dsf(int *dsf, int *board, const int w, const int h) {
static DSF *make_dsf(DSF *dsf, int *board, const int w, const int h) {
const int sz = w * h;
int i;
if (!dsf)
dsf = snew_dsf(w * h);
dsf = dsf_new_min(w * h);
else
dsf_init(dsf, w * h);
dsf_reinit(dsf);
for (i = 0; i < sz; ++i) {
int j;
@ -1145,7 +1151,8 @@ static void minimize_clue_set(int *board, int w, int h, random_state *rs)
{
const int sz = w * h;
int *shuf = snewn(sz, int), i;
int *dsf, *next;
DSF *dsf;
int *next;
for (i = 0; i < sz; ++i) shuf[i] = i;
shuffle(shuf, sz, sizeof (int), rs);
@ -1162,14 +1169,14 @@ static void minimize_clue_set(int *board, int w, int h, random_state *rs)
dsf = make_dsf(NULL, board, w, h);
next = snewn(sz, int);
for (i = 0; i < sz; ++i) {
int j = dsf_canonify(dsf, i);
int j = dsf_minimal(dsf, i);
if (i == j) {
/* First cell of a region; set next[i] = -1 to indicate
* end-of-list. */
next[i] = -1;
} else {
/* Add this cell to a region which already has a
* linked-list head, by pointing the canonical element j
* linked-list head, by pointing the minimal element j
* at this one, and pointing this one in turn at wherever
* j previously pointed. (This should end up with the
* elements linked in the order 1,n,n-1,n-2,...,2, which
@ -1197,7 +1204,7 @@ static void minimize_clue_set(int *board, int w, int h, random_state *rs)
* if we can.
*/
for (i = 0; i < sz; ++i) {
int j = dsf_canonify(dsf, shuf[i]);
int j = dsf_minimal(dsf, shuf[i]);
if (next[j] != -2) {
int tmp = board[j];
int k;
@ -1217,7 +1224,7 @@ static void minimize_clue_set(int *board, int w, int h, random_state *rs)
}
}
sfree(next);
sfree(dsf);
dsf_free(dsf);
/*
* Now go through individual cells, in the same shuffled order,
@ -1391,7 +1398,7 @@ static game_ui *new_ui(const game_state *state)
ui->sel = NULL;
ui->cur_x = ui->cur_y = 0;
ui->cur_visible = false;
ui->cur_visible = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->keydragging = false;
return ui;
@ -1404,15 +1411,6 @@ static void free_ui(game_ui *ui)
sfree(ui);
}
static char *encode_ui(const game_ui *ui)
{
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
const game_state *newstate)
{
@ -1424,6 +1422,23 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
ui->keydragging = false;
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
const int w = state->shared->params.w;
if (IS_CURSOR_SELECT(button) && ui->cur_visible) {
if (button == CURSOR_SELECT) {
if (ui->keydragging) return "Stop";
return "Multiselect";
}
if (button == CURSOR_SELECT2 &&
!state->shared->clues[w*ui->cur_y + ui->cur_x])
return (ui->sel[w*ui->cur_y + ui->cur_x]) ? "Deselect" : "Select";
}
return "";
}
#define PREFERRED_TILE_SIZE 32
#define TILE_SIZE (ds->tilesize)
#define BORDER (TILE_SIZE / 2)
@ -1434,7 +1449,8 @@ struct game_drawstate {
int tilesize;
bool started;
int *v, *flags;
int *dsf_scratch, *border_scratch;
DSF *dsf_scratch;
int *border_scratch;
};
static char *interpret_move(const game_state *state, game_ui *ui,
@ -1453,7 +1469,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
assert(ui);
assert(ds);
button &= ~MOD_MASK;
button = STRIP_BUTTON_MODIFIERS(button);
if (button == LEFT_BUTTON || button == LEFT_DRAG) {
/* A left-click anywhere will clear the current selection. */
@ -1472,22 +1488,22 @@ static char *interpret_move(const game_state *state, game_ui *ui,
ui->sel[w*ty+tx] = true;
}
ui->cur_visible = false;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (IS_CURSOR_MOVE(button)) {
ui->cur_visible = true;
move_cursor(button, &ui->cur_x, &ui->cur_y, w, h, false);
move_cursor(button, &ui->cur_x, &ui->cur_y, w, h, false, NULL);
if (ui->keydragging) goto select_square;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (button == CURSOR_SELECT) {
if (!ui->cur_visible) {
ui->cur_visible = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
ui->keydragging = !ui->keydragging;
if (!ui->keydragging) return UI_UPDATE;
if (!ui->keydragging) return MOVE_UI_UPDATE;
select_square:
if (!ui->sel) {
@ -1496,12 +1512,12 @@ static char *interpret_move(const game_state *state, game_ui *ui,
}
if (!state->shared->clues[w*ui->cur_y + ui->cur_x])
ui->sel[w*ui->cur_y + ui->cur_x] = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (button == CURSOR_SELECT2) {
if (!ui->cur_visible) {
ui->cur_visible = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (!ui->sel) {
ui->sel = snewn(w*h, bool);
@ -1515,19 +1531,19 @@ static char *interpret_move(const game_state *state, game_ui *ui,
sfree(ui->sel);
ui->sel = NULL;
}
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (button == '\b' || button == 27) {
sfree(ui->sel);
ui->sel = NULL;
ui->keydragging = false;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (button < '0' || button > '9') return NULL;
if (button < '0' || button > '9') return MOVE_UNUSED;
button -= '0';
if (button > (w == 2 && h == 2 ? 3 : max(w, h))) return NULL;
if (button > (w == 2 && h == 2 ? 3 : max(w, h))) return MOVE_UNUSED;
ui->keydragging = false;
for (i = 0; i < w*h; i++) {
@ -1553,11 +1569,11 @@ static char *interpret_move(const game_state *state, game_ui *ui,
move = srealloc(move, strlen(move)+strlen(buf)+1);
strcat(move, buf);
}
if (!ui->sel) return move ? move : NULL;
if (!ui->sel) return move ? move : MOVE_NO_EFFECT;
sfree(ui->sel);
ui->sel = NULL;
/* Need to update UI at least, as we cleared the selection */
return move ? move : UI_UPDATE;
return move ? move : MOVE_UI_UPDATE;
}
static game_state *execute_move(const game_state *state, const char *move)
@ -1567,6 +1583,7 @@ static game_state *execute_move(const game_state *state, const char *move)
if (*move == 's') {
int i = 0;
if (strlen(move) != sz + 1) return NULL;
new_state = dup_game(state);
for (++move; i < sz; ++i) new_state->board[i] = move[i] - '0';
new_state->cheated = true;
@ -1596,10 +1613,10 @@ static game_state *execute_move(const game_state *state, const char *move)
const int w = new_state->shared->params.w;
const int h = new_state->shared->params.h;
const int sz = w * h;
int *dsf = make_dsf(NULL, new_state->board, w, h);
DSF *dsf = make_dsf(NULL, new_state->board, w, h);
int i;
for (i = 0; i < sz && new_state->board[i] == dsf_size(dsf, i); ++i);
sfree(dsf);
dsf_free(dsf);
if (i == sz)
new_state->completed = true;
}
@ -1630,7 +1647,7 @@ enum {
};
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
*x = (params->w + 1) * tilesize;
*y = (params->h + 1) * tilesize;
@ -1652,9 +1669,9 @@ static float *game_colours(frontend *fe, int *ncolours)
ret[COL_GRID * 3 + 1] = 0.0F;
ret[COL_GRID * 3 + 2] = 0.0F;
ret[COL_HIGHLIGHT * 3 + 0] = 0.85F * ret[COL_BACKGROUND * 3 + 0];
ret[COL_HIGHLIGHT * 3 + 1] = 0.85F * ret[COL_BACKGROUND * 3 + 1];
ret[COL_HIGHLIGHT * 3 + 2] = 0.85F * ret[COL_BACKGROUND * 3 + 2];
ret[COL_HIGHLIGHT * 3 + 0] = 0.7F * ret[COL_BACKGROUND * 3 + 0];
ret[COL_HIGHLIGHT * 3 + 1] = 0.7F * ret[COL_BACKGROUND * 3 + 1];
ret[COL_HIGHLIGHT * 3 + 2] = 0.7F * ret[COL_BACKGROUND * 3 + 2];
ret[COL_CORRECT * 3 + 0] = 0.9F * ret[COL_BACKGROUND * 3 + 0];
ret[COL_CORRECT * 3 + 1] = 0.9F * ret[COL_BACKGROUND * 3 + 1];
@ -1699,7 +1716,7 @@ static void game_free_drawstate(drawing *dr, game_drawstate *ds)
sfree(ds->v);
sfree(ds->flags);
sfree(ds->border_scratch);
sfree(ds->dsf_scratch);
dsf_free(ds->dsf_scratch);
sfree(ds);
}
@ -2016,17 +2033,8 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
(flashtime <= FLASH_TIME/3 || flashtime >= FLASH_TIME*2/3);
if (!ds->started) {
/*
* The initial contents of the window are not guaranteed and
* can vary with front ends. To be on the safe side, all games
* should start by drawing a big background-colour rectangle
* covering the whole window.
*/
draw_rect(dr, 0, 0, w*TILE_SIZE + 2*BORDER, h*TILE_SIZE + 2*BORDER,
COL_BACKGROUND);
/*
* Smaller black rectangle which is the main grid.
* Black rectangle which is the main grid.
*/
draw_rect(dr, BORDER - BORDER_WIDTH, BORDER - BORDER_WIDTH,
w*TILE_SIZE + 2*BORDER_WIDTH + 1,
@ -2079,24 +2087,21 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
static void game_print_size(const game_params *params, const game_ui *ui,
float *x, float *y)
{
int pw, ph;
/*
* I'll use 6mm squares by default.
*/
game_compute_size(params, 600, &pw, &ph);
game_compute_size(params, 600, ui, &pw, &ph);
*x = pw / 100.0F;
*y = ph / 100.0F;
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
static void game_print(drawing *dr, const game_state *state, const game_ui *ui,
int tilesize)
{
const int w = state->shared->params.w;
const int h = state->shared->params.h;
@ -2164,12 +2169,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
NULL, NULL, /* get_prefs, set_prefs */
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
game_request_keys,
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILE_SIZE, game_compute_size, game_set_size,
@ -2183,13 +2190,18 @@ const struct game thegame = {
game_status,
true, false, game_print_size, game_print,
false, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
REQUIRE_NUMPAD, /* flags */
};
#ifdef STANDALONE_SOLVER /* solver? hah! */
int main(int argc, char **argv) {
if (!strcmp(argv[1], "--verbose")) {
verbose = true;
argv++;
}
while (*++argv) {
game_params *params;
game_state *state;

View file

@ -1,21 +0,0 @@
# -*- makefile -*-
FLIP_EXTRA = tree234
flip : [X] GTK COMMON flip FLIP_EXTRA flip-icon|no-icon
flip : [G] WINDOWS COMMON flip FLIP_EXTRA flip.res|noicon.res
ALL += flip[COMBINED] FLIP_EXTRA
!begin am gtk
GAMES += flip
!end
!begin >list.c
A(flip) \
!end
!begin >gamedesc.txt
flip:flip.exe:Flip:Tile inversion puzzle:Flip groups of squares to light them all up at once.
!end

View file

@ -8,7 +8,12 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#include <limits.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
#include "tree234.h"
@ -181,9 +186,16 @@ static game_params *custom_params(const config_item *cfg)
static const char *validate_params(const game_params *params, bool full)
{
int wh;
if (params->w <= 0 || params->h <= 0)
return "Width and height must both be greater than zero";
return NULL;
if (params->w > (INT_MAX - 3) / params->h)
return "Width times height must not be unreasonably large";
wh = params->w * params->h;
if (wh > (INT_MAX - 3) / wh)
return "Width times height is too large";
return NULL;
}
static char *encode_bitmap(unsigned char *bmp, int len)
@ -905,7 +917,7 @@ static game_ui *new_ui(const game_state *state)
{
game_ui *ui = snew(game_ui);
ui->cx = ui->cy = 0;
ui->cdraw = false;
ui->cdraw = getenv_bool("PUZZLES_SHOW_CURSOR", false);
return ui;
}
@ -914,20 +926,18 @@ static void free_ui(game_ui *ui)
sfree(ui);
}
static char *encode_ui(const game_ui *ui)
{
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
const game_state *newstate)
{
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (IS_CURSOR_SELECT(button)) return "Flip";
return "";
}
struct game_drawstate {
int w, h;
bool started;
@ -940,7 +950,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
int x, int y, int button)
{
int w = state->w, h = state->h, wh = w * h;
char buf[80], *nullret = NULL;
char buf[80], *nullret = MOVE_UNUSED;
if (button == LEFT_BUTTON || IS_CURSOR_SELECT(button)) {
int tx, ty;
@ -951,7 +961,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
tx = ui->cx; ty = ui->cy;
ui->cdraw = true;
}
nullret = UI_UPDATE;
nullret = MOVE_UI_UPDATE;
if (tx >= 0 && tx < w && ty >= 0 && ty < h) {
/*
@ -969,25 +979,12 @@ static char *interpret_move(const game_state *state, game_ui *ui,
sprintf(buf, "M%d,%d", tx, ty);
return dupstr(buf);
} else {
return NULL;
return MOVE_NO_EFFECT;
}
}
}
else if (IS_CURSOR_MOVE(button)) {
int dx = 0, dy = 0;
switch (button) {
case CURSOR_UP: dy = -1; break;
case CURSOR_DOWN: dy = 1; break;
case CURSOR_RIGHT: dx = 1; break;
case CURSOR_LEFT: dx = -1; break;
default: assert(!"shouldn't get here");
}
ui->cx += dx; ui->cy += dy;
ui->cx = min(max(ui->cx, 0), state->w - 1);
ui->cy = min(max(ui->cy, 0), state->h - 1);
ui->cdraw = true;
nullret = UI_UPDATE;
}
} else if (IS_CURSOR_MOVE(button))
nullret = move_cursor(button, &ui->cx, &ui->cy, state->w, state->h,
false, &ui->cdraw);
return nullret;
}
@ -1045,7 +1042,7 @@ static game_state *execute_move(const game_state *from, const char *move)
*/
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Ick: fake up `ds->tilesize' for macro expansion purposes */
struct { int tilesize; } ads, *ds = &ads;
@ -1145,7 +1142,7 @@ static void draw_tile(drawing *dr, game_drawstate *ds, const game_state *state,
coords[7] = by + TILE_SIZE - (int)((float)TILE_SIZE * animtime);
colour = (tile & 1 ? COL_WRONG : COL_RIGHT);
if (animtime < 0.5)
if (animtime < 0.5F)
colour = COL_WRONG + COL_RIGHT - colour;
draw_polygon(dr, coords, 4, colour, COL_GRID);
@ -1159,7 +1156,7 @@ static void draw_tile(drawing *dr, game_drawstate *ds, const game_state *state,
for (j = 0; j < w; j++)
if (state->matrix->matrix[(y*w+x)*wh + i*w+j]) {
int ox = j - x, oy = i - y;
int td = TILE_SIZE / 16;
int td = TILE_SIZE / 16 ? TILE_SIZE / 16 : 1;
int cx = (bx + TILE_SIZE/2) + (2 * ox - 1) * td;
int cy = (by + TILE_SIZE/2) + (2 * oy - 1) * td;
if (ox == 0 && oy == 0)
@ -1202,9 +1199,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
int i, flashframe;
if (!ds->started) {
draw_rect(dr, 0, 0, TILE_SIZE * w + 2 * BORDER,
TILE_SIZE * h + 2 * BORDER, COL_BACKGROUND);
/*
* Draw the grid lines.
*/
@ -1309,19 +1303,6 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
{
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
{
}
#ifdef COMBINED
#define thegame flip
#endif
@ -1343,12 +1324,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
NULL, NULL, /* get_prefs, set_prefs */
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILE_SIZE, game_compute_size, game_set_size,
@ -1360,8 +1343,8 @@ const struct game thegame = {
game_flash_length,
game_get_cursor_location,
game_status,
false, false, game_print_size, game_print,
false, false, NULL, NULL, /* print_size, print */
true, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

View file

@ -1,19 +0,0 @@
# -*- makefile -*-
flood : [X] GTK COMMON flood flood-icon|no-icon
flood : [G] WINDOWS COMMON flood flood.res|noicon.res
ALL += flood[COMBINED]
!begin am gtk
GAMES += flood
!end
!begin >list.c
A(flood) \
!end
!begin >gamedesc.txt
flood:flood.exe:Flood:Flood-filling puzzle:Turn the grid the same colour in as few flood fills as possible.
!end

View file

@ -31,7 +31,12 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#include <limits.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -140,13 +145,13 @@ static void decode_params(game_params *ret, char const *string)
if (*string == 'c') {
string++;
ret->colours = atoi(string);
while (string[1] && isdigit((unsigned char)string[1])) string++;
while (*string && isdigit((unsigned char)*string)) string++;
} else if (*string == 'm') {
string++;
ret->leniency = atoi(string);
while (string[1] && isdigit((unsigned char)string[1])) string++;
}
string++;
while (*string && isdigit((unsigned char)*string)) string++;
} else
string++;
}
}
@ -210,7 +215,9 @@ static const char *validate_params(const game_params *params, bool full)
if (params->w * params->h < 2)
return "Grid must contain at least two squares";
if (params->w < 1 || params->h < 1)
return "Width and height must both be at least one";
return "Width and height must be at least one";
if (params->w > INT_MAX / params->h)
return "Width times height must not be unreasonably large";
if (params->colours < 3 || params->colours > 10)
return "Must have between 3 and 10 colours";
if (params->leniency < 0)
@ -554,8 +561,10 @@ static char *new_game_desc(const game_params *params, random_state *rs,
/*
* Invent a random grid.
*/
for (i = 0; i < wh; i++)
scratch->grid[i] = random_upto(rs, params->colours);
do {
for (i = 0; i < wh; i++)
scratch->grid[i] = random_upto(rs, params->colours);
} while (completed(w, h, scratch->grid));
/*
* Run the solver, and count how many moves it uses.
@ -770,7 +779,7 @@ struct game_ui {
static game_ui *new_ui(const game_state *state)
{
struct game_ui *ui = snew(struct game_ui);
ui->cursor_visible = false;
ui->cursor_visible = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->cx = FILLX;
ui->cy = FILLY;
return ui;
@ -781,20 +790,23 @@ static void free_ui(game_ui *ui)
sfree(ui);
}
static char *encode_ui(const game_ui *ui)
{
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
const game_state *newstate)
{
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (button == CURSOR_SELECT &&
state->grid[0] != state->grid[ui->cy*state->w+ui->cx])
return "Fill";
if (button == CURSOR_SELECT2 &&
state->soln && state->solnpos < state->soln->nmoves)
return "Advance";
return "";
}
struct game_drawstate {
bool started;
int tilesize;
@ -818,35 +830,26 @@ static char *interpret_move(const game_state *state, game_ui *ui,
{
int w = state->w, h = state->h;
int tx = -1, ty = -1, move = -1;
char *nullret = MOVE_NO_EFFECT;
if (button == LEFT_BUTTON) {
tx = FROMCOORD(x);
ty = FROMCOORD(y);
ui->cursor_visible = false;
} else if (button == CURSOR_LEFT && ui->cx > 0) {
ui->cx--;
ui->cursor_visible = true;
return UI_UPDATE;
} else if (button == CURSOR_RIGHT && ui->cx+1 < w) {
ui->cx++;
ui->cursor_visible = true;
return UI_UPDATE;
} else if (button == CURSOR_UP && ui->cy > 0) {
ui->cy--;
ui->cursor_visible = true;
return UI_UPDATE;
} else if (button == CURSOR_DOWN && ui->cy+1 < h) {
ui->cy++;
ui->cursor_visible = true;
return UI_UPDATE;
if (ui->cursor_visible) {
ui->cursor_visible = false;
nullret = MOVE_UI_UPDATE;
}
} else if (IS_CURSOR_MOVE(button)) {
return move_cursor(button, &ui->cx, &ui->cy, w, h, false,
&ui->cursor_visible);
} else if (button == CURSOR_SELECT) {
tx = ui->cx;
ty = ui->cy;
} else if (button == CURSOR_SELECT2 &&
state->soln && state->solnpos < state->soln->nmoves) {
move = state->soln->moves[state->solnpos];
} else if (button == CURSOR_SELECT2) {
if (state->soln && state->solnpos < state->soln->nmoves)
move = state->soln->moves[state->solnpos];
} else {
return NULL;
return MOVE_UNUSED;
}
if (tx >= 0 && tx < w && ty >= 0 && ty < h &&
@ -859,7 +862,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
return dupstr(buf);
}
return NULL;
return nullret;
}
static game_state *execute_move(const game_state *state, const char *move)
@ -869,7 +872,8 @@ static game_state *execute_move(const game_state *state, const char *move)
if (move[0] == 'M' &&
sscanf(move+1, "%d", &c) == 1 &&
c >= 0 &&
c >= 0 && c < state->colours &&
c != state->grid[FILLY * state->w + FILLX] &&
!state->complete) {
int *queue = snewn(state->w * state->h, int);
ret = dup_game(state);
@ -920,11 +924,23 @@ static game_state *execute_move(const game_state *state, const char *move)
sol->moves = snewn(sol->nmoves, char);
for (i = 0, p = move; i < sol->nmoves; i++) {
assert(*p);
if (!*p) {
badsolve:
sfree(sol->moves);
sfree(sol);
return NULL;
};
sol->moves[i] = atoi(p);
if (sol->moves[i] < 0 || sol->moves[i] >= state->colours ||
(i == 0 ?
sol->moves[i] == state->grid[FILLY * state->w + FILLX] :
sol->moves[i] == sol->moves[i-1]))
/* Solution contains a fill with an invalid colour or
* the current colour. */
goto badsolve;
p += strspn(p, "0123456789");
if (*p) {
assert(*p == ',');
if (*p != ',') goto badsolve;
p++;
}
}
@ -949,7 +965,7 @@ static game_state *execute_move(const game_state *state, const char *move)
*/
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Ick: fake up `ds->tilesize' for macro expansion purposes */
struct { int tilesize; } ads, *ds = &ads;
@ -1076,31 +1092,33 @@ static void draw_tile(drawing *dr, game_drawstate *ds,
colour += COL_1;
draw_rect(dr, tx, ty, TILESIZE, TILESIZE, colour);
if (tile & BORDER_L)
draw_rect(dr, tx, ty,
SEP_WIDTH, TILESIZE, COL_SEPARATOR);
if (tile & BORDER_R)
draw_rect(dr, tx + TILESIZE - SEP_WIDTH, ty,
SEP_WIDTH, TILESIZE, COL_SEPARATOR);
if (tile & BORDER_U)
draw_rect(dr, tx, ty,
TILESIZE, SEP_WIDTH, COL_SEPARATOR);
if (tile & BORDER_D)
draw_rect(dr, tx, ty + TILESIZE - SEP_WIDTH,
TILESIZE, SEP_WIDTH, COL_SEPARATOR);
if (SEP_WIDTH > 0) {
if (tile & BORDER_L)
draw_rect(dr, tx, ty,
SEP_WIDTH, TILESIZE, COL_SEPARATOR);
if (tile & BORDER_R)
draw_rect(dr, tx + TILESIZE - SEP_WIDTH, ty,
SEP_WIDTH, TILESIZE, COL_SEPARATOR);
if (tile & BORDER_U)
draw_rect(dr, tx, ty,
TILESIZE, SEP_WIDTH, COL_SEPARATOR);
if (tile & BORDER_D)
draw_rect(dr, tx, ty + TILESIZE - SEP_WIDTH,
TILESIZE, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_UL)
draw_rect(dr, tx, ty,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_UR)
draw_rect(dr, tx + TILESIZE - SEP_WIDTH, ty,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_DL)
draw_rect(dr, tx, ty + TILESIZE - SEP_WIDTH,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_DR)
draw_rect(dr, tx + TILESIZE - SEP_WIDTH, ty + TILESIZE - SEP_WIDTH,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_UL)
draw_rect(dr, tx, ty,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_UR)
draw_rect(dr, tx + TILESIZE - SEP_WIDTH, ty,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_DL)
draw_rect(dr, tx, ty + TILESIZE - SEP_WIDTH,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
if (tile & CORNER_DR)
draw_rect(dr, tx + TILESIZE - SEP_WIDTH, ty + TILESIZE - SEP_WIDTH,
SEP_WIDTH, SEP_WIDTH, COL_SEPARATOR);
}
if (tile & CURSOR)
draw_rect_outline(dr, tx + CURSOR_INSET, ty + CURSOR_INSET,
@ -1130,13 +1148,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
if (!ds->started) {
int coords[10];
draw_rect(dr, 0, 0,
TILESIZE * w + 2 * BORDER,
TILESIZE * h + 2 * BORDER, COL_BACKGROUND);
draw_update(dr, 0, 0,
TILESIZE * w + 2 * BORDER,
TILESIZE * h + 2 * BORDER);
/*
* Recessed area containing the whole puzzle.
*/
@ -1326,19 +1337,6 @@ static float game_flash_length(const game_state *oldstate,
return 0.0F;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
{
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
{
}
#ifdef COMBINED
#define thegame flood
#endif
@ -1360,12 +1358,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
NULL, NULL, /* get_prefs, set_prefs */
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILESIZE, game_compute_size, game_set_size,
@ -1377,8 +1377,8 @@ const struct game thegame = {
game_flash_length,
game_get_cursor_location,
game_status,
false, false, game_print_size, game_print,
false, false, NULL, NULL, /* print_size, print */
true, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

View file

@ -0,0 +1,250 @@
/*
* fuzzpuzz.c: Fuzzing frontend to all puzzles.
*/
/*
* The idea here is that this front-end supports all back-ends and can
* feed them save files. It then asks the back-end to draw the puzzle
* (through a null drawing API) and reserialises the state. This
* tests the deserialiser, the code for loading game descriptions, the
* processing of move strings, the redraw code, and the serialisation
* routines, but is still pretty quick.
*
* To use AFL++ to drive fuzzpuzz, you can do something like:
*
* CC=afl-cc cmake -B build-afl
* cmake --build build-afl --target fuzzpuzz
* mkdir fuzz-in && ln icons/''*.sav fuzz-in
* afl-fuzz -i fuzz-in -o fuzz-out -x fuzzpuzz.dict -- build-afl/fuzzpuzz
*
* Similarly with Honggfuzz:
*
* CC=hfuzz-cc cmake -B build-honggfuzz
* cmake --build build-honggfuzz --target fuzzpuzz
* mkdir fuzz-corpus && ln icons/''*.sav fuzz-corpus
* honggfuzz -s -i fuzz-corpus -w fuzzpuzz.dict -- build-honggfuzz/fuzzpuzz
*
* You can also use libFuzzer, though it's not really a good fit for
* Puzzles. The experimental forking mode seems to work OK:
*
* CC=clang cmake -B build-clang -DWITH_LIBFUZZER=Y
* cmake --build build-clang --target fuzzpuzz
* mkdir fuzz-corpus && ln icons/''*.sav fuzz-corpus
* build-clang/fuzzpuzz -fork=1 -ignore_crashes=1 -dict=fuzzpuzz.dict \
* fuzz-corpus
*/
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef __AFL_FUZZ_TESTCASE_LEN
# include <unistd.h> /* read() is used by __AFL_FUZZ_TESTCASE_LEN. */
#endif
#include "puzzles.h"
#ifdef __AFL_FUZZ_INIT
__AFL_FUZZ_INIT();
#endif
#ifdef HAVE_HF_ITER
extern int HF_ITER(unsigned char **, size_t *);
#endif
/* This function is expected by libFuzzer. */
int LLVMFuzzerTestOneInput(unsigned char *data, size_t size);
static const char *fuzz_one(bool (*readfn)(void *, void *, int), void *rctx,
void (*rewindfn)(void *),
void (*writefn)(void *, const void *, int),
void *wctx)
{
const char *err;
char *gamename;
int i, w, h;
const game *ourgame = NULL;
static const drawing_api drapi = { NULL };
midend *me;
err = identify_game(&gamename, readfn, rctx);
if (err != NULL) return err;
for (i = 0; i < gamecount; i++)
if (strcmp(gamename, gamelist[i]->name) == 0)
ourgame = gamelist[i];
sfree(gamename);
if (ourgame == NULL)
return "Game not recognised";
me = midend_new(NULL, ourgame, &drapi, NULL);
rewindfn(rctx);
err = midend_deserialise(me, readfn, rctx);
if (err != NULL) {
midend_free(me);
return err;
}
w = h = INT_MAX;
midend_size(me, &w, &h, false, 1);
midend_redraw(me);
midend_serialise(me, writefn, wctx);
midend_free(me);
return NULL;
}
#if defined(__AFL_FUZZ_TESTCASE_LEN) || defined(HAVE_HF_ITER) || \
!defined(OMIT_MAIN)
static void savefile_write(void *wctx, const void *buf, int len)
{
FILE *fp = (FILE *)wctx;
fwrite(buf, 1, len, fp);
}
#endif
struct memread {
const unsigned char *buf;
size_t pos;
size_t len;
};
static bool mem_read(void *wctx, void *buf, int len)
{
struct memread *ctx = wctx;
if (ctx->pos + len > ctx->len) return false;
memcpy(buf, ctx->buf + ctx->pos, len);
ctx->pos += len;
return true;
}
static void mem_rewind(void *wctx)
{
struct memread *ctx = wctx;
ctx->pos = 0;
}
static void null_write(void *wctx, const void *buf, int len)
{
}
int LLVMFuzzerTestOneInput(unsigned char *data, size_t size) {
struct memread ctx;
ctx.buf = data;
ctx.len = size;
ctx.pos = 0;
fuzz_one(mem_read, &ctx, mem_rewind, null_write, NULL);
return 0;
}
#if defined(__AFL_FUZZ_TESTCASE_LEN) || defined(HAVE_HF_ITER)
static const char *fuzz_one_mem(unsigned char *data, size_t size) {
struct memread ctx;
ctx.buf = data;
ctx.len = size;
ctx.pos = 0;
return fuzz_one(mem_read, &ctx, mem_rewind, savefile_write, stdout);
}
#endif
/*
* Three different versions of main(), for standalone, AFL, and
* Honggfuzz modes. LibFuzzer brings its own main().
*/
#ifdef OMIT_MAIN
/* Nothing. */
#elif defined(__AFL_FUZZ_TESTCASE_LEN)
/*
* AFL persistent mode, where we fuzz from a RAM buffer provided
* by AFL in a loop. This version can still be run standalone if
* necessary, for instance to diagnose a crash.
*/
int main(int argc, char **argv)
{
const char *err;
int ret;
if (argc != 1) {
fprintf(stderr, "usage: %s\n", argv[0]);
return 1;
}
#ifdef __AFL_HAVE_MANUAL_CONTROL
__AFL_INIT();
#endif
while (__AFL_LOOP(10000)) {
err = fuzz_one_mem(__AFL_FUZZ_TESTCASE_BUF, __AFL_FUZZ_TESTCASE_LEN);
if (err != NULL) {
fprintf(stderr, "%s\n", err);
ret = 1;
} else
ret = 0;
}
return ret;
}
#elif defined(HAVE_HF_ITER)
/*
* Honggfuzz persistent mode. Unlike AFL persistent mode, the
* resulting executable cannot be run outside of Honggfuzz.
*/
int main(int argc, char **argv)
{
if (argc != 1) {
fprintf(stderr, "usage: %s\n", argv[0]);
return 1;
}
while (true) {
unsigned char *testcase_buf;
size_t testcase_len;
HF_ITER(&testcase_buf, &testcase_len);
fuzz_one_mem(testcase_buf, testcase_len);
}
}
#else
/*
* Stand-alone mode: just handle a single test case on stdin.
*/
static bool savefile_read(void *wctx, void *buf, int len)
{
FILE *fp = (FILE *)wctx;
int ret;
ret = fread(buf, 1, len, fp);
return (ret == len);
}
static void savefile_rewind(void *wctx)
{
FILE *fp = (FILE *)wctx;
rewind(fp);
}
int main(int argc, char **argv)
{
const char *err;
if (argc != 1) {
fprintf(stderr, "usage: %s\n", argv[0]);
return 1;
}
/* Might in theory use this mode under AFL. */
#ifdef __AFL_HAVE_MANUAL_CONTROL
__AFL_INIT();
#endif
err = fuzz_one(savefile_read, stdin, savefile_rewind,
savefile_write, stdout);
if (err != NULL) {
fprintf(stderr, "%s\n", err);
return 1;
}
return 0;
}
#endif

View file

@ -1,28 +0,0 @@
# -*- makefile -*-
GALAXIES_EXTRA = dsf
galaxies : [X] GTK COMMON galaxies GALAXIES_EXTRA galaxies-icon|no-icon
galaxies : [G] WINDOWS COMMON galaxies GALAXIES_EXTRA galaxies.res|noicon.res
galaxiessolver : [U] galaxies[STANDALONE_SOLVER] GALAXIES_EXTRA STANDALONE m.lib
galaxiessolver : [C] galaxies[STANDALONE_SOLVER] GALAXIES_EXTRA STANDALONE
galaxiespicture : [U] galaxies[STANDALONE_PICTURE_GENERATOR] GALAXIES_EXTRA STANDALONE
+ m.lib
galaxiespicture : [C] galaxies[STANDALONE_PICTURE_GENERATOR] GALAXIES_EXTRA STANDALONE
ALL += galaxies[COMBINED] GALAXIES_EXTRA
!begin am gtk
GAMES += galaxies
!end
!begin >list.c
A(galaxies) \
!end
!begin >gamedesc.txt
galaxies:galaxies.exe:Galaxies:Symmetric polyomino puzzle:Divide the grid into rotationally symmetric regions each centred on a dot.
!end

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -33,6 +33,7 @@ typedef struct grid_edge grid_edge;
typedef struct grid_dot grid_dot;
struct grid_face {
int index; /* index in grid->faces[] where this face appears */
int order; /* Number of edges, also the number of dots */
grid_edge **edges; /* edges around this face */
grid_dot **dots; /* corners of this face */
@ -56,8 +57,10 @@ struct grid_face {
struct grid_edge {
grid_dot *dot1, *dot2;
grid_face *face1, *face2; /* Use NULL for the infinite outside face */
int index; /* index in grid->edges[] where this edge appears */
};
struct grid_dot {
int index; /* index in grid->dots[] where this dot appears */
int order;
grid_edge **edges;
grid_face **faces; /* A NULL grid_face* means infinite outside face */
@ -69,11 +72,13 @@ struct grid_dot {
int x, y;
};
typedef struct grid {
/* These are (dynamically allocated) arrays of all the
* faces, edges, dots that are in the grid. */
int num_faces; grid_face *faces;
int num_edges; grid_edge *edges;
int num_dots; grid_dot *dots;
/* Arrays of all the faces, edges, dots that are in the grid.
* The arrays themselves are dynamically allocated, and so is each object
* inside them. num_foo indicates the number of things actually stored,
* and size_foo indicates the allocated size of the array. */
int num_faces, size_faces; grid_face **faces;
int num_edges, size_edges; grid_edge **edges;
int num_dots, size_dots; grid_dot **dots;
/* Cache the bounding-box of the grid, so the drawing-code can quickly
* figure out the proper scaling to draw onto a given area. */
@ -107,13 +112,19 @@ typedef struct grid {
A(DODECAGONAL,dodecagonal) \
A(GREATDODECAGONAL,greatdodecagonal) \
A(GREATGREATDODECAGONAL,greatgreatdodecagonal) \
A(COMPASSDODECAGONAL,compassdodecagonal) \
A(PENROSE_P2,penrose_p2_kite) \
A(PENROSE_P3,penrose_p3_thick)
A(PENROSE_P3,penrose_p3_thick) \
A(HATS,hats) \
A(SPECTRES,spectres) \
/* end of list */
#define ENUM(upper,lower) GRID_ ## upper,
typedef enum grid_type { GRIDGEN_LIST(ENUM) GRID_TYPE_MAX } grid_type;
#undef ENUM
const char *grid_validate_params(grid_type type, int width, int height);
/* Free directly after use if non-NULL. Will never contain an underscore
* (so clients can safely use that as a separator). */
char *grid_new_desc(grid_type type, int width, int height, random_state *rs);

View file

@ -2,6 +2,10 @@
* gtk.c: GTK front end for my puzzle collection.
*/
#ifndef _GNU_SOURCE
#define _GNU_SOURCE 1 /* for strcasestr */
#endif
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
@ -9,8 +13,16 @@
#include <stdarg.h>
#include <string.h>
#include <errno.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include <unistd.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/time.h>
#include <sys/resource.h>
@ -25,6 +37,7 @@
#include <X11/Xatom.h>
#include "puzzles.h"
#include "gtk.h"
#if GTK_CHECK_VERSION(2,0,0)
# define USE_PANGO
@ -82,7 +95,7 @@
#ifdef DEBUGGING
static FILE *debug_fp = NULL;
void dputs(const char *buf)
static void dputs(const char *buf)
{
if (!debug_fp) {
debug_fp = fopen("debug.log", "w");
@ -131,6 +144,8 @@ void fatal(const char *fmt, ...)
*/
static void changed_preset(frontend *fe);
static void load_prefs(frontend *fe);
static char *save_prefs(frontend *fe);
struct font {
#ifdef USE_PANGO
@ -314,7 +329,7 @@ void frontend_default_colour(frontend *fe, float *output)
output[0] = output[1] = output[2] = 0.9F;
}
void gtk_status_bar(void *handle, const char *text)
static void gtk_status_bar(void *handle, const char *text)
{
frontend *fe = (frontend *)handle;
@ -389,6 +404,21 @@ static void print_set_colour(frontend *fe, int colour)
static void set_window_background(frontend *fe, int colour)
{
#if GTK_CHECK_VERSION(3,0,0)
/* In case the user's chosen theme is dark, we should not override
* the background colour for the whole window as this makes the
* menu and status bars unreadable. This might be visible through
* the gtk-application-prefer-dark-theme flag or else we have to
* work it out from the name. */
gboolean dark_theme = false;
char *theme_name = NULL;
g_object_get(gtk_settings_get_default(),
"gtk-application-prefer-dark-theme", &dark_theme,
"gtk-theme-name", &theme_name,
NULL);
if (theme_name && strcasestr(theme_name, "-dark"))
dark_theme = true;
g_free(theme_name);
#if GTK_CHECK_VERSION(3,20,0)
char css_buf[512];
sprintf(css_buf, ".background { "
@ -401,23 +431,28 @@ static void set_window_background(frontend *fe, int colour)
if (!gtk_css_provider_load_from_data(
GTK_CSS_PROVIDER(fe->css_provider), css_buf, -1, NULL))
assert(0 && "Couldn't load CSS");
gtk_style_context_add_provider(
gtk_widget_get_style_context(fe->window),
GTK_STYLE_PROVIDER(fe->css_provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
if (!dark_theme) {
gtk_style_context_add_provider(
gtk_widget_get_style_context(fe->window),
GTK_STYLE_PROVIDER(fe->css_provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
}
gtk_style_context_add_provider(
gtk_widget_get_style_context(fe->area),
GTK_STYLE_PROVIDER(fe->css_provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
#elif GTK_CHECK_VERSION(3,0,0)
#else // still at least GTK 3.0 but less than 3.20
GdkRGBA rgba;
rgba.red = fe->colours[3*colour + 0];
rgba.green = fe->colours[3*colour + 1];
rgba.blue = fe->colours[3*colour + 2];
rgba.alpha = 1.0;
gdk_window_set_background_rgba(gtk_widget_get_window(fe->area), &rgba);
gdk_window_set_background_rgba(gtk_widget_get_window(fe->window), &rgba);
#else
if (!dark_theme)
gdk_window_set_background_rgba(gtk_widget_get_window(fe->window),
&rgba);
#endif // GTK_CHECK_VERSION(3,20,0)
#else // GTK 2 version comes next
GdkColormap *colmap;
colmap = gdk_colormap_get_system();
@ -571,7 +606,7 @@ static void do_draw_thick_line(frontend *fe, float thickness,
cairo_restore(fe->cr);
}
static void do_draw_poly(frontend *fe, int *coords, int npoints,
static void do_draw_poly(frontend *fe, const int *coords, int npoints,
int fillcolour, int outlinecolour)
{
int i;
@ -832,7 +867,7 @@ static void do_draw_thick_line(frontend *fe, float thickness,
save.join_style);
}
static void do_draw_poly(frontend *fe, int *coords, int npoints,
static void do_draw_poly(frontend *fe, const int *coords, int npoints,
int fillcolour, int outlinecolour)
{
GdkPoint *points = snewn(npoints, GdkPoint);
@ -1129,7 +1164,7 @@ static void align_and_draw_text(int index, int align, int x, int y,
* The exported drawing functions.
*/
void gtk_start_draw(void *handle)
static void gtk_start_draw(void *handle)
{
frontend *fe = (frontend *)handle;
fe->bbox_l = fe->w;
@ -1139,20 +1174,21 @@ void gtk_start_draw(void *handle)
setup_drawing(fe);
}
void gtk_clip(void *handle, int x, int y, int w, int h)
static void gtk_clip(void *handle, int x, int y, int w, int h)
{
frontend *fe = (frontend *)handle;
do_clip(fe, x, y, w, h);
}
void gtk_unclip(void *handle)
static void gtk_unclip(void *handle)
{
frontend *fe = (frontend *)handle;
do_unclip(fe);
}
void gtk_draw_text(void *handle, int x, int y, int fonttype, int fontsize,
int align, int colour, const char *text)
static void gtk_draw_text(void *handle, int x, int y, int fonttype,
int fontsize, int align, int colour,
const char *text)
{
frontend *fe = (frontend *)handle;
int i;
@ -1184,43 +1220,45 @@ void gtk_draw_text(void *handle, int x, int y, int fonttype, int fontsize,
align_and_draw_text(fe, i, align, x, y, text);
}
void gtk_draw_rect(void *handle, int x, int y, int w, int h, int colour)
static void gtk_draw_rect(void *handle, int x, int y, int w, int h, int colour)
{
frontend *fe = (frontend *)handle;
fe->dr_api->set_colour(fe, colour);
do_draw_rect(fe, x, y, w, h);
}
void gtk_draw_line(void *handle, int x1, int y1, int x2, int y2, int colour)
static void gtk_draw_line(void *handle, int x1, int y1, int x2, int y2,
int colour)
{
frontend *fe = (frontend *)handle;
fe->dr_api->set_colour(fe, colour);
do_draw_line(fe, x1, y1, x2, y2);
}
void gtk_draw_thick_line(void *handle, float thickness,
float x1, float y1, float x2, float y2, int colour)
static void gtk_draw_thick_line(void *handle, float thickness,
float x1, float y1, float x2, float y2,
int colour)
{
frontend *fe = (frontend *)handle;
fe->dr_api->set_colour(fe, colour);
do_draw_thick_line(fe, thickness, x1, y1, x2, y2);
}
void gtk_draw_poly(void *handle, int *coords, int npoints,
int fillcolour, int outlinecolour)
static void gtk_draw_poly(void *handle, const int *coords, int npoints,
int fillcolour, int outlinecolour)
{
frontend *fe = (frontend *)handle;
do_draw_poly(fe, coords, npoints, fillcolour, outlinecolour);
}
void gtk_draw_circle(void *handle, int cx, int cy, int radius,
int fillcolour, int outlinecolour)
static void gtk_draw_circle(void *handle, int cx, int cy, int radius,
int fillcolour, int outlinecolour)
{
frontend *fe = (frontend *)handle;
do_draw_circle(fe, cx, cy, radius, fillcolour, outlinecolour);
}
blitter *gtk_blitter_new(void *handle, int w, int h)
static blitter *gtk_blitter_new(void *handle, int w, int h)
{
blitter *bl = snew(blitter);
setup_blitter(bl, w, h);
@ -1229,13 +1267,13 @@ blitter *gtk_blitter_new(void *handle, int w, int h)
return bl;
}
void gtk_blitter_free(void *handle, blitter *bl)
static void gtk_blitter_free(void *handle, blitter *bl)
{
teardown_blitter(bl);
sfree(bl);
}
void gtk_blitter_save(void *handle, blitter *bl, int x, int y)
static void gtk_blitter_save(void *handle, blitter *bl, int x, int y)
{
frontend *fe = (frontend *)handle;
do_blitter_save(fe, bl, x, y);
@ -1243,7 +1281,7 @@ void gtk_blitter_save(void *handle, blitter *bl, int x, int y)
bl->y = y;
}
void gtk_blitter_load(void *handle, blitter *bl, int x, int y)
static void gtk_blitter_load(void *handle, blitter *bl, int x, int y)
{
frontend *fe = (frontend *)handle;
if (x == BLITTER_FROMSAVED && y == BLITTER_FROMSAVED) {
@ -1253,7 +1291,7 @@ void gtk_blitter_load(void *handle, blitter *bl, int x, int y)
do_blitter_load(fe, bl, x, y);
}
void gtk_draw_update(void *handle, int x, int y, int w, int h)
static void gtk_draw_update(void *handle, int x, int y, int w, int h)
{
frontend *fe = (frontend *)handle;
if (fe->bbox_l > x ) fe->bbox_l = x ;
@ -1262,7 +1300,7 @@ void gtk_draw_update(void *handle, int x, int y, int w, int h)
if (fe->bbox_d < y+h) fe->bbox_d = y+h;
}
void gtk_end_draw(void *handle)
static void gtk_end_draw(void *handle)
{
frontend *fe = (frontend *)handle;
@ -1286,7 +1324,8 @@ void gtk_end_draw(void *handle)
}
#ifdef USE_PANGO
char *gtk_text_fallback(void *handle, const char *const *strings, int nstrings)
static char *gtk_text_fallback(void *handle, const char *const *strings,
int nstrings)
{
/*
* We assume Pango can cope with any UTF-8 likely to be emitted
@ -1297,18 +1336,18 @@ char *gtk_text_fallback(void *handle, const char *const *strings, int nstrings)
#endif
#ifdef USE_PRINTING
void gtk_begin_doc(void *handle, int pages)
static void gtk_begin_doc(void *handle, int pages)
{
frontend *fe = (frontend *)handle;
gtk_print_operation_set_n_pages(fe->printop, pages);
}
void gtk_begin_page(void *handle, int number)
static void gtk_begin_page(void *handle, int number)
{
}
void gtk_begin_puzzle(void *handle, float xm, float xc,
float ym, float yc, int pw, int ph, float wmm)
static void gtk_begin_puzzle(void *handle, float xm, float xc,
float ym, float yc, int pw, int ph, float wmm)
{
frontend *fe = (frontend *)handle;
double ppw, pph, pox, poy, dpmmx, dpmmy;
@ -1346,27 +1385,27 @@ void gtk_begin_puzzle(void *handle, float xm, float xc,
fe->hatchspace = 1.0 * pw / wmm;
}
void gtk_end_puzzle(void *handle)
static void gtk_end_puzzle(void *handle)
{
frontend *fe = (frontend *)handle;
cairo_restore(fe->cr);
}
void gtk_end_page(void *handle, int number)
static void gtk_end_page(void *handle, int number)
{
}
void gtk_end_doc(void *handle)
static void gtk_end_doc(void *handle)
{
}
void gtk_line_width(void *handle, float width)
static void gtk_line_width(void *handle, float width)
{
frontend *fe = (frontend *)handle;
cairo_set_line_width(fe->cr, width);
}
void gtk_line_dotted(void *handle, bool dotted)
static void gtk_line_dotted(void *handle, bool dotted)
{
frontend *fe = (frontend *)handle;
@ -1379,7 +1418,7 @@ void gtk_line_dotted(void *handle, bool dotted)
}
#endif /* USE_PRINTING */
const struct internal_drawing_api internal_drawing = {
static const struct internal_drawing_api internal_drawing = {
draw_set_colour,
#ifdef USE_CAIRO
do_draw_fill,
@ -1388,14 +1427,14 @@ const struct internal_drawing_api internal_drawing = {
};
#ifdef USE_CAIRO
const struct internal_drawing_api internal_printing = {
static const struct internal_drawing_api internal_printing = {
print_set_colour,
do_print_fill,
do_print_fill_preserve,
};
#endif
const struct drawing_api gtk_drawing = {
static const struct drawing_api gtk_drawing = {
gtk_draw_text,
gtk_draw_rect,
gtk_draw_line,
@ -1502,13 +1541,18 @@ static gint key_event(GtkWidget *widget, GdkEventKey *event, gpointer data)
keyval = '\177';
else if ((event->keyval == 'z' || event->keyval == 'Z') && shift && ctrl)
keyval = UI_REDO;
else if (event->keyval == GDK_KEY_ISO_Left_Tab) {
/* SHIFT+TAB gets special handling. Ref:
* https://mail.gnome.org/archives/gtk-list/1999-August/msg00145.html */
keyval = '\t' | MOD_SHFT;
}
else if (event->string[0] && !event->string[1])
keyval = (unsigned char)event->string[0];
else
keyval = -1;
if (keyval >= 0 &&
!midend_process_key(fe->me, 0, 0, keyval))
midend_process_key(fe->me, 0, 0, keyval) == PKR_QUIT)
gtk_widget_destroy(fe->window);
return true;
@ -1542,8 +1586,8 @@ static gint button_event(GtkWidget *widget, GdkEventButton *event,
if (event->type == GDK_BUTTON_RELEASE && button >= LEFT_BUTTON)
button += LEFT_RELEASE - LEFT_BUTTON;
if (!midend_process_key(fe->me, event->x - fe->ox,
event->y - fe->oy, button))
if (midend_process_key(fe->me, event->x - fe->ox,
event->y - fe->oy, button) == PKR_QUIT)
gtk_widget_destroy(fe->window);
return true;
@ -1567,8 +1611,8 @@ static gint motion_event(GtkWidget *widget, GdkEventMotion *event,
else
return false; /* don't even know what button! */
if (!midend_process_key(fe->me, event->x - fe->ox,
event->y - fe->oy, button))
if (midend_process_key(fe->me, event->x - fe->ox,
event->y - fe->oy, button) == PKR_QUIT)
gtk_widget_destroy(fe->window);
#if GTK_CHECK_VERSION(2,12,0)
gdk_event_request_motions(event);
@ -1649,7 +1693,7 @@ static void resize_puzzle_to_area(frontend *fe, int x, int y)
fe->w = x;
fe->h = y;
midend_size(fe->me, &x, &y, true);
midend_size(fe->me, &x, &y, true, 1.0);
fe->pw = x;
fe->ph = y;
#if GTK_CHECK_VERSION(3,10,0)
@ -1773,8 +1817,8 @@ static void align_label(GtkLabel *label, double x, double y)
}
#if GTK_CHECK_VERSION(3,0,0)
bool message_box(GtkWidget *parent, const char *title, const char *msg,
bool centre, int type)
static bool message_box(GtkWidget *parent, const char *title, const char *msg,
bool centre, int type)
{
GtkWidget *window;
gint ret;
@ -1807,7 +1851,7 @@ bool message_box(GtkWidget *parent, const char *title, const char *msg,
bool centre, int type)
{
GtkWidget *window, *hbox, *text, *button;
char *titles;
const char *titles;
int i, def, cancel;
window = gtk_dialog_new();
@ -1868,7 +1912,7 @@ bool message_box(GtkWidget *parent, const char *title, const char *msg,
}
#endif /* GTK_CHECK_VERSION(3,0,0) */
void error_box(GtkWidget *parent, const char *msg)
static void error_box(GtkWidget *parent, const char *msg)
{
message_box(parent, "Error", msg, false, MB_OK);
}
@ -1883,9 +1927,17 @@ static void config_ok_button_clicked(GtkButton *button, gpointer data)
if (err)
error_box(fe->cfgbox, err);
else {
if (fe->cfg_which == CFG_PREFS) {
char *prefs_err = save_prefs(fe);
if (prefs_err) {
error_box(fe->cfgbox, prefs_err);
sfree(prefs_err);
}
}
fe->cfgret = true;
gtk_widget_destroy(fe->cfgbox);
changed_preset(fe);
if (fe->cfg_which != CFG_PREFS)
changed_preset(fe);
}
}
@ -2163,7 +2215,7 @@ static void menu_key_event(GtkMenuItem *menuitem, gpointer data)
frontend *fe = (frontend *)data;
int key = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(menuitem),
"user-data"));
if (!midend_process_key(fe->me, 0, 0, key))
if (midend_process_key(fe->me, 0, 0, key) == PKR_QUIT)
gtk_widget_destroy(fe->window);
}
@ -2185,7 +2237,7 @@ static void get_size(frontend *fe, int *px, int *py)
*/
x = INT_MAX;
y = INT_MAX;
midend_size(fe->me, &x, &y, false);
midend_size(fe->me, &x, &y, false, 1.0);
*px = x;
*py = y;
}
@ -2362,8 +2414,8 @@ static void menu_preset_event(GtkMenuItem *menuitem, gpointer data)
midend_redraw(fe->me);
}
GdkAtom compound_text_atom, utf8_string_atom;
bool paste_initialised = false;
static GdkAtom compound_text_atom, utf8_string_atom;
static bool paste_initialised = false;
static void set_selection(frontend *fe, GdkAtom selection)
{
@ -2380,16 +2432,16 @@ static void set_selection(frontend *fe, GdkAtom selection)
* COMPOUND_TEXT or UTF8_STRING.
*/
if (gtk_selection_owner_set(fe->area, selection, CurrentTime)) {
gtk_selection_clear_targets(fe->area, selection);
gtk_selection_add_target(fe->area, selection,
if (gtk_selection_owner_set(fe->window, selection, CurrentTime)) {
gtk_selection_clear_targets(fe->window, selection);
gtk_selection_add_target(fe->window, selection,
GDK_SELECTION_TYPE_STRING, 1);
gtk_selection_add_target(fe->area, selection, compound_text_atom, 1);
gtk_selection_add_target(fe->area, selection, utf8_string_atom, 1);
gtk_selection_add_target(fe->window, selection, compound_text_atom, 1);
gtk_selection_add_target(fe->window, selection, utf8_string_atom, 1);
}
}
void write_clip(frontend *fe, char *data)
static void write_clip(frontend *fe, char *data)
{
if (fe->paste_data)
sfree(fe->paste_data);
@ -2401,16 +2453,16 @@ void write_clip(frontend *fe, char *data)
set_selection(fe, GDK_SELECTION_CLIPBOARD);
}
void selection_get(GtkWidget *widget, GtkSelectionData *seldata,
guint info, guint time_stamp, gpointer data)
static void selection_get(GtkWidget *widget, GtkSelectionData *seldata,
guint info, guint time_stamp, gpointer data)
{
frontend *fe = (frontend *)data;
gtk_selection_data_set(seldata, gtk_selection_data_get_target(seldata), 8,
fe->paste_data, fe->paste_data_len);
}
gint selection_clear(GtkWidget *widget, GdkEventSelection *seldata,
gpointer data)
static gint selection_clear(GtkWidget *widget, GdkEventSelection *seldata,
gpointer data)
{
frontend *fe = (frontend *)data;
@ -2508,7 +2560,7 @@ static char *file_selector(frontend *fe, const char *title, bool save)
#endif
#ifdef USE_PRINTING
GObject *create_print_widget(GtkPrintOperation *print, gpointer data)
static GObject *create_print_widget(GtkPrintOperation *print, gpointer data)
{
GtkLabel *count_label, *width_label, *height_label,
*scale_llabel, *scale_rlabel;
@ -2649,8 +2701,8 @@ GObject *create_print_widget(GtkPrintOperation *print, gpointer data)
return G_OBJECT(grid);
}
void apply_print_widget(GtkPrintOperation *print,
GtkWidget *widget, gpointer data)
static void apply_print_widget(GtkPrintOperation *print,
GtkWidget *widget, gpointer data)
{
frontend *fe = (frontend *)data;
@ -2673,8 +2725,8 @@ void apply_print_widget(GtkPrintOperation *print,
}
}
void print_begin(GtkPrintOperation *printop,
GtkPrintContext *context, gpointer data)
static void print_begin(GtkPrintOperation *printop,
GtkPrintContext *context, gpointer data)
{
frontend *fe = (frontend *)data;
midend *nme = NULL; /* non-interactive midend for bulk puzzle generation */
@ -2708,6 +2760,8 @@ void print_begin(GtkPrintOperation *printop,
thegame.free_params(params);
}
load_prefs(fe);
midend_new_game(nme);
err = midend_print_puzzle(nme, fe->doc, fe->printsolns);
}
@ -2725,16 +2779,16 @@ void print_begin(GtkPrintOperation *printop,
document_begin(fe->doc, fe->print_dr);
}
void draw_page(GtkPrintOperation *printop,
GtkPrintContext *context,
gint page_nr, gpointer data)
static void draw_page(GtkPrintOperation *printop,
GtkPrintContext *context,
gint page_nr, gpointer data)
{
frontend *fe = (frontend *)data;
document_print_page(fe->doc, fe->print_dr, page_nr);
}
void print_end(GtkPrintOperation *printop,
GtkPrintContext *context, gpointer data)
static void print_end(GtkPrintOperation *printop,
GtkPrintContext *context, gpointer data)
{
frontend *fe = (frontend *)data;
@ -2919,6 +2973,206 @@ static void menu_load_event(GtkMenuItem *menuitem, gpointer data)
}
}
static char *prefs_dir(void)
{
const char *var;
if ((var = getenv("SGT_PUZZLES_DIR")) != NULL)
return dupstr(var);
if ((var = getenv("XDG_CONFIG_HOME")) != NULL) {
size_t size = strlen(var) + 20;
char *dir = snewn(size, char);
sprintf(dir, "%s/sgt-puzzles", var);
return dir;
}
if ((var = getenv("HOME")) != NULL) {
size_t size = strlen(var) + 32;
char *dir = snewn(size, char);
sprintf(dir, "%s/.config/sgt-puzzles", var);
return dir;
}
return NULL;
}
static char *prefs_path_general(const game *game, const char *suffix)
{
char *dir, *path;
dir = prefs_dir();
if (!dir)
return NULL;
path = make_prefs_path(dir, "/", game, suffix);
sfree(dir);
return path;
}
static char *prefs_path(const game *game)
{
return prefs_path_general(game, ".conf");
}
static char *prefs_tmp_path(const game *game)
{
return prefs_path_general(game, ".conf.tmp");
}
static void load_prefs(frontend *fe)
{
const game *game = midend_which_game(fe->me);
char *path = prefs_path(game);
if (!path)
return;
FILE *fp = fopen(path, "r");
if (!fp)
return;
const char *err = midend_load_prefs(fe->me, savefile_read, fp);
fclose(fp);
if (err)
fprintf(stderr, "Unable to load preferences file %s:\n%s\n",
path, err);
sfree(path);
}
static char *save_prefs(frontend *fe)
{
const game *game = midend_which_game(fe->me);
char *dir_path = prefs_dir();
char *file_path = prefs_path(game);
char *tmp_path = prefs_tmp_path(game);
struct savefile_write_ctx wctx[1];
int fd;
bool cleanup_dir = false, cleanup_tmpfile = false;
char *err = NULL;
if (!dir_path || !file_path || !tmp_path) {
sprintf(err = snewn(256, char),
"Unable to save preferences:\n"
"Could not determine pathname for configuration files");
goto out;
}
if (mkdir(dir_path, 0777) < 0) {
/* Ignore errors while trying to make the directory. It may
* well already exist, and even if we got some error code
* other than EEXIST, it's still worth at least _trying_ to
* make the file inside it, and see if that goes wrong. */
} else {
cleanup_dir = true;
}
fd = open(tmp_path, O_CREAT | O_WRONLY | O_TRUNC | O_EXCL, 0666);
if (fd < 0) {
const char *os_err = strerror(errno);
sprintf(err = snewn(256 + strlen(tmp_path) + strlen(os_err), char),
"Unable to save preferences:\n"
"Unable to create file '%s': %s", tmp_path, os_err);
goto out;
} else {
cleanup_tmpfile = true;
}
wctx->error = 0;
wctx->fp = fdopen(fd, "w");
midend_save_prefs(fe->me, savefile_write, wctx);
fclose(wctx->fp);
if (wctx->error) {
const char *os_err = strerror(wctx->error);
sprintf(err = snewn(80 + strlen(tmp_path) + strlen(os_err), char),
"Unable to write file '%s': %s", tmp_path, os_err);
goto out;
}
if (rename(tmp_path, file_path) < 0) {
const char *os_err = strerror(errno);
sprintf(err = snewn(256 + strlen(tmp_path) + strlen(file_path) +
strlen(os_err), char),
"Unable to save preferences:\n"
"Unable to rename '%s' to '%s': %s", tmp_path, file_path,
os_err);
goto out;
} else {
cleanup_dir = false;
cleanup_tmpfile = false;
}
out:
if (cleanup_tmpfile) {
if (unlink(tmp_path) < 0) { /* can't do anything about this */ }
}
if (cleanup_dir) {
if (rmdir(dir_path) < 0) { /* can't do anything about this */ }
}
sfree(dir_path);
sfree(file_path);
sfree(tmp_path);
return err;
}
static bool delete_prefs(const game *game, char **msg)
{
char *dir_path = prefs_dir();
char *file_path = prefs_path(game);
char *tmp_path = prefs_tmp_path(game);
char *msgs[3];
int i, len, nmsgs = 0;
char *p;
bool ok = true;
if (unlink(file_path) == 0) {
sprintf(msgs[nmsgs++] = snewn(256 + strlen(file_path), char),
"Removed preferences file %s\n", file_path);
} else if (errno != ENOENT) {
const char *os_err = strerror(errno);
sprintf(msgs[nmsgs++] = snewn(256 + strlen(file_path) + strlen(os_err),
char),
"Failed to remove preferences file %s: %s\n",
file_path, os_err);
ok = false;
}
if (unlink(tmp_path) == 0) {
sprintf(msgs[nmsgs++] = snewn(256 + strlen(tmp_path), char),
"Removed temporary file %s\n", tmp_path);
} else if (errno != ENOENT) {
const char *os_err = strerror(errno);
sprintf(msgs[nmsgs++] = snewn(256 + strlen(tmp_path) + strlen(os_err),
char),
"Failed to remove temporary file %s: %s\n", tmp_path, os_err);
ok = false;
}
if (rmdir(dir_path) == 0) {
sprintf(msgs[nmsgs++] = snewn(256 + strlen(dir_path), char),
"Removed empty preferences directory %s\n", dir_path);
} else if (errno != ENOENT && errno != ENOTEMPTY) {
const char *os_err = strerror(errno);
sprintf(msgs[nmsgs++] = snewn(256 + strlen(dir_path) + strlen(os_err),
char),
"Failed to remove preferences directory %s: %s\n",
dir_path, os_err);
ok = false;
}
for (i = len = 0; i < nmsgs; i++)
len += strlen(msgs[i]);
*msg = snewn(len + 1, char);
p = *msg;
for (i = len = 0; i < nmsgs; i++) {
size_t len = strlen(msgs[i]);
memcpy(p, msgs[i], len);
p += len;
sfree(msgs[i]);
}
*p = '\0';
sfree(dir_path);
sfree(file_path);
sfree(tmp_path);
return ok;
}
#ifdef USE_PRINTING
static void menu_print_event(GtkMenuItem *menuitem, gpointer data)
{
@ -2960,11 +3214,85 @@ static void menu_config_event(GtkMenuItem *menuitem, gpointer data)
if (!get_config(fe, which))
return;
midend_new_game(fe->me);
if (which != CFG_PREFS)
midend_new_game(fe->me);
resize_fe(fe);
midend_redraw(fe->me);
}
#ifndef HELP_BROWSER_PATH
#define HELP_BROWSER_PATH "xdg-open:sensible-browser:$BROWSER"
#endif
static bool try_show_help(const char *browser, const char *help_name)
{
const char *argv[3] = { browser, help_name, NULL };
return g_spawn_async(NULL, (char **)argv, NULL,
G_SPAWN_SEARCH_PATH,
NULL, NULL, NULL, NULL);
}
static void show_help(frontend *fe, const char *topic)
{
char *path = dupstr(HELP_BROWSER_PATH);
char *path_entry;
char *help_name;
size_t help_name_size;
bool succeeded = true;
help_name_size = strlen(HELP_DIR) + 4 + strlen(topic) + 6;
help_name = snewn(help_name_size, char);
sprintf(help_name, "%s/en/%s.html",
HELP_DIR, topic);
if (access(help_name, R_OK)) {
error_box(fe->window, "Help file is not installed");
sfree(path);
sfree(help_name);
return;
}
path_entry = path;
for (;;) {
size_t len;
bool last;
len = strcspn(path_entry, ":");
last = path_entry[len] == 0;
path_entry[len] = 0;
if (path_entry[0] == '$') {
const char *command = getenv(path_entry + 1);
if (command)
succeeded = try_show_help(command, help_name);
} else {
succeeded = try_show_help(path_entry, help_name);
}
if (last || succeeded)
break;
path_entry += len + 1;
}
if (!succeeded)
error_box(fe->window, "Failed to start a help browser");
sfree(path);
sfree(help_name);
}
static void menu_help_contents_event(GtkMenuItem *menuitem, gpointer data)
{
show_help((frontend *)data, "index");
}
static void menu_help_specific_event(GtkMenuItem *menuitem, gpointer data)
{
show_help((frontend *)data, thegame.htmlhelp_topic);
}
static void menu_about_event(GtkMenuItem *menuitem, gpointer data)
{
frontend *fe = (frontend *)data;
@ -2975,12 +3303,9 @@ static void menu_about_event(GtkMenuItem *menuitem, gpointer data)
"version", ver, \
"comments", "Part of Simon Tatham's Portable Puzzle Collection"
extern char *const *const xpm_icons[];
extern const int n_xpm_icons;
if (n_xpm_icons) {
GdkPixbuf *icon = gdk_pixbuf_new_from_xpm_data
((const gchar **)xpm_icons[n_xpm_icons-1]);
((const gchar **)xpm_icons[0]);
gtk_show_about_dialog
(GTK_WINDOW(fe->window),
@ -3092,8 +3417,6 @@ static frontend *new_window(
GList *iconlist;
int x, y, n;
char errbuf[1024];
extern char *const *const xpm_icons[];
extern const int n_xpm_icons;
struct preset_menu *preset_menu;
fe = snew(frontend);
@ -3113,6 +3436,7 @@ static frontend *new_window(
fe->timer_id = -1;
fe->me = midend_new(fe, &thegame, &gtk_drawing, fe);
load_prefs(fe);
fe->dr_api = &internal_drawing;
@ -3376,6 +3700,16 @@ static frontend *new_window(
G_CALLBACK(menu_solve_event), fe);
gtk_widget_show(menuitem);
}
add_menu_separator(GTK_CONTAINER(menu));
menuitem = gtk_menu_item_new_with_label("Preferences...");
gtk_container_add(GTK_CONTAINER(menu), menuitem);
g_object_set_data(G_OBJECT(menuitem), "user-data",
GINT_TO_POINTER(CFG_PREFS));
g_signal_connect(G_OBJECT(menuitem), "activate",
G_CALLBACK(menu_config_event), fe);
gtk_widget_show(menuitem);
add_menu_separator(GTK_CONTAINER(menu));
add_menu_ui_item(fe, GTK_CONTAINER(menu), "Exit", UI_QUIT, 'q', 0);
@ -3386,6 +3720,25 @@ static frontend *new_window(
menu = gtk_menu_new();
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu);
menuitem = gtk_menu_item_new_with_label("Contents");
gtk_container_add(GTK_CONTAINER(menu), menuitem);
g_signal_connect(G_OBJECT(menuitem), "activate",
G_CALLBACK(menu_help_contents_event), fe);
gtk_widget_show(menuitem);
if (thegame.htmlhelp_topic) {
char *item;
assert(thegame.name);
item = snewn(9 + strlen(thegame.name), char);
sprintf(item, "Help on %s", thegame.name);
menuitem = gtk_menu_item_new_with_label(item);
sfree(item);
gtk_container_add(GTK_CONTAINER(menu), menuitem);
g_signal_connect(G_OBJECT(menuitem), "activate",
G_CALLBACK(menu_help_specific_event), fe);
gtk_widget_show(menuitem);
}
menuitem = gtk_menu_item_new_with_label("About");
gtk_container_add(GTK_CONTAINER(menu), menuitem);
g_signal_connect(G_OBJECT(menuitem), "activate",
@ -3503,9 +3856,9 @@ static frontend *new_window(
G_CALLBACK(button_event), fe);
g_signal_connect(G_OBJECT(fe->area), "motion_notify_event",
G_CALLBACK(motion_event), fe);
g_signal_connect(G_OBJECT(fe->area), "selection_get",
g_signal_connect(G_OBJECT(fe->window), "selection_get",
G_CALLBACK(selection_get), fe);
g_signal_connect(G_OBJECT(fe->area), "selection_clear_event",
g_signal_connect(G_OBJECT(fe->window), "selection_clear_event",
G_CALLBACK(selection_clear), fe);
#if GTK_CHECK_VERSION(3,0,0)
g_signal_connect(G_OBJECT(fe->area), "draw",
@ -3534,7 +3887,7 @@ static frontend *new_window(
if (n_xpm_icons) {
gtk_window_set_icon(GTK_WINDOW(fe->window),
gdk_pixbuf_new_from_xpm_data
((const gchar **)xpm_icons[0]));
((const gchar **)xpm_icons[n_xpm_icons-1]));
iconlist = NULL;
for (n = 0; n < n_xpm_icons; n++) {
@ -3578,10 +3931,10 @@ static void list_presets_from_menu(struct preset_menu *menu)
int main(int argc, char **argv)
{
char *pname = argv[0];
char *error;
int ngenerate = 0, px = 1, py = 1;
bool print = false;
bool time_generation = false, test_solve = false, list_presets = false;
bool delete_prefs_action = false;
bool soln = false, colour = false;
float scale = 1.0F;
float redo_proportion = 0.0F;
@ -3640,6 +3993,9 @@ int main(int argc, char **argv)
test_solve = true;
} else if (doing_opts && !strcmp(p, "--list-presets")) {
list_presets = true;
} else if (doing_opts && (!strcmp(p, "--delete-prefs") ||
!strcmp(p, "--delete-preferences"))) {
delete_prefs_action = true;
} else if (doing_opts && !strcmp(p, "--save")) {
if (--ac > 0) {
savefile = *++av;
@ -3988,9 +4344,20 @@ int main(int argc, char **argv)
list_presets_from_menu(menu);
midend_free(me);
return 0;
} else if (delete_prefs_action) {
char *msg = NULL;
bool ok = delete_prefs(&thegame, &msg);
if (!ok) {
fputs(msg, stderr);
return 1;
} else {
fputs(msg, stdout);
return 0;
}
} else {
frontend *fe;
bool headless = screenshot_file != NULL;
char *error = NULL;
if (!headless)
gtk_init(&argc, &argv);
@ -3999,6 +4366,7 @@ int main(int argc, char **argv)
if (!fe) {
fprintf(stderr, "%s: %s\n", pname, error);
sfree(error);
return 1;
}
@ -4014,7 +4382,7 @@ int main(int argc, char **argv)
if (redo_proportion) {
/* Start a redo. */
midend_process_key(fe->me, 0, 0, 'r');
midend_process_key(fe->me, 0, 0, 'r');
/* And freeze the timer at the specified position. */
midend_freeze_timer(fe->me, redo_proportion);
}

View file

@ -0,0 +1,7 @@
#ifndef PUZZLES_GTK_H
#define PUZZLES_GTK_H
extern const char *const *const xpm_icons[];
extern const int n_xpm_icons;
#endif /* PUZZLES_GTK_H */

View file

@ -1,19 +0,0 @@
# -*- makefile -*-
guess : [X] GTK COMMON guess guess-icon|no-icon
guess : [G] WINDOWS COMMON guess guess.res|noicon.res
ALL += guess[COMBINED]
!begin am gtk
GAMES += guess
!end
!begin >list.c
A(guess) \
!end
!begin >gamedesc.txt
guess:guess.exe:Guess:Combination-guessing puzzle:Guess the hidden combination of colours.
!end

View file

@ -7,7 +7,11 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -35,6 +39,11 @@ typedef struct pegrow {
int *pegs; /* 0 is 'empty' */
int *feedback; /* may well be unused */
} *pegrow;
/* Pegs can have these flags OR'ed into them. */
#define PEG_CURSOR 0x1000
#define PEG_HOLD 0x2000
#define PEG_LABELLED 0x4000
#define PEG_FLAGS (PEG_CURSOR | PEG_HOLD | PEG_LABELLED)
struct game_state {
game_params params;
@ -88,13 +97,7 @@ static bool game_fetch_preset(int i, char **name, game_params **params)
return false;
*name = dupstr(guess_presets[i].name);
/*
* get round annoying const issues
*/
{
game_params tmp = guess_presets[i].params;
*params = dup_params(&tmp);
}
*params = dup_params(&guess_presets[i].params);
return true;
}
@ -365,16 +368,6 @@ static char *solve_game(const game_state *state, const game_state *currstate,
return dupstr("S");
}
static bool game_can_format_as_text_now(const game_params *params)
{
return true;
}
static char *game_text_format(const game_state *state)
{
return NULL;
}
static bool is_markable(const game_params *params, pegrow pegs)
{
int i, nset = 0, nrequired;
@ -386,6 +379,7 @@ static bool is_markable(const game_params *params, pegrow pegs)
for (i = 0; i < params->npegs; i++) {
int c = pegs->pegs[i];
if (c > 0) {
assert(c <= params->ncolours);
colcount->pegs[c-1]++;
nset++;
}
@ -414,7 +408,7 @@ struct game_ui {
int drag_col, drag_x, drag_y; /* x and y are *center* of peg! */
int drag_opeg; /* peg index, if dragged from a peg (from current guess), otherwise -1 */
bool show_labels; /* label the colours with letters */
bool show_labels; /* label the colours with numbers */
pegrow hint;
};
@ -422,19 +416,45 @@ static game_ui *new_ui(const game_state *state)
{
game_ui *ui = snew(game_ui);
memset(ui, 0, sizeof(game_ui));
ui->params = state->params; /* structure copy */
ui->curr_pegs = new_pegrow(state->params.npegs);
ui->holds = snewn(state->params.npegs, bool);
memset(ui->holds, 0, sizeof(bool)*state->params.npegs);
if (state != NULL) {
ui->params = state->params; /* structure copy */
ui->curr_pegs = new_pegrow(state->params.npegs);
ui->holds = snewn(state->params.npegs, bool);
memset(ui->holds, 0, sizeof(bool)*state->params.npegs);
}
ui->display_cur = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->drag_opeg = -1;
return ui;
}
static config_item *get_prefs(game_ui *ui)
{
config_item *ret;
ret = snewn(2, config_item);
ret[0].name = "Label colours with numbers";
ret[0].kw = "show-labels";
ret[0].type = C_BOOLEAN;
ret[0].u.boolean.bval = ui->show_labels;
ret[1].name = NULL;
ret[1].type = C_END;
return ret;
}
static void set_prefs(game_ui *ui, const config_item *cfg)
{
ui->show_labels = cfg[0].u.boolean.bval;
}
static void free_ui(game_ui *ui)
{
if (ui->hint)
free_pegrow(ui->hint);
free_pegrow(ui->curr_pegs);
if (ui->curr_pegs)
free_pegrow(ui->curr_pegs);
sfree(ui->holds);
sfree(ui);
}
@ -462,12 +482,16 @@ static char *encode_ui(const game_ui *ui)
return sresize(ret, p - ret, char);
}
static void decode_ui(game_ui *ui, const char *encoding)
static void decode_ui(game_ui *ui, const char *encoding,
const game_state *state)
{
int i;
const char *p = encoding;
for (i = 0; i < ui->curr_pegs->npegs; i++) {
ui->curr_pegs->pegs[i] = atoi(p);
if (ui->curr_pegs->pegs[i] < 0 ||
ui->curr_pegs->pegs[i] > ui->params.ncolours)
ui->curr_pegs->pegs[i] = 0; /* Remove invalid pegs. */
while (*p && isdigit((unsigned char)*p)) p++;
if (*p == '_') {
/* NB: old versions didn't store holds */
@ -507,7 +531,20 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
ui->markable = is_markable(&newstate->params, ui->curr_pegs);
/* Clean up cursor position */
if (!ui->markable && ui->peg_cur == newstate->solution->npegs)
ui->peg_cur--;
ui->peg_cur = 0;
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (state->solved) return "";
if (button == CURSOR_SELECT) {
if (ui->peg_cur == state->params.npegs) return "Submit";
return "Place";
}
if (button == CURSOR_SELECT2 && ui->peg_cur != state->params.npegs)
return "Hold";
return "";
}
#define PEGSZ (ds->pegsz)
@ -700,7 +737,11 @@ static void compute_hint(const game_state *state, game_ui *ui)
for (j = 0; j < state->params.npegs; ++j)
if (state->guesses[i]->pegs[j] > maxcolour)
maxcolour = state->guesses[i]->pegs[j];
maxcolour = min(maxcolour + 1, state->params.ncolours);
if (state->params.allow_multiple)
maxcolour = min(maxcolour + 1, state->params.ncolours);
else
maxcolour = min(maxcolour + state->params.npegs,
state->params.ncolours);
increase_mincolour:
for (i = 0; i < state->next_go; ++i) {
@ -722,6 +763,7 @@ increase_mincolour:
}
while (ui->hint->pegs[0] <= state->params.ncolours) {
if (!is_markable(&state->params, ui->hint)) goto increment_pegrow;
for (i = 0; i < state->next_go; ++i) {
mark_pegs(ui->hint, state->guesses[i], maxcolour);
for (j = 0; j < state->params.npegs; ++j)
@ -777,7 +819,7 @@ static char *interpret_move(const game_state *from, game_ui *ui,
*/
if (button == 'l' || button == 'L') {
ui->show_labels = !ui->show_labels;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (from->solved) return NULL;
@ -834,13 +876,13 @@ static char *interpret_move(const game_state *from, game_ui *ui,
ui->drag_y = y;
debug(("Start dragging, col = %d, (%d,%d)",
ui->drag_col, ui->drag_x, ui->drag_y));
ret = UI_UPDATE;
ret = MOVE_UI_UPDATE;
}
} else if (button == LEFT_DRAG && ui->drag_col) {
ui->drag_x = x;
ui->drag_y = y;
debug(("Keep dragging, (%d,%d)", ui->drag_x, ui->drag_y));
ret = UI_UPDATE;
ret = MOVE_UI_UPDATE;
} else if (button == LEFT_RELEASE && ui->drag_col) {
if (over_guess > -1) {
debug(("Dropping colour %d onto guess peg %d",
@ -857,13 +899,13 @@ static char *interpret_move(const game_state *from, game_ui *ui,
ui->drag_opeg = -1;
ui->display_cur = false;
debug(("Stop dragging."));
ret = UI_UPDATE;
ret = MOVE_UI_UPDATE;
} else if (button == RIGHT_BUTTON) {
if (over_guess > -1) {
/* we use ths feedback in the game_ui to signify
* 'carry this peg to the next guess as well'. */
ui->holds[over_guess] ^= 1;
ret = UI_UPDATE;
ret = MOVE_UI_UPDATE;
}
} else if (button == LEFT_RELEASE && over_hint && ui->markable) {
/* NB this won't trigger if on the end of a drag; that's on
@ -872,44 +914,47 @@ static char *interpret_move(const game_state *from, game_ui *ui,
}
/* keyboard input */
if (button == CURSOR_UP || button == CURSOR_DOWN) {
ui->display_cur = true;
if (button == CURSOR_DOWN && (ui->colour_cur+1) < from->params.ncolours)
ui->colour_cur++;
if (button == CURSOR_UP && ui->colour_cur > 0)
ui->colour_cur--;
ret = UI_UPDATE;
} else if (button == 'h' || button == 'H' || button == '?') {
compute_hint(from, ui);
ret = UI_UPDATE;
} else if (button == CURSOR_LEFT || button == CURSOR_RIGHT) {
if (IS_CURSOR_MOVE(button)) {
int maxcur = from->params.npegs;
if (ui->markable) maxcur++;
ui->display_cur = true;
if (button == CURSOR_RIGHT && (ui->peg_cur+1) < maxcur)
ui->peg_cur++;
if (button == CURSOR_LEFT && ui->peg_cur > 0)
ui->peg_cur--;
ret = UI_UPDATE;
} else if (IS_CURSOR_SELECT(button)) {
ret = move_cursor(button, &ui->peg_cur, &ui->colour_cur,
maxcur, from->params.ncolours,
false, &ui->display_cur);
} else if (button == 'h' || button == 'H' || button == '?') {
compute_hint(from, ui);
ret = MOVE_UI_UPDATE;
} else if (button == CURSOR_SELECT) {
ui->display_cur = true;
if (ui->peg_cur == from->params.npegs) {
ret = encode_move(from, ui);
} else {
set_peg(&from->params, ui, ui->peg_cur, ui->colour_cur+1);
ret = UI_UPDATE;
ret = MOVE_UI_UPDATE;
}
} else if (button == 'D' || button == 'd' || button == '\b') {
} else if (((button >= '1' && button <= '0' + from->params.ncolours) ||
(button == '0' && from->params.ncolours == 10)) &&
ui->peg_cur < from->params.npegs) {
ui->display_cur = true;
set_peg(&from->params, ui, ui->peg_cur, 0);
ret = UI_UPDATE;
/* Number keys insert a peg and advance the cursor. */
set_peg(&from->params, ui, ui->peg_cur,
button == '0' ? 10 : button - '0');
if (ui->peg_cur + 1 < from->params.npegs + ui->markable)
ui->peg_cur++;
ret = MOVE_UI_UPDATE;
} else if (button == 'D' || button == 'd' || button == '\b') {
if (!ui->display_cur || ui->curr_pegs->pegs[ui->peg_cur] != 0) {
ui->display_cur = true;
set_peg(&from->params, ui, ui->peg_cur, 0);
ret = MOVE_UI_UPDATE;
} else
ret = MOVE_NO_EFFECT;
} else if (button == CURSOR_SELECT2) {
if (ui->peg_cur == from->params.npegs)
return NULL;
ui->display_cur = true;
ui->holds[ui->peg_cur] ^= 1;
ret = UI_UPDATE;
ret = MOVE_UI_UPDATE;
}
return ret;
}
@ -925,6 +970,8 @@ static game_state *execute_move(const game_state *from, const char *move)
ret->solved = -1;
return ret;
} else if (move[0] == 'G') {
/* No guesses are allowed once the game is solved. */
if (from->solved) return NULL;
p = move+1;
ret = dup_game(from);
@ -975,7 +1022,7 @@ static game_state *execute_move(const game_state *from, const char *move)
#define BORDER 0.5
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
double hmul, vmul_c, vmul_g, vmul;
int hintw = (params->npegs+1)/2;
@ -1019,7 +1066,8 @@ static void game_set_size(drawing *dr, game_drawstate *ds,
guessh = ((ds->pegsz + ds->gapsz) * params->nguesses); /* guesses */
guessh += ds->gapsz + ds->pegsz; /* solution */
game_compute_size(params, tilesize, &ds->w, &ds->h);
/* We know we don't need anything from the game_ui we haven't got */
game_compute_size(params, tilesize, NULL, &ds->w, &ds->h);
ds->colx = ds->border;
ds->coly = (ds->h - colh) / 2;
@ -1196,7 +1244,7 @@ static void draw_peg(drawing *dr, game_drawstate *ds, int cx, int cy,
if (labelled && col) {
char buf[2];
buf[0] = 'a'-1 + col;
buf[0] = '0' + (col % 10);
buf[1] = '\0';
draw_text(dr, cx+PEGRAD, cy+PEGRAD, FONT_VARIABLE, PEGRAD,
ALIGN_HCENTRE|ALIGN_VCENTRE, COL_FRAME, buf);
@ -1233,23 +1281,25 @@ static void guess_redraw(drawing *dr, game_drawstate *ds, int guess,
for (i = 0; i < dest->npegs; i++) {
scol = src ? src->pegs[i] : 0;
if (i == cur_col)
scol |= 0x1000;
scol |= PEG_CURSOR;
if (holds && holds[i])
scol |= 0x2000;
scol |= PEG_HOLD;
if (labelled)
scol |= 0x4000;
scol |= PEG_LABELLED;
if ((dest->pegs[i] != scol) || force) {
draw_peg(dr, ds, rowx + PEGOFF * i, rowy, false, labelled,
scol &~ 0x7000);
scol &~ PEG_FLAGS);
if (scol & PEG_CURSOR)
draw_cursor(dr, ds, rowx + PEGOFF * i, rowy);
/*
* Hold marker.
*/
draw_rect(dr, rowx + PEGOFF * i, rowy + PEGSZ + ds->gapsz/2,
PEGSZ, 2, (scol & 0x2000 ? COL_HOLD : COL_BACKGROUND));
draw_update(dr, rowx + PEGOFF * i, rowy + PEGSZ + ds->gapsz/2,
PEGSZ, 2);
if (scol & 0x1000)
draw_cursor(dr, ds, rowx + PEGOFF * i, rowy);
if (scol & PEG_HOLD) {
draw_rect(dr, rowx + PEGOFF * i,
rowy + PEGSZ + ds->gapsz/2 - 2, PEGSZ, 2, COL_HOLD);
}
draw_update(dr, rowx + PEGOFF * i,
rowy + PEGSZ + ds->gapsz/2 - 2, PEGSZ, 2);
}
dest->pegs[i] = scol;
}
@ -1276,9 +1326,9 @@ static void hint_redraw(drawing *dr, game_drawstate *ds, int guess,
for (i = 0; i < dest->npegs; i++) {
scol = src ? src->feedback[i] : 0;
if (i == 0 && cursor)
scol |= 0x1000;
scol |= PEG_CURSOR;
if (i == 0 && markable)
scol |= 0x2000;
scol |= PEG_HOLD;
if ((scol != dest->feedback[i]) || force) {
need_redraw = true;
}
@ -1349,7 +1399,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
new_move = (state->next_go != ds->next_go) || !ds->started;
if (!ds->started) {
draw_rect(dr, 0, 0, ds->w, ds->h, COL_BACKGROUND);
draw_rect(dr, SOLN_OX, SOLN_OY - ds->gapsz - 1, SOLN_W, 2, COL_FRAME);
draw_update(dr, 0, 0, ds->w, ds->h);
}
@ -1364,19 +1413,18 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
for (i = 0; i < state->params.ncolours; i++) {
int val = i+1;
if (ui->display_cur && ui->colour_cur == i)
val |= 0x1000;
val |= PEG_CURSOR;
if (ui->show_labels)
val |= 0x2000;
val |= PEG_HOLD;
if (ds->colours->pegs[i] != val) {
draw_peg(dr, ds, COL_X(i), COL_Y(i), false, ui->show_labels, i+1);
if (val & 0x1000)
if (val & PEG_CURSOR)
draw_cursor(dr, ds, COL_X(i), COL_Y(i));
ds->colours->pegs[i] = val;
}
}
/* draw the guesses (so far) and the hints
* (in reverse order to avoid trampling holds, and postponing the
/* draw the guesses (so far) and the hints (postponing the
* next_go'th to not overrender the top of the circular cursor) */
for (i = state->params.nguesses - 1; i >= 0; i--) {
if (i < state->next_go || state->solved) {
@ -1473,19 +1521,6 @@ static int game_status(const game_state *state)
return state->solved;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
{
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
{
}
#ifdef COMBINED
#define thegame guess
#endif
@ -1506,13 +1541,15 @@ const struct game thegame = {
dup_game,
free_game,
true, solve_game,
false, game_can_format_as_text_now, game_text_format,
false, NULL, NULL, /* can_format_as_text_now, text_format */
get_prefs, set_prefs,
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PEG_PREFER_SZ, game_compute_size, game_set_size,
@ -1524,9 +1561,9 @@ const struct game thegame = {
game_flash_length,
game_get_cursor_location,
game_status,
false, false, game_print_size, game_print,
false, false, NULL, NULL, /* print_size, print */
false, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

View file

@ -0,0 +1,271 @@
/*
* Internal definitions for the hat.c tiling generator, shared between
* hat.c itself and hat-test.c.
*/
#include "puzzles.h"
/*
* Coordinate system:
*
* The output of this code lives on the tiling known to grid.c as
* 'Kites', which can be viewed as a tiling of hexagons each of which
* is subdivided into six kites sharing their pointy vertex, or
* (equivalently) a tiling of equilateral triangles each subdivided
* into three kits sharing their blunt vertex.
*
* We express coordinates in this system relative to the basis (1, r)
* where r = (1 + sqrt(3)i) / 2 is a primitive 6th root of unity. This
* gives us a system in which two integer coordinates can address any
* grid point, provided we scale up so that the side length of the
* equilateral triangles in the tiling is 6.
*/
typedef struct Point {
int x, y; /* represents x + yr */
} Point;
static inline Point pointscale(int scale, Point a)
{
Point r = { scale * a.x, scale * a.y };
return r;
}
static inline Point pointadd(Point a, Point b)
{
Point r = { a.x + b.x, a.y + b.y };
return r;
}
/*
* We identify a single kite by the coordinates of its four vertices.
* This allows us to construct the coordinates of an adjacent kite by
* taking affine transformations of the original kite's vertices.
*
* This is a useful way to do it because it means that if you reflect
* the kite (by swapping its left and right vertices) then these
* transformations also perform in a reflected way. This will be
* useful in the code below that outputs the coordinates of each hat,
* because this way it can work by walking around its 8 kites using a
* fixed set of steps, and if the hat is reflected, then we just
* reflect the starting kite before doing that, and everything still
* works.
*/
typedef struct Kite {
Point centre, left, right, outer;
} Kite;
static inline Kite kite_left(Kite k)
{
Kite r;
r.centre = k.centre;
r.right = k.left;
r.outer = pointadd(pointscale(2, k.left), pointscale(-1, k.outer));
r.left = pointadd(pointadd(k.centre, k.left), pointscale(-1, k.right));
return r;
}
static inline Kite kite_right(Kite k)
{
Kite r;
r.centre = k.centre;
r.left = k.right;
r.outer = pointadd(pointscale(2, k.right), pointscale(-1, k.outer));
r.right = pointadd(pointadd(k.centre, k.right), pointscale(-1, k.left));
return r;
}
static inline Kite kite_forward_left(Kite k)
{
Kite r;
r.outer = k.outer;
r.right = k.left;
r.centre = pointadd(pointscale(2, k.left), pointscale(-1, k.centre));
r.left = pointadd(pointadd(k.right, k.left), pointscale(-1, k.centre));
return r;
}
static inline Kite kite_forward_right(Kite k)
{
Kite r;
r.outer = k.outer;
r.left = k.right;
r.centre = pointadd(pointscale(2, k.right), pointscale(-1, k.centre));
r.right = pointadd(pointadd(k.left, k.right), pointscale(-1, k.centre));
return r;
}
typedef enum KiteStep { KS_LEFT, KS_RIGHT, KS_F_LEFT, KS_F_RIGHT } KiteStep;
static inline Kite kite_step(Kite k, KiteStep step)
{
switch (step) {
case KS_LEFT: return kite_left(k);
case KS_RIGHT: return kite_right(k);
case KS_F_LEFT: return kite_forward_left(k);
default /* case KS_F_RIGHT */: return kite_forward_right(k);
}
}
/*
* Functiond to enumerate the kites in a rectangular region, in a
* serpentine-raster fashion so that every kite delivered shares an
* edge with a recent previous one.
*/
#define KE_NKEEP 3
typedef struct KiteEnum {
/* Fields private to the enumerator */
int state;
int x, y, w, h;
unsigned curr_index;
/* Fields the client can legitimately read out */
Kite *curr;
Kite recent[KE_NKEEP];
unsigned last_index;
KiteStep last_step; /* step that got curr from recent[last_index] */
} KiteEnum;
void hat_kiteenum_first(KiteEnum *s, int w, int h);
bool hat_kiteenum_next(KiteEnum *s);
/*
* Assorted useful definitions.
*/
typedef enum TileType { TT_H, TT_T, TT_P, TT_F, TT_KITE, TT_HAT } TileType;
static const char tilechars[] = "HTPF";
#define HAT_KITES 8 /* number of kites in a hat */
#define MT_MAXEXPAND 13 /* largest number of metatiles in any expansion */
/*
* Definitions for the autogenerated hat-tables.h header file that
* defines all the lookup tables.
*/
typedef struct KitemapEntry {
int kite, hat, meta; /* all -1 if impossible */
} KitemapEntry;
typedef struct MetamapEntry {
int meta, meta2;
} MetamapEntry;
static inline size_t kitemap_index(KiteStep step, unsigned kite,
unsigned hat, unsigned meta)
{
return step + 4 * (kite + 8 * (hat + 4 * meta));
}
static inline size_t metamap_index(unsigned meta, unsigned meta2)
{
return meta2 * MT_MAXEXPAND + meta;
}
/*
* Coordinate system for tracking kites within a randomly selected
* part of the recursively expanded hat tiling.
*
* HatCoords will store an array of HatCoord, in little-endian
* arrangement. So hc->c[0] will always have type TT_KITE and index a
* single kite within a hat; hc->c[1] will have type TT_HAT and index
* a hat within a first-order metatile; hc->c[2] will be the smallest
* metatile containing this hat, and hc->c[3, 4, 5, ...] will be
* higher-order metatiles as needed.
*
* The last coordinate stored, hc->c[hc->nc-1], will have a tile type
* but no index (represented by index==-1). This means "we haven't
* decided yet what this level of metatile needs to be". If we need to
* refer to this level during the hatctx_step algorithm, we make it up
* at random, based on a table of what metatiles each type can
* possibly be part of, at what index.
*/
typedef struct HatCoord {
int index; /* index within that tile, or -1 if not yet known */
TileType type; /* type of this tile */
} HatCoord;
typedef struct HatCoords {
HatCoord *c;
size_t nc, csize;
} HatCoords;
HatCoords *hat_coords_new(void);
void hat_coords_free(HatCoords *hc);
void hat_coords_make_space(HatCoords *hc, size_t size);
HatCoords *hat_coords_copy(HatCoords *hc_in);
#ifdef HAT_COORDS_DEBUG
static inline void hat_coords_debug(const char *prefix, HatCoords *hc,
const char *suffix)
{
const char *sep = "";
static const char *const types[] = {"H","T","P","F","kite","hat"};
fputs(prefix, stderr);
for (size_t i = 0; i < hc->nc; i++) {
fprintf(stderr, "%s %s ", sep, types[hc->c[i].type]);
sep = " .";
if (hc->c[i].index == -1)
fputs("?", stderr);
else
fprintf(stderr, "%d", hc->c[i].index);
}
fputs(suffix, stderr);
}
#else
#define hat_coords_debug(p,c,s) ((void)0)
#endif
/*
* HatContext is the shared context of a whole run of the algorithm.
* Its 'prototype' HatCoords object represents the coordinates of the
* starting kite, and is extended as necessary; any other HatCoord
* that needs extending will copy the higher-order values from
* ctx->prototype as needed, so that once each choice has been made,
* it remains consistent.
*
* When we're inventing a random piece of tiling in the first place,
* we append to ctx->prototype by choosing a random (but legal)
* higher-level metatile for the current topmost one to turn out to be
* part of. When we're replaying a generation whose parameters are
* already stored, we don't have a random_state, and we make fixed
* decisions if not enough coordinates were provided.
*
* (Of course another approach would be to reject grid descriptions
* that didn't define enough coordinates! But that would involve a
* whole extra iteration over the whole grid region just for
* validation, and that seems like more timewasting than really
* needed. So we tolerate short descriptions, and do something
* deterministic with them.)
*/
typedef struct HatContext {
random_state *rs;
HatCoords *prototype;
} HatContext;
void hatctx_init_random(HatContext *ctx, random_state *rs);
void hatctx_cleanup(HatContext *ctx);
HatCoords *hatctx_initial_coords(HatContext *ctx);
void hatctx_extend_coords(HatContext *ctx, HatCoords *hc, size_t n);
HatCoords *hatctx_step(HatContext *ctx, HatCoords *hc_in, KiteStep step);
/*
* Subroutine of hat_tiling_generate, called for each kite in the grid
* as we iterate over it, to decide whether to generate an output hat
* and pass it to the client. Exposed in this header file so that
* hat-test can reuse it.
*
* We do this by starting from kite #0 of each hat, and tracing round
* the boundary. If the whole boundary is within the caller's bounding
* region, we return it; if it goes off the edge, we don't.
*
* (Of course, every hat we _do_ want to return will have all its
* kites inside the rectangle, so its kite #0 will certainly be caught
* by this iteration.)
*/
typedef void (*internal_hat_callback_fn)(void *ctx, Kite kite0, HatCoords *hc,
int *coords);
void maybe_report_hat(int w, int h, Kite kite, HatCoords *hc,
internal_hat_callback_fn cb, void *cbctx);

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,891 @@
/*
* Code to generate patches of the aperiodic 'hat' tiling discovered
* in 2023.
*
* This uses the 'combinatorial coordinates' system documented in my
* public article
* https://www.chiark.greenend.org.uk/~sgtatham/quasiblog/aperiodic-tilings/
*
* The internal document auxiliary/doc/hats.html also contains an
* explanation of the basic ideas of this algorithm (less polished but
* containing more detail).
*
* Neither of those documents can really be put in a source file,
* because they just have too many complicated diagrams. So read at
* least one of those first; the comments in here will refer to it.
*
* Discoverers' website: https://cs.uwaterloo.ca/~csk/hat/
* Preprint of paper: https://arxiv.org/abs/2303.10798
*/
#include <assert.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "puzzles.h"
#include "hat.h"
#include "hat-internal.h"
void hat_kiteenum_first(KiteEnum *s, int w, int h)
{
Kite start = { {0,0}, {0, 3}, {3, 0}, {2, 2} };
size_t i;
for (i = 0; i < KE_NKEEP; i++)
s->recent[i] = start; /* initialise to *something* */
s->curr_index = 0;
s->curr = &s->recent[s->curr_index];
s->state = 1;
s->w = w;
s->h = h;
s->x = 0;
s->y = 0;
}
bool hat_kiteenum_next(KiteEnum *s)
{
unsigned lastbut1 = s->last_index;
s->last_index = s->curr_index;
s->curr_index = (s->curr_index + 1) % KE_NKEEP;
s->curr = &s->recent[s->curr_index];
switch (s->state) {
/* States 1,2,3 walk rightwards along the upper side of a
* horizontal grid line with a pointy kite end at the start
* point */
case 1:
s->last_step = KS_F_RIGHT;
s->state = 2;
break;
case 2:
if (s->x+1 >= s->w) {
s->last_step = KS_F_RIGHT;
s->state = 4;
break;
}
s->last_step = KS_RIGHT;
s->state = 3;
s->x++;
break;
case 3:
s->last_step = KS_RIGHT;
s->state = 1;
break;
/* State 4 is special: we've just moved up into a row below a
* grid line, but we can't produce the rightmost tile of that
* row because it's not adjacent any tile so far emitted. So
* instead, emit the second-rightmost tile, and next time,
* we'll emit the rightmost. */
case 4:
s->last_step = KS_LEFT;
s->state = 5;
break;
/* And now we have to emit the third-rightmost tile relative
* to the last but one tile we emitted (the one from state 2,
* not state 4). */
case 5:
s->last_step = KS_RIGHT;
s->last_index = lastbut1;
s->state = 6;
break;
/* Now states 6-8 handle the general case of walking leftwards
* along the lower side of a line, starting from a
* right-angled kite end. */
case 6:
if (s->x <= 0) {
if (s->y+1 >= s->h) {
s->state = 0;
return false;
}
s->last_step = KS_RIGHT;
s->state = 9;
s->y++;
break;
}
s->last_step = KS_F_RIGHT;
s->state = 7;
s->x--;
break;
case 7:
s->last_step = KS_RIGHT;
s->state = 8;
break;
case 8:
s->last_step = KS_RIGHT;
s->state = 6;
break;
/* States 9,10,11 walk rightwards along the upper side of a
* horizontal grid line with a right-angled kite end at the
* start point. This time there's no awkward transition from
* the previous row. */
case 9:
s->last_step = KS_RIGHT;
s->state = 10;
break;
case 10:
s->last_step = KS_RIGHT;
s->state = 11;
break;
case 11:
if (s->x+1 >= s->w) {
/* Another awkward transition to the next row, where we
* have to generate it based on the previous state-9 tile.
* But this time at least we generate the rightmost tile
* of the new row, so the next states will be simple. */
s->last_step = KS_F_RIGHT;
s->last_index = lastbut1;
s->state = 12;
break;
}
s->last_step = KS_F_RIGHT;
s->state = 9;
s->x++;
break;
/* States 12,13,14 walk leftwards along the upper edge of a
* horizontal grid line with a pointy kite end at the start
* point */
case 12:
s->last_step = KS_F_RIGHT;
s->state = 13;
break;
case 13:
if (s->x <= 0) {
if (s->y+1 >= s->h) {
s->state = 0;
return false;
}
s->last_step = KS_LEFT;
s->state = 1;
s->y++;
break;
}
s->last_step = KS_RIGHT;
s->state = 14;
s->x--;
break;
case 14:
s->last_step = KS_RIGHT;
s->state = 12;
break;
default:
return false;
}
*s->curr = kite_step(s->recent[s->last_index], s->last_step);
return true;
}
/*
* The actual tables.
*/
#include "hat-tables.h"
/*
* One set of tables that we write by hand: the permitted ways to
* extend the coordinate system outwards from a given metatile.
*
* One obvious approach would be to make a table of all the places
* each metatile can appear in the expansion of another (e.g. H can be
* subtile 0, 1 or 2 of another H, subtile 0 of a T, or 0 or 1 of a P
* or an F), and when we need to decide what our current topmost tile
* turns out to be a subtile of, choose equiprobably at random from
* those options.
*
* That's what I did originally, but a better approach is to skew the
* probabilities. We'd like to generate our patch of actual tiling
* uniformly at random, in the sense that if you selected uniformly
* from a very large region of the plane, the distribution of possible
* finite patches of tiling would converge to some limit as that
* region tended to infinity, and we'd be picking from that limiting
* distribution on finite patches.
*
* For this we have to refer back to the original paper, which
* indicates the subset of each metatile's expansion that can be
* considered to 'belong' to that metatile, such that every subtile
* belongs to exactly one parent metatile, and the overlaps are
* eliminated. Reading out the diagrams from their Figure 2.8:
*
* - H: we discard three of the outer F subtiles, in the symmetric
* positions index by our coordinates as 7, 10, 11. So we keep the
* remaining subtiles {0,1,2,3,4,5,6,8,9,12}, which consist of
* three H, one T, three P and three F.
*
* - T: only the central H expanded from a T is considered to belong
* to it, so we just keep {0}, a single H.
*
* - P: we discard everything intersected by a long edge of the
* parallelogram, leaving the central three tiles and the endmost
* pair of F. That is, we keep {0,1,4,5,10}, consisting of two H,
* one P and two F.
*
* - F: looks like P at one end, and we retain the corresponding set
* of tiles there, but at the other end we keep the two F on either
* side of the endmost one. So we keep {0,1,3,6,8,10}, consisting of
* two H, one P and _three_ F.
*
* Adding up the tile numbers gives us this matrix system:
*
* (H_1) (3 1 2 2)(H_0)
* (T_1) = (1 0 0 0)(T_0)
* (P_1) (3 0 1 1)(P_0)
* (F_1) (3 0 2 3)(F_0)
*
* which says that if you have a patch of metatiling consisting of H_0
* H tiles, T_0 T tiles etc, then this matrix shows the number H_1 of
* smaller H tiles, etc, expanded from it.
*
* If you expand _many_ times, that's equivalent to raising the matrix
* to a power:
*
* n
* (H_n) (3 1 2 2) (H_0)
* (T_n) = (1 0 0 0) (T_0)
* (P_n) (3 0 1 1) (P_0)
* (F_n) (3 0 2 3) (F_0)
*
* The limiting distribution of metatiles is obtained by looking at
* the four-way ratio between H_n, T_n, P_n and F_n as n tends to
* infinity. To calculate this, we find the eigenvalues and
* eigenvectors of the matrix, and extract the eigenvector
* corresponding to the eigenvalue of largest magnitude. (Things get
* more complicated in cases where there isn't a _unique_ eigenvalue
* of largest magnitude, but here, there is.)
*
* That eigenvector is
*
* [ 1 ] [ 1 ]
* [ (7 - 3 sqrt(5)) / 2 ] ~= [ 0.14589803375031545538 ]
* [ 3 sqrt(5) - 6 ] [ 0.70820393249936908922 ]
* [ (9 - 3 sqrt(5)) / 2 ] [ 1.14589803375031545538 ]
*
* So those are the limiting relative proportions of metatiles.
*
* So if we have a particular metatile, how likely is it for its
* parent to be one of those? We have to adjust by the number of
* metatiles of each type that each tile has as its children. For
* example, the P and F tiles have one P child each, but the H has
* three P children. So if we have a P, the proportion of H in its
* potential ancestry is three times what's shown here. (And T can't
* occur at all as a parent.)
*
* In other words, we should choose _each coordinate_ with probability
* corresponding to one of those numbers (scaled down so they all sum
* to 1). Continuing to use P as an example, it will be:
*
* - child 4 of H with relative probability 1
* - child 5 of H with relative probability 1
* - child 6 of H with relative probability 1
* - child 4 of P with relative probability 0.70820393249936908922
* - child 3 of F with relative probability 1.14589803375031545538
*
* and then we obtain the true probabilities by scaling those values
* down so that they sum to 1.
*
* The tables below give a reasonable approximation in 32-bit
* integers to these proportions.
*/
typedef struct MetatilePossibleParent {
TileType type;
unsigned index;
unsigned long probability;
} MetatilePossibleParent;
/* The above probabilities scaled up by 10000000 */
#define PROB_H 10000000
#define PROB_T 1458980
#define PROB_P 7082039
#define PROB_F 11458980
static const MetatilePossibleParent parents_H[] = {
{ TT_H, 0, PROB_H },
{ TT_H, 1, PROB_H },
{ TT_H, 2, PROB_H },
{ TT_T, 0, PROB_T },
{ TT_P, 0, PROB_P },
{ TT_P, 1, PROB_P },
{ TT_F, 0, PROB_F },
{ TT_F, 1, PROB_F },
};
static const MetatilePossibleParent parents_T[] = {
{ TT_H, 3, PROB_H },
};
static const MetatilePossibleParent parents_P[] = {
{ TT_H, 4, PROB_H },
{ TT_H, 5, PROB_H },
{ TT_H, 6, PROB_H },
{ TT_P, 4, PROB_P },
{ TT_F, 3, PROB_F },
};
static const MetatilePossibleParent parents_F[] = {
{ TT_H, 8, PROB_H },
{ TT_H, 9, PROB_H },
{ TT_H, 12, PROB_H },
{ TT_P, 5, PROB_P },
{ TT_P, 10, PROB_P },
{ TT_F, 6, PROB_F },
{ TT_F, 8, PROB_F },
{ TT_F, 10, PROB_F },
};
static const MetatilePossibleParent *const possible_parents[] = {
parents_H, parents_T, parents_P, parents_F,
};
static const size_t n_possible_parents[] = {
lenof(parents_H), lenof(parents_T), lenof(parents_P), lenof(parents_F),
};
/*
* Similarly, we also want to choose our absolute starting hat with
* close to uniform probability, which again we do by looking at the
* limiting ratio of the metatile types, and this time, scaling by the
* number of hats in each metatile.
*
* We cheatingly use the same MetatilePossibleParent struct, because
* it's got all the right fields, even if it has an inappropriate
* name.
*/
static const MetatilePossibleParent starting_hats[] = {
{ TT_H, 0, PROB_H },
{ TT_H, 1, PROB_H },
{ TT_H, 2, PROB_H },
{ TT_H, 3, PROB_H },
{ TT_T, 0, PROB_P },
{ TT_P, 0, PROB_P },
{ TT_P, 1, PROB_P },
{ TT_F, 0, PROB_F },
{ TT_F, 1, PROB_F },
};
#undef PROB_H
#undef PROB_T
#undef PROB_P
#undef PROB_F
HatCoords *hat_coords_new(void)
{
HatCoords *hc = snew(HatCoords);
hc->nc = hc->csize = 0;
hc->c = NULL;
return hc;
}
void hat_coords_free(HatCoords *hc)
{
if (hc) {
sfree(hc->c);
sfree(hc);
}
}
void hat_coords_make_space(HatCoords *hc, size_t size)
{
if (hc->csize < size) {
hc->csize = hc->csize * 5 / 4 + 16;
if (hc->csize < size)
hc->csize = size;
hc->c = sresize(hc->c, hc->csize, HatCoord);
}
}
HatCoords *hat_coords_copy(HatCoords *hc_in)
{
HatCoords *hc_out = hat_coords_new();
hat_coords_make_space(hc_out, hc_in->nc);
memcpy(hc_out->c, hc_in->c, hc_in->nc * sizeof(*hc_out->c));
hc_out->nc = hc_in->nc;
return hc_out;
}
static const MetatilePossibleParent *choose_mpp(
random_state *rs, const MetatilePossibleParent *parents, size_t nparents)
{
/*
* If we needed to do this _efficiently_, we'd rewrite all those
* tables above as cumulative frequency tables and use binary
* search. But this happens about log n times in a grid of area n,
* so it hardly matters, and it's easier to keep the tables
* legible.
*/
unsigned long limit = 0, value;
size_t i;
for (i = 0; i < nparents; i++)
limit += parents[i].probability;
value = random_upto(rs, limit);
for (i = 0; i+1 < nparents; i++) {
if (value < parents[i].probability)
return &parents[i];
value -= parents[i].probability;
}
assert(i == nparents - 1);
assert(value < parents[i].probability);
return &parents[i];
}
void hatctx_init_random(HatContext *ctx, random_state *rs)
{
const MetatilePossibleParent *starting_hat = choose_mpp(
rs, starting_hats, lenof(starting_hats));
ctx->rs = rs;
ctx->prototype = hat_coords_new();
hat_coords_make_space(ctx->prototype, 3);
ctx->prototype->c[2].type = starting_hat->type;
ctx->prototype->c[2].index = -1;
ctx->prototype->c[1].type = TT_HAT;
ctx->prototype->c[1].index = starting_hat->index;
ctx->prototype->c[0].type = TT_KITE;
ctx->prototype->c[0].index = random_upto(rs, HAT_KITES);
ctx->prototype->nc = 3;
}
static inline int metatile_char_to_enum(char metatile)
{
return (metatile == 'H' ? TT_H :
metatile == 'T' ? TT_T :
metatile == 'P' ? TT_P :
metatile == 'F' ? TT_F : -1);
}
static void init_coords_params(HatContext *ctx,
const struct HatPatchParams *hp)
{
size_t i;
ctx->rs = NULL;
ctx->prototype = hat_coords_new();
assert(hp->ncoords >= 3);
hat_coords_make_space(ctx->prototype, hp->ncoords + 1);
ctx->prototype->nc = hp->ncoords + 1;
for (i = 0; i < hp->ncoords; i++)
ctx->prototype->c[i].index = hp->coords[i];
ctx->prototype->c[hp->ncoords].type =
metatile_char_to_enum(hp->final_metatile);
ctx->prototype->c[hp->ncoords].index = -1;
ctx->prototype->c[0].type = TT_KITE;
ctx->prototype->c[1].type = TT_HAT;
for (i = hp->ncoords - 1; i > 1; i--) {
TileType metatile = ctx->prototype->c[i+1].type;
assert(hp->coords[i] < nchildren[metatile]);
ctx->prototype->c[i].type = children[metatile][hp->coords[i]];
}
assert(hp->coords[0] < 8);
}
HatCoords *hatctx_initial_coords(HatContext *ctx)
{
return hat_coords_copy(ctx->prototype);
}
/*
* Extend hc until it has at least n coordinates in, by copying from
* ctx->prototype if needed, and extending ctx->prototype if needed in
* order to do that.
*/
void hatctx_extend_coords(HatContext *ctx, HatCoords *hc, size_t n)
{
if (ctx->prototype->nc < n) {
hat_coords_make_space(ctx->prototype, n);
while (ctx->prototype->nc < n) {
TileType type = ctx->prototype->c[ctx->prototype->nc - 1].type;
assert(ctx->prototype->c[ctx->prototype->nc - 1].index == -1);
const MetatilePossibleParent *parent;
if (ctx->rs)
parent = choose_mpp(ctx->rs, possible_parents[type],
n_possible_parents[type]);
else
parent = possible_parents[type];
ctx->prototype->c[ctx->prototype->nc - 1].index = parent->index;
ctx->prototype->c[ctx->prototype->nc].index = -1;
ctx->prototype->c[ctx->prototype->nc].type = parent->type;
ctx->prototype->nc++;
}
}
hat_coords_make_space(hc, n);
while (hc->nc < n) {
assert(hc->c[hc->nc - 1].index == -1);
assert(hc->c[hc->nc - 1].type == ctx->prototype->c[hc->nc - 1].type);
hc->c[hc->nc - 1].index = ctx->prototype->c[hc->nc - 1].index;
hc->c[hc->nc].index = -1;
hc->c[hc->nc].type = ctx->prototype->c[hc->nc].type;
hc->nc++;
}
}
void hatctx_cleanup(HatContext *ctx)
{
hat_coords_free(ctx->prototype);
}
/*
* The actual system for finding the coordinates of an adjacent kite.
*/
/*
* Kitemap step: ensure we have enough coordinates to know two levels
* of meta-tiling, and use the kite map for the outer layer to move
* around the individual kites. If this fails, return NULL.
*/
static HatCoords *try_step_coords_kitemap(
HatContext *ctx, HatCoords *hc_in, KiteStep step)
{
hatctx_extend_coords(ctx, hc_in, 4);
hat_coords_debug(" try kitemap ", hc_in, "\n");
unsigned kite = hc_in->c[0].index;
unsigned hat = hc_in->c[1].index;
unsigned meta = hc_in->c[2].index;
TileType meta2type = hc_in->c[3].type;
const KitemapEntry *ke = &kitemap[meta2type][
kitemap_index(step, kite, hat, meta)];
if (ke->kite >= 0) {
/*
* Success! We've got coordinates for the next kite in this
* direction.
*/
HatCoords *hc_out = hat_coords_copy(hc_in);
hc_out->c[2].index = ke->meta;
hc_out->c[2].type = children[meta2type][ke->meta];
hc_out->c[1].index = ke->hat;
hc_out->c[1].type = TT_HAT;
hc_out->c[0].index = ke->kite;
hc_out->c[0].type = TT_KITE;
hat_coords_debug(" success! ", hc_out, "\n");
return hc_out;
}
return NULL;
}
/*
* Recursive metamap step. Try using the metamap to rewrite the
* coordinates at hc->c[depth] and hc->c[depth+1] (using the metamap
* for the tile type described in hc->c[depth+2]). If successful,
* recurse back down to see if this led to a successful step via the
* kitemap. If even that fails (so that we need to try a higher-order
* metamap rewrite), return NULL.
*/
static HatCoords *try_step_coords_metamap(
HatContext *ctx, HatCoords *hc_in, KiteStep step, size_t depth)
{
HatCoords *hc_tmp = NULL, *hc_out;
hatctx_extend_coords(ctx, hc_in, depth+3);
#ifdef HAT_COORDS_DEBUG
fprintf(stderr, " try meta %-4d", (int)depth);
hat_coords_debug("", hc_in, "\n");
#endif
unsigned meta_orig = hc_in->c[depth].index;
unsigned meta2_orig = hc_in->c[depth+1].index;
TileType meta3type = hc_in->c[depth+2].type;
unsigned meta = meta_orig, meta2 = meta2_orig;
while (true) {
const MetamapEntry *me;
HatCoords *hc_curr = hc_tmp ? hc_tmp : hc_in;
if (depth > 2)
hc_out = try_step_coords_metamap(ctx, hc_curr, step, depth - 1);
else
hc_out = try_step_coords_kitemap(ctx, hc_curr, step);
if (hc_out) {
hat_coords_free(hc_tmp);
return hc_out;
}
me = &metamap[meta3type][metamap_index(meta, meta2)];
assert(me->meta != -1);
if (me->meta == meta_orig && me->meta2 == meta2_orig) {
hat_coords_free(hc_tmp);
return NULL;
}
meta = me->meta;
meta2 = me->meta2;
/*
* We must do the rewrite in a copy of hc_in. It's not
* _necessarily_ obvious that that's the case (any successful
* rewrite leaves the coordinates still valid and still
* referring to the same kite, right?). But the problem is
* that we might do a rewrite at this level more than once,
* and in between, a metamap rewrite at the next level down
* might have modified _one_ of the two coordinates we're
* messing about with. So it's easiest to let the recursion
* just use a separate copy.
*/
if (!hc_tmp)
hc_tmp = hat_coords_copy(hc_in);
hc_tmp->c[depth+1].index = meta2;
hc_tmp->c[depth+1].type = children[meta3type][meta2];
hc_tmp->c[depth].index = meta;
hc_tmp->c[depth].type = children[hc_tmp->c[depth+1].type][meta];
hat_coords_debug(" rewritten -> ", hc_tmp, "\n");
}
}
/*
* The top-level algorithm for finding the next tile.
*/
HatCoords *hatctx_step(HatContext *ctx, HatCoords *hc_in, KiteStep step)
{
HatCoords *hc_out;
size_t depth;
#ifdef HAT_COORDS_DEBUG
static const char *const directions[] = {
" left\n", " right\n", " forward left\n", " forward right\n" };
hat_coords_debug("step start ", hc_in, directions[step]);
#endif
/*
* First, just try a kitemap step immediately. If that succeeds,
* we're done.
*/
if ((hc_out = try_step_coords_kitemap(ctx, hc_in, step)) != NULL)
return hc_out;
/*
* Otherwise, try metamap rewrites at successively higher layers
* until one works. Each one will recurse back down to the
* kitemap, as described above.
*/
for (depth = 2;; depth++) {
if ((hc_out = try_step_coords_metamap(
ctx, hc_in, step, depth)) != NULL)
return hc_out;
}
}
/*
* Generate a random set of parameters for a tiling of a given size.
* To do this, we iterate over the whole tiling via hat_kiteenum_first
* and hat_kiteenum_next, and for each kite, calculate its
* coordinates. But then we throw the coordinates away and don't do
* anything with them!
*
* But the side effect of _calculating_ all those coordinates is that
* we found out how far ctx->prototype needed to be extended, and did
* so, pulling random choices out of our random_state. So after this
* iteration, ctx->prototype contains everything we need to replicate
* the same piece of tiling next time.
*/
void hat_tiling_randomise(struct HatPatchParams *hp, int w, int h,
random_state *rs)
{
HatContext ctx[1];
HatCoords *coords[KE_NKEEP];
KiteEnum s[1];
size_t i;
hatctx_init_random(ctx, rs);
for (i = 0; i < lenof(coords); i++)
coords[i] = NULL;
hat_kiteenum_first(s, w, h);
coords[s->curr_index] = hatctx_initial_coords(ctx);
while (hat_kiteenum_next(s)) {
hat_coords_free(coords[s->curr_index]);
coords[s->curr_index] = hatctx_step(
ctx, coords[s->last_index], s->last_step);
}
hp->ncoords = ctx->prototype->nc - 1;
hp->coords = snewn(hp->ncoords, unsigned char);
for (i = 0; i < hp->ncoords; i++)
hp->coords[i] = ctx->prototype->c[i].index;
hp->final_metatile = tilechars[ctx->prototype->c[hp->ncoords].type];
hatctx_cleanup(ctx);
for (i = 0; i < lenof(coords); i++)
hat_coords_free(coords[i]);
}
const char *hat_tiling_params_invalid(const struct HatPatchParams *hp)
{
TileType metatile;
size_t i;
if (hp->ncoords < 3)
return "Grid parameters require at least three coordinates";
if (metatile_char_to_enum(hp->final_metatile) < 0)
return "Grid parameters contain an invalid final metatile";
if (hp->coords[0] >= 8)
return "Grid parameters contain an invalid kite index";
metatile = metatile_char_to_enum(hp->final_metatile);
for (i = hp->ncoords - 1; i > 1; i--) {
if (hp->coords[i] >= nchildren[metatile])
return "Grid parameters contain an invalid metatile index";
metatile = children[metatile][hp->coords[i]];
}
if (hp->coords[1] >= hats_in_metatile[metatile])
return "Grid parameters contain an invalid hat index";
return NULL;
}
void maybe_report_hat(int w, int h, Kite kite, HatCoords *hc,
internal_hat_callback_fn cb, void *cbctx)
{
Kite kite0;
Point vertices[14];
size_t i, j;
bool reversed = false;
int coords[28];
/* Only iterate from kite #0 of a hat */
if (hc->c[0].index != 0)
return;
kite0 = kite;
/*
* Identify reflected hats: they are always hat #3 of an H
* metatile. If we find one, reflect the starting kite so that the
* kite_step operations below will go in the other direction.
*/
if (hc->c[2].type == TT_H && hc->c[1].index == 3) {
reversed = true;
Point tmp = kite.left;
kite.left = kite.right;
kite.right = tmp;
}
vertices[0] = kite.centre;
vertices[1] = kite.right;
vertices[2] = kite.outer;
vertices[3] = kite.left;
kite = kite_left(kite); /* now on kite #1 */
kite = kite_forward_right(kite); /* now on kite #2 */
vertices[4] = kite.centre;
kite = kite_right(kite); /* now on kite #3 */
vertices[5] = kite.right;
vertices[6] = kite.outer;
kite = kite_forward_left(kite); /* now on kite #4 */
vertices[7] = kite.left;
vertices[8] = kite.centre;
kite = kite_right(kite); /* now on kite #5 */
kite = kite_right(kite); /* now on kite #6 */
kite = kite_right(kite); /* now on kite #7 */
vertices[9] = kite.right;
vertices[10] = kite.outer;
vertices[11] = kite.left;
kite = kite_left(kite); /* now on kite #6 again */
vertices[12] = kite.outer;
vertices[13] = kite.left;
if (reversed) {
/* For a reversed kite, also reverse the vertex order, so that
* we report every polygon in a consistent orientation */
for (i = 0, j = 13; i < j; i++, j--) {
Point tmp = vertices[i];
vertices[i] = vertices[j];
vertices[j] = tmp;
}
}
/*
* Convert from our internal coordinate system into the orthogonal
* one used in this module's external API. In the same loop, we
* might as well do the bounds check.
*/
for (i = 0; i < 14; i++) {
Point v = vertices[i];
int x = (v.x * 2 + v.y) / 3, y = v.y;
if (x < 0 || x > 4*w || y < 0 || y > 6*h)
return; /* a vertex of this kite is out of bounds */
coords[2*i] = x;
coords[2*i+1] = y;
}
cb(cbctx, kite0, hc, coords);
}
struct internal_ctx {
hat_tile_callback_fn external_cb;
void *external_cbctx;
};
static void report_hat(void *vctx, Kite kite0, HatCoords *hc, int *coords)
{
struct internal_ctx *ctx = (struct internal_ctx *)vctx;
ctx->external_cb(ctx->external_cbctx, 14, coords);
}
/*
* Generate a hat tiling from a previously generated set of parameters.
*/
void hat_tiling_generate(const struct HatPatchParams *hp, int w, int h,
hat_tile_callback_fn cb, void *cbctx)
{
HatContext ctx[1];
HatCoords *coords[KE_NKEEP];
KiteEnum s[1];
size_t i;
struct internal_ctx report_hat_ctx[1];
report_hat_ctx->external_cb = cb;
report_hat_ctx->external_cbctx = cbctx;
init_coords_params(ctx, hp);
for (i = 0; i < lenof(coords); i++)
coords[i] = NULL;
hat_kiteenum_first(s, w, h);
coords[s->curr_index] = hatctx_initial_coords(ctx);
maybe_report_hat(w, h, *s->curr, coords[s->curr_index],
report_hat, report_hat_ctx);
while (hat_kiteenum_next(s)) {
hat_coords_free(coords[s->curr_index]);
coords[s->curr_index] = hatctx_step(
ctx, coords[s->last_index], s->last_step);
maybe_report_hat(w, h, *s->curr, coords[s->curr_index],
report_hat, report_hat_ctx);
}
hatctx_cleanup(ctx);
for (i = 0; i < lenof(coords); i++)
hat_coords_free(coords[i]);
}

View file

@ -0,0 +1,67 @@
#ifndef PUZZLES_HAT_H
#define PUZZLES_HAT_H
struct HatPatchParams {
/*
* A patch of hat tiling is identified by giving the coordinates
* of the kite in one corner, using a multi-level coordinate
* system based on metatile expansions. Coordinates are a sequence
* of small non-negative integers. The valid range for each
* coordinate depends on the next coordinate, or on final_metatile
* if it's the last one in the list. The largest valid range is
* {0,...,12}.
*
* 'final_metatile' is one of the characters 'H', 'T', 'P' or 'F'.
*/
size_t ncoords;
unsigned char *coords;
char final_metatile;
};
/*
* Fill in HatPatchParams with a randomly selected set of coordinates,
* in enough detail to generate a patch of tiling covering an area of
* w x h 'squares' of a kite tiling.
*
* The kites grid is considered to be oriented so that it includes
* horizontal lines and not vertical ones. So each of the smallest
* equilateral triangles in the grid has a bounding rectangle whose
* height is sqrt(3)/2 times its width, and either the top or the
* bottom of that bounding rectangle is the horizontal edge of the
* triangle. A 'square' of a kite tiling (for convenience of choosing
* grid dimensions) counts as one of those bounding rectangles.
*
* The 'coords' field of the structure will be filled in with a new
* dynamically allocated array. Any previous pointer in that field
* will be overwritten.
*/
void hat_tiling_randomise(struct HatPatchParams *params, int w, int h,
random_state *rs);
/*
* Validate a HatPatchParams to ensure it contains no illegal
* coordinates. Returns NULL if it's acceptable, or an error string if
* not.
*/
const char *hat_tiling_params_invalid(const struct HatPatchParams *params);
/*
* Generate the actual set of hat tiles from a HatPatchParams, passing
* each one to a callback. The callback receives the vertices of each
* point, as a sequence of 2*nvertices integers, with x,y coordinates
* interleaved.
*
* The x coordinates are measured in units of 1/4 of the side length
* of the smallest equilateral triangle, or equivalently, 1/2 the
* length of one of the long edges of a single kite. The y coordinates
* are measured in units of 1/6 the height of the triangle, which is
* also 1/2 the length of the short edge of a kite. Therefore, you can
* expect x to go up to 4*w and y up to 6*h.
*/
typedef void (*hat_tile_callback_fn)(void *ctx, size_t nvertices,
int *coords);
void hat_tiling_generate(const struct HatPatchParams *params, int w, int h,
hat_tile_callback_fn cb, void *cbctx);
#endif

View file

@ -1,19 +0,0 @@
# -*- makefile -*-
inertia : [X] GTK COMMON inertia inertia-icon|no-icon
inertia : [G] WINDOWS COMMON inertia inertia.res|noicon.res
ALL += inertia[COMBINED]
!begin am gtk
GAMES += inertia
!end
!begin >list.c
A(inertia) \
!end
!begin >gamedesc.txt
inertia:inertia.exe:Inertia:Gem-collecting puzzle:Collect all the gems without running into any of the mines.
!end

View file

@ -11,7 +11,12 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#include <limits.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -202,6 +207,8 @@ static const char *validate_params(const game_params *params, bool full)
*/
if (params->w < 2 || params->h < 2)
return "Width and height must both be at least two";
if (params->w > INT_MAX / params->h)
return "Width times height must not be unreasonably large";
/*
* The grid construction algorithm creates 1/5 as many gems as
@ -1520,7 +1527,8 @@ static char *encode_ui(const game_ui *ui)
return dupstr(buf);
}
static void decode_ui(game_ui *ui, const char *encoding)
static void decode_ui(game_ui *ui, const char *encoding,
const game_state *state)
{
int p = 0;
sscanf(encoding, "D%d%n", &ui->deaths, &p);
@ -1545,6 +1553,15 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
ui->just_made_move = false;
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (IS_CURSOR_SELECT(button) &&
state->soln && state->solnpos < state->soln->len)
return "Advance";
return "";
}
struct game_drawstate {
game_params p;
int tilesize;
@ -1593,7 +1610,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
* end up the right way round. */
angle = atan2(dx, -dy);
angle = (angle + (PI/8)) / (PI/4);
angle = (angle + (float)(PI/8)) / (float)(PI/4);
assert(angle > -16.0F);
dir = (int)(angle + 16.0F) & 7;
}
@ -1618,20 +1635,20 @@ static char *interpret_move(const game_state *state, game_ui *ui,
dir = state->soln->list[state->solnpos];
if (dir < 0)
return NULL;
return MOVE_UNUSED;
/*
* Reject the move if we can't make it at all due to a wall
* being in the way.
*/
if (AT(w, h, state->grid, state->px+DX(dir), state->py+DY(dir)) == WALL)
return NULL;
return MOVE_NO_EFFECT;
/*
* Reject the move if we're dead!
*/
if (state->dead)
return NULL;
return MOVE_NO_EFFECT;
/*
* Otherwise, we can make the move. All we need to specify is
@ -1685,6 +1702,7 @@ static game_state *execute_move(const game_state *state, const char *move)
* This is a solve move, so we don't actually _change_ the
* grid but merely set up a stored solution path.
*/
if (move[1] == '\0') return NULL; /* Solution must be non-empty. */
ret = dup_game(state);
install_new_solution(ret, move);
return ret;
@ -1729,11 +1747,10 @@ static game_state *execute_move(const game_state *state, const char *move)
if (ret->soln) {
if (ret->dead || ret->gems == 0)
discard_solution(ret);
else if (ret->soln->list[ret->solnpos] == dir) {
else if (ret->soln->list[ret->solnpos] == dir &&
ret->solnpos+1 < ret->soln->len)
++ret->solnpos;
assert(ret->solnpos < ret->soln->len); /* or gems == 0 */
assert(!ret->dead); /* or not a solution */
} else {
else {
const char *error = NULL;
char *soln = solve_game(NULL, ret, NULL, &error);
if (!error) {
@ -1751,7 +1768,7 @@ static game_state *execute_move(const game_state *state, const char *move)
*/
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Ick: fake up `ds->tilesize' for macro expansion purposes */
struct { int tilesize; } ads, *ds = &ads;
@ -1869,11 +1886,6 @@ static void draw_player(drawing *dr, game_drawstate *ds, int x, int y,
coords[d*4+2] = x + TILESIZE/2 + (int)((TILESIZE*3/7) * x2);
coords[d*4+3] = y + TILESIZE/2 + (int)((TILESIZE*3/7) * y2);
}
/* rockbox hack */
int tmp[2] = { coords[0], coords[1] };
memmove(coords, coords + 2, sizeof(int) * DIRECTIONS * 4 - 2);
memcpy(coords + DIRECTIONS * 4 - 2, tmp, 2 * sizeof(int));
draw_polygon(dr, coords, DIRECTIONS*2, COL_DEAD_PLAYER, COL_OUTLINE);
} else {
draw_circle(dr, x + TILESIZE/2, y + TILESIZE/2,
@ -1889,6 +1901,8 @@ static void draw_player(drawing *dr, game_drawstate *ds, int x, int y,
int coords[14], *c;
c = coords;
*c++ = ox + px/9;
*c++ = oy + py/9;
*c++ = ox + px/9 + ax*2/3;
*c++ = oy + py/9 + ay*2/3;
*c++ = ox + px/3 + ax*2/3;
@ -1901,8 +1915,6 @@ static void draw_player(drawing *dr, game_drawstate *ds, int x, int y,
*c++ = oy - py/9 + ay*2/3;
*c++ = ox - px/9;
*c++ = oy - py/9;
*c++ = ox + px/9;
*c++ = oy + py/9;
draw_polygon(dr, coords, 7, COL_HINT, COL_OUTLINE);
}
@ -2013,15 +2025,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
* Initialise a fresh drawstate.
*/
if (!ds->started) {
int wid, ht;
/*
* Blank out the window initially.
*/
game_compute_size(&ds->p, TILESIZE, &wid, &ht);
draw_rect(dr, 0, 0, wid, ht, COL_BACKGROUND);
draw_update(dr, 0, 0, wid, ht);
/*
* Draw the grid lines.
*/
@ -2207,19 +2210,6 @@ static int game_status(const game_state *state)
return state->gems == 0 ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
{
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
{
}
#ifdef COMBINED
#define thegame inertia
#endif
@ -2241,12 +2231,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
NULL, NULL, /* get_prefs, set_prefs */
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILESIZE, game_compute_size, game_set_size,
@ -2258,8 +2250,8 @@ const struct game thegame = {
game_flash_length,
game_get_cursor_location,
game_status,
false, false, game_print_size, game_print,
false, false, NULL, NULL, /* print_size, print */
true, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

View file

@ -1,25 +0,0 @@
# -*- makefile -*-
KEEN_EXTRA = dsf LATIN
KEEN_EXTRA_SOLVER = dsf LATIN_SOLVER
keen : [X] GTK COMMON keen KEEN_EXTRA keen-icon|no-icon
keen : [G] WINDOWS COMMON keen KEEN_EXTRA keen.res|noicon.res
keensolver : [U] keen[STANDALONE_SOLVER] KEEN_EXTRA_SOLVER STANDALONE
keensolver : [C] keen[STANDALONE_SOLVER] KEEN_EXTRA_SOLVER STANDALONE
ALL += keen[COMBINED] KEEN_EXTRA
!begin am gtk
GAMES += keen
!end
!begin >list.c
A(keen) \
!end
!begin >gamedesc.txt
keen:keen.exe:Keen:Arithmetic Latin square puzzle:Complete the latin square in accordance with the arithmetic clues.
!end

View file

@ -8,7 +8,11 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
#include "latin.h"
@ -69,7 +73,7 @@ struct game_params {
struct clues {
int refcount;
int w;
int *dsf;
DSF *dsf;
long *clues;
};
@ -677,7 +681,7 @@ static bool keen_valid(struct latin_solver *solver, void *vctx)
return true;
}
static int solver(int w, int *dsf, long *clues, digit *soln, int maxdiff)
static int solver(int w, DSF *dsf, long *clues, digit *soln, int maxdiff)
{
int a = w*w;
struct solver_ctx ctx;
@ -704,11 +708,11 @@ static int solver(int w, int *dsf, long *clues, digit *soln, int maxdiff)
ctx.clues = snewn(ctx.nboxes, long);
ctx.whichbox = snewn(a, int);
for (n = m = i = 0; i < a; i++)
if (dsf_canonify(dsf, i) == i) {
if (dsf_minimal(dsf, i) == i) {
ctx.clues[n] = clues[i];
ctx.boxes[n] = m;
for (j = 0; j < a; j++)
if (dsf_canonify(dsf, j) == i) {
if (dsf_minimal(dsf, j) == i) {
ctx.boxlist[m++] = (j % w) * w + (j / w); /* transpose */
ctx.whichbox[ctx.boxlist[m-1]] = n;
}
@ -740,7 +744,7 @@ static int solver(int w, int *dsf, long *clues, digit *soln, int maxdiff)
* Grid generation.
*/
static char *encode_block_structure(char *p, int w, int *dsf)
static char *encode_block_structure(char *p, int w, DSF *dsf)
{
int i, currrun = 0;
char *orig, *q, *r, c;
@ -777,7 +781,7 @@ static char *encode_block_structure(char *p, int w, int *dsf)
p0 = y*w+x;
p1 = (y+1)*w+x;
}
edge = (dsf_canonify(dsf, p0) != dsf_canonify(dsf, p1));
edge = !dsf_equivalent(dsf, p0, p1);
}
if (edge) {
@ -815,13 +819,12 @@ static char *encode_block_structure(char *p, int w, int *dsf)
return q;
}
static const char *parse_block_structure(const char **p, int w, int *dsf)
static const char *parse_block_structure(const char **p, int w, DSF *dsf)
{
int a = w*w;
int pos = 0;
int repc = 0, repn = 0;
dsf_init(dsf, a);
dsf_reinit(dsf);
while (**p && (repn > 0 || **p != ',')) {
int c;
@ -890,7 +893,8 @@ static char *new_game_desc(const game_params *params, random_state *rs,
{
int w = params->w, a = w*w;
digit *grid, *soln;
int *order, *revorder, *singletons, *dsf;
int *order, *revorder, *singletons;
DSF *dsf;
long *clues, *cluevals;
int i, j, k, n, x, y, ret;
int diff = params->diff;
@ -927,7 +931,7 @@ done
order = snewn(a, int);
revorder = snewn(a, int);
singletons = snewn(a, int);
dsf = snew_dsf(a);
dsf = dsf_new_min(a);
clues = snewn(a, long);
cluevals = snewn(a, long);
soln = snewn(a, digit);
@ -955,7 +959,7 @@ done
for (i = 0; i < a; i++)
singletons[i] = true;
dsf_init(dsf, a);
dsf_reinit(dsf);
/* Place dominoes. */
for (i = 0; i < a; i++) {
@ -1037,11 +1041,10 @@ done
* integer quotient, of course), but we rule out (or try to
* avoid) some clues because they're of low quality.
*
* Hence, we iterate once over the grid, stopping at the
* canonical element of every >2 block and the _non_-
* canonical element of every 2-block; the latter means that
* we can make our decision about a 2-block in the knowledge
* of both numbers in it.
* Hence, we iterate once over the grid, stopping at the first
* element in every >2 block and the _last_ element of every
* 2-block; the latter means that we can make our decision
* about a 2-block in the knowledge of both numbers in it.
*
* We reuse the 'singletons' array (finished with in the
* above loop) to hold information about which blocks are
@ -1055,7 +1058,7 @@ done
for (i = 0; i < a; i++) {
singletons[i] = 0;
j = dsf_canonify(dsf, i);
j = dsf_minimal(dsf, i);
k = dsf_size(dsf, j);
if (params->multiplication_only)
singletons[j] = F_MUL;
@ -1178,7 +1181,7 @@ done
* Having chosen the clue types, calculate the clue values.
*/
for (i = 0; i < a; i++) {
j = dsf_canonify(dsf, i);
j = dsf_minimal(dsf, i);
if (j == i) {
cluevals[j] = grid[i];
} else {
@ -1206,7 +1209,7 @@ done
}
for (i = 0; i < a; i++) {
j = dsf_canonify(dsf, i);
j = dsf_minimal(dsf, i);
if (j == i) {
clues[j] |= cluevals[j];
}
@ -1252,7 +1255,7 @@ done
p = encode_block_structure(p, w, dsf);
*p++ = ',';
for (i = 0; i < a; i++) {
j = dsf_canonify(dsf, i);
j = dsf_minimal(dsf, i);
if (j == i) {
switch (clues[j] & CMASK) {
case C_ADD: *p++ = 'a'; break;
@ -1280,7 +1283,7 @@ done
sfree(order);
sfree(revorder);
sfree(singletons);
sfree(dsf);
dsf_free(dsf);
sfree(clues);
sfree(cluevals);
sfree(soln);
@ -1295,7 +1298,7 @@ done
static const char *validate_desc(const game_params *params, const char *desc)
{
int w = params->w, a = w*w;
int *dsf;
DSF *dsf;
const char *ret;
const char *p = desc;
int i;
@ -1303,15 +1306,17 @@ static const char *validate_desc(const game_params *params, const char *desc)
/*
* Verify that the block structure makes sense.
*/
dsf = snew_dsf(a);
dsf = dsf_new_min(a);
ret = parse_block_structure(&p, w, dsf);
if (ret) {
sfree(dsf);
dsf_free(dsf);
return ret;
}
if (*p != ',')
if (*p != ',') {
dsf_free(dsf);
return "Expected ',' after block structure description";
}
p++;
/*
@ -1319,21 +1324,26 @@ static const char *validate_desc(const game_params *params, const char *desc)
* and DIV clues don't apply to blocks of the wrong size.
*/
for (i = 0; i < a; i++) {
if (dsf_canonify(dsf, i) == i) {
if (dsf_minimal(dsf, i) == i) {
if (*p == 'a' || *p == 'm') {
/* these clues need no validation */
} else if (*p == 'd' || *p == 's') {
if (dsf_size(dsf, i) != 2)
if (dsf_size(dsf, i) != 2) {
dsf_free(dsf);
return "Subtraction and division blocks must have area 2";
}
} else if (!*p) {
dsf_free(dsf);
return "Too few clues for block structure";
} else {
dsf_free(dsf);
return "Unrecognised clue type";
}
p++;
while (*p && isdigit((unsigned char)*p)) p++;
}
}
dsf_free(dsf);
if (*p)
return "Too many clues for block structure";
@ -1373,7 +1383,7 @@ static game_state *new_game(midend *me, const game_params *params,
state->clues = snew(struct clues);
state->clues->refcount = 1;
state->clues->w = w;
state->clues->dsf = snew_dsf(a);
state->clues->dsf = dsf_new_min(a);
parse_block_structure(&p, w, state->clues->dsf);
assert(*p == ',');
@ -1381,7 +1391,7 @@ static game_state *new_game(midend *me, const game_params *params,
state->clues->clues = snewn(a, long);
for (i = 0; i < a; i++) {
if (dsf_canonify(state->clues->dsf, i) == i) {
if (dsf_minimal(state->clues->dsf, i) == i) {
long clue = 0;
switch (*p) {
case 'a':
@ -1448,7 +1458,7 @@ static void free_game(game_state *state)
sfree(state->grid);
sfree(state->pencil);
if (--state->clues->refcount <= 0) {
sfree(state->clues->dsf);
dsf_free(state->clues->dsf);
sfree(state->clues->clues);
sfree(state->clues);
}
@ -1490,16 +1500,6 @@ static char *solve_game(const game_state *state, const game_state *currstate,
return out;
}
static bool game_can_format_as_text_now(const game_params *params)
{
return true;
}
static char *game_text_format(const game_state *state)
{
return NULL;
}
struct game_ui {
/*
* These are the coordinates of the currently highlighted
@ -1525,6 +1525,17 @@ struct game_ui {
* allowed on immutable squares.
*/
bool hcursor;
/*
* User preference option: if the user right-clicks in a square
* and presses a number key to add/remove a pencil mark, do we
* hide the mouse highlight again afterwards?
*
* Historically our answer was yes. The Android port prefers no.
* There are advantages both ways, depending how much you dislike
* the highlight cluttering your view. So it's a preference.
*/
bool pencil_keep_highlight;
};
static game_ui *new_ui(const game_state *state)
@ -1533,8 +1544,9 @@ static game_ui *new_ui(const game_state *state)
ui->hx = ui->hy = 0;
ui->hpencil = false;
ui->hshow = false;
ui->hcursor = false;
ui->hshow = ui->hcursor = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->pencil_keep_highlight = false;
return ui;
}
@ -1544,13 +1556,26 @@ static void free_ui(game_ui *ui)
sfree(ui);
}
static char *encode_ui(const game_ui *ui)
static config_item *get_prefs(game_ui *ui)
{
return NULL;
config_item *ret;
ret = snewn(2, config_item);
ret[0].name = "Keep mouse highlight after changing a pencil mark";
ret[0].kw = "pencil-keep-highlight";
ret[0].type = C_BOOLEAN;
ret[0].u.boolean.bval = ui->pencil_keep_highlight;
ret[1].name = NULL;
ret[1].type = C_END;
return ret;
}
static void decode_ui(game_ui *ui, const char *encoding)
static void set_prefs(game_ui *ui, const config_item *cfg)
{
ui->pencil_keep_highlight = cfg[0].u.boolean.bval;
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
@ -1569,6 +1594,14 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
}
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
if (ui->hshow && (button == CURSOR_SELECT))
return ui->hpencil ? "Ink" : "Pencil";
return "";
}
#define PREFERRED_TILESIZE 48
#define TILESIZE (ds->tilesize)
#define BORDER (TILESIZE / 2)
@ -1613,7 +1646,7 @@ static bool check_errors(const game_state *state, long *errors)
for (i = 0; i < a; i++) {
long clue;
j = dsf_canonify(state->clues->dsf, i);
j = dsf_minimal(state->clues->dsf, i);
if (j == i) {
cluevals[i] = state->grid[i];
} else {
@ -1647,7 +1680,7 @@ static bool check_errors(const game_state *state, long *errors)
}
for (i = 0; i < a; i++) {
j = dsf_canonify(state->clues->dsf, i);
j = dsf_minimal(state->clues->dsf, i);
if (j == i) {
if ((state->clues->clues[j] & ~CMASK) != cluevals[i]) {
errs = true;
@ -1709,7 +1742,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
int tx, ty;
char buf[80];
button &= ~MOD_MASK;
button = STRIP_BUTTON_MODIFIERS(button);
tx = FROMCOORD(x);
ty = FROMCOORD(y);
@ -1726,7 +1759,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
ui->hpencil = false;
}
ui->hcursor = false;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (button == RIGHT_BUTTON) {
/*
@ -1746,20 +1779,18 @@ static char *interpret_move(const game_state *state, game_ui *ui,
ui->hshow = false;
}
ui->hcursor = false;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
}
if (IS_CURSOR_MOVE(button)) {
move_cursor(button, &ui->hx, &ui->hy, w, w, false);
ui->hshow = true;
ui->hcursor = true;
return UI_UPDATE;
return move_cursor(button, &ui->hx, &ui->hy, w, w, false, &ui->hshow);
}
if (ui->hshow &&
(button == CURSOR_SELECT)) {
ui->hpencil ^= 1;
ui->hcursor = true;
return UI_UPDATE;
return MOVE_UI_UPDATE;
}
if (ui->hshow &&
@ -1776,10 +1807,31 @@ static char *interpret_move(const game_state *state, game_ui *ui,
if (ui->hpencil && state->grid[ui->hy*w+ui->hx])
return NULL;
/*
* If you ask to fill a square with what it already contains,
* or blank it when it's already empty, that has no effect...
*/
if ((!ui->hpencil || n == 0) && state->grid[ui->hy*w+ui->hx] == n &&
state->pencil[ui->hy*w+ui->hx] == 0) {
/* ... expect to remove the cursor in mouse mode. */
if (!ui->hcursor) {
ui->hshow = false;
return MOVE_UI_UPDATE;
}
return NULL;
}
sprintf(buf, "%c%d,%d,%d",
(char)(ui->hpencil && n > 0 ? 'P' : 'R'), ui->hx, ui->hy, n);
if (!ui->hcursor) ui->hshow = false;
/*
* Hide the highlight after a keypress, if it was mouse-
* generated. Also, don't hide it if this move has changed
* pencil marks and the user preference says not to hide the
* highlight in that situation.
*/
if (!ui->hcursor && !(ui->hpencil && ui->pencil_keep_highlight))
ui->hshow = false;
return dupstr(buf);
}
@ -1854,7 +1906,7 @@ static game_state *execute_move(const game_state *from, const char *move)
#define SIZE(w) ((w) * TILESIZE + 2*BORDER)
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Ick: fake up `ds->tilesize' for macro expansion purposes */
struct { int tilesize; } ads, *ds = &ads;
@ -1939,6 +1991,7 @@ static void draw_tile(drawing *dr, game_drawstate *ds, struct clues *clues,
int tx, ty, tw, th;
int cx, cy, cw, ch;
char str[64];
bool draw_clue = dsf_minimal(clues->dsf, y*w+x) == y*w+x;
tx = BORDER + x * TILESIZE + 1 + GRIDEXTRA;
ty = BORDER + y * TILESIZE + 1 + GRIDEXTRA;
@ -1948,13 +2001,13 @@ static void draw_tile(drawing *dr, game_drawstate *ds, struct clues *clues,
cw = tw = TILESIZE-1-2*GRIDEXTRA;
ch = th = TILESIZE-1-2*GRIDEXTRA;
if (x > 0 && dsf_canonify(clues->dsf, y*w+x) == dsf_canonify(clues->dsf, y*w+x-1))
if (x > 0 && dsf_equivalent(clues->dsf, y*w+x, y*w+x-1))
cx -= GRIDEXTRA, cw += GRIDEXTRA;
if (x+1 < w && dsf_canonify(clues->dsf, y*w+x) == dsf_canonify(clues->dsf, y*w+x+1))
if (x+1 < w && dsf_equivalent(clues->dsf, y*w+x, y*w+x+1))
cw += GRIDEXTRA;
if (y > 0 && dsf_canonify(clues->dsf, y*w+x) == dsf_canonify(clues->dsf, (y-1)*w+x))
if (y > 0 && dsf_equivalent(clues->dsf, y*w+x, (y-1)*w+x))
cy -= GRIDEXTRA, ch += GRIDEXTRA;
if (y+1 < w && dsf_canonify(clues->dsf, y*w+x) == dsf_canonify(clues->dsf, (y+1)*w+x))
if (y+1 < w && dsf_equivalent(clues->dsf, y*w+x, (y+1)*w+x))
ch += GRIDEXTRA;
clip(dr, cx, cy, cw, ch);
@ -1979,17 +2032,21 @@ static void draw_tile(drawing *dr, game_drawstate *ds, struct clues *clues,
* Draw the corners of thick lines in corner-adjacent squares,
* which jut into this square by one pixel.
*/
if (x > 0 && y > 0 && dsf_canonify(clues->dsf, y*w+x) != dsf_canonify(clues->dsf, (y-1)*w+x-1))
draw_rect(dr, tx-GRIDEXTRA, ty-GRIDEXTRA, GRIDEXTRA, GRIDEXTRA, COL_GRID);
if (x+1 < w && y > 0 && dsf_canonify(clues->dsf, y*w+x) != dsf_canonify(clues->dsf, (y-1)*w+x+1))
draw_rect(dr, tx+TILESIZE-1-2*GRIDEXTRA, ty-GRIDEXTRA, GRIDEXTRA, GRIDEXTRA, COL_GRID);
if (x > 0 && y+1 < w && dsf_canonify(clues->dsf, y*w+x) != dsf_canonify(clues->dsf, (y+1)*w+x-1))
draw_rect(dr, tx-GRIDEXTRA, ty+TILESIZE-1-2*GRIDEXTRA, GRIDEXTRA, GRIDEXTRA, COL_GRID);
if (x+1 < w && y+1 < w && dsf_canonify(clues->dsf, y*w+x) != dsf_canonify(clues->dsf, (y+1)*w+x+1))
draw_rect(dr, tx+TILESIZE-1-2*GRIDEXTRA, ty+TILESIZE-1-2*GRIDEXTRA, GRIDEXTRA, GRIDEXTRA, COL_GRID);
if (x > 0 && y > 0 && !dsf_equivalent(clues->dsf, y*w+x, (y-1)*w+x-1))
draw_rect(dr, tx-GRIDEXTRA, ty-GRIDEXTRA,
GRIDEXTRA, GRIDEXTRA, COL_GRID);
if (x+1 < w && y > 0 && !dsf_equivalent(clues->dsf, y*w+x, (y-1)*w+x+1))
draw_rect(dr, tx+TILESIZE-1-2*GRIDEXTRA, ty-GRIDEXTRA,
GRIDEXTRA, GRIDEXTRA, COL_GRID);
if (x > 0 && y+1 < w && !dsf_equivalent(clues->dsf, y*w+x, (y+1)*w+x-1))
draw_rect(dr, tx-GRIDEXTRA, ty+TILESIZE-1-2*GRIDEXTRA,
GRIDEXTRA, GRIDEXTRA, COL_GRID);
if (x+1 < w && y+1 < w && !dsf_equivalent(clues->dsf, y*w+x, (y+1)*w+x+1))
draw_rect(dr, tx+TILESIZE-1-2*GRIDEXTRA, ty+TILESIZE-1-2*GRIDEXTRA,
GRIDEXTRA, GRIDEXTRA, COL_GRID);
/* Draw the box clue. */
if (dsf_canonify(clues->dsf, y*w+x) == y*w+x) {
if (draw_clue) {
long clue = clues->clues[y*w+x];
long cluetype = clue & CMASK, clueval = clue & ~CMASK;
int size = dsf_size(clues->dsf, y*w+x);
@ -2043,7 +2100,7 @@ static void draw_tile(drawing *dr, game_drawstate *ds, struct clues *clues,
pr = pl + TILESIZE - GRIDEXTRA;
pt = ty + GRIDEXTRA;
pb = pt + TILESIZE - GRIDEXTRA;
if (dsf_canonify(clues->dsf, y*w+x) == y*w+x) {
if (draw_clue) {
/*
* Make space for the clue text.
*/
@ -2097,7 +2154,7 @@ static void draw_tile(drawing *dr, game_drawstate *ds, struct clues *clues,
* And move it down a bit if it's collided with some
* clue text.
*/
if (dsf_canonify(clues->dsf, y*w+x) == y*w+x) {
if (draw_clue) {
pt = max(pt, ty + GRIDEXTRA * 3 + TILESIZE/4);
}
@ -2133,14 +2190,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
int x, y;
if (!ds->started) {
/*
* The initial contents of the window are not guaranteed and
* can vary with front ends. To be on the safe side, all
* games should start by drawing a big background-colour
* rectangle covering the whole window.
*/
draw_rect(dr, 0, 0, SIZE(w), SIZE(w), COL_BACKGROUND);
/*
* Big containing rectangle.
*/
@ -2217,21 +2266,15 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
if (state->completed)
return false;
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
static void game_print_size(const game_params *params, const game_ui *ui,
float *x, float *y)
{
int pw, ph;
/*
* We use 9mm squares by default, like Solo.
*/
game_compute_size(params, 900, &pw, &ph);
game_compute_size(params, 900, ui, &pw, &ph);
*x = pw / 100.0F;
*y = ph / 100.0F;
}
@ -2245,7 +2288,7 @@ static void game_print_size(const game_params *params, float *x, float *y)
* single polygon.
*/
static void outline_block_structure(drawing *dr, game_drawstate *ds,
int w, int *dsf, int ink)
int w, DSF *dsf, int ink)
{
int a = w*w;
int *coords;
@ -2258,7 +2301,7 @@ static void outline_block_structure(drawing *dr, game_drawstate *ds,
* Iterate over all the blocks.
*/
for (i = 0; i < a; i++) {
if (dsf_canonify(dsf, i) != i)
if (dsf_minimal(dsf, i) != i)
continue;
/*
@ -2297,11 +2340,11 @@ static void outline_block_structure(drawing *dr, game_drawstate *ds,
tx = x - dy + dx;
ty = y + dx + dy;
nin += (tx >= 0 && tx < w && ty >= 0 && ty < w &&
dsf_canonify(dsf, ty*w+tx) == i);
dsf_minimal(dsf, ty*w+tx) == i);
tx = x - dy;
ty = y + dx;
nin += (tx >= 0 && tx < w && ty >= 0 && ty < w &&
dsf_canonify(dsf, ty*w+tx) == i);
dsf_minimal(dsf, ty*w+tx) == i);
if (nin == 0) {
/*
* Turn right.
@ -2338,9 +2381,9 @@ static void outline_block_structure(drawing *dr, game_drawstate *ds,
* somewhere sensible.
*/
assert(x >= 0 && x < w && y >= 0 && y < w &&
dsf_canonify(dsf, y*w+x) == i);
dsf_minimal(dsf, y*w+x) == i);
assert(x+dx < 0 || x+dx >= w || y+dy < 0 || y+dy >= w ||
dsf_canonify(dsf, (y+dy)*w+(x+dx)) != i);
dsf_minimal(dsf, (y+dy)*w+(x+dx)) != i);
/*
* Record the point we just went past at one end of the
@ -2367,7 +2410,8 @@ static void outline_block_structure(drawing *dr, game_drawstate *ds,
sfree(coords);
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
static void game_print(drawing *dr, const game_state *state, const game_ui *ui,
int tilesize)
{
int w = state->par.w;
int ink = print_mono_colour(dr, 0);
@ -2413,7 +2457,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
*/
for (y = 0; y < w; y++)
for (x = 0; x < w; x++)
if (dsf_canonify(state->clues->dsf, y*w+x) == y*w+x) {
if (dsf_minimal(state->clues->dsf, y*w+x) == y*w+x) {
long clue = state->clues->clues[y*w+x];
long cluetype = clue & CMASK, clueval = clue & ~CMASK;
int size = dsf_size(state->clues->dsf, y*w+x);
@ -2478,13 +2522,15 @@ const struct game thegame = {
dup_game,
free_game,
true, solve_game,
false, game_can_format_as_text_now, game_text_format,
false, NULL, NULL, /* can_format_as_text_now, text_format */
get_prefs, set_prefs,
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
game_request_keys,
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILESIZE, game_compute_size, game_set_size,
@ -2498,7 +2544,7 @@ const struct game thegame = {
game_status,
true, false, game_print_size, game_print,
false, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
REQUIRE_RBUTTON | REQUIRE_NUMPAD, /* flags */
};

View file

@ -563,7 +563,7 @@ void latin_solver_free_scratch(struct latin_solver_scratch *scratch)
sfree(scratch);
}
void latin_solver_alloc(struct latin_solver *solver, digit *grid, int o)
bool latin_solver_alloc(struct latin_solver *solver, digit *grid, int o)
{
int x, y;
@ -577,14 +577,23 @@ void latin_solver_alloc(struct latin_solver *solver, digit *grid, int o)
memset(solver->row, 0, o*o);
memset(solver->col, 0, o*o);
for (x = 0; x < o; x++)
for (y = 0; y < o; y++)
if (grid[y*o+x])
latin_solver_place(solver, x, y, grid[y*o+x]);
#ifdef STANDALONE_SOLVER
solver->names = NULL;
#endif
for (x = 0; x < o; x++) {
for (y = 0; y < o; y++) {
int n = grid[y*o+x];
if (n) {
if (cube(x, y, n))
latin_solver_place(solver, x, y, n);
else
return false; /* puzzle is already inconsistent */
}
}
}
return true;
}
void latin_solver_free(struct latin_solver *solver)
@ -810,15 +819,17 @@ static int latin_solver_recurse
} else {
newctx = ctx;
}
latin_solver_alloc(&subsolver, outgrid, o);
#ifdef STANDALONE_SOLVER
subsolver.names = solver->names;
#endif
ret = latin_solver_top(&subsolver, diff_recursive,
diff_simple, diff_set_0, diff_set_1,
diff_forcing, diff_recursive,
usersolvers, valid, newctx,
ctxnew, ctxfree);
if (latin_solver_alloc(&subsolver, outgrid, o))
ret = latin_solver_top(&subsolver, diff_recursive,
diff_simple, diff_set_0, diff_set_1,
diff_forcing, diff_recursive,
usersolvers, valid, newctx,
ctxnew, ctxfree);
else
ret = diff_impossible;
latin_solver_free(&subsolver);
if (ctxnew)
ctxfree(newctx);
@ -1059,11 +1070,13 @@ int latin_solver(digit *grid, int o, int maxdiff,
struct latin_solver solver;
int diff;
latin_solver_alloc(&solver, grid, o);
diff = latin_solver_main(&solver, maxdiff,
diff_simple, diff_set_0, diff_set_1,
diff_forcing, diff_recursive,
usersolvers, valid, ctx, ctxnew, ctxfree);
if (latin_solver_alloc(&solver, grid, o))
diff = latin_solver_main(&solver, maxdiff,
diff_simple, diff_set_0, diff_set_1,
diff_forcing, diff_recursive,
usersolvers, valid, ctx, ctxnew, ctxfree);
else
diff = diff_impossible;
latin_solver_free(&solver);
return diff;
}
@ -1298,121 +1311,4 @@ bool latin_check(digit *sq, int order)
return ret;
}
/* --------------------------------------------------------
* Testing (and printing).
*/
#ifdef STANDALONE_LATIN_TEST
#include <stdio.h>
#include <time.h>
const char *quis;
static void latin_print(digit *sq, int order)
{
int x, y;
for (y = 0; y < order; y++) {
for (x = 0; x < order; x++) {
printf("%2u ", ELT(sq, x, y));
}
printf("\n");
}
printf("\n");
}
static void gen(int order, random_state *rs, int debug)
{
digit *sq;
solver_show_working = debug;
sq = latin_generate(order, rs);
latin_print(sq, order);
if (latin_check(sq, order)) {
fprintf(stderr, "Square is not a latin square!");
exit(1);
}
sfree(sq);
}
void test_soak(int order, random_state *rs)
{
digit *sq;
int n = 0;
time_t tt_start, tt_now, tt_last;
solver_show_working = 0;
tt_now = tt_start = time(NULL);
while(1) {
sq = latin_generate(order, rs);
sfree(sq);
n++;
tt_last = time(NULL);
if (tt_last > tt_now) {
tt_now = tt_last;
printf("%d total, %3.1f/s\n", n,
(double)n / (double)(tt_now - tt_start));
}
}
}
void usage_exit(const char *msg)
{
if (msg)
fprintf(stderr, "%s: %s\n", quis, msg);
fprintf(stderr, "Usage: %s [--seed SEED] --soak <params> | [game_id [game_id ...]]\n", quis);
exit(1);
}
int main(int argc, char *argv[])
{
int i, soak = 0;
random_state *rs;
time_t seed = time(NULL);
quis = argv[0];
while (--argc > 0) {
const char *p = *++argv;
if (!strcmp(p, "--soak"))
soak = 1;
else if (!strcmp(p, "--seed")) {
if (argc == 0)
usage_exit("--seed needs an argument");
seed = (time_t)atoi(*++argv);
argc--;
} else if (*p == '-')
usage_exit("unrecognised option");
else
break; /* finished options */
}
rs = random_new((void*)&seed, sizeof(time_t));
if (soak == 1) {
if (argc != 1) usage_exit("only one argument for --soak");
test_soak(atoi(*argv), rs);
} else {
if (argc > 0) {
for (i = 0; i < argc; i++) {
gen(atoi(*argv++), rs, 1);
}
} else {
while (1) {
i = random_upto(rs, 20) + 1;
gen(i, rs, 0);
}
}
}
random_free(rs);
return 0;
}
#endif
/* vim: set shiftwidth=4 tabstop=8: */

View file

@ -61,10 +61,13 @@ int latin_solver_forcing(struct latin_solver *solver,
/* --- Solver allocation --- */
/* Fills in (and allocates members for) a latin_solver struct.
* Will allocate members of snew, but not snew itself
* Will allocate members of solver, but not solver itself
* (allowing 'struct latin_solver' to be the first element in a larger
* struct, for example). */
void latin_solver_alloc(struct latin_solver *solver, digit *grid, int o);
* struct, for example).
*
* latin_solver_alloc returns false if the digits already in the grid
* could not be legally placed. */
bool latin_solver_alloc(struct latin_solver *solver, digit *grid, int o);
void latin_solver_free(struct latin_solver *solver);
/* Allocates scratch space (for _set and _forcing) */

View file

@ -1,24 +0,0 @@
# -*- makefile -*-
LIGHTUP_EXTRA = combi
lightup : [X] GTK COMMON lightup LIGHTUP_EXTRA lightup-icon|no-icon
lightup : [G] WINDOWS COMMON lightup LIGHTUP_EXTRA lightup.res|noicon.res
lightupsolver : [U] lightup[STANDALONE_SOLVER] LIGHTUP_EXTRA STANDALONE
lightupsolver : [C] lightup[STANDALONE_SOLVER] LIGHTUP_EXTRA STANDALONE
ALL += lightup[COMBINED] LIGHTUP_EXTRA
!begin am gtk
GAMES += lightup
!end
!begin >list.c
A(lightup) \
!end
!begin >gamedesc.txt
lightup:lightup.exe:Light Up:Light-bulb placing puzzle:Place bulbs to light up all the squares.
!end

View file

@ -47,7 +47,12 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#include <limits.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
@ -58,7 +63,7 @@
*/
#if defined STANDALONE_SOLVER
#define SOLVER_DIAGNOSTICS
int verbose = 0;
static int verbose = 0;
#undef debug
#define debug(x) printf x
#elif defined SOLVER_DIAGNOSTICS
@ -346,6 +351,8 @@ static const char *validate_params(const game_params *params, bool full)
{
if (params->w < 2 || params->h < 2)
return "Width and height must be at least 2";
if (params->w > INT_MAX / params->h)
return "Width times height must not be unreasonably large";
if (full) {
if (params->blackpc < 5 || params->blackpc > 100)
return "Percentage of black squares must be between 5% and 100%";
@ -353,6 +360,8 @@ static const char *validate_params(const game_params *params, bool full)
if (params->symm == SYMM_ROT4)
return "4-fold symmetry is only available with square grids";
}
if ((params->symm == SYMM_ROT4 || params->symm == SYMM_REF4) && params->w < 3 && params->h < 3)
return "Width or height must be at least 3 for 4-way symmetry";
if (params->symm < 0 || params->symm >= SYMM_MAX)
return "Unknown symmetry type";
if (params->difficulty < 0 || params->difficulty > DIFFCOUNT)
@ -411,6 +420,8 @@ static void debug_state(game_state *state)
int x, y;
char c = '?';
(void)c; /* placate -Wunused-but-set-variable if debug() does nothing */
for (y = 0; y < state->h; y++) {
for (x = 0; x < state->w; x++) {
c = '.';
@ -1822,32 +1833,67 @@ static char *game_text_format(const game_state *state)
struct game_ui {
int cur_x, cur_y;
bool cur_visible;
/*
* User preference: when a square contains both a black blob for
* 'user is convinced this isn't a light' and a yellow highlight
* for 'this square is lit by a light', both of which rule out it
* being a light, should we still bother to show the blob?
*/
bool draw_blobs_when_lit;
};
static void legacy_prefs_override(struct game_ui *ui_out)
{
static bool initialised = false;
static int draw_blobs_when_lit = -1;
if (!initialised) {
initialised = true;
draw_blobs_when_lit = getenv_bool("LIGHTUP_LIT_BLOBS", -1);
}
if (draw_blobs_when_lit != -1)
ui_out->draw_blobs_when_lit = draw_blobs_when_lit;
}
static game_ui *new_ui(const game_state *state)
{
game_ui *ui = snew(game_ui);
ui->cur_x = ui->cur_y = 0;
ui->cur_visible = false;
ui->cur_visible = getenv_bool("PUZZLES_SHOW_CURSOR", false);
ui->draw_blobs_when_lit = true;
legacy_prefs_override(ui);
return ui;
}
static config_item *get_prefs(game_ui *ui)
{
config_item *ret;
ret = snewn(2, config_item);
ret[0].name = "Draw non-light marks even when lit";
ret[0].kw = "show-lit-blobs";
ret[0].type = C_BOOLEAN;
ret[0].u.boolean.bval = ui->draw_blobs_when_lit;
ret[1].name = NULL;
ret[1].type = C_END;
return ret;
}
static void set_prefs(game_ui *ui, const config_item *cfg)
{
ui->draw_blobs_when_lit = cfg[0].u.boolean.bval;
}
static void free_ui(game_ui *ui)
{
sfree(ui);
}
static char *encode_ui(const game_ui *ui)
{
/* nothing to encode. */
return NULL;
}
static void decode_ui(game_ui *ui, const char *encoding)
{
/* nothing to decode. */
}
static void game_changed_state(game_ui *ui, const game_state *oldstate,
const game_state *newstate)
{
@ -1855,6 +1901,26 @@ static void game_changed_state(game_ui *ui, const game_state *oldstate,
ui->cur_visible = false;
}
static const char *current_key_label(const game_ui *ui,
const game_state *state, int button)
{
int cx = ui->cur_x, cy = ui->cur_y;
unsigned int flags = GRID(state, flags, cx, cy);
if (!ui->cur_visible) return "";
if (button == CURSOR_SELECT) {
if (flags & (F_BLACK | F_IMPOSSIBLE)) return "";
if (flags & F_LIGHT) return "Clear";
return "Light";
}
if (button == CURSOR_SELECT2) {
if (flags & (F_BLACK | F_LIGHT)) return "";
if (flags & F_IMPOSSIBLE) return "Clear";
return "Mark";
}
return "";
}
#define DF_BLACK 1 /* black square */
#define DF_NUMBERED 2 /* black square with number */
#define DF_LIT 4 /* display (white) square lit up */
@ -1888,7 +1954,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
enum { NONE, FLIP_LIGHT, FLIP_IMPOSSIBLE } action = NONE;
int cx = -1, cy = -1;
unsigned int flags;
char buf[80], *nullret = UI_UPDATE, *empty = UI_UPDATE, c;
char buf[80], *nullret = MOVE_NO_EFFECT, *empty = MOVE_UI_UPDATE, c;
if (button == LEFT_BUTTON || button == RIGHT_BUTTON) {
if (ui->cur_visible)
@ -1898,8 +1964,7 @@ static char *interpret_move(const game_state *state, game_ui *ui,
cy = FROMCOORD(y);
action = (button == LEFT_BUTTON) ? FLIP_LIGHT : FLIP_IMPOSSIBLE;
} else if (IS_CURSOR_SELECT(button) ||
button == 'i' || button == 'I' ||
button == ' ' || button == '\r' || button == '\n') {
button == 'i' || button == 'I') {
if (ui->cur_visible) {
/* Only allow cursor-effect operations if the cursor is visible
* (otherwise you have no idea which square it might be affecting) */
@ -1910,11 +1975,10 @@ static char *interpret_move(const game_state *state, game_ui *ui,
}
ui->cur_visible = true;
} else if (IS_CURSOR_MOVE(button)) {
move_cursor(button, &ui->cur_x, &ui->cur_y, state->w, state->h, false);
ui->cur_visible = true;
nullret = empty;
nullret = move_cursor(button, &ui->cur_x, &ui->cur_y,
state->w, state->h, false, &ui->cur_visible);
} else
return NULL;
return MOVE_UNUSED;
switch (action) {
case FLIP_LIGHT:
@ -2002,7 +2066,7 @@ badmove:
/* XXX entirely cloned from fifteen.c; separate out? */
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
/* Ick: fake up `ds->tilesize' for macro expansion purposes */
struct { int tilesize; } ads, *ds = &ads;
@ -2111,7 +2175,7 @@ static unsigned int tile_flags(game_drawstate *ds, const game_state *state,
return ret;
}
static void tile_redraw(drawing *dr, game_drawstate *ds,
static void tile_redraw(drawing *dr, game_drawstate *ds, const game_ui *ui,
const game_state *state, int x, int y)
{
unsigned int ds_flags = GRID(ds, flags, x, y);
@ -2141,13 +2205,7 @@ static void tile_redraw(drawing *dr, game_drawstate *ds,
draw_circle(dr, dx + TILE_SIZE/2, dy + TILE_SIZE/2, TILE_RADIUS,
lcol, COL_BLACK);
} else if ((ds_flags & DF_IMPOSSIBLE)) {
static int draw_blobs_when_lit = -1;
if (draw_blobs_when_lit < 0) {
char *env = getenv("LIGHTUP_LIT_BLOBS");
draw_blobs_when_lit = (!env || (env[0] == 'y' ||
env[0] == 'Y'));
}
if (!(ds_flags & DF_LIT) || draw_blobs_when_lit) {
if (!(ds_flags & DF_LIT) || ui->draw_blobs_when_lit) {
int rlen = TILE_SIZE / 4;
draw_rect(dr, dx + TILE_SIZE/2 - rlen/2,
dy + TILE_SIZE/2 - rlen/2,
@ -2176,10 +2234,6 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
if (flashtime) flashing = (int)(flashtime * 3 / FLASH_TIME) != 1;
if (!ds->started) {
draw_rect(dr, 0, 0,
TILE_SIZE * ds->w + 2 * BORDER,
TILE_SIZE * ds->h + 2 * BORDER, COL_BACKGROUND);
draw_rect_outline(dr, COORD(0)-1, COORD(0)-1,
TILE_SIZE * ds->w + 2,
TILE_SIZE * ds->h + 2,
@ -2196,7 +2250,7 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
unsigned int ds_flags = tile_flags(ds, state, ui, x, y, flashing);
if (ds_flags != GRID(ds, flags, x, y)) {
GRID(ds, flags, x, y) = ds_flags;
tile_redraw(dr, ds, state, x, y);
tile_redraw(dr, ds, ui, state, x, y);
}
}
}
@ -2235,24 +2289,21 @@ static int game_status(const game_state *state)
return state->completed ? +1 : 0;
}
static bool game_timing_state(const game_state *state, game_ui *ui)
{
return true;
}
static void game_print_size(const game_params *params, float *x, float *y)
static void game_print_size(const game_params *params, const game_ui *ui,
float *x, float *y)
{
int pw, ph;
/*
* I'll use 6mm squares by default.
*/
game_compute_size(params, 600, &pw, &ph);
game_compute_size(params, 600, ui, &pw, &ph);
*x = pw / 100.0F;
*y = ph / 100.0F;
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
static void game_print(drawing *dr, const game_state *state, const game_ui *ui,
int tilesize)
{
int w = state->w, h = state->h;
int ink = print_mono_colour(dr, 0);
@ -2323,12 +2374,14 @@ const struct game thegame = {
free_game,
true, solve_game,
true, game_can_format_as_text_now, game_text_format,
get_prefs, set_prefs,
new_ui,
free_ui,
encode_ui,
decode_ui,
NULL, /* encode_ui */
NULL, /* decode_ui */
NULL, /* game_request_keys */
game_changed_state,
current_key_label,
interpret_move,
execute_move,
PREFERRED_TILE_SIZE, game_compute_size, game_set_size,
@ -2342,7 +2395,7 @@ const struct game thegame = {
game_status,
true, false, game_print_size, game_print,
false, /* wants_statusbar */
false, game_timing_state,
false, NULL, /* timing_state */
0, /* flags */
};

View file

@ -0,0 +1,17 @@
/*
* list.c: List of pointers to puzzle structures, for monolithic
* platforms.
*
* This file depends on the header "generated-games.h", which is
* constructed by CMakeLists.txt.
*/
#include "puzzles.h"
#define GAME(x) &x,
const game *gamelist[] = {
#include "generated-games.h"
};
#undef GAME
const int gamecount = lenof(gamelist);

View file

@ -8,7 +8,11 @@
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <math.h>
#ifdef NO_TGMATH_H
# include <math.h>
#else
# include <tgmath.h>
#endif
#include "puzzles.h"
#include "tree234.h"
@ -79,7 +83,7 @@ static bool can_colour_face(grid *g, char* board, int face_index,
enum face_colour colour)
{
int i, j;
grid_face *test_face = g->faces + face_index;
grid_face *test_face = g->faces[face_index];
grid_face *starting_face, *current_face;
grid_dot *starting_dot;
int transitions;
@ -344,7 +348,7 @@ void generate_loop(grid *g, char *board, random_state *rs,
* to check every face of the board (the grid structure does not keep a
* list of the infinite face's neighbours). */
for (i = 0; i < num_faces; i++) {
grid_face *f = g->faces + i;
grid_face *f = g->faces[i];
struct face_score *fs = face_scores + i;
if (board[i] != FACE_GREY) continue;
/* We need the full colourability check here, it's not enough simply
@ -426,7 +430,7 @@ void generate_loop(grid *g, char *board, random_state *rs,
del234(darkable_faces_sorted, fs);
/* Remember which face we've just coloured */
cur_face = g->faces + i;
cur_face = g->faces[i];
/* The face we've just coloured potentially affects the colourability
* and the scores of any neighbouring faces (touching at a corner or
@ -452,7 +456,7 @@ void generate_loop(grid *g, char *board, random_state *rs,
if (FACE_COLOUR(f) != FACE_GREY) continue;
/* Find the face index and face_score* corresponding to f */
fi = f - g->faces;
fi = f->index;
fs = face_scores + fi;
/* Remove from lightable list if it's in there. We do this,
@ -513,7 +517,7 @@ void generate_loop(grid *g, char *board, random_state *rs,
enum face_colour opp =
(board[j] == FACE_WHITE) ? FACE_BLACK : FACE_WHITE;
if (can_colour_face(g, board, j, opp)) {
grid_face *face = g->faces +j;
grid_face *face = g->faces[j];
if (do_random_pass) {
/* final random pass */
if (!random_upto(rs, 10))

View file

@ -2,8 +2,8 @@
* loopgen.h: interface file for loop generation functions for grid.[ch].
*/
#ifndef _LOOPGEN_H
#define _LOOPGEN_H
#ifndef PUZZLES_LOOPGEN_H
#define PUZZLES_LOOPGEN_H
#include "puzzles.h"
#include "grid.h"
@ -13,7 +13,7 @@ enum face_colour { FACE_WHITE, FACE_GREY, FACE_BLACK };
/* face should be of type grid_face* here. */
#define FACE_COLOUR(face) \
( (face) == NULL ? FACE_BLACK : \
board[(face) - g->faces] )
board[(face)->index] )
typedef int (*loopgen_bias_fn_t)(void *ctx, char *board, int face);

View file

@ -1,31 +0,0 @@
# -*- makefile -*-
LOOPY_EXTRA = tree234 dsf grid penrose loopgen
loopy : [X] GTK COMMON loopy LOOPY_EXTRA loopy-icon|no-icon
loopy : [G] WINDOWS COMMON loopy LOOPY_EXTRA loopy.res|noicon.res
loopysolver : [U] loopy[STANDALONE_SOLVER] LOOPY_EXTRA STANDALONE m.lib
loopysolver : [C] loopy[STANDALONE_SOLVER] LOOPY_EXTRA STANDALONE
#penrose : [U] penrose[TEST_PENROSE] STANDALONE m.lib
#penrose : [C] penrose[TEST_PENROSE] STANDALONE
#test-basis : [U] penrose[TEST_VECTORS] tree234 STANDALONE m.lib
#test-basis : [C] penrose[TEST_VECTORS] tree234 STANDALONE
ALL += loopy[COMBINED] LOOPY_EXTRA
!begin am gtk
GAMES += loopy
!end
!begin >list.c
A(loopy) \
!end
!begin >gamedesc.txt
loopy:loopy.exe:Loopy:Loop-drawing puzzle:Draw a single closed loop, given clues about number of adjacent edges.
!end

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more