Re: [PATCH 11/11] IB/uverbs: Fix locking around struct ib_uverbs_file ucontext

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jul 10, 2018 at 08:55:23PM -0600, Jason Gunthorpe wrote:
> From: Jason Gunthorpe <jgg@xxxxxxxxxxxx>
>
> We have a parallel unlocked reader and writer with ib_uverbs_get_context()
> vs everything else, and nothing guarentees this works properly.
>
> Audit and fix all of the places that access ucontext to use one of the
> following locking schemes:
> - Call ib_uverbs_get_ucontext() under SRCU and check for failure
> - Access the ucontext through an struct ib_uobject context member
>   while holding a READ or WRITE lock on the uobject.
>   This value cannot be NULL and has no race.
> - Hold the hw_destroy_rwsem and check for ufile->ucontext !NULL
>
> This also re-implements ib_uverbs_get_ucontext() in a way that is safe
> against concurrent ib_uverbs_get_context() and disassociation.
>
> As a side effect, every access to ucontext in the commands is via
> ib_uverbs_get_context() with an error check, or via the uobject, so there
> is no longer any need for the core code to check ucontext on every command
> call. These checks are also removed.
>
> Signed-off-by: Jason Gunthorpe <jgg@xxxxxxxxxxxx>
> ---
>  drivers/infiniband/core/rdma_core.c           | 14 +++++--
>  drivers/infiniband/core/uverbs.h              |  4 ++
>  drivers/infiniband/core/uverbs_cmd.c          | 20 ++++++----
>  drivers/infiniband/core/uverbs_ioctl.c        |  5 +--
>  drivers/infiniband/core/uverbs_main.c         | 38 ++++++++++++-------
>  drivers/infiniband/core/uverbs_std_types_cq.c |  2 +-
>  drivers/infiniband/core/uverbs_std_types_dm.c |  2 +-
>  drivers/infiniband/hw/mlx5/devx.c             | 20 +++++++---
>  include/rdma/uverbs_ioctl.h                   |  8 ----
>  9 files changed, 68 insertions(+), 45 deletions(-)
>

This patch causes to races between cleanup and destroy.

The attached program, which can be compiled
"gcc -lpthread destroy.c -o destroy", will trigger WARN
in rdma_explicit_destroy().

467 int rdma_explicit_destroy(struct ib_uobject *uobject)
468 {
469         int ret;
470         struct ib_uverbs_file *ufile = uobject->ufile;
471
472         /* Cleanup is running. Calling this should have been impossible */
473         if (!down_read_trylock(&ufile->hw_destroy_rwsem)) {
474                 WARN(true, "ib_uverbs: Cleanup is running while removing an uobject\n");
475                 return 0;
476         }
477         assert_uverbs_usecnt(uobject, true);
478         ret = _rdma_remove_commit_uobject(uobject, RDMA_REMOVE_DESTROY);
479
480         up_read(&ufile->hw_destroy_rwsem);
481         return ret;
482 }

Thanks
// autogenerated by syzkaller (http://github.com/google/syzkaller)

#define _GNU_SOURCE
#include <dirent.h>
#include <endian.h>
#include <errno.h>
#include <fcntl.h>
#include <linux/futex.h>
#include <pthread.h>
#include <signal.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/mount.h>
#include <sys/prctl.h>
#include <sys/stat.h>
#include <sys/syscall.h>
#include <sys/time.h>
#include <sys/wait.h>
#include <time.h>
#include <unistd.h>

__attribute__((noreturn)) static void doexit(int status)
{
  volatile unsigned i;
  syscall(__NR_exit_group, status);
  for (i = 0;; i++) {
  }
}
#include <errno.h>
#include <setjmp.h>
#include <signal.h>
#include <stdarg.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>

const int kFailStatus = 67;
const int kRetryStatus = 69;

static void fail(const char* msg, ...)
{
  int e = errno;
  va_list args;
  va_start(args, msg);
  vfprintf(stderr, msg, args);
  va_end(args);
  fprintf(stderr, " (errno %d)\n", e);
  doexit((e == ENOMEM || e == EAGAIN) ? kRetryStatus : kFailStatus);
}

static void exitf(const char* msg, ...)
{
  int e = errno;
  va_list args;
  va_start(args, msg);
  vfprintf(stderr, msg, args);
  va_end(args);
  fprintf(stderr, " (errno %d)\n", e);
  doexit(kRetryStatus);
}

static __thread int skip_segv;
static __thread jmp_buf segv_env;

static void segv_handler(int sig, siginfo_t* info, void* uctx)
{
  uintptr_t addr = (uintptr_t)info->si_addr;
  const uintptr_t prog_start = 1 << 20;
  const uintptr_t prog_end = 100 << 20;
  if (__atomic_load_n(&skip_segv, __ATOMIC_RELAXED) &&
      (addr < prog_start || addr > prog_end)) {
    _longjmp(segv_env, 1);
  }
  doexit(sig);
}

static void install_segv_handler()
{
  struct sigaction sa;

  memset(&sa, 0, sizeof(sa));
  sa.sa_handler = SIG_IGN;
  syscall(SYS_rt_sigaction, 0x20, &sa, NULL, 8);
  syscall(SYS_rt_sigaction, 0x21, &sa, NULL, 8);

  memset(&sa, 0, sizeof(sa));
  sa.sa_sigaction = segv_handler;
  sa.sa_flags = SA_NODEFER | SA_SIGINFO;
  sigaction(SIGSEGV, &sa, NULL);
  sigaction(SIGBUS, &sa, NULL);
}

#define NONFAILING(...)                                                        \
  {                                                                            \
    __atomic_fetch_add(&skip_segv, 1, __ATOMIC_SEQ_CST);                       \
    if (_setjmp(segv_env) == 0) {                                              \
      __VA_ARGS__;                                                             \
    }                                                                          \
    __atomic_fetch_sub(&skip_segv, 1, __ATOMIC_SEQ_CST);                       \
  }

static uint64_t current_time_ms()
{
  struct timespec ts;

  if (clock_gettime(CLOCK_MONOTONIC, &ts))
    fail("clock_gettime failed");
  return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000;
}

static void use_temporary_dir()
{
  char tmpdir_template[] = "./syzkaller.XXXXXX";
  char* tmpdir = mkdtemp(tmpdir_template);
  if (!tmpdir)
    fail("failed to mkdtemp");
  if (chmod(tmpdir, 0777))
    fail("failed to chmod");
  if (chdir(tmpdir))
    fail("failed to chdir");
}

static uintptr_t syz_open_dev(uintptr_t a0, uintptr_t a1, uintptr_t a2)
{
  if (a0 == 0xc || a0 == 0xb) {
    char buf[128];
    sprintf(buf, "/dev/%s/%d:%d", a0 == 0xc ? "char" : "block", (uint8_t)a1,
            (uint8_t)a2);
    return open(buf, O_RDWR, 0);
  } else {
    char buf[1024];
    char* hash;
    NONFAILING(strncpy(buf, (char*)a0, sizeof(buf) - 1));
    buf[sizeof(buf) - 1] = 0;
    while ((hash = strchr(buf, '#'))) {
      *hash = '0' + (char)(a1 % 10);
      a1 /= 10;
    }
    return open(buf, a2, 0);
  }
}

static void remove_dir(const char* dir)
{
  DIR* dp;
  struct dirent* ep;
  int iter = 0;
retry:
  while (umount2(dir, MNT_DETACH) == 0) {
  }
  dp = opendir(dir);
  if (dp == NULL) {
    if (errno == EMFILE) {
      exitf("opendir(%s) failed due to NOFILE, exiting", dir);
    }
    exitf("opendir(%s) failed", dir);
  }
  while ((ep = readdir(dp))) {
    if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0)
      continue;
    char filename[FILENAME_MAX];
    snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name);
    struct stat st;
    if (lstat(filename, &st))
      exitf("lstat(%s) failed", filename);
    if (S_ISDIR(st.st_mode)) {
      remove_dir(filename);
      continue;
    }
    int i;
    for (i = 0;; i++) {
      if (unlink(filename) == 0)
        break;
      if (errno == EROFS) {
        break;
      }
      if (errno != EBUSY || i > 100)
        exitf("unlink(%s) failed", filename);
      if (umount2(filename, MNT_DETACH))
        exitf("umount(%s) failed", filename);
    }
  }
  closedir(dp);
  int i;
  for (i = 0;; i++) {
    if (rmdir(dir) == 0)
      break;
    if (i < 100) {
      if (errno == EROFS) {
        break;
      }
      if (errno == EBUSY) {
        if (umount2(dir, MNT_DETACH))
          exitf("umount(%s) failed", dir);
        continue;
      }
      if (errno == ENOTEMPTY) {
        if (iter < 100) {
          iter++;
          goto retry;
        }
      }
    }
    exitf("rmdir(%s) failed", dir);
  }
}

static void execute_one();
extern unsigned long long procid;

static void loop()
{
  int iter;
  for (iter = 0;; iter++) {
    char cwdbuf[32];
    sprintf(cwdbuf, "./%d", iter);
    if (mkdir(cwdbuf, 0777))
      fail("failed to mkdir");
    int pid = fork();
    if (pid < 0)
      fail("clone failed");
    if (pid == 0) {
      prctl(PR_SET_PDEATHSIG, SIGKILL, 0, 0, 0);
      setpgrp();
      if (chdir(cwdbuf))
        fail("failed to chdir");
      execute_one();
      doexit(0);
    }

    int status = 0;
    uint64_t start = current_time_ms();
    for (;;) {
      int res = waitpid(-1, &status, __WALL | WNOHANG);
      if (res == pid) {
        break;
      }
      usleep(1000);
      if (current_time_ms() - start < 3 * 1000)
        continue;
      kill(-pid, SIGKILL);
      kill(pid, SIGKILL);
      while (waitpid(-1, &status, __WALL) != pid) {
      }
      break;
    }
    remove_dir(cwdbuf);
  }
}

struct thread_t {
  int created, running, call;
  pthread_t th;
};

static struct thread_t threads[16];
static void execute_call(int call);
static int running;

static void* thr(void* arg)
{
  struct thread_t* th = (struct thread_t*)arg;
  for (;;) {
    while (!__atomic_load_n(&th->running, __ATOMIC_ACQUIRE))
      syscall(SYS_futex, &th->running, FUTEX_WAIT, 0, 0);
    execute_call(th->call);
    __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED);
    __atomic_store_n(&th->running, 0, __ATOMIC_RELEASE);
    syscall(SYS_futex, &th->running, FUTEX_WAKE);
  }
  return 0;
}

static void execute(int num_calls)
{
  int call, thread;
  running = 0;
  for (call = 0; call < num_calls; call++) {
    for (thread = 0; thread < sizeof(threads) / sizeof(threads[0]); thread++) {
      struct thread_t* th = &threads[thread];
      if (!th->created) {
        th->created = 1;
        pthread_attr_t attr;
        pthread_attr_init(&attr);
        pthread_attr_setstacksize(&attr, 128 << 10);
        pthread_create(&th->th, &attr, thr, th);
      }
      if (!__atomic_load_n(&th->running, __ATOMIC_ACQUIRE)) {
        th->call = call;
        __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED);
        __atomic_store_n(&th->running, 1, __ATOMIC_RELEASE);
        syscall(SYS_futex, &th->running, FUTEX_WAKE);
        struct timespec ts;
        ts.tv_sec = 0;
        ts.tv_nsec = 20 * 1000 * 1000;
        syscall(SYS_futex, &th->running, FUTEX_WAIT, 1, &ts);
        if (running)
          usleep((call == num_calls - 1) ? 10000 : 1000);
        break;
      }
    }
  }
}

uint64_t r[3] = {0xffffffffffffffff, 0x0, 0x0};
unsigned long long procid;
void execute_call(int call)
{
  long res;
  switch (call) {
  case 0:
    NONFAILING(memcpy((void*)0x20000000, "/dev/infiniband/uverbs0", 24));
    res = syz_open_dev(0x20000000, 0, 2);
    if (res != -1)
      r[0] = res;
    break;
  case 1:
    NONFAILING(*(uint32_t*)0x20000140 = 0x25);
    NONFAILING(*(uint16_t*)0x20000144 = 6);
    NONFAILING(*(uint16_t*)0x20000146 = 1);
    NONFAILING(*(uint64_t*)0x20000148 = 0x20000100);
    NONFAILING(*(uint32_t*)0x20000150 = 4);
    NONFAILING(*(uint32_t*)0x20000154 = 1);
    NONFAILING(*(uint64_t*)0x20000158 = 7);
    NONFAILING(*(uint64_t*)0x20000160 = 0);
    res = syscall(__NR_write, r[0], 0x20000140, 0x28);
    if (res != -1)
      NONFAILING(r[1] = *(uint32_t*)0x20000100);
    break;
  case 2:
    NONFAILING(*(uint32_t*)0x20000180 = 0x26);
    NONFAILING(*(uint16_t*)0x20000184 = 3);
    NONFAILING(*(uint16_t*)0x20000186 = 0);
    NONFAILING(*(uint32_t*)0x20000188 = r[1]);
    syscall(__NR_write, r[0], 0x20000180, 6);
    break;
  case 3:
    NONFAILING(*(uint32_t*)0x20001400 = 0x80000012);
    NONFAILING(*(uint16_t*)0x20001404 = 0x249);
    NONFAILING(*(uint16_t*)0x20001406 = 2);
    NONFAILING(*(uint64_t*)0x20001408 = 0x20002580);
    NONFAILING(*(uint16_t*)0x20001410 = 5);
    NONFAILING(*(uint16_t*)0x20001412 = 1);
    NONFAILING(*(uint32_t*)0x20001414 = 0);
    NONFAILING(*(uint64_t*)0x20001418 = 0);
    NONFAILING(*(uint32_t*)0x20001420 = 0);
    NONFAILING(*(uint32_t*)0x20001424 = 0);
    NONFAILING(*(uint32_t*)0x20001428 = -1);
    NONFAILING(*(uint32_t*)0x2000142c = 0);
    NONFAILING(*(uint32_t*)0x20001430 = 0);
    NONFAILING(*(uint64_t*)0x20001438 = 0x20004880);
    NONFAILING(memcpy(
        (void*)0x20004880,
        "\x8c\x75\x6b\xe1\x43\x65\x8c\x81\xf4\xf1\x6f\x4e\x6f\x2c\x28\xed\x0b"
        "\x4c\x73\xcd\x87\x6c\xc2\x23\xc8\xaa\xc7\xc6\xa5\xf6\x7b\xf8\x8a\x66"
        "\x52\x47\xf2\x43\xf2\x21\x6e\x46\x4a\x3c\x6e\x51\x71\x54\x50\x38\xd9"
        "\x06\xdc\x12\x8c\x20\x53\xcd\x43\x37\xfa\xf9\xbd\x19\x62\x19\xba\x1c"
        "\x26\x3d\x23\x82\x04\xdd\x7f\x37\xcb\x2a\xbd\xdc\x47\x1a\x15\x8f\x6a"
        "\x54\x4e\x60\xb1\xb9\x65\x78\xdf\x28\x22\xfb\x22\xe3\x93\xc2\x41\xf3"
        "\xc0\x12\x85\xca\xd2\x36\x7d\x4c\x3b\x4a\x9f\x62\x17\xb0\x5e\x86\xf6"
        "\xbf\xbb\x21\xd0\xc5\xbc\x49\xec\x92\x3b\xa8\x88\x8c\x30\x05\x23\x13"
        "\x76\xe6\xaa\x91\x91\x4d\x4e\x0f\xb4\x01\xc4\x98\xb8\xb5\xd4\x60\x87"
        "\xd4\x11\x7a\x36\xda\xf1\x32\xf8\x47\x0c\x7e\xf9\x69\x1a\xa3\x8f\xa2"
        "\x1b\x7e\x86\xb8\xdc\x66\x18\x88\x30\x74\x85\x0a\xa4\x9c\x0a\x62\xe0"
        "\x3e\x5b\x2e\x5b\x20\xbf\x11\x90\x0f\x2e\x08\x1d\x51\x65\x2d\x54\x26"
        "\xaa\xd3\x3a\x90\xa1\x3e\x85\x21\x32\x8b\xa8\xeb\xca\xde\x28\xca\xff"
        "\xc2\x32\x6a\x85\xf8\x33\x7e\xba\xe0\xf9\x2f\x13\xb4\x79\x9b\x36\xec"
        "\x04\xb3\x4c\x77\xf1\xd9\xc1\x35\x2b\x64\x02\x59\x52\x3c\x3d\x52\x32"
        "\x17\x08\x3c\x11\xf8\x22\x2b\x79\xd0\x14\xfc\x78\xe1\x7e\xe6\xce\x4b"
        "\x7d\xb9\xf0\x27\x25\x58\xa8\x6b\x1f\x09\xc5\x4b\x65\x75\x0c\x31\x38"
        "\x10\x88\x93\xe3\xe5\x02\x4b\x3f\xa3\x40\x87\x84\xb8\x09\x8d\x70\x46"
        "\x31\x3a\x3c\xcd\xbe\x9b\x28\x34\x26\x96\x30\xfb\x16\x67\xbb\x2a\x90"
        "\x17\xd1\x9c\x10\x99\x22\xc9\x78\xac\x10\xd9\x8f\x99\xbb\xf2\xf7\x1d"
        "\x97\xbe\x78\xd5\x30\x24\xb6\xc5\x12\x21\xdb\x23\x4f\xd5\x9f\xee\x4d"
        "\xd0\x86\x7d\xcc\x84\xcc\x9f\xd7\x1c\x50\xe3\xe0\xed\x21\xf9\x76\x68"
        "\x9b\xdd\x78\x59\x16\xa9\xe7\x70\x8e\xe6\x18\x12\x4c\xa5\xd3\x75\xde"
        "\xf7\xb4\x7b\x5f\x14\x56\xc1\xe7\x24\x74\xcd\x61\xb8\x7a\x9b\xe5\x68"
        "\x20\x62\x6c\xfe\x7e\x78\xdb\xfa\xd3\x4b\xb6\xc3\x6a\x77\xce\xe3\x22"
        "\x1e\x06\x72\x8f\x6d\xe4\x8a\x38\xf9\x48\x51\x90\x14\x97\x8c\xab\xf6"
        "\xce\xec\x60\xad\x25\x82\x3e\xea\x64\xde\xf4\x83\xa1\xc7\x05\x4e\xe1"
        "\x5e\x24\x22\x89\x6c\xae\xa6\xe2\x5d\xd3\x65\x34\x62\x8f\x5a\xcf\x11"
        "\xa2\x02\x31\xda\x2a\xb2\xc1\x53\x00\xa5\xbf\x1d\xe0\x97\x70\x83\x55"
        "\x0c\x22\x95\x7b\x6e\xa2\x15\x5d\x53\xc7\x41\x8f\x74\x7e\x77\x07\x34"
        "\x78\xe2\xc6\x29\xaf\x45\xcb\x38\x63\xcd\x9f\x34\x0a\x88\xba\x2c\xc7"
        "\xc5\x08\xad\x58\x52\x6c\xfc\xc8\xbd\xde\x92\x8a\x57\x0b\x61\x82\x75"
        "\x91\x06\x6f\x32\xcc\xc5\x18\x65\xaf\x7f\x35\x68\x06\x16\x0c\xd2\xf7"
        "\xa3\x41\x4a\xd5\xb3\xe9\xe6\xfc\xbc\x5c\xfa\xf1\x25\xef\x67\xc0\x13"
        "\x38\xc4\xa2\x84\xcf\xd3\xd3\xb5\x0f\x4c\x37\x16\x74\x39\x2b\x82\xcf"
        "\x4e\xe4\xc9\x7c\xbe\x79\x06\x44\x6d\x95\x68\x75\x1c\x0f\x26\xd3\x3a"
        "\x82\x23\x40\x6d\xc6\x9f\x73\x26\xf2\x3b\x0f\xe6\x6f\xc2\xa2\x27\x5a"
        "\x10\xf4\x4e\x27\x93\x4b\x71\x96\x53\x15\xdb\x49\x32\x35\x13\x3c\x68"
        "\x8a\x09\x24\xc3\x95\x85\xfb\x58\xc4\xde\x1f\xf1\x18\x29\xb7\x5f\x95"
        "\x31\xc5\xf7\xb3\x59\x0d\x13\xda\x49\x3d\x2f\xea\x87\xf5\x9d\x1e\xe9"
        "\x46\x9f\x9a\x38\x29\x3b\x54\x22\x15\xe9\xda\x20\x18\xb9\xd7\x7f\x9d"
        "\x88\x97\xe5\x9b\xb1\x69\x07\x6e\xcb\xbc\x8a\x44\x51\x26\x1c\x57\x7e"
        "\x2d\x4c\x38\x9c\xf7\xc5\xe5\x56\x9a\xc3\x64\xea\x43\x5c\xe8\xd6\x13"
        "\x9d\xa7\x10\xb5\xc4\x15\x36\x33\x12\x63\xf6\x78\xaa\x48\x39\xeb\x60"
        "\x5f\xf1\x11\xe5\xdc\xef\x4b\x79\x09\xd5\x06\x47\xf2\xf1\x11\xa6\x5d"
        "\x46\x3f\x1b\xdd\x88\xed\x9c\x7f\x77\xf6\x57\xe3\xaa\xf3\x05\x2f\xe3"
        "\x9b\x90\x6b\xf7\x9e\x34\x4f\x70\xd4\x6e\x2f\x80\x73\x66\xb6\x16\x4d"
        "\x87\xd7\x98\xbd\x87\x5b\x89\x4d\x2d\xeb\x32\xb8\x35\x2b\x46\xf2\x23"
        "\xb3\x17\x28\xa2\xbd\x74\xb1\xe2\x43\xd8\x49\x34\x2a\x38\x81\x92\xca"
        "\x2a\x21\xfc\x2b\xce\xe3\xfc\x9a\x75\x58\x92\xe6\xf6\xd9\x3b\xde\xb1"
        "\xed\xf9\xfa\xcd\xe9\xd2\x2d\x26\xf1\x4d\x9e\x6a\x2d\x7c\x76\x3c\x7b"
        "\xf2\x7a\x5e\x99\x90\xbb\xf1\xe7\xc2\x53\x64\xb3\xf2\xd5\xff\x4e\xf8"
        "\x93\x2b\x8f\x5f\x76\x8c\xea\xd8\x9b\xfe\x6c\x48\xf7\xf8\x55\x86\x0d"
        "\x5d\x5b\x34\xf2\x68\x1b\xcf\x29\x9f\xe0\x86\x21\x7a\x6c\x71\xe0\xfa"
        "\x03\xb2\x3e\x4a\x59\xc6\x80\x12\xc0\x80\x09\xaf\x08\xea\xc5\xc8\xf9"
        "\xb8\xfb\x3e\xa4\xc3\x33\x9c\xad\x95\x3c\x35\x4d\x81\x46\x6d\x72\x4e"
        "\x0e\xfc\x65\xad\x59\x04\x5f\xa3\xf8\xb5\xd7\x27\xf1\x9e\x36\xa3\x04"
        "\x69\x28\x6e\x02\xeb\x94\x49\xf4\x8f\xc4\x32\xf2\xdf\x2e\x9f\x75\x6d"
        "\x27\x14\xbc\xc6\x83\x0f\xd7\x32\xfb\x6e\x38\x43\xe1\xf7\xd8\x47\xea"
        "\x6a\x5e\x8f\x35\x2a\x91\x76\xee\xad\xad\x48\x5f\x98\x0d\xb4\x38\x69"
        "\xd8\x3a\xec\xe5\x31\x92\xb2\xb6\xf1\xd7\xb8\x29\x65\xf9\x64\xa1\x14"
        "\x42\xd0\x77\x15\x26\xd9\x7e\xb0\x16\x03\xa1\x4e\xb2\x96\x54\xb2\x55"
        "\x66\xda\x7a\xcf\xd6\x92\xb8\xf0\x37\xda\xbc\x10\xde\x97\x89\x3f\x83"
        "\xfb\x2d\xb9\xf6\x90\xec\x90\xeb\xdd\x88\xba\x44\x5b\x37\x5c\x21\x1d"
        "\xd6\x75\x6b\x28\x47\x7c\x92\x92\x79\xb3\x5b\x9f\x40\x4d\xce\xfd\x01"
        "\x6c\x40\x7e\x4f\xf3\x10\x72\x71\x19\xec\x5f\xc7\x5e\xd8\xa0\x65\x8e"
        "\xf6\xb8\x32\x5e\x9b\x88\x06\x37\xae\xac\x79\x65\x2f\x36\x2a\xce\x8f"
        "\xe7\xee\x42\x1b\x78\x22\x45\x49\xf3\x24\xd6\xd9\x45\xf9\x45\x31\x1a"
        "\xbe\xab\x90\x3f\xde\xab\xf4\xf1\xef\xa7\xd1\x63\xeb\x38\x43\x2b\x3a"
        "\xf6\x43\x57\xf0\x4e\x62\x0c\xf5\x19\x07\xa0\x99\x5a\x3f\x0f\xf6\xb0"
        "\xce\xd7\x68\x4e\x96\x91\xdc\xf4\x4b\xeb\x03\xd8\xfe\xed\xb3\x41\x87"
        "\x72\xbe\x3f\xab\x3a\x2c\xa8\xb9\xbc\xbc\x10\x70\xd0\xa5\x86\xdb\x39"
        "\xee\x81\x22\x57\xe8\x69\xea\xce\x66\x9b\xdc\x32\x38\xe5\xec\x5e\x37"
        "\x50\xdb\xbe\xc1\x18\xc7\xde\x7c\x2a\xa3\x00\x9a\x7c\xe9\x53\x62\x0b"
        "\xf2\x23\x6d\x81\xa5\xa2\x00\xef\x5b\xb3\xce\xcd\x75\xa7\xef\x8b\xa1"
        "\xf8\x7e\x39\xd9\x73\x5a\x7c\xfe\xe3\x4a\xcb\x32\xa5\x38\xa7\xec\x61"
        "\xa5\x2d\x5d\x01\xcf\x0b\xb2\xca\x6f\xc8\x57\x55\xb1\xfc\xde\xff\x52"
        "\x7d\x4a\x3f\x43\xd1\xb0\x1e\xcf\xd6\x33\x5a\x1f\x7b\xfe\xce\xf1\xaa"
        "\x1a\x4b\x30\x15\x93\x3b\x7c\xfc\x4d\x1f\xb1\xd0\xae\x86\xa8\x3f\x03"
        "\x98\x31\x61\xcb\x5a\x87\x64\x3a\x34\x17\x73\x1a\xa4\x4d\x49\x42\xfd"
        "\x0d\x22\xef\x74\xfd\x4e\xc4\x84\x84\x8b\x5a\xb9\xe5\x80\x69\xab\x85"
        "\xee\x08\xbf\xf5\x45\x4a\xf4\x1c\x65\x1f\x1b\x42\x63\xef\x43\x97\x04"
        "\xc3\x45\x28\x06\xcc\xca\x09\x7a\x9e\x65\xc3\xc6\xec\x06\xce\xe8\x56"
        "\xea\x71\x3c\x70\x06\xaa\xdb\x7a\x75\x3a\x16\xf9\x8d\x5d\x22\xe7\xef"
        "\x8e\x70\x8e\xd4\x17\x28\xdf\x1f\x29\x70\x39\x9b\x8e\x0c\x34\x6e\xfa"
        "\x1d\xf2\xde\xcc\x48\xe1\x49\x02\xce\x55\xe6\x52\x86\x54\x39\xdc\xdf"
        "\x82\xfc\xfd\x59\x9b\x35\xfb\x0a\x70\xc1\x28\x7e\xcb\x78\x4b\x4d\xd2"
        "\x42\x64\xa6\x01\xff\x9f\xe0\x9b\x8f\xbc\x0a\x09\x03\xfb\x35\xe6\x51"
        "\xc6\xd9\x5a\xbd\x56\x54\xb1\xe1\xc7\xbb\x21\xe9\x8f\x93\x1a\xdf\xc7"
        "\x52\x1f\x05\x5e\xa2\x9e\xe9\x59\xe9\x9b\x83\xfb\x9e\x2f\x27\x9d\xbc"
        "\xd2\x72\x35\x2d\x01\xae\x52\x09\xd9\x21\x7c\xc7\x85\x71\xe5\x94\x4f"
        "\xd4\x94\x2b\xcf\x15\xa8\xa7\xfd\x44\x51\xbd\x1a\x41\xa1\x9d\x54\x46"
        "\x65\x04\xd1\x56\xb7\xa6\x33\xa4\x69\xa6\x6b\x5c\xbf\xd9\x6b\xe1\xeb"
        "\xe7\xc7\x3f\xcf\x07\x03\xa2\xfd\xfe\x75\xa9\xc8\x47\x8f\xbb\x95\x74"
        "\xb9\xf1\x7d\x2c\x83\xcb\x7f\x5e\xf3\x25\x67\x9b\x3a\x0d\x16\xde\x69"
        "\x95\x0e\x1f\x0e\x79\xa3\xe6\xfd\x48\xe8\x4f\xdd\xf3\xdf\x39\x2f\x74"
        "\x8f\xbf\xd8\xe0\x4c\xb6\x77\x29\x7d\xe8\x2c\x6e\xfb\xb6\xf7\x7e\xd1"
        "\x5f\x6c\xb9\xd6\xf9\xe7\x99\xa6\xb3\xb9\xd1\x71\xa9\x3d\x6a\x13\x6e"
        "\x97\x7c\x36\x60\xe0\x89\xdb\xe7\x12\x27\xa4\x46\xc1\x1a\xc0\xc5\x79"
        "\x43\x7a\x5c\x19\xf8\xc1\xef\x36\xb2\xd2\x5b\x33\xd0\x02\xc8\x4b\x2f"
        "\x6c\x21\x02\x07\x88\x73\xc7\x20\x6d\xf8\x6d\x3a\x08\xce\x8a\x84\x61"
        "\x0a\x8f\x64\xf8\xb8\xa8\xa9\xa8\xdb\x6e\xbb\x75\x48\x3f\x86\x97\x77"
        "\x67\x89\x33\xac\x06\x14\x9b\x2a\x40\x9a\x90\xb7\x65\xb9\xbb\x67\xc5"
        "\xf4\x87\xae\x9a\x25\xd5\x78\x26\x95\xd4\xee\x24\xc8\xaf\x8c\x75\xc5"
        "\xfc\xbb\xca\x49\x65\x27\xb8\x9c\x1a\x0a\xe6\x5b\xdf\xd3\xea\x0b\x2d"
        "\x2a\x5f\x14\x1e\x66\x43\x38\x43\x98\xf8\x91\x33\xc9\x75\x97\x75\x34"
        "\x4d\xae\x66\x81\x19\x04\x87\x50\xf6\x8d\x63\x03\x39\x44\xb0\x90\xce"
        "\x7b\x7c\x4e\xe7\x8b\x26\x19\x77\xa3\xca\x2c\xf7\x08\xc2\xc4\xf4\x3d"
        "\xaf\x50\xd3\x37\xf1\x93\xd9\x6c\x89\x56\x05\xa3\xac\x9b\x98\x2c\xfa"
        "\xb2\xc5\x44\x69\x72\x08\x9e\x1f\xe7\x51\xd8\xb5\xba\x6b\xfc\x3c\x3b"
        "\x17\xba\xe1\xd9\xe0\x51\x99\xf5\x05\xe3\xb1\x08\x93\xb8\x46\xef\x51"
        "\xc4\x11\x0c\x03\x59\x45\xd6\x8c\x35\xef\xd5\xb1\x82\x21\x3d\x3b\xfe"
        "\x80\x42\x8a\x47\xa8\xa3\x0c\x28\x26\x5c\xe8\x7f\xec\x46\xf5\x3a\x4f"
        "\x81\x7d\x3b\x90\x0a\x54\x06\x14\xa5\x81\xaa\x7c\x8b\xf4\x6e\x7f\xa6"
        "\xa9\x14\x78\x83\x7f\x92\x5a\x8a\x6e\xbb\x66\xa8\xde\xf3\x7b\x8b\x1f"
        "\x00\xa7\xb5\x91\x31\x6c\xdc\x93\x83\xfb\x15\x58\x41\xf3\xf1\x3c\x49"
        "\x7d\x30\xa5\x87\x93\xe3\x2c\xad\xa0\xd6\xa3\xf3\x29\x11\x8e\x80\xc9"
        "\xac\xfe\xac\xc9\x17\xd4\xeb\x0c\x97\x1f\x06\xbf\x39\x8e\x68\x8c\x64"
        "\x42\x70\x03\xd2\x11\xc9\xdb\x88\x31\x0f\x83\xe7\xa1\xd6\xf6\x2b\x6e"
        "\x70\xd0\x02\x23\xd4\x3c\xcf\x06\x83\xb7\xbc\xdd\xb3\x38\x3e\x61\x8c"
        "\xed\xdc\xda\xf4\xba\x9f\xc3\x47\xa9\x4f\x78\xe1\x78\xd2\xb1\xb7\x54"
        "\x0f\x73\x61\xe3\x73\x4c\x95\xbf\x97\xd2\xd5\x71\xb6\xc5\x73\xf1\x10"
        "\x6a\x48\xb9\xd7\x43\x41\x82\x52\xc9\x41\xdb\x35\x45\x9d\xeb\xb2\x90"
        "\x6d\x5c\x18\xdd\xa3\x95\x30\x1d\x73\xd8\xb0\x7d\xbd\xe1\x1d\x82\x4a"
        "\x92\x61\x31\x9a\xf3\x13\x7c\x69\xff\xa4\x35\xcc\xf6\xcb\xa0\xf7\xce"
        "\x99\x9b\x1e\x2d\x04\xf6\x03\x3c\x4f\x0e\xef\x95\x87\x2c\xa0\x2a\x3d"
        "\xe9\x69\xc4\xbb\xfa\x5c\x19\x1f\x66\xeb\x77\x00\xdd\x28\xe4\x15\x05"
        "\xfa\x6b\x0f\x50\x54\x17\x5f\x17\x2e\xd2\x44\x1b\x17\x87\xf2\x93\xf2"
        "\xa5\xb3\xe6\xf4\xee\x14\xff\xcc\x02\x91\x3e\xd3\x66\xb4\x85\xc5\x42"
        "\x53\x24\x7b\x3a\x06\xb3\x1c\x4e\xa4\x60\x17\x1f\x36\x7d\x72\x9a\x03"
        "\x72\x28\x72\x6c\xa8\xe7\x2d\x94\x97\x85\x99\xd0\x3e\xed\x13\x8a\x05"
        "\xc3\xe7\xa5\xfe\x79\x80\x49\xcf\x73\xbd\x2a\x89\xe7\x00\xcb\xd1\x88"
        "\xff\xf5\x5a\x23\x6f\xc0\x51\x28\x64\x98\x55\x75\x52\x95\xca\x64\x7a"
        "\xb0\x45\xa5\x5f\x83\xe9\x45\x94\x4a\x01\x32\x74\x56\xb5\xc5\xc8\x6d"
        "\xed\x1e\x58\x15\xf9\xb6\x10\x9c\xa3\xf1\xd5\xfc\x2a\x1c\x33\x10\x24"
        "\x2f\x5f\x06\xb4\xf5\x2f\x6f\xa0\x08\x4b\x02\xec\x4a\xd5\x3b\x46\xea"
        "\x00\xb5\xfd\x47\xec\x28\xda\xcc\x16\x34\xd3\xda\xeb\x08\x36\xaa\x6f"
        "\xfc\xb9\x1b\x3d\x51\x2e\xc2\xde\xfe\x1d\x69\x4d\xd9\x3f\xf9\x20\xf7"
        "\x25\x05\x73\xfa\x72\xd3\xf8\xe7\x0c\x84\xa8\xa1\x2a\xcd\x4b\x85\xd7"
        "\x65\xe6\x82\xad\xb1\x92\xba\xf8\xcc\x00\x4d\x76\x7a\x78\xac\x66\xe7"
        "\x72\x4b\xfe\x4c\xa4\xda\x6e\x5c\x3c\xea\xaf\x63\xf6\x55\xe0\xbf\x5d"
        "\x12\xd1\xdf\xb7\x26\x96\x2a\xcd\xb2\xe7\x84\x24\xe2\x36\x93\x21\x44"
        "\x42\x71\xba\xba\x49\x5e\x5f\x52\x64\x16\x7b\x46\x7c\x5a\x76\xcc\xa0"
        "\x2b\x13\xe3\xb2\x1b\x81\x0e\x68\xda\xf2\xc6\x81\xcb\x67\x5a\x2a\x84"
        "\x86\x7e\x20\x70\x4a\xf3\xb7\xac\x67\x9b\xbe\x38\x86\x2c\xf8\xee\x37"
        "\x4b\xf1\x44\x62\x8b\xde\x69\xd6\xb9\xa0\x9d\x53\x37\xf0\x5e\x4c\x7a"
        "\x55\x0c\x1d\x78\x4f\x5a\xf0\xc1\x4d\xde\x74\xeb\x94\x50\xfa\x16\xe3"
        "\x4a\x99\x73\xda\xee\x4e\x32\xcc\xf0\xb0\xf9\x28\x09\x2a\x8b\x13\x79"
        "\x2c\x0c\x1e\x80\x80\x57\x3f\x3e\x6e\x59\xd3\xa4\xf7\xcf\xd1\x5b\x6f"
        "\xce\xb7\x5a\x4b\xe1\x2e\x65\xd1\x89\xb8\x81\xd9\x1d\x6a\x2e\x48\x48"
        "\x00\x47\xa8\xc7\xd0\x60\x5f\xee\x90\x1f\x7d\xf5\xfc\xd2\xd2\xc4\x41"
        "\x90\x0b\xf3\x8a\xaf\x0a\x87\xb0\x93\xfa\x88\x4b\x69\x7a\x7a\xc2\xd9"
        "\xcd\x2c\x63\x9d\x1e\x90\x1b\x03\xdd\xa4\xb5\x9d\x86\xea\xb4\x00\xc1"
        "\x44\xe7\xc6\xb3\x5c\x57\xee\xfb\x6d\x67\xaa\xce\x90\x4a\x43\xcb\x31"
        "\xc1\x00\x8d\xa5\x0a\xf5\xba\x9a\xbe\x03\xb0\x17\x11\xfa\xcf\x6f\x5a"
        "\x13\x35\xec\x05\x64\x6e\x6f\x6e\x31\x0a\x61\xda\x64\x57\x53\xa0\x21"
        "\x87\x35\x92\xa7\x9b\x1d\xbb\xe7\x2e\xee\xa1\x03\x72\x69\xb7\xc3\x33"
        "\xaa\xa7\x90\x76\x89\xfc\x08\xe0\x93\x26\xd8\x95\x8e\x2b\xef\x6a\x64"
        "\x86\xc4\xc3\x83\xfc\x24\x93\xa5\xf0\x4f\xc8\x0c\xb4\xd8\x72\x54\x6f"
        "\x36\x5b\x30\x57\x8b\xcc\xff\xcc\x49\xf7\x75\x11\x13\x2d\x99\xf5\x1d"
        "\x98\x03\xe8\x1f\x14\x7f\xbf\xad\x78\x08\x92\x8d\xd1\x22\x4b\x26\xf3"
        "\x2d\x4f\x2d\x93\x71\x7a\x73\xf0\x03\x5a\xcb\xdb\x3c\xa0\xb4\x1a\x47"
        "\xd7\x6e\x2b\x84\x63\xc7\x5a\xcd\xea\x32\xf3\x79\xe5\x00\x60\x4a\x6b"
        "\xfa\xa9\xb0\xa2\xac\x32\x6a\x49\x53\xe3\x43\xec\xcd\xbd\x10\x7f\x01"
        "\x8e\x2c\xd8\x20\x12\xbf\x2b\xa6\xf2\xf3\x1e\x16\xf8\x1b\x4b\x0c\x61"
        "\x23\xea\x06\xfe\xac\xf9\x4d\x9b\x4e\xfc\x53\x84\x4b\x46\xdd\x9b\xf1"
        "\x2f\x2d\xdc\x3f\x4c\x6a\x30\x9d\xdc\xa3\xa9\x82\xb8\xe4\x77\xd0\x3e"
        "\xc2\xda\xdb\x67\x47\xda\x93\x6f\xb1\x5e\xcb\x11\x4b\x5f\xd4\x9e\x32"
        "\x99\x1e\x54\xc7\x36\x73\x05\x6d\x99\xa8\x09\x2f\x4e\xcc\x8f\x14\x83"
        "\xaa\x8a\x7b\x10\xb5\x8e\xcc\x45\xb1\x32\x2f\x18\xbb\xae\xa3\x58\xc5"
        "\xe7\xd1\x9d\x30\x97\xdf\xf1\xe4\xb7\xf1\x13\xd4\x46\x71\x01\x83\x65"
        "\x8a\x83\xd5\xf5\x51\x67\x5a\xb9\x43\x6d\x50\x4b\xda\x19\x54\x9b\x8c"
        "\x49\x61\x01\xa8\xdc\x6f\xf7\xa7\xf0\x65\x98\x11\xff\x2c\x85\xf4\x14"
        "\x61\x6c\x85\x8f\x94\xf3\x4a\xe1\x1f\x8c\x46\xd0\xbb\x93\x9f\xe9\xdc"
        "\x38\x7f\xac\xd0\x07\xa5\xc5\xbe\x72\x3c\xd5\xa0\x71\x9b\x5b\x20\x05"
        "\x02\xf0\x54\xfd\x57\xd9\x42\x79\x44\xf6\x5d\x5c\x83\x5e\x2b\xe5\x99"
        "\xf8\x06\x5f\x25\x09\xc3\xe2\xb5\x02\x58\xc7\xef\x9f\xa3\x01\x03\x4d"
        "\x8a\x57\x1c\xe0\x7a\xf5\x9f\x56\x26\x96\x7c\x0f\x1d\xad\x5b\x6f\x64"
        "\xa5\x36\xc0\x8f\x9a\xdf\x0e\xd7\x28\x61\xfe\x94\xa5\xf9\xe3\x13\x66"
        "\xec\x09\x12\x8a\x94\x73\xb4\x35\xb0\xae\x0d\xc8\x72\x4c\xdd\x81\xc9"
        "\xf4\x45\xd8\x3f\xbb\xd1\xf7\xb1\xd3\xeb\xe2\x56\x61\xe9\x5f\xad\x97"
        "\x3f\x8c\xc1\xbf\x9f\x49\x4c\x84\x8c\xad\x48\xce\xd9\x58\x64\x56\xeb"
        "\x4b\x1f\xef\x2a\x1e\xc1\x55\xc4\xee\xd6\xb9\x8d\xcc\x51\x58\x51\xbe"
        "\x8c\xf4\xa6\xcc\x17\x41\x03\x9d\x99\x3c\x72\x45\x3e\x57\x7d\x55\x1f"
        "\x8a\xd9\x5d\xc3\x21\x09\x18\xfd\x3d\x6b\x03\x78\xfd\x06\x26\xdb\xf5"
        "\xb1\x0f\x5b\x05\xc9\x36\x68\xe9\xaf\xe0\x7a\x77\x18\x03\x57\x6a\x29"
        "\x25\x47\xc0\x2e\x4f\x14\xd4\xee\xb6\x8a\xb6\x54\x64\x52\x65\x8b\x33"
        "\x6f\x11\x34\x68\xef\xda\xb3\xc4\x34\xbe\x30\x2a\x19\x07\x7d\xf2\xb9"
        "\x1d\x64\x65\xdf\x4d\x91\x0d\x7e\x91\xa5\x66\x5a\x55\xe6\xf2\x39\x50"
        "\x6c\x50\x68\xf3\xf6\x3f\xc2\xda\x2b\x62\x58\x77\x92\xbc\x21\x44\xf3"
        "\xd2\xf3\x19\x6b\xd3\xb7\xbc\xd7\xb8\x41\xab\x2f\xb4\xa7\x87\x60\x85"
        "\x74\x71\x5e\x85\x08\xb9\xb4\xa6\xd1\x98\x96\x7e\xe4\xb9\xf1\xd3\x81"
        "\xb7\xb3\xee\x8e\x14\xab\xc6\x55\x1f\xb9\x1c\xfa\x99\x47\x34\x78\x8d"
        "\x49\x92\x38\xaf\x06\x53\x8b\x2d\x81\x16\x00\xe1\x95\xe2\x71\xde\x6b"
        "\x88\x39\xdc\xb0\xdf\x63\xeb\xc2\xaf\x9a\xb5\x6e\xca\x01\x29\x3a\x9e"
        "\x33\xeb\xd5\x5c\x81\x09\x85\xc7\x62\x49\xa3\x2b\x60\x75\x34\xfc\x95"
        "\x49\xb4\xf3\x50\x47\x4d\x5e\xc9\xd3\x1e\x12\xd5\x83\xb0\x17\xf3\x1e"
        "\x12\xb3\x7c\xc4\x19\x6a\x24\x88\x25\x40\xc8\x90\xa5\x47\x83\xe9\xb9"
        "\xb2\xa6\xed\xda\x5c\x11\x3b\x3b\xc4\x4e\x21\x25\x88\x76\x02\xfa\xfe"
        "\xf1\xf7\x3d\xfa\xb0\x5b\x2d\xd1\x5a\xaa\xbc\x73\xd4\x6a\x2f\x9d\x67"
        "\xde\xb5\x7f\x50\xb7\x40\x1f\x10\x18\x88\x77\x65\x9b\xe8\x0c\x24\x87"
        "\xee\xff\xaa\xaa\x01\x1c\xbb\xb4\x30\x8d\x7b\x6c\xa7\x46\xe0\x97\xb7"
        "\x94\x55\xe5\x9c\xd1\xf9\x97\x8d\xd2\x2e\x5a\xf4\x16\x3e\x2d\xcc\xd2"
        "\x0d\x03\x81\xe5\xc7\xbb\xec\xfe\x23\x08\x5c\x62\xc3\x37\x5c\x44\x28"
        "\x2d\x23\xd2\xfe\x88\x56\xc0\x5b\x4a\x21\xb9\xe9\x04\xe0\x62\x03\xee"
        "\xdf\x38\x95\x19\x25\x26\x58\x7e\x89\xce\xbb\x1d\x5f\x63\x59\x52\xdc"
        "\xd3\xc3\xd8\xd1\x5d\xe6\x8c\x02\x48\xb9\xc5\x10\xb9\x37\x7c\x7d\xb2"
        "\xec\xce\x2b\xa2\xf2\x59\x05\x8e\xc0\x25\x33\x23\xc7\x45\xbb\x99\xaf"
        "\xf1\xae\x5b\xde\xf4\xac\xbc\xc6\x81\xa5\xae\x31\x5c\x06\xcc\xc3\x0c"
        "\x81\x93\x73\x57\x3c\x4c\x24\x46\xc1\x21\xff\xdd\x19\x14\x8f\x41\xe6"
        "\x10\x4e\xf7\x4e\xec\xb4\x04\x5d\x5d\x0a\xbb\xbb\x70\xbb\x56\x27\x92"
        "\x78\x75\x65\x1a\x52\xdf\x66\x09\x26\x8e\x2e\x3d\x23\x67\xd5\x5a\x06"
        "\x59\x2b\x69\xf6\xa9\x0f\x3d\xfe\x6d\xd4\x21\x60\x60\xdb\xcd\xf7\x6e"
        "\x13\xb1\x0a\xa3\x5a\x95\x7a\x42\x36\x81\xb0\x2c\x35\xdc\x08\x13\x83"
        "\x99\xc1\x7d\x15\x3c\x5a\xa6\xe0\x34\xa8\x61\x87\x11\x91\x88\x8c\x8e"
        "\x72\xa5\x2c\xed\xa8\xbd\x24\xa0\x1d\x37\x2b\x86\x68\x19\x43\x52\x59"
        "\x39\xd6\x67\x52\x3b\x99\x96\x81\xfa\x78\x36\x0f\xa5\x27\xa9\xcb\xc4"
        "\xd0\x3a\x84\x36\x58\x4a\xeb\x94\x0c\x95\xe3\x66\xb7\xc7\x36\x0a\xb5"
        "\x78\xe9\x1a\xd3\x72\x8b\x86\x64\xde\x2a\x7f\x19\x81\x0a\xe5\xfa\xe3"
        "\x14\x10\xa0\x1b\x22\x39\x00\x2a\x55\xa0\x5e\x7c\xed\x9d\x95\x1f\x65"
        "\x32\x45\x20\x10\x6a\x8c\xcf\xbe\x61\x71\xfd\xae\x9b\x14\x3b\x67\xcc"
        "\x25\x47\x22\x45\xf9\xa0\x9d\x70\x81\xe0\x39\xe5\x43\xa6\x23\x87\xa2"
        "\xf1\xa7\xb1\x8f\x5b\x13\x3b\xf1\x55\xad\x44\xf8\x80\xcb\x6c\xe5\x6c"
        "\x8d\x9f\x92\x5f\x60\x23\x83\x1e\x95\x3d\x17\xec\x40\x2c\xaa\x9b\xe7"
        "\x41\xfe\x2d\xed\x83\x5a\x07\x12\xac\x74\xde\xfe\x9d\xac\x6e\xc0\xb9"
        "\x4b\x43\x6e\x9f\xba\x94\xc4\xb6\x02\xe3\x66\xf3\xaf\x0d\x2e\xfa\x14"
        "\x9e\xcd\x25\xb0\x8f\x98\xe4\xb8\x05\xe5\x6b\x40\x2f\xe1\x1a\xdb\x30"
        "\x4b\x2c\x1c\x36\xb3\xe8\x5e\x4a\xc2\x17\x61\xb0\xf4\xd7\x55\x63\x6e"
        "\xb1\x1f\x81\x89\xb0\xc5\x0a\xd7\x45\xa1\x4c\xaf\xa9\xf3\x13\x7c\xfe"
        "\xc2\x9e\xdf\x8c\xb9\x5b\x76\x10\x24\xa8\x5f\x1b\xb5\x6f\xb8\xb9\xf3"
        "\xe7\x85\x84\x2c\xb0\xf2\xc8\x71\xe2\x5e\xe3\x00\xba\xfd\x67\xe4\x0e"
        "\x98\xf8\x6d\x8f\x36\x4c\xe9\x85\x15\x52\x33\xc1\xcf\x1c\x0d\x94\xb7"
        "\xa7\x97\x9f\x3b\x71\x4e\x6f\x1a\x31\x11\x6c\x54\x21\x58\xa4\x6d\xe5"
        "\x2f\xf5\xc3\xaa\x77\x20\xda\x90\xdc\x90\x7e\x9d\x19\x5e\xb4\x11\x67"
        "\xc7\xb3\x24\xdf\x22\x93\xb0\x0e\xda\xe1\x24\x7e\x0a\x78\x48\xdf\xaa"
        "\x3f\x41\xe1\xfb\xc6\xdf\xad\xd4\x94\x85\x3d\xc6\x5a\xa3\x1c\xe5\xd6"
        "\xa6\x52\x56\x39\x99\xe2\xf1\x6b\xa6\x6d\x95\x84\x9d\x9a\xbe\xe6\x68"
        "\xe9\xe0\xfb\x53\xd2\x75\x0c\x45\xb7\x61\x77\xf0\x79\x98\x8b\xc0\x59"
        "\x9b\x88\x35\x84\xbd\xb6\x07\x52\x30\x82\x7a\x17\x06\x84\x4d\x52\xac"
        "\x27\x79\x9e\xb5\x68\xbd\x86\x47\x56\xf1\x82\x40\x1a\x64\xff\xa9\x23"
        "\x3e\x02\x5a\x77\x0e\x3c\x43\x0b\xf2\x0f\x77\xcd\xde\xd6\x42\x88",
        4096));
    NONFAILING(*(uint64_t*)0x20001440 = 0x20001480);
    NONFAILING(memcpy(
        (void*)0x20001480,
        "\xc1\xf7\x6d\x76\xb2\x23\x1a\x5c\x35\x42\xc6\x73\xe5\x00\x57\xfb\x2a"
        "\xd0\x6e\x69\x55\xa8\x9e\xf0\x81\x62\x1e\x2d\xfe\x0d\xbc\xce\x89\x50"
        "\xbb\xdc\x5c\xe6\x0c\x25\x90\x7d\xb1\x11\xa1\xa3\x32\x34\x57\x1b\x6e"
        "\xe5\x03\x2f\x5e\xf6\x67\xdd\x12\x64\x59\x30\x3d\x66\x6b\xb9\x4a\xe6"
        "\xe5\xa0\xad\xb9\x39\x90\x25\xb3\xea\x46\x2c\x04\x66\x07\xa6\xa7\xeb"
        "\xe3\xe1\x37\x6b\xae\x38\x2c\x38\x85\x75\x79\x30\x63\x82\x37\xed\xff"
        "\x01\x93\x1d\x65\x89\x0d\xec\xea\xac\x3a\x1a\xfb\x86\x04\x3d\xc6\xe4"
        "\x96\x0c\x0f\x93\xae\xd0\xf6\xfe\x09\xdb\x68\xd3\x63\x47\xc8\x7a\xa9"
        "\x37\xfa\x2b\x28\x4d\x10\x6d\xe5\xa3\x02\x36\xda\xdb\xc9\x4d\xc2\x6d"
        "\x94\x58\x87\x83\x1b\xc2\xa0\x63\x6d\xb3\xf1\xaf\xa5\x35\x87\x68\x63"
        "\xe1\xff\x32\xf2\x65\x15\xee\xd8\xf4\x97\xff\x30\x0a\x6f\x21\x70\x3d"
        "\xd3\x51\xb1\xcf\xf1\x96\x93\x4f\x39\x5a\x55\xd7\x1e\xf5\x3e\xb3\xd4"
        "\x75\x07\xe9\xb6\xdb\xc4\x0c\xee\x6c\x2c\x69\x63\xb3\x5f\x32\xe5\x22"
        "\xec\x14\xae\x3d\xcf\x89\x5d\x15\x7c\x5d\x2b\x17\x25\x69\x75\xe6\x28"
        "\xa3\xf3\x55\xc6\x39\x73\xe4\xeb\x11\xe8\x73\x5f\x84\x0f\x14\xb0\x0d"
        "\xc0\xbb\xe8\x0c\xeb\xde\x1f\x2e\x76\x44\xf2\x25\xf8\x87\x82\x85\x7d"
        "\x14\x42\xd7\xa6\x5b\xf5\xc9\x3e\xe4\xd8\x33\x6e\x24\x75\x5b\x6b\x36"
        "\x1b\x25\x1c\xae\x4d\x28\x6a\x5c\x67\xcf\xab\xcc\x90\x6d\x1d\xf1\x0d"
        "\x6f\x50\x1a\x74\xd3\x4d\x52\x3b\x19\x98\x52\xa0\xd0\x20\xb7\xb2\x22"
        "\x80\x92\x77\x0e\x5d\x94\x13\x4c\xd2\x1e\xa5\x73\xac\x06\x26\x4e\x0e"
        "\x9d\xe7\x83\x13\xac\xe9\x9d\x54\xae\xff\xe4\xf9\x2a\x16\x97\x3e\x8c"
        "\xa4\xe8\xc7\xa2\xab\xde\x1a\x47\x14\xb5\xc1\xa5\x4c\x9a\x35\x1f\x4b"
        "\x4a\xc4\xab\x7f\x16\x7e\xe5\x42\x4e\x1b\xeb\x3a\x7d\x0f\xb4\x02\xd1"
        "\xbc\xdb\xae\x5c\x42\x58\xc3\x09\x7b\x07\x9d\x07\xb2\xef\x01\x24\xf1"
        "\xba\x5c\xa2\x8a\x43\x02\x7f\x26\x9e\x97\xea\xbc\x5e\x07\x79\x3f\x8a"
        "\xde\x76\xb7\x6a\x04\xd5\xc0\x08\x48\x7c\x4c\xe9\x1d\x34\x6c\xd4\x51"
        "\xe8\xf7\x52\x66\xb3\x35\x31\xfc\x6c\xab\x3e\x97\xd0\x45\xe0\x6f\xe0"
        "\x57\x05\x63\x1e\x23\x12\xef\x38\xbc\x1e\x89\x4a\x9b\xc8\x6d\x5f\x8d"
        "\x65\x52\x97\x67\x53\xf4\x22\xc0\xff\xd4\xf3\x1d\x88\x92\x81\xc6\x95"
        "\x31\xc7\xf5\xd3\xbc\xd9\x01\xa5\xf4\x27\x9d\x6d\xf9\x20\x2f\x54\x93"
        "\xfd\x38\x79\x93\x8c\x93\x16\x01\xd1\xe8\x8e\xc5\xb6\xbd\xa8\xf6\xa2"
        "\x79\x66\x29\x7e\x90\x88\x79\xde\x14\xdf\x2d\xd2\x21\x4c\x59\xf7\x92"
        "\xc2\xcc\xa4\x4f\x97\xd5\x8e\x55\xfe\x3d\x74\xbc\xa3\xa9\x32\x11\x72"
        "\x89\x4b\xa7\x96\xc6\x54\xad\xb8\xae\x14\xf7\x24\x6a\x45\xd5\xda\x77"
        "\x54\xc5\x42\x9d\xb5\xed\xb1\x51\xe4\x3c\xd6\x54\xfa\x48\x2e\xf4\xf6"
        "\x2e\x73\xa1\xef\xdb\x3b\x6a\x55\xd4\xb7\xfe\x49\x34\xa3\x73\x9c\x00"
        "\x31\xb7\x43\xb9\x56\x72\x5c\x83\x54\x05\xfa\x0e\xc9\x98\x80\xec\xe7"
        "\x2a\x94\x69\x2a\xc1\xd8\xdc\x28\x03\xe2\x3e\x12\x60\x29\xf6\x1c\x2c"
        "\x71\xda\x42\x5c\x90\xb8\x22\x18\x76\xa6\x36\x5a\x20\x80\x3f\x13\xf9"
        "\x38\x99\xee\x12\xb6\x72\x96\x2a\x75\x34\x52\x84\xec\x53\x9c\xba\x5d"
        "\x81\xe0\x10\x8c\xd0\x70\x06\xe6\x2d\x45\x3e\xd5\x9f\x40\x3f\xe5\xed"
        "\xc3\x0b\xaf\x3c\xe0\xfd\x06\x23\x8b\x7f\x69\x4b\xeb\xb0\x52\xd2\x5d"
        "\x5f\xd5\xe2\xff\xa0\xce\x31\xb7\x00\xa9\x72\x23\x2d\xdd\x55\x74\x1e"
        "\xb0\x4d\x04\x6c\xf9\x8b\xe6\x52\x7f\x85\x99\x33\x82\x95\xf3\x95\xac"
        "\x9e\xd3\x37\x3b\x6a\x8a\xce\xfd\x8a\x4d\x96\x61\xb1\xe1\x1a\x05\xe1"
        "\x58\xd2\x2b\x62\x87\xad\x89\xa7\xda\x7c\x8f\x01\x4f\xf8\x52\x22\xba"
        "\xa9\xec\x10\x6d\x2a\x8c\xc3\x21\x70\xf2\x59\xcb\x99\x07\x6f\x78\xe7"
        "\x39\x0c\xb5\x62\xd8\xe5\x60\x97\xd4\x53\x92\x02\x48\x29\x35\x0f\xd2"
        "\x57\xcf\xba\x11\x7c\x00\x39\x41\xb4\x31\x22\x96\xa9\xb7\x57\x70\xe1"
        "\xfc\xe6\x61\x24\xf4\xf2\x6b\xd2\x21\x24\xfa\x1f\xc7\x5e\x9b\x9c\x13"
        "\xeb\x39\xb1\x54\x85\x28\x4d\x35\x61\xf8\xed\xe4\x14\xb6\x31\x3a\xdf"
        "\xd5\x4d\xa1\x18\x34\xce\x61\x63\xdd\x56\x3d\x7c\x5e\x77\x7b\x1a\xf8"
        "\xf6\xfb\xf5\x27\x91\x8a\xe0\x81\xf8\xb0\x70\x31\x2a\xee\xb5\x2f\x3a"
        "\x10\x95\xf1\xd1\xf9\x6c\xa5\x6c\x95\x21\xd4\x4c\x81\xb1\x44\x6b\xef"
        "\x79\xc4\x15\x5b\xf5\xe3\x58\xf3\x38\x2e\x58\x58\xda\xb3\xf8\x4d\x71"
        "\x8d\x4c\xe5\xc0\x31\x5b\xe6\x42\x30\x9b\x83\x60\x21\xd3\xd6\xb0\x66"
        "\x46\x1f\x34\xbe\x8b\xb5\x6a\x30\xfc\xc5\x83\xcb\x79\x87\x07\xe1\x91"
        "\xcb\xde\x52\xc3\xf2\xa1\xa3\x52\xbd\xc1\x9f\xb5\x96\xaf\x5c\xd1\xe8"
        "\xdc\x44\x18\x30\x1a\x8c\x09\xae\xc7\xb5\xac\x43\xdf\x09\x8b\xb2\xb6"
        "\x76\x74\x57\x7f\x74\x96\x92\x99\x42\x81\xa9\x8a\xed\xdf\x38\x7e\xd9"
        "\xae\x1d\xf9\xd6\xd2\x54\x46\x2d\x05\x03\x8c\x21\x3f\x28\x98\x85\x8a"
        "\xb7\x18\xda\x74\xde\xd3\x96\xa6\xdb\x47\x50\xe0\xea\x47\x4b\xb8\xd6"
        "\xef\xda\xe8\x7c\x19\x69\x23\x93\x67\x51\x62\x39\x23\x9e\x6a\x8d\x9b"
        "\xfa\x29\x44\x72\x81\x61\x30\xfb\x60\x42\xb2\x20\x67\x9a\xc0\x9d\x63"
        "\xc7\x7a\x8f\xba\xe5\x70\x1d\xc1\xd4\x36\xf7\xb8\xc8\x71\xac\x2b\x2c"
        "\x72\x31\x8b\x55\x4b\x91\x60\x64\xf2\x51\x78\x8e\x1d\x00\xd7\x2e\x29"
        "\xa7\x02\x3b\x82\x3c\x14\xed\x04\xf3\x09\xee\x8f\x5e\x7b\xdf\xaf\xcb"
        "\x68\x4e\x2c\xb6\xf8\x61\xa1\x82\xaf\x36\x4e\xd0\x3f\x2a\x1c\xca\xb1"
        "\xce\x84\x51\xf4\x65\x05\x46\x83\x2a\x2b\xc1\xe3\xba\x76\x96\x4b\xf5"
        "\x8e\xbd\x4d\xa0\xe5\xf0\x90\x10\xb2\x6b\xfb\x4c\xa1\x46\xf4\xe1\x20"
        "\xdd\x2a\x15\xfa\x97\xcc\x38\x52\x3c\x67\x22\x4e\x86\x4e\x54\xe8\x29"
        "\xac\xf7\xa2\xba\x78\x2f\xa5\x1a\xe6\xa4\x37\x83\x92\xd9\x17\x90\x06"
        "\xd8\xa3\xa3\x89\xc4\x86\xc3\x34\xc9\x7d\xb1\x6b\xf6\x0e\xf1\x32\xa2"
        "\x6a\xa8\x07\x56\xa6\x31\xb3\x03\x7c\xb4\xdd\xcb\x26\x70\xf1\xb9\x62"
        "\xa0\xff\x5c\x8f\xd6\x50\xe6\x29\x2e\x07\xc9\xa5\x7b\x79\xf7\x9e\x68"
        "\x29\x0d\x9e\xcc\xb4\xc6\x1b\x7f\xec\xde\x3b\x06\x0c\xcd\xef\xc4\x4e"
        "\x4a\xb5\x03\x27\x1b\x11\x2a\xe5\x6d\x44\xe9\x7a\xe5\x4a\xd7\xd5\x65"
        "\x87\xbd\x3c\x65\xf4\x48\x1f\x82\x57\x2e\x19\xae\x3f\xbf\x29\x4a\x59"
        "\xa4\x20\x92\xe9\x26\x8c\x8d\x50\x70\xbc\xc5\x80\xea\x71\xa2\xd7\x87"
        "\x27\xe0\x7c\xc4\xf7\x1b\x95\xb3\x91\x53\xd7\x5f\xbe\x3b\xd1\xfc\x07"
        "\xed\x96\x77\x19\x07\x7c\xd1\xcf\xa3\xef\x3b\xd9\x11\x9a\x9c\x0f\xb3"
        "\xda\x44\xa4\x66\xd2\xda\x92\xaf\x5d\x45\x73\x32\x37\x09\x10\x45\x59"
        "\xb5\xa4\xc6\x79\xe0\xae\xac\xad\x4c\x63\x82\xd6\xc8\x6b\x30\x42\x88"
        "\xb1\xc8\xe6\x01\x0a\x8b\x63\xe9\xab\xe5\x46\x21\x27\x0e\xe5\x2e\x46"
        "\xb2\x07\xc6\x06\x25\x88\x9c\xf0\x3a\x82\x9c\xa3\xe0\xa1\xd7\xbb\x40"
        "\xe8\xf9\x8f\x6e\xc4\xdf\x10\x58\x6f\x4e\x08\x0f\x38\xda\xf7\x48\x67"
        "\x48\x2b\x60\x76\xf3\x85\xb1\x4d\x09\x6d\xa2\x02\x23\xd4\xef\x6d\x1c"
        "\xf8\x0e\x5b\x7f\x10\xb6\xac\x03\x92\x61\xbe\x30\x7a\x8e\xcf\x3e\x21"
        "\x90\xb9\x24\x9b\x39\x35\xb7\xee\x23\x7e\xac\xeb\x7b\x8b\xff\xc2\x2b"
        "\x0f\x0f\x15\x9c\x77\x7b\x7d\x34\xb5\xc0\x1f\xcd\x45\xea\x86\x4c\xae"
        "\x46\xf9\xf3\x94\xbd\x2f\xa9\xc1\xdc\x27\x54\x3a\x32\xc7\x5f\xb7\xcf"
        "\xc4\x0f\x4f\xce\x67\x37\x27\x3c\x52\xc3\x8e\xa2\x4d\x2c\x02\xad\x50"
        "\x03\xb4\xe6\x00\xec\x9f\xdd\xa4\x6d\x75\x26\x7a\x46\xc4\x9d\x9a\xc7"
        "\x06\x2a\x10\xf9\x26\x94\xfd\xb5\x31\xb3\x00\x02\x8b\x84\xd8\x5a\x64"
        "\xe5\xae\xce\x5a\x9f\xd2\xcf\x6d\x59\xfc\x6f\x7c\xf7\x5e\xc8\x22\x4b"
        "\x1e\xba\x79\xbe\x46\xa1\xa6\x82\x93\xc9\xd1\xb1\x0e\xdc\x34\xa7\xcf"
        "\x5b\x33\xc3\x7d\x1d\x94\x9d\x10\xf7\x3b\x74\xc5\x91\x29\x74\x11\xee"
        "\x87\x71\xeb\x80\xae\x22\xbb\x7d\xf6\xa8\xfe\x49\x22\x12\xf2\x8d\x5f"
        "\xc3\xd8\xff\x8a\xfd\xd7\xce\x03\x25\x76\xf1\x1d\xd0\xf1\xaf\xa3\xc4"
        "\xea\xe2\xc4\x46\x43\xbc\xab\xcb\x83\x6c\x82\xa9\xe8\xa1\x9d\x9f\x14"
        "\xb6\xcf\xc9\x9b\x3c\x1d\x40\x64\x61\xe6\xae\xc9\x5e\xdd\x2c\x2c\x07"
        "\xd1\x48\x5e\x82\xc0\x3c\x6e\x2d\x58\x47\x7c\x31\xb7\x3a\x15\x79\x84"
        "\x7b\x36\x2f\x53\x80\xe2\x14\x0f\xc8\xe9\x1c\x6d\x6a\x72\x01\xa6\x65"
        "\x7d\x99\x91\x4e\xc7\x5f\x86\xeb\x2d\xaf\x2b\x70\xfe\xff\xdf\xc3\xa4"
        "\x27\xd6\x3c\x4e\xc7\xfb\x18\x72\x64\xba\xc9\xa2\x7a\x38\xd8\x9f\xa7"
        "\x1c\x9f\x20\xc7\x08\x73\xc8\x1e\x7b\xa9\xa1\x40\xab\x6f\x00\x81\xe4"
        "\x7b\x7f\x4c\x2f\xfb\xe0\x7e\x30\x0f\x31\x0f\x7e\xe7\x29\x6a\x19\x2f"
        "\xff\x69\x2a\x35\x73\x9f\xbb\xb9\x16\x69\x53\x94\x7b\xf0\xcf\x8b\x72"
        "\xd6\xc7\xe8\xaf\x7d\x9d\x0a\xd3\xb2\x5f\xa7\xc9\xe4\xef\xcb\xf3\x41"
        "\xf8\xb9\x2e\x8c\xad\x04\x60\x24\x26\x22\x6d\x62\xa3\x8a\xe0\x67\x31"
        "\xb5\xcc\xd7\xfd\x61\x68\x77\x4b\xe6\x50\x9a\xd8\xa5\x04\xfc\x95\xd7"
        "\x11\x39\x39\x65\x9c\x81\xa7\xb3\x50\x82\x8e\x20\xfb\xc3\xe0\x5c\xc3"
        "\xe0\x85\x19\x31\xc2\x06\x0f\x83\x5b\xce\x10\xd9\x4d\x4f\x66\xda\x05"
        "\x36\xa7\xf3\x43\xaf\xc7\xd1\xfb\x3c\x20\xf3\x57\xee\x43\xa4\xdb\xb3"
        "\xeb\x50\x29\x70\x47\xc3\x58\xb9\x75\xc8\x4d\x78\x45\xb0\x6d\x74\x9b"
        "\xdf\x7f\x96\x55\x99\x1b\x1c\x6a\x06\x55\x69\x89\x96\x7e\x19\xb7\xa6"
        "\x90\x88\x9e\x6c\x8a\x78\xf7\x51\xff\xfe\xf6\x61\xa3\xa3\x82\x93\xff"
        "\xe2\x64\xf8\xbc\xc7\x33\x6f\xa5\x37\x69\x8d\xd6\xe7\x22\x5d\xc1\xee"
        "\x1a\x5c\xbd\x3a\xb6\x02\xb8\xdc\x7a\xf9\x2b\xa4\x1e\x33\x58\x03\xb0"
        "\xf0\xe1\x82\x3c\xf0\xfc\x80\xae\xf9\x12\xdd\x72\x22\x06\xc6\xe6\xe8"
        "\x2c\xc4\xc6\x77\xd1\x64\x9e\xf9\x13\x3c\x75\x09\x8a\x73\xc8\x47\x63"
        "\x87\x2d\xf8\x8f\x15\x10\x82\x00\xf5\x72\xf1\x08\x89\xd6\xcf\x77\x74"
        "\x69\x2d\xcc\x55\x9c\x9d\xe2\xa1\x04\xff\x9e\x2b\x76\xf5\x85\xe9\x29"
        "\xe6\xab\x6d\xbc\x96\x31\xcf\x35\x48\xe5\xa8\x75\x24\x34\x14\x6b\xc5"
        "\xa7\x8e\xb6\x0b\x2d\x2a\x89\x85\x5e\xb1\x21\xd2\xd8\xf3\x04\x68\x6a"
        "\xbc\x75\xee\xe3\x4c\xcd\xd1\xa5\x0e\xad\x6f\x1b\xa9\x9c\x7d\x75\x24"
        "\x60\x5e\x8d\xb4\x24\xb6\xa2\xa9\x13\x45\x08\x69\x9d\xb4\x54\xcb\xfd"
        "\x0f\x39\x75\x8c\x29\x2b\x24\xf5\xdf\x52\x30\xdf\x24\xaf\xa9\xe1\x48"
        "\x63\xbd\x29\x87\xa6\xe8\x80\x55\x47\xf8\x69\xd7\xe0\x78\x5f\x5f\x01"
        "\x99\x34\x5c\x24\xf7\xaf\xca\x5c\x80\x14\x7a\x58\x3d\x9c\x12\xff\x7b"
        "\x86\xbb\xbd\x83\x6c\xb6\x3f\x50\x17\x3e\xeb\x98\x96\x00\x2a\x2b\xba"
        "\x3c\x85\x01\x29\x1f\x6b\xcc\x2a\x46\x3b\xfd\x38\xe5\xca\x42\x97\xd4"
        "\x3a\x2e\x99\x96\xa8\xfe\x3e\x88\x7b\x73\x0f\xe4\xe8\x14\x8e\x03\x41"
        "\x22\x9e\xe1\xef\x64\xc6\x7d\x92\xb7\x29\xf7\xec\x99\xc0\x21\xe8\xbf"
        "\xc6\xe9\x60\xe3\xb0\xa7\x20\x88\xce\x2a\x9c\xf0\x8f\x01\xf7\x9e\x46"
        "\x6d\x9c\xad\x06\xa9\x72\xa5\x68\x50\x97\xb2\xf1\x29\xf1\xcf\x61\x22"
        "\x06\x6c\x28\x28\x5e\x7f\x2d\xfc\xd7\x40\x69\x7d\xdb\xd3\xd2\x4a\x07"
        "\xa0\xf5\x5b\x51\xd6\x92\x41\x39\x3a\x0f\xec\x76\x84\xbf\x05\x22\xf7"
        "\x56\x7e\x3d\x95\x3e\xb8\x0b\x4c\x13\x06\xa5\x04\xa9\x0f\x86\x90\x9f"
        "\x88\x6c\x96\x9b\x6b\xc2\xa1\xce\x35\x27\xa8\x4c\x9c\xfb\x71\x63\x33"
        "\xc0\xc0\x01\x1b\xc5\xf7\xcc\x03\xbe\x37\x50\xc9\xef\x78\x14\xcb\x70"
        "\xdd\x84\x93\x69\x8c\xee\x0d\x7c\x14\x0f\x2e\x54\x97\x28\xe8\xac\x71"
        "\x04\xde\x8e\x9d\xe6\x34\x34\x89\xd3\x7d\x5e\x38\x69\x07\xde\x89\x3e"
        "\x9c\xcb\xf2\x8b\xf6\x7c\xbf\x9f\xe5\xaf\xde\xa2\xb6\xec\x98\x58\x5f"
        "\xe6\x6d\x91\xdb\xe6\x4d\xb2\x65\x44\x12\xeb\xaa\xd0\x9a\xa6\xec\x0d"
        "\x05\xf9\x58\x83\x47\x64\x12\x6d\xe7\x61\x7b\xab\x0d\x0a\x74\x0f\x60"
        "\xe3\xfd\x07\xa4\xd4\x06\x8e\xe4\x54\x13\xd3\xc3\xaa\xcf\x3a\x90\xc8"
        "\x3c\xe3\x38\x52\xab\xae\x8c\xc7\xed\x27\x97\xc0\x19\x6a\xe4\x73\x59"
        "\xdb\x49\xb1\xf4\x65\xb9\xd8\x8c\xd8\xe1\x4e\x14\x1a\x8f\x08\xd2\xb2"
        "\xc0\xa4\xf5\xf6\x0f\x58\x1e\x6b\xd5\x5c\x05\xab\xd8\xea\xe9\x91\x2f"
        "\x82\x1e\xa2\xd5\xac\xfe\x1f\x66\x39\x3b\x9f\x37\xd0\x0e\x97\x4d\x38"
        "\x62\x89\x06\xb4\x5b\x12\xfc\x3c\xe7\x6a\x4e\x58\x82\xb1\x90\x3c\xec"
        "\x9b\xfe\xbe\x28\x26\x54\xe0\xd0\x9f\x59\xd3\x68\x60\x40\xcc\x8e\x12"
        "\x3b\x0f\x9a\x92\xbb\x63\x69\x29\x5c\x98\xd0\xdb\x90\xe0\x7d\x40\xd9"
        "\xfa\x0e\x5a\xb7\x8f\x6a\x5d\x2a\x80\x6c\x09\x55\xf4\x8b\x92\xc3\x80"
        "\x9b\x09\x1b\x90\xae\x49\x35\xc3\xd4\xfb\x0e\x91\x79\x60\xc2\xe9\x34"
        "\x97\x5f\xb9\x15\x57\x3b\x01\x57\x77\x86\x7f\xb4\x50\x1d\x71\xa3\xe1"
        "\x81\x60\x85\x8c\xdc\x7e\xf7\x96\x52\xe4\x86\xa2\xbe\xc4\xf5\x3d\x49"
        "\x4f\xe7\x80\x93\x9c\x85\x5f\xab\x7f\x58\x67\x88\x1e\x14\x74\x9b\x20"
        "\x6f\x6c\x01\x3a\x70\x9f\xf2\xe4\xd4\xfa\x1a\xa4\x4a\x45\xa3\xa4\x86"
        "\x89\x70\xf3\xf0\x8d\x08\x20\x8b\x59\x48\x7a\x56\x67\x45\x88\x8a\x39"
        "\xda\xd6\x9e\x67\x30\xb7\x80\xbb\x09\x65\xd6\xa0\x0c\x6c\x98\x29\x34"
        "\x17\x86\xa7\x1a\xe9\xdc\x70\x2b\x99\xa9\xdf\xd0\xd2\xe4\x45\xc7\xb9"
        "\xf3\x60\xd8\x18\xa5\xdc\x8d\xb1\x77\x97\x08\xe0\x23\xd7\x94\x6b\x19"
        "\x42\x5c\x9f\xf8\xed\xce\x91\xb8\x04\x38\x41\x4f\xad\x4f\xec\x2c\xc9"
        "\x62\xd3\x50\x1a\x33\x89\xb0\x5c\x08\xe7\x5b\x80\x31\x94\xa7\x6d\xfe"
        "\xe5\xc1\x6e\xb9\x13\x97\x97\xb6\x67\x63\x67\x5a\x73\x55\x10\xc0\x6d"
        "\xa4\x2e\xb3\x4d\xef\x58\x4b\xe1\x06\x2a\x01\x23\x93\xb1\x4a\x26\xe5"
        "\xea\xda\x86\x3a\x9c\x35\x38\xc8\xe5\x2e\x5d\x15\x8a\xfe\x22\xbb\xf3"
        "\xd8\xb8\xa2\x52\xbc\xb2\x50\x02\xe9\x7e\x80\x90\xa1\x79\x40\x61\xf0"
        "\x81\x1a\x97\x29\xe2\x2c\x5a\xed\x2b\x77\x0a\x50\xc3\x91\x38\x98\x6c"
        "\xf3\x40\x71\x6b\x27\x60\x3a\x5e\xb5\xa4\x5c\x30\x97\xe6\x89\xea\x47"
        "\xb3\xc4\x5b\x90\x56\xc0\xb9\xdd\x2b\x4a\xd0\x87\x54\x46\x78\xc2\x79"
        "\x74\xc3\x9a\xc0\x9b\xc9\xf4\x7c\x56\x58\x07\x7e\xf9\x3c\x01\x8b\x7b"
        "\x02\x1a\x33\x94\x9a\x41\x89\x09\xba\x05\xe8\x06\x11\x8b\xab\x0f\x06"
        "\xe3\x11\x3b\x36\x62\x19\xeb\x8e\xe0\x45\x5d\x4d\x64\x0a\x46\xbe\x6a"
        "\x7e\x56\x74\xb1\x27\xde\xd1\x10\x03\x6d\x14\xeb\x34\xec\xd8\xf2\x17"
        "\x28\xe8\x53\xb3\x76\x5f\x0b\x17\xe4\xf1\x12\x48\xa5\xea\xfb\x35\x0f"
        "\x68\x4c\x10\x7a\x98\x48\x15\xd9\x32\x78\x33\x1d\x6d\x9e\xd6\xd1\xbd"
        "\x36\xb3\x00\xbe\xc7\x84\x7e\x43\x9d\x10\xf0\x67\xc7\x91\x68\x70\x52"
        "\x67\xf5\xc1\xe4\x0b\xd9\x79\x61\x52\xab\x24\x4e\x54\xa7\xa7\x70\x74"
        "\x2e\x74\x40\x37\x7b\xaf\x35\xbe\x66\x7c\xf7\xbc\x64\x2f\x9b\x4c\x41"
        "\x04\x74\xa6\xc3\xcd\xe7\x5b\x42\x85\xa2\xf4\x2f\x97\x57\x8e\x62\x6c"
        "\x1b\x30\xf6\xa0\x74\x87\x19\x64\x4c\xeb\x9d\x5b\xfe\xdd\x62\x3f\x8b"
        "\x9e\xc2\x66\x5f\x1c\xea\x49\x53\x58\xed\x01\x10\x1e\x7d\x99\x41\xcb"
        "\x4b\xf6\x23\x77\xaf\xc2\x5e\x28\xec\xd2\x10\xb0\x12\xc0\x1c\x16\x0d"
        "\xef\xa0\x81\xd0\x65\x82\x64\x2b\xfb\xc3\xc5\x43\xb2\x4c\x97\xed\xf4"
        "\x7f\xef\x7c\x59\xd5\x76\xb8\xbd\x10\x46\xe1\x48\xcc\x95\xa4\xb1\x11"
        "\x9b\x94\x95\xfb\xea\x29\x28\x1a\x1e\xf7\xd8\xe2\xc2\x64\xe1\x0b\x7d"
        "\xdd\xdd\xec\xf6\x58\x6c\xa4\x85\x5c\xd4\x98\xe0\x78\x08\x97\xb9\x1a"
        "\xe6\x60\x44\xb3\x00\xa3\x97\x7e\x94\x4d\xc9\x69\xa1\x1a\xa6\x3c\xbd"
        "\x50\x19\xd5\x10\x31\x70\xaa\x65\xef\xa3\x2e\x92\xe4\xc4\xc4\x5c\x16"
        "\xa5\x7f\xae\xec\x37\xa7\x92\x22\x2d\x74\x10\xf6\x6c\x94\x71\x65\xcf"
        "\x96\x1f\x7f\xa6\x97\xfd\x01\xca\xdc\xd9\x2f\x5b\x57\x8c\x6b\x8e\xd1"
        "\x94\xc8\xf7\x8f\xd3\xff\xd0\x33\xee\xa7\x13\x54\x8d\xda\x9f\x11\x42"
        "\x5c\x28\x97\xd4\xb8\xe1\x28\xc9\x88\x41\xb4\x76\xf1\x38\x84\x58\xfd"
        "\x5a\x87\x80\x1a\x2d\x86\x30\xe0\xa6\xdb\x35\x5e\x29\x2b\x46\x0f\xa0"
        "\x2b\xae\x30\x4a\x9c\x52\x4f\x41\x2a\xfe\xa5\x2b\xd4\xea\xd6\xb6\x35"
        "\x1e\x74\xa0\x3f\x6c\xac\xb8\x2e\x26\xcb\x69\xad\x23\xf7\x30\xa7\x07"
        "\x48\xa9\xe1\x6e\x38\x7d\x68\x3c\x3b\xe0\x57\xb7\x9e\x5b\x7c\x5b\x2d"
        "\x5a\x30\x7b\x6a\x97\x5d\x3a\xf7\xa2\x44\x1a\xca\x72\xf1\xcd\xb3\x74"
        "\x54\xfc\x52\x2b\x5f\x0b\x43\x8f\xbc\x94\x40\x0e\x96\xd3\x2e\xd5\x2a"
        "\xa5\x86\x57\xe8\x34\xcc\xdc\xd8\x81\x0b\x84\x32\xe7\xe0\xff\xe5\xdd"
        "\x4c\xca\xd1\x83\x83\xd7\x99\x4c\x6e\x5b\x6d\xc6\x33\xa6\x1c\xdf\x4d"
        "\x46\xd4\x5c\x7a\x2a\x48\x3f\xb3\x19\x40\xb3\xcc\xbb\x7a\x06\x34\xc8"
        "\x30\x2d\xe0\xd5\x74\xd9\xfc\x46\xff\x9d\x35\x89\x61\x92\x9f\xc0\x9c"
        "\x46\x41\x4d\x70\x2b\x0b\xf3\x5a\x0f\xcd\xe6\x35\x5c\xe2\x8c\x12\x63"
        "\x1d\x8b\x78\x8b\xb4\x8d\xa1\x42\x4b\x79\x8e\x76\x46\xa8\x08\x00\x00"
        "\x00\x5f\x5c\xd9\x36\x08\x2e\xe7\x69\xa5\x37\x8a\x6b\x30\x2e\x31\x01"
        "\x98\x8b\x9b\xd6\xfe\x9e\x7b\xfa\x06\xde\x65\xab\x5d\x72\xc0\xff\x29"
        "\x12\x1d\xd1\xb2\x95\xbc\x05\xe2\xbf\x99\xb6\x1a\x37\x9e\x15\xd5\x74"
        "\x5b\x48\xb7\x78\x1a\x16\x2f\x8c\xd3\xcf\xff\x1e\xf4\x47\xac\x36\x80"
        "\xdc\x2c\x97\x84\x88\x42\x72\x64\xcd\x7f\xcd\x4d\x86\x12\x7e\xf9\x85"
        "\xff\x37\xc6\x14\x3c\xae\x9a\xf5\x2c\x25\x33\xb5\x93\x20\xfa\x51\x4f"
        "\x7e\x33\x4e\xd3\xb8\x9f\xca\x26\xcc\xfd\x9c\x27\xe3\xd6\xf8\xef\x6e"
        "\x8b\xc7\xec\x7f\x7e\x28\xe4\x30\xce\xa4\x51\xa9\x1f\x93\x1d\x61\x66"
        "\x06\xd4\x91\xcd\x16\xbc\xac\x8e\x9f\x4a\xb4\x8f\xf9\xe7\x32\x05\x2e"
        "\x24\x8a\xba\xb9\xa8\x56\xc7\xa7\xbf\x58\xe0\x81\x13\x0b\x79\xf2\xa3"
        "\x11\x01\xc8\xdd\x8a\x28\xfc\x73\x2f\x0f\x6d\xf0\x4e\x17\xd7\xa0\x59"
        "\x65\x65\x2e\x1d\x6e\x21\x33\x98\x29\xd1\x9a\xf8\x65\xf6\x0c\x7c\xfb"
        "\x38\x90\x27\xb5\x68\x2b\x58\x5d\x30\xb2\x82\x7e\x17\xb2\x9e\x7e\xe3"
        "\x8a\x8e\x55\xcc\xa8\x85\x8a\x0f\x06\x1b\xb4\x43\x78\x02\x13\x70\x26"
        "\x1e\xaa\x6c\x48\x33\xf1\x4e\xa6\xa6\xa7\xbb\xda\xb5\x4c\x5e\xe5\xe7"
        "\xd9\xd6\x48\x88\xd1\x95\xd6\x6d\xd8\xef\x2b\x9f\x12\xda\x3d\x1b\x3e"
        "\xdc\xff\x79\x7a\xd1\x0f\xea\xf0\x4b\x4a\xb1\xb5\x67\x48\x1c\x24\x8a"
        "\x6e\x3d\x10\xf8\xab\x96\x7f\xf3\x02\x9e\x98\x7f\x91\xbd\xb7\x74\x00"
        "\xcc\xa9\x9c\x66\xff\x5e\x25\xa7\xfc\x65\xd5\x74\x6a\x51\x74\x25\x06"
        "\xe5\x06\xad\xa7\x1b\x49\xa8\x13\x50\x97\x2b\x15\xc4\x74\xf5\x98\x6d"
        "\x27\x6e\x4f\xc4\xf9\x98\x39\xdf\xf8\x3e\xe5\x9c\xe3\xa6\x92\x24\x91"
        "\x83\x01\x01\xa3\xee\x6b\x0a\xf1\x81\x97\xb4\x04\x49\x5c\x17\x8a\x25"
        "\x4e\x4e\x67\x3c\x7b\xcb\xf3\x57\x00\x6b\x0e\xde\x84\x0b\x6e\xcc\xa8"
        "\x4f\xb3\x90\x75\xc0\x32\x9e\xd6\x68\x53\xfd\x4f\x04\xa6\x14\x38\x8e"
        "\xed\x36\xb5\x38\xa8\x4c\x1b\xd6\xba\xe5\x59\x55\xbb\xa8\x17\x7d\xa2"
        "\x80\x74\xcb\xe5\x20\x4e\x81\x9c\x92\x96\x0e\x16\xa0\x88\xab\xb9\x5e"
        "\x4f\xc9\x2f\xee\xa8\xf3\xd6\x20\x6b\x60\xb6\x75\x39\xf7\xf9\x45\xd8"
        "\xd7\xcd\xa2\x6a\xfe\xc5\xd9\xd2\xf4\xa5\x2c\xc7\x53\x95\x71\x77\x13"
        "\x59\x72\x88\xca\xf9\x83\xf6\xcb\x4f\xfe\x65\xf6\xd3\x14\x04\xca\xdd"
        "\xee\xcd\x1e\x12\x61\xe8\x93\x20\xe2\x35\xf1\xde\xe9\xfe\x59\xfb\xa4"
        "\xf3\xfb\x83\xed\x53\xb7\x24\x35\x86\xa6\x8c\x98\x27\x7f\x1d\xe2\x69"
        "\xbf\x73\x22\xb6\xe4\x3e\x5b\x0a\x14\xf5\xcf\x79\xe5\xe6\x37\xb8\x46"
        "\x87\x1b\xb2\x92\xbb\x84\xdb\xa6\x6b\x51\x7e\x79\xe5\x94\x29\xf2",
        4096));
    NONFAILING(*(uint32_t*)0x20001448 = 0x40);
    NONFAILING(*(uint8_t*)0x2000144c = 0);
    NONFAILING(*(uint8_t*)0x2000144d = 0);
    NONFAILING(*(uint16_t*)0x2000144e = 0);
    syscall(__NR_write, -1, 0x20001400, 0x50);
    break;
  case 4:
    NONFAILING(*(uint32_t*)0x20004840 = 0);
    NONFAILING(*(uint16_t*)0x20004844 = 0xc);
    NONFAILING(*(uint16_t*)0x20004846 = 0x12);
    NONFAILING(*(uint64_t*)0x20004848 = 0x200002c0);
    NONFAILING(*(uint32_t*)0x20004850 = 2);
    NONFAILING(*(uint32_t*)0x20004854 = 0);
    NONFAILING(*(uint32_t*)0x20004858 = 0);
    NONFAILING(*(uint32_t*)0x2000485c = 0);
    NONFAILING(*(uint16_t*)0x20004860 = 0);
    NONFAILING(*(uint16_t*)0x20004862 = 0);
    NONFAILING(*(uint32_t*)0x20004864 = 0);
    NONFAILING(*(uint64_t*)0x20004868 = 0);
    syscall(__NR_write, r[0], 0x20004840, 0x30);
    break;
  case 5:
    NONFAILING(*(uint32_t*)0x20001380 = 0x80000012);
    NONFAILING(*(uint16_t*)0x20001384 = 0x14);
    NONFAILING(*(uint16_t*)0x20001386 = 0x234);
    NONFAILING(*(uint64_t*)0x20001388 = 0x20000340);
    NONFAILING(*(uint16_t*)0x20001390 = 5);
    NONFAILING(*(uint16_t*)0x20001392 = 1);
    NONFAILING(*(uint32_t*)0x20001394 = 0);
    NONFAILING(*(uint64_t*)0x20001398 = 0);
    NONFAILING(*(uint32_t*)0x200013a0 = 0x10000);
    NONFAILING(*(uint32_t*)0x200013a4 = 0);
    NONFAILING(*(uint32_t*)0x200013a8 = -1);
    NONFAILING(*(uint32_t*)0x200013ac = 0);
    NONFAILING(*(uint32_t*)0x200013b0 = 0);
    NONFAILING(*(uint64_t*)0x200013b8 = 0x20000380);
    NONFAILING(memcpy(
        (void*)0x20000380,
        "\xdc\x76\x38\x76\x14\x7b\xec\x69\xf8\x50\xce\x28\x5a\xd9\x75\x5f\x53"
        "\xe7\xc0\x41\x3c\xb1\xe2\x9d\x4f\x54\x8f\x3f\x21\xd5\xbf\xb1\xaf\xf8"
        "\xb0\x68\x9d\xd3\xfb\x98\x72\xb3\x66\x8d\x8e\x21\xe5\x76\x0a\xb9\x2c"
        "\x17\xf2\xf3\xa7\x76\x67\x55\x04\xe3\x49\x61\xa6\x31\x70\x99\x03\x06"
        "\xd3\x13\x14\x7b\xa2\x5f\x5f\xf8\xdf\xa2\xda\x1e\xda\x0b\xa0\xfd\x33"
        "\xe1\x27\xc7\xa3\xba\x83\x62\x13\xcf\xf5\x55\x38\x69\x94\xd6\x8a\x9a"
        "\xa5\x92\x5e\x73\xeb\x80\x38\xef\x15\x03\x4b\xd7\xf4\xd2\x50\x3b\xc7"
        "\x01\x2a\xef\x05\xe4\xf0\xa1\x1d\x63\x80\x90\x65\xd1\x0f\xc8\x16\xd2"
        "\xd1\xeb\xfb\x7d\x3c\x57\xa2\x60\x00\x85\xb0\x05\x84\x60\x86\x9d\x50"
        "\x16\x43\x13\x9d\x2b\xbb\xbd\x92\xd3\xfe\xc1\x89\xa5\x07\x1d\xcd\x07"
        "\xb3\xaf\x0a\x69\xe8\xca\xe8\x87\x7e\x7b\xa8\x0c\xb3\x0c\x97\x2d\xca"
        "\xfa\xcb\x59\x8e\x7d\xf1\x60\x8b\xa2\xf7\xa3\xab\x23\x43\xe4\x13\x9e"
        "\x5f\x81\x7c\x96\x31\x34\x43\x48\x8c\x03\xa9\x2e\xb0\xbd\xfc\x97\x81"
        "\x60\x6c\x0c\x9c\xe9\x28\x67\xde\x6a\x77\xb2\x37\x3c\xfd\x9e\xf7\x28"
        "\x12\x65\xab\xa5\x98\xb0\x75\xac\x41\x5b\x3c\x6b\xbc\x2d\x39\x6d\x96"
        "\xdc\xfd\x63\xae\x31\x61\x61\xe7\xd0\x76\xde\x07\xa4\x75\x8c\x36\xf8"
        "\x43\x39\x1e\x12\x26\xd2\xb2\xd9\x07\xdd\x04\x22\xe8\x80\x0e\xdb\x00"
        "\xf8\x9b\xf8\xc6\x06\xe3\x1b\x89\x97\x49\x20\x28\x58\x6b\x82\xdd\x50"
        "\x64\x12\xac\x09\xf1\xdb\x08\x33\x5a\xa7\xbf\x08\x75\x63\x0a\x68\x1e"
        "\x2f\xac\x46\x04\xef\x7a\x76\x5f\xd9\xac\x6e\xbc\x96\xd4\xea\xb7\x39"
        "\xb7\x35\x4d\x95\xd8\x25\xf4\x91\xac\x7a\x13\x1d\x82\xdb\xea\xd0\x39"
        "\xa3\x9b\x11\xe0\xdf\xc5\xf6\xaa\x60\x1a\x2e\x2a\x8e\x8a\xe3\x99\xd4"
        "\xb0\x93\x79\xf1\x65\x2a\x7e\x58\xd8\xba\xbc\xcf\x05\xb9\x60\xf6\x07"
        "\x17\x50\x93\x49\x74\x41\xa4\x23\x8e\x49\x52\x1b\x59\xb3\xbf\xf1\x20"
        "\x5d\x73\x39\xc5\x1a\x35\xc0\x36\xaa\xb5\x75\x7b\xdf\x64\x54\xad\x91"
        "\xec\x7f\xaa\xd5\xff\x71\x15\xf6\x18\x88\x39\x22\x64\xaa\x18\xc1\x73"
        "\xbb\xf4\x69\xbc\x9d\x5e\x12\x91\x78\x2d\x1b\xf1\xf6\xb8\x3a\x9b\x5f"
        "\x69\x1c\x31\x30\xd7\x52\x55\xfd\xda\xbf\x45\x8c\x47\x0e\xb2\xa8\x8e"
        "\x7b\xcf\x33\x8b\x1d\xac\x93\x7d\xb3\xce\x31\xcd\x1a\xc2\x64\xf8\x5e"
        "\xfa\xe6\x95\x75\x8a\x9b\x5c\xb2\x2e\xa6\xf3\xf0\x0d\x10\x9c\xd0\x96"
        "\x52\xcd\x8b\x6d\x70\xb2\x2b\x7c\x45\x84\x35\x5e\x77\xbe\xd9\x37\x90"
        "\x5e\x53\xba\x3c\x9e\xa4\x6d\x6d\xc2\x10\x0a\x61\xe9\x62\x70\xcd\xf1"
        "\x13\xc3\x33\xa0\x5c\x2f\xea\xaf\x97\x52\x72\x0e\xf4\xf9\xd9\xe3\xfc"
        "\x2a\x37\xb5\x85\x5a\x44\x0f\x1c\x4b\x68\xf8\x66\xa8\xb8\x56\xe7\xd8"
        "\xe4\x68\x8b\x34\x8b\x9b\xfd\x4c\xda\x1c\x3c\xcc\x5d\x7b\x24\x9f\x17"
        "\x03\x1d\xdb\x90\x63\x3a\xce\x4a\xd6\x56\x74\xd7\x99\x0d\x0c\x61\xcc"
        "\xb5\xa4\x9f\x45\xe6\xa6\x4d\x4e\x6b\x21\xd9\x66\x04\x43\x1c\x27\x81"
        "\x1c\x40\xeb\x66\x6f\x1f\xe6\xcb\x6a\x12\xc9\x26\xdb\xf7\x27\xb7\x95"
        "\x6d\x22\x46\xdf\x7e\xf3\x4b\x64\xce\xe3\x74\xe9\xe6\xf7\xac\x08\x6c"
        "\x6e\x6c\x55\x76\x92\xd6\xe8\xd6\x94\x28\x4c\x58\xee\x6d\xc7\x3a\x94"
        "\x80\xbd\x6c\x18\x68\xf5\x54\x9a\x42\x4b\xb2\xa8\x5c\x06\x2c\xf8\x68"
        "\x15\x4e\x92\x7a\xca\x55\xaa\x7e\x8b\xee\x12\xd3\xc7\xf7\x09\x8c\xad"
        "\xf3\xf3\xe4\x7e\xbf\xe8\x36\x07\x64\xc9\x69\xe3\xf3\x20\xa7\x40\x7f"
        "\x50\x0b\x39\x94\xb1\x67\xb7\x26\x0c\xa2\xd6\x18\x5d\x32\x09\x30\xe4"
        "\xe6\x1d\x2f\x33\x10\xce\xb1\x18\xde\x39\x6b\x82\xe3\x5e\xd6\x02\x23"
        "\x19\xb8\x79\x69\x74\x4c\x25\x01\xba\x4c\x73\xfb\xa4\xbc\x1a\x05\xb9"
        "\x60\x3a\x55\x09\xe8\x18\xbf\xde\x89\xdd\xb1\xff\x59\x43\x17\x68\xb4"
        "\x81\xbf\xde\x5c\x34\x41\x50\x91\xb1\xa6\x24\xa9\xc0\x6b\xdf\x07\xff"
        "\x25\x57\x0b\xbf\xa3\x06\x5d\x9a\x6d\x94\xea\xf4\x6f\x60\x06\x75\xcd"
        "\x25\x92\x15\x20\xfd\x0c\x7b\x4c\x19\xea\x5f\x21\x78\x0e\x64\xfc\x80"
        "\x88\x5a\x14\xcd\x90\xc7\x07\xba\x7a\x13\x89\xd3\xa9\x5b\xdf\xd3\xd1"
        "\x78\x64\x04\xac\x06\x41\x42\x72\xc0\x62\x8d\x6d\x1b\xd2\x2c\x1f\x88"
        "\x9f\x67\x7d\xa6\x23\xeb\xc9\x35\xcf\x79\xfd\xd9\x5f\x9f\x3b\xe3\x2e"
        "\x64\x37\xc9\x83\xaf\x8f\x47\x3f\x37\xed\xf0\x1a\x8b\xee\xa3\x31\xa8"
        "\x70\x76\x56\xa1\x86\x3e\xfb\xc1\xc8\xd9\x4b\x92\x19\x93\x3e\xb1\xf8"
        "\xe6\xe5\xcc\x2f\x23\x01\x92\x7f\xaa\x7e\xdf\x86\x10\x24\xba\x5d\x13"
        "\xb9\x74\x4f\x18\x92\x7b\x12\xd6\x75\x2c\x1b\xeb\x4c\xf8\x18\x0d\xd7"
        "\x2d\x0b\xf8\xf3\x95\xf9\x7f\x39\x09\x6e\x88\xe7\x84\x5a\x70\xfa\xf1"
        "\xd7\x72\x4c\xbd\x39\x7c\xb7\x3b\xc1\xc4\xbf\x71\xfa\x43\xb4\xf0\xb4"
        "\xc1\xf4\x2e\xc8\xdd\x03\x83\x11\xda\xcc\x94\xf7\x75\xd1\x6c\xcf\x4b"
        "\x19\xa6\x54\xda\xe9\x86\x4a\x90\x7d\x32\xe7\xfd\x6e\x63\x09\xab\x01"
        "\x95\x2f\xaf\x91\xf1\xad\x6e\x89\xac\xd3\x0d\xe7\xb7\x98\x25\xd7\xa2"
        "\x17\x73\xcc\xcd\x37\x04\x09\xb5\x96\xc4\x79\x10\x69\x75\x74\x48\x3f"
        "\x07\xd7\xbc\xb9\x1c\x79\xcd\x97\x9f\x63\x4e\xb2\x24\x90\x9f\x6a\x25"
        "\xab\xb9\xd5\xbf\x8d\xd5\xd3\x78\x5c\xd2\x8c\x48\xef\x55\xf5\x7b\x00"
        "\x68\x81\x45\x44\xc6\xf1\xfd\x89\x5d\xb5\xba\xf5\x74\x46\x99\xd1\x6c"
        "\x33\xb3\xd7\x5a\x51\xc6\x25\x7e\x78\x53\x4a\x1a\x31\xfd\x15\x1b\x71"
        "\x76\xe6\xd2\xc6\xbd\x11\xa2\x2c\xd4\x31\x30\x7e\x81\xde\x06\xcc\x7b"
        "\xb7\x89\x17\x15\xf9\x95\xfa\xbd\x2e\xa8\x5c\xfa\x04\x96\x55\xc1\x3d"
        "\x72\x74\x54\x15\xeb\xa8\xf6\xf0\xf8\x8e\xd5\xc8\xff\xf3\x7a\xd8\xbc"
        "\x44\x6e\xc2\x30\xbe\xc2\x0b\x59\x3d\xec\x79\x63\x95\x36\x6e\xce\x14"
        "\x32\xb4\x30\xa3\x85\x98\xd8\x2c\x8c\xb7\xe0\xac\x3b\xb4\xc3\x00\x44"
        "\xb9\x06\xc3\xba\x3a\x6c\xe2\x17\x19\x92\x53\x9d\x07\x8c\xe4\x7e\x7d"
        "\xf6\x13\xd7\x63\x06\x5f\x20\x5b\x30\x30\x25\x1d\x55\xa7\xa1\x4f\x78"
        "\xe4\x23\xd6\x1b\xa0\xad\x66\x9e\x33\x6e\xcd\x2b\xe0\x67\x99\x2b\x83"
        "\x8a\xaa\xcb\xc2\xf0\x2a\x5c\x71\x7e\xa2\x07\x28\x77\x33\x3d\x84\x37"
        "\x40\x6d\x41\x96\x25\x9b\x2e\xa7\x97\xaa\x2a\x4f\x12\xbc\xf6\x84\x75"
        "\x56\x3f\xae\x3a\x80\x04\x80\x36\x80\xb5\x5f\xbb\xda\xaa\x7d\xa4\x97"
        "\x8a\x4e\x7b\x30\x97\xa0\xe8\xfd\xd6\x3e\x04\xf9\x61\x74\xae\x08\xfa"
        "\xa7\xbf\xfe\xc9\x5c\xf2\x91\x2a\xca\xa9\x93\x32\x99\x42\xbf\xd3\x7b"
        "\xf4\x5c\xd2\xb3\xf9\xf9\x57\xb6\xd6\x32\xd4\xaf\x62\xa7\xce\x5e\xef"
        "\x4c\x8d\x83\x00\x91\x3a\xed\xa1\x46\x78\xbb\x74\x56\xae\x9c\xa2\xba"
        "\x85\xf2\x91\x60\x37\x02\xc6\x7e\xc1\x90\xbb\xff\x9c\xf0\xdb\x72\x4f"
        "\xb2\xc6\x77\x83\x6c\xe1\xbb\x63\x97\xb4\x38\x30\xa4\xd8\xea\xc6\x6f"
        "\x81\x15\x23\x84\xa9\xe3\x8a\x69\x1e\x35\x1e\x29\x1f\x97\xac\x75\xbe"
        "\x4a\xed\xc1\x6e\x00\x4b\xca\x6f\xfe\x5c\x8a\x55\x50\x59\x08\x47\x69"
        "\x83\x4b\x28\x3d\x44\x47\x95\xb4\xb5\x1c\xc0\x4a\xdb\xfa\x3a\x1b\xd4"
        "\x56\x74\x27\xf0\x05\x13\x05\xf4\xff\xb8\xd6\x68\x4b\xa2\x32\x6a\x23"
        "\x2f\x82\x3b\x92\x34\x37\x46\x41\xb7\x55\x75\x82\x02\x3f\x56\x67\x2e"
        "\x0d\x3e\x53\x0e\x51\xf6\x7a\xab\x49\xd4\x61\xce\x8d\xcb\xfd\x43\xd6"
        "\xb6\xe0\xe4\x9f\xf4\xec\x3f\x7f\x31\x71\x1f\xc5\x12\xc5\x34\xc8\x4e"
        "\x85\x1d\x29\x75\x41\xd0\xb0\x6c\x96\x38\xff\x1a\xe1\xeb\x82\x55\x17"
        "\xb2\x53\x44\xb6\xc3\x41\x87\x7a\xa0\xaf\xb7\x02\x7d\x1d\xb5\xea\x1a"
        "\x6f\xd6\x79\xb7\xa9\x08\xeb\x04\x91\xf1\xaf\x50\x93\x4c\xf6\x3a\xde"
        "\x13\x42\x8a\x3c\xf5\x56\x12\xe3\x40\x8a\x2f\xb9\xbb\x56\xa2\x77\xe6"
        "\xfd\x2b\xd0\xd8\x96\xf0\xe9\x07\xfc\x36\x78\xdf\x4b\x40\x96\x99\xbc"
        "\x01\x3e\xed\x4f\xe5\xe0\xf7\xc5\x1a\xe0\xde\xd5\x44\x91\x57\x60\x50"
        "\x9d\xbb\x16\x30\xd3\x9f\x22\xa4\x3a\x6c\x4f\x5d\x8c\xca\x7a\x6a\xd9"
        "\xbf\x8e\xa7\x28\x24\xb1\x13\x2f\xf3\x36\xd9\xfb\x07\x73\xad\x95\x8e"
        "\xc9\x7f\x5d\x16\xe6\xba\x94\xdf\xf3\x37\x1f\x5e\xdc\x5e\xad\xa9\x54"
        "\x45\x55\x8d\x80\x56\x35\x2b\x79\xbf\x14\xb1\x1e\x92\xa1\xdc\xf1\x3c"
        "\xaf\x47\x77\x1e\x23\xba\x40\x3e\xb5\x97\x2d\xf6\x88\x04\x30\x62\x98"
        "\x2f\xa9\xca\xa0\x90\x8e\x61\xc7\xb2\xca\x37\x31\xc0\xc2\xcc\x00\xd8"
        "\xe6\xf9\xa0\xfc\x21\x36\x92\x86\xd2\x05\x84\x52\x20\xd4\xb9\x47\x63"
        "\xb9\x29\x40\x6a\x3b\x90\x32\x4a\xd8\x0d\x16\xb2\xf4\x77\x94\x6c\x52"
        "\xd6\x03\x2f\x4b\x9c\x26\xbe\x79\x9f\xc3\xad\x1e\x12\xfb\x8e\x2d\x01"
        "\x99\xc1\x3a\x21\x8b\x6e\x50\xd5\xb5\xa0\x3f\x34\xf7\xc6\xf5\xd7\x4d"
        "\xe6\x5e\x4a\xb6\x2d\x21\x7c\xeb\x20\x59\x38\x44\xd4\xe8\xaf\x3c\x90"
        "\x83\x94\x6a\x5d\x48\x17\xde\x8f\x07\x84\x2e\x34\xf9\x91\xf5\x18\xf0"
        "\x79\x8f\x32\xa9\xe8\xcf\x25\x41\xab\x32\x40\x28\x35\xb6\x23\x11\xdb"
        "\x8b\x7a\xe1\xbd\xaa\xc2\x82\xf2\x4b\xda\xb6\xb2\x44\x66\x21\x65\x67"
        "\x10\x59\x9d\x4f\x7a\x9e\x18\x61\x3a\x39\xba\xb0\x1f\xb9\x81\x2d\xbf"
        "\x58\x30\xe5\x84\xf9\x10\x30\x09\x81\x10\x64\x54\x2c\x84\x3f\x92\xe0"
        "\x54\x1d\xf1\x97\xe6\x33\x5a\xfc\x4e\xb7\x11\xe6\xe8\xda\x45\xaa\x01"
        "\x7a\xa7\x8b\x7d\x66\x29\xab\x74\xa3\xa2\x3e\xd3\xa3\xc6\x72\x77\xf1"
        "\x81\x5a\xaa\x28\xc0\x7a\xed\x2d\x22\xb3\x0a\x9a\x52\x38\x30\x61\xa2"
        "\x4e\x9d\x0b\x64\xb3\x2a\xe5\x8e\x21\x8e\x72\xa0\x6a\x1f\x25\xdc\x82"
        "\x77\x9c\xe8\xbd\x96\xde\x2e\x97\xec\x51\x39\xe8\x7b\x7b\x96\x91\x9a"
        "\x9b\xf5\x28\x8c\x31\x4c\x8e\xfd\xb8\x8d\x3d\x87\xe3\x87\x39\x50\x6d"
        "\xba\xa1\x5d\x38\xb0\x5a\x66\x36\x5f\xbd\xcb\xf4\xd4\x35\xf8\x3e\xf0"
        "\x47\x43\x93\x5e\xa0\x59\xba\x52\xe2\x85\x83\xd4\xfc\xe2\x38\x02\x6c"
        "\x9d\xa0\x72\x2d\xa7\x26\x7c\x0f\xd3\xa7\x0b\x16\xa2\x5d\x24\xcb\x71"
        "\x49\x2f\x76\xef\x3d\x4b\xb8\x2b\xcf\xef\xbc\x14\x8b\x6c\xee\xe6\xdd"
        "\x61\xec\x52\x49\x6e\x03\x89\xc8\x8e\x52\xc3\x5c\x73\x57\x23\x42\x70"
        "\xc8\xc9\xd6\x22\xb3\xbe\x99\xe0\xcf\x5e\xeb\x5c\x42\x38\xe4\x03\x6a"
        "\xe6\xf3\x3a\x7b\x7e\x4a\x9d\xb3\x0c\xa9\x76\x17\xdf\x15\x9b\xc2\x06"
        "\xc8\xca\xf9\x13\x2f\xca\x88\x94\xb7\x7f\xa2\x05\x38\x61\x90\x97\xa6"
        "\x37\xc1\xc5\x33\x88\x7a\xb8\xf9\x4d\xbd\x8f\xd1\x62\x72\xfd\x38\xf0"
        "\x00\xdf\xaa\x85\x34\xb1\x12\xad\x27\x37\xfb\x7e\xc3\x03\xfd\xf7\x3b"
        "\xe8\x40\x22\x82\x88\x96\x84\xed\x49\x45\xf2\xef\xfa\x2a\x64\x82\x9f"
        "\x58\x8c\x8b\xcc\x08\x96\xe2\x66\xca\x46\x19\x25\xd0\xce\x97\x4a\x0d"
        "\xe1\x6b\x62\xa7\x5e\x39\x59\x39\x6d\xb9\x4d\xc7\x9c\x90\x26\x80\x46"
        "\x83\x45\x62\x26\x44\x91\x00\x2a\x1f\x78\xee\xc3\x3d\x25\x35\x55\xb0"
        "\x22\x99\x41\x22\x29\xe6\x3c\xba\x61\x67\xbc\x13\xa7\x0a\x23\xbe\xb6"
        "\x4b\xaf\x25\x1c\xc2\x0a\x48\x95\x71\x66\x23\xcb\x50\x63\xe5\x50\x36"
        "\x28\x4e\x81\x51\x6f\xcf\xb8\x42\x95\x0d\x66\x1f\x3a\x29\xc2\x78\x94"
        "\x26\x73\xbd\x52\x73\x51\x77\x4c\xf3\xbf\x76\xbf\x84\x43\x59\x57\x26"
        "\x27\xde\xdf\x28\xc4\xd5\x1d\x05\x13\x04\x09\xa4\x46\x4b\x28\xc4\x5c"
        "\x00\xaa\xf6\x28\xba\x75\x7d\x79\xed\x9c\xf0\x94\xfa\x84\x0d\xea\x08"
        "\x13\xf3\x72\x25\x4e\xf3\x56\xa9\x9d\x48\x9a\x27\x15\x9d\x97\x8e\x7d"
        "\x01\xfa\x14\xae\x30\xc9\x70\x8d\x57\x63\xcb\x3e\x33\x45\x67\x2f\xa0"
        "\x90\xa5\x6c\xd9\x3f\x2b\x68\xaf\xae\x9b\xd6\x77\xb0\xa1\x4f\xbc\x4e"
        "\x74\x18\x9f\xaf\xb3\x6e\xff\x7f\x5b\xad\x56\xef\xeb\x96\xab\x46\xc4"
        "\xc8\xb4\xac\xe6\x8c\xc1\xbe\x8d\xe1\xfc\xfa\x1f\x55\xf7\xdd\x5b\x80"
        "\x07\xde\x6e\xb2\x0a\x62\xe6\x0c\x3f\x1c\x4f\xeb\xf8\x52\x36\xa7\xdf"
        "\x0b\x0e\x81\xce\xb5\xc9\xbf\xb9\xa4\x6d\x57\xcd\x7a\x74\x0c\x22\x2d"
        "\x62\xda\x7f\xd6\xa6\xbf\x49\x26\xcc\xec\xab\x81\x36\x2a\x6b\xe7\xc5"
        "\xab\xf9\xcc\x9d\xe0\x19\xe9\x79\xf2\xee\xe6\x0c\x1f\xcc\x76\xab\x7a"
        "\x57\xb4\x4f\xe4\x37\xa9\xe5\x2d\xae\x5f\x0a\xcf\x17\x5b\x17\xcc\x3b"
        "\xe3\x7c\x96\x8f\xd9\x3a\xcc\x24\x95\xa7\x12\xbd\x8d\x4e\x96\xa0\x25"
        "\xdf\xf6\x23\xc8\xbf\x01\xdd\xeb\x5c\xe3\xdd\x14\x4d\xab\x0e\x0d\x10"
        "\xb1\x15\x7c\xa4\x04\x79\x6a\x0a\x7b\xc6\x6e\x08\x6d\xd7\x35\x26\x2c"
        "\xbf\x0c\x01\xde\xe1\xe5\xf2\xe2\x6c\x18\x9c\xf9\x37\x21\x2c\x16\xee"
        "\x04\x56\x75\xcc\x7a\xfe\xbd\x99\x80\xaa\x95\xa3\x3f\x3c\x74\xb4\xf6"
        "\xa9\x8e\xa8\xaf\xb6\xf7\xfd\x61\x01\x27\xec\x5d\x4e\x9c\xe1\x45\x9a"
        "\x62\x7a\x29\xd1\xe2\x1a\xe7\x2a\xdf\x95\x86\x8b\x6f\x59\x30\xf6\x2f"
        "\xd7\xbc\x4c\xf6\x33\xb3\x9e\x6d\x6f\x90\x65\x37\xdb\xd4\xb8\x94\xd7"
        "\xc7\x0d\xb5\x3f\x80\x4b\x41\x0b\x0d\xd3\x67\x48\xc0\xdf\x18\x3e\xfa"
        "\x9a\x2d\x43\x6f\x9f\x6f\x82\x8b\xec\x49\x93\x33\x50\xd7\xe8\xf5\xb5"
        "\xc8\x52\x7c\x3b\x39\x50\x1d\x32\xe4\x05\x3f\x6a\xe7\x1e\xcd\x00\x0e"
        "\x3e\xa1\xbf\x3d\x10\xf5\xbf\x28\x44\x23\x20\xb9\xd2\xeb\x8d\xb1\x25"
        "\x29\xa9\xc1\x8e\x77\x2b\xe0\x9e\xcf\x3f\x2f\x5e\x95\x45\x6e\x1f\x51"
        "\xf8\xea\x6f\x36\x55\x48\xc4\x81\x88\x5c\x83\x52\xb9\xf7\xf0\x9f\x6f"
        "\x3f\x64\xf3\x1a\x5a\x70\xeb\x4b\xec\xef\x27\xd6\x0d\xfe\x77\xfb\xdf"
        "\x2b\x6a\x61\x76\x1b\x32\x28\xa9\x31\xac\x56\x46\xb8\x58\x7e\x99\x54"
        "\xd2\x67\x6a\xe0\xd5\xcb\x29\xc6\x4f\xfa\x29\xb2\x16\x1a\xd9\x63\xa9"
        "\xbb\xc2\x5d\xee\x0e\xd9\x26\xae\xba\xf3\x2e\xeb\xf5\xb9\x0d\xb5\x6c"
        "\x49\x0b\x4e\xe9\x5d\x52\x40\x06\x9b\xa2\x46\xb5\x8c\xb3\x39\x5b\x6b"
        "\xbd\xbf\x36\x21\x57\xcf\xa9\x2f\x07\xa1\x6e\x4c\x1b\xd1\x62\x4e\x40"
        "\xd4\x41\x11\xd7\x33\x36\x12\x64\xa4\xa3\x69\x4c\xef\xee\x61\x90\x77"
        "\x00\xf1\x24\x1a\x16\xd9\xc3\x4d\xc5\xe6\x77\x23\x85\x9d\x1e\x33\xb4"
        "\x6a\x1b\xbd\xbf\xdf\x48\x3a\x21\x54\xa1\x0e\x1b\xb1\xe2\x16\x83\x69"
        "\x80\x4f\x09\x3f\xb5\xaa\x73\x23\xb1\xc9\xe7\x8c\x5f\xba\xb3\xe1\x59"
        "\xac\xe4\x12\xc9\x43\x8a\xef\x88\x57\x36\x98\xc4\x48\x6b\xd6\x41\xf9"
        "\x70\x17\xa7\x31\x0b\x8f\x04\x7d\x0f\xf9\x34\x9b\x47\x44\x4a\x0d\x44"
        "\xa8\x1e\xfb\x1a\x83\xd3\x78\x33\xcf\x7b\x94\xbd\x6c\xe1\x33\x7b\x30"
        "\xd7\xaf\x2e\x17\xa1\xdb\x33\xf2\x6e\xab\x52\xc0\x4a\x78\x58\x67\xf1"
        "\x51\x92\x58\x70\x2a\x4e\xa3\x90\x40\x1e\xfc\x7d\xd2\xad\xe5\x1d\xd3"
        "\xbf\xf7\x6a\xcb\xe4\xac\x38\xaf\x17\x34\xa3\x47\x1a\x6d\xa4\xd7\x2b"
        "\x30\xfd\xf1\xd5\x17\x54\x8f\x40\x42\xc9\x4a\xa7\xde\xeb\x6d\x29\x05"
        "\x42\x12\x76\xa1\x93\x6b\x1e\x20\xfc\x67\x54\x36\x51\xc6\xda\x4c\x4f"
        "\x1e\x91\x21\x0e\x4d\x2d\x99\xa4\x3b\x5b\x1c\x57\x15\xf0\x99\xb0\x0a"
        "\x68\x04\xe9\x2a\xda\xba\x5a\x5d\xd9\x26\xda\xf3\x97\xef\x86\xaa\x96"
        "\x85\x32\x85\x41\xd8\x43\x5f\x5f\xd3\x11\x4d\xc0\x0c\x40\x02\x1e\x92"
        "\x14\xa3\xed\xe5\x80\x61\x9f\xc0\x8b\x1e\x6e\xaa\x30\x98\x67\xf2\x28"
        "\x7b\xa0\x65\xa6\x7f\x46\xf4\x9f\xb3\x3a\x44\x8e\x2c\xe6\x12\x29\x4f"
        "\x79\xdd\xdd\x80\xfe\xf4\xee\x10\xf9\xd4\xf3\x88\xd4\x9b\x19\xc2\x37"
        "\x2e\xd5\x26\x39\x85\x4d\x51\xa8\xf8\x89\xc8\x3a\xda\xbe\xe4\xf5\x64"
        "\x4f\x72\x31\x75\x58\x52\xa4\xaa\x44\xdd\xe0\xd5\x91\xb6\x30\x7f\x5b"
        "\x58\x6a\x7e\x93\x73\xd9\x2d\x2f\xc4\xcb\xea\x8e\x6d\xd7\x14\x86\xf8"
        "\xf0\x6d\x78\xa8\x59\xf7\xed\x53\x1a\xf1\x3f\xcf\xfe\xc1\x6e\x1c\xef"
        "\x5e\x8f\x49\xdb\xaf\x09\x5e\xe7\x8c\x00\x72\xc3\x94\x29\x2e\x2a\xaf"
        "\xe3\x76\x1c\x9e\xa8\x07\x13\x0f\xc6\x27\x3f\x2a\x87\x57\x2d\x98\xe8"
        "\x3c\x93\x9d\x66\x43\x91\x96\x63\x70\x59\x5d\xf7\x17\x00\xf1\x54\xbd"
        "\x43\x42\x82\x56\x15\x77\xdf\x89\x87\xff\x29\x58\x10\x6d\xea\xdf\x10"
        "\x7c\x4e\x30\xd5\xda\x56\xbf\x77\x5f\x10\xc9\x59\xe6\x80\xab\xaa\x3a"
        "\xfb\x01\x3a\xbb\xc4\xb3\x25\xf1\x0c\x89\x19\x79\x60\xfb\x88\x69\xc4"
        "\x7b\xfe\x30\xf0\x4e\x7c\x8b\x2e\xe9\xa9\x7b\x6e\x4f\xff\x60\xd0\x05"
        "\x53\x2c\x86\x71\x87\x5e\x0d\x13\x54\xc9\xc5\x4a\x32\xfc\xe3\xa0\x05"
        "\x06\x70\x7e\x71\x30\x00\x1a\x6c\x5e\x4a\x0d\x2d\xec\x76\xa2\x79\x39"
        "\xc5\x3c\x4d\x1e\x92\xd7\xa8\x57\x19\x09\xb8\xc3\x7c\x98\x02\x47\xc7"
        "\xf4\xa5\x67\xb5\xa1\xa8\xf9\x0a\xba\x8d\x9e\xee\x4a\xee\x43\x01\x38"
        "\x28\xa0\x8c\x98\x74\x2c\xdf\xe4\xca\x07\x8a\x60\xd2\xe0\xe9\x03\x1f"
        "\x8a\x6f\xdc\xc1\xdb\xcc\x02\xdd\x5b\x32\xe5\x34\xf8\x9a\xf5\x05\x4c"
        "\x34\xf8\xa2\x39\x17\xc6\x9e\xc0\x7b\xa7\x2b\x20\xaa\xd2\xc7\x07\xb3"
        "\x92\x6a\xce\x23\x36\xdc\x25\x1d\x1d\x25\x5b\x62\x8e\x5f\xfc\x2e\x9c"
        "\xd1\xb4\xbb\x3d\x8e\xd1\x1a\x73\xf1\x38\x25\xf4\x39\x19\x7e\x2d\xfb"
        "\x38\x99\xb1\x9d\x7c\xbe\x24\x10\xca\xa3\x84\xdb\x43\xe3\x33\x6e\xe0"
        "\x5a\x56\x99\xcd\x67\x8f\x93\x73\xc9\x7a\x08\x99\xd6\x6c\x6a\xf6\xdc"
        "\x72\x2c\x1b\xf4\x9c\xdb\x56\xdf\xcf\x46\x9a\x56\x67\x2f\xa7\x23\x60"
        "\x4d\x47\xc0\x92\x50\x49\x12\x27\xcd\xd2\x0d\x6d\x00\x2e\x68\x04\x62"
        "\xe4\xf4\x81\x00\x51\x6f\x13\x2b\x59\x92\x8b\xfa\x31\x96\xaf\xc2\x4b"
        "\x16\x2f\xf4\xa9\x66\x17\x74\x6f\x69\x64\xf0\x0a\xcb\xf3\x53\xf8\x93"
        "\x12\x1e\x8e\x70\x0f\x4b\xfa\x5e\xdc\xcf\xc7\x4e\x2e\x46\x6a\x2b\xb4"
        "\xb2\x8b\xdc\x9d\xa5\x2a\xa6\x28\x81\xf8\xa0\xf1\x7b\x30\xed\xb8\xb7"
        "\x59\x96\xb1\xc1\x3b\x7b\xa7\xf9\x58\xcb\x74\x13\x6f\xfe\xed\x43\x0c"
        "\xa5\xe3\x5d\x49\x85\xe6\x0d\xfa\x1e\xf3\x56\x08\xe1\x0d\xb9\x11\x94"
        "\xf5\x8d\x49\xa2\x11\xbd\xff\x0e\xfb\x53\x3d\xa8\x57\x4f\xd7\x6d\xdb"
        "\xf3\x83\xfd\x65\xbe\x4f\x1f\x77\xd3\x50\xb2\x20\xe5\x05\x66\x2b\xdc"
        "\x62\xe9\xcf\xaf\xd3\x28\x8c\x0f\x1d\x5e\x50\x78\x48\x9c\x87\xdb\x86"
        "\xae\xd3\xb9\x2d\x57\x86\x70\xce\x59\xe3\x99\x53\x9b\x4a\x38\x6e\x87"
        "\xf9\x86\x09\x82\x5e\x7b\x6b\x52\x03\x30\x4f\xab\xdb\x6c\x3d\x7d\x2c"
        "\x91\xc0\xc5\xb4\x12\x82\x59\xef\x0e\x0a\xfb\x5d\x22\x0f\x40\xb7\xb2"
        "\x48\x8a\x42\xaa\x26\x45\xf9\xff\xce\xae\x98\xe8\x2b\xb5\x15\xa9\xc6"
        "\x32\xfe\x01\xde\xaa\x48\x65\x24\x29\xf9\xf9\x63\xf1\x41\xeb\xfd\x6a"
        "\xb6\xa0\x5b\xe0\xc0\x87\x69\xc3\xb7\xe3\xcc\x92\x47\xd4\xa7\x4f\x7c"
        "\x57\x3a\x9b\xdb\x84\x8f\x18\x10\xe8\x3b\xee\xfc\xcc\x90\x77\x44\xb4"
        "\x6c\x43\xdc\x0d\x00\xc3\x33\xa7\x55\x87\xbc\x3b\xdd\xa7\xb3\x4d\x6a"
        "\x53\x2a\x3e\xbb\xd0\xa6\x41\xfc\xc7\x97\xfd\xd9\x47\x5e\x90\xba\x3c"
        "\x25\xa9\x82\xfe\xc9\x6c\x42\x12\x5e\xce\x24\x85\x91\x71\xc9\xc0\x41"
        "\x2c\x92\x15\x64\x9c\xcf\x82\xb6\x95\x6b\xd7\xb1\x6e\xc9\x60\xc3\x93"
        "\x0d\x18\x0e\x10\xd1\x04\xd4\x8e\x79\x03\x76\xae\x0e\x71\x39\xa8\x07"
        "\xc0\xca\xd4\x69\xd2\x9e\x60\x6e\xf5\xa6\x5c\x1a\x83\xdf\x3e\xa9\x60"
        "\x11\x80\xbc\x33\x4c\x8c\x2c\x4f\x0d\x5c\x24\x43\xfb\x84\xd5\x48\xf4"
        "\x3a\x01\x96\x51\x2e\x84\x99\x52\x73\xb6\xf0\xb7\x27\x56\x83\xd7\x5b"
        "\xdc\x7c\x56\x2d\xfa\xe0\x56\x79\x85\xc0\xd7\x8a\x3d\x85\xe9\xa5\x6d"
        "\x5e\x56\x2b\xd2\x37\x10\x49\xed\x66\x5b\x2a\x61\x48\x41\xb2\xed\x0f"
        "\x30\xf2\x91\xc3\x0f\xfc\x69\xb5\x40\x46\x31\x88\xd4\x7b\xf8\xd5\xf1"
        "\x58\x71\xa4\x8f\xbc\x9c\xe2\x2b\xd0\xf8\x0e\x1a\xe7\x92\xeb\x01\x93"
        "\x7e\x4b\x67\x9d\xdc\x0c\x79\xf1\x99\xc4\xb4\xe4\x1c\x23\x58\x4e\xc0"
        "\x8d\xd0\xbf\x7c\x86\xd6\x68\x0f\xf6\xf1\x01\xad\xf6\x5b\x0f\x0e",
        4096));
    NONFAILING(*(uint64_t*)0x200013c0 = 0x200027c0);
    NONFAILING(memcpy(
        (void*)0x200027c0,
        "\xbd\x79\x05\x1c\xea\xf8\x23\xb3\x12\x69\x64\xfb\x90\xe5\xdd\x4d\x72"
        "\xae\x8c\x13\xa9\x83\x52\x2a\x67\x69\xe9\x35\x66\x42\x15\xc0\x72\x91"
        "\x53\xa6\xb0\x84\x9f\x77\x8b\x88\xf5\x9c\x95\x34\x41\x80\xb5\xfa\xe6"
        "\x9d\x08\x35\xd8\x3f\x18\x69\x31\x8e\xda\x4b\x73\x7a\x85\x56\x17\x7b"
        "\x88\x52\x45\x64\xc3\xa9\x41\x05\xf1\x84\xd2\xd9\x31\x5c\x11\x8a\x3e"
        "\xb9\xe3\x36\xaa\x3d\x83\xe4\xfe\x6f\x3a\x95\x62\x4a\x61\x15\x03\x20"
        "\x44\x67\xa3\x5d\xff\x06\x25\x28\xc6\xc2\xc5\x3d\x65\xe2\x0f\x1f\x35"
        "\x3a\x3e\xce\xc3\xa9\x2b\x61\x49\x9e\xf0\x2c\xa2\x6e\xae\xb8\xab\x0c"
        "\xde\x99\x03\x14\xdb\x5a\x95\x77\x88\xd8\xf5\x87\x60\x72\xee\x1f\xe0"
        "\x29\x18\x49\xcf\x76\x14\x83\x61\x6f\xa7\x10\xbe\x07\x45\x12\xd7\x84"
        "\x75\xae\xf9\x6e\xf3\xc5\x78\x73\x03\xe3\x2f\x21\xe2\x32\x2a\x54\x6c"
        "\x50\x49\xc6\x8d\x18\x2b\xfb\x20\x6d\xbf\x57\xd6\x8a\x54\xfe\xcd\x30"
        "\x00\x8c\x17\x4d\xa5\xc0\x04\x18\xb4\x0d\x7c\x57\x78\x5d\x94\x40\x78"
        "\xe8\x77\xdf\x6e\xbc\xc7\x31\x36\x24\xeb\x7d\xd1\x61\x9a\xd5\xbc\x0b"
        "\x5a\x85\xfb\x2d\x84\xc2\x8d\x20\x9f\x3a\x92\xf0\xdd\x85\xa6\x47\xfe"
        "\x9f\x18\x60\x20\x2a\x04\x5a\x2e\x5f\x88\xa6\x7d\x65\x92\x6c\xaf\xb1"
        "\x2e\xc1\xa9\x55\xc7\xc5\x64\x60\x30\x3f\xfa\x24\xc0\x45\xf7\x60\xa7"
        "\x62\xbd\x97\x0e\x06\xa6\x61\x6a\x1f\x1c\x32\xbf\xa8\xec\x3b\x06\x6b"
        "\x90\x22\x55\x49\x6d\xca\x2c\xa0\x32\xbc\xce\x94\x35\x20\x2b\xfd\x60"
        "\x0a\xc7\x02\x2f\x3c\x31\x59\x54\x2e\xf8\x90\xec\xcf\x5a\x46\xde\x81"
        "\x3f\x3f\x35\x12\xf6\x0b\x7e\xe9\x55\x6e\xdc\x0d\x75\x0c\xe0\xa1\xa3"
        "\x4f\xa2\x1f\x24\xa7\x0a\x13\x5c\x42\x23\xa7\xd8\x3e\x58\x61\xd8\x36"
        "\xc8\x99\xef\x5f\x98\xdc\xad\xd8\x76\x31\x15\xef\x7c\x20\xb2\xb5\x60"
        "\x31\x02\xd5\xcb\x9c\xf0\x8a\xf2\x03\xda\x15\xd5\x25\x6d\x78\x25\xed"
        "\x1e\x3d\x67\x27\x99\x6c\xcb\x5f\x38\xc9\x04\x88\x9d\xc5\x0f\xbd\xa1"
        "\x96\xbf\x83\x21\x81\xe4\xde\xe3\x24\x02\xb5\x29\xcc\x17\x16\x17\xac"
        "\x13\xef\xb1\x6f\x1d\x02\x37\xb2\x1b\x0b\xa4\xfa\xf6\x4c\x05\xc9\xb4"
        "\xda\x45\xef\x22\xa7\x9c\x0a\x39\xca\xcd\xd1\xd7\x92\xbe\xa1\x8b\xf9"
        "\x7f\x0e\xe8\x3b\x91\xa0\x44\xda\x61\xa9\x47\x7d\xee\xca\x8c\x18\xda"
        "\xca\x5b\x2e\xcf\x25\xe4\x1e\xb4\x0d\x7f\xc8\xfa\x27\x8f\x95\xb5\x12"
        "\x85\xe0\x46\xd3\xb8\xc2\x48\x77\xc6\x0c\x99\xe9\x1b\xaf\xbc\xb6\x90"
        "\xeb\x06\x74\x8b\x82\x72\x45\x0c\x1c\x6f\xb8\x99\x0e\x29\xa2\x69\x19"
        "\x67\x6e\x08\xdb\xdd\x9c\x41\x5c\x35\x21\x97\x6b\xc8\x4f\x01\x93\x42"
        "\xd3\x32\xb6\xa6\x29\xee\x38\x4c\x6c\xb2\x9a\x7d\x27\x46\xc9\x48\x80"
        "\x5d\x29\xe6\x09\x2d\x8a\xee\x85\xee\xf3\x4a\x9f\x53\xb2\xa7\x01\x66"
        "\x70\x00\xb8\x04\xdc\x32\x8d\x69\x63\x62\x3f\x6c\xa9\x48\x5f\x62\xc8"
        "\x79\x62\xf2\x48\x7b\x5b\x06\x0e\xcf\x33\xbc\x4e\xbb\x01\x20\x8a\x25"
        "\xf5\x79\x09\x88\x0e\xdc\x70\x55\x71\x03\x96\x38\x2c\xe5\x09\xe6\x78"
        "\xad\x53\x22\xe5\xfc\x2d\x11\xef\x58\x2b\x2b\xfb\x8d\x84\x56\x8b\xf5"
        "\x79\x9a\x33\x64\xa6\xe8\x64\x04\x77\x5a\xf2\x91\x5e\x77\xb2\xdd\xe9"
        "\x97\x60\x43\x59\xac\x6b\x46\xfd\xbb\x4a\x53\x43\x41\x80\xfb\xb9\xfb"
        "\x24\x7b\xbe\xf3\x5c\x16\x47\x28\x44\x3a\x05\xd6\x6d\x33\xba\x74\x16"
        "\xb2\x38\x17\x77\x31\xe2\x40\x9c\x94\x2a\x2a\xd9\x35\x35\x1a\xc9\x72"
        "\xe0\x3b\x8e\x8e\x13\xd3\x3e\x79\xe8\x83\x79\xdd\xb6\x2c\xc1\xb5\x66"
        "\x54\x14\x86\x71\x14\x86\x28\xa5\x4c\x4f\xc8\x28\xa7\x06\x14\x5b\x8e"
        "\xef\x4d\xbd\x9d\x77\x36\xa2\x25\xfa\x20\x57\x4c\x70\xd5\x88\x03\xa9"
        "\xd8\xfe\x53\x49\xb6\xe8\xe4\x2b\xa9\xf1\x60\x05\x39\x65\x75\x49\xcf"
        "\xbb\xe7\x27\xe1\x4a\xd9\x48\xd0\x61\x1a\x3d\xe8\x9a\x9b\x41\xef\x0e"
        "\xd9\x6b\x87\xbc\xe9\x5a\xf3\xba\xba\xc9\x62\x10\x54\x40\x2e\x6f\x50"
        "\x0a\x04\x68\xda\x91\xa6\xbf\x9a\xe7\x41\x6e\xa6\xd8\xad\x42\xf7\xcd"
        "\x42\xea\x4a\x86\x44\xc0\x7b\xcb\x0a\x95\x3a\x48\x3f\x6b\x12\xc7\x2c"
        "\x6a\xcb\x2f\x17\x8d\x83\xb0\xf3\xfc\xd0\x12\xf0\x9a\x6a\xf2\xb5\x2a"
        "\x8e\xde\xc3\x23\x87\x76\x7f\xc7\x53\xc7\x93\x63\xb0\x79\x99\x2f\x90"
        "\xcc\x56\xe4\x29\xa4\x41\x9c\x19\x42\xad\x0a\x01\xc8\x4e\x3a\x52\x54"
        "\x43\xda\xf4\x54\xa1\xcb\xc2\x46\x10\x84\x29\x8c\x05\x54\x87\x85\xc7"
        "\x26\xd3\xef\x62\x5c\x36\xd4\x33\x5e\xbe\x39\x74\xd0\x9d\xac\xc5\xd3"
        "\xf4\x15\x49\x98\xc7\x88\x78\xbc\x09\x9b\xeb\xf6\x93\xe3\x9f\x20\x60"
        "\x05\x38\xd8\x00\x17\x03\xef\x85\x81\xa6\x12\x3b\x9e\x07\x23\x1a\x0c"
        "\xf3\x60\x10\x8d\xa9\x46\xd2\xbd\xbd\x47\xe0\x8b\x0a\x37\x0b\xe6\x66"
        "\x63\x6a\x2d\x92\x69\x28\xa9\x63\xe6\x61\xa9\x66\xfb\xf3\x93\xe8\x4f"
        "\xd3\x1f\x73\xbf\x3a\x19\x0f\xc5\x6a\x5c\x0d\x6a\xbf\x67\x8a\x35\xdc"
        "\x73\xcd\x31\xe2\xa0\x2c\x5f\x6f\x3d\x11\x37\x03\x60\x5f\x86\xf8\x21"
        "\xac\x0f\xb0\x6f\x54\x5b\xe2\xdb\x77\xaf\xba\x15\xdf\x7f\x54\x98\xf0"
        "\x6b\xc6\x20\xf1\xaf\x1c\xb0\xdb\x8e\x03\xa6\x36\x67\xa9\x84\x7d\x80"
        "\xae\x1e\x45\xe8\x66\x31\xd7\xe2\x84\x46\xe2\x3d\xdb\xb0\x6f\xfe\x95"
        "\x35\x28\xb9\x76\x5a\x59\xa0\xe6\x2a\x7c\xf7\x81\x2c\xb8\xf3\x15\xaf"
        "\x8f\x8b\x62\x10\x92\xdd\xa9\x96\x7a\xc7\x4c\xca\x34\x46\xe0\x9d\x4a"
        "\x9e\xb0\xd8\x4b\x87\x45\x1c\xbf\x1c\x9e\x39\x2b\x57\x09\x73\xcd\x93"
        "\xc6\xcf\x3b\xf8\x44\x1e\xe2\x48\x17\x54\x5b\xd6\x37\xe3\x2f\x3f\x59"
        "\x7e\x04\xa3\x50\xdc\x3f\xbe\xc4\x5f\x0b\xf5\x8a\x5f\xf2\x35\x44\x7f"
        "\xdf\x31\x5f\xe3\x48\xeb\x6b\x15\xf8\xb7\x86\x90\xfc\x06\x0c\x8b\x61"
        "\xfa\xb3\x3d\x52\xc5\x9b\xa3\x7e\x7c\xbe\x20\x01\xed\x33\x90\xf4\x41"
        "\x2e\xfb\x24\x18\xcb\x84\xd7\x34\xbd\x2a\x26\x11\xec\x0d\xed\x28\x2f"
        "\x3d\x75\x8d\x4a\x04\xad\x3b\x1c\x6b\x8a\x8d\x8b\xe9\xf2\x2a\x08\x17"
        "\x3a\x04\x4f\x69\xb9\xd4\x42\x5f\x42\x13\xd3\xd5\x04\xa5\x6b\x6f\x8c"
        "\x4e\xc7\x6f\xa5\xed\x5c\xba\x07\xda\x99\x3e\x92\xfe\x5b\x36\xed\x94"
        "\xbb\x19\x1c\x2f\x09\x8d\x5d\x50\x46\x66\x15\x08\x8f\x3a\x25\x7d\x92"
        "\xf3\xba\xf6\x76\x1c\xa6\x03\xcd\xa3\xf8\x85\x4d\xb6\x98\x76\xfe\x2a"
        "\x03\xec\xac\x45\x99\x7f\x34\x17\x10\x91\x78\x2c\xf6\x1a\x0e\xe3\xab"
        "\xc4\xaa\x3f\x08\x74\x28\xf9\x66\x07\x4f\xb9\x0c\x8a\x7c\x2f\xf5\x91"
        "\x07\xd7\xc4\x92\x38\x2e\x59\x7f\xe9\x98\xa2\x71\x2c\x28\x6d\x0d\x76"
        "\xcc\xd8\x4e\xb3\x96\xb1\xa6\x10\xbb\xb3\x80\xa0\x59\x2a\x0b\x3d\xcb"
        "\x97\x74\xb6\x0c\x01\xf3\xe2\xe3\xfb\xf0\x10\x1b\x86\x1b\x6d\xc1\xe8"
        "\x23\xe7\x80\x3a\x66\xc4\x2e\xb7\x5b\x5e\x8d\x47\x05\xc3\x91\x2f\xb7"
        "\xed\xba\x8a\xf5\xc2\xa7\x2f\x36\x89\x46\xc4\xab\xe1\x3b\x4b\x09\xd1"
        "\xff\x3e\x9f\x8b\x92\x4b\xe6\x97\x71\xa1\x03\xc2\xcd\x49\x3c\xbb\x89"
        "\x40\x5a\xfc\x69\x78\x82\x34\xaa\x81\x0b\x7f\xb2\xfb\xc8\x35\x24\x18"
        "\xe4\xaa\xa7\x39\x22\xd7\x8c\x3e\xe9\x6e\x74\x4a\x90\xcc\xf6\xb3\x7b"
        "\xb7\xae\xc3\x77\xe0\x5f\xe7\x88\xad\x57\x5a\xb6\xdd\x43\xf1\x17\xcc"
        "\x70\xd9\x8f\xcf\xf7\x0e\xaf\x04\x6b\xa6\xdc\xe2\xce\xc3\xe7\x7f\xaa"
        "\xe3\xfc\x4a\x60\xed\xe2\x61\x47\xb3\xc9\x98\x9a\xfc\xd7\x94\xcd\xcb"
        "\xc3\x23\xfb\xce\x63\x26\xd0\x8b\xa4\x87\x5e\x12\x87\x13\xa5\xce\xb5"
        "\x1d\x33\xd5\x26\xca\xf5\x84\xf0\x34\xe6\x87\x76\x0e\xc7\x13\x25\x95"
        "\x95\xe3\x40\x77\x1d\x2f\xe1\xa1\xd5\xc6\x13\x91\x40\x16\xa9\x03\xa7"
        "\x70\xd6\xaa\x69\x8c\x7a\x0a\x3f\x4e\x1b\x78\xdf\x8f\x60\x48\xa1\x4d"
        "\xd4\x6e\x0d\x25\x69\x1d\x8f\xf5\x5a\x9b\x38\x08\xdf\xaa\xf0\xee\x30"
        "\xab\x16\x9d\x2f\xee\x46\x99\x18\xe6\x73\xce\x7f\xe4\xfa\x5a\x4f\xad"
        "\xa3\x2c\x47\x8b\xc4\xcd\xb5\x06\x6f\x42\xab\xa1\x4d\x69\xda\x7a\x92"
        "\x26\x7a\x4f\x2e\xbb\xbb\x09\xc2\x63\x50\x89\x01\x87\x4c\x3b\x5e\x71"
        "\x04\xd4\xc2\x0f\x3d\x0c\xfb\x96\x60\xdf\xdb\x0e\xf6\x23\x09\x79\x96"
        "\xe8\xc5\x9c\x0e\x3c\xa5\xe5\x0a\xe6\xf8\x44\x5a\xe1\x0a\xf5\xc2\x64"
        "\x2a\xa0\x24\xc9\x07\x89\xcc\x12\x4f\x65\xb6\xb2\x52\x58\xac\x4d\x4e"
        "\x66\xea\xf1\x77\x30\xc4\x4d\x68\xf0\x61\xa8\xc9\x50\xab\xa0\x80\xab"
        "\x5e\x01\x69\xc3\xd7\x5c\x03\xe3\x48\x5c\x3c\x07\x10\x5f\x07\xef\xf8"
        "\x9a\x9a\xf7\xda\xcc\x3b\x36\x1e\x6b\xdc\x97\xb3\x35\xe2\xe6\x42\xf3"
        "\x0c\x2f\x9d\xee\xdb\xed\x98\x0e\xf6\xa0\xea\x5c\xc1\xff\x22\xca\xc7"
        "\x95\x4e\x12\x43\x17\x74\x73\x5e\x4d\xc0\x54\xfa\x95\xb0\x14\xe7\x93"
        "\x67\x67\xa1\x78\x8d\x84\x27\xbe\xbe\x35\x7c\x9f\x40\x82\x37\xbe\x9a"
        "\x39\xf4\x68\x93\x51\xf1\x06\x70\xfd\x22\x0e\xb6\xb4\x84\x54\x5d\x2a"
        "\x43\xd1\x00\xab\x01\xaa\xba\xcb\x94\xff\xce\x2a\xcc\x44\x66\x12\xbd"
        "\x7c\xb3\x35\xec\x7d\x5f\x4f\x0e\xe4\xb9\x8a\x05\x2e\x57\xd0\xee\x8e"
        "\xa9\x8e\x75\xe8\xbf\xa8\xb0\x8d\x51\x90\x89\xcc\xc4\xf9\xc6\x1f\xf8"
        "\xbd\x08\x67\xe3\x96\x04\x4f\x28\x53\x0b\xf1\x61\x73\x9e\xf1\xd1\x6b"
        "\x53\xa6\xfa\xea\x83\x49\x1b\x6c\x9e\xe6\x41\xd5\xa5\x39\x15\x20\x14"
        "\x11\x5b\x91\x5f\xc0\x34\xe8\xff\xdc\x72\x34\x34\xc6\x31\x8c\x44\xd3"
        "\x9a\xfe\x3b\xca\x5e\xf7\x18\x85\x13\x8f\xd5\x6d\x16\xcd\xe8\x9b\xb2"
        "\xc4\x41\x44\x85\xa7\xde\x16\x11\x33\x54\x06\xbb\x27\xb9\x58\xa8\x58"
        "\x16\xd1\xb0\xe0\x7c\x88\x2a\x26\x3d\x5b\xa3\x82\x4a\xc6\x0f\xb8\x4e"
        "\x42\x49\xcd\xed\x68\x41\xe0\xd3\x84\x5d\x23\x90\xec\x38\x2c\xda\xe6"
        "\x6f\x8d\xb8\xc4\x21\x65\xa3\x08\xa7\xd9\x8c\xf3\xf5\xcb\xe9\xfc\xb2"
        "\x9f\xca\xd0\x80\x20\x91\xe7\x17\x5a\xb7\xe6\x68\xb3\x74\x82\x72\xd4"
        "\x3e\xf2\xc6\x0f\x8f\xdf\xb0\x65\x58\x32\x5c\x73\x9c\x1b\xfc\x8c\x43"
        "\x49\xca\xf9\x94\x4f\x97\x26\x6e\x26\x82\xe5\x6c\xde\x3f\x57\x4e\x0a"
        "\x6b\xf3\xa5\x8a\xe6\x01\xce\xb7\x8a\xb5\xe8\xf8\x57\xef\x46\xaf\x9e"
        "\xf9\x21\x7d\x15\xeb\xab\xa8\xe4\xb3\xee\x39\xdb\x27\x8e\x13\x24\x55"
        "\x38\xf3\xd5\x6b\x51\xde\x8d\x88\x8e\x7b\x7e\x78\x0d\xc9\x8f\xc7\x00"
        "\xa0\xdd\xfb\xe9\xb5\x16\xfa\x4b\xe6\x79\x87\x56\xc8\x51\x53\x9e\x52"
        "\xb4\x79\x19\x1a\x6f\x1d\xba\x37\xa1\xf7\x5e\x3e\xea\xf7\xcf\xed\xea"
        "\xed\x42\xf9\x9c\xc9\x1d\x7b\x5d\xef\x66\x31\x87\xf6\x57\xde\x68\xee"
        "\x9a\x35\x48\xcf\xb0\x96\xdb\x5c\x83\x48\xe9\xe9\x46\x7b\xe4\x7f\xac"
        "\x8e\x1b\x9a\xe0\x7a\x38\x14\x77\x60\x25\x13\x81\x08\x34\x3f\xb2\xae"
        "\xf0\x29\xf3\x95\x65\x97\x00\xf8\x30\x04\x7e\x05\x18\x2c\x6a\x17\x8a"
        "\xf9\x5e\x5a\x2a\xf9\x76\x5d\xfa\x0c\x8d\xa3\xb4\x5e\x53\x00\xe4\x6d"
        "\x26\xcc\xd7\x20\x23\x28\x29\x77\x8f\x18\xd5\x35\xa9\xc4\x15\x3d\x74"
        "\x0a\x4c\x0b\x31\x3d\xf1\x43\x67\x20\xbf\xbc\x95\x95\xc0\xfa\x3b\x17"
        "\xf3\x6a\x24\x18\xa4\xfd\x73\x99\x2c\xb0\x53\x22\xdb\xba\x67\xf8\x39"
        "\x57\x84\xd4\xb7\x79\x65\xec\xc8\x21\x4f\x7a\x4b\x93\x53\x99\x4b\x7a"
        "\x5e\x0a\x05\x15\x75\x46\x91\x03\xbe\x05\x80\xab\xda\x86\x0c\x74\xbd"
        "\x08\x96\x32\xe9\xf6\xf7\x60\x77\x19\xc6\x03\x90\xcb\xdf\xa9\x1a\x25"
        "\x66\x6e\xd7\xed\xe7\x22\x09\xdf\x17\x91\xa4\xe0\x92\xf1\xe6\x20\x7c"
        "\xd9\x2f\x40\xe9\xf2\x82\x5f\xdd\xc6\x9a\x31\x2d\xe7\x56\x2c\x01\x00"
        "\x42\xd1\x01\xcb\x0c\x3c\x3a\x4e\x88\xb1\x46\x45\x0e\x5c\xdc\xd3\xdf"
        "\x74\x13\x3b\x48\xa9\x09\x10\x8f\xfb\xfb\x61\x1b\xbd\x2f\xf3\xcb\x2c"
        "\xd6\xdc\x37\xd8\x4f\xec\xbd\xfb\xba\xd9\xb5\xf9\x77\xde\x60\x63\x3e"
        "\xdb\xf3\xb3\xf6\xbe\xd8\xd4\x2f\xe1\x44\xc4\x5b\xca\xc7\x57\x89\x6a"
        "\x99\x55\x00\xdc\xce\x7f\xc1\xa8\xa1\xea\x5a\xa7\x66\xf9\xb0\xd0\xfd"
        "\x0c\xdd\x2a\x7f\x99\x05\x3d\x42\xcf\x31\x14\xa1\x2b\x97\xaa\x27\x71"
        "\x56\xa1\xb7\x45\x25\xee\x64\xc4\xf1\xf7\x23\x76\xc3\x21\x94\x4e\xad"
        "\x8e\x48\x86\xad\x36\xea\xd7\xd1\x99\xfd\x5e\x0f\x08\x04\x4d\xeb\x67"
        "\xb7\x42\x38\x76\x06\x64\xfd\xce\xb1\xa5\x38\xe9\x46\x04\x55\x75\xfd"
        "\xa9\xf3\x4b\xe8\xa3\x72\x26\x09\x99\xac\x04\x8f\x2f\x93\xfc\xc4\x9a"
        "\x0f\x0c\xf0\x37\xa8\x7a\x6a\x89\x67\x14\x4c\x06\xe7\x1d\xfe\xed\xa0"
        "\x17\x6e\x96\x07\x0b\x7f\x21\x13\x82\x7a\xf8\xd2\x61\x64\x04\x79\xc8"
        "\x02\x88\x30\x42\x70\x18\xc8\xdc\xc9\xce\xbd\xcf\xed\x24\x54\xf9\xdc"
        "\xfe\xe8\x6a\xb7\x47\x1a\x88\x4c\xaf\x45\xa0\xea\x00\x58\x98\x6e\x3c"
        "\x8a\x09\x76\x7e\xc7\x73\x16\xfe\xaa\x01\x8e\x57\x7f\x5c\xc1\x67\x41"
        "\x0d\xc0\x47\x9a\xa0\xd9\xeb\x12\x52\x48\x0c\x05\x6b\xda\x1d\x3b\x91"
        "\xdf\xf3\x36\x5a\xfe\x69\xb0\xd7\x69\x84\x3d\x8a\x8f\xd8\x55\x71\x22"
        "\x76\x9b\x81\x62\xcb\x8e\x76\xef\xcf\x52\x49\x6b\x86\xb1\xd5\x7d\xb2"
        "\x2d\xa5\x93\xc1\x8d\x37\xe4\x14\xea\x00\x88\x54\xf3\x98\x5c\x76\x4e"
        "\xea\x83\xd8\x66\xe5\xf8\xb4\xfb\xbe\xf4\x69\x19\x94\xbd\x9d\xc2\xdb"
        "\x48\x26\xde\x8f\x58\x4d\xf8\xcf\x72\x30\xb1\x5b\x47\x44\xf4\x9a\x85"
        "\x13\x07\x29\x11\xf8\x21\x5c\x06\x93\x22\xcf\x66\x55\xa4\xb1\xc5\x97"
        "\x8e\x10\xd8\x58\x3c\x84\x2d\x4e\xbc\xc1\xe4\x0e\x63\x05\x1a\x30\x17"
        "\xcb\x0a\xa6\x75\x14\x67\x71\xce\x28\x77\x66\x4d\xaa\x3e\x4c\x1c\x9c"
        "\xfe\x93\x9e\xbb\xbe\xf0\x4e\x43\x4a\x95\x25\xe5\x78\x62\x9f\x36\xf0"
        "\x36\xbd\x6a\xac\x0e\xb6\xf3\x2f\x3e\xd8\x5e\xb2\x80\x58\x87\x91\x2a"
        "\x31\x0f\x04\x21\x3b\x26\x80\x82\xb6\xd1\x2c\xd6\xff\x45\x77\x29\xe6"
        "\x17\x75\x68\xa3\x94\xae\x34\x7f\x66\x83\x5e\x65\xf9\x2d\x3b\x24\x9d"
        "\xf0\x2c\xff\xc0\x5b\x46\x4d\x72\xa0\xdf\x0b\x31\xda\x39\x30\x85\x37"
        "\xcd\x42\x50\x8a\x77\x04\xaf\x1e\x0d\xaa\x81\xb8\xdd\x6b\x7c\xb0\x13"
        "\x3a\xfd\xa3\xa3\x2f\x1a\x95\xf1\xb8\x12\xfa\xc7\xae\x04\x31\x78\xe0"
        "\xa7\xf9\x89\x69\xea\x1a\x25\x7e\x66\xeb\x94\x87\x63\x76\xdf\x33\xb0"
        "\xd7\x71\xf6\xf5\x5f\x7e\x14\x8b\x5e\x76\xf8\xfb\x92\x26\x0b\x3f\x67"
        "\x1a\xd6\x12\x9a\x28\xcf\x1f\x41\xcf\x79\x6d\x6f\xd2\xf4\x88\xc2\x65"
        "\xd5\x36\x85\xab\x53\x32\x18\x76\x05\xd1\x21\x04\x2d\x23\xd9\x45\x68"
        "\xd1\x49\x61\x9e\x01\x16\x25\x9c\x52\xea\xf6\x69\x5b\x65\xbf\x68\xce"
        "\x18\x83\x74\x66\x40\x9f\x92\x07\x2b\x4e\x04\x90\xcf\x5a\x80\x3d\x43"
        "\x8f\x24\x97\x25\x0d\x59\x3c\x19\x35\x86\xee\xfc\x3d\x31\xdc\x89\x15"
        "\x83\x4b\x0c\x93\x31\xf2\x7d\xa5\x2d\x1c\x24\x22\xe9\x57\xb9\x10\xee"
        "\xf0\x9f\x3a\x88\xb9\xd8\xc3\x3c\x96\x7f\x01\xd0\xe6\xff\x3e\x29\xeb"
        "\x1b\xc0\x3c\x3f\xa6\x19\x97\xb4\x3d\xfa\x65\x22\xf2\x56\x8d\x1e\xcf"
        "\xf6\x73\xff\x3a\xdd\x22\x57\x1f\xc6\xe9\x00\xcf\x09\x21\x10\xcd\xb7"
        "\x19\x95\xd3\xf6\x18\x5f\x9c\x43\xa3\x4b\x1f\xd9\x65\x48\xcb\x25\x5f"
        "\xd1\xef\x47\x02\xa0\xf3\xbe\x3c\x84\xb3\x6e\xc6\x1d\x3b\x66\xb2\x2b"
        "\x01\xee\xfb\xb0\x66\x93\x30\x94\x76\xf6\x55\x09\xdb\xcd\x85\x18\x28"
        "\xa9\xf3\x4b\xe9\x36\x7b\x93\xde\xb1\x0a\x6f\x1b\xc7\xe9\x5c\xb3\x58"
        "\x8d\xa4\x87\x0a\xb7\x7b\x20\x7c\x0f\xb6\xff\x9b\xdf\x1c\x9b\x38\x84"
        "\x60\xc8\x0c\x0b\xe3\xe2\xed\x86\xe2\x6a\x64\x5d\x89\xeb\xa7\x22\xa4"
        "\xc9\xa0\x4d\xc0\xc3\x1d\x4d\x02\xaf\xb2\x6f\xd5\xfa\x7b\x90\xc2\x87"
        "\x81\xa3\x23\xc2\xe0\xc8\xb9\x20\x99\x67\xe8\xaa\xf9\xdc\x6b\x07\x8a"
        "\xd8\xeb\x34\x30\xac\xe2\x89\x98\xd3\xc7\x38\x63\x12\xee\x6a\x73\xe5"
        "\x42\xbc\x5c\xb3\xe7\x0e\x1b\x90\x76\x6f\x25\x87\x49\x4f\x9c\x19\x67"
        "\x37\xc8\x5a\xde\xeb\x7e\x29\x22\xe0\x80\xbf\x26\x06\x6b\xdb\xe2\x09"
        "\xd2\x06\x13\x67\x78\x57\xc5\xc2\xcb\x0a\x04\xa0\x29\xe2\xc5\x9e\x17"
        "\x4d\x68\x60\xf6\x93\xba\x46\x71\x3e\x89\x92\x72\x0d\x6d\x2f\x1f\xf5"
        "\xe6\xa5\x9b\xf8\x7d\x22\xf1\x57\xf9\x33\x42\xdd\x19\x0d\xdd\xce\x82"
        "\x38\x14\x8f\xae\x70\x57\x74\xde\xf8\x32\x94\xeb\x36\xfa\x7f\x9e\x17"
        "\xf1\x52\x7a\x93\x5d\xad\x89\xad\xc3\x77\xae\x98\x5e\x1a\xfa\x69\x09"
        "\x3b\x46\xe3\x8f\xb8\xfc\x6d\x00\x49\xbd\x7b\x37\xa4\x6f\xee\x40\x39"
        "\xc7\x43\xbd\x6f\x7a\x06\x40\x68\x7a\xd1\xd0\x0a\xc4\xb0\xd9\x22\x70"
        "\x1c\x50\x32\x45\x46\x8b\x79\xa8\xf6\x16\x2c\x45\x40\x98\x38\x31\x27"
        "\xdf\x9d\x22\x89\xc2\x95\x2e\x14\x37\x39\x9b\x99\x4d\xd6\xee\x7d\xef"
        "\x7f\x0d\x26\x3e\xdc\xe3\x51\x20\xc1\x86\xe0\xe6\xb2\x55\x85\x3e\xcd"
        "\x32\x94\x48\x73\x8e\x41\x48\xe7\xb4\x1e\x8f\x01\x4d\xb5\xeb\x67\x7d"
        "\xea\x16\x12\xee\x9f\xcf\x4f\x28\x3c\xe0\x38\xa7\xa2\x3c\xcc\x1a\x39"
        "\x8b\x31\xc1\x31\x6c\x62\x81\x96\x8c\x15\x18\xfc\xe4\xf7\x7f\x0e\x37"
        "\xa4\x6d\xdc\xed\x42\xa7\xa9\x38\x9c\x04\x40\x19\x0b\x0c\x78\xd3\x5d"
        "\x00\x67\x3a\xc3\x9e\x7b\x95\x7f\x06\x55\xa3\xd6\x5f\xbb\x45\x91\x79"
        "\xe6\x4c\x54\xb8\x54\xe4\x79\xbc\x48\xeb\xbf\x27\x40\xdd\x7d\x76\x0a"
        "\xd8\xf2\x47\xe3\xe0\xe6\xc6\x97\xb7\x54\xcd\x69\x75\x60\x68\x70\xf2"
        "\x49\x65\xdf\x65\xc8\xb5\xbf\x74\x94\x17\xce\xfb\x44\x56\xcf\xce\x21"
        "\x0c\x0c\x41\xee\xe2\x73\x8c\x4d\xbd\xb9\x9c\x11\xf5\x9c\x82\x44\x0e"
        "\x21\xcb\x1b\xba\xfd\x74\xe7\x44\x38\x78\x6f\xd8\x7a\x5a\x91\xa5\xac"
        "\x70\x2e\x6b\xaf\x19\x4c\xa9\xc6\xdf\xa0\x01\xc3\x1c\xaa\x26\x8d\x9b"
        "\xfc\xb9\xec\x10\xac\xdc\x1f\x57\x58\x02\xce\x6a\x28\x44\xa9\x77\xfa"
        "\x12\x8a\x7f\x54\xee\x7c\xd7\x27\x67\xb9\xfa\xbb\x26\x84\xec\x19\xc8"
        "\x89\xb3\x04\x6f\x40\xab\xae\x6b\xff\x83\x34\xfc\x3b\xb4\x97\x72\x0f"
        "\x49\x36\xbc\xe9\x72\xc2\x65\x38\x35\x48\x06\x53\xb3\xe3\xaa\xe5\x96"
        "\x4e\x1c\x51\xca\x89\xfb\xbd\xb6\x68\x8d\xac\x3f\xb7\xa1\x9c\x87\xdf"
        "\xc0\xf1\xd1\xcc\x27\xfd\x07\x65\x22\x1b\xd0\xbb\x03\x3c\xb0\x9c\xcd"
        "\x11\x1b\xab\x89\xe5\xf5\xd9\x2a\xf5\xc1\xf9\x61\x50\x96\x87\xb5\x51"
        "\xb5\x1f\x10\x73\x3b\xdb\x7e\x49\x80\xe8\xc9\x70\x89\x89\x7f\x8a\xc5"
        "\xb2\xc5\xea\xeb\xa4\x42\x42\x89\x54\x38\x3d\xc4\x7a\xd3\x18\x83\xb7"
        "\x40\xee\xee\x1d\x2d\x03\xd8\x1f\x6b\xae\x77\x47\xa0\xff\x09\x05\x55"
        "\x96\x34\x4e\x03\x6b\xc4\xb9\x73\x37\xd8\xae\x46\xa9\xe3\x00\x40\x56"
        "\xd3\x92\x13\xe1\x4a\xc9\x91\xc0\x73\x22\x5b\x58\x41\x61\x95\x98\x1d"
        "\xd4\xd3\xfd\xb2\x2c\x01\x19\xd1\x62\xfe\x8a\xb4\x3e\x00\xb3\x82\xb5"
        "\x2f\x28\x9c\xb7\x5e\x08\xfb\xd6\x9c\x59\xd3\x03\x49\xbe\xf7\x60\x2f"
        "\x8d\x4b\xed\xfb\x3a\xbd\x9a\xee\xaf\x14\x5a\x79\xab\x80\x6d\xf8\x1d"
        "\x03\x36\xf0\x37\xba\x1e\xec\xd3\xa9\xa4\x3f\x18\x11\x84\x0a\x1d\x21"
        "\x55\x42\x2b\x2a\x99\x3e\x4f\x2c\xc5\x88\x22\xc4\x51\xcd\xe0\xa1\xf4"
        "\x1d\x03\xe2\x79\x87\x31\x59\xf0\x35\x45\x87\x7d\xf3\x3b\x13\x9a\x89"
        "\x1f\xfe\x92\xfd\xa2\xd5\x97\xe4\x66\x7f\x22\x4b\xee\x8d\x2e\x2a\xcf"
        "\xbc\xd2\xe4\x80\x61\x21\x5a\xc3\x52\x30\xb1\x10\x8f\xfa\xc6\x39\x9d"
        "\x92\xbc\x1c\x9b\x88\x05\x33\x62\x26\x57\xce\xe5\x06\xfa\x5f\x0b\x02"
        "\xe6\x01\x59\x4b\x9d\xf7\x08\xcc\x16\xfc\x3d\x41\xd7\x54\x6e\xf6\xe2"
        "\x59\x8b\xc4\xa1\x9f\x11\x3a\x19\xc2\x2d\xf3\x20\x40\xee\xb9\x11\x78"
        "\xe6\xe3\x33\x48\xac\xd7\x75\xcb\x1f\x6f\x66\xb9\xf0\x97\xaf\xbd\x66"
        "\xa9\x04\xe6\xac\x72\x84\x28\xf5\xde\xda\x76\x0a\xf7\x0f\x1c\x8c\x12"
        "\xf8\x88\xd6\xa3\x3c\xbd\x05\x26\xd4\x57\x15\xf5\x31\xb6\x11\xf7",
        4096));
    NONFAILING(*(uint32_t*)0x200013c8 = 0x40);
    NONFAILING(*(uint8_t*)0x200013cc = 0);
    NONFAILING(*(uint8_t*)0x200013cd = 0);
    NONFAILING(*(uint16_t*)0x200013ce = 0);
    res = syscall(__NR_write, r[0], 0x20001380, 0xe0);
    if (res != -1)
      NONFAILING(r[2] = *(uint32_t*)0x20000340);
    break;
  case 6:
    NONFAILING(*(uint32_t*)0x2000b9c0 = 0x14);
    NONFAILING(*(uint16_t*)0x2000b9c4 = 6);
    NONFAILING(*(uint16_t*)0x2000b9c6 = 2);
    NONFAILING(*(uint64_t*)0x2000b9c8 = 0x20004800);
    NONFAILING(*(uint32_t*)0x2000b9d0 = 0);
    NONFAILING(*(uint32_t*)0x2000b9d4 = 0);
    syscall(__NR_write, r[0], 0x2000b9c0, 0x18);
    break;
  case 7:
    NONFAILING(*(uint32_t*)0x20002640 = 5);
    NONFAILING(*(uint16_t*)0x20002644 = 0x10);
    NONFAILING(*(uint16_t*)0x20002646 = 1);
    NONFAILING(*(uint64_t*)0x20002648 = 0x20002680);
    NONFAILING(*(uint64_t*)0x20002650 = 0x86);
    NONFAILING(*(uint32_t*)0x20002658 = 0);
    NONFAILING(*(uint32_t*)0x2000265c = 0);
    NONFAILING(memcpy(
        (void*)0x20002660,
        "\xe1\xf4\xf3\x52\xad\x90\x44\xf1\x97\x1e\xcb\xf9\x4f\xb3\xb3\xf5",
        16));
    NONFAILING(*(uint32_t*)0x20002670 = 0x3ff);
    NONFAILING(*(uint8_t*)0x20002674 = 0);
    NONFAILING(*(uint8_t*)0x20002675 = 0);
    NONFAILING(*(uint8_t*)0x20002676 = 0);
    NONFAILING(*(uint8_t*)0x20002677 = 0x5a);
    NONFAILING(*(uint16_t*)0x20002678 = 7);
    NONFAILING(*(uint8_t*)0x2000267a = 1);
    NONFAILING(*(uint8_t*)0x2000267b = 9);
    NONFAILING(*(uint8_t*)0x2000267c = 0);
    NONFAILING(*(uint8_t*)0x2000267d = 0x5b);
    NONFAILING(*(uint8_t*)0x2000267e = 1);
    NONFAILING(*(uint8_t*)0x2000267f = -1);
    syscall(__NR_write, r[0], 0x20002640, 0x40);
    break;
  case 8:
    NONFAILING(*(uint32_t*)0x200024c0 = 3);
    NONFAILING(*(uint16_t*)0x200024c4 = 8);
    NONFAILING(*(uint16_t*)0x200024c6 = 1);
    NONFAILING(*(uint64_t*)0x200024c8 = 0x20002480);
    NONFAILING(*(uint64_t*)0x200024d0 = 0x4000000);
    NONFAILING(*(uint64_t*)0x200024d8 = 0x992);
    syscall(__NR_write, r[0], 0x200024c0, 0x20);
    break;
  case 9:
    NONFAILING(*(uint32_t*)0x20000040 = 0);
    NONFAILING(*(uint16_t*)0x20000044 = 0xc);
    NONFAILING(*(uint16_t*)0x20000046 = 0x12);
    NONFAILING(*(uint64_t*)0x20000048 = 0x200025c0);
    NONFAILING(*(uint32_t*)0x20000050 = 4);
    NONFAILING(*(uint32_t*)0x20000054 = 9);
    NONFAILING(*(uint32_t*)0x20000058 = 0x401);
    NONFAILING(*(uint32_t*)0x2000005c = 1);
    NONFAILING(*(uint16_t*)0x20000060 = 2);
    NONFAILING(*(uint16_t*)0x20000062 = 0);
    NONFAILING(*(uint32_t*)0x20000064 = 0);
    NONFAILING(*(uint64_t*)0x20000068 = 0x3ff);
    syscall(__NR_write, r[0], 0x20000040, 0x30);
    break;
  case 10:
    NONFAILING(*(uint32_t*)0x200000c0 = 0x14);
    NONFAILING(*(uint16_t*)0x200000c4 = 6);
    NONFAILING(*(uint16_t*)0x200000c6 = 2);
    NONFAILING(*(uint64_t*)0x200000c8 = 0x20000080);
    NONFAILING(*(uint32_t*)0x200000d0 = r[2]);
    NONFAILING(*(uint32_t*)0x200000d4 = 0);
    syscall(__NR_write, r[0], 0x200000c0, 0x18);
    break;
  }
}

void execute_one()
{
  execute(11);
}

int main()
{
  syscall(__NR_mmap, 0x20000000, 0x1000000, 3, 0x32, -1, 0);
  char* cwd = get_current_dir_name();
  for (procid = 0; procid < 8; procid++) {
    if (fork() == 0) {
      install_segv_handler();
      for (;;) {
        if (chdir(cwd))
          fail("failed to chdir");
        use_temporary_dir();
        loop();
      }
    }
  }
  sleep(1000000);
  return 0;
}

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux