// https://syzkaller.appspot.com/bug?id=5689aff48689f3ca418d44391fe4a4390a1ac21a // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { int state; } event_t; static void event_init(event_t* ev) { ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { if (ev->state) exit(1); __atomic_store_n(&ev->state, 1, __ATOMIC_RELEASE); syscall(SYS_futex, &ev->state, FUTEX_WAKE | FUTEX_PRIVATE_FLAG, 1000000); } static void event_wait(event_t* ev) { while (!__atomic_load_n(&ev->state, __ATOMIC_ACQUIRE)) syscall(SYS_futex, &ev->state, FUTEX_WAIT | FUTEX_PRIVATE_FLAG, 0, 0); } static int event_isset(event_t* ev) { return __atomic_load_n(&ev->state, __ATOMIC_ACQUIRE); } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; for (;;) { uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; syscall(SYS_futex, &ev->state, FUTEX_WAIT | FUTEX_PRIVATE_FLAG, 0, &ts); if (__atomic_load_n(&ev->state, __ATOMIC_ACQUIRE)) return 1; now = current_time_ms(); if (now - start > timeout) return 0; } } static bool write_file(const char* file, const char* what, ...) { char buf[1024]; va_list args; va_start(args, what); vsnprintf(buf, sizeof(buf), what, args); va_end(args); buf[sizeof(buf) - 1] = 0; int len = strlen(buf); int fd = open(file, O_WRONLY | O_CLOEXEC); if (fd == -1) return false; if (write(fd, buf, len) != len) { int err = errno; close(fd); errno = err; return false; } close(fd); return true; } static void kill_and_wait(int pid, int* status) { kill(-pid, SIGKILL); kill(pid, SIGKILL); for (int i = 0; i < 100; i++) { if (waitpid(-1, status, WNOHANG | __WALL) == pid) return; usleep(1000); } DIR* dir = opendir("/sys/fs/fuse/connections"); if (dir) { for (;;) { struct dirent* ent = readdir(dir); if (!ent) break; if (strcmp(ent->d_name, ".") == 0 || strcmp(ent->d_name, "..") == 0) continue; char abort[300]; snprintf(abort, sizeof(abort), "/sys/fs/fuse/connections/%s/abort", ent->d_name); int fd = open(abort, O_WRONLY); if (fd == -1) { continue; } if (write(fd, abort, 1) < 0) { } close(fd); } closedir(dir); } else { } while (waitpid(-1, status, __WALL) != pid) { } } static void setup_test() { prctl(PR_SET_PDEATHSIG, SIGKILL, 0, 0, 0); setpgrp(); write_file("/proc/self/oom_score_adj", "1000"); } #define FUSE_MIN_READ_BUFFER 8192 enum fuse_opcode { FUSE_LOOKUP = 1, FUSE_FORGET = 2, FUSE_GETATTR = 3, FUSE_SETATTR = 4, FUSE_READLINK = 5, FUSE_SYMLINK = 6, FUSE_MKNOD = 8, FUSE_MKDIR = 9, FUSE_UNLINK = 10, FUSE_RMDIR = 11, FUSE_RENAME = 12, FUSE_LINK = 13, FUSE_OPEN = 14, FUSE_READ = 15, FUSE_WRITE = 16, FUSE_STATFS = 17, FUSE_RELEASE = 18, FUSE_FSYNC = 20, FUSE_SETXATTR = 21, FUSE_GETXATTR = 22, FUSE_LISTXATTR = 23, FUSE_REMOVEXATTR = 24, FUSE_FLUSH = 25, FUSE_INIT = 26, FUSE_OPENDIR = 27, FUSE_READDIR = 28, FUSE_RELEASEDIR = 29, FUSE_FSYNCDIR = 30, FUSE_GETLK = 31, FUSE_SETLK = 32, FUSE_SETLKW = 33, FUSE_ACCESS = 34, FUSE_CREATE = 35, FUSE_INTERRUPT = 36, FUSE_BMAP = 37, FUSE_DESTROY = 38, FUSE_IOCTL = 39, FUSE_POLL = 40, FUSE_NOTIFY_REPLY = 41, FUSE_BATCH_FORGET = 42, FUSE_FALLOCATE = 43, FUSE_READDIRPLUS = 44, FUSE_RENAME2 = 45, FUSE_LSEEK = 46, FUSE_COPY_FILE_RANGE = 47, FUSE_SETUPMAPPING = 48, FUSE_REMOVEMAPPING = 49, CUSE_INIT = 4096, CUSE_INIT_BSWAP_RESERVED = 1048576, FUSE_INIT_BSWAP_RESERVED = 436207616, }; struct fuse_in_header { uint32_t len; uint32_t opcode; uint64_t unique; uint64_t nodeid; uint32_t uid; uint32_t gid; uint32_t pid; uint32_t padding; }; struct fuse_out_header { uint32_t len; uint32_t error; uint64_t unique; }; struct syz_fuse_req_out { struct fuse_out_header* init; struct fuse_out_header* lseek; struct fuse_out_header* bmap; struct fuse_out_header* poll; struct fuse_out_header* getxattr; struct fuse_out_header* lk; struct fuse_out_header* statfs; struct fuse_out_header* write; struct fuse_out_header* read; struct fuse_out_header* open; struct fuse_out_header* attr; struct fuse_out_header* entry; struct fuse_out_header* dirent; struct fuse_out_header* direntplus; struct fuse_out_header* create_open; struct fuse_out_header* ioctl; }; static int fuse_send_response(int fd, const struct fuse_in_header* in_hdr, struct fuse_out_header* out_hdr) { if (!out_hdr) { return -1; } out_hdr->unique = in_hdr->unique; if (write(fd, out_hdr, out_hdr->len) == -1) { return -1; } return 0; } static volatile long syz_fuse_handle_req(volatile long a0, volatile long a1, volatile long a2, volatile long a3) { struct syz_fuse_req_out* req_out = (struct syz_fuse_req_out*)a3; struct fuse_out_header* out_hdr = NULL; char* buf = (char*)a1; int buf_len = (int)a2; int fd = (int)a0; if (!req_out) { return -1; } if (buf_len < FUSE_MIN_READ_BUFFER) { return -1; } int ret = read(fd, buf, buf_len); if (ret == -1) { return -1; } if ((size_t)ret < sizeof(struct fuse_in_header)) { return -1; } const struct fuse_in_header* in_hdr = (const struct fuse_in_header*)buf; if (in_hdr->len > (uint32_t)ret) { return -1; } switch (in_hdr->opcode) { case FUSE_GETATTR: case FUSE_SETATTR: out_hdr = req_out->attr; break; case FUSE_LOOKUP: case FUSE_SYMLINK: case FUSE_LINK: case FUSE_MKNOD: case FUSE_MKDIR: out_hdr = req_out->entry; break; case FUSE_OPEN: case FUSE_OPENDIR: out_hdr = req_out->open; break; case FUSE_STATFS: out_hdr = req_out->statfs; break; case FUSE_RMDIR: case FUSE_RENAME: case FUSE_RENAME2: case FUSE_FALLOCATE: case FUSE_SETXATTR: case FUSE_REMOVEXATTR: case FUSE_FSYNCDIR: case FUSE_FSYNC: case FUSE_SETLKW: case FUSE_SETLK: case FUSE_ACCESS: case FUSE_FLUSH: case FUSE_RELEASE: case FUSE_RELEASEDIR: case FUSE_UNLINK: case FUSE_DESTROY: out_hdr = req_out->init; if (!out_hdr) { return -1; } out_hdr->len = sizeof(struct fuse_out_header); break; case FUSE_READ: out_hdr = req_out->read; break; case FUSE_READDIR: out_hdr = req_out->dirent; break; case FUSE_READDIRPLUS: out_hdr = req_out->direntplus; break; case FUSE_INIT: out_hdr = req_out->init; break; case FUSE_LSEEK: out_hdr = req_out->lseek; break; case FUSE_GETLK: out_hdr = req_out->lk; break; case FUSE_BMAP: out_hdr = req_out->bmap; break; case FUSE_POLL: out_hdr = req_out->poll; break; case FUSE_GETXATTR: case FUSE_LISTXATTR: out_hdr = req_out->getxattr; break; case FUSE_WRITE: case FUSE_COPY_FILE_RANGE: out_hdr = req_out->write; break; case FUSE_FORGET: case FUSE_BATCH_FORGET: return 0; case FUSE_CREATE: out_hdr = req_out->create_open; break; case FUSE_IOCTL: out_hdr = req_out->ioctl; break; default: return -1; } return fuse_send_response(fd, in_hdr, out_hdr); } struct thread_t { int created, call; event_t ready, done; }; 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 (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { int i, call, thread; for (call = 0; call < 8; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 50); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS __WALL static void loop(void) { int iter = 0; for (;; iter++) { int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { setup_test(); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5000) { continue; } kill_and_wait(pid, &status); break; } } } uint64_t r[3] = {0xffffffffffffffff, 0x0, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: memcpy((void*)0x20000400, "./file0\000", 8); syscall(__NR_mkdir, 0x20000400ul, 0ul); break; case 1: memcpy((void*)0x20002080, "/dev/fuse\000", 10); res = syscall(__NR_openat, 0xffffffffffffff9cul, 0x20002080ul, 0x42ul, 0ul); if (res != -1) r[0] = res; break; case 2: memcpy((void*)0x200042c0, "./file0\000", 8); memcpy((void*)0x20002100, "fuse\000", 5); memcpy((void*)0x20002140, "fd", 2); *(uint8_t*)0x20002142 = 0x3d; sprintf((char*)0x20002143, "0x%016llx", (long long)r[0]); *(uint8_t*)0x20002155 = 0x2c; memcpy((void*)0x20002156, "rootmode", 8); *(uint8_t*)0x2000215e = 0x3d; sprintf((char*)0x2000215f, "%023llo", (long long)0x4000); *(uint8_t*)0x20002176 = 0x2c; memcpy((void*)0x20002177, "user_id", 7); *(uint8_t*)0x2000217e = 0x3d; sprintf((char*)0x2000217f, "%020llu", (long long)0); *(uint8_t*)0x20002193 = 0x2c; memcpy((void*)0x20002194, "group_id", 8); *(uint8_t*)0x2000219c = 0x3d; sprintf((char*)0x2000219d, "%020llu", (long long)0); *(uint8_t*)0x200021b1 = 0x2c; *(uint8_t*)0x200021b2 = 0; syscall(__NR_mount, 0ul, 0x200042c0ul, 0x20002100ul, 0ul, 0x20002140ul); break; case 3: res = syscall(__NR_read, r[0], 0x20008680ul, 0x2020ul); if (res != -1) r[1] = *(uint64_t*)0x20008688; break; case 4: memcpy( (void*)0x20004300, "\x43\x46\x35\x9b\xb4\x7d\x85\xa6\x0c\xd6\xa1\x48\x51\x1d\x5f\xd5\xaf" "\x39\x8f\xdb\xda\x90\xdf\x1e\x38\x04\x42\xaf\xda\x91\x0f\xac\x11\x0b" "\x5a\xfb\x38\xaf\xae\xf6\x51\xb5\xc2\x47\x94\xa2\xab\xce\x5e\xee\x9b" "\x34\x3d\x9c\xcf\x17\xd7\x94\x4c\xd1\x8e\xa7\xb7\x58\x00\xcd\xf0\x4f" "\x1d\x02\x3b\x85\x76\x0a\x9a\xa5\xff\x12\x06\xe7\xe9\xc4\xa8\x42\xa7" "\x54\x52\x40\x06\xc3\x81\xf2\x82\xa6\x11\x59\xc2\xe6\x07\x45\xd1\x57" "\x3d\x98\xe4\x15\xa4\x60\xeb\xf4\xc2\xa7\xc0\xac\x3c\x93\x4a\x61\xba" "\x45\x89\x94\x69\x9b\x00\xb8\x48\xf7\xaf\xf4\x93\x37\x2b\xff\x49\xac" "\xc3\xba\xe4\x20\xbf\xb7\x56\x55\x17\xb4\xf9\x85\x13\xd9\xc4\x00\x56" "\xee\xfe\xb8\x2e\xdd\x48\x1b\xa4\x26\x92\x9a\x3e\xca\x16\xae\xf8\x0d" "\x7c\xf1\x81\x38\x95\x9f\x51\x26\xa6\x68\x0e\x9b\xae\x08\xf9\x53\xe6" "\x31\x7a\x8d\xcd\x2d\x27\xd0\xcf\x67\xbd\x61\xd8\xc2\x2d\x1e\x43\xf1" "\x0d\x4d\xd8\xde\xa3\x7d\x47\x29\x86\xf5\xb5\xee\xd4\xe3\x65\x60\xcf" "\x99\xec\xa9\xb0\xf5\x78\x90\x5a\xf3\x88\x5b\x5a\x48\xef\x90\xff\xb7" "\xa7\x04\xcb\x3a\x87\x0f\x88\xb6\x87\x61\xe5\x63\x09\x4a\xa7\xc7\x2d" "\x46\x26\x6d\x0b\x7a\x2b\x6e\xa7\xdb\x44\x10\x92\xcc\xc4\xfb\xfa\xab" "\x1d\x6a\xc5\x52\xe1\xd9\xf1\x5c\x3e\x72\xcd\x42\xad\xe5\x66\xa1\xbb" "\x29\x82\xd9\x74\x70\xf3\xd7\x92\x0b\xf2\x33\x25\x3a\x7f\x7a\x4d\x46" "\x31\x93\xd3\xbc\x85\xc2\x30\xa9\xaf\xa7\x8c\xb8\x50\x6f\x07\xf1\x2e" "\x55\x29\x7c\x9e\x34\x46\x7e\x49\x12\xce\xfe\xfb\x24\x56\x81\xa4\xed" "\x9f\x4d\x08\x35\xc0\x27\x29\x22\x4a\x83\xbb\xbd\x15\x8b\x1d\x5d\xb2" "\xe5\x68\x3f\xab\xbd\x4e\x39\xa2\x5b\x92\xa6\xba\x6e\x3c\xc0\xe3\x2d" "\xb3\x2d\xc8\x47\x64\xb0\x28\xa1\x7a\xd4\x0a\xc3\x38\x29\x85\x40\x71" "\x23\x80\x79\xa3\x18\xa7\x04\xcb\x01\x32\x85\x85\xe4\x90\x13\x2d\xb4" "\x42\x29\x04\x7e\x11\xc7\x7c\x18\x9f\x80\x56\x5f\x5c\xa5\x4f\xeb\xc3" "\x94\xdb\x2b\x1b\xa0\x48\xb9\xb5\x93\xcd\xd5\x5f\xaa\x44\x7e\xa1\xa5" "\x44\x0d\xf9\x24\x5c\x17\xd0\x54\xf5\x5f\xe3\x28\x4f\xb4\x36\xe5\x78" "\x9e\x66\x88\x39\x6c\xd8\x5d\xdc\x86\xf2\xaf\x6c\x34\x37\xa8\xbf\x73" "\x3f\x67\x41\xed\x45\xf2\x06\x78\x35\xd5\x51\x3e\xcd\xd1\x4c\xb3\x1e" "\x77\xd0\x62\xe3\x95\xb2\x2b\xce\x54\xf1\xb4\xa8\x21\xcd\x63\x39\xff" "\xf4\x93\xac\x87\xdf\x38\xdb\x37\xc7\x30\x28\x17\x24\xea\x96\x31\x35" "\x52\xc8\x58\x03\x5a\xb6\x9b\xa4\x43\x98\xf5\x31\x99\xed\x97\x7a\x81" "\x1a\x6a\x2a\x8f\xfa\x2d\x1d\x5b\x6c\x37\xb5\x98\xbb\x47\xd0\xfb\x06" "\xd9\xa9\x6b\x61\x21\x83\x5f\xf0\x7a\x06\x25\x48\x35\xa0\xae\xa6\x26" "\xe5\xfd\x6a\xe1\x1c\x55\xd6\xe6\x98\x55\x0b\x02\xd2\x81\x65\xb7\x97" "\x83\xb1\x59\x81\x98\xb0\xe2\xf2\xbb\xdc\x86\x99\x3f\x6b\x8b\x1c\x58" "\x6b\x25\xf4\x14\x0b\x61\x6f\x7a\x3f\xaa\x58\x6b\xf7\xa5\x66\xf7\xed" "\x91\x03\xa1\x44\xee\x6d\x29\xcb\xb2\x08\xa4\xb2\x14\x69\x75\x6f\x92" "\x24\x04\xe2\x8a\x8f\xf8\x52\xd3\x70\xd8\xc2\xa5\xf8\x75\xc5\x54\x57" "\x48\xb7\xcc\x4a\x31\xc0\x5e\x5c\xcb\xce\x23\xd4\xa3\xe7\xcb\x99\xa4" "\xbf\xdd\xcf\x04\x90\x17\xaf\x66\xdd\x47\xc2\xfe\xb4\xaf\xe6\x55\xaf" "\x44\x87\x5e\xd1\x2c\xfa\x0b\xa0\xbd\xd9\x9f\x2c\x9d\x43\x29\x93\x45" "\x05\x2f\x02\xbb\xcc\x1d\xc4\x0d\xe7\x40\xc0\x9d\x6d\xd9\x49\x9f\x80" "\x78\x56\xae\x80\xe8\x61\x6b\x95\x08\x86\x3c\x5b\x30\xee\x1b\xc8\x7f" "\x2b\x96\xbc\x59\xa2\x3e\x78\x19\x52\xfa\xd6\xa8\x2d\xcb\x8a\x7b\x91" "\x66\x92\x74\x88\x75\x30\xf0\xf5\xe4\x03\xea\xc1\x24\x12\x4e\x9b\xce" "\x9f\x46\xb9\x53\xf0\xed\xd3\x89\x40\xc0\x84\x0f\x49\x9f\x77\x63\x5e" "\x5c\x23\x98\xc0\xc1\xbc\x8f\x5e\xd2\x61\xdc\xe7\x3f\xe7\xc5\x75\x1e" "\xff\x61\x93\xb1\x85\xaf\x1b\xf1\x3e\xd2\x98\x84\x32\xa8\xf1\x81\xf0" "\x7f\x69\x04\x5e\xea\x7d\xdd\xa7\xdf\x0a\x05\xdd\xef\x39\x6c\xe8\x2e" "\x35\x6e\xb3\xf2\x43\x02\xb9\xdf\x31\x40\x1c\x38\x48\xf9\xef\x70\x32" "\xc3\xf2\x59\x35\xc5\xa8\x42\xae\xb6\xb6\xd7\x31\xb6\xaa\x30\xde\xfd" "\x32\x5c\x82\x32\x86\xd9\xa4\x1d\x5f\xa5\x4b\x13\x94\x79\x7e\xda\x68" "\xe0\x68\x96\xac\x36\x22\x93\x64\x4a\x2d\x55\xea\xe3\xa7\x3d\x32\xf5" "\x55\x55\xad\x91\x32\x1b\xb1\xa3\x43\x77\xca\xf0\xfa\x22\xf2\x63\x89" "\x9e\xc7\x01\xdf\x19\x2f\xbc\x83\xb3\x4c\x72\x11\x74\xf1\xef\x00\x59" "\xcb\xe9\xff\x1a\x87\x4c\xd4\xc5\xf1\xfa\xa5\x75\xe3\x1d\xef\x92\x13" "\xfe\x7e\x29\xb9\x64\xd3\xb4\x79\xdd\x7e\xbc\xcd\xdf\xca\x0c\x70\xf8" "\xf5\x2d\xd0\x7c\x8f\xd6\xe1\xfc\x36\x6c\x81\x31\xc0\xee\x52\xec\xb7" "\x27\x7c\x22\xb0\xb3\x6e\xe6\x50\x25\x1b\xb3\xf1\x9e\x5a\xf3\x9a\xda" "\x47\xa7\xae\x5c\xd9\xf8\x9e\xd5\xbe\xa1\xe6\x99\x3d\x09\xf6\xa5\x1b" "\xd9\x20\x48\x08\x56\x4b\x8f\x9b\x3a\x62\xa5\x8f\x06\x32\x0b\x73\xf8" "\xe6\x70\x9b\xaf\xb2\xd4\x16\x23\x3d\x76\xa6\xfc\xad\xaf\x28\xb1\xd0" "\x36\xba\x00\x1f\xb2\x70\x28\xc3\x95\x7a\x21\x4f\x26\xa6\x28\xb2\xba" "\x11\x05\xda\xc8\x86\xd6\xee\xe8\xc3\x8b\x86\xb7\xfc\x02\x0a\xd4\x17" "\xa3\xaa\x37\x58\x4f\x9e\x25\xfe\x75\x42\x44\x05\xd2\x82\xe6\xf3\xc7" "\x66\x10\xa5\x7b\x23\x6c\x1a\xdd\xc9\xc7\x72\x52\x8b\x11\x52\xf2\xcb" "\xe8\x5e\x96\x9c\xcd\xba\xd9\xdc\x9c\x4d\x31\x59\x4c\x21\xd5\xc0\xd8" "\x2b\x4f\xb8\xef\x6a\x3c\x71\x60\x64\x30\xa0\x52\xed\x3e\xe4\xdf\xfc" "\xeb\x40\x59\x10\xb2\x5c\x6a\xc8\x05\xf8\xd3\x7b\xd0\xe1\x12\x1e\x4f" "\x4a\x2b\x3c\x46\xe6\x3e\x1e\x84\x25\xa8\x2e\x62\x74\xac\x7b\x73\xfc" "\x39\x81\xb9\xbc\xbc\x9f\xc8\xfb\xee\x3f\x69\xcb\x7d\x9a\xe5\x04\x0b" "\xbb\x3a\x64\x3e\xc4\xdf\xb7\xcb\x6a\x57\xf1\x93\x06\xe7\xbe\x33\x80" "\x80\x28\x49\xdc\xc2\x08\x85\xc9\xe3\x53\xed\x4f\xf2\xe4\xac\x97\xff" "\xf1\x48\x00\x40\x55\x52\x7c\xd9\x72\xfc\xc1\xd8\x79\x78\xbb\x9c\x1d" "\x78\x85\xd9\xed\x7e\xd7\x43\x8a\x37\xf0\xb4\x57\xb0\x7c\x2a\xf8\x2b" "\xf1\xf6\x0e\x8b\xa4\x9c\xf6\x52\x85\xa5\xf6\x96\xdd\xc4\x67\xc8\xd2" "\x16\xe5\xc1\x06\xe1\xf5\x77\x2c\xdf\x63\xf6\xea\x94\x35\x35\xc7\x40" "\x15\xaa\x7d\x83\xef\x73\x71\x84\xfc\x86\x16\x26\x74\x04\x5e\xa8\x99" "\x31\xa2\x4f\x08\xa5\xee\xcb\x59\xb2\xb0\x43\xa0\x7b\xbc\x63\x81\x55" "\xf9\x89\x1e\x2c\xc3\x5c\x7f\x1b\xb4\x4d\x06\x18\x1e\x8f\x77\x93\x4a" "\x47\x93\xa0\x1c\x5b\x39\x60\x4a\x11\xc3\xde\x13\xa4\x18\x3c\x3a\xe4" "\xb5\x3a\x99\xe5\x3b\xa7\x7b\x64\x7d\x41\x2b\xd0\xaf\xae\xa9\x12\xb3" "\x87\x78\xbc\x69\xfe\xa9\xa2\x18\xc3\x61\xc3\x50\x58\xae\xb4\x86\x45" "\x88\x46\x40\xf6\xc1\x03\xc1\xa4\x08\x55\xb1\x91\xd1\x57\x42\x42\xca" "\x79\xc8\xe7\x38\x1b\xb8\x3a\x59\x02\x71\xe1\x01\xb1\x3e\x95\x04\x62" "\x51\x03\x0b\x6d\x86\x03\x76\x66\x7d\x14\x19\x60\x25\x66\x06\xb0\x38" "\xa5\x7c\x30\x6f\x73\x93\xd1\x7f\xa5\x1f\x1d\x67\xfd\xda\x1d\x18\x8b" "\xe5\x5f\x58\xc4\xe4\x0f\xf3\x4c\x45\xe9\x32\x59\x73\x6f\x7d\x6b\x6a" "\xa2\x13\x8c\x94\x09\x17\xf3\x68\x71\x20\x85\xe2\xa4\x47\x92\x3d\xca" "\x1b\xa2\xeb\x44\xb8\x20\x42\x77\xfb\x64\x60\x4b\x77\x40\x79\x9a\xb5" "\x4d\x34\x09\x8d\x3a\xf1\xe8\xb8\x7b\x27\xf1\x0e\x22\x9a\x7b\x44\x80" "\x77\xc6\xbb\xff\x85\x49\x11\xda\x6f\x74\x37\x0a\x94\x5b\xee\x20\x2c" "\xa5\xcb\x5e\x9e\x84\x9e\xc3\x57\xf6\xeb\xd4\xef\xe0\xc2\x06\xb2\x57" "\x17\xf6\xa7\xb3\xf0\x70\xa4\x32\x72\x4e\x73\xce\x4e\xf1\x26\x0f\x5c" "\x07\x17\xf2\x75\x23\x58\xdf\x69\xb3\xa6\x4b\x1d\xe8\x22\x6b\xbf\x5b" "\x4e\x97\x5f\xdd\xce\xaa\xf5\xbc\x24\xaa\xf3\x22\xf2\x3e\xd7\x7f\xea" "\x95\xd7\x2e\xda\x7f\x00\xc9\x66\x7d\x1d\x37\xd6\xf9\x14\xb3\xec\xed" "\xb8\xcb\x5d\xd7\x5c\xe2\xa3\x29\x14\xa5\xf2\xfb\x07\x69\xaf\xc8\xc5" "\x23\xb0\x3b\x51\xe4\x1f\xf9\xc8\xbf\xec\x14\x7d\x61\x5e\x89\x7c\x0c" "\x1c\x76\x2f\x03\x82\x48\xba\xbd\xa7\x12\x29\xc9\x34\x7c\x8f\x9a\x92" "\x69\x9f\xc7\x5c\x7b\x5f\xbe\x0c\xdc\xe8\x65\xa8\x67\xc1\xe4\x10\x28" "\xce\x6b\xe1\xd4\x35\xf8\x55\x02\x77\xcf\x06\xe4\x49\x84\xfd\xa3\x7d" "\xf3\x7f\x58\xcc\xbd\xa5\xec\x1d\xa0\x7a\xdf\xf6\x92\x4c\x92\x0c\x83" "\xc7\x57\xbf\xbd\xf4\x84\x61\xe0\x8a\x2a\xc9\x2f\x44\xb4\xc8\x8d\x1e" "\xc7\x0d\xdc\x92\x8c\xdc\x93\xc3\x4a\x83\x3f\xd4\x2d\xd0\x84\xd8\x24" "\x08\x39\x26\x11\xec\xe6\x82\xb6\x23\x76\xd7\x5c\x85\xf8\xfa\x35\x56" "\x55\x16\x2f\xf7\xcc\xa4\xbd\x66\x52\x61\x2b\xfc\xc9\x5d\xfe\xba\x08" "\x60\x2f\x92\x26\x57\x76\xdc\x18\xc1\x2e\xa8\xb8\x8a\xbc\xa5\xca\xe2" "\x35\x2a\x95\x41\xf1\x71\xed\xb5\x3b\xa3\x83\xd4\xe0\x29\xc3\x47\x07" "\xa9\x93\xd0\x19\xaf\xb1\x49\x1e\xab\x2e\xeb\x91\x46\xd4\xcb\x14\x8d" "\x33\x4a\xa1\x2a\x66\xd8\xb0\x90\xe6\xde\x9e\x76\x0f\xdf\x31\xf6\x63" "\xf7\x44\xea\xe4\x82\xc5\x40\xd3\x81\x8b\x73\xc6\x39\xd7\xff\xdd\x60" "\xe0\x0c\x03\x0d\x3e\x76\xeb\x5d\x9c\xb3\xe5\x77\xec\xa4\x92\x36\xdb" "\x60\x2a\x50\x5a\x5e\x72\x08\x18\x2d\x72\x4e\x8c\x2c\xa9\xb9\xb7\x6e" "\xb4\xef\x09\xee\x02\x27\xc0\x74\x85\x22\x6d\x69\x77\xeb\x7c\xb6\x40" "\x69\x9b\x92\xe3\x51\x88\x60\xd8\x4c\x1e\xa6\x73\x10\xc7\x1d\xab\xf6" "\xcc\xc9\xe9\xd9\x20\x59\x72\x63\x25\x19\x23\x49\x5e\xa1\x5b\xca\x4c" "\xcf\x4a\xcf\x5e\x16\x61\xc9\x05\xb1\x21\xe2\xba\x6b\xc1\x41\x66\xa1" "\x27\x95\x98\x1c\x2e\x80\xf5\x44\xcb\x54\x01\x25\x7e\xd8\x8d\x89\xce" "\x86\x88\xfb\xc8\x12\xa6\x16\x33\x38\xcc\x6c\x93\xa8\x0d\x9b\x01\xa9" "\xd6\x01\x67\xde\x03\x6e\xdd\x44\x02\xdf\x88\xa1\x25\x30\xdb\xf2\x5f" "\x27\x7e\xa0\xa3\x25\x06\x46\xa8\x1d\x2a\x27\x10\x01\x01\x28\x69\xa9" "\xea\x26\x95\xd5\x16\xea\x0b\xba\x40\x6f\x79\xb6\xe2\x28\xb6\xc2\x9f" "\x18\x53\x7b\xd7\x0f\x89\xd0\x50\x88\x3f\x99\x13\x5b\x9e\x49\x39\xd3" "\xfa\x29\x93\x06\x62\x77\x54\x92\xfc\xcd\xe1\x4d\xef\x82\x15\x07\xff" "\x28\xec\x0a\xcc\x7e\x10\xfd\xc0\x5f\x24\xc9\xa1\xde\x7a\xdd\x58\x4f" "\x7f\x1c\x03\x1d\x52\x57\xe6\xd3\x2b\x62\x22\x1e\xee\xd5\x9a\x30\x7c" "\xad\x08\x1f\x5a\x59\xba\xcf\xd4\x2f\x6f\xac\xa0\x6b\x04\x36\x9e\x62" "\xfe\xa3\x63\xfa\xf9\x12\x65\xcc\x20\xa2\x65\x3d\x8e\xe3\x4c\x45\x26" "\x4c\x04\x5d\xc3\xa8\xd2\x40\x57\x0a\x54\x81\xaa\x94\x44\x9c\x2f\xda" "\xc7\x93\x59\xbd\x94\x4e\x44\xa8\x97\xf0\xe2\xc8\xb7\x0f\x4a\x5a\x84" "\xea\x5f\x58\xb6\x8e\x45\xaa\x52\x16\x23\x9d\x90\x08\xe7\xf6\xf8\x2a" "\xf7\x95\x30\x67\xf7\x57\x30\x6c\x77\xd8\x05\x10\x01\x2a\xff\x33\x26" "\x2e\x73\x73\xe3\x04\x09\x5c\xd0\x6f\x60\xea\xa7\xde\x1c\xfc\x93\x4a" "\xc0\x21\x5e\x57\x08\x43\xfe\x57\xa3\x55\xd1\x0e\x42\xf5\x08\x91\x0b" "\x16\x40\x45\xa2\xda\x3c\x6f\x4b\xb0\xc7\x67\xff\xfc\x48\xd5\xf8\x7c" "\x08\x94\x0e\x43\xc7\x69\x17\x45\x06\xe6\xef\xb0\x70\x91\x11\xb0\x27" "\x58\x7d\x81\x18\x73\x2c\xea\x8f\x2d\x1a\xcd\xa5\x03\x80\x5a\xf5\x27" "\x4e\xd6\x44\x36\x50\xf6\xe1\x9d\x07\xd3\x7c\xfc\x7e\x39\xe8\x73\xb7" "\x24\x79\x34\x06\x01\xd8\xb8\x15\x04\x50\xcd\xb7\xda\x68\x7a\xdb\xc6" "\xaf\x8e\xed\xdd\x89\xa1\x4b\x81\x62\x81\xa6\x05\x55\x29\xa8\x26\xf4" "\xe5\xab\xa3\x2e\x43\x56\x6c\x82\xb9\x59\x5a\x1f\xf6\xf4\xa9\xd5\x25" "\xf3\x3c\x82\x55\x7e\x7d\x54\xaf\x31\x29\x1d\x2a\x7e\x1e\x68\xc0\x87" "\xf3\x8a\x20\xe1\x88\x02\x72\x59\x91\xd4\x39\x8f\xd6\x96\x99\x78\x90" "\xd4\xec\x58\x9f\x9e\x7c\xe6\x45\xf6\xe3\xe9\x6d\xe7\x21\xb3\x66\xf5" "\xd8\x96\x23\x08\xf1\x94\x63\x86\x2b\xd5\x69\x0f\xde\xdf\xe6\xc7\x95" "\xb2\x77\x24\x3f\x9b\x32\xc4\x54\x87\xc8\xe7\x46\xbf\xfc\xf9\x2f\xdd" "\x49\x2a\x33\xd9\x42\x02\x0b\xe4\x2a\x16\x01\xfe\x70\x15\xeb\x03\x36" "\xa1\xe3\xf3\xcd\x1a\xdc\xcf\x1c\x10\x0a\x0f\xe1\x70\x2b\x7a\x59\x92" "\x98\x37\x8c\xa1\x56\x52\x95\x89\x7a\x29\x17\x58\x5b\xcd\x25\xeb\x95" "\x71\x81\x95\xe4\x7a\x75\xad\x75\x42\x20\x0b\x11\x77\xde\x87\xec\xe2" "\x93\x77\x18\x91\xc1\x81\xb0\x80\x12\xcd\x72\x5d\xcb\xc6\x31\xaf\x18" "\xd6\x7a\xf7\x33\x5c\xea\xb2\x75\xe7\x62\xb0\x3b\x80\xbb\x61\x70\xc6" "\x88\x21\x82\x32\x39\x55\xe6\x56\x51\x6e\x80\x6f\xcc\x99\x19\x76\x23" "\xa7\x43\x1b\x10\x8b\x51\x1c\x60\x76\x94\x5c\x4a\x82\x06\x34\xb0\x85" "\x5d\x3a\xad\x6c\xd3\x6e\x6b\x61\x23\xa0\x52\x76\x8e\xdc\xcf\x58\xdf" "\x34\x8d\xd3\xef\xbd\x11\x42\x71\xb2\x3d\x73\x05\x2d\xd4\xca\x4c\x4b" "\xfa\x2c\x53\xc0\x58\x6a\x66\x6e\x83\xe2\xc3\x03\x0a\x1d\x8a\x7f\xec" "\x10\xff\xf7\xc2\xc5\xf7\x34\x36\xd8\xe7\xec\xbc\x42\xd2\x9a\x40\xd0" "\x11\xc3\xda\xa8\x20\x22\x15\xcd\xf8\xdb\x0e\x0c\x89\xff\x2a\x9f\xda" "\x07\x28\x7e\x55\x6d\x7f\xc9\xd6\xc7\x0b\xea\xe8\x95\xd3\x2c\x7f\xe4" "\x05\xd5\x57\x82\x2d\xba\x35\x42\x01\x09\x2d\xb9\x8f\xfb\xe2\x03\x19" "\xec\x99\x4b\x4f\xa1\xbd\x51\xb3\x29\x22\xf9\x64\xf3\xc8\x1c\x53\x89" "\x97\x18\xff\x62\x48\xef\xa2\x76\xe8\x60\xb5\x63\xfd\x13\x79\xe6\xfd" "\x49\x06\xaf\x13\x6f\x7f\x1a\x5d\x00\x5d\x4f\x36\x2e\x75\x88\x3d\x02" "\x64\xd9\x8e\x96\xf6\xd8\xfd\x29\xcd\x17\x58\xf2\x1f\xef\x27\xe3\x7f" "\xe3\xb6\x29\x2d\xd5\x5c\x3e\x64\x84\x8d\x7a\x8f\xfc\xd7\x36\x3e\x7b" "\x27\x3e\xca\x2f\xb5\x5f\x11\xb9\x67\x09\xc5\x9d\x55\x60\xf7\x99\xa6" "\x6f\x07\xe6\x6f\x0c\x62\xfa\xb3\xa0\xe6\x95\xd7\x69\xf4\x2e\x44\x74" "\xcf\xe5\xf2\xf2\x92\x24\xfd\xc4\x73\x4e\x01\xcb\x30\xee\xf8\x70\x7e" "\x66\xa5\x9a\xbe\x65\x5c\x5f\x5f\x55\x7e\x26\x67\x61\xc3\x4c\xd7\x8b" "\xc2\xcd\x85\x5d\x33\x3a\x6d\x68\xa9\xf9\x98\xcf\x7e\x23\xea\x13\x1f" "\x48\x4b\xd2\xd9\xd6\xad\xc2\xb3\x02\xc4\xed\x9a\x5e\xaa\x55\xe2\xc0" "\x77\xe5\xbc\x81\xda\x26\x0f\x6a\xef\xde\xd7\xea\x52\xe1\x61\xc1\xcf" "\xe3\xf1\x9c\xfe\x95\x41\xf4\xb2\x6f\xc0\x5a\xa3\xe0\xbc\x06\xa0\x42" "\xa8\xca\xd9\xdf\xf9\xee\xda\xef\x35\x73\xb6\xd4\xbc\x18\xec\x08\x29" "\x7b\x52\xaa\xe0\xd6\x13\x85\x1e\x00\x70\x32\xdf\xce\x40\x77\x5a\xc2" "\x3a\x72\x58\x10\xdc\x87\xda\x2c\x36\xab\xde\x53\xad\xcc\x7d\x37\x81" "\x97\x40\x48\x7c\x79\xbe\xe8\xd0\xd1\x92\xe3\x80\x57\x7d\xe9\xfd\xdc" "\x8b\x0a\x72\x90\x37\x82\x7e\x78\x0d\x82\xd8\x45\x38\xe9\x6b\x18\x84" "\x79\x30\x4b\xa6\xf6\x59\xed\x01\x7f\xb3\xc3\x45\x0f\xc4\x98\x90\x2f" "\x96\xc8\x60\xba\x6b\x60\xe8\xdc\x08\xb3\xde\xee\xa5\x97\x13\x66\x7e" "\xb2\xa8\x0a\xb1\xf6\xbc\xa2\xfe\x61\x7e\xbd\x58\xd9\x26\x0a\x10\x81" "\x7d\x32\x22\xf4\x46\xb7\x5e\x81\xce\x53\x0c\xfc\x3e\x38\x53\xc4\xb3" "\x83\x3f\x24\xf7\x79\x1c\x43\x6b\xdf\x1a\x3f\x28\x70\xa1\x80\xd0\x9b" "\xc7\x64\x6e\x6d\x1b\xaa\x7c\x58\x92\x98\x39\x97\x3d\xb1\x84\xdc\xea" "\xf4\x13\x1b\xdd\xde\x70\x6e\xd7\x3d\xdd\x6b\x08\xfb\xd8\xdb\xde\x98" "\x0c\x73\x4d\x98\x2a\xa6\x98\x39\x2e\xdb\xa8\xb0\xa6\xf9\x1b\x1e\x70" "\x0a\xfa\xc1\xb9\x3c\x87\xe8\x42\x6e\x63\x34\xb4\x23\x80\x2d\x88\x1c" "\x16\x5e\x3c\x0d\xef\x5b\x96\xdc\x04\x08\x54\xfb\x91\x96\xfc\x71\x4c" "\x21\xff\x51\x12\x93\xf2\x8c\x77\xb9\xa3\x71\xe0\x01\x1b\x69\x73\x73" "\xb0\x14\x2b\xfd\x7f\x4c\x64\x68\xcb\x05\xcb\x96\x08\x49\xeb\xdc\xc5" "\x3a\xbe\xc3\x5c\x1e\x49\x19\xb3\xf3\xca\xbd\x7d\xda\xfb\x94\x37\xb3" "\x2d\xa1\xe0\xdc\xf3\xa0\x8b\xe4\x49\xc1\x2a\xcb\x63\xac\xc3\x40\xfd" "\x79\xcb\x76\x20\x63\x65\x7b\x2b\xa2\x6b\xd2\xb3\x92\x1b\x58\x92\x1e" "\xfe\xa0\xd7\x6b\x6b\x45\x8f\x08\x78\x38\x22\xb3\x4c\x60\x68\xc0\x85" "\x04\x42\x06\x13\xb1\xe1\x42\x82\xd5\xac\x33\xa8\x4b\xe5\x1b\x1b\xbd" "\xe9\xcc\x0a\x61\xc4\x99\x19\x77\xd7\xea\xb6\xf7\xdb\x3e\xe2\x63\x08" "\x3c\x03\x5c\x34\xd3\xef\x20\x96\xc7\x7e\xd1\x46\xef\xf1\x25\x6c\x59" "\x70\x1f\xa9\x0b\x55\xfb\x1b\x5b\x94\x47\x3a\x0a\x45\x45\xe8\x67\x33" "\x33\x9d\x9d\x24\x54\xc9\x53\x71\xe0\x67\x58\x42\x8d\x49\x2f\x17\xc6" "\x73\xc5\x8e\x3b\x84\x73\x9c\x9c\x47\xb9\x7c\xb8\x7b\xf3\xdb\xb1\xb1" "\x47\x33\x78\x9f\x6b\x59\xff\x6a\xae\x74\x1c\xe6\x30\x3a\xa3\x0b\x94" "\xf8\x1d\x2c\xb5\xa1\xf0\x44\xed\x99\x25\x75\x4f\x20\xad\xe0\x8b\x2b" "\xd2\x04\xae\x61\x9f\xd1\x5e\x52\x37\x9d\xa8\xa9\x83\x08\x72\x1f\x1b" "\x41\x13\x23\xaf\x5b\xf1\x26\xc6\xca\xfc\x78\xd3\x62\x37\x31\xbb\xd6" "\xa9\x80\x5f\xa7\x91\xb9\x5a\xed\x3a\x05\x7b\xfc\xa3\xce\xa0\xc7\xa7" "\xae\x1e\x7c\xd5\xf6\x17\x1b\xe3\x8c\xb6\x18\xeb\xde\x54\x1b\xc5\xb2" "\x72\xfd\x71\xc6\x20\x0c\xe3\x77\x5e\x48\xad\x7d\xf5\xbf\xb8\x15\x12" "\xd9\x3d\x0c\xd0\xba\xcb\x8a\xde\xc5\xab\x82\xfa\xae\x55\x48\xc2\xd6" "\x3f\x6e\x7e\xe6\xe1\xbe\x08\x5b\xe7\xa9\x0c\x14\x5b\x5c\xf4\x37\x8c" "\x0c\xd9\x8f\x0d\xde\x22\x1a\x4b\x20\x64\x40\x4b\x2e\x9e\x0b\x49\x96" "\x98\x8a\x61\x07\x83\xe3\xc0\x11\xc3\x4c\x06\xf6\xe3\xbd\x3d\x2c\xf7" "\x45\xc3\xf8\x41\x0c\xa3\xed\xc7\x43\x54\x22\x38\x8e\x1b\x86\x5f\xdc" "\xc6\x25\xd3\x2e\xc6\xb6\x70\x78\x14\xb0\x7b\xae\xd1\xf9\x64\xb6\xa4" "\xdc\xee\x98\xb7\x8e\x2d\x40\x53\x45\x00\x60\xbf\x83\x75\x90\x8e\x5d" "\x8d\x20\x9e\x1d\xd8\x17\x0f\x62\x36\x79\xf8\x87\xd8\x55\xaa\xea\x83" "\x27\x5c\xa1\x96\xee\x62\x61\x41\x33\x5b\x20\xfa\x6b\x24\xfe\x8c\xa8" "\x6d\xea\x31\xda\x1e\x28\xb1\xd9\x91\xb8\x85\x9d\x63\x63\x5d\x97\x51" "\x4b\x56\x9f\xfb\x09\xae\xec\x83\x26\xed\xe9\x28\xd2\x5f\xd1\xd7\x05" "\x47\x16\x70\x8e\x7b\xdf\xfa\xce\xf3\xb8\x6e\x43\x70\xe8\x77\xe0\x3a" "\xc5\xbd\x6c\xb5\x48\x95\x89\x63\x78\x4e\xd8\x63\xc7\x75\x52\x0e\x9a" "\x46\x17\x57\x9c\x85\xfd\xc2\x55\xc6\x16\xe3\x14\x09\x16\x1b\x39\xf1" "\x4e\x46\x57\xaa\xb1\x9f\xc8\xc1\xdd\xa7\xd5\x88\xf5\xd9\x15\xd5\x01" "\x3a\x5b\x3f\xe0\x29\x55\xc0\x07\xf7\x8b\xd1\xca\x93\x54\xfc\xc5\x05" "\x6e\x70\x19\x10\xd8\x0e\xc6\x1c\x74\xc2\x1c\xce\x1b\xae\xa7\x5b\x56" "\xc8\xcb\xe5\x37\x8a\x52\x9e\x0a\x76\x51\x1d\x80\xc5\x70\x88\xf1\xb7" "\xd8\x71\x42\x5b\x12\xaa\xb8\x23\x95\x0b\x41\x06\x86\xed\x62\x68\x67" "\xe0\xb2\x3d\x54\xd1\x40\x61\x9a\x0c\x58\x84\xba\x24\x84\x9e\x19\x20" "\x98\xd1\xa8\x42\x03\x37\x6e\x50\x73\x07\x95\x1f\xb2\x5a\x92\xa7\xc3" "\x41\x41\x50\x76\x9a\x99\x6a\x02\x93\x6c\x42\x9a\xad\x72\xd1\xcf\x22" "\xe9\x6b\xf7\x10\xef\xb0\xe1\x8d\xb4\xae\xc1\xe5\xc3\xc6\x7c\xa3\x40" "\x3f\xcf\xa3\x74\xc9\x0b\xc0\x5a\x47\x52\x94\xb6\x70\xa5\x60\x0c\xae" "\x1c\x40\xd3\x78\x81\xa5\x5a\x3c\x7f\x16\xbe\x28\x37\x6e\x80\x33\x60" "\x97\x8e\x81\xf8\x58\xf0\x6e\xa1\xca\xb7\x25\xde\x0e\x83\x0d\x69\xed" "\x4d\x67\xb2\x34\x43\x43\xb8\x32\xc8\x0e\x54\x1d\x5c\x70\xfc\xf5\x2c" "\xce\x9a\x87\x50\xf5\xd3\x21\x87\x18\x23\xcf\x35\xb7\x35\x77\xb2\x64" "\xae\x61\x59\xb3\x6f\xc4\x4e\x05\x57\x53\x00\x89\xab\xfb\xee\xf2\x79" "\xf4\x46\x82\x06\x11\xa1\xe3\xf3\x90\x69\x21\x77\x0c\x27\x43\xd1\xdb" "\xe2\x92\x34\xf1\xcf\x26\xee\xe8\x6f\xbd\x32\x00\x5a\xfa\x88\x76\x74" "\xd3\x98\xae\x77\x7e\xd1\xfe\x44\x10\x6a\xab\xec\x0b\xa7\x77\xac\x21" "\xf7\x94\x36\xe4\x0c\x51\xe2\x28\x54\xa5\x7e\xf3\x78\x9c\x0d\x4f\xed" "\x10\x22\xb8\x1f\x3d\x05\x4f\x42\xd8\x17\x18\xc4\x2e\xe4\xec\x5d\xe8" "\xcf\xf3\x55\xce\x12\x2a\x95\x97\x77\xb1\xd1\xf4\x79\x83\x5f\x28\x89" "\x74\xc3\x29\x9b\x9d\x7e\xbe\x57\x5a\xc4\x6e\x97\x94\x61\x90\x6f\xd3" "\xeb\x23\xaf\x6d\xed\x85\x31\x1c\xa6\xbc\xca\x6c\x5e\x20\xd8\x79\x88" "\x81\x4a\x9d\x38\x20\xa6\xae\xc6\x5f\x88\xa4\xce\xa7\x86\x02\xde\xad" "\x45\x03\xb7\x17\x75\x30\xfb\x0f\x2c\xc0\xf7\x58\x7e\x4d\x27\x83\x27" "\x24\xff\xe0\x66\xc0\xd0\x02\xa3\x18\x84\x7e\x8c\xfc\x34\x9e\xa2\x19" "\x51\x0a\x07\x17\xcd\xa4\xde\xe8\x58\x06\x75\x9a\xef\x5c\x42\xae\xfa" "\x17\x08\x06\x95\xa9\xd4\x9e\x40\x9b\x2f\x6e\xc9\xba\xfd\x1c\xc5\xf7" "\x1a\x8e\xbb\xf7\x34\xa3\x02\x3c\xa8\x58\x9d\xb2\xaa\x7d\x0f\x19\xcd" "\x44\xdd\xfd\xbe\xc9\xee\x5b\xfa\xdd\xc3\x0d\x52\x5c\x13\xd7\x0d\xa1" "\xc7\x10\xa3\x8d\x0f\x8f\xbf\xb9\x29\x56\xe0\xa8\xf7\x96\x2c\xc9\x10" "\xa1\xa5\x1f\x13\xbf\x96\x3f\x47\x57\xee\x01\x73\xc3\x62\xc6\x3e\xda" "\x89\xcf\x16\x5a\xdf\xb9\x4f\xc1\x48\x40\x95\x37\x48\x70\x6a\x16\xf2" "\x54\xcd\x67\xa2\x2f\xec\x15\x6f\x2d\x87\x4a\xe6\xb1\xc8\x13\x2c\xf4" "\xb7\x80\xf8\xaf\x33\xe5\xb5\xa9\x9e\xa6\xb4\x19\x3a\x8f\xf4\xa9\xd4" "\xeb\xd3\x78\x7f\x36\x20\x19\x59\x58\xf4\x51\x0a\x12\x74\x3c\x97\x0f" "\x87\x97\xb5\x32\x76\xe7\xb2\x8b\x71\x8c\x86\xd2\x2e\xd5\xc3\x3f\x51" "\xde\x35\xcb\x21\x26\x6f\x49\x51\xab\x57\x8a\x73\x05\x04\x7a\xa1\x47" "\xe2\xb2\x3f\x23\x30\x0a\x54\x4d\xca\x4d\x18\x20\x34\x2a\x05\x10\x03" "\xdb\x20\x54\x14\x8a\x3d\x26\x74\x36\xe7\x7a\x5c\xa6\x18\xc8\x5d\xf0" "\x58\xfe\x26\x4d\x23\xb7\x37\x81\xfd\x8e\x28\x5f\x38\x30\x8b\x7c\x55" "\x67\x86\x9a\xed\xbe\x45\x8a\x26\x27\xb6\x9e\x9f\x24\xcd\xdd\xe0\xa5" "\x50\xbf\x5a\x7b\x1f\x63\xc3\x90\x42\xeb\xad\x39\xdc\x31\xad\xb9\x48" "\x94\x81\x0b\x9a\x02\xeb\x6e\x4b\xb3\x6c\xff\x90\xb3\x26\xf4\x2c\xb5" "\xa7\xfc\x1c\x70\xa5\xf5\x89\xc5\x02\x24\xfc\xde\xf1\x7a\x20\x83\xe3" "\xd9\x04\x38\x44\x10\x5e\xa5\xcc\x9f\x3d\xcf\xbc\x6f\x9d\xe7\x50\x8f" "\x47\x22\x4d\x23\xa3\xcd\xb8\xf6\x28\xaa\x8a\x41\x40\x86\x17\x25\x21" "\x00\x10\x47\xea\xca\xe4\x75\x4d\xca\x64\x57\xee\xc1\x2b\x14\xfa\x82" "\x1d\x42\x01\xde\x69\x33\xd6\xab\x31\x45\x36\xc1\x06\xe2\xf8\xbb\x0c" "\xc6\x75\x55\x80\xc5\xfe\x21\xcd\xa5\xa4\x3a\xaf\x94\x13\x22\xc6\x9b" "\xb9\x05\x85\x50\x02\x33\x6f\x61\xa5\x8d\x99\x2d\x0d\x80\x12\xfa\xbb" "\x75\xce\xc6\x09\xe9\x58\x98\x26\x80\x9b\xc6\x2c\xed\xa5\xa9\x2e\x67" "\x35\x75\x80\x24\xef\xa8\xe7\x0d\x86\xf9\x03\xfb\xa5\xc7\x83\x3a\xbd" "\x23\xdd\x79\xdb\x8c\xd2\x5b\x54\xf8\x22\x03\xac\x6b\x9a\x3a\x5f\xae" "\x99\xc4\xdb\x94\xc9\xae\xfd\xcc\xe9\xd8\x9c\x06\x30\x57\xe3\x25\x4d" "\x08\x2b\x62\x2d\x2c\xa3\x01\x55\x59\x23\x45\x62\x2b\x9a\x6d\x97\x6f" "\x1b\xed\x95\x9e\xfe\xf4\xab\xb0\x05\x5c\xb7\xb1\xd3\xfc\x5a\x26\x1a" "\xd4\x25\xdd\xf5\xb2\x2c\xdc\x1e\x88\xb8\x25\x71\x8a\x47\x7c\x4b\xce" "\x2a\x82\xdc\x00\x37\xe9\xcf\x22\xb0\x1b\x64\x36\xba\x27\xce\xe5\xd9" "\xef\x42\x47\x6a\x22\xa7\xba\x15\xd2\xb5\x4a\xad\xd6\xb7\xdd\x0b\xa2" "\xe5\xa3\x0b\x48\x30\x9d\x4d\x07\x13\x29\xa8\x23\x02\xf1\x5a\x87\x43" "\xb3\xdc\xa7\x50\xc9\x8e\xea\xa1\x00\x3d\xdf\xe8\x0d\x79\xa4\xff\x1d" "\x33\x25\x0a\xa6\x29\x19\x68\xa7\x53\x6b\x59\x84\x58\x48\x8d\xad\xce" "\xf6\x9f\x51\xe2\x1a\x38\xae\x2f\x4a\xe6\x29\x4e\x09\x50\xe6\x0c\x2f" "\x26\x20\x7e\xa9\x37\x07\xe6\x81\x28\x40\x5e\x04\x06\xe4\xdf\xb6\x85" "\xfa\x21\x6f\x32\x43\xd3\x51\x7d\xe1\x7c\xb2\xdc\x77\xa5\xb7\xb0\xd6" "\x2b\x78\xbe\xaf\xa7\xe3\xdc\x67\xf7\xd1\x56\xa9\xcf\xb3\xa0\x26\xb9" "\x51\xb5\x16\x1d\xf7\xeb\xcb\x5b\x89\x47\xda\xa0\xb6\xbc\xbb\x03\x0d" "\x20\x84\x37\xc9\x65\x85\xe0\x2f\x7e\xf1\x0f\xf5\x4f\x73\x2f\x26\x69" "\xaa\x39\x4c\xa7\x63\xd7\xb8\x0d\x1d\x0b\x4f\xf8\x63\xeb\x92\xe9\x92" "\x93\x4e\x6e\x7a\x3a\x7d\xc7\x37\x5c\xdd\x82\x70\xf1\x04\xd0\x62\x5b" "\x6e\x22\x84\xbb\x21\x7d\xae\x14\xca\x95\xba\x54\xea\xc3\x50\xa0\x0d" "\x57\xce\x79\x06\x2b\x85\xc7\xd9\x86\xc8\x9c\x09\x90\x08\xc7\x7c\x4d" "\x89\x1d\x77\x89\x4c\x3d\xa0\xe1\x22\x02\x5a\x6d\x53\x3d\x87\xa0\x7b" "\xd8\x7f\xcf\xa7\x4e\x50\x0a\x04\x4d\xb5\x2b\x68\x11\xdb\x7b\xe3\x6f" "\x16\x16\xb6\x7e\x52\x9d\x03\x61\x2e\x9b\x13\x3b\x05\xd4\xde\x2a\x2f" "\x59\x1d\x25\x09\xd6\x58\xfc\x85\x38\x9e\xa6\xfd\x8b\x89\x8b\x48\x46" "\x89\x3d\x03\xcf\x07\x67\x2e\x0f\x6f\xdd\x1e\x85\x38\xcd\xd4\x20\x1e" "\x81\xf7\xb5\x4d\x91\xd7\x52\x45\xd8\x00\x24\xa2\x18\xda\x53\x27\xb0" "\xba\x64\xea\x04\x4e\x19\xc9\x62\x55\x3f\x13\xde\xf6\x05\x6c\x56\xb2" "\x24\xaf\xe5\x80\xce\x33\xe5\xd7\xfb\x49\xc3\x41\xde\x0a\x1c\x24\xc6" "\xe3\x9f\xed\x0f\x70\x12\x90\xc0\x1a\xc8\xcc\x41\x23\x99\xf2\xda\x53" "\xa4\xe3\x6f\xe6\x59\x31\x24\x1c\xed\x0f\xf7\x78\xaa\xe0\xfa\x8b\xf0" "\x9e\xc6\x03\xe1\x82\x4e\xd9\x8d\x87\x9e\x42\x5c\xbe\xf8\xbe\x99\x6c" "\x41\xf7\x30\x68\x0e\x9c\x47\xe6\x12\x77\xad\x1b\xbb\xc5\xc8\xaf\xeb" "\x68\xcb\x06\xf1\x4b\x9e\x86\x4d\x21\x3f\xd2\xeb\xb1\x68\x71\xe3\xec" "\xc5\x03\xb0\x13\x07\xd4\xab\xd5\xb8\x6f\xd7\x3d\xe6\xc0\xca\xd9\x4c" "\xb3\x06\x49\x04\x56\xe7\xa9\x9b\xb9\x73\xc4\x21\x8a\x5f\x44\x75\x90" "\xb6\x3e\xdc\x00\x00\x2e\x80\x6c\xa1\x0a\x02\x5a\x2c\x6d\x82\xa3\x08" "\x1f\xe4\x71\x70\xac\x4f\xe9\x0c\x7c\x5d\x62\x08\x06\x17\x18\x1b\x69" "\x2a\xd5\x4c\xb9\x7f\xea\x56\x3b\x5c\x30\xdb\x78\x71\x3d\x3e\xa8\x0f" "\x12\x18\x6c\x10\xa1\x97\xff\x2f\xfc\x9c\x32\x82\x57\xf3\x69\x7c\x29" "\x24\x04\xce\x2a\x65\x8d\x0a\xd0\x81\x93\xc5\xc0\xd1\xb1\x67\x80\xfa" "\x73\x65\x5b\x8b\x88\x2d\xd9\xb8\x56\xeb\x29\xec\xb0\xbb\xaa\xd5\x58" "\x08\x50\x1a\x65\x68\xf6\x0d\x0d\x6c\xa7\xe6\xfe\x92\x5b\x22\xbe\x4a" "\x57\x75\x7a\xbd\xba\x99\xc6\x9f\x19\x33\x4b\xb6\xc4\x99\x11\xb4\x86" "\x4f\x72\xb7\xf9\xaa\x77\x57\xe8\xc8\x56\xd1\x07\xf5\xbb\xb2\x6c\xee" "\x55\xcd\x41\xee\x4d\x50\xfb\x9d\x3a\xbf\xc8\xea\x75\x49\xa4\x98\x04" "\x6c\x0c\x8b\xc2\x51\xb3\xb6\x7d\x65\x7b\xbc\xc6\x6e\x49\x32\xdc\xa5" "\x29\x4d\xf6\x4e\xc7\xab\x9d\xe3\xdd\x6d\xaa\x71\x83\xde\x77\x67\xd1" "\x74\x28\x78\x59\xa9\x6d\xa1\x4d\xcb\xf2\x2e\x32\x16\xdc\x35\xfa\xf3" "\xbf\xb9\x48\xe7\x6e\xfe\x7a\xfe\xf3\xd8\xef\xa9\x16\x29\x27\x21\x8a" "\xd0\xa1\x6a\xa7\xe5\x5e\x7d\x7b\x88\x59\x95\x91\x8f\x9c\xd6\xe7\xd1" "\x37\x7f\x62\xd2\x4c\x31\x88\x5f\x57\x74\x76\xd2\x42\x0f\x96\x0d\xdb" "\x15\x96\x6e\x5a\xf1\x0f\x24\xd0\xe0\xd0\x30\x6c\x04\x66\xb9\x29\x07" "\xdf\xd8\xf2\x8e\x7c\xfb\x47\x4d\xf7\x0f\x47\xf4\x9c\x55\x86\x92\x56" "\xe7\xf2\x0d\xa9\x96\x01\x5b\x48\x3f\x2c\x92\x36\xe6\x93\xc1\xf9\xca" "\x8c\xc0\x2c\x36\xa5\x5b\xec\xea\xf2\x4c\x3c\x3f\xd9\x25\x6c\x70\xa7" "\xae\xeb\xde\x54\xf2\x01\x97\x9a\xd9\x49\x0f\x12\x49\xef\x28\xf0\xcd" "\x38\x14\x47\x7e\x8e\xe3\x9a\x2d\xf5\xde\x8c\xa4\xc4\x2f\x8a\x51\x23" "\xa8\x12\x54\x67\x1b\x94\x5e\x1f\xe8\xe8\x8a\x55\x15\xa8\x12\xa0\x10" "\xe7\x5b\xd6\xa8\x58\xcd\xd5\xcb\x73\xf8\x5e\x7a\x0f\xe1\xbf\x1a\x8b" "\xdf\x4c\xf8\xf0\x98\x50\x74\xe3\x71\x54\x9e\x17\x90\x32\xbe\x82\x74" "\x56\x83\xdc\xb0\xcc\x6b\xd5\x33\x6b\x0e\xdf\xe6\x6b\x6c\xfe\xf1\x2a" "\xdb\xbe\x52\x63\xc3\x76\x55\xce\x57\xb9\xa3\x6c\x81\xd3\x34\x37\x2a" "\xbe\xf3\xaf\x4c\x8d\xdb\x8a\x93\xe9\x49\xc3\x5d\x96\x33\xc4\xf7\x36" "\x05\x59\xff\x73\xa3\x6c\xaf\x7f\x58\xe7\x17\xf5\x15\xb6\xca\x44\x6b" "\x05\x4f\x7a\x62\xb0\x3b\x3f\x9e\x98\xe5\xb3\x43\x4d\xfa\x99\x0d\x7b" "\xbc\xf5\xbe\x58\xb6\xdc\xd7\x28\x5c\x82\xe4\x86\x2f\x55\x9f\xb7\x69" "\x1f\x11\x0c\xe9\x70\x8e\x8e\x46\x58\x16\x0e\xe3\x14\x39\x3f\xff\x1b" "\x77\x5c\x7d\x80\xd2\x9f\x2b\xdf\x96\xa8\x80\x1b\xd5\xcf\x6c\xab\x75" "\xa5\x66\x26\x13\xce\x4f\xe6\xf9\xb5\x69\xf2\x34\xb9\x9f\x05\x99\x9a" "\x2a\x92\xc7\xc5\x18\x6e\x3f\x41\x09\x09\x06\xde\xea\xed\xdd\xc6\x50" "\xb2\x36\x5c\xe5\xa9\x6a\x7d\x76\x49\x36\xc1\xcc\xf6\x18\x01\x6d\x70" "\xd6\x2f\x58\x7f\x5e\xf5\x5b\xc3\x07\x5c\xec\x17\x32\x2e\x60\x99\x9c" "\x1c\x21\x20\xc3\xdb\xf0\xeb\xa1\x45\x0e\xf9\xf6\xce\x9a\x7c\x43\xd1" "\x0d\xff\x4e\xb0\x97\xf6\x0d\xd0\x5c\x27\x91\x99\x68\x2d\x14\x22\x41" "\xa7\xe7\x8a\xd3\x45\x8a\x50\x2c\xbe\xdd\x74\x87\x9e\x14\xb0\xe9\x80" "\x19\xea\x1d\x7a\x83\x5d\x10\x46\x94\xd8\xd4\x99\x8a\xf6\x8e\x4a\x0b" "\xa1\x2f\x3c\x33\x9c\xf5\x57\x85\xef\x16\xe3\x37\xef\xbc\x86\x64\x5a" "\x21\xe9\xcb\xbe\x0b\xa9\x75\xe7\x2a\x79\x77\xed\xc4\xf6\x4e\xf1\xf1" "\xc4\x85\x93\xc9\x7f\xd8\x91\x4f\x2c\xfb\xfd\x4a\xad\x09\xea\xbd\xa1" "\xad\x5c\x42\xc8\xc9\x74\x74\xa4\x3b\x0b\x54\x05\x4b\xe3\xf7\xb8\x92" "\xbb\x01\xed\xb5\x22\x78\x25\xb4\xe8\x3c\x7e\xb7\xb0\x5a\x85\x5c\x5f" "\x2e\x72\x72\x23\xd3\x73\xa3\x45\x72\x8e\x5e\x89\xb0\x7c\x4c\xed\x7f" "\x15\xbc\xf4\xea\x56\x1b\x00\x11\x25\xcf\x7d\xdf\x57\x3c\xb1\x99\xa8" "\x89\x19\xaa\x48\x73\x00\xd1\x42\xbc\xcb\xa3\x73\xdb\x8f\x17\x54\x19" "\x73\x20\x65\x19\xeb\xbe\xf8\xfd\x23\xdc\x8b\x7d\x04\x5b\x0a\xad\x7e" "\xf9\xa8\x0d\x4f\x1e\xad\xff\xce\xde\xdf\xf1\xd8\x16\x6a\x50\xaf\x12" "\x81\x3b\x95\xb4\x59\x20\x3c\xc0\x86\xe0\x44\x9d\xe2\x8c\x86\x5c\x5f" "\x80\xfa\x00\x38\x50\x8e\x62\x5f\x2a\xc1\x86\xf3\xf7\x0a\x20\xef\x15" "\x97\x64\x6f\x18\xd2\x22\xe4\x87\xf7\xcb\xa0\x4f\xdd\xc1\xa7\x25\xda" "\xd3\x69\x47\x8d\xdd\x2a\x2d\xf4\x63\x1e\x21\x5c\x26\x29\x59\x4b\xc8" "\x9d\x94\xd2\x7d\x1f\x81\xca\x2a\x51\x2b\x4d\x1c\x35\x89\xf3\x04\xdc" "\x81\xb0\x84\xf6\xc3\x92\x70\x59\x35\xbd\xc9\xa2\xd1\x9f\x3e\x0c\xd8" "\xee\x3c\x5c\x32\x11\x28\x9a\x1b\xb5\x79\x67\x06\xe0\x02\x10\xed\x80" "\xee\x80\x09\xb4\xa7\x95\xff\x8a\x90\x3c\x1a\x87\xd5\x1f\xcd\xf6\x49" "\xbf\x99\x50\x07\xc1\xde\x52\xa1\x31\xeb\x15\x89\x2a\xfa\x01\xdb\x56" "\xf1\x22\x3f\xb3\x1c\x68\x8b\x04\xd7\xf9\x8d\xc8\x5b\xce\xc0\xa7\x85" "\xfd\x90\x35\x59\xc3\x01\x5f\x91\x21\xe7\x2e\xa9\x93\x6e\xac\xe9\x1f" "\xd6\x84\x41\xca\xdd\x76\xe0\x24\x19\xa6\xc6\x89\x48\xa3\x2c\x98\x7a" "\x5a\xa0\x4f\xde\x33\x1a\x78\x96\x44\xe9\xc6\xb4\xe4\xb1\x3b\x24\x3c" "\x15\x38\x99\x02\x30\x8a\xf5\xe7\xf8\x86\x10\x0e\x79\x2a\x09\x7a\x04" "\x54\xb3\xbe\xfd\xff\x9f\x02\x45\xf8\xbc\xea\x06\x39\xf9\x1a\x62\x64" "\x5b\xd0\xd0\x69\xd2\x03\x33\x2f\x24\x7d\x97\x5b\xf7\x27\x77\x39\x20" "\xa1\x0f\x82\xee\xca\x67\x04\x50\xf9\xc5\xe0\x60\x14\x3f\x0a\x07\x2e" "\xfe\xac\xda\x96\xe0\xd0\xaa\x37\x2f\x96\x6d\xfb\x99\x5d\x31\x33\xbe" "\x65\x7e\x5e\x25\x81\xc5\x56\x9e\x27\xfd\x64\x3b\x7a\x70\x88\x6d\x3e" "\x48\x12\xab\x50\x97\xe4\x09\x18\xe1\x40\xe4\x71\x0e\x5c\x86\x3f\xf4" "\x32\x1b\x0b\x1c\xb3\xe1\x4e\xc0\x43\x53\x99\xbe\xf3\x65\xe1\x73\x62" "\xd2\xdd\x74\x8c\x52\xb0\xaa\xa2\x87\x96\x56\x65\xbf\xf3\xbf\x01\xe7" "\xc9\xda\xde\xa2\x40\x0b\x1f\x69\xb5\x31\xbd\x39\x14\xdf\x50\xc1\x85" "\x76\xfb\x50\x66\xdc\x38\x2f\x68\xb7\xa5\x5e\x5b\x2f\xbd\xa9\xa0\x3b" "\xd4\x0f\xc5\x0f\xe4\x36\x65\xf0\xb5\xe1\xd5\x96\xa2\x14\x17\x7b\x5e" "\xb4\x02\x68\xd4\x8c\xf1\x01\x16\xfb\x65\x43\x99\x69\x8b\x0b\xf4\x43" "\x7a\x54\x16\x24\x6f\xa7\x39\x4e\x4d\xa7\x4b\x89\xcb\x7c\x3a\x6b\xf4" "\xc9\x4b\x6b\x6b\x44\x54\x64\xa4\x1a\x67\x97\xb8\x4e\xcd\x37\xf5\x18" "\x52\xec\xf0\x7c\xd9\x31\x65\x26\xa0\x2f\xa7\x68\x61\x40\xf3\x03\xee" "\xb0\x89\xdd\xd4\x0e\x84\x8f\x40\xca\xf0\x3f\xa2\xc9\x7a\x18\xbf\x9d" "\x7c\x7a\x68\xa7\x3a\x7e\x56\xb2\x9f\x7e\x18\x4a\x34\xab\x6c\x3e\x35" "\xd7\xfe\x15\x42\xf8\x31\x8d\xe4\xac\x70\x6a\x17\x71\xb4\x1c\x61\x90" "\x3c\xa1\x21\xa7\xbd\x48\x47\x5c\x8c\xaa\x5f\x89\xe9\x2d\xe9\x52\x7a" "\x2e\xcf\xef\x96\x61\x84\x43\x85\xc7\x46\xea\x87\x6f\xb9\xc3\x4a\x1f" "\x7d\x5d\x7c\x81\x02\x0d\x42\x5b\xfa\x31\xaa\xe3\x34\x22\x7d\xd8\x8c" "\xec\x48\xe1\x89\x30\x89\xbc\x1f\x82\x31\xf0\xf7\xf3\x4a\xf2\x3a\x99" "\x15\x6e\xdb\x91\xfd\xf8\x7e\x30\x4d\xc9\xaf\xf8\x3e\xed\x65\x1a\xc3" "\xf1\x35\x3d\x9e\x4e\xd8\xa4\xa1\xad\xa8\x85\x6c\xfd\x23\x62\xd7\xd4" "\x0a\xad\x62\xd5\x6d\xe1\x5b\xfc\x2a\x5d\x57\x97\x0c\x7d\x26\xdd\x9e" "\xaf\xa4\xef\xb4\x84\xfd\x94\x55\x92\x11\xf0\x26\xf9\xc4\x8f\x27\xbf" "\xbd\x9e\x3a\x17\x3b\x32\x52\x9b\x7a\xa8\xe5\xb2\x18\x52\x98\x0e\x3f" "\xf1\x25\x5b\x9e\x91\x55\x93\xd3\xb6\x39\x71\x1c\x87\xa6\xe8\x3d\x05" "\x6c\x14\x70\xcb\x9d\xd7\xae\x19\x51\x5d\x95\xcc\x77\x4b\x85\xef\x12" "\x8a\xc9\xd5\xfc\xa7\x5e\xdc\x3a\xc3\xe7\x5e\xe1\x77\xe7\x1e\x3e\xb7" "\xf6\xa5\x8d\x21\x68\xef\xbb\x8f\x20\xa1\x0a\xfd\x5a\x83\x80\xa7\x1f" "\x56\x3c\x8e\xb4\xcd\x9c\x4c\xeb\x0f\x8b\x97\xc5\x9f\x5a\xaf\x71\x82" "\x9e\xdc\x0b\x89\x8e\x68\x27\xe9\x21\x4c\x67\x38\x20\xb8\xec\x36\x1b" "\xac\xb8\x23\x2f\xe9\xbe\xbb\xd5\x87\xd9\x09\xe5\x72\x12\x04\xfa\x95" "\xab\xb5\x38\x66\x90\x84\xfc\x2b\x0d\xc8\xcf\x9b\x9e\x21\xc7\xec\x82" "\x04\x24\xb6\xe7\x1d\x72\x92\xbc\xb0\xd1\xc1\xef\xdc\x22\x78\xc0\x4a" "\xbe\x7f\xa2\x74\x3d\xec\x13\x7b\x54\x15\x93\x0e\x3e\x04\xf3\xe7\xaa" "\x8f\x20\x77\x05\x06\xc8\xe4\xb4\x46\xf9\x6b\x10\x98\x03\xcc\xe0\x04" "\x01\x19\xbe\xd5\x57\xdd\x58\x93\x6f\x57\xd1\xdd\xf6\xeb\xc7\xfb\xfa" "\x93\x9b\x6c\x6c\x35\xbb\xd4\x3d\xff\xdf\xdb\x44\xd1\x7b\x81\x87\x59" "\x9a\x60\x4c\x89\xd3\xd1\x1c\xd5\x6c\xb3\xcb\x95\xe0\x1f\x28\x77\x75" "\x83\xb9\xbc\xd1\xf5\x68\x6e\xa3\xb1\x18\x50\xe4\x58\x15\xcf\xab\xdb" "\xa1\x0b\x5f\x7d\x6a\xd4\xf1\x45\x00\x5c\x1c\x48\x84\xf5\xc6\x25\x61" "\xef\x9b\xc8\xe3\x34\xe7\xba\x52\xc6\x75\x3b\x59\xe5\x61\x84\x8a\x7e" "\x10\x8b\x7d\x25\xfd\x5b\x10\xc2\xf8\xa1\x1f\x1a\x42\x73\x9c\xec\xcb" "\x4a\xb9\x31\x8d\xa1\x06\xba\x0c\xf7\x6d\x88\x9a\xb5\x87\xad\x2e\x23" "\xed\x5b\x96\x43\x03\x3e\x85\x5d\xa4\x37\x1d\x69\xb2\x5c\xec\x54\x33" "\x10\x58\x53\x89\x19\x11\x35\xb6\x76\x1b\x7f\xdb\x3f\xf4\x70\xd3\xe0" "\x2a\xd8\x2b\x59\x30\xd9\xf1\xf2\x66\x5c\xb7\x5c\x02\x6b\x24\x57\x7b" "\x70\x10\x5c\x3e\x96\x80\x76\x09\xa3\xbe\xce\x22\x37\x5e\x02\x81\xd3" "\xc7\x11\xdb\xd8\x95\x37\xed\x5e\x6c\x01\xcc\xbd\x4c\x27\xff\x9b\xfa" "\x07\x94\x65\x81\xd8\x5d\x14\x5c\x37\xc8\x90\x5e\x6c\x56\x8a\x1f\xfa" "\xc8\x14\x31\x42\xf2\x56\x36\x48\x27\xc1\x53\xc9\xe6\x3d\x1a\x36\xe0" "\xdc\x1c\x04\x24\x76\x71\xe0\x56\x68\x62\x5b\xfb\x4c\x3a\x24\x73\x9e" "\x4d\x48\x76\x4b\x80\xb6\x66\x41\xc1\x59\xaa\x4c\x0c\xc6\xda\x5e\x5d" "\x7f\xd7\x21\x33\xb3\x1f\x42\x44\xf7\xc2\x2a\xfb\xc1\x2e\xf8\x03\x89" "\x66\xdc\xbc\x47\xbb\x7d\xb5\x50\xf8\xea\x8b\x57\x81\x28\x00\xb1\xa7" "\xfe\x3f\xd8\x3f\x03\xe5\x5f\x62\xed\xa3\x52\xe9\xfa\xc7\xf0\x60\xa8" "\xd3\x20\x3c\xac\x47\x19\xcd\x30\x33\x65\x76\xdf\x3a\xb9\x33\x65\x73" "\x3a\x94\x3d\x75\x8b\xba\x53\xb8\x76\x28\x4d\x0f\x63\x93\xc4\x5a\xf7" "\x5f\x6b\x88\xa8\x83\x54\xf3\x1d\x40\x1f\x7f\xbd\xc9\xe7\x63\x50\x70" "\xc8\xdf\x0e\xc3\x9e\x91\x2c\xb4\xd0\x87\x95\x47\x57\x54\xc1\xc4\x6a" "\x55\x40\xf7\x10\xec\xe9\xf0\x9d\xb0\x3d\x46\x5d\x5a\xd7\xb8\x8a\xe6" "\x88\xa4\x2b\x09\xc2\x8b\x2d\xbd\x5d\x5f\x59\x84\x47\x54\x64\x3c\x71" "\xb7\xd8\xf1\x7c\xb7\xc5\xa6\x69\x3e\xeb\x4b\xc9\xe6\xcb\x41\x20\xff" "\xd9\x4d\x4a\x20\x26\xf4\x61\xee\xf1\xc2\xfd\x86\x18\xdc\xec\x24\xea" "\xc3\x82\xa1\xfb\x7a\xa0\x35\x47\xe2\xec\xa8\xeb\x14\x88\xb6\xb3\x68" "\x96\x53\x7f\x75\x0c\x6f\x22\xb4\xb6\xe6\x3a\x12\xfd\x48\x62\x13\xad" "\x63\xf0\xfe\x53\x8e\x5a\x8f\x57\x00\x14\xf7\x6f\x76\x9e\x60\x49\x1f" "\x9f\x97\xf2\x8b\xfd\x7f\x56\x52\x68\x6c\x5d\xf0\xa7\x01\x72\x8a\x03" "\x22\x49\x73\x84\x13\x4f\x51\x04\x63\x88\x45\x2d\x50\x31\x7c\xc2\x7b" "\xcf\x11\x94\xd1\x05\x75\x0f\x1e\x66\x70\x83\x74\xb9\x40\xd1\x6c\x40" "\x76\x79\x58\x10\x5c\x4f\x8c\xf3\x55\xeb\xd2\x36\xe7\xa1\xa0\x06\xb8" "\x70\xe2\xf3\x1f\x38\x6e\xf6\xf8\x65\xb9\x84\x57\xea\x14\x86\xc5\xb7" "\x86\x2b\xb3\xab\x04\x18\xf7\xc4\x1b\xfb\x60\x71\x73\xd5\x26\xa0\x9a" "\x2f\x0e\xd1\x3d\x55\x67\xfe\x24\x33\xf8\xb0\xa6\xaa\xc4\xe0\x4d\x2d" "\xc9\x7c\x41\xf5\x5b\x4e\xea\xd3\x3c\x69\x96\xf4\x41\x82\xa4\x35\x45" "\xd9\x37\x82\xc0\xdc\xee\x76\x85\xc9\x9f\x33\x70\xe9\x63\xb3\x3e\x2e" "\x3f\x46\x86\xf7\x6c\x08\x32\x75\x93\x76\x62\xa7\x4d\xf5\x9f\x9b\xbf" "\xce\x43\xf6\xf1\x7f\xfd\xe4\x13\x1f\xe2\xe9\xd7\x95\xd3\xd2\x8a\x39" "\xcc\xc8\x9b\xea\x1d\xd6\xdf\xe8\xdd\xda\xd8\x17\x14\xa0\xfd\xce\xc2" "\x05\x94\x59\x42\x8e\xae\x8f\x17\x76\x9e\xf0\x20\x73\x74\x72\x2f\x27" "\x28\x48\xdf\x45\x33\x98\x09\xe8\xa3\xce\x41\xdc\xfc\x6c\xdc\x3f\xcc" "\x7a\xcc\x0a\xf6\x90\x8b\x4b\x62\xa9\x27\xb9\x1b\x3c\xd6\x73\xbb\x44" "\x87\x55\xe3\x64\xaf\x45\xb6\x91\xc3\x25\x6b\x73\xe0\x86\xfb\x9e\xe0" "\xa0\x16\xa1\x95\x4a\xcc\xa1\x8e\xb1\x6a\xee\x30\xb8\xb8\xdd\x4b\x20" "\x3b\x0f\xa8\xdf\x85\xdf\x0d\x9d\x2c\x62\x23\x40\x34\xe5\x96\xfe\x9a" "\xd9\xe4\x6d\xcb\x9a\x95\xd4\x7b\x75\xf1\x8f\x7e\x3d\xce\x72\x14\x5f" "\x97\xac\xc1\x80\xd2\xb0\x18\x73\x31\x6f\x22\xb2\x12\x04\xa5\xc4\x7d" "\x29\x50\x38\x5c\x82\x94\x6a\x43\x33\x8a\x2d\x22\xa5\x32\x8a\xd1\x45" "\x6e\xec\x6d\x75\x05\xae\x64\x03\x8a\xf6\x59\xbd\xf0\x4a\xf7\x5a\x53" "\xba\x71\x52\xc9\x00\x7f\x62\xbf\x53\x2c\xfb\x39\x0d\x87\x80\x27\x08" "\xab\x7e\xcd\x39\xdf\xe6\xa6\x6c\xfc\x3d\x1b\x3d\xf2\x80\x5b\xe3\x38" "\x2b\x39\x99\x6f\x64\x2e\xd7\x70\x4c\xb9\x00\xdc\x43\x09\x9f\x60\x85" "\x47\x0c\x76\xb9\x5c\xe3\xe7\x6c\x2f\xc7\xdc\xd6\xe1\xe1\x33\x15\x27" "\x79\x21\xfb\x6c\x1a\xcc\x0d\x48\xa6\xe3\x3c\xe1\x37\x01\x5b\x7a\x0d" "\x8e\xc0\xe5\xdb\x09\x9c\x94\xa9\xd0\x41\x2b\x48\xdf\xf3\xaf\xc1\x6c" "\x53\x32\x48\x2a\xc9\x23\xf5\xe6\x6b\x37\x62\x5b\x75\xb3\x6b\x83\x1c" "\x10\x19\xe6\x8f\x82\x79\xf5\x64\xbf\x5b\x59\x28\x64\xa0\x97\xe6\x02" "\x57\xa7\x89\x68\x55\xe9\x10\x93\xb7\x0d\x64\x2b\xd2\x15\xc8\xf0\x73" "\x0a\x2d\xbf\x21\x50\xfa\x0f\x9d\x5d\x04\x46\x6b\x4c\x2d\xd1\x1b\xc4" "\xd4\x02\x04\x92\x57\x48\x52\xba\x6a\x9e\x8e\xd8\xf3\x3a\x59\xd8\xc5" "\xc1\x71\x57\x8a\xcc\x2e\xcb\x22\x26\xe3\x15\x8c\xd7\x88\x64\x0c\x0a" "\x0a\xfb\x99\x24\xb1\xd5\xa7\xd2\xc4\xd8\x05\x3d\xe1\x2e\xcc\xc5\xa2" "\xb9\x26\x04\xc2\x94\xca\x20\x8e\x12\x92\xb9\x41\x52\xaa\xf7", 8192); *(uint64_t*)0x20000d80 = 0; *(uint64_t*)0x20000d88 = 0; *(uint64_t*)0x20000d90 = 0; *(uint64_t*)0x20000d98 = 0; *(uint64_t*)0x20000da0 = 0; *(uint64_t*)0x20000da8 = 0; *(uint64_t*)0x20000db0 = 0; *(uint64_t*)0x20000db8 = 0; *(uint64_t*)0x20000dc0 = 0; *(uint64_t*)0x20000dc8 = 0; *(uint64_t*)0x20000dd0 = 0; *(uint64_t*)0x20000dd8 = 0x20000600; *(uint32_t*)0x20000600 = 0x90; *(uint32_t*)0x20000604 = 0; *(uint64_t*)0x20000608 = 0; *(uint64_t*)0x20000610 = 1; *(uint64_t*)0x20000618 = 0; *(uint64_t*)0x20000620 = 0; *(uint64_t*)0x20000628 = 0; *(uint32_t*)0x20000630 = 0; *(uint32_t*)0x20000634 = 0; *(uint64_t*)0x20000638 = 0; *(uint64_t*)0x20000640 = 0; *(uint64_t*)0x20000648 = 0; *(uint64_t*)0x20000650 = 0; *(uint64_t*)0x20000658 = 0; *(uint64_t*)0x20000660 = 0; *(uint32_t*)0x20000668 = 0; *(uint32_t*)0x2000066c = 0; *(uint32_t*)0x20000670 = 0; *(uint32_t*)0x20000674 = 0x8000; *(uint32_t*)0x20000678 = 0; *(uint32_t*)0x2000067c = -1; *(uint32_t*)0x20000680 = 0; *(uint32_t*)0x20000684 = 0; *(uint32_t*)0x20000688 = 0; *(uint32_t*)0x2000068c = 0; *(uint64_t*)0x20000de0 = 0; *(uint64_t*)0x20000de8 = 0; *(uint64_t*)0x20000df0 = 0; *(uint64_t*)0x20000df8 = 0; syz_fuse_handle_req(r[0], 0x20004300, 0x2000, 0x20000d80); break; case 5: *(uint32_t*)0x20000000 = 0x50; *(uint32_t*)0x20000004 = 0; *(uint64_t*)0x20000008 = r[1]; *(uint32_t*)0x20000010 = 7; *(uint32_t*)0x20000014 = 0x20; *(uint32_t*)0x20000018 = 0; *(uint32_t*)0x2000001c = 0; *(uint16_t*)0x20000020 = 0; *(uint16_t*)0x20000022 = 0; *(uint32_t*)0x20000024 = 0; *(uint32_t*)0x20000028 = 0; *(uint16_t*)0x2000002c = 0; *(uint16_t*)0x2000002e = 0; *(uint32_t*)0x20000030 = 0; *(uint32_t*)0x20000034 = 0; *(uint32_t*)0x20000038 = 0; *(uint32_t*)0x2000003c = 0; *(uint32_t*)0x20000040 = 0; *(uint32_t*)0x20000044 = 0; *(uint32_t*)0x20000048 = 0; *(uint32_t*)0x2000004c = 0; syscall(__NR_write, r[0], 0x20000000ul, 0x50ul); break; case 6: res = syscall(__NR_socketpair, 1ul, 2ul, 0, 0x200000c0ul); if (res != -1) r[2] = *(uint32_t*)0x200000c4; break; case 7: *(uint64_t*)0x20008600 = 0; *(uint32_t*)0x20008608 = 0x7f; *(uint64_t*)0x20008610 = 0x20000000; *(uint64_t*)0x20008618 = 0; *(uint64_t*)0x20008620 = 0; *(uint64_t*)0x20008628 = 0; *(uint32_t*)0x20008630 = 0; *(uint32_t*)0x20008638 = 0; *(uint64_t*)0x20008640 = 0x200072c0; *(uint16_t*)0x200072c0 = 1; memcpy((void*)0x200072c2, "./file0/../file0/" "file0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000" "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000" "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000" "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000" "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000" "\000\000\000\000\000\000\000", 108); *(uint32_t*)0x20008648 = 0x32; *(uint64_t*)0x20008650 = 0x20007380; *(uint64_t*)0x20008658 = 0; *(uint64_t*)0x20008660 = 0x20000600; *(uint64_t*)0x20008668 = 0; *(uint32_t*)0x20008670 = 0x803e; *(uint32_t*)0x20008678 = 0; syscall(__NR_sendmmsg, r[2], 0x20008600ul, 2ul, 0ul); break; } } int main(void) { syscall(__NR_mmap, 0x1ffff000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul); syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); syscall(__NR_mmap, 0x21000000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul); loop(); return 0; }