From 5bbaca7d55dcb108830ef2e3d5edc7ad5c8aface Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Fri, 11 Aug 2023 22:30:01 +0200 Subject: [PATCH 001/135] DX12 doesn't support `Features::POLYGON_MODE_POINT` (#4032) --- CHANGELOG.md | 4 ++++ wgpu-hal/src/dx12/adapter.rs | 1 - wgpu-hal/src/dx12/conv.rs | 10 +++++----- wgpu-hal/src/gles/conv.rs | 14 ++++++++++++-- wgpu-types/src/lib.rs | 1 - 5 files changed, 21 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8514eb4c52..f8a97d9954 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -77,6 +77,10 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) #### Vulkan - Fix enabling `wgpu::Features::PARTIALLY_BOUND_BINDING_ARRAY` not being actually enabled in vulkan backend. By @39ali in[#3772](https://github.com/gfx-rs/wgpu/pull/3772). +#### DX12 + +- DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032). + ## v0.17.0 (2023-07-20) This is the first release that featured `wgpu-info` as a binary crate for getting information about what devices wgpu sees in your system. It can dump the information in both human readable format and json. diff --git a/wgpu-hal/src/dx12/adapter.rs b/wgpu-hal/src/dx12/adapter.rs index 27e8e8e05f..eb94d4eb11 100644 --- a/wgpu-hal/src/dx12/adapter.rs +++ b/wgpu-hal/src/dx12/adapter.rs @@ -242,7 +242,6 @@ impl super::Adapter { | wgt::Features::ADDRESS_MODE_CLAMP_TO_BORDER | wgt::Features::ADDRESS_MODE_CLAMP_TO_ZERO | wgt::Features::POLYGON_MODE_LINE - | wgt::Features::POLYGON_MODE_POINT | wgt::Features::VERTEX_WRITABLE_STORAGE | wgt::Features::TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES | wgt::Features::TIMESTAMP_QUERY diff --git a/wgpu-hal/src/dx12/conv.rs b/wgpu-hal/src/dx12/conv.rs index 7b39e98ad2..8b44ae9c4b 100644 --- a/wgpu-hal/src/dx12/conv.rs +++ b/wgpu-hal/src/dx12/conv.rs @@ -213,12 +213,12 @@ pub fn map_topology( pub fn map_polygon_mode(mode: wgt::PolygonMode) -> d3d12_ty::D3D12_FILL_MODE { match mode { - wgt::PolygonMode::Point => { - log::error!("Point rasterization is not supported"); - d3d12_ty::D3D12_FILL_MODE_WIREFRAME - } - wgt::PolygonMode::Line => d3d12_ty::D3D12_FILL_MODE_WIREFRAME, wgt::PolygonMode::Fill => d3d12_ty::D3D12_FILL_MODE_SOLID, + wgt::PolygonMode::Line => d3d12_ty::D3D12_FILL_MODE_WIREFRAME, + wgt::PolygonMode::Point => panic!( + "{:?} is not enabled for this backend", + wgt::Features::POLYGON_MODE_POINT + ), } } diff --git a/wgpu-hal/src/gles/conv.rs b/wgpu-hal/src/gles/conv.rs index 86ff3b60b0..dd5d764c6a 100644 --- a/wgpu-hal/src/gles/conv.rs +++ b/wgpu-hal/src/gles/conv.rs @@ -279,8 +279,18 @@ pub fn map_primitive_topology(topology: wgt::PrimitiveTopology) -> u32 { } pub(super) fn map_primitive_state(state: &wgt::PrimitiveState) -> super::PrimitiveState { - //Note: state.polygon_mode is not supported, see `Features::POLYGON_MODE_LINE` and - //`Features::POLYGON_MODE_POINT` + match state.polygon_mode { + wgt::PolygonMode::Fill => {} + wgt::PolygonMode::Line => panic!( + "{:?} is not enabled for this backend", + wgt::Features::POLYGON_MODE_LINE + ), + wgt::PolygonMode::Point => panic!( + "{:?} is not enabled for this backend", + wgt::Features::POLYGON_MODE_POINT + ), + } + super::PrimitiveState { //Note: we are flipping the front face, so that // the Y-flip in the generated GLSL keeps the same visibility. diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index a3dc1906c6..8b493968d0 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -679,7 +679,6 @@ bitflags::bitflags! { /// This allows only drawing the vertices of polygons/triangles instead of filled /// /// Supported platforms: - /// - DX12 /// - Vulkan /// /// This is a native only feature. From 0d233b44c5f268e870dcbe757f8b6b821ea8b7f5 Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Fri, 11 Aug 2023 22:33:55 +0200 Subject: [PATCH 002/135] DX11 set some more feature flags (#4034) --- wgpu-hal/src/dx11/adapter.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wgpu-hal/src/dx11/adapter.rs b/wgpu-hal/src/dx11/adapter.rs index a28106a9bb..34ce34238d 100644 --- a/wgpu-hal/src/dx11/adapter.rs +++ b/wgpu-hal/src/dx11/adapter.rs @@ -94,7 +94,8 @@ impl super::Adapter { | wgt::Features::POLYGON_MODE_LINE | wgt::Features::CLEAR_TEXTURE | wgt::Features::TEXTURE_FORMAT_16BIT_NORM - | wgt::Features::ADDRESS_MODE_CLAMP_TO_ZERO; + | wgt::Features::ADDRESS_MODE_CLAMP_TO_ZERO + | wgt::Features::ADDRESS_MODE_CLAMP_TO_BORDER; let mut downlevel = wgt::DownlevelFlags::BASE_VERTEX | wgt::DownlevelFlags::READ_ONLY_DEPTH_STENCIL | wgt::DownlevelFlags::UNRESTRICTED_INDEX_BUFFER @@ -132,6 +133,8 @@ impl super::Adapter { features |= wgt::Features::TIMESTAMP_QUERY; features |= wgt::Features::PIPELINE_STATISTICS_QUERY; features |= wgt::Features::SHADER_PRIMITIVE_INDEX; + features |= wgt::Features::DEPTH32FLOAT_STENCIL8; + features |= wgt::Features::RG11B10UFLOAT_RENDERABLE; } if feature_level >= FL10_1 { From c7da76a4c6aa80602e2184977feebcde6d7392aa Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Fri, 11 Aug 2023 22:34:35 +0200 Subject: [PATCH 003/135] Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL` (#4031) --- CHANGELOG.md | 1 + wgpu-core/src/command/render.rs | 8 +++++++- wgpu-types/src/lib.rs | 4 ++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f8a97d9954..9ce67f6e8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -67,6 +67,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) ### Changes - Omit texture store bound checks since they are no-ops if out of bounds on all APIs. By @teoxoy in [#3975](https://github.com/gfx-rs/wgpu/pull/3975) +- Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL`. By @teoxoy in [#4031](https://github.com/gfx-rs/wgpu/pull/4031) ### Bug Fixes diff --git a/wgpu-core/src/command/render.rs b/wgpu-core/src/command/render.rs index 4066bb3a07..3a303cb5af 100644 --- a/wgpu-core/src/command/render.rs +++ b/wgpu-core/src/command/render.rs @@ -960,7 +960,13 @@ impl<'a, A: HalApi> RenderPassInfo<'a, A> { (is_depth_read_only, is_stencil_read_only) = at.depth_stencil_read_only(ds_aspects)?; - let usage = if is_depth_read_only && is_stencil_read_only { + let usage = if is_depth_read_only + && is_stencil_read_only + && device + .downlevel + .flags + .contains(wgt::DownlevelFlags::READ_ONLY_DEPTH_STENCIL) + { hal::TextureUses::DEPTH_STENCIL_READ | hal::TextureUses::RESOURCE } else { hal::TextureUses::DEPTH_STENCIL_WRITE diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 8b493968d0..310e10a6c2 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -1269,8 +1269,8 @@ bitflags::bitflags! { const INDIRECT_EXECUTION = 1 << 2; /// Supports non-zero `base_vertex` parameter to indexed draw calls. const BASE_VERTEX = 1 << 3; - /// Supports reading from a depth/stencil buffer while using as a read-only depth/stencil - /// attachment. + /// Supports reading from a depth/stencil texture while using it as a read-only + /// depth/stencil attachment. /// /// The WebGL2 and GLES backends do not support RODS. const READ_ONLY_DEPTH_STENCIL = 1 << 4; From 07f92c97b171afb81f0a283f2a98d63b1cf3f606 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Fri, 11 Aug 2023 18:14:25 -0700 Subject: [PATCH 004/135] [vk] Don't request portability enumeration without the extension. (#4038) --- CHANGELOG.md | 2 ++ wgpu-hal/src/vulkan/instance.rs | 19 +++++++++++++++---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9ce67f6e8d..ff9bf871bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -78,6 +78,8 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) #### Vulkan - Fix enabling `wgpu::Features::PARTIALLY_BOUND_BINDING_ARRAY` not being actually enabled in vulkan backend. By @39ali in[#3772](https://github.com/gfx-rs/wgpu/pull/3772). +- Don't pass `vk::InstanceCreateFlags::ENUMERATE_PORTABILITY_KHR` unless the `VK_KHR_portability_enumeration` extension is available. By @jimblandy in[#4038](https://github.com/gfx-rs/wgpu/pull/4038). + #### DX12 - DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032). diff --git a/wgpu-hal/src/vulkan/instance.rs b/wgpu-hal/src/vulkan/instance.rs index 931d4a2819..adaa4f1c11 100644 --- a/wgpu-hal/src/vulkan/instance.rs +++ b/wgpu-hal/src/vulkan/instance.rs @@ -589,6 +589,11 @@ impl crate::Instance for super::Instance { let extensions = Self::required_extensions(&entry, driver_api_version, desc.flags)?; + let portability_enumeration_extension = + CStr::from_bytes_with_nul(b"VK_KHR_portability_enumeration\0").unwrap(); + let has_portability_enumeration_extension = + extensions.contains(&portability_enumeration_extension); + let instance_layers = entry.enumerate_instance_layer_properties().map_err(|e| { log::info!("enumerate_instance_layer_properties: {:?}", e); crate::InstanceError @@ -657,6 +662,15 @@ impl crate::Instance for super::Instance { #[cfg(not(target_os = "android"))] let android_sdk_version = 0; + let mut flags = vk::InstanceCreateFlags::empty(); + + // Avoid VUID-VkInstanceCreateInfo-flags-06559: Only ask the instance to + // enumerate incomplete Vulkan implementations (which we need on Mac) if + // we managed to find the extension that provides the flag. + if has_portability_enumeration_extension { + flags |= vk::InstanceCreateFlags::ENUMERATE_PORTABILITY_KHR; + } + let vk_instance = { let str_pointers = layers .iter() @@ -667,11 +681,8 @@ impl crate::Instance for super::Instance { }) .collect::>(); - const VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR: u32 = 0x00000001; let create_info = vk::InstanceCreateInfo::builder() - .flags(vk::InstanceCreateFlags::from_raw( - VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR, - )) + .flags(flags) .application_info(&app_info) .enabled_layer_names(&str_pointers[..layers.len()]) .enabled_extension_names(&str_pointers[layers.len()..]); From 014ae3fe43378b2ac8e3c0057d5b5d7af5fd53f5 Mon Sep 17 00:00:00 2001 From: Ryan Kaplan <945937+ryankaplan@users.noreply.github.com> Date: Sun, 13 Aug 2023 07:02:16 -0700 Subject: [PATCH 005/135] Add get_mapped_range_as_array_buffer which - on wasm WebGPU builds - avoids copying mapped data into wasm heap (#4042) Co-authored-by: Ryan Kaplan --- CHANGELOG.md | 1 + wgpu/src/backend/web.rs | 18 ++++++++++++++---- wgpu/src/context.rs | 35 +++++++++++++++++++++++++++++++++++ wgpu/src/lib.rs | 20 ++++++++++++++++++++ 4 files changed, 70 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ff9bf871bf..5a9d07ad27 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -136,6 +136,7 @@ By @fornwall in [#3904](https://github.com/gfx-rs/wgpu/pull/3904) and [#3905](ht - Empty scissor rects are allowed now, matching the specification. by @PJB3005 in [#3863](https://github.com/gfx-rs/wgpu/pull/3863). - Add back components info to `TextureFormat`s. By @teoxoy in [#3843](https://github.com/gfx-rs/wgpu/pull/3843). +- Add `get_mapped_range_as_array_buffer` for faster buffer read-backs in wasm builds. By @ryankaplan in [#4042] (https://github.com/gfx-rs/wgpu/pull/4042). ### Documentation diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index c080d91439..5fb8614a23 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -1890,10 +1890,8 @@ impl crate::context::Context for Context { buffer_data: &Self::BufferData, sub_range: Range, ) -> Box { - let array_buffer = buffer_data.0.get_mapped_range_with_f64_and_f64( - sub_range.start as f64, - (sub_range.end - sub_range.start) as f64, - ); + let array_buffer = + self.buffer_get_mapped_range_as_array_buffer(_buffer, buffer_data, sub_range); let actual_mapping = js_sys::Uint8Array::new(&array_buffer); let temporary_mapping = actual_mapping.to_vec(); Box::new(BufferMappedRange { @@ -1902,6 +1900,18 @@ impl crate::context::Context for Context { }) } + fn buffer_get_mapped_range_as_array_buffer( + &self, + _buffer: &Self::BufferId, + buffer_data: &Self::BufferData, + sub_range: Range, + ) -> js_sys::ArrayBuffer { + buffer_data.0.get_mapped_range_with_f64_and_f64( + sub_range.start as f64, + (sub_range.end - sub_range.start) as f64, + ) + } + fn buffer_unmap(&self, _buffer: &Self::BufferId, buffer_data: &Self::BufferData) { buffer_data.0.unmap(); } diff --git a/wgpu/src/context.rs b/wgpu/src/context.rs index a7b5c66723..9d0bdd9100 100644 --- a/wgpu/src/context.rs +++ b/wgpu/src/context.rs @@ -307,6 +307,16 @@ pub trait Context: Debug + WasmNotSend + WasmNotSync + Sized { buffer_data: &Self::BufferData, sub_range: Range, ) -> Box; + #[cfg(all( + target_arch = "wasm32", + not(any(target_os = "emscripten", feature = "webgl")) + ))] + fn buffer_get_mapped_range_as_array_buffer( + &self, + buffer: &Self::BufferId, + buffer_data: &Self::BufferData, + sub_range: Range, + ) -> js_sys::ArrayBuffer; fn buffer_unmap(&self, buffer: &Self::BufferId, buffer_data: &Self::BufferData); fn texture_create_view( &self, @@ -1386,6 +1396,16 @@ pub(crate) trait DynContext: Debug + WasmNotSend + WasmNotSync { buffer_data: &crate::Data, sub_range: Range, ) -> Box; + #[cfg(all( + target_arch = "wasm32", + not(any(target_os = "emscripten", feature = "webgl")) + ))] + fn buffer_get_mapped_range_as_array_buffer( + &self, + buffer: &ObjectId, + buffer_data: &crate::Data, + sub_range: Range, + ) -> js_sys::ArrayBuffer; fn buffer_unmap(&self, buffer: &ObjectId, buffer_data: &crate::Data); fn texture_create_view( &self, @@ -2471,6 +2491,21 @@ where Context::buffer_get_mapped_range(self, &buffer, buffer_data, sub_range) } + #[cfg(all( + target_arch = "wasm32", + not(any(target_os = "emscripten", feature = "webgl")) + ))] + fn buffer_get_mapped_range_as_array_buffer( + &self, + buffer: &ObjectId, + buffer_data: &crate::Data, + sub_range: Range, + ) -> js_sys::ArrayBuffer { + let buffer = ::from(*buffer); + let buffer_data = downcast_ref(buffer_data); + Context::buffer_get_mapped_range_as_array_buffer(self, &buffer, buffer_data, sub_range) + } + fn buffer_unmap(&self, buffer: &ObjectId, buffer_data: &crate::Data) { let buffer = ::from(*buffer); let buffer_data = downcast_ref(buffer_data); diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 7674bcb69a..04f535dd22 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -2979,6 +2979,26 @@ impl<'a> BufferSlice<'a> { BufferView { slice: *self, data } } + /// Synchronously and immediately map a buffer for reading. If the buffer is not immediately mappable + /// through [`BufferDescriptor::mapped_at_creation`] or [`BufferSlice::map_async`], will panic. + /// + /// This is useful in wasm builds when you want to pass mapped data directly to js. Unlike `get_mapped_range` + /// which unconditionally copies mapped data into the wasm heap, this function directly hands you the + /// ArrayBuffer that we mapped the data into in js. + #[cfg(all( + target_arch = "wasm32", + not(any(target_os = "emscripten", feature = "webgl")) + ))] + pub fn get_mapped_range_as_array_buffer(&self) -> js_sys::ArrayBuffer { + let end = self.buffer.map_context.lock().add(self.offset, self.size); + DynContext::buffer_get_mapped_range_as_array_buffer( + &*self.buffer.context, + &self.buffer.id, + self.buffer.data.as_ref(), + self.offset..end, + ) + } + /// Synchronously and immediately map a buffer for writing. If the buffer is not immediately mappable /// through [`BufferDescriptor::mapped_at_creation`] or [`BufferSlice::map_async`], will panic. pub fn get_mapped_range_mut(&self) -> BufferViewMut<'a> { From cda3f21652eea34524cd7e7e8b4265b72830e01a Mon Sep 17 00:00:00 2001 From: Jinlei Li Date: Sun, 13 Aug 2023 22:06:22 +0800 Subject: [PATCH 006/135] Fix `capture` example panic in the browser (#4043) --- examples/capture/src/main.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/capture/src/main.rs b/examples/capture/src/main.rs index 5990f76587..09a0ed0d85 100644 --- a/examples/capture/src/main.rs +++ b/examples/capture/src/main.rs @@ -148,13 +148,13 @@ async fn create_png( // // We pass our submission index so we don't need to wait for any other possible submissions. device.poll(wgpu::Maintain::WaitForSubmissionIndex(submission_index)); - // If a file system is available, write the buffer as a PNG - let has_file_system_available = cfg!(not(target_arch = "wasm32")); - if !has_file_system_available { - return; - } if let Some(Ok(())) = receiver.receive().await { + // If a file system is available, write the buffer as a PNG + let has_file_system_available = cfg!(not(target_arch = "wasm32")); + if !has_file_system_available { + return; + } let padded_buffer = buffer_slice.get_mapped_range(); let mut png_encoder = png::Encoder::new( From 406ee5dc1bb4253e01d3f633806ead6d26163ae5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Aug 2023 09:26:44 +0200 Subject: [PATCH 007/135] Bump bitflags from 2.3.3 to 2.4.0 (#4049) Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.3.3 to 2.4.0. - [Release notes](https://github.com/bitflags/bitflags/releases) - [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md) - [Commits](https://github.com/bitflags/bitflags/compare/2.3.3...2.4.0) --- updated-dependencies: - dependency-name: bitflags dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5b0cffe834..9117ea2316 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -222,9 +222,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.3.3" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42" +checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" dependencies = [ "serde", ] @@ -552,7 +552,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e16e44ab292b1dddfdaf7be62cfd8877df52f2f3fde5858d95bab606be259f20" dependencies = [ - "bitflags 2.3.3", + "bitflags 2.4.0", "libloading 0.8.0", "winapi", ] @@ -1214,7 +1214,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" dependencies = [ - "bitflags 2.3.3", + "bitflags 2.4.0", "gpu-alloc-types", ] @@ -1224,7 +1224,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" dependencies = [ - "bitflags 2.3.3", + "bitflags 2.4.0", ] [[package]] @@ -1554,7 +1554,7 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "623b5e6cefd76e58f774bd3cc0c6f5c7615c58c03a97815245a25c3c9bdee318" dependencies = [ - "bitflags 2.3.3", + "bitflags 2.4.0", "block", "core-graphics-types", "foreign-types 0.5.0", @@ -1606,7 +1606,7 @@ version = "0.13.0" source = "git+https://github.com/gfx-rs/naga?rev=bac2d82a430fbfcf100ee22b7c3bc12f3d593079#bac2d82a430fbfcf100ee22b7c3bc12f3d593079" dependencies = [ "bit-set", - "bitflags 2.3.3", + "bitflags 2.4.0", "codespan-reporting", "hexf-parse", "indexmap 1.9.3", @@ -2317,7 +2317,7 @@ version = "0.38.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a962918ea88d644592894bc6dc55acc6c0956488adcebbfb6e273506b7fd6e5" dependencies = [ - "bitflags 2.3.3", + "bitflags 2.4.0", "errno", "libc", "linux-raw-sys", @@ -3209,7 +3209,7 @@ version = "0.17.0" dependencies = [ "arrayvec 0.7.4", "bit-vec", - "bitflags 2.3.3", + "bitflags 2.4.0", "codespan-reporting", "log", "naga", @@ -3268,7 +3268,7 @@ dependencies = [ "arrayvec 0.7.4", "ash", "bit-set", - "bitflags 2.3.3", + "bitflags 2.4.0", "block", "cfg-if", "core-graphics-types", @@ -3368,7 +3368,7 @@ name = "wgpu-info" version = "0.17.0" dependencies = [ "anyhow", - "bitflags 2.3.3", + "bitflags 2.4.0", "env_logger", "pico-args", "serde", @@ -3449,7 +3449,7 @@ dependencies = [ name = "wgpu-test" version = "0.17.0" dependencies = [ - "bitflags 2.3.3", + "bitflags 2.4.0", "bytemuck", "cfg-if", "console_log", @@ -3504,7 +3504,7 @@ dependencies = [ name = "wgpu-types" version = "0.17.0" dependencies = [ - "bitflags 2.3.3", + "bitflags 2.4.0", "js-sys", "serde", "serde_json", From f825ce4ac2cc15532a8141511d67c0d7a22f774e Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Mon, 14 Aug 2023 08:33:50 -0400 Subject: [PATCH 008/135] Fix Callback Ordering (#4036) * Fix Callback Ordering * Format & Changelog --- CHANGELOG.md | 1 + Cargo.lock | 1 + tests/Cargo.toml | 1 + tests/tests/regression/issue_4024.rs | 91 ++++++++++++++++++++++++++++ tests/tests/root.rs | 1 + wgpu-core/src/device/life.rs | 26 +++++--- wgpu-core/src/device/mod.rs | 3 + wgpu-core/src/device/queue.rs | 17 ++---- wgpu/src/lib.rs | 4 +- 9 files changed, 123 insertions(+), 22 deletions(-) create mode 100644 tests/tests/regression/issue_4024.rs diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a9d07ad27..3d02995134 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -74,6 +74,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) #### General - Derive storage bindings via `naga::StorageAccess` instead of `naga::GlobalUse`. By @teoxoy in [#3985](https://github.com/gfx-rs/wgpu/pull/3985). +- `Queue::on_submitted_work_done` callbacks will now always be called after all previous `BufferSlice::map_async` callbacks, even when there are no active submissions. By @cwfitzgerald in [#4036](https://github.com/gfx-rs/wgpu/pull/4036). #### Vulkan - Fix enabling `wgpu::Features::PARTIALLY_BOUND_BINDING_ARRAY` not being actually enabled in vulkan backend. By @39ali in[#3772](https://github.com/gfx-rs/wgpu/pull/3772). diff --git a/Cargo.lock b/Cargo.lock index 9117ea2316..aa4e692c89 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3459,6 +3459,7 @@ dependencies = [ "log", "naga", "nv-flip", + "parking_lot", "png", "pollster", "raw-window-handle 0.5.2", diff --git a/tests/Cargo.toml b/tests/Cargo.toml index 85dae4959c..5738ed1bdb 100644 --- a/tests/Cargo.toml +++ b/tests/Cargo.toml @@ -24,6 +24,7 @@ bytemuck.workspace = true cfg-if.workspace = true env_logger.workspace = true log.workspace = true +parking_lot.workspace = true png.workspace = true pollster.workspace = true wgpu.workspace = true diff --git a/tests/tests/regression/issue_4024.rs b/tests/tests/regression/issue_4024.rs new file mode 100644 index 0000000000..959f58ffa5 --- /dev/null +++ b/tests/tests/regression/issue_4024.rs @@ -0,0 +1,91 @@ +use std::sync::Arc; + +use parking_lot::Mutex; +use wgpu_test::{initialize_test, TestParameters}; + +use wasm_bindgen_test::wasm_bindgen_test; +use wgpu::*; + +/// The WebGPU specification has very specific requirements about the ordering of map_async +/// and on_submitted_work_done callbacks. Specifically, all map_async callbacks that are initiated +/// before a given on_submitted_work_done callback must be invoked before the on_submitted_work_done +/// callback is invoked. +/// +/// We previously immediately invoked on_submitted_work_done callbacks if there was no active submission +/// to add them to. This is incorrect, as we do not immediatley invoke map_async callbacks. +#[wasm_bindgen_test] +#[test] +fn queue_submitted_callback_ordering() { + initialize_test(TestParameters::default(), |ctx| { + // Create a mappable buffer + let buffer = ctx.device.create_buffer(&BufferDescriptor { + label: Some("mappable buffer"), + size: 4, + usage: BufferUsages::MAP_READ | BufferUsages::COPY_DST, + mapped_at_creation: false, + }); + + // Encode some work using it. The specifics of this work don't matter, just + // that the buffer is used. + let mut encoder = ctx + .device + .create_command_encoder(&CommandEncoderDescriptor { + label: Some("encoder"), + }); + + encoder.clear_buffer(&buffer, 0, None); + + // Submit the work. + ctx.queue.submit(Some(encoder.finish())); + // Ensure the work is finished. + ctx.device.poll(MaintainBase::Wait); + + #[derive(Debug)] + struct OrderingContext { + /// Incremented every time a callback in invoked. + /// This allows the callbacks to know their ordering. + counter: u8, + /// The value of the counter when the map_async callback was invoked. + value_read_map_async: Option, + /// The value of the counter when the queue submitted work done callback was invoked. + value_read_queue_submitted: Option, + } + + // Create shared ownership of the ordering context, and clone 2 copies. + let ordering = Arc::new(Mutex::new(OrderingContext { + counter: 0, + value_read_map_async: None, + value_read_queue_submitted: None, + })); + let ordering_clone_map_async = Arc::clone(&ordering); + let ordering_clone_queue_submitted = Arc::clone(&ordering); + + // Register the callabacks. + buffer.slice(..).map_async(MapMode::Read, move |_| { + let mut guard = ordering_clone_map_async.lock(); + guard.value_read_map_async = Some(guard.counter); + guard.counter += 1; + }); + + // If the bug is present, this callback will be invoked immediately inside this function, + // despite the fact there is an outstanding map_async callback. + ctx.queue.on_submitted_work_done(move || { + let mut guard = ordering_clone_queue_submitted.lock(); + guard.value_read_queue_submitted = Some(guard.counter); + guard.counter += 1; + }); + + // No GPU work is happening at this point, but we want to process callbacks. + ctx.device.poll(MaintainBase::Poll); + + // Extract the ordering out of the arc. + let ordering = Arc::try_unwrap(ordering).unwrap().into_inner(); + + // There were two callbacks invoked + assert_eq!(ordering.counter, 2); + // The map async callback was invoked fist + assert_eq!(ordering.value_read_map_async, Some(0)); + // The queue submitted work done callback was invoked second. + assert_eq!(ordering.value_read_queue_submitted, Some(1)); + }) +} diff --git a/tests/tests/root.rs b/tests/tests/root.rs index a75367f827..86139c9bd2 100644 --- a/tests/tests/root.rs +++ b/tests/tests/root.rs @@ -2,6 +2,7 @@ use wasm_bindgen_test::wasm_bindgen_test_configure; mod regression { mod issue_3457; + mod issue_4024; } mod buffer; diff --git a/wgpu-core/src/device/life.rs b/wgpu-core/src/device/life.rs index 75491d10cb..a12d864104 100644 --- a/wgpu-core/src/device/life.rs +++ b/wgpu-core/src/device/life.rs @@ -219,6 +219,9 @@ struct ActiveSubmission { mapped: Vec>, encoders: Vec>, + + /// List of queue "on_submitted_work_done" closures to be called once this + /// submission has completed. work_done_closures: SmallVec<[SubmittedWorkDoneClosure; 1]>, } @@ -304,6 +307,12 @@ pub(super) struct LifetimeTracker { /// Buffers the user has asked us to map, and which are not used by any /// queue submission still in flight. ready_to_map: Vec>, + + /// Queue "on_submitted_work_done" closures that were initiated for while there is no + /// currently pending submissions. These cannot be immeidately invoked as they + /// must happen _after_ all mapped buffer callbacks are mapped, so we defer them + /// here until the next time the device is maintained. + work_done_closures: SmallVec<[SubmittedWorkDoneClosure; 1]>, } impl LifetimeTracker { @@ -316,6 +325,7 @@ impl LifetimeTracker { active: Vec::new(), free_resources: NonReferencedResources::new(), ready_to_map: Vec::new(), + work_done_closures: SmallVec::new(), } } @@ -405,7 +415,7 @@ impl LifetimeTracker { .position(|a| a.index > last_done) .unwrap_or(self.active.len()); - let mut work_done_closures = SmallVec::new(); + let mut work_done_closures: SmallVec<_> = self.work_done_closures.drain(..).collect(); for a in self.active.drain(..done_count) { log::trace!("Active submission {} is done", a.index); self.free_resources.extend(a.last_resources); @@ -445,18 +455,16 @@ impl LifetimeTracker { } } - pub fn add_work_done_closure( - &mut self, - closure: SubmittedWorkDoneClosure, - ) -> Option { + pub fn add_work_done_closure(&mut self, closure: SubmittedWorkDoneClosure) { match self.active.last_mut() { Some(active) => { active.work_done_closures.push(closure); - None } - // Note: we can't immediately invoke the closure, since it assumes - // nothing is currently locked in the hubs. - None => Some(closure), + // We must defer the closure until all previously occuring map_async closures + // have fired. This is required by the spec. + None => { + self.work_done_closures.push(closure); + } } } } diff --git a/wgpu-core/src/device/mod.rs b/wgpu-core/src/device/mod.rs index 5792791abe..0ae6d7a2dd 100644 --- a/wgpu-core/src/device/mod.rs +++ b/wgpu-core/src/device/mod.rs @@ -181,6 +181,9 @@ impl UserClosures { fn fire(self) { // Note: this logic is specifically moved out of `handle_mapping()` in order to // have nothing locked by the time we execute users callback code. + + // Mappings _must_ be fired before submissions, as the spec requires all mapping callbacks that are registered before + // a on_submitted_work_done callback to be fired before the on_submitted_work_done callback. for (operation, status) in self.mappings { operation.callback.call(status); } diff --git a/wgpu-core/src/device/queue.rs b/wgpu-core/src/device/queue.rs index 6e0be3b297..73fa5de3b0 100644 --- a/wgpu-core/src/device/queue.rs +++ b/wgpu-core/src/device/queue.rs @@ -1435,17 +1435,12 @@ impl Global { closure: SubmittedWorkDoneClosure, ) -> Result<(), InvalidQueue> { //TODO: flush pending writes - let closure_opt = { - let hub = A::hub(self); - let mut token = Token::root(); - let (device_guard, mut token) = hub.devices.read(&mut token); - match device_guard.get(queue_id) { - Ok(device) => device.lock_life(&mut token).add_work_done_closure(closure), - Err(_) => return Err(InvalidQueue), - } - }; - if let Some(closure) = closure_opt { - closure.call(); + let hub = A::hub(self); + let mut token = Token::root(); + let (device_guard, mut token) = hub.devices.read(&mut token); + match device_guard.get(queue_id) { + Ok(device) => device.lock_life(&mut token).add_work_done_closure(closure), + Err(_) => return Err(InvalidQueue), } Ok(()) } diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 04f535dd22..0138051a10 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -4580,8 +4580,8 @@ impl Queue { } /// Registers a callback when the previous call to submit finishes running on the gpu. This callback - /// being called implies that all mapped buffer callbacks attached to the same submission have also - /// been called. + /// being called implies that all mapped buffer callbacks which were registered before this call will + /// have been called. /// /// For the callback to complete, either `queue.submit(..)`, `instance.poll_all(..)`, or `device.poll(..)` /// must be called elsewhere in the runtime, possibly integrated into an event loop or run on a separate thread. From 2bdb3196f90fe860021ea956d6408ffe7911cae8 Mon Sep 17 00:00:00 2001 From: Kevin Reid Date: Mon, 14 Aug 2023 13:24:27 -0700 Subject: [PATCH 009/135] Add an overview of `RenderPass` and how render state works. (#4055) * Explain the general relationship of `set` and `draw` methods. * Explain render state changes and that you can have lots of them. * Specify default values of render state. --- CHANGELOG.md | 4 ++++ wgpu/src/lib.rs | 63 +++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 60 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d02995134..aa0fc71ba9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -85,6 +85,10 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032). +### Documentation + +- Add an overview of `RenderPass` and how render state works. By @kpreid in [#4055](https://github.com/gfx-rs/wgpu/pull/4055) + ## v0.17.0 (2023-07-20) This is the first release that featured `wgpu-info` as a binary crate for getting information about what devices wgpu sees in your system. It can dump the information in both human readable format and json. diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 0138051a10..64f89cc487 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -764,9 +764,21 @@ impl Drop for CommandEncoder { } } -/// In-progress recording of a render pass. +/// In-progress recording of a render pass: a list of render commands in a [`CommandEncoder`]. /// -/// It can be created with [`CommandEncoder::begin_render_pass`]. +/// It can be created with [`CommandEncoder::begin_render_pass()`], whose [`RenderPassDescriptor`] +/// specifies the attachments (textures) that will be rendered to. +/// +/// Most of the methods on `RenderPass` serve one of two purposes, identifiable by their names: +/// +/// * `draw_*()`: Drawing (that is, encoding a render command, which, when executed by the GPU, will +/// rasterize something and execute shaders). +/// * `set_*()`: Setting part of the [render state](https://gpuweb.github.io/gpuweb/#renderstate) +/// for future drawing commands. +/// +/// A render pass may contain any number of drawing commands, and before/between each command the +/// render state may be updated however you wish; each drawing command will be executed using the +/// render state that has been set when the `draw_*()` function is called. /// /// Corresponds to [WebGPU `GPURenderPassEncoder`]( /// https://gpuweb.github.io/gpuweb/#render-pass-encoder). @@ -3416,11 +3428,14 @@ impl CommandEncoder { impl<'a> RenderPass<'a> { /// Sets the active bind group for a given bind group index. The bind group layout - /// in the active pipeline when any `draw()` function is called must match the layout of this bind group. + /// in the active pipeline when any `draw_*()` method is called must match the layout of + /// this bind group. /// /// If the bind group have dynamic offsets, provide them in binding order. /// These offsets have to be aligned to [`Limits::min_uniform_buffer_offset_alignment`] /// or [`Limits::min_storage_buffer_offset_alignment`] appropriately. + /// + /// Subsequent draw calls’ shader executions will be able to access data in these bind groups. pub fn set_bind_group( &mut self, index: u32, @@ -3454,6 +3469,8 @@ impl<'a> RenderPass<'a> { /// Sets the blend color as used by some of the blending modes. /// /// Subsequent blending tests will test against this value. + /// If this method has not been called, the blend constant defaults to [`Color::TRANSPARENT`] + /// (all components zero). pub fn set_blend_constant(&mut self, color: Color) { DynContext::render_pass_set_blend_constant( &*self.parent.context, @@ -3507,6 +3524,11 @@ impl<'a> RenderPass<'a> { /// After transformation into [viewport coordinates](https://www.w3.org/TR/webgpu/#viewport-coordinates). /// /// Subsequent draw calls will discard any fragments which fall outside the scissor rectangle. + /// If this method has not been called, the scissor rectangle defaults to the entire bounds of + /// the render targets. + /// + /// The function of the scissor rectangle resembles [`set_viewport()`](Self::set_viewport), + /// but it does not affect the coordinate system, only which fragments are discarded. pub fn set_scissor_rect(&mut self, x: u32, y: u32, width: u32, height: u32) { DynContext::render_pass_set_scissor_rect( &*self.parent.context, @@ -3522,7 +3544,9 @@ impl<'a> RenderPass<'a> { /// Sets the viewport used during the rasterization stage to linearly map /// from [normalized device coordinates](https://www.w3.org/TR/webgpu/#ndc) to [viewport coordinates](https://www.w3.org/TR/webgpu/#viewport-coordinates). /// - /// Subsequent draw calls will draw any fragments in this region. + /// Subsequent draw calls will only draw within this region. + /// If this method has not been called, the viewport defaults to the entire bounds of the render + /// targets. pub fn set_viewport(&mut self, x: f32, y: f32, w: f32, h: f32, min_depth: f32, max_depth: f32) { DynContext::render_pass_set_viewport( &*self.parent.context, @@ -3540,6 +3564,7 @@ impl<'a> RenderPass<'a> { /// Sets the stencil reference. /// /// Subsequent stencil tests will test against this value. + /// If this method has not been called, the stencil reference value defaults to `0`. pub fn set_stencil_reference(&mut self, reference: u32) { DynContext::render_pass_set_stencil_reference( &*self.parent.context, @@ -3567,6 +3592,9 @@ impl<'a> RenderPass<'a> { /// } /// } /// ``` + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn draw(&mut self, vertices: Range, instances: Range) { DynContext::render_pass_draw( &*self.parent.context, @@ -3627,6 +3655,9 @@ impl<'a> RenderPass<'a> { /// } /// } /// ``` + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn draw_indexed(&mut self, indices: Range, base_vertex: i32, instances: Range) { DynContext::render_pass_draw_indexed( &*self.parent.context, @@ -3643,6 +3674,9 @@ impl<'a> RenderPass<'a> { /// The active vertex buffers can be set with [`RenderPass::set_vertex_buffer`]. /// /// The structure expected in `indirect_buffer` must conform to [`DrawIndirect`](crate::util::DrawIndirect). + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn draw_indirect(&mut self, indirect_buffer: &'a Buffer, indirect_offset: BufferAddress) { DynContext::render_pass_draw_indirect( &*self.parent.context, @@ -3661,6 +3695,9 @@ impl<'a> RenderPass<'a> { /// vertex buffers can be set with [`RenderPass::set_vertex_buffer`]. /// /// The structure expected in `indirect_buffer` must conform to [`DrawIndexedIndirect`](crate::util::DrawIndexedIndirect). + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn draw_indexed_indirect( &mut self, indirect_buffer: &'a Buffer, @@ -3678,6 +3715,9 @@ impl<'a> RenderPass<'a> { /// Execute a [render bundle][RenderBundle], which is a set of pre-recorded commands /// that can be run together. + /// + /// Commands in the bundle do not inherit this render pass's current render state, and after the + /// bundle has executed, the state is **cleared** (reset to defaults, not the previous state). pub fn execute_bundles + 'a>( &mut self, render_bundles: I, @@ -3703,8 +3743,10 @@ impl<'a> RenderPass<'a> { /// The active vertex buffers can be set with [`RenderPass::set_vertex_buffer`]. /// /// The structure expected in `indirect_buffer` must conform to [`DrawIndirect`](crate::util::DrawIndirect). - /// /// These draw structures are expected to be tightly packed. + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn multi_draw_indirect( &mut self, indirect_buffer: &'a Buffer, @@ -3729,8 +3771,10 @@ impl<'a> RenderPass<'a> { /// vertex buffers can be set with [`RenderPass::set_vertex_buffer`]. /// /// The structure expected in `indirect_buffer` must conform to [`DrawIndexedIndirect`](crate::util::DrawIndexedIndirect). - /// /// These draw structures are expected to be tightly packed. + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn multi_draw_indexed_indirect( &mut self, indirect_buffer: &'a Buffer, @@ -3760,7 +3804,6 @@ impl<'a> RenderPass<'a> { /// The active vertex buffers can be set with [`RenderPass::set_vertex_buffer`]. /// /// The structure expected in `indirect_buffer` must conform to [`DrawIndirect`](crate::util::DrawIndirect). - /// /// These draw structures are expected to be tightly packed. /// /// The structure expected in `count_buffer` is the following: @@ -3771,6 +3814,9 @@ impl<'a> RenderPass<'a> { /// count: u32, // Number of draw calls to issue. /// } /// ``` + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn multi_draw_indirect_count( &mut self, indirect_buffer: &'a Buffer, @@ -3815,6 +3861,9 @@ impl<'a> RenderPass<'a> { /// count: u32, // Number of draw calls to issue. /// } /// ``` + /// + /// This drawing command uses the current render state, as set by preceding `set_*()` methods. + /// It is not affected by changes to the state that are performed after it is called. pub fn multi_draw_indexed_indirect_count( &mut self, indirect_buffer: &'a Buffer, From 049ce5332e9827e7a57de06153e6eb64d3b4321d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Aug 2023 00:08:20 +0200 Subject: [PATCH 010/135] Bump tokio from 1.30.0 to 1.31.0 (#4048) Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.30.0 to 1.31.0. - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.30.0...tokio-1.31.0) --- updated-dependencies: - dependency-name: tokio dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index aa4e692c89..66e6903224 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2726,9 +2726,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.30.0" +version = "1.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3ce25f50619af8b0aec2eb23deebe84249e19e2ddd393a6e16e3300a6dadfd" +checksum = "40de3a2ba249dcb097e01be5e67a5ff53cf250397715a071a81543e8a832a920" dependencies = [ "backtrace", "bytes", diff --git a/Cargo.toml b/Cargo.toml index c54b0f6bef..bfd8c0f008 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -141,7 +141,7 @@ deno_url = "0.106.0" deno_web = "0.137.0" deno_webidl = "0.106.0" deno_webgpu = { path = "./deno_webgpu" } -tokio = "1.30.0" +tokio = "1.31.0" termcolor = "1.2.0" [patch."https://github.com/gfx-rs/naga"] From 50cfc541aace5c94c14fc390dda6d54dda5468db Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Tue, 15 Aug 2023 00:09:53 +0200 Subject: [PATCH 011/135] Update `naga` to 0.13.0@git:7a19f3af909202c7eafd36633b5584bfbb353ecb (#4051) --- Cargo.lock | 6 +++--- Cargo.toml | 2 +- wgpu-core/Cargo.toml | 2 +- wgpu-hal/Cargo.toml | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 66e6903224..5cb3ee4ab1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1352,7 +1352,6 @@ checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown 0.12.3", - "serde", ] [[package]] @@ -1363,6 +1362,7 @@ checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" dependencies = [ "equivalent", "hashbrown 0.14.0", + "serde", ] [[package]] @@ -1603,13 +1603,13 @@ dependencies = [ [[package]] name = "naga" version = "0.13.0" -source = "git+https://github.com/gfx-rs/naga?rev=bac2d82a430fbfcf100ee22b7c3bc12f3d593079#bac2d82a430fbfcf100ee22b7c3bc12f3d593079" +source = "git+https://github.com/gfx-rs/naga?rev=7a19f3af909202c7eafd36633b5584bfbb353ecb#7a19f3af909202c7eafd36633b5584bfbb353ecb" dependencies = [ "bit-set", "bitflags 2.4.0", "codespan-reporting", "hexf-parse", - "indexmap 1.9.3", + "indexmap 2.0.0", "log", "num-traits 0.2.16", "petgraph", diff --git a/Cargo.toml b/Cargo.toml index bfd8c0f008..2b7a791e31 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,7 +51,7 @@ version = "0.17" [workspace.dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "bac2d82a430fbfcf100ee22b7c3bc12f3d593079" +rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" version = "0.13.0" [workspace.dependencies] diff --git a/wgpu-core/Cargo.toml b/wgpu-core/Cargo.toml index dc5352979e..5cebd9fdca 100644 --- a/wgpu-core/Cargo.toml +++ b/wgpu-core/Cargo.toml @@ -72,7 +72,7 @@ thiserror = "1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "bac2d82a430fbfcf100ee22b7c3bc12f3d593079" +rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" version = "0.13.0" features = ["clone", "span", "validate"] diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 3b5b2b027b..53b2816435 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -120,14 +120,14 @@ android_system_properties = "0.1.1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "bac2d82a430fbfcf100ee22b7c3bc12f3d593079" +rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" version = "0.13.0" features = ["clone"] # DEV dependencies [dev-dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "bac2d82a430fbfcf100ee22b7c3bc12f3d593079" +rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" version = "0.13.0" features = ["wgsl-in"] From 7544af0f83a169b08ca2ba49d4c3237223fab100 Mon Sep 17 00:00:00 2001 From: James0124 Date: Tue, 15 Aug 2023 16:15:19 +0900 Subject: [PATCH 012/135] =?UTF-8?q?Add=20validation=20in=20accordance=20wi?= =?UTF-8?q?th=20WebGPU=20`setViewport`=20valid=20usage=20fo=E2=80=A6=20(#4?= =?UTF-8?q?058)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. `x` and `y` must not be negative, and the rect must be contained in the render target. * Add changelog entry. --- CHANGELOG.md | 1 + wgpu-core/src/command/draw.rs | 4 ++-- wgpu-core/src/command/render.rs | 13 ++++++++++--- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index aa0fc71ba9..de7f7c7706 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -68,6 +68,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Omit texture store bound checks since they are no-ops if out of bounds on all APIs. By @teoxoy in [#3975](https://github.com/gfx-rs/wgpu/pull/3975) - Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL`. By @teoxoy in [#4031](https://github.com/gfx-rs/wgpu/pull/4031) +- Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. By @James2022-rgb in [#4058](https://github.com/gfx-rs/wgpu/pull/4058) ### Bug Fixes diff --git a/wgpu-core/src/command/draw.rs b/wgpu-core/src/command/draw.rs index 0b7b48cda9..50ca9516b4 100644 --- a/wgpu-core/src/command/draw.rs +++ b/wgpu-core/src/command/draw.rs @@ -89,8 +89,8 @@ pub enum RenderCommandError { MissingTextureUsage(#[from] MissingTextureUsageError), #[error(transparent)] PushConstants(#[from] PushConstantUploadError), - #[error("Viewport width {0} and/or height {1} are less than or equal to 0")] - InvalidViewportDimension(f32, f32), + #[error("Viewport has invalid rect {0:?}; origin and/or size is less than or equal to 0, and/or is not contained in the render target {1:?}")] + InvalidViewportRect(Rect, wgt::Extent3d), #[error("Viewport minDepth {0} and/or maxDepth {1} are not in [0, 1]")] InvalidViewportDepth(f32, f32), #[error("Scissor {0:?} is not contained in the render target {1:?}")] diff --git a/wgpu-core/src/command/render.rs b/wgpu-core/src/command/render.rs index 3a303cb5af..7f16f31807 100644 --- a/wgpu-core/src/command/render.rs +++ b/wgpu-core/src/command/render.rs @@ -1727,9 +1727,16 @@ impl Global { depth_max, } => { let scope = PassErrorScope::SetViewport; - if rect.w <= 0.0 || rect.h <= 0.0 { - return Err(RenderCommandError::InvalidViewportDimension( - rect.w, rect.h, + if rect.x < 0.0 + || rect.y < 0.0 + || rect.w <= 0.0 + || rect.h <= 0.0 + || rect.x + rect.w > info.extent.width as f32 + || rect.y + rect.h > info.extent.height as f32 + { + return Err(RenderCommandError::InvalidViewportRect( + *rect, + info.extent, )) .map_pass_err(scope); } From 57874e5c540330c8183e19ee87654cf24bb5c250 Mon Sep 17 00:00:00 2001 From: hybcloud <43987901+hybcloud@users.noreply.github.com> Date: Tue, 15 Aug 2023 17:29:24 +1000 Subject: [PATCH 013/135] improved PR#4038 by using ash's definition instead (#4044) of hard-coded c_str. --- CHANGELOG.md | 2 ++ wgpu-hal/src/vulkan/instance.rs | 10 ++-------- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index de7f7c7706..1f47fc075b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -82,6 +82,8 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Don't pass `vk::InstanceCreateFlags::ENUMERATE_PORTABILITY_KHR` unless the `VK_KHR_portability_enumeration` extension is available. By @jimblandy in[#4038](https://github.com/gfx-rs/wgpu/pull/4038). +- Enhancement of [#4038], using ash's definition instead of hard-coded c_str. By @hybcloud in[#4044](https://github.com/gfx-rs/wgpu/pull/4044). + #### DX12 - DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032). diff --git a/wgpu-hal/src/vulkan/instance.rs b/wgpu-hal/src/vulkan/instance.rs index adaa4f1c11..4fa4a3e27d 100644 --- a/wgpu-hal/src/vulkan/instance.rs +++ b/wgpu-hal/src/vulkan/instance.rs @@ -228,8 +228,7 @@ impl super::Instance { if cfg!(target_os = "macos") { // VK_EXT_metal_surface extensions.push(ext::MetalSurface::name()); - extensions - .push(CStr::from_bytes_with_nul(b"VK_KHR_portability_enumeration\0").unwrap()); + extensions.push(ash::vk::KhrPortabilityEnumerationFn::name()); } if flags.contains(crate::InstanceFlags::DEBUG) { @@ -589,11 +588,6 @@ impl crate::Instance for super::Instance { let extensions = Self::required_extensions(&entry, driver_api_version, desc.flags)?; - let portability_enumeration_extension = - CStr::from_bytes_with_nul(b"VK_KHR_portability_enumeration\0").unwrap(); - let has_portability_enumeration_extension = - extensions.contains(&portability_enumeration_extension); - let instance_layers = entry.enumerate_instance_layer_properties().map_err(|e| { log::info!("enumerate_instance_layer_properties: {:?}", e); crate::InstanceError @@ -667,7 +661,7 @@ impl crate::Instance for super::Instance { // Avoid VUID-VkInstanceCreateInfo-flags-06559: Only ask the instance to // enumerate incomplete Vulkan implementations (which we need on Mac) if // we managed to find the extension that provides the flag. - if has_portability_enumeration_extension { + if extensions.contains(&ash::vk::KhrPortabilityEnumerationFn::name()) { flags |= vk::InstanceCreateFlags::ENUMERATE_PORTABILITY_KHR; } From e11526e23c780430997bd18a2f81e7d1a5316e97 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Wed, 16 Aug 2023 06:23:31 -0700 Subject: [PATCH 014/135] [vulkan] Don't free command buffers before destroying the pool. (#4059) Calling `vkDestroyCommandPool` automatically frees all command buffers allocated from that pool, so there is no need for `Device::destroy_command_encoder` to explicitly call `vkFreeCommandBuffers` on the `CommandEncoder`'s `free` and `discarded` lists. --- CHANGELOG.md | 4 ++++ wgpu-hal/src/vulkan/device.rs | 14 ++++---------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f47fc075b..2324e939bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -70,6 +70,10 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL`. By @teoxoy in [#4031](https://github.com/gfx-rs/wgpu/pull/4031) - Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. By @James2022-rgb in [#4058](https://github.com/gfx-rs/wgpu/pull/4058) +#### Vulkan + +- Don't bother calling `vkFreeCommandBuffers` when `vkDestroyCommandPool` will take care of that for us. By @jimblandy in [#4059](https://github.com/gfx-rs/wgpu/pull/4059) + ### Bug Fixes #### General diff --git a/wgpu-hal/src/vulkan/device.rs b/wgpu-hal/src/vulkan/device.rs index a69897a324..4f2a0feb8a 100644 --- a/wgpu-hal/src/vulkan/device.rs +++ b/wgpu-hal/src/vulkan/device.rs @@ -1193,16 +1193,10 @@ impl crate::Device for super::Device { } unsafe fn destroy_command_encoder(&self, cmd_encoder: super::CommandEncoder) { unsafe { - if !cmd_encoder.free.is_empty() { - self.shared - .raw - .free_command_buffers(cmd_encoder.raw, &cmd_encoder.free) - } - if !cmd_encoder.discarded.is_empty() { - self.shared - .raw - .free_command_buffers(cmd_encoder.raw, &cmd_encoder.discarded) - } + // `vkDestroyCommandPool` also frees any command buffers allocated + // from that pool, so there's no need to explicitly call + // `vkFreeCommandBuffers` on `cmd_encoder`'s `free` and `discarded` + // fields. self.shared.raw.destroy_command_pool(cmd_encoder.raw, None); } } From e973a06268cad6bbd175b312503a8e07e55abbd9 Mon Sep 17 00:00:00 2001 From: Pieter-Jan Briers Date: Wed, 16 Aug 2023 17:51:56 +0200 Subject: [PATCH 015/135] Allow specifying minor GLES3 version (#3998) --- CHANGELOG.md | 5 +++++ README.md | 1 + deno_webgpu/lib.rs | 1 + examples/capture/src/main.rs | 1 + examples/common/src/framework.rs | 2 ++ examples/timestamp-queries/src/main.rs | 1 + player/tests/test.rs | 1 + tests/src/lib.rs | 2 ++ tests/tests/instance.rs | 2 ++ wgpu-core/src/instance.rs | 1 + wgpu-hal/examples/halmark/main.rs | 1 + wgpu-hal/src/gles/egl.rs | 29 +++++++++++++++++++++----- wgpu-hal/src/lib.rs | 1 + wgpu-types/src/lib.rs | 22 +++++++++++++++++++ wgpu/src/lib.rs | 12 +++++------ wgpu/src/util/init.rs | 19 +++++++++++++++++ 16 files changed, 90 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2324e939bc..8da75f85c5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -64,6 +64,10 @@ let render_pass = encoder.begin_render_pass(&wgpu::RenderPassDescriptor { By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) +### Added/New Features + +- Add `gles_minor_version` field to `wgpu::InstanceDescriptor`. By @PJB3005 in [#3998](https://github.com/gfx-rs/wgpu/pull/3998) + ### Changes - Omit texture store bound checks since they are no-ops if out of bounds on all APIs. By @teoxoy in [#3975](https://github.com/gfx-rs/wgpu/pull/3975) @@ -74,6 +78,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Don't bother calling `vkFreeCommandBuffers` when `vkDestroyCommandPool` will take care of that for us. By @jimblandy in [#4059](https://github.com/gfx-rs/wgpu/pull/4059) + ### Bug Fixes #### General diff --git a/README.md b/README.md index c2b62daf93..dfdb3a5a8e 100644 --- a/README.md +++ b/README.md @@ -137,6 +137,7 @@ All testing and example infrastructure shares the same set of environment variab - `WGPU_BACKEND` with a comma separated list of the backends you want to use (`vulkan`, `metal`, `dx12`, `dx11`, or `gl`). - `WGPU_POWER_PREF` with the power preference to choose when a specific adapter name isn't specified (`high` or `low`) - `WGPU_DX12_COMPILER` with the DX12 shader compiler you wish to use (`dxc` or `fxc`, note that `dxc` requires `dxil.dll` and `dxcompiler.dll` to be in the working directory otherwise it will fall back to `fxc`) +- `WGPU_GLES_MINOR_VERSION` with the minor OpenGL ES 3 version number to request (`0`, `1`, `2` or `automatic`). When running the CTS, use the variables `DENO_WEBGPU_ADAPTER_NAME`, `DENO_WEBGPU_BACKEND`, `DENO_WEBGPU_POWER_PREFERENCE`. diff --git a/deno_webgpu/lib.rs b/deno_webgpu/lib.rs index f475723682..92a6a51334 100644 --- a/deno_webgpu/lib.rs +++ b/deno_webgpu/lib.rs @@ -406,6 +406,7 @@ pub async fn op_webgpu_request_adapter( wgpu_types::InstanceDescriptor { backends, dx12_shader_compiler: wgpu_types::Dx12Compiler::Fxc, + gles_minor_version: wgpu_types::Gles3MinorVersion::default(), }, ))); state.borrow::() diff --git a/examples/capture/src/main.rs b/examples/capture/src/main.rs index 09a0ed0d85..b783b3af80 100644 --- a/examples/capture/src/main.rs +++ b/examples/capture/src/main.rs @@ -40,6 +40,7 @@ async fn create_red_image_with_dimensions( let instance = wgpu::Instance::new(wgpu::InstanceDescriptor { backends, dx12_shader_compiler: wgpu::Dx12Compiler::default(), + gles_minor_version: wgpu::Gles3MinorVersion::default(), }); let adapter = instance .request_adapter(&wgpu::RequestAdapterOptions::default()) diff --git a/examples/common/src/framework.rs b/examples/common/src/framework.rs index f26e136d81..06db6092f7 100644 --- a/examples/common/src/framework.rs +++ b/examples/common/src/framework.rs @@ -155,10 +155,12 @@ async fn setup(title: &str) -> Setup { let backends = wgpu::util::backend_bits_from_env().unwrap_or_else(wgpu::Backends::all); let dx12_shader_compiler = wgpu::util::dx12_shader_compiler_from_env().unwrap_or_default(); + let gles_minor_version = wgpu::util::gles_minor_version_from_env().unwrap_or_default(); let instance = wgpu::Instance::new(wgpu::InstanceDescriptor { backends, dx12_shader_compiler, + gles_minor_version, }); let (size, surface) = unsafe { let size = window.inner_size(); diff --git a/examples/timestamp-queries/src/main.rs b/examples/timestamp-queries/src/main.rs index b28926c027..3479122c79 100644 --- a/examples/timestamp-queries/src/main.rs +++ b/examples/timestamp-queries/src/main.rs @@ -179,6 +179,7 @@ async fn run() { let instance = wgpu::Instance::new(wgpu::InstanceDescriptor { backends, dx12_shader_compiler: wgpu::Dx12Compiler::default(), + gles_minor_version: wgpu::Gles3MinorVersion::default(), }); // `request_adapter` instantiates the general connection to the GPU diff --git a/player/tests/test.rs b/player/tests/test.rs index bbaa66cc4e..cd1302777e 100644 --- a/player/tests/test.rs +++ b/player/tests/test.rs @@ -185,6 +185,7 @@ impl Corpus { wgt::InstanceDescriptor { backends: corpus.backends, dx12_shader_compiler: wgt::Dx12Compiler::Fxc, + gles_minor_version: wgt::Gles3MinorVersion::default(), }, ); for &backend in BACKENDS { diff --git a/tests/src/lib.rs b/tests/src/lib.rs index 949afb48a0..fb57d2a5a8 100644 --- a/tests/src/lib.rs +++ b/tests/src/lib.rs @@ -348,9 +348,11 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te fn initialize_adapter() -> (Adapter, SurfaceGuard) { let backends = wgpu::util::backend_bits_from_env().unwrap_or_else(Backends::all); let dx12_shader_compiler = wgpu::util::dx12_shader_compiler_from_env().unwrap_or_default(); + let gles_minor_version = wgpu::util::gles_minor_version_from_env().unwrap_or_default(); let instance = Instance::new(wgpu::InstanceDescriptor { backends, dx12_shader_compiler, + gles_minor_version, }); let surface_guard; let compatible_surface; diff --git a/tests/tests/instance.rs b/tests/tests/instance.rs index e9ff6afff0..b231e8d879 100644 --- a/tests/tests/instance.rs +++ b/tests/tests/instance.rs @@ -6,6 +6,7 @@ fn initialize() { let _ = wgpu::Instance::new(wgpu::InstanceDescriptor { backends: wgpu::util::backend_bits_from_env().unwrap_or_else(wgpu::Backends::all), dx12_shader_compiler: wgpu::util::dx12_shader_compiler_from_env().unwrap_or_default(), + gles_minor_version: wgpu::util::gles_minor_version_from_env().unwrap_or_default(), }); } @@ -13,6 +14,7 @@ fn request_adapter_inner(power: wgt::PowerPreference) { let instance = wgpu::Instance::new(wgpu::InstanceDescriptor { backends: wgpu::util::backend_bits_from_env().unwrap_or_else(wgpu::Backends::all), dx12_shader_compiler: wgpu::util::dx12_shader_compiler_from_env().unwrap_or_default(), + gles_minor_version: wgpu::util::gles_minor_version_from_env().unwrap_or_default(), }); let _adapter = pollster::block_on(instance.request_adapter(&wgpu::RequestAdapterOptions { diff --git a/wgpu-core/src/instance.rs b/wgpu-core/src/instance.rs index cf28777dc6..ae1a395d85 100644 --- a/wgpu-core/src/instance.rs +++ b/wgpu-core/src/instance.rs @@ -82,6 +82,7 @@ impl Instance { name: "wgpu", flags, dx12_shader_compiler: instance_desc.dx12_shader_compiler.clone(), + gles_minor_version: instance_desc.gles_minor_version, }; unsafe { hal::Instance::init(&hal_desc).ok() } } else { diff --git a/wgpu-hal/examples/halmark/main.rs b/wgpu-hal/examples/halmark/main.rs index 21289b18e5..c6b739bf17 100644 --- a/wgpu-hal/examples/halmark/main.rs +++ b/wgpu-hal/examples/halmark/main.rs @@ -96,6 +96,7 @@ impl Example { }, // Can't rely on having DXC available, so use FXC instead dx12_shader_compiler: wgt::Dx12Compiler::Fxc, + gles_minor_version: wgt::Gles3MinorVersion::default(), }; let instance = unsafe { A::Instance::init(&instance_desc)? }; let mut surface = unsafe { diff --git a/wgpu-hal/src/gles/egl.rs b/wgpu-hal/src/gles/egl.rs index 0c8e754971..b904dffee9 100644 --- a/wgpu-hal/src/gles/egl.rs +++ b/wgpu-hal/src/gles/egl.rs @@ -482,6 +482,8 @@ struct Inner { config: khronos_egl::Config, #[cfg_attr(target_os = "emscripten", allow(dead_code))] wl_display: Option<*mut raw::c_void>, + #[cfg_attr(target_os = "emscripten", allow(dead_code))] + force_gles_minor_version: wgt::Gles3MinorVersion, /// Method by which the framebuffer should support srgb srgb_kind: SrgbFrameBufferKind, } @@ -491,6 +493,7 @@ impl Inner { flags: crate::InstanceFlags, egl: Arc, display: khronos_egl::Display, + force_gles_minor_version: wgt::Gles3MinorVersion, ) -> Result { let version = egl.initialize(display).map_err(|_| crate::InstanceError)?; let vendor = egl @@ -542,9 +545,20 @@ impl Inner { //TODO: make it so `Device` == EGL Context let mut context_attributes = vec![ - khronos_egl::CONTEXT_CLIENT_VERSION, + khronos_egl::CONTEXT_MAJOR_VERSION, 3, // Request GLES 3.0 or higher ]; + + if force_gles_minor_version != wgt::Gles3MinorVersion::Automatic { + context_attributes.push(khronos_egl::CONTEXT_MINOR_VERSION); + context_attributes.push(match force_gles_minor_version { + wgt::Gles3MinorVersion::Version0 => 0, + wgt::Gles3MinorVersion::Version1 => 1, + wgt::Gles3MinorVersion::Version2 => 2, + _ => unreachable!(), + }); + } + if flags.contains(crate::InstanceFlags::DEBUG) { if version >= (1, 5) { log::info!("\tEGL context: +debug"); @@ -627,6 +641,7 @@ impl Inner { config, wl_display: None, srgb_kind, + force_gles_minor_version, }) } } @@ -836,7 +851,7 @@ impl crate::Instance for Instance { unsafe { (function)(Some(egl_debug_proc), attributes.as_ptr()) }; } - let inner = Inner::create(desc.flags, egl, display)?; + let inner = Inner::create(desc.flags, egl, display, desc.gles_minor_version)?; Ok(Instance { wsi: WindowSystemInterface { @@ -918,9 +933,13 @@ impl crate::Instance for Instance { ) .unwrap(); - let new_inner = - Inner::create(self.flags, Arc::clone(&inner.egl.instance), display) - .map_err(|_| crate::InstanceError)?; + let new_inner = Inner::create( + self.flags, + Arc::clone(&inner.egl.instance), + display, + inner.force_gles_minor_version, + ) + .map_err(|_| crate::InstanceError)?; let old_inner = std::mem::replace(inner.deref_mut(), new_inner); inner.wl_display = Some(display_handle.display); diff --git a/wgpu-hal/src/lib.rs b/wgpu-hal/src/lib.rs index 1248ee9030..020c665709 100644 --- a/wgpu-hal/src/lib.rs +++ b/wgpu-hal/src/lib.rs @@ -787,6 +787,7 @@ pub struct InstanceDescriptor<'a> { pub name: &'a str, pub flags: InstanceFlags, pub dx12_shader_compiler: wgt::Dx12Compiler, + pub gles_minor_version: wgt::Gles3MinorVersion, } #[derive(Clone, Debug)] diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 310e10a6c2..2fc9f990a8 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -6399,12 +6399,33 @@ pub enum Dx12Compiler { }, } +/// Selects which OpenGL ES 3 minor version to request. +/// +/// When using ANGLE as an OpenGL ES/EGL implementation, explicitly requesting `Version1` can provide a non-conformant ES 3.1 on APIs like D3D11. +#[derive(Clone, Copy, Debug, Default, Eq, PartialEq, Hash)] +pub enum Gles3MinorVersion { + /// No explicit minor version is requested, the driver automatically picks the highest available. + #[default] + Automatic, + + /// Request an ES 3.0 context. + Version0, + + /// Request an ES 3.1 context. + Version1, + + /// Request an ES 3.2 context. + Version2, +} + /// Options for creating an instance. pub struct InstanceDescriptor { /// Which `Backends` to enable. pub backends: Backends, /// Which DX12 shader compiler to use. pub dx12_shader_compiler: Dx12Compiler, + /// Which OpenGL ES 3 minor version to request. + pub gles_minor_version: Gles3MinorVersion, } impl Default for InstanceDescriptor { @@ -6412,6 +6433,7 @@ impl Default for InstanceDescriptor { Self { backends: Backends::all(), dx12_shader_compiler: Dx12Compiler::default(), + gles_minor_version: Gles3MinorVersion::default(), } } } diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 64f89cc487..1c3e1a58b5 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -34,12 +34,12 @@ pub use wgt::{ BufferBindingType, BufferSize, BufferUsages, Color, ColorTargetState, ColorWrites, CommandBufferDescriptor, CompareFunction, CompositeAlphaMode, DepthBiasState, DepthStencilState, DeviceType, DownlevelCapabilities, DownlevelFlags, Dx12Compiler, - DynamicOffset, Extent3d, Face, Features, FilterMode, FrontFace, ImageDataLayout, - ImageSubresourceRange, IndexFormat, InstanceDescriptor, Limits, MultisampleState, Origin2d, - Origin3d, PipelineStatisticsTypes, PolygonMode, PowerPreference, PredefinedColorSpace, - PresentMode, PresentationTimestamp, PrimitiveState, PrimitiveTopology, PushConstantRange, - QueryType, RenderBundleDepthStencil, SamplerBindingType, SamplerBorderColor, ShaderLocation, - ShaderModel, ShaderStages, StencilFaceState, StencilOperation, StencilState, + DynamicOffset, Extent3d, Face, Features, FilterMode, FrontFace, Gles3MinorVersion, + ImageDataLayout, ImageSubresourceRange, IndexFormat, InstanceDescriptor, Limits, + MultisampleState, Origin2d, Origin3d, PipelineStatisticsTypes, PolygonMode, PowerPreference, + PredefinedColorSpace, PresentMode, PresentationTimestamp, PrimitiveState, PrimitiveTopology, + PushConstantRange, QueryType, RenderBundleDepthStencil, SamplerBindingType, SamplerBorderColor, + ShaderLocation, ShaderModel, ShaderStages, StencilFaceState, StencilOperation, StencilState, StorageTextureAccess, SurfaceCapabilities, SurfaceStatus, TextureAspect, TextureDimension, TextureFormat, TextureFormatFeatureFlags, TextureFormatFeatures, TextureSampleType, TextureUsages, TextureViewDimension, VertexAttribute, VertexFormat, VertexStepMode, diff --git a/wgpu/src/util/init.rs b/wgpu/src/util/init.rs index 9d186b685a..484bae611b 100644 --- a/wgpu/src/util/init.rs +++ b/wgpu/src/util/init.rs @@ -114,3 +114,22 @@ pub fn dx12_shader_compiler_from_env() -> Option { }, ) } + +/// Choose which minor OpenGL ES version to use from the environment variable `WGPU_GLES_MINOR_VERSION`. +/// +/// Possible values are `0`, `1`, `2` or `automatic`. Case insensitive. +pub fn gles_minor_version_from_env() -> Option { + Some( + match std::env::var("WGPU_GLES_MINOR_VERSION") + .as_deref() + .map(str::to_lowercase) + .as_deref() + { + Ok("automatic") => wgt::Gles3MinorVersion::Automatic, + Ok("0") => wgt::Gles3MinorVersion::Version0, + Ok("1") => wgt::Gles3MinorVersion::Version1, + Ok("2") => wgt::Gles3MinorVersion::Version2, + _ => return None, + }, + ) +} From edafd97349081aaf19dfcdb038963b14fec794d6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Aug 2023 12:19:09 -0400 Subject: [PATCH 016/135] Bump serde_json from 1.0.104 to 1.0.105 (#4060) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- wgpu-types/Cargo.toml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5cb3ee4ab1..81f9442040 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2428,9 +2428,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.104" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c" +checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" dependencies = [ "indexmap 2.0.0", "itoa", diff --git a/Cargo.toml b/Cargo.toml index 2b7a791e31..c6fa10359a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -89,7 +89,7 @@ raw-window-handle = "0.5" renderdoc-sys = "1.0.0" ron = "0.8" serde = "1" -serde_json = "1.0.104" +serde_json = "1.0.105" smallvec = "1" static_assertions = "1.1.0" thiserror = "1" diff --git a/wgpu-types/Cargo.toml b/wgpu-types/Cargo.toml index 313d67bfb5..4ef59398d0 100644 --- a/wgpu-types/Cargo.toml +++ b/wgpu-types/Cargo.toml @@ -42,4 +42,4 @@ web-sys = { version = "0.3.64", features = [ [dev-dependencies] serde = { version = "1", features = ["serde_derive"] } -serde_json = "1.0.104" +serde_json = "1.0.105" From 384bd84c3d3280739bc703b0be4af6988fe36f75 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Aug 2023 12:19:16 -0400 Subject: [PATCH 017/135] Bump anyhow from 1.0.72 to 1.0.74 (#4061) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 81f9442040..aae993d1f0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -88,9 +88,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.72" +version = "1.0.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b13c32d80ecc7ab747b80c3784bce54ee8a7a0cc4fbda9bf4cda2cf6fe90854" +checksum = "8c6f84b74db2535ebae81eede2f39b947dcbf01d093ae5f791e5dd414a1bf289" [[package]] name = "arrayref" From f61ed50dbfb564636937a395b9e580208d7bc23a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Aug 2023 12:19:21 -0400 Subject: [PATCH 018/135] Bump thiserror from 1.0.44 to 1.0.46 (#4062) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index aae993d1f0..c1a7e2a77b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2641,18 +2641,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.44" +version = "1.0.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90" +checksum = "d9207952ae1a003f42d3d5e892dac3c6ba42aa6ac0c79a6a91a2b5cb4253e75c" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.44" +version = "1.0.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96" +checksum = "f1728216d3244de4f14f14f8c15c79be1a7c67867d28d69b719690e2a19fb445" dependencies = [ "proc-macro2", "quote", From a2c929427b478f52cccc0fc6bf1ca30f0537726f Mon Sep 17 00:00:00 2001 From: Kevin Reid Date: Wed, 16 Aug 2023 14:11:30 -0700 Subject: [PATCH 019/135] webgl: Comment why it's okay to overwrite `webgl2_context`. (#4064) --- wgpu-hal/src/gles/web.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/wgpu-hal/src/gles/web.rs b/wgpu-hal/src/gles/web.rs index 49bc5656de..02cd6a3ecb 100644 --- a/wgpu-hal/src/gles/web.rs +++ b/wgpu-hal/src/gles/web.rs @@ -25,6 +25,7 @@ impl AdapterContext { #[derive(Debug)] pub struct Instance { + /// Set when a canvas is provided, and used to implement [`Instance::enumerate_adapters()`]. webgl2_context: Mutex>, } @@ -82,6 +83,8 @@ impl Instance { .dyn_into() .expect("canvas context is not a WebGl2RenderingContext"); + // It is not inconsistent to overwrite an existing context, because the only thing that + // `self.webgl2_context` is used for is producing the response to `enumerate_adapters()`. *self.webgl2_context.lock() = Some(webgl2_context.clone()); Ok(Surface { From 7b07f42beb3b4e430bafbf50e5c2ffc93cc5b78e Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Wed, 16 Aug 2023 23:12:19 +0200 Subject: [PATCH 020/135] Use i32::MAX as the max buffer size for Dx12 (#4020) --- CHANGELOG.md | 1 + wgpu-hal/src/dx12/adapter.rs | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8da75f85c5..5f9e677018 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -191,6 +191,7 @@ By @fornwall in [#3904](https://github.com/gfx-rs/wgpu/pull/3904) and [#3905](ht #### DX12 - Disable suballocation on Intel Iris(R) Xe. By @xiaopengli89 in [#3668](https://github.com/gfx-rs/wgpu/pull/3668) +- Change the `max_buffer_size` limit from `u64::MAX` to `i32::MAX`. By @nical in [#4020](https://github.com/gfx-rs/wgpu/pull/4020) #### WebGPU diff --git a/wgpu-hal/src/dx12/adapter.rs b/wgpu-hal/src/dx12/adapter.rs index eb94d4eb11..da81252abd 100644 --- a/wgpu-hal/src/dx12/adapter.rs +++ b/wgpu-hal/src/dx12/adapter.rs @@ -354,7 +354,10 @@ impl super::Adapter { max_compute_workgroup_size_z: d3d12_ty::D3D12_CS_THREAD_GROUP_MAX_Z, max_compute_workgroups_per_dimension: d3d12_ty::D3D12_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION, - max_buffer_size: u64::MAX, + // Dx12 does not expose a maximum buffer size in the API. + // This limit is chosen to avoid potential issues with drivers should they internally + // store buffer sizes using 32 bit ints (a situation we have already encountered with vulkan). + max_buffer_size: i32::MAX as u64, }, alignments: crate::Alignments { buffer_copy_offset: wgt::BufferSize::new( From 76aa03c9dcca136f2e9c46c04be84b3bed6efde2 Mon Sep 17 00:00:00 2001 From: JMS55 <47158642+JMS55@users.noreply.github.com> Date: Wed, 16 Aug 2023 20:26:29 -0700 Subject: [PATCH 021/135] Faster set_bind_group for WebGPU backend (#4068) --- wgpu/src/backend/web.rs | 66 ++++++++++++++++++++++++----------------- 1 file changed, 39 insertions(+), 27 deletions(-) diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index 5fb8614a23..97f5cb945d 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -2604,15 +2604,19 @@ impl crate::context::Context for Context { bind_group_data: &Self::BindGroupData, offsets: &[wgt::DynamicOffset], ) { - pass_data - .0 - .set_bind_group_with_u32_array_and_f64_and_dynamic_offsets_data_length( - index, - &bind_group_data.0, - offsets, - 0f64, - offsets.len() as u32, - ); + if offsets.is_empty() { + pass_data.0.set_bind_group(index, &bind_group_data.0); + } else { + pass_data + .0 + .set_bind_group_with_u32_array_and_f64_and_dynamic_offsets_data_length( + index, + &bind_group_data.0, + offsets, + 0f64, + offsets.len() as u32, + ); + } } fn compute_pass_set_push_constants( @@ -2729,15 +2733,19 @@ impl crate::context::Context for Context { bind_group_data: &Self::BindGroupData, offsets: &[wgt::DynamicOffset], ) { - encoder_data - .0 - .set_bind_group_with_u32_array_and_f64_and_dynamic_offsets_data_length( - index, - &bind_group_data.0, - offsets, - 0f64, - offsets.len() as u32, - ); + if offsets.is_empty() { + encoder_data.0.set_bind_group(index, &bind_group_data.0); + } else { + encoder_data + .0 + .set_bind_group_with_u32_array_and_f64_and_dynamic_offsets_data_length( + index, + &bind_group_data.0, + offsets, + 0f64, + offsets.len() as u32, + ); + } } fn render_bundle_encoder_set_index_buffer( @@ -2944,15 +2952,19 @@ impl crate::context::Context for Context { bind_group_data: &Self::BindGroupData, offsets: &[wgt::DynamicOffset], ) { - pass_data - .0 - .set_bind_group_with_u32_array_and_f64_and_dynamic_offsets_data_length( - index, - &bind_group_data.0, - offsets, - 0f64, - offsets.len() as u32, - ); + if offsets.is_empty() { + pass_data.0.set_bind_group(index, &bind_group_data.0); + } else { + pass_data + .0 + .set_bind_group_with_u32_array_and_f64_and_dynamic_offsets_data_length( + index, + &bind_group_data.0, + offsets, + 0f64, + offsets.len() as u32, + ); + } } fn render_pass_set_index_buffer( From f58be7b8f17f3ec828ca77da29fb31a747fcb261 Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Thu, 17 Aug 2023 21:55:58 +0200 Subject: [PATCH 022/135] DX12 set `Features::VERTEX_WRITABLE_STORAGE` based on the right FL (#4033) --- CHANGELOG.md | 1 + wgpu-hal/src/dx12/adapter.rs | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5f9e677018..712ac1d843 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -96,6 +96,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) #### DX12 - DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032). +- Set `Features::VERTEX_WRITABLE_STORAGE` based on the right feature level. By @teoxoy in [#4033](https://github.com/gfx-rs/wgpu/pull/4033). ### Documentation diff --git a/wgpu-hal/src/dx12/adapter.rs b/wgpu-hal/src/dx12/adapter.rs index da81252abd..18873b9d6c 100644 --- a/wgpu-hal/src/dx12/adapter.rs +++ b/wgpu-hal/src/dx12/adapter.rs @@ -242,7 +242,6 @@ impl super::Adapter { | wgt::Features::ADDRESS_MODE_CLAMP_TO_BORDER | wgt::Features::ADDRESS_MODE_CLAMP_TO_ZERO | wgt::Features::POLYGON_MODE_LINE - | wgt::Features::VERTEX_WRITABLE_STORAGE | wgt::Features::TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES | wgt::Features::TIMESTAMP_QUERY | wgt::Features::TIMESTAMP_QUERY_INSIDE_PASSES @@ -258,6 +257,10 @@ impl super::Adapter { // write the results there, and issue a bunch of copy commands. //| wgt::Features::PIPELINE_STATISTICS_QUERY + if max_feature_level as u32 >= d3d12::FeatureLevel::L11_1 as u32 { + features |= wgt::Features::VERTEX_WRITABLE_STORAGE; + } + features.set( wgt::Features::CONSERVATIVE_RASTERIZATION, options.ConservativeRasterizationTier From b9acec67805154b659e6dd2c7ca0bbbea7a9f414 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 17 Aug 2023 15:57:45 -0400 Subject: [PATCH 023/135] Bump anyhow from 1.0.74 to 1.0.75 (#4070) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c1a7e2a77b..f6a2975463 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -88,9 +88,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.74" +version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c6f84b74db2535ebae81eede2f39b947dcbf01d093ae5f791e5dd414a1bf289" +checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" [[package]] name = "arrayref" From 6accf3266dbed9b7a32a56afc2fd4d4a25fa2322 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 17 Aug 2023 15:57:50 -0400 Subject: [PATCH 024/135] Bump tokio from 1.31.0 to 1.32.0 (#4069) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f6a2975463..978b1ac826 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2726,9 +2726,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.31.0" +version = "1.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40de3a2ba249dcb097e01be5e67a5ff53cf250397715a071a81543e8a832a920" +checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" dependencies = [ "backtrace", "bytes", diff --git a/Cargo.toml b/Cargo.toml index c6fa10359a..d3a60f8e2f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -141,7 +141,7 @@ deno_url = "0.106.0" deno_web = "0.137.0" deno_webidl = "0.106.0" deno_webgpu = { path = "./deno_webgpu" } -tokio = "1.31.0" +tokio = "1.32.0" termcolor = "1.2.0" [patch."https://github.com/gfx-rs/naga"] From bf324fb947b0a792082470e72e504c17e9d10bae Mon Sep 17 00:00:00 2001 From: Fredrik Fornwall Date: Fri, 18 Aug 2023 11:05:34 +0200 Subject: [PATCH 025/135] Make power_preference_from_env() respect WGPU_POWER_PREF=none (#4076) Also update wgpu/README.md now that default() is None. --- CHANGELOG.md | 1 + README.md | 2 +- wgpu/README.md | 4 ++-- wgpu/src/util/init.rs | 1 + 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 712ac1d843..4690aede91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -73,6 +73,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Omit texture store bound checks since they are no-ops if out of bounds on all APIs. By @teoxoy in [#3975](https://github.com/gfx-rs/wgpu/pull/3975) - Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL`. By @teoxoy in [#4031](https://github.com/gfx-rs/wgpu/pull/4031) - Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. By @James2022-rgb in [#4058](https://github.com/gfx-rs/wgpu/pull/4058) +- Make `WGPU_POWER_PREF=none` a valid value. By @fornwall in [4076](https://github.com/gfx-rs/wgpu/pull/4076) #### Vulkan diff --git a/README.md b/README.md index dfdb3a5a8e..44e036a2b2 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,7 @@ All testing and example infrastructure shares the same set of environment variab - `WGPU_ADAPTER_NAME` with a substring of the name of the adapter you want to use (ex. `1080` will match `NVIDIA GeForce 1080ti`). - `WGPU_BACKEND` with a comma separated list of the backends you want to use (`vulkan`, `metal`, `dx12`, `dx11`, or `gl`). -- `WGPU_POWER_PREF` with the power preference to choose when a specific adapter name isn't specified (`high` or `low`) +- `WGPU_POWER_PREF` with the power preference to choose when a specific adapter name isn't specified (`high`, `low` or `none`) - `WGPU_DX12_COMPILER` with the DX12 shader compiler you wish to use (`dxc` or `fxc`, note that `dxc` requires `dxil.dll` and `dxcompiler.dll` to be in the working directory otherwise it will fall back to `fxc`) - `WGPU_GLES_MINOR_VERSION` with the minor OpenGL ES 3 version number to request (`0`, `1`, `2` or `automatic`). diff --git a/wgpu/README.md b/wgpu/README.md index 331cb3b049..4f4f85a1e5 100644 --- a/wgpu/README.md +++ b/wgpu/README.md @@ -35,9 +35,9 @@ The following environment variables can be used to configure how the framework e - `WGPU_POWER_PREF` - Options: `low`, `high` + Options: `low`, `high`, `none` - If unset a low power adapter is preferred. + If unset power usage is not considered when choosing an adapter. - `WGPU_ADAPTER_NAME` diff --git a/wgpu/src/util/init.rs b/wgpu/src/util/init.rs index 484bae611b..987e8400fd 100644 --- a/wgpu/src/util/init.rs +++ b/wgpu/src/util/init.rs @@ -30,6 +30,7 @@ pub fn power_preference_from_env() -> Option { { Ok("low") => PowerPreference::LowPower, Ok("high") => PowerPreference::HighPerformance, + Ok("none") => PowerPreference::None, _ => return None, }, ) From 1ee4bb502cd884ed9ff46657a364d9bc9fc008fd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 19 Aug 2023 10:22:51 +0200 Subject: [PATCH 026/135] Bump thiserror from 1.0.46 to 1.0.47 (#4074) Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.46 to 1.0.47. - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.46...1.0.47) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 978b1ac826..b1f41fd536 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2641,18 +2641,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.46" +version = "1.0.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9207952ae1a003f42d3d5e892dac3c6ba42aa6ac0c79a6a91a2b5cb4253e75c" +checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.46" +version = "1.0.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1728216d3244de4f14f14f8c15c79be1a7c67867d28d69b719690e2a19fb445" +checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b" dependencies = [ "proc-macro2", "quote", From 636bef9cd54e5cb4a7bbc219433a3a77ea92dae8 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Sun, 6 Aug 2023 11:40:02 -0700 Subject: [PATCH 027/135] Tracker mod docs: fix explanation of index re-use. --- wgpu-core/src/track/mod.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/wgpu-core/src/track/mod.rs b/wgpu-core/src/track/mod.rs index 111b4e9618..69e29fc59f 100644 --- a/wgpu-core/src/track/mod.rs +++ b/wgpu-core/src/track/mod.rs @@ -16,8 +16,10 @@ is a corresponding debug assert the checks if that access is valid. This helps get bugs caught fast, while still letting users not need to pay for the bounds checks. -In wgpu, resource IDs are allocated and re-used, so will always be as low -as reasonably possible. This allows us to use the ID as an index into an array. +In wgpu, each resource ID includes a bitfield holding an index. +Indices are allocated and re-used, so they will always be as low as +reasonably possible. This allows us to use IDs to index into an array +of tracking information. ## Statefulness From d755143c89ceeb925b84164f30b0d5bb72b0c236 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Aug 2023 14:26:04 -0400 Subject: [PATCH 028/135] Bump png from 0.17.9 to 0.17.10 (#4079) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b1f41fd536..07a169e348 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2074,9 +2074,9 @@ dependencies = [ [[package]] name = "png" -version = "0.17.9" +version = "0.17.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59871cc5b6cce7eaccca5a802b4173377a1c2ba90654246789a8fa2334426d11" +checksum = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64" dependencies = [ "bitflags 1.3.2", "crc32fast", diff --git a/Cargo.toml b/Cargo.toml index d3a60f8e2f..9455290b3d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -82,7 +82,7 @@ obj = "0.10" # parking_lot 0.12 switches from `winapi` to `windows`; permit either parking_lot = ">=0.11,<0.13" pico-args = { version = "0.5.0", features = ["eq-separator", "short-space-opt", "combined-flags"] } -png = "0.17.9" +png = "0.17.10" pollster = "0.3" profiling = { version = "1", default-features = false } raw-window-handle = "0.5" From 7c65aec9eae4e4d47546f6a5f2c36c968084abd3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Aug 2023 14:26:14 -0400 Subject: [PATCH 029/135] Bump ron from 0.8.0 to 0.8.1 (#4075) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 07a169e348..73a6df9468 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -185,9 +185,9 @@ dependencies = [ [[package]] name = "base64" -version = "0.13.1" +version = "0.21.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" [[package]] name = "base64-simd" @@ -2272,13 +2272,14 @@ checksum = "216080ab382b992234dda86873c18d4c48358f5cfcb70fd693d7f6f2131b628b" [[package]] name = "ron" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "300a51053b1cb55c80b7a9fde4120726ddf25ca241a1cbb926626f62fb136bff" +checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94" dependencies = [ "base64", - "bitflags 1.3.2", + "bitflags 2.4.0", "serde", + "serde_derive", ] [[package]] From c7e262c5d6fc52e672e5f796d73215e34f683189 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Aug 2023 23:51:37 -0400 Subject: [PATCH 030/135] Bump serde from 1.0.183 to 1.0.185 (#4080) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 73a6df9468..7c4ae3bdbd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2400,9 +2400,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.183" +version = "1.0.185" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c" +checksum = "be9b6f69f1dfd54c3b568ffa45c310d6973a5e5148fd40cf515acaf38cf5bc31" dependencies = [ "serde_derive", ] @@ -2418,9 +2418,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.183" +version = "1.0.185" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816" +checksum = "dc59dfdcbad1437773485e0367fea4b090a2e0a16d9ffc46af47764536a298ec" dependencies = [ "proc-macro2", "quote", From ac2075e164171427a146ccd5de57ff35491580e0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 24 Aug 2023 12:47:27 +0200 Subject: [PATCH 031/135] Bump serde from 1.0.185 to 1.0.186 (#4086) Bumps [serde](https://github.com/serde-rs/serde) from 1.0.185 to 1.0.186. - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.185...v1.0.186) --- updated-dependencies: - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7c4ae3bdbd..6890eeeee2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2400,9 +2400,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.185" +version = "1.0.186" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be9b6f69f1dfd54c3b568ffa45c310d6973a5e5148fd40cf515acaf38cf5bc31" +checksum = "9f5db24220c009de9bd45e69fb2938f4b6d2df856aa9304ce377b3180f83b7c1" dependencies = [ "serde_derive", ] @@ -2418,9 +2418,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.185" +version = "1.0.186" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc59dfdcbad1437773485e0367fea4b090a2e0a16d9ffc46af47764536a298ec" +checksum = "5ad697f7e0b65af4983a4ce8f56ed5b357e8d3c36651bf6a7e13639c17b8e670" dependencies = [ "proc-macro2", "quote", From 399637e2b8b8657a80913a36e5608bb01106c57b Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Fri, 25 Aug 2023 15:48:22 -0400 Subject: [PATCH 032/135] Bind group layout dedup (#3925) * Remove generic parameter in compat::Manager. The code is specific to bind group layout ids and the generic parameter gets in the way. * Add a test. The test actually covers wgpu's configuration where deduplication does not require the indirection rather than the new code. I used it to debug the new code with the configuration hard-coded. It's tedious to add a test to cover dedpuplication of bind group layouts for users of wgpu_core to provide their IDs, we can rely on the CTS which has test for that. * Implement bind group layout deduplication for all configurations Currently wgpu-core implement bind group layout deduplication only when it creates its own resource IDs. In other words it works for wgpu but not in Firefox. This PR bridges the gap by allowing an optional indirection in bind group layouts: each BGL may store an ID referring to its "deduplicated" BGL. When referring to a BGL the rest of the code must make sure to follow the indirection. The exception is command buffer processing which is considered hot code and where we first validate against the provided BGL ID and only follow the indirection if the initial check failed. The main pain point with this approach is the various places where wgpu-core manually updates reference counts: we have to be careful about following the indirection to track the right BGL. * Avoid making decisions based on the size of some generic type. --- player/src/lib.rs | 6 +- tests/tests/bind_group_layout_dedup.rs | 144 +++++++++++++++++++++++++ tests/tests/root.rs | 1 + wgpu-core/src/binding_model.rs | 32 ++++++ wgpu-core/src/command/bind.rs | 104 ++++++++++-------- wgpu-core/src/command/compute.rs | 16 ++- wgpu-core/src/command/render.rs | 27 +++-- wgpu-core/src/device/global.rs | 52 ++++++--- wgpu-core/src/device/life.rs | 26 +++-- wgpu-core/src/device/resource.rs | 20 ++-- wgpu-core/src/hub.rs | 1 + wgpu-core/src/identity.rs | 7 +- 12 files changed, 352 insertions(+), 84 deletions(-) create mode 100644 tests/tests/bind_group_layout_dedup.rs diff --git a/player/src/lib.rs b/player/src/lib.rs index f0043cbabe..a4be0b1c81 100644 --- a/player/src/lib.rs +++ b/player/src/lib.rs @@ -36,7 +36,11 @@ impl wgc::identity::IdentityHandlerFactory< IdentityPassThrough(PhantomData) } } -impl wgc::identity::GlobalIdentityHandlerFactory for IdentityPassThroughFactory {} +impl wgc::identity::GlobalIdentityHandlerFactory for IdentityPassThroughFactory { + fn ids_are_generated_in_wgpu() -> bool { + false + } +} pub trait GlobalPlay { fn encode_commands( diff --git a/tests/tests/bind_group_layout_dedup.rs b/tests/tests/bind_group_layout_dedup.rs new file mode 100644 index 0000000000..03bc1f1c5a --- /dev/null +++ b/tests/tests/bind_group_layout_dedup.rs @@ -0,0 +1,144 @@ +use wgpu_test::{initialize_test, TestParameters}; + +#[test] +fn bind_group_layout_deduplication() { + initialize_test(TestParameters::default(), |ctx| { + let entries_1 = &[]; + + let entries_2 = &[wgpu::BindGroupLayoutEntry { + binding: 0, + visibility: wgpu::ShaderStages::VERTEX, + ty: wgpu::BindingType::Buffer { + ty: wgpu::BufferBindingType::Uniform, + has_dynamic_offset: false, + min_binding_size: None, + }, + count: None, + }]; + + let bgl_1a = ctx + .device + .create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: entries_1, + }); + + let _bgl_2 = ctx + .device + .create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: entries_2, + }); + + let bgl_1b = ctx + .device + .create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: entries_1, + }); + + let bg_1a = ctx.device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, + layout: &bgl_1a, + entries: &[], + }); + + let bg_1b = ctx.device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, + layout: &bgl_1b, + entries: &[], + }); + + let pipeline_layout = ctx + .device + .create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { + label: None, + bind_group_layouts: &[&bgl_1b], + push_constant_ranges: &[], + }); + + let module = ctx + .device + .create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(SHADER_SRC.into()), + }); + + let targets = &[Some(wgpu::ColorTargetState { + format: wgpu::TextureFormat::Rgba8Unorm, + blend: None, + write_mask: Default::default(), + })]; + + let desc = wgpu::RenderPipelineDescriptor { + label: None, + layout: Some(&pipeline_layout), + vertex: wgpu::VertexState { + module: &module, + entry_point: "vs_main", + buffers: &[], + }, + fragment: Some(wgpu::FragmentState { + module: &module, + entry_point: "fs_main", + targets, + }), + primitive: wgpu::PrimitiveState::default(), + depth_stencil: None, + multiview: None, + multisample: wgpu::MultisampleState::default(), + }; + + let pipeline = ctx.device.create_render_pipeline(&desc); + + let texture = ctx.device.create_texture(&wgpu::TextureDescriptor { + label: None, + dimension: wgpu::TextureDimension::D2, + size: wgpu::Extent3d { + width: 32, + height: 32, + depth_or_array_layers: 1, + }, + sample_count: 1, + mip_level_count: 1, + format: wgpu::TextureFormat::Rgba8Unorm, + usage: wgpu::TextureUsages::RENDER_ATTACHMENT, + view_formats: &[], + }); + + let texture_view = texture.create_view(&Default::default()); + + let mut encoder = ctx.device.create_command_encoder(&Default::default()); + + { + let mut pass = encoder.begin_render_pass(&wgpu::RenderPassDescriptor { + label: None, + color_attachments: &[Some(wgpu::RenderPassColorAttachment { + view: &texture_view, + resolve_target: None, + ops: Default::default(), + })], + depth_stencil_attachment: None, + occlusion_query_set: None, + timestamp_writes: None, + }); + + pass.set_bind_group(0, &bg_1b, &[]); + + pass.set_pipeline(&pipeline); + + pass.draw(0..6, 0..1); + + pass.set_bind_group(0, &bg_1a, &[]); + + pass.draw(0..6, 0..1); + } + + ctx.queue.submit(Some(encoder.finish())); + }) +} + +const SHADER_SRC: &str = " +@vertex fn vs_main() -> @builtin(position) vec4 { return vec4(1.0); } +@fragment fn fs_main() -> @location(0) vec4 { return vec4(1.0); } +"; diff --git a/tests/tests/root.rs b/tests/tests/root.rs index 86139c9bd2..b376ab4981 100644 --- a/tests/tests/root.rs +++ b/tests/tests/root.rs @@ -5,6 +5,7 @@ mod regression { mod issue_4024; } +mod bind_group_layout_dedup; mod buffer; mod buffer_copy; mod buffer_usages; diff --git a/wgpu-core/src/binding_model.rs b/wgpu-core/src/binding_model.rs index a06476a212..e9723fa60c 100644 --- a/wgpu-core/src/binding_model.rs +++ b/wgpu-core/src/binding_model.rs @@ -436,6 +436,8 @@ pub struct BindGroupLayoutDescriptor<'a> { pub(crate) type BindEntryMap = FastHashMap; +pub type BindGroupLayouts = crate::storage::Storage, BindGroupLayoutId>; + /// Bind group layout. /// /// The lifetime of BGLs is a bit special. They are only referenced on CPU @@ -450,6 +452,12 @@ pub struct BindGroupLayout { pub(crate) device_id: Stored, pub(crate) multi_ref_count: MultiRefCount, pub(crate) entries: BindEntryMap, + // When a layout created and there already exists a compatible layout the new layout + // keeps a reference to the older compatible one. In some places we substitute the + // bind group layout id with its compatible sibling. + // Since this substitution can come at a cost, it is skipped when wgpu-core generates + // its own resource IDs. + pub(crate) compatible_layout: Option>, #[allow(unused)] pub(crate) dynamic_count: usize, pub(crate) count_validator: BindingTypeMaxCountValidator, @@ -472,6 +480,30 @@ impl Resource for BindGroupLayout { } } +// If a bindgroup needs to be substitued with its compatible equivalent, return the latter. +pub(crate) fn try_get_bind_group_layout( + layouts: &BindGroupLayouts, + id: BindGroupLayoutId, +) -> Option<&BindGroupLayout> { + let layout = layouts.get(id).ok()?; + if let Some(compat) = layout.compatible_layout { + return Some(&layouts[compat]); + } + + Some(layout) +} + +pub(crate) fn get_bind_group_layout( + layouts: &BindGroupLayouts, + id: Valid, +) -> (Valid, &BindGroupLayout) { + let layout = &layouts[id]; + layout + .compatible_layout + .map(|compat| (compat, &layouts[compat])) + .unwrap_or((id, layout)) +} + #[derive(Clone, Debug, Error)] #[non_exhaustive] pub enum CreatePipelineLayoutError { diff --git a/wgpu-core/src/command/bind.rs b/wgpu-core/src/command/bind.rs index 9b87028e38..05f90c6bc9 100644 --- a/wgpu-core/src/command/bind.rs +++ b/wgpu-core/src/command/bind.rs @@ -1,8 +1,10 @@ use crate::{ - binding_model::{BindGroup, LateMinBufferBindingSizeMismatch, PipelineLayout}, + binding_model::{ + BindGroup, BindGroupLayouts, LateMinBufferBindingSizeMismatch, PipelineLayout, + }, device::SHADER_STAGE_COUNT, hal_api::HalApi, - id::{BindGroupId, BindGroupLayoutId, PipelineLayoutId, Valid}, + id::{BindGroupId, PipelineLayoutId, Valid}, pipeline::LateSizedBufferGroup, storage::Storage, Stored, @@ -13,37 +15,42 @@ use arrayvec::ArrayVec; type BindGroupMask = u8; mod compat { + use crate::{ + binding_model::BindGroupLayouts, + id::{BindGroupLayoutId, Valid}, + }; use std::ops::Range; - #[derive(Debug)] - struct Entry { - assigned: Option, - expected: Option, + #[derive(Debug, Default)] + struct Entry { + assigned: Option>, + expected: Option>, } - impl Default for Entry { - fn default() -> Self { - Self { - assigned: None, - expected: None, - } - } - } - impl Entry { + + impl Entry { fn is_active(&self) -> bool { self.assigned.is_some() && self.expected.is_some() } - fn is_valid(&self) -> bool { - self.expected.is_none() || self.expected == self.assigned + fn is_valid(&self, bind_group_layouts: &BindGroupLayouts) -> bool { + if self.expected.is_none() || self.expected == self.assigned { + return true; + } + + if let Some(id) = self.assigned { + return bind_group_layouts[id].compatible_layout == self.expected; + } + + false } } #[derive(Debug)] - pub struct Manager { - entries: [Entry; hal::MAX_BIND_GROUPS], + pub(crate) struct BoundBindGroupLayouts { + entries: [Entry; hal::MAX_BIND_GROUPS], } - impl Manager { + impl BoundBindGroupLayouts { pub fn new() -> Self { Self { entries: Default::default(), @@ -60,7 +67,10 @@ mod compat { start_index..end.max(start_index) } - pub fn update_expectations(&mut self, expectations: &[T]) -> Range { + pub fn update_expectations( + &mut self, + expectations: &[Valid], + ) -> Range { let start_index = self .entries .iter() @@ -79,7 +89,7 @@ mod compat { self.make_range(start_index) } - pub fn assign(&mut self, index: usize, value: T) -> Range { + pub fn assign(&mut self, index: usize, value: Valid) -> Range { self.entries[index].assigned = Some(value); self.make_range(index) } @@ -91,9 +101,12 @@ mod compat { .filter_map(|(i, e)| if e.is_active() { Some(i) } else { None }) } - pub fn invalid_mask(&self) -> super::BindGroupMask { + pub fn invalid_mask( + &self, + bind_group_layouts: &BindGroupLayouts, + ) -> super::BindGroupMask { self.entries.iter().enumerate().fold(0, |mask, (i, entry)| { - if entry.is_valid() { + if entry.is_valid(bind_group_layouts) { mask } else { mask | 1u8 << i @@ -104,32 +117,36 @@ mod compat { #[test] fn test_compatibility() { - let mut man = Manager::::new(); + fn id(val: u32) -> Valid { + BindGroupLayoutId::dummy(val) + } + + let mut man = BoundBindGroupLayouts::new(); man.entries[0] = Entry { - expected: Some(3), - assigned: Some(2), + expected: Some(id(3)), + assigned: Some(id(2)), }; man.entries[1] = Entry { - expected: Some(1), - assigned: Some(1), + expected: Some(id(1)), + assigned: Some(id(1)), }; man.entries[2] = Entry { - expected: Some(4), - assigned: Some(5), + expected: Some(id(4)), + assigned: Some(id(5)), }; // check that we rebind [1] after [0] became compatible - assert_eq!(man.assign(0, 3), 0..2); + assert_eq!(man.assign(0, id(3)), 0..2); // check that nothing is rebound - assert_eq!(man.update_expectations(&[3, 2]), 1..1); + assert_eq!(man.update_expectations(&[id(3), id(2)]), 1..1); // check that [1] and [2] are rebound on expectations change - assert_eq!(man.update_expectations(&[3, 1, 5]), 1..3); + assert_eq!(man.update_expectations(&[id(3), id(1), id(5)]), 1..3); // reset the first two bindings - assert_eq!(man.update_expectations(&[4, 6, 5]), 0..0); + assert_eq!(man.update_expectations(&[id(4), id(6), id(5)]), 0..0); // check that nothing is rebound, even if there is a match, // since earlier binding is incompatible. - assert_eq!(man.assign(1, 6), 1..1); + assert_eq!(man.assign(1, id(6)), 1..1); // finally, bind everything - assert_eq!(man.assign(0, 4), 0..3); + assert_eq!(man.assign(0, id(4)), 0..3); } } @@ -161,7 +178,7 @@ impl EntryPayload { #[derive(Debug)] pub(super) struct Binder { pub(super) pipeline_layout_id: Option>, //TODO: strongly `Stored` - manager: compat::Manager>, + manager: compat::BoundBindGroupLayouts, payloads: [EntryPayload; hal::MAX_BIND_GROUPS], } @@ -169,14 +186,14 @@ impl Binder { pub(super) fn new() -> Self { Self { pipeline_layout_id: None, - manager: compat::Manager::new(), + manager: compat::BoundBindGroupLayouts::new(), payloads: Default::default(), } } pub(super) fn reset(&mut self) { self.pipeline_layout_id = None; - self.manager = compat::Manager::new(); + self.manager = compat::BoundBindGroupLayouts::new(); for payload in self.payloads.iter_mut() { payload.reset(); } @@ -275,8 +292,11 @@ impl Binder { .map(move |index| payloads[index].group_id.as_ref().unwrap().value) } - pub(super) fn invalid_mask(&self) -> BindGroupMask { - self.manager.invalid_mask() + pub(super) fn invalid_mask( + &self, + bind_group_layouts: &BindGroupLayouts, + ) -> BindGroupMask { + self.manager.invalid_mask(bind_group_layouts) } /// Scan active buffer bindings corresponding to layouts without `min_binding_size` specified. diff --git a/wgpu-core/src/command/compute.rs b/wgpu-core/src/command/compute.rs index 567ef4efa7..c9b20c5a0e 100644 --- a/wgpu-core/src/command/compute.rs +++ b/wgpu-core/src/command/compute.rs @@ -1,6 +1,7 @@ use crate::{ binding_model::{ - BindError, BindGroup, LateMinBufferBindingSizeMismatch, PushConstantUploadError, + BindError, BindGroup, BindGroupLayouts, LateMinBufferBindingSizeMismatch, + PushConstantUploadError, }, command::{ bind::Binder, @@ -283,8 +284,8 @@ struct State { } impl State { - fn is_ready(&self) -> Result<(), DispatchError> { - let bind_mask = self.binder.invalid_mask(); + fn is_ready(&self, bind_group_layouts: &BindGroupLayouts) -> Result<(), DispatchError> { + let bind_mask = self.binder.invalid_mask(bind_group_layouts); if bind_mask != 0 { //let (expected, provided) = self.binder.entries[index as usize].info(); return Err(DispatchError::IncompatibleBindGroup { @@ -403,6 +404,7 @@ impl Global { let (bind_group_guard, mut token) = hub.bind_groups.read(&mut token); let (pipeline_guard, mut token) = hub.compute_pipelines.read(&mut token); let (query_set_guard, mut token) = hub.query_sets.read(&mut token); + let (bind_group_layout_guard, mut token) = hub.bind_group_layouts.read(&mut token); let (buffer_guard, mut token) = hub.buffers.read(&mut token); let (texture_guard, _) = hub.textures.read(&mut token); @@ -663,7 +665,9 @@ impl Global { pipeline: state.pipeline, }; - state.is_ready().map_pass_err(scope)?; + state + .is_ready(&*bind_group_layout_guard) + .map_pass_err(scope)?; state .flush_states( raw, @@ -700,7 +704,9 @@ impl Global { pipeline: state.pipeline, }; - state.is_ready().map_pass_err(scope)?; + state + .is_ready(&*bind_group_layout_guard) + .map_pass_err(scope)?; device .require_downlevel_flags(wgt::DownlevelFlags::INDIRECT_EXECUTION) diff --git a/wgpu-core/src/command/render.rs b/wgpu-core/src/command/render.rs index 7f16f31807..f9202ee3f5 100644 --- a/wgpu-core/src/command/render.rs +++ b/wgpu-core/src/command/render.rs @@ -1,5 +1,5 @@ use crate::{ - binding_model::BindError, + binding_model::{BindError, BindGroupLayouts}, command::{ self, bind::Binder, @@ -421,7 +421,11 @@ struct State { } impl State { - fn is_ready(&self, indexed: bool) -> Result<(), DrawError> { + fn is_ready( + &self, + indexed: bool, + bind_group_layouts: &BindGroupLayouts, + ) -> Result<(), DrawError> { // Determine how many vertex buffers have already been bound let vertex_buffer_count = self.vertex.inputs.iter().take_while(|v| v.bound).count() as u32; // Compare with the needed quantity @@ -431,7 +435,7 @@ impl State { }); } - let bind_mask = self.binder.invalid_mask(); + let bind_mask = self.binder.invalid_mask(bind_group_layouts); if bind_mask != 0 { //let (expected, provided) = self.binder.entries[index as usize].info(); return Err(DrawError::IncompatibleBindGroup { @@ -1349,6 +1353,7 @@ impl Global { let (bind_group_guard, mut token) = hub.bind_groups.read(&mut token); let (render_pipeline_guard, mut token) = hub.render_pipelines.read(&mut token); let (query_set_guard, mut token) = hub.query_sets.read(&mut token); + let (bind_group_layout_guard, mut token) = hub.bind_group_layouts.read(&mut token); let (buffer_guard, mut token) = hub.buffers.read(&mut token); let (texture_guard, mut token) = hub.textures.read(&mut token); let (view_guard, _) = hub.texture_views.read(&mut token); @@ -1819,7 +1824,9 @@ impl Global { indirect: false, pipeline: state.pipeline, }; - state.is_ready(indexed).map_pass_err(scope)?; + state + .is_ready::(indexed, &bind_group_layout_guard) + .map_pass_err(scope)?; let last_vertex = first_vertex + vertex_count; let vertex_limit = state.vertex.vertex_limit; @@ -1859,7 +1866,9 @@ impl Global { indirect: false, pipeline: state.pipeline, }; - state.is_ready(indexed).map_pass_err(scope)?; + state + .is_ready::(indexed, &*bind_group_layout_guard) + .map_pass_err(scope)?; //TODO: validate that base_vertex + max_index() is // within the provided range @@ -1904,7 +1913,9 @@ impl Global { indirect: true, pipeline: state.pipeline, }; - state.is_ready(indexed).map_pass_err(scope)?; + state + .is_ready::(indexed, &*bind_group_layout_guard) + .map_pass_err(scope)?; let stride = match indexed { false => mem::size_of::(), @@ -1976,7 +1987,9 @@ impl Global { indirect: true, pipeline: state.pipeline, }; - state.is_ready(indexed).map_pass_err(scope)?; + state + .is_ready::(indexed, &*bind_group_layout_guard) + .map_pass_err(scope)?; let stride = match indexed { false => mem::size_of::(), diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index 3f22459b38..8fe5a6fcc9 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -1078,19 +1078,28 @@ impl Global { } } - // If there is an equivalent BGL, just bump the refcount and return it. - // This is only applicable for identity filters that are generating new IDs, - // so their inputs are `PhantomData` of size 0. - if mem::size_of::>() == 0 { + let mut compatible_layout = None; + { let (bgl_guard, _) = hub.bind_group_layouts.read(&mut token); if let Some(id) = Device::deduplicate_bind_group_layout(device_id, &entry_map, &*bgl_guard) { - return (id, None); + // If there is an equivalent BGL, just bump the refcount and return it. + // This is only applicable if ids are generated in wgpu. In practice: + // - wgpu users take this branch and return the existing + // id without using the indirection layer in BindGroupLayout. + // - Other users like gecko or the replay tool use don't take + // the branch and instead rely on the indirection to use the + // proper bind group layout id. + if G::ids_are_generated_in_wgpu() { + return (id, None); + } + + compatible_layout = Some(id::Valid(id)); } } - let layout = match device.create_bind_group_layout( + let mut layout = match device.create_bind_group_layout( device_id, desc.label.borrow_option(), entry_map, @@ -1099,7 +1108,10 @@ impl Global { Err(e) => break e, }; + layout.compatible_layout = compatible_layout; + let id = fid.assign(layout, &mut token); + return (id.0, None); }; @@ -1244,16 +1256,28 @@ impl Global { .add(trace::Action::CreateBindGroup(fid.id(), desc.clone())); } - let bind_group_layout = match bind_group_layout_guard.get(desc.layout) { + let mut bind_group_layout = match bind_group_layout_guard.get(desc.layout) { Ok(layout) => layout, - Err(_) => break binding_model::CreateBindGroupError::InvalidLayout, + Err(..) => break binding_model::CreateBindGroupError::InvalidLayout, + }; + + let mut layout_id = id::Valid(desc.layout); + if let Some(id) = bind_group_layout.compatible_layout { + layout_id = id; + bind_group_layout = &bind_group_layout_guard[id]; + } + + let bind_group = match device.create_bind_group( + device_id, + bind_group_layout, + layout_id, + desc, + hub, + &mut token, + ) { + Ok(bind_group) => bind_group, + Err(e) => break e, }; - let bind_group = - match device.create_bind_group(device_id, bind_group_layout, desc, hub, &mut token) - { - Ok(bind_group) => bind_group, - Err(e) => break e, - }; let ref_count = bind_group.life_guard.add_ref(); let id = fid.assign(bind_group, &mut token); diff --git a/wgpu-core/src/device/life.rs b/wgpu-core/src/device/life.rs index a12d864104..b641567d71 100644 --- a/wgpu-core/src/device/life.rs +++ b/wgpu-core/src/device/life.rs @@ -770,14 +770,24 @@ impl LifetimeTracker { //Note: nothing else can bump the refcount since the guard is locked exclusively //Note: same BGL can appear multiple times in the list, but only the last // encounter could drop the refcount to 0. - if guard[id].multi_ref_count.dec_and_check_empty() { - log::debug!("Bind group layout {:?} will be destroyed", id); - #[cfg(feature = "trace")] - if let Some(t) = trace { - t.lock().add(trace::Action::DestroyBindGroupLayout(id.0)); - } - if let Some(lay) = hub.bind_group_layouts.unregister_locked(id.0, &mut *guard) { - self.free_resources.bind_group_layouts.push(lay.raw); + let mut bgl_to_check = Some(id); + while let Some(id) = bgl_to_check.take() { + let bgl = &guard[id]; + if bgl.multi_ref_count.dec_and_check_empty() { + // If This layout points to a compatible one, go over the latter + // to decrement the ref count and potentially destroy it. + bgl_to_check = bgl.compatible_layout; + + log::debug!("Bind group layout {:?} will be destroyed", id); + #[cfg(feature = "trace")] + if let Some(t) = trace { + t.lock().add(trace::Action::DestroyBindGroupLayout(id.0)); + } + if let Some(lay) = + hub.bind_group_layouts.unregister_locked(id.0, &mut *guard) + { + self.free_resources.bind_group_layouts.push(lay.raw); + } } } } diff --git a/wgpu-core/src/device/resource.rs b/wgpu-core/src/device/resource.rs index 074170e562..73f1887e10 100644 --- a/wgpu-core/src/device/resource.rs +++ b/wgpu-core/src/device/resource.rs @@ -1,7 +1,8 @@ #[cfg(feature = "trace")] use crate::device::trace; use crate::{ - binding_model, command, conv, + binding_model::{self, get_bind_group_layout, try_get_bind_group_layout}, + command, conv, device::life::WaitIdleError, device::{ AttachmentData, CommandAllocator, MissingDownlevelFlags, MissingFeatures, @@ -1366,7 +1367,11 @@ impl Device { ) -> Option { guard .iter(self_id.backend()) - .find(|&(_, bgl)| bgl.device_id.value.0 == self_id && bgl.entries == *entry_map) + .find(|&(_, bgl)| { + bgl.device_id.value.0 == self_id + && bgl.compatible_layout.is_none() + && bgl.entries == *entry_map + }) .map(|(id, value)| { value.multi_ref_count.inc(); id @@ -1625,6 +1630,7 @@ impl Device { entries: entry_map, #[cfg(debug_assertions)] label: label.unwrap_or("").to_string(), + compatible_layout: None, }) } @@ -1798,6 +1804,7 @@ impl Device { &self, self_id: id::DeviceId, layout: &binding_model::BindGroupLayout, + layout_id: id::Valid, desc: &binding_model::BindGroupDescriptor, hub: &Hub, token: &mut Token>, @@ -2037,7 +2044,7 @@ impl Device { value: id::Valid(self_id), ref_count: self.life_guard.add_ref(), }, - layout_id: id::Valid(desc.layout), + layout_id, life_guard: LifeGuard::new(desc.label.borrow_or_default()), used, used_buffer_ranges, @@ -2286,7 +2293,7 @@ impl Device { let bgl_vec = desc .bind_group_layouts .iter() - .map(|&id| &bgl_guard.get(id).unwrap().raw) + .map(|&id| &try_get_bind_group_layout(bgl_guard, id).unwrap().raw) .collect::>(); let hal_desc = hal::PipelineLayoutDescriptor { label: desc.label.borrow_option(), @@ -2313,8 +2320,9 @@ impl Device { .iter() .map(|&id| { // manually add a dependency to BGL - bgl_guard.get(id).unwrap().multi_ref_count.inc(); - id::Valid(id) + let (id, layout) = get_bind_group_layout(bgl_guard, id::Valid(id)); + layout.multi_ref_count.inc(); + id }) .collect(), push_constant_ranges: desc.push_constant_ranges.iter().cloned().collect(), diff --git a/wgpu-core/src/hub.rs b/wgpu-core/src/hub.rs index d3da0be6c2..c0670e085c 100644 --- a/wgpu-core/src/hub.rs +++ b/wgpu-core/src/hub.rs @@ -243,6 +243,7 @@ impl Access> for RenderBundle {} impl Access> for Root {} impl Access> for Device {} impl Access> for PipelineLayout {} +impl Access> for QuerySet {} impl Access> for Root {} impl Access> for Device {} impl Access> for BindGroupLayout {} diff --git a/wgpu-core/src/identity.rs b/wgpu-core/src/identity.rs index 5f7cc0dc5a..fe10bedb0e 100644 --- a/wgpu-core/src/identity.rs +++ b/wgpu-core/src/identity.rs @@ -162,9 +162,14 @@ pub trait GlobalIdentityHandlerFactory: + IdentityHandlerFactory + IdentityHandlerFactory { + fn ids_are_generated_in_wgpu() -> bool; } -impl GlobalIdentityHandlerFactory for IdentityManagerFactory {} +impl GlobalIdentityHandlerFactory for IdentityManagerFactory { + fn ids_are_generated_in_wgpu() -> bool { + true + } +} pub type Input = <>::Filter as IdentityHandler>::Input; From 1ced67f05611c62f31aaf97cbbdc183ba6247bb9 Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Fri, 25 Aug 2023 15:51:29 -0400 Subject: [PATCH 033/135] Parametrize the size of the non-sampler descriptor heap in dx12 (#4077) --- wgpu-hal/src/dx11/adapter.rs | 1 + wgpu-hal/src/dx12/adapter.rs | 4 +++- wgpu-hal/src/dx12/device.rs | 3 ++- wgpu-hal/src/gles/adapter.rs | 1 + wgpu-hal/src/metal/adapter.rs | 1 + wgpu-hal/src/vulkan/adapter.rs | 1 + wgpu-info/src/human.rs | 5 +++++ wgpu-types/src/lib.rs | 13 ++++++++++++- 8 files changed, 26 insertions(+), 3 deletions(-) diff --git a/wgpu-hal/src/dx11/adapter.rs b/wgpu-hal/src/dx11/adapter.rs index 34ce34238d..290a9ade22 100644 --- a/wgpu-hal/src/dx11/adapter.rs +++ b/wgpu-hal/src/dx11/adapter.rs @@ -237,6 +237,7 @@ impl super::Adapter { max_compute_workgroups_per_dimension, // D3D11_BUFFER_DESC represents the buffer size as a 32 bit int. max_buffer_size: u32::MAX as u64, + max_non_sampler_bindings: u32::MAX, }; // diff --git a/wgpu-hal/src/dx12/adapter.rs b/wgpu-hal/src/dx12/adapter.rs index 18873b9d6c..02cde913ca 100644 --- a/wgpu-hal/src/dx12/adapter.rs +++ b/wgpu-hal/src/dx12/adapter.rs @@ -361,6 +361,7 @@ impl super::Adapter { // This limit is chosen to avoid potential issues with drivers should they internally // store buffer sizes using 32 bit ints (a situation we have already encountered with vulkan). max_buffer_size: i32::MAX as u64, + max_non_sampler_bindings: 1_000_000, }, alignments: crate::Alignments { buffer_copy_offset: wgt::BufferSize::new( @@ -382,7 +383,7 @@ impl crate::Adapter for super::Adapter { unsafe fn open( &self, _features: wgt::Features, - _limits: &wgt::Limits, + limits: &wgt::Limits, ) -> Result, crate::DeviceError> { let queue = { profiling::scope!("ID3D12Device::CreateCommandQueue"); @@ -399,6 +400,7 @@ impl crate::Adapter for super::Adapter { let device = super::Device::new( self.device.clone(), queue.clone(), + limits, self.private_caps, &self.library, self.dx12_shader_compiler.clone(), diff --git a/wgpu-hal/src/dx12/device.rs b/wgpu-hal/src/dx12/device.rs index 1471db3b30..1a44d98f0d 100644 --- a/wgpu-hal/src/dx12/device.rs +++ b/wgpu-hal/src/dx12/device.rs @@ -16,6 +16,7 @@ impl super::Device { pub(super) fn new( raw: d3d12::Device, present_queue: d3d12::CommandQueue, + limits: &wgt::Limits, private_caps: super::PrivateCapabilities, library: &Arc, dx12_shader_compiler: wgt::Dx12Compiler, @@ -92,7 +93,7 @@ impl super::Device { }; // maximum number of CBV/SRV/UAV descriptors in heap for Tier 1 - let capacity_views = 1_000_000; + let capacity_views = limits.max_non_sampler_bindings as u64; let capacity_samplers = 2_048; let shared = super::DeviceShared { diff --git a/wgpu-hal/src/gles/adapter.rs b/wgpu-hal/src/gles/adapter.rs index ca75bd09ef..2c68961e39 100644 --- a/wgpu-hal/src/gles/adapter.rs +++ b/wgpu-hal/src/gles/adapter.rs @@ -576,6 +576,7 @@ impl super::Adapter { }, max_compute_workgroups_per_dimension, max_buffer_size: i32::MAX as u64, + max_non_sampler_bindings: std::u32::MAX, }; let mut workarounds = super::Workarounds::empty(); diff --git a/wgpu-hal/src/metal/adapter.rs b/wgpu-hal/src/metal/adapter.rs index 5e44a18164..bc90954b35 100644 --- a/wgpu-hal/src/metal/adapter.rs +++ b/wgpu-hal/src/metal/adapter.rs @@ -904,6 +904,7 @@ impl super::PrivateCapabilities { max_compute_workgroup_size_z: self.max_threads_per_group, max_compute_workgroups_per_dimension: 0xFFFF, max_buffer_size: self.max_buffer_size, + max_non_sampler_bindings: std::u32::MAX, }, alignments: crate::Alignments { buffer_copy_offset: wgt::BufferSize::new(self.buffer_alignment).unwrap(), diff --git a/wgpu-hal/src/vulkan/adapter.rs b/wgpu-hal/src/vulkan/adapter.rs index 4bac0eede6..4a7ccf9535 100644 --- a/wgpu-hal/src/vulkan/adapter.rs +++ b/wgpu-hal/src/vulkan/adapter.rs @@ -755,6 +755,7 @@ impl PhysicalDeviceCapabilities { max_compute_workgroup_size_z: max_compute_workgroup_sizes[2], max_compute_workgroups_per_dimension, max_buffer_size, + max_non_sampler_bindings: std::u32::MAX, } } diff --git a/wgpu-info/src/human.rs b/wgpu-info/src/human.rs index 66b0e506e2..11d88d955c 100644 --- a/wgpu-info/src/human.rs +++ b/wgpu-info/src/human.rs @@ -124,6 +124,7 @@ fn print_adapter(output: &mut impl io::Write, report: &AdapterReport, idx: usize max_compute_workgroup_size_y, max_compute_workgroup_size_z, max_compute_workgroups_per_dimension, + max_non_sampler_bindings, } = limits; writeln!(output, "\t\t Max Texture Dimension 1d: {max_texture_dimension_1d}")?; writeln!(output, "\t\t Max Texture Dimension 2d: {max_texture_dimension_2d}")?; @@ -155,6 +156,10 @@ fn print_adapter(output: &mut impl io::Write, report: &AdapterReport, idx: usize writeln!(output, "\t\t Max Compute Workgroup Size Z: {max_compute_workgroup_size_z}")?; writeln!(output, "\t\t Max Compute Workgroups Per Dimension: {max_compute_workgroups_per_dimension}")?; + // This one reflects more of a wgpu implementation limitations than a hardware limit + // so don't show it here. + let _ = max_non_sampler_bindings; + ////////////////////////// // Downlevel Properties // ////////////////////////// diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 2fc9f990a8..5c2c32394c 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -931,6 +931,12 @@ pub struct Limits { /// - DX11 & OpenGL don't natively support push constants, and are emulated with uniforms, /// so this number is less useful but likely 256. pub max_push_constant_size: u32, + + /// Maximum number of live non-sampler bindings. + /// + /// This limit only affects the d3d12 backend. Using a large number will allow the device + /// to create many bind groups at the cost of a large up-front allocation at device creation. + pub max_non_sampler_bindings: u32, } impl Default for Limits { @@ -965,6 +971,7 @@ impl Default for Limits { max_compute_workgroup_size_z: 64, max_compute_workgroups_per_dimension: 65535, max_push_constant_size: 0, + max_non_sampler_bindings: 1_000_000, } } } @@ -1005,6 +1012,7 @@ impl Limits { /// max_compute_workgroup_size_z: 64, /// max_compute_workgroups_per_dimension: 65535, /// max_buffer_size: 256 << 20, // (256 MiB) + /// max_non_sampler_bindings: 1_000_000, /// }); /// ``` pub fn downlevel_defaults() -> Self { @@ -1038,6 +1046,7 @@ impl Limits { max_compute_workgroup_size_z: 64, max_compute_workgroups_per_dimension: 65535, max_buffer_size: 256 << 20, + max_non_sampler_bindings: 1_000_000, } } @@ -1076,7 +1085,8 @@ impl Limits { /// max_compute_workgroup_size_y: 0, // + /// max_compute_workgroup_size_z: 0, // + /// max_compute_workgroups_per_dimension: 0, // + - /// max_buffer_size: 256 << 20, // (256 MiB) + /// max_buffer_size: 256 << 20, // (256 MiB), + /// max_non_sampler_bindings: 1_000_000, /// }); /// ``` pub fn downlevel_webgl2_defaults() -> Self { @@ -1193,6 +1203,7 @@ impl Limits { compare!(max_compute_workgroup_size_z, Less); compare!(max_compute_workgroups_per_dimension, Less); compare!(max_buffer_size, Less); + compare!(max_non_sampler_bindings, Less); } } From 5c2c840159b129e73ab0f8950394097008097f56 Mon Sep 17 00:00:00 2001 From: Brad Werth Date: Mon, 28 Aug 2023 18:23:35 -0700 Subject: [PATCH 034/135] Prevent Metal from crashing when a still-open encoder is deallocated, resolve issue #2077. (#4023) --- CHANGELOG.md | 6 +++- tests/tests/encoder.rs | 59 ++++++++++++++++++++++++++++++++++- wgpu-hal/src/metal/command.rs | 18 +++++++++++ 3 files changed, 81 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4690aede91..0b4771966f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -99,6 +99,10 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032). - Set `Features::VERTEX_WRITABLE_STORAGE` based on the right feature level. By @teoxoy in [#4033](https://github.com/gfx-rs/wgpu/pull/4033). +#### Metal + +- Ensure that MTLCommandEncoder calls endEncoding before it is deallocated. By @bradwerth in [#4023](https://github.com/gfx-rs/wgpu/pull/4023) + ### Documentation - Add an overview of `RenderPass` and how render state works. By @kpreid in [#4055](https://github.com/gfx-rs/wgpu/pull/4055) @@ -113,7 +117,7 @@ This release was fairly minor as breaking changes go. #### `wgpu` types now `!Send` `!Sync` on wasm -Up until this point, wgpu has made the assumption that threads do not exist on wasm. With the rise of libraries like [`wasm_thread`](https://crates.io/crates/wasm_thread) making it easier and easier to do wasm multithreading this assumption is no longer sound. As all wgpu objects contain references into the JS heap, they cannot leave the thread they started on. +Up until this point, wgpu has made the assumption that threads do not exist on wasm. With the rise of libraries like [`wasm_thread`](https://crates.io/crates/wasm_thread) making it easier and easier to do wasm multithreading this assumption is no longer sound. As all wgpu objects contain references into the JS heap, they cannot leave the thread they started on. As we understand that this change might be very inconvenient for users who don't care about wasm threading, there is a crate feature which re-enables the old behavior: `fragile-send-sync-non-atomic-wasm`. So long as you don't compile your code with `-Ctarget-feature=+atomics`, `Send` and `Sync` will be implemented again on wgpu types on wasm. As the name implies, especially for libraries, this is very fragile, as you don't know if a user will want to compile with atomics (and therefore threads) or not. diff --git a/tests/tests/encoder.rs b/tests/tests/encoder.rs index 9e541c16a8..eada44ec45 100644 --- a/tests/tests/encoder.rs +++ b/tests/tests/encoder.rs @@ -1,5 +1,6 @@ use wasm_bindgen_test::*; -use wgpu_test::{initialize_test, TestParameters}; +use wgpu::RenderPassDescriptor; +use wgpu_test::{fail, initialize_test, TestParameters}; #[test] #[wasm_bindgen_test] @@ -11,3 +12,59 @@ fn drop_encoder() { drop(encoder); }) } + +#[test] +fn drop_encoder_after_error() { + // This test crashes on DX12 with the exception: + // + // ID3D12CommandAllocator::Reset: The command allocator cannot be reset because a + // command list is currently being recorded with the allocator. [ EXECUTION ERROR + // #543: COMMAND_ALLOCATOR_CANNOT_RESET] + // + // For now, we mark the test as failing on DX12. + let parameters = TestParameters::default().backend_failure(wgpu::Backends::DX12); + initialize_test(parameters, |ctx| { + let mut encoder = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + let target_tex = ctx.device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: wgpu::Extent3d { + width: 100, + height: 100, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::R8Unorm, + usage: wgpu::TextureUsages::RENDER_ATTACHMENT, + view_formats: &[], + }); + let target_view = target_tex.create_view(&wgpu::TextureViewDescriptor::default()); + + let mut renderpass = encoder.begin_render_pass(&RenderPassDescriptor { + label: Some("renderpass"), + color_attachments: &[Some(wgpu::RenderPassColorAttachment { + ops: wgpu::Operations::default(), + resolve_target: None, + view: &target_view, + })], + depth_stencil_attachment: None, + timestamp_writes: None, + occlusion_query_set: None, + }); + + // Set a bad viewport on renderpass, triggering an error. + fail(&ctx.device, || { + renderpass.set_viewport(0.0, 0.0, -1.0, -1.0, 0.0, 1.0); + drop(renderpass); + }); + + // This is the actual interesting error condition. We've created + // a CommandEncoder which errored out when processing a command. + // The encoder is still open! + drop(encoder); + }) +} diff --git a/wgpu-hal/src/metal/command.rs b/wgpu-hal/src/metal/command.rs index 05af2805b8..cc737fd228 100644 --- a/wgpu-hal/src/metal/command.rs +++ b/wgpu-hal/src/metal/command.rs @@ -1,4 +1,5 @@ use super::{conv, AsNative}; +use crate::CommandEncoder as _; use std::{borrow::Cow, mem, ops::Range}; // has to match `Temp::binding_sizes` @@ -1054,3 +1055,20 @@ impl crate::CommandEncoder for super::CommandEncoder { encoder.dispatch_thread_groups_indirect(&buffer.raw, offset, self.state.raw_wg_size); } } + +impl Drop for super::CommandEncoder { + fn drop(&mut self) { + // Metal raises an assert when a MTLCommandEncoder is deallocated without a call + // to endEncoding. This isn't documented in the general case at + // https://developer.apple.com/documentation/metal/mtlcommandencoder, but for the + // more-specific MTLComputeCommandEncoder it is stated as a requirement at + // https://developer.apple.com/documentation/metal/mtlcomputecommandencoder. It + // appears to be a requirement for all MTLCommandEncoder objects. Failing to call + // endEncoding causes a crash with the message 'Command encoder released without + // endEncoding'. To prevent this, we explicitiy call discard_encoding, which + // calls end_encoding on any still-held metal::CommandEncoders. + unsafe { + self.discard_encoding(); + } + } +} From e47dc2adadbf040c8cdb0ee21e602d8d772f8515 Mon Sep 17 00:00:00 2001 From: SMG Date: Tue, 29 Aug 2023 11:53:08 -0500 Subject: [PATCH 035/135] use WGSL for VertexFormat example types (#4035) * use WGSL for VertexFormat example types * Update CHANGELOG.md * use f32 for all VertexFormat float types --- CHANGELOG.md | 3 ++ wgpu-types/src/lib.rs | 68 +++++++++++++++++++++---------------------- 2 files changed, 37 insertions(+), 34 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0b4771966f..e168ebe856 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -80,6 +80,9 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Don't bother calling `vkFreeCommandBuffers` when `vkDestroyCommandPool` will take care of that for us. By @jimblandy in [#4059](https://github.com/gfx-rs/wgpu/pull/4059) +### Documentation +- Use WGSL for VertexFormat example types. By @ScanMountGoat in [#4305](https://github.com/gfx-rs/wgpu/pull/4035) + ### Bug Fixes #### General diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 5c2c32394c..c892874afa 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -4312,73 +4312,73 @@ pub struct VertexAttribute { #[cfg_attr(feature = "replay", derive(Deserialize))] #[cfg_attr(feature = "serde", serde(rename_all = "lowercase"))] pub enum VertexFormat { - /// Two unsigned bytes (u8). `uvec2` in shaders. + /// Two unsigned bytes (u8). `vec2` in shaders. Uint8x2 = 0, - /// Four unsigned bytes (u8). `uvec4` in shaders. + /// Four unsigned bytes (u8). `vec4` in shaders. Uint8x4 = 1, - /// Two signed bytes (i8). `ivec2` in shaders. + /// Two signed bytes (i8). `vec2` in shaders. Sint8x2 = 2, - /// Four signed bytes (i8). `ivec4` in shaders. + /// Four signed bytes (i8). `vec4` in shaders. Sint8x4 = 3, - /// Two unsigned bytes (u8). [0, 255] converted to float [0, 1] `vec2` in shaders. + /// Two unsigned bytes (u8). [0, 255] converted to float [0, 1] `vec2` in shaders. Unorm8x2 = 4, - /// Four unsigned bytes (u8). [0, 255] converted to float [0, 1] `vec4` in shaders. + /// Four unsigned bytes (u8). [0, 255] converted to float [0, 1] `vec4` in shaders. Unorm8x4 = 5, - /// Two signed bytes (i8). [-127, 127] converted to float [-1, 1] `vec2` in shaders. + /// Two signed bytes (i8). [-127, 127] converted to float [-1, 1] `vec2` in shaders. Snorm8x2 = 6, - /// Four signed bytes (i8). [-127, 127] converted to float [-1, 1] `vec4` in shaders. + /// Four signed bytes (i8). [-127, 127] converted to float [-1, 1] `vec4` in shaders. Snorm8x4 = 7, - /// Two unsigned shorts (u16). `uvec2` in shaders. + /// Two unsigned shorts (u16). `vec2` in shaders. Uint16x2 = 8, - /// Four unsigned shorts (u16). `uvec4` in shaders. + /// Four unsigned shorts (u16). `vec4` in shaders. Uint16x4 = 9, - /// Two signed shorts (i16). `ivec2` in shaders. + /// Two signed shorts (i16). `vec2` in shaders. Sint16x2 = 10, - /// Four signed shorts (i16). `ivec4` in shaders. + /// Four signed shorts (i16). `vec4` in shaders. Sint16x4 = 11, - /// Two unsigned shorts (u16). [0, 65535] converted to float [0, 1] `vec2` in shaders. + /// Two unsigned shorts (u16). [0, 65535] converted to float [0, 1] `vec2` in shaders. Unorm16x2 = 12, - /// Four unsigned shorts (u16). [0, 65535] converted to float [0, 1] `vec4` in shaders. + /// Four unsigned shorts (u16). [0, 65535] converted to float [0, 1] `vec4` in shaders. Unorm16x4 = 13, - /// Two signed shorts (i16). [-32767, 32767] converted to float [-1, 1] `vec2` in shaders. + /// Two signed shorts (i16). [-32767, 32767] converted to float [-1, 1] `vec2` in shaders. Snorm16x2 = 14, - /// Four signed shorts (i16). [-32767, 32767] converted to float [-1, 1] `vec4` in shaders. + /// Four signed shorts (i16). [-32767, 32767] converted to float [-1, 1] `vec4` in shaders. Snorm16x4 = 15, - /// Two half-precision floats (no Rust equiv). `vec2` in shaders. + /// Two half-precision floats (no Rust equiv). `vec2` in shaders. Float16x2 = 16, - /// Four half-precision floats (no Rust equiv). `vec4` in shaders. + /// Four half-precision floats (no Rust equiv). `vec4` in shaders. Float16x4 = 17, - /// One single-precision float (f32). `float` in shaders. + /// One single-precision float (f32). `f32` in shaders. Float32 = 18, - /// Two single-precision floats (f32). `vec2` in shaders. + /// Two single-precision floats (f32). `vec2` in shaders. Float32x2 = 19, - /// Three single-precision floats (f32). `vec3` in shaders. + /// Three single-precision floats (f32). `vec3` in shaders. Float32x3 = 20, - /// Four single-precision floats (f32). `vec4` in shaders. + /// Four single-precision floats (f32). `vec4` in shaders. Float32x4 = 21, - /// One unsigned int (u32). `uint` in shaders. + /// One unsigned int (u32). `u32` in shaders. Uint32 = 22, - /// Two unsigned ints (u32). `uvec2` in shaders. + /// Two unsigned ints (u32). `vec2` in shaders. Uint32x2 = 23, - /// Three unsigned ints (u32). `uvec3` in shaders. + /// Three unsigned ints (u32). `vec3` in shaders. Uint32x3 = 24, - /// Four unsigned ints (u32). `uvec4` in shaders. + /// Four unsigned ints (u32). `vec4` in shaders. Uint32x4 = 25, - /// One signed int (i32). `int` in shaders. + /// One signed int (i32). `i32` in shaders. Sint32 = 26, - /// Two signed ints (i32). `ivec2` in shaders. + /// Two signed ints (i32). `vec2` in shaders. Sint32x2 = 27, - /// Three signed ints (i32). `ivec3` in shaders. + /// Three signed ints (i32). `vec3` in shaders. Sint32x3 = 28, - /// Four signed ints (i32). `ivec4` in shaders. + /// Four signed ints (i32). `vec4` in shaders. Sint32x4 = 29, - /// One double-precision float (f64). `double` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. + /// One double-precision float (f64). `f32` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. Float64 = 30, - /// Two double-precision floats (f64). `dvec2` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. + /// Two double-precision floats (f64). `vec2` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. Float64x2 = 31, - /// Three double-precision floats (f64). `dvec3` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. + /// Three double-precision floats (f64). `vec3` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. Float64x3 = 32, - /// Four double-precision floats (f64). `dvec4` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. + /// Four double-precision floats (f64). `vec4` in shaders. Requires [`Features::VERTEX_ATTRIBUTE_64BIT`]. Float64x4 = 33, } From 625afc3b4299c92c79e0b3881e22a0bb780678ed Mon Sep 17 00:00:00 2001 From: Rajesh Malviya Date: Thu, 31 Aug 2023 03:28:47 +0530 Subject: [PATCH 036/135] Drop texture `clear_view`s in surface_texture_discard (#4057) --- CHANGELOG.md | 1 + wgpu-core/src/present.rs | 16 +++++++--------- wgpu-core/src/resource.rs | 12 ++++++++++++ 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e168ebe856..fa3dba8f4f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -89,6 +89,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Derive storage bindings via `naga::StorageAccess` instead of `naga::GlobalUse`. By @teoxoy in [#3985](https://github.com/gfx-rs/wgpu/pull/3985). - `Queue::on_submitted_work_done` callbacks will now always be called after all previous `BufferSlice::map_async` callbacks, even when there are no active submissions. By @cwfitzgerald in [#4036](https://github.com/gfx-rs/wgpu/pull/4036). +- Fix `clear` texture views being leaked when `wgpu::SurfaceTexture` is dropped before it is presented. By @rajveermalviya in [#4057](https://github.com/gfx-rs/wgpu/pull/4057). #### Vulkan - Fix enabling `wgpu::Features::PARTIALLY_BOUND_BINDING_ARRAY` not being actually enabled in vulkan backend. By @39ali in[#3772](https://github.com/gfx-rs/wgpu/pull/3772). diff --git a/wgpu-core/src/present.rs b/wgpu-core/src/present.rs index c9df46ad93..1303769d29 100644 --- a/wgpu-core/src/present.rs +++ b/wgpu-core/src/present.rs @@ -300,15 +300,7 @@ impl Global { let (texture, _) = hub.textures.unregister(texture_id.value.0, &mut token); if let Some(texture) = texture { - if let resource::TextureClearMode::RenderPass { clear_views, .. } = - texture.clear_mode - { - for clear_view in clear_views { - unsafe { - hal::Device::destroy_texture_view(&device.raw, clear_view); - } - } - } + texture.clear_mode.destroy_clear_views(&device.raw); let suf = A::get_surface_mut(surface); match texture.inner { @@ -386,10 +378,16 @@ impl Global { // The texture ID got added to the device tracker by `submit()`, // and now we are moving it away. + log::debug!( + "Removing swapchain texture {:?} from the device tracker", + texture_id.value + ); device.trackers.lock().textures.remove(texture_id.value); let (texture, _) = hub.textures.unregister(texture_id.value.0, &mut token); if let Some(texture) = texture { + texture.clear_mode.destroy_clear_views(&device.raw); + let suf = A::get_surface_mut(surface); match texture.inner { resource::TextureInner::Surface { diff --git a/wgpu-core/src/resource.rs b/wgpu-core/src/resource.rs index fe881c2d06..c0977b80ef 100644 --- a/wgpu-core/src/resource.rs +++ b/wgpu-core/src/resource.rs @@ -384,6 +384,18 @@ pub enum TextureClearMode { None, } +impl TextureClearMode { + pub(crate) fn destroy_clear_views(self, device: &A::Device) { + if let TextureClearMode::RenderPass { clear_views, .. } = self { + for clear_view in clear_views { + unsafe { + hal::Device::destroy_texture_view(device, clear_view); + } + } + } + } +} + #[derive(Debug)] pub struct Texture { pub(crate) inner: TextureInner, From 4a12ab73aeff562955b150a0b856e43956f477f2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Aug 2023 23:59:00 -0400 Subject: [PATCH 037/135] Bump profiling from 1.0.9 to 1.0.10 (#4102) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6890eeeee2..5a28ec8f7a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2127,9 +2127,9 @@ dependencies = [ [[package]] name = "profiling" -version = "1.0.9" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46b2164ebdb1dfeec5e337be164292351e11daf63a05174c6776b2f47460f0c9" +checksum = "45f10e75d83c7aec79a6aa46f897075890e156b105eebe51cfa0abce51af025f" [[package]] name = "quote" From 41efabbd886d09163b7e340caee6bca84eae968d Mon Sep 17 00:00:00 2001 From: Patrik Buhring Date: Fri, 1 Sep 2023 01:46:00 -0400 Subject: [PATCH 038/135] Fix limits interface on web. (#4107) --- .cargo/config.toml | 7 --- CHANGELOG.md | 4 ++ wgpu/src/backend/web.rs | 135 +++++++++++++++++++++++++++++++--------- 3 files changed, 111 insertions(+), 35 deletions(-) delete mode 100644 .cargo/config.toml diff --git a/.cargo/config.toml b/.cargo/config.toml deleted file mode 100644 index 95d2a35175..0000000000 --- a/.cargo/config.toml +++ /dev/null @@ -1,7 +0,0 @@ -[alias] -xtask = "run --manifest-path xtask/Cargo.toml --" - -[build] -rustflags = [ -"--cfg=web_sys_unstable_apis" -] diff --git a/CHANGELOG.md b/CHANGELOG.md index fa3dba8f4f..c7c22fcb73 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -107,6 +107,10 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Ensure that MTLCommandEncoder calls endEncoding before it is deallocated. By @bradwerth in [#4023](https://github.com/gfx-rs/wgpu/pull/4023) +#### WebGPU + +- Ensure that limit requests and reporting is done correctly. By @OptimisticPeach in [#4107](https://github.com/gfx-rs/wgpu/pull/4107) + ### Documentation - Add an overview of `RenderPass` and how render state works. By @kpreid in [#4055](https://github.com/gfx-rs/wgpu/pull/4055) diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index 97f5cb945d..1fc1c6683f 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -687,6 +687,99 @@ fn map_wgt_features(supported_features: web_sys::GpuSupportedFeatures) -> wgt::F features } +fn map_wgt_limits(limits: web_sys::GpuSupportedLimits) -> wgt::Limits { + wgt::Limits { + max_texture_dimension_1d: limits.max_texture_dimension_1d(), + max_texture_dimension_2d: limits.max_texture_dimension_2d(), + max_texture_dimension_3d: limits.max_texture_dimension_3d(), + max_texture_array_layers: limits.max_texture_array_layers(), + max_bind_groups: limits.max_bind_groups(), + max_bindings_per_bind_group: limits.max_bindings_per_bind_group(), + max_dynamic_uniform_buffers_per_pipeline_layout: limits + .max_dynamic_uniform_buffers_per_pipeline_layout(), + max_dynamic_storage_buffers_per_pipeline_layout: limits + .max_dynamic_storage_buffers_per_pipeline_layout(), + max_sampled_textures_per_shader_stage: limits.max_sampled_textures_per_shader_stage(), + max_samplers_per_shader_stage: limits.max_samplers_per_shader_stage(), + max_storage_buffers_per_shader_stage: limits.max_storage_buffers_per_shader_stage(), + max_storage_textures_per_shader_stage: limits.max_storage_textures_per_shader_stage(), + max_uniform_buffers_per_shader_stage: limits.max_uniform_buffers_per_shader_stage(), + max_uniform_buffer_binding_size: limits.max_uniform_buffer_binding_size() as u32, + max_storage_buffer_binding_size: limits.max_storage_buffer_binding_size() as u32, + max_vertex_buffers: limits.max_vertex_buffers(), + max_buffer_size: limits.max_buffer_size() as u64, + max_vertex_attributes: limits.max_vertex_attributes(), + max_vertex_buffer_array_stride: limits.max_vertex_buffer_array_stride(), + min_uniform_buffer_offset_alignment: limits.min_uniform_buffer_offset_alignment(), + min_storage_buffer_offset_alignment: limits.min_storage_buffer_offset_alignment(), + max_inter_stage_shader_components: limits.max_inter_stage_shader_components(), + max_compute_workgroup_storage_size: limits.max_compute_workgroup_storage_size(), + max_compute_invocations_per_workgroup: limits.max_compute_invocations_per_workgroup(), + max_compute_workgroup_size_x: limits.max_compute_workgroup_size_x(), + max_compute_workgroup_size_y: limits.max_compute_workgroup_size_y(), + max_compute_workgroup_size_z: limits.max_compute_workgroup_size_z(), + max_compute_workgroups_per_dimension: limits.max_compute_workgroups_per_dimension(), + // The following are not part of WebGPU + max_push_constant_size: wgt::Limits::default().max_push_constant_size, + max_non_sampler_bindings: wgt::Limits::default().max_non_sampler_bindings, + } +} + +fn map_js_sys_limits(limits: &wgt::Limits) -> js_sys::Object { + let object = js_sys::Object::new(); + + macro_rules! set_properties { + (($from:expr) => ($on:expr) : $(($js_ident:ident, $rs_ident:ident)),* $(,)?) => { + $( + ::js_sys::Reflect::set( + &$on, + &::wasm_bindgen::JsValue::from(stringify!($js_ident)), + // Numbers may be u64, however using `from` on a u64 yields + // errors on the wasm side, since it uses an unsupported api. + // Wasm sends us things that need to fit into u64s by sending + // us f64s instead. So we just send them f64s back. + &::wasm_bindgen::JsValue::from($from.$rs_ident as f64) + ) + .expect("Setting Object properties should never fail."); + )* + } + } + + set_properties![ + (limits) => (object): + (maxTextureDimension1D, max_texture_dimension_1d), + (maxTextureDimension2D, max_texture_dimension_2d), + (maxTextureDimension3D, max_texture_dimension_3d), + (maxTextureArrayLayers, max_texture_array_layers), + (maxBindGroups, max_bind_groups), + (maxBindingsPerBindGroup, max_bindings_per_bind_group), + (maxDynamicUniformBuffersPerPipelineLayout, max_dynamic_uniform_buffers_per_pipeline_layout), + (maxDynamicStorageBuffersPerPipelineLayout, max_dynamic_storage_buffers_per_pipeline_layout), + (maxSampledTexturesPerShaderStage, max_sampled_textures_per_shader_stage), + (maxSamplersPerShaderStage, max_samplers_per_shader_stage), + (maxStorageBuffersPerShaderStage, max_storage_buffers_per_shader_stage), + (maxStorageTexturesPerShaderStage, max_storage_textures_per_shader_stage), + (maxUniformBuffersPerShaderStage, max_uniform_buffers_per_shader_stage), + (maxUniformBufferBindingSize, max_uniform_buffer_binding_size), + (maxStorageBufferBindingSize, max_storage_buffer_binding_size), + (minUniformBufferOffsetAlignment, min_uniform_buffer_offset_alignment), + (minStorageBufferOffsetAlignment, min_storage_buffer_offset_alignment), + (maxVertexBuffers, max_vertex_buffers), + (maxBufferSize, max_buffer_size), + (maxVertexAttributes, max_vertex_attributes), + (maxVertexBufferArrayStride, max_vertex_buffer_array_stride), + (maxInterStageShaderComponents, max_inter_stage_shader_components), + (maxComputeWorkgroupStorageSize, max_compute_workgroup_storage_size), + (maxComputeInvocationsPerWorkgroup, max_compute_invocations_per_workgroup), + (maxComputeWorkgroupSizeX, max_compute_workgroup_size_x), + (maxComputeWorkgroupSizeY, max_compute_workgroup_size_y), + (maxComputeWorkgroupSizeZ, max_compute_workgroup_size_z), + (maxComputeWorkgroupsPerDimension, max_compute_workgroups_per_dimension), + ]; + + object +} + type JsFutureResult = Result; fn future_request_adapter( @@ -1014,9 +1107,19 @@ impl crate::context::Context for Context { //Error: Tracing isn't supported on the Web target } - // TODO: non-guaranteed limits let mut mapped_desc = web_sys::GpuDeviceDescriptor::new(); + // TODO: Migrate to a web_sys api. + // See https://github.com/rustwasm/wasm-bindgen/issues/3587 + let limits_object = map_js_sys_limits(&desc.limits); + + js_sys::Reflect::set( + &mapped_desc, + &JsValue::from("requiredLimits"), + &limits_object, + ) + .expect("Setting Object properties should never fail."); + let required_features = FEATURES_MAPPING .iter() .copied() @@ -1070,30 +1173,7 @@ impl crate::context::Context for Context { _adapter: &Self::AdapterId, adapter_data: &Self::AdapterData, ) -> wgt::Limits { - let limits = adapter_data.0.limits(); - wgt::Limits { - max_texture_dimension_1d: limits.max_texture_dimension_1d(), - max_texture_dimension_2d: limits.max_texture_dimension_2d(), - max_texture_dimension_3d: limits.max_texture_dimension_3d(), - max_texture_array_layers: limits.max_texture_array_layers(), - max_bind_groups: limits.max_bind_groups(), - max_bindings_per_bind_group: limits.max_bindings_per_bind_group(), - max_dynamic_uniform_buffers_per_pipeline_layout: limits - .max_dynamic_uniform_buffers_per_pipeline_layout(), - max_dynamic_storage_buffers_per_pipeline_layout: limits - .max_dynamic_storage_buffers_per_pipeline_layout(), - max_sampled_textures_per_shader_stage: limits.max_sampled_textures_per_shader_stage(), - max_samplers_per_shader_stage: limits.max_samplers_per_shader_stage(), - max_storage_buffers_per_shader_stage: limits.max_storage_buffers_per_shader_stage(), - max_storage_textures_per_shader_stage: limits.max_storage_textures_per_shader_stage(), - max_uniform_buffers_per_shader_stage: limits.max_uniform_buffers_per_shader_stage(), - max_uniform_buffer_binding_size: limits.max_uniform_buffer_binding_size() as u32, - max_storage_buffer_binding_size: limits.max_storage_buffer_binding_size() as u32, - max_vertex_buffers: limits.max_vertex_buffers(), - max_vertex_attributes: limits.max_vertex_attributes(), - max_vertex_buffer_array_stride: limits.max_vertex_buffer_array_stride(), - ..wgt::Limits::default() - } + map_wgt_limits(adapter_data.0.limits()) } fn adapter_downlevel_capabilities( @@ -1256,10 +1336,9 @@ impl crate::context::Context for Context { fn device_limits( &self, _device: &Self::DeviceId, - _device_data: &Self::DeviceData, + device_data: &Self::DeviceData, ) -> wgt::Limits { - // TODO - wgt::Limits::default() + map_wgt_limits(device_data.0.limits()) } fn device_downlevel_properties( From 332cd0325da52675432830870584ec9766679c34 Mon Sep 17 00:00:00 2001 From: Kevin Reid Date: Thu, 31 Aug 2023 22:48:31 -0700 Subject: [PATCH 039/135] Add details to `InstanceError` and `CreateSurfaceError`. (#4066) Co-authored-by: Connor Fitzgerald --- CHANGELOG.md | 3 ++ tests/src/lib.rs | 48 ++++++++--------- tests/tests/create_surface_error.rs | 28 ++++++++++ tests/tests/root.rs | 1 + wgpu-hal/examples/halmark/main.rs | 8 +-- wgpu-hal/src/auxil/dxgi/factory.rs | 42 ++++++++++----- wgpu-hal/src/dx11/instance.rs | 7 ++- wgpu-hal/src/dx12/instance.rs | 8 ++- wgpu-hal/src/gles/adapter.rs | 45 ++++++++-------- wgpu-hal/src/gles/egl.rs | 43 ++++++++++----- wgpu-hal/src/gles/web.rs | 16 +++--- wgpu-hal/src/lib.rs | 41 ++++++++++++-- wgpu-hal/src/metal/mod.rs | 4 +- wgpu-hal/src/vulkan/instance.rs | 67 +++++++++++++---------- wgpu/src/backend/direct.rs | 10 +--- wgpu/src/backend/web.rs | 17 ++++-- wgpu/src/lib.rs | 83 ++++++++++++++++++++++------- 17 files changed, 322 insertions(+), 149 deletions(-) create mode 100644 tests/tests/create_surface_error.rs diff --git a/CHANGELOG.md b/CHANGELOG.md index c7c22fcb73..75e6554dcf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -70,9 +70,12 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) ### Changes +#### General + - Omit texture store bound checks since they are no-ops if out of bounds on all APIs. By @teoxoy in [#3975](https://github.com/gfx-rs/wgpu/pull/3975) - Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL`. By @teoxoy in [#4031](https://github.com/gfx-rs/wgpu/pull/4031) - Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. By @James2022-rgb in [#4058](https://github.com/gfx-rs/wgpu/pull/4058) +- `wgpu::CreateSurfaceError` now gives details of the failure, but no longer implements `PartialEq`. By @kpreid in [#4066](https://github.com/gfx-rs/wgpu/pull/4066) - Make `WGPU_POWER_PREF=none` a valid value. By @fornwall in [4076](https://github.com/gfx-rs/wgpu/pull/4076) #### Vulkan diff --git a/tests/src/lib.rs b/tests/src/lib.rs index fb57d2a5a8..1d741f1812 100644 --- a/tests/src/lib.rs +++ b/tests/src/lib.rs @@ -312,7 +312,7 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te if #[cfg(any(not(target_arch = "wasm32"), target_os = "emscripten"))] { let canary_set = wgpu::hal::VALIDATION_CANARY.get_and_reset(); } else { - let canary_set = _surface_guard.check_for_unreported_errors(); + let canary_set = _surface_guard.unwrap().check_for_unreported_errors(); } ); @@ -345,24 +345,18 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te } } -fn initialize_adapter() -> (Adapter, SurfaceGuard) { - let backends = wgpu::util::backend_bits_from_env().unwrap_or_else(Backends::all); - let dx12_shader_compiler = wgpu::util::dx12_shader_compiler_from_env().unwrap_or_default(); - let gles_minor_version = wgpu::util::gles_minor_version_from_env().unwrap_or_default(); - let instance = Instance::new(wgpu::InstanceDescriptor { - backends, - dx12_shader_compiler, - gles_minor_version, - }); - let surface_guard; +fn initialize_adapter() -> (Adapter, Option) { + let instance = initialize_instance(); + let surface_guard: Option; let compatible_surface; + // Create a canvas iff we need a WebGL2RenderingContext to have a working device. #[cfg(not(all( target_arch = "wasm32", any(target_os = "emscripten", feature = "webgl") )))] { - surface_guard = SurfaceGuard {}; + surface_guard = None; compatible_surface = None; } #[cfg(all( @@ -398,7 +392,7 @@ fn initialize_adapter() -> (Adapter, SurfaceGuard) { .expect("could not create surface from canvas") }; - surface_guard = SurfaceGuard { canvas }; + surface_guard = Some(SurfaceGuard { canvas }); compatible_surface = Some(surface); } @@ -413,12 +407,21 @@ fn initialize_adapter() -> (Adapter, SurfaceGuard) { (adapter, surface_guard) } -struct SurfaceGuard { - #[cfg(all( - target_arch = "wasm32", - any(target_os = "emscripten", feature = "webgl") - ))] - canvas: web_sys::HtmlCanvasElement, +pub fn initialize_instance() -> Instance { + let backends = wgpu::util::backend_bits_from_env().unwrap_or_else(Backends::all); + let dx12_shader_compiler = wgpu::util::dx12_shader_compiler_from_env().unwrap_or_default(); + let gles_minor_version = wgpu::util::gles_minor_version_from_env().unwrap_or_default(); + Instance::new(wgpu::InstanceDescriptor { + backends, + dx12_shader_compiler, + gles_minor_version, + }) +} + +// Public because it is used by tests of interacting with canvas +pub struct SurfaceGuard { + #[cfg(target_arch = "wasm32")] + pub canvas: web_sys::HtmlCanvasElement, } impl SurfaceGuard { @@ -452,11 +455,8 @@ impl Drop for SurfaceGuard { } } -#[cfg(all( - target_arch = "wasm32", - any(target_os = "emscripten", feature = "webgl") -))] -fn create_html_canvas() -> web_sys::HtmlCanvasElement { +#[cfg(target_arch = "wasm32")] +pub fn create_html_canvas() -> web_sys::HtmlCanvasElement { use wasm_bindgen::JsCast; web_sys::window() diff --git a/tests/tests/create_surface_error.rs b/tests/tests/create_surface_error.rs new file mode 100644 index 0000000000..f8962697ce --- /dev/null +++ b/tests/tests/create_surface_error.rs @@ -0,0 +1,28 @@ +//! Test that `create_surface_*()` accurately reports those errors we can provoke. + +/// This test applies to those cfgs that have a `create_surface_from_canvas` method, which +/// include WebGL and WebGPU, but *not* Emscripten GLES. +#[cfg(all(target_arch = "wasm32", not(target_os = "emscripten")))] +#[wasm_bindgen_test::wasm_bindgen_test] +fn canvas_get_context_returned_null() { + // Not using initialize_test() because that goes straight to creating the canvas for us. + let instance = wgpu_test::initialize_instance(); + // Create canvas and cleanup on drop + let canvas_g = wgpu_test::SurfaceGuard { + canvas: wgpu_test::create_html_canvas(), + }; + // Using a context id that is not "webgl2" or "webgpu" will render the canvas unusable by wgpu. + canvas_g.canvas.get_context("2d").unwrap(); + + #[allow(clippy::redundant_clone)] // false positive — can't and shouldn't move out. + let error = instance + .create_surface_from_canvas(canvas_g.canvas.clone()) + .unwrap_err(); + + assert!( + error + .to_string() + .contains("canvas.getContext() returned null"), + "{error}" + ); +} diff --git a/tests/tests/root.rs b/tests/tests/root.rs index b376ab4981..25df8eda90 100644 --- a/tests/tests/root.rs +++ b/tests/tests/root.rs @@ -10,6 +10,7 @@ mod buffer; mod buffer_copy; mod buffer_usages; mod clear_texture; +mod create_surface_error; mod device; mod encoder; mod example_wgsl; diff --git a/wgpu-hal/examples/halmark/main.rs b/wgpu-hal/examples/halmark/main.rs index c6b739bf17..5518cdaf4b 100644 --- a/wgpu-hal/examples/halmark/main.rs +++ b/wgpu-hal/examples/halmark/main.rs @@ -86,7 +86,7 @@ struct Example { } impl Example { - fn init(window: &winit::window::Window) -> Result { + fn init(window: &winit::window::Window) -> Result> { let instance_desc = hal::InstanceDescriptor { name: "example", flags: if cfg!(debug_assertions) { @@ -108,13 +108,13 @@ impl Example { let (adapter, capabilities) = unsafe { let mut adapters = instance.enumerate_adapters(); if adapters.is_empty() { - return Err(hal::InstanceError); + return Err("no adapters found".into()); } let exposed = adapters.swap_remove(0); (exposed.adapter, exposed.capabilities) }; - let surface_caps = - unsafe { adapter.surface_capabilities(&surface) }.ok_or(hal::InstanceError)?; + let surface_caps = unsafe { adapter.surface_capabilities(&surface) } + .ok_or("failed to get surface capabilities")?; log::info!("Surface caps: {:#?}", surface_caps); let hal::OpenDevice { device, mut queue } = unsafe { diff --git a/wgpu-hal/src/auxil/dxgi/factory.rs b/wgpu-hal/src/auxil/dxgi/factory.rs index 123ca4933e..7ae6e745f0 100644 --- a/wgpu-hal/src/auxil/dxgi/factory.rs +++ b/wgpu-hal/src/auxil/dxgi/factory.rs @@ -96,7 +96,9 @@ pub fn create_factory( required_factory_type: DxgiFactoryType, instance_flags: crate::InstanceFlags, ) -> Result<(d3d12::DxgiLib, d3d12::DxgiFactory), crate::InstanceError> { - let lib_dxgi = d3d12::DxgiLib::new().map_err(|_| crate::InstanceError)?; + let lib_dxgi = d3d12::DxgiLib::new().map_err(|e| { + crate::InstanceError::with_source(String::from("failed to load dxgi.dll"), e) + })?; let mut factory_flags = d3d12::FactoryCreationFlags::empty(); @@ -128,18 +130,22 @@ pub fn create_factory( Ok(factory) => Some(factory), // We hard error here as we _should have_ been able to make a factory4 but couldn't. Err(err) => { - log::error!("Failed to create IDXGIFactory4: {}", err); - return Err(crate::InstanceError); + // err is a Cow, not an Error implementor + return Err(crate::InstanceError::new(format!( + "failed to create IDXGIFactory4: {err:?}" + ))); } }, // If we require factory4, hard error. Err(err) if required_factory_type == DxgiFactoryType::Factory4 => { - log::error!("IDXGIFactory1 creation function not found: {:?}", err); - return Err(crate::InstanceError); + return Err(crate::InstanceError::with_source( + String::from("IDXGIFactory1 creation function not found"), + err, + )); } // If we don't print it to info as all win7 will hit this case. Err(err) => { - log::info!("IDXGIFactory1 creation function not found: {:?}", err); + log::info!("IDXGIFactory1 creation function not found: {err:?}"); None } }; @@ -153,8 +159,10 @@ pub fn create_factory( } // If we require factory6, hard error. Err(err) if required_factory_type == DxgiFactoryType::Factory6 => { - log::warn!("Failed to cast IDXGIFactory4 to IDXGIFactory6: {:?}", err); - return Err(crate::InstanceError); + // err is a Cow, not an Error implementor + return Err(crate::InstanceError::new(format!( + "failed to cast IDXGIFactory4 to IDXGIFactory6: {err:?}" + ))); } // If we don't print it to info. Err(err) => { @@ -169,14 +177,18 @@ pub fn create_factory( Ok(pair) => match pair.into_result() { Ok(factory) => factory, Err(err) => { - log::error!("Failed to create IDXGIFactory1: {}", err); - return Err(crate::InstanceError); + // err is a Cow, not an Error implementor + return Err(crate::InstanceError::new(format!( + "failed to create IDXGIFactory1: {err:?}" + ))); } }, // We always require at least factory1, so hard error Err(err) => { - log::error!("IDXGIFactory1 creation function not found: {:?}", err); - return Err(crate::InstanceError); + return Err(crate::InstanceError::with_source( + String::from("IDXGIFactory1 creation function not found"), + err, + )); } }; @@ -188,8 +200,10 @@ pub fn create_factory( } // If we require factory2, hard error. Err(err) if required_factory_type == DxgiFactoryType::Factory2 => { - log::warn!("Failed to cast IDXGIFactory1 to IDXGIFactory2: {:?}", err); - return Err(crate::InstanceError); + // err is a Cow, not an Error implementor + return Err(crate::InstanceError::new(format!( + "failed to cast IDXGIFactory1 to IDXGIFactory2: {err:?}" + ))); } // If we don't print it to info. Err(err) => { diff --git a/wgpu-hal/src/dx11/instance.rs b/wgpu-hal/src/dx11/instance.rs index 1d8c2b51a2..e7a4e2e705 100644 --- a/wgpu-hal/src/dx11/instance.rs +++ b/wgpu-hal/src/dx11/instance.rs @@ -8,10 +8,13 @@ impl crate::Instance for super::Instance { }; if !enable_dx11 { - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "DX11 support is unstable; set WGPU_UNSTABLE_DX11_BACKEND=1 to enable anyway", + ))); } - let lib_d3d11 = super::library::D3D11Lib::new().ok_or(crate::InstanceError)?; + let lib_d3d11 = super::library::D3D11Lib::new() + .ok_or_else(|| crate::InstanceError::new(String::from("failed to load d3d11.dll")))?; let (lib_dxgi, factory) = auxil::dxgi::factory::create_factory( auxil::dxgi::factory::DxgiFactoryType::Factory1, diff --git a/wgpu-hal/src/dx12/instance.rs b/wgpu-hal/src/dx12/instance.rs index 208d2179f7..32d6f1690c 100644 --- a/wgpu-hal/src/dx12/instance.rs +++ b/wgpu-hal/src/dx12/instance.rs @@ -12,7 +12,9 @@ impl Drop for super::Instance { impl crate::Instance for super::Instance { unsafe fn init(desc: &crate::InstanceDescriptor) -> Result { - let lib_main = d3d12::D3D12Lib::new().map_err(|_| crate::InstanceError)?; + let lib_main = d3d12::D3D12Lib::new().map_err(|e| { + crate::InstanceError::with_source(String::from("failed to load d3d12.dll"), e) + })?; if desc.flags.contains(crate::InstanceFlags::VALIDATION) { // Enable debug layer @@ -95,7 +97,9 @@ impl crate::Instance for super::Instance { supports_allow_tearing: self.supports_allow_tearing, swap_chain: None, }), - _ => Err(crate::InstanceError), + _ => Err(crate::InstanceError::new(format!( + "window handle {window_handle:?} is not a Win32 handle" + ))), } } unsafe fn destroy_surface(&self, _surface: super::Surface) { diff --git a/wgpu-hal/src/gles/adapter.rs b/wgpu-hal/src/gles/adapter.rs index 2c68961e39..348f62bc03 100644 --- a/wgpu-hal/src/gles/adapter.rs +++ b/wgpu-hal/src/gles/adapter.rs @@ -43,8 +43,9 @@ impl super::Adapter { src = &src[pos + es_sig.len()..]; } None => { - log::warn!("ES not found in '{}'", src); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(format!( + "OpenGL version {src:?} does not contain 'ES'" + ))); } } }; @@ -86,10 +87,9 @@ impl super::Adapter { }, minor, )), - _ => { - log::warn!("Unable to extract the version from '{}'", version); - Err(crate::InstanceError) - } + _ => Err(crate::InstanceError::new(format!( + "unable to extract OpenGL version from {version:?}" + ))), } } @@ -975,27 +975,30 @@ mod tests { #[test] fn test_version_parse() { - let error = Err(crate::InstanceError); - assert_eq!(Adapter::parse_version("1"), error); - assert_eq!(Adapter::parse_version("1."), error); - assert_eq!(Adapter::parse_version("1 h3l1o. W0rld"), error); - assert_eq!(Adapter::parse_version("1. h3l1o. W0rld"), error); - assert_eq!(Adapter::parse_version("1.2.3"), error); - assert_eq!(Adapter::parse_version("OpenGL ES 3.1"), Ok((3, 1))); + Adapter::parse_version("1").unwrap_err(); + Adapter::parse_version("1.").unwrap_err(); + Adapter::parse_version("1 h3l1o. W0rld").unwrap_err(); + Adapter::parse_version("1. h3l1o. W0rld").unwrap_err(); + Adapter::parse_version("1.2.3").unwrap_err(); + + assert_eq!(Adapter::parse_version("OpenGL ES 3.1").unwrap(), (3, 1)); + assert_eq!( + Adapter::parse_version("OpenGL ES 2.0 Google Nexus").unwrap(), + (2, 0) + ); + assert_eq!(Adapter::parse_version("GLSL ES 1.1").unwrap(), (1, 1)); assert_eq!( - Adapter::parse_version("OpenGL ES 2.0 Google Nexus"), - Ok((2, 0)) + Adapter::parse_version("OpenGL ES GLSL ES 3.20").unwrap(), + (3, 2) ); - assert_eq!(Adapter::parse_version("GLSL ES 1.1"), Ok((1, 1))); - assert_eq!(Adapter::parse_version("OpenGL ES GLSL ES 3.20"), Ok((3, 2))); assert_eq!( // WebGL 2.0 should parse as OpenGL ES 3.0 - Adapter::parse_version("WebGL 2.0 (OpenGL ES 3.0 Chromium)"), - Ok((3, 0)) + Adapter::parse_version("WebGL 2.0 (OpenGL ES 3.0 Chromium)").unwrap(), + (3, 0) ); assert_eq!( - Adapter::parse_version("WebGL GLSL ES 3.00 (OpenGL ES GLSL ES 3.0 Chromium)"), - Ok((3, 0)) + Adapter::parse_version("WebGL GLSL ES 3.00 (OpenGL ES GLSL ES 3.0 Chromium)").unwrap(), + (3, 0) ); } } diff --git a/wgpu-hal/src/gles/egl.rs b/wgpu-hal/src/gles/egl.rs index b904dffee9..d6d3d621f9 100644 --- a/wgpu-hal/src/gles/egl.rs +++ b/wgpu-hal/src/gles/egl.rs @@ -283,7 +283,10 @@ fn choose_config( } } - Err(crate::InstanceError) + // TODO: include diagnostic details that are currently logged + Err(crate::InstanceError::new(String::from( + "unable to find an acceptable EGL framebuffer configuration", + ))) } fn gl_debug_message_callback(source: u32, gltype: u32, id: u32, severity: u32, message: &str) { @@ -495,7 +498,12 @@ impl Inner { display: khronos_egl::Display, force_gles_minor_version: wgt::Gles3MinorVersion, ) -> Result { - let version = egl.initialize(display).map_err(|_| crate::InstanceError)?; + let version = egl.initialize(display).map_err(|e| { + crate::InstanceError::with_source( + String::from("failed to initialize EGL display connection"), + e, + ) + })?; let vendor = egl .query_string(Some(display), khronos_egl::VENDOR) .unwrap(); @@ -599,8 +607,10 @@ impl Inner { let context = match egl.create_context(display, config, None, &context_attributes) { Ok(context) => context, Err(e) => { - log::warn!("unable to create GLES 3.x context: {:?}", e); - return Err(crate::InstanceError); + return Err(crate::InstanceError::with_source( + String::from("unable to create GLES 3.x context"), + e, + )); } }; @@ -623,8 +633,10 @@ impl Inner { egl.create_pbuffer_surface(display, config, &attributes) .map(Some) .map_err(|e| { - log::warn!("Error in create_pbuffer_surface: {:?}", e); - crate::InstanceError + crate::InstanceError::with_source( + String::from("error in create_pbuffer_surface"), + e, + ) })? }; @@ -734,8 +746,10 @@ impl crate::Instance for Instance { let egl = match egl_result { Ok(egl) => Arc::new(egl), Err(e) => { - log::info!("Unable to open libEGL: {:?}", e); - return Err(crate::InstanceError); + return Err(crate::InstanceError::with_source( + String::from("unable to open libEGL"), + e, + )); } }; @@ -899,8 +913,9 @@ impl crate::Instance for Instance { }; if ret != 0 { - log::error!("Error returned from ANativeWindow_setBuffersGeometry"); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(format!( + "error {ret} returned from ANativeWindow_setBuffersGeometry", + ))); } } #[cfg(not(target_os = "emscripten"))] @@ -938,8 +953,7 @@ impl crate::Instance for Instance { Arc::clone(&inner.egl.instance), display, inner.force_gles_minor_version, - ) - .map_err(|_| crate::InstanceError)?; + )?; let old_inner = std::mem::replace(inner.deref_mut(), new_inner); inner.wl_display = Some(display_handle.display); @@ -950,8 +964,9 @@ impl crate::Instance for Instance { #[cfg(target_os = "emscripten")] (Rwh::Web(_), _) => {} other => { - log::error!("Unsupported window: {:?}", other); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(format!( + "unsupported window: {other:?}" + ))); } }; diff --git a/wgpu-hal/src/gles/web.rs b/wgpu-hal/src/gles/web.rs index 02cd6a3ecb..13bce85f84 100644 --- a/wgpu-hal/src/gles/web.rs +++ b/wgpu-hal/src/gles/web.rs @@ -66,14 +66,16 @@ impl Instance { // “not supported” could include “insufficient GPU resources” or “the GPU process // previously crashed”. So, we must return it as an `Err` since it could occur // for circumstances outside the application author's control. - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "canvas.getContext() returned null; webgl2 not available or canvas already in use" + ))); } Err(js_error) => { // - // A thrown exception indicates misuse of the canvas state. Ideally we wouldn't - // panic in this case, but for now, `InstanceError` conveys no detail, so it - // is more informative to panic with a specific message. - panic!("canvas.getContext() threw {js_error:?}") + // A thrown exception indicates misuse of the canvas state. + return Err(crate::InstanceError::new(format!( + "canvas.getContext() threw exception {js_error:?}", + ))); } }; @@ -156,7 +158,9 @@ impl crate::Instance for Instance { self.create_surface_from_canvas(canvas) } else { - Err(crate::InstanceError) + Err(crate::InstanceError::new(format!( + "window handle {window_handle:?} is not a web handle" + ))) } } diff --git a/wgpu-hal/src/lib.rs b/wgpu-hal/src/lib.rs index 020c665709..4bff6b8d8f 100644 --- a/wgpu-hal/src/lib.rs +++ b/wgpu-hal/src/lib.rs @@ -90,7 +90,7 @@ use std::{ num::NonZeroU32, ops::{Range, RangeInclusive}, ptr::NonNull, - sync::atomic::AtomicBool, + sync::{atomic::AtomicBool, Arc}, }; use bitflags::bitflags; @@ -152,9 +152,42 @@ pub enum SurfaceError { Other(&'static str), } -#[derive(Clone, Debug, Eq, PartialEq, Error)] -#[error("Not supported")] -pub struct InstanceError; +/// Error occurring while trying to create an instance, or create a surface from an instance; +/// typically relating to the state of the underlying graphics API or hardware. +#[derive(Clone, Debug, Error)] +#[error("{message}")] +pub struct InstanceError { + /// These errors are very platform specific, so do not attempt to encode them as an enum. + /// + /// This message should describe the problem in sufficient detail to be useful for a + /// user-to-developer “why won't this work on my machine” bug report, and otherwise follow + /// . + message: String, + + /// Underlying error value, if any is available. + #[source] + source: Option>, +} + +impl InstanceError { + #[allow(dead_code)] // may be unused on some platforms + pub(crate) fn new(message: String) -> Self { + Self { + message, + source: None, + } + } + #[allow(dead_code)] // may be unused on some platforms + pub(crate) fn with_source( + message: String, + source: impl std::error::Error + Send + Sync + 'static, + ) -> Self { + Self { + message, + source: Some(Arc::new(source)), + } + } +} pub trait Api: Clone + Sized { type Instance: Instance; diff --git a/wgpu-hal/src/metal/mod.rs b/wgpu-hal/src/metal/mod.rs index 3a8ebc5570..76f57002ff 100644 --- a/wgpu-hal/src/metal/mod.rs +++ b/wgpu-hal/src/metal/mod.rs @@ -100,7 +100,9 @@ impl crate::Instance for Instance { raw_window_handle::RawWindowHandle::AppKit(handle) => Ok(unsafe { Surface::from_view(handle.ns_view, Some(&self.managed_metal_layer_delegate)) }), - _ => Err(crate::InstanceError), + _ => Err(crate::InstanceError::new(format!( + "window handle {window_handle:?} is not a Metal-compatible handle" + ))), } } diff --git a/wgpu-hal/src/vulkan/instance.rs b/wgpu-hal/src/vulkan/instance.rs index 4fa4a3e27d..18b141a070 100644 --- a/wgpu-hal/src/vulkan/instance.rs +++ b/wgpu-hal/src/vulkan/instance.rs @@ -194,8 +194,10 @@ impl super::Instance { let instance_extensions = entry .enumerate_instance_extension_properties(None) .map_err(|e| { - log::info!("enumerate_instance_extension_properties: {:?}", e); - crate::InstanceError + crate::InstanceError::with_source( + String::from("enumerate_instance_extension_properties() failed"), + e, + ) })?; // Check our extensions against the available extensions @@ -366,8 +368,9 @@ impl super::Instance { window: vk::Window, ) -> Result { if !self.shared.extensions.contains(&khr::XlibSurface::name()) { - log::warn!("Vulkan driver does not support VK_KHR_xlib_surface"); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "Vulkan driver does not support VK_KHR_xlib_surface", + ))); } let surface = { @@ -391,8 +394,9 @@ impl super::Instance { window: vk::xcb_window_t, ) -> Result { if !self.shared.extensions.contains(&khr::XcbSurface::name()) { - log::warn!("Vulkan driver does not support VK_KHR_xcb_surface"); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "Vulkan driver does not support VK_KHR_xcb_surface", + ))); } let surface = { @@ -420,8 +424,9 @@ impl super::Instance { .extensions .contains(&khr::WaylandSurface::name()) { - log::debug!("Vulkan driver does not support VK_KHR_wayland_surface"); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "Vulkan driver does not support VK_KHR_wayland_surface", + ))); } let surface = { @@ -447,8 +452,9 @@ impl super::Instance { .extensions .contains(&khr::AndroidSurface::name()) { - log::warn!("Vulkan driver does not support VK_KHR_android_surface"); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "Vulkan driver does not support VK_KHR_android_surface", + ))); } let surface = { @@ -470,8 +476,9 @@ impl super::Instance { hwnd: *mut c_void, ) -> Result { if !self.shared.extensions.contains(&khr::Win32Surface::name()) { - log::debug!("Vulkan driver does not support VK_KHR_win32_surface"); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "Vulkan driver does not support VK_KHR_win32_surface", + ))); } let surface = { @@ -496,8 +503,9 @@ impl super::Instance { view: *mut c_void, ) -> Result { if !self.shared.extensions.contains(&ext::MetalSurface::name()) { - log::warn!("Vulkan driver does not support VK_EXT_metal_surface"); - return Err(crate::InstanceError); + return Err(crate::InstanceError::new(String::from( + "Vulkan driver does not support VK_EXT_metal_surface", + ))); } let layer = unsafe { @@ -546,20 +554,18 @@ impl crate::Instance for super::Instance { unsafe fn init(desc: &crate::InstanceDescriptor) -> Result { use crate::auxil::cstr_from_bytes_until_nul; - let entry = match unsafe { ash::Entry::load() } { - Ok(entry) => entry, - Err(err) => { - log::info!("Missing Vulkan entry points: {:?}", err); - return Err(crate::InstanceError); - } - }; + let entry = unsafe { ash::Entry::load() }.map_err(|err| { + crate::InstanceError::with_source(String::from("missing Vulkan entry points"), err) + })?; let driver_api_version = match entry.try_enumerate_instance_version() { // Vulkan 1.1+ Ok(Some(version)) => version, Ok(None) => vk::API_VERSION_1_0, Err(err) => { - log::warn!("try_enumerate_instance_version: {:?}", err); - return Err(crate::InstanceError); + return Err(crate::InstanceError::with_source( + String::from("try_enumerate_instance_version() failed"), + err, + )); } }; @@ -590,7 +596,10 @@ impl crate::Instance for super::Instance { let instance_layers = entry.enumerate_instance_layer_properties().map_err(|e| { log::info!("enumerate_instance_layer_properties: {:?}", e); - crate::InstanceError + crate::InstanceError::with_source( + String::from("enumerate_instance_layer_properties() failed"), + e, + ) })?; fn find_layer<'layers>( @@ -682,8 +691,10 @@ impl crate::Instance for super::Instance { .enabled_extension_names(&str_pointers[layers.len()..]); unsafe { entry.create_instance(&create_info, None) }.map_err(|e| { - log::warn!("create_instance: {:?}", e); - crate::InstanceError + crate::InstanceError::with_source( + String::from("Entry::create_instance() failed"), + e, + ) })? }; @@ -739,7 +750,9 @@ impl crate::Instance for super::Instance { { self.create_surface_from_view(handle.ui_view) } - (_, _) => Err(crate::InstanceError), + (_, _) => Err(crate::InstanceError::new(format!( + "window handle {window_handle:?} is not a Vulkan-compatible handle" + ))), } } diff --git a/wgpu/src/backend/direct.rs b/wgpu/src/backend/direct.rs index fca1d80c3c..8eec9adad5 100644 --- a/wgpu/src/backend/direct.rs +++ b/wgpu/src/backend/direct.rs @@ -244,10 +244,7 @@ impl Context { &self, canvas: web_sys::HtmlCanvasElement, ) -> Result { - let id = self - .0 - .create_surface_webgl_canvas(canvas, ()) - .map_err(|hal::InstanceError| crate::CreateSurfaceError {})?; + let id = self.0.create_surface_webgl_canvas(canvas, ())?; Ok(Surface { id, configured_device: Mutex::default(), @@ -259,10 +256,7 @@ impl Context { &self, canvas: web_sys::OffscreenCanvas, ) -> Result { - let id = self - .0 - .create_surface_webgl_offscreen_canvas(canvas, ()) - .map_err(|hal::InstanceError| crate::CreateSurfaceError {})?; + let id = self.0.create_surface_webgl_offscreen_canvas(canvas, ())?; Ok(Surface { id, configured_device: Mutex::default(), diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index 1fc1c6683f..d64bd8bcb1 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -920,13 +920,22 @@ impl Context { // “not supported” could include “insufficient GPU resources” or “the GPU process // previously crashed”. So, we must return it as an `Err` since it could occur // for circumstances outside the application author's control. - return Err(crate::CreateSurfaceError {}); + return Err(crate::CreateSurfaceError { + inner: crate::CreateSurfaceErrorKind::Web( + String::from( + "canvas.getContext() returned null; webgpu not available or canvas already in use" + ) + ) + }); } Err(js_error) => { // - // A thrown exception indicates misuse of the canvas state. Ideally we wouldn't - // panic in this case ... TODO - panic!("canvas.getContext() threw {js_error:?}") + // A thrown exception indicates misuse of the canvas state. + return Err(crate::CreateSurfaceError { + inner: crate::CreateSurfaceErrorKind::Web(format!( + "canvas.getContext() threw exception {js_error:?}", + )), + }); } }; diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 1c3e1a58b5..94345f1adb 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -15,8 +15,7 @@ mod macros; use std::{ any::Any, borrow::Cow, - error, - fmt::{Debug, Display}, + error, fmt, future::Future, marker::PhantomData, num::NonZeroU32, @@ -1700,8 +1699,8 @@ pub enum SurfaceError { } static_assertions::assert_impl_all!(SurfaceError: Send, Sync); -impl Display for SurfaceError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { +impl fmt::Display for SurfaceError { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!(f, "{}", match self { Self::Timeout => "A timeout was encountered while trying to acquire the next frame", Self::Outdated => "The underlying surface has changed, and therefore the swap chain must be updated", @@ -2744,8 +2743,8 @@ impl Drop for Device { pub struct RequestDeviceError; static_assertions::assert_impl_all!(RequestDeviceError: Send, Sync); -impl Display for RequestDeviceError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { +impl fmt::Display for RequestDeviceError { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!(f, "Requesting a device failed") } } @@ -2753,28 +2752,76 @@ impl Display for RequestDeviceError { impl error::Error for RequestDeviceError {} /// [`Instance::create_surface()`] or a related function failed. -#[derive(Clone, PartialEq, Eq, Debug)] +#[derive(Clone, Debug)] #[non_exhaustive] pub struct CreateSurfaceError { - // TODO: Report diagnostic clues + inner: CreateSurfaceErrorKind, +} +#[derive(Clone, Debug)] +enum CreateSurfaceErrorKind { + /// Error from [`wgpu_hal`]. + #[cfg(any( + not(target_arch = "wasm32"), + target_os = "emscripten", + feature = "webgl" + ))] + // must match dependency cfg + Hal(hal::InstanceError), + + /// Error from WebGPU surface creation. + #[allow(dead_code)] // may be unused depending on target and features + Web(String), } static_assertions::assert_impl_all!(CreateSurfaceError: Send, Sync); -impl Display for CreateSurfaceError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - write!(f, "Creating a surface failed") +impl fmt::Display for CreateSurfaceError { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match &self.inner { + #[cfg(any( + not(target_arch = "wasm32"), + target_os = "emscripten", + feature = "webgl" + ))] + CreateSurfaceErrorKind::Hal(e) => e.fmt(f), + CreateSurfaceErrorKind::Web(e) => e.fmt(f), + } } } -impl error::Error for CreateSurfaceError {} +impl error::Error for CreateSurfaceError { + fn source(&self) -> Option<&(dyn error::Error + 'static)> { + match &self.inner { + #[cfg(any( + not(target_arch = "wasm32"), + target_os = "emscripten", + feature = "webgl" + ))] + CreateSurfaceErrorKind::Hal(e) => e.source(), + CreateSurfaceErrorKind::Web(_) => None, + } + } +} + +#[cfg(any( + not(target_arch = "wasm32"), + target_os = "emscripten", + feature = "webgl" +))] +impl From for CreateSurfaceError { + fn from(e: hal::InstanceError) -> Self { + Self { + inner: CreateSurfaceErrorKind::Hal(e), + } + } +} /// Error occurred when trying to async map a buffer. #[derive(Clone, PartialEq, Eq, Debug)] pub struct BufferAsyncError; static_assertions::assert_impl_all!(BufferAsyncError: Send, Sync); -impl Display for BufferAsyncError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { +impl fmt::Display for BufferAsyncError { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!(f, "Error occurred when trying to async map a buffer") } } @@ -4849,8 +4896,8 @@ impl Clone for Id { impl Copy for Id {} #[cfg(feature = "expose-ids")] -impl Debug for Id { - fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { +impl fmt::Debug for Id { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { f.debug_tuple("Id").field(&self.0).finish() } } @@ -5150,8 +5197,8 @@ impl error::Error for Error { } } -impl Display for Error { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { +impl fmt::Display for Error { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { Error::OutOfMemory { .. } => f.write_str("Out of Memory"), Error::Validation { description, .. } => f.write_str(description), From 54a7f0eac9b1531d2ebeec4cff3af842772b098e Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Sun, 3 Sep 2023 23:54:39 -0400 Subject: [PATCH 040/135] Skip `test_multithreaded_compute` on MoltenVK. (#4096) Co-authored-by: Connor Fitzgerald --- .github/workflows/ci.yml | 1 + CHANGELOG.md | 4 + examples/boids/src/main.rs | 2 +- examples/common/src/framework.rs | 2 +- examples/hello-compute/src/tests.rs | 23 +- examples/mipmap/src/main.rs | 4 +- examples/msaa-line/src/main.rs | 9 +- examples/shadow/src/main.rs | 10 +- examples/skybox/src/main.rs | 7 +- tests/src/image.rs | 25 +- tests/src/lib.rs | 396 +++++++++++------- tests/tests/clear_texture.rs | 30 +- tests/tests/device.rs | 40 +- tests/tests/encoder.rs | 5 +- tests/tests/poll.rs | 89 ++-- tests/tests/shader/struct_layout.rs | 6 +- tests/tests/shader/zero_init_workgroup_mem.rs | 19 +- tests/tests/shader_view_format/mod.rs | 9 +- tests/tests/vertex_indices/mod.rs | 6 +- tests/tests/write_texture.rs | 5 +- .../tests/zero_init_texture_after_discard.rs | 46 +- 21 files changed, 454 insertions(+), 284 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f4ed15c4a7..06ae299b77 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -284,6 +284,7 @@ jobs: done - uses: actions/upload-artifact@v3 + if: always() # We want artifacts even if the tests fail. with: name: comparison-images path: | diff --git a/CHANGELOG.md b/CHANGELOG.md index 75e6554dcf..0ca6f6350a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -114,6 +114,10 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Ensure that limit requests and reporting is done correctly. By @OptimisticPeach in [#4107](https://github.com/gfx-rs/wgpu/pull/4107) +#### Testing + +- Skip `test_multithreaded_compute` on MoltenVK. By @jimblandy in [#4096](https://github.com/gfx-rs/wgpu/pull/4096). + ### Documentation - Add an overview of `RenderPass` and how render state works. By @kpreid in [#4055](https://github.com/gfx-rs/wgpu/pull/4055) diff --git a/examples/boids/src/main.rs b/examples/boids/src/main.rs index 357792de4f..e8aa2f71fd 100644 --- a/examples/boids/src/main.rs +++ b/examples/boids/src/main.rs @@ -345,7 +345,7 @@ fn boids() { .downlevel_flags(wgpu::DownlevelFlags::COMPUTE_SHADERS) .limits(wgpu::Limits::downlevel_defaults()) // Lots of validation errors, maybe related to https://github.com/gfx-rs/wgpu/issues/3160 - .molten_vk_failure(), + .expect_fail(wgpu_test::FailureCase::molten_vk()), comparisons: &[wgpu_test::ComparisonType::Mean(0.005)], }); } diff --git a/examples/common/src/framework.rs b/examples/common/src/framework.rs index 06db6092f7..875d8544e7 100644 --- a/examples/common/src/framework.rs +++ b/examples/common/src/framework.rs @@ -625,7 +625,7 @@ pub fn test(mut params: FrameworkRefTest) { wgpu_test::image::compare_image_output( env!("CARGO_MANIFEST_DIR").to_string() + "/../../" + params.image_path, - ctx.adapter_info.backend, + &ctx.adapter_info, params.width, params.height, &bytes, diff --git a/examples/hello-compute/src/tests.rs b/examples/hello-compute/src/tests.rs index 54cddbe379..7f8649f72f 100644 --- a/examples/hello-compute/src/tests.rs +++ b/examples/hello-compute/src/tests.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use super::*; -use wgpu_test::{initialize_test, TestParameters}; +use wgpu_test::{initialize_test, FailureCase, TestParameters}; wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser); @@ -13,7 +13,7 @@ fn test_compute_1() { .downlevel_flags(wgpu::DownlevelFlags::COMPUTE_SHADERS) .limits(wgpu::Limits::downlevel_defaults()) .features(wgpu::Features::TIMESTAMP_QUERY) - .specific_failure(None, None, Some("V3D"), true), + .skip(FailureCase::adapter("V3D")), |ctx| { let input = &[1, 2, 3, 4]; @@ -35,7 +35,7 @@ fn test_compute_2() { .downlevel_flags(wgpu::DownlevelFlags::COMPUTE_SHADERS) .limits(wgpu::Limits::downlevel_defaults()) .features(wgpu::Features::TIMESTAMP_QUERY) - .specific_failure(None, None, Some("V3D"), true), + .skip(FailureCase::adapter("V3D")), |ctx| { let input = &[5, 23, 10, 9]; @@ -57,7 +57,7 @@ fn test_compute_overflow() { .downlevel_flags(wgpu::DownlevelFlags::COMPUTE_SHADERS) .limits(wgpu::Limits::downlevel_defaults()) .features(wgpu::Features::TIMESTAMP_QUERY) - .specific_failure(None, None, Some("V3D"), true), + .skip(FailureCase::adapter("V3D")), |ctx| { let input = &[77031, 837799, 8400511, 63728127]; pollster::block_on(assert_execute_gpu( @@ -78,16 +78,15 @@ fn test_multithreaded_compute() { .downlevel_flags(wgpu::DownlevelFlags::COMPUTE_SHADERS) .limits(wgpu::Limits::downlevel_defaults()) .features(wgpu::Features::TIMESTAMP_QUERY) - .specific_failure(None, None, Some("V3D"), true) + .skip(FailureCase::adapter("V3D")) // https://github.com/gfx-rs/wgpu/issues/3944 - .specific_failure( - Some(wgpu::Backends::VULKAN), - None, - Some("swiftshader"), - true, - ) + .skip(FailureCase::backend_adapter( + wgpu::Backends::VULKAN, + "swiftshader", + )) // https://github.com/gfx-rs/wgpu/issues/3250 - .specific_failure(Some(wgpu::Backends::GL), None, Some("llvmpipe"), true), + .skip(FailureCase::backend_adapter(wgpu::Backends::GL, "llvmpipe")) + .skip(FailureCase::molten_vk()), |ctx| { use std::{sync::mpsc, thread, time::Duration}; diff --git a/examples/mipmap/src/main.rs b/examples/mipmap/src/main.rs index d21f6c1e08..a85110ff14 100644 --- a/examples/mipmap/src/main.rs +++ b/examples/mipmap/src/main.rs @@ -521,7 +521,7 @@ fn mipmap() { height: 768, optional_features: wgpu::Features::default(), base_test_parameters: wgpu_test::TestParameters::default() - .backend_failure(wgpu::Backends::GL), + .expect_fail(wgpu_test::FailureCase::backend(wgpu::Backends::GL)), comparisons: &[wgpu_test::ComparisonType::Mean(0.02)], }); } @@ -535,7 +535,7 @@ fn mipmap_query() { height: 768, optional_features: QUERY_FEATURES, base_test_parameters: wgpu_test::TestParameters::default() - .backend_failure(wgpu::Backends::GL), + .expect_fail(wgpu_test::FailureCase::backend(wgpu::Backends::GL)), comparisons: &[wgpu_test::ComparisonType::Mean(0.02)], }); } diff --git a/examples/msaa-line/src/main.rs b/examples/msaa-line/src/main.rs index 2f42817765..aa7a277418 100644 --- a/examples/msaa-line/src/main.rs +++ b/examples/msaa-line/src/main.rs @@ -12,6 +12,9 @@ use std::{borrow::Cow, iter}; use bytemuck::{Pod, Zeroable}; use wgpu::util::DeviceExt; +#[cfg(test)] +use wgpu_test::FailureCase; + #[repr(C)] #[derive(Clone, Copy, Pod, Zeroable)] struct Vertex { @@ -326,7 +329,11 @@ fn msaa_line() { optional_features: wgpu::Features::TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES, base_test_parameters: wgpu_test::TestParameters::default() // AMD seems to render nothing on DX12 https://github.com/gfx-rs/wgpu/issues/3838 - .specific_failure(Some(wgpu::Backends::DX12), Some(0x1002), None, false), + .expect_fail(FailureCase { + backends: Some(wgpu::Backends::DX12), + vendor: Some(0x1002), + ..FailureCase::default() + }), // There's a lot of natural variance so we check the weighted median too to differentiate // real failures from variance. comparisons: &[ diff --git a/examples/shadow/src/main.rs b/examples/shadow/src/main.rs index 09b0982ea9..3f963d0c53 100644 --- a/examples/shadow/src/main.rs +++ b/examples/shadow/src/main.rs @@ -857,9 +857,15 @@ fn shadow() { base_test_parameters: wgpu_test::TestParameters::default() .downlevel_flags(wgpu::DownlevelFlags::COMPARISON_SAMPLERS) // rpi4 on VK doesn't work: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3916 - .specific_failure(Some(wgpu::Backends::VULKAN), None, Some("V3D"), false) + .expect_fail(wgpu_test::FailureCase::backend_adapter( + wgpu::Backends::VULKAN, + "V3D", + )) // llvmpipe versions in CI are flaky: https://github.com/gfx-rs/wgpu/issues/2594 - .specific_failure(Some(wgpu::Backends::VULKAN), None, Some("llvmpipe"), true), + .skip(wgpu_test::FailureCase::backend_adapter( + wgpu::Backends::VULKAN, + "llvmpipe", + )), comparisons: &[wgpu_test::ComparisonType::Mean(0.02)], }); } diff --git a/examples/skybox/src/main.rs b/examples/skybox/src/main.rs index 9873ac9c0b..d09622f53c 100644 --- a/examples/skybox/src/main.rs +++ b/examples/skybox/src/main.rs @@ -475,11 +475,8 @@ fn skybox() { width: 1024, height: 768, optional_features: wgpu::Features::default(), - base_test_parameters: wgpu_test::TestParameters::default().specific_failure( - Some(wgpu::Backends::GL), - None, - Some("ANGLE"), - false, + base_test_parameters: wgpu_test::TestParameters::default().expect_fail( + wgpu_test::FailureCase::backend_adapter(wgpu::Backends::GL, "ANGLE"), ), comparisons: &[wgpu_test::ComparisonType::Mean(0.015)], }); diff --git a/tests/src/image.rs b/tests/src/image.rs index 00aa78f660..e50fd43e7f 100644 --- a/tests/src/image.rs +++ b/tests/src/image.rs @@ -150,7 +150,7 @@ impl ComparisonType { pub fn compare_image_output( path: impl AsRef + AsRef, - backend: Backend, + adapter_info: &wgt::AdapterInfo, width: u32, height: u32, test_with_alpha: &[u8], @@ -205,17 +205,18 @@ pub fn compare_image_output( } let file_stem = reference_path.file_stem().unwrap().to_string_lossy(); + let renderer = format!( + "{}-{}-{}", + adapter_info.backend.to_str(), + sanitize_for_path(&adapter_info.name), + sanitize_for_path(&adapter_info.driver) + ); // Determine the paths to write out the various intermediate files let actual_path = Path::new(&path).with_file_name( - OsString::from_str(&format!("{}-{}-actual.png", file_stem, backend.to_str(),)).unwrap(), + OsString::from_str(&format!("{}-{}-actual.png", file_stem, renderer)).unwrap(), ); let difference_path = Path::new(&path).with_file_name( - OsString::from_str(&format!( - "{}-{}-difference.png", - file_stem, - backend.to_str(), - )) - .unwrap(), + OsString::from_str(&format!("{}-{}-difference.png", file_stem, renderer,)).unwrap(), ); // Convert the error values to a false color reprensentation @@ -246,10 +247,16 @@ pub fn compare_image_output( #[cfg(target_arch = "wasm32")] { - let _ = (path, backend, width, height, test_with_alpha, checks); + let _ = (path, adapter_info, width, height, test_with_alpha, checks); } } +fn sanitize_for_path(s: &str) -> String { + s.chars() + .map(|ch| if ch.is_ascii_alphanumeric() { ch } else { '_' }) + .collect() +} + fn copy_via_compute( device: &Device, encoder: &mut CommandEncoder, diff --git a/tests/src/lib.rs b/tests/src/lib.rs index 1d741f1812..236b353386 100644 --- a/tests/src/lib.rs +++ b/tests/src/lib.rs @@ -53,11 +53,195 @@ fn lowest_downlevel_properties() -> DownlevelCapabilities { } } +/// Conditions under which a test should fail or be skipped. +/// +/// By passing a `FailureCase` to [`TestParameters::expect_fail`], you can +/// mark a test as expected to fail under the indicated conditions. By +/// passing it to [`TestParameters::skip`], you can request that the +/// test be skipped altogether. +/// +/// If a field is `None`, then that field does not restrict matches. For +/// example: +/// +/// ``` +/// # use wgpu_test::FailureCase; +/// FailureCase { +/// backends: Some(wgpu::Backends::DX11 | wgpu::Backends::DX12), +/// vendor: None, +/// adapter: Some("RTX"), +/// driver: None, +/// } +/// # ; +/// ``` +/// +/// This applies to all cards with `"RTX'` in their name on either +/// Direct3D backend, no matter the vendor ID or driver name. +/// +/// The strings given here need only appear as a substring in the +/// corresponding [`AdapterInfo`] fields. The comparison is +/// case-insensitive. +/// +/// The default value of `FailureCase` applies to any test case. That +/// is, there are no criteria to constrain the match. +/// +/// [`AdapterInfo`]: wgt::AdapterInfo +#[derive(Default)] pub struct FailureCase { - backends: Option, - vendor: Option, - adapter: Option, - skip: bool, + /// Backends expected to fail, or `None` for any backend. + /// + /// If this is `None`, or if the test is using one of the backends + /// in `backends`, then this `FailureCase` applies. + pub backends: Option, + + /// Vendor expected to fail, or `None` for any vendor. + /// + /// If `Some`, this must match [`AdapterInfo::device`], which is + /// usually the PCI device id. Otherwise, this `FailureCase` + /// applies regardless of vendor. + /// + /// [`AdapterInfo::device`]: wgt::AdapterInfo::device + pub vendor: Option, + + /// Name of adaper expected to fail, or `None` for any adapter name. + /// + /// If this is `Some(s)` and `s` is a substring of + /// [`AdapterInfo::name`], then this `FailureCase` applies. If + /// this is `None`, the adapter name isn't considered. + /// + /// [`AdapterInfo::name`]: wgt::AdapterInfo::name + pub adapter: Option<&'static str>, + + /// Name of driver expected to fail, or `None` for any driver name. + /// + /// If this is `Some(s)` and `s` is a substring of + /// [`AdapterInfo::driver`], then this `FailureCase` applies. If + /// this is `None`, the driver name isn't considered. + /// + /// [`AdapterInfo::driver`]: wgt::AdapterInfo::driver + pub driver: Option<&'static str>, +} + +impl FailureCase { + /// This case applies to all tests. + pub fn always() -> Self { + FailureCase::default() + } + + /// This case applies to no tests. + pub fn never() -> Self { + FailureCase { + backends: Some(wgpu::Backends::empty()), + ..FailureCase::default() + } + } + + /// Tests running on any of the given backends. + pub fn backend(backends: wgpu::Backends) -> Self { + FailureCase { + backends: Some(backends), + ..FailureCase::default() + } + } + + /// Tests running on `adapter`. + /// + /// For this case to apply, the `adapter` string must appear as a substring + /// of the adapter's [`AdapterInfo::name`]. The comparison is + /// case-insensitive. + /// + /// [`AdapterInfo::name`]: wgt::AdapterInfo::name + pub fn adapter(adapter: &'static str) -> Self { + FailureCase { + adapter: Some(adapter), + ..FailureCase::default() + } + } + + /// Tests running on `backend` and `adapter`. + /// + /// For this case to apply, the test must be using an adapter for one of the + /// given `backend` bits, and `adapter` string must appear as a substring of + /// the adapter's [`AdapterInfo::name`]. The string comparison is + /// case-insensitive. + /// + /// [`AdapterInfo::name`]: wgt::AdapterInfo::name + pub fn backend_adapter(backends: wgpu::Backends, adapter: &'static str) -> Self { + FailureCase { + backends: Some(backends), + adapter: Some(adapter), + ..FailureCase::default() + } + } + + /// Tests running under WebGL. + /// + /// Because of wasm's limited ability to recover from errors, we + /// usually need to skip the test altogether if it's not + /// supported, so this should be usually used with + /// [`TestParameters::skip`]. + pub fn webgl2() -> Self { + #[cfg(target_arch = "wasm32")] + let case = FailureCase::backend(wgpu::Backends::GL); + #[cfg(not(target_arch = "wasm32"))] + let case = FailureCase::never(); + case + } + + /// Tests running on the MoltenVK Vulkan driver on macOS. + pub fn molten_vk() -> Self { + FailureCase { + backends: Some(wgpu::Backends::VULKAN), + driver: Some("MoltenVK"), + ..FailureCase::default() + } + } + + /// Test whether `self` applies to `info`. + /// + /// If it does, return a `FailureReasons` whose set bits indicate + /// why. If it doesn't, return `None`. + /// + /// The caller is responsible for converting the string-valued + /// fields of `info` to lower case, to ensure case-insensitive + /// matching. + fn applies_to(&self, info: &wgt::AdapterInfo) -> Option { + let mut reasons = FailureReasons::empty(); + + if let Some(backends) = self.backends { + if !backends.contains(wgpu::Backends::from(info.backend)) { + return None; + } + reasons.set(FailureReasons::BACKEND, true); + } + if let Some(vendor) = self.vendor { + if vendor != info.vendor { + return None; + } + reasons.set(FailureReasons::VENDOR, true); + } + if let Some(adapter) = self.adapter { + let adapter = adapter.to_lowercase(); + if !info.name.contains(&adapter) { + return None; + } + reasons.set(FailureReasons::ADAPTER, true); + } + if let Some(driver) = self.driver { + let driver = driver.to_lowercase(); + if !info.driver.contains(&driver) { + return None; + } + reasons.set(FailureReasons::DRIVER, true); + } + + // If we got this far but no specific reasons were triggered, then this + // must be a wildcard. + if reasons.is_empty() { + Some(FailureReasons::ALWAYS) + } else { + Some(reasons) + } + } } // This information determines if a test should run. @@ -65,7 +249,11 @@ pub struct TestParameters { pub required_features: Features, pub required_downlevel_properties: DownlevelCapabilities, pub required_limits: Limits, - // Backends where test should fail. + + /// Conditions under which this test should be skipped. + pub skips: Vec, + + /// Conditions under which this test should be run, but is expected to fail. pub failures: Vec, } @@ -75,6 +263,7 @@ impl Default for TestParameters { required_features: Features::empty(), required_downlevel_properties: lowest_downlevel_properties(), required_limits: Limits::downlevel_webgl2_defaults(), + skips: Vec::new(), failures: Vec::new(), } } @@ -86,7 +275,8 @@ bitflags::bitflags! { const BACKEND = 1 << 0; const VENDOR = 1 << 1; const ADAPTER = 1 << 2; - const ALWAYS = 1 << 3; + const DRIVER = 1 << 3; + const ALWAYS = 1 << 4; } } @@ -115,87 +305,17 @@ impl TestParameters { self } - /// Mark the test as always failing, equivalent to specific_failure(None, None, None) - pub fn failure(mut self) -> Self { - self.failures.push(FailureCase { - backends: None, - vendor: None, - adapter: None, - skip: false, - }); - self - } - - /// Mark the test as always failing and needing to be skipped, equivalent to specific_failure(None, None, None) - pub fn skip(mut self) -> Self { - self.failures.push(FailureCase { - backends: None, - vendor: None, - adapter: None, - skip: true, - }); - self - } - - /// Mark the test as always failing on a specific backend, equivalent to specific_failure(backend, None, None) - pub fn backend_failure(mut self, backends: wgpu::Backends) -> Self { - self.failures.push(FailureCase { - backends: Some(backends), - vendor: None, - adapter: None, - skip: false, - }); - self - } - - /// Mark the test as always failing on WebGL. Because limited ability of wasm to recover from errors, we need to wholesale - /// skip the test if it's not supported. - pub fn webgl2_failure(mut self) -> Self { - let _ = &mut self; - #[cfg(target_arch = "wasm32")] - self.failures.push(FailureCase { - backends: Some(wgpu::Backends::GL), - vendor: None, - adapter: None, - skip: true, - }); + /// Mark the test as always failing, but not to be skipped. + pub fn expect_fail(mut self, when: FailureCase) -> Self { + self.failures.push(when); self } - /// Determines if a test should fail under a particular set of conditions. If any of these are None, that means that it will match anything in that field. - /// - /// ex. - /// `specific_failure(Some(wgpu::Backends::DX11 | wgpu::Backends::DX12), None, Some("RTX"), false)` - /// means that this test will fail on all cards with RTX in their name on either D3D backend, no matter the vendor ID. - /// - /// If segfault is set to true, the test won't be run at all due to avoid segfaults. - pub fn specific_failure( - mut self, - backends: Option, - vendor: Option, - device: Option<&'static str>, - skip: bool, - ) -> Self { - self.failures.push(FailureCase { - backends, - vendor, - adapter: device.as_ref().map(AsRef::as_ref).map(str::to_lowercase), - skip, - }); + /// Mark the test as always failing, and needing to be skipped. + pub fn skip(mut self, when: FailureCase) -> Self { + self.skips.push(when); self } - - /// Mark the test as failing on vulkan on mac only - pub fn molten_vk_failure(self) -> Self { - #[cfg(any(target_os = "macos", target_os = "ios"))] - { - self.specific_failure(Some(wgpu::Backends::VULKAN), None, None, false) - } - #[cfg(not(any(target_os = "macos", target_os = "ios")))] - { - self - } - } } pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(TestingContext)) { @@ -210,7 +330,15 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te let (adapter, _surface_guard) = initialize_adapter(); let adapter_info = adapter.get_info(); - let adapter_lowercase_name = adapter_info.name.to_lowercase(); + + // Produce a lower-case version of the adapter info, for comparison against + // `parameters.skips` and `parameters.failures`. + let adapter_lowercase_info = wgt::AdapterInfo { + name: adapter_info.name.to_lowercase(), + driver: adapter_info.driver.to_lowercase(), + ..adapter_info.clone() + }; + let adapter_features = adapter.features(); let adapter_limits = adapter.limits(); let adapter_downlevel_capabilities = adapter.get_downlevel_capabilities(); @@ -254,7 +382,7 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te let context = TestingContext { adapter, - adapter_info: adapter_info.clone(), + adapter_info, adapter_downlevel_capabilities, device, device_features: parameters.required_features, @@ -262,52 +390,26 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te queue, }; - let expected_failure_reason = parameters.failures.iter().find_map(|failure| { - let always = - failure.backends.is_none() && failure.vendor.is_none() && failure.adapter.is_none(); - - let expect_failure_backend = failure - .backends - .map(|f| f.contains(wgpu::Backends::from(adapter_info.backend))); - let expect_failure_vendor = failure.vendor.map(|v| v == adapter_info.vendor); - let expect_failure_adapter = failure - .adapter - .as_deref() - .map(|f| adapter_lowercase_name.contains(f)); - - if expect_failure_backend.unwrap_or(true) - && expect_failure_vendor.unwrap_or(true) - && expect_failure_adapter.unwrap_or(true) - { - if always { - Some((FailureReasons::ALWAYS, failure.skip)) - } else { - let mut reason = FailureReasons::empty(); - reason.set( - FailureReasons::BACKEND, - expect_failure_backend.unwrap_or(false), - ); - reason.set( - FailureReasons::VENDOR, - expect_failure_vendor.unwrap_or(false), - ); - reason.set( - FailureReasons::ADAPTER, - expect_failure_adapter.unwrap_or(false), - ); - Some((reason, failure.skip)) - } - } else { - None - } - }); - - if let Some((reason, true)) = expected_failure_reason { - log::info!("EXPECTED TEST FAILURE SKIPPED: {:?}", reason); + // Check if we should skip the test altogether. + if let Some(skip_reason) = parameters + .skips + .iter() + .find_map(|case| case.applies_to(&adapter_lowercase_info)) + { + log::info!("EXPECTED TEST FAILURE SKIPPED: {:?}", skip_reason); return; } + // Determine if we expect this test to fail, and if so, why. + let expected_failure_reason = parameters + .failures + .iter() + .find_map(|case| case.applies_to(&adapter_lowercase_info)); + + // Run the test, and catch panics (possibly due to failed assertions). let panicked = catch_unwind(AssertUnwindSafe(|| test_function(context))).is_err(); + + // Check whether any validation errors were reported during the test run. cfg_if::cfg_if!( if #[cfg(any(not(target_arch = "wasm32"), target_os = "emscripten"))] { let canary_set = wgpu::hal::VALIDATION_CANARY.get_and_reset(); @@ -316,32 +418,34 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te } ); - let failed = panicked || canary_set; - + // Summarize reasons for actual failure, if any. let failure_cause = match (panicked, canary_set) { - (true, true) => "PANIC AND VALIDATION ERROR", - (true, false) => "PANIC", - (false, true) => "VALIDATION ERROR", - (false, false) => "", + (true, true) => Some("PANIC AND VALIDATION ERROR"), + (true, false) => Some("PANIC"), + (false, true) => Some("VALIDATION ERROR"), + (false, false) => None, }; - let expect_failure = expected_failure_reason.is_some(); - - if failed == expect_failure { - // We got the conditions we expected - if let Some((expected_reason, _)) = expected_failure_reason { - // Print out reason for the failure + // Compare actual results against expectations. + match (failure_cause, expected_failure_reason) { + // The test passed, as expected. + (None, None) => {} + // The test failed unexpectedly. + (Some(cause), None) => { + panic!("UNEXPECTED TEST FAILURE DUE TO {cause}") + } + // The test passed unexpectedly. + (None, Some(reason)) => { + panic!("UNEXPECTED TEST PASS: {reason:?}"); + } + // The test failed, as expected. + (Some(cause), Some(reason_expected)) => { log::info!( - "GOT EXPECTED TEST FAILURE DUE TO {}: {:?}", - failure_cause, - expected_reason + "EXPECTED FAILURE DUE TO {} (expected because of {:?})", + cause, + reason_expected ); } - } else if let Some((reason, _)) = expected_failure_reason { - // We expected to fail, but things passed - panic!("UNEXPECTED TEST PASS: {reason:?}"); - } else { - panic!("UNEXPECTED TEST FAILURE DUE TO {failure_cause}") } } diff --git a/tests/tests/clear_texture.rs b/tests/tests/clear_texture.rs index 7b2024c64c..36f48af359 100644 --- a/tests/tests/clear_texture.rs +++ b/tests/tests/clear_texture.rs @@ -1,5 +1,7 @@ use wasm_bindgen_test::*; -use wgpu_test::{image::ReadbackBuffers, initialize_test, TestParameters, TestingContext}; +use wgpu_test::{ + image::ReadbackBuffers, initialize_test, FailureCase, TestParameters, TestingContext, +}; static TEXTURE_FORMATS_UNCOMPRESSED_GLES_COMPAT: &[wgpu::TextureFormat] = &[ wgpu::TextureFormat::R8Unorm, @@ -328,7 +330,7 @@ fn clear_texture_tests(ctx: &TestingContext, formats: &[wgpu::TextureFormat]) { fn clear_texture_uncompressed_gles_compat() { initialize_test( TestParameters::default() - .webgl2_failure() + .skip(FailureCase::webgl2()) .features(wgpu::Features::CLEAR_TEXTURE), |ctx| { clear_texture_tests(&ctx, TEXTURE_FORMATS_UNCOMPRESSED_GLES_COMPAT); @@ -341,8 +343,8 @@ fn clear_texture_uncompressed_gles_compat() { fn clear_texture_uncompressed() { initialize_test( TestParameters::default() - .webgl2_failure() - .backend_failure(wgpu::Backends::GL) + .skip(FailureCase::webgl2()) + .expect_fail(FailureCase::backend(wgpu::Backends::GL)) .features(wgpu::Features::CLEAR_TEXTURE), |ctx| { clear_texture_tests(&ctx, TEXTURE_FORMATS_UNCOMPRESSED); @@ -355,7 +357,7 @@ fn clear_texture_uncompressed() { fn clear_texture_depth() { initialize_test( TestParameters::default() - .webgl2_failure() + .skip(FailureCase::webgl2()) .downlevel_flags( wgpu::DownlevelFlags::DEPTH_TEXTURE_AND_BUFFER_COPIES | wgpu::DownlevelFlags::COMPUTE_SHADERS, @@ -385,8 +387,10 @@ fn clear_texture_bc() { initialize_test( TestParameters::default() .features(wgpu::Features::CLEAR_TEXTURE | wgpu::Features::TEXTURE_COMPRESSION_BC) - .specific_failure(Some(wgpu::Backends::GL), None, Some("ANGLE"), false) // https://bugs.chromium.org/p/angleproject/issues/detail?id=7056 - .backend_failure(wgpu::Backends::GL), // compressed texture copy to buffer not yet implemented + // https://bugs.chromium.org/p/angleproject/issues/detail?id=7056 + .expect_fail(FailureCase::backend_adapter(wgpu::Backends::GL, "ANGLE")) + // compressed texture copy to buffer not yet implemented + .expect_fail(FailureCase::backend(wgpu::Backends::GL)), |ctx| { clear_texture_tests(&ctx, TEXTURE_FORMATS_BC); }, @@ -402,8 +406,10 @@ fn clear_texture_astc() { max_texture_dimension_2d: wgpu::COPY_BYTES_PER_ROW_ALIGNMENT * 12, ..wgpu::Limits::downlevel_defaults() }) - .specific_failure(Some(wgpu::Backends::GL), None, Some("ANGLE"), false) // https://bugs.chromium.org/p/angleproject/issues/detail?id=7056 - .backend_failure(wgpu::Backends::GL), // compressed texture copy to buffer not yet implemented + // https://bugs.chromium.org/p/angleproject/issues/detail?id=7056 + .expect_fail(FailureCase::backend_adapter(wgpu::Backends::GL, "ANGLE")) + // compressed texture copy to buffer not yet implemented + .expect_fail(FailureCase::backend(wgpu::Backends::GL)), |ctx| { clear_texture_tests(&ctx, TEXTURE_FORMATS_ASTC); }, @@ -415,8 +421,10 @@ fn clear_texture_etc2() { initialize_test( TestParameters::default() .features(wgpu::Features::CLEAR_TEXTURE | wgpu::Features::TEXTURE_COMPRESSION_ETC2) - .specific_failure(Some(wgpu::Backends::GL), None, Some("ANGLE"), false) // https://bugs.chromium.org/p/angleproject/issues/detail?id=7056 - .backend_failure(wgpu::Backends::GL), // compressed texture copy to buffer not yet implemented + // https://bugs.chromium.org/p/angleproject/issues/detail?id=7056 + .expect_fail(FailureCase::backend_adapter(wgpu::Backends::GL, "ANGLE")) + // compressed texture copy to buffer not yet implemented + .expect_fail(FailureCase::backend(wgpu::Backends::GL)), |ctx| { clear_texture_tests(&ctx, TEXTURE_FORMATS_ETC2); }, diff --git a/tests/tests/device.rs b/tests/tests/device.rs index 945d5476d7..f43791f86e 100644 --- a/tests/tests/device.rs +++ b/tests/tests/device.rs @@ -1,6 +1,6 @@ use wasm_bindgen_test::*; -use wgpu_test::{initialize_test, TestParameters}; +use wgpu_test::{initialize_test, FailureCase, TestParameters}; #[test] #[wasm_bindgen_test] @@ -13,26 +13,30 @@ fn device_initialization() { #[test] #[ignore] fn device_mismatch() { - initialize_test(TestParameters::default().failure(), |ctx| { - // Create a bind group uisng a lyaout from another device. This should be a validation - // error but currently crashes. - let (device2, _) = - pollster::block_on(ctx.adapter.request_device(&Default::default(), None)).unwrap(); + initialize_test( + // https://github.com/gfx-rs/wgpu/issues/3927 + TestParameters::default().expect_fail(FailureCase::always()), + |ctx| { + // Create a bind group uisng a lyaout from another device. This should be a validation + // error but currently crashes. + let (device2, _) = + pollster::block_on(ctx.adapter.request_device(&Default::default(), None)).unwrap(); - { - let bind_group_layout = - device2.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + { + let bind_group_layout = + device2.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: &[], + }); + + let _bind_group = ctx.device.create_bind_group(&wgpu::BindGroupDescriptor { label: None, + layout: &bind_group_layout, entries: &[], }); + } - let _bind_group = ctx.device.create_bind_group(&wgpu::BindGroupDescriptor { - label: None, - layout: &bind_group_layout, - entries: &[], - }); - } - - ctx.device.poll(wgpu::Maintain::Poll); - }); + ctx.device.poll(wgpu::Maintain::Poll); + }, + ); } diff --git a/tests/tests/encoder.rs b/tests/tests/encoder.rs index eada44ec45..5914cd22da 100644 --- a/tests/tests/encoder.rs +++ b/tests/tests/encoder.rs @@ -1,6 +1,6 @@ use wasm_bindgen_test::*; use wgpu::RenderPassDescriptor; -use wgpu_test::{fail, initialize_test, TestParameters}; +use wgpu_test::{fail, initialize_test, FailureCase, TestParameters}; #[test] #[wasm_bindgen_test] @@ -22,7 +22,8 @@ fn drop_encoder_after_error() { // #543: COMMAND_ALLOCATOR_CANNOT_RESET] // // For now, we mark the test as failing on DX12. - let parameters = TestParameters::default().backend_failure(wgpu::Backends::DX12); + let parameters = + TestParameters::default().expect_fail(FailureCase::backend(wgpu::Backends::DX12)); initialize_test(parameters, |ctx| { let mut encoder = ctx .device diff --git a/tests/tests/poll.rs b/tests/tests/poll.rs index 7409dad093..e27a47a42c 100644 --- a/tests/tests/poll.rs +++ b/tests/tests/poll.rs @@ -7,7 +7,7 @@ use wgpu::{ }; use wasm_bindgen_test::*; -use wgpu_test::{initialize_test, TestParameters, TestingContext}; +use wgpu_test::{initialize_test, FailureCase, TestParameters, TestingContext}; fn generate_dummy_work(ctx: &TestingContext) -> CommandBuffer { let buffer = ctx.device.create_buffer(&BufferDescriptor { @@ -56,60 +56,75 @@ fn generate_dummy_work(ctx: &TestingContext) -> CommandBuffer { #[test] #[wasm_bindgen_test] fn wait() { - initialize_test(TestParameters::default().skip(), |ctx| { - let cmd_buf = generate_dummy_work(&ctx); - - ctx.queue.submit(Some(cmd_buf)); - ctx.device.poll(Maintain::Wait); - }) + initialize_test( + TestParameters::default().skip(FailureCase::always()), + |ctx| { + let cmd_buf = generate_dummy_work(&ctx); + + ctx.queue.submit(Some(cmd_buf)); + ctx.device.poll(Maintain::Wait); + }, + ) } #[test] #[wasm_bindgen_test] fn double_wait() { - initialize_test(TestParameters::default().skip(), |ctx| { - let cmd_buf = generate_dummy_work(&ctx); - - ctx.queue.submit(Some(cmd_buf)); - ctx.device.poll(Maintain::Wait); - ctx.device.poll(Maintain::Wait); - }) + initialize_test( + TestParameters::default().skip(FailureCase::always()), + |ctx| { + let cmd_buf = generate_dummy_work(&ctx); + + ctx.queue.submit(Some(cmd_buf)); + ctx.device.poll(Maintain::Wait); + ctx.device.poll(Maintain::Wait); + }, + ) } #[test] #[wasm_bindgen_test] fn wait_on_submission() { - initialize_test(TestParameters::default().skip(), |ctx| { - let cmd_buf = generate_dummy_work(&ctx); - - let index = ctx.queue.submit(Some(cmd_buf)); - ctx.device.poll(Maintain::WaitForSubmissionIndex(index)); - }) + initialize_test( + TestParameters::default().skip(FailureCase::always()), + |ctx| { + let cmd_buf = generate_dummy_work(&ctx); + + let index = ctx.queue.submit(Some(cmd_buf)); + ctx.device.poll(Maintain::WaitForSubmissionIndex(index)); + }, + ) } #[test] #[wasm_bindgen_test] fn double_wait_on_submission() { - initialize_test(TestParameters::default().skip(), |ctx| { - let cmd_buf = generate_dummy_work(&ctx); - - let index = ctx.queue.submit(Some(cmd_buf)); - ctx.device - .poll(Maintain::WaitForSubmissionIndex(index.clone())); - ctx.device.poll(Maintain::WaitForSubmissionIndex(index)); - }) + initialize_test( + TestParameters::default().skip(FailureCase::always()), + |ctx| { + let cmd_buf = generate_dummy_work(&ctx); + + let index = ctx.queue.submit(Some(cmd_buf)); + ctx.device + .poll(Maintain::WaitForSubmissionIndex(index.clone())); + ctx.device.poll(Maintain::WaitForSubmissionIndex(index)); + }, + ) } #[test] #[wasm_bindgen_test] fn wait_out_of_order() { - initialize_test(TestParameters::default().skip(), |ctx| { - let cmd_buf1 = generate_dummy_work(&ctx); - let cmd_buf2 = generate_dummy_work(&ctx); - - let index1 = ctx.queue.submit(Some(cmd_buf1)); - let index2 = ctx.queue.submit(Some(cmd_buf2)); - ctx.device.poll(Maintain::WaitForSubmissionIndex(index2)); - ctx.device.poll(Maintain::WaitForSubmissionIndex(index1)); - }) + initialize_test( + TestParameters::default().skip(FailureCase::always()), + |ctx| { + let cmd_buf1 = generate_dummy_work(&ctx); + let cmd_buf2 = generate_dummy_work(&ctx); + + let index1 = ctx.queue.submit(Some(cmd_buf1)); + let index2 = ctx.queue.submit(Some(cmd_buf2)); + ctx.device.poll(Maintain::WaitForSubmissionIndex(index2)); + ctx.device.poll(Maintain::WaitForSubmissionIndex(index1)); + }, + ) } diff --git a/tests/tests/shader/struct_layout.rs b/tests/tests/shader/struct_layout.rs index bc433b5820..7da8cfeef8 100644 --- a/tests/tests/shader/struct_layout.rs +++ b/tests/tests/shader/struct_layout.rs @@ -4,7 +4,7 @@ use wasm_bindgen_test::*; use wgpu::{Backends, DownlevelFlags, Features, Limits}; use crate::shader::{shader_input_output_test, InputStorageType, ShaderTest, MAX_BUFFER_SIZE}; -use wgpu_test::{initialize_test, TestParameters}; +use wgpu_test::{initialize_test, FailureCase, TestParameters}; fn create_struct_layout_tests(storage_type: InputStorageType) -> Vec { let input_values: Vec<_> = (0..(MAX_BUFFER_SIZE as u32 / 4)).collect(); @@ -182,7 +182,7 @@ fn uniform_input() { TestParameters::default() .downlevel_flags(DownlevelFlags::COMPUTE_SHADERS) // Validation errors thrown by the SPIR-V validator https://github.com/gfx-rs/naga/issues/2034 - .specific_failure(Some(wgpu::Backends::VULKAN), None, None, false) + .expect_fail(FailureCase::backend(wgpu::Backends::VULKAN)) .limits(Limits::downlevel_defaults()), |ctx| { shader_input_output_test( @@ -222,7 +222,7 @@ fn push_constant_input() { max_push_constant_size: MAX_BUFFER_SIZE as u32, ..Limits::downlevel_defaults() }) - .backend_failure(Backends::GL), + .expect_fail(FailureCase::backend(Backends::GL)), |ctx| { shader_input_output_test( ctx, diff --git a/tests/tests/shader/zero_init_workgroup_mem.rs b/tests/tests/shader/zero_init_workgroup_mem.rs index a666d2aa28..cbd1b3e561 100644 --- a/tests/tests/shader/zero_init_workgroup_mem.rs +++ b/tests/tests/shader/zero_init_workgroup_mem.rs @@ -8,7 +8,7 @@ use wgpu::{ ShaderStages, }; -use wgpu_test::{initialize_test, TestParameters, TestingContext}; +use wgpu_test::{initialize_test, FailureCase, TestParameters, TestingContext}; #[test] fn zero_init_workgroup_mem() { @@ -18,13 +18,16 @@ fn zero_init_workgroup_mem() { .limits(Limits::downlevel_defaults()) // remove both of these once we get to https://github.com/gfx-rs/wgpu/issues/3193 or // https://github.com/gfx-rs/wgpu/issues/3160 - .specific_failure( - Some(Backends::DX12), - Some(5140), - Some("Microsoft Basic Render Driver"), - true, - ) - .specific_failure(Some(Backends::VULKAN), None, Some("swiftshader"), true), + .skip(FailureCase { + backends: Some(Backends::DX12), + vendor: Some(5140), + adapter: Some("Microsoft Basic Render Driver"), + ..FailureCase::default() + }) + .skip(FailureCase::backend_adapter( + Backends::VULKAN, + "swiftshader", + )), zero_init_workgroup_mem_impl, ); } diff --git a/tests/tests/shader_view_format/mod.rs b/tests/tests/shader_view_format/mod.rs index 1d7dd2630d..46741b4ea8 100644 --- a/tests/tests/shader_view_format/mod.rs +++ b/tests/tests/shader_view_format/mod.rs @@ -1,12 +1,17 @@ use wgpu::{util::DeviceExt, DownlevelFlags, Limits, TextureFormat}; -use wgpu_test::{image::calc_difference, initialize_test, TestParameters, TestingContext}; +use wgpu_test::{ + image::calc_difference, initialize_test, FailureCase, TestParameters, TestingContext, +}; #[test] fn reinterpret_srgb_ness() { let parameters = TestParameters::default() .downlevel_flags(DownlevelFlags::VIEW_FORMATS) .limits(Limits::downlevel_defaults()) - .specific_failure(Some(wgpu::Backends::GL), None, None, true); + .skip(FailureCase { + backends: Some(wgpu::Backends::GL), + ..FailureCase::default() + }); initialize_test(parameters, |ctx| { let unorm_data: [[u8; 4]; 4] = [ [180, 0, 0, 255], diff --git a/tests/tests/vertex_indices/mod.rs b/tests/tests/vertex_indices/mod.rs index 136876017f..edd4f7b057 100644 --- a/tests/tests/vertex_indices/mod.rs +++ b/tests/tests/vertex_indices/mod.rs @@ -3,7 +3,7 @@ use std::num::NonZeroU64; use wasm_bindgen_test::*; use wgpu::util::DeviceExt; -use wgpu_test::{initialize_test, TestParameters, TestingContext}; +use wgpu_test::{initialize_test, FailureCase, TestParameters, TestingContext}; fn pulling_common( ctx: TestingContext, @@ -150,7 +150,7 @@ fn draw_vertex_offset() { initialize_test( TestParameters::default() .test_features_limits() - .backend_failure(wgpu::Backends::DX11), + .expect_fail(FailureCase::backend(wgpu::Backends::DX11)), |ctx| { pulling_common(ctx, &[0, 1, 2, 3, 4, 5], |cmb| { cmb.draw(0..3, 0..1); @@ -176,7 +176,7 @@ fn draw_instanced_offset() { initialize_test( TestParameters::default() .test_features_limits() - .backend_failure(wgpu::Backends::DX11), + .expect_fail(FailureCase::backend(wgpu::Backends::DX11)), |ctx| { pulling_common(ctx, &[0, 1, 2, 3, 4, 5], |cmb| { cmb.draw(0..3, 0..1); diff --git a/tests/tests/write_texture.rs b/tests/tests/write_texture.rs index 0578c60352..8b33cae7f5 100644 --- a/tests/tests/write_texture.rs +++ b/tests/tests/write_texture.rs @@ -1,6 +1,6 @@ //! Tests for texture copy -use wgpu_test::{initialize_test, TestParameters}; +use wgpu_test::{initialize_test, FailureCase, TestParameters}; use wasm_bindgen_test::*; @@ -8,7 +8,8 @@ use wasm_bindgen_test::*; #[wasm_bindgen_test] fn write_texture_subset_2d() { let size = 256; - let parameters = TestParameters::default().backend_failure(wgpu::Backends::DX12); + let parameters = + TestParameters::default().expect_fail(FailureCase::backend(wgpu::Backends::DX12)); initialize_test(parameters, |ctx| { let tex = ctx.device.create_texture(&wgpu::TextureDescriptor { label: None, diff --git a/tests/tests/zero_init_texture_after_discard.rs b/tests/tests/zero_init_texture_after_discard.rs index 4d508f8280..2b757e069a 100644 --- a/tests/tests/zero_init_texture_after_discard.rs +++ b/tests/tests/zero_init_texture_after_discard.rs @@ -1,38 +1,46 @@ use wasm_bindgen_test::*; use wgpu::*; -use wgpu_test::{image::ReadbackBuffers, initialize_test, TestParameters, TestingContext}; +use wgpu_test::{ + image::ReadbackBuffers, initialize_test, FailureCase, TestParameters, TestingContext, +}; // Checks if discarding a color target resets its init state, causing a zero read of this texture when copied in after submit of the encoder. #[test] #[wasm_bindgen_test] fn discarding_color_target_resets_texture_init_state_check_visible_on_copy_after_submit() { - initialize_test(TestParameters::default().webgl2_failure(), |mut ctx| { - let mut case = TestCase::new(&mut ctx, TextureFormat::Rgba8UnormSrgb); - case.create_command_encoder(); - case.discard(); - case.submit_command_encoder(); + initialize_test( + TestParameters::default().skip(FailureCase::webgl2()), + |mut ctx| { + let mut case = TestCase::new(&mut ctx, TextureFormat::Rgba8UnormSrgb); + case.create_command_encoder(); + case.discard(); + case.submit_command_encoder(); - case.create_command_encoder(); - case.copy_texture_to_buffer(); - case.submit_command_encoder(); + case.create_command_encoder(); + case.copy_texture_to_buffer(); + case.submit_command_encoder(); - case.assert_buffers_are_zero(); - }); + case.assert_buffers_are_zero(); + }, + ); } // Checks if discarding a color target resets its init state, causing a zero read of this texture when copied in the same encoder to a buffer. #[test] #[wasm_bindgen_test] fn discarding_color_target_resets_texture_init_state_check_visible_on_copy_in_same_encoder() { - initialize_test(TestParameters::default().webgl2_failure(), |mut ctx| { - let mut case = TestCase::new(&mut ctx, TextureFormat::Rgba8UnormSrgb); - case.create_command_encoder(); - case.discard(); - case.copy_texture_to_buffer(); - case.submit_command_encoder(); + initialize_test( + TestParameters::default().skip(FailureCase::webgl2()), + |mut ctx| { + let mut case = TestCase::new(&mut ctx, TextureFormat::Rgba8UnormSrgb); + case.create_command_encoder(); + case.discard(); + case.copy_texture_to_buffer(); + case.submit_command_encoder(); - case.assert_buffers_are_zero(); - }); + case.assert_buffers_are_zero(); + }, + ); } #[test] From e45119550091398403966c16ccfc7c1cd1172924 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Sep 2023 15:11:05 +0200 Subject: [PATCH 041/135] Bump thiserror from 1.0.47 to 1.0.48 (#4112) Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.47 to 1.0.48. - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.47...1.0.48) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5a28ec8f7a..6a47c810ab 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2642,18 +2642,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.47" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f" +checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.47" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b" +checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" dependencies = [ "proc-macro2", "quote", From e8e53fb31c6f8bce07e7c84eb3ded6d0ab94691f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Sep 2023 15:20:04 +0200 Subject: [PATCH 042/135] Bump serde from 1.0.186 to 1.0.188 (#4091) Bumps [serde](https://github.com/serde-rs/serde) from 1.0.186 to 1.0.188. - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.186...v1.0.188) --- updated-dependencies: - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6a47c810ab..3921a045a7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2400,9 +2400,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.186" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f5db24220c009de9bd45e69fb2938f4b6d2df856aa9304ce377b3180f83b7c1" +checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" dependencies = [ "serde_derive", ] @@ -2418,9 +2418,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.186" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad697f7e0b65af4983a4ce8f56ed5b357e8d3c36651bf6a7e13639c17b8e670" +checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", From 9591505af16007ace9d6b0659a313a319c299854 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Sep 2023 15:27:38 +0200 Subject: [PATCH 043/135] Bump actions/checkout from 3 to 4 (#4117) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 16 ++++++++-------- .github/workflows/cts.yml | 2 +- .github/workflows/docs.yml | 2 +- .github/workflows/publish.yml | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 06ae299b77..981fcd3498 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -93,7 +93,7 @@ jobs: steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install MSRV toolchain run: | @@ -181,7 +181,7 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install wasm-pack uses: taiki-e/install-action@v2 @@ -219,7 +219,7 @@ jobs: steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install cargo-nextest and cargo-llvm-cov uses: taiki-e/install-action@v2 @@ -309,7 +309,7 @@ jobs: steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: disable debug shell: bash @@ -336,7 +336,7 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: run rustfmt run: | @@ -347,7 +347,7 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install MSRV toolchain run: | @@ -376,7 +376,7 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Run `cargo deny check` uses: EmbarkStudios/cargo-deny-action@v1 @@ -390,7 +390,7 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Run `cargo deny check` uses: EmbarkStudios/cargo-deny-action@v1 diff --git a/.github/workflows/cts.yml b/.github/workflows/cts.yml index 70479533cf..e4bb20e7b1 100644 --- a/.github/workflows/cts.yml +++ b/.github/workflows/cts.yml @@ -39,7 +39,7 @@ jobs: steps: - name: checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: path: wgpu diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 11d8d9e962..396a93ef04 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Checkout the code - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: persist-credentials: false diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 81a2a7b407..f0aa086961 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout the code - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: persist-credentials: false From ff807295da214a975cb2255601320352942ef5c5 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Tue, 5 Sep 2023 09:41:46 -0400 Subject: [PATCH 044/135] hal/vulkan: `Instance::required_extensions` -> `desired_extensions` (#4115) Rename `wgpu_hal::vulkan::Instance::required_extensions` to `desired_extensions`, to match its behavior. Document the function to clarify its role. --- CHANGELOG.md | 2 ++ wgpu-hal/src/vulkan/instance.rs | 19 ++++++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0ca6f6350a..8940f627a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -80,6 +80,8 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) #### Vulkan +- Rename `wgpu_hal::vulkan::Instance::required_extensions` to `desired_extensions`. By @jimblandy in [#4115](https://github.com/gfx-rs/wgpu/pull/4115) + - Don't bother calling `vkFreeCommandBuffers` when `vkDestroyCommandPool` will take care of that for us. By @jimblandy in [#4059](https://github.com/gfx-rs/wgpu/pull/4059) diff --git a/wgpu-hal/src/vulkan/instance.rs b/wgpu-hal/src/vulkan/instance.rs index 18b141a070..0fcee254af 100644 --- a/wgpu-hal/src/vulkan/instance.rs +++ b/wgpu-hal/src/vulkan/instance.rs @@ -186,7 +186,20 @@ impl super::Instance { &self.shared } - pub fn required_extensions( + /// Return the instance extension names wgpu would like to enable. + /// + /// Return a vector of the names of instance extensions actually available + /// on `entry` that wgpu would like to enable. + /// + /// The `driver_api_version` argument should be the instance's Vulkan API + /// version, as obtained from `vkEnumerateInstanceVersion`. This is the same + /// space of values as the `VK_API_VERSION` constants. + /// + /// Note that wgpu can function without many of these extensions (for + /// example, `VK_KHR_wayland_surface` is certainly not going to be available + /// everywhere), but if one of these extensions is available at all, wgpu + /// assumes that it has been enabled. + pub fn desired_extensions( entry: &ash::Entry, _driver_api_version: u32, flags: crate::InstanceFlags, @@ -265,7 +278,7 @@ impl super::Instance { /// /// - `raw_instance` must be created from `entry` /// - `raw_instance` must be created respecting `driver_api_version`, `extensions` and `flags` - /// - `extensions` must be a superset of `required_extensions()` and must be created from the + /// - `extensions` must be a superset of `desired_extensions()` and must be created from the /// same entry, driver_api_version and flags. /// - `android_sdk_version` is ignored and can be `0` for all platforms besides Android /// @@ -592,7 +605,7 @@ impl crate::Instance for super::Instance { }, ); - let extensions = Self::required_extensions(&entry, driver_api_version, desc.flags)?; + let extensions = Self::desired_extensions(&entry, driver_api_version, desc.flags)?; let instance_layers = entry.enumerate_instance_layer_properties().map_err(|e| { log::info!("enumerate_instance_layer_properties: {:?}", e); From d17165f08b46628360b2400975ea2770c40826a1 Mon Sep 17 00:00:00 2001 From: Luke Jones Date: Wed, 6 Sep 2023 02:20:04 +1200 Subject: [PATCH 045/135] Enable vulkan presentation on Intel Mesa >= v21.2 (#4110) Due to an issue with Mesa versions less than 21.2 presentation on Vulkan was forced to Nvidia only. This in itself brought new issues around the Nvidia driver specfic format modifers. As of Mesa 21.2 the Intel vulkan issue is fixed. This commit enables presentation on versions 21.2 and above for Intel. References: - https://github.com/NVIDIA/egl-wayland/issues/72 Closes [#4101](https://github.com/gfx-rs/wgpu/issues/4101) --- CHANGELOG.md | 2 ++ wgpu-hal/src/vulkan/instance.rs | 23 ++++++++++++++++------- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8940f627a8..db91b89718 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -103,6 +103,8 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Enhancement of [#4038], using ash's definition instead of hard-coded c_str. By @hybcloud in[#4044](https://github.com/gfx-rs/wgpu/pull/4044). +- Enable vulkan presentation on (Linux) Intel Mesa >= v21.2. By @flukejones in[#4110](https://github.com/gfx-rs/wgpu/pull/4110) + #### DX12 - DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032). diff --git a/wgpu-hal/src/vulkan/instance.rs b/wgpu-hal/src/vulkan/instance.rs index 0fcee254af..34a2c4f23c 100644 --- a/wgpu-hal/src/vulkan/instance.rs +++ b/wgpu-hal/src/vulkan/instance.rs @@ -799,13 +799,22 @@ impl crate::Instance for super::Instance { if exposed.info.device_type == wgt::DeviceType::IntegratedGpu && exposed.info.vendor == db::intel::VENDOR { - // See https://gitlab.freedesktop.org/mesa/mesa/-/issues/4688 - log::warn!( - "Disabling presentation on '{}' (id {:?}) because of NV Optimus (on Linux)", - exposed.info.name, - exposed.adapter.raw - ); - exposed.adapter.private_caps.can_present = false; + // Check if mesa driver and version less than 21.2 + if let Some(version) = exposed.info.driver_info.split_once("Mesa ").map(|s| { + s.1.rsplit_once('.') + .map(|v| v.0.parse::().unwrap_or_default()) + .unwrap_or_default() + }) { + if version < 21.2 { + // See https://gitlab.freedesktop.org/mesa/mesa/-/issues/4688 + log::warn!( + "Disabling presentation on '{}' (id {:?}) due to NV Optimus and Intel Mesa < v21.2", + exposed.info.name, + exposed.adapter.raw + ); + exposed.adapter.private_caps.can_present = false; + } + } } } } From 7634ae6112923f8bc97580b933e1170fb7898c69 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Mon, 4 Sep 2023 14:05:21 -0700 Subject: [PATCH 046/135] wgpu_core: Add logging to Instance::new. For each backend `blah`, log::debug/trace whether we were able to populate `Instance::blah`. --- wgpu-core/src/instance.rs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/wgpu-core/src/instance.rs b/wgpu-core/src/instance.rs index ae1a395d85..0aee56ac6e 100644 --- a/wgpu-core/src/instance.rs +++ b/wgpu-core/src/instance.rs @@ -84,8 +84,22 @@ impl Instance { dx12_shader_compiler: instance_desc.dx12_shader_compiler.clone(), gles_minor_version: instance_desc.gles_minor_version, }; - unsafe { hal::Instance::init(&hal_desc).ok() } + match unsafe { hal::Instance::init(&hal_desc) } { + Ok(instance) => { + log::debug!("Instance::new: created {:?} backend", A::VARIANT); + Some(instance) + } + Err(err) => { + log::debug!( + "Instance::new: failed to create {:?} backend: {:?}", + A::VARIANT, + err + ); + None + } + } } else { + log::trace!("Instance::new: backend {:?} not requested", A::VARIANT); None } } From 4235b0dd1cd2fd6ef2f3be8a3bc1b4785a7e299a Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Tue, 5 Sep 2023 14:06:33 -0400 Subject: [PATCH 047/135] Fix D3D12 Surface Leak (#4106) --- wgpu-core/src/device/global.rs | 26 +++++++++++++++++++------- wgpu-core/src/device/mod.rs | 3 +-- wgpu-core/src/present.rs | 14 +++++++++++++- wgpu-hal/src/dx12/device.rs | 5 ++++- wgpu-hal/src/dx12/mod.rs | 33 ++++++++++++++++++++++++--------- wgpu-hal/src/lib.rs | 16 ++++++++++++++++ wgpu-hal/src/vulkan/device.rs | 2 +- wgpu-hal/src/vulkan/instance.rs | 9 +++++---- 8 files changed, 83 insertions(+), 25 deletions(-) diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index 8fe5a6fcc9..632c83e37f 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -2134,7 +2134,7 @@ impl Global { let (mut surface_guard, mut token) = self.surfaces.write(&mut token); let (adapter_guard, mut token) = hub.adapters.read(&mut token); - let (device_guard, _token) = hub.devices.read(&mut token); + let (device_guard, mut token) = hub.devices.read(&mut token); let error = 'outer: loop { let device = match device_guard.get(device_id) { @@ -2207,6 +2207,24 @@ impl Global { break error; } + // Wait for all work to finish before configuring the surface. + if let Err(e) = device.maintain(hub, wgt::Maintain::Wait, &mut token) { + break e.into(); + } + + // All textures must be destroyed before the surface can be re-configured. + if let Some(present) = surface.presentation.take() { + if present.acquired_texture.is_some() { + break E::PreviousOutputExists; + } + } + + // TODO: Texture views may still be alive that point to the texture. + // this will allow the user to render to the surface texture, long after + // it has been removed. + // + // https://github.com/gfx-rs/wgpu/issues/4105 + match unsafe { A::get_surface_mut(surface) .unwrap() @@ -2226,12 +2244,6 @@ impl Global { } } - if let Some(present) = surface.presentation.take() { - if present.acquired_texture.is_some() { - break E::PreviousOutputExists; - } - } - surface.presentation = Some(present::Presentation { device_id: Stored { value: id::Valid(device_id), diff --git a/wgpu-core/src/device/mod.rs b/wgpu-core/src/device/mod.rs index 0ae6d7a2dd..9a77bf9536 100644 --- a/wgpu-core/src/device/mod.rs +++ b/wgpu-core/src/device/mod.rs @@ -1,6 +1,5 @@ use crate::{ binding_model, - device::life::WaitIdleError, hal_api::HalApi, hub::Hub, id, @@ -24,7 +23,7 @@ pub mod queue; pub mod resource; #[cfg(any(feature = "trace", feature = "replay"))] pub mod trace; -pub use resource::Device; +pub use {life::WaitIdleError, resource::Device}; pub const SHADER_STAGE_COUNT: usize = 3; // Should be large enough for the largest possible texture row. This diff --git a/wgpu-core/src/present.rs b/wgpu-core/src/present.rs index 1303769d29..7366934d27 100644 --- a/wgpu-core/src/present.rs +++ b/wgpu-core/src/present.rs @@ -15,7 +15,7 @@ use std::borrow::Borrow; use crate::device::trace::Action; use crate::{ conv, - device::{DeviceError, MissingDownlevelFlags}, + device::{DeviceError, MissingDownlevelFlags, WaitIdleError}, global::Global, hal_api::HalApi, hub::Token, @@ -96,6 +96,18 @@ pub enum ConfigureSurfaceError { }, #[error("Requested usage is not supported")] UnsupportedUsage, + #[error("Gpu got stuck :(")] + StuckGpu, +} + +impl From for ConfigureSurfaceError { + fn from(e: WaitIdleError) -> Self { + match e { + WaitIdleError::Device(d) => ConfigureSurfaceError::Device(d), + WaitIdleError::WrongSubmissionIndex(..) => unreachable!(), + WaitIdleError::StuckGpu => ConfigureSurfaceError::StuckGpu, + } + } } #[repr(C)] diff --git a/wgpu-hal/src/dx12/device.rs b/wgpu-hal/src/dx12/device.rs index 1a44d98f0d..4ad43cc165 100644 --- a/wgpu-hal/src/dx12/device.rs +++ b/wgpu-hal/src/dx12/device.rs @@ -181,7 +181,10 @@ impl super::Device { }) } - pub(super) unsafe fn wait_idle(&self) -> Result<(), crate::DeviceError> { + // Blocks until the dedicated present queue is finished with all of its work. + // + // Once this method completes, the surface is able to be resized or deleted. + pub(super) unsafe fn wait_for_present_queue_idle(&self) -> Result<(), crate::DeviceError> { let cur_value = self.idler.fence.get_value(); if cur_value == !0 { return Err(crate::DeviceError::Lost); diff --git a/wgpu-hal/src/dx12/mod.rs b/wgpu-hal/src/dx12/mod.rs index 564bc349c6..a231619512 100644 --- a/wgpu-hal/src/dx12/mod.rs +++ b/wgpu-hal/src/dx12/mod.rs @@ -613,19 +613,23 @@ impl crate::Surface for Surface { let mut flags = dxgi::DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT; // We always set ALLOW_TEARING on the swapchain no matter // what kind of swapchain we want because ResizeBuffers - // cannot change if ALLOW_TEARING is applied to the swapchain. + // cannot change the swapchain's ALLOW_TEARING flag. + // + // This does not change the behavior of the swapchain, just + // allow present calls to use tearing. if self.supports_allow_tearing { flags |= dxgi::DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING; } + // While `configure`s contract ensures that no work on the GPU's main queues + // are in flight, we still need to wait for the present queue to be idle. + unsafe { device.wait_for_present_queue_idle() }?; + let non_srgb_format = auxil::dxgi::conv::map_texture_format_nosrgb(config.format); let swap_chain = match self.swap_chain.take() { //Note: this path doesn't properly re-initialize all of the things Some(sc) => { - // can't have image resources in flight used by GPU - let _ = unsafe { device.wait_idle() }; - let raw = unsafe { sc.release_resources() }; let result = unsafe { raw.ResizeBuffers( @@ -773,12 +777,16 @@ impl crate::Surface for Surface { } unsafe fn unconfigure(&mut self, device: &Device) { - if let Some(mut sc) = self.swap_chain.take() { + if let Some(sc) = self.swap_chain.take() { unsafe { - let _ = sc.wait(None); - //TODO: this shouldn't be needed, - // but it complains that the queue is still used otherwise - let _ = device.wait_idle(); + // While `unconfigure`s contract ensures that no work on the GPU's main queues + // are in flight, we still need to wait for the present queue to be idle. + + // The major failure mode of this function is device loss, + // which if we have lost the device, we should just continue + // cleaning up, without error. + let _ = device.wait_for_present_queue_idle(); + let _raw = sc.release_resources(); } } @@ -837,6 +845,13 @@ impl crate::Queue for Queue { .signal(&fence.raw, value) .into_device_result("Signal fence")?; } + + // Note the lack of synchronization here between the main Direct queue + // and the dedicated presentation queue. This is automatically handled + // by the D3D runtime by detecting uses of resources derived from the + // swapchain. This automatic detection is why you cannot use a swapchain + // as an UAV in D3D12. + Ok(()) } unsafe fn present( diff --git a/wgpu-hal/src/lib.rs b/wgpu-hal/src/lib.rs index 4bff6b8d8f..f1f4b2109e 100644 --- a/wgpu-hal/src/lib.rs +++ b/wgpu-hal/src/lib.rs @@ -227,12 +227,28 @@ pub trait Instance: Sized + WasmNotSend + WasmNotSync { } pub trait Surface: WasmNotSend + WasmNotSync { + /// Configures the surface to use the given device. + /// + /// # Safety + /// + /// - All gpu work that uses the surface must have been completed. + /// - All [`AcquiredSurfaceTexture`]s must have been destroyed. + /// - All [`Api::TextureView`]s derived from the [`AcquiredSurfaceTexture`]s must have been destroyed. + /// - All surfaces created using other devices must have been unconfigured before this call. unsafe fn configure( &mut self, device: &A::Device, config: &SurfaceConfiguration, ) -> Result<(), SurfaceError>; + /// Unconfigures the surface on the given device. + /// + /// # Safety + /// + /// - All gpu work that uses the surface must have been completed. + /// - All [`AcquiredSurfaceTexture`]s must have been destroyed. + /// - All [`Api::TextureView`]s derived from the [`AcquiredSurfaceTexture`]s must have been destroyed. + /// - The surface must have been configured on the given device. unsafe fn unconfigure(&mut self, device: &A::Device); /// Returns the next texture to be presented by the swapchain for drawing diff --git a/wgpu-hal/src/vulkan/device.rs b/wgpu-hal/src/vulkan/device.rs index 4f2a0feb8a..cb955e8318 100644 --- a/wgpu-hal/src/vulkan/device.rs +++ b/wgpu-hal/src/vulkan/device.rs @@ -1143,7 +1143,7 @@ impl crate::Device for super::Device { } if desc.anisotropy_clamp != 1 { - // We only enable anisotropy if it is supported, and wgpu-hal interface guarentees + // We only enable anisotropy if it is supported, and wgpu-hal interface guarantees // the clamp is in the range [1, 16] which is always supported if anisotropy is. vk_info = vk_info .anisotropy_enable(true) diff --git a/wgpu-hal/src/vulkan/instance.rs b/wgpu-hal/src/vulkan/instance.rs index 34a2c4f23c..18269fff77 100644 --- a/wgpu-hal/src/vulkan/instance.rs +++ b/wgpu-hal/src/vulkan/instance.rs @@ -152,12 +152,11 @@ unsafe extern "system" fn debug_utils_messenger_callback( } impl super::Swapchain { + /// # Safety + /// + /// - The device must have been made idle before calling this function. unsafe fn release_resources(self, device: &ash::Device) -> Self { profiling::scope!("Swapchain::release_resources"); - { - profiling::scope!("vkDeviceWaitIdle"); - let _ = unsafe { device.device_wait_idle() }; - }; unsafe { device.destroy_fence(self.fence, None) }; self } @@ -829,6 +828,7 @@ impl crate::Surface for super::Surface { device: &super::Device, config: &crate::SurfaceConfiguration, ) -> Result<(), crate::SurfaceError> { + // Safety: `configure`'s contract guarantees there are no resources derived from the swapchain in use. let old = self .swapchain .take() @@ -842,6 +842,7 @@ impl crate::Surface for super::Surface { unsafe fn unconfigure(&mut self, device: &super::Device) { if let Some(sc) = self.swapchain.take() { + // Safety: `unconfigure`'s contract guarantees there are no resources derived from the swapchain in use. let swapchain = unsafe { sc.release_resources(&device.shared.raw) }; unsafe { swapchain.functor.destroy_swapchain(swapchain.raw, None) }; } From 9a91953537de46ff27a66480273e1cbe968bd98b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Sep 2023 09:29:52 -0400 Subject: [PATCH 048/135] Bump bytemuck from 1.13.1 to 1.14.0 (#4123) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3921a045a7..c0a529700b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -262,9 +262,9 @@ checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" [[package]] name = "bytemuck" -version = "1.13.1" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" +checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" dependencies = [ "bytemuck_derive", ] diff --git a/Cargo.toml b/Cargo.toml index 9455290b3d..c3676fada3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -60,7 +60,7 @@ arrayvec = "0.7" async-executor = "1" bitflags = "2" bit-vec = "0.6" -bytemuck = { version = "1.13", features = ["derive"] } +bytemuck = { version = "1.14", features = ["derive"] } cfg_aliases = "0.1" cfg-if = "1" codespan-reporting = "0.11" From 012304ea111a06b574fcd7863946acef917581f8 Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Mon, 11 Sep 2023 15:57:43 +0200 Subject: [PATCH 049/135] Update `naga` to 0.13.0@git:cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c (#4130) Co-authored-by: Nicolas Silva --- Cargo.lock | 2 +- Cargo.toml | 2 +- wgpu-core/Cargo.toml | 2 +- wgpu-core/src/validation.rs | 1 + wgpu-hal/Cargo.toml | 4 ++-- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c0a529700b..ced70abf1e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1603,7 +1603,7 @@ dependencies = [ [[package]] name = "naga" version = "0.13.0" -source = "git+https://github.com/gfx-rs/naga?rev=7a19f3af909202c7eafd36633b5584bfbb353ecb#7a19f3af909202c7eafd36633b5584bfbb353ecb" +source = "git+https://github.com/gfx-rs/naga?rev=cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c#cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" dependencies = [ "bit-set", "bitflags 2.4.0", diff --git a/Cargo.toml b/Cargo.toml index c3676fada3..2975a79aa3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,7 +51,7 @@ version = "0.17" [workspace.dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" +rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" version = "0.13.0" [workspace.dependencies] diff --git a/wgpu-core/Cargo.toml b/wgpu-core/Cargo.toml index 5cebd9fdca..5487a8bdc0 100644 --- a/wgpu-core/Cargo.toml +++ b/wgpu-core/Cargo.toml @@ -72,7 +72,7 @@ thiserror = "1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" +rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" version = "0.13.0" features = ["clone", "span", "validate"] diff --git a/wgpu-core/src/validation.rs b/wgpu-core/src/validation.rs index 84e1e71691..e3ecb916d3 100644 --- a/wgpu-core/src/validation.rs +++ b/wgpu-core/src/validation.rs @@ -812,6 +812,7 @@ impl Interface { location, interpolation, sampling, + .. // second_blend_source }) => Varying::Local { location, iv: InterfaceVar { diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 53b2816435..225f18256a 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -120,14 +120,14 @@ android_system_properties = "0.1.1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" +rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" version = "0.13.0" features = ["clone"] # DEV dependencies [dev-dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "7a19f3af909202c7eafd36633b5584bfbb353ecb" +rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" version = "0.13.0" features = ["wgsl-in"] From 7fea9e934efd8d5dc03b9aa3e06b775c1ac4a23e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 22:12:43 +0200 Subject: [PATCH 050/135] Bump serde_json from 1.0.105 to 1.0.106 (#4129) Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.105 to 1.0.106. - [Release notes](https://github.com/serde-rs/json/releases) - [Commits](https://github.com/serde-rs/json/compare/v1.0.105...v1.0.106) --- updated-dependencies: - dependency-name: serde_json dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- wgpu-types/Cargo.toml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ced70abf1e..b249da1315 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2429,9 +2429,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.105" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" +checksum = "2cc66a619ed80bf7a0f6b17dd063a84b88f6dea1813737cf469aef1d081142c2" dependencies = [ "indexmap 2.0.0", "itoa", diff --git a/Cargo.toml b/Cargo.toml index 2975a79aa3..fc2790b546 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -89,7 +89,7 @@ raw-window-handle = "0.5" renderdoc-sys = "1.0.0" ron = "0.8" serde = "1" -serde_json = "1.0.105" +serde_json = "1.0.106" smallvec = "1" static_assertions = "1.1.0" thiserror = "1" diff --git a/wgpu-types/Cargo.toml b/wgpu-types/Cargo.toml index 4ef59398d0..93e447a0bc 100644 --- a/wgpu-types/Cargo.toml +++ b/wgpu-types/Cargo.toml @@ -42,4 +42,4 @@ web-sys = { version = "0.3.64", features = [ [dev-dependencies] serde = { version = "1", features = ["serde_derive"] } -serde_json = "1.0.105" +serde_json = "1.0.106" From 90b022d437657de4758b25b655d9d4cc85e6a123 Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Thu, 14 Sep 2023 18:12:35 +0200 Subject: [PATCH 051/135] Print errors in a more readable format in the player. (#4137) Co-authored-by: Nicolas Silva --- player/src/lib.rs | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/player/src/lib.rs b/player/src/lib.rs index a4be0b1c81..fbfb2697d1 100644 --- a/player/src/lib.rs +++ b/player/src/lib.rs @@ -158,7 +158,7 @@ impl GlobalPlay for wgc::global::Global { let (cmd_buf, error) = self .command_encoder_finish::(encoder, &wgt::CommandBufferDescriptor { label: None }); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } cmd_buf } @@ -186,7 +186,7 @@ impl GlobalPlay for wgc::global::Global { self.device_maintain_ids::(device).unwrap(); let (_, error) = self.device_create_buffer::(device, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::FreeBuffer(id) => { @@ -199,7 +199,7 @@ impl GlobalPlay for wgc::global::Global { self.device_maintain_ids::(device).unwrap(); let (_, error) = self.device_create_texture::(device, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::FreeTexture(id) => { @@ -216,7 +216,7 @@ impl GlobalPlay for wgc::global::Global { self.device_maintain_ids::(device).unwrap(); let (_, error) = self.texture_create_view::(parent_id, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyTextureView(id) => { @@ -226,7 +226,7 @@ impl GlobalPlay for wgc::global::Global { self.device_maintain_ids::(device).unwrap(); let (_, error) = self.device_create_sampler::(device, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroySampler(id) => { @@ -242,7 +242,7 @@ impl GlobalPlay for wgc::global::Global { Action::CreateBindGroupLayout(id, desc) => { let (_, error) = self.device_create_bind_group_layout::(device, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyBindGroupLayout(id) => { @@ -252,7 +252,7 @@ impl GlobalPlay for wgc::global::Global { self.device_maintain_ids::(device).unwrap(); let (_, error) = self.device_create_pipeline_layout::(device, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyPipelineLayout(id) => { @@ -262,7 +262,7 @@ impl GlobalPlay for wgc::global::Global { self.device_maintain_ids::(device).unwrap(); let (_, error) = self.device_create_bind_group::(device, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyBindGroup(id) => { @@ -272,7 +272,7 @@ impl GlobalPlay for wgc::global::Global { log::info!("Creating shader from {}", data); let code = fs::read_to_string(dir.join(&data)).unwrap(); let source = if data.ends_with(".wgsl") { - wgc::pipeline::ShaderModuleSource::Wgsl(Cow::Owned(code)) + wgc::pipeline::ShaderModuleSource::Wgsl(Cow::Owned(code.clone())) } else if data.ends_with(".ron") { let module = ron::de::from_str(&code).unwrap(); wgc::pipeline::ShaderModuleSource::Naga(module) @@ -281,7 +281,7 @@ impl GlobalPlay for wgc::global::Global { }; let (_, error) = self.device_create_shader_module::(device, &desc, source, id); if let Some(e) = error { - panic!("{:?}", e); + println!("shader compilation error:\n---{code}\n---\n{e}"); } } Action::DestroyShaderModule(id) => { @@ -303,7 +303,7 @@ impl GlobalPlay for wgc::global::Global { let (_, error) = self.device_create_compute_pipeline::(device, &desc, id, implicit_ids); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyComputePipeline(id) => { @@ -325,7 +325,7 @@ impl GlobalPlay for wgc::global::Global { let (_, error) = self.device_create_render_pipeline::(device, &desc, id, implicit_ids); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyRenderPipeline(id) => { @@ -340,7 +340,7 @@ impl GlobalPlay for wgc::global::Global { id, ); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyRenderBundle(id) => { @@ -350,7 +350,7 @@ impl GlobalPlay for wgc::global::Global { self.device_maintain_ids::(device).unwrap(); let (_, error) = self.device_create_query_set::(device, &desc, id); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } } Action::DestroyQuerySet(id) => { @@ -393,7 +393,7 @@ impl GlobalPlay for wgc::global::Global { comb_manager.alloc(device.backend()), ); if let Some(e) = error { - panic!("{:?}", e); + panic!("{e}"); } let cmdbuf = self.encode_commands::(encoder, commands); self.queue_submit::(device, &[cmdbuf]).unwrap(); From b488e03d9fec114e145a89faee976ede32a7d774 Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Thu, 14 Sep 2023 16:38:21 -0400 Subject: [PATCH 052/135] Workaround NV bug (#4132) --- tests/tests/regression/issue_4122.rs | 110 +++++++++++++++++++++++++++ tests/tests/root.rs | 1 + wgpu-hal/src/vulkan/adapter.rs | 4 + wgpu-hal/src/vulkan/command.rs | 47 +++++++++--- wgpu-hal/src/vulkan/mod.rs | 22 ++++++ 5 files changed, 175 insertions(+), 9 deletions(-) create mode 100644 tests/tests/regression/issue_4122.rs diff --git a/tests/tests/regression/issue_4122.rs b/tests/tests/regression/issue_4122.rs new file mode 100644 index 0000000000..41b9cd4231 --- /dev/null +++ b/tests/tests/regression/issue_4122.rs @@ -0,0 +1,110 @@ +use std::{num::NonZeroU64, ops::Range}; + +use wasm_bindgen_test::wasm_bindgen_test; +use wgpu_test::{initialize_test, TestParameters, TestingContext}; + +fn fill_test(ctx: &TestingContext, range: Range, size: u64) -> bool { + let gpu_buffer = ctx.device.create_buffer(&wgpu::BufferDescriptor { + label: Some("gpu_buffer"), + size, + usage: wgpu::BufferUsages::COPY_DST | wgpu::BufferUsages::COPY_SRC, + mapped_at_creation: false, + }); + + let cpu_buffer = ctx.device.create_buffer(&wgpu::BufferDescriptor { + label: Some("cpu_buffer"), + size, + usage: wgpu::BufferUsages::COPY_DST | wgpu::BufferUsages::MAP_READ, + mapped_at_creation: false, + }); + + // Initialize the whole buffer with values. + let buffer_contents = vec![0xFF_u8; size as usize]; + ctx.queue.write_buffer(&gpu_buffer, 0, &buffer_contents); + + let mut encoder = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor { + label: Some("encoder"), + }); + + encoder.clear_buffer( + &gpu_buffer, + range.start, + NonZeroU64::new(range.end - range.start), + ); + encoder.copy_buffer_to_buffer(&gpu_buffer, 0, &cpu_buffer, 0, size); + + ctx.queue.submit(Some(encoder.finish())); + cpu_buffer.slice(..).map_async(wgpu::MapMode::Read, |_| ()); + ctx.device.poll(wgpu::Maintain::Wait); + + let buffer_slice = cpu_buffer.slice(..); + let buffer_data = buffer_slice.get_mapped_range(); + + let first_clear_byte = buffer_data + .iter() + .enumerate() + .find_map(|(index, byte)| (*byte == 0x00).then_some(index)) + .expect("No clear happened at all"); + + let first_dirty_byte = buffer_data + .iter() + .enumerate() + .skip(first_clear_byte) + .find_map(|(index, byte)| (*byte != 0x00).then_some(index)) + .unwrap_or(size as usize); + + let second_clear_byte = buffer_data + .iter() + .enumerate() + .skip(first_dirty_byte) + .find_map(|(index, byte)| (*byte == 0x00).then_some(index)); + + if second_clear_byte.is_some() { + eprintln!("Found multiple cleared ranges instead of a single clear range of {}..{} on a buffer of size {}.", range.start, range.end, size); + return false; + } + + let cleared_range = first_clear_byte as u64..first_dirty_byte as u64; + + if cleared_range != range { + eprintln!( + "Cleared range is {}..{}, but the clear range is {}..{} on a buffer of size {}.", + cleared_range.start, cleared_range.end, range.start, range.end, size + ); + return false; + } + + eprintln!( + "Cleared range is {}..{} on a buffer of size {}.", + cleared_range.start, cleared_range.end, size + ); + + true +} + +/// Nvidia has a bug in vkCmdFillBuffer where the clear range is not properly respected under +/// certain conditions. See https://github.com/gfx-rs/wgpu/issues/4122 for more information. +/// +/// This test will fail on nvidia if the bug is not properly worked around. +#[wasm_bindgen_test] +#[test] +fn clear_buffer_bug() { + initialize_test(TestParameters::default(), |ctx| { + // This hits most of the cases in nvidia's clear buffer bug + let mut succeeded = true; + for power in 4..14 { + let size = 1 << power; + for start_offset in (0..=36).step_by(4) { + for size_offset in (0..=36).step_by(4) { + let range = start_offset..size + size_offset + start_offset; + let result = fill_test(&ctx, range, 1 << 16); + + succeeded &= result; + } + } + } + assert!(succeeded); + }); +} diff --git a/tests/tests/root.rs b/tests/tests/root.rs index 25df8eda90..85901ae491 100644 --- a/tests/tests/root.rs +++ b/tests/tests/root.rs @@ -3,6 +3,7 @@ use wasm_bindgen_test::wasm_bindgen_test_configure; mod regression { mod issue_3457; mod issue_4024; + mod issue_4122; } mod bind_group_layout_dedup; diff --git a/wgpu-hal/src/vulkan/adapter.rs b/wgpu-hal/src/vulkan/adapter.rs index 4a7ccf9535..bcbab85084 100644 --- a/wgpu-hal/src/vulkan/adapter.rs +++ b/wgpu-hal/src/vulkan/adapter.rs @@ -984,6 +984,10 @@ impl super::Instance { super::Workarounds::EMPTY_RESOLVE_ATTACHMENT_LISTS, phd_capabilities.properties.vendor_id == db::qualcomm::VENDOR, ); + workarounds.set( + super::Workarounds::FORCE_FILL_BUFFER_WITH_SIZE_GREATER_4096_ALIGNED_OFFSET_16, + phd_capabilities.properties.vendor_id == db::nvidia::VENDOR, + ); }; if phd_capabilities.effective_api_version == vk::API_VERSION_1_0 diff --git a/wgpu-hal/src/vulkan/command.rs b/wgpu-hal/src/vulkan/command.rs index c2e7afe3f1..391b754d33 100644 --- a/wgpu-hal/src/vulkan/command.rs +++ b/wgpu-hal/src/vulkan/command.rs @@ -212,15 +212,44 @@ impl crate::CommandEncoder for super::CommandEncoder { } unsafe fn clear_buffer(&mut self, buffer: &super::Buffer, range: crate::MemoryRange) { - unsafe { - self.device.raw.cmd_fill_buffer( - self.active, - buffer.raw, - range.start, - range.end - range.start, - 0, - ) - }; + let range_size = range.end - range.start; + if self.device.workarounds.contains( + super::Workarounds::FORCE_FILL_BUFFER_WITH_SIZE_GREATER_4096_ALIGNED_OFFSET_16, + ) && range_size >= 4096 + && range.start % 16 != 0 + { + let rounded_start = wgt::math::align_to(range.start, 16); + let prefix_size = rounded_start - range.start; + + unsafe { + self.device.raw.cmd_fill_buffer( + self.active, + buffer.raw, + range.start, + prefix_size, + 0, + ) + }; + + // This will never be zero, as rounding can only add up to 12 bytes, and the total size is 4096. + let suffix_size = range.end - rounded_start; + + unsafe { + self.device.raw.cmd_fill_buffer( + self.active, + buffer.raw, + rounded_start, + suffix_size, + 0, + ) + }; + } else { + unsafe { + self.device + .raw + .cmd_fill_buffer(self.active, buffer.raw, range.start, range_size, 0) + }; + } } unsafe fn copy_buffer_to_buffer( diff --git a/wgpu-hal/src/vulkan/mod.rs b/wgpu-hal/src/vulkan/mod.rs index c2165e1dd8..fe2ee914cd 100644 --- a/wgpu-hal/src/vulkan/mod.rs +++ b/wgpu-hal/src/vulkan/mod.rs @@ -207,6 +207,28 @@ bitflags::bitflags!( /// Qualcomm OOMs when there are zero color attachments but a non-null pointer /// to a subpass resolve attachment array. This nulls out that pointer in that case. const EMPTY_RESOLVE_ATTACHMENT_LISTS = 0x2; + /// If the following code returns false, then nvidia will end up filling the wrong range. + /// + /// ```skip + /// fn nvidia_succeeds() -> bool { + /// # let (copy_length, start_offset) = (0, 0); + /// if copy_length >= 4096 { + /// if start_offset % 16 != 0 { + /// if copy_length == 4096 { + /// return true; + /// } + /// if copy_length % 16 == 0 { + /// return false; + /// } + /// } + /// } + /// true + /// } + /// ``` + /// + /// As such, we need to make sure all calls to vkCmdFillBuffer are aligned to 16 bytes + /// if they cover a range of 4096 bytes or more. + const FORCE_FILL_BUFFER_WITH_SIZE_GREATER_4096_ALIGNED_OFFSET_16 = 0x4; } ); From 4bc7d8788afc7e95b0c3ff00b85c8c4551f1c7b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Sep 2023 16:39:39 -0400 Subject: [PATCH 053/135] Bump serde_json from 1.0.106 to 1.0.107 (#4133) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- wgpu-types/Cargo.toml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b249da1315..10b7ee144a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2429,9 +2429,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.106" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cc66a619ed80bf7a0f6b17dd063a84b88f6dea1813737cf469aef1d081142c2" +checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" dependencies = [ "indexmap 2.0.0", "itoa", diff --git a/Cargo.toml b/Cargo.toml index fc2790b546..55c6048b86 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -89,7 +89,7 @@ raw-window-handle = "0.5" renderdoc-sys = "1.0.0" ron = "0.8" serde = "1" -serde_json = "1.0.106" +serde_json = "1.0.107" smallvec = "1" static_assertions = "1.1.0" thiserror = "1" diff --git a/wgpu-types/Cargo.toml b/wgpu-types/Cargo.toml index 93e447a0bc..fd0abb0dc9 100644 --- a/wgpu-types/Cargo.toml +++ b/wgpu-types/Cargo.toml @@ -42,4 +42,4 @@ web-sys = { version = "0.3.64", features = [ [dev-dependencies] serde = { version = "1", features = ["serde_derive"] } -serde_json = "1.0.106" +serde_json = "1.0.107" From 40cc2ee88a5c9bf281395547375e279ca30aedc0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Sep 2023 16:39:48 -0400 Subject: [PATCH 054/135] Bump libc from 0.2.147 to 0.2.148 (#4134) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 10b7ee144a..ba1a403628 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1466,9 +1466,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.147" +version = "0.2.148" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" +checksum = "9cdc71e17332e86d2e1d38c1f99edcb6288ee11b815fb1a4b049eaa2114d369b" [[package]] name = "libloading" From 7c575a0b40b4cda2977d10ccc2c007ca2f77f3aa Mon Sep 17 00:00:00 2001 From: Kevin Reid Date: Fri, 15 Sep 2023 21:16:49 -0700 Subject: [PATCH 055/135] Add details to `RequestDeviceError`. (#4145) --- CHANGELOG.md | 2 +- tests/src/lib.rs | 2 +- tests/tests/device.rs | 51 ++++++++++++++++++++ wgpu/src/backend/direct.rs | 3 +- wgpu/src/backend/web.rs | 4 +- wgpu/src/lib.rs | 95 ++++++++++++++++++++++++++++++++++++-- 6 files changed, 147 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index db91b89718..ad4c81d076 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -75,7 +75,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) - Omit texture store bound checks since they are no-ops if out of bounds on all APIs. By @teoxoy in [#3975](https://github.com/gfx-rs/wgpu/pull/3975) - Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL`. By @teoxoy in [#4031](https://github.com/gfx-rs/wgpu/pull/4031) - Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. By @James2022-rgb in [#4058](https://github.com/gfx-rs/wgpu/pull/4058) -- `wgpu::CreateSurfaceError` now gives details of the failure, but no longer implements `PartialEq`. By @kpreid in [#4066](https://github.com/gfx-rs/wgpu/pull/4066) +- `wgpu::CreateSurfaceError` and `wgpu::RequestDeviceError` now give details of the failure, but no longer implement `PartialEq` and cannot be constructed. By @kpreid in [#4066](https://github.com/gfx-rs/wgpu/pull/4066) and [#4145](https://github.com/gfx-rs/wgpu/pull/4145) - Make `WGPU_POWER_PREF=none` a valid value. By @fornwall in [4076](https://github.com/gfx-rs/wgpu/pull/4076) #### Vulkan diff --git a/tests/src/lib.rs b/tests/src/lib.rs index 236b353386..c506126708 100644 --- a/tests/src/lib.rs +++ b/tests/src/lib.rs @@ -449,7 +449,7 @@ pub fn initialize_test(parameters: TestParameters, test_function: impl FnOnce(Te } } -fn initialize_adapter() -> (Adapter, Option) { +pub fn initialize_adapter() -> (Adapter, Option) { let instance = initialize_instance(); let surface_guard: Option; let compatible_surface; diff --git a/tests/tests/device.rs b/tests/tests/device.rs index f43791f86e..7964f2afdb 100644 --- a/tests/tests/device.rs +++ b/tests/tests/device.rs @@ -40,3 +40,54 @@ fn device_mismatch() { }, ); } + +#[cfg(not(all(target_arch = "wasm32", not(target_os = "emscripten"))))] +#[test] +fn request_device_error_on_native() { + pollster::block_on(request_device_error_message()); +} + +/// Check that `RequestDeviceError`s produced have some diagnostic information. +/// +/// Note: this is a wasm *and* native test. On wasm it is run directly; on native, indirectly +#[wasm_bindgen_test::wasm_bindgen_test] +async fn request_device_error_message() { + // Not using initialize_test() because that doesn't let us catch the error + // nor .await anything + let (adapter, _surface_guard) = wgpu_test::initialize_adapter(); + + let device_error = adapter + .request_device( + &wgpu::DeviceDescriptor { + // Force a failure by requesting absurd limits. + features: wgpu::Features::all(), + limits: wgpu::Limits { + max_texture_dimension_1d: u32::MAX, + max_texture_dimension_2d: u32::MAX, + max_texture_dimension_3d: u32::MAX, + max_bind_groups: u32::MAX, + max_push_constant_size: u32::MAX, + ..Default::default() + }, + ..Default::default() + }, + None, + ) + .await + .unwrap_err(); + + let device_error = device_error.to_string(); + cfg_if::cfg_if! { + if #[cfg(all(target_arch = "wasm32", not(feature = "webgl")))] { + // On WebGPU, so the error we get will be from the browser WebGPU API. + // Per the WebGPU specification this should be a `TypeError` when features are not + // available, , + // and the stringification it goes through for Rust should put that in the message. + let expected = "TypeError"; + } else { + // This message appears whenever wgpu-core is used as the implementation. + let expected = "Unsupported features were requested: Features("; + } + } + assert!(device_error.contains(expected), "{device_error}"); +} diff --git a/wgpu/src/backend/direct.rs b/wgpu/src/backend/direct.rs index 8eec9adad5..2e15e295e8 100644 --- a/wgpu/src/backend/direct.rs +++ b/wgpu/src/backend/direct.rs @@ -622,8 +622,7 @@ impl crate::Context for Context { () )); if let Some(err) = error { - log::error!("Error in Adapter::request_device: {}", err); - return ready(Err(crate::RequestDeviceError)); + return ready(Err(err.into())); } let error_sink = Arc::new(Mutex::new(ErrorSinkRaw::new())); let device = Device { diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index d64bd8bcb1..2f83d50c55 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -812,7 +812,9 @@ fn future_request_device( (device_id, device_data, queue_id, queue_data) }) - .map_err(|_| crate::RequestDeviceError) + .map_err(|error_value| crate::RequestDeviceError { + inner: crate::RequestDeviceErrorKind::Web(error_value), + }) } fn future_pop_error_scope(result: JsFutureResult) -> Option { diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 94345f1adb..19dc20120d 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -2738,18 +2738,103 @@ impl Drop for Device { } } -/// Requesting a device failed. -#[derive(Clone, PartialEq, Eq, Debug)] -pub struct RequestDeviceError; +/// Requesting a device from an [`Adapter`] failed. +#[derive(Clone, Debug)] +pub struct RequestDeviceError { + inner: RequestDeviceErrorKind, +} +#[derive(Clone, Debug)] +enum RequestDeviceErrorKind { + /// Error from [`wgpu_core`]. + // must match dependency cfg + #[cfg(any( + not(target_arch = "wasm32"), + feature = "webgl", + target_os = "emscripten" + ))] + Core(core::instance::RequestDeviceError), + + /// Error from web API that was called by `wgpu` to request a device. + /// + /// (This is currently never used by the webgl backend, but it could be.) + #[cfg(all( + target_arch = "wasm32", + not(any(target_os = "emscripten", feature = "webgl")) + ))] + Web(wasm_bindgen::JsValue), +} + +#[cfg(all( + feature = "fragile-send-sync-non-atomic-wasm", + not(target_feature = "atomics") +))] +unsafe impl Send for RequestDeviceErrorKind {} +#[cfg(all( + feature = "fragile-send-sync-non-atomic-wasm", + not(target_feature = "atomics") +))] +unsafe impl Sync for RequestDeviceErrorKind {} + +#[cfg(any( + not(target_arch = "wasm32"), + all( + feature = "fragile-send-sync-non-atomic-wasm", + not(target_feature = "atomics") + ) +))] static_assertions::assert_impl_all!(RequestDeviceError: Send, Sync); impl fmt::Display for RequestDeviceError { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - write!(f, "Requesting a device failed") + match &self.inner { + #[cfg(any( + not(target_arch = "wasm32"), + feature = "webgl", + target_os = "emscripten" + ))] + RequestDeviceErrorKind::Core(error) => error.fmt(f), + #[cfg(all( + target_arch = "wasm32", + not(any(target_os = "emscripten", feature = "webgl")) + ))] + RequestDeviceErrorKind::Web(error_js_value) => { + // wasm-bindgen provides a reasonable error stringification via `Debug` impl + write!(f, "{error_js_value:?}") + } + } + } +} + +impl error::Error for RequestDeviceError { + fn source(&self) -> Option<&(dyn error::Error + 'static)> { + match &self.inner { + #[cfg(any( + not(target_arch = "wasm32"), + feature = "webgl", + target_os = "emscripten" + ))] + RequestDeviceErrorKind::Core(error) => error.source(), + #[cfg(all( + target_arch = "wasm32", + not(any(target_os = "emscripten", feature = "webgl")) + ))] + RequestDeviceErrorKind::Web(_) => None, + } } } -impl error::Error for RequestDeviceError {} +#[cfg(any( + not(target_arch = "wasm32"), + feature = "webgl", + target_os = "emscripten" +))] +impl From for RequestDeviceError { + fn from(error: core::instance::RequestDeviceError) -> Self { + Self { + inner: RequestDeviceErrorKind::Core(error), + } + } +} /// [`Instance::create_surface()`] or a related function failed. #[derive(Clone, Debug)] From 0ffdae31a1f75e1041ed4472eb0552c487831efe Mon Sep 17 00:00:00 2001 From: Andreas Reich Date: Sat, 16 Sep 2023 22:01:46 +0200 Subject: [PATCH 056/135] Metal encoder & pass timestamp support (#4008) Implements timer queries via write_timestamp on Metal for encoders (whenever timer queries are available) and passes (for Intel/AMD GPUs, where we should advertise TIMESTAMP_QUERY_INSIDE_PASSES now). Due to some bugs in Metal this was a lot harder than expected. I believe the solution is close to optimal with the current restrictions in place. For details see code comments. --- .deny.toml | 1 + CHANGELOG.md | 4 + Cargo.lock | 3 +- Cargo.toml | 2 + examples/timestamp-queries/src/main.rs | 18 +-- wgpu-hal/src/metal/adapter.rs | 46 ++++-- wgpu-hal/src/metal/command.rs | 213 +++++++++++++++++++++---- wgpu-hal/src/metal/mod.rs | 27 +++- wgpu-types/src/lib.rs | 7 +- 9 files changed, 260 insertions(+), 61 deletions(-) diff --git a/.deny.toml b/.deny.toml index 5c214bbc28..f7c233c5d4 100644 --- a/.deny.toml +++ b/.deny.toml @@ -27,6 +27,7 @@ allow = [ [sources] allow-git = [ "https://github.com/grovesNL/glow", + "https://github.com/gfx-rs/metal-rs", ] unknown-registry = "deny" unknown-git = "deny" diff --git a/CHANGELOG.md b/CHANGELOG.md index ad4c81d076..039bce54ab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -88,6 +88,10 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) ### Documentation - Use WGSL for VertexFormat example types. By @ScanMountGoat in [#4305](https://github.com/gfx-rs/wgpu/pull/4035) +#### Metal + +- Support for timestamp queries on encoders and passes. By @wumpf in [#4008](https://github.com/gfx-rs/wgpu/pull/4008) + ### Bug Fixes #### General diff --git a/Cargo.lock b/Cargo.lock index ba1a403628..07ed8c2c66 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1551,8 +1551,7 @@ dependencies = [ [[package]] name = "metal" version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "623b5e6cefd76e58f774bd3cc0c6f5c7615c58c03a97815245a25c3c9bdee318" +source = "git+https://github.com/gfx-rs/metal-rs/?rev=d24f1a4#d24f1a4ae92470bf87a0c65ecfe78c9299835505" dependencies = [ "bitflags 2.4.0", "block", diff --git a/Cargo.toml b/Cargo.toml index 55c6048b86..22f79b73b1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -158,6 +158,8 @@ termcolor = "1.2.0" #glow = { path = "../glow" } #d3d12 = { path = "../d3d12-rs" } #metal = { path = "../metal-rs" } +#metal = { path = "../metal-rs" } +metal = { git = "https://github.com/gfx-rs/metal-rs/", rev = "d24f1a4" } # More timer support via https://github.com/gfx-rs/metal-rs/pull/280 #web-sys = { path = "../wasm-bindgen/crates/web-sys" } #js-sys = { path = "../wasm-bindgen/crates/js-sys" } #wasm-bindgen = { path = "../wasm-bindgen" } diff --git a/examples/timestamp-queries/src/main.rs b/examples/timestamp-queries/src/main.rs index 3479122c79..f8c524f03c 100644 --- a/examples/timestamp-queries/src/main.rs +++ b/examples/timestamp-queries/src/main.rs @@ -47,6 +47,7 @@ impl QueryResults { // * compute end const NUM_QUERIES: u64 = 8; + #[allow(clippy::redundant_closure)] // False positive fn from_raw_results(timestamps: Vec, timestamps_inside_passes: bool) -> Self { assert_eq!(timestamps.len(), Self::NUM_QUERIES as usize); @@ -60,9 +61,9 @@ impl QueryResults { let mut encoder_timestamps = [0, 0]; encoder_timestamps[0] = get_next_slot(); let render_start_end_timestamps = [get_next_slot(), get_next_slot()]; - let render_inside_timestamp = timestamps_inside_passes.then_some(get_next_slot()); + let render_inside_timestamp = timestamps_inside_passes.then(|| get_next_slot()); let compute_start_end_timestamps = [get_next_slot(), get_next_slot()]; - let compute_inside_timestamp = timestamps_inside_passes.then_some(get_next_slot()); + let compute_inside_timestamp = timestamps_inside_passes.then(|| get_next_slot()); encoder_timestamps[1] = get_next_slot(); QueryResults { @@ -79,8 +80,8 @@ impl QueryResults { let elapsed_us = |start, end: u64| end.wrapping_sub(start) as f64 * period as f64 / 1000.0; println!( - "Elapsed time render + compute: {:.2} μs", - elapsed_us(self.encoder_timestamps[0], self.encoder_timestamps[1]) + "Elapsed time before render until after compute: {:.2} μs", + elapsed_us(self.encoder_timestamps[0], self.encoder_timestamps[1]), ); println!( "Elapsed time render pass: {:.2} μs", @@ -464,13 +465,10 @@ mod tests { render_start_end_timestamps[1].wrapping_sub(render_start_end_timestamps[0]); let compute_delta = compute_start_end_timestamps[1].wrapping_sub(compute_start_end_timestamps[0]); + let encoder_delta = encoder_timestamps[1].wrapping_sub(encoder_timestamps[0]); - // TODO: Metal encoder timestamps aren't implemented yet. - if ctx.adapter.get_info().backend != wgpu::Backend::Metal { - let encoder_delta = encoder_timestamps[1].wrapping_sub(encoder_timestamps[0]); - assert!(encoder_delta > 0); - assert!(encoder_delta >= render_delta + compute_delta); - } + assert!(encoder_delta > 0); + assert!(encoder_delta >= render_delta + compute_delta); if let Some(render_inside_timestamp) = render_inside_timestamp { assert!(render_inside_timestamp >= render_start_end_timestamps[0]); diff --git a/wgpu-hal/src/metal/adapter.rs b/wgpu-hal/src/metal/adapter.rs index bc90954b35..126741d257 100644 --- a/wgpu-hal/src/metal/adapter.rs +++ b/wgpu-hal/src/metal/adapter.rs @@ -5,6 +5,8 @@ use wgt::{AstcBlock, AstcChannel}; use std::{sync::Arc, thread}; +use super::TimestampQuerySupport; + const MAX_COMMAND_BUFFERS: u64 = 2048; unsafe impl Send for super::Adapter {} @@ -536,6 +538,26 @@ impl super::PrivateCapabilities { MTLReadWriteTextureTier::TierNone }; + let mut timestamp_query_support = TimestampQuerySupport::empty(); + if version.at_least((11, 0), (14, 0), os_is_mac) + && device.supports_counter_sampling(metal::MTLCounterSamplingPoint::AtStageBoundary) + { + // If we don't support at stage boundary, don't support anything else. + timestamp_query_support.insert(TimestampQuerySupport::STAGE_BOUNDARIES); + + if device.supports_counter_sampling(metal::MTLCounterSamplingPoint::AtDrawBoundary) { + timestamp_query_support.insert(TimestampQuerySupport::ON_RENDER_ENCODER); + } + if device.supports_counter_sampling(metal::MTLCounterSamplingPoint::AtDispatchBoundary) + { + timestamp_query_support.insert(TimestampQuerySupport::ON_COMPUTE_ENCODER); + } + if device.supports_counter_sampling(metal::MTLCounterSamplingPoint::AtBlitBoundary) { + timestamp_query_support.insert(TimestampQuerySupport::ON_BLIT_ENCODER); + } + // `TimestampQuerySupport::INSIDE_WGPU_PASSES` emerges from the other flags. + } + Self { family_check, msl_version: if os_is_xr || version.at_least((12, 0), (15, 0), os_is_mac) { @@ -773,13 +795,7 @@ impl super::PrivateCapabilities { } else { None }, - support_timestamp_query: version.at_least((11, 0), (14, 0), os_is_mac) - && device - .supports_counter_sampling(metal::MTLCounterSamplingPoint::AtStageBoundary), - support_timestamp_query_in_passes: version.at_least((11, 0), (14, 0), os_is_mac) - && device.supports_counter_sampling(metal::MTLCounterSamplingPoint::AtDrawBoundary) - && device - .supports_counter_sampling(metal::MTLCounterSamplingPoint::AtDispatchBoundary), + timestamp_query_support, } } @@ -807,12 +823,16 @@ impl super::PrivateCapabilities { | F::DEPTH32FLOAT_STENCIL8 | F::MULTI_DRAW_INDIRECT; - features.set(F::TIMESTAMP_QUERY, self.support_timestamp_query); - // TODO: Not yet implemented. - // features.set( - // F::TIMESTAMP_QUERY_INSIDE_PASSES, - // self.support_timestamp_query_in_passes, - // ); + features.set( + F::TIMESTAMP_QUERY, + self.timestamp_query_support + .contains(TimestampQuerySupport::STAGE_BOUNDARIES), + ); + features.set( + F::TIMESTAMP_QUERY_INSIDE_PASSES, + self.timestamp_query_support + .contains(TimestampQuerySupport::INSIDE_WGPU_PASSES), + ); features.set(F::TEXTURE_COMPRESSION_ASTC, self.format_astc); features.set(F::TEXTURE_COMPRESSION_ASTC_HDR, self.format_astc_hdr); features.set(F::TEXTURE_COMPRESSION_BC, self.format_bc); diff --git a/wgpu-hal/src/metal/command.rs b/wgpu-hal/src/metal/command.rs index cc737fd228..c4b37f9932 100644 --- a/wgpu-hal/src/metal/command.rs +++ b/wgpu-hal/src/metal/command.rs @@ -1,4 +1,4 @@ -use super::{conv, AsNative}; +use super::{conv, AsNative, TimestampQuerySupport}; use crate::CommandEncoder as _; use std::{borrow::Cow, mem, ops::Range}; @@ -18,6 +18,7 @@ impl Default for super::CommandState { storage_buffer_length_map: Default::default(), work_group_memory_sizes: Vec::new(), push_constants: Vec::new(), + pending_timer_queries: Vec::new(), } } } @@ -26,10 +27,85 @@ impl super::CommandEncoder { fn enter_blit(&mut self) -> &metal::BlitCommandEncoderRef { if self.state.blit.is_none() { debug_assert!(self.state.render.is_none() && self.state.compute.is_none()); + let cmd_buf = self.raw_cmd_buf.as_ref().unwrap(); + + // Take care of pending timer queries. + // If we can't use `sample_counters_in_buffer` we have to create a dummy blit encoder! + // + // There is a known bug in Metal where blit encoders won't write timestamps if they don't have a blit operation. + // See https://github.com/gpuweb/gpuweb/issues/2046#issuecomment-1205793680 & https://source.chromium.org/chromium/chromium/src/+/006c4eb70c96229834bbaf271290f40418144cd3:third_party/dawn/src/dawn/native/metal/BackendMTL.mm;l=350 + // + // To make things worse: + // * what counts as a blit operation is a bit unclear, experimenting seemed to indicate that resolve_counters doesn't count. + // * in some cases (when?) using `set_start_of_encoder_sample_index` doesn't work, so we have to use `set_end_of_encoder_sample_index` instead + // + // All this means that pretty much the only *reliable* thing as of writing is to: + // * create a dummy blit encoder using set_end_of_encoder_sample_index + // * do a dummy write that is known to be not optimized out. + // * close the encoder since we used set_end_of_encoder_sample_index and don't want to get any extra stuff in there. + // * create another encoder for whatever we actually had in mind. + let supports_sample_counters_in_buffer = self + .shared + .private_caps + .timestamp_query_support + .contains(TimestampQuerySupport::ON_BLIT_ENCODER); + + if !self.state.pending_timer_queries.is_empty() && !supports_sample_counters_in_buffer { + objc::rc::autoreleasepool(|| { + let descriptor = metal::BlitPassDescriptor::new(); + let mut last_query = None; + for (i, (set, index)) in self.state.pending_timer_queries.drain(..).enumerate() + { + let sba_descriptor = descriptor + .sample_buffer_attachments() + .object_at(i as _) + .unwrap(); + sba_descriptor + .set_sample_buffer(set.counter_sample_buffer.as_ref().unwrap()); + + // Here be dragons: + // As mentioned above, for some reasons using the start of the encoder won't yield any results sometimes! + sba_descriptor + .set_start_of_encoder_sample_index(metal::COUNTER_DONT_SAMPLE); + sba_descriptor.set_end_of_encoder_sample_index(index as _); + + last_query = Some((set, index)); + } + let encoder = cmd_buf.blit_command_encoder_with_descriptor(descriptor); + + // As explained above, we need to do some write: + // Conveniently, we have a buffer with every query set, that we can use for this for a dummy write, + // since we know that it is going to be overwritten again on timer resolve and HAL doesn't define its state before that. + let raw_range = metal::NSRange { + location: last_query.as_ref().unwrap().1 as u64 * crate::QUERY_SIZE, + length: 1, + }; + encoder.fill_buffer( + &last_query.as_ref().unwrap().0.raw_buffer, + raw_range, + 255, // Don't write 0, so it's easier to identify if something went wrong. + ); + + encoder.end_encoding(); + }); + } + objc::rc::autoreleasepool(|| { - let cmd_buf = self.raw_cmd_buf.as_ref().unwrap(); self.state.blit = Some(cmd_buf.new_blit_command_encoder().to_owned()); }); + + let encoder = self.state.blit.as_ref().unwrap(); + + // UNTESTED: + // If the above described issue with empty blit encoder applies to `sample_counters_in_buffer` as well, we should use the same workaround instead! + for (set, index) in self.state.pending_timer_queries.drain(..) { + debug_assert!(supports_sample_counters_in_buffer); + encoder.sample_counters_in_buffer( + set.counter_sample_buffer.as_ref().unwrap(), + index as _, + true, + ) + } } self.state.blit.as_ref().unwrap() } @@ -40,7 +116,7 @@ impl super::CommandEncoder { } } - fn enter_any(&mut self) -> Option<&metal::CommandEncoderRef> { + fn active_encoder(&mut self) -> Option<&metal::CommandEncoderRef> { if let Some(ref encoder) = self.state.render { Some(encoder) } else if let Some(ref encoder) = self.state.compute { @@ -127,9 +203,17 @@ impl crate::CommandEncoder for super::CommandEncoder { } unsafe fn end_encoding(&mut self) -> Result { + // Handle pending timer query if any. + if !self.state.pending_timer_queries.is_empty() { + self.leave_blit(); + self.enter_blit(); + } + self.leave_blit(); debug_assert!(self.state.render.is_none()); debug_assert!(self.state.compute.is_none()); + debug_assert!(self.state.pending_timer_queries.is_empty()); + Ok(super::CommandBuffer { raw: self.raw_cmd_buf.take().unwrap(), }) @@ -322,16 +406,43 @@ impl crate::CommandEncoder for super::CommandEncoder { _ => {} } } - unsafe fn write_timestamp(&mut self, _set: &super::QuerySet, _index: u32) { - // TODO: If MTLCounterSamplingPoint::AtDrawBoundary/AtBlitBoundary/AtDispatchBoundary is supported, - // we don't need to insert a new encoder, but can instead use respective current one. - //let encoder = self.enter_any().unwrap_or_else(|| self.enter_blit()); + unsafe fn write_timestamp(&mut self, set: &super::QuerySet, index: u32) { + let support = self.shared.private_caps.timestamp_query_support; + debug_assert!( + support.contains(TimestampQuerySupport::STAGE_BOUNDARIES), + "Timestamp queries are not supported" + ); + let sample_buffer = set.counter_sample_buffer.as_ref().unwrap(); + let with_barrier = true; + + // Try to use an existing encoder for timestamp query if possible. + // This works only if it's supported for the active encoder. + if let (true, Some(encoder)) = ( + support.contains(TimestampQuerySupport::ON_BLIT_ENCODER), + self.state.blit.as_ref(), + ) { + encoder.sample_counters_in_buffer(sample_buffer, index as _, with_barrier); + } else if let (true, Some(encoder)) = ( + support.contains(TimestampQuerySupport::ON_RENDER_ENCODER), + self.state.render.as_ref(), + ) { + encoder.sample_counters_in_buffer(sample_buffer, index as _, with_barrier); + } else if let (true, Some(encoder)) = ( + support.contains(TimestampQuerySupport::ON_COMPUTE_ENCODER), + self.state.compute.as_ref(), + ) { + encoder.sample_counters_in_buffer(sample_buffer, index as _, with_barrier); + } else { + // If we're here it means we either have no encoder open, or it's not supported to sample within them. + // If this happens with render/compute open, this is an invalid usage! + debug_assert!(self.state.render.is_none() && self.state.compute.is_none()); - // TODO: Otherwise, we need to create a new blit command encoder with a descriptor that inserts the timestamps. - // Note that as of writing creating a new encoder is not exposed by the metal crate. - // https://developer.apple.com/documentation/metal/mtlcommandbuffer/3564431-makeblitcommandencoder + // But otherwise it means we'll put defer this to the next created encoder. + self.state.pending_timer_queries.push((set.clone(), index)); - // TODO: Enable respective test in `examples/timestamp-queries/src/tests.rs`. + // Ensure we didn't already have a blit open. + self.leave_blit(); + }; } unsafe fn reset_queries(&mut self, set: &super::QuerySet, range: Range) { @@ -342,6 +453,7 @@ impl crate::CommandEncoder for super::CommandEncoder { }; encoder.fill_buffer(&set.raw_buffer, raw_range, 0); } + unsafe fn copy_query_results( &mut self, set: &super::QuerySet, @@ -454,8 +566,29 @@ impl crate::CommandEncoder for super::CommandEncoder { } } + let mut sba_index = 0; + let mut next_sba_descriptor = || { + let sba_descriptor = descriptor + .sample_buffer_attachments() + .object_at(sba_index) + .unwrap(); + + sba_descriptor.set_end_of_vertex_sample_index(metal::COUNTER_DONT_SAMPLE); + sba_descriptor.set_start_of_fragment_sample_index(metal::COUNTER_DONT_SAMPLE); + + sba_index += 1; + sba_descriptor + }; + + for (set, index) in self.state.pending_timer_queries.drain(..) { + let sba_descriptor = next_sba_descriptor(); + sba_descriptor.set_sample_buffer(set.counter_sample_buffer.as_ref().unwrap()); + sba_descriptor.set_start_of_vertex_sample_index(index as _); + sba_descriptor.set_end_of_fragment_sample_index(metal::COUNTER_DONT_SAMPLE); + } + if let Some(ref timestamp_writes) = desc.timestamp_writes { - let sba_descriptor = descriptor.sample_buffer_attachments().object_at(0).unwrap(); + let sba_descriptor = next_sba_descriptor(); sba_descriptor.set_sample_buffer( timestamp_writes .query_set @@ -464,12 +597,16 @@ impl crate::CommandEncoder for super::CommandEncoder { .unwrap(), ); - if let Some(start_index) = timestamp_writes.beginning_of_pass_write_index { - sba_descriptor.set_start_of_vertex_sample_index(start_index as _); - } - if let Some(end_index) = timestamp_writes.end_of_pass_write_index { - sba_descriptor.set_end_of_fragment_sample_index(end_index as _); - } + sba_descriptor.set_start_of_vertex_sample_index( + timestamp_writes + .beginning_of_pass_write_index + .map_or(metal::COUNTER_DONT_SAMPLE, |i| i as _), + ); + sba_descriptor.set_end_of_fragment_sample_index( + timestamp_writes + .end_of_pass_write_index + .map_or(metal::COUNTER_DONT_SAMPLE, |i| i as _), + ); } if let Some(occlusion_query_set) = desc.occlusion_query_set { @@ -697,19 +834,19 @@ impl crate::CommandEncoder for super::CommandEncoder { } unsafe fn insert_debug_marker(&mut self, label: &str) { - if let Some(encoder) = self.enter_any() { + if let Some(encoder) = self.active_encoder() { encoder.insert_debug_signpost(label); } } unsafe fn begin_debug_marker(&mut self, group_label: &str) { - if let Some(encoder) = self.enter_any() { + if let Some(encoder) = self.active_encoder() { encoder.push_debug_group(group_label); } else if let Some(ref buf) = self.raw_cmd_buf { buf.push_debug_group(group_label); } } unsafe fn end_debug_marker(&mut self) { - if let Some(encoder) = self.enter_any() { + if let Some(encoder) = self.active_encoder() { encoder.pop_debug_group(); } else if let Some(ref buf) = self.raw_cmd_buf { buf.pop_debug_group(); @@ -969,11 +1106,25 @@ impl crate::CommandEncoder for super::CommandEncoder { objc::rc::autoreleasepool(|| { let descriptor = metal::ComputePassDescriptor::new(); - if let Some(timestamp_writes) = desc.timestamp_writes.as_ref() { + let mut sba_index = 0; + let mut next_sba_descriptor = || { let sba_descriptor = descriptor .sample_buffer_attachments() - .object_at(0 as _) + .object_at(sba_index) .unwrap(); + sba_index += 1; + sba_descriptor + }; + + for (set, index) in self.state.pending_timer_queries.drain(..) { + let sba_descriptor = next_sba_descriptor(); + sba_descriptor.set_sample_buffer(set.counter_sample_buffer.as_ref().unwrap()); + sba_descriptor.set_start_of_encoder_sample_index(index as _); + sba_descriptor.set_end_of_encoder_sample_index(metal::COUNTER_DONT_SAMPLE); + } + + if let Some(timestamp_writes) = desc.timestamp_writes.as_ref() { + let sba_descriptor = next_sba_descriptor(); sba_descriptor.set_sample_buffer( timestamp_writes .query_set @@ -982,12 +1133,16 @@ impl crate::CommandEncoder for super::CommandEncoder { .unwrap(), ); - if let Some(start_index) = timestamp_writes.beginning_of_pass_write_index { - sba_descriptor.set_start_of_encoder_sample_index(start_index as _); - } - if let Some(end_index) = timestamp_writes.end_of_pass_write_index { - sba_descriptor.set_end_of_encoder_sample_index(end_index as _); - } + sba_descriptor.set_start_of_encoder_sample_index( + timestamp_writes + .beginning_of_pass_write_index + .map_or(metal::COUNTER_DONT_SAMPLE, |i| i as _), + ); + sba_descriptor.set_end_of_encoder_sample_index( + timestamp_writes + .end_of_pass_write_index + .map_or(metal::COUNTER_DONT_SAMPLE, |i| i as _), + ); } let encoder = raw.compute_command_encoder_with_descriptor(descriptor); diff --git a/wgpu-hal/src/metal/mod.rs b/wgpu-hal/src/metal/mod.rs index 76f57002ff..c6b91a4f3c 100644 --- a/wgpu-hal/src/metal/mod.rs +++ b/wgpu-hal/src/metal/mod.rs @@ -33,6 +33,7 @@ use std::{ }; use arrayvec::ArrayVec; +use bitflags::bitflags; use metal::foreign_types::ForeignTypeRef as _; use parking_lot::Mutex; @@ -143,6 +144,24 @@ impl crate::Instance for Instance { } } +bitflags!( + /// Similar to `MTLCounterSamplingPoint`, but a bit higher abstracted for our purposes. + #[derive(Debug, Copy, Clone)] + pub struct TimestampQuerySupport: u32 { + /// On creating Metal encoders. + const STAGE_BOUNDARIES = 1 << 1; + /// Within existing draw encoders. + const ON_RENDER_ENCODER = Self::STAGE_BOUNDARIES.bits() | (1 << 2); + /// Within existing dispatch encoders. + const ON_COMPUTE_ENCODER = Self::STAGE_BOUNDARIES.bits() | (1 << 3); + /// Within existing blit encoders. + const ON_BLIT_ENCODER = Self::STAGE_BOUNDARIES.bits() | (1 << 4); + + /// Within any wgpu render/compute pass. + const INSIDE_WGPU_PASSES = Self::ON_RENDER_ENCODER.bits() | Self::ON_COMPUTE_ENCODER.bits(); + } +); + #[allow(dead_code)] #[derive(Clone, Debug)] struct PrivateCapabilities { @@ -239,8 +258,7 @@ struct PrivateCapabilities { supports_preserve_invariance: bool, supports_shader_primitive_index: bool, has_unified_memory: Option, - support_timestamp_query: bool, - support_timestamp_query_in_passes: bool, + timestamp_query_support: TimestampQuerySupport, } #[derive(Clone, Debug)] @@ -704,7 +722,7 @@ pub struct ComputePipeline { unsafe impl Send for ComputePipeline {} unsafe impl Sync for ComputePipeline {} -#[derive(Debug)] +#[derive(Debug, Clone)] pub struct QuerySet { raw_buffer: metal::Buffer, //Metal has a custom buffer for counters. @@ -787,6 +805,9 @@ struct CommandState { work_group_memory_sizes: Vec, push_constants: Vec, + + /// Timer query that should be executed when the next pass starts. + pending_timer_queries: Vec<(QuerySet, u32)>, } pub struct CommandEncoder { diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index c892874afa..9f61e2e490 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -270,7 +270,7 @@ bitflags::bitflags! { /// Supported Platforms: /// - Vulkan /// - DX12 - /// - Metal - TODO: Not yet supported on command encoder. + /// - Metal /// /// This is a web and native feature. const TIMESTAMP_QUERY = 1 << 1; @@ -458,10 +458,9 @@ bitflags::bitflags! { /// Supported platforms: /// - Vulkan /// - DX12 + /// - Metal (AMD & Intel, not Apple GPUs) /// - /// This is currently unimplemented on Metal. - /// When implemented, it will be supported on Metal on AMD and Intel GPUs, but not Apple GPUs. - /// (This is a common limitation of tile-based rasterization GPUs) + /// This is generally not available on tile-based rasterization GPUs. /// /// This is a native only feature with a [proposal](https://github.com/gpuweb/gpuweb/blob/0008bd30da2366af88180b511a5d0d0c1dffbc36/proposals/timestamp-query-inside-passes.md) for the web. const TIMESTAMP_QUERY_INSIDE_PASSES = 1 << 33; From f2bd5571863ef967bd730e8713efd69e3293ebdc Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Sun, 17 Sep 2023 11:08:42 -0700 Subject: [PATCH 057/135] Tests for wgpu#4139. (#4148) --- tests/tests/query_set.rs | 26 ++++++++++++++++++++++++++ tests/tests/root.rs | 1 + 2 files changed, 27 insertions(+) create mode 100644 tests/tests/query_set.rs diff --git a/tests/tests/query_set.rs b/tests/tests/query_set.rs new file mode 100644 index 0000000000..16e5094089 --- /dev/null +++ b/tests/tests/query_set.rs @@ -0,0 +1,26 @@ +use wgpu_test::{initialize_test, FailureCase, TestParameters}; + +#[test] +fn drop_failed_timestamp_query_set() { + let parameters = TestParameters::default() + // https://github.com/gfx-rs/wgpu/issues/4139 + .expect_fail(FailureCase::always()); + initialize_test(parameters, |ctx| { + // Enter an error scope, so the validation catch-all doesn't + // report the error too early. + ctx.device.push_error_scope(wgpu::ErrorFilter::Validation); + + // Creating this query set should fail, since we didn't include + // TIMESTAMP_QUERY in our required features. + let bad_query_set = ctx.device.create_query_set(&wgpu::QuerySetDescriptor { + label: Some("doomed query set"), + ty: wgpu::QueryType::Timestamp, + count: 1, + }); + + // Dropping this should not panic. + drop(bad_query_set); + + assert!(pollster::block_on(ctx.device.pop_error_scope()).is_some()); + }); +} diff --git a/tests/tests/root.rs b/tests/tests/root.rs index 85901ae491..b2695fd827 100644 --- a/tests/tests/root.rs +++ b/tests/tests/root.rs @@ -20,6 +20,7 @@ mod instance; mod occlusion_query; mod partially_bounded_arrays; mod poll; +mod query_set; mod queue_transfer; mod resource_descriptor_accessor; mod resource_error; From 471229a48f184d9c095c52f7390816f4b4d30e92 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Sun, 17 Sep 2023 12:39:16 -0700 Subject: [PATCH 058/135] Update Naga to df8107b7 (2023-9-15). (#4149) --- CHANGELOG.md | 1 + Cargo.lock | 2 +- Cargo.toml | 2 +- wgpu-core/Cargo.toml | 2 +- wgpu-hal/Cargo.toml | 4 ++-- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 039bce54ab..d0eb15b5ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -72,6 +72,7 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) #### General +- Update Naga to df8107b7 (2023-9-15). By @jimblandy in [#4149](https://github.com/gfx-rs/wgpu/pull/4149) - Omit texture store bound checks since they are no-ops if out of bounds on all APIs. By @teoxoy in [#3975](https://github.com/gfx-rs/wgpu/pull/3975) - Validate `DownlevelFlags::READ_ONLY_DEPTH_STENCIL`. By @teoxoy in [#4031](https://github.com/gfx-rs/wgpu/pull/4031) - Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. By @James2022-rgb in [#4058](https://github.com/gfx-rs/wgpu/pull/4058) diff --git a/Cargo.lock b/Cargo.lock index 07ed8c2c66..303e94dbd8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1602,7 +1602,7 @@ dependencies = [ [[package]] name = "naga" version = "0.13.0" -source = "git+https://github.com/gfx-rs/naga?rev=cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c#cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" +source = "git+https://github.com/gfx-rs/naga?rev=df8107b7#df8107b78812cc2b1e3d5de35279cedc1f0da3fb" dependencies = [ "bit-set", "bitflags 2.4.0", diff --git a/Cargo.toml b/Cargo.toml index 22f79b73b1..40b8c46c96 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,7 +51,7 @@ version = "0.17" [workspace.dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" +rev = "df8107b7" version = "0.13.0" [workspace.dependencies] diff --git a/wgpu-core/Cargo.toml b/wgpu-core/Cargo.toml index 5487a8bdc0..19bc3ad64d 100644 --- a/wgpu-core/Cargo.toml +++ b/wgpu-core/Cargo.toml @@ -72,7 +72,7 @@ thiserror = "1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" +rev = "df8107b7" version = "0.13.0" features = ["clone", "span", "validate"] diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 225f18256a..3db7363616 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -120,14 +120,14 @@ android_system_properties = "0.1.1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" +rev = "df8107b7" version = "0.13.0" features = ["clone"] # DEV dependencies [dev-dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "cc87b8f9eb30bb55d0735b89d3df3e099e1a6e7c" +rev = "df8107b7" version = "0.13.0" features = ["wgsl-in"] From 8adab259053eb0a9ada89815f3680736f4a1f17b Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Mon, 18 Sep 2023 16:43:11 +0200 Subject: [PATCH 059/135] [d3d12] Document `map_blend_factor` (#4151) --- wgpu-hal/src/dx12/conv.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/wgpu-hal/src/dx12/conv.rs b/wgpu-hal/src/dx12/conv.rs index 8b44ae9c4b..908944567a 100644 --- a/wgpu-hal/src/dx12/conv.rs +++ b/wgpu-hal/src/dx12/conv.rs @@ -222,6 +222,10 @@ pub fn map_polygon_mode(mode: wgt::PolygonMode) -> d3d12_ty::D3D12_FILL_MODE { } } +/// D3D12 doesn't support passing factors ending in `_COLOR` for alpha blending +/// (see https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ns-d3d12-d3d12_render_target_blend_desc). +/// Therefore this function takes an additional `is_alpha` argument +/// which if set will return an equivalent `_ALPHA` factor. fn map_blend_factor(factor: wgt::BlendFactor, is_alpha: bool) -> d3d12_ty::D3D12_BLEND { use wgt::BlendFactor as Bf; match factor { From 507101987baced0f75978486c4db941113409d40 Mon Sep 17 00:00:00 2001 From: Andreas Reich Date: Mon, 18 Sep 2023 20:58:41 +0200 Subject: [PATCH 060/135] Make `StoreOp` an enum instead of a bool (#4147) Co-authored-by: Connor Fitzgerald --- CHANGELOG.md | 22 ++++++++ examples/boids/src/main.rs | 2 +- examples/bunnymark/src/main.rs | 2 +- examples/capture/src/main.rs | 2 +- examples/conservative-raster/src/main.rs | 4 +- examples/cube/src/main.rs | 2 +- examples/hello-triangle/src/main.rs | 2 +- examples/hello-windows/src/main.rs | 2 +- examples/mipmap/src/main.rs | 4 +- examples/msaa-line/src/main.rs | 4 +- examples/shadow/src/main.rs | 6 +-- examples/skybox/src/main.rs | 4 +- examples/stencil-triangles/src/main.rs | 4 +- examples/texture-arrays/src/main.rs | 2 +- examples/timestamp-queries/src/main.rs | 2 +- examples/water/src/main.rs | 10 ++-- tests/tests/occlusion_query/mod.rs | 2 +- tests/tests/regression/issue_3457.rs | 4 +- tests/tests/scissor_tests/mod.rs | 2 +- tests/tests/shader_primitive_index/mod.rs | 2 +- .../tests/zero_init_texture_after_discard.rs | 18 +++---- wgpu/src/backend/direct.rs | 21 ++++---- wgpu/src/backend/web.rs | 9 ++-- wgpu/src/lib.rs | 52 ++++++++++++++++--- 24 files changed, 120 insertions(+), 64 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d0eb15b5ae..32f90b3d90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -64,6 +64,28 @@ let render_pass = encoder.begin_render_pass(&wgpu::RenderPassDescriptor { By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402) + +#### Render pass store operation is now an enum + +`wgpu::Operations::store` used to be an underdocumented boolean value, +causing misunderstandings of the effect of setting it to `false`. + +The API now more closely resembles WebGPU which distinguishes between `store` and `discard`, +see [WebGPU spec on GPUStoreOp](https://gpuweb.github.io/gpuweb/#enumdef-gpustoreop). + +```diff +// ... +depth_ops: Some(wgpu::Operations { + load: wgpu::LoadOp::Clear(1.0), +- store: false, ++ store: wgpu::StoreOp::Discard, +}), +// ... +``` + +By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) + + ### Added/New Features - Add `gles_minor_version` field to `wgpu::InstanceDescriptor`. By @PJB3005 in [#3998](https://github.com/gfx-rs/wgpu/pull/3998) diff --git a/examples/boids/src/main.rs b/examples/boids/src/main.rs index e8aa2f71fd..eb5146f8bd 100644 --- a/examples/boids/src/main.rs +++ b/examples/boids/src/main.rs @@ -276,7 +276,7 @@ impl wgpu_example::framework::Example for Example { // Not clearing here in order to test wgpu's zero texture initialization on a surface texture. // Users should avoid loading uninitialized memory since this can cause additional overhead. load: wgpu::LoadOp::Load, - store: true, + store: wgpu::StoreOp::Store, }, })]; let render_pass_descriptor = wgpu::RenderPassDescriptor { diff --git a/examples/bunnymark/src/main.rs b/examples/bunnymark/src/main.rs index 256083eebb..ca8dbbee06 100644 --- a/examples/bunnymark/src/main.rs +++ b/examples/bunnymark/src/main.rs @@ -332,7 +332,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(clear_color), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/capture/src/main.rs b/examples/capture/src/main.rs index b783b3af80..47a453de6b 100644 --- a/examples/capture/src/main.rs +++ b/examples/capture/src/main.rs @@ -101,7 +101,7 @@ async fn create_red_image_with_dimensions( resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::RED), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/conservative-raster/src/main.rs b/examples/conservative-raster/src/main.rs index e5cfb4d775..093740a206 100644 --- a/examples/conservative-raster/src/main.rs +++ b/examples/conservative-raster/src/main.rs @@ -269,7 +269,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::BLACK), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, @@ -290,7 +290,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::BLACK), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/cube/src/main.rs b/examples/cube/src/main.rs index a10dfd0fd0..b031e1004c 100644 --- a/examples/cube/src/main.rs +++ b/examples/cube/src/main.rs @@ -375,7 +375,7 @@ impl wgpu_example::framework::Example for Example { b: 0.3, a: 1.0, }), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/hello-triangle/src/main.rs b/examples/hello-triangle/src/main.rs index c5432acd07..ebb8f6b736 100644 --- a/examples/hello-triangle/src/main.rs +++ b/examples/hello-triangle/src/main.rs @@ -118,7 +118,7 @@ async fn run(event_loop: EventLoop<()>, window: Window) { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::GREEN), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/hello-windows/src/main.rs b/examples/hello-windows/src/main.rs index f368804c36..ba28341395 100644 --- a/examples/hello-windows/src/main.rs +++ b/examples/hello-windows/src/main.rs @@ -131,7 +131,7 @@ async fn run(event_loop: EventLoop<()>, viewports: Vec<(Window, wgpu::Color)>) { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(viewport.desc.background), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/mipmap/src/main.rs b/examples/mipmap/src/main.rs index a85110ff14..5536579b0b 100644 --- a/examples/mipmap/src/main.rs +++ b/examples/mipmap/src/main.rs @@ -163,7 +163,7 @@ impl Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::WHITE), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, @@ -490,7 +490,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(clear_color), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/msaa-line/src/main.rs b/examples/msaa-line/src/main.rs index aa7a277418..07cc4eaf57 100644 --- a/examples/msaa-line/src/main.rs +++ b/examples/msaa-line/src/main.rs @@ -282,7 +282,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::BLACK), - store: true, + store: wgpu::StoreOp::Store, }, } } else { @@ -293,7 +293,7 @@ impl wgpu_example::framework::Example for Example { load: wgpu::LoadOp::Clear(wgpu::Color::BLACK), // Storing pre-resolve MSAA data is unnecessary if it isn't used later. // On tile-based GPU, avoid store can reduce your app's memory footprint. - store: false, + store: wgpu::StoreOp::Discard, }, } }; diff --git a/examples/shadow/src/main.rs b/examples/shadow/src/main.rs index 3f963d0c53..c63076e6ac 100644 --- a/examples/shadow/src/main.rs +++ b/examples/shadow/src/main.rs @@ -773,7 +773,7 @@ impl wgpu_example::framework::Example for Example { view: &light.target_view, depth_ops: Some(wgpu::Operations { load: wgpu::LoadOp::Clear(1.0), - store: true, + store: wgpu::StoreOp::Store, }), stencil_ops: None, }), @@ -810,14 +810,14 @@ impl wgpu_example::framework::Example for Example { b: 0.3, a: 1.0, }), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: Some(wgpu::RenderPassDepthStencilAttachment { view: &self.forward_depth, depth_ops: Some(wgpu::Operations { load: wgpu::LoadOp::Clear(1.0), - store: false, + store: wgpu::StoreOp::Discard, }), stencil_ops: None, }), diff --git a/examples/skybox/src/main.rs b/examples/skybox/src/main.rs index d09622f53c..5d91c62865 100644 --- a/examples/skybox/src/main.rs +++ b/examples/skybox/src/main.rs @@ -428,14 +428,14 @@ impl wgpu_example::framework::Example for Skybox { b: 0.3, a: 1.0, }), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: Some(wgpu::RenderPassDepthStencilAttachment { view: &self.depth_view, depth_ops: Some(wgpu::Operations { load: wgpu::LoadOp::Clear(1.0), - store: false, + store: wgpu::StoreOp::Discard, }), stencil_ops: None, }), diff --git a/examples/stencil-triangles/src/main.rs b/examples/stencil-triangles/src/main.rs index 55aad9c9ba..9d918500d5 100644 --- a/examples/stencil-triangles/src/main.rs +++ b/examples/stencil-triangles/src/main.rs @@ -200,7 +200,7 @@ impl wgpu_example::framework::Example for Triangles { b: 0.3, a: 1.0, }), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: Some(wgpu::RenderPassDepthStencilAttachment { @@ -208,7 +208,7 @@ impl wgpu_example::framework::Example for Triangles { depth_ops: None, stencil_ops: Some(wgpu::Operations { load: wgpu::LoadOp::Clear(0), - store: true, + store: wgpu::StoreOp::Store, }), }), timestamp_writes: None, diff --git a/examples/texture-arrays/src/main.rs b/examples/texture-arrays/src/main.rs index 373c2396ae..af9cfa56ff 100644 --- a/examples/texture-arrays/src/main.rs +++ b/examples/texture-arrays/src/main.rs @@ -379,7 +379,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::BLACK), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/timestamp-queries/src/main.rs b/examples/timestamp-queries/src/main.rs index f8c524f03c..d463ea6579 100644 --- a/examples/timestamp-queries/src/main.rs +++ b/examples/timestamp-queries/src/main.rs @@ -375,7 +375,7 @@ fn render_pass( resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::GREEN), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/examples/water/src/main.rs b/examples/water/src/main.rs index 5d5daa1f59..da9f1238ab 100644 --- a/examples/water/src/main.rs +++ b/examples/water/src/main.rs @@ -739,7 +739,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(back_color), - store: true, + store: wgpu::StoreOp::Store, }, })], // We still need to use the depth buffer here @@ -748,7 +748,7 @@ impl wgpu_example::framework::Example for Example { view: &self.depth_buffer, depth_ops: Some(wgpu::Operations { load: wgpu::LoadOp::Clear(1.0), - store: true, + store: wgpu::StoreOp::Store, }), stencil_ops: None, }), @@ -768,14 +768,14 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Clear(back_color), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: Some(wgpu::RenderPassDepthStencilAttachment { view: &self.depth_buffer, depth_ops: Some(wgpu::Operations { load: wgpu::LoadOp::Clear(1.0), - store: true, + store: wgpu::StoreOp::Store, }), stencil_ops: None, }), @@ -797,7 +797,7 @@ impl wgpu_example::framework::Example for Example { resolve_target: None, ops: wgpu::Operations { load: wgpu::LoadOp::Load, - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: Some(wgpu::RenderPassDepthStencilAttachment { diff --git a/tests/tests/occlusion_query/mod.rs b/tests/tests/occlusion_query/mod.rs index eab0828e41..7747eaa624 100644 --- a/tests/tests/occlusion_query/mod.rs +++ b/tests/tests/occlusion_query/mod.rs @@ -69,7 +69,7 @@ fn occlusion_query() { view: &depth_texture_view, depth_ops: Some(wgpu::Operations { load: wgpu::LoadOp::Clear(1.0), - store: true, + store: wgpu::StoreOp::Store, }), stencil_ops: None, }), diff --git a/tests/tests/regression/issue_3457.rs b/tests/tests/regression/issue_3457.rs index 2dccd3d427..0d2c086ed5 100644 --- a/tests/tests/regression/issue_3457.rs +++ b/tests/tests/regression/issue_3457.rs @@ -140,7 +140,7 @@ fn pass_reset_vertex_buffer() { resolve_target: None, ops: Operations { load: LoadOp::Clear(Color::BLACK), - store: false, + store: StoreOp::Discard, }, })], depth_stencil_attachment: None, @@ -175,7 +175,7 @@ fn pass_reset_vertex_buffer() { resolve_target: None, ops: Operations { load: LoadOp::Clear(Color::BLACK), - store: false, + store: StoreOp::Discard, }, })], depth_stencil_attachment: None, diff --git a/tests/tests/scissor_tests/mod.rs b/tests/tests/scissor_tests/mod.rs index da050cb61f..a921827e0d 100644 --- a/tests/tests/scissor_tests/mod.rs +++ b/tests/tests/scissor_tests/mod.rs @@ -75,7 +75,7 @@ fn scissor_test_impl(ctx: &TestingContext, scissor_rect: Rect, expected_data: [u b: 0.0, a: 0.0, }), - store: true, + store: wgpu::StoreOp::Store, }, })], depth_stencil_attachment: None, diff --git a/tests/tests/shader_primitive_index/mod.rs b/tests/tests/shader_primitive_index/mod.rs index a05d1cd5f0..2739b2e77d 100644 --- a/tests/tests/shader_primitive_index/mod.rs +++ b/tests/tests/shader_primitive_index/mod.rs @@ -180,7 +180,7 @@ fn pulling_common( color_attachments: &[Some(wgpu::RenderPassColorAttachment { ops: wgpu::Operations { load: wgpu::LoadOp::Clear(wgpu::Color::WHITE), - store: true, + store: wgpu::StoreOp::Store, }, resolve_target: None, view: &color_view, diff --git a/tests/tests/zero_init_texture_after_discard.rs b/tests/tests/zero_init_texture_after_discard.rs index 2b757e069a..e47f1aa0fa 100644 --- a/tests/tests/zero_init_texture_after_discard.rs +++ b/tests/tests/zero_init_texture_after_discard.rs @@ -155,11 +155,11 @@ impl<'ctx> TestCase<'ctx> { view: &texture.create_view(&TextureViewDescriptor::default()), depth_ops: format.has_depth_aspect().then_some(Operations { load: LoadOp::Clear(1.0), - store: true, + store: StoreOp::Store, }), stencil_ops: format.has_stencil_aspect().then_some(Operations { load: LoadOp::Clear(0xFFFFFFFF), - store: true, + store: StoreOp::Store, }), }), timestamp_writes: None, @@ -230,7 +230,7 @@ impl<'ctx> TestCase<'ctx> { resolve_target: None, ops: Operations { load: LoadOp::Load, - store: false, // discard! + store: StoreOp::Discard, }, }, )], @@ -239,11 +239,11 @@ impl<'ctx> TestCase<'ctx> { view: &self.texture.create_view(&TextureViewDescriptor::default()), depth_ops: self.format.has_depth_aspect().then_some(Operations { load: LoadOp::Load, - store: false, // discard! + store: StoreOp::Discard, }), stencil_ops: self.format.has_stencil_aspect().then_some(Operations { load: LoadOp::Load, - store: false, // discard! + store: StoreOp::Discard, }), }, ), @@ -264,11 +264,11 @@ impl<'ctx> TestCase<'ctx> { view: &self.texture.create_view(&TextureViewDescriptor::default()), depth_ops: Some(Operations { load: LoadOp::Load, - store: false, // discard! + store: StoreOp::Discard, }), stencil_ops: self.format.has_stencil_aspect().then_some(Operations { load: LoadOp::Clear(0), - store: true, + store: StoreOp::Store, }), }, ), @@ -289,11 +289,11 @@ impl<'ctx> TestCase<'ctx> { view: &self.texture.create_view(&TextureViewDescriptor::default()), depth_ops: self.format.has_depth_aspect().then_some(Operations { load: LoadOp::Clear(0.0), - store: true, + store: StoreOp::Store, }), stencil_ops: Some(Operations { load: LoadOp::Load, - store: false, // discard! + store: StoreOp::Discard, }), }, ), diff --git a/wgpu/src/backend/direct.rs b/wgpu/src/backend/direct.rs index 2e15e295e8..3d3028d334 100644 --- a/wgpu/src/backend/direct.rs +++ b/wgpu/src/backend/direct.rs @@ -4,7 +4,7 @@ use crate::{ BufferDescriptor, CommandEncoderDescriptor, ComputePassDescriptor, ComputePipelineDescriptor, DownlevelCapabilities, Features, Label, Limits, LoadOp, MapMode, Operations, PipelineLayoutDescriptor, RenderBundleEncoderDescriptor, RenderPipelineDescriptor, - SamplerDescriptor, ShaderModuleDescriptor, ShaderModuleDescriptorSpirV, ShaderSource, + SamplerDescriptor, ShaderModuleDescriptor, ShaderModuleDescriptorSpirV, ShaderSource, StoreOp, SurfaceStatus, TextureDescriptor, TextureViewDescriptor, UncapturedErrorHandler, }; @@ -392,6 +392,13 @@ fn map_texture_tagged_copy_view( } } +fn map_store_op(op: StoreOp) -> wgc::command::StoreOp { + match op { + StoreOp::Store => wgc::command::StoreOp::Store, + StoreOp::Discard => wgc::command::StoreOp::Discard, + } +} + fn map_pass_channel( ops: Option<&Operations>, ) -> wgc::command::PassChannel { @@ -401,11 +408,7 @@ fn map_pass_channel( store, }) => wgc::command::PassChannel { load_op: wgc::command::LoadOp::Clear, - store_op: if store { - wgc::command::StoreOp::Store - } else { - wgc::command::StoreOp::Discard - }, + store_op: map_store_op(store), clear_value, read_only: false, }, @@ -414,11 +417,7 @@ fn map_pass_channel( store, }) => wgc::command::PassChannel { load_op: wgc::command::LoadOp::Load, - store_op: if store { - wgc::command::StoreOp::Store - } else { - wgc::command::StoreOp::Discard - }, + store_op: map_store_op(store), clear_value: V::default(), read_only: false, }, diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index 2f83d50c55..d457681e57 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -621,11 +621,10 @@ fn map_color(color: wgt::Color) -> web_sys::GpuColorDict { web_sys::GpuColorDict::new(color.a, color.b, color.g, color.r) } -fn map_store_op(store: bool) -> web_sys::GpuStoreOp { - if store { - web_sys::GpuStoreOp::Store - } else { - web_sys::GpuStoreOp::Discard +fn map_store_op(store: crate::StoreOp) -> web_sys::GpuStoreOp { + match store { + crate::StoreOp::Store => web_sys::GpuStoreOp::Store, + crate::StoreOp::Discard => web_sys::GpuStoreOp::Discard, } } diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 19dc20120d..88b852eaa4 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -1006,16 +1006,24 @@ static_assertions::assert_impl_all!(BufferBinding: Send, Sync); /// Operation to perform to the output attachment at the start of a render pass. /// -/// The render target must be cleared at least once before its content is loaded. -/// -/// Corresponds to [WebGPU `GPULoadOp`](https://gpuweb.github.io/gpuweb/#enumdef-gpuloadop). +/// Corresponds to [WebGPU `GPULoadOp`](https://gpuweb.github.io/gpuweb/#enumdef-gpuloadop), +/// plus the corresponding clearValue. #[derive(Copy, Clone, Debug, Hash, Eq, PartialEq)] #[cfg_attr(feature = "trace", derive(serde::Serialize))] #[cfg_attr(feature = "replay", derive(serde::Deserialize))] pub enum LoadOp { - /// Clear with a specified value. + /// Loads the specified value for this attachment into the render pass. + /// + /// On some GPU hardware (primarily mobile), "clear" is significantly cheaper + /// because it avoids loading data from main memory into tile-local memory. + /// + /// On other GPU hardware, there isn’t a significant difference. + /// + /// As a result, it is recommended to use "clear" rather than "load" in cases + /// where the initial value doesn’t matter + /// (e.g. the render target will be cleared using a skybox). Clear(V), - /// Load from memory. + /// Loads the existing value for this attachment into the render pass. Load, } @@ -1025,6 +1033,28 @@ impl Default for LoadOp { } } +/// Operation to perform to the output attachment at the end of a render pass. +/// +/// Corresponds to [WebGPU `GPUStoreOp`](https://gpuweb.github.io/gpuweb/#enumdef-gpustoreop). +#[derive(Copy, Clone, Debug, Hash, Eq, PartialEq, Default)] +#[cfg_attr(feature = "trace", derive(serde::Serialize))] +#[cfg_attr(feature = "replay", derive(serde::Deserialize))] +pub enum StoreOp { + /// Stores the resulting value of the render pass for this attachment. + #[default] + Store, + /// Discards the resulting value of the render pass for this attachment. + /// + /// The attachment will be treated as uninitialized afterwards. + /// (If only either Depth or Stencil texture-aspects is set to `Discard`, + /// the respective other texture-aspect will be preserved.) + /// + /// This can be significantly faster on tile-based render hardware. + /// + /// Prefer this if the attachment is not read by subsequent passes. + Discard, +} + /// Pair of load and store operations for an attachment aspect. /// /// This type is unique to the Rust API of `wgpu`. In the WebGPU specification, @@ -1036,14 +1066,18 @@ pub struct Operations { /// How data should be read through this attachment. pub load: LoadOp, /// Whether data will be written to through this attachment. - pub store: bool, + /// + /// Note that resolve textures (if specified) are always written to, + /// regardless of this setting. + pub store: StoreOp, } impl Default for Operations { + #[inline] fn default() -> Self { Self { - load: Default::default(), - store: true, + load: LoadOp::::default(), + store: StoreOp::default(), } } } @@ -1084,6 +1118,8 @@ pub struct RenderPassColorAttachment<'tex> { /// The view to use as an attachment. pub view: &'tex TextureView, /// The view that will receive the resolved output if multisampling is used. + /// + /// If set, it is always written to, regardless of how [`Self::ops`] is configured. pub resolve_target: Option<&'tex TextureView>, /// What operations will be performed on this color attachment. pub ops: Operations, From 87a0cd0e69dabd66da4d542b1cec0c71765cfc04 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 09:35:02 +0200 Subject: [PATCH 061/135] Bump profiling from 1.0.10 to 1.0.11 (#4153) Bumps [profiling](https://github.com/aclysma/profiling) from 1.0.10 to 1.0.11. - [Changelog](https://github.com/aclysma/profiling/blob/master/CHANGELOG.md) - [Commits](https://github.com/aclysma/profiling/commits) --- updated-dependencies: - dependency-name: profiling dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 303e94dbd8..f966a215f0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2126,9 +2126,9 @@ dependencies = [ [[package]] name = "profiling" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45f10e75d83c7aec79a6aa46f897075890e156b105eebe51cfa0abce51af025f" +checksum = "f89dff0959d98c9758c88826cc002e2c3d0b9dfac4139711d1f30de442f1139b" [[package]] name = "quote" From 5c26841d66b7fb0675ba6b8509b483e6ac2c30ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 09:35:12 +0200 Subject: [PATCH 062/135] Bump termcolor from 1.2.0 to 1.3.0 (#4152) Bumps [termcolor](https://github.com/BurntSushi/termcolor) from 1.2.0 to 1.3.0. - [Commits](https://github.com/BurntSushi/termcolor/compare/1.2.0...1.3.0) --- updated-dependencies: - dependency-name: termcolor dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f966a215f0..9978941db4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2632,9 +2632,9 @@ dependencies = [ [[package]] name = "termcolor" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" +checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" dependencies = [ "winapi-util", ] diff --git a/Cargo.toml b/Cargo.toml index 40b8c46c96..10378fc231 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -142,7 +142,7 @@ deno_web = "0.137.0" deno_webidl = "0.106.0" deno_webgpu = { path = "./deno_webgpu" } tokio = "1.32.0" -termcolor = "1.2.0" +termcolor = "1.3.0" [patch."https://github.com/gfx-rs/naga"] #naga = { path = "../naga" } From dc5beac8c96536d8c8a2ca98c22021dff14e53cf Mon Sep 17 00:00:00 2001 From: Frederik Magnus Johansen Vestre Date: Tue, 19 Sep 2023 13:26:30 +0200 Subject: [PATCH 063/135] Support dual source blending (#4022) Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> --- CHANGELOG.md | 1 + wgpu-core/src/device/resource.rs | 46 +++++++++++++++++++++++++++++++- wgpu-core/src/pipeline.rs | 9 +++++++ wgpu-core/src/validation.rs | 14 +++++++++- wgpu-hal/src/dx12/adapter.rs | 4 ++- wgpu-hal/src/dx12/conv.rs | 12 ++++----- wgpu-hal/src/gles/adapter.rs | 4 +++ wgpu-hal/src/gles/conv.rs | 4 +++ wgpu-hal/src/metal/adapter.rs | 4 +++ wgpu-hal/src/metal/conv.rs | 10 +++---- wgpu-hal/src/vulkan/adapter.rs | 2 ++ wgpu-hal/src/vulkan/conv.rs | 4 +++ wgpu-types/src/lib.rs | 37 ++++++++++++++++++++++++- wgpu/src/backend/web.rs | 9 +++++++ 14 files changed, 144 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 32f90b3d90..d60e0cd84f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -100,6 +100,7 @@ By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) - Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`. By @James2022-rgb in [#4058](https://github.com/gfx-rs/wgpu/pull/4058) - `wgpu::CreateSurfaceError` and `wgpu::RequestDeviceError` now give details of the failure, but no longer implement `PartialEq` and cannot be constructed. By @kpreid in [#4066](https://github.com/gfx-rs/wgpu/pull/4066) and [#4145](https://github.com/gfx-rs/wgpu/pull/4145) - Make `WGPU_POWER_PREF=none` a valid value. By @fornwall in [4076](https://github.com/gfx-rs/wgpu/pull/4076) +- Support dual source blending in OpenGL ES, Metal, Vulkan & DX12. By @freqmod in [4022](https://github.com/gfx-rs/wgpu/pull/4022) #### Vulkan diff --git a/wgpu-core/src/device/resource.rs b/wgpu-core/src/device/resource.rs index 73f1887e10..ba7006d3d5 100644 --- a/wgpu-core/src/device/resource.rs +++ b/wgpu-core/src/device/resource.rs @@ -1276,6 +1276,10 @@ impl Device { .flags .contains(wgt::DownlevelFlags::MULTISAMPLED_SHADING), ); + caps.set( + Caps::DUAL_SOURCE_BLENDING, + self.features.contains(wgt::Features::DUAL_SOURCE_BLENDING), + ); let info = naga::valid::Validator::new(naga::valid::ValidationFlags::all(), caps) .validate(&module) @@ -2560,6 +2564,8 @@ impl Device { let mut vertex_steps = Vec::with_capacity(desc.vertex.buffers.len()); let mut vertex_buffers = Vec::with_capacity(desc.vertex.buffers.len()); let mut total_attributes = 0; + let mut shader_expects_dual_source_blending = false; + let mut pipeline_expects_dual_source_blending = false; for (i, vb_state) in desc.vertex.buffers.iter().enumerate() { vertex_steps.push(pipeline::VertexStep { stride: vb_state.array_stride, @@ -2700,7 +2706,25 @@ impl Device { { break Some(pipeline::ColorStateError::FormatNotMultisampled(cs.format)); } - + if let Some(blend_mode) = cs.blend { + for factor in [ + blend_mode.color.src_factor, + blend_mode.color.dst_factor, + blend_mode.alpha.src_factor, + blend_mode.alpha.dst_factor, + ] { + if factor.ref_second_blend_source() { + self.require_features(wgt::Features::DUAL_SOURCE_BLENDING)?; + if i == 0 { + pipeline_expects_dual_source_blending = true; + break; + } else { + return Err(crate::pipeline::CreateRenderPipelineError + ::BlendFactorOnUnsupportedTarget { factor, target: i as u32 }); + } + } + } + } break None; }; if let Some(e) = error { @@ -2857,6 +2881,15 @@ impl Device { } } + if let Some(ref interface) = shader_module.interface { + shader_expects_dual_source_blending = interface + .fragment_uses_dual_source_blending(&fragment.stage.entry_point) + .map_err(|error| pipeline::CreateRenderPipelineError::Stage { + stage: flag, + error, + })?; + } + Some(hal::ProgrammableStage { module: &shader_module.raw, entry_point: fragment.stage.entry_point.as_ref(), @@ -2865,6 +2898,17 @@ impl Device { None => None, }; + if !pipeline_expects_dual_source_blending && shader_expects_dual_source_blending { + return Err( + pipeline::CreateRenderPipelineError::ShaderExpectsPipelineToUseDualSourceBlending, + ); + } + if pipeline_expects_dual_source_blending && !shader_expects_dual_source_blending { + return Err( + pipeline::CreateRenderPipelineError::PipelineExpectsShaderToUseDualSourceBlending, + ); + } + if validated_stages.contains(wgt::ShaderStages::FRAGMENT) { for (i, output) in io.iter() { match color_targets.get(*i as usize) { diff --git a/wgpu-core/src/pipeline.rs b/wgpu-core/src/pipeline.rs index da06b652ea..c78a79820d 100644 --- a/wgpu-core/src/pipeline.rs +++ b/wgpu-core/src/pipeline.rs @@ -384,6 +384,15 @@ pub enum CreateRenderPipelineError { }, #[error("In the provided shader, the type given for group {group} binding {binding} has a size of {size}. As the device does not support `DownlevelFlags::BUFFER_BINDINGS_NOT_16_BYTE_ALIGNED`, the type must have a size that is a multiple of 16 bytes.")] UnalignedShader { group: u32, binding: u32, size: u64 }, + #[error("Using the blend factor {factor:?} for render target {target} is not possible. Only the first render target may be used when dual-source blending.")] + BlendFactorOnUnsupportedTarget { + factor: wgt::BlendFactor, + target: u32, + }, + #[error("Pipeline expects the shader entry point to make use of dual-source blending.")] + PipelineExpectsShaderToUseDualSourceBlending, + #[error("Shader entry point expects the pipeline to make use of dual-source blending.")] + ShaderExpectsPipelineToUseDualSourceBlending, } bitflags::bitflags! { diff --git a/wgpu-core/src/validation.rs b/wgpu-core/src/validation.rs index e3ecb916d3..778cc26cd5 100644 --- a/wgpu-core/src/validation.rs +++ b/wgpu-core/src/validation.rs @@ -116,6 +116,7 @@ struct EntryPoint { spec_constants: Vec, sampling_pairs: FastHashSet<(naga::Handle, naga::Handle)>, workgroup_size: [u32; 3], + dual_source_blending: bool, } #[derive(Debug)] @@ -903,7 +904,7 @@ impl Interface { ep.sampling_pairs .insert((resource_mapping[&key.image], resource_mapping[&key.sampler])); } - + ep.dual_source_blending = info.dual_source_blending; ep.workgroup_size = entry_point.workgroup_size; entry_points.insert((entry_point.stage, entry_point.name.clone()), ep); @@ -1177,4 +1178,15 @@ impl Interface { .collect(); Ok(outputs) } + + pub fn fragment_uses_dual_source_blending( + &self, + entry_point_name: &str, + ) -> Result { + let pair = (naga::ShaderStage::Fragment, entry_point_name.to_string()); + self.entry_points + .get(&pair) + .ok_or(StageError::MissingEntryPoint(pair.1)) + .map(|ep| ep.dual_source_blending) + } } diff --git a/wgpu-hal/src/dx12/adapter.rs b/wgpu-hal/src/dx12/adapter.rs index 02cde913ca..3959deeccd 100644 --- a/wgpu-hal/src/dx12/adapter.rs +++ b/wgpu-hal/src/dx12/adapter.rs @@ -250,7 +250,9 @@ impl super::Adapter { | wgt::Features::TEXTURE_FORMAT_16BIT_NORM | wgt::Features::PUSH_CONSTANTS | wgt::Features::SHADER_PRIMITIVE_INDEX - | wgt::Features::RG11B10UFLOAT_RENDERABLE; + | wgt::Features::RG11B10UFLOAT_RENDERABLE + | wgt::Features::DUAL_SOURCE_BLENDING; + //TODO: in order to expose this, we need to run a compute shader // that extract the necessary statistics out of the D3D12 result. // Alternatively, we could allocate a buffer for the query set, diff --git a/wgpu-hal/src/dx12/conv.rs b/wgpu-hal/src/dx12/conv.rs index 908944567a..f484d1a9e2 100644 --- a/wgpu-hal/src/dx12/conv.rs +++ b/wgpu-hal/src/dx12/conv.rs @@ -246,12 +246,12 @@ fn map_blend_factor(factor: wgt::BlendFactor, is_alpha: bool) -> d3d12_ty::D3D12 Bf::Constant => d3d12_ty::D3D12_BLEND_BLEND_FACTOR, Bf::OneMinusConstant => d3d12_ty::D3D12_BLEND_INV_BLEND_FACTOR, Bf::SrcAlphaSaturated => d3d12_ty::D3D12_BLEND_SRC_ALPHA_SAT, - //Bf::Src1Color if is_alpha => d3d12_ty::D3D12_BLEND_SRC1_ALPHA, - //Bf::Src1Color => d3d12_ty::D3D12_BLEND_SRC1_COLOR, - //Bf::OneMinusSrc1Color if is_alpha => d3d12_ty::D3D12_BLEND_INV_SRC1_ALPHA, - //Bf::OneMinusSrc1Color => d3d12_ty::D3D12_BLEND_INV_SRC1_COLOR, - //Bf::Src1Alpha => d3d12_ty::D3D12_BLEND_SRC1_ALPHA, - //Bf::OneMinusSrc1Alpha => d3d12_ty::D3D12_BLEND_INV_SRC1_ALPHA, + Bf::Src1 if is_alpha => d3d12_ty::D3D12_BLEND_SRC1_ALPHA, + Bf::Src1 => d3d12_ty::D3D12_BLEND_SRC1_COLOR, + Bf::OneMinusSrc1 if is_alpha => d3d12_ty::D3D12_BLEND_INV_SRC1_ALPHA, + Bf::OneMinusSrc1 => d3d12_ty::D3D12_BLEND_INV_SRC1_COLOR, + Bf::Src1Alpha => d3d12_ty::D3D12_BLEND_SRC1_ALPHA, + Bf::OneMinusSrc1Alpha => d3d12_ty::D3D12_BLEND_INV_SRC1_ALPHA, } } diff --git a/wgpu-hal/src/gles/adapter.rs b/wgpu-hal/src/gles/adapter.rs index 348f62bc03..3dae58b7c4 100644 --- a/wgpu-hal/src/gles/adapter.rs +++ b/wgpu-hal/src/gles/adapter.rs @@ -363,6 +363,10 @@ impl super::Adapter { wgt::Features::MULTIVIEW, extensions.contains("OVR_multiview2"), ); + features.set( + wgt::Features::DUAL_SOURCE_BLENDING, + extensions.contains("GL_EXT_blend_func_extended"), + ); features.set( wgt::Features::SHADER_PRIMITIVE_INDEX, ver >= (3, 2) || extensions.contains("OES_geometry_shader"), diff --git a/wgpu-hal/src/gles/conv.rs b/wgpu-hal/src/gles/conv.rs index dd5d764c6a..9bfac022a1 100644 --- a/wgpu-hal/src/gles/conv.rs +++ b/wgpu-hal/src/gles/conv.rs @@ -376,6 +376,10 @@ fn map_blend_factor(factor: wgt::BlendFactor) -> u32 { Bf::Constant => glow::CONSTANT_COLOR, Bf::OneMinusConstant => glow::ONE_MINUS_CONSTANT_COLOR, Bf::SrcAlphaSaturated => glow::SRC_ALPHA_SATURATE, + Bf::Src1 => glow::SRC1_COLOR, + Bf::OneMinusSrc1 => glow::ONE_MINUS_SRC1_COLOR, + Bf::Src1Alpha => glow::SRC1_ALPHA, + Bf::OneMinusSrc1Alpha => glow::ONE_MINUS_SRC1_ALPHA, } } diff --git a/wgpu-hal/src/metal/adapter.rs b/wgpu-hal/src/metal/adapter.rs index 126741d257..da254442bc 100644 --- a/wgpu-hal/src/metal/adapter.rs +++ b/wgpu-hal/src/metal/adapter.rs @@ -833,6 +833,10 @@ impl super::PrivateCapabilities { self.timestamp_query_support .contains(TimestampQuerySupport::INSIDE_WGPU_PASSES), ); + features.set( + F::DUAL_SOURCE_BLENDING, + self.msl_version >= MTLLanguageVersion::V1_2 && self.dual_source_blending, + ); features.set(F::TEXTURE_COMPRESSION_ASTC, self.format_astc); features.set(F::TEXTURE_COMPRESSION_ASTC_HDR, self.format_astc_hdr); features.set(F::TEXTURE_COMPRESSION_BC, self.format_bc); diff --git a/wgpu-hal/src/metal/conv.rs b/wgpu-hal/src/metal/conv.rs index a1ceb287ab..8f6439b50b 100644 --- a/wgpu-hal/src/metal/conv.rs +++ b/wgpu-hal/src/metal/conv.rs @@ -152,13 +152,11 @@ pub fn map_blend_factor(factor: wgt::BlendFactor) -> metal::MTLBlendFactor { Bf::OneMinusDstAlpha => OneMinusDestinationAlpha, Bf::Constant => BlendColor, Bf::OneMinusConstant => OneMinusBlendColor, - //Bf::ConstantAlpha => BlendAlpha, - //Bf::OneMinusConstantAlpha => OneMinusBlendAlpha, Bf::SrcAlphaSaturated => SourceAlphaSaturated, - //Bf::Src1 => Source1Color, - //Bf::OneMinusSrc1 => OneMinusSource1Color, - //Bf::Src1Alpha => Source1Alpha, - //Bf::OneMinusSrc1Alpha => OneMinusSource1Alpha, + Bf::Src1 => Source1Color, + Bf::OneMinusSrc1 => OneMinusSource1Color, + Bf::Src1Alpha => Source1Alpha, + Bf::OneMinusSrc1Alpha => OneMinusSource1Alpha, } } diff --git a/wgpu-hal/src/vulkan/adapter.rs b/wgpu-hal/src/vulkan/adapter.rs index bcbab85084..78aceeeeef 100644 --- a/wgpu-hal/src/vulkan/adapter.rs +++ b/wgpu-hal/src/vulkan/adapter.rs @@ -177,6 +177,7 @@ impl PhysicalDeviceFeatures { //.shader_resource_residency(requested_features.contains(wgt::Features::SHADER_RESOURCE_RESIDENCY)) .geometry_shader(requested_features.contains(wgt::Features::SHADER_PRIMITIVE_INDEX)) .depth_clamp(requested_features.contains(wgt::Features::DEPTH_CLIP_CONTROL)) + .dual_src_blend(requested_features.contains(wgt::Features::DUAL_SOURCE_BLENDING)) .build(), descriptor_indexing: if requested_features.intersects(indexing_features()) { Some( @@ -460,6 +461,7 @@ impl PhysicalDeviceFeatures { } features.set(F::DEPTH_CLIP_CONTROL, self.core.depth_clamp != 0); + features.set(F::DUAL_SOURCE_BLENDING, self.core.dual_src_blend != 0); if let Some(ref multiview) = self.multiview { features.set(F::MULTIVIEW, multiview.multiview != 0); diff --git a/wgpu-hal/src/vulkan/conv.rs b/wgpu-hal/src/vulkan/conv.rs index e2398c2689..459b7f858f 100644 --- a/wgpu-hal/src/vulkan/conv.rs +++ b/wgpu-hal/src/vulkan/conv.rs @@ -792,6 +792,10 @@ fn map_blend_factor(factor: wgt::BlendFactor) -> vk::BlendFactor { Bf::SrcAlphaSaturated => vk::BlendFactor::SRC_ALPHA_SATURATE, Bf::Constant => vk::BlendFactor::CONSTANT_COLOR, Bf::OneMinusConstant => vk::BlendFactor::ONE_MINUS_CONSTANT_COLOR, + Bf::Src1 => vk::BlendFactor::SRC1_COLOR, + Bf::OneMinusSrc1 => vk::BlendFactor::ONE_MINUS_SRC1_COLOR, + Bf::Src1Alpha => vk::BlendFactor::SRC1_ALPHA, + Bf::OneMinusSrc1Alpha => vk::BlendFactor::ONE_MINUS_SRC1_ALPHA, } } diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 9f61e2e490..e08b802094 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -781,7 +781,17 @@ bitflags::bitflags! { /// This is a native only feature. const SHADER_EARLY_DEPTH_TEST = 1 << 62; - // 62..64 available + /// Allows two outputs from a shader to be used for blending. + /// Note that dual-source blending doesn't support multiple render targets. + /// + /// For more info see the OpenGL ES extension GL_EXT_blend_func_extended. + /// + /// Supported platforms: + /// - OpenGL ES (with GL_EXT_blend_func_extended) + /// - Metal (with MSL 1.2+) + /// - Vulkan (with dualSrcBlend) + /// - DX12 + const DUAL_SOURCE_BLENDING = 1 << 63; } } @@ -1549,6 +1559,8 @@ impl TextureViewDimension { /// /// Corresponds to [WebGPU `GPUBlendFactor`]( /// https://gpuweb.github.io/gpuweb/#enumdef-gpublendfactor). +/// Values using S1 requires [`Features::DUAL_SOURCE_BLENDING`] and can only be +/// used with the first render target. #[repr(C)] #[derive(Copy, Clone, Debug, Hash, Eq, PartialEq)] #[cfg_attr(feature = "trace", derive(Serialize))] @@ -1581,6 +1593,29 @@ pub enum BlendFactor { Constant = 11, /// 1.0 - Constant OneMinusConstant = 12, + /// S1.component + Src1 = 13, + /// 1.0 - S1.component + OneMinusSrc1 = 14, + /// S1.alpha + Src1Alpha = 15, + /// 1.0 - S1.alpha + OneMinusSrc1Alpha = 16, +} + +impl BlendFactor { + /// Returns `true` if the blend factor references the second blend source. + /// + /// Note that the usage of those blend factors require [`Features::DUAL_SOURCE_BLENDING`]. + pub fn ref_second_blend_source(&self) -> bool { + match self { + BlendFactor::Src1 + | BlendFactor::OneMinusSrc1 + | BlendFactor::Src1Alpha + | BlendFactor::OneMinusSrc1Alpha => true, + _ => false, + } + } } /// Alpha blend operation. diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index d457681e57..b649d41ebb 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -421,6 +421,15 @@ fn map_blend_factor(factor: wgt::BlendFactor) -> web_sys::GpuBlendFactor { BlendFactor::SrcAlphaSaturated => bf::SrcAlphaSaturated, BlendFactor::Constant => bf::Constant, BlendFactor::OneMinusConstant => bf::OneMinusConstant, + BlendFactor::Src1 + | BlendFactor::OneMinusSrc1 + | BlendFactor::Src1Alpha + | BlendFactor::OneMinusSrc1Alpha => { + panic!( + "{:?} is not enabled for this backend", + wgt::Features::DUAL_SOURCE_BLENDING + ) + } } } From 82f0cd9ee655fc14af04693e9d30c5e3130161ce Mon Sep 17 00:00:00 2001 From: Alphyr <47725341+a1phyr@users.noreply.github.com> Date: Wed, 20 Sep 2023 20:45:09 +0200 Subject: [PATCH 064/135] Fix `Features::TEXTURE_COMPRESSION_ASTC*` doc (#4157) Co-authored-by: Connor Fitzgerald --- CHANGELOG.md | 3 ++- wgpu-types/src/lib.rs | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d60e0cd84f..4a54939a25 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -110,7 +110,8 @@ By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) ### Documentation -- Use WGSL for VertexFormat example types. By @ScanMountGoat in [#4305](https://github.com/gfx-rs/wgpu/pull/4035) +- Use WGSL for VertexFormat example types. By @ScanMountGoat in [#4035](https://github.com/gfx-rs/wgpu/pull/4035) +- Fix description of `Features::TEXTURE_COMPRESSION_ASTC_HDR` in [#4157](https://github.com/gfx-rs/wgpu/pull/4157) #### Metal diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index e08b802094..59c32ec3b8 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -371,7 +371,7 @@ bitflags::bitflags! { /// Compressed textures sacrifice some quality in exchange for significantly reduced /// bandwidth usage. /// - /// Support for this feature guarantees availability of [`TextureUsages::COPY_SRC | TextureUsages::COPY_DST | TextureUsages::TEXTURE_BINDING`] for ASTC formats. + /// Support for this feature guarantees availability of [`TextureUsages::COPY_SRC | TextureUsages::COPY_DST | TextureUsages::TEXTURE_BINDING`] for ASTC formats with Unorm/UnormSrgb channel type. /// [`Features::TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES`] may enable additional usages. /// /// Supported Platforms: @@ -409,7 +409,7 @@ bitflags::bitflags! { /// Compressed textures sacrifice some quality in exchange for significantly reduced /// bandwidth usage. /// - /// Support for this feature guarantees availability of [`TextureUsages::COPY_SRC | TextureUsages::COPY_DST | TextureUsages::TEXTURE_BINDING`] for BCn formats. + /// Support for this feature guarantees availability of [`TextureUsages::COPY_SRC | TextureUsages::COPY_DST | TextureUsages::TEXTURE_BINDING`] for ASTC formats with the HDR channel type. /// [`Features::TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES`] may enable additional usages. /// /// Supported Platforms: From 3c37c2afe525d9ea28c3b525b1f5a927a1ce13fb Mon Sep 17 00:00:00 2001 From: Neil Sarkar Date: Wed, 20 Sep 2023 12:07:40 -0700 Subject: [PATCH 065/135] Bring back xtask alias (#4160) --- .cargo/config.toml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .cargo/config.toml diff --git a/.cargo/config.toml b/.cargo/config.toml new file mode 100644 index 0000000000..95d2a35175 --- /dev/null +++ b/.cargo/config.toml @@ -0,0 +1,7 @@ +[alias] +xtask = "run --manifest-path xtask/Cargo.toml --" + +[build] +rustflags = [ +"--cfg=web_sys_unstable_apis" +] From 2b4a8b318fb3717473b7da20b028dbc1f58ee9a2 Mon Sep 17 00:00:00 2001 From: Aaron Hill Date: Wed, 20 Sep 2023 21:02:37 -0400 Subject: [PATCH 066/135] wgpu-core: Only produce StageError::InputNotConsumed on DX11/DX12 (#4116) * wgpu-core: Only produce StageError::InputNotConsumed on DX11/DX12 This error only exists due to an issue with naga's HLSL support: https://github.com/gfx-rs/naga/issues/1945 The WGPU spec itself allows vertex shader outputs that are not consumed by the fragment shader. Until the issue is fixed, we can allow unconsumed outputs on all platforms other than DX11/DX12. * Add Features::SHADER_UNUSED_VERTEX_OUTPUT to allow disabling check * Pick an unused feature id --- CHANGELOG.md | 1 + deno_webgpu/lib.rs | 7 +++++++ wgpu-core/src/device/resource.rs | 3 ++- wgpu-core/src/validation.rs | 16 ++++++++++++++-- wgpu-hal/src/gles/adapter.rs | 1 + wgpu-hal/src/metal/adapter.rs | 1 + wgpu-hal/src/vulkan/adapter.rs | 1 + wgpu-types/src/lib.rs | 9 +++++++++ 8 files changed, 36 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a54939a25..08d20c09fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -124,6 +124,7 @@ By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) - Derive storage bindings via `naga::StorageAccess` instead of `naga::GlobalUse`. By @teoxoy in [#3985](https://github.com/gfx-rs/wgpu/pull/3985). - `Queue::on_submitted_work_done` callbacks will now always be called after all previous `BufferSlice::map_async` callbacks, even when there are no active submissions. By @cwfitzgerald in [#4036](https://github.com/gfx-rs/wgpu/pull/4036). - Fix `clear` texture views being leaked when `wgpu::SurfaceTexture` is dropped before it is presented. By @rajveermalviya in [#4057](https://github.com/gfx-rs/wgpu/pull/4057). +- Add `Feature::SHADER_UNUSED_VERTEX_OUTPUT` to allow unused vertex shader outputs. By @Aaron1011 in [#4116](https://github.com/gfx-rs/wgpu/pull/4116). #### Vulkan - Fix enabling `wgpu::Features::PARTIALLY_BOUND_BINDING_ARRAY` not being actually enabled in vulkan backend. By @39ali in[#3772](https://github.com/gfx-rs/wgpu/pull/3772). diff --git a/deno_webgpu/lib.rs b/deno_webgpu/lib.rs index 92a6a51334..bf61e42517 100644 --- a/deno_webgpu/lib.rs +++ b/deno_webgpu/lib.rs @@ -365,6 +365,9 @@ fn deserialize_features(features: &wgpu_types::Features) -> Vec<&'static str> { if features.contains(wgpu_types::Features::SHADER_EARLY_DEPTH_TEST) { return_features.push("shader-early-depth-test"); } + if features.contains(wgpu_types::Features::SHADER_UNUSED_VERTEX_OUTPUT) { + return_features.push("shader-unused-vertex-output"); + } return_features } @@ -625,6 +628,10 @@ impl From for wgpu_types::Features { wgpu_types::Features::SHADER_EARLY_DEPTH_TEST, required_features.0.contains("shader-early-depth-test"), ); + features.set( + wgpu_types::Features::SHADER_UNUSED_VERTEX_OUTPUT, + required_features.0.contains("shader-unused-vertex-output"), + ); features } diff --git a/wgpu-core/src/device/resource.rs b/wgpu-core/src/device/resource.rs index ba7006d3d5..8acc34acf4 100644 --- a/wgpu-core/src/device/resource.rs +++ b/wgpu-core/src/device/resource.rs @@ -1290,7 +1290,8 @@ impl Device { inner: Box::new(inner), }) })?; - let interface = validation::Interface::new(&module, &info, self.limits.clone()); + let interface = + validation::Interface::new(&module, &info, self.limits.clone(), self.features); let hal_shader = hal::ShaderInput::Naga(hal::NagaShader { module, info }); let hal_desc = hal::ShaderModuleDescriptor { diff --git a/wgpu-core/src/validation.rs b/wgpu-core/src/validation.rs index 778cc26cd5..ef5c65ed00 100644 --- a/wgpu-core/src/validation.rs +++ b/wgpu-core/src/validation.rs @@ -122,6 +122,7 @@ struct EntryPoint { #[derive(Debug)] pub struct Interface { limits: wgt::Limits, + features: wgt::Features, resources: naga::Arena, entry_points: FastHashMap<(naga::ShaderStage, String), EntryPoint>, } @@ -831,7 +832,12 @@ impl Interface { list.push(varying); } - pub fn new(module: &naga::Module, info: &naga::valid::ModuleInfo, limits: wgt::Limits) -> Self { + pub fn new( + module: &naga::Module, + info: &naga::valid::ModuleInfo, + limits: wgt::Limits, + features: wgt::Features, + ) -> Self { let mut resources = naga::Arena::new(); let mut resource_mapping = FastHashMap::default(); for (var_handle, var) in module.global_variables.iter() { @@ -912,6 +918,7 @@ impl Interface { Self { limits, + features, resources, entry_points, } @@ -1121,7 +1128,12 @@ impl Interface { } // Check all vertex outputs and make sure the fragment shader consumes them. - if shader_stage == naga::ShaderStage::Fragment { + // This requirement is removed if the `SHADER_UNUSED_VERTEX_OUTPUT` feature is enabled. + if shader_stage == naga::ShaderStage::Fragment + && !self + .features + .contains(wgt::Features::SHADER_UNUSED_VERTEX_OUTPUT) + { for &index in inputs.keys() { // This is a linear scan, but the count should be low enough // that this should be fine. diff --git a/wgpu-hal/src/gles/adapter.rs b/wgpu-hal/src/gles/adapter.rs index 3dae58b7c4..cbbcf7399e 100644 --- a/wgpu-hal/src/gles/adapter.rs +++ b/wgpu-hal/src/gles/adapter.rs @@ -372,6 +372,7 @@ impl super::Adapter { ver >= (3, 2) || extensions.contains("OES_geometry_shader"), ); features.set(wgt::Features::SHADER_EARLY_DEPTH_TEST, ver >= (3, 1)); + features.set(wgt::Features::SHADER_UNUSED_VERTEX_OUTPUT, true); let gles_bcn_exts = [ "GL_EXT_texture_compression_s3tc_srgb", "GL_EXT_texture_compression_rgtc", diff --git a/wgpu-hal/src/metal/adapter.rs b/wgpu-hal/src/metal/adapter.rs index da254442bc..c4617deaa0 100644 --- a/wgpu-hal/src/metal/adapter.rs +++ b/wgpu-hal/src/metal/adapter.rs @@ -871,6 +871,7 @@ impl super::PrivateCapabilities { features.set(F::ADDRESS_MODE_CLAMP_TO_ZERO, true); features.set(F::RG11B10UFLOAT_RENDERABLE, self.format_rg11b10_all); + features.set(F::SHADER_UNUSED_VERTEX_OUTPUT, true); features } diff --git a/wgpu-hal/src/vulkan/adapter.rs b/wgpu-hal/src/vulkan/adapter.rs index 78aceeeeef..b515628726 100644 --- a/wgpu-hal/src/vulkan/adapter.rs +++ b/wgpu-hal/src/vulkan/adapter.rs @@ -522,6 +522,7 @@ impl PhysicalDeviceFeatures { | vk::FormatFeatureFlags::COLOR_ATTACHMENT_BLEND, ); features.set(F::RG11B10UFLOAT_RENDERABLE, rg11b10ufloat_renderable); + features.set(F::SHADER_UNUSED_VERTEX_OUTPUT, true); (features, dl_flags) } diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 59c32ec3b8..13603fc03f 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -737,6 +737,15 @@ bitflags::bitflags! { /// This is a native only feature. const VERTEX_ATTRIBUTE_64BIT = 1 << 53; + /// Allows vertex shaders to have outputs which are not consumed + /// by the fragment shader. + /// + /// Supported platforms: + /// - Vulkan + /// - Metal + /// - OpenGL + const SHADER_UNUSED_VERTEX_OUTPUT = 1 << 54; + // 54..59 available // Shader: From 3ff04c31e6b9b5f8b0589e6dfa55aecb91d1ce8b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 21 Sep 2023 02:36:45 +0000 Subject: [PATCH 067/135] Bump smallvec from 1.11.0 to 1.11.1 (#4161) Bumps [smallvec](https://github.com/servo/rust-smallvec) from 1.11.0 to 1.11.1. - [Release notes](https://github.com/servo/rust-smallvec/releases) - [Commits](https://github.com/servo/rust-smallvec/compare/v1.11.0...v1.11.1) --- updated-dependencies: - dependency-name: smallvec dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9978941db4..942cf10970 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2531,9 +2531,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" +checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" [[package]] name = "smithay-client-toolkit" From 855fefc10e14caa7c262c9a21a1db25a821f3c96 Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Thu, 21 Sep 2023 02:01:35 -0400 Subject: [PATCH 068/135] Update CODEOWNERS with new wgpu team (#4162) --- .github/CODEOWNERS | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 7fefad320c..1d6e147803 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,4 @@ -/cts_runner/ @crowlKats -/deno_webgpu/ @crowlKats +* @gfx-rs/wgpu + +/cts_runner/ @gfx-rs/deno @gfx-rs/wgpu +/deno_webgpu/ @gfx-rs/deno @gfx-rs/wgpu From 85e2141355adb37cd58f90a5fcd889e14a659a91 Mon Sep 17 00:00:00 2001 From: Fredrik Fornwall Date: Fri, 22 Sep 2023 14:58:33 +0200 Subject: [PATCH 069/135] Fix using trunk version on mac (#4164) Overriding the metal version in the workspace Cargo.toml using a patch section does not work for projects building against the trunk version: wgpu = { git = "https://github.com/gfx-rs/wgpu", branch = "trunk" } Instead specify the metal dependencies only once in wgpu-hal. --- Cargo.toml | 9 --------- wgpu-hal/Cargo.toml | 2 +- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 10378fc231..b10762248e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -100,12 +100,6 @@ wgpu-test = { version = "0.17", path = "./tests"} wgpu-types = { version = "0.17.0", path = "./wgpu-types" } winit = { version = "0.28.6", features = [ "android-native-activity" ] } -# Metal dependencies -block = "0.1" -metal = "0.26.0" -objc = "0.2.5" -core-graphics-types = "0.1" - # Vulkan dependencies ash = "0.37.3" gpu-alloc = "0.6" @@ -157,9 +151,6 @@ termcolor = "1.3.0" #naga = { path = "../naga" } #glow = { path = "../glow" } #d3d12 = { path = "../d3d12-rs" } -#metal = { path = "../metal-rs" } -#metal = { path = "../metal-rs" } -metal = { git = "https://github.com/gfx-rs/metal-rs/", rev = "d24f1a4" } # More timer support via https://github.com/gfx-rs/metal-rs/pull/280 #web-sys = { path = "../wasm-bindgen/crates/web-sys" } #js-sys = { path = "../wasm-bindgen/crates/js-sys" } #wasm-bindgen = { path = "../wasm-bindgen" } diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 3db7363616..3cc69975cc 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -103,7 +103,7 @@ d3d12 = { version = "0.7", features = ["libloading"], optional = true } # backend: Metal block = { version = "0.1", optional = true } -metal = "0.26.0" +metal = { git = "https://github.com/gfx-rs/metal-rs/", rev = "d24f1a4" } # More timer support via https://github.com/gfx-rs/metal-rs/pull/280 objc = "0.2.5" core-graphics-types = "0.1" From 8e393ca213ecd4b74c541a226a763fc4ec0a42c2 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Fri, 22 Sep 2023 20:00:07 -0700 Subject: [PATCH 070/135] Add some missing `Debug` implementations. (#4166) --- wgpu-types/src/lib.rs | 1 + wgpu/src/lib.rs | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 13603fc03f..a680d91296 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -6473,6 +6473,7 @@ pub enum Gles3MinorVersion { } /// Options for creating an instance. +#[derive(Debug)] pub struct InstanceDescriptor { /// Which `Backends` to enable. pub backends: Backends, diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index 88b852eaa4..f655075c06 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -523,7 +523,7 @@ impl Drop for ShaderModule { /// This type is unique to the Rust API of `wgpu`. In the WebGPU specification, /// only WGSL source code strings are accepted. #[cfg_attr(feature = "naga", allow(clippy::large_enum_variant))] -#[derive(Clone)] +#[derive(Clone, Debug)] #[non_exhaustive] pub enum ShaderSource<'a> { /// SPIR-V module represented as a slice of words. @@ -560,7 +560,7 @@ static_assertions::assert_impl_all!(ShaderSource: Send, Sync); /// /// Corresponds to [WebGPU `GPUShaderModuleDescriptor`]( /// https://gpuweb.github.io/gpuweb/#dictdef-gpushadermoduledescriptor). -#[derive(Clone)] +#[derive(Clone, Debug)] pub struct ShaderModuleDescriptor<'a> { /// Debug label of the shader module. This will show up in graphics debuggers for easy identification. pub label: Label<'a>, @@ -574,6 +574,7 @@ static_assertions::assert_impl_all!(ShaderModuleDescriptor: Send, Sync); /// /// This type is unique to the Rust API of `wgpu`. In the WebGPU specification, /// only WGSL source code strings are accepted. +#[derive(Debug)] pub struct ShaderModuleDescriptorSpirV<'a> { /// Debug label of the shader module. This will show up in graphics debuggers for easy identification. pub label: Label<'a>, From 7e0d6c971f900f6a8f01a9de9c41f7894164a82c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Sep 2023 00:09:48 -0400 Subject: [PATCH 071/135] Bump glam from 0.24.1 to 0.24.2 (#4171) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 942cf10970..fdc1ff0554 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1127,9 +1127,9 @@ dependencies = [ [[package]] name = "glam" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42218cb640844e3872cc3c153dc975229e080a6c4733b34709ef445610550226" +checksum = "b5418c17512bdf42730f9032c74e1ae39afc408745ebb2acf72fbc4691c17945" [[package]] name = "glow" diff --git a/Cargo.toml b/Cargo.toml index b10762248e..63e7ff9a8f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -68,7 +68,7 @@ ddsfile = "0.5" env_logger = "0.10" futures-intrusive = "0.5" rustc-hash = "1.1.0" -glam = "0.24.1" +glam = "0.24.2" image = { version = "0.24", default-features = false, features = ["png"] } # libloading 0.8 switches from `winapi` to `windows-sys`; permit either libloading = ">=0.7,<0.9" From 27f2ce397a5712f04c582642888c608f5aa1d5ce Mon Sep 17 00:00:00 2001 From: Jacob Hughes Date: Mon, 25 Sep 2023 13:57:15 -0400 Subject: [PATCH 072/135] Re-export Naga (#4172) --- CHANGELOG.md | 1 + wgpu/src/lib.rs | 2 ++ 2 files changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 08d20c09fa..9a50aee642 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -89,6 +89,7 @@ By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) ### Added/New Features - Add `gles_minor_version` field to `wgpu::InstanceDescriptor`. By @PJB3005 in [#3998](https://github.com/gfx-rs/wgpu/pull/3998) +- Re-export Naga. By @exrook in [#4172](https://github.com/gfx-rs/wgpu/pull/4172) ### Changes diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index f655075c06..f62e14bcae 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -54,6 +54,8 @@ pub use wgt::{ ))] #[doc(hidden)] pub use ::hal; +#[cfg(feature = "naga")] +pub use ::naga; #[cfg(any( not(target_arch = "wasm32"), feature = "webgl", From 3666f1aef8fde9a74d736792299fb6d925b726b4 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Mon, 25 Sep 2023 16:55:55 -0700 Subject: [PATCH 073/135] Add test case for #4167, marked as an expected failure. (#4168) --- tests/tests/pipeline.rs | 37 +++++++++++++++++++++++++++++++++++++ tests/tests/root.rs | 1 + 2 files changed, 38 insertions(+) create mode 100644 tests/tests/pipeline.rs diff --git a/tests/tests/pipeline.rs b/tests/tests/pipeline.rs new file mode 100644 index 0000000000..37046dd6b9 --- /dev/null +++ b/tests/tests/pipeline.rs @@ -0,0 +1,37 @@ +use wasm_bindgen_test::*; +use wgpu_test::{fail, initialize_test, FailureCase, TestParameters}; + +#[test] +#[wasm_bindgen_test] +fn pipeline_default_layout_bad_module() { + // Create an invalid shader and a compute pipeline that uses it + // with a default bindgroup layout, and then ask for that layout. + // Validation should fail, but wgpu should not panic. + let parameters = TestParameters::default() + .skip(FailureCase::webgl2()) + // https://github.com/gfx-rs/wgpu/issues/4167 + .expect_fail(FailureCase::always()); + initialize_test(parameters, |ctx| { + ctx.device.push_error_scope(wgpu::ErrorFilter::Validation); + + fail(&ctx.device, || { + let module = ctx + .device + .create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl("not valid wgsl".into()), + }); + + let pipeline = ctx + .device + .create_compute_pipeline(&wgpu::ComputePipelineDescriptor { + label: Some("mandelbrot compute pipeline"), + layout: None, + module: &module, + entry_point: "doesn't exist", + }); + + pipeline.get_bind_group_layout(0); + }); + }); +} diff --git a/tests/tests/root.rs b/tests/tests/root.rs index b2695fd827..ff910ef877 100644 --- a/tests/tests/root.rs +++ b/tests/tests/root.rs @@ -19,6 +19,7 @@ mod external_texture; mod instance; mod occlusion_query; mod partially_bounded_arrays; +mod pipeline; mod poll; mod query_set; mod queue_transfer; From 21e20076a09cdefaed3baadfaf23836cc0c9c7af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Sep 2023 09:41:31 +0200 Subject: [PATCH 074/135] Bump gpu-descriptor from 0.2.3 to 0.2.4 (#4173) Bumps [gpu-descriptor](https://github.com/zakarumych/gpu-descriptor) from 0.2.3 to 0.2.4. - [Changelog](https://github.com/zakarumych/gpu-descriptor/blob/master/CHANGELOG.md) - [Commits](https://github.com/zakarumych/gpu-descriptor/commits) --- updated-dependencies: - dependency-name: gpu-descriptor dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fdc1ff0554..e58106ba94 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -35,11 +35,11 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "ahash" -version = "0.7.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" dependencies = [ - "getrandom 0.2.10", + "cfg-if", "once_cell", "version_check", ] @@ -53,6 +53,12 @@ dependencies = [ "memchr", ] +[[package]] +name = "allocator-api2" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" + [[package]] name = "android-activity" version = "0.4.2" @@ -1242,13 +1248,13 @@ dependencies = [ [[package]] name = "gpu-descriptor" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b0c02e1ba0bdb14e965058ca34e09c020f8e507a760df1121728e0aef68d57a" +checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.0", "gpu-descriptor-types", - "hashbrown 0.12.3", + "hashbrown 0.14.0", ] [[package]] @@ -1265,15 +1271,16 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash", -] [[package]] name = "hashbrown" version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" +dependencies = [ + "ahash", + "allocator-api2", +] [[package]] name = "hassle-rs" From 2b1ea39028a1ec80fc591c8f61c05dbc70a7aad9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Sep 2023 23:44:52 -0400 Subject: [PATCH 075/135] Bump thiserror from 1.0.48 to 1.0.49 (#4178) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e58106ba94..814d133c96 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2648,18 +2648,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.48" +version = "1.0.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" +checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.48" +version = "1.0.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" +checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc" dependencies = [ "proc-macro2", "quote", From 8d32dc2b47f8fa3d9d568f3d1a8150d208895f30 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Sep 2023 23:45:02 -0400 Subject: [PATCH 076/135] Bump async-executor from 1.5.1 to 1.5.3 (#4174) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 28 ++++------------------------ 1 file changed, 4 insertions(+), 24 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 814d133c96..48d4cefb05 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -130,9 +130,9 @@ dependencies = [ [[package]] name = "async-executor" -version = "1.5.1" +version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fa3dc5f2a8564f07759c008b9109dc0d39de92a88d5588b8a5036d286383afb" +checksum = "78f2db9467baa66a700abce2a18c5ad793f6f83310aca1284796fc3921d113fd" dependencies = [ "async-lock", "async-task", @@ -856,12 +856,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "1.9.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" -dependencies = [ - "instant", -] +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" [[package]] name = "fdeflate" @@ -1042,13 +1039,8 @@ version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" dependencies = [ - "fastrand", "futures-core", - "futures-io", - "memchr", - "parking", "pin-project-lite", - "waker-fn", ] [[package]] @@ -1958,12 +1950,6 @@ dependencies = [ "ttf-parser", ] -[[package]] -name = "parking" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e" - [[package]] name = "parking_lot" version = "0.12.1" @@ -2929,12 +2915,6 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" -[[package]] -name = "waker-fn" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" - [[package]] name = "wasi" version = "0.9.0+wasi-snapshot-preview1" From 57f8757fadf36b833714488fea8663ef8b0257eb Mon Sep 17 00:00:00 2001 From: Brad Werth Date: Wed, 27 Sep 2023 05:34:23 -0700 Subject: [PATCH 077/135] Add device destroy method (#4163) Plus tests that ensure that an invalid device behaves correctly. Mostly a stub implementation otherwise. --- CHANGELOG.md | 1 + tests/tests/device.rs | 354 +++++++++++++++++++++++++++++- wgpu-core/src/command/clear.rs | 3 + wgpu-core/src/command/compute.rs | 9 + wgpu-core/src/command/render.rs | 9 + wgpu-core/src/command/transfer.rs | 16 +- wgpu-core/src/device/global.rs | 123 ++++++++++- wgpu-core/src/device/mod.rs | 6 +- wgpu-core/src/device/resource.rs | 39 ++++ wgpu-core/src/present.rs | 9 + wgpu/src/backend/direct.rs | 9 + wgpu/src/backend/web.rs | 10 + wgpu/src/context.rs | 16 ++ wgpu/src/lib.rs | 5 + 14 files changed, 601 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9a50aee642..f59fc35dc8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -102,6 +102,7 @@ By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) - `wgpu::CreateSurfaceError` and `wgpu::RequestDeviceError` now give details of the failure, but no longer implement `PartialEq` and cannot be constructed. By @kpreid in [#4066](https://github.com/gfx-rs/wgpu/pull/4066) and [#4145](https://github.com/gfx-rs/wgpu/pull/4145) - Make `WGPU_POWER_PREF=none` a valid value. By @fornwall in [4076](https://github.com/gfx-rs/wgpu/pull/4076) - Support dual source blending in OpenGL ES, Metal, Vulkan & DX12. By @freqmod in [4022](https://github.com/gfx-rs/wgpu/pull/4022) +- Add stub support for device destroy and device validity. By @bradwerth in [4163](https://github.com/gfx-rs/wgpu/pull/4163) #### Vulkan diff --git a/tests/tests/device.rs b/tests/tests/device.rs index 7964f2afdb..991170e739 100644 --- a/tests/tests/device.rs +++ b/tests/tests/device.rs @@ -1,6 +1,6 @@ use wasm_bindgen_test::*; -use wgpu_test::{initialize_test, FailureCase, TestParameters}; +use wgpu_test::{fail, initialize_test, FailureCase, TestParameters}; #[test] #[wasm_bindgen_test] @@ -91,3 +91,355 @@ async fn request_device_error_message() { } assert!(device_error.contains(expected), "{device_error}"); } + +#[test] +fn device_destroy_then_more() { + // This is a test of device behavior after device.destroy. Specifically, all operations + // should trigger errors since the device is lost. + // + // On DX12 this test fails with a validation error in the very artifical actions taken + // after lose the device. The error is "ID3D12CommandAllocator::Reset: The command + // allocator cannot be reset because a command list is currently being recorded with the + // allocator." That may indicate that DX12 doesn't like opened command buffers staying + // open even after they return an error. For now, this test is skipped on DX12. + // + // The DX12 issue may be related to https://github.com/gfx-rs/wgpu/issues/3193. + initialize_test( + TestParameters::default() + .features(wgpu::Features::CLEAR_TEXTURE) + .skip(FailureCase::backend(wgpu::Backends::DX12)), + |ctx| { + // Create some resources on the device that we will attempt to use *after* losing + // the device. + + // Create some 512 x 512 2D textures. + let texture_extent = wgpu::Extent3d { + width: 512, + height: 512, + depth_or_array_layers: 1, + }; + let texture_for_view = ctx.device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: texture_extent, + mip_level_count: 2, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rg8Uint, + usage: wgpu::TextureUsages::RENDER_ATTACHMENT, + view_formats: &[], + }); + let target_view = texture_for_view.create_view(&wgpu::TextureViewDescriptor::default()); + + let texture_for_read = ctx.device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: texture_extent, + mip_level_count: 2, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rg8Uint, + usage: wgpu::TextureUsages::COPY_SRC, + view_formats: &[], + }); + + let texture_for_write = ctx.device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: texture_extent, + mip_level_count: 2, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rg8Uint, + usage: wgpu::TextureUsages::COPY_DST, + view_formats: &[], + }); + + // Create some buffers. + let buffer_source = ctx.device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: 256, + usage: wgpu::BufferUsages::MAP_WRITE | wgpu::BufferUsages::COPY_SRC, + mapped_at_creation: false, + }); + let buffer_dest = ctx.device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: 256, + usage: wgpu::BufferUsages::MAP_READ | wgpu::BufferUsages::COPY_DST, + mapped_at_creation: false, + }); + + // Create a bind group layout. + let bind_group_layout = + ctx.device + .create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: &[], + }); + + // Create a shader module. + let shader_module = ctx + .device + .create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed("")), + }); + + // Create some command encoders. + let mut encoder_for_clear = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + let mut encoder_for_compute_pass = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + let mut encoder_for_render_pass = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + let mut encoder_for_buffer_buffer_copy = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + let mut encoder_for_buffer_texture_copy = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + let mut encoder_for_texture_buffer_copy = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + let mut encoder_for_texture_texture_copy = ctx + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + + // Destroy the device. This will cause all other requests to return some variation of + // a device invalid error. + ctx.device.destroy(); + + // TODO: verify the following operations will return an invalid device error: + // * Run a compute pass + // * Run a render pass + // * Finish a render bundle encoder + // * Create a texture from HAL + // * Create a buffer from HAL + // * Create a sampler + // * Validate a surface configuration + // * Start capture + // * Stop capture + // * Buffer map + + // TODO: figure out how to structure a test around these operations which panic when + // the device is invalid: + // * device.features() + // * device.limits() + // * device.downlevel_properties() + // * device.create_query_set() + + // TODO: change these fail calls to check for the specific errors which indicate that + // the device is not valid. + + // Creating a commmand encoder should fail. + fail(&ctx.device, || { + ctx.device + .create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + }); + + // Creating a buffer should fail. + fail(&ctx.device, || { + ctx.device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: 256, + usage: wgpu::BufferUsages::MAP_WRITE | wgpu::BufferUsages::COPY_SRC, + mapped_at_creation: false, + }); + }); + + // Creating a texture should fail. + fail(&ctx.device, || { + ctx.device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: wgpu::Extent3d { + width: 512, + height: 512, + depth_or_array_layers: 1, + }, + mip_level_count: 2, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rg8Uint, + usage: wgpu::TextureUsages::COPY_SRC, + view_formats: &[], + }); + }); + + // Texture clear should fail. + fail(&ctx.device, || { + encoder_for_clear.clear_texture( + &texture_for_write, + &wgpu::ImageSubresourceRange { + aspect: wgpu::TextureAspect::All, + base_mip_level: 0, + mip_level_count: None, + base_array_layer: 0, + array_layer_count: None, + }, + ); + }); + + // Creating a compute pass should fail. + fail(&ctx.device, || { + encoder_for_compute_pass.begin_compute_pass(&wgpu::ComputePassDescriptor { + label: None, + timestamp_writes: None, + }); + }); + + // Creating a render pass should fail. + fail(&ctx.device, || { + encoder_for_render_pass.begin_render_pass(&wgpu::RenderPassDescriptor { + label: None, + color_attachments: &[Some(wgpu::RenderPassColorAttachment { + ops: wgpu::Operations::default(), + resolve_target: None, + view: &target_view, + })], + depth_stencil_attachment: None, + timestamp_writes: None, + occlusion_query_set: None, + }); + }); + + // Copying a buffer to a buffer should fail. + fail(&ctx.device, || { + encoder_for_buffer_buffer_copy.copy_buffer_to_buffer( + &buffer_source, + 0, + &buffer_dest, + 0, + 256, + ); + }); + + // Copying a buffer to a texture should fail. + fail(&ctx.device, || { + encoder_for_buffer_texture_copy.copy_buffer_to_texture( + wgpu::ImageCopyBuffer { + buffer: &buffer_source, + layout: wgpu::ImageDataLayout { + offset: 0, + bytes_per_row: Some(4), + rows_per_image: None, + }, + }, + texture_for_write.as_image_copy(), + texture_extent, + ); + }); + + // Copying a texture to a buffer should fail. + fail(&ctx.device, || { + encoder_for_texture_buffer_copy.copy_texture_to_buffer( + texture_for_read.as_image_copy(), + wgpu::ImageCopyBuffer { + buffer: &buffer_source, + layout: wgpu::ImageDataLayout { + offset: 0, + bytes_per_row: Some(4), + rows_per_image: None, + }, + }, + texture_extent, + ); + }); + + // Copying a texture to a texture should fail. + fail(&ctx.device, || { + encoder_for_texture_texture_copy.copy_texture_to_texture( + texture_for_read.as_image_copy(), + texture_for_write.as_image_copy(), + texture_extent, + ); + }); + + // Creating a bind group layout should fail. + fail(&ctx.device, || { + ctx.device + .create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: &[], + }); + }); + + // Creating a bind group should fail. + fail(&ctx.device, || { + ctx.device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, + layout: &bind_group_layout, + entries: &[wgpu::BindGroupEntry { + binding: 0, + resource: wgpu::BindingResource::Buffer( + buffer_source.as_entire_buffer_binding(), + ), + }], + }); + }); + + // Creating a pipeline layout should fail. + fail(&ctx.device, || { + ctx.device + .create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { + label: None, + bind_group_layouts: &[], + push_constant_ranges: &[], + }); + }); + + // Creating a shader module should fail. + fail(&ctx.device, || { + ctx.device + .create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed("")), + }); + }); + + // Creating a shader module spirv should fail. + fail(&ctx.device, || unsafe { + ctx.device + .create_shader_module_spirv(&wgpu::ShaderModuleDescriptorSpirV { + label: None, + source: std::borrow::Cow::Borrowed(&[]), + }); + }); + + // Creating a render pipeline should fail. + fail(&ctx.device, || { + ctx.device + .create_render_pipeline(&wgpu::RenderPipelineDescriptor { + label: None, + layout: None, + vertex: wgpu::VertexState { + module: &shader_module, + entry_point: "", + buffers: &[], + }, + primitive: wgpu::PrimitiveState::default(), + depth_stencil: None, + multisample: wgpu::MultisampleState::default(), + fragment: None, + multiview: None, + }); + }); + + // Creating a compute pipeline should fail. + fail(&ctx.device, || { + ctx.device + .create_compute_pipeline(&wgpu::ComputePipelineDescriptor { + label: None, + layout: None, + module: &shader_module, + entry_point: "", + }); + }); + }, + ) +} diff --git a/wgpu-core/src/command/clear.rs b/wgpu-core/src/command/clear.rs index ceceb2ba58..c39d5fbcd9 100644 --- a/wgpu-core/src/command/clear.rs +++ b/wgpu-core/src/command/clear.rs @@ -219,6 +219,9 @@ impl Global { } let device = &device_guard[cmd_buf.device_id.value]; + if !device.is_valid() { + return Err(ClearError::InvalidDevice(cmd_buf.device_id.value.0)); + } clear_texture( &*texture_guard, diff --git a/wgpu-core/src/command/compute.rs b/wgpu-core/src/command/compute.rs index c9b20c5a0e..fbb53bdf85 100644 --- a/wgpu-core/src/command/compute.rs +++ b/wgpu-core/src/command/compute.rs @@ -16,6 +16,7 @@ use crate::{ hal_api::HalApi, hub::Token, id, + id::DeviceId, identity::GlobalIdentityHandlerFactory, init_tracker::MemoryInitKind, pipeline, @@ -193,6 +194,8 @@ pub enum ComputePassErrorInner { Encoder(#[from] CommandEncoderError), #[error("Bind group {0:?} is invalid")] InvalidBindGroup(id::BindGroupId), + #[error("Device {0:?} is invalid")] + InvalidDevice(DeviceId), #[error("Bind group index {index} is greater than the device's requested `max_bind_group` limit {max}")] BindGroupIndexOutOfRange { index: u32, max: u32 }, #[error("Compute pipeline {0:?} is invalid")] @@ -390,6 +393,12 @@ impl Global { let raw = cmd_buf.encoder.open(); let device = &device_guard[cmd_buf.device_id.value]; + if !device.is_valid() { + return Err(ComputePassErrorInner::InvalidDevice( + cmd_buf.device_id.value.0, + )) + .map_pass_err(init_scope); + } #[cfg(feature = "trace")] if let Some(ref mut list) = cmd_buf.commands { diff --git a/wgpu-core/src/command/render.rs b/wgpu-core/src/command/render.rs index f9202ee3f5..06a9cee1d2 100644 --- a/wgpu-core/src/command/render.rs +++ b/wgpu-core/src/command/render.rs @@ -18,6 +18,7 @@ use crate::{ hal_api::HalApi, hub::Token, id, + id::DeviceId, identity::GlobalIdentityHandlerFactory, init_tracker::{MemoryInitKind, TextureInitRange, TextureInitTrackerAction}, pipeline::{self, PipelineFlags}, @@ -523,6 +524,8 @@ pub enum RenderPassErrorInner { ColorAttachment(#[from] ColorAttachmentError), #[error(transparent)] Encoder(#[from] CommandEncoderError), + #[error("Device {0:?} is invalid")] + InvalidDevice(DeviceId), #[error("Attachment texture view {0:?} is invalid")] InvalidAttachment(id::TextureViewId), #[error("The format of the depth-stencil attachment ({0:?}) is not a depth-stencil format")] @@ -1346,6 +1349,12 @@ impl Global { } let device = &device_guard[cmd_buf.device_id.value]; + if !device.is_valid() { + return Err(RenderPassErrorInner::InvalidDevice( + cmd_buf.device_id.value.0, + )) + .map_pass_err(init_scope); + } cmd_buf.encoder.open_pass(base.label); let (bundle_guard, mut token) = hub.render_bundles.read(&mut token); diff --git a/wgpu-core/src/command/transfer.rs b/wgpu-core/src/command/transfer.rs index 58f88a70e1..10eb80f426 100644 --- a/wgpu-core/src/command/transfer.rs +++ b/wgpu-core/src/command/transfer.rs @@ -8,7 +8,7 @@ use crate::{ global::Global, hal_api::HalApi, hub::Token, - id::{BufferId, CommandEncoderId, TextureId, Valid}, + id::{BufferId, CommandEncoderId, DeviceId, TextureId, Valid}, identity::GlobalIdentityHandlerFactory, init_tracker::{ has_copy_partial_init_tracker_coverage, MemoryInitKind, TextureInitRange, @@ -40,6 +40,8 @@ pub enum CopySide { #[derive(Clone, Debug, Error)] #[non_exhaustive] pub enum TransferError { + #[error("Device {0:?} is invalid")] + InvalidDevice(DeviceId), #[error("Buffer {0:?} is invalid or destroyed")] InvalidBuffer(BufferId), #[error("Texture {0:?} is invalid or destroyed")] @@ -569,6 +571,9 @@ impl Global { let (buffer_guard, _) = hub.buffers.read(&mut token); let device = &device_guard[cmd_buf.device_id.value]; + if !device.is_valid() { + return Err(TransferError::InvalidDevice(cmd_buf.device_id.value.0).into()); + } #[cfg(feature = "trace")] if let Some(ref mut list) = cmd_buf.commands { @@ -714,6 +719,9 @@ impl Global { let (texture_guard, _) = hub.textures.read(&mut token); let device = &device_guard[cmd_buf.device_id.value]; + if !device.is_valid() { + return Err(TransferError::InvalidDevice(cmd_buf.device_id.value.0).into()); + } #[cfg(feature = "trace")] if let Some(ref mut list) = cmd_buf.commands { @@ -858,6 +866,9 @@ impl Global { let (texture_guard, _) = hub.textures.read(&mut token); let device = &device_guard[cmd_buf.device_id.value]; + if !device.is_valid() { + return Err(TransferError::InvalidDevice(cmd_buf.device_id.value.0).into()); + } #[cfg(feature = "trace")] if let Some(ref mut list) = cmd_buf.commands { @@ -1020,6 +1031,9 @@ impl Global { let (texture_guard, _) = hub.textures.read(&mut token); let device = &device_guard[cmd_buf.device_id.value]; + if !device.is_valid() { + return Err(TransferError::InvalidDevice(cmd_buf.device_id.value.0).into()); + } #[cfg(feature = "trace")] if let Some(ref mut list) = cmd_buf.commands { diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index 632c83e37f..eee1f6e054 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -102,6 +102,9 @@ impl Global { let mut token = Token::root(); let (device_guard, _) = hub.devices.read(&mut token); let device = device_guard.get(device_id).map_err(|_| InvalidDevice)?; + if !device.valid { + return Err(InvalidDevice); + } Ok(device.features) } @@ -114,6 +117,9 @@ impl Global { let mut token = Token::root(); let (device_guard, _) = hub.devices.read(&mut token); let device = device_guard.get(device_id).map_err(|_| InvalidDevice)?; + if !device.valid { + return Err(InvalidDevice); + } Ok(device.limits.clone()) } @@ -126,6 +132,9 @@ impl Global { let mut token = Token::root(); let (device_guard, _) = hub.devices.read(&mut token); let device = device_guard.get(device_id).map_err(|_| InvalidDevice)?; + if !device.valid { + return Err(InvalidDevice); + } Ok(device.downlevel.clone()) } @@ -148,6 +157,9 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } if desc.usage.is_empty() { // Per spec, `usage` must not be zero. @@ -586,6 +598,9 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace @@ -641,6 +656,9 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } // NB: Any change done through the raw texture handle will not be // recorded in the replay @@ -717,6 +735,9 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } // NB: Any change done through the raw buffer handle will not be // recorded in the replay @@ -978,6 +999,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace @@ -1056,6 +1081,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace @@ -1170,6 +1199,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace @@ -1249,6 +1282,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace @@ -1351,6 +1388,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { let mut trace = trace.lock(); @@ -1416,6 +1457,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { let mut trace = trace.lock(); @@ -1486,6 +1531,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid, }; + if !device.valid { + break DeviceError::Invalid; + } + let dev_stored = Stored { value: id::Valid(device_id), ref_count: device.life_guard.add_ref(), @@ -1579,6 +1628,10 @@ impl Global { Ok(device) => device, Err(_) => break command::RenderBundleError::INVALID_DEVICE, }; + if !device.valid { + break command::RenderBundleError::INVALID_DEVICE; + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace.lock().add(trace::Action::CreateRenderBundle { @@ -1661,6 +1714,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace.lock().add(trace::Action::CreateQuerySet { @@ -1750,6 +1807,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + let adapter = &adapter_guard[device.adapter_id.value]; #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { @@ -1893,6 +1954,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace.lock().add(trace::Action::CreateComputePipeline { @@ -2141,6 +2206,10 @@ impl Global { Ok(device) => device, Err(_) => break DeviceError::Invalid.into(), }; + if !device.valid { + break DeviceError::Invalid.into(); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace @@ -2405,6 +2474,9 @@ impl Global { let mut token = Token::root(); let (device_guard, _) = hub.devices.read(&mut token); if let Ok(device) = device_guard.get(id) { + if !device.valid { + return; + } unsafe { device.raw.start_capture() }; } } @@ -2414,6 +2486,9 @@ impl Global { let mut token = Token::root(); let (device_guard, _) = hub.devices.read(&mut token); if let Ok(device) = device_guard.get(id) { + if !device.valid { + return; + } unsafe { device.raw.stop_capture() }; } } @@ -2435,6 +2510,46 @@ impl Global { } } + pub fn device_destroy(&self, device_id: DeviceId) { + let hub = A::hub(self); + let mut token = Token::root(); + + let (mut device_guard, _) = hub.devices.write(&mut token); + if let Ok(device) = device_guard.get_mut(device_id) { + // Follow the steps at + // https://gpuweb.github.io/gpuweb/#dom-gpudevice-destroy. + + // It's legal to call destroy multiple times, but if the device + // is already invalid, there's nothing more to do. There's also + // no need to return an error. + if !device.valid { + return; + } + + // The last part of destroy is to lose the device. The spec says + // delay that until all "currently-enqueued operations on any + // queue on this device are completed." + + // TODO: implement this delay. + + // Finish by losing the device. + + // TODO: associate this "destroyed" reason more tightly with + // the GPUDeviceLostReason defined in webgpu.idl. + device.lose(Some("destroyed")); + } + } + + pub fn device_lose(&self, device_id: DeviceId, reason: Option<&str>) { + let hub = A::hub(self); + let mut token = Token::root(); + + let (mut device_guard, _) = hub.devices.write(&mut token); + if let Ok(device) = device_guard.get_mut(device_id) { + device.lose(reason); + } + } + /// Exit the unreferenced, inactive device `device_id`. fn exit_device(&self, device_id: DeviceId) { let hub = A::hub(self); @@ -2519,6 +2634,11 @@ impl Global { } }; + let device = &device_guard[buffer.device_id.value]; + if !device.valid { + return Err((op, BufferAccessError::Invalid)); + } + if let Err(e) = check_buffer_usage(buffer.usage, pub_usage) { return Err((op, e.into())); } @@ -2559,8 +2679,6 @@ impl Global { }; log::debug!("Buffer {:?} map state -> Waiting", buffer_id); - let device = &device_guard[buffer.device_id.value]; - let ret = (buffer.device_id.value, buffer.life_guard.add_ref()); let mut trackers = device.trackers.lock(); @@ -2573,7 +2691,6 @@ impl Global { }; let device = &device_guard[device_id]; - device .lock_life(&mut token) .map(id::Valid(buffer_id), ref_count); diff --git a/wgpu-core/src/device/mod.rs b/wgpu-core/src/device/mod.rs index 9a77bf9536..3e2a245127 100644 --- a/wgpu-core/src/device/mod.rs +++ b/wgpu-core/src/device/mod.rs @@ -292,11 +292,11 @@ pub struct InvalidDevice; #[derive(Clone, Debug, Error)] pub enum DeviceError { - #[error("Parent device is invalid")] + #[error("Parent device is invalid.")] Invalid, #[error("Parent device is lost")] Lost, - #[error("Not enough memory left")] + #[error("Not enough memory left.")] OutOfMemory, #[error("Creation of a resource failed for a reason other than running out of memory.")] ResourceCreationFailed, @@ -305,7 +305,7 @@ pub enum DeviceError { impl From for DeviceError { fn from(error: hal::DeviceError) -> Self { match error { - hal::DeviceError::Lost => DeviceError::Lost, + hal::DeviceError::Lost => DeviceError::Invalid, hal::DeviceError::OutOfMemory => DeviceError::OutOfMemory, hal::DeviceError::ResourceCreationFailed => DeviceError::ResourceCreationFailed, } diff --git a/wgpu-core/src/device/resource.rs b/wgpu-core/src/device/resource.rs index 8acc34acf4..8f37f68be9 100644 --- a/wgpu-core/src/device/resource.rs +++ b/wgpu-core/src/device/resource.rs @@ -72,6 +72,19 @@ pub struct Device { pub(crate) active_submission_index: SubmissionIndex, pub(super) fence: A::Fence, + /// Is this device valid? Valid is closely associated with "lose the device", + /// which can be triggered by various methods, including at the end of device + /// destroy, and by any GPU errors that cause us to no longer trust the state + /// of the device. Ideally we would like to fold valid into the storage of + /// the device itself (for example as an Error enum), but unfortunately we + /// need to continue to be able to retrieve the device in poll_devices to + /// determine if it can be dropped. If our internal accesses of devices were + /// done through ref-counted references and external accesses checked for + /// Error enums, we wouldn't need this. For now, we need it. All the call + /// sites where we check it are areas that should be revisited if we start + /// using ref-counted references for internal access. + pub(crate) valid: bool, + /// All live resources allocated with this [`Device`]. /// /// Has to be locked temporarily only (locked last) @@ -189,6 +202,7 @@ impl Device { command_allocator: Mutex::new(com_alloc), active_submission_index: 0, fence, + valid: true, trackers: Mutex::new(Tracker::new()), life_tracker: Mutex::new(life::LifetimeTracker::new()), temp_suspected: life::SuspectedResources::default(), @@ -214,6 +228,10 @@ impl Device { }) } + pub fn is_valid(&self) -> bool { + self.valid + } + pub(super) fn lock_life<'this, 'token: 'this>( &'this self, //TODO: fix this - the token has to be borrowed for the lock @@ -3155,6 +3173,27 @@ impl Device { desc: desc.map_label(|_| ()), }) } + + pub(crate) fn lose(&mut self, _reason: Option<&str>) { + // Follow the steps at https://gpuweb.github.io/gpuweb/#lose-the-device. + + // Mark the device explicitly as invalid. This is checked in various + // places to prevent new work from being submitted. + self.valid = false; + + // The following steps remain in "lose the device": + // 1) Resolve the GPUDevice device.lost promise. + + // TODO: triggger this passively or actively, and supply the reason. + + // 2) Complete any outstanding mapAsync() steps. + // 3) Complete any outstanding onSubmittedWorkDone() steps. + + // These parts are passively accomplished by setting valid to false, + // since that will prevent any new work from being added to the queues. + // Future calls to poll_devices will continue to check the work queues + // until they are cleared, and then drop the device. + } } impl Device { diff --git a/wgpu-core/src/present.rs b/wgpu-core/src/present.rs index 7366934d27..9a6d0e32a6 100644 --- a/wgpu-core/src/present.rs +++ b/wgpu-core/src/present.rs @@ -138,6 +138,9 @@ impl Global { let (device, config) = match surface.presentation { Some(ref present) => { let device = &device_guard[present.device_id.value]; + if !device.is_valid() { + return Err(DeviceError::Invalid.into()); + } (device, present.config.clone()) } None => return Err(SurfaceError::NotConfigured), @@ -290,6 +293,9 @@ impl Global { }; let device = &mut device_guard[present.device_id.value]; + if !device.is_valid() { + return Err(DeviceError::Invalid.into()); + } #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { @@ -376,6 +382,9 @@ impl Global { }; let device = &mut device_guard[present.device_id.value]; + if !device.is_valid() { + return Err(DeviceError::Invalid.into()); + } #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { diff --git a/wgpu/src/backend/direct.rs b/wgpu/src/backend/direct.rs index 3d3028d334..e8776f881a 100644 --- a/wgpu/src/backend/direct.rs +++ b/wgpu/src/backend/direct.rs @@ -1439,6 +1439,15 @@ impl crate::Context for Context { wgc::gfx_select!(device => global.device_drop(*device)); } + fn device_destroy(&self, device: &Self::DeviceId, _device_data: &Self::DeviceData) { + let global = &self.0; + wgc::gfx_select!(device => global.device_destroy(*device)); + } + fn device_lose(&self, device: &Self::DeviceId, _device_data: &Self::DeviceData) { + // TODO: accept a reason, and pass it to device_lose. + let global = &self.0; + wgc::gfx_select!(device => global.device_lose(*device, None)); + } fn device_poll( &self, device: &Self::DeviceId, diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index b649d41ebb..3868a01fcd 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -1914,6 +1914,16 @@ impl crate::context::Context for Context { // Device is dropped automatically } + fn device_destroy(&self, _buffer: &Self::DeviceId, device_data: &Self::DeviceData) { + device_data.0.destroy(); + } + + fn device_lose(&self, _device: &Self::DeviceId, _device_data: &Self::DeviceData) { + // TODO: figure out the GPUDevice implementation of this, including resolving + // the device.lost promise, which will require a different invocation pattern + // with a callback. + } + fn device_poll( &self, _device: &Self::DeviceId, diff --git a/wgpu/src/context.rs b/wgpu/src/context.rs index 9d0bdd9100..bfcd4ae2ec 100644 --- a/wgpu/src/context.rs +++ b/wgpu/src/context.rs @@ -269,6 +269,8 @@ pub trait Context: Debug + WasmNotSend + WasmNotSync + Sized { desc: &RenderBundleEncoderDescriptor, ) -> (Self::RenderBundleEncoderId, Self::RenderBundleEncoderData); fn device_drop(&self, device: &Self::DeviceId, device_data: &Self::DeviceData); + fn device_destroy(&self, device: &Self::DeviceId, device_data: &Self::DeviceData); + fn device_lose(&self, device: &Self::DeviceId, device_data: &Self::DeviceData); fn device_poll( &self, device: &Self::DeviceId, @@ -1363,6 +1365,8 @@ pub(crate) trait DynContext: Debug + WasmNotSend + WasmNotSync { desc: &RenderBundleEncoderDescriptor, ) -> (ObjectId, Box); fn device_drop(&self, device: &ObjectId, device_data: &crate::Data); + fn device_destroy(&self, device: &ObjectId, device_data: &crate::Data); + fn device_lose(&self, device: &ObjectId, device_data: &crate::Data); fn device_poll(&self, device: &ObjectId, device_data: &crate::Data, maintain: Maintain) -> bool; fn device_on_uncaptured_error( @@ -2424,6 +2428,18 @@ where Context::device_drop(self, &device, device_data) } + fn device_destroy(&self, device: &ObjectId, device_data: &crate::Data) { + let device = ::from(*device); + let device_data = downcast_ref(device_data); + Context::device_destroy(self, &device, device_data) + } + + fn device_lose(&self, device: &ObjectId, device_data: &crate::Data) { + let device = ::from(*device); + let device_data = downcast_ref(device_data); + Context::device_lose(self, &device, device_data) + } + fn device_poll( &self, device: &ObjectId, diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs index f62e14bcae..f5323a6e34 100644 --- a/wgpu/src/lib.rs +++ b/wgpu/src/lib.rs @@ -2767,6 +2767,11 @@ impl Device { ) } } + + /// Destroy this device. + pub fn destroy(&self) { + DynContext::device_destroy(&*self.context, &self.id, self.data.as_ref()) + } } impl Drop for Device { From caad255737fc68c53ac1108b69acc2de27b3851d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Sep 2023 02:40:41 -0400 Subject: [PATCH 078/135] Bump winit from 0.28.6 to 0.28.7 (#4181) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 42 +++++++++++++++++++++--------------------- Cargo.toml | 2 +- wgpu-hal/Cargo.toml | 2 +- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 48d4cefb05..f3b3489a5a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2050,7 +2050,7 @@ dependencies = [ "serde", "wgpu-core", "wgpu-types", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3143,7 +3143,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3158,7 +3158,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3176,7 +3176,7 @@ dependencies = [ "wasm-bindgen-test", "wgpu", "wgpu-example", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3187,7 +3187,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3223,7 +3223,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3244,7 +3244,7 @@ dependencies = [ "wgpu", "wgpu-hal", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3287,7 +3287,7 @@ dependencies = [ "web-sys", "wgpu-types", "winapi", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3305,7 +3305,7 @@ dependencies = [ "wasm-bindgen-test", "wgpu", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3335,7 +3335,7 @@ dependencies = [ "wasm-bindgen-futures", "web-sys", "wgpu", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3347,7 +3347,7 @@ dependencies = [ "env_logger", "pollster", "wgpu", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3374,7 +3374,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3388,7 +3388,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3401,7 +3401,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3417,7 +3417,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3429,7 +3429,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3467,7 +3467,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3485,7 +3485,7 @@ dependencies = [ "wasm-bindgen-test", "wgpu", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3511,7 +3511,7 @@ dependencies = [ "wgpu", "wgpu-example", "wgpu-test", - "winit 0.28.6", + "winit 0.28.7", ] [[package]] @@ -3781,9 +3781,9 @@ dependencies = [ [[package]] name = "winit" -version = "0.28.6" +version = "0.28.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "866db3f712fffba75d31bf0cdecf357c8aeafd158c5b7ab51dba2a2b2d47f196" +checksum = "9596d90b45384f5281384ab204224876e8e8bf7d58366d9b795ad99aa9894b94" dependencies = [ "android-activity", "bitflags 1.3.2", diff --git a/Cargo.toml b/Cargo.toml index 63e7ff9a8f..8794c68e11 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -98,7 +98,7 @@ wgpu-core = { version = "0.17.0", path = "./wgpu-core" } wgpu-example = { version = "0.17.0", path = "./examples/common" } wgpu-test = { version = "0.17", path = "./tests"} wgpu-types = { version = "0.17.0", path = "./wgpu-types" } -winit = { version = "0.28.6", features = [ "android-native-activity" ] } +winit = { version = "0.28.7", features = [ "android-native-activity" ] } # Vulkan dependencies ash = "0.37.3" diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 3cc69975cc..18e63b3d4e 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -134,7 +134,7 @@ features = ["wgsl-in"] [dev-dependencies] cfg-if = "1" env_logger = "0.10" -winit = { version = "0.28.6", features = [ "android-native-activity" ] } # for "halmark" example +winit = { version = "0.28.7", features = [ "android-native-activity" ] } # for "halmark" example [target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] glutin = "0.29.1" # for "gles" example From 9a76c483da4891fb7046c579e36d7c54bdb0b251 Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Thu, 28 Sep 2023 18:29:44 +0200 Subject: [PATCH 079/135] Add trace level logging to most API entry points (#4183) * Add trace level logging to most API entry points * Add a changelog entry --- CHANGELOG.md | 1 + wgpu-core/src/command/clear.rs | 4 +- wgpu-core/src/command/mod.rs | 3 + wgpu-core/src/command/render.rs | 36 +++++++++++- wgpu-core/src/device/global.rs | 98 ++++++++++++++++++++++++--------- wgpu-core/src/device/queue.rs | 3 + wgpu-core/src/instance.rs | 8 +++ 7 files changed, 125 insertions(+), 28 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f59fc35dc8..7537cb8ae6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -103,6 +103,7 @@ By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) - Make `WGPU_POWER_PREF=none` a valid value. By @fornwall in [4076](https://github.com/gfx-rs/wgpu/pull/4076) - Support dual source blending in OpenGL ES, Metal, Vulkan & DX12. By @freqmod in [4022](https://github.com/gfx-rs/wgpu/pull/4022) - Add stub support for device destroy and device validity. By @bradwerth in [4163](https://github.com/gfx-rs/wgpu/pull/4163) +- Add trace-level logging for most entry points in wgpu-core By @nical in [4183](https://github.com/gfx-rs/wgpu/pull/4183) #### Vulkan diff --git a/wgpu-core/src/command/clear.rs b/wgpu-core/src/command/clear.rs index c39d5fbcd9..1481dbe1e6 100644 --- a/wgpu-core/src/command/clear.rs +++ b/wgpu-core/src/command/clear.rs @@ -79,7 +79,8 @@ impl Global { offset: BufferAddress, size: Option, ) -> Result<(), ClearError> { - profiling::scope!("CommandEncoder::fill_buffer"); + profiling::scope!("CommandEncoder::clear_buffer"); + log::trace!("CommandEncoder::clear_buffer {dst:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -158,6 +159,7 @@ impl Global { subresource_range: &ImageSubresourceRange, ) -> Result<(), ClearError> { profiling::scope!("CommandEncoder::clear_texture"); + log::trace!("CommandEncoder::clear_texture {dst:?}"); let hub = A::hub(self); let mut token = Token::root(); diff --git a/wgpu-core/src/command/mod.rs b/wgpu-core/src/command/mod.rs index d97d4b41e3..8bb975a112 100644 --- a/wgpu-core/src/command/mod.rs +++ b/wgpu-core/src/command/mod.rs @@ -391,6 +391,7 @@ impl Global { label: &str, ) -> Result<(), CommandEncoderError> { profiling::scope!("CommandEncoder::push_debug_group"); + log::trace!("CommandEncoder::push_debug_group {label}"); let hub = A::hub(self); let mut token = Token::root(); @@ -416,6 +417,7 @@ impl Global { label: &str, ) -> Result<(), CommandEncoderError> { profiling::scope!("CommandEncoder::insert_debug_marker"); + log::trace!("CommandEncoder::insert_debug_marker {label}"); let hub = A::hub(self); let mut token = Token::root(); @@ -440,6 +442,7 @@ impl Global { encoder_id: id::CommandEncoderId, ) -> Result<(), CommandEncoderError> { profiling::scope!("CommandEncoder::pop_debug_marker"); + log::trace!("CommandEncoder::pop_debug_group"); let hub = A::hub(self); let mut token = Token::root(); diff --git a/wgpu-core/src/command/render.rs b/wgpu-core/src/command/render.rs index 06a9cee1d2..9e2c533893 100644 --- a/wgpu-core/src/command/render.rs +++ b/wgpu-core/src/command/render.rs @@ -2393,6 +2393,7 @@ pub mod render_ffi { pass: &mut RenderPass, pipeline_id: id::RenderPipelineId, ) { + log::trace!("RenderPass::set_pipeline {pipeline_id:?}"); if pass.current_pipeline.set_and_check_redundant(pipeline_id) { return; } @@ -2410,6 +2411,7 @@ pub mod render_ffi { offset: BufferAddress, size: Option, ) { + log::trace!("RenderPass::set_vertex_buffer {buffer_id:?}"); pass.base.commands.push(RenderCommand::SetVertexBuffer { slot, buffer_id, @@ -2426,11 +2428,13 @@ pub mod render_ffi { offset: BufferAddress, size: Option, ) { + log::trace!("RenderPass::set_index_buffer {buffer:?}"); pass.set_index_buffer(buffer, index_format, offset, size); } #[no_mangle] pub extern "C" fn wgpu_render_pass_set_blend_constant(pass: &mut RenderPass, color: &Color) { + log::trace!("RenderPass::set_blend_constant"); pass.base .commands .push(RenderCommand::SetBlendConstant(*color)); @@ -2438,6 +2442,7 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_set_stencil_reference(pass: &mut RenderPass, value: u32) { + log::trace!("RenderPass::set_stencil_reference {value}"); pass.base .commands .push(RenderCommand::SetStencilReference(value)); @@ -2453,6 +2458,7 @@ pub mod render_ffi { depth_min: f32, depth_max: f32, ) { + log::trace!("RenderPass::set_viewport {x} {y} {w} {h}"); pass.base.commands.push(RenderCommand::SetViewport { rect: Rect { x, y, w, h }, depth_min, @@ -2468,6 +2474,7 @@ pub mod render_ffi { w: u32, h: u32, ) { + log::trace!("RenderPass::set_scissor_rect {x} {y} {w} {h}"); pass.base .commands .push(RenderCommand::SetScissor(Rect { x, y, w, h })); @@ -2485,6 +2492,7 @@ pub mod render_ffi { size_bytes: u32, data: *const u8, ) { + log::trace!("RenderPass::set_push_constants"); assert_eq!( offset & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), 0, @@ -2522,6 +2530,10 @@ pub mod render_ffi { first_vertex: u32, first_instance: u32, ) { + log::trace!( + "RenderPass::draw {vertex_count} {instance_count} {first_vertex} {first_instance}" + ); + pass.base.commands.push(RenderCommand::Draw { vertex_count, instance_count, @@ -2539,6 +2551,7 @@ pub mod render_ffi { base_vertex: i32, first_instance: u32, ) { + log::trace!("RenderPass::draw_indexed {index_count} {instance_count} {first_index} {base_vertex} {first_instance}"); pass.base.commands.push(RenderCommand::DrawIndexed { index_count, instance_count, @@ -2554,6 +2567,7 @@ pub mod render_ffi { buffer_id: id::BufferId, offset: BufferAddress, ) { + log::trace!("RenderPass::draw_indirect {buffer_id:?} {offset}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2568,6 +2582,7 @@ pub mod render_ffi { buffer_id: id::BufferId, offset: BufferAddress, ) { + log::trace!("RenderPass::draw_indexed_indirect {buffer_id:?} {offset}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2583,6 +2598,7 @@ pub mod render_ffi { offset: BufferAddress, count: u32, ) { + log::trace!("RenderPass::multi_draw_indirect {buffer_id:?} {offset} {count}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2598,6 +2614,7 @@ pub mod render_ffi { offset: BufferAddress, count: u32, ) { + log::trace!("RenderPass::multi_draw_indexed_indirect {buffer_id:?} {offset} {count}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2615,6 +2632,7 @@ pub mod render_ffi { count_buffer_offset: BufferAddress, max_count: u32, ) { + log::trace!("RenderPass::multi_draw_indirect_count {buffer_id:?} {offset} {count_buffer_id:?} {count_buffer_offset} {max_count}"); pass.base .commands .push(RenderCommand::MultiDrawIndirectCount { @@ -2636,6 +2654,7 @@ pub mod render_ffi { count_buffer_offset: BufferAddress, max_count: u32, ) { + log::trace!("RenderPass::multi_draw_indexed_indirect_count {buffer_id:?} {offset} {count_buffer_id:?} {count_buffer_offset} {max_count}"); pass.base .commands .push(RenderCommand::MultiDrawIndirectCount { @@ -2658,7 +2677,10 @@ pub mod render_ffi { label: RawString, color: u32, ) { - let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); + let cstr = unsafe { ffi::CStr::from_ptr(label) }; + log::trace!("RenderPass::push_debug_group {cstr:?}"); + + let bytes = cstr.to_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(RenderCommand::PushDebugGroup { @@ -2669,6 +2691,7 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_pop_debug_group(pass: &mut RenderPass) { + log::trace!("RenderPass::pop_debug_group"); pass.base.commands.push(RenderCommand::PopDebugGroup); } @@ -2682,7 +2705,10 @@ pub mod render_ffi { label: RawString, color: u32, ) { - let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); + let cstr = unsafe { ffi::CStr::from_ptr(label) }; + log::trace!("RenderPass::insert_debug_marker {cstr:?}"); + + let bytes = cstr.to_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(RenderCommand::InsertDebugMarker { @@ -2697,6 +2723,7 @@ pub mod render_ffi { query_set_id: id::QuerySetId, query_index: u32, ) { + log::trace!("RenderPass::write_timestamps {query_set_id:?} {query_index}"); pass.base.commands.push(RenderCommand::WriteTimestamp { query_set_id, query_index, @@ -2708,6 +2735,7 @@ pub mod render_ffi { pass: &mut RenderPass, query_index: u32, ) { + log::trace!("RenderPass::begin_occlusion_query {query_index}"); pass.base .commands .push(RenderCommand::BeginOcclusionQuery { query_index }); @@ -2715,6 +2743,7 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_end_occlusion_query(pass: &mut RenderPass) { + log::trace!("RenderPass::end_occlusion_query"); pass.base.commands.push(RenderCommand::EndOcclusionQuery); } @@ -2724,6 +2753,7 @@ pub mod render_ffi { query_set_id: id::QuerySetId, query_index: u32, ) { + log::trace!("RenderPass::begin_pipeline_statistics_query {query_set_id:?} {query_index}"); pass.base .commands .push(RenderCommand::BeginPipelineStatisticsQuery { @@ -2734,6 +2764,7 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_end_pipeline_statistics_query(pass: &mut RenderPass) { + log::trace!("RenderPass::end_pipeline_statistics_query"); pass.base .commands .push(RenderCommand::EndPipelineStatisticsQuery); @@ -2749,6 +2780,7 @@ pub mod render_ffi { render_bundle_ids: *const id::RenderBundleId, render_bundle_ids_length: usize, ) { + log::trace!("RenderPass::execute_bundles"); for &bundle_id in unsafe { slice::from_raw_parts(render_bundle_ids, render_bundle_ids_length) } { diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index eee1f6e054..50ef913295 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -262,7 +262,7 @@ impl Global { }; let id = fid.assign(buffer, &mut token); - log::info!("Created buffer {:?} with {:?}", id, desc); + log::trace!("Device::create_buffer -> {:?}", id); device .trackers @@ -482,7 +482,7 @@ impl Global { //TODO: lock pending writes separately, keep the device read-only let (mut device_guard, mut token) = hub.devices.write(&mut token); - log::info!("Buffer {:?} is destroyed", buffer_id); + log::trace!("Buffer::destroy {buffer_id:?}"); let (mut buffer_guard, _) = hub.buffers.write(&mut token); let buffer = buffer_guard .get_mut(buffer_id) @@ -533,7 +533,7 @@ impl Global { pub fn buffer_drop(&self, buffer_id: id::BufferId, wait: bool) { profiling::scope!("Buffer::drop"); - log::debug!("buffer {:?} is dropped", buffer_id); + log::trace!("Buffer::drop {buffer_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -616,7 +616,7 @@ impl Global { let ref_count = texture.life_guard.add_ref(); let id = fid.assign(texture, &mut token); - log::info!("Created texture {:?} with {:?}", id, desc); + log::trace!("Device::create_texture -> {id:?}"); device.trackers.lock().textures.insert_single( id.0, @@ -643,7 +643,7 @@ impl Global { desc: &resource::TextureDescriptor, id_in: Input, ) -> (id::TextureId, Option) { - profiling::scope!("Device::create_texture"); + profiling::scope!("Device::create_texture_from_hal"); let hub = A::hub(self); let mut token = Token::root(); @@ -696,7 +696,7 @@ impl Global { let ref_count = texture.life_guard.add_ref(); let id = fid.assign(texture, &mut token); - log::info!("Created texture {:?} with {:?}", id, desc); + log::trace!("Device::create_texture -> {id:?}"); device.trackers.lock().textures.insert_single( id.0, @@ -756,7 +756,7 @@ impl Global { let ref_count = buffer.life_guard.add_ref(); let id = fid.assign(buffer, &mut token); - log::info!("Created buffer {:?} with {:?}", id, desc); + log::trace!("Device::create_buffer -> {id:?}"); device .trackers @@ -780,6 +780,7 @@ impl Global { texture_id: id::TextureId, ) -> Result<(), resource::DestroyError> { profiling::scope!("Texture::destroy"); + log::trace!("Texture::destroy {texture_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -787,7 +788,6 @@ impl Global { //TODO: lock pending writes separately, keep the device read-only let (mut device_guard, mut token) = hub.devices.write(&mut token); - log::info!("Buffer {:?} is destroyed", texture_id); let (mut texture_guard, _) = hub.textures.write(&mut token); let texture = texture_guard .get_mut(texture_id) @@ -837,7 +837,7 @@ impl Global { pub fn texture_drop(&self, texture_id: id::TextureId, wait: bool) { profiling::scope!("Texture::drop"); - log::debug!("texture {:?} is dropped", texture_id); + log::trace!("Texture::drop {texture_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -921,9 +921,14 @@ impl Global { let id = fid.assign(view, &mut token); device.trackers.lock().views.insert_single(id, ref_count); + + log::trace!("Texture::create_view {:?} -> {:?}", texture_id, id.0); + return (id.0, None); }; + log::error!("Texture::create_view {:?} error {:?}", texture_id, error); + let id = fid.assign_error(desc.label.borrow_or_default(), &mut token); (id, Some(error)) } @@ -938,7 +943,7 @@ impl Global { wait: bool, ) -> Result<(), resource::TextureViewDestroyError> { profiling::scope!("TextureView::drop"); - log::debug!("texture view {:?} is dropped", texture_view_id); + log::trace!("TextureView::drop {:?}", texture_view_id); let hub = A::hub(self); let mut token = Token::root(); @@ -1019,6 +1024,8 @@ impl Global { device.trackers.lock().samplers.insert_single(id, ref_count); + log::trace!("Device::create_sampler -> {:?}", id.0); + return (id.0, None); }; @@ -1032,7 +1039,7 @@ impl Global { pub fn sampler_drop(&self, sampler_id: id::SamplerId) { profiling::scope!("Sampler::drop"); - log::debug!("sampler {:?} is dropped", sampler_id); + log::trace!("Sampler::drop {sampler_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -1121,6 +1128,7 @@ impl Global { // the branch and instead rely on the indirection to use the // proper bind group layout id. if G::ids_are_generated_in_wgpu() { + log::trace!("Device::create_bind_group_layout (duplicate of {id:?})"); return (id, None); } @@ -1141,6 +1149,15 @@ impl Global { let id = fid.assign(layout, &mut token); + if let Some(dupe) = compatible_layout { + log::trace!( + "Device::create_bind_group_layout (duplicate of {dupe:?}) -> {:?}", + id.0 + ); + } else { + log::trace!("Device::create_bind_group_layout -> {:?}", id.0); + } + return (id.0, None); }; @@ -1154,7 +1171,7 @@ impl Global { pub fn bind_group_layout_drop(&self, bind_group_layout_id: id::BindGroupLayoutId) { profiling::scope!("BindGroupLayout::drop"); - log::debug!("bind group layout {:?} is dropped", bind_group_layout_id); + log::trace!("BindGroupLayout::drop {:?}", bind_group_layout_id); let hub = A::hub(self); let mut token = Token::root(); @@ -1219,6 +1236,9 @@ impl Global { }; let id = fid.assign(layout, &mut token); + + log::trace!("Device::create_pipeline_layout -> {:?}", id.0); + return (id.0, None); }; @@ -1232,7 +1252,7 @@ impl Global { pub fn pipeline_layout_drop(&self, pipeline_layout_id: id::PipelineLayoutId) { profiling::scope!("PipelineLayout::drop"); - log::debug!("pipeline layout {:?} is dropped", pipeline_layout_id); + log::trace!("PipelineLayout::drop {:?}", pipeline_layout_id); let hub = A::hub(self); let mut token = Token::root(); @@ -1318,7 +1338,8 @@ impl Global { let ref_count = bind_group.life_guard.add_ref(); let id = fid.assign(bind_group, &mut token); - log::debug!("Bind group {:?}", id,); + + log::trace!("Device::create_bind_group -> {:?}", id.0); device .trackers @@ -1338,7 +1359,7 @@ impl Global { pub fn bind_group_drop(&self, bind_group_id: id::BindGroupId) { profiling::scope!("BindGroup::drop"); - log::debug!("bind group {:?} is dropped", bind_group_id); + log::trace!("BindGroup::drop {:?}", bind_group_id); let hub = A::hub(self); let mut token = Token::root(); @@ -1422,6 +1443,9 @@ impl Global { Err(e) => break e, }; let id = fid.assign(shader, &mut token); + + log::trace!("Device::create_shader_module -> {:?}", id.0); + return (id.0, None); }; @@ -1493,7 +1517,7 @@ impl Global { pub fn shader_module_drop(&self, shader_module_id: id::ShaderModuleId) { profiling::scope!("ShaderModule::drop"); - log::debug!("shader module {:?} is dropped", shader_module_id); + log::trace!("ShaderModule::drop {:?}", shader_module_id); let hub = A::hub(self); let mut token = Token::root(); @@ -1559,6 +1583,9 @@ impl Global { ); let id = fid.assign(command_buffer, &mut token); + + log::trace!("Device::create_command_encoder -> {:?}", id.0); + return (id.0, None); }; @@ -1572,7 +1599,7 @@ impl Global { pub fn command_encoder_drop(&self, command_encoder_id: id::CommandEncoderId) { profiling::scope!("CommandEncoder::drop"); - log::debug!("command encoder {:?} is dropped", command_encoder_id); + log::trace!("CommandEncoder::drop {:?}", command_encoder_id); let hub = A::hub(self); let mut token = Token::root(); @@ -1590,7 +1617,7 @@ impl Global { pub fn command_buffer_drop(&self, command_buffer_id: id::CommandBufferId) { profiling::scope!("CommandBuffer::drop"); - log::debug!("command buffer {:?} is dropped", command_buffer_id); + log::trace!("CommandBuffer::drop {:?}", command_buffer_id); self.command_encoder_drop::(command_buffer_id) } @@ -1603,6 +1630,7 @@ impl Global { Option, ) { profiling::scope!("Device::create_render_bundle_encoder"); + log::trace!("Device::device_create_render_bundle_encoder"); let (encoder, error) = match command::RenderBundleEncoder::new(desc, device_id, None) { Ok(encoder) => (encoder, None), Err(e) => (command::RenderBundleEncoder::dummy(device_id), Some(e)), @@ -1656,6 +1684,9 @@ impl Global { let id = fid.assign(render_bundle, &mut token); device.trackers.lock().bundles.insert_single(id, ref_count); + + log::trace!("RenderBundleEncoder::finish -> {:?}", id.0); + return (id.0, None); }; @@ -1669,7 +1700,7 @@ impl Global { pub fn render_bundle_drop(&self, render_bundle_id: id::RenderBundleId) { profiling::scope!("RenderBundle::drop"); - log::debug!("render bundle {:?} is dropped", render_bundle_id); + log::trace!("RenderBundle::drop {:?}", render_bundle_id); let hub = A::hub(self); let mut token = Token::root(); @@ -1744,12 +1775,15 @@ impl Global { }; let id = fid.assign_error("", &mut token); + + log::trace!("Device::create_query_set -> {:?}", id); + (id, Some(error)) } pub fn query_set_drop(&self, query_set_id: id::QuerySetId) { profiling::scope!("QuerySet::drop"); - log::debug!("query set {:?} is dropped", query_set_id); + log::trace!("QuerySet::drop {query_set_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -1835,7 +1869,7 @@ impl Global { let ref_count = pipeline.life_guard.add_ref(); let id = fid.assign(pipeline, &mut token); - log::info!("Created render pipeline {:?} with {:?}", id, desc); + log::trace!("Device::create_render_pipeline -> {id:?}"); device .trackers @@ -1899,7 +1933,7 @@ impl Global { pub fn render_pipeline_drop(&self, render_pipeline_id: id::RenderPipelineId) { profiling::scope!("RenderPipeline::drop"); - log::debug!("render pipeline {:?} is dropped", render_pipeline_id); + log::trace!("RenderPipeline::drop {:?}", render_pipeline_id); let hub = A::hub(self); let mut token = Token::root(); let (device_guard, mut token) = hub.devices.read(&mut token); @@ -1980,7 +2014,7 @@ impl Global { let ref_count = pipeline.life_guard.add_ref(); let id = fid.assign(pipeline, &mut token); - log::info!("Created compute pipeline {:?} with {:?}", id, desc); + log::trace!("Device::create_compute_pipeline -> {id:?}"); device .trackers @@ -2043,7 +2077,7 @@ impl Global { pub fn compute_pipeline_drop(&self, compute_pipeline_id: id::ComputePipelineId) { profiling::scope!("ComputePipeline::drop"); - log::debug!("compute pipeline {:?} is dropped", compute_pipeline_id); + log::trace!("ComputePipeline::drop {:?}", compute_pipeline_id); let hub = A::hub(self); let mut token = Token::root(); let (device_guard, mut token) = hub.devices.read(&mut token); @@ -2355,6 +2389,8 @@ impl Global { device_id: DeviceId, maintain: wgt::Maintain, ) -> Result { + log::trace!("Device::poll"); + let (closures, queue_empty) = { if let wgt::Maintain::WaitForSubmissionIndex(submission_index) = maintain { if submission_index.queue_id != device_id { @@ -2470,6 +2506,8 @@ impl Global { } pub fn device_start_capture(&self, id: DeviceId) { + log::trace!("Device::start_capture"); + let hub = A::hub(self); let mut token = Token::root(); let (device_guard, _) = hub.devices.read(&mut token); @@ -2482,6 +2520,8 @@ impl Global { } pub fn device_stop_capture(&self, id: DeviceId) { + log::trace!("Device::stop_capture"); + let hub = A::hub(self); let mut token = Token::root(); let (device_guard, _) = hub.devices.read(&mut token); @@ -2495,7 +2535,7 @@ impl Global { pub fn device_drop(&self, device_id: DeviceId) { profiling::scope!("Device::drop"); - log::debug!("device {:?} is dropped", device_id); + log::trace!("Device::drop {device_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -2511,6 +2551,8 @@ impl Global { } pub fn device_destroy(&self, device_id: DeviceId) { + log::trace!("Device::destroy {device_id:?}"); + let hub = A::hub(self); let mut token = Token::root(); @@ -2541,6 +2583,8 @@ impl Global { } pub fn device_lose(&self, device_id: DeviceId, reason: Option<&str>) { + log::trace!("Device::lose {device_id:?}"); + let hub = A::hub(self); let mut token = Token::root(); @@ -2587,6 +2631,8 @@ impl Global { range: Range, op: BufferMapOperation, ) -> BufferAccessResult { + log::trace!("Buffer::map_async {buffer_id:?}"); + // User callbacks must not be called while holding buffer_map_async_inner's locks, so we // defer the error callback if it needs to be called immediately (typically when running // into errors). @@ -2705,6 +2751,7 @@ impl Global { size: Option, ) -> Result<(*mut u8, u64), BufferAccessError> { profiling::scope!("Buffer::get_mapped_range"); + log::trace!("Buffer::get_mapped_range {buffer_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -2865,6 +2912,7 @@ impl Global { pub fn buffer_unmap(&self, buffer_id: id::BufferId) -> BufferAccessResult { profiling::scope!("unmap", "Buffer"); + log::trace!("Buffer::unmap {buffer_id:?}"); let closure; { diff --git a/wgpu-core/src/device/queue.rs b/wgpu-core/src/device/queue.rs index 73fa5de3b0..089f4ff717 100644 --- a/wgpu-core/src/device/queue.rs +++ b/wgpu-core/src/device/queue.rs @@ -1051,6 +1051,7 @@ impl Global { command_buffer_ids: &[id::CommandBufferId], ) -> Result { profiling::scope!("Queue::submit"); + log::trace!("Queue::submit {queue_id:?}"); let (submit_index, callbacks) = { let hub = A::hub(self); @@ -1434,6 +1435,8 @@ impl Global { queue_id: id::QueueId, closure: SubmittedWorkDoneClosure, ) -> Result<(), InvalidQueue> { + log::trace!("Queue::on_submitted_work_done {queue_id:?}"); + //TODO: flush pending writes let hub = A::hub(self); let mut token = Token::root(); diff --git a/wgpu-core/src/instance.rs b/wgpu-core/src/instance.rs index 0aee56ac6e..9fc198373d 100644 --- a/wgpu-core/src/instance.rs +++ b/wgpu-core/src/instance.rs @@ -302,6 +302,8 @@ impl Adapter { desc: &DeviceDescriptor, trace_path: Option<&std::path::Path>, ) -> Result, RequestDeviceError> { + log::trace!("Adapter::create_device"); + let caps = &self.raw.capabilities; Device::new( open, @@ -656,6 +658,8 @@ impl Global { pub fn surface_drop(&self, id: SurfaceId) { profiling::scope!("Surface::drop"); + log::trace!("Surface::drop {id:?}"); + let mut token = Token::root(); let (surface, _) = self.surfaces.unregister(id, &mut token); let mut surface = surface.unwrap(); @@ -722,6 +726,7 @@ impl Global { pub fn enumerate_adapters(&self, inputs: AdapterInputs>) -> Vec { profiling::scope!("Instance::enumerate_adapters"); + log::trace!("Instance::enumerate_adapters"); let mut adapters = Vec::new(); @@ -779,6 +784,7 @@ impl Global { inputs: AdapterInputs>, ) -> Result { profiling::scope!("Instance::pick_adapter"); + log::trace!("Instance::pick_adapter"); fn gather( _: A, @@ -1060,6 +1066,7 @@ impl Global { pub fn adapter_drop(&self, adapter_id: AdapterId) { profiling::scope!("Adapter::drop"); + log::trace!("Adapter::drop {adapter_id:?}"); let hub = A::hub(self); let mut token = Token::root(); @@ -1085,6 +1092,7 @@ impl Global { id_in: Input, ) -> (DeviceId, Option) { profiling::scope!("Adapter::request_device"); + log::trace!("Adapter::request_device"); let hub = A::hub(self); let mut token = Token::root(); From 9ff61fee9f6c2701ee06b832685f2959612a8476 Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Mon, 2 Oct 2023 09:05:56 +0200 Subject: [PATCH 080/135] Trace logging adjustments (#4188) --- wgpu-core/src/command/render.rs | 80 ++++++++++++++++++--------------- wgpu-core/src/device/global.rs | 12 ++--- 2 files changed, 51 insertions(+), 41 deletions(-) diff --git a/wgpu-core/src/command/render.rs b/wgpu-core/src/command/render.rs index 9e2c533893..2c310ed043 100644 --- a/wgpu-core/src/command/render.rs +++ b/wgpu-core/src/command/render.rs @@ -1314,7 +1314,10 @@ impl Global { timestamp_writes: Option<&RenderPassTimestampWrites>, occlusion_query_set_id: Option, ) -> Result<(), RenderPassError> { - profiling::scope!("CommandEncoder::run_render_pass"); + profiling::scope!( + "CommandEncoder::run_render_pass {}", + base.label.unwrap_or("") + ); let init_scope = PassErrorScope::Pass(encoder_id); let hub = A::hub(self); @@ -1423,6 +1426,8 @@ impl Global { num_dynamic_offsets, bind_group_id, } => { + log::trace!("RenderPass::set_bind_group {index} {bind_group_id:?}"); + let scope = PassErrorScope::SetBindGroup(bind_group_id); let max_bind_groups = device.limits.max_bind_groups; if index >= max_bind_groups { @@ -1501,6 +1506,8 @@ impl Global { } } RenderCommand::SetPipeline(pipeline_id) => { + log::trace!("RenderPass::set_pipeline {pipeline_id:?}"); + let scope = PassErrorScope::SetPipelineRender(pipeline_id); state.pipeline = Some(pipeline_id); @@ -1620,6 +1627,8 @@ impl Global { offset, size, } => { + log::trace!("RenderPass::set_index_buffer {buffer_id:?}"); + let scope = PassErrorScope::SetIndexBuffer(buffer_id); let buffer: &Buffer = info .usage_scope @@ -1666,6 +1675,8 @@ impl Global { offset, size, } => { + log::trace!("RenderPass::set_vertex_buffer {slot} {buffer_id:?}"); + let scope = PassErrorScope::SetVertexBuffer(buffer_id); let buffer: &Buffer = info .usage_scope @@ -1713,6 +1724,8 @@ impl Global { state.vertex.update_limits(); } RenderCommand::SetBlendConstant(ref color) => { + log::trace!("RenderPass::set_blend_constant"); + state.blend_constant = OptionalState::Set; let array = [ color.r as f32, @@ -1725,6 +1738,8 @@ impl Global { } } RenderCommand::SetStencilReference(value) => { + log::trace!("RenderPass::set_stencil_reference {value}"); + state.stencil_reference = value; if state .pipeline_flags @@ -1740,6 +1755,8 @@ impl Global { depth_min, depth_max, } => { + log::trace!("RenderPass::set_viewport {rect:?}"); + let scope = PassErrorScope::SetViewport; if rect.x < 0.0 || rect.y < 0.0 @@ -1776,6 +1793,8 @@ impl Global { size_bytes, values_offset, } => { + log::trace!("RenderPass::set_push_constants"); + let scope = PassErrorScope::SetPushConstant; let values_offset = values_offset .ok_or(RenderPassErrorInner::InvalidValuesOffset) @@ -1804,6 +1823,8 @@ impl Global { } } RenderCommand::SetScissor(ref rect) => { + log::trace!("RenderPass::set_scissor_rect {rect:?}"); + let scope = PassErrorScope::SetScissorRect; if rect.x + rect.w > info.extent.width || rect.y + rect.h > info.extent.height @@ -1827,6 +1848,10 @@ impl Global { first_vertex, first_instance, } => { + log::trace!( + "RenderPass::draw {vertex_count} {instance_count} {first_vertex} {first_instance}" + ); + let indexed = false; let scope = PassErrorScope::Draw { indexed, @@ -1869,6 +1894,8 @@ impl Global { base_vertex, first_instance, } => { + log::trace!("RenderPass::draw_indexed {index_count} {instance_count} {first_index} {base_vertex} {first_instance}"); + let indexed = true; let scope = PassErrorScope::Draw { indexed, @@ -1917,6 +1944,8 @@ impl Global { count, indexed, } => { + log::trace!("RenderPass::draw_indirect (indexed:{indexed}) {buffer_id:?} {offset} {count:?}"); + let scope = PassErrorScope::Draw { indexed, indirect: true, @@ -1991,6 +2020,8 @@ impl Global { max_count, indexed, } => { + log::trace!("RenderPass::multi_draw_indirect_count (indexed:{indexed}) {buffer_id:?} {offset} {count_buffer_id:?} {count_buffer_offset:?} {max_count:?}"); + let scope = PassErrorScope::Draw { indexed, indirect: true, @@ -2104,12 +2135,16 @@ impl Global { let label = str::from_utf8(&base.string_data[string_offset..string_offset + len]) .unwrap(); + + log::trace!("RenderPass::push_debug_group {label:?}"); string_offset += len; unsafe { raw.begin_debug_marker(label); } } RenderCommand::PopDebugGroup => { + log::trace!("RenderPass::pop_debug_group"); + let scope = PassErrorScope::PopDebugGroup; if state.debug_scope_depth == 0 { return Err(RenderPassErrorInner::InvalidPopDebugGroup) @@ -2124,6 +2159,7 @@ impl Global { let label = str::from_utf8(&base.string_data[string_offset..string_offset + len]) .unwrap(); + log::trace!("RenderPass::insert_debug_marker {label:?}"); string_offset += len; unsafe { raw.insert_debug_marker(label); @@ -2133,6 +2169,7 @@ impl Global { query_set_id, query_index, } => { + log::trace!("RenderPass::write_timestamps {query_set_id:?} {query_index}"); let scope = PassErrorScope::WriteTimestamp; device @@ -2156,6 +2193,7 @@ impl Global { .map_pass_err(scope)?; } RenderCommand::BeginOcclusionQuery { query_index } => { + log::trace!("RenderPass::begin_occlusion_query {query_index}"); let scope = PassErrorScope::BeginOcclusionQuery; let query_set_id = occlusion_query_set_id @@ -2180,6 +2218,7 @@ impl Global { .map_pass_err(scope)?; } RenderCommand::EndOcclusionQuery => { + log::trace!("RenderPass::end_occlusion_query"); let scope = PassErrorScope::EndOcclusionQuery; end_occlusion_query(raw, &*query_set_guard, &mut active_query) @@ -2189,6 +2228,7 @@ impl Global { query_set_id, query_index, } => { + log::trace!("RenderPass::begin_pipeline_statistics_query {query_set_id:?} {query_index}"); let scope = PassErrorScope::BeginPipelineStatisticsQuery; let query_set = cmd_buf @@ -2209,12 +2249,14 @@ impl Global { .map_pass_err(scope)?; } RenderCommand::EndPipelineStatisticsQuery => { + log::trace!("RenderPass::end_pipeline_statistics_query"); let scope = PassErrorScope::EndPipelineStatisticsQuery; end_pipeline_statistics_query(raw, &*query_set_guard, &mut active_query) .map_pass_err(scope)?; } RenderCommand::ExecuteBundle(bundle_id) => { + log::trace!("RenderPass::execute_bundle {bundle_id:?}"); let scope = PassErrorScope::ExecuteBundle; let bundle: &command::RenderBundle = cmd_buf .trackers @@ -2393,7 +2435,6 @@ pub mod render_ffi { pass: &mut RenderPass, pipeline_id: id::RenderPipelineId, ) { - log::trace!("RenderPass::set_pipeline {pipeline_id:?}"); if pass.current_pipeline.set_and_check_redundant(pipeline_id) { return; } @@ -2411,7 +2452,6 @@ pub mod render_ffi { offset: BufferAddress, size: Option, ) { - log::trace!("RenderPass::set_vertex_buffer {buffer_id:?}"); pass.base.commands.push(RenderCommand::SetVertexBuffer { slot, buffer_id, @@ -2428,13 +2468,11 @@ pub mod render_ffi { offset: BufferAddress, size: Option, ) { - log::trace!("RenderPass::set_index_buffer {buffer:?}"); pass.set_index_buffer(buffer, index_format, offset, size); } #[no_mangle] pub extern "C" fn wgpu_render_pass_set_blend_constant(pass: &mut RenderPass, color: &Color) { - log::trace!("RenderPass::set_blend_constant"); pass.base .commands .push(RenderCommand::SetBlendConstant(*color)); @@ -2442,7 +2480,6 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_set_stencil_reference(pass: &mut RenderPass, value: u32) { - log::trace!("RenderPass::set_stencil_reference {value}"); pass.base .commands .push(RenderCommand::SetStencilReference(value)); @@ -2458,7 +2495,6 @@ pub mod render_ffi { depth_min: f32, depth_max: f32, ) { - log::trace!("RenderPass::set_viewport {x} {y} {w} {h}"); pass.base.commands.push(RenderCommand::SetViewport { rect: Rect { x, y, w, h }, depth_min, @@ -2474,7 +2510,6 @@ pub mod render_ffi { w: u32, h: u32, ) { - log::trace!("RenderPass::set_scissor_rect {x} {y} {w} {h}"); pass.base .commands .push(RenderCommand::SetScissor(Rect { x, y, w, h })); @@ -2492,7 +2527,6 @@ pub mod render_ffi { size_bytes: u32, data: *const u8, ) { - log::trace!("RenderPass::set_push_constants"); assert_eq!( offset & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), 0, @@ -2530,10 +2564,6 @@ pub mod render_ffi { first_vertex: u32, first_instance: u32, ) { - log::trace!( - "RenderPass::draw {vertex_count} {instance_count} {first_vertex} {first_instance}" - ); - pass.base.commands.push(RenderCommand::Draw { vertex_count, instance_count, @@ -2551,7 +2581,6 @@ pub mod render_ffi { base_vertex: i32, first_instance: u32, ) { - log::trace!("RenderPass::draw_indexed {index_count} {instance_count} {first_index} {base_vertex} {first_instance}"); pass.base.commands.push(RenderCommand::DrawIndexed { index_count, instance_count, @@ -2567,7 +2596,6 @@ pub mod render_ffi { buffer_id: id::BufferId, offset: BufferAddress, ) { - log::trace!("RenderPass::draw_indirect {buffer_id:?} {offset}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2582,7 +2610,6 @@ pub mod render_ffi { buffer_id: id::BufferId, offset: BufferAddress, ) { - log::trace!("RenderPass::draw_indexed_indirect {buffer_id:?} {offset}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2598,7 +2625,6 @@ pub mod render_ffi { offset: BufferAddress, count: u32, ) { - log::trace!("RenderPass::multi_draw_indirect {buffer_id:?} {offset} {count}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2614,7 +2640,6 @@ pub mod render_ffi { offset: BufferAddress, count: u32, ) { - log::trace!("RenderPass::multi_draw_indexed_indirect {buffer_id:?} {offset} {count}"); pass.base.commands.push(RenderCommand::MultiDrawIndirect { buffer_id, offset, @@ -2632,7 +2657,6 @@ pub mod render_ffi { count_buffer_offset: BufferAddress, max_count: u32, ) { - log::trace!("RenderPass::multi_draw_indirect_count {buffer_id:?} {offset} {count_buffer_id:?} {count_buffer_offset} {max_count}"); pass.base .commands .push(RenderCommand::MultiDrawIndirectCount { @@ -2654,7 +2678,6 @@ pub mod render_ffi { count_buffer_offset: BufferAddress, max_count: u32, ) { - log::trace!("RenderPass::multi_draw_indexed_indirect_count {buffer_id:?} {offset} {count_buffer_id:?} {count_buffer_offset} {max_count}"); pass.base .commands .push(RenderCommand::MultiDrawIndirectCount { @@ -2677,10 +2700,7 @@ pub mod render_ffi { label: RawString, color: u32, ) { - let cstr = unsafe { ffi::CStr::from_ptr(label) }; - log::trace!("RenderPass::push_debug_group {cstr:?}"); - - let bytes = cstr.to_bytes(); + let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(RenderCommand::PushDebugGroup { @@ -2691,7 +2711,6 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_pop_debug_group(pass: &mut RenderPass) { - log::trace!("RenderPass::pop_debug_group"); pass.base.commands.push(RenderCommand::PopDebugGroup); } @@ -2705,10 +2724,7 @@ pub mod render_ffi { label: RawString, color: u32, ) { - let cstr = unsafe { ffi::CStr::from_ptr(label) }; - log::trace!("RenderPass::insert_debug_marker {cstr:?}"); - - let bytes = cstr.to_bytes(); + let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(RenderCommand::InsertDebugMarker { @@ -2723,7 +2739,6 @@ pub mod render_ffi { query_set_id: id::QuerySetId, query_index: u32, ) { - log::trace!("RenderPass::write_timestamps {query_set_id:?} {query_index}"); pass.base.commands.push(RenderCommand::WriteTimestamp { query_set_id, query_index, @@ -2735,7 +2750,6 @@ pub mod render_ffi { pass: &mut RenderPass, query_index: u32, ) { - log::trace!("RenderPass::begin_occlusion_query {query_index}"); pass.base .commands .push(RenderCommand::BeginOcclusionQuery { query_index }); @@ -2743,7 +2757,6 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_end_occlusion_query(pass: &mut RenderPass) { - log::trace!("RenderPass::end_occlusion_query"); pass.base.commands.push(RenderCommand::EndOcclusionQuery); } @@ -2753,7 +2766,6 @@ pub mod render_ffi { query_set_id: id::QuerySetId, query_index: u32, ) { - log::trace!("RenderPass::begin_pipeline_statistics_query {query_set_id:?} {query_index}"); pass.base .commands .push(RenderCommand::BeginPipelineStatisticsQuery { @@ -2764,7 +2776,6 @@ pub mod render_ffi { #[no_mangle] pub extern "C" fn wgpu_render_pass_end_pipeline_statistics_query(pass: &mut RenderPass) { - log::trace!("RenderPass::end_pipeline_statistics_query"); pass.base .commands .push(RenderCommand::EndPipelineStatisticsQuery); @@ -2780,7 +2791,6 @@ pub mod render_ffi { render_bundle_ids: *const id::RenderBundleId, render_bundle_ids_length: usize, ) { - log::trace!("RenderPass::execute_bundles"); for &bundle_id in unsafe { slice::from_raw_parts(render_bundle_ids, render_bundle_ids_length) } { diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index 50ef913295..a9be65ae8f 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -262,7 +262,7 @@ impl Global { }; let id = fid.assign(buffer, &mut token); - log::trace!("Device::create_buffer -> {:?}", id); + log::trace!("Device::create_buffer -> {:?}", id.0); device .trackers @@ -616,7 +616,7 @@ impl Global { let ref_count = texture.life_guard.add_ref(); let id = fid.assign(texture, &mut token); - log::trace!("Device::create_texture -> {id:?}"); + log::trace!("Device::create_texture -> {:?}", id.0); device.trackers.lock().textures.insert_single( id.0, @@ -696,7 +696,7 @@ impl Global { let ref_count = texture.life_guard.add_ref(); let id = fid.assign(texture, &mut token); - log::trace!("Device::create_texture -> {id:?}"); + log::trace!("Device::create_texture -> {:?}", id.0); device.trackers.lock().textures.insert_single( id.0, @@ -756,7 +756,7 @@ impl Global { let ref_count = buffer.life_guard.add_ref(); let id = fid.assign(buffer, &mut token); - log::trace!("Device::create_buffer -> {id:?}"); + log::trace!("Device::create_buffer -> {:?}", id.0); device .trackers @@ -1869,7 +1869,7 @@ impl Global { let ref_count = pipeline.life_guard.add_ref(); let id = fid.assign(pipeline, &mut token); - log::trace!("Device::create_render_pipeline -> {id:?}"); + log::trace!("Device::create_render_pipeline -> {:?}", id.0); device .trackers @@ -2014,7 +2014,7 @@ impl Global { let ref_count = pipeline.life_guard.add_ref(); let id = fid.assign(pipeline, &mut token); - log::trace!("Device::create_compute_pipeline -> {id:?}"); + log::trace!("Device::create_compute_pipeline -> {:?}", id.0); device .trackers From 6df7e2d7e5f8a96d45c93ab425fba813498ea2bc Mon Sep 17 00:00:00 2001 From: Jinlei Li Date: Mon, 2 Oct 2023 20:42:06 +0800 Subject: [PATCH 081/135] Revert "Ignore the exception values generated by the winit resize event" (#4195) --- examples/common/src/framework.rs | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/examples/common/src/framework.rs b/examples/common/src/framework.rs index 875d8544e7..dc373ca876 100644 --- a/examples/common/src/framework.rs +++ b/examples/common/src/framework.rs @@ -309,22 +309,11 @@ fn start( }, .. } => { - // Once winit is fixed, the detection conditions here can be removed. - // https://github.com/rust-windowing/winit/issues/2876 - let max_dimension = adapter.limits().max_texture_dimension_2d; - if size.width > max_dimension || size.height > max_dimension { - log::warn!( - "The resizing size {:?} exceeds the limit of {}.", - size, - max_dimension - ); - } else { - log::info!("Resizing to {:?}", size); - config.width = size.width.max(1); - config.height = size.height.max(1); - example.resize(&config, &device, &queue); - surface.configure(&device, &config); - } + log::info!("Resizing to {:?}", size); + config.width = size.width.max(1); + config.height = size.height.max(1); + example.resize(&config, &device, &queue); + surface.configure(&device, &config); } event::Event::WindowEvent { event, .. } => match event { WindowEvent::KeyboardInput { From 1cf3bdf0bded0e95fd47a8309be1792a01fba264 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 14:14:34 +0200 Subject: [PATCH 082/135] Bump libloading from 0.8.0 to 0.8.1 (#4192) Bumps [libloading](https://github.com/nagisa/rust_libloading) from 0.8.0 to 0.8.1. - [Commits](https://github.com/nagisa/rust_libloading/compare/0.8.0...0.8.1) --- updated-dependencies: - dependency-name: libloading dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 10 +++++----- Cargo.toml | 2 +- wgpu-hal/Cargo.toml | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f3b3489a5a..cf4fff70e9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -559,7 +559,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e16e44ab292b1dddfdaf7be62cfd8877df52f2f3fde5858d95bab606be259f20" dependencies = [ "bitflags 2.4.0", - "libloading 0.8.0", + "libloading 0.7.4", "winapi", ] @@ -751,7 +751,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" dependencies = [ - "libloading 0.8.0", + "libloading 0.7.4", ] [[package]] @@ -1481,9 +1481,9 @@ dependencies = [ [[package]] name = "libloading" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d580318f95776505201b28cf98eb1fa5e4be3b689633ba6a3e6cd880ff22d8cb" +checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161" dependencies = [ "cfg-if", "windows-sys 0.48.0", @@ -3270,7 +3270,7 @@ dependencies = [ "js-sys", "khronos-egl", "libc", - "libloading 0.8.0", + "libloading 0.8.1", "log", "metal", "naga", diff --git a/Cargo.toml b/Cargo.toml index 8794c68e11..57c13b46a9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -71,7 +71,7 @@ rustc-hash = "1.1.0" glam = "0.24.2" image = { version = "0.24", default-features = false, features = ["png"] } # libloading 0.8 switches from `winapi` to `windows-sys`; permit either -libloading = ">=0.7,<0.9" +libloading = ">=0.7, <0.9" libc = "0.2" log = "0.4" nanorand = { version = "0.7", default-features = false, features = ["wyrand"] } diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 18e63b3d4e..236ecc33c7 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -81,13 +81,13 @@ gpu-descriptor = { version = "0.2", optional = true } smallvec = { version = "1", optional = true, features = ["union"] } khronos-egl = { version = "4.1", features = ["dynamic"], optional = true } -libloading = { version = ">=0.7,<0.9", optional = true } +libloading = { version = ">=0.7, <0.9", optional = true } renderdoc-sys = { version = "1.0.0", optional = true } [target.'cfg(target_os = "emscripten")'.dependencies] khronos-egl = { version = "4.1", features = ["static", "no-pkg-config"] } #Note: it's unused by emscripten, but we keep it to have single code base in egl.rs -libloading = { version = ">=0.7,<0.9", optional = true } +libloading = { version = ">=0.7, <0.9", optional = true } [target.'cfg(windows)'.dependencies] # backend: Dx12 From 422c63687799998f7be2fc77cdfe0fda34f347ae Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Tue, 3 Oct 2023 14:56:21 +0200 Subject: [PATCH 083/135] Add `Rgb10a2Uint` format (#4199) --- CHANGELOG.md | 1 + Cargo.lock | 2 +- Cargo.toml | 2 +- tests/tests/clear_texture.rs | 1 + wgpu-core/Cargo.toml | 2 +- wgpu-core/src/validation.rs | 4 +++- wgpu-hal/Cargo.toml | 4 ++-- wgpu-hal/src/auxil/dxgi/conv.rs | 1 + wgpu-hal/src/gles/adapter.rs | 1 + wgpu-hal/src/gles/conv.rs | 5 +++++ wgpu-hal/src/metal/adapter.rs | 11 ++++++++--- wgpu-hal/src/metal/mod.rs | 3 +-- wgpu-hal/src/vulkan/conv.rs | 1 + wgpu-info/src/texture.rs | 3 ++- wgpu-types/src/lib.rs | 24 +++++++++++++++++++++--- wgpu/src/backend/web.rs | 3 +++ 16 files changed, 53 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7537cb8ae6..b098386472 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -104,6 +104,7 @@ By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) - Support dual source blending in OpenGL ES, Metal, Vulkan & DX12. By @freqmod in [4022](https://github.com/gfx-rs/wgpu/pull/4022) - Add stub support for device destroy and device validity. By @bradwerth in [4163](https://github.com/gfx-rs/wgpu/pull/4163) - Add trace-level logging for most entry points in wgpu-core By @nical in [4183](https://github.com/gfx-rs/wgpu/pull/4183) +- Add `Rgb10a2Uint` format. By @teoxoy in [4199](https://github.com/gfx-rs/wgpu/pull/4199) #### Vulkan diff --git a/Cargo.lock b/Cargo.lock index cf4fff70e9..60165e6b65 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1601,7 +1601,7 @@ dependencies = [ [[package]] name = "naga" version = "0.13.0" -source = "git+https://github.com/gfx-rs/naga?rev=df8107b7#df8107b78812cc2b1e3d5de35279cedc1f0da3fb" +source = "git+https://github.com/gfx-rs/naga?rev=6668d0694cc51ee66c71c2ca3a1ab1081956299b#6668d0694cc51ee66c71c2ca3a1ab1081956299b" dependencies = [ "bit-set", "bitflags 2.4.0", diff --git a/Cargo.toml b/Cargo.toml index 57c13b46a9..d383788bc1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,7 +51,7 @@ version = "0.17" [workspace.dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "df8107b7" +rev = "6668d0694cc51ee66c71c2ca3a1ab1081956299b" version = "0.13.0" [workspace.dependencies] diff --git a/tests/tests/clear_texture.rs b/tests/tests/clear_texture.rs index 36f48af359..e3894f7820 100644 --- a/tests/tests/clear_texture.rs +++ b/tests/tests/clear_texture.rs @@ -24,6 +24,7 @@ static TEXTURE_FORMATS_UNCOMPRESSED_GLES_COMPAT: &[wgpu::TextureFormat] = &[ wgpu::TextureFormat::Rgba8Sint, wgpu::TextureFormat::Bgra8Unorm, wgpu::TextureFormat::Bgra8UnormSrgb, + wgpu::TextureFormat::Rgb10a2Uint, wgpu::TextureFormat::Rgb10a2Unorm, wgpu::TextureFormat::Rg11b10Float, wgpu::TextureFormat::Rg32Uint, diff --git a/wgpu-core/Cargo.toml b/wgpu-core/Cargo.toml index 19bc3ad64d..7fdec68a2f 100644 --- a/wgpu-core/Cargo.toml +++ b/wgpu-core/Cargo.toml @@ -72,7 +72,7 @@ thiserror = "1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "df8107b7" +rev = "6668d0694cc51ee66c71c2ca3a1ab1081956299b" version = "0.13.0" features = ["clone", "span", "validate"] diff --git a/wgpu-core/src/validation.rs b/wgpu-core/src/validation.rs index ef5c65ed00..59793743f7 100644 --- a/wgpu-core/src/validation.rs +++ b/wgpu-core/src/validation.rs @@ -296,6 +296,7 @@ fn map_storage_format_to_naga(format: wgt::TextureFormat) -> Option Sf::Rgba8Uint, Tf::Rgba8Sint => Sf::Rgba8Sint, + Tf::Rgb10a2Uint => Sf::Rgb10a2Uint, Tf::Rgb10a2Unorm => Sf::Rgb10a2Unorm, Tf::Rg11b10Float => Sf::Rg11b10Float, @@ -350,6 +351,7 @@ fn map_storage_format_from_naga(format: naga::StorageFormat) -> wgt::TextureForm Sf::Rgba8Uint => Tf::Rgba8Uint, Sf::Rgba8Sint => Tf::Rgba8Sint, + Sf::Rgb10a2Uint => Tf::Rgb10a2Uint, Sf::Rgb10a2Unorm => Tf::Rgb10a2Unorm, Sf::Rg11b10Float => Tf::Rg11b10Float, @@ -667,7 +669,7 @@ impl NumericType { | Tf::Rgb10a2Unorm | Tf::Rgba16Float | Tf::Rgba32Float => (NumericDimension::Vector(Vs::Quad), Sk::Float), - Tf::Rgba8Uint | Tf::Rgba16Uint | Tf::Rgba32Uint => { + Tf::Rgba8Uint | Tf::Rgba16Uint | Tf::Rgba32Uint | Tf::Rgb10a2Uint => { (NumericDimension::Vector(Vs::Quad), Sk::Uint) } Tf::Rgba8Sint | Tf::Rgba16Sint | Tf::Rgba32Sint => { diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 236ecc33c7..6a289a7c00 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -120,14 +120,14 @@ android_system_properties = "0.1.1" [dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "df8107b7" +rev = "6668d0694cc51ee66c71c2ca3a1ab1081956299b" version = "0.13.0" features = ["clone"] # DEV dependencies [dev-dependencies.naga] git = "https://github.com/gfx-rs/naga" -rev = "df8107b7" +rev = "6668d0694cc51ee66c71c2ca3a1ab1081956299b" version = "0.13.0" features = ["wgsl-in"] diff --git a/wgpu-hal/src/auxil/dxgi/conv.rs b/wgpu-hal/src/auxil/dxgi/conv.rs index 0456cd719b..3798f7ea0a 100644 --- a/wgpu-hal/src/auxil/dxgi/conv.rs +++ b/wgpu-hal/src/auxil/dxgi/conv.rs @@ -34,6 +34,7 @@ pub fn map_texture_format_failable(format: wgt::TextureFormat) -> Option DXGI_FORMAT_R8G8B8A8_UINT, Tf::Rgba8Sint => DXGI_FORMAT_R8G8B8A8_SINT, Tf::Rgb9e5Ufloat => DXGI_FORMAT_R9G9B9E5_SHAREDEXP, + Tf::Rgb10a2Uint => DXGI_FORMAT_R10G10B10A2_UINT, Tf::Rgb10a2Unorm => DXGI_FORMAT_R10G10B10A2_UNORM, Tf::Rg11b10Float => DXGI_FORMAT_R11G11B10_FLOAT, Tf::Rg32Uint => DXGI_FORMAT_R32G32_UINT, diff --git a/wgpu-hal/src/gles/adapter.rs b/wgpu-hal/src/gles/adapter.rs index cbbcf7399e..4c81fca65b 100644 --- a/wgpu-hal/src/gles/adapter.rs +++ b/wgpu-hal/src/gles/adapter.rs @@ -828,6 +828,7 @@ impl crate::Adapter for super::Adapter { Tf::Rgba8Snorm => filterable, Tf::Rgba8Uint => renderable | storage, Tf::Rgba8Sint => renderable | storage, + Tf::Rgb10a2Uint => renderable, Tf::Rgb10a2Unorm => filterable_renderable, Tf::Rg11b10Float => filterable | float_renderable, Tf::Rg32Uint => renderable, diff --git a/wgpu-hal/src/gles/conv.rs b/wgpu-hal/src/gles/conv.rs index 9bfac022a1..c09d573716 100644 --- a/wgpu-hal/src/gles/conv.rs +++ b/wgpu-hal/src/gles/conv.rs @@ -35,6 +35,11 @@ impl super::AdapterShared { Tf::Bgra8Unorm => (glow::RGBA8, glow::BGRA, glow::UNSIGNED_BYTE), //TODO? Tf::Rgba8Uint => (glow::RGBA8UI, glow::RGBA_INTEGER, glow::UNSIGNED_BYTE), Tf::Rgba8Sint => (glow::RGBA8I, glow::RGBA_INTEGER, glow::BYTE), + Tf::Rgb10a2Uint => ( + glow::RGB10_A2UI, + glow::RGBA_INTEGER, + glow::UNSIGNED_INT_2_10_10_10_REV, + ), Tf::Rgb10a2Unorm => ( glow::RGB10_A2, glow::RGBA, diff --git a/wgpu-hal/src/metal/adapter.rs b/wgpu-hal/src/metal/adapter.rs index c4617deaa0..538ccd64bf 100644 --- a/wgpu-hal/src/metal/adapter.rs +++ b/wgpu-hal/src/metal/adapter.rs @@ -166,6 +166,11 @@ impl crate::Adapter for super::Adapter { flags.set(Tfc::STORAGE, pc.format_rgba8_srgb_all); flags } + Tf::Rgb10a2Uint => { + let mut flags = Tfc::COLOR_ATTACHMENT | msaa_count; + flags.set(Tfc::STORAGE, pc.format_rgb10a2_uint_write); + flags + } Tf::Rgb10a2Unorm => { let mut flags = all_caps; flags.set(Tfc::STORAGE, pc.format_rgb10a2_unorm_all); @@ -399,7 +404,7 @@ const RGB10A2UNORM_ALL: &[MTLFeatureSet] = &[ MTLFeatureSet::macOS_GPUFamily1_v1, ]; -const RGB10A2UINT_COLOR_WRITE: &[MTLFeatureSet] = &[ +const RGB10A2UINT_WRITE: &[MTLFeatureSet] = &[ MTLFeatureSet::iOS_GPUFamily3_v1, MTLFeatureSet::tvOS_GPUFamily2_v1, MTLFeatureSet::macOS_GPUFamily1_v1, @@ -636,8 +641,7 @@ impl super::PrivateCapabilities { format_rgba8_srgb_no_write: !Self::supports_any(device, RGBA8_SRGB), format_rgb10a2_unorm_all: Self::supports_any(device, RGB10A2UNORM_ALL), format_rgb10a2_unorm_no_write: !Self::supports_any(device, RGB10A2UNORM_ALL), - format_rgb10a2_uint_color: !Self::supports_any(device, RGB10A2UINT_COLOR_WRITE), - format_rgb10a2_uint_color_write: Self::supports_any(device, RGB10A2UINT_COLOR_WRITE), + format_rgb10a2_uint_write: Self::supports_any(device, RGB10A2UINT_WRITE), format_rg11b10_all: Self::supports_any(device, RG11B10FLOAT_ALL), format_rg11b10_no_write: !Self::supports_any(device, RG11B10FLOAT_ALL), format_rgb9e5_all: Self::supports_any(device, RGB9E5FLOAT_ALL), @@ -971,6 +975,7 @@ impl super::PrivateCapabilities { Tf::Bgra8Unorm => BGRA8Unorm, Tf::Rgba8Uint => RGBA8Uint, Tf::Rgba8Sint => RGBA8Sint, + Tf::Rgb10a2Uint => RGB10A2Uint, Tf::Rgb10a2Unorm => RGB10A2Unorm, Tf::Rg11b10Float => RG11B10Float, Tf::Rg32Uint => RG32Uint, diff --git a/wgpu-hal/src/metal/mod.rs b/wgpu-hal/src/metal/mod.rs index c6b91a4f3c..d9da4f7476 100644 --- a/wgpu-hal/src/metal/mod.rs +++ b/wgpu-hal/src/metal/mod.rs @@ -208,8 +208,7 @@ struct PrivateCapabilities { format_rgba8_srgb_no_write: bool, format_rgb10a2_unorm_all: bool, format_rgb10a2_unorm_no_write: bool, - format_rgb10a2_uint_color: bool, - format_rgb10a2_uint_color_write: bool, + format_rgb10a2_uint_write: bool, format_rg11b10_all: bool, format_rg11b10_no_write: bool, format_rgb9e5_all: bool, diff --git a/wgpu-hal/src/vulkan/conv.rs b/wgpu-hal/src/vulkan/conv.rs index 459b7f858f..71b8a877c9 100644 --- a/wgpu-hal/src/vulkan/conv.rs +++ b/wgpu-hal/src/vulkan/conv.rs @@ -34,6 +34,7 @@ impl super::PrivateCapabilities { Tf::Bgra8Unorm => F::B8G8R8A8_UNORM, Tf::Rgba8Uint => F::R8G8B8A8_UINT, Tf::Rgba8Sint => F::R8G8B8A8_SINT, + Tf::Rgb10a2Uint => F::A2B10G10R10_UINT_PACK32, Tf::Rgb10a2Unorm => F::A2B10G10R10_UNORM_PACK32, Tf::Rg11b10Float => F::B10G11R11_UFLOAT_PACK32, Tf::Rg32Uint => F::R32G32_UINT, diff --git a/wgpu-info/src/texture.rs b/wgpu-info/src/texture.rs index 5bafa67a59..aecd3071bd 100644 --- a/wgpu-info/src/texture.rs +++ b/wgpu-info/src/texture.rs @@ -1,6 +1,6 @@ // Lets keep these on one line #[rustfmt::skip] -pub const TEXTURE_FORMAT_LIST: [wgpu::TextureFormat; 114] = [ +pub const TEXTURE_FORMAT_LIST: [wgpu::TextureFormat; 115] = [ wgpu::TextureFormat::R8Unorm, wgpu::TextureFormat::R8Snorm, wgpu::TextureFormat::R8Uint, @@ -29,6 +29,7 @@ pub const TEXTURE_FORMAT_LIST: [wgpu::TextureFormat; 114] = [ wgpu::TextureFormat::Rgba8Sint, wgpu::TextureFormat::Bgra8Unorm, wgpu::TextureFormat::Bgra8UnormSrgb, + wgpu::TextureFormat::Rgb10a2Uint, wgpu::TextureFormat::Rgb10a2Unorm, wgpu::TextureFormat::Rg11b10Float, wgpu::TextureFormat::Rg32Uint, diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index a680d91296..26cf8ccbc0 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -2148,6 +2148,8 @@ pub enum TextureFormat { // Packed 32 bit formats /// Packed unsigned float with 9 bits mantisa for each RGB component, then a common 5 bits exponent Rgb9e5Ufloat, + /// Red, green, blue, and alpha channels. 10 bit integer for RGB channels, 2 bit integer for alpha channel. Unsigned in shader. + Rgb10a2Uint, /// Red, green, blue, and alpha channels. 10 bit integer for RGB channels, 2 bit integer for alpha channel. [0, 1023] ([0, 3] for alpha) converted to/from float [0, 1] in shader. Rgb10a2Unorm, /// Red, green, and blue channels. 11 bit float with no sign bit for RG channels. 10 bit float with no sign bit for blue channel. Float in shader. @@ -2408,6 +2410,7 @@ impl<'de> Deserialize<'de> for TextureFormat { "rgba8sint" => TextureFormat::Rgba8Sint, "bgra8unorm" => TextureFormat::Bgra8Unorm, "bgra8unorm-srgb" => TextureFormat::Bgra8UnormSrgb, + "rgb10a2uint" => TextureFormat::Rgb10a2Uint, "rgb10a2unorm" => TextureFormat::Rgb10a2Unorm, "rg11b10ufloat" => TextureFormat::Rg11b10Float, "rg32uint" => TextureFormat::Rg32Uint, @@ -2534,6 +2537,7 @@ impl Serialize for TextureFormat { TextureFormat::Rgba8Sint => "rgba8sint", TextureFormat::Bgra8Unorm => "bgra8unorm", TextureFormat::Bgra8UnormSrgb => "bgra8unorm-srgb", + TextureFormat::Rgb10a2Uint => "rgb10a2uint", TextureFormat::Rgb10a2Unorm => "rgb10a2unorm", TextureFormat::Rg11b10Float => "rg11b10ufloat", TextureFormat::Rg32Uint => "rg32uint", @@ -2724,6 +2728,7 @@ impl TextureFormat { | Self::Bgra8Unorm | Self::Bgra8UnormSrgb | Self::Rgb9e5Ufloat + | Self::Rgb10a2Uint | Self::Rgb10a2Unorm | Self::Rg11b10Float | Self::Rg32Uint @@ -2822,6 +2827,7 @@ impl TextureFormat { | Self::Bgra8Unorm | Self::Bgra8UnormSrgb | Self::Rgb9e5Ufloat + | Self::Rgb10a2Uint | Self::Rgb10a2Unorm | Self::Rg11b10Float | Self::Rg32Uint @@ -2931,6 +2937,7 @@ impl TextureFormat { Self::Rgba8Sint => ( msaa, all_flags), Self::Bgra8Unorm => (msaa_resolve, attachment), Self::Bgra8UnormSrgb => (msaa_resolve, attachment), + Self::Rgb10a2Uint => ( msaa, attachment), Self::Rgb10a2Unorm => (msaa_resolve, attachment), Self::Rg11b10Float => ( msaa, rg11b10f), Self::Rg32Uint => ( noaa, all_flags), @@ -3036,7 +3043,8 @@ impl TextureFormat { | Self::Rgba16Uint | Self::R32Uint | Self::Rg32Uint - | Self::Rgba32Uint => Some(uint), + | Self::Rgba32Uint + | Self::Rgb10a2Uint => Some(uint), Self::R8Sint | Self::Rg8Sint @@ -3124,7 +3132,9 @@ impl TextureFormat { | Self::Rg16Sint | Self::Rg16Float => Some(4), Self::R32Uint | Self::R32Sint | Self::R32Float => Some(4), - Self::Rgb9e5Ufloat | Self::Rgb10a2Unorm | Self::Rg11b10Float => Some(4), + Self::Rgb9e5Ufloat | Self::Rgb10a2Uint | Self::Rgb10a2Unorm | Self::Rg11b10Float => { + Some(4) + } Self::Rgba16Unorm | Self::Rgba16Snorm @@ -3232,7 +3242,7 @@ impl TextureFormat { | Self::Rgba32Float => 4, Self::Rgb9e5Ufloat | Self::Rg11b10Float => 3, - Self::Rgb10a2Unorm => 4, + Self::Rgb10a2Uint | Self::Rgb10a2Unorm => 4, Self::Stencil8 | Self::Depth16Unorm | Self::Depth24Plus | Self::Depth32Float => 1, @@ -3431,6 +3441,10 @@ fn texture_format_serialize() { serde_json::to_string(&TextureFormat::Bgra8UnormSrgb).unwrap(), "\"bgra8unorm-srgb\"".to_string() ); + assert_eq!( + serde_json::to_string(&TextureFormat::Rgb10a2Uint).unwrap(), + "\"rgb10a2uint\"".to_string() + ); assert_eq!( serde_json::to_string(&TextureFormat::Rgb10a2Unorm).unwrap(), "\"rgb10a2unorm\"".to_string() @@ -3723,6 +3737,10 @@ fn texture_format_deserialize() { serde_json::from_str::("\"bgra8unorm-srgb\"").unwrap(), TextureFormat::Bgra8UnormSrgb ); + assert_eq!( + serde_json::from_str::("\"rgb10a2uint\"").unwrap(), + TextureFormat::Rgb10a2Uint + ); assert_eq!( serde_json::from_str::("\"rgb10a2unorm\"").unwrap(), TextureFormat::Rgb10a2Unorm diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index 3868a01fcd..131b18976b 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -197,6 +197,9 @@ fn map_texture_format(texture_format: wgt::TextureFormat) -> web_sys::GpuTexture TextureFormat::Bgra8UnormSrgb => tf::Bgra8unormSrgb, // Packed 32-bit formats TextureFormat::Rgb9e5Ufloat => tf::Rgb9e5ufloat, + TextureFormat::Rgb10a2Uint => { + unimplemented!("Current version of web_sys is missing {texture_format:?}") + } TextureFormat::Rgb10a2Unorm => tf::Rgb10a2unorm, TextureFormat::Rg11b10Float => tf::Rg11b10ufloat, // 64-bit formats From fd02a1272661dbb209957b91010e1d0a2f0498d6 Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Tue, 3 Oct 2023 22:16:24 +0200 Subject: [PATCH 084/135] Make GLES optional on Windows & macOS (#4185) --- CHANGELOG.md | 6 ++++++ README.md | 3 +-- player/Cargo.toml | 4 ---- wgpu-core/Cargo.toml | 1 - wgpu/Cargo.toml | 24 ++++++++++++++---------- 5 files changed, 21 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b098386472..a7e09779bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -85,6 +85,12 @@ depth_ops: Some(wgpu::Operations { By @wumpf in [#4147](https://github.com/gfx-rs/wgpu/pull/4147) +#### The GLES backend is now optional on Windows & macOS + +The `angle` feature flag has to be set for the GLES backend to be enabled on Windows & macOS. + +By @teoxoy in [#4185](https://github.com/gfx-rs/wgpu/pull/4185) + ### Added/New Features diff --git a/README.md b/README.md index 44e036a2b2..6f3fa73df9 100644 --- a/README.md +++ b/README.md @@ -95,8 +95,7 @@ We have a [wiki](https://github.com/gfx-rs/wgpu/wiki) that serves as a knowledge | Metal | | | :white_check_mark: | | DX12 | :white_check_mark: (W10+ only) | | | | DX11 | :hammer_and_wrench: | | | -| GLES3 | | :ok: | | -| Angle | :ok: | :ok: | :ok: (macOS only) | +| GLES3 | :ok: (angle) | :ok: | :ok: (angle; macOS only) | :white_check_mark: = First Class Support — :ok: = Best Effort Support — :hammer_and_wrench: = Unsupported, but support in progress diff --git a/player/Cargo.toml b/player/Cargo.toml index 5a6ea2bd7d..a379306ff8 100644 --- a/player/Cargo.toml +++ b/player/Cargo.toml @@ -10,10 +10,6 @@ keywords.workspace = true license.workspace = true publish = false -[features] -angle = ["wgc/angle"] -vulkan-portability = ["wgc/vulkan"] - [dependencies] env_logger.workspace = true log.workspace = true diff --git a/wgpu-core/Cargo.toml b/wgpu-core/Cargo.toml index 7fdec68a2f..aa1c053ede 100644 --- a/wgpu-core/Cargo.toml +++ b/wgpu-core/Cargo.toml @@ -41,7 +41,6 @@ renderdoc = ["hal/renderdoc"] # Apply run-time checks, even in release builds. These are in addition # to the validation carried out at public APIs in all builds. strict_asserts = ["wgt/strict_asserts"] -angle = ["hal/gles"] # Enable API tracing trace = ["ron", "serde", "wgt/trace", "arrayvec/serde", "naga/serialize"] # Enable API replaying diff --git a/wgpu/Cargo.toml b/wgpu/Cargo.toml index e34e90235d..d494b9c023 100644 --- a/wgpu/Cargo.toml +++ b/wgpu/Cargo.toml @@ -34,30 +34,29 @@ glsl = ["naga/glsl-in"] wgsl = ["wgc?/wgsl"] trace = ["serde", "wgc/trace"] replay = ["serde", "wgc/replay"] -angle = ["wgc/angle"] -webgl = ["hal", "wgc"] +# Enables the GLES backend on Windows & macOS +angle = ["wgc/gles"] +webgl = ["hal", "wgc/gles"] +# Enables the Vulkan backend on macOS & iOS vulkan-portability = ["wgc/vulkan"] expose-ids = [] # Implement `Send` and `Sync` on Wasm. fragile-send-sync-non-atomic-wasm = ["hal/fragile-send-sync-non-atomic-wasm", "wgc/fragile-send-sync-non-atomic-wasm", "wgt/fragile-send-sync-non-atomic-wasm"] # wgpu-core is always available as an optional dependency, "wgc". -# Whenever wgpu-core is selected, we want the GLES backend and raw -# window handle support. +# Whenever wgpu-core is selected, we want raw window handle support. [dependencies.wgc] optional = true workspace = true -features = ["raw-window-handle", "gles"] +features = ["raw-window-handle"] # wgpu-core is required whenever not targeting web APIs directly. -# Whenever wgpu-core is selected, we want the GLES backend and raw -# window handle support. +# Whenever wgpu-core is selected, we want raw window handle support. [target.'cfg(any(not(target_arch = "wasm32"), target_os = "emscripten"))'.dependencies.wgc] workspace = true -features = ["raw-window-handle", "gles"] +features = ["raw-window-handle"] # We want the wgpu-core Metal backend on macOS and iOS. -# (We should consider also enabling "vulkan" for Vulkan Portability.) [target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.wgc] workspace = true features = ["metal"] @@ -67,11 +66,16 @@ features = ["metal"] workspace = true features = ["dx11", "dx12"] -# We want the wgpu-core Vulkan backend on Unix (but not Emscripten) and Windows. +# We want the wgpu-core Vulkan backend on Unix (but not emscripten, macOS, iOS) and Windows. [target.'cfg(any(windows, all(unix, not(target_os = "emscripten"), not(target_os = "ios"), not(target_os = "macos"))))'.dependencies.wgc] workspace = true features = ["vulkan"] +# We want the wgpu-core GLES backend on Unix (but not macOS, iOS). +[target.'cfg(all(unix, not(target_os = "ios"), not(target_os = "macos")))'.dependencies.wgc] +workspace = true +features = ["gles"] + [dependencies.wgt] workspace = true From e677b1ea4312e6c305dd09dbf6e40f6fda9d3d1e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 20:19:37 +0000 Subject: [PATCH 085/135] Bump async-executor from 1.5.3 to 1.5.4 (#4186) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 60165e6b65..a4f42012a2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -130,9 +130,9 @@ dependencies = [ [[package]] name = "async-executor" -version = "1.5.3" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78f2db9467baa66a700abce2a18c5ad793f6f83310aca1284796fc3921d113fd" +checksum = "2c1da3ae8dabd9c00f453a329dfe1fb28da3c0a72e2478cdcd93171740c20499" dependencies = [ "async-lock", "async-task", From a4d733b2e6bb22dc3798e849ad29de50620352a2 Mon Sep 17 00:00:00 2001 From: Alix Bott Date: Tue, 3 Oct 2023 22:24:54 +0200 Subject: [PATCH 086/135] Fix x11 hang when resizing on vulkan (#4184) Co-authored-by: Connor Fitzgerald --- wgpu-hal/src/vulkan/instance.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/wgpu-hal/src/vulkan/instance.rs b/wgpu-hal/src/vulkan/instance.rs index 18269fff77..2dda7a2c3a 100644 --- a/wgpu-hal/src/vulkan/instance.rs +++ b/wgpu-hal/src/vulkan/instance.rs @@ -157,6 +157,12 @@ impl super::Swapchain { /// - The device must have been made idle before calling this function. unsafe fn release_resources(self, device: &ash::Device) -> Self { profiling::scope!("Swapchain::release_resources"); + { + profiling::scope!("vkDeviceWaitIdle"); + // We need to also wait until all presentation work is done. Because there is no way to portably wait until + // the presentation work is done, we are forced to wait until the device is idle. + let _ = unsafe { device.device_wait_idle() }; + }; unsafe { device.destroy_fence(self.fence, None) }; self } From 61300afd22e7152b785af31e6ef69d50de884ea1 Mon Sep 17 00:00:00 2001 From: Elabajaba Date: Tue, 3 Oct 2023 16:32:13 -0400 Subject: [PATCH 087/135] update `gpu-allocator` to 0.23 (#4198) --- CHANGELOG.md | 4 ++ Cargo.lock | 77 ++++++++++++++++++------------ Cargo.toml | 2 +- wgpu-hal/Cargo.toml | 2 +- wgpu-hal/src/dx12/suballocation.rs | 4 +- 5 files changed, 56 insertions(+), 33 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a7e09779bf..6bbfa0ec90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -118,6 +118,10 @@ By @teoxoy in [#4185](https://github.com/gfx-rs/wgpu/pull/4185) - Don't bother calling `vkFreeCommandBuffers` when `vkDestroyCommandPool` will take care of that for us. By @jimblandy in [#4059](https://github.com/gfx-rs/wgpu/pull/4059) +#### DX12 + +- Bump `gpu-allocator` to 0.23. By @Elabajaba in [#4198](https://github.com/gfx-rs/wgpu/pull/4198) + ### Documentation - Use WGSL for VertexFormat example types. By @ScanMountGoat in [#4035](https://github.com/gfx-rs/wgpu/pull/4035) diff --git a/Cargo.lock b/Cargo.lock index a4f42012a2..3c67d5ccbb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1227,12 +1227,13 @@ dependencies = [ [[package]] name = "gpu-allocator" -version = "0.22.0" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce95f9e2e11c2c6fadfce42b5af60005db06576f231f5c92550fdded43c423e8" +checksum = "40fe17c8a05d60c38c0a4e5a3c802f2f1ceb66b76c67d96ffb34bef0475a7fad" dependencies = [ "backtrace", "log", + "presser", "thiserror", "winapi", "windows", @@ -1970,7 +1971,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.1", + "windows-targets 0.48.5", ] [[package]] @@ -2098,6 +2099,12 @@ version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +[[package]] +name = "presser" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -3564,11 +3571,21 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows" -version = "0.44.0" +version = "0.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b" +checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9" dependencies = [ - "windows-targets 0.42.2", + "windows-core", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-core" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets 0.48.5", ] [[package]] @@ -3599,7 +3616,7 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.1", + "windows-targets 0.48.5", ] [[package]] @@ -3619,17 +3636,17 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.1" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.0", - "windows_aarch64_msvc 0.48.0", - "windows_i686_gnu 0.48.0", - "windows_i686_msvc 0.48.0", - "windows_x86_64_gnu 0.48.0", - "windows_x86_64_gnullvm 0.48.0", - "windows_x86_64_msvc 0.48.0", + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", ] [[package]] @@ -3640,9 +3657,9 @@ checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_msvc" @@ -3658,9 +3675,9 @@ checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_i686_gnu" @@ -3676,9 +3693,9 @@ checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_msvc" @@ -3694,9 +3711,9 @@ checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_x86_64_gnu" @@ -3712,9 +3729,9 @@ checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnullvm" @@ -3724,9 +3741,9 @@ checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_msvc" @@ -3742,9 +3759,9 @@ checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "winit" diff --git a/Cargo.toml b/Cargo.toml index d383788bc1..6c7412d265 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -108,7 +108,7 @@ android_system_properties = "0.1.1" # DX dependencies bit-set = "0.5" -gpu-allocator = { version = "0.21", default_features = false, features = ["d3d12", "windows", "public-winapi"] } +gpu-allocator = { version = "0.23", default_features = false, features = ["d3d12", "public-winapi"] } d3d12 = "0.7.0" range-alloc = "0.1" winapi = "0.3" diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index 6a289a7c00..c339c12aad 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -93,7 +93,7 @@ libloading = { version = ">=0.7, <0.9", optional = true } # backend: Dx12 bit-set = { version = "0.5", optional = true } range-alloc = { version = "0.1", optional = true } -gpu-allocator = { version = "0.22", default_features = false, features = ["d3d12", "windows", "public-winapi"], optional = true } +gpu-allocator = { version = "0.23", default_features = false, features = ["d3d12", "public-winapi"], optional = true } hassle-rs = { version = "0.10", optional = true } winapi = { version = "0.3", features = ["profileapi", "libloaderapi", "windef", "winuser", "dcomp"] } diff --git a/wgpu-hal/src/dx12/suballocation.rs b/wgpu-hal/src/dx12/suballocation.rs index 9625b2ae3a..3b9696e455 100644 --- a/wgpu-hal/src/dx12/suballocation.rs +++ b/wgpu-hal/src/dx12/suballocation.rs @@ -49,8 +49,9 @@ mod placed { let device = raw.as_ptr(); match gpu_allocator::d3d12::Allocator::new(&gpu_allocator::d3d12::AllocatorCreateDesc { - device: device.as_windows().clone(), + device: gpu_allocator::d3d12::ID3D12DeviceVersion::Device(device.as_windows().clone()), debug_settings: Default::default(), + allocation_sizes: gpu_allocator::AllocationSizes::default(), }) { Ok(allocator) => Ok(Some(Mutex::new(GpuAllocatorWrapper { allocator }))), Err(e) => { @@ -213,6 +214,7 @@ mod placed { log::error!("DX12 gpu-allocator: Internal Error: {}", e); Self::Lost } + gpu_allocator::AllocationError::BarrierLayoutNeedsDevice10 => todo!(), } } } From e63b0f6f17f84ef92890d069361add5cfbdd86c3 Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Tue, 3 Oct 2023 22:34:36 +0200 Subject: [PATCH 088/135] [vulkan] set spir-v capabilities based on downlevel flags (#4197) --- wgpu-hal/src/vulkan/adapter.rs | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/wgpu-hal/src/vulkan/adapter.rs b/wgpu-hal/src/vulkan/adapter.rs index b515628726..2986777029 100644 --- a/wgpu-hal/src/vulkan/adapter.rs +++ b/wgpu-hal/src/vulkan/adapter.rs @@ -1223,6 +1223,8 @@ impl super::Adapter { let naga_options = { use naga::back::spv; + // The following capabilities are always available + // see https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap52.html#spirvenv-capabilities let mut capabilities = vec![ spv::Capability::Shader, spv::Capability::Matrix, @@ -1230,15 +1232,23 @@ impl super::Adapter { spv::Capability::Image1D, spv::Capability::ImageQuery, spv::Capability::DerivativeControl, - spv::Capability::SampledCubeArray, - spv::Capability::SampleRateShading, - //Note: this is requested always, no matter what the actual - // adapter supports. It's not the responsibility of SPV-out - // translation to handle the storage support for formats. spv::Capability::StorageImageExtendedFormats, - //TODO: fill out the rest ]; + if self + .downlevel_flags + .contains(wgt::DownlevelFlags::CUBE_ARRAY_TEXTURES) + { + capabilities.push(spv::Capability::SampledCubeArray); + } + + if self + .downlevel_flags + .contains(wgt::DownlevelFlags::MULTISAMPLED_SHADING) + { + capabilities.push(spv::Capability::SampleRateShading); + } + if features.contains(wgt::Features::MULTIVIEW) { capabilities.push(spv::Capability::MultiView); } From 90a8feab770f3f0c7d0b27c5faa46edf5996e09c Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Tue, 3 Oct 2023 19:49:05 -0400 Subject: [PATCH 089/135] Add v0.17.* changelog (#4203) --- CHANGELOG.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6bbfa0ec90..bf05a41e37 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -170,6 +170,31 @@ By @teoxoy in [#4185](https://github.com/gfx-rs/wgpu/pull/4185) - Add an overview of `RenderPass` and how render state works. By @kpreid in [#4055](https://github.com/gfx-rs/wgpu/pull/4055) +## v0.17.2 (2023-10-03) + +### Bug Fixes + +#### Vulkan + +- Fix x11 hang while resizing on vulkan. @Azorlogh in [#4184](https://github.com/gfx-rs/wgpu/pull/4184). + +## v0.17.1 (2023-09-27) + +### Added/New Features + +- Add `get_mapped_range_as_array_buffer` for faster buffer read-backs in wasm builds. By @ryankaplan in [#4042] (https://github.com/gfx-rs/wgpu/pull/4042). + +### Bug Fixes + +#### DX12 + +- Fix panic on resize when using DX12. By @cwfitzgerald in [#4106](https://github.com/gfx-rs/wgpu/pull/4106) + +#### Vulkan + +- Suppress validation error caused by OBS layer. This was also fixed upstream. By @cwfitzgerald in [#4002](https://github.com/gfx-rs/wgpu/pull/4002) +- Work around bug in nvidia's vkCmdFillBuffer implementation. By @cwfitzgerald in [#4132](https://github.com/gfx-rs/wgpu/pull/4132). + ## v0.17.0 (2023-07-20) This is the first release that featured `wgpu-info` as a binary crate for getting information about what devices wgpu sees in your system. It can dump the information in both human readable format and json. From 93d2e5b4ba9d9ec38b378e18e698e94589f06ec2 Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Tue, 3 Oct 2023 21:03:32 -0400 Subject: [PATCH 090/135] Split MSRV in Two Parts (#4204) * Split MSRV in two parts * Use toml * Fix CI * Update names and cache hits for various jobs * Comment --- .github/workflows/ci.yml | 114 +++++++++++++++++++++---- .github/workflows/cts.yml | 7 +- Cargo.toml | 2 +- examples/timestamp-queries/src/main.rs | 2 +- rust-toolchain => rust-toolchain.toml | 2 +- wgpu-core/Cargo.toml | 6 ++ wgpu-hal/Cargo.toml | 2 +- wgpu-types/Cargo.toml | 6 ++ 8 files changed, 119 insertions(+), 22 deletions(-) rename rust-toolchain => rust-toolchain.toml (95%) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 981fcd3498..4e85c569d3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,7 +12,11 @@ env: CARGO_TERM_COLOR: always RUST_LOG: info RUST_BACKTRACE: full - MSRV: 1.65 + # This is the MSRV used by `wgpu` itself and all surrounding infrastructure. + REPO_MSRV: "1.70" + # This is the MSRV used by the `wgpu-core`, `wgpu-hal`, and `wgpu-types` crates, + # to ensure that they can be used with firefox. + CORE_MSRV: "1.65" PKG_CONFIG_ALLOW_CROSS: 1 # allow android to work RUSTFLAGS: --cfg=web_sys_unstable_apis -D warnings RUSTDOCFLAGS: -Dwarnings @@ -32,7 +36,7 @@ env: # It adds overhead to the build and another point of failure. jobs: - check-msrv: + check: strategy: fail-fast: false matrix: @@ -95,10 +99,11 @@ jobs: - name: checkout repo uses: actions/checkout@v4 - - name: Install MSRV toolchain + - name: Install Repo MSRV toolchain run: | - rustup toolchain install ${{ env.MSRV }} --no-self-update --profile=minimal --component clippy --target ${{ matrix.target }} - rustup default ${{ env.MSRV }} + rustup toolchain install ${{ env.REPO_MSRV }} --no-self-update --profile=minimal --component clippy --target ${{ matrix.target }} + rustup override set ${{ env.REPO_MSRV }} + cargo -V - name: disable debug shell: bash @@ -176,6 +181,64 @@ jobs: # build docs cargo doc --target ${{ matrix.target }} --all-features --no-deps + # We run minimal checks on the MSRV of the core crates, ensuring that + # its dependency tree does not cause issues for firefox. + # + # We don't test all platforms, just ones with different dependency stacks. + check-core-msrv: + strategy: + fail-fast: false + matrix: + include: + # Windows + - name: Windows x86_64 + os: windows-2022 + target: x86_64-pc-windows-msvc + + # MacOS + - name: MacOS x86_64 + os: macos-12 + target: x86_64-apple-darwin + + # Linux + - name: Linux x86_64 + os: ubuntu-22.04 + target: x86_64-unknown-linux-gnu + + name: MSRV Check ${{ matrix.name }} + runs-on: ${{ matrix.os }} + + steps: + - name: checkout repo + uses: actions/checkout@v4 + + - name: Install Core MSRV toolchain + run: | + rustup toolchain install ${{ env.CORE_MSRV }} --no-self-update --profile=minimal --component clippy --target ${{ matrix.target }} + rustup override set ${{ env.CORE_MSRV }} + cargo -V + + - name: disable debug + shell: bash + run: | + mkdir -p .cargo + echo """ + [profile.dev] + debug = false" >> .cargo/config.toml + + - name: caching + uses: Swatinem/rust-cache@v2 + with: + key: msrv-check-${{ matrix.target }}-${{ env.CACHE_SUFFIX }} + + - name: check native + shell: bash + run: | + set -e + + # check wgpu-core with all features. This will also get wgpu-hal and wgpu-types. + cargo check --target ${{ matrix.target }} --all-features -p wgpu-core + wasm-test: name: Test WebAssembly runs-on: ubuntu-latest @@ -183,6 +246,12 @@ jobs: - name: checkout repo uses: actions/checkout@v4 + - name: Install Repo MSRV toolchain + run: | + rustup toolchain install ${{ env.REPO_MSRV }} --no-self-update --profile=minimal --component clippy --target wasm32-unknown-unknown + rustup override set ${{ env.REPO_MSRV }} + cargo -V + - name: Install wasm-pack uses: taiki-e/install-action@v2 with: @@ -213,7 +282,6 @@ jobs: os: ubuntu-22.04 backends: vulkan gl - name: Test ${{ matrix.name }} runs-on: ${{ matrix.os }} @@ -311,6 +379,12 @@ jobs: - name: checkout repo uses: actions/checkout@v4 + - name: Install Repo MSRV toolchain + run: | + rustup toolchain install ${{ env.REPO_MSRV }} --no-self-update --profile=minimal --component rustfmt + rustup override set ${{ env.REPO_MSRV }} + cargo -V + - name: disable debug shell: bash run: | @@ -322,7 +396,7 @@ jobs: - name: caching uses: Swatinem/rust-cache@v2 with: - key: clippy-${{ matrix.target }}-${{ matrix.kind }}-${{ env.CACHE_SUFFIX }} + key: doctests-${{ env.CACHE_SUFFIX }} - name: run doctests shell: bash @@ -338,11 +412,17 @@ jobs: - name: checkout repo uses: actions/checkout@v4 + - name: Install Repo MSRV toolchain + run: | + rustup toolchain install ${{ env.REPO_MSRV }} --no-self-update --profile=minimal --component rustfmt + rustup override set ${{ env.REPO_MSRV }} + cargo -V + - name: run rustfmt run: | cargo fmt -- --check - check-msrv-cts_runner: + check-cts-runner: name: Clippy cts_runner runs-on: ubuntu-latest steps: @@ -351,8 +431,9 @@ jobs: - name: Install MSRV toolchain run: | - rustup toolchain install ${{ env.MSRV }} --no-self-update --profile=minimal --component clippy - rustup default ${{ env.MSRV }} + rustup toolchain install ${{ env.REPO_MSRV }} --no-self-update --profile=minimal --component clippy + rustup override set ${{ env.REPO_MSRV }} + cargo -V - name: disable debug shell: bash @@ -365,14 +446,17 @@ jobs: - name: caching uses: Swatinem/rust-cache@v2 with: - key: cts_runner-${{ env.CACHE_SUFFIX }} + key: cts-runner-${{ env.CACHE_SUFFIX }} - name: build Deno run: | cargo clippy --manifest-path cts_runner/Cargo.toml + # Separate job so that new advisories don't block CI. + # + # This job is not required to pass for PRs to be merged. cargo-deny-check-advisories: - name: "Run `cargo deny check advisories`" + name: "cargo-deny advisories" runs-on: ubuntu-latest steps: - name: checkout repo @@ -383,10 +467,10 @@ jobs: with: command: check advisories arguments: --all-features --workspace - rust-version: ${{ env.MSRV }} + rust-version: ${{ env.REPO_MSRV }} cargo-deny-check-rest: - name: "Run `cargo deny check`" + name: "cargo-deny" runs-on: ubuntu-latest steps: - name: checkout repo @@ -397,4 +481,4 @@ jobs: with: command: check bans licenses sources arguments: --all-features --workspace - rust-version: ${{ env.MSRV }} + rust-version: ${{ env.REPO_MSRV }} diff --git a/.github/workflows/cts.yml b/.github/workflows/cts.yml index e4bb20e7b1..35ac5b60aa 100644 --- a/.github/workflows/cts.yml +++ b/.github/workflows/cts.yml @@ -11,7 +11,7 @@ env: CARGO_INCREMENTAL: false CARGO_TERM_COLOR: always RUST_BACKTRACE: full - MSRV: 1.65 + MSRV: "1.70" jobs: cts: @@ -49,10 +49,11 @@ jobs: cd cts git checkout $(cat ../wgpu/cts_runner/revision.txt) - - name: Install MSRV toolchain + - name: Install Repo MSRV toolchain run: | rustup toolchain install ${{ env.MSRV }} --no-self-update --profile=minimal --target ${{ matrix.target }} - rustup default ${{ env.MSRV }} + rustup override set ${{ env.MSRV }} + cargo -V - name: caching uses: Swatinem/rust-cache@v2 diff --git a/Cargo.toml b/Cargo.toml index 6c7412d265..1f15a39be3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,7 +26,7 @@ default-members = [ [workspace.package] edition = "2021" -rust-version = "1.65" +rust-version = "1.70" keywords = ["graphics"] license = "MIT OR Apache-2.0" homepage = "https://wgpu.rs/" diff --git a/examples/timestamp-queries/src/main.rs b/examples/timestamp-queries/src/main.rs index d463ea6579..b3939e2811 100644 --- a/examples/timestamp-queries/src/main.rs +++ b/examples/timestamp-queries/src/main.rs @@ -141,7 +141,7 @@ impl Queries { encoder.resolve_query_set( &self.set, // TODO(https://github.com/gfx-rs/wgpu/issues/3993): Musn't be larger than the number valid queries in the set. - 0..self.next_unused_query as u32, + 0..self.next_unused_query, &self.resolve_buffer, 0, ); diff --git a/rust-toolchain b/rust-toolchain.toml similarity index 95% rename from rust-toolchain rename to rust-toolchain.toml index 0f2697d74a..03d64db162 100644 --- a/rust-toolchain +++ b/rust-toolchain.toml @@ -5,6 +5,6 @@ # to the user in the error, instead of "error: invalid channel name '[toolchain]'". [toolchain] -channel = "1.65" +channel = "1.70" components = ["rustfmt", "clippy"] targets = ["wasm32-unknown-unknown"] diff --git a/wgpu-core/Cargo.toml b/wgpu-core/Cargo.toml index aa1c053ede..6c0a3172d6 100644 --- a/wgpu-core/Cargo.toml +++ b/wgpu-core/Cargo.toml @@ -9,6 +9,12 @@ repository = "https://github.com/gfx-rs/wgpu" keywords = ["graphics"] license = "MIT OR Apache-2.0" +# Override the workspace's `rust-version` key. Firefox uses `cargo vendor` to +# copy the crates it actually uses out of the workspace, so it's meaningful for +# them to have less restrictive MSRVs individually than the workspace as a +# whole, if their code permits. See `../README.md` for details. +rust-version = "1.65" + [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index c339c12aad..acc26e0624 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -13,7 +13,7 @@ license = "MIT OR Apache-2.0" # copy the crates it actually uses out of the workspace, so it's meaningful for # them to have less restrictive MSRVs individually than the workspace as a # whole, if their code permits. See `../README.md` for details. -rust-version = "1.60" +rust-version = "1.65" [package.metadata.docs.rs] # Ideally we would enable all the features. diff --git a/wgpu-types/Cargo.toml b/wgpu-types/Cargo.toml index fd0abb0dc9..2b6c352982 100644 --- a/wgpu-types/Cargo.toml +++ b/wgpu-types/Cargo.toml @@ -9,6 +9,12 @@ repository = "https://github.com/gfx-rs/wgpu" keywords = ["graphics"] license = "MIT OR Apache-2.0" +# Override the workspace's `rust-version` key. Firefox uses `cargo vendor` to +# copy the crates it actually uses out of the workspace, so it's meaningful for +# them to have less restrictive MSRVs individually than the workspace as a +# whole, if their code permits. See `../README.md` for details. +rust-version = "1.65" + [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] From d2f8bd0eed46efd9f88e8baa3f7108df3cf9a93c Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Tue, 3 Oct 2023 22:12:52 -0400 Subject: [PATCH 091/135] Update Readme (#4206) * Update MSRV language * Some more basic readme updates --- README.md | 88 ++++++++++++++++++++++++------------------------------- 1 file changed, 38 insertions(+), 50 deletions(-) diff --git a/README.md b/README.md index 6f3fa73df9..b721db2d47 100644 --- a/README.md +++ b/README.md @@ -30,34 +30,15 @@ The following binaries: For an overview of all the components in the gfx-rs ecosystem, see [the big picture](./etc/big-picture.png). -### MSRV policy - -Minimum Supported Rust Version is **1.65**. -It is enforced on CI (in "/.github/workflows/ci.yml") with `RUST_VERSION` variable. -This version can only be upgraded in breaking releases. - -The `wgpu-core`, `wgpu-hal`, and `wgpu-types` crates should never -require an MSRV ahead of Firefox's MSRV for nightly builds, as -determined by the value of `MINIMUM_RUST_VERSION` in -[`python/mozboot/mozboot/util.py`][util]. However, Firefox uses `cargo -vendor` to extract only those crates it actually uses, so the -workspace's other crates can have more recent MSRVs. - -_Note for Rust 1.64_: The workspace itself can even use a newer MSRV -than Firefox, as long as the vendoring step's `Cargo.toml` rewriting -removes any features Firefox's MSRV couldn't handle. For example, -`wgpu` can use manifest key inheritance, added in Rust 1.64, even -before Firefox reaches that MSRV, because `cargo vendor` copies -inherited values directly into the individual crates' `Cargo.toml` -files, producing 1.63-compatible files. - -[util]: https://searchfox.org/mozilla-central/source/python/mozboot/mozboot/util.py - ## Getting Started ### Rust -Rust examples can be found at `wgpu/examples`. You can run the examples with `cargo run --bin name`. See the [list of examples](examples). For detailed instructions, look at [Running the examples](https://github.com/gfx-rs/wgpu/wiki/Running-the-examples) on the wiki. +Rust examples can be found at `wgpu/examples`. You can run the examples on native with `cargo run --bin `. See the [list of examples](examples). + +To run the examples on WebGPU on wasm, run `cargo xtask run-wasm --bin `. Then connect to `http://localhost:8000` in your WebGPU enabled browser. + +To run the examples on WebGL on wasm, run `cargo xtask run-wasm --bin --features webgl`. Then connect to `http://localhost:8000` in your WebGL enabled browser. If you are looking for a wgpu tutorial, look at the following: @@ -89,13 +70,14 @@ We have a [wiki](https://github.com/gfx-rs/wgpu/wiki) that serves as a knowledge ## Supported Platforms -| API | Windows | Linux & Android | macOS & iOS | -| ------ | ------------------------------ | ------------------ | ------------------------- | -| Vulkan | :white_check_mark: | :white_check_mark: | :ok: (vulkan-portability) | -| Metal | | | :white_check_mark: | -| DX12 | :white_check_mark: (W10+ only) | | | -| DX11 | :hammer_and_wrench: | | | -| GLES3 | :ok: (angle) | :ok: | :ok: (angle; macOS only) | +| API | Windows | Linux & Android | macOS & iOS | Web (wasm) | +| --------- | ------------------------------ | ------------------ | ------------------------- | ------------------------- | +| Vulkan | :white_check_mark: | :white_check_mark: | :ok: (vulkan-portability) | | +| Metal | | | :white_check_mark: | | +| DX12 | :white_check_mark: (W10+ only) | | | | +| DX11 | :hammer_and_wrench: | | | | +| GLES3 | :ok: (angle) | :ok: | :ok: (angle; macOS only) | :ok: (WebGL2 Only) | +| WebGPU | | | | :white_check_mark: | :white_check_mark: = First Class Support — :ok: = Best Effort Support — :hammer_and_wrench: = Unsupported, but support in progress @@ -128,6 +110,22 @@ These binaries can be downloaded from [gfbuild-angle](https://github.com/DileSof On Windows, you generally need to copy them into the working directory, in the same directory as the executable, or somewhere in your path. On Linux, you can point to them using `LD_LIBRARY_PATH` environment. +### MSRV policy + +Due to complex dependants, we have two MSRV policies: + - `wgpu-core`, `wgpu-hal`, and `wgpu-types`'s MSRV is **1.65**. + - The rest of the workspace has the MSRV of **1.70**. + +It is enforced on CI (in "/.github/workflows/ci.yml") with `CORE_MSRV` and `REPO_MSRV` variable. +This version can only be upgraded in breaking releases, though we release a breaking version every 3 months. + +The `wgpu-core`, `wgpu-hal`, and `wgpu-types` crates should never +require an MSRV ahead of Firefox's MSRV for nightly builds, as +determined by the value of `MINIMUM_RUST_VERSION` in +[`python/mozboot/mozboot/util.py`][util]. + +[util]: https://searchfox.org/mozilla-central/source/python/mozboot/mozboot/util.py + ## Environment Variables All testing and example infrastructure shares the same set of environment variables that determine which Backend/GPU it will run on. @@ -146,42 +144,32 @@ We have multiple methods of testing, each of which tests different qualities abo | Backend/Platform | Tests | CTS | Notes | | ---------------- | ------------------ | ------------------ | ------------------------------------- | -| DX12/Windows 10 | :heavy_check_mark: | :heavy_check_mark: | using WARP | +| DX12/Windows 10 | :heavy_check_mark: | - | using WARP | | DX11/Windows 10 | :construction: | — | using WARP | -| Metal/MacOS | — | — | metal requires GPU | -| Vulkan/Linux | :heavy_check_mark: | :x: | using lavapipe, [cts hangs][cts-hang] | +| Metal/MacOS | :heavy_check_mark: | — | using hardware runner | +| Vulkan/Linux | :heavy_check_mark: | - | using swiftshader | | GLES/Linux | :heavy_check_mark: | — | using llvmpipe | - -[cts-hang]: https://github.com/gfx-rs/wgpu/issues/1974 +| WebGL/Chrome | :heavy_check_mark: | — | using swiftshader | ### Core Test Infrastructure We use a tool called [`cargo nextest`](https://github.com/nextest-rs/nextest) to run our tests. To install it, run `cargo install cargo-nextest`. -To run the test suite on the default device: +To run the test suite: ``` cargo nextest run --no-fail-fast ``` -`wgpu-info` can run the tests once for each adapter on your system. +To run the test suite on WebGL (currently incomplete): ``` -cargo run --bin wgpu-info -- cargo nextest run --no-fail-fast +cd wgpu +wasm-pack test --headless --chrome --features webgl --workspace ``` -Then to run an example's image comparison tests, run: - -``` -cargo nextest run --no-fail-fast -``` - -Or run a part of the integration test suite: - -``` -cargo nextest run -p wgpu -- -``` +This will automatically run the tests using a packaged browser. Remove `--headless` to run the tests with whatever browser you wish at `http://localhost:8000`. If you are a user and want a way to help contribute to wgpu, we always need more help writing test cases. From d0a7f46e3a738247243fe6c2eb1a311d6ddd7f76 Mon Sep 17 00:00:00 2001 From: Leo Kettmeir Date: Wed, 4 Oct 2023 06:25:56 +0200 Subject: [PATCH 092/135] update deno and spec (#4143) Co-authored-by: Connor Fitzgerald --- .github/workflows/cts.yml | 2 +- Cargo.lock | 180 ++++++++---- Cargo.toml | 10 +- cts_runner/examples/hello-compute.js | 5 +- cts_runner/revision.txt | 2 +- cts_runner/src/bootstrap.js | 105 ++++++- cts_runner/src/main.rs | 33 ++- cts_runner/test.lst | 7 +- deno_webgpu/01_webgpu.js | 308 ++++++++------------- deno_webgpu/Cargo.toml | 4 + deno_webgpu/binding.rs | 37 +-- deno_webgpu/buffer.rs | 48 ++-- deno_webgpu/bundle.rs | 113 ++++---- deno_webgpu/command_encoder.rs | 203 +++++++++----- deno_webgpu/compute_pass.rs | 133 +++------ deno_webgpu/lib.rs | 72 ++--- deno_webgpu/pipeline.rs | 34 ++- deno_webgpu/queue.rs | 49 ++-- deno_webgpu/render_pass.rs | 198 +++++-------- deno_webgpu/sampler.rs | 11 +- deno_webgpu/shader.rs | 15 +- deno_webgpu/surface.rs | 20 +- deno_webgpu/texture.rs | 20 +- deno_webgpu/webgpu.idl | 43 ++- player/tests/data/clear-buffer-texture.ron | 8 +- rust-toolchain.toml | 2 +- wgpu-types/src/lib.rs | 1 + 27 files changed, 842 insertions(+), 821 deletions(-) diff --git a/.github/workflows/cts.yml b/.github/workflows/cts.yml index 35ac5b60aa..d6eb8903f5 100644 --- a/.github/workflows/cts.yml +++ b/.github/workflows/cts.yml @@ -75,7 +75,7 @@ jobs: - name: disable debug shell: bash run: | - mkdir wgpu/.cargo + mkdir -p wgpu/.cargo echo """[profile.dev] debug = 1" > wgpu/.cargo/config.toml diff --git a/Cargo.lock b/Cargo.lock index 3c67d5ccbb..07ebdffdf6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -159,9 +159,9 @@ checksum = "ecc7ab41815b3c653ccd2978ec3255c81349336702dfdf62ee6f7069b12a3aae" [[package]] name = "async-trait" -version = "0.1.71" +version = "0.1.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a564d521dd56509c4c47480d00b80ee55f7e385ae48db5744c67ad50c92d2ebf" +checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" dependencies = [ "proc-macro2", "quote", @@ -184,7 +184,7 @@ dependencies = [ "cc", "cfg-if", "libc", - "miniz_oxide 0.7.1", + "miniz_oxide", "object", "rustc-demangle", ] @@ -625,26 +625,50 @@ dependencies = [ "uuid", ] +[[package]] +name = "deno-proc-macro-rules" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c65c2ffdafc1564565200967edc4851c7b55422d3913466688907efd05ea26f" +dependencies = [ + "deno-proc-macro-rules-macros", + "proc-macro2", + "syn 2.0.28", +] + +[[package]] +name = "deno-proc-macro-rules-macros" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3047b312b7451e3190865713a4dd6e1f821aed614ada219766ebc3024a690435" +dependencies = [ + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.28", +] + [[package]] name = "deno_console" -version = "0.106.0" +version = "0.119.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86e7857cc8b133aed57e5f1dcfac6c0db308e70540727dfe0637af5281299758" +checksum = "106305c29d87aaa8030a472486074ba780dccc75c909a4f55bbac4376d8425a3" dependencies = [ "deno_core", ] [[package]] name = "deno_core" -version = "0.188.0" +version = "0.214.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83573c39d4045b6c2e056a2ad87e49c43e57b64b54ee4381894c030390fa1f76" +checksum = "be0af76effe9a766f7c9a253171ab10b9adfaf4b10c6eb0b9f005f9dd0ba2948" dependencies = [ "anyhow", "bytes", "deno_ops", + "deno_unsync", "futures", - "indexmap 1.9.3", + "indexmap 2.0.0", "libc", "log", "once_cell", @@ -662,10 +686,11 @@ dependencies = [ [[package]] name = "deno_ops" -version = "0.66.0" +version = "0.90.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0446caff6cdb14fbf6c5e85fc042e3102aa6c618fa19a2ef47b67fc2657c0e8e" +checksum = "568aba570695e05f08c2181bcd6cd3579684af42f489b9ae42712348044b4af7" dependencies = [ + "deno-proc-macro-rules", "lazy-regex", "once_cell", "pmutil", @@ -673,32 +698,45 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 1.0.109", + "strum", + "strum_macros", + "syn 2.0.28", + "thiserror", +] + +[[package]] +name = "deno_unsync" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0720e562455d6374a5292baec3fc895ed8bfed0937428e3245e50979924e5b15" +dependencies = [ + "tokio", ] [[package]] name = "deno_url" -version = "0.106.0" +version = "0.119.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eae0fa17e1fc70d8bb1f59d64a952b790afd774d3499524d7a760812eec07486" +checksum = "df3885daa41f0236c622801aa7e7b6efdff1e253fbaa941eb5087ec3e7339114" dependencies = [ "deno_core", "serde", - "serde_repr", "urlpattern", ] [[package]] name = "deno_web" -version = "0.137.0" +version = "0.150.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a10df5503ffec0b1a59541e2587f84873676d714e5d935ecc4d2792685827198" +checksum = "227c8b22e230c85a7cbc5632a6ce81959d277deabd2dfc015dda332c33b1a20d" dependencies = [ "async-trait", "base64-simd", + "bytes", "deno_core", "encoding_rs", "flate2", + "futures", "serde", "tokio", "uuid", @@ -714,14 +752,15 @@ dependencies = [ "serde", "tokio", "wgpu-core", + "wgpu-hal", "wgpu-types", ] [[package]] name = "deno_webidl" -version = "0.106.0" +version = "0.119.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "980a92f4619ace414abd464ad417ae362c7be05020009dfd4c4f1794ed21c71f" +checksum = "26983f124cb3d641d940eb2636a103f4907f02b4cd3b52e3acd8365f20a33c08" dependencies = [ "deno_core", ] @@ -782,9 +821,9 @@ checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" [[package]] name = "encoding_rs" -version = "0.8.31" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" dependencies = [ "cfg-if", ] @@ -877,12 +916,13 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.0.24" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6" +checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" dependencies = [ "crc32fast", - "miniz_oxide 0.5.4", + "libz-ng-sys", + "miniz_oxide", ] [[package]] @@ -1290,6 +1330,12 @@ dependencies = [ "winapi", ] +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + [[package]] name = "hermit-abi" version = "0.3.2" @@ -1437,9 +1483,9 @@ checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" [[package]] name = "lazy-regex" -version = "2.5.0" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff63c423c68ea6814b7da9e88ce585f793c87ddd9e78f646970891769c8235d4" +checksum = "e723bd417b2df60a0f6a2b6825f297ea04b245d4ba52b5a22cb679bdf58b05fa" dependencies = [ "lazy-regex-proc_macros", "once_cell", @@ -1448,14 +1494,14 @@ dependencies = [ [[package]] name = "lazy-regex-proc_macros" -version = "2.4.1" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8edfc11b8f56ce85e207e62ea21557cfa09bb24a8f6b04ae181b086ff8611c22" +checksum = "0f0a1d9139f0ee2e862e08a9c5d0ba0470f2aa21cd1e1aa1b1562f83116c725f" dependencies = [ "proc-macro2", "quote", "regex", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] @@ -1490,6 +1536,16 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "libz-ng-sys" +version = "1.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dd9f43e75536a46ee0f92b758f6b63846e594e86638c61a9251338a65baea63" +dependencies = [ + "cmake", + "libc", +] + [[package]] name = "linux-raw-sys" version = "0.4.3" @@ -1568,15 +1624,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" -[[package]] -name = "miniz_oxide" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34" -dependencies = [ - "adler", -] - [[package]] name = "miniz_oxide" version = "0.7.1" @@ -2056,13 +2103,13 @@ dependencies = [ [[package]] name = "pmutil" -version = "0.5.3" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3894e5d549cccbe44afecf72922f277f603cd4bb0219c8342631ef18fffbe004" +checksum = "52a40bc70c2c58040d2d8b167ba9a5ff59fc9dab7ad44771cfde3dcfde7a09c6" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] @@ -2075,7 +2122,7 @@ dependencies = [ "crc32fast", "fdeflate", "flate2", - "miniz_oxide 0.7.1", + "miniz_oxide", ] [[package]] @@ -2324,6 +2371,12 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "rustversion" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" + [[package]] name = "ryu" version = "1.0.15" @@ -2438,22 +2491,11 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_repr" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fe39d9fbb0ebf5eb2c7cb7e2a47e4f462fad1379f1166b8ae49ad9eae89a7ca" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "serde_v8" -version = "0.99.0" +version = "0.123.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abcb15f793aba70da4d29b2015c9b70943bd7f6970cab7963fcf83c19bbab1c9" +checksum = "cc3e1c4d2b20f6983e86077c66b25b8d768f2e102e09659af2af034ac47ae709" dependencies = [ "bytes", "derive_more", @@ -2566,9 +2608,9 @@ dependencies = [ [[package]] name = "sourcemap" -version = "6.3.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8df03d85f2767c45e61b4453eb6144153c80399e4fdd6407a6d16cb87cc0347" +checksum = "dbecc42a2b6131acc3bf9a25c9fe4161dba438eb52131bba83c5d781b5b70be3" dependencies = [ "data-encoding", "debugid", @@ -2608,6 +2650,28 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" +[[package]] +name = "strum" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.25.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad8d03b598d3d0fff69bf533ee3ef19b8eeb342729596df84bcc7e1f96ec4059" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.28", +] + [[package]] name = "syn" version = "1.0.109" @@ -2894,9 +2958,9 @@ dependencies = [ [[package]] name = "v8" -version = "0.72.0" +version = "0.76.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5c1d09f66ab7f69e36211c5488d47f683fef6b65b83a627cfd75ed9cef254e6" +checksum = "9d4e8ae7ef8b4e852e728e343cb6bb471a0424dfefa22585ea0c14a61252d73f" dependencies = [ "bitflags 1.3.2", "fslock", diff --git a/Cargo.toml b/Cargo.toml index 1f15a39be3..96f3f1fa67 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -129,11 +129,11 @@ wasm-bindgen-test = "0.3" web-sys = "0.3.64" # deno dependencies -deno_console = "0.106.0" -deno_core = "0.188.0" -deno_url = "0.106.0" -deno_web = "0.137.0" -deno_webidl = "0.106.0" +deno_console = "0.119.0" +deno_core = "0.214.0" +deno_url = "0.119.0" +deno_web = "0.150.0" +deno_webidl = "0.119.0" deno_webgpu = { path = "./deno_webgpu" } tokio = "1.32.0" termcolor = "1.3.0" diff --git a/cts_runner/examples/hello-compute.js b/cts_runner/examples/hello-compute.js index 5bbfa0719e..9c4023ed5e 100644 --- a/cts_runner/examples/hello-compute.js +++ b/cts_runner/examples/hello-compute.js @@ -49,13 +49,14 @@ const size = new Uint32Array(numbers).byteLength; const stagingBuffer = device.createBuffer({ size: size, - usage: 1 | 8, + usage: GPUBufferUsage.MAP_READ | GPUBufferUsage.COPY_DST, }); const storageBuffer = device.createBuffer({ label: "Storage Buffer", size: size, - usage: 0x80 | 8 | 4, + usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST | + GPUBufferUsage.COPY_SRC, mappedAtCreation: true, }); diff --git a/cts_runner/revision.txt b/cts_runner/revision.txt index b4b0529662..4e6b1d36c1 100644 --- a/cts_runner/revision.txt +++ b/cts_runner/revision.txt @@ -1 +1 @@ -a44186d9fa1d5babdb4a198e8ef04cf0d7035ebb \ No newline at end of file +7ea73ba6f44c9f6fedfffc06f14c73ea9f2eaa11 diff --git a/cts_runner/src/bootstrap.js b/cts_runner/src/bootstrap.js index 798a769262..640075e7ee 100644 --- a/cts_runner/src/bootstrap.js +++ b/cts_runner/src/bootstrap.js @@ -42,6 +42,64 @@ import "ext:deno_web/14_compression.js"; let globalThis_; +const { BadResource, Interrupted } = core; + +class NotFound extends Error { + constructor(msg) { + super(msg); + this.name = "NotFound"; + } +} + +class BrokenPipe extends Error { + constructor(msg) { + super(msg); + this.name = "BrokenPipe"; + } +} + +class AlreadyExists extends Error { + constructor(msg) { + super(msg); + this.name = "AlreadyExists"; + } +} + +class InvalidData extends Error { + constructor(msg) { + super(msg); + this.name = "InvalidData"; + } +} + +class TimedOut extends Error { + constructor(msg) { + super(msg); + this.name = "TimedOut"; + } +} + +class WriteZero extends Error { + constructor(msg) { + super(msg); + this.name = "WriteZero"; + } +} + +class UnexpectedEof extends Error { + constructor(msg) { + super(msg); + this.name = "UnexpectedEof"; + } +} + +class NotSupported extends Error { + constructor(msg) { + super(msg); + this.name = "NotSupported"; + } +} + const util = { writable(value) { return { @@ -88,7 +146,7 @@ const NavigatorPrototype = Navigator.prototype; const navigator = webidl.createBranded(Navigator); -ObjectDefineProperties(Navigator.prototype, { +ObjectDefineProperties(NavigatorPrototype, { gpu: { configurable: true, enumerable: true, @@ -108,6 +166,7 @@ const windowOrWorkerGlobalScope = { EventTarget: util.nonEnumerable(event.EventTarget), Navigator: util.nonEnumerable(Navigator), navigator: util.getterOnly(() => navigator), + MessageEvent: util.nonEnumerable(event.MessageEvent), Performance: util.nonEnumerable(performance.Performance), PerformanceEntry: util.nonEnumerable(performance.PerformanceEntry), PerformanceMark: util.nonEnumerable(performance.PerformanceMark), @@ -127,15 +186,17 @@ const windowOrWorkerGlobalScope = { GPU: util.nonEnumerable(webgpu.GPU), GPUAdapter: util.nonEnumerable(webgpu.GPUAdapter), - GPUAdapterLimits: util.nonEnumerable(webgpu.GPUAdapterLimits), + GPUAdapterInfo: util.nonEnumerable(webgpu.GPUAdapterInfo), + GPUSupportedLimits: util.nonEnumerable(webgpu.GPUSupportedLimits), GPUSupportedFeatures: util.nonEnumerable(webgpu.GPUSupportedFeatures), + GPUDeviceLostInfo: util.nonEnumerable(webgpu.GPUDeviceLostInfo), GPUDevice: util.nonEnumerable(webgpu.GPUDevice), GPUQueue: util.nonEnumerable(webgpu.GPUQueue), GPUBuffer: util.nonEnumerable(webgpu.GPUBuffer), GPUBufferUsage: util.nonEnumerable(webgpu.GPUBufferUsage), GPUMapMode: util.nonEnumerable(webgpu.GPUMapMode), - GPUTexture: util.nonEnumerable(webgpu.GPUTexture), GPUTextureUsage: util.nonEnumerable(webgpu.GPUTextureUsage), + GPUTexture: util.nonEnumerable(webgpu.GPUTexture), GPUTextureView: util.nonEnumerable(webgpu.GPUTextureView), GPUSampler: util.nonEnumerable(webgpu.GPUSampler), GPUBindGroupLayout: util.nonEnumerable(webgpu.GPUBindGroupLayout), @@ -153,8 +214,9 @@ const windowOrWorkerGlobalScope = { GPURenderBundleEncoder: util.nonEnumerable(webgpu.GPURenderBundleEncoder), GPURenderBundle: util.nonEnumerable(webgpu.GPURenderBundle), GPUQuerySet: util.nonEnumerable(webgpu.GPUQuerySet), - GPUOutOfMemoryError: util.nonEnumerable(webgpu.GPUOutOfMemoryError), + GPUError: util.nonEnumerable(webgpu.GPUError), GPUValidationError: util.nonEnumerable(webgpu.GPUValidationError), + GPUOutOfMemoryError: util.nonEnumerable(webgpu.GPUOutOfMemoryError), }; windowOrWorkerGlobalScope.console.enumerable = false; @@ -167,27 +229,54 @@ const mainRuntimeGlobalProperties = { const denoNs = { exit(code) { - core.opSync("op_exit", code); + core.ops.op_exit(code); }, readFileSync(path) { - return core.opSync("op_read_file_sync", pathFromURL(path)); + return core.ops.op_read_file_sync(pathFromURL(path)); }, readTextFileSync(path) { - const buf = core.opSync("op_read_file_sync", pathFromURL(path)); + const buf = core.ops.op_read_file_sync(pathFromURL(path)); const decoder = new TextDecoder(); return decoder.decode(buf); }, writeFileSync(path, buf) { - return core.opSync("op_write_file_sync", pathFromURL(path), buf); + return core.ops.op_write_file_sync(pathFromURL(path), buf); }, }; +core.registerErrorClass("NotFound", NotFound); +core.registerErrorClass("AlreadyExists", AlreadyExists); +core.registerErrorClass("InvalidData", InvalidData); +core.registerErrorClass("TimedOut", TimedOut); +core.registerErrorClass("Interrupted", Interrupted); +core.registerErrorClass("WriteZero", WriteZero); +core.registerErrorClass("UnexpectedEof", UnexpectedEof); +core.registerErrorClass("BadResource", BadResource); +core.registerErrorClass("NotSupported", NotSupported); core.registerErrorBuilder( "DOMExceptionOperationError", function DOMExceptionOperationError(msg) { return new DOMException(msg, "OperationError"); }, ); +core.registerErrorBuilder( + "DOMExceptionAbortError", + function DOMExceptionAbortError(msg) { + return new domException.DOMException(msg, "AbortError"); + }, +); +core.registerErrorBuilder( + "DOMExceptionInvalidCharacterError", + function DOMExceptionInvalidCharacterError(msg) { + return new domException.DOMException(msg, "InvalidCharacterError"); + }, +); +core.registerErrorBuilder( + "DOMExceptionDataError", + function DOMExceptionDataError(msg) { + return new domException.DOMException(msg, "DataError"); + }, +); let hasBootstrapped = false; diff --git a/cts_runner/src/main.rs b/cts_runner/src/main.rs index c5a70aabc1..37185e9cc4 100644 --- a/cts_runner/src/main.rs +++ b/cts_runner/src/main.rs @@ -1,5 +1,6 @@ #[cfg(not(target_arch = "wasm32"))] mod native { + use std::sync::Arc; use std::{ env, fmt, io::{Read, Write}, @@ -8,13 +9,12 @@ mod native { use deno_core::anyhow::anyhow; use deno_core::error::AnyError; - use deno_core::op; + use deno_core::op2; use deno_core::resolve_url_or_path; use deno_core::serde_json::json; use deno_core::v8; use deno_core::JsRuntime; use deno_core::RuntimeOptions; - use deno_core::ZeroCopyBuf; use deno_web::BlobStore; use termcolor::Ansi; use termcolor::Color::Red; @@ -36,7 +36,10 @@ mod native { deno_webidl::deno_webidl::init_ops_and_esm(), deno_console::deno_console::init_ops_and_esm(), deno_url::deno_url::init_ops_and_esm(), - deno_web::deno_web::init_ops_and_esm::(BlobStore::default(), None), + deno_web::deno_web::init_ops_and_esm::( + Arc::new(BlobStore::default()), + None, + ), deno_webgpu::deno_webgpu::init_ops_and_esm(true), cts_runner::init_ops_and_esm(), ], @@ -47,7 +50,7 @@ mod native { let cfg = json!({"args": args, "cwd": env::current_dir().unwrap().to_string_lossy() }); { - let context = isolate.global_context(); + let context = isolate.main_context(); let scope = &mut isolate.handle_scope(); let context_local = v8::Local::new(scope, context); let global_obj = context_local.global(scope); @@ -56,7 +59,6 @@ mod native { let bootstrap_fn = v8::Local::::try_from(bootstrap_fn).unwrap(); let options_v8 = deno_core::serde_v8::to_v8(scope, cfg).unwrap(); - let bootstrap_fn = v8::Local::new(scope, bootstrap_fn); let undefined = v8::undefined(scope); bootstrap_fn .call(scope, undefined.into(), &[options_v8]) @@ -86,28 +88,29 @@ mod native { deps = [deno_webidl, deno_web], ops = [op_exit, op_read_file_sync, op_write_file_sync], esm_entry_point = "ext:cts_runner/bootstrap.js", - esm = ["bootstrap.js"], + esm = ["src/bootstrap.js"], ); - #[op] + #[op2(fast)] fn op_exit(code: i32) -> Result<(), AnyError> { std::process::exit(code) } - #[op] - fn op_read_file_sync(path: String) -> Result { - let path = std::path::Path::new(&path); + #[op2] + #[buffer] + fn op_read_file_sync(#[string] path: &str) -> Result, AnyError> { + let path = std::path::Path::new(path); let mut file = std::fs::File::open(path)?; let mut buf = Vec::new(); file.read_to_end(&mut buf)?; - Ok(ZeroCopyBuf::from(buf)) + Ok(buf) } - #[op] - fn op_write_file_sync(path: String, buf: ZeroCopyBuf) -> Result<(), AnyError> { - let path = std::path::Path::new(&path); + #[op2(fast)] + fn op_write_file_sync(#[string] path: &str, #[buffer] buf: &[u8]) -> Result<(), AnyError> { + let path = std::path::Path::new(path); let mut file = std::fs::File::create(path)?; - file.write_all(&buf)?; + file.write_all(buf)?; Ok(()) } diff --git a/cts_runner/test.lst b/cts_runner/test.lst index f5ef47ece4..2a410aa5a0 100644 --- a/cts_runner/test.lst +++ b/cts_runner/test.lst @@ -1,11 +1,10 @@ unittests:* webgpu:api,operation,command_buffer,basic:* webgpu:api,operation,compute,basic:* -//FAIL: webgpu:api,validation,queue,copyToTexture,ImageBitmap:destination_texture,format:format="stencil8";*' webgpu:api,operation,rendering,basic:clear:* webgpu:api,operation,rendering,basic:fullscreen_quad:* -//HANG: webgpu:api,operation,rendering,basic:large_draw:* +//FAIL: webgpu:api,operation,rendering,basic:large_draw:* webgpu:api,operation,rendering,blending:* webgpu:api,operation,rendering,blending:GPUBlendComponent:* -//FAIL: webgpu:api,operation,rendering,depth:* -//FAIL: webgpu:api,operation,rendering,draw:* +webgpu:api,operation,rendering,depth:* +webgpu:api,operation,rendering,draw:* diff --git a/deno_webgpu/01_webgpu.js b/deno_webgpu/01_webgpu.js index 35d5db6b90..5d38ede30f 100644 --- a/deno_webgpu/01_webgpu.js +++ b/deno_webgpu/01_webgpu.js @@ -140,11 +140,15 @@ function normalizeGPUExtent3D(data) { if (ArrayIsArray(data)) { return { width: data[0], - height: data[1], - depthOrArrayLayers: data[2], + height: data[1] ?? 1, + depthOrArrayLayers: data[2] ?? 1, }; } else { - return data; + return { + width: data.width, + height: data.height ?? 1, + depthOrArrayLayers: data.depthOrArrayLayers ?? 1, + }; } } @@ -1019,13 +1023,13 @@ class GPUDevice extends EventTarget { for (let i = 0; i < descriptor.entries.length; ++i) { const entry = descriptor.entries[i]; - let i = 0; - if (entry.buffer) i++; - if (entry.sampler) i++; - if (entry.texture) i++; - if (entry.storageTexture) i++; + let j = 0; + if (entry.buffer) j++; + if (entry.sampler) j++; + if (entry.texture) j++; + if (entry.storageTexture) j++; - if (i !== 1) { + if (j !== 1) { throw new Error(); // TODO(@crowlKats): correct error } } @@ -2839,11 +2843,35 @@ class GPUCommandEncoder { }, ); + const occlusionQuerySet = assertResource( + descriptor.occlusionQuerySet, + { + prefix, + context: "occlusionQuerySet", + }, + ); + + let timestampWrites = null; + if (descriptor.timestampWrites) { + const querySet = assertResource(descriptor.querySet, { + prefix, + context: "querySet", + }); + + timestampWrites = { + querySet, + beginningOfPassWriteIndex: descriptor.beginningOfPassWriteIndex, + endOfPassWriteIndex: descriptor.endOfPassWriteIndex, + } + } + const { rid } = ops.op_webgpu_command_encoder_begin_render_pass( commandEncoderRid, descriptor.label, colorAttachments, depthStencilAttachment, + occlusionQuerySet, + timestampWrites, ); const renderPassEncoder = createGPURenderPassEncoder( @@ -2873,9 +2901,24 @@ class GPUCommandEncoder { context: "this", }); + let timestampWrites = null; + if (descriptor.timestampWrites) { + const querySet = assertResource(descriptor.querySet, { + prefix, + context: "querySet", + }); + + timestampWrites = { + querySet, + beginningOfPassWriteIndex: descriptor.beginningOfPassWriteIndex, + endOfPassWriteIndex: descriptor.endOfPassWriteIndex, + } + } + const { rid } = ops.op_webgpu_command_encoder_begin_compute_pass( commandEncoderRid, descriptor.label, + timestampWrites, ); const computePassEncoder = createGPUComputePassEncoder( @@ -3591,23 +3634,18 @@ class GPURenderPassEncoder { } /** - * @param {GPUQuerySet} querySet * @param {number} queryIndex */ - beginPipelineStatisticsQuery(querySet, queryIndex) { + beginOcclusionQuery(queryIndex) { webidl.assertBranded(this, GPURenderPassEncoderPrototype); const prefix = - "Failed to execute 'beginPipelineStatisticsQuery' on 'GPURenderPassEncoder'"; - webidl.requiredArguments(arguments.length, 2, { prefix }); - querySet = webidl.converters.GPUQuerySet(querySet, { - prefix, - context: "Argument 1", - }); + "Failed to execute 'beginOcclusionQuery' on 'GPUComputePassEncoder'"; + webidl.requiredArguments(arguments.length, 1, { prefix }); queryIndex = webidl.converters.GPUSize32(queryIndex, { prefix, - context: "Argument 2", + context: "Argument 1", }); - const device = assertDevice(this[_encoder], { + assertDevice(this[_encoder], { prefix, context: "encoder referenced by this", }); @@ -3616,26 +3654,16 @@ class GPURenderPassEncoder { context: "encoder referenced by this", }); const renderPassRid = assertResource(this, { prefix, context: "this" }); - const querySetRid = assertResource(querySet, { - prefix, - context: "Argument 1", - }); - assertDeviceMatch(device, querySet, { - prefix, - resourceContext: "Argument 1", - selfContext: "this", - }); - ops.op_webgpu_render_pass_begin_pipeline_statistics_query( + ops.op_webgpu_render_pass_begin_occlusion_query( renderPassRid, - querySetRid, queryIndex, ); } - endPipelineStatisticsQuery() { + endOcclusionQuery() { webidl.assertBranded(this, GPURenderPassEncoderPrototype); const prefix = - "Failed to execute 'endPipelineStatisticsQuery' on 'GPURenderPassEncoder'"; + "Failed to execute 'endOcclusionQuery' on 'GPUComputePassEncoder'"; assertDevice(this[_encoder], { prefix, context: "encoder referenced by this", @@ -3645,49 +3673,7 @@ class GPURenderPassEncoder { context: "encoder referenced by this", }); const renderPassRid = assertResource(this, { prefix, context: "this" }); - ops.op_webgpu_render_pass_end_pipeline_statistics_query(renderPassRid); - } - - /** - * @param {GPUQuerySet} querySet - * @param {number} queryIndex - */ - writeTimestamp(querySet, queryIndex) { - webidl.assertBranded(this, GPURenderPassEncoderPrototype); - const prefix = - "Failed to execute 'writeTimestamp' on 'GPURenderPassEncoder'"; - webidl.requiredArguments(arguments.length, 2, { prefix }); - querySet = webidl.converters.GPUQuerySet(querySet, { - prefix, - context: "Argument 1", - }); - queryIndex = webidl.converters.GPUSize32(queryIndex, { - prefix, - context: "Argument 2", - }); - const device = assertDevice(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - assertResource(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - const renderPassRid = assertResource(this, { prefix, context: "this" }); - const querySetRid = assertResource(querySet, { - prefix, - context: "Argument 1", - }); - assertDeviceMatch(device, querySet, { - prefix, - resourceContext: "Argument 1", - selfContext: "this", - }); - ops.op_webgpu_render_pass_write_timestamp( - renderPassRid, - querySetRid, - queryIndex, - ); + ops.op_webgpu_render_pass_end_occlusion_query(renderPassRid); } /** @@ -4346,106 +4332,6 @@ class GPUComputePassEncoder { ); } - /** - * @param {GPUQuerySet} querySet - * @param {number} queryIndex - */ - beginPipelineStatisticsQuery(querySet, queryIndex) { - webidl.assertBranded(this, GPUComputePassEncoderPrototype); - const prefix = - "Failed to execute 'beginPipelineStatisticsQuery' on 'GPUComputePassEncoder'"; - webidl.requiredArguments(arguments.length, 2, { prefix }); - querySet = webidl.converters.GPUQuerySet(querySet, { - prefix, - context: "Argument 1", - }); - queryIndex = webidl.converters.GPUSize32(queryIndex, { - prefix, - context: "Argument 2", - }); - const device = assertDevice(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - assertResource(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - const computePassRid = assertResource(this, { prefix, context: "this" }); - const querySetRid = assertResource(querySet, { - prefix, - context: "Argument 1", - }); - assertDeviceMatch(device, querySet, { - prefix, - resourceContext: "Argument 1", - selfContext: "this", - }); - ops.op_webgpu_compute_pass_begin_pipeline_statistics_query( - computePassRid, - querySetRid, - queryIndex, - ); - } - - endPipelineStatisticsQuery() { - webidl.assertBranded(this, GPUComputePassEncoderPrototype); - const prefix = - "Failed to execute 'endPipelineStatisticsQuery' on 'GPUComputePassEncoder'"; - assertDevice(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - assertResource(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - const computePassRid = assertResource(this, { prefix, context: "this" }); - ops.op_webgpu_compute_pass_end_pipeline_statistics_query(computePassRid); - } - - /** - * @param {GPUQuerySet} querySet - * @param {number} queryIndex - */ - writeTimestamp(querySet, queryIndex) { - webidl.assertBranded(this, GPUComputePassEncoderPrototype); - const prefix = - "Failed to execute 'writeTimestamp' on 'GPUComputePassEncoder'"; - webidl.requiredArguments(arguments.length, 2, { prefix }); - querySet = webidl.converters.GPUQuerySet(querySet, { - prefix, - context: "Argument 1", - }); - queryIndex = webidl.converters.GPUSize32(queryIndex, { - prefix, - context: "Argument 2", - }); - const device = assertDevice(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - assertResource(this[_encoder], { - prefix, - context: "encoder referenced by this", - }); - const computePassRid = assertResource(this, { prefix, context: "this" }); - const querySetRid = assertResource(querySet, { - prefix, - context: "Argument 1", - }); - assertDeviceMatch(device, querySet, { - prefix, - resourceContext: "Argument 1", - selfContext: "this", - }); - ops.op_webgpu_compute_pass_write_timestamp( - computePassRid, - querySetRid, - queryIndex, - ); - } - end() { webidl.assertBranded(this, GPUComputePassEncoderPrototype); const prefix = "Failed to execute 'end' on 'GPUComputePassEncoder'"; @@ -5205,7 +5091,7 @@ const GPUQuerySetPrototype = GPUQuerySet.prototype; // otherwise their converters might not be available yet. // DICTIONARY: GPUObjectDescriptorBase const dictMembersGPUObjectDescriptorBase = [ - { key: "label", converter: webidl.converters["USVString"] }, + { key: "label", converter: webidl.converters["USVString"], defaultValue: "" }, ]; webidl.converters["GPUObjectDescriptorBase"] = webidl .createDictionaryConverter( @@ -5285,7 +5171,7 @@ webidl.converters["GPUFeatureName"] = webidl.createEnumConverter( "texture-compression-astc-hdr", "texture-adapter-specific-format-features", // api - "pipeline-statistics-query", + //"pipeline-statistics-query", "timestamp-query-inside-passes", "mappable-primary-buffers", "texture-binding-array", @@ -6862,8 +6748,33 @@ webidl.converters.GPUComputePassEncoder = webidl.createInterfaceConverter( GPUComputePassEncoder.prototype, ); +// DICTIONARY: GPUComputePassTimestampWrites +webidl.converters["GPUComputePassTimestampWrites"] = webidl.createDictionaryConverter( + "GPUComputePassTimestampWrites", + [ + { + key: "querySet", + converter: webidl.converters["GPUQuerySet"], + required: true, + }, + { + key: "beginningOfPassWriteIndex", + converter: webidl.converters["GPUSize32"], + }, + { + key: "endOfPassWriteIndex", + converter: webidl.converters["GPUSize32"], + }, + ], +); + // DICTIONARY: GPUComputePassDescriptor -const dictMembersGPUComputePassDescriptor = []; +const dictMembersGPUComputePassDescriptor = [ + { + key: "timestampWrites", + converter: webidl.converters["GPUComputePassTimestampWrites"], + }, +]; webidl.converters["GPUComputePassDescriptor"] = webidl .createDictionaryConverter( "GPUComputePassDescriptor", @@ -7005,6 +6916,26 @@ webidl.converters.GPUQuerySet = webidl.createInterfaceConverter( GPUQuerySet.prototype, ); +// DICTIONARY: GPURenderPassTimestampWrites +webidl.converters["GPURenderPassTimestampWrites"] = webidl.createDictionaryConverter( + "GPURenderPassTimestampWrites", + [ + { + key: "querySet", + converter: webidl.converters["GPUQuerySet"], + required: true, + }, + { + key: "beginningOfPassWriteIndex", + converter: webidl.converters["GPUSize32"], + }, + { + key: "endOfPassWriteIndex", + converter: webidl.converters["GPUSize32"], + }, + ], +); + // DICTIONARY: GPURenderPassDescriptor const dictMembersGPURenderPassDescriptor = [ { @@ -7020,6 +6951,14 @@ const dictMembersGPURenderPassDescriptor = [ key: "depthStencilAttachment", converter: webidl.converters["GPURenderPassDepthStencilAttachment"], }, + { + key: "occlusionQuerySet", + converter: webidl.converters["GPUQuerySet"], + }, + { + key: "timestampWrites", + converter: webidl.converters["GPURenderPassTimestampWrites"], + }, ]; webidl.converters["GPURenderPassDescriptor"] = webidl .createDictionaryConverter( @@ -7109,23 +7048,10 @@ webidl.converters["GPUQueryType"] = webidl.createEnumConverter( "GPUQueryType", [ "occlusion", - "pipeline-statistics", "timestamp", ], ); -// ENUM: GPUPipelineStatisticName -webidl.converters["GPUPipelineStatisticName"] = webidl.createEnumConverter( - "GPUPipelineStatisticName", - [ - "vertex-shader-invocations", - "clipper-invocations", - "clipper-primitives-out", - "fragment-shader-invocations", - "compute-shader-invocations", - ], -); - // DICTIONARY: GPUQuerySetDescriptor const dictMembersGPUQuerySetDescriptor = [ { diff --git a/deno_webgpu/Cargo.toml b/deno_webgpu/Cargo.toml index df758a1d9c..bbc5b13f29 100644 --- a/deno_webgpu/Cargo.toml +++ b/deno_webgpu/Cargo.toml @@ -39,6 +39,10 @@ features = ["metal"] workspace = true features = ["dx11", "dx12"] +[target.'cfg(windows)'.dependencies.wgpu-hal] +path = "../wgpu-hal" +features = ["windows_rs"] + # We want the wgpu-core Vulkan backend on Unix (but not Emscripten) and Windows. [target.'cfg(any(windows, all(unix, not(target_os = "emscripten"))))'.dependencies.wgpu-core] workspace = true diff --git a/deno_webgpu/binding.rs b/deno_webgpu/binding.rs index 9ecb3f5143..5d582e900f 100644 --- a/deno_webgpu/binding.rs +++ b/deno_webgpu/binding.rs @@ -1,7 +1,7 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -176,12 +176,13 @@ impl From for wgpu_types::BindingType { } } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_bind_group_layout( state: &mut OpState, - device_rid: ResourceId, - label: Option, - entries: Vec, + #[smi] device_rid: ResourceId, + #[string] label: Cow, + #[serde] entries: Vec, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -202,7 +203,7 @@ pub fn op_webgpu_create_bind_group_layout( .collect::>(); let descriptor = wgpu_core::binding_model::BindGroupLayoutDescriptor { - label: label.map(Cow::from), + label: Some(label), entries: Cow::from(entries), }; @@ -213,12 +214,13 @@ pub fn op_webgpu_create_bind_group_layout( ) => state, WebGpuBindGroupLayout) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_pipeline_layout( state: &mut OpState, - device_rid: ResourceId, - label: Option, - bind_group_layouts: Vec, + #[smi] device_rid: ResourceId, + #[string] label: Cow, + #[serde] bind_group_layouts: Vec, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -235,7 +237,7 @@ pub fn op_webgpu_create_pipeline_layout( .collect::, AnyError>>()?; let descriptor = wgpu_core::binding_model::PipelineLayoutDescriptor { - label: label.map(Cow::from), + label: Some(label), bind_group_layouts: Cow::from(bind_group_layouts), push_constant_ranges: Default::default(), }; @@ -257,13 +259,14 @@ pub struct GpuBindGroupEntry { size: Option, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_bind_group( state: &mut OpState, - device_rid: ResourceId, - label: Option, - layout: ResourceId, - entries: Vec, + #[smi] device_rid: ResourceId, + #[string] label: Cow, + #[smi] layout: ResourceId, + #[serde] entries: Vec, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -313,7 +316,7 @@ pub fn op_webgpu_create_bind_group( let bind_group_layout = state.resource_table.get::(layout)?; let descriptor = wgpu_core::binding_model::BindGroupDescriptor { - label: label.map(Cow::from), + label: Some(label), layout: bind_group_layout.1, entries: Cow::from(entries), }; diff --git a/deno_webgpu/buffer.rs b/deno_webgpu/buffer.rs index 7c5f9d58c2..03f088f8d1 100644 --- a/deno_webgpu/buffer.rs +++ b/deno_webgpu/buffer.rs @@ -3,14 +3,12 @@ use deno_core::error::type_error; use deno_core::error::AnyError; use deno_core::futures::channel::oneshot; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; -use deno_core::ZeroCopyBuf; use std::borrow::Cow; use std::cell::RefCell; -use std::convert::TryFrom; use std::rc::Rc; use std::time::Duration; use wgpu_core::resource::BufferAccessResult; @@ -40,12 +38,13 @@ impl Resource for WebGpuBufferMapped { } } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_buffer( state: &mut OpState, - device_rid: ResourceId, - label: Option, - size: u64, + #[smi] device_rid: ResourceId, + #[string] label: Cow, + #[number] size: u64, usage: u32, mapped_at_creation: bool, ) -> Result { @@ -56,7 +55,7 @@ pub fn op_webgpu_create_buffer( let device = device_resource.1; let descriptor = wgpu_core::resource::BufferDescriptor { - label: label.map(Cow::from), + label: Some(label), size, usage: wgpu_types::BufferUsages::from_bits(usage) .ok_or_else(|| type_error("usage is not valid"))?, @@ -70,14 +69,15 @@ pub fn op_webgpu_create_buffer( ) => state, WebGpuBuffer) } -#[op] +#[op2(async)] +#[serde] pub async fn op_webgpu_buffer_get_map_async( state: Rc>, - buffer_rid: ResourceId, - device_rid: ResourceId, + #[smi] buffer_rid: ResourceId, + #[smi] device_rid: ResourceId, mode: u32, - offset: u64, - size: u64, + #[number] offset: u64, + #[number] size: u64, ) -> Result { let (sender, receiver) = oneshot::channel::(); @@ -143,13 +143,14 @@ pub async fn op_webgpu_buffer_get_map_async( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_buffer_get_mapped_range( state: &mut OpState, - buffer_rid: ResourceId, - offset: u64, - size: Option, - mut buf: ZeroCopyBuf, + #[smi] buffer_rid: ResourceId, + #[number] offset: u64, + #[number] size: Option, + #[buffer] buf: &mut [u8], ) -> Result { let instance = state.borrow::(); let buffer_resource = state.resource_table.get::(buffer_rid)?; @@ -172,12 +173,13 @@ pub fn op_webgpu_buffer_get_mapped_range( Ok(WebGpuResult::rid(rid)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_buffer_unmap( state: &mut OpState, - buffer_rid: ResourceId, - mapped_rid: ResourceId, - buf: Option, + #[smi] buffer_rid: ResourceId, + #[smi] mapped_rid: ResourceId, + #[buffer] buf: Option<&[u8]>, ) -> Result { let mapped_resource = state .resource_table @@ -188,7 +190,7 @@ pub fn op_webgpu_buffer_unmap( if let Some(buf) = buf { let slice = unsafe { std::slice::from_raw_parts_mut(mapped_resource.0, mapped_resource.1) }; - slice.copy_from_slice(&buf); + slice.copy_from_slice(buf); } gfx_ok!(buffer => instance.buffer_unmap(buffer)) diff --git a/deno_webgpu/bundle.rs b/deno_webgpu/bundle.rs index bcb321f497..b053cf265c 100644 --- a/deno_webgpu/bundle.rs +++ b/deno_webgpu/bundle.rs @@ -2,11 +2,10 @@ use deno_core::error::type_error; use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; -use deno_core::ZeroCopyBuf; use serde::Deserialize; use std::borrow::Cow; use std::cell::RefCell; @@ -40,7 +39,7 @@ impl Resource for WebGpuRenderBundle { #[serde(rename_all = "camelCase")] pub struct CreateRenderBundleEncoderArgs { device_rid: ResourceId, - label: Option, + label: String, color_formats: Vec>, depth_stencil_format: Option, sample_count: u32, @@ -48,10 +47,11 @@ pub struct CreateRenderBundleEncoderArgs { stencil_read_only: bool, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_render_bundle_encoder( state: &mut OpState, - args: CreateRenderBundleEncoderArgs, + #[serde] args: CreateRenderBundleEncoderArgs, ) -> Result { let device_resource = state .resource_table @@ -67,7 +67,7 @@ pub fn op_webgpu_create_render_bundle_encoder( }); let descriptor = wgpu_core::command::RenderBundleEncoderDescriptor { - label: args.label.map(Cow::from), + label: Some(Cow::Owned(args.label)), color_formats: Cow::from(args.color_formats), sample_count: args.sample_count, depth_stencil, @@ -92,11 +92,12 @@ pub fn op_webgpu_create_render_bundle_encoder( Ok(WebGpuResult::rid_err(rid, maybe_err)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_finish( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, - label: Option, + #[smi] render_bundle_encoder_rid: ResourceId, + #[string] label: Cow, ) -> Result { let render_bundle_encoder_resource = state .resource_table @@ -111,21 +112,22 @@ pub fn op_webgpu_render_bundle_encoder_finish( gfx_put!(render_bundle_encoder.parent() => instance.render_bundle_encoder_finish( render_bundle_encoder, &wgpu_core::command::RenderBundleDescriptor { - label: label.map(Cow::from), + label: Some(label), }, () ) => state, WebGpuRenderBundle) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_set_bind_group( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, + #[smi] render_bundle_encoder_rid: ResourceId, index: u32, - bind_group: ResourceId, - dynamic_offsets_data: ZeroCopyBuf, - dynamic_offsets_data_start: usize, - dynamic_offsets_data_length: usize, + #[smi] bind_group: ResourceId, + #[buffer] dynamic_offsets_data: &[u32], + #[number] dynamic_offsets_data_start: usize, + #[number] dynamic_offsets_data_length: usize, ) -> Result { let bind_group_resource = state .resource_table @@ -134,14 +136,6 @@ pub fn op_webgpu_render_bundle_encoder_set_bind_group( .resource_table .get::(render_bundle_encoder_rid)?; - // Align the data - assert!(dynamic_offsets_data.len() % std::mem::size_of::() == 0); - // SAFETY: A u8 to u32 cast is safe because we asserted that the length is a - // multiple of 4. - let (prefix, dynamic_offsets_data, suffix) = unsafe { dynamic_offsets_data.align_to::() }; - assert!(prefix.is_empty()); - assert!(suffix.is_empty()); - let start = dynamic_offsets_data_start; let len = dynamic_offsets_data_length; @@ -149,7 +143,7 @@ pub fn op_webgpu_render_bundle_encoder_set_bind_group( assert!(start <= dynamic_offsets_data.len()); assert!(len <= dynamic_offsets_data.len() - start); - let dynamic_offsets_data: &[u32] = &dynamic_offsets_data[start..start + len]; + let dynamic_offsets_data = &dynamic_offsets_data[start..start + len]; // SAFETY: the raw pointer and length are of the same slice, and that slice // lives longer than the below function invocation. @@ -166,11 +160,12 @@ pub fn op_webgpu_render_bundle_encoder_set_bind_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_push_debug_group( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, - group_label: String, + #[smi] render_bundle_encoder_rid: ResourceId, + #[string] group_label: &str, ) -> Result { let render_bundle_encoder_resource = state .resource_table @@ -189,10 +184,11 @@ pub fn op_webgpu_render_bundle_encoder_push_debug_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_pop_debug_group( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, + #[smi] render_bundle_encoder_rid: ResourceId, ) -> Result { let render_bundle_encoder_resource = state .resource_table @@ -205,11 +201,12 @@ pub fn op_webgpu_render_bundle_encoder_pop_debug_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_insert_debug_marker( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, - marker_label: String, + #[smi] render_bundle_encoder_rid: ResourceId, + #[string] marker_label: &str, ) -> Result { let render_bundle_encoder_resource = state .resource_table @@ -228,11 +225,12 @@ pub fn op_webgpu_render_bundle_encoder_insert_debug_marker( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_set_pipeline( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, - pipeline: ResourceId, + #[smi] render_bundle_encoder_rid: ResourceId, + #[smi] pipeline: ResourceId, ) -> Result { let render_pipeline_resource = state .resource_table @@ -249,14 +247,15 @@ pub fn op_webgpu_render_bundle_encoder_set_pipeline( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_set_index_buffer( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, - buffer: ResourceId, - index_format: wgpu_types::IndexFormat, - offset: u64, - size: u64, + #[smi] render_bundle_encoder_rid: ResourceId, + #[smi] buffer: ResourceId, + #[serde] index_format: wgpu_types::IndexFormat, + #[number] offset: u64, + #[number] size: u64, ) -> Result { let buffer_resource = state .resource_table @@ -276,14 +275,15 @@ pub fn op_webgpu_render_bundle_encoder_set_index_buffer( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_set_vertex_buffer( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, + #[smi] render_bundle_encoder_rid: ResourceId, slot: u32, - buffer: ResourceId, - offset: u64, - size: Option, + #[smi] buffer: ResourceId, + #[number] offset: u64, + #[number] size: Option, ) -> Result { let buffer_resource = state .resource_table @@ -311,10 +311,11 @@ pub fn op_webgpu_render_bundle_encoder_set_vertex_buffer( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_draw( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, + #[smi] render_bundle_encoder_rid: ResourceId, vertex_count: u32, instance_count: u32, first_vertex: u32, @@ -335,10 +336,11 @@ pub fn op_webgpu_render_bundle_encoder_draw( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_draw_indexed( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, + #[smi] render_bundle_encoder_rid: ResourceId, index_count: u32, instance_count: u32, first_index: u32, @@ -361,12 +363,13 @@ pub fn op_webgpu_render_bundle_encoder_draw_indexed( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_bundle_encoder_draw_indirect( state: &mut OpState, - render_bundle_encoder_rid: ResourceId, - indirect_buffer: ResourceId, - indirect_offset: u64, + #[smi] render_bundle_encoder_rid: ResourceId, + #[smi] indirect_buffer: ResourceId, + #[number] indirect_offset: u64, ) -> Result { let buffer_resource = state .resource_table diff --git a/deno_webgpu/command_encoder.rs b/deno_webgpu/command_encoder.rs index 4857b0a7a7..60de26eaf9 100644 --- a/deno_webgpu/command_encoder.rs +++ b/deno_webgpu/command_encoder.rs @@ -1,7 +1,8 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. +use crate::WebGpuQuerySet; use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -44,11 +45,12 @@ impl Resource for WebGpuCommandBuffer { } } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_command_encoder( state: &mut OpState, - device_rid: ResourceId, - label: Option, + #[smi] device_rid: ResourceId, + #[string] label: Cow, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -56,9 +58,7 @@ pub fn op_webgpu_create_command_encoder( .get::(device_rid)?; let device = device_resource.1; - let descriptor = wgpu_types::CommandEncoderDescriptor { - label: label.map(Cow::from), - }; + let descriptor = wgpu_types::CommandEncoderDescriptor { label: Some(label) }; gfx_put!(device => instance.device_create_command_encoder( device, @@ -91,14 +91,24 @@ pub struct GpuRenderPassDepthStencilAttachment { stencil_read_only: bool, } -#[op] +#[derive(Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct GPURenderPassTimestampWrites { + query_set: ResourceId, + beginning_of_pass_write_index: Option, + end_of_pass_write_index: Option, +} + +#[op2] +#[serde] pub fn op_webgpu_command_encoder_begin_render_pass( state: &mut OpState, - command_encoder_rid: ResourceId, - label: Option, - color_attachments: Vec>, - depth_stencil_attachment: Option, - occlusion_query_set: Option, + #[smi] command_encoder_rid: ResourceId, + #[string] label: Cow, + #[serde] color_attachments: Vec>, + #[serde] depth_stencil_attachment: Option, + #[smi] occlusion_query_set: Option, + #[serde] timestamp_writes: Option, ) -> Result { let command_encoder_resource = state .resource_table @@ -172,16 +182,31 @@ pub fn op_webgpu_command_encoder_begin_render_pass( }); } + let timestamp_writes = if let Some(timestamp_writes) = timestamp_writes { + let query_set_resource = state + .resource_table + .get::(timestamp_writes.query_set)?; + let query_set = query_set_resource.1; + + Some(wgpu_core::command::RenderPassTimestampWrites { + query_set, + beginning_of_pass_write_index: timestamp_writes.beginning_of_pass_write_index, + end_of_pass_write_index: timestamp_writes.end_of_pass_write_index, + }) + } else { + None + }; + let occlusion_query_set_resource = occlusion_query_set - .map(|rid| state.resource_table.get::(rid)) + .map(|rid| state.resource_table.get::(rid)) .transpose()? .map(|query_set| query_set.1); let descriptor = wgpu_core::command::RenderPassDescriptor { - label: label.map(Cow::from), + label: Some(label), color_attachments: Cow::from(color_attachments), depth_stencil_attachment: processed_depth_stencil_attachment.as_ref(), - timestamp_writes: None, + timestamp_writes: timestamp_writes.as_ref(), occlusion_query_set: occlusion_query_set_resource, }; @@ -196,19 +221,44 @@ pub fn op_webgpu_command_encoder_begin_render_pass( Ok(WebGpuResult::rid(rid)) } -#[op] +#[derive(Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct GPUComputePassTimestampWrites { + query_set: ResourceId, + beginning_of_pass_write_index: Option, + end_of_pass_write_index: Option, +} + +#[op2] +#[serde] pub fn op_webgpu_command_encoder_begin_compute_pass( state: &mut OpState, - command_encoder_rid: ResourceId, - label: Option, + #[smi] command_encoder_rid: ResourceId, + #[string] label: Cow, + #[serde] timestamp_writes: Option, ) -> Result { let command_encoder_resource = state .resource_table .get::(command_encoder_rid)?; + let timestamp_writes = if let Some(timestamp_writes) = timestamp_writes { + let query_set_resource = state + .resource_table + .get::(timestamp_writes.query_set)?; + let query_set = query_set_resource.1; + + Some(wgpu_core::command::ComputePassTimestampWrites { + query_set, + beginning_of_pass_write_index: timestamp_writes.beginning_of_pass_write_index, + end_of_pass_write_index: timestamp_writes.end_of_pass_write_index, + }) + } else { + None + }; + let descriptor = wgpu_core::command::ComputePassDescriptor { - label: label.map(Cow::from), - timestamp_writes: None, + label: Some(label), + timestamp_writes: timestamp_writes.as_ref(), }; let compute_pass = @@ -223,15 +273,16 @@ pub fn op_webgpu_command_encoder_begin_compute_pass( Ok(WebGpuResult::rid(rid)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_copy_buffer_to_buffer( state: &mut OpState, - command_encoder_rid: ResourceId, - source: ResourceId, - source_offset: u64, - destination: ResourceId, - destination_offset: u64, - size: u64, + #[smi] command_encoder_rid: ResourceId, + #[smi] source: ResourceId, + #[number] source_offset: u64, + #[smi] destination: ResourceId, + #[number] destination_offset: u64, + #[number] size: u64, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -275,13 +326,14 @@ pub struct GpuImageCopyTexture { pub aspect: wgpu_types::TextureAspect, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_copy_buffer_to_texture( state: &mut OpState, - command_encoder_rid: ResourceId, - source: GpuImageCopyBuffer, - destination: GpuImageCopyTexture, - copy_size: wgpu_types::Extent3d, + #[smi] command_encoder_rid: ResourceId, + #[serde] source: GpuImageCopyBuffer, + #[serde] destination: GpuImageCopyTexture, + #[serde] copy_size: wgpu_types::Extent3d, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -317,13 +369,14 @@ pub fn op_webgpu_command_encoder_copy_buffer_to_texture( )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_copy_texture_to_buffer( state: &mut OpState, - command_encoder_rid: ResourceId, - source: GpuImageCopyTexture, - destination: GpuImageCopyBuffer, - copy_size: wgpu_types::Extent3d, + #[smi] command_encoder_rid: ResourceId, + #[serde] source: GpuImageCopyTexture, + #[serde] destination: GpuImageCopyBuffer, + #[serde] copy_size: wgpu_types::Extent3d, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -359,13 +412,14 @@ pub fn op_webgpu_command_encoder_copy_texture_to_buffer( )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_copy_texture_to_texture( state: &mut OpState, - command_encoder_rid: ResourceId, - source: GpuImageCopyTexture, - destination: GpuImageCopyTexture, - copy_size: wgpu_types::Extent3d, + #[smi] command_encoder_rid: ResourceId, + #[serde] source: GpuImageCopyTexture, + #[serde] destination: GpuImageCopyTexture, + #[serde] copy_size: wgpu_types::Extent3d, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -399,13 +453,14 @@ pub fn op_webgpu_command_encoder_copy_texture_to_texture( )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_clear_buffer( state: &mut OpState, - command_encoder_rid: u32, - buffer_rid: u32, - offset: u64, - size: u64, + #[smi] command_encoder_rid: ResourceId, + #[smi] buffer_rid: ResourceId, + #[number] offset: u64, + #[number] size: u64, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -424,11 +479,12 @@ pub fn op_webgpu_command_encoder_clear_buffer( )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_push_debug_group( state: &mut OpState, - command_encoder_rid: ResourceId, - group_label: String, + #[smi] command_encoder_rid: ResourceId, + #[string] group_label: &str, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -436,13 +492,14 @@ pub fn op_webgpu_command_encoder_push_debug_group( .get::(command_encoder_rid)?; let command_encoder = command_encoder_resource.1; - gfx_ok!(command_encoder => instance.command_encoder_push_debug_group(command_encoder, &group_label)) + gfx_ok!(command_encoder => instance.command_encoder_push_debug_group(command_encoder, group_label)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_pop_debug_group( state: &mut OpState, - command_encoder_rid: ResourceId, + #[smi] command_encoder_rid: ResourceId, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -453,11 +510,12 @@ pub fn op_webgpu_command_encoder_pop_debug_group( gfx_ok!(command_encoder => instance.command_encoder_pop_debug_group(command_encoder)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_insert_debug_marker( state: &mut OpState, - command_encoder_rid: ResourceId, - marker_label: String, + #[smi] command_encoder_rid: ResourceId, + #[string] marker_label: &str, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -467,15 +525,16 @@ pub fn op_webgpu_command_encoder_insert_debug_marker( gfx_ok!(command_encoder => instance.command_encoder_insert_debug_marker( command_encoder, - &marker_label + marker_label )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_write_timestamp( state: &mut OpState, - command_encoder_rid: ResourceId, - query_set: ResourceId, + #[smi] command_encoder_rid: ResourceId, + #[smi] query_set: ResourceId, query_index: u32, ) -> Result { let instance = state.borrow::(); @@ -494,15 +553,16 @@ pub fn op_webgpu_command_encoder_write_timestamp( )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_resolve_query_set( state: &mut OpState, - command_encoder_rid: ResourceId, - query_set: ResourceId, + #[smi] command_encoder_rid: ResourceId, + #[smi] query_set: ResourceId, first_query: u32, query_count: u32, - destination: ResourceId, - destination_offset: u64, + #[smi] destination: ResourceId, + #[number] destination_offset: u64, ) -> Result { let instance = state.borrow::(); let command_encoder_resource = state @@ -526,11 +586,12 @@ pub fn op_webgpu_command_encoder_resolve_query_set( )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_command_encoder_finish( state: &mut OpState, - command_encoder_rid: ResourceId, - label: Option, + #[smi] command_encoder_rid: ResourceId, + #[string] label: Cow, ) -> Result { let command_encoder_resource = state .resource_table @@ -538,9 +599,7 @@ pub fn op_webgpu_command_encoder_finish( let command_encoder = command_encoder_resource.1; let instance = state.borrow::(); - let descriptor = wgpu_types::CommandBufferDescriptor { - label: label.map(Cow::from), - }; + let descriptor = wgpu_types::CommandBufferDescriptor { label: Some(label) }; let (val, maybe_err) = gfx_select!(command_encoder => instance.command_encoder_finish( command_encoder, diff --git a/deno_webgpu/compute_pass.rs b/deno_webgpu/compute_pass.rs index cc70146917..e1c9e29193 100644 --- a/deno_webgpu/compute_pass.rs +++ b/deno_webgpu/compute_pass.rs @@ -1,11 +1,10 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; -use deno_core::ZeroCopyBuf; use std::borrow::Cow; use std::cell::RefCell; @@ -18,11 +17,12 @@ impl Resource for WebGpuComputePass { } } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_set_pipeline( state: &mut OpState, - compute_pass_rid: ResourceId, - pipeline: ResourceId, + #[smi] compute_pass_rid: ResourceId, + #[smi] pipeline: ResourceId, ) -> Result { let compute_pipeline_resource = state .resource_table @@ -39,10 +39,11 @@ pub fn op_webgpu_compute_pass_set_pipeline( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_dispatch_workgroups( state: &mut OpState, - compute_pass_rid: ResourceId, + #[smi] compute_pass_rid: ResourceId, x: u32, y: u32, z: u32, @@ -61,12 +62,13 @@ pub fn op_webgpu_compute_pass_dispatch_workgroups( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_dispatch_workgroups_indirect( state: &mut OpState, - compute_pass_rid: ResourceId, - indirect_buffer: ResourceId, - indirect_offset: u64, + #[smi] compute_pass_rid: ResourceId, + #[smi] indirect_buffer: ResourceId, + #[number] indirect_offset: u64, ) -> Result { let buffer_resource = state .resource_table @@ -84,73 +86,12 @@ pub fn op_webgpu_compute_pass_dispatch_workgroups_indirect( Ok(WebGpuResult::empty()) } -#[op] -pub fn op_webgpu_compute_pass_begin_pipeline_statistics_query( - state: &mut OpState, - compute_pass_rid: ResourceId, - query_set: ResourceId, - query_index: u32, -) -> Result { - let compute_pass_resource = state - .resource_table - .get::(compute_pass_rid)?; - let query_set_resource = state - .resource_table - .get::(query_set)?; - - wgpu_core::command::compute_ffi::wgpu_compute_pass_begin_pipeline_statistics_query( - &mut compute_pass_resource.0.borrow_mut(), - query_set_resource.1, - query_index, - ); - - Ok(WebGpuResult::empty()) -} - -#[op] -pub fn op_webgpu_compute_pass_end_pipeline_statistics_query( - state: &mut OpState, - compute_pass_rid: ResourceId, -) -> Result { - let compute_pass_resource = state - .resource_table - .get::(compute_pass_rid)?; - - wgpu_core::command::compute_ffi::wgpu_compute_pass_end_pipeline_statistics_query( - &mut compute_pass_resource.0.borrow_mut(), - ); - - Ok(WebGpuResult::empty()) -} - -#[op] -pub fn op_webgpu_compute_pass_write_timestamp( - state: &mut OpState, - compute_pass_rid: ResourceId, - query_set: ResourceId, - query_index: u32, -) -> Result { - let compute_pass_resource = state - .resource_table - .get::(compute_pass_rid)?; - let query_set_resource = state - .resource_table - .get::(query_set)?; - - wgpu_core::command::compute_ffi::wgpu_compute_pass_write_timestamp( - &mut compute_pass_resource.0.borrow_mut(), - query_set_resource.1, - query_index, - ); - - Ok(WebGpuResult::empty()) -} - -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_end( state: &mut OpState, - command_encoder_rid: ResourceId, - compute_pass_rid: ResourceId, + #[smi] command_encoder_rid: ResourceId, + #[smi] compute_pass_rid: ResourceId, ) -> Result { let command_encoder_resource = state @@ -169,15 +110,16 @@ pub fn op_webgpu_compute_pass_end( )) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_set_bind_group( state: &mut OpState, - compute_pass_rid: ResourceId, + #[smi] compute_pass_rid: ResourceId, index: u32, - bind_group: ResourceId, - dynamic_offsets_data: ZeroCopyBuf, - dynamic_offsets_data_start: usize, - dynamic_offsets_data_length: usize, + #[smi] bind_group: ResourceId, + #[buffer] dynamic_offsets_data: &[u32], + #[number] dynamic_offsets_data_start: usize, + #[number] dynamic_offsets_data_length: usize, ) -> Result { let bind_group_resource = state .resource_table @@ -186,14 +128,6 @@ pub fn op_webgpu_compute_pass_set_bind_group( .resource_table .get::(compute_pass_rid)?; - // Align the data - assert!(dynamic_offsets_data_start % std::mem::size_of::() == 0); - // SAFETY: A u8 to u32 cast is safe because we asserted that the length is a - // multiple of 4. - let (prefix, dynamic_offsets_data, suffix) = unsafe { dynamic_offsets_data.align_to::() }; - assert!(prefix.is_empty()); - assert!(suffix.is_empty()); - let start = dynamic_offsets_data_start; let len = dynamic_offsets_data_length; @@ -218,11 +152,12 @@ pub fn op_webgpu_compute_pass_set_bind_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_push_debug_group( state: &mut OpState, - compute_pass_rid: ResourceId, - group_label: String, + #[smi] compute_pass_rid: ResourceId, + #[string] group_label: &str, ) -> Result { let compute_pass_resource = state .resource_table @@ -242,10 +177,11 @@ pub fn op_webgpu_compute_pass_push_debug_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_pop_debug_group( state: &mut OpState, - compute_pass_rid: ResourceId, + #[smi] compute_pass_rid: ResourceId, ) -> Result { let compute_pass_resource = state .resource_table @@ -258,11 +194,12 @@ pub fn op_webgpu_compute_pass_pop_debug_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pass_insert_debug_marker( state: &mut OpState, - compute_pass_rid: ResourceId, - marker_label: String, + #[smi] compute_pass_rid: ResourceId, + #[string] marker_label: &str, ) -> Result { let compute_pass_resource = state .resource_table diff --git a/deno_webgpu/lib.rs b/deno_webgpu/lib.rs index bf61e42517..27ff0680c3 100644 --- a/deno_webgpu/lib.rs +++ b/deno_webgpu/lib.rs @@ -3,7 +3,7 @@ #![warn(unsafe_op_in_unsafe_fn)] use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -12,7 +12,6 @@ use serde::Serialize; use std::borrow::Cow; use std::cell::RefCell; use std::collections::HashSet; -use std::convert::TryFrom; use std::rc::Rc; pub use wgpu_core; pub use wgpu_types; @@ -181,9 +180,8 @@ deno_core::extension!( render_pass::op_webgpu_render_pass_set_scissor_rect, render_pass::op_webgpu_render_pass_set_blend_constant, render_pass::op_webgpu_render_pass_set_stencil_reference, - render_pass::op_webgpu_render_pass_begin_pipeline_statistics_query, - render_pass::op_webgpu_render_pass_end_pipeline_statistics_query, - render_pass::op_webgpu_render_pass_write_timestamp, + render_pass::op_webgpu_render_pass_begin_occlusion_query, + render_pass::op_webgpu_render_pass_end_occlusion_query, render_pass::op_webgpu_render_pass_execute_bundles, render_pass::op_webgpu_render_pass_end, render_pass::op_webgpu_render_pass_set_bind_group, @@ -200,9 +198,6 @@ deno_core::extension!( compute_pass::op_webgpu_compute_pass_set_pipeline, compute_pass::op_webgpu_compute_pass_dispatch_workgroups, compute_pass::op_webgpu_compute_pass_dispatch_workgroups_indirect, - compute_pass::op_webgpu_compute_pass_begin_pipeline_statistics_query, - compute_pass::op_webgpu_compute_pass_end_pipeline_statistics_query, - compute_pass::op_webgpu_compute_pass_write_timestamp, compute_pass::op_webgpu_compute_pass_end, compute_pass::op_webgpu_compute_pass_set_bind_group, compute_pass::op_webgpu_compute_pass_push_debug_group, @@ -388,10 +383,11 @@ pub struct GpuAdapterDevice { is_software: bool, } -#[op] +#[op2(async)] +#[serde] pub async fn op_webgpu_request_adapter( state: Rc>, - power_preference: Option, + #[serde] power_preference: Option, force_fallback_adapter: bool, ) -> Result { let mut state = state.borrow_mut(); @@ -637,13 +633,14 @@ impl From for wgpu_types::Features { } } -#[op] +#[op2(async)] +#[serde] pub async fn op_webgpu_request_device( state: Rc>, - adapter_rid: ResourceId, - label: Option, - required_features: GpuRequiredFeatures, - required_limits: Option, + #[smi] adapter_rid: ResourceId, + #[string] label: String, + #[serde] required_features: GpuRequiredFeatures, + #[serde] required_limits: Option, ) -> Result { let mut state = state.borrow_mut(); let adapter_resource = state.resource_table.get::(adapter_rid)?; @@ -651,7 +648,7 @@ pub async fn op_webgpu_request_device( let instance = state.borrow::(); let descriptor = wgpu_types::DeviceDescriptor { - label: label.map(Cow::from), + label: Some(Cow::Owned(label)), features: required_features.into(), limits: required_limits.unwrap_or_default(), }; @@ -691,10 +688,11 @@ pub struct GPUAdapterInfo { description: String, } -#[op] +#[op2(async)] +#[serde] pub async fn op_webgpu_request_adapter_info( state: Rc>, - adapter_rid: ResourceId, + #[smi] adapter_rid: ResourceId, ) -> Result { let state = state.borrow_mut(); let adapter_resource = state.resource_table.get::(adapter_rid)?; @@ -715,7 +713,7 @@ pub async fn op_webgpu_request_adapter_info( #[serde(rename_all = "camelCase")] pub struct CreateQuerySetArgs { device_rid: ResourceId, - label: Option, + label: String, #[serde(flatten)] r#type: GpuQueryType, count: u32, @@ -725,10 +723,6 @@ pub struct CreateQuerySetArgs { #[serde(rename_all = "kebab-case", tag = "type")] enum GpuQueryType { Occlusion, - #[serde(rename_all = "camelCase")] - PipelineStatistics { - pipeline_statistics: HashSet, - }, Timestamp, } @@ -736,47 +730,23 @@ impl From for wgpu_types::QueryType { fn from(query_type: GpuQueryType) -> Self { match query_type { GpuQueryType::Occlusion => wgpu_types::QueryType::Occlusion, - GpuQueryType::PipelineStatistics { - pipeline_statistics, - } => { - use wgpu_types::PipelineStatisticsTypes; - - let mut types = PipelineStatisticsTypes::empty(); - - if pipeline_statistics.contains("vertex-shader-invocations") { - types.set(PipelineStatisticsTypes::VERTEX_SHADER_INVOCATIONS, true); - } - if pipeline_statistics.contains("clipper-invocations") { - types.set(PipelineStatisticsTypes::CLIPPER_INVOCATIONS, true); - } - if pipeline_statistics.contains("clipper-primitives-out") { - types.set(PipelineStatisticsTypes::CLIPPER_PRIMITIVES_OUT, true); - } - if pipeline_statistics.contains("fragment-shader-invocations") { - types.set(PipelineStatisticsTypes::FRAGMENT_SHADER_INVOCATIONS, true); - } - if pipeline_statistics.contains("compute-shader-invocations") { - types.set(PipelineStatisticsTypes::COMPUTE_SHADER_INVOCATIONS, true); - } - - wgpu_types::QueryType::PipelineStatistics(types) - } GpuQueryType::Timestamp => wgpu_types::QueryType::Timestamp, } } } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_query_set( state: &mut OpState, - args: CreateQuerySetArgs, + #[serde] args: CreateQuerySetArgs, ) -> Result { let device_resource = state.resource_table.get::(args.device_rid)?; let device = device_resource.1; let instance = state.borrow::(); let descriptor = wgpu_types::QuerySetDescriptor { - label: args.label.map(Cow::from), + label: Some(Cow::Owned(args.label)), ty: args.r#type.into(), count: args.count, }; diff --git a/deno_webgpu/pipeline.rs b/deno_webgpu/pipeline.rs index 13589df2da..e0555b9d1e 100644 --- a/deno_webgpu/pipeline.rs +++ b/deno_webgpu/pipeline.rs @@ -1,7 +1,7 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -81,13 +81,14 @@ pub struct GpuProgrammableStage { // constants: HashMap } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_compute_pipeline( state: &mut OpState, - device_rid: ResourceId, - label: Option, - layout: GPUPipelineLayoutOrGPUAutoLayoutMode, - compute: GpuProgrammableStage, + #[smi] device_rid: ResourceId, + #[string] label: Cow, + #[serde] layout: GPUPipelineLayoutOrGPUAutoLayoutMode, + #[serde] compute: GpuProgrammableStage, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -108,7 +109,7 @@ pub fn op_webgpu_create_compute_pipeline( .get::(compute.module)?; let descriptor = wgpu_core::pipeline::ComputePipelineDescriptor { - label: label.map(Cow::from), + label: Some(label), layout: pipeline_layout, stage: wgpu_core::pipeline::ProgrammableStageDescriptor { module: compute_shader_module_resource.1, @@ -148,10 +149,11 @@ pub struct PipelineLayout { err: Option, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_compute_pipeline_get_bind_group_layout( state: &mut OpState, - compute_pipeline_rid: ResourceId, + #[smi] compute_pipeline_rid: ResourceId, index: u32, ) -> Result { let instance = state.borrow::(); @@ -314,7 +316,7 @@ struct GpuFragmentState { #[serde(rename_all = "camelCase")] pub struct CreateRenderPipelineArgs { device_rid: ResourceId, - label: Option, + label: String, layout: GPUPipelineLayoutOrGPUAutoLayoutMode, vertex: GpuVertexState, primitive: GpuPrimitiveState, @@ -323,10 +325,11 @@ pub struct CreateRenderPipelineArgs { fragment: Option, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_render_pipeline( state: &mut OpState, - args: CreateRenderPipelineArgs, + #[serde] args: CreateRenderPipelineArgs, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -372,7 +375,7 @@ pub fn op_webgpu_create_render_pipeline( .collect(); let descriptor = wgpu_core::pipeline::RenderPipelineDescriptor { - label: args.label.map(Cow::Owned), + label: Some(Cow::Owned(args.label)), layout, vertex: wgpu_core::pipeline::VertexState { stage: wgpu_core::pipeline::ProgrammableStageDescriptor { @@ -412,10 +415,11 @@ pub fn op_webgpu_create_render_pipeline( Ok(WebGpuResult::rid_err(rid, maybe_err)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pipeline_get_bind_group_layout( state: &mut OpState, - render_pipeline_rid: ResourceId, + #[smi] render_pipeline_rid: ResourceId, index: u32, ) -> Result { let instance = state.borrow::(); diff --git a/deno_webgpu/queue.rs b/deno_webgpu/queue.rs index 2845990776..1f6258935f 100644 --- a/deno_webgpu/queue.rs +++ b/deno_webgpu/queue.rs @@ -1,21 +1,23 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. +use crate::command_encoder::WebGpuCommandBuffer; use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; +use deno_core::Resource; use deno_core::ResourceId; -use deno_core::ZeroCopyBuf; use serde::Deserialize; use super::error::WebGpuResult; type WebGpuQueue = super::WebGpuDevice; -#[op] +#[op2] +#[serde] pub fn op_webgpu_queue_submit( state: &mut OpState, - queue_rid: ResourceId, - command_buffers: Vec, + #[smi] queue_rid: ResourceId, + #[serde] command_buffers: Vec, ) -> Result { let instance = state.borrow::(); let queue_resource = state.resource_table.get::(queue_rid)?; @@ -24,9 +26,7 @@ pub fn op_webgpu_queue_submit( let ids = command_buffers .iter() .map(|rid| { - let buffer_resource = state - .resource_table - .get::(*rid)?; + let buffer_resource = state.resource_table.get::(*rid)?; let mut id = buffer_resource.1.borrow_mut(); Ok(id.take().unwrap()) }) @@ -35,7 +35,8 @@ pub fn op_webgpu_queue_submit( let maybe_err = gfx_select!(queue => instance.queue_submit(queue, &ids)).err(); for rid in command_buffers { - state.resource_table.close(rid)?; + let resource = state.resource_table.take::(rid)?; + resource.close(); } Ok(WebGpuResult::maybe_err(maybe_err)) @@ -59,15 +60,16 @@ impl From for wgpu_types::ImageDataLayout { } } -#[op] +#[op2] +#[serde] pub fn op_webgpu_write_buffer( state: &mut OpState, - queue_rid: ResourceId, - buffer: ResourceId, - buffer_offset: u64, - data_offset: usize, - size: Option, - buf: ZeroCopyBuf, + #[smi] queue_rid: ResourceId, + #[smi] buffer: ResourceId, + #[number] buffer_offset: u64, + #[number] data_offset: usize, + #[number] size: Option, + #[buffer] buf: &[u8], ) -> Result { let instance = state.borrow::(); let buffer_resource = state @@ -92,14 +94,15 @@ pub fn op_webgpu_write_buffer( Ok(WebGpuResult::maybe_err(maybe_err)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_write_texture( state: &mut OpState, - queue_rid: ResourceId, - destination: super::command_encoder::GpuImageCopyTexture, - data_layout: GpuImageDataLayout, - size: wgpu_types::Extent3d, - buf: ZeroCopyBuf, + #[smi] queue_rid: ResourceId, + #[serde] destination: super::command_encoder::GpuImageCopyTexture, + #[serde] data_layout: GpuImageDataLayout, + #[serde] size: wgpu_types::Extent3d, + #[buffer] buf: &[u8], ) -> Result { let instance = state.borrow::(); let texture_resource = state @@ -119,7 +122,7 @@ pub fn op_webgpu_write_texture( gfx_ok!(queue => instance.queue_write_texture( queue, &destination, - &*buf, + buf, &data_layout, &size )) diff --git a/deno_webgpu/render_pass.rs b/deno_webgpu/render_pass.rs index 678990ea3d..47b98c91fd 100644 --- a/deno_webgpu/render_pass.rs +++ b/deno_webgpu/render_pass.rs @@ -2,11 +2,10 @@ use deno_core::error::type_error; use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; -use deno_core::ZeroCopyBuf; use serde::Deserialize; use std::borrow::Cow; use std::cell::RefCell; @@ -32,10 +31,11 @@ pub struct RenderPassSetViewportArgs { max_depth: f32, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_viewport( state: &mut OpState, - args: RenderPassSetViewportArgs, + #[serde] args: RenderPassSetViewportArgs, ) -> Result { let render_pass_resource = state .resource_table @@ -54,10 +54,11 @@ pub fn op_webgpu_render_pass_set_viewport( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_scissor_rect( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, x: u32, y: u32, width: u32, @@ -78,11 +79,12 @@ pub fn op_webgpu_render_pass_set_scissor_rect( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_blend_constant( state: &mut OpState, - render_pass_rid: ResourceId, - color: wgpu_types::Color, + #[smi] render_pass_rid: ResourceId, + #[serde] color: wgpu_types::Color, ) -> Result { let render_pass_resource = state .resource_table @@ -96,10 +98,11 @@ pub fn op_webgpu_render_pass_set_blend_constant( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_stencil_reference( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, reference: u32, ) -> Result { let render_pass_resource = state @@ -114,10 +117,11 @@ pub fn op_webgpu_render_pass_set_stencil_reference( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_begin_occlusion_query( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, query_index: u32, ) -> Result { let render_pass_resource = state @@ -132,10 +136,11 @@ pub fn op_webgpu_render_pass_begin_occlusion_query( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_end_occlusion_query( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, ) -> Result { let render_pass_resource = state .resource_table @@ -148,73 +153,12 @@ pub fn op_webgpu_render_pass_end_occlusion_query( Ok(WebGpuResult::empty()) } -#[op] -pub fn op_webgpu_render_pass_begin_pipeline_statistics_query( - state: &mut OpState, - render_pass_rid: ResourceId, - query_set: u32, - query_index: u32, -) -> Result { - let render_pass_resource = state - .resource_table - .get::(render_pass_rid)?; - let query_set_resource = state - .resource_table - .get::(query_set)?; - - wgpu_core::command::render_ffi::wgpu_render_pass_begin_pipeline_statistics_query( - &mut render_pass_resource.0.borrow_mut(), - query_set_resource.1, - query_index, - ); - - Ok(WebGpuResult::empty()) -} - -#[op] -pub fn op_webgpu_render_pass_end_pipeline_statistics_query( - state: &mut OpState, - render_pass_rid: ResourceId, -) -> Result { - let render_pass_resource = state - .resource_table - .get::(render_pass_rid)?; - - wgpu_core::command::render_ffi::wgpu_render_pass_end_pipeline_statistics_query( - &mut render_pass_resource.0.borrow_mut(), - ); - - Ok(WebGpuResult::empty()) -} - -#[op] -pub fn op_webgpu_render_pass_write_timestamp( - state: &mut OpState, - render_pass_rid: ResourceId, - query_set: u32, - query_index: u32, -) -> Result { - let render_pass_resource = state - .resource_table - .get::(render_pass_rid)?; - let query_set_resource = state - .resource_table - .get::(query_set)?; - - wgpu_core::command::render_ffi::wgpu_render_pass_write_timestamp( - &mut render_pass_resource.0.borrow_mut(), - query_set_resource.1, - query_index, - ); - - Ok(WebGpuResult::empty()) -} - -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_execute_bundles( state: &mut OpState, - render_pass_rid: ResourceId, - bundles: Vec, + #[smi] render_pass_rid: ResourceId, + #[serde] bundles: Vec, ) -> Result { let bundles = bundles .iter() @@ -243,11 +187,12 @@ pub fn op_webgpu_render_pass_execute_bundles( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_end( state: &mut OpState, - command_encoder_rid: ResourceId, - render_pass_rid: ResourceId, + #[smi] command_encoder_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, ) -> Result { let command_encoder_resource = state @@ -263,15 +208,16 @@ pub fn op_webgpu_render_pass_end( gfx_ok!(command_encoder => instance.command_encoder_run_render_pass(command_encoder, render_pass)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_bind_group( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, index: u32, bind_group: u32, - dynamic_offsets_data: ZeroCopyBuf, - dynamic_offsets_data_start: usize, - dynamic_offsets_data_length: usize, + #[buffer] dynamic_offsets_data: &[u32], + #[number] dynamic_offsets_data_start: usize, + #[number] dynamic_offsets_data_length: usize, ) -> Result { let bind_group_resource = state .resource_table @@ -280,14 +226,6 @@ pub fn op_webgpu_render_pass_set_bind_group( .resource_table .get::(render_pass_rid)?; - // Align the data - assert_eq!(dynamic_offsets_data_start % std::mem::size_of::(), 0); - // SAFETY: A u8 to u32 cast is safe because we asserted that the length is a - // multiple of 4. - let (prefix, dynamic_offsets_data, suffix) = unsafe { dynamic_offsets_data.align_to::() }; - assert!(prefix.is_empty()); - assert!(suffix.is_empty()); - let start = dynamic_offsets_data_start; let len = dynamic_offsets_data_length; @@ -312,11 +250,12 @@ pub fn op_webgpu_render_pass_set_bind_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_push_debug_group( state: &mut OpState, - render_pass_rid: ResourceId, - group_label: String, + #[smi] render_pass_rid: ResourceId, + #[string] group_label: &str, ) -> Result { let render_pass_resource = state .resource_table @@ -336,10 +275,11 @@ pub fn op_webgpu_render_pass_push_debug_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_pop_debug_group( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, ) -> Result { let render_pass_resource = state .resource_table @@ -352,11 +292,12 @@ pub fn op_webgpu_render_pass_pop_debug_group( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_insert_debug_marker( state: &mut OpState, - render_pass_rid: ResourceId, - marker_label: String, + #[smi] render_pass_rid: ResourceId, + #[string] marker_label: &str, ) -> Result { let render_pass_resource = state .resource_table @@ -376,10 +317,11 @@ pub fn op_webgpu_render_pass_insert_debug_marker( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_pipeline( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, pipeline: u32, ) -> Result { let render_pipeline_resource = state @@ -397,14 +339,15 @@ pub fn op_webgpu_render_pass_set_pipeline( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_index_buffer( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, buffer: u32, - index_format: wgpu_types::IndexFormat, - offset: u64, - size: Option, + #[serde] index_format: wgpu_types::IndexFormat, + #[number] offset: u64, + #[number] size: Option, ) -> Result { let buffer_resource = state .resource_table @@ -432,14 +375,15 @@ pub fn op_webgpu_render_pass_set_index_buffer( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_set_vertex_buffer( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, slot: u32, buffer: u32, - offset: u64, - size: Option, + #[number] offset: u64, + #[number] size: Option, ) -> Result { let buffer_resource = state .resource_table @@ -468,10 +412,11 @@ pub fn op_webgpu_render_pass_set_vertex_buffer( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_draw( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, vertex_count: u32, instance_count: u32, first_vertex: u32, @@ -492,10 +437,11 @@ pub fn op_webgpu_render_pass_draw( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_draw_indexed( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, index_count: u32, instance_count: u32, first_index: u32, @@ -518,12 +464,13 @@ pub fn op_webgpu_render_pass_draw_indexed( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_draw_indirect( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, indirect_buffer: u32, - indirect_offset: u64, + #[number] indirect_offset: u64, ) -> Result { let buffer_resource = state .resource_table @@ -541,12 +488,13 @@ pub fn op_webgpu_render_pass_draw_indirect( Ok(WebGpuResult::empty()) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_render_pass_draw_indexed_indirect( state: &mut OpState, - render_pass_rid: ResourceId, + #[smi] render_pass_rid: ResourceId, indirect_buffer: u32, - indirect_offset: u64, + #[number] indirect_offset: u64, ) -> Result { let buffer_resource = state .resource_table diff --git a/deno_webgpu/sampler.rs b/deno_webgpu/sampler.rs index d064ba2ebe..6f9b66ad4d 100644 --- a/deno_webgpu/sampler.rs +++ b/deno_webgpu/sampler.rs @@ -1,7 +1,7 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -30,7 +30,7 @@ impl Resource for WebGpuSampler { #[serde(rename_all = "camelCase")] pub struct CreateSamplerArgs { device_rid: ResourceId, - label: Option, + label: String, address_mode_u: wgpu_types::AddressMode, address_mode_v: wgpu_types::AddressMode, address_mode_w: wgpu_types::AddressMode, @@ -43,10 +43,11 @@ pub struct CreateSamplerArgs { max_anisotropy: u16, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_sampler( state: &mut OpState, - args: CreateSamplerArgs, + #[serde] args: CreateSamplerArgs, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -55,7 +56,7 @@ pub fn op_webgpu_create_sampler( let device = device_resource.1; let descriptor = wgpu_core::resource::SamplerDescriptor { - label: args.label.map(Cow::from), + label: Some(Cow::Owned(args.label)), address_modes: [ args.address_mode_u, args.address_mode_v, diff --git a/deno_webgpu/shader.rs b/deno_webgpu/shader.rs index fb4f316926..f7cce24281 100644 --- a/deno_webgpu/shader.rs +++ b/deno_webgpu/shader.rs @@ -1,7 +1,7 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -25,12 +25,13 @@ impl Resource for WebGpuShaderModule { } } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_shader_module( state: &mut OpState, - device_rid: ResourceId, - label: Option, - code: String, + #[smi] device_rid: ResourceId, + #[string] label: Cow, + #[string] code: Cow, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -38,10 +39,10 @@ pub fn op_webgpu_create_shader_module( .get::(device_rid)?; let device = device_resource.1; - let source = wgpu_core::pipeline::ShaderModuleSource::Wgsl(Cow::from(code)); + let source = wgpu_core::pipeline::ShaderModuleSource::Wgsl(code); let descriptor = wgpu_core::pipeline::ShaderModuleDescriptor { - label: label.map(Cow::from), + label: Some(label), shader_bound_checks: wgpu_types::ShaderBoundChecks::default(), }; diff --git a/deno_webgpu/surface.rs b/deno_webgpu/surface.rs index 8f797f12a5..1ac9d8704d 100644 --- a/deno_webgpu/surface.rs +++ b/deno_webgpu/surface.rs @@ -2,7 +2,7 @@ use super::WebGpuResult; use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -51,10 +51,11 @@ pub struct SurfaceConfigureArgs { view_formats: Vec, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_surface_configure( state: &mut OpState, - args: SurfaceConfigureArgs, + #[serde] args: SurfaceConfigureArgs, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -81,11 +82,12 @@ pub fn op_webgpu_surface_configure( Ok(WebGpuResult::maybe_err(err)) } -#[op] +#[op2] +#[serde] pub fn op_webgpu_surface_get_current_texture( state: &mut OpState, - device_rid: ResourceId, - surface_rid: ResourceId, + #[smi] device_rid: ResourceId, + #[smi] surface_rid: ResourceId, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -111,11 +113,11 @@ pub fn op_webgpu_surface_get_current_texture( } } -#[op] +#[op2(fast)] pub fn op_webgpu_surface_present( state: &mut OpState, - device_rid: ResourceId, - surface_rid: ResourceId, + #[smi] device_rid: ResourceId, + #[smi] surface_rid: ResourceId, ) -> Result<(), AnyError> { let instance = state.borrow::(); let device_resource = state diff --git a/deno_webgpu/texture.rs b/deno_webgpu/texture.rs index 92c8457071..5eadd5b3c2 100644 --- a/deno_webgpu/texture.rs +++ b/deno_webgpu/texture.rs @@ -1,7 +1,7 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. use deno_core::error::AnyError; -use deno_core::op; +use deno_core::op2; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; @@ -48,7 +48,7 @@ impl Resource for WebGpuTextureView { #[serde(rename_all = "camelCase")] pub struct CreateTextureArgs { device_rid: ResourceId, - label: Option, + label: String, size: wgpu_types::Extent3d, mip_level_count: u32, sample_count: u32, @@ -58,10 +58,11 @@ pub struct CreateTextureArgs { view_formats: Vec, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_texture( state: &mut OpState, - args: CreateTextureArgs, + #[serde] args: CreateTextureArgs, ) -> Result { let instance = state.borrow::(); let device_resource = state @@ -70,7 +71,7 @@ pub fn op_webgpu_create_texture( let device = device_resource.1; let descriptor = wgpu_core::resource::TextureDescriptor { - label: args.label.map(Cow::from), + label: Some(Cow::Owned(args.label)), size: args.size, mip_level_count: args.mip_level_count, sample_count: args.sample_count, @@ -99,17 +100,18 @@ pub fn op_webgpu_create_texture( #[serde(rename_all = "camelCase")] pub struct CreateTextureViewArgs { texture_rid: ResourceId, - label: Option, + label: String, format: Option, dimension: Option, #[serde(flatten)] range: wgpu_types::ImageSubresourceRange, } -#[op] +#[op2] +#[serde] pub fn op_webgpu_create_texture_view( state: &mut OpState, - args: CreateTextureViewArgs, + #[serde] args: CreateTextureViewArgs, ) -> Result { let instance = state.borrow::(); let texture_resource = state @@ -118,7 +120,7 @@ pub fn op_webgpu_create_texture_view( let texture = texture_resource.id; let descriptor = wgpu_core::resource::TextureViewDescriptor { - label: args.label.map(Cow::from), + label: Some(Cow::Owned(args.label)), format: args.format, dimension: args.dimension, range: args.range, diff --git a/deno_webgpu/webgpu.idl b/deno_webgpu/webgpu.idl index f2fea59c9f..59b0547db4 100644 --- a/deno_webgpu/webgpu.idl +++ b/deno_webgpu/webgpu.idl @@ -3,7 +3,7 @@ interface mixin GPUObjectBase { }; dictionary GPUObjectDescriptorBase { - USVString label; + USVString label = ""; }; [Exposed=(Window, DedicatedWorker), SecureContext] @@ -563,7 +563,8 @@ interface GPUPipelineLayout { }; GPUPipelineLayout includes GPUObjectBase; -dictionary GPUPipelineLayoutDescriptor : GPUObjectDescriptorBase { +dictionary GPUPipelineLayoutDescriptor + : GPUObjectDescriptorBase { required sequence bindGroupLayouts; }; @@ -572,7 +573,8 @@ interface GPUShaderModule { }; GPUShaderModule includes GPUObjectBase; -dictionary GPUShaderModuleDescriptor : GPUObjectDescriptorBase { +dictionary GPUShaderModuleDescriptor + : GPUObjectDescriptorBase { required USVString code; }; @@ -935,11 +937,6 @@ interface GPUComputePassEncoder { undefined dispatchWorkgroups(GPUSize32 workgroupCountX, optional GPUSize32 workgroupCountY = 1, optional GPUSize32 workgroupCountZ = 1); undefined dispatchWorkgroupsIndirect(GPUBuffer indirectBuffer, GPUSize64 indirectOffset); - undefined beginPipelineStatisticsQuery(GPUQuerySet querySet, GPUSize32 queryIndex); - undefined endPipelineStatisticsQuery(); - - undefined writeTimestamp(GPUQuerySet querySet, GPUSize32 queryIndex); - undefined end(); }; GPUComputePassEncoder includes GPUObjectBase; @@ -947,8 +944,15 @@ GPUComputePassEncoder includes GPUCommandsMixin; GPUComputePassEncoder includes GPUDebugCommandsMixin; GPUComputePassEncoder includes GPUBindingCommandsMixin; +dictionary GPUComputePassTimestampWrites { + required GPUQuerySet querySet; + GPUSize32 beginningOfPassWriteIndex; + GPUSize32 endOfPassWriteIndex; +}; + dictionary GPUComputePassDescriptor : GPUObjectDescriptorBase { + GPUComputePassTimestampWrites timestampWrites; }; [Exposed=(Window, DedicatedWorker), SecureContext] @@ -963,10 +967,8 @@ interface GPURenderPassEncoder { undefined setBlendConstant(GPUColor color); undefined setStencilReference(GPUStencilValue reference); - undefined beginPipelineStatisticsQuery(GPUQuerySet querySet, GPUSize32 queryIndex); - undefined endPipelineStatisticsQuery(); - - undefined writeTimestamp(GPUQuerySet querySet, GPUSize32 queryIndex); + undefined beginOcclusionQuery(GPUSize32 queryIndex); + undefined endOcclusionQuery(); undefined executeBundles(sequence bundles); undefined end(); @@ -977,11 +979,18 @@ GPURenderPassEncoder includes GPUDebugCommandsMixin; GPURenderPassEncoder includes GPUBindingCommandsMixin; GPURenderPassEncoder includes GPURenderCommandsMixin; +dictionary GPURenderPassTimestampWrites { + required GPUQuerySet querySet; + GPUSize32 beginningOfPassWriteIndex; + GPUSize32 endOfPassWriteIndex; +}; + dictionary GPURenderPassDescriptor : GPUObjectDescriptorBase { required sequence colorAttachments; GPURenderPassDepthStencilAttachment depthStencilAttachment; GPUQuerySet occlusionQuerySet; + GPURenderPassTimestampWrites timestampWrites; }; dictionary GPURenderPassColorAttachment { @@ -1100,23 +1109,13 @@ dictionary GPUQuerySetDescriptor : GPUObjectDescriptorBase { required GPUQueryType type; required GPUSize32 count; - sequence pipelineStatistics = []; }; enum GPUQueryType { "occlusion", - "pipeline-statistics", "timestamp", }; -enum GPUPipelineStatisticName { - "vertex-shader-invocations", - "clipper-invocations", - "clipper-primitives-out", - "fragment-shader-invocations", - "compute-shader-invocations", -}; - [Exposed=(Window, DedicatedWorker), SecureContext] interface GPUCanvasContext { readonly attribute (HTMLCanvasElement or OffscreenCanvas) canvas; diff --git a/player/tests/data/clear-buffer-texture.ron b/player/tests/data/clear-buffer-texture.ron index c6879e31da..39b541cd22 100644 --- a/player/tests/data/clear-buffer-texture.ron +++ b/player/tests/data/clear-buffer-texture.ron @@ -85,10 +85,10 @@ dst: Id(0, 1, Empty), subresource_range: ImageSubresourceRange( aspect: all, - base_mip_level: 0, - mip_level_count: None, - base_array_layer: 0, - array_layer_count: None, + baseMipLevel: 0, + mipLevelCount: None, + baseArrayLayer: 0, + arrayLayerCount: None, ), ), CopyTextureToBuffer( diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 03d64db162..e2a6039dba 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -5,6 +5,6 @@ # to the user in the error, instead of "error: invalid channel name '[toolchain]'". [toolchain] -channel = "1.70" +channel = "1.70" # Needed for deno & cts_runner. Firefox's MSRV is 1.65 components = ["rustfmt", "clippy"] targets = ["wasm32-unknown-unknown"] diff --git a/wgpu-types/src/lib.rs b/wgpu-types/src/lib.rs index 26cf8ccbc0..3352e58eff 100644 --- a/wgpu-types/src/lib.rs +++ b/wgpu-types/src/lib.rs @@ -6147,6 +6147,7 @@ impl ImageCopyTextureTagged { #[derive(Clone, Copy, Debug, Default, Eq, PartialEq)] #[cfg_attr(feature = "trace", derive(serde::Serialize))] #[cfg_attr(feature = "replay", derive(serde::Deserialize))] +#[cfg_attr(feature = "serde", serde(rename_all = "camelCase"))] pub struct ImageSubresourceRange { /// Aspect of the texture. Color textures must be [`TextureAspect::All`][TAA]. /// From 32b761a591b677013fdb20aafd3dab64e4604f5f Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Wed, 4 Oct 2023 11:12:19 +0200 Subject: [PATCH 093/135] Implement a missing part of bind group layout deduplication (#4200) * Don't create a raw bind group layout for duplicates. * Fully support bind group layout deduplication in Pipeline::get_bind_group_layout --------- Co-authored-by: Connor Fitzgerald --- wgpu-core/src/binding_model.rs | 54 ++++++++++++++++++++----- wgpu-core/src/command/bind.rs | 2 +- wgpu-core/src/device/global.rs | 53 ++++++++++++++++++------- wgpu-core/src/device/life.rs | 6 ++- wgpu-core/src/device/resource.rs | 68 +++++++++++++++++++++----------- wgpu-core/src/hub.rs | 6 ++- 6 files changed, 137 insertions(+), 52 deletions(-) diff --git a/wgpu-core/src/binding_model.rs b/wgpu-core/src/binding_model.rs index e9723fa60c..efdd79e059 100644 --- a/wgpu-core/src/binding_model.rs +++ b/wgpu-core/src/binding_model.rs @@ -446,18 +446,25 @@ pub type BindGroupLayouts = crate::storage::Storage, BindG /// - produced bind groups /// - produced pipeline layouts /// - pipelines with implicit layouts -#[derive(Debug)] pub struct BindGroupLayout { - pub(crate) raw: A::BindGroupLayout, pub(crate) device_id: Stored, pub(crate) multi_ref_count: MultiRefCount, - pub(crate) entries: BindEntryMap, // When a layout created and there already exists a compatible layout the new layout // keeps a reference to the older compatible one. In some places we substitute the // bind group layout id with its compatible sibling. // Since this substitution can come at a cost, it is skipped when wgpu-core generates // its own resource IDs. - pub(crate) compatible_layout: Option>, + pub(crate) inner: BglOrDuplicate, +} + +pub(crate) enum BglOrDuplicate { + Inner(BindGroupLayoutInner), + Duplicate(Valid), +} + +pub struct BindGroupLayoutInner { + pub(crate) raw: A::BindGroupLayout, + pub(crate) entries: BindEntryMap, #[allow(unused)] pub(crate) dynamic_count: usize, pub(crate) count_validator: BindingTypeMaxCountValidator, @@ -465,6 +472,34 @@ pub struct BindGroupLayout { pub(crate) label: String, } +impl BindGroupLayout { + #[track_caller] + pub(crate) fn assume_deduplicated(&self) -> &BindGroupLayoutInner { + self.as_inner().unwrap() + } + + pub(crate) fn as_inner(&self) -> Option<&BindGroupLayoutInner> { + match self.inner { + BglOrDuplicate::Inner(ref inner) => Some(inner), + BglOrDuplicate::Duplicate(_) => None, + } + } + + pub(crate) fn into_inner(self) -> Option> { + match self.inner { + BglOrDuplicate::Inner(inner) => Some(inner), + BglOrDuplicate::Duplicate(_) => None, + } + } + + pub(crate) fn as_duplicate(&self) -> Option> { + match self.inner { + BglOrDuplicate::Duplicate(id) => Some(id), + BglOrDuplicate::Inner(_) => None, + } + } +} + impl Resource for BindGroupLayout { const TYPE: &'static str = "BindGroupLayout"; @@ -474,7 +509,7 @@ impl Resource for BindGroupLayout { fn label(&self) -> &str { #[cfg(debug_assertions)] - return &self.label; + return self.as_inner().map_or("", |inner| &inner.label); #[cfg(not(debug_assertions))] return ""; } @@ -486,8 +521,8 @@ pub(crate) fn try_get_bind_group_layout( id: BindGroupLayoutId, ) -> Option<&BindGroupLayout> { let layout = layouts.get(id).ok()?; - if let Some(compat) = layout.compatible_layout { - return Some(&layouts[compat]); + if let BglOrDuplicate::Duplicate(original_id) = layout.inner { + return Some(&layouts[original_id]); } Some(layout) @@ -499,9 +534,8 @@ pub(crate) fn get_bind_group_layout( ) -> (Valid, &BindGroupLayout) { let layout = &layouts[id]; layout - .compatible_layout - .map(|compat| (compat, &layouts[compat])) - .unwrap_or((id, layout)) + .as_duplicate() + .map_or((id, layout), |deduped| (deduped, &layouts[deduped])) } #[derive(Clone, Debug, Error)] diff --git a/wgpu-core/src/command/bind.rs b/wgpu-core/src/command/bind.rs index 05f90c6bc9..1cdec465e2 100644 --- a/wgpu-core/src/command/bind.rs +++ b/wgpu-core/src/command/bind.rs @@ -38,7 +38,7 @@ mod compat { } if let Some(id) = self.assigned { - return bind_group_layouts[id].compatible_layout == self.expected; + return bind_group_layouts[id].as_duplicate() == self.expected; } false diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index a9be65ae8f..e592d113ba 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -1,7 +1,8 @@ #[cfg(feature = "trace")] use crate::device::trace; use crate::{ - binding_model, command, conv, + binding_model::{self, BindGroupLayout}, + command, conv, device::{life::WaitIdleError, map_buffer, queue, Device, DeviceError, HostMap}, global::Global, hal_api::HalApi, @@ -1115,7 +1116,7 @@ impl Global { } let mut compatible_layout = None; - { + let layout = { let (bgl_guard, _) = hub.bind_group_layouts.read(&mut token); if let Some(id) = Device::deduplicate_bind_group_layout(device_id, &entry_map, &*bgl_guard) @@ -1134,19 +1135,26 @@ impl Global { compatible_layout = Some(id::Valid(id)); } - } - let mut layout = match device.create_bind_group_layout( - device_id, - desc.label.borrow_option(), - entry_map, - ) { - Ok(layout) => layout, - Err(e) => break e, + if let Some(original_id) = compatible_layout { + let original = &bgl_guard[original_id]; + BindGroupLayout { + device_id: original.device_id.clone(), + inner: crate::binding_model::BglOrDuplicate::Duplicate(original_id), + multi_ref_count: crate::MultiRefCount::new(), + } + } else { + match device.create_bind_group_layout( + device_id, + desc.label.borrow_option(), + entry_map, + ) { + Ok(layout) => layout, + Err(e) => break e, + } + } }; - layout.compatible_layout = compatible_layout; - let id = fid.assign(layout, &mut token); if let Some(dupe) = compatible_layout { @@ -1319,7 +1327,7 @@ impl Global { }; let mut layout_id = id::Valid(desc.layout); - if let Some(id) = bind_group_layout.compatible_layout { + if let Some(id) = bind_group_layout.as_duplicate() { layout_id = id; bind_group_layout = &bind_group_layout_guard[id]; } @@ -1916,7 +1924,24 @@ impl Global { None => break binding_model::GetBindGroupLayoutError::InvalidGroupIndex(index), }; - bgl_guard[*id].multi_ref_count.inc(); + let layout = &bgl_guard[*id]; + layout.multi_ref_count.inc(); + + if G::ids_are_generated_in_wgpu() { + return (id.0, None); + } + + // The ID is provided externally, so we must create a new bind group layout + // with the given ID as a duplicate of the existing one. + let new_layout = BindGroupLayout { + device_id: layout.device_id.clone(), + inner: crate::binding_model::BglOrDuplicate::::Duplicate(*id), + multi_ref_count: crate::MultiRefCount::new(), + }; + + let fid = hub.bind_group_layouts.prepare(id_in); + let id = fid.assign(new_layout, &mut Token::root()); + return (id.0, None); }; diff --git a/wgpu-core/src/device/life.rs b/wgpu-core/src/device/life.rs index b641567d71..e1d01ccaba 100644 --- a/wgpu-core/src/device/life.rs +++ b/wgpu-core/src/device/life.rs @@ -776,7 +776,7 @@ impl LifetimeTracker { if bgl.multi_ref_count.dec_and_check_empty() { // If This layout points to a compatible one, go over the latter // to decrement the ref count and potentially destroy it. - bgl_to_check = bgl.compatible_layout; + bgl_to_check = bgl.as_duplicate(); log::debug!("Bind group layout {:?} will be destroyed", id); #[cfg(feature = "trace")] @@ -786,7 +786,9 @@ impl LifetimeTracker { if let Some(lay) = hub.bind_group_layouts.unregister_locked(id.0, &mut *guard) { - self.free_resources.bind_group_layouts.push(lay.raw); + if let Some(inner) = lay.into_inner() { + self.free_resources.bind_group_layouts.push(inner.raw); + } } } } diff --git a/wgpu-core/src/device/resource.rs b/wgpu-core/src/device/resource.rs index 8f37f68be9..c839d6a828 100644 --- a/wgpu-core/src/device/resource.rs +++ b/wgpu-core/src/device/resource.rs @@ -1,7 +1,10 @@ #[cfg(feature = "trace")] use crate::device::trace; use crate::{ - binding_model::{self, get_bind_group_layout, try_get_bind_group_layout}, + binding_model::{ + self, get_bind_group_layout, try_get_bind_group_layout, BglOrDuplicate, + BindGroupLayoutInner, + }, command, conv, device::life::WaitIdleError, device::{ @@ -1392,8 +1395,9 @@ impl Device { .iter(self_id.backend()) .find(|&(_, bgl)| { bgl.device_id.value.0 == self_id - && bgl.compatible_layout.is_none() - && bgl.entries == *entry_map + && bgl + .as_inner() + .map_or(false, |inner| inner.entries == *entry_map) }) .map(|(id, value)| { value.multi_ref_count.inc(); @@ -1408,7 +1412,12 @@ impl Device { pipeline_layout .bind_group_layout_ids .iter() - .map(|&id| &bgl_guard[id].entries) + .map(|&id| { + &get_bind_group_layout(bgl_guard, id) + .1 + .assume_deduplicated() + .entries + }) .collect() } @@ -1427,7 +1436,9 @@ impl Device { .iter() .enumerate() .map(|(group_index, &bgl_id)| pipeline::LateSizedBufferGroup { - shader_sizes: bgl_guard[bgl_id] + shader_sizes: get_bind_group_layout(bgl_guard, bgl_id) + .1 + .assume_deduplicated() .entries .values() .filter_map(|entry| match entry.ty { @@ -1639,21 +1650,22 @@ impl Device { .map_err(binding_model::CreateBindGroupLayoutError::TooManyBindings)?; Ok(binding_model::BindGroupLayout { - raw, device_id: Stored { value: id::Valid(self_id), ref_count: self.life_guard.add_ref(), }, multi_ref_count: MultiRefCount::new(), - dynamic_count: entry_map - .values() - .filter(|b| b.ty.has_dynamic_offset()) - .count(), - count_validator, - entries: entry_map, - #[cfg(debug_assertions)] - label: label.unwrap_or("").to_string(), - compatible_layout: None, + inner: BglOrDuplicate::Inner(BindGroupLayoutInner { + raw, + dynamic_count: entry_map + .values() + .filter(|b| b.ty.has_dynamic_offset()) + .count(), + count_validator, + entries: entry_map, + #[cfg(debug_assertions)] + label: label.unwrap_or("").to_string(), + }), }) } @@ -1823,6 +1835,8 @@ impl Device { Ok(()) } + // This function expects the provided bind group layout to be resolved + // (not passing a duplicate) beforehand. pub(super) fn create_bind_group( &self, self_id: id::DeviceId, @@ -1837,7 +1851,7 @@ impl Device { // Check that the number of entries in the descriptor matches // the number of entries in the layout. let actual = desc.entries.len(); - let expected = layout.entries.len(); + let expected = layout.assume_deduplicated().entries.len(); if actual != expected { return Err(Error::BindingsNumMismatch { expected, actual }); } @@ -1868,6 +1882,7 @@ impl Device { let binding = entry.binding; // Find the corresponding declaration in the layout let decl = layout + .assume_deduplicated() .entries .get(&binding) .ok_or(Error::MissingBindingDeclaration(binding))?; @@ -2044,9 +2059,11 @@ impl Device { } } + let layout_inner = layout.assume_deduplicated(); + let hal_desc = hal::BindGroupDescriptor { label: desc.label.borrow_option(), - layout: &layout.raw, + layout: &layout_inner.raw, entries: &hal_entries, buffers: &hal_buffers, samplers: &hal_samplers, @@ -2074,7 +2091,7 @@ impl Device { used_texture_ranges, dynamic_binding_info, // collect in the order of BGL iteration - late_buffer_binding_sizes: layout + late_buffer_binding_sizes: layout_inner .entries .keys() .flat_map(|binding| late_buffer_binding_sizes.get(binding).cloned()) @@ -2304,10 +2321,10 @@ impl Device { // validate total resource counts for &id in desc.bind_group_layouts.iter() { - let bind_group_layout = bgl_guard - .get(id) - .map_err(|_| Error::InvalidBindGroupLayout(id))?; - count_validator.merge(&bind_group_layout.count_validator); + let Some(bind_group_layout) = try_get_bind_group_layout(bgl_guard, id) else { + return Err(Error::InvalidBindGroupLayout(id)); + }; + count_validator.merge(&bind_group_layout.assume_deduplicated().count_validator); } count_validator .validate(&self.limits) @@ -2316,7 +2333,12 @@ impl Device { let bgl_vec = desc .bind_group_layouts .iter() - .map(|&id| &try_get_bind_group_layout(bgl_guard, id).unwrap().raw) + .map(|&id| { + &try_get_bind_group_layout(bgl_guard, id) + .unwrap() + .assume_deduplicated() + .raw + }) .collect::>(); let hal_desc = hal::PipelineLayoutDescriptor { label: desc.label.borrow_option(), diff --git a/wgpu-core/src/hub.rs b/wgpu-core/src/hub.rs index c0670e085c..0435a28607 100644 --- a/wgpu-core/src/hub.rs +++ b/wgpu-core/src/hub.rs @@ -575,8 +575,10 @@ impl Hub { for element in self.bind_group_layouts.data.write().map.drain(..) { if let Element::Occupied(bgl, _) = element { let device = &devices[bgl.device_id.value]; - unsafe { - device.raw.destroy_bind_group_layout(bgl.raw); + if let Some(inner) = bgl.into_inner() { + unsafe { + device.raw.destroy_bind_group_layout(inner.raw); + } } } } From 7d1005faad0404f4c36a996fecc7aee0184b665b Mon Sep 17 00:00:00 2001 From: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com> Date: Wed, 4 Oct 2023 14:27:27 +0200 Subject: [PATCH 094/135] [WebGPU] validate polygon mode (#4196) --- CHANGELOG.md | 1 + wgpu/src/backend/web.rs | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bf05a41e37..850522ac2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -161,6 +161,7 @@ By @teoxoy in [#4185](https://github.com/gfx-rs/wgpu/pull/4185) #### WebGPU - Ensure that limit requests and reporting is done correctly. By @OptimisticPeach in [#4107](https://github.com/gfx-rs/wgpu/pull/4107) +- Validate usage of polygon mode. By @teoxoy in [#4196](https://github.com/gfx-rs/wgpu/pull/4196) #### Testing diff --git a/wgpu/src/backend/web.rs b/wgpu/src/backend/web.rs index 131b18976b..5e3fc01767 100644 --- a/wgpu/src/backend/web.rs +++ b/wgpu/src/backend/web.rs @@ -343,6 +343,18 @@ fn map_primitive_state(primitive: &wgt::PrimitiveState) -> web_sys::GpuPrimitive //TODO: //mapped.unclipped_depth(primitive.unclipped_depth); + match primitive.polygon_mode { + wgt::PolygonMode::Fill => {} + wgt::PolygonMode::Line => panic!( + "{:?} is not enabled for this backend", + wgt::Features::POLYGON_MODE_LINE + ), + wgt::PolygonMode::Point => panic!( + "{:?} is not enabled for this backend", + wgt::Features::POLYGON_MODE_POINT + ), + } + mapped } From 198e1dfadc802f1e6eae79fcbc687db9eee22794 Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Wed, 4 Oct 2023 20:39:03 +0200 Subject: [PATCH 095/135] Validate that resources belong to the right device. (#4207) --- CHANGELOG.md | 1 + deno_webgpu/error.rs | 6 ++-- tests/tests/device.rs | 1 - wgpu-core/src/command/render.rs | 45 ++++++++++++++++++++++++------ wgpu-core/src/device/global.rs | 4 +++ wgpu-core/src/device/mod.rs | 2 ++ wgpu-core/src/device/queue.rs | 16 +++++++++++ wgpu-core/src/device/resource.rs | 47 ++++++++++++++++++++++++++++++++ 8 files changed, 109 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 850522ac2f..6b01940683 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -111,6 +111,7 @@ By @teoxoy in [#4185](https://github.com/gfx-rs/wgpu/pull/4185) - Add stub support for device destroy and device validity. By @bradwerth in [4163](https://github.com/gfx-rs/wgpu/pull/4163) - Add trace-level logging for most entry points in wgpu-core By @nical in [4183](https://github.com/gfx-rs/wgpu/pull/4183) - Add `Rgb10a2Uint` format. By @teoxoy in [4199](https://github.com/gfx-rs/wgpu/pull/4199) +- Validate that resources are used on the right device. By @nical in [4207](https://github.com/gfx-rs/wgpu/pull/4207) #### Vulkan diff --git a/deno_webgpu/error.rs b/deno_webgpu/error.rs index a68592adfc..b966e5d7cf 100644 --- a/deno_webgpu/error.rs +++ b/deno_webgpu/error.rs @@ -104,9 +104,9 @@ impl From for WebGpuError { match err { DeviceError::Lost => WebGpuError::Lost, DeviceError::OutOfMemory => WebGpuError::OutOfMemory, - DeviceError::ResourceCreationFailed | DeviceError::Invalid => { - WebGpuError::Validation(fmt_err(&err)) - } + DeviceError::ResourceCreationFailed + | DeviceError::Invalid + | DeviceError::WrongDevice => WebGpuError::Validation(fmt_err(&err)), } } } diff --git a/tests/tests/device.rs b/tests/tests/device.rs index 991170e739..ebd331b4b7 100644 --- a/tests/tests/device.rs +++ b/tests/tests/device.rs @@ -11,7 +11,6 @@ fn device_initialization() { } #[test] -#[ignore] fn device_mismatch() { initialize_test( // https://github.com/gfx-rs/wgpu/issues/3927 diff --git a/wgpu-core/src/command/render.rs b/wgpu-core/src/command/render.rs index 2c310ed043..b875764bb6 100644 --- a/wgpu-core/src/command/render.rs +++ b/wgpu-core/src/command/render.rs @@ -10,7 +10,7 @@ use crate::{ RenderCommand, RenderCommandError, StateChange, }, device::{ - AttachmentData, Device, MissingDownlevelFlags, MissingFeatures, + AttachmentData, Device, DeviceError, MissingDownlevelFlags, MissingFeatures, RenderPassCompatibilityCheckType, RenderPassCompatibilityError, RenderPassContext, }, error::{ErrorFormatter, PrettyError}, @@ -18,7 +18,6 @@ use crate::{ hal_api::HalApi, hub::Token, id, - id::DeviceId, identity::GlobalIdentityHandlerFactory, init_tracker::{MemoryInitKind, TextureInitRange, TextureInitTrackerAction}, pipeline::{self, PipelineFlags}, @@ -520,12 +519,12 @@ pub enum ColorAttachmentError { /// Error encountered when performing a render pass. #[derive(Clone, Debug, Error)] pub enum RenderPassErrorInner { + #[error(transparent)] + Device(DeviceError), #[error(transparent)] ColorAttachment(#[from] ColorAttachmentError), #[error(transparent)] Encoder(#[from] CommandEncoderError), - #[error("Device {0:?} is invalid")] - InvalidDevice(DeviceId), #[error("Attachment texture view {0:?} is invalid")] InvalidAttachment(id::TextureViewId), #[error("The format of the depth-stencil attachment ({0:?}) is not a depth-stencil format")] @@ -658,6 +657,12 @@ impl From for RenderPassErrorInner { } } +impl From for RenderPassErrorInner { + fn from(error: DeviceError) -> Self { + Self::Device(error) + } +} + /// Error encountered when performing a render pass. #[derive(Clone, Debug, Error)] #[error("{scope}")] @@ -1351,12 +1356,11 @@ impl Global { }); } - let device = &device_guard[cmd_buf.device_id.value]; + let device_id = cmd_buf.device_id.value; + + let device = &device_guard[device_id]; if !device.is_valid() { - return Err(RenderPassErrorInner::InvalidDevice( - cmd_buf.device_id.value.0, - )) - .map_pass_err(init_scope); + return Err(DeviceError::Invalid).map_pass_err(init_scope); } cmd_buf.encoder.open_pass(base.label); @@ -1451,6 +1455,11 @@ impl Global { .add_single(&*bind_group_guard, bind_group_id) .ok_or(RenderCommandError::InvalidBindGroup(bind_group_id)) .map_pass_err(scope)?; + + if bind_group.device_id.value != device_id { + return Err(DeviceError::WrongDevice).map_pass_err(scope); + } + bind_group .validate_dynamic_bindings(index, &temp_offsets, &cmd_buf.limits) .map_pass_err(scope)?; @@ -1518,6 +1527,10 @@ impl Global { .ok_or(RenderCommandError::InvalidPipeline(pipeline_id)) .map_pass_err(scope)?; + if pipeline.device_id.value != device_id { + return Err(DeviceError::WrongDevice).map_pass_err(scope); + } + info.context .check_compatible( &pipeline.pass_context, @@ -1635,6 +1648,11 @@ impl Global { .buffers .merge_single(&*buffer_guard, buffer_id, hal::BufferUses::INDEX) .map_pass_err(scope)?; + + if buffer.device_id.value != device_id { + return Err(DeviceError::WrongDevice).map_pass_err(scope); + } + check_buffer_usage(buffer.usage, BufferUsages::INDEX) .map_pass_err(scope)?; let buf_raw = buffer @@ -1683,6 +1701,11 @@ impl Global { .buffers .merge_single(&*buffer_guard, buffer_id, hal::BufferUses::VERTEX) .map_pass_err(scope)?; + + if buffer.device_id.value != device_id { + return Err(DeviceError::WrongDevice).map_pass_err(scope); + } + check_buffer_usage(buffer.usage, BufferUsages::VERTEX) .map_pass_err(scope)?; let buf_raw = buffer @@ -2265,6 +2288,10 @@ impl Global { .ok_or(RenderCommandError::InvalidRenderBundle(bundle_id)) .map_pass_err(scope)?; + if bundle.device_id.value != device_id { + return Err(DeviceError::WrongDevice).map_pass_err(scope); + } + info.context .check_compatible( &bundle.context, diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index e592d113ba..67f00a4013 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -1326,6 +1326,10 @@ impl Global { Err(..) => break binding_model::CreateBindGroupError::InvalidLayout, }; + if bind_group_layout.device_id.value.0 != device_id { + break DeviceError::WrongDevice.into(); + } + let mut layout_id = id::Valid(desc.layout); if let Some(id) = bind_group_layout.as_duplicate() { layout_id = id; diff --git a/wgpu-core/src/device/mod.rs b/wgpu-core/src/device/mod.rs index 3e2a245127..cacd836ec6 100644 --- a/wgpu-core/src/device/mod.rs +++ b/wgpu-core/src/device/mod.rs @@ -300,6 +300,8 @@ pub enum DeviceError { OutOfMemory, #[error("Creation of a resource failed for a reason other than running out of memory.")] ResourceCreationFailed, + #[error("Attempt to use a resource with a different device from the one that created it")] + WrongDevice, } impl From for DeviceError { diff --git a/wgpu-core/src/device/queue.rs b/wgpu-core/src/device/queue.rs index 089f4ff717..815f60588f 100644 --- a/wgpu-core/src/device/queue.rs +++ b/wgpu-core/src/device/queue.rs @@ -397,6 +397,7 @@ impl Global { } let result = self.queue_write_staging_buffer_impl( + queue_id, device, device_token, &staging_buffer, @@ -464,6 +465,7 @@ impl Global { } let result = self.queue_write_staging_buffer_impl( + queue_id, device, device_token, &staging_buffer, @@ -531,6 +533,7 @@ impl Global { fn queue_write_staging_buffer_impl( &self, + device_id: id::DeviceId, device: &mut super::Device, device_token: &mut Token>, staging_buffer: &StagingBuffer, @@ -551,6 +554,10 @@ impl Global { .as_ref() .ok_or(TransferError::InvalidBuffer(buffer_id))?; + if dst.device_id.value.0 != device_id { + return Err(DeviceError::WrongDevice.into()); + } + let src_buffer_size = staging_buffer.size; self.queue_validate_write_buffer_impl(dst, buffer_id, buffer_offset, src_buffer_size)?; @@ -627,6 +634,10 @@ impl Global { .get_mut(destination.texture) .map_err(|_| TransferError::InvalidTexture(destination.texture))?; + if dst.device_id.value.0 != queue_id { + return Err(DeviceError::WrongDevice.into()); + } + if !dst.desc.usage.contains(wgt::TextureUsages::COPY_DST) { return Err( TransferError::MissingCopyDstUsageFlag(None, Some(destination.texture)).into(), @@ -1105,6 +1116,11 @@ impl Global { Some(cmdbuf) => cmdbuf, None => continue, }; + + if cmdbuf.device_id.value.0 != queue_id { + return Err(DeviceError::WrongDevice.into()); + } + #[cfg(feature = "trace")] if let Some(ref trace) = device.trace { trace.lock().add(Action::Submit( diff --git a/wgpu-core/src/device/resource.rs b/wgpu-core/src/device/resource.rs index c839d6a828..f6cbe60134 100644 --- a/wgpu-core/src/device/resource.rs +++ b/wgpu-core/src/device/resource.rs @@ -1670,6 +1670,7 @@ impl Device { } fn create_buffer_binding<'a>( + device_id: id::DeviceId, bb: &binding_model::BufferBinding, binding: u32, decl: &wgt::BindGroupLayoutEntry, @@ -1727,6 +1728,11 @@ impl Device { .buffers .add_single(storage, bb.buffer_id, internal_use) .ok_or(Error::InvalidBuffer(bb.buffer_id))?; + + if buffer.device_id.value.0 != device_id { + return Err(DeviceError::WrongDevice.into()); + } + check_buffer_usage(buffer.usage, pub_usage)?; let raw_buffer = buffer .raw @@ -1797,6 +1803,7 @@ impl Device { } fn create_texture_binding( + device_id: id::DeviceId, view: &resource::TextureView, texture_guard: &Storage, id::TextureId>, internal_use: hal::TextureUses, @@ -1818,6 +1825,11 @@ impl Device { .ok_or(binding_model::CreateBindGroupError::InvalidTexture( view.parent_id.value.0, ))?; + + if texture.device_id.value.0 != device_id { + return Err(DeviceError::WrongDevice.into()); + } + check_texture_usage(texture.desc.usage, pub_usage)?; used_texture_ranges.push(TextureInitTrackerAction { @@ -1889,6 +1901,7 @@ impl Device { let (res_index, count) = match entry.resource { Br::Buffer(ref bb) => { let bb = Self::create_buffer_binding( + self_id, bb, binding, decl, @@ -1911,6 +1924,7 @@ impl Device { let res_index = hal_buffers.len(); for bb in bindings_array.iter() { let bb = Self::create_buffer_binding( + self_id, bb, binding, decl, @@ -1933,6 +1947,10 @@ impl Device { .add_single(&*sampler_guard, id) .ok_or(Error::InvalidSampler(id))?; + if sampler.device_id.value.0 != self_id { + return Err(DeviceError::WrongDevice.into()); + } + // Allowed sampler values for filtering and comparison let (allowed_filtering, allowed_comparison) = match ty { wgt::SamplerBindingType::Filtering => (None, false), @@ -1981,6 +1999,11 @@ impl Device { .samplers .add_single(&*sampler_guard, id) .ok_or(Error::InvalidSampler(id))?; + + if sampler.device_id.value.0 != self_id { + return Err(DeviceError::WrongDevice.into()); + } + hal_samplers.push(&sampler.raw); } @@ -1998,6 +2021,7 @@ impl Device { "SampledTexture, ReadonlyStorageTexture or WriteonlyStorageTexture", )?; Self::create_texture_binding( + self_id, view, &texture_guard, internal_use, @@ -2026,6 +2050,7 @@ impl Device { Self::texture_use_parameters(binding, decl, view, "SampledTextureArray, ReadonlyStorageTextureArray or WriteonlyStorageTextureArray")?; Self::create_texture_binding( + self_id, view, &texture_guard, internal_use, @@ -2324,6 +2349,11 @@ impl Device { let Some(bind_group_layout) = try_get_bind_group_layout(bgl_guard, id) else { return Err(Error::InvalidBindGroupLayout(id)); }; + + if bind_group_layout.device_id.value.0 != self_id { + return Err(DeviceError::WrongDevice.into()); + } + count_validator.merge(&bind_group_layout.assume_deduplicated().count_validator); } count_validator @@ -2457,6 +2487,10 @@ impl Device { .get(desc.stage.module) .map_err(|_| validation::StageError::InvalidModule)?; + if shader_module.device_id.value.0 != self_id { + return Err(DeviceError::WrongDevice.into()); + } + { let flag = wgt::ShaderStages::COMPUTE; let provided_layouts = match desc.layout { @@ -2500,6 +2534,10 @@ impl Device { .get(pipeline_layout_id) .map_err(|_| pipeline::CreateComputePipelineError::InvalidLayout)?; + if layout.device_id.value.0 != self_id { + return Err(DeviceError::WrongDevice.into()); + } + let late_sized_buffer_groups = Device::make_late_sized_buffer_groups(&shader_binding_sizes, layout, &*bgl_guard); @@ -2843,11 +2881,20 @@ impl Device { } })?; + if shader_module.device_id.value.0 != self_id { + return Err(DeviceError::WrongDevice.into()); + } + let provided_layouts = match desc.layout { Some(pipeline_layout_id) => { let pipeline_layout = pipeline_layout_guard .get(pipeline_layout_id) .map_err(|_| pipeline::CreateRenderPipelineError::InvalidLayout)?; + + if pipeline_layout.device_id.value.0 != self_id { + return Err(DeviceError::WrongDevice.into()); + } + Some(Device::get_introspection_bind_group_layouts( pipeline_layout, &*bgl_guard, From 1495e159faf721cbf87a0634157682f454a963fb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Oct 2023 00:31:22 -0400 Subject: [PATCH 096/135] Bump log from 0.4.17 to 0.4.20 (#4210) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 07ebdffdf6..6ba0a6bf36 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -559,7 +559,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e16e44ab292b1dddfdaf7be62cfd8877df52f2f3fde5858d95bab606be259f20" dependencies = [ "bitflags 2.4.0", - "libloading 0.7.4", + "libloading 0.8.1", "winapi", ] @@ -790,7 +790,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" dependencies = [ - "libloading 0.7.4", + "libloading 0.8.1", ] [[package]] @@ -1564,12 +1564,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if", -] +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] name = "malloc_buf" From c85cbea39ef9133f52625b473bfffcced6b44a1e Mon Sep 17 00:00:00 2001 From: daxpedda Date: Thu, 5 Oct 2023 20:01:32 +0200 Subject: [PATCH 097/135] Bump `khronos-egl` to v6 (#3807) --- Cargo.lock | 6 ++-- Cargo.toml | 2 +- wgpu-hal/Cargo.toml | 4 +-- wgpu-hal/examples/raw-gles.rs | 2 +- wgpu-hal/src/gles/egl.rs | 68 +++++++++++++++++++---------------- 5 files changed, 45 insertions(+), 37 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6ba0a6bf36..1a2765b8bc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1466,12 +1466,12 @@ dependencies = [ [[package]] name = "khronos-egl" -version = "4.1.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3" +checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" dependencies = [ "libc", - "libloading 0.7.4", + "libloading 0.8.1", "pkg-config", ] diff --git a/Cargo.toml b/Cargo.toml index 96f3f1fa67..9a9e11cf4b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -115,7 +115,7 @@ winapi = "0.3" hassle-rs = "0.10.0" # Gles dependencies -khronos-egl = "4.1" +khronos-egl = "6" glow = "0.12.3" glutin = "0.29.1" diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index acc26e0624..bb1ac205fa 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -80,12 +80,12 @@ gpu-alloc = { version = "0.6", optional = true } gpu-descriptor = { version = "0.2", optional = true } smallvec = { version = "1", optional = true, features = ["union"] } -khronos-egl = { version = "4.1", features = ["dynamic"], optional = true } +khronos-egl = { version = "6", features = ["dynamic"], optional = true } libloading = { version = ">=0.7, <0.9", optional = true } renderdoc-sys = { version = "1.0.0", optional = true } [target.'cfg(target_os = "emscripten")'.dependencies] -khronos-egl = { version = "4.1", features = ["static", "no-pkg-config"] } +khronos-egl = { version = "6", features = ["static", "no-pkg-config"] } #Note: it's unused by emscripten, but we keep it to have single code base in egl.rs libloading = { version = ">=0.7, <0.9", optional = true } diff --git a/wgpu-hal/examples/raw-gles.rs b/wgpu-hal/examples/raw-gles.rs index 0e89783aa1..ec0212960a 100644 --- a/wgpu-hal/examples/raw-gles.rs +++ b/wgpu-hal/examples/raw-gles.rs @@ -72,7 +72,7 @@ fn main() { println!("Initializing external GL context"); let egl = khronos_egl::Instance::new(khronos_egl::Static); - let display = egl.get_display(khronos_egl::DEFAULT_DISPLAY).unwrap(); + let display = unsafe { egl.get_display(khronos_egl::DEFAULT_DISPLAY) }.unwrap(); egl.initialize(display) .expect("unable to initialize display"); diff --git a/wgpu-hal/src/gles/egl.rs b/wgpu-hal/src/gles/egl.rs index d6d3d621f9..7e2f330838 100644 --- a/wgpu-hal/src/gles/egl.rs +++ b/wgpu-hal/src/gles/egl.rs @@ -790,24 +790,26 @@ impl crate::Instance for Instance { if let (Some(library), Some(egl)) = (wayland_library, egl1_5) { log::info!("Using Wayland platform"); let display_attributes = [khronos_egl::ATTRIB_NONE]; - let display = egl - .get_platform_display( + let display = unsafe { + egl.get_platform_display( EGL_PLATFORM_WAYLAND_KHR, khronos_egl::DEFAULT_DISPLAY, &display_attributes, ) - .unwrap(); + } + .unwrap(); (display, Some(Arc::new(library)), WindowKind::Wayland) } else if let (Some(display_owner), Some(egl)) = (x11_display_library, egl1_5) { log::info!("Using X11 platform"); let display_attributes = [khronos_egl::ATTRIB_NONE]; - let display = egl - .get_platform_display( + let display = unsafe { + egl.get_platform_display( EGL_PLATFORM_X11_KHR, display_owner.display.as_ptr(), &display_attributes, ) - .unwrap(); + } + .unwrap(); (display, Some(Arc::new(display_owner)), WindowKind::X11) } else if let (Some(display_owner), Some(egl)) = (angle_x11_display_library, egl1_5) { log::info!("Using Angle platform with X11"); @@ -818,28 +820,30 @@ impl crate::Instance for Instance { usize::from(desc.flags.contains(crate::InstanceFlags::VALIDATION)), khronos_egl::ATTRIB_NONE, ]; - let display = egl - .get_platform_display( + let display = unsafe { + egl.get_platform_display( EGL_PLATFORM_ANGLE_ANGLE, display_owner.display.as_ptr(), &display_attributes, ) - .unwrap(); + } + .unwrap(); (display, Some(Arc::new(display_owner)), WindowKind::AngleX11) } else if client_ext_str.contains("EGL_MESA_platform_surfaceless") { log::info!("No windowing system present. Using surfaceless platform"); let egl = egl1_5.expect("Failed to get EGL 1.5 for surfaceless"); - let display = egl - .get_platform_display( + let display = unsafe { + egl.get_platform_display( EGL_PLATFORM_SURFACELESS_MESA, std::ptr::null_mut(), &[khronos_egl::ATTRIB_NONE], ) - .unwrap(); + } + .unwrap(); (display, None, WindowKind::Unknown) } else { log::info!("EGL_MESA_platform_surfaceless not available. Using default platform"); - let display = egl.get_display(khronos_egl::DEFAULT_DISPLAY).unwrap(); + let display = unsafe { egl.get_display(khronos_egl::DEFAULT_DISPLAY) }.unwrap(); (display, None, WindowKind::Unknown) }; @@ -936,17 +940,19 @@ impl crate::Instance for Instance { use std::ops::DerefMut; let display_attributes = [khronos_egl::ATTRIB_NONE]; - let display = inner - .egl - .instance - .upcast::() - .unwrap() - .get_platform_display( - EGL_PLATFORM_WAYLAND_KHR, - display_handle.display, - &display_attributes, - ) - .unwrap(); + let display = unsafe { + inner + .egl + .instance + .upcast::() + .unwrap() + .get_platform_display( + EGL_PLATFORM_WAYLAND_KHR, + display_handle.display, + &display_attributes, + ) + } + .unwrap(); let new_inner = Inner::create( self.flags, @@ -1276,12 +1282,14 @@ impl crate::Surface for Surface { .into_iter() .map(|v| v as usize) .collect::>(); - egl.create_platform_window_surface( - self.egl.display, - self.config, - native_window_ptr, - &attributes_usize, - ) + unsafe { + egl.create_platform_window_surface( + self.egl.display, + self.config, + native_window_ptr, + &attributes_usize, + ) + } } _ => unsafe { self.egl.instance.create_window_surface( From e6097ce3d4ef62539259464f49162a0aefe6957a Mon Sep 17 00:00:00 2001 From: Brad Werth Date: Sat, 7 Oct 2023 07:28:07 -0700 Subject: [PATCH 098/135] Make buffer_map and buffer_unmap check for device validity, add tests. (#4212) * Make buffer_unmap check for device validity, add tests. This patch makes buffer_unmap check for a valid device, and corrects buffer_map to return the appropriate error for an invalid device. Tests are added for both operations. It also adds device validity checks to device_maintain_ids and to the functions that get and set buffer sub data. * Update changelog and test comment. * Run rustfmt. * Update test device_lose_then_more to specify more buffer usages to keep Vulkan happy. --- CHANGELOG.md | 2 +- tests/tests/device.rs | 32 +++++++++++++++++++++++++++----- wgpu-core/src/device/global.rs | 15 ++++++++++++++- 3 files changed, 42 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6b01940683..9c0f68eaab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -108,7 +108,7 @@ By @teoxoy in [#4185](https://github.com/gfx-rs/wgpu/pull/4185) - `wgpu::CreateSurfaceError` and `wgpu::RequestDeviceError` now give details of the failure, but no longer implement `PartialEq` and cannot be constructed. By @kpreid in [#4066](https://github.com/gfx-rs/wgpu/pull/4066) and [#4145](https://github.com/gfx-rs/wgpu/pull/4145) - Make `WGPU_POWER_PREF=none` a valid value. By @fornwall in [4076](https://github.com/gfx-rs/wgpu/pull/4076) - Support dual source blending in OpenGL ES, Metal, Vulkan & DX12. By @freqmod in [4022](https://github.com/gfx-rs/wgpu/pull/4022) -- Add stub support for device destroy and device validity. By @bradwerth in [4163](https://github.com/gfx-rs/wgpu/pull/4163) +- Add stub support for device destroy and device validity. By @bradwerth in [4163](https://github.com/gfx-rs/wgpu/pull/4163) and in [4212](https://github.com/gfx-rs/wgpu/pull/4212) - Add trace-level logging for most entry points in wgpu-core By @nical in [4183](https://github.com/gfx-rs/wgpu/pull/4183) - Add `Rgb10a2Uint` format. By @teoxoy in [4199](https://github.com/gfx-rs/wgpu/pull/4199) - Validate that resources are used on the right device. By @nical in [4207](https://github.com/gfx-rs/wgpu/pull/4207) diff --git a/tests/tests/device.rs b/tests/tests/device.rs index ebd331b4b7..981b55dfb8 100644 --- a/tests/tests/device.rs +++ b/tests/tests/device.rs @@ -164,6 +164,18 @@ fn device_destroy_then_more() { usage: wgpu::BufferUsages::MAP_READ | wgpu::BufferUsages::COPY_DST, mapped_at_creation: false, }); + let buffer_for_map = ctx.device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: 256, + usage: wgpu::BufferUsages::MAP_WRITE | wgpu::BufferUsages::COPY_SRC, + mapped_at_creation: false, + }); + let buffer_for_unmap = ctx.device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: 256, + usage: wgpu::BufferUsages::MAP_WRITE | wgpu::BufferUsages::COPY_SRC, + mapped_at_creation: true, + }); // Create a bind group layout. let bind_group_layout = @@ -215,16 +227,14 @@ fn device_destroy_then_more() { ctx.device.destroy(); // TODO: verify the following operations will return an invalid device error: - // * Run a compute pass - // * Run a render pass + // * Run a compute or render pass // * Finish a render bundle encoder // * Create a texture from HAL // * Create a buffer from HAL // * Create a sampler // * Validate a surface configuration - // * Start capture - // * Stop capture - // * Buffer map + // * Start or stop capture + // * Get or set buffer sub data // TODO: figure out how to structure a test around these operations which panic when // the device is invalid: @@ -439,6 +449,18 @@ fn device_destroy_then_more() { entry_point: "", }); }); + + // Buffer map should fail. + fail(&ctx.device, || { + buffer_for_map + .slice(..) + .map_async(wgpu::MapMode::Write, |_| ()); + }); + + // Buffer unmap should fail. + fail(&ctx.device, || { + buffer_for_unmap.unmap(); + }); }, ) } diff --git a/wgpu-core/src/device/global.rs b/wgpu-core/src/device/global.rs index 67f00a4013..101cb64bbf 100644 --- a/wgpu-core/src/device/global.rs +++ b/wgpu-core/src/device/global.rs @@ -379,6 +379,9 @@ impl Global { let device = device_guard .get(device_id) .map_err(|_| DeviceError::Invalid)?; + if !device.valid { + return Err(DeviceError::Invalid.into()); + } let buffer = buffer_guard .get_mut(buffer_id) .map_err(|_| BufferAccessError::Invalid)?; @@ -436,6 +439,9 @@ impl Global { let device = device_guard .get(device_id) .map_err(|_| DeviceError::Invalid)?; + if !device.valid { + return Err(DeviceError::Invalid.into()); + } let buffer = buffer_guard .get_mut(buffer_id) .map_err(|_| BufferAccessError::Invalid)?; @@ -2400,6 +2406,9 @@ impl Global { let mut token = Token::root(); let (device_guard, mut token) = hub.devices.read(&mut token); let device = device_guard.get(device_id).map_err(|_| InvalidDevice)?; + if !device.valid { + return Err(InvalidDevice); + } device.lock_life(&mut token).triage_suspected( hub, &device.trackers, @@ -2711,7 +2720,7 @@ impl Global { let device = &device_guard[buffer.device_id.value]; if !device.valid { - return Err((op, BufferAccessError::Invalid)); + return Err((op, DeviceError::Invalid.into())); } if let Err(e) = check_buffer_usage(buffer.usage, pub_usage) { @@ -2766,6 +2775,7 @@ impl Global { }; let device = &device_guard[device_id]; + // Validity of device was confirmed in the code block that set device_id. device .lock_life(&mut token) .map(id::Valid(buffer_id), ref_count); @@ -2955,6 +2965,9 @@ impl Global { .get_mut(buffer_id) .map_err(|_| BufferAccessError::Invalid)?; let device = &mut device_guard[buffer.device_id.value]; + if !device.valid { + return Err(DeviceError::Invalid.into()); + } closure = self.buffer_unmap_inner(buffer_id, buffer, device) } From f738551250f18f32851881490825a41148cb0e0d Mon Sep 17 00:00:00 2001 From: JustAnotherCodemonkey Date: Sat, 7 Oct 2023 23:05:51 -0700 Subject: [PATCH 099/135] Add Extended Examples (#3885) * Add the base of the example. May need refining and definitely fact-checking. * Start change to changelog. * Complete changelog change for repeated-compute. * Apply suggestion to fix typos. Co-authored-by: Alphyr <47725341+a1phyr@users.noreply.github.com> * Add storage-texture example which currently works native but needs to be changed to work for wasm. [no ci] * repeated-compute now works on the web. [no ci] * `storage-texture` now works on the web as well as native. * Format because I forgot to do that (ugh). * Add `storage-texture` to changelog. * Add `render-to-texture` example. * Not all the files got git added. Fixed it. * Add `render-to-texture` to changelog. * Make better readme's and add examples to said readme's. * Oops. Put the example updates in the wrong place. * Add `uniform-values` example. * Apply clippy suggestions. * Improved readme's and documentation. * Fmt. Turning into the Joker rn. * Make instructions for examples on the web more clear. \(Fmt and clippy happy\) * hello-workgroups It doesn't work. * Add basic comments and readme to hello-workgroups. * Add hello-synchronization example. Currently doesn't have any tests but those should be added later. * Forgot to check wasm compatibility for hello-synchronization. Fixed it. * Add test for hello-synchronization. * Make my examples downlevel defaults. * Make uniform-values downlevel defaults. (Forgot to do that last commit.) * Fix clippy doc complaints. * Didn't fully fix the docs last commit. Got it here I think. * Fix redundant bullet point in examples/hello-workgroups/README.md. * Trim down the introduction section of examples/hello-workgroups/README.md. * Add technical links section to examples/hello-workgroups/README.md. * Use idiomatic Rust comments, break up big text wall into paragraphs, and fix some spelling errors. * Move output image functions into examples/common and give output_image_wasm some upgrades. * Modify changelog for moving output_image_native and output_image_wasm into wgpu-example. * Fix output_image_wasm. (Formerly did not handle pre-existing output image targets.) * Make a multiline comment be made of single lines to be more ideomatic. * "Fix" more multiline comments. I think this is actually the last of them. * Make the window a consistant, square size that's convenient for viewing. * Make the window on uniform-values not endlessly poll, taking up 100% of the main thread in background at idle. Also, change layout a little and make native use nanos by default for logging. * Make execute in hello-synchronization return a struct of vecs instead of using out parameters. * Didn't realize the naming of wgpu_example::framework so I moved my common example utility functions into wgpu_example::utils. * Add add_web_nothing_to_see_msg function to replace all the instances of adding "open the console" messages across the examples. * Add small documentation to add_web_nothing_to_see_msg and change it to use h1 instead of p. * Add documentation to output_image_native and output_image_wasm in examples/common. * Do better logging for output image functions in wgpu-example::utils. * Remove redundant append_child'ing of the output image element in wgpu-example::utils::output_image_wasm. * Fix error regarding log message for having written the image in wgpu-example::utils::output_image_native. * Fmt. * In examples/README.md, re-arrange the examples in the graph to be in alphabetical order. * Fix changlog item regarding wgpu-example::utils and the output image functions. * Move all the added examples into one changelog item that lists all of them. * Updated table in examples/README.md with new examples. Added new features to the table to accurately represent the examples.\n\nFor the new features, not all old examples may be fully represented. * Fix inaccurate comment in hello-workgroups/src/shader.wgsl. * Update examples/README.md to include basic descriptions of the basic examples as well as hints on how examples build off of each other. * Remove `capture` example. See changelog entry for reasoning. * Fix typo in hello-workgroups/shader.wgsl * Change the method of vertex generation in the shader code of render-to-texture to make it more clear. * Modify/correct message in repeated-compute/main.rs regarding the output staging buffer. * Update message in uniform-values/main.rs about writing the app state struct to the input WGSL buffer. * Add notice in repeated-compute/main.rs about why async channels are necessary (portability to WASM). * Revise comment in uniform-values/main.rs about why we don't cast the struct using POD to be more clear. * Change uniform-values to use encase for translating AppState to WGSL bytes. * Cargo & Clippy: My two best friends. * Add MIT-0 to the list of allowed liscences. * Fix docs for wasm. --------- Co-authored-by: Alphyr <47725341+a1phyr@users.noreply.github.com> --- .deny.toml | 1 + CHANGELOG.md | 14 + Cargo.lock | 172 ++++++++- examples/README.md | 115 ++++-- examples/capture/README.md | 18 - examples/capture/screenshot.png | Bin 565 -> 0 bytes examples/capture/src/main.rs | 265 ------------- examples/common/src/framework.rs | 5 +- examples/common/src/lib.rs | 1 + examples/common/src/utils.rs | 158 ++++++++ examples/hello-synchronization/Cargo.toml | 30 ++ examples/hello-synchronization/README.md | 19 + examples/hello-synchronization/src/main.rs | 211 ++++++++++ .../hello-synchronization/src/shaders.wgsl | 30 ++ examples/hello-synchronization/src/tests.rs | 23 ++ .../{capture => hello-workgroups}/Cargo.toml | 14 +- examples/hello-workgroups/README.md | 68 ++++ examples/hello-workgroups/src/main.rs | 199 ++++++++++ examples/hello-workgroups/src/shader.wgsl | 23 ++ examples/render-to-texture/Cargo.toml | 34 ++ examples/render-to-texture/README.md | 5 + examples/render-to-texture/src/main.rs | 170 ++++++++ examples/render-to-texture/src/shader.wgsl | 14 + examples/repeated-compute/Cargo.toml | 31 ++ examples/repeated-compute/README.md | 15 + examples/repeated-compute/src/main.rs | 256 ++++++++++++ examples/repeated-compute/src/shader.wgsl | 38 ++ examples/storage-texture/Cargo.toml | 37 ++ examples/storage-texture/README.md | 7 + examples/storage-texture/example.png | Bin 0 -> 81381 bytes examples/storage-texture/src/main.rs | 182 +++++++++ examples/storage-texture/src/shader.wgsl | 29 ++ examples/uniform-values/Cargo.toml | 28 ++ examples/uniform-values/README.md | 16 + examples/uniform-values/screenshot1.png | Bin 0 -> 467379 bytes examples/uniform-values/screenshot2.png | Bin 0 -> 1862057 bytes examples/uniform-values/screenshot3.png | Bin 0 -> 1555000 bytes examples/uniform-values/src/main.rs | 363 ++++++++++++++++++ examples/uniform-values/src/shader.wgsl | 61 +++ 39 files changed, 2302 insertions(+), 350 deletions(-) delete mode 100644 examples/capture/README.md delete mode 100644 examples/capture/screenshot.png delete mode 100644 examples/capture/src/main.rs create mode 100644 examples/common/src/utils.rs create mode 100644 examples/hello-synchronization/Cargo.toml create mode 100644 examples/hello-synchronization/README.md create mode 100644 examples/hello-synchronization/src/main.rs create mode 100644 examples/hello-synchronization/src/shaders.wgsl create mode 100644 examples/hello-synchronization/src/tests.rs rename examples/{capture => hello-workgroups}/Cargo.toml (71%) create mode 100644 examples/hello-workgroups/README.md create mode 100644 examples/hello-workgroups/src/main.rs create mode 100644 examples/hello-workgroups/src/shader.wgsl create mode 100644 examples/render-to-texture/Cargo.toml create mode 100644 examples/render-to-texture/README.md create mode 100644 examples/render-to-texture/src/main.rs create mode 100644 examples/render-to-texture/src/shader.wgsl create mode 100644 examples/repeated-compute/Cargo.toml create mode 100644 examples/repeated-compute/README.md create mode 100644 examples/repeated-compute/src/main.rs create mode 100644 examples/repeated-compute/src/shader.wgsl create mode 100644 examples/storage-texture/Cargo.toml create mode 100644 examples/storage-texture/README.md create mode 100644 examples/storage-texture/example.png create mode 100644 examples/storage-texture/src/main.rs create mode 100644 examples/storage-texture/src/shader.wgsl create mode 100644 examples/uniform-values/Cargo.toml create mode 100644 examples/uniform-values/README.md create mode 100644 examples/uniform-values/screenshot1.png create mode 100644 examples/uniform-values/screenshot2.png create mode 100644 examples/uniform-values/screenshot3.png create mode 100644 examples/uniform-values/src/main.rs create mode 100644 examples/uniform-values/src/shader.wgsl diff --git a/.deny.toml b/.deny.toml index f7c233c5d4..29e876c4b9 100644 --- a/.deny.toml +++ b/.deny.toml @@ -19,6 +19,7 @@ allow = [ "CC0-1.0", "ISC", "MIT", + "MIT-0", "MPL-2.0", "Unicode-DFS-2016", "Zlib", diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c0f68eaab..718c940bc2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -172,6 +172,18 @@ By @teoxoy in [#4185](https://github.com/gfx-rs/wgpu/pull/4185) - Add an overview of `RenderPass` and how render state works. By @kpreid in [#4055](https://github.com/gfx-rs/wgpu/pull/4055) +### Examples + +- Added the following examples: By @JustAnotherCodemonkey in [#3885](https://github.com/gfx-rs/wgpu/pull/3885). + - repeated-compute + - storage-texture + - render-to-texture + - uniform-values + - hello-workgroups + - hello-synchronization +- Created `wgpu-example::utils` module to contain misc functions and such that are common code but aren't part of the example framework. Add to it the functions `output_image_wasm` and `output_image_native`, both for outputting `Vec` RGBA images either to the disc or the web page. By @JustAnotherCodemonkey in [#3885](https://github.com/gfx-rs/wgpu/pull/3885). +- Removed `capture` example as it had issues (did not run on wasm) and has been replaced by `render-to-texture` (see above). By @JustAnotherCodemonkey in [#3885](https://github.com/gfx-rs/wgpu/pull/3885). + ## v0.17.2 (2023-10-03) ### Bug Fixes @@ -247,6 +259,8 @@ By @fornwall in [#3904](https://github.com/gfx-rs/wgpu/pull/3904) and [#3905](ht ### Added/New Features +#### General + - Empty scissor rects are allowed now, matching the specification. by @PJB3005 in [#3863](https://github.com/gfx-rs/wgpu/pull/3863). - Add back components info to `TextureFormat`s. By @teoxoy in [#3843](https://github.com/gfx-rs/wgpu/pull/3843). - Add `get_mapped_range_as_array_buffer` for faster buffer read-backs in wasm builds. By @ryankaplan in [#4042] (https://github.com/gfx-rs/wgpu/pull/4042). diff --git a/Cargo.lock b/Cargo.lock index 1a2765b8bc..a24ec2ac24 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -433,6 +433,12 @@ dependencies = [ "web-sys", ] +[[package]] +name = "const_panic" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6051f239ecec86fde3410901ab7860d458d160371533842974fc61f96d15879b" + [[package]] name = "convert_case" version = "0.4.0" @@ -819,6 +825,38 @@ version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" +[[package]] +name = "encase" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fce2eeef77fd4a293a54b62aa00ac9daebfbcda4bf8998c5a815635b004aa1c" +dependencies = [ + "const_panic", + "encase_derive", + "glam", + "thiserror", +] + +[[package]] +name = "encase_derive" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e520cde08cbf4f7cc097f61573ec06ce467019803de8ae82fb2823fa1554a0e" +dependencies = [ + "encase_derive_impl", +] + +[[package]] +name = "encase_derive_impl" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fe2568f851fd6144a45fa91cfed8fe5ca8fc0b56ba6797bfc1ed2771b90e37c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + [[package]] name = "encoding_rs" version = "0.8.33" @@ -1142,8 +1180,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if", + "js-sys", "libc", "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", ] [[package]] @@ -3229,24 +3269,6 @@ dependencies = [ "winit 0.28.7", ] -[[package]] -name = "wgpu-capture-example" -version = "0.17.0" -dependencies = [ - "bytemuck", - "console_error_panic_hook", - "console_log", - "env_logger", - "futures-intrusive", - "png", - "pollster", - "wasm-bindgen-futures", - "wasm-bindgen-test", - "wgpu", - "wgpu-example", - "winit 0.28.7", -] - [[package]] name = "wgpu-conservative-raster-example" version = "0.17.0" @@ -3391,6 +3413,25 @@ dependencies = [ "wgpu-test", ] +[[package]] +name = "wgpu-hello-synchronization-example" +version = "0.17.0" +dependencies = [ + "bytemuck", + "console_error_panic_hook", + "console_log", + "env_logger", + "futures-intrusive", + "log", + "pollster", + "wasm-bindgen-futures", + "wasm-bindgen-test", + "web-sys", + "wgpu", + "wgpu-example", + "wgpu-test", +] + [[package]] name = "wgpu-hello-triangle-example" version = "0.17.0" @@ -3418,6 +3459,23 @@ dependencies = [ "winit 0.28.7", ] +[[package]] +name = "wgpu-hello-workgroups-example" +version = "0.17.0" +dependencies = [ + "bytemuck", + "console_error_panic_hook", + "console_log", + "env_logger", + "futures-intrusive", + "log", + "pollster", + "wasm-bindgen-futures", + "web-sys", + "wgpu", + "wgpu-example", +] + [[package]] name = "wgpu-info" version = "0.17.0" @@ -3459,6 +3517,46 @@ dependencies = [ "winit 0.28.7", ] +[[package]] +name = "wgpu-render-to-texture-example" +version = "0.17.0" +dependencies = [ + "bytemuck", + "console_error_panic_hook", + "console_log", + "env_logger", + "futures-intrusive", + "log", + "png", + "pollster", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "wgpu", + "wgpu-example", + "winit 0.28.7", +] + +[[package]] +name = "wgpu-repeated-compute-example" +version = "0.17.0" +dependencies = [ + "bytemuck", + "console_error_panic_hook", + "console_log", + "env_logger", + "futures-intrusive", + "getrandom 0.2.10", + "log", + "pollster", + "wasm-bindgen-futures", + "wasm-bindgen-test", + "web-sys", + "wgpu", + "wgpu-example", + "wgpu-test", +] + [[package]] name = "wgpu-shadow-example" version = "0.17.0" @@ -3500,6 +3598,27 @@ dependencies = [ "winit 0.28.7", ] +[[package]] +name = "wgpu-storage-texture-example" +version = "0.17.0" +dependencies = [ + "bytemuck", + "console_error_panic_hook", + "console_log", + "env_logger", + "futures-intrusive", + "log", + "png", + "pollster", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-bindgen-test", + "web-sys", + "wgpu", + "wgpu-example", + "wgpu-test", +] + [[package]] name = "wgpu-test" version = "0.17.0" @@ -3567,6 +3686,23 @@ dependencies = [ "web-sys", ] +[[package]] +name = "wgpu-uniform-values-example" +version = "0.17.0" +dependencies = [ + "console_error_panic_hook", + "console_log", + "encase", + "env_logger", + "glam", + "png", + "pollster", + "wasm-bindgen-futures", + "web-sys", + "wgpu", + "winit 0.28.7", +] + [[package]] name = "wgpu-water-example" version = "0.17.0" diff --git a/examples/README.md b/examples/README.md index bf7c9b82a2..50e409e835 100644 --- a/examples/README.md +++ b/examples/README.md @@ -6,49 +6,88 @@ For the simplest examples without using any helping code (see `framework.rs` her - `hello-triangle` for graphics and presentation - `hello-compute` for pure computing -Notably, `capture` example shows rendering without a surface/window. It reads back the contents and saves them to a file. +### Summary of examples -All the examples use [WGSL](https://gpuweb.github.io/gpuweb/wgsl.html) shaders unless specified otherwise. +A summary of the basic examples as split along the graphics and compute "pathways", layed out roughly in order of building on each other. Those further indented and thus more roughly dependant on more other examples tend to be more complicated as well as those further down. It should be noted though that computing examples, even though they are mentioned further down (because rendering to a window is by far the most common use case), tend to be less complex as they require less surrounding context to create and manage a window to render to. -All framework-based examples render to the window and are reftested against the screenshot in the directory. +The rest of the example are for demonstrating specific features that you can come back for later when you know what those features are. + +#### General + +- `hello` - Demonstrates the basics of the WGPU library by getting a default Adapter and debugging it to the screen + +#### Graphics + +- `hello-triangle` - Provides an example of a bare-bones WGPU workflow using the Winit crate that simply renders a red triangle on a green background. + - `uniform-values` - Demonstrates the basics of enabling shaders and the GPU in general to access app state through uniform variables. `uniform-values` also serves as an example of rudimentary app building as the app stores state and takes window-captured keyboard events. The app displays the Mandelbrot Set in grayscale (similar to `storage-texture`) but allows the user to navigate and explore it using their arrow keys and scroll wheel. + - `cube` - Introduces the user to slightly more advanced models. The example creates a set of triangles to form a cube on the CPU and then uses a vertex and index buffer to send the generated model to the GPU for usage in rendering. It also uses a texture generated on the CPU to shade the sides of the cube and a uniform variable to apply a transformation matrix to the cube in the shader. + - `bunnymark` - Demonstrates many things but chief among them, preforming numerous draw calls with different bind groups in one render pass. The example also uses textures for the icon and uniform buffers to transfer both global and per-particle state. + - `skybox` - Shows off too many concepts to list here. The name comes from game development where a "skybox" acts as a background for rendering, usually to add a sky texture for immersion although they can also be used for backdrops to give the idea of a world beyond of the game scene. This example does so much more than this though as it uses a car model loaded from a file and uses the user's mouse to rotate the car model in 3d. `skybox` also makes use of depth textures and similar app patterns to `uniform-values`. + - `shadow` - Likely by far the most complex example (certainly the largest in lines of code) of the official WGPU examples. `shadow` demonstrates basic scene rendering with the main attraction being lighting and shadows (as the name implies). It is recommended that any user looking into lighting be very familiar with the basic concepts of not only rendering with WGPU but the primary mathematical ideas of computer graphics. +- `render-to-texture` - Renders to an image texture offscreen, demonstrating both off-screen rendering as well as how to add a sort of resolution-agnostic screenshot feature to an engine. This example either outputs an image file of your naming (pass command line arguments after specifying a `--` like `cargo run --bin render-to-texture -- "test.png"`) or adds an `img` element containing the image to the page in WASM. + +#### Compute + +- `hello-compute` - Demonstrates the basic workflow for getting arrays of numbers to the GPU, executing a shader on them, and getting the results back. The operation it preforms is finding the Collatz value (how many iterations of the [Collatz equation](https://en.wikipedia.org/wiki/Collatz_conjecture) it takes for the number to either reach 1 or overflow) of a set of numbers and prints the results. + - `repeated-compute` - Mostly for going into detail on subjects `hello-compute` did not. It, too, computes the Collatz conjecture but this time, it automatically loads large arrays of randomly generated numbers, prints them, runs them, and prints the result. It does this cycle 10 times. + - `hello-workgroups` - Teaches the user about the basics of compute workgroups; what they are and what they can do. + - `hello-synchronization` - Teaches the user about synchronization in WGSL, the ability to force all invocations in a workgroup to synchronize with each other before continuing via a sort of barrier. + - `storage-texture` - Demonstrates the use of storage textures as outputs to compute shaders. The example on the outside seems very similar to `render-to-texture` in that it outputs an image either to the file system or the web page except displaying a grayscale render of the Mandelbrot Set. However, inside, the example dispatches a grid of compute workgroups, one for each pixel which calculates the pixel value and stores it to the corresponding pixel of the output storage texture. + +#### Combined + +- `boids` - Demonstrates how to combine compute and render workflows by preforming a [boid](https://en.wikipedia.org/wiki/Boids) simulation and rendering the boids to the screen as little triangles. ## Feature matrix -| Feature | boids | bunnymark | cube | mipmap | msaa-line | shadow | skybox | texture-arrays | water | conservative-raster | stencil-triangles | -| ---------------------------- | ------ | --------- | ------ | ------ | --------- | ------ | ------ | -------------- | ------ | ------------------- | ----------------- | -| vertex attributes | :star: | | :star: | | :star: | :star: | :star: | :star: | :star: | | | -| instancing | :star: | | | | | | | | | | | -| lines and points | | | | | :star: | | | | | :star: | | -| dynamic buffer offsets | | :star: | | | | :star: | | | | | | -| implicit layout | | | | :star: | | | | | | | | -| sampled color textures | :star: | :star: | :star: | :star: | | | :star: | :star: | :star: | :star: | | -| storage textures | :star: | | | | | | | | | | | -| comparison samplers | | | | | | :star: | | | | | | -| subresource views | | | | :star: | | :star: | | | | | | -| cubemaps | | | | | | | :star: | | | | | -| multisampling | | | | | :star: | | | | | | | -| off-screen rendering | | | | | | :star: | | | :star: | :star: | | -| stencil testing | | | | | | | | | | | :star: | -| depth testing | | | | | | :star: | :star: | | :star: | | | -| depth biasing | | | | | | :star: | | | | | | -| read-only depth | | | | | | | | | :star: | | | -| blending | | :star: | :star: | | | | | | :star: | | | -| render bundles | | | | | :star: | | | | :star: | | | -| compute passes | :star: | | | | | | | | | | | -| error scopes | | | :star: | | | | | | | | | -| _optional extensions_ | | | | | | | | :star: | | | | -| - SPIR-V shaders | | | | | | | | | | | | -| - binding array | | | | | | | | :star: | | | | -| - push constants | | | | | | | | | | | | -| - depth clamping | | | | | | :star: | | | | | | -| - compressed textures | | | | | | | :star: | | | | | -| - polygon mode | | | :star: | | | | | | | | | -| - queries | | | | :star: | | | | | | | | -| - conservative rasterization | | | | | | | | | | :star: | | -| _integrations_ | | | | | | | | | | | | -| - staging belt | | | | | | | :star: | | | | | -| - typed arena | | | | | | | | | | | | -| - obj loading | | | | | | | :star: | | | | | +| Feature | boids | bunnymark | conservative-raster | cube | hello-synchronization | hello-workgroups | mipmap | msaa-line | render-to-texture | repeated-compute | shadow | skybox | stencil-triangles | storage-texture | texture-arrays | uniform-values | water | +| ---------------------------- | ------ | --------- | ------------------- | ------ | --------------------- | ---------------- | ------ | --------- | ----------------- | ---------------- | ------ | ------ | ----------------- | --------------- | -------------- | -------------- | ------ | +| vertex attributes | :star: | | | :star: | | | | :star: | | | :star: | :star: | | | :star: | | :star: | +| instancing | :star: | | | | | | | | | | | | | | | | | +| lines and points | | | :star: | | | | | :star: | | | | | | | | | | +| dynamic buffer offsets | | :star: | | | | | | | | | :star: | | | | | | | +| implicit layout | | | | | | | :star: | | | | | | | | | | | +| sampled color textures | :star: | :star: | :star: | :star: | | | :star: | | | | | :star: | | | :star: | | :star: | +| storage textures | :star: | | | | | | | | | | | | | :star: | | | | +| comparison samplers | | | | | | | | | | | :star: | | | | | | | +| subresource views | | | | | | | :star: | | | | :star: | | | | | | | +| cubemaps | | | | | | | | | | | | :star: | | | | | | +| multisampling | | | | | | | | :star: | | | | | | | | | | +| off-screen rendering | | | :star: | | | | | | :star: | | :star: | | | | | | :star: | +| stencil testing | | | | | | | | | | | | | :star: | | | | | +| depth testing | | | | | | | | | | | :star: | :star: | | | | | :star: | +| depth biasing | | | | | | | | | | | :star: | | | | | | | +| read-only depth | | | | | | | | | | | | | | | | | :star: | +| blending | | :star: | | :star: | | | | | | | | | | | | | :star: | +| render bundles | | | | | | | | :star: | | | | | | | | | :star: | +| uniform buffers | | | | | | | | | | | | | | | | :star: | | +| compute passes | :star: | | | | :star: | :star: | | | | :star: | | | | :star: | | | | +| buffer mapping | | | | | :star: | :star: | | | | :star: | | | | :star: | | | | +| error scopes | | | | :star: | | | | | | | | | | | | | | +| compute workgroups | | | | | :star: | :star: | | | | | | | | | | | | +| compute synchronization | | | | | :star: | | | | | | | | | | | | | +| _optional extensions_ | | | | | | | | | | | | | | | :star: | | | +| - SPIR-V shaders | | | | | | | | | | | | | | | | | | +| - binding array | | | | | | | | | | | | | | | :star: | | | +| - push constants | | | | | | | | | | | | | | | | | | +| - depth clamping | | | | | | | | | | | :star: | | | | | | | +| - compressed textures | | | | | | | | | | | | :star: | | | | | | +| - polygon mode | | | | :star: | | | | | | | | | | | | | | +| - queries | | | | | | | :star: | | | | | | | | | | | +| - conservative rasterization | | | :star: | | | | | | | | | | | | | | | +| _integrations_ | | | | | | | | | | | | | | | | | | +| - staging belt | | | | | | | | | | | | :star: | | | | | | +| - typed arena | | | | | | | | | | | | | | | | | | +| - obj loading | | | | | | | | | | | | :star: | | | | | | + + +## Additional notes + +Note that the examples regarding computing build off of each other; repeated-compute extends hello-compute, hello-workgroups assumes you know the basic workflow of gpu computation, and hello-synchronization assumes you know what a workgroup is. Also note that the computing examples cannot be downleveled to WebGL as WebGL does not allow storage textures. Running these in a browser will require that browser to support WebGPU. + +All the examples use [WGSL](https://gpuweb.github.io/gpuweb/wgsl.html) shaders unless specified otherwise. + +All framework-based examples render to the window and are reftested against the screenshot in the directory. ## Hacking diff --git a/examples/capture/README.md b/examples/capture/README.md deleted file mode 100644 index 2baea436db..0000000000 --- a/examples/capture/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# capture - -This example shows how to capture an image by rendering it to a texture, copying the texture to -a buffer, and retrieving it from the buffer. - -This could be used for "taking a screenshot," with the added benefit that this method doesn't -require a window to be created. - -## To Run - -``` -cargo run --bin capture -open examples/capture/red.png -``` - -## Screenshots - -![Capture example](./screenshot.png) diff --git a/examples/capture/screenshot.png b/examples/capture/screenshot.png deleted file mode 100644 index 4021a58f6eed2b3c536c5de3183984e32eac21f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 565 zcmeAS@N?(olHy`uVBq!ia0vp^DL{OJgAGW^*|;2JU|^i!>EaktG3U)iM?nSyjsphI z;=ee!$)CLHcz^!R6$UEDCP+9Z@pKxFGUyoyM;PWE0!C2+C~l}_uNVWv|Nl%tQ(+`C ZgL6~AM`zofYkz>E44$rjF6*2UngC|~xy=9o diff --git a/examples/capture/src/main.rs b/examples/capture/src/main.rs deleted file mode 100644 index 47a453de6b..0000000000 --- a/examples/capture/src/main.rs +++ /dev/null @@ -1,265 +0,0 @@ -use std::env; -/// This example shows how to capture an image by rendering it to a texture, copying the texture to -/// a buffer, and retrieving it from the buffer. This could be used for "taking a screenshot," with -/// the added benefit that this method doesn't require a window to be created. -use std::fs::File; -use std::io::Write; -use std::mem::size_of; -use wgpu::{Buffer, Device, SubmissionIndex}; - -async fn run(png_output_path: &str) { - let args: Vec<_> = env::args().collect(); - let (width, height) = match args.len() { - // 0 on wasm, 1 on desktop - 0 | 1 => (100usize, 200usize), - 3 => (args[1].parse().unwrap(), args[2].parse().unwrap()), - _ => { - println!("Incorrect number of arguments, possible usages:"); - println!("* 0 arguments - uses default width and height of (100, 200)"); - println!("* 2 arguments - uses specified width and height values"); - return; - } - }; - let (device, buffer, buffer_dimensions, submission_index) = - create_red_image_with_dimensions(width, height).await; - create_png( - png_output_path, - device, - buffer, - &buffer_dimensions, - submission_index, - ) - .await; -} - -async fn create_red_image_with_dimensions( - width: usize, - height: usize, -) -> (Device, Buffer, BufferDimensions, SubmissionIndex) { - let backends = wgpu::util::backend_bits_from_env().unwrap_or_else(wgpu::Backends::all); - let instance = wgpu::Instance::new(wgpu::InstanceDescriptor { - backends, - dx12_shader_compiler: wgpu::Dx12Compiler::default(), - gles_minor_version: wgpu::Gles3MinorVersion::default(), - }); - let adapter = instance - .request_adapter(&wgpu::RequestAdapterOptions::default()) - .await - .unwrap(); - - let (device, queue) = adapter - .request_device( - &wgpu::DeviceDescriptor { - label: None, - features: wgpu::Features::empty(), - limits: wgpu::Limits::downlevel_defaults(), - }, - None, - ) - .await - .unwrap(); - - // It is a WebGPU requirement that ImageCopyBuffer.layout.bytes_per_row % wgpu::COPY_BYTES_PER_ROW_ALIGNMENT == 0 - // So we calculate padded_bytes_per_row by rounding unpadded_bytes_per_row - // up to the next multiple of wgpu::COPY_BYTES_PER_ROW_ALIGNMENT. - // https://en.wikipedia.org/wiki/Data_structure_alignment#Computing_padding - let buffer_dimensions = BufferDimensions::new(width, height); - // The output buffer lets us retrieve the data as an array - let output_buffer = device.create_buffer(&wgpu::BufferDescriptor { - label: None, - size: (buffer_dimensions.padded_bytes_per_row * buffer_dimensions.height) as u64, - usage: wgpu::BufferUsages::MAP_READ | wgpu::BufferUsages::COPY_DST, - mapped_at_creation: false, - }); - - let texture_extent = wgpu::Extent3d { - width: buffer_dimensions.width as u32, - height: buffer_dimensions.height as u32, - depth_or_array_layers: 1, - }; - - // The render pipeline renders data into this texture - let texture = device.create_texture(&wgpu::TextureDescriptor { - size: texture_extent, - mip_level_count: 1, - sample_count: 1, - dimension: wgpu::TextureDimension::D2, - format: wgpu::TextureFormat::Rgba8UnormSrgb, - usage: wgpu::TextureUsages::RENDER_ATTACHMENT | wgpu::TextureUsages::COPY_SRC, - label: None, - view_formats: &[], - }); - - // Set the background to be red - let command_buffer = { - let mut encoder = - device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); - encoder.begin_render_pass(&wgpu::RenderPassDescriptor { - label: None, - color_attachments: &[Some(wgpu::RenderPassColorAttachment { - view: &texture.create_view(&wgpu::TextureViewDescriptor::default()), - resolve_target: None, - ops: wgpu::Operations { - load: wgpu::LoadOp::Clear(wgpu::Color::RED), - store: wgpu::StoreOp::Store, - }, - })], - depth_stencil_attachment: None, - timestamp_writes: None, - occlusion_query_set: None, - }); - - // Copy the data from the texture to the buffer - encoder.copy_texture_to_buffer( - texture.as_image_copy(), - wgpu::ImageCopyBuffer { - buffer: &output_buffer, - layout: wgpu::ImageDataLayout { - offset: 0, - bytes_per_row: Some(buffer_dimensions.padded_bytes_per_row as u32), - rows_per_image: None, - }, - }, - texture_extent, - ); - - encoder.finish() - }; - - let index = queue.submit(Some(command_buffer)); - (device, output_buffer, buffer_dimensions, index) -} - -async fn create_png( - png_output_path: &str, - device: Device, - output_buffer: Buffer, - buffer_dimensions: &BufferDimensions, - submission_index: SubmissionIndex, -) { - // Note that we're not calling `.await` here. - let buffer_slice = output_buffer.slice(..); - // Sets the buffer up for mapping, sending over the result of the mapping back to us when it is finished. - let (sender, receiver) = futures_intrusive::channel::shared::oneshot_channel(); - buffer_slice.map_async(wgpu::MapMode::Read, move |v| sender.send(v).unwrap()); - - // Poll the device in a blocking manner so that our future resolves. - // In an actual application, `device.poll(...)` should - // be called in an event loop or on another thread. - // - // We pass our submission index so we don't need to wait for any other possible submissions. - device.poll(wgpu::Maintain::WaitForSubmissionIndex(submission_index)); - - if let Some(Ok(())) = receiver.receive().await { - // If a file system is available, write the buffer as a PNG - let has_file_system_available = cfg!(not(target_arch = "wasm32")); - if !has_file_system_available { - return; - } - let padded_buffer = buffer_slice.get_mapped_range(); - - let mut png_encoder = png::Encoder::new( - File::create(png_output_path).unwrap(), - buffer_dimensions.width as u32, - buffer_dimensions.height as u32, - ); - png_encoder.set_depth(png::BitDepth::Eight); - png_encoder.set_color(png::ColorType::Rgba); - let mut png_writer = png_encoder - .write_header() - .unwrap() - .into_stream_writer_with_size(buffer_dimensions.unpadded_bytes_per_row) - .unwrap(); - - // from the padded_buffer we write just the unpadded bytes into the image - for chunk in padded_buffer.chunks(buffer_dimensions.padded_bytes_per_row) { - png_writer - .write_all(&chunk[..buffer_dimensions.unpadded_bytes_per_row]) - .unwrap(); - } - png_writer.finish().unwrap(); - - // With the current interface, we have to make sure all mapped views are - // dropped before we unmap the buffer. - drop(padded_buffer); - - output_buffer.unmap(); - } -} - -struct BufferDimensions { - width: usize, - height: usize, - unpadded_bytes_per_row: usize, - padded_bytes_per_row: usize, -} - -impl BufferDimensions { - fn new(width: usize, height: usize) -> Self { - let bytes_per_pixel = size_of::(); - let unpadded_bytes_per_row = width * bytes_per_pixel; - let align = wgpu::COPY_BYTES_PER_ROW_ALIGNMENT as usize; - let padded_bytes_per_row_padding = (align - unpadded_bytes_per_row % align) % align; - let padded_bytes_per_row = unpadded_bytes_per_row + padded_bytes_per_row_padding; - Self { - width, - height, - unpadded_bytes_per_row, - padded_bytes_per_row, - } - } -} - -fn main() { - #[cfg(not(target_arch = "wasm32"))] - { - env_logger::init(); - pollster::block_on(run("red.png")); - } - #[cfg(target_arch = "wasm32")] - { - std::panic::set_hook(Box::new(console_error_panic_hook::hook)); - console_log::init().expect("could not initialize logger"); - wasm_bindgen_futures::spawn_local(run("red.png")); - } -} - -#[cfg(test)] -mod tests { - use super::*; - use wgpu::BufferView; - - wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser); - - #[test] - // This test never creates a canvas, so will always fail on webgl2. - // #[wasm_bindgen_test::wasm_bindgen_test] - fn ensure_generated_data_matches_expected() { - assert_generated_data_matches_expected(); - } - - fn assert_generated_data_matches_expected() { - let (device, output_buffer, dimensions, submission_index) = - pollster::block_on(create_red_image_with_dimensions(100usize, 200usize)); - let buffer_slice = output_buffer.slice(..); - buffer_slice.map_async(wgpu::MapMode::Read, |_| ()); - device.poll(wgpu::Maintain::WaitForSubmissionIndex(submission_index)); - let padded_buffer = buffer_slice.get_mapped_range(); - let expected_buffer_size = dimensions.padded_bytes_per_row * dimensions.height; - assert_eq!(padded_buffer.len(), expected_buffer_size); - assert_that_content_is_all_red(&dimensions, padded_buffer); - } - - fn assert_that_content_is_all_red(dimensions: &BufferDimensions, padded_buffer: BufferView) { - let red = [0xFFu8, 0, 0, 0xFFu8]; - let single_rgba = 4; - padded_buffer - .chunks(dimensions.padded_bytes_per_row) - .map(|padded_buffer_row| &padded_buffer_row[..dimensions.unpadded_bytes_per_row]) - .for_each(|unpadded_row| { - unpadded_row - .chunks(single_rgba) - .for_each(|chunk| assert_eq!(chunk, &red)) - }); - } -} diff --git a/examples/common/src/framework.rs b/examples/common/src/framework.rs index dc373ca876..a897367b9f 100644 --- a/examples/common/src/framework.rs +++ b/examples/common/src/framework.rs @@ -4,6 +4,8 @@ use std::str::FromStr; #[cfg(not(target_arch = "wasm32"))] use std::time::Instant; #[cfg(target_arch = "wasm32")] +use wasm_bindgen::prelude::*; +#[cfg(target_arch = "wasm32")] use web_sys::{ImageBitmapRenderingContext, OffscreenCanvas}; use winit::{ event::{self, WindowEvent}, @@ -122,7 +124,6 @@ async fn setup(title: &str) -> Setup { let mut offscreen_canvas_setup: Option = None; #[cfg(target_arch = "wasm32")] { - use wasm_bindgen::JsCast; use winit::platform::web::WindowExtWebSys; let query_string = web_sys::window().unwrap().location().search().unwrap(); @@ -444,8 +445,6 @@ pub fn run(title: &str) { #[cfg(target_arch = "wasm32")] pub fn run(title: &str) { - use wasm_bindgen::prelude::*; - let title = title.to_owned(); wasm_bindgen_futures::spawn_local(async move { let setup = setup::(&title).await; diff --git a/examples/common/src/lib.rs b/examples/common/src/lib.rs index 0c717499e5..b647b81834 100644 --- a/examples/common/src/lib.rs +++ b/examples/common/src/lib.rs @@ -1 +1,2 @@ pub mod framework; +pub mod utils; diff --git a/examples/common/src/utils.rs b/examples/common/src/utils.rs new file mode 100644 index 0000000000..7b663e2bc3 --- /dev/null +++ b/examples/common/src/utils.rs @@ -0,0 +1,158 @@ +#[cfg(not(target_arch = "wasm32"))] +use std::io::Write; +#[cfg(target_arch = "wasm32")] +use wasm_bindgen::prelude::*; + +/// Replaces the site body with a message telling the user to open the console and use that. +#[cfg(target_arch = "wasm32")] +pub fn add_web_nothing_to_see_msg() { + web_sys::window() + .and_then(|window| window.document()) + .and_then(|document| document.body()) + .expect("Could not get document / body.") + .set_inner_html("

Nothing to see here! Open the console!

"); +} + +/// Outputs a vector of RGBA bytes as a png image with the given dimensions on the given path. +#[cfg(not(target_arch = "wasm32"))] +pub fn output_image_native(image_data: Vec, texture_dims: (usize, usize), path: String) { + let mut png_data = Vec::::with_capacity(image_data.len()); + let mut encoder = png::Encoder::new( + std::io::Cursor::new(&mut png_data), + texture_dims.0 as u32, + texture_dims.1 as u32, + ); + encoder.set_color(png::ColorType::Rgba); + let mut png_writer = encoder.write_header().unwrap(); + png_writer.write_image_data(&image_data[..]).unwrap(); + png_writer.finish().unwrap(); + log::info!("PNG file encoded in memory."); + + let mut file = std::fs::File::create(&path).unwrap(); + file.write_all(&png_data[..]).unwrap(); + log::info!("PNG file written to disc as \"{}\".", path); +} + +/// Effectively a version of `output_image_native` but meant for web browser contexts. +/// +/// This is achieved via in `img` element on the page. If the target image element does +/// not exist, this function creates one. If it does, the image data is overridden. +/// +/// This function makes use of a hidden staging canvas which the data is copied to in +/// order to create a data URL. +#[cfg(target_arch = "wasm32")] +pub fn output_image_wasm(image_data: Vec, texture_dims: (usize, usize)) { + let document = web_sys::window().unwrap().document().unwrap(); + let body = document.body().unwrap(); + + let canvas = if let Some(found_canvas) = document.get_element_by_id("staging-canvas") { + match found_canvas.dyn_into::() { + Ok(canvas_as_canvas) => canvas_as_canvas, + Err(e) => { + log::error!( + "In searching for a staging canvas for outputting an image \ + (element with id \"staging-canvas\"), found non-canvas element: {:?}. + Replacing with standard staging canvas.", + e + ); + e.remove(); + create_staging_canvas(&document) + } + } + } else { + log::info!("Output image staging canvas element not found; creating."); + create_staging_canvas(&document) + }; + // Having the size attributes the right size is so important, we should always do it + // just to be safe. Also, what if we might want the image size to be able to change? + let image_dimension_strings = (texture_dims.0.to_string(), texture_dims.1.to_string()); + canvas + .set_attribute("width", image_dimension_strings.0.as_str()) + .unwrap(); + canvas + .set_attribute("height", image_dimension_strings.1.as_str()) + .unwrap(); + + let context = canvas + .get_context("2d") + .unwrap() + .unwrap() + .dyn_into::() + .unwrap(); + let image_data = web_sys::ImageData::new_with_u8_clamped_array( + wasm_bindgen::Clamped(&image_data), + texture_dims.0 as u32, + ) + .unwrap(); + context.put_image_data(&image_data, 0.0, 0.0).unwrap(); + + // Get the img element that will act as our target for rendering from the canvas. + let image_element = if let Some(found_image_element) = + document.get_element_by_id("output-image-target") + { + match found_image_element.dyn_into::() { + Ok(e) => e, + Err(e) => { + log::error!( + "Found an element with the id \"output-image-target\" but it was not an image: {:?}. + Replacing with default image output element.", + e + ); + e.remove(); + create_output_image_element(&document) + } + } + } else { + log::info!("Output image element not found; creating."); + create_output_image_element(&document) + }; + // The canvas is currently the image we ultimately want. We can create a data url from it now. + let data_url = canvas.to_data_url().unwrap(); + image_element.set_src(&data_url); + log::info!("Copied image from staging canvas to image element."); + + if document.get_element_by_id("image-for-you-text").is_none() { + log::info!("\"Image for you\" text not found; creating."); + let p = document + .create_element("p") + .expect("Failed to create p element for \"image for you text\"."); + p.set_text_content(Some( + "The above image is for you! + You can drag it to your desktop to download.", + )); + p.set_id("image-for-you-text"); + body.append_child(&p) + .expect("Failed to append \"image for you text\" to document body."); + } +} + +#[cfg(target_arch = "wasm32")] +fn create_staging_canvas(document: &web_sys::Document) -> web_sys::HtmlCanvasElement { + let body = document.body().expect("Failed to get document body."); + let new_canvas = document + .create_element("canvas") + .expect("Failed to create staging canvas.") + .dyn_into::() + .unwrap(); + // We don't want to show the canvas, we just want it to exist in the background. + new_canvas.set_attribute("hidden", "true").unwrap(); + new_canvas.set_attribute("background-color", "red").unwrap(); + body.append_child(&new_canvas).unwrap(); + log::info!("Created new staging canvas: {:?}", &new_canvas); + new_canvas +} + +#[cfg(target_arch = "wasm32")] +fn create_output_image_element(document: &web_sys::Document) -> web_sys::HtmlImageElement { + let body = document.body().expect("Failed to get document body."); + let new_image = document + .create_element("img") + .expect("Failed to create output image element.") + .dyn_into::() + .unwrap(); + new_image.set_id("output-image-target"); + body.append_child(&new_image) + .expect("Failed to append output image target to document body."); + log::info!("Created new output target image: {:?}", &new_image); + new_image +} diff --git a/examples/hello-synchronization/Cargo.toml b/examples/hello-synchronization/Cargo.toml new file mode 100644 index 0000000000..fb31c55cad --- /dev/null +++ b/examples/hello-synchronization/Cargo.toml @@ -0,0 +1,30 @@ +[package] +name = "wgpu-hello-synchronization-example" +version.workspace = true +license.workspace = true +edition.workspace = true +description = "wgpu hello synchronization example" +publish = false + +[[bin]] +name = "hello-synchronization" +path = "src/main.rs" + +[dependencies] +bytemuck.workspace = true +env_logger.workspace = true +futures-intrusive.workspace = true +log.workspace = true +pollster.workspace = true +wgpu.workspace = true +wgpu-example.workspace = true + +[target.'cfg(target_arch = "wasm32")'.dependencies] +console_error_panic_hook.workspace = true +console_log.workspace = true +wasm-bindgen-futures.workspace = true +web-sys = { workspace = true, features = ["Document"] } + +[dev-dependencies] +wasm-bindgen-test.workspace = true +wgpu-test.workspace = true \ No newline at end of file diff --git a/examples/hello-synchronization/README.md b/examples/hello-synchronization/README.md new file mode 100644 index 0000000000..41c7d0d34a --- /dev/null +++ b/examples/hello-synchronization/README.md @@ -0,0 +1,19 @@ +# hello-synchronization + +This example is +1. A small demonstration of the importance of synchronization. +2. How basic synchronization you can understand from the CPU is preformed on the GPU. + +## A Primer on WGSL Synchronization Functions + +The official documentation is a little scattered and sparse. The meat of the subject is found [here](https://www.w3.org/TR/2023/WD-WGSL-20230629/#sync-builtin-functions) but there's also a bit on control barriers [here](https://www.w3.org/TR/2023/WD-WGSL-20230629/#control-barrier). The most important part comes from that first link though, where the spec says "the affected memory and atomic operations program-ordered before the synchronization function must be visible to all other threads in the workgroup before any affected memory or atomic operation program-ordered after the synchronization function is executed by a member of the workgroup." And at the second, we also get "a control barrier is executed by all invocations in the same workgroup as if it were executed concurrently." + +That's rather vague (and it is by design) so let's break it down and make a comparison that should make that sentence come a bit more into focus. [Barriers in Rust](https://doc.rust-lang.org/std/sync/struct.Barrier.html#) fit both bills rather nicely. Firstly, Rust barriers are executed as if they were executed concurrently because they are - at least as long as you define the execution by when it finishes, when [`Barrier::wait`](https://doc.rust-lang.org/std/sync/struct.Barrier.html#method.wait) finally unblocks the thread and execution continues concurrently from there. Rust barriers also fit the first bill; because all affected threads must execute `Barrier::wait` in order for execution to continue, we can guarantee that _all (synchronous)_ operations ordered before the wait call are executed before any operations ordered after the wait call begin execution. Applying this to WGSL barriers, we can think of a barrier in WGSL as a checkpoint all invocations within each workgroup must reach before the entire workgroup continues with the program together. + +There are two key differences though and one is that although Rust barriers don't enforce that atomic operations called before the barrier are visible after the barrier, WGSL barriers do. This is incredibly useful and important though and is demonstrated in this example. + +Another is that WGSL's synchronous functions only affect memory and atomic operations in a certain address space. This applies to the whole 'all atomic operations called before the function are visible after the function' thing. There are currently three different synchronization functions: +- `storageBarrier` which works in the storage address space and is a simple barrier. +- `workgroupBarrier` which works in the workgroup address space and is a simple barrier. +- `workgroupUniformLoad` which also works in the workgroup address space and is more than just a barrier. +Read up on all three [here](https://www.w3.org/TR/2023/WD-WGSL-20230629/#sync-builtin-functions). \ No newline at end of file diff --git a/examples/hello-synchronization/src/main.rs b/examples/hello-synchronization/src/main.rs new file mode 100644 index 0000000000..2a8ecac914 --- /dev/null +++ b/examples/hello-synchronization/src/main.rs @@ -0,0 +1,211 @@ +const ARR_SIZE: usize = 128; + +struct ExecuteResults { + patient_workgroup_results: Vec, + hasty_workgroup_results: Vec, +} + +async fn run() { + let instance = wgpu::Instance::default(); + let adapter = instance + .request_adapter(&wgpu::RequestAdapterOptions::default()) + .await + .unwrap(); + let (device, queue) = adapter + .request_device( + &wgpu::DeviceDescriptor { + label: None, + features: wgpu::Features::empty(), + limits: wgpu::Limits::downlevel_defaults(), + }, + None, + ) + .await + .unwrap(); + + let ExecuteResults { + patient_workgroup_results, + hasty_workgroup_results, + } = execute(&device, &queue, ARR_SIZE).await; + + // Print data + log::info!("Patient results: {:?}", patient_workgroup_results); + if !patient_workgroup_results.iter().any(|e| *e != 16) { + log::info!("patient_main was patient."); + } else { + log::error!("patient_main was not patient!"); + } + log::info!("Hasty results: {:?}", hasty_workgroup_results); + if hasty_workgroup_results.iter().any(|e| *e != 16) { + log::info!("hasty_main was not patient."); + } else { + log::info!("hasty_main got lucky."); + } +} + +async fn execute( + device: &wgpu::Device, + queue: &wgpu::Queue, + result_vec_size: usize, +) -> ExecuteResults { + let mut local_patient_workgroup_results = vec![0u32; result_vec_size]; + let mut local_hasty_workgroup_results = local_patient_workgroup_results.clone(); + + let shaders_module = device.create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed(include_str!("shaders.wgsl"))), + }); + + let storage_buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: std::mem::size_of_val(local_patient_workgroup_results.as_slice()) as u64, + usage: wgpu::BufferUsages::STORAGE | wgpu::BufferUsages::COPY_SRC, + mapped_at_creation: false, + }); + let output_staging_buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: std::mem::size_of_val(local_patient_workgroup_results.as_slice()) as u64, + usage: wgpu::BufferUsages::COPY_DST | wgpu::BufferUsages::MAP_READ, + mapped_at_creation: false, + }); + + let bind_group_layout = device.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: &[wgpu::BindGroupLayoutEntry { + binding: 0, + visibility: wgpu::ShaderStages::COMPUTE, + ty: wgpu::BindingType::Buffer { + ty: wgpu::BufferBindingType::Storage { read_only: false }, + has_dynamic_offset: false, + min_binding_size: None, + }, + count: None, + }], + }); + let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, + layout: &bind_group_layout, + entries: &[wgpu::BindGroupEntry { + binding: 0, + resource: storage_buffer.as_entire_binding(), + }], + }); + + let pipeline_layout = device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { + label: None, + bind_group_layouts: &[&bind_group_layout], + push_constant_ranges: &[], + }); + let patient_pipeline = device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { + label: None, + layout: Some(&pipeline_layout), + module: &shaders_module, + entry_point: "patient_main", + }); + let hasty_pipeline = device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { + label: None, + layout: Some(&pipeline_layout), + module: &shaders_module, + entry_point: "hasty_main", + }); + + //---------------------------------------------------------- + + let mut command_encoder = + device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); + { + let mut compute_pass = command_encoder.begin_compute_pass(&wgpu::ComputePassDescriptor { + label: None, + timestamp_writes: None, + }); + compute_pass.set_pipeline(&patient_pipeline); + compute_pass.set_bind_group(0, &bind_group, &[]); + compute_pass.dispatch_workgroups(local_patient_workgroup_results.len() as u32, 1, 1); + } + queue.submit(Some(command_encoder.finish())); + + get_data( + local_patient_workgroup_results.as_mut_slice(), + &storage_buffer, + &output_staging_buffer, + device, + queue, + ) + .await; + + let mut command_encoder = + device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); + { + let mut compute_pass = command_encoder.begin_compute_pass(&wgpu::ComputePassDescriptor { + label: None, + timestamp_writes: None, + }); + compute_pass.set_pipeline(&hasty_pipeline); + compute_pass.set_bind_group(0, &bind_group, &[]); + compute_pass.dispatch_workgroups(local_patient_workgroup_results.len() as u32, 1, 1); + } + queue.submit(Some(command_encoder.finish())); + + get_data( + local_hasty_workgroup_results.as_mut_slice(), + &storage_buffer, + &output_staging_buffer, + device, + queue, + ) + .await; + + ExecuteResults { + patient_workgroup_results: local_patient_workgroup_results, + hasty_workgroup_results: local_hasty_workgroup_results, + } +} + +async fn get_data( + output: &mut [T], + storage_buffer: &wgpu::Buffer, + staging_buffer: &wgpu::Buffer, + device: &wgpu::Device, + queue: &wgpu::Queue, +) { + let mut command_encoder = + device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); + command_encoder.copy_buffer_to_buffer( + storage_buffer, + 0, + staging_buffer, + 0, + std::mem::size_of_val(output) as u64, + ); + queue.submit(Some(command_encoder.finish())); + let buffer_slice = staging_buffer.slice(..); + let (sender, receiver) = futures_intrusive::channel::shared::oneshot_channel(); + buffer_slice.map_async(wgpu::MapMode::Read, move |r| sender.send(r).unwrap()); + device.poll(wgpu::Maintain::Wait); + receiver.receive().await.unwrap().unwrap(); + output.copy_from_slice(bytemuck::cast_slice(&buffer_slice.get_mapped_range()[..])); + staging_buffer.unmap(); +} + +fn main() { + #[cfg(not(target_arch = "wasm32"))] + { + env_logger::builder() + .filter_level(log::LevelFilter::Info) + .format_timestamp_nanos() + .init(); + pollster::block_on(run()); + } + #[cfg(target_arch = "wasm32")] + { + std::panic::set_hook(Box::new(console_error_panic_hook::hook)); + console_log::init_with_level(log::Level::Info).expect("could not initialize logger"); + + wgpu_example::utils::add_web_nothing_to_see_msg(); + + wasm_bindgen_futures::spawn_local(run()); + } +} + +#[cfg(test)] +mod tests; diff --git a/examples/hello-synchronization/src/shaders.wgsl b/examples/hello-synchronization/src/shaders.wgsl new file mode 100644 index 0000000000..dd3b2dd38f --- /dev/null +++ b/examples/hello-synchronization/src/shaders.wgsl @@ -0,0 +1,30 @@ +@group(0) +@binding(0) +var output: array; + +var count: atomic; + +@compute +@workgroup_size(16) +fn patient_main( + @builtin(local_invocation_id) local_id: vec3, + @builtin(workgroup_id) workgroup_id: vec3 +) { + atomicAdd(&count, 1u); + workgroupBarrier(); + if (local_id.x == 0u) { + output[workgroup_id.x] = atomicLoad(&count); + } +} + +@compute +@workgroup_size(16) +fn hasty_main( + @builtin(local_invocation_id) local_id: vec3, + @builtin(workgroup_id) workgroup_id: vec3 +) { + atomicAdd(&count, 1u); + if (local_id.x == 0u) { + output[workgroup_id.x] = atomicLoad(&count); + } +} \ No newline at end of file diff --git a/examples/hello-synchronization/src/tests.rs b/examples/hello-synchronization/src/tests.rs new file mode 100644 index 0000000000..c626938233 --- /dev/null +++ b/examples/hello-synchronization/src/tests.rs @@ -0,0 +1,23 @@ +use super::*; +use pollster::FutureExt; +use wgpu_test::{initialize_test, TestParameters}; + +wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser); + +#[test] +#[wasm_bindgen_test::wasm_bindgen_test] +fn hello_synchronization_test_results() { + initialize_test( + // Taken from hello-compute tests. + TestParameters::default() + .downlevel_flags(wgpu::DownlevelFlags::COMPUTE_SHADERS) + .limits(wgpu::Limits::downlevel_defaults()), + |ctx| { + let ExecuteResults { + patient_workgroup_results, + hasty_workgroup_results: _, + } = execute(&ctx.device, &ctx.queue, ARR_SIZE).block_on(); + assert_eq!(patient_workgroup_results, [16_u32; ARR_SIZE]); + }, + ); +} diff --git a/examples/capture/Cargo.toml b/examples/hello-workgroups/Cargo.toml similarity index 71% rename from examples/capture/Cargo.toml rename to examples/hello-workgroups/Cargo.toml index 87c9b6c38f..20183f6d48 100644 --- a/examples/capture/Cargo.toml +++ b/examples/hello-workgroups/Cargo.toml @@ -1,28 +1,26 @@ [package] -name = "wgpu-capture-example" +name = "wgpu-hello-workgroups-example" version.workspace = true license.workspace = true edition.workspace = true -description = "wgpu capture example" +description = "wgpu hello workgroups example" publish = false [[bin]] -name = "capture" +name = "hello-workgroups" path = "src/main.rs" [dependencies] bytemuck.workspace = true env_logger.workspace = true futures-intrusive.workspace = true +log.workspace = true pollster.workspace = true -png.workspace = true -wasm-bindgen-test.workspace = true -wgpu-example.workspace = true wgpu.workspace = true -winit.workspace = true +wgpu-example.workspace = true [target.'cfg(target_arch = "wasm32")'.dependencies] console_error_panic_hook.workspace = true console_log.workspace = true wasm-bindgen-futures.workspace = true - +web-sys = { workspace = true, features = ["Document"] } diff --git a/examples/hello-workgroups/README.md b/examples/hello-workgroups/README.md new file mode 100644 index 0000000000..5b913af06d --- /dev/null +++ b/examples/hello-workgroups/README.md @@ -0,0 +1,68 @@ +# hello-workgroups + +Now you finally know what that silly little `@workgroup_size(1)` means! + +This example is an extremely bare-bones and arguably somewhat unreasonable demonstration of what workgroup sizes mean in an attempt to explain workgroups in general. + +The example starts with two arrays of numbers. One where `a[i] = i` and the other where `b[i] = 2i`. Both are bound to the shader. The program dispatches a workgroup for each index, each workgroup representing both elements at that index in both arrays. Each invocation in each workgroup works on its respective array and adds 1 to the element there. + +## What are Workgroups? + +### TLDR / Key Takeaways + +- Workgroups fit in a 3d grid of workgroups executed in a single dispatch. +- All invocations in a workgroup are guaranteed to execute concurrently. +- Workgroups carry no other guarantees for concurrency outside of those individual workgroups, meaning... + - No two workgroups can be guaranteed to be executed in parallel. + - No two workgroups can be guaranteed NOT to be executed in parallel. + - No set of workgroups can be guaranteed to execute in any predictable or reliable order in relation to each other. +- Ths size of a workgroup is defined with the `@workgroup_size` attribute on a compute shader main function. +- The location of an invocation within its workgroup grid can be got with `@builtin(local_invocation_id)`. +- The location of an invocation within the entire compute shader grid can be gotten with `@builtin(global_invocation_id)`. +- The location of an invocation's workgroup within the dispatch grid can be gotten with `@builtin(workgroup_id)`. +- Workgroups share memory within the `workgroup` address space. Workgroup memory is similar to private memory but it is shared within a workgroup. Invocations within a workgroup will see the same memory but invocations across workgroups will be accessing different memory. + +### Introduction + +When you call `ComputePass::dispatch_workgroups`, the function dispatches multiple workgroups in a 3d grid defined by the `x`, `y`, and `z` parameters you pass to the function. For example, `dispatch_workgroups(5, 2, 1)` would create a dispatch grid like +|||||| +|---|---|---|---|---| +| W | W | W | W | W | +| W | W | W | W | W | + +Where each W is a workgroup. If you want your shader to consider what workgroup within the dispatch the current invocation is in, add a function argument with type `vec3` and with the attribute `@builtin(workgroup_id)`. + +Note here that in this example, the term "dispatch grid" is used throughout to mean the grid of workgroups within the dispatch but is not a proper term within WGSL. Other terms to know though that are proper are "workgroup grid" which refers to the invocations in a single _workgroup_ and "compute shader grid" which refers to the grid of _all_ the invocations in the _entire dispatch_. + +### Within the Workgroup + +Although with hello-compute and repeated-compute, we used a workgroup size of `(1)`, or rather, (1, 1, 1), and then each workgroup called from `dispatch_workgroups` made _an_ invocation, this isn't always the case. Each workgroup represents its own little grid of individual invocations tied together. This could be just one or practically any number in a 3d grid of invocations. The grid size of each workgroup and thus the number of invocations called per workgroup is determined by the `@workgroup_size` attribute you've seen in other compute shaders. To get the current invocation's location within a workgroup, add a `vec3` argument to the main function with the attribute `@builtin(local_invocation_id)`. We'll look at the compute shader grid of a dispatch of size (2, 2, 1) with workgroup sizes of (2, 2, 1) as well. Let `w` be the `workgroup_id` and `i` be the `local_invocation_id`. + +||||| +|------------------------|------------------------|------------------------|------------------------| +| w(0, 0, 0), i(0, 0, 0) | w(0, 0, 0), i(1, 0, 0) | w(1, 0, 0), i(0, 0, 0) | w(1, 0, 0), i(1, 0, 0) | +| w(0, 0, 0), i(0, 1, 0) | w(0, 0, 0), i(1, 1, 0) | w(1, 0, 0), i(0, 1, 0) | w(1, 0, 0), i(1, 1, 0) | +| w(0, 1, 0), i(0, 0, 0) | w(0, 1, 0), i(1, 0, 0) | w(1, 1, 0), i(0, 0, 0) | w(1, 1, 0), i(1, 0, 0) | +| w(0, 1, 0), i(0, 1, 0) | w(0, 1, 0), i(1, 1, 0) | w(1, 1, 0), i(0, 1, 0) | w(1, 1, 0), i(1, 1, 0) | + +### Execution of Workgroups + +As stated before, workgroups are groups of invocations. The invocations within a workgroup are always guaranteed to execute in parallel. That said, the guarantees basically stop there. You cannot get any guarantee as to when any given workgroup will execute, including in relation to other workgroups. You can't guarantee that any two workgroups will execute together nor can you guarantee that they will _not_ execute together. Of the workgroups that don't execute together, you additionally cannot guarantee that they will execute in any particular order. When your function runs in an invocation, you know that it will be working together with its workgroup buddies and that's basically it. + +See [the WGSL spec on compute shader execution](https://www.w3.org/TR/2023/WD-WGSL-20230629/#compute-shader-workgroups) for more details. + +### Workgroups and their Invocations in a Global Scope + +As mentioned above, invocations exist both within the context of a workgroup grid as well as a compute shader grid which is a grid, divided into workgroup sections, of invocations that represents the whole of the dispatch. Similar to how `@builtin(local_invocation_id)` gets you the place of the invocation within the workgroup grid, `@builtin(global_invocation_id)` gets you the place of the invocation within the entire compute shader grid. Slight trivia: you might imagine that this is computed from `local_invocation_id` and `workgroup_id` but it's actually the opposite. Everything operates on the compute shader grid, the workgroups are imagined sectors within the compute shader grid, and `local_invocation_id` and `workgroup_id` are calculated based on global id and known workgroup size. Yes, we live in a matrix... of compute shader invocations. This isn't super useful information but it can help fit things into a larger picture. + +## Barriers and Workgroups + +Arguably, workgroups are at their most useful when being used alongside barriers. Since barriers are already explained more thoroughly in the hello-synchronization example, this section will be short. Despite affecting different memory address spaces, all synchronization functions affect invocations on a workgroup level, synchronizing the workgroup. See [hello-synchronization/README.md](../hello-synchronization/README.md) for more. + +## Links to Technical Resources + +For a rather long explainer, this README may still leave the more technically minded person with questions. The specifications for both WebGPU and WGSL ("WebGPU Shading Language") are long and it's rather unintuitive that by far the vast majority of specification on how workgroups and compute shaders more generally work, is all in the WGSL spec. Below are some links into the specifications at a couple interesting points: + +- [Here](https://www.w3.org/TR/WGSL/#compute-shader-workgroups) is the main section on workgroups and outlines important terminology in technical terms. It is recommended that everyone looking for something in this section of this README start by reading this. +- [Here](https://www.w3.org/TR/webgpu/#computing-operations) is a section on compute shaders from a WebGPU perspective (instead of WGSL). It's still a stub but hopefully it will grow in the future. +- Don't forget your [`@builtin()`'s](https://www.w3.org/TR/WGSL/#builtin-inputs-outputs)! \ No newline at end of file diff --git a/examples/hello-workgroups/src/main.rs b/examples/hello-workgroups/src/main.rs new file mode 100644 index 0000000000..53e8b2adca --- /dev/null +++ b/examples/hello-workgroups/src/main.rs @@ -0,0 +1,199 @@ +//! This example assumes that you've seen hello-compute and or repeated-compute +//! and thus have a general understanding of what's going on here. +//! +//! There's an explainer on what this example does exactly and what workgroups +//! are and the meaning of `@workgroup(size_x, size_y, size_z)` in the +//! README. Also see commenting in shader.wgsl as well. +//! +//! Only parts specific to this example will be commented. + +use wgpu::util::DeviceExt; + +async fn run() { + let mut local_a = [0i32; 100]; + for (i, e) in local_a.iter_mut().enumerate() { + *e = i as i32; + } + log::info!("Input a: {local_a:?}"); + let mut local_b = [0i32; 100]; + for (i, e) in local_b.iter_mut().enumerate() { + *e = i as i32 * 2; + } + log::info!("Input b: {local_b:?}"); + + let instance = wgpu::Instance::default(); + let adapter = instance + .request_adapter(&wgpu::RequestAdapterOptions::default()) + .await + .unwrap(); + let (device, queue) = adapter + .request_device( + &wgpu::DeviceDescriptor { + label: None, + features: wgpu::Features::empty(), + limits: wgpu::Limits::downlevel_defaults(), + }, + None, + ) + .await + .unwrap(); + + let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed(include_str!("shader.wgsl"))), + }); + + let storage_buffer_a = device.create_buffer_init(&wgpu::util::BufferInitDescriptor { + label: None, + contents: bytemuck::cast_slice(&local_a[..]), + usage: wgpu::BufferUsages::STORAGE | wgpu::BufferUsages::COPY_SRC, + }); + let storage_buffer_b = device.create_buffer_init(&wgpu::util::BufferInitDescriptor { + label: None, + contents: bytemuck::cast_slice(&local_b[..]), + usage: wgpu::BufferUsages::STORAGE | wgpu::BufferUsages::COPY_SRC, + }); + let output_staging_buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: std::mem::size_of_val(&local_a) as u64, + usage: wgpu::BufferUsages::COPY_DST | wgpu::BufferUsages::MAP_READ, + mapped_at_creation: false, + }); + + let bind_group_layout = device.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: &[ + wgpu::BindGroupLayoutEntry { + binding: 0, + visibility: wgpu::ShaderStages::COMPUTE, + ty: wgpu::BindingType::Buffer { + ty: wgpu::BufferBindingType::Storage { read_only: false }, + has_dynamic_offset: false, + min_binding_size: None, + }, + count: None, + }, + wgpu::BindGroupLayoutEntry { + binding: 1, + visibility: wgpu::ShaderStages::COMPUTE, + ty: wgpu::BindingType::Buffer { + ty: wgpu::BufferBindingType::Storage { read_only: false }, + has_dynamic_offset: false, + min_binding_size: None, + }, + count: None, + }, + ], + }); + let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, + layout: &bind_group_layout, + entries: &[ + wgpu::BindGroupEntry { + binding: 0, + resource: storage_buffer_a.as_entire_binding(), + }, + wgpu::BindGroupEntry { + binding: 1, + resource: storage_buffer_b.as_entire_binding(), + }, + ], + }); + + let pipeline_layout = device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { + label: None, + bind_group_layouts: &[&bind_group_layout], + push_constant_ranges: &[], + }); + let pipeline = device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { + label: None, + layout: Some(&pipeline_layout), + module: &shader, + entry_point: "main", + }); + + //---------------------------------------------------------- + + let mut command_encoder = + device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); + { + let mut compute_pass = command_encoder.begin_compute_pass(&wgpu::ComputePassDescriptor { + label: None, + timestamp_writes: None, + }); + compute_pass.set_pipeline(&pipeline); + compute_pass.set_bind_group(0, &bind_group, &[]); + /* Note that since each workgroup will cover both arrays, we only need to + cover the length of one array. */ + compute_pass.dispatch_workgroups(local_a.len() as u32, 1, 1); + } + queue.submit(Some(command_encoder.finish())); + + //---------------------------------------------------------- + + get_data( + &mut local_a[..], + &storage_buffer_a, + &output_staging_buffer, + &device, + &queue, + ) + .await; + get_data( + &mut local_b[..], + &storage_buffer_b, + &output_staging_buffer, + &device, + &queue, + ) + .await; + + log::info!("Output in A: {local_a:?}"); + log::info!("Output in B: {local_b:?}"); +} + +async fn get_data( + output: &mut [T], + storage_buffer: &wgpu::Buffer, + staging_buffer: &wgpu::Buffer, + device: &wgpu::Device, + queue: &wgpu::Queue, +) { + let mut command_encoder = + device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); + command_encoder.copy_buffer_to_buffer( + storage_buffer, + 0, + staging_buffer, + 0, + std::mem::size_of_val(output) as u64, + ); + queue.submit(Some(command_encoder.finish())); + let buffer_slice = staging_buffer.slice(..); + let (sender, receiver) = futures_intrusive::channel::shared::oneshot_channel(); + buffer_slice.map_async(wgpu::MapMode::Read, move |r| sender.send(r).unwrap()); + device.poll(wgpu::Maintain::Wait); + receiver.receive().await.unwrap().unwrap(); + output.copy_from_slice(bytemuck::cast_slice(&buffer_slice.get_mapped_range()[..])); + staging_buffer.unmap(); +} + +fn main() { + #[cfg(not(target_arch = "wasm32"))] + { + env_logger::builder() + .filter_level(log::LevelFilter::Info) + .format_timestamp_nanos() + .init(); + pollster::block_on(run()); + } + #[cfg(target_arch = "wasm32")] + { + std::panic::set_hook(Box::new(console_error_panic_hook::hook)); + console_log::init_with_level(log::Level::Info).expect("could not initialize logger"); + + wgpu_example::utils::add_web_nothing_to_see_msg(); + + wasm_bindgen_futures::spawn_local(run()); + } +} diff --git a/examples/hello-workgroups/src/shader.wgsl b/examples/hello-workgroups/src/shader.wgsl new file mode 100644 index 0000000000..c1676663ab --- /dev/null +++ b/examples/hello-workgroups/src/shader.wgsl @@ -0,0 +1,23 @@ +// This is useful because we can't use, say, vec2> because +// of array being unsized. Normally we would interweave them or use +// and array of structs but this is just for the sake of demonstration. + +@group(0) +@binding(0) +var a: array; + +@group(0) +@binding(1) +var b: array; + +@compute +@workgroup_size(2, 1, 1) +fn main(@builtin(local_invocation_id) lid: vec3, @builtin(workgroup_id) wid: vec3) { + if lid.x == 0u { + // Do computation (use your imagionation) + a[wid.x] += 1; + } else if lid.x == 1u { + // Do computation + b[wid.x] += 1; + } +} \ No newline at end of file diff --git a/examples/render-to-texture/Cargo.toml b/examples/render-to-texture/Cargo.toml new file mode 100644 index 0000000000..042467de03 --- /dev/null +++ b/examples/render-to-texture/Cargo.toml @@ -0,0 +1,34 @@ +[package] +name = "wgpu-render-to-texture-example" +version.workspace = true +license.workspace = true +edition.workspace = true +description = "wgpu render to texture example" +publish = false + +[[bin]] +name = "render-to-texture" +path = "src/main.rs" + +[dependencies] +bytemuck.workspace = true +env_logger.workspace = true +futures-intrusive.workspace = true +log.workspace = true +pollster.workspace = true +wgpu.workspace = true +wgpu-example.workspace = true +winit.workspace = true + +[target.'cfg(not(target_arch = "wasm32"))'.dependencies] +png.workspace = true + +[target.'cfg(target_arch = "wasm32")'.dependencies] +console_error_panic_hook.workspace = true +console_log.workspace = true +wasm-bindgen.workspace = true +wasm-bindgen-futures.workspace = true +web-sys = { workspace = true, features = [ + "HtmlCanvasElement", "Document", "CanvasRenderingContext2d", "Window", "ImageData", + "HtmlImageElement" +] } diff --git a/examples/render-to-texture/README.md b/examples/render-to-texture/README.md new file mode 100644 index 0000000000..dbc1943234 --- /dev/null +++ b/examples/render-to-texture/README.md @@ -0,0 +1,5 @@ +# render-to-texture + +Similar to hello-triangle but instead of rendering to a window or canvas, renders to a texture that is then output as an image like the storage-texture example. + +If all goes well, the end result should look familiarly like hello-triangle with its red triangle on a green background. \ No newline at end of file diff --git a/examples/render-to-texture/src/main.rs b/examples/render-to-texture/src/main.rs new file mode 100644 index 0000000000..cc0a191132 --- /dev/null +++ b/examples/render-to-texture/src/main.rs @@ -0,0 +1,170 @@ +#[cfg(not(target_arch = "wasm32"))] +use wgpu_example::utils::output_image_native; +#[cfg(target_arch = "wasm32")] +use wgpu_example::utils::output_image_wasm; + +const TEXTURE_DIMS: (usize, usize) = (512, 512); + +async fn run(_path: Option) { + // This will later store the raw pixel value data locally. We'll create it now as + // a convenient size reference. + let mut texture_data = Vec::::with_capacity(TEXTURE_DIMS.0 * TEXTURE_DIMS.1 * 4); + + let instance = wgpu::Instance::default(); + let adapter = instance + .request_adapter(&wgpu::RequestAdapterOptions::default()) + .await + .unwrap(); + let (device, queue) = adapter + .request_device( + &wgpu::DeviceDescriptor { + label: None, + features: wgpu::Features::empty(), + limits: wgpu::Limits::downlevel_defaults(), + }, + None, + ) + .await + .unwrap(); + + let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed(include_str!("shader.wgsl"))), + }); + + let render_target = device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: wgpu::Extent3d { + width: TEXTURE_DIMS.0 as u32, + height: TEXTURE_DIMS.1 as u32, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rgba8UnormSrgb, + usage: wgpu::TextureUsages::RENDER_ATTACHMENT | wgpu::TextureUsages::COPY_SRC, + view_formats: &[wgpu::TextureFormat::Rgba8UnormSrgb], + }); + let output_staging_buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: texture_data.capacity() as u64, + usage: wgpu::BufferUsages::COPY_DST | wgpu::BufferUsages::MAP_READ, + mapped_at_creation: false, + }); + + let pipeline = device.create_render_pipeline(&wgpu::RenderPipelineDescriptor { + label: None, + layout: None, + vertex: wgpu::VertexState { + module: &shader, + entry_point: "vs_main", + buffers: &[], + }, + fragment: Some(wgpu::FragmentState { + module: &shader, + entry_point: "fs_main", + targets: &[Some(wgpu::TextureFormat::Rgba8UnormSrgb.into())], + }), + primitive: wgpu::PrimitiveState::default(), + depth_stencil: None, + multisample: wgpu::MultisampleState::default(), + multiview: None, + }); + + log::info!("Wgpu context set up."); + + //----------------------------------------------- + + let texture_view = render_target.create_view(&wgpu::TextureViewDescriptor::default()); + + let mut command_encoder = + device.create_command_encoder(&wgpu::CommandEncoderDescriptor::default()); + { + let mut render_pass = command_encoder.begin_render_pass(&wgpu::RenderPassDescriptor { + label: None, + color_attachments: &[Some(wgpu::RenderPassColorAttachment { + view: &texture_view, + resolve_target: None, + ops: wgpu::Operations { + load: wgpu::LoadOp::Clear(wgpu::Color::GREEN), + store: wgpu::StoreOp::Store, + }, + })], + depth_stencil_attachment: None, + occlusion_query_set: None, + timestamp_writes: None, + }); + render_pass.set_pipeline(&pipeline); + render_pass.draw(0..3, 0..1); + } + // The texture now contains our rendered image + command_encoder.copy_texture_to_buffer( + wgpu::ImageCopyTexture { + texture: &render_target, + mip_level: 0, + origin: wgpu::Origin3d::ZERO, + aspect: wgpu::TextureAspect::All, + }, + wgpu::ImageCopyBuffer { + buffer: &output_staging_buffer, + layout: wgpu::ImageDataLayout { + offset: 0, + // This needs to be a multiple of 256. Normally we would need to pad + // it but we here know it will work out anyways. + bytes_per_row: Some((TEXTURE_DIMS.0 * 4) as u32), + rows_per_image: Some(TEXTURE_DIMS.1 as u32), + }, + }, + wgpu::Extent3d { + width: TEXTURE_DIMS.0 as u32, + height: TEXTURE_DIMS.1 as u32, + depth_or_array_layers: 1, + }, + ); + queue.submit(Some(command_encoder.finish())); + log::info!("Commands submitted."); + + //----------------------------------------------- + + // Time to get our image. + let buffer_slice = output_staging_buffer.slice(..); + let (sender, receiver) = futures_intrusive::channel::shared::oneshot_channel(); + buffer_slice.map_async(wgpu::MapMode::Read, move |r| sender.send(r).unwrap()); + device.poll(wgpu::Maintain::Wait); + receiver.receive().await.unwrap().unwrap(); + log::info!("Output buffer mapped."); + { + let view = buffer_slice.get_mapped_range(); + texture_data.extend_from_slice(&view[..]); + } + log::info!("Image data copied to local."); + output_staging_buffer.unmap(); + + #[cfg(not(target_arch = "wasm32"))] + output_image_native(texture_data.to_vec(), TEXTURE_DIMS, _path.unwrap()); + #[cfg(target_arch = "wasm32")] + output_image_wasm(texture_data.to_vec(), TEXTURE_DIMS); + log::info!("Done."); +} + +fn main() { + #[cfg(not(target_arch = "wasm32"))] + { + env_logger::builder() + .filter_level(log::LevelFilter::Info) + .format_timestamp_nanos() + .init(); + + let path = std::env::args() + .nth(1) + .unwrap_or_else(|| "please_don't_git_push_me.png".to_string()); + pollster::block_on(run(Some(path))); + } + #[cfg(target_arch = "wasm32")] + { + std::panic::set_hook(Box::new(console_error_panic_hook::hook)); + console_log::init_with_level(log::Level::Info).expect("could not initialize logger"); + wasm_bindgen_futures::spawn_local(run(None)); + } +} diff --git a/examples/render-to-texture/src/shader.wgsl b/examples/render-to-texture/src/shader.wgsl new file mode 100644 index 0000000000..f7131a1be1 --- /dev/null +++ b/examples/render-to-texture/src/shader.wgsl @@ -0,0 +1,14 @@ +@vertex +fn vs_main(@builtin(vertex_index) in_vertex_index: u32) -> @builtin(position) vec4 { + var vertices = array, 3>( + vec4(0.0, 1.0, 0.0, 1.0), + vec4(-1.0, -1.0, 0.0, 1.0), + vec4(1.0, -1.0, 0.0, 1.0) + ); + return vertices[in_vertex_index]; +} + +@fragment +fn fs_main() -> @location(0) vec4 { + return vec4(1.0, 0.0, 0.0, 1.0); +} diff --git a/examples/repeated-compute/Cargo.toml b/examples/repeated-compute/Cargo.toml new file mode 100644 index 0000000000..6df3820e7e --- /dev/null +++ b/examples/repeated-compute/Cargo.toml @@ -0,0 +1,31 @@ +[package] +name = "wgpu-repeated-compute-example" +version.workspace = true +license.workspace = true +edition.workspace = true +description = "wgpu repeated compute example" +publish = false + +[[bin]] +name = "repeated-compute" +path = "src/main.rs" + +[dependencies] +bytemuck.workspace = true +env_logger.workspace = true +futures-intrusive.workspace = true +getrandom = { version = "0.2.10", features = ["js"] } +log.workspace = true +pollster.workspace = true +wgpu.workspace = true +wgpu-example.workspace = true + +[target.'cfg(target_arch = "wasm32")'.dependencies] +console_error_panic_hook.workspace = true +console_log.workspace = true +wasm-bindgen-futures.workspace = true +web-sys = { workspace = true, features = ["Document"] } + +[dev-dependencies] +wasm-bindgen-test.workspace = true +wgpu-test.workspace = true diff --git a/examples/repeated-compute/README.md b/examples/repeated-compute/README.md new file mode 100644 index 0000000000..26e247c17e --- /dev/null +++ b/examples/repeated-compute/README.md @@ -0,0 +1,15 @@ +# repeated-compute + +Repeatedly performs the Collatz calculation used in `hello-compute` on sets of random numbers. + +## Sample + +Randomly generated input: +``` +[61917, 53957, 5717, 40520, 41020, 5120, 44281, 19584, 2975, 5310, 4162, 38159, 25343, 16551, 40532, 31464, 64505, 55815, 34793, 24285, 62190, 10530, 49321, 57494, 18473, 18291, 9067, 2665, 53877, 6754, 37616, 51136, 54990, 31159, 38648, 24127, 49640, 12095, 4529, 56275, 18200, 24423, 14065, 17512, 31421, 19612, 63709, 47666, 21805, 13608, 63529, 17809, 6737, 55362, 24647, 30348, 44906, 46325, 503, 52776, 63112, 20785, 63338, 28904, 55772, 56851, 53870, 65503, 30290, 57374, 61244, 39866, 625, 2353, 54901, 25511, 64046, 47882, 22723, 54917, 19563, 24130, 54374, 41964, 3999, 2805, 918, 32932, 6717, 46311, 4818, 28843, 37972, 50981, 31555, 39064, 42814, 37957, 17963, 22678, 3048, 18823, 7293, 63312, 29086, 45580, 5347, 1761, 19090, 41520, 35919, 38705, 51378, 29090, 31100, 55324, 26807, 26017, 24295, 62389, 51934, 27026, 1795, 14965, 51274, 10875, 21396, 22828, 37077, 49922, 46486, 55817, 58928, 64455, 47269, 53484, 6602, 52270, 24417, 6525, 60485, 6389, 10336, 62651, 15721, 8793, 37174, 11962, 768, 21426, 9919, 14295, 55401, 33099, 2221, 9021, 793, 27731, 58923, 28847, 56634, 20447, 33108, 11355, 32437, 15594, 26951, 62607, 28151, 46173, 53140, 48397, 64164, 12279, 54591, 36440, 42712, 3495, 28316, 4674, 35028, 50809, 17289, 3355, 6840, 38134, 29806, 53215, 12076, 55685, 31314, 33548, 51846, 29484, 36845, 12242, 11836, 5449, 11549, 12626, 23699, 52777, 350, 19344, 6380, 63964, 49649, 42487, 26543, 60198, 43868, 38280, 12917, 33574, 44104, 24176, 1348, 47752, 34890, 1471, 34329, 59348, 25115, 148, 62147, 12340, 23654, 26821, 3695, 41075, 15125, 56593, 44273, 34180, 35209, 26294, 48642, 19007, 40617, 46831, 9988, 522, 36478, 64700, 31220, 41376, 43870, 6053, 56665, 56475, 475, 60238, 38170, 53613, 23654, 26273] +``` + +Resulting output: +``` +["148", "78", "36", "75", "150", "15", "163", "43", "48", "54", "64", "80", "201", "120", "36", "147", "192", "65", "129", "157", "60", "42", "189", "73", "92", "66", "47", "53", "91", "36", "62", "78", "215", "54", "124", "144", "158", "94", "64", "83", "22", "100", "58", "35", "85", "105", "254", "101", "56", "63", "78", "97", "181", "228", "219", "72", "132", "57", "66", "34", "104", "149", "148", "121", "60", "104", "91", "130", "165", "78", "86", "106", "25", "32", "122", "113", "47", "96", "82", "60", "79", "51", "184", "88", "188", "84", "129", "147", "88", "114", "121", "165", "80", "83", "103", "75", "194", "155", "48", "131", "110", "61", "163", "55", "165", "70", "116", "104", "79", "106", "93", "75", "52", "134", "54", "91", "108", "126", "188", "148", "109", "38", "68", "133", "127", "117", "48", "30", "36", "52", "114", "184", "135", "161", "83", "52", "137", "109", "69", "137", "86", "124", "104", "179", "84", "127", "62", "50", "15", "30", "148", "102", "78", "160", "32", "140", "77", "90", "135", "165", "104", "180", "129", "161", "160", "146", "183", "148", "108", "145", "109", "70", "104", "125", "78", "62", "49", "56", "103", "59", "36", "202", "110", "92", "57", "54", "165", "171", "68", "109", "85", "67", "171", "46", "124", "174", "99", "160", "130", "156", "100", "83", "81", "61", "75", "55", "158", "101", "77", "91", "119", "75", "76", "129", "101", "95", "114", "96", "142", "171", "111", "122", "64", "23", "179", "37", "82", "46", "206", "150", "40", "104", "101", "129", "155", "64", "65", "154", "212", "132", "91", "30", "67", "148", "178", "106", "163", "67", "60", "135", "27", "117", "106", "109", "82", "201"] +``` \ No newline at end of file diff --git a/examples/repeated-compute/src/main.rs b/examples/repeated-compute/src/main.rs new file mode 100644 index 0000000000..4795756e93 --- /dev/null +++ b/examples/repeated-compute/src/main.rs @@ -0,0 +1,256 @@ +//! See hello-compute example main.rs for more details +//! as similar items here are not explained. +//! +//! This example does elaborate on some things though that the +//! hello-compute example does not such as mapping buffers +//! and why use the async channels. + +use std::mem::size_of_val; + +const OVERFLOW: u32 = 0xffffffff; + +async fn run() { + let mut numbers = [0u32; 256]; + let context = WgpuContext::new(size_of_val(&numbers)).await; + + for _ in 0..10 { + for p in numbers.iter_mut() { + *p = generate_rand() as u32; + } + + compute(&mut numbers, &context).await; + + let printed_numbers = numbers + .iter() + .map(|n| match n { + &OVERFLOW => "(overflow)".to_string(), + n => n.to_string(), + }) + .collect::>(); + log::info!("Results: {printed_numbers:?}"); + } +} + +fn generate_rand() -> u16 { + let mut bytes = [0u8; 2]; + getrandom::getrandom(&mut bytes[..]).unwrap(); + u16::from_le_bytes(bytes) +} + +async fn compute(local_buffer: &mut [u32], context: &WgpuContext) { + log::info!("Beginning GPU compute on data {local_buffer:?}."); + // Local buffer contents -> GPU storage buffer + // Adds a write buffer command to the queue. This command is more complicated + // than it appears. + context.queue.write_buffer( + &context.storage_buffer, + 0, + bytemuck::cast_slice(local_buffer), + ); + log::info!("Wrote to buffer."); + + let mut command_encoder = context + .device + .create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); + + { + let mut compute_pass = command_encoder.begin_compute_pass(&wgpu::ComputePassDescriptor { + label: None, + timestamp_writes: None, + }); + compute_pass.set_pipeline(&context.pipeline); + compute_pass.set_bind_group(0, &context.bind_group, &[]); + compute_pass.dispatch_workgroups(local_buffer.len() as u32, 1, 1); + } + // We finish the compute pass by dropping it. + + // Entire storage buffer -> staging buffer. + command_encoder.copy_buffer_to_buffer( + &context.storage_buffer, + 0, + &context.output_staging_buffer, + 0, + context.storage_buffer.size(), + ); + + // Finalize the command encoder, add the contained commands to the queue and flush. + context.queue.submit(Some(command_encoder.finish())); + log::info!("Submitted commands."); + + // Finally time to get our results. + // First we get a buffer slice which represents a chunk of the buffer (which we + // can't access yet). + // We want the whole thing so use unbounded range. + let buffer_slice = context.output_staging_buffer.slice(..); + // Now things get complicated. WebGPU, for safety reasons, only allows either the GPU + // or CPU to access a buffer's contents at a time. We need to "map" the buffer which means + // flipping ownership of the buffer over to the CPU and making access legal. We do this + // with `BufferSlice::map_async`. + // + // The problem is that map_async is not an async function so we can't await it. What + // we need to do instead is pass in a closure that will be executed when the slice is + // either mapped or the mapping has failed. + // + // The problem with this is that we don't have a reliable way to wait in the main + // code for the buffer to be mapped and even worse, calling get_mapped_range or + // get_mapped_range_mut prematurely will cause a panic, not return an error. + // + // Using channels solves this as awaiting the receiving of a message from + // the passed closure will force the outside code to wait. It also doesn't hurt + // if the closure finishes before the outside code catches up as the message is + // buffered and receiving will just pick that up. + // + // It may also be worth noting that although on native, the usage of asynchronous + // channels is wholely unnecessary, for the sake of portability to WASM (std channels + // don't work on WASM,) we'll use async channels that work on both native and WASM. + let (sender, receiver) = futures_intrusive::channel::shared::oneshot_channel(); + buffer_slice.map_async(wgpu::MapMode::Read, move |r| sender.send(r).unwrap()); + // In order for the mapping to be completed, one of three things must happen. + // One of those can be calling `Device::poll`. This isn't necessary on the web as devices + // are polled automatically but natively, we need to make sure this happens manually. + // `Maintain::Wait` will cause the thread to wait on native but not the web. + context.device.poll(wgpu::Maintain::Wait); + log::info!("Device polled."); + // Now we await the receiving and panic if anything went wrong because we're lazy. + receiver.receive().await.unwrap().unwrap(); + log::info!("Result received."); + // NOW we can call get_mapped_range. + { + let view = buffer_slice.get_mapped_range(); + local_buffer.copy_from_slice(bytemuck::cast_slice(&view)); + } + log::info!("Results written to local buffer."); + // We need to make sure all `BufferView`'s are dropped before we do what we're about + // to do. + // Unmap so that we can copy to the staging buffer in the next iteration. + context.output_staging_buffer.unmap(); +} + +fn main() { + #[cfg(not(target_arch = "wasm32"))] + { + env_logger::builder() + .filter_level(log::LevelFilter::Info) + .format_timestamp_nanos() + .init(); + pollster::block_on(run()); + } + #[cfg(target_arch = "wasm32")] + { + std::panic::set_hook(Box::new(console_error_panic_hook::hook)); + console_log::init_with_level(log::Level::Info).expect("could not initialize logger"); + + wgpu_example::utils::add_web_nothing_to_see_msg(); + + wasm_bindgen_futures::spawn_local(run()); + } +} + +/// A convenient way to hold together all the useful wgpu stuff together. +struct WgpuContext { + device: wgpu::Device, + queue: wgpu::Queue, + pipeline: wgpu::ComputePipeline, + bind_group: wgpu::BindGroup, + storage_buffer: wgpu::Buffer, + output_staging_buffer: wgpu::Buffer, +} + +impl WgpuContext { + async fn new(buffer_size: usize) -> WgpuContext { + let instance = wgpu::Instance::default(); + let adapter = instance + .request_adapter(&wgpu::RequestAdapterOptions::default()) + .await + .unwrap(); + let (device, queue) = adapter + .request_device( + &wgpu::DeviceDescriptor { + label: None, + features: wgpu::Features::empty(), + limits: wgpu::Limits::downlevel_defaults(), + }, + None, + ) + .await + .unwrap(); + + // Our shader, kindly compiled with Naga. + let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed(include_str!( + "shader.wgsl" + ))), + }); + + // This is where the GPU will read from and write to. + let storage_buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: buffer_size as wgpu::BufferAddress, + usage: wgpu::BufferUsages::STORAGE + | wgpu::BufferUsages::COPY_DST + | wgpu::BufferUsages::COPY_SRC, + mapped_at_creation: false, + }); + // For portability reasons, WebGPU draws a distinction between memory that is + // accessible by the CPU and memory that is accessible by the GPU. Only + // buffers accessible by the CPU can be mapped and accessed by the CPU and + // only buffers visible to the GPU can be used in shaders. In order to get + // data from the GPU, we need to use CommandEncoder::copy_buffer_to_buffer + // (which we will later) to copy the buffer modified by the GPU into a + // mappable, CPU-accessible buffer which we'll create here. + let output_staging_buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: buffer_size as wgpu::BufferAddress, + usage: wgpu::BufferUsages::COPY_DST | wgpu::BufferUsages::MAP_READ, + mapped_at_creation: false, + }); + + // This can be though of as the function signature for our CPU-GPU function. + let bind_group_layout = device.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: &[wgpu::BindGroupLayoutEntry { + binding: 0, + visibility: wgpu::ShaderStages::COMPUTE, + ty: wgpu::BindingType::Buffer { + ty: wgpu::BufferBindingType::Storage { read_only: false }, + has_dynamic_offset: false, + // Going to have this be None just to be safe. + min_binding_size: None, + }, + count: None, + }], + }); + // This ties actual resources stored in the GPU to our metaphorical function + // through the binding slots we defined above. + let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, + layout: &bind_group_layout, + entries: &[wgpu::BindGroupEntry { + binding: 0, + resource: storage_buffer.as_entire_binding(), + }], + }); + + let pipeline_layout = device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { + label: None, + bind_group_layouts: &[&bind_group_layout], + push_constant_ranges: &[], + }); + let pipeline = device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { + label: None, + layout: Some(&pipeline_layout), + module: &shader, + entry_point: "main", + }); + + WgpuContext { + device, + queue, + pipeline, + bind_group, + storage_buffer, + output_staging_buffer, + } + } +} diff --git a/examples/repeated-compute/src/shader.wgsl b/examples/repeated-compute/src/shader.wgsl new file mode 100644 index 0000000000..41af4363a2 --- /dev/null +++ b/examples/repeated-compute/src/shader.wgsl @@ -0,0 +1,38 @@ +@group(0) +@binding(0) +var v_indices: array; // this is used as both input and output for convenience + +// The Collatz Conjecture states that for any integer n: +// If n is even, n = n/2 +// If n is odd, n = 3n+1 +// And repeat this process for each new n, you will always eventually reach 1. +// Though the conjecture has not been proven, no counterexample has ever been found. +// This function returns how many times this recurrence needs to be applied to reach 1. +fn collatz_iterations(n_base: u32) -> u32{ + var n: u32 = n_base; + var i: u32 = 0u; + loop { + if (n <= 1u) { + break; + } + if (n % 2u == 0u) { + n = n / 2u; + } + else { + // Overflow? (i.e. 3*n + 1 > 0xffffffffu?) + if (n >= 1431655765u) { // 0x55555555u + return 4294967295u; // 0xffffffffu + } + + n = 3u * n + 1u; + } + i = i + 1u; + } + return i; +} + +@compute +@workgroup_size(1) +fn main(@builtin(global_invocation_id) global_id: vec3) { + v_indices[global_id.x] = collatz_iterations(v_indices[global_id.x]); +} diff --git a/examples/storage-texture/Cargo.toml b/examples/storage-texture/Cargo.toml new file mode 100644 index 0000000000..d3c6903e03 --- /dev/null +++ b/examples/storage-texture/Cargo.toml @@ -0,0 +1,37 @@ +[package] +name = "wgpu-storage-texture-example" +version.workspace = true +license.workspace = true +edition.workspace = true +description = "wgpu storage texture example" +publish = false + +[[bin]] +name = "storage-texture" +path = "src/main.rs" + +[dependencies] +bytemuck.workspace = true +env_logger.workspace = true +futures-intrusive.workspace = true +log.workspace = true +pollster.workspace = true +wgpu.workspace = true +wgpu-example.workspace = true + +[target.'cfg(not(target_arch = "wasm32"))'.dependencies] +png.workspace = true + +[target.'cfg(target_arch = "wasm32")'.dependencies] +console_error_panic_hook.workspace = true +console_log.workspace = true +wasm-bindgen.workspace = true +wasm-bindgen-futures.workspace = true +web-sys = { workspace = true, features = [ + "HtmlCanvasElement", "Document", "CanvasRenderingContext2d", "Window", "ImageData", + "HtmlImageElement" +] } + +[dev-dependencies] +wasm-bindgen-test.workspace = true +wgpu-test.workspace = true diff --git a/examples/storage-texture/README.md b/examples/storage-texture/README.md new file mode 100644 index 0000000000..51592c66a5 --- /dev/null +++ b/examples/storage-texture/README.md @@ -0,0 +1,7 @@ +# storage-texture + +A simple example that uses a storage texture to compute an image of the Mandelbrot set (https://en.wikipedia.org/wiki/Mandelbrot_set) and either saves it as an image or presents it to the browser screen in such a way that it can be saved as an image. + +## Example Output + +![Example output](./example.png) \ No newline at end of file diff --git a/examples/storage-texture/example.png b/examples/storage-texture/example.png new file mode 100644 index 0000000000000000000000000000000000000000..f90a220c69feff3408b782bb1af94b0d009e64fc GIT binary patch literal 81381 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 O*T4A}w_bY99sdvKmUmJB literal 0 HcmV?d00001 diff --git a/examples/storage-texture/src/main.rs b/examples/storage-texture/src/main.rs new file mode 100644 index 0000000000..2e35970123 --- /dev/null +++ b/examples/storage-texture/src/main.rs @@ -0,0 +1,182 @@ +//! This example demonstrates the basic usage of storage textures for the purpose of +//! creating a digital image of the Mandelbrot set +//! (). +//! +//! Storage textures work like normal textures but they operate similar to storage buffers +//! in that they can be written to. The issue is that as it stands, write-only is the +//! only valid access mode for storage textures in WGSL and although there is a WGPU feature +//! to allow for read-write access, this is unfortunately a native-only feature and thus +//! we won't be using it here. If we needed a reference texture, we would need to add a +//! second texture to act as a reference and attach that as well. Luckily, we don't need +//! to read anything in our shader except the dimensions of our texture, which we can +//! easily get via `textureDimensions`. +//! +//! A lot of things aren't explained here via comments. See hello-compute and +//! repeated-compute for code that is more thoroughly commented. + +#[cfg(not(target_arch = "wasm32"))] +use wgpu_example::utils::output_image_native; +#[cfg(target_arch = "wasm32")] +use wgpu_example::utils::output_image_wasm; + +const TEXTURE_DIMS: (usize, usize) = (512, 512); + +async fn run(_path: Option) { + let mut texture_data = vec![0u8; TEXTURE_DIMS.0 * TEXTURE_DIMS.1 * 4]; + + let instance = wgpu::Instance::default(); + let adapter = instance + .request_adapter(&wgpu::RequestAdapterOptions::default()) + .await + .unwrap(); + let (device, queue) = adapter + .request_device( + &wgpu::DeviceDescriptor { + label: None, + features: wgpu::Features::empty(), + limits: wgpu::Limits::downlevel_defaults(), + }, + None, + ) + .await + .unwrap(); + + let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor { + label: None, + source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed(include_str!("shader.wgsl"))), + }); + + let storage_texture = device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: wgpu::Extent3d { + width: TEXTURE_DIMS.0 as u32, + height: TEXTURE_DIMS.1 as u32, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rgba8Unorm, + usage: wgpu::TextureUsages::STORAGE_BINDING | wgpu::TextureUsages::COPY_SRC, + view_formats: &[], + }); + let storage_texture_view = storage_texture.create_view(&wgpu::TextureViewDescriptor::default()); + let output_staging_buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: std::mem::size_of_val(&texture_data[..]) as u64, + usage: wgpu::BufferUsages::COPY_DST | wgpu::BufferUsages::MAP_READ, + mapped_at_creation: false, + }); + + let bind_group_layout = device.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, + entries: &[wgpu::BindGroupLayoutEntry { + binding: 0, + visibility: wgpu::ShaderStages::COMPUTE, + ty: wgpu::BindingType::StorageTexture { + access: wgpu::StorageTextureAccess::WriteOnly, + format: wgpu::TextureFormat::Rgba8Unorm, + view_dimension: wgpu::TextureViewDimension::D2, + }, + count: None, + }], + }); + let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, + layout: &bind_group_layout, + entries: &[wgpu::BindGroupEntry { + binding: 0, + resource: wgpu::BindingResource::TextureView(&storage_texture_view), + }], + }); + + let pipeline_layout = device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { + label: None, + bind_group_layouts: &[&bind_group_layout], + push_constant_ranges: &[], + }); + let pipeline = device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { + label: None, + layout: Some(&pipeline_layout), + module: &shader, + entry_point: "main", + }); + + log::info!("Wgpu context set up."); + //---------------------------------------- + + let mut command_encoder = + device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None }); + { + let mut compute_pass = command_encoder.begin_compute_pass(&wgpu::ComputePassDescriptor { + label: None, + timestamp_writes: None, + }); + compute_pass.set_bind_group(0, &bind_group, &[]); + compute_pass.set_pipeline(&pipeline); + compute_pass.dispatch_workgroups(TEXTURE_DIMS.0 as u32, TEXTURE_DIMS.1 as u32, 1); + } + command_encoder.copy_texture_to_buffer( + wgpu::ImageCopyTexture { + texture: &storage_texture, + mip_level: 0, + origin: wgpu::Origin3d::ZERO, + aspect: wgpu::TextureAspect::All, + }, + wgpu::ImageCopyBuffer { + buffer: &output_staging_buffer, + layout: wgpu::ImageDataLayout { + offset: 0, + // This needs to be padded to 256. + bytes_per_row: Some((TEXTURE_DIMS.0 * 4) as u32), + rows_per_image: Some(TEXTURE_DIMS.1 as u32), + }, + }, + wgpu::Extent3d { + width: TEXTURE_DIMS.0 as u32, + height: TEXTURE_DIMS.1 as u32, + depth_or_array_layers: 1, + }, + ); + queue.submit(Some(command_encoder.finish())); + + let buffer_slice = output_staging_buffer.slice(..); + let (sender, receiver) = futures_intrusive::channel::shared::oneshot_channel(); + buffer_slice.map_async(wgpu::MapMode::Read, move |r| sender.send(r).unwrap()); + device.poll(wgpu::Maintain::Wait); + receiver.receive().await.unwrap().unwrap(); + log::info!("Output buffer mapped"); + { + let view = buffer_slice.get_mapped_range(); + texture_data.copy_from_slice(&view[..]); + } + log::info!("GPU data copied to local."); + output_staging_buffer.unmap(); + + #[cfg(not(target_arch = "wasm32"))] + output_image_native(texture_data.to_vec(), TEXTURE_DIMS, _path.unwrap()); + #[cfg(target_arch = "wasm32")] + output_image_wasm(texture_data.to_vec(), TEXTURE_DIMS); + log::info!("Done.") +} + +fn main() { + #[cfg(not(target_arch = "wasm32"))] + { + env_logger::builder() + .filter_level(log::LevelFilter::Info) + .format_timestamp_nanos() + .init(); + + let path = std::env::args() + .nth(1) + .unwrap_or_else(|| "please_don't_git_push_me.png".to_string()); + pollster::block_on(run(Some(path))); + } + #[cfg(target_arch = "wasm32")] + { + std::panic::set_hook(Box::new(console_error_panic_hook::hook)); + console_log::init_with_level(log::Level::Info).expect("could not initialize logger"); + wasm_bindgen_futures::spawn_local(run(None)); + } +} diff --git a/examples/storage-texture/src/shader.wgsl b/examples/storage-texture/src/shader.wgsl new file mode 100644 index 0000000000..0dd48b3194 --- /dev/null +++ b/examples/storage-texture/src/shader.wgsl @@ -0,0 +1,29 @@ +const MAX_ITERATIONS: u32 = 50u; + +@group(0) +@binding(0) +var texture: texture_storage_2d; + +@compute +@workgroup_size(1) +fn main(@builtin(global_invocation_id) id: vec3) { + var final_iteration = MAX_ITERATIONS; + var c = vec2( + // Translated to put everything nicely in frame. + (f32(id.x) / f32(textureDimensions(texture).x)) * 3.0 - 2.25, + (f32(id.y) / f32(textureDimensions(texture).y)) * 3.0 - 1.5 + ); + var current_z = c; + var next_z: vec2; + for (var i = 0u; i < MAX_ITERATIONS; i++) { + next_z.x = (current_z.x * current_z.x - current_z.y * current_z.y) + c.x; + next_z.y = (2.0 * current_z.x * current_z.y) + c.y; + current_z = next_z; + if length(current_z) > 4.0 { + final_iteration = i; + break; + } + } + let value = f32(final_iteration) / f32(MAX_ITERATIONS); + textureStore(texture, vec2(i32(id.x), i32(id.y)), vec4(value, value, value, 1.0)); +} \ No newline at end of file diff --git a/examples/uniform-values/Cargo.toml b/examples/uniform-values/Cargo.toml new file mode 100644 index 0000000000..86e3b64a4b --- /dev/null +++ b/examples/uniform-values/Cargo.toml @@ -0,0 +1,28 @@ +[package] +name = "wgpu-uniform-values-example" +version.workspace = true +license.workspace = true +edition.workspace = true +description = "wgpu uniform vaules example" +publish = false + +[[bin]] +name = "uniform-values" +path = "src/main.rs" + +[dependencies] +encase = { version = "0.6.1", features = ["glam"] } +env_logger.workspace = true +glam = "0.24" +pollster.workspace = true +wgpu.workspace = true +winit.workspace = true + +[target.'cfg(not(target_arch = "wasm32"))'.dependencies] +png.workspace = true + +[target.'cfg(target_arch = "wasm32")'.dependencies] +console_error_panic_hook.workspace = true +console_log.workspace = true +wasm-bindgen-futures.workspace = true +web-sys.workspace = true diff --git a/examples/uniform-values/README.md b/examples/uniform-values/README.md new file mode 100644 index 0000000000..19514e1e6f --- /dev/null +++ b/examples/uniform-values/README.md @@ -0,0 +1,16 @@ +# uniform-values + +Creates a window which displays a grayscale render of the [Mandelbrot set](https://en.wikipedia.org/wiki/Mandelbrot_set). Pressing the arrow keys will translate the set and scrolling the mouse wheel will zoom in and out. If the image appears too 'bright', it may be because you are using too few iterations or 'samples'. Use U and D to increase or decrease respectively the max number of iterations used. Make sure to play around with this too to get an optimally photogenic screen cap. The window can be resized and pressing ESC will close the window. Explore the Mandelbrot set using the power of uniform variables to transfer state from the main program to the shader! + +## Usage of Uniform Buffers / Variables + +Since the codebase of this example is so large (because why not demonstrate with a sort-of game) and the points of interest in terms of the actual point of the example so small, there is a module doc comment at the top of main.rs that points out the important points of the usage of uniform values. + +## Limitations +At some point in exploring the fractal, you may discover there is actually a resolution; if you zoom to deep, things become weirdly pixilated. Unfortunately, the relatively basic shader is currently limited by the faults of 32-bit floating point precision. As much as I'd like to upgrade to 64-bit floats, the support in WGSL for f64's is limited and you can't even cast to one as of time of writing. Still pretty cool though. + +## Screenshots + +![On load](screenshot1.png) +![Zoomed in](screenshot2.png) +![A different part zoomed in](screenshot3.png) \ No newline at end of file diff --git a/examples/uniform-values/screenshot1.png b/examples/uniform-values/screenshot1.png new file mode 100644 index 0000000000000000000000000000000000000000..33205a7d6d8b4a7f8fb8a2fc876981aac15195d5 GIT binary patch literal 467379 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%0DeodApEcNclg&z#P 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 z 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¬!M72_ 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%0AP4}TJ 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 LY?HU|)b;-Z%VWO) literal 0 HcmV?d00001 diff --git a/examples/uniform-values/screenshot2.png b/examples/uniform-values/screenshot2.png new file mode 100644 index 0000000000000000000000000000000000000000..3ccb8d6a13f2ba9e76e8b3deaa4784f7666dceed GIT binary patch literal 1862057 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⋘F-gke}8S=UygvR;oPo{9*^Q@DO8e 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⪻`+D`%hbylAzn6R?Wn_H&yeNmy%;eqZqkAU$ zNGYIaRN8KET`e*t=QiL|UgU}z<=*-@cSPnlGlpO*9aKCL+T zuQZR+7Plp7J?D&6N}`PJN=qgo8%ssnav84+rdt}XmiJnQdm4`04s{_~yo;k0j2cP| zN6nhdK>pFyo`BZ1ORwmkQe-yrh7#scO_kX#jrCED#VxB>*IduG+|L}H8Vy>uAXiMG zY9};)_H7J13&Y1#+&p87e${6qfZ(=3-Mcl-b2>9}JNP)f{*~uWCV@|R$tt^UmuxkZ zmNkarxoxVSNxL}6eYGcswuq{d$#!wUBgi~4TB7<~iR$6AO=IlNj{bh^i0ag9qh zNq+mS<^aH4^07;zGY()a>Nck;O-M$nFRu)4_~;OhWJ!=4On*sr`<%m-eJreN-}BU zces_5Y|cxOiY*3V@sHs(Ighl@vkui6Dcf}Wq4DgoQ@7O=y7pgLE?tLKq#xP?E&=0b7RT*h}Ep|OXy8b?ovUa0#jD6}{41!<1b~TfB zQ~XUIQ~5zAp=IW0Z=-1~$!>PMTyW6ku>A-8`ERq@HCT%+^&A{01i!Cl15(%U(-E-x zgS$b70GfbmWP{H3{w$OAJ@ieFHAB#K)XL>uXzi=ajS9mA%!{2KU0U7W?PPQ*1y)qd zS@c@+7?d|^H2;Fzv{{E=Uj^jfIg#~7fpRh033XN|HK{&JJg{lN81pw#ugTVUw%Q@KLNVY$bo z1BE6SG97~&@pvl^SHx`GM8xk*TGOP zakD2IcB64T61vk)Xr#AY+`KkM6Nv{CgI3BiO@9`_&w`N>gelwI#%ta5vd{Vf(G+rU zjI8vzg=9Qfr|f307~<<+24tqkC+0_ptJUbH$wFXyo6)| zb_b~>)*pN}bn=od%%_HUY6|CG4aLrn8sR>3Bt|`Wi!*f;6@;hYi-VOi}~VW+hdX5 zPNvZ6Ehp2hb?3_+&qn37{C8%dg|DJMe(mU!G%r`7(hVJ&20YqqJvcsE@^0m;7C#!z zNPbk=iPzP*^p>fL(%z|Zwe`(oV-W?B_Coms=H?9RE_~0DpArFYBC3_}(?2FauVt`bc&y8qpesE>~tVpo6CU!K4C+JXo z`%_w9oXLSlZRm*$eh|DRkMA;h5r*U0ijy8WuTN=7U1>7|pJ0BZK zS2Z+|e+=`m8`3)tjx_x)DBw(_^Qc<#h+PYBqY&~P<5|6T6O`owq4b#?SOT5i!w@3h zk{b9yI&}po=z(p%)O=|};x-@h=0v0MySsbG=S=e@4sCIzo|MGy?r7lc9R4O1vs={$ z*mZ6m-1{0WxH#oYl%Q_oH(2*iIh7<-+*U7A&a409#Eer8S&H+u_ZG7_%cpB9*BEMSK0wqd_ePbA6?Xc#Nz1?6`)0(@Cl3OsMhy!;JdDWy>Lyu1<-X{lsEKP% zu^o!FTqQ+HJ9&F#IZ)=^%?J5j4XfFsp_f^QTQ@ouqm1M#Lza1O@`i>)?N`_XIO8gu zaoWRZzaCxL*~E>%ZG+?1G%oQ2>-(iaBiQ<8rvoxqyic-8Bns>FAx&Yp9J^f(tl_r1 zpVd=1egg0s(0gKki2tB^$CueZ9=sC{W z5`1ehHTr6?j)%~0XgL|RqiW4PKCi=Ri}HWl`V8V?G{VpZ!JI|`EM7RlGg6Iv$WRGO zQOcM|=@Dy%VKa9<053uuuReKmBR{;GdWd__f=-AABov~#rZ7l&7j zw$1Ie#v;t^FBt166?FXqXi(j)c?eB&V*Ye+K>B=b;&+pIPf-?>WQ3qqNdZ2m_ zJrLAyq<^~&Qm!^3wKlIZsa7yFA^Ct}y5owl+~=f)5f}-b^!Sc0Y2{7)?yQMSpL+;y zjp*ybYJ#zveh^uupauTjxyF(c2+yNR=^g`?n3I0E3~Iw$aiJjZO51O`*++gFOW^$@ zIC;(A7tW2eeuiZvF{T~rhI3F8i_-~n6r7(>D~WtM@ELc~(pj6$ei^gfzlc-y9->zJ z?iecm3q-G=DE)@)W2af0&wkFG<=7>=$#at6>DZF3>yQ?rM!}lLvYCT!&_G4L!f0=P zUxkosxziV%uashJ+CcPhK^3&^0jxl21nKy(?tNRJ<#44ljqK6kQrmNRu$&1_S{nL` zHDmb^HS;wC>TCS7wy)VtkEDagMXL)qXx^clNwwI8qNm2i+mFbGKv3|=9~IKa*-{^W z%l%TTaE(L{Mom7FXfSYDXIE7XJ=o|DAuUcDHkIfNXh!3AXPC|PTs2Yd;v;=AzU7`5 zvOU+Lbk`)1_2)8olyDs-^#RqLpf=mTF6t;mdIhW5J@a28W%`#}(+iE-Z|avdd5Rhu zzSS%l8*c`Gdbe8)vNQ(>CN3t?!ef9$Q2$0Q|8V>S^P+>_vUPIL%~M!9WqGN^*a8Nz z*cgT~>?B>oS1yS+FiLnWnHvt~yIw!Jy+_SnKSM4Y9uB5=-IP5eYZ6hwx#YZX&#Jo+ zzJzivDbn9wB;WT!C-1J5ea1eOjti1I<@E`m&D?<;KINE@9Su|(?QzQP5&wG!JWJ$U z$^pbBxU55dKm9pf^sT~9L;YH>jv|!4%nDoB$o)O%sc^m}{}KOQ@k7~zT?{s$ z3q@ueRKmI|Ltu_e&4yVU>=n4H(HFbr3#$F6fKvOm~d+`|LpghrS`O zYhz%cp9b7V)ej*~MSH_6K10#wo43WG68OYpL!Jq1p(Y$pwCLrdu9EmPsuOo3;Ch2e z(3UUOH!1{*nzANf^8~y74q@4q>Cs(ctOM)cq3Z(g8T{2RkM6Sxs`B_;>6mCbnzyp+ z&!O7*X(3s5lpR4W^cUQ}H=&u}%p2;<2_;O2OZq$;?pxJ#yY1J&oL2R;P_>u6)u1%ZsfJ!6LOfS^Ut(tN;iu}r z%)3(zMhgrY|Eo3r^=Z?eVYoV|^x%~`wZe~E-7e8iD9jB+0(L0HI za!@8c@6zyyYOg_Nl^o~Y;&_Y#$F;5Os{|_Pv6-_JVScR^o)_ZC=y!iXpqBkI^_eYV zpV>cjz5lj4o($vAUpC=m*wmI+HGIz=4688%HIJtjPK-(^XalJj3rj@ zo#&rBkJiRgI>@$P%+v6U4hx=`+x3kOZ8_1JSjR9^qw2+f3rvUiZrPq2B`X>N1SHnW z*q>-@tw`o3`FKJmvo-Pwl+GV|o%cNlHUe%s1l z+*&y0mX2)MQ1D*8SuHnRQ5se{Bc88v%R_Xm&^jhycvG}^EBxL_mQ;pDz>VW(7u zyuC`-qWv>$w;bF`m>*55#tufejm(WSdjC}MF(=H^PJ!f75cAHjSvfEXmgWAU@8#L0 ziM+Bpj|>Bno4%!EvR9iAg!E@+{1q{*n8(ZHoJZ=-xZB#X?)vq-LI{fQEzl z0#p6emXXxtkoum)f**4hV&|~`?|jZnz~oY$Uzy*~-{zOkS6wA!UsVc-=EgJ|q~Mek zkMgR$2^$2}Vd+^KwR$zmJ_t#K2X$!iZ(*LHq8hV5X=It#wEMd}yE`nhi8Lr~K&Lmo z>H_W#$HYoqUxKe5zOiEQCqg`f`ZqQ+ox_ruw78hIQTX1MpQlBeJIXbKv*c#+M}q<% z$?W87AHlEF%{50DW!(PLNj;>;fWlv**z$r0+{WLq$vrXe{rY=?=PnR$fwG95==iX6 zY)3(btoXIu><$$>@?71svaA(Rs8P&t)4_DNqUmM@L?6gsl(Vq)v$K;60CWTQovBAR z!vtGX>Q?N|s?KzX?h#oBXv$pDxV=`Ef?x!KcB&=^-knf2LZntd^GCCC%22Hy+w5#N(k-6ILRz!I#Z< z`})HIIR!W!_MdF<2@5DPDLWPQaNX``#MD5VYV97&m)#KFT)DKh%iJRD@1AYAWco|T zmeW{eogKQp9ybm64E{pT+H=6N-3V6HH^x%6lvheFC(Tp1%6R=M>_-1?l+cU; z4;wA`Id#AuPv|t!8DmgitPcAu3aer?{*DyaeJ))W+7^E(FNcMAgady)q?*uDF`(d_ zS0O*{(Wa2y74$sC-9Az#*L#&oDg;HqD8ore7phikH7e%E<11wq_&E8cpWBBB@RU@L z3+0aNtlzJ*z^el&o8{Vu!Nod(COMTKH^DbwU9?`feMaE*WLbx&r|b^($Aua)Of~2qD9HE7;(~EYsQPw{ zj%TKYGe`}cNK@?zvr~)nW&O=bEnHN=H56lIjA6rt(uj>elqB@uq-M@`0h>-AxeS%k zvYt-$=sLf|`=4j~Am;{auL~EqhOqnW+(wXIoDdG^(33)hT3O!SnOXy4|MJDEnjJD;x)s(CbhC#k-0I>G@tDw|$s>v{EzRmqJs( zzMQmIs216B-vk5Y(vju91%=tK%ypI9?ip9!t6dIUgc7~WoNqd3lhiy$RhCS1B*{lC zX-!BS7%lTlkeXL|b3wqHg?kiTPqzfXvT?C*xnBWlhG0ZlSc;@2Vyd>f5-F!o&wlAQ z648ke8{w54Gb!`-{A}5K2Xk+iG3G)t_T|3TSMXj}KuEbO9&EWtOdWNz?M*l$XL%0| z@vN&q;os1n<^p-nSkmEc<)n2Sm)NCV+_=~=Q)7<67zAlx|d&{}Y4Hu?4t#&h`WPP7%#`mG^CG9hoQ5FgpaoCcks{bSC zZ3S1Djj`V|T@N{F^t&TL|BQqFO@V`E!Oh$(Ht&ZA35asVgu+PF1Z4I;D-w0iv|-i)Ca>B9rsZNPi{x4)4S8-A z5cZhIj@xHn^``)M+%f*zR}6l1IJmjiZ45k1`*c+0a42L^8z8Yi!>*Ox#!m|Z7VGM? zWW=JgWF=JmclXX^fp&qLz)B;?RJ3@EAm`Nx?tzccXY_+ipR@1QqCxSO0~LQ2$+|aG zb4cZex+Vene!Y6924L;$ds`I-<=48hO{5vBqEZS=n@1xz*|9=($s`;%A{_Q_)Thclh z(+3vX9kANjKFdyr8p4xXuD|SNTQC82Txfx}RAHX2W~ID)7>dIj`_yvv4!=y_ zJj2OiWpn-%QMGwVHS{rR3_bj^C8z>Hr-C$wxTh$+`2~OZl9ovnWy5hXg}Ra9$5`eF zJZxHcyFbNllPVunJA6;E7L&c|PaJcT(l2r#pj%X~FP( zo0SX495+*$#RhjayD-FZEW=fRGW;uCCV(EsEF~J>OSj2U8F!Q-&095ELob+eTb2&| zlA9XDD_$!jKLHbO}K=h1a$$b~@Rn$2GHKm$Vq~_o!-4Gh#1qr|TY;rm~|#PGO}@{9*W9fH&2Y z(qu8pb=9+PCt^S>(uxUALvQe$=_tig=z59Lu=!}ZTixtP#H7l$YeWm-*FT&AgW2`5 zR!Y6|XQ%ViJ2dBU2FVkm0rTm!&=vHRBa>VZBN7wu<~N-5j5V0e10!QXLI$7x$xk=FLbq~rxI4_WyhN^i<@{(jbU9t*Xno_|yN(nlH7mkuG#m(RA;k*A z)O?~u{tiwhqp#1!iz8L5DNDv9Q!Y!!179W`Oczt$g(#Uz;zfXQ{D~A|4~RW`W`*hc zGE&}Yw4@^GeGy9O)nxD7$TwYxBweuJ^8Z{|u%E1x-F27FC7}v4tQ(nsQ3`bfa zQatdWs_44wIy;bfD>^Gm^7g*P=A9$jSMb`@2Q4~os6G?lgt}U{6)sqy+-P-WS7)lx z_&j1I^n~IRk0*~H?-_{odKVn;NIC351cq7zKbDM|s~iLZM`35!HBMSZJYx8#N3YYi zB~-8R#t+H8TgEpXWcC7pw0A90Q-@B0$G!R(w}OLZs<=Dr@kOHnnBOU188dQav!@(`EoBX?h?Kx*e*HydU<7D^zciyZs< zj_!ufvVTdauBYh$hkE7E3LnB<%-IAqm$1gqf1`GK4nE(y;-ZxeH6gGPODCJ0is2!G z9IBy+t$1t&wB)2Of(JSyV&JIh=}VY74v(_vCbaAwfnPMv;pTZ&ufX1rOu)S_kN9mD zePeW+5W!N!%=pB=Jue+V(5&>`$2HK;dn&tBiEP~3z?;ojzc!Fp^*rTE(IT-IF6KXL zQ;3Pqv>g7(^Cz&-RkYVC4e6LUJ_?5yTC&jAHo;&iyr|Y8ZQxmrQ%cV*E zg4=`d4|mxI`)ul8yR+~YVV=s0iDbq<4fsMnDd2!DIg4Qq4^y3BKTb`sxZMUG2YFa5 z?DSMI^^!L)*ZBBc+PKtVX^o{Qrw&{zrl$?MysFrjJG1NzjBnc4M;!SOiBGjJ_tq|d zN_(^ozCZ*wmtLCU?bMui;y|@ICF(vK=P2O45hJPZ5y2kG3oNJ*yVipE2jlZwR#8xVm1Z zhPg%JO$Ws0Qf_&ud0WPR7?hzwx(0+0*z23KDmxyM@4c(-E!3xd-hycz>)!|0)Lnr9 zR^a^(x@AC?Zc5ZhNxB?<&dWn?x`xjSL*DzNT=Z{bt@@KQ{F=6%N9-lv51NLZ)%CQ* zI>X7Nm>LOI55$rwQm=+|wGy&1jhW6HT_A_ilCcAOLw6<;+5L7#ba-`GOLV9tKfrX% z%cM1NMA7!%UNBCh)?M?Hh6P=CspkVM(8N<-x|U!3&&-^y)I^@t4E61a`ZUn>lKQ8f zrP+gg)bJMFJFF#GV6aCHklmuB4T%;Eis*~U43uP2mYK9LwtQ&Z--A=yChDX?yqq~3 zRkY6Ad_+Ac2|3c%?Kqp8zLeWnIGH7@S(-2vx=dH%PqMP}pAF+)LJW|MzaaETaq|>ip6uhQ0EPxQXc*g@JlgDUo$;gmkZgd7+?6LH>17Q%H=NVKr%e%i?7!~LGcqL? zp=u;e7&zJTZK|e1Qo#0byqUZ-DU?rK(c&aN<%iPAj z;9VH(i{Rg+;Qg?`;{+&)1FNn$9Zjqx%hURY7_F)uy0hh04K)3oH!)sa%qHWHr<*pw zYGoa~>l#+lvw_Dzz+L(`+9gR@HARdbOakp0L*|$$f9YK*XJ8X%%%3(F-T8Pg4q1X4 znj9)Wk%A;XT>rg}HkkNQG~3gHjp6s`)TZPS94q+ek5MoQPfwJb+rOGEl@EBE5Jx(&dz20 z^{v{-u4@(yL^T&+;7RK zCY?+pO)xc5mieiFw$>Ek_p=u*Lzadd%Em z@s7uPj}g9BRq~hsv+I^TUS`R>i`ab34iz%dkd((yP3sa* zh}>vBywU``cyCUW;#)v17joV|2pNm=9&gfB>1oTEOTN`z6=5l^WCda7i7^l0agYFX z0%(U#jJiqKm7Q81Yq0Vtj_zPRaKcL9J!51vu|>RfFHbE1H-Eusy`L>pu^C`lp_7pn z##GA#YkXct2@hTHNJ&eji-&0dbeFY^0^PNXAl?7bg1^b-1FpITbN_@ z0YGpBboU2E;8S2?2Fs=iaY645Inc3FEnGHI)s@^eY8>LXdD_Yh#XqsWV(nC$8^Og7q{x+{Or>wJi@{)-IyJH^Xh5D8^E1ZpnpON zGX8CHD~w>YPBmD;C^VQJ~i@EjcB~Tvsx?HoRt13TRc{ii*Z^ zU0-Z)pE9BBII)tyDCQw$SbpwgKn&G)??klvFE7 zy7#v(m9II2>d#kAD^}KQ*X2!_d1s{u=Wpui%)cr7J7#32Pr1?T(rqFK;(kD3d} zeM42bF`B!pKvh@abNPN>ORd6?TMOl0B?Zg(NPhx%uWgad9I%6eE8h)be9S$}`=Zp$ z%ICrsRg%!bwvVMHG;vX|;J$keO$P4d0bJ86#T9$R5l_qOEDdg!qKWVB5@(|yS9y=VbUXxiH=d)2+2Su zQAZT+9#p#2HNQBOQ1?Bi+9MeR7`q?2su(A_8k#O~HM`{Vt-AU@L!}P0%2Gf=dB{a= zm4<0UavU$SM=OCc9f0(>6N7LzHbbI#*gJ(B7f?bC}O6uNev{zjh z7+bXsz_dX7>3nul_93prr6*py&qnHAfd}hx%*=xJ8QnTD;4HMxYwH4zqN{!Zt>-A+ z()$~O2pAX9N)KLGBuF_darb|YIb$V2^hPd1GZY$Q%9&Nj{9Y(QN}Ha1HV;IyvD#OpAGM3rB847bg?of{F z_$uU4!`SxiDXTLdU!Dv)gU?v{tyGB=D&Ob19pL;L)4`|h4~Y+w1#~;yXUfH@f=A%Z z?R;Kz2|&g@;_dlZPq>y6C=N*|9^BjFNV;5pQvAwZFo8PMU~#Uivi8+2j(1inQ`vpn zCf$RO8FSABV2F=rUy!mqS$FnoSCl-yf^cc6Ff+PMLk#|eQa9s2Ce_0qF`DtBv-y!Be;jHKt`3^4spa6qrH{N$09wiXP|&GX?^CfE0#0pDkxt%^mO2%X((K=Yr78{tj>FH1GSPR3wbz{n_8YAKZ8!Q6~Z~cRlNz5OWG&dn%`%4gA%-A7#A&n(5?Q&VSsllG-W8 z$VFADeeh!acuSsA4TvR;+F3ZrIf!Q{BWLmMDUaZp#YImQ|GEBDT1qDOttZQ?~zmz3%LD$RuGVo6G{*X5IDlFGkPG)bi`9ceN4uLEz3dBC_ zQflocB{w_jo*ii+FIEy@}0iUtD}753?*WSY~Q57p{KIHXV5b9p2DQ03x?JhSMzQULnlc zhj&ssh=o#7xgeyCx!}ump2UUgKhL`yy&!+~_9-z}6*2rR-t}&Nsw@a`r>|VVm_dfNk&kA9ydNhdUk;c#{Kd6CR91mF}>Jfnf{bO@u67a7bj6D_7DU=NeKR zn5m>Bl`R?N%es|aSglC5UQMHpzq>ffvjTzSAg1P?0Rn~^$+LBY%>aPelcB3Tc~hig2nFCTx8HFtt!m)$}Inu?K=%XEXOf zPi~7OHhw-I!sSa#(_HpkIc#`1%A7mI+8U2`j4nQB27(0Eume_MP^Ht`jsEN3jq6^> zhEIt*VklvtbjDi?tzxnA<*FWV^m7|}HJ_VDo5>CcWT{c~L zE{{+HeK6oB@QQGw%;ow`a*1MYcFNGrVYo|tUJk>M#-DGOg?#!Ov*D zzBb|;eKmkxV!CbiT(8kXMbFSW(lcs%=7W;|X4Zb!KC7!yP#2)?*-|MBI{bvjyG>mx z91m>GtV&1zb`DdXB=3(9*@u48LTqsKL_F_8<*X9wQryXq`U=INE)HqfNhO%-xnPWf zc3)ccB6xu@hAu_+_atN+fFxIRBGlp?Tg$NTZ5*ZWn|REJ*sd7|8@y^UtXD_gT1hG` zn&{18I_GbKn#lHsP_sz@+Di-VzqaSvHiUMzzv6c1KI-R)D7L21*Po&avszR;N*D>p z2+k*WqXmINJFQJE!n-5Xu4?K@!tT$MrJG@Z%iDbGF?a*a+(`UY+E)kX4ZBl>c=+%T z^o!^O%Mo!M>NRhRyuK|XJ)G{MVg!~~%o`A)r6{E%TKiCS+G#=S96R(haEu!1xH`#& zmXPQ29uu!H$5!lTWiTzL-zcanX1zR5(xQJ2W_-Cy#`aeBaaOAha6 zm*uJHf3fK+xu0WEA-xtV^Ygk3myn}L^RdG|8!IZAvo4wifVBd*f%WqKNk+CW`=d)@&}*Zm$>z5wQnc@HE-HEZeSB_ILz`%cOJzrRKb_rVta2) zt5n--4EB)t@3o}T%oeUL%=_IZF=91T96+7^14N?Xda^&!v_-iM_6_@GyeufQ*tg71 zoSECdYT1lNeW|M;69Puj108i2rklcENv>rr-Dwp1#%ugDJPi#N#DTxz$WJ}lNc+~6 zv(VDT5u^UI6LYr;4fsbGOCf#yrTw#-5P`+2gsvtvmNLlSgY8YIq>~=Q*)iwm9Rgn3q8E;KedCmcgYHLd^eN94+htj25~Mh}r$2zbQ?gy+r5& z$YWP(dLD1axzwvZ@zwe2V$O~+QQq3|&4qLF5PN+*1q*6ctHWXg=g#_872R6kI|-Q< zfS+uHh76#t?A)fL46ST}NsX#V@w^ekQhsN6*xT@zSen?7h zjIwk-z6a~Krb$?MFUQ@@l}@5B%j&Ue2j({nCN(MJPEhufof`bRT(x&jz# zN9t#BK-4+WcI3lE;7eEi}X`*rSNBK_y=dPf1>%?kG~ zE$LJaVBy^5h|@93dSWq;>yywkjD*WPtv6#+P$-04^!t`NAiql@Ms<4*lA5{1B z+5}RC?btuJKQ2$tIKh0?Wa z?|GHURZw79UyJwf0dq{?U#KBMef#g;yVKjz9qBg{pry+!n7n_S00Jf%vg;tk;n?cD zN>!+yC=Isv%WL9YYTcs@C+{yKk{6qP2PFT4>><5wcKewe;?VYkFxcd>KaGgD6#zR#ICE5gJk&}G+uo}RsXzLTIFsVvSE)d<+(vjOC^d)UP9#TF1ceS}EEMcUl=Blsfm%`|D#)jU-)7%r` zx&oA}h&{@keM1Na_(t|IcJpN&(0_2Q6vl|!oz!bwP1%og+WC%z9}_x^fHea&vnh8y{}{+w)}dDSs4Y^*&9GW-cT`Zbf*8_~r_u`BWM4qS@8BZ*k= z%{?Ojj9WUZi!c6F0S};Z#LDLq!Cpb;9RE;icBj`Pxk$1 zT05~EQbE`y^B=ryfWXc_W~blD>-{o6u<@fb&v2U70#|8h&qykUD--GQ6W5WVD z!haLOa1*TTSRomSjZ}n2Fh4PqDo?$Yd%v?*iQzn<>loEG@;C$AuH1<9JfGoWj5?B3 zqF5Y#V`QaKy#1PedNouMRGbD$+f9y&aYF7ql)SuqBQ6)eatmPz+9vChnICiW0hifv z`TF}v3)yd|UYPS6MXPd!7D8lQO?RhHdNL~6U2c$u+EbY*_x3>u?6uCXh|qmt zlM4*wG?&bJ8@O9E>y{oGA=dvwzrm_4|Ip&9BKMF^g<={N(p_bDeNmIRtxal&r;ou; zTv|`OP@?N|q*$%UxvBA!#s%MXF*v|;qm(DU^lVPsxN)H}bqO-Fbh@lRiP~2P7XZ+u z6@TF{RMMq$AcM_ieKCJ;%&<;*dA*DI(^!uqKWFuQ*5`O$UJ}nzIaT7aVTwh{-33T$ z6$8v85qwho0y@fqpN^pZkl+(8QT}=W>YQz$o9!i%E`F8H=4)r7jU=vk@Ez^@p!rP0Sf4n*bfNpbKcD0LGUvF*Y zz53o)ydVE}07{SMcda3phaG%v`N0$D*~az9{7!CXmnO+j-5JoR2sCrEG)KCY*n|#3JNh)EM^Z|hq^DRLuEy4$-*HK`PsZqW>f=Hk2Nd}luAsk0K z{r)Alz%gjfMo(;z*K3-OARb?=vU^~>c^GUYBXS%f9o-+hk?-x@jQs9fH(tGn*)*9j^PV6E8iPoOoWfOP)o04BL1-D|Dvwp@?&O7lXIZy+L5WY@e#nb(Egsa{7Gd z7igsWfrlasHag5*EB&WZ(3VC%Ano2>QH9OT;Zf|@A6TD-0KMC_8n1d(M|;RF{D-vIZS5bGw9^?&Y3?P+ zv}LN@);V=_X}O$&MM(Cdy&6@)ePpxBeHyI0;;A~T3?QFnwm-(FDnp6Td1;_^!MdQD zR|s0}B_%`cp5floWD~fMf=Vz!&YbFlp)42tb;G?)AG|4egzd@Mv}w7>x{tsp z%Hctyr^a*W`t1 zoog+kMro3x6Sq!3unv2i998rkD0jDE$@q=spm4=a=?!1ySk%7CuZcd(%sH`rjYMr-Py#bq6W*ZHvQNPeM_DpbEzrPlxeMoKw)RpSgU>#=-V zrtKgc2ziYF1)3wT6CdysKj1Z)3Ez0!Hl8Y7xTTTF`k-_wclm9n8+2(M>-Ap-;K0s4 z)eD*G-wu5`@q(HSV`k5K@*E(lxNbJJijZtn-aq4;ApdR(@h?kK4eZT^tFT~^TN9h* z713$s-r~4%^bA>hMO}T@)it&zRaRf-pE+T}T=&YutTpIXRo7j}RblNDGCw#W4VyA! zC!?P39@IHDFL3fagw#6dtC#5OrC>>dhkNB4e@D~JCz%7(kn#&LQ|0B%1 zR!)ag!vUO*sAm*C1(Jv*S783rf%}#0+6yJg5GY_MKi~jb&=Wd{qr;ie^PQ>7hbBjA zV!l9~Kk{P{^xKH*bLRV+!8|V4_d=UASNdASB1Be>vkn~bn(?Pw-%fGKI-jg)sNEP* z4VvN)vX0u>VGnFA=AY9`An6LPAFRJFm&w6Zh&(#*5(vF_IeOQ(o_&AXUoVPD=;~x6 zT|mgHd#of=7B`i0=uE_c(^N?qNYCOI8fD!L{wx30wY^iCtB#8je~YdL`kVk7{w!^H z>dC@rb9N!-u|UfjIc4PD-d_i-ApP)AO6!%iNK-KkD|~P}%5_ghSBsv&#^xMnQ@1Hu zY3?pVJaZv(b?hLcek7%502HKWOep%*#NRA}#5neEr18g}obtc23SnD=^yyzt&_3I~ zv#quduE6t-@ow~yowBO;mKdtoNqpG?uNwXOO$; z3p*;CNFC4kRZC{q&B=186ZWEp&%p2ttb_5!B6T^J;E|DzbZ5Uy=9cn3mU`vswxqgz z?5N*Zr2}(0iQMuBJ>NUVm!UCVpRl~7o#UGA{0+6Lqwi2^DeC32gx|IdtA=v6&ANS& zk*63dYq;m#SWW+S-4UX!%J$3Jmv zOHlW+D(w=#O6%NJ+XrXvGMI@QugpK(S;zH;zTuA!>TWuX<^X`VoN?K(5p+-alJm3? zeyN`-HSq-4+i{KZ88MzbF&8tJPj_XACeS=F&OB`LZ_$dz#EZ*>2lpt(cax}Te zX@!3US02&t88hN{1mGDHYOT!pG@H_m-+jSGU(Z_XGFuINYs)qo-&+2BDSZg9IjoIf z5tTU4zCS@crX*cHx7>s`L~hvX?LBZ1gg}v!_075YaLL&E6|<-O!Ujh>NXC&}3#P&4 zb&R_W^<)1(f6Zi#6a1R%RHHI}yZu;t;?y*L7N{67dtfQTMqy2KbB?zkw;=IVZd7gF z&qYbQ{LDt?`_lZ`c=|D^<6n=t9Mjr(VD6@4&6hO{>b^%#8Xiiu7z?fhcH7ThAfs{@hz7>%Dibs@PM0oEj)kk!Jj~Eo#B3#X*z5USg z%AnfM?WUXt#`4uzzjlw;&Z84t+QQ}%ky8X2*yuKAX2y1R+WnOp_8TN@zB5SJEAMpQ z)T=Dx%Zm$a22&|0Z=0?1l!^B%a;$L*H z*KMPMQn?FsWTl67(Uyn?{Q;R4KDwP`Kl`^ zxZr8yB*hqA&xn_zPkae8zLqF^4pkbFl0UCvSt3*d@qUmxnMjO)N_-Cbd{s5(qx8>n zej~(3@Noa5!Wp}t$HfdVBc7nZ`mhDjy|cP__X_)E+~dv%H5J9TV0}|1oOJ3f<*mkk zBVUDO17HYrGnIdtsGP&-OP}i+E?mmJpG^IjM)lNG|93Fu2#&|2ECV)mcHLBL%CPI& zyQKLBmmP~(2g@pjarFr|htp?Gjc=x|mE1OeWQl4Eg*mm$Z^-YI+Nl6@Wf@{FLtsG^q(_9(mN;mV5eBEZ&>1ZzRk@n zVncV??1D_V{STkO<)|M^{B9yr*Xp52k7Zqa`crQ$GPwBIup zv4mnM)5Y~`5@kAZqI|m9FbA+*cPrPDk1851qJvto7)j zW2K(l7flxNaiJIJC&T!c;OL*Ce1tUefzUJiB}o|BC|O=N#jB)>?$5Qlfj+1&kKxF| ze*ACtT7d!J?&X?2CQ0{4xA|My^eXqjp(bE?iH>ZMC42dxn5NVon=LEEkb80$37gIY zpFFjJo6g3hoHD~KtI@Q}JnwgKPp`}6>>g}%StSLBkNE#s|f$Bu|ciG59ZeI~V0LdnfpsyR!6sN-=Ly4-AwQk zVf+#{WywlI*2yS*Gl=?_%CxR`8hb=!@k3^U}RX)xskmaWM)J12 zG;IWOc%pV{#CRa+6%h;?y;&G##I~CY$dXZyl-W%Dn_#}+U4r#jw1VLrmwxf0{Mvlt z{hma;%d2K|^u333R9|4{^X^NsUE)tYU=8a}1su`gQ!E6_uG58Gmo%zI=B znCdin`MH=JBRV5YidTl(^9_Tx8i;LKxvWCu1I#!TU-Z$ep`w_M?8@zsJ$iAOg2QZ% z$*))MB&?ga#$e1Xb9_+as>#)Mr`4K_BbM9b@{8dSaz4=<4mjo_8dx!VBF+PA=nb@z zUJP?w-(*G9h7{j+^)VW+x9crQplui?)VUrOEc}(&%0-;$jTa=3q(={qxevg#RvTiA zyZ4eVcRh}@lZ;Su{U}-rrg0d#C;IH>>jy{&k*P) z;p(f$aUVuO6)+9Sos`MeO#$@5mDvOW6UECnBc#EV>Gs1x8|56M(b31*kAtTV5}i{C zh;xo>*OMNZi%e?!xY6V~KE7PqatEnOaT+`f%xr~>I)daxXj-J8Mh!P$5lK`&vdru;cP)Be6&a`A-{rV{h5m|DP!h<%n%$AlaRiV9 z1()mn@0jtyr|J4P7n5!WB@4oRlT5`AX zar`W&c?jatFrAxK*>%hRv*+c!XESMdM2hm>UrK=$*mg3po}48He(Ih7>3iz4&jE?D zD8WW(?=k&^keU(K-osy-syTFT; zm~%8pV}p3K6oU)@2a43rKC*Y8i@iw7;{!?)*R7z3 zvof?DpGz1Dp~iR0+x8M=mJupV7ZyqLrrH$`{U=ZVnCb}tK#83#W6hXF>rqL2tBCxhRHFJC$(1DTjcoB^x+ zt?9e*IWirpT5A$Xt3XqP{yiH_(+f!feGX|*qCX()oO6YKyFiD^{jZ7bf=}++uCUZ) zJ*5lgtXZ?pMl(a)@AMj=D;Q~RIeDwsia8<;eU%UibxtCbD+2GL)eW|Um z&<9yE520hh?T(u}p6%C@xkvXRMdiBlqZ|5U9sb?};XS*bMw*Q!I~!Fdu`T&M`*(*9 z%|O35xMBa;jUoIhcWsBOdU~8+Mi~cZYP4opzH^W37j;T!HPFGW&}a2>gI#lJIC76@ z=A%>_0o1x?zo81BSP!%wWZNiF7ef3lsqO)x2XaJ|B;+MAJ1CyEahiS9Sql8 zp^S-F_lVID4PHX!y-(XzWHl#z1tvVk#Zz0PdZVm+#{p|@Kh~9*8}_?G7PLA}U&p>=F3k>5*G*3(_FMT8g=FFMY|dbi!Jb>}g^1#)naZ zjximAGgDA=R;`aa^aj{soTL)oSq}bbsnt0fTAf^ znYG+@y%o|O1{pIv6_+g?m!3eo)Ezu_`##pq6KP^fnA`6Qw38_Bv=Yn~sRcz!#AKGW z>J>na`+vQ-n9A}s?!-%;f`9daes_GBl+Sbdvt~e&pg%{3@oB+J-#`Uc@HgTrjrvfL zdixjT+AoCUs%rzN#={7O)f*_XOLosoaJ#-SY2ps}_qrmzv26M9?qG8Sb)fX=RUqn- zn5?8goHcz(MqsJZ4t4l0*(-mKw&eR?Zgo!wJ#7mO>iZv;m|v=@Z-?oIV<}P0z6m6K zirE8&p3%G5n`F^!zpIl{V29zL#I?D}BX?KM!jj}?NQaN*_H+jSStkL`Qja<{q^2ZI z^tNJ{0zv{DKuuTC41JDQOxCtwbtk(UI{OePK7GHLrlR;aY*b7zpSkqnkn=i4(`?_p z&lri21(S{UTlr(nVfQwnhOFEZQkNeK<#jml%{jamJ7{EL4ml2;CvD$a?)8TIwKK z6X|#46_J?_{pOxk{be*oZ#&h?5i>4jw>kEuK}HRNj%Qa5(rW7KE;4_?YoRx>F0}pk zNr*u7gLUN{x(0IqR#u_5c&=afAL|6l_nG477<{)o3%oznL^49nEasfKe1w6(!;wXw zI}?*x!RnxC45FDC=frZUfMa|;%iBj$sUo^)I6eM{K>VEwch|p;dEd4&V#*ABq zzh82M%`v*p+*#UenCP2KwJlw5E03^ZeUPT=<7Agu8v)pVc%i26cXjw*b|WWSU))E z{pMhQek9U<^sCzLaMm`ua;wPgum^F}9g1Ht`Jz=3h2Au_COs=EGia!ReP4*k7j|yqure8MMkbpzR(l1q3_AiGi0hE4Wq-Xo6}nj zp*Rr9NpfXiM%VY0y-!dvDMe@Z(yZSJJdW2pBLwZUOSFDse_Xn;qO4fq!I?(g#a@2l zff5<=Gw_jw`5#zco~D)tG0Cfy*hMz#lSmSU z0UsYs0|8kse`kt5qV3F%QiS%Br^(sQ%?C8ru_^zX+0(NL#6MY#ogkZ3E<(7ooRD%y zpRNp*t<={ebgAq@$C&76p}A)02Lanlm};-REeHQQ=ljp}8a}^+IvRF*_A0H2z3I%2 zA%R#_ z6*8s*d5&hU7f{b|#3ZJBjxb^C526)I;1g0Ll(I{!=p=m|poe2`opf(KsVmp^8$qmS zyr7X+3K<<0Xm#nm6UluIYsOo*(E%it+m7AWTJ{Xs*XAVt{bDkZY){>_#MkuGC!k1AeKLNw#@_{b$6pZheYj+JSdW?6VcO7|AKycg=7{cI1e*%G|(B zI7dyPuiM26IZ)K2|KXXUZPYwk8*z6mHI*|QvyYMf_iLxm$r*F8iS{xgy%&LvIrcmj zV0k$bXhDWNc?b29qc=SG0D=;C-NdYSA(}MY7g6eL)f5wOUY4~`L~^Z$>0u! zoZj*nvzMkgb-c zaxGnIGt7mWSX`T_VMz@?vP;_N%lQROTE%TzmP>v9dn7`>&JR8A0zH+WKVH#}wndU2 z>%yH+$)j2TFZ(%y^K#epGEECkp&Fm-cYX=A;0=6Dvj*FAXy*O%JbD)*-Nolc5n8!W zj((b@KEMV+z*TOP%3oRVOQE6rOgM$C8YGUX#LNq{ef$)UBQieMNGFm-iuge4xIZRP z%!{lG(}{$0GN$6PeAZTtJF4EeJFFNensXuf+t{Umrd^BL!3$ppMsI zzC=CWT|Gvc<9pZ^o}VlO&=o+{(Q z4`$;3A4cIpFe7y`zSqJ4U*J7rfVKXWuL`&hmM`nUA!XZ=W%xN8p-bYC93l3r7yc1o zpN)Arf0Z7hHs4e~Th178a#J&C%?_}_P=*p-6A<&l!mH3efCs;tSvHWmY9)ceUx4or ztaLshH=|#7Jb&$Ei1w>`jGMUPLkaeU^T)rKHDpY6tT2u|BqvI}1fKz7nAoP@2p9y~ zpYETY%tYz`^tt_2-}K5+E8ytft5;5`zO-Gv-YdTQ9sp^xEWM1ozhN7X&U>7X1xm&U z{1*8dDdyYj@n>#ht{7t9_#hdCie?QrzRM3Lld5aHEF8uxjj=+GA;A;3EIF~bTg1n} z#c0n>TZjdXz4p-r^GKs)}%d` z|5kfV`9~DlS_*Pv4Iu;@G(bXlj(D3c_?}oeVw8liff`H6_yBoH`-PHFv3Rpoo3V?Q z->NlpKnCZICjpgq_~H}&wXvF>AdZ=;5o`c`e_#2K=L_f2ndP{Cu`UCLUF-OxagYbS z09xNu){)q~jy6w6uZ_Rs-uz9VV5~I_LGffg!J=ZZ31Zu%tX@fbwm2Tvskv0+!Zz-H zq&8{LW!MQV+LJxqIb64@(Rzd#B>u%4jf3`e9Mkl-3hLJ@n6qmos1|a_vm41+bWxTk zsLL}#oWM><80kHFS-6m& z-?^_ENv;xIdB&?@6Sp?*voUXksoj!qsM7r>nm&@zetRuHj8Ns0t+AyJVDqVPUP@l+ ztx0phXO)HnPl|mQa*9_Z|s(4=H&G*=+HtCmQb35+y^8R|NF4^{#eMV{v zwslfKK%z~o+-C+Kr9g7lMR5CX*S?LG@6{E0Z;UOfE%f7KSVXTG_vdq?qO>@Y`lI{q zejbQ*e#XJop2wFv$e9+KevjVSL=NdDcs*lv^q#$di2?*s-mgGh?GL@kb1;k78nzh* z)bYBh+*%jOPhIBhORlj6p9s9ChjMv?cE^F=ew~tnxnL};0^9^8Y%+#%}hCo(K6=#>Iv?{pH6eZdfNEHIMG}da)DJ)%X@rqT#5a0%Z$OYx;@yWzw4Z10i{Ee%(xqkfwyvfNM3&Z3 zIbo$<(izO=SI!Mm1rH$ZpAWY{u^t>%C$;Cx_o3N?2i?*1n~oq z&;zU%2rBkU$j;RS)NiM~F=iHNpM{;_zph{1{Lzo0maTqSX~RhPPV0}-9Z6YE-A~%8 z>WK-&;uzw z9gf`4)>s^`BRlDfJI!cEeXWTzjsD!kCebzy5qu8!^BLz^6G~}`+VX>LRz^2IOE~u1 zLf-Awa=yuk$^xJdAHwVA7g7|_6)M9i%H&k7^2lxqv02wt8?Vp+n(!BnbOyN?F9uDVP>(I)s!;d(~~^|k^QcD6---B zn>Yf&Nz9+mFsrqo=5y^7uL2w+G!Cndr6Ch+ePwI9?jI}X+g9_p!?6)_9&cw7!>1Yr zmQ+zMCiI6P!_*p|0+Fs@9bP2K02?n_HpZMbJ-dX{e~uQa93_T4+0CCHN=5sx<*$W1 z!z|V-IWsppMh+c!X=N4ZvE7@lbTi$g1+17l)NU^WX zb)zh@)`Tz(Mzxz|LbJR-O*$_62<|nrc?rl+pHSYKEm(1Y@48(aIw%zLi_qD9*6yLY zSE{6iTs~f&nBx%{o#T#~VVX1{z89jBN`IQ&uC-N0eQAAuzw;lSgCC&>)*+W!`2ASR zK`%c9Gd@6CYyOE#Lr_QvVjHKAG%Mg9sZ9_?nN=YF#Gk*{PZT+{SFm4oQ`Fnd-?_J! z8EEX2KA2ND#N7K5{KHu2B{ATwE_k({RjzY(ETp@mDV#3d;y0!(v6yo^9$est&xz-tj z3z1p^%cph23d^bgy~yM^{C9ffiZrsnDeSrQEMze0bxX{UEft`B=M_i1|1xRoNZL}^~hT$6M34t?M}e* zZ*6Drj=hqyG%eSY9vR%hFhk`|$--4c>C@;jX@csdvXTp@#!&TV$^RyBWx%4D`PCEs z;uV}v4`&)ucRVF3>K};1X^_kQOtuPv^G5E&I`;E#B_e*@9OXty>Y6ZcO1)z-vD>7j z|9T7AAqN>~P)t#hwbc2DnX05j&#UgKoeklvYq8{|no9|`S=yZ4CsC+RCQLGgrCuxH z39!BE@Wao~V#371!@y+o<+ObX-!L@S=Y~}>@fRb-4?)(EM~rvcshA9~p#(xLp`|>@ zehJ@s4FWc98@k~aO2wjSuWLv>xxG6G(rEDuqYp_KA;EQ(LZXTgUWMn7Iy+X2c%l8z=gYii(aogiZKTAO zbC^CxG`uADluUy8E^A3dqUaak4NKo_-}-7G%$s9S|2n7ZsUO@lo)1XFuvZdu%=1Ue z={X*ez2xKAd?{^vy=hYNQ6crqOld~H^uY5x;5bL%Y2xMwDQXMLG)3s3sTgL)4h_3w zVy2B^;uZzS&^Sli5bh*x;HvJvm-XZ%7aMq+8~P9_tR{BB$Wjm2Q-2e{u%6AcdOmAHTLZY z;4-XtT<&=!Gn&~RglasH+fdC%2-nZ+R+&r#rb^SpF--=x41B=45PE24Z8bL1q z(D~OWioM|~7<*@Y&uahKrn8G!`7$P~&ejop@xzs6qZTk^lp)r3!P-| zD4rd17%pPdOX4Qabc@P;!mj&Y-C>=zHKJ~HY94H6&ohq)YKzErmUC;#fg5o~Mib|F zScI6953I!={KeF5r&>iB+O`Y=71j=INl(TZW3|<$Rgpg1p6% zPz6SXNc8|6d!^Gh!!*U?2mpCD)MvL0%kfOso9g#rZ;+>MA(kYD;g4eAo=peT&j(pH zXYnUc>dmC@9drF*c+HS~N&R}_-QT6xiCb1`v);Lks56qkGuhu04P<;VYc^cj_HP!dzKx60`p_Z0{+ruTC72O0= zo}rnfVhpQ8LhHS!l8%2x=bI&^gm7WnnjUI)~ltw-WV z^`^d=esn=g;r*wvZt)Fb6)2F9*Z^ENE%*mm}eNh4PKVukp_ zy$xIEn}#YpjhOpDQ(=#Yz}dc?qQ$x@Pou=YKN7&j!))!*i2?`y0C*o|sq_WQJ8TtH zhSb7p2sX2M+Qd$})0oY0BP6Hou5)H!3d;}v%e`sGDuzivZc$CeT;Tj(FP5*dc@V!w zeRkjd%JsAXV)eJoo@!;*d?KnMq9R8A9`XpuVz>P6QN@7JNnMSh_r zDbk;kWxST2b0cB=bk;V>heUsWAQfOV2{ z+rE##Y&UdHO-}Y8kp4FBBSvg??mb+BQ3;r7uS7sSPn*pZo_gH=-2|5Uk>-X=Ft3WY zXe-xzs)t%(#8u958Nob_W1KC@#RMzs(d&&-#Bgx|MyJ{W0bo0Ru@6gGg-G0zBKW6V{@`niQg_I4+BwRH zpX?rjQVu!xw+k~HcbhPU-M()72o!8`3-8{0k&35>9>OPQ$lDsrvjFHhZZK>H@^6Xu ztHXvbJg;gZxbASbkGlod1Tb90YyP~x4pRHK%kL1wl#P;tkAzKHME$8dhfn4ay{8O2tN~6?Zp5GVs{q89`#s@cuF@MSk>Q@ z@WVdL57gi7_*mE*3eUB22?^eQ7WS0ZY!6m2iI;cC))d7!7OwqSMc z0yO30h5QHozR44l*~14%U-arSQax!0&Ck&l5y@$kcaj_a3xQ$ zFlc#HDtxS(pt6*F3a&T)%eu6sArz4L0ycUNFEZM=6Jx;tKo`5D#h< znq43(&mlXsVkrlTYXS^sk8;V@MW=*|Eev&c2^I5|ogcRD%oC#!vmD2Z17Y0c1AukZ zBI{=^bYC2=yMWwH9&YQ*YfG=@{hsx4 zDI0wFeGUZ}rBAz^Q>Ln;gjJzep;7O&G8Or#*o5Kwxz~iI7?-I?vKk9Mm$&=h)2jZq|4uKoLE~GR(;udd zI*-cp?0 zSf-H^t~9o?n_EVy2_I#w&Pw$h32*YXXCH@{x?eb@R#rz)?l+6Ka}Ba6sGmbi@fYj& z2codv%5;>!U$CUm2Q@!6o`o6;hVt7iwEo5-oX^c$+;>TJo^l57N=S`@Nl~9)!-zGv zRN150?=qbqa(}U!Wc{+<7!{^GDi#&sw3yZp!{bNS`^V+8A z-s_y4k@DROnt#4BB&<(Fr_@zRf%dAy0tX<%>5Zzl4UCmeNh{tP4G25o*1yFTM*@Z~ z?u!?;rGi7457a}CVWukN;@rr2?)qrdBwjjg8ML$~(9UX%6C>aJN>HYXR?~{<4DD!j zk0-Ng5{zExh9?C2WQu_0xnfpM=ihU4k9>Fy1h8z>$QjhPnv<$gDvjYWxw`lMWH1vD za{hGC)BU8nXy+d1VMcVAzBCQv9rNR+yF|r5HaP{7?#1jemqoKMORVzsg&2*CZ{+3t zhX}ZsH=IyKd#l5(S?3aP)L-x<|8r!Du#QsByqXqO1URN|uT) zTgN~Z6qX|T#S|WkJ0%ioel!GU_L9v0j;3X&ita-;lO{(OF{1kvoTIJp*bB6_Zf*X2 zo;uR)^mVU_Sxw$#jk`yiTg2SRu<^kl`imO4xU%7Q@>qryPoDT^BT>)snLO_TpQ?@U zgNJh!xBP9^+wh>)#Tw^(Ogz9uO)k(573adbo-V?~s#xBQQgb+G4Sa*Gy7M}SXZoTR z@ZUMQ{!EPr+p7zII1e!3-;!x#cM?P;S$WB;ktI)wP7BM$xuYSh8;yxT2}-^^OO2;dWxsqB*EbF2b&>Nx%)cua@2&J%(P9-j zEsn1vf06Hjus_jqDJj`nHCOx-|NBH(d)^3bKK9<_=!HLL-Nl|0b2lMpu$5N`bkryA ziY)@w?*~lsW?zBL6xPkXTDsGx_^W0BYFe+q{oN|VuMl;(SKiC|Q?2g|4m|}&1vR$# zsW78G#F?z_?wkQ4)&nj-uY+R=`cf9Z+w*c4oA{rMw8q^QotgXRO*Xv`yMjj3X~`cBLjdum~) z)X|AN_GryL;WIg-w03I4p&N{Sd=yWfL!@s(X>|l|Ps>r`ihulWLe$-AH$NxYCabtO zKeTypy^(!^YV`+<=6_+N(U(Z<;iryOu@i`cpOljjcB9(LeRJBQm{w7Teik?6l2BR4 z+-m@a33!w%KbKF&nAj`xOv*3Y*yP-xcdr?;Hx+%bY1Q)be(QC#_l2xPwXYq*ym3Os zf@Ya=nC-!;85%kx1t-PNsNY2Yd*h@9byJ4viZzRBNAka2@K0zl&|wf>L89NY;c%+k z{2FpIkixL+T#yB|TeXUSA}Cffp(cmPE!X$v{05vwE}Aavh}gXt`W_05;f~N#Q9cr6 zg$|W2POD%O_#cood@27hwx|`v=(DCSP_W995_X?7c`P_ zwp0-|CMfMr{msf`JEB>miD?)x^sClEl-es^~n_OVDle+aL(sKL{} zbpD&ZumBsbVQoxVdEwB5xE8-d{@YxX@0)V~2!Nv*Go7=F5ScL*G9>$-O^>AS29 z^7zp3p`Q8>0Q1t0)asn{{KdxuUW>1_;5+8n5t2MqTg5s4Y3L|YD(l#K<0Wms5!)M+ zrWo0K4;cLX-FOZlT=}iQ9Nw34a_ed`qqA5;iNy(oiEX?hob5iRyW~;a=qCwT;)q5x zBf>3X&b{>Z@x8!y&eUS?_uJo_qC!kucgGjJKNrR>7iR*EX zOzcXPhXOYQ@qt?l9tW2oa=1xL!kIW0n!DP|GT9!uWr@nK^1^qCjP1-5phlnd##VI4 z+$%=wEiMN?AI#&R9(C)w$Xr>GXxb?3o?P5@eZwG}8X}fsdl9;poM|&@~5UzNPFD-9B0$DMY=!Swd zJ|=$5jM+NLqJ9mQ|DnM}i}3T<#9S7<*(<;EH+y20pXC`+^IgE1!;^i9EBCsSL#*9w z9f6evGDnA@WqZqaa$2NRxD;4|hLasUYbUyyxuhQ+);1j0f(+~j4C($99gi24@8qkP zLfUAiKGs_l1roT=YzGXQh)9i30J3 zp9)K(*;@Z)-KDhl znVD{VW^x}L+QA=b4QiaD%%_dXJ^cUN154~MgQ7mOq z+S!NKu_68_t5D2*uHce+)=kt%(fZD+f5(vYcLBjU!x3hf=&lG&w{Y&Kfe6`ruCV!7 zxXoR5>?F=H{R~c%C@YpI=^-TXbHuDUM+NqRvUv&T*LifCzZn2CJ^DQI)L?Ks}M46&hCiEE$Y^cJMU&FnTyXNAW*uc?(OSlbjC zI_UW%)lZG^9ESLgch0s`PL!n!UGAX{!|x* z$0;7XWgQn940M+?%yU0#KG`}4;{IdS%!;9D5%d)P$3J2&^@lL$)$@ZIGi^o89Dh2D zhoU@Ue)now4c==~fzu_eu%dO&M~fc4-tB^& zY_G?@*0iC>lR-g&(4O{c=f7Su8=VOVV4g+^m$cJ&(MJvgjSUXJ9=eeGmCrl`VJ&bQIOX$OC;Dwwnhy=mZ z!I5AV)9fZUs_OAjMc9Cj@*@muh=nT)C(=4^op&XImrt)fVWstS>#A^MDns^}?;Wsvoiv7Wa9gv8EMJMFY)w=a{jv;n zXuTu>I?VOH6w?X;n>NH=o4fD`tlECw1V0D=$`B>pxQ}VRpshDjV-}W132Ou3AK;qw zli_`0?XUJK3pSg4kl&l1D{rZp`aMrLQPV6DTTM7Q4^M{kA6%GzCJVVXb#Eg^2V(Z> z5I1`8?yrEiwBYhrbKS${Te9DZcQR%UmRIwOARo1^>^6(vKzGpDSKwnj7ISy6hO{=g z;qD6Qx;ZL2xr+0b2D|m#WWA+s`s){HqfcD|8||GgM$Ew^|&_q+HtMiWsO-YDrX z+Gbh+YPGsA%vnVxAx6lLk>P1P zJgMh5h<`pk*PIFxLXvD1xc|8>f5Y2e%mzJA~bg4Tf&n}3GHtha#d@L>|YM*4jlfjA(v1Tnxx7)V z0ud8xeKEzaJ)ftwnm%lsS@pdsBu8J3nV57{B&)IX&H*ptF0{xltXb=%X>5l?uZaaM zdkGhc$D)b1hAiEI;iAWCFsTcw7qq_9($C|w_*ztt&@?}XO2qHe+no8T$is;l2lTo3 zT4AljOPD*wLp?dq)(N=N*5p)mhTB>%?RWg4%Trqa8S@#Go!?ISMXh`RqpU&}DNZS0FM~m=V~yQ| zU;u53j+M)`<*o%gnu;&=vKJ=6%DLstj;wd~MpMb}|L(Crz{qa-A-Fzem+6d4z!Lh~ zkp?#_S!)I>r!9#bnW|P&Z1iG_wGIn$9*6r&r3oz1?KqBZdjMdrRm`*bA-(7 zoJd)EjZE*>lbc{yS`t_a*dnF6GcnF7#!;9R931iYu(U~+!go2Cv8aY65wCD^Uh`}B7RZSruPXDC z_=~M8b}7#_Q;Xe%;r5g~Ioa8vDexu8u@l7~0e>25=a!LEYEHaB9P$`$FJe&obCLU~ zk@aQdY1~D|Soi>A6@{a^EK>w-fi#24283>w#pUh@ph6*4uECssF!s)FPWs*d`-pon z@Ovln%FyINE2~s@U2oo9Ckx#1qh9$^Fmh@;zH$=zv(=mS$Se}DK7;tv0Ci!= zA+9%VLM0z*=XiCxTvFAbr$~wf#}VoN#@E@=r;3w~0i+ z{9Ibo2cQa9qmWmlG@Qfn5zrJs<^y4CeTggA+)y>RZif+;dj)-W_aGr3Ve?AHIK_r} zz4;#-iw!8Q7R^aJ}>_xZTR_s7XHg<^(qajj$Jxw8>OV* zU}X~a?;FTY*8Ga-Wu3Ojs#0Q`(JpeyUv4X9{@v<9#S|9!#AM}AEB{6+k(J7Hj_{Y4 zQD5wcbAfF1_|!P(S<3aap*87XWn8nz;mh5PABB0I!!_*E=zn8kL4vi$P}Vi^DW_!| z7mwLqo6`aEp_g<6BRJjU0?RnWI^SI(w^%I$-KME>T+M3`9> zaeq;^uHJ5jHpOg7dOQtFx0d4;vOX02zQ+)WqZ(3~wR z)v+4RwEgMO*%+nuvM;aBuh?;Ik(J?S9UpENkj`-SA2+tZ%7MToq@3?~28`$t=0P~c z>2X6-dF|`!PiB{}nTKjpD8dyf!-m<5@BjO7R==(frGtc+W;Ch6i6L4@)4f(PpJEO9 zs_S($tlqQ=1-@dyXrW z^&9r3XIpIctYU%;>dfEnH@gn&=#>XQVWl^D)?c{{+n^oOL#t@;|E7js7Y1Z>*T)Li zTGySd1e5U|wBWb>tr;jSUYQ2+rVgT~1;^A`43!!mHYACnxd_?=upZNWc`~gqyj}N@RmN@q9HjYffAfjO%^Plq1(*;G-N?_-<@rPv^TXond{Gf?5wQt^EC%%=%B@OU*)L7Jb?76bl}rRonyBxvqcuj zGoiy_p+jXiRpzL3e0TDv>BE4T!|ewUEr=e?;iI4 z05m(M0ELCzIDP$mCUH_?T$t>IIJmKlzm06umpk4%F5KwI3R91mNUL;Ic92_iSWY2m zg};YW^?P=#fDlAmr?@v52IsO;s0H%P&3rlTa3~LRTzE~e0zq~OQ6Fs6dUuFA9&xhh z_?5TMt%Oj9mXDCCgc5$H3p|G7GLC<2A~h^a*^(?OMi-5hW*kepmeyL=+A~S z8;{HmyV(mnbCn%e^E>rP-N)}1i)z+qWE`7nd7OJMOy-|!XZRKk+<&uq>UtW^$n6WR zxHXmY_55(r)xSMQoAJ}Bq|LXY^Okr=&rp@*&5w>T5u{7%W*}e! zP_8vMvcr9X_5~L~CK^gXnTNX7CT3$ByS}9~*3B|;hlgFQ?=)YGIFEXv-O+YAiM`p9mK{#WG z?V;PtGF-di243JYB>=+q@IJjBA|hCdo4@^9;0nVx4c6780NsAs2H{+GY7!A}oefEmMY>(! zN$$`2rKP&}TIe!cwQJDj({O5XfIsBF{(SbO0(Sqi!&fR2x)BN4~1-5O@6jUyicCm-W?+*KFq{7MIc;}nq@e!pmb znf2ZpZCkUHhTm#HgU{?X0U5D;pS4P#d=2*R{~O8g(RJ|=&#b_Diex{DrsJ7=(1uxz zz}**5;j{?kShP$X`>xgz4I>7%QSqTo?58*g&a?!_U+p`iX3`NVMKBkWNo}Vs-pjMyop~VC zefR#eM6wk(l4WGQOA^XDW-26mB}Q51E=1XP#>_}UvWzukEtTxq_k9`rKG~PC?*?Ox zvHd=Ce}B*O{OgbT182_roO4~TD{({lx;*6WE>%Bdu26eZpWj1u(XL-XG&_G!?>SwrPVj{C57S!Shw%^0&+b(jC^> z{ij)G(E?ld17j@avaut_d6AqAU0W?y+&?lPF?x!`Bar?8;vh>*fQt|We^aC`%XUF; zM)#MZd@P}@K}NW-8I|m-)$wYs&k6kb3WOZ@d+jlZeOn2cM#|Ed`cN|ND4(wzKJ z_@RD{L|ZDD>?&Bd+nuw=CCVLF0QmRgY&*j|;tVyn7bW|I$FIQcgN+w`zm#>{wPZw0 z6PjUXa*lCO(p#-I7d5}WiSnFD8Pys3pCl9$~kNyjTfuG*%H z%&Z`Dp}N4C69!)Qq@#$*`ie}K)Ap0AhuLryM67$p0oc;jdBR_YZ(^XF$4btk(rE)V z9uCYd)ssx79r@_ldp!WV)$z`pHyM@&$UPU6D(1kgd`%FF(rth2+CsmZ}M(pIyj zYBSziZh36pJl)}pKUk0Z?PV7TL#^zWK;KmEAm*4MonA z9*kPi35nnlc&0)OmX_Z!O6>1oFt|nfW-t*1XNt9=zgy8?Iy6JR3|)=w_RrkKLXh5) zfV!L8horDo7SwqTpCgv!J-cFcCeYlmcBc4p@!>xW|I_!FhP}hxy@?+;P=5k*V#Dn{ zy&xrh4M%rUskHot^WEt+fhxvT>ikR}VFRA$Ev8brlGu0MalsTiMz#_yt&VHr%v->^ z8aw$+9}pu_AKv#u-Wf&c)*%YFIZccge=9eHNTiN(fCbOU*m8pxqAwf2=k$4_$ju-} zBm}=W1n-^dZSLI@Pg+-(OpZ^Z2EN|$U6h26MQh|fbnd*KS)$Iaby-0@^5fr$%?sZ| zX=C>1mc`LC%V1o}wLJIt>XTV696v1z1(C|+Fjl@6U&!_4!U zAz7xZK=64GV!wV(pn09|(87rr12d=|4|TlbZ3%*i`D!1iMM!8}0&EtruS&PV3;lY= zy~t1I1y7K7uG6eEXN2|PnWY@$n+y+elHbFj=i+-#JN>Zg#uvZwq&iW6Bg0gF-Z?A3 z9(8RFQx3S~J4L5LktZ!sM<-|AHLW=EE}I@O|h&SCTFP#MiX(E9>>FHs9%t#iP7-Q*f=K^*s99&ZIqr$owktM z=`XBCX&-D^OeU2vha^#!BY328xN#O&X1c$oIoE*U_eBmYBaU0+>k3dR$h}UF!{t@p zX5i5*%^Uh+GJOVOTxxK`LVTV%K*W>f?$=YPke_pFiZMD=jD$q=YBIiJ4ozKDbk#}i?5yHTD zbs9P2&Gh>kA1E>-9$dQ$60WNaUQzv!&%b^F_-nZ{$lTAAbB*I+Q}>G&D=Ge} zslcB)9>M0F-Yt|BLlZ6Yw4la$09e~S{gyKkJ^WH=^?nyOg5fx&nQ48Qk@7!DZ_fpj z-3j{U9Qer^Nw}LXH|YWU^Q;5$ez*CAqTK}=DRv4#jk6qQ7UP6ltmquyUR|-S*Lu)p zRR$$d(|cSK6sOw?uQ$GmiB*kqQCr=F8@}37s5uMjMUeq1Otez<=$RE$dkBN zaOW-z$D`zC5CvFkcuQ z9CxV>xXhPm@wV0EqK7jCamIBVzOK%P*q2bHFYC72%1>;+hF9tK7WQ7HN*#!4*WfYG(p-u#4}y3%gVC?weqXH4lf7|(w>D0~-TGLaT~I$| zTRTZh0UL27WBI0Q;lc5$#Eqe|79mKt9TvTUs-|4IT2KD!Ad=&LoaD}Qn(tL>w`czJ zQwz7OmUBqh!ry1Z?$S1X18I|%6sy<;wi@{(4~hXMgh$f8L5%Gf$6)n#?5YTqw}628 zZU2p!_kaSowo|RKtmrqEnwK~=+TZE(j^c`k$Q!{ZMcru{Wvd@kWgvHEP25rn>xWOO zI;}YJ=MXd80|<*vk3+0`ck|{?M|sZbw=<)(^QIVoeziES%r)M5<=)1^Yiy{SpG&56T5!ehUEw{-AUojtEb=K|EjEAVmxK$%)E?`XT2@o&m(e{+xSjU2Q;)I{i^^=Y^_;7+&ou zHYT`-|ITB?3eh>HD%ilo+V#AwO@a9;831LJIQH+@jj)1LqM=VQ`7}78x|Umz$f7kv zMk7seX$<&3EC4}Q5fIvYe^esg=VTWDwBWQ6Sh8K*k*+*P0l^8a5CoDrMbA6kkuUH< z7zd-3@&}8!N9rG6iPgDZkP282VG+=KWAtgwz5rC;*rNF}b8m$ENUik#hUDr$BBa|b zXb9#3-8m`N1~W4)NWn4SPT56!B#8_jP>x=x}kX7t+0jt#*Ns6AGaA zf@A*lskq?ys%W79eHw?Ur=yEnGhgU#Xx04gM%KODhU4SSTsu6(9g}U=nOl7n!cUaO zns)&S`h*XK8h5)fs3Ywl{pHxwXzJ;i;P-9U`06`JRGGL={N6HE(;j1Od|I)Vo%4DI zfGLcJUcZy(^B={%A^jiByB7L0lfB)$Ow1+8fLdQ_r@2$;3;;b$Ss>@+u0^_`wU3SW zy*qR)2Hg{WmCE`XeD;1UAN9}s?FN536Q|#^h*boUdIB@g6t(@BLeKWY2tqXzm#k;< zOdocK$G1n@=l(@&W@#SUdYN^4q2fC)ljtk0RQ-{Lcnd79af=B$bAZB@AYv&v3RW#CIszdpc#*XKw4$z6HpC_{-1 z^Zh2Hel|8IGQK@fux7_ItWhOMHY%s2Ggu~1=4-}GHfp~gw|_k*Y(+*ap3>J8o_ouvFW^!UEr_=a)$c-d@? zBCLc1LBdQ`{dz*NVC2SkvpDHv)9Zi=Hjlhtd?V&0XB&#_Wwo8)Egy9b@2nIjAyh~X z2cU?fQOstnRR$+JlK9IeG@S5k!U#rgbI$2+Dt=qp-kYr)ai?x-WzTU1JUEB=ey9>Y zh7gf&wcGcO`+zyKiBz^8?Jl&*_}gtu@V#iD)hPtLgzJI(_7fi``4IY>oz7oIc3gXh zO)9HWa(1h2A^VvLC zP3R}RkCFsCgwoEAmle*KqWD^3z2BNwGqQJyXCuXz zHl6%@kAjOjLII$gro*>2KwX{y+*Y05N)ruK_lL)*i(iuL);jzQVHn2+CM2lO0_l!B zpo7;xN&lx-2d3f6{>;)fzw_2)#CI$EQ2Am`HH1Lv$z!kDJx_6(HD>+Y-n~*0v^w*gTTv5eQ#pww8Z&~z0{gQ{71FF5m%F2y7zTx^~AsAPQQ#6i=mKpYi6U! zD_0Xb{9S+= zd*q#S?jD@v!;Oa`{Kvd8nw`wV&YbDJ<`ofQEW7=LAn87vpn8;8OB}t!gvPQIAXjdI>b)rL$-*mCab0d zqq8axWd{!Wl@g~Mm0;_c0!a5zJr}%8Sg!9Be5^n5YaTbDF6S5mbE# z{?Pm?^YDBcF{bY35dB+V3OBN{{>I%p6t$QT?y(Z*^#qleqEV!I!{PrL4d5}>Cwe-;fAePKKC&ga)6^{_GCFI`}fGxtI@E`mAi%CdqIuTm{1yN`A2*~caWNbVV`z0 zDmT(EXs)~}kSif~d;wHq9N{`GU+I0kgWXP!@qHGAmt-4PS*bDg!rM>O2GO>WH z2O-9({{GiI=I&3DX1!F)o_^HYpw7UBx0$v$Z%6+vit4wE7Ek-os1r{}cen}z1yMv*P{J^m7VQUtwGWDlke$y4dg6g`+f}*U0V^noKhP^Pw zlXzWHU)5AP##e}m1E3a*j`F&K}C!86YD2xV3Gbze)NY<5{WL@9*$^ zlY4!gckP!)vrZQ(z824w-goB9v-2Big-iO_>ec%XnrPV;Uu8crEtN6Ydfb&$ItMS1 zoBx!GlIsBB!*h$;o~wXsd2HwY(V=};RcI+OZ_rzL)4~1THh3x=FJ!Qm^SR4CKih_P zMt@xE7;7IS{?o(0sX7L&ZX;z0Roo=g!T={1c{vU*Fa&y00IfnKe(HlhGEbP>}ZjQO2&=RhK#v%6e{#aVF@Vw|W@@}f0+I1cu&o5B0I^2Mx zKmp}5=aaFBUq}D^(128w2u!@oUn!FwmXhuKLNwVa)%POW)Vo4lHU}SOXsV9Lp+D%u z7P6;bz#kUW?5(MMwM^Zr4Vvkx+xodx%Z=rG4;}J$aQG{;B9Es$nsBZ7@I%1hQln~( zJ-ESMsQ7(wXcA7AurOyFqd5B({jQAFZ|Z$P4bEc4YSd~bAWN#tcfKT>011F-a!gGmAL0)=fB3+5g4%CO71^cd%2G~ zOU4eKbCdRXz_I1eY0BGgYg9+a5=XB^Skhm6m_-2HKC~Glb=rso7!4)LhZjFL)z6%4 z!JZhR{>#?5O$#SC@w^7;8mczb*cuy&6!)jq56RC$NvoM@(~u$ONf&Hs+!y4hb-o$$ zLmjrAXx!nndg?Bq_)44tmbz2-`yyD33J|y)d1&>^2h-onTUa==8} zHZA@Hq*EK9Q#@$Ap1F1OLphgabr>%tlyQ$GIFN6?52(E)5acijEx%l zi3vB?Muf+Mmel-47NO4&c6pnly5MYUMN?dkRM0Eqodt>~u5=2q4IlT|Eg1*07)B#b z^VUMZ6KlPRy;;41N=^+!AinG6bK78EOY003Pv7ayaXt7@nuXtZob-H~CjrNlHM&dt6yFX5%_VmCR%TtvPT?l z3AgYgHep9jul$mA$9JisHx2S&y!#p@sa{Wf0X=t-OU0YuYJ=d3X?(;oYtQr@z<)Jx z-Eke8CyG4Y7OIsADT?aH@ViUa#b{WCRKJMwYJFlz*KxvFJU?C)7sUt2? zLbHp`W?|)GD(amC;+0NPN=fkB92i(hSr~MreMyC=&IXYk2%nxW!PA_`A2;S?NU&*p zs)4e@AKs#5usad)eCJtm&izPc@>4bvSTNydby|38d^$X)IdWZ#{r!bm+N|OkuN$6m zg?vhimyS@XKqHqNyAYnsdTa6V6p7CXxoe#g z|7;&=|IHHE+&G-SeCGLYjFdd@-;FI@+A(G@3maB>IM^eZodL;!}K&Fg&9}S^}q*#JiZfogm z!+=$iCrUv+e@BbCISgL)ahXL_r%C*L|xVG|v<)S8SoT`7#0$)~KabT zj2$&z>-JSucx2Hi{On)Fl+u&y0(#>)yWh$ zj~R@QOHwdqYwAXUbagc@O+?Fy)GCuEnYV>$leFYcE%8+y12t!sfPA-prPb!_0;*I# zJ54WD2*C&#=z>4bXYLYZ$GH&G+NPy-oXW|~ zxfYq=6u=qW1NIPn979fLfw2EfG|*(Om-RmO9_Vp8f?edl&_nmYYNyGDS&!Gu`@N1< zFrTNG1^L|3(wOQ-l&0YygtOIs+i{{X_^R1r7V<0m%^u?oN#9?H{`U7P>9CD#6mk9D zCc)z)-TP?z>z!8^!;Au$9(v>t;vH7q8NBb^eHVY{YZ#nt2_;1zKb{yk&qI0a5P7dZ z4ng6vAiaV@nxnLQf5{64ybe``h~qN`cWgB^H(J>po zD$GpJfE;pWc{6xO>XMQldw?GP9CyV<8}Q zDHUOGjt5Dm44ypdQ!of}G~IL~wr+vPP6N@>nF0c@lDNd*YjX0H;l?f(kZCp9Oz!s- z(zSf%k6by|K1R?Q+|d%`ToGU10J&4)oNp~}Wi`DOI@Xlax7u*S@yH^7w`RW1Jz_Ed zWrooqgldj~1OfOSNsZ|y5aN9{N%;rl(f2du{Cv9!tk&g@i{YGb4tWf~84^)1Yuk4AMVi5ww7 z#ZxQ3$X`4D%ykDeGsY($dsq5o;0^^(F@iM%V(7bBFT1falQ&3h-g9cTo?)w?=J3^| z;7|c~6utXHrGN+ zlIhGslIJ4UUGNq_aY9Lxoh#;0YQN>eNB(HKe46_6YD5f~e8<*h-g0^>AXb!B!R$?j z&p?rjTgem08t=-_60#P9v&D%AKk1w-rqwe!B2rewGg7$j^&fH`mh3oy3Fb-gNZfsf zr$fL_teT_$zBp<1edx*Pqxv{+B8?Oua$_i1LN;+3%XhS+gd_~8J~K6czOTuUzdNTw z&+$Pm^2g*rlvnN^ z5fz_ODfr0jUtp3rI`7#IAh>ez1dI)EKLMrg&oh9WvgG@P5d}`Xc-Fz@#E3Hh&8B+| zIvT}}FO(a&SPi!BUy_cr^63zZFR?3$|1;+klQj8VOcSv~6$+zCfUBU?T+@wJEPnl$ za_#f$jTKh*vGzZnmA|4_6<;u4)_ZD-Y7BMP63Op^NHoLc2`>g3Z3OS(W-c+hd_51- z@pK?c(Spb7o9Z7i7*Jm9H!Y*T&l$o+gM-;i(?UQgS$xoWku72tUwKYJT~+Do&TiVR zq^eO#z$v~hQm(8N!p~uM?&L5xRGqWqa$5lFe4IByY+g-2#s0iyl6r7z5T@7X(wCw? zW2FTNRy&FG4Q1$Awd$R4C-6}tJG%ckFbA>@t)CSW&@#IpJmOh!gFAu_8+{V%7!y}1 zjf*clB?M0Q4?B=vUP9W1l?1@c|Kd!-c@vZR3giB*SuzaIv|aS{WQ3%oVonss>2XzFF;~1L1MuiPAKDfSVw0M%yc* z=Y(e3M}8Tf0j(OcXsQ3meK>Wq!0D)Zpge5VV$Br!Wn?BbKSd8Z92bE*y?TjX@ZcPo zAG=2ZAv=8_QccB+Xoskj8<@1TW4FnD)UTQ>CoELCOcDfTv#E?nPV3b1_sS@8IOtiH z);>v^D=#Gj+hB?oPsgQut1nfg??mg;qt6(_D5KwyKo!h@XxP`+{vEK3!*nfg}m>r48UCqF|X;OY(N6(1EAFY zk_=D;3b`;#BUsYj#2By6a$FdPZeciG39qHWIa_^W-a2D3U9gmpMTPXDk(P9~P84kv z{ikeg|2NG_syBS_X99D&`R(xd4MeN#I)7o@n!IwOc)z4Xb#`u`OaRy*6;nfMoDL2w_Pq*dZ~*^Zd_I`I-QU6ZWl57kDwR7|1gNp+X` zmh2HV5RE%?0#H6W>@#-U@dF^Rqv9d5N^u=urm2EeC8~K* zg3wLEL#IBvv>qE1evq+`%+_42cU19iV1@Q)mou^HV=|uIZ`6C|3Uh~iG@q!7$;&{t zBmJ$uk`8PBl6esSy=CYNcD(s{3=h%TIplH`>f_XC*;$5ZmipXNj-V#BHlHQ{Q!acY z$Lk{G^z^9;_A;-7i)a$=^$IP+ynAOQQ|3@LbBfm7_HPeP%JNj}WQ}7Qc)^Y&9azvQsrmIu#1)%nyAKUUc;% z$SJ$ijfdS%e=BDej!!?*-b`|MkGqbnN(JY&;(d^|{KD-eOQU#{STcm;E42k{G$Hsobd{y$w zN7}nw{X1=CgW`Tdh>ixM=@m_8xI4=)wQJqMuL>MmuQS}^zi3f?)gPNvB9q*UFa5f% z&JPQMT^I7?2b1sP{6Va<1u4NJ`mb7m88bMakU>}VO&a~^_ir_IMqbjYF*X=b6KYc| z(;{ZSL5TpKh);@4mbfNL%GRTl+$YvsDu&?G{{P5nNMChfq4;{gxI@h&_5^Rj(-Xkt zl1$C(oj^L1($|)5o05iVh!r)W?PXlCKCYl@UEIO1z$#EPGUNMk)Bb z;&Qkc--o=~?Qu=|W$n9KpvwM;=TQy)r5$FHyvH}+*(I&Va}|*QrEoREWU4XK4Eb#X zfEd0`>OLz6vPye8d`FZdMacHSSLWPQr^}t-F=_`)%vx7C7(|0U%JJn7L<>vTk>`5W z-BH(5?7aMXHW z18`WGaVSOWs_Ey7 z-CwA9xxA!M?_=89v?F|(UcV^Px6E{Mj=Pv@4et3#<_o^rkydBTpA9E6X7}M=2AoB) zI#J9g)(BjKUScWHpG9j&<69pTX&TSBpJsI@3~Jm$H-yGnWt@>QXSN5qD@2J9dQ63~ zJUOLK9p(UoW7l@5b!gS*{Pnt>*|4Oatu|^TUins(gyCZL>2Ul&bGe}y{0L>q1tJ>R z=WN_?-BFPl(w`iL;R# zv@TFk76IPL+_!dBRhR$XHPXyGkVQ>+$S!ZB{wbdio)?lIDZGnOK=}Hi_|n2rC@+-j zw7c$-*<@FD@z~y*g63+jQ<)?cf76lel;4#x%Ce`|fxVf^8@t4O^6!gqk_NgBRxz7m zvyrL2oh>T9nEYN-)p}tpFbCK`vwssI$A(%pscG6XWNuhn>hON4^5q7;N8hvuK%=rM zjMgWj%yDg=hoo;9-+|1{w!@&C(C`t`L$6OWf97EvkX(XG=kLm~yM8I6nDC^Ta8JSL z9?J~7;2FBgO8XLfqPk$u`2d!h@Gy?ZM$S|4EMwZF|B5;W+NhDLOB@XDThM_h$URfo z%ouycsHZ~d$b=_0eC31Ior4g`-_$Xv%JU)57y94Hqdnhw5*b0$ZT)BJFEIux{!iMj z1UAka+H^Cx2XU_cRoOnvl}<<(I}`@fy)E7&XGnSyqF}VUg&ha1wd_>jM#so z+8CXO;eY}O#BD~Y#>#J<;nGAO=J}>iMZG*k~ zz1={+7Xk70$BV^OGH@|949~#>!y57Y2)1Jfm|)8WH61S+&aJMWsBNmu9QKYqw@JAx z*JvYm*&6^F%fGSKz*GZ!-<~!RATaMU86R_Qwm9v?-n3^PAa^9F0?0v!82a$rC;z?S zq=qz5V-iS}QHl#Q`y7|33A?3spS0*DIU16Z%f|hA%CR6nq`D(vaT$m$9z$)prL7b9 zK1t@=7XDs~W8xVZ5@q~#)cs{t>jD`_5FNL8?7QRO$|MzYBu+uS(ir@x#ji{-m3pu% zZeD3T516dCRlOaDN1`a-CGH0&l_z#C}801b$6V@CP-UW$bevrIYp*XS-UFFXLRavhYG?Z z606`ESo{iX|C(ofoY6y7ha>CpEop&*t;-vkN}l`IO*e=q8x!t>tdj=MR(vF-_Q^b| zxOhTXTokhuuzTi3NbwBZfWv39%?fN3#$%kSFXPgrQha?t%1<*Z-`+alRhzq z-QZXw^p^bafUrTi=e~n&+2JW6JtlMu;3A7uEYN;ejr=k*kOFB#kFT0;%rg$u4y>WC zKc{~ZlzGD{%swnw5QXF27gbdkzc0=h-|!&3{n6gLlm=K2X9`qbA2<~8|27Wb zb8Z#6KV)G0+rf4~FW%F(5So6qrTj)f14IbR_V{hUmsuK3>BkSb&nANT3Q1b=lO`{} z{I}7{3lr90^;NatgV`h|+MKt~B3Yis^YpR4>g+UK7k~GThh%^lj2ZV@FFh$9QxA@x z*wCh2Frm!YnBFj%LsP4z zrnX!Uak^4R#cPQrdM?myn9zT&E6Ro1V;ahq0u&E`?V9DzJ z5>UG?I)mP`bRfkeAe(N~c%G2R!9<&1YJ72L(9D&==j>)~%$$e8ZjBY~qxUp?9G6!j zyYYJxZE~F3$AvU8wgXvHGa%a`^PN(NI9>ULmAzdEWcEk#NVTr!f-&CGDJmT7^yle= z_XcGqiA{%+k<4-AQ^O7vhvT9w;~h73e|_L#JGll#_-;^-)l29c>A8Q7H@c4X>^rQ? zRyjc@0Xg6;xz^ZQJ0TH-oomNyT(j{s(0j*tWy#SE5Y)$N(@fCgjzA;Pk`Boyb^5o&GRe*uDXdDu+khCyY52LkZYJ9pM+z zm4t+X{AQEc zd6gM8vW0pri9T4Ag*MfPIfc~;jLD!T8aKt@#;ckFu;Vs))FWQifA6ZbCm!zmMQ z@{hKhCfOHHWwF+N$3)cnL@iv&t4Vr3uV}|5XV?9QA8*d7BLAKZ3+!ZVeSP;}w;DH{ zgI?XXAUTw`%|F7agyTq>jzGb^GU0%Tx+UMX7rar-5g0EbulVBwqu8U}01opvTgscW z48!883V6YL88Cr@q_N=)KEVinwCT9E>_CPURJr{ZV-wtCz=^I9R2iPM&U)f31Zi>X z?AN`DrztER7;o5Pe^yd)2%Bg^Cm}GXp8fCO zW*%O!x1@uuyqSFv8+=peTq&q+Uw~8*cEykH$yj zK_AvwzcE^{&v5PDK92CJvGi=?wJC{br$z%zJY5w3qN`5+(8UZu>ps)(P5?MdhgVr^ z32Xo1^g1tS%u?|-F+*AlG51!k;sbxKx9T~%#*6_k*+C0$L7&=*=NKqemd7P0>Q-^< z#p?a&pwZ_)8uy>dzGJ%XF3I;1Pfc-ai|0}_bK5x{f}R-atVD{^5(Xtm-lDFL8e&Cf zV;sfD9QLi<+Hq^<$(>eI?Vq6BpBlFv6l5w?>H_@pW0k^ z>)^fj>Y@Ngbnc^!ZC>oO0g`J@a_W`vPiHM5CRN#52st$qJ7DfFfNqJGIqZb5huo*Y z-ek=ej`55(OiZjyM5P3?qZGP~>@TFy3d4EG+&7 zjgvT4*P$^0n}#PFeuGGz>#NymChVb2L(J8NimFmIDOQSs`YY#~P{) z8(t&ZE0NQO7vSNovS*(M;`d)x?{*OjbY|>MyZ4~;&sTX(QCHTnfZ43Tuz*zDmwN+l zEy8I=N#8`Qq~4!8p>y`b*E~HkIWk%wP&Ll)9O>F^EyL}xqZXzNmL|XEE`OW;Nm4$| zZ&rD2r{D}cGl_1}N8F%HR}tDF69+$ogjW?OS3U!RJ+FSxx!;KyWr+smKeq5nAwrG8 zKUt(IXmHWcSjRgZv-cT&gn}3e&T;ty075qW=Cr-7&#Y0w@tT$FSU|yAe*_?=%rJe^ z3z07o$zXdWS5z4CGlHG{qrDV9LxH^VaBog@cRcuF2FK|ty8~(TVFZ?&Nk#Uf-+022 z_HT1E;}_UH>KbB(%A#^mYD3}y-1R|gOP@e%LSP_cqZsb|z|HXPf8Uq@*@l{4T5O3? z^(0ZR1E|i{fSk@p_C-`WuyI)fmzqO{RTAf z${b7Ca?c!-fb4{nEz~ewsOkkEPo&>yU^J|*{WVkWG_&zqp_-SA^S^IQR#95xkFo>n zLuSS$ii@#^uc_)Hn?A&!Vn-p>Nwk8fk@lc7YssfZ44RnH!=+S1@2M9@zNSReqr;$; z5Un7}kg!l@J(#RJC3={H;HjRk6Yle#x`O}-7FnE3eVy>WD<_r4ASq3}1o6c7hlQ;E2w1 zd?<_9N{z3}F3yy;!;V<=foBlNIInKynSF3AyH!iGF{ds;DrVCoycF9z54c*CGoKyp z*^i8N&xf1>+5o8=UJtOsC#GLFHPQw#VQTf(;b$d2D6T&a~E% zTQDj_;)aa*Ng>um+GwY5Ivyxo1*YMcdbd#b2j zciZB?De(*{Nqm#+`TBdNq9ZioU-X(oCQFi%gQ-RK-=+Rl!7A)AYaEKScx)&Zsmwp! zo_@Z-vChm?)j>?jyJ&okMjr6w*=iRR!aO2FFojIpCg2I_}z2jGASRGk4@@k4jdJ7*smhXBE zAE_Vz&E}UQ#h+W%eY9i@Q0o;Rxm6}!9sgf3BwwJy(2J@6>YFs)@-mMAfC#rU*?8m9<_ZaBWMzIYM$o)HTC=-Up z{kO+8e{9GEgm`0dFpII?LvfX3zB52~PGZe)o7f06_8Eo=9YKH%%+AO`$j*Mt;r zXZ5Gc%0CDw5x!HR`(WsvT;GKfS>}(Iw`-w(hhv#_<*?08xhY>qkEv|4%SXAjBQ>z4 zj_w%W6kUTO!UB`Q{m1Sw#JqaO}S_3TwNF1W7Yd|cmFi#h!k zzO3i+LE=3?X()eVF#H(#s=j^yucQS|320$VWqKfJ{K}SPPuatfr=$L*FzZ65iyZ}fZ?L=YyWP+%Zh&-n-qdI)b)pQ zs=8+`F`Zo>ag6Rr{@dkd(#-vjF3*oMFFK9uPfQFN-a1I_dJ0hEKp4RhiHMY8dne>vx77g|jGdeCzE9i`&(O0#~b#>F)4ESuH6% zTXK2LUzb3;V=9x>R+}oLTnEW*6@0PALS|>LZ8NgO%-sLpfvs~Pawvc=@=MV*wp>nL zSg}clm{Pc8d1(^<3B18)YDHfF(6}@3Sc5jYHxiW;Aw+a0=q%9*lMxdh>CFL!yhzP` z$+DKbRR3U!NZcu=*&hqlld)|(S3lk?7ZG-NgCpd$Kjmc8`F4`UsxT*~E^mVDZR>xu z7^V+F3TW!f{g!-G zTd8~50M){~888zU%4#M^Brl=)K_zTfkx@|D{a5W)Pz~SMCxzXMJPK8N*`Fqbf~Hu! z+>Rb9R6X%^{Yr|BC~DlrATVR91>c0ML8y`go}XRBCc`zw-=)Wq4!;Iq$E zO74lsLg8eDhUa2m75A z{RO-F%vNqb$|om#xe2qv4>i7@Lcf9Bu4S&m%$bGS=AIB=`qFdQ%>4o@zw4I$SRgaj zvH;4O`zsVECJmxJ<54nkGGAts&O)r^Gnv!L zHA;rhqYhQ$vE@-Wz@7&Ro}TwuMAUj<6Z;ZsDg)5^mNMZ3ZT6&+sWl^&iQi8)ai{VQ zPD94wJKp=7k|d@p3%;%zJ(4aTHQ=Ttk1OM^%rm}b+^XjcdD(4%^U8Ixcio`rc*&Q$ zb03JSIh~XInT?d5z+@EPT9Q0Pm@0XuAJm}DPNe2F90d~F^8?BqoTB;`I_00c8;De4 zC4Z7lgE+n7?z^4LPG)cWO1xg~Ysgm0ohz1GQXw^W)iFqS+F51rCC?|WzyIsgx5`_t z0{9n7Bi>zgUY2gW8Lit~AwANC9if>ei%f{N{N_br*;jcd)`bO<<=t%--msE04@>CZ zF8L~HF-DF+m5mh{3YN!Ufhto!YXABpvUwbFk!A28Lj^j#FB1CmYgD)y8BJcb^A_6u zbT{`0OkfxHdV}({0qvOlJKlr*wc1hyBCI3sCZq{H9mvCCp$Pjnwp<`Nin0T$^dDaM zr-8e2G}M4H;2-XfZd)B1fnWS!d_OLvk^U7w+T&xIR%8e`v41~<6Y@MJ!o0{^sE86Z zP=K^_CCfkdE@a34M6VQLoj%Ylvig%A#cS(w9Yv6A;27rFV}1}jqPd`N`~~H`R&lL)cGb^ zb?!1ILG_@r&jI>a>P5|phV@C%_xYQwal3SyJK_+`J)MNq-%M*y$jFyRX!*8e)4 zA;V9WWKmvcw?C{N1V9X1Aa&97f~VmgfK-{&lI?08BDAnEYg1*i6P*0$ISKSPRe{FC z?YU6tR1_e&a}4!#TvHB4v|deh+XPH7W1ntMEy#=0jk<|Ug}*Y;czpApof80@WLwRf z+Qg{PqsrP8BQol$|2i!f)-qdJcwC4<gT0ri2r8O6k+QeiKcsb^zqby4{(a%7Ke?wjT z&K1>5@V4W3{VQu-;o_b%Z$ddNwC0r!{0BzrPxsqkEU)|;6qc*JznW;>AEmkkNaN{b zR|hgxx3HNO)rWj>yIE5p6pLoMQA^@0o|n!DtRQJ@T% z2P(vYipyE~EIrjG*pH50%I$3N^m@LYsrx6b9sK^F>p-~r?oVQIJxTd6^?+zJKN=|Y zR{BMM8)o|pW@Rs<01rzXhjSSqZ^q=HiE;-rP|FhQGD(a>WT0Q!109z2Es6EE!hExE zx2aPLdz)!X`KGWl5+s=h|X8bFf2p|YPdX0l&nfq`Xqwda~DWJ4qq8b98#9WEy*9jzHjR-xjdem zw9=Qz*eFRUD>uqCbCihxF`MD{BQ!~557fJN_kd_vg2!evmxaB&U7sa85)$6tWNWn= z)K|9jnl6#tWWWqH*t`9jE+XY?HJ$A_Xw~gUK(rL(jPf<+Jn#I-=zJQ>MB5wpCTvdW z1w88l1FjCeSbP~xFv~%5ykKCu(KbuZZ=g4R(XY)G)q=-DQLe8pS1)z&?m*p5?QfedyplVelbCNeLf{6Lp@CNyp8h54p5*6} z-pcJ$Hx%T!&KTo6=6o+Hm2geu|JUN|BL*O+TA}p()j)xN*PX)s_~u}~k@`<*`?)ro z#}_oa178v@%Y|=gW`VvFYd7F#Jea?zb6^I_YFq0Fn;( z-ToDaG5u*T%?7tNISu)KIoW`=-?fgnuS^L2!2t5S0SCsMaP`wO^Q=`|N254vSO!!( zWY*kV`Y~`tDeV+eh_?$|s+^;21DF3s>~M2&;%t11o3v;`ENrPhakK6IpamO8b=)%R z+X_Z0@nZG5pK^>5hN^w^es`z|icZ|*z5xk%SA+(0Z08yB<2f@sRYc2hoN1Ll-@(|^ zWtY|pGYrlh4qiyJ-hUCpGRFDQ<+XJ*YP(Iw8QtTKe+-*f6NfYh2QD|vbhWPi_}nku z=-`${vX&?&{{cVj7aiR^0!WPLL+d1Ml}1x2uwqWRNp4n0HL35WGB%B>`+bHHyIBY) z{;8jf4u3jQtqDKEQtod3sn6Mrn&aMJ{#a`sNc}{S^di`~fR{3tDX>(`lvJ&y7nnND>o98kU7vz+Jy<;`FXgAG zr`j(f%^h;4rR`PT?#IxWno2UK@k8>cBvJM7+4}I6A-nOGDi7Fn$W^)^G{qH5-AGpS) z9T-Dp@#g4%x&fyoH7EA@LH?Eb$=lHY;b&Zh%$Qnp*z-J;rVzrot%!gR<6t($hg&3$ zPtwyF8;+Y%YyH0w7$K^;HyJch+~5nJ7srs(G)Dhb#oGQ}wJc{%zmkk^(pCALp#4

Y3{DzK`0_;B#ErIU^4Du^eBxiw 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 z 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

  • Xx8UijyVs8;Dsr9i;;nZlXteI*0dhh<+b~? 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%0DEc$b$6;Qs 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 &)>_ALY@JOU1`YiVumt)MEdf z#)p+}z-Cs8_1-H>ezJOpoS-fX-U^r9KL@W`qq_Cs{iXhar4YU5oD*x%w#jZoH*0y@T2A==I5cx9>2zX zzxJ5$@|MCZvGUY0;DjnMBzkmI?|+117i69WPcvO^Lunod3Dhn40nR5Fa90%q?F@7GJEFy zsPn_Y|C-!gIRI(pi{b}V#6Gn#WK(tRuQslV}`3j(0^s{H%oSulcA(r#Mxlert@*jNid$)k2 zKD-@OYHCfI$g|{x@y2W6e^9Q)1|sw)k8eXV8i*kVGGS+P(HkPJ3%fVlKmQ4g;2Sr$ zJ>!U-iYW7mC=XwD30A>(a3`zw$@**xC7b1UEtqDlTq$Jl4SKLJQ0~aI`_7}=~fyNG5rtqZ*=UKgo<9nA_Qbjv& zbWHsowuqZRHh<@o-WKlu3eY$qI$@Gc82t5NR%w%a_f7w^)AHom2IwL+7w0o{m*B?! zY^E<+F7IStA_d8iivEH^nDf9iNu;=Xps{q`88Pq z!OM0DnYk>-S5oQ=FH}iR??7jB0(&iVfL6=Xsc!S(`HBz=1h(uP+V-ad0Py9A?~taI z{8r_-|IYb?0mRU53Y$zp=>_OiYRX=c8=aN&>A;B``@OnZeUG^F0Paifl^Zn7_B90v zPMyhW>LWbszFNH>%3~8)CFr(oOgfKE&QEK5n0025oI}M4WG(sWh_5}xhnU#02wgdx zkVDUhuW*;67pN~G?m9EGrMp>qv47rs)Hh@p%Tn=+^Vm8b#?i|BN)Fjh
    D?35(d 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≪j06)~9p86fYM_nonpus(D|Xwa^(a zyj;~+T-j-X=w~~8w&KD)P zDB+6FjC^xy&5n0Kj&_;chEe0bhW~i9SZe3s=(-`65njH)j*1^(V_8htGyMrS1%)D6 z?}?nQE>Ai5JSMHY9`vC_5eB!|_mAu9d~L+t;bfX?6{f7h%Zrx6xQmjwr-KA9WrOPC zfb0$a4`1@^fW0zCA^EQvij#(39_XyW%oj*bOzxVlfj1tZte_m}mh35;s7@1eqG^TQ zlRBlS6Bqu3}#Xbn%d`1(WjDGpc@6Z}i;{&zO9|IqMCp-t+Cr3$jrzxL{1Y zb|*?kk3f1sH@&f^2!#ddn|RF7`35MZaKC^{U6t^}PwZB7NAEO#4Rey1g~cqnDdH!; z&IUDXJ`4w))pPl+7(5=T5AWf!!Y`u@bcxIH{6UDZUi}NbZ4={mzplK!LaHpe;rPRkn|0_>y*JwJa(0==-wgjAp_DF|aWi}G8N+Gzg3oR!EXGxNue zjA7_jDJdcQ_=ZN`_*LU~%Fk(a+vDkkLnjfw`*8o505!CyF$s9Ls!Kt!~azcJtMRAhIR~sXc|r#Z$GSU z4=!3-X*Ag1Flf+?pyC;Eo-phs)KMeeLE551)o+iFZRAuU8(g~+P#S#&vgLUzrYHn*RqoP-fCP)o}<=O4x~QK$I1zO)+GqN;bC-Sl$u`R%q$O zP5Vpb>{}oo=RTzWv9#|v^fZ5{ek&!gaHDXV@L>!0FW)|#8Wrz{-Qi|KIN2+v|A_yLd)$5T z;ngd=I}7nPZG~-jf=VK{gNl$7K!vmh_FdBWiBC@A?L!z)+JP1UH7efeNMUGCQ400n zNs0Bn+kUn;Z_BWma1DI=RRTm4qxQk98AGbYH1y|J5~sF1)C*m?*Al3dbT;Y>awX+> zoe=8%NK%48wTq5|@w{%T=DhppceY)PrJ%VEUUjEXljMHhtnm5!jGguJiuu^59h-(J z1+eDPn7Rwo=quHmW6rCN;vsrY-$*5p+nMqQTOXt+9}! zjOWBQs|@`*#Vi$0=CTbnCixh_qQrax*&j%*39g%g#<1O*L1yRyp(Ef#wz(kgDI}~8 zc50~w$#y9{)}(Wk^@#TNjEuparJhd8Mcw(&8Cpaa_4nNi^>`OA?#)SzX^gs|FGLMl z{5_+$uO+u2{w>q6{_NP;VE(c#5I5wRYfw4s8!c+!avtLl(M(-`mn*G%)At(xjN;ijI|`RPbC`gAbMYjyq(Dn&9u?CD#NA9TYL9ZmXz!FsD>R z7c8DD>V8D-t8k*e_T^kyJJWY;#&babVgz}3`2s{#wTAhdJMZF#75OZ?a9d`Z)jSXl zlDRig+4KrO>igPkOsj|UxHOQRM#%B;7lRUer-Jy^0rL%*!P#0?o|YaFCX*GrQNwAS z$`f-U#|;r5P7XB4jq>eqms=r;CRIx#-v6N17z?C>}=d4N&LIo9>3Xo9`oZlL6WB){^fRniV5|@@Y1jw(>eI zuDZ*HH%*|TQZ2z7nYx#hQb)Zzb(8)=9W@P111fC<2?9Rt{{rxw?QP31G5Pfo2NWN; zz4IbwOSXlN4B6iT+FhlyfG~{eZIM&=*{T6+LK6zlwE3viTK_!$0`xGPp3Cw?c~4S{ zNgr<1aNl7|%s3zLQTyhBIUxHE)~B(n>wL9hzwXmm`mcbO6pMtyuuN>6xs=-lu^|Ar z5ip+c^_JLPzDzM*Wgko10_r_`9?HL1Z%)Z~WvRscz5V|J-SEl;mdg5Ro zzrgateu^`^Vm`o@ILzqT`JX#CpX|LazTQa2x;ExC9v}|Kd4IGbe*TrrSUy;ztF+}N zgw)MG-S<|*imQ0Bg|7)ah)>ynxw<-XZ()rTXWaJgKZ>qP<%>FY^suzI6ux_7@W&1@ z*!2<^*#-pe&Eam{Di{C3kJT7#HKh<#9;Qb9Z0+p@JtVeKP4H~X8l*q69QM*AJZ}3( z5RMQWtUB_F-26S&NwdkWfumIKwISlWl&Jwb_sb#6U9S>uY$Y)IASCHox;l}& zN;i8LYWvOnlX41l*3@`n0IOL+%I>?7f--L$Cr`Uc$3e_H7~z%xDCq_-UC6Mc0YG_ zhb9+|*I#Uc-XjW2RXzzA`IQ*D{{8H?6DR!tl|L!=+nlt?E8(rJt#v}Le4tZMhb+kQc>wmlQo^<8y>V_oBW+4N& z&xncdI&m58Ym7eMBe^rqQ>OCpyWis{0^GN`0~xF|T;0MtsNJh5Jl;@hIJdemT&cM% zKOQoH4V&M{&rKZU!^GZulU#s$oPYL;kT-r-|4Xk0}B@3--MY$e(ru~%HN7>*m zhXp$xF1e5;P514}z|*m-zXerDs7r=vQ+kHY{adl9>tUP&+%24$_?Z&?vjHl#fz#O= zcPsM$T&CF2aY2|EusRVCzd2v6=aGm5j(xv^rPy!uP4^cb+sgW}_(MXe{ItenZT>GQ z$XN1hk4=U>E!KAJ0YizScz-FQl50WAM&Ga7q|HP}hCMRPH~e~05D zrro~Tu=-i=-WCBRe|=QMWYEvcj(w&dsT}-TdOde_tfFl3LqX_I?3QQP94X3b{sX6^ zf%@&pxQn*__eX5lvLVcBa*P>3fQ>$x~8x zx&ywzPcKM<$Z`bWHH4y8iACiDE$Guh%R}TROA1rDJIJS*LzC9~+HArr^yT+h1pjQ{ zL+RR5v?(p<2O9P<0x=b-`?P0Hq1Q*xOn-V}_{#dB;;WeXCZ(wsQ;G8tz@+%w?|o2} zGP=H+?54GsQ->UJBG>g|sQQLS_~5}zL=wL}Ltk*a5z3WB@<_$1Q#TaBxNreVLWn&4 z%8H_qL?feF%9VEk^jIr?>c`7KfnHDsH9L|UsN(o&ecq%j^2Slg8y?!A6%Q?kR=GhS znrR8v?Q+^8y}D&5O-O&cZ{!~<;t}fr+(^MQN#>lvxAP70XQ?es+P|P@Rqd(l)$13k z0#nEJ01`WM!g5cjhZVj53mezRhznEy>&P$cy@*v08z~nsTcFFU2G-3MXTp=175wE+ z{V{_LErT-nUsuj?>S+4D*n3xx&8QnjELBB#j~$vBm?jF|)XmoYd@VzaCqf8};A`d2 zAc{40w-WaE8uqKG1ItNiTiX0Bl4Y}4*F}Y@n2mVaIX{_9i;Ty}e$R(-#F=#e&!j@< z%s&PP{-7B5LZZAvgB}SG|27YL!BgC);_EnK=ottMT2q|qewdP57+ybnL~f^X*qXP* zzpan`m11&@wvPeRF~G^VEDq=39Pr&D&FuCc*L!9L__JrXjK3tBr-(=SV@EV!8gE3u zxNdfP?D({**t4xE-WYmJwj~3Aii#+oSpYq!VAP=DsDl=LWyww6fqqZTG>06J0Kzw? z`NPwb)z;!s8i0LqfguU(qsN<K&7GQQ)@Z?k?|pL(Ab0w9a`(R5#1xG+tY25``kW6 z^xU?<%y8Je;agKVfY~XxJYLVg&qq}5c7xxChw_#}Oj7_D5$jR&(6BtS%6CO3?@&a& z&&Jl_RyN43G6{%mW4sZtsRtk#!&&MsUtWIco4rh&!axKkXLF@22;A4cGngq1C5unb zAcefFzN%vII9Vx;*>k%1`sm;PaQqB=rn#B95;DVEl)lvrG%a_7LcP*}@Y8rsde65J z=h|`K+b`G<5LvN#SDi|vQqI~Oeww5e9is196*lr*)PO0Y`n=jA?z6x{VF&gFNL!N} zdI3qk&BT6ehD5x+$hj=Bcg90;fnsb&`%5|^!pGZSEb(No=K6rnEhv9u2NeXhQ(TLf zb=TToJ}vbjkOth%Mde_Zb#_vF?&8_~#XP<}(j{M0Ub#$I<9$=nud2O$$Zn;5qkt9~ z{?NU}bs)$&D*BdsI5wgXS+SH75pG(8Wi%(&MP(EQ#g1^y%6l$Ccl>}&t-sgix?>XE zhRZ>z5k*S;Nh~ZF6ImvMtE*?}_@h=LuipqNAAPui1a5f^Ic_glc~sQ4DXuxek3WF% zqkf~wy~F0Eqype4Zzx-#c~S!#D4n~*HnDcv8@PeN)%7oklGB$+Q)fm`ef4qF8+uA; zUD18j1F5@m)^@{-D~RMGNEa<-(dM1XQK8LkYlSy7f>mc~Cmp@(TUy@lK3f{s2si2F z8{6$uPS_uvqM_`b&2q9nUM05GW8$t4&Hh1G)MhI~oM7xE z8^y@-Et`x+M{I>wjZDY);qW?`Mf#MNH<;6c)a+}4O1A2biKbC=>I3>0r)?ea-Zl<- z`%JCXnO71C7L}D(A3LgBf@{6{#`!FHyk>DCkFxq+!>ZBj9GV(Nn4 zij6hnF4;Oajs=Gm)*#t2aNk~HwpEYG634N~NHg&-!ZrQ~2#KXVpfzcHn!M<$Zc)CN z$GelB>(afdqe+?+EaT_cq=Be>G~H#Qu2s={xL=eGbiY$2;1YboOEk(r>Z&t0a9X}z z->hdk`o4;mC@7Q*yDL#E8jVIQ%9U=*@3NsAzZLmN|S#A=)VEBLj%M5 z7l8kmA!C+3gbGhG0Rur_s53DeP&2n15i?nDA$YXzv=MW%O+4bT3CQMG=RXSu7#Sju8@m8Bozw;|S`cVR6sz!(Xo% zrnCBCPX+{Um1QN!DQJHbXf2mBcv!=~ZDjK|Oy7D4pBm#Iv5NKU)B^f)=F|nqdjo&b zsDBszAb6GEebbsD;773!dp>IiQ}THum5l>q-3sB1@V?fj_g8C0OGj@D>rQuF)?sp~4vuVxuUxhWKfRskm4 z_nva?k&s#ckxH4*kDhKgI>NegBQ8te)M2UASv=lrjnDI1H5a|N5sKbi=eJ@SCi%6Z zOZcTAIJ-Z_yH)DvWaZZ9L}7;~zwRI5e~yEViXI|$8yRckoU_o?;;)c>W@$?Oaz|=A zbn?GZoqEEOH(}npaFR1z<@Dc53$S+d#3Q4XEI}zv)KG_1Cr38C`l#*Rw_8uJe}&)p z1KRKfy1LS(@ZCJDNnmXiXk zT*e%ka7Oi|Vo{M}!|P{YcaQ(M1J&#!&8$@d`u&paH|%nS5*Uo6uei9+aRZPWx^4*+ zoMtYpRqrBSBLJh!RuwoM>O~f)(>*qqpFp^o%2nqnuQHU$joiB;`oA6uwAHKP`YRd- zW<>FPq{6R?;)}hxh&Z{5kXfVBLSg8MVu3%3c6Pq)WktHC7O|SJP1A}_XB zZU!2LMGpeYp9Vzf<15x=Rkq^c!*sMJ@kANU%&L=S_(Wp;S19KZg)|9&N{eyYoC~{V-C!<<> z%PR5*oHv*qRLfcGR|d~(SG#g|KY9l6TLz`MumbG0@s~wHy)jQf*^b1_jqEnOTZT2eE-QVi4&@IUHT>u3=iGZ% zC+!Rs2q4K5j=Hsog)0wPGiku^peU7>zL=x?>nu$D5jJimO^pDAy)jl6q^ITPaa)Zb zDnrM*+QtA9)cuuD>DmcL_70=ly?=H4Mr;iK;5DOn00ubuOI0B zwf*qej~271ix90_6~75D@RjY@q6mfrn(_FE9Q=Fahw_GI#O~M>LFA1HX!h9OimL@c zv3&GaFOQN(ltnHtDx#T+RYwzaQaeHr%8k>xpz#W=$Dc6<(Lwz)URlSh1A<7*@Ius6 z=Ho-xq)C4)$%;S*&{rpF#}4<`WM=VbI_u8E z=vtGqkFqMDl01jvq6RNtale+;b7RewkohB;z?*MMzOWAJHAp|LwE2%l`GT>_Y0q>ZnwPAFS*Q{Wq6@ zH{9CVJn#Uz9M}Kv^_MH~MZi@E(*ThM7LB$)xo^?1l`+N6u;Fc4Je+dxlYs1JCTj9R zo24e#%TIzkL?Q^{pXEwNU`;$r@SJ6(`pKO5r(>R` zm0*>m0yunX&A*m?NfCk|E1T4RoG(;s>Ts_VAV*hbK&NgiP<`SrM;OX7m)TFoS(SCJ8t$FHOn7tTKfF4 z^h759Un+!THi<)(`!TiD^#R-D(EZO@B1$O%UmU{-Pa#{NPZ3g4CVKegw?p6x(|h&L zwP!L@@Yg9DDyuiX-5f=+C~Trt=Pdgq-~Vc&$N! z`!cR=yF(clu%g%y<0-So@ck5I!0-2^(Xp_6u27#NTt5yKbZR&T@m{%Sy?MRD^L)eN z*>-XdQwGQ3N9ob0=q~QHfp9xe>#51u=~KQCp7dzB4iLpkQ4=gz02cZdl9y)80~>Wy z+(b!8e}pc-gqZ=t4p)&B66f8bN&T^atjOg%7=cG1-t^}6H>;HLdGLy9tkOQ^myN^D zvPm<2r-e#$Y~tr)Mubv6q1K5|SO&zusp#1@5EYAk8Gkd|A99 z6DrjbWqnl&ZuSz1$XOGhc;IBY%8If`VB2*Y;LY`98H`y^uDT22`&OezzsMA{hmSnu zws}C8mt${@{TXZWyZbXz8fy0dYE`iE0X6LN{}FW_en~Fw`>#Cdr(4qN;Sk`<@-M0>)i3+e-`!nLVFjxq;6a6#*UeMy?MevWv|L=r)uT? z9p{lA{*V1%m4d%Mi&=^w`?ipMV8-XDiuEtBohE*0zZknyhaHnV&pHVns%sk?cX=|< z{2C|RmtO!aPWp=#!!^Vq`m06@FvC*xDb{ti6IV;<;3KAyks3(^-HMy%6%T_%=Pvnd zs>1C@AGv1nAJGJU{&>2i0oqXG9o-uhfe6yraKBRZxN3W0E-y_Kb$Ed=GL*#2F~{I+ zquSu}E$4jLClF%AR&Gi#)Q@A$k16Uo;moqro1p!{-zsf-fttm=D*KtBsdK4;#Z-W-I{y`rK@B2;L=N(ck_K!Zuuqd4ONz3$~k(U0*Y!)%5id}AnPRI zVIR*Tkd(~+4}6r_;brP1-4X{j0Pf5Q4MbX>rch^Yc$TQmG%Zz?XAq#Gh)Lp~I%>H0Hz=bZ z>x{1fRRM^e(ZrUP$>=Lag(BLFx0P5o6^hfI1mtUldbga~OE=e7@}swG4iq!i93fzB}V^MKLn$ab2Yol&437FL#t0a#jb58>H9cY{}0j8}6?N zI-#S7-Bx-6Vku(a{%(z44Vei2Y&^20{QU?hK9p)4Q*3-6Zu-4HX^;O z&Hxl$nw3cAIU8<24CUbnP`>ZeM$={FKG)J9o*(D9$!J2&?>oF!(tht0s+#Eh6bDtp=AYe zcRwQaC_LCi+0?KKdEZve($0`$cy6tr(!{DRx;wweZuI7()u?ojNBbrkZ-m-~NGWN8 z@a}Z*EEo0jmRjF`%;ul`eW*z?M3i7{CX+3irFvPWF8bS9Sj_wfD>H!At9cBPU%YBn z)R~E^FxIv2?}`F<^aO^6S^kYy-oHZLwFOkPI3in!rhg%?e1PoU5!(?iU!iJRGU z;OT&oyj}Qw0R`ewk92W zi2ippyT)c1GP%5N8_L;U{|Yn8V2Mcg!-sCCf$i;1Xuk1&ky%RcqDJv|)Q54|DnGyx zAt&C|{BW~;T#op=Gcg=Rmi!)8maV~A0%lCtn_7Ae(V-2kT77Q*X z9f-SQFEXw+yb=hab!jt8kFBg8C_O{})rQw&tp#w%g)V7sjf6_+w*E8!S89eo)^s~c zfQPv{utIL)+IAx1U)!jUQ@it4ym`c6NvxePj`ye4eT*>c6*R~1B_j`5y-i#t_-;~VW0-R?8;;^wuMG0v&g^CKwWKsr9=wZ@s&{+SK9Y6sl2Oif zk)`(K=`;&=o}>4wP^p)&D!nV>jKlE6!zgYq?^d3`14@?`VeeN}ODjufkTPm)YlNYU zI(ihAR+&uDWw(uWUk|TF&wE*jxq1ylJf0>=m29>H$lt_i^Gw^EoVuYxL!q$WE8IRw z3(@4frT+b{Eeo=o3GdzDYQcmQ10JG{nXU`!d;GC4T8$H1z&Wc17<1~JQ!?z#0iQGl~ zJ$z6;IvK77ZCiMZkp9M{zc~6%Ff9Zg=XWGCPe=%7lc8ihh-6fU!BfCcV}Qq*HdxB&<1}_oxhbB?-x4hJ98K{RkyJC~#KUw!iigk<2|vw;&$uYb&O8|DPa%9Dg_+ ztC%wiUfd(9?GeGfp-sZh>l)?!Gv^u!r@vXK+eo7yD8w})k${E-{@*wdAZcuF;=^Vce1$~H8;+cL@FAnOTTu()Q|T^8O{53WTipl^M;@!z ztyar_+zX6=hLiFsG9x2PS_O#B+_u-D|EWMspB!u0KV=mXpdZ;@-&?m>G;U#?!O3tA z4G+~WqkoD8PPbsR4MWX#ABU~~P+#fquw|7lQAs60aH4uWj3I33!vqL67_=oK%SFw%D)|#hOe>^ys+|LI&kNg3(4WF5Jy}?kZY-1e&<~ zZ2g1Y?y0WHAC0lLS*~gTjkk)_upnsNW`Y`Pctgg+%u!ye&oXir>(Op|Ig}GPyFzds7`5uNy$C1(Vv=jijraOR+?he?+hNAT?OMHtf1$Ef)aq6wid$|oIjvrlmH(z%8% z!xIdHKmN^Z^3mo#M`Hi^)03W(SENol;jWl_D_LzDp4Mi*l|25eaen<4HkjBL`K$i7 zN3HmCqd7OlF)B;`klM#u#h4G1Ro5fwD7V`0)3d(G6NXv2880-_fySmc4kGDR~xb(|bN?xaq z3WL#jdP@&^9 z2+NHPn{E+FC>dV?M!yl7zc?DGb1@)~x{b$-6`2 z!$0n@Vf*ax=nnuD+Rk4VeiGAh7Iprm8w3tBW(`^N*Oz^Mt3%8A7tn08qb{@aRd+g~9F`ShZJnpNSZfd#+mAh*yQlNHfHNYc5@a%^-dD9iJ9{ zRL1Q$+ou`t71iF1nyZ-oj4x4HAkfPLHPxd?b{mof2@*s0+>VOW#`PShFl(>Q<$~0d z-JISW3`7>yim%aC3Koj_fq#E;Up<7`p@<1~O8JyzB?+#P%=5hiAwI=l@pbXZ@$&e4(Dtfhz^u~}qDMK( z1H-hwl(9W8AFkQ)HDE40XaP4zehQH?_`#|y826_C4bUrF#C{Q@)G`UxwWkSsxV{uU zNdzy6u|*A(b8_Qg5ryK7yNLC@W}Ovdi@jdqoleKGDPP?6hJ9_`Nx>&MM~$xv7uDY)+*auP?Am*d*3N0 z{M!HdU-KJJEkLAYo7dE$$80;fB6o(T{cpn@0%S<;)B`E#-sehtKhj@MS@3=dGy@Gj z`fhEqtuWw2V#7weSD*W`O^qvQDPa9dNLN;h)uWb{%>52nM6-cuk{A%BXNsvSV%h!( zV0L;NPDtAyr|{d=@f)8Z%h`G8S!}QE7?u1AdTKiu!vlsm0vvh3f&ZnY8uoY z;dtk(6hr&V7o^j(1HX=g_2%6=mEE7*ySNu9+96UAd&%il#rY3#&{KtpF&C4f(RW32 z(^Hnf%X;8`&(mV09#fvn6;l=UF@^5enmg~zw9^|*^kJz=n85t0$nQ65)sS*TDgM{_ z*^rn@IfhvWRK^~ANNwR$c35{jP1E3KeYZIo_Cu0 zAC)2)m0G>&4#K&wx=@6I`iY7=glAK;FK^nQG=e?1K0LGhB9v8&W0%-Yv7M%>gI>=v zYQEq<4Y*{!`7$`P|xEW=tPBw<0v!*}jGNS@6}_$RPhc_Fo?sngc5p+m`3IFe4~+sIu! zF(;QZ84B>3_5ZJOJa!V`K8-l89_il)UOhCm(>N8*hEB1dw&2X%{RBKiwj89?_-VW1<7Y_SZM=rNdjhxmx%o~6wKA=Pccc*Lg zhz`l%QaUz1;Q@-u{b}1UD}gQ*iQ~d$m5@3=bC>z*z8_-mB)akD7huTbM$S|A-qily z*rG*5fzj=#^PYRPgwdX~t8nR|D4Gf4bM zc~CAWWP3)eJEYm*OykXZrEI4sVqftTUoysref<3=%@tZ6v@v51xk?+j>G#2RSV>Ga z?_B}K&?lx;D0De@Rwc6m7_O9;BprQN4_!60$1;~5{GRUB)al@3}Fi>r6gUS z@X!jXsD~|V^%(u$56{p_VIjI~x9=Iuj5`o?$U=dFP`(4*Jg%K$6xSi{JD2^av z65?^Rf>sYO+^AXq+*saJDBT}Ns9q+2!7h)#=6redi-S`#UMPeI$(1nUlRyUb!KO-FzNR9CoT>ujnM!bC!@r$`W#G!x9j6KUi5C(kY1{DM0Z0K z_-jLTo{w+e)R3aGnoWiLKv4;iMj)%V>l(B=E-ro*i1@bQCP(^Swpr~g0RPlul&|@+ z;~8_tm(IqH%C+c(5?uuXQ5@1GsVp8`PoSUNM~Wd>8f9UCV)Vb4#J3!`;frp61lvere-MyqLkMzmYc{(cC+2 z`)P(563XX(T>NuNLwS}DP$vo7KIUAJff#5(LH6nKb_E7BZzdJ&-fv|Szfc(`2@F1W zRwUP45tsnP$v@lQ{U~7-=AM6evR+j8IRYHscoY6t8pd42@TH8p3vIYmHtpHiBJ z$@Dk7QH|J(c0bGB_?>BzEhXn&->!eU<_z%<$+PjwB~)wV_kHBjUt4|L=|e;Vm;gZ1@OX$_^@&xH+rn%~jduHf z#%s*=Q&Et!h?GCXOFI{=f~{S;(vsps{bsY)F|fme2YkV@%}oH zNB9leZA?;&O{boS4!}nEC?XlLmo91k*UtdW9kE%jy1tSiCLY>3GrpOo?JmEa*juUn zAdf)EWB!z!ZuTYqwB=haPhf(_9WrpQXN$p-GjL}jFUMzFYJV06AE9WiY|XCyuZzxA zB>nPG%wZU*EM(_^yyh?|1?J|aVx7KkEh)#tj?BqC(E5t&oob@R(Vx;$Y(C4JrO5qT zdoLw2db|t9W3KqoSaG;(9^&U6Bww-pSxAp&skV3rRseH(J3JM$9g7*|UfV0_$pHIY zl+EDBWaPIb+n`}GUYvIyF26UAIw$BqN7DY=uY2%FjU6ikv`C}XL*ut!yb)>i28R*_ zTzrh)n?wn(%XQwx$CX+@`$0lN^Fq%D5d_L277UlHYz(mkz*7H-sR{2}0fOG=8& zHdjVK{B$RNAH@=UaWDQt%q9V z$Ql-V*U$fgAI9+^aW|Bc669tT20@ykU^#b{z&E5c?Q!8zdOIKs<2{RcX595}Mq&Ju zFN9+(IajcxqV?Xl&37e}715SSyH$886Mf~JiskGVvnRA5xPhS#RuV9RjG=ua?yABd)FaB2MW=2w=I(48ZdS;KnA+v9|)NWB4R{xI|_1GD8fK5IO4 z<0<0sd9pCZqHEhms_tbr_|n`+0}BaE~Gj(!{@Se2r-Cpkz!Ue;ms*;U^AMhoQ~cwSbrB6$)Dttg|GjNz4OVYo{4}f z*aCWCfna8zpRCS0s$fL$Padf?n(<tcQcBi{BLzlK27FSHA6H?VndqC#NK z)*fztRtG+&`*Sn&30Os8n^oSIwPTQW&<8XrX>IWpw1jZ*%L+4*>~TH9;m_*HvD>pf zB(?1qYTucpKvV_4H5&iJNeC1ovK^E-IbHp!xljWA?*TfivB&Go+=0KZMx$w3W=cTd zM1cCBvRX#K`a{Zl%aMx1e?mf|>}M0k^%NWtg=vV;w)e`IW#nU~!Wz^|*oDdjG!G>} z`$z{GxX^`fJxwpnPKE|#s0sBr}sO{T`8_@~k=Sco* zaE`L`{pl$pj+1;sen1}m2iQOVF>-lrHydBsK`Nsg`DxaN*lvW)O)x6=Z4yAs%h zoKEM>hv$ZW6U9`OrxL8?A!PExKa&=@CFNVPftT!<%qZm|?TNass00HN~$7z z&&^IH1R3X(I(PQ8&lRxu#%YL$r$D=xGD)Xz_2u?V2bzZ7E_SN(u9WMz`-oGW@Lh4p zbo6@%|9^L8zi7VWGE+83A7xD2LK`WTTGs%t?bp;%+Od3ZZ{b3*n-7A}C0NG023(Ul zJC_;VF}&z&PB$B)$(Uh;aN)7x7Df=^+=aN(@Wdtiy6@CQt1zOMO2~5&_f^@e{$1u? zdD~rzF#C5-9A6{8n0&h2GQAvIVg0DE^3FJ;Kit%7>3ySh!*Ua)GexzO$ka+48_fi> z&a9Tx4Afeq$kDt+%&JRAzcIh}@&^PIWBJ?vPktV-p=_<+YDkcc;ChFakK`1e<-k9s zT9qEXT;BbpRjsun&IZn0{;V73&iF+np(M3P*2$5P1llxKlVOtuXSP&yPFPJwcy9XY zk}kYP&#!0uGOu)#pEU%Bc8UV*x2|pYwAjj5jQx1t@z9z@);1GT%T|3u5S!S|TM+&& z7*FE<^QIiF?S1@*m-xQ4yjYo7d(TE~YweZvGjXi7Y5@9&z>$#}E-4J#SEpm~`>3!Aw;k><8s%9()5QPe6{PCo{_Rd-T`!TZK znguRP{MsWS)eLVTVxgMY=-*N|492f)+yqDXF4D>p0EKB2^Q4r?E?~QCnb6x*`K4Vd z$>3bA;l6jvo1CP3IdbUd{7gB6deeX(hH?}l4xVW#vNq1_I&rHa{!iRbTQij6jWWR( zmp&gU)+FD3?tHk?O0XR@XMA5mJ_#4XP&U~V%}>a23f&|^ap|2XrHR6KyBicgn~K95 zW4&I<$jRQI#6HGRjjG<=}m-R`4+2$6L6tpx#84#=F(J_%n-uoI9(W$2%v z={+0h$lZDI`Z*-t^XmAay;y?O6_vX5?y}Ilqrw6q*;)IkV0G6)sjHFHm`Lx+m^G{} z@-6AXY6oG8Abo0MVS3I1x8P7Z$=j^;6AK01jaVU!+*0w}{x|mM8DXAC;qc!R#{efN z1WqR`NapUxIM{e`x9Mf37CZJ^XjSKh#v`FZQ=JkP2E^ez;v(StAy=52Wmdxu+8ZD8 z8hXTgQ$;S*(N16$Lm#oe$j!>y7A5gzP=iICuNa&>{rpi=oM;sJ`KFso$GHYO1hxE5 z+siBwBT->TWcZ15*1Ur#jFB1abkvMtIzD|1%?+4r+_{G zO*UNaaR~zhV|Nbvl!o#9Tl5f} zD7%c)&PCu^{4;6cIBfTS@+aFbiw|$D3sgJTE3zfd&!Vt_+a;=DK9cnIEE$m4x|r!H z;55PX-6(kF2OIrY?dp@V%L%6wRGSkDONX<$SIukFJKk6uy|D%4?B2xCde0ko#1xG~ zeS+nd$JP2_XX-oQa-s?z!;mqyK~;W)~>?_|JWz+w#s90sh-vTN<%VAuo&aMxobE< z4oXxNGMIt<&{>3>)&{>ITI*(B9`KSckOGB2(j)2#NfB~Xa=`Nqz2CR^`p3#$3(9ur ziM^cxNI_+rNipJCu`5xtF7kz& z1|V-LUn)vWN-8HjDy|(lF~64HNKF;9FM+?XOu z+*U}jV+D0Si6)ol`9dW*M$eerEMJEcpXgL6gL zh6|JM+h*)o??n>#SAVC%m^|O=pQdg9iP4 z+?&W6Dx!Ra$g<*4$SnbGIFl;g%h#KUTX~h_^n=JB*(kMi)n%(}^=9CvD>*N_VqZO^ zS82L_XTVu5yeekKST>0q8EG^bf)IxU>|IsHKRFe!eU-lHDC3dASxF@vxA#f6FcRxfg|;59 zAUrb49SCxSl>ymSx)@?$M-vIExR1)2h~9=61Re&Qh!fzO?I_WE?r+ZnNJ-D*k;mth zj(GHHeLxS3rP-H4J#_?xww^jJ;H#so8YyiYx zlm(dXqZtjI|B(V3UFc;oC8;zV9tA)MYgW3Md3CK@Btf&l4u2$8q%q&HDSIVoqn`e zQ2HbH?j?i&Hubag1-dfUz5cy|-nzorr5Hy!P{jlM?kUHKoay^x8-1R=1Vw1*tME9o zhhZJ%>Khi3i1~~Q8~=AW92P|Yt-)1!dVFJ(XA&wTTu}&dJ?v|$IyE$ zp?TIFwjMksX#YHA?LHhl-v#<>ugPGNkqG4}<7SmhkrF+l*D*6)Zmk#i>3H8-jW^fb zafo*HN9By>*1Ir(M$JHx3@~CtH)_MPEyP?7985Kbrqh84(}Ab-;_Ws*ZHXsZf+O12 z!+%{HQQT~;)a<#b>88bYojo-a^-ErMZkZogD=XI=Yoq`m}~b1)Mj2Zdv|n4qL7)ReyDt4CLk{%+GWxMW9qN+{)+x zRGf2mX&BY@31$TN>>fzAjan2)guIRu#+RQkE<(yzN<@%V5DlJg{eRZ7QH{gB{Tf?+ z|Jw!7&Ch~-q0rQR#GB;s$S-`naAoNSg3)YOrF11S2|s}m6C(Rrg!v#h=~I5FGDt=f2FUT(rR zf2-GAbGUIQr|6Oo!E-Dr#mlM5R^XWwi zy`6Kat6{`btJ@SjklV)sJ>HJBjhtQncrVI#q5zn~EwG);w0blf;QkJu0M{?#|0SPx zjsUPV3Ziaa5$ee>H;0YzO@IUf0j%tyY}{$yx&W74Q`FB1;tBl#0JJy9=t=yxyXVf_ zq0rJio#`qgi0;GoJcITQMK^_2afcF*!8lAjx=h=N25;kIO2#@CgtIO9Jk$YBt;}d@=WCKQarkXW=nlTK*J={<6nZ55g8FD}de4Wx zhzj2;2$!+>FIC@Xh<)Tb!2&7!E zec~Ltx7ixFCnw7{5#$M3n`SzS-GO8!Ute-jnt04)l7z#*cNGd@`GG^YLDA%k-$wVx ze`#Iy{MAjs#0F7X1jQn=#r$*)yx=Ga%;vyqNT^tX$;~za)-SS%y;&7K_-xkpOw1kxs5rD*-aK=` z`8a}-zCUcW@ZD?uOLKnOqKW;mTbxvOUT3nO{-7E}KjE{}8cdFX zin~WR_1FQ#va_(yE*H`9J*Ua_{#i>l;YW}|HO)2_;$zD*GK}*EoAA}@6Gd6@w;7M( zT2fO)VvdR$F~T4$=pj(mf2)sHb$Uy zmejR;H{+N4b${>3Vn)18+jC2Y9U6%-eA5U=m|`j%@F`9ns7qGCg>g!<;+WZ#u{mrN zQ#?*7B5(x=1%3ni9=92vfzsB`ViETew-+i!+EBP-S>h4XFX8m0W{JBw+b&2$q5E4o z9et+XH*F(ZNH3B|1|Ct>ihVZfdwdSmLuK^L?s^L1yXJW*OK0c%p$P-S5tJBQG!z-= z7P)1%)!cfeI>jD0%SVdL7hfK|Ha8}n0Nt#B!g3&0?7F<-9_>QcG)whCl&Rl~20NMX z*@2ZC!F`iTlS&-xFoq2>k#F)++b>&QCgD^OIl`2R&Aai+xRSjXRpT+onz-`a=-C*= z+SR!q)G3@G;J02wNp|^6o*Gj6#_un;>aXhe*V%_rR|~0Uw0LKJl=KV|F!~WcqPxdW z5lt@IM?b2g&FNJf-54%B*i5UIf3hlHrQxn72696bjI!Yi%6qd4uy4exyDZW_Xzob# zx1+igK6>uoP?##N}#lIRm4f*nh{)OqKaUCoDaMCl5 zEhF%!ib5zKg549c-Yl4Fo+q$*wT6VUl$=`plSgZxJA8Q`Ih}VsrsqM*O)D9Q!@x!c zgd=lyzkoJduvKGXw%O)M37&T1d!3W21d%qo*2Zk>S`jJ1Zo%J^bnPDxpZO-MB2s3A z`QG1J5jnnv%s9-$%?vU8VCqUYr4L#dCO!;%liuz==#p&u-zJ}5-CL1sTaQ9v!G|Pg zIozK@Mr9&j8&9_v#fru$BQC0+hQHuy@ym{|k=&xFurZ%L!Ts4q!mku;^ty21n**qJ zX(W@M(DsSmOVEq#rCm-wQ!tI;GRf4*tGA39PX8FoR6gZ z`xW_^9tFVt>Vks_tdTytWxAzxxVKtF6MXw-eGc!yd^TnqxV?W+tK_(M;0doevzYOQ zGCTLbr@s3lc0buqmB0jhmESSj%6d`tuH!S2FyPqbE2qcT*w;blCt&QOWwI;5cQJVGw2<-l7SHZE-_x!O4u*lx6H%8psrd?(0mtXp?0%VSo0ql~uZE2?8?MfGjQ*NXwDFPGk)iTAVkcki4S7R=|` zb&BQ~I`pEE;&WuF8^K-izzW7Kf@m^Sll;s-Eo{cD9)9&>10#K@tMXO31+gSHURvMoMqB{McaV6^n|URpD)OIh!e1hF{KT9$Ub^4*c*6&*Ys z;?1*DAua6RX-megJ6kXw{SwPXuk4gxEh78~gv!_JzALu$3S%eL{sSJcjSLMbL|qRM zsgtY+GaUP7Pu4Dx+4q5qI8&QY$GI|rpR^ypFK)FO?zV5-G*&QnQ%>@9{Dc$@-MY=F zOB%*hqJX>(i9XgH{q8>KD7s0M!nTV$eB}&jl#uTQIO;bNO(v% z%k@UoqPZ7-w;8277_P}s{IF_BRc3c^HAbG-EPjT@Vj4`Myy9(*@9(|ZQ0p_wE=>su zPmdb85&SE>!W+(?+70f?F)WRA9<}s@2*_Zeqm*+ms;6>LXHt5)20W@#3fW-{59^EC zMR*9U-u5H1D$o0kullOvLUOY&#MGdG+M7jUVdBigsOWkjUpMlLh8^t_`-W4*M5L#I zF-Pt7`unr>zsSF}m+P}ld5{lu!d509^szV4# zo%@L8xBfLnF%n~hiU4$lqdUe~0CR&f9qD>n)(GjkA`wG4^!wvb0*QMW{*0O|!~kXI zh&Dx^uS4zvz?Fy5j`fiabN5%1CjzM{Ud2uR8tw)FgO(>Z9_e#Zh1~nwpTigT>%{99 zQv@D+d>XlnIXfRC*A9=gFY=(d@wB zet}m``BYJa@Yy`Ip01@IKJ&Jo|gnmPe00#1`wf(ng)DY26P|^TVi-s_*-$nfpb=<53c672?=Q}@M`_tv>G>Nb1ZXOGcJ6|fo zu+uI-*)n?z6SYbX<&y-X*eg@Kl`VkGfa15%1_*gbX`(u`lphU^9u|B-8MPBiEN)!3 zbl82bHul6-v6y9+K#pnSbZw#hL~2J$)Cn)XM0 z0V@csGRnFr8F%d&uw15=YR2ie%|#8a-9V4e6JGzN!Q3BpOG2OzvCSu6uXdex=M2Tr zixH9Mv4&jXy@Juy;<{%`XF2DsL~qOuih15gqWUarZlUf-MzU++xB9SkGsS9dy5h|k z)=f+mqLfurt5$I;=4b$W8mUwtKuG#NT!}2-*^xq@VaGm`GZ6Q*2RYrh=(NdP&DjMY zemBjhCE`y5joYa7v_=Fc0Efa2GHQc2p_FDDAhcxB` zX5IXu89EWD-g(T$!S@akS)FUNl>r;saLv*T9aHU!YQ`7aF#653wx`~1-1j+m>f3(Q zwAZP9hy5^BeHhH61w#fiG~QG;1o}%2-g4mVzK!$qS+P8xQ$UhX22i;eaHVZyDTlhg z$1F_Pfj$*|-?!)fd#)-}rPYn~CH!J`lqMXa65cEC(243<{}KYi)@b?=2YlOm zq{F92>Nx+Xd&JGWU!5;6*d_f(F#y##|EmQCz?CEf+B&p!=2Y47`z)+}yF_Al;tl&v zv&2JJUdJzung$xy(B_Lrf3cXDp4j0MjEVH zYUVAPj0n}#!iWSOdipNE(nZUZrWE&~(LMJSqd*=(fBZM8Y3a?>v8a)mBfPUhyraAm z!#~BX4E@>sXEI{^7W~(6v);No>tN3vvo*BHl~Hl<-b%aVe!L=36KpLVg1)iG;uPb4gN@M%o4tD!>{GNv5HBQbNNpO%~>C9h_&+#@} z1W);w&8XU9x3MnIc6rYMt4z4_Z9w~5d zH0`X#*FK>XT6D=5gHWxBpCbZEG0I`#bsZ9ORjQ3d{(X_m%Hu(XIA7ylrHMsQO}31j zpdTFDkeB}-P45|(bpO8pXI4}u)W=fGK~pPJG7S|4G%Fj9y1Y`$fqSI52P&XuM&>F< zTDZzpx%Wm*#l2J9d*Mb=0TF+6egA)NyuIZOA3QkUuh(%N$McZOUlsLMeyO}Qd7t$7 zzj-XME7;MXrr^u&k^AI0)iE9OKm{EL5ecddO_FIQbAwQf>5#@#P_2LR%u-I21EF9) zHmxJp)3GqrW*!p(0fBOpZ*2>~?bKU~pK8j$_LqB8b@Z@wQza;A{ zQ4rhG3Ln}xP|^Bq_(>q&Ab>j-V|2jg>Tl~ssZ zJd1Az>=}@2J$N?L2uNE(9`bgPU-PGJuM4Jb7dm_+{wcMEFaN3tIhK;oGm>iScC{i9 zF8f0YhpZ$AV5ZL&=9`5uR~W5=NVPse~=cwu{MQ3gny4(!!f5>!it&jQ)G1zk#FS=HnQDQCkh87Ex%-H{7 zh&INyI0n~uy+(~=fRB`;b7d2EdLEuy1%dcKy6h_^)!u!SRK>s8%P`jHzw2`m4uWoF zhZp;zyNjD@T#E7&eVWA$6L{nBDn7l_^8n9myY)nkir629_&+H=R_ewd#_q0(rywek z`AQMy%}#TCIzDq+$T7?M%uaFm@CW8?!O|&-xSj7~AZw9-fgVe+@ygHZO&l#4Qzu77 zrHz|WMBFqwRhsXY6JBC4R)8w+>_?vK(}HT#b}~@~U*#Q-n`0CmH=xmI@MDD(w1q9c=mblUsIKW(}g!Y!- z_m!AI;m$=UzIh?RLT}XPxrq1)4J}__+|S(w1Uoq}Zg*o_rpic{Oe{dV;tk!YTFH;< zDIgBmxDdshg?+^YWYg-mE;dE*c-vvA$p)Ju5S7)(fp#e;0_ag1v7Jab@3$6>r`BWw zX}(9|ESQMB?w9|u4T;ZhTqsm~N$X|`Kbo=-);V+Y<1O`omtRgTWF4L=zEnSd6suwY zK?WMHMtR+7>3PYV_Lx23#`cUh9X3884>Q--pARNSiFt3jH)?Aqo-%osIGS3>yFp{{ zu2>S`azAfh5F@y2}msnfTR zbI`PJ`Wy)r^lD2EC7&H?x70;1x;wYKk`01puKj6xYT`2-B?F2IOrTJz=I@S3#2hfd z2Qzv}5;a7ryxW3jf=lR^J-FQF=w_@MWIH_r&npj zLGPXrlOk!dO79^E8S;NbA{A5q#Tn@m*1f^MWm*n1fg5P8ks_O^o_A_9=lJ&5#-O+| zn}bZh?c5SyM5UnFsLq)BZa9`A)F1Iy3&-j3lk%H;;{n`C6 zV#h@co4FJaIU^#65%`{i(GO_6TASWbk*Ufd*Hzw@D?dC|UwG0NYSB`v7UDPO1!vreD9Fu2~7A%llgd5b+De;Rj;hkS-sN> zZ>RAe8G6XgMq$u^UMRBP0^b2wXV|+IPxYawZc^e<3-f zizy~%Dbgy&8%W{A$e<97Q;nZiF|!+bKARg^_O7&oGl___5Fu1$pI{i@1Q&jWb|Y9e zphmiKHtl$szp7}|?7Y@){>3zr#H!xgh_NNl7?hO_=iiC~OC1xOymmrGi{>!87xc?d z1O-wraeFa3MKDtqiTG_@qB9i{JE1GPpVYY*_|F39!ouLjRNqpril}%2EPj4qbnF!T zG&iH&{g}*KS@#C;BJdSph|%I3@^*Bams2cOFqc;Nw5bk=F#2ljxshh(Z3jK{lDaY( zQtg4kR#`?afTewClS0aH&*oWVC7^fSw>U~hX)ahNF~Q%6W9G`%Iv}hx9S+ca#uGKd zX9}~F8d_=fI{v!&Q`NnH%hRH?P>4w(F>P@j7)(=g-<-=-ekJTTym(*B*zV3n-`m7l z-aCz7v^|@z5;bWhEkPZkbK*3XcMc{#XqN0KI~=R5$=WirAZUrqYQ^Wxgz!non(Qy>I}tVUbNYBI z;>z7i4m9#?hQdQ;>H8UeohZ`8{@6sd)?48}%9@>dFGcysZ5(1ELV3Omr$sgDpuV=x zehaward7@?<*|!oA_Y;d8P3qDUSC?l)YKJJi}py*Z%psfIfLUHAD!+Edl#KH4QOqs z3OYgb(+qFf6A>5qw=<+gMqpZS_K(8G$IEEh_U}n1A^9JZ(nkxoelKj3m(l)TI$pYk zi&GHS`c^$6^hA$!&F?S5p6hL!dCp4~5R_v1{u&`C`{g~4=C=^ue=GZN=J3vFy|j4^ zqY*;#*&fgI?_pgbyWM6&i?G+@;I0j-nb&)oUJ+?^~ASswRfv0BEeY>9?9RPxcoj2Vt=WmoY|0#s4QC$4(@F~VI zKuu}z&iKEAxbpn>MY7-t==JMT#A(aeaG!6WSsrid^u&7wcDGAs%+t{R5&qYbLn|w4 zw4e~>swL6FsL@skSUbF?^=J0=+^T{nyxT7;zd?+RHq%OiVA*^6U7A-Jb^iV2xE;{$%1=wAV_OY4&3XqXkUxMwM`pRVri}9F+i* z&9v~g(oJuz;FiyoW4QO8yuT;ca?h?$M3QosGkQu?1f*+CcFP%ip}{f0UCT^VCS)e* zvgiYD>d4B>>}q!63OB$Tqc83$UAN4gx?-fLOYWpnFyn*fZc=AgTD>>HBIIiBRX-&pyT1)GAmw7H$#aq~OKkexleGqW< zMDjZG5q?P{u<;ROe+jx8$ylHHbkOXxTd7oK$cL zPt&^CWpdj}d*})0z-C?B&++Nn?{P5oiNYnnMz^z<#%1r{yLvI%Ls;O^Ve&<59sj^D z?Uu){n%1_P61_dWM#w-}v&17;?T(%J79=3ELE0=L z5P1AQtG`$sFEaIBWdC|)FVtt2m>jC+)2Azn>mWe1P4MaZ<(pBGVsa+bIpd}r!;19L zubv$?)fySOC50I_1JdW&v^hQ%G1FcnCj?m%+EtKl+tGu4hni>H+c&*aT%Y4tp`cCx zvy6~*OWN_`F-&D=PklzzfqPc%!#gyxZn*@0vq=(|bV{^*bLcqanC|YidG-Y06MUjI zL`i2TD+}@&W0zBLPbqCZEwV`#^t8)`FXKjT(SF}J{N*1|Nd;b*6V3}hMxlt`BM8H6 zFZn68V5SZ|*kb~EOG;6IahfTqX*d1 zaZKEd<^K*84xf8Uxm4cM&6Icu!98+Rq|JR8OuJQ)&`baRG!`;m__(W(Kpdi|I!rYRq13;KZ%}cKS>yuE_y8BGtqmzDv`_D@W`ZNd2gxmCsA;dut_^qHV)4BDhiAV>N zPo>SF)X^3vGU{~EhjAvQ(IPUli4NI2h-hVN~>l?s8V@0--Mjc*FTdS^g|F(2y<51Qa?_LnGgZDQboA10)wZqMV8AKB6Kqhc zeruI6h#mob5o$Lt$};k6{HNwCZeJ=sZoGGsba>A6HQ!_yl6qP}Jb1egi2RxxCqOL} z*_~yk9OwZF{}bELJvNi)9a$tx5p89^&+4$+l9>6No7TOWZRrg-5WP=32L*6Klcb*s ziY$kYk?(m}X{Q+hZStfT7v6iL09rSbVE@Q?d?PW%Hw5C^ZV>Ag>B996B_j4SpCmI8 zN0PDbQUq7lW^gXH4DbHy3IV}5{7i@4T-Up7n8CRAT=SRSv`uKVhi=0_brS@_{s zvS01TdBmYc5Q=yb-XD&BpxLQ*QhxPema(UQAjo+rI#wbBeSC$Mgpl9dP&Itb+hi0W zL(IXX^}%O`)0CwAs8wZUgCrG-N=eO+9&u)NQY`^x_zV8xA!j3KVi>6s=eY&O_s#_} z+6r&ff}?^nOW~^@bhXEZ2qgES~%m$S)2U5Zz3yuz_(1=N1CvK>GbdOHVg< zm%9?HcJzF|c||P5!L1B%M&43Vq*kKXX3m!QRRyaZhW6AzK^D_eAM4EtcuDT1y?;8h zs#I9;aMNFy78QEfija={BL3TLwI-As<3IUiu=)A#G<|-D6#LFxN$NP!A<5OT zXN#K1uPMh8;|-KGZ4k+G6Hg4=E=QmYE)7k`Ahwz?>Epe-Zs>v-pe!+SjGLqm%?Qt# zi{?^3BoiDk-n(dqr5G6sey&%x(PAu_j`HmWrxW0IE>!m%Z;YZ(B*;d4P%(oa=AN@} zXTvf*l*@nfDLO9k3mKq~d)>!qq|@8U0K2NA1slnpl~zC`<`66O2Iz-$BS8Oxj>j2b zLeA{;nR>2tj*MfvXVb1NY~%Y};6In$kf)TFOz(MYCs%;~#k1UzRQ+MjK7(C%eXH(O z7pQIBWwQR@m>+Y@{zstPP?7+LH2F=JUVKU=7L)-&H1H^N0h;+3Hph|P8P$uHgO(E= zGVZfCUTGe&08GiaLD=a?v6Va>kcci2$dB-)-52QN*(hmB5@#PyG^cJ7X1O`b zr#8G@GNu(L760X-xjNjmIr295Ht_1d823Av=~$tSdVSg=?Ndfm(3wEnbB>KO-(pFa z`uqn#<6E^ShJ<2mCb)4!fL!yO{hUBOFUwyT0biswbO8|vfoq%|#pvoW214J(i?oyYp-kPmChBM0Nh0 zfl<97#7RCn@sEzO94?0Q(`~c&Om=~mkDUsw&imtQ+AHx6-v3SJ);|)bOPg>o$PI)QT$tMD{|Jx*#Y#)i zO`D)UWYVOfT+r5_$a(Y2z6KA_ zyDY*VRyatR=*K9cQ{JEs{{S*_9RDbRrNc)I+-f#Q-lc2Zfs!WqNT!C*+?yNIr!xFl z8BP_B`2WT@_woEsEjts2`wBUy6n9LtHZM3AwOb6qCDdbpY0TcYh!O0e2#)tr0!Q@w z#<@FN03Z4RH$F)$<#b{;N8P%{Snr$|@6bTATe41!a;_Aw72~2lVOOW)2Wv9-QJo2P zIgzWx2bR`cGTf$+<@i35LtbcXn&XOT{fe1RC3Pw7f^t0$*gku4+Z+o~=kEIWcQ^oS zu;9>=Q-47kDcU&6b^+=c{V>$vL9^t5@VA7$j7*NjR6`ECfQ8m`qjI500H zPP8=lNI#Wh<@ROCb~^!m2ctH#^tpUbmuXpiuHp@xW4q8m738BzrCUr#P&K>6alO{C zFVnj>dd4#yP$`b0;N;yHB_-a_v2QBLj zAi(0)C|Q}+cY631r{%`hp352!ht%Zsc*!Sy-S^+j7n2r=vCt*4e`H!VwB%9JkJhA) zRAq`crnP8Q#&}7)v04Hw+&yl4tkcjZ!x!H}XIcTVc&ctij}8yqAIReC+jW4yPq09= z--)p%Xwiz4`W61@xW?kW=)o=yF~<{v#am`LiU%aV1j5 z`SDj7**Iuun63MhO1(vTeVY(;s=mudy70y5-IjEfeflBvJwIT3zRJS%(WP?FPc<8I z(tam%>WRjzCz$|?i1PYZ8GUOWD<3Om4vIW(C3G$JF1->Phh(v4b7yvMCV@AOZZDrs z%Pr?Y2X>inNv*1nV;(;gkwx~&7=dPPR6tX;>>|wZoh6TVhd*1tw7vjoZnE7>#?syy z;kA3rwNUuF^_J|i+1@Ka%D#?uE4ReRuy2+JXZc!vp?N_aMo}?-V~^O&VnhrXY&U=) zSqL&j+osI2(K$-eNVb}VXtSjmgG@%epHl61!=fC#Oo3~&R z<6w-S&t23&&?Mu0Y9>~equ z+kG;E%m`0Bn+Te(z#EVvc))%|MHe%sMELMt;Fs8f-T71$r5 zB9ibtei%FYl3KeXUEMY1(^EgzMmlIh##9k-eNK~o?lr7AUo=die7Xho73Utb*)Z_n z4d0W(8o`^D(<@w1LP1S>N=PBZ`pSiuJUNVyqrK+Xl}-2_(+(hS+%x$kD$Q-_8DZ!a zY4maRY#V^qM`&pwbOhJ&c=75u|6jcl^oIDtWzOHq?CihMxRG>bVHcuOtR(OH9CGe2 zncsKBvgFLv?RVcMme*T{0XQS2PELFri6!aL-^A1r)eU_xvww``<#r9(jAK0y z{>uPnb6+k=gRS>WhQx9XlcHxJk$*FZW2|XzUfyl2daCkg0Fhf97GU4+5Ak+yo}8YZ z9{9VRaNImtt=TVKHO)Y5?A09Xm6AHtl>Kt&oD%|pEGM^<1ez$``L^ZnEds9)FnqB- zj2HMAW2nbM9W47*hg|_aGpH^3xO(VAmOfSjNFn36{_auh+-_0YREzs7sklaGx1s;JJLr)Dn+wsch7bUPs9g7 zVloZRAGOF}CGZu`zh-;pJ;+-7Q|)>KP)$$1!3&!}BZ|)lrJHmB7*BG-j>@Zv@#UoX z1CtIM{HLW0*`g^oM3NzicTN6Hh|zM|))&(;D{|0cYi0l(xdH4X_e#W4jJ7=6cFDx| zqflhuyKaA2jOWDrmU6HvB2rol;5?ydyPOxXGsg;WD4*{s79&)44|WUoYLNGb@2TwP zI6)hoWA2K?JTUz8us97f>NFhUolwvnMozzIoJgXE(2EkPH~P;Ir&5`9IVGV4EyN3% zDrRhlb8GLY!dJ}U@pFt5oBA-4d6_9l2n|W}sFAEBv}L@Q_>jx7PWTv*fazU(Podp{xSujM?2q zs+QN*U2fCBDJOx^VM0kxSUpv!C`}0g!>pLt#@ovnPvn(Ia@^PTKARU=)FLh#`XVK~ zPSs=($K9id1#&n|C>HiQb3+%O9;GDM_d+b&C%oltS46eSD|gODF@i3t+%l~t1h*fO zkVaaoY_~6eF_E3HzNH03`u4KSITV1sP;YU0e=fZ|>FscdV#1is%3B=}kw(+;IYwWS zI}cTJ?PY9EVBI!zC`XWSDzR}w_=ukHDbz>qqA7QjR1#|rF6MA=^Pnw7#gWWdLlp8ALtK^lqM4- zzj%pB$Q(2`O#W2|TrvZ=93a%Vpp#gRvu%C)@4u4`ExggMo_zFwd|xHH#08UlmVT~I zzU%NJg+G9$ei?{UvgH(hj>RrNCS0*zY@=k=g0a>cPMqlaj0&8 zCCts4Y_ox`{pfXkmJ5AuGODbb_*1LJKl-PZx4-spmeUZ$N<;Z9b6eU8rC~2{MY-Bs zhSK^V&}wn!mhb_$%YAZZ`x;=uU)_#ni;E6?3ngwFiyga5R&-!-i*))#YGfbQIQ0x4 zE=KgL9alrH`oFC|H7~}}aXY?s)^6YDb`t_7mdy1t`HCfX$Fgo7+k>VJ{Ufm@Zt<3M zp}R}S;?X_?VG*ij?Nc+$?QQs+8-4z%LtdX;GSU>DPfL68f z?ZeplK=o^k7%(tG1x_-V9_}7te8$5dKsTgCii^sKyS~DbM!C^Qs|Nlv&%qI^@{@~) z*k=crO-isGhi<8>$Ua|olXK49M_sM4CbW}N4ZdpL{nfCw(+=pdyFVNob@eIHI>4I9 zo`DXEq!R@g5jX;rD%UUarF5(0xdz+(xaG_Q>YMmX54qaDm)>=@`p|_tRrGu^(Rtl2 zgzi4p6Ro4PV>;X*d8C&GK%;!E+NzH=xAcwRE_v#F`w8*@4)}aT0tPdrCi)6n6Eh)7 zu$CWv*ig?HnS!Q6(kxk&{?J~rLar_}GsD3sO_^lj;-k~UtP9^8-bNn7OgBb3`9dcp zjD6-TKnT)`9;BstE2N5bCd0l}$Eaf37=1sO8?um(5hWY zPZKctx|S@jOjd%n>oyL5g~~KX_2>FdHDdeVXQW}cH+#o&pkLu!$S}|gm^Jq}9Tthy z*DvS?)oe))D^)~xDae*v+Q6z88klat_1TsrxM)Hql9tQhvgK*@F9sfia<%#q-z5#P zS)n~GQ#@0%X^jq;9IDb$6#AP%c|jC#bO)$T&~g;_2yb4av^3iV zDDaQJJ@S(IG+byTkjR?8fp}2)1S;lBd*QQd+1bcFyf3iwHsLY|xC}mPdn^h)Fq9?wH5}|A2WHE#C7gSykC5C^dzhq>Y|w;9G>7F^=X~& z;v)MoNrfaXUcc?}k=L#-qzO?e+^r_DH#=F76xJ$DPB~?Jl(EvsovJ%bnlc<%>|=@&Bq6!U<{v@Mv#RF;^a7%CpUvqT z&oweb^bf6c@}6}#&KQb(2ugyxUxXxtuXHDgt1R*)E;{#23n@20f4NW>;hw$eUbTGt z8-pNmMPb8|;$JF{zB+>0cD8>$WnZ&nkNSKM={0!YZ|P@7XUSZfh@h%g3A({hm>E*T z2th{?|L3&)^%1f8m3yhn0efoI&}#Fv-5Up4isktTew%#$lL9uNsK1^Ur~hF3C1%hOwLnZf|E*i+uPq z|F0W_WHDnSBL_a1VDN~l^S+VfraQj93EM7M`5Ah&;vI3b9+af=_EXmcOB-6Hwv>HW z(L3a|;6Albwh=&3cDR?1Hmm=39NmBUINmA2XL*=%+u_OJN}vAsL&?%5R?8pwR0a2`4<7(4}b|`ytoL?uJO7L z#nWHCCLQv>P(Je+vf%`4z|hHWZ^Ws3%_DaNcv11uq?75bKh%(Yu@ElL={~mlan0lL ziRPhpkFt)58fuhSg=v%iCw60qx-U>}(Wyl-zR3v{-%VJm7fJabqC;=Y_1j-oP@au> zkYsOSftA%;tl8dWd2d=CC5h;?tHDgaSIu?=v#*7PITzp>TjQH~&S4!+KtJ?|Jz2>V zTPohnJC~cEoF9o?8ZfWQZ~3MsFLHx?-9oS;P@XCv6#d}Bzd0|FIe=%{7!N0-f57DX z0MEg@H8WQx+GnD}Oce1O038ghe~aWTLSeHnF=R|Vhok{!?_3EkDj?;a&~ z!1rJDx)GRhVJ15p9|F%2OmI2WC5^1n`S&Y!6T@d~8n6O`4Q(18^Wz)w&DPsdkVfXU z@p{^0=bA6E;F*!AvAA5uH{}FM|ECrCGuoru@$@gG@M^lYw;kqNNp#2ZqKQWi)1qW1 zM8;%wZ7R}mM%PDT{ROtaG5S-YYhv2)N{5YW|3ozWU6P9K!H1d;P-D)<7HW$q6cS=0$KlMp@7Wa-d*>w#8SE8mgNL^OdHM;=_ns zMI>{SZ9n{2pG^s-3WoPHWsPIhhM3>iLffb<8U0-rEb+5RNL`&W?{!TW)-5=A;wdUE zMAIYxv(k_`MYa-CA2Qc>1;S4cSkhCD8ZasDquUDI+fEuc_jz4|IU>)aSf^`A#~ypvTkim|?KSS@@qbA4j}Hkqx|MH#+bX(#F*il9K8SF|hNmSN z@{qXcyxIef-0gLa<dp&Zy7lIepZ%2F3jJmCN{2q-&Mld*@qK~T1#5XBjlLpX zP!#)U5X7(OOH}p2J~z9*iyCZ@bfn7MgQaUX+S;TXm3WM&+9$Q zs>c;!t{}j%P9;ny{ijcICE=|ucA?v+Hh9+vJT0_)`+f-_=JCW+o%43z0O>Kv@t-1& zN4I|iInd_1y?K&z6-Us9XK z0u^HHe7pJNPtbR3*=8Yb(D@=+LZ;~CM)JG0i;di$lBx7DhVNx`pF~hi?4_CYf1>M; zeIBITV=R4(5L4WJ<7t=DNd&YeSNnBPupOS0_l9xW8k46#Kyw`gJEHsEh3vFDi3BYD z1K;R>^ClO6y|6TXWF;D~#=n}Fb?5bZ4$s6WpM+PJ%2s=JE@vrsoOEw`Tz6to!C9AA z;V$<<$qqm=qmV@gw$t~kfMjuBJi+|qxAK8F}koJJ&8_TpWVheD3vW73gVQzJQ&50B?~ay zg|mZi486OjQl9dWPb!v({oCKPcQU$^%>;;A%jR@DovKTLP;B;k&%fMGb!1FChj1ny zR^_Vqfc#v9+d{99!R|9Zc!d|;hyS%{5>9ES3xoSlph9KCD6N#Z77Z0u__0=-Dp_!$ zonzsLiJT1V4%HHXtXQs>G`nXZ#tk8f<+vT%7DIXDk{pJo=8zS_-Mp>bYPK@=$1m(9 z%u@VH6bRuPC5iRX{{kOBR~n17mh#O!#krBfiSD>`b@ewcReJil3E^##nwt+cM{?MK zZ_yuU$2Yq;uRAQ0>^83MUhc$w-+$wO4PN6{O>|oGvQz1QDT^RwF}#K0N^7krAF~e+ol56t%~ACQw=>vl_H%#0aa&83lY_reI4wi$y^JQ&aG6U# z@C^dU<;y0r$~*_nM>E^MMy$s(@Rk`)L;h|ZH%Ai3;YOPo)BPsiF0iyh+!Kn2-4N`W z7qIJwcafX>Uyi_eCz4kPr)tr(LZflIMnwQQ}B~PEX^5NF_!UuF6UfcVAp<4 z=krOif8=teiB=J)3izE1+gDXuD$R*}Y7I%(jpOJjr}bnWup#4pz8^}O z{EUt8!9h7pj}-~u@b;q81$%dSJC7Kh;bQN^Ly{0%-}(3Rar2$*MEwrDr_x8|fNZw}xH~=}^DQ`y95L$x{L(wg`2ZwELa*gS82* zw;)a$?es}Q$`lsZllc87ew45T_Xh%mHc-C39{5s(&0LDt^y06vC$W+`LSMaOY)-k| zL{mKefR`Y}XK*(Y=AYLZwTkAl;_#39LV%3Gh%v6_9*P;#p>V&sQ0Sya8*0_?qYy9s zggriD;U?#C%@h2b@s=+qONG*cbih&aaiO~|8&sE#DT95L6Aa00Jote(IRF%*jPl&A zP(H=uZU94yeb;WQHwPtom}8Cxnz`CCPI85mA$kLZ+X*u}6wvmr%Duo=%~cTGtfRzU zr0Rf;c6w6#bYUXXRGosJxt<}Rs3iYzg%R^QW&k}hfLKM<2!V(J{)Akb7qUP#&zy9C@oonv} zJ_4NIp?)S4BoYv^`$HL5j94k$xRHBGP!|$#uRsCaD+%g7Secq9VIM60&u?q*(lg!z z&cwmqs@YN{X}Pkb#Xjnf#tS;P=@nJJ%|$~^Jy@##WH)s_FY+xn=JL5 z%0<|ynai78j$Yd15(RXR=uO#6yF;$1^BelY?yo)qNJX{jr5^j|g0zkjPfN_#9vK!A z|10GCDAT7po`F&Y&9Thdj4@^%7{%OpmkjvFN2?ir2;)2OCX6S_ul7j1W1hmtoHB`h z3GSK|8mGrfU*szBr&BX9IuDAl?=?)yr8F42F0jr|Y04w+kuSFd6g-~l4AXBQC{5-y zT5!I=rE}UNd1q|o@|PQB{F-m(Vpx*vW*vuxUpg5XV*3QE0?-!i*3s&xhp#9*ANARPg&0Kb+x;m+9LoUaMu&Y6P7r+)lRe3os8aes~QT;PlN4=sz%`*gHF zq~bKAM` z3@Ic)>13XPt-9#-SlQP2ra`OG{Abk3DpBl&dF~<8$B_VVE~WRP-t%$H8V$RaZQKvHixdo`YA8s&pDAnw*>j& zwGYx0@4~J0hrc4pm4qZkJ2escT+jW0s^vk^_NoWUvJpdDsIg@GSRsP<9fabpq;v9^ z5&7=&tJfLxI`lek>)V8gHSu0f(NnZ`Wdre`H@QmwOG`b#o$|=2wh5Jwe?I~DdqjNt zbvb{8tVU5Xo*Oz!6|AgjDVL->EeT*s%n0M`*^~Ro zc1(T(-&r~AQJZu_p-r5{{sVO1^sx~W#f_}TdP$~Pf54r-`K(-HJ=8|fPp|3dG?KhH zM@O6rS9~`ylP2)K5|wi$X=Q07oxavpB)e?7*-kG)_C+n2r7`uA3++9O_hV=`%kB7b zS*N25^Ol}GBz}YrJe~16u=5>GprzZt4}X`$38^o0OgOCV+h1~Xd3eA&q08MWMULo8 zXILAZZ?HTWWz%0gFX_aZoR&(&X7surqA9IzM&|&&&1t||DKfK_dbG2-R@%@C;m*5I zWY6wuU7}HeIqA@j9#Ld!BMON7UUJ;}e0MR?eD!uSk~#0dSgP6Xz`UNZW%dYP)j>KV z{nC@*|v@ds?Sr#^x`r|MN6VT{0w*u%U8n1|slDbycSf1&30 zJm*ztD91n5{x<6eu($5t7j(*IsZSs{M)QuB9C!Nf+1}gfneEddx%TiZk|Q9s3j6he zi8#>1+;T^F^ql#o2dFk{xk}&b|{k_rd56=EXA=+t^GI z$cE^%-IEbWN##QUR3=+zyji!s85;iyG6Vh{bAQ*TrQ^&_FGoIJiO*bj+5`!0I@o@9 z%Atp2CeF?icH|keuITU=6c%gP__=xxJ63zFqU3$k_w2{(e<7pjGvmKgYce;ij)43m z`k-a#SB4j#1MN!24>-GA4T0N(V#rl`YD%OdN4b7M!%@cHeqATxQJ~eNmqAJgKVOan z1zIC^JiqQrcDSg-bEol#&%#%T@qAe3j|kQev|GzDFD_5$`Iom6OZ>kYY3ICDd+338pCOh8 z?{}eu4*3w*&DLqYOYCmF#lE#gH`Dv$zZ1ir5Z^(0i{K*1*xmEeoT0eO^+-M+jDw~( z;|LJKRKB_+npnX#*8%V4Pued4w?s<1?C_M~1t=e+E@U(9DKP>e4|oRuEwoeE(_ovKjzs`ya`GGF7Zhf);~ z5jf(JdQe1@miICXTxZ$NM6%4AjNWS#qhuo(93oPr0jvYD_{FV=CeRy;|IIwd)N zH%XIWZneVi;4wPbv36t=6Zm4{Ym)*qEr`0FsL9GuDWBKWZ@G#@6O;wPGsd*0%{8&f zudf4#--mS!e=Cpn&9?uU*k4}qdJXtB(Bq@JVK)h0-~DsHSF+5eaX6868}%DtW5${8 zCUY-5hdre$!=fX->>!a9FlEHi8^R)iU6MbB%OD3v4yY_ zJoLYt5k6Nkf$c5rkEv+h!{htcez;+LW|@oSS~Zu}O=HRm&Z2zWz4sYK(FeUB2+Tc7Vd0^rbGcglTUkVUFy;9lt@LLL@A6=8%f9ng1Sb#hmDn9RzdZpB0 zS$u8x?s*^8IV;_RUdG9Y8dA=l2>zY>N~7~dPOr%3T9-J#V-S3_)$Ijdr%60K(OWv4 zrit*-7ps$;sqim82qB#T_jEaEtia!QEX~AaMv>Cn>`U$8$tTEXw==4Pi>rUr$1WUB zTmx;(bO&@*Ju?D-#8;?#Ji}&j{W#Qx5Z};_6>BMFdu%w~Cxhf>DWPL!qr4Zz`O&um zkju^)SUxlH0-vs7l#rxLnk~2jb{vkUF4D9wz^6ho94RtY1|tfnqw}H8g}7L+YRYDF zid3$z`h~pbNEDJE>5-Z#oWOR_k9r53l*nRor+7kS#KOPq)@~UF+HH<4&JBbkBoN)BIPSYQ0 z_-d?B;L66))V({UY}d)Nsi(UBZ5AF1)zF!6fB02kHtJ_&OWlKzaOB8PBVS~gzW5~Z z+?Av;b9auSsw`T(fCy&Zv$^A}dMi1ND8sZJLMB6-OK$`^d*7n}6E1eKb3kR1M+0(N zGUPxXDDZYwq)ZEXd#pCPDkv3w_E3J<5ue4<=Rk)g1IT@2szGK7-xfqk=-HT6oq-Bl<0+)yizGW^gW>rPy{Ew-4t9dy0-gX=fID<*j@1~tN%_2 z)Fi3&8NLz+9<3E35`njVu19bdBS@tumYxMeFnQ?0z#1lIp)&#Pw#5r()XpDNJuEH{ zw$N~{4b=8KH;KbV_C5T`d4Npu>rwbB!kz+iraVn`z&|JYA=@5TRBE_=kQHL1?i=-^zYTH@ zJPvh{e{hUA|AEHTdC3eEBM3FP!BRpgeb=90{YO}cC1Lv?O{|AJBHec3ZXZ@BgM*az z)8axABNJhFNwp`E-CfGUFtLa}mhnYByzBG^83cGi-)dc)1W&Xtw;PKNKJ%Mx_rTt5 zG%#P8+M>%QEIqufeVyPcl0s+BF17*kO-FCz&l{puGl`bQ>N8gj8N;D^GCpX7o+m9M?3xZexL%ni zSH0O%Xp?B(Degp@O`>|Q>Y*ejOkhLsS7n))Zkxd^uimtgKRptuVldYUV&?IsTBG{A zvdC^ukq{xD4j7J!lZLei6sZArA+WJSXNekQy!A5wqQ6^2?YU9k zVWqe#hd3#_U9RIc_BzPB&gjHgRYtw}kW_kR(E@N^)G#qfbkX_$(RAKXN%!yn&rGdM zsoT=bfz_R64m1t-%F4Dw?Y@N6uWh_m<4u;>HPx3W)f_ z`}6(%%Q$)D##}h)`7F%d?6JMO#4EslH?HIz@@<&esCT8&qzsoSI!yg*k zpGY(h9!b*aEHN9+OE=3!_;=~_By9>TYKgOK$DuH%rH8G67n{h1BAI~q2WMdgm4P+w zlOvu{?`So-<*jCD&E%V*9g4VfkV4i)>kv&(+7V&aFP%v|;}_EqXtR&0z5XkP=49kM zQvkY@(K^R!GssJ{(9A2*i(#2yIll{#Qx?&<@cpMkYk%6CgoYB+dmARPK3=9y#+$^q zOK0W8{n*7kOp>1KLeWGgyMm%~gD^x_u+v^PwH6>{>|9$~8GosErw)`Ansn~^91A||7jOa#jh~wQm>7l##d>F*l--`H7ovtMK@UV=n zWm?22XxY>XIAVppzMn$0-+r_oS(6)BblK43Pq*|_#AuHR-Ht|UdY53SR?Y)Xu!g>M zicYcK4x6eyDGu?r3)1Y3xfa1n(R_+1p9V`O+u^{;wfaNiV_hA(^Pe!Xe@t^kp>kDo8R;Tyc*maaoKF`457^)}*8W z%da_yZu&=NsR6?HOMH@RTA&_*)?+;$iq9%a^aMl4&><&UNdGih9}9l}{^NavM8J0= zFT^0J=-l_~vxeM&se2j@DpugEX2{-?TTZtJ&fLZKnp9`uc>tdbB0%x&ar~~a;yd(+ zbQ8s}$S2kM7b%^Ofi6VVe>X=@ErG1%WAeUCHK1?tAr9@#;7;ZsaDT9%R?tAKxOiYg zX?d5Ijq9SkLz^Mn#C>mf~QZ-LDcg$f|5Ce(c z8w!s)fzg*7=@-M%W^8}IntJ)YS3pD`XEJl-?du1PnaPp_$vvM>@bH|;EjBDiJ@fTidGNTjx-FI;T~z7sf(wa@=CY!8}7T&d*kN8qMi>W(dCG$c1x02 zvDdUUmxFBCvdC}q894Vu{{QCYq(*j8q%KAwoD+6H#j@}vp!YCsb!8{3;Y6Zyj{t(* zEKy6%XQZx#PE0r&X{TByH&7ku`wYOob7tB{c+04L~p5@+54 z+~yc0?|Q>luhp#?G=-LuLXW=fw!K(<4Ha)#mjoKLmHi^rF_(kqu2F1~1S7W!4`afU zv=4sN@0@HpCU*6E%wmLBmsM~0SsW?il=Y%*VO-U_s?UmjwGV`??R~?G5Q}kD-|Dvs z7=6{1f0VK01=+c)s4)e+i4{N>q;sLvc`_>?EjywU@0WyFmRTc^iZT7|fq#$3m%4d> z(6Lb*l~!`i8%l_baz!l;*Lwpaq=g{AX5R($H`O>#*03ZyYpwT-bM~*+)ITm!d?z&3 zmg{dXo>@>eJxF?yU#O+EsJ6K0;%hQZdlyFdbegqVK}U& z4J=j+=Nhpg?7MAg`Mr?*>N2m6J+ZKLg?H?|4D^G6S~#T!`1e6SfAm$}>0?N%h3?$t z76`8G6EJ}nnLDTP8mkFN=>z_Bn`iX81@u(%{KWLKn-B}vnv4B()C*;Nis!vwroo>m=VlLfr<5HnurwU0WAXlaU+x_7=KN8nXItj@;=D!BN;%05xdX zTanGEpaj_1?}HAv={6f!wSR$;%jD|lxw(5W$Pv{p1J%$Z3t&?vqi)4ztV1x(;rlMB zbvbWF6z3CYGOC;3Gh_{Pj0f*LZqIX1`!X0(9}6!R4ix(+3wM_& zm~_SR6T93reDk12CaKo2NvpxSjHq5kr7BlW6Hi!l1nyL%;N=KgnP?ajZPGV;&q`Q5?xTOf5xObNw#)q}8hg&%MpGYL z2HCpuQ|%gt) z4YA#oQoOqo6u_mB9_(JL4nIzlUwZ<+uT|&`2~N{qp+s>44>k!G>K9LI{yiz^^=e2G zAa?8o&{$M%f}>oFbvi^Cm?2?2Ug0Y0Ue(-RGGrkrfBxgNE8XlALn zH}&khNc&gb(z(u-_n4G9_*qHz{HgG28TbF7R_eh_O;1NjeU}O&*R2#hV@N3 z(S#69D>dFn!D!cRhuV3+{ zso=;_}_Su_J%S!n4l%S=UyJB)h(3-Jsm@D%tZx>E)n+y$VYVEaCGg8GdQouqEL zQznhq=Eh#2z)??@^`x2c1#5%vn;|yJL4K#TShN{)T>&c*w4D3*su3g&jS6(L97~Kk z1*o4VkKP?9l=~YLF|7Z^_zs45Lm1G_@B54A7+R5*vwn0(v-q1KymF3yC=rKo^tF96 zRugfaT5gMjVI0Sz83D)j$9GP58bk(+-LR=RMiYOq(1?hgI6Y@Tr#ZzztOssS?c0BB ztK)ZnGZt&v_%fQ)cIL2Ly&}`aC$YbaFe5}`TMAH9!5f|uhQK*vrU;u*$6TPz6mslV z;cj9Hv3VfK@?|m6BMfbkn)+bcBQ)n({_L^e1C{D!3^w2%pmEkIRRKjh_x^y%ekcE= zs9KP>@WJ*&h7Obqk1kuznJzh9fbxkAM?%$n?*10iMr`*?qtt$U2YmwP*>;=rPy-lW z4)u<^{1;U3a!>=h=1D0*w?n^K=uC0n$Ng>xV`qF^kzEns*72`5q!fWw>;ciD^opq% z(X_WNK1LHNW~3-6tRdR+d|c=T;+(NgkB#5WdaqV<&JU)v?Ij6qS4RA(Rg|1R-Qfq> zT&7JRgO$P=iyleb;mORICI8%)%e(6drgvi57_g)%7x@}v^q2vG1wZy zWa^qOuIdJN_9%zGEE;m*nS@Zg-AotnEiN*>>d0=Ug-=Bc0vCF1DRMzORNhs;mm^MP z!1dv}Z~cQjet_a+ZCp2JNmI{OWG_Ev;9FD`k6USA4>?}nbDs@AHY0NC8^jv`%kL#Y zX%Hp(C@C>J3jIeqh=2c0h`CrbfA9DNXv2^}-$?(=-D_3L?o=3_QfDX%y`SWnNIB7X!| z%d+upNPE0o0cbfLt6KeP1J6(nO;hBbs*7~qL3J9VvZH>c^LD0Gwp0q0n$_n(@F2=y zYIkYY(&ONcm8E028GIi2a~3D=Nt>q#VFRLVG+`4A@n6tDJ13}p-VA=*d+~zE@0g(5 z74OZp+DS6geiZjS^SUkL(EMqh@Gf<~Umm2ja{+R5iTyxV2|*`~7yRERNoE=Lf9%06 zZ9%Y3tG?75$?k+?N2h!QS=P{7pfWL6h=f`R$AZm6-H?#o<`%PdL@KfnT)1k!0Nq|& zm`fv<@qnOz@jqufu8zkitCO8UqsfVaxd?>P)SM+dj#L!NHFUHVHz4|^zoFa{`ktIY zoGW*P)w#WvgtW_IYX|nfz*ROc#l(2{+;LT3$=j}<|10qKofKxxILY5Rm=ceBFOH?D z*P3qVIRIN0SDGW{fjm0mJV5bmexS-I;57rG)}_jiVCtaVm~Zq+x-!Z^XQ0~iHnYAK z+zzyEo>u+YBjmYO`!6TZD#B%?A$6A^BE`;|E4-tpZ zVfzx>d+Q-`p5NEv70HjE;eLMfbje@0%LZdjKY5&ZZr7H-AdK7zi{f6Ol|lB(*7c?@ z{(}(!ufYDbUshsT>%!E$If!hHlQLeoRs~`MG7=)B_Py(xMk(*!>&UGJamx z`$S@93~)%!zq|di*ee0HACA!xXtDAvCrj0ulGFN{L>a4+=zUXGFCEN=z$?q4usg*U zo%OqNlliy-jvE@hFUC@fpwz{LR=-G}v5d-Jq@xU&>I*#hMqToHw9+T2BAXAhNPA~w)3I#klvqS7Oay2FLhwsC|qbm&qC4ts8Of~P_q^-|H^Z@C{NogM9tZyS4>-(!{z$(6kI>{i7oNfxKGptffs^R5C$P#@J^08c z1T3w8jNP8b@pPt$RAveL98E2@-#B)SQ!J;I+DwcI`#TaQdUE8m4EB2QM`&-6(?JU) zHZ-_Y1s^yc5!h9Fk7p*U_E%ZR;8t9-_y#AXYlUUnzs&gV8WGLJ(31ODKYvxHR6m)b zo-3lF6U>Dgjhri0(-SYJBQ?L)nLirY|BH+6F{=&nRc+iSrpNh5tpfYL!LQR^w|$_d zej1tL+WF&uTf9frMiCLdxnUeM_nADZmE6ZD{MH}*8fgsu_s@ZmPIjq&x{ao1n>j-! zUoqY|luJAGbx;cKC{|%l9{C4Ame$E>OsQ|dQFjj?>}|dW0h{47>X3usdqF!UqnfwJ zD}%+^W;(Kh`{O5n3~MTUWn@yzEJ8Dqr#X;6K!B0Vc?mCTNgJC&j=MyV3aFC&n2N5DoJt zzoTbPr8pM_7tQfn(;%Hjus;Vsw0kr~CYuH7S9%iz%bXW}^So#u)=~?-K3@J% z715>Fr~VoDkC<^s43RfAD6`tg+-v(%8&5TGbQZHD#-M$kn!ko-iZ^V@sJ5Yz@BO0@ znjvJh>bwa*I$KL@R6m5Q9ohjpS!?rGYoA@&TDUf+O0vDUan~*(7j%!8H!}g8>5fq{Zd(thgr7PYcWo`toZXOJ&687nY1H}3r4G=`QBCtr~>C%wrqcl7SYlVyq2+uTaNIvy0UzAA6A%04K zV5^!DCLjr~CVARqz{k+~{U&T+-e%!`#QfuQ-yNCF3sU&o9ayFTy7W@K?1Zd-if_0?jSbyH6O5JN{9)#5<@h z0;%u3!B7wUWVWHj=&Df*++8{gqom#Me-}bD+f32P**q(^pD+?}2OyF+|KwS)RiY_{ zdTebi8@oZDVW)-0Z2^8+9|A=?yuWrWzUF&v7a0QXp|uI26DG{Z zs(BtDf3+_|pcO>Hc*qYZ&HP{mI?1Sj?^VcQVZI`X?$uK6Q=OQJQC)iPG_!XdS+Ts; z%C4ETR21bV8Up!Ip@&w?KT;OTzelc?vhGe6a}G>6v)b+mFWneDzriYAY8W}pDH-!= z+T55ie5$Rd-Pm}8r$u!B`klke3Jtu-c=idzSTylp2f3)m&1CktyljA`WrG^Nph0Uh;c~# z(d@UVz<){A%8oU7kqf1TUd(tE^*FSMm6qnNdUmy2h~J)SE=dzr^*eqOnhvMu^-)I~ znl7@yO$n2KXTx6Umm|#h?cXvS>Wg&L9(Z|q{fy%6dfBh)u<_X#oSkq2705D-WKk?bd>$kre<8F5&5_guXHx|21e7%q2-&SF2|-v_vd8rH zngUp;!+rCZ!ly)s_vRu5Hw`=3AB)Yg3=OMu9qp?&3YFeblK^Y`3Tu^tZ5j5=nfQ;! z+Azl{Uy8M1MXvkx1b~iJ7}f+w6gjq=9myg|}PdTlU1Tv2Z3sA%9I0@4~QqbxO# zMK5=aAdahS;SGX^h17OW?%CnY{F&(iv?A;?*nlxw4O+|)M1uOTg*lqQhVRb3o5YaQ zqT|ft^TR3~{$83O11mADw*~0T%X=e(eqvKpA*jL5wJ9w|OTr)YGQ98gd<$1eImSNt zlRmpsovl<@hvgV3Rb-0rOxBRvu7$pL)^y!EYF~-Vs*u?fH#I^2$#cM1_q$M+OG}Ed zL%^RrJx_biQ7=a|y2nOjLF=!)DKeo%L??gd3HfE%#aj=ET;ht#GhNZOSZ|Vc+rJ{m zj^q~PuYH%o?Y(o8asWOC>2SJMmnV+aL)66=u>M;-HkJ=m7ClLeW@0}I_=X-@8pWK~ zd5{=5^Q9SokKc&-MwJvtq45%n8S~2~*jtwh4)8 zTA2KON?^Xwucw8{(FeAzcmv`~)Ul1-%LX0LrPV`aPhU#G&>-uW=52)93&O&+B~=pnK&)#!MSocWeLD%Pc7Ih= z9@xS^IWqHFV20F|C@*l_m4mNk^CI4c5#Olempk(BOO~VowH$!DJB9xk6-a)}jhHV5 zz|Vm8NJOI;i@VXNq0yMlurXRom^^~mElGE1q3Bj4Tq#3R9C$N@phroUDT8@>)RW;- zNKHac+`DM=OnjseUyF=b3^luZPCp?0OAa*Egh(RVSLzFq`Aq_{up@&DUsetcyawdjm=l2J=} zjZ^P9G@a7A3Bnh!ZW`AGr8L`UK?>?_L%8rs$3zFVX#B z1h!C*FVXfjtHjJU15iiH*ft`iw4VJId~R9n#tj^BKi_C4H!Wf5F{_$Fiz6SIP5E)U zj`9Uz3m~{$&BXDUjtcJcNMw+Yn zw9(QNhT@Cv{uUC0QseOxf78R^xW{vmV(t~oyJKti zj#PCI%=n#4UwO{WW*PL8)72*;x|#xlL@tlj>)VM_ovibPFiBwb$w+a#{oxOsW)2Da zTiTmj6^uuBcI)&VH-Nz%U-cv3;gshM#TgfP?lN2X#QvMn^cM12@x~oygK5NWrY06I4BZCBz|n{|8#NxgEnE*43Aa-3?sy)WwIN zw*Sr+?%qzU4dNbcdy3#k6Cv&hnucKTho!a5BJTucm=*iN;kxUVe1 z%G7md8}cKh!KhUzz3e5~3a0L~LEXpuXIpq6sdFlA&MW`xH?8WOO(=C^-TbNc^r@D6OeO`h{fIA$qg-shz2R znEWOvh>ZxoFq<4_?qpv8c3@@!rZgXjC9ewOVX>pK`bwX_#hvhd!c9I|_)eX3I8nLE zUcq&Eb)HX!J}`nnnEHc4&rM4Qm)SAgVgv#bthY7v>Q1C<^@xq#^#vVqywc1aqU+9| zW&L$)WwJ4sA2s8Xc9Ie%K4LABohas0TBs7@wl8S_X2>cXjAlaWZ(~DD#slChoaK#U z*TulYWm?{2_2+R#_$2&-hUVm|R%a2j(||sNZy#Doj?u!CB2nyi+!aXnmP{RnQlqm> zh?EKi8Q(cVjDZjTT$~HB@Inrl2eVlcwBwej7TueFQ@lT-t4O_nI6!{-JCvnfvP9Y- z|M*4Oo}`#tZ#hs#L+`!e_uB2A*LX738JA9s@C}VD3+uOPIiFLn3=hL&tKg$5eZx{E z>s6<*KTnJO+9VG+_V_-S7HvF#GX8dbSR2oNf#Rd-{G#8`;}Z4vr?q?1sLiGFhC=X{ z0jM3%I2*<_T>dgqO)7mv3Au30&aVK#_cwYY_;J6dOL-&>_-|ps09nGZZyJ%Ql4c4= z*lD))w{^RaR&L?E?(c=E{1G1Md?(`eUBKtYmihzrJ*rvaGR0+(@Z`BqSL&>_<1S^a zmTmnRs#{?L>eVxS3x+s#o2>+&;mXCh8k5?w)Do9%LlX0O>5*LpM8?v2ql4^xUS>`V zUBMBL<-gtq-s=y%CN<^zwww(IYYVz4F&^#9OUTTuvYxkx{tgW@;fM79NYFdAN$*T8 z55nx_?sOy;^6GSCYozxk*XR&)-RiJetsrPJ;fqkaiv7aV^`?*a3X??lZ(ffBZx<4M z=ufK938NxzBMj&!5vC2hF7w3B68GaaQ^XrMs1B_XsM&kzp+r)kUJ#WSvO^w_ zgGva9!P0NP_1A?fY#Tz<#RelmIc@BqLaeE@z>;U%_tZdqqEQg@95>8HndkiD*mIdw zK}a1@ws00;XPLup!6ezSF}oNLLI|ODc@I6mh)H4}Iz2Z2UF|AlcA4cqKU+a-=+}-@ zwyGwTTC4tB>8pry2B_>WbSbRyX?n5Si>4&o`}ZgMVQ@TZuM)Laz-}u7jPdN?(9apd|yJ&aat;y*h`hUuSgTLJ> zoqi4TQS5MQZa=5QxZs9d^jNVcZB7a~D^;;N1Cn)rGgB%&Q(#luFE%w_{_~5KptO;9 zT51Iy=0hxH3veo<0K5&_eCvjyf*=|(>|IghKxPjZZB!DP_DT+OkDb8RsY^)f2T#JT z?jJ&$6>9SE3}!Zjk-a|fu4L4zgk$i?HTkP=uXjaC8Ksjv0i3yV+gTq9Z=mv`l98ut z)*S6uo^C_xXD{a!7I9LIFl!yo@P7V%0g#-k6`^?Om0%0IIk;4;V_-_Qn2f)a%y)P9 zmA&twzfMdV(bN2ItNKY#-_BPCdlt7kMMON?3~bi`r*bMV1)iP%M}~8f z>3hC=@$Hdzp8eCF2kL9Dr$blaK;)slC+??L;Qx-17#ufMj^9gIe>(ezQBCp>==`qoPqn6K07=3yJ&ofz@#JU;O_1H%>yO&^k=G%*uAG^KQa z$brwzH%9Ci;d+ErMK9o|oBUM6Ca9q*p0^^ousCM?fq|(f^o(``xN^hXE@$ z)!=Z318Cg+1Zj-(DVQWvT9vlr_@hH7c)6h&v~|ZX#siPh{z>jUe~f)zRUJjTO2`?- z_QU;uOT8@$>@s4!hX^5vzGsWBFU*1J+wzw4T&Qb<&F`G68C}S-8`#vHIU5iD^=j&E zG0icwn+Nh{rQ4GDYH&){Ou+Pa)RwUKqN{IH!3fvnw)ga^zyRSldF4R%pq88VS|Tm5 z%&gJ&$^OGyg!9P6tuddNif>w5jhdbNfQizLECjk6>A#C;<@x(gTqjk#q$*kM+>I}5R@>;8(<_`9)#^ZQ6w=yYWWU2I=ipk} zSX;#JVKc@qv*x~}`gDWh!K?u9q)Z67`O0M-JY`fMFA|2pqs=^qUvFspL0V*N@Ql-L z3W0-EM@pOi4i#+|`T+DjY2^H7M@pXXCN+yW9MeR!+-_X7p5N|IHw|G86%o4YyV`i> zbW&LAh@aklWz1JD38hT&{+5KPxfuV+BtQs*V*EoqY_&lCRpDM)WuEiUh%#%z{?nn2Lp5C5TZur|hg$Uw-(x3;ZP0!bYXP}M~%=!vIk zGaww$GX3I}dmHDqfwM9o!Hz5A>L0yd8G3-U(asQg;Frz-K4(k~be||^v)%}?a$T3) zYefWFAm{rpI74f9D(S%q0ODO0tpw)^L&PMI7+r)=C!NIm`?nMdKV8pVHP84eVh~?>(I1&R)j`FF8htjZ=oFnZ zoHnD<#2uOU_el50QSpB4L@nzCu6JuY4s!+Q>lk)m-hP)Uaz8_v}hu-tR+s?F@Fzaj_E#QdrGBhr>VQQRyh;&_V`x zQ@zF53;y}j;fI6hr^mrvYPkVBc1*V{d4!1S4F1&ju7`I7$>Jb zS3aHfd~5uBgq^z|*Z-_?8Fv0ZaQ^M~>m$$!g?m0pE%U?8e-7<8#+r3ciKpM7_0`38 zk_2#)v9m{^+2w}ty@NwZS4EJ6X}c5c(A5I_cy@B$OjuNqUJl(WH}1O$5}BqNPy4R2 z8O}Yh78p)*+Um5d64ZB(9e;Ik)%ZD7AZVm!s+<7(FaRevH=$2d^T}bR!JamIV8dS#10q)y>K^jq`JTzaaK|^E?Lt&hsYz?CHG3k03f9G@7Ky9zzd}ix?cj0=A3He zRXv*=w9r^dX)~>riWIbw{V^g@Yf(3<>cER_J_){|6}z1r$h##tFsxGiw%-8OW_t`> zsJ$_#?V*vHQ4p9>N?y<|Av!ifF~gtT8IJjspWQ-1C54uNS0vvrCzxD$jL(W|P*78DXI&!y{#a(e;IoYz7c;!zA@UZuVyf7#c# zLte-)6EMI}41m%v#j;v5uk*P6eHcI;Ck?kZn4y`E!8{#ISa|aj-2Io+p#>;Uoh?EE zJaqL563)ybo71P+aR<0By7vEE#*JkHSeir&VO9N>7 z8*+xR8}IbuO+*f08BcdKy*)j~-E*gQuUWnWLT}Ui<>J{8c(h-Nm&#wYq9OL))_i75 z7DAtOpO>l|j&aM1X0Bu1U>>>HfR0X@%+V?w*%#?C`##NH`1_i_0)Mjb4}Nwm2`QckMFF^ueRr1nH)b?<$u9BkXvV= zK%c8ef8k!bEl7Muw(Kt=Ujir($6e$(6Ja}x+kNfJ)OpM5Yazf6t75eg|zOVQe{VnTy)-$w_`0bMS@4OOuX z`AQIg&2<6brkNMTAr55X--||_SKJHtPNiJNCCa4Z((JdYnR&i820~L!waz9)Y?=GJ z{;EG@{Ka)7F&!IhI5)WH*57#>q_Ymu$*q%C!pp=Ue$9UK>G~WELFPJ(Pg&%H-Wpg9 zyy2Qj9@_Sd5y6MyUIC+CFCK4m3*{4I9P?$6+5guE3Q|XXo9Ce2Ppl0riEQvCokYnS zd*n?P0yZ14KhpFuKf<#l!ydIs>Yh5wswtKbI^s{=;g5wZqpMy z+Sc=>X5&q6qJK<2V3#-a`-x+w!Jlpbl-qu@mUYY^RLB(KBF_*e`knzVt)^XxK4(4m zjYkf%I8+#fPQshjt|YTf4w45c>Dmi`G}BF^BFadovs;_>0reNpkIe7(TRbD~MYy@? z$SoC(5KWoF67;5eo($8>3*0)Eij3r^YgxzXVB8xZV`cdTzn$Bh`?yOMrow$djjr~K zKkR%oRCiOVbDEXzp8`7XlT4hYPJ(KCF#OO3DQ zmAGh(b^kCRs`+OZc_(1W(qr=>kBI=ky_oMdP>;GIsvlygyGE2oqtq-|1Kg6n?qqm0 zc7HMC1ub+QR~N0d^Pc_hr+R)_Psmx{z1d+ULg`(b!ILAMO-sAiAoAAi!i8w6iO5=_ z&|G`sB)h_T2cKY#`!~i!-r7a4dPoL~n~#hejXII`GG5U9xtD6RvB7=32*gX-D|U-Q z9vszs`wf~o-x|n4r*>t9lZJ@5BOuxcmQmUrzgmfEGr65sya|JUIfSjyKIr%v4m5cd zn@-pFmqD>&*>{gixpPE)gI$2HKi?3~1fQnujTt!=xc`s;$RP}(iX~}jyn|y8Gkih} zp%?{Mf%^S*_%tiGapbytHp7>($7WkX;0tvNa`4fqv4A5jH)STlVK6(5dA1|7GoSAQ zhTjcipViR6mLd^cTv0Xm{7vr*=tk_0Wc|Go9wULf>YemU4Tq>946}mkAZ%VVl7}@N z5qKI&6O61|Zz|*w^hbPaTucC6`kS=#-1#MJ$YYMXUkcGA<&Krz9&j6MX_?6TZQMjZ zO1pGSsdq%Oamcujt_}2!t240@GYOg3dc4L?aey(uir7zZOP7;y>7OvnmFXKgJf9*} zLhN>qAtB?YcgD8q6YPuDx{RVYvP>)x_SABOTU78-C5ykod4I63bweTI_Gun{(SHVW zwMpRscM*Hs8$$75K6HNt*4QC=Rp*)P$HFMmV4JY@l+kW1EMnm1dp;FJ`NazI-ivod z?!PuzE4r9Bl|jMm8GJbuRo)b^`;zjj2&++RwvpK{$?BEh@mDAB-gd|d|$`Mrq5C9%Z;JvCIhBCyTJIDzIutalKO?H@_ylHM;y=7SU)IWhYT`OpZj zXQ*bUeF^RTY@8uBqCQAB(oik^gGIe7{*?!7pc}9+rxrY}Fj%jC_9ztf73+6|@L#aF z`55Dtf9G<0uaxMg4B*xL>nl3j;nd#;OVb}lA(F`J5)qE#%sjvS?CemH;8?V|Lo~# zmCxZ-5+Q7Yf9IR&+zZrbM0%S0pex(`tN=;4V=9O_*Y;$j*DuzovLBz%Tia-a7ARF) zFGRQ@yCe^h&TMyIk>z5XTT#K#dWt%eFxKcQGZr0W#Oe=zg$cI~sxa4~SK1s9MV``$0Sj}OJzN#< zG=~kY+WZ-*Qo(7;pB)xir|YX#3(4p!iVcsa!)de!bxT-q5!_Sfo9UK3cxYVIQd`tg zNe-}l>WdIs2!bOK-p9#A!`UZCtSZL$Zqdl@!@srB_4s<9c@l5=H`D70ehXEF#*|Sr zDD^#IF|=YVneP7Hy#9~d>CO1WH$o=l06>dQkU8B&23fAL6&SIihnzKx9ASiGyz|$3 zAX)^%NvaEvUH|<*V5+nGNk(emQYd!+U9-xn{m=}TW~nA2ZZ1oCpO$N)jO$~8S;B@= z^|K3&WdZN1ra(bBYp%ePB6%x3$evNMLjd+x|Y+aw6uH8JxMU?S}bB#UO zejsvocMS;JuF_1qNvGlK+sFkp>RTDh+E%v2LW+0jwuxAhj|J~h;kY7n?xQvdf?2gK7Q0Fm`Ec((`*va zNj+htIORTs2JmMaTmW3X(+sj{=J12$-5dN3>djlri?Bv!;-%z1$1KGn9R+l)qc$ z1xh-AO=@#^W#3y`RMJ*9WzyNS(mKf8{e#8bN(uPZ@Gbm!xp?d{<6yJ~5A80gDc;*1 z*6#p@dz?6X@vQWjqsMNY5W5?u5UF_DU8T(HA0@62y%Hh{r$ss5B(>OH|1}wX=Ga;N zcm)8r(y@PKxuxF*$g$oo2Tf@$mBK^e2QRj@chfD+tj%E4SJt;IS5=Cml9O$*Aemyq z`V$sotck6l1bASFh3z`Ol z$u7;}V`Vqi?^|Yz*wmLPz6C+IE%)Du^PDd;XV4u>8wflA@3p?#Ugq1xT(oQ*cr!k# zJJClpa3~Kp|Mco_9%4XPcXJY_#D8Hjdhe6qa*m+?3ernA4_KSi>@~v{)An*-(=iO# z=7YY&-y^WED*ixZ~ z8E6AR&z&4Kb4*KK-A{Mf53LJ{*8dH!oE zi+b87IoBr28#?*5NOKv5qh6tP3vF@F>0(af&VK=cE6y)bLoxKIpAMa>#jab^fjv(4 zz`JiiOwul76Lqjx*(}5#cA+N9aP;_)tLA(p*=A~4LHuWbdJvz^Nrz*eHfwke_0zMY zuk{&9pv;l*6ZRQZuN1KWdD}KTHb$hGAjLcxmGhcOKzCad%F@1Ajrt4w^g<^h|9*s` zZ#o6xlMAR3YXno14ZT1o?ODDeO(z@58K~E3>}@CY)~%7$KM0Um*O1mRYqc+AXL->V zoWypw^hKLhUQ=oQ_Q)(u1SDyF})J9SZ`QXUbQ=NGbG@%mrM5H}m?1J0x zGxhZ6n*Y3LpT$=u3qqUA`YUi>(z*6s$1JutMy<9DOZC8X_7We;ray<_gQMAyr#B?6 za{^X0Zhowf7xnooC-A z3B~;CI&jsgno*o4l!vT`mK*wi?p)bbOq+kD6)GbR3BFLYGJ^R;7J#dh`YA~}@1-I} zt_0%NY&>L@(>qY>8me3Q8`;*rg67)HC>4b3&U=yZWq)I_Kc=<1&57Wi&ZqiB8Dmp$ zsDu`^_w>H{M0P(dotYh3TJvVi1<6HTU@Q5_*e-NsEJWp_v7}gIaw5gcXwya`dnB|+ z)tap%&XF?F`7IwadNC_%=3#m}Et;?uk?yL)^z$ZPfd)6ZMESXx6YJiCw{3)+&5yr_ zOe#hD*W0d4;~%p0z~xz8c3ppfLtfuerUoSfPN>;s?OfEb`2|hMxQ))5c3|iZU_o)a zjnkh1ik|+PC|bKyWYj8>n6PBDrDzp;r6wb?&t>7n2auI3(ieVG2rzz>c|Ve;rE)0G zy_UQ_NE%Rd&F{OBHf6vC%-e5w-Fuj@Y3RD7U(OUaz_o`1;Hq^io$&lQbCG5S7FwwlJ{l3`|Kd+&q z$8y*@UH2gmof;^V{tkm15CGPXWv2vfF!i;|B(7TDjVb%3+fH@WFVs=|K^ux!cm=vF zI^!Pgtf1=HLg)-59&K){Ayt?7z4ahEWDlObyF(UQK0OfktvI)UIw$a{8>vq24RrOs z_OUMksSDfb223IPOmM!j$E+I+fs7WhPa^Vn3n?KZnOmsyO|U@v=P)h=<|I61e7vGR zy}NUKnzgeYH_lh)DPE!F%Ugup&Id__OFow8bvG7=wOO3sed;Z6MHje^) zxOK_bF>Pul^86-e<5JVN;5?&}k;YYrFFXrRLw|5+>C8ptQBM+IZb>+lKEMoc*ZyQ3 zj(FfNEWZZ0+}z8ok4(*1A9&*)#u$p~Re?>5Y_Q=xv{u>3(x%5jL>1o#e7_V1%>O}^`DKlsfn|&z zpX+5uN)C{FLr1WoA3NG&R5rx~m5{WfZ%h10J>25L=&56v0sgNiaPl*5a+QRNW7_fe z8!YU|Pdrh-V*N|7tvmr=TV=hM z4~x?1Y>qqgAzv^m>K=atE#(cl`t)HXj3|hm})KV_78qXOktarV|!! zCU0_OJ1E0#k!mRw53GMC79d)5x@~78xAc>=KRcPHXALf0^94K#V3tYGH=I%1<=uTA z{sB>Ca1z{4-g_C|EK0|*=Rae|YJ45=TK$=p+q3DU!||=7jMV&VRJ3R%|QK zz8NQov65Nty4xp~W)l6^(u-g-?O7gLyFH4Rp85C%TMhFuE(~mO$R&FY5uB$}1CcNC z<$WajAxt|Vte45?d5vJ?`_FLqA1vXlo&-tl8u~3zO`D2OKO?3>E*cy4ty$FqI9AH5 z(j1@0Hr(z%l587Unf<E z_?~eu;mliK=i1NRsT#`LSap#pVxFMK zA`p7CS%E%P@u0BMwz;V*${WN3`3mZ;`=9CG4~4`MZmU*1A#w@M!G;t2dRc(ql2N8P zadQEzTZRV2v7=WZAs0hkl#pVZ;-RxNg=VUXruceGt@LwdcGj5r1j+yVUaAs2XaQpiT2Qm9shhjH<6xY9QX6g$v1EKgd-OPWnfM;!-UC73;D`?CX~V99&1gqAPz)EZ8(l%4t!~6==SYV;oeBZ!fz7&(k=Y zskNd3mih}1|F}la1gIXj71;67Uh=7^SPJjS4O2-FOC@=>0ZSZSww9wBh3>NrpsbZ1 z3>D{1Aeo|e?c&z3%s7%FM8IsBwIw={AGeHGC(k6jVij~p&Hkp0v7awD1 zvsf<8CeTEb<8lL9+u`9eOxc->9uXsndhW_0_-9k|X48p0u8x@?nae!SkD=A)*SFaM z=g*4*P|>5A=4vzOU6p@ukD3arNdaeBpKsFV?0J+;)EhYArn6f*2U{wWl{%GINR5w= zPHr9cGQf;TuVv7+?z$)WZ-M*9!vbdXb^Px>f_h>7Gls(Ng<6xY0PHhaf3?~#s-Y#H zogLYw`q zV7`&$!4dBFYM7ysUhk}fe10`0x!~+36wM#7t0s!p{`!Hw8VyCs&trda-QRxHAQMK5 zucTiXb^iw9QFA|u$!px|PE4UW*mu;;F+F24$M2Mdyyx`$e>9zYIMe_C|0~rhg;JEW zcSUkoQgfOusZ>stw8~)>8aW?woCzTz3OP(hPL*<&^X7bJSYpoGoF<2DhHYkk^Z8!C zzxU6sYrCGW=j-vf-)}c21IOrc^~akEhOraO=*ch5q}w#J_@c4Z2OCMr1$c;Z$&ryci9g-#&Kb*fHh5t)2icXLeQ)#qisjaeG}me znE?cwf7zT`&NtH^zCLUS!F}zk**nCj<#t9nH$-$;<^T`vb%<1M3&8gVvwrsGN@9>* zaYg7e;^kA^RHTNf>0=M}*Q0A6d5gtyWEeSlEj~ql&h^&v3;G87FZNN2Cn+=mXeDA&>j)9yJxp1V ztG2}&XOJ0%sz%9%k@f4!6g>&#c9{-D%&UH1OLmCZTn1uvCnx?8OX9VkqKzcmqkkB{$*5>2jL zJS#CSgQJ&&+XPLa3XswFwQAPYl(Dt*0p-+xF-1OwUw_pJf9k`17jVT-b(&jkJ^r`f z^|Mz^$2&!hwa4JeLE_=BwQv0%onC!?2_6$ptulR?J1GJGy1Yt2M9iQ<6P>^x(ro`9)TqG$@<#~~d7a0XOZr&eSdaf6^smf$>w3owe)EYd zCqB#+B-u%w4_;l}uK$G}y}*PW@TTD-!UQb&SOzqg1F5?-=H{=lAr1 za9LJ}>L9RRl_iNbRRq*Na8dVeK4den@2jpN4M zdbWBxrCxaKxCfJJ3v~K${P2IIDv2sK)0|vKyHK=ZUJ>T)+_ResRXqq(^V?wMWt_pd zc#-2;*_I;kDMlpvbv0v+aB7NqN=Vh;-$^D_#(UXNa$I>8iH>(>(8xl;KJglpoiM2@ zveWrK)2JTkdIz?u0QqLlU8pfo?c)bCFeJbzy68E%WnJE9241VKY2;Sw&}IDPRdxks zR15-&J?<9^WBft>V)rvYnuG}3U0gfnFAmIz(X#QB18ZNh_WS!R9nZ@#sTU2lNViVD zG}}Dio@1T6s_(e;=%6#?Vl9kq&9-V4T|VtLdnRa3urFx9PwD4+fu56*xk8|32-_VR zz(DJ5->S`=Pbuug#JSJj#Fb@CqrR^GgO|k>1{h&J0l;*#G4@H9p;JMv!!m@{P0r2B zT{lo^!_&_Vc}$Dfi;&0FxuOph+T=EaJiI_zI+}duAj2ALO&UQ_ zpk^CA6P;>Xc9Dr}Ho;(WyT9IZ-O+?H)jYdpfsNNYZ){D@?d;q5VI=`i@>uKA+c7Pv zW!P!T<}F9sQ&M_q#Lq9yGltoQb@U$QcRE9dO+4`utGN9b$&tdBFuGQ3B&P@okY!Ga zF?hlIbarbmfj!W@hmp(2&FYq6n*9HM{~5+Sg^2uc)lJ!T5CMjU!3JELL{}~DK}G@- zK}C%Di=#>qoAWzz<@`C3J{L7!D%&-?p|!SBZK+jf$Jvo?C=f~x+AfqS)$8|pMi!aa zzyc>zw2nIZ670tJG_aOGR+^dG>>(YYepE=V(+Z+1;PQl3B+Yy}Uf(RcbG?ZBM&oVd zS;IIZ?hCJ35$*ldrVN?Otb8z*HZyAonXWCB1@f+g2MH*q(K~uggVuTa-0AA{KEJwW z@`!5zpT4{6&cw%d0u$&K-)0iDZ&b#c`q7Uhs$p|9umXz=_rs~kXiQ9WkYZ2+YvB#r zAAFAABmo=%Bll9pLcKf6V3o}wENe3Hq8ahrSzceWocmU?T4X5e*No0LBEQC`PCpMM3^(BbYGD;cL0VT{5E^m_WbhNg z^vudz+h4+_RgscYnVmnIWyBOz%8ONt=Ye8UEwr{`lVJz0M=E%0v0ZnH-DeU9RHEUN z^>)39jlf9N1&XBZ3@xjfLifqjv~ji@kt_b@oVBytWNS)p1-eB&eOB>=OnVRX9m%OY zKGbw~_EgRemy7IHwi^E2Sqt^M=yd_y9*V@fpIV)%y_jL@j>jnl_SoocZ)-%Jo~3`3(;5yUAbX}uRsNDFk;+b^_S&#wR!|#aNPr$ zn;pWb#F|vn0hsDLfYFYHwb(QCc#YqzfOwC6J3o@08y}xDQK)0bG2(r_K{1HAlT1nR z*sE>VuVC%ZN)P%W_!*Cads56(8k^z(f>hci!|Y~~UgYF>n6r1YWz27-UI3&z_%wx` zT{qF*l0;&9j276;1XiLt3~u z=QrCuZV}l3NRZtZaXH>BnMAL4E4Gx)akO=1K zg`pcmsWLo3(LFVJW6H$OtRh$x`@eY+_Rbl-J9V;M_8V1e5Fw=29qwYY{n`E- zwML^iY5^XOFkuqefu&fae^uIVel{Kupff;|xJQsZ8mIY%2+92Y=AfZMy~6dunc?_C zxd5LQ!l@o$4fW()n97qnwYtG2BZMqY`3v=~St;PNk+u8vI`QvcrV^LpK@YwA&x`6G zCAEg%LAQ~@Pj#Kc9=RA)Cilq*UL0d2-a;a1Q2fXT=nv@@I#LpK6PFouMu~R->1$Y_ zUrRWROpmmUbV+VN`AjnuwZY_lqh67n4O7Guk%!y)i-M##ccyl8EiR;{bN!7`{06X_ z?w0Tl3F@56-c|b^BWtL8zaj7LdS~HRQ;w!N*U0-(CL+RP5t0BgW0(HXaeAvD=F!gX zTy}X+_%Q)tZO|?1%HICAlJG;(ZFVkwpVscp0F_GH^P0u|kS<|*ZZm=J$l18`Vt+fY z&gZA#M@wi^Q*h*-ID#Ia9S(wJ8mB0S@A zR}fOx18tP-5$b!K<1-TGGK=sO>dRcJ$r`+4NM%ijcS^blZ-^9+zV{sx#>Dz5+;F<@ zXePF*jts~{3Eq$njpE67JDQA?Ch)KFZ+UAooRq z=b_I4ls{oIvJ<42urUo$46|2SeYi$u97^QpvbL0Fv_6Uvcy8Gn9)=Vey(nm8uW&eKk z9qA*KGI~>%i0u=%4ap+c=Kt-6spqHNGGl;kikmxa0`NZrzPtPB0Lf z7O|Q7gXO)b*~j?{5A9M6RF^&(D|yDRh4@3h3%(y|m*_i!Xct z${rj$??UeQbf-P%7v1j~4AfGlYfm=9fpyEXaIXv|FvBIgh4l%?{P zlyp6we~w~A_{KfjoZ&-Cy&N>nVGQKei2fmcp|#7~S*Wir?`oMQly_C!MMc6e^AT$B zIs~4hCN^Dx(CJxb!DVPKflp>_)v{eaE7~{u+DZgg6maDQffENbsjWnn4~oIf2R0W) zaU%Gei{bDZtE5hKtoXSN+k!ZcTsZpamLE8fb`rW^W3Vh#=amB0nelyJXn}7wU1cBf z{nTaq4mrL2@HVFIpIQ5Lkp6JFr0eJQZO-M{QvaTOnlh&D&=7|8M>$BPr%sA8AVy!F zAaoQ%U1SLfm<1-C{ydSS9@tJxg8O5rqb()e^rwaG&Spp-(o?4=>qS&0oH$0OD4Q<; zUHbX^FEay+p3ZX{4Q2k^G54NbW11irZPul-O}H@$7{}${QG;lquLaP?^m`ZJ3*=|Z zQ{zu{H8$S+c9=<+vDGs+dqSaKnDb^RJ5js@*_y5qbOb*$6+Kn-VJm5Djf8TK>*i5P z1EKcJoDSr-WFn<+hp!y4n^6{qC0y8=I4Ik1U-Gljp^e@i_|6q9F6i`tPlF%OkF)C^ zC_P-0CYJ}(`9crd_qgtgO~M6F>aDO!ybX4mmI$o#wl;1M`e+cJ0d}WHn~kyf_-1!| zD17=;h>}N{^)*6b$^V{K$gA*If2u4UXBLkpHsKR6g8z z(9hfPQefmlZv9f(nEo-QUm36$Voj!kZ&ZrlZt&)89l`FT=w`%@$OO|cK>>5Lmdxhw zEvVjM{7a9t-Y8z`V5qR>>7K)T>?=u~zz_r$6(voO9sB|XtHc)gJ?SZsGj4}sjB7oVn7 ze0MtAcs)dO7i^a+M#B#rGoYU;=bp$rxLuH>2cxWpIR8jQXy#Dx|6E$(^Ox-VGV zR--lI*Rj2l^&p3B)wcrY_64iVJ$_bvc&h?~uf?-nTcNl7%2Th0 z+;JmW$XJ6CjeoH7>OPpHqg7xiWSR%HNgc^NjBYVYJ%g#^zs{;#30jLq3?4W3F^R-n z+Lq%@&s1al0uo$EKbSJyy7FVi&Fx!T|7CAG;z36$ywC^v@_Jka712EWYNYsne!Whe{0!l< z7I!+=Omd}LjH&ZS&SmXBeCW5{C9)nAr?n)n*5gU;-VFu0u}~u-4P?6({owi+Ywcfi zu&S%0n8^EXa}0wHU!U4(g3+*V(6FzI?fY0=N_0_9yzk>4axMph`J@O9I^Le$qYoFq zxUd6yVY4``Y|thvX}7xrmbrBp9IVyzP0#XY@Pp7IpH$h?0O<_Rl-{gEkyoW}T%9~U zynp)vrtMlO|1MZAHojjOZIIcMN@-Bx$EcQ7Sv8?MK z+6+9pEjwneknzusBG9=SPMdxWB7fn0GXLBKuYPrQG?86~3nmnH3!wZ5-NM(J$FqtS z%GD16-TcBx3osvIxHwEv=-xMR4!cPKPWy+LGZxzEk1E`8T;)ifDaAf~fy(@quj%hr?q>A1}vU`?zBKUFjo)w3?>Nc87|Rr ziB-0c(o{FL&i1>5k!tnr;%X>rl)0D#L-9(>XULkAmOG_B}m~<(I(TlI+nd+ z=64S_=2Vmrd2CZ;TY7T)fh_+?)rsu9h22l;tOghPMWmL`T(-#Zz zPjkU<7jHd6^=Ge2uIW@cO3}g8{@RlEl%|L+XWl0uBqfj;p6HsIIulUmeE1l4M+RxeRK5kOrn=qfSz?$rk1RL!u^V)y$`P}WceCyfX zJb%263`t?f#91a`tT|G!)Eu1R;wV0~rkzf2)QI+(NY|EO%qpV1);Mnh!=|6K>*e@l zLJ5Me5>}3RO9nGbcY3^0^lNjv;Eu10Kmy zMj*O^8yk4C<)ag2T}zB1eu4~cjJOkET;5V%e0^>IP=-*v-sQ|o&pi|3R+3~3qm6Y+*T+iXy>$)H0RNu8?*5;N6~eI2UfeK#oo_0 z?h6BcdVH=z{UR$M%0w_>ZWQJYeQ8kv1FosB1gb4js!oB@^cG#W=Y4IvD$ z%OUOTzJ_>yRRKbzSK{CI!uQJVP|0PHe`TCO5zTR>`l1(W$&#Mj9#5$Sr)-A&L)0*} z6Vs)Qa%4Z!q=rVz)b(XC;qAVnoD9<{s%%i#f6#;|z%QgVLU*F`V7`=9me#@xqph;< znZK}eSBta*SE}bhX^^wi1T$pR+-^Itk6ZDn$dh(o&jIhdGENlIbo>X>9w^rke#Ib0 z*ld*FStjgLu!>Z8iRE9D{QRdyr`E-n$3ldWbVfbPCN(b~d{9~3G32Lag$Z+JDp}9D zqazUgh1=&7zZ63-`1|4|D_!>J5$_jHC z_vZ_mK|Djct<~@2xl+j11rR?93a~vq5??{0W-LxO@_jS;nC(tJ^TTIH9rhig^LX*! zbFBBw>H@blDfWPuSWs<=3EW4EP(OLvK_=|w&;62Rp>q%r_@#r@;jaVeI#y1uvUIGX z)9Bng?TGHGMM2SCpvquswtcp`h0YkeWOS@K!Q%|Hr$Pm#v)>`(1yVzyMlpz?7|Z}E zmY?PWJY%X&(JU4#%Q*HU=zWf00o3~t$*8%v%3B`nVD&P3O6+3A$9*-WAAvl&al{HMFXT{BLp;eA{LugWU#z0#Tp)5b-K?BI73vQ41Nr zO_PkI1D!I<YKi@NLR^GJj6xNUR zY||H1A)b7|$uk2nmpnNAN7W`om_dpE4(^Di?=yw;q;j0jdW&Na^*`4QfKzXgMX?Rh zwJk}Jzt8_dj$EC(G*1-~tMh2m_%xp}=e@*$N-__X8Rrg^$x5I6)H@}IEbpv5ERABt zLe?N`f~eJc?mS9<%b5>$GTthfEO1a>HJ%Ty>Y}6gALx@7hkpPAE^(MUk7YWfvU34e zuZy(2H(te=`^3r;ZrY4EAp$R(ujWM8A}xM~Eez-{cd+bLKCWaw$0In8>^-ef9kq`z zq`!M$XKpIHNNGHxA1gctcJ$-Th!U3~luaICW5W484sOjVy|=zpz^?7H_U9P`NG=o} zL-Ou-1TX$GC4!2c$zJ&@5l64p)UA6&yntBK{H<4+ntW)&O4`XNGNH43xX{T)fQ_X57fE55#7S<`(ho*Prd84Q^}4F^BlEVaN}l=?YU zdRHYs`e5$b2HPIa?HrT_x5XLm3~j&y9j>#U)%^8lO}}QcLWv1|zI61WyhigMT{=18 z(fEjZ`+cPFqJXqUF(1W7W@`Rz@lEPQ#%`V-r|3qY{r=sXi`Tdyt{-@{upKB%<{s$1 zuctxwNGe(wWLbGv_m_&t>eVohUDoR!_=T$J@S&U4U82B9Uqb>fC!j32`gVk^OWryE zP}Bcg>rR@T(Q{25D-9?{af%n+q*x1lQNSdtW+YNv(?O?-^ipD3q<(x}^Kn+CCU9kM z^#SGn*nKxdzqT6yq%56_PX(8{`|*v@ek}w^VTitja6R!5V6~{7eNYdhH;J^AySa)zPg%VltNpQZ6Zf#k(PD zY~VhN*-R2|p+tRl)*0wlIfFa^*3et07hLyv7AAz6R(dzTlhb%uE`zZr8Pl0$3iG=( zHDYF1<(+&mdM&puS9s-1msrrrAV#aOR&;$qy7k zMnG;ZIZtV{RuTA4@#z`&4(JwQ$2m}U9)_BQfyO|Xh2tvTep~n#QLQnMZPitUev{9+ zY+!F8Gu=4eWguem&X`g27m1N$Vo)_Coqz2ysTcngIG2j}EntGZYfdCbnXZUJNTR<%j@i8ismJd5 zxy?8Mg+l2;|SzO z@kn#z%@`s7A$+Wv*Uvns#U4`-?Q0S0t*=?X7;?5l>!s8UFJboXmogfgAx%Wb)Pped z`)on9Sz+FgYdLp6>92^Z@DDG*W!B=c=cp>T$2kv^=ibuV>>}3^6`?Wfqn%dnFjKBd zzkIPiZo2y+R?EN?{dFq&a}E5J+pN=PU36|3>+j{~*`@D=SAN9nf%ChJgOdKe55r)s za&@JXWNozU^C8z}bH|;%-;F)?j=!T#8R|I+kFB>Z&nY=bi`(r>1e}Z!sQ0F1?b0G}d|`B@z3# zv4X{~=k~%;1C+aJT$vt2yyV~ijtmLlAe?MyfTVJ)?Mg5QG)73CSrEhs0dBU$CJ5O) zu62E}Vd=`;pi`Y@A)}A-S#WxVn59KT^!#8+(- z;yMZSht(kQeD+0ucJLq6ARrI;Z80KhUc{)Y2YG-uWS8YC{IMZK~W73e*`95ElZvxKK#X2`qI`hAu1#bz(6q`YIga%Y^S6)gA;*_=~ zBO^rzrEO~Bg&YHxCJ2qf40gafn>WT|e3R{TFzN>2 zOyP7+ZC)9fs&fNqKivVl;9!mw5J5hkRo>5CqL}<{+7mtld>{^D-{4<5ff;>3htB2! z?b!hGO+?Xt)1sR-fF6UF+>^Ki!bvHgQ@8My7r zo!@%tmMmIC^#So<$7v@Cv4uo^qw-os;@6_0=NLBSTBHVxS^Ae^(@2M7Z z>zL+%e4JB!u+Aerr+}nd4D%I^S$^sR%A?#JX^||}fT%Wucj0A(eqCGrBQ4XDp>@X5 zCFc^AEOeZG`RzU3jrBuPIl zJ^O1^;?q=0)_0$EmVtRN=!bk>jr?a!s#~-#$fUk?w!wV1^qtjj;SKtsSraMKC-m>n z*6tT~XbC{jZuM841^BYovqjF#`;qsgP#(`rv=6NhEru1Q$};$|v6ovoK0@z~~iA(VtZ>(}Ic^ITDYMUwG9;)6wwz#XKT&tR>tJpbo zw_*4fv-=ERC+F+DOsp?%PDtQ+zQgTouTHh;xQuI23vRa^+I+d`2%llh9*oo*w_RVi zrPOcL^_~bakOkTFD=uH!lWufL?27B#FgT_2EiiWY@pZ%UHrXrsqo@B=*{XDH^6s{d zcOmoCW7W8XzCReexR{XeiO9e^f*~_U$i&&On~=zJqYZP0p6p{6HD+C!135R`P*D`s zRbs_=H>BE#^X6>q)fQp6ls7#Aw-VXa8q|C%VJkCGpmrs0F);}8J8Q-!#PFL`Yb<@j zyj)#}R_*pTZ{(4gDA7HWMLLqZd>K( z7CZcTqwCOe3e?m?PlvBu&`1u zBQn<9m2G_{bQV*;03$-e=To@l(Fjh?vDs)H3(fGsVWR1dIwW8}A6aXH2yCMA=iI0w z9kT($_U}ldzybg7b!wNyaY_2LJk&%B#<7xBF1dnwUX#atpO8@%nL71dQ??Y)$H3jG zUZ$D^yEDH1vj}!M^9M#N0=rw!Vdu*H$mf+a)I2uNuRYSSrY6EX>H^t+g%``1hx}p( z+AMz)?m&X5?ZJ1YFqiy+m$s@L+NU!zZ0leo+0PjT&Q^wjQV_5ZdN`>$;Wkb+Kl-Wv zgRbZN%RRqgE49&nz$5y+T2*v-LbQRjY5*}Y3iZzQ@=SleF?^*#LpZ$rd)RQ>0piSn z6?GqR@m{-p&4DWBn;Am*=enpkKZe6~@5|J#M+|ld6y7R0kdQCv+EvLuMe~-+qZqahAJ8-K0!LN(Rn-j@Uso#wMao>zJX6s+k@pDj(^F?af(?ISB(BV zj+au{7hHL`d2g^JgnvftJ%IkA5Cr8v{cH3xgZbmu`He?W2lhtCi;23_JodY!UjD|( zoVuH%QEUp5Z$5Ybv75xGpq0C7sZ7_jlVxKt55L3y{iHWfb44|RV_az<#$zI_#_#L%kf`lI`R{xW8%C1>lv`%{7MMu=yLvm5GWFZm1_||L~Jk zBDBSsK9K*$h0&=wrGo0phB(L% ze6?pkSGFeh!HRhY2eY`mMkotliFt%t+8Pt6aY>^Q8^0*ZpI)o0P?iOmv3Zss6vx%KV;Ah}*tml*!-&E|>%$mVn$@izuWLNXjKVLarCnS5Ues))RhW{Vt7VUOshiOTPZdQ|aSXlkGAUDRU zKmc`PT?ji$(JN#C>$oiaxFvQxkj75e8DV`}Vo@N2FV0!cC_8cYrFK0?Lp>jz5{bk( zG}7d({O%D`+_be`sJt8wYPpqOLlw#SU1W33{>RatZi%zhK5^_Qmkg9-zSGTl^Rlo2 zTJpSb!9B?Y3NY(`UUz$m7sE^|+wNIelhutfZ1bc3dWz53BJl0EI zONEpDcW3bGLNYf2PKo!4o+~c%6j97}dx%oDGxC3n2X*At!A#wir_$QIES^Q1+LwMd z@(k4JTn=A6@r&*-YXo=Cow}kI%}Q{^rt#Bxk-TxF{h6Z1P) zHba83nj*~niONCuEH>wyniqv&;jOrQH_mxAeM zMq^Ki6_>s=3sEW>l+)%q49*(WdOCIs#XN=$=EXWPl7G@`w4bs`grg+liMz64<{LGB zI)!|EE3*sn89L!KIbFzDz9>QbcYT9p0OKe?WV3U<_`9@t8JLcOOYE9F*4(>@kxR5( zOTa#>Q?C1fWf&oVQ=5Kdg5j$*_fDy@z@x!EZAP)l!)Im;WtspmA)XeKgnVuPSWVak-1*Q;4e57lv-l9lL>6>b>>5DQmbeRG~`x z8_nM%!5VXMqjg{Oetze-2SmSFslKwdpfI3%?%UV=jDT0@bCy3ZJ>Repjl9BVnZ9lr zzFQiNiJScV`@WriPN%jF60~n*!_mjX4ST@|?&eV9ZyG~Q99DD8D$O*P(yM*~Y6a$~ zd7lbCU0gSB;J)s=PI*3R^LjR+7YY!#%Wny4GozxR0q*41&BZqvoraHewg(zyd|(pw zovhJV+|fHisx`6agN%#sy(BaXWSJZj^d9vUeo^t-zb4t+!RImJHoj*l#%8&Zhqw^Mf7kgxsj;mnr@&LP;E;F4M_HGm8TkD^#5rbO) z!%Zs#g@PU9gdmIAqd$CH@3)DoN-;Rk1cfRe$6Su!uOE0zvvY-kUV={NS?X`{4io}iu{S| z4&+HID+aKE)4%G-a02@{FaYepC9L+dXFdTP?MFgR&Mt)(_0BcFWgl0w93;=o5+9$z zi)nK+C$7-=en|SK&i!GO zhQ0c;YEZP0Zw8}S(*r^4A*@hBzBjdbv`OMs@Uxm%adx#*x7=kL1rXy`HyO?fuEy$> zB6(cq_lEfBA+Px4{W>$1P%mq>@#mif2lf>5()_6;VWS5A^_M3dP?X(X z2_U933e4=LSr2&%J27V4?X-mX`|aJ9@j-N?DyD5;vPXG!cL@Z&^xePHr~h>OE!*+$ z0SfRMg+kWd1fLSYzkM5Ry%vV0v0+@XRU3^lwX{8H%93RVW-EO01yYUFXupskM*ur9 zIqeJ&ZdV4;~ zAjJh}@}8RU!pS)I>j9nFH_c>ao-?lABM>K%4B~r5H~}UB|9#E-GHFB^^4w30Zr3Dx zFB$uO^gG(EuMnSgssD7JLLlhx z{K3Qn&e3vWUH=o8U0z(>j~wD3jTNlXa~^Il-r;BZOVuV`&tBoDoKu-GRX55_Vk=MzAgF_tHrn%mj^TC;!s0-E?6 z3WB1;Sr?JpX1a8IsTt&U-X)J#eMvzvVd)Oq=04|FhGOC_T8;>iH{U1b@K`vEcGwg* z6Ro`6bz}S{0{x7=UqRG$PSJ|}K`chb4)NDu_MNQiAs}Y)K4yKcu2;^scP-K+qsw4t z-Qoli2xm?n`R!rXQ>t&EX32i4U5t(!{iL}lo#8$*vnvb$ zNn^#XVRSq?-UbaPoJO&egZ-6j^D!vS(k`U+cikCEV##I3<|Bn(&`wfGNtZ&ZfFXZj z;^bTQ2bLC7AVloVRNdHA7Y&w#{@VZ7KpJ~(mbbQB1RhH+C>$ggSk@o=j;{hbHm@|U zn2c`lZPc3ZT(Z3pA%FdKBg{ERRpE?c{rMjlNlMH|5M%A};)vf7IWq z4uowcTb$iiV1ZSC-D+g^l+zqG`racU4%9pWm&$NxbmwSO>;#GL)TGriPL)O)vcHSJ zPBW=<2o1Q8yKW2m#_j!nQIsRKaY->8X4B>>m<7VcS_oatcN+bQ)&m?$4F8=S`wg&s zx4vel){t%?xB6+`Kg&Xhylq_rYoYVmM(`Ky+;j*;xoFgymk+=*rBR&YvKJD?!3l2s_foSR)j0m}8J?>Y{3t{3 z3qAdZF3<3A-0XacuyU{?d-X@(z)NdofEJRbshaE@5_^+FN1Bp-K@EY3en>Qn)4`WuC7}bt%a`#rugf$#u>V-p2TFF%NS$$XMr+uN>2kIQj5E+2H~fB zCR$8BMUOoe1?VdGXVf!uDF0p=2(<|J3CijoY$h*|!;zh?<2-xyd^)j^9Vl!>_YikGE3!5FL)?d@ej_1V6+?clZ}-?gdeoIxNeZjnKgrvu zbW1J!#^cK?G4&Mb)e#}h$LSTfCtt(?pFTcWdHY5DMg%JQ@Nkl;Xdmm9x#)Y#KgHS< zK`BV2>w{N&=h)2(C6yEW0|&?Kk!-;Jd`@a^j4xunFB;*sOZMfAe#IX9pwQvWdH<$Y z3Y0dIc6%6Gf76AmTmNdojIa&>`cDq;3xE6!S=_5S6}60r`{Fv zRSZpg={r|>c~5k{FQ*Ej2$@|hj*nGB|CZSR_m>=7HG!d{cu)5yx?KiUNj)eI$(kY| z^21}02M_QvEnGEZ7c}^tkS>8Vzksh{G;^Q4)?uRz=i-rg3OZIk8T&6Y96O^70lj3e z$|W&azxYy6m$SoDSG}w5rhZ%>7MF>zzP>#o{+?+rc^9`;i>qa`(}wHjmV&u)J0(;I z6gmYmb^aFE;lm2!Db7aASibx$Yx@z1*4n@3gxhc$n+o94_|L?@YKui(CV?Bn$43+B zCj(&j>l zkk?y(e!8g7hTR4GT=!OJ>YF0^)94gm?pC3?|Dsnkxou~+e=#Q3yB!;~K`r{L!sJf# z33`8TP1r8DziZbAp!dl-H@oHp(R1yaKECXz1prU3)mpleZ`m=M>;`MFSc+OA!=$x}d*WPpZB1c{BAI)WB&dmK= zNkHV@V1Hpigjr>|x+?gLV}NyMO7^rmKm&fo?P_IMavalTpKtJ>(w(B;S$N{@&GV<> zKQ6U9XJhng(x&pf!kI@_?1O25;Nn&a@x=d0Tfjks`CaEE({+A`)=XQscR85Js8w_C z1pCeYKbp?{pXvYq|F2T564OgLG{+89a)_GqMkZOvLbB>v_In6PvkP4w;N~}`O z=fj-OhhfTLj5*J7n_*-4%=>%!{tNqIkNfj}zum6aH;xL+d%uiwRX3(2R#5Kl@2o53 zyk~!MlF9?SpjEW{(?p=Ici^tY&aD{9Un`4st-vo@UwN5A&FpA2g8#H{W)wf39=_Hg zTb)DiPp)M}%pSe=PDUb)&H!>NUMnV*MOmj3OFfGeyG0CGbDiAa+(bd?HeTIh3vI|g zo`YbFU(D!jjmlkKqyDy#kstf%Y6MG_mCl$@r8^{jc&a)l0RK$T2z=&HFgm;5OxNB2 zD^zMQjq_{Wd$JprLA{W!k}l42mJ^3bV_7O})*RU>oqJ#Z+6MgSIWZI(dvrtvRk^n0 zZO@b|30NaMB`jyNlQO8&&2NfVL_H*;?+Nh%caTxR%EpTZ3bV1mGgo=u|KcfR>EPwi zoQp##nx52eK*(q2DYxd_Un2q~Jjx!eGIl|Gg;ZskhDu<{^f^S5e}FXhRC-%*#aq9m zQwN=_F^W}meBov-iNjqsXJ;wxEjUsb_)v5)0PD58!XQ@_1 zk5}5G5(;~EG?cx>t2{ffaRanlOZ&~HF`as!5-{jX|2DIeA_@C1AeKiG0%UemirUDR zcvmVx%VH<5Q+>1EwA~Hsc)J?{w$&mG`{qE%Z6iGmQ{}#IaW-9!YdWfcg=TI9LgB?jSckzia~C zFd@|3*<)k(*%&0^^3Jy!P$Xd8v}WooNp?=Wg7$q)|9@V>3JNJ4tBq`_xxLFp^MKkGNE2ZT^#!D3#8;Wk`WGp3_l@3K%dTNF3K%?0GdbI0&U*eWe?11JCrz%HLLZR2}&P4i+9^)ei`LcM~#uKTuYDI=$D! zL;_!e^p(dS3tlfWb0H33w)w9O>nO&9*J~Tz>4Q3DSNa=M!S0@q%-sv6g4kx~mJcb2 zL1`_TwgJbJ4e{Bo*=@qz$J8lZ_~ov$a^$R;b$>q71VJH{{Hf!-;zb1v;%Lvmm-e}w z?rW`xJKxusiE_?*Tz6*cDaubbw56WEs+=wVvIuVBgN%zihCXos6KmtsvFUj1Q>YCF?qI)Q2@uu_G>r{voG0#S(>*h*nB@ zKUG4-?JlfxMbW~&8K`Zl_TQ|ERn^f(Zs#k86}#0sj20LBT=b|&cuaGna0d<$XV6qN z7TX&zqSux+E2hJugHpX7OLq1R{hZtgKz-*)=20Il(HMMMO5w(?U|I+Ii1OWy(ZT%& zA=O?{$zZSXp#U+m*XyMbC+s+X$W<8n+J^sZ#DrsY-188Wc=17tt;a0Zc1bMep6-5H=)$ZA7hU( z{7RvH2C%V2xpy#i3hz^YdKAFvIF{dq&Tn?v$@hmFsoB0w+c0Fw-<~$;K8EXA*`S-{ zxQ_ckzae@qNLnl(=l2%Xx%jTS-I4VuHSW1WDyZ0Dt0 zXp>lTenr^6YIGCK_xidZypeNgNO`<#J+bzxu{EP1m$l`b^rnUeUu+Jo3*2(6eO$rt z5Zuj;Eio|fPadqhe#-rKF=lvV+7do}A{n@yLoeRR3;eDyn1p|pvZ7?M{V^N}_`HQF z2VFSXZxBf-IFi(wvAE%;bCjazbw=N2m_T{oi268^-`WWJurho>7YqFk!f3mi*6x$Ju zMoTf!Q4$iQTVY2zlW_%O1ixibeP7>$f&CZeRMW;3Ym(i{^w{QV5g}=NZGItFHQ9ov z_AfT1;y4j1`TzM(Z8$OQ0@R~n^S%!Q20YU+{=J1j00POT9r}41E)_(YDGhnB&=x~ zA>6r9vJ7v+C5y)o#Ou4b_RJ@w;pLNqT<7o0#d}URg~#H6rf3ljXX){#sE)v)mb=q; zs!sfOLm)jZT*z{aXLCmTq9X8yVd@jGIg6U=qNXu&AJ8sz9Ol@XCEjPAQbd)plfD*& zJQ5fc(-IM*Cc(7V^-#RoFEl7o@>tm|mIfyb~O)VgXd7-rl2_?DI;2thi#j^FWK<(@LXicoll{3#l4m? z>RJ4KZ|>S&nrj@9SSaoovF>4w9t(xrqljD;`=(=lOCUlwC}Di6FV|}0=Zc&Z!%jCA z6?3wY3Ddwx{0s?ixXn7i=o7etdz3ro7dMZ$pQf~WR=W-%K}e#JnUI-qla$Sc_l?pBwPq0>P#@vH9j=k(a}T&=tyTq&DK9E zW^~Ks`5&%H^5U?E<`rB@=ZL1}j>W(AqpFQS=#f9eS4l%3tly=Gx`F|o8PzqS# zh>M@)sDu>|KKi*%q=3zft6Kno{}DUWpHY1J*M1^@QL!+#BFRayC*Hn(ibjv|r{nl| zK_vb=BOd;&M%Kp~Mo9rR_jKz;7P(;WKq37b8)Wk|np`tvEXF8cjW)qooJPySaTX(+ zj+iP&>6z(h<-Mx>ovPx4ywiGz$bedf!`unZ_14S4n7WB|?TKP;c1$IDM>(9wsnb~f z3J{aJx7n(;vX&PcFY{;Dy0XQ?`cr|(ui!sJ7&0>_!E1Htfly{#-6~-B(mVRd#92|< z4Mn(>$HXJm(fY!CbecU&fyf2OB_lUJmbVC0;ArVlPgJ|AG+SI zU&MkXrB*Ryk%4X7}186QSOh?Jz-=mEl3rRe!i=M;@?5*DBa4I~v&t&<$`?Yp)Pm0jqc_$PNqQ@$Cw>M`>2>d|KWxt4p;Jf)`_w1~lX&3~=Ycq{{t zd9g(d=V#>J{Z%`uFN3lxrJEfG7u{3oFk~2C)y5&e_pNOsHrhBh2&~S8-C!pc_IbmS@{fY zWSy5{X`c2jZc4&2Bd?f!8E!e>m2kW6;IWwge~*RCxZGNx>%hG93&=g@QJ~-jL2oUi z8}riq6#)>P(O02X6xp>B;q+6OWlVjQ#;bRLIDRF~fz9Dp9>PC_QCvf(-!KjxcLjhx zhOI?@4fi>YBu&GBDB+AuBvp^8453bq)E9%4EQQq`AESG@U3I#B+}cs>-sSZLds?&N zN+Zy^A*)S4L*gt^_l>iIdyC{V)mml?=$*V5Takah6Y}hHNN86hK2mh{5RA=3Il6sB z0HVD>Z-(jPC$p?|gc)%m>@cA0YG9kKa)J1D_<4`|@#tii6P#gg!foUr$hj%8HnF?v zkFZ`1W9Ag{@PV}q!F-MUs;sUvyoF>#A-Bxh_4Kux;L8}n);L@CkCiZmg#R$F_UT+K zSXYOmY9^BY>=cbQuQKEIJjJ%_@auBT+E=a@mbp~VwX!eNn8QN8r~{SevOFT7Yvdp) z6hM+nb^@qrxbz&;ma2B+-bqPniJ>k4TQ_4;SkQqnYYuTH`0aQOrs*=+mRgc>o~3yL z;Z7X68FM~p)^{MVJzb40{M=(C0mA|Qn?IJ%pzAVWX5bkkRNhO?AP41**YjIXkXm#H zl1%9xnV82y^(Ao3l+fSY>ML1_3xa>j?-;|s9fc~>=MAWf{fECA1(k_!X672*3YD`t zjqT;$SQW{^Md3&Fpk% zVIrAzkQCvTafMF(sebi*cf7*x`lAu^e@d^|nS5&@Z+mVpeA720JsVWbrZWB<2^6ci zj#?me?rU;UJDqcad?BKDB*cu_De>%-;w>@$o9$V8pwZt&?@jG0JnxCC)#scN-&O)| zpKmNiM=G>d!FEbunmY&aMEDoe0L^PSOIM;$bP~mib-?Ugu|cc86(95zz)imY=sBYH zlZ;wGqny_x6&DF2Aqg}NCG1@s1a6K0GjX7wD?JT(&ar&|aOB$#bQiZ@688u1)~DNk zu#Ot%Uu^L{JGe&P$n&?{JNs_uP0;I2m*POw{oH(*kHGwa+3fG#S${s}FU)Z$jR)${ zY7PH`(TWK4S;#eVv(EDh^$VNPyY8HTm&uYBiD`ikJL8-eTabC_BG#q-Ty(UlWm0-c z;jM>%!5Q$wOZs55IJ@mn`QyXK``b!R?CMvWuXQkghg*es#S8H_Cqp#8W+RO9wc?6t zvo1*;cbTG*;g=Dj#37lWO`30k-tLD-ircY;pJR7q zAb`8EF6``6)ce8{N0`giK%`)*rQMs&foLnx>SDS=a#PZ%X&|-Js!H|3G+JJ`E)F+D z2ll&W&CY7v-8{PWAN$!Z-dH02-JJjlm{!-b))f}JYB!N`$k@8CBSrsl-YPHk z$h0t!aM#X2t?DE@?b`lPCDgi?_ovpvRro@OxswO>;=E2)(34$p>#8D6Tec~bpfkBVEML{E}LCRrM!H*8>?` zM07%E9P~S9(6rKZ>yN{BB+Dtd6M9c8$mcsI_`5=}Szsv_I*0xImmI|;Zb@lWqluNc zC0!q4faSvs1#g&lk{N!4KgZPw9s1v7HxJga$}>;v2yQK?;(q9lDI&owikDF*mA5Mb z&6?K~QP?}1#~iTnT+vRSn)6eEyEVIJjERV**NP?^uPsA~R$M3MjHx(9_Ke~(U7t6j zQ4qmhC4ID{G!2$6;<@P{Hsky9*p2=8g#9u@D~oN|^VDa;|MFYU?$rTkf6S+*bkJ{V zc3psz5_1ikg9KqpDd_jn|&ZnDkkVcUgf0HWwnk>0VDDGKE<%za8x=&%BEAVHqW z0&;UQpbU2n9nMHy3bV#WGIX22-yqfP3r;reMvYD#uY8SK;Osv|pk0A+=a~U4q=wp5 z4pK_{_wuYE$H7LUy-+MpwQ_Psu@_QhsLp(Nsp0I~;yTBx)i!76T-A-w`sGCXbj{2kzgOc|JcP5C4lTz2|J^RjMKv4thY1{yO+9tYt=#2UWJ6f$ z5s`w1Fx~ET<|toTs%&IR?4d}JDBZBABma6(V4iss8(ri3<1qdC=Rqr$e^#b^UL`KQ zLC%S&D4%~iSBC)HJeZ8(m>WyClL<%5iqf?;PLAvy6sA_f?(imw#&e zY`k^7T~gVN(6MuUZ>Podm%ETG>q@SenPr{W=K0*BiaE3>TBj=dIu`_dan!3AKfu$Lhely|!OL*5GPO5*tm$~` z5OPCnj;h%+fr~g8|2>)STVdtXtP4eG#3teoqJxm1|c+>R=1+h?A@R5kao;5Z7x>=+&ETOY_D9 zy9K%kWZ@UMVeuhH&fiaP54k#Znny%Pr&JF9NK}LiP-5{JZ& z(V{O=j1YlDzXgK1vDm7|zp5-WR(=T+iNGPCvU{>Hu zxn&_`U4B)2bdY;jnm}wxgqWILHl3Y7+xi+9ZOO7j+`EkO^qz&{;X_%0Cka zS>kc_0r-2R9#G@8Zl;1Lu`x$2Ain?*YK4bhOgG6yZzB%`skJLD^Omvk{QnF~mFm7Q zX=!*o%Z0%f!uu)L`V~dcR0} zvgk)l#Z(X{cMpk^&}wYHKaWNpdY4X}&q$+Zb6kh!GFl_a&og1%eNMXZ#@oELN?82X?G`9YxtS!Cm9n|Y{+WqYS$`=>q5mKR)tj(aW05~7HXoC zR?v#WEHnw?=rrfji8j@rXK6UJ$i;Ww+-`IfQ2oX4eSGXb*CRsiS|#zAo5=1nu2-B;fCiPgUGesOzlV&B z`6;*kHk7O8Xj^=fZig3Nr)cagizU?Y?d535)>TwtH$DKJ^Dv*<2BE%Z0rUm`xtl8X zCPDMbWu21u1o5XX@9pz$^4M{`y|dS<14&zh+_}c+{%rY&?r@{ zs>%VWmKL@_cQdLembtO0Uu$`Lzk*GMn*PNGqRA-ne`7l@YA4jA#P^B^d<5!-s;>yayYGYr||6WTAPCUY_BpMG)cywfwh zZM6P|1AQml;iiz+KLTWw$~E4Yp=*wIsRlcO{i9b z^-px2#bEW!_50i#mruiVTa0@s$y`@Kl7`Kp7zil_nwI!v15XKmYia_Ba37e%JDVf$ zt3|rU(&!%cubc;%##-mbW>SOuf!8p|={3@*$u%@>01OIEihurRoi}u|c!+{dH5RsDa)YpEk65;Jnbs^jK(UneM9A%O zont*o+7Q1vbk8wJIR7Ebd*IhVm@)!lc#2$i;$*l!g(825tKiE&4e|%e z8m_tpkDe;|;i57#&s{!&YfgMYt0(kwFSIvFci#>bZ~Lc)8m#Rm3{M@|tz*d56@@&l zhqfJH&9)bs^E$HQ?(bVU8rbX{I2qI9_ZH&u>$BE-vm}rf>LByR&o|Y3(c`rkX^G?>9j#@v zF#5wxt!pWLmxe{WJahsVKhxvr(NJQ!x9PH8w4j=6N3WZQGt?a+f6G} z&FBl$1IHGAa)`6?0I=avCM~n(Ijv}TR?X!&I^|GThJL(IL=;!yD+$3FI~yt2pQZPMmH&c!4Ud~>;1xkplMlWuy9 z9{%d)J5`Vhgq;`y{K_=kr5qXD9RVCT(MmK7bfW4*O6{u=0yn^OI|r z9sJ3hIaP!s)i11PINCZ@Q|*w`g%OY6;z+#3meL#o=EW1N(?Hft0UBx1%+-TqLFo zY%KitZ<#>I&9<{=59;da6C^#B33=oUaL(2D zF7(`jPG-~LR(`dRp=VFWWn!L6H2qdePjce^BMsoV(M<{$D0LHBYRdH9z^$cpf1AF- z_cyOue6@dQvip!lr>ZFa>yq8#pjzH9@xi})8=iqxHR3(H#phZ@|jWn^|w4{rS5SD|DJ#u!k1gqbwv;TMo;7C zVp}!Wzj7Ynd`vf|uGHQt%40pXl;c)544}zMlItp@29q)Z#cWnC@@y!ESy}ZI;^Mo8 z%KrV!PTu>0Do@?DC;YMh2-NCC3AaSk}a65EUxV1 zgJ5D@V7Z|2xSWcwLr`hf{Iqp z@x)h9YZ(*+(J2%{sSh^y9O12-N9-=7NU)y3w(}y(ld6pst7U1h^!pyFGC# zHTNqz+l@W}>z~qWO$hPvq=_J^dc$WAtzA!_A67@BCsYzMie?k6x0}B8um;x)n!8|o ziNY?PTZgAVODQrIlsBVD=hq^!fBY2;Edoxo?dN%q87Wv%TeUpBU)Yr>Et#=1tGo4+ zzWCXSyGmFXAFD&!QLjjXNF!-`Q83vmC87%Iel15k8ml!m&oHVawHvZ;?qzQL-bQ>x z<%I;~ZA@Iu2lA|CF_3=pTComAVk{(Qvh?UBK?7A23_ymE-S1{qvha92tZM3h>sL@! z*RhM@_U5q$vd7zut2*vgd(wHt4e>Yd?%R}h3uBhzEbSTRpQ9S>_E<5C&0^^|K=TEl zvn6eW&}Kh6--g-c@FW;*9rB%BAH<#-n`zmPeJHKPqyF!SX>W(yTF;fPQ>nr4ni7&f zJ$l#n)G_o7svXR7YZ6Mo3YMt`KlhXj4Ay`Q*2W^MxG+eA0U(EPCc4 zC(2M=_ZqpjdY6~fI!m4zwhtb)LPWC(iZSwv0UZWqq0x;y!dkWHp@){#dk}T1M}wK9 z3hHeyUM^!YQ4#f42x#e=0)8saEj`QE;)MCEQoA=lc1vjGI58xqPe@+808s=P?Ok!< z>5E9p^~?P2A}7>;?VslrB|5K7tse@3{Tl2SKINsoG%bw`4kG|>z&q!quaVWieG7dy zT>OR-_Mu5HVyKBUc6%OHmNRaKS9v!-)rXT88nGZESSt_6IlSrc_lfz-ZpLD$PHPti z@~EeDst?S%Z(2}s^1i>10NHn|FCHES8@KNlJ6WwZLjYZjJ=%G1_lm2J@8#cCaW2-h zqt*rDuZugJ`_E#VocKeumK#Wy#M(VPU=T8^RTYw@5R%j4^wcd(^D?d`G0Q+*?e%0| zcuO*WTfJs1r7wa92{ugn0(KUBQn`D8)drVwZ!^nB;BWXG+LIx!5jp#61yanB1bNRG zNkkZ3^x||~oE5%ORn6^1mhNud)Y<&u8#`ld2Xllw+Ni_`6G`s2mCja;{H4GuuTx!R z;mTF@xF|dB4NGa=KXl9Ayz+w+QJPEI2Zk$-ruDS@OOidl#*ZrX_0kAszvAzcn*aVC zbB)t1_1qo?OK7oY68s^1(@+$thB^1sZ8G4?F}viT-$zw^ssG&D@`3Br@CnS0KKlaK zX#cYEk|5sOaKTx#)mzsbQKOWsB$R*~s+D+WwK)Ln^|<I(W#7|k#(A5gH1HwY2MjwiT9EveLQbbdLt z-oeoCMP^BmklomxNs5yZdR{oRTl9}McFZ7Fyj3-PxhBUgFw)uQvs_7qK`35Elfspe zc~2F`P6Gis=G?r)&{6zHDjwg4McwdpK$zS#_c@+PH?_`%$O(E&7Ij+G{bwaq5%*)m z$j4jKJG3hH%l5bHPeV4!E~=HWGxLLvanV4l?AH9L(X5J^s>WhXqWxqPvfe|tVgX69 z463kS6lBfzYZ(QcLnKDJZbw+xz2E1u5ckQWXDyKf4dlesP1T%qEa%O|bg~Hp=S&@q zG;uGjZIk5BSH4_FGcgTrFeyRiMXJ)*Qu4fgn^nJP{bF;Wn#-$n@pS;Ib15F)DV~tZ zS=0&I5X+ALaMOLgA%zbI%LiOuxU4v(;H&P7?uut+ud9qmSs&>W(UFCYfdc2gv`Ids z_1Q^uA-I+US3&;esim(fJGyFLd>pQ~{pQ@lY48YlLe@gQpjv8Zd?FOQ)B}Q)KaJ9 zus5Cu%EiBlmoR#c4}!db_!5WCTHLs2{r_12dm`PNKb;tDDxScry?MD0*#^*i)gxxU zjjo!b!lMre`IA?+uRLcoFoFeB?M+h@;8FNa0jq5d&`>|F*3D?_TwC#W#Jr5(({zG< z;M{Lyz;*J1_jX3%Z!gRBk{m3sZlry}MbRRleZIpxuZ|14UA;N?d-djm$h4UYNs#m4X*0SC?@f;ohR1vc%6?#%x`;o?1=nGC$ zZzXSI7#==1`mgd^86$xo^io(;_EUBSX?t!)*yjGI<>@X{Pp#a1z+f~^Gf->f!=_YX z9kpjK+~*GLSgazJD0xx#UU41ha;1XDyTdh!*PqEKqjW4qI}5przIOHR55p%K#k)BWMG(*-ha2#S&>*rc2nt zI%5K?xhuG5fS)laD+eI|)X=yeCb=XEFF?ys2mUcAsaEwAGV&hQwq6r)Uc0%z=Y+gE z*1jO1H}5{~)$xL(q9Au6W%*UiMXvE?f3vKCYQ)Q38jxJO(lSgp{BM0GA+F?Z~9M&Q%uRPBtjrq6c+GN%M3 z-4wp-Z~RzsCh!BDNyz6V7xkVN^t(!v>+0#wL2#e%6O2|z_&W;*QCJOLK{%3WRzoBN zU%gdH&wsz?R!;yQh3N~7A1jZ01e^f(xJ4Ck&wk_dQJ?;@INtxAwA(OexLpf~gXUNZ zL7PMbmN}~3oyNLu%ct{s+BOEKRUkk9nFy(BKK8ohVZ*JT!4P`0pm{)`TqK|F?8{i% zUn$T=M9&_O{T?_n1zeAR^*lhiSN)$aaaSd$ah}Al5#U*=$!m7Aa)eAH#7dXiubRQy zqDRr>Uo)BE%0BJk@3_2=(6P=QT}_Oy%>4g~bT1b9F7P*sk~U5Nu8Ym>yyYgQ;dG0j zO`)^sy;W7t%EaEvT+H=y9=S!L_HDA&{`SxW`vA1}TkM*>vm|+$HYHq#1m)Md+*Wrc zsUVvYQB(C@ATli)emW|R5I1t!p=sWO%XJRoY$vN|9$wkRUSb3yd*+OG+${*8N2(|?|0lw z09TZ3jty8YY|EQFKW98zN!JN+onHh2gO(SBBMMCC*g@fjwQ!pg`Bq+}*kYH6m86fP z$^7VfZN@4jo3CH-@v8Y0O=Ug9nt4(VuJ=w7|0{&gIHhQS(&BU+_|$mxYo^hX;OhG9 z8}g5!vTT~J#sF{I(0x6qY~KegYe)+>EmK9Hq=So3#|ouwJ8JD|Ta;iL-N=vm_bZDM zU}Ltj-kYiMq6FcZ(I{|@emnvQh7b#7F)&@fm%LNk=IBe^=3fs-csM!AO+bR+KK7+;14`#p7uXl>gB<<$od&%4x6&#PX zvxZ#d*>3+V_nR$0F_PjDXTUp)c4NpjbB)lG2?7uieoIW)R&c^Ze}gDZ)WDJf-bf0a z9W72Ms#jsZ1<)^(W}1pY#=%qBuvbe+s{D+di-7xD#?1hU+i8+{oljrCo9v<$Sz8)|%8cXsLzl_AjG; zQ3262K3-B?x|vF9T+V0Uf}aKCb6+{jp%D%Ap2haM#Uex&0pulcACmkx+=rw!9GD*+ zIAW4f&bGDfvTtu5i5iOxjIm4>WOhXgvW!*}^qPizUt4wL$f8`pG#LWF1^8P_LP%i5 zW=R?v$uQxE)>2{IE@OXlv9%Uxk|{f~FtD&3Ipd_$hJp9Z>YlH)pOist_fHwL9opy? zSXU{8;k@1+l14Wgz%I~`y24Ek{Q10=GG1b_!jGlS@k?+T2gCOnE{p%UJ4#r6erLa~ z|9Ni#y)dV@&1gD_KlXuNd6}4wb)KT~Pzexm%7EmqPSrr15M=+?PY1;4H`w!g`-Vp=mDq4bEo0?+b6tsRbeL8trcQ*GN0RNaO6*OBLYAVYMIhbt8ntSr? zSoKF_F>MZw7ZTb8dkqk0ri$=(>|F`|C6=>%jhCgZ8C3Bj3+bTl%U!X;=0psI13eu^ z?Ij=~x)n>es%USj+b3@87pWGWU3&?&q;XRgU9PavqBzr-dkhOwU&aw&zR>1i<)n2o zSh(f|d9D=J>Ri5?`wZ$$TR`m1A@UgJq)u7x7fz8t`Q>}PcQ1-zgru{@@y>hi=9w}9!$I4{pKv7(|rQxt_65Rv_xo56ndjywukaUw*JIi=EOJe7b#U zlUf*&CXmKtMkHMkA%ip&6cox}sh9NvO0Nt;Nn*i|*8JDVv=KPngt6BDrazTiv%bX?seIbO)$pl=G}+2HObhCh zA4)Iq2+bv7i~fL1PowP@RTuwe8((`mthE(=1@Yqxp>_eKw?FFV9NF7y1+gbd3-10` z*`C`HFl*GbhR&K#z2X!oaTklM4!-UrdidQ+{L@X`380YmQas*AY0Hgbv>8ksf+@SVtpVZZ9v{_v0aM*W%Vca`79`SV1HWiZ%pEh#r@QEn-I*8^g^Z*M z%_j%FuDS^*ZurT+Ve6f|_}|36zqawCF?91xK(9mW6T~gG-SoIW(7;#JVxNt3kk?O# zo9;|6`TEq%y0msx?<6WaH&{!=+Oj|K`878YOPzL}f$BpoQ&3acp@dcm_dg;0gsV+^ z=VoMs(QMi>+Yf}vt-YDPayHabLmh4+G3XMG?Qgno>QC8Zi11zX#%Sf2;d+_TF{}~%l3%N#Et{zyjiDhTdqcUi# z!M0@Vu#7KVYPQ|eSiP~;xRDoi^EzORt0T^9QqjUeLB6?sE@S}Q+F*X}+63oW8_8!{ z4$^hn>a|~LpoaWf5UNEu7V#$%vhv%fMDzg>UCwFdj`&*JCkd4MGNkMV4=KyVqRl|T zag%vp&$1HThvrubl6yF}c!kp{>?Mz+ZErD+uwR=3KAG>3uUod!sMS|2LawH#Pa18k z(y;?cf+-4zOe++U6861{%Eal zN2xN-5;F#E2(KxbSAXxo7|#4jeTUZ0^PJ?SwTLqnqa)$IVhF2!vockW z*$Me9r|CREm9@qzAWD*pSoE_rqy1rh0>1cYl9`ut#0`|+5h@cM?{D`k^uLNJ15+iN z*2|~jVQJTsrBu=`o6LM{$PJs)P0*Fj;M#(SN#emXy5Yf_#N<;Nl|Bh}SVJ{BH4FJF z*~m*F+yY`CEStQG{MM1JSZ$*Q0Mkw^S4R0zmcjrQE?NlnF|IZzj{S&*H8~7UGZcZp z{84RMyZD48w^29eig(ofW^-YU$V~#3!!nTCwS*eZQr+ItW)9E35BSi|0ninmFnkOf zDi>rDJ;W$aA=`V9b>0qHeZzcf^fjw55U~{;xE1v(FrPW6Qq7<8Ohmu9aJ3J8$98{} zbD)UOc>2aN!tE? zr{(bHIDhV+WJ-C;GyBr;c&x;p=EXUs7#<`3BhL~qI+;9XpV!yomA!Bo?TAo#)bu8TJ+|eIquy8TaHTW-FGSA zk${+Ag7HhTm`U5E3$BmqpNw=){8F9$*=+%te_{BfmHe2(Cm3b2CbO&b<_Y1iB^YtF>lZK4j3z_vBC2hbbF1fBk(p z5gOc7FPL|NKycC@-$tK{xHnd7jdcB&HWo$uG&YF9}G=jv+32eJ85bqdD*ESUH9jlh@F- z$W0vnCSKNG+>TN9Exskq& z)&Yvvtgfl_;6s^NsZFV&C%6l^8q|2mdp8tC4kB%ypg1}sY|RtY=%ykE93OQFs8$=x zFS%JXTD}u=y)7+&{tTX|zFUvw2lp)~KmsU3TJTt>y>F&w^KCy7qa>3c@er7d1veAo zp|FL*JZQ{_(;jOL#zKQ2mN>7@?@)Y?vJnI#K~nyj@0P3)&YA?w}DIgP}}$) zITKo4*2|C^wi|zK-BvV3E66_|lb!b1m(mqHTB(n6JX+%9Rw*4{vQ@0skFBePoP69` z>RUrE&fnkU$ks-4@r-3NXN^ObU074`5z}0T}bxEcPTq88ZAz9M0&8pK0rh8pOGD@f^o|p@S3g#8@S-uHh z=~`XRtld-|QBMYif8$E%RMisaE+Dk-m$|}6MxGwixd-Gi*YW%yUD75%V&);RVQx|^3hS&yn(bR>!0_I+LfU_d+EEk#?~TO z+-BB5MpCDQbq@MSR_z{YB8m)YX-7^8>cD<*7{|%{c=1m9m z?P)oO46*kM`mGn(&?k~W*O6s0R>36VbbSx#hOX~@f1AVPsh2c?+OO(^QWXJTs*h+a zxIcO-7VmSz1?l3c6tLN^gFIyP{GR0H5?M*u-q-9HKF^XF>Zc66_(u{dRBK^oARXd# zxY1WAlNnyZ=5~Wpb_ZtVcUZ4{taCnDKQMlkNJ%{@dI3XUpkjJodw=aVFm0ddJf33A z8R=E9k{&^39}Tu2kWC+#(%9jDI0Hl-GW^ub?WrGBREkER1#Z$4Ij0Wq99H)`qGY}v z1`w+~oN{e%f6Zfhf}3VOwtHDC?GjCndu1o(5UYXvfwkPp7<|8^Z>k>6r;tCie_*`K zB~&~UqY-8fN(*EN?_~I&a9&=T%x9}NYZGKJ?3zXj^7-+7^4cyrmmtGbiVrpZl=LtG z{~)&`{RS$zXUHnSy(v0WrbuW-{8nM=!pixBbxaN1UejZ0oyYx|5EHsO4RPO@=}tyb zlidND*IuU_A-%^D>PnB6%{DY!L3o$q6tS`pu~dl{I$D;_CUeikCeCg8{MKq42o|ib zy}x_CQaiY+FOm3*kc!nF(H09~$QVv+BI7AJuom`z95Hn*R>C3q_s*ouJAUviy?>cI z$s+BcF>9kgjJ{XBAehjZ4gktPhM zk5IlxN&RiqPjOm|n#Q#V$Ap4)#r%-mZA=-TA?O>YF!SZ3K4=&7C}_*=n?dS=UgoR2 znE8&6{*|Ve1 z#v@P*|KkocN*2h1pVVM7W)fiJ01mxvja8GX2ODiSpVG z+k1%b19M5$UP`^r2=>K%S_H#il$Y!4{U0f}4E!LYSD!L+X;SICdIbA*K+n+Xb;U#Qa!<+e1IC(icw86%Obpf<*?3+2M#pmN9rp%*iMT-yibJJUJdtA3} zY}1p8(OV@_&*|E1?a{YcS$;Wjzad}d^@9g;GvcVtF!rv|BgUnW~OzgEw5o_UmpvP(o!Bt}C1*)8MlQIe(yPpHzJDV^R_XDRD(>;@E+!f$y+ zQki3Px2j_AH{zU%xUw5jZV&vGX$#<7UE{oOH4iw#PIx!fA3?k20y!aN!Qx||k%)tb z!(F!Yyp;gyteDlwlb?ffJ!PSk&Pc}dovj=et#~wAc4>57zS2&~Y^!H<;H8}r%o69E zu=Y3&sFIkc(En7^HLw%<8VO0uT@ndJ`gS_Gm`SOKqJvju706HInGLZMt!+#p_b^?4lUeleYoG;ZpC!|| zz&U}LxMYu2b=IQm6kCsQu8%i~H^kB-k3aa?bRSM`)j#7pl66Zr{1>P z8@ÐePK=k*+Og4ML@3;r6TeN0S))89r)F?yjc?6~ z$riBv)&5ya)TT4cz^XNG`jKp|!t5>M06Bj+p69OWpE`!5K{55S?cb4R=xbI9PJEF_ zVNzmARcvt?yAL3 z^4|bpdGW4)ZW4nS38(}lWG>S4@%T{aQ*)dT&NbdC{*w_$1u~mt>8*>ejNMU?pvvfX>$I5;Z<#f_F!Tdm!RpiKus&;p%r= zy4&kgzLxV_O?N}3=Xa~Bkk7gtxv$IpEk={W)ClJCa%AZ^|NoV=q(+w_IgIKe5pq7v=1{2|)^({Qhb1{(XwJqClC(+=h0xeY zQOQ|OF^4&yk2xQPVGgkww%Pcu&+qp84|aRs_I|zI&*$UuxIf$rrk0#fzC?&?d(WUp zlQE;)ZHKU35B*i3frfIA=CY&ufyhG2U(YnV!w;(TNIl|q-V8w3k1V|?(fjY9+t};H zQ`JgP$JNT#;Phg@*Vp5U?;Ob=XO(ag5jm^*rQ-MA3A)EWi4cU4+QcBzvdJ+H#LLBY zx5sJDa2fl~i_`sk^nxzCmtK9n+0U^L1;)%$I>;7OBDzd5Q5QR+QYM)f6K4Mu>t6H{ zJ|*We$3Oj=&V!A--}b=6*k_odf9-p}*hHv9@Ha+PZ~;j2xr^bnh?0jc18;hk2?*dF zdQ`qRbhOSaR)%=>OF<%{n9@jFkq-)BY>?f+l#Qyx!CTXZWT?8NKq)B|pdrh+8R~Lb zYtG$#Pe!#+^qWe}$p(cKvt!K?(RsidT-Z_ZMwvT>H+flnYH$eJpy9~ZGH34Uf#+9x z6>AbvTmOb89}&E5_l)yQZ~=uwMZoUrYwhq`eiX-%d6qt<_Frt>m|rCj9{tvI;lRGk zwb00CSH|xb5Tqx}vUU{e?F|;(Ls%42hIP!=m^;P{^5E)>FjVC|GBOgjw_!i&H9Qtm zmVJ5uPXgxpj?x)G6lvur$!kTT{ht0iaxU*qKGoLH#iBMI+IuDo!ixP>VR8ftA3XUX z=12wKDC{jILSo}x-}?ef5gjU?PZ(*U7egD?Y!`LUZDH4&&$h{Y0@IAYRiFG@HuAH@ervXGsCm*zMLE z3OY;6=geEK7_pvnHFEkS$aE!HjPcoms$V(TQ;dVbnYjpnp3I)-mFmi42I;h~#~Y$V zp2W&v|5NPuVDtAw488^syS2!CI*=V$`nW`D`dEoBo7`j{*3cfx=tNet&!=~OdTU4h z708`Y8k;vfO@vUC^PJq$EoDR+eh-#6Z#p-DEclDk6^&o|$O-V={k_=HN;r3U(NY3F z9#xr9Wn7Ee`MnL6KT$yZ0Ikx+M+ses?O4eXo^N3x7;$6P_Pk#D{)EJv}gN zRHG#wx+6@wDZKi@VqP&#V29?`69s*lqor@)_7Ddfa9J&Flql9Nztl~! zq!}UkZ>g%DZoVolpoUu;q>>ZiK35I-X+@c8 zIGef1=Xm`!(_vEzaMi>pcS=A8_lqSRT&+Lzwe2k`tYWmRcbf^5!v9f`*)o62=u160QL+pTY(B$pUa=Uy>9VBR!`m`P%Eq?-P==3 zugXw8^AKfI5xQgz;mOp!T&(l|yW@p&jmLb6(q)1w?B^^xLQ!$;obKie1*;>MYk_?y z%(F#%?12J}`&VvMR6>u5ga{$?DmOfd+n(dK@Av7TeZSqb4l(|M9Y@PzpE_2{ z?-lqyr%MqZDXxn?RCm21Qf@C|?S!1dD{=Dku{jGkr{CxNctb&xhKQ7S4E1Z9qSN-z z)^+x4#DWsR+p5yTx8VaHzT85zh+8+%+eFH&U*R)C)#_ciEgME)nXDcLxLF|l4Pv(G zhhjvns%H=g&dk{MNN9U>CJk^_PuS77tqr$5U*C~)wlq9&|KE~_igjKHzCcW@#vHk} zFX}c*6~S=dmFa&c(kz&n_2WykaRSGAUX$lO30y^HhjZx#ZX&}VhCHa)hcw`BV~>^g zmvbp;lD`0u^EOQ=d6{y;Qw!Vceh{`_D!&~6l1oF;+g#XcwJ`#k(@8E{d<&utw9nYq zUm22m8nJngtrs{Ga1Q+*Bxddh@b_N0BoXSTUT-3P8`Hlypwr%Z=qpEkL5tq`n|#Q} zV>jfd!M_Vr8JSjp{7vK6zc6e7`9G?YBBQ+60eUWsHezs2`h9MGjHJaR$Z2nYywt|55s!MY=xu5XcD1EU*RBFqX)YtopydfO=zI*L z@Hj;raB3)-J`FurbEQ%0LFo?PaP`qdcWKiMsM?+oJX05kN-K{aQNK6Lpsv}DMU$vg zeQp}?zWGs1Yb}}f&K-l8+GQ0?FCp50EqbvY)A4CV_4OyPO3L*S=Ij9Eb4Y!r7>Dmf zPDZeUVB9|*vY73qMb2No8|Kr&XUOhV|8piQ+hgp~zqrh0hH3qlQcEhoa$M^=-!pi8 zEo)};I&k5OIb(UKUL?3W$&?qGbw+0F+crG>20;2lVM7w`giEc?b!*Tm1ovq%_zNNy-cB+W!3No- zTSDEzl6u>9H;H~>?lt*ZTiM|-?i+XI``9?zn|0}wb!9cFhGp|D5(A!`t(J}ovt_fo zBp-Z3_xDUb6xR&U{RtkLH%@#*7B?Wkoq zjbAtK5Jv9|>rkCwp0{UO)v%&mm@yTb3D{3x5w2GIuZO$a+V+p<1g3xFlYC|eh_f?a zxzM9O7de5i)gEAz3F>FRa_&bc_=9lQU9h3pyVFa{@jd}cw7@w(kv2t|$77j29g$6Q@txy4*d2So z48DMFhEi0VGO|bm_S|JPp|T(4fE$M3(jIe)4*~|!hXjL{G+>kjjdzMYDt}Zu0?fMW zgv^8R1Zfd1N$#e_ft0R#m;IzCsw!2 z^69?}t1*7BWvIgbSC$eg$0H|@U}1x8@s=jTCg)*-YjQ@KKnVz28zTeZC?PEul~Pwc zsFL7cPDJ6K0|n@(%A_%e0UK=0^z)FUbQ(If!p4ugIVPoP-3A-8+VssYpbO^6RHPF2 z93)`V?d7w>TG)z>=Fs{IFX(V)@PzffTe3iSwXdm0^4FYjMF{+3Hhiq+ z%a!ye0jGoAGrX4ZrGa@^ioOD0g-KJzl-vyN%5F_ts^Bz1tJsyX35r02mQ2gpA*Cup9?!a4XBe}%(^)sCKDdUuR%(*zIS#% z(M)V91}05Bu-N zti?r(gK>&e4>eGjzw)bI?PnJjcXeA)d#KZ!;YmhKVm_vj-1B;LhI(it9cfgJovm+| z7e<_`i_1UWA2q!2LuZ5>wfFcftoNP~>wcQew)lTJK47*DSPH0R_uM5C#54%}2>03t zy7$@{D!^y5ny%whxmg2$tMNPIh(CBzoy`kPnFzg&I#_6-rzhp@8(sEAK=j8casFv_ znJcuxO#p?47z=*dSt0#iDbqFP{?UJ45J{(>3zZyBrH#4LEr3^dBR@0CoB@`jNI>;=&HS&ad(6`PXIGtKI z)IT}PQx!+|V?(N43?I(;i2ra8^uuWk<_MggQka#URewen_U3EaA-g#|C;T0?_Omgv zBu^-Cu-EzIX#KIZiF37)Va+Sr$bjQUXoj0$P_r)Lfv;yRFmI^ND zM|P^33=-yyHUG~KN7VEGGB;F!-3nIkh!DfQ_|F!2BD9GlU^4dFOj^#7^EL8 zHy9VwR1XHt=UGj8Y}@mDzQ@nZ1l*Cp6~QD89uB0eiM|Vd2DjI8ni&F?I{H`%tgEG)lW9~e-$`2p>G~W z*1(1-U23JX>@N;0>r0D=%QjKV%CX&wIy1}bffnwDSXTQhY3`>?xJ3S3&%&TUIY)<< z+pTRBia6_z;xvi`*})62Lq9jU{Xvx3V=GhdDxZLXD?W?jez#UI+vus!|E6r#VrUgDkoah<$|31-b8{6KE zJYwFx^+)$|ox2dovYYBmDrr%an5OBJ-?mLF9Kuf+kV_1Vaz#0N;CDk%pV${j- zPSaB;pG73#0(gxrx;n9=cJ#$1NOQ^TaA`H!s#*_Z;!|HyV05u1pWEVM8LSpm5HS6% z+8y#5puDLqgEiH0U>=*DXI;EAoaD9LxAC`{DzxNs!S=A03@XCf1?b2Q%3mdrPVdMC z9z)CF`Z> z8DNW9YJj{P_Dlk7`rwbK)xPsLg!|hBX;vY6VWSc=D!*qcr7x=SRAhKGK!SxKV7tqy z5S{1W&oz|*IMO0l(hlzS&E&ubb{Lq4qpSh7bO&tY&xlN$2u;aD%F=XxD)uj8W~Z<5 z5%-j8S_3&$0y6-S4hy~ox@{Y!ta>45gKyx%+NM}0#Y5R~z+t@hr>NANj-h%Bv>)@* z?KDy#qyF#988D1TKfSfU>|7h@W5`t48M!Ig{69$Kt-6oTaKV&6sEe|c-@Ey;zb`wb z98Gl)nqoK$e0}xyRcgm0K?pugd;O>K&Q$d3Vuh zt{)vSN37siLI1JimZdJjS9J<52abHf2e(!nd+c**WAfbXgn1<~wG>dFVjfF2CSCt) z(@#bojcJ7h_RRBX6rJDZ?o?^GE>@N`#o2|Uuzd7qX}_{%L0Cf05(ifS032)-$Uz{H z#V5T=dTSXzNADY#v^|ZTK9pKEli4v;8wX38W=3B2OpcTo%ZGRu*}$11zkcM=lhVkt zEVfG#eRlQ`ZFz{s^}G1J$wC+LUPm1>GTthsgX|nu+wgi#ioHau4*l6s}b@x?&{S|@~h%0TatVy9vcwct^wAW5NCT-c*1{r=iC*rN2@&)tX&Y0@Om%~8zdcU=FL*dQX z-)H){hNM*C#>G~x-Magi_%RM4g6b3>L)oCDyuP8ta3)>7CDqW5-Qy)qBT zEA}zT7JyC3gFi6Z&I<= zYxQSx(<>xA_kDlwtV-@~!7%@%$@nOuwk~rFzEBD4*hq8x1oLDqC?g7S2wiF?>yaP< zlTS^8hQ*_+yVSDkVQglH4a+Ee2mPUf35pywksxjt8@k#~dWA8jE|54T!DVfp?#+lt za|+c1L>vEMx)N+}RshDvz7B531$YkF()(BWDeA%FTSKgOe#FzuD31502K%$HmUvcW zK~;H0Pvy*yaKMo+#jT-cADt0x_W(6Tuh?dDWB_*OB6k5!h;wT-uSToqS0p3L#CoLw zpJ+k#0E HZjpW)HgFEd{uU+W*l>@*6+1y1O{`F_(_n|2jCa5aa=l^eHY@)+85Xa zL6%al;_q3+Rz`OxZe^goK$Hj;8ggZgs=ix9g_8N)?a-?@iD!LOJ0r`ncCqz&ySW7S z7-D}pL)L`Wln1Y`U~j6S=L!PZ0<^TbwNKIf&m1>Qvu&;UVwPV6 zFK<@}Kl*oMt^QT4C49ipc@LNCaB09hqoBHNLJghIoEj_`=lI!I;yF8o8@0U*)PR5Z z{SJ4&{BVHznml9z6zfySYO*?Oug=eEb_?QkNlW6yMn?}*u0pHAjLnh#!Bi(PBnQ=+ zQ-EQaF>jgc%r@D`ZoKV*R0{=fQwCCHdy}O18%sd^3xpnV$dT2bY{h7M+W!nmo1Jfh z9kCpaYD;L4ej5up@iAElOrH}{BUlDjYot3>dze<_}PhI9cG-x8{#7%bO zWLun_N`+h~KhP3uY_9XUsjsbHDz94RHvafnViPXM?C<_Vj`aG<+0YK>rz|LrnY9t0 z_%u8lKay&UX$e8MB-sMJ(R|e5@AqX-Jt+h88}=lsec3fXff}KNj_aA_Q6tCcada5x z6KqVUtmfF{^^rev^c4FKH6^#rMfa79y5fg3%@PEwiqmnjc@^P4_F6@6o&TZwAW-Ak z&GVv&ghoks+p)&YKQ{mJE*&un@*Y3y0R9}wK4d-7XpU#P_*HwQR4ejTBbVfxsdCSwG^20J zHe-S_ZC|4f(3KA2+mRa&j7#O(woBCrAUQ+MSF0Psi8|suvX%X>Uoz+Hg639D1 zw!@B!&j&O){;TS_BDDjpZQ>XdEfc+ib%Q)6cs~s{k%Yph&;mtfAeYXY|V@aJCwTP}z=weU{ zBN$~b$7_{oh3fffe8ewlwVNN;gFEmxYpcG>CgvG8^T@mg{7I&OYhH}ujT_Sr(gU(G z8@H!OfB#{wAbk23|Cx_;a$Sp$6;ReG^l9(@18)}@k2sDK-POW{4Ib$&)y0_M_xP)! zxICZG$d-bAP61-=A14RKtfmEH#^*Sb_a};T&y7C~+M{fB#-f8Gf1fz^C+idb!`UO^ zT4-Mr9B168E#MH;k=wufxK1c`sVzgmwC)(HqcSjrYWry*qJ9BKW{=W$7;kL3-}9O`A8< zYP1Wy&Q720rrdmCWI`~w6Dr1Le)nC7B<=R4=G%m|x$FkH(>CIqh4 zEqo8oKk?=Kj-a3LECKZ&Aj9}NdwHk%4tAs7$Z}fjlcBMOu90&2Of#BA5i=Tn3J;xO z$P{#W;m+)|2>@*mP4mpPD{MrrOzstEwA{iac;K}Cu5}?h~m@TRayPk(uf~+Og z06h8oFJF$oRG0>{qV%B4hr$JU!kAfceG+KTVE%3m!>K`jsQkp`k=_ZW#2H8dB4L{86Y6C2=9VY1!#uZn<;nvWQ;2BN~3 z<#5EbXkh4N)k(@Jb_NcVgsbi~HqA_`iMcz7xXuWlCBbCtWTo$q4=F{s6*M zakcK#l!Cv>`JK72-9@GFy;q?AW{Vy79?YTI!|V^P3gP{xVP%aBa%`@g^{*jhMgLs7 z=sqF8jSnuZ+F2T=JUJIGHnp1AjN#p}U`^qP?Ifh5)lz zZ2)lp@2|gw=@si0#JY$fGp4pxOQX+g0>^LK6QWK>?OAam-?-;$e5i_J>xMoN>shdJ zMJR{Z7_NKmN!)@U?7Kw**nBMeilU>XsG4FzGU|7eVJXFA`uS%j)ojpt3H2?lci<#K zuljM;z#2n6Qqg|NvCqCWK3l-DM?UQI%way2S3Z39CILg=Kt}a14eYGWW!hIoTLx++ zYzLYfW|XOKwV2&IkOk0f;Jyl-b(5}%{);Y6@YJBc67C-;M5dbHlNJs{9`dh{=R+fP z)9a7z$(4;J5V#Z*PJdjS8e^6rF}Mo)h)2lrFQe3&)x=oDY|b0KU75kU7Kt*!?Iucp z6mc!zEHD~C=k+_sBbhHm{$|7<7NP45dN=BG|4~o*UxD7{pWxT{#^zanfI;;F+B$6` z^%H+VHM%mi_blqgAMwIgtV}=i+<^9)wvw50r(T*CM696(hXjkCwmdXfg7i9>6W-4c z7(LYR5R@|T3GCQh7Ur?zEq$pqKv=TH7qqR6mqB{{%91WMI=sP1ifzPh?6A?OXZ;Ff z3B}O};HEgbEIGj*!;)*V*l7Mgx;$ZsNsR(%%YahRJWO)TI)CTq(l<&xKz;`i{J) zDb3n=oKQPtAKwM>s{^s+T0+98kzhmS3hvLw?1iBn^-;u~N@PX3-OwWiOwvDPY%y7t z8UQ8nYos8sdt@-gxUT*M1Z^C| zcgtRvVW_+5ZMfJpyJc|o4{Q`3Mi6_m2U9f`b96GDI3edhMA^Gi<@!-mn}ob-={vWt zFZc6IP_`{Ua>g3J3$qK}Bt(>}HFc_EP0rw<4QpV0*t@AL3!@3;q|b6Bpn`h5WbBR-1|A;^o4zgnTd`TE z_%ZXQ%Zn<1=ti)tzs};uirVsteDI~@_M-$I`mOj(qXnXsEMgb@6KctM(*goti*}Dn zy32AgxW~Pej23mQ{9txRyzj}OHgQ%V=VVL`dTj2MI5g$>4Y!6R`lcE7zkz0JKcwGn zDY`gl?knjdX>CYk9emlZUYibs9FCH)#zk7C)sr^DpEMNk}iU7$4XBjt-xCz{Yu;`BGGn7F}iLSZM)F?YgV&h^z#5ua9VmtaeaZ`N71~(C9-Ch*avhs6`o)K zHBjlc9_jry%kjsb6jf_HP@!gO-~A~>wUqtU$v8D;CwD52v`e33Un<}Iv1!^m$4l%Z zJ3!{@a0876V22}?V&-BDg>U_{s(#=mdTNCOuoTxSUspMCTc-EGfD|~REPg`vamTfA zk|mTO?C2oc6C$F!8fmi^Uww?$v-hF-hWkMyd$}4$vO{Q8`8tuewAwp-S{6EC33_LX zo~4>_C7lge#~W;3EhP%;r(L-%@284<2_Yjrix0WaN)*KR4V+y6v(<`HR0JYivCD=R zbd4TH3C;rAstmaG3PwxpL+^K1uR`N>_U1=()Lu^2pU_x|k`3RBe9XA!aH9QbJfPszsq#rl(tShGfr@- zg!o2{4-8+)*Qy%ww*Q|6@N3>@b{Hv^5yUVpYqQr-h}#=o-Dpd@`f*X<#&Bcm(elxg zAYOo}AzPP1Rjhn9Mb7L2Ys(X=H3_5uKRRG%{-aFfV*8y~W@iO+@XDM=PQy3%xDbAf z--))`g)9|n5=IUP{wHQMIMXM)bZxWFh1^O`(3Kq#Wu_j*cNkex8) zCExYv7Zem}5mk1=7biSYC>aaIj|GT4V9!!|uYUrR>&*Ia!}LB5&+@sFN;OkY9u8R6 z4sEl#j>wqu6vjJ8@%x8vl}fi9=A|)eMW6 z{@g@0wD%^r3Cn6p{SY_sdD>oZ?H{SCLr%gO?QQ3jjnFng?v>Da5H@V^tAXEAy|Vzq z%(T3<{e98kB50%cZ?&njeMc~%NVqZLQU7%~zhLQ!RAzVxa_%+E7TFOYpd$WcC{DK% zX+O|{nP{10|FJ%;5i)qJ>ek_K-Y|k!_pz*JiaP}74V4{rz$R82h#I>__eiPj@w>1v zWOAiB3r8$2tFx{xExr@0S~ZwO${~E?^JahY?J)}h#mkM(r!m(u?4|l^r8yZk`!;HU z!$dFlhjio;AA!xH_#( zkc4_4{t5_ss<5;Id~g)#UphK4QhO2zT`mk8)F~|*UD(K6H_;1D=mB7ELVa(W$d-E6 zzlhWMhBy<+G+Fz1cjv2-R%rZn34USY`SnRnX3LM7Cr5x#_N6Z3Ax9epbRjyCAnLRH zT8GZu9ZY~hL#5*UgVh3i8gQyU6Y=hthMK$kHb6#pZ9I8;cI^R(*?QiQk(Ks)@@Kis zUy(R5H~snb=iV2`gPa*Dt3jOX-`d^xoR?GSOZ7@(sxKGLh2LtqH9qk5_{QBQqa%?h z20gDdbt)Q%FRU;SFX&o=E%WaVtBN<%%>sK;n?Gc#fy0#|tu|{nP$mT=WxV%qD(Eul zAv;|Z?$Xj;o}F-hZmdKKCJM(W@t@GW3iBNI6Ta>GP=y};>k#;zc6Z%pU=-lE`dArh zKdJk+LqtO}ze}62PV++FvPNl5^`KYV@+ty0`RMqd#AY(WU`tA#*D_B|CMH3_jz|kY z4p^3FHiJWj^=J^n6XQr45;e$m+21Wwhc4{L zNTQv`)9!3|Qy`C@WX4Y7+6JhP1f0^WZRdo}))vFykkHsG;GI5w=*>+_ATg%Xq@c9mO`{pT`v3z%^1~(B-y*pJenf=7iAPGS7c<4V% zp`RvlX>q|SGT5lxiCfSl($`fhHf+?%Q{=(Ucd4>_yd^<8%gem)9uiOIb5@qCZ*okQ zt6oh8geniW2b68OkU(Uj*Jd`Fosw1>igGE7bS9LXEq_Lb+V16JivYTG@9E~f!7D*$ zlflDME(3fNJ&$4agmDU{d!wvK)i7gGzL(dlnWdq9WWc#Is3&mUw{o$94{V-q;YSMX zT;0MJLS}RJXG<>6MFyxPC+jcpJJ4fneMPo$FFopGD!6GMFMsd3RUBdys?oLo?gXTx zPUvcAQ0-kEK4$=9I&_+*qhZ^yZ+1@YId}?o7u-oL;S;UcHf*hzsfFVsN1Y%U(l5#c zx(}D!bo10u6*%G)55CV8t$Ak^D;uaTl>tcjDiW*4YOQ+yn6imVQskq+N?_(;IVbor z92VVm=MOTG)~*VFXRes6T54L=ubfVrk8E2tHO(=-73q5BcuNuOhF{p6&~*V}eKi?S zI`H-#XtQO|Ab#2nAYi8}EcrZ)JFZEmVTO^`r==%l>xcD<(}2Ea`EE!k5G^q#?W z0O+X-%KL1yShXaf8!h(0$i`jCi&a80zHtq^UkOX&o`84%Ou|Mb_(`_$+9LXg`K-T*ScBn;S80We{>YH@rN2QJqIKEx zz3$S}iK%{C&LZWradhuv??KgQQ5A6cjSJ}nxwJwK`W0q-{nCzitox%U?ZoNQPGs1# zo>G4U?X6Y6{6Ly``-i1>V(ztG%jf1yEkIvnQjzv@csx9zC9=5%-Ptk`x=tZJ)X6it zQRI5EF!HRorx!JRjDAE$;Awhnh&SS}+}y#DLyt6m*co^&a{cH-Zp4^} zeu(5kId|tgK{C1y;oM6m1iNK+)e;23^tPWTG8vi*(VH=(o@pTLy>FAXAqsT#%-#om+q!Kh7J?GL)sa z{}mYJg16e1?xi0QL#+JUJw-YPhcmCiOX*OKzSE)RrvC{h?ZtG*8g0lI;jQenq0}lJ z>oapd7RM?>69xD~8O@#3>^x0{7V z|73~6^=^+Rz;1_ok}@1Cds24JNPO78Bg>-D(%JSM;r;Wj*`x0EyD2P&bSE6lUpLLA z$4>--`2)&`RPyY>f`Jw{XO0Z;czEZpAf4=deBp_@d*C+p} zgdnuy+K<#uYEIbCEPV$SyMya-1erO(^xr2JgaT)sJJ4b$0*THNwH3X3|B@zJeu9eD z9w~$9eJ9|A&r$u{c9@GT>4Vx#P`D-u(`1WoQV5ysk(y>T=UI9meU}WwZf3Gg_VP&C zc+kS>Ls0hO$4J$HOT9Js_+-SL%)=U)`9!OakmY&Yo^r z+Ca}pKpVZJR(m599hVr(*h4S{$d1d-!tc`*dgXS*6|O9T!fh_fa%Abu$AIH4);bB1<0qcy3n#;j_*6T*SpTf4^-JZ${!Clv(L;`> zC*-T>_a4eTd75LmJ1URoNxDNpmkxW7tWB-^bI=$K)qJlk0`4{PBryxXX@F zG|&&!i?5kY&V7|!4gBy};4vsXtk`6`jVwp671{U)2}*owI}GImKza(j{~?>cj1k5^ z=38WP%iCVPBA%%EGl-1urSAXPj*AIKq6K(wc8r0;W_B+=-oyu1Ge4_M>YSWLjY#X- zmG~kwd!8@-S(q2>T{e~2dl+V1A^D;6xrGAh^sKP1tL25o!~XpWwMbHv*j3GXJT=~1 z-O0BpFU%rRC&}ADxCA^qdejg)(EMh-5F#98gC(7M4U^H7oeokrQl6G|8Wr{^0lu?3 zGQDh3I{(?{Sm@DW6K{%#4@kTl{5(RuppMULSF7IqGb)T9IVI)DzVkr_ixmD}sJ!ci zpuUKm?DY+r#OUz_xX(k56;W&H^j_foy2LWSEBi5@iT3vc=rWh5nS%b$s&{qYTX{=) z`n)e$KW9_;@~FE>FXf6KcDM9-xrrY0p-q2eHn`vOc=1hxEvk8#`>0hK`mOSe4d9s- zUB?h}k9^;ys8@j)3FN-JR|{;`o2Zk(Zod7lQ7H6ZfUGs9Vr2e2s{J)c2LX|MXo|h9F z-JXMP*HP_I#0E;uD+~cwTC;A;%;Y*GMx1chs!G&cnwrhP75mPZj7KV3G=H`VyKjs2 zF5Vg?@ec6(AL3HhJcXa0XLNGD#_VidOchm89 z&N2~}&pA=$ztQvLU|t=d%sbm_oK-61w}$^7d`Fg&_{uDf&-|_R8_Moa_91$n%$dg9 z9yUmftKwD?cPo8L;Erbu-`H?>^rdj3Oo1)#MQOEzh$}X>oH7_4Nq(onOck4ZUjcc{ z4M=H4x1A~Q9*XfF#(8gh;F|+{OwvPK9UsUk=39M(Wd_obI3PoR&prixK0j+eK)7lDg%4|SFqZPL912-_zrzq|sAMgi z^HKq}bTd(ECz3^S+HXvr>aSgng~(5;YG_*81-b}Ldzm8@Vf=H-L#$uvqP>QVDski+ zSP|2l(+xPe7^nZ`%1;iF%61qd?Aaa>vz7MQa(S-^amhF#MaAjvJ*-jyU&EtYX4&er z_TG`)g0w6mkaxJCLI)16$xTmH$R#yI8lD!lYVM#ksm~hk&Pwsdg7+Mo+xgt)|!A>;T~d8|VYoC%bAE z`3`TC1-vRha_ZsI#*c@XF9N3n+Y3-xbW`j|q;f^ef&?TW3+R{8R;zJ!Ze2x$?SEIN zy$3wa!{%vj&!?(lD_}yuSAI{&G|_JDGzYT29=C|(cYCO*hSRHTJw(cdXcb>qeW=^3 z;2Vx8P61h|L-Ny5Ze975jH$SLse&(gkxQs&eVJ z(kDdH4k#LRpqh2F$vv{FXOS{SKW(l{LoRlMX=S~?<#8;fOM)Qq7H!LTZQ3Mui=viB5Nt@kvowy?F-y3nI z6~--0PqTdJmG7+n#5*@6DF@sGz>)Pz=Yf2kUE&OIDr)#zL8*Gs%`Bz()hvm3COy_s z+CHE6{eSIR+Ov%nNzCYEg`B@=4m7~v0-RlM0qm?r)8vGzp5h?PSN!#uL%aiZ#{y?E z%M+E2!WA3_cSbxl-8-Y$BE6CDnDk>^A zvvq4c$LBXipSb+9@n4wKah-Wfb^KGSpEQvt&*oa@->k|SImC|?v2G;*s_U0NM&cJzzOz(ZPW$_PfoRh-3+d%GYd%t4 zZj?WYN7qLUI{N^XGLsf#f;jLN5qx-y+64sS^o$?U|G^i9daFDfKL{Z1veSClX;urB zd-OK(peJ08aUQ#wqm=v2}e#oS@kX?xV=A+42T9o{I<9mR*e0&(6JiRC4Xkk(gtbp5aZdN}fL`sNL9=aro2~xk#~u zbI$K?{vAj-4M)KTNkr|So$OI&(%`pmUitL=pWlA*O5dv^ zJfOT{`V$oosnEHbaKDsHn5Wppb4){-%GZG~<}ai2{KfRpm{Af-YHy6CwZ zsZYa#Gg@tXWIaj!c`9RdCC_`779c^HD#*_I<+@Ga6gnR>6w~44%Ni82U*H>OmTyRe z|I(=Ms(J@K!V#N%N?0}vgRNgNTBN9DDTA`DE5_W0ek|lT@Y&+OKhl?BRjn&h54R4& zc-QT%WIks}Ewxo@1Va0KTHU9Bg z`Z@HU-tx{+BgB7;9ov;IW%syDiOZ;dk5vMImO`~s7;}PrsLrOCy~!UKCQp^}hczcyTZWF<30J-74?ZGy8E!?!7CbNgFZ zecb}vCN6s_dmUqyD*JY2>)K;tmEIvA^Vg{y&p6gbz`TwZG2|%F@~|*8+Q?+=*^?(r z4U+0QZqFZY{4FqTsvaiXD*nDHurE$z#^SoA$W;H*vwxt2Z+j6 z3?9%*2^7Rxz+0CFl7Ab+59OS{TE_m$8J-w2-xm?_P|PmdziJ;w$QaF$^-ztM00gGbJGfc=*|$ z4vq1T8BM~F%&0fQ@{gT1o=JG)-m69;-W}vYMUok z9g%H6lc!UjFp7f2_iy2gKQ}QgYqRR}0)@B4t0abqBuP+0Iv7QxB?Qk3S2$vF^H!M} z_u!7~`MJ}=;#)cmAL(5kuB3(zsq;E#s}GEpME6(SeghBfwciaHZn+H^&{4-IKoj^Vl^0uA=KrI{$y#3wM<5BS7TXF&dJts9T zZzMzNpLut9zfC_S*mv339uw53kdBWC*ee7St96M`1C^dm?l1bLn&>-t-|oTGWQD2R zGaoL1PwRLN)mkV4SCh=so~(V#lP)XCos!8nxS&zX=T(x&-EtvJ;o> zWqAAVM^TZNA)K%m9S3zk?5*@i5egnz&Ys7@^( z%s;U6+O~Rj3;@}P$lG65qxp?CE0pZ(F@ppl?EhXBM4cgWDvGFHmpO?Rr<-%hAw2s~ z-eZxpXv^j(#)^O{DC~%*jf*+d@2mN=C=09$WjI3BpCsDjl?_7=DC&9N24Y5C4VI-0Q%@v+{YG4F6cooDRy~GccfhA~ywRWQxlM{;+zaE2(0#U#wSNR77tUMO zAr19m^nM=cEKs#NQ@{^E{VdbDGhN5(3;*GDaOw=dS;Sru$8N0tK3STo-zlAA6;m=w zV8~7IaivQEV9GT-pP{>3;;E8RIrF(kGOM2*7YF0i(oK`;pZ2BHR8JoSJkk-|`iJ@e zLm>5?#E3x{im5jhgjvTw=zi*JeHoLxY%-SiNcQfL%~Rn?UEpjm_ZOBK+Kn$sGR)|x zSk$fJyv??esgtx_z}5jmR~(A!%1y(fmA(87E}5bEo6~um{U%?ZFo$m`hTOAsdlnu0 zOLH0VqkJJ};@Uv2kw4}2z~2Q{3kU0DMJ5_^chK6p7At1Y$_{U^8aXk0&e){pEX0z{ z<3(^m!BQkapqYq$o@1;FUy3~f*s#36nV{g9+K&s5P2K!In$G(z$;E%;nw6D>bv$KG z?0C{jgB;;PXq+;SgF2RG4k}lsxCbhNqoi_{8aXjd%``3dM9q~0QE_j@g%c1J2=z;! z>-zq{9{@bp^IrFTzvifF4(2lRBPW-vw+gxTAZd#j&b(92kByP&ebd&&`0mL5&a_f} z-><%2XHdL?`i{sgv*6>aWxeulqgBrWd86p6H|u#$qqa<51Xq;wU6q{kL0pK;2N%g# za~{`zkC3|6I-&Xwk3}Xnzw9Wj z09HJU&E$cW+JeaHT(H$r-!sf?N@-`a+&e4WrF@;=cvZ2t?xA@3z-K9KoaeBTz4I&j z1o4F`?)vgb3Wa;;W5C^D2BI$0QYFu2KDRBf3j1#aWz}!#v+4o;r={&h>(~79UA{*u zrc?XmTxa8lwEFE_M5;xcp$Zr-&y0g^naN4-vxv4xBlK>ry{n6gU1XYXaQf@^p71YO zp<>G4`;uuoVxSJ(JyMBlaLqGb4X@xh`66p3$6YX@)l=ysgY<|L;dJCEcFUcdOY@`g zld)YoOMY9*#59(Mt#ccTYOvA|`nzdpZ{e=51HkQatfOgy7BYpJ_+2*|tUtf0MtaIg zirG-*&sE*2E-v=&G7nr{nQt+(#V%h{L6|?1?W$59VSg>PXPv8?p+xHc>es3)SnWsc zrP3ClHjBNv>tkD}0blSu*h+lo-9{`PyyLYSC3y2}d<5B|kK}@H;XnG^vAQdE*h1`@ zPk`7p=f;M%MM$}(HJf^iOP>%zFHUZ%D6kz@;%d*UoIpeXoU2E=bF}&As_0u`B48zD z#>>=F?*JJok6u9g<;&^3A8i&Rb0y*X?Cj<5JHVcI^AdMrf_>C3Ty}JtrG}P^scrlr zeusU);9oQC#0YqX`-3~(#yXg}Kb7QCo5eJ}xTy&LfZFzV!t55jxwN~NM|-hE#?VOy z6|PQ?PzDQ?hK$Ptt-Z`7_b$f9PV)a)luW*|Y5!7OUg`CQUh~e(*j*8TrraN)0_PHZ z_>6iTXUA7OzVhX583}ZqtL2}MG&wp#Vg}$Yz<_LruJ+a~k(8ryXE}&J@ST9vU1i7^ zpiEWivT9v|p0zh;HM4zeYH$1URA?zBujcOT`65IL>uUp80ocV>8}pjI&tqn?C}_}sGncQFotwIRR-ezS8@p)1Q?+vHeFr~NaWXySyv2Y; zioMH%6A!w}T&4o>s4FAme<^GKITRb*YChSTx__*knQfXl&)ZrVyZv6RCoC1&dL#`6 zq1Qm_YybHur2=>=w>`=zzK9>p`BTo7ajITnqw_4_57%KSc&sexSVLixt0)Wg<*jJq zy#g@9ay4Tl=Myx*;Q-&`q?_si8L!pK)Q<(Ey$s_Uv{0C+>nfFQ^f#MJ@yu8+-WL&2 zZO15zmQVhgY8iMx>lO>5H@TiNVSt( zF$zf=HS9_UqtAlVPxF$Qnd$RfRMck|yUy$*XwfOqL?vhD=?osupK(Fpc+?7r$H=Xk znzPs61GdZZA5Pra9C%6$^`{Y1|t3HWvF*hv9|MiG=-sk+e9gE8B`l0G*;+;hWj zQ$aiol6Pk@YRl3Kl#o;bwLqAfLU3~HEAFkt@>>?*4w{Qu2Uh~ll<1$pr%9tJL6ao| z*;NCQu6+BqBI0USkj_@{f%z2(Ih-u<^dxET6bU9_TR?e1qzf|85Kvb8j0>q(oP9pS z{b8(*_K&PJZUHXoX0({3Ru3bY%0}%;QPVv+Ir|Ks`?vjm7TL*TZ;*b>NV2Uqsq)Qc z0WI0IHW8<&z;)&T)F~=USkvy&zLw;Nv1t9xqCM~l2JIe zI1Lqn=0`tp7|bor*TlKFV1r;CR#wTI(I^^jaKLyo`@u(Q0^0Qqe$I{m+a|k#rOF!2={8tw!mQdB@H3!2=p8bG7?u z1Gbw&H$rz<(PCuyis%>r>V&oy8Nut==7OEWJPnEn|oBZ82`X5eu`n}UxjiE_x#JbmQc%@Wf`wg%e`kwoU(D zr*H1^u5BUFbEYYWx+&f`Th$ZRF7i!G0zc=sJt1~D`OpO^u*EEA<`9Q^Yu{NwV>A%l ztNZ3=O|WF(LrD5+oXS7m-KIsXSIRH&iUzR?CZIU+ZFXEEe4hDI8L8hOSqud4Dado3 z;k>VBX#ow|=a~y$q<-w$o4=fTwq7CaYe#~KdLIyK z{KuFi3_$|FL9!UYjx#qwFE}F~ zMCH+s^^8~IqCuh{0BN}7S~j&Q`&L5fm5&%^KxyJe0rZiWa-i~t@y1B)F}E@`Uuy_? zgPmuA&%N%TYaTH-TkmSTUy6GWY!+*xDz8_bCm^ZRGkX>EH%34s9)lD{ ziKbi!;APWm*csxF?vMQ}u0n{WoLNIf^*Wgu0SAyR_O;i93CCRDH;&c5^UHWOBnf&h z0v7QZ`|R~?-l1_pT1wOhP{16`xbFy==HA$`wXCb`p`DLT?K}oJHll=R6_#QUCjmq{ z>s=-$%;bh$DcNkk>~mO_)g-QZ=Z{u{>O-&^*V#DJ36{u&@Tb6>crc%lcocc!o{}hJ zxv6z6709s+elS^w(fr;(ST^T|c*SoKJz`}6L8w1FgObYHk2==nQoA7@T*uesm>eioakk zA7FPE$+Tvgf#;UC&tIeswaD1@&0OB)=y%HUMoYJ+-n%X-lj1(g+35DVZ?z#Xvl3Rp z_mw-cWnGV?d#AtV)u_4EUW{k;FS6+MGy(*?*KeJ4m zJs|x-b4{k6{mI$Al(F?P{i?u~gydaL4rn^tLl}G9r>x(^DV*x1|KUcc;@mWce{$j- zD@vv2((BpBn5G!)Mla)|SZ`!6rw9<1m+!-hh6l_KxTVjuR_a*l+Vc8|0de|UeF((> z`8@H*Shbw!2N<$4dQJ?T9i9ZJkhF-Kl2#iC5cecp zXn7hX`9uImqNvs;co^A?Er^2I*;E zQP$PVJ!cW;em%vSVycxWw$-$b;qBgUR`T6GBMkWqfl95$?sapxV63AQDvH{HiVVcu6 zZPirke(zC>=A|85d@RWOmDroX^3|(AL#pK5&GN)sI?@^pehGjf4r!gp*RV^+jIoBn4fVe%{hH=9VLFKNJH zVFBQH+pTWwTY0DovNW=}LNR5pb9q=rG!;TMRe1)?h&}+JmN)?~^DI#*q^pzEDi&0p zI}qF9BQ<8fy!q75{^daTzxDCl4h7q>R9x?nU-+Waj2qW}qkFt|yCQP9b7vF1!%-@P zA#2vkVynfFbxFD8tc9mRX1$5$cW369NjJA%FRWN@#9JgEui<1}TrsxT77%ATn_Z8w zvr9OFgUvN&zi0ZYd@%1Fg5Fvr7Z`DyxO-=!9U%+zI>5)6XWQ}qm})KqUC)nlkt6fd zC-dA{rWpF>5;Iu21<|ZN(ax(UtT|o@f$k$=D?HPDtZI4onru1IB3-c|Y zR-{eRCpTZaekn%+$}9G~6lu|5 zB>9Uq(gyydVM90EZYXB{6jPX_j(1Nbtj0m^`+Uzh*>d)WQMh4B>rA7x%HO0*mx4?F zdS`_6JVX%xG(**(qGwOj@@8Cov^CLs33If0J1+ajElDxvop6D&0&j;$34bHXRq_o1 zv6|O@{hSfr##MBYMT^+MmA|ese&;rhJ$c`BC1u>U!(=$D6DY_w$6-&zO5*k}KF?~F zgvi=I^wIw2BeZa(^RGVK6+LbCR6n56)mEEb+B+Tg>eic-JG!u|GvsA(Fq#(yk~3PA_w2bveN{M^h%*Ib?94)xif5b<*Qmmcyl$H^d#K z-N=G={9=yY?o403G7!b;emT_Krbn~$(Y?lI(Lph=0IkM(%AD05C&w)b@PW&BM!v37 z{v1DN9&v}o9=jljkZrTW&Q8P+DWg7&JoaL^m&5`@Pe9JLS02wKs^DRSeICdXFBJN+ zjx-vPNLJzfJmT{T6{mB}18VH)&AUFVCw~4 ztZ#ODv<=}u>v2|UuVkWB?BZeU+Edkkg9gz#IzqU)yA;<9TCe~{j9&Y#Ua8fe7`r}zxqzU9kOAq2WhPx-%o7{ByZeuMh1lA*Sc90Oor2DS~`S3wq6xhl^f$)dLSi{x6^dcfjePQDh#{*absgWx;V znGt1FSC*7kx;yUxNw7N&+@2xtU@jHPw$0jazMfh*O6m3avq(2)#)8zj!2R=1iq#fy ztFQ7ERvGhfEda3Mz8T^+XjUHC+jnoYIu2lG5@Z5rqUE1icsuOg`gI`qXR;9qM)N8> z;cYiqGQtrraA8o#O5#z)0+|J-As))wOwdRx#@Iw&Vq7X$ABSqsL3u$@KR4&X)vz*{)AtYESJ``5xj-t*(H1XIvTi%xeh z=XyoiLEIyW4_1K)^^Iv}RNiq9`i=NAVj*tM-^+5Uk}iA4vmR~+fUW{(P-|ivyJDu6 z)RE2GlgTNttqlIEh5TlHqzd1lDKb`8%I^{3GqRL@pYW9b6m?JLZ})Z4#9MXKW-w^_ z(XWKkBwnVjU=$(idTm{m0CLi=+`oU3W;jJDZGmRx-OvAr*loetRAiWxe& zX4n$-m3tAFOU0(r769*n`f zr6@ZKn=DNnw%Ijri-*h2b(PI^jXf^(W}epy2AjwmliK0b_5!9_x(|(Trr6uqali(~ z^+~;2ujFlB(7ganpL7V!H>B)SA-HRd8y3ppz_&lLFY ztGG_$TJ*jkXi(*Yb-l~`|EN;a+`@y(Vn!FC{QD*3GEwo51U&(4Bex}tTumh}yPMEr zcjCs;@)N^)1B4h*;NRiE%PCJkikbw@Q>E(9zA_@Txr8YY+%(aPtBGO&#QYDVA^M!x z9ocJGRznL|A4L;k_nfnbBd6bm8u>GY%Vy@npS8cNKaE(h`uX;iY2&gGDOSs zaG5ZMAbsiY8@j!Xr9&-;(LMp5+kkef?P7|XPDbf)2A1)G%S@Rb9`CS3rGi8g+Gy@{mP_N(D13d8*jS&46pDyoPFu~SHF#!2< zEXDS}3p_5nQ)Ab^!E*UafPUG(sJHN72Tq4@b*+e#=+!OHNPvue18%!UyHD5$*5hFJ z@4om?y~nHd9MrP223SaN>>B$hFO~Az_GgqJEZ^Q+$blLq*HCe0k7X-FWPegdAt%0b zov7cMuztZxQ;j8&=Bt9j3Vhm1tp3p?zLj}=*FT>O_e*R$o4!Q`*|Ip?m6xrD|H3h< z(f9OcOQb?6)(v<-GUEt+{12^tW6YL}joc?78TzyQp&TRMH&dY$lm?qpQJ<5jlj^gpV7*n|UBW+= z@F4ACJZzd3t7d)uf*=V z{@m>4u%b3w@b-?DoKSI7okM#fTmK@x3)D7${|^WKZ29B@&$w*ksJ?A|vKJy4a?$}jM)KxdeEx1{R`2;cGGnc!dkAx)86fxv zuI0eq5&F*^4~9nEYe~vMzozpV^mdc+0O$G7U1qidj8<+fx+Bo-^FE{1(BT1MS^17z zw9Sjng7Z!%jzzfyH)>G4%gQ^3_@DB1&r90yGBb#Di3L2jYb?J0&7Qu#im6UR)WG@A z*ov+haiH5!>}r4R3UcJ6lj5YIm@?>@1}q4m&DR7ii=mTmX4~+43SBP{7vV{u78xs^ zcs=JC#*k|9lgN9#rMZ%;-dxkV*lU3e*h|?V8|Cwpi7cny*(|-!-Ge0H?iWwU8!JK{ zZ8Xx2ty69uBzci?DV}^9zS+jM{l{;)%9!`TjbrG7)muhXCZ^kny#U<=f!e2Ed39Zj!YFN*+3KB`#v3V z=)uv~!VX}|Yj-{%1@>`N?bfent355iVss+)(ctJoAaQ^o2=1y64G2wrSY^Yxf)Mh( z&;4l&FR=WYC^MDrPks$T$I75MI zs{EXd7j>2v`M_skfyp$X!tcJnJBdPW38uMbk=F0|KGvx>C#EkS%o6wv$;voYTLJdV zBt0p;b|$j7tA^~!OqK`<7}JZYiaicPop?jeU$~V4)}#cIE+~^m;E>iPV##tyFdJQb z3t}DUh&h8|ky*(5jvYqSnWUAZvRpgyisd^LdDyrmDf1}xeeL4a9=8mhOM#MN1XZ-O zgpDzOCTeF{<3e+G%Asm`rp(M!K2bEwuhzf98aNVPIaJ4=@B|N0Dj82s)-g^RW0Z7d zyuvV&SAR5}uI0CyJz9mr_Sg+A66+zObMwMBoCD5{e<`J) zQ->s-tZ5oHa0+cY|1hyP`xxig2Q2iOJn+}dm!)TO+(=ugKL2Yd4!eU&aOHFF3*6eE zM0=t>yyP7~Ey%w4acjE?tl9!wc_7Khenk;)I2#1u{9;vLR_K5Gf=*rVXV=q<^Cdi8pi#$WI?b`1E zeND?LtgHUO)=yiUakNQq3p$hLel3;AHQ!U^UhGtEd{QSS&imZ-exFa-ul1v~Mz1MM z%;X)?@c2B~azs>Zxx4X8q%`I+5k~AJlrtT}*9@?82IUmG?oYosJG0I(`H7FIYIBi* zEthgx-H{CM3rkMtbW3~8M@=6$iKU%T2ZPS=?VBOXqvM(G<8u}c!z>W1_q9gmjnrEJYXkUj|7};sNZcCy zO^{{YR1Tr2F9WL}XDXc_Nr2=I*Y<;KZ0`{kv}F=H@>Nkn@l*p&0fqCA`uNt$ke0k= zwd^bl30E+x;0gclki)5kcg!x{86L7o7`t_Ov-qWI9Y|4VllME0)aKW3LcNP1(RxS= z=lUkOX4n6hionvkcIB4=j%`pByr4lGVPDj$o?0EuJ+?Y({{ZA$s2?0^2)v#j6FE|U zr`pd5{~`LKk>uT2K2zfFSXmHYLOZJEfAWhVC+qb82)sDh7urwFH)YCLcFj`!H+ zKUULEZX$hq)-5x45BjRONgM>$@L2+_LR6HZosfK8+(rvOCvpR0Hx^;Idxq=)^gd*x z(xV{^w}KP|*R@bmdJi!&#axpR>=VHj$bK-4^)}Wzh|wsT+wqI8@w{O?Ydr+}B=xg} z=<#&n*4Ly@He@kuSia5&-M$mBv?kl*YYXJ;GfT}0!NyS zVypZPVaQp0ucX(YTKlCQc$dU#=OSM7TAK_O+^WT7Npyt=H!2B0zr#%wY!Q@eh@Fqs z!UT9~>q<8XRMKXLZEWvKj!t<`XtQLq&4S-BKe&`0-Ho;@UDg0Hl$vh)&=n?G_S*_m z$r|QWg29GXtPRO;yI50>(DWtXX3Xnj62W^*yt>8t1cQ_Sb*3bqCT5FvZq#k%u)9Rc zM3bFf*FvaqV zbwOP_YUL$0iw5Ph7Z=2_*Q+5nH~tfunr5O&53^We;;H^wgF+Zh(SVH-0MjjGYW&b5 z_s~*K=V$}(hUL;~=Fybp@+xt-9Piz*^pUR({#z~BjbMxj-(Cc$UW_ zwU6Jojaf8WyBPt19P|wtvK|jq!Sx}C4Ne=H3pnSkL=s&RH%(Op3cew5%Hiq!W1uY6 zLTWaJ*K0mv7dTC$tgB5vSS$@N=cxuewSO(;TQfD_0iVQLEA|=)2daL@86d2(!A&V$ z4`yqgI1LW54UtQ`jj$i3`cyN=9Pkf`eKlZakte_Gvek%+twRS!KI^~;5LcBgWDI+q{b351yAeq`U2|Io=)ikwWv zb}*Nw^wVPh+cD#RQT-*`_I)|Rghkyp1`=Q?>MNnKKJwI>_n}D4fBvIFUFv=MzU{eL z+P^04=$p`?_3Ie+^ngKNVNl_0i(T-H&T$L1*NszW<*Ez?QWg<(6K5a_;n6T&-`nduXKF+X#cvg*AHSnkIzap;ejLc2iW= z%C$!VSL}gi{2R%%7mPW5=!0?cfhDJ63Osn%(EYFx*MH+%lug~$M~ED@{IEOyoLG+# z@?Zl{fp~&PYbQKI14S+d9G_7NyF$AdS%2V)`NvnyV!(~&rWw!g*R%S>@xVK65~zXK zwhr-)l06!mWlk9RvoE%^i$@ zKUKXEA!R?j5 zo`!Q#hyUkI0y*)2!^F0c-AjNQvZ_2fLBKFB8*3aDLvntsd5ph2DI)>6Y9r9NsMvnr z9d8B-umbMes?vP^3&fV*L;pKYjni;Dx#v3fnJuUA?@8CDPew#V%Ab*w!;GY!)Gb&I z&4QB;-FYBwV~mVMu%EdECSFFSrhc&T)E10ZDyZex=CUTW_?qLvtoPkhN%&4DNbW?E z=|VB{`DQVTNfpVd?|ox|i+`Q23X6R79Vsax6!xWpk0kn~F z4PgPnx_2cTZYu`0{w-TCZAX>2v3)9w=D7z>J0)YvLQTD6ZU%^5B}s2A9P`au7Y_b$ zu(-|R88^i^VDC@sZ=UylPr2}NqNgB9fmEDmDRXG9|EiR40dUyo0i1WN61&SY$Ih4L ztu6*zEA(Rb@{z=6dnOywHGj^jzv&EE{)fmoB zJ1M6iSkdh>1}&_^dVqXaf_k36q_pdY<@ka8hgDbsRWwkgo>@M!gzTV%hl#9?sH#>PQQ+YYpk_c%JtX;&zzGf zQftn^XscZSk;N(hQpR^kJ9T5|L9K*)@ZQPgF^h;OZ^?2@_D@RGg?cQScEw-jm01BOPtdi>h2f=}olVN|Iaq z=thTAS_9a2^7mt1qo-Vv_ctel=wTPl?V6@+g)(|Ijzb4$K z5q8lkXu%%P$6MpVK+8v4hc*%a2Eo5CFAp zk2~aONt{j=V&rPwpa~WM)4slM?$lv#y+q>~?7cEV1kiuq8;fg$SduL^t+|oQ%@u_~SLmvGPqk*w`tX>U(GMU8o{5JHvzvy2f~t zSo8;@BvxzW(#_-V;N-N?ISHx25q}+#I79iE?u$VE@wvoSgz|-0{{i6o2WWN09UjaB zeI>X^^k*;{^St3@EaWu5_6_BU?n%y;z}8O|CKmW7+5HfJ&FUv~Ka{?HmeqWq`AJFB zHF)pSbI#QMg^DH<$VG?)sl=IFIKY57^W8 z@VVx+del{W+<}^7? zWmc8(q8IQAcB$Fyc#$cmAV$_>Wd}WmX}Rfm!*@kJmJIPV0ua5H5Tl7j17eRtF}g;P zBCKn0EqU25MpS22-2{ungnT}K*lLpXeyvl7(Xm<={z7w_F4n2_5fn4_t>-^dnJ-Igs%>lj3De zMNos)Ms=wJRt;giyWF-J#Jet@_L%qm8~|4w5G6ll%UwF`^Gzpsq$IKMDlAeKoi`x*3`regXCacC*PHOLw-6N`HlW)K)Q1y;a-=QxXkv!}@ST(pQ za{toZ3Fonnqq#-sGcME&>?PcLccbCe4Ayd2`3Df z18)0gR!!--`!$y^)1T#w8Q@DH*W%3wStD_h>=paun;r32Awo7w zlNMdfxt`Srz2NCKf{hnL$Zd2iPO$Tbk|M8_mu7#Lw!RPBi)?kG&vzbkViwg(l1s8` z7gi&eDB$l`#%4d5ppGv~_F44aT>lFuPt%FW-O)RpE?5InQJzJEy_Jk!NtkhJcUx%b zYoidCKT3|cdR;kn8~(SJl-H73tNr_~+CRN?-=?#qKiS6{Nc5d|%r}z5&mH!lpNdCF zK4PU&lw%KP#v59czoUrrJA8FN{!F{Up6i{-;nNSy_Nq_(Ik8Gh+h)Eygt-nscD7qY zPg6Fw;=nt*SB=L)l|J7=#~6xm`*dngx%GXb5&&wyE~Ov;aHu&pU0?GYuIEb#L$qH> zF$ef51x82r+7vz}f&w%Zx?wU)9y2ZGV(54A5eN&8YYxITsd<&4Bt{q)1&Dv&SPAuM zn8MdQ6#0FgFVtr=h>RW1og(fx0{M+%mfoLT&H8bOU$HZShsnwda8B+D#~m#iDX!1% zDbM&m?U8YG=X-3htDX-@(A6s$5Svgb*?{a_*#o%$IhagGT>WPnuBYG13%|WDwb9e} z{H(`Yg8b!Ay09dU+=Sw8nL)f6%;hKwTh6<j5HjrzhJ-dP zDvR(^pX-YJXK3znTK8-T`)|c`{&Fn_>TyPF)M|>VTv`$CjfD2#O)3a7ZNnOWN;06V`zv|Bum0PH9fcC zl?*=2$&=ko1Y5`XTDE5E)dD=;?HF z=p!vyV_XAmwg03lv3Rm|%b9^cRF>LoRHx&eLbhM}OMUKCock#w(MO*#E1g}oww)-k z+tU!_QQKv9zG7$5BS+sI$0bZ?7y`}CpbCzU9@Jj)I~qph9wdsRvtKf-W|a{1L~~oI zL3YGh+-&HV`b2Xj+LVROo**~dZ{_B$@qI}Gf2b-tfF%7Z{bp+o>9vA`L}gBZ+sEvztSL5?WrKHaclb#;QBI`c#g@AjnZjsrSN)~dl&QAvX-*#Qb?XHW2(ZVp19r_EYEQ4H#*C2E_8OKMu#x;d$2wV*cEY40xwD23?r z>ZRqN$LJ5}38mc+ZeF~vBx&n^K$B8bUn%WYpsnR6iir;VxjrBw zHO5+zxHW@cpX!ISCo-UNSP6hc{k<)4pEd+jqi zoS!ptVYaYd6o_paVIV)L;mNxNm)ejTlpZ~Ai@k3#8{&Sg>+rL>Co!nBztY#b++Fs$ zw_-Zt5%kFf`8|gFs43p-vp7k~=&%he>8k05bcxZ>LG5#Lz0(DqWM=#HDJ2|hP6-Hw zAKHrF;~lRqM-{}c$tmcy&r!c~OgH69yzkW(he{2#CY}h+>5R0fe8zoOql)udZ1FeR zcwRv&8H^>8WyQcHb z(0@(QEmc|E;I=CWlAA1gBEc zwGH}_1#=mSWDKpRkF<@>{1wRPN!%@S8{`M*QfTm4Z2Df%+r8g&PT}JJ=A795jk^ny zvSICILBh6Ss(%}M+yLM5=#xNnH}yuS)neFGlQ{$52EC2-?Qc*8#p&Gq@K($ne}P%Z z>yDfHNTMiuni1;bxX%v7{@WzlocPlEqgNbRvNW%xSXOYS0|mzq%{)$7Ed9|0|0-s~=$SRPeN?wb`m~O){9~Aat4Kqc@g#Cf* zH%@R2Lo7(FME~oXWoz(mxih182V#EwR@1FHj0>lPmrd=hO-(|Cc=pwjuHY4c8OERj z;rJ`>7%|)b)J+_NxCS`3+Z--pqM34HFMg2n;9)6g;cC%{ZEMguWsAE#yaa-c!#+C~ zUMJVzv*IM}`mc8B_am&SD!@_Hb`ZDRb46pFeTZ#&P49|N+^pFYg->Y~}jaAifHMyBuXq9~kOfsyXfsdsR|5JH2Uu5wx~e z$l`{eQ$c2J{YYJ&t^8M`qb@S%mA6^hh${P!YX^gKC9mL*qFrmHfB>-`zT}sdU_xv{ zTcx_~0d2fL?~;}6!Rb$p>~Nca;L+^AMJIUr0fgh2#2*&&wS4YH3CXY4gJ z$3~7JvC+L;k)C6tqW{E$qYZd?L5fg$fXS!>0H4!0YCG|PRxLE^BC((#6V$QRDfCnl z-d_QMAd^?DxLw0JmX5UPnK`_jt6v z47c-bS@0(Q8h69ou!P%+cI1z_?uFb!Xfj<(6oIcD)ih`i2rPW?<@5rbSjUqdma9b=Jj zsslO8^;lPol-1~eNQiCE3wuFQrsVmQ9bR@chGru}5wip-L5L;p@>dWdv;-SkV_@r0 zzx97Fa`9lFAZG|fcJAyHH*uGatb7W|k~A2LWLmTehU9$ftz*Ec=Ei*QQk}w?XqCqE z)q^4FhI7$Ul%D{zcjxi8uoT8)GVy6FEsH2=p~TDH3>{ZXF$_hujBwJaFYjHRMPY1e>SXS(t-nr`n-o!zu98EiLz z(qB*!U&s27VktptpP?f}(f0xshazsc(f{6L-fgLpiVh0j7{QIqA%{=mm8@^)s>_RL zZUwnUy{(D*YUj7Ev{%4NbMjA26jwIaT3DM__q`6=n`K)=x^p)LMWRux^>sObm9LEn zbewwV%rbMgQ^)XI=v{+d1k=Hi%*E@hUPg|hbZQ2Me+TJ_X_<*PBx*m}9vsHZr`-@d ziP9+pi93eDxAiF`yXeOPnA+7%yy_U)&Zjva+WWi)lyKi5e}CS|a`-7;RmXYb`htVE z8gdAt>F=MHh}q6owvXM<9%LFj#DP<5r%amJ5T6x`%j!43(CyrN=;&%3*sw^`X4^Y)g)z99Si2EQ<>{Cpc^&E z5w%V&PF&CT<8}Y$*E#9g4p>w-6l5jAj5cm@&3B#XeA7&u9R8Hye04l&^8Zghhr`HL zgj3BoBsFxsC3n0|Q|OVqbj#gPOr$ArFE7>@tietNklgEp-jeLaT`NK`1XY$K;1dD* zh|Qi6j^AL!1#-;W-qfuds~7IH4+Nm6rRfW(Tz{3^-$R5Y>Jx-(ciaeY|=wSXQd5w1p0R9E zAJ|!8*?5Ylnt3@v?#r-td9PvpiK7CCtm`(6CPf(r1SO2+R8AWyt%RX?HK(^1h>WK^ zCm2#`U(FiYPJpYJw{G3~AP&;uj5hQis%PZ{v0l~~8}C?#*nTLF;cEC^R7|>vPd8x; zQJx!MJ91*9G^=k~(thN;5j(?64_Du9#ksGfKo(?kd_QEwE?WT#Q69ZnP-=SVw;Pp9 zvlvUNYlT{-JCBDChZ0WIUh~tQ3VjmTJm+dk@9gNOR5b{)X)-A@#bPIy+dl?2NY*l* zg1>gG)_2&v@W>M~`G9}Ja+UUOB|%?VB(Lj#K*J6*xHosY2<1(uT|xu5w#sAqt8gR!#z)SR9ED}=bsOgz9}xCe)4jbkz`a1WH!N3YjE@Z+PcUrif9 zoF-ICbTuk?RhRM8{BHqWl9H+ki>=WzR{C`Jx!wdLWXhTeu)$2m&_xt(Vy~Jf5gb8T z?!i5^7=nZ{Mbvp;7ER#PX`@5Sq;Pi>by$NaBjWR5P~aaGPvd@v0hJKWB&smW!0P2q z(U$D_raZ;9gFm0!dHODWo76bXNJ$O2Z51$CwQ4BPFNQi|W;M)#7)GPXcFk5S?8#o$ z5&p0G{a@xqfcv^^1^3lT{u4}||1JexQvR9JQ?zIEQ^4FZ*2WCJZ;jr*V!nlroEmXEU&#C3@oc^vm?g}MdbZEaDZHSh-sk1;cC*$;#B!`*4*v#3c! zgWY7HhW;id$9td#H;1LBU8`ZOGg$Stw})!r&v zy%<{RB;GSf&Sj)i(nHyw#IQN-0qZ`N|H6Bb9EE9{6+3y>TO>WGa#?B(`oZ^JQj5S( zYzyU9EH(xBnOARXRD|R&b>==Of+pXcD1usiuUM`erbzxy8)N%7Nu6 zGzXQrj$3gvDl;l)nYl$XwNfKTZb8L8LUE<$Kt;rnfS`bgKm2@OzyE-j;PX89bzj%} z;ve=ABsdu|`#P1)jny%Gz4~BA*{4;Es7JH@oXGO?vQ4+sx)BWq)jrI#%yLGsI}R)B z%pg+@JHCc+<(632WT1lU%tX3Xo(j}C3YvtCozLRdlc)9O3{uP7=Veq$2DG2IC#5sp zM#gf#R4({)-Fj9!CV}6y$NK$0z~2dyJNKoP?0a#4 zCVW?J?(59|pl+~D-sLk8O_faI)iqFuG_wT?kR2fZMi-Ikj@77j{`r*Y@*+X2_x)c@&rmVcmOO@JAUkk9B`h}zAly9bdUWzd?_MdhP}v(ux>|}zu0LWw?q_tf zP;ZZWAI#npJ!s++uZ;4n{l}O#9ed`bOnaf(=0M}fFj2%U9{*846}?+fFZ~yG|6l>$ znRoStp%M2mBa|%-obT$J+Q$p$OX)asQsYBf3d}AX70;_Pbg4O-M9uqQo;py@_Bc#+ z?>(UCE4c28m-7L*tYvH8@Av*YUg!J#3e35>RkS((S(r{q$K=O)9nL)$9laNQ8G%Xohj_mI$A;X z?$2P9WY4px6j0|`r)TI(0J$s`U}w^;^c?`&f@Du?P4tN$Sg8x0A03$J3ffzeq%l(U z$LEk_e9SG`6M|f68Ng@n{MC9$+l0mN))^o)6qTh$>l2GpskjlsnUi>FMg!=*UM7Y5 z$!$v$GF3jZy;&<(a43BY9pP$`^{1FbNd6LD>=w}$hO89SQL8N>zK&zl^zqD|o-+5{k2P*X z#t>Q)jSWJl+z1F^i_N5h4~2ZYKrudizbjug*BE8A(I0Z5mF%P4%s8RtLD7oOs?#q0 zcEFJQ;|uFo6ev8ZGs#GQSIus+`b?CSXL9Rdf;dc`p(xmU6XTDBy=LqgQOBLlWo3w` z13aGzd+lomBjAI@6*3c~V)pt~f~G@ra#?6DW9%9FyqeRZbB}Uh<+RWsUlBz+M;>OZ zG%NN46yb*K;_9?`SbgXKtn~5Xy~SSUphtLFRLDZ~1X9Z*RGD~b3Tz$99{ke!Ep&GD$u!A-iu2+oIC<{d`p0xA{3Eyiht$M5Vm@Pk@0IW_ zGw|wVoKZxCPTHb;(5L+!VDXF$_;=XrW6x1g#N17!SU3rPLtV>8AMvh$qd(?hH<7n* zWWZULqfW;aQy)Shj*0QmvWyOJF4S?MEifReql{8oJH3J+1kk#&L`lk%Z*r5NZD}B4 zE0|_ai=(ZSi<>=vl2!)0X2d;_FhwePff%2RDTHfbxb~POtP9#|$MMA)EQ!^6e(n0vI^ivRNY+}Y_A`GaY!DV^^O zvB+9!E*GruHM?~C=}CnUV*$~*HU2E$Lg1v>LMIfjOZ6BZP+&W z9r?F`wd%c@b$J*vJ#-DpfGT!nK zZC7RvPY8x8eZczRuMuHQ&)(olzkiuBPLQt?P_Qj~(M&ObWo;BpdUKGK*H3&%zsF%=b(F=12dQ)wWzXjK3N=!p8# zOwE%lC!GXTBZJ*%4p5+H>J}YWMzvqa*N9e)w^oZK`2!s=DRnk5Q0}N5!XQENVsl=i z{pQt~2n7FxgFo+>ndco_NEY)k?Z-%@8!dY4C`535X6X-0{K^nk$!Pa?Ocbpzl?_YX zt$JK405Agv9=+YlU!QDRJyQ?XNp}&viKH)-U)ObP>y)wF-z+JL3VbzxAQElucx#5P zB1`Fb-36XmRdfW(%3lq>auq6iCnJOvp*<}^8nOxb^64S1>B;|Yjw{vSKz^#;&R-bSQZwTk z+#)MR61CH{3z@umr*hN=Rs66!Q?AtyPV#?iX*?X??Wh_k#?7sZg}neo`|4uk~Jeq=NEi|q^S_lmlRqfBi*ke;e zVs>7-qRMA;QatDKj8JB&JhObwe@^X@!Mq9Ms9_j8B9KdaLK|nzwX>$b=wuufAL3fd z=4DEsDh)+*hXY1?0&mOKTDt(fyEo5SlLqt$YK zJH?C2rTJ)7-!30~QDI!FaxQudIk9>%z3_LpIg~(|KF0L0Sqy&W80KOP6JRvpy{`8C zN%7o+u1=M(b$)ct_DAlb` z|H#@CGO4&G)+p%8x?T1kqlj3pa~-2qrCuO~tx(2!LAr${91SPokHsu6UBYakTSeG? z+}nzmFegGVEAqD-d}Io6+;OOORlcF_R(^Q;s$8`lm_r-;T8l)KUU8BwT|Tyy+2A0R z|A)fx_&I(Qgy}TH7T7~%7xGckf@#MY#5aEdWnBM@zNOfMvTEQ^!af7`iG`u&5p!mo z>2vW|OnsrnXj*F*j#K0>q;^HG`z4|aDE(&Iu-Zg%^>0TZWUdTCs81>SJ`7#s;h)=g z`5l%IF`Z+rnH%AE6hO7n_i;nQ^IM^`b)=gCvZT7|vLDCU<;1B=XNs4*4-ZCd?#Nb4 zFJ#@8K-C42%5^q02!p{DUsrD#f5-<|2+qxwVAPscZNHdlRH|%!&NoP|al|dihW%q4 zBxdT+TNndzl+k*0S*O!=V|iGT{qkfNf90j-gw^I`G*?R%S(U(gZaV+BDfr@SL?frk z+7AMpg(_3bJpATo>jrYoBit<~OxK2@UY;xKbd@qT(gK+&8!!%(oqnmT)!zr4m(KU9 z>CmleS5UYDN&!7IobPzk*D{i91usVwl>&zBOZ%M!eMHH-oQv&mAEo#yp~E~LQ38%n z&~_h|13BJ1bIjVM=lQ2f-Oa~HCgUx@o!NgQ>BFDScNXDOx$^JQr45@nJEaxnB07`5 znFi$MtXjr62@-z$Jr2EcWLz~U9MoYSexA&EH2Pk|d=$V_xVlcQ&D|sS;@2!oGJZRA z33#`iV5yXRWojvPFj-eFAiQIp`Q48TuTl%|i~hFRCGJ59enyhqD`sg)CWjz@Hs>^S;o`Qzfeh3EDnJbw&YS+^a8apD*q5Gof+$U+2Uw8jR(^@PtVH3Ur$ zsjz&E?O)nj6tn4rQ=F-&O#$Q4MY!D0rXMHhAmh=ez0-aK!|AE(VG0nWWrOl~Vru=z zC_VVo(r3&-6Dzd_m5a@l;5EI}xcY=`Go^71ynYTcurQVu;JM-@^YWlV>%IrRfL@FmR zjDC0@17X+Fnzr?4u9mBWL3tjpYKJ-hV_C3YMKE^ospgY_Cu?@zWw zy8ML)yN7XItgO|vKgl=!r-FUS2KL3?;Wh&a4SD;xAiB+l>fgFv+%mN%sLZR@3T$m> zhR)XJ%9dzlE?1x8!y7Cv$I;kYcNTho=L(U3ujU-hM2XVPyK~8?KY^9iaZn(?M@to< z`=YfgPTG-n-%Rkz+7>j8d*o#A#OkI5s`5ezE8#Tr-3q3`$&Y|zk zF>is0)x?a~336UVL?pm-$3iPq8z8(+c%RWqhW$WA8K z4dV5h!L8je9pK^-=Qdk^JJb5Fwc9`9v8eqsW|Ko!@+arVK@gB_(mcu`EE=Q;b`LM@6f(B2lNj2r)2Kn z(y@Y8UE`f$4XUq*p{772-6?vDt;i7m!34_msP$Cm5_s{ZZ}qHe80xet%@f5-i`ktL_Ru6#pmjAk>NBXaATEHB>nV zpK=RlpM!1sETl5FWfMD*bGYhrc$a3EI!zIZ%OCH`A7&?D(?c1ZHirDB(>8=qK{+;^ zQ=9a&(pjMF_(1(-5#JX~$(&fY;`HE^+vsyGAK9|R`}&z|M(q8%0$J}C@k#{OR!d3D zEJ4sNxfba)FAU3Ne`EbMv~%d#(7v9Cj{9I%@OO9b8M|Mh*V-1VbtkX0FB?S!4LKZ( z{kCLQi?$se#g+sgyf3@7BY>gTk}*BMn-PcILPUwP5M;VLBTY!1|N5=W99G&QW+_K& zhmmKxR0*r01rucyK@34+epq{#Lr_$On=c5vZnYDmdUr1LSFvxD%sSGrOAXo49c(#g z^?_@(&`BJ7O>`9fJJ}zi>wR_zNar@5+X&5vO|G*$cOHk+#e-vb`RkH%FB2;Y9;trN zrl-$b3I4QLJ9}Jekm_X6pBYP;9jYmi{glf)RJ*l)(s1Kl{Nt4uab`apRf8(MhllzL z$4cxXhT|e?*8KWKC7gS-I7TguHF=R%mnk3)FKiDJ&b-ESm(^+SM}aj}de_$^K{91q zds+f(_}t=T-Kn|F9br4S_EVKt%E6iY)0gba_thVwn&g^h$cMSDocQhWr;o^h0t}Y= zNv-cAO(V%phJDS59d((T1pwmH0^1s)QkaSngEG=kCYAD20(kFAom_h7v7J1KK5EsW zTlZS|m&GX(=BvI%7$q^Qe6zA%Qo~VXKKxQ$UTgt&XxfgXEL->N{O1@*J$ze$nbbcU z#9Qo=cL(~vk1E1P>7EFBI@3^=+;L>I{z`vA-Se&HAir6$ac82yc#~1=pnU+@@xoU- z-@xz66CL7h->U|gUgaYGtugaT>+Xr7nWU}K8W^ALRdm2gY|Qxgjq=uY;Z0msu=x2! zb93&@aZx1brxBXPTf>JG^Tb%?4A#Tkiw{q2$h5sw>zeP<7RW6yjKx~dl|OFsoXe>4 zWD~&%r%ZxSK2u;NcSK(|*cPvrIE*Wlt=NrD;12EsYt8f8%^;=xv6l~!kL!RbEuGik z@C8Qn-w1u=p&3cw{o2`w8FVv$ZbNG`4JYNWdFh$yzk#p)m#ty-|B%$UITLk;D)E9# z;;eQ?hUkS9n%nOJ-desNCInz)KeZCf_i{!a=0P2UZtd^MaP=C-%9WP7c^f4nVVZTOd7Chx3~-fNo#`tF-Z(gb$=jooarJqyPR4)GE__Y^h~S zyzFLbh#Xoap8m|A%BM1a(_VEJ7|+*^d@`LJQszno zJ&X(fu8QBZ0&*8lzL%ILv_HFH_6&;1t3--E((vL6paLWBLK*I2X@XmUfRqcLcNXlf zRduUIe4LQ?TaZ#cek(C?7?1?3tzBw2PTpte>9jFA?6k3+wQ)qu4u?ooacFMOAcDSl zAF>m7BuaIrMR&PNe@=nx;$?3$FSS5PxsMyQ-jaOG9Tk2h4!4dr2tT4?0ojVFSmsf! zIn!i|blIX?Mba^CqiH|^%Cbk79*G93UCcIUe`K?D`DM@PrSI_*G;L2X?T+}+viq)Z zCrj|10Dvp1-j8$k5Vs8YPP?VWvr6{XG>95Bux?C>p~f2Uzb zKFK|V5BHAoZJLSidZ>DE&*%eO8l;HOYL8SfBGlVDb_-H!T*J5RG^78>iZ76*u(i_5 z{4-YJbF8TTm#v7^d~K;-P8cC#PwFWn<>q33-+bEg8IWQu;W9|aWp=$Gv}M@AguE}J zs>5bPRx6Ph-hhkmup;=iO?NRB`u&d~T~6j^?ob@kN7ZeP%2iL}?DD_tavFQqd5ZYq zau#p;;>4lf!m{m~BNcMrO1m${#AU`A{U>R?6hd*l>C5`+DQI8goSx`7RjjDJ-d5IH z*nOKkG#l*(D)?4fO>sl#Gfov)EajxSeJYkUntaCoYtC>Hw3uKAqC9c4P_=)Yb2%a8 z`s%NxO5xL7i9_az_2^K5x{k60*wV|AbcSV9BD5 z2=14j_fUZI@7MOJ{U@ zzD{sAHK|P7DQsBybw-mfwkR1i{;`7$IfdTVnH$pH3LYHG+Ty=)RT!8IhkrKCIY)X? zuW8}PdMQJu?+({*o)1Lch*vf$R2;FJnK0@okRT7p5JCs~#`)`p!pg2c zVQ9zqPWHt#+g0#j$i3?51!6Lfklq83q0EUFIh+@XSO7=LotoEI2+*kQ19imSP~BvZ(jmy&r__^I&bdwFcl4XY z(cJ4g4nswhrCgQw=Ag@eJ6NY}{;(c7?53lqo3MFV-Z2BEA=}r!&#whL`{BrpbMndv z8CvVic(VtVb|KRStKaSFU+cx9cL6}rF)Pc|z=T>5bm}}wZkB|tlw+W zqwzu~?pMoXQ(r)cH(Nwe+ob#mA#RM1CGU|d(&epQUHqQ6wF_~lg+5R}tAEH?Pj3X# zm*b`V2DiE72H%(h7*}2V!{Qy2z{OU2?EDHarcTih$pz>mX3XIley_Shz~Upjmz4uT z%@4I+i(chF%w#OAeXQcC$rMfsQvxEil{Y^!^whpz$Ab}oA}7CrVu=foY|C0L)Q5Tx zaqWk=5@!#QLdn7X&`1y$gV*U+zqV(EPMZ(M48GkGggm4gug8J_!KxBf2~V6Qba#tU znmRM>`DxO|p@sqjztH7}bzNp0dZaB*2Po$!tLW%+*Jo$E{>FBH%yPhU5fniDbw=er z?71PP)1W)}gmWEhSSiC?3GuVyY>&bw_tuQrai<5kYV;8{DeZLE z)*KX*#hk4-8*;uVhb9lr)5^jxiCTb&6ThN zL@h+ct6}(Em66R}Dh9`BCx&xQDmpgwiU_vMt+Eh2vBD?Bq-|K`j_Az~)C?`^;9sxa z_y?Xm3pPJ+@qCnm;ZDhaKD6IE06cl=rMb$^yc6|1ipvk2&3pCg+~t!ucPSBO$N4rH zIJeA|KPxeiz;AlPP7y0MKNUJsh#Kg1e^jfSbGMuRj#?-@gN6)z)X@}>cHG>P}rYXF`Ff5iqa^nRF&b{Jv1@#pEE%#ej&Q` zleYic8<^qzgpf4{K=fUZe z#h1zghF;4DEYO)*v0}&ar+}jdtx0YlHH&E{ZN^{)NynblBGEni_y+$Y=!m|0Lzw~7Wj*n>ke7E7{ueB_!-kc+~x#3km4K+o+AcPmYI% zJ38M`KINFA?|K}?PKEX1)rN^m;gX<&un7 zDSN)f{b5yTlO)40A2=PQ_I)Lz-u%2f=LzO&=~dmZaAgH)AGQTy9`K$|7(V*H<#czoZN_R~_o&Njz$O5#5$rmE#rew5hVzsM$a z7f7iJl&Yi7KmSHaQgK=<#gYAvmx3^4GuoZd?PbrP*``;(@1&onLi=2+Ycgx9|G*`JnSLzjywB7QhZSCH}U(1*S$6 zvV(OQJ6fJ8)k*9D^rDkCwpA>cxTO(SEANA3Mk@YBQUbN%INQh{W)i4Kbrc29}L`+1ueXZ zQ}}99@0!2PZu4V?>|L;(CGRg(Obqr(bK;gSyv#KoLwVrpl7AJ@Ri8Pe?^&YBIJy^t zM)oQ~d1J_4MOViJm3Q~hVd-}$+A~Z8i>Cm|O$Q8x?)~6aE~8eo>ssnmVj_6Hia?kE zHnu}TnGeTamA#!mAdl0rC4333VIx!A{B&QNhsB0HgKJ+O37|IZ{9J?h{O6%U zEOb{!^>w{)nVV~|A#W7`KU7;1f)eJl4^J58s><){XD~B~+RlAR{ik&RCBW4|bJ=Fq zsvJ+{K&-hprInN{ep0|uLZ-G9mMFBrkBViKa)~g*g^@>U#Asm)o$^x3i0Ak zhUp=z*1Lx!|9#C+_^3Zh0=!s`uYtvPW_yiLpygWj)QV0cq`R?yMM(LH@EnBm>97QE za=dC#X#ZZ!j}l84RMY8w;Qf3hcPU+GiTHL{V7Z|G&qV7()6smr2iT2;QG46`m7aTu z)z_H}tq6p86dCU=fY&(C>~a)X^VkL0B*KqOcs1!_l5BdMIC^#RALRvKzs~0{dv`eM zhT@>HckoafUr=!IsN0ZiD^B##;Xhf_wR(o}gmC)Z**g7Q)I#z^QSNxLnFuWGUV zK+f8r^6uqjc77Ll^j}4dN(MG-#cOK##?V1tPcfp_{c&B|WUOV43Be--d?SW7cYbYt z+9pszVY82S`CB@y$EI^U9atA+Il@|f=9|6a!^8n>yg=O+6R(`&rAfbv(jKXupYDI3 ztAf#K!Ou~z1)ch89u{=fX{<08A=zItM^cRJynd$op->!3u1;7%{Hw}f|LCi(iDR83 zp%|lOZ&&(e7ePy%vVb`i52a&Bcdn!N?bbkR^`RIo!#N|e^2|Wp=dAXbw~!9x_^9^~Aa!0sEIFZfIKSNRlbBS&0ZzpyX<^1+)>4F$i2$u8V< zW_hYpkX0JTo0Ei5!+eWd@EqJp9O|mphdI*cM#`+l7EiSy68bQ1_SjQp(@Bq}nQ|(_ z8iuLnO(=$*>*}pVW7l=nP;afsy3gaN^@FZquHl_V%bW$B4Qj)jwe{9vE56USLD0-C za9z;&mxQIIHpVSg%oOZ_;lp4Pvd+e9)mG)o&TsrLi-)|~^5(|hgc|iSTbH~nBFHB< zbzP8hBW`zwHoo(3Tv*NHu7!Wir8TuhV@p%iEo&51RXu(^IUn!J8vXP@^fbIVF(y(C z(f14>|HR;cx$<9aRy7^%>w69$ME}4Q;GjmoCqCM(KAdTPYl(e`gbs*a)sma30_c_5 zvEDb#kpd7@GjnyO2Q6v=;Qp8fm`B=RH2o66lb%9V#1l(VCFS! z^bzCvlV&cNU}MUUPO){Ebd^Sa;BE-Q2s|5d65+iOxlzQs{(X&)URNS`(NA%LFSzjX z-tv?~7p?2RO*Y01j~eVQJ2(X!0?IgkWrj!tFF6eOrQCe!1(HiYtNJR`rM}WvxPjSP zsWeR_aw|ncgWL5X#nbgs4X5L_pNIz6BL8tK!x9MA3xz<_&7f%F^OC*2YOV6ky5cyH z7y5hwd=RtbtT+agM(TMq_86A}edU>Y@BMksT8(ot(udM5ft+8#zY3AsxsD&I2?T;5 z3eJn_S+D+u@0O)9OXhq@X2#$lE1pU^N2AuAzNaQ$68`XoT`>Piz8bSYTxdw2dVgz0 zw>PMiZ#ofYBin#F4#Q)5xR8o4h<{Tn;@DxPQ z<2X9HvqDF?Dy1o8b%vAdtxdhgV5h$&wRM|=Zv&|2s|AJ`hFi6^Io@>)i8##YJ!0^| z7m9*^j)_f6U$)0edty*ui)&^0LC&+S?e9I9)nt2L48rtw*(Ispw-2e(>Y33Hc7$cN z6|gfZLmRPIc{6mdI$C#P;*Nc(O{$_{=yxNDN$$50?_}AIs_d!n{j1E_zsqw<3VULq z$+EM9d0~yA8j4j8f^Cn6y`z(2R`uq-A@~Ufxb?k0nCrpyQXNn(0?c2!@vF~A6*SeC zC3@V>>viLpV8)$|o~&Bfmr=c4NBfRmR^v;7D`NOdHD_CVH+L(Z9r&|k4?jv;TF+?2 zw&_~CLTWC}CgfQfh9~9yh(_BL;RkRuM$t;AnT^g!6!8+X-~RT%+wTIu+c?NK;CfS$ z3L#o@Hwo<^Ke+f`x z8yMI-0EVD1X?iLs_)Jq>-7jQLHyWdw((8p|iN;`^O}(Uv{*X6Ys^tZbW>nGR$=x#_ zR{Uuzg>vMpWZCK^`oQ|)7j$b>JU>}g2YwX7e|IDKT<>*|VtR%4+ga4J9n>b$+cLYS zir3QFeh7}biu8n+rrh6Hbyi+SbK8eYne8K?S)1vJU9!hFS=SPw#&R3H_C~4D-gi-;;p_W_BVXl48gLU!^479(7By3%ZlyE0 z%qRC>{X`Q=cEa=~P$`EXn+X^N(fi@2(qGRwV((0}D(PN}To2i&?NetpK3Qw4`{3Gx zrw`=D=GnBaMKVU*0_?hR?+0L?0{(i)fz9b?H6N_Zs?<}{8|eUGRY&bBmiOeEH*D+A zE z2K5!ffS6mPJx0KP-*-?GNKV`aGeE3%w!9{05QZ9D%j=&c>AomAS9}3T7sr-C0^Yg* zi3@AYh$^Lk;JaZ%YU=BG5&DgB*--c7CX2G@mA^N5TqD5a$_`p2dmlF*x%V4nie9-yW@ssQT;CDGiLAelYVD(YC%_dD8Wy9C7ri2`=cY z+KVwwJo=is^5>;amyEZp;K=QG%I|;P=lbXQINZPaG9z3aQ}uaB_daN0P9O+3xDfn> zbp3CvrRpo)&+C;+LNH_JpvpM1J-@UQc7(r6cA-)3;mqV|?Os}>I7J*U&jq$+>Afi8 zx8}u69GH4IX1|x`o?EER+s@oC2gswIuxfkfp6|{??ulMvkuzLps`$eu)q){Kj!Bq^ znd;?I)SZ+}Sdf_9uLTcpN56(D z83EYp^tKuv62wMdr>l$yuOZWJH_WI`9Pd%N97*=%fQFn6K)&GIX9vwe@ zFz~YM=Ds7v(R(|e=5J+-U-hb2=~(}BOnW=7BQmu6@Z7a3fsrC(fq&(G^*%10ePV-J z7(Gwzn%vVN#jt>crVI6do-t0ll3X6WtM%XI9j?l+FbgkmmpI3)`k41rdyxe`iF>V3 zZ4?z>?h#BFQpMLW`6}1%_M~?(+k@;=ej@7&XrhW5DRo!iRh3OBgv!=(Ck3imqO6Xx zSOr7RFy^2lTgK`iQY%L#>qOQ_d=oSUQstFN(Q|?3F%CcH?@AWAk6c%2w%HbF9w=e* zp<0{e$lB=4PXD;2*^9;FFFIwt2)}Z@cR^XF;9BPt#U**c(b9lZ*oyn!Xlyy4%H9$J9|o># zIJPnA^N`lne-H{~L2%ya#m}+b_m+c-y|=>8Ium~C{{qH zQ}{R3w)D8d@GrSP6+p%Z))(vW=)v_P(%Qc+>O21OOK=S=v|Ja*hSQ^Ec$S|!a;Pc_ z@8X~I%McA^LlfNqsqkq8M>+FUWP_=|_b>fDq@a&i^x1=~vhGM7Iw`Y3T|4C27{ zv!?YnKKs`f&oqC6jRWe1(}-XHbG|?NxJ>dZz#<*weq;!!g~#J{?19z}olKX;^nG&I zHlEWD^O!(^+^0S*aGO^{AHBEP9wL{~J2PCSeN!&MV&ljNPp(SO;Un}@mq|4HS4?Z$ z83?U3tS7GWm2Pj)uYxQ&VO2^4fpnu{E?J%yCBufH^L3_quQ1t=bJcC8ZaJ514YHRz zP6xtty)8GjP_KOi1IGO6b9@iDK<=2JRBPkk;NJU=Y^`Q-?EjU>8ne{w31AVGY!mLK_%06Kr&l2x{ z6?-Y{P6K{_l0-dX`3-;|wCGoYH)yR=J_hv8^bQ>T+X2b^@RC>0PQd{;n-Oot&qSB+ z{9O}`C6ymOt8hPMw0>oIdKH2JZLQz5t{Wt z?cg5sb`Isv6cPo6l~Mrh8$9aM^vuo>Yx=qa)HASk4pySOhVo#%>nw2X? zm`>I&KT|*?vkfcTNgm1=bJr~NwmPOWdK92)n_Vk6Gx8B%*e@K7QQ)6YekuUjgA@#Z zjkZiCRH>hvuN0(eSmIMIOy*tp00=0ZBk6y0Oq@;Z=f`|MP5Dka_)tXJ!5b}AkivRN zXS;C>3yfiD4;ik=A6P$=wQ$7BSUp(yBRzajx%+fzPc4xpODyRDwWbmSHh5ILUAIxO zhwEf^Th+rchg@=MNc+#~2a|s1I*@Ud4QjMqKk%BV>F@hpWNH?%+11D6MFUh_Vp62j zqUNe)F#EFn(g)z2R697FCu5|`{{%BkJvRRaa1G~ztII1G_cK|=Nf|L-!1;Y2-Lzg| zD6?*_wEe}7$hGQHI`cB!Wg{azdR^Og;~SFByZ%xw;u)D?`$#i;KDC&5yp6>+pIkH4 z9O~oJ1Sj>Yhcu~+P)5gn{ve&%*jc)*)QElirH#&-^r`;Bx?S#d0BXKv7!~3*>0UGD z#XI+H-(kZsI1-k&Cn#jpm_#gYEQ zYo+ntaN1;|-pdHNk&S^cnDGKVxm{Un6RUDuv2{nL;E{LPsO_rFWC^F-`;TVu{N6Jm z;PDQHNa$6%hW&ahe&RVJ8TQStA~kNsgJfjPJ-xjDWBTL^#)<`QM$2e!iJ$2M1uE8R z6|F9Qx}~@p^^J4y<&%gw3p)n8kp~?~6?cFeIYuBu8jWs^hp^~`Cx6Nu*1s$gI@im& zhWN<-%cAfv+l_^?5GVa>vaZ0cn%TZRX-L_>&&;z~8@v8Hd0mB)XqaYx8qpB_@Bc2Gz9s^9A|AYVvJ@E+%eMS-E&hVR`DLc9e<3vxW07VJ@%r92?22collc$WA^o{;T?Dd-4@E* zr*Tg}@49XX*aTar zs>vWfVNwFcC9>YYuj0$3(j3(KJn|}d*KTYZ;@2UKJu#1JY8&1XXTASBn@+l2=O=G% z@NZ?wt8ej(8;%b@XJof4%c>#FW}=a6XV7^aQmhRrWlY|bv>{L^m$h#~@K8ieCygz< zir0Sre&?aWcvWvb+vi$ytVo{RRJc}T^lo|GbMXR-Q>;tPj~odn?#>xsKXxT# zv`34YM2b4&u~{zBBrrhNa3r)1VKtv~L`h`c=gieuxd&nBfeK0!hkV*3*@|;6s7G;m zvgJfL?`=j&8@P_sxd;ZX@V{ZsUUazjt@-!0J?Eq_?X7&gPwE`a=p6MUO@ICg+@k ze&!>WeGn(aGckZtn(t2v>w014< zdv#Vu*ks^~BF%ZTp;LV8@!ca?9{l<%AUK%JnoDAH%qF13tyQ3qB4H(WxI4ppTJfGSWAP&!%^!tvqoJtwv zOtxmBKN8cm7R&fIon|*ilPR?y9?d1{+=%slL~#p0MG*M!hvIgWlF4I&--YL)&%c0k z`K?-}se_K9-7uFnrpjbuC*62+^tQo~tRKF7f7uL|s#vi6*86jgVUad4L%$x=2&By% zq`x0h&!)0XiCN1bUp6_SL6ZAoz$X{9(e3l2kcmZ zG=u4tB2oP4g*#_DHTV-sO#@_`=m{pT&%Ky4M=ly3Qk`s=>q9+H_$s2Q*N?$qXNxD+)vZuDSn30(76R+g7!!IC&+r*>xyL`%W@}4snMTa4`1ES zu?Ev>)pxE;T?oAi`FQztnr+|pXTTa?;BOyF=xlDs%-iHWiEfJ0FTlOClI62BgT#1c zOdll*e*9us4Xuy8obdbS#>_M2VlW!RR6H5>X7sgx|Nj+Hb| zHcCzKQEgO|-!fOEc1_icCo7pF{TC?qNHT?HK9dAofF7w97k3+fcYNpfkd{DS_Qh-r z8ceX_y!%&c35&Jg(9_E3#|Br*Ji0#gfUpKYH_S#QCcSeUi5nr65=VUxe&4H-kR$HH7-1&_STCHoJv#>9@WgltyKKlaH3VTn9MZSN48?LB~cF!|O|d5G7~Nc}<^huh4u#)Zh0f z$#+!u#$+OS;(ePAOL)MGqvsG(a@Cll5&&rA^?l;@06+>}n?rL^C3D`us4v5h^3kvH zBuLFb7|M~L_Fel}fv>oN)Cw-zoqW^lAN^}DFxx#)j>3Rf?OCyhojY|8^aI}Ps!nyC zg#Q;B`E!4g%k(Ge^+1Uc)rzC=g|C%%z^p z4tqdUTD*8+E>KpH%jhW~0cy*H{LA7$GRRs!c}{GkWcIe9*W56{q(nLhQZeh;+_%EZ zMErTDhh~f%VXSEA>w0y*64#1mvXKsJP~g+o0kaS zhHZY8=uy?7_NWPdKy?FX{UKjBOU<&3oIPJI{eGFwS!z11n1Q6{uWHkmz9%8pU~Sf=&NzQy?p9Mu^Y~{-Ipxo44u$#4*W`3 zs}emiRfH6%T8)?wE08tPF8@0tJPJaV3tYo0KK-~;{@NxaizTk^y3QK>e>9zoKhypH z|BFhcrmhYuhjk>06-7=PNh*ic8s@BW%=x%EL`LI&OJZ9%Rfwb8_ol3=Z)q-D`&EOcx|U%2MwPCT7KPX2ml)e-5s1@ zttpc?I&=&_+rG>Pv1rmVyh<^}G*<5=3Fj3xDZ()26P7ynwhE3m+vqcfw0djbAA=S} z|7jmsotMqOZwmuW)f}j&__J{KIq7MbW3u(znYnS|Pe2x5^J9u!`3)MPVr{#)U z3U7Bta9t-Dk7J`O!aijZ6A^}45_b1w50f9uLN(LF*abrL7ZD<2Q`~EN@B=iHuWQtN zj@ROROL!)@?x!|L9m%fBbx*{}fX(4l&iUvLQ0Y zb#LXv)gTfkZOk(xyzK_>VKp={2q4sv790e33@iB!5iwAFr55E_ust^ zD8*wFwjy5d#phOT{AQI&)87t<+OaTE6X$;LI<?wL2mXSdcvAD-Me^<>M;zX?YlyL|i%4FCE-`>u z8b}bf{Lo-)A^-W=c)?dCUKaF=RFo>2-6W^YR>#aPn$cazt8Yn7SGSrnF)5K8LlutB z`X00e#Q*4_&gx8RcZ&4VJNGLva&2b;UEV|!+gB#ceX|}2ovW&&&TtmXYV3R8P$}ZS zBrfgu>-@Z~AHD!;@gu%8^6eiVHci7YOEXT-ZtOqM+=7*F_XSok7+o+oF=N|@Y<|&ZX~~v!=&uXswc8w1DnAg3 z7qU34J29ve-yPBJ{2P7HUmvutPivtuY>0>j|CaES~_D>hr_So$a{I z7ikF6VxI>ph;JcW7dNO6cFTB76~46y3NzYwF-H6HN{AQy*Z1-7RjpcE_dlCb-Q3PAs{&90n^u=_*?(h>=vUMV6_KsrH{B(=Q2Jd!9Ddd4@YJtx%I`rjt|~I0CyAOf zMIafSv1HXv_ZImJN=~Xn?y2{u8!lYbI)@5u$dc;Z=fq;=AJ}6WcHH|;pv9F7r`sL{ zxb9x*{4*zi@U&8md8GCe6?W|bT54JkaoMRot*&P*?7-puBnVH>pT$@axvMSq*|5<4 z4a499$s~Y*s1Tg%ltg;7&R1Be-3U;5&hx$Jc}pb>Iqnm;e>3lNkioIQlvQ?~6S%TCe-ypJH>M-Tn56{L;skNrE5RBmKvJ|4Z~ zNK68Jmu?9N3bhwa0IK;{pL+%IIaW|Oo#-0iAmOhcusm0R%8%7N#MkHD368E>u;P4% zLT+(LjxMa33pI?kCWSa@N{@otNp-l)a-NJKj714)wd%nr>y z7sei13_;Svq88mXhw2(IlsUgJJwE^H&n}&c1rcny5FQeiQNKhu9?C1*TaK`AIEr7j zw>d>*O!)_U?p8YGsb9@Ms+07b*`o{oA|V}p2ELFB+hYm9(2nVPH>E|K?rloDjzpi@ zM8qA7#EO})*B7r=ZlT|aU;1ARBX@iL$GKlbi}^*begjdYWGnYy4QQPZ=<0*4_KQmo zA8M14H7P!wv)obfcQ(Ax2J4O^bW(=#3ETFjH&+7ngVzyyw{=di(okMgYYLCGj43TC zMeSM2eoVcQ-}n3zRMF9^v973}dmS7F=ble&n~I+UJ=S(BiI2FW zTyUyt*q{cfC5&CvE&kJi-OAtbt=gZyQ!zs;Z2sGq3dae6ycWY!6?A(UO1!L;87Lr1 z64Y(J{}XwAc3WbH263PDJ>43oLhf{2_*bfuo3>RWWFD;dp=w}Sx5*yLA75i zBBw5|HU!?86M3d3Z%(v=3!u^S&>o0jm z!Vn$eA|=hOU4qfq>i)jjgErW0{nAzk|c-WYoR|UIlhC=ag)ea;a)RF zP<{r(99Mm7OWd%mByf@4ng)Mj{RDEnHxVVEts2A(lrdHlPUN0DLyEQ3F^xw&jwpg- z(=B z$Y+O*+aXa8A@OcBSM`Zy^_!L{YbTU=L%2+V-IqvRaE0SDD#mA8lOi26QdGst)UxBX z9+Po5o=ntk-3RTN+D)A$ssu4MdyBF*?@#}~qdX=re{*1`+Rk)vz9{eSMEfZ-L%&$} zSkQc^(r`MOQFbI|`zL)up1V5r@@%jeTt!F|ne?)HXZ5_9PO}-}?sArzXKtYrG+UAn z486|2I%KFQcLAhyxxG_v#)Q`weAluvBdkqVu7=6z!0=l2{duT!oA=K-lJ1<^uYEo& zjMbWbHv0RahhPm?(>L=X3E}_^pb0ntAz)}+EPDvH;w?dI;uulTGq$g)G*ZfGt^QoW z?R@Q_L%o+|jA82%=~1TnyG&usozt)N?ImQCb%YajNO!M3?lN_I6Ckkzb-V7>0+E2f zI^(tLxrpDJ8D?YtJ&$XT-)xUyH{to@X)Utjh<5nq;0_-K+nNGxPx;M{zs!4N%iRS)h3!gjPyNTXqyS2BhmW8`-BDh>w zulq5+JQk94U^M~>pC(lr0b|1OP2)49^$gCpAxJ6|#n<(4iM(}<-R?yZ5Xxw-Il~wC zFpg&>A+jV)Ab-4Zp?Ach*r$E?)z#!&9kgqr?NM8S{j-t&d5b{EpKL zO*A&gL3vY{z1#8dwHc}tm~9|(Z_GZF_4#mZ1Uw$)#eKZSM4bF3hMfu$9@nKR<=Xb! zGx^N4gdLw;VOA99`C9lXmd$qP6jxG8O z>_Q-`_G7n#qC%p?cN=7H~w~%wXYb?8o;YANM(RqF{B@Eoo$pcc1SU{fDulfI&@h z9CA0>Xi;t@TJeb5PPI6OStYc`l+p4>f%iP7Y(1n;Zse+A!V7 zIwGWPmrG4U^p8)8T-|dh@Se0_c9T5p@ynpX)sPr60q;L+y~;Z_+E=phc#V;84ZXT= zHTi@bc=UCQa$=6(w{3jM?59M{K}4k-Cf0T>#vg=M*hvDE3z;6{9Sv?t7xhD3-OV^_j#+C%29jK{>Fn5<;vd4{%`fq z$Uv+F>f$p}I^4+^=)~@lu%$8g^W)6(E%K7->SMI|XRudAs}Xa~(;H1xRuAvLmOrl% zf6L^U^S#N!Akd%F1;E1?{!KLXPw=y8CFtC}qrmWk4ZHUy zIIuFsCFTtHndn>WrB9G#S@XQ&_X%w=U6@&02bG(*w`U-l31+!YH0O9vQ-D4E%;7uv zyE7O@@;a&2ufUv?*5ou2{YX9z=kL}!3)_v@3%i2K&=lxdlj-^vds zU$%tNEsFu$(xbQbyu3$GZn^u;=){sXk~!HnBFvYz+$vZdI4Tx4{&3Q3G~b=6aW$2) zH`hRUMA^F>IaSaTZlYep+o=}^x#J#U;+LMjIebylNcw@M(;OxAGFbE0KYSLrLxa#&%=fy9WR<8*$sHr0QO@UYz$a^;It8+qmT!e#SXUNGx9Xq`c-^ z+Hif7VMrLDMB;>As7#5~(54VjjOyfA-%$zc)WTPYa_-O4mvXhfb#;gv8@9JHAcp2W*dO2pgbJq;c|8*rMr@MlGuZ{>kA)A7aecjck^yWTBn z-J=s)pgtic|B7WU{QP~V!A1F+Tqh9lxhK+*AQ5RT8Cz{zm!Sebz&g1X;e!+PU3*n_ z{Hqj>)f6DsB$%SU7SOW}+v9#9_B+Wed|w>e_y{%RNTq{hU3*62s#kZ-l-bMn+Kq3g zCUnNqA?MHwzv^yMGJ#0$y!U7^;p*iak277wf4RLn4Z zXsG4RS5sXz?$!68djt}LJK54zy`6TbzosxE$&qXO_+P^X18Zda-h}PmjEW@Ni8Y;x zqMAoWSZ{^<@eA0Q))(p?D}9@&a_u}$3PRM4A(yH;{Q;QZpd0w3q&0QE5*B- z@s<7h9*qeMS%Qm}bWK!-#c6xFVH(HoLRSu2R*bN+tE)NC&70ZUm4PR^ zEi}KVxhdhGI^WD3db0=3o14l}IoiByL%qvEZ{A~s9VUMsm%rYKi)L^HzGrb%?%Wq;sk(3YLjqYP zvRN@Qx~}3o2awD>wEa!BhUZ(9T-`IMA<&!o5be&~3rez* zEnjNT!c)O0%|6k0t*g){0j#a}qqkL55YMomaVS)B^;ui;jQ~c>?miC(R{Ax=nKWqV z{0R}L09kJ&e@q5`;uz@5k$i-9Z;Uct!dBG42+{(6oS>Fbg*dv>0c^3JKOcUG?A~US zR@8uhKBSSXcDh(0LIO&7FtfLED)iWN0M$W+>w^=lc{vcwbT+9_Hr?C~!7CsLXUd~sS>dZaybJ7Vaxs?NgBw6p~ z`s>3<<2s|)YqFTxoob%zZR#B3iV;+NHKHZL$H#fW?|N-x$ZY{DTM3;9P6y?&y_mcd zP#aElU^wRm>RHh3(o8D5oAFUJV0z#d<}ZzE`2cWvFSs}!q~kGTh9QvrENys>@2?K0 z7b)f+5{iTqOyGOHQtHaLxU?g}!Y`@kgSeOT{}9COly^;XEC8DByA&YRQIE?hTV*@z zezitj4mkm%qZvw30fJS{THm8x32EamA{Gb~M7>tBe7g&-qHXmrurv~OlyF`+D9RNu zzAIR^)O9_ z`)*+5L`Q})YTjk|Q+|z1%dA9Yl#9nFPqa)|#(uG>8rBorz6tAOn}u%BK>@4j5ICUe zIc|JLrTqxDAaK{<4PwzB)+4LQ*_zyU`TR`rEBx~s+c*B$A!%XDLo}tUsMUR+l&^dj zqaLMx;m4@o{wnHA>$F%nilZSxR&t;a_w2^JmTar#6zoF7aBEy2d|t&uCLwt<`^@{%4fMo@hu!}QMc0OP%6w0_#cHIeqDTJ3Xjnx-3;gLhN5q4byeT6?U5HYl7R_Fu z^L_#)644g7%>P|{$rh}2Ox;ygC%`D*3y+J~p3r`E_VINa_H;;Ez-LhAc`}3GDJuVDfM~M~834W+t6ni(|ShVEDI!0Gb zutzt3_I+0p>r&?X#`nag8LSeuVJ}{6x5$g4%mw((>o>!fgK;{Qh54i&QF!jhM0TcP z{E3f5$3oPs9Mm~hUotCEK|c@0V(2O^(M)@ySAh*#MityE($k$2P8MGiZ4;oFg{x5~ zw?5?}^3|gB(GC3k_u%SShm2Ur-aemqb2h{11CWFA__@u$xz zzUm2;a=`r5eyJK|mwrbR=aOWM>J1UxxN7Ur?VMIon;eqxJ5&7@CsXxtBk-qM5Gw|v zeGkT8T{W<}1Mh0tK3Bop*Bb^(9BMb^apf>=_lhPA4x>;G*7mS7%C_7gW!aC`nr~Ln zxC4_sDe$irsT+cM{PuilEA3&Y+i#_DEnQZ&E#;Ko*Xa`sjLc@Q5y(UGn&A9MUDF(T ze9nW?>w9n7;c3In*a~LDZ+?1kO~}bpSo6LNCD}T%&=D?NWUj9tkpc=CoC!Y;s~rRv z%L6Q5ZBqg>PFSbMZ0x1FF=cc$E_*Bdq@9(mbB@-(j%}SXDi2ka0s$rkg#)y_hD`37 zSn;E2(0Qgt!AssH;JoMVCFURe4i~Quq`f}b-pf!yng4$mfYU$$u1cJG#pfz1e}3+_ zDRfprXrefZ`5eHqeF|?|&R7%sb+?b6l*rvcEYs$Xb8u}I*a%XhSs;h#n|95XcUjo^ zE8hHh`w8U}?AfForTSIA%BN;A%a(BtheOYf5TP;OHGTFz-eM?Dh!hy-v!B}&dz+EJ zNbMqYBA|HWwR)3nZF2KI#$QMz`+q&fj;&MIVlTqJlPlkvZ;K=JUy(|6Wh{a7Zf z1423_=r`9sSJYinmAwCHFkvu%$4vqmtW5c$N@eC6J*A(Bu!bLagri^7?xo*&^gG*S zyCGEMa_QTzp4A^}ZI+oMO~su`Dhutwnvm90z_VX2zY^qK^;*3nA$BlGz?`|`^WAUt zDsq-7Crthw`=y|TD(U%d$NQ5H;eMB~+0!%7cAL_&PPu#X7;UjkS-U&USn#j9 zvNRJGU>n)v|4X7~_&+S~T|W0+E};KtLS;XWiJB9B@%B>%9aJ0iVi{)9f-?LhG0-9# zCV4~$N};=vofXR@u$;Axo$ZMU{+qcoME?T<#E(8}%62P+CqGiuvsZzWuEd-F82%OZ zoC@NGfXexQuMc*oV+3CJr}@`*zUohl;!FDnnv(elhdJSEl$EkrgBg;9JD;ErDXEo0 zMOtEZ5Q=Zi*KW|sigNSKfIT-`F1}kyd*RQhH%_CT1-)?daMEU)*ael(q+>d?`0rjm zqR{i(t^2YNEXJ+tcnEbt54jlcV`!;@jH&thG9n8%8n{4;|jt;IBPGzvGF) zYI-l=_q}U#l0B)NR`S*;oo|Y2%{sPX+zu3}AXYDj|T+GIyDl+nlqS!xLPV8+*<^z$e}e;n;3@M8mgB=+ijN7wF_6A(%O@h=wH5i=&?}SRZ@&6e& zFBPEY?+q5c?%!MpRddh#cVMI~NDAGLy@Kt?GM57vfc=U21b+OuYf%3O;OhIMtY@?M z((5|G65DTJEA(-Xc;fn~(&%(A_v%IPYR2|HG59~6OMpAjlUFa6iLJh6&$Y8fO=NWvdwG8% zYt-Ku^F;ZN?qSylweM<*&ku<(%*iuX6svu9mJD5Rr3R;>sNt z;}%+E=#>bcI(^oMm|hVbr@eqCkcsdG46DU{oh%fxqe#N#Ot1)hzxnNTy~5N7UD#`z z&u3N-GGhSpB<)S75Zp{!gp||Z8(E0XOmDL%L->Q-XYExf=@V#V0X8rKAR>&i2+hI5 zDyY>ifAZRb2|Tc`|L#s99V;UMBrp13O-PlA(FmhNkcXc`R~~3(?wrCv=QPUumE%X;ms+KZPJkX)9)9iU zH)SNZ?S2PJ)(%wZslAVvw=L5vR69G@sn@I(W(#xp+S86zMJ&vp~cY{g6Um!gZE&#=BlMC-5HL%=09bw4k+q7Tpvm+{81k}ewUxH@-cqfRyc5g zKjSyT1dSdsBMxsh2f}-YGerGx3d7wa58Vq#Zcy{qAHe`~jQ>noN%H53Z47T}kno|& zqpxWnjKzOMP?*07_?-v(Pa<~rA+ZpuiV1Ame|1V6=@aZ_I#DQR6d`~+P{zlLHR4(v1M4IUbc4o08C`E-LUzg zdC>WhB!mWa^VIXBk!?Aq29>J?r$L&i_0F43CEd~%PexqfobkY)XZF|uEnN6=V{J<+ z5yjirmf>v@K=+gBLk;rAXLjnFflkCuVT0jnV#pkGP#M{{uw-Mk-gj>poh4R=2cMv&JWt~4pW#Icj@X})~->)6}q-6#)F)|+Lr=3p^J1M0e&Jk_tChnYtd_5PiE{&L?J@M15y7iJ77SZc?;yEzr0vl{;Ifn7$~t@fIpLFJW|V2R%N+tVqawo8 z*Pozk3hCTnHH8$H-f&*Mu|tc(4v#jN@Qq>hTC@K{JMG{FetR05+C64#qA;!+Ytx@> zv?o1$WOVS;(;9`m2Evj_g(D-1Ckt^#r=L`=o@*PGh;Rv;`^C7Tx>i(uY$wnNVgw-x z*MQbqqjc(8rKYVuvo?usucl4G`uh(W+EH%3ESx3P5-> zZY!oM*02~x;J6Oui-;@fHy#Jqc}WwaKV_;X+21I5zs6ea88UeD4VE&aS1rP0x1}AR zW%NbtBcZs0c+DDL(flK0m&DiWT;qXS?=A zHC%x0*@}&VooO~A?akH)QQoZ+R1lh8>_s2g`98+&cMaf_!>^ZW&B@QbZX;)vWvXf1 z8S2P<_RkDKw%`jyP5w3f18MXHwzJvavgOYuj(>;gc0QZwHbT=f|2$)XX1U4KH3DB7 zL2O(LpAsco?-D@oiG{}?JUrtkg!hr;#W$iJ8rs(nb36}5iY3z{gm$orG4~%Ef2UEF z07(!tUcXweR?>JaT%+L@!BaYu`q;O7QR&FeJa8**d2mY^QlRCiRvlX__qA--DJp#r z?uSRqM@EDP%PFELr&lfhju<7mqNk4cS1hy49MUU#)s>|0xt7~ttGTxzaO6lnruG|Q zAs92e(Gl=>E$oX%*YK8~28()1^&mUbP;vZk9e0uC@fKNa+M@CGGhtBR*W4bDFo7{6Z!#?4W>vLX(uF0j4vpPd+Qo*&mBvV2`)FSC0^coJ^YfS$`Y)Mtk- zT)0dU7Z<95vEF|l*v9Gb{3%doYIAZdn-}!E36TLG zOp%2przvi#%b6yTj*^=7Sq-=RkFeStqEqy>dN0T+n&7}Lg0I=FX0Wh!NaaEIgMFZ7 zS9F>UFMWj-18;iaS5i{ar_D{lkGb!oZHP!Ar-;0GyJyodA(v=`9I{zXx{z=39S%OF z-n7@Y2;2)?`K~qMrcs|SP!#Ut@zu4|Au$W`3{`lh2NAc;Diw`12T)vLAxGLu9U`%T z!jg@#T5a9ilVRYP^Rk0tu13Ps(jdwmW$bzN+vEp>b2JO=fcAEl%#~2hWv$=Q@iy8n+TfZM|x-Dd!YNxYwX zEf!7dG);<4ufk0-SKbc1;78Z&aT8xW7ATbJ+En^JsuEA1M@+d4&K}*onG`(3H+71# zs#>#}2%A=|K=M)!vD#o4&CtU3;x@}S(S}d%m9oQ8Ct#X(0h-XTC1EPVbg;OJ)m05n zuI5Rn8~#@|Pj)$_PTnyGG0r(Is}0h7S|Zxa#|$s1H+&%#*RU@M2+Ti2AypDG42+F! zi4Q-zE*5I16;dKxx3WAqa0$Zb_40*VO=UQ&^pFlZUp^sFnU!6sV?lT1HY=GeqmA(| z-7wcYt($LzZ=i-7Wcp;b|BXlGZGTh;5{txX?GV>nTQA6=!hZ$EF>GgA^L%SUh}nb! z+2wxF02u7HNiF=d@^mu*otRgWWd)h8H^efY);S&P+*b*dS6@r`J^on6NmicZ?_1iP|Vx2jwCR~1qiT>GzG{2obqp2 z?aq&o8`?G0OiFTpk6v-;-Wd`_$tr&h-eHrr`~2eT92&C%3x3$gB-^Jj^8c~<$uzQu zS9`Tix09FJOGV{~r@L)+lG;JgM|qO7vfEt`^u=_DDcgXFjq?yqm{ zS{FZ!Gn4s(ZY7{vo9d$*(?hRH!Ii%uzOHeEx>ie}Q;|YZiu_AXHk^nsrQCq8ww8*1 zUD+C6sp)mDxlPIid>8<|8(*N^Tmy{k5!2-@wP&b2-h&&70|1|U#SDnX0(FS@$VV~4RPc^;GHTciIoO&!)HU#vAcf_I%{-sNXn}= z7+>5(lbMu%AHJ7&i}Nv&*BW5~td9}26|IlO!WZtJOh5%;k{d>@sqV|_;5bBTqMnWD z!G#+qWs~H(9>;O6B6c?4ouJ#&16Pf?8d!JAKkko;&`_l?b)&C;XP4~i;vD)-ae~RYq&f~Ykc&P!cnfc<% z^KFYt$LWt9>#N744i(1AXzqERbHt;43FV}|{kYeh?DuA3Ux|L;+H1<{*?gs6p#kP& zbfC=44C7J$a0A_c&4=@5MP>!r+%HTg3BGzV|a?_`U>~D3>XsY^)f?ROyB36Lk`JuO7jGK#V*jFj+ zW+`V-+Ho(Zo;HAXSRgnR=`omZ&AE?Zq%DMi#(zzFTuimsaWGC3Z<~8RQU1WR=Bxfu zTl=-TP_dDb|0ZqDzP$e5h^y%0vBh`F7W2ZTYt37yC)Up;g(H{&WxB}n`xy07u*uj_qt zOylj|egltF+o#;Mp_FYqpuG6-T}al${BhwO!>%vYHXn4NzNrOrGbO&w#;N z6C2A{?ZZzuOt;a4+~AlRJCv41>B8128M1djbYU$?JSie+G0CXJ>KQ<`4=uG7H>$z4 z$`gPM|GW&y9CNJnoYq^3=T0)0O7AXc7|HWJeAPYD@sY)IFBY+WIf~kYI(;Q6ZzMZM z)3=vk#oMW(09zn)wAi`Cl$9_b>5Q#aJgDqlsNYp-SdrsFuMA&aI%Cv}w7K^~Hrt(x zq8t&*#ESfGXGwx;xUU7JrQQKQhl`CA)@@t%qn0;MT77V5Airms%rlQtH36w&YmUQj zPX1SRTkVQI;(e0)U5O^i8kDyxY^3ykgu)pSb^lmG6%Ho11greLC|4owseq-JwIh z&!1LCUScpiqgIm}iP1NKn6Nokt~XRmSmKEqSSR_RCvY`$zJ9`CyT#vOJEosApkItE zaiu5g4vRu;;7jjUPO8`)H7#(sM|YlHrfZMi9t@Fw4T8#P4ee?qHm;s~xt~ESCx%8! zX(lQev#wXTKbfSVY zxDNgA8(Pf%{PUN;eN?I6-9^7ueI!Apm+4fC2&PRMRG+V5)&IJL&%9lTx4XAbN6UPm zI2MDt?L7pQC&w#8O)vCT^h$g+l(gt((tZ3`84(xfMeJ1OkNLNFmY=Oy5RTq=@BGDy zmTyklcN2VIZ0TC`_kEOW>tTZq{dRu~U-Kt*htK7NDob5>uGSz;=eg}B$P2CvgVuWf z`sr%?#z(ZJO`rVy4(e%m2DTTd4C!_Loz7(cZ55*M$t#=W>=kbG%J1=igw3yNkEFM` z^<6NW1^Q@NH^S;p(C=RbXHR(W5tkQ|8}m`*xghe~f(JZkWPL9X-+3I)cwhQb1-;mw zR_LNQ%BFbl898*x^36c%Z^zfl37j}2n!F?mC3A$LZbwHTR)j_}cHjw5iVMO>u?}bh(pd+JGWBk^X z{SfhiQ169zSL=xISomIqcxAvph)VL+8o7NYQTn;(i6Kt-u84)dN%6ot)D=W1fxV&w z`+brnesxN6wzFZOFciW0nzx1rRQBq3p?0iD9IFunFhXj6C`NKh0^&RBCB4%Dm2NdE zN|Z(K0e;OBpd%{#Err-0<>AX7nmC0io-f#nm`ftx$IpFoiJr@>R=akxI0iGPk|utJ z|D)4T(tue&mDAQ@musi(yuazkO`fP+ntb|BeU@2bbTO%uBZE6Jyo(}!O6GF+-Yi=? z)T%)vcFA6;R$_MHsXS!z%p8j!DxPA?y^S+-PEmUV-(KikGl=Ji21gGcWS@*730g_j ze4(JBV>#-)yYG*N-=CW1dZT#_$ndo0xEswkAUzYB;Wfj1l1MzYzMjbkMe2R@ONH+1 zr3ZZu?-YATb@RhGQREQIv+C3TyE(oQ24U?u_Z_B;{Evhu>9{)d`-X1a+5AK~-dh#^ zHd|I6faN;Pb_OW353DvQMyNe*e=Q*+oOOhG4P621ARmY&&Gf3iWZc>pqjMJ$PRSnq zrM?wLAaUZNCO_$X&eYFQT6ZcEPtDgBE>CmcQa#Jf4SDvcjl(WO>Df5p;&b0$HC0WU z%@?R8IPn60P_-3xvkwukrPJ3J6is$%^vUTs276+CImSCQ*0!>6A3kt zD(AgF!Al)wm^(8D43P6*rQKs)iddl~X6&|;ckuGkw_cVE{kqOz?p^OY9l0-4F`zJ2 z#Zno?vh59ThL){->L&y~%HQJFR}NJcy^mV>A$S0i$kUGTBe0XmI-{2=ftE?R!l+=| z+>rcKXkR#A*UhH5$poc`*6qd!62Vl2z(2T*Q4xiaB<7374`-=;i{_PD(sf4Bu@_*` z41LHT)o~j-wqgERkP1)SDD;oc6=q$^#9X$_p=+m&+g^UGre51hlAYMM!)GYT3p>)BdIsB`=M8zflXlgOgLMzT+BEs~jNxQK~ERiwW}j zX;f=%88Q-6^w#eJ_AES5w{pH&e$r@PIu4l8)B0*iPl9l@0(H-&5|D1lF9bsD&Yg}p z!QWfWcFE?~MM#)@f&xz|S9qPRXgj+7YS^jPDIKD4q+BWehF#a|G}M%jG&oCRKM2u! zJM_M#*A2nUi>vU;hXsh>u%$kkB$Q^M0!gOOwlLZ9j0~JV-)1SP!2Cc$;g+0ZjMp== zqMew|hEL*uCtH58W6$(V&h+qZ6STivPNYKok;!mLuyzXxxAtPv5Hn+#N9I^lINEf` zUK`5R2&HE0>Ej9tk4WJy;4t&JQc-a+71@*Mqw9@rvj^e7ye93BiPnfc=zjX>32Dt> zMDh=OXB|%AuL>=M*}{lP_Fq6$c)#8n58pU>f}q)Q>nu+SI}Nwl5+*n%N~0v#1s_N0 zJ3^Zl$b%>g@UI>i&wLYghImC*4bY6LD|>Z9W{*XHcakNQccaB0 zc1s>WwW~F&NNXRt=lzu{{H?8tNv%H7c9l~`D`-7($6281$bGF(qnpHo-U3!et=!Ob z_)_NF%k~6vG7IS#(lEx$xEa)(%wovbE0799p-+Bdjl&^ND_fVt*k{DE1Wj3#JdY2+ zph{Y=gdMQSS@N<4hMl@Pf1c2QmU5wsplu*8<6cbnhJS}8uE}di6_GXqNM#%a_ zQ+|Wb8qNe#i0EbzLh0{CtlMa;I9PvA#$nyHLz}&7$(z>4p4pC|Jg}NCd~VGCQ{QeB zu`nd*`Ruzb_exHn`V8wR^qTkbIlLO9kL14E*i@uu?yR?oTIo!YK=FqPsftS^zAwkVM@lS1l ze2J<<3-wcy=pIQAA@Qy|FTo$?I2>XO@~2^2*;wD8cEfJLG|2Lb{Dh)B3A|YZ2`UmM z(*K+4RB3u&Og5rSKGY{7OS@-#cZ0Xa>s|%=Y0Ugx&op6Sz~KSw$6QB`T?dsd7dGb? zQYybEl$2Bl`Uf|RrX1o5`>}1)jY!uAdVb+|6)sM78$$R!9;RMB_r|)#K60FoOF|>z zQd_pgDT>(n_AFGGBdjH}bVh8yAw<>{-Ev7XK+4gJenM}E1xu3FiZ$1)qA^d%>5R%c z1wk>hjfV1!^4>=psnJ_+vl#v#+6|rsET2!; zf3g#gEH|rD6`}a)sL%9i2qy*OnfaRa^0_$~i-aM4NEyW3rPcF+KR9!%RjW_yso^8` zX<=Tgqmgmop9DtQJK4}$vFXG_vr^_`e4NDhK{LTzIpVD#XVbA#QGBP@7FdysZKh;x zN{yjyf=e^ACnfezz_c`6XB`JdUe_D?`^I=4>YW!!Lj9c+Uc_5G3HbG) z(pAUGcK+C~nYHhSOqFLr94(aJpte9(dE4mh1h2?)fIZqjU^^>2=*gO^AJ*O;F45Gm zh@L6V-QF{>!gw;vY{=yM;^b<$i+!Wr$0z=-3Uv5J=wpdfZ(`XgbWGwRWE~Q6CxF(*XQPw3E8XJge~m zG?Tsq3EJShk9ePCV{7;a1ma{XYoqoMNxSQ`^Rl8Rk4#-U`}N+vmIHck&RjaU_n!j? zj+)#)@a~jn@E(y<-n)1@xop*rkM1)mJdt<pgnk zv|GAIpY74Q^>0%Bw;O`pXvkR&)mi2Tvv`EpKl%S1`Q!s0i|zS%=|Ybr z@CnZxT4xVe5JBxUG^tv^6 zy>uuDvgwbn|NK7kZ1i{00AW{OvpR8Ul(;knSqUMR{^YWgN&Klxgpf|FoI>X)D({x$K8fNzncADVSjEAFb-r+kn74Bh*do>wjQ0(gY_ z^{B;I(*@LdM2bLBedzu3Rim@EmY7*W7GeT7v#OAi(N@Q-^XP9{f5t3(=Al<~s5(|% zi<`;s7b5n_5JLw#Vx!2|0%@QaZ0;SJO=;w&6xdK&i|23BU$A!f^d3@wtw;`r+RO#0 z{rvXixuw?dKG)x!Tra8Qd$w}^>IOQk%6-m7LrtOyfn8LOzLg8Dm+|)|s)D_7-+or3?F*lI>gEZ^o84&KXR9Nm()c?gp z@Lh%YR}R@!I`&;GT)QV$x<(5qs8X*TzFeQ={zW2WG1}SB$WNP)zC(?0`inf|*G#a?I zfY7$N2`MpN&n3?x!T-)lEt>|+*RQ*3b`v}g^qAbge9!=ADr7ZeNbdV0Lc%OhJaS5d zxuF+fQ^OajqU1~hdNOdC5dk)2C@lvQLI?8HCpL+j_SKw5jfq9Wxp@8Fo&OGgiRl-_ zu2W#e!m~KUcju*D>9@>`fXZHOxTebaEZ@*F zXf@YtnN~_2N{zCpR7eP%TkEBc^((Hq17z#x2IJO3_r3~V>d`oh8q|NN&on4f0a0Ga zvUBkRbW5|0I*7osJm8s7 zlg+1D^1O`w$CZQf@{fZ;3Jbi8O4yVJf#<^Q>tC6B=tibpx)3lAHH78#uk46K{+o5P$B~ zLWVeFiinH4xCeASdPV*9{hQuVLYIG`&9n$D^?ZbUYq3HF_Sebzv^Qkk|6LTl989rU z5t-w#PzALzu>`kCdw_2mDU8*%yvkf>p*Y>fy1MMUz1@-MIE7y!9lAd@{;)MO${LY$rJ51SrT*eVnTKCSGO=9URoOmH zlJ26dioFFV?UW&H zGw+j?WW3q#+}a|ROQfC2Mfat(?*Ls(l&;^J?o4aq2eYuymPtID^E*L9k|{qNFN0ME z(jLQj;jdYh4Y~@f*<%&yU8w2@%C46~-z%4U`n5F8ShsTapXa&=2mDtl2jbJ-#^ive z;LGC_yDN&6DW&NL6bsM=sQ%<5c|arFWW#750C~Cc>q+_fMKd7vGGCJGaW}`~{kt7j zy(v+6KD@=ITU@Pe2;a%${cRl@O;*J)k};3NqBma*xM1ZA^N!v=Ka@GE?8Xmof6-lr)sf zedI;|=f2iN%d%k?IIa3f9H78b5dz;}nea2JMi9d<3f$xOJdh$On!;AKVg93bie78d zq+Gn0_%ov0q@9(LzS{Q)MTgc||Mhc^9)!~RO&4<*q{f4Y4vvQhE=kms%@3awMYkyGJ?<^KJ)Zd0<#YWtoG$0iTAS2$@#~fw zUsJ)ni#AIR+41+!bz>V8ZI zYpTXk?F>Aa%)9T}jY&s!=pO`+RzD1l3jO0ZW;mkFFyam3hd^tr89mxIzyRs-?bmTe zr?BjLh@I_Z6L!TrlWuly_RyK2OJYQJI zv}EhPP6hw8X%y8c?3G*(@$<;vmsv34AX`=NI=A!Nyji^IwTsmS57|PY!9blTA;@}mIP$b+3+oGBzj}*YBVY6 zP9~q7@Tvgt!!xdV`xBx5oO{*Ci%jL@u3XoVhbE_|-S}nA{*7E=%#oX^99Y@lDu(UP z(|_CM;DhK>9s%wE3;e&9PgUek6zmE3CJxCfD2drrw+xDBq-(0f!qd3U`c`~Tq05@9 z#qx<8&QY=#I1W23jg_LmJ2Z6{l(@_P@$-F(d>ni2Kvb#2@8x3g7|~}l*Ubbd=*SyufC1%0vxRI1Lwp>X}?-EcV3hR zgm5LvSDGT)3O1WAFP>lRtMi@)qe|sl>1V0}tm7o#mz_${STki8?a`ZItV}fO z&oMyqn7+A?g4>Hs}tmq8cbm#eChrrm>>IB!R6@3!V=J-WoKxUY* z!+9{0Q_3q#%E9NjC9ITk0~gcc!+5|_jW95^!Ey&ilZ9#qBR_1Q$A$RE_!e^36eVk_ z`An}WV5VvM9uPpOf73a{q;`_67WO1OX866wDN)#^YYB5Tz2<8|#WB+GY6R3S1|1-{l!KfQgRCN$@s2tIL8_tgl z$X0>00`Gw{*OZ%8NVq#i!uxVogk<7gV392}v+ZuciFntS=c5RhKN&naDcLBIOnh+E zTD`SC$90y~AU;LSL&r+y9Pl<4<)XOv^lF3-DHB8X9Tb;SUszvi>;yCL;U>rdL-sAn zN6K#Gc)qNc;QR6#_Hure6RzI)YxJmr^q=S#s!^DQjimCj8?b?dm$v}F1Zk81u}q`( z0J^|l_nwAsR#9rgz4|+UzZ{>+A>HT33QgS6I@MGOnH?T-XTkHQ>swE1y<+SHM#sm4 zc`i<(<8Q0Aw>RC^u(+-vS=TTH_twqH$Y4m$>0RTaclhmL{J6BI#09linC(IAcH@6Y zJ)Ev8lXLd_9zFKN4eYcm1%<8s4wQb%6T+5MUx%F8JJDd8@Xx%SSk@C@WXboEQ*7qsfw0#SSqKbK&c91j9RhxR%hns5pllq_`Ix`+GJ zmyB;ae7y9#Y^HQR>vN!;so|>3(!V2FuKozg{0I%{t8k}iYb@1BDU+|F5$AI!{Lx5r zSrW@4y(qvO7@OIvnbBip*!nHOh5fbOr84Yom>rTh)hC0llkt$fu%;ny0zSucm-ZXE z0V;j>)+-dQ%ZTS?Voph;){bxgu4$=BssZov=#s3ry<_ODC z(h_r>NDMdcGk%AQr*J$hn860`!C7>p_nk`o{+;!}km)_9jP^cz>FAP zR&e*H0`#9|JJ}B`1TdsyGG2&;q5L~* zw=Epc_?9Es?n0ReRQ3-v$Fg)fwaACM>C$u7Gn;^zNQB)F4;0e6Mv$w26}6l;ep^|q zj6*tN7;+8Ao3VBP-yDv1C4^5yWGpfm3I?n6`AT=d%QkeE%8VQ$*cLgAqr{lr>LCb|)8FTM-9F0BMF)iWhF_>+u zi*xLZE?+LACVDSEBbqlMqQAy^a{gR8HSW`wjSiiO)nTv_^<-@r-iv`Ds31+jW#odX zm<@4&(D;Tl>oFAg)@c0ibJaC*-;GN) zWL%T&;)yD-YOx-GhVZ@l|SbD|O{XW1zd%vzH(Yr@T+%?HP|{@~zR z#$N=N_~ZOMZEfF}L3eMiDe64-Ve~WwJl@Q8owc@EGR9<@pyFE1x&A1{oroFGtNh~# z?&JEBD-~xbN{I5vJ*$9#AN27r^uc)z%I76+$eYq;($vPxsyprO^{U+Xu+Zhh%}VsH ziSF7PDI|@1h)NcaAvx zZ${pY^%C~6bT=jY)%mDfU#)7|JUwcyk9Rnr^oz(|vX{E26$VB3Z!oTl^xR~r(7mBn zO(HTxL-Yn<7>>R8klp%I1rLf`w6f4S1|YWeWYsMB_+cxh`29~K*v*Xd{}95L+{=t+ zg2M-cJ@+P@04@v1v`(=7ubNLhrJWi4m=jaT;Bc2AVAk_A{sV3$sDT8`$g*pS(H0X< z!eVONmFjUPqkctz_pg!NQ>R9htl-2HmkXzy{9j_`mLA}A(=Iy2d$msGksdQAy=qOn zo+m~f;28!CxjFeZPNfsj)k~hx~qAea==L>uQ%DDdOhE}hEt5) zAUmLphZ^=l#p@Q?qsF^i27xVArWSJ8dNHcSSKzIw+d*%GJH*COT?6tvdbc2PjBEZk zn&-pfVsT8DV%@Q;LF{>uLgicu=aH}4xI3okq!r=wB0i>U#Ijg^L#QCi|XA6L7sM$e>CW2>Z1@}!Q3 z2rep%B>(#*EtR2xsuM3= zh+1e8?jICK*MCnDqrf~kc=SMy!+bu_qY@TSlNRU{Irc+*EbTiIrF9t19;iBYR;mHy zUG(5_?{9mt)%uDvk|X^y%1Hg}2}XN=r|U1tU&_fDF1=D1c9Tf(0TAK>q>W~T!$L7b zPd`D{%>thfios**w|XPDE*Cj{TpGx2#e}eOW7lLNx8B6Y{JrECuOHe3Zr|JlcTAkIz$*BurdEkADf z+S8Osu|}M8cS)&~zgTVZjO`7RXq|U@$(wdii}4qmZVHkwMwUMiQ5Fm%vq*4;sSWP2 zr7{tvx>y0OC1Z|+(*U6AI3NXn3UA+@jS0-fP$TjL&Kyob)^vLkxE61I!M^O-z{4iK z`r1TOvasieDV6-_@)_p zzj8&$j^nhP4VoO376=;*(o8GLnU_KOp$xi8LWIG0*1thDKK+NSQ}tK$t&%sJDbxcs2jNhAzJkXvb56A=fWKuQ#jY(^MAMN%WSCdjFcQt9t!5{|wkv zF|azUGxChwo$ef%N-%sVW{KYsWamks$+IK^)hU`>e-@y+mvI%_I z*BnvSV&CNI!TG7Oz91P{;+2r|hb-Ub*}oSs==i^bh>-3pH~EZb(Mn^xN?KLS0w6Ve z{S&Rh-#Qd0X4K>qjCIg&?Lwz>OfUrWW$!4cGLli)1;7)HgH(zE$??qLdt6qJ&7C+I z^%Hs_VwoKF!qd=4H<_tJIcCbwqmu7*(K%1tdUcia<7)lSH}8M-z?6CS!ZzycL-b;# zN_S7os!WakmzAd@Ovc@8jbYAeu2v@7^L#5bEb~V1t|AlB4~phq?4BBSec)SDlhO%a z-Q1npT|2rNub=MOm9X3^#6p*O1LTR4)K6o(msiTx5@6hf(SImAJmKwFAd<2V0BDqc zG0Zx8^Kr&5s(fBoNp)L?9~Yfj zqzwX9qlZ)^S}Up}lb8B$={NJTXUok1Sus1LoswK{%)Xru^|X~4+{Lx|1F&`+ zI|uW=LQ;nj#?3X6*AP1MkBm*f#PQuz(VCa1x8_Og{!>H{3!;VeL`B;L{ zZ^zOm6^X*saKNS}PGRku)I2=Mq&ZI`P@_TP6YlbCGSM;NrNBu`-s8~!#@Aydaj~lW z)ECR0knPq-V#wG}mKE@KPUoeWhr`y`t-mAumvKY}PJK*ee5-pMyJ>@y^~R~*Liyjx zfH9u|JjA8Dtcja{o44YOeyn7BS!qJDC{d7GpkI z6o7hZ)b!qFs+}>j#XU^F*LZL(!2{ZE=FZ(8wjTBd%x$B5z>igE1$QQsbI{*16jv&^ zBZ3c<5*RSD=t#hl52W~+e&&Ecc^gH@BJhA;I=tz_4kTPCf*bG#9M~~*RHLYQCZ5VL z#|#i8=-c!Uamrgi+3p#M^mUruP8Y2T4%u+xURYxJl4m{9c&$7OTHL%y627RJ9VYwL z>onGU#eRCQ5}yaF__%6v-ojpXlKDC^?5^fh-1c!w#25ZY~;{x2y`45NQmN$_S1^6he6eG} z`{Kq~zVIoC60U;S4(d}oixD#=&ms)mwf^Tj^^2im3@7T4NTOB%6RM!z)`5J-GdKy-w^9eCg)kZI)AD_lB^kLSc z0XLj<7m%`F0E>nR0KqORm7eO>1(Kr1mD-a7FdIPi3 zHAK;jguV2!^e0+7k0JAKB@Acu3xMgFr3f&N`yx4RO)+6R3bFERo0ysRjG72X5p~ZB zZnO=5gk_?mUTsR^?3$DV#aIEfxdFeTrr(Yq#u%=d-w)iq3b1b@&z#RuF--AZl!^3V6dXu$&8z$h z5KaJ*Aq1?}vs(mev2}>~r;J=~HX&JdZ?!=RF}70~x#zO?9_)7|?`GSM!o9p<;Ra&V zxDT=2kFfs_R9m_)4$DReS~vc;;Mn@&d88G)@3+ScoujV!{svZ9Tk;R*jp)xxIg%;S={XZ5!-iprgBNXNGd2^8Nc6DxCZjPbtun2=r zfO>rH_ozsspGB5F?M}5G}?Xg%3o~E7&tZcg_O5GgKizDoqKOvRh6C< z`qKud8Kk;%z(ktpw%94q4{R)sG&XpJeC+W<_o1f_;W0-@8j6=LU}tlfS&J!wQPOq~ zCmT}$mfn0Lzptq>>XhPs@m*Zy-{m**J-2OMI9|9tg+$M=viv zbe@_qW7X3lH|~gORv6l4ot5oaJBs1%PZNAB7%5&jtvCItVz2RrKA!dC@t?|PcnFo1+4`2VPVlc10;A=_g^-sP4stRH%lb#O_8zisjLz?HfoS#ePTf^z) zqqCap-KaFu#Oz0`zmYZvs^TYR681Ds=(dTv1l}giKTIHLR{0e=0wa({P?o%`kREQ`z zKWoMeqesx+@5H{}rd)VzZ*?0M{!|{pRdccK|2}y4?oZS7$B3zl44L2ZX`sqkO zbFv!Bkb5!kg)7DQ^w!Mk%G>exep1hdb2Mzxt--p=I_haCgeEgs7`KtHNFM(x>sWFFNJk!}S#JRjYaU>_||U5~Ikf z@(}9ktNq*1+!ZQ0qC^bqZ4jNj=Mwt;KG_7#iIL{jyF#|D%m@y~;@p2$2Bt^su7O})aSIZ{qV?Hh&j?dZ*cYYac|WJA%AGBU@tZ3-zBj`lvS zsION^=mYKSFBUJ_H80ca8IT=c4ONOVuIz62Zpgu8j{z}X`{3jl)`!t{g8m~LqF)Hh zNB-?l@&EYOkZadu1i-cz>8qo!4kWl2fE4GLIFEiS>2{{gF*VVERRh_zqG^@OF6IuE z*XxF#J~A4h_c3bgBbD%IHfBA2r$AQvWozNI_&#*ejb)82PQUf8?^*6gY8FxLUG%5i z65xTl&RpN?2uHQU}E zPYvUE9tOj)@NO~o-M`d?xGC7A_{s5Eh&oIx|GR`OwgZ@N)9E+3WhHlEws^#r@_%`0MC zjO14PUp|lldcY{i%3z2;q7T2~<`C})e)y0Hs0}yrLp#loZv91uo-}>nPvMY7 zMnGVveiLba+vP(JnLdJics@chn%Z>UUIz4NJ7=jNXR*#zCv(26R9lz_i>%isNU_eE z2}dmJbzz3z^hv`e$tL@$&x=HRkg3?5jcDhw8>+E74SnVL`d`nq$ZW_pJqTD!taC$~ zXisSGIN8;`@;z$cGNd)@l(V3QjJexg1o$o<#$GtKyC5RmwBlcfaBFCJTu252eEcEz zP6+V?%#0tQ6J%*!8d@4z#;~^Qyp|gI{>@`g5fcl;7Dc+AkzQ!v{@>I2sv1YN1>Y$B zg_?4h_h!<-F3s&XJIB)5DhR>TsRwpI>_Iq@{oQ%W6+;U<_K+Cm==oU{tP=$wJ&A{a z7>lokv~gsKW6qGA@Py-M=KK4U^#seN`lI!dP556z!lBk11zh$+#EJ*qNjjY$R$lc5 zVLwPCtkU$kxNcBseq{cRVj!ex>l>Hzjq9)KMZU|Q=45(Rh((cym_0%(b3anzTjsjImr$9 zq(I@J*=~0Nv>0txZ0<7{l4jPEkR$HZhJ>Fsw9j!F{%x={t)Oy^bbg8NRIWbEuVta? z4m>?zweMo&<=-+L!j(q7nI8IX<>%HM4f&H>{~)fX9c_rug#2OvPEfuu+04V+cPbeP z@iIatjgZTbW%^)a_;RE;;QsOYgmgo6fFR^ogGx2_G9aW8xRx@DBHNc;Vbmr{OYx|?m0R>3ra~ThB zJVqc4$8U&MzqG(#+|kC)lI=L7GU9pQJJmbeD->Y5;TPP~xn1RZWUz!Of_>;Y_ge)X z|1|#oDJJxsj&`$N=~O$0T`q2U@_g#6MmVE!lp@&hJX|k&MAnDD6io13yvCirBSX;YPzE%7VCmh!d)VerTO%8D*A( z9h9qs@Q`A-1+=QplGjB|W%o(*E7*BsnO$gP;48cqeb%~4Q8Ys-FV=qzZqMch78EGs zYoh$U81=l;Y4GED6~v0UN3CA^iqjPT{r!|6uXme!c1IJL(n+mr3J2+G{J+6;R$J7$RO@6u<2YrR!X19rlvP*tnb<7J!)E@r?@|ZGPNdr^RN?M zg89F%Pit2dfEdA^{Gn!O>F|J+B-#aMCxMX0lrlQBuYm1*v;{}<`CmE>d4V)Y=9)!0 zedSBEkra;EjE;m|GwGWsAmpvIdhM5l4JNXdSmt)?_XC?mfCg*hJVID3=1Y7XBa4@% zff_P*vHTL2)EPIgV6~hG()Sp8I~($ivOFLkN8%0F)DJZzKl;yrQ(w2bO4wN^5vg;L z{&V$$!;Oy)Y{E7*o#i%f;&jHW!|j{1V=fJ&A7f&_d);El2akT#{ zEXw2QA+gPWp;2Pkbn3hPr+CrQs4Ly|71PD{{OhU9uUaA_-6|4V2kD(PXcbP&{QRlOAH_^5sCCMF{C`(MJ z*XgX4#f${5_QGNH*FlRTuV+(;=LRPjdo74Q0P#O78CYHp&#W&p6^{|d95XFLO26{{ zc&|%ah`V zO<^}??JAskKrj?bE-7YPi!Klf#33rdovJv>J z2~%-|711}>bzd&s;G*I3c$1txDPoRizd@64I+qDDY=7hQ4`_=>NbW-C6c@sUs_DNn`q?pt*m+CT zv{D}Bo!SN`aagPCFn0a=phZ(YdM@NM?_tid*})fVd9JCK2J4-@X1eBSjr^aXON?u_ zTx*=uhm2e-yT>w3zcFtsv~aBN9e+)e)Vt+z8N>AdvuU(sRd#Y)lCGN$w+CULOuWrM z9x4(3A4g&Sd>0PQ%SoDNNzlVxLaP($RBWoascR2s}vWkb`~9OudkP z^TX{o-skf_OCbPg(}xO8th?{l_VlnmoApUnaEhY5+pa1JBY9>ZJu!jD*SyXXV!h$| zCm`}O>;wyg-NM4JMyU><{@9vY$cFq^j-rbcKrUmEwC%$dz$_+3FNlpzUpzgTCt?5N z<91-w%qQM|7AH}j0fpNY?Jbz~o?yn0#9up+FbCW2gVm^^PzN_&u_|&KL4ekY(9OFs zAkH&TIrExuku0+_wQ)QMxmX^&GO=M*+;}%Z{y&^-Dzo$r95iv6^*=#Ta?Rq@-_Xr6 z$%Z{LNDSKgQl)ddn)bxM1-rAd6TW)9YxWRemX}i`_86=1*P;-5B6(fiMS(mIwA3lDit*GwOL?wmmqM> znfP!ao86ipDtwdmfA31G@YKUSD5RDVo!AUTWqX$y&@TbsG_v~NkWTN0dh*&SJD=V; zGm_w-M864X&5X1r5S7%${Z7|$>r&{Ru@wK+6*vf>Ur2*H7f5u$2Q|e%!AE*>fFF%d zPp3_$xo9W7^om}V#z5xEYE^eGAy+SrzWCPYKDZy7>v%{S5O&yhzR_YE5=P`x?>Azl zu1%ag6G@1ObIKqj_Iwu^YsgBBqxLAN*|+Xl)!8Y&#LdZ^5u!R7Db=)`f|=iqQotXe z*}j{j^?laoLBAd&NEPahNPK5J<4h)}wpCUl01>F+hgonBD7T)oT@G7Ta9hr5l42@u zt~+m@-tG;bX8R!h2_J?|3)i&!JlBwnsNCnw^#o~|$%a^Te1O=tAT z@d}2+pK!6gX|7@#hI)Yqy>WJDm)@xh>1wFhQRbWqxMwnT`+qz0DwX;U!AM-_P*wX? z9ZK!UQvthgqk~@m#B3)f+OX>Rn`VHcC3z$CL?BI13KH9-HaW-hiWTmec z4Tfl+G8yKqiNx8i7&JPTJ}z2@%w8L^CU_K&mPBEGp-r)YB8<2=7-X>}nSILcAOt@- z6_Fse{qhqlaMM(mcuc!c0vR?M;Q1r3CZ?uGp|aIfD(67_#4Z`w#LQ*S{Oze+fvgkX z++L&xm$4CiT(Sk-vgwRwve=GE^%0q2kobmTO(4dKWF3kI$g)`lo_)DBq2LQ*RPnH; z`KkGob<*Fb%2M;Ynw7kJ2%=ffFw76%Rz9V-aIC=fSC@SF1Bc+87_=X&E{f|gw&}z1 zPFTJ(sJTUc73%@Rl@^6qa?bIDpMbt{=sZ8(8SNlGe%2!Y6Y$SG&rC){J>nql&}9=@ z?E@X%b<*ZjkNwn-K?J$+9Rnv;?JQPQEW5yi?Ho`+xNtwpZ6Rs>%^eUXG?Y6JMCtF$KbZ-1J|E)<^x6@ zS7;-~R`#gPqiTQEvRWu>#?cTH4WUD{Fgd+4`~R|X*o zQakg=?L1G->)T(+ydUHd4oyvP?;yJ*E>-o(@GaI~KHVsN5&mekQI9=LC zX+~X5hdsZ_bE!WMDx|935+e$>gukGy^_aN%jQI;Rc@s_kGb@c#Wpneyz#fw9;3H0M zpN1rSCyvC^bg~R!3D`*V4pjsW^XN6^>f0Fh&MY|2zVX}k<~!Yp_XAj1uJi{SfQ2k; z;o~h`buVC_|20iQw##}ht-mG3#xq)oeoL1Ee-8w)M6Kmjp!((XGw8_GzKU6W)*GQ) z?Dr!*sfTl216^kHwAG2GeHR7x4h~-8!-|^rV(EPa6$+)Sn;d(*`SS3Z<3H{7kPNji z_Z|evJCdS+f}`Sts`?q^kDQCgKgMXx@%=jk;DN$6s8Thi@K_YgDn^%`!5fudTB3Tj zwUY`m7&3TtiXdA$pEqJ0li1W!WW6rV85BLpJYjk7n=1UdzUtPF!!G z*U~3&u)5_M&gyVYOOw>L6{XZB!83r!+GP7k4&P dFvZ?Cn$ww%PvkNn>jyGK!oU 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 z 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�H>8G+`n}qVQ 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

    k&0e5Vg)k&$K;+_5w2`H!!?~4g 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 b%X;|k6&zX9}LfB>imJ1}r&wMhc5ij`nf4}opa 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

    9S6`C-gdbJpV`*TXC7NG`)~C01WA+$s+jbzWSt2 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 literal 0 HcmV?d00001 diff --git a/examples/uniform-values/screenshot3.png b/examples/uniform-values/screenshot3.png new file mode 100644 index 0000000000000000000000000000000000000000..a8f78a5699ea6cc7e855a58b2f25c1e4a7d783a2 GIT binary patch literal 1555000 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

    >+v=N zf$P;97$;M)DZac^%s>X$e>f42oEw$)v{nq_?-Kof z+)H1uT#pUzW{dEjNC3E|esE`gYvdGknQd<{s_OV^T3IJ&gg>V@;3MUY0w3kq<1hQP zRuL_=7?e?a{!(cLn<3t)O(ljl_9(_b-2}q(teUxmC#;T2)RrHm@|EsHb^X5gRuaTk zb6D@%#v7Ec5*am>DtTlEt+K2TZC*);~ zcjSliJmZ|7>qjrf4RdnWn@-PitCLs9-Ob`Oyg%}?&0ynezVW0jzUSuqXF#`hdm%I~_4v=kNO;z>hjqF5|}fO<9qiCJHd#wX9ld&$m&fG|xW z@WTCO$LwOyY(#ndm+9V5Vq%ZaOH$kW{flq6YBM}9P9}YK`7BsehpD%f)k-ZayT%eC z{Zv*rXJvsd>z)2o`CbydQj!$=m(&7VckUv=*oXlA{FMRk%K1^+#nFF_qpmt2sCFkl608pZmos=;52*EY%=59?YwogQPt;! zyZzm)1RmbF!bW12@RkY<$Pl<}2n9y_e!cX6ZkX18yd$a0b97kr4$yY?FLJ-53o7G= z&o%d*;>4Z`RG)~jEd%44%ac~_sq(Q#+gYS&Gr3~j(7QNw?b|=zu{{g6V{iDv%JSbH zYe-L%tanW-e6{$zH1z@Z0-b_F*?;`KkQNdIri(-azp`lJIUU$FA8&^DuL3F$?u!pV zTHlPAqzVM{763s06M(!`kOx(hnycBqGi8r4d`{jFP26=6u|o=NOLR-~=FM*aNqR|u z>PVE$t2tgK>SO2ip>?fJ$Zz^ziGti><#RDapv%|T^<-=kju75!mZ}l&Fp0|W;>gO0 zo%DPE+z0RHV^l#|%UZ8e)`+2`uGhth2kq7~r-Ja}`Tlhn+!vZKM%~BVHZ=g~fi1(i zx86#f;|-^>HO_t1JSd_u#0q3+u%>eZlc$T^r&Oxb<(3YeJhQVZSCm(A>}Hb&+Pf`) zwT#{qpbsrUXUh+1 zI0ryaNhIP||5YnM+ue&DfU74N5Cw9sYQH{4JETdm=C0pXEK~El;-$9b&TI)X4Y1Qd{rd7Vhf_$u^vC3n`(+`=DCema~f6B$VH!FNd^<)&c zf)TX)1@#2>4r9hnJGTUD?adhsllKzLI9*Pot%SPY3lsYx)kjQn%H{^SZKp%hFIyi6 z&^2Mnyknt8+!+t4x)Rv60cY?BkB6NF7F;Z02v=rvN1}4S>cxOyOpnBeKr>gQR0eiz!=?*RPG?(3P{_CuiSbDXSKz&#j*u z*I0i?!{58npRIZwT(QVQc4W^Ab5&S z&bz3PA<>9Qlzg@*(C0ZiEz`l{7T_p9I=B_$_RqP+hP(7kSFpl>V(0Z7z(D}m=G3cb zVAUQ0E+RIb`g@yf)_$($cf&jD4Or`u`4(KhOi)dgf@!LQP8!jGT35@fmlM4j-xOOp zYMmv{cKo}UsMwexD(cprj_~#gSKx`2|-7`}jG(g6mXZ-we5?!@ovN0;ZY60%hmd2i~nDzY7 zl3n_GO1VHMnDV#kWPGC=4$$C+lY#(b-;op#nXZ?n(9!71s~)ShO*mO1NEPqyV^`6b zbZd&XhO+q&l~`_il|!;dp@@t4ZB)JGt}SJTGoHYx?Xx$O!3i`Mt83IfzQ;L71nSs& zq_Of|Ba_?{lz_FR=JGQGimLNNyB^u5kNFR%ONqAOa6;4Rp?QXw_p*&6wppw1hfd=A z#S$Lcs@+t+omq}`fi@M!Hb zmOrH2yF!l*6J$0x@JZ*lXBwy`U{>tGmFUHIzVXrROvT9qo@}Q@+rO2sXwmaVFG>1T z(f-|0r}k>b;i^kD_?D4M`MDxO{7!y5mzY&o(ZHmQz2@Q+7=AcK1Yj6uI|(iFFW;Jb zncUH)CLe{7a3wWBGKVDMI0G^I4~WiiB=Jjar=kRTYk^TA>c_(YuJWt%J+q4k6g~iP zUgf5#)1_B!LfTYRzbRIf+n9j9J9#~?rW^Wmg4eygqYvdj(LO`4l#t?u987^^RH@pt zvD$H@&sGzg{8v+uvYmM<0IT`j9vd=@bk*D;rGj^nXnn*F?2fH_=l^=nkQ9f9q%2jL ztwyF~C*PB?F5qVnkswtU$CAj>$jKOM`V+ENiCDP=z%oE!tmASGW|XIvY5W%^3of_-J$dDKHC9y95-6c$+~9$6)mm<%?iO)Mz-d|4oN_ty*{RIZRoEe2hQ-T+h9GO`5~x1%}}4ecUpGl zT7a5SPmg)2%eTM*Oxh0<^#{4=f|LCrF871KVmcKi4LAm`jiAC(P3fS2nu;TNUT`)^ z(%nftO|x7IxpBAIo7r|_8`on2>2A1tQW?J2{oFU+A)5}ilXlvchQjZD6?`DicnIJg z#1P`NIBL)lfN=j!`Z9dFgSc?TCT);FL_4v#s-HLh#$*YQZRD${R5@XHl1E0Ur2FV0{0G<#gUd3lD6d#TOo zwAsl=Y^mo7i)Y9b2k0i@iaurkQ~?>nf0!X$30^RwEoZs;u^bk{$q6YP|_oUQ1K`rAZk3v!TRy5S7Sps{_294@v45||6 z!V;YyQ_K8G*1uS!$-}cYE~qKd%6Qwo+YADH?riR+jnOI#vGL(oy?sn#<>9RiYQt$; zmxk^SO#*EJflp7Z^iD;UB9Le zWPMzmUPFp=brCi#xWtLs?LGRTI?JJFCRlwFlWtS!ldV-W$t~L!tLL;c98|NYgSLgN<3G$id21Yblny`9Ozktu!5Mo zC%m@K$E9lt#%alx8Z+ty+I5}=Wwa$LORA<#arB|xFjq(*rzElY!{KNQH5^$hK&Kjrc=Y{@<`=HeKCy&C2+(&`UJNZi6!^JdiyNz0OJA;W z8cYAgHc)M#@yi}kdBR$&yHtAHOm?>#(ta#CE$l5tZ_|V95hm4had4$E%?c?1tll>4 zDsAi$pA1`6b*s^5}k>f1bj!a^Q6sshbi_y#t(ojBThzkhH{=Z=(k#4!d?2_o^&Ll zMyA?;qLQ^!bO7N9fZ*NChj6WB(4fR=eP$4*{ug+etxPS&3S9bL!`T16^g|Lt)TBFW~bGFH^dm#8NtEE`}oQ|zF>Lea)EQs_VQYE z317cPvrRhqC?Z0>*%tngaxzpnRDsex5?tk~a!LFSlqH%FEh1Tv*lh7}^vF_!B@E_5 z%Ow-9sfEJFUWQ`Fnx&W7a=@lA@$3Lb_8kdJThv+1t1ItywIVig&e^dBi%Y3ce@%dG zM{-_!T`L4S=$S6@Tu9$|?kG~^Zk`F8=q*piU}e^Or&k=+J&He9Y{=R5KM7wp70&G{ zi65^HH!FN={84QDJut2}rKaV*RsLV&+B7U7ZEPFleLmy`jBCG5wsYL*@4|=@CAqoo z>2lC67jR9st=ou>^09{3o#J`(9?h$%(waw3KCfD@SlMvh?70w}aW8C+Y3Nn=@l{&)|7A zRXuAm2c3x$2i={iX!w~f=38YNwiH{@Q{LpYv%By)KvrRfq@kvI5fjJ%{CV_y5_{q% zRnZ&Kj=n8cwfSdV5OJjD0l+gT=F zL(?1s$8x#Qy%%}R@Y<@u0HOrnCq$-pDvA0)3;1iCjXe!7r)GcIh@7eab%er2ta<+{ z3Ioe)TU(CF8xwIyhf!5~gU~G}_-Sji7Hl|dP4#-#Gng5B3yZZR73;UOKz?oqe2ww3 z;oEl|(vodo2n5N|xD?Qv=*$j=I;}tC@X&^oAw{mi(=BI|U4KtfTly$g;Sm({=o~7h z<&zU+_VJKO=Ww)j$rfIa0Q8Dm)c`TjVrGv>Rr0Y#28@TIMwPwfO7RtqZiN#cjc)bX z?l^yU?8}aRd9@PQq53v31(DY?U=FPIMQkI2>-iTcQcH@hh|<(9t2K6x-Z zlw+L5Wvc&)ToATMN+|GHFJEA0&vjC&Q&6x_X#G>Q9>ofB69b|mFMl3kx$8y}aw-8Z zZ5Al05ukLh+<1CDir!q1`|9Q)@Sv2_xDJcU4W#160@0GU&G|vw05w>2qqGX3S(;Ri zf4Kkn4?#GX^V9_bw4 zZG5x&bEAYSGu#Hx=!Iw4?U^XcTfgPmfcMiO>0#ig=}GWOqLd2WL`3GJB)qM~gR#sp z<*0bh?&KKNgz%l=X7L@BpSFMI^OB?7p=gZA8=w-YEnm0=KvAWaj}Cd+AsCN4i7Cp7 z!{2%g-u-pCX-oISSZ9uj`)HA>Rejr1;+)VMrMaV40Y4LlOBQdbNu6y*^k=0xU$YTC zFGfu@F_-HC?eHROuE)WStACrK=rLH6j-T|wh8;?Xt;QE~J*%|_j#CXIx#nvUWi(IE zokuAiIq;NTS&h3=+|%l)c7l|4u(cH}bsh|RbyBnZF(>)aSXha=L&yAf`R*i4@iR|~ zzn9VM)9%ck3Hh}#yIS=RRr`a)&{G_oMJ_gNaJhI#3f)ZHT3zctGu!aVZ5e&RzT>hz zTL4Uct0)i78X&b!Y%uWWO>N+cuJ!4Q2mI%iQ<6MOuF>rh>hH0Nj-LZW0b`K7f~i84 zGy5s};HzB&=@qeZUc||8f@KL7KGAh}0+fyOsWA$g`d{#G{?LsB$bG$4PR}X-@j-nv z6O9SrqA4o=GhF_7F{5MehhIIgps_X+vbs(an;)cvxdrlZ)yeBm37XH)=As zpUr>!Wx&G1Qb`h-?hbcSdunu;yZkWHt?3MDBDfWi7}BAWRf0wF2iH0US%{^GpInR_ z0$?B7m+y9Aw6AD%=nTGhad?5*dk3W;UT2F3}EF{BMh|SKx>*KzAZ`W@tOlM%y0lg8BXQ3}R%cJ;Re+veY6e_oV`2`r5uhT_Bge zvCXsN*{gq^&CFlL%7kx+4K#l{YTX}?&c<5zH9HxdCP9h%meJT#!I4qI)MQy?C4_l$ zb-tcSu&*x);Q(6?qI%ltGo&97SD+Mk(K>{I9`^R6#MKs!-N?o;?{l{!o}-_(iVVd0 z({}(%9%b-zq5GMfoa^sQ36bw>CmOFuuYM_Iu}>z(^~~=iLWJVt6QUCT*G#a1o9q;O z81`qc;Q)Cr(ysgqMsm3%&#gAKdPG7tYQfQC?ZTVr0vjqG^~`FEYGE<-ISV)2j*0(h zhww{VVE$dEl;!fwW)@I?&a`Z%%W}5*S78x#kA^>!vy(-&aG_CTmq<4Pk9afe(KT+d zV@qj3h*xjo#r0S6nE^>r9@^;9{t7_8%>cb8Rduq%UqWYBi+V);UhbN7T&imHfc-kq zoFU<(GY$}@&P_M?vG!Z=<_kb6x+~&${S1(p?t)gj9Nml7t9H7D6y`GHO^tpEkNlc6 zp|jRluS(l?Iwv|+kZAIn(&Iv=TcKK+^BIt{MaG_zVnCl1tN?1;!5i6v2VjmC3J}F& zy++?gWhPj??Sx|*me?|!71ewa{XpeI6|?ViATr9ThMHvynu}@XGPW+pZ=S5jh+}V` zuZWx8wA9_LzC1 z=*edDcZSD^3N;YBp+St^Nr*h#83*)i6oCUbLGl>};Sp9rzT!8BtNbv%9mu)#7T;>+ zbEaRCR_^Iz9${K@i!{1?ip)K+a6`t9xXAy-0&tz)xv1ds6OLE;Eo5+lS|uy)L&&1* zt{DZ3P^`rH?;jcb9_X%~c6TQNf`VxN+DT*aDl=dXEKx^y%#)g#@k`Iq=c`Y<>*aG? zZ`(?w<$8@)X1^YCZ?#W*pc2hKx^Qd7G^#YUa-`_L39@?OJ?{(~DwHS?&62oN)0(sc z;$+OvtG!u_9_cWBkt?sqdH7Wj_5&0GL^3&DBG4q9q)r~C{-9y~PV=^^p5F24T~J=d z^3T2&o!(YzTz)RM^;0B}jOnUQH3MWVy~x$p%(Sk9@64b{k;ax!e=Jq#u6P1I1EgP@ zu1aCnGUIJJ1-H~}AzfeKA3u6L|HGvVo2eYq`{$>rheH7RV7r`<@5TW(uM&v)F!p;k zm60Xjy-IOUPyJ`roLLPsGxL*m2I(n3QT=>!i6hJmQyQ(Ge2MSWL$U+bpeV|WCuYes zx#`+j0##LV*UZvTb6ZbyeVT&0@|pgH(w}wijYG}GzQh`IvIh~Mk>i_7L4`wy!8zv2 z&BX9%&qqXpWEvcGN1V^8d8tLpv}+@XD*oqLbXSA#TJmY|%$r8ml>u{B8oIcxPX2p8 z=|ttBy=_%~%apO1EUAb z7r=?pe7xXk3M(#>$di-9m^e&kE!gtfj+tgVlp4dc79 z;nZ6SQ&GOBv+1+4LnKCdp!TrbT|IB|+p{WzMDZ4m{(||NdK*QQy3|)h+RxJbk|&tx z-coA87axL`kyIzZR#HJ>I%6p3-6A*f45YQ;zdC#2)+1Y>fof2l;@kWr%slkoHajqD z;Pb5!Bf%Y5WouGPe_`Mst9~n_j^~?HbCc-$%XMu|c*47lMzG;&alsdUmEZgPTGz3= zn{BU`ntUfk3STcJMnR4rh)Hfjvmlm}0W55?9oMEm-45dxl;*43jHP852~(U(d@S%( zBos-`0Uni>MHQHh-52v;EsB=hzhz8;Nz6#bPKuP;`zChCj##RwYnj=bczN(%+;+cZ zZ;IF%nhQyZgJ>U~vfFB6ejg6pl5A_Qt?^J;AOAgnLH$>9w2F=Oq6M|1JbKHXjc^D| zg_h<8A1?V)R|#-s+3|y7j2WhTNIhe%Y1FoK{_Ro9@wBz-{r5%poa|AyZ>7`zddXF; zl)EaPAhT^n$I6pMDtFw8?kzQWZVbaN^p)4fTq;8H@L;j5?v#~BCbq}GqfRL(;$)-N zx7=mdWW!tk2a+W1PK*Pf-rEZ4?eO8CpP{;YzYiwR9uwdYT|x3ode?q(P{PwmoY8UM zjeUcBlWYfnIw#1&?pH-h?a8qFqbn84nC}I=NBopq{+=Pb;dJ^p2(AmN(^Y?|X{~2_ zemq<&x)Dg}9;4qxyUPc@KR@{?FZYGp+FieUZ?~FQSj@M8rz7(p?gNG3+y4McS7?IA z!=Htee1(QBWMx#SyXozF*&hi&g<1Et43y$Iv}R|>ZC|VPDOhk1tU-w-XYUL8lAzd3 z%N2_?lI60Bg0~ZVU)7-(|Cn|bv2!RJk3|S`s6d*6;)FvX`wa{IgbYYpNSJ2fsj(Tc zOe1jPpbW59tt;i~+gl&iI z)UuyFBoF2~l0RJP{{d-hM>5w@n=(fq;U8@0^+d`vMmjSCDU5u%t@}EGtuzMrSokS)#)-w2!g#mV8?X%!hB4^RC|T9g6n1KaLVP+r1KgyOp}iBGT$V zy?{E|dSvdcub%#eGsz`q8SaiICiAPGMdiTWh-(-3p47x08UG@9JoxtdIOLfdm%=^$ z59CzU$pzGZ@!KD>-a;-8TQ0xy_(Lc7)=y*gBCMGKQ#c4|AxV7mS<`YF|NZsByNN9Ukb~ru=4{QMV86=R}ztneDe$SsS9$VZ3@D-a-X}7N?88*npdAmQ@7G}*0IlTGN_*eVJA6to|5T~k;$L2Si6y~noRLjfLVyVif|Xtkjr8iS+AJ*V(Y~w(@D;@LT6<&GDEwvF*)wcm##YJ&V+x@ zN*9f&CE*lnMFm?jX*5x5|2i8)bFuUello~zdws9a1^bB(GO76f*9b1n;eQgqX~9K0 zE#$I*y0SFr*HJU;_Nabr77rFUEz%5a#=MMWbap(4BwZ$l@A}#^?ie*eyR>HbGA;yx zfMqH^`Pp!Z3N(->!a1cmI7xa#CjYhuXaF`7a*S<=DKhZwPd-}To>U9vmZhVCcPBGH zxliwbrzk0PrMdXp(|PjS6-giIH{1t20)IVGQ^>sgSU=+DRco57-;=h1Szxx{t@kO+ zO^GMXFu4@l`K2>V4^o%qyZj?7?m+UV?qh%eK3<{iGsDDBtrx?ihx1b^-~`eylv+|& zbgEmTHSKrcD$W!JIXN}drPObjtY$2Ps){W;&;uXRTTW+IR%A1IF%lyqt zWt|nwuc>@2u=DPl?drpl)QYsD)|VWJ=qBwn-|L({@QB#Q(B7p=B`GK|rfyVu&K^;c zcSv??sPHftwbnpD;%h1u5&OK!rDUYN04GLJ7NHQKkbC(VBkA6$HmlL2AScnkBav6+ zFe%m3U0Q9BR{hE=6|axbxDxUK7;)#+wQPo^*wG8m{&P9sCVI%It!2~u)vpS2_CkV= z6WycA8%IWSPWqOnmoH@ag+_kP^8FfJ{~D`xcY~K?k|V%?P_|Y0#ZgcE6M0F0bC9Ap zmjYY<77!nMM-QX$XfSZYs|VeF+Q7A+zrFsr(CZ@OuIdfHyBz-Brxm3)$~*y4(H$re z_)kf(pEg<=tA9O8?&9tZMkwW9#Jbt7U}0$`c5UA+9((6}C_u1L&lm?@su)7&@8wJGz8^J!kVW!0t26yqY&5hS;#3v_cj&{;6 zs&wBa&CbeJPwqD8oCr>Fqo}49TlPWj^=R^IGiaO)IGd&^5}V@$FC>PyQL~3SxK6i- zvYj0c+|1~-;Xn|VvBdr)Tfy_T51ToNLhGx*x1w@otdV1C2p^Fr>}a2ej-hiVm1nsZ zjZeFbb9=Z$bm&(SZw zbWX>rp;o^OH%5VT#NmceGSDnydy6IctyPdP*0UfiO{TPZjB&8=cnFfZYc{N}VA?~| zd)5{q=|R06SX-Wf>Mgl~LQ#({SX%ACz!Rg1i9sg+${!S0PnK8Zl)M-VD(PO7M2qAJ zEe!hZ05jmN0MQ{wQSKK!{=YS!%l5yodFwGlV;S`w_ijm-9*+kea_lR)$2r<{ z8L{nhgB~Qhxa@{dryM(3^juZX7LaMZbUZmzNpkP4YQc}@TrfXm^xogS(3LDKa9bH7 zXZ`7^+qN*O=Z9~9@|ho}2_ak8y}7T4ZQ@esyO9?R*(y9iTJ(%_f1;(YQJAi`$l}@T)w~xkZ(3Tf< zTHBNf?2y@69tZlHNfI9l-h+pEY#9);=d+3kht-%Utw}&$1P@}Yu-g!50sWYTm}~(J zZ(p9<9W;M{T3D|%a|u|v-uA6a2BglSn@a6&`tQJxPoM4 z;U=qO7R1Yij=|SQR4wv~S5>Rpdl~SbVZj#t<3qNUqG*HSFN7v5iiGc7-;|{sh}RT% zOHkISd#s4_6UPw7o`6Mb7@5pgXAyw7QP_UQ|>Po;!gGJEy}c= zWrY}#uQUYBM??R@*((J%(1pY9FZbuh$BqbNH5)$bLqKT|8^~XhOQCv8cSsLXqr5{ z18lCc6N@uTXe95lo!-=xrlU)2wA^P7fL66}chAq21^K3a(WpN#FmT(k;bijSe105f zWDePksRsG@DbIQ9e@>Ut|3c1Et+Pe)W_oFVJ$OJ0!r8#@W!v8H(hH0QRYSeT)3R-= za)xcSl=$;Ee*Vh6S#A8>=lc*pjlmw*lc|*zGoTgtn^mODwVAtfy$(kxvP($XNXG}1`- z(&t|P=b3Y!b6%X6=bbZ-GtPXkz3=<_WKrGe-+VGFY`5{Hb8x8o{qc7b2}%tDCWcP= z;x}^77qf`fe&Fx@z9dN`s)G*Qu2&HK)YELJ_4v;I;var=bj|7bm#^|UdhdAYw*vHiv%T$S-H8 zQuv9z$S7A~n^pJb!PGKw=-P{YN%^l5VkldCOZNsPR9V3r*8W|=^)&4_AJap0T_o}i zw+a37xyc49;p5gH27ct< z1$q(`-N5y0*P`|#RYv@q#7-Cgy&xU^*7d`LOy&W>JhNHWuLN*G&Sfh^eF+mnY6trP{w4DMv=I> z7Ovwu>P(M8X_mbQ=q~pmUJSXwr`m1OHBsJ)JviICR?k6;EGB}2K^Qvxz1O}xCwfkl z+#I&uAYaNs)X>>xY5FrOC!#pqR)4pPJ~ZIyKjJ?l57O&ZU=5}mVirXVe4m`=b5BkW zdUumwEo52J{YvaVSbNHeCvZKfvn@mFo-^m$8x2xnqjwZgO@VeGsLZ$J65nyF7u=DLZHb-sNZ*2OHD{#0{->SQhP}QUh+MqvRn>-@ORe0GATo+aQwWu=xV{*TXvPEkvFb~e9H)9Q}i!+64_J~Lh`aW=nfi+@y>1JJ^v3+16Ftb^_{vLjYq((yMS z6A*#CI)%K3uU%KU^&F5-i03~Nuiy}xzb&tOEYdhI)V{y8knaQph2hka3TpHuKh#vNMnQkHK&cJ7^|dd%8S7D}(puwc{B3UV{D7pO8Gc~0cwQFTwA~_g_Eb%;$Clf@ znRx|sIgO@D-!AikI2Sj7MKY!&#JVP6N6M*Fs2nVkz3{WA1-9NReV+0nI5=A5`{qSY zuAWD8CBu5ceEejb%eqQP=3rD`TYXVQ>SU&$%^92hDO(A%P@BCwj7$ z`>yR$HjO&TWx5M`T@H%<-<+Cw?KymE!JJy4YEwK8rt>woow#c(z z|G}g1hlDVE@fb&7?FMw-4!-eh>)3z$IMm>>9{6gQ3^PM@iq-9K;8Iw?T=uUvgx_Dy z>@Pbwp4F?$+;vsxSOF9q2Nhg(MojX=HG?l4drNm6^tfGo{I@D zU+(4l9^SFk@vclp{Lk@p>09?_NI9|)KcS($bZq$`S)*ly=dR`%`CLc9rhxeJ^U)AC zwu#mo7kWxkLoqxmM2J})sUy=#Jz5>l^PJ)(>CN#AdG_PIK)Y?^Mp^0OE(WWt_`vwU zY$mJpu%a2`b}U9#s+Ikb6*D(FVTd+27A|1!SZ z{P1)95Ko(1avXk5Nl@YY%9zP#6!n!9&aA^CmpTOlINno>R=j(ZDEF(dhkXe_n50Mx{n3 zTicT!ONwZ+S3FMW$5OQuoS?$i%z(bwzf(P?*y5nev%r|S&KepXQkd3(!aY1dCN#Nz z+Dqs-&+9VHODJZ;sS*n?2!8xc3H0-%G%DC;eNTr{kvkp0Ad=CCv5r1y{~C*$C6A@^ z)7{q}@0OQ|6|b|*pQMicNICSeT3t_%2k-;yw$fBLz(=rTG z!fPrj-X(7Yd+HOprU_gfC0?!iEf#&o-bZ2@}tX0bAAQmJM&H zs$UX%C|tUsbkc=j4fJh?Kbgz6H5tdFP6JW>)3}Z2Q_6@JWD5O|^6hHgE4uf-Sx9fM z<3*ecWefLC)qXzYGR-$YC1XY2^kDu-xE+UtK%#NIo89ta<2}lkI1LVz4X504)iL&S zgKD;&gNC!Ze+;bY^Krgn$&fWNW9l8tE?0PcNw|WO%rU|S#T<*c#j$7$;ri7vGw00J_Z^WPrxlXXfy`|I z%Pl{<6gdO~{uhg6Ge)f66!8J*K} zPiKWwsa~_o&y7!SgE8rZrU5W<=^~W>Tzn92T;n(XOfYx_2X=?;+yAj z{feSm_JWGiUi22&HSCWI9sTklZ^7B(gYucms@J4RB-+vRvzpFh!DTt&4MCZ9LCg*) z#H|$xIO*mh9_^ZCyZplzzpkMz0W_Q2EP+9zB9=w^6kX~01~4FkaLuFZ&CfUxelk`a z+9g+TudiN!CU;J&!rBo20?s+#|33m78hM{QUVH`m%=Jr%TlCa~&h{{Q%}@G)jR|d? zpPyrGw=1-gyl_}ovG+*+BRC(kb9+C?EoU6dPx}pPwhNaf3wpl|w|dQUx_RKIr%1Vv??!PkoNWw!Sb?0(=WIuA47ZGxGRdEQq^h+mrJZC7k7&NA2}|vowX}0xH#g;|ZReG;9Y8%@>@qhvYeuA4 z+cK|(y%Q3j2sbkh>kRH}{T6@K3g?#UNgctD@;QTF0;xh>&7)*d{7b0yZ}9=~5+VG} z{Q-@i1x!|!7Nbvl(+wuideJ%dY@-2edXYMP=&L@a|20OQV2ogvCmLXka+a(RD&VXNFa9-N zd8EwzN6MyP2iGj-I03mpOMZ$$8EV}`+RNWgADdrgvo%q4Vgcs(Rf}zAN!Wu=CwOnL z(WeAQX6f-$ClLe<(j|ECU0!Zq`9sOuDgejA@V0+y5^S`0h~bODf^1EVILd4qJghyA z#w}6E2jcv~J{cg+N|2x&cTw_<#hc<9(gpW&6YD|HmbP;VKw-XUuDsw{0SYa&wI9Et zrW&029#O)Y4%XKZgbWQF+ZCNf-O0u#ov7osxjYj-?-JvxNqsq;s{a9*i{GGTGo za&%!jPwhnK!E|&$?H~^=vw0`rLw38OdT-4VpU|(axIi49IW*AMsZi|kam6$3*d>1ZE5K0n zB7?AAiSekBo(dO9Mg4u}N-5KH%ia-B!3v{k)U7BoBtgnep1nn+3$9kSyWI9+7Jj{^ z;`hCNdB*E-4U4aN58$_v1CnVoiddYC3Zl8#eldasKM;l|f-~A!m4E}4?9VT>)7G`M zx&DcM#u7%|@v8?9tMAiQzkKJukxyU#C}S1}wwf{<-{KcET+*Y}?>se7&(nJ$eBbnm zqyt3wFLn?zYL7v5!-A>15^o{1p4y zpu$Fx|Ay_A`QP&gJnMsdKA?v%;rQX@PB2UmUPk(?iGOa?hZC9%d4~4;O8iLMYT_8E zPS*eNgQcwO4gnDYkiAcr&<3wtrKcpuVJ7@*vBMq139e0-W3L?06@uGewM zpLQy+)NVYKR(gle6#FoGOd3I)B&~5PTDo0j!;@P6)cVkNyp~O|v;u`iQP|IaOviqF zs<_pra!D&PL-VDYW<=ZxP7I4&Zz4!Tf502!d=XZP6%;iwbS;(HGhZ-P3sMk&gC9+1 zoGjBttZI(ZFz?DX?f^o;TR(ahqF*Pl%1>ZX>1mRo9D8HyUK=}XtkVUkbj;uz!{r5$ z^EAoQmUdgi=D*6*{D6tsAN(4yDrNjh=nGi1yWnREc2Cn*n$_e5_DjO@jg=>lM^@~9 z+?_Bg(0NleX)imI7PjPl0yV2S@mitU4DUGu7h2kiA2^9Ftz{EavNQeYxh-F>RBt{N zO0V*g(_u#Umo3{W(0j94UUNX6ZT8@sG~ECR`?qSMYw`K_pvG{)?c4Q$Y@75u$YK*3i2^&Tg^_IRR0BLg6Tnz(vt`>YhX~(Q{QeU>8hqlEP?yY)jn~j8z zKE6yei{z^;#D{qQTi(XBOHHH5yrJ+DR%2x+sXwS!24w3uU(Mao*ROIALT2Tu!QH@t z(}d?2*qFxx{c`(K>-AC7R{@>$DOj`nM}lfKx-YhmU-L?lqXd7B1(!V_eyJR(kS4p( z`Cx`Ii6gkU*rKIg%KZz_MP2@piQcTscC<@V3Kdzv40_MQ+<&g;JgTNm-^j#>#*=yT zqC0fX%Yt_lnQRq3UAxw8&D6U6M+ZF;UW5xRIj}`A7qUc!Hn>meE_b5e{WK$POOqlY zPq*7lf4Yc$lAh9W2mfYJg4E^k(U+`OKf?m#uFaa=N@|b~rA^mZZlk>#R96F%RRN)l z>w^~f>FTJO@@1To>8ci2ndfsNdde<6;mfr1Ve-30hJ}ef!1ps#-|LDG^mPg9eugDg zZYNtJfc)disQgxcycsN1B%3je z6Jh;?9sbrNoBR5AtIwmsB^v($v;a7Pt8VOEw{izQwA^~1XK`OVZi7l?kqx9H{OLBI z>jz7_t9gdTSJyea^$HM#%YcVD-;yl$QqO&P!;!*<$hRO+`V_8c&l?wn1Ld_pKbuNRbsrmos%Rv{`u$&Z{3n+BNnyMFL=XgXhMSr2(Mq7wE*ec zvG#H)b!LCS z5`T+VOTR^$m;)Z(itO->xrN*HJ=ty22ug&p-NeC~g_8fy+{1H}rakC6P)(M_XkqO} zk7)Hhqr2}Rd;yT}=V1{VXdOcmWp_%V8b5Zgf|{EsE^lO2<5^v!08kL(wlNPnq?!fC+!M*zIs zGvc*Szug5)j6==oZ^pT0Qq2Z>1_reyX5`K#u!^m{pt#mV;2XLPRv@3_3}VIaJ!n2* z*;OLEWIXMxI8B5y~H z@b$(6gxc{MBEZ|LpA)one1&U|<=TwrLI)p9VY*saAq+AC2v==0Zyt*)*0vYcR`w7T zy7(e_H?BMZgkjiU#TdXkZg%nnz%94`+(;JCy*{u*;pnOCF&9W2e=Hs9f}WL-jU5|n zII7^{_VEVg?R2RH363kOc1>nF>)s6Jc`%p4!oQD8`v$@8nfaOL5RrFYUP6z(M#^s4 zqR?!3&~-C*@QsoFB&PC2u`H+aYo55X`JB>nG<{HOB8u7@0Cyx^@Yv5#&54w;o3QA)r%QapH!X z3kS{*s+<08o8#EiHGo&@rKRK;S#7k#m|eR@ln$=@m@7uF)qPlPcSqi%b=?JJ^v~x< zcpM8oPkEKf?SNV)M66OA*2jZN@LIsY>WJBokDv}ZB~QAS?--v(=n?4=Ra#{Du}(aG z#fQHcUhpaNB-PQUQTC{Ev!#7QxqIKv>u6S5IVUqU?skEP)r$8upW2~gt?uSUa*E9| zQCYJ5mCF6QIJ_`T$`obUJLV}kIE;sK0NAew4wmt%S9?asDN3fAee)S%YMv4@bOA={+kLN*g7W*)UDl&Z@<&ftS*th0JN3;XNpi=gdV$KDo)Z! zSdSk$3g@m-7_G7Bj>miXi@0ed?mJQzz9oHjtV)Cwy!SEy14qZbl$@_wNz*r#7K!hC z(_5rMp}T;~E}`Mjy^Ly5BoYjpy__G{amv>Nl}!KHp5ji$Jobu^TnE|~us5!kx?4VM z+h{o3(uY`Oa6v{Z>iA9DhK(8W@%Fx6qOCGA*bgg8K0~7Xs^%n`D(y)oh#*01UJEy= zIobZ(Cg}fZ$=1fBr~o@BCJPnvb^a6knxk|%i`ic&U9zpQCQ9ikpV->MU49_3G*!YUzLCj}%6DieTvbtfi?h7#cbK90M1tZrl{j5gI zJGKGK;k351oAsLF-jL3hP(Fd=DBnye8zw8J)yBCA%S@JcOt|Ze{PAbyXmFjGX-+EH zO(~Td^vAECtBNNd_&%Z7EFgakZnQCF%$W5oT-o@_xrS-p@^y_t&o4(y>yxLw-Ch&l z71Jb*7j_>Y$b4T|cmS_59r9ZBwFk}=>mV@%HTZ@v{`m*uPv_VUm{Ac#vWw^}C&l>* zbOvdF^TCp0SM{E0yYtf+)`UVL7PbF}dYA^jl`hj{$8GU&@@Hxm+>m~GUfa21UgKk) z_2E2>=7q{J4*rX#rUlWD*aQRW-~EY&1?t9W;%rIY1$WQ^Rj+rCQ@4F{AZhStwnL%K zXEcHSX-;|eN!^K#aUpvE1Iy4I`6( z^V%)NJu<$3tUe_t0<$o(Xrqv}YSRn-rqz%egimBc1v}rt^R}omNIe0T`ig%T97L7Q zbwdCCuznvBi6A6)U6*`FRL{)s@fAOtiZlYj)N zJp*ptY|>|vU;e6Xs}i*8S(>Uc2k4De)z;pav$^oZ3Gh|K7h)&$@96UzZp5}9co_E6b(U2AO=lf5hpTIG^5+XLuxn4<3~*8H6W zm(n>V$8kmmoNgaY^h0DXdAjI6TnjJnkXu$Hx1!CEdL;W)6fG?*GADS4j8nPTNYKxW z?Bg^xhwaL|^m$V?RvIzG7`>okOF0;3Z{{*M_?d&Y4n!vCrK>wyDP@OSgKn9!wth zqVw(9q#W4viY)ux{1+1q%`Q2EJ&l4&mT#wR-riV$G7A?XmVX1#pbso%C2|__D%~r# zMt#HJ@nhpG$(Ocj+dC$dp-T8QPjMs~2Ba#aGT4*;fCeo=yzj_oaLEz>YbJyScv7`L zwMS-wdbauwYUKy=yqd-hs1aSVd0>DdI1Y7$Bnrr_L8~B6@Vm%w7~BuOju$+ZS3Ckv z5&~rL_OL}`F;1hgX!?hhTfsTt>*nidV=r)~?py+`rIm}|Xl)CUsqn~(RL}X4C6-{M z7J&l6uiRT&bg$lJK#9ym`~$!3z0;C#7%$CU{56uB_poc1@S1xsU&&|#1Qv+wGTzK* ztlR3ZhHXz1$QT2U{}R7}DK34phBATe%m>KqimWUZ$CCJcG9mA-E`@Emi?QXE3IFLq#J<0ZuR>|&s_k{( zAOrKxvJV|pvf^%b*j=Ed5|5;k<8=xZa``iIy1by$4gTg@zs%*y-Qewe?W6aJL{8S~ zI6&F(yT{RHVS+;{6;o1um|5O%v`UL0Z;*K37n1prK0@W0tnFOB+Jl%BO!m8WhA7U5 z!tfL)7JbEHn1&~sPH~|%FM^^_?9RJ83= z?enJpIeT`&+0(16F#GT93Hg7VJ>0nQ8G5w2ZL=rI_iZ(YD~rn4XHCsmPl|+nl_dfv zX#6FA&83h#iVS}3?S9%rc3Q&`f4B-{9v6INN`}4GiEm`x2uyWx$8hJlAE6M9IZg=0 z_iv$lxU8+*kBcb9?e|l)ZnnEE9kZ94vs(}c3zm&<#k~_P`77%UUR2a{)t_x2wGsIe z6s_rZfY^>_kT%>p^pKMJ8n2;&fw}X8A|&A)lwbQE9$`la;sp48(q2L^S&?!!oX(pS zW06IU+FsYLnIo30)p5}eHU1-#g~-OGrjAwf!lGu1@8D zx3B=@j-k1RwjlM%Ubl#d3y#AlQ@wd*ZiDx9IG|IR^~=QWgEyxtFOZha`g3Zm=L*X^ zo%s9Vhr7@0ta{swT+2(C&k5pcFuMzl{_TDqi^I3PDm$9H(zH7juA)b7W?}nf6pn_d zjN%w~I2?s93p3**C`!|?g>IO;k&1GsgOUg^P!+U%PXN6E>|CN>*eut0RL%UHNrV?L zs?7TB3(e5!n8nV+g8Pf(MGT4NiE82tumx;3!w?&)|5gdgKWch{$jil(b$7(xoK~9I zx1;!Ex8X#OsG6}3yCAoWX@hAJex)+SXFs#EyYmb7GMV=){gdvdAj=FtN-2dUpHD6B zN=M%}^~y{DcBsqm(e-RH*zn10UYve|rJAmPN}{@VLw1noo1oI=%+&qNjrDTJf18&C zIJP30UMc3JW_8IXCzO>xKdbu;py=FDMEWgA-(enZdDaQUn=v4%1wij!LnAKi1t@Uo zpidX6fKSF*JI=~9!-+k{{a!V zKc1N3_S)Z(@Gj_GHV`x7TI{ z?y)AkDM$#^MB7Sf?JSS~H0+S)?i(&oqs45!P$J>s}^y;)!jydjU1 zW&fE5e+++>`{)xHdxqODDz-iP7_+#j6~L}t^DS_pslidG(;%8L`gI8Hs;weiS*!~` zV<0X6W%;&hT=u%_$)Ufh&Q|Rkx>eo=Wd1m+oWs(O_*K^>BjhoGI|1fhEW4Rswfe+C zL@)D7U_U`(xWRHKaa6c)IJeS4SIl6kg|N7v#|?Z|=ClbayPTszDi!C`q_ASl=w8Rm zd9gQ*@teU9iKw`O4o(m~gOVK%_Bb`Vk?mAUMSTpxE8Pg($^=~^<%-X*Q| zjqpW-zFm?Ec3C1)P(L^F_lmqr$U^ufOO*8L2?g@gd-Vs0xM?c*H%&m}ODT1C+9#z9 zOjEVc~RFEs#8tf9n$m$8 z#{bafcv&5)(_lDBYEC5gZNljm@+i!8@F_M7LISsi9&8oae@RaKdPP& z;lbn^T;OYYMoVlz8J&}84(W`&_h&@zfI1CdgYtb)oLkPaSR39Z**Afo9jLMbjm&pgfk#$5CTX8uZ0r-TMOG1lr8O(?L&7 zQ|;9w*750B6i-N7FVFM5$5Kgi@BXazcZh~x&3;1%(6GLUzUE6#-B~2bh+}f4HiWC^ z{-a?|t}&I|P9Wg?vZ09F0~ttOP>Cg3g7b2ObE*Q*HqKPL68cJ~1&}8FovUoX8B3_J zG+7N(Yiia!B~~TAyU#|Y2Wwg&ObBFJ0uP<~Ya-Pz3K3L)KA55u&RkEFmw%!Zh2+hL zP}8j=h=>F1ex%Q5HlG*8LD;~utOk+0c+S2IJh(~I| zVnCFgl<#-gvT5#oGwJyEy$20apG{~Lyu3+bDAT^)-fLep<3YE+gjJY34YDNUFLZxv zsjZn0y8|B1QuGq%3ONtF0nW_)T zltssHCuvHaidnixoW$MwTf_9LcK_YddDg@E}7E*+nLoZJMsO( z(7qu)EWa`fp+Sbk=k`9nE!s1Zledlx?Dsz^tHbFzEuN0jrR8xOhUC3K)eF1?-jsCr zCYh1{kb*iMqnF(2?>DFNi)!=geP}u#Qgtr>eeTQ7p7A1up9q@9&mS05be}@BU2oGx z59ZP&4QzAnfk*4iL8R2qD+#({n$eaXRaW!}{)tz@)_LGol``xTN}V}Q|JB_x}1 z^{TbV$rX#TKc8sWrEJCCee#T4EJcjvB7B&XQ)9REV}pDQmnM&ddwHf)Kt-=$yn@nD z$1!J@Usd?YeKbs%Rz7KrTj`>wELx`AeBM}1xH4<3EFKy4huHHjn|w&D(7to9N=M>m zrVTW17&lK_V4ecq5WB4F8DO5=*WKlIDp%xFYbAAnE@YW6 z)uv?0$HqJU>2gOh7l_Oa@^%j@-MXE2oVl@CUR)UeE_}S7Y&utWip*t9buGo3v)2NA>y7v^l7|Xfsd>)V*g+FrX5o+o9aKcJM;- z+Txy3m+oUXRu}|f!n8x-Sy5g63aQ$3tAw&shjz9|k^=rl*!HP@_n3ko)tovdDEiTbR zzkM>o%jykoMLoTM)&;rW-c*=aTXwDhC~=kD_>dnMA|dU98OL0afcbLcndc-{@dy)( z&O|@Dq&~>N4eaNNsP3B^z)$KsAyNu?40pOvQiEr&zd4)2V@Is9HR)6E|5OXVF4&eB z{(pw4u--6qR%K>xKjqy+cernu3j;_oL1>!Zz(2qM4aQei|HyNo{nOo<-)*UR(z>=T*U~<0~ zoduSBe>S~7%l;ZR)|*1TP1ODUQKJg260olqhNspuN;a~XG_oJJ{VC($m>hvHhFBM% z`LN}L<{)4Iat zX%K3;5(?D-<}Q9+yKva&MqB34Fdh29uq6~Uxu(#lP*Bg8T@P5x(RL!ys-F)Pcy!X6 zBI&bjdUTy}{pL&A+z?;$aupUgEhuN(=VMho*3B>h7if$gUEXLicIkyA=i3)?U){os zvyZwHZq*ri;B-*33y7(rgg6+d5xWzW=VcyS+9=EmVJ4be{+1R|^7-bgR_Vy6vqH|% zBg?P*12PzcSLa*Iu*WR{%e~Q-`f8Nf5s1B0NsA(fu92g|@z8+F)_WjQ#p~zT7i^D= z^W>X^WdhW#^n=d!MzO~E?<)%^JKuxpY;c2F7$qy2k=*aLPT}IUSC2*@7qb}HMY_Uz zv1TeTsa~G7(}OZBW}uyC`k+NxBi+CK@uwOf$P8rAUql8T&@{$}%lbW#c3++E2vYJJ zE49Hl9d#Z=D4^+1B+f{IRKC;-++s{qoS#It)M+%xvMfxLB?kJgg1-5noJRZFSj)6+ z>8&RB!Ao11$>yv?ZEezeDgJm|bEVPjrhR|Yv;MxQQN@3AHGOG4gC5%}QRGoRzh!59 z@z;BE>S-T99y22*W>djaX}2vcKAb-BJ)W=EZ02kpmHbA@7A`8A3{Iql*8siE;e+E< z<#(F!$wXH!K7#Mh@GCB@sX$k?Ei2#n`ONe0ROP1lR86afQ8-xz8SgjK0ePlfsCAL- z!+#n8Law=|1-RwV$;WXKr1xq;dhTGZ&JAM^tR?{2yyUq{)g@4cp zoHeZ)ZBe4D7Sb32h_=$M_D@*7Rbvt-#lR;e%fj!Ju{gWGk4lesH9 zUy2XeWYE_YWvElbPe>pA_E2eP3A-{;9~>U_^S`ef=5^6pxMbX&HtM^0>X3N~>nTlZ zRhF_HM%laHcZ1arjRqw=HIV)oyBnW1P`w*2q-y+D_ZfX|g!(>E0&wVFbbgJPEyqe) z^c1(=0V@5{3UqU$6N?8-uwlIW9goJ>Y_@<2?c)1 zdFnLoASwy5stHJue*RJD6HwH5!{x8m<0lj+-pVuh92{+G?b!Ew@Y~xK{XTl#t0@=T z9DkfNr1gFezjfp0zKHDaeTlDbRJ&7D)&V(wY8480{e9Fh;z=EtPjPBeSIy^~{j%pi z^=05pYM3xOjg}-5RK%^@BN2JGpATWX9T@_q_z(*11B55}Z z>n8aVQlt)`Yn6FWzuLn@8mc@0=)U8*z}d5`x*|v)k0s;XZ_~t&dT%P>SA)k&Odj5g z@u(1@sY@WG3@UO^H3kcH^B4SOt4YoB=V|a_z?j5Nv2?LZ&5+W zGl(S~H*Uu(336?_ygxQ)HBMK$xvesKi)l~q{IQT9HvHtKL2GyQ5tENy^q}|8?K-t~ zY$mq2!?QX3VEl%rv+1qLB!>JBgVBeNV5Lm4BuT}53z)9zc&0<9lt(1h@x#Zjo?%nC zuIqaC^EWeR$x&adazpLRUq61i$+KsE;L>?udj(gz5zr*3b#^zB<+9DnU?1=3p@>U# z80*#H%@ahyMEH1!!>o{8bQasQXmVWz#Ho4jhyJT|Z%FBHn}2C9c6fUqroLO4dWI?{E;%kgkhVj(eL&qN6`cU1O(`x%l+NDJ|>J+sP zSwU7H^<*11O1nv~eYd$T1z&zm<@2gg@B9{klQ^hlGT3z=%m82MC(q;R4#g*2d9r3y zJ0&yBa|<|DACD#QEKev}2Jy5Wm{se3!kK!7ns0<#aYp8p|f1Rs@D2;a>Pv5WEqe~Z*Z!W|P^c&0y?N_kK zg|zveua#Ncs`LEl&ubfj!jQf(x9ejJ;W3Z2-(SNQrcvH|lj85YFmmqy>TT`>+qlB{ zSOc(NP^yHZBQqFH-@hXWOOU;I_8%GQscUDVWxj@}?)fUGN$qZ+Wm+MomFxo>i|^iG zw_Goxlnr(O3EYToLG<`lVZ!Z@eLJ=gvCAE5mR4>><`M8b(W8A1Zo9xY&qBn0> z4)kYq5~N|z?&^IG%uLJ7EcE$k8DQm8e-Qh_?>D%Y82;y8+W6uA#=U1mAvHB(3fxPR z<%}KnqYJAa63{Gd-T1#<)K{}u55I410z*~|zp8e~42iBWx^^LCm9*MzKY6wu5|VeW z)%^h%9mBALaN`hFJLG~#8$%XxF=2U}P}B@X2ri2_fmBrte?*H4Z&HiJdyH$RFQxj& zc1aO$>q1c(pQ>VmZWz{{oZg5}Q2rwQld1fC}CF#pllL-`34- zPjPE`5ue+1;rf#$j#lodp_{ZS%jKrKGb#i+oijdh*ZRyobPxtnmZVoAw~n?LV_S6rH95z%#x z$|Y@&KO9v^ix;}Vn#{WJ`RBVo1nZ&XMi34E{Z@JdUjNSdoCpdb+1iTY^I$FPU<*%9 zHp3P8psH&9AkL@Q3mpjNf%=RUls)UlUn_o~OCZ~P8yb}U;BBYTExdkC@j#pBi!^hd z1MP#a!!9Pid6Af>N0g%(#&526-wSFaC`P4%@N zocB!HO>X~t4ZHU%mDd*wZ~H&6DmNnv0)-%zU{Sit+}w>!-?C4M58h0|tx9KqE!Qjd z#bpuuuI^IKC=V&eVbc`zvgMK5Kf#s-ROVXObMSU>nPN50v>%s#gf0-k@%^(|(si=2 zU`ef1*vKu=bjmU5Fo280f#w0*_QETdh9=}8-69~*FY(%;?GQ(#LR=6ohap7U!gMkH zV#Cq{7h?WIp-I`?&8bUaXSm`iuNevQxXJmv+A(c8nmjSZuR~03D!%MC+k!7KvH?bcxrZV4E zORKpN{Sd2*@Qn{SMWl??*Rt{aiMA|o*8|a%@Pp2kW<BpYqg6IH0 z_nzDC;bopuraVp$E7SP_(fp+bW0u9*L7&~4k5F>iEnY%VpiXd47_t54fb*m<#rlF^ z19KY3eB`G>_4^HdCO+x5KT*6q?JyR&N)uDPMxq)WZ^pBSxfORH94tpmQeW?DDQU;zyukgB#kTn&g z2{KAu2LVR*mp<2D6q1w_KAtMt-fUhpK0Mbv1wrzh(2MetScStxK?6P%+m>yO{o}19 zMd)3L97&ZlhmC`2E?=jC;h`>o9Df1xA=Pwm!}j@)H2aiI|4vWLwdUaP@iL=RufI;` zITS^|!xG%At{Wbe`({%J$1$Gf-pAT;!*(O2qpv;9V*F@;_pK$w>A#RzJ(Zp1;iKs< z_!-KFcnA1X7RsH!kLKUm(UXNsNU6j-00(h+z`iGR=X5KkH73Ho^kX_kk^z{>e});j zcB)W{IQ_{6+Md0bc=8_@pug6Y>RT0HcSMf!vs=7AjuF`ec_Yf;ZF{Udxf?e&+1Cod zW1bM)m`ML$W8xoWbypT&Sy4sV;21nnl&4l6rys-z+v@`Tj>(W$V!N%Sg|qwe+J@Z$ z>-LkaZ*6j2TQbF?(v~TsV6%n`WvInvtgAZuOit2MQ!*|+8O9M&*))SA88~TJt}}r` zo+p7Rv>IZVM-u3S6x8-9(#+19po}8Cp&57W6@F>-2?&_Fi+7BbokQZ+g2Yn8hr~@e zf2jtNJf1GQ>M64-T$GO{5?6c7hw#M9&fPY7Uh(A@Y$UyDbO4u_{o;hj!4)*mG?W)< zyG00^&@leBdEo_zC{xw(GvRaRnJ`0J2(8Qqj>yabIB?T zm6&iU7pcn1Y-14xsjl6?9^x=@U@Bh!1FNi9`1Gn*SJ{qfY|nSJq0?UevX=p6I6F-Ail6j5r1>4*eCRumv~cQ_jgO{kL#@9Uio;Yu$G*^^jiOA5SA&?mG#^1gzmVQ{JyJ$d&lM0 zlgpQ(9xiG!6Wz{iSdAXZl}tq%aQW`9EFaHKBo!vlB$_Q7}>rB#l;7 zn)bJ#luC7un#@wil}$v`o$;O#hJP+wk%WHQWXRA`0PcM|4y7+YFA z$jrxROuGo>J6;SvzH;*;Ts-uRx?sB&;ciUi%LFukjCw>9HEa`+2xCWiDiBWOSZ3cS z-4R*ohw(cb08=t`wjK8bz4ls^jP0EO-|7w1&_+~*S`hBm|KfwYndH&;grtVDjDy<99lGl;^RB)KiP>_~v zp2K3YpUJH`n(xFVWLQfL3v<<}84*67=&lrO)JtE;RA&i3uhwHy@`p2B*FJrcFt;DY z6Fl(m!5Pf6VlkM1pOaTQ^o*T%K1lz|a8% zF+5FESVlG~YukZ=6!e4lRO$Z{UW5PW{}o=NjQ;-$uc_KZ+8KNF^DDS4c34kcVSSm# z?#B`c-gLST(re!Oej>u(LGtoY(?XH4uh7uNU1h{)o9F)18qD`j+8M-U=9 zUc_ZkJ-Mcp+E0jCS52`U1yt*%t^4e9x(K+2!u|$?wIYe5J1zdHYs z*cZcQewI4a9$~}T9ji3`e_3Wzj=p`;`5o@`QtN#M2m`R?@D%5xCyq=c$Mt;1LEKR36t76 zP~_h_oh`4!<=Gmz{2$Ey`8(AAAN~&yLQ#Yw#K>CNQdu)IdLcNAsOZt;LR*aIyhSXkHICQ5v;4vR>5SwLob}tphx13_xCg2>(mS1z4w};UrU{qr z)&+(lq+eLvO}acoZ*;w$CLxG3A|)BwBk5I7Z@$JVuh~_U^IsXtL&Cof55to^!97Gv z2Y{9U-yq;#7YT|8{pt{Vk?3FjElO*#z0uf4%)PfkXa4=(@|;6nPk<}Uv(5p(NW<&j zbo!XBc&}K>xwy%B_7@&2Yat8m>(OLQ43P)^f4@GjR$^3sCAXywUyR4liW}u_@>$yb zZlV!RDR%d$Y%6eQKF4Wna$l+qZT~{h5)fnO01%pcXJ93?b)E1~yOA#-4>DY8f3ylb z2B{v_D-jKZXD!YpI)Gt2jMgn!r&g@I>AbC;;8?K^U-LaD!BQSG+I>Oa`UeWN#6nyR zW=aY4gxgDOZ}u%}ueNPRhG=@LHSbWr5Go4$bc+}riPo4EiS zF59>NmT>|=qrbr6lH*djjGcdTBKc5FK+N)vSf-K8N@suNh=p&Bv}&@%qVA3(a0RXS z8mU_Xuz{~t-PMz+E$mm6Mb6Dlmu428sPn zL;%(mlluQK<~ge=;q!(U`EP_l`G@Kle|5qDQ?hggd)4H{B3@*p;N%~=h_^aKK&YvQ$<8DNSuKAHux|9{}KBp0}%8d zbo|RiF_4I-KQ95g2{5;k1mo8r4Tg6(eSgVqAVc30ydi;(FVZ&}P3>Hl-u^f&l=D6o z{Mt)7dv@>PInNCMoO;%iAcfvCliLTEjn=V8hqnX`b+=u;nAu&Ek~mQYTt}_XZBp&( z7ModwK?ZATz4QTcVkMhkxli|+S7Ipt3!=a?-n6-Qt7doR#2Im&Ic3ZKhb8Sv7%R?> z^Tz3KY!IMUOPVBj%BWAQ^yK&;-qB!cf3PC%HxTf>v65KV_14+&`kv7`gS;{Ib%HNzo9tf@Db3_@&^J0l*8UIjN-DK=)MPj zvgdGY1-(YqzRTx3kFkE0(o^PdnA1h9>Uj+i1qS2@8^iTl_9qfw-!u!z7!ACdtX63a zJ_o-p=$Zk z9JT`wptlxRTCuZu()@J=he?%v)XUI#8ekuGnKbP9Jmq&h(%whS&nMO3s(b3c)pXCV!)Ht)$bi*;ci!2Sx=-D+Ebgk%sjTl3p%NWnJO#H z)1kEhrV##nk$B%)Dsf4(`}{?>NOequi!MMDuLfJ8aFrh^hp}&iPh)XBu z>x%5cvXqa&yEuNNyeG+43V85LqF?P%vv$pFnAbvr+wzcp~NN1Q3)Q zWMJlcZaroTJ{a!4BX}z-g!A-SA6E044vT+JD4T%Uu5&rk7;@%t&SXIN$u&eh18dAK z2XWQ7P=Fz(z9+)_Hlw1&+wThpbS7gz=;l!AmWhAFU>m7Fb>~L{e_4Sh^Mfkr4xOWl zbgD9-0(y-X!`%F-)30O)xu#>dyo?0~jl*a6o8>W&zeDEkFI>G-P@t`$LwZfI)R8^U zvm6x1bjI&9?pL0?;}7DU@fi;0yxUm1!OvTzBo@sm!xZWlf@`l*<9;RZ==QYj+dE!0 z@U1}D;R^-=A1`lF3So-Ub?u0$)UQ;8cBWHGg)O2F`yryC|DG@miT3`IOA17LwPlP- zq5@?(MR`!aRi+)BrUyz|8b1D*)$mj=5_PBi8gjT*-nWy-&7_KdR@N{@iBwuUbMLEt ze{$<3=GIZA(E^hLWxlcX76YeEtEKqEpbQn8P|r(xMQ7yN?>kPKzyIxHj!{<$5#zy3 z$+A1JGJh+L7#z;q4j>(R|vRbB+p5M-*RwZ-+F3QhqGO(myy0A3mW32maPHy0= zIgu-eyaE#cw~DGxAFA}eS^$ojQV4J_kxLc+)}~U<{c-C(NfZP9n@bhngyye0BA zqE7VDd4}n5^{uu(R`CpARQ(48GEq4NV%b&Uc$|}6(_yHCdZy75gEGTwdf0X#;<}vi z!;;-xtE2DBba|Kb1{6(nH1P|>X=o6BcLBe6#$|>bMwu3Z`cKoih=;k^01O|aMVbP4| ziYWYW04nm3y%W8(3O+BXce?=iPMppmHZ%`WXAyO4F4b{?$AS5)tcz;O z`LJ~?Pu$oELS4Rk&DYw*T~%*98ueFQ31opsblN^J&fJy#?q(Rd3v>jL8U~+I(e(su zM%uR^z9v1NyFo!*=Pz=d;<|gmHbXbhwiYB=#&^fC)vNDE%CqdQFZrL_AKs~b74$wn z^N0sEeqv}A|&YS8~bIhMY z9}SK!Ev(D0A&5Ymz*B3^2-buQ_Ri5#2RQRZzX+PMJYx?IS+5}y+gg~x+r|iD{QK(! zU?!;~17%g7sbG4k^XeU;y)a9=t++P7FNT#y_n=upsc>q7LTs~Pg&2xOVpkHZE-V%x6}^qp+J zPx?NGuLcWUg2P26G4nJ1iY@S(&U}3So;n+W!*@Ub1fj(9vGUiiQ#jXT(F6xE75IN1 zKia5HqVkRHze49K%0i&e>A0TRwF!ZTa+S*=P~?GtrmmwEHZtZxO_2G3Js}=I3=BeVS2(<9=sLe zn)GY8sFu;}sUK#rBJZ!B&^Lnr*U8k6;zPSWSM0}&qKTY>ax(#!Df?ibJ=ERa*Bfl1 zM^0ggBin<}P(+~vmWN^*BVWE>$5q;z(S0zIU>0ZLZCUP4P~IOgga6yM`JoQ&qzcq` z`Z7)w_zsq)8gn){0<}qOoiiz(gU=g*mYLn}?m%Is5iu!JSd6XcR5?A~l&`!AGOsVC zdE54#(;(gO(Ch;k6b?%%-jnl1l?-PNZQ_-<;`}a83{ot$)5h~FCeIEYl=lL_X0ZQ)_hENvXx=7+W1KU`9_B^X zOjVQ=uIm-kOZAu|7|doH>_4^4I(Wi8YElxfDTU+?HWYXtRn|Z*O8jQ!q*+P!-m^r9mW1= zaJe@adBj3G&G&qN z1>fUxfZDOl_vYk{xUb&l7&#`CPT?5-{h*V&F8-(nI@TnWj~FAqdW%L^Tbg(2*GU1d zGM@T}#L0=}1D^_xk$%>1&okBMq%oWA4B=Z$QH=NY7_Kt%=aT`<*Y~~3%9Y|`;V=O( zC-RT~oBTXh1}V+0%}XW~H%f)QoQ096a#cJ^B$c(BH9^`Hm*@EK`7Eed@Dsx-%9hID z^`G0V@xM2oIP$?%wYuX4=3k1zoT24k_)uF8$KUIGPn{tvD* zB>fbphTasb<*lZ8(86m5;1AW)G}tv-B+-Y>oJaGv4~3`fRj#O!{d75dKXNq(x(;dw zhCzv8{WiIH;0u~94TGf6(llWuO|99Q$~S8&wO+`6idIR9*YJpnK$!BXRjXiZq*&)< zeq934Iu3eqHi=@}Ah#KEZaT$|>_CZd@i4^=4s~}FcvkqFx^iuCuqrDh{%dS#xy(lF|64%vSz@Q$yASJF?Z?|hUWhvR zmwa9@7%I1W`YCu8xJq7^ryg=|{FN>mlm64Q=R7r2HZ;^zKdLy|E`Y|y+wSf|olc+> zh{`5p)BAol)!2G{$#H!RJmz4(egHWzd$CTvG`2^WI6-U|6M_+n4P#*r_SL({OhpU$ zF>r;{(CTjuh6D01@_=KRCG_{(=42*~0XpArsP$7HRqlRM95^k-4B>pHs&^UvK||d- zStk!e&9%zMnH(a%eBTuy0$ufEtm5p?csIjNZi^&)-@yPy289(D{oc8a0aHwEjt@|r zH&{b2JNrvK;sWo}VU<*+Om7oY={o0wg?pkJoFYDRVakI#Rg&@ZJ*|K#(~zNM%%!fj z0PM5E^=&Xrop@pM^H}_w8Ay__g&;TQtK~&tU<(+Qc)7&_4FDz0SDxV~PImns-deFp z83g2@<9DlE`Oc`SVgZn1nzY5*tA;k(l8Ln9ZrcD~%p#ssg`MqPyjhU2-f9R^<(%d5 zqXy-G(xw1TB!%48naP88*Sg0!^{j`r5{j|mvp|t&RC;9_)s&=qklY>W7>em^E8Iuh zXk+HS%~s%Sqq*#G`h4oM;2!X=p_@a%EwduHHmBEv9efPR1%d&$wW=Q_MPRf6=vM z5a%Y%)7=2qvriR_kR3h^{%_ywtmYXw*jgqn8G1M^n{SXCuK>Al1CHl|Vvif}V3hg? zzUN4k8xknS%kN3Bm=E@6mFLFBnZoQ2MbLIdIh%V zr_N{x4~kE)RX{8^;c}!@z~txU@F!=NRo1#V1&0UnpNcDi;#Bt4ue|8 z>RQI5WYUh1B^r%BF)8dZh})^P2%lIxC^|a$vpYS#W4)v2=f8bZIJcNkT3my#*UK)=?YZn?CwNMd)K0#7J5(C*zw6|KgL59Mk$qmzr5iNBmgel% zv57szpFGBMJldpN;LzM@IzEh}Af)qREl`tGP{A;P@!;vH=A20NDE;@>5H3XbWwMns zoa;?dUc3Hmg-l=&Szx|=xO8$z;H(^J<0H_3ww&*0(Lh9{pn|{aWCnH^*qAg)$qHIU z=Cz;G!M|q?_&uUF{wOB;r*PMA`STY6iZS6k&b(elm4O|uGV`HbzhQhoh6gmLw)fy1 z)lRtXyCgYQFxtnN5CFd8mi7wwL|G0p>J^8>&lYo%(;4`fu158i1`I5hk2&YME_^AD z^miSxQWlZFE?aR(VQkcS1X8U};2m#HC{Ptb&+iYi);{vM9A~X%)9ZH-AqG*MLb@S~ zXJAUbFL<1S%^kPjv=-~9q8dL&S=mT%LM)Ew?vQ6g^rf?&)WP)dl^ikxTeqPK1R|{>{u_{`9=V(f|+S9snrxsF#d>iLA71;HCeg9|&@(i1As*m;cFvT*r zV7gm~7%6)vLLzagzYg4Di7!q$S(%vfR@&Jva?$qMCAHZPlfp18L#B=DC$jQ8Gl_!P ziP;PtAotN!i0^8?ro$rsgoY2KOT9$SzPGArq8g;%(uH{#OQ80Q)5P4hc@qFVR7~DK z><4-dk&ayNSZcPMHSx!XU#<4P&Hz>~htH)>d)?^*S=QsB86`zrw^ zO!HOMN(RK^*T?4>*nWA3Qi}wpEl)$4oI1d=EvI4oi?Sk@giuHU85ROICSiTEZ6%n; zibnZ`#{(K}oXg=;nBxOfNrb|~YpVQn#lgT!^khcLc{U>RITWq_cQFXxRL^H9qXm{% zo$Hcd%jH6R#=T7wzj$!!ub5ZqzOIaR`|NU5Vr#)!X?gOVC_t`(l>l#|C?3pdpLm~7 z7hwFQx_VIHuF2-ZIyGmvy3A(7QD~pu))4*mJ@%j9T3zO55~YT2UIxfDUZ6H$OffF^ z+rlp^efW39mstroXizT5;CMBSsT1JEdro3#*GqH3EXZ}r|6`1+roq1OWz-%@q4)LC z#Y+dz1rPS!pS0{$t{kMM$Xi{Fl^<+1u)TAVyWtJv+|DgE>uD=l-@Uh1J*c+0=Ym+j zrQCh_1~nIGMr{O&5iIY1pQ43LU6QM%^dZ?d<&S6OSYzzTQ zEj%9BtQx8y1X*{Z6oJc*D^_mV8RQbt#wcPt^Imx^8HLK5WPV3d95Di5P zWQPJ&v*hDFzv{7SjP%hzJvHXVV)qapg!dQPH*{TQr8hJn?;?)xO@p4gNT%5*2CfNF z=2wh27c!4`7(_zHA6o8xhj;U$+L}_4tx4?8jm!x%nH8I zT$#3J`(!T5Wdvs0t>a@5B6crK>J8w0%=ICh<#uFkj*#BWHqlnSbqY#c*%q~PtSJKV zy}7;o$MM9rA(_yG&+EEUuKhMj5bYIo?x?9553W@OdvH&gi#6iwhA%#qC>fq?|J=vv z^4+0G;EZVG@=BLPqPszV!Zg@R^<=E4vUgG6?7!t;(Y9Wh6p8MFtG96D_d>fjl z6HZ$^bbuh&*f--ZQTjG*2sAq~A1Udx+J^E9-wRLMPmLUqMC$-geq*v=pFQz`N|C@^JD4GhPoh>K}M=1QVbxb~v1*}q= z^tQa8z`ORk#`5Cq$sX(^n-KwmDqmDoJ_J1m5&(oG4~8tzGmWC1tmIOOfHCx>EPomY zSmShp#~LX>(D|D(zn|%l751n}3W8u9SKk?sy;pH43?P#XgvGAQMMPrpNOa4s)Wal`Hr%PXKwRV)8zmrBW|b-hwmBCYhkC;Q|dQ&oI0tm2IDZB zS8MOF@{1*vY{^Vrgw5MIMY`7e(;Bm-{^gky+q2I~xs^L{PbH_)o@=g0C8-`Y$v3WY z5+Klt>4)u{u;Y>FBq=X`gVW`)$voIpOU0mHO~{uT1+HoE_xmarZ?rc}N2Gr%`5LgPYEOqDOOvUCGRGf0 ziu**l)&eSecoMx#h0*p87}NUwOsv-(oY&WSg89dmvPr&Pn6F@8NQ>8Twl@~3v{QP+ zA}n^q84B(wnF{$vHg!x4i$tvBoNzj66Jg4eDn3p*I<8f+r_X!Lari88W!K+Jy8z6~{zcv;3gWkCHulMc?*}6m)!8%bB-o;Xe51{YfQ~y^{;DdRhbSG(#6%#)*i} zZP7weVu{{&tG=FIrh|(Wsjmzx#2CI^QMAwQcK-PN;yW&a3v_(i$gx6#M|x+4q45n@ z+6_lQjhRu%jkG7(CJ8UEC|!p%85n4E%{RKtqn23gW|$7-xSOUySd%OcdJq&uCnY;gC6?#yIJ`ipBp(%UqWcw`IBr8iwj5U+;uko+-D1oPZw%Iu8VJ-^T&PSHfN>17Tb-%V5GYitG0Zatw&y@ zfm8b&J6zL;fpf*oAy=>9V;)bL(qbiSgDWqP_HIWo;&+MXk2JH@pceHt_c$Ct+QZIdD=a%vgb*U+oyxqSGt+pZ#^Y5MfP;c3; z^WM$Yv4yes4?IiU*x4?Y@g)YS6_&+~TuLmxg=vSm_Qjet{>>t0YfeW-F(#E zbPZVzaH38Di-?)(M_=r3o?$8g}rEeQB-GnS`eJ5S`|LC@_fshD^`MeyQOt zsKZK}nR6lzZ>K%#n;SHjt`F&lAMtPn1% zdS|<7sORgYu8X{q2oDtngQC#rFO>?l;_(R77rgxT$UM&Znj3{Jmm5tSW6ru{ckSh@ zL+a1<|5{4-A{h>bJ2VdmSxGuNxWZs8!2o~519A&CSywEYWs;Ky*h2yWb3JZCb^NUOBD2QOi97m>%x;N zJw=n=sY@vwHH@|}Z(A#@uT9Gi|EllQKMcTuXNu@&=3j9Flw9l>F$oKk>ra)>=yuG{ z4vSO}w4LVOY|n>OOwdIaHYLVM#z$oir`k@_m{b^R!vP6)<`!Y^p|R^NF503{;ABUF znVU^zC2i_>44Ydaag6}X%me@4v&((MdoW*L+!01Ng+-e0?NyxYOmWZ)qt?zn+}F5^ zFlEC16?>711?oZuc9l)V&KqC>0;jQR8aFLr%-0!BdXR#ZnZRRUBN7p_)Nx{)8Kt)*o@N3EhQ;sxIdjOV`)cWy5BMgz8C!B zVSIS1e93amj5w=0^oJ6MQ+C+nEFQ>Q8@Du(I!lg4b?&)%cKleKPM?n`rnRe<+Z~o; zZW=t?ZpsYVqz%hIeio*p<(h!F90->R77wOn@tp5c+4h>5*S)QfVWL&GOm1)ygzX0x z;?kF!pPt2-2~{ly!@UQ)v-*P{%BZ320rA())J?48=h<9&w-4}CgvZ|Rjr+F6VtT@L zCX)=$Pj=q}AI7Q^*Pi`&j)}E0pr~w2{LFPM%pn~B;+w7j8WwL`@qea~;bCFgfAkwB zjZnSS`u4;uM>tsl6R0yZ4CjGlcmQlUZtI&HLRt28!W`D!9%hK_>OPkhLed>+wi2Wd){ZPw(w@DNPpSiT>^FAV=cV@A`ektk-YokM2YAEnxOYBJ%QE6_?7PRK=egrK07B3VNTurqm99f6#;PUxU@jtu5@^r1v)%rx9wm0^hKLr2-wC z2w#c2(fNh`#Y47$4u{+|d1(t{+J5uCVyvg7WaB_|wRZ3`@b<6QNlVj7O$GMA7d5sD zv?_K%9);))$3S|J=;D1QROQ5?B)I;JMldL{{st&1Dd6;ZPx?9#r+>Db6E)4`Si=J( zyZ381%Ewm2nsM(+A+Q<#o~T1V)MVzR-=9IRgbVlSsItlKQ_hTSfAlQ3qP}rXUOY3s zZK=X_Bxf2do-d9a>vlnkfvy_4i5s^ z9@^@g)N4?je|!wf7pBj4LO@!si>%UVfk`9SqV<{lBR*A=+dyBn|a5S zAgme^*{({S!{>z=XZZ%dQxqK<70;Mb(=X9Yg;tBVv%q`Lquuw((dM(cL0PYN^+w!qx-)55|j%iCOacGtc`KiUb_jzEdCcuuv&-izQ@Z4TdJrA+quqXk=GW4Dp< zv4Rm7aqG$=dWz*ihySh9<^Aix$KpKJTQ=0civl))7s80~9mR(KX9K8gc`_o;rS#8L zU3h;_8vA9ZE>e;e6AFANC(#>){t833q4W>sfYdmGw1Wne7C$5$X%G13E0($5WDzay zXZnr1A1LJYj9G~33B#}@C4=uA;G1f_zPy-h?%t)?NO$7hh2qar!`tYUJ_D(+o617; zu$hVQjV@WecsIJB0h~CQ4!F&Zn|;GEssP#}Jh-bmi&*u+N_7xyj7? z^1x4=OC+&14Fj;Pzx^9&+Ifse8ZmP~kb|<1=as$*#*%p^0@dfQl%*Qy?9EKXXpGeG zMWsO6GT$yF35ErywB~`ST}>_j|xM zEw7C}C@9uHT$X@Zs0D}N`5bR`N% zTnks}P7ZTjT#<-M^LehtZ{V@=qd63eex+o&b}Qs79v@0ByHI&{&0OZfNvRr{rxLoy zuhXrw^`~DK1*xTlTfETsqjOxu@r3zyzRJ;=VuhtUYRHW(H>MKI`-5|BPr_u=4n-&4 zKZ0l#*2e*7!J4czweQrbFY&fnak|z%)cG5VUGbl9@gFzgqEgEfU>u3LOLR)G*=er= z4jHSxOj@^m(xAl;ivpGM9;2y~6(-0IGIZk*PQsj^Rm||6t?%UGHcIQheJ(637*PR+ zRu_6dcsij_9^95AN3Cea&-zjulm_uL`XAPvty@|yX`H`toPNUM?Rd;1?r-$QU~ z+`T7XL(CeVIu=F4HPGpa1a;hUM&id5Xk)G7mBs)d95q0jdvcmQHy| zCAme=@skG_z?=;!oFERbx5!qEKiO+v0wQiMwfQSMF8~9=HNTIiY2O0gOzrCmHP1>T zo@T1TX7NG)@-Xw;cJAZ)3~_Fi?hsI$-UFtZvNX|}rpwP0RE5s9L@8hdYGXy$%f13z zl^4#T8DK1`6>itdPB1_vA@?{&xDR!Z4lD z5eEjPykCh_Z=(nR`C^A9a!!wmV^)aiNlP#Zd*(*Cd8!lj^Ute$QrVl--do}7h=lEU zvjmUkEsi!#U%W9xKp*kiJ#a|RZuxUDILTNg z4pzOK`{7=`NKcUkVz*t6^^cB*-#^v>+D<*CN&9PsV4!`Twtu8VR4D576`_|lsR2tG zIy{V_S{+HD*O4_=i*18IKJBg?_(4_fQH-4mKW`Gl3wVS`NmKMNEQ&`8Fdv+tIg28CKHO4iL=IJ7i$gdeVNfa_E)uas0xu-;S3Y&#*52Kh(?KV zSC0Ku5`Z<7njr=r#Mqf#0xpQJ>(Obo$I(xmUKM?lKcf`W#G&+Wspv4hx?4WWYf}mQ zXw~-cA@$Y`v=$)MD_~gM7+Z+DIgL)RxLd`c2X)^@3(Lw8uBMjjOXRlW4(y(M835qv z2MDCd-1DF%axRt@h<(Ozm85q_?_hF)Fn$H0Cl8hbzL?>J%~qeh zN*(i(Bi*k5CKyI98f4~J0EsZORh9Yl>njhOD3!=5fgX^Er<9<}cR2;1+lf7Y1;gnE zyf>#ck_1zouM7D0EC9Q}KiB7msx*na-eOxoHSyLvx}9u?{?-)$JWbVBDb+&XIh>Wc znJz7)dofUFeeWO-MDP^;iUTndYxzGv@>WO>QsrN{QNJ0U3e@%IY5sUk{ z-?r?CY8p&X-)||FZ~V0J<7Un9+KW46t~)B{lRBH(?imF{56?(oin4}R#)?(a^FEHN zAl90PwzH-1mi$k-@5E5W!Bx+bTv6LRZ(3&th@R>aKi#85N^3RJpD!hvMHJ7Mq{%!1 z6Xt=1aWDV`>yvUu9>(3|GkFo|I-5PbPdh(V(^dV@(doEvb3T}|&I6z7?(lFk>s48E zyxTzo-p0gH1);-Xoh&|5$?@sICm&@q4l^sYXOIb&e)@$Pu>K^=*{^JWc71co=Wx+0 z2j2A(W4HZ@d`VA76@_+33!i6rUi)DM%I`>%-Z1pT@OFSRg;3*5=Aj#<13mQ=u1o(D zy~ZZM2a^?LuUc(Yc{+ZcgybC|2bJY5JCdke&xMcn1nbCxjje!G#U{=;i~;Iizd}nW z-k2rt)oLccM?C-}V=Yt9&$<4(EGhb|Pwb@X*@&{I@c0RtGF8DkAX;3A|3rQDj6&~x zdrz3G3<7@F@UwJc^V+kAj_UIfn%BQQ@a{>4GzJ3wVAo+l(eQQLo7vj<*^qR=LZ{Jh z`wCKG%o)M_NED-}EQSXf!`Ob8+;zSyjG@g$dqZcND-?>9Ds#{~eooRk6VZR4JGaYM zw#k#iWst%RNY~d&dQ3P5inS#0nh zZ8=Ob#m86q9eFPht*>eET0T=mxc`*|cqtcfco~`IH*;Eqa955*S3z)FAUEf;z|n+7 zvKaAlmziZfaafzTb~t#d;PK)7_nu_JaNLWsVBrJYCy(XX*Zlnw>{f@$7eHGPeY-kE z*MCVGVy-#6CHy0rSnB};;&xmN;`MvVk>%%nm1(X0NuhV`N?mEB=B!vR{npwY$GBG$ zY-3dI#ws3jw`L5liPE>B7gPRfEj>?Rto=*Yom60v+w%{Pm@@Q793^x&-Awh<9>hY{ z#;j_dW7a}C55Y&7*xNNL`Yzu|PfD9XF=2AhevmP4 zp5AgaHE}hI$|yeZ*+a0;)|6gl3!l8GoBH|Zm6h_0)?6gkR=DvxZxr15ZWT3$_r5_; zvb?equ^}!&5$SfVQ;1Huy9CYrs#7HGI1{n0>~sGfP5U#GdWN zL*;$@XV>tk=IjpmJ85XBm~`WHm!l$Gx%ps+&UnP(?3JDLJVk|B>4Zqtk>6LIwM&)T zp`snmnmypiNkX&)hYf9Y{Fr_6R=w)=?6yKY_q&3k8)i2i;>0@;cDkW>aX#UcVJ*4z z@_LVvX2~<9`e)VMh_gKM7cfqnE3I;C;)Erb>o5c3US?pAQZX&m8Q1;md$B1^W3_*Jmg^rDAPP(8+c(~=|HUGW66A z;_tUTAn&QB4oro)A}MC?>FtQui+FKwNw3ZKk{LJ0<4}Oh2WAe$YmAlaZIMa`OwIG( z+8<;0~E&Q zKx@RfD_3$@u3Bf3O#uCACL8D#KDYK67kWkcH01rog{O9Qck(%lz89>TeEwLw+3i_> z|MvfZk#tfwV|b0ejE!np4jac`hWGHX;o)61UpGN44OJQbd^p4LAGG%*aSn?^3OPNy zwLDA$egU(-xw0}M0W3`?DC=!Jf#{A9&YHGR%|l0@-WR1-88y82Tomy@@kb)=3O==C0KQ<%Gv$es%D|7NyvVZva$3i=b_MPXn<2<*T@u{iBlT};) z?vWoKYQ>MMxH@4>FHld%78T^I_F5oEn3rax0W#p z@Ck=2=l{@K`AOP+;@t6Bmx?wk)iTTavuo4w0CMr$5c>ON!Ot}R+Wr<`=AVCX&R1v$ zqGx*;N_D@1=J41`LO>%Ntdcoh*kg;oB>u4_fFE5X(8&@gplg(N+0p#ew zm>E7yI?=4xR<{tqSj_WnBees z(FTC%MZpJCl4tR9zW{?*DcdOc%;eUn>-!Hngi@tfYnQDUi!%uU1cjvXYftT-gTTNW zaQ>rWuuCT=|7@#z$dVW)%ETk&8}|_?#E#sma|bVfuYD*1V;5Y=hvy8dNr_((cTi}8 ztC!FkJCMuTQhUIf;(HnMJUEbU%SmTEk|70Hm`@4pTNV}?bbJ}ubwYS$l9~re+J$?w zj;Znwc}WO$;e*QY>Y-X*U&r3?7MkjsLpp?Ep(BY4YjUGy+hw=4W~o0LSY(xN7v(Kk z_Z}2YdKU0{r^;Z&ZYg^;ZeHO;+^^ML&H_(b{Bw(+0s5FP1HAm*0YQv&>ybZplXF$< zAs`z8yZ1C?kLYv(GtV4JLLSk+`FW@&Yk!B<9|)xH8qI*fU3;dPdz5Wb@~Dl)_j()zi`~)F6^nA}C$zj627IwYT>WKh~`5yNl zIOiQ*$0d)M2d|0aF4Q(nP*)qpjxy2$=QkiPM4AOS-OLUgp4m?4{CWNa`M1E~W2rKS zP#FF^sx29|W=|OG=7FK#ea*0R?-wgSTxos)HovZV;jsh?YDj2mNz%LUG*czWlKZ7t z5F$!9V({M9{7OgBC}{anHE0gxJ#rrK$~C1WH8ak2wl9~2L4*mx@Nhm*;n{39J!RsG zD6qYfY0^P`1bXHF;Ds%>esv`1o32Ksa#Yg*x2YVsjy~9*>z5xlNHSrl`+0}TwoYNA zxYzW1zdPF7t+mAF$K5R@4c%P-^?(B{UyhMScJWzlqjXDrdgiur0-w2<9Ve~yagXWIP-_+2h9eoq?qB|Ubknye0=a~@F}ssr3<>qB91#JY}?<*$e1OS zovqUH?ux9f)mC)ob1Rf23x8)8)qY$!f%Zj;MO3+a@zPxHKoj2ONJhfsCUmx=W`M6W zOq-LlS;-dpI!A9Stx@iHxKF$Hg?~J)H`|{NvW>o~yCIhFLfmgTo3H-oIh$}o)9-f= zq}+5%Zw)=!GWdxLV2hDchbOk2@uC7 zwGPG+hkVJ@9s7IPVZd&nYeirO`EW?AQ~@)&|Ge#AA;q>(=j7}|LZCv={_|(46H}qJ zDiKqjj?IMFR%N2XpY;mNTE&~YCx<;JC>4OQ5D4+z`HPrLq|pnoCsB6W$xG_llXiA% zz1gF0D<+f0CtPogtr+ z1o4x62%w45C{?Gt>h2kkc5pFaVO_;*&~T9SF#&MLO^Y}&PoIXLvF59h61hSQXuJK4 z^AmV(Fjc+EZqef?{cE!~zX6S`=bW5?bieR?F<5gjTnrBHhR^n&n=!+Btca+!1cS|P z+D-1atDqncz*w8E)pByQj-oTR>2b%{RDxzqTFaTJX`l4vBt6ipI4y2vqA3hlz1dO3 zT|Lew9zp`S2lu$3`rFmX?72_uXdY35FlXLbz$1B?AeREd1%r>8Lg3|OO+Hu+tr;Im zik-UDU$veGQ{t~nAIH^%Sp7$5iGKRo|I(-)c9yQUxH0eZPqtTkTUYMZLIGo3yw_Cr z#`nX+pJ>?Pko~QnwS!5I2QCthg_nPj*(kTvEE+BGD@Z$~mL4-0`^Zr&hVH_4um&92 z=>2R5+dJ$}>pGWS+}fGb7^*hq*tR>ITf+iPHkFKCpe8ey+OqfVbU??N*mIYkGXZS- zwLod)WqL>3kWLY1-4>iXJxLF8Jq7&(oYZi%PR5vD>t*-OB4Fc#bnnZAPvoi3eBfDS zzzpPC8c+576abAZzBy}+qW7rWeQa<{fuH;!Vz&T_2Wb-k!qh@%so;}2thzZsYN2xF z&5Eg}y0-9NG&*&Gk+T^BwAg$IKpx;bWq`faP=P zZ?A36G^d=NsaQo~(d}VfQ(WbUDpa_yBJE0IrTjr-;MyO+RTKs*3hi%|KN^mCA%XPy zCX^J?$ok1;m;+lJ47(KR>KL889Ju_7973ohN_bIj-*hKCY>V@-M>Z=9^H0iXvtpJ0 zX;m11zLDgoEyl4d`G{Az)vl#CJAQuC!Ty??$MT#u{7T#H4=xV@S2g*T@}gMfvL-pC zmG#DBf_~WB{kAC0bt+)J-M9=RcN8rKWnWSHA8o@81HuE!z*crP&)6orqmRX2oyxyO zzDL+oxo%DzLd&r7q-gEkQR#P^z>l3a?N|{la{wiUPOKjMP(S#)YvTw^;|TY)ag1t7 zWu#ZdF2-PYV#+ca?fCvyOOH8>{UG(D!jPR4!B2riB}!pG-zqP)rgor&m26=gFKZna z6r|y2HOz!x>;wJW2aUQ?DYxnK7xhoC>#Z%IB+UU$5C#1!#-p9kE~1HM0nQII=)lqU zh(!$|{U6g+o2;U-_(s^W2%s>^C1t|6IiMl`mWU6zVyKEU3{!VUqRbS zqw%a*$?&uovH|tKe@CPGp_lnEPa=)18(6qWS-g5YFB=bRXlTKO4!Ny5Ew7!vYZN^t1il|yC99Ed6+_lRZnPSKF}>P;JpobGk}*z zqgugc7r^AV-Eh>582XSwdV$j7#cqWgKLzZ5vw_|3R7#aQYn=Dg5>xJw z*Q;H~X!!RY{K&2i#)7wN!_(43JNsyXJ@U0PLFgg#|HIsuM?>MheOr^Zh;VInN)@``>%s z^ZwUSIfrZR`@XKv^;u}fDfuP^cu&odVI#QD-rXPBpV0D(>m>GOimJda3YkW)Es;-o zUYmmwl-c+&6oFA4+RTq{&(&~SQ`BG0%)usix$Mum7@SrwT*Z6eOD-9@qWuv@;leVx-Hhu)Fce`4My-v!D1iS-1>5Vt~GmB zxI~gyxl%&g@==>vN5pW)c@BpYDGN>MFddF_Zl`dt@BwiRy=g6_En`p4$^~WZ#7feJ!fG?FlCn2k zE-~7=xLZ`&Pud*&LtFn_x2rCb#j;oP*A&k<-6y+@-~oGgiHCB*OOAgJW4E4IUW}{r zQOZ&*^yzOu*qO)$#qIuSveOY)USu~LGvxp=q=8kt590+lh35D(QaxUvA+<}*mXLT3 zCWgIiXwWuk-@KI7hRxT}MXNcedcHM%l{vb=w@E6bUAEfMcbYd%1ll*PwwZ7}FAZ3Kifo^g3_|+l z1jig@3+2eB=GK0V{7FBEr;ShOt=rh^k-uQg=|yol<4#Q?hx~n8-s9*Lw6?Re$Okt{ z1OIk0ix%WQjUmESdOo)&{^O`+RXghWYtVmfEY}4Q$cD=;M#uu=6yN> zPTn+OYJpQ|0 zncrKza;}_BINI_isBU*mE<*<%A{@YsyY$ekVRFu84C&#poYFeY8;f^Hd2# z%$lxHh1(Wdkkyz*ik<6=39;NlB{c}t*;sdk&(T~LY5fq}0&ZQ0G zy|^4Bb^S@NBs^5C#pR5l`(Jz+t_8 z*$DP-0YJneJLR=XX^<5M!jtxk-6QG85AZjF*loVGN%XA1VM)g`s#i`Az2l&iRA00; zzm$!^CO%V_Xr*92ytBG^7z0cg7$~n(Dhcmv!}9|T_);i@PBUm- zGto)hV|V?Hc$B~&t(({&(4wv48RP9*%WnoQ5>LW2!bt#O!dDw}N(!!Zv;L_r1ezqk zq>VN5iYxiT=;Ls^1U&>9{9h<`dcgYGW2o-x2KQ}8st%KSMOa8S&yj>8c$R`}!`oJ- z)#GT1_24KfrS*8-n+dw5HeVq6eH{C7>4s;l4Nvz3`<@>a#M`fTX^=DHs71OpEq#5N z4cH>;1wSDKUWGg@S3}i>?lyMU^k=Ilp0oi-<;*(>{zG>kGFrM=?^U4VCg0nL8%6EE z)|xuaCYBJXS8pOM7cZKjdn27}R*H`{msI&WN%d9I@}lI^K5k0#)2YCpq1+$}YC*jX zO&j1B#r+6mEk0$b_-!xLUU9~AqLw8*R|{Sqo;&AGTMDQ_@AhunRBnAH;itDV2R+GG z%{w#Y#MBt~<;vf>s9L4n0T@=44!^EgU2TA%u;0{Xto} zYAQ;qmI)umI*p+*-Rm>L79KCj{~{7#2~~x2IC8t&Ajx}78r|NV|` zddC`r!Qa2fFwp&u*alvxIU1y_4r_zBmp+J85dY}K;p$l;PfDQt#j9Vd_^H<}e}9-A z2zz9?vRFK>6`mA`gUF%Pj`Z-Oq_UBc-nJ?q@CkuL+K-`GY$;Pz7_YE7=c@k7033oL z?-g)RtdJ7i7}Zx6A^nM}Vh)2BAf}C}7Mhy4@qZvc?_^H|KYYdZVE?Ca;ppFd!^aN* zV7Qu<;Bzr~TNCxx>8lQ<)+n|1wgd)wKP+;)HbJ;x>ZkAfJr?3)v}aO0m|$vXIt!b_ zL6~N`D!A!rW)ZazYpQev2AhqfQyh=&!fU57_U(Z%r2wo_@%|>U>|@uyRrkmWvfH_9 z$u4xBY>GlJ1#Kt?dH8lZpcIpVRq`?2))1QtVmf}C7*DU4zhr;CPjT&6dCo$H8KvH%i^e(iH{={>!30~(orK*K% zyx0&Hx{P159MmRzWGL9x2V7G-m9VB za3q~t=yvf?3iVB%>f3HU3XqqoeJFQZi?gQFjoP;8OOIQ#0e5>_1>Q8i(ZzCpbTP zyNrpg+`J&GPISw)&bY4#&fcX?s9vyo1y-Jk`$I$c3qjlbP=2HvoWdAVVdr&+q6>$)g{#ZPQD_XC%GdFL#MWFgp#qmf2iPP*vbL!w;zw zx`X6{QUOy-aa)@O#*(XK;|6i~(K=zE+7IHfQ(Op8FpXhN+ZKZO zcJe)qkyGPa^vK20j8Ose0g(m;g!gdlp5xuLNECMc^?>XF)S3oCrtNfi@8axJ95&Ub z(2iRuryqxxJ6&XI_hySej%g(M(MoDMtX=ZsN#mhBfom@tJW@B3rJz%N=P3KgN43{V@m2e#1yclUZ<}IRL zf@`X_2%cJNf6(@bAjs*zw{pR~d!OW#ER%HK;N zoY{o!(#=? zb?(2H3y|gpJ9AbQeE;rNW2$=`>M*4iGVT+J{ohLpat9qIJ~~QDS~xn|bE|85!~59F zUe=;=1|3$?S_5HQsaRBayvfR3_sxl!+WA`1)j3U2uT-+Ws<>&9y>MRBb7BQ#Y;U&Y zzox)+wYmn3{3{?i430!Yt7Mu6eV=p? zSZYaf%N-Y7bo*Z4-oUM%yA*h^I{}4lS9bSr-#mPqAv(>Gp8Tu>mIUBg%X>VtT0Vht zxo*&OV*f(G)QQ~0cLOgX*Uo-+!C!v2MqzGdXC;V;;CgL#AEJGH^y7xv#J z=&n#q^NJW!M8h|RTJoEAc7}aX{H5OOZu@0;U@4bXam~+31D`RnV4lLQA?~0lr`#ZHygb zSO88jgx^}zSP%veHdnsCh$_IcPpPWamrlkT9!vm8E#wBbstuEG2Ez&AH2NKKoK@9L zA>+A8yif&0*;_fA9a>udKkCHYa}@kNCt<|fJU6CIk+Rv7cUG);MU{Rgw3I3pc#DiS z&I`-Fqo0)WTUcC&PK5DWIGU(x?o4NbwC8YWP^)=r(U)?Ij0&Nq7}$)8{{1P=)W;`p z+UT6ZI&t*L9)=RSr&)?iX_Oz{>Et9Ty70?j^JQ&1p+Dn6Nc>Qq?hyqo_B#|Z;L9Df1B~RWMF^lGv=s}ihu4DpQ2(nIJV)I!ky{pz zD`z(>k2Kk=a{2Kh$$DbjcC~6tD9=1|wWo!jfAmB^dE<)xZoNCd{SSA^3uX_b#a-nt3!Fanx!qQ$t$l)iXZKky)hAalD|x_kSW+3?k;)ir8rQX z_Z0w+_7&9W@K8o*&YH?Yl5-MIt-?^Q@%h^a zpyf|WZf3#?KnR!W5E|1b8hpUa?Ehf>8jt@!n86w3-f!e1)G>xg`xs(4QLTzmt-{lv z&Y@Ljn)l zpNuy^`_m-?X^n%S{Fs`d##DGs%i5@~&0K5gF?Q0s2vMeD(DlbN4qEbm9kknQG*$E4 zf{DF46Qg-!2`Ccq1bKdQIiSS9)E{F|(CvK(L+DwY1jB)M!Prm3$6oFG!_pQSo|A6w zx4|*H1CAL#CP)&2c~)q;9q=rMU4HoJysgx>^NCHB9`s;loe65UBn=!hyIl6mRh^6u z@L^9(9+)xQnogfS7SS~WJ)ll8^Z06MK6O?c2LN>ggWNa8uzb+S*ko*zi6P=pXKnw% z8CDSF$nmh3Yp=w+#CYg*VPApDDCcAoyJ<0%W$mXGMp#hW*~QJ?LL59S(9zxE3oXmvA;QCE*5qRCuBY)llj% z1kar13|T+_Bpb|aCb_>Y%L8R;`+s+JCh`JmNq2Z6O5(cO4E|1uExCW%$wvg0)@<3s z9TamCD^v5m2aN5x_|05@5-(S_QokWF-(SR~0lNgLHw)V5%#}sEH8wh?7)s|)>G*Gq z*lD3u@V7jS$jvNgEx_qY%PSX#Zhl4RjdOza)lTBoC@S+Ac@5kqfKA>Lnb0?_51r}H z`T>of1zUU(c7tj7v*6gZ6COjlOt&{4-=NOL6xmznBTC9BFA=|s!T&~8YYvuhSH6ne1I+Q|!W z=R>1+y29Yd0->9hR+@@u232|_uVIoo-rG#O7+Cx=zR7nx)V$hgYmV=DU064ayl9gd z>=uU9pAaGNB9I|NP35Y_juacu>GDm>KO-ADa_^{f*XW zXcQB@D-neWenIS?#iWDn4lGTA+y4TV?iA<+J*Uo_bA)0n%I$>xQ_8ct*oD53+Ht3s zuL3l=y@kx~mdy%SoD=M*5d5F z<6erAK5rDq2UL8m5_!@Eu1KkJKbW19NlHXtpBLvkgPRwE#jIF2gh{5VXaG?;WE{k6 z{xVaj==dNF07q{N;s69`SijB? zpqES4l8X8>4}eDg3r!IQ)()O=N$mmM(s%wSG(ZPEShN@>1m}4vG5i8#p!!{Le13N zUB)KmYpMLUfB})A8Gb!D!CZMiI&wdGFZ5~Veif#mJ_Fo{3mH;XBKtI)^FE9s${#O5-)&>f@Z&KO0A@9JOLg|W?uVoC#4G&V+-%Yt3Y`H9F z8ny;U1p$9HlvgTX%<=%bRd#5=*fQ#6QaGfPBbpBIWSGY4Q)CXqp|e+}#Tu*WO$B9C z{^P%#_vbECJHxHNYj4ebp8>B-F;eMgF~G7bWr6uR7KqS)&KT`zP-}uT^klJ z7qu`FI(9gfMT2vk#iDnuuVrn4b)zGa{11Aeby`lze~1gFe#)3$?;4@#;?=USp~s8_IXrRJjZ_V%e%TIH!s;KF$h z%PrY_G{G(QigH#WQ2~pkkZoZ}B0VyrcIuZn{hF;7v4d@l}E=JcjO` zsm|k}+4z2>kHD&0lX!}F6Vcvx$CrqrSWmLO6LpUNz{^>Sc59d!h-laVXndE`b=aK3 zA)O06NMv*0>CS#7Ezdb43P^JUfD5;c88)p%g@YDz?%wYCCWZM*>B>!yT2*zza+SCF zuDzE_B+bwG+pU6zaYf4?qcCwyQ1-Tu@?SDe>W_dusNpKLMm7V+9=Gl9IMC*liXD(x zABL%E)iDxP8WeYGyrJwj|GTecboW8!`@M2| zy_0Tv2q=a^oXbFzrFxG%ZD5$|@#G6f(^*w(`A;$}jzzb~=qO)mrA((Y!mPKf=~JT7 zTRA`Yf**1Wo%lb>Z27d~1e!e;7k0$LftjIuJxC>)srMccuvG)v66vC8Q#pu5D?a(a zp!{wQH{=etV0c=xwQjS^vgAzT6{JSh5iEA^)7H%^6qz`Fqw#qHQPE^5pK@DbqG zPrb=24wgUR5GcKjoS8=D5O|AnY?>_ZPj^VAdfKl#s-?6vW;7TAltwS>ymB#vAt{ES z5PTHac@)g{hvYW5|hA<71ON`nzY@@v>dF3*Ya_~ z1`a_&9pZ~+g&;LIe@_AG`tr@tJ#&)(;J+Aut>_}3jc(Avc94b3{Z!XqM>o~cfk?H* z&)->Gli398_Euex>xXW>jbv%*Z#@!dQ~L#1o;Zs_&&RTg91boqW?uO!;IO}zl}UJB zYhxA?&#&o@wc&#CCclA+op@*4(lHgw%04d zLel7;h6U!p#ibqQBJFa@c>N8=W{&(iG!_Vq=Ir09HKg8E4S!Ij^XfXwqPXtaA*S|) zxXxzzY++oHSdlKYx{+UUf4Z*lJIq`mu+eGneBH0q#)cbja#ziRDbyAS{I?EBARt&_1> z6WPL;)0HS6WpP>I>ndBdg1a<+uc)$LSUDcGJk;~RRA4zK_N8{f!LTIAF5BUEcgGz~ zf6=V&CgS-t<#2xYO2#wK%R2>lyHfhxa5;@Q=Tkj876K5E{fRY3 zB3fYLzTClVU2fjU!o%<&^x6Ti&z;&-G-Cl*?7541!3}E8}3}jh;gSId3 zzqh@LMhVN6L;kY8qwlxvIvgyBf+HLj8@R%uw-xGVwc+^D65ZOrIfJ!9cJqVTX-Vt0 zIy>uSeV%OIee+*Pr19D@z1=FGM@h;fPwnm1w|wqhRT~0_uiPZ6WGm0v#urlbHWkQA z2Ypn=0p5T5ZlhwBZg<`d>pd_eDARw*(SNzFmJSZ!^X4?8{_R>sq(&KQQ-Oayy$n%) zvyFI0ugW0}11(R!e2scz%&@x0B}&&xvSbh&FRY!zGiJ=-nkS0G#@gH zifkJpU2q7TN?8sGV_IbSZOQ(=VFSwQDgfF_;$=QM)6-@mwZ3WSqXVJ6qVPL+Ai7vy z8-1uQ!tc zl^i)iQ=SM_v51U4g%GjtYF62xoYeWJMmpn|WR>TLRWlZLMYv$|LsKu{zEDlxnuU1D z^1VGUPN9aGrO_kA=fwd6a1NJ>LgVubv$R^)ST$nt$aP}4+3MQR`wdaiT5mt#A~x8& zEgb!}@Y=Hjw~{b?oVwR(KNNCjq}5t&A!(F<(77E3Z+V$ys~mTjdoI3* zw7$GsKtRX@c|+1@5hZq2UpHNnsr!ShGcB{N1_fc^u|e(}7Es`G5f`c&RQX!RP#Ofv zG_n^l^nTW?ME*b^`moK>f+x0@i3_)9ljfV322Hk2%KD8`$?vyq!8uIjt?-uES+{iR zbbCVas217%vu(MFSx6i0U+(Kh?yP@4kb!SUuOxKqPfV<{*)mJ2iTbj6PY)00*PWCIgtE=~skI|F;)F zM@MG4SW5m;h^G87K@aWWHcM#Z#X4KPo4Rr$UpoeDz@&8+*z^j|eQ~)+(}@mTVIh9; zC4cax3*aUF-a2={!oljns<=}Hy%8~NpL#v!d}=CB4K;)Pm`x&m)3YVw#3YSg6Yfe9jGj|Dl2EzW173B7>L8Tu`- z934p8Pmtr;4Z`0|S>4q4UIInjL)p}F+i@)y4O>KQINEz3@%#;LYgUOK^}I=AfSf8ol#v}}&GeHYzZTqD8CLYYl4CT@ z)N{P2FS2#-#HYACpKHaZml?QC>2{03M)i0p?2ucKtoPNr-$YUyi$#xgZ>IhU5edB_ zONkcWFI1^X@w?|ATQc49r(A_uIdmxfcX8$32_b0FOV*-RGim>@53rg>o`F;97&fC*AUQAsD!FnM`e< zaL$CCG1kwbxn`?V4H-^Z=GoGp<$1l|M86Mt3HCq}3IEp2?z}Y&VU5~dQGKsGA(NIV zPug%EZt$D;kn&aETydPo$$htDuMXK9>TGvQ9m_>|QiP5p8HstJz!%DnNrB}sp>jS| z9k?#I2x_RE7Ff8K`>%nvQ)9CEKJ)wRRR3pehsW&bAgkz~38`V2Z2UfB$I2lvXFvo> z9YN&=#v+_1dpm+L2mWG*We|74zb%Ai^_z8BpPQ7uRJwg+0H9_wPna$TLpp%XSFUx? z@i|PC$jvC14oGKIrml7<4)Xs{5$Q6k+&X?e|F)sy&|5itBM&wOIHmttXo}LW)+Upq zVIF~2y3G>)&C|E^`H}7KW&Nnrb?Hpeq3>|;7mrSG$J!k{SG%n|mTUO79p?>K0gAD9cR30`xL; zX|-8bw$kQbLjycAV5Bc(5a<^-Q=;Zm1DrK~C7OE=yY}ixKC17DW8b00TkOQsaJTE< zZ>#t#i|>m=cUou@GtQb2?;*iQI9YB7|{?y5mMz`kJtM zC+(61e2M5LNz?`U&}1Lhd_V`*9W-6YdT1TN16KtIo!}T#%2YX%)%4U^r8h`#rO%sb zDzD9F-SO7l{7GdnTNA&6ZSLD~`$r5Osi-_Vh*4AF8T)SdSRSyf-Q>N@_~bxUohALp zxbvNpo?e~P6x6-s&Og<4{1Q_wf`cT*tR64fI$P&u9NjF&-9vgC=%H%3mERS+uczbZbRk375$kEV#f`t&;bxI$7>;W53E5dl6YBa_U?4;}Ij=ML!{dwN6c`tjU> zYvGlVtD&2#rGfLMX*J8k+ZvC&a{lIhH{BlJFkb#WzFPwCgLHi>*|sNP%zpOCr6^n_ zWIQ<1ax-VY3B$VHom4o={OzQ{(ap5}OSe27&AD z`Xx_UHz0BpK7Xw|X17a>68f}%;#s=__rw|DhQylBuahI9G$Q*h?H!lN9(xI)d|IzX zAPPomhdRD(1Ls$4ytN_2DQWsmL^1=u@p&y}maf9Cx+_xK_Ow;?gY~0UMjrR^tF?@T z%yMvrZ1sh?I`0Gb$mKC0nU%Y;#xUe*|Er^>6=hM{PT+34wgv#hd=>HGuXhsxXWQrE z@)=xYgs!QQZ5c25>)bT&6nskft`-&@^igUYRpIuOK|p5(qWhxGcr> zCgy5VN+IvR8`AK~>8Jn06XWUcQMc&3S%xP-~E9(Cjtm`A-hrtsgUU3R;&O27a4X zYL>YV+m97A$GDss`?)T(KqIcxjD9~H)NeP~zmXvSX zJ<05+bo#A1Qg9_lFxDns6(hwF4azOeYptU=OaN&*TuwGhlR7%~*IRSq?vIi+;A3y5 zY8Su3(K4Tm-rq=@2$+?!F!sJAfrR<3tMWrP-s33@==~I88Z^Xv;|#vd_;>&*G8Zjg zeDfnzBcBnYdu@}E!Mw@v{@mIEX_@1G^C^S#Gw2#huWtL_Ta7DjJ0a)rnVCkflVhg6 zZ>iaN^$>Es9Y&5GU8y)1D*CJQNIdKMw%$(EQ`!B~uOs`AU(-GMpZ=iVsic}dQ`=$Y z?j#Uj#LiVoYpk$mdO1l16{zOF^&yk?#%`aZ?Kr=sP^8jns~b`8~|e{lgR zPH6)Va^rLgCC!|skLBr8FJ^d_1$;BH6jwz3d8sy z+-m>uYiUGPUpey81m*cj&r)^f^K5#PaG;7prUlGQ#8=PLxG5vj@kelKOFaJ>@!}Vp z=Dt0l+_K(3&qqlbE}cIsgpL`!x%@q+aFh1LquB!Li zjyaooc?RR9TQQxkbxs3H6UUrN2KH4Q_B(rg_|ntvmOu<2q`LVY9yZ!&Ef*&<5b|#4 zW`-wPE#uby!U?wiP#N`8+rY?q`Zn=1E7fPzseBx4Gx6hB^W7r%vpXhLX)960VB!Tc z6O&7BQT5@nRbN$3s`9PcM2KEDTn(0f`!Nj}MC+@q9^cGAzZih6FFz|+NsOKLWZ?Ix z6ARRL1>YR1nX%7gx!Rx&^RZI; z^{>_myxuqS_{1Q&!D7Y zLa>(L!=tw@7>OKVd#388v6HT+=6{_tO=a(l#+v7y?3097*Z^}@tFFtQuqd~h7W|zEBz%uj+^~k)t};}`#VfAmmUJzNqSt=D z{>wR)e()If zjQW|E6CIYb!Sovsx~!9=x~}0)b0hZOsjN(s!s3pPvk@z){#wL0gY@+qQb-{u^oN z_o+FW(qtgcN#Kpy@bGMH=vl9FbVgbU+j{N>}eXsn9&oze@wSQQyY;^ z-dg(>JeQ;-)ZXVFreE~z>96K zl<+uO$?1J*XJ46*c#A11u;RqhlUk>hk*|W$T~xo)ai^MbTDb{y^x15R!NJI}?I~^N z-Ohgw`j)~s5=vrr^{Vsv(xG}KFiDy23QB`x?hfHL=js#US5}7X%wM^Bxbv;zJsQ}i zphzLgHR(^VHx%@5*Hk_;#%25VC5``B(f(tfhVch?unR{wgO@el9kjoZI%BjA*ji%U z4Ew6SU4R}Ni^MW|?*r3_ZNLiJz0zzux2(#&>P`F_af1w;6mO9L-`rnSTWRY^eCzhb z8Q+b)RtMC^$6HxrNl|`zSi8<49+DlK`pqP9_k*E#q?Wm9_14pPGj%Q=_E)8S|D;~Y z)>=ErF%Z~ zu%_9;q;nLc-#roSI=8si@#L7_g$}f116h^w9r8pJevfK>JOmxJxv#dAe^{d6c|HmB zQQ>Wb(%CkdzJ5ZR*A<7i`CQ(=*J_q66?s_f$Ly7J=ziNjJ58`9mkbACou52-k*Ln^ z6S>-d4VD~CzvbpEa%TD}weMBjqt)AeBi+M1%OpCzgDL7`Wbf2{v`f)9$#Po^9UhuP zuqQ4vWUg;{FHbzZTTKU&sbzEWTf>zU%+_$NgZZ*aEd$%oRI!v{t))Cjqy7H%apu9q zM(XxE(dgE?wnzE*lasx#t3mqZ^BDw5PNd_BSg*|4{1Jzq&>pMAW{XO%@JGg;U> zBDs3#{83`&ykS@b@ijZ-Q+PK*1oqTT;q%La8Lp}{M37C!St*tDD{nNsOU}Dn^P?%8 zWR9ulzOouxD9@j*l8FW1x*TFLX}m(mD_2hPz}#Ed)?aYywLUp${Hg?7BqDCV%3?b9 zJlv8Rs~zWi>AuhfSJxP3ByuhNwItm0$-@Ngw=ZRBs0)m#4b(mv-lt>GP!*=vC`W%JfxGGFNhK zUvbOw<3~9`@Lca*?;Gx?1|Dz!VI=x8(&fXgNdVrkY~5#!Ul7U6lvtvgM0{V*y?lnd zF{dWZZrmvsaLx`4H-70pOp>d z!<{`H>&v^UPU>m=X{gQ&4(7C1Kc#n_YPk@}$}C%z^u&T&c;PyKO3_j7w98eo`L?(0 zB~E3e)lgqfKC8!$pNE*ooJfitj6QW+ZR@wM8-0BtGLJy`#Bol~e%kji%Zqp>y#=v< z1jH{|sT@JQzs|{=96puoNPRFVVREMUSK1x!g5ws~-HJ2dbhqhShBxl}T0KZ$n+z4_ zdBdI^yNHmoK&3#1?ceU+)PX;()$y_|1gg(wQ~Bg(W-Ru@3R+|XMK z0e$(SI_+1u_wFbSC_FRqeafv|&79Q79AKa7XE(f9frkW0?`ls=0!SD*N01H@G`h4Y zKDEo{0U&A+$@v##Z#;^zMPynVGVh3By&1ZRlgrMU4f zfg4FpZbuFn)T3LH^OBF3fmnL}NAjWcuyDBP|9i@NCSe8m96({xYV zcsOBQs-5Ah@G5VCjJfTvx_W(3a;QEgOB(3k=@-4_)+3qpue+U=mD_RqL?$uqs0-PK zcC(AV$z9`^S>dgsK7Dl+E@HB7t(yXcN7Jc(8H%2I1`~c4A#VaHPe2C@YQeLl;=e=9 zgl{2ymM$qtTBy-ICAj!^lb%53CLZ;*O|Tu0Wa%nBrNTnUe$gPT`tA5r^mTzOs?9FwyXvPUlJe8z;<8oc+&yED=n@Im4>6n# ze@bU2vlfVBhMvo7T*c`&6)dXc!{7eR72c$8ka+@W-~rx$E6zAE;2v%2$Fgs%d!(*vG*q*L;C<#5&<6*B0}ZTXXVqBwGKzrk)ZeD9L-lYy)q|e* zL3cgK!)ql>Y;zl7(AROjXGFP@FH_d095OH{HyodP&kGZY18!s4V2S;Uiz;w&*8Hsa zD2vdN}HwxdwdUqh$%Kf)AFW*|Zj>nD52uZx))TN}DkBxOG< zPqlVl!nOz0drky9KC@*RlIEE_`u0yuz6X~l#yLg!@tvh=ZxOQ?^V(ziiN==IG>BQr z#&`agHExgJX(qK!De9X$dVjpGKezeW)cI*wt5DZH;NmUVooh7$KjOieP zo@Bt$ghcwQg`Q|}efXP{>GTs=Tnne{`pFPDEiQkN!2Rli;QQe-;-^G^>hNS>V^0+; z9m4p&=HO^#oznd|xu|Di)F%nIJ(BYFR`#?Quaj?Fs9fZk@vPT51rn;!xU3VBeP8HB zY%m~bwKh%Rff}!A34Cbd7b-Rz<8H}1DZv&bCh7^^XD~Yd(QpV*s;W{FF)R2_jUQK6 zLCkYDzNWdcyXKVI5|TAC9ctRmoz#&g9vi)i-^`^5$lf&NXM%>`U-}WTyJjClWlW9n zcBF=+TJ*->>ZDa%iv7Wmqn9!Xr;NmGtnhD04_-D8?@_kDHy`)T;neD#GOn4togOpb zFSTrbKpP}!uE$_khJUs&`!xuU7j83hl<$~S)*MC|Tu!ETW3SG-GRj96}KZcMZ- zaeSsVasnW*n^-Bm(PqA?)k~gNq!6D(<8Aiq4)_zb3(%asZn@cN1{uPp9ION7p*>|gUN z)H_$+9GCUI5}YYlp$66bxOSBgs8+KOC)aTrwl8!%)SB`NfvXYfsYfK#O#ZUSCb0eD z6;YL)*mCF;WXgtnMGnQM9pa;a^+ z*^+9lr?G!cU?ToBxk0mqUvgLo#qkI(jL*1N3uUfNTVnyd2SSY3Gmk@3AD!7h-x1(l zf)~mgs}<)THZW&34>I-YmpNuV7*eft%TTgc1T4@boyskvX9 z)WaUwT?PHv@_N<-RxfoVV*2q#@JTQV2sQsL)Z$@#Z*}yJx6@XDXGx-qCT+>CI%vKh zp=4T{hnPqT?eg0U^?PS~QZ&2=ZvSXI?w!-|)eF^!3FXVRa|n`q#J3p)Xvnh@NHVm) zV(jN6CqaI|BV6t6E(Y0goE5Sbd|j@S@aCXmCMr&v8^?HxrPa@izUDaS^1+qZvs;No zc!~no_&rf9b;XFHsa*|m@yryCw>B3IYr9v$z)5kNc`os!>lq$4-^Eb{UU?3uv*&?* zN*#Zwxa39PjaJj?VoQ>Lm# zl3y-}ThfAZg@8k&*RCswBSdvDp&kUL@(TU`2-efW140g~Q6B(dmi`r5GNVhdqm^xs|ETk*d@#^^6- zJ$(9TmU^kX`MaY8|763E}i!^xR$ua+1nTX9Z|v$`0gALM6eAgYE+RM&qI9NW-Y zkc^YMFA#NX5O6ZF?w*$_H&p zf^V93=e>E%`I4Qp%4oxy>C-P|y&I(9lD1reQibB159YhoQR;!ize5h&vlH)io{yV} znm{D8a^K$IZ?b>)Bf9QFl$s?Saov!5GUKfJ&Q*-(FLLK^?v}N45j8E>paG4u2yfn1 zP^aLV>^{C}8+|PL0Y6^G^0U8LuHjQ%P)nV;@Bo z9hSb3qLaYO01pwmhGN6jXBM^D9`=o;FQ}y5^rp_2sRG`^6|JqP-vgR(xG|E5~*53ate(U`c1Nvp+53h4WQ>C#pA0_FfZ@W;54pB0D7p z-KJ*jnIr7aW>dv>u(G#%<8-u~9q88k1fpYuLb5zH40<|3Y9^^KqaTGcqiC43ipD6s zOaiuo4T$M=KPPkD!?!}6Ve}obIqHN3Nr2Ils)_G_{vYh zJay%+4%Ii{Jo>4}uoqG*WC2A@v~JjCZdw(WA(fW5W}U3m+}wfUmPy9V4VObv@J_?N zgDB-VoD(s1W5yW*1vx9~Q4qp=wdC|AhIguS3Z=27``zWHpk%#X5Oha5S4C=Q;K=!4 z;_~@HY9!%h=c8k5@E>fH9hd6#o?+I{f!-)2!;xYf2Qe8;t7#y1iJYh#q+PscVHhbk z_vaW7Is0Q-+H#1EL}OE-NQ7CBa<<-%zvQM^O0F+#cG?nD1w2jKBn@G24au-0>D z_`2+1b0Yb-xYOL;>`;2tz1SgW$^&d6M0P}`5<+DWx3~zYsu;-xjuNx&i7XP{2 zb%7KA>Dg&M-_C<9^t`YmK?7|)gB4?=wSxzrN@o2(gum{Ylt-DD=Urp#ilF+W7 ztaK@#8Zb_O-rvwx&WyPsIn*ru+W~n&r}8 z8Qt3r!p0y#Sv+U#+;v>VJ097wkoydy8;>bKb2&U`eMI=u++coiBep9znv+9z)jE6N zQG0@!NB*pW-JQaA0ec=b7D*R5C(Nf_n*3WqP=iepEsd{hqg5+_l*dSc_3y$6ojoc=^=S1}~ViLPyifgJU?ugJ0A^w0?m~Re6i~p7Z=F7Z+ z(I@#GcrDUMg~_l95Q_OVAB*U$`UAG!da-TUMI2CwS~T3)-}`H|Z1k7AsoMFV!712# zQ-;Aii``$t@b40__!FKsX3lp~kF*n<0o+%1&|y(vgWpuoXHC29;z45?gS^yzhn^BA zs^Nwm`(VjbcuT5#iu&BbAe&>;`TDOp-_gD5bu(57Gy$!~9Iyk_CMA_-yXgKs1!{ zK3AmUGfyGA({jGLk-TU#R)(imG)4@MKRmP`S4{CFfAE<;RYB1~LwD>8RQ_YteGLVn zja#v+_Yk_`l#<{ITW(|Xwve(=+SBr~{LlsP?GAQksTb^D!ma?B?QE6k6!j>VE<$iM zwiH&jj~YMX;P2c|up}`*ZMRSkM<$m;B_2Q8C_Qppmqj09p z4g0^zj2R9K?vj0!w0{J+abmI&Qlb&X$nDtW=UL7vbAR)F=PWb)j-L9dWe|+Q z_r&;FLBB$WVaevPn6`2})e!EtT}fbr(bThIbVehwi-5*Z{VurXjo#Xfq`@jny8Crf zE{hdx0CKKXU}rYb%5mvN%b5aQ%%}{41u_^KrpBQCcHSm%l952 ztWv)>WcxbJ$QOPheORQ$N4DYHo$c?zIp*F@%6*^-46Ua-3iOwyy)Oz7!|W~i78}g} z1m9-XY5*>diNQV!i%}w$!p7)MH0Xa?EFq=_tcOObsnrO>gMR$XuzwAh7g+W0#|8Y> z)hw*?g^br#b)O-bD=USLD99w}aOQ9MrMPi%4{M%N;QX?%jErl9Nk?F_`9!^ z5$*jX3PZ#d!Fw|gTOKsyzYuHrs_hw78@WRoQCcgGl1J@9 zox#y$tX}15Y0FCD5AP#B-+jQv()RqBXMaw3pqw#za7W7bA~GVXkpd^@iircPp}Rc0 z_*q|TSn1>=pu1)Bo(2uyC-Dk2eOw?N%Tk}weV=6%4^Ju~e!;N!$<03e7p8U>yBs6H ze9A3O*(>Ye3I~jr1k}>azw)|7l|KVZ0|tLuuCdqJwJ;z4o#^nqEcu_`R{eJKb<09t zcW{m0=m~}X@tkAJ3O#Uby?P6ZmIWe9J_Mql4-!{nAn}YQt!>;L5I`y(PqvQQE|QB0 zkCc+Q!H^1L-NVnM9sMewk<{aAQu0dWD|#jtwCwm_hP`!9Z%F18tdefiu4>EuRHHRmRBIP2Pjv#ZXZIEY9N zphg!Lg(&g%aEQUWgtXqs7U!iMOE>CE6?BPj`inUD4b38KCUm*2Tqj%WfCZYD0bMlF zI3?a4ujx-bLfB@d-brkh^(2V8l)%t-h1tmYGeH&?bsp{&f&sKZn9*5jJqN1h-*js& zsO?dzmJWdX6(E$dlmb%cLWsx0HD8Vh9zR1!-##Ty`jlYnIeU&$fv>`6jsQDwj}Kat zY-U9#0mRY$2AoU0v_4BMeIn{dbZvS6!X5DS0ATW2r5aYmyH#PCD)t!W)b#EUd}=(~ z&MqQ>`QMWZf^ub@_UQo|yA)_S&bcIWs{{0XBg=uQVHWwHZjK4Vcu51pZH;v1D5z*+ zpi}|dHKH!6jEl0DOaDSR6~=%GBl1rfQJbP{8)?l6lO;>{y`Ofn1ZG?z`_Aj>)|T^# zy=t$6$yXyoNU5dq6FB3I{ezGWnlmna3<+yfyS@&S02Sr9*w+wBPs#OL*yWGHf92!^ z?_t)mf9pKVX=e>q_*ACB+VSS;Q;@#bD4=NGp}REii_8INE6LWV|5BESQaw-wF^{>O zA@v`rjD?m^N-V}_sA#53(i{_dL+o-pjsMxr8q$YM%0CwGc5T z(wck}k^6t`eFMPWZ>RRa)#j))cu!Z`!QCtD(*8WCG(Lo73R99-2!Mq;cYtyHc=^1* z55z^pj(ZfCk&~|>WP*Gq2RQ%<3A5TVvW+u*gKAC_j5QQiB4 zcBihU>fG$)3zredW)%}lfN6jzx^`h7Uzm(esc-*?dmjC93Sd^u{X&%G`^Fv(PGF~b zA-JPdrTS5*HAo+De%kuK!LXq`$s)cbF- z5oSBU4DAjuta<#5n1ChV@A<*vcYx}8Zq+tVi0wA-Vvvngu6XBvtLKrAVuo3kfwcU7 zHoF(8w74%chN9a9E=4}?i$ZB-T(V`oswtM0SRvlNH>i9M+M$S7$>bs^0bC3T ztJkvKt2>zBW1(@Ov!#S!dgYs(6Ta7Hwa(4caDHO$-C%ZRWVjxO#Bvc19&s~ zztw4CEM(fM<~|k1GxkiHiolXOu#=xNLJ+1$6S(K$meP3itZ1RYWaA2=;D0dR1t1l& z(fnfWb~q_$(Z3#mSqxDA1udI*d2vz4`Mo+PZ`aV*8pCG9ZWx-M$-^XIKAX+YVKZY< z;t~GUSc_C;>5_NKx=_24w$+RMI*&v@>Q5RtT{YhO0N(@$8X0qLjcyxjgP6^lS-nxjZ8w$w6xn z3g12=(gNT&&mh6OG)qng(l04xr5+O|#uJzk+w0SECT`25&6E-yTmAbs;hTnQk``^; zvy3vpPm+MvmUu3q+E*<#N-9dIwhnWpc7#8fWmrch&?b*syk=wYT2PdoCt>mY;0$he zuJeWt^D7}B4O?~Og+xeY5(#?g!>Ek=^A?f;i%UQd&L7nLfJQGhhWKFASHM|LwMYE6 zKpN!2Ggp{l|kKSkjDuMgM<_4IyoSfRU;f3ij#q(3oUBwm= z$usS*_%1P<1Jt5o7{v1eZ;iJ4?gvy|m^8b&iKArju&#etRz+QUg^@J}B@FWJ{cbta zFK_709+znhFFkyGM=_|3pV!~!&bPnV9^jET`YP2KCBWJwA_t9p#nMVQGrHH#9v8yp zV#lx|Dw~A8g%V)avwtM)rIK^gnJe2vrII01B<+T5YU4EgJNx?-H$76mtq)EV6O{<_z5PSSJTY?g-fmR1qmTC)~6Y6$OG zejsl4pk;QVR7Yot5yQ~S4Ae_E5h^)Jt^uF4;MYNw8Q)O0dLbvs+)DZbQ(Vgfhq$eH z&#B}V{dsr4vWc%=c&(2+nOE=k!wMqTO}NNDsobS}8RXORTCW_2rwkZ>4UIQ@FVQjK zb@r$5j5S`|Ax#Mg>!bubykZ*4ws&v&5qzQfZw1I~lH^Y*?>9IWSnb+#4CZJ>7)(|3 z0XN($pw6}kB4T942CLN9ZbqxmbQ!R}%~|m{RqhDI zfH`6t@1`=>>{0jFl)t%gGf%k|YWXxvB0p#_k0UtXDJyTnGEsvw9&WC?3|&-l zom%kdYk!$0V^ zm|AC@_dR^_IYu*!y8Si1-c!$eQJ=H!EGuR7hZ;gMjXu47gI)Osyn~AOyXJ1t=`F`1 zO4@txs}hN@xq&{hiS&QtYTRQd8@jW!0#PhW6)o}Am6MPkWXI9#EZvhPD2lET`4NCv*WMK+WFd@bBzQx_=vY^xQ^X9K=FUk=A=7GRSs-y(j7n$}F7^ai=A zFqu2wb{1M#<@Z?UxW42aq) z`Br@14PMo{F0!#>2+g4pryd}+dC>E^85GVX53XdUc3%nQPH>DSjMZCIS4>RmCrw5SwaqIdw>l%c4}Y8MdDdp1 z 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%0D@!*xvh!N?T2+|Q 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%0A>`v@9PrElGw zHB|>5D!k2vmzCc8!)>FWISdJ@oN_+RA%{6{j&lriobbjd_u{Us>#XI6Ig@SZQ{+6*HDsp2-C=5F#=&=Fv1j!FJX>k=d2A7i5;@Leu5x8d z6HEpLfcO$dN}XSw6!t$UK{iL6^$xxzP@r$={q@&l3!3agd~>=gTqz)4eLL^%19}4a zVcgL~NvwymXQ)FfMRD6QfP8|FXB2-?WbtT8>gXfB+1p`oq; z5?leNNBshYuQM)LRYTPXSp>N#?^{A@*Ud~8Eqv#rTSwEEU7h8ssfr8d7x4a$<$ng;|1;p38uJz zgfcEgQ#&>>p@lZ1<%W)qMF6U^A%eYt_eN%Na@xe4P<#)!gZba#ce=hPcJ2P3xW8ul zw!+mgjLp4(v&uBmq*HppD5-(#W%?IK>~F3X8*?U5}6 zceo%$emQebBGS{N-B-lkb>X>!I1}0$CBN^y+B*ljys5fS5gDWc`klHmNW0glw_H}N z>ygedAki)oY(1VVz(w{<=1`pPrF-IvmkpTz2zjPBwWZ778R~TfyDv~gr)@fN%43*Q zhc|VcDW@bl@~;Gj;w453sF!YhrC!v^*Izhi_&~cTw|fMPE?wdAI*eKKXoPQg=cK@*={(-~+{11A$xv*fpzywaK zE3Fym8nu!QdzUYBP~N0Q{LLyC(%PO9UQPRQuC^??kE^)hI>#Bmj(1QuUVihZzv-SU zuS--SjSrvbKFxlkB(?^w3jwY4t(=N^QhjL6>$pWjlBrlAcV_&qcp(KcFY7<1znD)x ztEWQ1jV%|{4uB78$p2C1qM6Lc#5%uRJmQLdG(@7I-O zufFdSCXGWGae3)|e@vD%kbxxD|Nkx@8qf@{`II27>WIzf#pNr1UV3yh&oboYvHMG7z&FZ(U(5=({pEw_KJ_2oG9nQZ^GrziM- z4=07*)Z|j?jC_`4)T=`t9a&NJ%UoMIXL}sy`ZGw7akegIG$F@10EhV$gjx!iv0hVj zA(bc1Dhl}!hS`pyRV>WzPH zqqLao$3vHf(%imQ%;pxJYgwKomPUQ@Sk*_7Xl;d9JKfdVgL3Sft^VQ96`Va>i0_>k zqq&(UwMmHayDz26irQ^TJ*WI@!mK$0_3Hw=k`%tS(>%>$1@qGLw;CMug#^8w8yo`l z`YZo>kjjEv^z+JEjRpY>23Jy z0Z^QMNZ#;-tA9qe_DKL=T&bTkNCeb765$;53N;S|Ui%xXfRsfN^kk9mny`Eb{@KMw zQhRdy0_RtEC6SaksUrH)lrxXPDU zLFzJLx+RhQr=oBAFC}f9RK~38c(O38!1*R#eg6gK-v?vq_bZ6$rRxLRgymLHjftN= zRH@LXQ@CTpuK2(oIiX(arlG7QY+9paiBay7wDIIFtRy<}N>Wl%{%VbaE=~g+0TPRz zE6OotCh0vZ?y)7}wUYE`L)R;8SygYtL49Pl$ST)>?3!?7A8T<+PF|I`s&Zz7z|GgMn_G}p@%!RfyLvr7BcpOqq2A3A5BwUh}V2$ z6(&{R<5%TYUg$4;!O*#3xmPA!b9J<0v<7-XEP2k;i{2kTHYc-?A7Z|G_6u)MEniRi zjsDzm87oEvVxnqYVb608HS$oRrBkkX=rP<1r&S^cBDeSL{ah1q4Xl8qLIt4kVOeU8 zW&>Ox&vT|*;mbop{>%sJC!e005wDP)g&tS(1)K6;9q5d7<*C$aWvdf11u9wxJCrrZ z+0B1rF6p>t?>}dMBhRApwL8fzTcV4=8-}c>GmF{BXKwPO zwT{b}s&$LE(4o7k%kNa5Vcf4er>TaMxo!#YWB|oKUQeIPZ-uVrBNuD~ zjv9>?0jKb3MM8-X@Q;I~LeA2ld7{Rvz(<|D`Ay*ij7bx3Tu~6yQ?!3!F=FTM_&R*A z7LbZsN^7$0d=QsX#+>6OfYx$dI0p%0D??~F(~g%RmXuDlz+3EHp}GNMxVo@iBej&} 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%0A69IZAq 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

    dzAn%MCh>=7w|Zx`A|O~sJ{08Ss|G` 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

  • 4^SKnxLKNX6<^^qa5`2 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