diff options
author | davidovski <david@davidovski.xyz> | 2022-05-31 11:05:19 +0100 |
---|---|---|
committer | davidovski <david@davidovski.xyz> | 2022-05-31 11:05:19 +0100 |
commit | 48ca75555522716f0f686dcae3dd6cf3d8ad714d (patch) | |
tree | 00c0f58550ba4661e87376f2f02c8001c69bae44 /repo/media | |
parent | 871b2b573f01c1b3176a0f65458b3d281b41c437 (diff) |
removed idea of repos
Diffstat (limited to 'repo/media')
96 files changed, 0 insertions, 8589 deletions
diff --git a/repo/media/alsa-firmware/alsa-firmware.xibuild b/repo/media/alsa-firmware/alsa-firmware.xibuild deleted file mode 100644 index d6311a9..0000000 --- a/repo/media/alsa-firmware/alsa-firmware.xibuild +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make xmlto" -DEPS="alsa-tools" - -DESC="Firmware binaries for loader programs in alsa-tools and hotplug firmware loader" - -PKG_VER=1.2.4 -SOURCE=https://www.alsa-project.org/files/pub/firmware/alsa-firmware-$PKG_VER.tar.bz2 -ADDITIONAL=" - use-uint32_t-instead-u_int32_t.patch -" - -prepare () { - apply_patches -} - -build () { - ./configure --prefix=/usr && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/alsa-firmware/use-uint32_t-instead-u_int32_t.patch b/repo/media/alsa-firmware/use-uint32_t-instead-u_int32_t.patch deleted file mode 100644 index 70112fd..0000000 --- a/repo/media/alsa-firmware/use-uint32_t-instead-u_int32_t.patch +++ /dev/null @@ -1,52 +0,0 @@ -diff -rNu a/hdsploader/digiface_firmware.dat b/hdsploader/digiface_firmware.dat ---- a/hdsploader/digiface_firmware.dat 2020-10-20 12:28:42.000000000 +0100 -+++ b/hdsploader/digiface_firmware.dat 2022-03-09 18:13:56.491133428 +0000 -@@ -1,5 +1,5 @@ - /* stored in little-endian */ --static u_int32_t digiface_firmware[24413] = { -+static uint32_t digiface_firmware[24413] = { - 0xffffffff, 0x66aa9955, 0x8001000c, 0xe0000000, 0x8006800c, 0xb0000000, - 0x8004800c, 0xb4fc0100, 0x8003000c, 0x00000000, 0x8001000c, 0x90000000, - 0x8004000c, 0x00000000, 0x8001000c, 0x80000000, 0x0002000c, 0x581a000a, -diff -rNu a/hdsploader/digiface_firmware_rev11.dat b/hdsploader/digiface_firmware_rev11.dat ---- a/hdsploader/digiface_firmware_rev11.dat 2020-10-20 12:28:42.000000000 +0100 -+++ b/hdsploader/digiface_firmware_rev11.dat 2022-03-09 18:13:56.491133428 +0000 -@@ -1,5 +1,5 @@ - /* stored in little-endian */ --static u_int32_t digiface_firmware_rev11[24413] = { -+static uint32_t digiface_firmware_rev11[24413] = { - 0xffffffff, 0x66aa9955, 0x8001000c, 0xe0000000, 0x8006800c, 0xb0000000, - 0x8004800c, 0xb4fc0100, 0x8003000c, 0x00000000, 0x8001000c, 0x90000000, - 0x8004000c, 0x00000000, 0x8001000c, 0x80000000, 0x0002000c, 0x581a000a, -diff -rNu a/hdsploader/multiface_firmware.dat b/hdsploader/multiface_firmware.dat ---- a/hdsploader/multiface_firmware.dat 2020-10-20 12:28:42.000000000 +0100 -+++ b/hdsploader/multiface_firmware.dat 2022-03-09 18:13:56.491133428 +0000 -@@ -1,5 +1,5 @@ - /* stored in little-endian */ --static u_int32_t multiface_firmware[24413] = { -+static uint32_t multiface_firmware[24413] = { - 0xffffffff, 0x66aa9955, 0x8001000c, 0xe0000000, 0x8006800c, 0xb0000000, - 0x8004800c, 0xb4fc0100, 0x8003000c, 0x00000000, 0x8001000c, 0x90000000, - 0x8004000c, 0x00000000, 0x8001000c, 0x80000000, 0x0002000c, 0x581a000a, -diff -rNu a/hdsploader/multiface_firmware_rev11.dat b/hdsploader/multiface_firmware_rev11.dat ---- a/hdsploader/multiface_firmware_rev11.dat 2020-10-20 12:28:42.000000000 +0100 -+++ b/hdsploader/multiface_firmware_rev11.dat 2022-03-09 18:13:56.491133428 +0000 -@@ -1,5 +1,5 @@ - /* stored in little-endian */ --static u_int32_t multiface_firmware_rev11[24413] = { -+static uint32_t multiface_firmware_rev11[24413] = { - 0xffffffff, 0x66aa9955, 0x8001000c, 0xe0000000, 0x8006800c, 0xb0000000, - 0x8004800c, 0xb4fc0100, 0x8003000c, 0x00000000, 0x8001000c, 0x90000000, - 0x8004000c, 0x00000000, 0x8001000c, 0x80000000, 0x0002000c, 0x581a000a, -diff -rNu a/hdsploader/tobin.c b/hdsploader/tobin.c ---- a/hdsploader/tobin.c 2020-10-20 12:28:42.000000000 +0100 -+++ b/hdsploader/tobin.c 2022-03-09 18:13:56.491133428 +0000 -@@ -8,7 +8,7 @@ - #include "multiface_firmware.dat" - #include "multiface_firmware_rev11.dat" - --int write_bin_file(u_int32_t *array, const char *filename) -+int write_bin_file(uint32_t *array, const char *filename) - { - FILE *out; - diff --git a/repo/media/alsa-lib/alsa-lib.xibuild b/repo/media/alsa-lib/alsa-lib.xibuild deleted file mode 100644 index 214edb3..0000000 --- a/repo/media/alsa-lib/alsa-lib.xibuild +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="musl python" - -DESC="An alternative implementation of Linux sound support" - -PKG_VER=1.2.6.1 -SOURCE=https://www.alsa-project.org/files/pub/lib/alsa-lib-$PKG_VER.tar.bz2 - -build () { - ./configure - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/alsa-plugins/alsa-plugins.xibuild b/repo/media/alsa-plugins/alsa-plugins.xibuild deleted file mode 100644 index d85404e..0000000 --- a/repo/media/alsa-plugins/alsa-plugins.xibuild +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="musl alsa-lib" - -DESC="Additional ALSA plugins" - -PKG_VER=1.2.6 -SOURCE=https://www.alsa-project.org/files/pub/plugins/alsa-plugins-$PKG_VER.tar.bz2 - -build () { - ./configure --sysconfdir=/etc && - make -} - -package () { - make DESTDIR=$PKG_DEST install - mv "$PKG_DEST/etc/alsa/conf.d/99-pulseaudio-default.conf.example" \ - "$PKG_DEST/usr/share/alsa/alsa.conf.d/99-pulseaudio-default.conf" - -} - diff --git a/repo/media/alsa-plugins/pulseaudio-alsa.xibuild b/repo/media/alsa-plugins/pulseaudio-alsa.xibuild deleted file mode 100644 index 942ee75..0000000 --- a/repo/media/alsa-plugins/pulseaudio-alsa.xibuild +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -DESC="Config files required for alsa to work with pulseaudio" -DESP="alsa-plugins" - -package () { - mkdir -p $PKG_DEST/etc/alsa/conf.d - ln -s /usr/share/alsa/alsa.conf.d/99-pulseaudio-default.conf $PKG_DEST/etc/alsa/conf.d/ -} diff --git a/repo/media/alsa-tools/alsa-tools.xibuild b/repo/media/alsa-tools/alsa-tools.xibuild deleted file mode 100644 index 5901538..0000000 --- a/repo/media/alsa-tools/alsa-tools.xibuild +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="alsa-lib" - -DESC="Advanced tools for certain sound cards" - -PKG_VER=1.2.5 -SOURCE=https://www.alsa-project.org/files/pub/tools/alsa-tools-$PKG_VER.tar.bz2 - -prepare () { - rm -rf qlo10k1 Makefile gitcompile -} - -build () { - buildroot=$(pwd) - for tool in *; do - case $tool in - seq ) - tool_dir=seq/sbiload - ;; - * ) - tool_dir=$tool - ;; - esac - - cd $tool_dir - ./configure --prefix=/usr - make - make DESTDIR=$PKG_DEST install - cd $buildroot - - done -unset tool tool_dir - -} diff --git a/repo/media/alsa-utils/alsa-utils.xibuild b/repo/media/alsa-utils/alsa-utils.xibuild deleted file mode 100644 index 91ba31e..0000000 --- a/repo/media/alsa-utils/alsa-utils.xibuild +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make xmlto" -DEPS="alsa-lib libsamplerate" - -DESC="Advanced Linux Sound Architecture - Utilities" - -PKG_VER=1.2.6 -SOURCE=https://www.alsa-project.org/files/pub/utils/alsa-utils-$PKG_VER.tar.bz2 - -build () { - ./configure \ - --disable-nls \ - --disable-bat \ - --disable-xmlto \ - --with-curses=ncursesw && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/aom/aom.xibuild b/repo/media/aom/aom.xibuild deleted file mode 100644 index 66aaa4b..0000000 --- a/repo/media/aom/aom.xibuild +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh - -NAME="aom" -DESC="Alliance for Open Media (AOM) AV1 codec SDK" - -MAKEDEPS="cmake " -DEPS="musl " - -PKG_VER=3.3.0 -SOURCE="https://aomedia.googlesource.com/aom/+archive/v$PKG_VER.tar.gz" -ADDITIONAL="fix-stack-size-e53da0b.patch " - -build () { - cmake -B build -G Ninja \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/aom/fix-stack-size-e53da0b.patch b/repo/media/aom/fix-stack-size-e53da0b.patch deleted file mode 100644 index d8206e8..0000000 --- a/repo/media/aom/fix-stack-size-e53da0b.patch +++ /dev/null @@ -1,78 +0,0 @@ -From e53da0b1bf2652896bed7b65929a1d8d0729d922 Mon Sep 17 00:00:00 2001 -From: Wan-Teh Chang <wtc@google.com> -Date: Thu, 27 Aug 2020 20:49:03 -0700 -Subject: [PATCH] Ensure thread stack size is at least 256 KB - -BUG=aomedia:2754 - -Change-Id: Ia6e211f9b87bc2efe376e7b9f4adb11741850b18 ---- - -diff --git a/aom_util/aom_thread.c b/aom_util/aom_thread.c -index a749a22..8411569 100644 ---- a/aom_util/aom_thread.c -+++ b/aom_util/aom_thread.c -@@ -133,16 +133,39 @@ - goto Error; - } - if (pthread_cond_init(&worker->impl_->condition_, NULL)) { -- pthread_mutex_destroy(&worker->impl_->mutex_); -- goto Error; -+ goto Error1; - } -+ pthread_attr_t *attr = NULL; -+#if HAVE_PTHREAD_H -+ pthread_attr_t thread_attributes; -+ attr = &thread_attributes; -+ if (pthread_attr_init(attr)) { -+ goto Error2; -+ } -+ size_t stack_size; -+ if (pthread_attr_getstacksize(attr, &stack_size)) { -+ pthread_attr_destroy(attr); -+ goto Error2; -+ } -+ const size_t kMinStackSize = 256 * 1024; -+ if (stack_size < kMinStackSize && -+ pthread_attr_setstacksize(attr, kMinStackSize)) { -+ pthread_attr_destroy(attr); -+ goto Error2; -+ } -+#endif // HAVE_PTHREAD_H - pthread_mutex_lock(&worker->impl_->mutex_); -- ok = !pthread_create(&worker->impl_->thread_, NULL, thread_loop, worker); -+ ok = !pthread_create(&worker->impl_->thread_, attr, thread_loop, worker); - if (ok) worker->status_ = OK; - pthread_mutex_unlock(&worker->impl_->mutex_); -+#if HAVE_PTHREAD_H -+ pthread_attr_destroy(attr); -+#endif - if (!ok) { -- pthread_mutex_destroy(&worker->impl_->mutex_); -+ Error2: - pthread_cond_destroy(&worker->impl_->condition_); -+ Error1: -+ pthread_mutex_destroy(&worker->impl_->mutex_); - Error: - aom_free(worker->impl_); - worker->impl_ = NULL; -diff --git a/aom_util/aom_thread.h b/aom_util/aom_thread.h -index 8d04312..efbed78 100644 ---- a/aom_util/aom_thread.h -+++ b/aom_util/aom_thread.h -@@ -32,6 +32,7 @@ - #include <process.h> // NOLINT - #include <windows.h> // NOLINT - typedef HANDLE pthread_t; -+typedef int pthread_attr_t; - typedef CRITICAL_SECTION pthread_mutex_t; - - #if _WIN32_WINNT < 0x0600 -@@ -147,6 +148,7 @@ - #include <sys/builtin.h> // NOLINT - - #define pthread_t TID -+#define pthread_attr_t int - #define pthread_mutex_t HMTX - - typedef struct { diff --git a/repo/media/audiofile/audiofile.xibuild b/repo/media/audiofile/audiofile.xibuild deleted file mode 100644 index 3a7de56..0000000 --- a/repo/media/audiofile/audiofile.xibuild +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make asciidoc" -DEPS="alsa-lib flac" - -DESC="Libraries to support basic sound file formats" - -PKG_VER=0.3.6 -SOURCE=https://download.gnome.org/sources/audiofile/${PKG_VER%.*}/audiofile-$PKG_VER.tar.xz - -ADDITIONAL=" - https://www.linuxfromscratch.org/patches/blfs/svn/audiofile-$PKG_VER-consolidated_patches-1.patch - " - -prepare () { - patch -Np1 -i audiofile-$PKG_VER-consolidated_patches-1.patch -} - -build () { - autoreconf -fiv && - - ./configure --prefix=/usr --disable-static && - - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/babl/babl.xibuild b/repo/media/babl/babl.xibuild deleted file mode 100644 index 5c73c51..0000000 --- a/repo/media/babl/babl.xibuild +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh - -NAME="babl" -DESC="Dynamic, any to any, pixel format conversion library" - -MAKEDEPS="meson ninja " -DEPS="lcms2 " - -PKG_VER=0.1.92 -SOURCE="http://download.gimp.org/pub/babl/${PKG_VER%.*}/babl-$PKG_VER.tar.xz" -ADDITIONAL="meson-0.60.patch " - -prepare () { - apply_patches -} - -build () { - cd build && - meson --prefix=/usr \ - .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/babl/meson-0.60.patch b/repo/media/babl/meson-0.60.patch deleted file mode 100644 index 5ac3862..0000000 --- a/repo/media/babl/meson-0.60.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/meson.build -+++ b/meson.build -@@ -55,8 +55,7 @@ - stability_version_number = (major_version != 0 ? minor_version : micro_version) - stable = (stability_version_number % 2 == 0) - --conf.set10('BABL_UNSTABLE', not stable, Description: -- 'Define to 1 if this is an unstable version of BABL.') -+conf.set10('BABL_UNSTABLE', not stable) - - conf.set ('BABL_MAJOR_VERSION', '@0@'.format(major_version)) - conf.set ('BABL_MINOR_VERSION', '@0@'.format(minor_version)) diff --git a/repo/media/dav1d/dav1d.xibuild b/repo/media/dav1d/dav1d.xibuild deleted file mode 100644 index 9b88e78..0000000 --- a/repo/media/dav1d/dav1d.xibuild +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -NAME="dav1d" -DESC="small and fast AV1 Decoder" - -MAKEDEPS="meson ninja nasm" -DEPS="musl " - -PKG_VER=1.0.0 -SOURCE="https://code.videolan.org/videolan/dav1d/-/archive/$PKG_VER/dav1d-$PKG_VER.tar.bz2" -ADDITIONAL="fix-asmcheck.patch " - -prepare () { - apply_patches -} - -build () { - mkdir build && - cd build && - meson --prefix=/usr \ - -Denable_asm=true \ - -Dfuzzing_engine=none \ - .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/dav1d/fix-asmcheck.patch b/repo/media/dav1d/fix-asmcheck.patch deleted file mode 100644 index 922db6e..0000000 --- a/repo/media/dav1d/fix-asmcheck.patch +++ /dev/null @@ -1,63 +0,0 @@ -Patch-Source: https://code.videolan.org/videolan/dav1d/-/merge_requests/1406 -From 87f9a81cd770e49394a45deca7a3df41243de00b Mon Sep 17 00:00:00 2001 -From: Henrik Gramner <gramner@twoorioles.com> -Date: Sat, 19 Mar 2022 03:09:31 +0100 -Subject: [PATCH] checkasm: Fix alignment of stack buffers in the film grain - tests - ---- - tests/checkasm/filmgrain.c | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/tests/checkasm/filmgrain.c b/tests/checkasm/filmgrain.c -index ff7ffc36..9aa4f269 100644 ---- a/tests/checkasm/filmgrain.c -+++ b/tests/checkasm/filmgrain.c -@@ -83,9 +83,9 @@ static void check_gen_grny(const Dav1dFilmGrainDSPContext *const dsp) { - } - - static void check_gen_grnuv(const Dav1dFilmGrainDSPContext *const dsp) { -- entry grain_lut_y[GRAIN_HEIGHT + 1][GRAIN_WIDTH]; -- entry grain_lut_c[GRAIN_HEIGHT][GRAIN_WIDTH]; -- entry grain_lut_a[GRAIN_HEIGHT + 1][GRAIN_WIDTH]; -+ ALIGN_STK_16(entry, grain_lut_y, GRAIN_HEIGHT + 1,[GRAIN_WIDTH]); -+ ALIGN_STK_16(entry, grain_lut_c, GRAIN_HEIGHT, [GRAIN_WIDTH]); -+ ALIGN_STK_16(entry, grain_lut_a, GRAIN_HEIGHT + 1,[GRAIN_WIDTH]); - - declare_func(void, entry grain_lut[][GRAIN_WIDTH], - const entry grain_lut_y[][GRAIN_WIDTH], -@@ -155,6 +155,7 @@ static void check_fgy_sbrow(const Dav1dFilmGrainDSPContext *const dsp) { - - if (check_func(dsp->fgy_32x32xn, "fgy_32x32xn_%dbpc", BITDEPTH)) { - ALIGN_STK_16(Dav1dFilmGrainData, fg_data, 16,); -+ ALIGN_STK_16(entry, grain_lut, GRAIN_HEIGHT + 1,[GRAIN_WIDTH]); - ALIGN_STK_64(uint8_t, scaling, SCALING_SIZE,); - fg_data[0].seed = rnd() & 0xFFFF; - -@@ -164,7 +165,6 @@ static void check_fgy_sbrow(const Dav1dFilmGrainDSPContext *const dsp) { - const int bitdepth_max = 0xff; - #endif - -- entry grain_lut[GRAIN_HEIGHT + 1][GRAIN_WIDTH]; - fg_data[0].grain_scale_shift = rnd() & 3; - fg_data[0].ar_coeff_shift = (rnd() & 3) + 6; - fg_data[0].ar_coeff_lag = rnd() & 3; -@@ -267,6 +267,7 @@ static void check_fguv_sbrow(const Dav1dFilmGrainDSPContext *const dsp) { - BITDEPTH, ss_name[layout_idx], csfl)) - { - ALIGN_STK_16(Dav1dFilmGrainData, fg_data, 1,); -+ ALIGN_STK_16(entry, grain_lut, 2,[GRAIN_HEIGHT + 1][GRAIN_WIDTH]); - ALIGN_STK_64(uint8_t, scaling, SCALING_SIZE,); - - fg_data[0].seed = rnd() & 0xFFFF; -@@ -279,7 +280,6 @@ static void check_fguv_sbrow(const Dav1dFilmGrainDSPContext *const dsp) { - const int uv_pl = rnd() & 1; - const int is_identity = rnd() & 1; - -- entry grain_lut[2][GRAIN_HEIGHT + 1][GRAIN_WIDTH]; - fg_data[0].grain_scale_shift = rnd() & 3; - fg_data[0].ar_coeff_shift = (rnd() & 3) + 6; - fg_data[0].ar_coeff_lag = rnd() & 3; --- -GitLab - diff --git a/repo/media/exiv2/exiv2.xibuild b/repo/media/exiv2/exiv2.xibuild deleted file mode 100644 index 9a640bc..0000000 --- a/repo/media/exiv2/exiv2.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -NAME="exiv2" -DESC="Exif and Iptc metadata manipulation library and tools." - -MAKEDEPS="cmake " -DEPS="expat musl zlib " - -PKG_VER=0.27.5 -SOURCE="https://github.com/Exiv2/exiv2/releases/download/v$PKG_VER/exiv2-$PKG_VER-Source.tar.gz" - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/faac/faac.xibuild b/repo/media/faac/faac.xibuild deleted file mode 100644 index 07b66fd..0000000 --- a/repo/media/faac/faac.xibuild +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make xmlto" -DEPS="musl" - -DESC="Freeware Advanced Audio Coder" - -PKG_VER=1_30 -SOURCE=https://github.com/knik0/faac/archive/$PKG_VER/faac-$PKG_VER.tar.gz - -build () { - ./bootstrap && - ./configure --prefix=/usr --disable-static && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/faad2/faad2.xibuild b/repo/media/faad2/faad2.xibuild deleted file mode 100644 index 8528a6f..0000000 --- a/repo/media/faad2/faad2.xibuild +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make xmlto" -DEPS="alsa-lib libsamplerate" - -DESC="ISO AAC audio decoder" - -PKG_VER=2_10_0 -SOURCE=https://github.com/knik0/faad2/archive/$PKG_VER/faad2-$PKG_VER.tar.gz - -build () { - ./bootstrap && - ./configure --prefix=/usr --disable-static && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/fdk-aac/fdk-aac.xibuild b/repo/media/fdk-aac/fdk-aac.xibuild deleted file mode 100644 index c4aee9b..0000000 --- a/repo/media/fdk-aac/fdk-aac.xibuild +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make xmlto" -DEPS="alsa-lib" - -DESC="Fraunhofer FDK AAC library" - -PKG_VER=2.0.2 -SOURCE=https://downloads.sourceforge.net/opencore-amr/fdk-aac-$PKG_VER.tar.gz - -build () { - ./configure --prefix=/usr --disable-static && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/ffmpeg/0001-ffbuild-libversion.sh-add-shebang.patch b/repo/media/ffmpeg/0001-ffbuild-libversion.sh-add-shebang.patch deleted file mode 100644 index 1df1691..0000000 --- a/repo/media/ffmpeg/0001-ffbuild-libversion.sh-add-shebang.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 3eb43e2e9df80baad20722b3698e6995a546853a Mon Sep 17 00:00:00 2001 -From: Carlo Landmeter <clandmeter@alpinelinux.org> -Date: Tue, 29 Jun 2021 11:56:32 +0000 -Subject: [PATCH] ffbuild/libversion.sh: add shebang - -when using something like qemu-user where argv[0] is qemu the script -will not be exexuted by the shell. ---- - ffbuild/libversion.sh | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/ffbuild/libversion.sh b/ffbuild/libversion.sh -index 990ce9f640..30046b1d25 100755 ---- a/ffbuild/libversion.sh -+++ b/ffbuild/libversion.sh -@@ -1,3 +1,5 @@ -+#!/bin/sh -+ - toupper(){ - echo "$@" | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ - } --- -2.32.0 - diff --git a/repo/media/ffmpeg/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch b/repo/media/ffmpeg/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch deleted file mode 100644 index 9cc6fdf..0000000 --- a/repo/media/ffmpeg/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch +++ /dev/null @@ -1,55 +0,0 @@ -From ab11be0becb90542f10d5713659b559842c53af2 Mon Sep 17 00:00:00 2001 -From: Natanael Copa <ncopa@alpinelinux.org> -Date: Tue, 29 Mar 2016 15:15:17 +0200 -Subject: [PATCH] libavutil: clean up unused FF_SYMVER macro - -There is nothing using it since commit d63443b9 (lavc: drop the -av_fast_{re,m}alloc compatibility wrappers). - -Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> ---- - libavutil/internal.h | 28 ---------------------------- - 1 file changed, 28 deletions(-) - -diff --git a/libavutil/internal.h b/libavutil/internal.h -index 61784b5..69d63d5 100644 ---- a/libavutil/internal.h -+++ b/libavutil/internal.h -@@ -187,34 +187,6 @@ - #endif - - /** -- * Define a function with only the non-default version specified. -- * -- * On systems with ELF shared libraries, all symbols exported from -- * FFmpeg libraries are tagged with the name and major version of the -- * library to which they belong. If a function is moved from one -- * library to another, a wrapper must be retained in the original -- * location to preserve binary compatibility. -- * -- * Functions defined with this macro will never be used to resolve -- * symbols by the build-time linker. -- * -- * @param type return type of function -- * @param name name of function -- * @param args argument list of function -- * @param ver version tag to assign function -- */ --#if HAVE_SYMVER_ASM_LABEL --# define FF_SYMVER(type, name, args, ver) \ -- type ff_##name args __asm__ (EXTERN_PREFIX #name "@" ver); \ -- type ff_##name args --#elif HAVE_SYMVER_GNU_ASM --# define FF_SYMVER(type, name, args, ver) \ -- __asm__ (".symver ff_" #name "," EXTERN_PREFIX #name "@" ver); \ -- type ff_##name args; \ -- type ff_##name args --#endif -- --/** - * Return NULL if a threading library has not been enabled. - * Used to disable threading functions in AVCodec definitions - * when not needed. --- -2.7.4 - diff --git a/repo/media/ffmpeg/add-av_stream_get_first_dts-for-chromium.patch b/repo/media/ffmpeg/add-av_stream_get_first_dts-for-chromium.patch deleted file mode 100644 index 1ba7b76..0000000 --- a/repo/media/ffmpeg/add-av_stream_get_first_dts-for-chromium.patch +++ /dev/null @@ -1,45 +0,0 @@ -Patch-Source: https://github.com/archlinux/svntogit-packages/blob/afdf00ac125851675c1599ab46545f6c58cfb655/trunk/add-av_stream_get_first_dts-for-chromium.patch -From 95aab0fd83619408995720ce53d7a74790580220 Mon Sep 17 00:00:00 2001 -From: "liberato@chromium.org" <liberato@chromium.org> -Date: Wed, 7 Jul 2021 19:01:22 -0700 -Subject: [PATCH] Add av_stream_get_first_dts for Chromium - -[foutrelis: adjust for new FFStream struct replacing AVStreamInternal] ---- - libavformat/avformat.h | 4 ++++ - libavformat/utils.c | 7 +++++++ - 2 files changed, 11 insertions(+) - -diff --git a/libavformat/avformat.h b/libavformat/avformat.h -index cd7b0d941c..b4a6dce885 100644 ---- a/libavformat/avformat.h -+++ b/libavformat/avformat.h -@@ -1010,6 +1010,10 @@ struct AVCodecParserContext *av_stream_get_parser(const AVStream *s); - */ - int64_t av_stream_get_end_pts(const AVStream *st); - -+// Chromium: We use the internal field first_dts vvv -+int64_t av_stream_get_first_dts(const AVStream *st); -+// Chromium: We use the internal field first_dts ^^^ -+ - #define AV_PROGRAM_RUNNING 1 - - /** -diff --git a/libavformat/utils.c b/libavformat/utils.c -index de7580c32d..0ef0fe530e 100644 ---- a/libavformat/utils.c -+++ b/libavformat/utils.c -@@ -121,6 +121,13 @@ int64_t av_stream_get_end_pts(const AVStream *st) - return AV_NOPTS_VALUE; - } - -+// Chromium: We use the internal field first_dts vvv -+int64_t av_stream_get_first_dts(const AVStream *st) -+{ -+ return cffstream(st)->first_dts; -+} -+// Chromium: We use the internal field first_dts ^^^ -+ - struct AVCodecParserContext *av_stream_get_parser(const AVStream *st) - { - return st->internal->parser; diff --git a/repo/media/ffmpeg/ffmpeg.xibuild b/repo/media/ffmpeg/ffmpeg.xibuild deleted file mode 100644 index 6d7f960..0000000 --- a/repo/media/ffmpeg/ffmpeg.xibuild +++ /dev/null @@ -1,63 +0,0 @@ -#!/bin/sh - -NAME="ffmpeg" -DESC="Complete and free Internet live audio and video broadcasting solution for Linux/Unix" - -MAKEDEPS="make " -DEPS="alsa-lib aom gnutls libass bzip2 dav1d libdrm pulseaudio librist libsrt libtheora libva libvorbis libvpx libwebp libx11 libxcb musl opus sdl2 v4l-utils vidstab x264 x265 xvidcore zlib lame soxr" - -PKG_VER=5.0.1 -SOURCE="https://ffmpeg.org/releases/ffmpeg-$PKG_VER.tar.xz" -ADDITIONAL=" -0001-ffbuild-libversion.sh-add-shebang.patch -0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch -" - -prepare () { - apply_patches -} - -build () { - ./configure \ - --prefix=/usr \ - --enable-avfilter \ - --enable-gnutls \ - --enable-gpl \ - --enable-libass \ - --enable-libmp3lame \ - --enable-libpulse \ - --enable-libvorbis \ - --enable-libvpx \ - --enable-libxvid \ - --enable-libx264 \ - --enable-libx265 \ - --enable-libtheora \ - --enable-libv4l2 \ - --enable-libdav1d \ - --enable-lto \ - --enable-postproc \ - --enable-pic \ - --enable-pthreads \ - --enable-shared \ - --enable-libxcb \ - --enable-librist \ - --enable-libsrt \ - --enable-libvidstab \ - --disable-stripping \ - --disable-static \ - --disable-librtmp \ - --enable-libaom \ - --enable-libopus \ - --enable-libsoxr \ - --enable-libwebp \ - --enable-vaapi \ - --enable-vdpau \ - --enable-libdrm - - - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/ffmpeg4/0001-ffbuild-libversion.sh-add-shebang.patch b/repo/media/ffmpeg4/0001-ffbuild-libversion.sh-add-shebang.patch deleted file mode 100644 index 1df1691..0000000 --- a/repo/media/ffmpeg4/0001-ffbuild-libversion.sh-add-shebang.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 3eb43e2e9df80baad20722b3698e6995a546853a Mon Sep 17 00:00:00 2001 -From: Carlo Landmeter <clandmeter@alpinelinux.org> -Date: Tue, 29 Jun 2021 11:56:32 +0000 -Subject: [PATCH] ffbuild/libversion.sh: add shebang - -when using something like qemu-user where argv[0] is qemu the script -will not be exexuted by the shell. ---- - ffbuild/libversion.sh | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/ffbuild/libversion.sh b/ffbuild/libversion.sh -index 990ce9f640..30046b1d25 100755 ---- a/ffbuild/libversion.sh -+++ b/ffbuild/libversion.sh -@@ -1,3 +1,5 @@ -+#!/bin/sh -+ - toupper(){ - echo "$@" | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ - } --- -2.32.0 - diff --git a/repo/media/ffmpeg4/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch b/repo/media/ffmpeg4/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch deleted file mode 100644 index 9cc6fdf..0000000 --- a/repo/media/ffmpeg4/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch +++ /dev/null @@ -1,55 +0,0 @@ -From ab11be0becb90542f10d5713659b559842c53af2 Mon Sep 17 00:00:00 2001 -From: Natanael Copa <ncopa@alpinelinux.org> -Date: Tue, 29 Mar 2016 15:15:17 +0200 -Subject: [PATCH] libavutil: clean up unused FF_SYMVER macro - -There is nothing using it since commit d63443b9 (lavc: drop the -av_fast_{re,m}alloc compatibility wrappers). - -Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> ---- - libavutil/internal.h | 28 ---------------------------- - 1 file changed, 28 deletions(-) - -diff --git a/libavutil/internal.h b/libavutil/internal.h -index 61784b5..69d63d5 100644 ---- a/libavutil/internal.h -+++ b/libavutil/internal.h -@@ -187,34 +187,6 @@ - #endif - - /** -- * Define a function with only the non-default version specified. -- * -- * On systems with ELF shared libraries, all symbols exported from -- * FFmpeg libraries are tagged with the name and major version of the -- * library to which they belong. If a function is moved from one -- * library to another, a wrapper must be retained in the original -- * location to preserve binary compatibility. -- * -- * Functions defined with this macro will never be used to resolve -- * symbols by the build-time linker. -- * -- * @param type return type of function -- * @param name name of function -- * @param args argument list of function -- * @param ver version tag to assign function -- */ --#if HAVE_SYMVER_ASM_LABEL --# define FF_SYMVER(type, name, args, ver) \ -- type ff_##name args __asm__ (EXTERN_PREFIX #name "@" ver); \ -- type ff_##name args --#elif HAVE_SYMVER_GNU_ASM --# define FF_SYMVER(type, name, args, ver) \ -- __asm__ (".symver ff_" #name "," EXTERN_PREFIX #name "@" ver); \ -- type ff_##name args; \ -- type ff_##name args --#endif -- --/** - * Return NULL if a threading library has not been enabled. - * Used to disable threading functions in AVCodec definitions - * when not needed. --- -2.7.4 - diff --git a/repo/media/ffmpeg4/ffmpeg4.xibuild b/repo/media/ffmpeg4/ffmpeg4.xibuild deleted file mode 100644 index f17b0ef..0000000 --- a/repo/media/ffmpeg4/ffmpeg4.xibuild +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/sh - -NAME="ffmpeg4" -DESC="Complete and free Internet live audio and video broadcasting solution for Linux/Unix" - -MAKEDEPS="make " -DEPS="alsa-lib aom gnutls libass bzip2 dav1d libdrm pulseaudio librist libsrt libtheora libva libvorbis libvpx libwebp libx11 libxcb musl opus sdl2 v4l-utils vidstab x264 x265 xvidcore zlib lame soxr" - -PKG_VER=4.4.1 -SOURCE="https://ffmpeg.org/releases/ffmpeg-$PKG_VER.tar.xz" -ADDITIONAL=" -0001-ffbuild-libversion.sh-add-shebang.patch -0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch -" - -prepare () { - apply_patches -} - -build () { - ./configure \ - --prefix=/usr \ - --enable-avresample \ - --enable-avfilter \ - --enable-gnutls \ - --enable-gpl \ - --enable-libass \ - --enable-libmp3lame \ - --enable-libpulse \ - --enable-libvorbis \ - --enable-libvpx \ - --enable-libxvid \ - --enable-libx264 \ - --enable-libx265 \ - --enable-libtheora \ - --enable-libv4l2 \ - --enable-libdav1d \ - --enable-lto \ - --enable-postproc \ - --enable-pic \ - --enable-pthreads \ - --enable-shared \ - --enable-libxcb \ - --enable-libsrt \ - --enable-libvidstab \ - --disable-stripping \ - --disable-static \ - --disable-librtmp \ - --enable-libaom \ - --enable-libopus \ - --enable-libsoxr \ - --enable-libwebp \ - --enable-vaapi \ - --enable-vdpau \ - --enable-libdrm - - make -} - -package () { - make DESTDIR=$PKG_DEST install - rm -rf $PKG_DEST/usr/bin - rm -rf $PKG_DEST/usr/share -} diff --git a/repo/media/flac/flac.xibuild b/repo/media/flac/flac.xibuild deleted file mode 100644 index b72f3a5..0000000 --- a/repo/media/flac/flac.xibuild +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make xmlto" -DEPS="libogg nasm" - -DESC="Free Lossless Audio Codec" - -PKG_VER=1.3.3 -SOURCE=https://downloads.xiph.org/releases/flac/flac-$PKG_VER.tar.xz - -build () { - ./configure --prefix=/usr \ - --disable-thorough-tests \ - --docdir=/usr/share/doc/flac-$PKG_VER && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/gegl/gegl.xibuild b/repo/media/gegl/gegl.xibuild deleted file mode 100644 index 46f9482..0000000 --- a/repo/media/gegl/gegl.xibuild +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh - -NAME="gegl" -DESC="Graph based image processing framework" - -# TODO onlly install the fonts actually needed - -MAKEDEPS="encodings font-adobe-utopia-type1 font-alias font-bh-ttf font-bh-type1 fontconfig font-ibm-type1 font-misc-ethiopic font-util font-xfree86-type1 meson ninja graphviz libexecinfo" -DEPS="babl cairo ffmpeg4 gdk-pixbuf glib json-glib lcms2 intltool libjpeg-turbo libpng libraw librsvg libwebp musl pango tiff libexecinfo" - -PKG_VER=0.4.36 -SOURCE="https://download.gimp.org/pub/gegl/${PKG_VER%.*}/gegl-${PKG_VER}.tar.xz" - -build () { - mkdir build && - cd build && - export LDFLAGS="$LDFLAGS -lexecinfo" - meson --prefix=/usr \ - -Ddocs=false \ - .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/gexiv2/gexiv2.xibuild b/repo/media/gexiv2/gexiv2.xibuild deleted file mode 100644 index d18f579..0000000 --- a/repo/media/gexiv2/gexiv2.xibuild +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -NAME="gexiv2" -DESC="GObject-based wrapper around the Exiv2 library" - -MAKEDEPS="meson ninja python-gobject" -DEPS="exiv2 glib " - -PKG_VER=0.14.0 -SOURCE="https://download.gnome.org/sources/gexiv2/${PKG_VER%.*}/gexiv2-$PKG_VER.tar.xz" - -build () { - mkdir build && - cd build && - meson --prefix=/usr \ - -Dgtk_doc=true \ - -Dintrospection=true \ - -Dvapi=true \ - .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/giflib/giflib-restore-deprecated-functions.patch b/repo/media/giflib/giflib-restore-deprecated-functions.patch deleted file mode 100644 index 770cb16..0000000 --- a/repo/media/giflib/giflib-restore-deprecated-functions.patch +++ /dev/null @@ -1,17 +0,0 @@ -Source: Gentoo, written by Gary Stein -Upstream: No -Reason: restores deprecated GifQuantizeBuffer which some packages (notably libgdiplus) still use ---- a/Makefile 2019-03-28 14:57:23.000000000 -0400 -+++ b/Makefile 2019-03-31 23:38:20.700603561 -0400 -@@ -67,8 +67,8 @@ - - $(UTILS):: libgif.a libutil.a - --libgif.so: $(OBJECTS) $(HEADERS) -- $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS) -+libgif.so: $(OBJECTS) $(HEADERS) $(UOBJECTS) -+ $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS) $(UOBJECTS) - - libgif.a: $(OBJECTS) $(HEADERS) - $(AR) rcs libgif.a $(OBJECTS) - diff --git a/repo/media/giflib/giflib.xibuild b/repo/media/giflib/giflib.xibuild deleted file mode 100644 index 3206a35..0000000 --- a/repo/media/giflib/giflib.xibuild +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -NAME="giflib" -DESC="A library for reading and writing GIF images" - -MAKEDEPS="make " -DEPS="musl " - -PKG_VER=5.2.1 -SOURCE="https://downloads.sourceforge.net/sourceforge/giflib/giflib-$PKG_VER.tar.gz" -ADDITIONAL="giflib-restore-deprecated-functions.patch " - -build () { - make PREFIX=/usr -} - -package () { - make PREFIX=/usr DESTDIR=$PKG_DEST install -} diff --git a/repo/media/lame/lame.xibuild b/repo/media/lame/lame.xibuild deleted file mode 100644 index 311292b..0000000 --- a/repo/media/lame/lame.xibuild +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh - -NAME="lame" -DESC="An MP3 encoder and graphical frame analyzer" - -MAKEDEPS="make nasm" -DEPS="musl " - -PKG_VER=3.100 -SOURCE="https://downloads.sourceforge.net/project/lame/lame/$PKG_VER/lame-$PKG_VER.tar.gz" - -prepare () { - # fix for parallel builds - mkdir -p libmp3lame/i386/.libs - - # fix for pic build with new nasm - sed -i -e '/define sp/s/+/ + /g' libmp3lame/i386/nasm.h - - aclocal && automake --force --add-missing -} - -build () { - ./configure \ - --prefix=/usr - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static \ - --disable-mp3x \ - --enable-nasm \ - --with-pic - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libass/libass.xibuild b/repo/media/libass/libass.xibuild deleted file mode 100644 index 60e3e04..0000000 --- a/repo/media/libass/libass.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -NAME="libass" -DESC="Portable library for SSA/ASS subtitle rendering" - -MAKEDEPS="make " -DEPS="fontconfig fribidi freetype2 harfbuzz " - -PKG_VER=0.15.2 -SOURCE="https://github.com/libass/libass/releases/download/$PKG_VER/libass-$PKG_VER.tar.xz" - -build () { - ./configure \ - --prefix=/usr - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libcanberra/dont-assume-all-GdkDisplays-are-GdkX11Displays.patch b/repo/media/libcanberra/dont-assume-all-GdkDisplays-are-GdkX11Displays.patch deleted file mode 100644 index 79ced10..0000000 --- a/repo/media/libcanberra/dont-assume-all-GdkDisplays-are-GdkX11Displays.patch +++ /dev/null @@ -1,72 +0,0 @@ -From c0620e432650e81062c1967cc669829dbd29b310 Mon Sep 17 00:00:00 2001 -From: Michael Meeks <michael.meeks@suse.com> -Date: Fri, 9 Nov 2012 16:16:40 +0000 -Subject: gtk: Don't assume all GdkDisplays are GdkX11Displays: - broadway/wayland - ---- - src/canberra-gtk-module.c | 15 +++++++++++++++ - src/canberra-gtk.c | 5 +++++ - 2 files changed, 20 insertions(+) - -Patch-Source: http://git.0pointer.net/libcanberra.git/commit/?id=c0620e432650e81062c1967cc669829dbd29b310 - -diff --git a/src/canberra-gtk-module.c b/src/canberra-gtk-module.c -index 67791f0..c1532ab 100644 ---- a/src/canberra-gtk-module.c -+++ b/src/canberra-gtk-module.c -@@ -307,6 +307,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) { - guchar *data = NULL; - gint ret = -1; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return 0; -+#endif -+ - if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w), - gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"), - 0, G_MAXLONG, False, XA_CARDINAL, &type_return, -@@ -335,6 +340,11 @@ static gint display_get_desktop(GdkDisplay *d) { - guchar *data = NULL; - gint ret = -1; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return 0; -+#endif -+ - if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), DefaultRootWindow(GDK_DISPLAY_XDISPLAY(d)), - gdk_x11_get_xatom_by_name_for_display(d, "_NET_CURRENT_DESKTOP"), - 0, G_MAXLONG, False, XA_CARDINAL, &type_return, -@@ -365,6 +375,11 @@ static gboolean window_is_xembed(GdkDisplay *d, GdkWindow *w) { - gboolean ret = FALSE; - Atom xembed; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return FALSE; -+#endif -+ - /* Gnome Panel applets are XEMBED windows. We need to make sure we - * ignore them */ - -diff --git a/src/canberra-gtk.c b/src/canberra-gtk.c -index 34446f5..08cb668 100644 ---- a/src/canberra-gtk.c -+++ b/src/canberra-gtk.c -@@ -185,6 +185,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) { - guchar *data = NULL; - gint ret = -1; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return 0; -+#endif -+ - if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w), - gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"), - 0, G_MAXLONG, False, XA_CARDINAL, &type_return, --- -cgit v1.2.3 - diff --git a/repo/media/libcanberra/fix-build-with-no-lynx-installed.patch b/repo/media/libcanberra/fix-build-with-no-lynx-installed.patch deleted file mode 100644 index 1d6f46b..0000000 --- a/repo/media/libcanberra/fix-build-with-no-lynx-installed.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 5a71fffd3da981127d0a012dda1a1412acaee7d8 Mon Sep 17 00:00:00 2001 -From: Colin Walters <walters@verbum.org> -Date: Sun, 15 Jan 2012 16:35:43 -0500 -Subject: build-sys: Fix build with no lynx installed - ---- - Makefile.am | 8 +++++++- - doc/Makefile.am | 3 ++- - 2 files changed, 9 insertions(+), 2 deletions(-) - -Patch-Source: http://git.0pointer.net/libcanberra.git/commit/?id=5a71fffd3da981127d0a012dda1a1412acaee7d8 - -diff --git a/Makefile.am b/Makefile.am -index af36805..42a56e5 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -16,7 +16,11 @@ - # License along with libcanberra. If not, see - # <http://www.gnu.org/licenses/>. - --dist_doc_DATA = README -+dist_doc_DATA = -+ -+if USE_LYNX -+dist_doc_DATA += README -+endif - - EXTRA_DIST = \ - autogen.sh \ -@@ -27,7 +31,9 @@ EXTRA_DIST = \ - SUBDIRS = src gtkdoc doc - - MAINTAINERCLEANFILES = README -+if USE_LYNX - noinst_DATA = README -+endif - - pkgconfigdir = $(libdir)/pkgconfig - pkgconfig_DATA = libcanberra.pc -diff --git a/doc/Makefile.am b/doc/Makefile.am -index fae9958..cb27f22 100644 ---- a/doc/Makefile.am -+++ b/doc/Makefile.am -@@ -16,7 +16,7 @@ - # License along with libcanberra. If not, see - # <http://www.gnu.org/licenses/>. - --noinst_DATA = README.html README -+noinst_DATA = README.html - EXTRA_DIST = $(noinst_DATA) style.css README.html.in - - MAINTAINERCLEANFILES = README.html -@@ -26,6 +26,7 @@ if USE_LYNX - README: README.html - $(AM_V_GEN)lynx --dump $^ | sed 's,file://localhost/.*/doc/README.html,README,' > $@ - -+noinst_DATA += README - CLEANFILES += README - endif - --- -cgit v1.2.3 - diff --git a/repo/media/libcanberra/libcanberra-gtk3.xibuild b/repo/media/libcanberra/libcanberra-gtk3.xibuild deleted file mode 100644 index c597390..0000000 --- a/repo/media/libcanberra/libcanberra-gtk3.xibuild +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -DESC="GTK+3.0 bindings for libcanberra" -DEPS="glib gtk3 libcanberra libx11 musl" - -package () { - add_from_main usr/bin/canberra-gtk-play - add_from_main usr/lib/gtk-3.0/* - add_from_main usr/lib/gnome-settings-daemon-3.0/* - add_from_main usr/lib/libcanberra-gtk3.so.* - add_from_main usr/share/gdm/* - add_from_main usr/share/gnome/* -} diff --git a/repo/media/libcanberra/libcanberra.xibuild b/repo/media/libcanberra/libcanberra.xibuild deleted file mode 100644 index 7ae4a6b..0000000 --- a/repo/media/libcanberra/libcanberra.xibuild +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -NAME="libcanberra" -DESC="Simple audio library for GTK applications" - -MAKEDEPS="make " -DEPS="eudev libvorbis musl libtool " - -PKG_VER=0.30 -SOURCE="https://dev.alpinelinux.org/archive/libcanberra/libcanberra-$PKG_VER.tar.xz" -ADDITIONAL="fix-build-with-no-lynx-installed.patch dont-assume-all-GdkDisplays-are-GdkX11Displays.patch " - -prepare () { - apply_patches - autoreconf -if -} - -build () { - ./configure \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --enable-alsa \ - --enable-null \ - --disable-lynx \ - --disable-oss \ - --with-builtin=dso - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libid3tag/libid3tag.xibuild b/repo/media/libid3tag/libid3tag.xibuild deleted file mode 100644 index 696d19f..0000000 --- a/repo/media/libid3tag/libid3tag.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -NAME="libid3tag" -DESC="MAD ID3 tagger for MP3 audio files" - -MAKEDEPS="cmake " -DEPS="musl " - -PKG_VER=0.16.1 -SOURCE="https://github.com/tenacityteam/libid3tag/archive/refs/tags/$PKG_VER.tar.gz" - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/libjpeg-turbo/libjpeg-turbo.xibuild b/repo/media/libjpeg-turbo/libjpeg-turbo.xibuild deleted file mode 100644 index 5840097..0000000 --- a/repo/media/libjpeg-turbo/libjpeg-turbo.xibuild +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -NAME="libjpeg-turbo" -DESC="Accelerated baseline JPEG compression and decompression library" - -MAKEDEPS="" -DEPS="musl " - -PKG_VER=2.1.3 -SOURCE="https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-$PKG_VER.tar.gz" - -build () { - cmake -B build -G Ninja \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DWITH_JPEG8=1 \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} - diff --git a/repo/media/libmad/Provide-Thumb-2-alternative-code-for-MAD_F_MLN.patch b/repo/media/libmad/Provide-Thumb-2-alternative-code-for-MAD_F_MLN.patch deleted file mode 100644 index 4641510..0000000 --- a/repo/media/libmad/Provide-Thumb-2-alternative-code-for-MAD_F_MLN.patch +++ /dev/null @@ -1,34 +0,0 @@ -From: Dave Martin -Subject: "rsc" doesnt exist anymore in thumb2 - -diff --git a/fixed.h b/fixed.h -index 4b58abf..ba4bc26 100644 ---- a/fixed.h -+++ b/fixed.h -@@ -275,12 +275,25 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y) - : "+r" (lo), "+r" (hi) \ - : "%r" (x), "r" (y)) - -+#ifdef __thumb__ -+/* In Thumb-2, the RSB-immediate instruction is only allowed with a zero -+ operand. If needed this code can also support Thumb-1 -+ (simply append "s" to the end of the second two instructions). */ -+# define MAD_F_MLN(hi, lo) \ -+ asm ("rsbs %0, %0, #0\n\t" \ -+ "sbc %1, %1, %1\n\t" \ -+ "sub %1, %1, %2" \ -+ : "+&r" (lo), "=&r" (hi) \ -+ : "r" (hi) \ -+ : "cc") -+#else /* ! __thumb__ */ - # define MAD_F_MLN(hi, lo) \ - asm ("rsbs %0, %2, #0\n\t" \ - "rsc %1, %3, #0" \ -- : "=r" (lo), "=r" (hi) \ -+ : "=&r" (lo), "=r" (hi) \ - : "0" (lo), "1" (hi) \ - : "cc") -+#endif /* __thumb__ */ - - # define mad_f_scale64(hi, lo) \ - ({ mad_fixed_t __result; \ diff --git a/repo/media/libmad/automake.patch b/repo/media/libmad/automake.patch deleted file mode 100644 index bfa1fb7..0000000 --- a/repo/media/libmad/automake.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ./configure.ac.orig 2012-12-31 20:07:03.710178583 +0000 -+++ ./configure.ac 2012-12-31 20:07:21.443663905 +0000 -@@ -28,7 +28,7 @@ - - AM_INIT_AUTOMAKE - --AM_CONFIG_HEADER([config.h]) -+AC_CONFIG_HEADER([config.h]) - - dnl System type. - diff --git a/repo/media/libmad/length-check.patch b/repo/media/libmad/length-check.patch deleted file mode 100644 index 80e4846..0000000 --- a/repo/media/libmad/length-check.patch +++ /dev/null @@ -1,817 +0,0 @@ -From: Kurt Roeckx <kurt@roeckx.be> -Date: Sun, 28 Jan 2018 19:26:36 +0100 -Subject: Check the size before reading with mad_bit_read - -There are various cases where it attemps to read past the end of the buffer -using mad_bit_read(). Most functions didn't even know the size of the buffer -they were reading from. - -Index: libmad-0.15.1b/bit.c -=================================================================== ---- libmad-0.15.1b.orig/bit.c -+++ libmad-0.15.1b/bit.c -@@ -138,6 +138,9 @@ unsigned long mad_bit_read(struct mad_bi - { - register unsigned long value; - -+ if (len == 0) -+ return 0; -+ - if (bitptr->left == CHAR_BIT) - bitptr->cache = *bitptr->byte; - -Index: libmad-0.15.1b/frame.c -=================================================================== ---- libmad-0.15.1b.orig/frame.c -+++ libmad-0.15.1b/frame.c -@@ -120,11 +120,18 @@ static - int decode_header(struct mad_header *header, struct mad_stream *stream) - { - unsigned int index; -+ struct mad_bitptr bufend_ptr; - - header->flags = 0; - header->private_bits = 0; - -+ mad_bit_init(&bufend_ptr, stream->bufend); -+ - /* header() */ -+ if (mad_bit_length(&stream->ptr, &bufend_ptr) < 32) { -+ stream->error = MAD_ERROR_BUFLEN; -+ return -1; -+ } - - /* syncword */ - mad_bit_skip(&stream->ptr, 11); -@@ -225,8 +232,13 @@ int decode_header(struct mad_header *hea - /* error_check() */ - - /* crc_check */ -- if (header->flags & MAD_FLAG_PROTECTION) -+ if (header->flags & MAD_FLAG_PROTECTION) { -+ if (mad_bit_length(&stream->ptr, &bufend_ptr) < 16) { -+ stream->error = MAD_ERROR_BUFLEN; -+ return -1; -+ } - header->crc_target = mad_bit_read(&stream->ptr, 16); -+ } - - return 0; - } -@@ -338,7 +350,7 @@ int mad_header_decode(struct mad_header - stream->error = MAD_ERROR_BUFLEN; - goto fail; - } -- else if (!(ptr[0] == 0xff && (ptr[1] & 0xe0) == 0xe0)) { -+ else if ((end - ptr >= 2) && !(ptr[0] == 0xff && (ptr[1] & 0xe0) == 0xe0)) { - /* mark point where frame sync word was expected */ - stream->this_frame = ptr; - stream->next_frame = ptr + 1; -@@ -361,6 +373,8 @@ int mad_header_decode(struct mad_header - ptr = mad_bit_nextbyte(&stream->ptr); - } - -+ stream->error = MAD_ERROR_NONE; -+ - /* begin processing */ - stream->this_frame = ptr; - stream->next_frame = ptr + 1; /* possibly bogus sync word */ -@@ -413,7 +427,7 @@ int mad_header_decode(struct mad_header - /* check that a valid frame header follows this frame */ - - ptr = stream->next_frame; -- if (!(ptr[0] == 0xff && (ptr[1] & 0xe0) == 0xe0)) { -+ if ((end - ptr >= 2) && !(ptr[0] == 0xff && (ptr[1] & 0xe0) == 0xe0)) { - ptr = stream->next_frame = stream->this_frame + 1; - goto sync; - } -Index: libmad-0.15.1b/layer12.c -=================================================================== ---- libmad-0.15.1b.orig/layer12.c -+++ libmad-0.15.1b/layer12.c -@@ -72,10 +72,18 @@ mad_fixed_t const linear_table[14] = { - * DESCRIPTION: decode one requantized Layer I sample from a bitstream - */ - static --mad_fixed_t I_sample(struct mad_bitptr *ptr, unsigned int nb) -+mad_fixed_t I_sample(struct mad_bitptr *ptr, unsigned int nb, struct mad_stream *stream) - { - mad_fixed_t sample; -+ struct mad_bitptr frameend_ptr; - -+ mad_bit_init(&frameend_ptr, stream->next_frame); -+ -+ if (mad_bit_length(ptr, &frameend_ptr) < nb) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return 0; -+ } - sample = mad_bit_read(ptr, nb); - - /* invert most significant bit, extend sign, then scale to fixed format */ -@@ -106,6 +114,10 @@ int mad_layer_I(struct mad_stream *strea - struct mad_header *header = &frame->header; - unsigned int nch, bound, ch, s, sb, nb; - unsigned char allocation[2][32], scalefactor[2][32]; -+ struct mad_bitptr bufend_ptr, frameend_ptr; -+ -+ mad_bit_init(&bufend_ptr, stream->bufend); -+ mad_bit_init(&frameend_ptr, stream->next_frame); - - nch = MAD_NCHANNELS(header); - -@@ -118,6 +130,11 @@ int mad_layer_I(struct mad_stream *strea - /* check CRC word */ - - if (header->flags & MAD_FLAG_PROTECTION) { -+ if (mad_bit_length(&stream->ptr, &bufend_ptr) -+ < 4 * (bound * nch + (32 - bound))) { -+ stream->error = MAD_ERROR_BADCRC; -+ return -1; -+ } - header->crc_check = - mad_bit_crc(stream->ptr, 4 * (bound * nch + (32 - bound)), - header->crc_check); -@@ -133,6 +150,11 @@ int mad_layer_I(struct mad_stream *strea - - for (sb = 0; sb < bound; ++sb) { - for (ch = 0; ch < nch; ++ch) { -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < 4) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - nb = mad_bit_read(&stream->ptr, 4); - - if (nb == 15) { -@@ -145,6 +167,11 @@ int mad_layer_I(struct mad_stream *strea - } - - for (sb = bound; sb < 32; ++sb) { -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < 4) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - nb = mad_bit_read(&stream->ptr, 4); - - if (nb == 15) { -@@ -161,6 +188,11 @@ int mad_layer_I(struct mad_stream *strea - for (sb = 0; sb < 32; ++sb) { - for (ch = 0; ch < nch; ++ch) { - if (allocation[ch][sb]) { -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < 6) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - scalefactor[ch][sb] = mad_bit_read(&stream->ptr, 6); - - # if defined(OPT_STRICT) -@@ -185,8 +217,10 @@ int mad_layer_I(struct mad_stream *strea - for (ch = 0; ch < nch; ++ch) { - nb = allocation[ch][sb]; - frame->sbsample[ch][s][sb] = nb ? -- mad_f_mul(I_sample(&stream->ptr, nb), -+ mad_f_mul(I_sample(&stream->ptr, nb, stream), - sf_table[scalefactor[ch][sb]]) : 0; -+ if (stream->error != 0) -+ return -1; - } - } - -@@ -194,7 +228,14 @@ int mad_layer_I(struct mad_stream *strea - if ((nb = allocation[0][sb])) { - mad_fixed_t sample; - -- sample = I_sample(&stream->ptr, nb); -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < nb) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } -+ sample = I_sample(&stream->ptr, nb, stream); -+ if (stream->error != 0) -+ return -1; - - for (ch = 0; ch < nch; ++ch) { - frame->sbsample[ch][s][sb] = -@@ -280,13 +321,21 @@ struct quantclass { - static - void II_samples(struct mad_bitptr *ptr, - struct quantclass const *quantclass, -- mad_fixed_t output[3]) -+ mad_fixed_t output[3], struct mad_stream *stream) - { - unsigned int nb, s, sample[3]; -+ struct mad_bitptr frameend_ptr; -+ -+ mad_bit_init(&frameend_ptr, stream->next_frame); - - if ((nb = quantclass->group)) { - unsigned int c, nlevels; - -+ if (mad_bit_length(ptr, &frameend_ptr) < quantclass->bits) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return; -+ } - /* degrouping */ - c = mad_bit_read(ptr, quantclass->bits); - nlevels = quantclass->nlevels; -@@ -299,8 +348,14 @@ void II_samples(struct mad_bitptr *ptr, - else { - nb = quantclass->bits; - -- for (s = 0; s < 3; ++s) -+ for (s = 0; s < 3; ++s) { -+ if (mad_bit_length(ptr, &frameend_ptr) < nb) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return; -+ } - sample[s] = mad_bit_read(ptr, nb); -+ } - } - - for (s = 0; s < 3; ++s) { -@@ -336,6 +391,9 @@ int mad_layer_II(struct mad_stream *stre - unsigned char const *offsets; - unsigned char allocation[2][32], scfsi[2][32], scalefactor[2][32][3]; - mad_fixed_t samples[3]; -+ struct mad_bitptr frameend_ptr; -+ -+ mad_bit_init(&frameend_ptr, stream->next_frame); - - nch = MAD_NCHANNELS(header); - -@@ -402,13 +460,24 @@ int mad_layer_II(struct mad_stream *stre - for (sb = 0; sb < bound; ++sb) { - nbal = bitalloc_table[offsets[sb]].nbal; - -- for (ch = 0; ch < nch; ++ch) -+ for (ch = 0; ch < nch; ++ch) { -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < nbal) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - allocation[ch][sb] = mad_bit_read(&stream->ptr, nbal); -+ } - } - - for (sb = bound; sb < sblimit; ++sb) { - nbal = bitalloc_table[offsets[sb]].nbal; - -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < nbal) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - allocation[0][sb] = - allocation[1][sb] = mad_bit_read(&stream->ptr, nbal); - } -@@ -417,8 +486,14 @@ int mad_layer_II(struct mad_stream *stre - - for (sb = 0; sb < sblimit; ++sb) { - for (ch = 0; ch < nch; ++ch) { -- if (allocation[ch][sb]) -+ if (allocation[ch][sb]) { -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < 2) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - scfsi[ch][sb] = mad_bit_read(&stream->ptr, 2); -+ } - } - } - -@@ -441,6 +516,11 @@ int mad_layer_II(struct mad_stream *stre - for (sb = 0; sb < sblimit; ++sb) { - for (ch = 0; ch < nch; ++ch) { - if (allocation[ch][sb]) { -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < 6) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - scalefactor[ch][sb][0] = mad_bit_read(&stream->ptr, 6); - - switch (scfsi[ch][sb]) { -@@ -451,11 +531,21 @@ int mad_layer_II(struct mad_stream *stre - break; - - case 0: -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < 6) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - scalefactor[ch][sb][1] = mad_bit_read(&stream->ptr, 6); - /* fall through */ - - case 1: - case 3: -+ if (mad_bit_length(&stream->ptr, &frameend_ptr) < 6) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - scalefactor[ch][sb][2] = mad_bit_read(&stream->ptr, 6); - } - -@@ -487,7 +577,9 @@ int mad_layer_II(struct mad_stream *stre - if ((index = allocation[ch][sb])) { - index = offset_table[bitalloc_table[offsets[sb]].offset][index - 1]; - -- II_samples(&stream->ptr, &qc_table[index], samples); -+ II_samples(&stream->ptr, &qc_table[index], samples, stream); -+ if (stream->error != 0) -+ return -1; - - for (s = 0; s < 3; ++s) { - frame->sbsample[ch][3 * gr + s][sb] = -@@ -505,7 +597,9 @@ int mad_layer_II(struct mad_stream *stre - if ((index = allocation[0][sb])) { - index = offset_table[bitalloc_table[offsets[sb]].offset][index - 1]; - -- II_samples(&stream->ptr, &qc_table[index], samples); -+ II_samples(&stream->ptr, &qc_table[index], samples, stream); -+ if (stream->error != 0) -+ return -1; - - for (ch = 0; ch < nch; ++ch) { - for (s = 0; s < 3; ++s) { -Index: libmad-0.15.1b/layer3.c -=================================================================== ---- libmad-0.15.1b.orig/layer3.c -+++ libmad-0.15.1b/layer3.c -@@ -598,7 +598,8 @@ enum mad_error III_sideinfo(struct mad_b - static - unsigned int III_scalefactors_lsf(struct mad_bitptr *ptr, - struct channel *channel, -- struct channel *gr1ch, int mode_extension) -+ struct channel *gr1ch, int mode_extension, -+ unsigned int bits_left, unsigned int *part2_length) - { - struct mad_bitptr start; - unsigned int scalefac_compress, index, slen[4], part, n, i; -@@ -644,8 +645,12 @@ unsigned int III_scalefactors_lsf(struct - - n = 0; - for (part = 0; part < 4; ++part) { -- for (i = 0; i < nsfb[part]; ++i) -+ for (i = 0; i < nsfb[part]; ++i) { -+ if (bits_left < slen[part]) -+ return MAD_ERROR_BADSCFSI; - channel->scalefac[n++] = mad_bit_read(ptr, slen[part]); -+ bits_left -= slen[part]; -+ } - } - - while (n < 39) -@@ -690,7 +695,10 @@ unsigned int III_scalefactors_lsf(struct - max = (1 << slen[part]) - 1; - - for (i = 0; i < nsfb[part]; ++i) { -+ if (bits_left < slen[part]) -+ return MAD_ERROR_BADSCFSI; - is_pos = mad_bit_read(ptr, slen[part]); -+ bits_left -= slen[part]; - - channel->scalefac[n] = is_pos; - gr1ch->scalefac[n++] = (is_pos == max); -@@ -703,7 +711,8 @@ unsigned int III_scalefactors_lsf(struct - } - } - -- return mad_bit_length(&start, ptr); -+ *part2_length = mad_bit_length(&start, ptr); -+ return MAD_ERROR_NONE; - } - - /* -@@ -712,7 +721,8 @@ unsigned int III_scalefactors_lsf(struct - */ - static - unsigned int III_scalefactors(struct mad_bitptr *ptr, struct channel *channel, -- struct channel const *gr0ch, unsigned int scfsi) -+ struct channel const *gr0ch, unsigned int scfsi, -+ unsigned int bits_left, unsigned int *part2_length) - { - struct mad_bitptr start; - unsigned int slen1, slen2, sfbi; -@@ -728,12 +738,20 @@ unsigned int III_scalefactors(struct mad - sfbi = 0; - - nsfb = (channel->flags & mixed_block_flag) ? 8 + 3 * 3 : 6 * 3; -- while (nsfb--) -+ while (nsfb--) { -+ if (bits_left < slen1) -+ return MAD_ERROR_BADSCFSI; - channel->scalefac[sfbi++] = mad_bit_read(ptr, slen1); -+ bits_left -= slen1; -+ } - - nsfb = 6 * 3; -- while (nsfb--) -+ while (nsfb--) { -+ if (bits_left < slen2) -+ return MAD_ERROR_BADSCFSI; - channel->scalefac[sfbi++] = mad_bit_read(ptr, slen2); -+ bits_left -= slen2; -+ } - - nsfb = 1 * 3; - while (nsfb--) -@@ -745,8 +763,12 @@ unsigned int III_scalefactors(struct mad - channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; - } - else { -- for (sfbi = 0; sfbi < 6; ++sfbi) -+ for (sfbi = 0; sfbi < 6; ++sfbi) { -+ if (bits_left < slen1) -+ return MAD_ERROR_BADSCFSI; - channel->scalefac[sfbi] = mad_bit_read(ptr, slen1); -+ bits_left -= slen1; -+ } - } - - if (scfsi & 0x4) { -@@ -754,8 +776,12 @@ unsigned int III_scalefactors(struct mad - channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; - } - else { -- for (sfbi = 6; sfbi < 11; ++sfbi) -+ for (sfbi = 6; sfbi < 11; ++sfbi) { -+ if (bits_left < slen1) -+ return MAD_ERROR_BADSCFSI; - channel->scalefac[sfbi] = mad_bit_read(ptr, slen1); -+ bits_left -= slen1; -+ } - } - - if (scfsi & 0x2) { -@@ -763,8 +789,12 @@ unsigned int III_scalefactors(struct mad - channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; - } - else { -- for (sfbi = 11; sfbi < 16; ++sfbi) -+ for (sfbi = 11; sfbi < 16; ++sfbi) { -+ if (bits_left < slen2) -+ return MAD_ERROR_BADSCFSI; - channel->scalefac[sfbi] = mad_bit_read(ptr, slen2); -+ bits_left -= slen2; -+ } - } - - if (scfsi & 0x1) { -@@ -772,14 +802,19 @@ unsigned int III_scalefactors(struct mad - channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; - } - else { -- for (sfbi = 16; sfbi < 21; ++sfbi) -+ for (sfbi = 16; sfbi < 21; ++sfbi) { -+ if (bits_left < slen2) -+ return MAD_ERROR_BADSCFSI; - channel->scalefac[sfbi] = mad_bit_read(ptr, slen2); -+ bits_left -= slen2; -+ } - } - - channel->scalefac[21] = 0; - } - -- return mad_bit_length(&start, ptr); -+ *part2_length = mad_bit_length(&start, ptr); -+ return MAD_ERROR_NONE; - } - - /* -@@ -933,19 +968,17 @@ static - enum mad_error III_huffdecode(struct mad_bitptr *ptr, mad_fixed_t xr[576], - struct channel *channel, - unsigned char const *sfbwidth, -- unsigned int part2_length) -+ signed int part3_length) - { - signed int exponents[39], exp; - signed int const *expptr; - struct mad_bitptr peek; -- signed int bits_left, cachesz; -+ signed int bits_left, cachesz, fakebits; - register mad_fixed_t *xrptr; - mad_fixed_t const *sfbound; - register unsigned long bitcache; - -- bits_left = (signed) channel->part2_3_length - (signed) part2_length; -- if (bits_left < 0) -- return MAD_ERROR_BADPART3LEN; -+ bits_left = part3_length; - - III_exponents(channel, sfbwidth, exponents); - -@@ -956,8 +989,12 @@ enum mad_error III_huffdecode(struct mad - cachesz = mad_bit_bitsleft(&peek); - cachesz += ((32 - 1 - 24) + (24 - cachesz)) & ~7; - -+ if (bits_left < cachesz) { -+ cachesz = bits_left; -+ } - bitcache = mad_bit_read(&peek, cachesz); - bits_left -= cachesz; -+ fakebits = 0; - - xrptr = &xr[0]; - -@@ -986,7 +1023,7 @@ enum mad_error III_huffdecode(struct mad - - big_values = channel->big_values; - -- while (big_values-- && cachesz + bits_left > 0) { -+ while (big_values-- && cachesz + bits_left - fakebits > 0) { - union huffpair const *pair; - unsigned int clumpsz, value; - register mad_fixed_t requantized; -@@ -1023,10 +1060,19 @@ enum mad_error III_huffdecode(struct mad - unsigned int bits; - - bits = ((32 - 1 - 21) + (21 - cachesz)) & ~7; -+ if (bits_left < bits) { -+ bits = bits_left; -+ } - bitcache = (bitcache << bits) | mad_bit_read(&peek, bits); - cachesz += bits; - bits_left -= bits; - } -+ if (cachesz < 21) { -+ unsigned int bits = 21 - cachesz; -+ bitcache <<= bits; -+ cachesz += bits; -+ fakebits += bits; -+ } - - /* hcod (0..19) */ - -@@ -1041,6 +1087,8 @@ enum mad_error III_huffdecode(struct mad - } - - cachesz -= pair->value.hlen; -+ if (cachesz < fakebits) -+ return MAD_ERROR_BADHUFFDATA; - - if (linbits) { - /* x (0..14) */ -@@ -1054,10 +1102,15 @@ enum mad_error III_huffdecode(struct mad - - case 15: - if (cachesz < linbits + 2) { -- bitcache = (bitcache << 16) | mad_bit_read(&peek, 16); -- cachesz += 16; -- bits_left -= 16; -+ unsigned int bits = 16; -+ if (bits_left < 16) -+ bits = bits_left; -+ bitcache = (bitcache << bits) | mad_bit_read(&peek, bits); -+ cachesz += bits; -+ bits_left -= bits; - } -+ if (cachesz - fakebits < linbits) -+ return MAD_ERROR_BADHUFFDATA; - - value += MASK(bitcache, cachesz, linbits); - cachesz -= linbits; -@@ -1074,6 +1127,8 @@ enum mad_error III_huffdecode(struct mad - } - - x_final: -+ if (cachesz - fakebits < 1) -+ return MAD_ERROR_BADHUFFDATA; - xrptr[0] = MASK1BIT(bitcache, cachesz--) ? - -requantized : requantized; - } -@@ -1089,10 +1144,15 @@ enum mad_error III_huffdecode(struct mad - - case 15: - if (cachesz < linbits + 1) { -- bitcache = (bitcache << 16) | mad_bit_read(&peek, 16); -- cachesz += 16; -- bits_left -= 16; -+ unsigned int bits = 16; -+ if (bits_left < 16) -+ bits = bits_left; -+ bitcache = (bitcache << bits) | mad_bit_read(&peek, bits); -+ cachesz += bits; -+ bits_left -= bits; - } -+ if (cachesz - fakebits < linbits) -+ return MAD_ERROR_BADHUFFDATA; - - value += MASK(bitcache, cachesz, linbits); - cachesz -= linbits; -@@ -1109,6 +1169,8 @@ enum mad_error III_huffdecode(struct mad - } - - y_final: -+ if (cachesz - fakebits < 1) -+ return MAD_ERROR_BADHUFFDATA; - xrptr[1] = MASK1BIT(bitcache, cachesz--) ? - -requantized : requantized; - } -@@ -1128,6 +1190,8 @@ enum mad_error III_huffdecode(struct mad - requantized = reqcache[value] = III_requantize(value, exp); - } - -+ if (cachesz - fakebits < 1) -+ return MAD_ERROR_BADHUFFDATA; - xrptr[0] = MASK1BIT(bitcache, cachesz--) ? - -requantized : requantized; - } -@@ -1146,6 +1210,8 @@ enum mad_error III_huffdecode(struct mad - requantized = reqcache[value] = III_requantize(value, exp); - } - -+ if (cachesz - fakebits < 1) -+ return MAD_ERROR_BADHUFFDATA; - xrptr[1] = MASK1BIT(bitcache, cachesz--) ? - -requantized : requantized; - } -@@ -1155,9 +1221,6 @@ enum mad_error III_huffdecode(struct mad - } - } - -- if (cachesz + bits_left < 0) -- return MAD_ERROR_BADHUFFDATA; /* big_values overrun */ -- - /* count1 */ - { - union huffquad const *table; -@@ -1167,15 +1230,24 @@ enum mad_error III_huffdecode(struct mad - - requantized = III_requantize(1, exp); - -- while (cachesz + bits_left > 0 && xrptr <= &xr[572]) { -+ while (cachesz + bits_left - fakebits > 0 && xrptr <= &xr[572]) { - union huffquad const *quad; - - /* hcod (1..6) */ - - if (cachesz < 10) { -- bitcache = (bitcache << 16) | mad_bit_read(&peek, 16); -- cachesz += 16; -- bits_left -= 16; -+ unsigned int bits = 16; -+ if (bits_left < 16) -+ bits = bits_left; -+ bitcache = (bitcache << bits) | mad_bit_read(&peek, bits); -+ cachesz += bits; -+ bits_left -= bits; -+ } -+ if (cachesz < 10) { -+ unsigned int bits = 10 - cachesz; -+ bitcache <<= bits; -+ cachesz += bits; -+ fakebits += bits; - } - - quad = &table[MASK(bitcache, cachesz, 4)]; -@@ -1188,6 +1260,11 @@ enum mad_error III_huffdecode(struct mad - MASK(bitcache, cachesz, quad->ptr.bits)]; - } - -+ if (cachesz - fakebits < quad->value.hlen + quad->value.v -+ + quad->value.w + quad->value.x + quad->value.y) -+ /* We don't have enough bits to read one more entry, consider them -+ * stuffing bits. */ -+ break; - cachesz -= quad->value.hlen; - - if (xrptr == sfbound) { -@@ -1236,22 +1313,8 @@ enum mad_error III_huffdecode(struct mad - - xrptr += 2; - } -- -- if (cachesz + bits_left < 0) { --# if 0 && defined(DEBUG) -- fprintf(stderr, "huffman count1 overrun (%d bits)\n", -- -(cachesz + bits_left)); --# endif -- -- /* technically the bitstream is misformatted, but apparently -- some encoders are just a bit sloppy with stuffing bits */ -- -- xrptr -= 4; -- } - } - -- assert(-bits_left <= MAD_BUFFER_GUARD * CHAR_BIT); -- - # if 0 && defined(DEBUG) - if (bits_left < 0) - fprintf(stderr, "read %d bits too many\n", -bits_left); -@@ -2348,10 +2411,11 @@ void III_freqinver(mad_fixed_t sample[18 - */ - static - enum mad_error III_decode(struct mad_bitptr *ptr, struct mad_frame *frame, -- struct sideinfo *si, unsigned int nch) -+ struct sideinfo *si, unsigned int nch, unsigned int md_len) - { - struct mad_header *header = &frame->header; - unsigned int sfreqi, ngr, gr; -+ int bits_left = md_len * CHAR_BIT; - - { - unsigned int sfreq; -@@ -2383,6 +2447,7 @@ enum mad_error III_decode(struct mad_bit - for (ch = 0; ch < nch; ++ch) { - struct channel *channel = &granule->ch[ch]; - unsigned int part2_length; -+ unsigned int part3_length; - - sfbwidth[ch] = sfbwidth_table[sfreqi].l; - if (channel->block_type == 2) { -@@ -2391,18 +2456,30 @@ enum mad_error III_decode(struct mad_bit - } - - if (header->flags & MAD_FLAG_LSF_EXT) { -- part2_length = III_scalefactors_lsf(ptr, channel, -+ error = III_scalefactors_lsf(ptr, channel, - ch == 0 ? 0 : &si->gr[1].ch[1], -- header->mode_extension); -+ header->mode_extension, bits_left, &part2_length); - } - else { -- part2_length = III_scalefactors(ptr, channel, &si->gr[0].ch[ch], -- gr == 0 ? 0 : si->scfsi[ch]); -+ error = III_scalefactors(ptr, channel, &si->gr[0].ch[ch], -+ gr == 0 ? 0 : si->scfsi[ch], bits_left, &part2_length); - } -+ if (error) -+ return error; -+ -+ bits_left -= part2_length; - -- error = III_huffdecode(ptr, xr[ch], channel, sfbwidth[ch], part2_length); -+ if (part2_length > channel->part2_3_length) -+ return MAD_ERROR_BADPART3LEN; -+ -+ part3_length = channel->part2_3_length - part2_length; -+ if (part3_length > bits_left) -+ return MAD_ERROR_BADPART3LEN; -+ -+ error = III_huffdecode(ptr, xr[ch], channel, sfbwidth[ch], part3_length); - if (error) - return error; -+ bits_left -= part3_length; - } - - /* joint stereo processing */ -@@ -2519,11 +2596,13 @@ int mad_layer_III(struct mad_stream *str - unsigned int nch, priv_bitlen, next_md_begin = 0; - unsigned int si_len, data_bitlen, md_len; - unsigned int frame_space, frame_used, frame_free; -- struct mad_bitptr ptr; -+ struct mad_bitptr ptr, bufend_ptr; - struct sideinfo si; - enum mad_error error; - int result = 0; - -+ mad_bit_init(&bufend_ptr, stream->bufend); -+ - /* allocate Layer III dynamic structures */ - - if (stream->main_data == 0) { -@@ -2587,14 +2666,15 @@ int mad_layer_III(struct mad_stream *str - unsigned long header; - - mad_bit_init(&peek, stream->next_frame); -+ if (mad_bit_length(&peek, &bufend_ptr) >= 57) { -+ header = mad_bit_read(&peek, 32); -+ if ((header & 0xffe60000L) /* syncword | layer */ == 0xffe20000L) { -+ if (!(header & 0x00010000L)) /* protection_bit */ -+ mad_bit_skip(&peek, 16); /* crc_check */ - -- header = mad_bit_read(&peek, 32); -- if ((header & 0xffe60000L) /* syncword | layer */ == 0xffe20000L) { -- if (!(header & 0x00010000L)) /* protection_bit */ -- mad_bit_skip(&peek, 16); /* crc_check */ -- -- next_md_begin = -- mad_bit_read(&peek, (header & 0x00080000L) /* ID */ ? 9 : 8); -+ next_md_begin = -+ mad_bit_read(&peek, (header & 0x00080000L) /* ID */ ? 9 : 8); -+ } - } - - mad_bit_finish(&peek); -@@ -2653,7 +2733,7 @@ int mad_layer_III(struct mad_stream *str - /* decode main_data */ - - if (result == 0) { -- error = III_decode(&ptr, frame, &si, nch); -+ error = III_decode(&ptr, frame, &si, nch, md_len); - if (error) { - stream->error = error; - result = -1; diff --git a/repo/media/libmad/libmad-0.15.1b-cflags-O2.patch b/repo/media/libmad/libmad-0.15.1b-cflags-O2.patch deleted file mode 100644 index 61b4b13..0000000 --- a/repo/media/libmad/libmad-0.15.1b-cflags-O2.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur libmad-0.15.1b-orig/configure.ac libmad-0.15.1b/configure.ac ---- libmad-0.15.1b-orig/configure.ac 2007-07-01 12:58:13.000000000 -0600 -+++ libmad-0.15.1b/configure.ac 2007-07-01 12:59:13.000000000 -0600 -@@ -105,7 +105,7 @@ - shift - ;; - -O2) -- optimize="-O" -+ optimize="-O2" - shift - ;; - -fomit-frame-pointer) diff --git a/repo/media/libmad/libmad-0.15.1b-cflags.patch b/repo/media/libmad/libmad-0.15.1b-cflags.patch deleted file mode 100644 index 2ec44e3..0000000 --- a/repo/media/libmad/libmad-0.15.1b-cflags.patch +++ /dev/null @@ -1,146 +0,0 @@ -diff -Naur libmad-0.15.1b-orig/configure.ac libmad-0.15.1b/configure.ac ---- libmad-0.15.1b-orig/configure.ac 2007-06-30 20:22:31.000000000 -0600 -+++ libmad-0.15.1b/configure.ac 2007-06-30 20:25:31.000000000 -0600 -@@ -122,74 +122,74 @@ - esac - done - --if test "$GCC" = yes --then -- if test -z "$arch" -- then -- case "$host" in -- i386-*) ;; -- i?86-*) arch="-march=i486" ;; -- arm*-empeg-*) arch="-march=armv4 -mtune=strongarm1100" ;; -- armv4*-*) arch="-march=armv4 -mtune=strongarm" ;; -- powerpc-*) ;; -- mips*-agenda-*) arch="-mcpu=vr4100" ;; -- mips*-luxsonor-*) arch="-mips1 -mcpu=r3000 -Wa,-m4010" ;; -- esac -- fi -- -- case "$optimize" in -- -O|"-O "*) -- optimize="-O" -- optimize="$optimize -fforce-mem" -- optimize="$optimize -fforce-addr" -- : #x optimize="$optimize -finline-functions" -- : #- optimize="$optimize -fstrength-reduce" -- optimize="$optimize -fthread-jumps" -- optimize="$optimize -fcse-follow-jumps" -- optimize="$optimize -fcse-skip-blocks" -- : #x optimize="$optimize -frerun-cse-after-loop" -- : #x optimize="$optimize -frerun-loop-opt" -- : #x optimize="$optimize -fgcse" -- optimize="$optimize -fexpensive-optimizations" -- optimize="$optimize -fregmove" -- : #* optimize="$optimize -fdelayed-branch" -- : #x optimize="$optimize -fschedule-insns" -- optimize="$optimize -fschedule-insns2" -- : #? optimize="$optimize -ffunction-sections" -- : #? optimize="$optimize -fcaller-saves" -- : #> optimize="$optimize -funroll-loops" -- : #> optimize="$optimize -funroll-all-loops" -- : #x optimize="$optimize -fmove-all-movables" -- : #x optimize="$optimize -freduce-all-givs" -- : #? optimize="$optimize -fstrict-aliasing" -- : #* optimize="$optimize -fstructure-noalias" -- -- case "$host" in -- arm*-*) -- optimize="$optimize -fstrength-reduce" -- ;; -- mips*-*) -- optimize="$optimize -fstrength-reduce" -- optimize="$optimize -finline-functions" -- ;; -- i?86-*) -- optimize="$optimize -fstrength-reduce" -- ;; -- powerpc-apple-*) -- # this triggers an internal compiler error with gcc2 -- : #optimize="$optimize -fstrength-reduce" -- -- # this is really only beneficial with gcc3 -- : #optimize="$optimize -finline-functions" -- ;; -- *) -- # this sometimes provokes bugs in gcc 2.95.2 -- : #optimize="$optimize -fstrength-reduce" -- ;; -- esac -- ;; -- esac --fi -+#if test "$GCC" = yes -+#then -+# if test -z "$arch" -+# then -+# case "$host" in -+# i386-*) ;; -+# i?86-*) arch="-march=i486" ;; -+# arm*-empeg-*) arch="-march=armv4 -mtune=strongarm1100" ;; -+# armv4*-*) arch="-march=armv4 -mtune=strongarm" ;; -+# powerpc-*) ;; -+# mips*-agenda-*) arch="-mcpu=vr4100" ;; -+# mips*-luxsonor-*) arch="-mips1 -mcpu=r3000 -Wa,-m4010" ;; -+# esac -+# fi -+# -+# case "$optimize" in -+# -O|"-O "*) -+# optimize="-O" -+# optimize="$optimize -fforce-mem" -+# optimize="$optimize -fforce-addr" -+# : #x optimize="$optimize -finline-functions" -+# : #- optimize="$optimize -fstrength-reduce" -+# optimize="$optimize -fthread-jumps" -+# optimize="$optimize -fcse-follow-jumps" -+# optimize="$optimize -fcse-skip-blocks" -+# : #x optimize="$optimize -frerun-cse-after-loop" -+# : #x optimize="$optimize -frerun-loop-opt" -+# : #x optimize="$optimize -fgcse" -+# optimize="$optimize -fexpensive-optimizations" -+# optimize="$optimize -fregmove" -+# : #* optimize="$optimize -fdelayed-branch" -+# : #x optimize="$optimize -fschedule-insns" -+# optimize="$optimize -fschedule-insns2" -+# : #? optimize="$optimize -ffunction-sections" -+# : #? optimize="$optimize -fcaller-saves" -+# : #> optimize="$optimize -funroll-loops" -+# : #> optimize="$optimize -funroll-all-loops" -+# : #x optimize="$optimize -fmove-all-movables" -+# : #x optimize="$optimize -freduce-all-givs" -+# : #? optimize="$optimize -fstrict-aliasing" -+# : #* optimize="$optimize -fstructure-noalias" -+# -+# case "$host" in -+# arm*-*) -+# optimize="$optimize -fstrength-reduce" -+# ;; -+# mips*-*) -+# optimize="$optimize -fstrength-reduce" -+# optimize="$optimize -finline-functions" -+# ;; -+# i?86-*) -+# optimize="$optimize -fstrength-reduce" -+# ;; -+# powerpc-apple-*) -+# # this triggers an internal compiler error with gcc2 -+# : #optimize="$optimize -fstrength-reduce" -+# -+# # this is really only beneficial with gcc3 -+# : #optimize="$optimize -finline-functions" -+# ;; -+# *) -+# # this sometimes provokes bugs in gcc 2.95.2 -+# : #optimize="$optimize -fstrength-reduce" -+# ;; -+# esac -+# ;; -+# esac -+#fi - - case "$host" in - mips*-agenda-*) diff --git a/repo/media/libmad/libmad.thumb.patch b/repo/media/libmad/libmad.thumb.patch deleted file mode 100644 index 13edde2..0000000 --- a/repo/media/libmad/libmad.thumb.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- ./imdct_l_arm.S.orig 2010-02-25 13:25:23.000000000 +0100 -+++ ./imdct_l_arm.S 2010-02-25 13:27:26.000000000 +0100 -@@ -468,7 +468,7 @@ - - @---- - -- add r2, pc, #(imdct36_long_karray-.-8) @ r2 = base address of Knn array (PIC safe ?) -+ adr r2, imdct36_long_karray - - - loop: - diff --git a/repo/media/libmad/libmad.xibuild b/repo/media/libmad/libmad.xibuild deleted file mode 100644 index 265aec5..0000000 --- a/repo/media/libmad/libmad.xibuild +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -NAME="libmad" -DESC="A high-quality MPEG audio decoder" - -MAKEDEPS="make" -DEPS="musl" - -PKG_VER=0.15.1b -SOURCE="https://downloads.sourceforge.net/sourceforge/mad/libmad-$PKG_VER.tar.gz" -ADDITIONAL="md_size.patch mad.pc libmad.thumb.patch libmad-0.15.1b-cflags.patch libmad-0.15.1b-cflags-O2.patch length-check.patch automake.patch Provide-Thumb-2-alternative-code-for-MAD_F_MLN.patch " - -prepare () { - apply_patches -} - -build () { - ./configure \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libmad/mad.pc b/repo/media/libmad/mad.pc deleted file mode 100644 index 14a66f5..0000000 --- a/repo/media/libmad/mad.pc +++ /dev/null @@ -1,11 +0,0 @@ -prefix=/usr -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -includedir=${prefix}/include - -Name: mad -Description: MPEG Audio Decoder -Requires: -Version: 0.15.0b -Libs: -L${libdir} -lmad -lm -Cflags: -I${includedir} diff --git a/repo/media/libmad/md_size.patch b/repo/media/libmad/md_size.patch deleted file mode 100644 index 657b5ff..0000000 --- a/repo/media/libmad/md_size.patch +++ /dev/null @@ -1,58 +0,0 @@ -From: Kurt Roeckx <kurt@roeckx.be> -Date: Sun, 28 Jan 2018 15:44:08 +0100 -Subject: Check the size of the main data - -The main data to decode a frame can come from the current frame and part of the -previous frame, the so called bit reservoir. si.main_data_begin is the part of -the previous frame we need for this frame. frame_space is the amount of main -data that can be in this frame, and next_md_begin is the part of this frame that -is going to be used for the next frame. - -The maximum amount of data from a previous frame that the format allows is 511 -bytes. The maximum frame size for the defined bitrates is at MPEG 2.5 layer 2 -at 320 kbit/s and 8 kHz sample rate which gives 72 * (320000 / 8000) + 1 = 2881. -So those defines are not large enough: - # define MAD_BUFFER_GUARD 8 - # define MAD_BUFFER_MDLEN (511 + 2048 + MAD_BUFFER_GUARD) - -There is also support for a "free" bitrate which allows you to create any frame -size, which can be larger than the buffer. - -Changing the defines is not an option since it's part of the ABI, so we check -that the main data fits in the bufer. - -The previous frame data is stored in *stream->main_data and contains -stream->md_len bytes. If stream->md_len is larger than the data we -need from the previous frame (si.main_data_begin) it still wouldn't fit -in the buffer, so just keep the data that we need. - -Index: libmad-0.15.1b/layer3.c -=================================================================== ---- libmad-0.15.1b.orig/layer3.c -+++ libmad-0.15.1b/layer3.c -@@ -2608,6 +2608,11 @@ int mad_layer_III(struct mad_stream *str - next_md_begin = 0; - - md_len = si.main_data_begin + frame_space - next_md_begin; -+ if (md_len + MAD_BUFFER_GUARD > MAD_BUFFER_MDLEN) { -+ stream->error = MAD_ERROR_LOSTSYNC; -+ stream->sync = 0; -+ return -1; -+ } - - frame_used = 0; - -@@ -2625,8 +2630,11 @@ int mad_layer_III(struct mad_stream *str - } - } - else { -- mad_bit_init(&ptr, -- *stream->main_data + stream->md_len - si.main_data_begin); -+ memmove(stream->main_data, -+ *stream->main_data + stream->md_len - si.main_data_begin, -+ si.main_data_begin); -+ stream->md_len = si.main_data_begin; -+ mad_bit_init(&ptr, *stream->main_data); - - if (md_len > si.main_data_begin) { - assert(stream->md_len + md_len - diff --git a/repo/media/libmpdclient/libmpdclient.xibuild b/repo/media/libmpdclient/libmpdclient.xibuild deleted file mode 100644 index a80ad57..0000000 --- a/repo/media/libmpdclient/libmpdclient.xibuild +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -NAME="libmpdclient" -DESC="An asynchronous API library for interfacing MPD in the C, C++ & Objective C languages" - -MAKEDEPS="meson ninja " -DEPS="musl" - -PKG_VER=2.19 -SOURCE="https://www.musicpd.org/download/libmpdclient/${PKG_VER%.*}/libmpdclient-$PKG_VER.tar.xz" - -build () { - cd build && - meson --prefix=/usr .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/libmypaint/libmypaint.xibuild b/repo/media/libmypaint/libmypaint.xibuild deleted file mode 100644 index 87df793..0000000 --- a/repo/media/libmypaint/libmypaint.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -NAME="libmypaint" -DESC="library for making brushstrokes" - -MAKEDEPS="make " -DEPS="glib json-c intltool " - -PKG_VER=1.6.1 -SOURCE="https://github.com/mypaint/libmypaint/releases/download/v$PKG_VER/libmypaint-$PKG_VER.tar.xz" - -build () { - ./configure \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libogg/libogg.xibuild b/repo/media/libogg/libogg.xibuild deleted file mode 100644 index 51a6b9b..0000000 --- a/repo/media/libogg/libogg.xibuild +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="" - -DESC="Ogg bitstream and framing library" - -PKG_VER=1.3.5 -SOURCE=https://downloads.xiph.org/releases/ogg/libogg-$PKG_VER.tar.xz - -build () { - ./configure --prefix=/usr \ - --disable-static \ - --docdir=/usr/share/doc/libogg-$PKG_VER && - make - -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libraw/libraw.xibuild b/repo/media/libraw/libraw.xibuild deleted file mode 100644 index 5a06397..0000000 --- a/repo/media/libraw/libraw.xibuild +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -NAME="libraw" -DESC="Library for reading RAW files obtained from digital photo cameras" - -MAKEDEPS="make " -DEPS="musl " - -PKG_VER=0.20.2 -SOURCE="https://www.libraw.org/data/LibRaw-$PKG_VER.tar.gz" - -prepare () { - autoreconf -fi -} - -build () { - ./configure \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/librist/librist.xibuild b/repo/media/librist/librist.xibuild deleted file mode 100644 index a51c3fa..0000000 --- a/repo/media/librist/librist.xibuild +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -NAME="librist" -DESC="Reliable Internet Stream Transport (RIST)" - -MAKEDEPS="meson ninja " -DEPS="linux-headers jsoncpp musl " - -PKG_VER=0.2.6 -SOURCE="https://code.videolan.org/rist/librist/-/archive/v$PKG_VER/librist-v$PKG_VER.tar.gz" - -build () { - mkdir build && - cd build && - meson --prefix=/usr \ - .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/librsvg/librsvg.xibuild b/repo/media/librsvg/librsvg.xibuild deleted file mode 100644 index 7e29f04..0000000 --- a/repo/media/librsvg/librsvg.xibuild +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/sh - -NAME="librsvg" -DESC="SAX-based renderer for SVG files into a GdkPixbuf" - -MAKEDEPS="make rust cargo vala" -DEPS="cairo gdk-pixbuf glib libxml2 musl pango " - -PKG_VER=2.54.1 -SOURCE="https://download.gnome.org/sources/librsvg/${PKG_VER%.*}/librsvg-$PKG_VER.tar.xz" -ADDITIONAL="target.patch" - -prepare () { - apply_patches - export RUSTFLAGS="$RUSTFLAGS -C debuginfo=2" - export CARGO_PROFILE_RELEASE_LTO=true - export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1 -} - - -build () { - export CFLAGS="-fPIC" CXXFLAGS="-fPIC" - - ./configure --prefix=/usr \ - --libexecdir=/usr/lib/librsvg \ - --disable-static \ - --enable-vala - sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' libtool - - make -j1 - -} - -package () { - make DESTDIR=$PKG_DEST install -} - -postinstall () { - gdk-pixbuf-query-loaders --update-cache -} diff --git a/repo/media/librsvg/rsvg-h-dont-use-comments-in-comments.patch b/repo/media/librsvg/rsvg-h-dont-use-comments-in-comments.patch deleted file mode 100644 index d7bb1ec..0000000 --- a/repo/media/librsvg/rsvg-h-dont-use-comments-in-comments.patch +++ /dev/null @@ -1,31 +0,0 @@ -From d158d111f4b4d539a1f586bf42825c4759386fd4 Mon Sep 17 00:00:00 2001 -From: Federico Mena Quintero <federico@gnome.org> -Date: Wed, 6 Apr 2022 13:30:40 -0500 -Subject: [PATCH] (#856): Don't use /* as part of the text in C documentation - comments - -Compilers don't like it! - -Fixes https://gitlab.gnome.org/GNOME/librsvg/-/issues/856 - -Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/688> ---- - include/librsvg/rsvg.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/librsvg/rsvg.h b/include/librsvg/rsvg.h -index 5a5c97c81..964002354 100644 ---- a/include/librsvg/rsvg.h -+++ b/include/librsvg/rsvg.h -@@ -122,7 +122,7 @@ GType rsvg_error_get_type (void); - * if the base file is `/foo/bar/baz.svg`, then librsvg will - * only try to load referenced files (from SVG's - * `<image>` element, for example, or from content -- * included through XML entities) if those files are in `/foo/bar/*` or in `/foo/bar/*\/.../*`. -+ * included through XML entities) if those files are in `/foo/bar/<anything>` or in `/foo/bar/<anything>\/.../<anything>`. - * This is so that malicious SVG files cannot include files that are in a directory above. - * - * The full set of rules for deciding which URLs may be loaded is as follows; --- -GitLab - diff --git a/repo/media/librsvg/target.patch b/repo/media/librsvg/target.patch deleted file mode 100644 index 569bc89..0000000 --- a/repo/media/librsvg/target.patch +++ /dev/null @@ -1,26 +0,0 @@ -Patch-Source: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/23495#note_202355 - ---- a/vendor/system-deps/.cargo-checksum.json.orig -+++ b/vendor/system-deps/.cargo-checksum.json -@@ -1 +1 @@ --{"files":{"Cargo.toml":"927df7476ebf5f5983169cfd973f4c95b84da17caeb20d33cccf50e326af5316","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae","src/lib.rs":"c38fd96ca3233ebee3bb7e37ca8f8a7a2685cdd7fcccf0210eaa879aa91dc684","src/metadata.rs":"657bc1b77e949e4800f9dd808790ffa535820e1658d412121a1da548e0cdd02c","src/test.rs":"9d5f8c1fb7a821352d6ba75cb005ead3e36b4f359e61feb605ab8a36d4fd31f8","src/tests/lib/libteststatic.a":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/teststaticlib.pc":"77df23f6c7c1d47aff18453b47c87e53ec8a96017546e0a55c8c4d1e13b70134","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709"} -\ No newline at end of file -+{"files":{"Cargo.toml":"927df7476ebf5f5983169cfd973f4c95b84da17caeb20d33cccf50e326af5316","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae","src/lib.rs":"8813a7d146e91e7d3946c27f0ca1b2c2bb8800208190beecd3773cda283d3ea4","src/metadata.rs":"657bc1b77e949e4800f9dd808790ffa535820e1658d412121a1da548e0cdd02c","src/test.rs":"9d5f8c1fb7a821352d6ba75cb005ead3e36b4f359e61feb605ab8a36d4fd31f8","src/tests/lib/libteststatic.a":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/teststaticlib.pc":"77df23f6c7c1d47aff18453b47c87e53ec8a96017546e0a55c8c4d1e13b70134","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709"} -\ No newline at end of file - ---- a/vendor/system-deps/src/lib.rs.orig -+++ b/vendor/system-deps/src/lib.rs -@@ -668,13 +668,6 @@ - let mut libraries = Dependencies::default(); - - for dep in metadata.deps.iter() { -- if let Some(cfg) = &dep.cfg { -- // Check if `cfg()` expression matches the target settings -- if !self.check_cfg(cfg)? { -- continue; -- } -- } -- - let mut enabled_feature_overrides = Vec::new(); - - for o in dep.version_overrides.iter() { diff --git a/repo/media/libsamplerate/libsamplerate.xibuild b/repo/media/libsamplerate/libsamplerate.xibuild deleted file mode 100644 index 1c3dd07..0000000 --- a/repo/media/libsamplerate/libsamplerate.xibuild +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make xmlto" -DEPS="libogg nasm" - -DESC="An audio sample rate conversion library" - -PKG_VER=0.2.2 -SOURCE=https://github.com/libsndfile/libsamplerate/releases/download/$PKG_VER/libsamplerate-$PKG_VER.tar.xz - -build () { - ./configure --prefix=/usr \ - --disable-static \ - --docdir=/usr/share/doc/libsamplerate-$PKG_VER && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libsndfile/libsndfile.xibuild b/repo/media/libsndfile/libsndfile.xibuild deleted file mode 100644 index 78ae0f1..0000000 --- a/repo/media/libsndfile/libsndfile.xibuild +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make " -DEPS="alsa-lib flac opus libvorbis" - -DESC="A C library for reading and writing files containing sampled audio data" - -PKG_VER=1.0.31 -SOURCE=https://github.com/libsndfile/libsndfile/releases/download/$PKG_VER/libsndfile-$PKG_VER.tar.bz2 - -build () { - ./configure --prefix=/usr \ - --disable-static \ - --docdir=/usr/share/doc/libsndfile-$PKG_VER && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libsrt/fix-cmake.patch b/repo/media/libsrt/fix-cmake.patch deleted file mode 100644 index 6193da2..0000000 --- a/repo/media/libsrt/fix-cmake.patch +++ /dev/null @@ -1,39 +0,0 @@ -Upstream: Should be, and they should fix it -Reason: Fixes a few issues - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index ed6e603..5f899c1 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -34,14 +34,8 @@ set_if(GNU ${CMAKE_SYSTEM_NAME} MATCHES "GNU") - set_if(POSIX LINUX OR DARWIN OR BSD OR (CYGWIN AND CYGWIN_USE_POSIX)) - set_if(SYMLINKABLE LINUX OR DARWIN OR BSD OR CYGWIN OR GNU) - --# Not sure what to do in case of compiling by MSVC. --# This will make installdir in C:\Program Files\SRT then --# inside "bin" and "lib64" directories. At least this maintains --# the current status. Shall this be not desired, override values --# of CMAKE_INSTALL_BINDIR, CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_INCLUDEDIR. --if (NOT DEFINED CMAKE_INSTALL_LIBDIR) -- include(GNUInstallDirs) --endif() -+ -+include(GNUInstallDirs) - - set (SRT_VERSION 1.4.2) - set_version_variables(SRT_VERSION ${SRT_VERSION}) -@@ -59,14 +53,6 @@ endif() - # Set CMAKE_BUILD_TYPE properly, now that you know - # that ENABLE_DEBUG is set as it should. - --if (ENABLE_DEBUG EQUAL 2) -- set (CMAKE_BUILD_TYPE "RelWithDebInfo") --elseif (ENABLE_DEBUG) # 1, ON, YES, TRUE, Y, or any other non-zero number -- set (CMAKE_BUILD_TYPE "Debug") --else() -- set (CMAKE_BUILD_TYPE "Release") --endif() -- - message(STATUS "BUILD TYPE: ${CMAKE_BUILD_TYPE}") - - getVarsWith(ENFORCE_ enforcers) diff --git a/repo/media/libsrt/libsrt.xibuild b/repo/media/libsrt/libsrt.xibuild deleted file mode 100644 index 3d79326..0000000 --- a/repo/media/libsrt/libsrt.xibuild +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -NAME="libsrt" -DESC="Secure Reliable Transport (SRT)" - -MAKEDEPS="cmake " -DEPS="openssl musl" - -PKG_VER=1.4.4 -SOURCE="https://github.com/Haivision/srt/archive/v$PKG_VER.tar.gz" -ADDITIONAL="fix-cmake.patch " - -prepare () { - apply_patches -} - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/libtheora/libtheora.xibuild b/repo/media/libtheora/libtheora.xibuild deleted file mode 100644 index 64bfcc0..0000000 --- a/repo/media/libtheora/libtheora.xibuild +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="libogg libvorbis" - -DESC="An open video codec developed by the Xiph.org" - -PKG_VER=1.1.1 -SOURCE=https://downloads.xiph.org/releases/theora/libtheora-$PKG_VER.tar.xz - -prepare () { - sed -i 's/png_\(sizeof\)/\1/g' examples/png2theora.c -} - -build () { - ./configure --prefix=/usr --disable-static && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libvorbis/libvorbis.xibuild b/repo/media/libvorbis/libvorbis.xibuild deleted file mode 100644 index 5952715..0000000 --- a/repo/media/libvorbis/libvorbis.xibuild +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="libogg" - -DESC="Reference implementation of the Ogg Vorbis audio format" - -PKG_VER=1.3.7 -SOURCE=https://downloads.xiph.org/releases/vorbis/libvorbis-$PKG_VER.tar.xz - -build () { - ./configure --prefix=/usr --disable-static && - make -} - -package () { - make DESTDIR=$PKG_DEST install - install -m644 doc/Vorbis* $PKG_DEST/usr/share/doc/libvorbis-$PKG_VER -} diff --git a/repo/media/libvpx/libvpx.xibuild b/repo/media/libvpx/libvpx.xibuild deleted file mode 100644 index 36acec6..0000000 --- a/repo/media/libvpx/libvpx.xibuild +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="nasm which" - -DESC="VP8 and VP9 codec" - -PKG_VER=1.11.0 -SOURCE=https://github.com/webmproject/libvpx/archive/v$PKG_VER/libvpx-$PKG_VER.tar.gz - -prepare () { - sed -i 's/cp -p/cp/' build/make/Makefile - sed -i 's/cat -n/cat/' build/make/configure.sh - sed -i 's/diff --version/command -v diff/' configure -} - -build () { - - ./configure --prefix=/usr \ - --enable-shared \ - --disable-static && - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/libwebp/libwebp.xibuild b/repo/media/libwebp/libwebp.xibuild deleted file mode 100644 index ff84576..0000000 --- a/repo/media/libwebp/libwebp.xibuild +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -NAME="libwebp" -DESC="Libraries for working with WebP images" - -MAKEDEPS="make " -DEPS="musl " - -PKG_VER=1.2.2 -SOURCE="https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-$PKG_VER.tar.gz" - -prepare() { - ./autogen.sh -} - -build () { - ./configure \ - --prefix=/usr - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static \ - --enable-libwebpmux \ - --enable-libwebpdemux \ - --enable-libwebpdecoder \ - --disable-tiff - make -} - -package () { - make DESTDIR=$PKG_DEST install - mkdir -p $PKG_DEST/usr/share/doc/libwebp - install -Dm644 PATENTS README $PKG_DEST/usr/share/doc/libwebp -} diff --git a/repo/media/mpc-mpd/mpc-mpd.xibuild b/repo/media/mpc-mpd/mpc-mpd.xibuild deleted file mode 100644 index 2d6d5f3..0000000 --- a/repo/media/mpc-mpd/mpc-mpd.xibuild +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -NAME="mpc-mpd" -DESC="Minimalist command line interface to MPD" - -MAKEDEPS="meson ninja rsync" -DEPS="musl libmpdclient mpd" - -PKG_VER=0.34 -SOURCE="https://www.musicpd.org/download/mpc/${PKG_VER%.*}/mpc-$PKG_VER.tar.xz" - -build () { - cd build - meson --prefix=/usr \ - .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/mpd/libcdio-paa-version.patch b/repo/media/mpd/libcdio-paa-version.patch deleted file mode 100644 index 82612b1..0000000 --- a/repo/media/mpd/libcdio-paa-version.patch +++ /dev/null @@ -1,266 +0,0 @@ -<!DOCTYPE html> -<html lang='en'> -<head> -<title>aports - Alpine packages build scripts -</title> -<meta name='generator' content='cgit v1.2.3'/> -<meta name='robots' content='index, nofollow'/> -<link rel='stylesheet' type='text/css' href='/cgit.css'/> -<link rel='shortcut icon' href='//alpinelinux.org/alpine-logo.ico'/> -<link rel='alternate' title='Atom feed' href='http://git.alpinelinux.org/aports/atom/?h=master' type='application/atom+xml'/> -<link rel='vcs-git' href='https://git.alpinelinux.org/aports' title='aports Git repository'/> -</head> -<body> -<div id='cgit'><table id='header'> -<tr> -<td class='logo' rowspan='2'><a href='/'><img src='//wiki.alpinelinux.org/images/alogo.png' alt='cgit logo'/></a></td> -<td class='main'><a href='/'>index</a> : <a title='aports' href='/aports/'>aports</a></td><td class='form'><form method='get'> -<select name='h' onchange='this.form.submit();'> -<option value='1.10-stable'>1.10-stable</option> -<option value='1.9'>1.9</option> -<option value='2.0-stable'>2.0-stable</option> -<option value='2.1-stable'>2.1-stable</option> -<option value='2.2-stable'>2.2-stable</option> -<option value='2.3-stable'>2.3-stable</option> -<option value='2.4-stable'>2.4-stable</option> -<option value='2.5-stable'>2.5-stable</option> -<option value='2.6-stable'>2.6-stable</option> -<option value='2.7-stable'>2.7-stable</option> -<option value='3.0-stable'>3.0-stable</option> -<option value='3.1-stable'>3.1-stable</option> -<option value='3.10-stable'>3.10-stable</option> -<option value='3.11-stable'>3.11-stable</option> -<option value='3.12-stable'>3.12-stable</option> -<option value='3.13-stable'>3.13-stable</option> -<option value='3.14-stable'>3.14-stable</option> -<option value='3.15-stable'>3.15-stable</option> -<option value='3.2-stable'>3.2-stable</option> -<option value='3.3-stable'>3.3-stable</option> -<option value='3.4-stable'>3.4-stable</option> -<option value='3.5-stable'>3.5-stable</option> -<option value='3.6-stable'>3.6-stable</option> -<option value='3.7-stable'>3.7-stable</option> -<option value='3.8-stable'>3.8-stable</option> -<option value='3.9-stable'>3.9-stable</option> -<option value='fs-upgrade-1.10.7'>fs-upgrade-1.10.7</option> -<option value='libcgroup'>libcgroup</option> -<option value='master' selected='selected'>master</option> -<option value='nuspell'>nuspell</option> -<option value='patches/3526'>patches/3526</option> -<option value='patches/3527'>patches/3527</option> -<option value='patches/3530'>patches/3530</option> -<option value='patches/3531'>patches/3531</option> -<option value='patches/3534'>patches/3534</option> -<option value='patches/3535'>patches/3535</option> -<option value='patches/3538'>patches/3538</option> -<option value='patches/3539'>patches/3539</option> -<option value='patches/3540'>patches/3540</option> -<option value='patches/3551'>patches/3551</option> -<option value='patches/3556'>patches/3556</option> -<option value='patches/3558'>patches/3558</option> -<option value='patches/3559'>patches/3559</option> -<option value='patches/3562'>patches/3562</option> -<option value='patches/3563'>patches/3563</option> -<option value='patches/3564'>patches/3564</option> -<option value='patches/3565'>patches/3565</option> -<option value='patches/3567'>patches/3567</option> -<option value='patches/3568'>patches/3568</option> -<option value='patches/3569'>patches/3569</option> -<option value='patches/3574'>patches/3574</option> -<option value='patches/3575'>patches/3575</option> -<option value='patches/3576'>patches/3576</option> -<option value='patches/3577'>patches/3577</option> -<option value='patches/3582'>patches/3582</option> -<option value='patches/3584'>patches/3584</option> -<option value='patches/3590'>patches/3590</option> -<option value='patches/3592'>patches/3592</option> -<option value='patches/3594'>patches/3594</option> -<option value='patches/3598'>patches/3598</option> -<option value='patches/3599'>patches/3599</option> -<option value='patches/3601'>patches/3601</option> -<option value='patches/3603'>patches/3603</option> -<option value='patches/3604'>patches/3604</option> -<option value='patches/3606'>patches/3606</option> -<option value='patches/3607'>patches/3607</option> -<option value='patches/3608'>patches/3608</option> -<option value='patches/3610'>patches/3610</option> -<option value='patches/3612'>patches/3612</option> -<option value='patches/3613'>patches/3613</option> -<option value='patches/3615'>patches/3615</option> -<option value='patches/3616'>patches/3616</option> -<option value='patches/3618'>patches/3618</option> -<option value='patches/3621'>patches/3621</option> -<option value='patches/3622'>patches/3622</option> -<option value='patches/3624'>patches/3624</option> -<option value='patches/3627'>patches/3627</option> -<option value='patches/3632'>patches/3632</option> -<option value='patches/3633'>patches/3633</option> -<option value='patches/3635'>patches/3635</option> -<option value='patches/3636'>patches/3636</option> -<option value='patches/3646'>patches/3646</option> -<option value='patches/3654'>patches/3654</option> -<option value='patches/3656'>patches/3656</option> -<option value='patches/3662'>patches/3662</option> -<option value='patches/3666'>patches/3666</option> -<option value='patches/3670'>patches/3670</option> -<option value='patches/3671'>patches/3671</option> -<option value='patches/3675'>patches/3675</option> -<option value='patches/3687'>patches/3687</option> -<option value='patches/3690'>patches/3690</option> -<option value='patches/3691'>patches/3691</option> -<option value='patches/3692'>patches/3692</option> -<option value='patches/3697'>patches/3697</option> -<option value='patches/3706'>patches/3706</option> -<option value='patches/3707'>patches/3707</option> -<option value='patches/3715'>patches/3715</option> -<option value='patches/3721'>patches/3721</option> -<option value='patches/3722'>patches/3722</option> -<option value='patches/3724'>patches/3724</option> -<option value='patches/3731'>patches/3731</option> -<option value='patches/3756'>patches/3756</option> -<option value='patches/3764'>patches/3764</option> -<option value='patches/3767'>patches/3767</option> -<option value='patches/3770'>patches/3770</option> -<option value='patches/3771'>patches/3771</option> -<option value='patches/3774'>patches/3774</option> -<option value='patches/3775'>patches/3775</option> -<option value='patches/3777'>patches/3777</option> -<option value='patches/3779'>patches/3779</option> -<option value='patches/3787'>patches/3787</option> -<option value='patches/3788'>patches/3788</option> -<option value='patches/3789'>patches/3789</option> -<option value='patches/3790'>patches/3790</option> -<option value='patches/3793'>patches/3793</option> -<option value='patches/3796'>patches/3796</option> -<option value='patches/3797'>patches/3797</option> -<option value='patches/3798'>patches/3798</option> -<option value='patches/3799'>patches/3799</option> -<option value='patches/3800'>patches/3800</option> -<option value='patches/3802'>patches/3802</option> -<option value='patches/3803'>patches/3803</option> -<option value='patches/3804'>patches/3804</option> -<option value='patches/3805'>patches/3805</option> -<option value='patches/3808'>patches/3808</option> -<option value='patches/3811'>patches/3811</option> -<option value='patches/3813'>patches/3813</option> -<option value='patches/3816'>patches/3816</option> -<option value='patches/3818'>patches/3818</option> -<option value='patches/3820'>patches/3820</option> -<option value='patches/3821'>patches/3821</option> -<option value='patches/3822'>patches/3822</option> -<option value='patches/3823'>patches/3823</option> -<option value='patches/3825'>patches/3825</option> -<option value='patches/3827'>patches/3827</option> -<option value='patches/3828'>patches/3828</option> -<option value='patches/3829'>patches/3829</option> -<option value='patches/3830'>patches/3830</option> -<option value='patches/3831'>patches/3831</option> -<option value='patches/3832'>patches/3832</option> -<option value='patches/3833'>patches/3833</option> -<option value='patches/3835'>patches/3835</option> -<option value='patches/3836'>patches/3836</option> -<option value='patches/3837'>patches/3837</option> -<option value='patches/3838'>patches/3838</option> -<option value='patches/3839'>patches/3839</option> -<option value='patches/3843'>patches/3843</option> -<option value='patches/3845'>patches/3845</option> -<option value='patches/3846'>patches/3846</option> -<option value='patches/3847'>patches/3847</option> -<option value='patches/3850'>patches/3850</option> -<option value='patches/3852'>patches/3852</option> -<option value='patches/3853'>patches/3853</option> -<option value='patches/3854'>patches/3854</option> -<option value='patches/3855'>patches/3855</option> -<option value='patches/3858'>patches/3858</option> -<option value='patches/3861'>patches/3861</option> -<option value='patches/3863'>patches/3863</option> -<option value='patches/3864'>patches/3864</option> -<option value='patches/3868'>patches/3868</option> -<option value='patches/3869'>patches/3869</option> -<option value='patches/3870'>patches/3870</option> -<option value='patches/3871'>patches/3871</option> -<option value='patches/3873'>patches/3873</option> -<option value='patches/3878'>patches/3878</option> -<option value='patches/3881'>patches/3881</option> -<option value='patches/3882'>patches/3882</option> -<option value='patches/3883'>patches/3883</option> -<option value='patches/3885'>patches/3885</option> -<option value='patches/3886'>patches/3886</option> -<option value='patches/3887'>patches/3887</option> -<option value='patches/3888'>patches/3888</option> -<option value='patches/3890'>patches/3890</option> -<option value='patches/3891'>patches/3891</option> -<option value='patches/3892'>patches/3892</option> -<option value='patches/3895'>patches/3895</option> -<option value='patches/3896'>patches/3896</option> -<option value='patches/3897'>patches/3897</option> -<option value='patches/3908'>patches/3908</option> -<option value='patches/3909'>patches/3909</option> -<option value='patches/3912'>patches/3912</option> -<option value='patches/3913'>patches/3913</option> -<option value='patches/3914'>patches/3914</option> -<option value='patches/3916'>patches/3916</option> -<option value='patches/3918'>patches/3918</option> -<option value='patches/3920'>patches/3920</option> -<option value='patches/3923'>patches/3923</option> -<option value='patches/3927'>patches/3927</option> -<option value='patches/3933'>patches/3933</option> -<option value='patches/3934'>patches/3934</option> -<option value='patches/3937'>patches/3937</option> -<option value='patches/3941'>patches/3941</option> -<option value='patches/3946'>patches/3946</option> -<option value='patches/3947'>patches/3947</option> -<option value='patches/3949'>patches/3949</option> -<option value='patches/3950'>patches/3950</option> -<option value='patches/3953'>patches/3953</option> -<option value='patches/3954'>patches/3954</option> -<option value='patches/3957'>patches/3957</option> -<option value='patches/3958'>patches/3958</option> -<option value='patches/3959'>patches/3959</option> -<option value='patches/3963'>patches/3963</option> -<option value='patches/3969'>patches/3969</option> -<option value='patches/3970'>patches/3970</option> -<option value='patches/3976'>patches/3976</option> -<option value='patches/3977'>patches/3977</option> -<option value='patches/3979'>patches/3979</option> -<option value='patches/3980'>patches/3980</option> -<option value='patches/3981'>patches/3981</option> -<option value='patches/3987'>patches/3987</option> -<option value='patches/3988'>patches/3988</option> -<option value='patches/3989'>patches/3989</option> -<option value='patches/3998'>patches/3998</option> -<option value='patches/3999'>patches/3999</option> -<option value='patches/4000'>patches/4000</option> -<option value='patches/4001'>patches/4001</option> -<option value='patches/4002'>patches/4002</option> -<option value='patches/4006'>patches/4006</option> -<option value='patches/4008'>patches/4008</option> -<option value='patches/4012'>patches/4012</option> -<option value='patches/4013'>patches/4013</option> -<option value='patches/4017'>patches/4017</option> -<option value='patches/4019'>patches/4019</option> -<option value='patches/4021'>patches/4021</option> -<option value='patches/4022'>patches/4022</option> -<option value='patches/4026'>patches/4026</option> -<option value='wlroots'>wlroots</option> -</select> <input type='submit' value='switch'/></form></td></tr> -<tr><td class='sub'>Alpine packages build scripts -</td><td class='sub right'>uwsgi</td></tr></table> -<table class='tabs'><tr><td> -<a href='/aports/about/'>about</a><a href='/aports/'>summary</a><a href='/aports/refs/'>refs</a><a href='/aports/log/'>log</a><a href='/aports/tree/'>tree</a><a href='/aports/commit/'>commit</a><a href='/aports/diff/'>diff</a><a href='/aports/stats/'>stats</a></td><td class='form'><form class='right' method='get' action='/aports/log/'> -<select name='qt'> -<option value='grep'>log msg</option> -<option value='author'>author</option> -<option value='committer'>committer</option> -<option value='range'>range</option> -</select> -<input class='txt' type='search' size='10' name='q' value=''/> -<input type='submit' value='search'/> -</form> -</td></tr></table> -<div class='content'><div class='error'>Not found</div> -</div> <!-- class=content --> -<div class='footer'>generated by <a href='https://git.zx2c4.com/cgit/about/'>cgit v1.2.3</a> (<a href='https://git-scm.com/'>git 2.25.1</a>) at 2022-04-14 22:32:26 +0000</div> -</div> <!-- id=cgit --> -</body> -</html> diff --git a/repo/media/mpd/libcdio-paranoia-version.patch b/repo/media/mpd/libcdio-paranoia-version.patch deleted file mode 100644 index 44810b3..0000000 --- a/repo/media/mpd/libcdio-paranoia-version.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/input/plugins/meson.build b/src/input/plugins/meson.build -index 7322365..65ff564 100644 ---- a/src/input/plugins/meson.build -+++ b/src/input/plugins/meson.build -@@ -10,7 +10,7 @@ if alsa_dep.found() - input_plugins_sources += 'AlsaInputPlugin.cxx' - endif - --libcdio_paranoia_dep = dependency('libcdio_paranoia', version: '>= 10.2+0.93+1', required: get_option('cdio_paranoia')) -+libcdio_paranoia_dep = dependency('libcdio_paranoia', required: get_option('cdio_paranoia')) - input_features.set('ENABLE_CDIO_PARANOIA', libcdio_paranoia_dep.found()) - if libcdio_paranoia_dep.found() - input_plugins_sources += 'CdioParanoiaInputPlugin.cxx' diff --git a/repo/media/mpd/mpd.confd b/repo/media/mpd/mpd.confd deleted file mode 100644 index 720306e..0000000 --- a/repo/media/mpd/mpd.confd +++ /dev/null @@ -1,7 +0,0 @@ -# conf.d file for music player daemon - -# -# Specify daemon $OPTS here. -# - -OPTS="" diff --git a/repo/media/mpd/mpd.initd b/repo/media/mpd/mpd.initd deleted file mode 100644 index 817583c..0000000 --- a/repo/media/mpd/mpd.initd +++ /dev/null @@ -1,25 +0,0 @@ -#!/sbin/openrc-run - -# init.d file for music player daemon - -supervisor=supervise-daemon - -name="Music Player Daemon" -description="A daemon for playing music" - -command=/usr/bin/mpd -command_args="$MPD_OPTS" -command_args_foreground="--no-daemon" - -command_user="${M_USER:-mpd}:${M_GROUP:-audio}" - -depend() { - need localmount - use net netmount nfsmount esound pulseaudio - after firewall -} - -start_pre() { - checkpath --directory --quiet \ - --owner "${M_USER:-mpd}" --mode 0775 /var/run/mpd -} diff --git a/repo/media/mpd/mpd.xibuild b/repo/media/mpd/mpd.xibuild deleted file mode 100644 index 1d8853a..0000000 --- a/repo/media/mpd/mpd.xibuild +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -NAME="mpd" -DESC="Music daemon that plays MP3, FLAC, Ogg Vorbis files and Audio CDs" - -MAKEDEPS="meson ninja boost" -DEPS="alsa-lib sbase expat faad2 flac fmt icu lame bzip2 libid3tag libmad libogg pulseaudio libsamplerate libmpdclient libvorbis musl opus pipewire soxr wavpack zlib sqlite3 ffmpeg4" - -PKG_VER=0.23.6 -SOURCE="https://www.musicpd.org/download/mpd/${PKG_VER%.*}/mpd-$PKG_VER.tar.xz" -ADDITIONAL="libcdio-paa-version.patch libcdio-paranoia-version.patch mpd.confd mpd.initd" - -prepare () { - apply_patches -} - -build () { - cd build - meson --prefix=/usr \ - -Dopus=enabled \ - -Ddocumentation=enabled \ - -Dlibmpdclient=enabled \ - -Dpipewire=enabled \ - -Dwavpack=enabled \ - -Dffmpeg=enabled \ - .. && - - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install - cd .. - install -d $PKG_DEST/etc - sed -e 's:\#user.*:user\t\t"mpd":' \ - -e 's:\#log_file.*:log_file\t\t"syslog":' \ - doc/mpdconf.example > $PKG_DEST/etc/mpd.conf - install -m755 -D mpd.initd \ - "$PKG_DEST"/etc/init.d/mpd - install -m644 -D mpd.confd \ - "$PKG_DEST"/etc/conf.d/mpd - install -d -m775 \ - "$PKG_DEST"/var/run/mpd \ - "$PKG_DEST"/var/log/mpd \ - "$PKG_DEST"/var/lib/mpd \ - "$PKG_DEST"/var/lib/mpd/playlists \ - "$PKG_DEST"/var/lib/mpd/music -} diff --git a/repo/media/mypaint-brushes/mypaint-brushes.xibuild b/repo/media/mypaint-brushes/mypaint-brushes.xibuild deleted file mode 100644 index 8031c8c..0000000 --- a/repo/media/mypaint-brushes/mypaint-brushes.xibuild +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -NAME="mypaint-brushes" -DESC="default MyPaint brushes" - -MAKEDEPS="make " -DEPS="pkg-config " - -PKG_VER=1.3.1 -SOURCE="https://github.com/mypaint/mypaint-brushes/releases/download/v$PKG_VER/mypaint-brushes-$PKG_VER.tar.xz" - -prepare () { - autoreconf -fi -} - -build () { - ./configure \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/openal-soft/openal-soft.xibuild b/repo/media/openal-soft/openal-soft.xibuild deleted file mode 100644 index c0d7137..0000000 --- a/repo/media/openal-soft/openal-soft.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -NAME="openal-soft" -DESC="software implementation of OpenAL API" - -MAKEDEPS="cmake " -DEPS="ffmpeg4 musl sdl2 " - -PKG_VER=1.22.0 -SOURCE="https://github.com/kcat/openal-soft/archive/$PKG_VER.tar.gz" - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/openjpeg/b4700bc09d55ac17ff6bef9b0a867f6de527be17.patch b/repo/media/openjpeg/b4700bc09d55ac17ff6bef9b0a867f6de527be17.patch deleted file mode 100644 index 169e4ad..0000000 --- a/repo/media/openjpeg/b4700bc09d55ac17ff6bef9b0a867f6de527be17.patch +++ /dev/null @@ -1,77 +0,0 @@ -From b4700bc09d55ac17ff6bef9b0a867f6de527be17 Mon Sep 17 00:00:00 2001 -From: Ariadne Conill <ariadne@dereferenced.org> -Date: Tue, 27 Apr 2021 09:37:40 -0600 -Subject: [PATCH] use calloc instead of malloc to allocate arrays - ---- - src/bin/jp2/opj_compress.c | 4 ++-- - src/bin/jp2/opj_decompress.c | 5 ++--- - src/bin/jp2/opj_dump.c | 6 +++--- - 3 files changed, 7 insertions(+), 8 deletions(-) - -diff --git a/src/bin/jp2/opj_compress.c b/src/bin/jp2/opj_compress.c -index 4cc513452..d8f894cb1 100644 ---- a/src/bin/jp2/opj_compress.c -+++ b/src/bin/jp2/opj_compress.c -@@ -1910,9 +1910,9 @@ int main(int argc, char **argv) - num_images = get_num_images(img_fol.imgdirpath); - dirptr = (dircnt_t*)malloc(sizeof(dircnt_t)); - if (dirptr) { -- dirptr->filename_buf = (char*)malloc(num_images * OPJ_PATH_LEN * sizeof( -+ dirptr->filename_buf = (char*)calloc(num_images, OPJ_PATH_LEN * sizeof( - char)); /* Stores at max 10 image file names*/ -- dirptr->filename = (char**) malloc(num_images * sizeof(char*)); -+ dirptr->filename = (char**) calloc(num_images, sizeof(char*)); - if (!dirptr->filename_buf) { - ret = 0; - goto fin; -diff --git a/src/bin/jp2/opj_decompress.c b/src/bin/jp2/opj_decompress.c -index 487e3fa18..e54e54fce 100644 ---- a/src/bin/jp2/opj_decompress.c -+++ b/src/bin/jp2/opj_decompress.c -@@ -1357,14 +1357,13 @@ int main(int argc, char **argv) - return EXIT_FAILURE; - } - /* Stores at max 10 image file names */ -- dirptr->filename_buf = (char*)malloc(sizeof(char) * -- (size_t)num_images * OPJ_PATH_LEN); -+ dirptr->filename_buf = calloc((size_t) num_images, sizeof(char) * OPJ_PATH_LEN); - if (!dirptr->filename_buf) { - failed = 1; - goto fin; - } - -- dirptr->filename = (char**) malloc((size_t)num_images * sizeof(char*)); -+ dirptr->filename = (char**) calloc((size_t) num_images, sizeof(char*)); - - if (!dirptr->filename) { - failed = 1; -diff --git a/src/bin/jp2/opj_dump.c b/src/bin/jp2/opj_dump.c -index 754a39dd0..4e19c6177 100644 ---- a/src/bin/jp2/opj_dump.c -+++ b/src/bin/jp2/opj_dump.c -@@ -457,7 +457,7 @@ int main(int argc, char *argv[]) - opj_codestream_info_v2_t* cstr_info = NULL; - opj_codestream_index_t* cstr_index = NULL; - -- OPJ_INT32 num_images, imageno; -+ int num_images, imageno; - img_fol_t img_fol; - dircnt_t *dirptr = NULL; - -@@ -486,13 +486,13 @@ int main(int argc, char *argv[]) - if (!dirptr) { - return EXIT_FAILURE; - } -- dirptr->filename_buf = (char*)malloc((size_t)num_images * OPJ_PATH_LEN * sizeof( -+ dirptr->filename_buf = (char*) calloc((size_t) num_images, OPJ_PATH_LEN * sizeof( - char)); /* Stores at max 10 image file names*/ - if (!dirptr->filename_buf) { - free(dirptr); - return EXIT_FAILURE; - } -- dirptr->filename = (char**) malloc((size_t)num_images * sizeof(char*)); -+ dirptr->filename = (char**) calloc((size_t) num_images, sizeof(char*)); - - if (!dirptr->filename) { - goto fails; diff --git a/repo/media/openjpeg/fix-cmakelists.patch b/repo/media/openjpeg/fix-cmakelists.patch deleted file mode 100644 index ee5fb01..0000000 --- a/repo/media/openjpeg/fix-cmakelists.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -148,7 +148,7 @@ - # We could install *.cmake files in share/ however those files contains - # hardcoded path to libraries on a multi-arch system (fedora/debian) those - # path will be different (lib/i386-linux-gnu vs lib/x86_64-linux-gnu) -- set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/${OPENJPEG_INSTALL_SUBDIR}") -+ set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/cmake/${OPENJPEG_INSTALL_SUBDIR}") - endif() - - if (APPLE) diff --git a/repo/media/openjpeg/openjpeg.xibuild b/repo/media/openjpeg/openjpeg.xibuild deleted file mode 100644 index 9a20ff7..0000000 --- a/repo/media/openjpeg/openjpeg.xibuild +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -NAME="openjpeg" -DESC="Open-source implementation of JPEG2000 image codec" - -MAKEDEPS="cmake " -DEPS="musl " - -PKG_VER=2.4.0 -SOURCE="https://github.com/uclouvain/openjpeg/archive/v$PKG_VER/openjpeg-v$PKG_VER.tar.gz" -ADDITIONAL="b4700bc09d55ac17ff6bef9b0a867f6de527be17.patch fix-cmakelists.patch " - -prepare () { - apply_patches -} - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/opus/opus.xibuild b/repo/media/opus/opus.xibuild deleted file mode 100644 index 0ec5624..0000000 --- a/repo/media/opus/opus.xibuild +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="musl" - -DESC="Totally open, royalty-free, highly versatile audio codec" - -PKG_VER=1.3.1 -SOURCE=https://archive.mozilla.org/pub/opus/opus-$PKG_VER.tar.gz - -build () { - CFLAGS="$(echo "$CFLAGS" | sed 's/-Os/-O2/g')" ./configure --prefix=/usr \ - --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --localstatedir=/var \ - --enable-custom-modes - - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/pipewire/pipewire.xibuild b/repo/media/pipewire/pipewire.xibuild deleted file mode 100644 index b685025..0000000 --- a/repo/media/pipewire/pipewire.xibuild +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make" -DEPS="ffmpeg libva pulseaudio sdl2 v4l-utils" - -DESC="Low-latency audio/video router and processor" - -PKG_VER=0.3.47 -SOURCE=https://github.com/PipeWire/pipewire/archive/$PKG_VER/pipewire-$PKG_VER.tar.gz - -build () { - mkdir build && - cd build && - - meson --prefix=/usr --buildtype=release -Dsession-managers= .. && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install -} diff --git a/repo/media/poppler-data/poppler-data.xibuild b/repo/media/poppler-data/poppler-data.xibuild deleted file mode 100644 index cc7d29c..0000000 --- a/repo/media/poppler-data/poppler-data.xibuild +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -NAME="poppler-data" -DESC="encoding data for the poppler PDF rendering library" - -MAKEDEPS="make " -DEPS="pkg-config " - -PKG_VER=0.4.11 -SOURCE="https://poppler.freedesktop.org/poppler-data-$PKG_VER.tar.gz" - -package () { - make prefix=/usr DESTDIR=$PKG_DEST install - mkdir -p $PKG_DEST/usr/lib - mv $PKG_DEST/usr/share/pkgconfig $PKG_DEST/usr/lib/pkgconfig -} diff --git a/repo/media/poppler/dont-enforce-build-type.patch b/repo/media/poppler/dont-enforce-build-type.patch deleted file mode 100644 index 5296880..0000000 --- a/repo/media/poppler/dont-enforce-build-type.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake -index 2aed028..fdbe318 100644 ---- a/cmake/modules/PopplerMacros.cmake -+++ b/cmake/modules/PopplerMacros.cmake -@@ -75,21 +75,6 @@ if(WIN32) - "${CMAKE_INSTALL_PREFIX}/bin" ) - endif(WIN32) - --if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) -- set(CMAKE_BUILD_TYPE RelWithDebInfo) --endif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) -- --string(TOUPPER "${CMAKE_BUILD_TYPE}" _CMAKE_BUILD_TYPE_UPPER) --set(_known_build_types RELWITHDEBINFO;RELEASE;DEBUG;DEBUGFULL;PROFILE) --# We override CMAKE_CXX_FLAGS_${_CMAKE_BUILD_TYPE_UPPER} below. If the user --# selects a CMAKE_BUILD_TYPE that is not handled by the logic below, we will --# end up dropping the previous flags (e.g. those set in a cross-compilation --# CMake toolchain file). To avoid surprising compilation errors, we emit an --# error in that case, so that the user can handle the passed CMAKE_BUILD_TYPE --# in the compiler flags logic below. --if (NOT "${_CMAKE_BUILD_TYPE_UPPER}" IN_LIST _known_build_types) -- message(FATAL_ERROR "Unsupported CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}") --endif() - set(_save_cflags "${CMAKE_C_FLAGS}") - set(_save_cxxflags "${CMAKE_CXX_FLAGS}") - diff --git a/repo/media/poppler/poppler-glib.xibuild b/repo/media/poppler/poppler-glib.xibuild deleted file mode 100644 index d6f31bf..0000000 --- a/repo/media/poppler/poppler-glib.xibuild +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -NAME="poppler-glib" -DESC="Glib wrapper for poppler" -DEPS="cairo freetype2 glib musl poppler" - -package () { - add_from_main "usr/lib/libpoppler-glib.so*" \ - "usr/lib/girepository*" -} diff --git a/repo/media/poppler/poppler.xibuild b/repo/media/poppler/poppler.xibuild deleted file mode 100644 index 9c10ee1..0000000 --- a/repo/media/poppler/poppler.xibuild +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -NAME="poppler" -DESC="PDF rendering library based on xpdf 3.0" - -MAKEDEPS="cmake " -DEPS="fontconfig freetype2 lcms2 libjpeg-turbo libpng musl openjpeg tiff " - -PKG_VER=22.05.0 -SOURCE="https://poppler.freedesktop.org/poppler-$PKG_VER.tar.xz" -ADDITIONAL="dont-enforce-build-type.patch " - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=lib \ - -DENABLE_UNSTABLE_API_ABI_HEADERS=ON \ - -DBUILD_QT5_TESTS=OFF \ - -DENABLE_QT5=OFF \ - -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ - -DCMAKE_C_FLAGS="$CFLAGS" \ - -DENABLE_BOOST=OFF \ - - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/pulseaudio/pulseaudio.xibuild b/repo/media/pulseaudio/pulseaudio.xibuild deleted file mode 100644 index 1df3660..0000000 --- a/repo/media/pulseaudio/pulseaudio.xibuild +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh - -MAKEDEPS="make check soxr libx11 libxtst openssl eudev check libtool gtk3" -DEPS="libsndfile alsa-lib dbus elogind glib libcap libxtst gdbm" - -DESC="A featureful, general-purpose sound server" - -PKG_VER=15.0 -SOURCE=https://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-$PKG_VER.tar.xz - -build () { - mkdir build && - cd build && - - meson --prefix=/usr \ - -Dgcov=false \ - -Dman=true \ - -Dtests=true \ - -Dsystem_user=pulse \ - -Dsystem_group=pulse \ - -Ddatabase=tdb \ - -Dalsa=enabled \ - -Ddbus=enabled \ - -Dglib=enabled \ - -Dgsettings=enabled \ - -Dgtk=enabled \ - -Dhal-compat=false \ - -Dipv6=true \ - -Ddatabase=gdbm \ - -Dopenssl=enabled \ - -Dsamplerate=disabled \ - -Dsoxr=enabled \ - -Dsystemd=disabled \ - -Dudev=enabled \ - -Dx11=enabled \ - -Dudevrulesdir=/usr/lib/udev/rules.d \ - -Ddoxygen=false && - ninja -} - -package () { - DESTDIR=$PKG_DEST ninja install - rm -f $PKG_DEST/etc/dbus-1/system.d/pulseaudio-system.conf -} diff --git a/repo/media/pulsemixer/pulsemixer.xibuild b/repo/media/pulsemixer/pulsemixer.xibuild deleted file mode 100644 index 4bf0850..0000000 --- a/repo/media/pulsemixer/pulsemixer.xibuild +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -NAME="pulsemixer" -DESC="CLI and curses mixer for PulseAudio" - -MAKEDEPS="" -DEPS="pulseaudio python libtool" - -PKG_VER=1.5.1 -SOURCE="https://github.com/GeorgeFilipkin/pulsemixer/archive/$PKG_VER.tar.gz" - -build () { - python3 setup.py build -} - -package () { - python3 setup.py install --prefix=/usr --root=$PKG_DEST -} diff --git a/repo/media/sfml/musl-1.2.3.patch b/repo/media/sfml/musl-1.2.3.patch deleted file mode 100644 index 54d2f6d..0000000 --- a/repo/media/sfml/musl-1.2.3.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/SFML/Window/Unix/WindowImplX11.cpp -+++ b/src/SFML/Window/Unix/WindowImplX11.cpp -@@ -1556,7 +1556,7 @@ - m_window, - XNInputStyle, - XIMPreeditNothing | XIMStatusNothing, -- reinterpret_cast<void*>(NULL)); -+ reinterpret_cast<void*>(0)); - } - else - { diff --git a/repo/media/sfml/sfml.xibuild b/repo/media/sfml/sfml.xibuild deleted file mode 100644 index c0001dd..0000000 --- a/repo/media/sfml/sfml.xibuild +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -NAME="sfml" -DESC="Simple and Fast Multimedia Library" - -MAKEDEPS="cmake " -DEPS="eudev freetype2 flac libogg libvorbis libx11 libxrandr mesa musl openal-soft " - -PKG_VER=2.5.1 -SOURCE="https://github.com/SFML/SFML/archive/$PKG_VER/sfml-$PKG_VER.tar.gz" -ADDITIONAL="musl-1.2.3.patch " - -prepare () { - apply_patches -} - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/soxr/soxr.xibuild b/repo/media/soxr/soxr.xibuild deleted file mode 100644 index 48b1e3b..0000000 --- a/repo/media/soxr/soxr.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -NAME="soxr" -DESC="High quality, one-dimensional sample-rate conversion library" - -MAKEDEPS="cmake " -DEPS="musl " - -PKG_VER=0.1.3 -SOURCE="https://sourceforge.net/projects/soxr/files/soxr-$PKG_VER-Source.tar.xz/download" - -build () { - cmake -B build -G Ninja \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/tiff/CVE-2018-12900.patch b/repo/media/tiff/CVE-2018-12900.patch deleted file mode 100644 index f95cd06..0000000 --- a/repo/media/tiff/CVE-2018-12900.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 86861b86f26be5301ccfa96f9bf765051f4e644a Mon Sep 17 00:00:00 2001 -From: pgajdos <pgajdos@suse.cz> -Date: Tue, 13 Nov 2018 09:03:31 +0100 -Subject: [PATCH] prevent integer overflow - ---- - tools/tiffcp.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/tools/tiffcp.c b/tools/tiffcp.c -index 2f406e2d..ece7ba13 100644 ---- a/tools/tiffcp.c -+++ b/tools/tiffcp.c -@@ -1435,6 +1435,12 @@ DECLAREreadFunc(readSeparateTilesIntoBuffer) - status = 0; - goto done; - } -+ if (0xFFFFFFFF / tilew < spp) -+ { -+ TIFFError(TIFFFileName(in), "Error, either TileWidth (%u) or BitsPerSample (%u) is too large", tilew, bps); -+ status = 0; -+ goto done; -+ } - bytes_per_sample = bps/8; - - for (row = 0; row < imagelength; row += tl) { --- -2.18.1 - diff --git a/repo/media/tiff/tiff.xibuild b/repo/media/tiff/tiff.xibuild deleted file mode 100644 index 544116b..0000000 --- a/repo/media/tiff/tiff.xibuild +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh - -NAME="tiff" -DESC="Provides support for the Tag Image File Format or TIFF" - -MAKEDEPS="" -DEPS="musl xz zlib zstd " - -PKG_VER=4.3.0 -SOURCE="https://gitlab.com/libtiff/libtiff/-/archive/v$PKG_VER/libtiff-v$PKG_VER.tar.gz" -ADDITIONAL="CVE-2018-12900.patch " - -prepare () { - apply_patches - autoreconf -fi -} - -build () { - ./configure \ - --prefix=/usr - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static \ - --enable-cxx - - make -} - -package () { - make DESTDIR=$PKG_DEST install -} - diff --git a/repo/media/v4l-utils/fix_parse_next_subopt.patch b/repo/media/v4l-utils/fix_parse_next_subopt.patch deleted file mode 100644 index d4df9d4..0000000 --- a/repo/media/v4l-utils/fix_parse_next_subopt.patch +++ /dev/null @@ -1,36 +0,0 @@ -parse_next_subopt() relies on undefined behavior and only works with glibc's -implementation of getsubopt(). This fixes the issue. ---- a/utils/v4l2-ctl/v4l2-ctl-common.cpp 2021-11-08 11:23:39.079748359 +0100 -+++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp 2021-11-08 11:39:49.328576794 +0100 -@@ -956,15 +956,23 @@ static bool parse_subset(char *optarg) - - static bool parse_next_subopt(char **subs, char **value) - { -- static char *const subopts[] = { -- nullptr -- }; -- int opt = getsubopt(subs, subopts, value); -+ char *start = *subs; -+ if (!start || (start[0] == '\0')) { -+ fprintf(stderr, "Missing suboption value\n"); -+ return true; -+ } -+ *value = start; - -- if (opt < 0 || *value) -- return false; -- fprintf(stderr, "Missing suboption value\n"); -- return true; -+ char *sep = std::strchr(start, ','); -+ if (sep != nullptr) { -+ *sep = '\0'; -+ *subs = sep + 1; -+ } -+ else { -+ *subs = std::strchr(start, '\0'); -+ } -+ -+ return false; - } - - void common_cmd(const std::string &media_bus_info, int ch, char *optarg) diff --git a/repo/media/v4l-utils/types.patch b/repo/media/v4l-utils/types.patch deleted file mode 100644 index 340bb81..0000000 --- a/repo/media/v4l-utils/types.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- a/utils/keytable/keymap.h -+++ b/utils/keytable/keymap.h -@@ -2,6 +2,10 @@ - #ifndef __KEYMAP_H - #define __KEYMAP_H - -+#include <stdint.h> -+typedef uint32_t u_int32_t; -+typedef int error_t; -+ - struct keymap { - struct keymap *next; - char *name; ---- a/utils/ir-ctl/keymap.h -+++ b/utils/ir-ctl/keymap.h -@@ -2,6 +2,10 @@ - #ifndef __KEYMAP_H - #define __KEYMAP_H - -+#include <stdint.h> -+typedef uint32_t u_int32_t; -+typedef int error_t; -+ - struct keymap { - struct keymap *next; - char *name; diff --git a/repo/media/v4l-utils/v4l-utils.xibuild b/repo/media/v4l-utils/v4l-utils.xibuild deleted file mode 100644 index bd40b23..0000000 --- a/repo/media/v4l-utils/v4l-utils.xibuild +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -NAME="v4l-utils" -DESC="Userspace tools and conversion library for Video 4 Linux" - -MAKEDEPS="make " -DEPS="alsa-lib libjpeg-turbo argp-standalone eudev " - -PKG_VER=1.22.1 -SOURCE="https://linuxtv.org/downloads/v4l-utils/v4l-utils-$PKG_VER.tar.bz2" -ADDITIONAL="fix_parse_next_subopt.patch types.patch " - -prepare () { - apply_patches -} - -build () { - ./configure \ - --prefix=/usr - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-static \ - --enable-libdvbv5 - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/vidstab/vidstab.xibuild b/repo/media/vidstab/vidstab.xibuild deleted file mode 100644 index cd0e5cf..0000000 --- a/repo/media/vidstab/vidstab.xibuild +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -NAME="vidstab" -DESC="Video stabilization library" - -MAKEDEPS="cmake " -DEPS="musl " - -PKG_VER=1.1.0 -SOURCE="https://github.com/georgmartius/vid.stab/archive/v$PKG_VER/vid.stab-v$PKG_VER.tar.gz" - -build () { - cmake -B build \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DBUILD_SHARED_LIBS=True \ - -DBUILD_STATIC_LIBS=OFF - cmake --build build -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} diff --git a/repo/media/wavpack/wavpack.xibuild b/repo/media/wavpack/wavpack.xibuild deleted file mode 100644 index eb9ccfc..0000000 --- a/repo/media/wavpack/wavpack.xibuild +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -NAME="wavpack" -DESC="Audio compression format with lossless, lossy, and hybrid compression modes" - -MAKEDEPS="make " -DEPS="musl" - -PKG_VER=5.4.0 -SOURCE="http://www.wavpack.com/wavpack-$PKG_VER.tar.xz" - -build () { - ./configure \ - --prefix=/usr - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --disable-static - make -} - -package () { - make DESTDIR=$PKG_DEST install -} diff --git a/repo/media/x264/oclobj.h b/repo/media/x264/oclobj.h deleted file mode 100644 index 8ec2e5a..0000000 --- a/repo/media/x264/oclobj.h +++ /dev/null @@ -1,4684 +0,0 @@ -static const char x264_opencl_source[] = { -0x23, 0x70, 0x72, 0x61, 0x67, 0x6d, 0x61, 0x20, 0x4f, 0x50, 0x45, 0x4e, 0x43, 0x4c, 0x20, 0x45, -0x58, 0x54, 0x45, 0x4e, 0x53, 0x49, 0x4f, 0x4e, 0x20, 0x63, 0x6c, 0x5f, 0x6b, 0x68, 0x72, 0x5f, -0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, 0x78, 0x74, 0x65, -0x6e, 0x64, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x3a, 0x20, 0x65, -0x6e, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x73, -0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x5f, 0x74, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, -0x20, 0x3d, 0x20, 0x43, 0x4c, 0x4b, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x49, 0x5a, 0x45, -0x44, 0x5f, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x53, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x20, 0x7c, -0x20, 0x43, 0x4c, 0x4b, 0x5f, 0x41, 0x44, 0x44, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x43, 0x4c, 0x41, -0x4d, 0x50, 0x5f, 0x54, 0x4f, 0x5f, 0x45, 0x44, 0x47, 0x45, 0x20, 0x7c, 0x20, 0x43, 0x4c, 0x4b, -0x5f, 0x46, 0x49, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x4e, 0x45, 0x41, 0x52, 0x45, 0x53, 0x54, 0x3b, -0x0a, 0x2f, 0x2a, 0x20, 0x37, 0x2e, 0x31, 0x38, 0x2e, 0x31, 0x2e, 0x31, 0x20, 0x20, 0x45, 0x78, -0x61, 0x63, 0x74, 0x2d, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, -0x72, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x2a, 0x2f, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x64, -0x65, 0x66, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x63, 0x68, 0x61, 0x72, 0x20, 0x69, -0x6e, 0x74, 0x38, 0x5f, 0x74, 0x3b, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x66, 0x20, 0x75, -0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x63, 0x68, 0x61, 0x72, 0x20, 0x20, 0x20, 0x75, -0x69, 0x6e, 0x74, 0x38, 0x5f, 0x74, 0x3b, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x66, 0x20, -0x73, 0x68, 0x6f, 0x72, 0x74, 0x20, 0x20, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x3b, 0x0a, -0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x66, 0x20, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, -0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x20, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, -0x3b, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x66, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x69, -0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x3b, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x66, 0x20, -0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x20, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x33, -0x32, 0x5f, 0x74, 0x3b, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x66, 0x20, 0x75, 0x69, 0x6e, -0x74, 0x38, 0x5f, 0x74, 0x20, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x3b, 0x0a, 0x74, 0x79, 0x70, -0x65, 0x64, 0x65, 0x66, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x73, 0x75, -0x6d, 0x5f, 0x74, 0x3b, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x66, 0x20, 0x75, 0x69, 0x6e, -0x74, 0x33, 0x32, 0x5f, 0x74, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x3b, 0x0a, 0x23, 0x64, -0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x4c, 0x4f, 0x57, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x53, -0x54, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x20, 0x28, 0x28, 0x31, 0x3c, 0x3c, 0x31, 0x34, 0x29, 0x2d, -0x31, 0x29, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x4c, 0x4f, 0x57, 0x52, 0x45, -0x53, 0x5f, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x53, 0x48, 0x49, 0x46, 0x54, 0x20, 0x31, 0x34, 0x0a, -0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x4d, 0x41, 0x58, -0x20, 0x28, 0x31, 0x3c, 0x3c, 0x32, 0x38, 0x29, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, -0x20, 0x50, 0x49, 0x58, 0x45, 0x4c, 0x5f, 0x4d, 0x41, 0x58, 0x20, 0x32, 0x35, 0x35, 0x0a, 0x23, -0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, -0x53, 0x55, 0x4d, 0x20, 0x28, 0x38, 0x20, 0x2a, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x6f, 0x66, 0x28, -0x73, 0x75, 0x6d, 0x5f, 0x74, 0x29, 0x29, 0x0a, 0x2f, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x74, -0x61, 0x6e, 0x74, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x73, -0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20, 0x73, 0x74, 0x61, 0x74, -0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x2a, 0x2f, -0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x45, 0x53, -0x54, 0x20, 0x20, 0x20, 0x20, 0x30, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x43, -0x4f, 0x53, 0x54, 0x5f, 0x45, 0x53, 0x54, 0x5f, 0x41, 0x51, 0x20, 0x31, 0x0a, 0x23, 0x64, 0x65, -0x66, 0x69, 0x6e, 0x65, 0x20, 0x49, 0x4e, 0x54, 0x52, 0x41, 0x5f, 0x4d, 0x42, 0x53, 0x20, 0x20, -0x20, 0x32, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x43, 0x4f, 0x50, 0x59, 0x32, -0x5f, 0x49, 0x46, 0x5f, 0x4c, 0x54, 0x28, 0x20, 0x78, 0x2c, 0x20, 0x79, 0x2c, 0x20, 0x61, 0x2c, -0x20, 0x62, 0x20, 0x29, 0x5c, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x28, 0x79, 0x29, 0x20, 0x3c, 0x20, -0x28, 0x78, 0x29, 0x20, 0x29, 0x5c, 0x0a, 0x7b, 0x5c, 0x0a, 0x28, 0x78, 0x29, 0x20, 0x3d, 0x20, -0x28, 0x79, 0x29, 0x3b, 0x5c, 0x0a, 0x28, 0x61, 0x29, 0x20, 0x3d, 0x20, 0x28, 0x62, 0x29, 0x3b, -0x5c, 0x0a, 0x7d, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x74, -0x32, 0x20, 0x64, 0x69, 0x61, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x5b, 0x34, 0x5d, 0x20, 0x3d, 0x0a, -0x7b, 0x0a, 0x7b, 0x30, 0x2c, 0x20, 0x2d, 0x31, 0x7d, 0x2c, 0x20, 0x7b, 0x2d, 0x31, 0x2c, 0x20, -0x30, 0x7d, 0x2c, 0x20, 0x7b, 0x31, 0x2c, 0x20, 0x30, 0x7d, 0x2c, 0x20, 0x7b, 0x30, 0x2c, 0x20, -0x31, 0x7d, 0x2c, 0x0a, 0x7d, 0x3b, 0x0a, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x72, -0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x29, 0x20, 0x63, 0x6c, -0x61, 0x6d, 0x70, 0x28, 0x20, 0x78, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x29, 0x20, 0x30, 0x2c, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x29, 0x20, 0x50, 0x49, 0x58, 0x45, 0x4c, 0x5f, 0x4d, 0x41, 0x58, -0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x69, 0x6e, 0x74, -0x32, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x6d, 0x76, -0x28, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x61, 0x2c, 0x20, 0x73, 0x68, 0x6f, 0x72, -0x74, 0x32, 0x20, 0x62, 0x2c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x63, 0x20, 0x29, -0x0a, 0x7b, 0x0a, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x74, 0x31, 0x20, 0x3d, 0x20, 0x6d, -0x69, 0x6e, 0x28, 0x61, 0x2c, 0x20, 0x62, 0x29, 0x3b, 0x0a, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, -0x20, 0x74, 0x32, 0x20, 0x3d, 0x20, 0x6d, 0x69, 0x6e, 0x28, 0x6d, 0x61, 0x78, 0x28, 0x61, 0x2c, -0x20, 0x62, 0x29, 0x2c, 0x20, 0x63, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, -0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x32, 0x28, 0x6d, 0x61, 0x78, -0x28, 0x74, 0x31, 0x2c, 0x20, 0x74, 0x32, 0x29, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x6c, -0x69, 0x6e, 0x65, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, -0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x61, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x73, 0x75, -0x6d, 0x32, 0x5f, 0x74, 0x20, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x61, 0x20, 0x3e, 0x3e, 0x20, -0x28, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x4d, 0x20, 0x2d, 0x20, -0x31, 0x29, 0x29, 0x20, 0x26, 0x20, 0x28, 0x28, 0x28, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x29, -0x31, 0x20, 0x3c, 0x3c, 0x20, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x55, -0x4d, 0x29, 0x20, 0x2b, 0x20, 0x31, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x28, 0x28, 0x73, 0x75, 0x6d, -0x5f, 0x74, 0x29, 0x2d, 0x31, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, -0x61, 0x20, 0x2b, 0x20, 0x73, 0x29, 0x20, 0x5e, 0x20, 0x73, 0x3b, 0x0a, 0x7d, 0x0a, 0x23, 0x64, -0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x28, -0x20, 0x64, 0x30, 0x2c, 0x20, 0x64, 0x31, 0x2c, 0x20, 0x64, 0x32, 0x2c, 0x20, 0x64, 0x33, 0x2c, -0x20, 0x73, 0x30, 0x2c, 0x20, 0x73, 0x31, 0x2c, 0x20, 0x73, 0x32, 0x2c, 0x20, 0x73, 0x33, 0x20, -0x29, 0x20, 0x7b, 0x5c, 0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x74, 0x30, 0x20, 0x3d, -0x20, 0x73, 0x30, 0x20, 0x2b, 0x20, 0x73, 0x31, 0x3b, 0x5c, 0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, -0x74, 0x20, 0x74, 0x31, 0x20, 0x3d, 0x20, 0x73, 0x30, 0x20, 0x2d, 0x20, 0x73, 0x31, 0x3b, 0x5c, -0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x74, 0x32, 0x20, 0x3d, 0x20, 0x73, 0x32, 0x20, -0x2b, 0x20, 0x73, 0x33, 0x3b, 0x5c, 0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x74, 0x33, -0x20, 0x3d, 0x20, 0x73, 0x32, 0x20, 0x2d, 0x20, 0x73, 0x33, 0x3b, 0x5c, 0x0a, 0x64, 0x30, 0x20, -0x3d, 0x20, 0x74, 0x30, 0x20, 0x2b, 0x20, 0x74, 0x32, 0x3b, 0x5c, 0x0a, 0x64, 0x32, 0x20, 0x3d, -0x20, 0x74, 0x30, 0x20, 0x2d, 0x20, 0x74, 0x32, 0x3b, 0x5c, 0x0a, 0x64, 0x31, 0x20, 0x3d, 0x20, -0x74, 0x31, 0x20, 0x2b, 0x20, 0x74, 0x33, 0x3b, 0x5c, 0x0a, 0x64, 0x33, 0x20, 0x3d, 0x20, 0x74, -0x31, 0x20, 0x2d, 0x20, 0x74, 0x33, 0x3b, 0x5c, 0x0a, 0x7d, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, -0x6e, 0x65, 0x20, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x56, 0x28, 0x20, 0x64, -0x30, 0x2c, 0x20, 0x64, 0x31, 0x2c, 0x20, 0x64, 0x32, 0x2c, 0x20, 0x64, 0x33, 0x2c, 0x20, 0x73, -0x30, 0x2c, 0x20, 0x73, 0x31, 0x2c, 0x20, 0x73, 0x32, 0x2c, 0x20, 0x73, 0x33, 0x20, 0x29, 0x20, -0x7b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x74, 0x30, 0x20, 0x3d, 0x20, 0x73, 0x30, 0x20, -0x2b, 0x20, 0x73, 0x31, 0x3b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x74, 0x31, 0x20, 0x3d, -0x20, 0x73, 0x30, 0x20, 0x2d, 0x20, 0x73, 0x31, 0x3b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, -0x74, 0x32, 0x20, 0x3d, 0x20, 0x73, 0x32, 0x20, 0x2b, 0x20, 0x73, 0x33, 0x3b, 0x5c, 0x0a, 0x69, -0x6e, 0x74, 0x32, 0x20, 0x74, 0x33, 0x20, 0x3d, 0x20, 0x73, 0x32, 0x20, 0x2d, 0x20, 0x73, 0x33, -0x3b, 0x5c, 0x0a, 0x64, 0x30, 0x20, 0x3d, 0x20, 0x74, 0x30, 0x20, 0x2b, 0x20, 0x74, 0x32, 0x3b, -0x5c, 0x0a, 0x64, 0x32, 0x20, 0x3d, 0x20, 0x74, 0x30, 0x20, 0x2d, 0x20, 0x74, 0x32, 0x3b, 0x5c, -0x0a, 0x64, 0x31, 0x20, 0x3d, 0x20, 0x74, 0x31, 0x20, 0x2b, 0x20, 0x74, 0x33, 0x3b, 0x5c, 0x0a, -0x64, 0x33, 0x20, 0x3d, 0x20, 0x74, 0x31, 0x20, 0x2d, 0x20, 0x74, 0x33, 0x3b, 0x5c, 0x0a, 0x7d, -0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x53, 0x41, 0x54, 0x44, 0x5f, 0x43, 0x5f, -0x38, 0x78, 0x34, 0x5f, 0x51, 0x28, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x71, 0x31, 0x2c, -0x20, 0x71, 0x32, 0x20, 0x29, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x28, -0x20, 0x71, 0x31, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x70, 0x69, 0x78, 0x31, 0x2c, -0x20, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x5f, 0x70, 0x69, 0x78, 0x31, 0x2c, 0x20, 0x71, 0x32, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x70, 0x69, 0x78, 0x32, 0x2c, 0x20, 0x69, 0x6e, 0x74, -0x20, 0x69, 0x5f, 0x70, 0x69, 0x78, 0x32, 0x20, 0x29, 0x5c, 0x0a, 0x7b, 0x5c, 0x0a, 0x73, 0x75, -0x6d, 0x32, 0x5f, 0x74, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x34, 0x5d, 0x5b, 0x34, 0x5d, 0x3b, 0x5c, -0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x61, 0x30, 0x2c, 0x20, 0x61, 0x31, 0x2c, 0x20, -0x61, 0x32, 0x2c, 0x20, 0x61, 0x33, 0x3b, 0x5c, 0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, -0x73, 0x75, 0x6d, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x5c, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, -0x6e, 0x74, 0x20, 0x69, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, 0x3c, 0x20, 0x34, 0x3b, -0x20, 0x69, 0x2b, 0x2b, 0x2c, 0x20, 0x70, 0x69, 0x78, 0x31, 0x20, 0x2b, 0x3d, 0x20, 0x69, 0x5f, -0x70, 0x69, 0x78, 0x31, 0x2c, 0x20, 0x70, 0x69, 0x78, 0x32, 0x20, 0x2b, 0x3d, 0x20, 0x69, 0x5f, -0x70, 0x69, 0x78, 0x32, 0x20, 0x29, 0x5c, 0x0a, 0x7b, 0x5c, 0x0a, 0x61, 0x30, 0x20, 0x3d, 0x20, -0x28, 0x70, 0x69, 0x78, 0x31, 0x5b, 0x30, 0x5d, 0x20, 0x2d, 0x20, 0x70, 0x69, 0x78, 0x32, 0x5b, -0x30, 0x5d, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x28, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x29, 0x28, -0x70, 0x69, 0x78, 0x31, 0x5b, 0x34, 0x5d, 0x20, 0x2d, 0x20, 0x70, 0x69, 0x78, 0x32, 0x5b, 0x34, -0x5d, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, -0x55, 0x4d, 0x29, 0x3b, 0x5c, 0x0a, 0x61, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x70, 0x69, 0x78, 0x31, -0x5b, 0x31, 0x5d, 0x20, 0x2d, 0x20, 0x70, 0x69, 0x78, 0x32, 0x5b, 0x31, 0x5d, 0x29, 0x20, 0x2b, -0x20, 0x28, 0x28, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x29, 0x28, 0x70, 0x69, 0x78, 0x31, 0x5b, -0x35, 0x5d, 0x20, 0x2d, 0x20, 0x70, 0x69, 0x78, 0x32, 0x5b, 0x35, 0x5d, 0x29, 0x20, 0x3c, 0x3c, -0x20, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x4d, 0x29, 0x3b, 0x5c, -0x0a, 0x61, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x70, 0x69, 0x78, 0x31, 0x5b, 0x32, 0x5d, 0x20, 0x2d, -0x20, 0x70, 0x69, 0x78, 0x32, 0x5b, 0x32, 0x5d, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x28, 0x73, 0x75, -0x6d, 0x32, 0x5f, 0x74, 0x29, 0x28, 0x70, 0x69, 0x78, 0x31, 0x5b, 0x36, 0x5d, 0x20, 0x2d, 0x20, -0x70, 0x69, 0x78, 0x32, 0x5b, 0x36, 0x5d, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x42, 0x49, 0x54, 0x53, -0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x4d, 0x29, 0x3b, 0x5c, 0x0a, 0x61, 0x33, 0x20, 0x3d, -0x20, 0x28, 0x70, 0x69, 0x78, 0x31, 0x5b, 0x33, 0x5d, 0x20, 0x2d, 0x20, 0x70, 0x69, 0x78, 0x32, -0x5b, 0x33, 0x5d, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x28, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x29, -0x28, 0x70, 0x69, 0x78, 0x31, 0x5b, 0x37, 0x5d, 0x20, 0x2d, 0x20, 0x70, 0x69, 0x78, 0x32, 0x5b, -0x37, 0x5d, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, -0x53, 0x55, 0x4d, 0x29, 0x3b, 0x5c, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, -0x28, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x5d, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, -0x5b, 0x69, 0x5d, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x5d, 0x5b, 0x32, -0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x5d, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x61, 0x30, -0x2c, 0x20, 0x61, 0x31, 0x2c, 0x20, 0x61, 0x32, 0x2c, 0x20, 0x61, 0x33, 0x20, 0x29, 0x3b, 0x5c, -0x0a, 0x7d, 0x5c, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, 0x3c, 0x20, 0x34, 0x3b, 0x20, 0x69, 0x2b, 0x2b, 0x20, 0x29, -0x5c, 0x0a, 0x7b, 0x5c, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x28, 0x20, -0x61, 0x30, 0x2c, 0x20, 0x61, 0x31, 0x2c, 0x20, 0x61, 0x32, 0x2c, 0x20, 0x61, 0x33, 0x2c, 0x20, -0x74, 0x6d, 0x70, 0x5b, 0x30, 0x5d, 0x5b, 0x69, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x31, -0x5d, 0x5b, 0x69, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x32, 0x5d, 0x5b, 0x69, 0x5d, 0x2c, -0x20, 0x74, 0x6d, 0x70, 0x5b, 0x33, 0x5d, 0x5b, 0x69, 0x5d, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x73, -0x75, 0x6d, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, 0x20, 0x61, 0x30, 0x20, 0x29, -0x20, 0x2b, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, 0x20, 0x61, 0x31, 0x20, 0x29, 0x20, 0x2b, 0x20, -0x61, 0x62, 0x73, 0x32, 0x28, 0x20, 0x61, 0x32, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x61, 0x62, 0x73, -0x32, 0x28, 0x20, 0x61, 0x33, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x7d, 0x5c, 0x0a, 0x72, 0x65, 0x74, -0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x28, 0x73, 0x75, 0x6d, 0x5f, 0x74, 0x29, 0x73, 0x75, 0x6d, -0x29, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x75, 0x6d, 0x3e, 0x3e, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, -0x45, 0x52, 0x5f, 0x53, 0x55, 0x4d, 0x29, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x31, 0x3b, 0x5c, 0x0a, -0x7d, 0x0a, 0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x55, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x66, -0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x65, 0x72, 0x66, 0x6f, -0x72, 0x6d, 0x20, 0x61, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x20, 0x73, 0x75, -0x6d, 0x20, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x61, -0x6e, 0x20, 0x61, 0x72, 0x72, 0x61, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x67, -0x65, 0x72, 0x73, 0x0a, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, -0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x75, 0x6d, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x76, 0x61, 0x6c, -0x75, 0x65, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x2c, 0x20, 0x76, 0x6f, 0x6c, 0x61, 0x74, -0x69, 0x6c, 0x65, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x2a, 0x61, -0x72, 0x72, 0x61, 0x79, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5b, 0x78, -0x5d, 0x20, 0x3d, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3b, 0x0a, 0x62, 0x61, 0x72, 0x72, 0x69, -0x65, 0x72, 0x28, 0x20, 0x43, 0x4c, 0x4b, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4d, 0x45, -0x4d, 0x5f, 0x46, 0x45, 0x4e, 0x43, 0x45, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x64, -0x69, 0x6d, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, -0x69, 0x7a, 0x65, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x28, -0x20, 0x64, 0x69, 0x6d, 0x20, 0x3e, 0x20, 0x31, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x64, 0x69, 0x6d, -0x20, 0x3e, 0x3e, 0x3d, 0x20, 0x31, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x78, 0x20, 0x3c, 0x20, -0x64, 0x69, 0x6d, 0x20, 0x29, 0x0a, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5b, 0x78, 0x5d, 0x20, 0x2b, -0x3d, 0x20, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5b, 0x78, 0x20, 0x2b, 0x20, 0x64, 0x69, 0x6d, 0x5d, -0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x64, 0x69, 0x6d, 0x20, 0x3e, 0x20, 0x33, 0x32, 0x20, 0x29, -0x0a, 0x62, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x28, 0x20, 0x43, 0x4c, 0x4b, 0x5f, 0x4c, 0x4f, -0x43, 0x41, 0x4c, 0x5f, 0x4d, 0x45, 0x4d, 0x5f, 0x46, 0x45, 0x4e, 0x43, 0x45, 0x20, 0x29, 0x3b, -0x0a, 0x7d, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5b, -0x30, 0x5d, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, -0x74, 0x28, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x6d, 0x76, 0x64, 0x20, 0x29, 0x0a, 0x7b, -0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x6d, 0x76, 0x64, 0x66, 0x20, 0x3d, 0x20, 0x28, -0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x29, 0x28, 0x6d, 0x76, 0x64, 0x2e, 0x78, 0x2c, 0x20, 0x6d, -0x76, 0x64, 0x2e, 0x79, 0x29, 0x20, 0x2b, 0x20, 0x31, 0x2e, 0x30, 0x66, 0x3b, 0x0a, 0x66, 0x6c, -0x6f, 0x61, 0x74, 0x32, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x72, 0x6f, 0x75, 0x6e, -0x64, 0x28, 0x20, 0x6c, 0x6f, 0x67, 0x32, 0x28, 0x6d, 0x76, 0x64, 0x66, 0x29, 0x20, 0x2a, 0x20, -0x32, 0x2e, 0x30, 0x66, 0x20, 0x2b, 0x20, 0x30, 0x2e, 0x37, 0x31, 0x38, 0x66, 0x20, 0x2b, 0x20, -0x28, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x29, 0x28, 0x21, 0x21, 0x6d, 0x76, 0x64, 0x2e, 0x78, -0x2c, 0x20, 0x21, 0x21, 0x6d, 0x76, 0x64, 0x2e, 0x79, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, -0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x29, 0x20, 0x28, 0x63, 0x6f, 0x73, 0x74, -0x2e, 0x78, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x2e, 0x79, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, -0x2f, 0x2a, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, -0x6e, 0x20, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x65, 0x6c, 0x65, -0x63, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x53, 0x41, 0x54, -0x44, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, -0x65, 0x61, 0x63, 0x68, 0x20, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x0a, 0x2a, 0x20, 0x6d, 0x61, -0x63, 0x72, 0x6f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x20, 0x20, 0x57, 0x68, 0x65, 0x6e, 0x20, -0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x42, 0x20, 0x73, 0x6c, 0x69, 0x63, -0x65, 0x73, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, -0x73, 0x20, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, -0x63, 0x6f, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x0a, 0x2a, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, -0x62, 0x69, 0x64, 0x69, 0x72, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x2e, 0x20, 0x20, 0x2a, 0x2f, -0x0a, 0x2f, 0x2a, 0x20, 0x46, 0x6f, 0x75, 0x72, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, -0x20, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x20, 0x6d, -0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x20, 0x38, 0x78, 0x38, 0x20, 0x42, 0x49, 0x44, 0x49, 0x52, -0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x53, 0x41, 0x54, 0x44, 0x20, -0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x69, 0x64, 0x69, 0x72, 0x5f, 0x73, 0x61, 0x74, -0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, 0x5f, 0x63, 0x6f, 0x6f, 0x70, 0x34, 0x28, 0x20, -0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, -0x64, 0x5f, 0x74, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x2c, -0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x2c, 0x0a, 0x72, -0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, -0x5f, 0x74, 0x20, 0x66, 0x72, 0x65, 0x66, 0x30, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, -0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x2c, 0x0a, 0x72, 0x65, 0x61, -0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, -0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x0a, 0x69, -0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x77, -0x65, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x75, 0x6d, -0x32, 0x5f, 0x74, 0x20, 0x2a, 0x74, 0x6d, 0x70, 0x70, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, -0x64, 0x78, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x76, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6c, 0x65, 0x20, -0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x28, 0x20, 0x2a, 0x74, -0x6d, 0x70, 0x20, 0x29, 0x5b, 0x34, 0x5d, 0x20, 0x3d, 0x20, 0x28, 0x76, 0x6f, 0x6c, 0x61, 0x74, -0x69, 0x6c, 0x65, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, -0x28, 0x20, 0x2a, 0x20, 0x29, 0x5b, 0x34, 0x5d, 0x29, 0x74, 0x6d, 0x70, 0x70, 0x3b, 0x0a, 0x73, -0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x62, 0x30, 0x2c, 0x20, 0x62, 0x31, 0x2c, 0x20, 0x62, 0x32, -0x2c, 0x20, 0x62, 0x33, 0x3b, 0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x73, 0x75, 0x6d, -0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x72, 0x65, 0x66, 0x30, -0x41, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x71, 0x70, -0x6f, 0x73, 0x30, 0x2e, 0x78, 0x3e, 0x3e, 0x32, 0x2c, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x2e, -0x79, 0x3e, 0x3e, 0x32, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x30, -0x41, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x2e, 0x78, 0x26, 0x32, 0x29, -0x3e, 0x3e, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x2e, 0x79, 0x26, -0x32, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x42, 0x20, -0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x20, 0x2b, 0x20, -0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x2e, 0x78, -0x26, 0x31, 0x29, 0x3c, 0x3c, 0x31, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x30, -0x2e, 0x79, 0x26, 0x31, 0x29, 0x3c, 0x3c, 0x31, 0x29, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, -0x20, 0x66, 0x72, 0x65, 0x66, 0x30, 0x42, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, -0x74, 0x32, 0x29, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x42, 0x2e, 0x78, 0x3e, 0x3e, 0x32, 0x2c, -0x20, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x42, 0x2e, 0x79, 0x3e, 0x3e, 0x32, 0x29, 0x3b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x30, 0x42, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, -0x6f, 0x73, 0x30, 0x42, 0x2e, 0x78, 0x26, 0x32, 0x29, 0x3e, 0x3e, 0x31, 0x29, 0x20, 0x2b, 0x20, -0x28, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x42, 0x2e, 0x79, 0x26, 0x32, 0x29, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x32, 0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x41, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x28, -0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x2e, 0x78, 0x3e, 0x3e, 0x32, -0x2c, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x2e, 0x79, 0x3e, 0x3e, 0x32, 0x29, 0x3b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x31, 0x41, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, -0x6f, 0x73, 0x31, 0x2e, 0x78, 0x26, 0x32, 0x29, 0x3e, 0x3e, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, -0x71, 0x70, 0x6f, 0x73, 0x31, 0x2e, 0x79, 0x26, 0x32, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, -0x20, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x42, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, -0x71, 0x70, 0x6f, 0x73, 0x31, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x28, -0x28, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x2e, 0x78, 0x26, 0x31, 0x29, 0x3c, 0x3c, 0x31, 0x29, 0x2c, -0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x2e, 0x79, 0x26, 0x31, 0x29, 0x3c, 0x3c, 0x31, -0x29, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x42, 0x70, -0x6f, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x71, 0x70, 0x6f, 0x73, -0x31, 0x42, 0x2e, 0x78, 0x3e, 0x3e, 0x32, 0x2c, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x42, 0x2e, -0x79, 0x3e, 0x3e, 0x32, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x31, -0x42, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x42, 0x2e, 0x78, 0x26, 0x32, -0x29, 0x3e, 0x3e, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x42, 0x2e, -0x79, 0x26, 0x32, 0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, -0x73, 0x68, 0x69, 0x66, 0x74, 0x30, 0x41, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, 0x20, 0x68, 0x70, -0x65, 0x6c, 0x30, 0x41, 0x2c, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, -0x30, 0x42, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x30, 0x42, 0x3b, -0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, -0x31, 0x41, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x31, 0x41, 0x2c, -0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x31, 0x42, 0x20, 0x3d, 0x20, -0x38, 0x20, 0x2a, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x31, 0x42, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, -0x20, 0x76, 0x41, 0x2c, 0x20, 0x76, 0x42, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x65, 0x6e, -0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x30, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x31, 0x3b, 0x0a, 0x75, -0x69, 0x6e, 0x74, 0x20, 0x61, 0x30, 0x2c, 0x20, 0x61, 0x31, 0x3b, 0x0a, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x32, 0x20, 0x3d, 0x20, -0x36, 0x34, 0x20, 0x2d, 0x20, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3b, 0x0a, 0x23, 0x64, 0x65, -0x66, 0x69, 0x6e, 0x65, 0x20, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x42, 0x49, 0x44, 0x49, 0x52, 0x5f, -0x44, 0x49, 0x46, 0x46, 0x28, 0x20, 0x4f, 0x55, 0x54, 0x2c, 0x20, 0x58, 0x20, 0x29, 0x5c, 0x0a, -0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, -0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x2c, -0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, -0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x58, 0x2c, 0x20, 0x69, 0x64, -0x78, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x3b, 0x5c, 0x0a, 0x76, 0x41, 0x20, 0x3d, 0x20, 0x28, -0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, -0x65, 0x66, 0x30, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, -0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x30, 0x41, 0x70, 0x6f, 0x73, 0x20, 0x2b, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x58, 0x2c, 0x20, 0x69, 0x64, 0x78, 0x29, 0x20, -0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, -0x66, 0x74, 0x30, 0x41, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x5c, 0x0a, 0x76, -0x42, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, -0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x30, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, -0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x30, 0x42, -0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x58, 0x2c, 0x20, -0x69, 0x64, 0x78, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, -0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x30, 0x42, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, -0x46, 0x3b, 0x5c, 0x0a, 0x72, 0x65, 0x66, 0x30, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, -0x28, 0x20, 0x76, 0x41, 0x2c, 0x20, 0x76, 0x42, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x76, 0x41, 0x20, -0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, -0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, -0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x41, 0x70, 0x6f, -0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x58, 0x2c, 0x20, 0x69, 0x64, -0x78, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, -0x73, 0x68, 0x69, 0x66, 0x74, 0x31, 0x41, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, -0x5c, 0x0a, 0x76, 0x42, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x5f, 0x70, 0x6c, 0x61, 0x6e, -0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, -0x66, 0x31, 0x42, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, -0x58, 0x2c, 0x20, 0x69, 0x64, 0x78, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, -0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x31, 0x42, 0x29, 0x20, 0x26, 0x20, -0x30, 0x78, 0x46, 0x46, 0x3b, 0x5c, 0x0a, 0x72, 0x65, 0x66, 0x31, 0x20, 0x3d, 0x20, 0x72, 0x68, -0x61, 0x64, 0x64, 0x28, 0x20, 0x76, 0x41, 0x2c, 0x20, 0x76, 0x42, 0x20, 0x29, 0x3b, 0x5c, 0x0a, -0x4f, 0x55, 0x54, 0x20, 0x3d, 0x20, 0x65, 0x6e, 0x63, 0x20, 0x2d, 0x20, 0x28, 0x28, 0x72, 0x65, -0x66, 0x30, 0x20, 0x2a, 0x20, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x2b, 0x20, 0x72, 0x65, -0x66, 0x31, 0x20, 0x2a, 0x20, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x32, 0x20, 0x2b, 0x20, 0x28, -0x31, 0x20, 0x3c, 0x3c, 0x20, 0x35, 0x29, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x36, 0x29, 0x3b, 0x0a, -0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, -0x46, 0x5f, 0x45, 0x58, 0x28, 0x20, 0x4f, 0x55, 0x54, 0x2c, 0x20, 0x61, 0x2c, 0x20, 0x62, 0x20, -0x29, 0x5c, 0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x42, 0x49, 0x44, 0x49, 0x52, 0x5f, 0x44, 0x49, -0x46, 0x46, 0x28, 0x20, 0x61, 0x30, 0x2c, 0x20, 0x61, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x52, 0x45, -0x41, 0x44, 0x5f, 0x42, 0x49, 0x44, 0x49, 0x52, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x28, 0x20, 0x61, -0x31, 0x2c, 0x20, 0x62, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x4f, 0x55, 0x54, 0x20, 0x3d, 0x20, 0x61, -0x30, 0x20, 0x2b, 0x20, 0x28, 0x61, 0x31, 0x3c, 0x3c, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, -0x52, 0x5f, 0x53, 0x55, 0x4d, 0x29, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, -0x52, 0x4f, 0x57, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x53, 0x41, 0x54, 0x44, 0x28, 0x20, 0x61, 0x2c, -0x20, 0x62, 0x2c, 0x20, 0x63, 0x20, 0x29, 0x5c, 0x0a, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, -0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x3b, 0x5c, 0x0a, 0x66, 0x72, 0x65, 0x66, 0x30, 0x41, -0x70, 0x6f, 0x73, 0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x5c, 0x0a, 0x66, 0x72, 0x65, -0x66, 0x30, 0x42, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x5c, 0x0a, -0x66, 0x72, 0x65, 0x66, 0x31, 0x41, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x63, -0x3b, 0x5c, 0x0a, 0x66, 0x72, 0x65, 0x66, 0x31, 0x42, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x20, 0x2b, -0x3d, 0x20, 0x63, 0x3b, 0x5c, 0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, -0x45, 0x58, 0x28, 0x20, 0x62, 0x30, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x34, 0x20, 0x29, 0x3b, 0x5c, -0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, 0x28, 0x20, 0x62, -0x31, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x52, 0x45, 0x41, 0x44, -0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, 0x28, 0x20, 0x62, 0x32, 0x2c, 0x20, 0x32, 0x2c, -0x20, 0x36, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, -0x5f, 0x45, 0x58, 0x28, 0x20, 0x62, 0x33, 0x2c, 0x20, 0x33, 0x2c, 0x20, 0x37, 0x20, 0x29, 0x3b, -0x5c, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x28, 0x20, 0x74, 0x6d, 0x70, -0x5b, 0x69, 0x64, 0x78, 0x5d, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x64, -0x78, 0x5d, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x5b, -0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x5b, 0x33, 0x5d, 0x2c, -0x20, 0x62, 0x30, 0x2c, 0x20, 0x62, 0x31, 0x2c, 0x20, 0x62, 0x32, 0x2c, 0x20, 0x62, 0x33, 0x20, -0x29, 0x3b, 0x5c, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x28, 0x20, 0x62, -0x30, 0x2c, 0x20, 0x62, 0x31, 0x2c, 0x20, 0x62, 0x32, 0x2c, 0x20, 0x62, 0x33, 0x2c, 0x20, 0x74, -0x6d, 0x70, 0x5b, 0x30, 0x5d, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, -0x31, 0x5d, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x32, 0x5d, 0x5b, -0x69, 0x64, 0x78, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x33, 0x5d, 0x5b, 0x69, 0x64, 0x78, -0x5d, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x73, 0x75, 0x6d, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, -0x32, 0x28, 0x20, 0x62, 0x30, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, 0x20, -0x62, 0x31, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, 0x20, 0x62, 0x32, 0x20, -0x29, 0x20, 0x2b, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, 0x20, 0x62, 0x33, 0x20, 0x29, 0x3b, 0x0a, -0x52, 0x4f, 0x57, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x53, 0x41, 0x54, 0x44, 0x28, 0x20, 0x30, 0x2c, -0x20, 0x30, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x52, 0x4f, 0x57, 0x5f, 0x38, 0x78, 0x34, -0x5f, 0x53, 0x41, 0x54, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x34, 0x2c, 0x20, 0x34, 0x20, 0x29, -0x3b, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x42, 0x49, -0x44, 0x49, 0x52, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, -0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, 0x0a, 0x23, 0x75, 0x6e, -0x64, 0x65, 0x66, 0x20, 0x52, 0x4f, 0x57, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x53, 0x41, 0x54, 0x44, -0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x28, 0x73, 0x75, 0x6d, 0x5f, 0x74, -0x29, 0x73, 0x75, 0x6d, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x75, 0x6d, 0x3e, 0x3e, 0x42, 0x49, -0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x4d, 0x29, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x31, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x20, 0x73, -0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x20, 0x70, 0x69, 0x63, 0x6b, 0x20, -0x74, 0x68, 0x65, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x70, -0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x66, 0x6f, -0x72, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x38, 0x78, 0x38, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, -0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x0a, 0x2a, 0x20, 0x49, 0x6e, 0x74, 0x72, 0x61, 0x2c, 0x20, -0x6c, 0x69, 0x73, 0x74, 0x30, 0x20, 0x6f, 0x72, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x31, 0x2e, 0x20, -0x20, 0x57, 0x68, 0x65, 0x6e, 0x20, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, -0x61, 0x20, 0x42, 0x20, 0x73, 0x6c, 0x69, 0x63, 0x65, 0x2c, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, -0x74, 0x65, 0x73, 0x74, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, 0x62, 0x69, 0x64, 0x69, 0x72, -0x0a, 0x2a, 0x20, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, -0x2e, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, -0x73, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x30, 0x7c, 0x31, 0x5d, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x66, -0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, -0x73, 0x74, 0x73, 0x5b, 0x30, 0x7c, 0x31, 0x5d, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6c, 0x61, 0x72, -0x67, 0x65, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x0a, -0x2a, 0x20, 0x68, 0x6f, 0x6c, 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x66, 0x72, 0x61, 0x6d, -0x65, 0x73, 0x20, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x6f, 0x74, 0x69, -0x6f, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x2e, 0x20, 0x20, 0x57, 0x65, 0x20, -0x6d, 0x75, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x20, 0x69, 0x6e, 0x74, 0x6f, -0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x0a, 0x2a, 0x20, 0x6c, -0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, -0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x27, 0x73, 0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, -0x3a, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x20, 0x20, 0x43, 0x50, 0x55, 0x20, 0x65, 0x71, 0x75, 0x69, -0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x3a, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2d, 0x3e, 0x6c, 0x6f, -0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x30, 0x5d, 0x5b, 0x62, 0x20, 0x2d, 0x20, -0x70, 0x30, 0x20, 0x2d, 0x20, 0x31, 0x5d, 0x0a, 0x2a, 0x20, 0x20, 0x20, 0x47, 0x50, 0x55, 0x20, -0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x3a, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x30, 0x5b, 0x28, 0x62, 0x20, -0x2d, 0x20, 0x70, 0x30, 0x20, 0x2d, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x63, -0x6f, 0x75, 0x6e, 0x74, 0x5d, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, -0x20, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x20, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, -0x6e, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x50, 0x20, 0x73, 0x6c, 0x69, 0x63, 0x65, 0x20, 0x65, -0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x3a, 0x20, 0x20, 0x5b, 0x6d, 0x62, 0x5f, 0x77, 0x69, -0x64, 0x74, 0x68, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5d, 0x0a, -0x2a, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x20, -0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x42, -0x20, 0x73, 0x6c, 0x69, 0x63, 0x65, 0x20, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x3a, -0x20, 0x20, 0x5b, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2a, 0x20, 0x34, 0x2c, -0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5d, 0x0a, 0x2a, 0x2f, 0x0a, 0x6b, -0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x5f, -0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, -0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x20, -0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x2c, 0x0a, 0x72, 0x65, -0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, -0x74, 0x20, 0x20, 0x20, 0x66, 0x72, 0x65, 0x66, 0x30, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, -0x2c, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, -0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x5f, 0x70, 0x6c, -0x61, 0x6e, 0x65, 0x73, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, -0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, -0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x30, 0x2c, 0x0a, 0x63, 0x6f, -0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, -0x32, 0x20, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, -0x6d, 0x76, 0x73, 0x31, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, -0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x2a, 0x66, 0x72, 0x65, 0x66, -0x31, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x30, 0x2c, 0x0a, 0x63, -0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x31, -0x36, 0x5f, 0x74, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, -0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x30, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, -0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, -0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x31, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x2a, -0x66, 0x65, 0x6e, 0x63, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x2c, -0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, -0x73, 0x74, 0x73, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, 0x72, 0x61, 0x6d, 0x65, -0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x2c, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x69, 0x6e, -0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x63, 0x6f, -0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, -0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, -0x73, 0x61, 0x74, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x62, 0x69, 0x70, 0x72, 0x65, 0x64, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x2c, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x61, 0x6c, -0x65, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x62, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x30, 0x2c, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x70, 0x31, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x61, 0x6d, -0x62, 0x64, 0x61, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x78, -0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, -0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x5f, 0x62, 0x69, 0x64, -0x69, 0x72, 0x20, 0x3d, 0x20, 0x62, 0x20, 0x3c, 0x20, 0x70, 0x31, 0x3b, 0x0a, 0x69, 0x66, 0x28, -0x20, 0x62, 0x5f, 0x62, 0x69, 0x64, 0x69, 0x72, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x2f, 0x2a, 0x20, -0x77, 0x68, 0x65, 0x6e, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, -0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x72, 0x75, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x42, -0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x2c, 0x20, 0x69, 0x74, 0x20, 0x6d, 0x75, 0x73, 0x74, -0x20, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x42, 0x49, 0x44, 0x49, 0x52, 0x20, 0x53, -0x41, 0x54, 0x44, 0x0a, 0x2a, 0x20, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, -0x74, 0x73, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x69, 0x74, 0x20, 0x69, 0x73, 0x20, 0x6c, 0x61, 0x75, -0x6e, 0x63, 0x68, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x66, 0x6f, 0x75, 0x72, 0x20, -0x74, 0x69, 0x6d, 0x65, 0x73, 0x20, 0x61, 0x73, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x74, 0x68, -0x72, 0x65, 0x61, 0x64, 0x73, 0x20, 0x69, 0x6e, 0x0a, 0x2a, 0x20, 0x6f, 0x72, 0x64, 0x65, 0x72, -0x20, 0x74, 0x6f, 0x20, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, -0x6f, 0x72, 0x6b, 0x20, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, -0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x47, 0x50, 0x55, 0x2e, 0x20, 0x20, 0x41, 0x6e, 0x64, -0x20, 0x69, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x61, 0x64, 0x64, 0x0a, 0x2a, 0x20, 0x70, 0x61, -0x64, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x20, 0x69, 0x6e, -0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, -0x2e, 0x20, 0x2a, 0x2f, 0x0a, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3e, 0x3e, 0x3d, 0x20, 0x32, 0x3b, -0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3e, 0x3d, 0x20, 0x6d, 0x62, 0x5f, -0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x29, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, -0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, -0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, -0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, -0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x63, 0x6f, -0x75, 0x6e, 0x74, 0x20, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2a, -0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x6d, 0x62, 0x5f, 0x78, 0x79, 0x20, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x2b, 0x20, 0x6d, -0x62, 0x5f, 0x79, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3b, 0x0a, -0x2f, 0x2a, 0x20, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x20, 0x69, 0x6e, -0x74, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5b, 0x34, 0x5d, -0x20, 0x66, 0x6f, 0x72, 0x20, 0x6e, 0x65, 0x78, 0x74, 0x20, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, -0x20, 0x28, 0x73, 0x75, 0x6d, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x73, 0x74, -0x29, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3c, 0x20, -0x34, 0x20, 0x26, 0x26, 0x20, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x20, 0x29, -0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5b, 0x6d, 0x62, 0x5f, -0x78, 0x5d, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x63, 0x6f, 0x73, -0x74, 0x20, 0x3d, 0x20, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x4d, 0x41, 0x58, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x30, 0x3b, -0x0a, 0x69, 0x66, 0x28, 0x20, 0x21, 0x62, 0x5f, 0x62, 0x69, 0x64, 0x69, 0x72, 0x20, 0x29, 0x0a, -0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x65, -0x6e, 0x63, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x5b, 0x6d, 0x62, -0x5f, 0x78, 0x79, 0x5d, 0x3b, 0x0a, 0x43, 0x4f, 0x50, 0x59, 0x32, 0x5f, 0x49, 0x46, 0x5f, 0x4c, -0x54, 0x28, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x69, 0x63, 0x6f, 0x73, 0x74, 0x2c, -0x20, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x3b, -0x0a, 0x7d, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x62, 0x20, 0x21, 0x3d, 0x20, 0x70, 0x30, 0x20, 0x29, -0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x30, 0x20, -0x3d, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, -0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x30, 0x5b, 0x28, 0x62, 0x20, 0x2d, 0x20, 0x70, 0x30, 0x20, -0x2d, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, -0x2b, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x3b, 0x0a, 0x43, 0x4f, 0x50, 0x59, 0x32, 0x5f, -0x49, 0x46, 0x5f, 0x4c, 0x54, 0x28, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x6d, 0x76, -0x5f, 0x63, 0x6f, 0x73, 0x74, 0x30, 0x2c, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, -0x64, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x62, 0x20, -0x21, 0x3d, 0x20, 0x70, 0x31, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x76, -0x5f, 0x63, 0x6f, 0x73, 0x74, 0x31, 0x20, 0x3d, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, -0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x31, 0x5b, 0x28, -0x70, 0x31, 0x20, 0x2d, 0x20, 0x62, 0x20, 0x2d, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, -0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x2b, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x3b, -0x0a, 0x43, 0x4f, 0x50, 0x59, 0x32, 0x5f, 0x49, 0x46, 0x5f, 0x4c, 0x54, 0x28, 0x20, 0x62, 0x63, -0x6f, 0x73, 0x74, 0x2c, 0x20, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x31, 0x2c, 0x20, 0x6c, -0x69, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x3b, 0x0a, 0x7d, -0x0a, 0x69, 0x66, 0x28, 0x20, 0x62, 0x5f, 0x62, 0x69, 0x64, 0x69, 0x72, 0x20, 0x29, 0x0a, 0x7b, -0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x20, 0x3d, 0x20, 0x28, 0x69, -0x6e, 0x74, 0x32, 0x29, 0x28, 0x6d, 0x62, 0x5f, 0x78, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x79, 0x29, -0x20, 0x3c, 0x3c, 0x20, 0x33, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x20, -0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, -0x20, 0x30, 0x20, 0x29, 0x20, 0x26, 0x20, 0x33, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, -0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, -0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x20, 0x2a, 0x20, -0x28, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, -0x20, 0x30, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x67, 0x65, -0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x32, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x20, 0x2b, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, -0x20, 0x2a, 0x20, 0x34, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, -0x20, 0x2b, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, -0x2a, 0x20, 0x31, 0x36, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x54, 0x52, -0x59, 0x5f, 0x42, 0x49, 0x44, 0x49, 0x52, 0x28, 0x20, 0x6d, 0x76, 0x30, 0x2c, 0x20, 0x6d, 0x76, -0x31, 0x2c, 0x20, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x20, 0x29, 0x5c, 0x0a, 0x7b, 0x5c, -0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x28, 0x69, -0x6e, 0x74, 0x32, 0x29, 0x28, 0x28, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x2e, 0x78, 0x3c, 0x3c, 0x32, -0x29, 0x20, 0x2b, 0x20, 0x6d, 0x76, 0x30, 0x2e, 0x78, 0x2c, 0x20, 0x28, 0x63, 0x6f, 0x6f, 0x72, -0x64, 0x2e, 0x79, 0x3c, 0x3c, 0x32, 0x29, 0x20, 0x2b, 0x20, 0x6d, 0x76, 0x30, 0x2e, 0x79, 0x29, -0x3b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x20, 0x3d, 0x20, -0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x28, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x2e, 0x78, 0x3c, -0x3c, 0x32, 0x29, 0x20, 0x2b, 0x20, 0x6d, 0x76, 0x31, 0x2e, 0x78, 0x2c, 0x20, 0x28, 0x63, 0x6f, -0x6f, 0x72, 0x64, 0x2e, 0x79, 0x3c, 0x3c, 0x32, 0x29, 0x20, 0x2b, 0x20, 0x6d, 0x76, 0x31, 0x2e, -0x79, 0x29, 0x3b, 0x5c, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, -0x6d, 0x62, 0x5f, 0x69, 0x5d, 0x20, 0x3d, 0x20, 0x62, 0x69, 0x64, 0x69, 0x72, 0x5f, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, 0x5f, 0x63, 0x6f, 0x6f, 0x70, 0x34, 0x28, -0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x63, 0x6f, -0x6f, 0x72, 0x64, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x30, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, -0x73, 0x2c, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x30, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x5f, -0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x31, 0x2c, 0x20, 0x62, -0x69, 0x70, 0x72, 0x65, 0x64, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x20, 0x29, -0x3b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x33, 0x5d, 0x3b, 0x5c, 0x0a, 0x43, 0x4f, -0x50, 0x59, 0x32, 0x5f, 0x49, 0x46, 0x5f, 0x4c, 0x54, 0x28, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, -0x2c, 0x20, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x20, 0x2a, 0x20, 0x6c, 0x61, 0x6d, 0x62, -0x64, 0x61, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x5f, -0x75, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, -0x20, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, -0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2a, 0x2f, 0x0a, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x64, -0x6d, 0x76, 0x30, 0x2c, 0x20, 0x64, 0x6d, 0x76, 0x31, 0x3b, 0x0a, 0x73, 0x68, 0x6f, 0x72, 0x74, -0x32, 0x20, 0x6d, 0x76, 0x72, 0x20, 0x3d, 0x20, 0x66, 0x72, 0x65, 0x66, 0x31, 0x5f, 0x6c, 0x6f, -0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x30, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, -0x3b, 0x0a, 0x64, 0x6d, 0x76, 0x30, 0x20, 0x3d, 0x20, 0x28, 0x6d, 0x76, 0x72, 0x20, 0x2a, 0x20, -0x28, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x29, 0x20, 0x64, 0x69, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x61, -0x6c, 0x65, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x68, 0x6f, -0x72, 0x74, 0x29, 0x20, 0x31, 0x32, 0x38, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x28, 0x73, 0x68, 0x6f, -0x72, 0x74, 0x29, 0x20, 0x38, 0x3b, 0x0a, 0x64, 0x6d, 0x76, 0x31, 0x20, 0x3d, 0x20, 0x64, 0x6d, -0x76, 0x30, 0x20, 0x2d, 0x20, 0x6d, 0x76, 0x72, 0x3b, 0x0a, 0x54, 0x52, 0x59, 0x5f, 0x42, 0x49, -0x44, 0x49, 0x52, 0x28, 0x20, 0x64, 0x6d, 0x76, 0x30, 0x2c, 0x20, 0x64, 0x6d, 0x76, 0x31, 0x2c, -0x20, 0x30, 0x20, 0x29, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x69, 0x6e, 0x74, -0x28, 0x20, 0x64, 0x6d, 0x76, 0x30, 0x20, 0x29, 0x20, 0x7c, 0x7c, 0x20, 0x61, 0x73, 0x5f, 0x75, -0x69, 0x6e, 0x74, 0x28, 0x20, 0x64, 0x6d, 0x76, 0x31, 0x20, 0x29, 0x20, 0x29, 0x0a, 0x7b, 0x0a, -0x2f, 0x2a, 0x20, 0x42, 0x2d, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x20, 0x70, 0x72, 0x65, 0x64, -0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2a, 0x2f, 0x0a, 0x64, 0x6d, 0x76, 0x30, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x20, 0x64, 0x6d, 0x76, 0x31, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x54, 0x52, -0x59, 0x5f, 0x42, 0x49, 0x44, 0x49, 0x52, 0x28, 0x20, 0x64, 0x6d, 0x76, 0x30, 0x2c, 0x20, 0x64, -0x6d, 0x76, 0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x4c, -0x30, 0x2b, 0x4c, 0x31, 0x20, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, -0x2a, 0x2f, 0x0a, 0x64, 0x6d, 0x76, 0x30, 0x20, 0x3d, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, -0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x30, 0x5b, 0x28, 0x62, 0x20, 0x2d, 0x20, -0x70, 0x30, 0x20, 0x2d, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x63, 0x6f, 0x75, -0x6e, 0x74, 0x20, 0x2b, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x3b, 0x0a, 0x64, 0x6d, 0x76, -0x31, 0x20, 0x3d, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, -0x6d, 0x76, 0x73, 0x31, 0x5b, 0x28, 0x70, 0x31, 0x20, 0x2d, 0x20, 0x62, 0x20, 0x2d, 0x20, 0x31, -0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x2b, 0x20, 0x6d, -0x62, 0x5f, 0x78, 0x79, 0x5d, 0x3b, 0x0a, 0x54, 0x52, 0x59, 0x5f, 0x42, 0x49, 0x44, 0x49, 0x52, -0x28, 0x20, 0x64, 0x6d, 0x76, 0x30, 0x2c, 0x20, 0x64, 0x6d, 0x76, 0x31, 0x2c, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x54, 0x52, 0x59, 0x5f, 0x42, 0x49, -0x44, 0x49, 0x52, 0x0a, 0x7d, 0x0a, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x73, -0x74, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x3d, 0x20, 0x6d, 0x69, 0x6e, 0x28, -0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x4c, 0x4f, 0x57, 0x52, 0x45, 0x53, 0x5f, 0x43, -0x4f, 0x53, 0x54, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x6c, 0x69, -0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x20, 0x3c, 0x3c, 0x20, 0x4c, 0x4f, 0x57, 0x52, 0x45, -0x53, 0x5f, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x53, 0x48, 0x49, 0x46, 0x54, 0x29, 0x3b, 0x0a, 0x7d, -0x0a, 0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x20, 0x73, -0x75, 0x6d, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x0a, 0x2a, -0x0a, 0x2a, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, -0x20, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x5b, 0x32, 0x35, -0x36, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5d, 0x0a, 0x2a, 0x2f, -0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x73, 0x75, 0x6d, -0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x28, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, -0x5f, 0x74, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, -0x63, 0x6f, 0x73, 0x74, 0x73, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, -0x62, 0x61, 0x6c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x2a, 0x69, 0x6e, -0x76, 0x5f, 0x71, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x2c, -0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x72, 0x6f, 0x77, 0x5f, -0x73, 0x61, 0x74, 0x64, 0x73, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, -0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, 0x72, 0x61, -0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x62, 0x69, 0x61, 0x73, 0x2c, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x62, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x30, 0x2c, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x31, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, -0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, -0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, -0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x74, 0x64, 0x73, 0x20, 0x3d, 0x20, 0x30, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, -0x5f, 0x61, 0x71, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x74, -0x72, 0x61, 0x5f, 0x6d, 0x62, 0x73, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, -0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, -0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x20, 0x78, 0x20, 0x3c, -0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3b, 0x20, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, -0x20, 0x30, 0x20, 0x29, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x78, -0x79, 0x20, 0x3d, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x79, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x77, -0x69, 0x64, 0x74, 0x68, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, -0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x73, -0x74, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x26, 0x20, 0x4c, 0x4f, 0x57, 0x52, -0x45, 0x53, 0x5f, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, -0x77, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, -0x5d, 0x20, 0x3e, 0x3e, 0x20, 0x4c, 0x4f, 0x57, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x53, 0x54, -0x5f, 0x53, 0x48, 0x49, 0x46, 0x54, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x5f, 0x66, 0x72, -0x61, 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x6d, 0x62, 0x20, 0x3d, 0x20, 0x28, -0x78, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x26, 0x26, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, -0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2d, 0x20, 0x31, 0x20, 0x26, 0x26, 0x20, 0x79, 0x20, 0x3e, -0x20, 0x30, 0x20, 0x26, 0x26, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, -0x67, 0x68, 0x74, 0x20, 0x2d, 0x20, 0x31, 0x29, 0x20, 0x7c, 0x7c, 0x20, 0x6d, 0x62, 0x5f, 0x77, -0x69, 0x64, 0x74, 0x68, 0x20, 0x3c, 0x3d, 0x20, 0x32, 0x20, 0x7c, 0x7c, 0x20, 0x6d, 0x62, 0x5f, -0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3c, 0x3d, 0x20, 0x32, 0x3b, 0x0a, 0x69, 0x66, 0x28, -0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x20, 0x26, 0x26, 0x20, 0x62, 0x5f, -0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x6d, 0x62, 0x20, 0x29, -0x0a, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x62, 0x73, 0x2b, 0x2b, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x3d, 0x20, 0x28, 0x63, 0x6f, 0x73, -0x74, 0x20, 0x2a, 0x20, 0x69, 0x6e, 0x76, 0x5f, 0x71, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x66, -0x61, 0x63, 0x74, 0x6f, 0x72, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x2b, 0x20, 0x31, -0x32, 0x38, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x38, 0x3b, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, -0x74, 0x64, 0x73, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x3b, 0x0a, -0x69, 0x66, 0x28, 0x20, 0x62, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, -0x65, 0x5f, 0x6d, 0x62, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, -0x74, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, -0x65, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x61, -0x71, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, -0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x5b, 0x32, 0x35, 0x36, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, -0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, -0x74, 0x64, 0x73, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, -0x5f, 0x73, 0x75, 0x6d, 0x28, 0x20, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x74, 0x64, 0x73, 0x2c, -0x20, 0x78, 0x2c, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x29, 0x3b, 0x0a, 0x63, 0x6f, -0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x72, 0x61, -0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x75, 0x6d, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, -0x73, 0x74, 0x2c, 0x20, 0x78, 0x2c, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x29, 0x3b, -0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x3d, 0x20, 0x70, -0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x75, 0x6d, 0x28, 0x20, 0x63, 0x6f, 0x73, -0x74, 0x5f, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x2c, 0x20, 0x78, 0x2c, 0x20, 0x62, 0x75, 0x66, -0x66, 0x65, 0x72, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x62, 0x73, -0x20, 0x20, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x75, -0x6d, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x62, 0x73, 0x2c, 0x20, 0x78, 0x2c, -0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x62, -0x20, 0x21, 0x3d, 0x20, 0x70, 0x31, 0x20, 0x29, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, -0x74, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x29, 0x28, 0x28, 0x66, 0x6c, 0x6f, 0x61, 0x74, -0x29, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, 0x20, 0x2a, 0x20, 0x31, 0x30, 0x30, 0x2e, -0x30, 0x66, 0x20, 0x2f, 0x20, 0x28, 0x31, 0x32, 0x30, 0x2e, 0x30, 0x66, 0x20, 0x2b, 0x20, 0x28, -0x66, 0x6c, 0x6f, 0x61, 0x74, 0x29, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x62, 0x69, 0x61, -0x73, 0x29, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, -0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x3d, 0x20, 0x30, -0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, -0x74, 0x64, 0x73, 0x5b, 0x79, 0x5d, 0x20, 0x3d, 0x20, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x74, -0x64, 0x73, 0x3b, 0x0a, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x28, 0x20, -0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x20, 0x2b, 0x20, 0x43, 0x4f, -0x53, 0x54, 0x5f, 0x45, 0x53, 0x54, 0x2c, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, -0x20, 0x29, 0x3b, 0x0a, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x28, 0x20, -0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x20, 0x2b, 0x20, 0x43, 0x4f, -0x53, 0x54, 0x5f, 0x45, 0x53, 0x54, 0x5f, 0x41, 0x51, 0x2c, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, -0x65, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x29, 0x3b, 0x0a, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, -0x5f, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, -0x73, 0x20, 0x2b, 0x20, 0x49, 0x4e, 0x54, 0x52, 0x41, 0x5f, 0x4d, 0x42, 0x53, 0x2c, 0x20, 0x69, -0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x62, 0x73, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, -0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x20, 0x6c, -0x6f, 0x77, 0x72, 0x65, 0x73, 0x20, 0x6c, 0x75, 0x6d, 0x61, 0x3a, 0x20, 0x66, 0x75, 0x6c, 0x6c, -0x2d, 0x72, 0x65, 0x73, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x64, -0x6f, 0x77, 0x6e, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2c, -0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x20, 0x68, -0x70, 0x65, 0x6c, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x2d, 0x2d, -0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x69, 0x6d, 0x67, 0x20, 0x69, 0x73, -0x20, 0x61, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, -0x20, 0x28, 0x61, 0x72, 0x65, 0x61, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, -0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x20, 0x74, 0x68, 0x72, 0x6f, -0x75, 0x67, 0x68, 0x20, 0x61, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x0a, 0x2a, 0x20, -0x63, 0x61, 0x63, 0x68, 0x65, 0x29, 0x2e, 0x20, 0x41, 0x20, 0x72, 0x65, 0x61, 0x64, 0x20, 0x6f, -0x66, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x6c, 0x6f, 0x63, 0x61, -0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x79, 0x29, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, -0x6e, 0x73, 0x20, 0x66, 0x6f, 0x75, 0x72, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x76, 0x61, -0x6c, 0x75, 0x65, 0x73, 0x3a, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x76, 0x61, 0x6c, 0x2e, 0x73, 0x30, -0x20, 0x3d, 0x20, 0x50, 0x28, 0x78, 0x2c, 0x79, 0x29, 0x0a, 0x2a, 0x20, 0x76, 0x61, 0x6c, 0x2e, -0x73, 0x31, 0x20, 0x3d, 0x20, 0x50, 0x28, 0x78, 0x2b, 0x31, 0x2c, 0x79, 0x29, 0x0a, 0x2a, 0x20, -0x76, 0x61, 0x6c, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x50, 0x28, 0x78, 0x2b, 0x32, 0x2c, 0x79, -0x29, 0x0a, 0x2a, 0x20, 0x76, 0x61, 0x6c, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x50, 0x28, 0x78, -0x2b, 0x33, 0x2c, 0x79, 0x29, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, -0x73, 0x20, 0x61, 0x20, 0x34, 0x78, 0x20, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, -0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, -0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x2c, 0x20, 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, -0x2d, 0x6f, 0x66, 0x66, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x6d, 0x65, 0x6d, -0x6f, 0x72, 0x79, 0x0a, 0x2a, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, -0x65, 0x61, 0x64, 0x20, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x2e, 0x0a, 0x2a, 0x0a, 0x2a, -0x20, 0x2d, 0x2d, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x5f, 0x70, 0x6c, 0x61, -0x6e, 0x65, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, -0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, -0x61, 0x69, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x72, 0x20, 0x48, 0x50, -0x45, 0x4c, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x66, -0x6f, 0x72, 0x0a, 0x2a, 0x20, 0x73, 0x75, 0x62, 0x70, 0x65, 0x6c, 0x20, 0x72, 0x65, 0x66, 0x69, -0x6e, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x41, 0x20, 0x72, 0x65, 0x61, 0x64, 0x20, 0x6f, -0x66, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x6c, 0x6f, 0x63, 0x61, -0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x78, 0x2c, 0x79, 0x29, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, -0x6e, 0x73, 0x20, 0x61, 0x20, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x77, 0x69, 0x74, 0x68, -0x0a, 0x2a, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x72, 0x20, 0x70, 0x6c, 0x61, 0x6e, -0x61, 0x72, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x43, 0x20, 0x7c, 0x20, 0x56, 0x20, -0x7c, 0x20, 0x48, 0x20, 0x7c, 0x20, 0x46, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x6c, 0x61, 0x75, 0x6e, -0x63, 0x68, 0x20, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x20, -0x5b, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x2d, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x20, 0x6c, -0x6f, 0x77, 0x72, 0x65, 0x73, 0x2d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5d, 0x0a, 0x2a, 0x2f, -0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x64, 0x6f, 0x77, -0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x68, 0x70, 0x65, 0x6c, 0x28, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, -0x2a, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, -0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x5f, 0x69, 0x6d, 0x67, 0x2c, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, -0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x5f, -0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x67, -0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, -0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x75, -0x69, 0x6e, 0x74, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x3b, 0x0a, 0x66, 0x65, 0x6e, -0x63, 0x20, 0x2b, 0x3d, 0x20, 0x79, 0x20, 0x2a, 0x20, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, -0x2a, 0x20, 0x32, 0x3b, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, -0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x31, 0x20, 0x3d, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x20, 0x2b, 0x20, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x63, -0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x79, 0x20, 0x3d, 0x3d, 0x20, -0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, -0x20, 0x31, 0x20, 0x29, 0x2d, 0x31, 0x29, 0x20, 0x3f, 0x20, 0x73, 0x72, 0x63, 0x31, 0x20, 0x3a, -0x20, 0x73, 0x72, 0x63, 0x31, 0x20, 0x2b, 0x20, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x32, 0x20, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, -0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x72, -0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x3b, 0x0a, 0x72, 0x69, 0x67, 0x68, -0x74, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5b, -0x78, 0x2a, 0x32, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x78, 0x2a, 0x32, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, -0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5b, 0x78, 0x2a, 0x32, 0x2b, 0x31, 0x5d, 0x2c, 0x20, 0x73, -0x72, 0x63, 0x31, 0x5b, 0x78, 0x2a, 0x32, 0x2b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, -0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, -0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x29, 0x3b, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x46, 0x0a, 0x72, -0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x65, -0x6e, 0x63, 0x5b, 0x32, 0x2a, 0x78, 0x2b, 0x31, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, -0x32, 0x2a, 0x78, 0x2b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x20, -0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5b, 0x32, 0x2a, -0x78, 0x2b, 0x32, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x32, 0x2a, 0x78, 0x2b, 0x32, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x31, 0x20, 0x3d, -0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x20, 0x29, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x2f, 0x2f, 0x20, 0x48, 0x0a, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, 0x72, 0x68, -0x61, 0x64, 0x64, 0x28, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x32, 0x2a, 0x78, 0x5d, 0x2c, 0x20, -0x73, 0x72, 0x63, 0x32, 0x5b, 0x32, 0x2a, 0x78, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x6c, 0x65, 0x66, -0x74, 0x20, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x73, 0x72, 0x63, 0x31, -0x5b, 0x32, 0x2a, 0x78, 0x2b, 0x31, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x32, 0x5b, 0x32, 0x2a, -0x78, 0x2b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, -0x32, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x29, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x56, 0x0a, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, -0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x32, 0x2a, 0x78, -0x2b, 0x31, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x32, 0x5b, 0x32, 0x2a, 0x78, 0x2b, 0x31, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, -0x64, 0x28, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x32, 0x2a, 0x78, 0x2b, 0x32, 0x5d, 0x2c, 0x20, -0x73, 0x72, 0x63, 0x32, 0x5b, 0x32, 0x2a, 0x78, 0x2b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, -0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, -0x28, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x29, 0x3b, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x43, 0x0a, -0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x20, 0x28, 0x75, 0x69, 0x6e, -0x74, 0x34, 0x29, 0x20, 0x28, 0x28, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x33, 0x20, -0x26, 0x20, 0x30, 0x78, 0x66, 0x66, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x34, 0x29, 0x20, 0x7c, -0x20, 0x28, 0x28, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x32, 0x20, 0x26, 0x20, 0x30, -0x78, 0x66, 0x66, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x31, 0x36, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x28, -0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x31, 0x20, 0x26, 0x20, 0x30, 0x78, 0x66, 0x66, -0x29, 0x20, 0x3c, 0x3c, 0x20, 0x38, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x76, 0x61, 0x6c, 0x75, 0x65, -0x73, 0x2e, 0x73, 0x30, 0x20, 0x26, 0x20, 0x30, 0x78, 0x66, 0x66, 0x29, 0x3b, 0x0a, 0x77, 0x72, -0x69, 0x74, 0x65, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x68, 0x70, 0x65, -0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x70, 0x6f, 0x73, 0x2c, 0x20, 0x76, -0x61, 0x6c, 0x20, 0x29, 0x3b, 0x0a, 0x78, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, -0x28, 0x20, 0x78, 0x2c, 0x20, 0x78, 0x2b, 0x31, 0x2c, 0x20, 0x78, 0x2b, 0x31, 0x20, 0x3c, 0x20, -0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, -0x20, 0x30, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, -0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5b, 0x78, 0x2a, 0x32, 0x5d, -0x2c, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x78, 0x2a, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x6c, -0x65, 0x66, 0x74, 0x20, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x65, -0x6e, 0x63, 0x5b, 0x78, 0x2a, 0x32, 0x2b, 0x31, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, -0x78, 0x2a, 0x32, 0x2b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, -0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x69, 0x67, -0x68, 0x74, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x29, 0x3b, 0x0a, 0x78, 0x20, 0x3d, 0x20, -0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, 0x78, 0x2c, 0x20, 0x78, 0x2b, 0x31, 0x2c, 0x20, -0x78, 0x2b, 0x31, 0x20, 0x3c, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, -0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x69, -0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x65, 0x6e, -0x63, 0x5b, 0x78, 0x2a, 0x32, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x78, 0x2a, 0x32, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, -0x64, 0x64, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5b, 0x78, 0x2a, 0x32, 0x2b, 0x31, 0x5d, 0x2c, -0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x78, 0x2a, 0x32, 0x2b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, -0x64, 0x28, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x29, -0x3b, 0x0a, 0x78, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, 0x78, 0x2c, -0x20, 0x78, 0x2b, 0x31, 0x2c, 0x20, 0x78, 0x2b, 0x31, 0x20, 0x3c, 0x20, 0x67, 0x65, 0x74, 0x5f, -0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, 0x30, 0x20, 0x29, -0x20, 0x29, 0x3b, 0x0a, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, -0x64, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5b, 0x78, 0x2a, 0x32, 0x5d, 0x2c, 0x20, 0x73, 0x72, -0x63, 0x31, 0x5b, 0x78, 0x2a, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x20, -0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5b, 0x78, -0x2a, 0x32, 0x2b, 0x31, 0x5d, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x31, 0x5b, 0x78, 0x2a, 0x32, 0x2b, -0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x33, 0x20, -0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x20, 0x29, 0x3b, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x6d, -0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x69, 0x6d, 0x67, 0x2c, -0x20, 0x70, 0x6f, 0x73, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x29, 0x3b, 0x0a, -0x7d, 0x0a, 0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, -0x20, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x20, 0x68, 0x69, 0x65, 0x72, 0x61, 0x72, 0x63, 0x68, -0x69, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x65, 0x61, 0x72, -0x63, 0x68, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x20, 0x66, -0x72, 0x6f, 0x6d, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x74, 0x6f, -0x0a, 0x2a, 0x20, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x64, 0x65, 0x63, 0x69, 0x6d, -0x61, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, -0x73, 0x20, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6c, 0x6c, -0x65, 0x64, 0x20, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x20, 0x74, -0x6f, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x0a, 0x2a, -0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, -0x65, 0x73, 0x2e, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x20, 0x64, -0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x20, 0x5b, 0x6c, 0x6f, 0x77, -0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x20, 0x6c, 0x6f, -0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5d, 0x0a, -0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x64, -0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x31, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, -0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x68, -0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x77, 0x72, 0x69, 0x74, 0x65, -0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, -0x6c, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, -0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, -0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, -0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x70, 0x6f, 0x73, 0x20, 0x3d, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x3b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x67, 0x73, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, -0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x75, 0x69, -0x6e, 0x74, 0x34, 0x20, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2c, 0x20, 0x76, 0x61, -0x6c, 0x75, 0x65, 0x73, 0x3b, 0x0a, 0x74, 0x6f, 0x70, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, -0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72, -0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, -0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2a, 0x32, 0x2c, 0x20, 0x32, 0x2a, 0x79, 0x29, 0x20, -0x29, 0x3b, 0x0a, 0x62, 0x6f, 0x74, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, -0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, -0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, -0x32, 0x29, 0x28, 0x78, 0x2a, 0x32, 0x2c, 0x20, 0x32, 0x2a, 0x79, 0x2b, 0x31, 0x29, 0x20, 0x29, -0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x72, 0x68, -0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, -0x73, 0x30, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x30, 0x20, 0x29, 0x2c, 0x20, 0x72, 0x68, -0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x31, 0x2c, 0x20, 0x62, 0x6f, 0x74, -0x2e, 0x73, 0x31, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x2f, 0x2a, 0x20, 0x74, 0x68, 0x65, 0x73, -0x65, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, -0x6e, 0x74, 0x73, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x20, 0x72, 0x65, 0x64, 0x75, 0x6e, -0x64, 0x61, 0x6e, 0x74, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x79, 0x20, 0x73, -0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x74, 0x65, -0x73, 0x74, 0x73, 0x20, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x0a, 0x2a, -0x20, 0x74, 0x68, 0x65, 0x79, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x68, 0x65, -0x72, 0x65, 0x2e, 0x20, 0x20, 0x49, 0x20, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76, 0x65, 0x20, 0x74, -0x68, 0x69, 0x73, 0x20, 0x77, 0x61, 0x73, 0x20, 0x63, 0x61, 0x75, 0x73, 0x65, 0x64, 0x20, 0x62, -0x79, 0x20, 0x61, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x20, 0x62, 0x75, 0x67, 0x0a, 0x2a, -0x2f, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x73, 0x65, -0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x30, 0x2c, -0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x2e, 0x73, 0x32, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x32, 0x20, 0x29, 0x2c, -0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x33, 0x2c, 0x20, -0x62, 0x6f, 0x74, 0x2e, 0x73, 0x33, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x28, 0x20, 0x78, 0x20, -0x2b, 0x20, 0x31, 0x20, 0x3c, 0x20, 0x67, 0x73, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x74, 0x6f, 0x70, -0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, -0x20, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, -0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2a, 0x32, -0x2b, 0x34, 0x2c, 0x20, 0x32, 0x2a, 0x79, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x62, 0x6f, 0x74, 0x20, -0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, -0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, -0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2a, 0x32, 0x2b, -0x34, 0x2c, 0x20, 0x32, 0x2a, 0x79, 0x2b, 0x31, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, -0x75, 0x65, 0x73, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, -0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x31, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, -0x64, 0x28, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x30, -0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x30, 0x20, 0x29, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, -0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x31, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, -0x31, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x28, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x3c, -0x20, 0x67, 0x73, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, -0x73, 0x33, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, 0x76, 0x61, 0x6c, -0x75, 0x65, 0x73, 0x2e, 0x73, 0x32, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, -0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x32, 0x2c, 0x20, 0x62, 0x6f, -0x74, 0x2e, 0x73, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x2e, 0x73, 0x33, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x33, 0x20, 0x29, 0x20, -0x29, 0x2c, 0x20, 0x28, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x33, 0x20, 0x3c, 0x20, 0x67, 0x73, 0x20, -0x29, 0x20, 0x29, 0x3b, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, -0x75, 0x69, 0x28, 0x20, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x70, -0x6f, 0x73, 0x2c, 0x20, 0x28, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, 0x76, 0x61, 0x6c, 0x75, -0x65, 0x73, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x53, 0x65, -0x63, 0x6f, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x6f, 0x77, -0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x20, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x2c, 0x20, 0x6e, -0x6f, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x20, 0x54, -0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x28, 0x6e, 0x6f, 0x20, 0x70, 0x65, 0x72, -0x66, 0x20, 0x6c, 0x6f, 0x73, 0x73, 0x29, 0x0a, 0x2a, 0x20, 0x77, 0x6f, 0x72, 0x6b, 0x61, 0x72, -0x6f, 0x75, 0x6e, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x73, 0x63, 0x68, 0x65, 0x64, -0x75, 0x6c, 0x69, 0x6e, 0x67, 0x20, 0x62, 0x75, 0x67, 0x20, 0x69, 0x6e, 0x20, 0x63, 0x75, 0x72, -0x72, 0x65, 0x6e, 0x74, 0x20, 0x54, 0x61, 0x68, 0x69, 0x74, 0x69, 0x20, 0x64, 0x72, 0x69, 0x76, -0x65, 0x72, 0x73, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x62, 0x75, 0x67, 0x20, 0x68, -0x61, 0x73, 0x0a, 0x2a, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x72, 0x65, 0x74, 0x69, 0x63, 0x61, 0x6c, -0x6c, 0x79, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x20, 0x69, 0x6e, -0x20, 0x74, 0x68, 0x65, 0x20, 0x4a, 0x75, 0x6c, 0x79, 0x20, 0x32, 0x30, 0x31, 0x32, 0x20, 0x64, -0x72, 0x69, 0x76, 0x65, 0x72, 0x20, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x20, 0x66, 0x72, -0x6f, 0x6d, 0x20, 0x41, 0x4d, 0x44, 0x2e, 0x0a, 0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, -0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, -0x32, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, -0x73, 0x2c, 0x20, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, -0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, -0x73, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, -0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, -0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x32, 0x20, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, -0x78, 0x2c, 0x20, 0x79, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x67, 0x73, 0x20, 0x3d, 0x20, -0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, -0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, 0x74, 0x6f, 0x70, 0x2c, -0x20, 0x62, 0x6f, 0x74, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x3b, 0x0a, 0x74, 0x6f, -0x70, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, -0x28, 0x20, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, -0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2a, -0x32, 0x2c, 0x20, 0x32, 0x2a, 0x79, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x62, 0x6f, 0x74, 0x20, 0x3d, -0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x68, -0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, -0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2a, 0x32, 0x2c, 0x20, -0x32, 0x2a, 0x79, 0x2b, 0x31, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, -0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x68, 0x61, -0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x30, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, -0x73, 0x30, 0x20, 0x29, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x2e, 0x73, 0x31, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x31, 0x20, 0x29, 0x20, 0x29, 0x3b, -0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, -0x65, 0x63, 0x74, 0x28, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x30, 0x2c, 0x20, -0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x2e, 0x73, 0x32, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x32, 0x20, 0x29, 0x2c, 0x20, -0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x33, 0x2c, 0x20, 0x62, -0x6f, 0x74, 0x2e, 0x73, 0x33, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x28, 0x20, 0x78, 0x20, 0x2b, -0x20, 0x31, 0x20, 0x3c, 0x20, 0x67, 0x73, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x74, 0x6f, 0x70, 0x20, -0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, -0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, -0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2a, 0x32, 0x2b, -0x34, 0x2c, 0x20, 0x32, 0x2a, 0x79, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x62, 0x6f, 0x74, 0x20, 0x3d, -0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x68, -0x69, 0x67, 0x68, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, -0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2a, 0x32, 0x2b, 0x34, -0x2c, 0x20, 0x32, 0x2a, 0x79, 0x2b, 0x31, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, -0x65, 0x73, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, -0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, 0x31, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, -0x28, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x30, 0x2c, -0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x30, 0x20, 0x29, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x31, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x31, -0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x28, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x3c, 0x20, -0x67, 0x73, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x73, -0x33, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, 0x76, 0x61, 0x6c, 0x75, -0x65, 0x73, 0x2e, 0x73, 0x32, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x72, 0x68, -0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x2e, 0x73, 0x32, 0x2c, 0x20, 0x62, 0x6f, 0x74, -0x2e, 0x73, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x2e, 0x73, 0x33, 0x2c, 0x20, 0x62, 0x6f, 0x74, 0x2e, 0x73, 0x33, 0x20, 0x29, 0x20, 0x29, -0x2c, 0x20, 0x28, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x33, 0x20, 0x3c, 0x20, 0x67, 0x73, 0x20, 0x29, -0x20, 0x29, 0x3b, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, -0x69, 0x28, 0x20, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x70, 0x6f, -0x73, 0x2c, 0x20, 0x28, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, 0x76, 0x61, 0x6c, 0x75, 0x65, -0x73, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x4f, 0x70, 0x65, 0x6e, 0x43, -0x4c, 0x20, 0x31, 0x2e, 0x32, 0x20, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x61, 0x64, -0x64, 0x65, 0x64, 0x20, 0x61, 0x20, 0x6d, 0x65, 0x6d, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6f, 0x6d, -0x6d, 0x61, 0x6e, 0x64, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x77, 0x65, 0x27, 0x72, 0x65, 0x20, -0x6e, 0x6f, 0x74, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x31, 0x2e, -0x32, 0x20, 0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, -0x20, 0x6d, 0x65, 0x6d, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x28, 0x20, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x2a, 0x62, -0x75, 0x66, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x76, 0x61, 0x6c, 0x75, -0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x62, 0x75, 0x66, 0x5b, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, -0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x5d, 0x20, 0x3d, 0x20, -0x76, 0x61, 0x6c, 0x75, 0x65, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x4c, 0x6f, 0x6f, 0x6b, -0x61, 0x68, 0x65, 0x61, 0x64, 0x20, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x20, 0x69, 0x6e, 0x74, -0x72, 0x61, 0x20, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, -0x45, 0x61, 0x63, 0x68, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x20, 0x61, 0x6e, 0x61, 0x6c, 0x79, -0x73, 0x69, 0x73, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x68, 0x61, 0x73, -0x20, 0x62, 0x65, 0x65, 0x6e, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x65, -0x64, 0x20, 0x74, 0x77, 0x69, 0x63, 0x65, 0x2c, 0x20, 0x6f, 0x6e, 0x63, 0x65, 0x20, 0x66, 0x6f, -0x72, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x20, 0x47, 0x50, 0x55, 0x73, 0x0a, 0x2a, 0x20, -0x28, 0x4e, 0x56, 0x29, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x6e, 0x63, 0x65, 0x20, 0x66, 0x6f, -0x72, 0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x47, 0x50, 0x55, -0x73, 0x20, 0x28, 0x41, 0x4d, 0x44, 0x20, 0x70, 0x72, 0x65, 0x2d, 0x53, 0x6f, 0x75, 0x74, 0x68, -0x65, 0x72, 0x6e, 0x20, 0x49, 0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x29, 0x2e, 0x20, 0x20, 0x78, -0x32, 0x36, 0x34, 0x20, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x73, 0x0a, 0x2a, 0x20, 0x74, 0x68, -0x65, 0x20, 0x47, 0x50, 0x55, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, -0x65, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x2d, 0x44, 0x56, 0x45, 0x43, 0x54, 0x4f, 0x52, -0x49, 0x5a, 0x45, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x20, 0x66, 0x6c, 0x61, 0x67, -0x20, 0x61, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x6c, 0x79, 0x2e, 0x0a, 0x2a, 0x0a, -0x2a, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x20, -0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, -0x6e, 0x73, 0x20, 0x77, 0x65, 0x72, 0x65, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, -0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x43, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, -0x73, 0x20, 0x69, 0x6e, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x2e, 0x63, 0x0a, 0x2a, 0x20, 0x61, -0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, -0x78, 0x61, 0x63, 0x74, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, -0x73, 0x2e, 0x0a, 0x2a, 0x2f, 0x0a, 0x2f, 0x2a, 0x20, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x20, 0x61, -0x6c, 0x6c, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x20, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, -0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x76, 0x61, -0x6c, 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x76, -0x65, 0x6e, 0x74, 0x20, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73, 0x20, 0x74, 0x79, -0x70, 0x65, 0x73, 0x20, 0x2a, 0x2f, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x63, -0x6c, 0x61, 0x6d, 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x28, 0x20, 0x58, 0x2c, 0x20, 0x4d, 0x49, 0x4e, -0x2c, 0x20, 0x4d, 0x41, 0x58, 0x20, 0x29, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x29, 0x20, 0x63, 0x6c, -0x61, 0x6d, 0x70, 0x28, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x29, 0x28, 0x58, 0x29, 0x2c, 0x20, 0x28, -0x69, 0x6e, 0x74, 0x29, 0x28, 0x4d, 0x49, 0x4e, 0x29, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x29, -0x28, 0x4d, 0x41, 0x58, 0x29, 0x20, 0x29, 0x0a, 0x23, 0x69, 0x66, 0x20, 0x56, 0x45, 0x43, 0x54, -0x4f, 0x52, 0x49, 0x5a, 0x45, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, -0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, -0x64, 0x61, 0x74, 0x61, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x30, 0x2c, -0x20, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x38, 0x20, -0x70, 0x72, 0x32, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x0a, -0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x61, 0x5f, 0x76, 0x2c, 0x20, 0x64, 0x5f, 0x76, 0x3b, -0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x74, 0x6d, 0x70, 0x30, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, -0x30, 0x31, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x30, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x30, 0x33, -0x2c, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x31, 0x2c, 0x20, -0x74, 0x6d, 0x70, 0x31, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x33, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x32, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x31, 0x2c, -0x20, 0x74, 0x6d, 0x70, 0x32, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x33, 0x2c, 0x20, 0x74, -0x6d, 0x70, 0x33, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x33, 0x31, 0x2c, 0x20, 0x74, 0x6d, 0x70, -0x33, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x33, 0x33, 0x3b, 0x0a, 0x64, 0x5f, 0x76, 0x20, 0x3d, -0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x38, 0x28, 0x20, 0x76, -0x6c, 0x6f, 0x61, 0x64, 0x38, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x29, -0x20, 0x29, 0x3b, 0x0a, 0x61, 0x5f, 0x76, 0x2e, 0x73, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, -0x37, 0x20, 0x3d, 0x20, 0x28, 0x64, 0x5f, 0x76, 0x20, 0x2d, 0x20, 0x70, 0x72, 0x30, 0x29, 0x2e, -0x73, 0x30, 0x34, 0x31, 0x35, 0x32, 0x36, 0x33, 0x37, 0x3b, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, -0x41, 0x52, 0x44, 0x34, 0x56, 0x28, 0x20, 0x74, 0x6d, 0x70, 0x30, 0x30, 0x2c, 0x20, 0x74, 0x6d, -0x70, 0x30, 0x31, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x30, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x30, -0x33, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, -0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, -0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x68, 0x69, 0x20, 0x29, 0x3b, -0x0a, 0x64, 0x61, 0x74, 0x61, 0x20, 0x2b, 0x3d, 0x20, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x74, -0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x64, 0x5f, 0x76, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, -0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x38, 0x28, 0x20, 0x76, 0x6c, 0x6f, 0x61, 0x64, 0x38, -0x28, 0x20, 0x30, 0x2c, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x61, -0x5f, 0x76, 0x2e, 0x73, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x20, 0x3d, 0x20, 0x28, -0x64, 0x5f, 0x76, 0x20, 0x2d, 0x20, 0x70, 0x72, 0x31, 0x29, 0x2e, 0x73, 0x30, 0x34, 0x31, 0x35, -0x32, 0x36, 0x33, 0x37, 0x3b, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x56, -0x28, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x31, 0x2c, 0x20, -0x74, 0x6d, 0x70, 0x31, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x33, 0x2c, 0x20, 0x61, 0x5f, -0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, -0x68, 0x69, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, -0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x68, 0x69, 0x20, 0x29, 0x3b, 0x0a, 0x64, 0x61, 0x74, 0x61, -0x20, 0x2b, 0x3d, 0x20, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, -0x0a, 0x64, 0x5f, 0x76, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, -0x6e, 0x74, 0x38, 0x28, 0x20, 0x76, 0x6c, 0x6f, 0x61, 0x64, 0x38, 0x28, 0x20, 0x30, 0x2c, 0x20, -0x64, 0x61, 0x74, 0x61, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x61, 0x5f, 0x76, 0x2e, 0x73, 0x30, -0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x64, 0x5f, 0x76, 0x20, 0x2d, -0x20, 0x70, 0x72, 0x32, 0x29, 0x2e, 0x73, 0x30, 0x34, 0x31, 0x35, 0x32, 0x36, 0x33, 0x37, 0x3b, -0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x56, 0x28, 0x20, 0x74, 0x6d, 0x70, -0x32, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x31, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x32, -0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x33, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, -0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x61, -0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, -0x2e, 0x68, 0x69, 0x20, 0x29, 0x3b, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x20, 0x2b, 0x3d, 0x20, 0x64, -0x61, 0x74, 0x61, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x64, 0x5f, 0x76, 0x20, -0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x38, 0x28, 0x20, -0x76, 0x6c, 0x6f, 0x61, 0x64, 0x38, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, -0x29, 0x20, 0x29, 0x3b, 0x0a, 0x61, 0x5f, 0x76, 0x2e, 0x73, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, -0x36, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x64, 0x5f, 0x76, 0x20, 0x2d, 0x20, 0x70, 0x72, 0x33, 0x29, -0x2e, 0x73, 0x30, 0x34, 0x31, 0x35, 0x32, 0x36, 0x33, 0x37, 0x3b, 0x0a, 0x48, 0x41, 0x44, 0x41, -0x4d, 0x41, 0x52, 0x44, 0x34, 0x56, 0x28, 0x20, 0x74, 0x6d, 0x70, 0x33, 0x30, 0x2c, 0x20, 0x74, -0x6d, 0x70, 0x33, 0x31, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x33, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, -0x33, 0x33, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, -0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, -0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x68, 0x69, 0x20, 0x29, -0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x73, 0x75, 0x6d, 0x5f, 0x76, 0x3b, 0x0a, 0x48, -0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x56, 0x28, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, -0x6f, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x68, 0x69, 0x2c, -0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, -0x68, 0x69, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x30, 0x30, 0x2c, 0x20, 0x74, 0x6d, -0x70, 0x31, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x30, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x33, -0x30, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x75, 0x6d, 0x5f, 0x76, 0x20, 0x3d, 0x20, 0x61, 0x62, 0x73, -0x28, 0x20, 0x61, 0x5f, 0x76, 0x20, 0x29, 0x3b, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, -0x44, 0x34, 0x56, 0x28, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, -0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, -0x69, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x68, 0x69, 0x2c, -0x20, 0x74, 0x6d, 0x70, 0x30, 0x31, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x31, 0x2c, 0x20, 0x74, -0x6d, 0x70, 0x32, 0x31, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x33, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x73, -0x75, 0x6d, 0x5f, 0x76, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x28, 0x20, 0x61, 0x5f, 0x76, -0x20, 0x29, 0x3b, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x56, 0x28, 0x20, -0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, -0x6f, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x6c, 0x6f, 0x2c, -0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x30, -0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x31, 0x32, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x32, 0x2c, -0x20, 0x74, 0x6d, 0x70, 0x33, 0x32, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x75, 0x6d, 0x5f, 0x76, 0x20, -0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x28, 0x20, 0x61, 0x5f, 0x76, 0x20, 0x29, 0x3b, 0x0a, 0x48, -0x41, 0x44, 0x41, 0x4d, 0x41, 0x52, 0x44, 0x34, 0x56, 0x28, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, -0x6f, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x2e, 0x68, 0x69, 0x2c, -0x20, 0x61, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x2e, 0x6c, 0x6f, 0x2c, 0x20, 0x61, 0x5f, 0x76, 0x2e, -0x68, 0x69, 0x2e, 0x68, 0x69, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x30, 0x33, 0x2c, 0x20, 0x74, 0x6d, -0x70, 0x31, 0x33, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x32, 0x33, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x33, -0x33, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x75, 0x6d, 0x5f, 0x76, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, -0x73, 0x28, 0x20, 0x61, 0x5f, 0x76, 0x20, 0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, -0x73, 0x75, 0x6d, 0x32, 0x20, 0x3d, 0x20, 0x73, 0x75, 0x6d, 0x5f, 0x76, 0x2e, 0x68, 0x69, 0x20, -0x2b, 0x20, 0x73, 0x75, 0x6d, 0x5f, 0x76, 0x2e, 0x6c, 0x6f, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, -0x32, 0x20, 0x73, 0x75, 0x6d, 0x33, 0x20, 0x3d, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x2e, 0x68, 0x69, -0x20, 0x2b, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x2e, 0x6c, 0x6f, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, -0x72, 0x6e, 0x20, 0x28, 0x20, 0x73, 0x75, 0x6d, 0x33, 0x2e, 0x68, 0x69, 0x20, 0x2b, 0x20, 0x73, -0x75, 0x6d, 0x33, 0x2e, 0x6c, 0x6f, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x31, 0x3b, 0x0a, 0x7d, -0x0a, 0x23, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x53, 0x41, 0x54, 0x44, 0x5f, 0x43, 0x5f, 0x38, 0x78, -0x34, 0x5f, 0x51, 0x28, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, -0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x20, 0x70, -0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, 0x29, 0x0a, 0x23, 0x65, 0x6e, 0x64, 0x69, 0x66, 0x0a, -0x2f, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x0a, 0x2a, 0x20, -0x38, 0x78, 0x38, 0x20, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, -0x6f, 0x72, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x20, 0x6c, 0x75, 0x6d, 0x61, 0x20, 0x62, 0x6c, -0x6f, 0x63, 0x6b, 0x0a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, -0x2f, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x46, 0x31, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x0a, 0x23, 0x64, -0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x46, 0x32, 0x28, 0x20, 0x61, 0x2c, 0x20, 0x62, 0x2c, 0x20, -0x63, 0x20, 0x29, 0x20, 0x28, 0x20, 0x61, 0x2b, 0x32, 0x2a, 0x62, 0x2b, 0x63, 0x2b, 0x32, 0x20, -0x29, 0x3e, 0x3e, 0x32, 0x0a, 0x23, 0x69, 0x66, 0x20, 0x56, 0x45, 0x43, 0x54, 0x4f, 0x52, 0x49, -0x5a, 0x45, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, -0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x64, 0x64, 0x6c, 0x28, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, -0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, -0x69, 0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, -0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, -0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, -0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x32, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, -0x31, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, -0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x35, -0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, -0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x28, 0x20, -0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, -0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, -0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, -0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x33, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, -0x31, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, -0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x36, -0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, -0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x28, 0x20, -0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, -0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, -0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, -0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, -0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x34, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, -0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, -0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x2b, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, -0x37, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, -0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x28, -0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, -0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, -0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, -0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, -0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, -0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x36, -0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, -0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x28, 0x20, -0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, -0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, -0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, -0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, -0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, -0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, -0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, -0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, -0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x37, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, -0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, -0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x31, 0x32, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x2b, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x33, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x36, -0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, -0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, -0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, -0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, -0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, -0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, -0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x33, 0x5d, 0x20, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, -0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x34, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, -0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x39, -0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, 0x3d, -0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x32, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x31, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x33, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x34, 0x5d, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, -0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x33, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x31, 0x35, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, -0x73, 0x30, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, -0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x38, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x30, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x20, -0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, -0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, -0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, -0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x31, 0x33, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, -0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x33, -0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x34, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, -0x6f, 0x70, 0x5b, 0x31, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x35, 0x5d, -0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, -0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x34, 0x5d, 0x20, -0x2b, 0x20, 0x33, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x35, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, -0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, -0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x29, 0x2c, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, -0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, -0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, -0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x64, 0x64, 0x72, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, -0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, -0x65, 0x66, 0x74, 0x2c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, -0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x30, -0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, -0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, -0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, -0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, -0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, -0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x32, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x34, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, -0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, -0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, 0x3d, -0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, -0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, -0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, -0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, -0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, -0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, -0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, -0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, -0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, -0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, -0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, -0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, -0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, -0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, -0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, -0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, -0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, -0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, -0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, -0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, -0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, -0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, -0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x29, 0x2c, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, -0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, -0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, -0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x76, 0x72, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, -0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, -0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, -0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, -0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, 0x65, -0x66, 0x74, 0x2c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, -0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x30, 0x2c, -0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x3b, 0x0a, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x30, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, -0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x32, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x32, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x31, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, -0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x32, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x31, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, -0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x31, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, -0x37, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, -0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, -0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, -0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, -0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, -0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x70, -0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, -0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x70, 0x72, 0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, -0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, -0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, -0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, -0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, -0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, -0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, -0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, -0x20, 0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, -0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x72, 0x63, -0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x29, 0x2c, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, -0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, -0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x50, 0x52, 0x45, 0x44, 0x0a, 0x7d, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, -0x38, 0x78, 0x38, 0x5f, 0x68, 0x64, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, -0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, -0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, -0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x20, 0x2a, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, -0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, 0x65, 0x66, 0x74, 0x2c, -0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, -0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, -0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x3b, 0x0a, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, -0x6f, 0x70, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, -0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, -0x35, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, -0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5f, -0x74, 0x6f, 0x70, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, -0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, -0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, -0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, -0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, -0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, -0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, -0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, -0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, -0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x2b, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, -0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, -0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, -0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, -0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, -0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, -0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, -0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, -0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, -0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, -0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, -0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, -0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x20, -0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, -0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, -0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, -0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x33, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, -0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x29, -0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, -0x5f, 0x74, 0x6f, 0x70, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x30, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, -0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, -0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x36, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, -0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, -0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, -0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, -0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, -0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, -0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x32, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, -0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, -0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, 0x20, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, -0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, -0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, -0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, -0x78, 0x38, 0x5f, 0x76, 0x6c, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, -0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, -0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x63, -0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x20, 0x2a, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, -0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, -0x33, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, -0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x33, -0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, -0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, -0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x37, -0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, -0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, -0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, -0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x30, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, -0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x32, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, -0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x34, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, -0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x33, -0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, -0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x70, -0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x31, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, -0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, -0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, -0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, -0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, -0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, -0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x68, -0x75, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, -0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, -0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, 0x65, -0x66, 0x74, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, 0x30, 0x2c, -0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x3b, 0x0a, -0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, -0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, -0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, -0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, -0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, -0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x31, 0x20, -0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, -0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x36, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, -0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, -0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, -0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, -0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, -0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, -0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x36, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, -0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, -0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, -0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x33, 0x2e, 0x73, -0x37, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, -0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, -0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, -0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, -0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, -0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x35, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, -0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, -0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, -0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, -0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x20, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, -0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, -0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, -0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, -0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, -0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, -0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x20, 0x70, 0x72, 0x31, 0x2e, 0x73, 0x35, 0x20, -0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x2e, 0x73, -0x36, 0x20, 0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x20, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x0a, 0x70, -0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x20, -0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, -0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, -0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, -0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x20, 0x70, 0x72, 0x32, 0x2e, 0x73, -0x35, 0x20, 0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x0a, 0x70, 0x72, 0x32, -0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x20, 0x70, -0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x3b, -0x0a, 0x70, 0x72, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x37, 0x5d, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, -0x64, 0x20, 0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, -0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, -0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, -0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, -0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, -0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x68, 0x28, 0x20, 0x63, -0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, -0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, -0x5f, 0x6c, 0x20, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, -0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, -0x33, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, -0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x70, 0x72, 0x31, 0x20, 0x3d, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x20, -0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, -0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x20, 0x3d, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x20, -0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, -0x20, 0x73, 0x72, 0x63, 0x5f, 0x6c, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, -0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x20, 0x3d, 0x20, -0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x20, 0x73, -0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x3b, 0x0a, 0x70, 0x72, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, 0x72, -0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x20, 0x3d, 0x20, -0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x20, 0x73, -0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x3b, 0x0a, 0x70, 0x72, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x38, 0x29, 0x73, 0x72, -0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, -0x74, 0x64, 0x20, 0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, -0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x6c, 0x20, 0x2b, 0x20, -0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, -0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, -0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, -0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x76, -0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, -0x38, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, -0x5f, 0x69, 0x6e, 0x74, 0x38, 0x28, 0x20, 0x76, 0x6c, 0x6f, 0x61, 0x64, 0x38, 0x28, 0x20, 0x30, -0x2c, 0x20, 0x26, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x5d, 0x20, 0x29, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, -0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, -0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x70, -0x72, 0x65, 0x64, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x20, 0x2b, 0x0a, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, -0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, -0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x70, 0x72, -0x65, 0x64, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, -0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, -0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x70, 0x28, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, -0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, -0x69, 0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x48, 0x20, 0x3d, 0x20, -0x30, 0x2c, 0x20, 0x56, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, -0x6e, 0x74, 0x20, 0x69, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, 0x3c, 0x20, 0x34, 0x3b, -0x20, 0x69, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x48, 0x20, 0x2b, 0x3d, 0x20, 0x28, 0x69, -0x20, 0x2b, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x28, 0x73, 0x72, 0x63, 0x5b, 0x34, 0x20, 0x2b, -0x20, 0x69, 0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, -0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x32, 0x20, 0x2d, 0x20, 0x69, 0x20, 0x2d, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x29, 0x3b, 0x0a, 0x56, 0x20, 0x2b, -0x3d, 0x20, 0x28, 0x69, 0x20, 0x2b, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x28, 0x73, 0x72, 0x63, -0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x20, 0x2b, 0x20, 0x34, 0x29, 0x20, 0x2a, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x20, 0x2d, 0x20, 0x73, 0x72, -0x63, 0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x28, 0x32, 0x20, 0x2d, 0x20, 0x69, 0x29, 0x20, 0x2a, -0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x29, 0x3b, 0x0a, 0x7d, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x31, 0x36, 0x20, 0x2a, 0x20, 0x28, 0x73, -0x72, 0x63, 0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x37, 0x20, 0x2a, 0x20, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x20, 0x2b, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x37, 0x20, -0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x29, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x62, 0x20, 0x3d, 0x20, 0x28, 0x31, 0x37, 0x20, 0x2a, 0x20, 0x48, 0x20, -0x2b, 0x20, 0x31, 0x36, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x63, 0x20, 0x3d, 0x20, 0x28, 0x31, 0x37, 0x20, 0x2a, 0x20, 0x56, 0x20, 0x2b, 0x20, 0x31, 0x36, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x30, 0x30, 0x20, -0x3d, 0x20, 0x61, 0x20, 0x2d, 0x20, 0x33, 0x20, 0x2a, 0x20, 0x62, 0x20, 0x2d, 0x20, 0x33, 0x20, -0x2a, 0x20, 0x63, 0x20, 0x2b, 0x20, 0x31, 0x36, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x70, 0x72, -0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, -0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, -0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, -0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, 0x63, -0x3b, 0x0a, 0x70, 0x69, 0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, 0x30, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x31, -0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x20, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x3b, 0x0a, 0x70, 0x69, 0x78, -0x20, 0x3d, 0x20, 0x69, 0x30, 0x30, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, -0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, -0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, -0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, -0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, -0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, -0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, -0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, 0x3d, -0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x69, 0x30, -0x30, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, -0x30, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, -0x63, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, -0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, -0x20, 0x70, 0x72, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, -0x30, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, -0x62, 0x3b, 0x0a, 0x70, 0x72, 0x30, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, -0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, -0x63, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, 0x30, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, -0x31, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, -0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, -0x20, 0x29, 0x3b, 0x20, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x3b, 0x0a, 0x70, 0x69, -0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, 0x30, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x31, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x32, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x33, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x34, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x35, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x36, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, -0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x32, 0x2e, 0x73, 0x37, 0x20, -0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x69, -0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x20, 0x3d, 0x20, 0x69, -0x30, 0x30, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, -0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, -0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, -0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, -0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x34, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, -0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x35, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, -0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x36, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, -0x20, 0x62, 0x3b, 0x0a, 0x70, 0x72, 0x33, 0x2e, 0x73, 0x37, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x20, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, -0x20, 0x63, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, -0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, -0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, -0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x30, 0x2c, -0x20, 0x70, 0x72, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x33, 0x20, 0x29, -0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, -0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x64, 0x63, 0x28, 0x20, 0x63, 0x6f, -0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, -0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, -0x72, 0x69, 0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x30, 0x2c, 0x20, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x30, 0x2c, 0x20, 0x73, 0x32, 0x20, -0x3d, 0x20, 0x30, 0x2c, 0x20, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, -0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, 0x3c, -0x20, 0x34, 0x3b, 0x20, 0x69, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x73, 0x30, 0x20, 0x2b, -0x3d, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x69, 0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, -0x72, 0x69, 0x64, 0x65, 0x5d, 0x3b, 0x0a, 0x73, 0x31, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, -0x5b, 0x69, 0x20, 0x2b, 0x20, 0x34, 0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, -0x69, 0x64, 0x65, 0x5d, 0x3b, 0x0a, 0x73, 0x32, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5b, -0x2d, 0x31, 0x20, 0x2b, 0x20, 0x69, 0x20, 0x2a, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, -0x69, 0x64, 0x65, 0x5d, 0x3b, 0x0a, 0x73, 0x33, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5b, -0x2d, 0x31, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x2b, 0x34, 0x29, 0x2a, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x38, 0x20, 0x64, -0x63, 0x30, 0x3b, 0x0a, 0x64, 0x63, 0x30, 0x2e, 0x6c, 0x6f, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, -0x74, 0x34, 0x29, 0x28, 0x20, 0x28, 0x73, 0x30, 0x20, 0x2b, 0x20, 0x73, 0x32, 0x20, 0x2b, 0x20, -0x34, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x64, 0x63, 0x30, 0x2e, 0x68, -0x69, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, 0x20, 0x28, 0x73, 0x31, 0x20, -0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, -0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x64, 0x63, 0x30, 0x2c, -0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x64, 0x63, 0x30, 0x20, 0x29, -0x3b, 0x0a, 0x64, 0x63, 0x30, 0x2e, 0x6c, 0x6f, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x34, -0x29, 0x28, 0x20, 0x28, 0x73, 0x33, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x20, 0x29, 0x3b, 0x0a, 0x64, 0x63, 0x30, 0x2e, 0x68, 0x69, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, -0x74, 0x34, 0x29, 0x28, 0x20, 0x28, 0x73, 0x31, 0x20, 0x2b, 0x20, 0x73, 0x33, 0x20, 0x2b, 0x20, -0x34, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, -0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, -0x34, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x6c, 0x72, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, -0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, -0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x2c, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x64, 0x63, 0x30, -0x2c, 0x20, 0x64, 0x63, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x23, 0x65, 0x6c, 0x73, 0x65, -0x20, 0x20, 0x2f, 0x2a, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x69, -0x7a, 0x65, 0x64, 0x3a, 0x20, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, 0x69, 0x73, 0x20, -0x63, 0x68, 0x65, 0x61, 0x70, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x73, 0x20, -0x61, 0x72, 0x65, 0x20, 0x73, 0x63, 0x61, 0x72, 0x63, 0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, -0x78, 0x38, 0x5f, 0x64, 0x64, 0x6c, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, -0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, -0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, -0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x20, 0x2a, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, -0x74, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, -0x5d, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, -0x30, 0x3b, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x34, 0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, -0x7b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x30, -0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, 0x78, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, -0x0a, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x78, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x79, 0x20, -0x3d, 0x20, 0x28, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x29, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x5f, -0x69, 0x6e, 0x74, 0x28, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x79, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x31, -0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x78, 0x20, 0x2b, 0x20, 0x79, 0x2a, -0x38, 0x5d, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x78, -0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x79, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, -0x5b, 0x78, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x79, 0x20, 0x2b, 0x20, 0x31, 0x5d, 0x20, 0x2b, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x78, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x79, 0x20, 0x2b, 0x20, -0x32, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, -0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, -0x29, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, -0x34, 0x3b, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, -0x7b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x30, -0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, 0x78, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, -0x0a, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x78, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x79, 0x20, -0x3d, 0x20, 0x28, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x29, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x5f, -0x69, 0x6e, 0x74, 0x28, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x79, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x31, -0x33, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x78, 0x20, 0x2b, 0x20, 0x28, 0x20, -0x79, 0x20, 0x2d, 0x20, 0x34, 0x20, 0x29, 0x2a, 0x38, 0x5d, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x32, -0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x78, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x79, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x78, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, -0x79, 0x20, 0x2b, 0x20, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x78, 0x5f, 0x70, -0x6c, 0x75, 0x73, 0x5f, 0x79, 0x20, 0x2b, 0x20, 0x32, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x31, 0x5d, 0x20, -0x3d, 0x20, 0x28, 0x20, 0x32, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x34, 0x5d, 0x20, -0x2b, 0x20, 0x33, 0x2a, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x35, 0x5d, 0x20, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, -0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, -0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, -0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, -0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, -0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, -0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x64, -0x64, 0x72, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x74, -0x6f, 0x70, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, 0x65, 0x66, 0x74, 0x2c, 0x20, 0x70, 0x69, 0x78, -0x65, 0x6c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, -0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, -0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, -0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x78, 0x2c, 0x20, 0x79, 0x20, 0x29, 0x20, 0x70, 0x72, 0x65, -0x64, 0x5b, 0x28, 0x78, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x79, 0x29, 0x2a, 0x38, 0x5d, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, -0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, -0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, -0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x32, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, -0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x31, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x32, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x33, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, -0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x30, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x31, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x32, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, -0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x34, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x30, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x37, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, -0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, -0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, -0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x30, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x31, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x30, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x31, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, -0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, -0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, -0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, -0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x33, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x30, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x31, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x32, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, -0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, -0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, -0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, -0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x36, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x37, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x35, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x36, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, -0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, -0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, -0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x30, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, -0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, -0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, -0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, -0x61, 0x74, 0x64, 0x3b, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x50, 0x52, 0x45, 0x44, -0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, -0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x76, 0x72, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, -0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, -0x65, 0x66, 0x74, 0x2c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, -0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, 0x3b, 0x0a, -0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x78, 0x2c, -0x20, 0x79, 0x20, 0x29, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x78, 0x29, 0x20, 0x2b, 0x20, -0x28, 0x79, 0x29, 0x2a, 0x38, 0x5d, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, -0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, -0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, -0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, -0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, -0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, -0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x32, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, -0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, -0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x32, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x32, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x32, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x33, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x33, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x34, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x34, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x35, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x35, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x36, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x36, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, -0x37, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, -0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, -0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x37, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, -0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, -0x38, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x33, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x30, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x32, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x31, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, -0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, -0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, -0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, -0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x33, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, -0x70, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x30, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x32, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, -0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x32, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, -0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x30, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x32, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, -0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x30, 0x20, -0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x32, 0x20, 0x29, -0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x30, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, -0x2b, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, -0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, -0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x3b, 0x0a, 0x23, -0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x50, 0x52, 0x45, 0x44, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x6c, -0x69, 0x6e, 0x65, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x20, 0x70, 0x61, 0x63, -0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, -0x74, 0x20, 0x61, 0x2c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x20, 0x62, 0x20, -0x29, 0x0a, 0x7b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x61, 0x20, 0x2b, 0x20, 0x28, -0x62, 0x20, 0x3c, 0x3c, 0x20, 0x31, 0x36, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x6c, 0x69, -0x6e, 0x65, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x20, 0x70, 0x61, 0x63, 0x6b, -0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x20, -0x61, 0x2c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x20, 0x62, 0x20, 0x29, 0x0a, -0x7b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x61, 0x20, 0x2b, 0x20, 0x28, 0x62, 0x20, -0x3c, 0x3c, 0x20, 0x38, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, -0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x68, 0x64, -0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, -0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x74, 0x6f, 0x70, -0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, 0x65, 0x66, 0x74, 0x2c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, -0x69, 0x76, 0x61, 0x74, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, -0x5b, 0x33, 0x32, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x70, 0x31, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, -0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, -0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, -0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x70, 0x32, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, -0x31, 0x36, 0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x70, 0x33, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, -0x36, 0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, -0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x70, 0x34, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, -0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x70, 0x35, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, -0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x32, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, -0x36, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, -0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, -0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x37, -0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, -0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5f, -0x74, 0x6f, 0x70, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, -0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x38, -0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, -0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, -0x6f, 0x70, 0x20, 0x2b, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x39, -0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, -0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x20, 0x29, 0x29, 0x2c, -0x20, 0x28, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x20, 0x29, 0x29, 0x20, -0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x31, 0x30, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, -0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, -0x31, 0x31, 0x20, 0x3d, 0x20, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, -0x20, 0x28, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x29, 0x2c, -0x20, 0x28, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x29, 0x20, -0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, -0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, -0x32, 0x28, 0x20, 0x70, 0x38, 0x2c, 0x20, 0x70, 0x39, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, -0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x30, 0x20, 0x2b, 0x20, 0x30, 0x20, 0x2a, 0x20, -0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, -0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, -0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x31, 0x30, 0x2c, 0x20, 0x70, 0x31, 0x31, 0x20, 0x29, -0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x34, 0x20, 0x2b, -0x20, 0x30, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, -0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, -0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x37, 0x2c, 0x20, 0x70, -0x38, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, -0x30, 0x20, 0x2b, 0x20, 0x31, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, -0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, -0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x39, -0x2c, 0x20, 0x70, 0x31, 0x30, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, -0x72, 0x65, 0x64, 0x5b, 0x34, 0x20, 0x2b, 0x20, 0x31, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, -0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, -0x28, 0x20, 0x70, 0x36, 0x2c, 0x20, 0x70, 0x37, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, -0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x30, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x38, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, -0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, -0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x38, 0x2c, 0x20, 0x70, 0x39, 0x20, 0x29, 0x20, 0x29, 0x2c, -0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x34, 0x20, 0x2b, 0x20, 0x32, 0x20, -0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, -0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, -0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x35, 0x2c, 0x20, 0x70, 0x36, 0x20, 0x29, -0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x30, 0x20, 0x2b, -0x20, 0x33, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, -0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, -0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x37, 0x2c, 0x20, 0x70, -0x38, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, -0x34, 0x20, 0x2b, 0x20, 0x33, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x61, -0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, -0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, -0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, -0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x34, -0x2c, 0x20, 0x70, 0x35, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, -0x65, 0x64, 0x5b, 0x30, 0x20, 0x2b, 0x20, 0x30, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, -0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, -0x20, 0x70, 0x36, 0x2c, 0x20, 0x70, 0x37, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, -0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x34, 0x20, 0x2b, 0x20, 0x30, 0x20, 0x2a, 0x20, 0x38, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, -0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, -0x33, 0x32, 0x28, 0x20, 0x70, 0x33, 0x2c, 0x20, 0x70, 0x34, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, -0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x30, 0x20, 0x2b, 0x20, 0x31, 0x20, 0x2a, -0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, -0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, -0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x35, 0x2c, 0x20, 0x70, 0x36, 0x20, 0x29, 0x20, -0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x34, 0x20, 0x2b, 0x20, -0x31, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, -0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, -0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x32, 0x2c, 0x20, 0x70, 0x33, -0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x30, -0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, -0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, -0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x34, 0x2c, -0x20, 0x70, 0x35, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, -0x64, 0x5b, 0x34, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, -0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, -0x70, 0x31, 0x2c, 0x20, 0x70, 0x32, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, -0x70, 0x72, 0x65, 0x64, 0x5b, 0x30, 0x20, 0x2b, 0x20, 0x33, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, -0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, -0x32, 0x28, 0x20, 0x70, 0x33, 0x2c, 0x20, 0x70, 0x34, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, -0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x34, 0x20, 0x2b, 0x20, 0x33, 0x20, 0x2a, 0x20, -0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x61, -0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, -0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, -0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, -0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, -0x5f, 0x76, 0x6c, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, -0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, -0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, -0x74, 0x6f, 0x70, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, -0x65, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x78, 0x2c, 0x20, 0x79, 0x20, 0x29, 0x20, 0x70, -0x72, 0x65, 0x64, 0x5b, 0x28, 0x78, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x79, 0x29, 0x2a, 0x38, 0x5d, -0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, -0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, -0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x30, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x32, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, -0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, -0x5b, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, -0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x31, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, -0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, -0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, -0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, -0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x30, -0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x32, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x30, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x30, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, 0x20, -0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x30, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x31, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x31, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, 0x20, -0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x34, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x31, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x32, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x32, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, 0x20, -0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x35, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x32, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x33, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x33, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, 0x20, -0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x36, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x33, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x34, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x34, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, 0x20, -0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x37, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x34, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x35, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x37, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x35, 0x2c, -0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, -0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x38, 0x5d, -0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x35, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, -0x20, 0x36, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x38, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x2c, 0x20, 0x74, 0x6f, -0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x36, -0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, -0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x39, -0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, -0x45, 0x44, 0x28, 0x20, 0x36, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x50, 0x52, 0x45, -0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x39, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x2c, -0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, -0x28, 0x20, 0x37, 0x2c, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3d, 0x20, 0x46, 0x31, 0x28, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x50, 0x52, 0x45, 0x44, 0x28, 0x20, 0x37, 0x2c, 0x20, 0x33, 0x20, 0x29, 0x20, -0x3d, 0x20, 0x46, 0x32, 0x28, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x30, 0x5d, 0x2c, 0x20, 0x74, -0x6f, 0x70, 0x5b, 0x31, 0x31, 0x5d, 0x2c, 0x20, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x32, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, -0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, -0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, -0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, -0x20, 0x73, 0x61, 0x74, 0x64, 0x3b, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x50, 0x52, -0x45, 0x44, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, -0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x68, 0x75, 0x28, 0x20, 0x63, 0x6f, -0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, -0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, -0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x29, 0x0a, -0x7b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, -0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, -0x74, 0x64, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x31, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, -0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x29, 0x29, -0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, -0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x32, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, -0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, -0x31, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, -0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, -0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x70, 0x33, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, -0x31, 0x36, 0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x70, 0x34, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, -0x28, 0x20, 0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, 0x5d, 0x2c, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x33, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x2b, 0x20, -0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x70, 0x35, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, -0x28, 0x46, 0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x34, 0x5d, 0x2c, 0x20, 0x6c, 0x65, -0x66, 0x74, 0x5b, 0x35, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x34, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, -0x5d, 0x20, 0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x36, -0x20, 0x3d, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, 0x46, -0x31, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, -0x5b, 0x36, 0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x35, -0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, -0x2b, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x37, 0x20, 0x3d, -0x20, 0x70, 0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x28, 0x46, 0x31, 0x28, -0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, -0x5d, 0x20, 0x29, 0x29, 0x2c, 0x20, 0x28, 0x28, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x36, 0x5d, 0x20, -0x2b, 0x20, 0x32, 0x20, 0x2a, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x38, 0x20, 0x3d, 0x20, 0x70, -0x61, 0x63, 0x6b, 0x38, 0x74, 0x6f, 0x31, 0x36, 0x28, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, -0x5d, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x37, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, -0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, -0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x31, -0x2c, 0x20, 0x70, 0x32, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, -0x65, 0x64, 0x5b, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x30, 0x20, 0x29, -0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, -0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, -0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x33, 0x2c, 0x20, 0x70, 0x34, 0x20, -0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, -0x34, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, -0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, -0x33, 0x32, 0x28, 0x20, 0x70, 0x32, 0x2c, 0x20, 0x70, 0x33, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, -0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2b, -0x20, 0x28, 0x20, 0x31, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, -0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, -0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, -0x34, 0x2c, 0x20, 0x70, 0x35, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, -0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x34, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x31, 0x20, -0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, -0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, -0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x33, 0x2c, 0x20, 0x70, 0x34, -0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, -0x20, 0x30, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x32, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, -0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, -0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, -0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x35, 0x2c, 0x20, 0x70, 0x36, 0x20, 0x29, 0x20, 0x29, 0x2c, -0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x34, 0x20, 0x29, 0x20, -0x2b, 0x20, 0x28, 0x20, 0x32, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, -0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, -0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, -0x70, 0x34, 0x2c, 0x20, 0x70, 0x35, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, -0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x33, -0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, -0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, -0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x36, 0x2c, 0x20, 0x70, -0x37, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, -0x28, 0x20, 0x34, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x33, 0x20, 0x29, 0x20, 0x2a, 0x20, -0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, -0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, -0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, -0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, -0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x35, 0x2c, 0x20, 0x70, 0x36, 0x20, 0x29, 0x20, 0x29, -0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x30, 0x20, 0x29, -0x20, 0x2b, 0x20, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, -0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, -0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, -0x20, 0x70, 0x37, 0x2c, 0x20, 0x70, 0x38, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, -0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x34, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, -0x30, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, -0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, -0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x36, 0x2c, 0x20, -0x70, 0x37, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, -0x5b, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x31, 0x20, 0x29, 0x20, 0x2a, -0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, -0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, -0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x38, 0x2c, 0x20, 0x70, 0x38, 0x20, 0x29, 0x20, -0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x34, 0x20, -0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x31, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, -0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, -0x28, 0x20, 0x70, 0x37, 0x2c, 0x20, 0x70, 0x38, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, -0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, -0x20, 0x32, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, -0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, -0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x38, 0x2c, -0x20, 0x70, 0x38, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, -0x64, 0x5b, 0x28, 0x20, 0x34, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x32, 0x20, 0x29, 0x20, -0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, -0x20, 0x61, 0x73, 0x5f, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, -0x31, 0x36, 0x74, 0x6f, 0x33, 0x32, 0x28, 0x20, 0x70, 0x38, 0x2c, 0x20, 0x70, 0x38, 0x20, 0x29, -0x20, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x30, -0x20, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x33, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x34, 0x28, 0x20, 0x61, 0x73, 0x5f, 0x75, -0x63, 0x68, 0x61, 0x72, 0x34, 0x28, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x31, 0x36, 0x74, 0x6f, 0x33, -0x32, 0x28, 0x20, 0x70, 0x38, 0x2c, 0x20, 0x70, 0x38, 0x20, 0x29, 0x20, 0x29, 0x2c, 0x20, 0x30, -0x2c, 0x20, 0x26, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x28, 0x20, 0x34, 0x20, 0x29, 0x20, 0x2b, 0x20, -0x28, 0x20, 0x33, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x61, -0x74, 0x64, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, -0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, -0x38, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, -0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, -0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x68, 0x28, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, -0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, -0x69, 0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, 0x3b, 0x0a, -0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x20, 0x2a, 0x73, 0x72, 0x63, 0x5f, 0x6c, 0x20, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x3b, 0x0a, -0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x38, -0x29, 0x28, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x70, -0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, -0x38, 0x28, 0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x38, 0x29, 0x28, 0x73, 0x72, 0x63, 0x5b, -0x2d, 0x31, 0x5d, 0x29, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, -0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x28, 0x75, 0x63, -0x68, 0x61, 0x72, 0x38, 0x29, 0x28, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x29, 0x2c, 0x20, -0x32, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, -0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x76, 0x73, -0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x38, 0x29, 0x28, -0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x29, 0x2c, 0x20, 0x33, 0x2c, 0x20, 0x70, 0x72, 0x65, -0x64, 0x20, 0x29, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, -0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x6c, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, -0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x38, 0x29, 0x28, -0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x29, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x65, -0x64, 0x20, 0x29, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, -0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x38, 0x29, 0x28, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, -0x5d, 0x29, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x20, 0x73, -0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x28, 0x75, 0x63, 0x68, 0x61, -0x72, 0x38, 0x29, 0x28, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x29, 0x2c, 0x20, 0x32, 0x2c, -0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x3d, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, -0x72, 0x65, 0x38, 0x28, 0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x38, 0x29, 0x28, 0x73, 0x72, -0x63, 0x5b, 0x2d, 0x31, 0x5d, 0x29, 0x2c, 0x20, 0x33, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, -0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x2b, -0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, -0x63, 0x5f, 0x6c, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, -0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, -0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x76, 0x28, 0x20, 0x63, 0x6f, 0x6e, -0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, -0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, -0x69, 0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, 0x3b, 0x0a, -0x75, 0x63, 0x68, 0x61, 0x72, 0x31, 0x36, 0x20, 0x76, 0x31, 0x36, 0x3b, 0x0a, 0x76, 0x31, 0x36, -0x2e, 0x6c, 0x6f, 0x20, 0x3d, 0x20, 0x76, 0x6c, 0x6f, 0x61, 0x64, 0x38, 0x28, 0x20, 0x30, 0x2c, -0x20, 0x26, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, -0x65, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x31, 0x36, 0x2e, 0x68, 0x69, 0x20, 0x3d, 0x20, 0x76, -0x6c, 0x6f, 0x61, 0x64, 0x38, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x26, 0x73, 0x72, 0x63, 0x5b, 0x2d, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x76, -0x73, 0x74, 0x6f, 0x72, 0x65, 0x31, 0x36, 0x28, 0x20, 0x76, 0x31, 0x36, 0x2c, 0x20, 0x30, 0x2c, -0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x31, -0x36, 0x28, 0x20, 0x76, 0x31, 0x36, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, -0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, -0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, -0x29, 0x20, 0x2b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, -0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, -0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, -0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, -0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x70, 0x28, 0x20, 0x63, 0x6f, 0x6e, 0x73, -0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x2a, 0x73, -0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x48, 0x20, 0x3d, 0x20, 0x30, -0x2c, 0x20, 0x56, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, -0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, 0x3b, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, -0x69, 0x6e, 0x74, 0x20, 0x69, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, 0x3c, 0x20, 0x34, -0x3b, 0x20, 0x69, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x48, 0x20, 0x2b, 0x3d, 0x20, 0x28, -0x69, 0x20, 0x2b, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x28, 0x73, 0x72, 0x63, 0x5b, 0x34, 0x20, -0x2b, 0x20, 0x69, 0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x5d, 0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x32, 0x20, 0x2d, 0x20, 0x69, 0x20, 0x2d, 0x20, -0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x29, 0x3b, 0x0a, 0x56, 0x20, -0x2b, 0x3d, 0x20, 0x28, 0x69, 0x20, 0x2b, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x28, 0x73, 0x72, -0x63, 0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x20, 0x2b, 0x20, 0x34, 0x29, 0x20, 0x2a, -0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x20, 0x2d, 0x20, 0x73, -0x72, 0x63, 0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x28, 0x32, 0x20, 0x2d, 0x20, 0x69, 0x29, 0x20, -0x2a, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x29, 0x3b, 0x0a, -0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x20, 0x3d, 0x20, 0x31, 0x36, 0x20, 0x2a, 0x20, 0x28, -0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x37, 0x20, 0x2a, 0x20, 0x73, 0x72, 0x63, -0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x20, 0x2b, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x37, -0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x29, 0x3b, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x20, 0x3d, 0x20, 0x28, 0x31, 0x37, 0x20, 0x2a, 0x20, 0x48, -0x20, 0x2b, 0x20, 0x31, 0x36, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x3b, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x63, 0x20, 0x3d, 0x20, 0x28, 0x31, 0x37, 0x20, 0x2a, 0x20, 0x56, 0x20, 0x2b, 0x20, 0x31, -0x36, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x35, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x30, 0x30, -0x20, 0x3d, 0x20, 0x61, 0x20, 0x2d, 0x20, 0x33, 0x20, 0x2a, 0x20, 0x62, 0x20, 0x2d, 0x20, 0x33, -0x20, 0x2a, 0x20, 0x63, 0x20, 0x2b, 0x20, 0x31, 0x36, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, -0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x34, -0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x69, -0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, -0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, -0x78, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x78, 0x20, 0x2b, -0x20, 0x79, 0x2a, 0x38, 0x5d, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, 0x6c, 0x69, -0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, 0x3e, 0x20, -0x35, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x0a, 0x7d, -0x0a, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x3b, 0x0a, 0x7d, 0x0a, 0x73, 0x61, 0x74, -0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, -0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, -0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x66, 0x6f, 0x72, -0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x79, 0x20, 0x3c, -0x20, 0x34, 0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x70, 0x69, 0x78, 0x20, 0x3d, 0x20, 0x69, 0x30, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, -0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x38, -0x3b, 0x20, 0x78, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x78, -0x20, 0x2b, 0x20, 0x79, 0x2a, 0x38, 0x5d, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x63, -0x6c, 0x69, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x28, 0x20, 0x70, 0x69, 0x78, 0x20, 0x3e, -0x3e, 0x20, 0x35, 0x20, 0x29, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, -0x0a, 0x7d, 0x0a, 0x69, 0x30, 0x30, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x3b, 0x0a, 0x7d, 0x0a, 0x73, -0x61, 0x74, 0x64, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, -0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, -0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, -0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, -0x20, 0x38, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, -0x64, 0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, -0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x64, 0x63, 0x28, 0x20, 0x63, -0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x20, 0x2a, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, -0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x5b, 0x33, 0x32, 0x5d, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x30, 0x2c, 0x20, 0x73, 0x31, -0x20, 0x3d, 0x20, 0x30, 0x2c, 0x20, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x30, 0x2c, 0x20, 0x73, 0x33, -0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x69, -0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, 0x3c, 0x20, 0x34, 0x3b, 0x20, 0x69, 0x2b, 0x2b, -0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x73, 0x30, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x69, -0x20, 0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x3b, 0x0a, -0x73, 0x31, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x69, 0x20, 0x2b, 0x20, 0x34, 0x20, -0x2d, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x3b, 0x0a, 0x73, -0x32, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x69, 0x20, -0x2a, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x3b, 0x0a, 0x73, -0x33, 0x20, 0x2b, 0x3d, 0x20, 0x73, 0x72, 0x63, 0x5b, 0x2d, 0x31, 0x20, 0x2b, 0x20, 0x28, 0x69, -0x2b, 0x34, 0x29, 0x2a, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x5d, 0x3b, -0x0a, 0x7d, 0x0a, 0x75, 0x63, 0x68, 0x61, 0x72, 0x38, 0x20, 0x64, 0x63, 0x30, 0x3b, 0x0a, 0x64, -0x63, 0x30, 0x2e, 0x6c, 0x6f, 0x20, 0x3d, 0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x29, -0x28, 0x20, 0x28, 0x73, 0x30, 0x20, 0x2b, 0x20, 0x73, 0x32, 0x20, 0x2b, 0x20, 0x34, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x33, 0x20, 0x29, 0x3b, 0x0a, 0x64, 0x63, 0x30, 0x2e, 0x68, 0x69, 0x20, 0x3d, -0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x29, 0x28, 0x20, 0x28, 0x73, 0x31, 0x20, 0x2b, -0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, -0x72, 0x65, 0x38, 0x28, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x70, 0x72, 0x65, -0x64, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x64, 0x63, -0x30, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, -0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x32, 0x2c, 0x20, 0x70, -0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, -0x64, 0x63, 0x30, 0x2c, 0x20, 0x33, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, -0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, 0x73, 0x72, 0x63, 0x2c, 0x20, 0x73, 0x72, 0x63, -0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, -0x20, 0x29, 0x3b, 0x0a, 0x64, 0x63, 0x30, 0x2e, 0x6c, 0x6f, 0x20, 0x3d, 0x20, 0x28, 0x75, 0x63, -0x68, 0x61, 0x72, 0x34, 0x29, 0x28, 0x20, 0x28, 0x73, 0x33, 0x20, 0x2b, 0x20, 0x32, 0x29, 0x20, -0x3e, 0x3e, 0x20, 0x32, 0x20, 0x29, 0x3b, 0x0a, 0x64, 0x63, 0x30, 0x2e, 0x68, 0x69, 0x20, 0x3d, -0x20, 0x28, 0x75, 0x63, 0x68, 0x61, 0x72, 0x34, 0x29, 0x28, 0x20, 0x28, 0x73, 0x31, 0x20, 0x2b, -0x20, 0x73, 0x33, 0x20, 0x2b, 0x20, 0x34, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x33, 0x20, 0x29, 0x3b, -0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x30, -0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, -0x38, 0x28, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, -0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x38, 0x28, 0x20, 0x64, 0x63, 0x30, 0x2c, -0x20, 0x32, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x20, 0x29, 0x3b, 0x0a, 0x76, 0x73, 0x74, 0x6f, -0x72, 0x65, 0x38, 0x28, 0x20, 0x64, 0x63, 0x30, 0x2c, 0x20, 0x33, 0x2c, 0x20, 0x70, 0x72, 0x65, -0x64, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x61, 0x74, 0x64, -0x20, 0x2b, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x6c, 0x70, 0x28, 0x20, -0x73, 0x72, 0x63, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x74, 0x72, 0x69, -0x64, 0x65, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x20, 0x29, 0x2c, 0x20, 0x73, 0x72, 0x63, 0x5f, 0x73, -0x74, 0x72, 0x69, 0x64, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x38, 0x20, 0x29, -0x3b, 0x0a, 0x7d, 0x0a, 0x23, 0x65, 0x6e, 0x64, 0x69, 0x66, 0x0a, 0x2f, 0x2a, 0x20, 0x46, 0x69, -0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x63, 0x6f, 0x73, -0x74, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x20, 0x66, 0x6f, 0x72, -0x20, 0x33, 0x32, 0x20, 0x38, 0x78, 0x38, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x62, 0x6c, 0x6f, -0x63, 0x6b, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x77, 0x6f, 0x72, 0x6b, 0x67, 0x72, 0x6f, 0x75, -0x70, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x4c, 0x6f, 0x61, 0x64, 0x73, 0x20, 0x33, 0x33, 0x20, 0x6d, -0x61, 0x63, 0x72, 0x6f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x20, 0x70, 0x6c, 0x75, 0x73, 0x20, -0x74, 0x68, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, -0x74, 0x6c, 0x79, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x20, 0x69, -0x6e, 0x74, 0x6f, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, -0x2c, 0x0a, 0x2a, 0x20, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x68, 0x65, 0x72, -0x65, 0x20, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x20, 0x77, 0x69, 0x74, 0x68, -0x20, 0x65, 0x64, 0x67, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x2e, 0x20, 0x20, 0x49, -0x74, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, -0x76, 0x65, 0x6c, 0x79, 0x20, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x0a, -0x2a, 0x20, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x70, 0x20, 0x61, -0x6e, 0x64, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x20, 0x66, -0x6f, 0x72, 0x20, 0x75, 0x73, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x6f, -0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x2e, 0x0a, -0x2a, 0x0a, 0x2a, 0x20, 0x54, 0x68, 0x65, 0x6e, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x20, -0x6f, 0x66, 0x20, 0x33, 0x32, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x20, 0x65, 0x61, -0x63, 0x68, 0x20, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x73, -0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x65, -0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x38, 0x78, 0x38, 0x0a, 0x2a, 0x20, -0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x20, 0x20, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x20, 0x63, 0x6f, -0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, -0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6e, -0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, -0x20, 0x6d, 0x6f, 0x64, 0x65, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x0a, 0x2a, 0x20, 0x69, 0x73, -0x20, 0x6e, 0x6f, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2d, 0x70, 0x61, 0x74, 0x68, 0x20, 0x64, 0x69, -0x76, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x20, 0x20, 0x38, 0x20, 0x69, 0x6e, 0x74, -0x72, 0x61, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x63, 0x61, 0x6c, -0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x74, 0x61, 0x6e, -0x65, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x2e, 0x20, 0x20, 0x49, 0x66, 0x0a, 0x2a, 0x20, 0x74, 0x68, -0x65, 0x20, 0x22, 0x73, 0x6c, 0x6f, 0x77, 0x22, 0x20, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, -0x74, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x7a, 0x65, 0x72, 0x6f, 0x2c, 0x20, 0x74, -0x68, 0x65, 0x20, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x20, 0x74, 0x77, 0x6f, 0x20, 0x28, 0x6c, 0x65, -0x61, 0x73, 0x74, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x79, 0x29, 0x20, 0x69, 0x6e, 0x74, 0x72, -0x61, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x0a, 0x2a, 0x20, 0x74, 0x65, -0x73, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, -0x20, 0x70, 0x61, 0x73, 0x73, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x73, 0x6c, 0x6f, 0x77, -0x20, 0x6d, 0x6f, 0x64, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x65, 0x6e, -0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x74, -0x73, 0x20, 0x73, 0x6c, 0x6f, 0x77, 0x2c, 0x0a, 0x2a, 0x20, 0x73, 0x6c, 0x6f, 0x77, 0x65, 0x72, -0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x2e, 0x0a, 0x2a, -0x0a, 0x2a, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x20, 0x61, -0x6c, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, -0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x72, 0x65, -0x61, 0x64, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6c, -0x6f, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x2c, 0x20, 0x61, 0x6e, 0x64, -0x0a, 0x2a, 0x20, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x73, 0x20, 0x72, 0x65, 0x2d, 0x66, 0x65, 0x74, -0x63, 0x68, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x64, 0x67, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x6d, 0x65, -0x6d, 0x6f, 0x72, 0x79, 0x2e, 0x20, 0x20, 0x41, 0x6e, 0x64, 0x20, 0x69, 0x74, 0x20, 0x61, 0x6c, -0x6c, 0x6f, 0x77, 0x73, 0x20, 0x75, 0x73, 0x20, 0x74, 0x6f, 0x0a, 0x2a, 0x20, 0x63, 0x61, 0x6c, -0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, -0x65, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x20, 0x63, 0x6f, 0x73, -0x74, 0x73, 0x20, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x74, 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x6c, -0x79, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x20, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, -0x20, 0x64, 0x69, 0x76, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x0a, 0x2a, 0x0a, 0x2a, -0x20, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, -0x3a, 0x20, 0x20, 0x20, 0x20, 0x5b, 0x20, 0x33, 0x32, 0x2c, 0x20, 0x38, 0x20, 0x5d, 0x0a, 0x2a, -0x20, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, -0x6e, 0x73, 0x3a, 0x20, 0x20, 0x5b, 0x20, 0x70, 0x61, 0x64, 0x64, 0x65, 0x64, 0x57, 0x69, 0x64, -0x74, 0x68, 0x2c, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x5d, 0x20, 0x2a, 0x2f, 0x0a, -0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x6d, 0x62, 0x5f, 0x69, -0x6e, 0x74, 0x72, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, -0x78, 0x38, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, -0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x0a, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x20, -0x20, 0x20, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x63, -0x6f, 0x73, 0x74, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, -0x73, 0x74, 0x61, 0x74, 0x73, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x61, 0x6d, 0x62, -0x64, 0x61, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, -0x68, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x6c, 0x6f, 0x77, 0x20, 0x29, 0x0a, 0x7b, -0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, -0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x32, 0x36, 0x35, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, -0x65, 0x20, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x32, -0x36, 0x36, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x63, -0x61, 0x63, 0x68, 0x65, 0x5b, 0x32, 0x33, 0x38, 0x35, 0x5d, 0x3b, 0x0a, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x62, 0x75, 0x66, 0x5b, 0x33, -0x32, 0x5d, 0x3b, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, -0x74, 0x6f, 0x70, 0x5b, 0x33, 0x32, 0x20, 0x2a, 0x20, 0x31, 0x36, 0x5d, 0x3b, 0x0a, 0x6c, 0x6f, -0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x33, -0x32, 0x20, 0x2a, 0x20, 0x38, 0x5d, 0x3b, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x5b, 0x33, 0x32, 0x5d, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6c, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x6c, -0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x6c, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, -0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x67, 0x78, -0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, -0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x67, 0x79, 0x20, 0x3d, 0x20, -0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, -0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x67, 0x69, 0x64, 0x78, 0x20, 0x3d, 0x20, 0x67, -0x65, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x67, 0x69, 0x64, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, -0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x69, 0x64, 0x20, 0x3d, 0x20, -0x6c, 0x79, 0x20, 0x2a, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, -0x69, 0x7a, 0x65, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x6c, 0x78, 0x3b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x4d, -0x41, 0x58, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x61, 0x73, 0x65, 0x78, 0x20, 0x3d, 0x20, -0x67, 0x69, 0x64, 0x78, 0x20, 0x3c, 0x3c, 0x20, 0x38, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, -0x61, 0x73, 0x65, 0x79, 0x20, 0x3d, 0x20, 0x28, 0x67, 0x69, 0x64, 0x79, 0x20, 0x3c, 0x3c, 0x20, -0x33, 0x29, 0x20, 0x2d, 0x20, 0x31, 0x3b, 0x0a, 0x2f, 0x2a, 0x20, 0x4c, 0x6f, 0x61, 0x64, 0x20, -0x33, 0x33, 0x20, 0x38, 0x78, 0x38, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x62, 0x6c, 0x6f, 0x63, -0x6b, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x73, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x20, 0x69, 0x6e, 0x74, -0x6f, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x63, 0x61, 0x63, 0x68, 0x65, 0x20, 0x2a, 0x2f, -0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x30, 0x3b, -0x20, 0x79, 0x20, 0x3c, 0x20, 0x39, 0x20, 0x26, 0x26, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, -0x5f, 0x69, 0x64, 0x20, 0x3c, 0x20, 0x28, 0x33, 0x33, 0x3c, 0x3c, 0x33, 0x29, 0x3e, 0x3e, 0x32, -0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, -0x3d, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x69, 0x64, 0x20, 0x3c, 0x3c, 0x20, 0x32, -0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x3d, 0x20, 0x72, -0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, -0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, -0x32, 0x29, 0x28, 0x78, 0x20, 0x2b, 0x20, 0x62, 0x61, 0x73, 0x65, 0x78, 0x2c, 0x20, 0x79, 0x20, -0x2b, 0x20, 0x62, 0x61, 0x73, 0x65, 0x79, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x63, 0x61, 0x63, 0x68, -0x65, 0x5b, 0x79, 0x20, 0x2a, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, -0x44, 0x45, 0x20, 0x2b, 0x20, 0x31, 0x20, 0x2b, 0x20, 0x78, 0x5d, 0x20, 0x3d, 0x20, 0x64, 0x61, -0x74, 0x61, 0x2e, 0x73, 0x30, 0x3b, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x79, 0x20, 0x2a, -0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, -0x31, 0x20, 0x2b, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x31, 0x5d, 0x20, 0x3d, 0x20, 0x64, 0x61, 0x74, -0x61, 0x2e, 0x73, 0x31, 0x3b, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x79, 0x20, 0x2a, 0x20, -0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, 0x31, -0x20, 0x2b, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x32, 0x5d, 0x20, 0x3d, 0x20, 0x64, 0x61, 0x74, 0x61, -0x2e, 0x73, 0x32, 0x3b, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x79, 0x20, 0x2a, 0x20, 0x43, -0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, 0x31, 0x20, -0x2b, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x33, 0x5d, 0x20, 0x3d, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2e, -0x73, 0x33, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x73, 0x20, 0x6f, 0x6e, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x65, 0x64, 0x67, -0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, -0x69, 0x64, 0x20, 0x3c, 0x20, 0x39, 0x20, 0x29, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x6c, -0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x69, 0x64, 0x20, 0x2a, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, -0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x5d, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, -0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, -0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x20, -0x62, 0x61, 0x73, 0x65, 0x78, 0x20, 0x2d, 0x20, 0x31, 0x2c, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, -0x72, 0x5f, 0x69, 0x64, 0x20, 0x2b, 0x20, 0x62, 0x61, 0x73, 0x65, 0x79, 0x29, 0x20, 0x29, 0x2e, -0x73, 0x30, 0x3b, 0x0a, 0x62, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x28, 0x20, 0x43, 0x4c, 0x4b, -0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4d, 0x45, 0x4d, 0x5f, 0x46, 0x45, 0x4e, 0x43, 0x45, -0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6a, 0x20, 0x3d, 0x20, 0x6c, 0x79, 0x3b, 0x0a, -0x74, 0x6f, 0x70, 0x5b, 0x6c, 0x78, 0x2a, 0x31, 0x36, 0x20, 0x2b, 0x20, 0x6a, 0x5d, 0x20, 0x3d, -0x20, 0x28, 0x20, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, -0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x43, -0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, 0x63, 0x6c, -0x61, 0x6d, 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x28, 0x20, 0x6a, 0x20, 0x2d, 0x20, 0x31, 0x2c, 0x20, -0x2d, 0x31, 0x2c, 0x20, 0x31, 0x35, 0x20, 0x29, 0x5d, 0x20, 0x2b, 0x0a, 0x32, 0x2a, 0x63, 0x61, -0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, -0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, -0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x5f, 0x69, -0x6e, 0x74, 0x28, 0x20, 0x6a, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x31, 0x35, 0x20, 0x29, 0x5d, 0x20, -0x2b, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, -0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x43, 0x41, -0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, 0x63, 0x6c, 0x61, -0x6d, 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x28, 0x20, 0x6a, 0x20, 0x2b, 0x20, 0x31, 0x2c, 0x20, 0x30, -0x2c, 0x20, 0x31, 0x35, 0x20, 0x29, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x6a, 0x20, 0x2b, 0x3d, 0x20, 0x38, 0x3b, 0x0a, 0x74, 0x6f, 0x70, 0x5b, -0x6c, 0x78, 0x2a, 0x31, 0x36, 0x20, 0x2b, 0x20, 0x6a, 0x5d, 0x20, 0x3d, 0x20, 0x28, 0x20, 0x63, -0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, -0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, -0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x5f, -0x69, 0x6e, 0x74, 0x28, 0x20, 0x6a, 0x20, 0x2d, 0x20, 0x31, 0x2c, 0x20, 0x2d, 0x31, 0x2c, 0x20, -0x31, 0x35, 0x20, 0x29, 0x5d, 0x20, 0x2b, 0x0a, 0x32, 0x2a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, -0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, -0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, -0x44, 0x45, 0x20, 0x2b, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x28, 0x20, -0x6a, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x31, 0x35, 0x20, 0x29, 0x5d, 0x20, 0x2b, 0x0a, 0x63, 0x61, -0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, -0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, -0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x2b, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x5f, 0x69, -0x6e, 0x74, 0x28, 0x20, 0x6a, 0x20, 0x2b, 0x20, 0x31, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x31, 0x35, -0x20, 0x29, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, -0x6c, 0x65, 0x66, 0x74, 0x5b, 0x6c, 0x78, 0x2a, 0x38, 0x20, 0x2b, 0x20, 0x6c, 0x79, 0x5d, 0x20, -0x3d, 0x20, 0x28, 0x20, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, -0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, -0x31, 0x20, 0x2b, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, -0x2a, 0x28, 0x6c, 0x79, 0x20, 0x2d, 0x20, 0x31, 0x29, 0x5d, 0x20, 0x2b, 0x0a, 0x32, 0x2a, 0x63, -0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, -0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x31, 0x20, 0x2b, 0x20, 0x43, -0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x2a, 0x6c, 0x79, 0x5d, 0x20, -0x2b, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, -0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, 0x31, 0x20, -0x2b, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x2a, 0x63, -0x6c, 0x61, 0x6d, 0x70, 0x28, 0x28, 0x6c, 0x79, 0x20, 0x2b, 0x20, 0x31, 0x29, 0x2c, 0x20, 0x30, -0x2c, 0x20, 0x37, 0x20, 0x29, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x30, 0x20, 0x3d, 0x3d, 0x20, 0x6c, 0x79, 0x20, 0x29, -0x0a, 0x7b, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x5b, 0x6c, 0x78, 0x5d, 0x20, -0x3d, 0x20, 0x28, 0x20, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, -0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x20, 0x2d, 0x20, -0x31, 0x5d, 0x20, 0x2b, 0x20, 0x32, 0x2a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, -0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, -0x20, 0x2d, 0x20, 0x31, 0x20, 0x2d, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, -0x49, 0x44, 0x45, 0x5d, 0x20, 0x2b, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, -0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, -0x20, 0x2d, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x5d, -0x20, 0x2b, 0x20, 0x32, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x63, 0x6f, 0x73, -0x74, 0x5f, 0x62, 0x75, 0x66, 0x5b, 0x6c, 0x78, 0x5d, 0x20, 0x3d, 0x20, 0x43, 0x4f, 0x53, 0x54, -0x5f, 0x4d, 0x41, 0x58, 0x3b, 0x0a, 0x7d, 0x0a, 0x62, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x28, -0x20, 0x43, 0x4c, 0x4b, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4d, 0x45, 0x4d, 0x5f, 0x46, -0x45, 0x4e, 0x43, 0x45, 0x20, 0x29, 0x3b, 0x0a, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x28, 0x20, -0x6c, 0x79, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x20, 0x30, 0x3a, 0x0a, 0x73, -0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, -0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x68, 0x28, 0x20, 0x26, 0x63, 0x61, 0x63, 0x68, -0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, -0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, -0x52, 0x49, 0x44, 0x45, 0x20, 0x29, 0x3b, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x63, -0x61, 0x73, 0x65, 0x20, 0x31, 0x3a, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, 0x32, -0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, -0x76, 0x28, 0x20, 0x26, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, -0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, -0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x29, 0x3b, 0x0a, -0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x20, 0x32, 0x3a, 0x0a, 0x73, -0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, -0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, 0x5f, 0x64, 0x63, 0x28, 0x20, 0x26, 0x63, 0x61, 0x63, -0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, -0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, -0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x29, 0x3b, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, -0x63, 0x61, 0x73, 0x65, 0x20, 0x33, 0x3a, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, -0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x63, -0x5f, 0x70, 0x28, 0x20, 0x26, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, -0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, -0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x20, 0x29, 0x3b, -0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x20, 0x34, 0x3a, 0x0a, -0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, -0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x64, 0x64, 0x72, 0x28, 0x20, 0x26, 0x63, 0x61, -0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, -0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, -0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x2c, 0x20, 0x26, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x36, 0x2a, -0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x26, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x38, 0x2a, 0x6c, 0x78, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x5b, 0x6c, 0x78, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x20, 0x35, 0x3a, -0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, -0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x76, 0x72, 0x28, 0x20, 0x26, 0x63, 0x61, -0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, -0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, -0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x2c, 0x20, 0x26, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x36, 0x2a, -0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x26, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x38, 0x2a, 0x6c, 0x78, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x5b, 0x6c, 0x78, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x20, 0x36, 0x3a, -0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, -0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x68, 0x64, 0x28, 0x20, 0x26, 0x63, 0x61, -0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, -0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, -0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x2c, 0x20, 0x26, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x36, 0x2a, -0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x26, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x38, 0x2a, 0x6c, 0x78, 0x5d, -0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x5b, 0x6c, 0x78, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x20, 0x37, 0x3a, -0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, -0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x68, 0x75, 0x28, 0x20, 0x26, 0x63, 0x61, -0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, -0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, -0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x2c, 0x20, 0x26, 0x6c, 0x65, 0x66, 0x74, 0x5b, 0x38, 0x2a, -0x6c, 0x78, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x64, 0x65, -0x66, 0x61, 0x75, 0x6c, 0x74, 0x3a, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x7d, 0x0a, -0x61, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x69, 0x6e, 0x28, 0x20, 0x26, 0x63, 0x6f, 0x73, 0x74, 0x5f, -0x62, 0x75, 0x66, 0x5b, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x29, 0x3b, -0x0a, 0x69, 0x66, 0x28, 0x20, 0x73, 0x6c, 0x6f, 0x77, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x73, 0x77, -0x69, 0x74, 0x63, 0x68, 0x28, 0x20, 0x6c, 0x79, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x63, 0x61, 0x73, -0x65, 0x20, 0x30, 0x3a, 0x20, 0x2f, 0x2f, 0x20, 0x44, 0x44, 0x4c, 0x0a, 0x73, 0x61, 0x74, 0x64, -0x20, 0x3d, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, -0x38, 0x78, 0x38, 0x5f, 0x64, 0x64, 0x6c, 0x28, 0x20, 0x26, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, -0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, -0x2a, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, -0x44, 0x45, 0x2c, 0x20, 0x26, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x36, 0x2a, 0x6c, 0x78, 0x5d, 0x20, -0x29, 0x3b, 0x0a, 0x61, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x69, 0x6e, 0x28, 0x20, 0x26, 0x63, 0x6f, -0x73, 0x74, 0x5f, 0x62, 0x75, 0x66, 0x5b, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x73, 0x61, 0x74, 0x64, -0x20, 0x29, 0x3b, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x20, -0x31, 0x3a, 0x20, 0x2f, 0x2f, 0x20, 0x56, 0x4c, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x20, 0x3d, 0x20, -0x78, 0x32, 0x36, 0x34, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x38, 0x78, 0x38, -0x5f, 0x76, 0x6c, 0x28, 0x20, 0x26, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5b, 0x42, 0x4c, 0x4f, 0x43, -0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x20, 0x2b, 0x20, 0x38, 0x2a, 0x6c, 0x78, 0x5d, -0x2c, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x2c, 0x20, -0x26, 0x74, 0x6f, 0x70, 0x5b, 0x31, 0x36, 0x2a, 0x6c, 0x78, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x61, -0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x69, 0x6e, 0x28, 0x20, 0x26, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x62, -0x75, 0x66, 0x5b, 0x6c, 0x78, 0x5d, 0x2c, 0x20, 0x73, 0x61, 0x74, 0x64, 0x20, 0x29, 0x3b, 0x0a, -0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3a, 0x0a, -0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x62, 0x61, 0x72, 0x72, 0x69, -0x65, 0x72, 0x28, 0x20, 0x43, 0x4c, 0x4b, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4d, 0x45, -0x4d, 0x5f, 0x46, 0x45, 0x4e, 0x43, 0x45, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x28, -0x30, 0x20, 0x3d, 0x3d, 0x20, 0x6c, 0x79, 0x29, 0x20, 0x26, 0x26, 0x20, 0x28, 0x67, 0x78, 0x20, -0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x29, 0x20, 0x29, 0x0a, 0x66, 0x65, -0x6e, 0x63, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x5b, 0x67, 0x69, -0x64, 0x79, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2b, 0x20, -0x67, 0x78, 0x5d, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x62, 0x75, 0x66, 0x5b, 0x6c, -0x78, 0x5d, 0x2b, 0x20, 0x35, 0x2a, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x3b, 0x0a, 0x69, 0x66, -0x28, 0x20, 0x67, 0x78, 0x20, 0x3c, 0x20, 0x32, 0x20, 0x26, 0x26, 0x20, 0x67, 0x79, 0x20, 0x3d, -0x3d, 0x20, 0x30, 0x20, 0x29, 0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, -0x73, 0x5b, 0x67, 0x78, 0x5d, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, -0x66, 0x20, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x44, 0x45, 0x0a, 0x23, -0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x4f, 0x46, 0x46, 0x53, -0x45, 0x54, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, -0x65, 0x6c, 0x20, 0x73, 0x75, 0x6d, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x20, 0x63, 0x6f, 0x73, -0x74, 0x73, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x6c, 0x61, -0x75, 0x6e, 0x63, 0x68, 0x20, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, -0x20, 0x5b, 0x32, 0x35, 0x36, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, -0x5d, 0x0a, 0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, -0x20, 0x73, 0x75, 0x6d, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x28, -0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x75, 0x69, -0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x69, 0x6e, 0x74, -0x72, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x2a, -0x69, 0x6e, 0x76, 0x5f, 0x71, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, -0x72, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x72, 0x6f, -0x77, 0x5f, 0x73, 0x61, 0x74, 0x64, 0x73, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, -0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, -0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, -0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, -0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x74, 0x64, 0x73, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, -0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, -0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, -0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, -0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, -0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3b, 0x20, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x67, -0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, -0x30, 0x20, 0x29, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x79, -0x20, 0x3d, 0x20, 0x78, 0x20, 0x2b, 0x20, 0x79, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, -0x64, 0x74, 0x68, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x5f, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x5b, -0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x61, 0x71, 0x20, 0x3d, 0x20, 0x28, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x2a, 0x20, 0x69, 0x6e, -0x76, 0x5f, 0x71, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x5b, -0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x2b, 0x20, 0x31, 0x32, 0x38, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x38, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, -0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x6d, 0x62, 0x20, 0x3d, 0x20, 0x28, 0x78, 0x20, 0x3e, 0x20, -0x30, 0x20, 0x26, 0x26, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, -0x68, 0x20, 0x2d, 0x20, 0x31, 0x20, 0x26, 0x26, 0x20, 0x79, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x26, -0x26, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, -0x2d, 0x20, 0x31, 0x29, 0x20, 0x7c, 0x7c, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, -0x20, 0x3c, 0x3d, 0x20, 0x32, 0x20, 0x7c, 0x7c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, -0x68, 0x74, 0x20, 0x3c, 0x3d, 0x20, 0x32, 0x3b, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x74, -0x64, 0x73, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x3b, 0x0a, 0x69, -0x66, 0x28, 0x20, 0x62, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, -0x5f, 0x6d, 0x62, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, -0x20, 0x2b, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, -0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x2b, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x71, -0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x20, -0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x5b, 0x32, 0x35, 0x36, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, -0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x74, -0x64, 0x73, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, -0x73, 0x75, 0x6d, 0x28, 0x20, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x74, 0x64, 0x73, 0x2c, 0x20, -0x78, 0x2c, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, -0x74, 0x5f, 0x65, 0x73, 0x74, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6c, -0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x75, 0x6d, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, -0x74, 0x2c, 0x20, 0x78, 0x2c, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x29, 0x3b, 0x0a, -0x63, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x3d, 0x20, 0x70, 0x61, -0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x75, 0x6d, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x2c, 0x20, 0x78, 0x2c, 0x20, 0x62, 0x75, 0x66, 0x66, -0x65, 0x72, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, -0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3d, 0x3d, 0x20, -0x30, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x72, 0x6f, 0x77, 0x5f, 0x73, -0x61, 0x74, 0x64, 0x73, 0x5b, 0x79, 0x5d, 0x20, 0x3d, 0x20, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x61, -0x74, 0x64, 0x73, 0x3b, 0x0a, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x28, -0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x20, 0x2b, 0x20, 0x43, -0x4f, 0x53, 0x54, 0x5f, 0x45, 0x53, 0x54, 0x2c, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x65, 0x73, 0x74, 0x20, 0x29, 0x3b, 0x0a, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x5f, 0x61, -0x64, 0x64, 0x28, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x20, -0x2b, 0x20, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x45, 0x53, 0x54, 0x5f, 0x41, 0x51, 0x2c, 0x20, 0x63, -0x6f, 0x73, 0x74, 0x5f, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x71, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, -0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x48, 0x69, 0x65, 0x72, 0x61, 0x72, 0x63, 0x68, 0x69, 0x63, 0x61, -0x6c, 0x20, 0x28, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x29, 0x20, 0x4f, 0x70, -0x65, 0x6e, 0x43, 0x4c, 0x20, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x6f, 0x74, 0x69, -0x6f, 0x6e, 0x20, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x6c, -0x69, 0x6e, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x66, 0x69, 0x6e, 0x64, 0x5f, 0x64, 0x6f, 0x77, -0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x28, 0x20, 0x69, 0x6e, -0x74, 0x20, 0x78, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, -0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, -0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x2f, 0x2a, 0x20, 0x65, -0x64, 0x67, 0x65, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x20, -0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, -0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x20, 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x61, -0x6e, 0x74, 0x2c, 0x20, 0x75, 0x73, 0x65, 0x20, 0x6e, 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 0x20, -0x2a, 0x2f, 0x0a, 0x78, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, 0x78, -0x20, 0x3e, 0x3e, 0x20, 0x31, 0x2c, 0x20, 0x28, 0x78, 0x20, 0x2d, 0x20, 0x28, 0x6d, 0x62, 0x5f, -0x77, 0x69, 0x64, 0x74, 0x68, 0x26, 0x31, 0x29, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x31, 0x2c, 0x20, -0x78, 0x20, 0x3d, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2d, 0x31, 0x20, -0x29, 0x3b, 0x0a, 0x79, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x28, 0x20, 0x79, -0x20, 0x3e, 0x3e, 0x20, 0x31, 0x2c, 0x20, 0x28, 0x79, 0x20, 0x2d, 0x20, 0x28, 0x6d, 0x62, 0x5f, -0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x26, 0x31, 0x29, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x31, 0x2c, -0x20, 0x79, 0x20, 0x3d, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x2d, -0x31, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x6d, 0x62, 0x5f, -0x77, 0x69, 0x64, 0x74, 0x68, 0x3e, 0x3e, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x79, 0x20, 0x2b, 0x20, -0x78, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x46, 0x6f, 0x75, 0x72, 0x20, 0x74, 0x68, 0x72, -0x65, 0x61, 0x64, 0x73, 0x20, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x61, -0x6e, 0x20, 0x38, 0x78, 0x38, 0x20, 0x53, 0x41, 0x44, 0x2e, 0x20, 0x20, 0x45, 0x61, 0x63, 0x68, -0x20, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x74, 0x77, 0x6f, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x20, 0x2a, -0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, -0x5f, 0x63, 0x6f, 0x6f, 0x70, 0x34, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, -0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x2c, 0x20, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x2c, 0x20, -0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, -0x64, 0x5f, 0x74, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, -0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x64, 0x78, 0x2c, -0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x2a, -0x63, 0x6f, 0x73, 0x74, 0x73, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, -0x73, 0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x69, 0x64, 0x78, 0x20, 0x3c, 0x3c, 0x20, 0x31, 0x3b, -0x0a, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x69, 0x64, -0x78, 0x20, 0x3c, 0x3c, 0x20, 0x31, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, -0x73, 0x2e, 0x78, 0x20, 0x3c, 0x20, 0x30, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x2f, 0x2a, 0x20, 0x73, -0x6c, 0x6f, 0x77, 0x20, 0x70, 0x61, 0x74, 0x68, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x4d, 0x56, -0x20, 0x67, 0x6f, 0x65, 0x73, 0x20, 0x70, 0x61, 0x73, 0x74, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, -0x65, 0x64, 0x67, 0x65, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x47, 0x50, 0x55, 0x20, 0x63, -0x6c, 0x61, 0x6d, 0x70, 0x73, 0x20, 0x72, 0x65, 0x61, 0x64, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, -0x0a, 0x2a, 0x20, 0x28, 0x2d, 0x31, 0x2c, 0x20, 0x30, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x28, 0x30, -0x2c, 0x30, 0x29, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x67, 0x65, 0x74, 0x20, -0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x20, 0x5b, 0x30, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x32, 0x2c, -0x20, 0x33, 0x5d, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x77, 0x68, 0x61, 0x74, 0x20, 0x79, 0x6f, -0x75, 0x20, 0x72, 0x65, 0x61, 0x6c, 0x6c, 0x79, 0x0a, 0x2a, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x20, -0x61, 0x72, 0x65, 0x20, 0x5b, 0x30, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x32, 0x5d, -0x0a, 0x2a, 0x2f, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x32, 0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, -0x0a, 0x7b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, -0x30, 0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, 0x78, 0x2b, 0x2b, 0x20, 0x29, 0x0a, -0x7b, 0x0a, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, -0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, -0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, -0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x3b, 0x0a, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x72, 0x65, -0x66, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, -0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, -0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, -0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x3b, 0x0a, 0x63, 0x6f, -0x73, 0x74, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, -0x65, 0x6e, 0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, -0x7d, 0x0a, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x7b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, 0x65, -0x6e, 0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x0a, 0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, -0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, -0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x29, -0x3b, 0x0a, 0x72, 0x65, 0x66, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, -0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x29, 0x3b, 0x0a, -0x63, 0x6f, 0x73, 0x74, 0x73, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, -0x66, 0x28, 0x20, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x20, 0x29, 0x3b, 0x0a, 0x65, -0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, -0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, -0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, -0x32, 0x29, 0x28, 0x34, 0x2c, 0x20, 0x30, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x66, 0x20, -0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, -0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, -0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, -0x34, 0x2c, 0x20, 0x30, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x20, 0x2b, -0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x65, 0x6e, 0x63, 0x2c, -0x20, 0x72, 0x65, 0x66, 0x20, 0x29, 0x3b, 0x0a, 0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, -0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, -0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x30, 0x2c, 0x20, 0x31, -0x29, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, 0x66, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, -0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x73, -0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, -0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x30, 0x2c, 0x20, 0x31, 0x29, 0x20, 0x29, -0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, -0x69, 0x66, 0x66, 0x28, 0x20, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x20, 0x29, 0x3b, -0x0a, 0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, -0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, -0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, -0x6e, 0x74, 0x32, 0x29, 0x28, 0x34, 0x2c, 0x20, 0x31, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x72, 0x65, -0x66, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, -0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, -0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, -0x29, 0x28, 0x34, 0x2c, 0x20, 0x31, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x73, -0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x65, 0x6e, -0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x20, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, -0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x2e, 0x73, 0x30, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x73, 0x2e, 0x73, 0x31, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x2e, 0x73, 0x32, 0x20, -0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x2e, 0x73, 0x33, 0x3b, 0x0a, 0x7d, 0x0a, 0x63, 0x6f, -0x73, 0x74, 0x73, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x3b, -0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x5b, 0x30, 0x5d, -0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x73, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x5b, 0x33, -0x5d, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x4f, 0x6e, 0x65, 0x20, 0x74, 0x68, 0x72, 0x65, -0x61, 0x64, 0x20, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x20, 0x38, 0x78, 0x38, 0x20, -0x53, 0x41, 0x44, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x64, 0x5f, 0x38, -0x78, 0x38, 0x5f, 0x69, 0x69, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, -0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, -0x20, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x2c, 0x20, 0x72, -0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, -0x5f, 0x74, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x72, -0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x66, 0x72, -0x65, 0x66, 0x70, 0x6f, 0x73, 0x2e, 0x78, 0x20, 0x3c, 0x20, 0x30, 0x20, 0x29, 0x0a, 0x7b, 0x0a, -0x2f, 0x2a, 0x20, 0x73, 0x6c, 0x6f, 0x77, 0x20, 0x70, 0x61, 0x74, 0x68, 0x20, 0x77, 0x68, 0x65, -0x6e, 0x20, 0x4d, 0x56, 0x20, 0x67, 0x6f, 0x65, 0x73, 0x20, 0x70, 0x61, 0x73, 0x74, 0x20, 0x6c, -0x65, 0x66, 0x74, 0x20, 0x65, 0x64, 0x67, 0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x20, -0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, -0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x38, 0x3b, -0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, -0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, -0x78, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x65, 0x6e, 0x63, -0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, -0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, -0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x3b, 0x0a, 0x75, 0x69, 0x6e, -0x74, 0x20, 0x72, 0x65, 0x66, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, -0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, -0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, -0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, -0x66, 0x66, 0x28, 0x20, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x20, 0x29, 0x3b, 0x0a, -0x7d, 0x0a, 0x7d, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x3b, -0x0a, 0x7d, 0x0a, 0x65, 0x6c, 0x73, 0x65, 0x0a, 0x7b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, -0x65, 0x6e, 0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x20, 0x79, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, -0x0a, 0x7b, 0x0a, 0x66, 0x6f, 0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, -0x30, 0x3b, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x38, 0x3b, 0x20, 0x78, 0x20, 0x2b, 0x3d, 0x20, 0x34, -0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, -0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, -0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, -0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x20, 0x29, -0x3b, 0x0a, 0x72, 0x65, 0x66, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, -0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, -0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x63, -0x6f, 0x73, 0x74, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, -0x20, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, -0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x2e, 0x73, 0x30, 0x20, -0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x2e, 0x73, 0x31, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x2e, 0x73, 0x32, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x2e, 0x73, 0x33, 0x3b, 0x0a, 0x7d, -0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x0a, 0x2a, 0x20, 0x68, 0x69, 0x65, 0x72, 0x61, 0x72, 0x63, 0x68, -0x69, 0x63, 0x61, 0x6c, 0x20, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x65, 0x73, 0x74, 0x69, -0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, -0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x20, 0x69, 0x73, -0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, -0x69, 0x6f, 0x6e, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x4d, 0x42, 0x20, 0x70, 0x65, 0x72, 0x20, 0x77, -0x6f, 0x72, 0x6b, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x69, 0x73, 0x20, 0x64, 0x65, 0x74, -0x65, 0x72, 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x6c, 0x63, 0x6c, 0x78, 0x20, -0x2f, 0x20, 0x34, 0x20, 0x2a, 0x20, 0x6c, 0x63, 0x6c, 0x79, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x20, 0x64, 0x69, 0x6d, -0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x20, 0x5b, 0x6d, 0x62, 0x5f, 0x77, 0x69, -0x64, 0x74, 0x68, 0x20, 0x2a, 0x20, 0x34, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, -0x68, 0x74, 0x5d, 0x0a, 0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, -0x69, 0x64, 0x20, 0x68, 0x69, 0x65, 0x72, 0x61, 0x72, 0x63, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x5f, -0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, -0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x20, 0x66, 0x65, 0x6e, -0x63, 0x2c, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x0a, 0x63, 0x6f, -0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, -0x32, 0x20, 0x2a, 0x69, 0x6e, 0x5f, 0x6d, 0x76, 0x73, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, -0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, -0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x76, 0x73, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, -0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x6f, 0x75, -0x74, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, -0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x2a, 0x6d, 0x76, 0x70, 0x5f, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x2c, 0x0a, 0x6c, 0x6f, 0x63, -0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x2a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x0a, 0x6c, 0x6f, -0x63, 0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x2a, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, -0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, -0x61, 0x6c, 0x65, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x5f, 0x73, 0x68, 0x69, 0x66, -0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x5f, -0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, -0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, -0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x32, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3e, 0x3d, 0x20, 0x6d, -0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x29, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, -0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, -0x65, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x69, -0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, -0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x26, 0x20, 0x33, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, -0x62, 0x5f, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, -0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, -0x5f, 0x78, 0x79, 0x20, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, -0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2b, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x3b, 0x0a, 0x63, 0x6f, -0x6e, 0x73, 0x74, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x20, -0x3d, 0x20, 0x38, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x20, -0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x6d, 0x62, 0x5f, 0x78, 0x2c, 0x20, 0x6d, -0x62, 0x5f, 0x79, 0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x3b, 0x0a, -0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, -0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x20, 0x2a, 0x20, 0x28, 0x67, 0x65, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, 0x30, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, -0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, -0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x2b, 0x3d, -0x20, 0x34, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x20, 0x3d, 0x20, 0x30, 0x3b, -0x0a, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x2b, 0x3d, 0x20, 0x34, 0x20, -0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3b, 0x0a, 0x6d, -0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x6d, 0x62, 0x5f, 0x69, 0x5d, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x6d, 0x76, 0x70, 0x20, 0x3d, 0x30, 0x3b, -0x0a, 0x69, 0x66, 0x28, 0x20, 0x21, 0x62, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x69, 0x74, -0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x23, 0x64, 0x65, 0x66, -0x69, 0x6e, 0x65, 0x20, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x44, 0x58, 0x2c, 0x20, 0x44, 0x59, 0x20, -0x29, 0x5c, 0x0a, 0x7b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, 0x78, 0x20, 0x3d, 0x20, 0x6d, -0x62, 0x5f, 0x78, 0x20, 0x2b, 0x20, 0x44, 0x58, 0x3b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x70, -0x79, 0x20, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x2b, 0x20, 0x44, 0x59, 0x3b, 0x5c, 0x0a, -0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x5d, -0x20, 0x3d, 0x20, 0x62, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, -0x20, 0x3f, 0x20, 0x69, 0x6e, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x66, 0x69, 0x6e, 0x64, 0x5f, 0x64, -0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x28, 0x20, -0x70, 0x78, 0x2c, 0x20, 0x70, 0x79, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, -0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x29, 0x5d, 0x20, 0x3a, -0x20, 0x5c, 0x0a, 0x69, 0x6e, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, -0x74, 0x68, 0x20, 0x2a, 0x20, 0x70, 0x79, 0x20, 0x2b, 0x20, 0x70, 0x78, 0x5d, 0x3b, 0x5c, 0x0a, -0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x5d, -0x20, 0x3e, 0x3e, 0x3d, 0x20, 0x28, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x29, 0x20, 0x73, 0x63, 0x61, -0x6c, 0x65, 0x3b, 0x5c, 0x0a, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x2b, 0x2b, 0x3b, 0x5c, 0x0a, 0x7d, -0x0a, 0x2f, 0x2a, 0x20, 0x46, 0x69, 0x6e, 0x64, 0x20, 0x4d, 0x56, 0x50, 0x20, 0x66, 0x72, 0x6f, -0x6d, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x4d, 0x56, 0x43, 0x73, -0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x62, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, -0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x20, 0x29, 0x0a, 0x7b, -0x0a, 0x2f, 0x2a, 0x20, 0x6f, 0x64, 0x64, 0x20, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, -0x6e, 0x73, 0x3a, 0x20, 0x64, 0x65, 0x72, 0x69, 0x76, 0x65, 0x20, 0x4d, 0x56, 0x50, 0x20, 0x66, -0x72, 0x6f, 0x6d, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x69, 0x67, -0x68, 0x74, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3c, -0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2d, 0x20, 0x31, 0x20, 0x29, 0x0a, -0x4d, 0x56, 0x43, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, -0x20, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, -0x74, 0x20, 0x2d, 0x20, 0x31, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x30, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, -0x3e, 0x20, 0x62, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, -0x29, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x2d, 0x31, 0x2c, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, -0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, -0x64, 0x74, 0x68, 0x20, 0x2d, 0x20, 0x31, 0x20, 0x29, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x31, -0x2c, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x65, 0x6c, 0x73, 0x65, 0x0a, -0x7b, 0x0a, 0x2f, 0x2a, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x20, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, -0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x64, 0x65, 0x72, 0x69, 0x76, 0x65, 0x20, 0x4d, 0x56, 0x50, -0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x75, 0x70, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6c, 0x65, 0x66, -0x74, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3e, 0x20, -0x30, 0x20, 0x29, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x2d, 0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, -0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x29, -0x0a, 0x7b, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x2d, 0x31, 0x20, 0x29, 0x3b, -0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x77, -0x69, 0x64, 0x74, 0x68, 0x20, 0x2d, 0x20, 0x31, 0x20, 0x29, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, -0x31, 0x2c, 0x20, 0x2d, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, -0x78, 0x20, 0x3e, 0x20, 0x62, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, -0x78, 0x20, 0x29, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x2d, 0x31, 0x2c, 0x20, 0x2d, 0x31, 0x20, -0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x4d, 0x56, -0x43, 0x0a, 0x6d, 0x76, 0x70, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x20, 0x3c, -0x3d, 0x20, 0x31, 0x29, 0x20, 0x3f, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, -0x6e, 0x74, 0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x5b, 0x30, 0x5d, 0x29, 0x20, 0x3a, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x6d, 0x65, 0x64, -0x69, 0x61, 0x6e, 0x5f, 0x6d, 0x76, 0x28, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, -0x31, 0x5d, 0x2c, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x32, 0x5d, -0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, -0x20, 0x6d, 0x76, 0x70, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, -0x20, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x6d, 0x76, 0x70, 0x20, 0x61, 0x6e, -0x64, 0x20, 0x77, 0x65, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x63, 0x68, -0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x2e, 0x20, 0x20, 0x57, 0x65, -0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x0a, 0x2a, 0x20, 0x77, 0x65, 0x27, 0x72, 0x65, 0x20, 0x67, 0x6f, -0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x72, 0x72, 0x69, 0x76, 0x65, 0x20, 0x61, 0x74, -0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x4d, 0x56, 0x20, 0x61, 0x67, 0x61, -0x69, 0x6e, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x6a, 0x75, 0x73, 0x74, 0x20, 0x63, 0x6f, 0x70, 0x79, -0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x0a, 0x2a, 0x20, -0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x6f, 0x75, 0x72, 0x20, 0x6f, 0x75, -0x74, 0x70, 0x75, 0x74, 0x2e, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x21, 0x62, 0x5f, -0x73, 0x68, 0x69, 0x66, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x26, 0x26, 0x20, 0x6d, -0x76, 0x70, 0x2e, 0x78, 0x20, 0x3d, 0x3d, 0x20, 0x6d, 0x76, 0x70, 0x5f, 0x62, 0x75, 0x66, 0x66, -0x65, 0x72, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x2e, 0x78, 0x20, 0x26, 0x26, 0x20, 0x6d, -0x76, 0x70, 0x2e, 0x79, 0x20, 0x3d, 0x3d, 0x20, 0x6d, 0x76, 0x70, 0x5f, 0x62, 0x75, 0x66, 0x66, -0x65, 0x72, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x2e, 0x79, 0x20, 0x29, 0x0a, 0x7b, 0x0a, -0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x3d, -0x20, 0x69, 0x6e, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x3b, 0x0a, -0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, 0x7d, 0x0a, 0x6d, 0x76, 0x70, 0x5f, 0x62, 0x75, -0x66, 0x66, 0x65, 0x72, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x3d, 0x20, 0x63, 0x6f, -0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x5f, 0x73, 0x61, 0x74, -0x28, 0x6d, 0x76, 0x70, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x6d, 0x76, 0x5f, 0x6d, -0x69, 0x6e, 0x20, 0x3d, 0x20, 0x2d, 0x6d, 0x62, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x20, 0x2a, 0x20, -0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x6d, 0x62, 0x5f, 0x78, 0x2c, 0x20, 0x6d, 0x62, 0x5f, -0x79, 0x29, 0x20, 0x2d, 0x20, 0x34, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x6d, 0x76, 0x5f, -0x6d, 0x61, 0x78, 0x20, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x20, 0x2a, 0x20, -0x28, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, -0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x29, 0x20, 0x2d, 0x20, 0x28, -0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x6d, 0x62, 0x5f, 0x78, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x79, -0x29, 0x20, 0x2d, 0x20, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x34, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, -0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x28, -0x6d, 0x76, 0x70, 0x2c, 0x20, 0x6d, 0x76, 0x5f, 0x6d, 0x69, 0x6e, 0x2c, 0x20, 0x6d, 0x76, 0x5f, -0x6d, 0x61, 0x78, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x72, 0x65, 0x66, 0x63, 0x72, -0x64, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x20, 0x2b, 0x20, 0x62, 0x65, 0x73, 0x74, -0x6d, 0x76, 0x3b, 0x0a, 0x2f, 0x2a, 0x20, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x20, 0x63, -0x6f, 0x73, 0x74, 0x20, 0x61, 0x74, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x20, 0x2a, 0x2f, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x64, -0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, 0x5f, 0x63, 0x6f, 0x6f, 0x70, 0x34, 0x28, 0x20, 0x66, -0x65, 0x6e, 0x63, 0x2c, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, -0x2c, 0x20, 0x72, 0x65, 0x66, 0x63, 0x72, 0x64, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x2c, 0x20, -0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x29, 0x20, 0x2b, 0x0a, 0x6c, -0x61, 0x6d, 0x62, 0x64, 0x61, 0x20, 0x2a, 0x20, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x28, -0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, -0x76, 0x2c, 0x20, 0x6d, 0x76, 0x70, 0x20, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x28, 0x32, 0x20, 0x2b, -0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x64, 0x6f, 0x0a, 0x7b, 0x0a, -0x2f, 0x2a, 0x20, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x73, -0x20, 0x61, 0x74, 0x20, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, -0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x20, 0x2a, 0x2f, 0x0a, 0x72, 0x65, 0x66, 0x63, 0x72, -0x64, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x20, 0x2b, 0x20, 0x62, 0x65, 0x73, 0x74, -0x6d, 0x76, 0x20, 0x2b, 0x20, 0x64, 0x69, 0x61, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x5b, 0x6d, 0x62, -0x5f, 0x69, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x20, -0x3d, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x20, 0x2b, 0x20, 0x64, 0x69, 0x61, 0x5f, 0x6f, -0x66, 0x66, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x69, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, -0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, -0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x2c, 0x20, 0x66, -0x72, 0x65, 0x66, 0x2c, 0x20, 0x72, 0x65, 0x66, 0x63, 0x72, 0x64, 0x20, 0x29, 0x20, 0x2b, 0x0a, -0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x20, 0x2a, 0x20, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, -0x28, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x74, 0x72, 0x79, 0x6d, -0x76, 0x2c, 0x20, 0x6d, 0x76, 0x70, 0x20, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x28, 0x32, 0x20, 0x2b, -0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, -0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x6d, 0x62, 0x5f, 0x69, 0x5d, 0x20, 0x3d, 0x20, 0x28, 0x63, -0x6f, 0x73, 0x74, 0x3c, 0x3c, 0x32, 0x29, 0x20, 0x7c, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x3b, 0x0a, -0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x6d, 0x69, 0x6e, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x28, 0x20, -0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6d, -0x69, 0x6e, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x32, -0x5d, 0x2c, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x33, 0x5d, -0x20, 0x29, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x28, 0x63, 0x6f, 0x73, -0x74, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, -0x20, 0x29, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, -0x20, 0x2b, 0x3d, 0x20, 0x64, 0x69, 0x61, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x5b, 0x63, 0x6f, 0x73, -0x74, 0x26, 0x33, 0x5d, 0x3b, 0x0a, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x3e, 0x3e, 0x32, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, -0x76, 0x2e, 0x78, 0x20, 0x3e, 0x3d, 0x20, 0x6d, 0x76, 0x5f, 0x6d, 0x61, 0x78, 0x2e, 0x78, 0x20, -0x7c, 0x7c, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x2e, 0x78, 0x20, 0x3c, 0x3d, 0x20, 0x6d, -0x76, 0x5f, 0x6d, 0x69, 0x6e, 0x2e, 0x78, 0x20, 0x7c, 0x7c, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, -0x76, 0x2e, 0x79, 0x20, 0x3e, 0x3d, 0x20, 0x6d, 0x76, 0x5f, 0x6d, 0x61, 0x78, 0x2e, 0x79, 0x20, -0x7c, 0x7c, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x2e, 0x79, 0x20, 0x3c, 0x3d, 0x20, 0x6d, -0x76, 0x5f, 0x6d, 0x69, 0x6e, 0x2e, 0x79, 0x20, 0x29, 0x0a, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x3b, -0x0a, 0x7d, 0x0a, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x28, 0x20, 0x2d, 0x2d, 0x6d, 0x65, 0x5f, 0x72, -0x61, 0x6e, 0x67, 0x65, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, -0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x30, 0x2c, 0x20, 0x64, 0x69, 0x66, 0x66, -0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x43, 0x4f, -0x53, 0x54, 0x5f, 0x4d, 0x56, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x41, 0x44, 0x28, 0x20, 0x4c, 0x20, -0x29, 0x5c, 0x0a, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x63, 0x6c, 0x61, 0x6d, 0x70, -0x28, 0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x2c, 0x20, 0x6d, 0x76, 0x5f, 0x6d, 0x69, 0x6e, 0x2c, -0x20, 0x6d, 0x76, 0x5f, 0x6d, 0x61, 0x78, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x64, 0x69, 0x66, 0x66, -0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x32, 0x5f, -0x73, 0x61, 0x74, 0x28, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x6d, 0x76, -0x70, 0x2c, 0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x20, 0x29, 0x29, 0x3b, 0x5c, 0x0a, 0x69, 0x66, -0x28, 0x20, 0x64, 0x69, 0x66, 0x66, 0x2e, 0x78, 0x20, 0x3e, 0x20, 0x31, 0x20, 0x7c, 0x7c, 0x20, -0x64, 0x69, 0x66, 0x66, 0x2e, 0x79, 0x20, 0x3e, 0x20, 0x31, 0x20, 0x29, 0x20, 0x7b, 0x5c, 0x0a, -0x69, 0x6e, 0x74, 0x32, 0x20, 0x72, 0x65, 0x66, 0x63, 0x72, 0x64, 0x20, 0x3d, 0x20, 0x63, 0x6f, -0x6f, 0x72, 0x64, 0x20, 0x2b, 0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x3b, 0x5c, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x64, 0x5f, 0x38, 0x78, 0x38, -0x5f, 0x69, 0x69, 0x5f, 0x63, 0x6f, 0x6f, 0x70, 0x34, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, -0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x72, 0x65, -0x66, 0x63, 0x72, 0x64, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x2c, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x29, 0x20, 0x2b, 0x5c, 0x0a, 0x4c, 0x20, 0x2a, 0x20, -0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x28, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, -0x66, 0x28, 0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x2c, 0x20, 0x6d, 0x76, 0x70, 0x20, 0x29, 0x20, -0x3c, 0x3c, 0x20, 0x28, 0x32, 0x20, 0x2b, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x29, 0x20, 0x29, -0x3b, 0x5c, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3c, 0x20, 0x62, 0x63, -0x6f, 0x73, 0x74, 0x20, 0x29, 0x20, 0x7b, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, -0x63, 0x6f, 0x73, 0x74, 0x3b, 0x20, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x74, -0x72, 0x79, 0x6d, 0x76, 0x3b, 0x20, 0x7d, 0x20, 0x7d, 0x0a, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x4d, -0x56, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x41, 0x44, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, -0x66, 0x28, 0x20, 0x21, 0x62, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x72, -0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x2f, 0x2a, 0x20, 0x74, 0x72, 0x79, -0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x61, 0x74, 0x20, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, -0x73, 0x20, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x27, 0x73, 0x20, 0x4d, 0x56, -0x2c, 0x20, 0x69, 0x66, 0x20, 0x4d, 0x56, 0x50, 0x20, 0x77, 0x61, 0x73, 0x20, 0x74, 0x6f, 0x6f, -0x20, 0x66, 0x61, 0x72, 0x20, 0x61, 0x77, 0x61, 0x79, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, -0x32, 0x20, 0x70, 0x72, 0x65, 0x76, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x62, 0x5f, 0x73, 0x68, 0x69, -0x66, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x3f, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, -0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, 0x69, 0x6e, 0x5f, 0x6d, -0x76, 0x73, 0x5b, 0x66, 0x69, 0x6e, 0x64, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, -0x65, 0x5f, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x2c, 0x20, 0x6d, -0x62, 0x5f, 0x79, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x20, 0x6d, -0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x29, 0x5d, 0x29, 0x20, 0x3a, 0x20, 0x63, -0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, -0x69, 0x6e, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x29, 0x3b, 0x0a, -0x70, 0x72, 0x65, 0x76, 0x6d, 0x76, 0x20, 0x3e, 0x3e, 0x3d, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, -0x3b, 0x0a, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x65, 0x76, 0x6d, 0x76, -0x3b, 0x0a, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x4d, 0x56, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x41, 0x44, -0x28, 0x20, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x66, 0x6f, -0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, -0x3c, 0x20, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x3b, 0x20, 0x69, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, -0x0a, 0x2f, 0x2a, 0x20, 0x74, 0x72, 0x79, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x61, 0x74, 0x20, -0x65, 0x61, 0x63, 0x68, 0x20, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x20, 0x4d, -0x56, 0x2c, 0x20, 0x69, 0x66, 0x20, 0x4d, 0x56, 0x50, 0x20, 0x77, 0x61, 0x73, 0x20, 0x74, 0x6f, -0x6f, 0x20, 0x66, 0x61, 0x72, 0x20, 0x61, 0x77, 0x61, 0x79, 0x20, 0x2a, 0x2f, 0x0a, 0x74, 0x72, -0x79, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, -0x74, 0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x5b, 0x69, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x43, 0x4f, 0x53, 0x54, 0x5f, 0x4d, 0x56, 0x5f, -0x4e, 0x4f, 0x5f, 0x50, 0x41, 0x44, 0x28, 0x20, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x20, 0x29, -0x3b, 0x0a, 0x7d, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x20, 0x3d, 0x3d, 0x20, -0x30, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x6d, 0x76, 0x20, 0x3c, 0x3c, 0x3d, -0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x3b, 0x0a, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x76, 0x73, 0x5b, -0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, -0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, 0x62, 0x65, 0x73, 0x74, -0x6d, 0x76, 0x29, 0x3b, 0x0a, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, -0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x3d, 0x20, 0x6d, 0x69, 0x6e, 0x28, 0x20, -0x62, 0x63, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x4c, 0x4f, 0x57, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, -0x53, 0x54, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x7d, 0x0a, 0x2f, -0x2a, 0x20, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x4c, 0x20, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x20, -0x73, 0x75, 0x62, 0x70, 0x65, 0x6c, 0x20, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x2a, 0x2f, -0x0a, 0x2f, 0x2a, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x20, -0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x20, 0x38, 0x78, 0x38, 0x20, 0x53, 0x41, 0x44, -0x2e, 0x20, 0x20, 0x34, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x20, 0x70, 0x65, 0x72, -0x20, 0x4d, 0x42, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x34, 0x20, 0x44, 0x49, -0x41, 0x20, 0x48, 0x50, 0x45, 0x4c, 0x20, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x73, 0x20, 0x61, -0x72, 0x65, 0x0a, 0x2a, 0x20, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20, -0x73, 0x69, 0x6d, 0x75, 0x6c, 0x74, 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x20, 0x2a, -0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, -0x5f, 0x68, 0x70, 0x65, 0x6c, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, -0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, -0x20, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x2c, 0x20, 0x72, -0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, -0x5f, 0x74, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, -0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, -0x74, 0x32, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x71, 0x70, 0x6f, -0x73, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, -0x5f, 0x69, 0x64, 0x78, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x2e, 0x78, 0x20, -0x26, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x71, 0x70, -0x6f, 0x73, 0x2e, 0x79, 0x20, 0x26, 0x20, 0x32, 0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, -0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, -0x20, 0x68, 0x70, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x78, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, -0x20, 0x63, 0x6f, 0x73, 0x74, 0x34, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, 0x72, 0x28, -0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x79, 0x20, 0x3c, 0x20, -0x38, 0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, -0x20, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x34, 0x3b, 0x0a, 0x65, 0x6e, 0x63, 0x20, -0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, -0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, -0x30, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, -0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, -0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x2b, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x30, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x2e, 0x73, -0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x29, -0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, 0x73, 0x31, -0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, -0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, -0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, -0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x31, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x2e, -0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, -0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, 0x73, -0x32, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, -0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, -0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, -0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x32, 0x2c, 0x20, 0x79, 0x29, 0x29, -0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, -0x74, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, -0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, -0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, -0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, -0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x33, 0x2c, 0x20, 0x79, 0x29, -0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, -0x66, 0x74, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, -0x34, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x65, -0x6e, 0x63, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x34, 0x20, 0x29, 0x3b, 0x0a, 0x65, 0x6e, 0x63, 0x20, -0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, -0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, -0x34, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, 0x73, 0x30, 0x20, -0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, -0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, -0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, 0x2b, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x34, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x2e, 0x73, -0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x29, -0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, 0x73, 0x31, -0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, -0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, -0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, 0x20, -0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x35, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x2e, -0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, -0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, 0x73, -0x32, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, -0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, -0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, 0x73, -0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x36, 0x2c, 0x20, 0x79, 0x29, 0x29, -0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, -0x74, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x76, 0x61, 0x6c, 0x34, 0x2e, -0x73, 0x33, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, -0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, -0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x70, 0x6f, -0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x37, 0x2c, 0x20, 0x79, 0x29, -0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, -0x66, 0x74, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, -0x34, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x65, -0x6e, 0x63, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x34, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x72, 0x65, -0x74, 0x75, 0x72, 0x6e, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x34, 0x2e, 0x73, 0x30, 0x20, 0x2b, 0x20, -0x63, 0x6f, 0x73, 0x74, 0x34, 0x2e, 0x73, 0x31, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x34, -0x2e, 0x73, 0x32, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x34, 0x2e, 0x73, 0x33, 0x3b, 0x0a, -0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x4f, 0x6e, 0x65, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x20, -0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x73, 0x20, 0x38, 0x78, 0x38, 0x20, 0x53, 0x41, 0x44, -0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x61, 0x74, 0x20, 0x61, 0x20, 0x51, 0x50, 0x45, 0x4c, 0x20, -0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x6e, 0x20, 0x48, -0x50, 0x45, 0x4c, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x73, 0x61, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, 0x5f, 0x71, 0x70, 0x65, 0x6c, -0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, -0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x32, -0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x2c, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, -0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x66, 0x72, -0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x32, 0x20, -0x71, 0x70, 0x6f, 0x73, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x72, -0x65, 0x66, 0x41, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x20, 0x3e, 0x3e, -0x20, 0x32, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x41, 0x20, 0x3d, 0x20, -0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x2e, 0x78, 0x20, 0x26, 0x20, 0x32, 0x29, 0x20, 0x3e, 0x3e, -0x20, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x20, 0x26, 0x20, -0x32, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x42, 0x20, 0x3d, -0x20, 0x71, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x20, 0x26, -0x20, 0x31, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x31, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, -0x66, 0x72, 0x65, 0x66, 0x42, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x42, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x42, -0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x42, 0x2e, 0x78, 0x20, 0x26, 0x20, 0x32, -0x29, 0x20, 0x3e, 0x3e, 0x20, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x42, -0x2e, 0x79, 0x20, 0x26, 0x20, 0x32, 0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x61, -0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x30, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, 0x20, -0x68, 0x70, 0x65, 0x6c, 0x41, 0x2c, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, -0x74, 0x31, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x42, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x66, 0x6f, -0x72, 0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x79, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x79, 0x20, -0x3c, 0x20, 0x38, 0x3b, 0x20, 0x79, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x66, 0x6f, 0x72, -0x28, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x78, 0x20, 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x78, 0x20, 0x3c, -0x20, 0x38, 0x3b, 0x20, 0x78, 0x2b, 0x2b, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x75, 0x69, 0x6e, 0x74, -0x20, 0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, -0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, -0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, -0x6e, 0x74, 0x32, 0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x2e, 0x73, 0x30, 0x3b, 0x0a, -0x75, 0x69, 0x6e, 0x74, 0x20, 0x76, 0x41, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, -0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, -0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, -0x72, 0x65, 0x66, 0x41, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, -0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, 0x20, 0x6d, 0x61, -0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x30, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x46, -0x46, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x76, 0x42, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, -0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, -0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, -0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x42, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, -0x74, 0x32, 0x29, 0x28, 0x78, 0x2c, 0x20, 0x79, 0x29, 0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, -0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x31, 0x29, 0x20, 0x26, 0x20, -0x30, 0x78, 0x46, 0x46, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, -0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x72, 0x68, 0x61, -0x64, 0x64, 0x28, 0x20, 0x76, 0x41, 0x2c, 0x20, 0x76, 0x42, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, -0x7d, 0x0a, 0x7d, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x3b, -0x0a, 0x7d, 0x0a, 0x2f, 0x2a, 0x20, 0x46, 0x6f, 0x75, 0x72, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, -0x64, 0x73, 0x20, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x20, 0x38, 0x78, 0x38, 0x20, 0x53, -0x41, 0x54, 0x44, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x61, 0x74, 0x20, 0x61, 0x20, 0x51, 0x50, -0x45, 0x4c, 0x20, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, -0x6e, 0x20, 0x48, 0x50, 0x45, 0x4c, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x0a, 0x2a, 0x0a, 0x2a, -0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x20, 0x63, 0x6f, 0x6c, -0x6c, 0x65, 0x63, 0x74, 0x73, 0x20, 0x31, 0x2f, 0x34, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, -0x20, 0x72, 0x6f, 0x77, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x69, 0x66, 0x66, 0x73, 0x20, 0x61, -0x6e, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x20, 0x6f, 0x6e, 0x65, -0x20, 0x71, 0x75, 0x61, 0x72, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x0a, 0x2a, 0x20, 0x74, 0x68, -0x65, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x0a, 0x2a, 0x2f, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, 0x5f, -0x71, 0x70, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6f, 0x70, 0x34, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, -0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, -0x6f, 0x73, 0x2c, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, -0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, -0x6e, 0x65, 0x73, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x2c, 0x0a, -0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x2a, 0x74, 0x6d, -0x70, 0x70, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x64, 0x78, 0x20, 0x29, 0x0a, 0x7b, 0x0a, -0x76, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6c, 0x65, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, 0x73, -0x75, 0x6d, 0x32, 0x5f, 0x74, 0x28, 0x20, 0x2a, 0x74, 0x6d, 0x70, 0x20, 0x29, 0x5b, 0x34, 0x5d, -0x20, 0x3d, 0x20, 0x28, 0x76, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6c, 0x65, 0x20, 0x6c, 0x6f, 0x63, -0x61, 0x6c, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x28, 0x20, 0x2a, 0x20, 0x29, 0x5b, 0x34, -0x5d, 0x29, 0x74, 0x6d, 0x70, 0x70, 0x3b, 0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x62, -0x30, 0x2c, 0x20, 0x62, 0x31, 0x2c, 0x20, 0x62, 0x32, 0x2c, 0x20, 0x62, 0x33, 0x3b, 0x0a, 0x69, -0x6e, 0x74, 0x32, 0x20, 0x66, 0x72, 0x65, 0x66, 0x41, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x71, -0x70, 0x6f, 0x73, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x70, -0x65, 0x6c, 0x41, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x2e, 0x78, 0x26, 0x32, -0x29, 0x3e, 0x3e, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x26, -0x32, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x42, 0x20, 0x3d, -0x20, 0x71, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x28, -0x28, 0x71, 0x70, 0x6f, 0x73, 0x2e, 0x78, 0x26, 0x31, 0x29, 0x3c, 0x3c, 0x31, 0x29, 0x2c, 0x20, -0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x26, 0x31, 0x29, 0x3c, 0x3c, 0x31, 0x29, 0x29, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x66, 0x72, 0x65, 0x66, 0x42, 0x70, 0x6f, 0x73, 0x20, -0x3d, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x42, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x69, 0x6e, -0x74, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x42, 0x20, 0x3d, 0x20, 0x28, 0x28, 0x71, 0x70, 0x6f, 0x73, -0x42, 0x2e, 0x78, 0x26, 0x32, 0x29, 0x3e, 0x3e, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x71, 0x70, -0x6f, 0x73, 0x42, 0x2e, 0x79, 0x26, 0x32, 0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x6d, -0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x30, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, -0x20, 0x68, 0x70, 0x65, 0x6c, 0x41, 0x2c, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, -0x66, 0x74, 0x31, 0x20, 0x3d, 0x20, 0x38, 0x20, 0x2a, 0x20, 0x68, 0x70, 0x65, 0x6c, 0x42, 0x3b, -0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x76, 0x41, 0x2c, 0x20, 0x76, 0x42, 0x3b, 0x0a, 0x75, 0x69, -0x6e, 0x74, 0x20, 0x61, 0x30, 0x2c, 0x20, 0x61, 0x31, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, -0x65, 0x6e, 0x63, 0x3b, 0x0a, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x73, 0x75, 0x6d, 0x20, -0x3d, 0x20, 0x30, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x52, 0x45, 0x41, -0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x28, 0x20, 0x4f, 0x55, 0x54, 0x2c, 0x20, 0x58, 0x20, 0x29, -0x5c, 0x0a, 0x65, 0x6e, 0x63, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, -0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, -0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x58, 0x2c, 0x20, 0x69, 0x64, 0x78, 0x29, 0x20, 0x29, 0x2e, -0x73, 0x30, 0x3b, 0x5c, 0x0a, 0x76, 0x41, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, 0x64, 0x5f, -0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, -0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x66, -0x72, 0x65, 0x66, 0x41, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, -0x28, 0x58, 0x2c, 0x20, 0x69, 0x64, 0x78, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x20, 0x3e, 0x3e, -0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x30, 0x29, 0x20, 0x26, 0x20, -0x30, 0x78, 0x46, 0x46, 0x3b, 0x5c, 0x0a, 0x76, 0x42, 0x20, 0x3d, 0x20, 0x28, 0x72, 0x65, 0x61, -0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, -0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, -0x20, 0x66, 0x72, 0x65, 0x66, 0x42, 0x70, 0x6f, 0x73, 0x20, 0x2b, 0x20, 0x28, 0x69, 0x6e, 0x74, -0x32, 0x29, 0x28, 0x58, 0x2c, 0x20, 0x69, 0x64, 0x78, 0x29, 0x20, 0x29, 0x2e, 0x73, 0x30, 0x20, -0x3e, 0x3e, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x68, 0x69, 0x66, 0x74, 0x31, 0x29, 0x20, -0x26, 0x20, 0x30, 0x78, 0x46, 0x46, 0x3b, 0x5c, 0x0a, 0x4f, 0x55, 0x54, 0x20, 0x3d, 0x20, 0x65, -0x6e, 0x63, 0x20, 0x2d, 0x20, 0x72, 0x68, 0x61, 0x64, 0x64, 0x28, 0x20, 0x76, 0x41, 0x2c, 0x20, -0x76, 0x42, 0x20, 0x29, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x52, 0x45, -0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, 0x28, 0x20, 0x4f, 0x55, 0x54, 0x2c, -0x20, 0x61, 0x2c, 0x20, 0x62, 0x20, 0x29, 0x5c, 0x0a, 0x7b, 0x5c, 0x0a, 0x52, 0x45, 0x41, 0x44, -0x5f, 0x44, 0x49, 0x46, 0x46, 0x28, 0x20, 0x61, 0x30, 0x2c, 0x20, 0x61, 0x20, 0x29, 0x3b, 0x5c, -0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x28, 0x20, 0x61, 0x31, 0x2c, 0x20, -0x62, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x4f, 0x55, 0x54, 0x20, 0x3d, 0x20, 0x61, 0x30, 0x20, 0x2b, -0x20, 0x28, 0x61, 0x31, 0x3c, 0x3c, 0x42, 0x49, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, -0x55, 0x4d, 0x29, 0x3b, 0x5c, 0x0a, 0x7d, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, -0x52, 0x4f, 0x57, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x53, 0x41, 0x54, 0x44, 0x28, 0x20, 0x61, 0x2c, -0x20, 0x62, 0x20, 0x29, 0x5c, 0x0a, 0x7b, 0x5c, 0x0a, 0x66, 0x65, 0x6e, 0x63, 0x70, 0x6f, 0x73, -0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x3b, 0x5c, 0x0a, 0x66, 0x72, 0x65, 0x66, 0x41, 0x70, -0x6f, 0x73, 0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x5c, 0x0a, 0x66, 0x72, 0x65, 0x66, -0x42, 0x70, 0x6f, 0x73, 0x2e, 0x79, 0x20, 0x2b, 0x3d, 0x20, 0x62, 0x3b, 0x5c, 0x0a, 0x52, 0x45, -0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, 0x28, 0x20, 0x62, 0x30, 0x2c, 0x20, -0x30, 0x2c, 0x20, 0x34, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, -0x46, 0x46, 0x5f, 0x45, 0x58, 0x28, 0x20, 0x62, 0x31, 0x2c, 0x20, 0x31, 0x2c, 0x20, 0x35, 0x20, -0x29, 0x3b, 0x5c, 0x0a, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, -0x28, 0x20, 0x62, 0x32, 0x2c, 0x20, 0x32, 0x2c, 0x20, 0x36, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x52, -0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, 0x28, 0x20, 0x62, 0x33, 0x2c, -0x20, 0x33, 0x2c, 0x20, 0x37, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x48, 0x41, 0x44, 0x41, 0x4d, 0x41, -0x52, 0x44, 0x34, 0x28, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x5b, 0x30, 0x5d, -0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x74, -0x6d, 0x70, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, -0x69, 0x64, 0x78, 0x5d, 0x5b, 0x33, 0x5d, 0x2c, 0x20, 0x62, 0x30, 0x2c, 0x20, 0x62, 0x31, 0x2c, -0x20, 0x62, 0x32, 0x2c, 0x20, 0x62, 0x33, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x48, 0x41, 0x44, 0x41, -0x4d, 0x41, 0x52, 0x44, 0x34, 0x28, 0x20, 0x62, 0x30, 0x2c, 0x20, 0x62, 0x31, 0x2c, 0x20, 0x62, -0x32, 0x2c, 0x20, 0x62, 0x33, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x30, 0x5d, 0x5b, 0x69, 0x64, -0x78, 0x5d, 0x2c, 0x20, 0x74, 0x6d, 0x70, 0x5b, 0x31, 0x5d, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x2c, -0x20, 0x74, 0x6d, 0x70, 0x5b, 0x32, 0x5d, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x2c, 0x20, 0x74, 0x6d, -0x70, 0x5b, 0x33, 0x5d, 0x5b, 0x69, 0x64, 0x78, 0x5d, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x73, 0x75, -0x6d, 0x20, 0x2b, 0x3d, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, 0x20, 0x62, 0x30, 0x20, 0x29, 0x20, -0x2b, 0x20, 0x61, 0x62, 0x73, 0x32, 0x28, 0x20, 0x62, 0x31, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x61, -0x62, 0x73, 0x32, 0x28, 0x20, 0x62, 0x32, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x61, 0x62, 0x73, 0x32, -0x28, 0x20, 0x62, 0x33, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x7d, 0x0a, 0x52, 0x4f, 0x57, 0x5f, 0x38, -0x78, 0x34, 0x5f, 0x53, 0x41, 0x54, 0x44, 0x28, 0x20, 0x30, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x3b, -0x0a, 0x52, 0x4f, 0x57, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x53, 0x41, 0x54, 0x44, 0x28, 0x20, 0x34, -0x2c, 0x20, 0x34, 0x20, 0x29, 0x3b, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x52, 0x45, -0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x0a, 0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x52, -0x45, 0x41, 0x44, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x45, 0x58, 0x0a, 0x23, 0x75, 0x6e, 0x64, -0x65, 0x66, 0x20, 0x52, 0x4f, 0x57, 0x5f, 0x38, 0x78, 0x34, 0x5f, 0x53, 0x41, 0x54, 0x44, 0x0a, -0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x28, 0x28, 0x73, 0x75, 0x6d, 0x5f, 0x74, 0x29, -0x73, 0x75, 0x6d, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x73, 0x75, 0x6d, 0x3e, 0x3e, 0x42, 0x49, 0x54, -0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x4d, 0x29, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x31, -0x3b, 0x0a, 0x7d, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x74, -0x32, 0x20, 0x68, 0x70, 0x6f, 0x66, 0x66, 0x73, 0x5b, 0x34, 0x5d, 0x20, 0x3d, 0x0a, 0x7b, 0x0a, -0x7b, 0x30, 0x2c, 0x20, 0x2d, 0x32, 0x7d, 0x2c, 0x20, 0x7b, 0x2d, 0x32, 0x2c, 0x20, 0x30, 0x7d, -0x2c, 0x20, 0x7b, 0x32, 0x2c, 0x20, 0x30, 0x7d, 0x2c, 0x20, 0x7b, 0x30, 0x2c, 0x20, 0x32, 0x7d, -0x0a, 0x7d, 0x3b, 0x0a, 0x2f, 0x2a, 0x20, 0x73, 0x75, 0x62, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, -0x20, 0x72, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6d, -0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x2c, 0x20, 0x6f, -0x75, 0x74, 0x70, 0x75, 0x74, 0x20, 0x4d, 0x56, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x66, 0x72, -0x6f, 0x6d, 0x0a, 0x2a, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, 0x79, 0x20, 0x62, -0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6e, 0x61, -0x6c, 0x20, 0x70, 0x65, 0x72, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20, 0x62, 0x75, 0x66, 0x66, -0x65, 0x72, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x6c, 0x61, -0x75, 0x6e, 0x63, 0x68, 0x20, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, -0x20, 0x20, 0x5b, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2a, 0x20, 0x34, 0x2c, -0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5d, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, -0x57, 0x69, 0x74, 0x68, 0x20, 0x58, 0x20, 0x62, 0x65, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, -0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x31, 0x36, 0x78, 0x31, 0x36, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x73, 0x2c, 0x20, 0x46, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, -0x6f, 0x77, 0x72, 0x65, 0x73, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x20, 0x75, 0x73, 0x65, 0x64, -0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x2a, 0x20, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, -0x20, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x2e, 0x20, 0x20, 0x57, 0x65, 0x20, 0x77, 0x69, 0x6c, -0x6c, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x65, 0x20, 0x74, 0x68, -0x65, 0x20, 0x48, 0x20, 0x56, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x43, 0x20, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x73, 0x20, 0x28, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x65, -0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x0a, 0x2a, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x29, -0x20, 0x74, 0x6f, 0x20, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x61, 0x74, 0x20, 0x68, 0x61, -0x6c, 0x66, 0x2d, 0x70, 0x65, 0x6c, 0x20, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, -0x73, 0x2e, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, -0x20, 0x58, 0x0a, 0x2a, 0x20, 0x20, 0x46, 0x20, 0x48, 0x20, 0x46, 0x20, 0x48, 0x20, 0x46, 0x0a, -0x2a, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x0a, 0x2a, 0x20, -0x20, 0x56, 0x20, 0x43, 0x20, 0x56, 0x20, 0x43, 0x20, 0x56, 0x0a, 0x2a, 0x20, 0x58, 0x20, 0x58, -0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x0a, 0x2a, 0x20, 0x20, 0x46, 0x20, 0x48, 0x20, -0x46, 0x20, 0x48, 0x20, 0x46, 0x0a, 0x2a, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, 0x58, 0x20, -0x58, 0x20, 0x58, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x54, 0x68, 0x65, 0x20, 0x59, 0x58, 0x20, 0x48, -0x50, 0x45, 0x4c, 0x20, 0x62, 0x69, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, -0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x73, 0x65, -0x6c, 0x65, 0x63, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x20, -0x77, 0x65, 0x20, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x69, 0x6e, 0x2e, 0x20, 0x20, 0x54, -0x68, 0x65, 0x0a, 0x2a, 0x20, 0x66, 0x6f, 0x75, 0x72, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, -0x20, 0x61, 0x72, 0x65, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, -0x68, 0x65, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x20, 0x32, -0x44, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x2e, 0x20, -0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x0a, 0x2a, 0x20, 0x72, -0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x3a, 0x20, 0x20, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x46, 0x2c, -0x20, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x48, 0x2c, 0x20, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x56, 0x2c, -0x20, 0x73, 0x33, 0x20, 0x3d, 0x20, 0x43, 0x20, 0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, -0x6c, 0x20, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x73, 0x75, 0x62, 0x70, 0x65, 0x6c, 0x5f, 0x72, 0x65, -0x66, 0x69, 0x6e, 0x65, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, -0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x2c, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, -0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, -0x6e, 0x65, 0x73, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, -0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x2a, 0x69, 0x6e, 0x5f, 0x6d, 0x76, -0x73, 0x2c, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, -0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x2a, 0x69, 0x6e, 0x5f, 0x73, 0x61, 0x64, 0x5f, -0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x2c, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x20, -0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, -0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x0a, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x20, 0x73, 0x75, 0x6d, 0x32, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x2a, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x0a, 0x6c, 0x6f, -0x63, 0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x2a, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x0a, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x32, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, -0x5f, 0x6d, 0x76, 0x2c, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x31, -0x36, 0x5f, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x66, 0x65, 0x6e, 0x63, 0x5f, -0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x2c, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, -0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x2c, 0x0a, 0x69, -0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, -0x66, 0x2c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x5f, 0x69, 0x73, 0x6c, 0x69, 0x73, -0x74, 0x31, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, -0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, -0x20, 0x30, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, -0x62, 0x5f, 0x78, 0x20, 0x3e, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, -0x29, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, -0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, -0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, -0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x26, 0x20, -0x33, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, -0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x20, 0x3d, 0x20, 0x6d, 0x62, -0x5f, 0x79, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2b, 0x20, -0x6d, 0x62, 0x5f, 0x78, 0x3b, 0x0a, 0x2f, 0x2a, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, -0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, -0x20, 0x61, 0x72, 0x65, 0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, -0x72, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x0a, 0x2a, 0x20, 0x68, 0x6f, 0x6c, 0x64, 0x20, 0x6d, -0x61, 0x6e, 0x79, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x77, 0x6f, 0x72, 0x74, 0x68, -0x20, 0x6f, 0x66, 0x20, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, -0x72, 0x73, 0x2e, 0x20, 0x20, 0x57, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x66, -0x73, 0x65, 0x74, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x72, -0x72, 0x65, 0x63, 0x74, 0x0a, 0x2a, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, -0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x27, 0x73, -0x20, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x6b, -0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x70, 0x61, -0x73, 0x73, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, -0x0a, 0x2a, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x62, -0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x69, -0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, -0x65, 0x61, 0x72, 0x63, 0x68, 0x3a, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x31, 0x20, 0x6f, 0x72, 0x20, -0x6c, 0x69, 0x73, 0x74, 0x30, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x20, 0x20, 0x43, 0x50, 0x55, 0x20, -0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x3a, 0x20, 0x66, 0x65, 0x6e, 0x63, -0x2d, 0x3e, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x30, 0x5d, 0x5b, -0x62, 0x20, 0x2d, 0x20, 0x70, 0x30, 0x20, 0x2d, 0x20, 0x31, 0x5d, 0x0a, 0x2a, 0x20, 0x20, 0x20, -0x47, 0x50, 0x55, 0x20, 0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x3a, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x73, 0x5b, -0x28, 0x62, 0x20, 0x2d, 0x20, 0x70, 0x30, 0x20, 0x2d, 0x20, 0x31, 0x29, 0x20, 0x2a, 0x20, 0x6d, -0x62, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5d, 0x20, 0x2a, 0x2f, 0x0a, 0x66, 0x65, 0x6e, 0x63, -0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x20, 0x2b, 0x3d, 0x20, 0x20, 0x20, -0x20, 0x20, 0x20, 0x20, 0x28, 0x62, 0x5f, 0x69, 0x73, 0x6c, 0x69, 0x73, 0x74, 0x31, 0x20, 0x3f, -0x20, 0x28, 0x72, 0x65, 0x66, 0x2d, 0x62, 0x2d, 0x31, 0x29, 0x20, 0x3a, 0x20, 0x28, 0x62, 0x2d, -0x72, 0x65, 0x66, 0x2d, 0x31, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, -0x74, 0x68, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3b, 0x0a, -0x66, 0x65, 0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x5f, 0x63, -0x6f, 0x73, 0x74, 0x73, 0x20, 0x2b, 0x3d, 0x20, 0x28, 0x62, 0x5f, 0x69, 0x73, 0x6c, 0x69, 0x73, -0x74, 0x31, 0x20, 0x3f, 0x20, 0x28, 0x72, 0x65, 0x66, 0x2d, 0x62, 0x2d, 0x31, 0x29, 0x20, 0x3a, -0x20, 0x28, 0x62, 0x2d, 0x72, 0x65, 0x66, 0x2d, 0x31, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x6d, 0x62, -0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2a, 0x20, 0x6d, 0x62, 0x5f, 0x68, 0x65, 0x69, 0x67, -0x68, 0x74, 0x3b, 0x0a, 0x2f, 0x2a, 0x20, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x20, 0x70, 0x6f, -0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x20, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, -0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, -0x27, 0x73, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x6d, -0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x20, 0x2a, -0x20, 0x28, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, -0x28, 0x20, 0x30, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x67, -0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, -0x20, 0x3e, 0x3e, 0x20, 0x32, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, -0x61, 0x6c, 0x20, 0x2b, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, -0x70, 0x20, 0x2a, 0x20, 0x34, 0x3b, 0x0a, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, -0x6c, 0x20, 0x2b, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, -0x20, 0x2a, 0x20, 0x31, 0x36, 0x3b, 0x0a, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, -0x20, 0x2b, 0x3d, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, -0x2a, 0x20, 0x34, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x20, 0x3d, -0x20, 0x30, 0x3b, 0x0a, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x30, 0x5d, -0x20, 0x3d, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x31, 0x5d, 0x20, -0x3d, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x32, 0x5d, 0x20, 0x3d, -0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x33, 0x5d, 0x20, 0x3d, 0x20, -0x30, 0x3b, 0x0a, 0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x4d, 0x56, 0x43, 0x28, 0x20, -0x44, 0x58, 0x2c, 0x20, 0x44, 0x59, 0x20, 0x29, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, -0x61, 0x6c, 0x5b, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x2b, 0x2b, 0x5d, 0x20, 0x3d, 0x20, 0x69, 0x6e, -0x5f, 0x6d, 0x76, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2a, 0x20, -0x28, 0x6d, 0x62, 0x5f, 0x79, 0x20, 0x2b, 0x20, 0x44, 0x59, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x6d, -0x62, 0x5f, 0x78, 0x20, 0x2b, 0x20, 0x44, 0x58, 0x29, 0x5d, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, -0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x29, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, -0x2d, 0x31, 0x2c, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, -0x79, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x30, -0x2c, 0x20, 0x2d, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, -0x20, 0x3c, 0x20, 0x6d, 0x62, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x2d, 0x20, 0x31, 0x20, -0x29, 0x0a, 0x4d, 0x56, 0x43, 0x28, 0x20, 0x31, 0x2c, 0x20, 0x2d, 0x31, 0x20, 0x29, 0x3b, 0x0a, -0x69, 0x66, 0x28, 0x20, 0x6d, 0x62, 0x5f, 0x78, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x29, 0x0a, 0x4d, -0x56, 0x43, 0x28, 0x20, 0x2d, 0x31, 0x2c, 0x20, 0x2d, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, -0x23, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x20, 0x4d, 0x56, 0x43, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, -0x6d, 0x76, 0x70, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x5f, 0x6d, 0x76, 0x63, 0x20, 0x3c, 0x3d, 0x20, -0x31, 0x29, 0x20, 0x3f, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x74, -0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, -0x30, 0x5d, 0x29, 0x20, 0x3a, 0x20, 0x78, 0x32, 0x36, 0x34, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, -0x6e, 0x5f, 0x6d, 0x76, 0x28, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, -0x30, 0x5d, 0x2c, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x31, 0x5d, -0x2c, 0x20, 0x6d, 0x76, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x32, 0x5d, 0x20, 0x29, -0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x20, 0x69, -0x6e, 0x5f, 0x73, 0x61, 0x64, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x5b, 0x6d, -0x62, 0x5f, 0x78, 0x79, 0x5d, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x63, 0x6f, 0x6f, 0x72, -0x64, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x6d, 0x62, 0x5f, 0x78, 0x2c, -0x20, 0x6d, 0x62, 0x5f, 0x79, 0x29, 0x20, 0x3c, 0x3c, 0x20, 0x33, 0x3b, 0x0a, 0x69, 0x6e, 0x74, -0x32, 0x20, 0x62, 0x6d, 0x76, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, -0x69, 0x6e, 0x74, 0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, 0x20, 0x69, 0x6e, 0x5f, 0x6d, 0x76, 0x73, -0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x29, 0x3b, 0x0a, 0x2f, 0x2a, 0x20, 0x4d, 0x61, -0x6b, 0x65, 0x20, 0x6d, 0x76, 0x70, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x62, 0x6d, 0x76, 0x20, 0x51, -0x50, 0x45, 0x4c, 0x20, 0x4d, 0x56, 0x20, 0x2a, 0x2f, 0x0a, 0x6d, 0x76, 0x70, 0x20, 0x3c, 0x3c, -0x3d, 0x20, 0x32, 0x3b, 0x20, 0x62, 0x6d, 0x76, 0x20, 0x3c, 0x3c, 0x3d, 0x20, 0x32, 0x3b, 0x0a, -0x23, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x48, 0x50, 0x45, 0x4c, 0x5f, 0x51, 0x50, 0x45, -0x4c, 0x28, 0x20, 0x41, 0x52, 0x52, 0x2c, 0x20, 0x46, 0x55, 0x4e, 0x43, 0x20, 0x29, 0x5c, 0x0a, -0x7b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x20, 0x3d, 0x20, -0x62, 0x6d, 0x76, 0x20, 0x2b, 0x20, 0x41, 0x52, 0x52, 0x5b, 0x6d, 0x62, 0x5f, 0x69, 0x5d, 0x3b, -0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x63, -0x6f, 0x6f, 0x72, 0x64, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x29, 0x20, 0x2b, 0x20, 0x74, 0x72, 0x79, -0x6d, 0x76, 0x3b, 0x5c, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, -0x46, 0x55, 0x4e, 0x43, 0x28, 0x20, 0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x63, 0x6f, 0x6f, 0x72, -0x64, 0x2c, 0x20, 0x66, 0x72, 0x65, 0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, -0x71, 0x70, 0x6f, 0x73, 0x20, 0x29, 0x20, 0x2b, 0x20, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x20, -0x2a, 0x20, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x28, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, -0x69, 0x66, 0x66, 0x28, 0x20, 0x74, 0x72, 0x79, 0x6d, 0x76, 0x2c, 0x20, 0x6d, 0x76, 0x70, 0x20, -0x29, 0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, -0x5b, 0x6d, 0x62, 0x5f, 0x69, 0x5d, 0x20, 0x3d, 0x20, 0x28, 0x63, 0x6f, 0x73, 0x74, 0x3c, 0x3c, -0x32, 0x29, 0x20, 0x2b, 0x20, 0x6d, 0x62, 0x5f, 0x69, 0x3b, 0x5c, 0x0a, 0x63, 0x6f, 0x73, 0x74, -0x20, 0x3d, 0x20, 0x6d, 0x69, 0x6e, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, -0x61, 0x6c, 0x5b, 0x30, 0x5d, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x28, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x31, 0x5d, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x28, 0x20, -0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x63, -0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x33, 0x5d, 0x20, 0x29, 0x20, 0x29, -0x20, 0x29, 0x3b, 0x5c, 0x0a, 0x69, 0x66, 0x28, 0x20, 0x28, 0x63, 0x6f, 0x73, 0x74, 0x3e, 0x3e, -0x32, 0x29, 0x20, 0x3c, 0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x29, 0x5c, 0x0a, 0x7b, 0x5c, -0x0a, 0x62, 0x6d, 0x76, 0x20, 0x2b, 0x3d, 0x20, 0x41, 0x52, 0x52, 0x5b, 0x63, 0x6f, 0x73, 0x74, -0x26, 0x33, 0x5d, 0x3b, 0x5c, 0x0a, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x63, 0x6f, -0x73, 0x74, 0x3e, 0x3e, 0x32, 0x3b, 0x5c, 0x0a, 0x7d, 0x5c, 0x0a, 0x7d, 0x0a, 0x48, 0x50, 0x45, -0x4c, 0x5f, 0x51, 0x50, 0x45, 0x4c, 0x28, 0x20, 0x68, 0x70, 0x6f, 0x66, 0x66, 0x73, 0x2c, 0x20, -0x73, 0x61, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, 0x69, 0x69, 0x5f, 0x68, 0x70, 0x65, 0x6c, 0x20, -0x29, 0x3b, 0x0a, 0x48, 0x50, 0x45, 0x4c, 0x5f, 0x51, 0x50, 0x45, 0x4c, 0x28, 0x20, 0x64, 0x69, -0x61, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x2c, 0x20, 0x73, 0x61, 0x64, 0x5f, 0x38, 0x78, 0x38, 0x5f, -0x69, 0x69, 0x5f, 0x71, 0x70, 0x65, 0x6c, 0x20, 0x29, 0x3b, 0x0a, 0x66, 0x65, 0x6e, 0x63, 0x5f, -0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, -0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, -0x32, 0x5f, 0x73, 0x61, 0x74, 0x28, 0x20, 0x62, 0x6d, 0x76, 0x20, 0x29, 0x3b, 0x0a, 0x2f, 0x2a, -0x20, 0x72, 0x65, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x73, 0x74, 0x20, -0x6f, 0x66, 0x20, 0x62, 0x6d, 0x76, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x53, 0x41, 0x54, -0x44, 0x20, 0x2a, 0x2f, 0x0a, 0x69, 0x6e, 0x74, 0x32, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x20, 0x3d, -0x20, 0x28, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x20, 0x3c, 0x3c, 0x20, 0x32, 0x29, 0x20, 0x2b, 0x20, -0x62, 0x6d, 0x76, 0x3b, 0x0a, 0x63, 0x6f, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, -0x6d, 0x62, 0x5f, 0x69, 0x5d, 0x20, 0x3d, 0x20, 0x73, 0x61, 0x74, 0x64, 0x5f, 0x38, 0x78, 0x38, -0x5f, 0x69, 0x69, 0x5f, 0x71, 0x70, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6f, 0x70, 0x34, 0x28, 0x20, -0x66, 0x65, 0x6e, 0x63, 0x2c, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x2c, 0x20, 0x66, 0x72, 0x65, -0x66, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x2c, 0x20, 0x71, 0x70, 0x6f, 0x73, 0x2c, 0x20, -0x73, 0x61, 0x74, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x2c, 0x20, 0x6d, 0x62, 0x5f, 0x69, -0x20, 0x29, 0x3b, 0x0a, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x30, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x31, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x32, 0x5d, 0x20, 0x2b, 0x20, 0x63, 0x6f, 0x73, 0x74, -0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5b, 0x33, 0x5d, 0x3b, 0x0a, 0x62, 0x63, 0x6f, 0x73, 0x74, -0x20, 0x2b, 0x3d, 0x20, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x20, 0x2a, 0x20, 0x6d, 0x76, 0x5f, -0x63, 0x6f, 0x73, 0x74, 0x28, 0x20, 0x61, 0x62, 0x73, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x28, 0x20, -0x62, 0x6d, 0x76, 0x2c, 0x20, 0x6d, 0x76, 0x70, 0x20, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x66, 0x65, -0x6e, 0x63, 0x5f, 0x6c, 0x6f, 0x77, 0x72, 0x65, 0x73, 0x5f, 0x6d, 0x76, 0x5f, 0x63, 0x6f, 0x73, -0x74, 0x73, 0x5b, 0x6d, 0x62, 0x5f, 0x78, 0x79, 0x5d, 0x20, 0x3d, 0x20, 0x6d, 0x69, 0x6e, 0x28, -0x20, 0x62, 0x63, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x4c, 0x4f, 0x57, 0x52, 0x45, 0x53, 0x5f, 0x43, -0x4f, 0x53, 0x54, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, -0x20, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x70, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, -0x61, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x20, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, -0x61, 0x72, 0x79, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, -0x72, 0x2e, 0x0a, 0x2a, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, -0x20, 0x69, 0x73, 0x20, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x63, -0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, -0x2e, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x20, 0x64, 0x69, 0x6d, -0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x78, -0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x69, 0x6e, 0x20, 0x70, 0x69, 0x78, 0x65, -0x6c, 0x73, 0x29, 0x0a, 0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, 0x76, 0x6f, -0x69, 0x64, 0x20, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x70, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, -0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, -0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x69, 0x6e, -0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2c, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x6e, -0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x6f, 0x75, 0x74, -0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2c, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x66, -0x73, 0x65, 0x74, 0x2c, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x2c, -0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x20, 0x29, 0x0a, 0x7b, 0x0a, -0x69, 0x6e, 0x74, 0x20, 0x67, 0x78, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, -0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, -0x20, 0x67, 0x79, 0x20, 0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, -0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, 0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, -0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, -0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x3b, 0x0a, 0x69, 0x6e, 0x70, -0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, -0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2c, -0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, -0x28, 0x67, 0x78, 0x2c, 0x20, 0x67, 0x79, 0x29, 0x29, 0x3b, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, -0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x20, 0x28, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, -0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x28, 0x20, 0x28, 0x28, -0x75, 0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x29, 0x29, 0x20, 0x2a, -0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, -0x28, 0x28, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x29, 0x29, -0x20, 0x29, 0x3b, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, -0x69, 0x28, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2c, 0x20, 0x28, 0x69, -0x6e, 0x74, 0x32, 0x29, 0x28, 0x67, 0x78, 0x2c, 0x20, 0x67, 0x79, 0x29, 0x2c, 0x20, 0x6f, 0x75, -0x74, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x2f, 0x2a, -0x20, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x70, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, -0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x68, 0x61, 0x6c, 0x66, 0x2d, 0x70, 0x65, 0x6c, -0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6d, -0x61, 0x67, 0x65, 0x0a, 0x2a, 0x0a, 0x2a, 0x20, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x20, 0x64, -0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, -0x20, 0x78, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x69, 0x6e, 0x20, 0x70, 0x69, -0x78, 0x65, 0x6c, 0x73, 0x29, 0x0a, 0x2a, 0x2f, 0x0a, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x20, -0x76, 0x6f, 0x69, 0x64, 0x20, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x70, 0x5f, 0x68, 0x70, 0x65, -0x6c, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, -0x67, 0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2c, -0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x61, 0x67, -0x65, 0x32, 0x64, 0x5f, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2c, -0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x2c, 0x0a, 0x75, 0x69, -0x6e, 0x74, 0x20, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x2c, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x64, -0x65, 0x6e, 0x6f, 0x6d, 0x20, 0x29, 0x0a, 0x7b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x67, 0x78, 0x20, -0x3d, 0x20, 0x67, 0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, -0x20, 0x30, 0x20, 0x29, 0x3b, 0x0a, 0x69, 0x6e, 0x74, 0x20, 0x67, 0x79, 0x20, 0x3d, 0x20, 0x67, -0x65, 0x74, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x28, 0x20, 0x31, 0x20, -0x29, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, -0x6c, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x76, -0x61, 0x6c, 0x3b, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x20, -0x72, 0x65, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x69, 0x6e, -0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, -0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x67, 0x78, 0x2c, 0x20, 0x67, 0x79, 0x29, 0x29, -0x2e, 0x73, 0x30, 0x3b, 0x0a, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x3b, -0x0a, 0x74, 0x65, 0x6d, 0x70, 0x2e, 0x73, 0x30, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, -0x5f, 0x76, 0x61, 0x6c, 0x20, 0x26, 0x20, 0x30, 0x78, 0x30, 0x30, 0x66, 0x66, 0x3b, 0x20, 0x74, -0x65, 0x6d, 0x70, 0x2e, 0x73, 0x31, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, -0x76, 0x61, 0x6c, 0x20, 0x3e, 0x3e, 0x20, 0x38, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x30, 0x30, -0x66, 0x66, 0x3b, 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x2e, 0x73, 0x32, 0x20, 0x3d, 0x20, 0x28, 0x69, -0x6e, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x3e, 0x3e, 0x20, 0x31, 0x36, 0x29, 0x20, -0x26, 0x20, 0x30, 0x78, 0x30, 0x30, 0x66, 0x66, 0x3b, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x2e, 0x73, -0x33, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x3e, -0x3e, 0x20, 0x32, 0x34, 0x29, 0x20, 0x26, 0x20, 0x30, 0x78, 0x30, 0x30, 0x66, 0x66, 0x3b, 0x0a, -0x74, 0x65, 0x6d, 0x70, 0x20, 0x3d, 0x20, 0x28, 0x75, 0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, 0x6f, -0x66, 0x66, 0x73, 0x65, 0x74, 0x29, 0x20, 0x2b, 0x20, 0x28, 0x20, 0x28, 0x20, 0x28, 0x28, 0x75, -0x69, 0x6e, 0x74, 0x34, 0x29, 0x28, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x29, 0x29, 0x20, 0x2a, 0x20, -0x74, 0x65, 0x6d, 0x70, 0x20, 0x29, 0x20, 0x3e, 0x3e, 0x20, 0x28, 0x28, 0x75, 0x69, 0x6e, 0x74, -0x34, 0x29, 0x28, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x29, 0x29, 0x20, 0x29, 0x3b, 0x0a, 0x6f, 0x75, -0x74, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x2e, -0x73, 0x30, 0x20, 0x7c, 0x20, 0x28, 0x74, 0x65, 0x6d, 0x70, 0x2e, 0x73, 0x31, 0x20, 0x3c, 0x3c, -0x20, 0x38, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x74, 0x65, 0x6d, 0x70, 0x2e, 0x73, 0x32, 0x20, 0x3c, -0x3c, 0x20, 0x31, 0x36, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x74, 0x65, 0x6d, 0x70, 0x2e, 0x73, 0x33, -0x20, 0x3c, 0x3c, 0x20, 0x32, 0x34, 0x29, 0x3b, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x69, -0x6d, 0x61, 0x67, 0x65, 0x75, 0x69, 0x28, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x6e, -0x65, 0x2c, 0x20, 0x28, 0x69, 0x6e, 0x74, 0x32, 0x29, 0x28, 0x67, 0x78, 0x2c, 0x20, 0x67, 0x79, -0x29, 0x2c, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x20, 0x29, 0x3b, -0x0a, 0x7d, 0x0a, -0x00 }; -static const char x264_opencl_source_hash[] = { -0x66, 0x34, 0x62, 0x36, 0x63, 0x32, 0x39, 0x63, 0x61, 0x32, 0x34, 0x38, 0x38, 0x35, 0x38, 0x62, -0x62, 0x37, 0x31, 0x37, 0x37, 0x65, 0x36, 0x34, 0x36, 0x39, 0x34, 0x65, 0x34, 0x32, 0x61, 0x38, -0x00 }; diff --git a/repo/media/x264/x264.xibuild b/repo/media/x264/x264.xibuild deleted file mode 100644 index 5c1d375..0000000 --- a/repo/media/x264/x264.xibuild +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh - -NAME="x264" -DESC="Free library for encoding H264/AVC video streams" - -MAKEDEPS="make libx11 perl nasm sbase bash" -DEPS="musl " - -PKG_VER=0.164.r3081.19856cc -gitrev=master -SOURCE="https://code.videolan.org/videolan/x264.git" -BRANCH=19856cc41ad11e434549fb3cc6a019e645ce1efe - -ADDITIONAL=" - oclobj.h -" - -prepare () { - echo '' > ./tools/cltostr.sh - mv oclobj.h common/oclobj.h -} - -build () { - ./configure \ - --prefix=/usr \ - --enable-shared \ - --enable-pic \ - --enable-lto \ - --disable-avs - make -} - -package () { - make DESTDIR=$PKG_DEST bindir=/usr/bin libdir=/usr/lib includedir=/usr/include install-lib-shared install-cli -} diff --git a/repo/media/x265/x265.xibuild b/repo/media/x265/x265.xibuild deleted file mode 100644 index 69bd3e2..0000000 --- a/repo/media/x265/x265.xibuild +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh - -NAME="x265" -DESC="Open Source H265/HEVC video encoder" - -MAKEDEPS="cmake " -DEPS="musl " - -PKG_VER=3.5 -SOURCE="https://bitbucket.org/multicoreware/x265_git/downloads/x265_$PKG_VER.tar.gz" - -build () { - # CMAKE_BUILD_TYPE - Don't change to None! This is a video encoder, - # performance is the most important. - cmake -B build-12 -S source -G Ninja \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_VERBOSE_MAKEFILE=ON \ - -DHIGH_BIT_DEPTH=TRUE \ - -DMAIN12=TRUE \ - -DEXPORT_C_API=FALSE \ - -DENABLE_CLI=FALSE \ - -DENABLE_SHARED=FALSE - cmake --build build-12 - - cmake -B build-10 -S source -G Ninja \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_VERBOSE_MAKEFILE=ON \ - -DHIGH_BIT_DEPTH=TRUE \ - -DEXPORT_C_API=FALSE \ - -DENABLE_CLI=FALSE \ - -DENABLE_SHARED=FALSE - cmake --build build-10 - - cmake -B build -S source -G Ninja \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_VERBOSE_MAKEFILE=ON \ - -DEXTRA_LIB='x265_main10.a;x265_main12.a' \ - -DEXTRA_LINK_FLAGS='-L.' \ - -DLINKED_10BIT=TRUE \ - -DLINKED_12BIT=TRUE - ln -s ../build-10/libx265.a build/libx265_main10.a - ln -s ../build-12/libx265.a build/libx265_main12.a - cmake --build build - -} - -package () { - DESTDIR="$PKG_DEST" cmake --install build -} - diff --git a/repo/media/xvidcore/xvidcore.xibuild b/repo/media/xvidcore/xvidcore.xibuild deleted file mode 100644 index 6ffce5a..0000000 --- a/repo/media/xvidcore/xvidcore.xibuild +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh - -NAME="xvidcore" -DESC="XviD is an open source MPEG-4 video codec" - -MAKEDEPS="make " -DEPS="musl " - -PKG_VER=1.3.7 -SOURCE="https://downloads.xvid.com/downloads/xvidcore-$PKG_VER.tar.bz2" - -build () { - cd build/generic - ./configure \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sysconfdir=/etc \ - --disable-assembly - make -} - -package () { - make DESTDIR=$PKG_DEST install -} |