From 6b79140240263a6260d4dfce59d16e6e924cbbfb Mon Sep 17 00:00:00 2001 From: cjihrig Date: Mon, 23 Sep 2019 11:20:04 -0400 Subject: [PATCH] wasi: port more wasi libc integration tests This commit ports the following tests from https://github.com/nodejs/node/pull/27850. - clock_getres - getentropy (currently disabled) - getrusage - gettimeofday - notdir - preopen_populates - read_file_twice - stat - stdin - write_file This commit completes the implementations of fd_filestat_get() and path_filestat_get(), which are needed for the stat test. This commit also adds clock_res_get() and partial clock_time_get() support. --- deps/uvwasi/src/uvwasi.c | 62 +++++++++++++++++--------- src/node_wasi.cc | 37 ++++++++++++++- test/fixtures/wasi/notadir | 0 test/wasi/c/clock_getres.c | 17 +++++++ test/wasi/c/getentropy.c | 18 ++++++++ test/wasi/c/getrusage.c | 24 ++++++++++ test/wasi/c/gettimeofday.c | 25 +++++++++++ test/wasi/c/notdir.c | 11 +++++ test/wasi/c/preopen_populates.c | 3 ++ test/wasi/c/read_file_twice.c | 16 +++++++ test/wasi/c/stat.c | 53 ++++++++++++++++++++++ test/wasi/c/stdin.c | 13 ++++++ test/wasi/c/write_file.c | 15 +++++++ test/wasi/test-wasi.js | 25 ++++++++++- test/wasi/wasm/clock_getres.wasm | Bin 0 -> 30146 bytes test/wasi/wasm/getentropy.wasm | Bin 0 -> 29943 bytes test/wasi/wasm/getrusage.wasm | Bin 0 -> 30332 bytes test/wasi/wasm/gettimeofday.wasm | Bin 0 -> 30157 bytes test/wasi/wasm/notdir.wasm | Bin 0 -> 31267 bytes test/wasi/wasm/preopen_populates.wasm | Bin 0 -> 12689 bytes test/wasi/wasm/read_file_twice.wasm | Bin 0 -> 35018 bytes test/wasi/wasm/stat.wasm | Bin 0 -> 34507 bytes test/wasi/wasm/stdin.wasm | Bin 0 -> 18390 bytes test/wasi/wasm/write_file.wasm | Bin 0 -> 33357 bytes 24 files changed, 293 insertions(+), 26 deletions(-) create mode 100644 test/fixtures/wasi/notadir create mode 100644 test/wasi/c/clock_getres.c create mode 100644 test/wasi/c/getentropy.c create mode 100644 test/wasi/c/getrusage.c create mode 100644 test/wasi/c/gettimeofday.c create mode 100644 test/wasi/c/notdir.c create mode 100644 test/wasi/c/preopen_populates.c create mode 100644 test/wasi/c/read_file_twice.c create mode 100644 test/wasi/c/stat.c create mode 100644 test/wasi/c/stdin.c create mode 100644 test/wasi/c/write_file.c create mode 100755 test/wasi/wasm/clock_getres.wasm create mode 100755 test/wasi/wasm/getentropy.wasm create mode 100755 test/wasi/wasm/getrusage.wasm create mode 100755 test/wasi/wasm/gettimeofday.wasm create mode 100755 test/wasi/wasm/notdir.wasm create mode 100755 test/wasi/wasm/preopen_populates.wasm create mode 100755 test/wasi/wasm/read_file_twice.wasm create mode 100755 test/wasi/wasm/stat.wasm create mode 100755 test/wasi/wasm/stdin.wasm create mode 100755 test/wasi/wasm/write_file.wasm diff --git a/deps/uvwasi/src/uvwasi.c b/deps/uvwasi/src/uvwasi.c index 51af4e5641..ac6e0cef36 100644 --- a/deps/uvwasi/src/uvwasi.c +++ b/deps/uvwasi/src/uvwasi.c @@ -348,24 +348,37 @@ uvwasi_errno_t uvwasi_args_sizes_get(uvwasi_t* uvwasi, uvwasi_errno_t uvwasi_clock_res_get(uvwasi_t* uvwasi, uvwasi_clockid_t clock_id, uvwasi_timestamp_t* resolution) { +#ifndef _WIN32 + struct timespec ts; + clockid_t clk; +#endif /* _WIN32 */ + if (uvwasi == NULL || resolution == NULL) return UVWASI_EINVAL; - /* - if (clock_id == UVWASI_CLOCK_MONOTONIC) { - - } else if (clock_id == UVWASI_CLOCK_PROCESS_CPUTIME_ID) { - - } else if (clock_id == UVWASI_CLOCK_REALTIME) { + if (clock_id == UVWASI_CLOCK_MONOTONIC || + clock_id == UVWASI_CLOCK_REALTIME) { + *resolution = 1; // Nanosecond precision. + return UVWASI_ESUCCESS; + } else if (clock_id == UVWASI_CLOCK_PROCESS_CPUTIME_ID || + clock_id == UVWASI_CLOCK_THREAD_CPUTIME_ID) { +#ifndef _WIN32 + if (clock_id == UVWASI_CLOCK_PROCESS_CPUTIME_ID) + clk = CLOCK_PROCESS_CPUTIME_ID; + else + clk = CLOCK_THREAD_CPUTIME_ID; - } else if (clock_id == UVWASI_CLOCK_THREAD_CPUTIME_ID) { + if (clock_getres(clk, &ts) < 0) + return uvwasi__translate_uv_error(uv_translate_sys_error(errno)); - } else { - return UVWASI_EINVAL; + *resolution = (ts.tv_sec * NANOS_PER_SEC) + ts.tv_nsec; + return UVWASI_ESUCCESS; +#else + return UVWASI_ENOSYS; +#endif /* _WIN32 */ } - */ - return UVWASI_ENOTSUP; + return UVWASI_EINVAL; } @@ -373,24 +386,29 @@ uvwasi_errno_t uvwasi_clock_time_get(uvwasi_t* uvwasi, uvwasi_clockid_t clock_id, uvwasi_timestamp_t precision, uvwasi_timestamp_t* time) { + uv_timeval64_t tv; + int r; + if (uvwasi == NULL || time == NULL) return UVWASI_EINVAL; - /* if (clock_id == UVWASI_CLOCK_MONOTONIC) { - - } else if (clock_id == UVWASI_CLOCK_PROCESS_CPUTIME_ID) { - + *time = uv_hrtime(); + return UVWASI_ESUCCESS; } else if (clock_id == UVWASI_CLOCK_REALTIME) { - - } else if (clock_id == UVWASI_CLOCK_THREAD_CPUTIME_ID) { - - } else { - return UVWASI_EINVAL; + r = uv_gettimeofday(&tv); + if (r != 0) + return uvwasi__translate_uv_error(r); + + *time = (tv.tv_sec * NANOS_PER_SEC) + (tv.tv_usec * 1000); + return UVWASI_ESUCCESS; + } else if (clock_id == UVWASI_CLOCK_PROCESS_CPUTIME_ID || + clock_id == UVWASI_CLOCK_THREAD_CPUTIME_ID) { + /* TODO(cjihrig): Implement these two clocks. */ + return UVWASI_ENOSYS; } - */ - return UVWASI_ENOTSUP; + return UVWASI_EINVAL; } diff --git a/src/node_wasi.cc b/src/node_wasi.cc index deb89e5d40..6f2c2ad40b 100644 --- a/src/node_wasi.cc +++ b/src/node_wasi.cc @@ -444,7 +444,23 @@ void WASI::FdFilestatGet(const FunctionCallbackInfo& args) { uvwasi_filestat_t stats; uvwasi_errno_t err = uvwasi_fd_filestat_get(&wasi->uvw_, fd, &stats); - // TODO(cjihrig): Check for buffer overflow and write result to memory. + // TODO(cjihrig): Check for buffer overflows. + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_dev, buf); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_ino, buf + 8); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt8(stats.st_filetype, buf + 16); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt32(stats.st_nlink, buf + 20); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_size, buf + 24); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_atim, buf + 32); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_mtim, buf + 40); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_ctim, buf + 48); args.GetReturnValue().Set(err); } @@ -884,7 +900,24 @@ void WASI::PathFilestatGet(const FunctionCallbackInfo& args) { &memory[path_ptr], path_len, &stats); - // TODO(cjihrig): Check for buffer overflows and write output. + // TODO(cjihrig): Check for buffer overflows. + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_dev, buf_ptr); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_ino, buf_ptr + 8); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt8(stats.st_filetype, buf_ptr + 16); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt32(stats.st_nlink, buf_ptr + 20); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_size, buf_ptr + 24); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_atim, buf_ptr + 32); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_mtim, buf_ptr + 40); + if (err == UVWASI_ESUCCESS) + err = wasi->writeUInt64(stats.st_ctim, buf_ptr + 48); + args.GetReturnValue().Set(err); } diff --git a/test/fixtures/wasi/notadir b/test/fixtures/wasi/notadir new file mode 100644 index 0000000000..e69de29bb2 diff --git a/test/wasi/c/clock_getres.c b/test/wasi/c/clock_getres.c new file mode 100644 index 0000000000..eaac02c665 --- /dev/null +++ b/test/wasi/c/clock_getres.c @@ -0,0 +1,17 @@ +#include +#include + +int main() { + struct timespec ts; + int r; + + // supported clocks + r = clock_getres(CLOCK_REALTIME, &ts); + assert(r == 0); + r = clock_getres(CLOCK_MONOTONIC, &ts); + assert(r == 0); + r = clock_getres(CLOCK_PROCESS_CPUTIME_ID, &ts); + assert(r == 0); + r = clock_getres(CLOCK_THREAD_CPUTIME_ID, &ts); + assert(r == 0); +} diff --git a/test/wasi/c/getentropy.c b/test/wasi/c/getentropy.c new file mode 100644 index 0000000000..75547e1c47 --- /dev/null +++ b/test/wasi/c/getentropy.c @@ -0,0 +1,18 @@ +#include +#include + +int main() { + char buf[256] = {0}; + int r = getentropy(buf, 256); + assert(r == 0); + + for (int i = 0; i < 256; i++) { + if (buf[i] != 0) { + return 0; + } + } + + // if this ever is reached, we either have a bug or should buy a lottery + // ticket + return 1; +} diff --git a/test/wasi/c/getrusage.c b/test/wasi/c/getrusage.c new file mode 100644 index 0000000000..132b87deb5 --- /dev/null +++ b/test/wasi/c/getrusage.c @@ -0,0 +1,24 @@ +#include +#include + +int main() { + struct rusage ru1; + getrusage(RUSAGE_SELF, &ru1); + + for (int i = 0; i < 1000; i++) { + } + + struct rusage ru2; + getrusage(RUSAGE_SELF, &ru2); + + // assert that some time has passed + long long s1 = ru1.ru_utime.tv_sec; + long long us1 = ru1.ru_utime.tv_usec; + long long s2 = ru2.ru_utime.tv_sec; + long long us2 = ru2.ru_utime.tv_usec; + assert(s1 <= s2); + if (s1 == s2) { + // strictly less than, so the timestamps can't be equal + assert(us1 < us2); + } +} diff --git a/test/wasi/c/gettimeofday.c b/test/wasi/c/gettimeofday.c new file mode 100644 index 0000000000..20ca5b0410 --- /dev/null +++ b/test/wasi/c/gettimeofday.c @@ -0,0 +1,25 @@ +#include +#include +#include + +int main() { + struct timeval tv1; + gettimeofday(&tv1, NULL); + + for (int i = 0; i < 1000; i++) { + } + + struct timeval tv2; + gettimeofday(&tv2, NULL); + + // assert that some time has passed + long long s1 = tv1.tv_sec; + long long us1 = tv1.tv_usec; + long long s2 = tv2.tv_sec; + long long us2 = tv2.tv_usec; + assert(s1 <= s2); + if (s1 == s2) { + // strictly less than, so the timestamps can't be equal + assert(us1 < us2); + } +} diff --git a/test/wasi/c/notdir.c b/test/wasi/c/notdir.c new file mode 100644 index 0000000000..03f369ffd3 --- /dev/null +++ b/test/wasi/c/notdir.c @@ -0,0 +1,11 @@ +#include +#include +#include + +int main() { + DIR* dir = opendir("/sandbox/notadir"); + assert(dir == NULL); + assert(errno == ENOTDIR); + + return 0; +} diff --git a/test/wasi/c/preopen_populates.c b/test/wasi/c/preopen_populates.c new file mode 100644 index 0000000000..03b2213bb9 --- /dev/null +++ b/test/wasi/c/preopen_populates.c @@ -0,0 +1,3 @@ +int main(void) { + return 0; +} diff --git a/test/wasi/c/read_file_twice.c b/test/wasi/c/read_file_twice.c new file mode 100644 index 0000000000..e295e38a3b --- /dev/null +++ b/test/wasi/c/read_file_twice.c @@ -0,0 +1,16 @@ +#include +#include + +int main() { + for (int i = 0; i < 2; i++) { + FILE* file = fopen("/sandbox/input.txt", "r"); + assert(file != NULL); + + char c = fgetc(file); + while (c != EOF) { + int wrote = fputc(c, stdout); + assert(wrote != EOF); + c = fgetc(file); + } + } +} diff --git a/test/wasi/c/stat.c b/test/wasi/c/stat.c new file mode 100644 index 0000000000..fd3854937b --- /dev/null +++ b/test/wasi/c/stat.c @@ -0,0 +1,53 @@ +#include + +#include +#include +#include +#include + +#define BASE_DIR "/tmp" +#define OUTPUT_DIR BASE_DIR "/testdir" +#define PATH OUTPUT_DIR "/output.txt" +#define SIZE 500 + +int main(void) { + struct stat st; + int fd; + int ret; + off_t pos; + + (void)st; + ret = mkdir(OUTPUT_DIR, 0755); + assert(ret == 0); + + fd = open(PATH, O_CREAT | O_WRONLY, 0666); + assert(fd != -1); + + pos = lseek(fd, SIZE - 1, SEEK_SET); + assert(pos == SIZE - 1); + + ret = (int)write(fd, "", 1); + assert(ret == 1); + + ret = fstat(fd, &st); + assert(ret == 0); + assert(st.st_size == SIZE); + + ret = close(fd); + assert(ret == 0); + + ret = access(PATH, R_OK); + assert(ret == 0); + + ret = stat(PATH, &st); + assert(ret == 0); + assert(st.st_size == SIZE); + + ret = unlink(PATH); + assert(ret == 0); + + ret = stat(PATH, &st); + assert(ret == -1); + + return 0; +} diff --git a/test/wasi/c/stdin.c b/test/wasi/c/stdin.c new file mode 100644 index 0000000000..5a81ea1265 --- /dev/null +++ b/test/wasi/c/stdin.c @@ -0,0 +1,13 @@ +#include + +int main(void) { + char x[32]; + + if (fgets(x, sizeof x, stdin) == NULL) { + return ferror(stdin); + } + if (fputs(x, stdout) == EOF) { + return ferror(stdout); + } + return 0; +} diff --git a/test/wasi/c/write_file.c b/test/wasi/c/write_file.c new file mode 100644 index 0000000000..c4cf30cf29 --- /dev/null +++ b/test/wasi/c/write_file.c @@ -0,0 +1,15 @@ +#include +#include +#include + +static char* message = "hello, file!"; + +int main() { + FILE* file = fopen("/tmp/output.txt", "w"); + assert(file != NULL); + + int nwritten = fprintf(file, "%s", message); + assert(nwritten == strlen(message)); + int r = fclose(file); + assert(r == 0); +} diff --git a/test/wasi/test-wasi.js b/test/wasi/test-wasi.js index 339d25cd37..2d06e9a73c 100644 --- a/test/wasi/test-wasi.js +++ b/test/wasi/test-wasi.js @@ -3,15 +3,18 @@ require('../common'); if (process.argv[2] === 'wasi-child') { const fixtures = require('../common/fixtures'); + const tmpdir = require('../../test/common/tmpdir'); const fs = require('fs'); const path = require('path'); const { WASI } = require('wasi'); + tmpdir.refresh(); const wasmDir = path.join(__dirname, 'wasm'); const wasi = new WASI({ args: [], env: process.env, preopens: { - '/sandbox': fixtures.path('wasi') + '/sandbox': fixtures.path('wasi'), + '/tmp': tmpdir.path } }); const importObject = { wasi_unstable: wasi.wasiImport }; @@ -29,12 +32,17 @@ if (process.argv[2] === 'wasi-child') { function runWASI(options) { console.log('executing', options.test); + const opts = {}; + + if (options.stdin !== undefined) + opts.input = options.stdin; + const child = cp.spawnSync(process.execPath, [ '--experimental-wasm-bigint', __filename, 'wasi-child', options.test - ]); + ], opts); assert.strictEqual(child.status, options.exitCode || 0); assert.strictEqual(child.signal, null); @@ -42,7 +50,20 @@ if (process.argv[2] === 'wasi-child') { } runWASI({ test: 'cant_dotdot' }); + runWASI({ test: 'clock_getres' }); runWASI({ test: 'exitcode', exitCode: 120 }); runWASI({ test: 'fd_prestat_get_refresh' }); + // runWASI({ test: 'getentropy' }); + runWASI({ test: 'getrusage' }); + runWASI({ test: 'gettimeofday' }); + runWASI({ test: 'notdir' }); + runWASI({ test: 'preopen_populates' }); runWASI({ test: 'read_file', stdout: 'hello from input.txt\n' }); + runWASI({ + test: 'read_file_twice', + stdout: 'hello from input.txt\nhello from input.txt\n' + }); + runWASI({ test: 'stat' }); + runWASI({ test: 'stdin', stdin: 'hello world', stdout: 'hello world' }); + runWASI({ test: 'write_file' }); } diff --git a/test/wasi/wasm/clock_getres.wasm b/test/wasi/wasm/clock_getres.wasm new file mode 100755 index 0000000000000000000000000000000000000000..fac14edb04d794431f1b5a605af66af8c95c2949 GIT binary patch literal 30146 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 RdanPp$LdSB_W3Es`G5ZeZDRlc literal 0 HcmV?d00001 diff --git a/test/wasi/wasm/getrusage.wasm b/test/wasi/wasm/getrusage.wasm new file mode 100755 index 0000000000000000000000000000000000000000..08608c4799942d2ff1061f8254556b9284da06f9 GIT binary patch literal 30332 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 XUNZyHtDyJ#r!`l9cW0k((9iz^sC1T^ literal 0 HcmV?d00001 diff --git a/test/wasi/wasm/notdir.wasm b/test/wasi/wasm/notdir.wasm new file mode 100755 index 0000000000000000000000000000000000000000..f83a790ddc470098dd8765c301155be090dd7354 GIT binary patch literal 31267 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 literal 0 HcmV?d00001 diff --git a/test/wasi/wasm/stat.wasm b/test/wasi/wasm/stat.wasm new file mode 100755 index 0000000000000000000000000000000000000000..9007334d37d1a166a9399975059aaf324bad1021 GIT binary patch literal 34507 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 literal 0 HcmV?d00001 diff --git a/test/wasi/wasm/stdin.wasm b/test/wasi/wasm/stdin.wasm new file mode 100755 index 0000000000000000000000000000000000000000..7264608753229f610a0327453e49d0b0beb01ac3 GIT binary patch literal 18390 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 A_W%F@ literal 0 HcmV?d00001 diff --git a/test/wasi/wasm/write_file.wasm b/test/wasi/wasm/write_file.wasm new file mode 100755 index 0000000000000000000000000000000000000000..500405e0fb3120e63fb52d8ea4c7589842664abc GIT binary patch literal 33357 zcmeI5dvG1sec#XS-V5O3-phLd@Bt8{d3GsEpec%!ACyAd5to)IQSw8L-860gpdj)} z!UYHr4^mVk3$Ual&Z}`AO=34`XeW(b*G}9z54VY9rEwCqwL5Mno#v1H;mo9NW~x6l zoy^oTjjevZzq5NEBqY;`Gt*8h3fSHA{Jnp_^E+o3Zhrk@+q7d~@@eXRM&ISzbeH=N@tNt*C+1Ws@FNUCJTdBk|Ll(bMryBs-c< z&aW?=yS%)=zhO4IrsxK_8om-y2*m2Qtn~Bcym4&sH z<#X!`|DdzJ-6-|4#WpkSm|uH*{nfjUS@kykYM0hl&Y$aCUD$AyVR)Lr{Mdz8!>D#? ze&dOAE0;RUt~%UrjDF{rR@OVt4OfT=#enObjdPDJ%|E_=J)uTvv)<_}x{=|&8uZDv zg^i9I9j;J^wa)wnH=3Nz$Hr=jbCpU`85?!ccx5bcV`KG-1jEH~r2kx!M71$D=Au!T zM2+ScWeJ@U%99fh53#7bDiZ2Nj!26%B^jP{&YN#(z+k__0_ZypYjbT{1Y}% zGyesS4$U;F$E2bMcG+SfETX-;|i~8SAvuPxzhS z`D+HuE-H7Oh$)zhcc#1PxySD*drtf5_KVhR#_vw|`k8dr@Ab21(tSX=-|zGLSJT%4 z9+G7JCmZqB zV#M3>9qC*#;$eTQzs=A2!-FI4OJ5I5jxg4dZhE`FJ+Q>TzEy8U(PsODHWjRD)yI*G z_D|}${+TyMjRCccLZ=|3-=5z{+Dp+xK~cW&bIgfWw<( zC#%u{tjDUatmV;qR?U-*Y$X2+_3WYwStTFqrp{O9;;}68Bl$~KlZ~8dB50DU28Cl? z37u;s^?VbxclqZxA8PKfS()V0Dq@OWy=dT!-q+j#+s7cg%f|phv_Bx3%wKusl~F+F zj=t1xedC^P-oBELt!9-C2HN_{0eh~jW>w&&P1TCGT2>s>Y;BR!%0}M0(xt;__li&h zzm2tYtd5yU7SpO9lg|GIwy;3)J`@xP^BHQQD~tR-aAtNR9RW;CN?J=!0W1`#Wqw%kVZvMcg=l##f(QJrSGW)dhjX ziC=3c;)))-85i>?Druzj3M7X5Zmr2Eu^;Op>PNxqzGe*+h4`!E3qZnm`DmWpy0R`f(;7e~roi>ck$Ne55B}$kj+z!#D~11lw0>R79yDZk5zEssrTC;y%F( zWkryBBsUIpeN}>6g;mfg>1HFaCK3MBO-eG!5eNZQqit3l_&bhTSESZvzynFDc}tcW zF%oHUB&Ol;!7Nf=!-1h*ikjF^G^7lXWFkQ8iyyT;@xw%x;zy(S6vBroA*3|%lRHY2 z03KyM@vEdz00$HV&iIJH>j{x9#IJs%_=ya1bB!73C&Izf0hzd!}Aimtyok=zLH-YtAj?v6doH z!5$p5s3D~+nIJ!8Bec%~g8jRbmt>=liUT}BC*Fp(#expkylK=51 z{_`iQ>n8#TVbo8DCK`3iZnw57a27*il4sEWA@GcLiKU>|Vn#p$6X9QA#9y-B!8Rz6 z0ph=~C(Iqr)K}g~oK*GhA*~l!QiTaBtIhGyHSnmSuFq@k)XDq_ai`wWF?vIWt{z6r z6e1m3Mdhwd4<;VTH_zZCYiS(DG?dXvq67GD`hsLGg2xEUBstP<8cT4&faoRvMu@v= zuZ2upATu728K-+OI}E?yq8EsH{6zd~!lJR;s5e+5@iqI>H>ANbD)eiK_zL7l7WC{m}n%GH^E;d`HKi=jHdJnAcGDi zBR}fn#hz$pt{@r|EhvRnhVj)LYvW@G+87beBj{?Y(Uw8k6j`9N-4(VfUJM=g(pEDR z;(-0KJ9({Q4(vdQLyyt!-2hj>2zv!8)K@&3ikE++{on71yF%T#=y!&8%;~B@&QRm zs4|g<5}PODKU42O6tfN|;y*7-PQ)KnmqbW}g$Xw=sTKh@XO(}=o@C0v43hw_w&MFG zDm=^_M+4c zRw#xw+Ae)HwPmq@sR$FxO4-B&z^p0?Q!NgS`D)KB137ArMs`6Xkm5RE@R%hq5H?ut zif3#CCX$NT@J4d;3VjB^6vVVznwip(lvhy~Hv6hcRmt9%MM)n)V;vW<%r=ejRR_yCatHH7#S)&&~9TF6R zni;juA+&^oGqhA%07#VD_?!3BC+a53zdmIPJ} zUnH+|G&G?@0fN@)^iv0QC#V*J3PG*ZIx{HEgWI)n)tXttV%Y$uy&@vfv2Y^_Jb_$c zV*x%O(5WOr`B`3#J`j3rzxgOfx?9~})LO;Rizv=&ST)`Ds^ zxEAEOw-zLXiES0bvVnV9@Gyr~eo0?GZHBN^9k;dL__k|5!-&~55_pXdto;;X22@dj z>(+kM6>C2zAvM?1(7@_x1;j}DOF$wdhb=*#M!TsfEP__dVjvwQ?R8h$i_*!zS&Q&wl1mUBB)4242xz8L)`DhaEqciv$%hnD)fgA64rzhWkhRG0bvNcMYC=O% zVhB=j>V?~b2~btp81_es4GGqeX;pK2C@V= z^hT1g#)FcKN8-6J$t*jR@+2ohsN0w1*Ghm}eqKU!gWwQxG$0Hy{Oe+F6P!x<$Edi> z%;kt+13&>K%LL{sK$=IrSQuPds1~q>kX=lgl`hH*Kl!bIW{_sIpZSf>+M;>BD^@MnXt*W$Qr;|v;GH!Je)WD8{_dF)? zmHG$D3FP5ispb;~bTN;KFtvHc?tlss8tjfC#*;=uGh|)jQyQ!tHke5z*iNB3VRwXy zagp{2Id;baV;f~UVBL=*OelwQr)r{=aml4f+S2EJc?ZK{WJjV97J13g;)o~YMw?OQ zg@cIT`NTCiUWf<=WKcv*HU@+NP;QWbu#FRalW3HVL0}+9DXjN5;g2|E(iLt^irMal z4c{bi8yK+!3Sk5h38SHfxt1^*Zr`FXmT_A$Bwxwjh!g_fHc|-aLsFRBoD?$H_EIQJ zUR4Tjh}#BI_uKJ&h>5VUXChjKYW0M2C~!mHw_EbzKYhHBDN7Gikwg+>=0jrC%JzFL z*LeWd9uC~Db9am})oBUMs2@0E(13#FM%7&`Y5=oNK3w;sQr+dBNM=9 zI;y<5pbmx_8nEPJ3}QDNvzB~J0lm{IwyN6mT^75=@?8KY-(@zr^j$EI46Z``MB*>A z$9hZgbqL>BOAmx^z{+Wp;Dx!2iBWn2ES}H>EI(c04vNt8cfBFOH1xL1pv$u{tutfx zmT&|kVRRAu|2{>}bbg_G#eu?VnuVoU_2;{MgzsNBqM|Jn z@bzv<8EM_D!Ltf^2I#aYhqo+4Y&qy~E`o%1REP=5PCF{0bUJoYuJx!RPP4E=1c=*T zkSpFxUA^we#D2dXot?p|e=3RN&E%Ql;FDj>D#42fzzXmrL0d0JtGZn3<}=D))QI59 zMhJtl7WuPETnJ{``PC-El#ZPK?XQ31ed#E`V*V{fFkH&cLv&iknazh)HYQL1&eva| zy>ix!vSs$(kDmVBXSd?#@p>btUvQ_tpgE$|+2_MjYVWq>7jyiXmbXJxj4~~h}2~|Uz;KMzQLK5#>r0%mPpImQ!XU*;Fv?+!c%(#4g{0R$ zo#|nfh}L1>JsUyL*R{#zZXv3vu~<$7yQ=&-9d!&z{iT@_O~{nAKcx1oYAm7N!%2ho zuyFPNQi)od0g#^Lphus*CJKsMoWS~do48*Z3Zz*C`L^e0frN;J|0Hn`A?)N1j-An_ zV1CE_sZP{1sA?wcl(L09z0}QiNDW)XQK@!0dH>2Dga}&)1Rc85kha9HFfK|(RXdNR zjxDQVnr0=xgS98mQGQHeV>^GQo3?!`CuiJJYC>TRr6gkM#-JPnD|@5LO3ngo+maYk zj+TyXj58UaPxv-l-t-o(>LmUsC;CdXs+rmL207+@H(?DUDIbhDcR5r>B|GeXl1{$L zFIa}q+n}PnRs!vGg6Y`oN+;t}8b`EOa7GC|S+LPhh%32Ec_4=suuIDTI}Rsfr#HXP z$IqR1-vxF&xAmNq&*DzQPo$)nIUl4<@Cd|%9z8iOd87%NOd9}UUaSb@1R2A_^2=4y z++Ve$X13=Kcd=v=KT;Xmt#|dyNPLW5z~$V%1Bke5XqlnFE`BH!R3ywEMWq^i#Z;YE zgeoyaP~VV;s3=m%H{Sti9riy($b|#mMtNV%d#Q^{Hf!E44qHka)g!O8e_BE;w*X$@ zNTfSmApuRboDvFLh`Dsv#J?=Uak+2=RK}sKMe)BBM)+G`cXAyu{@!~~h# zj8l?o7i|bXb-~z{){K0YM$#-;98|3RhZ;-PoHFSrtkOtqBvKCsqIu7bUuWhtY~*8P z?yf{`pS$V15^{6}p2ZcuCb@};5m^4DXNqKtH4Ev3L@Q2XcPMFJIVFc}rj8@18#1ZA zq-ws|=RRV$!?iymMB1O#@A`M+&kH}w0ph}sqNO+mEuwXrf{Ubr3;4SH%R2s<|G8uv z@a??kUflUF8>LGzW1^pmIGc=MSOvt9cu&x1%egh3OxBJQv^P}Rzohc^uj{u(6Er?< z$vaXP!dv=2k> zRNHC!3B(QZ^W-PqZ;bU%CE;O>a|7-EE7sp52H4hJFVT%F}pb~1gSugF)#$C35KT4dGJFSzHlJU$kUi(L9g ziu&2D=(&dx*pY{EJ3Ch){epCGDAI}Q-JuXH8l(uYM}3^d zskfvQDJa$cyYAZgEm{pqv}0*QNf1gRTcq_ZSzNy`WOW9JuZb{vgbabmKWu~w3XuN+ z!@|KY!pLIu)1sL0z_|x}dI`O#K0)KT_-+l@{)EPcafI zx$q-4KmL~-NH0)U4_n9df@OmN`&Ndefp)%9|NWRuV&A?NQ%WdgUv16EHj?0+mg`lB z%Kc8x|C=Yy;~s2)WczHwD9PjYCk-+?)|jLbWVySWjwYu_gIN?Hc7cW^`6}7iLs`uf z1WQ4gHkE6$9B>MrO$$EqrHeB1B*%1iT7Hr4>=EGs4;jjh(zD= zij{0sC#D4boMoWG*b1=x=pu|Aql3$DSDj|D11)Tf719)UF`Rw`E6j^RgfPeeO9h%4 zyLnBaGAo{o5|tY`t>HkT{b7Mv|DmL>u`COV05X8A-}w)-s6qVz99E>`p_N3P|5yW9S_03$77z5bNABc=

4-Br(tI&644Analx#Se>nxXTWo6F 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 literal 0 HcmV?d00001