From 301540c04271f8bc0458a095aaf7391517a0bdaf Mon Sep 17 00:00:00 2001 From: John Sharratt's Shared Account Date: Wed, 17 Aug 2022 17:45:48 +1000 Subject: [PATCH 1/4] Implemented shared memory for Wasmer in preparation for multithreading --- Cargo.lock | 1 + lib/api/src/js/export.rs | 6 + lib/api/src/js/externals/memory.rs | 35 +- lib/api/src/js/function_env.rs | 7 +- lib/api/src/js/imports.rs | 30 + lib/api/src/js/mod.rs | 6 + lib/api/src/js/native.rs | 1 - lib/api/src/js/store.rs | 5 + lib/api/src/sys/externals/memory.rs | 16 +- lib/api/src/sys/externals/memory_view.rs | 2 +- lib/api/src/sys/imports.rs | 29 +- lib/api/src/sys/mod.rs | 2 +- lib/cli/src/commands/run/wasi.rs | 3 +- .../src/translator/code_translator.rs | 31 +- lib/compiler/src/engine/resolver.rs | 2 +- lib/compiler/src/translator/environ.rs | 8 +- lib/types/Cargo.toml | 3 + lib/types/src/error.rs | 48 +- lib/types/src/lib.rs | 6 +- lib/types/src/memory.rs | 88 ++- lib/vm/src/instance/allocator.rs | 4 +- lib/vm/src/instance/mod.rs | 16 +- lib/vm/src/lib.rs | 7 +- lib/vm/src/memory.rs | 530 ++++++++++++------ lib/vm/src/store.rs | 25 + lib/vm/src/vmcontext.rs | 157 ++---- 26 files changed, 747 insertions(+), 321 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9328944bd83..04df81af3cd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3194,6 +3194,7 @@ dependencies = [ "enum-iterator", "enumset", "indexmap", + "memoffset", "more-asserts", "rkyv", "serde", diff --git a/lib/api/src/js/export.rs b/lib/api/src/js/export.rs index f396e617c53..0241899019f 100644 --- a/lib/api/src/js/export.rs +++ b/lib/api/src/js/export.rs @@ -7,6 +7,7 @@ use std::fmt; use wasm_bindgen::{JsCast, JsValue}; use wasmer_types::{ExternType, FunctionType, GlobalType, MemoryType, TableType}; +/// Represents linear memory that is managed by the javascript runtime #[derive(Clone, Debug, PartialEq)] pub struct VMMemory { pub(crate) memory: Memory, @@ -20,6 +21,11 @@ impl VMMemory { pub(crate) fn new(memory: Memory, ty: MemoryType) -> Self { Self { memory, ty } } + + /// Attempts to clone this memory (if its clonable) + pub(crate) fn try_clone(&self) -> Option { + Some(self.clone()) + } } #[derive(Clone, Debug, PartialEq)] diff --git a/lib/api/src/js/externals/memory.rs b/lib/api/src/js/externals/memory.rs index 6c5229ce92f..2b66d8ed79b 100644 --- a/lib/api/src/js/externals/memory.rs +++ b/lib/api/src/js/externals/memory.rs @@ -6,7 +6,6 @@ use crate::js::{MemoryAccessError, MemoryType}; use std::marker::PhantomData; use std::mem::MaybeUninit; use std::slice; -use thiserror::Error; #[cfg(feature = "tracing")] use tracing::warn; @@ -16,22 +15,7 @@ use wasmer_types::Pages; use super::MemoryView; -/// Error type describing things that can go wrong when operating on Wasm Memories. -#[derive(Error, Debug, Clone, PartialEq, Hash)] -pub enum MemoryError { - /// The operation would cause the size of the memory to exceed the maximum or would cause - /// an overflow leading to unindexable memory. - #[error("The memory could not grow: current size {} pages, requested increase: {} pages", current.0, attempted_delta.0)] - CouldNotGrow { - /// The current size in pages. - current: Pages, - /// The attempted amount to grow by in pages. - attempted_delta: Pages, - }, - /// A user defined error value, used for error cases not listed above. - #[error("A user-defined error occurred: {0}")] - Generic(String), -} +pub use wasmer_types::MemoryError; #[wasm_bindgen] extern "C" { @@ -116,6 +100,17 @@ impl Memory { Ok(Self::from_vm_export(store, vm_memory)) } + /// Creates a new host `Memory` from provided JavaScript memory. + pub fn new_raw(store: &mut impl AsStoreMut, js_memory: js_sys::WebAssembly::Memory, ty: MemoryType) -> Result { + let vm_memory = VMMemory::new(js_memory, ty); + Ok(Self::from_vm_export(store, vm_memory)) + } + + /// Create a memory object from an existing memory and attaches it to the store + pub fn new_from_existing(new_store: &mut impl AsStoreMut, memory: VMMemory) -> Self { + Self::from_vm_export(new_store, memory) + } + /// Returns the [`MemoryType`] of the `Memory`. /// /// # Example @@ -210,6 +205,12 @@ impl Memory { } } + /// Attempts to clone this memory (if its clonable) + pub fn try_clone(&self, store: &impl AsStoreRef) -> Option { + let mem = self.handle.get(store.as_store_ref().objects()); + mem.try_clone() + } + /// Checks whether this `Global` can be used with the given context. pub fn is_from_store(&self, store: &impl AsStoreRef) -> bool { self.handle.store_id() == store.as_store_ref().objects().id() diff --git a/lib/api/src/js/function_env.rs b/lib/api/src/js/function_env.rs index 1705f1a4713..524fc7a2dbe 100644 --- a/lib/api/src/js/function_env.rs +++ b/lib/api/src/js/function_env.rs @@ -36,7 +36,7 @@ impl FunctionEnv { } /// Get the data as reference - pub fn as_ref<'a>(&self, store: &'a impl AsStoreMut) -> &'a T + pub fn as_ref<'a>(&self, store: &'a impl AsStoreRef) -> &'a T where T: Any + Send + 'static + Sized, { @@ -112,6 +112,11 @@ impl FunctionEnvMut<'_, T> { self.func_env.as_mut(&mut self.store_mut) } + /// Borrows a new immmutable reference + pub fn as_ref(&self) -> FunctionEnv { + self.func_env.clone() + } + /// Borrows a new mutable reference pub fn as_mut<'a>(&'a mut self) -> FunctionEnvMut<'a, T> { FunctionEnvMut { diff --git a/lib/api/src/js/imports.rs b/lib/api/src/js/imports.rs index 95a9930995c..d3b2c42efa5 100644 --- a/lib/api/src/js/imports.rs +++ b/lib/api/src/js/imports.rs @@ -174,6 +174,36 @@ impl Imports { } imports } + + /// Iterates through all the imports in this structure + pub fn iter<'a>(&'a self) -> ImportsIterator<'a> { + ImportsIterator::new(self) + } +} + +pub struct ImportsIterator<'a> { + iter: std::collections::hash_map::Iter<'a, (String, String), Extern> +} + +impl<'a> ImportsIterator<'a> +{ + fn new(imports: &'a Imports) -> Self { + let iter = imports.map.iter(); + Self { iter } + } +} + +impl<'a> Iterator +for ImportsIterator<'a> { + type Item = (&'a str, &'a str, &'a Extern); + + fn next(&mut self) -> Option { + self.iter + .next() + .map(|(k, v)| { + (k.0.as_str(), k.1.as_str(), v) + }) + } } impl IntoIterator for &Imports { diff --git a/lib/api/src/js/mod.rs b/lib/api/src/js/mod.rs index 14594839a15..a88509086e0 100644 --- a/lib/api/src/js/mod.rs +++ b/lib/api/src/js/mod.rs @@ -73,6 +73,12 @@ pub use crate::js::types::{ pub use crate::js::value::Value; pub use crate::js::value::Value as Val; +pub mod vm { + //! The `vm` module re-exports wasmer-vm types. + + pub use crate::js::export::VMMemory; +} + pub use wasmer_types::is_wasm; pub use wasmer_types::{ Bytes, ExportIndex, GlobalInit, LocalFunctionIndex, Pages, ValueType, WASM_MAX_PAGES, diff --git a/lib/api/src/js/native.rs b/lib/api/src/js/native.rs index 0e9066edac8..69b350652a1 100644 --- a/lib/api/src/js/native.rs +++ b/lib/api/src/js/native.rs @@ -11,7 +11,6 @@ use std::marker::PhantomData; use crate::js::externals::Function; use crate::js::store::{AsStoreMut, AsStoreRef, StoreHandle}; -use crate::js::FunctionEnv; use crate::js::{FromToNativeWasmType, RuntimeError, WasmTypeList}; // use std::panic::{catch_unwind, AssertUnwindSafe}; use crate::js::export::VMFunction; diff --git a/lib/api/src/js/store.rs b/lib/api/src/js/store.rs index b6c10e84627..66d6d58ec8c 100644 --- a/lib/api/src/js/store.rs +++ b/lib/api/src/js/store.rs @@ -263,6 +263,11 @@ mod objects { self.id } + /// Sets the ID of this store + pub fn set_id(&mut self, id: StoreId) { + self.id = id; + } + /// Returns a pair of mutable references from two handles. /// /// Panics if both handles point to the same object. diff --git a/lib/api/src/sys/externals/memory.rs b/lib/api/src/sys/externals/memory.rs index c0db55fa8af..64ab9a136e2 100644 --- a/lib/api/src/sys/externals/memory.rs +++ b/lib/api/src/sys/externals/memory.rs @@ -10,7 +10,7 @@ use std::mem::MaybeUninit; use std::slice; #[cfg(feature = "tracing")] use tracing::warn; -use wasmer_types::Pages; +use wasmer_types::{Pages, LinearMemory}; use wasmer_vm::{InternalStoreHandle, MemoryError, StoreHandle, VMExtern, VMMemory}; use super::MemoryView; @@ -60,6 +60,13 @@ impl Memory { }) } + /// Create a memory object from an existing memory and attaches it to the store + pub fn new_from_existing(new_store: &mut impl AsStoreMut, memory: VMMemory) -> Self { + Self { + handle: StoreHandle::new(new_store.objects_mut(), memory) + } + } + /// Returns the [`MemoryType`] of the `Memory`. /// /// # Example @@ -142,6 +149,13 @@ impl Memory { self.handle.store_id() == store.as_store_ref().objects().id() } + /// Attempts to clone this memory (if its clonable) + pub fn try_clone(&self, store: &impl AsStoreRef) -> Option { + let mem = self.handle.get(store.as_store_ref().objects()); + mem.try_clone() + .map(|mem| mem.into()) + } + pub(crate) fn to_vm_extern(&self) -> VMExtern { VMExtern::Memory(self.handle.internal_handle()) } diff --git a/lib/api/src/sys/externals/memory_view.rs b/lib/api/src/sys/externals/memory_view.rs index 891700c0854..a638acb6b97 100644 --- a/lib/api/src/sys/externals/memory_view.rs +++ b/lib/api/src/sys/externals/memory_view.rs @@ -4,7 +4,7 @@ use std::convert::TryInto; use std::marker::PhantomData; use std::mem::MaybeUninit; use std::slice; -use wasmer_types::Pages; +use wasmer_types::{Pages, LinearMemory}; use super::memory::MemoryBuffer; use super::Memory; diff --git a/lib/api/src/sys/imports.rs b/lib/api/src/sys/imports.rs index c9a9f22b917..80e51f7367d 100644 --- a/lib/api/src/sys/imports.rs +++ b/lib/api/src/sys/imports.rs @@ -1,11 +1,12 @@ //! The import module contains the implementation data structures and helper functions used to //! manipulate and access a wasm module's imports including memories, tables, globals, and //! functions. -use crate::{Exports, Extern, Module}; +use crate::{Exports, Extern, Module, AsStoreMut, Memory}; use std::collections::HashMap; use std::fmt; use wasmer_compiler::LinkError; use wasmer_types::ImportError; +use wasmer_vm::VMSharedMemory; /// All of the import data used when instantiating. /// @@ -111,6 +112,32 @@ impl Imports { .insert((ns.to_string(), name.to_string()), val.into()); } + /// Imports (any) shared memory into the imports. + /// (if the module does not import memory then this function is ignored) + pub fn import_shared_memory(&mut self, module: &Module, store: &mut impl AsStoreMut) -> Option { + // Determine if shared memory needs to be created and imported + let shared_memory = module + .imports() + .memories() + .next() + .map(|a| *a.ty()) + .map(|ty| { + let style = store + .as_store_ref() + .tunables() + .memory_style(&ty); + VMSharedMemory::new(&ty, &style) + .unwrap() + }); + + if let Some(memory) = shared_memory { + self.define("env", "memory", Memory::new_from_existing(store, memory.clone().into())); + Some(memory) + } else { + None + } + } + /// Returns the contents of a namespace as an `Exports`. /// /// Returns `None` if the namespace doesn't exist. diff --git a/lib/api/src/sys/mod.rs b/lib/api/src/sys/mod.rs index 1c272a2a60e..e88c05b7a8c 100644 --- a/lib/api/src/sys/mod.rs +++ b/lib/api/src/sys/mod.rs @@ -58,7 +58,7 @@ pub mod vm { pub use wasmer_vm::{ MemoryError, MemoryStyle, TableStyle, VMExtern, VMMemory, VMMemoryDefinition, VMTable, - VMTableDefinition, + VMTableDefinition, VMOwnedMemory, VMSharedMemory }; } diff --git a/lib/cli/src/commands/run/wasi.rs b/lib/cli/src/commands/run/wasi.rs index 2fd31666bed..af971543696 100644 --- a/lib/cli/src/commands/run/wasi.rs +++ b/lib/cli/src/commands/run/wasi.rs @@ -96,7 +96,8 @@ impl Wasi { is_wasix_module(module), std::sync::atomic::Ordering::Release, ); - let import_object = import_object_for_all_wasi_versions(store, &wasi_env.env); + let mut import_object = import_object_for_all_wasi_versions(store, &wasi_env.env); + import_object.import_shared_memory(module, store); let instance = Instance::new(store, module, &import_object)?; let memory = instance.exports.get_memory("memory")?; wasi_env.data_mut(store).set_memory(memory.clone()); diff --git a/lib/compiler-cranelift/src/translator/code_translator.rs b/lib/compiler-cranelift/src/translator/code_translator.rs index c750d6c3231..d432f074361 100644 --- a/lib/compiler-cranelift/src/translator/code_translator.rs +++ b/lib/compiler-cranelift/src/translator/code_translator.rs @@ -1063,15 +1063,24 @@ pub fn translate_operator( assert!(builder.func.dfg.value_type(expected) == implied_ty); // `fn translate_atomic_wait` can inspect the type of `expected` to figure out what // code it needs to generate, if it wants. - let res = environ.translate_atomic_wait( + match environ.translate_atomic_wait( builder.cursor(), heap_index, heap, addr, expected, timeout, - )?; - state.push1(res); + ) { + Ok(res) => { + state.push1(res); + }, + Err(wasmer_types::WasmError::Unsupported(_err)) => { + // If multiple threads hit a mutex then the function will fail + builder.ins().trap(ir::TrapCode::UnreachableCodeReached); + state.reachable = false; + }, + Err(err) => { return Err(err); } + }; } Operator::MemoryAtomicNotify { memarg } => { let heap_index = MemoryIndex::from_u32(memarg.memory); @@ -1079,9 +1088,19 @@ pub fn translate_operator( let count = state.pop1(); // 32 (fixed) let addr = state.pop1(); // 32 (fixed) let addr = fold_atomic_mem_addr(addr, memarg, I32, builder); - let res = - environ.translate_atomic_notify(builder.cursor(), heap_index, heap, addr, count)?; - state.push1(res); + match environ.translate_atomic_notify(builder.cursor(), heap_index, heap, addr, count) + { + Ok(res) => { + state.push1(res); + }, + Err(wasmer_types::WasmError::Unsupported(_err)) => { + // Simple return a zero as this function is needed for the __wasi_init_memory function + // but the equivalent notify.wait will not be called (as only one thread calls __start) + // hence these atomic operations are not needed + state.push1(builder.ins().iconst(I32, i64::from(0))); + }, + Err(err) => { return Err(err); } + }; } Operator::I32AtomicLoad { memarg } => { translate_atomic_load(I32, I32, memarg, builder, state, environ)? diff --git a/lib/compiler/src/engine/resolver.rs b/lib/compiler/src/engine/resolver.rs index 207380bb819..94d40a50229 100644 --- a/lib/compiler/src/engine/resolver.rs +++ b/lib/compiler/src/engine/resolver.rs @@ -4,7 +4,7 @@ use crate::LinkError; use more_asserts::assert_ge; use wasmer_types::entity::{BoxedSlice, EntityRef, PrimaryMap}; use wasmer_types::{ - ExternType, FunctionIndex, ImportError, ImportIndex, MemoryIndex, ModuleInfo, TableIndex, + ExternType, FunctionIndex, ImportError, ImportIndex, MemoryIndex, ModuleInfo, TableIndex, LinearMemory, }; use wasmer_vm::{ diff --git a/lib/compiler/src/translator/environ.rs b/lib/compiler/src/translator/environ.rs index e172d92b063..1615b87bcf8 100644 --- a/lib/compiler/src/translator/environ.rs +++ b/lib/compiler/src/translator/environ.rs @@ -1,7 +1,6 @@ // This file contains code from external sources. // Attributions: https://github.com/wasmerio/wasmer/blob/master/ATTRIBUTIONS.md use super::state::ModuleTranslationState; -use crate::lib::std::borrow::ToOwned; use crate::lib::std::string::ToString; use crate::lib::std::{boxed::Box, string::String, vec::Vec}; use crate::translate_module; @@ -15,7 +14,7 @@ use wasmer_types::{ LocalFunctionIndex, MemoryIndex, MemoryType, ModuleInfo, SignatureIndex, TableIndex, TableInitializer, TableType, }; -use wasmer_types::{WasmError, WasmResult}; +use wasmer_types::WasmResult; /// Contains function data: bytecode and its offset in the module. #[derive(Hash)] @@ -254,11 +253,6 @@ impl<'data> ModuleEnvironment<'data> { } pub(crate) fn declare_memory(&mut self, memory: MemoryType) -> WasmResult<()> { - if memory.shared { - return Err(WasmError::Unsupported( - "shared memories are not supported yet".to_owned(), - )); - } self.module.memories.push(memory); Ok(()) } diff --git a/lib/types/Cargo.toml b/lib/types/Cargo.toml index e10aebf87df..3ee22d50426 100644 --- a/lib/types/Cargo.toml +++ b/lib/types/Cargo.toml @@ -21,6 +21,9 @@ enum-iterator = "0.7.0" target-lexicon = { version = "0.12.2", default-features = false } enumset = "1.0" +[dev-dependencies] +memoffset = "0.6" + [features] default = ["std"] std = [] diff --git a/lib/types/src/error.rs b/lib/types/src/error.rs index 53555d6239c..0e0a1eb12fd 100644 --- a/lib/types/src/error.rs +++ b/lib/types/src/error.rs @@ -1,5 +1,5 @@ //! The WebAssembly possible errors -use crate::ExternType; +use crate::{ExternType, Pages}; use std::io; use thiserror::Error; @@ -37,6 +37,48 @@ pub enum DeserializeError { Compiler(#[from] CompileError), } +/// Error type describing things that can go wrong when operating on Wasm Memories. +#[derive(Error, Debug, Clone, PartialEq, Hash)] +pub enum MemoryError { + /// Low level error with mmap. + #[error("Error when allocating memory: {0}")] + Region(String), + /// The operation would cause the size of the memory to exceed the maximum or would cause + /// an overflow leading to unindexable memory. + #[error("The memory could not grow: current size {} pages, requested increase: {} pages", current.0, attempted_delta.0)] + CouldNotGrow { + /// The current size in pages. + current: Pages, + /// The attempted amount to grow by in pages. + attempted_delta: Pages, + }, + /// The operation would cause the size of the memory size exceed the maximum. + #[error("The memory is invalid because {}", reason)] + InvalidMemory { + /// The reason why the provided memory is invalid. + reason: String, + }, + /// Caller asked for more minimum memory than we can give them. + #[error("The minimum requested ({} pages) memory is greater than the maximum allowed memory ({} pages)", min_requested.0, max_allowed.0)] + MinimumMemoryTooLarge { + /// The number of pages requested as the minimum amount of memory. + min_requested: Pages, + /// The maximum amount of memory we can allocate. + max_allowed: Pages, + }, + /// Caller asked for a maximum memory greater than we can give them. + #[error("The maximum requested memory ({} pages) is greater than the maximum allowed memory ({} pages)", max_requested.0, max_allowed.0)] + MaximumMemoryTooLarge { + /// The number of pages requested as the maximum amount of memory. + max_requested: Pages, + /// The number of pages requested as the maximum amount of memory. + max_allowed: Pages, + }, + /// A user defined error value, used for error cases not listed above. + #[error("A user-defined error occurred: {0}")] + Generic(String), +} + /// An ImportError. /// /// Note: this error is not standard to WebAssembly, but it's @@ -52,6 +94,10 @@ pub enum ImportError { /// This error occurs when an import was expected but not provided. #[error("unknown import. Expected {0:?}")] UnknownImport(ExternType), + + /// Memory Error + #[error("memory error. {0}")] + MemoryError(String), } /// An error while preinstantiating a module. diff --git a/lib/types/src/lib.rs b/lib/types/src/lib.rs index 3fcfbe9504d..3f71079c94c 100644 --- a/lib/types/src/lib.rs +++ b/lib/types/src/lib.rs @@ -77,7 +77,7 @@ pub use crate::compilation::target::{ pub use crate::serialize::{MetadataHeader, SerializableCompilation, SerializableModule}; pub use error::{ CompileError, DeserializeError, ImportError, MiddlewareError, ParseCpuFeatureError, - PreInstantiationError, SerializeError, WasmError, WasmResult, + PreInstantiationError, SerializeError, WasmError, WasmResult, MemoryError, }; /// The entity module, with common helpers for Rust structures @@ -103,7 +103,9 @@ pub use types::{ pub use value::{RawValue, ValueType}; pub use crate::libcalls::LibCall; -pub use crate::memory::MemoryStyle; +pub use crate::memory::{ + MemoryStyle, LinearMemory, VMMemoryDefinition +}; pub use crate::table::TableStyle; pub use crate::trapcode::TrapCode; pub use crate::vmoffsets::{TargetSharedSignatureIndex, VMBuiltinFunctionIndex, VMOffsets}; diff --git a/lib/types/src/memory.rs b/lib/types/src/memory.rs index fafcb955a8a..6ebac15e7e8 100644 --- a/lib/types/src/memory.rs +++ b/lib/types/src/memory.rs @@ -2,12 +2,16 @@ use crate::{Pages, ValueType}; use rkyv::{Archive, Deserialize as RkyvDeserialize, Serialize as RkyvSerialize}; #[cfg(feature = "enable-serde")] use serde::{Deserialize, Serialize}; +use core::ptr::NonNull; use std::convert::{TryFrom, TryInto}; use std::iter::Sum; use std::ops::{Add, AddAssign}; +use super::MemoryType; +use super::MemoryError; + /// Implementation styles for WebAssembly linear memory. -#[derive(Debug, Clone, PartialEq, Eq, Hash, RkyvSerialize, RkyvDeserialize, Archive)] +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, RkyvSerialize, RkyvDeserialize, Archive)] #[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))] #[archive(as = "Self")] pub enum MemoryStyle { @@ -84,6 +88,9 @@ pub unsafe trait MemorySize: Copy { /// Zero value used for `WasmPtr::is_null`. const ZERO: Self::Offset; + /// One value used for counting. + const ONE: Self::Offset; + /// Convert an `Offset` to a `Native`. fn offset_to_native(offset: Self::Offset) -> Self::Native; @@ -98,6 +105,7 @@ unsafe impl MemorySize for Memory32 { type Offset = u32; type Native = i32; const ZERO: Self::Offset = 0; + const ONE: Self::Offset = 1; fn offset_to_native(offset: Self::Offset) -> Self::Native { offset as Self::Native } @@ -113,6 +121,7 @@ unsafe impl MemorySize for Memory64 { type Offset = u64; type Native = i64; const ZERO: Self::Offset = 0; + const ONE: Self::Offset = 1; fn offset_to_native(offset: Self::Offset) -> Self::Native { offset as Self::Native } @@ -120,3 +129,80 @@ unsafe impl MemorySize for Memory64 { native as Self::Offset } } + +/// Represents memory that is used by the WebAsssembly module +pub trait LinearMemory +where Self: std::fmt::Debug + Send +{ + /// Returns the type for this memory. + fn ty(&self) -> MemoryType; + + /// Returns the size of hte memory in pages + fn size(&self) -> Pages; + + /// Returns the memory style for this memory. + fn style(&self) -> MemoryStyle; + + /// Grow memory by the specified amount of wasm pages. + /// + /// Returns `None` if memory can't be grown by the specified amount + /// of wasm pages. + fn grow(&mut self, delta: Pages) -> Result; + + /// Return a `VMMemoryDefinition` for exposing the memory to compiled wasm code. + fn vmmemory(&self) -> NonNull; + + /// Attempts to clone this memory (if its clonable) + fn try_clone(&self) -> Option>; +} + +/// The fields compiled code needs to access to utilize a WebAssembly linear +/// memory defined within the instance, namely the start address and the +/// size in bytes. +#[derive(Debug, Copy, Clone)] +#[repr(C)] +pub struct VMMemoryDefinition { + /// The start address which is always valid, even if the memory grows. + pub base: *mut u8, + + /// The current logical size of this linear memory in bytes. + pub current_length: usize, +} + +/// # Safety +/// This data is safe to share between threads because it's plain data that +/// is the user's responsibility to synchronize. +unsafe impl Send for VMMemoryDefinition {} +/// # Safety +/// This data is safe to share between threads because it's plain data that +/// is the user's responsibility to synchronize. And it's `Copy` so there's +/// really no difference between passing it by reference or by value as far as +/// correctness in a multi-threaded context is concerned. +unsafe impl Sync for VMMemoryDefinition {} + +#[cfg(test)] +mod test_vmmemory_definition { + use super::VMMemoryDefinition; + use crate::VMOffsets; + use memoffset::offset_of; + use std::mem::size_of; + use crate::ModuleInfo; + + #[test] + fn check_vmmemory_definition_offsets() { + let module = ModuleInfo::new(); + let offsets = VMOffsets::new(size_of::<*mut u8>() as u8, &module); + assert_eq!( + size_of::(), + usize::from(offsets.size_of_vmmemory_definition()) + ); + assert_eq!( + offset_of!(VMMemoryDefinition, base), + usize::from(offsets.vmmemory_definition_base()) + ); + assert_eq!( + offset_of!(VMMemoryDefinition, current_length), + usize::from(offsets.vmmemory_definition_current_length()) + ); + } +} diff --git a/lib/vm/src/instance/allocator.rs b/lib/vm/src/instance/allocator.rs index 29804c7460e..e00625f5e8c 100644 --- a/lib/vm/src/instance/allocator.rs +++ b/lib/vm/src/instance/allocator.rs @@ -1,11 +1,11 @@ use super::{Instance, InstanceHandle}; -use crate::vmcontext::{VMMemoryDefinition, VMTableDefinition}; +use crate::vmcontext::VMTableDefinition; use std::alloc::{self, Layout}; use std::convert::TryFrom; use std::mem; use std::ptr::{self, NonNull}; use wasmer_types::entity::EntityRef; -use wasmer_types::VMOffsets; +use wasmer_types::{VMOffsets, VMMemoryDefinition}; use wasmer_types::{LocalMemoryIndex, LocalTableIndex, ModuleInfo}; /// This is an intermediate type that manages the raw allocation and diff --git a/lib/vm/src/instance/mod.rs b/lib/vm/src/instance/mod.rs index bf0be8a295b..ab11b2b5501 100644 --- a/lib/vm/src/instance/mod.rs +++ b/lib/vm/src/instance/mod.rs @@ -10,14 +10,13 @@ mod allocator; use crate::export::VMExtern; use crate::imports::Imports; -use crate::memory::MemoryError; use crate::store::{InternalStoreHandle, StoreObjects}; use crate::table::TableElement; use crate::trap::{catch_traps, Trap, TrapCode}; use crate::vmcontext::{ VMBuiltinFunctionsArray, VMCallerCheckedAnyfunc, VMContext, VMFunctionContext, - VMFunctionImport, VMFunctionKind, VMGlobalDefinition, VMGlobalImport, VMMemoryDefinition, - VMMemoryImport, VMSharedSignatureIndex, VMTableDefinition, VMTableImport, VMTrampoline, + VMFunctionImport, VMFunctionKind, VMGlobalDefinition, VMGlobalImport, + VMMemoryImport, VMSharedSignatureIndex, VMTableDefinition, VMTableImport, VMTrampoline, memory_copy, memory_fill, }; use crate::{FunctionBodyPtr, MaybeInstanceOwned, TrapHandlerFn, VMFunctionBody}; use crate::{VMFuncRef, VMFunction, VMGlobal, VMMemory, VMTable}; @@ -37,7 +36,8 @@ use wasmer_types::entity::{packed_option::ReservedValue, BoxedSlice, EntityRef, use wasmer_types::{ DataIndex, DataInitializer, ElemIndex, ExportIndex, FunctionIndex, GlobalIndex, GlobalInit, LocalFunctionIndex, LocalGlobalIndex, LocalMemoryIndex, LocalTableIndex, MemoryIndex, - ModuleInfo, Pages, SignatureIndex, TableIndex, TableInitializer, VMOffsets, + ModuleInfo, Pages, SignatureIndex, TableIndex, TableInitializer, VMOffsets, LinearMemory, + MemoryError, VMMemoryDefinition }; /// A WebAssembly instance. @@ -632,7 +632,7 @@ impl Instance { let memory = self.memory(memory_index); // The following memory copy is not synchronized and is not atomic: - unsafe { memory.memory_copy(dst, src, len) } + unsafe { memory_copy(&memory, dst, src, len) } } /// Perform a `memory.copy` on an imported memory. @@ -646,7 +646,7 @@ impl Instance { let import = self.imported_memory(memory_index); let memory = unsafe { import.definition.as_ref() }; // The following memory copy is not synchronized and is not atomic: - unsafe { memory.memory_copy(dst, src, len) } + unsafe { memory_copy(memory, dst, src, len) } } /// Perform the `memory.fill` operation on a locally defined memory. @@ -663,7 +663,7 @@ impl Instance { ) -> Result<(), Trap> { let memory = self.memory(memory_index); // The following memory fill is not synchronized and is not atomic: - unsafe { memory.memory_fill(dst, val, len) } + unsafe { memory_fill(&memory, dst, val, len) } } /// Perform the `memory.fill` operation on an imported memory. @@ -681,7 +681,7 @@ impl Instance { let import = self.imported_memory(memory_index); let memory = unsafe { import.definition.as_ref() }; // The following memory fill is not synchronized and is not atomic: - unsafe { memory.memory_fill(dst, val, len) } + unsafe { memory_fill(memory, dst, val, len) } } /// Performs the `memory.init` operation. diff --git a/lib/vm/src/lib.rs b/lib/vm/src/lib.rs index 1b30f1e61e4..9b9903c0e80 100644 --- a/lib/vm/src/lib.rs +++ b/lib/vm/src/lib.rs @@ -45,7 +45,8 @@ pub use crate::function_env::VMFunctionEnvironment; pub use crate::global::*; pub use crate::imports::Imports; pub use crate::instance::{InstanceAllocator, InstanceHandle}; -pub use crate::memory::{MemoryError, VMMemory}; +pub use crate::memory::{VMMemory, VMOwnedMemory, VMSharedMemory}; +pub use wasmer_types::MemoryError; pub use crate::mmap::Mmap; pub use crate::probestack::PROBESTACK; pub use crate::sig_registry::SignatureRegistry; @@ -56,11 +57,11 @@ pub use crate::table::{TableElement, VMTable}; pub use crate::trap::*; pub use crate::vmcontext::{ VMCallerCheckedAnyfunc, VMContext, VMDynamicFunctionContext, VMFunctionContext, - VMFunctionImport, VMFunctionKind, VMGlobalDefinition, VMGlobalImport, VMMemoryDefinition, + VMFunctionImport, VMFunctionKind, VMGlobalDefinition, VMGlobalImport, VMMemoryImport, VMSharedSignatureIndex, VMTableDefinition, VMTableImport, VMTrampoline, }; pub use wasmer_types::LibCall; -pub use wasmer_types::MemoryStyle; +pub use wasmer_types::{MemoryStyle, VMMemoryDefinition}; use wasmer_types::RawValue; pub use wasmer_types::TableStyle; pub use wasmer_types::{TargetSharedSignatureIndex, VMBuiltinFunctionIndex, VMOffsets}; diff --git a/lib/vm/src/memory.rs b/lib/vm/src/memory.rs index 787d5f390b5..d67ec52c4f4 100644 --- a/lib/vm/src/memory.rs +++ b/lib/vm/src/memory.rs @@ -5,88 +5,173 @@ //! //! `Memory` is to WebAssembly linear memories what `Table` is to WebAssembly tables. -use crate::vmcontext::VMMemoryDefinition; use crate::{mmap::Mmap, store::MaybeInstanceOwned}; use more_asserts::assert_ge; use std::cell::UnsafeCell; use std::convert::TryInto; use std::ptr::NonNull; -use thiserror::Error; -use wasmer_types::{Bytes, MemoryStyle, MemoryType, Pages}; - -/// Error type describing things that can go wrong when operating on Wasm Memories. -#[derive(Error, Debug, Clone, Eq, PartialEq, Hash)] -pub enum MemoryError { - /// Low level error with mmap. - #[error("Error when allocating memory: {0}")] - Region(String), - /// The operation would cause the size of the memory to exceed the maximum or would cause - /// an overflow leading to unindexable memory. - #[error("The memory could not grow: current size {} pages, requested increase: {} pages", current.0, attempted_delta.0)] - CouldNotGrow { - /// The current size in pages. - current: Pages, - /// The attempted amount to grow by in pages. - attempted_delta: Pages, - }, - /// The operation would cause the size of the memory size exceed the maximum. - #[error("The memory is invalid because {}", reason)] - InvalidMemory { - /// The reason why the provided memory is invalid. - reason: String, - }, - /// Caller asked for more minimum memory than we can give them. - #[error("The minimum requested ({} pages) memory is greater than the maximum allowed memory ({} pages)", min_requested.0, max_allowed.0)] - MinimumMemoryTooLarge { - /// The number of pages requested as the minimum amount of memory. - min_requested: Pages, - /// The maximum amount of memory we can allocate. - max_allowed: Pages, - }, - /// Caller asked for a maximum memory greater than we can give them. - #[error("The maximum requested memory ({} pages) is greater than the maximum allowed memory ({} pages)", max_requested.0, max_allowed.0)] - MaximumMemoryTooLarge { - /// The number of pages requested as the maximum amount of memory. - max_requested: Pages, - /// The number of pages requested as the maximum amount of memory. - max_allowed: Pages, - }, - /// A user defined error value, used for error cases not listed above. - #[error("A user-defined error occurred: {0}")] - Generic(String), +use std::sync::{RwLock, Arc}; +use wasmer_types::{Bytes, MemoryStyle, MemoryType, Pages, MemoryError, LinearMemory, VMMemoryDefinition}; + +// The memory mapped area +#[derive(Debug)] +struct WasmMmap { + // Our OS allocation of mmap'd memory. + alloc: Mmap, + // The current logical size in wasm pages of this linear memory. + size: Pages, + /// The owned memory definition used by the generated code + vm_memory_definition: MaybeInstanceOwned, } -/// A linear memory instance. -pub struct VMMemory { - // The underlying allocation. - mmap: WasmMmap, +impl WasmMmap +{ + fn get_vm_memory_definition(&self) -> NonNull { + self.vm_memory_definition.as_ptr() + } + + fn size(&self) -> Pages { + unsafe { + let md_ptr = self.get_vm_memory_definition(); + let md = md_ptr.as_ref(); + Bytes::from(md.current_length).try_into().unwrap() + } + } + + fn grow(&mut self, delta: Pages, conf: VMMemoryConfig) -> Result { + // Optimization of memory.grow 0 calls. + if delta.0 == 0 { + return Ok(self.size); + } + + let new_pages = self + .size + .checked_add(delta) + .ok_or(MemoryError::CouldNotGrow { + current: self.size, + attempted_delta: delta, + })?; + let prev_pages = self.size; + + if let Some(maximum) = conf.maximum { + if new_pages > maximum { + return Err(MemoryError::CouldNotGrow { + current: self.size, + attempted_delta: delta, + }); + } + } + + // Wasm linear memories are never allowed to grow beyond what is + // indexable. If the memory has no maximum, enforce the greatest + // limit here. + if new_pages >= Pages::max_value() { + // Linear memory size would exceed the index range. + return Err(MemoryError::CouldNotGrow { + current: self.size, + attempted_delta: delta, + }); + } + let delta_bytes = delta.bytes().0; + let prev_bytes = prev_pages.bytes().0; + let new_bytes = new_pages.bytes().0; + + if new_bytes > self.alloc.len() - conf.offset_guard_size { + // If the new size is within the declared maximum, but needs more memory than we + // have on hand, it's a dynamic heap and it can move. + let guard_bytes = conf.offset_guard_size; + let request_bytes = + new_bytes + .checked_add(guard_bytes) + .ok_or_else(|| MemoryError::CouldNotGrow { + current: new_pages, + attempted_delta: Bytes(guard_bytes).try_into().unwrap(), + })?; + + let mut new_mmap = + Mmap::accessible_reserved(new_bytes, request_bytes).map_err(MemoryError::Region)?; + + let copy_len = self.alloc.len() - conf.offset_guard_size; + new_mmap.as_mut_slice()[..copy_len] + .copy_from_slice(&self.alloc.as_slice()[..copy_len]); + + self.alloc = new_mmap; + } else if delta_bytes > 0 { + // Make the newly allocated pages accessible. + self + .alloc + .make_accessible(prev_bytes, delta_bytes) + .map_err(MemoryError::Region)?; + } + + self.size = new_pages; + + // update memory definition + unsafe { + let mut md_ptr = self.vm_memory_definition.as_ptr(); + let md = md_ptr.as_mut(); + md.current_length = new_pages.bytes().0; + md.base = self.alloc.as_mut_ptr() as _; + } + + Ok(prev_pages) + } +} + +/// A linear memory instance. +#[derive(Debug, Clone)] +struct VMMemoryConfig { // The optional maximum size in wasm pages of this linear memory. maximum: Option, - /// The WebAssembly linear memory description. memory: MemoryType, - /// Our chosen implementation style. style: MemoryStyle, - // Size in bytes of extra guard pages after the end to optimize loads and stores with // constant offsets. offset_guard_size: usize, +} - /// The owned memory definition used by the generated code - vm_memory_definition: MaybeInstanceOwned, +impl VMMemoryConfig +{ + fn ty(&self, minimum: Pages) -> MemoryType { + let mut out = self.memory; + out.minimum = minimum; + + out + } + + fn style(&self) -> MemoryStyle { + self.style + } } +/// A linear memory instance. #[derive(Debug)] -struct WasmMmap { - // Our OS allocation of mmap'd memory. - alloc: Mmap, - // The current logical size in wasm pages of this linear memory. - size: Pages, +pub struct VMOwnedMemory { + // The underlying allocation. + mmap: WasmMmap, + // Configuration of this memory + config: VMMemoryConfig, } -impl VMMemory { +unsafe impl Send for VMOwnedMemory { } +unsafe impl Sync for VMOwnedMemory { } + +/// A shared linear memory instance. +#[derive(Debug, Clone)] +pub struct VMSharedMemory { + // The underlying allocation. + mmap: Arc>, + // Configuration of this memory + config: VMMemoryConfig, +} + +unsafe impl Send for VMSharedMemory { } +unsafe impl Sync for VMSharedMemory { } + +impl VMOwnedMemory { /// Create a new linear memory instance with specified minimum and maximum number of wasm pages. /// /// This creates a `Memory` with owned metadata: this can be used to create a memory @@ -154,18 +239,11 @@ impl VMMemory { let mapped_pages = memory.minimum; let mapped_bytes = mapped_pages.bytes(); - let mut mmap = WasmMmap { - alloc: Mmap::accessible_reserved(mapped_bytes.0, request_bytes) - .map_err(MemoryError::Region)?, - size: memory.minimum, - }; - - let base_ptr = mmap.alloc.as_mut_ptr(); + let mut alloc = Mmap::accessible_reserved(mapped_bytes.0, request_bytes) + .map_err(MemoryError::Region)?; + let base_ptr = alloc.as_mut_ptr(); let mem_length = memory.minimum.bytes().0; - Ok(Self { - mmap, - maximum: memory.maximum, - offset_guard_size: offset_guard_bytes, + let mmap = WasmMmap { vm_memory_definition: if let Some(mem_loc) = vm_memory_location { { let mut ptr = mem_loc; @@ -180,127 +258,257 @@ impl VMMemory { current_length: mem_length, }))) }, - memory: *memory, - style: style.clone(), + alloc, + size: memory.minimum, + }; + + Ok(Self { + mmap: mmap, + config: VMMemoryConfig { + maximum: memory.maximum, + offset_guard_size: offset_guard_bytes, + memory: *memory, + style: style.clone(), + } }) } +} - /// Get the `VMMemoryDefinition`. - fn get_vm_memory_definition(&self) -> NonNull { - self.vm_memory_definition.as_ptr() +impl VMOwnedMemory +{ + /// Converts this owned memory into shared memory + pub fn to_shared(self) -> VMSharedMemory + { + VMSharedMemory { + mmap: Arc::new(RwLock::new(self.mmap)), + config: self.config + } } +} +impl LinearMemory +for VMOwnedMemory +{ /// Returns the type for this memory. - pub fn ty(&self) -> MemoryType { - let minimum = self.size(); - let mut out = self.memory; - out.minimum = minimum; + fn ty(&self) -> MemoryType { + let minimum = self.mmap.size(); + self.config.ty(minimum) + } - out + /// Returns the size of hte memory in pages + fn size(&self) -> Pages { + self.mmap.size() } /// Returns the memory style for this memory. - pub fn style(&self) -> &MemoryStyle { - &self.style + fn style(&self) -> MemoryStyle { + self.config.style() } - /// Returns the number of allocated wasm pages. - pub fn size(&self) -> Pages { - // TODO: investigate this function for race conditions - unsafe { - let md_ptr = self.get_vm_memory_definition(); - let md = md_ptr.as_ref(); - Bytes::from(md.current_length).try_into().unwrap() - } + /// Grow memory by the specified amount of wasm pages. + /// + /// Returns `None` if memory can't be grown by the specified amount + /// of wasm pages. + fn grow(&mut self, delta: Pages) -> Result { + self.mmap.grow(delta, self.config.clone()) + } + + /// Return a `VMMemoryDefinition` for exposing the memory to compiled wasm code. + fn vmmemory(&self) -> NonNull { + self.mmap.vm_memory_definition.as_ptr() + } + + /// Owned memory can not be cloned (this will always return None) + fn try_clone(&self) -> Option> { + None + } +} + +impl Into +for VMOwnedMemory +{ + fn into(self) -> VMMemory { + VMMemory(Box::new(self)) + } +} + +impl VMSharedMemory +{ + /// Create a new linear memory instance with specified minimum and maximum number of wasm pages. + /// + /// This creates a `Memory` with owned metadata: this can be used to create a memory + /// that will be imported into Wasm modules. + pub fn new(memory: &MemoryType, style: &MemoryStyle) -> Result { + Ok( + VMOwnedMemory::new(memory, style)?.to_shared() + ) + } + + /// Create a new linear memory instance with specified minimum and maximum number of wasm pages. + /// + /// This creates a `Memory` with metadata owned by a VM, pointed to by + /// `vm_memory_location`: this can be used to create a local memory. + /// + /// # Safety + /// - `vm_memory_location` must point to a valid location in VM memory. + pub unsafe fn from_definition( + memory: &MemoryType, + style: &MemoryStyle, + vm_memory_location: NonNull, + ) -> Result { + Ok( + VMOwnedMemory::from_definition(memory, style, vm_memory_location)?.to_shared() + ) + } +} + +impl LinearMemory +for VMSharedMemory +{ + /// Returns the type for this memory. + fn ty(&self) -> MemoryType { + let minimum = { + let guard = self.mmap.read().unwrap(); + guard.size() + }; + self.config.ty(minimum) + } + + /// Returns the size of hte memory in pages + fn size(&self) -> Pages { + let guard = self.mmap.read().unwrap(); + guard.size() + } + + /// Returns the memory style for this memory. + fn style(&self) -> MemoryStyle { + self.config.style() } /// Grow memory by the specified amount of wasm pages. /// /// Returns `None` if memory can't be grown by the specified amount /// of wasm pages. - pub fn grow(&mut self, delta: Pages) -> Result { - // Optimization of memory.grow 0 calls. - if delta.0 == 0 { - return Ok(self.mmap.size); - } + fn grow(&mut self, delta: Pages) -> Result { + let mut guard = self.mmap.write().unwrap(); + guard.grow(delta, self.config.clone()) + } - let new_pages = self - .mmap - .size - .checked_add(delta) - .ok_or(MemoryError::CouldNotGrow { - current: self.mmap.size, - attempted_delta: delta, - })?; - let prev_pages = self.mmap.size; + /// Return a `VMMemoryDefinition` for exposing the memory to compiled wasm code. + fn vmmemory(&self) -> NonNull { + let guard = self.mmap.read().unwrap(); + guard.vm_memory_definition.as_ptr() + } - if let Some(maximum) = self.maximum { - if new_pages > maximum { - return Err(MemoryError::CouldNotGrow { - current: self.mmap.size, - attempted_delta: delta, - }); - } - } + /// Shared memory can always be cloned + fn try_clone(&self) -> Option> { + Some(Box::new(self.clone())) + } +} - // Wasm linear memories are never allowed to grow beyond what is - // indexable. If the memory has no maximum, enforce the greatest - // limit here. - if new_pages >= Pages::max_value() { - // Linear memory size would exceed the index range. - return Err(MemoryError::CouldNotGrow { - current: self.mmap.size, - attempted_delta: delta, - }); - } +impl Into +for VMSharedMemory +{ + fn into(self) -> VMMemory { + VMMemory(Box::new(self)) + } +} - let delta_bytes = delta.bytes().0; - let prev_bytes = prev_pages.bytes().0; - let new_bytes = new_pages.bytes().0; +/// Represents linear memory that can be either owned or shared +#[derive(Debug)] +pub struct VMMemory(Box); - if new_bytes > self.mmap.alloc.len() - self.offset_guard_size { - // If the new size is within the declared maximum, but needs more memory than we - // have on hand, it's a dynamic heap and it can move. - let guard_bytes = self.offset_guard_size; - let request_bytes = - new_bytes - .checked_add(guard_bytes) - .ok_or_else(|| MemoryError::CouldNotGrow { - current: new_pages, - attempted_delta: Bytes(guard_bytes).try_into().unwrap(), - })?; +impl Into +for Box +{ + fn into(self) -> VMMemory { + VMMemory(self) + } +} - let mut new_mmap = - Mmap::accessible_reserved(new_bytes, request_bytes).map_err(MemoryError::Region)?; +impl LinearMemory +for VMMemory +{ + /// Returns the type for this memory. + fn ty(&self) -> MemoryType { + self.0.ty() + } - let copy_len = self.mmap.alloc.len() - self.offset_guard_size; - new_mmap.as_mut_slice()[..copy_len] - .copy_from_slice(&self.mmap.alloc.as_slice()[..copy_len]); + /// Returns the size of hte memory in pages + fn size(&self) -> Pages { + self.0.size() + } - self.mmap.alloc = new_mmap; - } else if delta_bytes > 0 { - // Make the newly allocated pages accessible. - self.mmap - .alloc - .make_accessible(prev_bytes, delta_bytes) - .map_err(MemoryError::Region)?; - } + /// Grow memory by the specified amount of wasm pages. + /// + /// Returns `None` if memory can't be grown by the specified amount + /// of wasm pages. + fn grow(&mut self, delta: Pages) -> Result { + self.0.grow(delta) + } - self.mmap.size = new_pages; + /// Returns the memory style for this memory. + fn style(&self) -> MemoryStyle { + self.0.style() + } - // update memory definition - unsafe { - let mut md_ptr = self.get_vm_memory_definition(); - let md = md_ptr.as_mut(); - md.current_length = new_pages.bytes().0; - md.base = self.mmap.alloc.as_mut_ptr() as _; - } + /// Return a `VMMemoryDefinition` for exposing the memory to compiled wasm code. + fn vmmemory(&self) -> NonNull { + self.0.vmmemory() + } - Ok(prev_pages) + /// Attempts to clone this memory (if its clonable) + fn try_clone(&self) -> Option> { + self.0.try_clone() } +} - /// Return a `VMMemoryDefinition` for exposing the memory to compiled wasm code. - pub fn vmmemory(&self) -> NonNull { - self.get_vm_memory_definition() +impl VMMemory +{ + /// Creates a new linear memory instance of the correct type with specified + /// minimum and maximum number of wasm pages. + /// + /// This creates a `Memory` with owned metadata: this can be used to create a memory + /// that will be imported into Wasm modules. + pub fn new(memory: &MemoryType, style: &MemoryStyle) -> Result { + Ok( + if memory.shared { + Self(Box::new(VMSharedMemory::new(memory, style)?)) + } else { + Self(Box::new(VMOwnedMemory::new(memory, style)?)) + } + ) + } + + /// Create a new linear memory instance with specified minimum and maximum number of wasm pages. + /// + /// This creates a `Memory` with metadata owned by a VM, pointed to by + /// `vm_memory_location`: this can be used to create a local memory. + /// + /// # Safety + /// - `vm_memory_location` must point to a valid location in VM memory. + pub unsafe fn from_definition( + memory: &MemoryType, + style: &MemoryStyle, + vm_memory_location: NonNull, + ) -> Result { + Ok( + if memory.shared { + Self(Box::new(VMSharedMemory::from_definition(memory, style, vm_memory_location)?)) + } else { + Self(Box::new(VMOwnedMemory::from_definition(memory, style, vm_memory_location)?)) + } + ) + } + + /// Creates VMMemory from a custom implementation - the following into implementations + /// are natively supported + /// - VMOwnedMemory -> VMMemory + /// - VMSharedMemory -> VMMemory + /// - Box -> VMMemory + pub fn from_custom(memory: IntoVMMemory) -> VMMemory + where IntoVMMemory: Into + { + memory.into() } } diff --git a/lib/vm/src/store.rs b/lib/vm/src/store.rs index 4faee579a4d..93ae12e5511 100644 --- a/lib/vm/src/store.rs +++ b/lib/vm/src/store.rs @@ -78,6 +78,11 @@ impl StoreObjects { self.id } + /// Sets the ID of this store + pub fn set_id(&mut self, id: StoreId) { + self.id = id; + } + /// Returns a pair of mutable references from two handles. /// /// Panics if both handles point to the same object. @@ -266,3 +271,23 @@ impl MaybeInstanceOwned { } } } + +impl std::fmt::Debug +for MaybeInstanceOwned +where T: std::fmt::Debug +{ + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + MaybeInstanceOwned::Host(p) => { + write!(f, "host(")?; + p.as_ref().fmt(f)?; + write!(f, ")") + }, + MaybeInstanceOwned::Instance(p) => { + write!(f, "instance(")?; + unsafe { p.as_ref().fmt(f)? }; + write!(f, ")") + } + } + } +} diff --git a/lib/vm/src/vmcontext.rs b/lib/vm/src/vmcontext.rs index bb1cb6cc9fc..6940f43a265 100644 --- a/lib/vm/src/vmcontext.rs +++ b/lib/vm/src/vmcontext.rs @@ -15,7 +15,7 @@ use crate::{VMBuiltinFunctionIndex, VMFunction}; use std::convert::TryFrom; use std::ptr::{self, NonNull}; use std::u32; -use wasmer_types::RawValue; +use wasmer_types::{RawValue, VMMemoryDefinition}; /// Union representing the first parameter passed when calling a function. /// @@ -303,120 +303,67 @@ mod test_vmglobal_import { } } -/// The fields compiled code needs to access to utilize a WebAssembly linear -/// memory defined within the instance, namely the start address and the -/// size in bytes. -#[derive(Debug, Copy, Clone)] -#[repr(C)] -pub struct VMMemoryDefinition { - /// The start address which is always valid, even if the memory grows. - pub base: *mut u8, - - /// The current logical size of this linear memory in bytes. - pub current_length: usize, -} - -/// # Safety -/// This data is safe to share between threads because it's plain data that -/// is the user's responsibility to synchronize. -unsafe impl Send for VMMemoryDefinition {} +/// Do an unsynchronized, non-atomic `memory.copy` for the memory. +/// +/// # Errors +/// +/// Returns a `Trap` error when the source or destination ranges are out of +/// bounds. +/// /// # Safety -/// This data is safe to share between threads because it's plain data that -/// is the user's responsibility to synchronize. And it's `Copy` so there's -/// really no difference between passing it by reference or by value as far as -/// correctness in a multi-threaded context is concerned. -unsafe impl Sync for VMMemoryDefinition {} - -impl VMMemoryDefinition { - /// Do an unsynchronized, non-atomic `memory.copy` for the memory. - /// - /// # Errors - /// - /// Returns a `Trap` error when the source or destination ranges are out of - /// bounds. - /// - /// # Safety - /// The memory is not copied atomically and is not synchronized: it's the - /// caller's responsibility to synchronize. - pub(crate) unsafe fn memory_copy(&self, dst: u32, src: u32, len: u32) -> Result<(), Trap> { - // https://webassembly.github.io/reference-types/core/exec/instructions.html#exec-memory-copy - if src +/// The memory is not copied atomically and is not synchronized: it's the +/// caller's responsibility to synchronize. +pub(crate) unsafe fn memory_copy(mem: &VMMemoryDefinition, dst: u32, src: u32, len: u32) -> Result<(), Trap> { + // https://webassembly.github.io/reference-types/core/exec/instructions.html#exec-memory-copy + if src + .checked_add(len) + .map_or(true, |n| usize::try_from(n).unwrap() > mem.current_length) + || dst .checked_add(len) - .map_or(true, |n| usize::try_from(n).unwrap() > self.current_length) - || dst - .checked_add(len) - .map_or(true, |m| usize::try_from(m).unwrap() > self.current_length) - { - return Err(Trap::lib(TrapCode::HeapAccessOutOfBounds)); - } - - let dst = usize::try_from(dst).unwrap(); - let src = usize::try_from(src).unwrap(); - - // Bounds and casts are checked above, by this point we know that - // everything is safe. - let dst = self.base.add(dst); - let src = self.base.add(src); - ptr::copy(src, dst, len as usize); - - Ok(()) + .map_or(true, |m| usize::try_from(m).unwrap() > mem.current_length) + { + return Err(Trap::lib(TrapCode::HeapAccessOutOfBounds)); } - /// Perform the `memory.fill` operation for the memory in an unsynchronized, - /// non-atomic way. - /// - /// # Errors - /// - /// Returns a `Trap` error if the memory range is out of bounds. - /// - /// # Safety - /// The memory is not filled atomically and is not synchronized: it's the - /// caller's responsibility to synchronize. - pub(crate) unsafe fn memory_fill(&self, dst: u32, val: u32, len: u32) -> Result<(), Trap> { - if dst - .checked_add(len) - .map_or(true, |m| usize::try_from(m).unwrap() > self.current_length) - { - return Err(Trap::lib(TrapCode::HeapAccessOutOfBounds)); - } + let dst = usize::try_from(dst).unwrap(); + let src = usize::try_from(src).unwrap(); - let dst = isize::try_from(dst).unwrap(); - let val = val as u8; + // Bounds and casts are checked above, by this point we know that + // everything is safe. + let dst = mem.base.add(dst); + let src = mem.base.add(src); + ptr::copy(src, dst, len as usize); - // Bounds and casts are checked above, by this point we know that - // everything is safe. - let dst = self.base.offset(dst); - ptr::write_bytes(dst, val, len as usize); + Ok(()) +} - Ok(()) +/// Perform the `memory.fill` operation for the memory in an unsynchronized, +/// non-atomic way. +/// +/// # Errors +/// +/// Returns a `Trap` error if the memory range is out of bounds. +/// +/// # Safety +/// The memory is not filled atomically and is not synchronized: it's the +/// caller's responsibility to synchronize. +pub(crate) unsafe fn memory_fill(mem: &VMMemoryDefinition, dst: u32, val: u32, len: u32) -> Result<(), Trap> { + if dst + .checked_add(len) + .map_or(true, |m| usize::try_from(m).unwrap() > mem.current_length) + { + return Err(Trap::lib(TrapCode::HeapAccessOutOfBounds)); } -} -#[cfg(test)] -mod test_vmmemory_definition { - use super::VMMemoryDefinition; - use crate::VMOffsets; - use memoffset::offset_of; - use std::mem::size_of; - use wasmer_types::ModuleInfo; + let dst = isize::try_from(dst).unwrap(); + let val = val as u8; - #[test] - fn check_vmmemory_definition_offsets() { - let module = ModuleInfo::new(); - let offsets = VMOffsets::new(size_of::<*mut u8>() as u8, &module); - assert_eq!( - size_of::(), - usize::from(offsets.size_of_vmmemory_definition()) - ); - assert_eq!( - offset_of!(VMMemoryDefinition, base), - usize::from(offsets.vmmemory_definition_base()) - ); - assert_eq!( - offset_of!(VMMemoryDefinition, current_length), - usize::from(offsets.vmmemory_definition_current_length()) - ); - } + // Bounds and casts are checked above, by this point we know that + // everything is safe. + let dst = mem.base.offset(dst); + ptr::write_bytes(dst, val, len as usize); + + Ok(()) } /// The fields compiled code needs to access to utilize a WebAssembly table From b7ab85d74200277e3fb7898a30dc66f670791564 Mon Sep 17 00:00:00 2001 From: John Sharratt's Shared Account Date: Thu, 18 Aug 2022 10:11:38 +1000 Subject: [PATCH 2/4] Implemented multi-threading for both JS and SYS, plus other WASIX implementations --- Cargo.lock | 102 +- docs/migration_to_3.0.0.md | 5 +- examples/imports_function_env.rs | 4 +- examples/wasi.rs | 9 +- examples/wasi_pipes.rs | 7 +- lib/api/src/js/exports.rs | 3 + lib/api/src/js/instance.rs | 20 +- lib/api/src/js/module.rs | 77 +- lib/api/src/js/store.rs | 1 + lib/api/src/js/wasm_bindgen_polyfill.rs | 2 + lib/api/src/sys/exports.rs | 15 +- lib/api/src/sys/function_env.rs | 7 +- lib/api/src/sys/imports.rs | 30 + lib/api/src/sys/instance.rs | 28 +- lib/api/src/sys/module.rs | 10 + lib/api/src/sys/ptr.rs | 18 +- lib/api/src/sys/store.rs | 9 +- lib/api/tests/sys_reference_types.rs | 6 +- lib/c-api/src/wasm_c_api/wasi/mod.rs | 17 +- lib/cli/src/commands/run.rs | 3 + lib/cli/src/commands/run/wasi.rs | 16 +- lib/cli/src/commands/wasmer_create_exe_main.c | 16 +- .../commands/wasmer_static_create_exe_main.c | 16 +- lib/derive/src/value_type.rs | 14 +- lib/emscripten/src/lib.rs | 17 +- lib/emscripten/src/memory.rs | 2 + lib/vbus/src/lib.rs | 190 ++- lib/wasi-types/src/bus.rs | 35 +- lib/wasi-types/src/file.rs | 3 + lib/wasi/Cargo.toml | 11 +- lib/wasi/src/lib.rs | 916 ++++++----- lib/wasi/src/macros.rs | 35 +- lib/wasi/src/runtime.rs | 63 +- lib/wasi/src/state/builder.rs | 2 + lib/wasi/src/state/mod.rs | 267 ++- lib/wasi/src/state/parking.rs | 82 + lib/wasi/src/state/thread.rs | 56 + lib/wasi/src/state/types.rs | 26 +- lib/wasi/src/syscalls/legacy/snapshot0.rs | 79 +- lib/wasi/src/syscalls/mod.rs | 1438 ++++++++++++++--- lib/wasi/src/syscalls/wasi.rs | 450 ------ lib/wasi/src/syscalls/wasix32.rs | 1060 ------------ lib/wasi/src/syscalls/wasix64.rs | 1060 ------------ lib/wasi/src/syscalls/{wasm32.rs => wasm.rs} | 0 lib/wasi/tests/catsay.rs | 146 ++ lib/wasi/tests/catsay.wasm | Bin 0 -> 79654 bytes lib/wasi/tests/condvar.rs | 120 ++ lib/wasi/tests/condvar.wasm | Bin 0 -> 124249 bytes lib/wasi/tests/coreutils.rs | 106 ++ lib/wasi/tests/coreutils.wasm | Bin 0 -> 4047680 bytes lib/wasi/tests/multi-threading.rs | 119 ++ lib/wasi/tests/multi-threading.wasm | Bin 0 -> 124833 bytes lib/wasi/tests/stdio.rs | 16 +- lib/wasi/wia/wasixx_32v1.txt | 116 ++ lib/wasi/wia/wasixx_64v1.txt | 116 ++ lib/wasi/wia/wasm_bus.txt | 14 + tests/compilers/issues.rs | 4 +- tests/compilers/typed_functions.rs | 6 +- tests/lib/wast/src/wasi_wast.rs | 10 +- 59 files changed, 3465 insertions(+), 3535 deletions(-) create mode 100644 lib/wasi/src/state/parking.rs create mode 100644 lib/wasi/src/state/thread.rs delete mode 100644 lib/wasi/src/syscalls/wasi.rs delete mode 100644 lib/wasi/src/syscalls/wasix32.rs delete mode 100644 lib/wasi/src/syscalls/wasix64.rs rename lib/wasi/src/syscalls/{wasm32.rs => wasm.rs} (100%) create mode 100644 lib/wasi/tests/catsay.rs create mode 100755 lib/wasi/tests/catsay.wasm create mode 100644 lib/wasi/tests/condvar.rs create mode 100755 lib/wasi/tests/condvar.wasm create mode 100644 lib/wasi/tests/coreutils.rs create mode 100755 lib/wasi/tests/coreutils.wasm create mode 100644 lib/wasi/tests/multi-threading.rs create mode 100644 lib/wasi/tests/multi-threading.wasm create mode 100644 lib/wasi/wia/wasixx_32v1.txt create mode 100644 lib/wasi/wia/wasixx_64v1.txt create mode 100644 lib/wasi/wia/wasm_bus.txt diff --git a/Cargo.lock b/Cargo.lock index 04df81af3cd..b51938343e1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -474,6 +474,12 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +[[package]] +name = "cooked-waker" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147be55d677052dabc6b22252d5dd0fd4c29c8c27aa4f2fbef0f94aa003b406f" + [[package]] name = "corosensei" version = "0.1.3" @@ -487,6 +493,15 @@ dependencies = [ "windows-sys 0.33.0", ] +[[package]] +name = "cpufeatures" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b" +dependencies = [ + "libc", +] + [[package]] name = "cranelift-bforest" version = "0.86.1" @@ -1368,6 +1383,15 @@ dependencies = [ "libc", ] +[[package]] +name = "matchers" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f099785f7595cc4b4553a174ce30dd7589ef93391ff414dbb67f62392b9e0ce1" +dependencies = [ + "regex-automata", +] + [[package]] name = "matchers" version = "0.1.0" @@ -2266,6 +2290,17 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" +[[package]] +name = "sha2" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55deaec60f81eefe3cce0dc50bda92d6d8e88f2a27df7c5033b42afeb1ed2676" +dependencies = [ + "cfg-if 1.0.0", + "cpufeatures", + "digest", +] + [[package]] name = "sharded-slab" version = "0.1.4" @@ -2617,6 +2652,50 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5aeea4303076558a00714b823f9ad67d58a3bbda1df83d8827d21193156e22f7" dependencies = [ "once_cell", + "valuable", +] + +[[package]] +name = "tracing-log" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" +dependencies = [ + "lazy_static", + "log", + "tracing-core", +] + +[[package]] +name = "tracing-serde" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +dependencies = [ + "serde", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" +dependencies = [ + "ansi_term", + "chrono", + "lazy_static", + "matchers 0.0.1", + "regex", + "serde", + "serde_json", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", + "tracing-serde", ] [[package]] @@ -2625,7 +2704,7 @@ version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60db860322da191b40952ad9affe65ea23e7dd6a5c442c2c42865810c6ab8e6b" dependencies = [ - "matchers", + "matchers 0.1.0", "once_cell", "regex", "sharded-slab", @@ -2641,7 +2720,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07" dependencies = [ "tracing", - "tracing-subscriber", + "tracing-subscriber 0.3.15", "wasm-bindgen", ] @@ -2729,6 +2808,12 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + [[package]] name = "vec_map" version = "0.8.2" @@ -2756,6 +2841,12 @@ dependencies = [ "libc", ] +[[package]] +name = "waker-fn" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" + [[package]] name = "walkdir" version = "2.3.2" @@ -3271,15 +3362,20 @@ dependencies = [ "bytes", "cfg-if 1.0.0", "chrono", + "cooked-waker", "derivative", "generational-arena", "getrandom", + "lazy_static", "libc", "serde", + "sha2", "thiserror", "tracing", + "tracing-subscriber 0.2.25", "tracing-wasm", "typetag", + "waker-fn", "wasm-bindgen", "wasm-bindgen-test", "wasmer", @@ -3356,7 +3452,7 @@ dependencies = [ "test-generator", "test-log", "tracing", - "tracing-subscriber", + "tracing-subscriber 0.3.15", "wasi-test-generator", "wasmer", "wasmer-cache", diff --git a/docs/migration_to_3.0.0.md b/docs/migration_to_3.0.0.md index 2a87147af62..d780749593f 100644 --- a/docs/migration_to_3.0.0.md +++ b/docs/migration_to_3.0.0.md @@ -139,14 +139,13 @@ import_object.define("env", "host_function", host_function); let instance = Instance::new(&mut store, &module, &import_object).expect("Could not instantiate module."); ``` -For WASI, don't forget to import memory to `WasiEnv` +For WASI, don't forget to initialize it ```rust let mut wasi_env = WasiState::new("hello").finalize()?; let import_object = wasi_env.import_object(&mut store, &module)?; let instance = Instance::new(&mut store, &module, &import_object).expect("Could not instantiate module."); -let memory = instance.exports.get_memory("memory")?; -wasi_env.data_mut(&mut store).set_memory(memory.clone()); +wasi_env.initialize(&mut store, &instance).unwrap(); ``` #### `ChainableNamedResolver` is removed diff --git a/examples/imports_function_env.rs b/examples/imports_function_env.rs index dc870625e69..0b235f93f49 100644 --- a/examples/imports_function_env.rs +++ b/examples/imports_function_env.rs @@ -80,8 +80,8 @@ fn main() -> Result<(), Box> { fn get_counter(env: FunctionEnvMut) -> i32 { *env.data().counter.lock().unwrap() } - fn add_to_counter(mut env: FunctionEnvMut, add: i32) -> i32 { - let mut counter_ref = env.data_mut().counter.lock().unwrap(); + fn add_to_counter(env: FunctionEnvMut, add: i32) -> i32 { + let mut counter_ref = env.data().counter.lock().unwrap(); *counter_ref += add; *counter_ref diff --git a/examples/wasi.rs b/examples/wasi.rs index e3232061148..b8880b5d5a5 100644 --- a/examples/wasi.rs +++ b/examples/wasi.rs @@ -39,7 +39,7 @@ fn main() -> Result<(), Box> { println!("Creating `WasiEnv`..."); // First, we create the `WasiEnv` - let wasi_env = WasiState::new("hello") + let mut wasi_env = WasiState::new("hello") // .args(&["world"]) // .env("KEY", "Value") .finalize(&mut store)?; @@ -50,10 +50,9 @@ fn main() -> Result<(), Box> { let import_object = wasi_env.import_object(&mut store, &module)?; let instance = Instance::new(&mut store, &module, &import_object)?; - println!("Attach WASI memory..."); - // Attach the memory export - let memory = instance.exports.get_memory("memory")?; - wasi_env.data_mut(&mut store).set_memory(memory.clone()); + println!("Initializing WASI environment..."); + // Initialize the WASI environment (which will attach memory) + wasi_env.initialize(&mut store, &instance).unwrap(); println!("Call WASI `_start` function..."); // And we just call the `_start` function! diff --git a/examples/wasi_pipes.rs b/examples/wasi_pipes.rs index ed7ef03a075..8f1c41c2614 100644 --- a/examples/wasi_pipes.rs +++ b/examples/wasi_pipes.rs @@ -49,10 +49,9 @@ fn main() -> Result<(), Box> { let import_object = wasi_env.import_object(&mut store, &module)?; let instance = Instance::new(&mut store, &module, &import_object)?; - println!("Attach WASI memory..."); - // Attach the memory export - let memory = instance.exports.get_memory("memory")?; - wasi_env.data_mut(&mut store).set_memory(memory.clone()); + println!("Initializing WASI environment..."); + // Initialize the WASI environment (which will attach memory) + wasi_env.initialize(&mut store, &instance).unwrap(); let msg = "racecar go zoom"; println!("Writing \"{}\" to the WASI stdin...", msg); diff --git a/lib/api/src/js/exports.rs b/lib/api/src/js/exports.rs index 024ab8b9696..339095bafa0 100644 --- a/lib/api/src/js/exports.rs +++ b/lib/api/src/js/exports.rs @@ -53,6 +53,9 @@ pub enum ExportError { /// This error arises when an export is missing #[error("Missing export {0}")] Missing(String), + /// This error arises when an export is missing + #[error("Serialization failed {0}")] + SerializationFailed(String), } /// Exports is a special kind of map that allows easily unwrapping diff --git a/lib/api/src/js/instance.rs b/lib/api/src/js/instance.rs index 6d2762adf66..fb849743a28 100644 --- a/lib/api/src/js/instance.rs +++ b/lib/api/src/js/instance.rs @@ -20,8 +20,6 @@ use std::fmt; pub struct Instance { _handle: StoreHandle, module: Module, - #[allow(dead_code)] - imports: Imports, /// The exports for an instance. pub exports: Exports, } @@ -65,12 +63,11 @@ impl Instance { module: &Module, imports: &Imports, ) -> Result { - let import_copy = imports.clone(); - let (instance, _imports): (StoreHandle, Vec) = module + let (instance, externs): (StoreHandle, Vec) = module .instantiate(&mut store, imports) .map_err(|e| InstantiationError::Start(e))?; - let self_instance = Self::from_module_and_instance(store, module, instance, import_copy)?; + let self_instance = Self::from_module_and_instance(store, module, externs, instance)?; //self_instance.init_envs(&imports.iter().map(Extern::to_export).collect::>())?; Ok(self_instance) } @@ -87,11 +84,11 @@ impl Instance { pub fn from_module_and_instance( mut store: &mut impl AsStoreMut, module: &Module, + externs: Vec, instance: StoreHandle, - imports: Imports, ) -> Result { let instance_exports = instance.get(store.as_store_ref().objects()).exports(); - let exports = module + let mut exports = module .exports() .map(|export_type| { let name = export_type.name(); @@ -110,10 +107,17 @@ impl Instance { }) .collect::>()?; + // If the memory is imported then also export it for backwards compatibility reasons + // (many will assume the memory is always exported) - later we can remove this + if exports.get_memory("memory").is_err() { + if let Some(memory) = externs.iter().filter(|a| a.ty(store).memory().is_some()).next() { + exports.insert("memory", memory.clone()); + } + } + Ok(Self { _handle: instance, module: module.clone(), - imports, exports, }) } diff --git a/lib/api/src/js/module.rs b/lib/api/src/js/module.rs index 975d1bee5d5..5197c34165a 100644 --- a/lib/api/src/js/module.rs +++ b/lib/api/src/js/module.rs @@ -20,6 +20,8 @@ use wasmer_types::{ ExportsIterator, ExternType, FunctionType, GlobalType, ImportsIterator, MemoryType, Mutability, Pages, TableType, Type, }; +#[cfg(feature = "tracing")] +use tracing::{debug, warn}; #[derive(Debug)] #[cfg_attr(feature = "std", derive(Error))] @@ -236,6 +238,21 @@ impl Module { let mut import_externs: Vec = vec![]; for import_type in self.imports() { let resolved_import = imports.get_export(import_type.module(), import_type.name()); + #[allow(unused_variables)] + if let wasmer_types::ExternType::Memory(mem_ty) = import_type.ty() { + if resolved_import.is_some() { + #[cfg(feature = "tracing")] + debug!("imported shared memory {:?}", &mem_ty); + } else { + #[cfg(feature = "tracing")] + warn!( + "Error while importing {0:?}.{1:?}: memory. Expected {2:?}", + import_type.module(), + import_type.name(), + import_type.ty(), + ); + } + } if let Some(import) = resolved_import { let val = js_sys::Reflect::get(&imports_object, &import_type.module().into())?; if !val.is_undefined() { @@ -260,6 +277,9 @@ impl Module { )?; } import_externs.push(import); + } else { + #[cfg(feature = "tracing")] + warn!("import not found {}:{}", import_type.module(), import_type.name()); } // in case the import is not found, the JS Wasm VM will handle // the error for us, so we don't need to handle it @@ -383,7 +403,8 @@ impl Module { let imports = WebAssembly::Module::imports(&self.module); let iter = imports .iter() - .map(move |val| { + .enumerate() + .map(move |(i, val)| { let module = Reflect::get(val.as_ref(), &"module".into()) .unwrap() .as_string() @@ -396,24 +417,34 @@ impl Module { .unwrap() .as_string() .unwrap(); - let extern_type = match kind.as_str() { - "function" => { - let func_type = FunctionType::new(vec![], vec![]); - ExternType::Function(func_type) - } - "global" => { - let global_type = GlobalType::new(Type::I32, Mutability::Const); - ExternType::Global(global_type) - } - "memory" => { - let memory_type = MemoryType::new(Pages(1), None, false); - ExternType::Memory(memory_type) - } - "table" => { - let table_type = TableType::new(Type::FuncRef, 1, None); - ExternType::Table(table_type) + let type_hint = self + .type_hints + .as_ref() + .map(|hints| hints.imports.get(i).unwrap().clone()); + let extern_type = if let Some(hint) = type_hint { + hint + } else { + match kind.as_str() { + "function" => { + let func_type = FunctionType::new(vec![], vec![]); + ExternType::Function(func_type) + } + "global" => { + let global_type = GlobalType::new(Type::I32, Mutability::Const); + ExternType::Global(global_type) + } + "memory" => { + // The javascript API does not yet expose these properties so without + // the type_hints we don't know what memory to import. + let memory_type = MemoryType::new(Pages(1), None, false); + ExternType::Memory(memory_type) + } + "table" => { + let table_type = TableType::new(Type::FuncRef, 1, None); + ExternType::Table(table_type) + } + _ => unimplemented!(), } - _ => unimplemented!(), }; ImportType::new(&module, &field, extern_type) }) @@ -525,6 +556,16 @@ impl Module { ExportsIterator::new(iter, exports.length() as usize) } + /// Returns true if the module is still ok - this will be + /// false if the module was passed between threads in a + /// way that it became undefined (JS does not share objects + /// between threads except via a post_message()) + pub fn is_ok(&self) -> bool { + let val = JsValue::from(&self.module); + !val.is_undefined() && + !val.is_null() + } + // /// Get the custom sections of the module given a `name`. // /// // /// # Important diff --git a/lib/api/src/js/store.rs b/lib/api/src/js/store.rs index 66d6d58ec8c..a14a663d963 100644 --- a/lib/api/src/js/store.rs +++ b/lib/api/src/js/store.rs @@ -446,6 +446,7 @@ mod objects { Instance(NonNull), } + #[allow(dead_code)] impl MaybeInstanceOwned { /// Returns underlying pointer to the VM data. #[allow(dead_code)] diff --git a/lib/api/src/js/wasm_bindgen_polyfill.rs b/lib/api/src/js/wasm_bindgen_polyfill.rs index 1b5dad63a12..80f89a6a702 100644 --- a/lib/api/src/js/wasm_bindgen_polyfill.rs +++ b/lib/api/src/js/wasm_bindgen_polyfill.rs @@ -16,6 +16,7 @@ extern "C" { /// of the given type and value. /// /// [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Global) + #[allow(unused_doc_comments)] #[wasm_bindgen(constructor, js_namespace = WebAssembly, catch)] pub fn new(global_descriptor: &Object, value: &JsValue) -> Result; @@ -23,6 +24,7 @@ extern "C" { /// returns the value of the global. /// /// [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Global) + #[allow(unused_doc_comments)] #[wasm_bindgen(method, getter, structural, js_namespace = WebAssembly)] pub fn value(this: &Global) -> JsValue; diff --git a/lib/api/src/sys/exports.rs b/lib/api/src/sys/exports.rs index f744a21c61d..0141f8cd9ea 100644 --- a/lib/api/src/sys/exports.rs +++ b/lib/api/src/sys/exports.rs @@ -57,6 +57,9 @@ pub enum ExportError { /// This error arises when an export is missing #[error("Missing export {0}")] Missing(String), + /// This error arises when an export is missing + #[error("Serialization failed {0}")] + SerializationFailed(String), } /// Exports is a special kind of map that allows easily unwrapping @@ -183,18 +186,6 @@ impl Exports { } } - /// Like `get_with_generics` but with a WeakReference to the `InstanceRef` internally. - /// This is useful for passing data into Context data, for example. - pub fn get_with_generics_weak<'a, T, Args, Rets>(&'a self, name: &str) -> Result - where - Args: WasmTypeList, - Rets: WasmTypeList, - T: ExportableWithGenerics<'a, Args, Rets>, - { - let out: T = self.get_with_generics(name)?; - Ok(out) - } - /// Get an export as an `Extern`. pub fn get_extern(&self, name: &str) -> Option<&Extern> { self.map.get(name) diff --git a/lib/api/src/sys/function_env.rs b/lib/api/src/sys/function_env.rs index deb5c0b4304..6ef7b48a3c9 100644 --- a/lib/api/src/sys/function_env.rs +++ b/lib/api/src/sys/function_env.rs @@ -29,7 +29,7 @@ impl FunctionEnv { } /// Get the data as reference - pub fn as_ref<'a>(&self, store: &'a impl AsStoreMut) -> &'a T + pub fn as_ref<'a>(&self, store: &'a impl AsStoreRef) -> &'a T where T: Any + Send + 'static + Sized, { @@ -105,6 +105,11 @@ impl FunctionEnvMut<'_, T> { self.func_env.as_mut(&mut self.store_mut) } + /// Borrows a new immmutable reference + pub fn as_ref(&self) -> FunctionEnv { + self.func_env.clone() + } + /// Borrows a new mutable reference pub fn as_mut(&mut self) -> FunctionEnvMut<'_, T> { FunctionEnvMut { diff --git a/lib/api/src/sys/imports.rs b/lib/api/src/sys/imports.rs index 80e51f7367d..82d44eb78da 100644 --- a/lib/api/src/sys/imports.rs +++ b/lib/api/src/sys/imports.rs @@ -176,6 +176,36 @@ impl Imports { } Ok(ret) } + + /// Iterates through all the imports in this structure + pub fn iter<'a>(&'a self) -> ImportsIterator<'a> { + ImportsIterator::new(self) + } +} + +pub struct ImportsIterator<'a> { + iter: std::collections::hash_map::Iter<'a, (String, String), Extern> +} + +impl<'a> ImportsIterator<'a> +{ + fn new(imports: &'a Imports) -> Self { + let iter = imports.map.iter(); + Self { iter } + } +} + +impl<'a> Iterator +for ImportsIterator<'a> { + type Item = (&'a str, &'a str, &'a Extern); + + fn next(&mut self) -> Option { + self.iter + .next() + .map(|(k, v)| { + (k.0.as_str(), k.1.as_str(), v) + }) + } } impl IntoIterator for &Imports { diff --git a/lib/api/src/sys/instance.rs b/lib/api/src/sys/instance.rs index ab8e9d5c293..3cc967530ac 100644 --- a/lib/api/src/sys/instance.rs +++ b/lib/api/src/sys/instance.rs @@ -115,11 +115,11 @@ impl Instance { module: &Module, imports: &Imports, ) -> Result { - let imports = imports + let externs = imports .imports_for_module(module) .map_err(InstantiationError::Link)?; - let mut handle = module.instantiate(store, &imports)?; - let exports = module + let mut handle = module.instantiate(store, &externs)?; + let mut exports = module .exports() .map(|export| { let name = export.name().to_string(); @@ -128,6 +128,14 @@ impl Instance { (name, extern_) }) .collect::(); + + // If the memory is imported then also export it for backwards compatibility reasons + // (many will assume the memory is always exported) - later we can remove this + if exports.get_memory("memory").is_err() { + if let Some(memory) = externs.iter().filter(|a| a.ty(store).memory().is_some()).next() { + exports.insert("memory", memory.clone()); + } + } let instance = Self { _handle: StoreHandle::new(store.objects_mut(), handle), @@ -154,9 +162,9 @@ impl Instance { module: &Module, externs: &[Extern], ) -> Result { - let imports = externs.to_vec(); - let mut handle = module.instantiate(store, &imports)?; - let exports = module + let externs = externs.to_vec(); + let mut handle = module.instantiate(store, &externs)?; + let mut exports = module .exports() .map(|export| { let name = export.name().to_string(); @@ -166,6 +174,14 @@ impl Instance { }) .collect::(); + // If the memory is imported then also export it for backwards compatibility reasons + // (many will assume the memory is always exported) - later we can remove this + if exports.get_memory("memory").is_err() { + if let Some(memory) = externs.iter().filter(|a| a.ty(store).memory().is_some()).next() { + exports.insert("memory", memory.clone()); + } + } + let instance = Self { _handle: StoreHandle::new(store.objects_mut(), handle), module: module.clone(), diff --git a/lib/api/src/sys/module.rs b/lib/api/src/sys/module.rs index b730a19b9dd..98f10287e64 100644 --- a/lib/api/src/sys/module.rs +++ b/lib/api/src/sys/module.rs @@ -438,6 +438,16 @@ impl Module { self.module_info.exports() } + /// Returns true if the module is still ok - this will be + /// false if the module was passed between threads in a + /// way that it became undefined (JS does not share objects + /// between threads except via a post_message()) + pub fn is_ok(&self) -> bool { + // As RUST is a type safe language modules in SYS are always ok + true + } + + /// Get the custom sections of the module given a `name`. /// /// # Important diff --git a/lib/api/src/sys/ptr.rs b/lib/api/src/sys/ptr.rs index f14383946d1..8e7935e2834 100644 --- a/lib/api/src/sys/ptr.rs +++ b/lib/api/src/sys/ptr.rs @@ -76,7 +76,7 @@ impl WasmPtr { /// Get the offset into Wasm linear memory for this `WasmPtr`. #[inline] - pub fn offset(self) -> M::Offset { + pub fn offset(&self) -> M::Offset { self.offset } @@ -97,7 +97,7 @@ impl WasmPtr { /// Checks whether the `WasmPtr` is null. #[inline] - pub fn is_null(self) -> bool { + pub fn is_null(&self) -> bool { self.offset.into() == 0 } @@ -142,19 +142,19 @@ impl WasmPtr { /// Creates a `WasmRef` from this `WasmPtr` which allows reading and /// mutating of the value being pointed to. #[inline] - pub fn deref<'a>(self, view: &'a MemoryView) -> WasmRef<'a, T> { + pub fn deref<'a>(&self, view: &'a MemoryView) -> WasmRef<'a, T> { WasmRef::new(view, self.offset.into()) } /// Reads the address pointed to by this `WasmPtr` in a memory. #[inline] - pub fn read(self, view: &MemoryView) -> Result { + pub fn read(&self, view: &MemoryView) -> Result { self.deref(view).read() } /// Writes to the address pointed to by this `WasmPtr` in a memory. #[inline] - pub fn write(self, view: &MemoryView, val: T) -> Result<(), MemoryAccessError> { + pub fn write(&self, view: &MemoryView, val: T) -> Result<(), MemoryAccessError> { self.deref(view).write(val) } @@ -165,7 +165,7 @@ impl WasmPtr { /// address. #[inline] pub fn slice<'a>( - self, + &self, view: &'a MemoryView, len: M::Offset, ) -> Result, MemoryAccessError> { @@ -178,7 +178,7 @@ impl WasmPtr { /// This last value is not included in the returned vector. #[inline] pub fn read_until( - self, + &self, view: &MemoryView, mut end: impl FnMut(&T) -> bool, ) -> Result, MemoryAccessError> { @@ -202,7 +202,7 @@ impl WasmPtr { /// modified. #[inline] pub fn read_utf8_string( - self, + &self, view: &MemoryView, len: M::Offset, ) -> Result { @@ -215,7 +215,7 @@ impl WasmPtr { /// This method is safe to call even if the memory is being concurrently /// modified. #[inline] - pub fn read_utf8_string_with_nul(self, view: &MemoryView) -> Result { + pub fn read_utf8_string_with_nul(&self, view: &MemoryView) -> Result { let vec = self.read_until(view, |&byte| byte == 0)?; Ok(String::from_utf8(vec)?) } diff --git a/lib/api/src/sys/store.rs b/lib/api/src/sys/store.rs index 542ef61f7e2..e90bbe48c81 100644 --- a/lib/api/src/sys/store.rs +++ b/lib/api/src/sys/store.rs @@ -1,6 +1,5 @@ use crate::sys::tunables::BaseTunables; use std::fmt; -use std::sync::{Arc, RwLock}; #[cfg(feature = "compiler")] use wasmer_compiler::{Engine, EngineBuilder, Tunables}; use wasmer_vm::{init_traps, TrapHandler, TrapHandlerFn}; @@ -33,7 +32,6 @@ pub struct Store { pub(crate) inner: Box, #[cfg(feature = "compiler")] engine: Engine, - trap_handler: Arc>>>>, } impl Store { @@ -80,7 +78,6 @@ impl Store { trap_handler: None, }), engine: engine.cloned(), - trap_handler: Arc::new(RwLock::new(None)), } } @@ -114,8 +111,8 @@ impl PartialEq for Store { unsafe impl TrapHandler for Store { fn custom_trap_handler(&self, call: &dyn Fn(&TrapHandlerFn) -> bool) -> bool { - if let Some(handler) = self.trap_handler.read().unwrap().as_ref() { - call(handler) + if let Some(handler) = self.inner.trap_handler.as_ref() { + call(handler.as_ref()) } else { false } @@ -242,7 +239,7 @@ impl<'a> StoreRef<'a> { self.inner .trap_handler .as_ref() - .map(|handler| handler as *const _) + .map(|handler| handler.as_ref() as *const _) } } diff --git a/lib/api/tests/sys_reference_types.rs b/lib/api/tests/sys_reference_types.rs index b481a07d8f9..22833b7ce11 100644 --- a/lib/api/tests/sys_reference_types.rs +++ b/lib/api/tests/sys_reference_types.rs @@ -44,15 +44,15 @@ mod sys { } let func_to_call = - Function::new_typed_with_env(&mut store, &env, |mut env: FunctionEnvMut| -> i32 { - env.data_mut().0.store(true, Ordering::SeqCst); + Function::new_typed_with_env(&mut store, &env, |env: FunctionEnvMut| -> i32 { + env.data().0.store(true, Ordering::SeqCst); 343 }); let call_set_value: &Function = instance.exports.get_function("call_set_value")?; let results: Box<[Value]> = call_set_value.call(&mut store, &[Value::FuncRef(Some(func_to_call))])?; assert!(env - .as_mut(&mut store.as_store_mut()) + .as_ref(&store.as_store_ref()) .0 .load(Ordering::SeqCst)); assert_eq!(&*results, &[Value::I32(343)]); diff --git a/lib/c-api/src/wasm_c_api/wasi/mod.rs b/lib/c-api/src/wasm_c_api/wasi/mod.rs index 4501b83f44f..a4a40358f10 100644 --- a/lib/c-api/src/wasm_c_api/wasi/mod.rs +++ b/lib/c-api/src/wasm_c_api/wasi/mod.rs @@ -197,14 +197,6 @@ pub unsafe extern "C" fn wasi_env_new( #[no_mangle] pub extern "C" fn wasi_env_delete(_state: Option>) {} -/// Set the memory on a [`wasi_env_t`]. -#[no_mangle] -pub unsafe extern "C" fn wasi_env_set_memory(env: &mut wasi_env_t, memory: &wasm_memory_t) { - let mut store_mut = env.store.store_mut(); - let wasi_env = env.inner.data_mut(&mut store_mut); - wasi_env.set_memory(memory.extern_.memory()); -} - #[no_mangle] pub unsafe extern "C" fn wasi_env_read_stdout( env: &mut wasi_env_t, @@ -212,8 +204,8 @@ pub unsafe extern "C" fn wasi_env_read_stdout( buffer_len: usize, ) -> isize { let inner_buffer = slice::from_raw_parts_mut(buffer as *mut _, buffer_len as usize); - let mut store_mut = env.store.store_mut(); - let state = env.inner.data_mut(&mut store_mut).state(); + let store = env.store.store(); + let state = env.inner.data(&store).state(); if let Ok(mut stdout) = state.stdout() { if let Some(stdout) = stdout.as_mut() { @@ -382,11 +374,10 @@ pub unsafe extern "C" fn wasi_env_initialize_instance( store: &mut wasm_store_t, instance: &mut wasm_instance_t, ) -> bool { - let mem = c_try!(instance.inner.exports.get_memory("memory"); otherwise false); wasi_env .inner - .data_mut(&mut store.inner.store_mut()) - .set_memory(mem.clone()); + .initialize(&mut store.inner.store_mut(), &instance.inner) + .unwrap(); true } diff --git a/lib/cli/src/commands/run.rs b/lib/cli/src/commands/run.rs index 4c742306e00..5cbce9d0f3c 100644 --- a/lib/cli/src/commands/run.rs +++ b/lib/cli/src/commands/run.rs @@ -382,6 +382,9 @@ impl Run { name, suggestion ), + ExportError::SerializationFailed(err) => { + anyhow!("Failed to serialize the module - {}", err) + } } } })? diff --git a/lib/cli/src/commands/run/wasi.rs b/lib/cli/src/commands/run/wasi.rs index af971543696..a5c16169ed2 100644 --- a/lib/cli/src/commands/run/wasi.rs +++ b/lib/cli/src/commands/run/wasi.rs @@ -4,7 +4,7 @@ use std::collections::BTreeSet; use std::path::PathBuf; use wasmer::{AsStoreMut, FunctionEnv, Instance, Module, RuntimeError, Value}; use wasmer_wasi::{ - get_wasi_versions, import_object_for_all_wasi_versions, is_wasix_module, WasiEnv, WasiError, + get_wasi_versions, import_object_for_all_wasi_versions, WasiEnv, WasiError, WasiState, WasiVersion, }; @@ -69,7 +69,7 @@ impl Wasi { /// Helper function for instantiating a module with Wasi imports for the `Run` command. pub fn instantiate( &self, - store: &mut impl AsStoreMut, + mut store: &mut impl AsStoreMut, module: &Module, program_name: String, args: Vec, @@ -91,16 +91,12 @@ impl Wasi { } } - let wasi_env = wasi_state_builder.finalize(store)?; - wasi_env.env.as_mut(store).state.fs.is_wasix.store( - is_wasix_module(module), - std::sync::atomic::Ordering::Release, - ); + let mut wasi_env = wasi_state_builder.finalize(store)?; let mut import_object = import_object_for_all_wasi_versions(store, &wasi_env.env); - import_object.import_shared_memory(module, store); + import_object.import_shared_memory(module, &mut store); + let instance = Instance::new(store, module, &import_object)?; - let memory = instance.exports.get_memory("memory")?; - wasi_env.data_mut(store).set_memory(memory.clone()); + wasi_env.initialize(&mut store, &instance)?; Ok((wasi_env.env, instance)) } diff --git a/lib/cli/src/commands/wasmer_create_exe_main.c b/lib/cli/src/commands/wasmer_create_exe_main.c index a58fb5c73c2..a1966b106cc 100644 --- a/lib/cli/src/commands/wasmer_create_exe_main.c +++ b/lib/cli/src/commands/wasmer_create_exe_main.c @@ -149,23 +149,11 @@ int main(int argc, char *argv[]) { } #ifdef WASI - // Read the exports. - wasm_extern_vec_t exports; - wasm_instance_exports(instance, &exports); - wasm_memory_t* mem = NULL; - for (size_t i = 0; i < exports.size; i++) { - mem = wasm_extern_as_memory(exports.data[i]); - if (mem) { - break; - } - } - - if (!mem) { - fprintf(stderr, "Failed to create instance: Could not find memory in exports\n"); + if (!wasi_env_initialize_instance(wasi_env, store, instance)) { + fprintf(stderr, "Failed to initialize env\n"); print_wasmer_error(); return -1; } - wasi_env_set_memory(wasi_env, mem); own wasm_func_t *start_function = wasi_get_start_function(instance); if (!start_function) { diff --git a/lib/cli/src/commands/wasmer_static_create_exe_main.c b/lib/cli/src/commands/wasmer_static_create_exe_main.c index 2276ed3bc75..20e6d13bff5 100644 --- a/lib/cli/src/commands/wasmer_static_create_exe_main.c +++ b/lib/cli/src/commands/wasmer_static_create_exe_main.c @@ -144,23 +144,11 @@ int main(int argc, char *argv[]) { } #ifdef WASI - // Read the exports. - wasm_extern_vec_t exports; - wasm_instance_exports(instance, &exports); - wasm_memory_t* mem = NULL; - for (size_t i = 0; i < exports.size; i++) { - mem = wasm_extern_as_memory(exports.data[i]); - if (mem) { - break; - } - } - - if (!mem) { - fprintf(stderr, "Failed to create instance: Could not find memory in exports\n"); + if (!wasi_env_initialize_instance(wasi_env, store, instance)) { + fprintf(stderr, "Failed to initialize env\n"); print_wasmer_error(); return -1; } - wasi_env_set_memory(wasi_env, mem); own wasm_func_t *start_function = wasi_get_start_function(instance); if (!start_function) { diff --git a/lib/derive/src/value_type.rs b/lib/derive/src/value_type.rs index 5e9fe23c826..0280f5ead13 100644 --- a/lib/derive/src/value_type.rs +++ b/lib/derive/src/value_type.rs @@ -1,7 +1,7 @@ use proc_macro2::TokenStream; use proc_macro_error::abort; use quote::quote; -use syn::{Data, DeriveInput, Fields, Member, Meta, MetaList, NestedMeta}; +use syn::{Data, DeriveInput, Member, Meta, MetaList, NestedMeta, Field}; /// We can only validate types that have a well defined layout. fn check_repr(input: &DeriveInput) { @@ -35,7 +35,7 @@ fn check_repr(input: &DeriveInput) { } /// Zero out any padding bytes between fields. -fn zero_padding(fields: &Fields) -> TokenStream { +fn zero_padding(fields: Vec<&Field>) -> TokenStream { let names: Vec<_> = fields .iter() .enumerate() @@ -93,18 +93,18 @@ pub fn impl_value_type(input: &DeriveInput) -> TokenStream { let struct_name = &input.ident; let (impl_generics, ty_generics, where_clause) = input.generics.split_for_impl(); - let fields = match &input.data { - Data::Struct(ds) => &ds.fields, + let zero_padding = match &input.data { + Data::Struct(ds) => zero_padding(ds.fields.iter().collect()), _ => abort!(input, "ValueType can only be derived for structs"), }; - let zero_padding = zero_padding(fields); - quote! { unsafe impl #impl_generics ::wasmer::ValueType for #struct_name #ty_generics #where_clause { #[inline] fn zero_padding_bytes(&self, _bytes: &mut [::core::mem::MaybeUninit]) { - #zero_padding + unsafe { + #zero_padding + } } } } diff --git a/lib/emscripten/src/lib.rs b/lib/emscripten/src/lib.rs index 1e4b7af80ea..8a6a2f794f8 100644 --- a/lib/emscripten/src/lib.rs +++ b/lib/emscripten/src/lib.rs @@ -25,7 +25,7 @@ use std::sync::{Arc, Mutex, RwLock}; use wasmer::{ imports, namespace, AsStoreMut, ExportError, Exports, Function, FunctionEnv, FunctionEnvMut, FunctionType, Global, Imports, Instance, Memory, MemoryType, Module, Pages, RuntimeError, - Table, TableType, TypedFunction, Value, WasmPtr, + Table, TableType, TypedFunction, Value, WasmPtr, AsStoreRef, }; use wasmer_types::Type as ValType; @@ -98,7 +98,7 @@ impl EmEnv { } } - pub fn set_memory(&mut self, memory: Memory) { + pub fn set_memory(&self, memory: Memory) { let mut w = self.memory.write().unwrap(); *w = Some(memory); } @@ -108,12 +108,13 @@ impl EmEnv { (&*self.memory.read().unwrap()).as_ref().cloned().unwrap() } - pub fn set_functions(&mut self, funcs: EmscriptenFunctions) { - self.funcs = Arc::new(Mutex::new(funcs)); + pub fn set_functions(&self, funcs: EmscriptenFunctions) { + let mut w = self.funcs.lock().unwrap(); + *w = funcs; } pub fn set_data( - &mut self, + &self, data: &EmscriptenGlobalsData, mapped_dirs: HashMap, ) { @@ -823,7 +824,7 @@ pub fn run_emscripten_instance( if let Ok(func) = instance.exports.get_typed_function(&env, "setThrew") { emfuncs.set_threw = Some(func); } - env.data_mut().set_functions(emfuncs); + env.data().set_functions(emfuncs); set_up_emscripten(&mut env, instance)?; @@ -864,12 +865,12 @@ fn store_module_arguments(env: &mut FunctionEnvMut, args: Vec<&str>) -> ( } pub fn emscripten_set_up_memory( - store: &mut impl AsStoreMut, + store: &impl AsStoreRef, env: &FunctionEnv, memory: &Memory, globals: &EmscriptenGlobalsData, ) -> Result<(), String> { - env.as_mut(store).set_memory(memory.clone()); + env.as_ref(store).set_memory(memory.clone()); let memory = memory.view(store); let dynamictop_ptr = WasmPtr::::new(globals.dynamictop_ptr).deref(&memory); let dynamic_base = globals.dynamic_base; diff --git a/lib/emscripten/src/memory.rs b/lib/emscripten/src/memory.rs index 2c905e30c88..4294a42cbfc 100644 --- a/lib/emscripten/src/memory.rs +++ b/lib/emscripten/src/memory.rs @@ -110,6 +110,8 @@ pub fn sbrk(mut ctx: FunctionEnvMut, increment: i32) -> i32 { increment, total_memory ); + drop(dynamictop_ptr); + if increment > 0 && new_dynamic_top < old_dynamic_top || new_dynamic_top < 0 { abort_on_cannot_grow_memory_old(ctx); return -1; diff --git a/lib/vbus/src/lib.rs b/lib/vbus/src/lib.rs index e51ec11ffac..0cda403e17b 100644 --- a/lib/vbus/src/lib.rs +++ b/lib/vbus/src/lib.rs @@ -5,8 +5,9 @@ use thiserror::Error; pub use wasmer_vfs::FileDescriptor; pub use wasmer_vfs::StdioMode; +use wasmer_vfs::VirtualFile; -pub type Result = std::result::Result; +pub type Result = std::result::Result; #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)] #[repr(transparent)] @@ -26,10 +27,14 @@ impl From for CallDescriptor { pub trait VirtualBus: fmt::Debug + Send + Sync + 'static { /// Starts a new WAPM sub process - fn new_spawn(&self) -> SpawnOptions; + fn new_spawn(&self) -> SpawnOptions { + SpawnOptions::new(Box::new(UnsupportedVirtualBusSpawner::default())) + } /// Creates a listener thats used to receive BUS commands - fn listen(&self) -> Result>; + fn listen<'a>(&'a self) -> Result<&'a dyn VirtualBusListener> { + Err(VirtualBusError::Unsupported) + } } pub trait VirtualBusSpawner { @@ -46,7 +51,7 @@ pub struct SpawnOptionsConfig { stdin_mode: StdioMode, stdout_mode: StdioMode, stderr_mode: StdioMode, - working_dir: String, + working_dir: Option, remote_instance: Option, access_token: Option, } @@ -80,8 +85,8 @@ impl SpawnOptionsConfig { self.stderr_mode } - pub fn working_dir(&self) -> &str { - self.working_dir.as_str() + pub fn working_dir(&self) -> Option<&str> { + self.working_dir.as_ref().map(|a| a.as_str()) } pub fn remote_instance(&self) -> Option<&str> { @@ -110,7 +115,7 @@ impl SpawnOptions { stdin_mode: StdioMode::Null, stdout_mode: StdioMode::Null, stderr_mode: StdioMode::Null, - working_dir: "/".to_string(), + working_dir: None, remote_instance: None, access_token: None, }, @@ -157,7 +162,7 @@ impl SpawnOptions { } pub fn working_dir(&mut self, working_dir: String) -> &mut Self { - self.conf.working_dir = working_dir; + self.conf.working_dir = Some(working_dir); self } @@ -179,8 +184,18 @@ impl SpawnOptions { #[derive(Debug)] pub struct BusSpawnedProcess { + /// Name of the spawned process + pub name: String, + /// Configuration applied to this spawned thread + pub config: SpawnOptionsConfig, /// Reference to the spawned instance - pub inst: Box, + pub inst: Box, + /// Virtual file used for stdin + pub stdin: Option>, + /// Virtual file used for stdout + pub stdout: Option>, + /// Virtual file used for stderr + pub stderr: Option>, } pub trait VirtualBusScope: fmt::Debug + Send + Sync + 'static { @@ -192,10 +207,15 @@ pub trait VirtualBusInvokable: fmt::Debug + Send + Sync + 'static { /// Invokes a service within this instance fn invoke( &self, - topic: String, + topic_hash: u128, format: BusDataFormat, - buf: &[u8], - ) -> Result>; + buf: Vec, + ) -> Box; +} + +pub trait VirtualBusInvoked: fmt::Debug + Unpin + 'static { + //// Returns once the bus has been invoked (or failed) + fn poll_invoked(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll>>; } pub trait VirtualBusProcess: @@ -204,29 +224,117 @@ pub trait VirtualBusProcess: /// Returns the exit code if the instance has finished fn exit_code(&self) -> Option; - /// Returns a file descriptor used to read the STDIN - fn stdin_fd(&self) -> Option; - - /// Returns a file descriptor used to write to STDOUT - fn stdout_fd(&self) -> Option; - - /// Returns a file descriptor used to write to STDERR - fn stderr_fd(&self) -> Option; + /// Polls to check if the process is ready yet to receive commands + fn poll_ready(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<()>; } pub trait VirtualBusInvocation: - VirtualBusScope + VirtualBusInvokable + fmt::Debug + Send + Sync + 'static + VirtualBusInvokable + fmt::Debug + Send + Sync + Unpin + 'static { /// Polls for new listen events related to this context fn poll_event(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll; } +#[derive(Debug)] +pub struct InstantInvocation +{ + val: Option, + err: Option, + call: Option>, +} + +impl InstantInvocation +{ + pub fn response(format: BusDataFormat, data: Vec) -> Self { + Self { + val: Some(BusInvocationEvent::Response { format, data }), + err: None, + call: None + } + } + + pub fn fault(err: VirtualBusError) -> Self { + Self { + val: None, + err: Some(err), + call: None + } + } + + pub fn call(val: Box) -> Self { + Self { + val: None, + err: None, + call: Some(val) + } + } +} + +impl VirtualBusInvoked +for InstantInvocation +{ + fn poll_invoked(mut self: Pin<&mut Self>, _cx: &mut Context<'_>) -> Poll>> { + if let Some(err) = self.err.take() { + return Poll::Ready(Err(err)); + } + if let Some(val) = self.val.take() { + return Poll::Ready(Ok(Box::new(InstantInvocation { + val: Some(val), + err: None, + call: None, + }))); + } + match self.call.take() { + Some(val) => { + Poll::Ready(Ok(val)) + }, + None => { + Poll::Ready(Err(VirtualBusError::AlreadyConsumed)) + } + } + } +} + +impl VirtualBusInvocation +for InstantInvocation +{ + fn poll_event(mut self: Pin<&mut Self>, _cx: &mut Context<'_>) -> Poll { + match self.val.take() { + Some(val) => { + Poll::Ready(val) + }, + None => { + Poll::Ready(BusInvocationEvent::Fault { fault: VirtualBusError::AlreadyConsumed }) + } + } + } +} + +impl VirtualBusInvokable +for InstantInvocation +{ + fn invoke( + &self, + _topic_hash: u128, + _format: BusDataFormat, + _buf: Vec, + ) -> Box { + Box::new( + InstantInvocation { + val: None, + err: Some(VirtualBusError::InvalidTopic), + call: None + } + ) + } +} + #[derive(Debug)] pub enum BusInvocationEvent { /// The server has sent some out-of-band data to you Callback { /// Topic that this call relates to - topic: String, + topic_hash: u128, /// Format of the data we received format: BusDataFormat, /// Data passed in the call @@ -239,34 +347,43 @@ pub enum BusInvocationEvent { /// Data returned by the call data: Vec, }, + /// The service has responded with a fault + Fault { + /// Fault code that was raised + fault: VirtualBusError + } } -pub trait VirtualBusListener: fmt::Debug + Send + Sync + 'static { +pub trait VirtualBusListener: fmt::Debug + Send + Sync + Unpin + 'static { /// Polls for new calls to this service - fn poll_call(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll; + fn poll(self: Pin<&Self>, cx: &mut Context<'_>) -> Poll; } #[derive(Debug)] pub struct BusCallEvent { - /// Topic that this call relates to - pub topic: String, + /// Topic hash that this call relates to + pub topic_hash: u128, /// Reference to the call itself - pub called: Box, + pub called: Box, /// Format of the data we received pub format: BusDataFormat, /// Data passed in the call pub data: Vec, } -pub trait VirtualBusCalled: VirtualBusListener + fmt::Debug + Send + Sync + 'static { +pub trait VirtualBusCalled: fmt::Debug + Send + Sync + 'static +{ + /// Polls for new calls to this service + fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll; + /// Sends an out-of-band message back to the caller - fn callback(&self, topic: String, format: BusDataFormat, buf: &[u8]) -> Result<()>; + fn callback(&self, topic_hash: u128, format: BusDataFormat, buf: Vec); /// Informs the caller that their call has failed - fn fault(self, fault: BusError) -> Result<()>; + fn fault(self: Box, fault: VirtualBusError); /// Finishes the call and returns a particular response - fn reply(self, format: BusDataFormat, buf: &[u8]) -> Result<()>; + fn reply(&self, format: BusDataFormat, buf: Vec); } /// Format that the supplied data is in @@ -284,13 +401,6 @@ pub enum BusDataFormat { pub struct UnsupportedVirtualBus {} impl VirtualBus for UnsupportedVirtualBus { - fn new_spawn(&self) -> SpawnOptions { - SpawnOptions::new(Box::new(UnsupportedVirtualBusSpawner::default())) - } - - fn listen(&self) -> Result> { - Err(BusError::Unsupported) - } } #[derive(Debug, Default)] @@ -298,12 +408,12 @@ pub struct UnsupportedVirtualBusSpawner {} impl VirtualBusSpawner for UnsupportedVirtualBusSpawner { fn spawn(&mut self, _name: &str, _config: &SpawnOptionsConfig) -> Result { - Err(BusError::Unsupported) + Err(VirtualBusError::Unsupported) } } #[derive(Error, Copy, Clone, Debug, PartialEq, Eq)] -pub enum BusError { +pub enum VirtualBusError { /// Failed during serialization #[error("serialization failed")] Serialization, diff --git a/lib/wasi-types/src/bus.rs b/lib/wasi-types/src/bus.rs index ff8bea2ecb3..33ff6e77ec4 100644 --- a/lib/wasi-types/src/bus.rs +++ b/lib/wasi-types/src/bus.rs @@ -1,6 +1,7 @@ use super::*; use wasmer_derive::ValueType; -use wasmer_types::MemorySize; + +pub type __wasi_hash_t = u128; pub type __wasi_busdataformat_t = u8; pub const __WASI_BUS_DATA_FORMAT_RAW: __wasi_busdataformat_t = 0; @@ -28,7 +29,7 @@ pub struct __wasi_option_bid_t { pub bid: __wasi_bid_t, } -pub type __wasi_cid_t = u8; +pub type __wasi_cid_t = u64; #[derive(Debug, Copy, Clone, PartialEq, Eq, ValueType)] #[repr(C)] @@ -62,23 +63,20 @@ pub struct __wasi_busevent_exit_t { #[derive(Debug, Copy, Clone, PartialEq, Eq, ValueType)] #[repr(C)] -pub struct __wasi_busevent_call_t { +pub struct __wasi_busevent_call_t { pub parent: __wasi_option_cid_t, pub cid: __wasi_cid_t, pub format: __wasi_busdataformat_t, - pub topic_ptr: M::Offset, - pub topic_len: M::Offset, - pub buf_ptr: M::Offset, - pub buf_len: M::Offset, + pub topic_hash: __wasi_hash_t, + pub fd: __wasi_fd_t, } #[derive(Debug, Copy, Clone, PartialEq, Eq, ValueType)] #[repr(C)] -pub struct __wasi_busevent_result_t { +pub struct __wasi_busevent_result_t { pub format: __wasi_busdataformat_t, pub cid: __wasi_cid_t, - pub buf_ptr: M::Offset, - pub buf_len: M::Offset, + pub fd: __wasi_fd_t, } #[derive(Debug, Copy, Clone, PartialEq, Eq, ValueType)] @@ -96,18 +94,25 @@ pub struct __wasi_busevent_close_t { #[derive(Copy, Clone)] #[repr(C)] -pub union __wasi_busevent_u { +pub union __wasi_busevent_u { pub noop: u8, pub exit: __wasi_busevent_exit_t, - pub call: __wasi_busevent_call_t, - pub result: __wasi_busevent_result_t, + pub call: __wasi_busevent_call_t, + pub result: __wasi_busevent_result_t, pub fault: __wasi_busevent_fault_t, pub close: __wasi_busevent_close_t, } +#[derive(Copy, Clone, ValueType)] +#[repr(C)] +pub struct __wasi_busevent_t { + pub tag: __wasi_buseventtype_t, + pub padding: [u8; 63], +} + #[derive(Copy, Clone)] #[repr(C)] -pub struct __wasi_busevent_t { +pub struct __wasi_busevent_t2 { pub tag: __wasi_buseventtype_t, - pub u: __wasi_busevent_u, + pub u: __wasi_busevent_u, } diff --git a/lib/wasi-types/src/file.rs b/lib/wasi-types/src/file.rs index 0d58ba9bbe4..92f0e74a6be 100644 --- a/lib/wasi-types/src/file.rs +++ b/lib/wasi-types/src/file.rs @@ -18,6 +18,9 @@ pub const __WASI_STDERR_FILENO: __wasi_fd_t = 2; pub type __wasi_pid_t = u32; pub type __wasi_tid_t = u32; +pub type __wasi_tl_key_t = u32; +pub type __wasi_tl_val_t = u64; + pub type __wasi_fdflags_t = u16; pub const __WASI_FDFLAG_APPEND: __wasi_fdflags_t = 1 << 0; pub const __WASI_FDFLAG_DSYNC: __wasi_fdflags_t = 1 << 1; diff --git a/lib/wasi/Cargo.toml b/lib/wasi/Cargo.toml index bfa746e2921..7f4a456d44c 100644 --- a/lib/wasi/Cargo.toml +++ b/lib/wasi/Cargo.toml @@ -31,6 +31,10 @@ bincode = { version = "1.3", optional = true } chrono = { version = "^0.4", default-features = false, features = [ "wasmbind", "std", "clock" ], optional = true } derivative = { version = "^2" } bytes = "1" +lazy_static = "1.4" +sha2 = { version = "0.10" } +waker-fn = { version = "1.1" } +cooked-waker = "^5" [target.'cfg(unix)'.dependencies] libc = { version = "^0.2", default-features = false } @@ -45,18 +49,23 @@ wasm-bindgen = "0.2.74" wasm-bindgen-test = "0.3.0" tracing-wasm = "0.2" +[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] +tracing-subscriber = { version = "^0.2" } + [features] default = ["sys-default"] sys = ["wasmer/sys"] -sys-default = ["wasmer/wat", "wasmer/compiler", "sys", "logging", "host-fs", "sys-poll", "host-vnet" ] +sys-default = ["wasmer/wat", "wasmer/compiler", "sys", "logging", "host-fs", "sys-poll", "sys-thread", "host-vnet", "host-threads" ] sys-poll = [] +sys-thread = [] js = ["wasmer/js", "mem-fs", "wasmer-vfs/no-time", "getrandom/js", "chrono"] js-default = ["js", "wasmer/js-default"] test-js = ["js", "wasmer/js-default", "wasmer/wat"] host-vnet = [ "wasmer-wasi-local-networking" ] +host-threads = [] host-fs = ["wasmer-vfs/host-fs"] mem-fs = ["wasmer-vfs/mem-fs"] diff --git a/lib/wasi/src/lib.rs b/lib/wasi/src/lib.rs index 4daeb25a47d..ed1152f5ac0 100644 --- a/lib/wasi/src/lib.rs +++ b/lib/wasi/src/lib.rs @@ -40,8 +40,6 @@ mod state; mod syscalls; mod utils; -use crate::syscalls::*; - pub use crate::state::{ Fd, Pipe, Stderr, Stdin, Stdout, WasiFs, WasiInodes, WasiState, WasiStateBuilder, WasiStateCreationError, ALL_RIGHTS, VIRTUAL_ROOT_FD, @@ -50,6 +48,11 @@ pub use crate::syscalls::types; pub use crate::utils::{ get_wasi_version, get_wasi_versions, is_wasi_module, is_wasix_module, WasiVersion, }; +#[allow(unused_imports)] +#[cfg(feature = "js")] +use bytes::Bytes; +use derivative::Derivative; +use tracing::trace; pub use wasmer_vbus::{UnsupportedVirtualBus, VirtualBus}; #[deprecated(since = "2.1.0", note = "Please use `wasmer_vfs::FsError`")] pub use wasmer_vfs::FsError as WasiFsError; @@ -59,18 +62,19 @@ pub use wasmer_vfs::{FsError, VirtualFile}; pub use wasmer_vnet::{UnsupportedVirtualNetworking, VirtualNetworking}; use wasmer_wasi_types::__WASI_CLOCK_MONOTONIC; -use derivative::*; +use std::cell::RefCell; use std::ops::Deref; +use std::sync::atomic::{AtomicU32, Ordering}; use thiserror::Error; use wasmer::{ - imports, namespace, AsStoreMut, AsStoreRef, Exports, Function, FunctionEnv, Imports, Memory, - Memory32, MemoryAccessError, MemorySize, MemoryView, Module, TypedFunction, + imports, namespace, AsStoreMut, Exports, Function, FunctionEnv, Imports, Memory, Memory32, + MemoryAccessError, MemorySize, Module, TypedFunction, Memory64, MemoryView, AsStoreRef, Instance, ExportError }; pub use runtime::{ - PluggableRuntimeImplementation, WasiRuntimeImplementation, WasiThreadError, WasiTtyState, + PluggableRuntimeImplementation, WasiRuntimeImplementation, WasiThreadError, WasiTtyState }; -use std::sync::{mpsc, Arc, Mutex, RwLockReadGuard, RwLockWriteGuard}; +use std::sync::{Arc, RwLockReadGuard, RwLockWriteGuard}; use std::time::Duration; /// This is returned in `RuntimeError`. @@ -84,9 +88,20 @@ pub enum WasiError { } /// Represents the ID of a WASI thread -#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[derive(Debug, Default, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] pub struct WasiThreadId(u32); +impl WasiThreadId { + pub fn raw(&self) -> u32 { + self.0 + } + + pub fn inc(&mut self) -> WasiThreadId { + self.0 += 1; + self.clone() + } +} + impl From for WasiThreadId { fn from(id: u32) -> Self { Self(id) @@ -98,203 +113,156 @@ impl From for u32 { } } -/// Represents the ID of a sub-process -#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] -pub struct WasiBusProcessId(u32); +/// Represents the ID of a WASI calling thread +#[derive(Debug, Default, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] +pub struct WasiCallingId(u32); -impl From for WasiBusProcessId { - fn from(id: u32) -> Self { - Self(id) +impl WasiCallingId { + pub fn raw(&self) -> u32 { + self.0 } -} -impl From for u32 { - fn from(id: WasiBusProcessId) -> u32 { - id.0 as u32 - } -} -#[derive(Debug, Clone)] -pub struct WasiThread { - /// ID of this thread - #[allow(dead_code)] - id: WasiThreadId, - /// Signalers used to tell joiners that the thread has exited - exit: Arc>>>, - /// Event to wait on for the thread to join - join: Arc>>, + pub fn inc(&mut self) -> WasiCallingId { + self.0 += 1; + self.clone() + } } -impl WasiThread { - /// Waits for the thread to exit (false = timeout) - pub fn join(&self, timeout: Duration) -> bool { - let guard = self.join.lock().unwrap(); - let timeout = guard.recv_timeout(timeout); - match timeout { - Ok(_) => true, - Err(mpsc::RecvTimeoutError::Disconnected) => true, - Err(mpsc::RecvTimeoutError::Timeout) => false, - } +impl From for WasiCallingId { + fn from(id: u32) -> Self { + Self(id) } } - -pub struct WasiFunctionEnv { - pub env: FunctionEnv, +impl From for u32 { + fn from(t: WasiCallingId) -> u32 { + t.0 as u32 + } } -impl WasiFunctionEnv { - pub fn new(store: &mut impl AsStoreMut, env: WasiEnv) -> Self { - Self { - env: FunctionEnv::new(store, env), - } - } +/// Represents the ID of a sub-process +#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] +pub struct WasiBusProcessId(u32); - /// Get an `Imports` for a specific version of WASI detected in the module. - pub fn import_object( - &self, - store: &mut impl AsStoreMut, - module: &Module, - ) -> Result { - let wasi_version = get_wasi_version(module, false).ok_or(WasiError::UnknownWasiVersion)?; - Ok(generate_import_object_from_env( - store, - &self.env, - wasi_version, - )) +impl From for WasiBusProcessId { + fn from(id: u32) -> Self { + Self(id) } - - pub fn data_mut<'a>(&'a self, store: &'a mut impl AsStoreMut) -> &'a mut WasiEnv { - self.env.as_mut(store) +} +impl Into for WasiBusProcessId { + fn into(self) -> u32 { + self.0 as u32 } +} - /// Like `import_object` but containing all the WASI versions detected in - /// the module. - pub fn import_object_for_all_wasi_versions( - &self, - store: &mut impl AsStoreMut, - module: &Module, - ) -> Result { - let wasi_versions = - get_wasi_versions(module, false).ok_or(WasiError::UnknownWasiVersion)?; - - let mut resolver = Imports::new(); - for version in wasi_versions.iter() { - let new_import_object = generate_import_object_from_env(store, &self.env, *version); - for ((n, m), e) in new_import_object.into_iter() { - resolver.define(&n, &m, e); - } - } - - if is_wasix_module(module) { - self.data_mut(store) - .state - .fs - .is_wasix - .store(true, std::sync::atomic::Ordering::Release); - } - - Ok(resolver) - } +#[derive(Clone)] +pub struct WasiEnvInner +{ + /// Represents a reference to the memory + memory: Memory, + /// Represents the module that is being used (this is NOT send/sync) + /// however the code itself makes sure that it is used in a safe way + module: Module, + /// Represents the callback for spawning a thread (name = "_start_thread") + thread_spawn: Option>, + /// Represents the callback for spawning a reactor (name = "_react") + react: Option>, + /// Represents the callback for destroying a local thread variable (name = "_thread_local_destroy") + thread_local_destroy: Option>, + /// Represents the callback for allocating memory (name = "_malloc") + _malloc: Option>, + /// Represents the callback for deallocating memory (name = "_free") + _free: Option>, } +/// The code itself makes safe use of the struct so multiple threads don't access +/// it (without this the JS code prevents the reference to the module from being stored +/// which is needed for the multithreading mode) +unsafe impl Send for WasiEnvInner { } +unsafe impl Sync for WasiEnvInner { } + /// The environment provided to the WASI imports. #[derive(Derivative, Clone)] #[derivative(Debug)] -#[allow(dead_code)] -pub struct WasiEnv { +pub struct WasiEnv +where +{ /// ID of this thread (zero is the main thread) id: WasiThreadId, - /// Represents a reference to the memory - memory: Option, - /// If the module has it then map the thread start - #[derivative(Debug = "ignore")] - thread_start: Option>, - #[derivative(Debug = "ignore")] - reactor_work: Option>, - #[derivative(Debug = "ignore")] - reactor_finish: Option>, - #[derivative(Debug = "ignore")] - malloc: Option>, - #[derivative(Debug = "ignore")] - free: Option>, /// Shared state of the WASI system. Manages all the data that the /// executing WASI program can see. pub state: Arc, + /// Inner functions and references that are loaded before the environment starts + #[derivative(Debug = "ignore")] + pub inner: Option, /// Implementation of the WASI runtime. pub(crate) runtime: Arc, } +// Represents the current thread ID for the executing method +thread_local!(static CALLER_ID: RefCell = RefCell::new(0)); +lazy_static::lazy_static! { + static ref CALLER_ID_SEED: Arc = Arc::new(AtomicU32::new(1)); +} + +/// Returns the current thread ID +pub fn current_caller_id() -> WasiCallingId { + CALLER_ID.with(|f| { + let mut caller_id = f.borrow_mut(); + if *caller_id == 0 { + *caller_id = CALLER_ID_SEED.fetch_add(1, Ordering::AcqRel); + } + *caller_id + }).into() +} + impl WasiEnv { - /// Create a new WasiEnv from a WasiState (memory will be set to None) pub fn new(state: WasiState) -> Self { - Self { + let state = Arc::new(state); + Self::new_ext(state) + } + + fn new_ext(state: Arc) -> Self { + let ret = Self { id: 0u32.into(), - state: Arc::new(state), - memory: None, - thread_start: None, - reactor_work: None, - reactor_finish: None, - malloc: None, - free: None, + state, + inner: None, runtime: Arc::new(PluggableRuntimeImplementation::default()), - } + }; + ret } - + /// Returns a copy of the current runtime implementation for this environment - pub fn runtime(&self) -> &(dyn WasiRuntimeImplementation) { + pub fn runtime<'a>(&'a self) -> &'a (dyn WasiRuntimeImplementation) { self.runtime.deref() } /// Overrides the runtime implementation for this environment - pub fn set_runtime(&mut self, runtime: R) + pub fn set_runtime(&mut self, runtime: R) where R: WasiRuntimeImplementation + Send + Sync + 'static, { self.runtime = Arc::new(runtime); } - /// Returns the current thread ID - pub fn current_thread_id(&self) -> WasiThreadId { - self.id - } - - /// Creates a new thread only this wasi environment - pub fn new_thread(&self) -> WasiThread { - let (tx, rx) = mpsc::channel(); - - let mut guard = self.state.threading.lock().unwrap(); - - guard.thread_seed += 1; - let next_id: WasiThreadId = guard.thread_seed.into(); - - let thread = WasiThread { - id: next_id, - exit: Arc::new(Mutex::new(Some(tx))), - join: Arc::new(Mutex::new(rx)), - }; - - guard.threads.insert(thread.id, thread.clone()); - thread - } - - /// Copy the lazy reference so that when it's initialized during the - /// export phase, all the other references get a copy of it - pub fn memory_clone(&self) -> Option { - self.memory.clone() + /// Returns the number of active threads + pub fn active_threads(&self) -> u32 { + let guard = self.state.threading.read().unwrap(); + guard.active_threads() } // Yields execution pub fn yield_now(&self) -> Result<(), WasiError> { - self.runtime.yield_now(self.id)?; + self.runtime.yield_now(current_caller_id())?; Ok(()) } // Sleeps for a period of time pub fn sleep(&self, duration: Duration) -> Result<(), WasiError> { let duration = duration.as_nanos(); - let start = platform_clock_time_get(__WASI_CLOCK_MONOTONIC, 1_000_000).unwrap() as u128; + let start = syscalls::platform_clock_time_get(__WASI_CLOCK_MONOTONIC, 1_000_000).unwrap() as u128; self.yield_now()?; loop { - let now = platform_clock_time_get(__WASI_CLOCK_MONOTONIC, 1_000_000).unwrap() as u128; + let now = syscalls::platform_clock_time_get(__WASI_CLOCK_MONOTONIC, 1_000_000).unwrap() as u128; let delta = match now.checked_sub(start) { Some(a) => a, None => { @@ -317,44 +285,46 @@ impl WasiEnv { } /// Accesses the virtual networking implementation - pub fn net(&self) -> &(dyn VirtualNetworking) { + pub fn net<'a>(&'a self) -> &'a (dyn VirtualNetworking) { self.runtime.networking() } /// Accesses the virtual bus implementation - pub fn bus(&self) -> &(dyn VirtualBus) { + pub fn bus<'a>(&'a self) -> &'a (dyn VirtualBus) { self.runtime.bus() } - /// Set the memory of the WasiEnv (can only be done once) - pub fn set_memory(&mut self, memory: Memory) { - if self.memory.is_some() { - panic!("Memory of a WasiEnv can only be set once!"); - } - self.memory = Some(memory); + /// Providers safe access to the initialized part of WasiEnv + /// (it must be initialized before it can be used) + pub fn inner(&self) -> &WasiEnvInner { + self.inner.as_ref() + .expect("You must initialize the WasiEnv before using it") } - + /// Providers safe access to the memory /// (it must be initialized before it can be used) pub fn memory_view<'a>(&'a self, store: &'a impl AsStoreRef) -> MemoryView<'a> { self.memory().view(store) } - /// Get memory, that needs to have been set fist + /// Providers safe access to the memory + /// (it must be initialized before it can be used) pub fn memory(&self) -> &Memory { - self.memory.as_ref().unwrap() + &self.inner().memory + } + + /// Copy the lazy reference so that when it's initialized during the + /// export phase, all the other references get a copy of it + pub fn memory_clone(&self) -> Memory { + self.memory().clone() } /// Get the WASI state pub fn state(&self) -> &WasiState { &self.state } - - pub(crate) fn get_memory_and_wasi_state<'a>( - &'a self, - store: &'a impl AsStoreRef, - _mem_index: u32, - ) -> (MemoryView<'a>, &WasiState) { + + pub(crate) fn get_memory_and_wasi_state<'a>(&'a self, store: &'a impl AsStoreRef, _mem_index: u32) -> (MemoryView<'a>, &WasiState) { let memory = self.memory_view(store); let state = self.state.deref(); (memory, state) @@ -383,23 +353,123 @@ impl WasiEnv { } } -/// Create an [`Imports`] from a [`Context`] +pub struct WasiFunctionEnv { + pub env: FunctionEnv, +} + +impl WasiFunctionEnv { + pub fn new(store: &mut impl AsStoreMut, env: WasiEnv) -> Self { + Self { + env: FunctionEnv::new(store, env), + } + } + + /// Get an `Imports` for a specific version of WASI detected in the module. + pub fn import_object( + &self, + store: &mut impl AsStoreMut, + module: &Module, + ) -> Result { + let wasi_version = get_wasi_version(module, false).ok_or(WasiError::UnknownWasiVersion)?; + Ok(generate_import_object_from_env( + store, + &self.env, + wasi_version, + )) + } + + /// Gets a reference to the WasiEnvironment + pub fn data<'a>(&'a self, store: &'a impl AsStoreRef) -> &'a WasiEnv { + self.env.as_ref(store) + } + + /// Gets a mutable- reference to the host state in this context. + pub fn data_mut<'a>(&'a mut self, store: &'a mut impl AsStoreMut) -> &'a mut WasiEnv { + self.env + .as_mut(store) + } + + /// Initializes the WasiEnv using the instance exports + /// (this must be executed before attempting to use it) + /// (as the stores can not by themselves be passed between threads we can store the module + /// in a thread-local variables and use it later - for multithreading) + pub fn initialize(&mut self, store: &mut impl AsStoreMut, instance: &Instance) -> Result<(), ExportError> + { + // List all the exports and imports + for ns in instance.module().exports() { + //trace!("module::export - {} ({:?})", ns.name(), ns.ty()); + trace!("module::export - {}", ns.name()); + } + for ns in instance.module().imports() { + trace!("module::import - {}::{}", ns.module(), ns.name()); + } + + // First we get the malloc function which if it exists will be used to + // create the pthread_self structure + let memory = instance.exports.get_memory("memory")?.clone(); + let new_inner = WasiEnvInner { + memory, + module: instance.module().clone(), + thread_spawn: instance.exports.get_typed_function(store, "_start_thread").ok(), + react: instance.exports.get_typed_function(store, "_react").ok(), + thread_local_destroy: instance.exports.get_typed_function(store, "_thread_local_destroy").ok(), + _malloc: instance.exports.get_typed_function(&store, "_malloc").ok(), + _free: instance.exports.get_typed_function(store, "_free").ok() + }; + + let env = self.data_mut(store); + env.inner.replace(new_inner); + + env.state.fs.is_wasix.store( + is_wasix_module(instance.module()), + std::sync::atomic::Ordering::Release, + ); + + Ok(()) + } + + /// Like `import_object` but containing all the WASI versions detected in + /// the module. + pub fn import_object_for_all_wasi_versions( + &self, + store: &mut impl AsStoreMut, + module: &Module, + ) -> Result { + let wasi_versions = + get_wasi_versions(module, false).ok_or(WasiError::UnknownWasiVersion)?; + + let mut resolver = Imports::new(); + for version in wasi_versions.iter() { + let new_import_object = generate_import_object_from_env(store, &self.env, *version); + for ((n, m), e) in new_import_object.into_iter() { + resolver.define(&n, &m, e); + } + } + + Ok(resolver) + } +} + +/// Create an [`Imports`] with an existing [`WasiEnv`]. `WasiEnv` +/// needs a [`WasiState`], that can be constructed from a +/// [`WasiStateBuilder`](state::WasiStateBuilder). pub fn generate_import_object_from_env( store: &mut impl AsStoreMut, - env: &FunctionEnv, + ctx: &FunctionEnv, version: WasiVersion, ) -> Imports { match version { - WasiVersion::Snapshot0 => generate_import_object_snapshot0(store, env), + WasiVersion::Snapshot0 => generate_import_object_snapshot0(store, ctx), WasiVersion::Snapshot1 | WasiVersion::Latest => { - generate_import_object_snapshot1(store, env) + generate_import_object_snapshot1(store, ctx) } - WasiVersion::Wasix32v1 => generate_import_object_wasix32_v1(store, env), - WasiVersion::Wasix64v1 => generate_import_object_wasix64_v1(store, env), + WasiVersion::Wasix32v1 => generate_import_object_wasix32_v1(store, ctx), + WasiVersion::Wasix64v1 => generate_import_object_wasix64_v1(store, ctx), } } fn wasi_unstable_exports(mut store: &mut impl AsStoreMut, env: &FunctionEnv) -> Exports { + use syscalls::*; let namespace = namespace! { "args_get" => Function::new_typed_with_env(&mut store, env, args_get::), "args_sizes_get" => Function::new_typed_with_env(&mut store, env, args_sizes_get::), @@ -454,6 +524,7 @@ fn wasi_snapshot_preview1_exports( mut store: &mut impl AsStoreMut, env: &FunctionEnv, ) -> Exports { + use syscalls::*; let namespace = namespace! { "args_get" => Function::new_typed_with_env(&mut store, env, args_get::), "args_sizes_get" => Function::new_typed_with_env(&mut store, env, args_sizes_get::), @@ -503,15 +574,270 @@ fn wasi_snapshot_preview1_exports( }; namespace } + +fn wasix_exports_32( + mut store: &mut impl AsStoreMut, + env: &FunctionEnv, +) -> Exports +{ + use syscalls::*; + let namespace = namespace! { + "args_get" => Function::new_typed_with_env(&mut store, env, args_get::), + "args_sizes_get" => Function::new_typed_with_env(&mut store, env, args_sizes_get::), + "clock_res_get" => Function::new_typed_with_env(&mut store, env, clock_res_get::), + "clock_time_get" => Function::new_typed_with_env(&mut store, env, clock_time_get::), + "environ_get" => Function::new_typed_with_env(&mut store, env, environ_get::), + "environ_sizes_get" => Function::new_typed_with_env(&mut store, env, environ_sizes_get::), + "fd_advise" => Function::new_typed_with_env(&mut store, env, fd_advise), + "fd_allocate" => Function::new_typed_with_env(&mut store, env, fd_allocate), + "fd_close" => Function::new_typed_with_env(&mut store, env, fd_close), + "fd_datasync" => Function::new_typed_with_env(&mut store, env, fd_datasync), + "fd_fdstat_get" => Function::new_typed_with_env(&mut store, env, fd_fdstat_get::), + "fd_fdstat_set_flags" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_flags), + "fd_fdstat_set_rights" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_rights), + "fd_filestat_get" => Function::new_typed_with_env(&mut store, env, fd_filestat_get::), + "fd_filestat_set_size" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_size), + "fd_filestat_set_times" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_times), + "fd_pread" => Function::new_typed_with_env(&mut store, env, fd_pread::), + "fd_prestat_get" => Function::new_typed_with_env(&mut store, env, fd_prestat_get::), + "fd_prestat_dir_name" => Function::new_typed_with_env(&mut store, env, fd_prestat_dir_name::), + "fd_pwrite" => Function::new_typed_with_env(&mut store, env, fd_pwrite::), + "fd_read" => Function::new_typed_with_env(&mut store, env, fd_read::), + "fd_readdir" => Function::new_typed_with_env(&mut store, env, fd_readdir::), + "fd_renumber" => Function::new_typed_with_env(&mut store, env, fd_renumber), + "fd_dup" => Function::new_typed_with_env(&mut store, env, fd_dup::), + "fd_event" => Function::new_typed_with_env(&mut store, env, fd_event::), + "fd_seek" => Function::new_typed_with_env(&mut store, env, fd_seek::), + "fd_sync" => Function::new_typed_with_env(&mut store, env, fd_sync), + "fd_tell" => Function::new_typed_with_env(&mut store, env, fd_tell::), + "fd_write" => Function::new_typed_with_env(&mut store, env, fd_write::), + "fd_pipe" => Function::new_typed_with_env(&mut store, env, fd_pipe::), + "path_create_directory" => Function::new_typed_with_env(&mut store, env, path_create_directory::), + "path_filestat_get" => Function::new_typed_with_env(&mut store, env, path_filestat_get::), + "path_filestat_set_times" => Function::new_typed_with_env(&mut store, env, path_filestat_set_times::), + "path_link" => Function::new_typed_with_env(&mut store, env, path_link::), + "path_open" => Function::new_typed_with_env(&mut store, env, path_open::), + "path_readlink" => Function::new_typed_with_env(&mut store, env, path_readlink::), + "path_remove_directory" => Function::new_typed_with_env(&mut store, env, path_remove_directory::), + "path_rename" => Function::new_typed_with_env(&mut store, env, path_rename::), + "path_symlink" => Function::new_typed_with_env(&mut store, env, path_symlink::), + "path_unlink_file" => Function::new_typed_with_env(&mut store, env, path_unlink_file::), + "poll_oneoff" => Function::new_typed_with_env(&mut store, env, poll_oneoff::), + "proc_exit" => Function::new_typed_with_env(&mut store, env, proc_exit), + "proc_raise" => Function::new_typed_with_env(&mut store, env, proc_raise), + "random_get" => Function::new_typed_with_env(&mut store, env, random_get::), + "tty_get" => Function::new_typed_with_env(&mut store, env, tty_get::), + "tty_set" => Function::new_typed_with_env(&mut store, env, tty_set::), + "getcwd" => Function::new_typed_with_env(&mut store, env, getcwd::), + "chdir" => Function::new_typed_with_env(&mut store, env, chdir::), + "thread_spawn" => Function::new_typed_with_env(&mut store, env, thread_spawn::), + "thread_local_create" => Function::new_typed_with_env(&mut store, env, thread_local_create::), + "thread_local_destroy" => Function::new_typed_with_env(&mut store, env, thread_local_destroy), + "thread_local_set" => Function::new_typed_with_env(&mut store, env, thread_local_set), + "thread_local_get" => Function::new_typed_with_env(&mut store, env, thread_local_get::), + "thread_sleep" => Function::new_typed_with_env(&mut store, env, thread_sleep), + "thread_id" => Function::new_typed_with_env(&mut store, env, thread_id::), + "thread_join" => Function::new_typed_with_env(&mut store, env, thread_join), + "thread_parallelism" => Function::new_typed_with_env(&mut store, env, thread_parallelism::), + "thread_exit" => Function::new_typed_with_env(&mut store, env, thread_exit), + "sched_yield" => Function::new_typed_with_env(&mut store, env, sched_yield), + "futex_wait" => Function::new_typed_with_env(&mut store, env, futex_wait::), + "futex_wake" => Function::new_typed_with_env(&mut store, env, futex_wake::), + "futex_wake_all" => Function::new_typed_with_env(&mut store, env, futex_wake_all::), + "getpid" => Function::new_typed_with_env(&mut store, env, getpid::), + "process_spawn" => Function::new_typed_with_env(&mut store, env, process_spawn::), + "bus_open_local" => Function::new_typed_with_env(&mut store, env, bus_open_local::), + "bus_open_remote" => Function::new_typed_with_env(&mut store, env, bus_open_remote::), + "bus_close" => Function::new_typed_with_env(&mut store, env, bus_close), + "bus_call" => Function::new_typed_with_env(&mut store, env, bus_call::), + "bus_subcall" => Function::new_typed_with_env(&mut store, env, bus_subcall::), + "bus_poll" => Function::new_typed_with_env(&mut store, env, bus_poll::), + "call_reply" => Function::new_typed_with_env(&mut store, env, call_reply::), + "call_fault" => Function::new_typed_with_env(&mut store, env, call_fault), + "call_close" => Function::new_typed_with_env(&mut store, env, call_close), + "ws_connect" => Function::new_typed_with_env(&mut store, env, ws_connect::), + "http_request" => Function::new_typed_with_env(&mut store, env, http_request::), + "http_status" => Function::new_typed_with_env(&mut store, env, http_status::), + "port_bridge" => Function::new_typed_with_env(&mut store, env, port_bridge::), + "port_unbridge" => Function::new_typed_with_env(&mut store, env, port_unbridge), + "port_dhcp_acquire" => Function::new_typed_with_env(&mut store, env, port_dhcp_acquire), + "port_addr_add" => Function::new_typed_with_env(&mut store, env, port_addr_add::), + "port_addr_remove" => Function::new_typed_with_env(&mut store, env, port_addr_remove::), + "port_addr_clear" => Function::new_typed_with_env(&mut store, env, port_addr_clear), + "port_addr_list" => Function::new_typed_with_env(&mut store, env, port_addr_list::), + "port_mac" => Function::new_typed_with_env(&mut store, env, port_mac::), + "port_gateway_set" => Function::new_typed_with_env(&mut store, env, port_gateway_set::), + "port_route_add" => Function::new_typed_with_env(&mut store, env, port_route_add::), + "port_route_remove" => Function::new_typed_with_env(&mut store, env, port_route_remove::), + "port_route_clear" => Function::new_typed_with_env(&mut store, env, port_route_clear), + "port_route_list" => Function::new_typed_with_env(&mut store, env, port_route_list::), + "sock_status" => Function::new_typed_with_env(&mut store, env, sock_status::), + "sock_addr_local" => Function::new_typed_with_env(&mut store, env, sock_addr_local::), + "sock_addr_peer" => Function::new_typed_with_env(&mut store, env, sock_addr_peer::), + "sock_open" => Function::new_typed_with_env(&mut store, env, sock_open::), + "sock_set_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_set_opt_flag), + "sock_get_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_get_opt_flag::), + "sock_set_opt_time" => Function::new_typed_with_env(&mut store, env, sock_set_opt_time::), + "sock_get_opt_time" => Function::new_typed_with_env(&mut store, env, sock_get_opt_time::), + "sock_set_opt_size" => Function::new_typed_with_env(&mut store, env, sock_set_opt_size), + "sock_get_opt_size" => Function::new_typed_with_env(&mut store, env, sock_get_opt_size::), + "sock_join_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v4::), + "sock_leave_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v4::), + "sock_join_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v6::), + "sock_leave_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v6::), + "sock_bind" => Function::new_typed_with_env(&mut store, env, sock_bind::), + "sock_listen" => Function::new_typed_with_env(&mut store, env, sock_listen::), + "sock_accept" => Function::new_typed_with_env(&mut store, env, sock_accept::), + "sock_connect" => Function::new_typed_with_env(&mut store, env, sock_connect::), + "sock_recv" => Function::new_typed_with_env(&mut store, env, sock_recv::), + "sock_recv_from" => Function::new_typed_with_env(&mut store, env, sock_recv_from::), + "sock_send" => Function::new_typed_with_env(&mut store, env, sock_send::), + "sock_send_to" => Function::new_typed_with_env(&mut store, env, sock_send_to::), + "sock_send_file" => Function::new_typed_with_env(&mut store, env, sock_send_file::), + "sock_shutdown" => Function::new_typed_with_env(&mut store, env, sock_shutdown), + "resolve" => Function::new_typed_with_env(&mut store, env, resolve::), + }; + namespace +} + +fn wasix_exports_64( + mut store: &mut impl AsStoreMut, + env: &FunctionEnv, +) -> Exports +{ + use syscalls::*; + let namespace = namespace! { + "args_get" => Function::new_typed_with_env(&mut store, env, args_get::), + "args_sizes_get" => Function::new_typed_with_env(&mut store, env, args_sizes_get::), + "clock_res_get" => Function::new_typed_with_env(&mut store, env, clock_res_get::), + "clock_time_get" => Function::new_typed_with_env(&mut store, env, clock_time_get::), + "environ_get" => Function::new_typed_with_env(&mut store, env, environ_get::), + "environ_sizes_get" => Function::new_typed_with_env(&mut store, env, environ_sizes_get::), + "fd_advise" => Function::new_typed_with_env(&mut store, env, fd_advise), + "fd_allocate" => Function::new_typed_with_env(&mut store, env, fd_allocate), + "fd_close" => Function::new_typed_with_env(&mut store, env, fd_close), + "fd_datasync" => Function::new_typed_with_env(&mut store, env, fd_datasync), + "fd_fdstat_get" => Function::new_typed_with_env(&mut store, env, fd_fdstat_get::), + "fd_fdstat_set_flags" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_flags), + "fd_fdstat_set_rights" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_rights), + "fd_filestat_get" => Function::new_typed_with_env(&mut store, env, fd_filestat_get::), + "fd_filestat_set_size" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_size), + "fd_filestat_set_times" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_times), + "fd_pread" => Function::new_typed_with_env(&mut store, env, fd_pread::), + "fd_prestat_get" => Function::new_typed_with_env(&mut store, env, fd_prestat_get::), + "fd_prestat_dir_name" => Function::new_typed_with_env(&mut store, env, fd_prestat_dir_name::), + "fd_pwrite" => Function::new_typed_with_env(&mut store, env, fd_pwrite::), + "fd_read" => Function::new_typed_with_env(&mut store, env, fd_read::), + "fd_readdir" => Function::new_typed_with_env(&mut store, env, fd_readdir::), + "fd_renumber" => Function::new_typed_with_env(&mut store, env, fd_renumber), + "fd_dup" => Function::new_typed_with_env(&mut store, env, fd_dup::), + "fd_event" => Function::new_typed_with_env(&mut store, env, fd_event::), + "fd_seek" => Function::new_typed_with_env(&mut store, env, fd_seek::), + "fd_sync" => Function::new_typed_with_env(&mut store, env, fd_sync), + "fd_tell" => Function::new_typed_with_env(&mut store, env, fd_tell::), + "fd_write" => Function::new_typed_with_env(&mut store, env, fd_write::), + "fd_pipe" => Function::new_typed_with_env(&mut store, env, fd_pipe::), + "path_create_directory" => Function::new_typed_with_env(&mut store, env, path_create_directory::), + "path_filestat_get" => Function::new_typed_with_env(&mut store, env, path_filestat_get::), + "path_filestat_set_times" => Function::new_typed_with_env(&mut store, env, path_filestat_set_times::), + "path_link" => Function::new_typed_with_env(&mut store, env, path_link::), + "path_open" => Function::new_typed_with_env(&mut store, env, path_open::), + "path_readlink" => Function::new_typed_with_env(&mut store, env, path_readlink::), + "path_remove_directory" => Function::new_typed_with_env(&mut store, env, path_remove_directory::), + "path_rename" => Function::new_typed_with_env(&mut store, env, path_rename::), + "path_symlink" => Function::new_typed_with_env(&mut store, env, path_symlink::), + "path_unlink_file" => Function::new_typed_with_env(&mut store, env, path_unlink_file::), + "poll_oneoff" => Function::new_typed_with_env(&mut store, env, poll_oneoff::), + "proc_exit" => Function::new_typed_with_env(&mut store, env, proc_exit), + "proc_raise" => Function::new_typed_with_env(&mut store, env, proc_raise), + "random_get" => Function::new_typed_with_env(&mut store, env, random_get::), + "tty_get" => Function::new_typed_with_env(&mut store, env, tty_get::), + "tty_set" => Function::new_typed_with_env(&mut store, env, tty_set::), + "getcwd" => Function::new_typed_with_env(&mut store, env, getcwd::), + "chdir" => Function::new_typed_with_env(&mut store, env, chdir::), + "thread_spawn" => Function::new_typed_with_env(&mut store, env, thread_spawn::), + "thread_local_create" => Function::new_typed_with_env(&mut store, env, thread_local_create::), + "thread_local_destroy" => Function::new_typed_with_env(&mut store, env, thread_local_destroy), + "thread_local_set" => Function::new_typed_with_env(&mut store, env, thread_local_set), + "thread_local_get" => Function::new_typed_with_env(&mut store, env, thread_local_get::), + "thread_sleep" => Function::new_typed_with_env(&mut store, env, thread_sleep), + "thread_id" => Function::new_typed_with_env(&mut store, env, thread_id::), + "thread_join" => Function::new_typed_with_env(&mut store, env, thread_join), + "thread_parallelism" => Function::new_typed_with_env(&mut store, env, thread_parallelism::), + "thread_exit" => Function::new_typed_with_env(&mut store, env, thread_exit), + "sched_yield" => Function::new_typed_with_env(&mut store, env, sched_yield), + "futex_wait" => Function::new_typed_with_env(&mut store, env, futex_wait::), + "futex_wake" => Function::new_typed_with_env(&mut store, env, futex_wake::), + "futex_wake_all" => Function::new_typed_with_env(&mut store, env, futex_wake_all::), + "getpid" => Function::new_typed_with_env(&mut store, env, getpid::), + "process_spawn" => Function::new_typed_with_env(&mut store, env, process_spawn::), + "bus_open_local" => Function::new_typed_with_env(&mut store, env, bus_open_local::), + "bus_open_remote" => Function::new_typed_with_env(&mut store, env, bus_open_remote::), + "bus_close" => Function::new_typed_with_env(&mut store, env, bus_close), + "bus_call" => Function::new_typed_with_env(&mut store, env, bus_call::), + "bus_subcall" => Function::new_typed_with_env(&mut store, env, bus_subcall::), + "bus_poll" => Function::new_typed_with_env(&mut store, env, bus_poll::), + "call_reply" => Function::new_typed_with_env(&mut store, env, call_reply::), + "call_fault" => Function::new_typed_with_env(&mut store, env, call_fault), + "call_close" => Function::new_typed_with_env(&mut store, env, call_close), + "ws_connect" => Function::new_typed_with_env(&mut store, env, ws_connect::), + "http_request" => Function::new_typed_with_env(&mut store, env, http_request::), + "http_status" => Function::new_typed_with_env(&mut store, env, http_status::), + "port_bridge" => Function::new_typed_with_env(&mut store, env, port_bridge::), + "port_unbridge" => Function::new_typed_with_env(&mut store, env, port_unbridge), + "port_dhcp_acquire" => Function::new_typed_with_env(&mut store, env, port_dhcp_acquire), + "port_addr_add" => Function::new_typed_with_env(&mut store, env, port_addr_add::), + "port_addr_remove" => Function::new_typed_with_env(&mut store, env, port_addr_remove::), + "port_addr_clear" => Function::new_typed_with_env(&mut store, env, port_addr_clear), + "port_addr_list" => Function::new_typed_with_env(&mut store, env, port_addr_list::), + "port_mac" => Function::new_typed_with_env(&mut store, env, port_mac::), + "port_gateway_set" => Function::new_typed_with_env(&mut store, env, port_gateway_set::), + "port_route_add" => Function::new_typed_with_env(&mut store, env, port_route_add::), + "port_route_remove" => Function::new_typed_with_env(&mut store, env, port_route_remove::), + "port_route_clear" => Function::new_typed_with_env(&mut store, env, port_route_clear), + "port_route_list" => Function::new_typed_with_env(&mut store, env, port_route_list::), + "sock_status" => Function::new_typed_with_env(&mut store, env, sock_status::), + "sock_addr_local" => Function::new_typed_with_env(&mut store, env, sock_addr_local::), + "sock_addr_peer" => Function::new_typed_with_env(&mut store, env, sock_addr_peer::), + "sock_open" => Function::new_typed_with_env(&mut store, env, sock_open::), + "sock_set_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_set_opt_flag), + "sock_get_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_get_opt_flag::), + "sock_set_opt_time" => Function::new_typed_with_env(&mut store, env, sock_set_opt_time::), + "sock_get_opt_time" => Function::new_typed_with_env(&mut store, env, sock_get_opt_time::), + "sock_set_opt_size" => Function::new_typed_with_env(&mut store, env, sock_set_opt_size), + "sock_get_opt_size" => Function::new_typed_with_env(&mut store, env, sock_get_opt_size::), + "sock_join_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v4::), + "sock_leave_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v4::), + "sock_join_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v6::), + "sock_leave_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v6::), + "sock_bind" => Function::new_typed_with_env(&mut store, env, sock_bind::), + "sock_listen" => Function::new_typed_with_env(&mut store, env, sock_listen::), + "sock_accept" => Function::new_typed_with_env(&mut store, env, sock_accept::), + "sock_connect" => Function::new_typed_with_env(&mut store, env, sock_connect::), + "sock_recv" => Function::new_typed_with_env(&mut store, env, sock_recv::), + "sock_recv_from" => Function::new_typed_with_env(&mut store, env, sock_recv_from::), + "sock_send" => Function::new_typed_with_env(&mut store, env, sock_send::), + "sock_send_to" => Function::new_typed_with_env(&mut store, env, sock_send_to::), + "sock_send_file" => Function::new_typed_with_env(&mut store, env, sock_send_file::), + "sock_shutdown" => Function::new_typed_with_env(&mut store, env, sock_shutdown), + "resolve" => Function::new_typed_with_env(&mut store, env, resolve::), + }; + namespace +} + pub fn import_object_for_all_wasi_versions( store: &mut impl AsStoreMut, env: &FunctionEnv, ) -> Imports { - let wasi_unstable_exports = wasi_unstable_exports(store, env); - let wasi_snapshot_preview1_exports = wasi_snapshot_preview1_exports(store, env); + let exports_wasi_unstable = wasi_unstable_exports(store, env); + let exports_wasi_snapshot_preview1 = wasi_snapshot_preview1_exports(store, env); + let exports_wasix_32v1 = wasix_exports_32(store, env); + let exports_wasix_64v1 = wasix_exports_64(store, env); imports! { - "wasi_unstable" => wasi_unstable_exports, - "wasi_snapshot_preview1" => wasi_snapshot_preview1_exports, + "wasi_unstable" => exports_wasi_unstable, + "wasi_snapshot_preview1" => exports_wasi_snapshot_preview1, + "wasix_32v1" => exports_wasix_32v1, + "wasix_64v1" => exports_wasix_64v1, } } @@ -520,9 +846,9 @@ fn generate_import_object_snapshot0( store: &mut impl AsStoreMut, env: &FunctionEnv, ) -> Imports { - let wasi_unstable_exports = wasi_unstable_exports(store, env); + let exports_unstable = wasi_unstable_exports(store, env); imports! { - "wasi_unstable" => wasi_unstable_exports + "wasi_unstable" => exports_unstable } } @@ -530,246 +856,30 @@ fn generate_import_object_snapshot1( store: &mut impl AsStoreMut, env: &FunctionEnv, ) -> Imports { - let wasi_snapshot_preview1_exports = wasi_snapshot_preview1_exports(store, env); + let exports_wasi_snapshot_preview1 = wasi_snapshot_preview1_exports(store, env); imports! { - "wasi_snapshot_preview1" => wasi_snapshot_preview1_exports + "wasi_snapshot_preview1" => exports_wasi_snapshot_preview1 } } /// Combines a state generating function with the import list for snapshot 1 fn generate_import_object_wasix32_v1( - mut store: &mut impl AsStoreMut, + store: &mut impl AsStoreMut, env: &FunctionEnv, ) -> Imports { - use self::wasix32::*; + let exports_wasix_32v1 = wasix_exports_32(store, env); imports! { - "wasix_32v1" => { - "args_get" => Function::new_typed_with_env(&mut store, env, args_get), - "args_sizes_get" => Function::new_typed_with_env(&mut store, env, args_sizes_get), - "clock_res_get" => Function::new_typed_with_env(&mut store, env, clock_res_get), - "clock_time_get" => Function::new_typed_with_env(&mut store, env, clock_time_get), - "environ_get" => Function::new_typed_with_env(&mut store, env, environ_get), - "environ_sizes_get" => Function::new_typed_with_env(&mut store, env, environ_sizes_get), - "fd_advise" => Function::new_typed_with_env(&mut store, env, fd_advise), - "fd_allocate" => Function::new_typed_with_env(&mut store, env, fd_allocate), - "fd_close" => Function::new_typed_with_env(&mut store, env, fd_close), - "fd_datasync" => Function::new_typed_with_env(&mut store, env, fd_datasync), - "fd_fdstat_get" => Function::new_typed_with_env(&mut store, env, fd_fdstat_get), - "fd_fdstat_set_flags" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_flags), - "fd_fdstat_set_rights" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_rights), - "fd_filestat_get" => Function::new_typed_with_env(&mut store, env, fd_filestat_get), - "fd_filestat_set_size" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_size), - "fd_filestat_set_times" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_times), - "fd_pread" => Function::new_typed_with_env(&mut store, env, fd_pread), - "fd_prestat_get" => Function::new_typed_with_env(&mut store, env, fd_prestat_get), - "fd_prestat_dir_name" => Function::new_typed_with_env(&mut store, env, fd_prestat_dir_name), - "fd_pwrite" => Function::new_typed_with_env(&mut store, env, fd_pwrite), - "fd_read" => Function::new_typed_with_env(&mut store, env, fd_read), - "fd_readdir" => Function::new_typed_with_env(&mut store, env, fd_readdir), - "fd_renumber" => Function::new_typed_with_env(&mut store, env, fd_renumber), - "fd_dup" => Function::new_typed_with_env(&mut store, env, fd_dup), - "fd_event" => Function::new_typed_with_env(&mut store, env, fd_event), - "fd_seek" => Function::new_typed_with_env(&mut store, env, fd_seek), - "fd_sync" => Function::new_typed_with_env(&mut store, env, fd_sync), - "fd_tell" => Function::new_typed_with_env(&mut store, env, fd_tell), - "fd_write" => Function::new_typed_with_env(&mut store, env, fd_write), - "fd_pipe" => Function::new_typed_with_env(&mut store, env, fd_pipe), - "path_create_directory" => Function::new_typed_with_env(&mut store, env, path_create_directory), - "path_filestat_get" => Function::new_typed_with_env(&mut store, env, path_filestat_get), - "path_filestat_set_times" => Function::new_typed_with_env(&mut store, env, path_filestat_set_times), - "path_link" => Function::new_typed_with_env(&mut store, env, path_link), - "path_open" => Function::new_typed_with_env(&mut store, env, path_open), - "path_readlink" => Function::new_typed_with_env(&mut store, env, path_readlink), - "path_remove_directory" => Function::new_typed_with_env(&mut store, env, path_remove_directory), - "path_rename" => Function::new_typed_with_env(&mut store, env, path_rename), - "path_symlink" => Function::new_typed_with_env(&mut store, env, path_symlink), - "path_unlink_file" => Function::new_typed_with_env(&mut store, env, path_unlink_file), - "poll_oneoff" => Function::new_typed_with_env(&mut store, env, poll_oneoff), - "proc_exit" => Function::new_typed_with_env(&mut store, env, proc_exit), - "proc_raise" => Function::new_typed_with_env(&mut store, env, proc_raise), - "random_get" => Function::new_typed_with_env(&mut store, env, random_get), - "tty_get" => Function::new_typed_with_env(&mut store, env, tty_get), - "tty_set" => Function::new_typed_with_env(&mut store, env, tty_set), - "getcwd" => Function::new_typed_with_env(&mut store, env, getcwd), - "chdir" => Function::new_typed_with_env(&mut store, env, chdir), - "thread_spawn" => Function::new_typed_with_env(&mut store, env, thread_spawn), - "thread_sleep" => Function::new_typed_with_env(&mut store, env, thread_sleep), - "thread_id" => Function::new_typed_with_env(&mut store, env, thread_id), - "thread_join" => Function::new_typed_with_env(&mut store, env, thread_join), - "thread_parallelism" => Function::new_typed_with_env(&mut store, env, thread_parallelism), - "thread_exit" => Function::new_typed_with_env(&mut store, env, thread_exit), - "sched_yield" => Function::new_typed_with_env(&mut store, env, sched_yield), - "getpid" => Function::new_typed_with_env(&mut store, env, getpid), - "process_spawn" => Function::new_typed_with_env(&mut store, env, process_spawn), - "bus_open_local" => Function::new_typed_with_env(&mut store, env, bus_open_local), - "bus_open_remote" => Function::new_typed_with_env(&mut store, env, bus_open_remote), - "bus_close" => Function::new_typed_with_env(&mut store, env, bus_close), - "bus_call" => Function::new_typed_with_env(&mut store, env, bus_call), - "bus_subcall" => Function::new_typed_with_env(&mut store, env, bus_subcall), - "bus_poll" => Function::new_typed_with_env(&mut store, env, bus_poll), - "call_reply" => Function::new_typed_with_env(&mut store, env, call_reply), - "call_fault" => Function::new_typed_with_env(&mut store, env, call_fault), - "call_close" => Function::new_typed_with_env(&mut store, env, call_close), - "ws_connect" => Function::new_typed_with_env(&mut store, env, ws_connect), - "http_request" => Function::new_typed_with_env(&mut store, env, http_request), - "http_status" => Function::new_typed_with_env(&mut store, env, http_status), - "port_bridge" => Function::new_typed_with_env(&mut store, env, port_bridge), - "port_unbridge" => Function::new_typed_with_env(&mut store, env, port_unbridge), - "port_dhcp_acquire" => Function::new_typed_with_env(&mut store, env, port_dhcp_acquire), - "port_addr_add" => Function::new_typed_with_env(&mut store, env, port_addr_add), - "port_addr_remove" => Function::new_typed_with_env(&mut store, env, port_addr_remove), - "port_addr_clear" => Function::new_typed_with_env(&mut store, env, port_addr_clear), - "port_addr_list" => Function::new_typed_with_env(&mut store, env, port_addr_list), - "port_mac" => Function::new_typed_with_env(&mut store, env, port_mac), - "port_gateway_set" => Function::new_typed_with_env(&mut store, env, port_gateway_set), - "port_route_add" => Function::new_typed_with_env(&mut store, env, port_route_add), - "port_route_remove" => Function::new_typed_with_env(&mut store, env, port_route_remove), - "port_route_clear" => Function::new_typed_with_env(&mut store, env, port_route_clear), - "port_route_list" => Function::new_typed_with_env(&mut store, env, port_route_list), - "sock_status" => Function::new_typed_with_env(&mut store, env, sock_status), - "sock_addr_local" => Function::new_typed_with_env(&mut store, env, sock_addr_local), - "sock_addr_peer" => Function::new_typed_with_env(&mut store, env, sock_addr_peer), - "sock_open" => Function::new_typed_with_env(&mut store, env, sock_open), - "sock_set_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_set_opt_flag), - "sock_get_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_get_opt_flag), - "sock_set_opt_time" => Function::new_typed_with_env(&mut store, env, sock_set_opt_time), - "sock_get_opt_time" => Function::new_typed_with_env(&mut store, env, sock_get_opt_time), - "sock_set_opt_size" => Function::new_typed_with_env(&mut store, env, sock_set_opt_size), - "sock_get_opt_size" => Function::new_typed_with_env(&mut store, env, sock_get_opt_size), - "sock_join_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v4), - "sock_leave_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v4), - "sock_join_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v6), - "sock_leave_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v6), - "sock_bind" => Function::new_typed_with_env(&mut store, env, sock_bind), - "sock_listen" => Function::new_typed_with_env(&mut store, env, sock_listen), - "sock_accept" => Function::new_typed_with_env(&mut store, env, sock_accept), - "sock_connect" => Function::new_typed_with_env(&mut store, env, sock_connect), - "sock_recv" => Function::new_typed_with_env(&mut store, env, sock_recv), - "sock_recv_from" => Function::new_typed_with_env(&mut store, env, sock_recv_from), - "sock_send" => Function::new_typed_with_env(&mut store, env, sock_send), - "sock_send_to" => Function::new_typed_with_env(&mut store, env, sock_send_to), - "sock_send_file" => Function::new_typed_with_env(&mut store, env, sock_send_file), - "sock_shutdown" => Function::new_typed_with_env(&mut store, env, sock_shutdown), - "resolve" => Function::new_typed_with_env(&mut store, env, resolve), - } + "wasix_32v1" => exports_wasix_32v1 } } fn generate_import_object_wasix64_v1( - mut store: &mut impl AsStoreMut, + store: &mut impl AsStoreMut, env: &FunctionEnv, ) -> Imports { - use self::wasix64::*; + let exports_wasix_64v1 = wasix_exports_64(store, env); imports! { - "wasix_64v1" => { - "args_get" => Function::new_typed_with_env(&mut store, env, args_get), - "args_sizes_get" => Function::new_typed_with_env(&mut store, env, args_sizes_get), - "clock_res_get" => Function::new_typed_with_env(&mut store, env, clock_res_get), - "clock_time_get" => Function::new_typed_with_env(&mut store, env, clock_time_get), - "environ_get" => Function::new_typed_with_env(&mut store, env, environ_get), - "environ_sizes_get" => Function::new_typed_with_env(&mut store, env, environ_sizes_get), - "fd_advise" => Function::new_typed_with_env(&mut store, env, fd_advise), - "fd_allocate" => Function::new_typed_with_env(&mut store, env, fd_allocate), - "fd_close" => Function::new_typed_with_env(&mut store, env, fd_close), - "fd_datasync" => Function::new_typed_with_env(&mut store, env, fd_datasync), - "fd_fdstat_get" => Function::new_typed_with_env(&mut store, env, fd_fdstat_get), - "fd_fdstat_set_flags" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_flags), - "fd_fdstat_set_rights" => Function::new_typed_with_env(&mut store, env, fd_fdstat_set_rights), - "fd_filestat_get" => Function::new_typed_with_env(&mut store, env, fd_filestat_get), - "fd_filestat_set_size" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_size), - "fd_filestat_set_times" => Function::new_typed_with_env(&mut store, env, fd_filestat_set_times), - "fd_pread" => Function::new_typed_with_env(&mut store, env, fd_pread), - "fd_prestat_get" => Function::new_typed_with_env(&mut store, env, fd_prestat_get), - "fd_prestat_dir_name" => Function::new_typed_with_env(&mut store, env, fd_prestat_dir_name), - "fd_pwrite" => Function::new_typed_with_env(&mut store, env, fd_pwrite), - "fd_read" => Function::new_typed_with_env(&mut store, env, fd_read), - "fd_readdir" => Function::new_typed_with_env(&mut store, env, fd_readdir), - "fd_renumber" => Function::new_typed_with_env(&mut store, env, fd_renumber), - "fd_dup" => Function::new_typed_with_env(&mut store, env, fd_dup), - "fd_event" => Function::new_typed_with_env(&mut store, env, fd_event), - "fd_seek" => Function::new_typed_with_env(&mut store, env, fd_seek), - "fd_sync" => Function::new_typed_with_env(&mut store, env, fd_sync), - "fd_tell" => Function::new_typed_with_env(&mut store, env, fd_tell), - "fd_write" => Function::new_typed_with_env(&mut store, env, fd_write), - "fd_pipe" => Function::new_typed_with_env(&mut store, env, fd_pipe), - "path_create_directory" => Function::new_typed_with_env(&mut store, env, path_create_directory), - "path_filestat_get" => Function::new_typed_with_env(&mut store, env, path_filestat_get), - "path_filestat_set_times" => Function::new_typed_with_env(&mut store, env, path_filestat_set_times), - "path_link" => Function::new_typed_with_env(&mut store, env, path_link), - "path_open" => Function::new_typed_with_env(&mut store, env, path_open), - "path_readlink" => Function::new_typed_with_env(&mut store, env, path_readlink), - "path_remove_directory" => Function::new_typed_with_env(&mut store, env, path_remove_directory), - "path_rename" => Function::new_typed_with_env(&mut store, env, path_rename), - "path_symlink" => Function::new_typed_with_env(&mut store, env, path_symlink), - "path_unlink_file" => Function::new_typed_with_env(&mut store, env, path_unlink_file), - "poll_oneoff" => Function::new_typed_with_env(&mut store, env, poll_oneoff), - "proc_exit" => Function::new_typed_with_env(&mut store, env, proc_exit), - "proc_raise" => Function::new_typed_with_env(&mut store, env, proc_raise), - "random_get" => Function::new_typed_with_env(&mut store, env, random_get), - "tty_get" => Function::new_typed_with_env(&mut store, env, tty_get), - "tty_set" => Function::new_typed_with_env(&mut store, env, tty_set), - "getcwd" => Function::new_typed_with_env(&mut store, env, getcwd), - "chdir" => Function::new_typed_with_env(&mut store, env, chdir), - "thread_spawn" => Function::new_typed_with_env(&mut store, env, thread_spawn), - "thread_sleep" => Function::new_typed_with_env(&mut store, env, thread_sleep), - "thread_id" => Function::new_typed_with_env(&mut store, env, thread_id), - "thread_join" => Function::new_typed_with_env(&mut store, env, thread_join), - "thread_parallelism" => Function::new_typed_with_env(&mut store, env, thread_parallelism), - "thread_exit" => Function::new_typed_with_env(&mut store, env, thread_exit), - "sched_yield" => Function::new_typed_with_env(&mut store, env, sched_yield), - "getpid" => Function::new_typed_with_env(&mut store, env, getpid), - "process_spawn" => Function::new_typed_with_env(&mut store, env, process_spawn), - "bus_open_local" => Function::new_typed_with_env(&mut store, env, bus_open_local), - "bus_open_remote" => Function::new_typed_with_env(&mut store, env, bus_open_remote), - "bus_close" => Function::new_typed_with_env(&mut store, env, bus_close), - "bus_call" => Function::new_typed_with_env(&mut store, env, bus_call), - "bus_subcall" => Function::new_typed_with_env(&mut store, env, bus_subcall), - "bus_poll" => Function::new_typed_with_env(&mut store, env, bus_poll), - "call_reply" => Function::new_typed_with_env(&mut store, env, call_reply), - "call_fault" => Function::new_typed_with_env(&mut store, env, call_fault), - "call_close" => Function::new_typed_with_env(&mut store, env, call_close), - "ws_connect" => Function::new_typed_with_env(&mut store, env, ws_connect), - "http_request" => Function::new_typed_with_env(&mut store, env, http_request), - "http_status" => Function::new_typed_with_env(&mut store, env, http_status), - "port_bridge" => Function::new_typed_with_env(&mut store, env, port_bridge), - "port_unbridge" => Function::new_typed_with_env(&mut store, env, port_unbridge), - "port_dhcp_acquire" => Function::new_typed_with_env(&mut store, env, port_dhcp_acquire), - "port_addr_add" => Function::new_typed_with_env(&mut store, env, port_addr_add), - "port_addr_remove" => Function::new_typed_with_env(&mut store, env, port_addr_remove), - "port_addr_clear" => Function::new_typed_with_env(&mut store, env, port_addr_clear), - "port_addr_list" => Function::new_typed_with_env(&mut store, env, port_addr_list), - "port_mac" => Function::new_typed_with_env(&mut store, env, port_mac), - "port_gateway_set" => Function::new_typed_with_env(&mut store, env, port_gateway_set), - "port_route_add" => Function::new_typed_with_env(&mut store, env, port_route_add), - "port_route_remove" => Function::new_typed_with_env(&mut store, env, port_route_remove), - "port_route_clear" => Function::new_typed_with_env(&mut store, env, port_route_clear), - "port_route_list" => Function::new_typed_with_env(&mut store, env, port_route_list), - "sock_status" => Function::new_typed_with_env(&mut store, env, sock_status), - "sock_addr_local" => Function::new_typed_with_env(&mut store, env, sock_addr_local), - "sock_addr_peer" => Function::new_typed_with_env(&mut store, env, sock_addr_peer), - "sock_open" => Function::new_typed_with_env(&mut store, env, sock_open), - "sock_set_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_set_opt_flag), - "sock_get_opt_flag" => Function::new_typed_with_env(&mut store, env, sock_get_opt_flag), - "sock_set_opt_time" => Function::new_typed_with_env(&mut store, env, sock_set_opt_time), - "sock_get_opt_time" => Function::new_typed_with_env(&mut store, env, sock_get_opt_time), - "sock_set_opt_size" => Function::new_typed_with_env(&mut store, env, sock_set_opt_size), - "sock_get_opt_size" => Function::new_typed_with_env(&mut store, env, sock_get_opt_size), - "sock_join_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v4), - "sock_leave_multicast_v4" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v4), - "sock_join_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_join_multicast_v6), - "sock_leave_multicast_v6" => Function::new_typed_with_env(&mut store, env, sock_leave_multicast_v6), - "sock_bind" => Function::new_typed_with_env(&mut store, env, sock_bind), - "sock_listen" => Function::new_typed_with_env(&mut store, env, sock_listen), - "sock_accept" => Function::new_typed_with_env(&mut store, env, sock_accept), - "sock_connect" => Function::new_typed_with_env(&mut store, env, sock_connect), - "sock_recv" => Function::new_typed_with_env(&mut store, env, sock_recv), - "sock_recv_from" => Function::new_typed_with_env(&mut store, env, sock_recv_from), - "sock_send" => Function::new_typed_with_env(&mut store, env, sock_send), - "sock_send_to" => Function::new_typed_with_env(&mut store, env, sock_send_to), - "sock_send_file" => Function::new_typed_with_env(&mut store, env, sock_send_file), - "sock_shutdown" => Function::new_typed_with_env(&mut store, env, sock_shutdown), - "resolve" => Function::new_typed_with_env(&mut store, env, resolve), - } + "wasix_64v1" => exports_wasix_64v1 } } diff --git a/lib/wasi/src/macros.rs b/lib/wasi/src/macros.rs index b9ec4245597..7df520bcab9 100644 --- a/lib/wasi/src/macros.rs +++ b/lib/wasi/src/macros.rs @@ -7,7 +7,6 @@ macro_rules! wasi_try { let res: Result<_, crate::syscalls::types::__wasi_errno_t> = $expr; match res { Ok(val) => { - tracing::trace!("wasi::wasi_try::val: {:?}", val); val } Err(err) => { @@ -25,7 +24,6 @@ macro_rules! wasi_try_ok { let res: Result<_, crate::syscalls::types::__wasi_errno_t> = $expr; match res { Ok(val) => { - tracing::trace!("wasi::wasi_try_ok::val: {:?}", val); val } Err(err) => { @@ -39,7 +37,6 @@ macro_rules! wasi_try_ok { let res: Result<_, crate::syscalls::types::__wasi_errno_t> = $expr; match res { Ok(val) => { - tracing::trace!("wasi::wasi_try_ok::val: {:?}", val); val } Err(err) => { @@ -60,7 +57,6 @@ macro_rules! wasi_try_bus { let res: Result<_, crate::syscalls::types::__bus_errno_t> = $expr; match res { Ok(val) => { - tracing::trace!("wasi::wasi_try_bus::val: {:?}", val); val } Err(err) => { @@ -71,6 +67,24 @@ macro_rules! wasi_try_bus { }}; } +/// Like the `try!` macro or `?` syntax: returns the value if the computation +/// succeeded or returns the error value. +macro_rules! wasi_try_bus_ok { + ($expr:expr) => {{ + let res: Result<_, crate::syscalls::types::__bus_errno_t> = $expr; + match res { + Ok(val) => { + //tracing::trace!("wasi::wasi_try_bus::val: {:?}", val); + val + } + Err(err) => { + tracing::debug!("wasi::wasi_try_bus::err: {:?}", err); + return Ok(err); + } + } + }}; +} + /// Like `wasi_try` but converts a `MemoryAccessError` to a __wasi_errno_t`. macro_rules! wasi_try_mem { ($expr:expr) => {{ @@ -85,6 +99,13 @@ macro_rules! wasi_try_mem_bus { }}; } +/// Like `wasi_try` but converts a `MemoryAccessError` to a __bus_errno_t`. +macro_rules! wasi_try_mem_bus_ok { + ($expr:expr) => {{ + wasi_try_bus_ok!($expr.map_err($crate::mem_error_to_bus)) + }}; +} + /// Like `wasi_try` but converts a `MemoryAccessError` to a __wasi_errno_t`. macro_rules! wasi_try_mem_ok { ($expr:expr) => {{ @@ -108,3 +129,9 @@ macro_rules! get_input_str_bus { wasi_try_mem_bus!($data.read_utf8_string($memory, $len)) }}; } + +macro_rules! get_input_str_bus_ok { + ($memory:expr, $data:expr, $len:expr) => {{ + wasi_try_mem_bus_ok!($data.read_utf8_string($memory, $len)) + }}; +} diff --git a/lib/wasi/src/runtime.rs b/lib/wasi/src/runtime.rs index 00c208bd166..1b332d2cb5b 100644 --- a/lib/wasi/src/runtime.rs +++ b/lib/wasi/src/runtime.rs @@ -2,9 +2,13 @@ use std::fmt; use std::ops::Deref; use std::sync::atomic::{AtomicU32, Ordering}; use thiserror::Error; +use wasmer::Module; +use wasmer::vm::VMMemory; use wasmer_vbus::{UnsupportedVirtualBus, VirtualBus}; use wasmer_vnet::VirtualNetworking; +use crate::WasiCallingId; + use super::types::*; use super::WasiError; use super::WasiThreadId; @@ -15,6 +19,11 @@ pub enum WasiThreadError { Unsupported, #[error("The method named is not an exported function")] MethodNotFound, + #[error("Failed to create the requested memory")] + MemoryCreateFailed, + /// This will happen if WASM is running in a thread has not been created by the spawn_wasm call + #[error("WASM context is invalid")] + InvalidWasmContext, } impl From for __wasi_errno_t { @@ -22,6 +31,8 @@ impl From for __wasi_errno_t { match a { WasiThreadError::Unsupported => __WASI_ENOTSUP, WasiThreadError::MethodNotFound => __WASI_EINVAL, + WasiThreadError::MemoryCreateFailed => __WASI_EFAULT, + WasiThreadError::InvalidWasmContext => __WASI_ENOEXEC, } } } @@ -41,7 +52,9 @@ pub struct WasiTtyState { /// Represents an implementation of the WASI runtime - by default everything is /// unimplemented. -pub trait WasiRuntimeImplementation: fmt::Debug + Sync { +pub trait WasiRuntimeImplementation +where Self: fmt::Debug + Sync, +{ /// For WASI runtimes that support it they can implement a message BUS implementation /// which allows runtimes to pass serialized messages between each other similar to /// RPC's. BUS implementation can be implemented that communicate across runtimes @@ -76,8 +89,11 @@ pub trait WasiRuntimeImplementation: fmt::Debug + Sync { /// Spawns a new thread by invoking the fn thread_spawn( &self, - _callback: Box, - ) -> Result<(), WasiThreadError> { + _callback: Box, + _existing_module: Module, + _existing_memory: VMMemory, + ) -> Result<(), WasiThreadError> + { Err(WasiThreadError::Unsupported) } @@ -89,7 +105,7 @@ pub trait WasiRuntimeImplementation: fmt::Debug + Sync { /// Invokes whenever a WASM thread goes idle. In some runtimes (like singlethreaded /// execution environments) they will need to do asynchronous work whenever the main /// thread goes idle and this is the place to hook for that. - fn yield_now(&self, _id: WasiThreadId) -> Result<(), WasiError> { + fn yield_now(&self, _id: WasiCallingId) -> Result<(), WasiError> { std::thread::yield_now(); Ok(()) } @@ -101,13 +117,15 @@ pub trait WasiRuntimeImplementation: fmt::Debug + Sync { } #[derive(Debug)] -pub struct PluggableRuntimeImplementation { +pub struct PluggableRuntimeImplementation +{ pub bus: Box, pub networking: Box, pub thread_id_seed: AtomicU32, } -impl PluggableRuntimeImplementation { +impl PluggableRuntimeImplementation +{ pub fn set_bus_implementation(&mut self, bus: I) where I: VirtualBus + Sync, @@ -123,7 +141,9 @@ impl PluggableRuntimeImplementation { } } -impl Default for PluggableRuntimeImplementation { +impl Default +for PluggableRuntimeImplementation +{ fn default() -> Self { Self { #[cfg(not(feature = "host-vnet"))] @@ -136,16 +156,39 @@ impl Default for PluggableRuntimeImplementation { } } -impl WasiRuntimeImplementation for PluggableRuntimeImplementation { - fn bus(&self) -> &(dyn VirtualBus) { +impl WasiRuntimeImplementation +for PluggableRuntimeImplementation +{ + fn bus<'a>(&'a self) -> &'a (dyn VirtualBus) { self.bus.deref() } - fn networking(&self) -> &(dyn VirtualNetworking) { + fn networking<'a>(&'a self) -> &'a (dyn VirtualNetworking) { self.networking.deref() } fn thread_generate_id(&self) -> WasiThreadId { self.thread_id_seed.fetch_add(1, Ordering::Relaxed).into() } + + #[cfg(feature = "sys-thread")] + fn thread_spawn( + &self, + callback: Box, + existing_module: Module, + existing_memory: VMMemory, + ) -> Result<(), WasiThreadError> + { + let existing_module = existing_module.clone(); + std::thread::spawn(move || { + callback(existing_module, existing_memory) + }); + Ok(()) + } + + fn thread_parallelism(&self) -> Result { + std::thread::available_parallelism() + .map(|a| usize::from(a)) + .map_err(|_| WasiThreadError::Unsupported) + } } diff --git a/lib/wasi/src/state/builder.rs b/lib/wasi/src/state/builder.rs index 61e2451d807..4507060e092 100644 --- a/lib/wasi/src/state/builder.rs +++ b/lib/wasi/src/state/builder.rs @@ -468,6 +468,8 @@ impl WasiStateBuilder { inodes: Arc::new(inodes), args: self.args.clone(), threading: Default::default(), + futexs: Default::default(), + bus: Default::default(), envs: self .envs .iter() diff --git a/lib/wasi/src/state/mod.rs b/lib/wasi/src/state/mod.rs index 4b1a75a718d..d38f078b9ae 100644 --- a/lib/wasi/src/state/mod.rs +++ b/lib/wasi/src/state/mod.rs @@ -20,26 +20,44 @@ mod guard; mod pipe; mod socket; mod types; +mod thread; +mod parking; pub use self::builder::*; pub use self::guard::*; pub use self::pipe::*; pub use self::socket::*; pub use self::types::*; +pub use self::guard::*; +pub use self::thread::*; +pub use self::parking::*; +use crate::WasiCallingId; +use crate::WasiFunctionEnv; +use crate::WasiThreadId; use crate::syscalls::types::*; use crate::utils::map_io_err; use crate::WasiBusProcessId; -use crate::WasiThread; -use crate::WasiThreadId; +use cooked_waker::ViaRawPointer; +use cooked_waker::Wake; +use cooked_waker::WakeRef; +use derivative::Derivative; use generational_arena::Arena; pub use generational_arena::Index as Inode; #[cfg(feature = "enable-serde")] use serde::{Deserialize, Serialize}; +use wasmer::Store; +use wasmer_vbus::VirtualBusCalled; +use wasmer_vbus::VirtualBusInvocation; use std::borrow::Cow; +use std::cell::RefCell; use std::collections::HashMap; use std::collections::VecDeque; +use std::sync::Condvar; +use std::sync::MutexGuard; use std::sync::mpsc; use std::sync::Arc; +use std::task::Waker; +use std::time::Duration; use std::{ borrow::Borrow, io::Write, @@ -83,7 +101,7 @@ pub const MAX_SYMLINKS: u32 = 128; pub struct InodeVal { pub stat: RwLock<__wasi_filestat_t>, pub is_preopened: bool, - pub name: String, + pub name: Cow<'static, str>, pub kind: RwLock, } @@ -654,8 +672,7 @@ impl WasiFs { for c in path.components() { let segment_name = c.as_os_str().to_string_lossy().to_string(); let guard = inodes.arena[cur_inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { ref entries, .. } | Kind::Root { ref entries } => { if let Some(_entry) = entries.get(&segment_name) { // TODO: this should be fixed @@ -673,14 +690,13 @@ impl WasiFs { inodes, kind, false, - segment_name.clone(), + segment_name.clone().into(), ); // reborrow to insert { let mut guard = inodes.arena[cur_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { ref mut entries, .. } @@ -727,8 +743,7 @@ impl WasiFs { let base_inode = self.get_fd_inode(base).map_err(fs_error_from_wasi_err)?; let guard = inodes.arena[base_inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { ref entries, .. } | Kind::Root { ref entries } => { if let Some(_entry) = entries.get(&name) { // TODO: eventually change the logic here to allow overwrites @@ -748,8 +763,7 @@ impl WasiFs { { let mut guard = inodes.arena[base_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { ref mut entries, .. } @@ -794,8 +808,7 @@ impl WasiFs { _ => { let base_inode = self.get_fd_inode(fd).map_err(fs_error_from_wasi_err)?; let mut guard = inodes.arena[base_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { ref mut handle, .. } => { std::mem::swap(handle, &mut ret); } @@ -815,8 +828,7 @@ impl WasiFs { ) -> Result<__wasi_filesize_t, __wasi_errno_t> { let inode = self.get_fd_inode(fd)?; let mut guard = inodes.arena[inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(h) = handle { let new_size = h.size(); @@ -905,8 +917,7 @@ impl WasiFs { // loading inodes as necessary 'symlink_resolution: while symlink_count < MAX_SYMLINKS { let mut guard = inodes.arena[cur_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Buffer { .. } => unimplemented!("state::get_inode_at_path for buffers"), Kind::Dir { ref mut entries, @@ -1011,7 +1022,7 @@ impl WasiFs { inodes, kind, false, - file.to_string_lossy().to_string(), + file.to_string_lossy().to_string().into(), __wasi_filestat_t { st_filetype: file_type, ..__wasi_filestat_t::default() @@ -1172,12 +1183,10 @@ impl WasiFs { let mut res = BaseFdAndRelPath::None; // for each preopened directory let preopen_fds = self.preopen_fds.read().unwrap(); - let deref = preopen_fds.deref(); - for po_fd in deref { + for po_fd in preopen_fds.deref() { let po_inode = self.fd_map.read().unwrap()[po_fd].inode; let guard = inodes.arena[po_inode].read(); - let deref = guard.deref(); - let po_path = match deref { + let po_path = match guard.deref() { Kind::Dir { path, .. } => &**path, Kind::Root { .. } => Path::new("/"), _ => unreachable!("Preopened FD that's not a directory or the root"), @@ -1219,8 +1228,7 @@ impl WasiFs { while cur_inode != base_inode { counter += 1; let guard = inodes.arena[cur_inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { parent, .. } => { if let Some(p) = parent { cur_inode = *p; @@ -1355,9 +1363,8 @@ impl WasiFs { debug!("fdstat: {:?}", fd); let guard = inodes.arena[fd.inode].read(); - let deref = guard.deref(); Ok(__wasi_fdstat_t { - fs_filetype: match deref { + fs_filetype: match guard.deref() { Kind::File { .. } => __WASI_FILETYPE_REGULAR_FILE, Kind::Dir { .. } => __WASI_FILETYPE_DIRECTORY, Kind::Symlink { .. } => __WASI_FILETYPE_SYMBOLIC_LINK, @@ -1419,8 +1426,7 @@ impl WasiFs { } let mut guard = inodes.arena[fd.inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle: Some(file), .. } => file.flush().map_err(|_| __WASI_EIO)?, @@ -1444,7 +1450,7 @@ impl WasiFs { name: String, ) -> Result { let stat = self.get_stat_for_kind(inodes, &kind)?; - Ok(self.create_inode_with_stat(inodes, kind, is_preopened, name, stat)) + Ok(self.create_inode_with_stat(inodes, kind, is_preopened, name.into(), stat)) } /// Creates an inode and inserts it given a Kind, does not assume the file exists. @@ -1453,7 +1459,7 @@ impl WasiFs { inodes: &mut WasiInodes, kind: Kind, is_preopened: bool, - name: String, + name: Cow<'static, str>, ) -> Inode { let stat = __wasi_filestat_t::default(); self.create_inode_with_stat(inodes, kind, is_preopened, name, stat) @@ -1465,7 +1471,7 @@ impl WasiFs { inodes: &mut WasiInodes, kind: Kind, is_preopened: bool, - name: String, + name: Cow<'static, str>, mut stat: __wasi_filestat_t, ) -> Inode { stat.st_ino = self.get_next_inode_index(); @@ -1543,7 +1549,7 @@ impl WasiFs { inodes.arena.insert(InodeVal { stat: RwLock::new(stat), is_preopened: true, - name: "/".to_string(), + name: "/".into(), kind: RwLock::new(root_kind), }) } @@ -1602,7 +1608,7 @@ impl WasiFs { inodes.arena.insert(InodeVal { stat: RwLock::new(stat), is_preopened: true, - name: name.to_string(), + name: name.to_string().into(), kind: RwLock::new(kind), }) }; @@ -1655,8 +1661,7 @@ impl WasiFs { let base_po_inode = &self.fd_map.read().unwrap()[base_po_dir].inode; let base_po_inode_v = &inodes.arena[*base_po_inode]; let guard = base_po_inode_v.read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Root { .. } => { self.fs_backing.symlink_metadata(path_to_symlink).map_err(fs_error_into_wasi_err)? } @@ -1698,8 +1703,7 @@ impl WasiFs { let is_preopened = inodeval.is_preopened; let mut guard = inodeval.write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { ref mut handle, .. } => { let mut empty_handle = None; std::mem::swap(handle, &mut empty_handle); @@ -1721,16 +1725,14 @@ impl WasiFs { if let Some(p) = *parent { drop(guard); let mut guard = inodes.arena[p].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { entries, .. } | Kind::Root { entries } => { self.fd_map.write().unwrap().remove(&fd).unwrap(); if is_preopened { let mut idx = None; { let preopen_fds = self.preopen_fds.read().unwrap(); - let preopen_fds_iter = preopen_fds.iter().enumerate(); - for (i, po_fd) in preopen_fds_iter { + for (i, po_fd) in preopen_fds.iter().enumerate() { if *po_fd == fd { idx = Some(i); break; @@ -1814,21 +1816,152 @@ impl WasiState { } } +pub(crate) struct WasiThreadContext { + pub ctx: WasiFunctionEnv, + pub store: RefCell, +} + +/// The code itself makes safe use of the struct so multiple threads don't access +/// it (without this the JS code prevents the reference to the module from being stored +/// which is needed for the multithreading mode) +unsafe impl Send for WasiThreadContext { } +unsafe impl Sync for WasiThreadContext { } + /// Structures used for the threading and sub-processes /// /// These internal implementation details are hidden away from the /// consumer who should instead implement the vbus trait on the runtime -#[derive(Debug, Default)] + +#[derive(Derivative, Default)] +#[derivative(Debug)] #[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))] pub(crate) struct WasiStateThreading { - #[cfg_attr(feature = "enable-serde", serde(skip))] - pub threads: HashMap, - pub thread_seed: u32, - #[cfg_attr(feature = "enable-serde", serde(skip))] - pub processes: HashMap, - #[cfg_attr(feature = "enable-serde", serde(skip))] + threads: Arc>>, + thread_count: Arc, + pub processes: HashMap>, pub process_reuse: HashMap, WasiBusProcessId>, pub process_seed: u32, + pub thread_seed: WasiThreadId, + pub thread_local: HashMap<(WasiThreadId, u32), u64>, + pub thread_local_user_data: HashMap, + pub thread_local_seed: u32, + #[derivative(Debug = "ignore")] + pub thread_ctx: HashMap>, +} + +impl WasiStateThreading +{ + /// Creates a a thread and returns it + pub fn new_thread(&mut self) -> WasiThreadHandle { + let id = self.thread_seed.inc(); + let ctrl = WasiThread::default(); + { + let mut guard = self.threads.write().unwrap(); + guard.insert(id, ctrl); + } + self.thread_count.fetch_add(1, Ordering::AcqRel); + + WasiThreadHandle { + id, + threads: self.threads.clone(), + thread_count: self.thread_count.clone() + } + } + + pub fn get(&self, tid: &WasiThreadId) -> Option { + let guard = self.threads.read().unwrap(); + guard.get(tid).map(|a| a.clone()) + } + + pub fn active_threads(&self) -> u32 { + self.thread_count.load(Ordering::Acquire) + } +} + +#[derive(Debug, Clone)] +pub struct WasiThreadHandle { + id: WasiThreadId, + threads: Arc>>, + pub(crate) thread_count: Arc, +} + +impl WasiThreadHandle { + pub fn id(&self) -> WasiThreadId { + self.id + } +} + +impl Drop +for WasiThreadHandle { + fn drop(&mut self) { + if let Some(ctrl) = { + let mut guard = self.threads.write().unwrap(); + guard.remove(&self.id) + } { + ctrl.mark_finished(); + } + self.thread_count.fetch_sub(1, Ordering::AcqRel); + } +} + +/// Represents a futex which will make threads wait for completion in a more +/// CPU efficient manner +#[derive(Debug, Clone)] +pub struct WasiFutex { + pub(crate) refcnt: Arc, + pub(crate) inner: Arc<(Mutex<()>, Condvar)>, +} + +#[derive(Debug)] +pub struct WasiBusCall +{ + pub bid: WasiBusProcessId, + pub invocation: Box, +} + +/// Protected area of the BUS state +#[derive(Debug, Default)] +pub struct WasiBusProtectedState +{ + pub call_seed: u64, + pub called: HashMap>, + pub calls: HashMap, +} + +/// Structure that holds the state of BUS calls to this process and from +/// this process. BUS calls are the equivalent of RPC's with support +/// for all the major serializers +#[derive(Debug, Default)] +pub struct WasiBusState +{ + protected: Mutex, + poll_waker: WasiParkingLot, +} + +impl WasiBusState +{ + /// Gets a reference to the waker that can be used for + /// asynchronous calls + pub fn get_poll_waker(&self) -> Waker { + self.poll_waker.get_waker() + } + + /// Wakes one of the reactors thats currently waiting + pub fn poll_wake(&self) { + self.poll_waker.wake() + } + + /// Will wait until either the reactor is triggered + /// or the timeout occurs + pub fn poll_wait(&self, timeout: Duration) -> bool { + self.poll_waker.wait(timeout) + } + + /// Locks the protected area of the BUS and returns a guard that + /// can be used to access it + pub fn protected<'a>(&'a self) -> MutexGuard<'a, WasiBusProtectedState> { + self.protected.lock().unwrap() + } } /// Top level data type containing all* the state with which WASI can @@ -1864,7 +1997,9 @@ pub(crate) struct WasiStateThreading { pub struct WasiState { pub fs: WasiFs, pub inodes: Arc>, - pub(crate) threading: Mutex, + pub(crate) threading: RwLock, + pub(crate) futexs: Mutex>, + pub(crate) bus: WasiBusState, pub args: Vec>, pub envs: Vec>, } @@ -1941,10 +2076,10 @@ impl WasiState { fd: __wasi_fd_t, ) -> Result>, FsError> { let ret = WasiStateFileGuard::new(self, fd)?.map(|a| { - let ret = Box::new(a); - let ret: Box = ret; - ret - }); + let ret = Box::new(a); + let ret: Box = ret; + ret + }); Ok(ret) } } @@ -1961,3 +2096,27 @@ pub fn virtual_file_type_to_wasi_file_type(file_type: wasmer_vfs::FileType) -> _ __WASI_FILETYPE_UNKNOWN } } + +#[derive(Debug, Clone)] +pub struct WasiDummyWaker; + +impl WakeRef for WasiDummyWaker { + fn wake_by_ref(&self) { + } +} + +impl Wake for WasiDummyWaker { + fn wake(self) { + } +} + +unsafe impl ViaRawPointer for WasiDummyWaker { + type Target = (); + fn into_raw(self) -> *mut () { + std::mem::forget(self); + std::ptr::null_mut() + } + unsafe fn from_raw(_ptr: *mut ()) -> Self { + WasiDummyWaker + } +} diff --git a/lib/wasi/src/state/parking.rs b/lib/wasi/src/state/parking.rs new file mode 100644 index 00000000000..bb25f5d8f95 --- /dev/null +++ b/lib/wasi/src/state/parking.rs @@ -0,0 +1,82 @@ +use std::{ + task::Waker, + sync::{ + Mutex, + Arc, + Condvar + }, + time::Duration +}; + +/// Represents a waker that can be used to put a thread to +/// sleep while it waits for an event to occur +#[derive(Debug)] +pub struct WasiParkingLot +{ + waker: Waker, + run: Arc<(Mutex, Condvar)>, +} + +impl Default +for WasiParkingLot +{ + fn default() -> Self + { + Self::new(true) + } +} + +impl WasiParkingLot +{ + /// Creates a new parking lot with a specific value + pub fn new(initial_val: bool) -> Self + { + let run = Arc::new((Mutex::new(initial_val), Condvar::default())); + let waker = { + let run = run.clone(); + waker_fn::waker_fn(move || + { + let mut guard = run.0.lock().unwrap(); + *guard = true; + run.1.notify_one(); + }) + }; + + Self { + waker, + run, + } + } + + /// Gets a reference to the waker that can be used for + /// asynchronous calls + pub fn get_waker(&self) -> Waker { + self.waker.clone() + } + + /// Wakes one of the reactors thats currently waiting + pub fn wake(&self) { + self.waker.wake_by_ref(); + } + + /// Will wait until either the reactor is triggered + /// or the timeout occurs + pub fn wait(&self, timeout: Duration) -> bool { + let mut run = self.run.0.lock().unwrap(); + if *run == true { + *run = false; + return true; + } + loop { + let woken = self.run.1.wait_timeout(run, timeout).unwrap(); + if woken.1.timed_out() { + return false; + } + run = woken.0; + if *run == true { + *run = false; + return true; + } + } + } +} \ No newline at end of file diff --git a/lib/wasi/src/state/thread.rs b/lib/wasi/src/state/thread.rs new file mode 100644 index 00000000000..0b3185163ca --- /dev/null +++ b/lib/wasi/src/state/thread.rs @@ -0,0 +1,56 @@ +use std::{ + sync::{ + Mutex, + Arc, + Condvar + }, + time::Duration +}; + +/// Represents a running thread which allows a joiner to +/// wait for the thread to exit +#[derive(Debug, Clone)] +pub struct WasiThread +{ + finished: Arc<(Mutex, Condvar)>, +} + +impl Default +for WasiThread +{ + fn default() -> Self + { + Self { + finished: Arc::new((Mutex::new(false), Condvar::default())), + } + } +} + +impl WasiThread +{ + /// Marks the thread as finished (which will cause anyone that + /// joined on it to wake up) + pub fn mark_finished(&self) { + let mut guard = self.finished.0.lock().unwrap(); + *guard = true; + self.finished.1.notify_all(); + } + + /// Waits until the thread is finished or the timeout is reached + pub fn join(&self, timeout: Duration) -> bool { + let mut finished = self.finished.0.lock().unwrap(); + if *finished == true { + return true; + } + loop { + let woken = self.finished.1.wait_timeout(finished, timeout).unwrap(); + if woken.1.timed_out() { + return false; + } + finished = woken.0; + if *finished == true { + return true; + } + } + } +} diff --git a/lib/wasi/src/state/types.rs b/lib/wasi/src/state/types.rs index 462a008f19f..695d4977f76 100644 --- a/lib/wasi/src/state/types.rs +++ b/lib/wasi/src/state/types.rs @@ -10,7 +10,7 @@ use std::{ sync::{Arc, Mutex}, time::Duration, }; -use wasmer_vbus::BusError; +use wasmer_vbus::VirtualBusError; #[cfg(feature = "host-fs")] pub use wasmer_vfs::host_fs::{Stderr, Stdin, Stdout}; @@ -102,8 +102,8 @@ pub fn net_error_into_wasi_err(net_error: NetworkError) -> __wasi_errno_t { } } -pub fn bus_error_into_wasi_err(bus_error: BusError) -> __bus_errno_t { - use BusError::*; +pub fn bus_error_into_wasi_err(bus_error: VirtualBusError) -> __bus_errno_t { + use VirtualBusError::*; match bus_error { Serialization => __BUS_ESER, Deserialization => __BUS_EDES, @@ -127,8 +127,8 @@ pub fn bus_error_into_wasi_err(bus_error: BusError) -> __bus_errno_t { } } -pub fn wasi_error_into_bus_err(bus_error: __bus_errno_t) -> BusError { - use BusError::*; +pub fn wasi_error_into_bus_err(bus_error: __bus_errno_t) -> VirtualBusError { + use VirtualBusError::*; match bus_error { __BUS_ESER => Serialization, __BUS_EDES => Deserialization, @@ -148,10 +148,24 @@ pub fn wasi_error_into_bus_err(bus_error: __bus_errno_t) -> BusError { __BUS_EINVOKE => InvokeFailed, __BUS_ECONSUMED => AlreadyConsumed, __BUS_EMEMVIOLATION => MemoryAccessViolation, - /*__BUS_EUNKNOWN |*/ _ => UnknownError, + __BUS_EUNKNOWN | _ => UnknownError, } } +pub(crate) fn bus_read_rights() -> __wasi_rights_t { + __WASI_RIGHT_FD_FDSTAT_SET_FLAGS + | __WASI_RIGHT_FD_FILESTAT_GET + | __WASI_RIGHT_FD_READ + | __WASI_RIGHT_POLL_FD_READWRITE +} + +pub(crate) fn bus_write_rights() -> __wasi_rights_t { + __WASI_RIGHT_FD_FDSTAT_SET_FLAGS + | __WASI_RIGHT_FD_FILESTAT_GET + | __WASI_RIGHT_FD_WRITE + | __WASI_RIGHT_POLL_FD_READWRITE +} + #[derive(Debug, Clone)] #[allow(clippy::enum_variant_names)] pub enum PollEvent { diff --git a/lib/wasi/src/syscalls/legacy/snapshot0.rs b/lib/wasi/src/syscalls/legacy/snapshot0.rs index 033abe11e04..ae69976923d 100644 --- a/lib/wasi/src/syscalls/legacy/snapshot0.rs +++ b/lib/wasi/src/syscalls/legacy/snapshot0.rs @@ -1,6 +1,6 @@ use crate::syscalls; use crate::syscalls::types::{self, snapshot0}; -use crate::{mem_error_to_wasi, Memory32, MemorySize, WasiEnv, WasiError, WasiThread}; +use crate::{mem_error_to_wasi, Memory32, MemorySize, WasiEnv, WasiError}; use wasmer::{AsStoreMut, FunctionEnvMut, WasmPtr}; /// Wrapper around `syscalls::fd_filestat_get` with extra logic to handle the size @@ -27,7 +27,7 @@ pub fn fd_filestat_get( // Set up complete, make the call with the pointer that will write to the // struct and some unrelated memory after the struct. - let result = syscalls::fd_filestat_get::(ctx.as_mut(), fd, new_buf); + let result = syscalls::fd_filestat_get_internal::(&mut ctx, fd, new_buf); // reborrow memory let env = ctx.data(); @@ -130,40 +130,43 @@ pub fn poll_oneoff( // in this case the new type is smaller than the old type, so it all fits into memory, // we just need to readjust and copy it - // we start by adjusting `in_` into a format that the new code can understand - let env = ctx.data(); - let memory = env.memory_view(&ctx); let nsubscriptions_offset: u32 = nsubscriptions; - let in_origs = wasi_try_mem_ok!(in_.slice(&memory, nsubscriptions_offset)); - let in_origs = wasi_try_mem_ok!(in_origs.read_to_vec()); - - // get a pointer to the smaller new type - let in_new_type_ptr: WasmPtr = in_.cast(); - - for (in_sub_new, orig) in - wasi_try_mem_ok!(in_new_type_ptr.slice(&memory, nsubscriptions_offset)) - .iter() - .zip(in_origs.iter()) - { - wasi_try_mem_ok!(in_sub_new.write(types::__wasi_subscription_t { - userdata: orig.userdata, - type_: orig.type_, - u: if orig.type_ == types::__WASI_EVENTTYPE_CLOCK { - types::__wasi_subscription_u { - clock: types::__wasi_subscription_clock_t { - clock_id: unsafe { orig.u.clock.clock_id }, - timeout: unsafe { orig.u.clock.timeout }, - precision: unsafe { orig.u.clock.precision }, - flags: unsafe { orig.u.clock.flags }, - }, - } - } else { - types::__wasi_subscription_u { - fd_readwrite: unsafe { orig.u.fd_readwrite }, - } - }, - })); - } + let in_new_type_ptr = { + // we start by adjusting `in_` into a format that the new code can understand + let env = ctx.data(); + let memory = env.memory_view(&ctx); + let in_origs = wasi_try_mem_ok!(in_.slice(&memory, nsubscriptions_offset)); + let in_origs = wasi_try_mem_ok!(in_origs.read_to_vec()); + + // get a pointer to the smaller new type + let in_new_type_ptr: WasmPtr = in_.cast(); + + for (in_sub_new, orig) in + wasi_try_mem_ok!(in_new_type_ptr.slice(&memory, nsubscriptions_offset)) + .iter() + .zip(in_origs.iter()) + { + wasi_try_mem_ok!(in_sub_new.write(types::__wasi_subscription_t { + userdata: orig.userdata, + type_: orig.type_, + u: if orig.type_ == types::__WASI_EVENTTYPE_CLOCK { + types::__wasi_subscription_u { + clock: types::__wasi_subscription_clock_t { + clock_id: unsafe { orig.u.clock.clock_id }, + timeout: unsafe { orig.u.clock.timeout }, + precision: unsafe { orig.u.clock.precision }, + flags: unsafe { orig.u.clock.flags }, + }, + } + } else { + types::__wasi_subscription_u { + fd_readwrite: unsafe { orig.u.fd_readwrite }, + } + }, + })); + } + in_new_type_ptr + }; // make the call let result = syscalls::poll_oneoff::( @@ -172,11 +175,13 @@ pub fn poll_oneoff( out_, nsubscriptions, nevents, - ); + )?; // replace the old values of in, in case the calling code reuses the memory let env = ctx.data(); let memory = env.memory_view(&ctx); + let in_origs = wasi_try_mem_ok!(in_.slice(&memory, nsubscriptions_offset)); + let in_origs = wasi_try_mem_ok!(in_origs.read_to_vec()); for (in_sub, orig) in wasi_try_mem_ok!(in_.slice(&memory, nsubscriptions_offset)) .iter() @@ -185,5 +190,5 @@ pub fn poll_oneoff( wasi_try_mem_ok!(in_sub.write(orig)); } - result + Ok(result) } diff --git a/lib/wasi/src/syscalls/mod.rs b/lib/wasi/src/syscalls/mod.rs index 0c5266e6efc..a639c70e817 100644 --- a/lib/wasi/src/syscalls/mod.rs +++ b/lib/wasi/src/syscalls/mod.rs @@ -11,20 +11,17 @@ pub mod types { target_vendor = "apple" ))] pub mod unix; -#[cfg(any(target_arch = "wasm32"))] -pub mod wasm32; +#[cfg(any(target_family = "wasm"))] +pub mod wasm; #[cfg(any(target_os = "windows"))] pub mod windows; pub mod legacy; -//pub mod wasi; -pub mod wasix32; -pub mod wasix64; use self::types::*; -use crate::state::{bus_error_into_wasi_err, wasi_error_into_bus_err, InodeHttpSocketType}; +use crate::state::{bus_error_into_wasi_err, wasi_error_into_bus_err, InodeHttpSocketType, WasiFutex, bus_write_rights, bus_read_rights, WasiBusCall, WasiThreadContext, WasiParkingLot, WasiDummyWaker}; use crate::utils::map_io_err; -use crate::WasiBusProcessId; +use crate::{WasiBusProcessId, WasiEnvInner, import_object_for_all_wasi_versions, WasiFunctionEnv, current_caller_id}; use crate::{ mem_error_to_wasi, state::{ @@ -32,25 +29,34 @@ use crate::{ virtual_file_type_to_wasi_file_type, Fd, Inode, InodeSocket, InodeSocketKind, InodeVal, Kind, PollEvent, PollEventBuilder, WasiPipe, WasiState, MAX_SYMLINKS, }, - WasiEnv, WasiError, WasiThread, WasiThreadId, + WasiEnv, WasiError, WasiThreadId, }; use bytes::Bytes; +use cooked_waker::IntoWaker; +use sha2::Sha256; +use wasmer::vm::VMMemory; use std::borrow::{Borrow, Cow}; +use std::cell::RefCell; +use std::collections::HashSet; +use std::collections::hash_map::Entry; use std::convert::{Infallible, TryInto}; use std::io::{self, Read, Seek, Write}; use std::mem::transmute; use std::net::{IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr}; use std::ops::{Deref, DerefMut}; -use std::sync::atomic::AtomicU64; +use std::pin::Pin; +use std::sync::atomic::{AtomicU64, AtomicU32}; use std::sync::{atomic::Ordering, Mutex}; -use std::sync::{mpsc, Arc}; +use std::sync::{mpsc, Arc, Condvar}; +use std::task::{Poll, Context}; +use std::thread::LocalKey; use std::time::Duration; use tracing::{debug, error, trace, warn}; use wasmer::{ - AsStoreMut, Extern, FunctionEnv, FunctionEnvMut, Instance, Memory, Memory32, Memory64, - MemorySize, MemoryView, Module, RuntimeError, Value, WasmPtr, WasmSlice, + AsStoreMut, FunctionEnvMut, Memory, Memory32, Memory64, MemorySize, RuntimeError, Value, + WasmPtr, WasmSlice, FunctionEnv, Instance, Module, Extern, MemoryView, TypedFunction, Store, Pages, Global, AsStoreRef, }; -use wasmer_vbus::{FileDescriptor, StdioMode}; +use wasmer_vbus::{FileDescriptor, StdioMode, BusDataFormat, BusInvocationEvent}; use wasmer_vfs::{FsError, VirtualFile}; use wasmer_vnet::{SocketHttpRequest, StreamSecurity}; @@ -65,8 +71,8 @@ pub use unix::*; #[cfg(any(target_os = "windows"))] pub use windows::*; -#[cfg(any(target_arch = "wasm32"))] -pub use wasm32::*; +#[cfg(any(target_family = "wasm"))] +pub use wasm::*; fn to_offset(offset: usize) -> Result { let ret: M::Offset = offset.try_into().map_err(|_| __WASI_EINVAL)?; @@ -164,8 +170,7 @@ where let inode = &inodes.arena[inode_idx]; let mut guard = inode.read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Socket { socket } => actor(socket)?, _ => { return Err(__WASI_ENOTSOCK); @@ -198,8 +203,7 @@ where let inode = &inodes.arena[inode_idx]; let mut guard = inode.write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Socket { socket } => actor(socket)?, _ => { return Err(__WASI_ENOTSOCK); @@ -233,8 +237,7 @@ where let inode = &inodes.arena[inode_idx]; let mut guard = inode.write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Socket { socket } => { let new_socket = actor(socket)?; @@ -393,7 +396,7 @@ pub fn clock_time_get( precision: __wasi_timestamp_t, time: WasmPtr<__wasi_timestamp_t, M>, ) -> __wasi_errno_t { - debug!( + trace!( "wasi::clock_time_get clock_id: {}, precision: {}", clock_id, precision ); @@ -425,7 +428,7 @@ pub fn environ_get( environ: WasmPtr, M>, environ_buf: WasmPtr, ) -> __wasi_errno_t { - debug!( + trace!( "wasi::environ_get. Environ: {:?}, environ_buf: {:?}", environ, environ_buf ); @@ -523,8 +526,7 @@ pub fn fd_allocate( let new_size = wasi_try!(offset.checked_add(len).ok_or(__WASI_EINVAL)); { let mut guard = inodes.arena[inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(handle) = handle { wasi_try!(handle.set_len(new_size).map_err(fs_error_into_wasi_err)); @@ -689,7 +691,23 @@ pub fn fd_fdstat_set_rights( /// - `__wasi_filestat_t *buf` /// Where the metadata from `fd` will be written pub fn fd_filestat_get( - ctx: FunctionEnvMut<'_, WasiEnv>, + mut ctx: FunctionEnvMut<'_, WasiEnv>, + fd: __wasi_fd_t, + buf: WasmPtr<__wasi_filestat_t, M>, +) -> __wasi_errno_t { + fd_filestat_get_internal(&mut ctx, fd, buf) +} + +/// ### `fd_filestat_get()` +/// Get the metadata of an open file +/// Input: +/// - `__wasi_fd_t fd` +/// The open file descriptor whose metadata will be read +/// Output: +/// - `__wasi_filestat_t *buf` +/// Where the metadata from `fd` will be written +pub(crate) fn fd_filestat_get_internal( + ctx: &mut FunctionEnvMut<'_, WasiEnv>, fd: __wasi_fd_t, buf: WasmPtr<__wasi_filestat_t, M>, ) -> __wasi_errno_t { @@ -733,8 +751,7 @@ pub fn fd_filestat_set_size( { let mut guard = inodes.arena[inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(handle) = handle { wasi_try!(handle.set_len(st_size).map_err(fs_error_into_wasi_err)); @@ -873,8 +890,7 @@ pub fn fd_pread( return Ok(__WASI_EACCES); } let mut guard = inodes.arena[inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(h) = handle { wasi_try_ok!( @@ -897,7 +913,10 @@ pub fn fd_pread( Kind::Dir { .. } | Kind::Root { .. } => return Ok(__WASI_EISDIR), Kind::Symlink { .. } => unimplemented!("Symlinks in wasi::fd_pread"), Kind::Buffer { buffer } => { - wasi_try_ok!(read_bytes(&buffer[(offset as usize)..], &memory, iovs), env) + wasi_try_ok!( + read_bytes(&buffer[(offset as usize)..], &memory, iovs), + env + ) } } } @@ -927,14 +946,13 @@ pub fn fd_prestat_get( let (memory, mut state, inodes) = env.get_memory_and_wasi_state_and_inodes(&ctx, 0); let prestat_ptr = buf.deref(&memory); - wasi_try_mem!( - prestat_ptr.write(wasi_try!(state.fs.prestat_fd(inodes.deref(), fd).map_err( - |code| { + wasi_try_mem!(prestat_ptr.write(wasi_try!( + state.fs.prestat_fd(inodes.deref(), fd) + .map_err(|code| { debug!("fd_prestat_get failed (fd={}) - errno={}", fd, code); code - } - ))) - ); + }) + ))); __WASI_ESUCCESS } @@ -961,8 +979,7 @@ pub fn fd_prestat_dir_name( trace!("=> inode: {:?}", inode_val); let guard = inode_val.read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { .. } | Kind::Root { .. } => { // TODO: verify this: null termination, etc let path_len: u64 = path_len.into(); @@ -1057,8 +1074,7 @@ pub fn fd_pwrite( let inode = &inodes.arena[inode_idx]; let mut guard = inode.write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(handle) = handle { wasi_try_ok!( @@ -1157,8 +1173,7 @@ pub fn fd_read( let bytes_read = { let mut guard = inode.write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(handle) = handle { wasi_try_ok!( @@ -1295,8 +1310,7 @@ pub fn fd_readdir( let entries: Vec<(String, u8, u64)> = { let guard = inodes.arena[working_dir.inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { path, entries, .. } => { debug!("Reading dir {:?}", path); // TODO: refactor this code @@ -1477,7 +1491,7 @@ pub fn fd_event( inodes.deref_mut(), kind, false, - "event".to_string(), + "event".into(), ); let rights = __WASI_RIGHT_FD_READ | __WASI_RIGHT_FD_WRITE | __WASI_RIGHT_POLL_FD_READWRITE; let fd = wasi_try!(state.fs.create_fd(rights, rights, 0, 0, inode)); @@ -1527,8 +1541,7 @@ pub fn fd_seek( use std::io::SeekFrom; let inode_idx = fd_entry.inode; let mut guard = inodes.arena[inode_idx].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { ref mut handle, .. } => { if let Some(handle) = handle { let end = @@ -1598,8 +1611,7 @@ pub fn fd_sync(ctx: FunctionEnvMut<'_, WasiEnv>, fd: __wasi_fd_t) -> __wasi_errn // TODO: implement this for more than files { let mut guard = inodes.arena[inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(h) = handle { wasi_try!(h.sync_to_disk().map_err(fs_error_into_wasi_err)); @@ -1715,8 +1727,7 @@ pub fn fd_write( let bytes_written = { let mut guard = inode.write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(handle) = handle { wasi_try_ok!( @@ -1744,7 +1755,8 @@ pub fn fd_write( counter, wakers, .. } => { let mut val = 0u64.to_ne_bytes(); - let written = wasi_try_ok!(write_bytes(&mut val[..], &memory, iovs_arr)); + let written = + wasi_try_ok!(write_bytes(&mut val[..], &memory, iovs_arr)); if written != val.len() { return Ok(__WASI_EINVAL); } @@ -1764,7 +1776,10 @@ pub fn fd_write( } Kind::Symlink { .. } => unimplemented!("Symlinks in wasi::fd_write"), Kind::Buffer { buffer } => { - wasi_try_ok!(write_bytes(&mut buffer[offset..], &memory, iovs_arr), env) + wasi_try_ok!( + write_bytes(&mut buffer[offset..], &memory, iovs_arr), + env + ) } } }; @@ -1811,13 +1826,13 @@ pub fn fd_pipe( inodes.deref_mut(), Kind::Pipe { pipe: pipe1 }, false, - "pipe".to_string(), + "pipe".into(), ); let inode2 = state.fs.create_inode_with_default_stat( inodes.deref_mut(), Kind::Pipe { pipe: pipe2 }, false, - "pipe".to_string(), + "pipe".into(), ); let rights = super::state::all_socket_rights(); @@ -1886,8 +1901,7 @@ pub fn path_create_directory( for comp in &path_vec { debug!("Creating dir {}", comp); let mut guard = inodes.arena[cur_dir_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { ref mut entries, path, @@ -2189,8 +2203,7 @@ pub fn path_link( } { let mut guard = inodes.arena[target_parent_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { entries, .. } => { if entries.contains_key(&new_entry_name) { return __WASI_EEXIST; @@ -2295,8 +2308,7 @@ pub fn path_open( let inode = if let Ok(inode) = maybe_inode { // Happy path, we found the file we're trying to open let mut guard = inodes.arena[inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { ref mut handle, path, @@ -2383,8 +2395,7 @@ pub fn path_open( )); let new_file_host_path = { let guard = inodes.arena[parent_inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { path, .. } => { let mut new_path = path.clone(); new_path.push(&new_entity_name); @@ -2444,10 +2455,6 @@ pub fn path_open( } }; - { - debug!("inode {:?} value {:#?} found!", inode, inodes.arena[inode]); - } - // TODO: check and reduce these // TODO: ensure a mutable fd to root can never be opened let out_fd = wasi_try!(state.fs.create_fd( @@ -2514,7 +2521,8 @@ pub fn path_readlink( } let bytes: Vec<_> = bytes.collect(); - let out = wasi_try_mem!(buf.slice(&memory, wasi_try!(to_offset::(bytes.len())))); + let out = + wasi_try_mem!(buf.slice(&memory, wasi_try!(to_offset::(bytes.len())))); wasi_try_mem!(out.write_slice(&bytes)); // should we null terminate this? @@ -2556,8 +2564,7 @@ pub fn path_remove_directory( let host_path_to_remove = { let guard = inodes.arena[inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { entries, path, .. } => { if !entries.is_empty() || wasi_try!(state.fs_read_dir(path)).count() != 0 { return __WASI_ENOTEMPTY; @@ -2571,8 +2578,7 @@ pub fn path_remove_directory( { let mut guard = inodes.arena[parent_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { ref mut entries, .. } => { @@ -2676,10 +2682,10 @@ pub fn path_rename( wasi_try!(state .fs .get_parent_inode_at_path(inodes.deref_mut(), new_fd, target_path, true)); + let host_adjusted_target_path = { let guard = inodes.arena[target_parent_inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { entries, path, .. } => { if entries.contains_key(&target_entry_name) { return __WASI_EEXIST; @@ -2700,8 +2706,7 @@ pub fn path_rename( let source_entry = { let mut guard = inodes.arena[source_parent_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { entries, .. } => { wasi_try!(entries.remove(&source_entry_name).ok_or(__WASI_ENOENT)) } @@ -2717,8 +2722,7 @@ pub fn path_rename( { let mut guard = inodes.arena[source_entry].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, ref path, .. } => { @@ -2840,8 +2844,7 @@ pub fn path_symlink( // short circuit if anything is wrong, before we create an inode { let guard = inodes.arena[target_parent_inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::Dir { entries, .. } => { if entries.contains_key(&entry_name) { return __WASI_EEXIST; @@ -2878,7 +2881,7 @@ pub fn path_symlink( inodes.deref_mut(), kind, false, - entry_name.clone(), + entry_name.clone().into(), ); { @@ -2932,8 +2935,7 @@ pub fn path_unlink_file( let removed_inode = { let mut guard = inodes.arena[parent_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::Dir { ref mut entries, .. } => { @@ -2958,8 +2960,7 @@ pub fn path_unlink_file( if st_nlink == 0 { { let mut guard = inodes.arena[removed_inode].write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, path, .. } => { if let Some(h) = handle { wasi_try!(h.unlink().map_err(fs_error_into_wasi_err)); @@ -3119,8 +3120,7 @@ pub fn poll_oneoff( { let guard = inodes.arena[inode].read(); - let deref = guard.deref(); - match deref { + match guard.deref() { Kind::File { handle, .. } => { if let Some(h) = handle { crate::state::InodeValFileReadGuard { guard } @@ -3494,83 +3494,340 @@ pub fn chdir( /// Returns the thread index of the newly created thread /// (indices always start from zero) pub fn thread_spawn( - ctx: FunctionEnvMut<'_, WasiEnv>, - method: WasmPtr, - method_len: M::Offset, + mut ctx: FunctionEnvMut<'_, WasiEnv>, user_data: u64, reactor: __wasi_bool_t, ret_tid: WasmPtr<__wasi_tid_t, M>, ) -> __wasi_errno_t { - debug!("wasi::thread_spawn"); + debug!("wasi::thread_spawn (reactor={}, thread_id={}, caller_id={})", reactor, ctx.data().id.raw(), current_caller_id().raw()); + + // Now we use the environment and memory references let env = ctx.data(); let memory = env.memory_view(&ctx); - let method = unsafe { get_input_str!(&memory, method, method_len) }; + let runtime = env.runtime.clone(); - // Load the callback function - if method.as_str() != "_thread_start" { - return __WASI_ENOTCAPABLE; + // Create the handle that represents this thread + let mut thread_handle = { + let mut guard = env.state.threading.write().unwrap(); + guard.new_thread() }; - /* - let funct = unsafe { - if env.thread_start_ref().is_none() { - return __WASI_EADDRNOTAVAIL; + let thread_id: __wasi_tid_t = thread_handle.id().into(); + + // We need a copy of the process memory and a packaged store in order to + // launch threads and reactors + let thread_memory = wasi_try!( + ctx.data() + .memory() + .try_clone(&ctx) + .ok_or_else(|| { + error!("thread failed - the memory could not be cloned"); + __WASI_ENOTCAPABLE + }) + ); + #[cfg(feature = "compiler")] + let engine = ctx.as_store_ref().engine().clone(); + + // This function takes in memory and a store and creates a context that + // can be used to call back into the process + let create_ctx = { + let state = env.state.clone(); + let wasi_env = env.clone(); + let thread_id = thread_handle.id(); + move |module: Module, memory: VMMemory| + { + // We need to reconstruct some things + #[cfg(feature = "compiler")] + let mut store = Store::new(engine); + #[cfg(not(feature = "compiler"))] + let mut store = Store::default(); + let module = module.clone(); + let memory = Memory::new_from_existing(&mut store, memory); + + // Build the context object and import the memory + let mut ctx = WasiFunctionEnv::new(&mut store, wasi_env.clone()); + ctx.data_mut(&mut store).id = thread_id; + + let mut import_object = import_object_for_all_wasi_versions(&mut store, &ctx.env); + import_object.define("env", "memory", memory.clone()); + + let instance = match Instance::new(&mut store, &module, &import_object) { + Ok(a) => a, + Err(err) => { + error!("thread failed - clone instance failed: {}", err); + return Err(__WASI_ENOEXEC as u32); + } + }; + + // Set the current thread ID + ctx.data_mut(&mut store).inner = Some( + WasiEnvInner { + module, + memory, + thread_spawn: instance.exports.get_typed_function(&store, "_start_thread").ok(), + react: instance.exports.get_typed_function(&store, "_react").ok(), + thread_local_destroy: instance.exports.get_typed_function(&store, "_thread_local_destroy").ok(), + _malloc: instance.exports.get_typed_function(&store, "_malloc").ok(), + _free: instance.exports.get_typed_function(&store, "_free").ok() + } + ); + trace!("threading: new context created for thread_id = {}", thread_id.raw()); + Ok(WasiThreadContext { + ctx, + store: RefCell::new(store) + }) } - env.thread_start_ref_unchecked() }; - */ - let reactor = match reactor { - __WASI_BOOL_FALSE => false, - __WASI_BOOL_TRUE => true, - _ => return __WASI_EINVAL, - }; - - // Create the sub-thread - let mut sub_env = env.clone(); - let mut sub_thread = env.new_thread(); - sub_env.id = sub_thread.id; - - let child = { - let id = sub_thread.id; - wasi_try!(env - .runtime - .thread_spawn(Box::new(move || { - /* - if let Some(funct) = sub_env.thread_start_ref() { - if let Err(err) = funct.call(user_data) { - warn!("thread failed: {}", err); - std::mem::forget(sub_thread); - return; + // This function calls into the module + let call_module = move |ctx: &WasiFunctionEnv, store: &mut Store| + { + // We either call the reactor callback or the thread spawn callback + //trace!("threading: invoking thread callback (reactor={})", reactor); + let spawn = match reactor { + __WASI_BOOL_FALSE => ctx.data(&store).inner().thread_spawn.clone().unwrap(), + __WASI_BOOL_TRUE => ctx.data(&store).inner().react.clone().unwrap(), + _ => { + debug!("thread failed - failed as the reactor type is not value"); + return __WASI_ENOEXEC as u32; + } + }; + let mut ret = __WASI_ESUCCESS; + if let Err(err) = spawn.call(store, user_data as i64) { + debug!("thread failed - start: {}", err); + ret = __WASI_ENOEXEC; + } + //trace!("threading: thread callback finished (reactor={}, ret={})", reactor, ret); + + // If we are NOT a reactor then we will only run once and need to clean up + if reactor == __WASI_BOOL_FALSE + { + trace!("threading: cleaning up local thread variables"); + + // Destroy all the local thread variables that were allocated for this thread + let to_local_destroy = { + let thread_id = ctx.data(store).id; + let mut to_local_destroy = Vec::new(); + let mut guard = ctx.data(store).state.threading.write().unwrap(); + for ((thread, key), val) in guard.thread_local.iter() { + if *thread == thread_id { + if let Some(user_data) = guard.thread_local_user_data.get(key) { + to_local_destroy.push((*user_data, *val)) + } } - } else { - warn!("failed to start thread: missing callback '__wasix_thread_start'"); - std::mem::forget(sub_thread); - return; } - */ + guard.thread_local.retain(|(t, _), _| *t != thread_id); + to_local_destroy + }; + if to_local_destroy.len() > 0 { + if let Some(thread_local_destroy) = ctx.data(store).inner().thread_local_destroy.as_ref().map(|a| a.clone()) { + for (userdata, val) in to_local_destroy { + let _ = thread_local_destroy.call(store, user_data as i64, val as i64); + } + } + } + } + // Return the result + ret as u32 + }; + + // This next function gets a context for the local thread and then + // calls into the process + let mut execute_module = { + let state = env.state.clone(); + move |module: Module, memory: &mut Option| + { + // We capture the thread handle here, it is used to notify + // anyone that is interested when this thread has terminated + let _captured_handle = Box::new(&mut thread_handle); + + // Given that it is not safe to assume this delegate will run on the + // same thread we need to capture a simple process that will create + // context objects on demand and reuse them + let caller_id = current_caller_id(); + + // We loop because read locks are held while functions run which need + // to be relocked in the case of a miss hit. + loop { let thread = { - let mut guard = sub_env.state.threading.lock().unwrap(); - let thread = guard.threads.remove(&id); - drop(guard); - thread + let guard = state.threading.read().unwrap(); + guard.thread_ctx.get(&caller_id).map(|a| a.clone()) }; - - if let Some(thread) = thread { - let mut thread_guard = thread.exit.lock().unwrap(); - thread_guard.take(); + if let Some(thread) = thread + { + let mut store = thread.store.borrow_mut(); + let ret = call_module(&thread.ctx, store.deref_mut()); + return ret; } - drop(sub_thread); - })) - .map_err(|err| { - let err: __wasi_errno_t = err.into(); - err - })); - id + + // Otherwise we need to create a new context under a write lock + debug!("encountered a new caller (ref={}) - creating WASM execution context...", caller_id.raw()); + + // We can only create the context once per thread + let memory = match memory.take() { + Some(m) => m, + None => { + debug!("thread failed - memory can only be consumed once per context creation"); + return __WASI_ENOEXEC as u32; + } + }; + + // Now create the context and hook it up + let mut guard = state.threading.write().unwrap(); + let ctx = match create_ctx(module.clone(), memory) { + Ok(c) => c, + Err(err) => { + return err; + } + }; + guard.thread_ctx.insert(caller_id, Arc::new(ctx)); + } + } }; - let child: __wasi_tid_t = child.into(); - wasi_try_mem!(ret_tid.write(&memory, child)); + // If we are a reactor then instead of launching the thread now + // we store it in the state machine and only launch it whenever + // work arrives that needs to be processed + match reactor { + __WASI_BOOL_TRUE => { + warn!("thread failed - reactors are not currently supported"); + return __WASI_ENOTCAPABLE; + }, + __WASI_BOOL_FALSE => { + // If the process does not export a thread spawn function then obviously + // we can't spawn a background thread + if env.inner().thread_spawn.is_none() { + warn!("thread failed - the program does not export a _start_thread function"); + return __WASI_ENOTCAPABLE; + } + + // Now spawn a thread + trace!("threading: spawning background thread"); + let thread_module = env.inner().module.clone(); + wasi_try!(runtime + .thread_spawn(Box::new(move |module: Module, thread_memory: VMMemory| { + let mut thread_memory = Some(thread_memory); + execute_module(module, &mut thread_memory); + }), thread_module, thread_memory) + .map_err(|err| { + let err: __wasi_errno_t = err.into(); + err + })); + }, + _ => { + warn!("thread failed - invalid reactor parameter value"); + return __WASI_ENOTCAPABLE; + } + } + + // Success + let memory = ctx.data().memory_view(&ctx); + wasi_try_mem!(ret_tid.write(&memory, thread_id)); + __WASI_ESUCCESS +} + +/// ### `thread_local_create()` +/// Create a thread local variable +/// If The web assembly process exports function named '_thread_local_destroy' +/// then it will be invoked when the thread goes out of scope and dies. +/// +/// ## Parameters +/// +/// * `user_data` - User data that will be passed to the destructor +/// when the thread variable goes out of scope +pub fn thread_local_create( + ctx: FunctionEnvMut<'_, WasiEnv>, + user_data: u64, + ret_key: WasmPtr<__wasi_tl_key_t, M>, +) -> __wasi_errno_t { + trace!("wasi::thread_local_create (user_data={})", user_data); + let env = ctx.data(); + + let key = { + let mut guard = env.state.threading.write().unwrap(); + guard.thread_local_seed += 1; + let key = guard.thread_local_seed; + guard.thread_local_user_data.insert(key, user_data); + key + }; + + let memory = env.memory_view(&ctx); + wasi_try_mem!(ret_key.write(&memory, key)); + __WASI_ESUCCESS +} + +/// ### `thread_local_destroy()` +/// Destroys a thread local variable +/// +/// ## Parameters +/// +/// * `user_data` - User data that will be passed to the destructor +/// when the thread variable goes out of scope +/// * `key` - Thread key that was previously created +pub fn thread_local_destroy( + mut ctx: FunctionEnvMut<'_, WasiEnv>, + key: __wasi_tl_key_t +) -> __wasi_errno_t { + trace!("wasi::thread_local_destroy (key={})", key); + let state = ctx.data().state.clone(); + let mut guard = state.threading.write().unwrap(); + if let Some(user_data) = guard.thread_local_user_data.remove(&key) { + if let Some(thread_local_destroy) = ctx.data().inner().thread_local_destroy.as_ref().map(|a| a.clone()) { + guard.thread_local + .iter() + .filter(|((_, k), _)| *k == key) + .for_each(|((_, _), val)| { + let _ = thread_local_destroy.call(&mut ctx, user_data as i64, *val as i64); + }); + } + } + guard.thread_local.retain(|(_, k), _| *k != key); + __WASI_ESUCCESS +} + +/// ### `thread_local_set()` +/// Sets the value of a thread local variable +/// +/// ## Parameters +/// +/// * `key` - Thread key that this local variable will be associated with +/// * `val` - Value to be set for the thread local variable +pub fn thread_local_set( + ctx: FunctionEnvMut<'_, WasiEnv>, + key: __wasi_tl_key_t, + val: __wasi_tl_val_t +) -> __wasi_errno_t { + //trace!("wasi::thread_local_set (key={}, val={})", key, val); + let env = ctx.data(); + + let current_thread = ctx.data().id; + let mut guard = env.state.threading.write().unwrap(); + guard.thread_local.insert((current_thread, key), val); + __WASI_ESUCCESS +} + +/// ### `thread_local_get()` +/// Gets the value of a thread local variable +/// +/// ## Parameters +/// +/// * `key` - Thread key that this local variable that was previous set +pub fn thread_local_get( + ctx: FunctionEnvMut<'_, WasiEnv>, + key: __wasi_tl_key_t, + ret_val: WasmPtr<__wasi_tl_val_t, M>, +) -> __wasi_errno_t { + //trace!("wasi::thread_local_get (key={})", key); + let env = ctx.data(); + + let val = { + let current_thread = ctx.data().id; + let guard = env.state.threading.read().unwrap(); + guard.thread_local.get(&(current_thread, key)).map(|a| a.clone()) + }; + let val = val.unwrap_or_default(); + let memory = env.memory_view(&ctx); + wasi_try_mem!(ret_val.write(&memory, val)); __WASI_ESUCCESS } @@ -3584,7 +3841,7 @@ pub fn thread_sleep( ctx: FunctionEnvMut<'_, WasiEnv>, duration: __wasi_timestamp_t, ) -> Result<__wasi_errno_t, WasiError> { - debug!("wasi::thread_sleep"); + //trace!("wasi::thread_sleep"); let env = ctx.data(); let duration = Duration::from_nanos(duration as u64); @@ -3599,7 +3856,7 @@ pub fn thread_id( ctx: FunctionEnvMut<'_, WasiEnv>, ret_tid: WasmPtr<__wasi_tid_t, M>, ) -> __wasi_errno_t { - debug!("wasi::thread_id"); + //trace!("wasi::thread_id"); let env = ctx.data(); let tid: __wasi_tid_t = env.id.into(); @@ -3624,15 +3881,15 @@ pub fn thread_join( let env = ctx.data(); let tid: WasiThreadId = tid.into(); let other_thread = { - let guard = env.state.threading.lock().unwrap(); - guard.threads.get(&tid).cloned() + let guard = env.state.threading.read().unwrap(); + guard.get(&tid) }; if let Some(other_thread) = other_thread { loop { - if other_thread.join(Duration::from_millis(5)) { + env.yield_now()?; + if other_thread.join(Duration::from_millis(50)) { break; } - env.yield_now()?; } Ok(__WASI_ESUCCESS) } else { @@ -3660,6 +3917,161 @@ pub fn thread_parallelism( __WASI_ESUCCESS } +/// Wait for a futex_wake operation to wake us. +/// Returns with EINVAL if the futex doesn't hold the expected value. +/// Returns false on timeout, and true in all other cases. +/// +/// ## Parameters +/// +/// * `futex` - Memory location that holds the value that will be checked +/// * `expected` - Expected value that should be currently held at the memory location +/// * `timeout` - Timeout should the futex not be triggered in the allocated time +pub fn futex_wait( + ctx: FunctionEnvMut<'_, WasiEnv>, + futex_ptr: WasmPtr, + expected: u32, + timeout: WasmPtr<__wasi_option_timestamp_t, M>, + ret_woken: WasmPtr<__wasi_bool_t, M>, +) -> Result<__wasi_errno_t, WasiError> { + trace!("wasi::futex_wait(offset={})", futex_ptr.offset()); + let env = ctx.data(); + let state = env.state.deref(); + + let pointer: u64 = wasi_try_ok!(futex_ptr.offset().try_into().map_err(|_| __WASI_EOVERFLOW)); + + // Register the waiting futex + let futex = { + use std::collections::hash_map::Entry; + let mut guard = state.futexs.lock().unwrap(); + match guard.entry(pointer) { + Entry::Occupied(entry) => { + entry.get().clone() + }, + Entry::Vacant(entry) => { + let futex = WasiFutex { + refcnt: Arc::new(AtomicU32::new(1)), + inner: Arc::new((Mutex::new(()), Condvar::new())) + }; + entry.insert(futex.clone()); + futex + } + } + }; + + // Loop until we either hit a yield error or the futex is woken + let mut yielded = Ok(()); + loop { + let futex_lock = futex.inner.0.lock().unwrap(); + + // If the value of the memory is no longer the expected value + // then terminate from the loop (we do this under a futex lock + // so that its protected) + { + let view = env.memory_view(&ctx); + let val = wasi_try_mem_ok!(futex_ptr.read(&view)); + if val != expected { + break; + } + } + + let result = futex.inner.1.wait_timeout(futex_lock, Duration::from_millis(50)).unwrap(); + if result.1.timed_out() { + yielded = env.yield_now(); + if yielded.is_err() { + break; + } + } else { + break; + } + } + + // Drop the reference count to the futex (and remove it if the refcnt hits zero) + { + let mut guard = state.futexs.lock().unwrap(); + if guard.get(&pointer) + .map(|futex| futex.refcnt.fetch_sub(1, Ordering::AcqRel) == 1) + .unwrap_or(false) + { + guard.remove(&pointer); + } + } + + // We may have a yield error (such as a terminate) + yielded?; + + Ok(__WASI_ESUCCESS) +} + +/// Wake up one thread that's blocked on futex_wait on this futex. +/// Returns true if this actually woke up such a thread, +/// or false if no thread was waiting on this futex. +/// +/// ## Parameters +/// +/// * `futex` - Memory location that holds a futex that others may be waiting on +pub fn futex_wake( + ctx: FunctionEnvMut<'_, WasiEnv>, + futex: WasmPtr, + ret_woken: WasmPtr<__wasi_bool_t, M>, +) -> __wasi_errno_t { + trace!("wasi::futex_wake(offset={})", futex.offset()); + let env = ctx.data(); + let memory = env.memory_view(&ctx); + let state = env.state.deref(); + + let pointer: u64 = wasi_try!(futex.offset().try_into().map_err(|_| __WASI_EOVERFLOW)); + let mut woken = false; + + let mut guard = state.futexs.lock().unwrap(); + if let Some(futex) = guard.get(&pointer) { + futex.inner.1.notify_one(); + woken = true; + } else { + trace!("wasi::futex_wake - nothing waiting!"); + } + + let woken = match woken { + false => __WASI_BOOL_FALSE, + true => __WASI_BOOL_TRUE, + }; + wasi_try_mem!(ret_woken.write(&memory, woken)); + + __WASI_ESUCCESS +} + +/// Wake up all threads that are waiting on futex_wait on this futex. +/// +/// ## Parameters +/// +/// * `futex` - Memory location that holds a futex that others may be waiting on +pub fn futex_wake_all( + ctx: FunctionEnvMut<'_, WasiEnv>, + futex: WasmPtr, + ret_woken: WasmPtr<__wasi_bool_t, M>, +) -> __wasi_errno_t { + trace!("wasi::futex_wake_all(offset={})", futex.offset()); + let env = ctx.data(); + let memory = env.memory_view(&ctx); + let state = env.state.deref(); + + let pointer: u64 = wasi_try!(futex.offset().try_into().map_err(|_| __WASI_EOVERFLOW)); + let mut woken = false; + + let mut guard = state.futexs.lock().unwrap(); + if let Some(futex) = guard.remove(&pointer) { + futex.inner.1.notify_all(); + woken = true; + } + + let woken = match woken { + false => __WASI_BOOL_FALSE, + true => __WASI_BOOL_TRUE, + }; + wasi_try_mem!(ret_woken.write(&memory, woken)); + + __WASI_ESUCCESS +} + /// ### `getpid()` /// Returns the handle of the current process pub fn getpid( @@ -3752,10 +4164,10 @@ pub fn process_spawn( __WASI_STDIO_MODE_PIPED => StdioMode::Piped, __WASI_STDIO_MODE_INHERIT => StdioMode::Inherit, __WASI_STDIO_MODE_LOG => StdioMode::Log, - /*__WASI_STDIO_MODE_NULL |*/ _ => StdioMode::Null, + __WASI_STDIO_MODE_NULL | _ => StdioMode::Null, }; - let process = wasi_try_bus!(bus + let mut process = wasi_try_bus!(bus .new_spawn() .chroot(chroot) .args(args) @@ -3767,7 +4179,54 @@ pub fn process_spawn( .spawn(name.as_str()) .map_err(bus_error_into_wasi_err)); - let conv_stdio_fd = |a: Option| match a { + // Create the file descriptors used to access this process + let (fd_stdin, fd_stdout, fd_stderr) = { + let (memory, state, mut inodes) = env.get_memory_and_wasi_state_and_inodes_mut(&ctx, 0); + + // Register the inodes for the stdio for this sub process + let fd_stdin = match process.stdin.take() { + Some(handle) => Some( + wasi_try_bus!(state.fs.create_fd(bus_write_rights(), bus_write_rights(), 0, 0, + state.fs.create_inode_with_default_stat( + inodes.deref_mut(), + Kind::File { handle: Some(handle), path: "/dev/stdin".into(), fd: None }, + false, + "stdin".into(), + ) + ).map_err(|_| __BUS_EINTERNAL)) + ), + None => None, + }; + let fd_stdout = match process.stdout.take() { + Some(handle) => Some( + wasi_try_bus!(state.fs.create_fd(bus_read_rights(), bus_read_rights(), 0, 0, + state.fs.create_inode_with_default_stat( + inodes.deref_mut(), + Kind::File { handle: Some(handle), path: "/dev/stdout".into(), fd: None }, + false, + "stdout".into(), + ) + ).map_err(|_| __BUS_EINTERNAL)) + ), + None => None + }; + let fd_stderr = match process.stderr.take() { + Some(handle) => Some( + wasi_try_bus!(state.fs.create_fd(bus_read_rights(), bus_read_rights(), 0, 0, + state.fs.create_inode_with_default_stat( + inodes.deref_mut(), + Kind::File { handle: Some(handle), path: "/dev/stderr".into(), fd: None }, + false, + "stderr".into(), + ) + ).map_err(|_| __BUS_EINTERNAL)) + ), + None => None + }; + (fd_stdin, fd_stdout, fd_stderr) + }; + + let conv_stdio_fd = |a: Option<__wasi_fd_t>| match a { Some(fd) => __wasi_option_fd_t { tag: __WASI_OPTION_SOME, fd: fd.into(), @@ -3777,18 +4236,18 @@ pub fn process_spawn( fd: 0, }, }; - + // Convert the stdio - let stdin = conv_stdio_fd(process.inst.stdin_fd()); - let stdout = conv_stdio_fd(process.inst.stdout_fd()); - let stderr = conv_stdio_fd(process.inst.stderr_fd()); + let stdin = conv_stdio_fd(fd_stdin); + let stdout = conv_stdio_fd(fd_stdout); + let stderr = conv_stdio_fd(fd_stderr); // Add the process to the environment state let bid = { - let mut guard = env.state.threading.lock().unwrap(); + let mut guard = env.state.threading.write().unwrap(); guard.process_seed += 1; let bid = guard.process_seed; - guard.processes.insert(bid.into(), process); + guard.processes.insert(bid.into(), Box::new(process)); bid }; @@ -3822,15 +4281,15 @@ pub fn bus_open_local( name_len: M::Offset, reuse: __wasi_bool_t, ret_bid: WasmPtr<__wasi_bid_t, M>, -) -> __bus_errno_t { +) -> Result<__bus_errno_t, WasiError> { let env = ctx.data(); let bus = env.runtime.bus(); let memory = env.memory_view(&ctx); - let name = unsafe { get_input_str_bus!(&memory, name, name_len) }; + let name = unsafe { get_input_str_bus_ok!(&memory, name, name_len) }; let reuse = reuse == __WASI_BOOL_TRUE; debug!("wasi::bus_open_local (name={}, reuse={})", name, reuse); - bus_open_local_internal(ctx, name, reuse, None, None, ret_bid) + bus_open_internal(ctx, name, reuse, None, None, ret_bid) } /// Spawns a new bus process for a particular web WebAssembly @@ -3857,30 +4316,30 @@ pub fn bus_open_remote( token: WasmPtr, token_len: M::Offset, ret_bid: WasmPtr<__wasi_bid_t, M>, -) -> __bus_errno_t { +) -> Result<__bus_errno_t, WasiError> { let env = ctx.data(); let bus = env.runtime.bus(); let memory = env.memory_view(&ctx); - let name = unsafe { get_input_str_bus!(&memory, name, name_len) }; - let instance = unsafe { get_input_str_bus!(&memory, instance, instance_len) }; - let token = unsafe { get_input_str_bus!(&memory, token, token_len) }; + let name = unsafe { get_input_str_bus_ok!(&memory, name, name_len) }; + let instance = unsafe { get_input_str_bus_ok!(&memory, instance, instance_len) }; + let token = unsafe { get_input_str_bus_ok!(&memory, token, token_len) }; let reuse = reuse == __WASI_BOOL_TRUE; debug!( "wasi::bus_open_remote (name={}, reuse={}, instance={})", name, reuse, instance ); - bus_open_local_internal(ctx, name, reuse, Some(instance), Some(token), ret_bid) + bus_open_internal(ctx, name, reuse, Some(instance), Some(token), ret_bid) } -fn bus_open_local_internal( +fn bus_open_internal( ctx: FunctionEnvMut<'_, WasiEnv>, name: String, reuse: bool, instance: Option, token: Option, ret_bid: WasmPtr<__wasi_bid_t, M>, -) -> __bus_errno_t { +) -> Result<__bus_errno_t, WasiError> { let env = ctx.data(); let bus = env.runtime.bus(); let memory = env.memory_view(&ctx); @@ -3888,11 +4347,11 @@ fn bus_open_local_internal( // Check if it already exists if reuse { - let guard = env.state.threading.lock().unwrap(); + let guard = env.state.threading.read().unwrap(); if let Some(bid) = guard.process_reuse.get(&name) { if guard.processes.contains_key(bid) { - wasi_try_mem_bus!(ret_bid.write(&memory, (*bid).into())); - return __BUS_ESUCCESS; + wasi_try_mem_bus_ok!(ret_bid.write(&memory, bid.clone().into())); + return Ok(__BUS_ESUCCESS); } } } @@ -3912,23 +4371,24 @@ fn bus_open_local_internal( process.access_token(token); } - let process = wasi_try_bus!(process + // Spawn the process + let mut process = wasi_try_bus_ok!(process .spawn(name.as_ref()) .map_err(bus_error_into_wasi_err)); // Add the process to the environment state let bid = { - let mut guard = env.state.threading.lock().unwrap(); + let mut guard = env.state.threading.write().unwrap(); guard.process_seed += 1; let bid: WasiBusProcessId = guard.process_seed.into(); - guard.processes.insert(bid, process); + guard.processes.insert(bid, Box::new(process)); guard.process_reuse.insert(name, bid); bid }; - wasi_try_mem_bus!(ret_bid.write(&memory, bid.into())); + wasi_try_mem_bus_ok!(ret_bid.write(&memory, bid.into())); - __BUS_ESUCCESS + Ok(__BUS_ESUCCESS) } /// Closes a bus process and releases all associated resources @@ -3941,10 +4401,13 @@ pub fn bus_close(ctx: FunctionEnvMut<'_, WasiEnv>, bid: __wasi_bid_t) -> __bus_e let bid: WasiBusProcessId = bid.into(); let env = ctx.data(); - let mut guard = env.state.threading.lock().unwrap(); - guard.processes.remove(&bid); + let mut guard = env.state.threading.write().unwrap(); + if let Some(process) = guard.processes.remove(&bid) { + let name: Cow<'static, str> = process.name.clone().into(); + guard.process_reuse.remove(&name); + } - __BUS_EUNSUPPORTED + __BUS_ESUCCESS } /// Invokes a call within a running bus process. @@ -3961,27 +4424,102 @@ pub fn bus_close(ctx: FunctionEnvMut<'_, WasiEnv>, bid: __wasi_bid_t) -> __bus_e pub fn bus_call( ctx: FunctionEnvMut<'_, WasiEnv>, bid: __wasi_bid_t, - keep_alive: __wasi_bool_t, - topic: WasmPtr, - topic_len: M::Offset, + topic_hash: WasmPtr<__wasi_hash_t>, format: __wasi_busdataformat_t, buf: WasmPtr, buf_len: M::Offset, ret_cid: WasmPtr<__wasi_cid_t, M>, -) -> __bus_errno_t { +) -> Result<__bus_errno_t, WasiError> { let env = ctx.data(); let bus = env.runtime.bus(); let memory = env.memory_view(&ctx); - let topic = unsafe { get_input_str_bus!(&memory, topic, topic_len) }; - let keep_alive = keep_alive == __WASI_BOOL_TRUE; + let topic_hash = wasi_try_mem_bus_ok!(topic_hash.read(&memory)); + let buf_slice = wasi_try_mem_bus_ok!(buf.slice(&memory, buf_len)); trace!( - "wasi::bus_call (bid={}, topic={}, buf_len={})", + "wasi::bus_call (bid={}, buf_len={})", bid, - topic, buf_len ); - __BUS_EUNSUPPORTED + // Get the process that we'll invoke this call for + let mut guard = env.state.threading.read().unwrap(); + let bid: WasiBusProcessId = bid.into(); + let process = if let Some(process) = { + guard.processes.get(&bid).map(|p| p.clone()) + } { process } else { + return Ok(__BUS_EBADHANDLE); + }; + + // Invoke the bus process + let format = wasi_try_bus_ok!(conv_bus_format_from(format)); + + // Check if the process has finished + if let Some(code) = process.inst.exit_code() { + debug!("process has already exited (code = {})", code); + return Ok(__BUS_EABORTED); + } + + // Invoke the call + let buf = wasi_try_mem_bus_ok!(buf_slice.read_to_vec()); + let mut invoked = process.inst.invoke(topic_hash, format, buf); + drop(process); + drop(guard); + + // Poll the invocation until it does its thing + let mut invocation; + { + // Fast path (does not have to create a futex creation) + let waker = WasiDummyWaker.into_waker(); + let mut cx = Context::from_waker(&waker); + let pinned_invoked = Pin::new(invoked.deref_mut()); + match pinned_invoked.poll_invoked(&mut cx) { + Poll::Ready(i) => { + invocation = wasi_try_bus_ok!(i + .map_err(bus_error_into_wasi_err)); + }, + Poll::Pending => { + // Slow path (will put the thread to sleep) + let parking = WasiParkingLot::default(); + let waker = parking.get_waker(); + let mut cx = Context::from_waker(&waker); + loop { + let pinned_invoked = Pin::new(invoked.deref_mut()); + match pinned_invoked.poll_invoked(&mut cx) { + Poll::Ready(i) => { + invocation = wasi_try_bus_ok!(i + .map_err(bus_error_into_wasi_err)); + break; + }, + Poll::Pending => { + env.yield_now()?; + parking.wait(Duration::from_millis(5)); + } + } + } + } + } + } + + // Record the invocation + let cid = { + let mut guard = env.state.bus.protected(); + guard.call_seed += 1; + let cid = guard.call_seed; + guard.calls.insert(cid, WasiBusCall { + bid, + invocation + }); + cid + }; + + // Now we wake any BUS pollers so that they can drive forward the + // call to completion - when they poll the call they will also + // register a BUS waker + env.state.bus.poll_wake(); + + // Return the CID and success to the caller + wasi_try_mem_bus_ok!(ret_cid.write(&memory, cid)); + Ok(__BUS_ESUCCESS) } /// Invokes a call within the context of another call @@ -3998,27 +4536,121 @@ pub fn bus_call( pub fn bus_subcall( ctx: FunctionEnvMut<'_, WasiEnv>, parent: __wasi_cid_t, - keep_alive: __wasi_bool_t, - topic: WasmPtr, - topic_len: M::Offset, + topic_hash: WasmPtr<__wasi_hash_t>, format: __wasi_busdataformat_t, buf: WasmPtr, buf_len: M::Offset, ret_cid: WasmPtr<__wasi_cid_t, M>, -) -> __bus_errno_t { +) -> Result<__bus_errno_t, WasiError> { let env = ctx.data(); let bus = env.runtime.bus(); let memory = env.memory_view(&ctx); - let topic = unsafe { get_input_str_bus!(&memory, topic, topic_len) }; - let keep_alive = keep_alive == __WASI_BOOL_TRUE; + let topic_hash = wasi_try_mem_bus_ok!(topic_hash.read(&memory)); + let buf_slice = wasi_try_mem_bus_ok!(buf.slice(&memory, buf_len)); trace!( - "wasi::bus_subcall (parent={}, topic={}, buf_len={})", + "wasi::bus_subcall (parent={}, buf_len={})", parent, - topic, buf_len ); - __BUS_EUNSUPPORTED + let format = wasi_try_bus_ok!(conv_bus_format_from(format)); + let buf = wasi_try_mem_bus_ok!(buf_slice.read_to_vec()); + + // Get the parent call that we'll invoke this call for + let mut guard = env.state.bus.protected(); + if let Some(parent) = guard.calls.get(&parent) + { + let bid = parent.bid.clone(); + + // Invoke the sub-call in the existing parent call + let mut invoked = parent.invocation.invoke(topic_hash, format, buf); + drop(parent); + drop(guard); + + // Poll the invocation until it does its thing + let invocation; + { + // Fast path (does not have to create a futex creation) + let waker = WasiDummyWaker.into_waker(); + let mut cx = Context::from_waker(&waker); + let pinned_invoked = Pin::new(invoked.deref_mut()); + match pinned_invoked.poll_invoked(&mut cx) { + Poll::Ready(i) => { + invocation = wasi_try_bus_ok!(i + .map_err(bus_error_into_wasi_err)); + }, + Poll::Pending => { + // Slow path (will put the thread to sleep) + let parking = WasiParkingLot::default(); + let waker = parking.get_waker(); + let mut cx = Context::from_waker(&waker); + loop { + let pinned_invoked = Pin::new(invoked.deref_mut()); + match pinned_invoked.poll_invoked(&mut cx) { + Poll::Ready(i) => { + invocation = wasi_try_bus_ok!(i + .map_err(bus_error_into_wasi_err)); + break; + }, + Poll::Pending => { + env.yield_now()?; + parking.wait(Duration::from_millis(5)); + } + } + } + } + } + } + + // Add the call and return the ID + let cid = { + let mut guard = env.state.bus.protected(); + guard.call_seed += 1; + let cid = guard.call_seed; + guard.calls.insert(cid, WasiBusCall { + bid, + invocation + }); + cid + }; + + // Now we wake any BUS pollers so that they can drive forward the + // call to completion - when they poll the call they will also + // register a BUS waker + env.state.bus.poll_wake(); + + // Return the CID and success to the caller + wasi_try_mem_bus_ok!(ret_cid.write(&memory, cid)); + Ok(__BUS_ESUCCESS) + } else { + Ok(__BUS_EBADHANDLE) + } +} + +// Function for converting the format +fn conv_bus_format(format: BusDataFormat) -> __wasi_busdataformat_t { + match format { + BusDataFormat::Raw => __WASI_BUS_DATA_FORMAT_RAW, + BusDataFormat::Bincode => __WASI_BUS_DATA_FORMAT_BINCODE, + BusDataFormat::MessagePack => __WASI_BUS_DATA_FORMAT_MESSAGE_PACK, + BusDataFormat::Json => __WASI_BUS_DATA_FORMAT_JSON, + BusDataFormat::Yaml => __WASI_BUS_DATA_FORMAT_YAML, + BusDataFormat::Xml => __WASI_BUS_DATA_FORMAT_XML, + } +} + +fn conv_bus_format_from(format: __wasi_busdataformat_t) -> Result { + Ok( + match format { + __WASI_BUS_DATA_FORMAT_RAW => BusDataFormat::Raw, + __WASI_BUS_DATA_FORMAT_BINCODE => BusDataFormat::Bincode, + __WASI_BUS_DATA_FORMAT_MESSAGE_PACK => BusDataFormat::MessagePack, + __WASI_BUS_DATA_FORMAT_JSON => BusDataFormat::Json, + __WASI_BUS_DATA_FORMAT_YAML => BusDataFormat::Yaml, + __WASI_BUS_DATA_FORMAT_XML => BusDataFormat::Xml, + _ => { return Err(__BUS_EDES); } + } + ) } /// Polls for any outstanding events from a particular @@ -4038,19 +4670,346 @@ pub fn bus_subcall( pub fn bus_poll( ctx: FunctionEnvMut<'_, WasiEnv>, timeout: __wasi_timestamp_t, - events: WasmPtr, - nevents: M::Offset, - malloc: WasmPtr, - malloc_len: M::Offset, + events: WasmPtr<__wasi_busevent_t, M>, + maxevents: M::Offset, ret_nevents: WasmPtr, -) -> __bus_errno_t { +) -> Result<__bus_errno_t, WasiError> { let env = ctx.data(); let bus = env.runtime.bus(); let memory = env.memory_view(&ctx); - let malloc = unsafe { get_input_str_bus!(&memory, malloc, malloc_len) }; - trace!("wasi::bus_poll (timeout={}, malloc={})", timeout, malloc); + //trace!("wasi::bus_poll (timeout={})", timeout); + + // Lets start by processing events for calls that are already running + let mut nevents = M::ZERO; + let events = wasi_try_mem_bus_ok!(events.slice(&memory, maxevents)); + + let state = env.state.clone(); + let start = platform_clock_time_get(__WASI_CLOCK_MONOTONIC, 1_000_000).unwrap() as u128; + loop + { + // The waker will wake this thread should any work arrive + // or need further processing (i.e. async operation) + let waker = state.bus.get_poll_waker(); + let mut cx = Context::from_waker(&waker); + + // Check if any of the processes have closed + let mut exited_bids = HashSet::new(); + { + let mut guard = env.state.threading.write().unwrap(); + for (pid, process) in guard.processes.iter_mut() { + let pinned_process = Pin::new(process.inst.as_mut()); + if pinned_process.poll_finished(&mut cx) == Poll::Ready(()) { + exited_bids.insert(*pid); + } + } + for pid in exited_bids.iter() { + guard.processes.remove(pid); + } + } + + { + // The waker will trigger the reactors when work arrives from the BUS + let mut guard = env.state.bus.protected(); + + // Function that hashes the topic using SHA256 + let hash_topic = |topic: Cow<'static, str>| -> __wasi_hash_t { + use sha2::{Sha256, Digest}; + let mut hasher = Sha256::new(); + hasher.update(&topic.bytes().collect::>()); + let hash: [u8; 16] = hasher.finalize()[..16].try_into().unwrap(); + u128::from_le_bytes(hash) + }; + + // Function that turns a buffer into a readable file handle + let buf_to_fd = { + let state = env.state.clone(); + let inodes = state.inodes.clone(); + move |data: Vec| -> __wasi_fd_t { + let mut inodes = inodes.write().unwrap(); + let inode = state.fs.create_inode_with_default_stat( + inodes.deref_mut(), + Kind::Buffer { buffer: data }, + false, + "bus".into(), + ); + let rights = super::state::bus_read_rights(); + wasi_try_bus!(state.fs.create_fd(rights, rights, 0, 0, inode) + .map_err(|err| { + debug!("failed to create file descriptor for BUS event buffer - {}", err); + __BUS_EALLOC + })) + } + }; + + // Grab all the events we can from all the existing calls up to the limit of + // maximum events that the user requested + if nevents < maxevents { + let mut drop_calls = Vec::new(); + let mut call_seed = guard.call_seed; + for (key, call) in guard.calls.iter_mut() { + let cid: __wasi_cid_t = (*key).into(); + + if nevents >= maxevents { + break; + } + + // If the process that is hosting the call is finished then so is the call + if exited_bids.contains(&call.bid) { + drop_calls.push(*key); + trace!("wasi::bus_poll (aborted, cid={})", cid); + let evt = unsafe { + std::mem::transmute(__wasi_busevent_t2 { + tag: __WASI_BUS_EVENT_TYPE_FAULT, + u: __wasi_busevent_u { + fault: __wasi_busevent_fault_t { + cid, + err: __BUS_EABORTED + } + } + }) + }; + + let nevents64: u64 = wasi_try_bus_ok!(nevents.try_into().map_err(|_| __BUS_EINTERNAL)); + wasi_try_mem_bus_ok!(events.write(nevents64, evt)); + + nevents += M::ONE; + continue; + } + + // Otherwise lets poll for events + while nevents < maxevents { + let mut finished = false; + let call = Pin::new(call.invocation.as_mut()); + match call.poll_event(&mut cx) { + Poll::Ready(evt) => + { + let evt = match evt { + BusInvocationEvent::Callback { topic_hash, format, data } => { + let sub_cid = { + call_seed += 1; + call_seed + }; + + trace!("wasi::bus_poll (callback, parent={}, cid={}, topic={})", cid, sub_cid, topic_hash); + __wasi_busevent_t2 { + tag: __WASI_BUS_EVENT_TYPE_CALL, + u: __wasi_busevent_u { + call: __wasi_busevent_call_t { + parent: __wasi_option_cid_t { + tag: __WASI_OPTION_SOME, + cid, + }, + cid: sub_cid, + format: conv_bus_format(format), + topic_hash, + fd: buf_to_fd(data), + } + } + } + }, + BusInvocationEvent::Response { format, data } => { + drop_calls.push(*key); + finished = true; + + trace!("wasi::bus_poll (response, cid={}, len={})", cid, data.len()); + __wasi_busevent_t2 { + tag: __WASI_BUS_EVENT_TYPE_RESULT, + u: __wasi_busevent_u { + result: __wasi_busevent_result_t { + format: conv_bus_format(format), + cid, + fd: buf_to_fd(data), + } + } + } + }, + BusInvocationEvent::Fault { fault } => { + drop_calls.push(*key); + finished = true; + + trace!("wasi::bus_poll (fault, cid={}, err={})", cid, fault); + __wasi_busevent_t2 { + tag: __WASI_BUS_EVENT_TYPE_FAULT, + u: __wasi_busevent_u { + fault: __wasi_busevent_fault_t { + cid, + err: bus_error_into_wasi_err(fault) + } + } + } + } + }; + let evt = unsafe { + std::mem::transmute(evt) + }; + + let nevents64: u64 = wasi_try_bus_ok!(nevents.try_into().map_err(|_| __BUS_EINTERNAL)); + wasi_try_mem_bus_ok!(events.write(nevents64, evt)); + + nevents += M::ONE; + + if finished { + break; + } + }, + Poll::Pending => { break; } + } + } + } + guard.call_seed = call_seed; + + // Drop any calls that are no longer in scope + if drop_calls.is_empty() == false { + for key in drop_calls { + guard.calls.remove(&key); + } + } + } + + if nevents < maxevents { + let mut call_seed = guard.call_seed; + let mut to_add = Vec::new(); + for (key, call) in guard.called.iter_mut() { + let cid: __wasi_cid_t = (*key).into(); + while nevents < maxevents { + let call = Pin::new(call.deref_mut()); + match call.poll(&mut cx) { + Poll::Ready(event) => { + // Register the call + let sub_cid = { + call_seed += 1; + to_add.push((call_seed, event.called)); + call_seed + }; + + let event = __wasi_busevent_t2 { + tag: __WASI_BUS_EVENT_TYPE_CALL, + u: __wasi_busevent_u { + call: __wasi_busevent_call_t { + parent: __wasi_option_cid_t { + tag: __WASI_OPTION_SOME, + cid, + }, + cid: sub_cid, + format: conv_bus_format(event.format), + topic_hash: event.topic_hash, + fd: buf_to_fd(event.data), + } + } + }; + let event = unsafe { + std::mem::transmute(event) + }; + + let nevents64: u64 = wasi_try_bus_ok!(nevents.try_into().map_err(|_| __BUS_EINTERNAL)); + wasi_try_mem_bus_ok!(events.write(nevents64, event)); + nevents += M::ONE; + }, + Poll::Pending => { break; } + }; + } + if nevents >= maxevents { + break; + } + } + + guard.call_seed = call_seed; + for (cid, called) in to_add { + guard.called.insert(cid, called); + } + } - __BUS_EUNSUPPORTED + while nevents < maxevents + { + // Check the listener (if none exists then one is created) + let event = { + let listener = wasi_try_bus_ok!(env.runtime + .bus() + .listen() + .map_err(bus_error_into_wasi_err)); + let listener = Pin::new(listener.deref()); + listener.poll(&mut cx) + }; + + // Process the event returned by the listener or exit the poll loop + let event = match event { + Poll::Ready(event) => { + + // Register the call + let sub_cid = { + guard.call_seed += 1; + let cid = guard.call_seed; + guard.called.insert(cid, event.called); + cid + }; + + __wasi_busevent_t2 { + tag: __WASI_BUS_EVENT_TYPE_CALL, + u: __wasi_busevent_u { + call: __wasi_busevent_call_t { + parent: __wasi_option_cid_t { + tag: __WASI_OPTION_NONE, + cid: 0, + }, + cid: sub_cid, + format: conv_bus_format(event.format), + topic_hash: event.topic_hash, + fd: buf_to_fd(event.data), + } + } + } + }, + Poll::Pending => { break; } + }; + let event = unsafe { + std::mem::transmute(event) + }; + + let nevents64: u64 = wasi_try_bus_ok!(nevents.try_into().map_err(|_| __BUS_EINTERNAL)); + wasi_try_mem_bus_ok!(events.write(nevents64, event)); + nevents += M::ONE; + } + } + + // If we still have no events + if nevents >= M::ONE { + break; + } + + // Determine the interval we will wake to check things like timeouts + // or the thread terminating + let now = platform_clock_time_get(__WASI_CLOCK_MONOTONIC, 1_000_000).unwrap() as u128; + let delta = match now.checked_sub(start) { + Some(a) => Duration::from_nanos(a as u64), + None => Duration::ZERO, + }; + let interval = Duration::from_millis(5).min(delta); + + // Every 50 milliseconds we check if the thread needs to terminate (20 times a second) + // or for timeout, otherwise the reactor has to be woken + loop { + // Check for timeout (zero will mean the loop will not wait) + let now = platform_clock_time_get(__WASI_CLOCK_MONOTONIC, 1_000_000).unwrap() as u128; + let delta = (now - start) as __wasi_timestamp_t; + if delta >= timeout { + trace!("wasi::bus_poll (timeout)"); + wasi_try_mem_bus_ok!(ret_nevents.write(&memory, nevents)); + return Ok(__BUS_ESUCCESS); + } + + env.yield_now()?; + state.bus.poll_wait(interval); + break; + } + } + if nevents > M::ZERO { + trace!("wasi::bus_poll (return nevents={})", nevents); + } else { + trace!("wasi::bus_poll (idle - no events)"); + } + + wasi_try_mem_bus_ok!(ret_nevents.write(&memory, nevents)); + Ok(__BUS_ESUCCESS) } /// Replies to a call that was made to this process @@ -4071,6 +5030,7 @@ pub fn call_reply( buf_len: M::Offset, ) -> __bus_errno_t { let env = ctx.data(); + let memory = env.memory_view(&ctx); let bus = env.runtime.bus(); trace!( "wasi::call_reply (cid={}, format={}, data_len={})", @@ -4078,8 +5038,19 @@ pub fn call_reply( format, buf_len ); + let buf_slice = wasi_try_mem_bus!(buf.slice(&memory, buf_len)); + let buf = wasi_try_mem_bus!(buf_slice.read_to_vec()); + + let mut guard = env.state.bus.protected(); + if let Some(call) = guard.called.remove(&cid) { + drop(guard); - __BUS_EUNSUPPORTED + let format = wasi_try_bus!(conv_bus_format_from(format)); + call.reply(format, buf); + __BUS_ESUCCESS + } else { + __BUS_EBADHANDLE + } } /// Causes a fault on a particular call that was made @@ -4093,13 +5064,19 @@ pub fn call_reply( pub fn call_fault( ctx: FunctionEnvMut<'_, WasiEnv>, cid: __wasi_cid_t, - fault: __bus_errno_t, -) -> __bus_errno_t { + fault: __bus_errno_t) +{ let env = ctx.data(); let bus = env.runtime.bus(); debug!("wasi::call_fault (cid={}, fault={})", cid, fault); - __BUS_EUNSUPPORTED + let mut guard = env.state.bus.protected(); + guard.calls.remove(&cid); + + if let Some(call) = guard.called.remove(&cid) { + drop(guard); + call.fault(wasi_error_into_bus_err(fault)); + } } /// Closes a bus call based on its bus call handle @@ -4107,12 +5084,17 @@ pub fn call_fault( /// ## Parameters /// /// * `cid` - Handle of the bus call handle to be dropped -pub fn call_close(ctx: FunctionEnvMut<'_, WasiEnv>, cid: __wasi_cid_t) -> __bus_errno_t { +pub fn call_close( + ctx: FunctionEnvMut<'_, WasiEnv>, + cid: __wasi_cid_t +) { let env = ctx.data(); let bus = env.runtime.bus(); trace!("wasi::call_close (cid={})", cid); - __BUS_EUNSUPPORTED + let mut guard = env.state.bus.protected(); + guard.calls.remove(&cid); + guard.called.remove(&cid); } /// ### `ws_connect()` @@ -4151,7 +5133,7 @@ pub fn ws_connect( inodes.deref_mut(), kind, false, - "socket".to_string(), + "socket".into(), ); let rights = super::state::all_socket_rights(); let fd = wasi_try!(state.fs.create_fd(rights, rights, 0, 0, inode)); @@ -4249,19 +5231,19 @@ pub fn http_request( inodes.deref_mut(), kind_req, false, - "http_request".to_string(), + "http_request".into(), ); let inode_res = state.fs.create_inode_with_default_stat( inodes.deref_mut(), kind_res, false, - "http_response".to_string(), + "http_response".into(), ); let inode_hdr = state.fs.create_inode_with_default_stat( inodes.deref_mut(), kind_hdr, false, - "http_headers".to_string(), + "http_headers".into(), ); let rights = super::state::all_socket_rights(); @@ -4571,7 +5553,8 @@ pub fn port_route_list( let max_routes: usize = wasi_try!(wasi_try_mem!(nroutes.read()) .try_into() .map_err(|_| __WASI_EINVAL)); - let ref_routes = wasi_try_mem!(routes.slice(&memory, wasi_try!(to_offset::(max_routes)))); + let ref_routes = + wasi_try_mem!(routes.slice(&memory, wasi_try!(to_offset::(max_routes)))); let routes = wasi_try!(env.net().route_list().map_err(net_error_into_wasi_err)); @@ -4768,7 +5751,7 @@ pub fn sock_open( inodes.deref_mut(), kind, false, - "socket".to_string(), + "socket".into(), ); let rights = super::state::all_socket_rights(); let fd = wasi_try!(state.fs.create_fd(rights, rights, 0, 0, inode)); @@ -5221,7 +6204,7 @@ pub fn sock_accept( inodes.deref_mut(), kind, false, - "socket".to_string(), + "socket".into(), ); let rights = super::state::all_socket_rights(); @@ -5251,12 +6234,10 @@ pub fn sock_accept( /// * `fd` - Socket descriptor /// * `addr` - Address of the socket to connect to pub fn sock_connect( - ctx: FunctionEnvMut<'_, WasiEnv>, + ctx: FunctionEnvMut, sock: __wasi_fd_t, addr: WasmPtr<__wasi_addr_port_t, M>, ) -> __wasi_errno_t { - debug!("wasi::sock_connect"); - let env = ctx.data(); let memory = env.memory_view(&ctx); let addr = wasi_try!(super::state::read_ip_port(&memory, addr)); @@ -5302,7 +6283,7 @@ pub fn sock_recv( &ctx, sock, __WASI_RIGHT_SOCK_RECV, - |socket| { socket.recv(&memory, iovs_arr) } + |socket| { socket.recv(& memory, iovs_arr) } )); let bytes_read: M::Offset = wasi_try_ok!(bytes_read.try_into().map_err(|_| __WASI_EOVERFLOW)); @@ -5451,8 +6432,8 @@ pub fn sock_send_to( /// ## Return /// /// Number of bytes transmitted. -pub unsafe fn sock_send_file( - mut ctx: FunctionEnvMut<'_, WasiEnv>, +pub fn sock_send_file( + ctx: FunctionEnvMut<'_, WasiEnv>, sock: __wasi_fd_t, in_fd: __wasi_fd_t, offset: __wasi_filesize_t, @@ -5505,8 +6486,7 @@ pub unsafe fn sock_send_file( let bytes_read = { let mut guard = inode.write(); - let deref_mut = guard.deref_mut(); - match deref_mut { + match guard.deref_mut() { Kind::File { handle, .. } => { if let Some(handle) = handle { wasi_try_ok!( diff --git a/lib/wasi/src/syscalls/wasi.rs b/lib/wasi/src/syscalls/wasi.rs deleted file mode 100644 index b2575f6e53c..00000000000 --- a/lib/wasi/src/syscalls/wasi.rs +++ /dev/null @@ -1,450 +0,0 @@ -#![deny(dead_code)] -use crate::{WasiEnv, WasiError, WasiState, WasiThread}; -use wasmer::{StoreMut, Memory, Memory32, MemorySize, WasmPtr, WasmSlice}; -use wasmer_wasi_types::*; - -type MemoryType = Memory32; -type MemoryOffset = u32; - -pub(crate) fn args_get( - ctx: FunctionEnvMut, - argv: WasmPtr, MemoryType>, - argv_buf: WasmPtr, -) -> __wasi_errno_t { - super::args_get::(ctx, argv, argv_buf) -} - -pub(crate) fn args_sizes_get( - ctx: FunctionEnvMut, - argc: WasmPtr, - argv_buf_size: WasmPtr, -) -> __wasi_errno_t { - super::args_sizes_get::(ctx, argc, argv_buf_size) -} - -pub(crate) fn clock_res_get( - ctx: FunctionEnvMut, - clock_id: __wasi_clockid_t, - resolution: WasmPtr<__wasi_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::clock_res_get::(ctx, clock_id, resolution) -} - -pub(crate) fn clock_time_get( - ctx: FunctionEnvMut, - clock_id: __wasi_clockid_t, - precision: __wasi_timestamp_t, - time: WasmPtr<__wasi_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::clock_time_get::(ctx, clock_id, precision, time) -} - -pub(crate) fn environ_get( - ctx: FunctionEnvMut, - environ: WasmPtr, MemoryType>, - environ_buf: WasmPtr, -) -> __wasi_errno_t { - super::environ_get::(ctx, environ, environ_buf) -} - -pub(crate) fn environ_sizes_get( - ctx: FunctionEnvMut, - environ_count: WasmPtr, - environ_buf_size: WasmPtr, -) -> __wasi_errno_t { - super::environ_sizes_get::(ctx, environ_count, environ_buf_size) -} - -pub(crate) fn fd_advise( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filesize_t, - len: __wasi_filesize_t, - advice: __wasi_advice_t, -) -> __wasi_errno_t { - super::fd_advise(ctx, fd, offset, len, advice) -} - -pub(crate) fn fd_allocate( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filesize_t, - len: __wasi_filesize_t, -) -> __wasi_errno_t { - super::fd_allocate(ctx, fd, offset, len) -} - -pub(crate) fn fd_close(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_close(ctx, fd) -} - -pub(crate) fn fd_datasync(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_datasync(ctx, fd) -} - -pub(crate) fn fd_fdstat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf_ptr: WasmPtr<__wasi_fdstat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_fdstat_get::(ctx, fd, buf_ptr) -} - -pub(crate) fn fd_fdstat_set_flags( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_fdflags_t, -) -> __wasi_errno_t { - super::fd_fdstat_set_flags(ctx, fd, flags) -} - -pub(crate) fn fd_fdstat_set_rights( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - fs_rights_base: __wasi_rights_t, - fs_rights_inheriting: __wasi_rights_t, -) -> __wasi_errno_t { - super::fd_fdstat_set_rights(ctx, fd, fs_rights_base, fs_rights_inheriting) -} - -pub(crate) fn fd_filestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr<__wasi_filestat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_filestat_get::(ctx, fd, buf) -} - -pub(crate) fn fd_filestat_set_size( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - st_size: __wasi_filesize_t, -) -> __wasi_errno_t { - super::fd_filestat_set_size(ctx, fd, st_size) -} - -pub(crate) fn fd_filestat_set_times( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - st_atim: __wasi_timestamp_t, - st_mtim: __wasi_timestamp_t, - fst_flags: __wasi_fstflags_t, -) -> __wasi_errno_t { - super::fd_filestat_set_times(ctx, fd, st_atim, st_mtim, fst_flags) -} - -pub(crate) fn fd_pread( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_iovec_t, MemoryType>, - iovs_len: MemoryOffset, - offset: __wasi_filesize_t, - nread: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_pread::(ctx, fd, iovs, iovs_len, offset, nread) -} - -pub(crate) fn fd_prestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr<__wasi_prestat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_prestat_get::(ctx, fd, buf) -} - -pub(crate) fn fd_prestat_dir_name( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::fd_prestat_dir_name::(ctx, fd, path, path_len) -} - -pub(crate) fn fd_pwrite( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_ciovec_t, MemoryType>, - iovs_len: MemoryOffset, - offset: __wasi_filesize_t, - nwritten: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_pwrite::(ctx, fd, iovs, iovs_len, offset, nwritten) -} - -pub(crate) fn fd_read( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_iovec_t, MemoryType>, - iovs_len: MemoryOffset, - nread: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_read::(ctx, fd, iovs, iovs_len, nread) -} - -pub(crate) fn fd_readdir( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr, - buf_len: MemoryOffset, - cookie: __wasi_dircookie_t, - bufused: WasmPtr, -) -> __wasi_errno_t { - super::fd_readdir::(ctx, fd, buf, buf_len, cookie, bufused) -} - -pub(crate) fn fd_renumber( - ctx: FunctionEnvMut, - from: __wasi_fd_t, - to: __wasi_fd_t, -) -> __wasi_errno_t { - super::fd_renumber(ctx, from, to) -} - -pub(crate) fn fd_seek( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filedelta_t, - whence: __wasi_whence_t, - newoffset: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_seek::(ctx, fd, offset, whence, newoffset) -} - -pub(crate) fn fd_sync(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_sync(ctx, fd) -} - -pub(crate) fn fd_tell( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_tell::(ctx, fd, offset) -} - -pub(crate) fn fd_write( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_ciovec_t, MemoryType>, - iovs_len: MemoryOffset, - nwritten: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_write::(ctx, fd, iovs, iovs_len, nwritten) -} - -pub(crate) fn path_create_directory( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_create_directory::(ctx, fd, path, path_len) -} - -pub(crate) fn path_filestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - buf: WasmPtr<__wasi_filestat_t, MemoryType>, -) -> __wasi_errno_t { - super::path_filestat_get::(ctx, fd, flags, path, path_len, buf) -} - -pub(crate) fn path_filestat_set_times( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - st_atim: __wasi_timestamp_t, - st_mtim: __wasi_timestamp_t, - fst_flags: __wasi_fstflags_t, -) -> __wasi_errno_t { - super::path_filestat_set_times::( - ctx, fd, flags, path, path_len, st_atim, st_mtim, fst_flags, - ) -} - -pub(crate) fn path_link( - ctx: FunctionEnvMut, - old_fd: __wasi_fd_t, - old_flags: __wasi_lookupflags_t, - old_path: WasmPtr, - old_path_len: MemoryOffset, - new_fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_link::( - ctx, - old_fd, - old_flags, - old_path, - old_path_len, - new_fd, - new_path, - new_path_len, - ) -} - -pub(crate) fn path_open( - ctx: FunctionEnvMut, - dirfd: __wasi_fd_t, - dirflags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - o_flags: __wasi_oflags_t, - fs_rights_base: __wasi_rights_t, - fs_rights_inheriting: __wasi_rights_t, - fs_flags: __wasi_fdflags_t, - fd: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::path_open::( - ctx, - dirfd, - dirflags, - path, - path_len, - o_flags, - fs_rights_base, - fs_rights_inheriting, - fs_flags, - fd, - ) -} - -pub(crate) fn path_readlink( - ctx: FunctionEnvMut, - dir_fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, - buf: WasmPtr, - buf_len: MemoryOffset, - buf_used: WasmPtr, -) -> __wasi_errno_t { - super::path_readlink::(ctx, dir_fd, path, path_len, buf, buf_len, buf_used) -} - -pub(crate) fn path_remove_directory( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_remove_directory::(ctx, fd, path, path_len) -} - -pub(crate) fn path_rename( - ctx: FunctionEnvMut, - old_fd: __wasi_fd_t, - old_path: WasmPtr, - old_path_len: MemoryOffset, - new_fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_rename::( - ctx, - old_fd, - old_path, - old_path_len, - new_fd, - new_path, - new_path_len, - ) -} - -pub(crate) fn path_symlink( - ctx: FunctionEnvMut, - old_path: WasmPtr, - old_path_len: MemoryOffset, - fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_symlink::(ctx, old_path, old_path_len, fd, new_path, new_path_len) -} - -pub(crate) fn path_unlink_file( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_unlink_file::(ctx, fd, path, path_len) -} - -pub(crate) fn poll_oneoff( - ctx: FunctionEnvMut, - in_: WasmPtr<__wasi_subscription_t, MemoryType>, - out_: WasmPtr<__wasi_event_t, MemoryType>, - nsubscriptions: MemoryOffset, - nevents: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::poll_oneoff::(ctx, in_, out_, nsubscriptions, nevents) -} - -pub(crate) fn proc_exit( - ctx: FunctionEnvMut, - code: __wasi_exitcode_t, -) -> Result<(), WasiError> { - super::proc_exit(ctx, code) -} - -pub(crate) fn proc_raise(ctx: FunctionEnvMut, sig: __wasi_signal_t) -> __wasi_errno_t { - super::proc_raise(ctx, sig) -} - -pub(crate) fn random_get( - ctx: FunctionEnvMut, - buf: WasmPtr, - buf_len: MemoryOffset, -) -> __wasi_errno_t { - super::random_get::(ctx, buf, buf_len) -} - -pub(crate) fn sched_yield(ctx: FunctionEnvMut) -> Result<__wasi_errno_t, WasiError> { - super::sched_yield(ctx) -} - -pub(crate) fn sock_recv( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ri_data: WasmPtr<__wasi_iovec_t, MemoryType>, - ri_data_len: MemoryOffset, - ri_flags: __wasi_riflags_t, - ro_data_len: WasmPtr, - ro_flags: WasmPtr<__wasi_roflags_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_recv::( - ctx, - sock, - ri_data, - ri_data_len, - ri_flags, - ro_data_len, - ro_flags, - ) -} - -pub(crate) fn sock_send( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - si_data: WasmPtr<__wasi_ciovec_t, MemoryType>, - si_data_len: MemoryOffset, - si_flags: __wasi_siflags_t, - ret_data_len: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_send::(ctx, sock, si_data, si_data_len, si_flags, ret_data_len) -} - -pub(crate) fn sock_shutdown( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - how: __wasi_sdflags_t, -) -> __wasi_errno_t { - super::sock_shutdown(ctx, sock, how) -} diff --git a/lib/wasi/src/syscalls/wasix32.rs b/lib/wasi/src/syscalls/wasix32.rs deleted file mode 100644 index 5cb6899c3ef..00000000000 --- a/lib/wasi/src/syscalls/wasix32.rs +++ /dev/null @@ -1,1060 +0,0 @@ -#![deny(dead_code)] -use crate::{WasiEnv, WasiError, WasiState, WasiThread}; -use wasmer::{FunctionEnvMut, Memory, Memory32, MemorySize, StoreMut, WasmPtr, WasmSlice}; -use wasmer_wasi_types::*; - -type MemoryType = Memory32; -type MemoryOffset = u32; - -pub(crate) fn args_get( - ctx: FunctionEnvMut, - argv: WasmPtr, MemoryType>, - argv_buf: WasmPtr, -) -> __wasi_errno_t { - super::args_get::(ctx, argv, argv_buf) -} - -pub(crate) fn args_sizes_get( - ctx: FunctionEnvMut, - argc: WasmPtr, - argv_buf_size: WasmPtr, -) -> __wasi_errno_t { - super::args_sizes_get::(ctx, argc, argv_buf_size) -} - -pub(crate) fn clock_res_get( - ctx: FunctionEnvMut, - clock_id: __wasi_clockid_t, - resolution: WasmPtr<__wasi_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::clock_res_get::(ctx, clock_id, resolution) -} - -pub(crate) fn clock_time_get( - ctx: FunctionEnvMut, - clock_id: __wasi_clockid_t, - precision: __wasi_timestamp_t, - time: WasmPtr<__wasi_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::clock_time_get::(ctx, clock_id, precision, time) -} - -pub(crate) fn environ_get( - ctx: FunctionEnvMut, - environ: WasmPtr, MemoryType>, - environ_buf: WasmPtr, -) -> __wasi_errno_t { - super::environ_get::(ctx, environ, environ_buf) -} - -pub(crate) fn environ_sizes_get( - ctx: FunctionEnvMut, - environ_count: WasmPtr, - environ_buf_size: WasmPtr, -) -> __wasi_errno_t { - super::environ_sizes_get::(ctx, environ_count, environ_buf_size) -} - -pub(crate) fn fd_advise( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filesize_t, - len: __wasi_filesize_t, - advice: __wasi_advice_t, -) -> __wasi_errno_t { - super::fd_advise(ctx, fd, offset, len, advice) -} - -pub(crate) fn fd_allocate( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filesize_t, - len: __wasi_filesize_t, -) -> __wasi_errno_t { - super::fd_allocate(ctx, fd, offset, len) -} - -pub(crate) fn fd_close(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_close(ctx, fd) -} - -pub(crate) fn fd_datasync(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_datasync(ctx, fd) -} - -pub(crate) fn fd_fdstat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf_ptr: WasmPtr<__wasi_fdstat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_fdstat_get::(ctx, fd, buf_ptr) -} - -pub(crate) fn fd_fdstat_set_flags( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_fdflags_t, -) -> __wasi_errno_t { - super::fd_fdstat_set_flags(ctx, fd, flags) -} - -pub(crate) fn fd_fdstat_set_rights( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - fs_rights_base: __wasi_rights_t, - fs_rights_inheriting: __wasi_rights_t, -) -> __wasi_errno_t { - super::fd_fdstat_set_rights(ctx, fd, fs_rights_base, fs_rights_inheriting) -} - -pub(crate) fn fd_filestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr<__wasi_filestat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_filestat_get::(ctx, fd, buf) -} - -pub(crate) fn fd_filestat_set_size( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - st_size: __wasi_filesize_t, -) -> __wasi_errno_t { - super::fd_filestat_set_size(ctx, fd, st_size) -} - -pub(crate) fn fd_filestat_set_times( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - st_atim: __wasi_timestamp_t, - st_mtim: __wasi_timestamp_t, - fst_flags: __wasi_fstflags_t, -) -> __wasi_errno_t { - super::fd_filestat_set_times(ctx, fd, st_atim, st_mtim, fst_flags) -} - -pub(crate) fn fd_pread( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_iovec_t, MemoryType>, - iovs_len: MemoryOffset, - offset: __wasi_filesize_t, - nread: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_pread::(ctx, fd, iovs, iovs_len, offset, nread) -} - -pub(crate) fn fd_prestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr<__wasi_prestat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_prestat_get::(ctx, fd, buf) -} - -pub(crate) fn fd_prestat_dir_name( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::fd_prestat_dir_name::(ctx, fd, path, path_len) -} - -pub(crate) fn fd_pwrite( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_ciovec_t, MemoryType>, - iovs_len: MemoryOffset, - offset: __wasi_filesize_t, - nwritten: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_pwrite::(ctx, fd, iovs, iovs_len, offset, nwritten) -} - -pub(crate) fn fd_read( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_iovec_t, MemoryType>, - iovs_len: MemoryOffset, - nread: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_read::(ctx, fd, iovs, iovs_len, nread) -} - -pub(crate) fn fd_readdir( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr, - buf_len: MemoryOffset, - cookie: __wasi_dircookie_t, - bufused: WasmPtr, -) -> __wasi_errno_t { - super::fd_readdir::(ctx, fd, buf, buf_len, cookie, bufused) -} - -pub(crate) fn fd_renumber( - ctx: FunctionEnvMut, - from: __wasi_fd_t, - to: __wasi_fd_t, -) -> __wasi_errno_t { - super::fd_renumber(ctx, from, to) -} - -pub(crate) fn fd_seek( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filedelta_t, - whence: __wasi_whence_t, - newoffset: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_seek::(ctx, fd, offset, whence, newoffset) -} - -pub(crate) fn fd_sync(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_sync(ctx, fd) -} - -pub(crate) fn fd_tell( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_tell::(ctx, fd, offset) -} - -pub(crate) fn fd_write( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_ciovec_t, MemoryType>, - iovs_len: MemoryOffset, - nwritten: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_write::(ctx, fd, iovs, iovs_len, nwritten) -} - -pub(crate) fn path_create_directory( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_create_directory::(ctx, fd, path, path_len) -} - -pub(crate) fn path_filestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - buf: WasmPtr<__wasi_filestat_t, MemoryType>, -) -> __wasi_errno_t { - super::path_filestat_get::(ctx, fd, flags, path, path_len, buf) -} - -pub(crate) fn path_filestat_set_times( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - st_atim: __wasi_timestamp_t, - st_mtim: __wasi_timestamp_t, - fst_flags: __wasi_fstflags_t, -) -> __wasi_errno_t { - super::path_filestat_set_times::( - ctx, fd, flags, path, path_len, st_atim, st_mtim, fst_flags, - ) -} - -pub(crate) fn path_link( - ctx: FunctionEnvMut, - old_fd: __wasi_fd_t, - old_flags: __wasi_lookupflags_t, - old_path: WasmPtr, - old_path_len: MemoryOffset, - new_fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_link::( - ctx, - old_fd, - old_flags, - old_path, - old_path_len, - new_fd, - new_path, - new_path_len, - ) -} - -pub(crate) fn path_open( - ctx: FunctionEnvMut, - dirfd: __wasi_fd_t, - dirflags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - o_flags: __wasi_oflags_t, - fs_rights_base: __wasi_rights_t, - fs_rights_inheriting: __wasi_rights_t, - fs_flags: __wasi_fdflags_t, - fd: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::path_open::( - ctx, - dirfd, - dirflags, - path, - path_len, - o_flags, - fs_rights_base, - fs_rights_inheriting, - fs_flags, - fd, - ) -} - -pub(crate) fn path_readlink( - ctx: FunctionEnvMut, - dir_fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, - buf: WasmPtr, - buf_len: MemoryOffset, - buf_used: WasmPtr, -) -> __wasi_errno_t { - super::path_readlink::(ctx, dir_fd, path, path_len, buf, buf_len, buf_used) -} - -pub(crate) fn path_remove_directory( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_remove_directory::(ctx, fd, path, path_len) -} - -pub(crate) fn path_rename( - ctx: FunctionEnvMut, - old_fd: __wasi_fd_t, - old_path: WasmPtr, - old_path_len: MemoryOffset, - new_fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_rename::( - ctx, - old_fd, - old_path, - old_path_len, - new_fd, - new_path, - new_path_len, - ) -} - -pub(crate) fn path_symlink( - ctx: FunctionEnvMut, - old_path: WasmPtr, - old_path_len: MemoryOffset, - fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_symlink::(ctx, old_path, old_path_len, fd, new_path, new_path_len) -} - -pub(crate) fn path_unlink_file( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_unlink_file::(ctx, fd, path, path_len) -} - -pub(crate) fn poll_oneoff( - ctx: FunctionEnvMut, - in_: WasmPtr<__wasi_subscription_t, MemoryType>, - out_: WasmPtr<__wasi_event_t, MemoryType>, - nsubscriptions: MemoryOffset, - nevents: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::poll_oneoff::(ctx, in_, out_, nsubscriptions, nevents) -} - -pub(crate) fn proc_exit( - ctx: FunctionEnvMut, - code: __wasi_exitcode_t, -) -> Result<(), WasiError> { - super::proc_exit(ctx, code) -} - -pub(crate) fn proc_raise(ctx: FunctionEnvMut, sig: __wasi_signal_t) -> __wasi_errno_t { - super::proc_raise(ctx, sig) -} - -pub(crate) fn random_get( - ctx: FunctionEnvMut, - buf: WasmPtr, - buf_len: MemoryOffset, -) -> __wasi_errno_t { - super::random_get::(ctx, buf, buf_len) -} - -pub(crate) fn fd_dup( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - ret_fd: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_dup::(ctx, fd, ret_fd) -} - -pub(crate) fn fd_event( - ctx: FunctionEnvMut, - initial_val: u64, - flags: __wasi_eventfdflags, - ret_fd: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_event(ctx, initial_val, flags, ret_fd) -} - -pub(crate) fn fd_pipe( - ctx: FunctionEnvMut, - ro_fd1: WasmPtr<__wasi_fd_t, MemoryType>, - ro_fd2: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_pipe::(ctx, ro_fd1, ro_fd2) -} - -pub(crate) fn tty_get( - ctx: FunctionEnvMut, - tty_state: WasmPtr<__wasi_tty_t, MemoryType>, -) -> __wasi_errno_t { - super::tty_get::(ctx, tty_state) -} - -pub(crate) fn tty_set( - ctx: FunctionEnvMut, - tty_state: WasmPtr<__wasi_tty_t, MemoryType>, -) -> __wasi_errno_t { - super::tty_set::(ctx, tty_state) -} - -pub(crate) fn getcwd( - ctx: FunctionEnvMut, - path: WasmPtr, - path_len: WasmPtr, -) -> __wasi_errno_t { - super::getcwd::(ctx, path, path_len) -} - -pub(crate) fn chdir( - ctx: FunctionEnvMut, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::chdir::(ctx, path, path_len) -} - -pub(crate) fn thread_spawn( - ctx: FunctionEnvMut, - method: WasmPtr, - method_len: MemoryOffset, - user_data: u64, - reactor: __wasi_bool_t, - ret_tid: WasmPtr<__wasi_tid_t, MemoryType>, -) -> __wasi_errno_t { - super::thread_spawn::(ctx, method, method_len, user_data, reactor, ret_tid) -} - -pub(crate) fn thread_sleep( - ctx: FunctionEnvMut, - duration: __wasi_timestamp_t, -) -> Result<__wasi_errno_t, WasiError> { - super::thread_sleep(ctx, duration) -} - -pub(crate) fn thread_id( - ctx: FunctionEnvMut, - ret_tid: WasmPtr<__wasi_tid_t, MemoryType>, -) -> __wasi_errno_t { - super::thread_id::(ctx, ret_tid) -} - -pub(crate) fn thread_join( - ctx: FunctionEnvMut, - tid: __wasi_tid_t, -) -> Result<__wasi_errno_t, WasiError> { - super::thread_join(ctx, tid) -} - -pub(crate) fn thread_parallelism( - ctx: FunctionEnvMut, - ret_parallelism: WasmPtr, -) -> __wasi_errno_t { - super::thread_parallelism::(ctx, ret_parallelism) -} - -pub(crate) fn thread_exit( - ctx: FunctionEnvMut, - exitcode: __wasi_exitcode_t, -) -> Result<__wasi_errno_t, WasiError> { - super::thread_exit(ctx, exitcode) -} - -pub(crate) fn sched_yield(ctx: FunctionEnvMut) -> Result<__wasi_errno_t, WasiError> { - super::sched_yield(ctx) -} - -pub(crate) fn getpid( - ctx: FunctionEnvMut, - ret_pid: WasmPtr<__wasi_pid_t, MemoryType>, -) -> __wasi_errno_t { - super::getpid::(ctx, ret_pid) -} - -pub(crate) fn process_spawn( - ctx: FunctionEnvMut, - name: WasmPtr, - name_len: MemoryOffset, - chroot: __wasi_bool_t, - args: WasmPtr, - args_len: MemoryOffset, - preopen: WasmPtr, - preopen_len: MemoryOffset, - stdin: __wasi_stdiomode_t, - stdout: __wasi_stdiomode_t, - stderr: __wasi_stdiomode_t, - working_dir: WasmPtr, - working_dir_len: MemoryOffset, - ret_handles: WasmPtr<__wasi_bus_handles_t, MemoryType>, -) -> __bus_errno_t { - super::process_spawn::( - ctx, - name, - name_len, - chroot, - args, - args_len, - preopen, - preopen_len, - stdin, - stdout, - stderr, - working_dir, - working_dir_len, - ret_handles, - ) -} - -pub(crate) fn bus_open_local( - ctx: FunctionEnvMut, - name: WasmPtr, - name_len: MemoryOffset, - reuse: __wasi_bool_t, - ret_bid: WasmPtr<__wasi_bid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_open_local::(ctx, name, name_len, reuse, ret_bid) -} - -pub(crate) fn bus_open_remote( - ctx: FunctionEnvMut, - name: WasmPtr, - name_len: MemoryOffset, - reuse: __wasi_bool_t, - instance: WasmPtr, - instance_len: MemoryOffset, - token: WasmPtr, - token_len: MemoryOffset, - ret_bid: WasmPtr<__wasi_bid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_open_remote::( - ctx, - name, - name_len, - reuse, - instance, - instance_len, - token, - token_len, - ret_bid, - ) -} - -pub(crate) fn bus_close(ctx: FunctionEnvMut, bid: __wasi_bid_t) -> __bus_errno_t { - super::bus_close(ctx, bid) -} - -pub(crate) fn bus_call( - ctx: FunctionEnvMut, - bid: __wasi_bid_t, - keep_alive: __wasi_bool_t, - topic: WasmPtr, - topic_len: MemoryOffset, - format: __wasi_busdataformat_t, - buf: WasmPtr, - buf_len: MemoryOffset, - ret_cid: WasmPtr<__wasi_cid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_call::( - ctx, bid, keep_alive, topic, topic_len, format, buf, buf_len, ret_cid, - ) -} - -pub(crate) fn bus_subcall( - ctx: FunctionEnvMut, - parent: __wasi_cid_t, - keep_alive: __wasi_bool_t, - topic: WasmPtr, - topic_len: MemoryOffset, - format: __wasi_busdataformat_t, - buf: WasmPtr, - buf_len: MemoryOffset, - ret_cid: WasmPtr<__wasi_cid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_subcall::( - ctx, parent, keep_alive, topic, topic_len, format, buf, buf_len, ret_cid, - ) -} - -pub(crate) fn bus_poll( - ctx: FunctionEnvMut, - timeout: __wasi_timestamp_t, - events: WasmPtr, - nevents: MemoryOffset, - malloc: WasmPtr, - malloc_len: MemoryOffset, - ret_nevents: WasmPtr, -) -> __bus_errno_t { - super::bus_poll::( - ctx, - timeout, - events, - nevents, - malloc, - malloc_len, - ret_nevents, - ) -} - -pub(crate) fn call_reply( - ctx: FunctionEnvMut, - cid: __wasi_cid_t, - format: __wasi_busdataformat_t, - buf: WasmPtr, - buf_len: MemoryOffset, -) -> __bus_errno_t { - super::call_reply::(ctx, cid, format, buf, buf_len) -} - -pub(crate) fn call_fault( - ctx: FunctionEnvMut, - cid: __wasi_cid_t, - fault: __bus_errno_t, -) -> __bus_errno_t { - super::call_fault(ctx, cid, fault) -} - -pub(crate) fn call_close(ctx: FunctionEnvMut, cid: __wasi_cid_t) -> __bus_errno_t { - super::call_close(ctx, cid) -} - -pub(crate) fn port_bridge( - ctx: FunctionEnvMut, - network: WasmPtr, - network_len: MemoryOffset, - token: WasmPtr, - token_len: MemoryOffset, - security: __wasi_streamsecurity_t, -) -> __wasi_errno_t { - super::port_bridge::(ctx, network, network_len, token, token_len, security) -} - -pub(crate) fn port_unbridge(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_unbridge(ctx) -} - -pub(crate) fn port_dhcp_acquire(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_dhcp_acquire(ctx) -} - -pub(crate) fn port_addr_add( - ctx: FunctionEnvMut, - addr: WasmPtr<__wasi_cidr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_addr_add::(ctx, addr) -} - -pub(crate) fn port_addr_remove( - ctx: FunctionEnvMut, - addr: WasmPtr<__wasi_addr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_addr_remove::(ctx, addr) -} - -pub(crate) fn port_addr_clear(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_addr_clear(ctx) -} - -pub(crate) fn port_addr_list( - ctx: FunctionEnvMut, - addrs: WasmPtr<__wasi_cidr_t, MemoryType>, - naddrs: WasmPtr, -) -> __wasi_errno_t { - super::port_addr_list::(ctx, addrs, naddrs) -} - -pub(crate) fn port_mac( - ctx: FunctionEnvMut, - ret_mac: WasmPtr<__wasi_hardwareaddress_t, MemoryType>, -) -> __wasi_errno_t { - super::port_mac::(ctx, ret_mac) -} - -pub(crate) fn port_gateway_set( - ctx: FunctionEnvMut, - ip: WasmPtr<__wasi_addr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_gateway_set::(ctx, ip) -} - -pub(crate) fn port_route_add( - ctx: FunctionEnvMut, - cidr: WasmPtr<__wasi_cidr_t, MemoryType>, - via_router: WasmPtr<__wasi_addr_t, MemoryType>, - preferred_until: WasmPtr<__wasi_option_timestamp_t, MemoryType>, - expires_at: WasmPtr<__wasi_option_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::port_route_add::(ctx, cidr, via_router, preferred_until, expires_at) -} - -pub(crate) fn port_route_remove( - ctx: FunctionEnvMut, - ip: WasmPtr<__wasi_addr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_route_remove::(ctx, ip) -} - -pub(crate) fn port_route_clear(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_route_clear(ctx) -} - -pub(crate) fn port_route_list( - ctx: FunctionEnvMut, - routes: WasmPtr<__wasi_route_t, MemoryType>, - nroutes: WasmPtr, -) -> __wasi_errno_t { - super::port_route_list::(ctx, routes, nroutes) -} - -pub(crate) fn ws_connect( - ctx: FunctionEnvMut, - url: WasmPtr, - url_len: MemoryOffset, - ret_sock: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::ws_connect::(ctx, url, url_len, ret_sock) -} - -pub(crate) fn http_request( - ctx: FunctionEnvMut, - url: WasmPtr, - url_len: MemoryOffset, - method: WasmPtr, - method_len: MemoryOffset, - headers: WasmPtr, - headers_len: MemoryOffset, - gzip: __wasi_bool_t, - ret_handles: WasmPtr<__wasi_http_handles_t, MemoryType>, -) -> __wasi_errno_t { - super::http_request::( - ctx, - url, - url_len, - method, - method_len, - headers, - headers_len, - gzip, - ret_handles, - ) -} - -pub(crate) fn http_status( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - status: WasmPtr<__wasi_http_status_t, MemoryType>, - status_text: WasmPtr, - status_text_len: WasmPtr, - headers: WasmPtr, - headers_len: WasmPtr, -) -> __wasi_errno_t { - super::http_status::(ctx, sock, status) -} - -pub(crate) fn sock_status( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ret_status: WasmPtr<__wasi_sockstatus_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_status::(ctx, sock, ret_status) -} - -pub(crate) fn sock_addr_local( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ret_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_addr_local::(ctx, sock, ret_addr) -} - -pub(crate) fn sock_addr_peer( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ro_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_addr_peer::(ctx, sock, ro_addr) -} - -pub(crate) fn sock_open( - ctx: FunctionEnvMut, - af: __wasi_addressfamily_t, - ty: __wasi_socktype_t, - pt: __wasi_sockproto_t, - ro_sock: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_open::(ctx, af, ty, pt, ro_sock) -} - -pub(crate) fn sock_set_opt_flag( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - flag: __wasi_bool_t, -) -> __wasi_errno_t { - super::sock_set_opt_flag(ctx, sock, opt, flag) -} - -pub(crate) fn sock_get_opt_flag( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - ret_flag: WasmPtr<__wasi_bool_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_get_opt_flag::(ctx, sock, opt, ret_flag) -} - -pub fn sock_set_opt_time( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - time: WasmPtr<__wasi_option_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_set_opt_time(ctx, sock, opt, time) -} - -pub fn sock_get_opt_time( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - ret_time: WasmPtr<__wasi_option_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_get_opt_time(ctx, sock, opt, ret_time) -} - -pub fn sock_set_opt_size( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - size: __wasi_filesize_t, -) -> __wasi_errno_t { - super::sock_set_opt_size(ctx, sock, opt, size) -} - -pub fn sock_get_opt_size( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - ret_size: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_get_opt_size(ctx, sock, opt, ret_size) -} - -pub(crate) fn sock_join_multicast_v4( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip4_t, MemoryType>, - iface: WasmPtr<__wasi_addr_ip4_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_join_multicast_v4::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_leave_multicast_v4( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip4_t, MemoryType>, - iface: WasmPtr<__wasi_addr_ip4_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_leave_multicast_v4::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_join_multicast_v6( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip6_t, MemoryType>, - iface: u32, -) -> __wasi_errno_t { - super::sock_join_multicast_v6::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_leave_multicast_v6( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip6_t, MemoryType>, - iface: u32, -) -> __wasi_errno_t { - super::sock_leave_multicast_v6::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_bind( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_bind::(ctx, sock, addr) -} - -pub(crate) fn sock_listen( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - backlog: MemoryOffset, -) -> __wasi_errno_t { - super::sock_listen::(ctx, sock, backlog) -} - -pub(crate) fn sock_accept( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - fd_flags: __wasi_fdflags_t, - ro_fd: WasmPtr<__wasi_fd_t, MemoryType>, - ro_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_accept::(ctx, sock, fd_flags, ro_fd, ro_addr) -} - -pub(crate) fn sock_connect( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_connect::(ctx, sock, addr) -} - -pub(crate) fn sock_recv( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ri_data: WasmPtr<__wasi_iovec_t, MemoryType>, - ri_data_len: MemoryOffset, - ri_flags: __wasi_riflags_t, - ro_data_len: WasmPtr, - ro_flags: WasmPtr<__wasi_roflags_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_recv::( - ctx, - sock, - ri_data, - ri_data_len, - ri_flags, - ro_data_len, - ro_flags, - ) -} - -pub(crate) fn sock_recv_from( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ri_data: WasmPtr<__wasi_iovec_t, MemoryType>, - ri_data_len: MemoryOffset, - ri_flags: __wasi_riflags_t, - ro_data_len: WasmPtr, - ro_flags: WasmPtr<__wasi_roflags_t, MemoryType>, - ro_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_recv_from::( - ctx, - sock, - ri_data, - ri_data_len, - ri_flags, - ro_data_len, - ro_flags, - ro_addr, - ) -} - -pub(crate) fn sock_send( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - si_data: WasmPtr<__wasi_ciovec_t, MemoryType>, - si_data_len: MemoryOffset, - si_flags: __wasi_siflags_t, - ret_data_len: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_send::(ctx, sock, si_data, si_data_len, si_flags, ret_data_len) -} - -pub(crate) fn sock_send_to( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - si_data: WasmPtr<__wasi_ciovec_t, MemoryType>, - si_data_len: MemoryOffset, - si_flags: __wasi_siflags_t, - addr: WasmPtr<__wasi_addr_port_t, MemoryType>, - ret_data_len: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_send_to::( - ctx, - sock, - si_data, - si_data_len, - si_flags, - addr, - ret_data_len, - ) -} - -pub(crate) fn sock_send_file( - ctx: FunctionEnvMut, - out_fd: __wasi_fd_t, - in_fd: __wasi_fd_t, - offset: __wasi_filesize_t, - count: __wasi_filesize_t, - ret_sent: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - unsafe { super::sock_send_file::(ctx, out_fd, in_fd, offset, count, ret_sent) } -} - -pub(crate) fn sock_shutdown( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - how: __wasi_sdflags_t, -) -> __wasi_errno_t { - super::sock_shutdown(ctx, sock, how) -} - -pub(crate) fn resolve( - ctx: FunctionEnvMut, - host: WasmPtr, - host_len: MemoryOffset, - port: u16, - ips: WasmPtr<__wasi_addr_t, MemoryType>, - nips: MemoryOffset, - ret_nips: WasmPtr, -) -> __wasi_errno_t { - super::resolve::(ctx, host, host_len, port, ips, nips, ret_nips) -} diff --git a/lib/wasi/src/syscalls/wasix64.rs b/lib/wasi/src/syscalls/wasix64.rs deleted file mode 100644 index b42307e0da8..00000000000 --- a/lib/wasi/src/syscalls/wasix64.rs +++ /dev/null @@ -1,1060 +0,0 @@ -#![deny(dead_code)] -use crate::{WasiEnv, WasiError, WasiState, WasiThread}; -use wasmer::{FunctionEnvMut, Memory, Memory64, MemorySize, StoreMut, WasmPtr, WasmSlice}; -use wasmer_wasi_types::*; - -type MemoryType = Memory64; -type MemoryOffset = u64; - -pub(crate) fn args_get( - ctx: FunctionEnvMut, - argv: WasmPtr, MemoryType>, - argv_buf: WasmPtr, -) -> __wasi_errno_t { - super::args_get::(ctx, argv, argv_buf) -} - -pub(crate) fn args_sizes_get( - ctx: FunctionEnvMut, - argc: WasmPtr, - argv_buf_size: WasmPtr, -) -> __wasi_errno_t { - super::args_sizes_get::(ctx, argc, argv_buf_size) -} - -pub(crate) fn clock_res_get( - ctx: FunctionEnvMut, - clock_id: __wasi_clockid_t, - resolution: WasmPtr<__wasi_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::clock_res_get::(ctx, clock_id, resolution) -} - -pub(crate) fn clock_time_get( - ctx: FunctionEnvMut, - clock_id: __wasi_clockid_t, - precision: __wasi_timestamp_t, - time: WasmPtr<__wasi_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::clock_time_get::(ctx, clock_id, precision, time) -} - -pub(crate) fn environ_get( - ctx: FunctionEnvMut, - environ: WasmPtr, MemoryType>, - environ_buf: WasmPtr, -) -> __wasi_errno_t { - super::environ_get::(ctx, environ, environ_buf) -} - -pub(crate) fn environ_sizes_get( - ctx: FunctionEnvMut, - environ_count: WasmPtr, - environ_buf_size: WasmPtr, -) -> __wasi_errno_t { - super::environ_sizes_get::(ctx, environ_count, environ_buf_size) -} - -pub(crate) fn fd_advise( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filesize_t, - len: __wasi_filesize_t, - advice: __wasi_advice_t, -) -> __wasi_errno_t { - super::fd_advise(ctx, fd, offset, len, advice) -} - -pub(crate) fn fd_allocate( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filesize_t, - len: __wasi_filesize_t, -) -> __wasi_errno_t { - super::fd_allocate(ctx, fd, offset, len) -} - -pub(crate) fn fd_close(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_close(ctx, fd) -} - -pub(crate) fn fd_datasync(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_datasync(ctx, fd) -} - -pub(crate) fn fd_fdstat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf_ptr: WasmPtr<__wasi_fdstat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_fdstat_get::(ctx, fd, buf_ptr) -} - -pub(crate) fn fd_fdstat_set_flags( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_fdflags_t, -) -> __wasi_errno_t { - super::fd_fdstat_set_flags(ctx, fd, flags) -} - -pub(crate) fn fd_fdstat_set_rights( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - fs_rights_base: __wasi_rights_t, - fs_rights_inheriting: __wasi_rights_t, -) -> __wasi_errno_t { - super::fd_fdstat_set_rights(ctx, fd, fs_rights_base, fs_rights_inheriting) -} - -pub(crate) fn fd_filestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr<__wasi_filestat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_filestat_get::(ctx, fd, buf) -} - -pub(crate) fn fd_filestat_set_size( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - st_size: __wasi_filesize_t, -) -> __wasi_errno_t { - super::fd_filestat_set_size(ctx, fd, st_size) -} - -pub(crate) fn fd_filestat_set_times( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - st_atim: __wasi_timestamp_t, - st_mtim: __wasi_timestamp_t, - fst_flags: __wasi_fstflags_t, -) -> __wasi_errno_t { - super::fd_filestat_set_times(ctx, fd, st_atim, st_mtim, fst_flags) -} - -pub(crate) fn fd_pread( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_iovec_t, MemoryType>, - iovs_len: MemoryOffset, - offset: __wasi_filesize_t, - nread: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_pread::(ctx, fd, iovs, iovs_len, offset, nread) -} - -pub(crate) fn fd_prestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr<__wasi_prestat_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_prestat_get::(ctx, fd, buf) -} - -pub(crate) fn fd_prestat_dir_name( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::fd_prestat_dir_name::(ctx, fd, path, path_len) -} - -pub(crate) fn fd_pwrite( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_ciovec_t, MemoryType>, - iovs_len: MemoryOffset, - offset: __wasi_filesize_t, - nwritten: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_pwrite::(ctx, fd, iovs, iovs_len, offset, nwritten) -} - -pub(crate) fn fd_read( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_iovec_t, MemoryType>, - iovs_len: MemoryOffset, - nread: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_read::(ctx, fd, iovs, iovs_len, nread) -} - -pub(crate) fn fd_readdir( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - buf: WasmPtr, - buf_len: MemoryOffset, - cookie: __wasi_dircookie_t, - bufused: WasmPtr, -) -> __wasi_errno_t { - super::fd_readdir::(ctx, fd, buf, buf_len, cookie, bufused) -} - -pub(crate) fn fd_renumber( - ctx: FunctionEnvMut, - from: __wasi_fd_t, - to: __wasi_fd_t, -) -> __wasi_errno_t { - super::fd_renumber(ctx, from, to) -} - -pub(crate) fn fd_seek( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: __wasi_filedelta_t, - whence: __wasi_whence_t, - newoffset: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_seek::(ctx, fd, offset, whence, newoffset) -} - -pub(crate) fn fd_sync(ctx: FunctionEnvMut, fd: __wasi_fd_t) -> __wasi_errno_t { - super::fd_sync(ctx, fd) -} - -pub(crate) fn fd_tell( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - offset: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_tell::(ctx, fd, offset) -} - -pub(crate) fn fd_write( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - iovs: WasmPtr<__wasi_ciovec_t, MemoryType>, - iovs_len: MemoryOffset, - nwritten: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::fd_write::(ctx, fd, iovs, iovs_len, nwritten) -} - -pub(crate) fn path_create_directory( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_create_directory::(ctx, fd, path, path_len) -} - -pub(crate) fn path_filestat_get( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - buf: WasmPtr<__wasi_filestat_t, MemoryType>, -) -> __wasi_errno_t { - super::path_filestat_get::(ctx, fd, flags, path, path_len, buf) -} - -pub(crate) fn path_filestat_set_times( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - flags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - st_atim: __wasi_timestamp_t, - st_mtim: __wasi_timestamp_t, - fst_flags: __wasi_fstflags_t, -) -> __wasi_errno_t { - super::path_filestat_set_times::( - ctx, fd, flags, path, path_len, st_atim, st_mtim, fst_flags, - ) -} - -pub(crate) fn path_link( - ctx: FunctionEnvMut, - old_fd: __wasi_fd_t, - old_flags: __wasi_lookupflags_t, - old_path: WasmPtr, - old_path_len: MemoryOffset, - new_fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_link::( - ctx, - old_fd, - old_flags, - old_path, - old_path_len, - new_fd, - new_path, - new_path_len, - ) -} - -pub(crate) fn path_open( - ctx: FunctionEnvMut, - dirfd: __wasi_fd_t, - dirflags: __wasi_lookupflags_t, - path: WasmPtr, - path_len: MemoryOffset, - o_flags: __wasi_oflags_t, - fs_rights_base: __wasi_rights_t, - fs_rights_inheriting: __wasi_rights_t, - fs_flags: __wasi_fdflags_t, - fd: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::path_open::( - ctx, - dirfd, - dirflags, - path, - path_len, - o_flags, - fs_rights_base, - fs_rights_inheriting, - fs_flags, - fd, - ) -} - -pub(crate) fn path_readlink( - ctx: FunctionEnvMut, - dir_fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, - buf: WasmPtr, - buf_len: MemoryOffset, - buf_used: WasmPtr, -) -> __wasi_errno_t { - super::path_readlink::(ctx, dir_fd, path, path_len, buf, buf_len, buf_used) -} - -pub(crate) fn path_remove_directory( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_remove_directory::(ctx, fd, path, path_len) -} - -pub(crate) fn path_rename( - ctx: FunctionEnvMut, - old_fd: __wasi_fd_t, - old_path: WasmPtr, - old_path_len: MemoryOffset, - new_fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_rename::( - ctx, - old_fd, - old_path, - old_path_len, - new_fd, - new_path, - new_path_len, - ) -} - -pub(crate) fn path_symlink( - ctx: FunctionEnvMut, - old_path: WasmPtr, - old_path_len: MemoryOffset, - fd: __wasi_fd_t, - new_path: WasmPtr, - new_path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_symlink::(ctx, old_path, old_path_len, fd, new_path, new_path_len) -} - -pub(crate) fn path_unlink_file( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::path_unlink_file::(ctx, fd, path, path_len) -} - -pub(crate) fn poll_oneoff( - ctx: FunctionEnvMut, - in_: WasmPtr<__wasi_subscription_t, MemoryType>, - out_: WasmPtr<__wasi_event_t, MemoryType>, - nsubscriptions: MemoryOffset, - nevents: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::poll_oneoff::(ctx, in_, out_, nsubscriptions, nevents) -} - -pub(crate) fn proc_exit( - ctx: FunctionEnvMut, - code: __wasi_exitcode_t, -) -> Result<(), WasiError> { - super::proc_exit(ctx, code) -} - -pub(crate) fn proc_raise(ctx: FunctionEnvMut, sig: __wasi_signal_t) -> __wasi_errno_t { - super::proc_raise(ctx, sig) -} - -pub(crate) fn random_get( - ctx: FunctionEnvMut, - buf: WasmPtr, - buf_len: MemoryOffset, -) -> __wasi_errno_t { - super::random_get::(ctx, buf, buf_len) -} - -pub(crate) fn fd_dup( - ctx: FunctionEnvMut, - fd: __wasi_fd_t, - ret_fd: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_dup::(ctx, fd, ret_fd) -} - -pub(crate) fn fd_event( - ctx: FunctionEnvMut, - initial_val: u64, - flags: __wasi_eventfdflags, - ret_fd: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_event(ctx, initial_val, flags, ret_fd) -} - -pub(crate) fn fd_pipe( - ctx: FunctionEnvMut, - ro_fd1: WasmPtr<__wasi_fd_t, MemoryType>, - ro_fd2: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::fd_pipe::(ctx, ro_fd1, ro_fd2) -} - -pub(crate) fn tty_get( - ctx: FunctionEnvMut, - tty_state: WasmPtr<__wasi_tty_t, MemoryType>, -) -> __wasi_errno_t { - super::tty_get::(ctx, tty_state) -} - -pub(crate) fn tty_set( - ctx: FunctionEnvMut, - tty_state: WasmPtr<__wasi_tty_t, MemoryType>, -) -> __wasi_errno_t { - super::tty_set::(ctx, tty_state) -} - -pub(crate) fn getcwd( - ctx: FunctionEnvMut, - path: WasmPtr, - path_len: WasmPtr, -) -> __wasi_errno_t { - super::getcwd::(ctx, path, path_len) -} - -pub(crate) fn chdir( - ctx: FunctionEnvMut, - path: WasmPtr, - path_len: MemoryOffset, -) -> __wasi_errno_t { - super::chdir::(ctx, path, path_len) -} - -pub(crate) fn thread_spawn( - ctx: FunctionEnvMut, - method: WasmPtr, - method_len: MemoryOffset, - user_data: u64, - reactor: __wasi_bool_t, - ret_tid: WasmPtr<__wasi_tid_t, MemoryType>, -) -> __wasi_errno_t { - super::thread_spawn::(ctx, method, method_len, user_data, reactor, ret_tid) -} - -pub(crate) fn thread_sleep( - ctx: FunctionEnvMut, - duration: __wasi_timestamp_t, -) -> Result<__wasi_errno_t, WasiError> { - super::thread_sleep(ctx, duration) -} - -pub(crate) fn thread_id( - ctx: FunctionEnvMut, - ret_tid: WasmPtr<__wasi_tid_t, MemoryType>, -) -> __wasi_errno_t { - super::thread_id::(ctx, ret_tid) -} - -pub(crate) fn thread_join( - ctx: FunctionEnvMut, - tid: __wasi_tid_t, -) -> Result<__wasi_errno_t, WasiError> { - super::thread_join(ctx, tid) -} - -pub(crate) fn thread_parallelism( - ctx: FunctionEnvMut, - ret_parallelism: WasmPtr, -) -> __wasi_errno_t { - super::thread_parallelism::(ctx, ret_parallelism) -} - -pub(crate) fn thread_exit( - ctx: FunctionEnvMut, - exitcode: __wasi_exitcode_t, -) -> Result<__wasi_errno_t, WasiError> { - super::thread_exit(ctx, exitcode) -} - -pub(crate) fn sched_yield(ctx: FunctionEnvMut) -> Result<__wasi_errno_t, WasiError> { - super::sched_yield(ctx) -} - -pub(crate) fn getpid( - ctx: FunctionEnvMut, - ret_pid: WasmPtr<__wasi_pid_t, MemoryType>, -) -> __wasi_errno_t { - super::getpid::(ctx, ret_pid) -} - -pub(crate) fn process_spawn( - ctx: FunctionEnvMut, - name: WasmPtr, - name_len: MemoryOffset, - chroot: __wasi_bool_t, - args: WasmPtr, - args_len: MemoryOffset, - preopen: WasmPtr, - preopen_len: MemoryOffset, - stdin: __wasi_stdiomode_t, - stdout: __wasi_stdiomode_t, - stderr: __wasi_stdiomode_t, - working_dir: WasmPtr, - working_dir_len: MemoryOffset, - ret_handles: WasmPtr<__wasi_bus_handles_t, MemoryType>, -) -> __bus_errno_t { - super::process_spawn::( - ctx, - name, - name_len, - chroot, - args, - args_len, - preopen, - preopen_len, - stdin, - stdout, - stderr, - working_dir, - working_dir_len, - ret_handles, - ) -} - -pub(crate) fn bus_open_local( - ctx: FunctionEnvMut, - name: WasmPtr, - name_len: MemoryOffset, - reuse: __wasi_bool_t, - ret_bid: WasmPtr<__wasi_bid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_open_local::(ctx, name, name_len, reuse, ret_bid) -} - -pub(crate) fn bus_open_remote( - ctx: FunctionEnvMut, - name: WasmPtr, - name_len: MemoryOffset, - reuse: __wasi_bool_t, - instance: WasmPtr, - instance_len: MemoryOffset, - token: WasmPtr, - token_len: MemoryOffset, - ret_bid: WasmPtr<__wasi_bid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_open_remote::( - ctx, - name, - name_len, - reuse, - instance, - instance_len, - token, - token_len, - ret_bid, - ) -} - -pub(crate) fn bus_close(ctx: FunctionEnvMut, bid: __wasi_bid_t) -> __bus_errno_t { - super::bus_close(ctx, bid) -} - -pub(crate) fn bus_call( - ctx: FunctionEnvMut, - bid: __wasi_bid_t, - keep_alive: __wasi_bool_t, - topic: WasmPtr, - topic_len: MemoryOffset, - format: __wasi_busdataformat_t, - buf: WasmPtr, - buf_len: MemoryOffset, - ret_cid: WasmPtr<__wasi_cid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_call::( - ctx, bid, keep_alive, topic, topic_len, format, buf, buf_len, ret_cid, - ) -} - -pub(crate) fn bus_subcall( - ctx: FunctionEnvMut, - parent: __wasi_cid_t, - keep_alive: __wasi_bool_t, - topic: WasmPtr, - topic_len: MemoryOffset, - format: __wasi_busdataformat_t, - buf: WasmPtr, - buf_len: MemoryOffset, - ret_cid: WasmPtr<__wasi_cid_t, MemoryType>, -) -> __bus_errno_t { - super::bus_subcall::( - ctx, parent, keep_alive, topic, topic_len, format, buf, buf_len, ret_cid, - ) -} - -pub(crate) fn bus_poll( - ctx: FunctionEnvMut, - timeout: __wasi_timestamp_t, - events: WasmPtr, - nevents: MemoryOffset, - malloc: WasmPtr, - malloc_len: MemoryOffset, - ret_nevents: WasmPtr, -) -> __bus_errno_t { - super::bus_poll::( - ctx, - timeout, - events, - nevents, - malloc, - malloc_len, - ret_nevents, - ) -} - -pub(crate) fn call_reply( - ctx: FunctionEnvMut, - cid: __wasi_cid_t, - format: __wasi_busdataformat_t, - buf: WasmPtr, - buf_len: MemoryOffset, -) -> __bus_errno_t { - super::call_reply::(ctx, cid, format, buf, buf_len) -} - -pub(crate) fn call_fault( - ctx: FunctionEnvMut, - cid: __wasi_cid_t, - fault: __bus_errno_t, -) -> __bus_errno_t { - super::call_fault(ctx, cid, fault) -} - -pub(crate) fn call_close(ctx: FunctionEnvMut, cid: __wasi_cid_t) -> __bus_errno_t { - super::call_close(ctx, cid) -} - -pub(crate) fn port_bridge( - ctx: FunctionEnvMut, - network: WasmPtr, - network_len: MemoryOffset, - token: WasmPtr, - token_len: MemoryOffset, - security: __wasi_streamsecurity_t, -) -> __wasi_errno_t { - super::port_bridge::(ctx, network, network_len, token, token_len, security) -} - -pub(crate) fn port_unbridge(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_unbridge(ctx) -} - -pub(crate) fn port_dhcp_acquire(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_dhcp_acquire(ctx) -} - -pub(crate) fn port_addr_add( - ctx: FunctionEnvMut, - addr: WasmPtr<__wasi_cidr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_addr_add::(ctx, addr) -} - -pub(crate) fn port_addr_remove( - ctx: FunctionEnvMut, - addr: WasmPtr<__wasi_addr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_addr_remove::(ctx, addr) -} - -pub(crate) fn port_addr_clear(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_addr_clear(ctx) -} - -pub(crate) fn port_addr_list( - ctx: FunctionEnvMut, - addrs: WasmPtr<__wasi_cidr_t, MemoryType>, - naddrs: WasmPtr, -) -> __wasi_errno_t { - super::port_addr_list::(ctx, addrs, naddrs) -} - -pub(crate) fn port_mac( - ctx: FunctionEnvMut, - ret_mac: WasmPtr<__wasi_hardwareaddress_t, MemoryType>, -) -> __wasi_errno_t { - super::port_mac::(ctx, ret_mac) -} - -pub(crate) fn port_gateway_set( - ctx: FunctionEnvMut, - ip: WasmPtr<__wasi_addr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_gateway_set::(ctx, ip) -} - -pub(crate) fn port_route_add( - ctx: FunctionEnvMut, - cidr: WasmPtr<__wasi_cidr_t, MemoryType>, - via_router: WasmPtr<__wasi_addr_t, MemoryType>, - preferred_until: WasmPtr<__wasi_option_timestamp_t, MemoryType>, - expires_at: WasmPtr<__wasi_option_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::port_route_add::(ctx, cidr, via_router, preferred_until, expires_at) -} - -pub(crate) fn port_route_remove( - ctx: FunctionEnvMut, - ip: WasmPtr<__wasi_addr_t, MemoryType>, -) -> __wasi_errno_t { - super::port_route_remove::(ctx, ip) -} - -pub(crate) fn port_route_clear(ctx: FunctionEnvMut) -> __wasi_errno_t { - super::port_route_clear(ctx) -} - -pub(crate) fn port_route_list( - ctx: FunctionEnvMut, - routes: WasmPtr<__wasi_route_t, MemoryType>, - nroutes: WasmPtr, -) -> __wasi_errno_t { - super::port_route_list::(ctx, routes, nroutes) -} - -pub(crate) fn ws_connect( - ctx: FunctionEnvMut, - url: WasmPtr, - url_len: MemoryOffset, - ret_sock: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::ws_connect::(ctx, url, url_len, ret_sock) -} - -pub(crate) fn http_request( - ctx: FunctionEnvMut, - url: WasmPtr, - url_len: MemoryOffset, - method: WasmPtr, - method_len: MemoryOffset, - headers: WasmPtr, - headers_len: MemoryOffset, - gzip: __wasi_bool_t, - ret_handles: WasmPtr<__wasi_http_handles_t, MemoryType>, -) -> __wasi_errno_t { - super::http_request::( - ctx, - url, - url_len, - method, - method_len, - headers, - headers_len, - gzip, - ret_handles, - ) -} - -pub(crate) fn http_status( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - status: WasmPtr<__wasi_http_status_t, MemoryType>, - status_text: WasmPtr, - status_text_len: WasmPtr, - headers: WasmPtr, - headers_len: WasmPtr, -) -> __wasi_errno_t { - super::http_status::(ctx, sock, status) -} - -pub(crate) fn sock_status( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ret_status: WasmPtr<__wasi_sockstatus_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_status::(ctx, sock, ret_status) -} - -pub(crate) fn sock_addr_local( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ret_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_addr_local::(ctx, sock, ret_addr) -} - -pub(crate) fn sock_addr_peer( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ro_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_addr_peer::(ctx, sock, ro_addr) -} - -pub(crate) fn sock_open( - ctx: FunctionEnvMut, - af: __wasi_addressfamily_t, - ty: __wasi_socktype_t, - pt: __wasi_sockproto_t, - ro_sock: WasmPtr<__wasi_fd_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_open::(ctx, af, ty, pt, ro_sock) -} - -pub(crate) fn sock_set_opt_flag( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - flag: __wasi_bool_t, -) -> __wasi_errno_t { - super::sock_set_opt_flag(ctx, sock, opt, flag) -} - -pub(crate) fn sock_get_opt_flag( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - ret_flag: WasmPtr<__wasi_bool_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_get_opt_flag::(ctx, sock, opt, ret_flag) -} - -pub fn sock_set_opt_time( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - time: WasmPtr<__wasi_option_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_set_opt_time(ctx, sock, opt, time) -} - -pub fn sock_get_opt_time( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - ret_time: WasmPtr<__wasi_option_timestamp_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_get_opt_time(ctx, sock, opt, ret_time) -} - -pub fn sock_set_opt_size( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - size: __wasi_filesize_t, -) -> __wasi_errno_t { - super::sock_set_opt_size(ctx, sock, opt, size) -} - -pub fn sock_get_opt_size( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - opt: __wasi_sockoption_t, - ret_size: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_get_opt_size(ctx, sock, opt, ret_size) -} - -pub(crate) fn sock_join_multicast_v4( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip4_t, MemoryType>, - iface: WasmPtr<__wasi_addr_ip4_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_join_multicast_v4::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_leave_multicast_v4( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip4_t, MemoryType>, - iface: WasmPtr<__wasi_addr_ip4_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_leave_multicast_v4::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_join_multicast_v6( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip6_t, MemoryType>, - iface: u32, -) -> __wasi_errno_t { - super::sock_join_multicast_v6::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_leave_multicast_v6( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - multiaddr: WasmPtr<__wasi_addr_ip6_t, MemoryType>, - iface: u32, -) -> __wasi_errno_t { - super::sock_leave_multicast_v6::(ctx, sock, multiaddr, iface) -} - -pub(crate) fn sock_bind( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_bind::(ctx, sock, addr) -} - -pub(crate) fn sock_listen( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - backlog: MemoryOffset, -) -> __wasi_errno_t { - super::sock_listen::(ctx, sock, backlog) -} - -pub(crate) fn sock_accept( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - fd_flags: __wasi_fdflags_t, - ro_fd: WasmPtr<__wasi_fd_t, MemoryType>, - ro_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_accept::(ctx, sock, fd_flags, ro_fd, ro_addr) -} - -pub(crate) fn sock_connect( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> __wasi_errno_t { - super::sock_connect::(ctx, sock, addr) -} - -pub(crate) fn sock_recv( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ri_data: WasmPtr<__wasi_iovec_t, MemoryType>, - ri_data_len: MemoryOffset, - ri_flags: __wasi_riflags_t, - ro_data_len: WasmPtr, - ro_flags: WasmPtr<__wasi_roflags_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_recv::( - ctx, - sock, - ri_data, - ri_data_len, - ri_flags, - ro_data_len, - ro_flags, - ) -} - -pub(crate) fn sock_recv_from( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - ri_data: WasmPtr<__wasi_iovec_t, MemoryType>, - ri_data_len: MemoryOffset, - ri_flags: __wasi_riflags_t, - ro_data_len: WasmPtr, - ro_flags: WasmPtr<__wasi_roflags_t, MemoryType>, - ro_addr: WasmPtr<__wasi_addr_port_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_recv_from::( - ctx, - sock, - ri_data, - ri_data_len, - ri_flags, - ro_data_len, - ro_flags, - ro_addr, - ) -} - -pub(crate) fn sock_send( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - si_data: WasmPtr<__wasi_ciovec_t, MemoryType>, - si_data_len: MemoryOffset, - si_flags: __wasi_siflags_t, - ret_data_len: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_send::(ctx, sock, si_data, si_data_len, si_flags, ret_data_len) -} - -pub(crate) fn sock_send_to( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - si_data: WasmPtr<__wasi_ciovec_t, MemoryType>, - si_data_len: MemoryOffset, - si_flags: __wasi_siflags_t, - addr: WasmPtr<__wasi_addr_port_t, MemoryType>, - ret_data_len: WasmPtr, -) -> Result<__wasi_errno_t, WasiError> { - super::sock_send_to::( - ctx, - sock, - si_data, - si_data_len, - si_flags, - addr, - ret_data_len, - ) -} - -pub(crate) fn sock_send_file( - ctx: FunctionEnvMut, - out_fd: __wasi_fd_t, - in_fd: __wasi_fd_t, - offset: __wasi_filesize_t, - count: __wasi_filesize_t, - ret_sent: WasmPtr<__wasi_filesize_t, MemoryType>, -) -> Result<__wasi_errno_t, WasiError> { - unsafe { super::sock_send_file::(ctx, out_fd, in_fd, offset, count, ret_sent) } -} - -pub(crate) fn sock_shutdown( - ctx: FunctionEnvMut, - sock: __wasi_fd_t, - how: __wasi_sdflags_t, -) -> __wasi_errno_t { - super::sock_shutdown(ctx, sock, how) -} - -pub(crate) fn resolve( - ctx: FunctionEnvMut, - host: WasmPtr, - host_len: MemoryOffset, - port: u16, - ips: WasmPtr<__wasi_addr_t, MemoryType>, - nips: MemoryOffset, - ret_nips: WasmPtr, -) -> __wasi_errno_t { - super::resolve::(ctx, host, host_len, port, ips, nips, ret_nips) -} diff --git a/lib/wasi/src/syscalls/wasm32.rs b/lib/wasi/src/syscalls/wasm.rs similarity index 100% rename from lib/wasi/src/syscalls/wasm32.rs rename to lib/wasi/src/syscalls/wasm.rs diff --git a/lib/wasi/tests/catsay.rs b/lib/wasi/tests/catsay.rs new file mode 100644 index 00000000000..4d4901840ba --- /dev/null +++ b/lib/wasi/tests/catsay.rs @@ -0,0 +1,146 @@ +#![cfg(feature = "sys")] +#![cfg(target_os = "linux")] +use std::{io::{Read, Write}, time::Duration}; + +#[allow(unused_imports)] +use tracing::{debug, info, metadata::LevelFilter}; +#[cfg(feature = "sys")] +use tracing_subscriber::fmt::SubscriberBuilder; +use wasmer::{Instance, Module, Store, Cranelift, EngineBuilder}; +use wasmer_wasi::{Pipe, WasiState, import_object_for_all_wasi_versions, WasiError}; + +#[cfg(feature = "sys")] +mod sys { + #[test] + fn test_catsay() { + super::test_catsay() + } +} + +#[cfg(feature = "js")] +mod js { + use wasm_bindgen_test::*; + #[wasm_bindgen_test] + fn test_catsay() { + super::test_catsay() + } +} + +fn test_catsay() { + + info!("Creating engine"); + let compiler = Cranelift::default(); + let engine = EngineBuilder::new(compiler.clone()); + + #[allow(unused_mut)] + let mut store = Store::new(engine); + + info!("Compiling module"); + let module = Module::new(&store, include_bytes!("catsay.wasm")).unwrap(); + + #[cfg(feature = "js")] + tracing_wasm::set_as_global_default_with_config({ + let mut builder = tracing_wasm::WASMLayerConfigBuilder::new(); + builder.set_console_config(tracing_wasm::ConsoleConfig::ReportWithoutConsoleColor); + builder.build() + }); + + #[cfg(feature = "sys")] + SubscriberBuilder::default() + .with_max_level(LevelFilter::TRACE) + .init(); + + + let engine = store.engine().clone(); + for _ in 0..10 { + let module = module.clone(); + run_test(store, module); + + store = Store::new(engine.clone()); + } + + // TODO: This version will SIGSEGV (users must reuse engines) + for _ in 0..10 { + let module = module.clone(); + run_test(store, module); + + let engine = EngineBuilder::new(compiler.clone()); + store = Store::new(engine); + } +} + +fn run_test(mut store: Store, module: Module) +{ + // Create the `WasiEnv`. + let mut stdout = Pipe::new(); + let mut wasi_state_builder = WasiState::new("catsay"); + + let mut stdin_pipe = Pipe::new(); + + let mut wasi_env = wasi_state_builder + .stdin(Box::new(stdin_pipe.clone())) + .stdout(Box::new(stdout.clone())) + .stderr(Box::new(stdout.clone())) + .finalize(&mut store) + .unwrap(); + + // Start a thread that will dump STDOUT to info + #[cfg(feature = "sys")] + std::thread::spawn(move || { + loop { + let mut buf = [0u8; 8192]; + if let Ok(amt) = stdout.read(&mut buf[..]) { + if amt > 0 { + let msg = String::from_utf8_lossy(&buf[0..amt]); + for line in msg.lines() { + info!("{}", line); + } + } else { + std::thread::sleep(Duration::from_millis(1)); + } + } else { + break; + } + } + }); + + // Write some text to catsay stdin + stdin_pipe.write_all("hi there".as_bytes()).unwrap(); + drop(stdin_pipe); + + // Generate an `ImportObject`. + let mut import_object = import_object_for_all_wasi_versions(&mut store, &wasi_env.env); + import_object.import_shared_memory(&module, &mut store); + + // Let's instantiate the module with the imports. + let instance = Instance::new(&mut store, &module, &import_object).unwrap(); + wasi_env.initialize(&mut store, &instance).unwrap(); + + // Let's call the `_start` function, which is our `main` function in Rust. + let start = instance.exports.get_function("_start").unwrap(); + let ret = start.call(&mut store, &[]); + if let Err(e) = ret { + match e.downcast::() { + Ok(WasiError::Exit(0)) => { } + Ok(WasiError::Exit(code)) => { + assert!(false, "The call should have returned Err(WasiError::Exit(0)) but returned {}", code); + } + Ok(WasiError::UnknownWasiVersion) => { + assert!(false, "The call should have returned Err(WasiError::Exit(0)) but returned UnknownWasiVersion"); + } + Err(err) => { + assert!(false, "The call returned an error {:?}", err); + } + } + } + + #[cfg(feature = "js")] + { + let mut stdout_str = String::new(); + stdout.read_to_string(&mut stdout_str).unwrap(); + let stdout_as_str = stdout_str.as_str(); + for line in stdout_str.lines() { + info!("{}", line); + } + } +} diff --git a/lib/wasi/tests/catsay.wasm b/lib/wasi/tests/catsay.wasm new file mode 100755 index 0000000000000000000000000000000000000000..bb103f0142900a8a65a3d7a18a8e37e7e7ea8dd5 GIT binary patch literal 79654 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 literal 0 HcmV?d00001 diff --git a/lib/wasi/tests/condvar.rs b/lib/wasi/tests/condvar.rs new file mode 100644 index 00000000000..c3a9863762d --- /dev/null +++ b/lib/wasi/tests/condvar.rs @@ -0,0 +1,120 @@ +#![cfg(feature = "sys")] +#![cfg(target_os = "linux")] +use std::{io::Read, time::Duration}; + +#[allow(unused_imports)] +use tracing::{debug, info, metadata::LevelFilter}; +#[cfg(feature = "sys")] +use tracing_subscriber::fmt::SubscriberBuilder; +use wasmer::{Instance, Module, Store, Features, Cranelift, EngineBuilder}; +use wasmer_wasi::{Pipe, WasiState, import_object_for_all_wasi_versions, WasiError}; + +#[cfg(feature = "sys")] +mod sys { + #[test] + fn test_condvar() { + super::test_condvar() + } +} + +#[cfg(feature = "js")] +mod js { + use wasm_bindgen_test::*; + #[wasm_bindgen_test] + fn test_condvar() { + super::test_condvar() + } +} + +fn test_condvar() { + let mut features = Features::new(); + features + .threads(true); + + info!("Creating engine"); + let compiler = Cranelift::default(); + let engine = EngineBuilder::new(compiler) + .set_features(Some(features)); + + let store = Store::new(engine); + + info!("Compiling module"); + let module = Module::new(&store, include_bytes!("condvar.wasm")).unwrap(); + + #[cfg(feature = "js")] + tracing_wasm::set_as_global_default_with_config({ + let mut builder = tracing_wasm::WASMLayerConfigBuilder::new(); + builder.set_console_config(tracing_wasm::ConsoleConfig::ReportWithoutConsoleColor); + builder.build() + }); + + #[cfg(feature = "sys")] + SubscriberBuilder::default() + .with_max_level(LevelFilter::TRACE) + .init(); + + run_test(store, module); +} + +fn run_test(mut store: Store, module: Module) +{ + // Create the `WasiEnv`. + let mut stdout = Pipe::new(); + let mut wasi_state_builder = WasiState::new("multi-threading"); + + let mut wasi_env = wasi_state_builder + .stdout(Box::new(stdout.clone())) + .stderr(Box::new(stdout.clone())) + .finalize(&mut store) + .unwrap(); + + // Start a thread that will dump STDOUT to info + #[cfg(feature = "sys")] + std::thread::spawn(move || { + loop { + let mut buf = [0u8; 8192]; + if let Ok(amt) = stdout.read(&mut buf[..]) { + if amt > 0 { + let msg = String::from_utf8_lossy(&buf[0..amt]); + for line in msg.lines() { + info!("{}", line); + } + } else { + std::thread::sleep(Duration::from_millis(1)); + } + } else { + break; + } + } + }); + + // Generate an `ImportObject`. + let mut import_object = import_object_for_all_wasi_versions(&mut store, &wasi_env.env); + import_object.import_shared_memory(&module, &mut store); + + // Let's instantiate the module with the imports. + let instance = Instance::new(&mut store, &module, &import_object).unwrap(); + wasi_env.initialize(&mut store, &instance).unwrap(); + + // Let's call the `_start` function, which is our `main` function in Rust. + let start = instance.exports.get_function("_start").unwrap(); + let ret = start.call(&mut store, &[]); + if let Err(e) = ret { + match e.downcast::() { + Ok(WasiError::Exit(0)) => { } + _ => { + assert!(false, "The call should have returned Err(WasiError::Exit(0))"); + } + } + } + + #[cfg(feature = "js")] + { + let mut stdout_str = String::new(); + stdout.read_to_string(&mut stdout_str).unwrap(); + let stdout_as_str = stdout_str.as_str(); + for line in stdout_str.lines() { + info!("{}", line); + } + } +} diff --git a/lib/wasi/tests/condvar.wasm b/lib/wasi/tests/condvar.wasm new file mode 100755 index 0000000000000000000000000000000000000000..c7f0ab2561b91cf57cba0f1eade27765e6cc56b5 GIT binary patch literal 124249 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 { + Ok(WasiError::Exit(0)) => { } + _ => { + assert!(false, "The call should have returned Err(WasiError::Exit(0))"); + } + } + } + + let mut stdout_str = String::new(); + stdout.read_to_string(&mut stdout_str).unwrap(); + let stdout_as_str = stdout_str.as_str(); + assert_eq!(stdout_as_str, "apple\n"); +} diff --git a/lib/wasi/tests/coreutils.wasm b/lib/wasi/tests/coreutils.wasm new file mode 100755 index 0000000000000000000000000000000000000000..0a056a483299fa55862830b99da140b209ed1e7d GIT binary patch literal 4047680 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%0DbSI!Up)vqZ^?>t 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ξ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

    8>h zI{-c=A0YiPq+aYxiby-?^hxl2Ap+wuu*gWGU|1xdzw?!(mcqsAB^mVBttKg&Pmrmg zBT=&-@9!N9>k%I+;sW0guELxh&u1Z0%@-18))Z4&Cb z%*+))`23yc8dIW~-pV4s_yT0V>6oH1Hz!&UoDdOdjYTF9=iBO@nr=fEePtUUO|+(? zy;HCq9^GhcfNo@1&PyP>CXLV&(kHg3mGNj=)7G@gWpB4lTdHXlB*L`nvNf%0sWGj# z5A=~b?P|3MZVe#%t_dK*!&LXwnwj22 zb|VaZ6B%~ZR!QA0H3B;`?>a#{LUSOF{I-E{FbzhQpRW&rz%P9z?grlrnZ>nQ$6G)a zv??HT(*klTAZL*-)d+`pBOsIPvxTYhFk;^Hm0@ata*PkKJzel=h2&P4DtC9nP$WYO z%9j5@TOoDUbXpZss97Ov)hF_8ur0kAgKLf*%olBSs-u?De zIret|WRHGl>QNRx`9G)1bK;`AYMSa^n|ju<1^N5UQW$}~`p3;edejTm|GTO3ekgx) zs@xLQ(c~jr?UBue_rH6pe4cJDmRf6{Zaz6k@u*yc>m*6}?|$cB{7COE6)lzvym`{z z>^amZF0$dHd6wf$W2-+5+Ld0&k4{3G{}$Qez_#v~xQtI@$nPkkPSeX3`mk_?b|YNb zHs78arrMRWN=`P`3iS6d(c|olJS-6&Bcb83gbcYLK)IUT@atKfvG6{tFsnL~$(`VeO z88~oOk)H|Q2W<_lU7w&bp;X7hio`|=KG zHg{|tXgH64s~YT77`IJ>y{BgLKVG5C(9M^06v}3z6H7h{W&ZrDLKzUKWZNqW##uty z@7Tf!lI-FQA#E$NDBzPe-4GR3d*%m=E%6SP&N~pVPGg81teA44Z)3S8U{Z{;rc~zxOy?-vBv#6e9i=LC;v9rHS-w`|3g-rmGCO- zxK#=5pS<|wz)sA7dEpMSqoxnUX_v4C#(Q)FTkq6+B=$3LMQ?ur7gf>EV@(yQhs zChs^E@H0>08~`tr)J?_Iro>ofN(d+qFeXTO#2FhZ%)AhbfEOw-rOdq$`-B(DbHD6( zAGB4yOEqh*wlcM|xX?IY}V>F;&xDO(5sZ-pTSH^YO>f*Ukk3%SA=fr`zuUn`#4AwB%-s#C~fKt;iR z4^{IcXExJa#0H(CYC0B-voDWj_5Q;Ln988`D5#H>1Vx`6pm&h01oMuW;VI|0X~-#V)kOPP0#Sm|vk|^Bp3dAeGT>;=ImQ;_i%rp7 zA!%u!w#lH2AU-HYxZle)Zb2TeI*?X=t;+fzlvQeAnWRRUHZzRO!t zCs>hDLru|T^FieRHLZnxu}PGO987|0UI>sgeur-{2TYivR>fg>>Ygx-{yCa3-b477 zGFTk3ZF&F(odrEK67ZXCfwr1LNTygjA_cE-Wt07piWJN06PP8?=7TJlK_Sy9JE=m{ z$;hKLwQd#WH9fZ7$6)wpIkkl#-A2fH!~(+v@dmNt4x$p(n2lcj>7at(o|9ZMJ8Y&? z9??CgxWs!-aS_j{?qgJMe6G|5theepBelTZ@EoMHE9(VYQkJq(2LkCt#|Gq3)2ENK z&g9^s?WGn`u-?!UpedLUs~oP>8!Nl>5j-kyw(~;pgkc<=`zO|veL(1U?1bHapzfpw z4KTz3yV+4b4BEwB$GBgoDXn)HxWHe@E{gm@yJ)FH5?7(~^oERM2Qb^S&l#hq-=pO40x>|b4~J>u<{kQwgSzUQYCNCN9k^;|e9k1)4kg~!Nr-D~ z>~OO&sy>q40t2fWyM@L8wU1alwlQiuP$Bol1V`_ePawneHD*9!PSqWVj;%Tr-vd`C z8qOJ7c}6s4iYn&X3dJzLd=edu^p;h`F?3^>HK7e1v(4z)*o8@5HuP}3aE`tU=HUfH z{c~V{FnO>NH9h`R)U3xK01mXsrs9?+bZ&tTy@nkSiZ>sy%C$Tb%U$RX!FjvO!E)GC zCUlwer9yIt+p-HRan&#?=5^{*F5*UxCdC%2ZYW78<7H^rK z>p+CJ{ny=AQWwaJEHD4Nhh;2B71!=Uy=EIt^;si}!%kI&tO4L0HRRod8%XOi*k!|B zX?(Ye`vB|-L2sEOG&hxUro<|!>rKT<;fc$+sAAJAoL8*x2NO<5))}D`km(NPIFf$Xi-3NV?B@9u?V9|@63 z?a8F|IGL*#J()V;cH3kMzOBhD_T8GjsWs1}p3vmNY+l#BgthL$34Tt;E!gx*4A{ok z9I&CS0-&$ffNdByWaMcZi}2P0Y8;uX@e}-2k6-%f3Ymqx0Sye9h1?^HtblA0W&7^~ ziF*V8HwfRgoU1_Q6c@0vQl${k>nN?nFjAq}^EUu^-Oh26VW^!=!o~FaW{RlH@2vJ! z{(8E8P`|Gsn_bI{iHO1rnRfWA4BV7?>!R5peIjYn%jjS%Lyn^pZx9rtH>kiFgcL?% z2r5Ky0(QDWyfn`=)7yhODnrCP;8zGx*Z390WWQY%WWrT%Bo@j}AfuOR)+xgPKZ#9g+>~rA2V3us)KtKXDpq?0)@={OjpKBYea2RcNL1NT|%3XiGt_~EPw(sxg z`YVg(4d(fW&B+_Rizm-Rd#|v7(qx+BKW>7WZPvSXos29P`U-;@c;3D-KHr3~(iy#5 zY0>D=uzczlbR z$$-@civ!>!Y-13xuTAErU}S;2s_JSrU;(~YvjGbPrU6DIe=n3Sl~d$QDnA2 z-4@IiVol0IV;sg~pNK-T&7C4ysD~vPE4FG(%UjrC0X7L&3v!A#zN!saJe9Mt+#vBhpsMs$;Xu zj`Z5NnbvHxZ@n(wYcm=@;#=1X;_8M*Lv{G;F2o`A1Evwac z1cfF~W^}d|kuDZNixnvmP#J4A+d+K+W7!O^c^RWX9jT{mi&y=Mky;w@o)j32<%o96 zJ(;UAw)&8cpo7o>d3t`kKSx0j041>4C$_>2R-p*ku#$XjU=|ah%8Q`>ZfU-wo||Q8 z8Km%+Kur@=A8&AZMix!=H&cYDsooy{7gqFIidEXz#D(W6;aV!5&*ZuQu(;i zce0h(vzP7e)GzCeHLTK#*&_jS85BT5+QSreIog zQ*EwH2kTXj|3o}HU@?$=Ern{?(4lj|sH!>fvbv-p#Qs^$^*MXG_^{$fL{Ipai3@eu zL}6svhb@|XqB59ClQZE|M_EI9ez3JvJ|5(UAtBDy1*$TvGc(ESs$H%7{6xF2lTgjl z$r#XUb4!*p8Z~s;XY0i%9picT>8Hq;ISXf>GOP|bixLdP!A1CWvq894GAp0R;))I0 z&Cg^~teFnXRhy4D3bdxn#~KBoFNXR?0qASXv8n^~&B_aDU8x(hr4W^s3fa;ei9|>@ zJJE;brHl}fVA&<%QGVF+B4J@*=J8}^KPVHiwuMFF?k)IM1oxICxVL-+zXg8-w+s6w zEwBt`IKNDi^5KuL8WM9zvT&IUA0ZAmUFV(hddsrO#otifowD~}k>2l7HTe0EV(+FT z+pN=83ZtzA2T(|&BbrsG;F}m zy#C?8oJ)ssExpL`3}G?Z=>ClzIAEVQaRKrTF65AGU1`?28Y#qAb_>s&D;#R#2n^yo zHcFk248j+-6(~1^CGIk9t2Ms zrdvmx| z;vuJgfp()n9Tu>+2I@dkaUJYX{%%?ki3O5N$ir$u7{Vt`Bo^oorxvE7653FSO0-_v zP9=bw@B@aL6YtcZ3i1O9RH5K9q*(h1Bh1U^6Ntghc8SNtt=TtF#^0hLy z0tF0`2T&~YvrjuHkuAc4&sYSCp6SdBe#hh#Rn9`*uuqJ|9}tUgHoG1h+OlSmj4d#y z`O5q3m6cBb{8>G#Ivz)|jW=EU!f>3S;^;kDi1i0uf z1wk&C^z=AboYYRO$4sohJZ<}gY(S^Gak4r3FI6_vOq7bReqB3}H6CV_3hwqho%YI~3X zXq8VA5ez)EBt}?XPPsk?Dj}*J7)a(aL|`Ds=AjL|=(IuHBWrPw#w*)dhw}?Mz^M7| zr6ywj1^Gl?5CY8fNs7m~ox2F}zV)+B+=j*4i9^PSiP z3ep&lf3@1ugk&}czL`AC%Pd^900MK>tqtG$R zte5ktmwh4zH4hi0OpF7VY){0}af3MqUW7wcyA?0&8ZV?3aY9nuI43m6Pb3@pWOK$N z-N1ubS=irq*L_ONZ7#s`cikt?aWPGQlRWOUBZz6>J(~3?o`t^vJZ<2wRU*WuDU~}= zn_{pKFMtv;P@tUW-5>zX3vAu{d8gX~VAozT>4%du1i;2C4z~FkY&>J$84VkPCh8Un zQPmTWqkOgbkJd;eQW5DD^ z=`>ZP9S}ry*EN$^0V=4|VQtS8;*&)hLELI%vk%5>J;wJZ#Uq2KVrWzb^~V#s66-EP z_4_@;Y=}Q=*zuf9D=AIu(};Yy5zB^`lN8d|M23Q#si?f*4+_sm6Kx4 zM%X$ZHii!KILrg(ZwVjEkwdLm@E+N9b&7!wna8CO_fo{Mn{e<1pYrkzvb<FEd~qaM`9va!E@+n zVxS*nqHr}YhoMNOMq}Q#HwtLTHW6}Sp^0ePYAkaet1>a@Pu`Y@K`>W0<1#NdY?>Bt zCuREhtnqd|lgm86M;Mz;5G&*c9pOdi{8+B+&PUikk8eXb!!`QWM2UJ8Js?o{SzlSn z@n4e1s(beFd3lWzo8L-zOxJR=G4`8X>FF~@M>Jz;b~OH>YM-%Tm@yx$X#spDOnz^m zj^T$!95AJvTOXOQXZUp~A0~Xr1lfWa`2^+V3Hg%+k92E#(+b=rT?Jaw_}zX|-yQPE zk^&0A-C;12$I@$h9JC0vc|a4XGd;5eH4)B1^YhvwiFOjA;S(|ka!wp=C^GP97U!8o z&;O=pn#Fm30U(BLHmOQ{V?;@a0E#R5Cv!sggXm>z+6Gt^un0n~8y11-Znd^Nejt-Z zR=I3UOy$%78nYQ?S=sy^wmYZ+G_2(t>1bJ%F~YzTN|#?#KBo)@QCBg$^ijl_nig;FPK&_~1598^C^PMxOsxi3 z!6b*G4i$X-GtILAwmEX<)(A?+R z?Ufh2S28=gpvr+sXhs%kj2!=h-$2Z!u3n<{ev<{DeO00R=G`0~DM< zFQCRrvxno8kVunTQ=h`}Iu%uC`x&V0Ks;vA55Th`J2Q`o2t}Z~uD%YP z0HewnRmEPpstCHrAT?<^gv4li>LesBI0G^Tj<^&f2teV}n{P{%9t%Ek;5H>x=cGQL zKrPtNK6u#d$x< z54`zX`GN3!8$ZymZ|7&}w(Mj4*tRwMAl1A8aE;t3Po5@F)!12YIyS1ZZAYdhe~!w*;o{+6`VV7$c943Jrf%!IiCy;)nr z)(%VEiMotg;s;ElfM-NKP8V;vR>yK!O~aW%SWyjU5ph7RdNfhqIc|)iH)hBttpa2! zS6Jf$Hh0X9D!3&GO5H*sO_GHxQXYvqt+}uk$aF)9avCnI2u6ZR1WSx$JLg6{ce4?1 z5a{_pyP2IAb|Bw8ay7s!O$uJn+uG5YNfI$MY*)8nbrBA3%dml(_pc4q%o!m75tteD z%-1?hEma^}v_Wrv!VT2)166^NAZLC-+A!xRWkk&70GcCWgz0FYA zY;$=>$gaSaGZBwdus5z=M&NUzf$;;g?<>D5nJox?Jik%P*74m%WM@;gybN+I+{U&x zD;AK3n68<##z_Uu@r;lRv}02!&+wq4_fbQe9B;!U@qxNA1={SW7dHo*>@-lxJ4!`s zD+ASmtqhSkZO<8~BOd(Y5y`h+=IK@;J*UzIo!TwfK+Vu9i2yUqTrWaDVfw5re!_Oj z3Qbh(O3u`h3U6YX*CC!3Yf%-#%hX}cd_rK=F(aWC&vpvyrb^fgL?v?9cj}t#isvOIR*a$_Se?;z1^c^U8XguE)JC&8 zcso3SEwIA~QPP2ZNZ_!(CVl=$J+5FUhDc*U}SwREXvJHdJ0s^V` z?{?ey*vudTdD+c%8Df%`9jVKh>xh0P(^QzIiT|ijG?9!EBC}X?K}te4GOEL*(TS0r zBIAIqsFJS>1Dr3*i(Dr%oX=b*5xr-x6Ba{Q?bRxPLyGR0|b|R<h!^1++L1WfjO^g~ zSZX_i$)b-D*D(R`z+_4Htlk?KmgBk9G67wy-mpHrtU-}!JuA;v3MgA3_?R>bKsOWYC(nnVS3+|vRgBdE{MoXvIBOC7qdlZj|eE)J+7@1oxV};!*t&~}A zgAdg%jG?h)SaAVK;5vbC0KuIW&&ZC4;ys&ePN)Dwn{zFc2iuHQW#tPz=ghi#ff(Iu zE+i+Kp*6!Tk$am5Xf&Q*4WBHKGAo~I6o9h6U^H#CYBB-eifb_Xd`k<$$m+9=udENx zRRzW;tr=50VA^_Zr$t#*7E>0w%}OW$co2|6k63pB zD=dc$tKbGU8THr2KXc!i;yH;LP+ z(1qqEU>aItB|=jEX-LH?1tYusqtZYIRSM#woV8LThTG)ov6D=_%hCwK@?^O#Wd#Mf zda_cNvdV%8K3TO=TQ`$^60(|fu%?YQy@Xl>5(9*neVsz_R{RPIy=qs*J}21*K-}*W zqb$lB3$4H$*)7j#J62`#x>}`?U!aSg#xUqeB-AeWR6JCcDXEQ~NF_-YUDG(2dpl%V zxsjA5=jr3{Hl?a_ho7Qr_KGOT(weZ`m{R0-nkGQ69YL67XKvzj0=%YMJu!Y2u0-Ih z%xq)latCug9rYA}#6o9r;&ZiyqRL~WE?0SsW=+8l9P0l6?7e@mW!F{TdCxibzTfZl zmDI9ZYB@gd(zu=mY3QoaNGhQ~pNyxw>5`3p5@o#h|v4Ndulq zCn!M>SEgr1*qvCy4QPnQ)`TW#j64X?3U+*U=jWt@IM!R5!ku^4?*VHeDmMR{FyiiP|uiyDW|!d7vGT>jWQ8{}**m{H5$ zvoLk8&?K5??H%NrPCPeo4~8$w-Y#&gh0b1mQS9MRCKtZ%`=Wq{d{MDT*wxC~M|1(b z5Y+^5ByE(*u{BJO34aA=6?qDFgRM#dld)BvBSm=8O=GKgj$o>j3gRSMyscMOXUo}& z%ps#>pr8Gift;XZsF#6~DR~4axe~|;N+uN?oxLf%zKFA;O0fsvDGr8XQ5W1${!nFy z0Qx%peA2uCxam{OWp8R#Zhj_2=%$wr7yppyd;wPlXR_cC@r=n;cnsTI<7DAyv0m|s z#DS%?Vpk>&YZU;jbaF-`oA%=dvN6xvLS_u(pMciYyguVJU*}CE4ndQIJFc4_Vh>KV z9!Rd+gg#skJdmFCi+Zzem*mAU>&z_mcD0f}Fiq49MA<&+EO^h&xuUXrbIzfq{W%Y3 zrnjniqCDq^#if=mbjp(eouBe$RzikT&S@pXDTjKi+lezLr)A06WfgR1vTJAmp@`Nu z1-DcGa91dq^+3$~r1@YaO7Pr2>YW0cYryO=-e%2gy`Ee>`sp%=2c|!1o&bXaHMsfT zT_mI`zZ<6)EIWb?Ce1(LiDDab0sKObezaiiZjpoTF?%FOwd!F&_{Jz29hNfU{s+V} zYUg5++6#C#z*sGZ*Hm^`y%WD_d-nn~iL0>kw79;+$2pjSrJ@6PU=))n0w9E9 zJn`f~HIdOx_Vdco`s9cEs}F>nZjP!W_5A8X{}8N|^aUEj{K5nB08x<_|J8+xR&pmC z2IS?dO&H&1K|4iSL}Q700Q9}RrBMcR>TNzH zZYx+X!9JYd9&iX&wf8ScVCh&nfpb|QA>gd`U4eeBCu|}MmV(x4h92dRkhA7|SFlBo zi6ewoKZ*&Vx0ZbH!MV5)RzZdXh9hf2Nd(*Xi6TVS>UB*cm9Br7XcO|?3Ty0>IBTn% zNtN8@Ji6HI0skcPue_%2uW(%-2=P3kwqVPs4%OvIkJw-XU$Bkwf82$7C71-vAu)@W zb_P~6j+$Jko!D;dh(33OyuSCk3h0mk@Y?bb{f1u08Gsp?S)4U8ciIb&TC{d77lLSq z=~UUyh;XWh2p9b2HbfBbKRu5K_w0-ar!E8$oaPy^urnf*9R-i;l@Ci%n>2FRjMK6) zi?WZP`eW?CV@&c^`6%*GzjScio7ggidPy{#^^_(~Y^}=knF>M+ zf|Z_fg!Kh|AZ0^%tMzo2^PuH@X$r-C%_;;-O`%XW7l?}x-o+I1p=g<(8Y1TB5QG=B ztoVx_Ez745cVE~(g#-hz)q9SXNgx=@>?U7N4JANLQ+=JO*7@}rUs7gV_ODd!S0Xu}+5*|tTWKznCb2lyE|Q#h)}jiK zdL2aWU?W=39cUC|9jWIU=vHOGwA4#W7D>cT%&5Po^P!7`%I4jRo{ba>aN-k>W5?!b zuDnNT55ct7(UM7aAwjsUNhcjIe}B)<(u-|@V|{PU&QWA-=>vm^v;K#_dU3UUXZ8JU zBIC!(&M4eLwFti4k)5s#Qf51hy!?#YF!qec@Gh@mCu1+zD^syWx#L9_2nNlnPG-pq z1cbI_A2wGc#cc$GN<5BC!yypSxkXZ}^^3qzxNYvi;z7$S4v>Ko2k7?sFONbTEG6z? zB~P3`Q?8UYd$}fB@->U{J8&*zuTY*^K*(6#%vxe!hftibqe-{dzK4&Y07sNM3fh~b zV1E%AF7FRk^tcQ8HL!ujJkzkn>&)B0=Uujn%iCZ;+|K6g{}pOW3WCb#`m=XI;~-31FgXO(0O9UQfpp5Gzfvm|~^-3j&PDLDW28 zMAljekWISGN>7)83LKNWC@G1Ky6mJ-WXW}awDNIi3u8}52=5C+Y}M$!LTO{-u0oW znrsth$IAiM#$uB~PaCtiJD_NW{I?wxvyim02hkbl)pC`ICi$mDz#z~Ei6QsKK00;5 zUuuUC6TBi(p6RN21f_bVFUmP)k%FEmU$H3Xv`{|0f=T74hJ^Szlu3vW2BO?Jw6Z-A zU&l4b&=mI6OQD7d;JAC2I>CvegAQX&49kThDTHGfdEx<*vB<^;!FN=J5RL(^BoJj{ zw7_Z0kc;d7Slr9Hm{V!kgYTpnL4#QXvqB{dks{XdKu!)()OwwvM z7u%H`JfL4p?eTVqa=q;puM_R?*^@V<*2 zC+2j1b_l(dyPnL*?2n|_J1{_eaxa?&LS{R#KxNdJ<9$++V{P=+WO~^2rGk`K#Plwz zSGF-d9*p#$V|wGn^kfF)EaoxKDoy>0}S}04%v~u`rIPN z0=7Yur#KLxiYKVwAS#?j8gL4l%uKWk+ZJLU19_|F8Q4!T{i77O&z*v?lGr7k zN(qeF!fJkeIzV9y%4L|Ac5Oy2QS@SXJ1Y@>B}N_^9oGJ1s(_nP1t)HUp3AG7e6qt}0*K9$n0LSL(z&$$5d4hLM-e98r_N3Lpq-36^j z4(rA5{xZX*>T@IYm9VifE00`>UB~{?V zkV%|GUy9gyq_Vay((qJAioP*q=QEy`ErIOr3{aE*Zi*Cl5#tv z40zdbpg+gH?lfI!S{0CJvU3Sqj2q z+V~HFtnO`2sw4ez_xssg4TU$H@J{z*D7`VPHF+s!m2ElQQViE#ijni4&{;Xrwd0xZ z)0SJjJt;a|TW(cvS1amUDK-P7XB*y{CLJk5`$!`LVO>if>j$+0QLi7<7hC1^I%1`A z5_E3hgTrc@-vQh(GkbVrioP52LUbYJD*&JEYv=-kp|}C;o_;miWXq zt?35GNah?IqYIpbX?SJ6<(&qaCbGw04X&8n{GJ*-(yXELHU>=I<$2RcABzq)5VnG8PW-#q|-U36Z-~f;@Yz(va*lxyT zy6EER6#2z8c9X~KX6zk7)P9k@WUA^UcU`p3DQgEg%rM@#$7Kk)K>v}Q>B{GoW@OX` zrg$goRg4(BhfT^}*8p{a5~_<-i4`Im;~Zj9wDt?~tH^{Wwcnig60Q(xA(%UKTzLWG zMm$gBp8(0`>L`Qo9F^&SS({t-*Vx>GLTSZ<{Cc|ak|a5sCvae zvSz^aDvrkhCo$1bEl};R21qC81*vg(Cy1KRO%7oLnvWk5Ko7in@cbGPY8yIfvw9Dm zfN&q3{yfL7xqhmPo^n4EUS+%P@2_?Thst=H9NIlT>Rb^7mB?zra$YRpRCTNY(dAp7 z*=w7;Bq~Q~)nYq8%huuY`)JkjBF|O^rI44rUbEF)njF)o(CPYr>xI^V22-GIH5*)r zdl*sI827Z*HDe|MKThuJ)WA}+nEh&d{UEv1BDRV}sIBr$r}TSIC8rVni~6{J3R#2?QZq39_tvqn zxj9#ksm_*ZAr5LQT;3$<#d&2yQ-QZny-X)H^2k=?xW71|S3Fz2#R-)GKDc%f*^T!Ns_bBoc<;GJuYh=((m+tj(h`r zB^!k)o;05$7$&=9RY(u88VHNYT~Hxioix8bS17jK{BlTw>_2apz@)h=>YxFyW}ko;4G~LP zUv>uFb54-XxzxM$K#eLnkvtbUMOZ>bq)~#Gt;p!&3BQ@GNRKtku$V&6fog6=wq1Uw zDoq1QWb>%!|4q&FJIp_Np%$Dom5XYzk)JOCv8FIa9S&un!7^;9HjviIDpqO(VPX$& z8A=YA8TnAnuSQ3cbXG^Nq)(x88K3lV&zE7u3uJ3GF)%diZW(3KSLOXe>xqL4ts=;Y zt&}<<)NpKQjz`@_0>Vh%J%{t#}Beh%-e~2K{8L ziSmN16_iM1gUHcaeaX;8fX-*ble4r@dHJyQKR&Ho%^5qe$IqaAwr^KbJw5q;G5=o=|j4?z`Y2RtT)kdyGnDfr-%69}>V0aTv=(RON}X?hii6oRiG5?yu!VuU)|kqJS<9oS`uKzOyuO5>QexB;e+?rOt;X zsx#EHUhqahJec+4CfMxp_aL%!zkl;1Rk4s+Ox+$9-y#eIat-O)zRI7)NV2TlZR$Z5 zX5uEIq_8`660PKT97m{#gyu;?k68gB`i(2N4MB>)!yvFK$U*U(j7@l|ow!mTtP8R} z)vdWpPqE(?zn}V6&#$`Uc53x*ng>uU4l3Zskhj&wB3xH~=SF%#K>{ch)_=S(9IsCmXWclDvpWHIO0G}MMmge2nAK|AQHn?te$7_$yI~?@ zx8`Y&-&U{Iprz89WSpC{YlbGWdMz-tx;0c1)uT&S3LVv?zSOHE&XfZQRKK=-0!-Jk zZ)nkUSX#93pr=AFCQWDDJZ=^gOQim6y9!N@t}VSHPwm*~EULiD$60^Yh4g2`XgB>i z0BGHow-cR%j+q#U5S*7dRVQ(dDBZLq5Ae4P#xE*q1L}%Nh>1t@S=t!&S_!}`*rS90 zfTO=Lier_5g@QHE7cP?YQm5$VX<9+hbc@j>JPzs|H>Z32&F$$-1-!qNC8bpb zQCiz;oKo0FCwVQXqrBTBS5G>p6k7F7oQFKvh9%i710gx32oMx4m2wesL7mwtr6)j2 zp2}F@vJd5Cp>?gBz>%$12;r1U;z&Hja>!1po|iH$N?p?~RAr}BY!tqF^bWz;y-0w+ zE2Tn6(2&=^9eiJ*HWf&Fz<>T;WhZBmPPQ^NFk*F9a#I4ViBOL)rTT`5lN%<>?l;M=i?ze zLN_}v0b@Hbi+UxJob>h$(Jb;sAVKmZ3*^0cUmokW#dT0)N;=50n^$RL-$5FfR{}1i zpc}$vWzTR?EO8GmWOw;*(ZD6f9Q@c_kr%Vh#FQu$qexAA}+QTS?En=e$ z)eOA=Ze|(50u#V5J5QDGFWWj(k_dCon340;soe2B7XS#+4f*}!woY#u*=s+^jJ126 z3vHb%!3Xx%&)1!=&ZV|aFTm`zpX{mIy`L*>onFe>Yn}Tcij-b*-KHB~OAcCw$s+2d z)R0=%!cGDvg$%ALqMFjG9UD?*Pg*u z&s*8#LV56QyuHM>A0x3BBAJGcRLI@1{fu!G$OVp(%|- z2-Xa>>LrCOsa#xjYFLMhplQSg$)}L^tAgJt=?iXzNCcy>fgCv$XGKC2L?`^cUBII( zXMa_}<5gzt!;>ryConwn%UJJ$Q_Z8gZkJi5?qr|Jh3t-bncuY@gWmV_Yii|!aGpRT zhct*r$e1_r#ty0hH<$>S7b**I^3Z7lL(mu z4TK2;e`#z*P_i%L+7v05wiIEGjL1Gvt~U2NzuudgN1Z<=M=+Q810w-OEw+4s+q)FA zs#ADoD?0AX9%Q!4=k{{u^D|z4VUp}VMb#GX#Mkiv2&*GH&y*TxO@eC-B5!iww8NWN zVk7Hgx8jDY8l9tFuubjt3$O%KQSDY%b9^Uyfd;K<$-$kNqGw96_R|GZq6rKE1wT$# znqimOs6N{naa~q{#JS<{^3#YfyKxp(aB#&T28;(~kYwV(7C$-*EYZJs+RY}`Zc44n zfO0^jEn{vYw#~c0$Xh6CV2E)4ucoMK+yKw0^fH(p5R@L2-XS2=*C*Nfe!{W>)9_yH z$KdyLA-_qjC9T;8v63}D3tEfA>aP0Mb-AneF#*#x*~iW9^GE=WAhqXtlwY_vk2&qm zUguE>;$F>pl=WvMvcV^w%zw#D9DpGP4JyHF&Iol)Nnr7g*t;+sH7g<)guV6%rO@OH z#op6hjrwdYL|H7jXruo)2u|PZI8l0lD%EFo&E?mYo~W2JXg|-{eTk~1hKUFw z?6Yc~g3zK51CH{9=#TLvG}QhHdACj%p)FeLOTJsQzQiZc`V#Me%Mf+${2wtYTCEhj z(SnGM2M)T~cnNJV<7IwNjh^w|sbs<^d4vb>CGiG0W(J^z=n#|tN&*O0Cgzhv8G6^P zZq_S92#G!R_~M^Rj*2Pr|2}C%Upq4f^~{V5+@Aa3xfpvLS1txzS*^=S$a;A<%UZIW z>*crL64#2&e?$}wVe5p$*ARA&qO+Ehe39UXDvDyn|AjG|YzPi2Kz*36vr!oxn4tA_(lJ$kw}fFV zFrGvh#+JJW?oy;w1c=dV^r3V(b>^=Ws?q_Y4eoAJCG%PpNrDj4lh|!kU`Z2T5odNr zLGSIMUKK~ZPAM2{6n<*X9CyIX96Ro^H6C~HYo`#bn#W=E&LPNZHD0PxDyGE<-`*$P z>semdkORegaYC7_nx`c%tS(rhM4FoBNlN!cDM}}TNh`o-P}M$f#V$+*Xqe{9P|EeP zvu;aQM`;ehK-Xm$w)YH7Mqs|j?$euN4#|s|$jpyP2zh92XGh7`0gi!cP?CHXZI^s` zDtM*C-yH;&&?sQq6Ks}#jJvN7Y!i`JwbJvNR-)dR<}8Gtc*lWs61EJITFAQy`}R>I z-mPv6g|(%f51LqT3MQ-$yAYgD>O2QcoXx2>Rv%xl7Vli_5)(ehs{g_vtw)%$L|xrq zTWeY%NQySBdNg15pX^Zf4K}BIn5k?#2j&VLSPIkhI_3iVZ7H{e;uChm@A=#Vc%|F*z>7=Xeb_5_6)5v+!c{Aolqyln&W7OO|@JR?HiM_S@T(7J@ zO_w(#r!Js(YxAOS0Y*Z)G3EhG`LvAcMbqRHic1ip z^Daq@dhfbae7mhuui?jvF!Nj*ekGxMuKiwJ#^DlVhxA_d5UfyG!SIZ$Nw5ZL;S-5r zgaFJ$1|CCX-mf3jWzVPMyy~~F%p`3qEwdOd(?43;QC{;{Snp>_xSE6IKSa;aldtJb}5N{xi1mP{4C-j z=ZB4r`q3GA{45}&8HDf-HfTn!SYr0)r>qoWew!=ef%WDxc?2>WWRf&`IommVUY&HZ zxM;hzLY*(JO9zJd%28*PPdo5PT6?!r;+;zYgoL$@B5xh9l@3-h z&Bw&VK^+VP*vzruamGPw1uBj*`k<(;Eb>EJ8>$2{g!A*Hr@@j*U(|~t>StDZ@bZNP zBH32&TyWamud_TOK>lSMqqJrDu+Z)ZK4avA<4JiHJ{Z(quT#$h@bs17!%_fPj-V+V zj`#@Sa>87LoVk|fgB**Gx$Mr(2oJEf?dmW;45o0Txi7JGcE)i>szLo>b!jbKu6bW9 z(fZg~r0NGPr^h(kE-ra*$|d|kx;GQG$#F-jbN9dCqgv0qm;Y~h_INMaG6F%LgU z{8Clyo8TNKvPq7dtaGx65yd(-*Z47dhdS+Y zn#ysDFlve;oxbuShb527Bh3rHD*oC#)M*6E4k)I4ocT~ED@%eP^qvo350Ju4q$-Lc zp|NxokC;Hs;tX>0b4NLGb*7*kra~Yc7t}ia57vc={G?bI9Pewwxeq0h`Y($6a42!F z1u&ks`3GG87Cix`%^!PgZ)#5e8e{AN;)f7r_qGI=NNi_-;zRdO4=_dnGz|CW%f(kLVCU! zQfv0Qwh(<~QH0IsuWt((h*T{V9&n*Gtl4GPRf_wD3+Gr!x|xKM)N5SdTIu;9KWT|u%YorcYR3zRGNBy_fgzN&M8qAvg2HP&6v1`$ zntG?gj$Xm$+`EomA*$4^M6YTH+)5o6;W9Y)Z+1lxF}iS~TvX&lxze12N-^;h<$^qk za#0l%<>F~dlzT-lP(~;!Dyp#wMTq5*IdIdRCu6gmrzD`AOSa0hK6%8j%uz<>0M2dI3rMT=yk7T@tX_yc{lbiLfzq8J6ON z{d?pu!>NIv$QXia_Vjv`uTa)tR_LT=(DC?%V{hl@DdK4?81T4aVvMQG$JFX{@HV!?3rA?D7%`PTJ4Y1R=1RX>GC?)2KZQq(a=HdWT2T9Va zhnbfPz+#}1vAEo0M;F}Dz?2SOZj1FON!eIJ<+z^dkBUC(^6JqRoB`+Vg8C-_K+p<8 zqAUd=p?aZZnC$F!wW=BZ=V8tmdo)J!C`offssV!(V}`KvVh%82&Kx;VN>R@Dst#Qy zScRR?u#}3(@w0iGCxr~D;IhW3jjz>;>GsQ-(2x`8HeZTzF%0OI%HxI6&%znZ;W&iPJ zV1k;I*H2|DT&?*^Ju~Xz+=0=K34@^XkZzxG6wUV>+gL4&@p$B|VikjwFUTDCEv#b% zGxT>H6UP%*t|wAg-KK8jt#Vg%BW2$`%pxL+ZRrmN7~ zw0jj2G}l##f1R7uLykM>Dr8NTo76+H?Q`QE%GDG-1VV2S8Y!uVz048M;!VC#e7r8I z_Eyk}p-UIE&(&K;B`#EApX^wgrShAo#6Dc7yUa(v*^4_4hiS_l@Vn}5yLORPTwmuM zz$l05I5+4eQ4Uypo``7{Y_kamRl$SgN^PkMB{BtbDjFUniQN5h(;0t!$(v4;?wxL4 zq47q|Zrg|##k^A?ZKr_$rHv}+%P|BIHr>q!K$=hVmIE9co*>n7fdnV+S5I70EqIq^ zqLar)ZDya$(L#+_s5!BS;jsTpB%E@e5xTr&9p#<0=qSsNnx*9K6Cu$Bbqw^^-O8DCeni!iY%%vIwClChpFv@ zLbGT>U}63k8Wv4XUZlnF-brd(5g==9e5sYxlsyF`?&8`abB(+&jW$FsDYazL9i+y9 z(uxIUrzD^P_9j~M$P1t*qC7|zVY=Zd8u%K9O4Pwtc|@bM=<61jIWFWpV@02Fwe}Ck zC=CEPp(BpOxoWm@xE|c@B>-@)1Hi5Uz$nemsI!H+Kn@#kI&e2m_V*lkIN-_gnX^={ zNU2yS{x{FuhSoflhcA}fC-sH`h*^mMYwMLXnGDbY855XVevfeFL!u1MTi^$#rK7vx zSoVSlwBXm9aY8xU%$wB>;94|~Inr~s0Dx1NK%u<{po*i>=;`KC<(Hc~G3zkB-lJp> zxcHRBT`r&v3M1A)i?u@XgVSfvKrAy@c)fDG9v?&-AH9XwMmOowf_*Vgwp;L7U|*#O zi3ClESXih#j*!CDsHyr6LRp!Abtb(EEG;jD7%z3F+;x zEx%nbxP?Vl$WBCD=yYyVU8ow28==TdNKb}*w#u6ze+@LUQj0+x=iakW3HI(sD_A5U zqbOD)0D2W2_W+Xkk(7+LqVIZ3i-Ne%m?U)oy1AvM+x|deY)v1uZ(9OcK4dKsZ1DlB z`5t*E)JP37vz~urfNOtq(4u<m;^N(mLJ&F@*Y^GEaxilx1+{o z7q;r4v231t*ZC~tJDiFsXV@t;B;2`4=E5wJ%uPH5SfBx-#`v;m9wJOy-fFl7v-KV??HPnoM&@Vz(^M@BZ<0m}5BifF)pO;WD#m15leG%rj& z%4Rq9f)7B-wDM=gxW%^Nf`@F9paS-Wor6gJ;IgsKp1qVXucU*WAjqqXPefK6whLw8 zsF7l?MQjmyFUyOIEy{(bjqH|^fkJU%CD$xdQ^ZfXzjm(anisHnSToCiZF0l2Y?sUc z98IX@yl3ME>uK>8reF#%yD}+uxt6{B&exGrS))t(3072FKT%`$v!MJe;ZN<9pPb5? zWxb+ifZ&V~&Yq?`??E@H!NtzKh4Y+r%_sWV{3!XQ{PAe}0@V{b0%^@i&Q3S^YuW7i>=uK zISURnSG^c{jd!00k8$QXB+?9LTD`h1a_?)ZgHgI>2mP zEER!XE1b?UM+j@1MHY1MR3TUWx&XU?4d^vEbEz#HRl7~VUeTe0cbb6xngILH#+w`q zJe+{nF#%7-1W4qx_F~3|rx=Z92tg_w`hmRec26OF-zq9|cbO?Q=8nNX#n}%`+0~;T zFE(GV(bbz5=Q%_R({dPdc%Z&mb9hlVhrGj#X%<0#hmfo>&m3v`t#SvYIR(z$oH8Z* z>(_;T3@9(vyeM1)t*)KSjs9ff+5^}M^}g7>&?d;&$KNi-soa*z5HM?tFJ4*6ZwuPb_cCXxKB3E-3|K++_G(dH)egy^;;8jm7|)< zvWH>qGSS0D%&72ow$?GS*@2cJT?83+42f$qB=Q8T)fXv}f30OmYf#zjfC>^rBAMNg z9za)#EYau=)NqTjhq$q&w|b|1ur6abn1?RgDs(YtEIW&;+GWH{RVlDnra?-$?R}W9 zml4n%F)yOkfUOi~GHv@Oco;ps;Cu^61l^G{z^QRkLUl&b@}iW*AiCV@uc&9;=G(1S z*+b1uYF`Z?MA)845LH)bU`aj19DoE5K&9t7`1vBfUlaR$1t!uHwgh{~6N$zv$?`Q! zq+-!t;fZ|Ra3Yn4=;ci$oYWBi3pA0WYB93zAC6J#U2lw{AtYWV1Mp1#%bQIv zcTwQz?BI13wi&uxM!g-7(AfQ40t!~a!4@Gek1KN^(CyL-((o_jc!yW(U9568aM+>o zcrp{j4YGZ4AxRWe(}TO!1gP>vx!KAfpy9^*HeM9F7fa2&oHRlQR&Wn^J zKastA+rW$WmKQ5J} zO7TEkD!G)FoVip^C@uT+Qlnk~CAXL+FeRG(N8@n;_Q+~Z7&L8jp>|kP7bywhaEh95 zd@B?_S9aaaD$@c0E^rYN3$x`BG_;p*y{5!2QE4#Z=4}nW)H%D>v90KNE9{B#yLiK&NfU zjuTT5s%Ote^Q5?K^YzVLkILnf6UE=HyXKpl$NQypk}iQ*`xwcdU8g7xePU zUr_})HSs;VYxXzyx%5wxSb#zR)nfCst4*sXKQ`_Ts2~((-1DG_q=I#9k{&0P-D8T{ z2eYM?A;@^{v}vx*5ET9332>6gMa>p-x&$MEDX>bV2oMU!u{zdg3fd_GN6^x7Yh7lJ zKqc;6M7}qp&659N5&ggTkd%S+8Zo!tpNi`N4_xRys0J39@S&J#03LIIXHBswBU2m~8`n`o`IkHNg_kN_+2K+N#oF50=sT)W0r+|=- z=f88U(H{%yx|Ggx3mS)pu}iSkcZ&NpIoJwYmAhWB)pzU~Y_Q$L_&a8)EId23uiSY>T$)PZqLhakU>_CsQO`^=JRzKHL4Q zqPyYSr(K%4`32CNafxUdPzMZZ=e9TRFiz)h25qIF3CGY{TP)-81t@6N+4~Bbkr@d) zhfO}mFzhd_`*-}9_wD_?h3+8ydr?_h)y&$x;`2o^^fI|5uD7GaN}6*zC07JdD%Zo^ zu;g}+*$U;p%b(NjBaZA)b}bUa7zZo%R=-g`hiV!tZb*%FL9tJmqdxi3?agJDrY^*I z^T@NIR5nk8UD=su-$*uPr6fzu4ImPtQ+^lMz~Gjc_;e7~uF+)(iaD6taMnDw9U!Q$xgW>hC8F8^9 zF{uVnsIw0%W|d0~c>qELc`N!7KZHm& zj|nX7U3)>)OZ?Wm_0}c4w|2+eTb178!Nqr= zRz5f43n!r)%g67dP>|-u?R;HquFJw2C)GSlckYwf%IQ2kiLUpw2xSX{B>=4nEv{+J z$LD`;7W{IojueI-APupTG$qKLAo&lyFLi_t?=^Qyvk@KxC5auKt}~iGt%!FY=sJ8- zq$l**Bamrg?}j}YK3wufN??cA3u;{5F#2!xi&VcJm60_kl0+!V2dTlt97FG*Q`b9H zAi*A*R&+y7YJtzuO%ySy;3altbA#r0`jH5(#S5X)YRP3014*ws{v;s6>e9&TBkQ1y zygefUN;Cw1GzDH%9u$5+Av>%1Cko44C<_fm!f#f&aI8W(VflQV3pru9XeLoO$%W`~ ztd>RLLUV&OMcQ4g*U*|z-9h&CSmTxq@CZ=+Vu%6CTkG;DYfrZb zcTke7Db>^js}!m5UCuxTL}j0LcCF|dvgNFN^Q?Q*}McVd} z6_G{7$Dq?EJp}N1C&&G>eMjpbtoPkTrY{X%JreulN2AsfBKVX?olag-uiY^;AAxdP zV`x1f3RW@SX2nN(&0&N*KUYb+#Z1%`^1rh>B^3bsJZZub}IbWwp+8xoL=3; zAe3PVHc6WIPf+n~7U=4knJP&D1XSK#7**$9a_pR z;|)#8v}%b&L+CW_?C)4TH!asXRFDIs3M2^@*Wm(KC65CtjCOmCo2O7cjfVoPh(WHX zz&uT-Z63l3Y=Q|R1?vuQI&$<7a4 zQ@%^F+Vm>96UND%5chH?#EaRT5d9^aEX<^>&Wbo95!4vAgR&VBd$6UrMh@J(FS`6g)OHf6s9Oi}?jQ6_B! z(*qq;$M3E61l$$Z!C^-+@|LYt66pOlFUzgiH*o;&Y!2Ul<)B~5zKLz!YI~iBaoNB( z5nVkV8^I#UZ)^mc@2bOBV;vuw#6_)*VEu`=c%t_{?mp)E%hn&Nh7ib<<`_<^iOwlh zr7HM?zL`j3zP8w5tzj!xRz}Gh^v;>Lhd5NDGr7BsAIUO=>Ye^S$6V616aVLX$Khpu z5=?zfub5-CK2O?XAMqIWFAgSeY2MoCH^cSvK!0oFh1lmE@yAtdnuCVzlN1&0Lh-j6 zg|u2_j1mfT6eNrGogk+(f{Kj#)G2(^6qp8CbtKHP)7=*iVo9JW5L#$R!1IZ_j8zDD zjQlFq)g$yu_s=_Iw=YMCn`=1&#TLrj-4TPK?oOM(J0c^UV{$l!ty|=#@Y${NIbs?@ zIW$FBI?UItF`2}5FopnO;+JU>73P!#6H*Td_c*Gg{D8w!A=|c{B}lxsJQS=NDcRSy z#B{T2mwik?*+a_+9*y?=A@Kl~-Z?~2B|tbK_&XWTc?Uf&!gh6tpp6E5L%)tD!>wT$ zJYv+%UX528EOWjME1`cDV0kW9EHs(Bf<Dy`3qnoV@V z&>XR1(@85Znxt+>ZrhIQ=>$C`y44waWg!i+GRZlhtupyj>y=IdDDoo6iJf!^(VLV2 z*usTt5lL>df|}scsuJ?doNLNEnv=hd3U4O_tjE%wAZ0CgRYx)}leI3k#8yigBjPrL zto6DL1po^|eO)%4h%&_KzW_M^;6SZeNoozhvA>;tpaZpLrCo9nqg&}O zxk#;9K`n_!ZsRy+`O2l%u=}X5*5Hhz7q`|MjDKgfrfXAbjazBe8skd8TT*LQ+Wqa@ zx+S&7z3!_uE9#}Xr=HN&^;?`K z@g150;ydm443Er!%#lwQLguLhFNfH(#sat6jn1>mDT|;rqvyv8Z?hgdRCA<6q%g68 zfJ*0zfjO3Jh7Q`&A(~nXLpoF^SGm=pn&nuzbI_Qrmrh=tXyw%pPIipuKqU}?veJ~8 zJ+iXhhm7X2zc3+fS=6(1Q>yw{$ zTZ5|1=qy6Dt09N0$<2)QI(V~~t51#EaY$EUOENBw8Xq^vT}S94>a>G|_>nh{nI$Js zUd$-XyyOh=hGU!=?S|uT*H$RD>pOp7Jov`ZsQK8(;jU0KL@hMFt(ebk51ivRcYS0J`PoF_&fsqO>-lIlWNO z(`8r_ilL-~s<`#M{K^}~6?)U9-7&_e`*}(mviM>SeIRy)=uYWAt4_A=d?j!26D5;X z`iw(a9+)4R`dCGFDTa(qPD&>cIee0R4O=ROx+q=fO3?!xS`u=(K{B;k$WBjlN}q$D4>0nRY_?>fzs`= zQr3Y*Es3xVj0thUzcF6@j@MKBC0B#=>6Mmn<9Xm?R@{aES``H@h1Lz~O#d+{t_a{K5?1*3wl{^-C4pd6QKDJc# zr$MD8sGa7S(EXM+bEL`8Jw3fR&xh_A(Ivs0;a{%*CdPWIOVamRJlgy(h*mWCazK~X$l26TZ<*>q&3o^bMdB_+usp-+;UVe#}FDqB$i2LiGrs)iv9e zwTZ{q96waOP#`v0!&-n#hdjs|LT*fIi2XLno<4`uhDshuaUL+M%hZs0JZ$Xs?F|gB zY}DO$Grg0rx0aM5;vh2{xGefN z%&*5%=wW8@J!VchZ@`(Nl zE0<>DjmgSr!iZOkY*$5()KU7V6R}7VzvrUo{Z@!6zas*tPl@lwcPg{4VIJL; zF`fcunJd#Qkw8E3NJ!s3i%bH`@;X$~?)8(MavU53T&RIoAL zxs=U{4Nf|eM`?KH@r@f+_4f%p4FkP;G}ydfpa9KAc;kzfK-&; zw2XwgS+u#W^SA9N0A@1D`hJQJc=Hs%Z*DYTl3=Q|?(%nRnwxnI}SJ-ijM#o(q+EA8wQZ{fiG;ha47t#T5eD5-akH$c={P>0Lr}as&tQllMWYT?9ymgpl&LOkJb=c7NBmXI8Jqw zgd2Rs{u}WfD*BTI)$tO6%ck_&1xE-`(kH3@W>q#4_!lH6woRPYw7bBMo0!t}rDU9uR z!^i6H={AAvKdy@9yad3msq&BpFcLrv6x(lvqm1BfQKKxRFyV6Oh@-Y^-kAQeiO%tB zUfWX-WTK@vdm-Gc)b-*8@*X><5%YE$LfcXZH;Wn0N|yE`j5j0lwyTv@OX(Clhi?NG zb-wKa8a!qp9g6)m!08I@F`3)?CVA9ueFLvrFMBh}t22rD98Ka7X(>l>h*BmVO4Jj< zy0<6l0^;R=tSZKLHf)8r2_2~_yEz%phzn61Or+hdWkVBsH>f>=&CwqNSKb{=z^o{AGs}NX zNm8$@kP8lRKkN~NmX^&@$eF`m-80lNQ2K$pz{lCxA!mvdc!{0`i&Y23eP16vzM#(a zR?l`?QTxw|cF7ESse)cWDp)z}TQDNAWNl2Srtecu=F#fkfN^LBMvS(YKBO&E>v8>m z#kHyDe^b0F&|zYxXH=f9KdkH3_Z5SNdxYw`XCsuvrgVsCbB~tQn(_2w`jP-V7=nO# zcPjpQ6;nbdG1@@UwPVc(^=$fOb%DU_>A%&5Hf(kHTNisA$GyFAe55yyf9`SY4Ho}v zuZ|D(>iEeEsN?+o*cWpGtUuv8|G|#%HEca~hTwgF@Oc1RP5-4nX(8C$<6^l+faF=- zOn*N?5+uBWMIaf+=lX9wJa}vRZwzm$Y}rLUTJ5^{i|!))$|A#@YkTu>393C@Xn$X-e`aTd3UD&*bW1yTq zZbyy!xG91_B10LB@5kjo75-0uBCg_lKC&&e5F%P34SX@9Wj>050>V~AixaT}(Ml>U zbm!F0)X?;vaME%ar<-|1(NzP^u-Yg~8l(0bb5jL39`W2DMP|L%)T8uTzeo5EUZQor zdu67Kj_xpJKsDtXjuR&Z3Yttn+qb&!`_$Ero8D=x+oX+k1G03)w`#t^L05LGoN z=sh{=VMvwcp07N2<2-kRK^o7@@I4D^g=EZW`#8DDLg|Se%j8-NyiwYt&C;lWqH;j? zaA1x(UZ4&&@m2Gp_+gr0>b69j1x;xDV*2Un>OU1H&{qc-r5nmE2sfn%b&aS8(|=+- zlIa$gZt_6$RNJKI;cKbvie6=_-;uh9ZuRoJH|p2;^`bqgdh4U<10RO+Jj?e~k-0c}yEMCtn?=NXu*ao=ig%^xN$cT3oap0$KF z{m031w|-1ZGJ3Flta;yEC#Toa#XpRBVtWIUx376;CH(EFR6dJ0_pYz$U9(u}*Y(c+ zn(1Y`#*DW9HrM?8cTqICVe}4NF?el{9w}5MtA3>Q%$GN|S68)HSLCa<8HH{<*M0QD z2+fLdZH-2Zif1pnU|rM_WByYWTs>OiZgrJ6k|LI_Zy3RK+iM`vUZVl6UXp-T5P@AB zbbV2_g5En{wz@+Z5^dXinhsXka(y3NB6~-ht?(SX2gXS)8aMY;c2`?rL_l6!ey~FS zMoYSf-{uTPt>2k`F$*;5vS)C;QU0K*l+DoN=7G2*#HTqMm)h=xyP1Efgf%u;xOCR? zNR9wM^e!v|o%ysmsg9^P5xvg`)yf_#fUTsMNCGK{`McP=FVV*b1l~Ca=KiCHI(8;? z8gEZDp4wzUE^KeTnzWSEWRLm-GJ^`mvR+%BcAkUIu?nO zt|IJK@7n-r*yo$T|e2`&z| zg{WIhG-^cmpTONzORx1_pB$L7txwTZ4B@W{PTH zXdAXST8AoK3_0HQmPIe2%+q-MFi2Wp;glrA%!U0?(Db-@Jc@h6pdaJr(J1bXgHDZ` zhod+KlGZ#Zekh7lih9i&-34`{IP%mhGVs1i5y*@?kmj(mMI^AwkI1sfa%5bN=jcfV zknlM4oV7D{&vo~B#nV}&@jj+7S$4bUfP>RbWRI!}op1^Qj>I*^8qUF6x{N>9PqO(C zre88^T?u1r1-ebYl!!{krFM8~#h8wWHrU5rtJLY$j?>* z-}lN&50J*cwOl?MO9JZzb3a-84(Q1A6RMJ|{mC84*mpJZ@Fb%j+e*)GV@i_AA3#E_ zM}K7MuofqGbjFj}gX=Y?i{|pna>Z7?ml<07LZ#Xi1&3fv)1;WK5#l}Y_5O}0)jPEp z+mCxSiqpEYwA!0^2}t4hdFp!wfkY>^18EgJf4(d#n~?)M4e*KLTH@elKpe6n@r#6U zU388Brh(7uV$QfuTXyx8r9+|)t-cD=!#0ar`asf>WNi0V6I?+Z*{!clmK`yxSsT_e zbXz7o*sa*X;jZHEU=+P80YlqJ1XSDt$0_zB z0AdJ*N}$gJMDjuI3?o5d0Hbz3cIiqVGJkGh(#f?(7GD%N5PY&npv#k^zoUYkz?2?k zFqr~DHs#e4Cf!RM?uCMBm#*vzrg!eN@L+u1H2yXBKB47?)p@V@M_o*w2zkXH(M{_W zPyTL=ATN)xyzq)N^xz&Ef?l2*7yIB7AwQf@BcKm{YOxKREEVI-61^j?IgiF@Cc{z& zmJoUIEj6h^zwIE~pzmyCk_VeocE6A>98Oa&9aIf$F(%E5PHN--n-8)(X_>z(Hy>mb zk0m?uLqHYN6Y>L;MMD*99i$^Rjd4g?g_~zgBX+S!Md5F0<^Y9wn=V%EmT%;;RC;^na&A&8TDJ?nQmTP@oH^SOXx8wMsz|8 zSHN)kA*&@TdeiC$WAwg#kHxMO#acSo_KGtF0zvUV>Y{nqq6w0Jhb|XylU4~-9{9m8 z(5au(Dhqs9i>G*dblMESjmEq?M*w`d-~Z-?-w0`b;`cs!`5J;ak2Gb0|? zdq6xIFygsctr#$MI_D!}-OuiZbs7j*cf&~jJ2_w>UEvGee)(8O496>ub#xRgD7InU zz2jnSr}z%ftdLfzhk-}d{*2Ac3ZoONVS;c4O0D<8w(r)0_pqCj@7c;JCc3#~K2>cN z;$LP^ki3a@1p@amb~IATs@|z+zy8v)GBHjo>iHc)phS(^^d$C0<#- zIl4-V<{&Y9MdBGskFZ&!zG*MGNpVJ|m{@~Y5x-h;76l=lMu;9N_C%j$mQZQX@j{Iw z+%32#-!_}jJ#~qlG@!xcpcpzzj51$RB=CPP|`n-Bi$K4%rLxo=Q{44G$ilzd?Dj{57~ z_LufoKR7PdUv(@24Wx&Q=YlLNbq`sX0AWWF*dca60#0@riTqY{y8)JLfC4_U3Q?sp zB?t>XA_OrGWdzBoGMJNT(6&%&4m(siX~sm`Bs3FkBb0e@Y$zq6@(e zQ7jIN^J0f_ma*-Q9V-l3yPaQ6?D)_Ux>A>$y*$*$hV@`Lt};m4i5nWT+ldL|MIk28QJK+Gh=6`h_?;5V8+%#bVNplD z(7CnlsHd36{cdMTCM3_iinv;Bn$rw}lp)ESoDBTtHBE+LnC3{Cd?+H}OKF8xQt-jS zY$K!;Tj}nu4CU4+dMnDA6J9Y<5*c0Aez@J7xcLu@#U&|lB!eh>pu(pZTtcG@y&wI; zya5~0S^um=7<%5b3LyJ`!4nP{8hIi(MmK~5qlF1~Y=UVMn^2kZV!|fk1q6r6*3EgS zNd`jb4~t1c$flDvqaPy+85gN)QKCT+q9k|2jN>Ual1UP?L_(V!x?G`T=zlXFSx|}b zNMGQ8SPkS3PVB4M=O}|D`U3p4TXw1sbp>%ScNfKYsK!q(rn1>3ehx1K2iNN<)*D0P z$y?VKMSbm^18CP}1M(JQr&6iZoHD2Waj|abT_Tf(ER*sftl{mVirpcS2scAxe?Y?t z?oe|A9y2GvQ_nY7MH5uINK(@ghT|rpTY-eD9^u8}$1BQCC}}AG&X&zfDh^}4kZ$Ze zDFkC{&3`XkLsrF*5jLOt{m-8uq^x=7S$^}81&I-u(j(7b<_u`Xi8IisZEhhSAQe$( z+i96;H{OOd3!*Y)O+UO-)2*u&54^KSGDezXB#gvG;6$p%Nb4*lU>)i#o&#bvG^^~& z7HrL@Wk1V{VOpD^dj-!et*efL=3&7Q_dq4#z!F}RV-Z_xPOlV@2W;j3vY2EQp$j7q zV#3Xkg! zT2m;d4|?^$S_l3c&jGkuPmbHyJi`;fP-UP`|Al3?=^Xu?4k?9NR4Nx;tFilS%siCV z>CeTo4eKT!(-jRM#fie!NVw8)x^)ln$?Vo5#_2_!PmH+KxKfPMht3Nw+&m&vjiLh= z`Q5OfiT4(O5}bO`(YwGYsh2%C{hxb=)6eY&C!vYpl&wucHNoj$v~c?PE^uNT-D1ry zaB6ov{Mb^lG6+Qs!5hn4MeDI+0_27%o3DPfqHx@tIOn9i(!#itON=R*PycZc?_TI> zMJxz3-_YD`?_thw&(d>;O2QxV9fyM|YXE>!v!Xb^AO}=IW57_%M{Y)^ZaiTqlysSxUkNa)werm`n=+y>fms zJfv_KCg-QNX^3^ih6Sl;L+C+E=(cD{^;lv^A_!)pUNb77sL`aU2u+Q}ps#-Q7e{Z? zfPkZh?7_EC(*T$?aBwc$%t62#=$4kHK)2`nUPZS(PzZM!pwS}@(7lNO?N)Kg%ZYUG_(eZbAYp~fePlK zwpa90mU(p0J(;7B9l;D=62=?M)DRs?>58_)S>4c?ZkpfVvl&5|)ZhTJb*RmC3PEA} zEi$4Z$tf@-FU<>uJCoPreX{q*JCoPbgZH)(#MiMf2S^e?0^co-=xao?ude>%aj}pU zGtSkk!goWP)HeNBmeyJo${GjNal3?MEX8BT$_wd{4D7vyMPK-+#QD81n09^r$q#kczt_9|hZkB7Qh- z{*Z#g1*J5VF>l^5LMec9bl4hypX*oO(52?7eu+AzFV&M1Ur^uj@~C1^G_dLWv|dUZ zVhOy-yS9cTgV9vO9;;fMG9RpzM2MXfIHI&u0>&ucBCzAj<_CUD{=09e)j)IBH)q|Y zbh_V9h*`yCctXnNe>}FaFsjO`D!>ucRv>%k%fCq_Rd5m1*^lU+Q&SMF#g(Jc(ck^T zul(}Ad-PL3^YrLDIauST;wg%7CAdsn#m~8lNvdMhd^}YFlUwu>d&Tc0BbL_w#o{Uq zFtIq2sQ<)o1&eF$`#6pB_~~52Qyrf-ZP}dmDZCpLVIfm&j(=ct)F<}30K$WgKI|p2 zIb#q*A(QZNbPIlNMp8CUNYO&II;Wmy*90@;4pq&wUGuU?$r+goyf6p&2g6aa)owtj zt4M%a%jDrwm%_~d{UL}`zx*L2PK}PB{yGj}NlJdiNiZ`2o+%W!OIuz*z@)OXD5pKW ztN%*{ZZIvC-kh7BN~6J7pPB$o`?oE(=pyRm-0v2-<)E`m=ZZJVrnjol3l+_FJ@k4OlK9{aES4d3N-_}dz3 z`;a@;;Oq(s)16xH$?{H%*t}kfzrxCT!dS_M6Y$2<1aJ8(w3DJA19M!7o7XP%Q zR#}zX&f}6Q*XMBqRZfRB=p-KNaoVbDH4=|ZZd*2X{AGmCwpC%3FRBQ!ye0l z43eGJV{r3xqxdZ5W=H0YcW7Sz*trb?Tg~p~M#N*vaO-Sj%kqUeX@$=KqMt|_FmRCF zJu>~N3K2YOWucew9*nfYF7uVNEB)wW}KJhV3sb(W%^SaKu zT5Nvxe^Tjc!sb=7M7IueY#4aM(GyQ;g&sZZCT>1+j)UcX1fL|;AN{Cq-p|eT+??U& zlx_g@(G%R9elIs$y1D2s0^n1D4e;sFT6i46B^<(6>nW~)P6Ju?@Esp*W zmydZ%nV2UT@vcP&{*o|AM_GOl z-qpbMbOA-^Z{>e`npvWX$3Ff$p_x$w+xqeyUIm*eEyseNVMh{xvx8Q)8&#l{p*u(` z;|GofsjkB9(Gvk}qKhZn7R5cl0#OZ1E;r$1Q8*M~PI-qkYX`#QC-N7YdQrxQmql1V zT4}yFA8yB|x6c;At_hg4YK19ZR>B&TBy{v}o`epE`JgDzh|*-qfZKEp;Hg9^IHCXp z2gBXInDwT5kB@p=^C9Im>;44noWJ@-2Z2WQ={l_2Snq}Ngq&jK!rjU5Apca7Z}*4I zokw5-n*Rhc?th{rG;CDJpLnC#{3q;8?0@3m`wDT1M>j2uX?0lQ+Up}=YL0|Z5@{6z zTAc94<>2=n)|M(rmAFbm=kG>ScUA`DtRO}TVnX*60#%-&w{kwHTl8PPB&z8 z3@WfHaGg$I2JNrN>cO8e|Cfu4BV8A$3yaM!S>|1o_`yOZmtt3P=>+^!@B4Hj7YX>M z^PQY+L>NM(ZI4w3M)_>M7tp7F5}`Ffod4oOE|_q$^?+(6uOoVn zxyjw}0diyeTqy28&Bfu~TpS+wc|03rI$VS(rAE9ifph{x!VsH2VuobS{AIt8I5QeW zyzt4yv8dr;zmTj{wo*xFSZrQYDXc9N5uB&4_y6%{9K~x+o)iJdzg;dAM&Sigq(OP~ zE?6zu3M$a`==iz;1cILmB7v9*e=3%DHp)>kkwQ@`Y44ylPnd4_)`du=tr&$>Mx*G`Tb^{!)4y3EHpwOR33~ z`Qm7Dby)mtszec2y}>`5Dj{59SR9pX%oqQJhqG^3{N+^lbXfdcD!$0YX%haxh2!R8 z3Vkr?r1`b8lI@*m;*##s6LXLDcaMH|?$M>)qc6=pdYvEPZT-W+gQ|Ibm@Ohql!)f+ zS8#FQXD#CD*rtwKQ(6IW+*J@-xJ5zQ=@7yWY3OvR#1-jyO2v8+3zr2Ri5GOpMknId z3E)J;5fu|sjSBe$L5C0H{Bq|4#M(ZIHAUMY-{jIGIOQ+BSlic%HP!?r){+9oox~cE z9eWmQvHXKpE+zK*89EccH_a-AQ<(LlN~DMiy&xn~N(x1ehXM~PmnfmZ6tTevNK_ri z*|90T{N`5gmqyc%rr^L8conu`=NlGQWkxw_-doB?P93%#Y~adv=;{#nZGB52lKW!7 zX_^o#kbQGw(lu{Q>x|z`R-LyH367pXHqmDY}*Uj`B1*s%zo{%6H(ae zFQ%f=P8NnupuFfs&{r=sFGY5x+EB z4DYWJ|5q~mP@mhchdiLCss=PvOayhy_@?qDW3ULbT|jQ>YGRB zzX^rb{_}qCrFl9WGwYenUk{5Y>zRPfTINd`M^d0Lt`5oaB0X9_JJG=>3Ujs8XjnOVSIMM^soUqvVbb0D93^(@l=6)751vtKfE4TG)FI%e z^^Dr7gP(&KrQ^il@ROa21W&p>yv&4JK`Y61h0Ieg!7h1ttwTYBtG`Bh_9Gr{S1d!7 z>HeiZVhT*cz(^(%rH6r*WTQ=mzhM3`V&NZ&NZM&rZ~FMh3e3&3m_!dDSt#RX9{=z} z3ja8XbWm3x|6EsKjU5v}B$;6LPKTtMZ6qq5;Ax23I5OUQ3 zxvTXPuDAb=2H{<35ZHwX8aF$m4H5A1= z@M}PH3V%A8zu1#s0}l^=jZ)r{bP3IBJxWqtn;=EHx)NHqehqnIGGz!UsYI3_>}M~2 zjq_BW2xmYOc6pIDd; zshf|KH)7z|U|ur<%dgQ#U_fiX1~jY=h|ChP>ORpc9;NAaOPX3U`QQf>EdiM1iV51X z8QojQ?-{Z~&H_&k&f;Ttzec{oU{NR!Wy#nhyMLfqv2OcP3V~_Xt>{ho?a^P40_|^4 z!V)jxGk^c-mI7JN%Xg6faIsWtA>{?Gg=Dd5e4eL3J4+_b^KFYkfnGT_1!^zEJO#29 zxp^*su}2D=bQI`IX>Bb9in1~V_B@N=CF2b#C+kp3$KEOMJk#l4cmnf%3TB=H(ajI`OewO9VQAoE;OoY>S=ghVNi^jDlqTn&R| zi?YA^T=rL=%l_(f*T}s!eJ+sLUVY{OMui?~ z?<~$woHgD!VAT~hxk%b>IWSFmH*ecoT^}9&k*B}-kN)7nzyF&L-nn`idakg;(bfDz zwbO^iH&$=&k|PmbT?U9y39&P!J+OF%dXW#-!Yp+WN{V88QhHjt<14LY5nz1J7m=!d zZ~C)pVpC(v;=E>^V6^&mdkFk~&!A(I)G^dEbqsHubakmqq5sF>9Q4mc^iS4x>K{vA zsegKW&okV}3^w{|HG8IOHedFe{fd(9b*P%>LG!gaDv#v9fIR}sO2wOj zBj<}R<9I|~$nj+kVCct}v7UfePvOJDjU^V9rJm8C+*0yCoXPv=h&{z<;t8Jbh|lH) zKEX>5hB}&vhH?bix|=1C%|U5vI|Ze2JR=|EptNm0YdhXn>7X=qGAQj@YMkkimRBX@d@Pxa5kvX+JEBs?Ab|K94hhR&c^tYW zO=llRBdR6MB!1#{CiTD(!|IAw71B)NMQCSozsb!1h++TVX4v;nc1m@F^;Bt!>*DIs z*W*67BTD}2ag-*@QR|@&!JI988>pq*utFEH+PMj1Q9=h>kfRFNAGYEOa7XZld|K=m zK+{?wwtsWYkFar%&(<4G_71L3nhLU)Oh2O7dwIXs*g?EL zfP*2DnixJBv!Lk<~CUX%pNL?hlX`g*`6U`QMg z?I`>qV;&(^YSpu~p|SsBE=9AUD!A1G5xfWBljycks$ejFC|ExuZeRC zaoyI2vPisA{ng5>iB?%AG^vdBR;G}cuUly5z`G!8Kwl%8G;iLa>jjX{U>NZ(M~;+D zy1q+rnGgmRAj-wx=TZeYesA|KQ0CQlQ}}MKw8#0{@?Bh!H94JLf|+t{c^_3CB|=!> zZypSg0S~AQ0JvvXnE~j zTHqsm@-{6rXn`lHXY+IeK)fpdwFf)w~lN48)`DT-^&o9U{8l@8ecH_i3^+ zD!rpFx8qq1;M(#wkBt!-h8kT5>L zcx~{mtNV{0=(?d$9)hK`(oDDjQf*bzt;B>9{G&=1zy@89H$KpNgMpkxmd@3@SJGoj zXfZ=w*CzDa$|H1TFbM#)CB8(-&vcahNH7akCoy*3>4e-2f2NZe!esVzQhC~Ti@rlq zJf#bBPxY<%U1kKk_Qi}VI+F+|^RVH#3ISd5QFO+L!<6Q}xF^@NPvFagC;K;rZ+Q{J z-!rAc0R&wo5Xz9(WL_u^MCi3^1nxVaz@ZLD=zKko0Ftz}eE-r7Oky06pDm6hePr^Q zrt+Gm@|vddnx;~|rm37jfJuV$ue7JvG?nez!6*L$X)38NuW2gMxBn_=D))~&pGt2N ze>lN#{mTi4Nv242t*eQeuRnJ5hp{+0S5SA?V9iCjd<=1QRa-XtrsBin2QBQ5l$-#un)czTqYn9xqSC8<~*pQUwYaav~Mw4fY zBIm+$6ZoCv{lH&E)%-(>pHpAJAe{cREK>>`T|}!sHe3d`k~+(N;$nZRVNd5Y?6uJL z7y~1cZC+zvq^j_o{86j{(PRK)#4EVK@UqI+g;6{3`tg=yS^@JK&YpG!PF<$M_*K$z zpN6%M^>l*)uFnWu^p~%v(ci)Q@}+b&?)b6vRt(k9TL~{eBLFqmQOc&p=A<2rC%-75 zrGzcNuwHK5S$uz5cstQ^!j0sY8UYIiRK?isNM$8fIHWK!W`JQOEaK+C0Fe&icnb94 zrG!Yl1ZYz+Wq7n2P>Q`N0wgo6XZuxXpCWC$nLs2U!%QyCe5@;1YanvYSgyQejdmLl zZ;Q{Ku)2Ej_~uH*C;I668Q!^YaFs{;f9plN3iGm>S1TsR8|@CRF^gDAk98-nR$vy$ zT`Skw>2oLETk5o5nO~6v#(lpr`hF9r1g_G$rh|Xa0sbMj-l$?Z6*9Vdm-$Vzwd2H% z;=l(6WSHgOa2iqDE$X;@4>rAQrSd%^oup2ZPhV+k8SkyxIMhwgPt)@R@`_m^o(ZP0 zbp%?&VG?e2Zho>5uf5F)fY<5`(=gSkTWldxj%9w2#CnGEw64XTB8_-bucb~!Z`!7C z>93`IM7-lExs_4z)|+P}9Ui$#wH>CqZrh%EbF-#uwxMb8WUU>qCu)|plNJu1EN$M^ zTj1MzJ#mwj-f@$nGHQN%+vF|1CevK=ikkr)l-`0C;6}Tk!^h5zlwXh+Kn6wa3dO0w zo!w`gIj*Gnt_5$|j!4C#!Z`I4k4@XpNv#URA~n@(BYELj*h*)j_22yqW~l ztTaO_EE>rh$1+u9#3#mEXf#BydPzG6S=VAipC4DoxO%Pg^sRNiy%5<*+c-?$^GT;cQW;vQZXHP z7waA(9(A5q*6UTBSF*&)ftGHxLdGhZ)^f)QZlae-E3R7pH62RBnj^pR zWa3NHUr3bV{j)WK^r0wdO6Nv_jGSQ*7ziu7pgw%M^W1j?8=b%->77a&r2c1&&@DL# zlzV!CNz?{zyp?uxGGt?>$q4E#uY?|^N9&Uxo|%xrww8$J@D1S|L=2)QA|4rnF9%bn z9}ZdPrGnPq3Stt+-YO7QS|Ed&mLnL1T$qOxK*T{{W!g67*_Lopd=Ovrx|Viyz;Q|! z>V-4Md3c@ISWTSAheO6Isg4%TP#f?-gGRjRz#j1$>T{(Er18DhwURjIp1<Fx>v6}g1| z6G}pXlpRffSL(~^nOyrczlqImR$R`@&@$_$rb1yavchsEA&J>72$J(yS z_@w;**?a$ByRPfL@BFyG-n;kRcY*gnf&^rpdj(lwEt>F*M8Xsk<6ulu6fH}g_76B= zI`~7=Y5-1$fH;V!l?fh zw5`~*Oj)!=yOi0_cdfn8IrqN%eu0kwBoP?ko}c^dz4rRO)?S-ePTN$Z-d)jK}Jm<+YsYcFI z^P6lq;a{1~d1^kQO~9HtPvM0%y^a^yA7*Te>IJ)XF~)9$kdxpj0)r5OiUDFlkrcOu zfSmn_kOSlRNm8DW6R80>DgVxi;cZEh@|QpSm(KiIbD?qHUTK`q9@>2ch=t$%|B!|% zi6G6(2^gvy9RGY>xl*TEn)y{&n2z7=H7yr?7l1~IOTx}yX^*oq8K*kPvm;I{6pK7t zWLhq&*qWA?WaT}NhGn}&a;vt)LQ0}@WaYi}^>^)4Ngdu3vbMZVO>>c`qQe>llczuHEfMAxVI)#BdN#H9L4F=oYkW^z4^|O_x$7hce1MOxXS z@?&~tlPxNj>7MW@9sQxPtN+AQ&B;5I1o^{nsO@F{q$5dSK<@xJS^4kmew&fp^Jn#k z#ftPcv*!sA@iFV-i+U$?(dfH?sik6S-sZE`rqVr#KW*4-d~$8Gq*(ola*tq-k`j*X zMY1`Jf9YEqaCa8QkJ@DkDPa7#PPPo=KQb8qlesWm;mg4o67F!3vq^Fs0Km* z@I$&i`nm>oWrXoh+bgZcDqSXbDTHb0d1|L3`rYQ!bPW84pjDp-^} zL$W_>m!%kiP7gIGhnEr(@SJKMYd-b()Kl}ZyPn7AZ65ENJCA$;F%6f@j#yXM!9Dz2 z6&5|!z@mtFj~Ni_X=*>v*aD3Ci@r}9DHPwk&(NlBxh~eR&#=~i1ynik#TGj(Ef6QKPY$qIFE`Q$c zgt@#L>2#LRYqGZn>Y3>EqDA)6-%8&lF7_5w)eDoC^dfH0)D<9(c+H61b9sKN> zC0XJgEuX++QYX8~+xW0F2J@tHvX|lEdz39GzrH7J8Pk&8a5(m^?n78UL7!rIUfDSG z@bvY`_3A*id;(W3XAL{zhgm+6TLwtM#teti|5Tvco{BB}aD2zCg2SwYP^IXpN8V;< zaV5l>k5qlAn#3wVs^&NdAHEwn$(50+4JQk{$hLl)!54Wj0=P8_wv@1}HA$*TN#dj= zVN#NMQb<5uJ1KAGQ$SJV6yv7NM>Hu(wLE3bM>HwchpI^?1^ox5wOKQn zhbk=A0%{GuNW!FW3!ju-O3O!0>)jO@5YJW0wQ#w7veuf*TJPOEbt5txC=9c9zvn}7 zBwtQUYnYJQn{S!$Vp+25MHY*R8_~vHmM&2l{pq%>){TqyCu(=F-29dBu^eI&nlS%dSf1e3 z>V(1=boesTvd!L)Iqbum(R7$&I3vnw_m5Ne*xb(wit^HgI$b1UB2t*I_MHR^e@P-~ z8DUd|b{T8@Tzt64!*yXh4HZo#w1(l2zYxd~&5X&az*4HQRr?y9^B&0rE#`gC9XE{@ z^?mCsUyW>#OM5qO&pU-TR!zJzAko5FAoV{z>hy>`r~J$681(b(Jdn;B-2$j_wzmEV z#o-l#3V`6c)@J3ZK&64zmojN50T#AzSUi!Uv@41-EvNwk04}FMg0}hWn|hO#r=BKnE6&;{~3X2vrtNT$ND&6?E4{rdFoT zuBnTcYp=*$k0m@tY$oy42L_A!!X~uB*Fzx5Y3;_PBmCRieK!YzxpGxL(wkjAS+uUo zt(h*LB5NR?Tuz~t>H{bXhniF)_tkKrr9Z|{pl3q869I>vt^;hWPPhgob)d>j@T-h! zv4Rpq)y(K+O-O)`kE`ciMgs6iQdAyer3|1h-I4e1&Ds=>B4BGFLa zT}5PAY7oLR40W+OLGv1f6I!#Nh^^YCp|^imjY+PhgV_yZEsRFPx_@T*T-tvFR+2Gpj-BRZ_f6DeK zme|cTX$r>4O>HDCT&7`1A44r8Ea8dJg_V<_2=}MSudf-;gxm{uR16&ja866lG=2?- zBp^dM1labX7e%8Tt`QBj5gpSn#(`FQDiPx$sarOn*FgA6KnPf2NONRydUbMWh%C;L z#c9&&!_|eYu8s>+nJ!_7F|i=bA%2&_VLEe7rfClIL7C6L5z zkU*BqA$UbA$(EojY8sA1c@X$InpC1WL=E&g#2yb5<4irOHA183V=kMDW~_4GIKNb+ zSia+%dD>N=%M}z@RybLpGu*dfwxGD(LFk)qS6z*%f>H+vm(AU)+;-tj)pY{? zz6Gx}#u@Xbns943rHvtIw>ap1s^A{1G}TDKj3cXWwG%vF|%h4$&Z)*+NMoIp*ZB^ul z%8^q;#VPGP%kI$S7gI7T+NVj=D0<{$6!fptX}3D+w`!F}pz8n!29#O7vcU7PH-I(; zw%&I@D?=2}y7uqiwzj&we=cLEM$XQ$os%qXt0|2d>zvQZ16vwVk|@y=@uCC`v5Kzn z1}s;-+v}16*U--wu1iuLT9A{E!Vy(FvJ|)!IconSy>ubs75OpQT2m(gR@p@pOU`Ny zvpfxYFF7$SIP9cDY3>gWAt(GSV5G=~;XweRf}XUhoPPDZ%NP=A)xA9MeGLY#&)d%W z?HpZ8r9d49!htpsxpA&f_3|TvJ^vOn(R8YPE`5|S`y!?&)6!TjT<6NsA2glVw7S&0E!?|AL2}q5h=2D;7 zDnTRGmWhZvn53`~c`?4NR0qA`3bZur9Nk_sL?N?k=B0qtnEI zaRyWG^g_A&RCRr(>m%(d4@ zX`>q%2%^o0jy@EJ4&P|{_WB>|)Iw%`W?+4&SV2pyz<59#9`FV1G|}lA9?%jGP#0|* zZ#rk=gcpfd{~;dO|U=kS_oH z8K3aH558 zL(Q=TJEjFui|vYRppNoNP1^th`!N8d|} z$MB%-<(L&aDq*A7r)vTN9m{V_^<$nSB=+c&(Sh1i8k_6_sEb0rN0m(cQCsptV^|pO zCBlUHtlR?IZ0sX6_Wa9VU^70tD>gt&1kyi~Yg5VN%mlVn1_=hg zCe9-7RqAoNqaUDg7Hetn?iBRF|Dlg;^ttu>`V=)X8cjt&8omWN&)XrYy~l}THK60o%3cYVHr z$6-IBq0G)yXFc?ZGyP$>2X`g}-q%}tw0ovM;;?+(39)W}@v}1KGB`dcmq<;*^yG&v#{MWMWRiq2e+3me&)B&#Vv1e3TUAjx(_mbpA24%Jf4=f zdd-gDY=Z;Y%WaL9|rAHE9v?3dsEWfF4B?(+O4w+2H4t3wA~pq-KOZ}m%k|Eo0(C=86a4w3~~%_Qi`P*w*`l; z0V8)nu^~*@Y-VsfK&ToqcOh}0fxl_U%OLr3iIF7 zbCs$wOcL|0Rz9To`kX!cgEBry)^oQFZNQ}`AeTD|_~B)1l2J{}@zOt97x>JhRD8VYfl^dHYyO)H!Ml_pvFADILGW7Q7E6`$4B zr2H#k+g~NZ0lvWWA!H@>_%R8bp5lafiup%WZ686r&zBqk5FVX^K|XRWZ7>MRmr%lj z9UblJMB9=Q)!=cUNNdi@UsLyfP2E#K=6BSs-%+=ccS?)K8e=#8;0W-J;3nH-UiR{0r0W5UdGKD%3uPjNT z^R*Jxe`EC=w4s|)WQ~>?F^ic5j^;@1W}k~bCF1Vw-s}N-DB_o24-JRN|;&A zMETB;wmdTW?A=VAX4{>u`~q%RiAVl(oq7XB#=D&11koj&&~o*1yrejS`hOjz1N) zr519~0lCLaX92Ti?xcF-Z)U5y3bVu(P@_hUqfZD=Gq@Gsl#-UwXMLU%#thuxEHPwb z`gm$R^opP!X^Ab37sknEq@rybFR}#CXuKe)?U7xiH~Da7g2|qx z*X`zjwZ}@RGs*~*$61dTqC3y=N_Z1(ElYpiaA%NsX1E}!%zSD_ zSBRXsVZ|7RQJlxsy{Wzp|V5 zn$vlvz2?+S`-?KCNZXwx+G+b}OH>=}qY97Zs5-wn-XhuV@R+CVqb-d&+D8{|%sY+O zm3<_i!diM#PGz&C@MZD$1_SE7!Pe}-Bq`zuUsTAzIw({`Qmp5!H%vbreJw<)h zwQa>!T%BWvBhu#Ju7@ zT&qeGA~KZu`pm5S#9#gXIRy;Cfvv7~2n*4>8K-!sXYRP+##SLBE^ zLjH7>C?QTSN~YU!_!Ip2EFRSjU$3bEEHPC*q(fV)dX_VpL_jQLvZ^slTo=Pd!tjPR zfwFg0HueDZE_3FM0Ge`FQLuBsN-C~4CM&N{nk{J^A$wg5N<6P!3tv1RUd1IQsaBN= z#*Za3B71&9HEforcKzfxI3cT3N&c8*+Fz|zvbCFxGHOqd(9aT6TR>~)%9wASUlA6X z>TNwwZSp>y^wvm%i+{-{k5lcIQp`ZC8*T*tkoMLUZ}o4@*=m&FWCd3Ab9zt zJs>8|1NYkl_r9za!UNoRe5wcywNT0z^c+~gVIZN~fMr%brOmdE*r5s+9pe(6d*(0I zUZAA%CHvqHl+Rf=!s?r^^y^fPLk&fyDe?W-S=WEh&WHIzlBHzd3+I$xqYndOA!Fug z8?A%MC|Fbg8r-@**$>{3fgtqZ=b-;w?mw6L&z{f}7(`oMHh`T%ZwDiVVrpL%X3KP( z=0}RuiVvsyI3HjY5UAv~x0V8Ua4ht^JM7r%>NZM4PKh5@L7)NT<>fk(f>mCoBV>18 z?%_!J(mxwcv`QPJdm|h8e8FbFTrfR&C$eEHgNj-WCVVLW?W_P zS0{ULQRo%r2XJS_?y&yt>g2NNJG<@9mAZ5J^c~T})yWn5?_l$emXcWI1PsEG)EWBH zLe2)|QB*>(4N_;bKVZfYW1GTXD!FPP-wje#2ER}?F* zfgz=2kR;`t(nO+zw)JpeL)4>#pi(u<PP z{;2;X8F+tqV-Qk{<-npprKM|GVr~4aogk6KBL}wlD15f#Tz5x4YwMNP|13!pivEi> z+F+}w2GlXKAV6;@gksMEj3SRI#|4L^9IK=b(oeHH@^m1bhm4@Se1mSmJPbbKgDhyd zD(_vF>@!+5#`+4t3G9&vd$pd4ZfZs?KPN9=A6H&%IOhE5-MHtJJ+9G^J>DG69~es6 zXgs^@!j8srpte4mcE94*VjqE9zx3A)Zha{{AYJMDf!NE1{z$9NI=X+%JQPlQ0u!UT z!MKzy;%Z4$iL<>$*P^Jh1mf|aG)d{AYAK2;q&9^Y$bYP1UMx+?s;5X^9J;VNq$3kn zY?$YD^+iA06PY%Gw4yEbz@$}Q(yDKna#ttEB&|#^EQ*OEQ6-<)j9Rip38>tbWLo8# zt>}9wtuL-{5&1z?f%@8RuG!+jry39LYRvT>n!J#6eUQ0!RtQXGBQOc3Igr{cL)R3P zm<^mv`hf#4G45jNG#fS;3swU0t+3(@{SrJ;lAi>sE{x*^lZ;_CQXjd#gvX}5hb0v% z9>i35#Tt}hziP#326W9*V8x{ec65(Wi3tXf!_fz9t5rLf&S0fvP|^K@)Yni}#aR43 zET4H+Z-WW6%SZh=K8ylwAJ!eZqr^8p0W$g>bSEh}@V}Sh`&JkxFJDZnmnB7>LHr2U zb^H{cyN$PAV!x4C-i2mSPU%>qr(BR$9eY|n%k#YckQVz4-bm^+6a&0QQE|!ya;wbX z8$_r^w~4`0`&E2k@U~O{K=&?M4<0Q(}C^AFU&zG3dmT*~wTQw5=dlT1H9V7NY|4l`)6I7NA$7D{MZSsQL>Gy0Ik zv>?qA*1CGrEL|%#VZF-pa?+3Iokcu8sbo&X_Gwj!&^LONVTj zEM4+`a~SwEfjJ)+=7fHN25xN{H@=NddF%72C(>Poi6Q}THBL`;{TB&%ig;eOB?eM) z=F(TBB2Zw4zO>JT8lRy&XexBCqC6fHO|l?>68`p%ZIWT|3q%$O?waJ=K;;2VhOpAK zO9#msT3bVn{c30;)+Jb=Bl`z58Q0LL7L2jVoKsm%j5u-x8I3l0kt@`GF#80I{l=v? z>hR+!{I9OIqD#jhLD4iq_?&sWZBVadHUx!=vl;I&FgegGl9fT#0C{!YruTVgVs??i z8IKbnD)t6C1rAt^*SMRAw^e@i<(FCFq;mOJ-m>(DtrN%rO*Sj~rPW6!55Ew5ksT8+ z!5TC4V7&j#%VZD)PzL#%Sds*mXyM-gsdD4eWfJAt%`6c=WlV118p{Mz!X6a+yxj1N zA!eih(TMf(J`2MsOQlb=T(N;Q&`SRla#04UtYxm;RP;}?AV>3^9SKab}|@n>(hC-n8SAV!Ba|E$?2(mXgnWO%Pn@txl&x( z&uL$`#qRu0(XydlUj9Ar$H1;%!N}42hWQoyuH@JU!-%LTwZ>u{2xjizdOf#cv-r0t znPoPvPGzYAP_es#{9DUhbN?0_1O@-rh$E}cFy6(H)$1AW4$U&R&%h^I#cr2CU*lv@ z?D7*ZZZa%vOTWDQ7AI|Lc!|b}9f^R(wBCKnKm}05!C1o1Bq|$`D~yNprsRR`jlAh)0jnSiArV zNHFOFz2FJZRHrz(d~)Ox(NU|Ef819Lz<>zCh%+4WCB9ZS1J{--G!VMt35<a(c?Z*xJuEo~W|&@sn0i#_CMaQaG?d(oFd$fW3j3K~seY7ExITHz))&%_MYovVEf76ZfMPTF<+V1Oryy$+3dkMqCA1R zgZRXcE4&g@;KJ7$7r;8xa;hf^UHBGmxaePn8t1xH-q0jYmfXd@M|V<#IA3>(5~m!K zuMTm_k-nBV4O6+ZhCJ1YhOh_}+F*V%c!NbX2fh@%xFne$9?l(sFFe4x9yBXH2v@q< zO1OCQ>FEhxXT++jpMc7IofCY5=(Q$6;Q!ZR^vd$Hm7Rfk1=DacteKdpX5%H8nC)L@ zUw|+v^!{Omr8tCZA&;a%!$=V+rV*iNV~#i27aJ|gAY8+=P#XhBleGwdn(Rw0g=ov-^I`6CrnfAL9jFnY2xwO7+$rf%4x^IvO&fup_xAp1&I0Aqopjw9ywHFzwyI zSuZ?`c8XY*=nEHw3%pD%85t2)w@ce?a)f4M7Q$#gxAM`x}YkKdwZs zYX%9elrD#ZouDi8gzzh;tP3iH-()rb&@!`A^PvfJgy$+#yu^$&$-p3s-YQ&)&-%2( zV{1GV?mcW?1)B|Q46hGtXeu|N;U@E|3c<$HWK5|FF2op3QR8q+!7er4W*V-|X=Wt$ zhV?}Do3h|&T?G`iHAY?C72sjl zDMvn=##&}YP;7*@&^tv6=Dj%;u$}wFRNE#Q;)+l-0H(nm9?Fm~@5@7q%?1Zb2=JQL zYVf}{`xrwq!+8W+r<{8Hlr0M5(bNH;eqsS>*rxU5V8Q;vcv<5VVfhYLVU)5*xvzja*- z2Fo!AF}{cSUQ|alZHp(aN>vJsYs$y4YrE@fSH^2ss!XFhu^ox8Nsp0=q4|0d6I(=H zaJKw6*=Gu|#*+g~grCW9ytzwFE;D><1M{UKZOolDW9G>nQDs4Fo|Vy;UXKEMeL|eC zSd#9Zd33|lFrp=ICy8shgTXccPcLUV2_GOc;a>-R49+*vj^Su{4mn6q&gd~r0ikW) zOb(7AS@i&{#7rdI-8`h)H1V<-M-InGLe6+XyG|-jL*bI~8&MCk3{}JmoOrkb@T=tn z%E<=ID`w!xFhQ{a#|g4hY#|chpgBI=3{cRP`i1Aj;~p3Zx`LVLHwdXJOoro`;{Ae= zjeYcg3n&BXwhBbGpUv$GC)MZ+mRlB(;4k$!7>LM@0bg>cq9DncXbJ!jo8prOZSRFc z)1wUZAI50JBPwx<5@k-A8_o>1E^Nq`ETn&J2GY!%fVvsH|E*p#`!v5g z2`~q40p>s-0VdDIESd*M3%o`Y<~-aIjw1^Bz%|KFy)AhoVMcKP&oo^!ueMV#IS1gC z%RS13>exhGQobqj)Hi8-RW$C{1joCGSz_8I++=hhSU5x=Vx%*KE&AT=Kg{|8FWVgO zUToAPfD7Y*@whp__BCcuK#CbCR~nPFwmQ@;46TE4I55y=1YoIg5-arF$;wq4_0n0M zNX?j-Ga}=6y5?GwJ!jq^U2`4FMri5~QFStUFFA-?YUOt=#IYe`BJHCu{XXfnA(6Ja z`atul@i4JCcnsVPY24UwO5P4_8^i6zaJvy?MPg*G$%U9*Gwdh+2Z)WwTA~UZ)bdkC zzwXT9Aoiqq=Rtz;(^wOmrA7eW|K|%Ca^_+mLb%MjMzy&1hA8@+Wy^ zL)K~~xty7D$HBK#rNR@S<3~bM+aqV5~ttUMOViJj=Vd zEe+%u0PobisrmufdQd1`BMsfVwk7q$diCAuNqx$RoF1w&39g>g}IS$?)Lta_F&dHJZt$=iXk^`9JKPf(I6sm+Q+w}Q>BeJB6x6j z)GLc7VcXKdAk8Zq9kJ%GjV@X(6Hwse5v$K84%u@8HT!6a7h* z>t|2k%*~Q?j<>cc|K>zfn$j~R-g(}x+9<;BZ3^p3gum2WAyZwwZ|YfPv;e3&Pa#$0 z#A~zKI)wRIaRfCaJFuVraiBS_jQ*D>v>y&an}|>5Qjd60$S$4{*wI2QLY}0gVK9ee zp>8C*O=!!xD48$Kl8Br>*LPe6vC&sE{sRl6+3j>;`>SxV_FAE_Mz>1vSUFwD*wyQv zG-GH#S&^5@l;NPfWAz8+on~Bl=e4N6ub>la&mMD|@o4<`lrJrQyzUVV#E*v_k&xle zvT|SLL1XcRyVbmFwF9l;_{T)u0q+?LGG?7;X!ldTGxUgfZmu&RAJ3VI9Lwn7W|N|BOXQY8htl#3GY#=u*>x-> z=aG6yHdQp{>>TJtlMh^iWE7c{YN>rKY|EtT0=H~!5Zkq|g^hx>&0B};Ep5?q(2f=x zkK49JZ4r`o*P;}vvOaLO7K`;6??qm2Wn$8s*P=N`QwH)$dd zl$LkM6$KX*gaNc53~-BXC^pRk0cPG{Lj--1+9^xod$h1RAuW^g-GV#q6&-g7yq$G` zIPF+1hD;o*7;&>X)oc(Tdo$IjyH!DHYD_P_%QyK77iF@CL)mxQkB9#F5)bG?QIl$( zaE$3JhNRXzu4a;?Jnh6qv+UL6nn!o^t3oVIfq~3HSbY{O$6;ype(TT1s=ZE*Wrs$y zsyOXbkCI50ffku!r`8IIEP@gf3PinHc(N&_`keGM9YP9oeXFc4$)%c{*_|J!A7YmL zp?dSjf`%+|r7zP5d%+0Vc?jrim!`clc4^u zexS`M4X5_NSW;0fAf5C*3zn@GVA#~vhyqenCcgqd@+(+=4qgU>lE^~|ZcQj@olXTM zI$&-?78V?+i%tW^iqm{9ud7rskzL0Cjfaj~TC8B;ELrF)9?4iHBG``eK24{_=Zu*h z&jMo}aDo4e*_~=DfF65RrP37O&hTSu12kHPU5i1JVnn+IIodLjdaybev}zF; zgPv+I^5?}F{v7(qJMib;yL>yyaFMADeRI}qn<=j0k?b;ud158eY-N#6MPo)R3u@~# z(nbQb=Cjz?EiekkCVAJ1ES)LPa!+kH9vIHuXj`$;1a&!D^~8lS%}gJySq1y3r9G(v z1m#t1+VKaqXA{(Ux6M`|xvNK*Q;WeZ$4kjx3fw7!5a-6KJbo(Y!4IFX z{R0&L6c+kYW+jKW%HPz7%5yu~uxW1hTf<+naqLi!akW=_K55C2F@PixJY$K4-1}ec zP1SGTM2TKYQW}7(&aDi6?mnB8gXQB^9U{7$zm}7%;_N}2<(5ex8&nlIs6P8X}KZXW}H?TPHnjV?mrkr+%E4U$TeT*z*3b^RD(^$Q2z;%crWh)z;J1S!ip) z+mZsVEAbRY#Gc>P!+Q0}>TKp!Sb6hRbcvpjO7A=|`%dUOq(9Yrk_l7oC{vjBw-;gj zH-w9JW~*Jxuc@NZer~i*Po&O)jN)E)w)&;O@s zkbb;+TVwo0bv6T+c_97S>S4WlUv)O~>INYF*z7x72I*IfzMC+;dOl1Mw?Pp`!3};x0g~ z2__&avoX&|mnvm;lhPf~Vt&50CgesudiRdjn%K$FAfu%#nc}*I${C=3od9)kuAaT= z1K`kXA&Afa*PVV`t3B(BT}emt$My`+3*(aPX&%zJ&&U&nDn%Ph%T^SYcn_WIkDszcR)P$Q-r z=*Qx(I49HzY4C>I)EWwrO>|Hty0fX`gznx+-=9@EJQKf*Xh0MASnVyQx{p#?RFwxW z(SY57S#_%7Un~YyLc)D_$9I=VnrfTY{dZ5WS9iPJk+Y03G`pqD2D&Aq;cNIiJm(%3 zOP6eWz7Q66exUKMaL2$Gsglx5&geIg1%9uk~ zgq4_Wvsz*EIG$mRi54}8so~lr4W(VJ#8f#B+@Gw(Y_DC3Ny<{S5R=rVHjZ73(2xza zf-l*Q-^6-^V%e8W4rLARe|c@E=p#a2`Tsij-iUl3D4_Lu(F> zA={Kmr%5WMn{9fSiBra(zOV9J!mp_o-9BXr(u{rTUya-DVWYO+wRA`ZQ{%>fiEo_h zgw|)WEUIj!Cji?Doe6%FynNCwR34!fZa|KV;F{#`D0?epV?iK|WUS$J*^lxa^T=7< z1a7nhisLM$aVNYa9$~I>afU`%BQk#6Yj~SC&t1F zT3Vfvje=WcWYd)@Ba49qe;*TayE1Hk$fss%LDmm3Z6Ypsinx>zfK&O_P|7C{YQO2?A!TM`et+FqIZ#IWEUYnfcZO-}t zdo7RXKqZkln${mTstm9?qtDfNsPHhZC_u`_rJ6u~10M2Zjfb(y+-7)q87%~1`-<_b%y>at`Z6nT03L)9R{?B97@9SrnFs0Er8T@C?4ygbx_Y@l@kY*P z$ZlEeX!RhOuPK**sekKa#VUCszBvuY>=Y`mC}TqGFH5p4Yw;kMJfMgMY+y;P-+5xZ zvT@VPji$qKnbQv%j$IkpQRqs1CKC;`i+D;kPI+A8E1~v__dY&@r?B}-SFh}?Ua?v* zlbNq{re9&O8Z)xIRjlBAP+Ex+OrgG!&2Nwb9sC|V*_CEy#?%{m3srYj)pw#jB~QNB zZc|Nix2Mpvr|l{2X)#%>ymg3o70nO!lvx~$*lebHY4#)^47E^6B@=c^c9?HhdQ_V;8yjIPT z6C0}LRfFqm<~%a3n18=3=JC34Sv<|3(lNYpwOFWB@jptW9GZk|sMe-;r|&hkC~HL8 z13s~X*%1X2bugHCdX}Uee$hL@{$IM=Li+&gn)JPu)*cFb71-+@CB)Z>ThWulqE5{s z48?{AFm_Nx0lZ)uSh4I5OvBFyKd`Yr0v1f`BNxDuN0r~AKC(SaUiwJWlD7&5BBR=t zx7n;DpA|tc&SmSbj9-m@!<7?~b(WYwGITVZLIQhDI8@&R8$P$4w z6>L4;-p3iK5Bo+x=WR=cr%h~OT8kab-+Nt#@v7Xu!~QLOHLO0P5UTkS_R#A3z62RK z#xgG*uT5dFlRdPV?zxS*M)y?7@nEb5dkA8wXIh5MTa0T;rNmek&lRs{I+pj1ao}*w z0lok@r>GOTN0Znb?a?P|^%PefHV7~N?4SQjB@J{r^>RNpd zIN)$1h-kLOAjRy0Vh0&v8mwiGq98~FSA%|TcQWE5xEnqb>F5qsHRdj!HMtvj6edSb zt>==(K0%*yC79kRl$7W0a~5oLiqg%BqTYMml>6aIy0=qi-}c-OR(X=10o;vP^S(=u zH50+S&a)s`MRg(}-*zLu@M9`oG_)7uHwYh)^q>H#Oo zDVN!SX7o}^_2zACqKpy`z~?G_qZ$EWA0FJ0abFW#K&z$6zK@7d?b=KW4sjPuZ^z@5 zZc8WzuRqW4hpmaW`2DFJiWABv zr9y}|vAjg;!W3^>s8?=3-FyiJWI3kundR;&IWc9yJ@*!*K&v>IjmUT8XMhpFPY*}o zT6usika-{+#YLWx^+HTY_303k@(ZFn|9nGC>$~$U5H6Z_cm8G}rmeX1Lm(WvjkP-? zx6RCn#&gdVJ&P?7&yjN0WlISJxJbgfSkbEf zWg;E5tA-{0=SSVIF2jk7As?Ng3QG+(UmPspAQ zDh-@;2CMCY&1o|CEy2SWrk$aurk%8r=K&}Cn#tkPg$UCU9$PF{pr~b(M|XXysFHXY8`1Qp z{HtL~*7L6#!rkC}{74Ma4kR}WlX3nu78-knm4<({ML5OQFlmjgB58Pz7y?A|3U{2pjxdZk_7+q{ZwYbc6xFKwVHuH}=p5Zgp4 zB(^uL6hcO?SSj2j@2IAW&6L7z&YVS_HFg_!B-6$@S`@2HXQF|8m9Fjc+>dck}J zaihGWi%26_4`!>dG}~;IrlQCS?m7#68*YWQisD9olx^DZ6;(VvRS6@ik54qOLMsjR zQMBR5i!1QEz(1X=dAtHwcA{?HC14yGT%V>!Kj(i37HZy|M7yOGUo=F5S7j zZ@z;1Qj_Ua4C=YLSMO^I^ZMDjSMRmWUBhC_`?aiA5!tcU9dQH6maoLn{m06)@4#JRE5lj0>=_-ijCRJjNm&#g);r6x)X$~w(!yr?r~n%#yx&lV;<~rl?n?7*beFfc)m=BG z&ZoQ0vh1;UpKR3&pqne>;(QTkqoRoC!OhfD+_Alv#f~xFW3>YgV%_Z!3RR3#Np6HV zeJg9;u#H>!trE}`qPM-5>855h^d%zxmIzdvuCZQa$1i{(H1$```97@k_OCRR|dm@?Um2U99g zwPsBdYb&PqZ)_`5+D0~kvb}vRf)+2kqgdG`z7~NEjKf-l#n3EZL-!)_WYN=uNg0~- ziv>SHubd2uo}awT$r3&cP>mJg*X74a3M2PhyEnOjo?0bE?ziplp{I49^$7JwcAOX5 zd@^oZM*_=nUo}OckHfSZ1T+uD)dfLlxV9qOE-MyS)OJ4R}S@P_MCCsw=S;I_EHbK{!S zNeZo~Q;TIIxMnbJ_0ohD;ks7^R*ST|F((5a>%ofcsWr+IH9~vgNO1#y z1K{aM6W#KPLDmo|uGZpMTA&aWQ(q#`T|u@Eii_-EA(hJ=M!IO3r`P3VNAs?lBw9&t zgH}FiSt&jXS)!A@oh6f4`C-LAb{Lx*udnT zN_>8Jg1U9QKzZ?K5kHC+S-LT0tg0M*_EnPI#_Ef%A8GOH00yCIZayQ^XWo0}VefbM zJW%kVIS*tEU4(hCO+uK5P^lL~J0vizHa)fM{7Sz_{1J2e~4=S}%b2o%Tf}03+&6jZxahPK_}*z_$q1^&H^af$F93#d~qW z07Sao#GQNOnh{{9hH2C^TenCQ7Oue&kt%QYs?!`{Vl*NXA;AOIAH*=$TJyHv9q6V- zHBc5CH`$9N3We-H$K3~svy!0#8Y#)rX4f`Yx5@!2QoNX}Orn_?6zc)O6lH^c9r+VYUBw8f_>`w34{TYIdvLXfIrizr&6w2YVIa>-@?h_!29aOZ4% zSPQ@Eggt!Xu|GVJtF`ImAZhpVwcAS7(U-kPe7r2?eNROXG^py6IJ)L?_k)slQ)+Tht2fX9Sru%__ZEJ8^dAHam2}Q3&vudbzuHO% z(J5U+mS@(7>eCKYhbWal@3b<*4o^y#073x705q(Zi;j%FMdm5ppdUa$$X^d=%uu70wLN!vz6n0iSh1E`gD| zyaDWZo`PTNJ#Q%D&rc!OLWNumeg?VJ*rcyF1$FhCYG4(DQT%e}5DZ{85G?Iq23;Ep zgrr5s*#3W!=BjZWc_*B-R76m?P6uHS$v83Kr8lzF--saa!AY#)}2F07K0>)EfaVn+BL3 z?yA{haojT+pooX2WPxhD#DghHYjErVOaZZ{7c{4OPtX-}aFAvWQj8e`DPVMvilM+5 z^mB^>)as;I8;4Uc6v{%(PZ*Sc(V_gQAIcWaX3dh9L0$<8>;Kh2>c6I{(BWZkX^@y_ zi|I39prhP5f!C}$@}P3?nAIFfP6bFO?1kj4)+yCvg*^koW3X# zH#Z~KUB2tG33zifnq*gBk@1wSJH`ky^iqG_B|Sr#LYLh;jxP8sFAln_fG&`;re5RGXdfs}{;ki;zA4oW&)zrW^`ieB1CG-d}pGa?ZnizHL5WP_#=;8oy zD0)K&fSROlwuSs?z)N-!&vx54H~>Qz^CnN~z);IvoR*`iv_F!@$n3aN%Q4M{DdF$Y zh6O_CKrVu=&J4Uk`#8=H7x1&5)5)<3)%|nGQSpk3QcT{Pyuh_U7hL4ANkyXGL7HY< zIr)l`c(YP~$mAyOb7P(Lgl#dI)Kg zr!c2?bLkjCe-p&6H(_^OsVsC>9g`*+bQjqVlQyWg+bVWN!5b0I2zW;kF1bhuXTt;9 z$Gy~&;Ldzg6F(YAfpxomCgo2`R@7l1KNe%~E_kAz?3pg({V z^aEs|4%#QepN1IBDITV+X(Yq$K}j){&K#c7j~#RTU3&?P7J!sjYZz^tPz`QnksH(? zo5kosWSX*0=>ah_!)I8YW4BZ!f#t*m`^U{}*2VLXJqB!~9byv|3Ue*ov@|p}VZ>{= zOJ7F6r)J9nw}WpA0Y$Y7IPq2aF%Ku^6sQj6dPwThlsXa6VA{}z!e{Rv3^PNRq|pIWUEP9eT7f! z2L9x0v-jAyT;^82oAlkupixc+3hiY)q4q*koG_m76b~R|bc>CcXA}|e`;62Ob+8Bw zG7~q0I1V~16CYrrxlly5lQOW4)dzzn4F(>Yc#8~`#-ue`dlWCDp^6;FJ^S+ZwZ@*b z#*4>P0Nu0TjX40aqvYh@#ub8INT6!oM$c&8Rc^)6&Tct!%qUhibxp;Jkm|7_$}IDq zAPxo#A~KMqRt&!T`1HYwPZuEIdGl$emc%eoV9XE?xW#)F4C<}O2dvvA=E)3x4>e8=x7j2%zy%!3$VR{4;!qeQGxSy>EjvK|{6 znLHFaPZpy@Y?ukNin!@UddbzwhW;nNEZhh2_}b&9YUumZ>i)Zp&wTeNw4h7=T|j-EF{* zTt%a1Q{$M|+%GR4h@OojEN~Ke7^R!?JGuocp5Jq9F5sW~kyG3~eSPw`?8AdI-XS+yFIi+J?{KhDsAYJT+lK6W;0RvQAH< zhENF4`vD7|_kW>F{Kp&`W2gspiCNRYBw3`0Yc3Tdh+Y#wfy+T&lddtHPV}0fF1ezW znb$6F21(kX-2q*ZxM2+&yY zpo93vYa*W>SL8K8pOa6JGmu3=di$tJ>KMzH&!lU5fwTyz0gk(rgtO6ByJ97$h*&e) ze9mZd;!LJiE`-stOx1lv8m%H&uXMC|HCi&vw>4VAH+lsR5t$3sXe+KreCvef7iSUP z9(gx4a-Q|bn|7JyZ9EJp8iFFyL2dDxOJOUXcPHn7k8R&;Dk#W=W8-o7Egp@<(Jvd1 zlB&!Y!VJmUlW8J!CfHqp|1Q)OQ#C%$7|6mwy zE^n%wXo_(wZt7lPjR_T!uHv4mJ!AAUc*f@Ua?+7Q0WXcZ=9#n|#m~&yz%Ut;`N?pd z2#`QifIQzGH+ze{LR^>DVnz>W-T&5WF~tO^i!Vgo9L^9AzdK@zmRBP|^IA+%D(;01 zLBE2SqR(3o-R!lP;(9Sf(mW(o6ylnVDWVKa2q(@47Kxv2A+YGM54v)6dUL8+(`$jn z*8+<{;%`Gqx7hG&fkji2U#-C6B_C4^qWC*Irf7pOLk)I#&}~oo3C3<1Mh~idBd^62 zJrfPD)N3(C&rsQ^j1WJD`ruaP(Q%qlrDUvI;lQBh9kq}ixq2@3K z@T!R3=26A!o%0G3D%XV%Z#^_A?N%8Xi2@r+YQXJ+kDmmNtCM3=`&j3oI4DujQzg5l zD&ECXx#nX(Q9bq(uf-_a9!iQ?kgvrk*(_YK5QS7W&EQ^Fho6d3J}|7;rxx|f-*hJz z_gMtUQi6=6J(tXaItv!o(ON-8cDA@y&>}&s3Y+sh%K+-Ng%BV3V+J}QG19e(TlJLf z)Qm#fTD6|Gi1wIkTIQaq-s1zdgm8g$eyOKuq|&j<$4H51{UHro<~dh>lnWv3YQEi+=%+%f`YORT z`wC>Cmx&{?n4*eFvTBYi8fK{}I{HcYa7XnNc! zW064poLOR?26Wdkk`q>5+j-Svkj6R>1X!N|&S+*~6?&OAZEtxR2uolX;?xVNVk_W3 z_icZ8d(zee&OX@{M2whBv(@UKiIx~zP&j9C1hj6!Z{+6a|5cQlR&gkhMvxsTN7ZTu zD|C=r2$+vrAtm+F!oU7TYhuX;yqkd4&1h{FD*I-nMc5`SprbV%3f{oqMkmT8qU%hN zj;T}-RwpPOdQtt^>(L9s`Aa%o6`^Qxr)M~D*aRGzkyJPp^h9H(73d2+R=`JyPP)p> zY;n4D;+iCRTO$6Pu?(VI7LmG8XVn%31Mqzpl;zm(i;1<1ygE>HPwE0$n2PdSuUSJf z`g}}A+B>Gi8V`<&E~QzEo)x*tw9bSG|6ZCzi5So-%_(PVqOuATrlT2=k84$QPk0h| zhDj4&uEKJPtMZZ7jr3@wSWptH;BQqLEFLeFCFB7VOO9tO+&k%$#XOyn0~AJ1KVpVJ zm9s>n)uN+{U(pzp2sZfwG~Q$3JmG#8=r<>wMRP(khZak{^$g%hj6&CZ(lZ)`I>`o~ z^v0|dgg2%x*J%MILQooAapHjG^H9y<>#cM#R&%JOB_AO-4q#g`4bR=M6b>nWX?2k# z4L)E`YGEpQvy^Edv3;x@2bKqdGA3Ah!d>YXeMDZ7%OlJC&2SIKNa%zD&%VmK|y0MMF>aQ2FWJE@2Q*(ODQqbu&fdui>N{VYR(<)E zZYT#vve96RR$X^kWhK^hc(K`Gm81}nrfMN{I6|6a5so2Dm|WCo6xyVSHj3 z4-sh=e07Iv8_<;s<9*t|6&g!~@ib%$hLi-} z_Ve#u&)*bM!0TA>*&C=!DQiG)VgJnp_e&Ca|1VSTvD16U#1mJAiZ1AqCKA*|8`p>LHP+}9jz`1-$__g z{eOB8R`Ky3bc@(<4j$$xaA}bsxyg>vG4ocdC~WY|qo&MgkN%6{*bl=m7DV{Q_ZbCG zdvcv!CD(}x3*H9(yG4}XWj9j0h}gK1Dhmb=f;4M5U^nV@HP zK^kc`)=4dK7PQ-e4%>ka+kp<-kq+CD4%?9qn<<~#C_;53x}rmgV;WS-CmhvkDp@rJ ztt@Tc;{uLFCx#geqRR5n1(|u8H*V{;l*8@udUY*xWwQZU#`?Si;O;1s4 z#@OXrD-mwuR$|A@Lmp6$s$B(I41_P7WCTV&K9q39Dro4+NE4`MR&}5&rg`g%ZHs<_ zmub;-bP!U;Asoiw?Mw96d`A2(RMYCpA_pF{2cO)n<1o_`hiW%dB7K+a8QfH;S8ocJ39`$o!=>9me z0+*R&h0BQe8MlZ62G;NTOG;SsxS&}`aE=v4d zK_iv2JD4%DNY2)Foxt1F-MzepQv7BIwUPO5Se*vXuPt2R*B7qj#h&YvALP}`uTQS# zXZ8Bz&1H@p#|X%a-8xIhfHPj#4E$#J3F4H3|B%`oUo|C8z zTq!EkE)#D?f0jiDV5v*U%<%6@WafCEUg0Y5oWW$ZDsKB!#ce+~PzFG`j0$eAE3OPK z49HW;H@tkY*e}JX%b7G=>gJe&tDB33sG3LXn~Qc6XhJ8iV{V`^t9`{MIw!r?Ucv3k zLab1&pb-^vdrenx>(Y>^wqQ%ZpOXb@nNJ`eUI@ZgxTS`LYP6~GdgWFy zD$w@bVG-=xbV}Pdv13{>iR`hcMo?4b2Mc8^cWJVhi(L&K0Yi}bYNhf72Y8Sk;;2`1 z0~|mAS*j-hiK5QzUjat*7{A$JB&dWMNtl6w_gf9>)hXN7xM19ar%3zv57JRXMrH@x z=rtCT2VTVqMIMdkhq~%PG~iDYr%_?4Q|hR7HF#1fD&sP;UA`YTD~M}X7#5Zsh$Km8 z1=%F~%mCDtT*{}en3q#mYyq3DbaYEsy7r9ZqbzH9qtF`ph*UBNXlCYohOgNRhU~Qh zL&s8=kL@|~5$RC0$6YCKV$+(ZARpC2l#jNkg(*P~Fd*<2&DvYtC?6Me#pI*U=p6aj zzFkPo5)&K*JnhfTxaJr|;m-y6=#PWh(5_oX^1Q^?*T~1_H(Wk;Yx$Tpgd=X2o&@d& z!V!kDRygurt15H=@S6BnWKlS->%^021C7BXGi+HSqoTiK{1$d`F@RjAnSlNKmG8^LLHfDU6g(hSvOK83Ce;))9>UVBA?h zmxWy;LA~gU3y<0Kf=^(qk#KGLbBHvcN<-yLP_Pwo4ZU4!Z=q+e_!4bJoWjN!&CXS+ zqu}ck?MpotLqqe3M{W!TV>Q@YyCkT0i7H?>g2IXMF1qM`x)x{#^#(6f*>rU_d`wPZ z#)|bpbdTEAxdf~^pX=(x^&+Pvm8$S^G8q6Kk8Edjf9=@>)wzjUdZJjC7{ZX|JHSyN z%J9EQ?Bke-OX}UR!^+Gf4FQ3{(G(C3#}ND`2#AI!tB`<@Sz|js=wwPjcob>U6)!Dz zxzkq@9bL?trCLJlk_Xg0cznV9LD)+4E^_O+hDq>%#v)ZVHTr}Ve@0LYZ-O0-#>=K^ zaW^6~T9K^gYPUSx{O}}AD(Kd)JlECgEJh|d(U47RzD!q*SWU?F)$LhHk<~SA)Bf)) z=GocwuJ&4K0Zs)`;l#1g|Hk`=cu~T(A}S&RkN=@0IokUWhrJVT&61Do0>3oFDmtc#-LZ3H!Gx|rEIGA$L~hzcC{i!; zH^lB0*9}GFk768(-+P;UlaJAtX1gLCl?-5W5o=ICk$#&EdYSU0sdhMNKgg(j7#Yqd zYMwC^K_kT&${83glyIg(qrLvoJQ}GDoXThFIOc+5|7gqhRXOSbK051#8WmSEoq5c% zJ8!JWhk3?3eRYaa9?jG@zPmbJD2paka3l)^qfq~%Q+HqCv$nBTpJ$F`ReON9ZqjJv81fH1RDw9CrT{nV3?ch76dE}`wGfIlAQdF?fS?Fw$ z`J=OYt708P707sl6a}#sw90FeG2Up3Q8jxfU$4TBk^gmI!TK{#m~9BhZ(R~1}E5?>HfE+`?<_qvHz4F zxLi{-tdOW;hB!{eK%!I-?T6!1BsAyP@FiTYSh#Q~TwAA{bBkW||8bUfBhMXGxf+r5 zAPiVhpfn50iV*NUoGkM*%o!&w)59|{F+=sDbrOWm&)}`oU8(SAJPbe?UyoFI-FFzR zjDC}2+#u}YdvG8%@byS|^yJWy)Wm5ak9-xMY$L@hhk^Q6SL4@&5ma)|oH>CX1q+W zU?3hl9*a4qqsPRK8IMJ#z-QK6!^toQY=?1%O>pt)-+J;~GWv$9F<%LBU`ENf$Lg@v z;Y8d2Ot;ivH9=tSE9yr+uOClL_XGP+{RpKVL67;P|CL-vdiY0~l}8$Idc5GzPf!_?W)bLtK(G9iP?H^BIl zsPrf0Gce$w>n7!6WK8PK(cA~(NBI(Be3*680FZ;RyZ%AzZi9kg)8kBWa`lEI9C?jT z1z_;9-{WG0tv?pGr9~FwHBA66jdwb1ASQ$5ODvSHv4ded@XS==wmw+{?^yv4*Gbi{06;lUYQpKZ z`IELCnp7P6hSP~Z5Rtqc;p0f|-*eQcKdI>e$wSe0klX}k4C!1b5Rn>Lfk=W|D6#=q zxev<_>;k##umN`C7#l(PduIQkuh;CdsBzG!$l$Zx{f9Pa&rP3zW!AV!kn`E334Q|E zz-F48H1$77_ELkdXb|E97k0BKgh35G6H`8J#3E`XQlDPe`l%se^?>m;9v}svrg(69 zbYk>;Bw$XrIWbf3zUq_kZ*#VV(Lhln=4{`E^*=i!(J1z?l#foT5tBR4(1r4_eODf~ z@5;rcb^kb=*Hn*ak)Tm}=n@^R#tfg4U~C!#cOb;4wU=Z)BNFDZM?8T!p*drBk!ngL zrm@80iKL%DS$)wIhI{7b2l1piCGw zhSC2g+Otd83gnY6aaJZ{ll_>3N)&0xa^OXX252+|x^jC)-xLN%8Qq3|H)V7? zXe4I-wV7aAX!;Y|lF@B({+4FnB13A`J|!{jTAev{8+dqJG11p zUA#zM9lRi;4!ppina>egz!g|ou5ua!FjNzf3jn^aP8ZR#a+ z=XhiAT~a@D2^$-DnP`_Q8+d9xv|Z%jT>%1+5^YcQ%^ipM27?Qc`_@@&IJj%+f$jUC zhGsp2jcfizlQAY+a5>8tM&LlcFxFhCVF5|;vYvDnOEv=5=99uFCm>gbe!u_03`~E6 z`OV5Yi9PZ}n>cxLLOQ$bs64pASwuy4f;=HDVL|HCs@%i|DDV}$M z-4QN{%D^fwxI{MRl?z-#nDc7O3f_%*91<}~(mgKOAZcXYaL@+)F&{9_LFsWZZGX8A zm8qWr(*LSU3@fi=ST!IJpZQUOB>c1BQUuKWUqwuk;X*$l`qFB5y8XW1Wi~dBWVPSD zZ_>HDXy2{Qi@3%(8bP_9Vp?71uAvdh8D$<+z$2~?>XKe-;cp^Z3pcZ`&;mNrB-flQ zF+XuKn16z5WWd>d(G7`88XHNwB)Vt?h_%g^{gci1$-%*$yl@M_4r^FHF|tL&ggU%o zk8D}P1jwx67|mK#G)teePbt1dlrmiDDymh%Hx8FEusa!}QIEAdSuVILswMS;sFvv# zL0!Y~9CWpDS6|TtHKSU3mZ+9i1t_Z33={#vMP*?ts$~dSZYh){?LT}Hcc>H|p=dc9 z$^x}xD622x%oNHJN?Le}Z7J<7kH_`A6<8)!K}<>Y;6ET<1j6)iZy*^9>3~`g0(q(d zXB57IO{qbH;pi{iWNbWRv2`Mg9tYaeqamOIA(IxCik=lagRfMf5vVofoD)xR4y0%c zxl9kZ)-Ldn4gX>k8#s8e< z6@5+O5(-THOm?KiB~>hydv8B68H#?FIJG^bm+jg}*LK}Z%Gs`4_Dz<`v$6@6O44~? z&Ac!ucw+D_!JbW}d1bPjG(j|y73;tX>COXk<(DTz=EuIaiw{`tx_@Ax4~%Xub`>K& zunO+JoRYw)B43wOT&Cu=Uu z-gpIAb4lY}WFeeAx2Rc3d0kj&*k?06vB3#B77g)sPmPuQZOw_#_RY*Lw+G`rvX6Lg zV5gHkhK9SZ!sunqK%v>uRPJVafrRsOJ7)?tV=Rdf+?@9#)6(&X9u81`0X`?i%6LgL zLMI^*-cgqT^QYra=rX-$TP9=a=k1^X{(w9B$&)CN{cU;WUN zkU}v!!OBtlDx08CYPs?FYWW_uD}vBN=JwG1ruH4cHPhaht(HYy;%8ciF@{daCD!2f zypuWR_?^(#5|=RgE@#N<#9rGJfl+Z|k8WH6j5M6xx3B<}1l3y=_y-ZiWjn&y)?|f~ z$&9nk?^|3<4bup%l<7 zk_%)FMh|Mb0>;JiK6p%r*FkB-1q8`s;N}o0v|$i{vn{Cm9uvy<9EO1biZHMr*SN<+ z=QIH09o0E7WS}f2uLf&S9!U^EnK#pcRcDMMS@;5Al#Hrwi6;Vo;Y=8ugn*cYQnnE% z)!=OT%4$8h4h#UivKMc*d1Oc$9s>=uIsoMjT{PI?NgEfcQxCicX-Mi4B7!nY#ol5C zcahL&w-Jy(1cG6w>LJjlLyyETivCFu3cJLcW4hp_=7T~laezV^(n~+DOsnv|FR8mB zxrE6!O~#X4ASsrZ03?1G#Ioogc`N9dnu7GRGqFP+7%w~TFcATZu&HM9gwl!xNGs`> zR$`%%PD40^RwW_^m58V>PF!CJ7bYDS7?4`P1xo>K2n^wdiwnyaost+!K!BA+OcDb_ zVk1aTfWs)ZVC2wlx z$r|ky)~Yn8{|=%8YWP~@WfRnRwKuVpT2{Rvg{8m>y>-V>0bLFOGPoMeUAn5RxMAd6 zTh_Hj>8gu>8A^dW+1e(cFF~o>u(^@=V6n8%r$O%n0F@S?4b(6`$G>Iu1^QVAwD{Hf za`Y?-WFzzwCQeL@_R!Fl)PPWyo8T=hf-dkMT|n`n3p|Zv7=^Fzvab*Mx+cwE)6d!W zY0071#31iRMG}^-jK)wb8r4uF2BPU>ND1o+ty^CvvU`j%I2=~=DLR3UKqt`pLnnF? z8xaaU>qp7pK~-da%` zD|&$pW8M5I++N`Ymc8nQ0WTmJmT^M>ETorSkv2tGRZ7FcjHaulK2w@5gBYD0Qz4eY zo^sAa@;ZHcpQD>bfB-E7Xz+wP!nj3s3OPvMQ*I8ed&M$6l9s##9G3#}(ypn@@toTR zVnKSzRc32=ygSz&o6Vl9%+z?$97ttmDnkb*i<)Hh$5LA-dvv;VGo4ss&Ig7XKG#x7 z{0PMr(Fg7i9Q%qr8r2GNL*t;+klPX+L$?tMtS~O-n`^~x?Q3CeW`Xq3PaLruTn(Vu z!a*rz!AL1a_9?bvDhB?IVgUX~?SOABIp30W5lmMEw}MRmO0V55bl+X{=t93_3nn*Q zYVZhpvwE!@?z4KW3E!aCcAI)F-g1+;mO4G@7PyS@C%RM693McJC5=(9Wx+3yaW-Yt zqL(N5ios#z99uO3sn?2MF9*H0TL!(h zeta18T2MafwKOWdR^I_!GwqFuMF=&d*LDTen&NF7j9ddn1(7z1x}q5~9e0)CtLv9p z87fA|4bySaWUS8BiYlD2DC1V9O-LiUSkl8SR;Q3DK^Q&P!pXI zAs5}NA(3S(k0c`+UIe9xW8=Uzt_af(NBASq^q>@!Sf03PGTaxiSF7!eNI+s(xQ!Ov z7QHO7G=`3LC6j?c7hx|BugjQEZFLE$!gmD@@nl$(Q8A7Q9S_yNrj}532YLz}TM%6> z&@s`~O%wjVE0#Rd#EkYCT5Iof?yZl6X!Bl6k$d)Ddwt9`*IaYXHP>8oss8Df z`fK!Llc|IH4qnc|4CC|6%p}YqtojwS$NmcQM>_H}eMkMJ=&1VZAr_gAfF0CdW{@_U zWd500qqa_rs;yPgSnI}BSlh5o%%D+W!8YseuIXV%!TZoux= z5vSCKqOoh(RUk1PeU~0GM)%IHF&c>8r4`KwcFiaTf}dt!F+l)WWY>DuffIlcp;rsW zwq?ISZ;|N`b&6x^Bl_gv*kZAGbAD64z8aaMM7I@5j(wPg9gr>FAw$5b+V;JL%ecoX z+vpn2@~v8@xp@?Hu=g*`GX7)!O>)FeI-c1|!8ik>pm)k)BPXusjJ&O1DosYf;Xp!k zz{t6N>02GrFa2qK{c-_H);96Deu+lp`sK9rOL&D^DEDd=Aq(CH@$69XU@ww-hHwR@ za?;7Dax&f+VbPOs#%?rc%L{00qqB%c$25M`)-g9!$bK`@Zh*2jHaccYn^dpO5C=@i z1Hpve2($Ih0@I?yv91!U`VxDb%b6QeX`X&cY zbeLNQY#V(O4OFc(`X<)zpl@Q=8|VlMCO{eYHo$91+NdxPviA+o{cgC+09CO%7mK@I z7Gz;l8d*}QjjCf~s{lkE3vBcPGukPXzR7;wJX-6VG4N-nZ(=EBj?melZ?f=X5Z~hD z=RKH#b!b7YFB*%10cEgvLA>|JAX=kuPM?LoDT0(ayiurRqBVUJj5qqGH7(KGOL zHDJlJuD;1v*Eexk3U*Z0;ocr@M{VnyY`H2s{v#=SxmMq#(w4qCR$p7+)af)urjuU@ zQe;tfRGua76^{qTzR4VXWk;2_uyjoJK=c7am{NvlQa$J$i7z|qf*}ucxO7a2=lbD5 z+x8gl;TMLtnQGwx@gmr2K;M&&sZG6k%V|m@XZ2mjgv@0?MY+^ZA9f)bj=-~{Y!H!H zfpkRU{jg<0vq92w12m}hePsObyg>FFMWP#_MJ@8BIz~d2%87y|`2jevYDOhvsS3?u zlW6Rtd^JOW3^~pX`cTKiIOp{rL*_tYyEvOx84IyC=baJfmHlhJnvyrF@m~3Q z4xMx=Dn=8eT`ZXN)At)&%41yXLw14W2TV((u%^8f9jHUkoER4{>bT1;t=>epQ<@4> z)ke#CDr4lo%rYF1{9l!ujnLwV=dwIzsDsfNh%qtGmEc(f(J(snI=30ca6v^aw*wXY zVYhB?MyqF{>kkeuP-l6|PvWBA8N7-xajGeuILg!lP`)4QB+jv zM?PR>ku^_GS?rE}tB#)6q3)ok>B20Eh1tPo!R+9ARG z%KGlx_$|NYsBk==`ft^@5zxLcdkr=M3U>10gYA1*CuLD;p@u*>pRz_}6B?rAE(lI2oY!jBnw!xOXx&cCX{py30#!Ad0X~u&W;9={ zVu>WyD0AzAzQcoSzzdkD0v(a333n#YFP~j#T99GFOpI!OEqcOQ(ELKI4S=?_DU-M0yv({$ueW(xXwYl8s?6Nj6 zH(S5hXoicPMH_Q!BbpGP{KPxzlQ#8VR3EWv^m(5~|9?)cBw<>CB$$~8Y>P>|WzOCP zFNJZEPrhJ7_^zxb_|q}OB*-u!Ljo*e@M_B!d0>bT(g_-LFLQYxde;yPCj$MPuyLXQGABvZu!$_pd zxzu6=qZ?^XnzABR$14&K$vEsChLz)%OF%wIXLa?>M6BcCnHO^MLJ6-Yjw`?4b1m$k zU+>WsBJOhxvn)*XDfh>V*AC}s5O1sx6$-2ht>ezHcNWtLLOilVW$j?@Q$Bv#UwUR< zUzI)|()m^TGX=7rlWm|9%k+E5 zuQf1SPxu?ov&9NR$uebGz%8#K)1>w7%`q4Fzy#~r7!-|+XQVzxV{PnKjoBkQmoli| zYeMto^_Sl%p&4eosvj>U{~(X}nx{TfkM)^f3x}$DS$g4S62r4Yjn zb>;>|dhN5nRdaShiTpRuf2GitDj=|%Dj+~CJ~>T37uO*Mtg34oQIk|2zHw^^^Qa$U z$YRH)7r-k0QT@?Ek%y2Ot9*cqwb&9d^&sO}s%FG-%TC#p=rL(E*iFkA_Lf9;Gb&(* zg`X|G&96sqOhT&<<+Xnu%Np4!0sq<7eJWaJ03s25eT)bk@$!Z=T!0T97mzzKI)aqO zWsw4qWSUYI#f1<(T2-+YHRpe1v5ocUX|N_SakfkpD>j*!HSomj!}?Xdg&rrA5&L7 zM%W*r1@m|zxm6FrW9?~%C%mRr=@$(zzvH6NJPD0wVPKLW@Y#+;y?WGi`D}!*hzT;x z(wT4p=Px*+uj*-xvpP6_UbhbqpW^IM(Bkiu_q)p|@L%pAvH#D=SQ z2!Kp&rX2|v2n#K93dK2ol4z+G#yKk=k=LA$>yFOt*^m-Gx_3Z$+Dt&_vj~OC)BdOK zbn1V*f3DZzkXTm-d02ncIL6EQ*v`SCt7nYGkgG6U4z$aINtE$6Fq7qPnhReM0Z~xr z0(|giH8Y=Y>)ItsIFv~*>iJ}O z{2#C}n%Z8x8S#kG=S@gUe%=T+3VDz-ZaggOH}yctvL7hf9p0^{k9x<7(8G4;mUkEX z)Xj^sH@qslG9Jg)7AIaR#M|j0<0gW;Er&Nm>@XJgSqb#QN?hkVXT;`g=TnjM5Z+Ai z&1`4Gp=U9PYtLaWWZ8_(6g`1`EQ(W$774KMoQxChZPG&RMETiui7Jjhf**V=D!>pi z5Dl;)=Yp_W$TxP_4aGB2zAq~)%v`sVDfS6-w9w2PjMCGr!%?;9 zNlMO{>FG;0J>G4bTjSJJT-3QE6FDKaT78}^e|wyqfb02c>>r(+APliW4Z^(93U)Tp zk0QZhAz9)mllw%rP$1T91$<_SQ#KQsDQVYTj?Uy0hUoTG4ivx6R2H@SR2H=Z4)n<8 zwFnW%Tc8q6L7{VaP13f_Il0uZe4i{2``}m(klCU$`7~n3a}^Lbd=ne;gm+t?CaZ~3 z6FercnRL`+x;s~K;V^@madw^i>?!EVC$iDimFo|++OwKSZG-kM5V>qE;X%8I4`k9Lp`UGed$&8hqqDbLI0#Z1PsIJ?d3mmZgK%~z} z-6_Kt^>WdW!a%TV98MahF_K{SGl7PKu#~L&OWBy5%gRr!%Zyzht0`d7LNG95IS&~C z@``Z~v~NMQVJ#paCUgfERd&S!kZMQ(LV@&)H&&YHWGO$XR^|I5PHuKSV<(a_&L?!_ zOaCg^c%FBNE-RxE{t66~c9(&PX+5dA-eNL+@6HHoQ3m8@B~ll39)rVQ7~VMC znP_H>xQ-}UejbTz#lkdm0v~~U1m+I%S)M(_OUvuf>EYf{Sce>S2;j#0_K{DQ_6_9jxD%RC&o(IB|3g3}tEA`xg z#I5p7plQ9-h5d=Htq0*)ENcl%W(s&R$GWh9#$-C_$(;UbCBsjBts0C zPv?+3l1BmSsi0xn#wR5)RFf_Xpm1b?D7-Us9y8CUR$R`(4W-Z-twim_*OyyyD$sIn zAZaW12r;pon-0r4PW)=q29=#-#_P*eaT7{q*PfO;%0oLd^Es zS&(DwW2+F!DH4wNt9$%mM$Zr&9)N7OE3J6s)t**7vRT?)Z#f%Y0$WZx;1J`n-h2r% z>uV2M#zO0BkBOl0I(`KEqNEfauR-Yz>km7k$mXXDrqiuIx>iY8f52Q&3f9NKDNlYI)zsi-N%QSDalCe0t!iVAuhqR01fz%F>uR_{|O&WTam)+K+u`=?stxXz0dfH-> zhFaihGbzm{BUe3`tSI<7=IaR@#6i47htoh>Pspd0cr`34q`01baZrTy1Xo70bSbdM zfZ$dUX(%`EA6ZW{MHqN1;^M0lWn0ew%of5xX_3K?Eixeepf2fyi8#oX27Hmhbd{>) zMpG>^j3=3bB;%zV#gmXcJ#(Y_x4!_7-rh+EM>+Rs164J-G!0klt?;zOWn)O zG1eIae9Pyd?Myq1h=Q@7mJ00EYpEdOx68{}DomIW-uR~09COpcMc&EyA9y7Rqk`=Z z0Zrg-xF6^o06`PbE@UrzlWYpU4`$9NRQaqX7dz(CShX)JYn#s~Sf?fvKg|$;4q?T& zqG(aWkiv9H1dzu3u~{P7L-iTc_yK%&dNLFS~7U7%bsQ9T9UgC=Zt*qUn@H|%^J_*UQJHH-66L6 z_>nKIvMW%2T&8wXv@hVB4O%1CNAU*rfLix)AddZi#B(GZX^r-;5U7urLWL=}k34v3Wrz&!?4Xy3O zWc3%U$i%6Nj6e(jQ7fOZBJ*ceMDv6q4_lGBvnm4rQIY$sNdIh#P@w#Z26ahf0F{RY zKxc5DLe8Fwe5RnD$?ha^(ebvV zm@99G43G;Ao zPW$qZZCbEvlhqGS>@WW;bpGoElDC*_tU!3&sndD)z1w;x_;Ff5G4yX~``D7vAw4;m zXhLob5uWV!3M@gE8P*3A8-|Jtt zFB{8Gttk_0`?c_e7DAc$<#*SV$;!`!v{hVKyoKMi7A`73K2i_g>j&LqTextT%CCe` z^tQmmLrsS*`K^!2gcS#|Bs#V$BPC=q)Qd)+|$4XbNsg4XI90XD*xfQ`^Mz-lla zxKo2MSZ6REvM=imMl3T5uWI|4m6=Y%)ByZR`?56w?BI<+905!a$1XGwgOfk9in?O} z^Wjg%;7#a_B}T!e#1mFxqWtt4V)zUDGEC4uXY@vdj1q%Tb;o;z`1Q~m%Z$RSG7<4> z>ET^g+shKb&l$ZBSw&N8(ff%pcoTYKiBWJt?|-%u&5)-OX+p&TP9ttv)YCMf^zw&R z(fk-p`tp}!KsEICSN4VF+qXKMpSFt58Ec&G#SgLHP22DK5e@AtQ`^s(dOm3tO^mgz zj(^6!tVcbuOa!apuD@YrUX;M1p1}LkfJFSK0r5QaHVp{Re`OWTj)BF8uZ=;KMm&}n z1&R`JZbphuCC2Aw;)!3kHeQl?kxHaaM3_@2Vy~J`2!%iWUX4<3tQY!n*uJcX+*oF` zA1ZUi%KU7W;BqL$-VDx1n~Da?-OGCYZ3c*_MsW? z1Y#@^F`f|n_g3Q1I%%|1k%X3rg@l%frv@!#Nit}yfQU07HtrRQpc?hX0a87G@}ufp zw~We8!;SvCeHowj&q4CO^T*W0I2#7B@k4|(A>-d$iP@wMB>cs`t(Ck#V?}n1B6bAW zvqbFgSVfa#qb*d$FA?0+BQ`5PJ0e1S03Hiz%>X?0E~l>JO9XFi+RFY-!g_9GJWXZd*e|7Pa_#iM4Y9O ze8@@^3EYP6j@y^r-}*>CW6-XrqQ)-~sseGF{smd7Y~h*jK}tU|<%S?0kJ_U)AlRuZKkiGV<^16(yt`Sg zKEmNy+5FjLz(m8M_0rBHYghC8>(-wY7`wDG^Srhz@W>R#1v94j@}K1{MubzA6a*`8 zTU}i(<#AxE+=q2-xv!5jKN4;dnLK9Q-=6T82rFfcgqkQflJY3O{DxIDH%7V?u7CI^ zMrpShs#qqHNi)26SeZd$P!09oZC_rT0QTBO7*PZ;K^(i#K+O2YCPo=NAAZ$ZSV!u_ z5~JW!BK9N7`3Blwv%1EVq7h&tYzf#1eFH36>YuksJ5Hwh^28XpUZF-imKlXtWuCM$ z&Ae&=UcEfbfam>;ndcE|vt)54zyN2T8huF4Nrv{<`kA&qDglcd5Ne$Ego?uEP zp6#^#b*pGx_Y$h&mk3mYs`YsIsnwiEt%X-5P`#d!VLdza{hcrGqJGJbs!47RADmzgdvg*o-R z^QsQHT}H}L;dobmiDj$Eb_I!GwP0&0*tfNfQU}juEXFu(m%C+-_iPM@?S)9-V{5Xr z0@~;zMkHceN#O!;b}u^Nh-*bQY}p~3yc|+CIa*=QbxaT5_2Oc1bC=U>aTM_VOnw7( z#ahI*368_rTii@21n*X=viT(U&!XlWhGLu;bJVH6Li!56Yt9|agT3}My|pnhIuwU= zy07)e8K{hfbM_+_)fi~EmZX#{4!!5rhb;@_1M1SU|ZKqJeleRRB6is_v zRfrKfEK2bR-Gpy!MKWlA(ja>eY%5d~K!eKtXEw`s*3k&*vlWW9+rsq2n8l9)-Ro9m zf$$iIoypp0Re8Ts+UaUA|3IrDDn#uXVw%;Ud&%CIm+&vem{|M z!X&4sWV&Z0lTr5wA_fT&(L|iurnfl7m_2(C32t2sOs6`c0Xo!SUNSMwF<{fj_N6ri zd@y>i(R>gFqdm&XbNmp;ME>)@siJ8>hgw?Y!XS>8(;!Z(to$LvBVCD^91vZhs=AeL z{3ESsa~5Br?fE0w?&1ot`9FNq@%~K7+P>PAAK|&ai#QPOEGOoBP)T3(U8_~kdPJce z?o>K^-TdYJYGlDi&376#%SnUgimMY7w)_njW>p6m%lVbyq2+*ZrJ^lyul=hDpKe)< z0|!rm8J$vIcgQxRA&a)bH0%f^Ata_7w(uMgCT+Es6D;)9?@_tdu8?~LYYs|N}rncyZuLcjis>0m{awTyyIR)Rbg<&T@O1m3!u!K?UvTV}G6 znjXyL7{8p~Z?O>an)yzFqh3ItWmVxjfD_t)=m=m(?+@Zf0krCuWL^teeO<&?mY-7h zlftQR(r@EUf!fV^Y(XQ^kjBUxyIk%m_ef-52d0G}i4h|MYOx{Koo+!m7& z3px@;mydrRIaWAtQ0&SywttEIU|658nck1E1C5yKn%!cLe z?4MU1oszS$V6DniR&$C0dFA^wz#O8eAG#l1yM9sq@B{qD=wm6slDJD;gygN~ z_Tr@d+;Xl_2d^L`JwN+IVv-y+8gW(pz=86E&I|KB@!vWOrqN8|GQDBP8{8`>ey|zN z$?2#dw4|)`Uzg5Nr)_H4=(WTTUdzVyYVq@}u*>C6r~dNiKK2LFZ(;sANTDCNP2ACQ zZX?28%QG8b;>KVDj8(<7q^kJwbXA#xZCXb(B*dz?wnUvfD zP*waGs;YZ6YtCdsc~~R5g$t{EMAzxOZcFizi1s{dCTN;5?R0>iQeZIN;{s#-0XU`5 z0$~|Jm8CV0Xsp-O@I{Mow01Nb0LN$pwiK8sUCi6b&w+vz@dx_4*0dA0E!Cd?gQB`=NW`-@Ecv z(!B7l{2_mSC~5GL?LmV#`Q9=4a55YQbPXQyiEuJI%D8kzdl!Y}MDH$=tU|M1SA@_I z3kDE81PU!UT4LJ1aB@kDye1jEZ!fMu8sh}tsdo|k+ru-wl4zy=#Nnx)KYbSh*Pp&~ zf3?}4zJu#*{0WVF%AYPuVVqupGoPpJ;QX{daqw!>#J^Vm|n?v zsHvTqQ>u{8@4(XtRpK|{CGRmPRLN8m?q)`JtFf| zaL`uV28&e6q5Y(fCW!Gp=PakGwnR_~s3UqPq-&GPDz|p+3?X)a?VY;?+3pUtf(#|x z+azGI>@0VV80_Q_1+Co0Fdk)o>vRcs&7sL_l-y*5B1db5u%l>3I&)3{`GO8J5Iz8$ zq)2+43PwFn@J5?t-w;6DQ}Hw%MFVS7+{>n5V_XP>Ns=+y(Rqcw5W*bY+zTx6)KGv* zTc?Z+%HKIG^6SQtFMln(Gi4B>01KNfKcmDmqB|X5p0>ekhzOzsMMExK&ULKIozgiu z`-m`@PR_C}G6!*+YCbJJ9E@PI!)eCopvPc6X5A%Jrgmi9ZY;mYrV2dmZ|cR_b`r~P z-)Eam7wt>`uKES#*u{oQu(iB>=0dt~c&)GXB?nDeD3y21WDg>EsZ>r6+Z3#m+byYO zSpzD&vC5!7-yyAPf53W)G7;8K*jx*kOYJ5uYQf0+tw&i1ABd{IdU z)u&zgDB=pS`$X#C)TWU4v)1R~RcGG^N1cXEwQxCo_V$sqf?APQyCs@ zu*Vso+19Dy)#AA+mk}sEjJdSMa5Cu(fAzmj^x$MAF-&xI`sT>dj`kBrt2?^SNEN&m zq~RCitgX)8qGSJk1<(4|)Oj3dT0Zjh70e3nZ?EfxtK&I=31nfXx=H4zA5lVdA>8W; z#oM)D<7!D)0@V|`0Yit*nZtyoCor$xP&Fn9#K}yo^UHbchsW!9?zNt~t>>ckY~d6s zs{9rV&!4@%>#E7?fNcWUV4#YHKb&&WUO_C|^T(hz#JU2LS$BER`~cl%DPTGM6-egIv<7XzRU8Fnp;-NqudH_V2|L@1JN3MT z3m3Ri=-Vy2+7`KYeVZXJ5ax;{x6w?x+@!Q zWsxUcaXG(}d0ovMRw(J2mGcg*Jkz;lgPva~T#6a_*?@(4@TZT@!l zGxE@ha`E>tlISOWA}!}9vwHgSS&1oCfktJeTyqx__jH?UngZ!yo2R4ad;W9|&eKf* zDStXPXG3<9>3=+LiEp)e(8Tw_pKdEY5eP6~Ylxxk3VJHAoGUmS7h!a@;y72@A*rx{ zm>O`X)EBxAVK{t&kxob5^{sF*lNo2CR5b7>3ct{vsu%FX;QBfpE1XS^6mMe-<N~nHdSiLfZd~T80-G?F_5d+CXG+K~))fuAxk|^F{V4 z_4_zc1oiuvBCGIwJU7abB}e6T>tnC{DI+bqGeJV?i$Wx!yzXRC3PN~V9xfTFhsMkI zN!JdQb}{P2d$_sNP*JTRBo}iF8tUfuZSH|$?6~T>`Oc`$GPEiGvfepk8O!g~`_AV5 z6205*xe>f~lxd%sOL?oL*QFhsQ@~rk$Cg!aJEO?*1A0}llbO~&%lXsU(oi!;ir;en zR5pB(e!rd#w+T<>Z+m{5j#6dr@@0k-%5kla^thw*Se|sm$I)EGMijV=-$qAN!f;Z5 zY{6uirYjO6`9W*V0d0Ztc((Ln{T|PTFIjr2v#F!7h>+x2%12|LzSnc_S$e7V78ri% z0n%%w7My_ZB|U1ZD0pjIk5U0LY&Bg2byRXNFk0a`itLWlJ83E_UkA#m!Vb*<=3a)qI#*vS1IFx!sAM?J14R z7hgsiKQB*doA(bdB#oaPDUFyAuON+|i&EP1{^3s2`1y{M#wqRZB#oc%N@&lnWFypToC}VQMFB#EbGsOVbZ=7n;Net ziRWewFe2E~v!$&vox=@K_h3g;fgQOVA}!!w@TRo&@h>%oevB(bPiRepta^mcQiwjR zY5mH#C z93tY~QspcPu5O4QCd5}StzKMyHu9-zNR`rKR=ZMn$h*zWdU{;#E?Lr{?h=NMetjo- zq>OD%-1vfO>DAX#e!7|nk})@F%1Dlng%G2$I7nYL7N$prv2ZQag7!9q=QyK~jmv7l zWP2<|stRLal<>4$B{bZW2kW4TC!Qbb^Q<;BDqfeO)!3_gp>E&VMcngyceniM$V5)| zvO(pOk;5 zOS7lgqJ51xlIG>Y3@+^$&W}8Aajf=|;ZBLca3@I6d0>pH z9zu-yp%pYqONVOFL)=}=cMueBF3mhC6CAOcZ!PAO zpE>X8t;L+utskmqbTM~=ewZxK2+;#q3k0?BfNFrfFR2F0Ra6LGRz)@7!YT^?S5#5t z@2sMr|IR9k_lv8u5b7TiC;U(p>MjWYzI>PXo-xL?f{7AM7SraBS}%1wePDJbt(A)U zvP`P8#FUBxvz=65d?>X#$7K9b=w}&8IeeK92&N$8E5=*F|8_-kiHvqRy@2V7@Y1hd zW-Qhy5)AujLNe{qRJx6((p#gcbQ?{jw?}Y%R@|*O%sx|HqM~ z`Eq`rF@sDizBsu}MxW}7Q^Z|Xs)KHwN@=$lJUMe=biLFkok(N#n?i5akEr9h9 zUloj+soGx3rLOT2TY$2^asO~qs~NBEi7Z(bPGDFVu?K`KY%mxzen|^c)li$bFRF&I z0RPA>`%JC2)qW7dQt@I{D$X;U!%c%tRiN@0rDd>lCq+WG`nBdR-{(6vI;YH1CoSa} z3$M_RPBpRJXogHSQQQmMCaQXNVTc)lPnKtO(1M!r%+?OtS~N&HF_O&q9FeSr62Es==pY&J5*kn?##z^h!uvP&RobwAi0Y8v9fFs4zQ{$*_7n4?=h5 zFc*#z6}Qt-$n1Wi!VoR(!;1dBg$A?=0QI&C(Ap!e0z~aFRoJT}Js;K(;i`xbL%_%? zpj}m51*qEFi1fxNM{2NDfR8v`3RIZt@^Mbl)JA5@nE=M5^N$a(_<^X^M73Vn-N9P_ z%VL@5%a@W3o~)9?=AbU>>1qqA;g%(+8G9-GzzLWgkZ%vetTFa+!>oFBw7-AbD*x*Y z4&}|MNrLiqJ-N!*;QC$hkLV{QXBWIT>glDT>Y>(|6N_>=m*_?=fp3w06LajQkbPZI zC6_zYcO5n!!37TrlDEu8A=;xZVQ~Hcy?6_@nX3u%?3;Mf%?GDy!u%dJUKT-6zE2So z{XFCJVmP~a5`VEt|Kjs-^e;H%l30mO8BGmSa^jfqRJ>basyfnBs-1f3hZvC-)Ou2^ zLm3@~lM#iB)g+Qt4q7F@MCNo+GbtQiNlNJ86_!oG5#=%mswU-3xWxV*yg@XOk&eOu1oUjVgm9Q#)?g?_j+TJ2oot4ZMU z9TM(s5-uWPxpPl(*o8xrvQ>JjpOe5MtHv&gseY)!wuC0@qn((% z&GalAh)IQjWQ@I4q(B9pwuMo$jrOn~gy-b6qYV#1zkNuXMjBMZBhIH9^yt6>80N{P z?=Wx2KA>$5{S;=|nhP`GOytV#sZ5X&LQOg=xwSJ!~vOY7_>>*r>1j&xh zZE`XqV0`$7CH&>Xskx%x$xP+L;V~$45{)}|7k3NRhv4<9H!40KMl?SmE-8%l>o0O) zFg9<03DQ@(m^v zV3nWIw}{T={Fu(22Bk;84I|#TwkxQp6pzE z9Sw(ji$%77*U{AiF$wSlDd&fL3yQXqZEdptLWcwWEG|+eTZ&i@+shHq_o%r<2}f+4 ziE*5XfKA|ArtGu?Y_QpytF<91kqrJvh%XQxuIwTvzM9**QK8EN)AWo$PBsKWR;W18 zm*$EMvI~W}FY_d;RNFblK_-`TOW&@F?br9&M0F}W0dGQ7<;{i+D~P*TL0oNS*4PL6 zTr``iw&|cLlqIcTZLc01ol>Eb>IDs2Cy)EH_2L*C+k#o33^}@G&`Av5E{*lz2TYeZ zLg5E<;`Sms_a$2qQTTQS>#cgd~|F_VE<4ogB~Im?j|VK;Ex2gagtS5Iw#gDUTg z1wU4w%0QLKf@j0n;}kO{;p@p*YpN+|@~SC19NzB;x2jZ}FNPv4}inAVdxly8N-Y?GEEn;|!ssG+X)Z zx2^gtF%&Rivn*n0&vKI_4PD|bhj(fZRTKqwF3&S<6l@2t3=;EDIzpmhHiIX8^Gs7m zqTmh(Nuotoc{U_9Z-%VNV0xC)h$ZC@0#VZ}2*a_#7e-k`gpMTVI713J4C%>{&eP4o zPS{9y-gr8ifg{8nQ%y>#{tILJ#c|if^K(qZ^ItZa&V4-n`q72~gj~T*FU(GtmVqGXe#qg$J zmNdUn_gW9SkG6us!4b&wJB>a}s-KP}>1yegln;;BG#u&m_Gr`V>VTQWw!`f@%m~0w z$&55Wln>LrVNL7JQJS;4c!hz0dcQ_Kyj+>uqh$l@QZ4Y${0+v8nID zRm4S{9+#NSVgat|nKO^&1y?4BeCdGF;f+BEO=CVwja>2jBgb9sDWHkVarjsgHW6pH z^EI2_dW`C>Kn&_`3|P<|QFqOKnj{PBz&eYMz(_*c?kYz7W7J{6$mnxaxN&tr%?-Ty z+l^xce)bsPIXcZgyAA^}!D8%#lYXX>tFOYb`Cdf~`%v11@d0dHjQ^){#^>J8APzX- zNFQz0gCF-5_@_-V1)4RwPC(37Qz3K?a={Ku8IKH4$PimHa&2B~-AB|#gqx`w<4tht z?0IQIws~)4H>yr+mqyIQEy|Bcl}aZ^&XoI!k=z0@E?ZmA4MSM}Ni+YYbA1+gy}U>S zl_rmo){nG=Iotnp&N+sfq?(2LZPunrXk7whnMN*w!EBYB*>p)Z7T9J0dzBfO%*Z0W zuE5S!cP{FDMltDhV+JOd<&GUtcVo!p{*`yI)I6cBxS54DOvhQ3Ex*=fI0l|Te(rsU zZI0j!#c78WCw?!oUx>2&fH<{7L^x4)d1vUYkzMONfYgQ4DKDI4JY?PdxR>o{mnz>ofDo1Twy`Hsf?d<7kG z0ifOu?c=^-Ho{W1SeC-kQqG3Nvar2T|I$*=hSMWoS_;~5Zsbc#MH@!nG_S3tqz%iF zGA%W2xG?f1Dr&4_5PNz(x((18YSB>;B=u>)#C!C|!3i1@!DrhI1{M&z8WM(E5mov{-U z>e(C$pq5x75&qJ^NEzzWjIF~%LHl}PQOM^d$&|`81G-B)1y`o zfdYi2vm^NF=b7N~N^8hdBed`AVVQcKVIl0wIK{DAtT2d)s zs-?H&dm^h2wZyd|0w?1zN_FV4B72$kH_EJ^m3HW>PED;zLOKJ6EF^x76z%HZ9XErT zQD^ABv`WRjXE@F8{Wgc9|L2pW>VVOQNwsNg9wlty5u&DFKTPTdF$hb2npACOK0>NF z>{;q6Z#q>px`ITR9_oaHv;;ni_uIOiGe+n7^+8|(eLSq@IKdg7=3p=Gl2XD({7GB= z{!T79kl_J7?$>`&+CE0 zTQnxPoyHFSOk1lNIk9I)_0&u3TWpZoa4fl$5!XWI#CD?W1)0lfJWqqAj^J!ftmoE1259lRiRC z85+r4H_MBj7IvoZZh{dJZ^@X^oEH9bQmeUzxviDK1qzJJbEZ~rvODPCtdn7z4lm8? zP>AzANdcECwm=DlQgWfQbH7c|_%oc}!g;&}YUE*o$-R2hEi2uF`2NjrVcK)cbTASr zph*O-6mX@0o93sbGNPgsR8|^r)W!b{xN>POdjAHn?s89f4v1^CaPYO`eGG*|{oddx zuTfNAHaX;UievWWJN;|4XhHVI(l;e=3ECJ8hrSQtbUOR&KD?z)8a>G}`eNBSzJKobI@cFLrh9$Ub zNV&JmHOh>8GkzG5xWv~vFEE>RU0VLhs42n9+gXG`$kYN^K714Jec+busJ# z^Z0srxAlO%dwPk9!s-zw1i2f9S#Vx0!9hh>Er)~16-Z#e%U43Kqia5hrG%kXWgudE zeod1}R%c0+ur1lEzueJ|hZzZb(Z}q{swd`t4LQS(z}2v6TE|spSx<0MZEfhuY=v*+ zLE_Ih1N7Mt;Q}Vr{)9+C+s>)>Cnf3RS8%2}=~CPk=*kPGXPe#lDSHzJhM_FJU)(Y_ zLN4C&g$=}timXcH8)8UsLt}z0?D;g1sf!31@2C5iImvQv-CDLqzsOa?WlsMZ+0!lh zE!2ToR7H7I(X9Q;Qj{9*n=WnO>RLvcv7V6n43PplD7GT z{QHUKuFRvjqU4_5OuzP1r3*LLT)r*W8to3}EZCfoa&0Luk`MyfmOTEwZ;f5ZnkYB& zsqD!|fLX)jDSzdI5D52RBR-*Rt5$9oTEM3UY;R6A$etW3#pzn~sulyis>QFZ-=gZ; zdFr;&)nnUd>e4A1Shq_EeX32pu=%zgn!dh1(CgO8V&QB-{l>GX7OC^Rg9;})TTq`3 zR$*rU5Y^&uy?(WU$WDIH*w$%?Y~AsKZ^ddM>u?)wju9jBUFcYID3ExA2swU;xbOSf z*siZ;3MiChHRcp8+FrIa5A8oXuV`N0Kt98(&fwGiqKh!jV(5`kar~rSK8c!;FK4SnZ4T=hflmC8h`G;qCJDR$JB*e~w}=>RSKuEj;G0vDgeM zzjK{0Rtdshpe+M}hdInqu=^%Mw*xR15x?5NybH}c3f@dipoTY}Ca?DBseICo3j+n( z0-zaUzY5-ZXphSsb7AXQID=k&o&s5Dfh^gz;4g2KFhmG*8ebCnjna5MVL^2;0$Mh) zq)q82#gsmu>K77Ta%t!PQpFc#+g_Eufv4$9JNx({eiss3{_Iy6E-Y+uKw1Fz5axk- zwFXzl(<=h4WX98y1GEl0*`^%&Lng}wjDvqDb2yb^@OvEzex)1y-ehb_@Lzsu=N-_Y zI`F-($`0z0;DK-Eht1kI@k2)>#E%(nsi^#UQ8n>W8AUdiQO^~DFw4;-wRF;r2uWm` z$ZZX)klqNj4aF!3( zKhuLPK3zP?*P~o-3(6xCWQ(8atEPfdNUftvp}Nsh3blaoD&YmA>udq%{{)6qY-^R} zh!toI=$4GR){~R1-I6iddUEm@uw+cPo}3&8EExl?CntXaOU8`r$;n;7k}>8^)%T>; z(^SY5yai^!=TuPP6@yD}=(V>By_a^b;Ej#U z;gxx{6~$49#X5iuFw}`W*s0O}oT$$C=eP_FZA9)X9ZtXu=cYrM(P>eQbYD zq%orUQ<-%w>~;uUo;J(>uajVjzRtw04kpehru?|A&@seiog@3e z)PRsEB@vMI#|M6Nv&PfHIICysDz=IG6$v+BEb|ZA`Z9@G)Gx7h{wFoQVj~3{R15!K zZ4%rx@JmgCn+6_e65KTKfhK_pelotvlX>OmnA#^e?A?)#)_NEauSFPZE`xG>ovu+G zU8f6s4GZ~Kc*oc5Jftb9^`=zqqOj|N3XWtbKHU;pfV2;miinS~6y|zJdGd(m5q#hd z6j`jr!Jp*W#Lf90iKiQedHqeII!s*4U}0imTLRBW`!;)hmAz$%gt?*W>9=>ie*5ff zWaRvT8-|qW)g5L?ugdmrVGVC(X{1X%n9NWC)FhEh;mgKajTftSmMw~jQ7q~D3??0I z_19^uI%N|@XaZI`-h{=Y&Fkzs?~Kfu>sEj2%7I@dKQxidEAIsO=^7GZ9<~n-4*e&P zTRx`63Zp{a(Uf=fvw27IcdDzI0#-@y%Vn`eVbC=`N(Sk@{oMJ38KcHut=N;s9-neb z^1<%Q;MxrGV}73on4!E{Z`KYeISPbJH7U!$Kr)7WtpE4Ja4<>jXAlNnV2XhyjY^kT zS@C=MkZ`xqz&uut8`ZK5>WJmDzz8G!>mBS z?5~8I*gM16ujb3w@olOq$(iq|=BRjnsbrS$;(7la4X`1gymP{rf3D`MIWICrTE~i1 zlk`xoyEm%;!@1Y#lsz~ARx04|k`-ZEVJvaOq2({@e;f066{*x}W96X9a`(tkf|{`u zRZYc9Y!sK3I<2D@;1+-H3jf;!!zpzhRN#<2oO6Uv3wvO8KMqJ3@Io(8Jw0DeKFc!e z;P%NjRTn6J)JZ*szFS^Vj79Q9BR)V^h&jpNT9>_EA0t^v`O0|{g>_TI!&zux&Tyor zEIw;RI|}}(AyX%~Gl$<9k$@?nPh=|NQLSxWrh+yT8}cjk0=^T0^PkKad*Q(572Ey+gW#%pWVzsb$h?M5H zDz{V{_6`>{JP7^kmNtZTW-R9>%FL*pbK32kTg|Y6br5%kVk+B{%_ z0LB&?-cW6(h7DGjU4p&ZE!Y4gXyn>7nBP*JyLY%r!TpSM%h0$5bA;BWNM76cgf%`< z&3WVVYMdz<8=s}|#VzU&&2QQQloK>2I7)+KgW#B@+W^2104#7?2AF5rv4^S|IEI0K zTkd(D=GvVv={#Ma+Ieq()~6G^fz%D6W55n&X=#ost;TuUo7+;A8mkFfpA%@aueQi^ zG&oxiG&xn9r%}x`Q4Pg|jV!VoYK7Y7eE|U{syRTnH^9(nc}mgC42i>8rU|{D6^7xM zyfLl9Y`55wOlqUL_D5ry9PH4EW&jnJT+l3}rG*2yrWyo!SSn2LQH>1f(FP6CTUcI) zcBt8A@wDjXE&ENAwBpzzL-FbIh$h3VrilOZRn3eT0*>U=Wazg#hYK(Xx`%;V#?=`K z03?>0pQxmN;q@V4)W-#d9qpL-@^)RM&3g9pB*iFTV^f`HBEcq(Xl&_R?R}Z&D1CAM zLmFBXP}N69Sh2|*Y0e93%{vU6v?*ZUW;I5@%aG6_P>F~&x(tztB4)sXC}i&}%nNL5 zpV`_REG>W(vNeT}7Jv+?4Ct_z){La|a0XJ+yk?k%e$Aq4Mlgv@RP%-sfwiEr@C3nZ z13m3+PQV(yc5$wW11$1kd7cwQ*N1fbOHw8jg!Cap#LxY#s~7MAwy|gSZdp2?Ndc7t z_(XN?_t7h%8Tv5Pf+3)*7)YSCdCn=)^O<}>OB=zRn4x%{yrQR- zxJZU`_YaxWhEZnZ0Zt*kEr)k#buv+}-mGmtd7{Zk&!xH0+I9X#bG)6Nr*sQNoAMVa-NMx>9SAhzPzIey z)rgq8y4f^tNCxdyY@T9)O_id>l95oK!IbxTqxuY{_YY^-1*YE{Tm825c_?to`o1ys zeM;&h?6!phEOn^njd@?nofrFt%4SVbKezA!PlvF;+w=kG2sZiJE$&v1+C%fM3ND=kXGN5fFr=Zk z3{AW-vLKX(VA1@jQi~;PtRKb-o`u)4zR5305W8kJQodfj={nRy%|PhId+#lYTC6F3 z+2CJ{+4gB$ANv#wcpNRU!I3)(A1aSHe4redg~X;>Rq*i5nn(_i0fWlrTt)5RnXCS? zE@*mN1-Z+y6RSXC-ml^q|4?_TjR*JxwOzhN>fjvn2Yy}+^orU*(5Ui?`x9?vDjtxMI3Ym^f7H)Hfx2%z(5eu7 z5`)$7`IJ?s2}Z9U@{MKU)sbS~L%p!nz05L6PVrl3brPoloZC#3+@G^|P?tI=lJgGo z4K8XS;pYSp3Jz#D?MndKz^k(ko6RoMyO3MzS-4|9(ELlhmQL9_WJb8hY zE$V{=`Rwa3=bu}h|2lAsc8{`wfLDWAePl$`A(iU8E#)Ig)SVwv9ttU_BVI4(^B7u0 zgp6iU3lsS|0)$B|UYseg8r0wp!zxQF9;5RqBMz;oDCfCR!N_gJZOw(`apLzv9O(kZ zp5_Hut-7YFFzGai+1h!q2|_JzJ-f+iD`) zI4mnipa!2BmKl~E6AXgx2LzSKkmOHsw8;9{8vGw9w#BHdJ4*%A&kQ@5TKqE!_y%2% z>4qgp9~AV&sDkZ=>&2w=DR2iYPvG)vf!)zOu=Lq?*<4&TjFujXE4yovlPt((fegBeX*COt6DGfJ)VOqlu?-wc;u!b&GjMn8}(LT z3@1@6Z8Q{}e=rEPp~pwMM0;zx-5c%pW)O|3k9o!qegNgdEpk@q45s*Cr?p#8vz?U_ zxBT>nKmON$@!p@gdC=wiU@??eX#$9RN>-`CJMmXbOYY`!?8>gSl#`PD;Mhmft~;%y z0AIOG!ZLEk?^P#0$(G8_i-I$^lPI6H%ae;L2n3ySRqicX(b!S8Uh?vjGAN5AJj;^2IZSKI$-Le4VE*Zair_>>lw){y#P&iA03B1Z7yx7jHeJQV$C%xN0Zgq420-sC!acYf70dzF2&+2)SD~b8xmRsmZnm?W+#kSg!;-y_z6<&qEq;*~ay{ zAfu--V)vRZ#_nLFBbS9Vklv~8jO6lOOff$&HI11_kWJx5Uq=MG1Kg{qz5A+MRwG*b;|o<*fLW7`esnX zPxj3h=P+vU`ArxRJSn=;4F*qivlI?QJ_&iCCFf3JmTDt71;`bsGUq)0ghazX1UWOz zM3)y1nf5k0U#uC5w}8DQZvlHt-U8S@m8)c1q}YoHmA3#P0bWxT+~lAyTo}FPi&d$P z)7&y_*u4elrRz(iPMXKCRowM${=C*Ue-7VT_8s%ww)yjBn_tcy%{G4?xB2m8w{3n; zV4FN2-RAdnn6;;;ZGMB^w)uGq+x!Gr(l$R^+uG)5mTH?{omk2kt4!Zts1C$H~Kd?_2eFYjeH>3ebjdrg+P%pn}{}9SYHj3Obn|lBmWCn7K%5SWSTU3jwlfJuyP@7(JkxA$# zt_O%}bYL2Qb-=rRDevn(A~^=-Hy6>Tp=`}Uk;)7R;$E5k<>LuM-uJG|20cTVxdyS) z7s|4AQD!(2waqL|BM{JE3{h~oGv3rP8?ZFXl`gui1%zS9U(-!3xV07JePmO?1Uh=6 zwOVz`&j|kWwHF!hZ()lB2|44K=LEyVIv2QzmdYsN1i;`U`GnA>{|ftM_zQpvR3$jt zB!%J{NDAo(e$boGmZbJjD@bifsw-MG?6+p#kSq1m>I6a;R|p_volC2Xvl8aze@3;YTPRjL^xGIeK25oX4%;%xqEPMQ;HK~!uGgwN<++) zL>2_I7)kk&gAj+n%B2S40|c1}ns9ttuUsx+G`&6g2`}_nY^Rev z81%}VHn%sF38QWOh+9ztsXNJ>ai-;^nK1f#*yr_J^tOS(O=Fu!nRn2Kp`xRFe@hr zVG`3!CX&{cCxcl?^|KD(1{!+@)tdh+)TVAhD$lW7l5bt7PY9Ok)*r~f%CdCt=Bc_h zGK{G1T-(#?nx>Y?wBe;C3KKDUVnr4rrTONHfIsi8<74JS}6X(i1w~!@-Sg&kR-;Zo5_1mqKoVx4Azr4udP@ZIoTvbQ=bTX+GRIoV09s zTu>_!A&vNv7`kmp>qCIiOH{3-IcI5~M-IFTLMoU7Brx9)C z3sCK(HJpJj8@wI{okMM!6LwT5NghpQ7Lunr3TBR)d^e~y~i3L@n;Np<=_<63Ku8fOk(nqr0{XVZfGwzW`Bw zJhE`;0|@WUhW)vIo)=lC=h~mFpCS^ebUA<0J79|0rFUDv#=xi4j{0FJvhHYje>D#8 zA{?2vO0#A0aJ8RuxJt{sp00}I{J|%T@9U#%PWp9|!B2 zUS6Aq67wKzUCCmZtiqpTKjcSm{V?>m`r%{Gq)?+X`xXZiEy<8ji3VG3aRZYNX7zjz=C?L#iTak;0DPeXy!?Cv%+Ndev2dDZ zHkrq3ZVHI4!Wj%g;~1OPCQF*IFnZ0;rM?l47>Y4mc{am%efaV{`d0;=$IGfQo3mGx zzva;(mGZqqJ2PqDP=g}FrZv=^NWwf&b(lX~S^_uQBksn)>M!RAJ{?v^)B`i_ctdBZ zTkIj#YZI>6!|bDQkvLGroZZf?+kQmX&ILv$EqkglhDS1x7eHqp;JG(0LwLM|o1Sn- z2HyIJ=y8FkgyFRQ*l}^ogqJ`|;9)yY23w?rxZx1D3}4=h4I`R%7x!lMS0DJ&s_uJt zCVbz|>FsI#O<}vvl>5oi++vR)M*A4XakO^OK=0#PQeaSjMo7h}$vEKnc&gaZOtoPd zuo1x?T~w&ZA_e2USfmsVL`TzH`nr*ug6%;GLvmI6xDOc69J`6!M2NHl8y1l^qsgo` z0@%|W(WZUQbkLriaW|r5FYI(xU#yQh`rXv4-6nN6h&`VPc1YL&XsZTsCag!TGI~gW z5}bHPr(-Cx_%b~OAOY0@-{bTn4a(2XTaz{@Y~r=(r+s#w709DbCH0{Xi87*}g3D>` z5qM`Dd30cGh65xyMi3jQ;|w$WjHvgic4p*DM^DIC+b5!>dGO$5J~MhaEO%wlw1>dk zgc;MRNaP^B>n*vC8!d@2edjFS14p#)hD!Y@*Brl@xxX5umrJGRL3w-UBg&|=UlK@4c(6&}?MQet;T5d78vA19M|G%+d>7RO#4*F7d_arUfr&xy-aN z@q=Le2XK0KTYim6kwIYQXXQ}~TZN&?W~h#9)vWU=*2Pz*V1)D!t8!I5aMQ3SldPCd z)q@cCYZ&{LS+b#vDnD@T5F`U0*M`RrIhH5diVd;i?yB+SykoX&tKEnS;Asd_tMVl_ zSaB$W8kv8A&J-f3VMr=e zsq7eSfMy&Z4CY!hDc)2Kh12pU3^%~K=s8N6)FC==gr;Rg6*84-2GuT1)W>jeY^tXl zFM0@tJlY7__Eb8HIbmj4Fe*dnQRbaIfyKPTR31jxFhjpU8g3MFmEf43caEd<7|Sq* z-5?91n3WA5W<%wYzX?X>@|df&G^y!r8EqdAlbalDwgU#Hs6&UB=!omzOZe&^hIRLu zHfWAId5asTxVssV2O>R`kHDXR6fQKQO+n&hEzK7iO58E`;{+jw(cx8#K2ED(2|nQ4 ziNms*zUA-`q1EZEtiJ8-2M^tO@6pwpZy7GwRv#M}T?8Rrz-nq^#@2x-VD{Se%CP-4 z5I@0#)3?4D9&&aK1oOg>)M&S3*|dAZm~)2aaDCnlLvw2DqG3`N$A6KRC5bF>FV3$= z-k8g&9+z!DUq^Ish*5|trq?{CeBVEdh?Lz`JD_w%;|Pcx+tX1d7V~nOgsQtW^MyV# zgR#a+!|TiIEM)K7)CS7FBp;ChI_Ca75O5?q*M+_5gcAdxQ!dt)`la)E8+R}WtEOIY zQbzb^%<=pU9g1!`49}Dg457QOPf2MQrMl53R8chZ0%>6A-F*7CL(YD`)FnKE-lu0PR9vYJw z83utXEbF}tN}fCb%>?TveTpSCuOlC;x`PiD>2f!HMFBxdofqPUw{${~{hJwgav=HTiVl}+Twz!tgAVG01^cb(-pgG-2 zl%-+UZ{!LqQ4*5r-nx>E8GvVyc;f*Q7m2A0>VWl1UCemFgA4Sg?_vTnL6o0$gh*9m zDI_Pf!C-I>L#9<90achUw*F&q1}_SZ5H4k#!J($u^TCrkzE5T5Z5IYn`$5}&(4EVK zs-oUTBppVw2qTHULyT4c(lCHIR!hnfI2Hi{Me) zEuxX%#5OkTYz*inbdQBX2-6Ix@&{J7-E=tFYX&o&mA^jm&7&XtsT2R>U%8+4d7g7< z+4;kIzkEc?mX>GaGdAAMzVSEheZ7*OvXWmd(uQbI^^bQB3=7v20r)6$u#0Zb>?$BK zR6KSPJ9vHk@e}X+o6mpw3lD#};~R;ryIF-w>DBkimB0DSZ~w;O+rRJ&PsQ)7*_r<< zfBA>+`I{eo^ot*TBBZPCOIY!+V<$)C{>tBe<~MKoz5D;*qkp3e1dY?ST}k7xAx5_R zygJ0I1l;R9xu}0j`^Mo@_m!{{s@h&$f-a#YJlliX7nK63AFL6IBPz21`x>FAiY+j? za>+Xmvg0|lO-J+)Hc@ZYwq!MP<8WZxp@^kh$*GM>_8qlVi8$3(r5-(<$7)(zs52@% zNwJk@vRlbW9Wk$pD_7XtWS3KWty4D+*}9#kI(9W}!;|LG9^yys-de+aq@;bs{f3hL z8*M99tx|((w!K^5Q?*9;1mJ?yKHmCIJK_Jd6aHZG;0&jB}t|bt`sVPfU)VQ4S=(wF&ViF`rL5^AU%^;)Z_) zj7Ani7>$%a7>#ilT=#IdfZycepMk@`Uuaw$WIbH7;J#gTn}Zico`URw^w5yfd!Oet!{*0<<-imu(r52nkvLPHe*^7FI+EpM^7?v{v4jXBa+97@Zj&uMd^2#Y)O z3-(mTQ7R-24RHff{n`hTN8P?qE#*RfHA4Q7k1P&=$U^{>e`r#G{#3Sj1l_Rv%5e<( z3@%%bX~k<8v?TM6^IWuLN$yQ#xoFUmOn)X9$M5RzVe0r60Xqz=-Rs@-etYLDzleR^ zcNlhB!jnzHvL&2o5`?(zoyVI5EbAm3ZxS#mlW?p_zzjpe(I$bnhr(NH+k$lv)`pdj zLsBOvY=1g#ThQi9S^3C7yM zhQn}mHbEfWsIGwyPui%(1$hfA*LdCkrzY~@jft*}s z6u-bzw-NRrJVI=4euBfXe$d3np*GXKR6dS{bqI|np0O(*A-WBerLF}il?6el6nV}MZ)g{EzowE&AAi9r+y5kW3?q9i(3U;~Irym*#QCSAG>nl#L=euU!#9W9>=;2Ayk( zNs4qyC1$-9;KNdl%oB{nY;SCD==x}NPw9&04EohA4ZQ40u_E;(YxhKEu~0W5FdzJR z=5_s&`f>f1Uy~gHn_DE_?4oRgv3v`|rTMX)U0bwvfxAKYgS^sK7+hXFl38ts^&#n3 zWs;V}T-rps$Up(&-fm4^P~SV!WHHA!B@XAMr;-$5 z*E-%p(%#87xfyr0BMq3mcZUbUz(y~VNPI<@S@sSfL05n*WJ!hHfium+W{3RK8@dX( z+`3BSI8N5ZHfdM^z04^3>|9@`ZZGW|5`W@AsmBDiFVbw7Zo#rCqAHZcKDB)7U1PD8 zDSUw`D2=6Z-Yy3k)DccyvEvX1Jk;~|&sbt>xa>lWmQYCEFZbKeT z@4_vCioEOPyCqNz7u1KWrP}2s#Rik#4;8$$W^M7vL*h9+9MePjXPWM+g9eAaa2*K@ z9@221wR+}FbQt-zXKAX~;S9!=D3vI(2d(RT=X>! z1#zP>iW%HW7tj5hoixyO!vIO!*QpKUf_+ZfvP6LpJKmdCkg@|8#QI)7t$AGJ_ zRx!ZciO1!nmSRRFwgNON$r~!c1T)T?DcJDlaOZ2Bq%GbYkP~<_^O7kMr0=t4A#%3QsJ|dUti2~7KEwQgKWg~_%Ok*c(Q3P&o&s@)d zO6-( z?X~>E=}2b1X88rXbMYa@^it-0d;Mi&0W}DH$Ym!Aklhfs`+i1hVb9hyoIvDm91W}h zqo8L?in_=|tr|0sh)O#;@|r}4uoav!J#$|RYdIL*tR@F+dxRyh3XoPKzNV4p(mPg) z4d_zC(wua#+x0Um4fOF^(J@1B0_~g1A$(5=}z+e z!|~cbGJ5!`GBSYXF?_FSDW$MUf)Sr(;!EsUDhN*@!34F8s1<`9qG&LZh)PG2E`Jjx z5tWVv-{<>XYwf+yty@39GQm8k!99Dgy?)F!*IaYXHP>8oX-J-)v>}+z*#(QXb4?~R zY^51@aunFe$V3<7e_mKGB4G)8kky&klS(6y(+`EVf=uW-?RrNn#OylW!%dcP<+t2)~`UKFD6g<9RCqX)d5~ zOEt(KqDqt|W5-lp;_Jq5lE$wqv}&N2G>#L-fieX0OALx}lwCy?c^qT0nbAyXc!h*9 zmAiizwJ3kK~e7{DUsD|o$?1o@7sxJ-rFEV_cD}Sz#?HkUf6_UuEL?T=f*O}EMou#YY!dKIz#fb9llu8OuTiN8CVYOz- zMc3&{kX#3WxTp@f88Ci9lw2)ik-b;zA-lfAw#Z@;bwOw!xe?rdfaTm&D{Q^`yld3A zSmV=SN0uJKIxFr#_(2>BtCA{VKr9tK86;NP!H_@!DgBWsnAG7&MPbCo)lH$3%e`Ts zb{wVw#gK~|B+jE}y7U4>3y#v^RC~?Ibl4(9*G`pd%=OY#Vdkp`WydyuAVbp(Phg;y z&5t=y%jP2mYWYhM4#OhO<7EibiAQORLAuo&ho(7Jpq3|UM3cwd-x5)dt9mfFh64u$ z^B_pxAB0dmkGaQr=<%^e_ymSqI`=V$TRQh>;g%k6kE7YvLw$rXo((Y7>R&Z;1+}pD z-9j6LTf(d*^$)%$H(e-`76vq88eh>yvra7!h}fhgf{OPJ0Smk8U2ENAE= zRq8Qv$g^17xSho$VunuZ70IeLz*K*X%MGadtmE*U{XRykd~NRbrDy1$k7wmRp+mQQ zCay$N3_HnkiI!J47}4HpZ$H;d1d@YfM zOwzBqUE4}wjZ?ipJPVHMdd1}qA=s*SC_O&EUC-kMttg}pjR9bNoZ`+a_D-3c$6wv* zLvHQOKyo{4N!5r9cLT-8{BqNxx35t$*;^*|2e=$>2)8!vTUOepPE_vcCaGItS8qu<(mxQh z>`!s`c8N8D1eHiz+s%B1HCOt>D+`k9q*rO10)19Wtglg6*2bq|lIZ*iiJQ2ct5{h= zS5@p{6h9UnzcAIsIj)+cJjKc>#m;gkJ8sVgWWZPN`3AA@%_)8kmHO zci5bl8HP7*cxZ?URI1436d{T^-~qO_xTl-Z{n2zc(>QOZ#`VdmVIzvoc!RF5?53Wo zZk$w~N=e>Mi+Ptr4Rk*yaLP(b`f2q^nmWtU71FV{Z0Qx1-J=Mx2{8=hCMeAVxrukW$U4Hb#%q5Feb)%LApjGU)eahr z$m6LyoOC0`bP4TWXVO^B67gP(S`Jll^BDtM(Hbt5&;l<@&4P{;hIcZxgWVC{%4VQu z{Dpxr<8Rs+iyHE9ZNb>&DfC6!OcWa@(J85G+C>k&I?2;$wrf>Oow}ecc1??zlLBFI z8B`<;PkBZR%Fw{6T8+AsA%@dQ=I0dU_NomA0iA6jS;W^*hE&fWnV+Y`eIFSHQcnbrG251Gr|kU-o(S=amme^MVsp}7jG>!x}0Gw z;sZ04TEUX8ah48IFIWHFD@%P_ftB(*58x%ikvJD9QOac|9&HyF*!VzbIN(i%W>}b7 zq5AnL_nd)0mlp%qibJ(=YIS-FyOJak)`T8WzZb|C@WRf^joPEt92)7@Z`T{2-Y zDV5=r=I2$GEqo^{#Jh{;u8VH2t0CM2!Bu8(;ALMq0s{K~=$5YSm~t5uP}C=>E!`_t zUN(i6b>L)O4241E`H)nG%Zmn&3tm*_G+wy#4uB-r7y=xd zc27^KPuop3r|CM!5na=_=~6gj%B^mYE=Te&SQ_%dKXbM3yE7--3Q1QCXW*VosSjX; zG#TK4AKMxt1IB~AvrIH0ZxyTpn7l8M6y=YA>`77N62)3+B&yg9?5E%(wpl2I1R~j* zB$v85XsTT5Ca5RC60@Mq4{1fcsNOVGcse z5sRAw-)TADCh>wETa zCBme$kzFt~;1yyEni%yN^=X*Y#1`xl6*Do7P{5UmNwNtxBsjR4k7?6fyvvj>pEN{T z=A<;?;AP3^pg)2iD8f;<%$y;Kr1+i`Gz`Kk_#UxSa3n-MIECy{m2D?$ zt91mbk;=hQy=)p)4(pDtUDEk@6c5i&NW+R>qLEHIZ-!c2d0#r8jQ+^Lc^>zq^XVib zoh_A8GGbX5%JH*B^hfd*`qUDW_*P44ash3nvzTv7qby#7be7X+uA8+iptYHLsvJR+ zh_1xSD9Fh|Aq0e1@KYlwDlV(scd04Y=UCQStf|jvEhj`ow~8?Hq_5X$@}jjfGvVjv z_D2)dC%4j>x!K8WCPa*|BYLGeE+>_gK9x0vv;d!2OhzZuW88oIr+8%HhEXX)OB)h- z4<2Ym=zI`xvLcHl;^Aq@H*NRXCy-5y!tNp3XoQ4#mG7T2+d)*^$>ws$ty8(NN1s}nqE&4zOvoxXC+TLP&2GNfVL*FQ z?RS{B0>rfMD3ybD;%L>7g>7o_AjqC+Zri=u4c^Q27NvmWDvhr(=(4k~JBeQE@`Tgb zGxb}=S;xf&oyw}tsbM!6u$>AHoSM)OQnx9!-93hT*{PY`_rOH5K2V zs&C7_B$WMmdAo1VUaA(hXaBq0;GYIaT9x4)<|XDbP;Zz?WQj8_zNVT z>s$x(3wff3Elrk7T}Ksr1S3iaQZo*|o(uN%)P5NBmpuF#^3MO?fiFxJ-leoFMeF}> z)3dxe_Ou=b2g`gR9Zr#rCr%OaP;Fj)Gnn=Ridpp}qF{A~y+%iDG68)Z=jo%Fha*Wj zWlU$DGedz*}(0BFoT(Jd~ zrZr{rJGYJy~nDQZeFGI96lNBU`*>eE)F)Qy2lbcnh#UST(xB(1Vd+R z*N>qB@sUBIZ!^DE`p{(JNkY0QNxMB$tb!;lWhe&msyc)^jg34lKWzmuw>>+Ru3FmJ z>)9-|G+E7(kMKJ$ivzG)4BNzBFii}1*J}q<$&(vO!PKHfovaigpJOXRi!ynysq5qr zOM){3e)W);j@Ht86S#7say4{SEi!#PqV^UraRfv#hES(UAXOyFo|gY}I?2F36^G_ z()z!pRv=nDDX-y_l?In782vFzNP)ZOqgGT2VA&+wcVvf5m+dK&kuyPu;En=OTV>O9Mf`gc1U*JPX6X$vfr}r3cyTZO0 z3`XAkvX#>%!!OpveOmsD;;*`J5*%_rWnkkk6%!^JDfb!T*QIhEPz}OJgHR8_La%l8 zjU7p~<{`O2Itmp$w=PLB>O`e^=oE2f!^6evI=7TMN70uFEn-6tWumVRGiFEhQjM{5 z5qXq3_d$ennRKPV%ry;L56GHna(211U7}c934;&)Mldn=cx8(nQTnU-jGBkmPZyPo zs>G%AbQ->O&&l<4Dq5O?YuRhmC!a)V!4*kdU-9nsl^JFuG8!RMM4qr0NUaL|Fse#) z8eY;tjUwD$)!S`={txly@&CxXTY`Gm$w;+^?aH4c-shy9M6n5Ac=LO{Af`}#Kt?4} zV5H*aZ*{U{0~fE{q?hWe+NmX0t+=bQ9B>wm3R!ONWwCsx>OG;3^;Pe6vV;fauI-iU zs(z!hNIO`U1wyL+T5zlYE8Pl<;~Ia~?E8NM$4j{w>@1%LYdY)}J0V{QYE+Nr+INAd z6-Xf}IT~RRLG`7yqEq}&2zq`c*K*pM@=$^qX4{?d4`mG2ZK^9Q+9M^Y6Sepak##^Xdd|0_64$0Rg9KSVV78BzXEzsOFPh{xMCbO=v0|Ecd7Yi*pfHM6nZ`pl6iu5@6}5;b2J4*t}pd-JvftVV*)=yjJG)k zdV5xl|B8!;yVX?PIzH4Tcwo|WR)>=8kOw~}!OG)j3$8|C`!cv! z%2+iN?NASqaqwr?=;1uO894%hM?vTsqEC)EOU_xXd-hvDK8DjzVN}E#nkd+M#(_9XTTu z78MyMpOcc?txG3AJten0oK8MZ$=7-bB9P^BjUQ}Uh;4HMvd848n40+S@{IHx$ZjLG zd5*_$=mP`}q9-*{cn~c!oHb;Pu~CQ@Z>%&fDA)IZXImj^*I0BvM7otztW^feK z6pBwG|3J!#W((%Dh|Hd&L)Fu5nXs=Z7DK28g}&qXf!2q(S!?NH?|foviUnS6-aMi( zs)H|_53Ngyuwg91W`5lsH8MSsK^i<$3cL+a9nx&MawEp286xfsxcp(3aP}!m>EAaS zc35h2x0w9Fs22q87P#6y7TRBn`atz{3uLkHR)p2Kb!6iwgG;91kzVPueUTJ;P-Q8b zzMG-;zl$?JhTxK$Ap-_ff6!8^4{OlIFYYJ+fsjX;CVeE(daj@<(&n$z8EjE?-drD~ z?3q0Jh_+;R&dV0$mX_OD^-0yO5S7hM@0D=7M(2sL@%v|W&$*5-H+X7ALn~(-Ws+2c zn$_%16(t*D4SqL80shR3O9QYB{ z+*H-u!l)NJ84$WZuNcf~Latm&n8-G-@va@H7%b}!L!U!(6e9Fy1z|6CY|pahM=(Ul zIL$VV%qPulx2uu7+OI}r^q{ICnoi6iy_uJKSiM0Rcn;<#m;r<3Fyl4AqB_`HM4xrO zkNqCThQiHWcjAYe>(x$s&JN)5Pf1V*qiPRgEm#fhzp`&|(Y$L0N)?POtDfH-E;WTK zKV~2SQ9Jl)nLgfM<%?;2)}7;QcC@>3#=Z~HftRBCP2)vs5>-j9X5&VutVEkg$+OD~ zq^*Td%$PPm+S~eU3K6UtSP-_^u;i@I#t{Q&(?TY-&Vpclwryks3eG6#s!9e-_7zIU^v$fCv_p~h86kQzChPx2}?ZgY*Y zK)S|rQB?h(&DtD|pSR2X0)|;JKpfX*By6HJ|thP(kF&HwlQU zUpE!28yJ06R5sFyuKie)lJA3qunaLlQ2`wM#ZUn(@CCdb(CpM%?6P@B;GVz0cPjiS-HPr~}KRw{kk@t~yXch@&g^Xl#HbNU&wL!;aaCI;m?CR+&60 zGC;50LEus0v)Wnz*(TKXGmLAtbZ-euY3{2KP zQ*_#+EZgNa+uJoh9wX2uj+%?tZZ{JurQrVk+u(2Jdb&@mdepBu;(M>{?)2Q&8L}wQ zN3bwzGYf-fb*FgaN{;x3uF!-{^TF%!+Wl zDHbngqM$shHrX-Nl+?9QQL;>--jt=7m z+MNWom952K+)UtNI>VZZE>jPzLV6GD0GprM>bXt77_@HHX6T&-P&c>E?W(>Ub@fMz zU5!1l{1HWaI%xhl2qOjo%o|xM$b*&nn2fO8iqd~C_ zuk=&g$YJ|(S!A21h7a0M{GG5qQ8D2msSWRcvq;kDT=(TIRt4A|8ww22-F)0)^z7<` zu}l~UzBjiP5x9iV>g#c6LLMMH&}C_5%xvRiO8WibZGU@R+iqy4>C{r&bb_U8S{+Zi zz--(7FNZh2|NSU7&5wTX9ZyTS*~aO3`tX5>TEi}!f6`5#(KbyQqd|!W{GqJ=Y<-EZ z`vcdK%#180^6IYjdE0S2PUJo4x`)*){6bz{{XwieR3+Hk+S5q1Lz9~8h6eb)xnbo7 zJk{NzrL8*E6su0;-BR2A3%deu?#uyj_13m_&9J?Pre;;kY6D9LJ9B|wnP-uB9vhTm zjp_2ihR`GI>4;a=1$PY&o0332YiyN}X-*tDe@3Ra0V`vK8~#L>hUF=aK)Zf4%Sb6N zyX95&XfG?Vxu&=@=Ib*3$ZRI zX;v?a*Jky?v&vO|2vf5K)lGxPG?qb))>zJ|f4Ta;%fngp zhO^LchO9IBG@`wH5vm=uhHuz;f|Ra0v5 zfu1Jcq}i|tDdn%4X^3XrO^8n8wx9;^4Z_LfJLMoJs#baB;N{U`*1sr9T9C*I4M#s< zLMqCXsc2%BCcy6H`YTyvd0?sx)?dj|LZ%SkVOPAAs_tBfV%;4rtPyltM$sRTx$p#_ z5mi)gvgq9KvZ(MWdq!bs6_AMQn*{r!uRL6V9z%zi!y8=|HS|?3zD}#Pj|>9S+LuM)X&bL{;jR~U=R#f;S1y|AUA@9(QG@of zsG+K0)?zs@bKqllS(NW*@kc@zaB0iHmqobUcFzm#tW1_thrmGnTaShLbmCT3B1<~_m>6({e1y69;@^E{WH$QfX z6MyKEl?BuFzk_!}ccaVd(WNkuVN*~_xkpN)NI{WH)iPCGteFoRY9^P3%)qA1d`#I( zWhckUmo;2bkX>>q@a)-hheJ#WQWk=;x~$+)&0O5g9j5ebUh4$t-JRgX!)|7T3i+x6 zDklI5w5-kzQ|HvHZ~=Afm0+h=b7UVj?$w-nFn?*tHt#N`?#w%vyTb)L?v5)yf|b$6MsqWvD*ZEy!rTqJhdfFt$TbzRP|4!^Ww9B2ht(bAXMXRru`u2+l8(kU+Mdl5zl>80WNgmTdG)bunZ6T1ADgqhfNUK;o1A?Q z;?r=U_}ndfr#d*y$c(fs=8u-g-7;JWivAXF9CRk`UFt2vN4;gZQLHeOAbiS2ye3D8 zo%i|aq7IUB#anaz2T_KrbbOOr7Sy)C?$?WNLM(77?SQ?XF&#u(Jhg zGRKp(*`37|H{>48Hk-va7`tY_8c6t$Z|_qT87f8e4yh;hvnXYB_?)O5f=}B|XcO@3 z=2lnp+o9lpDd%*TPEtSG*~z}{pfha%jCB%ObaG9JsE~y9sM=`ZRqDv0BP9240ctnL{*eN7bP!HQ{aYvUZ#)ec9aEo39sQ{tzT=rBF zs=uNhUNxm2t0c(DP^#pvSb89Xe%!-(5$|XE$f78BzIu1y79uAc7KH=f#bZmO|iMkgGw%ZO`(xXy5c zH%8Mg&1|M=WOeIeL4jrN^2I0cE}=|&3rKjJE%b)7g#c*oD>Nhl*MM`c*mg1thWbGf zN2V|k(OE5urGKei9?+ts1LkX2gOIziecdN_A@ZCM?dD@$HsSv2KhR_tY-l9-lQ)YQ z^^Hn-_3@Y%=w-&Hv(9j!k^pkNi+ht?oE$Il&2e%<_4UbGokm|5Fe_r0Fz5uQ5{`Kf z9C2!sb$C4fqv{DV&ooD7<{3jmxBpb566e{|vb**6oD(|Fu410;cygM}PBRDC3e)V9 zLV1{5nr43!pEb|E)O|YIJp0^-+8Q*^?)(U^-`MKM-qYr*Quv~VRbTDU?U`qa`p&vzKC4XEcecg#{x+woLl7AUH^&L!4S)r{FbLC}Jf zVC+Cr=k7itRlRu~P+hlEnOUe*+gn`b%BW7k!QWP zmDct8r;k_x!p1g6v2J6V3hE(?>h_wV{W>f=AFc&NxpD*t*>&T|6^D07cMAGDD*1vo z3v@g{`D?wiWsu%6*(_+|AieLy#pPnPxCxA0phtBzT_kiJixnL` zh<7pRtKP1YMMgf9etT{Ec1!SF+U9D=h)t=nyP42^8+FNH^Lo{J;KR(mXBPW;=1oV* zZdEc(^B4R?A5giLVBrP4i&iE?!Hb*vGFunbBi94Pv$N+?1!k|EI@zkIOZ;F3(NBq5 z&(FXi?0G1rIw0k+mi!K7KjPQXRQYwpGLFsDoQF7T_B@r*EJoUHxTf6*=Lv zA>~>DO-K2QULOlmtoo?F3-0Ukr9ty)OUcjbZ(VI&;l|J=*Tc!peg5(n{$hZpr)*u> z?C(6B3W-q%7iTVV*^P;6QBYxjg{X)6x;4*F9&v_v0YCSLlt5)VuJs`&hyM&lPc)us#U#y^+!B>QG$bf)ICdW} zTzZ%s`*6$Jo|j)Gf5UOTg`4HC+6!`mRlgnEMC=tkT$DYnB;+6uyQzkTtDC(+cA5;L z{+!QzCLYCv>I>D0I zBoAQC_auoQ3f6o};^M?e;(-zHq$GY)5+i?}l*CU;;<$JSZ2U<{jM(bwx)NfoG(A3D z>}B#BGJIFk4U4th77Xnm5Fnk=wraYwt*^g=w!!aW18N+VKx>&`uc z$}J=*twBIWm#m49(z0q0B(QnKo`C|hOP%9SP#COW_jTmDT|w2oRg7nP7|RWsb#wGf zz1p6=K+7uY2Nxaf$it$PJ}a|20D}5YLaX%kk36XM>mHXnH9*N0lM0G^xIr!~1$dnK~OOCgZ8&opQ7D%;s+Z8-z#<5 zs__p`U9B^gb=^wms#5yMY(l_#7wdZjZnkI65T#L&N8y<#-rf-9ni$r+?LHvDIilAaSJwi+I6SYLK|H2 z@u~2304mrUUsc+jTnlUX!-D%Ta?QtWEd*LBDSu@thr8mqQUjazC28WR}7-_ z6R}W)$+$UkDDNUv;G9-&V-D`gS{|-5Z`d0Kh7)AllTaqMGRqvX1TP~T3FR~_v5wDD zMnDLgS~UyUO@|YRN=z^Ffe4!)h8FN;JSd869J39p_Fs@NAfC7S5l}LlC&1W?0)8 zHIj5K20?gv{GsQ|0yk{_0>*{cFexZN&(4UENq@vWlJQoSRHfl$75XT_JI7r#_E!B| zrW@$z4mSI*Bo3Avxu1k~7_?o!c4)5XWLgs!RTZ`4 zH?r5H1C*B?S-7e|76;VJDw4%b8wU7DBUI-mQirgD{GxBWzLq<~7)SCQ;ccn`o^O`4 zMZ%sM9_4psmuT!5d{Hu9t0LxL1p^l(uct)~OQ>Z*R_J+lPo4ta@H*EOE{tq4BSm|C zoCuB{ZRniY#$84paDiF&KTZJcUeP|E-E!k6;Ll}2Jn9tM+sD<>v+i4$_3#O6SMA3# z)2{DV`Kh8i$crm_v2BK*fI0=nSRQ0~A@<>blolCe+xfkS-Y8j?cL zPIxMyp%ln*!jq!NC}wpVP7*@z!H2;u z)We>&L{>BT#arSftYl|?Dnf_?({g5p>sS@m9Wl6AWBP?1A^^EYn_{Gl9CL#kw(8Lf z*+U(x3~?+dvLw#m{GpKAJfnHzA8Xb|e_a7~w0|`cw8_IA>W2mMQ|mHyi)*-B7?~yS znP?Jh+I`m*n?Po{%8gEZYq$`pdXM!vDO~{0k3(+YH_ruJ^~4^v^oGzK)5&gXU*u`_ zkU>3I9zvdjp$U{*G*1Q@oZ`{NYua^J#rUBc0E)xOT`4(sPpS7pqNZ>H2YY_oUT8y& zszr{va3ae$J4{YNY8DM`oWwYA;}#Uo5D4dTAD{rOOqVX?Gj%jCQ`_+#uZf0WLNXVo z=}-XoE2?Vr5~8J@EFb7laiw~GVrh9p&|zcpU>uA681zk2c8(1?@OCY1QVY6`QSBd& zo~LE9dQw4Pql#3!<+{3v8oeHE3n!b2#8xv#9<>y1BPdqUS zs#?Jgs4xtUnxUR@Jey+@bXr`C^vkq_7G^l!gF^@yj8}nA`d5K-xM+i`z>(q95{`;- z75F4v1!MjGpE5OblWmk`SpzM8YIY;YK}} zn;2=x2qxjM@Z%$&D}7bzOV!KXvN_IqrWmv`NbHL?_Gt3!S2xV+S6c|E>OB6~C49Z~ z*%`VeZqvw~PgK#O8JgPY_khEJd_m-9JR-PxkBJ9UP~U@+$=bjy&hvum>k zeI>{mJ8vh3)eb?eAu#0RCub{~)EV_h z=NzN70x3~6sejEQ^5b>U%HDJ<$cC0vgaFPRnf!s+>-e%G0YT5dZ*UyQO@VCy)y_Nx zXNw~?4b+TqOJj!BsU0({PV>6?VuLZ0xRA`49Wy2L#>|;!$E+99&|LugrB;!4np6%cnSd;kDMC<5U1Hd9w4D zqX9<^xOGqHo4Se1yr;BW;F;F(sG^cR`IY>SA8-q3wD%hv^?8B|hx4nBoOMY01s`=h z>l^ae4X*KW&PQi8Hf{rEySq{9mL?_?js@Sz&dzcokk#)m<5-r-s=+G zIkC3Hi8>JS8*}+wQf2mYf5w`5Sj47tHvMCL#UwJqjxe1+IOQfzu11%_ zLpo-Rl)l*Pl#k=Qf`lj>O3Z=LA>|mS9GhamlsTCT^pyZl3Li3dC=_D9I!wso%-e$A zFjgyUi9LMhtJ{5+g7qZ{eGq& zr$d}UCqx1(3F#m`q_?~zq{DhbddqrnT0NU9w91$8VUL`zRd4k{wILj=|0fXk%8e)Loy4o27H^Ry#6 zls7wnSKVV6(XiR)gdJVN8=c_r-r`M!kRdb+0b118`dP(Z9@W0VuihWWhV+A#50_W;~+oLXMG2jI?6Lc(ERMQfU)-2?CgXIA@1zV_no$7(w( z;WV9*35{Fp$S0ibEOqNd+s?j|_wQP}pD@Mka$G^Mv`&g{O@;VzT^H=c5iEY8f^C6Bd+{T*@DgB3&+snb9L2z(%|)R6^~uj1#H$awu!*SW#zImBl!s8wwd+S zZF?!CApCiq>$@+%L6Yd&K1~^!kF9PO64QYb%YmY~S#UJZ3a#DtXL`9-f77d>sHWWZ#&(F-sCAS(bTD2%N*u7H*IApY%YAHW0ch|XgO@R%Y*Pj|>edvRX zxdXVpjKh47_X0#HgITgsVITg!*oKZp8$av)6QPoR#Gc706nd8Jt{pIyaly#a>lv_X zF4S74)**hf;yNidX+~GRy&)+j3Id5w($M#ZhAxW3*{4wr)N~L>679DgNqz7pl}1w1 zD2^oRbvu&%ZI1iJXGFIfCU$!t-P0sn``m{f`nykl{BwV{I_Bj&kG%FHpSa<_-E+ox zgZ&ZP)mvV5bOU@Iwp3i?c;eH(N=~vXVlV%{iBJ3FV&I9t7`QUV{tDAIT>m3h41Y}9 zO)yI~N+xNeB#`g-U`ej}mgKh&I%7_^E70+28rM!o5C-fUNiZlBhm1R!j1Kki`Px;N zZUpzJ{yONv6!Y!@+d>lLF2Pl-DoB3f-qv&H<0&;yJVxC}*qlmlgYGq_fCzKV63*6V zXRo~%exvIQeLW!w*LDfK?Tv5lP$-U5Fh+#6*RutEH=fh-JRlk-av1=dr?Pv?goU=D8!7WF1g*)V;O2>%Fxxr zfY$05IC3yx%{8AE4pNv@YMxE;XhdDr?ZoHzmH9BKhxjd&LH(Vf708mvjMCq$sV!6@ z7{O(8h$u-Nj)@9<8e@nOd;q5}MNLpl07MMV>)L7~S`2YuR38y?xu#DBH=LlUG)2f2 zMz_QxRDQxaR6ZJv2OtEeMxIq%4jD8^?T(L|ui-2+shMift>f*=I}}oRMscPh*z&t& zuZY7Dl<{B*U75})+N}JN@9LwGQIFjt466dvVu+e+9u|eRF&e@q7(HNoC2k23jrmmO zA4Tk^`#5(Dtsx3Se8$Tbix5QQkwjmm2H_VQmjb=YjWZ9(MwR7LP3VRZU%B*Sug_RGaa*A0rKjs>Q^3lN8t?i1EjfptY%>cy1ZbLdS7 zi^{9M%FLU_f_W3RRsuC(AY^3BF-#ZVmJ!(SKtx(jLLXuD*sO)1qNg+tOYu@1=opF$ zEGMb<$A^o1hvldrewryZ*w*^|GM43K_yq-##@m%Rv-2Mjob7ErjMp51xlyA#0F<-F zqAliBH0NQOXP!Syi4yy{KEl1lm&qQSAxF){o}HuSrSbPA@%KgX_oDcFfq#d);(tEH zaWGR0^VB8hej+6|&m{qVBM!!G6TGAb88n^ym{$RB4$PTd#rYMs5QK80U1W{r-9$St zSwc~B3#5m*1%seT4rOUJn5^+@Le{8=nTD?KV=NUqw`CfGmT82i$TVP~m9B-9Cp6EI zY0$cvhH8|RSp22OJD48d6qP7_0Pnzulpmr>Fl|i;cx={0lz$b>B;3*gGareG@H0Cd zJjlpITr+orBiiGNYdnh?E+RQg+{!W`(oHw$wM@s(VchotF-YtXus9f%Et@cZD}}uh z3j}c&yqxA3EE*$Xyu6mlPfJ2CJSoTzU5Y2~CaL^j1aOGGtsi`Lb*78Fkm56wAl^%W|+W|4Q-46hrHW~4Oh{`Ug%K7w3(UMXjhupQnF^`T$svCutkrtCBFPF`QLZ+ zc+PS}Aly+KG!Dn{CN0cb(hi?kPzl)SO;OEebO4Frxx=RB_^0t2skORT$(a}OzLJ=D zv?}(z_Un6y`_F%Kge}Xen{R-h(GM0OkDif9IToh6_&IrupEG`1sxcmcR<&t@QIQ&B z5~WEo4uo=Ov0HO!13B6mVREIg6aG=^K3N-3b05)^pBh%X55meF>mBhSCXG^8G+#ha z!ZJ8SBDdCBKQLF0p6X%+8GiXw@2WobRQovb~gF+p&qi9S+v^ z4ra>NSeOf}7gO}PnvFVPLaBo(=yr4cpHnH9KaDg-IQub?B-`r|RHJJ<<|O7xSA#3krMV9pQVJj0|v|$S(<8qYVYL=!f><3>f zcFBJ5z4}f2!Tocf?QsOvl9o}ubD}lq3zIfz2V(E?5%;V&P3Fx1zPA<*@_Vp@hkFRQ;yZaE=U9+&_DiJ>)ThEI00hp5vE7K%}|7An6L2G3M!d_fUdXs-`w{(k>Od*{r8Iu z<1w*58Q#CnC9mA(wFF|jy#tf^j8ms(L7)H$d*~#LKNEqe(VqzDx24oP4;9WHV5YDx|sD=8Vy8*=+vf;KnvMR#8LT`E|(1Jf0mgw#FJOLEC8<&u{U z3E+{J)_%&CW=04eUCK={w)rvjzQH{@XtN#8+A_hft6%2hE;EjiehoXd^}O)}WT-zn zo25Lcj?o*>{YX=77A!J-dL2}*P7S0Ivp`YeGcNJ87N)jDbT;cCXhBLab|48=iQ&z{ zq%Xg8-;q$2%FIHgGI{k8$3icgJu+1oNx$rRKAN?#l95kjNbZHli@&6o%)-juwR!ci z!iGncRb5JuPm~r8L*!udQQBG@a6!>sOFmgs5pJeX!nc<-w z$oFc<`4#}>f{+>vn@db~RiCuD%8?y#;=4W-JJ)txvRP{!rgUJOENq3VB+vu2=}n-< zXLdeY_sESb>hSTf3oo@btVOX?`M|LCFV+tDuW_gz*2+SN0TEW`wV;d%m|1q~vb>rL zt;lGrAUVJ!wsiZGVLY!F2wf#50eNT{$$g(%_hIj9-YD78+JBXDvr|$mSyna8?fpC= zDB6>?&<{3&(tdMSKbMFBGXgViRNXC7b1~5wP$3z#7GQCLt6mA#Wt%nz44#Gv(zF@P zcwcWjb3@UN*xddXbfEbc&9zRAhdV!0bUx@Heh`LDFaWa_Q`k>LF0yBSLxUebY5gs1 zTe$__S#ztZj|*rSfTdigfAxUrGaa>C1QeU^Z4oHQtg;MQsmLD0S8WmK)Km8&UELw5 z(-y%X^jn7yM^eXaeImjMklFE(-%b?|o{)mpwl!yB-6uG@&??ZQUn1!X8=4C=+>>l5pUfZbhmC{CaVYG)-7B_hTOU}KK4bRRDVT1 zxN1s0;npqPfW=*1x(7@FX94F(mxB5`_|%bR-3vOTqdxO26$@C(t>Y8Dz4mvBZcoVe z+TTle>~F6<+$CgZXAj1=C%4x!%%oxy$G5$9>tAXX^|#k%QjWB}w#+)lbI60-J4xDk zQ{Xdk|5b0f?Sp^&)z`i4%HRO;xEx0xc#MvtHy@%$$LBbDidJI>g@NWzit1s}>-gJc zdy{pv0r!*@*be55=>X|&)tq~7hrTj*I$Hb7L$CkFpFi;F+aJid(3uIPrNbQcdzHZD z&)@jSCq8=PwV(dohtl`eT~h?$VVCEs?sJ)`T(zw2#L?O}Kk~7wK6UeF-}4O>#Lley zmStyVMJ+D&pJPO|@3P{2VMs2UKaoWze!>oj#MSyhm*o0dTx@r&8&(iw`XSub#+T&I z`;uI46ZCD--6grB{w2Bdx+GUOOzV!DW7;}wIaZG>T=6T?XKmnbNB ztahGR+@W<7O7=lnozbwuhO)lgDI2bsN^`L2jwqhjUQvji081;IYd&uVYY8BC5tyCr zS1KI1T}Waz<)qdgqKoW9Qfmvzw8U|))(%3Pf|%6WKr)%0ovXEfWHuH?6f3C5ybT(wry z5)8+slm(xCSpFwf`RafqDVNTH$N?jE7L%*r6d>-Y~KW=J(5{%puJq zoL@MmPgX@X$)j^aouA(nm(f0_k}r!f28Z6`@T^pXz49`-1{Jk7w&-)j0%rw~ezJgn zANxxzmqE9&-S>&2Lj-1G_OoQ(D3*(Mp7GL|VhjMpjbgd5KfggNmojxzIBR3Mu)gwk zxhh3n>GfEvZ;h~28y=4w^dx6iF~Y&!C>b%6_fU7(>>oLnOCsFk?iOUBZiSteWTrj5 zTM%v=)$+K8F%qr~W*ZQ0c}XN(@qg%dRP1CH^az(#IO+CjOCu^{S{z1&*LZxxc%1$H z^P<#6ZtZ2-^f^veSqwGbEe;0)+o1DGEC^AOcMAk6Mk}J=p^xX!m&;E*r)@`5`+~M0 zWe9ONRg}&8nj2v(i#JjtZYw0C;{xU@yn_Efg26@w~I@-@>>xH%aZXD5A|&KCXz-{Cfj5k(jM{( z{8j<(f)Pk8J{)@Di4mR&f@`@Vm7=JANANXQs{I-cZI%wD;K9%_?tuz(Rl0^8CU+yB zyroKxXxn9fNqeqrY46nd$`K4~N;5Ev(g+sX$`uD^D1>>&L9QpYvheHWpA;g7!Rks) z;tqXbi$5Y!K<oW%Evga-li3&xBPOa@_HqtLmW=&x*;fgTg;2Q@u z%$G1@0|M77i=8HpV}YaX&kh{eTX+u+s8r@Kl(fi+wCcLR80b!*nt7N#yG@2p8E}#m z%K;#E#^tIV2pQn5_KUrha4O$&ndOEFFcmu%RwSC)yh|Zt=mTpC zz5I1BFU5q(uI6iP!WyBOn9KRYla{>eY&ypo3xjR$>eS!vDsYR6vUir*DayyB}6p1 zbZU8+=71z+m;*rqIiN+$HJc6ww33oa0D(WvqYhV^t-T_#0L#E2Aeq0d6fBSxL1=f% ztvi;s^wdCnepAs!cJELba7LMjz7=r!PT^7-QnT0C9akYGhy1t&Gmv6He<~8uFH}VJ zisD9lv-bhjI<9_8wQ4WPSo*wixM@8OrLBOh6`E3MT!P5%t(oQ_m#9KL4q>UKLqdcq z&YC?VzzYR^_BmD;Rto|@qD>VW}7rl)Q>f=&| zV8_So0wV2?1<0gabc}v3yunf-5vbC>$u!w`^vr4U_nh`={+otsFjGJmz%sjV=u5LfEv^Z`Kcrvaw z_v<$~{TacLMNq0`7asYPu0e>;NpCu0-mEEsp^-nQr)81eJnfK({w8ffMllExs@*&_ zHHzw~x3~bI_RKc z+HYQE7VvY9yor^9wyTL3jHZQnMX5O=pRhDXm|;PSR)jg$0MRZLO{UBp3H5Ttg%!g{ z+)|B8IwTVYg=km40xYAp2!b>1!^p%dcGp8K_EZ!tVOYIJoJ3jb6)?&#iwZRT;AZV? zYJr?=I=Nc4MM`*)Cm0bTR%_L`x~uv<_1;56k+Rxv&P+FBa}hnfem&?rn*mebw0aqF z1Sibtk;1W@L&9}`ZFacoT+&a@^%D*43-K%ruz1Y~u4ta-7dp&HwUUfpp;41(60wO#Ge@-a;AHJB{R9Hdd$I)yrN*6@CIeKEYU|Qpz>YW+Fcv18F_fc|A8!Y`Hxrx&_Qe8K}1Ux-!QVPiW>=H*?bWry1y6 zDk;6$?`EphOb?d6mdKjq(Lp{=Cx~Z{fz<^RldZ{$)*2+(wYTq{xJUO7WE9Qt7pH?} z_zSx!R5brl=Ls>Q{}iXNBm((_*vTRH;VzU3RJ~3~Llcr|6(W`+02-NAE80Us5tSwK ztn;@{p&HJ#hZYq&E<+;Aq{)7{G&A4mQL5+C7388l!~!;{er>mX`<%ZjpY2!9jIb=cwoGauth+QXjc z-UzQE$D$}5yupJyB>W>mL5cs!^w-?d0cJGdaI$5%JyXziClZx(0p!m&|4x`+P`J_2 zr8oewi9;!=x+A4gq;T9(S|;&)G-z%EMCe? zGIf|yEY48JqBEO1xNpeRq0A*?tEyAxKpW#8Z7g`031AzD0&WZQ*u4_qU1x_K4$KnTp#RK-R*vSSDbx;lim=4|sQvup1Z%i#6p3j~KfY}9X8e07X zGAr*TF>0U_0D}U=WqH5$>qxC;wYg2d$tFlUKNT)J&+%}WTpx(+*OQEF5bDDoi z$7$Q_M{P07Nm{UgR~ZAK!+V*=*@EA>^)}Z6b4MQ-nl9u_o^h#D^V|1j&!aI^dR?Da zv`P3D%78k*#Q4xdPB^-UW`u$OB3oZ(sc=>-zXZH>cKB2*#oeexoxKQ0N z13DVJ0a-(!p_;a5n9H=5&*;h_S9haV^r-%4uJDZo{fdMe%9sSzL$g^nV=g93CF1c` z9o1Afr3%ou^mQVQ%50?lf)^(PPqOrmi3V?Rg^&j*XN%EN#c)zOr)Yt;R<2Ckui2q5 z;RuqbOAsF#-%4)oQm$kos%cp-g^FcRP{F#CG=hPN-#{hWqb&aq(~#} zlC8j`fN?jW5M+>VF51;BAQw?et-db1!{fHYf>j;%DNruDdt4n3T9d`E<9i=}hp|)~ zqr>wXc36=1I?U8LyujS}Hlq z6w1hVq$k3Nj!y?&lul%1{MOCN3hbbnD2ZlNW4wy zjJnJ71Yp{q0!KsHpXbqUb~R7AkcT(<;nEZrfg<4(!!q*6GYHtkocsyQ;3uZLQl62CL`rlD3MLmddRoBo*y(nIajeOY8+ zf!}$W1?tr>1?u%shgDsjvWLO$PycRs7h#TR`e#x$%H8Uu$QXU-|1iIEPdCMNM&RtD zj?v9>_C8TF4u=!966xs@=!!(Wq+WTQ;huKujFzZp))`BEqVBIV$R2vS)RA?(3_+ZI zvSK5@sT{q{oE;t{%58fJP*Q~WS;XIqLi~s#AORGrmLe#w*AZ1o$yQ-Od7+IdjQ+eSO^?JCpNV;%Lj#F$Anmn8pfGpXo?w6@q>Ka)yc zY8W;9W>U%P*7nY%4w_{AsE6ZM4)dk7?&0)n(XM-J$ds^tD)SfW*RmQrrZ5{%Un+D; zIIZc+G4yJuo9UeBIuCvXn#8onIY*Y*F^m!Cp~+FoC#MX)jMROwtvG4TkHa43`oodP46Wy2$f*IF|L<)Q6UI{Con-8EU!!ut^!_0*O^M2 zR7nz6*eFK8Xo_dfUdjjdX?)QzhgjYpK%D4Cy>!A7ZQXYVHc}kPTQzt1(+~cf{8ZHRSny- zXTzusoApTV(xOTq`E7u2y&Df=jUh z$+nv{zw)=CS{_@2eRC?Kpf$`or~)2zPg8_zGz(V&Tmvm>x@v*8Xig=Sl})Ivg(i%Q z`q|c(&(;_ENy(Y|2Gm!GUmIeqQPe&sp$<^bjXpd9Kz4+N`cTk9hrm!yDVUO1)l;|d zrHJ2|&u8hgn@V^x`UQaf-ekly04VqSg~?{Mc|gC(9#q5aLY|^|Ie>clD1~NB>$YmM zIbanG2E~&h3!5gkdaX-iUb@nlPhW-GHc-X*o{{gjZ)5e|+HDF8R`SwvU6=URm)hf1 zG@EnOuE}TZ=5BhP*G@wmI}L8xJiSe0PQD<_$sPRAsdGZrtNdV)(OeI6GSWHYQ$ft^ zbw-nhW>Bt=@YS-p-=v#Y??}`5C1C=*bj9=F=YyxaT+cCHVE>WM*&+ZRu;t(4(@*78wo~znuM0-MMNPOfH%K>{#oV4wDd4&Vq>;-ZY`Tb zU<#~U!AIu&b$}@bb*+BE#x?pawVUtDuk?J4ntmA%H|O!*#Zt~7ZzN}P>o+_R-w;aC z*fWcpl+L)~{ldc=^0>#Y?Y^I3H7DQLm?1jJLJ}OhGjVw`3r+4!hm+(VBuOf4h#q7` z;}tAbe=STF42SS6i-jp>v{G0k6LLbL6@(%Xn@1IXmfeS7e`XA+0MX<6rr6dz0+Ou= z+c{pQi)`PcF@Pn>8|-HY7??L(fH)9eW)}~clejJp^wm^HoDq-p7VKz@Itl|@{M5$( zif*Ww$p%!mV@o=1n?2(Bm-Y_1$hNswsI5{8I)GFM%_5!AK78xYzBX}I-I|;L##bv+ zdZ6S;&xLRSz|wKB=n5N`$k>hWQEy=k7x2u^TXYbFMT=R8X+kyH13`eo2!gi}G*^1& zV>6dK0HzG#ZVGL&$Y;1_iuTUN9F|>UKofCRWD;l)ictFWYTzod*%=F$pj+M7qnBs4hn`TN}_p@ zs9B3T)&Xaz1Y`sZvJh6FAD}`Gt0D9{wNQWpG#8+PnWEhABcs>x*G;j&4%A~RqbpKq zX1lI#=uieb3>v$2-Zwv<(VW&KAczx*x#xw!$7z7BF>>mQh@#FWAuy`)Vh~|Ps z?xMNSVH>)R6ugE09Ui%*$;bbtbflXCG=@kwF=EARL?Onr4SWL<*@Fyd>Mf->`*ex6 zzcvVbqoq^`e6yf1Gpz08QvzMVCmr~PSj|^+hU&_zDgNER|IW9+{<#l+_vKeywYKLK zuiSghb^8zQx$>&%unT;n#o;gnz9GWgh`={XMwKRwci(_eyaX^GxQWqZLcs_W_-5#O zf~;G>Dnj6!Y015sWY(a5ZW9RuWin1?s!N% zH^wDoRWw=4Up3Q#i=?nB*bbJUv7lzR+tVW~G0X&LPpqjIi0H;*kY8Df!msECrU;AO zH5*lcOIIEfP~@~L)}HesuX&Y5J4znf$4Dwp_{4{kw9M2Zv(w1ePXD(YprJl6H(UdP z8=36QP3oI!S<9-w3oBU;>#yOJ96XC}gtrf?`|XA`C;Y5sRHLOp^;b%Ki(L`RPPk8|17f z(R~I7YI%6^gH1xVB4~1{oV5c*?=>ztoX#Pl`)`R6?UX+6&LKA^>{?f_i&Kg#9 zAvcjIG?Xf4_s{@PoGnRLN)7^4X){QcAg)+hY}*TMP={N@eFU?MPnY5MAKN&|EQESB z1j6}(8=cU~bm_vSlLTjs>%ZjYCK`eX$yhb$oNOG}&~yfrpm8UMLx=*tQawMx0f>!2 zXP(G&Xe<@YpkwlvygwG`=P#YqwXjJoH2F`lH?dJ0Y)n7LZE!oV+W=^Gsg9$Ks%vA} zZ4^IsgdvD+s9vOEq4^*B#eKtRNE%Lh9=l(gx;B^GCNa$ACvy0(uV$GXvBtW!*liF& z2W8G4)M8ur;dM+q5B!yt%=tDY|LOn}UnFK62&Nhu#cx zhd(+6+3-oflhWMd8s^%o!|xv?{`|ik4ajtUY!=ARy0W~w-m6_zf1gvf$B?FZ(^dal zM@2$9{Wn|xFFh=#oa#^A`(>xLs0p2Hu5)VLwhU_dl29YqgzQ^m**^;i>cNL}{gp#s zeEr`Zc+IB{Tshtn6yl)FqOi_azpp-Kli+a>UTTSD&!hIilK zvR^6Zq{Rh=c-WoEKZyCitx0FMv+7n0b99??wH)SfHw&gx=E(1E>b|Waz4%t6)RjF;EvMV?-u>`+q{-^O~>SR{XD|jF6Xe4qV_xv3939aESB9m+xVj&3%_^TC(fE>?#x+?wNR1J^tyfdR!~7TFd>IuWk9a zO3K&%I2mIIatLpp;enSP{{h^6N zhK2z>AF?U<%9qv4MCNRM>?e`kQZIk(l3T7hyzWguCq07-gR5OEEoH~2rm-gk>oLa8 zKoMhDzzHBX2jbDte{;)>%1gTS05AP)bBgk;6JJfC^#Fq%V$k*A}=rJP;d{rWEwn3ZA2 zUU+tKXL!>kSIN_{`sjX%3^_OIzC^8VWaA;81U7ZVQ#!AWdq!95?XT_EdRurqVy#{% zxmM24%+`t-v8(l_SNCh(AKs2wD+ZDXE0)pOTG`X@YTfrs{aUXLZ%3>(tnY*YP&8Ys zj6yA5_gvkt_2IpKJ7TQ}=?JUcNc(tY<=xf#z@C1shr-(tYYnCt!HNK!g;kQWh4tP? zzR;tAyTjWNYeo5tu-YrO4=bx>?9rDXakUXrR&SNukuV+fHEEf8r~zeK%j?X$Jpw1W z7>wVvTn4*hw7VROz}J&}BKWz{a8MR`7PjnUmy~C)4l}XO*3$P|EF6i8O^A4*sq(d+ ztJmDPf&o|t2~0EHH9*4~*-_Hjap`63>M?1KjlPeEDMWtSS9LZq>j&G{GKbN03J6SS zlSQjTFF4qkNYjq7V6cRB^7Epxl=>WwCe1=~Y!W#tG?QaPv#AdaFSF2K?d;*^*wf&s z&>(q^g&W)_I^6Iw3yse8cO!M|seV*wFn%2i8ihD$M~atOXs|={pgA@>J1R76?i>pm zE;H+(;bj&Y2Owyv_}DD_sL)`wKNd9Ve2W`iW}(5{)WglO#nMrsDUJ;dhOiDAJK*={ zlspSkV3#l-*Y^BZ9}?9L{_Gd+gL>0zS*ujLd=0TFvCyFwOxC$2h6yc1WQMcs+3&NA-ARcGOL;;KVPoxqWmILx1uE${<} z*JhU_AwO7wagMt@@P8zMJ;W>tBohQfDD-133C&L%iTF&O`TkuUTt@I`Bi3id&3 z80?$|St;`emp+IXwW}v{LpVakTed=_`pK~}vK+wG2w|=dmP`EhVlS{yo=L8%l6lo_ zSG(y#XFkV2S9{Y7P_ul7bx33*2B_H@y+a0)@kU=h>@Sye?V!`7Ap*JHDwaCoL+*rJj&U26 zggwPON--%6I2$oK;@aFRg`LNFLWZb`6~?NilR6*2Z!qjEQ&F9|6@SUjDun>(S*5lF zt5jvHRNo}U-np$sHc4^nn|7*it3?kw_N-dO#4k|*o7?}BY(jbSt^(_eGhnd$*V^l~ zJC1(Joy~co7;>Hbd}n@8U9p0Mc2?2}+$O)J7E-ORxL6nF$%TX6^iZMpUCW)J1vS4t zJDcX^_|X&%ifU7Em{8=U#u`AvMtijOzS(c@yV#qwD~C_D+oMlv4+KMFdGm^waWs@E zB2Z;+qHZof=IePJrskS&S4BbPedWv8q({QB662058M5SWL%C;EZjxH{T0NvfY#c_* z*CsX&L%uwrqRqt!apVR1uvtv_z&}BIt+DLfRV#DNqg)TKjbUx|@!$N;a+SR z0Cl8{OqV`8!yT8m$>q)cdShRSx6$S8=cT4Z{^<;inqk)$wqs9+;LlN3*IHrMH*ZU7 z{*@4<8K;YY3VI|5xPG%lsR|7pbhAxCE8;sn$go@TcJk%ixV8~wE#RpqOZb;XZ-(HD zA$C1QqO+LYUHjf&V1qG);6VD&2U*cK;=R8xDn;e^%pMmxlmm@L%$%TXf~A(2E5Nx4zz{U?}9z zn!UfqthXE#o6W}mp065go!RH$rWlPml9fVv5iQ!~Fvhw9p0*A- zB5G>z$J$NIi6;wbn`hJT-;N$K8h*EMktUPxx%wFr?6Xac)%y)7c_gg)GpP^fkiAN?}*7eW|LQAa(l}`$c@x;CGC9(A(?ZUGPNO~NEv$hX$bZjKKv|3!eqM=}5E;jMPX6=uq z+@uR99wTMFE>G-m6j2_+Qir9AP%FL!VFu;I@4%^WQX#+ib>7%tkLuo#OHo)Y_T?*9 z3q$+M!z>>bWj1d1Y1-q#e7}BM4`!mJ#m4Opq;QSxJB@4S)qIb!Q6!xM^iKOUx2cy< z?X7w@hWcae0UuO%X!PwAU42-OPtk4>+dPD33ZHb45~Q?Vm~YB6K~1;tU}-x26;_l} z(A=h2yX7;tefdvs_~@@~*X35(+Akqxufv+7sf%phj!@z@KRg$r@_W?6zf9r%UEy0k zBliS~_cT>k6}8r*hqCAg?R_vX*=#mw@87-dy;pzY^Y>le=`#WDUKI(l!Kh z4lDxjZE8aO$;MwT9ngJf57nS>+bq0!iiBXlQU1EH6^U*F$;b_q=SnUuoO{t>dZIfr z!&Y$42>7K<3EqWWKayqFu=%GAPJHP&9mD_6Cq~59X+1 zQ(g;@HEnVpXY0x-^`gG$pTC|`FUV^)XQT;1!^(kBc^E_$@lpPwKujDzdHMo9w#*lz z^5GIHJ(QL<>lX>2g~+@dbD*}(oC0FI@h6t%<;`yyb!Iq)J#6lKgUC6#|H?G_z)T8j z9%i2WNl)f!WwVO$Iq?am*EyW#ayw{+GrLSKSlY7>KA6DR{hck&iw>|&iXiy>X%44sb9U@+q6^-3(^S$@Mu+h z>AJ5Y2bVR6vPVykujUB~ql5lH|7^x;3(h&+j3XbvdCpf6v{yXzVtTt^I#k|~4TO_z z&nD6d3Xx!47t#rImSUAd9|)c14Zp6b^vciDVpoz+yBSjy9Zfz+;yJkabI;GRi~<2a)T6b?v+?tYbjQLI3(e5K%bhiWFrV` z2!`-R5R3m{H@wvy3cB5)@eWujtR7ht)_BCOch`UcVFZ$~WD6{8nGr^SFa`_O!x*Ds zG>aC@+Jj|Q!FU+KG}3;)zsx+3`>0n}OR`*UtM0vd^5o-}zx=)Pm)4rngxUM=s+TTN zYIXnq$7}QLQ)=z~wJ#N?Pl~7NbuOk(dr&+iBrC4v={b?p;%+0V&k5-eQUtsK6*+OG zugiS3z|T%G;;S7dMG$A>IXx1Js%wx?sZk0jtvo{IH53A!miA&3x6i+)~AEV~q zxje3y@-7Rf3n{b{S$Y)^(y>)8FOl2-Jul!VjQ&ScB&Km)v!QZv3 zbac(_NpC>|vW~##+SYUUZapK>yA7y4i!^4U0e^bMvzi9^!=F=ZlY7Iz2P$W_$G=I8 z6qhL(_$;#~raGP-Hx&m-cc{m&$D~0a2es1UOwOOiMwGviCiu`6mX`pPMMtgK#bzKx zLrc`1J(zT)pmhsN+tn%4l60kxAr%l1{T7AeF6mr9X-T?54NEaXU8jf1Ce;o3NL)U( zMlGj+)zYZBuxbn~Xo2QwN>KRL8iBb4%H#H^9mhYHJ$i-afhGR@6 zSgWwqBQasi0q5F26=OM8dWN8Luvtah+C#P<=>04 zCq-y<%D7$}`(j3F$TO_MqAP;7#>IIXj#luXYfo{#`#y@fA#q1OrcrZZdD zPyQ4WcH>Elr&aGx%^1k>S3`QQvCPsN2dhMRyvaG3P2r>}43u@#qOu<4=|bh*bpz7! z&JO50p6@Uq-Ia0Pd-+kQQ*lLXjd>O(lHnxa|baje51>mAQzoMP_?x`ZZWv^gF zs+gi*nJQxW9ME0hsV&84bVScqpyM6_R<}rB zM(N@(OasbVyx%uFm%aQIeRWXPli#VHe9@j51oh-|)swH<6N8wZe71V>tUWOZ>B(XHN_Qdh+k8Cx5H22n8Eo>XvBrhyW5YL5M_ji(j28vI*-Ik5-R1 zpL2$(_~cZPN2|xCimCaVQ$?7nwN#H!6;t%7sUnY3pPnkF=I>1vd6ar$s+gL8FjeGH z>a$bD)cnJ#B9Bs^n<}Q}=ckHb9B4b~qtyvx{hoYq(2-!9KgQfEcB1S4J5^> z%%6mL@>udZ@j}>{als&&$^=)9{DO{pDokTLHfY=gmVpfN-1~t^nUg0>0}kAnh9-d- z)d|>xd*aGZ(+v9eyxyYZUK{0(*I(**{ZZrf?$U;|ytF~q@#IRH_niKi)pD0MNH#zN z@GKs&ncsnx19)aw&rh8ej|CNAa7#77s~fIowvbB)kA`BBMxy?uy!ifgahAVT>q=8b zl(0XyZ@Lfbm^L8z;nfoTxH{+^@!(xGz*P1lNub61gnPv>`=rS$iPWAUFW+m$(iF&m zaKC2Csy;^gWmIl`@@Tt(eAe0;yz~S4_coB;^g#Z6 z@m$%3S_8rDFRhj`ngfw%^`nH_e2Dz_6-G?0%+}9nWqKjWzF!&FvRjdGSwOf5pb6_w zA4!kgmQ=@Js^*=f#^PUODnfFcukkIDdP)PZm;pT5lA%ZbBCH7rB#fUY=g2}zrb*gs1JCjpnO zY(-^*8#pLAz@0y$_RyK)utl%OUFvofwOcg85!aZ z#@N1uZjME&hwP1*!v}eG!*~rQfj?Pt`DE}$Y{Iah8#q5X(j-UpiB7nZ58yo+0>W(= zke9KG^QE7!Uy^5xfY!+@rh0uoZhM<-$I8-(G_jUP<8>Lt^EJk|PD9I+k(3cpZ6+6H zz2?WHW1EZ#lXt#Wjp>LR(?zt-nAY=E^|e+T6ZZzVFv6_OSOTC&*8@QWN}K%CcYLs-2DC#pFX#%nzr$r1e=-M}D5x_*L+1CJD={D}XSX{%)H zg`va5{D_;?kzDft?(D%49rlYW zJvi18^o&761DJz8Ae_0;e#o-mzjgy|#WiqnSr0t2L-YK%b)o1wxVS79Fj>ANAR=hE zOg?<^4~7G&Hm_eMoP%fJ$~5e3gRiL(>AbC~GXo}QE~k>)=1fwz5xC#Lh6$|c7n1-$ zjOjLmDR8i%vrnLj3|({baXfIZFm!fTrrnjVSdHr^Sr|OY6vcAHOm4fu;16)*w8RN% zKT{xL<5wjX@Pv(97!8`U*k%WeaxHbPgh~$aSEU{JN+1SoTv*1kgQ2EO*sV2Zpti0# z#tfm-{@|Nzh-_z2S~O4l8hym}X7IM+dM=)Bl&rF(&o)RiXyr@7j@DaS_lSIlcGU9S zR`N5>4-n47gF=j$kRWYB8@nVG1Qh2RX9Xp#*bjzCPiDQ+g^-hVNA=eQJrhYt+~7qJ zE3=Fzz#+=lt-3*3c_PROFA%ecwz?kcz#soDQ008!$*uw@V29XzOR}3X@Hk&TQK!5^ zQC_8sC;hiepKCY*?RBU_3T3cEvlUmTG+jDa zeBg1S#1@HWVGX$#j83bEJZjuZ{s&*jqNPlSA;K5G!tb=b@MF9>Qp@P0SV*( zZSjb%=FEOehK^|PAMh}8;JkuNQbC3gIRlXSR@8L%6{lfodm7?G#)qr;n`lXPR!vkB zZ*RQ&{y+Q4M;?CiJ)1fYZu8|&uXz8x8bUvNR-Hozswcl-PX^(MIcKyKM^jb-tLt$y`ibo$E;C5mK)0t0L!b!hTIHi~A!)!{YuLwVc1HmN=Y7jJn9*WYS;a z{7q~IDHaO3RXCtL5|Z$IfCfr{lZ=KMC~_kHjh%I==)ezL~!X zZIBXvYxihqrK5;F8eb35kdsT>b4%MLSZ{taj?4QB4~~3@@JzG^9481w!rlI?Av+#m zEMm-{Ba3%(4w$`fb*B9$G<8-|T^b+McTce_Jsb~kiiUpa(5L)z57{%kSbIKronma& zn*Io+)%H}u!~$O};?^pGH`O*h4FB3L{A)&#c&1Tukl|mAhA&k3*Z-DO;a{~AD?X>( zY+MgmW(;sSiDI^|yUPf6JdTTdG++y+&?ORV`vepgJr}=|tb#$uiu@J{MQk2DMDe%B z&h}}}KoD1`N~3HD!`T>32DiKVb2JhglBiyYzNF*eZZ_^CngcEKG5G8e?}iQst!k%* z)QFF}{DI1FR)Y!ss5xjUATX~v<8`)OMR0h-r98c1D#hJKtA6Gl$RssFr-K7)|K9oS zzY?h8pMKZNt9(Tb{LsNo$3i2eIH2cWU3q#=r z!?6i}JqZ?en&RQJJh5xIN&Fu6huFW<_$)>`EgqJXn0?5#!ftnM4?YwpI-52t#EJ|w z#a6Si)Wue|Je%I+@>Wx9MWkd?&l6j#Co^KJ@j06t?64AEYa;30qt+6cAjt7r9#esmw~4`T+=UeV7~UAgBie-R z=$VqZ$AqGwDP9#RNJ!!!Y5fpVCvA(3NT{8+A2X?xZ>mh34Hg~jtu$10Pf5mI(v6df zhqHUbdW~Og{bEoOR?!xV&;2YDFJ4`o6#zm!55yetc)Ncz{pf9*%U35+6vg}(we=_J z*x%ZpndgE~r}$IyQ=O`AI!e%)h|=PLVzlrza{3`8qjF)fG}>B9~}0P%WLe?ch{yI+xDdaE2onJpO{TI+qxHkvrHjgWoUB-NzZ-sTZHL z_#q|!{u}R0H|OHh7IG%W#-_R=eX~nptpR{H+5P5eQz)ccBVARgh}wU$xty{bCfj5E zu={k0E+e(Gra&h-69>vyU7vkPP3Ub!OMBj@)Rmj~xatr?4ZRYL={dk1c?{`&sP<$%XOMJa&si%Qt|Iwy_p_E>A ziQ(`kFluRZ81S?`3{DbNZ0r(O!T}-Tv_z|1xrGDR!6AX_eZ(^p%;n<16wsA@RDjh) zuSnl;pS!6seRX z;uW~3gd4*B3oEL7?0ba1qJ!Ka)Yd*uHZweXcG>JZqwga{lTDjxdhj8uzW zA{4=3!l%21Hc<7u^a&OSb$IeF9bHr$o6kG1dC$o^|LF=*sbDc~!b9QSOy2op$@epB zQ9)m!xB2Qc`ZhyE1`x=oizXnbL+kiE0bscU*wHbHVe;U{YwpNb&Sw9QraiH>1=Zfp z+G1GysY!OOi@_9s($5-N{Exr?`^5)->KwVpi>>#5`Kk2gN&Fx=@bZ=K1u-m|!<{3w zhbK>Pdgv*$t^o6%JS~PMSRri7X!I-2Q|a{ARL8e2H`@q9b3pQdHu=~k;xBjh`$QD4 zaXXt`Q#`KU*}rvW$^G4M3#WhQ;r%^__xH#NN08FI`+L6d3&OHsAdfG|{XIX?kB7mq zyQP!!Zc{*|AZL=s@Eq`gtu~|phxB21IW}pV^aH)h&Ps6_Mzj?`hU{eJieA&Bz2OzG5y!@cUEwQJe*mX3<1-8rf!OA@RKHX2|e(=UF?#PT;If zQMJ>l+HRKJ+O2lsdP-4fjw3TIN|2^dpw08ql^^cZDA6Pdhy0W=Ba5&{FqYlX-&cr8 z!PoymZcBzqK%jCvtnmSB28W zYIP}Cj@8gb>n|0#_5!^CdwqT@j_y-P2K~Hyn$C%%=oR_(${BBRb{+HZaR3~aCnu}` z$-#mb?6xBo=@eo#p6F8}#pGPQ$w0t>Zxvs#pGWb*Z*ZW=-A`o^{VwH;JtdTZnYhYa zjbpiB5?xL8y>N9d)Y7pK3SUE8)Vi7vc%a_Q-gytZLR;nNgiI^uiMw>t9odl>mX~Ol zp?ouJYa-KsRjh>dN63kbZ_R!~KV>ng9@;`h^{2AvR+SM01S!`NGcKPvxt5iPi-~WT zW@-&btdtt|PbFLzF=Ii7)`#rUCK<4Rq@VQmA&CmiwAUy=GFxgCz;+Far9_4WhE%)P zrf;U4+Sagx6axfS*#yU;LG8#mN{=(D`|cCQBz|7#yUs^aPES)sUW{fZE)$b!u(e*) z$B^0b(VO(-EYjp1$zX>dYXq?%j|TsDr#f+eb(yLKptLlK;)9KmMULh%dWLP`tugVi z@6@hxbiw_VBzP3b`bpDHu+B?D(w#im&2=W%QiAB4UA1Cm6RzkpQ$BcN?Wt7m9}Byu z7hOAMt@K_s+0+;42^13p7EfdB|9I9YD1&K^=1KJH2P0B$+V9y zDYD!ag<#hih0y1>>aJZ5`$90_QryGf_RUB;g9!1)`V1v|1NTPZz#%#A4%q@MHdH}; zY4M1vd55=|P>P3KiA3@Dy@y5Bd0skyZREm2eeftx6_t6E(WEXAbEFFlg)?;iROCk} zIu%B1cN_4mF)(x>gaTABMlGcPCo++C$BO?dv?*R~-4yp5F@07qX5pxu;Z<>2@wAnG z-btu55JPcntoxj(FdAR3hB7ll5gX76OvDmmek}7PLuB1_F*X~kWdTwsSCdypmev*6@P zl~fi{FSa^!F_sr*hDY5_ z3(wAsMrxC@xr`Zyg8+aaK%BNr=rx9NzBko=6|D4S)~>`>D56?X*Ag>GtT+AG{WO}kNEef`VWyI zAr1uilyxkY80X$F!vQa?0Z*&${+Urxl)HsArQtnLA0F5s=n~53>Qg;G_{R|yZn1PqkrTz-Fj8YPsqir(7zJq?db?00gU{g}x*hQpw(Wl3{_ z0!U>7LB==@z5Z82uWEe<6Wi=gNR=tuw*Do~Q|b@LzgpV?qX%5xutw6D%?+CmF9?YC z0^qQ-^F{ppH#mAQxET*?W!EkTT->c~4yjL$+fK5djz-v5#yZ^0o-4`3dsUrPWv!1T z?|1K(ps&EVu)BMk-Pupqoqe6|?*4jr4=wKQQiFpf*b#^f^cEllga)SE`Q6V!0C>-IzE1KBLG!Y&4qza34k8>7RIP0g48A8kZ`R7Nq@%lH4}Ldan(M0FA5-Wn*X55FFOiD&G5{ zFG5B>ETJqK{8e0GGbAGoY=zfa;ucRB%@eQ1Kl+^gxYyqIyjD1P3^OYt{~6xtok5s6 z*FAMw-)||lo=;El?dUD1A?n31{foaodUJ8-2kBmRd6yzBDL!%C&BY%@KU9AJczEqA zzxFLNPXvL4>R7_2Uy}4A0{2JJ$rJU)B-n&KKKMk^zz9EIYG^%xbaKK3+r$=xVqjWJ zVF8&&bmlk!lZA+sljXagERQtV*8It~7EQLbaI&q%la)z-X0pj~;G?AjwJsBgIhI)d ziuolWz&(>En9z3r3q_%V6ZSy7cE!VWRQa(ajX6faf5$5hu%SR7GZJv=*EmJ&ube+) zOuP)IUA)DmwD=FU^5oT-bWoQqs!Q9|1cIn&gSv(iY=Ocdhv=R1!K5316y2J4euPjT zV=8P7q(YUub8F%;EX{p8FU&O&2xP6(tcZnEYsIy#Gs=9QMoD%U+Ti!owsM1$ppNTS zP-B>G_0Qx3nMD9eYL2MOWY335At-V^JTm}f^6S`b+sut~2(F0llIE#;0wqGP+d;cT z^{qwXn#{u%o8f`;fN=q|W1vlp*EFHuF%q;_B??>oURsaS;FOu0X?`-t$KzsuS z{5QFGsPlLo0cgPB{bn)zak7EHCm^yvFl*;`@c2icPj5df51}~rePir4`sWB(;;x}C zwi4nmI3g&x6o3Px1X-0%qKJX1H`;XLlVf{u3)}_^o78~#q>0r+wHIQ!qLogUYr}oaF$xGJ`r*mCJsW%^h6cGV>VFMifQ+^^!VasBoFoO7&lZ+OXdA0# zqBMFM0tw(}9V|PulwmC@a{b57Lf91yW>+;6b;VKwO)oa3`pIM@HL(z8*ch|yY#+4= ze(Af%d+}0n(Ld6Fy##^oQ85YH)%~E;|=?h$3Y_E`G|6E34+9dsF34sEE0a+K zb+JE|R3B+gm<~eSKjbOxjMa9$@H*0a#VAEBsPiGIlK%TI>bp{q)ebWPoVMejS`5LM z-K*{uR?AduK9WRJUj&53SwoRjTpwQ4E+uraCo&xwV)iXb#n}Wk`x2q1YK}R2R}}uz>S=OP?u(nuIK^5+-{B6DY}evrqjz zlgEM>s}DQu#TxwYN?`bn+L~4^e*Rl{rXHVXx{_$Jd$f`){FntX^*F9AOYsFw7_a-* zgM0?ByEX%3DAWRwxcdQ~S!2bs`kMWenv4dYNGmf{CC89JDoem=Xbm3RQ!c((^EV>e z=4OYaW%fr1Z}yv-6J#jW_9n{T**QT{K&7Q*Tda5mJOJ>rY8V$1*8P{Mn@FG5KqvbA>8?dl)-scaL(JF+1YXNnVFK`vJ&oQ^Shsv(pKW_%!BvD4H-J| zJJI$Nisj2wYEN5uQmTHEi~z!A`ZaE zOcW_hmDC_0YCC7|0Dwt12;d5Yppfg$Z>fqBSCrI>P%Km{trbCGRn)2#A;YPtT`TIi zqE4-dyLwftTNbgTvYd%XGSm*7e$w%%1o=8M!JU4isYiT~ysGr@@+{eoJaKLi>CS4N z70-NF(DACxgY8xu;Y+kbnq9%2l^8XkfwjGooflpBoY0 zBZ?6VAqmQ71NxG=hU0Um#sl7CZQfRZ(cKnmF7V*`?4LbLM*=53babM%qb6`O`E#ri2A`@gCf<#y|2=!DKuyH18` z9Tz2oH3}_kF*rc@P7n>GiELbCNAQ4*Ceu10oFXDk{<@3Y=<^6aQirIp2k*SExdMh1 zdiIXZ;@f8*`x*VS`ivBEMoZN=t@UA}<-x)&TiD`G?OIx>Z=iA)*SDG9#r4hTcX55o z`dwV#*nSsRcu#I<;c}fwT$nBUFZ&6ZT(w=>VY~LVU74SN zSluvfdmgpznQMD)d{YD1>|p2T4^8yR%?a? z^rX{@g7l|eH)sm~TWWxfF1k}kvz}XYb2bNpBDu?E*H#Iy)F)0NSFKNH=ZW`KbI!!M z@WXIw`-x)?QLWzg6Ymz5K6flP_(*Tef?(N(kq_ohe#O1hpnQEt%Q$6<6jSFAZ99&S zkV{Hkci@&Q62KLZsDCp-2K|$I6CzNwIPNHN|8%&-Io*yQ+Sb4qVu_sLi%gNh~aiW4A|$rurN=>+K+VF}5`WyaqW zVNtS#u2@2+xXg_nG}e}#VF{k<=-Cg?VF~4oZmG{m0X1R?jMGFkp(JT88q{bo_?HPv z4Is8EiN@JRch*5Se%L&qSK`qcsB(Ka&U>r2kJ$HQNtB`=C`cEcrG9E6n!? z)w|7Yz=}_ZRMC-82aR8e+XIAAlTi3K!5r78TI#r#ND)RMPVFG*4H6sq87g~$jxTOK z#N>FDCFur%j%Ur~-6uF~(sRLKfNFpP!orYeA!3E)JXpMafCFr&nF<{7d4l7Q`>B{^ zd>iY(Yjzpdc#2n=C~K^4nh|*^qR9~9KGQtS80WMQJjE&D$n*KBmpF_aVo973x+JbW z!<`-DoaN>wA`Lb!yYs$keoby!l{Z-B;&~gNM8<0H!#VRdzBxPZ2BTa!Z)1+0TW&XR z$1P{)ZH%%p?{0BH7-a>%hKRKod|#tzvs*q16TC5~PF!UeR40nXCv{5`e8m}@;Cn>v zaX?0yP$0|Vz#`RwPg)5q6=TiV6fhntZcwxwnA}?OKRODm{ERLQ=ff847{4;Yu z18eQsPkZF_th3Uzcva~QAc7DsBj3hS8Sa#pr8^oMO0*4OOeBu6Q#8vnjvKnpjgd>; zV)$O!jKx^Xi_b*jXw%VnE(#IP9eSQCbPJ1ei9Yd!*C5yDDYG0QsO+#d;DMTtKdsjJ!84fZbuOwEBDVv2?wa8$9=D~c( z<7s<{sWXbcb=s0wiZHIwUVmPD#sroYv{!0Q^?`a;U}DLnG?Vmn$)OWLZO)Ckc`o6| zzl~+?+?+PGU@TpC11ED6Rc6N!$4g+K>(qu($!1prQa64! ziBer*#=<-#19SMt2EvS0(&DgjL`8x0G%fBY(n03YVo@RsjWk*;*&JG&s8DoR^cZ3U z$*5>?XYaIlc$WV$E?$*!2=Aq6u`Y{QK#OM#nl=Q{VnV6K4(8C}p?YZ2;=Taa_vX}^ z0o7=6+tXrkqY?0da8Kz!OQhAU(PFheWA+jm)q{VwS-fuABv$G_hK#|;Cm6fh3YIrl ziECsur2?I6w>o<@;s&B7dk7;7CROs?mBh;%cN>=6vy*`=G1InH!%?8nFwl7Gu0vgC z#F#eddOPndxnoGv@}lHSiu*P5^KOl}b&b80L`++Dl8CA5NFwsyNmZ{&A}I4pRM}_k z2QuQKuMxQlyug0tyOwuZl1Seqkv=*eTV9NRN!Z_Ul8E-d%D9V5qDN)-HA%$TeJLLp z_RCOgl1N)xC}vuyE zLA#VBVg_ODe_=n#1S{+}`vu*2rP?T(x8yc()U-N1*w!G7Exp5_kwml=%i6+zlSHH% zlD@Ig@?fw?5~1>x7{Y8Rtjids*in~6OoCxwlpEo~NFulIT@tBn&S}mP_H#{}6vx?7 z7!hBY5jea&GFP^c^iRtRgb@>A=Co%-W`XQu+j^12Q7dmqD0M=G{n9P$PLhZTEX-=| zq<15UG#0=V(;$q@ZL(LGJhEWkP8bObcY!34#)v&;dtoH>JWoi4QtcTp(p^a+B`ro0 z!Qt+-LKvfyM2x&5mB@N(4mAlR4eMz(9zlsr5-A;OLmX;>|BBSjx1J(gm~dIQo(5jK zz)2YgG4)K zhUAN4KIyajg*wod6(yn7V%Q0=AvHL}r)T!OU##3n7{wAN`CDi5KKJuVAU5dBcxWO& zjHm0xE)E&pXqQWj=!@}K-d*)chEjxZYnH{Gj5b!jkASbyM(YkHM_pbN#L*GCK12ou za7M*q#Tv#%gJX?3ef+Ox(i5ieui#O}rn{jn3!yierdruVc)3w_SlV!}~IL zi7MU1^`oJl6})*9#_wM25oQPuC}09UuDA=y9L(H{rv)4e7Jb4*=N@k_Rc*Oki`tsB zP>H8G^RzgdLP05b^mR1rT*C>BRL?n4qFc~uLU=lO&ZLUzZqzInsl~p{;qM1?KJDqJ>${Xd_;55*x}=i7KxFPRb?_XoL<-2E~G>r zJCuIAP}+PCk_;#78}awCm*R0B0SmWx)J9j^mLRl|(ttC@6J zRZD!e)T$}_p=-?q)2dqPtF^2eRLfU03v*Si<*T)=8e7d*Yumufv9*1*j#cZF)y&;m zwbpUf6jKRaE59OvSTjiMpjhr|c8OgErsA1hO%N0mNWrw)<0)H;U2Vv!2Z-gVt^p;T zD(H?#-gkSGCO0YSOF*|BO(GLlfQar3*y5^zkZuLMuFcp5^lay$ZD+MTrf-u^Eyb}E z0d>|d_cARg!Mm3tD;+(b-pjUgX>4lex)4q6Tn6oTZd|;*zH@)6oh-SXD=SvHb6dOH zx#_lKoNV0MJo9$0J(%6OCyaDw}OD zh{}PPg@|g$tqf6>s=P$hW8)aK!M+E36=JUNFt8saT~|l=UH^j@kU!l8-#= z-inX~!?Cmn0FHAaLffvfYwr5h@F+$Oka1}c)_l0}&2Kj8W8|a{C3)d+n#j80#PY^B zf1jbPd*B$3NbQPyKoW0z!!aB^$lL?vOIK5l;poAtd(id|9K+FrHTR(7A2^1i2kY)Z z*FSI!M-PtJ12AfN1A;j`I~hvCu;nCq`$qqcvw60$LO2e3g%KTFeG;Z`9I?X87lI>P z^sw;_)L-BDCVO<$KfDH*?QHl)MAu?+a!q2MNoi7){YOhuc`s=3WpR_i5f3oub8j@2Q%I@galbCQb1u{vH3wbb?|35a9auP(xej7e~- zU`Qh4hNZVhAcSL$9Qz@nQ7bztITpITD+nA*=x;Rw$KrLZe9e#~0Tc@nJGrtDjUYWr z3O_2he@G`U>64l@jIk>s*`grL2wahssl{XSQRz4@smE1*Mn)p?#A4NvzuRt}m+*hN^1XSzJp% zQWotjg^f<{EXv%@;>rl{!VI;H5Vfejv%u@VHj&#|{2GEVp2aG0{t|eODFzlxM*NX> z*1+v7W4YWOQSK~*xeCJ0G6JoFu(Nnw7cNNMhPTQ=p&dlP6nTGaXPM_=K#%HdQ0^>U zn*dPM-V`kkJF5dZE;`lD>N8Qlvs7+7OC(0$ZH+8+Y0=K=yPees4sM^YvzXm2MOs6A zb{2r!&CX(WQ^M)4IvD)!*Ry6xcBz3BM`U2Bl3Yo`UtP-~M4JNYz%_PledFx zyhqIvDWQ7@n&S=%rq|9)Hr__T47%P93TDt8cTg~c9=d~q8MN9R6ilxpi>T~T!NmK+ zUfW5*^m2PD<+2EJJIaU=k@ac0T?Nx}yUH4Jy9#FIc2rBz7N=(}c|B9KrNB&RW}|tk zW?gQt73Dq{$*8-uMYmuQ-%T)MC!P;{gH&*sq-N$uuW& zHGBJ2FjAT2VpTK%U?lxwvU|~wFwS{J_V6SRfwS{J_Ky!2j;WlQiU`y**wS{Ia zGe6=uG17$cZDuV1H=}%0<{U92X|5f21uVyGmNxS7G6FM~lPVynV<$w3-ogJ`937ic zNkT*2uH>vtHF;PjEE*l@D3f?W2>p=(N=Kf?%igu3HE-Z4;(gvi%lUe#cV)s zBUEOfKIkk{kZ|0a?b!%@%Gd}pt%VqlP)Qqs>z^ZrIJ*%RnT(p|AvQuVAkEtdyE5cl zcuUd0OJ9V56nqC#77sKaMTBWjktk-ToQ_24f&H>mVpv2?L+W-JKBRsX(LacyJhmW{ zD#8RUOc5qEGo)S(5hj$Qg{i^m@DgL8FK&3r&z!f2^tGm!IXc=6B9gQL=~hrv2|k%A zVyjZhYT}Qv%r(fZJbP(F2r^1MEd-_0hGg)N7-VGZeF;IPxM-By2tiHdW}y%?r7A5F zf_$|=trrPFzFJV@770PVT2KlX2|>P^Y0Bp(1UcG2PYB|kayDM+lnY^E2P*_=q31c` z4n_#7t2h_L|5oo{@RfGFR7;`Oy_`%-TaheXi~cE78lh>jc!_Z8tHcMRcO=Cip@B95 z=cVDbkWLpvK%mgl2{}axh2s+P>=7kz%Da|Gj&KQ*SBm(Wr$(`h|MbRD8||G)RRZQo zy(Iss0!~M4H0RlzEMFCwi@$iMg8YaxlaxiF1qAp)XUd__!UuezGyG6!!3Mt2nTaU0 z&;(!T1T+dwbn}HyoTJdf9() z8S={_XD#V0f{xv~Vr2Aj zC*p+9H0m%KUsBasDeihmUgXdYbN3~oj)KJB->4(Mq$>$^BKfUJd8Rl^rAXu(V8N5w zoB;$tUO_}RO{a_9)Zz8u$6p$B|HJ}xH+S)%_~E(e4o)`E{X(E7Vk~xh?xDN>{86)- zWI)Y#9HQp#QS&9D#2;ONnkK9sQsTvwxB^^2_d`nj@~6ZPFF^NK6eX@E8Bp_(67K;u zf3GPdbas}B;nU=e&2_n{NyQvrw{UoGR*+OoPDe?_It6Mn9Uq9wCnOke%Jgs|`(;DT zj+cq~BsN_!4(3hoJ0XGeuab#*n91Zo#H?iul$cHU;%Hia9nuwrP5IRqHsx1e*py#~ zL!<({e5Xc31x66CmJ=F5FupqD`x_Bnmoy^26X1kxa-j0%HzK?e0x5CV&v(Q-EuQAf zwP}K!-F#U$^jZohCBQTZw(BI=p`>Ta&FCc9p_5>(q$$B_Jf#Hd0~?Y2T0>+&B{^tH zu&l(C1S=`GDZv8gDG8S2_OFdNC7&-T>+ju41zfz^4ewF=an3~GaQ%SHpG|=mKurm} z5}ca?FF>0Scr}q}fp=!Y5_o|YW?I2PNBO#v*(%4d$!~g$LtuHH*eAy@S z*ab1vJRsKMNR!cxcBYPwxi^~g2|7_{LmcRM=!%WP9lfyQq3b#xx~@=QIUpMW#VXOw z5i;(O(V3$_SVu4!wU{jjx9VZ=MAIqAmor7!Nigl$C2MQ>%4ywGyh6v~iX+Vt`+D&X z8G4P9qnQ%Ko)jA{Zbv!561P(-3-y7=%6bnyRI3=%MR;V3I9YZJ9FO$~aFC0Cxm-$} z9Kgb}fIqItK%?`pyJlUml3lPaIfa|7i&;;xE~JlLu&$99xu882z&zqWZpp883AAt~ z%2j=u(+T*Es%lS_R~(}&FVK03gtm_@V05oAp{<(cAye87=AWO?_Fz+J+l5gcqH+*s z`HwHqj$diUAQ?O5uUo+^kA{`ph=PL^{!LJF8SJ3;*yj;cWuJ$_H|_I%%CXNo>$)+S znti^4pz$TB_d?YhdHwwC^Jq5*WuNElwzL~fA2{56qRuF6kn?mLg+xs=ikHHu{}Smq zzqEk#AL=+e+5jrh9kP>GFgy9zhwS7$*+~V#Lv}(SDr)3~_Yr^cm0}W5#NFzFm;``( z%^-lVSu+Wsy2)xW*Cb$;0Ofn!h29U_Z0h}O6yjM!!q=50pj^R2OMsbSc4Z0pHh*th zK@JwXS?!Wdd?>obE#@v8Oj=y^$sxT5eo5gdWnc++4G#Wh$zH8YdChOwCb;RZYE?}p z#gDc~LNHyC)+W(a(T^&*2lkugPN&^UlQOD|Gc|1QLpFGmC+W79ljIO zVN#rJy=fFP%JdAkgcqHgS7bLzirZ00B8ru^{bmj_V+!#<$T~xZ@3dRnbq0}Cf0W30 zlt(x7=HLJD=1I&h_CjcM>YcgOcN$uIdT4;CeKX^>p6o}x8(q4|wO%_6jcX%n)8U;x z4lO?8FW;F0TdYx)VA8Q-yAyOSn5L?Q+kEyq6kwg4X0fJ5;ug?D$$r#ltizf+K*<`N zdS{PNO3oB6-S+g@8c;F}TexB+lw396;DYtt4wt6JV2~*r$4|2jJa$)&jmkE7)V7^Z zWl}t*EPll|6!%*;Kff8j{z`xAe~#B{L7;8tJIqPSErQ$5AxPQpN|v7}^GlP~E&7G0 zRF`4TqnTZ!nW<=VYtj*wB!{G@ldX2A+e?rs$j#%fS8el^qiA+h?K8G||3*WpkwAmhm2b3oO;pRNdVqn%d2y?9--}#CQkDwvs)dU(POXH5D(YnoBb^KjLdr zL3CJMkkG~x=m}YQM4Rn~FB*KvRz=xJ+3DJ%59t9JsPPR>GO2sFadZ& zK9=ObN#(go@sLDA=MZld?>FbNXI8@GZWEKMS=%1d%sIJ2pN%OcGgJBno03_gG^NB( zX?8MJal6SZHz%XH?P@X(f12Zj#!fBLy*5s>xoMp7!f{%~?Z&y%9H)l8%W>)|PVrZl zD=jLXi{xynT5(hL2kgT0)%h zV1cKZ8$921gs*?DAF+KfM^e*{`3I+1zRbo#IL7yLl9fu{G_v$}f=M2oz^G~WW}2w9&CoO2M3`dQ#A5p{b-UGsJm5E=WfH1Vc0Yt&YKo6G!h3ZAmMaO;lTwI3 zVRio22{a`QeZWdR6*OG{}20;OeXEa%MN0xf> zK-yOC>fBg|wwRZ;I?XDHJsK><*Ru{RvI}2kt4BJ71cn?& zqj)z^)90;IP?qKYadE+;7FHQ;wknj47`2p(aCj+z-WRDTuMQ<;6z*ebrHVT(o^t zWR&oM>bh!e_WJb&B-&7=Zgs~X?{St)Mb&K|I$}767AV9IIu50nB%bL*+@_9CPIoz$->f~nPj2-L*G3TSHqqXBnvU)m4;-|Gs!}i8#Qm$66t8j8Xlw# zKr-SfKz_I>M#PLekp{XwAZMW%pjLsXgj#i5gkOLJ-N zhy1V#K1hDxDx_u4_tuQ>5luO~dAtrFktZZql1EJc!S{|xGKB9D#A3&;glkA2$ddUo z_alw+6&??jLB_HV2{n67WZf^AJ)-&}tYso01d-Lvd@aw6)2PdX5iNb5wnZ?d>i(wqx(&Uz`lw15D#4UG6>9gH%R6p3jF>C90 z#IN6);O^v>)v$icH;*r3{g7j{eiyNR{KxvO`}IS~x0C9&eiHtPfMNYO>;}x1S--)H zwSHNCWHVpQ*KGX|i)`Vvj2K{rOZmE6zl*dqwtgn$N>E~x_wtJvIJ6LH7*SKH-KPa5 zoBGmecD0Z3R-K?)hJS8z-a@gH0OhK8^ehQ=^kw-0i=7@HY<_9d{btFG7Ac4g|I*943wRBCmX$trsltp zacat@LT%Yp!Z7wGAuO_~tki5O)x?~HusfRy18pisn#`2Ups?}tv$E`O7dV=;k6mEd zcPlPluF7tAf$MnTE`WgVj*0KVc=#gif&kJAS#soHY3be)yU2oAG1i0F1z{K$bQc(( zy@0#GbKaoxRlW(5cgfkk$U1Ys@iNXh)HyHy+J11wI_4||YoSKFoVA-T^UgvGB(X71j!KQTNGO`h| z$=G=(Ia6($*8Zw-J*v#Hu`<=yj2=Yr%L1n)JUXt#tg*Pc4lgc^R#QrE8DxS5$<$?=*;5N;TRco~9>UStFTHywgtlhcX3i)Rsp zbdI}1koC>{NWN-TF-};TY1J7w$?Xn;T;vesRi#zTGk;D8$}09M0J6|3Cd0C~iapPj z_hjSjW)3~}s#P29SY#DjWr*~IRm@LBrwltBFx-W=c8^xE8iKtv6v#1#c@)T)NrM6z zrI{u_fh^T2m3d|kf&y{3WP<|X3f?;fg7%sfz?yko{30haMN00wK{KAO+g5UGF}VT)DHiu3flbuJ+Bd zmNKgjC0%IO(+U4tFc;ZA4$`joi%nf9hOdRtvw5Sn>f4Rh+=Z1DQiI>66|$5#cWKun z`QhH}dT#s&V$mRa8VK#yqTxDznOig*NcU*h3n1OUMI!`u1I%sgdJf(T?RsGtU(*&1 zc3)>tv4Bbey7yh+XwE)%0a0jmF`=YtyWIt@+Ne71d#4|7kI|X-RS;! z!+Gt3FpLYj3yjZRK)YUT7t}oB!i>2Qv33FCK6Zh{XQOTHIVjc#st1Y4?Sjtkd4cPA z;V$SN@GkIzNK|9(40guB=ti}TAVL^eT@Y#Sp0!WO>$OE)=w&Jwb&uRAEb5;3VaF{e zfhYb1)Q#F4tyWF;|%-Qhq%mVxzQf>q3d|zK5QT8 zJ}enKpp;2WL3#&{{Q;DF#(umUE~0l4_P3pnRVSTFdS}?r36ngAF3>=#?2Xv9{Q;G| zYI}2htQZu6hc%}8YFawR6H*a!l;DDHgVS+xo5M6HD8uk4mPm_J#N)OyOpzA-4WpQk zIQ#fn4*g8puOC@LGr@$zPTB8C%YxN#>`4bQ_}~C(-sTY0${;&;KM%3m==FEIQx1Qh z#;Ntm@igQDoeYgR6ncprHcjo6Qxt~eHv!LE6Jm$AIT?D_FMn|>%E}`Xd3CDU3gvu@nY1Ry_ zOFbqd-E^1bOlXtkWhc1mDpz_|PEV!H(^J@~5f&(Yr$zHHO?lop=;N+}0e@O~dkh8{ zPVgk>a`e{VPyRkml{~N=&dz-n(@W>_E&fMHkey!xvJGjukFqlE^;NfH}Fr#QMgq9F}erp zc!yhZixhhprHTwkP~H;~nmv8VovI_y+?}cu%s5rY383f(rl`FHv@**GH zm1A|&RV{J6tLo|q!c)!tng(li1U6-1lyiaq?B>-@akV>ub2M>U6=IMo0Oz{MxAJ-dI)HuF~66ye@;x0Se`C)(g1b`~uUoTOYIIEU)q>3?LlUxdj_>Bu4 z&tz}7CZ?k#!@%LS5e_^*TumvOJ0$_CoDwu?&}cs2u6fQaooDlxZ`V8{k!uS-#&}Ic zZ_Ohq$)?4AyQCoi^c>bRum&L7t{18r4OkPa*15kDRj+%!Kvz5-d8XBSlMu7`bhJrk z&yAdfo(|AEP}QXD^%i@q=*t**)_r`u5#?>%&^fP*ML+Pnea$sU~FWN7O?<-xW2@| z5l(#1IXW9CT}k4M!idb_In+2qn2N|3@)xiSM9y;cGCpcml&gCD8%DH-+GoLY;|Nzp zwAO$wL~E4~h?Z*h<`XQs@FYu@XaX4LS+M6M5y}g z8#^gyeQZOh)*NYCbswH=)d*ET5GsWYEGb*5vXt+YP-VQx`(zvyq2l_P8le)|+ApDE zI7&s`Bvb%%hET0c5h@WON4mlu(_6bHRLNXIg>Z3RgsK$?m2ZBEP&J$1JE59xeu_{v zo7Z-5By_iAcDngvYN4Xy&E`4me4fo;xn1+4^KSm??V8uEmFEYX*KF53r>`87=#4Y! zJn-}4fjR}`iu;`y-S+$H9);(c{A!QVf*~3H#Q-1$;qg!o5f@o zY8LcsviZw~zL(cP9n$wh6HT-WQ}whB<&eIA-O=}wW?WGEK4sM3r-^2t^c~_oBb`r? za}2vp`YxB0_hvS1{LuPcS^4c^&c#;##}3fSA8h==EjexDw@Ws6XXCeFZD-yI&Pell zR?f(N!x_1gjUUI8b4EHFzd0l2?U5s6_s+=7IU~J|zv+zRh}ynw{N{{27#qJ_m`xi$ zfZCfglG8QkW#iw$8QE-p?>7GF=BF4)v-z4cGLz+#JNKMTxxY)BGN+n*S&5_jCRiAg zCD?Hr+^iRJWy+>3-xFRW%jmgxFXVySl!4kdR%N?!4F@W<=2?}0%ZSc$O>*78UE%w=CpyjM4~FQJIC?>e&Z@Uzo*&WKrwtPkZAMC}+b|(2 z`?g~4Of7tXpo^ZuA*tx8?V=IN%Ow}7x?dxb3K=|KA(9Gm(}k2&n#~_L(P%b*Fhrxo z(F;m66s{)k_xTZxeX3Tt-e-u$lqQ95WG0|ss*0KIreY3WzNE)gyH|j`a!7i75b915 zn@!sAH9>kx9KE2VCj{QSB&26v;LQ|WLH*o`^su(GRf6SbI*#3zEa*|}%rv@_F>q^qGZ&t){fgSC2&>xe6b*SYen zoY3dTBlc-to#%vhJfix$pChVH++V^gEva6|c{wdzKcC9JF`+!N4HOQ1*#T7*nS`#> zzKf5j8jsqJu=lh%?R=RXQdP4sR3-+HcrfQT?i8s?FnsB!?xrE0YQb zV7b?DAd_@cOb33`KHk|wsj~-HMciG8QV2MmVH*IE;UVm5AUYyzhuAJv;hS`(I2_n@ zM^xP~>rwg5=}evFO{~eP3-{Y~kcahYU0gY*3mpR6v5TTJ2SzHZ!|3Wct?LZf z&aHQAID7qQ$zKrZ@rZ{d9=&Ex7rOD$4h#1<+#?fHZ|80&2r#7V8@vVIx_}!BD8g%#&bV z;Y4|H8^?*Cs2`?tq_#X7o$5IHfabP69<9{X?szmtk?BaKih+2gV;@$e7lDnKIqZ;) z9I_E*l-Pz-9kP*K5c*dl8!-a$waG^2Iyv{wMwVVQHbU~JCL1B4Q*e7U0$z6)?)s3K zsBHN2BF}!)Kdzj*`;R3Nj|)DITNk9Y(4_=U``9s%#D=zrE9p!eTBE5prbHc3$SVfJ z{dhJqoJoMthrB8`JcnF-{+;tlYhiw}7cJz~Bqb>}l6*J=%QTdP$0ctdkCL**%*tf- z*b=j2kklp_`#4h8Tej&v#gUc^zi*qvZsJJsQXW8b#y*8xWW^c5)r*KTcImiGQ1h#$ zOR{E?t{(r6fBZ7s%Qm#by?jvF31%(OGvVtmlf7In`~}_1!N+ud;ST$>A1?ASc}A*B z%$Aj@FyfjSOV~#yrXvNW&WrR!yM9rQC}XF~Cnh8EF+xU{HzybC>cxl)iY!aiNO%0K zh5*f1aoy46X#Oe%XdboncD&!C_E9>%m@#k=zojdYG!$jProD`dsYgm@Wk=F7iMMAa zYh~8us zb!NG(T5u4?X%VD8{NTF$B8-rD5|5y2`)~GP^C$0AW(o2v;hyE3a(U0jtD1)&`Vs@4 zG!o>Q!Ndl_WOd2gr0a6!sU2G8m)_?`#jUe9S?)ZNP+jMyu$)uWk)2O#1QP2I_gYj z>e6=7+t}iN*|hy++hjqAbC&HW!;VE-yfb-Eh(+rrbr5aBom5J8yKG746dG2mn zwMr%G%Dzzvl>H`^AS-jw{?9Y$@sWGBNV;pTnaUC{70~i%S*J#u&Lc6e=-ZA#k0i3* zV`^R-<|1|CFzB(FE@$V|ytC@WVbG&Va&=qyw2V+sEIgg9;V_`3CO}OC=U{>!bz#tc zf*woKv2TTRH$jicj4xf#Ba-H>jZ0JX|D#6#r>wA0XgA~+yklAy=M4hRwT z(k!tr(Z7mVkz}u^8*ZjK*uY2QQ`-@DGx3>sa80(-h#7^z#}HS!yTHe_kP>GF1K1L7 zJ`AVaMZU+BI4jOS$cZndy>I#lo2NZ3{vzDZ(To(F4Seh&XUvG|81!D0z(?EjxH)~` zquiYSrjlI-KH?=bfQXFhA`@lZwK8CEJw|MEqUQ2AIhWitg0#b&%bx#EQmiTQnYYAzVaa(RK{NUb7kc zuv8xpiLanSuUb4LVS+1a%_qUvAt<|jM^`kJ@sKMxKJ3U-NjK(D_70<4d{GJ}ZZqzB z>3^+Z2)2t-Qs_eSq7+Zr@u$3qY43qD;G44Y?>*q9ZkaN3wJsp5{_Q6qKD_-R@CUPX z9rA}m{!qIas!5-w!tM|G!xVT3hi@LT_`2W^CEd87{9#J+e{uN(lK(;Q2mBIEM@8$v z_=DpU6_?N$W?hSLho^MCU*qW1uI~1;`wX||4=%RQw1+CT&~%4gXHA&W9k9#o zPj|4p{k-lVF|3L$JnzhQ2a`2nzQ)nWnt*HxJqghX+~nz^6I^jHBY>MV8%ue?ANU%4 z^1_<_3#aYl*I(IzPtbs5qt5z08RHzk6I_ojre)>T$--RlpH*5$SH*ZY}-+L@A2 zbt~Uo3AMz`ITUF7^Ewt_K={F83AI;BsHm}Z`}963&^`mE5H0sEj}nbKL$*Mkg`Uh` zH!HPnp$-4eM`W#&qyxTY)CRg6QuH#vX0&O>V6Ru_H=C}rm;E)PY@~Tq$fgwSB6s_A z>fO9aro`J|$+(Auk6f`ULWFe#W_diav_wLS|`R>bw)dL0Fz4I8B-a#VkG>ZC<{`|Dt&Z zr$3U!X}H%uKQU>!nt4m%s)W0`i|q5(v1B-I8wKJkq2qxpqm^xH>JCjJ6st5`x3vPWUd|8a?GIVukCn1$MFCcBCD&W+l++&-gt?^ zXA$>W#Sy!r+P~H!z!<4tvF1_Eb)zK%X}{i*E@(i%q5%;ZoSnO$FOdctXYc-?`)-|U znEbzNh{1%0)MM^pICxha#{pp2l#|O1wCHbf@yEYRd{r^XKB;yoVFtrIDgMlgiK}NW z#WVVmeOVWsf1|1ttxZ?!oYiW%T3a8j*UG-4>SLPZaDeYG8YI!+mTD-hUE4ou=ZVG+ z#01Z_=7otn<z#H@`i}KVS_5fkKxLe)x+1f0>QoWV^u>;tJ>h_+h+wisC z?LBiLZ%7$&WBEjXh{e`QJg%0CB>VNS5&_H(yq`Ak{*^6)FjucUWUr))UU|6o3NK{; zpDjsTUy@i$@()2mU7sE$$MZOQRQ;QeG0uL?eFwmCcCX%MJL>y~RPMk3qP`FQMH;tn z!>QP!jkHM5OhDv_Z?|oR6CJ5MV=Wx0U>Fn&_JZgZT1xX-=t!VBps zb4#`mQBwv-Q*YM>;`4|6=Ue^fTm0vn{pU^o^9}ad+VuaUpR{-^QV(6)vI7*9{38m` zt8zBJ8gKD4bjf$U)6***ow?|6=0bI2s!e(tO$=q3q$lzgQ(?z5`0QW(oZ!Lwv^U4# zGZn1GL=fg|N^bA*NuX`irD0}Q(j(X?TUv_)g+y7k@O zWEQFQ4QRAKwL?=jzZzGUgMV@$joU!0#s@!>fJ~Pekt!e(i6;^o)Fg&-YLKbMm7?vT;nyK;f&69AQ3fPptSQ7oUz>d#SjS*jb^dMamXLRk`c{fd zt;s}9GADL((Q@2KAfV#0Q1QwgD!wLEyl#hz$3w-(9e5Y_{av9ZB7&{B8zpe4MmcyY zjavqtW69N_{%f`!f+#};$6~j`h;65cHo(82;|8%v;)@zfKuvu@>NbnFpJF@lYxPGZ z*8o`&5w;XXdY`QuWFX5r55u19SrzcKL0$?CCCLj0}`Cd261;csr#T`!Z zOaqqB`rbV{J-Bi7*88Rq>g|TT#a3KjgR|~e6c*S^M1#TWK>a+*{?tolQSpUFe{MHU z!g~*H3~T)j-T=C@Yu*=c)*3k1=y)q}t5*)V-T)mxt&Rs5v)_t)LNjIYGcl;=X&16q z>}Z$v%~cUc|5$dBtL!gC2lDu;s8^&AaiP(0BJ>cB2q!$6@S+MP@W9rjr4d;rPz0*x zQ2;al<55;dj3_=auEwKG-J5dnaeOl|OAYI<6wc4)BfAMI|%0$d_tVyK^XxRcK<1S)WtqVG6G zC63!I+ppm*#nbwQj>5CfE#>18jtotMWddE1$pU8-Vl%Ytg%4;s^~}c1ERbY!=B39f zMm%M+&_tu#QRwI~>lSB>@%;M8R;!_C#h7qhvG_1OGFh#~l7|z<&F2ID^Ire?em*&m`#4PWvEH@GdsTc_vguA*N5xsb@@VTZ zJA)lufTvmC8uk|Xl@Ss;ct2*(y({%Hw4fYhf$CHhEO#50~Y|1O8P# z17I4!y;O1WnT-5BclNGLh4K%@o0n@C(cn8BKl|!E{78<|9NhyqFSr~_o`}aHW{)H% z$1&6(%KlO{srLw{)b-@k@7SEg(gX${OXFUk$InI$_7hqSB%M}MhM`skLo7(L9b9Tk zi+&Nd$zW1Sf|lB5P#lMk$^-^&jIvu@&z559+XuSu?~zFyAPUv#CHQZJTxbxm^2zG9`n zCduvVYxs7Qr;yQ;dAyNcn|wdN&S?PGByYAVN2&5w3Jp1tin8}=5=;}S_PR;e7(U4b zQ4j;O{*X04|!DitVb2L|1imCv~Y zr%^vli18IE)Mq2RouQiW#az(DBDTDy1u{g%-R>*qoZ>F`bxH5_#(mmvZS-#6h`z_{ z678Ej$3}>grls9PJ3=6Rr5yzo=qv5yOZGKS7(w1YyRns>b^8yR8`-!hwUX>B4S+~2 zEBWtUdg@zWd+EhRBSpp4w#0*1>?B!P)569I84jz+x=8e+Bmn?MYlP!1t<<<>rY_#H zJOnwynO3v4ai^Y%Q}^?hhx8tni2c8dwP#fv0*^-sv{A|sHOM?d0@O$)32CIM%|HW9 z%Ynvjpn9~?v!SNtP*W)%4sX*6Z_^5I33v~9E9=uF7I6{s3QbdwrXzrVvOmrq#gjaPPGzQ0Y#Q6RI@E+EPY$y zzeqMlAOI|nOz@MAVqGgx5T*^J6R8iRvT&qCJ&K7_?&Muk&bTMhKZvhHkBEH7OX|(q z-M&NGzk0JcrZFXau)?lW3h8$_AJ$8bG7_pCZB%1Oz@}aeWJ&X-P-1lG+VtvbmGVA= z6R23|><)vIt)Hw>wqmwk!Z^s~)naEcL(5xg(SGEc`EvOK1`V({wXH>cEv@Sj&u_E?MADvb=B;uR1^0so}6T9+QZRCoF4E(K}@%5+L7`IF1+> z_nXp=6=({rQSFVHZeQ-HGE+( zEHP@P0~U*s{gqghKyg*{1X|fC(Vs|L8m+e6x-CCu)BKC){O+gTSM96TzYiU8`-Co^ zvz#}4c~%mcuoj}=bku5G&(YoHgqb`S)01n-!CqRoGoS$dO`vHVjitECXzzp)01P}h zF63qf63EB_=`y%#&D6IeAmR>7`M?92d&V0>b%(uVlXoLtvJo#it$IlV2PAq{8?mKr zVj-W1@jz^C#ivHG>LWy=1V7Jxj}CdviD6@E*=vz&imPW+)nqeb9|2O``|5q z<<&Ba+G8=C;JFylJhc_=%DmCX_G_A3x{-*+r^Tm7o8jwc2j$l%m&&hCcgwF|YL{Q1 zP0O$B>d?YtWRub!#HVFSARP-+wf#aBYHP=to!N8`<^xX$J2V>;ku{se0L&irYke2U zU~BD{m>*7HK(i8I(po=UTkD5xtF#G6YyxZzDlf$c+pbdR&8^u8o&e``p@eTUT>eP{LDx$-c@y z=R7Ywf2_0V^|OyRnA1b88gr`lJ>=x;jSU5ke8`F5ox9~k;Aou}84ouq{ZcZ7z;JfW z7Q_eQ?5mzGyhJ>}h%j`)@c;;#<4LH=`t42b+pkj1|s4v9@KV62zFjHNvz@#Grn3RS?X z8OHTcD=@Bmmf|k zW>2WFQt3@Zj8r9WW67|+$at_lbZpkxo}IL3#@(*05ky~(2`gfrh~;WIH}9urgZP47 z)CGND1g3I?!NOIR({Q5rvhod?x~n%{Khgkc^J+jRjji~LqvzwKw4}U zH_@KoSh9cOf1p8WXJ(AayOoBn=?KhE$79Z$5YNxhq)(Ysg+a8WrAt+plf{0csK?k5 z%HMLf%6t%>qpr(!TK-17l3CpUHY|JEVcFBfrU+N?n*p-6Gq>=GYAQ3gd`iIyYrZ8# z>ap;NUq025Vyt4p%j__MT39^bnwy_V>*fBbyCbra1AK*P+Dev4LUGGQZ?=4FnT*#G zZ?S2m3h0D1;}3uMEL+b9bXw4l?@@%TjruL0dgQ_c+RhK*to)evsaZMH+hC_tD^<;X zBRB|DbK~L)GDU_lR&6Ff)?=FNgm@0dYI|(XSb0TbrHUUbiWiVl%xOSvH&*OHEWUR_ zv~e)#N9lxUjuk{O6Fm~YkiipriKeO@sP1z`K#(ev^O;7NJByx-gky)M>*D8Fj+ISlc_3;)^K4#B!lMn_tSPgY*t*LrL-M zJ2rWh&{4f=CW5p;-G)H;W`%yP$#}X+TYt^XHAYrtnVEcBp>1n3C`fe09PSNsaHB`v zwbA1VYK&g4Ar?7IfQF6k_z65`QH)7(=WT8R`t2r=NP(_eoSMLNtHNQ;!L{e-Ft6Ft zEmb)Wi#tuHGzX%bTH}PySO8lflZ?LDRhnVmF#N}iMQ^q|7Rl_uY%ekbc`{RP-JR2! zEth#JCGBK?ZH}5bKDEJ@TWO3Dv5dgEx)vU;xCbI66lsiQEc}yTM=Yd?-gmZc_n$&O zSGLu={U(Wj-Z94_n|TdO5~0eueh?cfXWTW(<@{1ewtSN<=p%pf&FpVJAW0PNk}3QX zJmTw71i|Etu|oaqVR+yXpvgHjaW5lFe&Mtg4Q8W7THlKP+gG`0SX#9 zFfoG~`G0KwV}NQyUkb$34?V{so=p&E!q5{(B$s6TwUJ5#TJlkp4k#VMCcOvR3oM~A z0j6ro#zYo)K>@p^1?ZY8FV_eMbYrFAu>qKgy9~82VIZHO3L~p>xAP|$T7ctCpY(^IvCB|AdvpqE`N~cC4 zn`NU+;=Kv(es4Nth{h2*Mus%@C#$h*xL=ZdW3|U!A=EZQZJAkHws}ar(Q392+h5a$ z&3`Gn9u({u{bf{^tzQJ41DTqz?}N9k;(!kxX#m$SVy&uo7`)1;ax&>%LKD5>laG9H z3(#I-!j2r&=!|seq%s*UJKk{VXn9+2<0c@}u@3dfdP&3?NcCpgqO0$6A6hwnk^N`m zEKvfSvDQzn)X@hQ6=*B=_|?~T>lF`c5TcenQS6N`zH4ji*>fh?^@I$HDbcg1qRrwn zk}+M?p)=&=>~4+8RD=g&Gc1g?<#LcQyZt7iPRUmf3Js0VE;S9)5dLi!cz3wCP0I@q z@_lJ zG~dK_2VCz7$eUY^-=K0`?9b(YVy<4)lEj}dK=I*9-YxFtFZQWr5QK9PAQ;XrYN zbJiFmm}HtjVhoLwQnAGu;~Q<8OfLoGzmYy6ab6;R=c*_whVu3zt7u%07`})zqOH&v zs!_c$&$X;UF-0}_Nz+iI+01PbFP9jrq@Pc_ug=jj?$qS^cHWcik`qZ1?YrYd0)%Fq zcf=t(<3tuIMonK`3qOz%O;RlsjttiTcH+I+L6j6qGgFf#{Tw=q0FS9H?La^Pia^sM z)c^*fn&NJN1E)7{Al$?;Hvz!|o)Uw<`m?!z%Eb*B1bHtN;=*({*r5oM64g;AJ|WH@ z7s%?_XFh<;ZZk`-ijEaWG`Z9n$rSqIeAY;`h}aXXVTu%YwK;D>Rd={laAO!9j}dvy z3_@5T&y41;yf!+TqiSe4kvjtk7`6K%jd3V&(lwT8i>1)+)^MGK?W)<}DRQLD-jr;w zT8{2fq_Iy-cjFuVl;fZto7`dV;A5RMtt(H$?3TxDBvd~a3+3ywcQPl_G8GI`+Dj(o zN^>&hhv{Y?*C8x^LWfMimXX0seSBKvCnTB&*`$BTWRShDgk$TfC}%CH1+cl#J$qhe zRO^XHSIY0lk_`JdQ+HTw88jOJlRco1Ihv8W4MJ zOi1(?GS{y*rUD*q2#C6x)xZQ_0vkYfmcdM;CfB*Goa5_|uwBmP$@**>1|O|S*KHEby7|u;Cd9z}Ml*g&^D>Uf zBPAOq4WYKk7^`nAq^t-KM(O@TMN5PNe_*DpJF&XG$?y^dxwLXnX_Gj;z*(H(0It#k z8v^f|ECVlUYd#7&QWo`~n`QZ6yy}r|^~y*Z+HK!S_0_8)o#B9dr^Pp)(hYHZd5f3` zSabIYiCgUo{dhOo~)Vn zcRiULR%Iet)#|T`7p&6x3-Kx4JFlaoE7I~(Mx^yvwwG?u4Pw`ynydq0&CcQ`hzVrI zFe8RxjAtEVKM7e!AkeTQhHUJd>={Bq2b?2}NDBN4H{44JCgD*Dtc&IV>$?Q3#u#nX z^T785H_ii}w#Tl)SF5}jd>s!ylF~Bs%mGUaSbH?;mIOs9l0z3ugRS)JBK)deoaJ`0y>+=9Pg@^0H!}Ssmd1V_sTra@G zM&-qTZ0GC3!*#9by4HBT!o$@H5BC6CGi$9o&?q_3pf*+Zmk1|2M;`+>@nU#JUo|0+ zC>?UL}bjkl$0u^s^Je+4b@F1G*E;|Bxs42 z+#?egGa(aP!z4W(X27uWKM|JfSd{vnx6eNN$J*=nUVCk=ASdGJaC;rc;ne*2EF3pUlGBgod`sWjSoQ1p{W|7t5dK?m6E?c5JEF>#=wJeh51S%0MW9(fpJfWf+p8bEpXEMz_jqAIfeG1_?p zXLfdVxzb)`o+Dts3nneO@l!NOy8)wrtcH{ny{2 z(m(DT-iz9ylouM()!o}imw7DJ)U}ZW)#D1})OpJ|MsiNnOyp4m$oe(0s2rnO zLW&$Zehz93?D5C^XL=imo0AVZzTj=@^5vl-C10;bL zD}O=22Bwv-mysX1tbaVbDy3o$`$Ak1p?47*3TIBj1qkCT!);~T>p!w)SH|l2Al6A- z8Ognke)IGHlyy-UMHkE({G$Gf!h{9kK$*|FF_;I5(wDxiR~(`hc) z`P5fRn!~?3<0qgfE~X$67|)QM&YHV)T|q5bqpErwHs2#dt>DBZ@8hM)WU9Ee^qpIC z9k-VHP-{s$qpdixm^zhTmX2skzlg?b)L?4VzDqk&Q$d7c;nWF>tAZI#4Sqz(Yb)6; zOZ}<@4$T!xsVix=C9A30I0WUU;zf~P5Llhd%3RhRmvwU)N@lLt%Vp&3%4JizjHF?7 zlzO3isd_c89XSl}kttg41>|o!c(0X8kKY9ZQob$e&JHFa+wFBcb=gkZSKjO=Dar>a zK~;KG;#xv*U-<}+HJN#&UeG2-Q8?w#(U&-nf1B%_(&_!%DMb*}&;A??g69{}w7;Y? z7-GuZy|k$)hoU~M_g_3zeeO_socKTdz2D?U4WQ}da%MIRLw{-dZs46q7*$C-gtpdg`?8OW8`Cqbg+%s{wm9wXAP3CBA` zLJD<+=-F}ry7wTB`<)#?w+~s&u!3-t{a^<>F`$*!Uenw)VoOu12q6W+7r4rqAgcO! zsBiOB#;pbmXZL|w9^9-6o=ORkF+!_yl5vc7m`4T!cbn3djTVQ;4sS`e>VYwmsg6D^b9`9VtlFBIDut?Qv<_NQ2;OLV) zvfc+{k8hksX1`*Sf$MeE3}#c4MTR=gj<%oi@b>zMw)W>G>l%3nd9gnxBX51Q!V$o| zGQJe5$-W^$HTx@$lq*UwmQcs!MI6i0IpkkWdB;|CfSJR4g>MIaErQIp9g)|KsL*1F z^pVxXr^6jcg>H@Yp>}p28D1ugQ0v`;I4{?P8|L(=b6~=^cRD8y6?hpWnwG1b{I{n6 ze`LMdQ9t3l;`9RNN~m6d zyv(oycRCT_h1pp~-9As7vln+E0LDyqvr zv^Z_g61SZ_?u=8-nLF%*FHDrAm4w2yZLL)RKOmkCx*p<7@bwUvXm?TGjOgvMYKh)h zN%vMtADs6>2sNPcbvk-@q9cPbzR+UI9a0R}H10fQrvo9f%vw&01V9tsuwE!?=U%T( z3$;=D{z&Ayk@VFPnn8l47bS2HmEw!%5V}U|vkKmh5HO40miQX3i&KQ?SeMkImvzZ7 zUKIU9z2Wqs&T#!5l^}^UB0G{{DP)dhh-lgCh_}!Ir=JvOj0nk)EL{|n$h;S`-`lw@ zzebD$VqX7S>9m@_BL!>`BtW0Jx_jGb`i3qV&GeIzx~ph6y?UT?hryznk08l_oh4aU zzQe(dXp(J{#4W`Gh$)L@ z5?Ep#WbnlwbbGjse2(aua`3cEpiY$y-co-oofMdq;ExX-9HEV1l{)1S(JZ(fMCwz+ zLco$9fa()IwA2k<@Xbi<3@gYHr;5I8yDL0d{1Lz?ya@f5XG`tUrX5=O7iQuOL}u3{ zf=ck6sfmD6uTK}!LRz6VP@-aA2s%3`!qlGMh(Aad1sBMhq;ix~@kZKVO=Pq%H2&D{ zHeY~GrbzO^D~j+^Qwlwf(;TtNdCNgvJX_e@NaIm34Eqxt-L}>;o%1j#w1buiKn<6b zbvIng<3MR7{dCIG5DiY}Yy&pbIMzdqgBvXa)Z@7Gb~EUW%0H*&QM~n(7eEo<+WJro z5bMFHzu-|D6M&IMEvO6$!${*MbX7~ zaQ8DkHZpIz8w?@$EhBwO%z`DCt*B!iuSZZT(H}RjEEblf zyAFS#WV^Sg26*Lj`MmKKFqM=Qn9pai#F&IDSF@ktXoFtVCts7x;IG!t{tmx`f1T2K zDB_Ura{d2Yljw*+9E-6vf2L4NR?*vP_6p0dF0^aT{`^!~%tzisBpv zp2qOOGU1Om3JwjE1!)>>4Cx$+rxc}ykQ0|9noo)ld`E znU{54R-M+)Vd1}jPr8JBz>qEu;=vDT1x)L1rADng0(+g86@@0ig9Jh+$z$zTs}DJr zHD;pYXd?ytq3?Gz0hS+g3s*-g5!-xC=@DEe{v}7wKT5!!iQHBQ3wR7&v15S>8oDRI z@%iZfH)7N0p?7xE$IT;a*+KZrO`mVxrcYXiKQEg;87Uz&a6M!GRXy;7y-j zF2_lO$0lCpMD^*ANYa|nHFUlkU5-fZ$dbs;`<>FL3W=DPixG$Ze6X;Z8O=d9zVbu| zK;Z(Rc=5-qgc1Nr@+j1PODMFE;5#rPD)tCz<)>rcuBD{UJEDk=Q&5l*9vLB~B@0mc z{Jb{q@YqQ}I|GHYt`Jp^@hg!x#3WT#lPPQA7;jR?Wkwd21(8@4JP-3NnWi)(`=06R zNrED_&*`-nW~=*`%xygFeA}3w|8S+89h;uV*ip-7^dv0(*IGa}_Qu%t7(+iG%nAtR z$y$@Spt;-PvwGfu5NRl*k2TO2x25@xW3?aE$)22*BCWReOlhuJENzzaxAu>8qQhrH zWd7(sEusF?urTT9-eXlQgMsHdhA)$c)ZwTZa`;Oy+XMUOyS%I zfywGap?aJ92n{MhBnNTW7;8=-yCVhns+A@v-yQjQsm&kea;hLsIwy1k`LU4kk#x0{ zHZR{rfIws}$=Qvp6t==aTphNGD0}KEPYc=-Q=%qXjntQEWx^A5WtZks)qt(Q52gHGc?RKb(;0(5K@p!%bCE@Wum*yd$`qkinR=;+NT=clm zH*XgQaG*$ZVItTxKvc~))OURYeS)_2b8?*3FDlvj;7p@-!ZgSSpkY^e*wuznYuq}{ zD`WuY`GdVJ{V|<3b(C1(XFki6_LZO1!s>uA-tT=S8%eUVKfzzm|H5k#yr{~2zpuPs z>`x<8AmbQfgCEn_SU_z9vNi3-=rf!!`$(ItHjX3N67qU#E9kUn4>cbflCf3#sxa<`Q zIvpI7+No(>r)Vk6<*Uoh%y{ZZwV*vm5FTN;@V6tQq$y(xW%-dYZD=77 zlCTJ91EpckTR5x@c^aVwTFt(R4arA^q|lO1Nt>t8%G#(~`{)cuFuYkJ!@DFVh@*UD zA8FXO)scC-3W&QAO-eMI1tA>;1#Ag^7-=#Epm==*Zu}JvB2_fMK zf>d$}HDy~y&gI5~0vibaoA^8k1utU5MJ;2i2p%bklkTAH1taQ;5f$QoV@4#=94=h! z4Z1h;nuZgUhnbDow!QDstbpRQLEWQ*MUcgGy3HVR7lFcKbYrtAr9xKfBg9P_cPam8 zDaFB)rJ8sg>Yj(K5it}w3c(Knr17sNAsA71me@4V>|bP{Walak&|+lGa@*DPBnCu< zUXx2i%wtjwIW~6jH~Du2zru2K@HfnHNA6aCw9RLuYntCg48DL zTLdVHtK=O*klM?bo#Nfn03+&61C()&D$o|k)@~)#vu2f+J{Dwc zH1A~(^#>%O0Vo1gmFW#^)u+nxt7t9KQ3gzZ-EqJ02~in94Gk8Tos$gp{-A?&<6@Zk2l5%!YbInKe#FFO32x)mSu_P^F zuq6A0q!hIA&0zEnerWBqH5;cqlTwniIqOC01YKX9Pz{qIXtlz(Tb0#<_SwMC(^4ceo|a}=2Gp9cUzE(( z@`ecBjBxNZ`Bh?tS0f9HYI*pL<{z(n&Fh$5^V%F|x9P2apLvz>u?wSI>UGMp07uF_ z9U^^GB4@PjF!+>YwO}}MPda*^J-c!;=Z0pLYL|A?5m(F>AQj^?ABpI{)h%bn_6R25 zbc_cK0v64=7>z6blaBc?ww-8(9Vlz9cH$taAoonW)(EM3vcMx>X6=@hpvwPZj}*Hd zz|x(h4MM=Lvb?KdI!n>Gii^w!2%CdK?{I4_RD`HN)U?Bib=79efOjUFR&U|otQL?0 zP#!R-QJi#MT)u0C`AncL>*nEQ_a#-v^KTrL$}S8|0rzZ$GcX;TY`ZL}lw6iPRZ1nQ zU4`)%$$z=n_FpcZ$A6i!|L2~{dY87^Lqs0^rLQ z0wiDdUr+>K4`*+ugFE|z5n%kqHyZ(dbh+4;g?`lp_zK;@uV=$5<%|(b!~5V;1-$Q! zy(mYhgXR)z@Iey@(Y!&MgX~sLdACxgbPy8_`JjsE)wcDNcP|n2d&)aUl4;zRFk~-j zxCmMI6>`S!g55scq9A51_k9R4g0^+slv=QoMY!E)F=_u)iX+j>JXtj$K0KX5A@nGD zb9CyEd2)Y;SbQ&$yJx%2x_oT!#1;!RR_TbiygP?WR$-cUq$zJx6CB*l91!hA{rL+7 zTAUV+F;-kHugE&ZDIy z4gd=Q6a#9lHF~@!sFqpw*u2kEjfobQHqmpm`^^O5rNbX}PJmM!rj`}_#*|Daz|dlJ z0?a8TiL;5|3Z~iQX9;ImeJZGxU0(K=L`6ZOoS5%w8&ij`3uN=+8((W zW3|#IbB@1r^tT-R>B-O=C&-*V+)U=Pm7u4Lg$mM`6KhgvmO4!vahcS&HKYuwZ`(lX z+cuE;wh2;a6-4R{iEq7l!Jrd#5{ajpa_*)T4kE_~BqHyPiQE&NB=Sp`rU?BkZEqy> zOK2Uoed$2F^p7ESEwXK%w74*I5HS%vgfD^*vhx+QR#~OL%gIn3-W^86_s)(D_Vdeb zoAGj#XVDGy%^Jf|c1c|(_aLK!N&_!|ug=C0TqJjpOYQ#q^ENXwWagmL0XiQdi?!*6egB?(dL|nsLi=?FDWq=@)m5jSGUOe4>{?A9tvKC{eVkAq%fo8 zx|$`Bn5ujRBJFC4g5NsY1nG98)N8q!U@R#!m#g%Ww8?iZc!L2-mr~Wl z7=iuCZ0g9ZjwOWXQ(9?RQt}X$gTE`croG&=vOjoG$cXw-kX9?UtmL(o(tZlVh>IRE6`5?{pA>NmFGhH0llQ zY43Ha8JSvVyJ^Plg-^Jl5d6j9ANA!S!Zj=W>;L^OK_5nK1$^nUk6uLcYtvEASQkSZ zVtxc`Qa0kMdkHGAGp2-0Nl)_tbG{jjkewTE`V2;Ct!A-nrsKLcx>*>}0Ifh`GEs?A z*AM$^`boo}BUOPkQ&&SEITWh_(&1cAqx5)YCdW~Anvp1JQRhfC*NjBhNvM|%qd@D9 z!L&y)hC_QG3JqN!rjwWm5ch<^VM%5oaNEFIv)y>C?3 zfBM#2Z_OMXY0nC#phIAOw|H+=+=F+2<-Tf4zfce;L%?;bq-x9%J94aXb-Dyw(P zI=Sfbweo@M>{g;Iz#cSkt#v|Usw-aueSmU0jMhbEkWNz5vqr65iY{w z?wFV&+_&uH>|MlML@wHEYUa`jlH_mA17an^6EP@ zb+HC^A$>7AWDNm2i4HLwu_@Vz6eyhfFytAd7V`k2Lxi_Ck7pt2P^4w(qhr}hWh-em zQ4VPxtJwx)P=>47OgSKd!bl{G)Cov9=b6eCkaRT4Kb#^wnJE~c^yAbjnl-l@&as%V4hEgK#97V=31rD9kU&feB!FpouUo1p?aj0HN^`HY z5MV?ky`W7jMv$QY=4IVJDBN5EeUi%vrgqz6G}kQZ9YRyEm;cYGCS=ZU16 zSjdC#^SH#Eb8Ub{nxo0ugmzE0YcDjlm1ARLZMH_owS^Dv7D=su0RG|7pu07gQ6pAI zGxdVd+dI9wJ6xIT@D2eX1y7^-B*yO4Tr>FQbf8)IJjc=L(Sk^HP$|<#|L|x<2%h~F z+bRdAuhe((BC2sFS1d*!iF!GptDinKkh*gHLNCksuS>kq@C~c$iout9hM&nyLGELE z6hba4QPhL?G`zx%xlOSqW(Tb9p=lwJ_}$EhXkW#a&LHwkYI%O}-)b!ug*k?d;~;3{ zyQR^HB$;0Hu0OD0MW^_?XVMclU{^~GBhb;~B@RPd^Wq|uA>bX-Ke+$hi}2@|fw)&{ zG{Ivg;9;7it`K$w(uAV6i7tDL-kOG%iM)|~?RXV-^c0w&;n49|0o0&S+m<{Gp&1S7 zh_JFcj+Cm7KgjclKFdt&S0*@xcoa}(jVH$@7RH%$I}~^DLz6r0vSe&>h!{(jn6C4y z;u>6G7NbS&+wX`4w4;~Imuc*<-Dd0!0Jmu-N2+aRbK)T$xiStga$`odsQZFfX zcvb2QpQb+HWE!GFL)yk);3b#~a=Gbq^#~gSFgs(gA%e*E!`{ti#MN+onX&jV3`Ki9 z;=`h#7^|;7b5t-l;iDwbeEquNo)Zgc*`NDLTmF+{60htE2@sY+81E@- z4X8N0EaZB1nP7ZbwVksKWIw%3T2OobOP)VpEP*Kt&D^)d6y?EXU^I3Ma{01qokXcpa*NfnhpGD_J|Kl>tk>i7<191ncZk%xC%HK z&r1Bg%F53h&lai`Wn~CN5S=7?6&CRS2I1!PSE%0i)K}hT)Cr_hT3(QDC9@;O9KB=L z(;K{hv^3ly?y~G_biX2f6U=Kvr5eri2>*Z%A6{2|s1rqq63{c1%qw?9++(g%@xWC& zmxKlMTEWm!l&fNS*cZ6TS}R&!X~P9J3^>KX#xs%JRLWUU`-t2|NrbM*4p0P{+8M9P z5)hyj;S@|vvRLpSSA>43ntL19Ye3c((4txpbHSZBxik$Tvo&%iBx)8O#!N^{aZel) zrQaQCro3a1%qgztV@&hF8yTLayrnFMM~eM}^GtV%=_>bhnx`!UvFGJx!l@0-Mblf# zItDXu=0|PKIaS>NkeCzG**II-A?EUsad3G6U#%UfyZ2Sw(d4E3wPd@Q{)ROJO!)YY zjC2(C4f%iStLir`0P@K{32}rUDOr3j@;-3G;xFO=cq3rh-rYu1N;1+Le7_aRnW0la zFh+_M#T3PT;ykwvg)Qv%p_*^6F8gkTH7Yi8lAvlyp`w0eLgv8t>la*-Q{eGcD#_XI z&}gLDNMOljB^?XIlfDSMnhC2+lQrWMr_8sL^q-t^M3<<*l+gIRiu)YpY7YX|e7vSn zJe-`zK{s{^26BMn1PCVq294}TxtAbF)2)2#{1Lta+p$?m8{2+pel0r|`P`T=h#ZL? z>uGjkU{%w<7y^zMH5|Rz1DD){I!2V_%Gnx5tg<3PdEx`JBaUIu3q_}KTuA83I(vL# z9c24|VWNcS;tX*V06{#g$bf^fZ=OMF88qhX;m0DQC)hX+?ybQ&Bld)w@4FYVZd%|p z1T#3j<&_O+4B0emw!^ErMwa59s)*I>$|4jv%Y)G_a8&bJsq+C;x37eXeYU2Zum4;C zwR%-6Lsq|!Ei4>=cmk5lbrZB_CZYYMvS@OAj-!nOXGQCzJ_#n{_%(T(K@m8EIC%8s%DP+-`os< zq(f+dpV|8F`rY@oYXEv)^}@eBRY9cVTmigTjTfN!h8MfzMbUcE7(LE>Vw*^zohg-# zjvef_{oenb`EC!}erJx@(#0&(@s1g8x~O(<2U%+(-eQ_}?z_!a6{S*5NZ7Dw z3l}HZ3ItM3rFN+7yk1aTE2moCOhMbY)sw05Dnx=4|f?Q^rtHJR$S$O5+D~EBb|)q`2*n?z|JQ zT$wVh@n!v@H^*K|=hFDTK0Q(56()-tJxN2NVNeIclC=*T!M{O+11as&o|SIIy!Y;Vb9ll#*&(lW8NX{iUs>p?~{Vi5W z{AY5Zyh2*zv`7{uS|?Ts^gNXlw;;phWnh@~W2X=WgOu`W6?zn6@DKjp!A}cf{T_e! zfAC;;(fb7Hyv%8i@|MAfg~Cp>8RsMA?V{j)u-_<%{lP;|!d2hk{!Yb35by(@dYk)7 z828nk?~|~)fz?#7s|t>f3piUt!JE%FHN@+$?tFb*z+bQDzsf_OrXwtkU6KLX)-5F& z?ypLn+P*6&F8)P|=goV_rWZjX?D>)YN*m!0`<19?@7)0=`P8a*X0;8@D!T34Xqz*R zH}lsqB~ydfl)AZX@QCCy^W^-{unP}hH(OuQzJu|2e3nLdsSgaun63F2+#~0={O8u>$&XK50wy22e6UV2bu5BvsvX}$0AUlPs?gnHl-uh_@AC= zuaD^?Y74s;#^ezeNOR7X1!?KKXh*7!jg`rbHl8CKMvka7!;Oa@V^K~PlK4Zg)#-g5 z*Id@mMIO!Pv^)v*K#B(SNJuTzdsy0iMm>;eOVm^M&(pYmUogwtQ@#lG8}g4srfG)W zg;DAECH=k@@P1Lx1jxLg-)Ex?sOnRA^ga&zsyvo~yIop5`+hN{J>|U;Q>E@S$CVbD zAt=2+k&#jqH2e!7fkKIYZG<7;m|fp5k=!J~3^pNhIfHN!0>PWl4!V@M5Fzwu4Z4S4 zFvt1kgAU-MD`ob|t~{)0?9JdUoGrhFvyI;ZbZ1Wi{M0%=u61m(R=6rv=lSZDkl%lojE%Mh~urf2jul#Z!atV(Al~ zPFf)h@Xw7FjD)w6KdA-JHk2joH>YKqQiAUt^V9Rp_FG&BeokEaTskn)^jk>>e)n|?|zB*J>|zX>O-Qaqz`RS zf>NoJpd{Zz39@PvnvaPO>yj!42dtV$=|fU|P#LWH@N3oQOvq}hJ`CKd&x;o$zfT|> zLr8}5Bi~3%`8kn|2uscjRew%|xq2e2j2}6QRCLBo$?7?G&<>G6h-j*{-*AF8AYO-6% zpe>FPl2qKYkK2tHo^9FsH>Brr96*;sd5k#Tp2GcSvs01M^Nh#A8ofGBDiL5PZS$Gq zm^X@V?h>(Z@)w@@bh)pC1)&&Hu<#IXkDVeU;a1$1Y@x~n7@0k+Yt=-WB>y|Bck6Ig zi+Hn=S8++u5T80>8p?X(1a|U!IU>Sbfmi)4w+C$`sR4#R&@Yz+Z?Q=TIGnW?6I$DN zz=a7BKAR@Qkz-UwOzFCFZRdsm6X58&(doLgr}Mo2Vv+_^U*^)G&oRr>%+h`g%&%u{ zJ1%550Q(qBdqHl1ZFU1F4z5~hxdEo-1|T&OcNpQ_%5DInq-VknAUF6n;)=oz;B`<) zMDAdFHRJsn12safQp{I!11JEMwMM-iTe=I48(=|h0HDh|f~?d@x&&KzQ$G(oBwq1s zZh+&3xihu)L4VXwZo{p7H#T%(?AZjJbQ|Ic@O^u%+4Fcg+lG!~z4|gWh!jy&me43~ zmdhG(m>FSL*{?%gaD_&2RS|Y#&#+_d*qocBQWjOqp0;!+q*fADllCX*a#C}J-A)QH zOkmxV)|lxbz{tciA+{QRe9~y7nNC{gl0F7{+dALiVr#|=7=YH(fs~(g}~JBub;KgJja~L-I{A?6EHvP zD!%j_b2#Ww(@UI>Zz@fj8vD;OANk0D8{2K-f0x+NQ|;{&2x|lVCD5rWVbG;?g1)N5 zBNz$zisMdXllHjjGU$l8yqK=*TZOhU)ADWp?^5{SaIl|y>RUB{oKR< z=6}479a?7Sy?_fty+bFog9HdQwIEL|Nz+#ay%LZFrcN*_&Um#(flrzpt&O8F2%stM zOl+v2Xj6emQ*Cn#Bzr?eYbdnV?0=naC~5-<${4&Tu!m;nhF}+uGGn;lHpXxrB(hGt zH0gauY^u#HK6rep&2oURl^NEh=Y?n0>)IE5|>X+Zv~yLX72mO0YkR+<5!Zq}_63-WDhzB2JU z`q?#_Ti2V_k#kWLs81XLtBH5zCcd0jN3xLO`E=MDy^KJrQmKW}#!D8wk`}eX(GJxlWjx7MskGacj zx^J4dH)EZNyUZU_AV4KPH{W6|>Pb9RN-ds$f3ShoMQ0by%r8Wq!$>?|(~zI;m}Fkf zuJ^>^8Z2WzmiX1jgAkd*$Ht8$342>4Io9;p><~oKxt$z%YdgbH&REFVCP-O@=VeQf zG8WBM`P+PL0xjLz^am1eU^*Q6mocT@vj&-n-*iA>TZ4S&XQZYSDG)Y@iVnCV)Rr;)L-JEO5CcxXQNk&HJ ztQL&k&T>X$yP9=G%1^E%6)fSz=5bDR)5Q+wLK;5Nu~XR$fm48qKQMG!Xay1p3-8Ei z#Y7e~3LLQ-!rBAPezmw=)?%L!lylznsw1VI)4>YU!EE(f*EcI zhBJ;j;9r9%XlpAhowRc#H>`2Un~A%{lAsv;4v-CTdgz}m)Jur?s;sX-J=mB~@3ANe)YFZ2_fuF&aDudN5Bs!Lcy$*h+Qe5> z7QMK3gBG*E#VILuS;Hk%sTllxXcEdtETkR$VFHuxJpI8&maIvem9 zH5#w-T(in)4Zn*QX=SxlaJH4*wRvTk&?otVwbb6!pXpi#@pG|&U~E93BaP)J@Hg}o zm?rsYt;#EJaow!AzDBLK5G80>@^!tUPTgYbh6qg z@kDP=@U0|wXPfch)Mh-$-Sdx!-W;7&Nba_J>ovVWev^zE|xN`pq=0%cDgx^Q`tOlND}iJ4fJcGN`awo-OZWKcWjyAK|U%Mp7TQD(bKD=%Yds zr&(TbOME7qTq3kT1YmpI?Qf}xkU&! zmI%?;v@RfWv`qa(r+n^MucpUsXhf9I_q2d{->n8qQ31PK^S|=gIhZOr%<{wa}xceO*iGO(D%+QA=OyMzMOS2 zh(le)B9cj28zr)#RC|ru(lRjn?=806G+ z{;vYi=D{(E(>e0K|If?utPi^$ zw$d{e7~q`kd92#ODBJ**5s4lyESw3-YM3BOrpD z7`U@|8sXa4t+oqy^2WJ+VK$LAj&lq&hEc=tq^kgV;?i&El4mZ9bLE;7Z*jUgd9QD+ zx>7iAr1T5F{+bA4zpF@VyO~1BunXBH2L-_1srj2>WStS+H^H17DW<@vGoSlX@X3ZV<>6T zK7f*qZ>T7aI08vsg(WcRH?AoWZ$Qp5X2ER^EYVstz;kk|Ht;}UY6~)&>DhsIR>(<+ zGPzwoLvc}%gC`hrWDeR0ImU8zcMTv!;|X%w>1c5SAUD<8Lu2^OmCBsV(b<#ZM$>d& z`q}P8#>8IY7yv++W-0(1MFrh3KsHkW@6SaAQ$Ym^jVBL>}XSF-{r0_4^i+bCA^&4Au(u^Sw3UggtMLaVOk700V4gcLgO_tZ*4y?E)r>N+kD?~ujs^Nji$~dvuvQ_w9(9h04}+x@+%1V^y%;7_q{8)prV062zQBwS)Z%7i zgswaNhsv>j{}&gE%soIcI4QFanKA}KRrLQ|Q7SXQ*bq%xp>Qa`pDsOtMPmcPLrCv> zq$-tHMO>wtmTpuU&Pq{H3eLzsT~vZVhM6IpumyfYz9p4cT^L!gF+}{V{nVS;m~Auu z(W;KwmvuQn2OTt=AuZm+r^53PuDLhT*mbVU(!iKgE=SM2h8929$))2@A26G^=CcD$IjE^ zkM*WXkhk#v6AC{~!qIHmXwmD=;OQS`MXaxD6BnHcwUI+`%i|YZ0d1|DlNnvBPGIaG z#EDVJKpMZ4Y<_nmf}i^o+33K9|F!&&b%d1)Xr+IBF=M@uynC>|aX9NY+dksTPirbV zU_T@ygZr2r{Co9~TmAH1H>0M2PD&aZ4fbJyUD{VW>V9wMYH0u;S?tzjT~MhcXM}8J zb%xu4y<#+uv-kJ=?f%|cR{9%yJQDpW!=6}fsXPHi{ptJ3pn-~~q1K5)ee&+s&m@4YGW)9bXO2cx|@ZARn?vhsZ=iuw=e>8PS#}E16^2anO)hjY6 znp&(7svA_N)(j6+Say8#w=)k7$$>dThm^_k=YO*w#ruLIOq^$mmF!6g$29T=L^XpM zMsH6~CpOS$KVrEPs#Y<0T)eUM_doLApWj+SNGc6Q?HHDSal|d4I+vjMms{%`e=%VJ z#%f}tcS`lR_iO@)PVExA6d80rZuyRMdOpGTj&yoHN%W3%dOm^sY+)m{Nlt}IIhI4o zs2d5ZtPf>#LfVj+y39K3Lp|Z%CbRAw`q0>{OZpH6XVZt2H)KK=vRU^rGHNA^KP%Fg zS>Gn1vs5{|bKClMRsyALCnd0daUjW-?zaL+RCTy=gG+ z>(!=z=B08*pXNo1SJmU15? zlGPk^79#rC*7ULL-DUEb`hA`cS;e58qW*fcsS^~PNPXKIuKLZJX#`RsSKLqMXhrVY zMgHpDJ0fSV;I^abXO)yoO2@0TWxZIV=tCaq9qoDeh)6oLv0c;HmZz~z&2Q5*c1H6% zo94Ic*ajIVcldpt25E~u*i*jDYqZnTSW}yz$Bo0w^9XL%2v`}v+L624q3(95yDOr* zE1K@slq{lJBYCsltGjB)7f0)ds?SyH$A{~3>Fzm8kwgM@Lt9 zqE~35S5#N%du5d!?bP=SIld>-NZ;?)VBhkG{>xHWsUIdvfz~UG_EbAF@TmT|>f4SFzb)|s zjxUVfpSr8xj6q%F)jSrc7pu9K4$~Mexh^Kh3fM6V9z9&k9 z;ji#`JRYy*ks~Am&UHLK9FO0wSsyEh-=SHi9v}7xqwh4huOE-((I^L6Al3DJ@Bxix zk9K88`x038JvsV74DSOCT3!F4MGjzHUwvowfjqpEg)wCx19?1#_W>Rsi^uO2);v}W zZ^%o*onQM6Gx}wa)O;$2;#`WDGW-uZB}b6%W`<7xY7F78HbdC?p+(Z2@2vLweT<@0 zeFx`^%8GP+KBU^wP^u3In>rdw^_}s^w5vVwNFIdz2#~7lqZC+Iexwg`Ri)US^p;epP9&S$XKit7~A!s+oN%(xmvDZE}=Z>qp?ll+KO zhzo8y^$R>I)h-o~L2)BZM~Cr~-69=$=$Jyblh(V|iWq~fvk_%x4fSm_Y~ z8CUppv=Xs_)~TOp9xG__B#^CH=W3sQx(e8Kw z*ZC+Vu$yWWC6{S466jE}t}VTe;xnqXczL;!jC2$~u+0VJ*Gx~LcX_24B z%G0y7h4w30WqwtOG*h+al#6I3l|9*=nnHDwyQWb#9cEy9)a?o|5dC)9{=5N0RaWT5qp4e>-ab^*0oj(k}Qc-|1Gj@*u6@PWZ2%th@IesrL}aFjL>@A^NbI z!l@W9N7l-FnRnVsnLhO3C)wYfQ6$YgP0Yj<3!^ySCdR1@$ZX!ub|rvk(xe@g=~$Xp zNG7*}D0j%Lw#{a}kw+?4X3p+$fQn!)a(!zMGZSGg4!J3+@{5P|Jn-ZQ9}U-Ic>tIr z%2cMqAqKmt?+NFetv2ESE1Az2bo`7E0mE*}y4; zac3l*X;j`O3R6r6u1qp;B(xz`=!;5Bqbf>tKK-AqKRKG!T@yrH-o&19p#^uPPm1vn zI#^BXNkm$5mjm3UQ+IT!gI=jI*V9MSp9)qbM}9Rc2k3!LLH${1@sVHuO@c_$EgQeu zozg~xe7Ul%G-h^LpF9eBBYsV0Gxf*FAX$}%E`fvToAOFGc{qk4ddf<}}P0+pI5iV9J0JGJktsRZ2qojj3i7$#m9C*pW zP|cx%<;sk5ygW$SK$q$#|L^N<#hCdxK?P? z@wfNrt!u~MNEsy&ZR%J0+xj{0m&FaSI5*DaHZdUaBiQV`W@B%xu>%R$XWw$lo`$rb z?B8jfv6RU&cN8Eo^N9s2%+70eiMj`AcShG(>GpZJAm`t!-j?66sP<$dIGP2e=8Q5& z>yEoy8Dm5dwfk~aDuJQ$8-vJyC_iv5i$8WNEbUA|Hj?P04ekO+1A4si%_bW&x*#_RYLL`Xv5?U`=@-uw*Vb zzTH>P+$oUb^`9fnptk+EJV`GV!7$B5C(MON3py>cHK=<^xJt0Z-m7Q+HVF8)?&AZb zI_`iTI!${Z*Tg{fFc3nS6Qw(y1KA9;k&*_Mt`1|rf&d(cW7OPq#Tb;1d74JJ_LyPV zz+o&1G`-*eIl3rV#feMl6hcfD+LA&7x(KEspIBIzEFB9)#_rTPwad{GchiFx?58WV z5et$lFSNGgG1i?zTv?$%ro~F2e0&sK^!{7&l07-<9v!U=wG+hMDx1)ITSo7)q7ol_ z`$t=fpg2h?_?!C?8Q2E0*p^XzzSlP$DtNUTKU@u@3tP8Gl+Nsdjy9F)3;u|wRDGy5 z%7IelAIj%)`P_ldT$H03?d{Cx^7#WD)=~9IS--c_&*l9C$S{|q^X=^{kvK`tL0=y1kD z1YA)x>_thu|$a_0Ga`}z} zogGoWL*+Yj`OX8Kol#Ck_Pw3Ua`|NkI+sN`DcbjT)^hn8SIS5En#wQF<(D7mTps0@ ztNe;we#L>#6;XbL%5|BP*Kz#-5z`+3y2^Lu@?8fyyP|xT%HNgC-*uq#t|)((%HN&K z-+iF-?kIn^%CF4jS03nG8Rb{1yvpU(fld|WmCA>?e0ZQUjPjw%N4b1-pfif{k;<>i z-Z{C&CneFr-4 zi}LruzLebDHy7t7!y63bt$sxK&1n zfEyrJx>+d9%Y#FpoNt2g**xSya*S`MVd*z@At5pN$t);$M>`empcO!6bO|`QO`#9h z(q1_Po5bXb#3W!qEJ%>~mT1`C>|#+Ba|N2_8r=cN?NWGk z?tPPN>Pj#&oUX6K(6smy5o6(lC%)=hKxHYkx|O0dmOe-xAS&gmkvv>+w&gdQBoEp$ zHA|1fs@2w#$GZ;ra#kfyriG!U@OLGP6BmIvNerP?fUC?e|NV_YTeP|l1L3Z44Y7o_ ziq0{yG+MauUg;9peytG7`}qX3JFMsFY&{pkhL-6J_2t@7D)ZAuF1m?aJLB-y{txuV zQOIl&Hd-4NR9HDvm6c-59!&MEq<^Cn>xd55`p71llg8i^a@F*f-{f^;E2_~Ls5xh) zcs6tf?7*$G1}aG@)=eV1jZVr8Bg6p_NqVGOGI&Bh20x~#3BBGp73R_1q{U3kgLr=} zNiz@B`z^omJg`gCEV?kLG>bHct!6NsbFu)m7h&Iwuupep@+miFX!tJbcv=L+Y|`cl z=q3o;+Wf4v`8gq{FqF=u!_RHd+2=Os^qQ4PE7xzV0mVj#-d@cTi^mX%X89_O9+MB5 zsP3lrT$e*-DBTz>Ns%Um2UMEIj0y9b>td5Qn35rvaaN>^?hj7}H6;P3(yc!#dxr zbK_fp7>^e2Cb}WJhAbVOzm_G5L*xizgPG0Ndv)Q7%pAG*VMd@DtE}A=ATXoQ$x44e z?Rd)mReF}Q+2t$m1NA2-@s$F%kywP_99IzXttLaLi;oFnY3jz! zoVgM~;Ub4SZ@mhyq*ZwJe5>$ktir1o zxC*ZbX!Lo>tDwnjT7{U8SAn)Kaut|jtO8>@>neDfT7_3Hd=*}rpaq27hE;fTyb5O~ zR^ii`@V}l`;mu|hdM11rn#6>~r_!+`W-N4hGuGoxug72u7NAS++uw8MYhU?wEenG< z+p?&kMB)F@B{4;KVv8kSB4hn8VXT8OW4-B;M)KBMpQ4##<+vR&J>>vI)hX(el4n*~ z_#=_irA?V`TAf^48_c*h;U6_$Dmc1ETzO_sQ8-XZz;X=9`Ld_Ow=VqYiOSO~hmApJ=HeI@b49$nE1ai!PIO3p5TZ z7on@M1|M&fvZ7|M|Kn1qjZ-&pek7T2scDR; zG5iYdK$JQg|4{?Am$#A2M>2?w0fbf*h8sQ5rzT>6*BB$RJda>;Fw1#)^4$hz-~8bF zf-R-bQB;}mK@zf{G~wLPzx524{D6b_@e!P0COYkm{o?igXvSTRoo1#*^2fx!$bpld z@YJU#{37XzW5wx7M=OLQ+EdR@Ob^vawv_@Fy$hqA>~=@q!1vweee1%^Lj#t=JgbA1K+x#`I5@+!Rf+Hlu~YJ1vtx$B-JAl~ zLMU~B_OfOwf#6IwV-x{|`X-B(_N%!td=>UH9;*_56<1?T-w+n{qf{(v{*4p%eEPUc z__rx}!X^CMlzhP@{M(c~;}ZUDN}h8G|28FGbqW7AB>)GE%~0KBQ;nSk{WZ;0@nk|= zPdl;cKe?<}&YOZK=UdE40J3b#+-UQ!pwH2|Ym2X~6WY=ju~34_3_hK~gE2Mu2R=dM zzn})aGw9!(9nNbB&X6LcKC|99RdJzdzZN#}+7((hw=5ce@E)-GgY-koPhon}xX?hk zK^E$-U!j&YuO2~6uU}#KaJv=YcEHF0m*xCRp7`-px98o)sVh2h}5$mW;3i}G%Dlf z$u6Y{fZ9(M3^iW4*c-sJSvq%QME`Jq4VG?%qIb&_^> z$_hM-pE}kd0lrs15BYe3^3p8U#SlTU$EH_c4w#ZG9r74naq(qUNK--EUN#1xiiezDh z*4x_T_%et6o}K16fX9~ywFNQGn8HLYL+mi|ie>Q%&QVqzHc%QB-rxj)scD)ep?!z_ z%-KuFva^Oz9Quv)xb%{dppe2b-q7AA5(wspFlU>JA0BSu%w#nMY2q;mmKL~icEl7@ zS`m{FZ3dl7se?(-Pn$^uD}r;Hj5cyAGo$4(IKkCX>W12L|d*3b5vHE?J|LY_0_U_G6^Nb0cR~P z@=J$P6R|`dl4wNpMn(}EqAe&7O}O(Wy%pe+gf5wTW{g1uG6V+6oeYbPHS*3Q4p~qL zXXf@2RFP* zpKNFf{szYefs_e}8OjXR{VsxUUV3u&$fTKM`5SN*bvvWlxtCrIC#m2yCklPM^oqtB zs`GedCBC)vWH1;k;soY zFB}2Y1rs%?#V=X>l7L~giUCxo#V6&G8`dUlew7w~{3;e-U!}!wUZqbGg65`Jd}2AM z&f-I0T6~uNY*N+1U?EkdF=g%t367;|g_x|m%sh!no}uI{WocZ-pcKgTb;tgq%+q+A z1^G+J`eX~d$YU4)^$R?Df0m;RJle@iprnMpSo6vGv^R%4+FEULxiQ0j{lfn(i!G&= zsvp%~^`81Um;URp+W+^ zG^f)uQZL|UUl#j9#!eBXVClbvcSHIPC~HG^xjr4Imlla*A-SQt8}Jw%ukaME{AD^} zn|_us6xqidIn>rJr_W}rZO-Xi-s#^cp#yi%psED~DIXx{2(6cviUeiaRlQhCBGg5mVh zWx!d#ZM5oEDvj07SY-sVWR|W7hNE?a76}hrfJwu)=b3^wXBFBc=B(#US|s4hF9mdK zkhPe-C=j7T#f^FD0kGm=8S7A>`3FHk zxs%k8$zDxUho&S&y9OYnBxgrkg^~x#W6&O@5ne}lv?xL-Nm1G*gh=fwI6S|R5N*E+ z8LDq2LtAgs2NPv74>77d(5ybOzVj4jBGg|9r;g6^&GLiH!bO+Q+mZUunnym8aXq{f>5v~=R60f|%T^=<*@_&JwvQBsT|-5TvnVK7(4IOkaV~#u$bBGB{PG$QVN~p^DJd7>{8Oy0X;tvq|TkGsbuX8Dp@2&EYjv zp_4F&uVD&-F{;dgmzLHop|c5Nh(Jm!5<9*oDVj8lT1q!`Ba8topc{JEjFfKmOu+dj zj1g5Qi~-P^WyTo2Nf^_-$y!%~G5L)!h7UZxToxEJsc=gz61OCPkYLGuWre>qM;W2X zSYBuK1E%~oG#NALi);$IyC6;G`xm=&4|X}p#AJ}Y+LZFy8bZ&~{)yC5U&D#VpW_{Q zpMgTyL)E*s_QMZQDV~rG)(hWJUCLUYge$qLlMlvq)1N)8f{d?!m3~G%y-x#ZmDpCOMDCXkoZ0DuzL5pHYWN zq%BLbqPfX8jx3Vb++sn;x$K-mI1;49ce(`v?&9N-OKP1jeG3VW4b(J7L^g!Kp`+GI zy71CKWrqddupLfZtjqNZbum;D1wL}!bc!R86no9=yHAmU?HN{6TB($dT9z2r zj~7l09Uacpcu%@D6FV|mM%alo5O?LhgeIyM8XPUme*`la-(t0lef>d75D7S$^^4|+ zqR6i#pG90RX==-A1wC=VE1u#iPw5VfgLXJsNvC)P`L;-{U~^@aKwF{Gx4OLI>lGNE zewW<^Q6v13mRZJ|bk%{^gzivvRKTBd9kXe6*ez-E5S+1TigBY;NQ?F@SIe#t{DTdU z52Hq78Z*qPit$gO5B3hbUsMm&8r!t76@o|b5i-Tsoevf#w5x=g_c6X@mqWk=k2X5DAha~E=2u(TOfckZrL-pnLiT|f<7Hw@pJ>$CXt6yoG zP*o4)odUaJFpD@7N^|j1EDZ$9Q#2H3trGO;ENGF0Es^~3XF+!c6e!XPVU);Kr)Fj!| zQU+x?vl?HHH0dBF0jzMtVBtbSNX$%kN(>ifiO>=#F^zOGL6*+5sQBpbLKBpwX3v;) z&=OQ~f=nS@P?yvXC{9cL`lmeQ_t!7A$q4aE2Sm>DF~p(o)UCFXHAj>y%|Ma1`2Vzc z;ekX8ab#Rc$bk2+Sx2cm^vn#nyHj>OwZrQ)>nH*(wcefU|9mGG(OJ71|%$8rmlkw802Stqtv#oZ1ZS&%Z5bXU*f{p#8`>p#2EY zKKuVK723aZ9^C%gx-2#^-Ho`-cGs53&Gwa%8(-HMc0pRmeNJ$HZT;;aH!j;tK<+c^ zXGiWc>uhSD_5YU&?w=@&nKmndRL{mt%t#Uw@kLgmZfG*tN1H3KLMZ;G{%KRc!nGUf zpWaCQ+RTEUoiU=!)ITHY7ej!wr7X)BP1N7AeJ+anW$7fHn+qZ~5qc#7)U{^h>rBF$ zl?NHtfU%N!+^cOK_mk&^UxTm>{Di2J02GRj0q8Hz3&0kJT?7D)VP^s0*|AHQ2Zmi3 z0JQ~@Uowa5+ikEcSM!sY*K# zSH&m#YyUWcouqj{xvpUC;$Ym-v{#4x#3#P1n){wTxg;=TnkMz*zG==eh8i-+EFCE_7>7be`T36EnWCZl8x4oT(7%|dNDxNhoe$dcj zi=4$N7C3JPW%x|w!JC!;jy3-9BD1HaUW}%7gb5Z)l4TwE)!h_WeKYyM(oB83B<`F} z8_nMBlTVn7I=!^F6DO5sX=x@-D#5fGA46QYDTttPmgpm;}}^+ zS3@lPAL*eoU87MW?)A)78lAdZiy0j|rgOQR1c94tB7!cMp}+a~9vzsUicAmM&hWC` zXb{T#5x@jJxqB(Yv`2SE_)6*rl?7E4s1yM50d@wji7b>~rd3)rrKW)eqf*no=jHfU zP~B@^Cr_yM>&+AC5ZWPm8+e-vn$Pj+YPIU;|6dG>!B>lyqPQ<=av51jg?Sz)0e;9?JAk55~2VC8&beX7e5hw6MoCOqXHZ3ZR0ZxAmK`rMnFYjHfMQq%ig2NK zS{-pAlag;?Gl-7pX;r^E`{wT#aPjE-MI2$YF)MO0v)r`+B5A+*>6Zlj91cr!^{I&x zP##CKHbb`Y#LkntV#vu+yIsAm<}M)$+~U|b!jmrZ5BOGdz@%HBoM<>rPs1ZHSL0Ja z7@L5)({gUeWbw3lc>sp79=@_V#-r?z*H&Kg#0&ZQPfm?b{k}+$UAa5Si@bFDr5Sq# zMFjE+c4OE1nd2au9c>^f_)0jD4E_{a2h~MvV%)e>zRp_(Y|&T~nFDD{^Rfp6#%QD$ zJ1^_kB8)}51faGAV5xQ%Zs@*-5nP|iubZa)8kf}>y*|-pmmv?N)STU7d>HQsKQ96n zV?JHlf6LPo_$0tIPjciRx!V|Fj7hDkvHJN49uzD_V7zZuRJX50N=H%Y%kgNIf=SyB zcIzM#D_fjcAfUCO#IFHZ#9a@7!Z8d~OvT!<5E!tIZ(=jMewqiHEb z&H4IRoK?g|D+s_!qJ3EKY#}Gx{w$SpCfd{WaehECB2sY_85Kci3u#bUXlg?sPLAr9 zHacry%Q{_M&fd_~Q5dkzm;EsU;}A4KR=Qs>y5aBJleR*6)YaP_r#&!w(vh{^2unv9 z0>e))y4Yn&MHr^A&z)ic(SY){*f9%R4obms-%W1)etWMPq|i4?2U5dWWGsQ=1tpDC^xO9gmP?3sU7}6O&yui=1r^^O5qVM6*>_P z74P2WXcrtla7Az}yqEAvcg`UBUP6U=HFyS_&9?LB)hBP z6oacz{~Hifz&~1dZtDN~G(jvd7WQ%}lA@6PRw!UKLG>yX3w$~rrKb^muTmI+;(_#t z_Ao?Cn*5K~r~F!;EGk@ZLhWh%>$v@$P+Jk=Ipl?tHb|9uq?X>x|BkqLn+dfQUQJ(4 zs6Ac1vkA2|7y5ESZGudjd3_@jYHJSk;e^`LM9*c|ZIMu0tHm09J=Q3aX|Es_NYcCF zH*dz9O-XvS@FeNot`sk%k81kB_fEF!74!tXkM+SB?*s|jLq7;ru_=B%KM4Ij{IFTR zn;+gOaw%E1|5rem$+DQ%qqpeMX_LXHak`UnIckpg#kEUp5^1~MDCB8jSaeOkNQ9SS*&XTu$MVI;Ay^fg!I!%27OGdiW>yQ9 zjRjHUYr^G@Als+N zbxa|;#x0-a@nhm?S=a)o)=V|e-Vg|AINrjFw=~U;0;7MrAS{AbVf`=@@*9_O?_m2% zvfLqgDJ@E87jIV?RpEalg-~()NmV~VgK+q@suw3V`P3_^br}42J~%k;=v-Z}yy_xO z%uhD{G80hiFKQ_zXL1)W7KaCa-+g%57Y^6|;`>=&Par=^Wv3)A!Q^9)wf;JIV^r@Q zDsS*4o)Q#e3~Fp&c^BQ#L3GyKXbdEuD`I7NME0Vowf3K5P2;`wh4E|1nNZ^wIRGXC zGe*)p5578EW9IH;W1l4oJ{tk{RGRy<1(;QojivY5{le zIEwE~>MlCIH-wzhxcnY0DC)|}C?)r$COdwb-FAVPVX?-635@#L1bq=9r{ztI&ucaQ zWx#tEj|udGH<7go&^$6pgJ1BzmxbI2Z}l%vGgUL#n>B8O{iQM3L4+1uvERc+(v75f z7{bHWh`z-!K!g!kyK%`Ij%4-`97#+;s=o6bB$_zSf@N5+P=Ia#^#>iaKy?0ibSk)u~g#od&-QHu`ZHcUY8jN9Pi;gbg7kM zp{R~MdV69Vn+ThCcOV&LD4+=_Lz?!tlZ1dcBp$@ZS-IdGTa&1m98^~EgXGg%^VbWa zSN=4;rc2&M!}SY6yD#Z|qF8ZS_u?Ee1UgQT?3rJBZOkG~*5Z*{66|-;rPLAUn!m8&1>3R7y?w?q0Vw+e7IBp*K=_1+5{okJ{dVi_dyc3Ge zo4;@|icLpUh3<@|P)fzKR?{qUSE>z52&F#lj3=m8Cem=OcT=`}tNXA>uljR|a**<& z3P9cuSoy<#^~2z6_5w7Byqk)N#LkA(rW;YHDJQrv%vh3&y>lYnLtA{W{LK}&sj-@%g4?X z4@!y;!}kiIsA&Vk=!j3qLEtDg%BJoBOZIE@B_|W`29=?1m!WQ#HFg}X@cM^sH5JKf zvXe$GExqSA1^-1c)}V{8n=IawiuX(w)4pprIS8W>!oFSHqz{i`j4~HDS;nInZP&$3 zVhg;hS9hx$y0=q)64Z9J_SWP{L52zAlavKAT#!<$=SK?gv5!9mZwP-rRp`J2hf9Ww z@t$x`?Y`sqeFRZwg@zdk|39cH#5SuCAWK~}Eiwg^3s6RBXCDvq%8K|+NK z897sok!MMIJw5+$$n|S@O!9R%BZE0s8XzB0%d#nH6tp65#eW(Tx;P(G*(9NfQ5?!m*%&jz95 zrz_pmz@*ru)2R#&$i1#?!QOK8DW>?yU$|~cU_efKj!lF;0cYvS{F_b!&L*U;iD|$z zEifs+LJqJLti_w`9zkc#)amsH+jOe!~HQhAFrsob1N`DHw*K9H8xJQwtlxw$9ZF9jN>@1PJCYk+8gF=R;vQP`rrDv%n1B&1}WClJzDxG%t%G(IVgfE9xl6~PSS$el#zCTCaK*0&ONb!lv$>=(cq&<=4Fj-*(atK z#ciUFejdC>S@0Hw6D93;wAsZ_`^4w0@WrA=sN+X`&sLV076-BzqHcE@50Or`yY=ls zAu(w-C;vb8-ap#T>#XxT=RN1#d+xdSN=MR_bZsfgdrp+(n%FDqS{_*qULC)}NtA^d zT$U%xirtOW2R}Vt{U)wY25*4 zJZ%O9IK&Kw2r!@yhV=9OK6}6Kd#=uvWk=5N!*O)a`|fwY``!EbwV&tN&wlm_kmU!J zS=*ylv~?Ecr|(frSTdt;Y^LRq9z}t5CTkV@26g`zpkVR7sAv_nC@dnpq6u2%Q(oIw+y#QtjfJYDBb$k`j~UF+pG-L2|Tt0J#0rHZR+ zP{(ae_OJnMhrYNYHNO-u@6d6O>gGKPV%pAJ4V-p!yZ|^`0}b|?YwPu;--1lXPedG- zfRIXZ=7vtWMnsiPPcH5QDF!OIrFY8h%BFDTRN784JL*?Kl#A&atA#`3mSKXS+;J@} z4z+1cOi|ocD)wMyvIJ(iS+16}mo?v0Vx$N+4(k#^MOQn3HAO-$L05(AIZ2kc!lqi& z6~0+2NKhSJ<7T?;J86Bb)B^!{O`YEhOptCX{E1=+e~jiO?@SFt%39S}5!AKwA2OJ%fCT6g5}}e>jF?j%>MUbUjii$+CFf!4Kxjip zy9IkD5Fos&mpMtAc9tuWrSyDeVFLuyZ*}T9Av2*46>OAB5_%byokZ!pwtmW?D#5E0 z(&RouhgJwhUu&y4dx9XHztmg)SX~`j65wQoX*4kqU9|K#y^sd$ID};io4O|zy)DP8!cwl~#ytz83RuXF2s=i!(K+!s0MZ>MSfCAg*@t%YrzoNqfJ|d&PEr8?3)V5o_}6PJ-N@ z?)F+FqvF9{J-9AqN9F|O0qr3=7RpYIMjXif=^8klt}6E}c{x5JY03z;mwS$LB+43F zC(AV%`9$wp&ZJF|3+!Xm8Q@T5R{_l!hWa5t1?Y$Jl*JFR02K8DTZ)=S{JCpN2CSL@ zMV~uslIE+d@$ZB9;CQ}AP2kwIgpu4W7l_S8xm)0d%q2FwsJd!3c!5M6xkrCT9rlh| zddMgoo*O%C@oq@?@>Kl6M`(&}k!nM{kAR;p@0+Tl;ym-usOg`$2g*h)l;iI-E6^+T z5IXcNeU8O4RRVp--8B&|qzb|uhSVvAE=f5w5fQINV5$UinFK{CpicY>gm_hZ^nqkF z2W$~3qH(U|K#{9M0hkKl-Amac=C2%gxr>ssGbMXK%M&ii0u|CoC7CPr)>AWYspV%~ z@`LhCbe3~80zjt6Y@ZV&x$oj8A{2h=B=x|T=X&1=XI=9oKWWP5s{fJFrsIV9YT`Y2 zWfqUZj&D@kK;B_QNk)<-FJX#lMO&pgx<`)OmW=GvIYb=r)8xskC8&cpl_O-QA{ilr zzNWfNv8lmTwbVjA+&Ep8v}E#-c+`iPGPGs{=RgnW6+{gb;9N3_o+X0tW|@9D))_GC2idmhvR<+EsQn!2zc`qHX)O!@| z%i9g;OLJyHGVVxVl2xq_%6RIa5Z4+Pckjol21?9q5(z+Qc|z3G1O>ysK+kI1Vy4|z zt>adaBxQ4~@W$l5!(~e6r(>Ex0*{A86jL&sa?U*AIvl*S7Csm5c)X&AntvR`s=DcF zJ2TJr_wI|jq`Belc)4@mWKGoMX2eXK@}8^ch26)??NqTiV;Q1^Gb`_f4)!Kd3*XBQgN?z;2L&>fzC&=OwrH228jHL$I# zU370(-8oKTho8$m`{L+$w}huFqjn5L{TXk25)wQfAgn+VdN2yrd>6r}QUcO12q3B9Mc zJ_;8S&Ub9G8{!nur@Qdbv8F(`bT>}^I?_MNl1<&`6T77YIepL``naaM9jWeGv;g&_ zg5B|QQd8F$xH6vz+3P~eZsCSe3b@tnr-;w_4 z%3U=zn-zuk>2)O>R6SKH){dhUvC$u@Y)fj65#@4@?T5GPwPMNMgyfV2i zw>W_oDCtkG7p-KtOZ+NhSbYzcsMVS5Q!Q|o9&Ce~_fB>jWD@bF{@onto#auFc~a`= zQyy+3d3J{zxTHhDtXCW%K|NOCn z)JCX*95j#2EB7hVXM4$c^GHdh-obJyIjkPd%{l~XmY997h;py3&edvUeFX4~FVpM9LqI|4ns>v8DAAl7J5q*(*Sii_#BNyS~Kfmsz7 z{A^Nj2jDSsytIKXpN9a^ifi)v0M~6oy-^^qHVeC3Eh`7RL~=dyLU|49`X1HYDd4{1G$Vs zK*07Rv8t!!P=`$`KvXcYIxN;{CMDB~40VYTtHqgSgs_@=(2ugtizb79B$}~W?Bn4mTP#ndQ~AaUY|_A4d0A>hWqYD~%a&RpYe@AWTGn zgK>gX$>XK}?Lk;jWi4_$3ZGOwnRcXbQWM%Q!WIA;D4}zcI&`BYa{oC&nsO;LhY%fq-B!FQ{)5rf{st?%VDXBNjJ_sGC_tKcp8ex7FAi z>&_aXaiUjYk|Axd-fni1cOO=PbU>{PZyJCIMKR;!%og~QgL<&NWq;?UQKNP+zaggO zEJNK_X45t37+Ftx%?kYtbokjSKPcdG2x&!mnUV3M9ILF)?_u`AoWlB(tVhuA6muvE zl)8c|K|qPoqBkP&kHh$UMV-Pk4mI(2nWUx;q8ASb1iSGh;wt2;353 zBb$f2Wb+hZ^Ke)#`8g-s=#)qkbBEC<0v-dOP?DwmY}1`4Dam3EanPiI!10|r0nD@# zhz75bu-0H-`wm7wYrRP9MM-iE6>u{>+>v%&Wm_fgqvHe$0wAGs7ae5~`UI*d)Wsd) zH?^(eS{4Mn;`1at0z8*kZ#bhLlhQW9t8O3DUhVIU_8Gtut@6i$Nbpz{ugOu9Ea&1b7X%y z4h5g5q2TkScdhP_g0D7E@YmFeW?ku*t4YCU`6Cqkrg~QJ8EsbZX;cb6J?KNYo7$V~ zkZ>l+0W)GC#^~a~x*p(nRao+LuUzIk zvdet0D}ZHUQW`$HYTTtW_|$H zh#G@U4lrsiN!Lq6rE~(OzyZ|74tc3N13+?l-$OsvZa&7sctbzdeaU<+za~vE9$>{7 z1j-lzS3|t49>Fg9QVU0h#oclBXmv(~l?0=I^$4~}UTGfj0v;->Vza=wh5=biWmO6B zilMTqDicjhWi<&9NTN=O08p)WT4h}l!zGnW`0dQo^1w-un;}qrS@wn&mV%M!Fk(lP40o6aphVGvC+?bz z%R0%I-Okp{`RzZ=@7VYzQslVsOQ4gXpn;jaD&y=I!B zm+oM0^RlmLnw+wcR>D2BQe~(Jt@H{X2!YN_WfF<4@k>b?+$~;*o0B%!I_0gU4gNji zU9vW&Q=3t}yw|LNN$5;b<){<3Q=+$kMJb%Dz=)EGdM(v^+m=wNo#Un6KvCHp%MFpH3vSVEGzx35WxzKi(ps9w&bFcBiVQeD-jb^z4R3peO+(- zlUhHTXb5@aWq0|9`n}>4-3NO4ytxwuhR(#61T0GJ;?bp&_>fPd`n$)r^*Y@S;wLgo zX*HU)5Q0+`M&l##=y#t(y9pb8UI7HW+q^snZ|IfZ!8GU<_6^d{D$2$6dt8mr3P9}SfZ7;v3Buml z>8eU+{CPd%E2Zu^Ja^n7l{PffQv;u&lX8pf))2$M2cpn$7`-sL_?R z6l><~Gw^72;@`py;?qvEqoq?l@q$aWVO^=;WmI;m^C}$waxA(2MZu}(DG07v5LDkf zlTI*5@CHzm##<<=O6w0w{?yg)3G^(qJ}&<@2ljUFCxMdhRz6CsBzG&mTli@G7~PpH z9^QM+XOt^7!CzK8Bsl(BhS+eTOkH$^q+MkqAH4!IB7taP=CiB$L+AZjY%L$r*6x|| zAa$#qAFVFV?OEONJQ9L^;CkUID1={ZAfg=Di*~$pu2K31l4GBN9<;lxNc}QSK7%_- z^%??fjPC1t}&?x3MepJktHT$Qfav| zCVy|#>k}zZyN%9wh#=3h#~b$0(d6z?*r|}OxcPyaLb~QnO@r!Y2{on2p`M}}2#r^^ zyit&ZZaVe>VO1TGVB;L$uXPj|D$PhS2N58kihcYN;z2wd`l|Oa5MP{W8XD{C%H*V~7s@sl|7*St^rpbp-T`osFoNnjwlvPvN9NSaAJ#>8K+rv@Ah4bz0 zREoVF_p@rjOteEc)Qx<5(oDyZZ%+}J%C|RDEAs8_tacJMd*Wi}K0QW{7(3tISpH*W z+v`%GldDPK$e;)jwY!tDlx+{KvXyO5b(L+;5na7wC~Z=$@*B!GYSoGSY--*QwwHDj84p9l5EfPV5yjkCCQ&zL>WWEaYB-67*C>h@_*#qS@0_-NC2B* z_2BOcHYtnbf8VtLH&JR=9AwW=Kj)K=@A;&yWUzH*ut}3?8Ek-o*JcbhYM5wTj=`o1 z$k3^+D7xl;%D&>8bhTyCspVwRwGvr2#@v*b=^-s(hjB!Z>C0KR(S?3in&tBE_KQX4 zkU6Slf*%51gX{-4Ld}vI3|$-RY!y#Amc1KKDRM8_gvE1qVj=rUxF-g}zSSugi{tOJ zy_MdLeLid%0oTf2%`BwYRIs5qYVpoOoOn+f<@>zrsNc)>mw8Nfog(Ca}9=)}73Uuj&-dj=t zU#@FY8%mL>Z4^s~4e*PeaeHE(n^u<|o$`8YIG2KGwH(SY)G^WTk6wwZt~3B}RQLLY znO--Va+$^pvY}&0VD{wt*NII=?Kh0rKL3}J*xajc0I~gGuc*`WD%0+?e?(i7w!crj z`6$Qkq(hvh3lY4pjm>a}=6$km9}lr5j$)2jOjCb8_elwqWfOCnsW+jT&&UZX(|f7X z);C1O;!DfYa(NrULNzIrA?m0iCyS(`b1};Rq{EjPqFZ2z2@g1$ zCfO1^NofaW@7QB<{RtQzo#YLS?@7%P6W&)|%+nf3y?2LZQb}4*+@J~Mmz;>_S%9f7 z{4v#KfoQ)P4dN8HCv%y@0~Hai(aZC~ZVX*=kXHC%q6zels{F9L7c_P5QoE@_aK@J6 z6-hy?AE}1UzN~~mc)YiG8F|>1`ZTX$Ty{Pb5kZYZL|XiSZpY-E`uz{Ojn|;rxkxuQ zw6%64`%8Nj-nxQ6_L>4nG->YHy%R3hp5QDQTi-*InhEkfyEdaHI^g&ZPBX)_pht6g zOX2d57o;%;u53IN060TiLF@%?Dn`S)$2d|dB~5;@@~Yy(1_0=6bbj%tfvJ2yU4!n( z*Zy(_Iv>@poGdfQfzuWy#$1G`)ACClo}s zq1w9)waXbMr$>x9`&@yLx8iH#zb9boka4k43apEfxsX&Ne2INtf+!=645~eyn?*hT zR%b%*Vm#`Gr$u%ow+Qdqox=qPPeyi+f4Jqdq9iAE|A1`aj@S}QBv(E1i3iG&8;ZDf?Gnu11v6EJOdV9f?gyRS&uTlv8%KCDG1 z*R~MzBXmnXuy$)Pvr2E+!9NihQDcVpq-6^!NjH}Q|ExJJ& z4ZL3tpbIe+1C;gYdMIB9K(YEnf*dX^5+s$Hmr-C}Gf2HdF^c7h5Z}~`D^U#dyV&fY zxq(#-Rz9@0B7dzS;9PP12No*mxa>FqCQuO9D_Xj}|8QDwiXQ$fcpx))Vv{NHLAvGO=3m<82k#7d3^t}qvI4JA`FZdBbR2_ zI?~*4Xt92+Ni;&(x=}|73Y2zrMP1%we@=Z%vpdVYF<1MoriiWjDdQ!uBHxN0?sO|< zSM&S$ADO2GRFJfz9HxpZW(HMUE%RnXd@AWFu@LEM=>AT10;eh~nuOlvRusNV@A7VE z2>^PR+Z%98?{cH2Raz0P3TbK&dQJVs#hA)=)`KIYq3%Wo$6^DgSgDdWW8qj&3ahL& zDf~@~=5W2*K(e=GIWtIKbJDWN8v-B6hbyPw4#lIdR_Fgq=X*jW5}ey_LV(SjAir;_ z9KmL8V8J3sp&Oozn(CfmGy_a_nGxjtWX_2a7y~g$b9r9LGs@kV=jAF#UPyWn7$xZ; zG~5G?N~{rMMIU1tfvDT_gg1z`B{YDSgzjmcuw9+z33lZpXyvm&<#1AGPYmq7B=%6R z#AG4lGSx_tkVklS#y}V~676zvmhqQ4$uoNpDjWq(Anr;Lm~&y0ht47_q|#x_gSftR zOCfgqL<_(OpF3uR*l?2&Q;vj~n{iuTQHULlc3^=SA%^3Tz&`|5^`g}J>gV#vpOh1? zdhWORJHC|s7=78fp&qr|Rd_VAyXy3KxC@O+c_pM-4LBWGy5M+(KFhb zMmlscK^jL&VIA6y@;Erm!(gB8_GZq7a`&S_x6&iCX0gkfh4uy5+f3&KCv|s^I`N^& z-uS>q@sSLp6S2lBv{0Ko%^6Ufl!Kql>a{#-*~thzb)Kf7+A5S{e(x>4qsUmU?zyG7 zi`Gs@dgXO4BZsHMT$1{<^;L14$B}Jvg}}!ZbJPa8&0qtf5j6)A(P7o4vb%L0bu$fh6h^ZG!3$U zKNZgN#_z@(vS;t%8LA3oL;3HioEP2Oih2R}Z2i!nAR-|}dr%7@%G zif6l%x3b=pG52N(yEkKd9hkhWM?|0$x57wy>-eEFQbUt*sDW-c#Kh){4MdeiRxX#> zNK{!!9hccqR9R?HE;DXb7V4AAgggM}#|LE!?o_^&o#k7RM)db>@?N~nN{t|7|jpor$z1%ew-SRx#2^+;r-N^=E zeOqFRlRgq=`c^MF0=dZzV(+(lhx6qiZa{kj$z+zx8_JDxXKwjaF@aA(7C9%?QNYc9 zgPfRVr#i~}ADMnrbo86*j=qiMk>&DjYK!M?4q0viX?B}$OenJf)7ctLYXv1g^N!F zu8w)2j4FtL@=bAxU?|@hm$KmB!0{q+C)0j^T*{s&1~xrF>}YGGnnW0B&!jF-bLqWF zo$4iep9Bgt5s#6F!pdQBgb{u3EjksUqqO`~o)L^h>$q^EC5imb#x1>bdglU<4@A3P zsxQkoA3_$;_>H#|Unux}J73W6TW%>nr{9}y0mb}&(;-k!E0AotGg^7DzAWE%s5qsk zFiH8=czU9~EN?gjGx78ipViVMmoL_r<@8W-QBR+wXhU?H2P;WHQr?anHjH+C^T5_` zQMPN3ku#B=Q_UA#ldyu;d~vRs@jX{%gHA4oPG`nl{>fz_V z;;506!pYFuA+ zmQQQlFKH)D?3Kh-;h7+2_i#-jTjf}TAt5dWvW~xMv59kyH6=hNIt$PPJD{BbsMr9H zH#vb#nY@+qYC0%c2ZIBkWPvuTF3bN}<7aFKZKA5CWg`WH$kF#q1e(!{>X-5v1EMD# z5kPuXV_yz8W~K4}EKO>{Rn-dC{DE#kux8fPfJQev!D_p;KyueAqWtI8JPpxf4PhF# zri0~@nJR<{PSaiphw@m|!Lmz+utt#F0aDxYwyNbbqwYB4>H^^~3%PrdDQ-dPHbcVp z-(hvLVc_h*d-MK^kPck?Jw4 zFId?qx1}$Xi)`p&7Kr(%ykI zeH|8QmCj_!2El{8FwAvDL%#p&j|g{cE7upKaZCCOs zYA-9Akv^jip&g7rsrLMgoCWsydS;Y`&NjCpGdj~ipC8M6;%m}uP-kXR9AKdwBB<7a z*1;X0lJ8V&kWpBUF?pc%(Obna)}ZP^Ji`Rhw9E$3}rwLWf5p=G=Nq_ethEY z^a;hpW4Cp=D+T|Iav}BT@DBE&tvT-ak-cb2i z&87>Q_A<;b8b-p#&-@VG1D5plu-@jEozdy){osRwyYb=hbJt`oD&7&=3ER!uUMikx zDH?x~JyUDRhs;ubqtM8)##>GIuhxr4t7GA zs8ua|1DyRqnClH;5|z;=%wd}_i7$qD1uNw$8wO$06%i&B>MqPBOoe--6A0MRao@WX zsZ4rNTGF3QhGw?$<+3hFtFvCzf555;&}+ z=>Vuf681gm0VUX+l(Isq^%UsnGb}T+p2Ax57V9Z} zpz4=+z3j(Y3hS$bw3Y%1Gf_+KvK%IIF0ydPx}oU@%KoRPeLVhl9YeXehCe&I8sG`b z!G>Dkzy{&4)d6F&gHDS|LeReDKk7Ci|C2m#Pdh2zbOU%lir z(K_CSpbS`rSzQf)QaYeT}L=&(4mG*%+I8g$RdVpkTUN>0nLzggxrKK zXvkd;S&PLrgdpR~hJL>0`cqwPv}w4$r7Ct4U2EOZE;FN5i^6=%eGUCkYyVy+9h(J} zQg=mH(gE0Ov&r9VFzb9nfpC(D?M>q@i;!#f?Ap za}3EYWLDoxt>Fvxy=D_&Q{PLQfU4_ziEKzc?!lZ@EMbo8yj8?HJ!E$f?A7yY-YO!C zqTVM`(q&{6Nqb$GY?$va8q1+YZ4$D)Af5_MCX(=LQ2;5bg&qsmS4)y2!oLy(d04PE z;>E>MIf|YEBdSlVKYlET$H38JDusP8EVTIzxLQhcbNC4HjO{=LUf z@x2oBior0pbESkx=JpV2ilT2L zl690#Xl(G-XKs@g!neSij`Gk|#+yDAcr? zfD-A`hl-E!i#K!1STvLcrE9;7vJ1cW6*+_Mbj3>@YTiRB2w0F8GpEou>aZa|g5buL zBD(uonS$r*Pu}j9Pd?R1L+Y@ykh{qW0K50EIHoO66rf>IzeN_CZ$BN$S_lS9@geM#I(K`3+Bd z=XQBnmgCU%giCDD}N8{CZD9>=9UyPRZ~D>|7Y7^5|P|P6*!Z>E%rBnQnz7F@pX3J@b%kR z$>rzvxez=$y&BrMDgc@~4h958=vpA=gc1lbA0H%e38HrDRVTkHfOgaQ6;}t37heH9 z%)EU5V|?){;1R;>=(H2Ei&+8#qs=QJyEd4jkX|cg#9c~yA-0k32bJRSGNKwmIyP;^ zj7t83dIJbjyXdYR@u1>J#e+0$LY3u(yHtxT` zAcao!9%H{TM3^!I)F9A$KMO8Ny`+6$vwOgR3yQ|~y zYa{XOjJ$pBba-_7av+rwsyzU0piZHHL@dfgod*TZbihz>c=vc|;Xy1!Eji4mvbj`C z>xfBiux=)~L8~3w=(v^O@J^e<8`-cmhnq@ix9$`eMAE{#oH&7JdL%27k1XaG^)SE{ zea_4Pt3U1Vpb2`@J360{P*zU#n>yd^OYL<<*O9q~t}~n~04!)&ZIRB=KVB7~q)CES zE$#0{^d|FTTae;KT+&`#67I74?tLP9D@oLad=Q~jiC%RF9E(&z`fSpd(ro#VdYqNz z^HIlQxJK zQCyk345=&V6WH016Hv>a0w&j5pD+hA`j0glxwXaHCjPly;fR9bjR}5j#=0{2u(6Z8 zs=*hz-&mYzjmUuK8(w^o?W%Jv(;N!Y5`Jvd&Tv@Fp@L6)4pl3&bEx0kJclw53p+0} zhidPJ41ksDDRRB(hyyWFKFZrXHI+ZuM|pR}G}@2>?P8hn8b2$r6q~>g6-TY_o3A8) zt=?5HI>7KJv?xspR>6Z%gv^2mxJ~QYALBCN9HkhpA##(CY?whdV3ku{A;@~H70g)V zhH|P0zXGFFx9|`_Q9bUM#urpp$23X<@q!;+r4iQjI9%|5lG+=$w?`n9pSIkE%rIyc zU=>JP=ulz*)ay%Jts_KQ1WQ;;7|Vn)l%3^2+1DMlE$KnBq;bP)RSWm5g{5Y)_%Aj{ z4HQL}<%GmkvOXT*4cYB7bO#h$9-P2*Qxwq0D8Ss-;pDs$#`d5(@drtMs6LR9x-IF) zpIY0N1Fa6ql)>r>btopse#w+&F^AQg>Maa6{A4&+wNmf~Hpj{Md`w>o^OV?X5(3=N zIolM0NHUe)&^g@{X<)Evut1L*dxzDw?CDz&D4c|YXke914a%=w%c>JQoSW{pq@?Gp3m=kNft4d z$yguK=#-d`AoP5LS9)0A;KNv~Z{7gmr<(yx^%g)65Hopyh|7f44{-VL9~w=<&Ci7q z{r=|iE+boK6MoQFVuZWvt2?O(kHAfXBLi{Mpn6g;G(~U&e8e|gK`#7-2*Ssr!QDpe z13$NGzm6^vRF;qH=IC_A+P!=;*vxIvuvSBbb?wFH1SCs7zz(DsBrSQz1u51V)}Z#y zQ_m(`VOP{ojKc`4W*KTB-LZ{dxJQ+6Oja(^%#%wZDPhMo$VaSG07#JK5 zx;+?x;4iyV+LB0Fs)H4NR+5Q$@)GP|ZzdBJw4fiCMnbvp(HI zyd>*`UWS2j4P}hHe6=t^%=8fa^*tP^g~R$DVIxWWy1dCwqASQ7OPsKVLm-7*xlGt( z%W_uWBttUXV%I|A6xTxHe4~ivZ=UpFy0r8Ovr{MKEMKK)AsSZ-zWo-3O;c|;Nv0{j z5fo%JKuo~tsGi}{l3oy|G#Jb?DeteI-t4X`IFd%HP7HW| zHfcg%7vb?0DGc-~DgB$YqDTIy){6dz@V{%?OP8;B+I#91OnWTZN-J8OQ3kSB#4#s= zq_v{a7FrR<3DjEAC}~AHbQUiwDb$mciq_}rMG%JUu>vJZ_Sm+F#d~?uqhm525kS-!OO5K4fS>u%#|%YGp3JP@v)4iunda+B-_HCh`FyvLl0nP@ua^64%i zwn6W!cyQ42owcms8gI*jh+c2wZ~(+4ty54aOYhRmb;Bktn#8g~Z?_hD_jFnC=9bAd z{1?$+EdH{vqg4+BTX`jyi6sgT6pe8xP{rc{7!CxV-(|^*{q%_%vCr%k-H|VXL=z& zuKSP+*fKq_X*pvt;>7T#fLQHjNmntQ;XLspqBCUoA8=$NiAc0|nsmBW63+&z)W#y? z)$va&JOcbV$Uso8I+Juyt_5dREwNbB67mEGNAsbQ{4CXTBKGRd)rA-N%{iS&0#b)J z@YP;)3_xu9Dju*1+L1481y^O^+=BzldG7+~G8S^MvAS|ohoyfQ0y9>0J+NzmCiAeV z*m=)Z9s2oRcaWV5gn;!^ha!f7wa^5HOhEdLz3ui{0G$0!)kpprcW|foZ!9^IftYwe>_|m2gUNZcs3FlZ19XIYfOxjavG|7o3xyct z<54s>DeM*P0Yqm$K9rlqRaT}%&%BpoSn*5Czro#cKIgBJ7EW;#^hjX|z|-UWUY_B@_)w zQQ^CF)!Cp~*Jn$hYNYyTF75ht)AWE?h-r8HZ<1%QQ=M(8?Wi*h`mrOIIv;a&E_GY)co=OX0vMxQb%Bi5xe7SEJN}Z| z1E|tz^h7#MksQ_R3XN}M=s(>pyN?}tqTR88?QAvnJZlf!!4FMPMUtNta%0E{Re{kH zNy=3Sx3xC4(OeEiPL(3M8OZ`?K-!z@mhA=)G$@m!yHytkEU<>A3aqyio-MJPJFT%D zoW;{~hWUjW=FiW8`MJx$@#1XDY`UE3i$QiGb|h!WvTc*EueZMLTI~F6h;XAgrD*Ja zvjtE&@81mDx^6^`=LUt-O#jQj+)bIMQAaaHJE*&6fHthu8tY8CqVphJq2kTCqC;4& zQ1P~0@ySih)WTDI`;J^Q`R2Wxi;S2V`;i~lEIEoqJ4IR11+~nDEfT`uate>?^V)$`{eHv zT^e)8^gd6I-&cbWvnIBB#whQKQEt(l?Dt4e{KEVto&X+3c2&CM@U-GH1N{QhZFy0QkiXl5C8A_ z@bVt@n8l)KrY`>7UT?@oiUH&YY6c>WMG?u`RBKYD&%XlsQs_s=C-^>eJ!Y*aGKcI} z=8zkDq;Kl+e*8x!Z!)&FvRrFt51D!RN2cTj^5D=4|Hy5i%rdvn|pf(`N^ z5BNTx6t)!2>H}m9BQKs`mzSjZb4-rDx|To5_BR&Gh_R5hsf}*|-*O3<^s47(K9z>2?kQ(E{Zlfz zt|I66mmF-xa&&qfV9;4~DvboF!Ie(B%&RD1vLbj#n3wYM`f&-fXNAlf=TMj2GVrhg zcTJDnxaP+t%uSK~V|{|vGZ!Xal)M+iRNF-Sn3g#&5c98MH_>ix>c~Xrj$^9KWKvgv z2G+y3@+v<%+W_w9!E-luIy&0`&jhB;yH{;r`N4F7N33=GT!V#lt^u~G&NYC8x$wCL zOFGJ6c>iQkY%tUfb>mzEtZ!=FD-V~>Bh$GCGqvP>xt|Bkxdw|`+g!Biz9=2K?~@I% ze$xVYuj-<=b)5;6vUIY6%s(9^)2TFfsjf~oP#RpUJEV$CG#b`DFMn9-{$S#y@6z+I z=5mrH1ZCxEnvFJq?=Z%KVcMrF-O3uAa=$}Q0IN^qWUs9{u512UQPVT_2uHIs*Lh+}Z5k%d6>Itr_>Rh_Z)N*UlE8+2E*>jYm;allR{ zq)ng{s(1@z;CKi{wJ;`+${YW%ZWVi>>25*dSht}LFN$K)Haq+jT`XL-Y$BOcb~83K zQv-D!aOk9g5kx63Cv7`XF$v$)pr-zE1&9CY_{ZcRkmG-asfM2+M>&wayW?egT$Ws^ zprGBLndifpaD@A&f0?AMo-gQQnjzV3~PCy+MK}G}cW4UKL!}%xn=`I$J#W&nIV!d zI`vu!1;mp5>T%Oa^5F0~48cJgdB~Cz3$y`+8~_pvrNC->73ID~1pveB81%z&mH5N- zRb$IZM;A0%>!c4I^Z?4L)pzd`PMG$?L1KSZD=o;0_jwDn60Eh7c3dc$Ejg&6C?eCv zM~SZ4`%yN(SFqa=sCxYAJNJ$M(HY3dk|HSCX>>z2_HuqN)SaB)ivU7x?il~6UXyB3 zE^(+|IpV-cIpkj?VH88(APWsgy`$MMi$`7!XX+JW#5>A44c{LsZsrG`J;+c0otT}cvm|HhSe^O;GLbyH*0ZY(yaEx&5>C_Zx-rhmDGEhY35LI zj;LxWF4h>Gk7q$9JDUdc?jXX>9*2&r=RWnkB4y6$I<0Mfj%)5vJ`WY=qhE295Y0lLV4+w~D1De0Qi zVYuHYtN`;+aZ+DrI4AhkwzN~aU(j$56%Tcb+cxKM!p%&S{2XKw=(%(R znzZHD@1Qb0A9cXkYEh^$0t7$-<<`Heo4;3(=^y_$Yb zm+9%ZuP#b&HFPw(a^Y_kX9-ioWEZ5!K6R+L6xV$7Q1KLmQGrbjuQ)b-;)g`&Amm(u zZ-beg9KaK1Wc|k&yPjEj{ie=OsDhCD=L|)|hU=eoV+_S`=kK!x^fmtbn$rZZb6o^2 zzYrQTDB;^%e;Hwd6nfVxd0bqHrMB;eFslI0wA%vDxxx}$SW|AXMP)?MWjFK&zIPS` zOPb4*C^`kw8wE4~%G&KP=PH3(eiwNPCys4fX0l!3{7B{zFe&lcss8qRR_TI1s&@}opF1T` zT&J6xS-hyna8u_Z_BlwSeCb24MXax|MTnXdh}2rVSkMjRsqVFz3R8~WxpvMRA0`e+WD!vbmmMK z+UNHR-HAAnD>{m6yzZuxo_W47t4e`l*ACqJqUt06Oo^goXMYNE{J-+h&Y1>A!V2v+ zBAAjbX@C?+jHgrm27Tmn!owfu%Yx*ZsZkg_vbg5`lBa(oWBw(UD$*&@s z)$u&FxbtahAu*f*aAU=>?sCx$_c1$pl+}}>@=^uoRA4!P=+_%&RDm>vA|? zjQmJU#MQ4xP>IlTCG^GnNv&uh#>kLd7c$Tkvo-)^p^C==fLvx=f>F-W%%N#e>MKB1 zpg__J%S%isf#A!YiPo2FVRb3rdbKopd$lUG-PWebe{pST5>RbPljD}46h*FdhV}ot z7~W=537rIm7%!zgV?04YoaxI!byK=pFcZ6Qv8g)5|CuT*Sq7uAy?WT)RgrK_duChw z{OjLH*adh*8E7UV5(#Zz25AUoM%n5JImWJa+_X z9c_c>8k1I1xGiiq>n!pUWNDAlE@?01`?6>*djgLO`v#9ML)iOr!BWPTixxxDV8!{K zm3rg5DK(;veN9Ew#8@(19Zot?$@|BA)ME=rvTt_j*`Ej)w!ve)3f@43yTF`4^v zp(dO~Gm{I4W+q=Q8Hm0lO50!fI;iFS)h;p9-EC_5gKNu7FHbF@5E$8oImDMeBF<|X z5x2Q?Q2k!MTxc#A8zLH-9bI?HdXXRs>b{Jaz!O^cVhQuUsc&VvSZUXwMZFX?Qp5k8?`R6r?7Do?u6 z&&wcxN@W{j7R~NUpi7!dGDG`$cN>Ls?K_GBgBa--Y3kcT%Rr66u>XjB2a%)? zmfk7MidRmC=r=vjK@m8D*K#d?S;1OyN$;ST&d&}Qo1Mxf*m?p!P>TK9iOcXaG{IwVPj$$ zmxYtMLMxo&IPlg<8ls*87)Gra1OH8$zq{9eR%O)z@cm=$fMg*!qi?-TS*f(-Lu^@2P~mC?M(S`ABu z%E?k8_pIGT_+w@7G97qVsK&5?@23I2fE%U{o?roUW&F!Rmb!)S!UoX%W&tm@ux6=o z-F2Vgq*sj;ug7wUD*>c}lu0*u1(=D2lr%IQFBu3>t$P8v5F4#Lfj2908ziXgolU4r z8e;7c+j4?78p}Qo1Dp%;E^xkpgnsreT#N3ijp%Hm!T(Hap3$I>Hy1C*QV_t7hd_Q$WL7zxF6&9B+EO)~Zj*B8#9oU^ZRS<*WnY!s z;s<4Mozu}QSbKSgWiW1|#wwyc4qh4mN+V)k4Z}y2RJ3X}ci? zI~&49cP07>_w!bi-!!ML{?MoA(U!or`M<5ZZ+h*eby5Nq=%!|66a7KWv7#v151a$g zT9WXLoR%akDU;vm4j79l4SR>A2_d)a%4oZbSecl07agT}xw`q9@jGZ76rO?_Z;``; z8`hscgIx){?^*3>F6g0+d8%bLsJfE@|3)s35H#dlR{2!e8~%>9vF!;q5>DSeFfo(H2fkLGv!%jq_;EWs6A1? zPC^>(v(G2W>tv)+o)w?AU8nDwbN)?SQblop_&yST|8Ck;p}4nVaCPO~cf88B|$JAYjI7 z#c)JasT1l_68&ExcKns}pYgi?>b({jBEy?VrSZ2V?S^m6@E#~qPZ$G@=<4wJSA`Jz z-mqo%5yFB>sbCI0uVs&LOA9($Sc2JN$iahKF<#&q&tO)&uxHRGmO(HaK+YV;_gU`(;k|T7*7(n~ye0DD(L9D?$gKN$ZI>C1eNlh?m}`cyjO05~ zybpt)!%(n8n;@wqh4DDNas{?(v4dDDlO+7`s#t0hLxm)q&raA(ZFUM)U4p5Q48`&B zb9oBiAU#AV>5x=SOF=P7UNI3RLrJl7c07m{W7S!lW9Y?Fhd76j16cnxU>m;Uxu~_e zQL|09GhmzcFfgdvY~y4!F<|Xljf6ICW47yXPFb7*I6ck;BOMkn7Q+S zTP%a7aZ~3=_-$qu)S4OciVL1%=4WHNglFx7(sZe1O-nTCdKZxN=H*%!&X+A z#7^{AMjNo|Hq%e3SeLJAevvMxmCdZnC|r_mu zly7N+&tIOQC+#6#9oE14d*Kx>h>ulwVj|sJCN3spEQtr4i{z^Eo)jE(+e}U*XFfB znf_Zr@p9!`{r;Fj_ukE-3Jmp*&UbxtN4^}z-Ps(B^*+qL?90&;8-#k|g}xbIj!I{j z`R`reX5V&Cja)p>OD zUcA5x2#W;$u#&imU2+lI4}}yFpiaU%ho*U6ms za}HdQmS4Vnocf*yRrayuxhAeui)!p9C)Gmgzk0vK=EJRe@BZrZ>hfaB9Uone4)csO z3=$Juu}>|lN1DCHW_pbUe!<-!Wx{wVb;Jql%sQ9Qk@DUP(g(OgqFaKBX^^9(;jH9d zabR|MJ$qSEL2DAp79Ziw;t9o3+MjC>?~^ zlVb&}n`hip#EBLOnTzC+MX1bY8nC#3>fB2QV4CC;PHx8_)xT~`gOBLS3fn{1oJ>1fC{e$uW_!=$F;rOutzaWiEtQGX=wi zS~Q-l$c170#Ze{tUA-dxBI1OqZGR)^_pg%BziKLeS)otTr7bydzR<63^~?q_YJOsm zOcKQ+vGNx7?DQ&j-b<|S3iDNmr~RuGDf>#rG%=+n^QBobN7InoI#c@1n<%|h>fM!k zH%+f(cN>eCgm?ti&rCB_AA?aU&dba+R~*9SL#E?mSiBZjH}_CGW=G9Ho<(nNW+1B> zfOnb)Wof4=*V7deBy+knlo+iBHUD|qd?_tv zirI2g_x{QY3@vIj0z;Ow#bYfnE`MIJ{gNGKEPmAa>Hoh`AtO4O&=)yMwSOSYX)O{H zH0ks2s*Pic;$%ng5j|88XNjJIhAr!pIbyeB*p$`LB;hnaxGimWEh-F50dv$`taik; zGK?)&BXugtMCSZr5lNiU~%r1Cc{Awg$a(hgr2c%6N5{L|`_ zWOQG)@?nOCt$dKX^Rg!-$7f?d7vs_R$J1B@Ud#^Sv}A*^Y}~|rlAxm;67z`_$hmbg zNASFO6W_tcAKH%i>=RHuKjL$7{FJ^oA#1)@_-XCNa;Q*Gu86=S%uaKt_S$00dK}ta z%Q)z+l+K$O7*U?Ldq`;r5#y;mWSHfP>5_pb%~IzRD~?m~oInrGvhA(?=Gfk{g5?ugkeQk&Bx(8sds+Ar-WnWm3`A=T z@^`a(DO0!*4Fu-A$)21I)anz?sO$yxO6A?$t{fs$sbO$5?ig~4;>2@*CpY}4^Y()2 zNLclT;vPE?IS;|l7Ps{}-5$Ke2#HW#-~$!#a%Wh?&*4M1b}*_X!aF0?NIZvrRO zYj1Z%yRKB^&g)PGVe|xA`quw6C=QyMF4~|sIo_duDW1Soc^my)xtLpBRJ_ z&#efk?mB)U#h{9Etsd1Os4^5<8z%cVbq;F3Bvo;#OjnbB$)Z(MHGoC^8zWOHS2hMAl}Rr|0}Tdbo9I&0g52Xom-Yf6+9C%A zoB{FxplTvZ9mu9n+@rdX+cLzWAC=t(aY3-vi{GbUp|@8r{e4mMzx+JJjt~s;a!MTp z1KCdyjn}lh2GwkLg+{Es5U|Vt>q;@26}`!OS>d9}qF2FGA$og_=%w?)4NL%XRbqdO zDRAfjQ28{nKwe7hW|Ajw4p=v>n01HA&L>)Y{8AEX1p?aFaoENVF*x=;pS z0^5}+G!iFVsU^Lf+7Zn*Eg_)mmU22u7a;6j_!@rf$p{(g{^q=KqFSLdt*4wxstEL;uaSiGiZo8Ib*e3 zoa8b1(?$|=i<(~&+zHJBM&*cTEqKCC=|GZZDrGBWrm)8^Loy>aVH6?2TOsC<>UVR? zK7zaW;qGYM-LAWLDOjDk`c7{6xed5@^x?af5W@f1h`Az*ImUI=87;WDJxrEDVy%ZMbDIms>)uY_~Kk=6LBw zB~JC52LvjKIV(i|n4UnXbr8L2LA4Nb3kD=DZ~~*m99IWaxelNYF-P$|stdWTgqT}V z)!QJht;JlBm$%@z#T@TlqwdClXSypi)?$tfrzfRGpb;RNWC6nzv-@vM3WsB{LS6F1x&tPJ>u=w<{Ks-LE+$Zr8GENYM7LSmDqaYM>kK2Jq3$04(h3L-t*Nk z_qpD9BaYWd1jTYi${1G%Xfr8eK$-)zq>S}+YEAh4LK*9YGGEm; z*ur<$Nk1-?jK`sl3FF@w)jiJ)Qr+vBK`OUzLUoTiR^2r-Y@xbe)>5eMsnJl~qmEVg zR!gA(Qjk>l|LP2LxH#$+s_uXC4OZR1PyKvNRrf#LN_F=H`nu}=y6SFoKxiO{_Pc>B?0C?6HG(f^;vDVNuCOl5Rpy@U+;W zwdM~{@?1p0-NR)Hj??fGP&J@Iq5K%hk4nUEKA%Mu8zz^dcN4A};53|rBeK@aWyc^u0^>_nXs{fms{|Lgn z3>l+9h64Gn78wt3g$!9^LPl$CX)`kBeon}6NaxESotlFTb-gP>KGU6! z6nc_K*@#HVa)9_fa@n8(-_X0K1#t@IK^)GQTTaN|+;YX2S~E5vZB^w!L@`avd6ats z(aiQlR5So zowzH*94?%NIR*1!KEGTkI$s+s_pb?upLs1f9Pa{fo`}gcma07bA(* zcD@WZdbgq4)8r!&=818W!QNto8H3#(jyq9->^Hx=SvPS)77TWfW~=uuxqSfzyBwLW zau^qSM$VMc(_XiEnKA?#yNzv`2d|Y{>-dxnCOy+C1HUCL_dX({6@cRZ7I>i;zm6v3 zh#sws7-k7tdbkGe_!-9`^lnK3Z)gP4G4yR;3ugdO)Kxgy*epu7rs4c0CLu`6|)T8asX(PI3mjyzS@>84l`Bq^%4F!rX|9% z$j|6Z4?an)PXgiAsSJQ?uI!&*K3EQ7&vD~(TSUVH@z;Dlx-0|`ztk(&MZWl2NGcMK zfQ2hdsxMq~Ni}~y8b<=6OdVjNO&zjP=3*Sb&D?U7;vCiO9Ki>?!n}NTsl5PldeDS# zCvhoZwR!Pl97YM7b+gGLTLlISd4)@evv1_ThSB=6Jy@vl@?*dH83Gq^zr&`BH(|Dn zVKyxmQCAF$cTLj7yqR2jYsiM=(qj$5B6WiwT<|47^3ENSh?Yz51$iftFt`xODEoa1 zP}d?3rkOmwQ!T4`p|}Ves*!o@`te$E$h?ZoKS-(X)*@B3Mey;%YAu>a!njI&=8S|{ z^q%aBB(9BGwdIOKE)Y0cwM87O)9qDT*4r^g9e3{Z=g9yh z&5=aug4+bTtlE0PSgW?w)2c0En$c!MREPR8a@^r4ky^C{cxgF?S6Jg}|)r|Y1`pi0vMg&Lq zo)>3mX=60L;1yi@)huoF)q4h)R&Y&6R>HRy|7EP;!j|Qxr411wKJn^FiHfvP3m^Lh z^KtXSWh)r_V+BamA)r7VX<<+9BSD^YO~=Nc7u9JgQ(G*k#R^6dLzf0YdMD5CoCw1E zTAPzjQ?Fp0>ZvkZSFhCawdWO+zx5hM(9~s1wY+$ZIt<$|S!IN=tv0lxGLm(;Wk9-R$VHjJMPMmm> z%+(-Lu_DiQ!$Tr+nbX@7%7AjHaBqL^Ga&I$q29K8$n~?*k<|0q-sX(x?iLI2Fo64V zaJp1yUeil+zWa4SY4dlPdiquB{R>(vNl)rSIIrC4)K}4yxb!o zh!SRZUYOq!13`_DlNm^Rx8e-9VCY!}l5DG(FfjVk!Iz!@z|>2UGN*;2*n7dTUQRPO zkE%8yb_*#Oy{-|9>}g5gEfL$A7nHT%Q$yP)*TVK3f!soAd)nI6mDgzufWTHQ34P6I z%$i!B+ckeDaiQ5waf0ldLlcW_3KOW&;ZKdwhLEe$sX~j&4uDLjqHs^kcV!h}kmPZv z`eBppZ*{6u$_JE>!R9+?>Q8k;_lTF@pI?sDUMN6p!dMB_f4XY-2Q!1XO*Y0hE&s4m zv|TE^DUsZG@_P*6nq?nijP0??QFhkxM-ES7MN7jTz?#$|hZ!aZ^9A$MDnVJ89LiA@ zxj(scS}Qpa+}Y>d*_p+lq^3zXfbG!M`^xI1S-AR~Mw_&rXJfm|9IeN4?X>E*b+p!c zP%TJXpGwV1DDa}2xFi8_g)Z>aEMBXFCb6V|u<1uiAM-}J4ZuWaLU_eYIID2DyGh}& zV9MW}qn^?h=(4O*UuXM}RnpdQJ@JzTEQw4YHmh@>nvQGLl&B41Kd>xw5`ly*HZp~> zVkk^62d4Q%gapfZ4Q02mt&^;Vo58#z^eAJpEkTn8I0utY)ed5w>AkMfbJteS*{7`a9z&StfdVpjwg#pipj2!HBjBIBcFI+ zIzG~UUy6ktKf0~xc95it<<9Q}F*?ae^SkFqETq6BKiVw}E8y%lS~F7XXsz0&Gek0T z&5v2}Sx3TSD@nnBuP9rR?e?sU*C zo%9|DFbNE{F6=gD++7@ zE=#vor%QcrR#-EmI54JV;DTtPLt^EHVXA)%>7cK6Kd*vU{`Hnxf>RZU&BfStSLX@h zq?1PvW+9~>oXS$KC2U%PI&rJy&OANFz<@%pTHv&LIB$x0XijfZ7qISOf*X1d$>|vk zVLeCIzm(&~Gcv!UVX6M*cDJ<65Eb&e_dXSOziEvf-(>% z(za%1F-hXXkjarI{f{|T|1tf|^sX(_O^X7gfW z)A6Eb=vqB)&Ac(B(^_7l+S$Tuf!Pa0ui9Q9Q4B+&UM&GUIj6ZB;b(|yXcq-Z%R_aW zj%p^@z!4f_q3mIVNS&&$9+|{B4^5g6ZPFDzN(_EFsEq?*LfsDe*!Ugx-|1-sm#p7{S|8I*p@t3q`UYq>Q zG<&(aMNce23}LZqZ*p8(O2%baPpW|JDKca@uv7v}qV*Y@ zy^Z?$B>ozsUcCegfzBqqUo-Mc-RUZHQ3E46G=s%fdHaONSe>#Xs~Dd?gXG9EszuL| zU=?e2V%WiBM^-*QT|82rdX!}kpQqe8$`u>`n&2!OqA<3Z66~5$S>ljMi-%$$k5^hN zBd8-l`9@Y4Ak3N%}eg�A-x?;8l!4yRvfXNEa>;PmN@!gEsj7=y9vdr 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 z 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�u+ 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%0A(>mKf} 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

    >trr9%yU`Ab0L?JDiR_6>|Ee=9?6g*`%B- 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 z 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 Yj6YJJ#24qIJrM~yd7%h@T#S|a|0O#TM*si- literal 0 HcmV?d00001 diff --git a/lib/wasi/tests/multi-threading.rs b/lib/wasi/tests/multi-threading.rs new file mode 100644 index 00000000000..8a4e1f6a8e5 --- /dev/null +++ b/lib/wasi/tests/multi-threading.rs @@ -0,0 +1,119 @@ +#![cfg(feature = "sys")] +#![cfg(target_os = "linux")] +use std::{io::Read, time::Duration}; + +#[allow(unused_imports)] +use tracing::{debug, info, metadata::LevelFilter}; +#[cfg(feature = "sys")] +use tracing_subscriber::fmt::SubscriberBuilder; +use wasmer::{Instance, Module, Store, Features, Cranelift, EngineBuilder}; +use wasmer_wasi::{Pipe, WasiState, import_object_for_all_wasi_versions, WasiError}; + +mod sys { + #[test] + fn test_multithreading() { + super::test_multithreading() + } +} + +fn test_multithreading() { + let mut features = Features::new(); + features + .threads(true); + + info!("Creating engine"); + let compiler = Cranelift::default(); + let engine = EngineBuilder::new(compiler) + .set_features(Some(features)) + .engine(); + + let store = Store::new(engine.clone()); + + info!("Compiling module"); + let module = Module::new(&store, include_bytes!("multi-threading.wasm")).unwrap(); + + #[cfg(feature = "js")] + tracing_wasm::set_as_global_default_with_config({ + let mut builder = tracing_wasm::WASMLayerConfigBuilder::new(); + builder.set_console_config(tracing_wasm::ConsoleConfig::ReportWithoutConsoleColor); + builder.build() + }); + + #[cfg(feature = "sys")] + SubscriberBuilder::default() + .with_max_level(LevelFilter::TRACE) + .init(); + + // We do it many times (to make sure the compiled modules are reusable) + for n in 0..2 + { + let store = Store::new(engine.clone()); + let module = module.clone(); + + info!("Test Round {}", n); + run_test(store, module); + } +} + +fn run_test(mut store: Store, module: Module) +{ + // Create the `WasiEnv`. + let mut stdout = Pipe::new(); + let mut wasi_state_builder = WasiState::new("multi-threading"); + + let mut wasi_env = wasi_state_builder + .stdout(Box::new(stdout.clone())) + .stderr(Box::new(stdout.clone())) + .finalize(&mut store) + .unwrap(); + + // Start a thread that will dump STDOUT to info + #[cfg(feature = "sys")] + std::thread::spawn(move || { + loop { + let mut buf = [0u8; 8192]; + if let Ok(amt) = stdout.read(&mut buf[..]) { + if amt > 0 { + let msg = String::from_utf8_lossy(&buf[0..amt]); + for line in msg.lines() { + info!("{}", line); + } + } else { + std::thread::sleep(Duration::from_millis(1)); + } + } else { + break; + } + } + }); + + // Generate an `ImportObject`. + let mut import_object = import_object_for_all_wasi_versions(&mut store, &wasi_env.env); + import_object.import_shared_memory(&module, &mut store); + + // Let's instantiate the module with the imports. + let instance = Instance::new(&mut store, &module, &import_object).unwrap(); + wasi_env.initialize(&mut store, &instance).unwrap(); + + // Let's call the `_start` function, which is our `main` function in Rust. + let start = instance.exports.get_function("_start").unwrap(); + let ret = start.call(&mut store, &[]); + if let Err(e) = ret { + match e.downcast::() { + Ok(WasiError::Exit(0)) => { } + _ => { + assert!(false, "The call should have returned Err(WasiError::Exit(0))"); + } + } + } + + #[cfg(feature = "js")] + { + let mut stdout_str = String::new(); + stdout.read_to_string(&mut stdout_str).unwrap(); + let stdout_as_str = stdout_str.as_str(); + for line in stdout_str.lines() { + info!("{}", line); + } + } +} diff --git a/lib/wasi/tests/multi-threading.wasm b/lib/wasi/tests/multi-threading.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5fcb480b7b77f1b2252f9cc8c42dc220f3045b56 GIT binary patch literal 124833 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%0DMp5z1Ty8O%lGy5k-q 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 Result<()> { } pub fn read_memory(mut ctx: FunctionEnvMut, guest_ptr: u32) -> u32 { - dbg!(ctx.data_mut().memory.as_ref()); + dbg!(ctx.data().memory.as_ref()); dbg!(guest_ptr); 0 } @@ -101,7 +101,7 @@ fn call_with_static_data_pointers(mut config: crate::Config) -> Result<()> { ) -> u64 { println!("{:?}", (a, b, c, d, e, f, g, h)); let mut buf = vec![0; d as usize]; - let memory = ctx.data_mut().memory.as_ref().unwrap().clone(); + let memory = ctx.data().memory.as_ref().unwrap().clone(); memory.view(&ctx).read(e, &mut buf).unwrap(); let input_string = std::str::from_utf8(&buf).unwrap(); assert_eq!(input_string, "bananapeach"); diff --git a/tests/compilers/typed_functions.rs b/tests/compilers/typed_functions.rs index c6c09b07272..e4b48af1913 100644 --- a/tests/compilers/typed_functions.rs +++ b/tests/compilers/typed_functions.rs @@ -307,7 +307,7 @@ fn static_host_function_with_env(config: crate::Config) -> anyhow::Result<()> { let mut store = config.store(); fn f(mut env: FunctionEnvMut, a: i32, b: i64, c: f32, d: f64) -> (f64, f32, i64, i32) { - let mut guard = env.data_mut().0.lock().unwrap(); + let mut guard = env.data().0.lock().unwrap(); assert_eq!(*guard, 100); *guard = 101; @@ -321,7 +321,7 @@ fn static_host_function_with_env(config: crate::Config) -> anyhow::Result<()> { c: f32, d: f64, ) -> Result<(f64, f32, i64, i32), Infallible> { - let mut guard = env.data_mut().0.lock().unwrap(); + let mut guard = env.data().0.lock().unwrap(); assert_eq!(*guard, 100); *guard = 101; @@ -446,7 +446,7 @@ fn dynamic_host_function_with_env(config: crate::Config) -> anyhow::Result<()> { ], ), |mut env, values| { - let mut guard = env.data_mut().0.lock().unwrap(); + let mut guard = env.data().0.lock().unwrap(); assert_eq!(*guard, 100); *guard = 101; diff --git a/tests/lib/wast/src/wasi_wast.rs b/tests/lib/wast/src/wasi_wast.rs index 6b2e13aac4c..cf956eec1d2 100644 --- a/tests/lib/wast/src/wasi_wast.rs +++ b/tests/lib/wast/src/wasi_wast.rs @@ -83,16 +83,16 @@ impl<'a> WasiTest<'a> { out }; let module = Module::new(store, &wasm_bytes)?; - let (env, _tempdirs, stdout_rx, stderr_rx) = + let (mut env, _tempdirs, stdout_rx, stderr_rx) = self.create_wasi_env(store, filesystem_kind)?; let imports = self.get_imports(store, &env.env, &module)?; let instance = Instance::new(&mut store, &module, &imports)?; - let start = instance.exports.get_function("_start")?; - let memory = instance.exports.get_memory("memory")?; - let wasi_env = env.data_mut(&mut store); - wasi_env.set_memory(memory.clone()); + env.initialize(&mut store, &instance).unwrap(); + let wasi_env = env.data(&store); + let start = instance.exports.get_function("_start")?; + if let Some(stdin) = &self.stdin { let state = wasi_env.state(); let mut wasi_stdin = state.stdin().unwrap().unwrap(); From 38094203ca3ddba50351e2908cffbedbcf4a1067 Mon Sep 17 00:00:00 2001 From: John Sharratt's Shared Account Date: Sun, 21 Aug 2022 12:24:55 +1000 Subject: [PATCH 3/4] Further improvements in preparation for the deploy release --- Cargo.lock | 1 + lib/api/Cargo.toml | 1 + lib/api/src/js/export.rs | 3 +- lib/api/src/js/module.rs | 85 +++++++++++++++++++++------- lib/api/src/sys/module.rs | 75 +++++++++++++++++------- lib/wasi/src/lib.rs | 17 +++--- lib/wasi/src/runtime.rs | 10 ++-- lib/wasi/src/syscalls/mod.rs | 60 ++++++++++++++------ lib/wasi/tests/condvar.wasm | Bin 124249 -> 124465 bytes lib/wasi/tests/multi-threading.wasm | Bin 124833 -> 125160 bytes 10 files changed, 182 insertions(+), 70 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b51938343e1..4844248c2c5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3001,6 +3001,7 @@ name = "wasmer" version = "3.0.0-beta" dependencies = [ "anyhow", + "bytes", "cfg-if 1.0.0", "hashbrown 0.11.2", "indexmap", diff --git a/lib/api/Cargo.toml b/lib/api/Cargo.toml index 36a6fb7eaa3..9bcb2c9b0a1 100644 --- a/lib/api/Cargo.toml +++ b/lib/api/Cargo.toml @@ -26,6 +26,7 @@ indexmap = { version = "1.6" } cfg-if = "1.0" thiserror = "1.0" more-asserts = "0.2" +bytes = "1" # - Optional shared dependencies. wat = { version = "1.0", optional = true } tracing = { version = "0.1", optional = true } diff --git a/lib/api/src/js/export.rs b/lib/api/src/js/export.rs index 0241899019f..1f99ea3e276 100644 --- a/lib/api/src/js/export.rs +++ b/lib/api/src/js/export.rs @@ -18,7 +18,8 @@ unsafe impl Send for VMMemory {} unsafe impl Sync for VMMemory {} impl VMMemory { - pub(crate) fn new(memory: Memory, ty: MemoryType) -> Self { + /// Creates a new memory directly from a WebAssembly javascript object + pub fn new(memory: Memory, ty: MemoryType) -> Self { Self { memory, ty } } diff --git a/lib/api/src/js/module.rs b/lib/api/src/js/module.rs index 5197c34165a..26972fc24f5 100644 --- a/lib/api/src/js/module.rs +++ b/lib/api/src/js/module.rs @@ -13,6 +13,8 @@ use js_sys::{Reflect, Uint8Array, WebAssembly}; use std::fmt; use std::io; use std::path::Path; +#[cfg(feature = "js-serializable-module")] +use bytes::Bytes; #[cfg(feature = "std")] use thiserror::Error; use wasm_bindgen::JsValue; @@ -66,7 +68,33 @@ pub struct Module { // WebAssembly type hints type_hints: Option, #[cfg(feature = "js-serializable-module")] - raw_bytes: Option>, + raw_bytes: Option, +} + +pub trait IntoBytes +{ + fn into_bytes(self) -> Bytes; +} + +impl IntoBytes +for Bytes { + fn into_bytes(self) -> Bytes { + self + } +} + +impl IntoBytes +for Vec { + fn into_bytes(self) -> Bytes { + Bytes::from(self) + } +} + +impl IntoBytes +for &[u8] { + fn into_bytes(self) -> Bytes { + Bytes::from(self.to_vec()) + } } impl Module { @@ -130,15 +158,19 @@ impl Module { /// # } /// ``` #[allow(unreachable_code)] - pub fn new(_store: &impl AsStoreRef, bytes: impl AsRef<[u8]>) -> Result { + pub fn new(_store: &impl AsStoreRef, bytes: impl IntoBytes) -> Result { + let mut bytes = bytes.into_bytes(); #[cfg(feature = "wat")] - let bytes = wat::parse_bytes(bytes.as_ref()).map_err(|e| { - CompileError::Wasm(WasmError::Generic(format!( - "Error when converting wat: {}", - e - ))) - })?; - Self::from_binary(_store, bytes.as_ref()) + if bytes.starts_with(b"\0asm") == false { + let parsed_bytes = wat::parse_bytes(bytes.as_ref()).map_err(|e| { + CompileError::Wasm(WasmError::Generic(format!( + "Error when converting wat: {}", + e + ))) + })?; + bytes = Bytes::from(parsed_bytes.to_vec()); + } + Self::from_binary(_store, bytes) } /// Creates a new WebAssembly module from a file path. @@ -154,7 +186,8 @@ impl Module { /// Opposed to [`Module::new`], this function is not compatible with /// the WebAssembly text format (if the "wat" feature is enabled for /// this crate). - pub fn from_binary(_store: &impl AsStoreRef, binary: &[u8]) -> Result { + pub fn from_binary(_store: &impl AsStoreRef, binary: impl IntoBytes) -> Result { + let binary = binary.into_bytes(); // // Self::validate(store, binary)?; unsafe { Self::from_binary_unchecked(_store, binary) } @@ -167,16 +200,28 @@ impl Module { /// This is safe since the JS vm should be safe already. /// We maintain the `unsafe` to preserve the same API as Wasmer pub unsafe fn from_binary_unchecked( - _store: &impl AsStoreRef, - binary: &[u8], + store: &impl AsStoreRef, + binary: impl IntoBytes, ) -> Result { - let js_bytes = Uint8Array::view(binary); + let binary = binary.into_bytes(); + let js_bytes = Uint8Array::view(&binary[..]); let module = WebAssembly::Module::new(&js_bytes.into()).unwrap(); + Self::from_js_module(store, module, Bytes::from(binary)) + } + + /// Creates a new WebAssembly module skipping any kind of validation from a javascript module + /// + pub unsafe fn from_js_module( + _store: &impl AsStoreRef, + module: WebAssembly::Module, + binary: impl IntoBytes, + ) -> Result { + let binary = binary.into_bytes(); // The module is now validated, so we can safely parse it's types #[cfg(feature = "wasm-types-polyfill")] let (type_hints, name) = { - let info = crate::js::module_info_polyfill::translate_module(binary).unwrap(); + let info = crate::js::module_info_polyfill::translate_module(&binary[..]).unwrap(); ( Some(ModuleTypeHints { @@ -202,7 +247,7 @@ impl Module { type_hints, name, #[cfg(feature = "js-serializable-module")] - raw_bytes: Some(binary.to_vec()), + raw_bytes: Some(binary), }) } @@ -212,8 +257,9 @@ impl Module { /// This validation is normally pretty fast and checks the enabled /// WebAssembly features in the Store Engine to assure deterministic /// validation of the Module. - pub fn validate(_store: &impl AsStoreRef, binary: &[u8]) -> Result<(), CompileError> { - let js_bytes = unsafe { Uint8Array::view(binary) }; + pub fn validate(_store: &impl AsStoreRef, binary: impl IntoBytes) -> Result<(), CompileError> { + let binary = binary.into_bytes(); + let js_bytes = unsafe { Uint8Array::view(&binary[..]) }; match WebAssembly::validate(&js_bytes.into()) { Ok(true) => Ok(()), _ => Err(CompileError::Validate("Invalid Wasm file".to_owned())), @@ -320,7 +366,7 @@ impl Module { /// can later process via [`Module::deserialize`]. /// #[cfg(feature = "js-serializable-module")] - pub fn serialize(&self) -> Result, SerializeError> { + pub fn serialize(&self) -> Result { self.raw_bytes.clone().ok_or(SerializeError::Generic( "Not able to serialize module".to_string(), )) @@ -333,8 +379,9 @@ impl Module { #[cfg(feature = "js-serializable-module")] pub unsafe fn deserialize( _store: &impl AsStoreRef, - bytes: &[u8], + bytes: impl IntoBytes, ) -> Result { + let bytes = bytes.into_bytes(); Self::new(_store, bytes).map_err(|e| DeserializeError::Compiler(e)) } diff --git a/lib/api/src/sys/module.rs b/lib/api/src/sys/module.rs index 98f10287e64..794e489484a 100644 --- a/lib/api/src/sys/module.rs +++ b/lib/api/src/sys/module.rs @@ -5,6 +5,7 @@ use std::fmt; use std::io; use std::path::Path; use std::sync::Arc; +use bytes::Bytes; use thiserror::Error; use wasmer_compiler::Artifact; use wasmer_compiler::ArtifactCreate; @@ -54,6 +55,32 @@ pub struct Module { module_info: Arc, } +pub trait IntoBytes +{ + fn into_bytes(self) -> Bytes; +} + +impl IntoBytes +for Bytes { + fn into_bytes(self) -> Bytes { + self + } +} + +impl IntoBytes +for Vec { + fn into_bytes(self) -> Bytes { + Bytes::from(self) + } +} + +impl IntoBytes +for &[u8] { + fn into_bytes(self) -> Bytes { + Bytes::from(self.to_vec()) + } +} + impl Module { #[cfg(feature = "compiler")] /// Creates a new WebAssembly Module given the configuration @@ -116,16 +143,19 @@ impl Module { /// # } /// ``` #[allow(unreachable_code)] - pub fn new(store: &impl AsStoreRef, bytes: impl AsRef<[u8]>) -> Result { + pub fn new(store: &impl AsStoreRef, bytes: impl IntoBytes) -> Result { + let mut bytes = bytes.into_bytes(); #[cfg(feature = "wat")] - let bytes = wat::parse_bytes(bytes.as_ref()).map_err(|e| { - CompileError::Wasm(WasmError::Generic(format!( - "Error when converting wat: {}", - e - ))) - })?; - - Self::from_binary(store, bytes.as_ref()) + if bytes.starts_with(b"\0asm") == false { + let parsed_bytes = wat::parse_bytes(&bytes[..]).map_err(|e| { + CompileError::Wasm(WasmError::Generic(format!( + "Error when converting wat: {}", + e + ))) + })?; + bytes = Bytes::from(parsed_bytes.to_vec()); + } + Self::from_binary(store, bytes) } #[cfg(feature = "compiler")] @@ -137,7 +167,7 @@ impl Module { let file_ref = file.as_ref(); let canonical = file_ref.canonicalize()?; let wasm_bytes = std::fs::read(file_ref)?; - let mut module = Self::new(store, &wasm_bytes)?; + let mut module = Self::new(store, wasm_bytes)?; // Set the module name to the absolute path of the filename. // This is useful for debugging the stack traces. let filename = canonical.as_path().to_str().unwrap(); @@ -151,8 +181,9 @@ impl Module { /// Opposed to [`Module::new`], this function is not compatible with /// the WebAssembly text format (if the "wat" feature is enabled for /// this crate). - pub fn from_binary(store: &impl AsStoreRef, binary: &[u8]) -> Result { - Self::validate(store, binary)?; + pub fn from_binary(store: &impl AsStoreRef, binary: impl IntoBytes) -> Result { + let binary = binary.into_bytes(); + Self::validate(store, binary.clone())?; unsafe { Self::from_binary_unchecked(store, binary) } } @@ -166,8 +197,9 @@ impl Module { /// beforehand. pub unsafe fn from_binary_unchecked( store: &impl AsStoreRef, - binary: &[u8], + binary: impl IntoBytes, ) -> Result { + let binary = binary.into_bytes(); let module = Self::compile(store, binary)?; Ok(module) } @@ -179,16 +211,18 @@ impl Module { /// This validation is normally pretty fast and checks the enabled /// WebAssembly features in the Store Engine to assure deterministic /// validation of the Module. - pub fn validate(store: &impl AsStoreRef, binary: &[u8]) -> Result<(), CompileError> { - store.as_store_ref().engine().validate(binary) + pub fn validate(store: &impl AsStoreRef, binary: impl IntoBytes) -> Result<(), CompileError> { + let binary = binary.into_bytes(); + store.as_store_ref().engine().validate(&binary[..]) } #[cfg(feature = "compiler")] - fn compile(store: &impl AsStoreRef, binary: &[u8]) -> Result { + fn compile(store: &impl AsStoreRef, binary: impl IntoBytes) -> Result { + let binary = binary.into_bytes(); let artifact = store .as_store_ref() .engine() - .compile(binary, store.as_store_ref().tunables())?; + .compile(&binary[..], store.as_store_ref().tunables())?; Ok(Self::from_artifact(artifact)) } @@ -206,8 +240,9 @@ impl Module { /// # Ok(()) /// # } /// ``` - pub fn serialize(&self) -> Result, SerializeError> { + pub fn serialize(&self) -> Result { self.artifact.serialize() + .map(|bytes| bytes.into()) } /// Serializes a module into a file that the `Engine` @@ -254,9 +289,9 @@ impl Module { /// ``` pub unsafe fn deserialize( store: &impl AsStoreRef, - bytes: &[u8], + bytes: impl AsRef<[u8]>, ) -> Result { - let artifact = store.as_store_ref().engine().deserialize(bytes)?; + let artifact = store.as_store_ref().engine().deserialize(bytes.as_ref())?; Ok(Self::from_artifact(artifact)) } diff --git a/lib/wasi/src/lib.rs b/lib/wasi/src/lib.rs index ed1152f5ac0..8c8f533388c 100644 --- a/lib/wasi/src/lib.rs +++ b/lib/wasi/src/lib.rs @@ -163,15 +163,16 @@ pub struct WasiEnvInner /// however the code itself makes sure that it is used in a safe way module: Module, /// Represents the callback for spawning a thread (name = "_start_thread") - thread_spawn: Option>, + /// (due to limitations with i64 in browsers the parameters are broken into i32 pairs) + /// [this takes a user_data field] + thread_spawn: Option>, /// Represents the callback for spawning a reactor (name = "_react") - react: Option>, + /// (due to limitations with i64 in browsers the parameters are broken into i32 pairs) + /// [this takes a user_data field] + react: Option>, /// Represents the callback for destroying a local thread variable (name = "_thread_local_destroy") - thread_local_destroy: Option>, - /// Represents the callback for allocating memory (name = "_malloc") - _malloc: Option>, - /// Represents the callback for deallocating memory (name = "_free") - _free: Option>, + /// [this takes a pointer to the destructor and the data to be destroyed] + thread_local_destroy: Option>, } /// The code itself makes safe use of the struct so multiple threads don't access @@ -413,8 +414,6 @@ impl WasiFunctionEnv { thread_spawn: instance.exports.get_typed_function(store, "_start_thread").ok(), react: instance.exports.get_typed_function(store, "_react").ok(), thread_local_destroy: instance.exports.get_typed_function(store, "_thread_local_destroy").ok(), - _malloc: instance.exports.get_typed_function(&store, "_malloc").ok(), - _free: instance.exports.get_typed_function(store, "_free").ok() }; let env = self.data_mut(store); diff --git a/lib/wasi/src/runtime.rs b/lib/wasi/src/runtime.rs index 1b332d2cb5b..1837a6003d8 100644 --- a/lib/wasi/src/runtime.rs +++ b/lib/wasi/src/runtime.rs @@ -2,7 +2,7 @@ use std::fmt; use std::ops::Deref; use std::sync::atomic::{AtomicU32, Ordering}; use thiserror::Error; -use wasmer::Module; +use wasmer::{Module, Store}; use wasmer::vm::VMMemory; use wasmer_vbus::{UnsupportedVirtualBus, VirtualBus}; use wasmer_vnet::VirtualNetworking; @@ -89,7 +89,8 @@ where Self: fmt::Debug + Sync, /// Spawns a new thread by invoking the fn thread_spawn( &self, - _callback: Box, + _callback: Box, + _store: Store, _existing_module: Module, _existing_memory: VMMemory, ) -> Result<(), WasiThreadError> @@ -174,14 +175,15 @@ for PluggableRuntimeImplementation #[cfg(feature = "sys-thread")] fn thread_spawn( &self, - callback: Box, + callback: Box, + store: Store, existing_module: Module, existing_memory: VMMemory, ) -> Result<(), WasiThreadError> { let existing_module = existing_module.clone(); std::thread::spawn(move || { - callback(existing_module, existing_memory) + callback(store, existing_module, existing_memory) }); Ok(()) } diff --git a/lib/wasi/src/syscalls/mod.rs b/lib/wasi/src/syscalls/mod.rs index a639c70e817..966e8ff9090 100644 --- a/lib/wasi/src/syscalls/mod.rs +++ b/lib/wasi/src/syscalls/mod.rs @@ -1267,7 +1267,9 @@ pub fn fd_read( bytes_read } }; + let bytes_read: M::Offset = wasi_try_ok!(bytes_read.try_into().map_err(|_| __WASI_EOVERFLOW)); + trace!("wasi::fd_read: bytes_read={}", bytes_read); wasi_try_mem_ok!(nread_ref.write(bytes_read)); Ok(__WASI_ESUCCESS) @@ -3527,19 +3529,21 @@ pub fn thread_spawn( #[cfg(feature = "compiler")] let engine = ctx.as_store_ref().engine().clone(); + // Build a new store that will be passed to the thread + #[cfg(feature = "compiler")] + let mut store = Store::new(engine); + #[cfg(not(feature = "compiler"))] + let mut store = Store::default(); + // This function takes in memory and a store and creates a context that // can be used to call back into the process let create_ctx = { let state = env.state.clone(); let wasi_env = env.clone(); let thread_id = thread_handle.id(); - move |module: Module, memory: VMMemory| + move |mut store: Store, module: Module, memory: VMMemory| { // We need to reconstruct some things - #[cfg(feature = "compiler")] - let mut store = Store::new(engine); - #[cfg(not(feature = "compiler"))] - let mut store = Store::default(); let module = module.clone(); let memory = Memory::new_from_existing(&mut store, memory); @@ -3566,8 +3570,6 @@ pub fn thread_spawn( thread_spawn: instance.exports.get_typed_function(&store, "_start_thread").ok(), react: instance.exports.get_typed_function(&store, "_react").ok(), thread_local_destroy: instance.exports.get_typed_function(&store, "_thread_local_destroy").ok(), - _malloc: instance.exports.get_typed_function(&store, "_malloc").ok(), - _free: instance.exports.get_typed_function(&store, "_free").ok() } ); trace!("threading: new context created for thread_id = {}", thread_id.raw()); @@ -3591,8 +3593,12 @@ pub fn thread_spawn( return __WASI_ENOEXEC as u32; } }; + + let user_data_low: u32 = (user_data & 0xFFFFFFFF) as u32; + let user_data_high: u32 = (user_data >> 32) as u32; + let mut ret = __WASI_ESUCCESS; - if let Err(err) = spawn.call(store, user_data as i64) { + if let Err(err) = spawn.call(store, user_data_low as i32, user_data_high as i32) { debug!("thread failed - start: {}", err); ret = __WASI_ENOEXEC; } @@ -3620,8 +3626,14 @@ pub fn thread_spawn( }; if to_local_destroy.len() > 0 { if let Some(thread_local_destroy) = ctx.data(store).inner().thread_local_destroy.as_ref().map(|a| a.clone()) { - for (userdata, val) in to_local_destroy { - let _ = thread_local_destroy.call(store, user_data as i64, val as i64); + for (user_data, val) in to_local_destroy { + let user_data_low: u32 = (user_data & 0xFFFFFFFF) as u32; + let user_data_high: u32 = (user_data >> 32) as u32; + + let val_low: u32 = (val & 0xFFFFFFFF) as u32; + let val_high: u32 = (val >> 32) as u32; + + let _ = thread_local_destroy.call(store, user_data_low as i32, user_data_high as i32, val_low as i32, val_high as i32); } } } @@ -3635,7 +3647,7 @@ pub fn thread_spawn( // calls into the process let mut execute_module = { let state = env.state.clone(); - move |module: Module, memory: &mut Option| + move |store: &mut Option, module: Module, memory: &mut Option| { // We capture the thread handle here, it is used to notify // anyone that is interested when this thread has terminated @@ -3671,10 +3683,17 @@ pub fn thread_spawn( return __WASI_ENOEXEC as u32; } }; + let store = match store.take() { + Some(s) => s, + None => { + debug!("thread failed - store can only be consumed once per context creation"); + return __WASI_ENOEXEC as u32; + } + }; // Now create the context and hook it up let mut guard = state.threading.write().unwrap(); - let ctx = match create_ctx(module.clone(), memory) { + let ctx = match create_ctx(store, module.clone(), memory) { Ok(c) => c, Err(err) => { return err; @@ -3705,10 +3724,11 @@ pub fn thread_spawn( trace!("threading: spawning background thread"); let thread_module = env.inner().module.clone(); wasi_try!(runtime - .thread_spawn(Box::new(move |module: Module, thread_memory: VMMemory| { + .thread_spawn(Box::new(move |store: Store, module: Module, thread_memory: VMMemory| { let mut thread_memory = Some(thread_memory); - execute_module(module, &mut thread_memory); - }), thread_module, thread_memory) + let mut store = Some(store); + execute_module(&mut store, module, &mut thread_memory); + }), store, thread_module, thread_memory) .map_err(|err| { let err: __wasi_errno_t = err.into(); err @@ -3777,7 +3797,13 @@ pub fn thread_local_destroy( .iter() .filter(|((_, k), _)| *k == key) .for_each(|((_, _), val)| { - let _ = thread_local_destroy.call(&mut ctx, user_data as i64, *val as i64); + let user_data_low: u32 = (user_data & 0xFFFFFFFF) as u32; + let user_data_high: u32 = (user_data >> 32) as u32; + + let val_low: u32 = (val & 0xFFFFFFFF) as u32; + let val_high: u32 = (val >> 32) as u32; + + let _ = thread_local_destroy.call(&mut ctx, user_data_low as i32, user_data_high as i32, val_low as i32, val_high as i32); }); } } @@ -4677,7 +4703,7 @@ pub fn bus_poll( let env = ctx.data(); let bus = env.runtime.bus(); let memory = env.memory_view(&ctx); - //trace!("wasi::bus_poll (timeout={})", timeout); + trace!("wasi::bus_poll (timeout={})", timeout); // Lets start by processing events for calls that are already running let mut nevents = M::ZERO; diff --git a/lib/wasi/tests/condvar.wasm b/lib/wasi/tests/condvar.wasm index c7f0ab2561b91cf57cba0f1eade27765e6cc56b5..b11fe82dfede2c0e30476e9d2eb720c0bcb014fb 100755 GIT binary patch delta 21920 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 delta 21657 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 delta 29617 zcmcJ231Ae((*M-#ZW72fK!89QfUSARq`h zU?Z2Hs60VIf`Sqe6qTn4sG!J=a;Yew=tJfB|Egy;Y#`|SzVH9g+Uc&YuCA`GuCDIs z-JJQ%f5mS97D`r8J}HVq>!{ICDp7_i3LfX=BEUqhU#!|Ka>!M z;;3zR*cF?Kl*1o<6{Uoka(%@SA|G};uy(W?92^|v2oAQRy2BBqD3B#cvHK~(Hl*!D zetujZW#mvGLa?6}Y`6J2xW1pmFF4p%C(K^gZuj@YKc<7=kcRLN^@4~XnZw_&1Y#&k zy?We#?g!`~AV0WS{8RiL^#lC<9e!Ym-kL}UBy`xq9q6m9rrObnBSf*GroYY6z|U4g z5<&`x-G=`{g8dZ#hJJqjel~x|4K@)9IYL9Vnzb~$KaHi?G~2jpi>kS2<~Aj;MA7%m zG@9A-Gp5-5GK-3{3X7F8n>{~kM1eBZ7HncNi-#BHW#uZUTu2bMFY7ic=Ty6LXom8FCQO%mVCc)5l z(Oz|px|7nncI?uvb9zQ6y`YU}75$T5p+T$ZMS6)=P-^!cJ$v`6pm!*xl-5vk_V;Se zZSjfuPtr^(D*jMiOCQmzGMfHk$ zRo$Xis9V+D>f7o8^KjiohG=y_vbjplUPxKiVEqvs}V_2u1s${J!856!;xerQ3By`@`rHnoi#tPlfiPy~h4f z9iI)gW^~ZdwJ`tLTvP30EUlGhEYSX;zA&l0cCF_r=nt+BHHVMXRpWTw9>$M#8u=n^ zK=v~ps}o6o7>nx^;In4f1bj{ke&dQOsYQ%eGUot zKyex2%?58^AzZ3c4Gj!Mqv)Hey}`K9!1_cbCdO&g-jsB9r#&<<>xv_8`qWt0AeQzUrETh#|I{Fg=*9Bjh<_5DFg7+?)bQeL zuBSOwT^p&ddWthE=ipP@XN-y*95kQVqA*~jw%X96h6Sy;5wX20BFy+Gs^!qPS=Jae zBN#K)WmCJbDInP=SkYeQBK;bTbJ=(tZS9mgPDT5i#g4IM1QX*tY8bi{FcJlOxWGxU zq!=4Ng7AN>$;R!`u>rD3KQqmk6y1O(8;hgwsaY{~8<;EFv`NO*=mh%Rh<9evG-Iwa z)m1hPMNk~+ibw4d8W;+BAjx?HhOI(*yQ(C|tr-`(xcsf|8;$g)#^T0Jx~rJU3XB88 zQYrDp={^!Wt06dX1Hs+K(ENHvWPV_hn97}wlh&&5keR(~-J0cFoKR^CRY_6VptX@r zFj}SM*BWDz$;n~-)F8&_*L3`iHXkO2c<8R68|~c0-Y^})j8B`jmF!v=&6*Fu9Glqu z`W&;dL#aB)TE!;Oi^kB{CymxEnxo>-R#D}JEz($|H7#{~{?u}uL}yuKeOvbd*JoS* zCD*=f5>ctNO)))T{Mx2BO)m2E{*P3GNjeoqpbQRiWmKa`B(LQ6_)!sHnBt+3}V|v1qL7Nt!F2*>V zomO<>Fc{^uL>J94RwXW}S~$SX=t6gww$_4!##E1L=Qdd~OuQLV4m%qUFo9tv(m3vJ zZCbg@&+9E9LsU|Fl+~BpoDOfdFuPf`@Fo|h8jmNrJ6~iSIQ_c^W7(ByZ4-M2IEGlY zlt(GXAD)nNmzmP#2VNSyAv-{=R+(`=DU!;JkmQ86R%3&m4ptnux!)8RZ6X7EySS8< z;b30^Z4@LAr}vDnk{=1OYBoaAA>)2ew`MbCM|(OQz{HRAsDmYk)EhZ`#F1jrS{X@?Cvp$oXfxYTCVs9=xP71@ECR4^r#Rd6R)3n32|! zW*QsPhG5AEZ5I)2s!rASNY$mZ&XXh|9QZCUi#}IUlHBOt&{ex`#OO5Xy z>Pt@yA#b6P_W-J zUIg_ev$%@26x?dm4wM?bAC1GPJ^W}ythcetzKsRK^j_A^%aI6@>7R^>N1Ok}5UXCX zg5Z+o8-b5SR}QhNhy5={7%`PJrD~PRBW#nptQ=#-bV24wCMq$AjjiFuaKc=F;tsj& z+8j3D7{|-nT$%8Dd8A&7*zYIf;A3|=rG;Raopzl@j`NsS;Z)$9tzjPU_{jhBF#rB| zWMgX_11iUn15j%mXPM(@q?I&P50@H4OBT^dfI%>2mZ3|aFq%;B1;H=Wu=v$-x zq+Wg2a0QNqWJN0$!cbhs?2^lm>h;qPIaT(eqfxko0|$>f9LY1FTPfp+ZN~0NP3e2% z*GX+Mj!N6VcFhJou<3y~6%QE~rH<4pczHs;$w-}-4Wtalc+}QT;x;(G-8tKMaI!P> zgvs0Ti;B@j&o)kUY>Z7(K&RgHxiPR)8GT{w@03g{jgZa_{m(oH(X^vR+s=3Rf5B1& z*^N=H8nnVJaN6Lv1A=UUdYO#m8|!EISvgVc?5Ron+}PRqF7S-$l57NZ%=h0ppNWne zr5z*a2V+UcR3j*(@zCjVAtK$z6JF7t;-)yHCw-QTiMdm@?h!7y56c+mGTy1On?ux( zV$(}0!Kw~4_MDP{_nI)i`No`#`ib*RRno?j9!rE_1q$};rwwdf zP;tJw9Wx1jv5~E$v60ln1t&GAM@!iLq#l!lE;5ai<4dgZp*`!VOXeC!W~LYq^nAFx zS3VnzQ^vei)ynkvGV9CZM6c$5$)j2C+nb%`j(XH^wmC?^i&!OFA90rUPK`2GLrGN4HqQ8^ z_r1Z(pJ%nn?GW^KZ=cVr*|>DN%|&O8p|^D(C?^C=o_l~*{CXA~p0gke!uNboSgLQn-*sI2Z)odawG@;FvnQj*AsY1j{i0ue`DU#X5nk3 z?Gwj9tmjp{fzv~@YsT)SadgPIy0ksbH`*;5LdT2+%X-in3%JF`-k@w(&&9 zQIe^8AfE6d} zX@vYrRZr-hJX5U0PK$AlOM_K|eRmg>re~rhUNU z#z!mdlxU}-U*Lvxt`I#^za(3&tiT&8KBd#HNck0gy5x>CJ6_Ezg08dI{%w?{CpBGe zwywQl3B>hTDwFRe#%jMChtngvo|VlyDn$oBuO!l7eI%)D6-Sm;T5R7nB4^237T?dy z2OSE)yyBB8aGWj+xo?nR7H2fsw}#LKRBcf`FR2_R)v78~V1k~#)wMg#e7akh|1{Zw zLqGD#RgMojDaYolG`t(f#z)KOzSCMbaqyb{?8dnl z&%XKnv1ujpxYqQD?;D@ov4p-dh7VkigO`XqXICCGSO=$J#*RB%%QKl4M$}zRYi;ML z$|s=g5^%WtopIrwt_}CFok-h>8mV8FnRNmv>~vqht8O)wzPhWwg|&{^ZLi``JY~?H z+i%Uvv_A7>-Lgd3Z(CB^Q-FTG8jRPJV7Vp1;JaH@BfuabHNaO@DfSq_OY5j{n`}tMB!v_Ye7RHaqv; z7-P--)%W_F2mY%HFUxG^I>z2FhW8mVW%X3$b9Oif70%(4%&tAJ5Aco7!5mo; z!Ut~kdO#*Assv;g7op9{fNcI^mcUxePkK4W7|Vta9q|8|yK3B*AA5hPTuSklkM(B; zEC>@JGiGj??5&Ka_^m9^r2imQWviC{y!6f{J*W|b9nTLlPUcMYeHT`on|5=^`%Z4P zA+MVEs&Cb|@?!mdXPw6w4e}ZrHHS5JTE_*vg0)k^5q#s}t+T=sQeLUnkEk zwP}tN`AWt!e;|fKD%cdMix%h@xNS z#7%qoTS`=YJ??4%zW`92{>JYQ-d^8pgEveBBWw85|KHYseO~qQw)%gbSARd-Cyjg> zJG!t@o!fgG-NeRFX*lw9EkMUciT8OcxlFo7eU&8pP1=ZYYJ8M>eyZU&p*!s``c4QB z@*dwK(qCOS;ICS+5y@_nv1t732HZc9pMh zpB&dzJ+suP7~6`zF^-JO2$5%@F@AV~V;iS^U?dc_^snHzPFT1`kLzaA#?-_u5LO9k z|3M|EF}ZMV!!yj})pX~ybhXSCVCw<~DqMj-IJ7Q$`sQXE7$=K*4p?J0ZACpcIHsx? zJMU(of9|;)AKot7d8dcF75XYZT{R2$%Y)W!#$&}@BP&>0A-D%cDkl7@WgyaH^)vj` zwi}0w>(?mbX5~4|mEw6+VaypH-~5uK3-oSb*>(NKa=A#3XA=wyo3gQWVk%Vm`@}@- z^;$oaj`Wy^INh=|+Sv9`9b^9F$ou&0LNV`pe9wYa-u38enkA1e_D|Mfj7*!yF(?N9 zBv-eNW8?{p_h^Rk#)`@HjK)(MV5``1%KPyxz=|2@0l2W?B&X6BFDm(|{l-?sHO&_W zfi=NgJ8wKY$3?#xo9DRd$QL7gl?9F3v|pIqxHhFhpEGjbsc6#~6NAI6zds>m(`8Lv zKUZ~9M&M7XaiMQrqjAT&#!F={Ha}|)SGakq9t4@^F5had?K1Az!#PZs!l^Np$J~pj zM#*FDC}aQBdm5OBO+jj)evE1LCVJTluCv|fJ*_X?(!yyi8~n&pHw+ErQ#08U^jh|W z59`Z2J~4ye*MBs<6F&WBbi(ml#*9}6o{?<6WBnpjw^s%vc6~mVa6lrhE(m3po|l*a zBr!!+y?~rIAc4W#bc+{Ev7vF_%m;#&Gd=L$^IqCfet2dO)p%hg@H!06*fBoZs5NU` zi%WcQLmB(%=KVHe)#$Ew}r8v>l( zDB5YG>r>slk~%SlmZbb%#gcS@Il$e3*=wwOs*TI^nf%sOdzU$TeI^LxhWfN|^(kks zOHwR;4~R3P9WpcjWgi(~)Q~8>JvsHiCN+MV6H&5KR=xh_$EomHu+2sKOVySTN>)`{ z@=CSXK+vzLw!|MLua#6=xOTdON+rZ+*+d({=;JxZ*;-7GQI%!{OtjF0EdDcMzyvDO2$ zbvy~-lhCBZXg-)%C8m}SW|_o<`e5eVgt@YwIoI}~IV&-~e2$e!RFDtRR}xdh2lJ7{ z_zF}ZF@Zib>m{b959URQ3HHG(zKQ0k^(8E$FVSR4Z20l+q2IkCd8+) z%@R}32eVdUd^xXteQOC=`}SjrB=Q{&Lt=dOF(7Ld$)#%%$5> z@D^ItcfJY{J!&kHr;Te1+R*Dpn`b)WLfEKhVruVai|2sTgAEXl)b;(wbI&vf$w$vb zf#lRPu4YrY8O4RQP1Uz5)(NRo354Ib;@5*JuIS%BA}pv4=xiWE{BzalE1oLZ!Be%$ zmi&?_O#nw89DA75uXFE$6(DT||z_IS^&eZeVhuk2$WT8Fea7+Z2z(HldaEu$}u zqtDJpES0|~rT)B4;EZFA3VwQbG}=64^P+C*`Ar5b?uKZu`{IOpW)NLd2GKEry7w*r z?8R;917q{z+x=I*#T>pf>MVJ{ze2_qXN`xJq~nIb&dx226HEFwS;-5bRG+<#g8Q<% z9qW^mHz_V$W8g>$Zv^gI+9}!}VH?IIus&;682}=B8P{5Bp|_<#mp^$tfz&T28C$-I zK{t+n!#BaFE}x2y1+HieOxqQVxo<_oSTibZ4Sr6FBLtdWHdz%^4hkxyR^_`RSqH&`q8++k2QPJEQD>*D<6j3{W2;os z{$0N7`Ai#~GvZ!y)!M<^1h!XQ!Fv&1tuS04)QPE>DY0H0=U|0_(7md6hEd~16qVO0 z;p+(&1CV0s9x``m={SYhYb8rdc~80(*Bf?P7`!ZA!W?y0G`7cM$LafD+4qX0$YU~t z?PGIWUzI|jO>X6qDJDX%-?^vwt_B#yjDp2{t@JX*w?v7t|1W#fp|Us3;(yp5Ke=c=~RzRGv51Whaju7yf2??)O;n1@hxBJuHr_0;VUz|#r*bkuHnC0R%@}k ze~4Ml1(z7BUYur3TkYbCW4G5ewybX6;G)$BsNoDJg90&xvFeFw#?{pi(p+QMno{-r zG~>*gsf-)*s-U^${;%Oa-dv;U+H7un#@ZH4v0?3)+LA+z>a@Wqt>%)~wG5VM*a5T$ z0Y+2FD(mszZEdjr3TfoEMBUXIrTL;U7BVbTo)Pa)i|UDM&DYufw#gA7XE)} z`~N>?GR|cFlbO7S#pHhJA1Nba0!C46bc;$G$FrZ$tA)?KD!$2Zow5@O@pz%{3O4 zM>I9*?M|gfFv)LW;1ahq5jhs4m~hWD<3M>se0$^9@(!GFZ)l9n-5VnDIetSsZzl?I zu}jYT5*K>ylHcf%p3d04p_$o<{?hAJ&I*~kVOFpMY{)STvArmPfzANaE4m=Gm4eeT zeW)?`jkJup+^Ew}-WHQ-m3<22p3eo+!1xlm%)$K3|F~RE>KLhxmByEEB$P-$B{lCv z5Bl?UaB0;NkF@l5ewE&i4c_bNy#9 zacD-5josnmj5!+{-$)7xyfYD^V2l~Rji62K za4WLMre_A54pS;avT~|&e9Sb*o&`sTQ%bbo$m-o0cU?T2uq?m{I{b*Pgo@mE`hsS^!AF{ zmixrqGiM4a^xYi6^+s+k*XGW^u%T~e8LG6Yh~}F8Dt;-swSEIxX{hK7;Oj6-3v~^T zK7Y{#r{*n8n@Lgm1U&$5(PI`PSG{R@tp~(SFejuD`Fm7j>pMNY(yKnwH{2qnPuWt9 z^nYxT(nq}eeQh}sfA4{NLUl8@Hse08-@3i6r7fTK(6JbYPH^zH3B@t+WNaP|ryau! z9lp4&91QMxuPHMqeeWw|2EX5gGmpQ&?Z&06?{;hHO77!bwy=m>3kY8~a&eHxw@^(# z<6U&w$;joFPZTN-$yM_-^n!7IdsLmO75+!7^q>!V^7^;@gZjL>z4bv1O*amG5E|f3n^3E3Y?)pTr zv8S=LVZkx&P06f-PxgMHDk@wk5@f%*=?3Uw~o*3-c7*ZPqTTs ztN3(i%tc<7lEeGuUZXU34d#;~D{q1yuu>74-*k8cNP!^rEbH=jIJaoa>_gQzI4w0Ypbm;PV#7(9%^7B|W zozD9j7_WZLk>=KY*QN1Ji1aVygxLN?SKkRC*Bp$Pxt5wbq>(W&Vl%B^B1nBYK~ibw zx0n!8ZmHtyDmNq5$`;te)C5!61O{U6Ufrv9KdE+p;|I0dZ&JH8_l>K2rP@31W3^Y; z(I59!nJ4H9+L`cWl6Riq`y-X}q~c3CPrm+gy?6P+JmHRFmMs2?XGwX*S8eFtb8M6H znhMTRnc~LjA>G_{)3^P->D#=f-|g!!>7o&F;DKhAu}Jre*?e;=()$|E9jMn(3S_;< z`jv$XjK%9*wTm{%*nOZGl^VYtxGUlc7bt-ZB(GR?JIkk+K(pGP#;}8}O0ID^2m1U% zH%Pvk+R8L8!aE_>5)VE`itQ2<0p^=8GibwxTl-mRh495?)%scxzPqbkGFx>r_A00O zo6QyhtlIqk5Mp*M#G-^V!ys)pq7H>O+QIGfy2jsKkQwby<`Ei*@3Y@=s9(xtc{n9M zafYM$WN~<5F?^QDUZVZM^|)_(N9_sYt3$E0{prKaX?l6=;f_Sp%7-1%)RfZWTM=}$ zCHz#tUQVIM%Zbl#@a|Zf#cc)ND;3L(v>A+u!7Xv))nj+klZJZy{+3I=K|MatQ_MTh z_;CRf6M&ZSMr$wUmz*!KLJMBDkzSJp^2W&-4$T zXEtfpGe(?o_TIz%@GhgeOGEo*TjnJod0J~nkQc;t#1pS?h!xvOk%mAqEk|7UMYM=j{RvRbJPo%@f{TKGpYli#hhw=I9&l6Ev zaIvA$`Inl=_x|N>GhZNI+` z&U#ds@vqmkknRCL4LvVeANnjdN2o_dp&ufhxS6hL_#j8UDBU6gpbI`dT8S zT5yDtX{rb#x`U332Z^%ludH6P;uulZEerS9C|r!in}CK@hf2ZN=oU)MQK=7F!3%?2 z^4g9VWTTwxIq->eS7l-IVPSSL-1HnyVpnb6&Jj*KHLPd;EC#;3ElVVoU0W*#*lDDx zbg|n`@ePl$zT_m(x0^}6@Q>FPyF~*B-3DofIiQwpVu^#=(-pDbLA@L9Fe&kc4-TVn zS_~zdUp^Nd{K!MwMUfx1LZ#>Y==P?co|a97>#9q^3WMt@pZH>M(ZXNfF6#PIQ|)Rg zMxD=iNIpHjj3HGjIV&5h)hwbSh>>U|)eZERq%uAipE2bf-k^b?Y-hDmmwGup4BRt@T?epe_at4$?$h?i?(U@EB| z4x}C!&253yRNZk(97QG6#n12D6IH2H2Y)S#F9WXp4jtyT&H?>D5=3pntgEBA8C3ZL zF8jsiAWERG#g9SMHfV!ch0WrMhz+L50ISL_F)4uRitJ#jM_a{n!4w{XxWl~mi3^W< z1>?H=Z|C~jC2=;G2CF}niS8i?CeD?K;UUyr-TR$b7eZ0$H)Uc^2>n5mH+~XIf&L9v zo#jeDnaXkoV<|B)XT`aCv>@~==81J`lO)?NjQaFKx6>CG*;3#9Ge5VI{^u{8c+;jG zVLmRt2E^_~-@&!?SbgD-{9KM3CFeM?R@IJdd?cJE5xpcXH=r0iq8rjsJW3lK{CF^VHVsI zL5qAm4_KKFU$U#&h;mwA_gPg6xeS!uyFD#MCP3^Ro`G@_!R;6 zLfUF^tPwqO%Vx(#(y&_={uD{|2goi4+k+hZV)42cv_|TGjuLl8(ZBrF&YBo&?(H&jSlV$TCtRN;+Pf%Iy?jX|#86_rHNP`Q%T%ozpG+40 zU2xVrMSKjo#V!~5-9YiFNukdDLvrz7{)gluuEkJ0RBP85KdJSJ*wUDyX~)JRjVV{{ zCf``IqqFNL;OKm^{0lg^uJ^>GQqvRK^}WDMugs=9QgETku5Y+3;+s=bvAP+xZGPyo zkKDK9c|}ljYJ+LlwmJ3jKlZ07<)r4+qOp$v+}!mnzdPsVF8*OQ_j7ZK=s3%)YN^`h z#9@?o+Ubiffh}g)c}e5F3C+t8z8?*`^P+dGTp}jL(u1@^d>2b?8g9RWN*sUlPhu$J zFzXPc@z=7pi})7s+E`FpP+aTzOs2hOwd>HG`i3ePoBlq$m5CCcwx9v@gotX1RqXV} zQ7!39id<8MeTH`4VgQ#S7p@8uD;{V~0|LI_jJ~f-yxE%i({AC{hFpjWV%ty@#s(~2}xg2n&tUR=abK7wJ zhcZzZk6jgn-jYc5#MXG~r)B@1~NC>_9A}u@~3IU=-{}B`?qS7!PL%UML5XsG38ZF-KMRB|yC`tf;TXq42-j2d+hS@YJ zM+=+CZHK_4gH23tN6q@OJp7OO#{e1wngE&tngN;vVgcw9e&W&O+7i!JfYt!qj!@zN zZ2|G(&vq2ua1WYd0ruk=isxxOZFr*Tr1mr@Bgn2P{gCefJa-d6Z>2>0&4d=qk2$u(+xoLpnK5~&~n!s^1)(t2l9j{$-whJ9te-9--+BEQ~fomUjmNxKYB!V zVOHV8ZHtO?+ZGk(v>h>qlOx7(=NWH(d z2Wp5l9jSZCtQwjW_5nP3e#`}3Ej+#XXOL(6%wTaxjVQ>q*s)p}(gFE-MMYT;=2dBy zhouk5`xoVm$;~rG@`}(6Wf=e{$X`yY?h1D`(tk`5RNuFzNbN!~9UrZ!Dg1M&eeq;- zW+{Sw@~x5f0D1zvoO>bN8_-A2-4I#E!^Ci#_@WE-4@|^eYMzWQV97Sw4tU?|TZ=UCE8>#PhP=liMN8a1w0Hphms*1avaXvJ6AU%+KSXUgM*CDN1`Z*ql~_K+L{XjLV=VHC6)4xwph~85AA7A6a&=-I$5^p({n# zw1=1!4MId%H;RjCjXdk>#(7m(%ri<+?h6sQ-N;k>Y0$BsuIVss`RNd`rW>_XcZP`l z-6&BF3Kc;a)H`B8sM+Ls(6S{A7&D@1Oo6mSu?r&lDN{hvSRCy^&gh9*MI$hSxutc$ zvbW)R!WI*t#I_J`_Mj%Vv!R-p*V7#IU~#Pnwrb%bq9?iW=-(3#aK3n=C$`KxML8ZF zFKOmLvCkO_@XqKgq_Y7zfE#CYYAtI?%*ID?VOCCFyPCkAs3*4fqX+I+>T3!c;&1?S8Kq=rM!2Mxj`9K;*`-T6VFxuNhdpw#x+DMcBYBtoz^MpNaK~{d=Sfstn!nlnu z+({n=1T)TSS%n)X-Vd8Ec|S^1-UYl3cpdN}U=d&e;3>dNKpCJE@DQK~FdT3{;7&k4 zKvzH)Kzo1(kN{`{hyg?a8UR88fdD^%9dI=gy^hpMlwXlJ5BLFa0&ocM8Q^2Udw@-V za=@#ARe%=&O92Z3PXlHHrUM=aJParXmHlpfjL3Km%NKLhFFn01E+60`3O5 z0Sy4>Q12k%{b*=zBND3s^8kf_EI=PXCqNv48_@s+IEOL+cw>)js_Q3)4yTWsrY2}I z*l2_&N3IT7Ce{Rn7YnaXDCUK?KRqX&8$tCujrS>;fV6LZBJ$p)CudAyo{Z^+M-Dl-_5F#G1~#6sv3BQIs4x7DP@I%*B)EEE9RVJV`t^iu!cijUrwq&sZdX;K_3P zC7JR6P^51~(^@niP0h1>xlRW8*sOvPIivD&oms`s=FM9>XMq)qI@@B|&Z#KNk>-E= zWKXfd$`6EB?l-0&Zz^zJNvCaGJDTpMTB-*l4LmOfJdoFOWbgc?tS)w6$#^5qn_5;U~ z#*5wKscQ=_SEZ8~;WWdOJ!>4Ee!kU3`w5id8Vz(T(0u^>^yaz$EY#?Y#sr#Zs}-1T z>V1Ea_7D2Nzix^r*^`iz;!aLWOG@>)6BELnTaiU@x#cZ4~jWUSZF~dgU$UX`d^IxV~wLE(% zb4b4=o~rJ##f1qeVp1uNJ9fQH9h=La;E#*T88doxUQY3dF$G0&aTD@#GIR6Bjn9jV z8+QXeXYVLD&}aqm}TVNwuhh zIQLJ=P&?i&Ce5N0@z^rbYUiaTCJjp(mX+sD8s^SQ%II{xFjTyST54w>OzmuUa(t2} zInm=z%F9hlPR-~dN@r1Lk@F;UP%?|Uh_{iVbQ4=^7Sb5AS(G6PWW)Ok5Uq)bLc)X_$h?FJ*QZ?gHPe~sMjNA(aQoDOU`c z3of^b<8vubb7!UIxQC@Arz9n1Cue8$Wo$9^6NBc_9bx@z6(UN@%+7moL_y~Gf{6&@ z28fDz^q6}4MDfl%$`p&9rf~l|N-(}@ZqemwYAJFJoZ2>enu5Yp64N~HWRE8y(H%c5 zB_%s!;3HM(`p}(Xok1N!?y4!^X8g)<~@QCNuQj`c>OW|rJ#+EbP)>5Q8G}X*Z zUW=D8Sz_5*O4YJQ_*!aGiny`?qtxse)s2Ux!MfbJscG?fX}Q^1!;;*ISt%KDqeoB3 zk8`Ibrlq>wo|O2cl=%3x25@#3@eD3o3H3{9py5%>(=01Xqp7vn_uLGjRH%A(=o zz+y_H5h82}j_*c_rzR#Qx)Tz|iFNZS zF6`!l!s}BzMD$un8Wo8l3uzYiB&Qcb%xZXz7agCaJF6?1Ao?sIkN?DR(0FpHX!RB) ziaGNsRE$_uy;u*4$qVpZ+K0vZ1=#33B91S>d$@myfzMDpJt`I~qQ~elQD-p@yB`KcD9}6kn^jX@M)_RcN&L2qBC9E%YL<5sqo1St)s#=eaLii{D_-{;HMKqA zlM55J<&bi^FRIS4?4)GOCQn*Y;;>=yX^9y#NX%W1dG|PI)tNHWUVYL+{>I2zW+pu) zF%Q!)D>p6Cla-y4o91JN`-2t1DS9-gt$Y(h70# z6-=(@MbK(WR$m|yH=73HoI>eQGfB~dMw{_)>9LDOKezA_t@Ts#|6p2`UweGkK$8O z<;oPFiV!Hty_pR0a5+s1OG`}kBqgP!q$R)^Cd8+>(~>Hn2XBL1;~ z9tiWe!6!Mz<4H|POYvYHCMLWqe%wIg@wzYP4a%`?!@`bf9VQOH0q6dnsQD%w)B8ey zle*frQ(x12FM1Q)KM=N!lxF)7YmjRldBpgQIGFlKtk{T42Rp>Ijr11%OT4uS_eee# zP2Qq=@ouy9ExHG1R|h!vsqnmw3cE!1+w_QSx0iMM$rLEAybU+FN3_{YLu{X6p_#dv z2GxV7PfXz@Dj^LjaKjK1K8M!u_lgokYz0DvFGPzK98Ac+ z)s!ih`UBEr#n3GvKM1G1ZVQHS{uXLLhs0}Js1qF)KW?E1=!m%OU21PTiV#kcyz(xE z(=qY>yI4ez3+MY3Dbly%%;*~|bBJ~uipg6klD-wow^BzsA&zXN6x&J2g|Z0Y-iDu! zKE*K>=L)w`tnD;MSzK@9Hfm`*gOQVE*S6t(@9}NaS`2s(_WeEcixSh`qiEX?h;l*G zNNj(PqHJfqIeH)J`;jH;Qt}h|nSWsF90lZ#Hk0Sc&VPOC0{P{R=ETqBmm`h%7xK5v z`6319jwl*CrYJ8nXZZMnQNL2H5e0aUP>?k`Gd~Y(Mm$*X8wJZ}UamPs{!M{JIm3~A zctqal+)L!h%y_8gh~nSLUX)!p>JRbV`#AsnQ#iKcjre8JbUQVVzCw;H96}af<#FKy z%gnrj2_p)}6l6Y_SA31csO{9Cq*T?c!m)*8ax(KC8c{q+_0s#aI9YY%j?d43c#2v} z(&uM#uQGFs#}pQosdlb6RrLd7v@uQfD=ID=omcRLidl|i&hWy5@uR1!{zw<(gyVfyH3O{8A7QOsWMv#X;42nC^A(Jz zD<_wTt^44WN_U`@rDF9CykuV{e%e8WIPl2&7oxP~V%5KJGh&5Rzstv{^t`y^WBdWI z7et>=sEt^<6EBIL`UH_m+9xPn$=IRrz+-p9n9qFz%X^8_ZNxPu1R_{GuoHwYGd4?% z*@VYif5f zb~pGg+JzA9#4gOCwQ8J+irS6oxK0%8hL0Sy8#Co~PJ3+Y)%GUAJG@V0*u4jV^CnUMGwKC@p7j~^#9uR$8n5HYNlA4l z#(T08b8`~nvDR(2wAcD`3`K>NnScyjxbq8YS34~}0r7cGG8RF%J1HkCV+-Tki_k9+ z%)ZO%KKOfS;=+7tBIbP|FXBx)05|c?7wFb|;*T$|KYU-L?4>;1kyyGHap(tP=U#Z3 z4@J#=lnJ*jhk3z1=yV6C?-K9sgAM3kB0{VCB~k(@`a~MWPhV0kvF%HYSnIEly7nao zXw+8_WS1;n1tk7-8wanRI$55i+ypl^Q7P{1l*ELLJ+Q`I`yplQet03;PqAY3ejM?C zuIeWKwf#`=7h>mr*w$WA=W7~H`^2MP;|AN8;`Og-5q%|YJAmANfet3(9@&Ni_@SNy zmd=_Sgw75M&p{doU%cudG;vrQIf#Jhh}ut#JOs0FA42V;V)!BW>0{#MLo@=uxYl88 zw7(G#9L5Uxt(q-{9>zPEPDjwO*6(7+QTGV<_%L>N*nmXaPFA7#3@AD!E*wF4b6N~O zN?quTc=jlczrPco9z{347h%Wf0oxC153&0w_|7~A!Ox0!j!`$;k7|aAY;c_7Z9hRf zk|gUmmd0~p_Hi6coEKjlhsYO10M-fmS#4we}nDyMRDRAbl_Lf?_26*`%UdD z27F5~;`MK-mF?eZM>9t!px{d|W0chs$tMsY{mvD_MbQarX8QxvN|vlY0hRnIE}VdE zUsl^OvaaZQ68pI;Dj$?I7PC*1hQH1y&QBw!c=sg6`I>5O@avz#T3BlHJwQmyPIIRw zr>5qlrQ{(diO-lMK0Apu>ittxKWMTIekgzZ=;9IXDdN;AayBT#pEHzeEDlxj^Ro(a z;kU=a(@z!Ar>X9!X|_gH{y5?dR8OEbR-&BZ8}QR@Ve$_r-hiHAtCwjmZ8sFmv^6pR MsN%-*(=eX@2ef*0v;Y7A From 5890423eee92efec64e6195ca69144702aa90b8a Mon Sep 17 00:00:00 2001 From: John Sharratt's Shared Account Date: Tue, 23 Aug 2022 14:58:24 +1000 Subject: [PATCH 4/4] Added WebC to Deploy --- Cargo.lock | 167 ++++++++++++++++++++++------------------- lib/vfs/src/host_fs.rs | 46 +++++++++++- 2 files changed, 135 insertions(+), 78 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4844248c2c5..9003a06b829 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -37,6 +37,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "android_system_properties" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7ed72e1635e121ca3e79420540282af22da58be50de153d36f81ddc6b83aa9e" +dependencies = [ + "libc", +] + [[package]] name = "ansi_term" version = "0.12.1" @@ -48,9 +57,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.60" +version = "1.0.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c794e162a5eff65c72ef524dfe393eb923c354e350bb78b9c7383df13f3bc142" +checksum = "1485d4d2cc45e7b201ee3767015c96faa5904387c9d87c6efdd0fb511f12d305" [[package]] name = "arbitrary" @@ -81,7 +90,7 @@ checksum = "c98233c6673d8601ab23e77eb38f999c51100d46c5703b17288c57fddf3a1ffe" dependencies = [ "bstr", "doc-comment", - "predicates 2.1.1", + "predicates", "predicates-core", "predicates-tree", "wait-timeout", @@ -215,9 +224,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.10.0" +version = "3.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37ccbd214614c6783386c1af30caf03192f17891059cecc394b4fb119e363de3" +checksum = "c1ad822118d20d2c234f427000d5acc36eabe1e29a348c89b63dd60b13f28e5d" [[package]] name = "bytecheck" @@ -270,7 +279,7 @@ version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6358dedf60f4d9b8db43ad187391afe959746101346fe51bb978126bec61dfb" dependencies = [ - "clap 3.2.16", + "clap 3.2.17", "heck", "indexmap", "log", @@ -312,10 +321,11 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.20" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6127248204b9aba09a362f6c930ef6a78f2c1b2215f8a7b398c06e1083f17af0" +checksum = "bfd4d1b31faaa3a89d7934dbded3111da0d2ef28e3ebccdb4f0179f5929d1ef1" dependencies = [ + "iana-time-zone", "js-sys", "num-integer", "num-traits", @@ -351,9 +361,9 @@ dependencies = [ [[package]] name = "clap" -version = "3.2.16" +version = "3.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3dbbb6653e7c55cc8595ad3e1f7be8f32aba4eb7ff7f0fd1163d4f3d137c0a9" +checksum = "29e724a68d9319343bb3328c9cc2dfde263f4b3142ee1059a9980580171c954b" dependencies = [ "atty", "bitflags", @@ -368,9 +378,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "3.2.15" +version = "3.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ba52acd3b0a5c33aeada5cdaa3267cdc7c594a98731d4268cdc1532f4264cb4" +checksum = "13547f7012c01ab4a0e8f8967730ada8f9fdf419e8b6c792788f39cf4e46eefa" dependencies = [ "heck", "proc-macro-error", @@ -480,6 +490,12 @@ version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147be55d677052dabc6b22252d5dd0fd4c29c8c27aa4f2fbef0f94aa003b406f" +[[package]] +name = "core-foundation-sys" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" + [[package]] name = "corosensei" version = "0.1.3" @@ -495,9 +511,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.2" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b" +checksum = "dc948ebb96241bb40ab73effeb80d9f93afaad49359d159a5e61be51619fe813" dependencies = [ "libc", ] @@ -770,12 +786,6 @@ version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" -[[package]] -name = "difference" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198" - [[package]] name = "difflib" version = "0.4.0" @@ -886,9 +896,9 @@ dependencies = [ [[package]] name = "either" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f107b87b6afc2a64fd13cac55fe06d6c8859f12d4b14cbcdd2c67d0976781be" +checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" [[package]] name = "enum-iterator" @@ -1002,9 +1012,9 @@ dependencies = [ [[package]] name = "float-cmp" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4" +checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" dependencies = [ "num-traits", ] @@ -1177,6 +1187,19 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" +[[package]] +name = "iana-time-zone" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad2bfd338099682614d3ee3fe0cd72e0b6a41ca6a87f6a74a3bd593c91650501" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "js-sys", + "wasm-bindgen", + "winapi", +] + [[package]] name = "ident_case" version = "1.0.1" @@ -1222,15 +1245,15 @@ dependencies = [ [[package]] name = "inline-c" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b370741c5913d9b3765d280493b9b97658818410fd64cbf6e8d333b42a1049e" +checksum = "340dd3d6102fa919bd20987024a6d84954c36ec691ac1efea37742ee983c8dd5" dependencies = [ "assert_cmd", "cc", "inline-c-macro", "lazy_static", - "predicates 1.0.8", + "predicates", "regex", "rustc_version 0.3.3", "target-lexicon 0.11.2", @@ -1317,9 +1340,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.127" +version = "0.2.132" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505e71a4706fa491e9b1b55f51b95d4037d0821ee40131190475f692b35b009b" +checksum = "8371e4e5341c3a96db127eb2465ac681ced4c433e01dd0e938adbef26ba93ba5" [[package]] name = "libfuzzer-sys" @@ -1409,9 +1432,9 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" [[package]] name = "memmap2" -version = "0.5.5" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a79b39c93a7a5a27eeaf9a23b5ff43f1b9e0ad6b1cdd441140ae53c35613fc7" +checksum = "95af15f345b17af2efc8ead6080fb8bc376f8cec1b35277b935637595fe77498" dependencies = [ "libc", ] @@ -1565,9 +1588,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.13.0" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1" +checksum = "074864da206b4973b84eb91683020dbefd6a8c3f0f38e054d93954e891935e4e" [[package]] name = "oorandom" @@ -1592,9 +1615,9 @@ dependencies = [ [[package]] name = "os_str_bytes" -version = "6.2.0" +version = "6.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "648001efe5d5c0102d8cea768e348da85d90af8ba91f0bea908f157951493cd4" +checksum = "9ff7415e9ae3fff1225851df9e0d9e4e5479f947619774677a63572e55e80eff" [[package]] name = "output_vt100" @@ -1644,9 +1667,9 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" [[package]] name = "pest" -version = "2.2.1" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69486e2b8c2d2aeb9762db7b4e00b0331156393555cff467f4163ff06821eef8" +checksum = "4b0560d531d1febc25a3c9398a62a71256c0178f2e3443baedd9ad4bb8c9deb4" dependencies = [ "thiserror", "ucd-trie", @@ -1666,9 +1689,9 @@ checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" [[package]] name = "plotters" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9428003b84df1496fb9d6eeee9c5f8145cb41ca375eb0dad204328888832811f" +checksum = "716b4eeb6c4a1d3ecc956f75b43ec2e8e8ba80026413e70a3f41fd3313d3492b" dependencies = [ "num-traits", "plotters-backend", @@ -1685,9 +1708,9 @@ checksum = "193228616381fecdc1224c62e96946dfbc73ff4384fba576e052ff8c1bea8142" [[package]] name = "plotters-svg" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0918736323d1baff32ee0eade54984f6f201ad7e97d5cfb5d6ab4a358529615" +checksum = "f9a81d2759aae1dae668f783c308bc5c8ebd191ff4184aaa1b37f65a6ae5a56f" dependencies = [ "plotters-backend", ] @@ -1698,19 +1721,6 @@ version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" -[[package]] -name = "predicates" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49cfaf7fdaa3bfacc6fa3e7054e65148878354a5cfddcf661df4c851f8021df" -dependencies = [ - "difference", - "float-cmp", - "normalize-line-endings", - "predicates-core", - "regex", -] - [[package]] name = "predicates" version = "2.1.1" @@ -1718,8 +1728,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a5aab5be6e4732b473071984b3164dbbfb7a3674d30ea5ff44410b6bcd960c3c" dependencies = [ "difflib", + "float-cmp", "itertools", + "normalize-line-endings", "predicates-core", + "regex", ] [[package]] @@ -2205,9 +2218,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.142" +version = "1.0.144" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e590c437916fb6b221e1d00df6e3294f3fccd70ca7e92541c475d6ed6ef5fee2" +checksum = "0f747710de3dcd43b88c9168773254e809d8ddbdf9653b84e2554ab219f17860" dependencies = [ "serde_derive", ] @@ -2233,9 +2246,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.142" +version = "1.0.144" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34b5b8d809babe02f538c2cfec6f2c1ed10804c0e5a6a041a049a4f5588ccc2e" +checksum = "94ed3a816fb1d101812f83e789f888322c34e291f894f19590dc310963e87a00" dependencies = [ "proc-macro2", "quote", @@ -2244,9 +2257,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.83" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38dd04e3c8279e75b31ef29dbdceebfe5ad89f4d0937213c53f7d49d01b3d5a7" +checksum = "e55a28e3aaef9d5ce0506d0a14dbba8054ddc7e499ef522dd8b26859ec9d4a44" dependencies = [ "itoa 1.0.3", "ryu", @@ -2977,9 +2990,9 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.15.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8905fd25fdadeb0e7e8bf43a9f46f9f972d6291ad0c7a32573b88dd13a6cfa6b" +checksum = "d443c5a7daae71697d97ec12ad70b4fe8766d3a0f4db16158ac8b781365892f7" dependencies = [ "leb128", ] @@ -3088,7 +3101,7 @@ dependencies = [ "atty", "bytesize", "cfg-if 1.0.0", - "clap 3.2.16", + "clap 3.2.17", "colored 2.0.0", "dirs", "distance", @@ -3149,7 +3162,7 @@ dependencies = [ "atty", "bytesize", "cfg-if 1.0.0", - "clap 3.2.16", + "clap 3.2.17", "colored 2.0.0", "distance", "fern", @@ -3476,21 +3489,21 @@ checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" [[package]] name = "wasmparser" -version = "0.88.0" +version = "0.89.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb8cf7dd82407fe68161bedcd57fde15596f32ebf6e9b3bdbf3ae1da20e38e5e" +checksum = "ab5d3e08b13876f96dd55608d03cd4883a0545884932d5adf11925876c96daef" dependencies = [ "indexmap", ] [[package]] name = "wasmprinter" -version = "0.2.38" +version = "0.2.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04f2786f19a25211ddfa331e28b7579a6d6880f5f4b18d21253cd90274aa4c21" +checksum = "aa9e5ee2f56cc8a5da489558114e8c118e5a8416d96aefe63dcf1b5b05b858c6" dependencies = [ "anyhow", - "wasmparser 0.88.0", + "wasmparser 0.89.1", ] [[package]] @@ -3513,23 +3526,23 @@ dependencies = [ [[package]] name = "wast" -version = "45.0.0" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "186c474c4f9bb92756b566d592a16591b4526b1a4841171caa3f31d7fe330d96" +checksum = "ea0ab19660e3ea6891bba69167b9be40fad00fb1fe3dd39c5eebcee15607131b" dependencies = [ "leb128", "memchr", "unicode-width", - "wasm-encoder 0.15.0", + "wasm-encoder 0.16.0", ] [[package]] name = "wat" -version = "1.0.47" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2d4bc4724b4f02a482c8cab053dac5ef26410f264c06ce914958f9a42813556" +checksum = "8f775282def4d5bffd94d60d6ecd57bfe6faa46171cdbf8d32bd5458842b1e3e" dependencies = [ - "wast 45.0.0", + "wast 46.0.0", ] [[package]] @@ -3759,9 +3772,9 @@ checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" [[package]] name = "x11-dl" -version = "2.19.1" +version = "2.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea26926b4ce81a6f5d9d0f3a0bc401e5a37c6ae14a1bfaa8ff6099ca80038c59" +checksum = "0c83627bc137605acc00bb399c7b908ef460b621fc37c953db2b09f88c449ea6" dependencies = [ "lazy_static", "libc", diff --git a/lib/vfs/src/host_fs.rs b/lib/vfs/src/host_fs.rs index 0cc9ddec068..fe980fb1189 100644 --- a/lib/vfs/src/host_fs.rs +++ b/lib/vfs/src/host_fs.rs @@ -421,11 +421,18 @@ impl VirtualFile for File { self.inner.sync_all().map_err(Into::into) } - fn bytes_available(&self) -> Result { + #[cfg(feature = "sys")] + fn bytes_available(&self) -> Result { host_file_bytes_available(self.inner.try_into_filedescriptor()?) } + + #[cfg(not(feature = "sys"))] + fn bytes_available(&self) -> Result { + Err(FsError::InvalidFd) + } } +#[allow(dead_code)] #[cfg(unix)] fn host_file_bytes_available(host_fd: FileDescriptor) -> Result { let mut bytes_found: libc::c_int = 0; @@ -441,6 +448,7 @@ fn host_file_bytes_available(host_fd: FileDescriptor) -> Result { } } +#[allow(dead_code)] #[cfg(not(unix))] fn host_file_bytes_available(_host_fd: FileDescriptor) -> Result { unimplemented!("host_file_bytes_available not yet implemented for non-Unix-like targets. This probably means the program tried to use wasi::poll_oneoff") @@ -533,13 +541,25 @@ impl VirtualFile for Stdout { Ok(()) } + #[cfg(feature = "sys")] fn bytes_available(&self) -> Result { host_file_bytes_available(io::stdout().try_into_filedescriptor()?) } + #[cfg(feature = "sys")] fn get_fd(&self) -> Option { io::stdout().try_into_filedescriptor().ok() } + + #[cfg(feature = "js")] + fn bytes_available(&self) -> Result { + Err(FsError::InvalidFd); + } + + #[cfg(feature = "js")] + fn get_fd(&self) -> Option { + None + } } /// A wrapper type around Stderr that implements `VirtualFile` and @@ -629,13 +649,25 @@ impl VirtualFile for Stderr { Ok(()) } + #[cfg(feature = "sys")] fn bytes_available(&self) -> Result { host_file_bytes_available(io::stderr().try_into_filedescriptor()?) } + #[cfg(feature = "sys")] fn get_fd(&self) -> Option { io::stderr().try_into_filedescriptor().ok() } + + #[cfg(feature = "js")] + fn bytes_available(&self) -> Result { + Err(FsError::InvalidFd); + } + + #[cfg(feature = "js")] + fn get_fd(&self) -> Option { + None + } } /// A wrapper type around Stdin that implements `VirtualFile` and @@ -724,11 +756,23 @@ impl VirtualFile for Stdin { Ok(()) } + #[cfg(feature = "sys")] fn bytes_available(&self) -> Result { host_file_bytes_available(io::stdin().try_into_filedescriptor()?) } + #[cfg(feature = "sys")] fn get_fd(&self) -> Option { io::stdin().try_into_filedescriptor().ok() } + + #[cfg(feature = "js")] + fn bytes_available(&self) -> Result { + Err(FsError::InvalidFd); + } + + #[cfg(feature = "js")] + fn get_fd(&self) -> Option { + None + } }