// https://syzkaller.appspot.com/bug?id=5d824d18291a66ec873378cea57817f3594bf6d0 // 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 #include #include #include #include #ifndef __NR_clone3 #define __NR_clone3 435 #endif static __thread int clone_ongoing; static __thread int skip_segv; static __thread jmp_buf segv_env; static void segv_handler(int sig, siginfo_t* info, void* ctx) { if (__atomic_load_n(&clone_ongoing, __ATOMIC_RELAXED) != 0) { exit(sig); } uintptr_t addr = (uintptr_t)info->si_addr; const uintptr_t prog_start = 1 << 20; const uintptr_t prog_end = 100 << 20; int skip = __atomic_load_n(&skip_segv, __ATOMIC_RELAXED) != 0; int valid = addr < prog_start || addr > prog_end; if (skip && valid) { _longjmp(segv_env, 1); } exit(sig); } static void install_segv_handler(void) { 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(...) \ ({ \ int ok = 1; \ __atomic_fetch_add(&skip_segv, 1, __ATOMIC_SEQ_CST); \ if (_setjmp(segv_env) == 0) { \ __VA_ARGS__; \ } else \ ok = 0; \ __atomic_fetch_sub(&skip_segv, 1, __ATOMIC_SEQ_CST); \ ok; \ }) 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 use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } 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; } #define FS_IOC_SETFLAGS _IOW('f', 2, long) static void remove_dir(const char* dir) { int iter = 0; DIR* dp = 0; retry: while (umount2(dir, MNT_DETACH | UMOUNT_NOFOLLOW) == 0) { } dp = opendir(dir); if (dp == NULL) { if (errno == EMFILE) { exit(1); } exit(1); } struct dirent* ep = 0; 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); while (umount2(filename, MNT_DETACH | UMOUNT_NOFOLLOW) == 0) { } struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } int i; for (i = 0;; i++) { if (unlink(filename) == 0) break; if (errno == EPERM) { int fd = open(filename, O_RDONLY); if (fd != -1) { long flags = 0; if (ioctl(fd, FS_IOC_SETFLAGS, &flags) == 0) { } close(fd); continue; } } if (errno == EROFS) { break; } if (errno != EBUSY || i > 100) exit(1); if (umount2(filename, MNT_DETACH | UMOUNT_NOFOLLOW)) exit(1); } } closedir(dp); for (int i = 0;; i++) { if (rmdir(dir) == 0) break; if (i < 100) { if (errno == EPERM) { int fd = open(dir, O_RDONLY); if (fd != -1) { long flags = 0; if (ioctl(fd, FS_IOC_SETFLAGS, &flags) == 0) { } close(fd); continue; } } if (errno == EROFS) { break; } if (errno == EBUSY) { if (umount2(dir, MNT_DETACH | UMOUNT_NOFOLLOW)) exit(1); continue; } if (errno == ENOTEMPTY) { if (iter < 100) { iter++; goto retry; } } } exit(1); } } 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"); if (symlink("/dev/binderfs", "./binderfs")) { } } #define USLEEP_FORKED_CHILD (3 * 500 * 1000) static long handle_clone_ret(long ret) { if (ret != 0) { __atomic_store_n(&clone_ongoing, 0, __ATOMIC_RELAXED); return ret; } usleep(USLEEP_FORKED_CHILD); syscall(__NR_exit, 0); while (1) { } } #define MAX_CLONE_ARGS_BYTES 256 static long syz_clone3(volatile long a0, volatile long a1) { unsigned long copy_size = a1; if (copy_size < sizeof(uint64_t) || copy_size > MAX_CLONE_ARGS_BYTES) return -1; char clone_args[MAX_CLONE_ARGS_BYTES]; memcpy(&clone_args, (void*)a0, copy_size); uint64_t* flags = (uint64_t*)&clone_args; *flags &= ~CLONE_VM; __atomic_store_n(&clone_ongoing, 1, __ATOMIC_RELAXED); return handle_clone_ret((long)syscall(__NR_clone3, &clone_args, copy_size)); } 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 < 18; 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); if (call == 1 || call == 11 || call == 14) break; event_timedwait(&th->done, 500); 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++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); 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 < 15000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[2] = {0x0, 0x0}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: res = syscall(__NR_getpid); if (res != -1) r[0] = res; break; case 1: syscall(__NR_sched_setscheduler, /*pid=*/r[0], /*policy=*/2ul, /*prio=*/0ul); break; case 2: syscall(__NR_process_vm_readv, /*pid=*/0, /*loc_vec=*/0ul, /*loc_vlen=*/0ul, /*rem_vec=*/0ul, /*rem_vlen=*/0ul, /*flags=*/0ul); break; case 3: syscall(__NR_process_vm_readv, /*pid=*/0, /*loc_vec=*/0ul, /*loc_vlen=*/0ul, /*rem_vec=*/0ul, /*rem_vlen=*/0ul, /*flags=*/0ul); break; case 4: NONFAILING(*(uint64_t*)0x20000380 = 0x11040100); NONFAILING(*(uint64_t*)0x20000388 = 0); NONFAILING(*(uint64_t*)0x20000390 = 0x20000040); NONFAILING(*(uint64_t*)0x20000398 = 0); NONFAILING(*(uint32_t*)0x200003a0 = 0x34); NONFAILING(*(uint64_t*)0x200003a8 = 0); NONFAILING(*(uint64_t*)0x200003b0 = 0); NONFAILING(*(uint64_t*)0x200003b8 = 0x20000440); NONFAILING(*(uint64_t*)0x200003c0 = 0); NONFAILING(*(uint64_t*)0x200003c8 = 0); NONFAILING(*(uint32_t*)0x200003d0 = -1); NONFAILING(syz_clone3(/*args=*/0x20000380, /*size=*/0x58)); break; case 5: syscall(__NR_fcntl, /*fd=*/-1, /*cmd=*/7ul, /*lock=*/0ul); break; case 6: res = syscall(__NR_msgget, /*key=*/0ul, /*flags=*/0ul); if (res != -1) r[1] = res; break; case 7: syscall(__NR_msgsnd, /*msqid=*/r[1], /*msgp=*/0ul, /*sz=*/0ul, /*flags=*/0ul); break; case 8: NONFAILING(memcpy((void*)0x20000380, "./file1\000", 8)); syscall(__NR_creat, /*file=*/0x20000380ul, /*mode=*/0xe7ul); break; case 9: syscall(__NR_mount, /*src=*/0ul, /*dst=*/0ul, /*type=*/0ul, /*flags=*/0ul, /*data=*/0ul); break; case 10: NONFAILING(memcpy( (void*)0x200007c0, "\xaa\x0f\x5d\x57\xe3\xbd\x30\x77\x41\x16\x5d\x16\xc7\x4b\x54\xf3\xae" "\x7b\xe2\x3c\x84\x5f\x65\x98\x6e\x4d\xbb\x45\x65\x66\x67\xaf\x1d\xc1" "\xd9\xdf\x20\x25\x77\xcf\x2f\xed\xfd\xe0\x9a\x74\x2d\x5a\xf7\x78\xe1" "\x3e\xae\x01\x1b\xd4\x85\x3e\x9d\x40\xf3\xcd\xdd\x0e\x62\x39\x25\x3a" "\xce\x14\xb6\x05\x33\x9a\x8b\x9d\x4b\xf4\x9d\xce\x42\x45\x91\x28\x91" "\xc3\x4f\xd4\x11\xe3\xe8\x07\xbd\x5d\x9c\xd1\x5a\xf9\xe4\x39\xd4\x64" "\x34\xa1\x7f\x9d\x62\x84\x39\xbe\x3b\x4f\x95\xed\xff\x99\xb0\xe1\xc5" "\x9f\x4e\xe5\xd3\x8e\xe1\x0e\x63\x3a\xb1\x35\xc5\xd9\x16\x32\x5a\x14" "\xd4\x39\x43\x97\xde\xa4\x60\x83\x49\x0d\xd9\xea\x53\x51\x5b\xe5\xa5" "\x8a\x74\xe5\x46\xe1\xd6\xd5\x71\x51\x50\x18\x19\x47\x18\xf2\xda\xef" "\x02\x65\x51\x24\xa9\xc6\x95\x13\xf3\xb0\xb0\xcc\x9b\x33\x38\x66\x84" "\x4b\xe9\xca\x94\x88\xd0\x21\x73\xeb\x6f\x0d\xa0\x62\x06\xa9\x8c\x02" "\x02\x39\x59\x31\x72\xcd\x83\xe2\x1e\x64\xe4\x8f\x4f\x13\x62\xba\xb6" "\xa7\x26\xa6\x70\x07\x79\x58\xc5\x6f\x42\x0f\x10\x34\x04\xc7\x64\x97" "\x7f\x2e\x4d\x9d\xd3\x3a\xe0\x8b\x2f\x58\x72\x90\xc0\x80\x5d\x65\x5b" "\x97\x60\x19\x39\x2c\xc1\xfc\x10\x2c\xcc\x91\xe4\x1f\xf3\xdb\x93\x3c" "\xfe\xf4\x8f\x87\x54\xd9\x1a\xbd\x55\x75\xc7\x1e\x8a\x87\xc0\xb1\x31" "\xb3\x65\x47\x98\x69\xfe\xe4\xcf\xb2\x12\x0f\xaa\x1c\xcc\x6d\x07\xf2" "\xaf\x42\x1c\xb9\x85\x82\x81\x6f\x73\x2b\x41\xba\xcd\x44\xaf\xd6\x28" "\x0f\x8b\x2b\xc2\xf5\x5c\x58\x7e\x21\xd1\x13\xf5\x70\x42\xb7\x18\xc0" "\x2c\x8f\x32\x5c\x92\x2c\x2e\xc3\x51\x21\xc2\xc3\xb3\x8f\x8a\x51\x3c" "\x87\xff\x74\xf9\xa7\x97\xc6\x62\x25\x8b\xd5\xe7\x74\x1a\xed\xbc\x60" "\x1c\xe2\xc1\xeb\xd6\x94\x22\x2e\xf4\x49\xb6\x43\x6c\x06\x13\xea\xf9" "\xfe\xc8\x82\x45\x69\xa7\x81\x70\x71\x2c\x30\x3e\x76\x0e\xed\xc4\x9e" "\x48\x62\x3a\x74\x99\x3f\xb4\xcd\x2c\x10\x3c\x42\x08\x6c\x9f\xac\x34" "\xda\xaf\x5d\x6e\x8c\x7e\xe8\xad\x4a\xfa\x28\x13\x29\xce\x29\xfa\x94" "\xf5\xd0\xa4\xff\xff\x9c\xb4\xb3\x75\xcd\x35\xf5\x11\x86\x77\x91\xf0" "\x19\xe7\x2c\xad\x2e\xa1\x1b\x9b\xc6\x62\x27\x87\x87\x19\xf5\x5f\x6e" "\x87\xb2\xef\x42\xb0\xf6\x20\x0a\x20\x31\xb5\xe9\xff\x45\xbb\x67\xa5" "\x68\xb0\x02\xf9\x53\xc1\x1a\xa4\xd0\x7e\xd6\x4e\x3b\x7f\x1b\x41\x41" "\xfc\x82\x34\x95\x12\x3c\x33\x92\x35\xea\xdb\x66\x54\x3a\x33\x30\x6d" "\xb2\x3b\x3b\x58\xb3\x87\x6e\x71\xbf\x60\x56\x2f\xcd\x1d\xae\x49\x65" "\x7b\xc5\xe4\xd7\x35\x24\xde\x42\x36\x17\xa5\x88\x5c\x60\x22\xe0\x47" "\x4b\xc6\x82\x24\xa7\x21\x6e\x5d\x94\x37\x3f\xfe\x32\xf6\x75\xea\xd3" "\x78\xaa\xcf\xe9\x17\x52\x05\x0e\x6c\xe5\x24\x6e\x18\xcc\xbd\xb7\xba" "\x98\xf1\xbd\x58\xaf\x16\x39\xb9\xa3\xe0\x0d\x70\xa0\x80\xa0\x0f\xfb" "\x7d\x5d\x07\x73\x72\xef\x42\xf5\x0f\xa6\x14\x71\x3e\x95\xcb\x0e\xb1" "\xa2\x1f\x6d\xc1\xb5\xed\xfc\x2c\xca\xd4\xa8\x96\xc0\x53\x3a\x12\x34" "\x30\x4c\xcf\xbe\xcc\x70\x08\x4f\x88\xec\xc2\x97\x82\x1b\x07\x2e\xbe" "\x7e\x3d\x66\xc3\x38\x37\x84\x8f\xd3\xab\x52\x6a\x0d\x8a\xc4\xf3\xf8" "\x39\xd4\x00\x85\x69\x36\x0d\xf6\x12\xbe\x39\xcd\x05\x58\x40\xb1\x8f" "\x1d\xe1\x6d\xba\x0b\x5d\xd8\xe1\x92\x84\xcf\x8c\x47\xca\x4d\xc6\x5d" "\x19\x2e\x8e\xdf\x4e\x95\x8a\xb4\x4c\x26\xae\xfb\x95\x60\x6c\x4a\x20" "\xd1\x27\x4b\x67\x5e\x63\x66\xf4\xb1\xf9\xbc\x3b\x5c\xc1\x5c\x8d\x3d" "\x12\xe7\x36\x39\x4f\x8a\xe1\x73\x5c\x7b\x16\x5a\x73\x74\x2a\x02\x49" "\x7b\x3e\x21\x54\x49\x6b\xdb\x61\xbc\xc2\x59\xc5\x51\xa0\xd1\x40\xeb" "\x07\x92\x95\x28\x46\xc3\x08\xcf\xc6\x6d\x51\x60\xb2\x3e\x04\xc8\xb9" "\x3e\xd3\xae\x26\xc7\xc1\x27\xd1\x77\x68\xed\x58\x32\x07\x77\xdf\xbc" "\x32\xfe\xa8\x03\x3c\x19\xb4\x2d\x56\x99\xd2\x5c\x2f\x82\x07\x92\xe7" "\xc0\xa4\x8b\xf1\x67\xb6\x32\xa2\x61\x5c\x9b\xd6\x7d\x61\x44\x13\xbd" "\x0e\x58\x35\xff\x41\x8a\xe3\xc6\x8f\xca\x4b\x80\x06\x79\xe5\xf7\xe3" "\x7b\x94\x02\xea\x25\x41\xfa\x59\xad\x7f\x74\x49\x6f\x94\x0f\x27\x63" "\xd5\x98\x1a\x5c\xe9\x39\x0e\xcd\x7d\xcf\x57\x45\x25\xa3\xdd\x64\x78" "\xb0\x86\xef\x1f\xd4\xc4\x98\x19\xf9\x38\xdc\x9a\x46\x02\x70\xf4\x98" "\xb6\xb1\xbc\x42\xea\x0e\x2b\xd6\x94\x37\xc3\xea\xa7\x0e\x46\xca\x24" "\x1b\xd6\xbb\x87\x94\x4c\x2c\xf5\xd2\x8a\xc3\x13\x97\x9c\xbd\x20\x85" "\x24\x67\x98\x51\xa7\x2c\xf9\xc1\x85\x9d\x10\x75\x54\x05\xcd\x3a\x59" "\x26\xe4\x44\x92\x45\xe1\x45\x4d\xfc\x80\x41\x30\xa9\x29\x8b\x39\x9c" "\xf1\x3b\x5d\x83\x29\x05\xd9\xf7\xba\x5f\x10\xa7\xf9\x5e\xe2\xb1\xb3" "\xc7\x52\x98\xbc\x94\x8e\xa1\xdc\x03\x9f\xbd\x5b\x84\xbf\xfb\xd1\x26" "\x7c\xc7\xb4\x62\x49\x8b\xcd\xea\xe0\xfb\x28\x4b\x35\x23\xd1\x99\x8f" "\xc7\x63\xec\x6c\x4e\x71\x7f\x04\x30\xe5\xbd\xed\xba\x21\x44\xd0\x40" "\x87\xbc\x45\x0a\xf5\x7b\xb8\x1a\x55\x3d\xff\x41\x7a\x9a\x6b\xb1\xf6" "\x5a\x5a\x6f\x75\x89\xef\x48\xaf\xea\x6c\xc8\x5b\xe0\xe4\xf6\xba\x90" "\xb3\x53\x09\xc8\x34\xf1\x02\xb4\x73\x11\x00\x77\xc4\xdf\x85\x00\xe6" "\xa9\xda\x48\x5b\x70\x3d\x04\x6d\x22\x7d\x9d\xdc\xd3\x00\x95\xda\x25" "\xfa\x41\xeb\x6a\xea\x1d\xf0\x37\x00\xc2\xfb\xb8\x33\x42\xb4\x3e\xaa" "\x6a\xea\x05\xc1\x4a\x7b\x71\xc8\x77\x5c\xc9\xd9\xc4\x35\x79\xe7\x5c" "\x88\xb3\xdb\x51\x74\x8f\xc2\x6a\x2d\xa0\xb0\x9f\x91\xeb\x25\x01\x0b" "\x9a\x1e\xe4\x83\x56\x14\xc3\xcb\x10\x6e\x22\xaf\x13\xf1\xd2\x59\x0c" "\xea\xbc\xbf\x28\x28\x0f\x7c\x43\xa2\x52\xee\x7e\x82\x98\xcb\x9e\x7a" "\x3a\x54\x90\x5f\x67\xa1\xbd\xcc\x75\x72\x9a\xbf\x90\xf4\xa3\x30\x93" "\x75\x66\x5d\xa7\xf8\xbb\x9d\x38\x57\x51\xab\xc1\x18\x74\x73\x8e\xf0" "\x46\x23\x10\x0f\x66\xee\x78\x06\xa0\x36\x93\x75\x60\xf6\xf9\x4a\x05" "\x0d\xf9\x8b\xe5\x70\xeb\x9d\x5b\x12\xc2\x8e\xcf\x26\x37\xc4\xa5\xea" "\xeb\x4c\xe2\x6b\x68\xe7\xf9\xaf\x67\xc8\x92\xb5\x94\x59\xbf\x81\x3a" "\x5d\x8a\xbe\xc7\x21\x82\x59\xd3\x43\x21\xad\xb7\x69\x16\x90\x8c\xa4" "\xed\x9f\x45\x7e\xf0\x1d\xfe\xc6\xce\x7e\xac\x1a\x07\xe9\xaf\x24\x1f" "\xd5\x12\x70\x92\x30\xa3\x76\x4e\x7a\xc1\x87\x1f\x13\xa1\xe5\xd2\x0f" "\x5a\xc0\x4f\x21\x6e\x45\x2a\xa5\x70\x47\xfa\x06\x6d\xc7\x1b\x30\x09" "\x1b\x94\xc7\x65\x44\x4b\x4c\x76\x28\x9d\x14\x4a\xf3\x03\x01\xd9\x49" "\x51\x84\x3c\x04\x1e\xc9\x02\x55\x0d\xf3\xbe\x89\xe3\x65\x95\xbd\x20" "\xe8\x03\x10\xb2\xd8\x3b\x7e\xa2\x75\x04\x8a\xb4\xf7\x07\xf0\xdb\x05" "\x6b\x92\xbb\x7d\x2a\x37\xd4\xa3\xcf\xef\x3b\x86\x0c\xc3\xdd\x7d\x24" "\x75\x3c\xe1\x31\xeb\x46\xeb\xf1\xed\x34\x32\x98\x5f\x35\x76\x17\x68" "\xc2\xcc\xc1\x46\xdf\xf1\xeb\x41\x2c\x54\x81\xe0\xbd\x6c\x26\xd1\x9a" "\x96\xcd\x82\x4f\xf2\x73\x90\x83\xbc\x88\x49\xd1\xf9\x17\x9b\xb6\xc3" "\xbb\x35\xad\x3e\xde\xdc\xeb\x2d\x61\x85\x99\xfd\x95\x29\x0f\x00\x19" "\xcd\x83\x34\xdb\x76\x50\x01\xc2\xdb\x34\xb6\x24\x72\x9f\x63\x93\x63" "\xb4\xdf\x3c\x0a\x47\x43\x89\xbe\x09\x11\x2b\x2b\x2c\x11\xb2\x3c\x34" "\x14\x38\xcf\x20\x1c\x34\xd6\x44\x69\x58\x8c\xb2\xea\xfc\xf2\x4c\x3a" "\x36\x17\x42\xb4\xf6\x2c\xfa\x90\x4b\x24\xe8\x18\xd9\xfc\xf1\x11\x28" "\x67\x56\x4b\x43\x64\x31\xf8\xad\xd8\x10\x5c\x06\xde\x4d\x5b\x23\xd1" "\x85\x32\xec\x42\xfe\x31\x4d\xa7\xf0\x5a\xb7\x48\x0c\x43\x46\x33\x4e" "\x24\xae\x09\x2a\xf1\x41\x4b\x70\xac\x5d\x73\x3b\xe7\x66\x3a\xa2\x66" "\x9e\xfc\x9d\x52\xc0\x2b\xa1\xaf\x64\x6c\x18\x21\x83\x34\x7c\x7e\x79" "\x95\xe8\x7f\xa7\x61\x6c\x96\x81\x99\xfa\x37\xa3\x11\x57\xef\x6d\x28" "\xbb\xd0\x89\x6d\xea\xdc\xb7\xbc\x77\x52\xc4\xfe\x11\x9f\xab\x9f\xb3" "\x9c\xa1\x1d\x65\xef\xd8\x7d\xf8\x3d\xe0\xb6\x80\x0e\x52\x76\x65\x64" "\xf4\xb4\x42\xa6\xea\xf2\x92\xb4\x87\xc6\xa9\xcc\x39\x5f\xcc\xa6\xb2" "\x16\x78\xf0\x54\x43\xec\xbe\xb0\xd0\x72\x34\x18\x41\x3a\x7e\xd2\x88" "\xa5\xc7\x3a\xe3\xc4\x7d\xce\xbe\x41\xc2\x2f\xa7\xda\xff\x58\x91\xbb" "\xb7\x87\x05\x82\x12\xee\x2c\xc3\xc5\x71\xc6\xf4\x3c\xe4\x1d\x5c\x00" "\x3f\x2c\xfe\x25\x9a\xa8\xb5\xaf\x62\xdb\x6d\xf6\x85\x48\x04\x60\x74" "\xa8\x8f\xee\x61\x7b\x26\xef\x93\xad\x01\x36\xc2\xbe\x90\x83\xe6\xe9" "\x78\x78\xab\x4d\x78\x69\xf2\x9c\xaf\xdb\x6a\x37\x15\xe8\xd1\xdb\x64" "\x43\x90\x7c\x72\x73\x0b\xb2\x59\xdd\x35\xf7\x07\xed\x3e\x8d\x51\xb4" "\xdb\xf4\xe4\xb8\x27\x90\xec\x8a\x85\xef\x55\x7c\x8e\x40\x59\x98\x09" "\xe4\x04\x8e\xa3\x95\x10\xf3\x11\x22\x4c\x9f\x4c\x4d\x02\x5e\x6a\x8a" "\xc0\xfd\x39\x8d\x78\x91\xa7\xae\x9e\xea\xa5\xbd\x56\x05\xcf\x2b\xa3" "\x3a\xc1\x0a\x1b\xed\x80\x10\x72\xa8\x71\x02\x5d\x26\x34\x49\xa5\x0a" "\x4d\x97\xab\x05\x1a\x53\xe1\x35\x09\x24\xed\x53\x7e\x0d\xf2\x44\x9f" "\xfc\xef\xbc\xc2\xc9\x0e\x24\x00\x98\x2a\x87\xdb\x90\xb0\x9d\x6e\x5e" "\x46\xb9\x97\x57\xeb\x96\xf7\xbe\xa6\x27\x77\xe4\xd3\x23\x10\x3d\xd0" "\x57\x13\xef\x97\x27\x77\xf8\x91\x9a\x22\xb3\xc5\xda\xcf\xa1\x97\xd4" "\xaa\x1f\x5a\xb2\xee\xe4\xf8\x00\x7c\xa3\xf6\xb3\xe7\xce\x26\x31\xea" "\xfd\x63\xee\x19\xf1\x57\x36\xb2\xb3\xd2\x4c\x7e\x6a\xc6\x77\x82\xf1" "\x52\xa7\x1d\x48\xd7\x82\x06\xb1\x24\xd6\x80\x50\x8f\xdd\x0f\x0a\x69" "\xf7\x36\x2a\x7a\x87\x9c\xa2\x24\xcb\xb6\x4c\xcc\x60\xcf\x9f\x9a\x87" "\x38\x13\xcf\xcd\x14\xd6\x2e\xc1\x73\x40\x59\x92\x6c\xc2\x29\x36\x4b" "\xbb\x94\x80\xdc\x96\xae\xbf\x4f\xc8\x24\x19\x9f\x84\x8b\x52\xca\xc6" "\xdb\x63\xb9\xd7\xa2\xfa\x49\xb0\x08\xd6\xad\x05\xcd\xe3\x6a\x20\xce" "\xd8\xd3\x14\x38\xfb\xbc\xdd\xac\x70\x78\xeb\xba\xc2\x23\xec\xcb\x30" "\x90\xc6\x21\x46\x3e\xc1\x8e\x81\xb4\x94\xef\x6f\x4a\x12\x74\x34\x0f" "\x59\xe5\xc7\x6a\xd8\x4c\x35\x65\xb0\x85\xdf\x02\x01\x2c\x3f\x68\xb1" "\xcd\x49\xbc\x42\x9e\xa4\xbd\xd3\xbf\x50\x26\xd9\xd1\x8e\xd5\xef\x48" "\xd7\x10\x05\x73\x74\x79\x32\xfa\x6f\x9a\xbd\x3c\x93\x3e\x76\xfe\x9c" "\x36\x47\x28\xf6\x2a\x03\x6c\xba\x31\xfb\x35\x16\xbb\xd4\x59\x36\xa9" "\xd1\xf5\x9c\x95\xd2\x25\x14\x02\x4d\xf3\x4e\x59\x61\xc3\x9d\xdf\x6c" "\x8f\x94\x61\x87\xb2\xa3\xdf\x03\x01\xec\x5a\xc6\x08\x82\x2d\x3b\x2e" "\x11\xa3\x84\x9c\xf4\x9a\xb3\xdf\xf7\xd4\xc4\x1a\x63\xd6\x6d\xf4\x58" "\xff\x4b\xcf\xbe\x1e\x06\x05\x7b\x35\xf8\x21\x70\x48\xd0\x4d\xce\x93" "\x57\x94\xe4\x88\x14\x28\xfa\x47\x09\xa3\x3f\x75\x39\x3b\x50\xe5\x6d" "\xcd\x09\x64\x94\x9b\x9c\x81\x18\x51\xcf\x76\x33\xec\x30\xfb\x75\xfa" "\x41\x75\x2e\x67\x5b\x3d\x1d\xb1\x76\x42\x1c\xb0\xc1\x14\x11\x46\x84" "\x79\xcb\xc8\x57\x94\xbd\xa2\x68\x21\x40\xe6\x0b\xa8\xe4\xb2\x7d\x79" "\x37\x79\x44\x51\x4e\xca\xc6\x00\x89\x46\xf6\xa2\x44\x4b\xc6\x36\x8e" "\x43\xa9\x21\xfb\x9a\xd1\xa1\x24\xb0\x60\x67\x69\xbc\x55\xe8\xed\x32" "\xbc\x04\x97\xd9\xa9\xc1\xb1\x19\x90\x8e\xd4\xec\xfa\xef\x21\x12\x65" "\xd9\x46\x76\x83\x22\xab\xb7\x13\xca\xb9\xf4\x63\x18\xd9\x00\xd6\xaf" "\x36\x49\x78\x75\x6c\x0e\x0e\xf4\xf6\x34\x6c\xc9\x7b\x79\xd7\x8c\xe1" "\x1b\xc0\xe5\x6c\x1e\x09\xdb\xd3\xbb\x91\x2c\x8b\x1d\x62\x0b\x48\x62" "\x54\x8a\x6a\xe2\xa9\x6b\x81\x20\x39\xfc\xec\x72\x18\x87\x23\x2f\x25" "\x2c\x22\xd2\xad\xe5\x80\x80\xfa\xfb\x8b\x94\x3e\xfa\xbf\x63\xfc\xcc" "\xba\xc5\x07\xbf\xe1\x71\x71\x61\x05\xab\x5d\xd8\x19\x5e\xfc\x2b\x58" "\xfe\x37\x42\xff\x71\x57\x60\x35\x08\xd0\x18\xfe\x00\xca\x8c\x48\x28" "\xaf\x22\x15\x2c\x0e\xf7\xf7\xda\x14\x41\x7a\xcf\x67\xfb\x81\x73\x0f" "\xab\xe0\x80\xd9\xe2\x0c\x5a\x84\x89\x28\x3d\xc1\x6c\x38\x8c\x10\x97" "\xa1\x7b\x94\x7c\xb2\x9b\x04\x8b\xf7\xa6\x11\x9d\xbb\xf3\xd2\xa8\xd0" "\x04\xc4\xc8\x0b\xbb\x13\x80\x55\x3b\x61\x0c\x46\x8a\xff\x20\x92\x9d" "\x72\x39\x06\xc8\x89\x0e\x03\xf8\x80\x17\xda\xf0\x5b\xe1\x6f\xc3\x34" "\x69\x72\xcc\x44\xfa\x8a\x70\x8a\x36\x47\x72\xd1\x09\x0b\xd2\xcc\x6f" "\xd0\x6d\x2b\xf7\x23\x9b\x49\x31\xc7\x01\xc9\xe8\xf4\xec\x68\x0e\x0e" "\x11\x4a\x5b\x46\xd2\x1a\x21\x31\x02\xbf\x6b\xd1\x61\xf3\x7f\x63\x75" "\xcf\x5e\x28\x63\x8f\xf6\x8e\x11\xe9\x30\x28\x5b\x25\x0d\xbf\xef\x26" "\x3b\x08\x07\xea\xc3\x7b\x3e\x23\xd5\xf3\xef\x40\x1e\xac\x5a\xdc\x6c" "\x5d\xf5\x98\x41\x99\x86\xad\x93\x7f\x48\xfe\x32\xa4\xde\x33\xaf\x2e" "\xdc\x65\x71\xee\x42\xcb\x0e\xa9\xb6\x26\xb2\xfa\x63\xf1\x76\x43\x43" "\x1f\x31\x36\xda\x5b\x95\x26\x44\x43\x26\xc7\x1d\x02\xdf\xa9\x6a\x6d" "\xe6\xba\xa4\x87\x42\xd4\xef\xca\x0c\x6f\xbf\xa3\x98\xdf\x87\xcd\xd4" "\x18\xef\x2a\xb7\x44\xc0\x74\x72\x8e\x44\x14\x0f\xa5\x62\x1b\x3e\xca" "\xfc\xbc\x0a\x02\x50\x98\x31\x32\xc4\xde\xc0\x61\xd6\x11\xd0\x00\xbd" "\xa2\xe2\x1c\x84\xc6\xcc\x34\x8b\x19\x8b\x3f\x16\x05\xaf\x23\x78\x9d" "\x12\x18\x9b\xb2\xd4\x18\x22\x15\x59\xe2\x5f\xe6\x92\x62\xd4\x21\xe2" "\xbd\xb5\x7e\xe1\x6f\x01\xf5\x65\x4e\x95\x86\x7e\x2d\x4f\x54\x5a\x5a" "\x73\xe3\xc7\xca\xf8\x16\xd9\x89\xd7\x68\x9d\x3b\x58\x2e\x83\xbd\x87" "\x37\x25\x19\xfe\x9d\x4e\x28\x67\xcf\xee\x0b\x33\xef\xa6\xb0\x2e\xe2" "\x3b\x6f\xee\x01\x3d\x1b\xfb\xb9\x5a\x84\x16\x05\x29\x9d\xf0\x5a\xe1" "\x98\xcb\xb5\x35\x9b\x63\x10\x83\x6c\x17\xe6\x37\xb5\xfd\x51\xfd\xaa" "\xaa\x92\x62\xad\x15\x48\x4e\x0e\x61\xfd\x35\x65\x13\xd6\x21\xe7\xbe" "\xb2\xec\x0f\x9e\xa6\xac\xa6\x4f\x26\xfa\x76\xad\xd5\xf0\xd5\x16\x83" "\xe4\xdd\x70\x29\x2a\xaa\x87\xe6\x08\x88\x71\x68\x78\x98\xf0\xac\x2b" "\x36\x24\xf6\x22\x88\x90\x28\xf2\xdf\x46\x7f\x8d\x76\x4e\x00\x2e\x49" "\x00\x7d\x89\x21\x4f\xa9\x35\xcb\xfe\x9f\x14\xe4\xb6\x68\x89\x50\xed" "\x04\xd1\x4b\xc6\x69\x2f\x81\x21\x33\x64\x38\x2d\xf7\x48\x56\x2c\x8c" "\x19\x9e\xce\x6e\x41\x37\x38\x07\xa3\x0d\x45\x6f\xda\xe1\x58\xfc\x3a" "\xe3\x27\xe3\x21\xeb\xb1\x89\xef\xec\x65\xd1\xf6\x2a\x66\x48\x87\x5c" "\xd3\xd7\x8f\xc6\x93\x7c\x24\x4f\x94\xcf\x26\x23\xb5\x60\x7b\xb3\xa9" "\x28\x23\x02\x56\x81\xb3\x3e\x4d\x13\x3c\xba\x65\x43\x28\x82\xd1\x5e" "\x1e\x93\x12\x97\x3d\x68\x56\x1d\xd5\xbc\xdf\x2b\xa0\x57\x69\x94\x03" "\x54\x2f\x17\x83\x8d\xcd\xd9\x0e\xc4\x4a\xc0\xde\x7d\x64\x92\x53\xcc" "\xb1\xd4\x19\xd0\x9b\x10\x14\xda\x53\x64\xb1\xc5\xea\x7a\x43\xaf\xcc" "\x7f\x2f\x00\x2e\x3f\x17\x1d\x90\x62\x50\x62\x1b\xdf\xd0\x27\x89\x10" "\xef\x96\xf3\x77\x2a\x7a\xdd\x68\xf1\xe7\x94\xae\xa6\xa4\x31\x6c\x0d" "\x7d\x9d\x56\xad\xdc\xac\x01\xcc\x76\x3f\xbf\xb7\x3b\x7a\xc6\x5c\xb8" "\xbd\x2b\xe7\x9e\x0f\x22\x8f\xd9\x0d\x82\x90\xd2\xd7\x4d\xdd\xea\x71" "\xcd\xb6\xe5\x90\xb6\x80\x9c\x02\x30\x95\xbe\xab\x16\x48\xbc\x1a\x11" "\x0e\x54\x68\xa6\x70\x9c\x7b\x90\xf2\xda\x55\xe1\x39\xe6\xc4\xe8\xd0" "\xc7\x80\x56\xbe\x23\x52\x78\x1c\xdf\x48\x54\x8d\x9f\xc1\xaa\x46\x00" "\x64\x21\xaf\x8c\xe1\xbb\x7b\x96\xbe\x7e\x02\x89\xb4\x15\x91\xed\xe0" "\xe3\x93\xe2\x34\xf7\x92\x8b\xa6\x2e\xf3\x53\x5f\x68\xff\x50\x40\xf0" "\x07\x57\xc2\xa4\x62\x30\x77\x57\xb4\xfe\xe9\xb2\xcd\xd0\x7a\x9a\x96" "\xc0\x91\xba\x63\x6a\xea\xe4\x2e\xcd\x1f\x14\xff\xd2\x8f\xd7\x37\xc9" "\x28\xe1\x80\x45\xed\x45\x76\x88\x40\x0b\x13\x6a\x43\xe7\x97\x56\x0e" "\x3f\x4f\x67\x45\x7d\x49\xd1\x40\x2c\xbc\xa6\x28\x4c\xfe\xcc\x0a\x13" "\x33\x0d\x5d\x1f\x07\xfd\x0c\xef\xfd\x5c\x8a\xb4\x44\x90\x82\x21\xd8" "\xc4\xc8\xa1\xa5\xc8\xa2\xdc\x7f\x71\xe0\x89\x8a\xdb\x39\x6f\x94\xa3" "\x65\xe3\x06\xde\xaf\x5c\x72\xeb\xeb\x24\x64\x6e\x67\xcc\x97\xc8\x76" "\x98\xb3\xbb\x19\xb9\x7f\x2e\x23\x40\x85\xc9\x00\x2d\xf7\x6c\xd9\x5d" "\x29\x12\xab\x4c\x5a\x89\x61\x6f\xca\xc6\x09\x76\x6b\x5c\x23\x13\xdc" "\x0e\x72\x02\xa4\x42\x62\x2a\x2e\x1b\xca\x9a\x1a\x2b\x1f\x42\x90\x54" "\xcf\x96\xb4\xbf\x07\xac\x5e\xe7\x07\x90\x3f\x18\x0a\xfd\x67\xdb\x88" "\xbf\xf6\x1d\xb4\x7f\xc2\xb3\x8c\xa8\xe1\xc3\xa1\xe6\x85\x36\xbe\x57" "\x2d\x09\x0e\xc2\x2a\x87\xa2\xa5\x2d\xe3\x35\x37\x7a\x04\x9b\xf9\x83" "\x33\xd7\x03\xc3\xd5\x0a\x89\x2e\x1a\x31\x45\xff\x37\x31\x24\x57\x5c" "\x48\xb2\x2f\x10\x89\x16\x20\x8e\x6d\xe0\x65\xc1\x3c\xa1\x25\x30\x93" "\x8c\x8a\xe2\x09\x2f\x6e\x3f\x61\x97\x04\x09\xd7\x43\x46\x6f\x79\x6b" "\x9a\x8f\x3e\xca\x2d\xd3\x99\xef\xef\xa4\xaa\x15\xe9\xf2\xc7\x9c\x22" "\x26\xe8\x84\x99\xa9\xe9\x78\x5b\x7d\xce\x4d\x5e\xff\x50\x19\xf8\x86" "\x73\x5e\xad\x7f\xe4\x01\x2a\x2d\xf1\xca\x5b\x00\x6e\x14\x32\x5d\xc0" "\x3d\xc0\x70\x9b\xaa\xb5\x76\xc8\x89\x83\xe9\x32\x41\xea\xcc\x3b\x4b" "\x4a\x6b\x15\x01\x2c\x4d\x6c\xe7\xd1\x55\x59\xc4\x98\x6b\x73\xa3\x0d" "\x8a\x4d\xb8\x8e\x0b\x99\x98\x06\xe5\xb9\x67\xe6\x5e\xb3\xc8\x35\x27" "\x1f\x89\x32\x9b\xae\xd5\x7f\x28\x4b\x67\xd7\x0e\x97\x8a\xcf\xed\x4a" "\x29\xd6\x01\xcf\x55\x74\xe5\x71\x4c\xc3\x57\x27\x1e\xc1\x0a\x03\x17" "\xc6\x7f\x2f\x81\x08\x3a\xb5\x01\xc7\x34\x5a\x0c\xcb\x9a\x74\xa6\xa1" "\xaa\xe8\x80\xc7\xef\x03\x41\xa8\x93\xae\x1e\x66\xcc\xff\x38\x12\x2b" "\x65\xe3\x70\x08\x23\xb8\x71\x49\x61\x4b\x40\x0b\x97\x3a\xfd\x95\x1b" "\xa0\xdd\x87\x80\x05\xe1\xdd\x92\x5c\xcf\x6a\xd4\x91\x7d\x79\xae\xe8" "\xd2\x0a\x71\x00\xa9\xbe\x35\x48\x49\x5f\x50\x42\xb4\x17\x5a\x48\xd5" "\x2f\x34\xa3\x7a\x03\x95\xc2\xc5\xa8\xe0\x8d\xfe\xbc\x62\x19\xc2\x66" "\x7e\xd8\x8b\x3d\x93\x19\xe9\xf8\xdb\x4a\xcb\xd6\x8f\xf3\x86\xb5\xe6" "\x14\x28\x8c\x13\x9f\xed\x19\x56\xa9\x54\x1f\x1b\xe5\x98\xae\x15\xea" "\x08\x16\x1f\x31\xa4\x83\xb5\xd3\xd6\xb4\x8c\x7a\xdc\x69\x48\x85\xc0" "\x74\x9e\x04\x63\xe1\xfe\x76\x17\x1c\x27\x14\x4e\xc2\x21\xff\xa5\xd9" "\x41\xef\xf5\x6b\xfd\xe7\x8b\xde\x42\x82\xb7\x3b\xe4\x02\xf7\x67\x55" "\x52\xc9\x67\x9f\x8e\xfe\x15\xde\xc7\xd9\xc4\xd9\x3a\x98\xac\x71\x9d" "\x7c\xc2\xc2\xc9\xff\x16\xff\x3a\xb7\x4b\xf0\xef\x84\x29\x25\xd7\x0d" "\xf7\x6e\x7c\x86\xad\x1f\x98\x6a\x96\xbc\xf0\x31\x0e\x40\x34\x0e\x22" "\x6d\x96\x12\x73\xa6\xc1\x3f\xc3\x0f\xe2\xbe\xe5\x4d\xe7\xf2\x15\x6a" "\x93\xfb\x17\x2d\x8c\xfc\x9c\x32\x6f\x19\xcd\x6a\x5a\x2b\x1e\x29\x0a" "\x14\xd2\x6f\x2c\xde\x93\xee\xf9\x92\x49\x55\x33\xd0\x93\x3c\x19\x6f" "\x43\x86\x67\xf1\xa7\x78\x8d\x1c\xe1\x02\x42\xc2\xcc\xaf\x05\x17\xc2" "\x87\xd8\xcf\x5c\x2c\x88\x27\xd9\x16\xf8\x14\xb7\xa4\x4b\xf6\x16\x4f" "\x9b\xce\x01\xc8\x06\xce\xe1\x0b\x8a\xc9\xa9\xc8\xfd\xa3\x29\xc5\x09" "\x72\x33\x7a\x3c\xc7\xb3\x35\xa1\xa5\x6c\x73\x2d\x51\x26\x1a\xff\x8a" "\x38\x5a\x63\xbf\x44\x9d\xaf\xed\xe4\xea\x71\xe2\xcd\x53\x17\xd8\xc9" "\x13\xdc\xbf\x93\xce\xd2\x31\xf4\xf5\x42\x25\x53\x96\x85\x10\x3a\x35" "\xa9\xc7\xb4\x34\xf4\x62\x8f\x00\xdc\xe0\x13\x76\x48\xef\xa7\x71\x40" "\x71\xaa\xbb\x4d\x14\xd9\xba\x2f\xd7\x71\xad\x0f\xad\xb4\x6d\x0c\x5b" "\xcb\xfe\xcc\x1f\x95\x26\xfd\xae\x48\x40\x7e\x70\x97\x75\x51\x10", 4096)); syscall(__NR_setsockopt, /*fd=*/-1, /*level=*/6, /*optname=*/0xb, /*optval=*/0x200007c0ul, /*optlen=*/0x1000ul); break; case 11: NONFAILING(memcpy((void*)0x20000080, "/dev/sg0\000", 9)); NONFAILING(memcpy((void*)0x20000400, "./file1\000", 8)); NONFAILING(memcpy((void*)0x20000440, "sysfs\000", 6)); syscall(__NR_mount, /*src=*/0x20000080ul, /*dst=*/0x20000400ul, /*type=*/0x20000440ul, /*flags=*/0ul, /*data=*/0ul); break; case 12: NONFAILING(memcpy((void*)0x20000080, "/dev/sg0\000", 9)); NONFAILING(memcpy((void*)0x20000400, "./file1\000", 8)); NONFAILING(memcpy((void*)0x20000440, "sysfs\000", 6)); syscall(__NR_mount, /*src=*/0x20000080ul, /*dst=*/0x20000400ul, /*type=*/0x20000440ul, /*flags=*/0ul, /*data=*/0ul); break; case 13: NONFAILING(memcpy( (void*)0x200007c0, "\xaa\x0f\x5d\x57\xe3\xbd\x30\x77\x41\x16\x5d\x16\xc7\x4b\x54\xf3\xae" "\x7b\xe2\x3c\x84\x5f\x65\x98\x6e\x4d\xbb\x45\x65\x66\x67\xaf\x1d\xc1" "\xd9\xdf\x20\x25\x77\xcf\x2f\xed\xfd\xe0\x9a\x74\x2d\x5a\xf7\x78\xe1" "\x3e\xae\x01\x1b\xd4\x85\x3e\x9d\x40\xf3\xcd\xdd\x0e\x62\x39\x25\x3a" "\xce\x14\xb6\x05\x33\x9a\x8b\x9d\x4b\xf4\x9d\xce\x42\x45\x91\x28\x91" "\xc3\x4f\xd4\x11\xe3\xe8\x07\xbd\x5d\x9c\xd1\x5a\xf9\xe4\x39\xd4\x64" "\x34\xa1\x7f\x9d\x62\x84\x39\xbe\x3b\x4f\x95\xed\xff\x99\xb0\xe1\xc5" "\x9f\x4e\xe5\xd3\x8e\xe1\x0e\x63\x3a\xb1\x35\xc5\xd9\x16\x32\x5a\x14" "\xd4\x39\x43\x97\xde\xa4\x60\x83\x49\x0d\xd9\xea\x53\x51\x5b\xe5\xa5" "\x8a\x74\xe5\x46\xe1\xd6\xd5\x71\x51\x50\x18\x19\x47\x18\xf2\xda\xef" "\x02\x65\x51\x24\xa9\xc6\x95\x13\xf3\xb0\xb0\xcc\x9b\x33\x38\x66\x84" "\x4b\xe9\xca\x94\x88\xd0\x21\x73\xeb\x6f\x0d\xa0\x62\x06\xa9\x8c\x02" "\x02\x39\x59\x31\x72\xcd\x83\xe2\x1e\x64\xe4\x8f\x4f\x13\x62\xba\xb6" "\xa7\x26\xa6\x70\x07\x79\x58\xc5\x6f\x42\x0f\x10\x34\x04\xc7\x64\x97" "\x7f\x2e\x4d\x9d\xd3\x3a\xe0\x8b\x2f\x58\x72\x90\xc0\x80\x5d\x65\x5b" "\x97\x60\x19\x39\x2c\xc1\xfc\x10\x2c\xcc\x91\xe4\x1f\xf3\xdb\x93\x3c" "\xfe\xf4\x8f\x87\x54\xd9\x1a\xbd\x55\x75\xc7\x1e\x8a\x87\xc0\xb1\x31" "\xb3\x65\x47\x98\x69\xfe\xe4\xcf\xb2\x12\x0f\xaa\x1c\xcc\x6d\x07\xf2" "\xaf\x42\x1c\xb9\x85\x82\x81\x6f\x73\x2b\x41\xba\xcd\x44\xaf\xd6\x28" "\x0f\x8b\x2b\xc2\xf5\x5c\x58\x7e\x21\xd1\x13\xf5\x70\x42\xb7\x18\xc0" "\x2c\x8f\x32\x5c\x92\x2c\x2e\xc3\x51\x21\xc2\xc3\xb3\x8f\x8a\x51\x3c" "\x87\xff\x74\xf9\xa7\x97\xc6\x62\x25\x8b\xd5\xe7\x74\x1a\xed\xbc\x60" "\x1c\xe2\xc1\xeb\xd6\x94\x22\x2e\xf4\x49\xb6\x43\x6c\x06\x13\xea\xf9" "\xfe\xc8\x82\x45\x69\xa7\x81\x70\x71\x2c\x30\x3e\x76\x0e\xed\xc4\x9e" "\x48\x62\x3a\x74\x99\x3f\xb4\xcd\x2c\x10\x3c\x42\x08\x6c\x9f\xac\x34" "\xda\xaf\x5d\x6e\x8c\x7e\xe8\xad\x4a\xfa\x28\x13\x29\xce\x29\xfa\x94" "\xf5\xd0\xa4\xff\xff\x9c\xb4\xb3\x75\xcd\x35\xf5\x11\x86\x77\x91\xf0" "\x19\xe7\x2c\xad\x2e\xa1\x1b\x9b\xc6\x62\x27\x87\x87\x19\xf5\x5f\x6e" "\x87\xb2\xef\x42\xb0\xf6\x20\x0a\x20\x31\xb5\xe9\xff\x45\xbb\x67\xa5" "\x68\xb0\x02\xf9\x53\xc1\x1a\xa4\xd0\x7e\xd6\x4e\x3b\x7f\x1b\x41\x41" "\xfc\x82\x34\x95\x12\x3c\x33\x92\x35\xea\xdb\x66\x54\x3a\x33\x30\x6d" "\xb2\x3b\x3b\x58\xb3\x87\x6e\x71\xbf\x60\x56\x2f\xcd\x1d\xae\x49\x65" "\x7b\xc5\xe4\xd7\x35\x24\xde\x42\x36\x17\xa5\x88\x5c\x60\x22\xe0\x47" "\x4b\xc6\x82\x24\xa7\x21\x6e\x5d\x94\x37\x3f\xfe\x32\xf6\x75\xea\xd3" "\x78\xaa\xcf\xe9\x17\x52\x05\x0e\x6c\xe5\x24\x6e\x18\xcc\xbd\xb7\xba" "\x98\xf1\xbd\x58\xaf\x16\x39\xb9\xa3\xe0\x0d\x70\xa0\x80\xa0\x0f\xfb" "\x7d\x5d\x07\x73\x72\xef\x42\xf5\x0f\xa6\x14\x71\x3e\x95\xcb\x0e\xb1" "\xa2\x1f\x6d\xc1\xb5\xed\xfc\x2c\xca\xd4\xa8\x96\xc0\x53\x3a\x12\x34" "\x30\x4c\xcf\xbe\xcc\x70\x08\x4f\x88\xec\xc2\x97\x82\x1b\x07\x2e\xbe" "\x7e\x3d\x66\xc3\x38\x37\x84\x8f\xd3\xab\x52\x6a\x0d\x8a\xc4\xf3\xf8" "\x39\xd4\x00\x85\x69\x36\x0d\xf6\x12\xbe\x39\xcd\x05\x58\x40\xb1\x8f" "\x1d\xe1\x6d\xba\x0b\x5d\xd8\xe1\x92\x84\xcf\x8c\x47\xca\x4d\xc6\x5d" "\x19\x2e\x8e\xdf\x4e\x95\x8a\xb4\x4c\x26\xae\xfb\x95\x60\x6c\x4a\x20" "\xd1\x27\x4b\x67\x5e\x63\x66\xf4\xb1\xf9\xbc\x3b\x5c\xc1\x5c\x8d\x3d" "\x12\xe7\x36\x39\x4f\x8a\xe1\x73\x5c\x7b\x16\x5a\x73\x74\x2a\x02\x49" "\x7b\x3e\x21\x54\x49\x6b\xdb\x61\xbc\xc2\x59\xc5\x51\xa0\xd1\x40\xeb" "\x07\x92\x95\x28\x46\xc3\x08\xcf\xc6\x6d\x51\x60\xb2\x3e\x04\xc8\xb9" "\x3e\xd3\xae\x26\xc7\xc1\x27\xd1\x77\x68\xed\x58\x32\x07\x77\xdf\xbc" "\x32\xfe\xa8\x03\x3c\x19\xb4\x2d\x56\x99\xd2\x5c\x2f\x82\x07\x92\xe7" "\xc0\xa4\x8b\xf1\x67\xb6\x32\xa2\x61\x5c\x9b\xd6\x7d\x61\x44\x13\xbd" "\x0e\x58\x35\xff\x41\x8a\xe3\xc6\x8f\xca\x4b\x80\x06\x79\xe5\xf7\xe3" "\x7b\x94\x02\xea\x25\x41\xfa\x59\xad\x7f\x74\x49\x6f\x94\x0f\x27\x63" "\xd5\x98\x1a\x5c\xe9\x39\x0e\xcd\x7d\xcf\x57\x45\x25\xa3\xdd\x64\x78" "\xb0\x86\xef\x1f\xd4\xc4\x98\x19\xf9\x38\xdc\x9a\x46\x02\x70\xf4\x98" "\xb6\xb1\xbc\x42\xea\x0e\x2b\xd6\x94\x37\xc3\xea\xa7\x0e\x46\xca\x24" "\x1b\xd6\xbb\x87\x94\x4c\x2c\xf5\xd2\x8a\xc3\x13\x97\x9c\xbd\x20\x85" "\x24\x67\x98\x51\xa7\x2c\xf9\xc1\x85\x9d\x10\x75\x54\x05\xcd\x3a\x59" "\x26\xe4\x44\x92\x45\xe1\x45\x4d\xfc\x80\x41\x30\xa9\x29\x8b\x39\x9c" "\xf1\x3b\x5d\x83\x29\x05\xd9\xf7\xba\x5f\x10\xa7\xf9\x5e\xe2\xb1\xb3" "\xc7\x52\x98\xbc\x94\x8e\xa1\xdc\x03\x9f\xbd\x5b\x84\xbf\xfb\xd1\x26" "\x7c\xc7\xb4\x62\x49\x8b\xcd\xea\xe0\xfb\x28\x4b\x35\x23\xd1\x99\x8f" "\xc7\x63\xec\x6c\x4e\x71\x7f\x04\x30\xe5\xbd\xed\xba\x21\x44\xd0\x40" "\x87\xbc\x45\x0a\xf5\x7b\xb8\x1a\x55\x3d\xff\x41\x7a\x9a\x6b\xb1\xf6" "\x5a\x5a\x6f\x75\x89\xef\x48\xaf\xea\x6c\xc8\x5b\xe0\xe4\xf6\xba\x90" "\xb3\x53\x09\xc8\x34\xf1\x02\xb4\x73\x11\x00\x77\xc4\xdf\x85\x00\xe6" "\xa9\xda\x48\x5b\x70\x3d\x04\x6d\x22\x7d\x9d\xdc\xd3\x00\x95\xda\x25" "\xfa\x41\xeb\x6a\xea\x1d\xf0\x37\x00\xc2\xfb\xb8\x33\x42\xb4\x3e\xaa" "\x6a\xea\x05\xc1\x4a\x7b\x71\xc8\x77\x5c\xc9\xd9\xc4\x35\x79\xe7\x5c" "\x88\xb3\xdb\x51\x74\x8f\xc2\x6a\x2d\xa0\xb0\x9f\x91\xeb\x25\x01\x0b" "\x9a\x1e\xe4\x83\x56\x14\xc3\xcb\x10\x6e\x22\xaf\x13\xf1\xd2\x59\x0c" "\xea\xbc\xbf\x28\x28\x0f\x7c\x43\xa2\x52\xee\x7e\x82\x98\xcb\x9e\x7a" "\x3a\x54\x90\x5f\x67\xa1\xbd\xcc\x75\x72\x9a\xbf\x90\xf4\xa3\x30\x93" "\x75\x66\x5d\xa7\xf8\xbb\x9d\x38\x57\x51\xab\xc1\x18\x74\x73\x8e\xf0" "\x46\x23\x10\x0f\x66\xee\x78\x06\xa0\x36\x93\x75\x60\xf6\xf9\x4a\x05" "\x0d\xf9\x8b\xe5\x70\xeb\x9d\x5b\x12\xc2\x8e\xcf\x26\x37\xc4\xa5\xea" "\xeb\x4c\xe2\x6b\x68\xe7\xf9\xaf\x67\xc8\x92\xb5\x94\x59\xbf\x81\x3a" "\x5d\x8a\xbe\xc7\x21\x82\x59\xd3\x43\x21\xad\xb7\x69\x16\x90\x8c\xa4" "\xed\x9f\x45\x7e\xf0\x1d\xfe\xc6\xce\x7e\xac\x1a\x07\xe9\xaf\x24\x1f" "\xd5\x12\x70\x92\x30\xa3\x76\x4e\x7a\xc1\x87\x1f\x13\xa1\xe5\xd2\x0f" "\x5a\xc0\x4f\x21\x6e\x45\x2a\xa5\x70\x47\xfa\x06\x6d\xc7\x1b\x30\x09" "\x1b\x94\xc7\x65\x44\x4b\x4c\x76\x28\x9d\x14\x4a\xf3\x03\x01\xd9\x49" "\x51\x84\x3c\x04\x1e\xc9\x02\x55\x0d\xf3\xbe\x89\xe3\x65\x95\xbd\x20" "\xe8\x03\x10\xb2\xd8\x3b\x7e\xa2\x75\x04\x8a\xb4\xf7\x07\xf0\xdb\x05" "\x6b\x92\xbb\x7d\x2a\x37\xd4\xa3\xcf\xef\x3b\x86\x0c\xc3\xdd\x7d\x24" "\x75\x3c\xe1\x31\xeb\x46\xeb\xf1\xed\x34\x32\x98\x5f\x35\x76\x17\x68" "\xc2\xcc\xc1\x46\xdf\xf1\xeb\x41\x2c\x54\x81\xe0\xbd\x6c\x26\xd1\x9a" "\x96\xcd\x82\x4f\xf2\x73\x90\x83\xbc\x88\x49\xd1\xf9\x17\x9b\xb6\xc3" "\xbb\x35\xad\x3e\xde\xdc\xeb\x2d\x61\x85\x99\xfd\x95\x29\x0f\x00\x19" "\xcd\x83\x34\xdb\x76\x50\x01\xc2\xdb\x34\xb6\x24\x72\x9f\x63\x93\x63" "\xb4\xdf\x3c\x0a\x47\x43\x89\xbe\x09\x11\x2b\x2b\x2c\x11\xb2\x3c\x34" "\x14\x38\xcf\x20\x1c\x34\xd6\x44\x69\x58\x8c\xb2\xea\xfc\xf2\x4c\x3a" "\x36\x17\x42\xb4\xf6\x2c\xfa\x90\x4b\x24\xe8\x18\xd9\xfc\xf1\x11\x28" "\x67\x56\x4b\x43\x64\x31\xf8\xad\xd8\x10\x5c\x06\xde\x4d\x5b\x23\xd1" "\x85\x32\xec\x42\xfe\x31\x4d\xa7\xf0\x5a\xb7\x48\x0c\x43\x46\x33\x4e" "\x24\xae\x09\x2a\xf1\x41\x4b\x70\xac\x5d\x73\x3b\xe7\x66\x3a\xa2\x66" "\x9e\xfc\x9d\x52\xc0\x2b\xa1\xaf\x64\x6c\x18\x21\x83\x34\x7c\x7e\x79" "\x95\xe8\x7f\xa7\x61\x6c\x96\x81\x99\xfa\x37\xa3\x11\x57\xef\x6d\x28" "\xbb\xd0\x89\x6d\xea\xdc\xb7\xbc\x77\x52\xc4\xfe\x11\x9f\xab\x9f\xb3" "\x9c\xa1\x1d\x65\xef\xd8\x7d\xf8\x3d\xe0\xb6\x80\x0e\x52\x76\x65\x64" "\xf4\xb4\x42\xa6\xea\xf2\x92\xb4\x87\xc6\xa9\xcc\x39\x5f\xcc\xa6\xb2" "\x16\x78\xf0\x54\x43\xec\xbe\xb0\xd0\x72\x34\x18\x41\x3a\x7e\xd2\x88" "\xa5\xc7\x3a\xe3\xc4\x7d\xce\xbe\x41\xc2\x2f\xa7\xda\xff\x58\x91\xbb" "\xb7\x87\x05\x82\x12\xee\x2c\xc3\xc5\x71\xc6\xf4\x3c\xe4\x1d\x5c\x00" "\x3f\x2c\xfe\x25\x9a\xa8\xb5\xaf\x62\xdb\x6d\xf6\x85\x48\x04\x60\x74" "\xa8\x8f\xee\x61\x7b\x26\xef\x93\xad\x01\x36\xc2\xbe\x90\x83\xe6\xe9" "\x78\x78\xab\x4d\x78\x69\xf2\x9c\xaf\xdb\x6a\x37\x15\xe8\xd1\xdb\x64" "\x43\x90\x7c\x72\x73\x0b\xb2\x59\xdd\x35\xf7\x07\xed\x3e\x8d\x51\xb4" "\xdb\xf4\xe4\xb8\x27\x90\xec\x8a\x85\xef\x55\x7c\x8e\x40\x59\x98\x09" "\xe4\x04\x8e\xa3\x95\x10\xf3\x11\x22\x4c\x9f\x4c\x4d\x02\x5e\x6a\x8a" "\xc0\xfd\x39\x8d\x78\x91\xa7\xae\x9e\xea\xa5\xbd\x56\x05\xcf\x2b\xa3" "\x3a\xc1\x0a\x1b\xed\x80\x10\x72\xa8\x71\x02\x5d\x26\x34\x49\xa5\x0a" "\x4d\x97\xab\x05\x1a\x53\xe1\x35\x09\x24\xed\x53\x7e\x0d\xf2\x44\x9f" "\xfc\xef\xbc\xc2\xc9\x0e\x24\x00\x98\x2a\x87\xdb\x90\xb0\x9d\x6e\x5e" "\x46\xb9\x97\x57\xeb\x96\xf7\xbe\xa6\x27\x77\xe4\xd3\x23\x10\x3d\xd0" "\x57\x13\xef\x97\x27\x77\xf8\x91\x9a\x22\xb3\xc5\xda\xcf\xa1\x97\xd4" "\xaa\x1f\x5a\xb2\xee\xe4\xf8\x00\x7c\xa3\xf6\xb3\xe7\xce\x26\x31\xea" "\xfd\x63\xee\x19\xf1\x57\x36\xb2\xb3\xd2\x4c\x7e\x6a\xc6\x77\x82\xf1" "\x52\xa7\x1d\x48\xd7\x82\x06\xb1\x24\xd6\x80\x50\x8f\xdd\x0f\x0a\x69" "\xf7\x36\x2a\x7a\x87\x9c\xa2\x24\xcb\xb6\x4c\xcc\x60\xcf\x9f\x9a\x87" "\x38\x13\xcf\xcd\x14\xd6\x2e\xc1\x73\x40\x59\x92\x6c\xc2\x29\x36\x4b" "\xbb\x94\x80\xdc\x96\xae\xbf\x4f\xc8\x24\x19\x9f\x84\x8b\x52\xca\xc6" "\xdb\x63\xb9\xd7\xa2\xfa\x49\xb0\x08\xd6\xad\x05\xcd\xe3\x6a\x20\xce" "\xd8\xd3\x14\x38\xfb\xbc\xdd\xac\x70\x78\xeb\xba\xc2\x23\xec\xcb\x30" "\x90\xc6\x21\x46\x3e\xc1\x8e\x81\xb4\x94\xef\x6f\x4a\x12\x74\x34\x0f" "\x59\xe5\xc7\x6a\xd8\x4c\x35\x65\xb0\x85\xdf\x02\x01\x2c\x3f\x68\xb1" "\xcd\x49\xbc\x42\x9e\xa4\xbd\xd3\xbf\x50\x26\xd9\xd1\x8e\xd5\xef\x48" "\xd7\x10\x05\x73\x74\x79\x32\xfa\x6f\x9a\xbd\x3c\x93\x3e\x76\xfe\x9c" "\x36\x47\x28\xf6\x2a\x03\x6c\xba\x31\xfb\x35\x16\xbb\xd4\x59\x36\xa9" "\xd1\xf5\x9c\x95\xd2\x25\x14\x02\x4d\xf3\x4e\x59\x61\xc3\x9d\xdf\x6c" "\x8f\x94\x61\x87\xb2\xa3\xdf\x03\x01\xec\x5a\xc6\x08\x82\x2d\x3b\x2e" "\x11\xa3\x84\x9c\xf4\x9a\xb3\xdf\xf7\xd4\xc4\x1a\x63\xd6\x6d\xf4\x58" "\xff\x4b\xcf\xbe\x1e\x06\x05\x7b\x35\xf8\x21\x70\x48\xd0\x4d\xce\x93" "\x57\x94\xe4\x88\x14\x28\xfa\x47\x09\xa3\x3f\x75\x39\x3b\x50\xe5\x6d" "\xcd\x09\x64\x94\x9b\x9c\x81\x18\x51\xcf\x76\x33\xec\x30\xfb\x75\xfa" "\x41\x75\x2e\x67\x5b\x3d\x1d\xb1\x76\x42\x1c\xb0\xc1\x14\x11\x46\x84" "\x79\xcb\xc8\x57\x94\xbd\xa2\x68\x21\x40\xe6\x0b\xa8\xe4\xb2\x7d\x79" "\x37\x79\x44\x51\x4e\xca\xc6\x00\x89\x46\xf6\xa2\x44\x4b\xc6\x36\x8e" "\x43\xa9\x21\xfb\x9a\xd1\xa1\x24\xb0\x60\x67\x69\xbc\x55\xe8\xed\x32" "\xbc\x04\x97\xd9\xa9\xc1\xb1\x19\x90\x8e\xd4\xec\xfa\xef\x21\x12\x65" "\xd9\x46\x76\x83\x22\xab\xb7\x13\xca\xb9\xf4\x63\x18\xd9\x00\xd6\xaf" "\x36\x49\x78\x75\x6c\x0e\x0e\xf4\xf6\x34\x6c\xc9\x7b\x79\xd7\x8c\xe1" "\x1b\xc0\xe5\x6c\x1e\x09\xdb\xd3\xbb\x91\x2c\x8b\x1d\x62\x0b\x48\x62" "\x54\x8a\x6a\xe2\xa9\x6b\x81\x20\x39\xfc\xec\x72\x18\x87\x23\x2f\x25" "\x2c\x22\xd2\xad\xe5\x80\x80\xfa\xfb\x8b\x94\x3e\xfa\xbf\x63\xfc\xcc" "\xba\xc5\x07\xbf\xe1\x71\x71\x61\x05\xab\x5d\xd8\x19\x5e\xfc\x2b\x58" "\xfe\x37\x42\xff\x71\x57\x60\x35\x08\xd0\x18\xfe\x00\xca\x8c\x48\x28" "\xaf\x22\x15\x2c\x0e\xf7\xf7\xda\x14\x41\x7a\xcf\x67\xfb\x81\x73\x0f" "\xab\xe0\x80\xd9\xe2\x0c\x5a\x84\x89\x28\x3d\xc1\x6c\x38\x8c\x10\x97" "\xa1\x7b\x94\x7c\xb2\x9b\x04\x8b\xf7\xa6\x11\x9d\xbb\xf3\xd2\xa8\xd0" "\x04\xc4\xc8\x0b\xbb\x13\x80\x55\x3b\x61\x0c\x46\x8a\xff\x20\x92\x9d" "\x72\x39\x06\xc8\x89\x0e\x03\xf8\x80\x17\xda\xf0\x5b\xe1\x6f\xc3\x34" "\x69\x72\xcc\x44\xfa\x8a\x70\x8a\x36\x47\x72\xd1\x09\x0b\xd2\xcc\x6f" "\xd0\x6d\x2b\xf7\x23\x9b\x49\x31\xc7\x01\xc9\xe8\xf4\xec\x68\x0e\x0e" "\x11\x4a\x5b\x46\xd2\x1a\x21\x31\x02\xbf\x6b\xd1\x61\xf3\x7f\x63\x75" "\xcf\x5e\x28\x63\x8f\xf6\x8e\x11\xe9\x30\x28\x5b\x25\x0d\xbf\xef\x26" "\x3b\x08\x07\xea\xc3\x7b\x3e\x23\xd5\xf3\xef\x40\x1e\xac\x5a\xdc\x6c" "\x5d\xf5\x98\x41\x99\x86\xad\x93\x7f\x48\xfe\x32\xa4\xde\x33\xaf\x2e" "\xdc\x65\x71\xee\x42\xcb\x0e\xa9\xb6\x26\xb2\xfa\x63\xf1\x76\x43\x43" "\x1f\x31\x36\xda\x5b\x95\x26\x44\x43\x26\xc7\x1d\x02\xdf\xa9\x6a\x6d" "\xe6\xba\xa4\x87\x42\xd4\xef\xca\x0c\x6f\xbf\xa3\x98\xdf\x87\xcd\xd4" "\x18\xef\x2a\xb7\x44\xc0\x74\x72\x8e\x44\x14\x0f\xa5\x62\x1b\x3e\xca" "\xfc\xbc\x0a\x02\x50\x98\x31\x32\xc4\xde\xc0\x61\xd6\x11\xd0\x00\xbd" "\xa2\xe2\x1c\x84\xc6\xcc\x34\x8b\x19\x8b\x3f\x16\x05\xaf\x23\x78\x9d" "\x12\x18\x9b\xb2\xd4\x18\x22\x15\x59\xe2\x5f\xe6\x92\x62\xd4\x21\xe2" "\xbd\xb5\x7e\xe1\x6f\x01\xf5\x65\x4e\x95\x86\x7e\x2d\x4f\x54\x5a\x5a" "\x73\xe3\xc7\xca\xf8\x16\xd9\x89\xd7\x68\x9d\x3b\x58\x2e\x83\xbd\x87" "\x37\x25\x19\xfe\x9d\x4e\x28\x67\xcf\xee\x0b\x33\xef\xa6\xb0\x2e\xe2" "\x3b\x6f\xee\x01\x3d\x1b\xfb\xb9\x5a\x84\x16\x05\x29\x9d\xf0\x5a\xe1" "\x98\xcb\xb5\x35\x9b\x63\x10\x83\x6c\x17\xe6\x37\xb5\xfd\x51\xfd\xaa" "\xaa\x92\x62\xad\x15\x48\x4e\x0e\x61\xfd\x35\x65\x13\xd6\x21\xe7\xbe" "\xb2\xec\x0f\x9e\xa6\xac\xa6\x4f\x26\xfa\x76\xad\xd5\xf0\xd5\x16\x83" "\xe4\xdd\x70\x29\x2a\xaa\x87\xe6\x08\x88\x71\x68\x78\x98\xf0\xac\x2b" "\x36\x24\xf6\x22\x88\x90\x28\xf2\xdf\x46\x7f\x8d\x76\x4e\x00\x2e\x49" "\x00\x7d\x89\x21\x4f\xa9\x35\xcb\xfe\x9f\x14\xe4\xb6\x68\x89\x50\xed" "\x04\xd1\x4b\xc6\x69\x2f\x81\x21\x33\x64\x38\x2d\xf7\x48\x56\x2c\x8c" "\x19\x9e\xce\x6e\x41\x37\x38\x07\xa3\x0d\x45\x6f\xda\xe1\x58\xfc\x3a" "\xe3\x27\xe3\x21\xeb\xb1\x89\xef\xec\x65\xd1\xf6\x2a\x66\x48\x87\x5c" "\xd3\xd7\x8f\xc6\x93\x7c\x24\x4f\x94\xcf\x26\x23\xb5\x60\x7b\xb3\xa9" "\x28\x23\x02\x56\x81\xb3\x3e\x4d\x13\x3c\xba\x65\x43\x28\x82\xd1\x5e" "\x1e\x93\x12\x97\x3d\x68\x56\x1d\xd5\xbc\xdf\x2b\xa0\x57\x69\x94\x03" "\x54\x2f\x17\x83\x8d\xcd\xd9\x0e\xc4\x4a\xc0\xde\x7d\x64\x92\x53\xcc" "\xb1\xd4\x19\xd0\x9b\x10\x14\xda\x53\x64\xb1\xc5\xea\x7a\x43\xaf\xcc" "\x7f\x2f\x00\x2e\x3f\x17\x1d\x90\x62\x50\x62\x1b\xdf\xd0\x27\x89\x10" "\xef\x96\xf3\x77\x2a\x7a\xdd\x68\xf1\xe7\x94\xae\xa6\xa4\x31\x6c\x0d" "\x7d\x9d\x56\xad\xdc\xac\x01\xcc\x76\x3f\xbf\xb7\x3b\x7a\xc6\x5c\xb8" "\xbd\x2b\xe7\x9e\x0f\x22\x8f\xd9\x0d\x82\x90\xd2\xd7\x4d\xdd\xea\x71" "\xcd\xb6\xe5\x90\xb6\x80\x9c\x02\x30\x95\xbe\xab\x16\x48\xbc\x1a\x11" "\x0e\x54\x68\xa6\x70\x9c\x7b\x90\xf2\xda\x55\xe1\x39\xe6\xc4\xe8\xd0" "\xc7\x80\x56\xbe\x23\x52\x78\x1c\xdf\x48\x54\x8d\x9f\xc1\xaa\x46\x00" "\x64\x21\xaf\x8c\xe1\xbb\x7b\x96\xbe\x7e\x02\x89\xb4\x15\x91\xed\xe0" "\xe3\x93\xe2\x34\xf7\x92\x8b\xa6\x2e\xf3\x53\x5f\x68\xff\x50\x40\xf0" "\x07\x57\xc2\xa4\x62\x30\x77\x57\xb4\xfe\xe9\xb2\xcd\xd0\x7a\x9a\x96" "\xc0\x91\xba\x63\x6a\xea\xe4\x2e\xcd\x1f\x14\xff\xd2\x8f\xd7\x37\xc9" "\x28\xe1\x80\x45\xed\x45\x76\x88\x40\x0b\x13\x6a\x43\xe7\x97\x56\x0e" "\x3f\x4f\x67\x45\x7d\x49\xd1\x40\x2c\xbc\xa6\x28\x4c\xfe\xcc\x0a\x13" "\x33\x0d\x5d\x1f\x07\xfd\x0c\xef\xfd\x5c\x8a\xb4\x44\x90\x82\x21\xd8" "\xc4\xc8\xa1\xa5\xc8\xa2\xdc\x7f\x71\xe0\x89\x8a\xdb\x39\x6f\x94\xa3" "\x65\xe3\x06\xde\xaf\x5c\x72\xeb\xeb\x24\x64\x6e\x67\xcc\x97\xc8\x76" "\x98\xb3\xbb\x19\xb9\x7f\x2e\x23\x40\x85\xc9\x00\x2d\xf7\x6c\xd9\x5d" "\x29\x12\xab\x4c\x5a\x89\x61\x6f\xca\xc6\x09\x76\x6b\x5c\x23\x13\xdc" "\x0e\x72\x02\xa4\x42\x62\x2a\x2e\x1b\xca\x9a\x1a\x2b\x1f\x42\x90\x54" "\xcf\x96\xb4\xbf\x07\xac\x5e\xe7\x07\x90\x3f\x18\x0a\xfd\x67\xdb\x88" "\xbf\xf6\x1d\xb4\x7f\xc2\xb3\x8c\xa8\xe1\xc3\xa1\xe6\x85\x36\xbe\x57" "\x2d\x09\x0e\xc2\x2a\x87\xa2\xa5\x2d\xe3\x35\x37\x7a\x04\x9b\xf9\x83" "\x33\xd7\x03\xc3\xd5\x0a\x89\x2e\x1a\x31\x45\xff\x37\x31\x24\x57\x5c" "\x48\xb2\x2f\x10\x89\x16\x20\x8e\x6d\xe0\x65\xc1\x3c\xa1\x25\x30\x93" "\x8c\x8a\xe2\x09\x2f\x6e\x3f\x61\x97\x04\x09\xd7\x43\x46\x6f\x79\x6b" "\x9a\x8f\x3e\xca\x2d\xd3\x99\xef\xef\xa4\xaa\x15\xe9\xf2\xc7\x9c\x22" "\x26\xe8\x84\x99\xa9\xe9\x78\x5b\x7d\xce\x4d\x5e\xff\x50\x19\xf8\x86" "\x73\x5e\xad\x7f\xe4\x01\x2a\x2d\xf1\xca\x5b\x00\x6e\x14\x32\x5d\xc0" "\x3d\xc0\x70\x9b\xaa\xb5\x76\xc8\x89\x83\xe9\x32\x41\xea\xcc\x3b\x4b" "\x4a\x6b\x15\x01\x2c\x4d\x6c\xe7\xd1\x55\x59\xc4\x98\x6b\x73\xa3\x0d" "\x8a\x4d\xb8\x8e\x0b\x99\x98\x06\xe5\xb9\x67\xe6\x5e\xb3\xc8\x35\x27" "\x1f\x89\x32\x9b\xae\xd5\x7f\x28\x4b\x67\xd7\x0e\x97\x8a\xcf\xed\x4a" "\x29\xd6\x01\xcf\x55\x74\xe5\x71\x4c\xc3\x57\x27\x1e\xc1\x0a\x03\x17" "\xc6\x7f\x2f\x81\x08\x3a\xb5\x01\xc7\x34\x5a\x0c\xcb\x9a\x74\xa6\xa1" "\xaa\xe8\x80\xc7\xef\x03\x41\xa8\x93\xae\x1e\x66\xcc\xff\x38\x12\x2b" "\x65\xe3\x70\x08\x23\xb8\x71\x49\x61\x4b\x40\x0b\x97\x3a\xfd\x95\x1b" "\xa0\xdd\x87\x80\x05\xe1\xdd\x92\x5c\xcf\x6a\xd4\x91\x7d\x79\xae\xe8" "\xd2\x0a\x71\x00\xa9\xbe\x35\x48\x49\x5f\x50\x42\xb4\x17\x5a\x48\xd5" "\x2f\x34\xa3\x7a\x03\x95\xc2\xc5\xa8\xe0\x8d\xfe\xbc\x62\x19\xc2\x66" "\x7e\xd8\x8b\x3d\x93\x19\xe9\xf8\xdb\x4a\xcb\xd6\x8f\xf3\x86\xb5\xe6" "\x14\x28\x8c\x13\x9f\xed\x19\x56\xa9\x54\x1f\x1b\xe5\x98\xae\x15\xea" "\x08\x16\x1f\x31\xa4\x83\xb5\xd3\xd6\xb4\x8c\x7a\xdc\x69\x48\x85\xc0" "\x74\x9e\x04\x63\xe1\xfe\x76\x17\x1c\x27\x14\x4e\xc2\x21\xff\xa5\xd9" "\x41\xef\xf5\x6b\xfd\xe7\x8b\xde\x42\x82\xb7\x3b\xe4\x02\xf7\x67\x55" "\x52\xc9\x67\x9f\x8e\xfe\x15\xde\xc7\xd9\xc4\xd9\x3a\x98\xac\x71\x9d" "\x7c\xc2\xc2\xc9\xff\x16\xff\x3a\xb7\x4b\xf0\xef\x84\x29\x25\xd7\x0d" "\xf7\x6e\x7c\x86\xad\x1f\x98\x6a\x96\xbc\xf0\x31\x0e\x40\x34\x0e\x22" "\x6d\x96\x12\x73\xa6\xc1\x3f\xc3\x0f\xe2\xbe\xe5\x4d\xe7\xf2\x15\x6a" "\x93\xfb\x17\x2d\x8c\xfc\x9c\x32\x6f\x19\xcd\x6a\x5a\x2b\x1e\x29\x0a" "\x14\xd2\x6f\x2c\xde\x93\xee\xf9\x92\x49\x55\x33\xd0\x93\x3c\x19\x6f" "\x43\x86\x67\xf1\xa7\x78\x8d\x1c\xe1\x02\x42\xc2\xcc\xaf\x05\x17\xc2" "\x87\xd8\xcf\x5c\x2c\x88\x27\xd9\x16\xf8\x14\xb7\xa4\x4b\xf6\x16\x4f" "\x9b\xce\x01\xc8\x06\xce\xe1\x0b\x8a\xc9\xa9\xc8\xfd\xa3\x29\xc5\x09" "\x72\x33\x7a\x3c\xc7\xb3\x35\xa1\xa5\x6c\x73\x2d\x51\x26\x1a\xff\x8a" "\x38\x5a\x63\xbf\x44\x9d\xaf\xed\xe4\xea\x71\xe2\xcd\x53\x17\xd8\xc9" "\x13\xdc\xbf\x93\xce\xd2\x31\xf4\xf5\x42\x25\x53\x96\x85\x10\x3a\x35" "\xa9\xc7\xb4\x34\xf4\x62\x8f\x00\xdc\xe0\x13\x76\x48\xef\xa7\x71\x40" "\x71\xaa\xbb\x4d\x14\xd9\xba\x2f\xd7\x71\xad\x0f\xad\xb4\x6d\x0c\x5b" "\xcb\xfe\xcc\x1f\x95\x26\xfd\xae\x48\x40\x7e\x70\x97\x75\x51\x10", 4096)); syscall(__NR_setsockopt, /*fd=*/-1, /*level=*/6, /*optname=*/0xb, /*optval=*/0x200007c0ul, /*optlen=*/0x1000ul); break; case 14: NONFAILING(memcpy((void*)0x200003c0, "./file1\000", 8)); NONFAILING(memcpy((void*)0x20000780, "./file1\000", 8)); syscall(__NR_pivot_root, /*new_root=*/0x200003c0ul, /*put_old=*/0x20000780ul); break; case 15: NONFAILING(memcpy((void*)0x200003c0, "./file1\000", 8)); NONFAILING(memcpy((void*)0x20000780, "./file1\000", 8)); syscall(__NR_pivot_root, /*new_root=*/0x200003c0ul, /*put_old=*/0x20000780ul); break; case 16: syscall(__NR_sendmmsg, /*fd=*/-1, /*mmsg=*/0x20000000ul, /*vlen=*/0x400000000000041ul, /*f=*/0ul); break; case 17: syscall(__NR_openat, /*fd=*/0xffffffffffffff9cul, /*file=*/0ul, /*flags=*/2ul, /*mode=*/0ul); break; } } int main(void) { syscall(__NR_mmap, /*addr=*/0x1ffff000ul, /*len=*/0x1000ul, /*prot=*/0ul, /*flags=*/0x32ul, /*fd=*/-1, /*offset=*/0ul); syscall(__NR_mmap, /*addr=*/0x20000000ul, /*len=*/0x1000000ul, /*prot=*/7ul, /*flags=*/0x32ul, /*fd=*/-1, /*offset=*/0ul); syscall(__NR_mmap, /*addr=*/0x21000000ul, /*len=*/0x1000ul, /*prot=*/0ul, /*flags=*/0x32ul, /*fd=*/-1, /*offset=*/0ul); install_segv_handler(); use_temporary_dir(); loop(); return 0; }