From 2db3796fd3574406dc4821b963b19ae355bf49e0 Mon Sep 17 00:00:00 2001 From: Psychpsyo Date: Wed, 12 Nov 2025 21:47:17 +0100 Subject: [PATCH] LibWeb: Implement CSS perspective-origin --- Libraries/LibWeb/CSS/ComputedProperties.cpp | 5 ++ Libraries/LibWeb/CSS/ComputedProperties.h | 1 + Libraries/LibWeb/CSS/ComputedValues.h | 14 +++++ Libraries/LibWeb/CSS/Properties.json | 10 ++++ Libraries/LibWeb/Layout/Node.cpp | 3 +- .../LibWeb/Painting/DisplayListPlayerSkia.cpp | 2 + .../LibWeb/Painting/DisplayListRecorder.cpp | 3 +- .../LibWeb/Painting/DisplayListRecorder.h | 3 +- Libraries/LibWeb/Painting/Paintable.cpp | 5 +- Libraries/LibWeb/Painting/PaintableBox.cpp | 52 ++++++++---------- Libraries/LibWeb/Painting/PaintableBox.h | 6 +- Libraries/LibWeb/Painting/StackingContext.cpp | 5 +- .../reference/perspective-origin-reftest.html | 30 ++++++++++ .../reference/perspective-reftest.html | 30 ++++++++++ .../transform3d-perspective-origin-ref.html | 16 ++++++ .../perspective-origin-001.html | 39 +++++++++++++ .../perspective-origin-002.html | 39 +++++++++++++ .../perspective-origin-003.html | 40 ++++++++++++++ .../perspective-origin-004.html | 39 +++++++++++++ .../perspective-origin-005.html | 39 +++++++++++++ .../perspective-origin-006.html | 40 ++++++++++++++ .../perspective-origin-scroll.html | 40 ++++++++++++++ .../css-transforms/perspective-origin-x.html | 49 +++++++++++++++++ .../css-transforms/perspective-origin-xy.html | 48 ++++++++++++++++ .../transform3d-perspective-origin-001.html | 20 +++++++ ...image-transformation-anti-aliasing-ref.png | Bin 44082 -> 65001 bytes .../image-transformation-anti-aliasing.html | 2 +- ...eclaration-has-indexed-property-getter.txt | 1 + ...upported-properties-and-default-values.txt | 2 + .../css/getComputedStyle-print-all.txt | 1 + .../css/css-cascade/all-prop-revert-layer.txt | 5 +- 31 files changed, 547 insertions(+), 42 deletions(-) create mode 100644 Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-origin-reftest.html create mode 100644 Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-reftest.html create mode 100644 Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/transform3d-perspective-origin-ref.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-001.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-002.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-003.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-004.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-005.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-006.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-scroll.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-x.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-xy.html create mode 100644 Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/transform3d-perspective-origin-001.html diff --git a/Libraries/LibWeb/CSS/ComputedProperties.cpp b/Libraries/LibWeb/CSS/ComputedProperties.cpp index 1a2e312ad15..bcba3642f69 100644 --- a/Libraries/LibWeb/CSS/ComputedProperties.cpp +++ b/Libraries/LibWeb/CSS/ComputedProperties.cpp @@ -751,6 +751,11 @@ Optional ComputedProperties::perspective() const VERIFY_NOT_REACHED(); } +Position ComputedProperties::perspective_origin() const +{ + return position_value(PropertyID::PerspectiveOrigin); +} + TransformOrigin ComputedProperties::transform_origin() const { auto length_percentage_with_keywords_resolved = [](StyleValue const& value) -> LengthPercentage { diff --git a/Libraries/LibWeb/CSS/ComputedProperties.h b/Libraries/LibWeb/CSS/ComputedProperties.h index 3253377a88f..6fd6bd5d130 100644 --- a/Libraries/LibWeb/CSS/ComputedProperties.h +++ b/Libraries/LibWeb/CSS/ComputedProperties.h @@ -213,6 +213,7 @@ public: Optional translate() const; Optional scale() const; Optional perspective() const; + Position perspective_origin() const; MaskType mask_type() const; float stop_opacity() const; diff --git a/Libraries/LibWeb/CSS/ComputedValues.h b/Libraries/LibWeb/CSS/ComputedValues.h index c6bee9109cb..2b38b5c71b2 100644 --- a/Libraries/LibWeb/CSS/ComputedValues.h +++ b/Libraries/LibWeb/CSS/ComputedValues.h @@ -68,6 +68,17 @@ struct Position { LengthPercentage offset_x { Percentage(50) }; PositionEdge edge_y { PositionEdge::Top }; LengthPercentage offset_y { Percentage(50) }; + + CSSPixelPoint resolved(Layout::Node const& node, CSSPixelRect const& rect) const + { + CSSPixels x = offset_x.to_px(node, rect.width()); + CSSPixels y = offset_y.to_px(node, rect.height()); + if (edge_x == PositionEdge::Right) + x = rect.width() - x; + if (edge_y == PositionEdge::Bottom) + y = rect.height() - y; + return CSSPixelPoint { rect.x() + x, rect.y() + y }; + } }; // https://drafts.csswg.org/css-contain-2/#containment-types @@ -645,6 +656,7 @@ public: Optional const& translate() const { return m_noninherited.translate; } Optional const& scale() const { return m_noninherited.scale; } Optional const& perspective() const { return m_noninherited.perspective; } + Position const& perspective_origin() const { return m_noninherited.perspective_origin; } Gfx::FontCascadeList const& font_list() const { return *m_inherited.font_list; } CSSPixels font_size() const { return m_inherited.font_size; } @@ -848,6 +860,7 @@ protected: Optional translate; Optional scale; Optional perspective; + Position perspective_origin; Optional mask; MaskType mask_type { InitialValues::mask_type() }; @@ -1001,6 +1014,7 @@ public: void set_rotate(Transformation value) { m_noninherited.rotate = move(value); } void set_scale(Transformation value) { m_noninherited.scale = move(value); } void set_perspective(Optional value) { m_noninherited.perspective = move(value); } + void set_perspective_origin(Position value) { m_noninherited.perspective_origin = move(value); } void set_transformations(Vector value) { m_noninherited.transformations = move(value); } void set_transform_box(TransformBox value) { m_noninherited.transform_box = value; } void set_transform_origin(TransformOrigin value) { m_noninherited.transform_origin = move(value); } diff --git a/Libraries/LibWeb/CSS/Properties.json b/Libraries/LibWeb/CSS/Properties.json index 3c12b9d6059..44003355cd8 100644 --- a/Libraries/LibWeb/CSS/Properties.json +++ b/Libraries/LibWeb/CSS/Properties.json @@ -3226,6 +3226,16 @@ "length [0,∞]" ] }, + "perspective-origin": { + "animation-type": "by-computed-value", + "affects-layout": false, + "inherited": false, + "initial": "50% 50%", + "valid-types": [ + "position" + ], + "percentages-resolve-to": "length" + }, "place-content": { "inherited": false, "initial": "normal", diff --git a/Libraries/LibWeb/Layout/Node.cpp b/Libraries/LibWeb/Layout/Node.cpp index 7fb47a268fd..65937399899 100644 --- a/Libraries/LibWeb/Layout/Node.cpp +++ b/Libraries/LibWeb/Layout/Node.cpp @@ -698,8 +698,9 @@ void NodeWithStyle::apply_style(CSS::ComputedProperties const& computed_style) computed_values.set_transformations(computed_style.transformations()); computed_values.set_transform_box(computed_style.transform_box()); computed_values.set_transform_origin(computed_style.transform_origin()); - computed_values.set_perspective(computed_style.perspective()); computed_values.set_transform_style(computed_style.transform_style()); + computed_values.set_perspective(computed_style.perspective()); + computed_values.set_perspective_origin(computed_style.perspective_origin()); auto const& transition_delay_property = computed_style.property(CSS::PropertyID::TransitionDelay); if (transition_delay_property.is_time()) { diff --git a/Libraries/LibWeb/Painting/DisplayListPlayerSkia.cpp b/Libraries/LibWeb/Painting/DisplayListPlayerSkia.cpp index 010635553b9..7828285a534 100644 --- a/Libraries/LibWeb/Painting/DisplayListPlayerSkia.cpp +++ b/Libraries/LibWeb/Painting/DisplayListPlayerSkia.cpp @@ -230,6 +230,8 @@ void DisplayListPlayerSkia::push_stacking_context(PushStackingContext const& com auto new_transform = Gfx::translation_matrix(Vector3(command.transform.origin.x(), command.transform.origin.y(), 0)); new_transform = new_transform * command.transform.matrix; new_transform = new_transform * Gfx::translation_matrix(Vector3(-command.transform.origin.x(), -command.transform.origin.y(), 0)); + if (command.transform.parent_perspective_matrix.has_value()) + new_transform = command.transform.parent_perspective_matrix.value() * new_transform; auto matrix = to_skia_matrix4x4(new_transform); surface().canvas().save(); diff --git a/Libraries/LibWeb/Painting/DisplayListRecorder.cpp b/Libraries/LibWeb/Painting/DisplayListRecorder.cpp index ed012c7649c..a160d56eb25 100644 --- a/Libraries/LibWeb/Painting/DisplayListRecorder.cpp +++ b/Libraries/LibWeb/Painting/DisplayListRecorder.cpp @@ -12,13 +12,14 @@ namespace Web::Painting { -StackingContextTransform::StackingContextTransform(Gfx::FloatPoint origin, Gfx::FloatMatrix4x4 matrix, float scale) +StackingContextTransform::StackingContextTransform(Gfx::FloatPoint origin, Gfx::FloatMatrix4x4 matrix, Optional parent_perspective_matrix, float scale) { this->origin = origin.scaled(scale); matrix[0, 3] *= scale; matrix[1, 3] *= scale; matrix[2, 3] *= scale; this->matrix = matrix; + this->parent_perspective_matrix = parent_perspective_matrix; } DisplayListRecorder::DisplayListRecorder(DisplayList& command_list) diff --git a/Libraries/LibWeb/Painting/DisplayListRecorder.h b/Libraries/LibWeb/Painting/DisplayListRecorder.h index 09c360896b7..e9679aa3772 100644 --- a/Libraries/LibWeb/Painting/DisplayListRecorder.h +++ b/Libraries/LibWeb/Painting/DisplayListRecorder.h @@ -33,8 +33,9 @@ namespace Web::Painting { struct StackingContextTransform { Gfx::FloatPoint origin; Gfx::FloatMatrix4x4 matrix; + Optional parent_perspective_matrix; - StackingContextTransform(Gfx::FloatPoint origin, Gfx::FloatMatrix4x4 matrix, float scale); + StackingContextTransform(Gfx::FloatPoint origin, Gfx::FloatMatrix4x4 matrix, Optional parent_perspective_matrix, float scale); [[nodiscard]] bool is_identity() const { return matrix.is_identity(); } }; diff --git a/Libraries/LibWeb/Painting/Paintable.cpp b/Libraries/LibWeb/Painting/Paintable.cpp index 07bdaea7f4a..0ab9bb27f06 100644 --- a/Libraries/LibWeb/Painting/Paintable.cpp +++ b/Libraries/LibWeb/Painting/Paintable.cpp @@ -182,12 +182,15 @@ void Paintable::paint_inspector_overlay(DisplayListRecordingContext& context) co auto to_device_pixels_scale = float(context.device_pixels_per_css_pixel()); auto transform_matrix = box->transform(); auto transform_origin = box->transform_origin().to_type(); + Optional parent_perspective_matrix; + if (auto const* parent = as_if(box->parent())) + parent_perspective_matrix = parent->perspective_matrix(); // We only want the transform here, everything else undesirable for the inspector overlay DisplayListRecorder::PushStackingContextParams push_stacking_context_params { .opacity = 1.0, .compositing_and_blending_operator = Gfx::CompositingAndBlendingOperator::Normal, .isolate = false, - .transform = StackingContextTransform(transform_origin, transform_matrix, to_device_pixels_scale), + .transform = StackingContextTransform(transform_origin, transform_matrix, parent_perspective_matrix, to_device_pixels_scale), }; context.display_list_recorder().push_stacking_context(push_stacking_context_params); } diff --git a/Libraries/LibWeb/Painting/PaintableBox.cpp b/Libraries/LibWeb/Painting/PaintableBox.cpp index da6b90e9bc1..fbea54a318f 100644 --- a/Libraries/LibWeb/Painting/PaintableBox.cpp +++ b/Libraries/LibWeb/Painting/PaintableBox.cpp @@ -1553,41 +1553,33 @@ void PaintableBox::resolve_paint_properties() matrix = matrix * transform.to_matrix(*this).release_value(); set_transform(matrix); - // https://drafts.csswg.org/css-transforms-2/#perspective - auto const& perspective = computed_values.perspective(); - if (perspective.has_value()) { - // The perspective matrix is computed as follows: - - // 1. Start with the identity matrix. - m_perspective_matrix = Gfx::FloatMatrix4x4::identity(); - - // 2. Translate by the computed X and Y values of 'perspective-origin' - // FIXME: Implement this. - - // 3. Multiply by the matrix that would be obtained from the 'perspective()' transform function, where the - // length is provided by the value of the perspective property - auto perspective_value = perspective.value(); - - // https://drafts.csswg.org/css-transforms-2/#perspective-property - // As very small values can produce bizarre rendering results and stress the numerical accuracy - // of transform calculations, values less than '1px' must be treated as '1px' for rendering purposes. (This - // clamping does not affect the underlying value, so 'perspective: 0;' in a stylesheet will still serialize back - // as '0'.) - if (perspective_value < 1) - perspective_value = 1; - - m_perspective_matrix = m_perspective_matrix * CSS::Transformation(CSS::TransformFunction::Perspective, Vector({ CSS::TransformValue(CSS::Length::make_px(perspective_value)) })).to_matrix(*this).release_value(); - - // 4. Translate by the negated computed X and Y values of 'perspective-origin' - // FIXME: Implement this. - } - auto const& transform_origin = computed_values.transform_origin(); auto reference_box = transform_reference_box(); auto x = reference_box.left() + transform_origin.x.to_px(layout_node, reference_box.width()); auto y = reference_box.top() + transform_origin.y.to_px(layout_node, reference_box.height()); set_transform_origin({ x, y }); - set_transform_origin({ x, y }); + + // https://drafts.csswg.org/css-transforms-2/#perspective-matrix + if (auto perspective = computed_values.perspective(); perspective.has_value()) { + // The perspective matrix is computed as follows: + + // 1. Start with the identity matrix. + // 2. Translate by the computed X and Y values of 'perspective-origin' + // https://drafts.csswg.org/css-transforms-2/#perspective-origin-property + // Percentages: refer to the size of the reference box + auto perspective_origin = computed_values.perspective_origin().resolved(layout_node, reference_box).to_type(); + auto computed_x = perspective_origin.x(); + auto computed_y = perspective_origin.y(); + m_perspective_matrix = Gfx::translation_matrix(Vector3(computed_x, computed_y, 0)); + + // 3. Multiply by the matrix that would be obtained from the 'perspective()' transform function, where the + // length is provided by the value of the perspective property + // NB: Length values less than 1px being clamped to 1px is handled by the perspective() function already. + m_perspective_matrix = m_perspective_matrix.value() * CSS::Transformation(CSS::TransformFunction::Perspective, Vector({ CSS::TransformValue(CSS::Length::make_px(perspective.value())) })).to_matrix({}).release_value(); + + // 4. Translate by the negated computed X and Y values of 'perspective-origin' + m_perspective_matrix = m_perspective_matrix.value() * Gfx::translation_matrix(Vector3(-computed_x, -computed_y, 0)); + } // Outlines auto outline_data = borders_data_for_outline(layout_node, computed_values.outline_color(), computed_values.outline_style(), computed_values.outline_width()); diff --git a/Libraries/LibWeb/Painting/PaintableBox.h b/Libraries/LibWeb/Painting/PaintableBox.h index 73ed65d14b9..7f262d836d3 100644 --- a/Libraries/LibWeb/Painting/PaintableBox.h +++ b/Libraries/LibWeb/Painting/PaintableBox.h @@ -201,8 +201,8 @@ public: void set_transform(Gfx::FloatMatrix4x4 transform) { m_transform = transform; } Gfx::FloatMatrix4x4 const& transform() const { return m_transform; } - void set_perspective_matrix(Gfx::FloatMatrix4x4 perspective_matrix) { m_perspective_matrix = perspective_matrix; } - Gfx::FloatMatrix4x4 const& perspective_matrix() const { return m_perspective_matrix; } + void set_perspective_matrix(Optional perspective_matrix) { m_perspective_matrix = perspective_matrix; } + Optional const& perspective_matrix() const { return m_perspective_matrix; } void set_transform_origin(CSSPixelPoint transform_origin) { m_transform_origin = transform_origin; } CSSPixelPoint const& transform_origin() const { return m_transform_origin; } @@ -331,8 +331,8 @@ private: BorderRadiiData m_border_radii_data; Vector m_box_shadow_data; Gfx::FloatMatrix4x4 m_transform { Gfx::FloatMatrix4x4::identity() }; - Gfx::FloatMatrix4x4 m_perspective_matrix { Gfx::FloatMatrix4x4::identity() }; CSSPixelPoint m_transform_origin; + Optional m_perspective_matrix {}; Optional m_outline_data; CSSPixels m_outline_offset { 0 }; diff --git a/Libraries/LibWeb/Painting/StackingContext.cpp b/Libraries/LibWeb/Painting/StackingContext.cpp index c00569accd1..1f608044d19 100644 --- a/Libraries/LibWeb/Painting/StackingContext.cpp +++ b/Libraries/LibWeb/Painting/StackingContext.cpp @@ -310,8 +310,9 @@ void StackingContext::paint(DisplayListRecordingContext& context) const // Second, the 'perspective' and 'perspective-origin' properties can be applied to an element to influence the // rendering of its 3d-transformed children, giving them a shared perspective that provides the impression of // them living in the same three-dimensional scene. + Optional parent_perspective_matrix; if (auto const* parent = as_if(paintable_box().parent())) - transform_matrix = parent->perspective_matrix() * transform_matrix; + parent_perspective_matrix = parent->perspective_matrix(); auto transform_origin = paintable_box().transform_origin().to_type(); @@ -321,7 +322,7 @@ void StackingContext::paint(DisplayListRecordingContext& context) const .opacity = opacity, .compositing_and_blending_operator = compositing_and_blending_operator, .isolate = paintable_box().computed_values().isolation() == CSS::Isolation::Isolate, - .transform = StackingContextTransform(transform_origin, transform_matrix, to_device_pixels_scale), + .transform = StackingContextTransform(transform_origin, transform_matrix, parent_perspective_matrix, to_device_pixels_scale), }; auto const& computed_values = paintable_box().computed_values(); diff --git a/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-origin-reftest.html b/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-origin-reftest.html new file mode 100644 index 00000000000..c39661796a4 --- /dev/null +++ b/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-origin-reftest.html @@ -0,0 +1,30 @@ + + + + Reference File + + + + +

The test passes if there is a green square and no red.

+
+
+
+ + diff --git a/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-reftest.html b/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-reftest.html new file mode 100644 index 00000000000..c39661796a4 --- /dev/null +++ b/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/reference/perspective-reftest.html @@ -0,0 +1,30 @@ + + + + Reference File + + + + +

The test passes if there is a green square and no red.

+
+
+
+ + diff --git a/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/transform3d-perspective-origin-ref.html b/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/transform3d-perspective-origin-ref.html new file mode 100644 index 00000000000..e174d7596f7 --- /dev/null +++ b/Tests/LibWeb/Ref/expected/wpt-import/css/css-transforms/transform3d-perspective-origin-ref.html @@ -0,0 +1,16 @@ + + + + CSS Reftest Reference + + + + + +
+
+
+
+ + diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-001.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-001.html new file mode 100644 index 00000000000..9fd7caf1b55 --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-001.html @@ -0,0 +1,39 @@ + + +CSS Transforms Test: perspective-origin - 0px center('center' computes to '50%' in vertical position) + + + + + + + +

Test passes if there is a filled green square and no red.

+
+
+ diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-002.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-002.html new file mode 100644 index 00000000000..f5843f0397a --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-002.html @@ -0,0 +1,39 @@ + + +CSS Transforms Test: perspective-origin - center 0px('center' computes to '50%' in horizontal position) + + + + + + + +

Test passes if there is a filled green square and no red.

+
+
+ diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-003.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-003.html new file mode 100644 index 00000000000..6bda138d75b --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-003.html @@ -0,0 +1,40 @@ + + +CSS Transforms Test: perspective-origin - 50% bottom('bottom' computes to '100%' in vertical position) + + + + + + + +

Test passes if there is a filled green square and no red.

+
+
+ diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-004.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-004.html new file mode 100644 index 00000000000..c049c072952 --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-004.html @@ -0,0 +1,39 @@ + + +CSS Transforms Test: perspective-origin - 50% top('top' computes to '0%' in vertical position) + + + + + + + +

Test passes if there is a filled green square and no red.

+
+
+ diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-005.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-005.html new file mode 100644 index 00000000000..4e79e6b74ab --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-005.html @@ -0,0 +1,39 @@ + + +CSS Transforms Test: perspective-origin - left 50%('left' computes to '0%' in horizontal position) + + + + + + + +

Test passes if there is a filled green square and no red.

+
+
+ diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-006.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-006.html new file mode 100644 index 00000000000..48b909cf2ee --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-006.html @@ -0,0 +1,40 @@ + + +CSS Transforms Test: perspective-origin - right 50%('right' computes to '100%' in horizontal position) + + + + + + + +

Test passes if there is a filled green square and no red.

+
+
+ diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-scroll.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-scroll.html new file mode 100644 index 00000000000..fcdd300de9f --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-scroll.html @@ -0,0 +1,40 @@ + + +The 'perspective-origin's position must not move with the children of a scroll container if it is on one. + + + + + + +

Test passes if there is a filled green square and no red.

+
+
+
+
+ diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-x.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-x.html new file mode 100644 index 00000000000..de7d45681a2 --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-x.html @@ -0,0 +1,49 @@ + + + + CSS Transforms Test: perspective property + + + + + + + + + + +

The test passes if there is a green square and no red.

+
+
+
+
+ + \ No newline at end of file diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-xy.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-xy.html new file mode 100644 index 00000000000..6fc1aec4fb3 --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/perspective-origin-xy.html @@ -0,0 +1,48 @@ + + + + CSS Transforms Test: perspective property + + + + + + + + + +

The test passes if there is a green square and no red.

+
+
+
+
+ + \ No newline at end of file diff --git a/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/transform3d-perspective-origin-001.html b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/transform3d-perspective-origin-001.html new file mode 100644 index 00000000000..f2a5b446c1b --- /dev/null +++ b/Tests/LibWeb/Ref/input/wpt-import/css/css-transforms/transform3d-perspective-origin-001.html @@ -0,0 +1,20 @@ + + + + CSS Test (Transforms): perspective-origin + + + + + + + +
+
+
+
+ + diff --git a/Tests/LibWeb/Screenshot/images/image-transformation-anti-aliasing-ref.png b/Tests/LibWeb/Screenshot/images/image-transformation-anti-aliasing-ref.png index 7cd5b99f8075196a04ed7834097136711ed66567..cc6270533a1d03749a50f30efbc7a08a3364c811 100644 GIT binary patch literal 65001 zcmYg%Wmuc*(shdmDefh>6^cu7Ed+<)#k~cJyBBu}?k!rRXj>eL1PEG+7Z2`E@O+%> zd-pzPe&$DVXXbgj%d=;6 z&y?h4bbRs-It){p482wmV%x2X@<%E*wucKBBj!95A>p7N^jC6n-F*eT((67 zj|UU-^Hcp#1U>Uuxr~!~s6}!-<|5C!%#j;FR*gb;ALMg?#esvBj^U$x#-A@<%q=ch z{p=X^aL9%A$4_a1mb`%tU;d3X}%pDap4WMGjo^wNLi*-=S~qqV9-u&bbWcHG+mKBuAMH-%qF z}Km=a`72M(=>0t2O$CsHp$^bW3Be zwR;@QQ9(HSGy8+NaP`0c?aSHYp1GFhBI?@6gJY9bEk8w>NzGk7O_DE%~I9`}4{r4bin0?+v1dS+A zf^Q{X-b`q+>1pc9<4%V^SLh$9Tcv0DECY6A(uo-;Coy&j_L=#pYmMuDevY#>@uW&uGJ z{Z%78^3!Ms&5^ioPj_$Bfs{|*;{&GCpV~efWJp3jO_`C=MI+wrF3Dl*|D5(3`C3v< z8avBo#8Q-Af&H@|M9ZpB+TH*n0i0!u?blx2w2 zgZh%Jpv)%Gg>tjr8qugFR6!C>+YC?{6TT9@{-gb#`4z9c~+ zzC_P?zaJaCCTqXHto1pa?J6;7m-s+X6<@LeuJ@FQrAJXh+fVCgV|^**JJwwsbx^Qq zg?vQ4I$E~bKY3wvTV`N!mDl~f4OprSo!@=oP@#K0MRnAnpOr-H&363%omkT zkoVqNTwprdhnISNC@XN6>0zz9jlRz+0Mfzzm$ihn4p`=rqikCo{%T_seYmgD1)0~v zrFCRJZ^Wm+Bu;%J#TyGClJ6IZrhi3JRnpJOU@{wVJ1mRB64Z%8RKkJFEt$WY#%G-w z0Zrh|t5zZuK3%s~VsxJ$M8+S--J{71OR}KSB4OZJi!WkV8W@`xn{PlJ`IB<1A z0=LMd^y-B%*R!(6dE_*oD}3D?Aq@) z&2DMPX;$>l2*g2y1lyWCTJmC7i5ks!2b51hTK@z#ZQdGl5|XytJ1-V6qpSqZtld+C zs8}BU_lfk5)*v8Yn9(rZ=S_6R!NP{KK3{)-PD}RnJ&kRAoG0oT4_#47 z35m3tONTDABnChe-rQXOGVBE>dErlUP^dAkU=rX85PLhdQCuN6@;dqC`-a6cccrvk zrGR?L&aA8~wo@^)E$Xd??vs!4{%LYCIj4qw9JpjqAIYJP6nqV)&N`ln3JciExHe*)%i(YyRU5Q5dbZ`}S9-E-wcW6iJ6xvb*3$XvJ{t5yj2+x9qG-5QS2yD`8 zbAl8uqc*z9k(C$hx*y3s;rv6B@>XY%4i)AalhBgu;rl?r={L-*PKHePyhpW!T0?dH zQEy`V1Pus;g<-SYYM`8c_Y`<(N)1`nHu+gIh@1E_oQFZQ1yY)Oj`O%Rj?7zmhzm~4 zE{w`b<<((>BXl@Ekqlz|MZ6Sm9-l}ZSoA%K?u|;C>k2Mh5|i|t7ky*y?mS-3)kyi^ zsId1xNOg_m>GVfI0bLV}jF9)#_+rQCo}vqSPCKmon_z6#dRC-CTG3iQ!^m5T^Lvcp zg11}@kjxz*yHus~VKWz1wy(OMWVXA|?=DL+x?nioG2UDyUji6x`Pt5v^#gQ2=r=5KI6l-P|Gak1FLB{o1Y*G;$6y2KvR_embtaWet znMmeYlN)ags*iqL{K`b#yYs8z+BXlk!#e?|cRCHjJpwnRNyHrJ^|*4jch})!8ilSG zJA|0{v~DiPl5MO52YD|WJA!}BJW5ixiH!&~?HJM9$o>E5MLL`);e*(h5rk4MVIHbP z%E>W2qRq#ac|?Odlb;{`**hoA8fb9 zPqkE?W6p&GEG=d1^SBL+ITWYIASS*tbzZAPH) zXw!UNKcg{3>e+JRbG1eWT{-IyCd>B1Cg>EQhAMlvCo?`tair&Hja1@vv4-@yU*uOq zZZFBS&J^2!r1319xeJFlEUrS7(yQii0JWMP!LfScT86~K5LZ?<|1@`4gk zAi22%`w!CEJ+UmW#H9JZD|UD0g`-Onwnj#(!orHFL2(LB|JS~+El!ruN~|;4rvn3j zOoU7JIU(MBY5%V43{Hi27x@{u5)|SOoy@}bt6?N zBmXhz19%7q;;ouVz11TvKV>==O0rgn0IzY*D($o|x= z#l!*=7E=d1Q&!Tm993zkDkr~8-CH}EZU&{(-ULoC7;HyowR1H+<|x0cTvQ{8QNp26 z%8$kiVM(rW&t6OhtShz80!-*d4RqvKwsuYQV#~i|W6%#5cwC+K;d}u}Sf7r|vdses zOca6QyPO}G!$K>-4O)>07N|;~H8t2gpv?XuyqT4!tiX_6X7Rqi5(~C^=^WI%>n!OF z##w{$M&_;0ydz*^JAJr^1>Y8)79!V!?}OK*^8dlC$YAP#KdA7-wR-7MX*J&-?SetN z{Bj;GY!-DQnB1XnT##u{ih1c?ebZ$J6^?4* zADwZOqu>+XnBxrZ4h?!90j~K<)#2zYQ_Im~aQVwXdamAB6#1U7G`?nOezbjY`NqfJmW6HLYvYSDk$c)VLRH;tr@bu7X0r8=zvj^+DJrz}Z`R90)?*?b# z%Q|805xlIW;aQrIM!UJbuHwV3RHNf_@W zuLS27BO@>I;qTU+qgyuR_@!WJu?Q5A6(V#wOG_R2k7*EXI2)5?g+~1u;@ky-qDj5k zIDq9qRR~a1zfx8;4H(*()wnvJdJ`L~Auz-vKVh900NXGY$9wJBr2nx$b`i$0{)rHa8Du z8>CDN3m*YhFlN34a|TBp4{<1oF>Qm=l;>96N?VQ8$KGdxic;#B4FF1-oMTILhd9bH zJv|VU%Hot~Z+XGVI4Q4IdXzK)li!VMA1>+38M~KtoG&)l4D}b)zwSm;8L^V z`ITd%*YDatMpSn&p@XA>zApktZ!dvs+r>Ls@5TKTAd6g&pBNq$le5(E)~o-G%0OI=yi`}gW~Ng(|t>|cG(XS8 zKu@AvfB#VZt4Na|fZm8e8E9!ieawDoz%?AYCjp~?Vlum$RmsO`BHt%8exu@%HD&V5 zcaCnv8?sMGSKTY7m3K&U2Eg@tme*!WoHS3_!{64Ikj9o|iBEt2lzCi1fd^A#(+Cv&KStsnu ztjYYU%zk#DcMES@UNef;HBY2*Q?0}cuiUQGPHtsGC@GbEoEBgqO}fPEQuxS~ne|fB zI48^++?q}ZpaOHnG|$tCO(mBbyjAQWq36HzVJNZx3f=V1KR(#zD>E|WTK-0%;3Xx9 zu3h58KrYCqFO`F$WA@hgBV=Q?psJ~#?Nv!q8KGplD?C{R=zTpftPf%WX9j@5@$Ftj zUz{{3C))$wp`>Y!(t|u=47fhS%4vS=_Z{f5ASPa!%2sZg<|jvzepLwU6;BkwiqKQ1 zXfl>%U}Z2E%VJ{6*=JtCuHY;KtLt>smYN486|+JCW)!pT%q2~P!-A`y{}Ik>cLU{W zJ1HAF62MXlBI@~9%L~%!3K87B)d~%vxkV<**1idw;(jFGm7QMI*S#uV)5}2RHN;v` z6a)@z36q+dB$d$~_*h=x&pxz@klt&i7qN)#ZQ(A>sb*&3as37%Q8FzvP@xSB(ZM?_ ztsK9%Q?mF9%mu}ROPhQ9N4F|VnBHsgQ5M4I3>pklf6Jp&-z&#Tzld2f2x5a1wn5k3 zm`9c?lTV<*8GI0eo)v96tak}4Tw1EN>*IOmrBpEyynT(tw5Gw5xaypOt>%$@oi!U4 zOv8MBR=6eVzxr8g{!Na5pEq&xTx`bQnZsb{fgTxZr#ZKUq)?L0nLrVV*rp!&gX?d& z1iqd1qYefT()gbd2tUuqAL1AX-@4Bf&tbV%C>BLx&iPsEz zQ}aqOD1YSI2n_1M{()dnhwX8-(rSw)BwTR~hH2=6XGNfZqAz`y{bT+K95vcR6>mdN zgOs?4_rBvGqvH}(E%``p>t9)EyVoW}+Q~m_4~pOmulHwqer+w2RNH#?D9u#^}|a5oM{gTNPzMJ-Boz8W3Tef z{4?w5@90GnzAo*xMW?aHuvv}-bMFNag*p9=qEe^e6w7Y-TU1jVWfIrNG@t-WQ5g(x zxGHlu`{hsK+%G=Q$wC6@S*KUeQ$D>y5T*Pq<7&o<6oKF;ur2dh6ZtKy5xG@2Q`0S9 z(igen@uJ5z+X9l51uv=l-j_=jHfevMB0D)HD29N$B${~J1iiAT^fUwI6N3N2ntQry zwCC*gDlc(1jH5jzDpWw=$Y}!Y5F_6-oZDWF)6*W)j;t~Lih3|7(cQXe&U`m{OnpCa zJwVC}kfdtUz5^6PJcr`>9MgAB+aG zk}z{zDy|T)4s8FRkMmY)&m47;*unuHgRNL9aso$t#-_cnbf_KNa_M!F;`~-xbkPjF zX~CnM zeo1}L35Vuw@i}93ig!u?XFWe;?;0fZPnw<}*$JShiec|9%iDWKFvKa>;BY3vrCXHA zFtTBFV9#l*(me%;NSB33s>18tA8U7ytLWQ>9JGtlbB#XWmkPO&v+`L{WjfsM3T#+4 zxmHaOvU~g0$K_W60&LSfNd?mc(4xrz(Brk+p=oQ zyS=xSb7}ue85>e+jXTAPEt*XqI1Wp-N=&+H_CXX()|x@K-AO2B9Q5|%OXI%IaPD7;5q|^X7Ba=KGryIJ zSISy^05b4F$Z;5KS~Mfy85pE?1?1^Y_R1HZGnJ_c+RiJ$^1{0%RQGMQUcI+^UWzD~ z+li`&Cu}#-1L()A#%n55D?|k*jQIZk>u^25Q-K7+ifw@TB5FB@M$dS*k#@}Wb>0Z> zch0HB{ZLyU61Oqk`b``i3i39+)X$aeF-gQlc{)0;gAYSA(JSJ{F0@Fhy|k_r(@3A} z9jZwqOFv8CR!&YcQvo}-r+bo>2YqO4p09QwTsN-jZjY$$mbPn?OiVn?uWLy$Flcc3i{tIY~;1P z>4M)MK=#jZhF&q|Yt5(xyn?5+QtcWNf%&#Q)L(%!7scum*+2Ql>KP1a={iT7ZBP6@ za{EDtLLb4QC!VibtZO1?OWyCs&{8d(rb@IT*CWrqe*)LhPfX z;kTWwM~uT%+H*$Q=d^^`VC)p^{Xf))0il{5ES08Lvz`Sdf`=3Num5z@unZ_393I#6 zW*4zklRIPx<8VnCH#E0y-P(>#PYb5*hL7fdv=uWF_dQA5*6`mNX5OZ)@jc(7IhM?G z|6yDQ#Av{pQA^&%Xj}?(Q+IScv`A%73Py_L-nAL8aQYzjXu9sIR$OkbXngC#^Xfcp zI}8$;q&Y)TVznc|<;uE2W#+!0!LW(BLifd@94wY5;#$zxN(EY^pGiLpTxM_{gU8iZ zzulWn0m4%qJk?wycqIg~lmP`Er{cHQGH>Ii0xO8>yE_yo{DZ`nc!DwH)4o_Mj}gu; z42Z-b`r}gxg==T~J?j>>c?$4wSquK#F~pwuyGNj7GmZp|*cmj8&-=ClcD=#WIa|ZJWD5_w)hql*ntmg}gV)Y*o}SB{!psN@K}{ zZ~D`|{_5bC`n*h89niW#0}PB(Ez9!4r3fQ++H&ABZQq2>lja&3IUYMUHnk0}Epv%I z%@KgKyo;O$CT5Mz&G4-=2!6R;T9X|K|Ie!{5pl__`ANn5Yu52MUF~q_zJ9x}fBy}X zG<80F_sM!HkLDscR3grDI&KK`=)o8|f-x%RxZI95?Ic^YY~1!@E_e96HT-t3usOGs z)F3%^$6x8F1ZHyEjE|;cbaAloLX+RAzWEiY8q*!M^Kq&^ zjp&03+1hh@!Z+jh+=7Ufc()qD}m{cnEL$#uqt3d^_X6dXoI1LNS>~= zx#08^#fkN8@zg$JnE(IjNx5D`)G-rXYTDfVqRVa~>2W7PX*Etp<8bClXT%pak<8@b z@Eh^?kth56+|Y`E*Gs%vYu@O%r!ZbeSV>Th7#bSuFZB!p0bABll~SXXD%8C|#V#qa z3KLTf+CGr1HwF@0{mG1=BW`t~g9?NOu>vLOHP^_6#%$l}VT zd2m#IvDm?igl$Lj+TMf6c^tJQ)$oL^L2XgyqpztB94RMr8E?mvU<%@(fgR%8#$0+qUBByg2 z#?)6|X=^4Gr`xY4-7P^Gf?tO9UC2H&!k0{_ltB@s;q-izusN2l_}g;ouT1lp(1$RW z9z14J-OyElzJKP;U=&(naOvCEXm>hN@k&Wd_1b8O!}Inn#pr-QV-}i-NX*Xmo>j%x zP1Z<7I2VuPxP6Vsf3qE{0ji5PJ@J{R!*)7SXCro=94kPijpB{@Qc$?DDDI0`TnMV+ z?sp^A(_P;xg8J6TsGlX>rc)K#r}U(!mBdW7xYC@Tzp}`fNvqqiJx8$;O$Au%vI3R9 z6#lYSP^XcbwRq@Dl0#AJOm*JEnR0bY<!69e{8jg^(exWdq#&R5jEH}5 zWV1d~?Mwk#B!e{~qEA>n=j*;j4Mo)afq$pmm7nqC0`#%Yd+ z(ePvc)kRvKYGrFVqp6NEKm)^-fy_ey^mS3)y2tbQT=;yP^@B%+4u8j@!ixcUOna(# zs=;nC^40&kO2^cNbab6>_}OcclB{15?g%`0lH{(h<4*&NKThMpIw>vzvGt}3&Wefo z+wdi#Rj7wG>Z74#fKOf~@T~&F2i5wFlpqjpPdh zOyaLggzB=`rHfp^bIn1yzMrDUr+Od1#ejfcs`mOA@n!UM>XHq<-2r;7m9te-fVj#sa;+DoL^Y6b#MrSdC1O+@KO$+%I~y}i3$8Vj%8zKlCpwp zZ_D?shj7&I&d+fi)Z*;l#7+l9eC1o1x3vl`Oc29V_4dj-I`};*#LiGXll{a6&(1>E zY!m0C?QmN8SYgs#E#0v5rva#fK+0_PrX@6_&fl$1lP|90u= z7tszZBH$6Jr*KovIeX(t74w$KBH`vebCMF6<#Q?!GF)MAWy4N{{wdP1UGj#6CDM%R z6LBHr1E|(M&&f1O$&{&#W^MK)*i{zt=Nq!T>?>Zut2sRT=ac51<`h=JnXn_W4_2ruF_)Un1+^`moffYAtlVU{aUwsn__eI; zimiSw@h>czw~ENf8@$diHZ^WA;54koX!zyfpDLCFH1Cx*tj#tv;q7X+bafrQ??vB- z63sX$lPAFE@wO{ezGC}QgxY-#4lYXb^zzld{DHaVR+XfZcOrYsx+_dN;j!Vf)lO#bBwu`&87#h^mkejTX^uh9HV|U{=;wG#R8Lg-Rtm|l$ zn^k*Oid$E}-O|zye@ZCyKGGuEvX|>i4#n(L&zv1SmdW1EZ9$qJc!fXTFLe68SFpCr zw|h4(le1>q(aG8UWCM_U=dbGJH8GE2n6_DG>)T;1VpjJw1smDM9ZpY8s#2NJCm*yN zD+zljPnweyHE$4+W6dXSb3&a2RJ2(#4xxq`+r_WdfxeKxbJ~ZDUcJp~E7ck?zoVroNTh_uFEdMWR;<(bFF< zTbUAAK2`xq&NJM^CkAZ{6io4*jDMccfn-^zJ*XE(%J^G%(;A^UMMK4Riub2059}I+ z;?{f%(%;LiEnFqGANIZTI{Zfcev}ldJ*h^%g=LIObT9V)Iv^V_DKCfW?bw~nPw%U@QKEF;=qa1+;f7HaP+0Jib5q7lAo!N~* z*&3#;l}w6PF;4zNM^`V}@Q)i?Tec1^9mY)C&4aE!1$0;%*ddQ(mvt=b=u6Aw0og`p zg7z0Wn%a?SPecDQDW<9C><%Z)okOY5~qH1U;2fm@bx>@?OCLSw-nD zsY~YL!yY6GB-+QDXvbRKao+5nN4-2av}D0`u%gJw>yX^cH47Yr-^TW)S{+Gtj(gaV zYj4_jZam!KNamTj1$LPKFitrSd1qlY<676Hw&y3*6b>DQK%sfwW?k^h<4)TS;|5Q+ z!S$|l9IvAlMl~UWt)82JZp#+)Abz``z|kicg^zQ0dM@w6(NT3iOMUKd7H{t5##+{S zlk@e-9$sd7`N)&XZExR#)^@HweWAs^OH%LMfaB32&!O$X;Zfr|yu4ta@u+j0vDz9# z{H=b+bAjqKqCn*l7MhM{ZT=n*gJJaEOOzQoib>a%a0(d1msdoi1R%kepB1>Ol3Pg{ z-q77`e;|@4w(Oxg_c8ONjm%UdV{N2&;E#z>QU;ca`GI=+fZb>)j53~XMB|+5L8Ac; z;Ku19atYPfroY)-9W{pSSuXy;Ct8%1*WE<)74c$=(0GW6sP6AMCh|U#lKwA$729Bh z+wUx0XFuEz2J0F9`EumsPwU;yqjB@LBwlP~%-lXIBG^>9!&^EUa?3tQqDFk%xqZDX zsquIsQkXt+GtG>N>8<$*dim1e{0d6l`8e&&wvUbHASdq5W!#@U+9#2pstJ;Pu}ZIrAJtm~eci9Z}w^V`iTG~<;*{wi6qb9c^_F>h!a zhMlt-7Z$h$`Sp+9IXuxOF0+oU+l#ay_ps3iiJ!+W-H%DSg+_gULw~4dPE3QF7 z&@)?Da>C2{rcmD92t(FnbfKRi1?|RG`=uHZv0r@fRn*d731)LLdE3eYv5P+Y?4<`w z5I*DveyUYUIk3Ip%Xon?zZ38mjvnT;!-~zav~x6`W$}ImeS-A+K3#N#hVqb)@wd}f z8K)rvU6-4311}4|H{wjUPWl9=*egrGi1s|PV&NhHg z&H7-h>}BTqH5)U2|K$y{*~8`2+T>-VqLkm@S_h-@?CCyt=UOmwv#CAkA#u10C(`0A zE030ivqQh#`0?p^Au=2jacogFGM~xqdwH|sateRl8<4oEDwS&yR^MLW9^};xordJz zgwoft`F8i~h|Cq#HU1dBx?(XhqV|{syy}@=a9_T^;;0#u`i-18=AHk$)nwMWm0N38 z*VP6~jbat|y?$nh_jITXMD4PRr`OooQ&XE3)GxPlJaBAmX&UZcelZ~RK$rx4d46?4 zQ)}9}dGJ80FRY>`$C4>4ykLGj_WVgUx4i38^ebeT@E)}Pqy;i$XHE@ud7srg>U8&3 zXK^lp>b+az+dkvzL_7{=+yg=+hdMXs$PwiJ^%{Fu`awb}FO3Q|Iy}2#tung%sh%%FYVi)*pe687C%Kc zuXh1=`081XqrZ3iaz{ql!s<;)w=$gvtC-uoz2>DvEa^^foI5vz@AS>iM~C_KhM7w_ z2{Cjm`0`Kh=K;uNT4ekk;)oyV(%aN^A39rzOq||iw&{qZ_piG0>(&pxA#WE8lq(o9 z_)=mx{&)&p@b{iu%;L-TQhk!b-_%-bdizpKGM+loI9FZXE?DvTa-Qkg{z@lPE!q7r z%(=z;`@keC>tdJxuhcegiY**2jd363?d$V65pw5cS6{z=5BIQ+b=03pS8whotbkH) z)-H1q0eA4%&f{Fo%}+dKFY;#e4-WGzjRA|Ntg^O_32ym*d^O(md+Zp90$>riC`Y@m7NkUUp}5T_zD*f#nQ&yv(Y?jg=Z-*<+i}m#k0e_#aR37m%T4+bTrS| zw4k9waC5msu0X>7S3V|UKF}o-dh=wMbgrKrie-@Nw|BH}J;Vt+(jGj`pQFbM#NnsK zQSAYNLz!k>tD_5uJhNtv@U&lPLH_+S3gd8io~{U{k?(FH-o%?D8d^yamqPW;yaGYe zG{G{UZKwx;y3(8R-AMPQ25)^dr%9#jj+Y-Hi+lY7{8v)Ireq*&y(G-yGnt$+lZ8@( zTH?8Ss$>~E7q?0u>dgNTH)3J}GsnMkjwUKt=!del+G12g1}{F@?_7N&B7w%zy{-Gf zY8%s9VAiLy9e`MDcR-1;6o2dZ%owg~^Tx^X2qa2hiU-cQW^hA^LL~WKPi{Ld&lfLb zL0!caW?|Y}+}lb?(~ey+eq%`$rYt zZ?sT<|MaCgKZG;m;N{V8XVpQ9xM}GzU-5D%PaRd-{uA9GpAEP?qfs1a6YmV}>GfA! zL_VOtpar_$+@=jT*)8Uoxq1abp~KoglkndJxD;;V)1GWh$eDIYY|a)2!M5(d7ek!53zD&+BvI;tN^aIjktQ_xp2|~Yu2*H2oG*EVnYjXdg36aO7 zD-zGOT&-Mvxa?QLoS9}TB65Z7@uH&_o-zG|26{p0)QnqgEUsUFhEb0U`vta@ns8#T z7rD1-ocbaBqgix_l>AvHU+ehGM+h9wb+wHb7d}LHq%!`QVflkd7S$1pg|XpHGN}p+ z?UwUbljzB9ZEPfu7nn_Y_UyK~Ke1sw4zoIz@Q%ZeerkDLf#X%&owh-q=)MV%80I?f zVviW7nMTA(xLxoWVy?v-pM`(9U2L2C@l5!sWVIsxh{R5Ppj5NmEUUncz*lQV?in76 z#ss`pSU6O)@mYgnC$wtT?*7WW5EGH;^LQPeS{T^B97g;f zv;Co|*3e{J1bM4VkRq2@APL{?#S{;`ie7mf6~4bI3?37%U3L%bfZy7y17{5MW-=%= zrRNJSN<1UskxtkK4MvmAlv&`C`0;0}r-OvjJVRGgag0mH7EO~R!^>Yy+hp#sWDFvh zsFaKgniRMuCcrduLdxw5jQ)bT`VcL?ERFXKfHK%H{=c^(I=utVG^cnxPG_o|2{14<1_Nas|N7#Z>~0tOgqIl zpTJ?HHd9sG(p{(&H+z!2w%I4RJ2}pKG22InGoq89CADuYwN3m^5gC$?iEo&FGOb^G z(-?fE()oBxnmL@+%VHV(Mjk&{|lhR z>I8St5clH_xwy|&8uF^^jz8$Ks0pf0 z-{ntazV>l09+h6VWac4{k+W0(0-1AP*OzFXTQc#mK|qAh0A|F5b#>AEKhbM~nM~Qx zm%Sa&nf-^-%Ydn&Acfe0B0sxm?mj5)5YLg@6K89UvR2M<{By}KRjxiKI=A|$0c`L` zzWCsdnyp$tr7i!^@wP~;&wEMnMxCNSkXcArcrHu5#l5+=7c=T~$#n37&~B!NduqRR?j6O>Jsw zx7$S|w)dS^&M)RA3Zz=bd;Jm30jIIvT{n>P+4AZw74_h|C-GY2dxk(JV@e@;k*C3D zw0yLW{y`7J+^~7Ml+yha)7>4=PnPuOG1o-hQIBhnqw>flLiW;MPuQ&E{;n^g`dkWhSa3rF}+o0iAh$W zSrP>3{m&la)3%H5jO7uG!0cHiOF3g{tZBpXA5^7jPXj2DB2=L^D*IMeLwnFxmV}?{ z5$+@D)XjO%_{!shtkgW+W#gO79!I;LutM?8vB{{5HlrO6?7zv&Wn4%f=ll`5BC9(;_<%$G6gY{M3#=0hd>TCWF7*2nC| z=i2;fClkqQmru))>s=fB&SqMA4qbZe(b$1fPafMqYFm#-{w%6*hdgmf#hs;|1FK~Q z8nv{tEoXv0t6j#&gG(N4mVWc>^K%Za+S!2fy?AG{pw;azWW1f!BVijt-RGt@XmnvE z0P5GG;I`)cxZ4#PH1uE=(7%FA?dsJx%eU0aQunu=?5h?AzI5X6XnATBc>DVt4c|1s z!PzpWHZ9q>zMSud4j;*{8!8LFGh}nlCifaY}mji&osYWds16O{4osesl5E|1!nNuKeD3;@{LhDjcVfPp`M))O?w03L1jX-O#fv3r zya~EWh8+nlS)=Z<90~tEnyF&g6{?RpLG6?A;#}TyV%=Wa1$_UcE9QTAFP|{9ZGGeOTqOt8F#c2Vu^^M z5W=0~`F$xXe3(o}hXK<1rIhQX8Jqj3^je_YG&i9D`-_2$yREP5sM*7w%5s5;%cFPj z6Be!V7d+kthpOA=1)VbAVS4*``;BcQd%IRw=NWa0-XVH_hwIbqk@W&3Zmo$g& zcHX(Uv(DF}Qa5HI)sn1S&0QXjy5GVl%^ir=3{w^-p!#3R3i5M{OSV6odhLH~Tv(2oA@{s-dx=s) zKP0|&meoW7-C9j_AO`{ieys`_<=F9U2~g? zq}?jC60CIRR|lcU%|c{O?vInC$2HoM)#C>mr<$$yn_JTTX=&cgdniX@&@nr*JNQCz z#JNVK)qQYg3qvW;jdx{X?e>tecQll*deG)qB$4;rdg`~up(RnG-ZzUxtS>=%g(C2XLEhTU2PkrloX@?nJbC5fKsX&v{>EDee)y;}MM&2jy$$r~32LATRT;``U)Qy^dQ)CIc3L zIKnibXv*98_00Vycb5h7o z@SCGL!<)}zv&Pz+75ZsO{;~{0qBkS#YqmaBPFL7?nc4vO;=euk$pu#1iELRcZ5COa zy$sC+-_@M*G{-CGD#~hkZ*~AAyb5CS?Hdh@`O26Lr#{cJ1NQpiQyM$BY68BKH`WeA zj}NE?_iIV>k}ar#Q5VFj#F4r2&Np%txpGB1m}o&;PJe;9b4bC#0i4BGl)ans!urC- zd7Z4>nI0%P;S3SE=ZFBGhn&MU#cDErN7Z&>=MJyN@7b1Mh6;B7r!HCt=WF8gnK#c- zQ|eF|tf|@NjQYgcJZ@`nS7azo*0SoxsBzuk8f*SbvnAuzhd+&NT^hWbTejVqPtMiA zIIYXsx?P$D%+YFSxr0~;9|3BN(J#mypw0Dtmkuh+{aELY$nuxEi65Ty=FC)a6DLmI zWr76d!kWtlwZ^(nH)EfKqIt7$d7H058e~bo}2Y=^AD?YwmAnq{n*?8K034 zvbU1)JLse|h{|sy@$pkd!i?f5KTKx&3f0nigc$v-}_j zeC$q|>+}x2pqcTE_Fy{fpkG=V(_w6jcdHKmxTnRKZbDS=#4A{tJ@7GaEA*xbwfXtOx-alTfxn*b?7YJFw+Eb zc~cWVyyM+{8g@Ln#8KPG)ubJ;EUQG*YlzlpQDhqY$=9Pn&jYtQ&w&zF5HqMe6P)v$KJ2pY(wc@ zU00Nw>MEs!RHq>b$a|hSJ~vHH+(WL$I7%a28Sw)0Buu@Jz~q1A87a4K7ZwSasRO_ zt2{oBmn4LtYVK{!l1|fKRoizv#5=`5vsJ0Ht8I!VDw$urC4(_w^Sg~j$M23FAqtA2 zEsqS9tts!Gb0B+(V&oP2&bP^VNfpQ~7}PP!~V zKVpSwQe9HYBnK}9EAG#xIjO(vsr%^MW@aa6(<0+$9qYEObi&H^Mm4oHpxv}sxF=TR zltn6*Z6%k(E8Y(JTLT)oK20~?;3`EQ!bUeLUchG@1w}VHD96cUC_TekoMz*nT>vRX zH+vz%hA$;V^jqaHW?Oy1Fm|o>PsV*ws>9jf2^m5}n^X}M0VboYuAEXsrIk5ynO-C4 zl(!9$1Vgd^WS&xOvW^DgbX54DeVjAyoDWNTZZbzQ z5qjLy1Ya+LVM4pJQj}*I=z6=syU^CAlloerEv2J(q~i{8b6reXYud31t#V)P3>xrD zZ*FO&FBJ@F${h&NA)Sv;Bhp>?BanayF$Z0(6ifHFWAUOzqgo1j_(E*rRpUQZRz~yk zWXCrL`}HZ(ifTTo+gB{CB&SD^Wv?clCcvV`@6{m4?)lzdvROjDXRKd zfhAKxkY8a^(B*Ug^78OC3Pz%0x04fqM(_>g_~WL?{-tB%A_a+59I1-Ri5+KJ@-o9W zKElvSgm?HEz1MdoJx-FALbG|=Yq65S%8|tlt~ZRo%+L!h2F498h;j=vjX+JTM-oja4y9$4lszhz&j(x<0R?vMeoS!WF8_dPv)#JC* zSte>N0gsW>9xvEiMsQKJWYIB`j@(aHpI^SmsZfYUvkYHz>A4zvF~Iu&$a=@{NZY1s zbi#@4Ol(YyiPaO^wkF2JcG5{Ewr$(CCbn%`yYF{@&-32j-aqXkr1Qgk zv|LJGapp01r+xbZti2!V#NN*0ig-QkqSiAAN=q3K636Cwd9!DQ6DAQG&|1zI6Qn|5 zbCNg9Qnw$FsEGIr;Sh;Fc0`b5qhJD1vA!m&Bpc@|{vi@Dc)jwypFp!#YB@|>KvPte z6Qe_V*|Jwl+d%5m$h0vy<2U;*Xa0y_K56oNW_7Bl*gfi)%9=Q)gf7*Zw)PTLdyg;v z&yoKp+(UAHkA?dChDaAX+9Cv~?Mw_XR^aLt_=jUhYSO(fA%dr}X=5ez2}({S8RsxR zor3^!LbMP?g~0>!h~eRuJCl(32+@8hp_T2lBU+}4vh8CM9~orl4#8bqr=NWax2n!2 z#-CgcuVZt=G6x3}JgS_I!{5Q6#x^hrgSID=`--A)&n|@T7|_fRK{gt~KUI)%tAA* z&==F@{SU^&+ZR|-M1(gZQ-rrYAyGemtQ1v-4BRpLY`Gm@1eZ0nJFWW*8I-hA+Q;ze}cy;@>8plrb!8>(2|Ji zJwl8?8f*U7Ufi>m8S_D?x`!)Meh%2lnm~~^Y3(@NRR=G8eIsQL4 z%-zxT?oJ49w5%Uw+Vr~21XvvwN1Dl)}GC?N%R zOo@K280g^Vwfk?&_=(}{yM10DX|MF32LrQk;1{Pz<@g`#Ht09Tv@xsOYc`vSdTnd( zU9|?L+$o6~RL6=d`>APahxK(qtit>Cgv^FIb&j6>57Q($c>c;(SXDboV74)0;0DUf zc##=#G}l#ygAX5suT&xBwv`%;Skeo0q`-a1RE;WZ-sVq|C?bMey^jMT^L&ikeQCZ> zD_glAYpdHI9emyo*CLtxT>D3R(bvYpF!vS5ACrfxEo}vkVvwAsdAP!h@<@_F<|{bU zKNIAUiz&6vHhA_YT=Z(Z?1r}ktfS#5vhjv#la(V}1|vlMRIk;yw>rPo$R~zZj&!u? zDMnoC;4pSJOWytDcs)$F|BUFbW{xcr+=w^Xxo&TH683*u49nKUDW?XMd2atJ*m=8r zGDlVst3c#Z(1klb%6nQgby3yK?$CBJz`=sYAq!z9M-CmDFy^!aWBdhD@dmYpAxr}= zK0VNMIvXTBDmSoi(Rbi7dE7wVo(t6?>+Md#C;{Sn?dA`@Q)IkZqMtgQdQ{t>Tyjf{ zK1x38td8HfkKVXT+Qc<^rg@MF-_3Nd&!U%(^vnDuxD_#5V8m8zr*zr%6QR%WSYBFL z-|sOaLa{Ju<`ZTbgfJim#+s{zRdqc9eO@m=A}WL?+}DYz^Az?r-ud|7j!>hB)_3nf zl02#qD{Hyp6F*kTG-TE{PJnrn%t_jV+bJ)fiM?=*OnYLcQlCjObvUZ&iN^t%6;@zh-YS=`XIK3MKMAzF8MW zh1^*?bo-|C;+SqAd4N-oULc4dFYxx|LL58VH&hDVPW#Qgl_ziiim9)Xzh_wYSe^k;W<<`Of9#CmbsV46*1^rrpc2*qK19 zSetH)%JW$r)p%v4>$6utW7xqC!4&@|u;}p*%!F3$PyVN?cscKTD&CJR=C2`Nr5gw5 z`oKs6BM~aX$uIIv*C~E?;S#Q&{`Bq%XhLAjjzaWuHd{>&LlR6{gGRm}&hEdB)B9zjM+38!T930NgjPQCYlO2)aVcua zNc|Z5FFvX&yoFobiQj_{$FN#ruLv$KFnuc>v?>5$)aWq1fCO<}I?;#KwX)tcjN4Wv zqDg7cK0&2!*6cWTptdB`7!$ss@#6>I;Mdo{);O*NR!=2qC|Jw^39z^6m09-Oa1?U1 zozNdRxm?qgNuD>$N`D@L-){9jgIzW|g=bUO8@J_ru4#~=Axt^LkOjPZXXP?$9e)p- z^IlW$x~?ADpV}QWOnv5Os1?4g7ZME&c|@!8lDd0TIJDV0Zx9O`TiPaFPcmRLZeE?+ z3LGA1eS(X!Cq|~To|g*E6?bP*@airZ5+^zIl#Aj^DXO42C_1pDQciP>XvA)bI$oxN zNrg#oFlm5CJH}i+zsjHDr0>wdtz$d?GHd#X`9B2`)Eo-%dpCzx(<7En8un8Y3g%~M zkAzs6@j{jebI~v!|8yahoroxxET+{glZWo_ffV+_zqKS}#y1osM?dLa=pc~weh7RY zih?y5-fWRuR}aPUeY-? zy+MhZ2CCn~rTO!zrZxR@p`<1yDtfx`ZH5+r2-;RKT@}8<7A(>GXtqi|6fhwr2U7}@ zm3(rQ+~?eUQ*#aDJjmLET02;cauDtR>iY-vmJp@E8|=Rq_!G@lCe8*=(eBp821~co zz1M=9fMGWc1TjGPYSv63?ZM!OfqJogNlgzf)*~ZJ2NbX5Tr<5Rt&ab=Nyo zTp#+J#ULkLBBvA<<7Re=kZ-;6fi2qk?;g;8(E2NtRn|8a{+f46_4HI?C*8N@o}Z)WwdnM z`o!b6(TJ}xQLWnw7h43!SzBc+tt^`;BEps!7-ROyJK8yPGnw@M{=@#AIgqsN1S?|o zH{H>mXyY~DjoDafcu16X;XBajT#rAb8uPd`hLF{sLs5G z7gxx7*e*6CAhlzgh6FlJnYHt^YeVSvqP`>Nlg zK}2^38Pp)}WDD&~h1Ttv5=uHLj2nm&#vGlefIF9SLqz8P>!;0pn}{!^Ni3~KP<)%m z8B2BkhlbcO{lkAp8a{8Uw=3}60s1qZpTE8#i_>4X^@J!-Y#b7kSn(qEXwPQV3GD|w z>Ra|d?ZsO-4A0N|uNezZ+UPcET|z!t4z`*yEt4*&gw?C83;_4rPIu_+ZGXy!g*FTE zQcpPTSTq>hdyPDFh&&MS>pN6Sb?^zDq%sv(qsZGMiyek9(JTH$OI!`U_Z)R_j^v;N z#8oj2q_He#ReRZHSt#4`lE)7|{TWzdA~A1a9N@8kB`|pko-FUWwn+w$>2a0*hEzjc zP}ke+WqCShzu+*i+gZeHt7CaEAJd3PR;MV3`rvXSopRp zJRSKN8tWP4H#k$CiGhg|K^y89?;x>^#waMA5xk^0uq_7ntbB$s0h< z5hsFoqjb3B!R64?`ll9Qli-H+e0{?yhQ`e613`&5aw7)4XGC43j0fhUkgI`a*1Y7V zgAT2GJI`F8FPuyVK2P{J>9ubi?61x&l9+QvVl(G9$E>Gf&G&OR&&Qv~iGXMd zqxL3|26jpWT5{FNtA4aJ4=Mg=C8;*u+T@Mu%&F;m%HQxXk_a&wyI!JgtAVsw%jiua zwd+V%eVFq?hSZdC~&Iym+!F*O5G^|e_?Isl659sKUOc* zW${I|(6JU-D?5Ee9J%gIgesn3c-cq%p9HP^8(~L)6h@skpzC9tv1*Bb!|ZSab~k`; z$5^_Ut~eKeKF2jLa;k z2&ztso{QRo>nS0lNhn<2Il;+wG6uLh^V4wV21lLx}7h^z+Vj5U55(f5y>i>kw5xMgC425y>Sby5(xUQMgxfF>SV@H8Peb$T5L!mEmd z$qE-Q#bp?{KV=P-ps!fk({LrwXBU&`8H@UHYT{$kW7eKWF7vr*jEl_P@MPZdwV=jy zU7O6&PLCs=2iQFx<(9el44Ug?zWpo~zGi#6$+MPX)v9h!ja7?ukxkAT9^z(N-ZX9R z5-V;ORN$cSYUE1UEJwxXN<{9>AZgbUT}$uSmg7F38)VB=Bvr<|H}2(DRWI8sH1YNx z*@&YG73N8+18og>I!G6#`7t0b zuJqpwh9g<8qs{Ybs6EZ0i+zn5I&?=e{5a4y#})ilqJATkoa84#m`6 z2yxE-SIm-x{;C_~<#(=GPTOBqwxJVnHPUyKf({%fJ<&y7Pf+uA-K%C(&8`pr`vVD^ z2(b8~)O(Y3GkgI(zZxdVM5rcCAPovc3blACY%a1BeoC^x9?Iv|b6moc4Q`zpUi@DN z^-`us_{ux#0$;2GrCn&R3tQqiCdCY>o0xc_-4oM z%LG0W;kP=+cDasyQ73D(+i=U3XS9{Qb)p>zdmLp@-i8Kjn|5OcRo<^B<*=N%l;{py zE0C#TXf{pvy~UV;))a|QO1mEdlqN;V9Ma4u)W?(BJsyDa^Yt>hEtxTkk*`Lr`+cWJ zws9@3Q}Y*+r5AvUnUUTL6lz6d*@N?&#APN7Q(OnisU-T1c7vC9$6iAj@$ZS6o8Mz| zWehV|4yQJ+ruE)%v%V2szf#7iA^xgaiWdR8**U6G6h-XMh*t$~ML_3xP(~7a>m+j6 z;xOL^k@c@~D)d4f~a?9(w>70d*8{ge54qEtlzuEESV%FJ#Ba+(I%$iOOrZoY8#b~cRRZD5yFlOD@dKm{C zoo{?WrK=k^rLp5Lhp|B8ffYdJL`sM2z;c%-(jx0lYmoE)RCwZ|6t3@BRj1kY0YRHs z2t8v}jT7nM=%vW0x}q>&x5Ld^^$Z`WN~EcyhE9xCCzp%++l~)4^kL)~g)bVhaxv5mOH8a( zVSm)17i5>xS`lTl16?+4Aa$Tk_hoEa`CYiVAUkTAc&Or1vUKzpR7N;Y*WNszM>=Oh zK7ilJmGANZV%ZqY0DVqt*k~xWkuB1~qpsgf*XO6v%wA?W zUbk&dce;sm==Qbxm77bdPonsHI7{b9)E|DwK3tqs+;hH#1VZ}AI!H~Pm?TnYRD?4m z5)(+Mc5Zlr9UFV#M~M$zH8)W^&v4T$k{rPQrmtlf>ui7c4~KI1G=2Snvmr~Vk}t3L zk#&%WqiuO9QYaP0QL)TSta2VXd;g`p8m*oW?UbcO=%L_uP_Z!|EKEq$@((r z4vlC`HX7s0%i@#NZR0?M^|)+n(M8-6R&jqEdreAVHSXbaiH?MWYng45jFZy%H@C6f zLCg!E#Ts%3OkmFv7vI*&D_DXm@5`CdpDcb;@4CI^L(ryHB`CDRG9o5%JmVq1`$dbs ztja^qw2ZU~3xfNLZ8&!({MkD;RwNH{lJanxxOdsKzka^_rPo!cJC$S2Bvnk2&z6c! z2n~Nhak-Qo-C-_@W-MG|{KFDU7*eW}IE+z*QnEPDWinnj+1D++CH@cQ{UaTT4OTV| zDH?npS+=3N?C<>$Rn3!vB>nsU#P^LH#8EkDsZo(&nSy7L)=6n_Tpaky6;Hzi0NvZ6 z?tKfP8cNgqchSpD1UVC7FN3a>ewA8~VV>j*7W?C2c~(axcz`KNh{730M^X!0uxbj` z3sUTeUi%dZhhexSmS&||4zlGff1RR-ZlT8>h(ZH|stnk%+${bau{LyemiQKdTO`en ziwX^qUm2|qhsSvqf;_CqOPn|_cYXe6GsstxSe?Gl5%+GO%Xzl}#l*9|Z!*9L%XTVx z>HvYUh!`|Wz;HS)+;W|_8e{|e6%pK;wyJMO<1OQ6F2OQ-v^nT!DfL^7#4yZRxV2b( z-c!@eHXYy3Im@RuNXxil7eYH|xKH6g|>R)7D5LEx(Vo0SdWkDB`abf^NRj}No9pB78Q9Aa2e^_>F70@XRTEL&nFw|{L~Fi2#sP{(#Fi$3 z_5LCz8=M*ojt7MdjSPXdH@mPBnyn1et>xj8MhDqAuhffIW-R!YF)L;vB_oe)#i{S^ zUTfhH`)~b4GmM|M?4WfYG>%~kgU%Sj!is$4i3|xbn!5Isy7mUjDe!uO;~$1aEJPaV zv6xb%9~#B*+8$#NV$J6-*FD9{F>h;)zIf7|3N_U<94p0s#NhDLUf`^I?~dW<-MrR} zl`0S|(wX1Li`9sSqN{4qT1{-|_ixi%#MPX%M{Ad4S_KgY(KOJ=!Rqy#dTQHc^00&Z z{DP*%0Gmppx))6X7-va^ADO4HHc(aw%}ebQcn*yd_~fecd4-z#cp(y3s}SQW^LtUm zg9)_iM`0$V6;}BvO&1vW>jBFnT_ScT#a^_pJ%u2tM#I4;6!`n3d{PiRkTmAj`Civ= z{{LmUK^)ZVR)~k-6%={m4Tss++9Ej>d$Q>m6c~ljUDS{$LWie2=0!C+RTA(}gwj3IPyf zu<-o98aY`Ry52I=Y&TtF)#@ns>NWW1(t%g?g`}@&C`z9y?^3FlmFgXB`Y$JladBkM7esYlp2K_kQ9lUV+;pyFDw3I{xlL)35*=u2iA8=J zh10~AgQ3xqyQkZ+mn^Ldn7qQC@uys0lwBqZc*u%7-f-7-X2v91mR|SIRxj1N|NTz* z*Nq3r+$;IJ>eU5Sogip~876$8UX_aqPZG=i+>q4mkJBLlkaVsFqLv+Hd5or|y@jCF|98$N z6yVsv?^`9oc#cj`GV)&=yjoyagc|f{`^N9x{qc@|Q0AzA6kFCPwD`Ry-?%|WNp?Ug ztEDAptv(-vqzP70hzT61Fdy?C62kkm{}ti!0XK^vv+{QDU@w3Jw3%{$+^lGDC%6;vsm1M$n zTsOo1_Ko6}(^exhEAJLJR_!kXaYO$|U_h2vch8i7F;~a-xq#PX+2^V4u*~jn;p>Y) zU(VJktn|+Vm+>yQ33Icw`T0m684O{an1R_Izupc%9Q3e`wW7i{s^S0@2T7xiFIbG!YKdICV+$@OHT&SI#U^X9PrbKAz(X8%S~IPys?Rbaa}x^?6QpluZ>`x^W{t*!~z~ zD&@ugE{4=Pv8s2FwBTrwLOPDF?!%KEe8POB=u7-u4!E*mmxzWGHV=u@OA!w{B4wpm zeKqm5t!M<=>aeGhr{oxM&GG}O?_Z0oGQKIwi0+ZkEl1=0b=p0a1Fuh+Be%hVUszPL zA|SMT+5+1RAlNZJyQzpxHX*T+K6JTo*FcpN2t^1D_+C2AQA3yukXwm`!K*f(^I-p) z-S6Lf<9zxGUiuy-<$2Pr%+SK)FxYCR+NKlE<{^plYF{)=|#H3*< zK7ikZrX5rWOZR~1_3_F2+{1bhZ5+CM9#^?O&a=vm#D)f{Cw~3pMU|sNrz4X0bNag6&f*aYUEX|(?E&N5A`G1XU}#Vjlos_ynW43Z}Z!UJ8SWxRmrwpaI3@D_cFd#@@B{fdi!b8o%6oC^|3Manb zRa8h~7K&z|1Xy$0j_4>Vtewy(HW+-8LUyWt7V{$uy9K=b{uco zLYlwub&FaZzP`6qqqeiz5JZ!7%o;g^%=ST3RR zm==gJDg}$F1#E}uW{V@vw zHt(IJ*`{>3kDToI^XloJvhN|3_&Eou3$HGiSXNwLWOe0gFf6b%PngTp8O zgDOh;kFM1*jWIAfEJt4YWXv!Wwa>$-^P|kCSJ?RS&bK1tyNy4iC9aTCljoP7xKYqT zndKUb(+`nYk^Ys1aOP{X*4jTAs5U%m|5q;bKmpj}lswF)nG|hcr*VM{VbsCh`ewc6 zW@C9OP>l~wTyE~8`{9mQ*rJjZjPQlz6UO&*G;=86P8`7+xc%M4kfp@^^yb6agf*+< z*xDUGc8_*axBtwHFKBo1-gY9fbIQ!l$3SwQhW176wDF@eHp1&VxU5!wEl%s@{By;U zSCj}M6Z1iAi-TRi`?B4`y$k(jX51>YiE-jsXCt?m>wRU}ZRpIy~!;;7EED$L# z>ap5C5-mT}8``gEs=lXYFGygqV<-JBBBykHPX^K-zx{fDM7XngsHC@a*>q&WyW*e!8nuNi=anXaQ?rf#WAfeEq6}=2&w(p9B4DBh<-8X_o8)boc-cd{44gfN`;5W#Rz>>}EEloo#QC@x5XHghZ2E)$b@O)WtiV<`FQZtAlny7`~d zKD{f}hb&dy+6ki)Tk?vDzy{+d9^Xp|Fsf%YtmgB>88Ph_nwZ{I%6xO^c{>SSzNg?4 zEc-j?s~Qvd=$!0djG7i~fHFwJ1m`D&iHjj1iXv3GefBsNqh90X+Hcjmb#i*B-X{9p zsODC&`Byu>pw~0?s`$0mUb*!P4a{jk5GgxhWIs=~;E3NAVSXBBdkAOy5ZRz|ce_Fv0`?6*lRU}KkW z==_zo6~E*Y@ha+@~Z9|I?>N>>W6RNLD_9R>Y)&#Jmu$l%Yw?dYBh z4!4He!?VBK z6{E+NQauOWuex|!5Ls%Dvaqn#rao$$lUf++rzl89IOvy^rWEHEb{gl8znBh~TZYF+ z&RYc)u*>7skHLOY&cLoymt5pey*OdeB!s5LPuv`kYx~N>s?e9H6spfMdE5sd-*OT{ zS#D9d0|5eVoOZhnaFi#p6i{K3wOBHiHVYv8qD7EsqQ>KraJR#2XJI%g+8`3a!tfi4 zu*~E@D=I`|jLt~#$nhC1t-nO}#(Ex}Omb$|?gXf<+YTpC&J6)$L#+Sasu_1ccjF+T z%Q$?BsZLs@#m2r7rMPFG*f87(zRoXHuCo*0@jH6!1AiTW?V>~ba}MjxodV!Y$iH{D z`3Y>-wZDH((*FFwpD{ch6BFZ1@E=j1*A*`Qa1;rXK!UE}ZLSb1g!VuDicm?MFsb_ z(uTHEPTHLLta*(2E$BsB@pa`;oun(t)l%w^KvG_IS2UcW>aKKk0CmB>06#}ctT@{b(^WdO?!;uzLQZjE=ijELc)-sL(H9c5rSItVf`yq#*dFC zZLimFBOlty&f%$OqkquLfNR`JJHIqHdc8UCEB;44`#(~`sF270t6FBA*=L%yuyZTF z_~td7lJG$B36$GE$V%d=F+u|i$9$z@T%5D)b*3_D#58HSt+H?`19%m5iYhURxz=c7 z95og!C8wiIBtXH*eRgzOVp?KM1@H|Kp=-(b&H0JF_&qXI`w=BBH|!3wWm9KJc$$yA6L{fhp1R}xa7lN9fTx$p}qtxMFI_?4v z%&Nt8I!A+?23XpI`JGYoUp>xz-a=8pZx_wj%+&IqdpG66KN0MMi?!&XI6F2yKT{Wd z9;|OZy|c9 zL+G(^YMZyKhyjh!YqHL!xpcVq4>X&8Dg$U z6O4A3Y@Dn&rp#LmShZ}qx9m(z_`BRD4wT-zRmUACkL3#omcl6~prATL)HhUfm^(hO z6(}O%1Tevz$byaS>GM+?i5J7xkgJ)9To<1HLF|Eq1<@JqTLhF`6!pygl5{Rt`{H$S z52^7enx#S$`fQ}Ce&v#~lA2V+Sc#Ce7BsdI>Z2d6CssepX?ur?)L)ZZSvcAj?SBqD2d=|LUV{x54CXRVkji6e)Z@@k!pDKvLn)&Irn{fQoYlM^}- z1g0Lr+L+*(Nq3kF=k*24Eu+r9L)b}z|E`ji%+b;e-(aN27~Um{^W$QI$eiDxniq^fSo~j5LO^pS4$9i(X49HkvP37Y=l{ z>|QuV&3o5L-A_F}WnD?b&&M2R;W7hMAQVnIG_REv;32`*Fu=#SnTX$cqmz)-+_)|t z#gyyD@3xs3zpl?csWHkT`_ zV~Rm=E2cLNVU>IXl8S?xdh~41mm5eIS*4f6O<6&|9$rK0q)S`+DU-Gg(N~ty42^&P z?$&onnopxk-0UjMXyPANbDi~+R0o%-z~%-LCrTtGX-ikNAo#77qs-52ZsP|V1Rj~% z10Tu60Th2r6;%A^Ao{^$F@8nNm%%e+bs0V0#mC7B7(7f<-}G{I9AuZ?^+M+-wGk8N~>oz-D3y69{LBApP)&V`WQLLrZ9Q8IU|-+Ro=O zbg1X~&u404-k-ANxc!IZ1qL_}IaC66*~bPrt+&d1FOiE4@gm>SEh+*&DA+#R9=E8U zfISKOQ<%H}MXm$24eew*dYx*B_i27ACH-5R=KiyQ_vEvHkKbg(8eSp`Gr+%JMl6(; z?G!MYfgr=0boNmh9hX=yOS7SNe=_GLwmfSs~;->g>@gkeO zpMzaK?Ryt)NXEfl>-+OJhe=m74GS|!8c=4%1@_U}6p;-Ty*02UZDK63qHa_ix6D9{?~ zAJ7k)g4A}eU2jmAnS6(y&s?UWDu!;~X)e-|gwNbkLZOzQRR1*?G`rd&*cOxK(33D! z(NbC~5rK>7zaIHcPjckk$?U~z&?mKfx%8-Qc5aO^cJA(+`4q**RS0jk4l~f`iAN7)VL<31BfCIZi!7R-{KyV&dQ5OIH zR>0R`JHRUKD-rL(Nt+sd5xl>0+FjWig-}=>ZVxg0Mb1^RVG<#UC_6$wZF7v)@7eFu z&t`_0%iJp>hF3Gfr|J|$Z>y9wn)KDGVY@&eY7d&Sf3RRNcq$YLnjt{OGfXLfV_H`y zua0Y_{%@oDDlr%8oEO*b`}fSZq0c`7a{K_py{#$l!M$sm&3D_+l!u$x(6J#9LaL3` zh{JS^<%l}40MFokJ0&gfiH5RJ$K}>=)0UpG&T_mHO=gc%LmR7F@hSo=q829)4po0Z zsFP2uU*!<}bP1i?B_Mo%?aCgZ)BPO7W?O_O6=ug%Oqr=vYk%Fboa}mzAJKcGiOcf< zHA-gEdL4o3#b0EAKp$CBunA3GD#h5p{~wMq_3ygWmQOv)s1!{9me@iLa4wITc>zXv zQq%%{_Bh>aYVzsr_7Y^JP1%GyQGhROqgBfMi1!p$|0>2i%0WDx-he`eF1}M$p>nP_ zTNy)%LZSH6ME*c*7K>j0f{Bqvmm#iqjhe6wxcz_?FcM0i>B_#AigF5uwOi;pttd4) zGBLjM0Z}KrurKN{@KwW7OPaLrM>ZaUXSVF}rIcjg7UlbGm2UO>9&=uYPPxqZ9u_Z$SA;PPRnSiaMYL94b6y214>A!eKW~0Zt7x3m3Acm+jGubu zsk&NIP~d+_2tM!M?Nq@@GgDsz1tZuCCA;H_+2|CF6$?)sNHJ5L#_snck{B6XJ)HYW zM~dAsDkPGCJ={N||wF zJ#O$w=q@ZCUFr64Qg3#BYz9GZ2g=yuA$?XC`9$H~{I?Z~LfAQZ8RLNGG{?!0<3|K! z1%hXdOdiF zO`_RERHWvKHo9^c>PAK)JGk5`E75+X_V3@PbJ|vEjH~WZx@jt*0N?`*MT^rjLMf0` z?1=(W43{tN>;xx)P(hMCq;sgas`RReW@Aus7U4p@U)Rxc=zbnhJfYAVnxn|6q)xiM zPDnLg5U_$av7ax3>!!Ml-R#5m0HPi7j2=FLsVL=uGa!|b$!(T3=t2rY5H$``*?mV3 zkSvBq4M#c6;mkA3$*5|1+kxWTY!~*oo+&T)pSSYU)>bf+M@;^y9JE9`?+UL%G#OTd zQwE_RltgzhrCaUoA*x;x-8h_~NGf{O+b`(By1)PV-bAmfXLolzghIRF^^C}==Y44< z0}XoJLv4#2&mdg;q1UXBAx%sjTJEdM3WvdRU8+$iL*0xbc!{KHU;cxM1nGP=$b>a* zun!`?H=JA1fCfDNNzc&;HRzsLM&EFck3wRKZ{a1hM+Ii*+U)jV_^ zQe;Jtg%%Q?J4|t%JIK_D^R?_8|9n9uHx`0f@$-##O-Xj^M!5)65q3yEm9NXwO!%aJh)& zSbwZiqqa;Bce6EUSK)~Uh+F$53$f>sJkOBz#AW4Xf#&kFNe0pFl!aF0mq-5wh z+@B%3b^b0KtbL3ykAY69!%>udjwuBM2;oF6yUQKxKp&%(s$Ti zI##B1Y{8Xx$ygjtae6Pv`NJ)Dk0Fnx2VLI( z?E>q&T(Lf(Rm_B;AC<|0zKB&kkSh)^#Fd7%)y98MTJ@)80sSKVg}~O$2Lz6L{X)`~ zh)X-G;^E>F>@V70*e z;nKBrrbbk!QIU<&*zYlcM?By?vLEpE?PK%fdq~p<#cUr$;j72om{h*I`jaHDuJtP4 zFQG?nLqX9ZKO`+59vQ&tXQd zl{0-+qcqZ$;2I9AFzVO@%gfHmRiE3#@k+hC%Z%d&GQziY#*$l--W!!;HNI4ynQ}50 zyv6e6g=!98>iB`woT~Uv79HffG{1MeDxSxnk!e_IXplQ}s3MjWLud2Q+XeRU0KB3` zoYfbXT1tyagm<`7qk<@xdYnN)j~K*n8hPAmtcDHNIl=4tdkEs0*=~69qNt_94PZ_F zaQPCw7HnE6)*)CzN|Z8>)4S-MpPQd9-#VPr#$J(|AAR1wV!2#GK~|s20N~&3mhB~Z`06%B$Cx`VbS~g)=;r4sW5?^`zC3iPG21#y*3~?ZKWa}nATKt6#A9T zJlC)38-O$8dNgWt`)K}@DUBq+Zg=SN<_>hk8NhQntw@(DCSu9s{_q}OrT3*8Z-j1x z&o9v@flii)!OWwdG;YN5yrhGe>FeA*v{n_@=NX8-^6u^b+REa4w^cB`N)ngt42BzD zJ+qCa{QH`?Pegsvf=MoYtIAc{YeEzA83nxnNm7!_H>@<2rr|-Kk5<-GapxWfcN$VK zR+^NVkK6d+Bg&4I|Apv->SYXy7Aqxg1oHIj36mi34Jg_BrJUH1nBB@*H9DV}sW7lO z4@){qX8r1}M}(np(C{c`<`QqQpFlCVH4JD1RT0cm`LA4o_u>ov%S-G4AgD4zd@zHF zd{)R%gq9SDZZ*fFEl>n1NWFD5Ww*E%jD;<3w)bRxK1aEoN3NcoPpuF*S4n? zW^m^`B78|&wBsM^AV9BZuzyNTOMCwdqSLGrN07n1Qlix8090Ij$`rOii{?02veS4W zYvoU*XC_iNahf-p8Tk9n*sty0m|zi!8AsKMDSM~ z!`zAz*eGqG3a~jx5gCP|>Ha(dxJbL-E49SsgI6<4M5N~^vb#CWc{T`r-N)}k-@5Mc zW_OYBBL?EItr!?e7{nw0dVR~6+69tJvI98tdBeb@*%#;=V%LrU)Te&?FBp?p<3xO9 zPD-t7G3&|hb4Yp}&Oto3?Y*W>BRif1IVW=#_LkL*kW?;Q#Rm-+(E0TQf8>wQ3Waec zE#GFUe#9C^%~8kM6W|-Hi-$t~u9o^r9i+KXj4_U02`h4SGG{OmzUeKVN}>Ci)}`-g zFWaRNBtnuPY06be6hITZL6`z>~YdQVFyCkC5^7Hv@ z7RRD7yMGX$Im`;q9D(uIw|{5CJNkEZdof;b>lR|hOVOkW!LAj3FOmu9c03cDViCw3 z705au_iv46@AK%U&DN2R9t2LKI?Wj;r5odwZ11!7Cy78ywLj0t&5URL|Iq??Tsqiy z?rl!`j10I9NGMlL*DBMpWpB6@>G7I+afjf!%nlIT0^Rab^M}1$ z;ldN$)-=BAHvXWAbhSy=LXg7JfN)1?me`WK%@2a4As zqR9=bDBCcfyiFzyg2rW!w;P*Lhzg> zaViN|#`YxSC$Xn8YkYo?6iKUC%Marew$Hx;X_JX1u4{r_{;A#nQzCe#Ib;9ks3bHF z7X9cS5>&M82_D^lhN23W`pprpTF|LqFkOMK&%G_(_9t!ePqX{JZ+h;%MT>fM6ZRI* zFKbP$3ur;vl(faFo4Uu%{hmH0kh$Cx&WqF9gl$82*su*kF1=249G~v{F6UC(IhhAK zXzjx>_?ZQ1;jb&jISNn|g~ys^`O5;WO$WOO7sF~mrI`Ba4zX=OwLA0Sh0h!2<4njL zxBLR%NT=p0Z73}5DrMCXIJ{xA0Ylpsd#-tjf=oH=1lNg?O70&{iq`aD!o~V>)$*w+ z6oEB`LC{8D;=(Fzj*>1JH^RM=Nypv^ws(g&8)FSe+Wt}A*Q+??f6S*it69Ck-h>qf{w z=uIeRX-cHd!tI=xh zpdg6?6C;GG9$NbVZVZkz84pfF9N^apaXe5b)Gsxen0eBKJcf$t&$sXg$VA&6tTF`h*QDnwC>#ue zieF%Hv5EiZ#Q#$XHp4pYA!-rn(i(;xR?X)`o1qQdI=Ak&S#PYeJY9Wv_U33kEz9a< zB$HUw{ve6twZx{gzJ7f*AD!^&A`ndF-0ZlX2?E)#Z~Q+@U1MV32+v!XXH}u`UK0sFxw)=F4K_Ylc{q1 zq8%YFkIHx102hE{(44_snuJsg%uOF3= zXeT;525b4d?o5va+kfEY|pslI#YTSZ_U@9l^Ch4bo11 z3D&=2>Uxctc8-Iz3b-BqBk&)GUaf( z4&1)ko1Yf<5X}~7#o3!IM-#$BYV2O;+;ae8`gb>e%sR1xi2W-$M%g!jp5~hpXlm;0S<2jEIJBMf+zxikW)>nlCn}2*ak)dxSS<0@WIHrhmC`oMtpG2z=v#e+RG?z>zd9vN! zncDt9-Ml3vXAgC=yGFp!F0rsCB5qRF4LA^lx%ja?R)Fr zwkixfK<%^m^W}TLf?BdGr_J~#e`4Hp&9qGnD!5A(EfQ7F`-QYaeRrHC68%_!#g5R~!EF5!O!z8b zB1ucF^=n9`NUfTQ$DxWh!|C;qdFft++c$a{0j_qWT)cD#DRu}8tt62s!En*uK@q8B z4X!1?3K$WtTIVpT`^BiL>m6;*Wx`g+EVbJG?t=y^;|Kgcn){#(k@+Uv*p+-pTi`hq zh(uB*6CL9((I=vvxU03?-*fsAbs$p724Oa#O_K;nG6scB>e2cQ27Nq|5Q+;3IUNq6 z{ma)iZx@jx9`2i-rG^Wo5z?Te;R`O()w+j^-5*NP-Op%%Lr|^HcHhbM+rASux_OPD z{`TwYB0*d4#l_mZ?i0Ieh+wFVq)sF+FqY7(bpYg z35S`ZyNn*!{*R8~O=Sm{$8<9kjVy-$Cg7q`Z%vPnI0!iLu_Ns>E-y)mi6~CPG;npQ znd8OB6Dd58H$lF&rUCV}SYKb3%4|y+*_P`|q*3jcHRFH6R&3vE2a_YkC^$A#*_j>FAMYcv(=4MrORC=+L>#^S`tzUfVd)VTCzf41v|r41vCoey{D%{_bKrL%)x~rT-&A(5-_HTb?j~`o+nBe)jr#udd)E_HX49SyK zj{cN!SB!@~z^D^0Xkr%yv$~W;vyQH`85elV2Keu$y1YlC3WSuAT{=x~4=B$g$B%9z zVjF53H5)B={v|7FZc7J;uOGK+cQh zJRa`5%|0J6ZIce?kAW8gkP&4rY-)>DJ&QG3ajz?n?g4i1`X0B zZA2?JWEjvrPaT|?1aBql#)N}AWi_}eB1DiApc;GbkDZQ=p`)YaMp~iUqndY%8u!5y zr`)jPH|K%ke?mYo>vsA?z3XugNQRGTNAY{+eL5Dqm$$g+vg(EpiRP^)4;XqG@bl>1 zpRnoKe+@!|8o2mMXguC(lhh&2I-^d{R){wJEr{#rzdN9-lER_^ro{@RF365-dC3v;0+rTpCG1J2He1Dmd!fYvWS5jdd3y4i}GhG*$It(W3g2*NA_&le&2 zq;M`OvHA}q06?qW(>tVSpk`G*nY!UO{w4?thAX30lsu}$)`f9yJ5X-ias6JpYjR5m z-~L#J-3%_?j77d`F}jJP_d=H~fy6Jjyj)7+D)n$q1HwzHI2SE3?XxObwhhB2^@F;o zr-62gv8rYbe!v{LOvnP%r9>St;{lsyl!h7Q2pLP3lA!$gBZ5Cm2Gf+es{5U_8gL!+ zDF%+Pa0oX1Syge!B=BHhx3U}u2bWP#n<$-8MUqcG6sXo;hm%#a<{t{zMeOqlKF}E) zLF}KciEEAHj{2OP398v?DN>4IQ9{COD#4yAdpaJW!Y3bJqiy|ivJU~6t(H$b!L2oc z2>U#5Gt!>W>DBFnztNR%`Fa>7j9)R}C||Dlf_`IH+>-9`!(Pq?eBLAt!-*+DlQy4e z+wFSEaDXG$>m*%1d1&}xwnb})=Tj|XN5E2Z6{FwA! z3fK``_yJv7E8aIHl2meJ<1!p~KBLNr9i?s^0=Zfo)Ij8K&{}k9qKU04f}p5M;$k30 zC5oG$&svs`Ltjhl7`_K&(T~Lch;fCJUMbZ}?5?+2lSol&B#ui;%5B4jD)@-;*I7%0 z1_(V7=Q@RT?Ug`sTSj8J+Tpkp-@*Bls`R{M;F0Zi)60TgC9`wi=COMiKu@%+k9EL6B6+wghLZ1SN5=CKXjst+IVoNXwN5B-kbXWFjdAbxI7& zXGUQPxm<1e40U?Raq#l;C&U`hX@+T<=Ho_gR%{x;bIIL^e!Kt7cc5z0fPwGh5TJQB&1140 zcfg)2WIu@<;-9-CP!}j0&eI8&-0Y%K_85J%C$`YWmTBO6LYm#PqsZuqf{^`gjb~#r|)HvO5Kbb}=j-}|X_>4>FW7~+lEG~6#vn5lA zBZ(p`@|}^-W*P0iE@E2lKiyJg&D`swpduoMlM7)ZP>pmvN5o(n^>qt4DuI|1ELYAE zL_wDRfAC|u07#$2;9m)0+LJ$lD`W+36A?-Vt+73y&yh|yDmFL9oj6rl1%#O7T2rB$ zN&Rc8^Dmyol`x_F<8&s`wLENuiGrS)pwedSPuKNog%^?_h_w>o)!TCNF#(pfjapOV zp>M(;8M}~m1Ivk9XLe}QAuP)%L0jVKDZ5CZS;PkknIbNc$C_)w_W6`ujy~D zVY`meGsE6{IX<(`12FYLr-(!F=<up`sq!Q`^XeT?tK*DYhZQh9)FkOz{fkoEkUSGSuxC?)el1}?%JHiJSi zhWJK_>UZ}i^gs9n>+xH18$rthbNJ(lEr&VFq-xulGbg@XqMoJ`2ZksYPn6oN048{{$gEadEL$jX z%#|V^S2#EV!W({2S$%Z&svTIVE7DCOhQDu z&Pi!!{7`aPDFlTkF}7Yj2RF8^Gv(S92R?3P;2o*&YRtf|WS#wMu(9l_L<_oSxUn89 zgM$3zu)lLyd&^52_h%#ijAl(+C5pNIh~+JgNbB1hZV@^8L{5&Q>o;P?Jx9M|FiIXA z;)h&1f08En1gt~wf-aW>ZW%OLS{Wt>fcE5kLREjgKuE*G%_NpCa&$Q)>}#=&hC%?Y zzAY!#GdI92Xd+%RjKY*vv_ZYDx%hree+QJa*)^r_qP5w%^wPJI0%25uze9)_|E|+W zP$`ixqOjJ&e{S=V6Z?lI`Mkd!!H7c#%&!GENkcdhA3~N6)4JzNl={f1WtHu4Bq+;A z0U35(m746_8TMZDwT<`gCgM{9Bn4o8Nm{nrNsxD`6}?hfzK6`Ltow^q%0|_YJaTz2 zN-D$f_E%M6|0^n+RYb!57B0J}pw2@r>(e8f@w!IQ#>x=)cI<5$wKl8ch}ueb%jC~_BVsMQ!0{sxcs-e^)-73~)%czNoaSpCKioflh!nBf zd_+6319~MAm#l4M+IE0Z5NM-hp`5o`ZoR!)zre>&Xon+-G521ZIT1cl-flz?orCj{12> z>P~9IrfuWT@|#3*>EU}nXZD{OQ}SK>M$S%v_@k*s1V=km6Opma!uBJG{|C|SvqWN| z{+x-T>|aYn;1tTMzPf8nRvx*W%)4_vzYvm_?CssNM&zP-9>wffMf6Nq^IRbe&;5&w z_-(%ru<2~xV$Y}uz4S{;C_@`}dAn_F0apVrc35gA9a)YOT+adXB!;7cFFs)$PlF)H+-nB9Z<&xJU<;;RT-T0?ii?D^4j)OTj4Q zhlf)w+jjT0`#qXv@_3JZM22d&x7x4ykuh;ONG-F4@U8ufEUb05JPb$I}7@=`aJMjFn{e9T%EyP{fQ z-wKf(!hSX2%iUt$F(9ALfrrKvRQrOO(AlbkJm znjUXbV|L zs4&7n5@AZk09w{srE`ndDuL(lNXzc_Nbd`?+xw~dv{8sGE#tal=Xo_@NxNT|aC<|5DdAhRs#~KLv;FZ4GE(g0gTi zu_=V28boWVIU^xmWL)P&GrN~GP8oROa%^FLCv8I>l`H{Hr$XZ?xDLzR`#VuFvv``$ zeLre_qsu3-zrd%co-!Wk$lld=R1AN6AK&+tvY1}h&H0}FW(dO&qg0gNw>{9F##-?* zm5V3S;eGg;foJ7-b`wII+dbk@pd$fI6TQ6srWIk;>9(bv&K>6Gx@biua{1cS6f&gi zs*OTTKobna&E1TRL2bl_c;OOWO3+aW=M*I&Qd;uf&|>q}-lpFp{mdt3`LUVzE&kW< z$KvN)m5;G2KV(%)D~3pLY8wwcnee}qnq4%koTj2I5NoOi40Jh}4$pj_Kg;{pzrFbp zLKf3~JM$_+SA1c#xX?>%oj9Y}oWm|1zkBc1b?GPzSz-o3*Y}99)|mmpM?6~}r(WJ) zy#NBfTrqu&qq}NmXD8Z?i7g7zkYSGY2=PAyWnuOfdPhZ0qwOAimF6U>m;nbmg(g za$gn{2nV2Cv~y}R!>>pE1ki>?p{g#=KyUU#_{JLd7vRz)n;=q451$n1*-F@PO>rGv z-z@9vKD&G3b%y$PDL%FFks0xmkZbd^cqL_UZ1Kw4#~R@?q!2<%G1N*^+s}jdi%v&C zeD|F1a2DSyV$Qagv`&>4xYkXZ&E;AjE>9C12diSQM4T(+wt#oXE;~~}4GbTr9Lz0p*D{{5+u1E&CC%Tnm&z@o5dey29OY_!uX5DL8dvu$iWIQKAtvaUcraF#V zzL=hu=r>>`??hwMjH)m~ovwLk6Oq2dT1tXyy~0p|UZT7ER*5XD*V=pbO4_6$79t$B z5$x68PT!lxPawjcx!?#Q*`UdyzW4Je9-SFIl8ok|AU5Q{m64`E%|N!*I<@rV*o|EMdVw zDV2}!cqmJan3;Yu{wWD2q$IX|qMXk?a{Bv|-u-S}?gXDNuY>(~4j>t<$zln%>vm+~ zZj?0cU0qyW#;K^&q|nGs*UXjNtx?6Ol$e6fGhUegBXt#Y`S|qz*b8f#sT01mylNZK zRqlrozO$7A)&dVQpd(-mC}Gzyf+Z-EMs`k54F@Ef#xo@>hD1(=EXuDufbhtQ?8~+l z5m+EcHE3Ny+AstCGS4e8uOSycCC5EiytQ`n z+Z$V%Hr}~88+v7)6G%08a4_H~Q*PyA%)7LeeCtM3V1rkP? zM0{&nL0(CALF59FQ~tLXKq`Eb%<#E=G1&l0OWomku%P&4Fu>~iGl=@SBg%$Kj`xM7 zyj^ea6RY{RCa%nuuPMKSL6ul8PxnQM1r=pC_ z{{8|d!xa8M-^g}US8u@LnQq(fh^)M3em|EXyQr2Ygj)#p}8(&`;;%Kt?-8;8p zZkXBAd7}MDrn7ek>#pj!P|(Tw&fXhuV!1* z=7w)26ab=JqFQ2F3nVpPg5gRC^!ZAPK0TFoi677TJ8{HAurVMhPouO?y2;Hs%re@w zmV0;U+^uG=h4#`19d!VQxj1>ubH2X0dD@yYu+9|lXYIX0hcFRfXs|F*P2!pM^KTw0 z{L`gHeaPR2V8o|%tSl{28)+9V%iI;t5L5}(EShLQTpVpVeh|H6pg5ipCGGUdQ|}ln zI4UY4k%7No;Yc%!%}+QcXgnmD=xIC+m7%a6J*b9XNB{oIdah>a)-tH~gsGx0QmCq~ zWg?f3s6n*)XzfmCijY6(msVn$(h|0%B+SvnAck-$e`VaF z!zx}0ZW2(nY;oV#U!x@xQ;ym2_zffGyxC+Gr@{=Ar+MB&X>}Sjm<*seVO&-c7sUu5 zCb>3q3M&t2i}o%X*;r^hG)L7T0Y9s_ZZ-fRQ zSSSWPP&15V>M4BQ!?O&xlOm;LpJ`7(CR(^qr#TEBNA{mI{)0A5Wp&sg6Fv3hv9&*2 znE}_i-n0QAq)n8V27Yr6vCI$&P+|#C@05&Id_-2gs#brb+0Iwi`SKSeJGJH6ux0r^ zf?hizv_0NsHnPUW;M4d#aRj^}>LXJ3gnq?Jj8!hF62HfD36rg0P2pwNrdE$6U{aDR zC#^aUnRc3DNMiS7K6)eeiy5^&M56leHB3gandK^3nVfi4U_rclIqM9CWG@;H)@*G|OywP0uMt1wG7nJQA2u`C2%~F(JfsvoUoLEWB?#)zGQl2nWct5i_ zu^_xT6IIEh5B9~#S1CthRW(|f9mu9q(x(DioM-(NltWV${NqT_uXT5P+k0s69@_N% z9l$$7U>i4+QZ}z0Lc2&aIzL-Es-|i-?B52BOaTtUR+qr~_n21qJDlpJI+`u44#W09 zES1DY3iQt&08*&;og50zw|QqeT^j-=ak=Fc$6q!qIgpudsJ^K5if)4%PMC0*!f_1` z%skyFL6M|g!1BoX+owM@xEbpG!uLhL@m7GJ0EoeB?l!u;QAmVu00yrAnXU;Ai8Gi$ zkicW?D4wld*zSnD-ZMDwMCQfZ_DX7sw%B57({BpnGyPg1rhcm67LTo?DCrTNtxPfo zWoc5s%8(^{LRM?C4ye$_(B4WIXw)eEv>{wcHGQpAy5m)>9w|ouHI%D7!xle*Jv~M= zcLf*+r6Pp#pC@^fuwJ!+?U#W!3NaQ#p42O;)K(mXg!jBQ`tlnKjm0|4XLoiEz*#B= zSA`hlP}JUx1>V6G&-%s=9NxESnDJ0VNj58Y= znHFnataJF_9u50Vefdl&?sZhR^A>exf#0@DwmbgjG+VWKx=wX=f5#5LdsU!Gz1?%P zHDa*vf}sVD3}t%gxi@Xy6wc{O9t$)ma8L6o-Im4k|wX{6d0-Fpu zzW8MeD%9>Pw*2}tHZWxG^iS8?q#(csf8T#RWg2mjx^y;q9^T5}OF==o%JY zF!8r2S(?;p|E8G#SL#vYwT8AXQ#X4-cS~*#eMw{d+PR!W0d1w`yY|nd>Lv1+e;)sh z_3@F!ITyh#y%h1z1%7%;K4eAv8cG8sNg&L?uU}HNxH5BB-G}dA2-#}Kv zSK?YwBv~jHl}QVa5dBRI`z3*M?jR;<Pnxoe#>eN8lYBu-tjhLR>H z%fKsx8&_=n9A7 zZO9`ryP+bzS{!gXR;#J;p2|<3s>@4PgzO;o{kx(br`(&#>~p1DbIB!jfp zhBF~D67E|@o{wk%Pg3#5YXZJP!p$H(-`?F|KnI`6wf>kfrvT`fyt?j`$K7mkMGkjN z2)#;$o|EUbRMqDw{3;r0ie{?b)T*_otZa1JB-w%@0LDzo%AKa9aDU#>WejF^&?<_T z@>HWWSOnTjVoIEL4|Ny+M|=4W>e>oe{CHf1t*yZiKVf~3Bu=#K;Rk3hq5FOr@KqP$ zi)BzM6ovVhH)>X!xO>fqZMGqcD~4ed8qDdzk|Nxe#*@J$`b7sQF*yymD_}tcjauW{ zsbb<>I#G&wa^V(Nsh0Wcnvr`VgXa-#)wFHEKb)*4 zrEk|7b%tk}e8yZeqD)n-Y?K)}7i}~*gMnHog2~TGr$c^|LS;zr$8M*TjM9?oM_zhB zR(4XeSZUid*sJ_9aa<;pDBT1dPveBKX2n)LMyH9q9qR=Wqne0MfT<9LR_F?=bRsL%#mK>+^mW`@mkCa#sttguyh91>MtX9>*@PiJy+!n0Z8#$~nURv^PQtxaJ9t2X%Um;^bB z+<_z%i^Vr%HK?5L*`x`Rh{am-7kCp?anHLmk4DWwd3zfobIR}~ae$G~%Yg zd2AcR$4p7WjD;nNuy2a$Nn=H-s*4!$3cna7!ZQ`2Ma6h(wO~}!`yv3d3Iqwpp3)28 zsjYw~g&q`*sF7v=Syn+3>7YWcm^T)=_v|Fs#3tG@_g_(s=WUykA`K)V?dD+fs`S|C zE@qcl0cu2eT8P(3oLLIL9BQ?VB2jZkdjITm6E0(@FZeIeIAI0$GQjxfuI+@zuX&@o z76Vk+W#1=aI9(nfaJuXqM|bZ5YCiX<`53;#!O$E9HM5H4WA#;r2kMZ?pQT{6YfZwp z?u*og7?F`+#l^)qczBM^&cZ3k>L&H49=8`@%Ex=F%tvzBf~6#XVMT@8)xD;ha~zt@ zd$EL0{+s6V2H6@khxc2*>#XVc0ZU?3gxmCZXT<#oo0Ra*32`ZYz0N}M_+6<6oxj&C zh$I%DfR%=AK5#K23W~jFLZKa3^J|g)Myv)`8AnbS_nL35g54wjw1`DQ zBv(n&g>%%IqrP;=69dEYuuiou7}u&yvN)FJ1$Pd3N}wuidH?cR-@6$m{A4Qm=$p;U z?u};DMcd9??=mla8xM7_D^5a9ZMy=rrth|OPNMMIE2!HY(Nae%GKNC#tcz|02uOZLkRU&^5Vq1Dh7if}VeC>ljf+Bb(OV^P@08=X!W9!v!4%f0vL^zOHN zm_s|e!}t!5H;DIZPFzHqnK2Vsc^2sRhFxLCxHnZg?XH(=jR3A-r>6%`^oJ-f<(T(x znIdt{U%N#6MjWIjtUMcWDEzRsai9?KaRiYXx++oY-pi2%SEW(o$0mXBo^+E*>TE4E zSY>RaR}@_>V&Juf8OxVR)>3Y5*0WfgEK@?(vS((J^a-fX%N0a6Ouc{rToDu^E3Vi^y~Gk?HbKH!SHyG!Dd(5 zL8E338#!Wx;0Fd3B-Fj1YGmmpb+G5`slx6iFE-()tDd!L6bN2}ew zA>1vK9lB1uP-;fOvk4n?aoE`-Hehkf1FOH6eV@g+{oXPG^x5hAiyCJNE=k6Ljvin+ zJz@OQTOh}KaMx=#@JNc44fL^8ClL9jD`~1#W(cG*YGAzl&x_}q9I)wTfPBT%y6rwk7AyPoXB zjq{rh*EEny%y3{#&bfpb9t}}S)aqbU#5S5`*fk7JRJE{#L>0jF-ZwiX+Uh>yP ztq&1~LqUpW8P!xD9n*ua&J%LvFMEzhqm$?o8yRoYo}BTtzUhdqJO8B#3Sx$5Z>u!7 zBGanNRR964vCV}*W;KyNLDk?dnrUsp=m?6qDR{2&+Qz8FYTE{l14Soxd?Fw=*H@_d zI1qg{fmUT9!_LRI4{$3?;eXBA-A-}YIedTd*kSY(wQ4Zp|I%FgUaCPaj*=6-f5$+;ZS6W5 zZO6C27TZ1^+HB|kz97{5nx}7hIS?}bld?FOT@izbz)OXlP$Ox>?AkK;`Uy}vhpaZ- zFHzTCfvnO^fUJ&B0hyXUAAjzb+@B5@$M?k=YMH3bLAQwQDtcDLZ{xP3PBd^$sYb4P z{h92*)N_-rW>$N_^ zSHy%w{4I~tFFig)`rwjR4RWu~v@30fhE0P=V`V06e;KF}xH#X&63G;P#P2-Tx1jW5 zIW5_(PJ%6*TW;@s%*kDVr6rYMmr)2a!zS0hn6=K_{r=8(K>zgt?{VC`b#!#8HQ@yO zrCbaX8R_t?;tue-zs$<{j#T?T;`!Y#^X=DfduLmxc)sDAA9@jx5iY2&5A2@@d)e%U zG;x=htpu{lPzdTlTxn%!*n0M0j`s!Td{Uz^Y#xMxeX_rU4NG8u1Mw5E(G|`Z5@J zfAALbQNx z{`6wusvPD<1yUyPXVh^}e~P4`&(cVXp744wrg3Mafl|>1M{OSO&QtVmELkNfHj%g&!V&0K;ULDf4&C7*@&dZ273g zOhw+B`ZA8`(JKrrghox9Ypp1|F|%5HWAmA2si$s|WFR_$Jc$PJD;jWCL%{mffxtXL z`Yebl@)U5@Qk>tjY>fUTv=qj@>bBMo5f+UU`z^(9${6D7srxH4 zRFButy_nh3O~HNuQV`1uI@{}}0e-4DJY=TKL3)7!2U%b}NWB0aL;1*%{rnJB!Ihnb zmcm3TLsuy_PH5#5xs4n%?e~obSN7-wX1TUVG>Sashaui-yPB1Eu86*{7HH zN4cE)-Kf~Zv0Q6m;0+6(7ic{ezwCQ4jwNdF2?q%?#@2V|xAp%aoBw@z{F8GlccGg& zS|O+nCt)!-?061;UPty7xEzEA3aJDxh6shY&@V<#Rt*zgCh@BHP_I&Xd(~q}u!?(x zs$`+)h?)w2h=e8_k`M+}vGk-vs#a1WNj)z(%y?BCVMba{H}*-Y`(1zawJGlf0}j8= zhywlME<4N#)7u%SKQqyl}GTCgmh<-ufgnw`g-uX6K5RnwTNWv*w zYId3=jmD`WjAO0^u?E*7#OI{o+0I;T9DYo)xj#Pp^=-OsnRfYrWNDfja6`oIFCvET zJgQyK(pR}Z%!X?7xcB^8`pAyh7pcr4>le0{!_IrsuP`3jM0RXhJ@|h(33zmX3kw{{ z6Fj%xv$+YG7!#M!F#s%m5&4-Yznp5I$EdR3rAcE^N)YC6bm0<=h$DeRsDei9Pg83g zc$*0I#n-0|=~Rm*GSn23b7QYYE)xQsX4=UoVO|)eNrcbRRccwe@%lFwD@{ZZVjGPj zQFHy|A0oz6He(~*fJ71o3;UTJ&mIHzVZ;if8qpfhrDs_ISSrbc9%0$_^sYs0yTJ|- zWO%nX^?BXJM7FK2Y5cD(E*!Yy)Jc!;dODbVOINlC(UH2iqK6XIx0HtN*5tWm34ft0p<@wqzVdgY){tnNLi!wEu`N0yM6wnjUKcMoweTL1N z-;$Wn|4@MTfZF-?r;XhFpLC|7+-fWE0kgrPpMmfrW^eJADrqQU;({)$485iz`Ps?u zC7Ge%!T~?QBwBRYJ0X;;Ku04+EVaeXG#6p;75+q&R7%#-{5=WMivIgy)N-tEWQq`d z{FA7jP9X!xt%8yhlM_c{$@)&Q@KmxnZ8h+`kQuvz(Sd~hY3h+v-4IN_ZX!`SPnu{| zkkq4|)bk3~c%6U*Ojssi^7hH+YNIRs^dqUi-Wp$WuOE=HduLsGVOkz*C**UeiCHQ*u9u`0dBinX8g1c?K;x%u3W}O~!%swPi zV_iMO8GP36aodlYR=UWrACfWN%*JI;8Vd8V zME+NW0jvbks_*`}Nr%u~I`wqF<6QVjazZ{1kElYa^;BBNnTE03canwS8*m_^CjgdG z3C;pPf~VViZ!AL*!8%SW^2ad1x?bECcB0OJ8l!~FM@SfB*L=VN8)O~XmxBkW81C&1 zk`xB9467He_r@6d{ycln9PKmcV-Ls+zi8gxJECsp=yrqP;>t}> z$#Tk<7#cBcWX$YxrlY6RsH(oT=Y3svd;Qpao;i%rKnA7E3pzd$AKzs49>?OC#3GzI z$3o>>6uJHno_u;VI#wb5w-?|M8$sV1?rV$^Qo{&ZzkcyY4bmeDZ)kx20}C5`+*1iJ zK}SeTf8LIZfR)nX9a-GERnKh+`BM`MxNIlvf;7kPD-YgAIWnHuJWp2arJ{L7 z;{&wPCVY-f3c(|Nz`C)`*ACxD>i1I)UM&s}VYn7ct!eINzx&Gx$Fwf@F^dN>htkyb z*5Qy=^`6iT>5WmbUge*2EJJP#NFlQpkI2W|5-?ZSosS_*H~8v;1j3@#GEvl5(VfOe z3}UTnQG9JZU5D2_uv#3ChtuMY@0f3Yy-xk)-zo}y>i3;k>E0M%&|=;*p#_>54W4$B ztW~4D{ulp#b|3V&HyCjndRd6In-8@lg;?P8-9ScGU60Q;#3U~Hg?NZMJoKXeU1PsG zPf_}H5bt31&XNU-T?LpV93s(M(U}kpE(N51kkf#7{Xf>reX^g5B^39GXr(s-KX`C9 zx6-W(VAQ3ko-h=8pQG+%V2PAj!3M-kgmbfU3QTd{8QDZ8Q;%Q{t9fo%&V8q47%VD) zmO)uZY{Iy#V7N1VvG|!}@QnUO(Pq|c^lY$Og>iM!t>UOC52m2JSWx&Hpb*C09%m4oepGz@9Ccj>fu@d$rUC$xigwoR2CxrB-XC$#V( zhDb#au?DtzZT`z6Tdc}wRuC@~M2<0=#c26Ho7DyPR_EyBAkp1+@HUFP_1@lnxLS8@VEur zvQ5`Zma9b<8n>?OL~8bfTc!6m$~m-xxoob`EeQjfxSrw$Ln#vMkVaavWd z@K(iYR;%7}>9Zc+Ms8o7s_^*^_VvEv$?<){o`Ow1^qT+31rf6s30fihR20idtKLK# zcAA49bcXEk1aalxZCyMCB;N}t=Buka)iVXhVcf?XGZj3kJ?R3kr$w4!w6Dl6}-h#pP;QL z`B}MG1pa#jHnjAx(VbwguU0({a$y?L-hjLy(#G-DZJa7495Q0s zx%yJ{%&d5OioptkDU_;`s{ZYcC;L$xNVqUKp|XDZotenZ!Jvs|-$tYnV;+)LGVgY} z8OmlSRu@5NQsrX`4n^(6(ng2FP=;OCkR9(^$6C+b{rZn6!kQ{-xoqxzcbDGP$&8gY zf84X|SE-{&%P;9lAYm}85SevVa|4Z~iXIoU7IOZ%f+l=f{Ajn~Fhx6#!xFKPs)t&DM~dmF#(U+DV( zs)Am%oq4Y$wDb{J5bvC2p`i^bIGldL~Q(}nir)SF?#W| zpQ;qzjQOPQ1$9+ST=PLBqNjKc0=6WzR*k4!Md-01u9U37e z>Uu}0+p7wl%`lQ7Slm5>yyH!SXJVHavA*)~(!w)(Im!FOo!>I6MMxcAIQYKX-FFr1 zBx{~JkG4d*c7P4kR4SE=P!WcNz)8^Sh!LF$wIth>H#HV3S1bwylBWjaoDIR8Wy7w--Q z_w(w1qB1pQ@gZjylRt+55CkoRySYBL2ymX*iX`*DvP841bmJt}C5ScSxMZ&Oto6T4 z`))019EUGFkxk&x@nxq_oO8xdd##IjDCii}h*REtnAwC1oQMRl#!~REvYezH6x(c0 z-!)lO86XYc`njtr3G&;7Fhqh!Le-wOLM(8Ago#kE7!uYd_s5e_m@&^(Sc{rCg*xrs zJ(U>mm8rvil`Aq{19rlgOLo{QIX`^QkQx00?)Va>_R&i@wr@B3^r_jWJn_j=a)|;$ zN4fChq=1#XPwy;(aP-+#ppbXUUWgY%Qg1H>BGZ0~M{UNi4q5KndWCh`nZNwiXi|oq zBSHh2eB2ahb*5!0RT}WVHjX3)Zx?L$e$1Nhds3+ptHqdwo*xV&jb2`R&)}$_ySAS? z$?uD$Ir3^F1$DeFXB&2rM3?U6kf1^=rDU>tok}mjr-9Xit6e=MX`Sg@pdn?t8uqNw zoXn@g^y`0Y>31~Oq9Sg8eB+}?NEy&`kip$>drmsF#+mV2S_{rW0n>~US2FQ<#OI<> zEJ+=>s0P3u{&md75rr|be2$jQml)1<_lZ0BkUWbphPJkfK@DhK4DJEnfVO+o&2+e_RL=vgPw$`>1WAHjm;N!Wrx zVI1|9)vIv_zGbiOBx^yCBJsBy*F$JR@{QSt^9pIyv7&=zwilnz&Lt5}GlhJU4671S1>wZdxz2yWaR<&3nBf z!>G~s6K0C8AUL+o7YMz4ru`;_+Gz6`tDm6udJymn1`teH)$Cw)GxA!Hb+Jyjqo6xx>UV4GBU8Di&U*2Z~FF(@}czgxtzxW<&ay1tIngWA!*rVMV7%1VFTohiPx z++~_Gy}~n2-x{hF^*eJ|i{`R3D$CuOuDV}_`@Calu1SD*^4;JJ`$YFu+U5PlQQ++) z-e{wbhkE@x`kEIuWB3IG!$cEaak5@3PUjsTylJvGyWCg_hw9?E^{g~!7?j%oBhz#9 ze=2I+hL47kLyF(6`1uV?@LqEkv3j#`qIvNMTwY^!-?$qAr2V#J}j#@)ic$Fl!Z7jS{1S_8tjK-;~}WFxayq z!E(Mj6f46@X@b|)pwASGLI_{fT@Or`z>g#YH^>x?1-S!;k0=wefkbW?u8vl$g6Fp#MT z(_-iSIOG2W{%=V>pcvf?6y-+z0qSNz;0u&A&>EAOz2UA_g3CfYzhQT!PjZ6*;VUV6 zfcqOm1)t_o|1ueQ4-wh3berEmCkw&`vY`P!{iLQLMH|@l|G->cr*fbhKFFOqPd>!~t~N8%OAW={Chb zu7dNE{lGN`5`TRp_MRq6!bx!Hl+hxA1WV%UK zJ$k?Ak#eo(H1{gg^S0;9c((7agYCLHHzz%15$_&Qa>&g)lCS5v>Qeke4ni3%aUih4 z1Vw#H9BsExGh(2OR9!1U{f=sK6rR*VinvMmsJ+m3vi%<&MJH7csw)_*pPDQ{4fGu3 zgH$t3n@YmZynfC`t*L`J(`YbADnequGiYD8a@op%vga*o-6nTsN0FD?Kafh!`@bQ- zf6@7l+)y^>2*48U%L~g2z~^~y)>^Yr7P!(%EBU&LmQ}3X%CF#KTvh=eQo#9H^TN)v zsy{qt2a<0(Qrz%daoOZ`KZ`3pZ^){|^4v18sTlw*;RZe%O8wAb&Cl;f(-c!vT^DwL z_AvsLMbhrK#}RSL*#j+*dVv&c?F$s0itYdFxQ+XBulr>w3A#dZwVsGq3yog0xTv|6 zF|fj6>u=B$nV#2ldx@13SBWd2yOfx30UTFxyyQo)U6$5(5rOs9!G z*SrFv0sj0ZoAE4N1{G-?oV^matSlUgf4!ro-vYtz4Ki$e zJ+oCF>zo)WG&E+0xT=gsCfcFvFfte4iRa|o>0B2sI6ny;Xdja zs-mRKqE$<(=J3V!Cu{Gh`CpQpbW!cO_&4_ zQRvlQZoDU@nXCQRAWr8jc#U?aFX(E3Jp7_L!oCnBcLiKQ92P8A60FIfDA%F};UlJf zw&AU|5?NXALXYn~uV$Vv+sX*cYsIh)mg1JW;piZoOCSWUc)#M$OtzTC%v^qH)X-M^ z2->{p-Dt5tCE}BO8PUU1X zhDGwM+XVrd#^=7YiZIRx+k+q}qt}8u>WriR+5j{HV@2Xa5;&7bX5MMn%b9{pg&M*z z&m6Uwekh%fSB~p2WL++1U+6$x`1WK${_D&c{7C)gjrj9usp_-_MZrwlpO@Hfx!Pj& z4jpwge_+8B!?XlAOnzMObziqI3)GpJbWQY&h@4h>zPWu%uJVqYVS0j~uK{(;-Coxk z*!lxuUkdCiWmn$0N0g&MVQWcaw9!;wb#zRKBy%Bybu5qF$%q~C7CK8O;}@{g`aWlG`8zh-&KxE3Z(G7^mL6e(J1LI}wyqOuDzs5o zSr0!W9u|vyP^%gq)grOetaD9&cNmgGX8$@7WuTFzrb z)Z601+?_4LIsc8Q{KLNgGo<;42A1Fg<5QG@sANpOsQ2H(YS}lL5yg&l?rWJ`P&(T{ zV82op?gQiZ=@+uz?fgpjj#LBLVFHRII32R>@8Qas#Tpm`CI%tnlL5O zxoA*2OD<4Dmi_sYWXcX9{ZM`x+tZH$a#wK=r?Ya~=_yR!e*1o&U;H&v(+!E=Zg1l) zhi{0DdoKN`wQp5D)u&&h_PI6(o3~T^AzgwFzoxSNl@-0Un@~a0y?R%4m#-ax(nwBW z^7R;3P{_>a;1*)*;S}=WWnaADicQg_YpIfm@so zo}~U;3pi3*p?>8#ZA>X;P+*jC9AYLNh@% zX0or8F`u_jrpDJ+9;c|v3mH$&842lVWnhSpnU6AH{E<6TENUHSN}3)xH8t&_9FwB? zl)agj3=%E$+a!A2SBi8k=ZO$Nn&fwNkfueQNh%ijrqvnWMzY+1+v>d+7NCQsT%~2{ zzNM<*(M3gXsW4zlm``r-bB^^w;1-<55wsbd zBQ7mB?)NVLG0k;iHu$i0>EPQW%ZJ6-+uL_Ni0KJN@32}!o~i>i?4+g8D*MFQyLX4j zU2T?*F8aiUtQADr@vC4AC^=n}{`kF}DN=}f@8`_4qx99W;_}_R-02xG<*VOX`Oji* zat6^#JKf3k44sYp@55C$@y`R*!vUA~TW(mRn05=1jL_#Qtv* z_D@2qNaQ(&;{lFZk+(9*X(fFK=e&^)zU3KBO=c zk42ddnjUBYOc+ryB>DByY8Tsj&fmSS=DxL6Y>Kq;F*ROwt{d2WPCjA08z*i0Rk_1X znX}kl!J5p0-a_U5>~ya|T(#HOnEEFQuHp|U?ZqF_6hDYboPvIkJYPjLBuw-=I*FD4|V=y$LR zWxsDG;!OnJ?n_cZT{C-Ok-dp|OKUMO&eAP1-M@0Xd^ zoz-U6*g;nm!k$wMox6dGJQ2Dr>Bq0^u)8m^GMZ8q!5qe2^VkmUlm($lk1HL0XGLjV zbb5#6bhKLpdP96V>dj=nZ=#SIB{Wln`t}m^v#WCjVz{mnr5+lA`NGnVR})y?RCl5f zHMeljuHktQ)^E6No-jJSCH_M`n2lROEAPW~0`U#=?(IvFTidXF$i+MAf?jVDG!qlA zWj|SG*fEyXF@@BT1tt-{6eMy3nvbk9=k}xKgym^!nO^SBc8u6wk^!L&5ta_RYz_s_$7hqqTpT}^w!_a=6;?fLq2ZLtVu4pQl&R+%uIbE z82}ndm6||)PA`1XdjQE-uc=o?IxJQ@J)#~X3!cr=I^uO8clo&^DQ^Tb8{3g7`fZ9( zjT(b*?R<*e;{Q;Rdl}wdYR}|iO)uRp$=yaw-Zp_t1siGJ_=((et*=j!aIW#8O>TVT zDq%5ePGRk)OLbD#qV2Nu-8YZv0e;yLaY;$myYs|`fv=4u+-y>ZOuN3Kw=Y%%KJF7V z-29yBbO7%NiMl!RJ=tOTM(>OcY9TFy!-El|Zm{H3%AQGBCWnd=-q;(G!=z>B>ZGqO ziXtivBNom2n!>hh%(~e9&UGwx3a+R>dmA;nh5y=L^OX`b-7q%>i>gX2e|Q}~>RBE; z$56#-yI?1IA)eciPKT-k|9d?v!RuVS1LD}`j#oQCkPat!rhPHeE3Sz6V$5WrNy|C_ z)6eW9BZH%$wu&VtGQG~V=IhwEnbER#PA=U6VIytaFEaE@9S{t571hzNhLp{W_J3Z( z^j!7w60aro9#)z$N8P_O(Ugq~2FL7)v>i|3vQcFEkKNSLDiOk$|L*DiKIA)NO&5BT zhBaF|Vl3jp;7~8QjhOifg5_{dSbEJ!LDyZ3iXvr(YGY2=!QqPPS(4~(A1#W&7(TvHlmp4CMPMWmDb-&%Z zR^abDph>N_q>>yZv=pJ2wGS~88BqP@N+}Y}@k+n=Z~wgAl3@F8uK_kymTG-ww7rCe z{Dhl-xWxd0koptDbo#f~i5klfGd+#cJ*#zXE35E7QcK;Jv3!n%_0(pdg`>8nRHEF%zuN`d zcT5jcB$N8RjeJc)0(_6dzF@#-x&KV;6JVO?k8b) z7<#MHZ>z(&UXaGDFXxog2z_~6LuSQElRMtm4m4^K39g{pwhh^>&wZ0H8it|VEMBs& zN9Up=%p@#4cStvB3aeI%*(9*eEguaxf)T}MLJ~v6*!s>8r95Vq;>_xIZ9DT4?7|;v z`;|{WAN39ITuDHD?ERIe{AXyZ2iFUh8FatGo%s2k8ddZb0Y@n=k>mhQ{O6PdUaA#@ z+21*flpf`3Il*p9Gi(VScj6hu=Qq3MCWNE3tR5fET6}6 z@&sKECv!jkI>C(XixhgfJk0?SV3;HUfSv%_R(`hH%;kU2gYxHAsp_V z0#uz?$lW}R$U;Mqovvb+o_i|k^WL4HvCVhRz&y$l}9mBjgUlk!BIvDECq6J!5%8ryU3=9S{ zbtQ$jgT=k5-`Scce)b+J={6q&-H68fQ@_0^qo_Axk;P@s-a_!OS~+!T@4!YY2@!LT9G>l>mrwJy@OY{s#$`J5McnH%ZFd)jI@ot48O2quhawzps^aQXZv1N;8^UIen*kRk24&xcn8D>hci_kr?WjGI>t_uATf>4mAzg|7l4gTE* zkXt#n;sZJtI%&G5r_q(b5%gN3H95_qmQlS3we{!R!fX~orr){)gOXPpP)asYld|Kf1l{t%Xtd(C0 z5NfwEv(tV_kKcbfR1^8S@8-13HR4&LCiZCPuTmN^)+C6V!H9%CF8$oYsBG< zQP>VY?d)f#TGquV-bAbWB1`*pOJoxXQ}XcFU!QFPm5l46Mk&vikt>&OX6ZIxqU3j& z%PJ^z$i=Jd&b@#CVs#-HX}R@hBX{^bouroBRC*c3n(R$mctKnHuMCe=Rs=t=?E!%3 zRSoi+{y)oUzLa8iC)>D)Dy6?a^phCZ_Z9~@i}aiLh_X@3PBj`tuq(3SWuy*rImGNJ z9Yv~T4prL;*Z?t1+^q(w&saYta`C8JzcY9XLu>?j5$SiTTCBuG;FGy<4!@uQ6pe&n z6NtXK$$0C*4iN5T){4E)w;HN88Ty=19?gT%C@*~kJ1#u`!81S`*$9t*gL8o-+;`Pj zEp=gR)x@5);?rQ*ujxvZFu-{N*o%|-93W~k*~79^`5ymE$Y*R#AMzPdor!%=CE0G} zdk6P7ELX-`uKmtD6$+J_Akc$NA&Qh~{N=~Kj>cY2fHWGBf&04jSL_8D2d;>+Ls6%YoZS7S?Pulad}f1)^qAVZth# z(Z49Xp{gQO-_mP60J@Pr6(+Z`!T-51TNd(NaLh0VcqUkdQQ{O`*(ZZFk8KO1f2QOu z!ThSGm~#Y=!k!cfZeSN@;W^tfa@WvmuFPy0oT7T$@)+cMllI))G==MJus!R?M}qad zV@*}up-)Sk4Qe>JD%4i(Y~SABk7`$HB^5J+x`~xuvPwFkhO8?g1f7nHb1H>xv`el0 zsR6_-Nxa6;d{IVA{GGbTtkvdi&|;E_aXs`RUglV^_8|!Wk3xzIY=i!!?hGY8;nR(+c(> z)u(+higf=%_=1MdH%@D*A`_`<=3=Mw>zCt3PeiiQHDV_B9D}qE^si2>Bz<*ZL-VxfNpU@S$?lrr^HE zAH`R!TvU3xOD-|RNt?vL>Tn4SvdOkb(bNpmFM=iOorv9K8axkxlUWf*a;E==lHc#~ zu2smsrQ|++Go%xMrd7lXV|%ZS-^t^cC-%Ouch5T9;G$Ywh4A|PRkq<{NQmyI)iYH z(=5d|qBN|2iqjr5uH+>-pJ}><^n8qd8zJuv$2l+~2~e=P_;)I=_L|X^T9^H5n-3$J zEt!U`W;EQI?lsFiHX$CuZ^ZI`+5Fz76NNc^-AGf+xEzIW>AG8-%XYP@+x~i2h52=w z7r^>RSo_THsSzYv-K3RA&MsY$qRs;0o9XupDxWKqS*fYNN>*!I_mgk97Xq0M`40r` z;2)?I+7r*eWGka^rh6tmB_|gu_%w--mM*v7S16y==*1UJ^3sMDc)|wh>MH8I^6+)&Y7x*c2ta!Ccc4jiW&~MgWkga|0gs`35M=q|CN-Mg{ z(pq!Z_cnxs_-`LMy`3~fa94jbRL(Z(Qw_gwFDASs^a24@jt*QgxIR$R6uJ z(iHrdV=($x3(*OUKgMuOd5e(p)w_M|^D~)*Kg=IBMKoLctY#L;`i-U^k<+-fR>h=( z-Ei4?jZV-rGnl|3tZMf~>;zd0?S0#j?!sF_63*+#c9{x_(>?&2+_veXVJC4qaOZNV z>Zu^JyX}-J!q_Q0V}MTuAu5i*HF>I_;Om+CgpM?IG%E_&&#a?lvJ3ItoBUwX|TIz|CHgE3R?Sl zX>YrhiiJv1NkAP9{FAOEsZd{thljX^nM6y_NC*`{e2ch{rsM~x0y z9(Oz7(98dZ*s%?bC=N^N}WL@a#&zWg$I6QgfN#`o%u`}H&K2H@DkLzqJ6 z=IDEYYIP|p!>4TA`yPdOf`oG)`H;Jv72j(xFs|e-w=v21GpBQ<#9BLjL~V*9!Ayj5 zTFO3DY7=c3LN;fVcP*Q3FyACMrO|Y-+2cTZ&&K4q>89~7A3HER#~LPXgtajcJ&DvE zIAMj<^tR#0?vl~fAWDrE$sC@Q;ug5gN^5A~GV8T7=zL$a!SDcu>2J=uygd%`52b&# zIbo$`HBx1=fjkLJLaoW1y3C%OWZNeX-x)d0onpSeHx9o47PdbL4ZUI%%6b^PF$6R` zKJd*yB$MoJop3+6Ddc=KiH!7@RkCzE9&I>QRic;Sl!b(*{xQ*7UAW{Q+-W>O2BQm# zXGziYp81@-0F~suf{m~&`(Xx##!V7Oi-^R#xH+Vw9D?k}#@vQPaR0KcRI-Fgq1yhU z^sAgilG1IdB5Kl`8_FAr_4nam0H}>$;E-wk;#^hwZp(80@2us<>4}D!wDjP4Rz-Vw zU=mDDrGG$~uP71=KDvN9 z;?vuvoYz7rNug;W%)yqnG6h>9>9?Ycq)aKSr@PuMVu)umx0!cWeWI0Ml7WpO5|rxV z!*L;70|v+`D9q))5Ookd+Stplwa1-l-+ysox_@J;_16VueS4{Tj&j`7u+Sg5V?|n{ zxV3F}f28MI}<3`y-|^xqFjE-;5r@TzT4H@0P$`d^}SBv};ntc%3)f2HNJ=zz$-Y@w(@=BjKc6m;kprtPBc$92(O-t%)b`r`KK@W&H zm1)a~$cHPrPR=f^7E}=Mn=pAN$uu+#gf5bqT9CLhJ>*E!3_HICEG%ri&;8z~dMi5^ zxLJBa4TDNfga$0HzxQRheBR)FxserkdjdEtvRuE0>6^)f4#%~BPektR5ymGXjo{PU z$wcUzTv}B40lm1eh2GYJ^SXU}8kwL&zj(XeGnQwJ;t!KzZBT-+XHIjkFrEQg574SY zI~m-0q-ybfA=#-88ouA?el(dCXK#KQ#d>XqKgW7O3OMDN`*vnDF<#mrGw9T)+K)as zrs1QbAV1gPbYRMK{A761!Y3(_)4uzgo15+K#0_fXY(M>zd{6D*6zZFsQ0>OexAn_5 zNu%Jf#nL+W`<_rU=5SGmcLfsDEz zE}B)g7sBHTHAv-_`_Wo@w3vzaRHMi?c6+LOgMXzzi4^wt*{o&Z`rn2J+O~-X@AECw zC0RM>!K|mZcZA%E%F@8!Q(>*FcRf8IFIr5D9}gvH`GoS}jgp-4U);%{b(y5~?inn2 z#B(8q|01ktn-1k~L&I-kd5ZPW4L#{rPGsB*&a|v+;BRf?Z?%P~Ya@5HyHQTQ)_>w` zQ;afc@NE;RN%y8~jkQsquiarQJ?BANdvO30556K#iA=~CI}mkf8xfKiwzwV_H+f;C zU9t3S+2_n_??A4gGYNbmdO=@Dr=hjvLh9`n0dsX$eF$9yCw6WZIi4-WH!+=DToe}n z_EA^`U)CXB{RAxJ9C9K(I+EP_yCc(j8Ttc#e=fcZoTCYdFYi>B zx^Cn0wvW7TZs}iG_6*FR?ZmQ7|2*1GSXx5=t_x>2Bc;`S{yAm2_9EP&)&pdLN_U&R)iuaugNy%Y*&&c7Dyc{%u;99Me!sK zyiI%)-pZXz(gyY~n z#$+rf^FN=m^anbBu9-cZG%eNnAd0Yvvlrs9_zi&Ekj<@|9iWSwHSh(V^NF=j$@S=O5+ukjIJgdFEBe~{ziucW_#!~lv-1n^6_PcAb`XWS2`3+R!`?vV% znVC-bd-0X85+DqW4?J=Nsp1u?Tj~Se^pf_wLlIe~9Y`0wlx$DV(}wKy@??POAwqOE z)YRMU2HmZL#~qEek&>W4oTWj`d}#?$R*p>E zq5SoaUL_TEVoJ(VT`|~t+(?`r!M^q1caMSQ9VLlh*d+f*koew_kQn>i`|=dPXo;TK zJ$ml_a7*?=TiY9TOr3Q}B6)FsjX;Xp$P`Ha^N%BZB50Yzj5iQ_zDv^oESfL>|gefc!&^3vNojLz}htoO?orxa)t-yuFo{c!#q3;kHsZ1e~Ng9{*! zew*+k?EgOgR}TMGg8yEI|5}3oTEzdlga5k4|6gMQB$Eyt=xi?h<{1Y1r>?A}RR7BA G-~IP&+B;lYsM&A?#t zGx^~nY+|%aJJ$|tr{~0>H}81lQL$bDb2JDIqE#-uy71D=epzmNP-{KAG{Ipp%*SM< zV97=d!;{|f%8VkCYFzm7-sN*|u4M+#vo<0QbPuR325a-sL$`_9Zt{6$x-EQlYNd(+ z-rrx;q1F!!Xp>-aDS!VGbI5Gwc3*hN&QAQuoHFZ>^;>xoWe<5zu(+9(73S1TBkOFh zMr_Sj@#{AKo{C|HZU_5JO-!^=DD`TL@t-9&Mk?q2@A(_La+$#h7(k!yc@lQB7b|y+ z#9Vwgeg5#*n|0O&!RYr`+`R@=DWYU#o*cUE6ZV_-_eXZV(Ftz!otkJ4!r{C_n`@^m zN|Kx}|KDf+j4+p9O)r8*<+h~J3=9m$Wsi0zs=(KL#bfGc2vBv?-H`_tJ)3m0*2M;15aG{}ft#_!25aGX%YfsE-=C(ho z+nH4GeikZd96L6V4mfGb1y*@Ye2F|Ml5b8G!PEi`IEemgc8-HjZm@oBCi}L@w7=#9 z3P!mK@45W+KrxngS&KXElk%+0nCUW-*M$fn&{;ZDJ98iw%JYAe%3!`ihq6zL)MzHSg z(yVOWt%?i%S22=U`8x;haXi*1Lq_HCkjcFh;-rS0VO`=iR-?gq2AWW^?#KSsc- z5jCtY?SoYehK5h&>hcgpUACS)9QgMI*kj3N2KRE?QOxfufRu2ubyl@@0zH^?4BbF5 z%q;VpL~a>pe!v4d>1a}oTIy+ruo0k`6*D#rHwwxEx^Syxfp~<>IzO0zGSfX@e1dpD zVl2K4-%Q62KrQI-F9cPbs&ssANch8Fn{8p618qzVWMogf0#eOWwl;8iFElUW{`SaF z^&6Jo>eM8Yx=r!D(We>5N2K7o;-M5PlH}o5|NV0XC|oE0~K&l9jT(paHNsa-vUm?B+lA?OF$** z0hRbjrdFIq29c-12AZ*Mr85n1uo1ZmIRQKl;MPZ#5K60^SX)la3T0Myo7AVeSld{G zthkvY^tK0!D`)ej4|cw1i#=|MSUnufMWa7g`!1~vsB0_)*m=4AeQj9*wo}qE?Oa7~ zwEzrpD|$4sy$5E00^BgHdaTF&q@!wVW`krBLg=+%te%hMUEXrQ2ZUS!h;h?M6KBRr zvb+~&$YVs2K)(cKit`1z+7XpJQ=v)2D79!1{1b}nBP!X_Kx+do{plH}x-^Cg)4cB< z2=t=7Pr^Y^GJ;U4^KB3BZyd}|v-%@MI74&ou1MX?e^?q&Q&~22XsS}z zA0KS|oF9qUi8wUVsFRi!PY^hTtXghkwdW4CzTW&Auc7;pMUOe5)9AB2@w&FQUTu<% z$0N|#f2zi?yv1zZ9Q{R1?#EaG2rK9+Efs^$<(63{K%`7yi>LF2Y`rYbjTg94@C`YY z34aw8fTAEOML3LE(l3?qDx)4!5+UK76tbP<0HfbKUaB?%IL#qpjc~?HpkSJ~7zC%f zPx)I?l50_dxz0#_nM?j#Q)o>p_>LeCcdP+M9#q^fYS7ov9_dMv7=^}~7nnxpU%~c7 zJB95pvw<|jRL8r)1zL>1j5#GR9CPD(*y{Sw%Hy@(&3OLpm8r?55byoH&D7l7`MpOP zx$@C}e=A?pncE8`HW_e1il?V64|hs&x~EiT59K{p@QPHSC|4{x7`@?~L#LIKYIe*OMwYLnGWh!6X8r zs5c9fb#b^MznqgI#Vhf4Ud4axRp{?{-Il{W{C{4>iE;l_hbHqw{-^2y*_smk$A}tQ#m6Z zDSrSc9U=fM4qC{@iGWS;BTp}Pd%o4Irxl?K{_;Nt`SDj(aWdY1_zQ6uUo&E7UD+Ut z5$F(1Gc~y{uEqE3aRYHX?sq^5Zao+a+I*2UK)PL0wfrLYBl6)6NrxcBeEXAa^9ozcyHZ zI5!CF`Z6Yp@JIvj4IHh7gutU>aV|zKe`74eCgjNh7YPQ3^`uMd`50;!+Q!xur$Tsx z`r~lvR^qfIo;#i-O+Y-a`WaL2GXh?QzJkS2*f~yB5=2ptCrwzV%njZzVr1#3N8nhJ za9cO&!xjVZiYXTO`_TojedkkvJZ>^Yg+Tni2_xq?qAac^S!w%`^ixGY15UHlL`2vtbTAV0?*nma#6FA(&1rX@;fxpqUv25)k zH%3qVEx<#r9h?uvJo7`PtDRPq8cxI&wc~So^iV+Yv_Al5a)SApZ__0U9lj8dG7yk( z59gbsGDoj~8`B}2`t?%OL=F7SB%2<*ACIJ7*0AkO4|g*KNsLg97avvZ*>TMxKqlRd zqK+v6DU=jjLrV4g0%Rm0SA|PK!n_8>edVsDR!_}kv&5zJ)r#?u;TT&`nM6%dLI9=6 zMXN@w3czon;Jjq6_BRc!DsMppf!!Ews~$mrN?dFmtd~up{p#G`uWcgL1p3G_PlYY??s0Yny zKIKS|KRq$Bp*I02p*7-grQS&V_~m-n@A+3i#uRAOZH`Ph@GH9o%``|zPSn*EK>hmz zVZ1e zG|^P&uYbyVcPX7l4V}HtDNqz<}&7&C!qFnJ%BT|sD9yb@&QP4+@+XLQZ z3guHzzhud8CpSK>r!AS3iv)<|$n}zt!r4NSm;Nc1mn~+L`YZbGr>!9c#Bdt=#ao%A zb`qB<38mjxqK7wt*reb0?rw1b>1XN#6}~3GJ;WUm6(GF8Qve&W%jA+c2dt^hW22j% zW^wv4^&u)9U3OUp`j*=`oSoUjkns62h%KI5rxUJMaPOFBCK3}%?C$)adRJBd6AGTg z*Td-{69JM2aCvNT8*$)O)D48O(skBHP~5S({_+GjZrdVvvjUKoAWb#xQXD|Sqo5{N zK=3Kh^}oQ9lgO9m=`WsSL+mj}Wkd^n(d9{zfbfvyzX}nO+P}O9h^SheB6{Vdi>sOO zISQLfvBSns=w^gFqh=bE1m-B2DJQodLhi@xkv1T$|s zY_CFV1V!vH8`lfJbF5dy7D~qqLsa8MQQoLT!dnMZqTe|q?Rqk@!1v8t9uTztipv{) z30vaedw^nxOm?m0r?@j6LAGCKIg3*uJt+VN?7p`p!}IM$BV$tHk1+!zUWpf8@b%%b ze_sik2?2HMM)GS+tDz&~ACB}^3d<&?lU7bd#g}|Yl2oKcra+`bbWHKXdU8k0Z21i< zK?%{GBz%gkS=LW=4~>=SmivpwTey(xPJ<`PVYvfi>Ypj z6jx~Jb;=VgV$~C*J(^HZRx5f7p&|uQ0$0HrB+_bf$GhQzu0|aW52bOj!(YczZW1l| zm6}h*w$p|cR2?*l4g>$(boO|eUNf=u0Sq0P&nmKUuCW$RL+R&3Lhh-;E^!T8-aXCZ zaZ<>LAfky#`^95WM+7?LL(}95B1Yu0?6O7I(88tLPSmi_(9nuz#f!70@g8&W?@DDo z=H{NDsSHM_&gZt*YEE0#cP?BD-~0A!DL{+Y(ahY#TZanP3GE+A=07~}u=u?|Yxg~z zoW6Db`NNRR{^B_^RZPZ!lD(~gI86(nASLVB3onuerA77z6oEK>aC*RVb;qOh?5tt6 zN5G@6IvetRHJc5zvquID($x}=Y=_;Dvo3~`j`a+VJwuR{VhIv_|5hn`B9a;L2~(es z&$5F~_)8P+*C7dNN+NLElo2EhD#*i#RI`>Ms4K}`!Q{|j(3;#+D2Oz`vG3LJ&1TCH z64i$kGCJ4w{mIau%8kLn)lLj*;4+=eAJpi32c47i{JiM-w(D0P2aXSn`Aodo-<=Z+ z+xZ>(=LOx}uf6N*{ks^P(gN%geV_!bGg6hi=^bo2R6Xc)o;b7iW3=LXsd8O0O6_Bv zAQHr9QGCvWl2Fh9hw#!b=!CP;p$WsTeD#w%JLnC zTp*B)U0Nab#`RTx+WLJXf^t>&_Vb*U1NW@tnbBRE%BoGtQ9C^5JtEZ)1$>bJFXc_= z;4gzru-oM_Qr_7v#TqW?i7u)F=qND=GRqD3<+=)d`Q*@djXDUPigJ99B(YMk@o^H@ zKkZkEeSM>3^KCDmFvwU4@b)S3)#7D-K=lXEi+Pz}h)Ri<&yXyT5}bp^WyEtr&#KD zVT5->POaewOA7~UKX;Rp>qm0IpI@!wR+pWUq5F+KJM?hxnS~wKaGF!D(|KK8&Co+k zi2r4VgTigcJ4#vWO>yl^LRegZQm7YzJ@ptM9V{e}T-I-s%=n&^Ny(Fi1>f&*u@$LeUSy=8v?Sc7E88m^Llb__F zN!%ZEKxx)cgW|F;{mHxA(`{F^n_3>McJK4APB42twy!gP&J>EBdfuX`d;Qv@t%YyD zFdSAz`;Yj*D_LIY$W&OI^^yqUOG#$^)h zXa%RCp-PdVx~hcBzrAz0yyY%1fsnKH0kp!SH1hNmq>?@nCsFD)27Jc&fPFSunZ-8| zN4)g#-hdC1NY8v*RVHOhRCFsNTev^3YNT7s!sOh5)>6&qGED8g=iM`C0hH^x7P1*A z&IBuv5fODqO!Rxu_F?WeYr~`QLd*6ys@R>!+dB&z-vU`Jn@tpI@vAZNW-b%FNDXxx zCg(dbrjrh_bAyM2-%CqnWzh_({N~2a!N(^~=dXolC1H;#;Y4)QQbj8@O%?pksVH#B ziJvbc+j48@WB}C%1I#KO3fCwh?0eg}dpxm436a=TsKndXZtDcY!h2oFe$JN$5b6Jt zOf!l#z$~pO=K_}nLXNi+nU!tpEqz}s!}OF@v}rAolqyR9g83Og#*hIcG2$e^Iov(` zt%AVYx+K2(K$&_rp=CoN4i^^o0H^-uK5m=7Ia#%w+KT~7gLsVWsRVoxlngC`7FQG- z!?<-CTSC9j(iTUSt}&)^mREcxnklV~(^b9~N1m)7E^OYXHot6LczlW5DfFRlXMvw-Y{!y6?$wR%n=k;t+uvLoS?>*k*eEGdnRE0b@w4)=ps zr`xFYRHwouU4M#boJ*}kgTx86@F&!L*Qc+B)Eg<$n&Hen+UIGf^LbgRsnl&T>|~4j zBts6o*ngdWXtuPpv_HB3@Y~g_^;~jYtIq9d`a;R%XxGf|uOD4&YsM$0v#YAfUEjX_ z-1+u%V`)@BqNyg~y{MvX0k2^-lEV;#Qh$onQvxSl7OxrM0!c^|4kZXe+Nsl`jMUnAZ+) zg?0tfoHG{SZ7LZ*BmVM(a|7iSIkmsHa@2=%X@4hUzip>$$Y-jVX5s!?QTfT7iEOE? zN%HPQNx*raLY-P{v(Io~hIXz+^Zc6s?!msSvKaG7^Y1V1-KmQix!0aNBHy}oA?MEX z+qZJ_`0bNt=6|p4)GW^FZ2S67wW{YSm%uF;&nP#!3=pDy?2YRlz(d_DLXr zZ`hG^6*!zPiCa#xCKfOC585eZ1`p}-nC9!jNip|{!*MeCnF5w_wjc=uuF_a@V>#oF zg$_=^p3VT3A~!GExae4;16t=bYO1+*J2_&bE0>{BXjwnMvH7vyx2>&NGY|Kw3g=q^ zGm8rsu5;^0jnnB9v`MFIpN-_NJ2Mqx;jDrA-@S)SYNPI+ABD;&OrG((|H%K*tVQHnxMpzxfzcgb~s5d zT}?XVUL@Y=n-HxfU%+erGCA&FeuHN78_q#@S$!hJoJhHKPO?s{qZT5Li?ZPX%i+y9 z(_O4w<1t8a!7E<5!j496b{>lv%;jy}$2;-whOR$e-Rj=k``~eL|H+?u5$hTeRB~I` zTql2NHseYEVOK@x=M(RqoL$d%Ix|ClGti5f{ju?7XGY`3^TV$UpRld3P6v z#|ua!X#`zB!P6YkVeAab2Y8gUkMS4))8P!^?Du#9&Dz2<;*OX8|83Ec&J>Uy_LXue zgopxASpb3g_eF6qy1%M}xX=jFDh&y|$aPo8Y&iv?VNDwI@&Devh%n;ZXGX2g*a z6c`?Iu(#3gboeN&s&%_JesbkddyT5Cu!E1YOc5AG=J7D=>^Y={e*UkN4 zb)RVzW3oy6s^;UhgQd;+nfCU=kqmO~@}v$MubRni)cuXF{#7wuovT+#%2|flI+H@x zH#lypQ=Xk!IqOoum*nS8C*16U#;3f%-^+r@i1#+R=D)X11zAeE#0VV~xozT|FK$qj ziq(&VVC%>zGa^E1kf`#{DLrFj3Rn)EoB&fFv@^iOB_$iA1-aA9^@?3-kP$s$&z?$a zBZO(35`MYC+kUagFi>^z)#RI|*80Q4DPwQS-TO3M=HAEo#h7^3&W--PCEtks$u{Qb z=lJ*&$z7vTtZS3|JX7u-0RH)zb zc{Mt@$e>cQ(K^|aMO5vUhkMj&>SlBB_MmU;!PkS0jqls5Ev&f+ZC&lK-AVp;%6IbK zgkRHb8=qj%S}CmF&V7wntB+Zo8M3-9+E?G);qND}ta*ji4Vg-*1a{_57Ikv=hI-VDb&`3qyblsobI%H-C(gP=p ziW!9d3YU<;+K30fcYRksX2i7ZE$Utk3Hm~blulx3_#T)<9CoELnPP{Bi@q%8^u-%D zMz`yfZ=7n|t!Nt_yyLXcO|E)F-A8A8k9bbf=}R)X`A&+jP7S$(Kc_yws=K$sFll40 z{qCfG*4_Ux#mozPw9X7wZi{%l#=dmBi|aApC$m2Xt=?vhyk0>WAbU^BxaqmG-Tx8p@V%qLJ1luGkttc_lviQ`o=s$BZzr}G|jYY0JGx?fEp|} zx7i=jHy103Y0dDpZ}Cpdu!sOD4Ph(jenqD}S;;qi@AvYbV&>}Z@7~GY5WB{lzoAPS^QzBL zu5+?1Ic-*2`lLVn=h^=0h-(oC8#Bv{ecj#O6OC;-B(+E_oay?Qt>eX#OzTY2bgSpAt)1(Q@u>Ezq~Ry{q2 z5SJAChngBVnhP($RS$HIy~js@(MfRej--42t>)VN7Dk#v9rF!rp`4O<A0y+PlA)Z1eSDa9HsEFRE<(v@Z2g;Kt;~dGfZ{#NkpQYarrx-ob)z_`ZGH-onm7 zM-w*Y5u(7f{Hwl?e{VV*5tGxKq!Ohj9eX7EFX0^IcowHI5jkuO!5PYRQjM4GBn+|&0?6+X z^MDfY*GM6oeSLa>L zcDg8k`GpofpQGKQwwnDs-Y4D<;nmfzvt&)wBlEuE{(A9)8|y1O?H ze_Oe;_LNy$-yYvvSaSa+zi(&R_ulc3jGk@~^7?pRt~UTOWG5=2;8jdC}NBox$$+@8#eb@qa0VdnRpd9!rtIvU-t5&vE#yHhfyQN0iZB6PZ1Bg(z& z!<+EL1gK$2ZDl|qZRf|*#%csrQ@eHVV0~M6_gBm&lj+fRxcu?^S&yMR5xdn9ySuEt zJfp!OJV@4RJFskR1*fv%98x1~1-A z{YV(AgGIs!Ty>wuwk1UFDH%L%(Ep!F5LAYtlwH9_nY~_3D~9H~pXgRf-Hbb)WnCha zrIu6#;U4vAwx&9EVD9=e+u6yN&x--K-M*EH=fEOyFes)FpjQ%*!qdj#28{!|bmtOYE+ET$dfXvxzgM0MlJ@I151_P-`O)c&R*W8YB^41-*c> zIR?p1KR14dLeadwzumT1M~c|G!CLBM&FCIZMr>9$Hg4a!s(bbE+QJl*!N214uAg7` zH9Kdp=?D(rcVd2yUvJuXc^e6V!SORZ|2nH|;|7Vs^@!G`OLG7!&+(XHDA+1Z@q6Y#q}cjjKA@jI!9Fr2*5reD;9tKk`;SpL7ispM`(tJ$T!Z@ zv6TA2`ys!V3uVJ}pA3JrN-G$X|G>k$Zj_rfJUUZ%!U#0_GhU*oM4vNVn$ub+_S4O_ zgPG}YwMja2jy0d>#5(Bu&TiUmJ?zMs?!m?(YeAQ_J2kkqGH9pt(dka^;je)3fXj;2 z6I_xYbqS-?tbs4)b_UiRuv5n@jR+XJWvpHz-+%)ga@x<`fMO1ZN`S4L|Lv=x(ZO={ zd`vPA$Ofu{$TK@utrep1RsKXTY|1jyFUn`tEolhLuwDt7PptE(5OClyHY zZ~=L_XWKl$HL=GHBw`DUs}^<8pI4{o;|@-XuBf||>#4vea~|>4cV=o-V%!k0#3MS= zIa=?}T0@%a94;PDvSRzVwq9&ZwJbC*lC!q9wlAoN*Ll&=xDfycO}3m@_&73dr;8Hn%bkXq&J4?$6}>wKs_8edTjMxLZ9e^ zqB@p)%Ln3uzptDX!%jE#1}q?zVlBk+Zyf;jt|y~7xg-PtigF)mzvsU#6`Yn|P*(oK zsiiWMaWl-`@gh1}vYqzqf!~?Nd_F@Bn(besqXk2vKSZ-mNnELf*0n%XO|23)2T}(H za@R*HeAzth#^FIss4nYqXhblpebPt0@QZDUp>+v%>UB8tYv_p^&o>98p(LHpjg1tK zxfAis#c+oP!m~A!3I|Gg(qn6He7eQ{z&`Qz{y1P#j_?ut!=^UvJq<|`?ufm51q19K9h)E zte&+WoK?pxjws1o`QT4eootk-t;A|!wgzsK5SBSnhLL8Zsw$xo<+(}h+E?Z9sleQ3 zM9&9|+;OiehC|!#@Aw<72c4s%x7JekHP~{?4a#<-)AjH*4OX?2()05qD_0$y)w#IY z1}{?&IM-1gEkpk_H6i^6!iKI=!*;^9Nx6}K2LU(6Y^RC|NutH+A0H_+r1#K3>63~g zG)+V4hlUd0^-Rmm`!J|xGBnqV_U6IzpoiG#K&m2HK@CycL6K4fb4y_HIJh3iUDL{< z9IYR0GvX`%5K#$RM9(CXeOBpPv*cWKqi^{7uCx68MHP!S$7lJni$r>)49GsyO%J}u#Cyn= zdZRao4tMjyc1rU;)97rS&8b!US~yc(cZVHUr;Ldm zY!q(3SvKw|CZ(74SrTlIfN4Ml%5hjU0dMbT;I7+puw_cU6^EAdeEQ15=i2MG+NNF% zrMA8?g1I+I)o9z@>gAtqd#$Mp-jfC(Z{z0kogBZ(cr>&o5GA8ktu-uU_3h1;7skfA z--%7_)8@n?HrivVa#K+XzM43Xb5d`SWyAz+8vXS?O_q%o*O|MW{Hz}tv@M@ui^hc* zBltXS4WN^>E(XHgirV-4ldQBjc25fNUDhYLD9+brHOvFs)GMcm|1-~#RMTF zg$t&sBvm8y`uMp2H$sgBu2cz%lyg(HF1J)@VGogW^l-W-4;L7I%)Kk}Erq~WSF0EU zh|$+mZEMlq`?_0mD~R?MoJHM>Y3T;Y66I4vXFSgOcaj?DfjYrH z=8cr|=RvX24rqmud8|k1+_xpHD*B{Q;e0oJX0dZ-)Q#en;Ay`y)p|d`Kj7i@HiT)~ z{5+P-PPL}taarOYheFpxg%2hQ@ zMH~fbNCA?80empU)qsZ^>A3{`Xi>=Uo6j*aMv&@bMtmbSx3hzNd?w$#3CA@Wk8)ep@## zx2Ayjm+*<9_>m{?`a>=bJ_+UD^VePIRxCLk*aavQ80S99QR)U370+-`?JQ{1)*fh0 zJ7f1(0Nct4jz?O-p;A$t65Mh;+~q-wg>3Dq{8yz-@g>EGot2My2lJ)%3GGd-cDj2% zx90NRu%$SUUJZdpIq@ppQAkR$_^@0Is9OMfxA@a0bFshr@Yhmy>2^e2w!V8q z33-#Ywe=_>Jaeq5qCZ5p0s8@aS2a-p^T0g|b@J%ehZHvvNfBCC#cm3#B>cdFHv7x&#x+4oa!txQm_ z(5A{3)ezQSIJvzu)Y%9wi~oP8`C=#WEMC3vhGq<*tA=E?%u0Yr2f`TrID3R z+^-KQ04Z~@E!8*~SzFxWBA!&Jsf1V3gZ!J^Vn=dfK@jQVC<%@xX$nV;iUN=gUMfV( zz>@iAw{x?iMHN4FVS^v2GH%`3>|ft?oNjdanAM*f+W2{E+jT6{^k(F6I&X)u01rbr zR&C%*MMiRe=l6Tultfg}%G9fR5uk9XO%l%;Rc8I_Z^F%(F8rgbFA&kSq??Hik# z`d*>jwl_K*anQD7;@FebS-?*{=^K+?~Q$JMVos1SIF0gOm7R*wtIObhW)I}G zmO6)o+j%;BMy6b(lKP}ht9B)s*_VJbbaa_Nw{Ga(zx{b{tX=HFz|alDXJWacN{qE1 zkhyKj%B?&s&WooQ$PStpnU@NwV7xD!NglC3u@cJvrdKtQJ-4wp2(p$y98y|15pIF3 zV^I$~Up#$<;{`Lay}@O#ntWD$hJd+Fc#y=&yMz?NkH`i)75yS0SVdgIPRfXAYx7B) zgu64X%SOR@vDQ|n>)^q`dZ%=eaRP+{W_{VCnH&f4y2(?}fcaVA*gxa%cR8p3s8Pe1 zN=X{hK~=!zAM+K*e#azAZ&n=!5BjQJlq&7fEUY0*-tu{QbL5K2$4IqWfjDwil{f#& ztK}75$7Zr8(d+HtjDPLb^B2!_x@sw&(b@K~3=Y0LZwN>iwE`3Dk zWz4BWTb?hM9~SfVckRv}e1p+W*r`lDW$y>saI08?#A9$veh9XRt}6al(lTwfq}hwA zw734Qy0qRjB7`=3veA~W)-_v9gy$(snWU1)S*Oo|1<3Iv^>%kpZGz)(JipcQ_>#G8 z%P_WplLDImOAdUTk~99zB!8Bd3NkIaEt3|O9pHvjU);}klUdkT=QU0Icer4?iM{SW zPZ*Iqv*fKiz7mGLaQATK=LCyC)rEwyR_5}q?;hR@KY+yNBc$DxV4^iizC#JSK}q%jFlWGeB zSvgI!-gZVjA-_3LIv@YfNbw(K5u6Bp{Y9fkzs{{Ry=TloYrYwEmo@kwtLeF});s)h zizL0L$%V=Y(oQl#&y@L=)#t=098 z^D-;@$(-v`KbHkye(?|#+GE?a^cfZ82K>Cao-WIWV0(>l;plYVn9rZu@aBPC;BO&lP zPigri0_Y~&EvEEK$t+gqUAUE#<6*`N_Y5x*-*>sBnEcZg%Y8Bir{(v6xL`hv>j_fV z^-`WYo6J1XxV1Wc(fj;yWO8yv7p-ZJSJAp;lD-lIYwvg}CRYn{7If`$K5bk%4j^eP z(4UzNq;$2M&HQk%Q>pZbQI}#Q&d$3s1PDD+9RMjQJ^zx_CES0ZhfZ$E#${_W?z+SfS>IDw-;Ad1cZ@5jOP5Lqes0?sF>Hqm4x&HeYQLzBpGTcaRp+89@|}V$&LMx&b0B(GE*qx-m2q z{;(i9cJFy>sn(Ou#nrsYgPoWgtnY0*i=W>;S&u~pJ~O^6yyu?Wpr})*K!Cm05GPj2 zB}wIoXBN~beZ-jkLxa)(Sy!Zwn$M|>I~KZ{)&GIyT0uPPZMdzRMegGdA<{Y zH9(4fw|Wr74j3gc?%vf6uN-es&vD9Oo2du$$=a)q?K3*neJ`@Hv|d zj7_+;A%De4IJ+!kY}@j#8FU2ceww{KBIIHYDi*RNoVfen%tkMJH8a!*<6Tq;f^(Q! zs`fyUBD02z?RiEteNEvd%T!;Dt-Nrj{ZgL=_I9`3I=9e6rADN}WnTMu5f zJ&lk5TFI8|D@KyXABNq3Jawjj_?h8FA`QkqYwmq$Hj;7o-RG&DfQBVM`12Z z`j+Wg!3-aD&jDOdMdyep%G|LwwZ<`x=&8brI>PV-s}u>VvaiISVq&b7;QK+{kLM+> zZM=w{jJtZ_j#$KuiALe zSGB5mq}#Yk%nPKNdb2|UQI-uO8QfPRsXUG2MDPMZJV6P%hy+^*zu_kV7>xAETkKlS zicdwh6l!`>C;Yyij8SLJ&nICzO`?0oW=7^??rz9SP1p<1`Xlr8H9qr+ETj%TrfG$RJ3lir@5F4AnwdKa-g_ zCtQmEH)&tIcG0xY+=yEuJ6{eDOHk~okoqUHhE^`_gg*SyaCyw-VToz3#drPnw z1Sm}Iao&82^DRFE67WfVk4?3$&;3Yr$S)%YjFe~g_wUXpe@0t352QY|{B$!Dq9<@F z7A;RCJu1XJfLVWm@ff{TVK`2|Zfa~n<%m9ifs(ClX%WrpACxfwil6Mw`XNL}ORe3t z?jW?j*4{sikC{FUI{fCTcyTi8!|F-YG0_XJ&PFD6i|Wi>z~o zQYNG<+dDYouztNh`LomYbAMRQoS84{gQ|KO&7-Cpu|^W7@joQ^9Fv~e06Pc@Y{@}9 z_P?*zl12vkB>;N_jpTI9?KONSo439k20Q6qc$QQe(7!J7bq9Esk#E{pA9KAdqYYp7G%BD zAbKT5P~Q6U=auj+Yjet+StIYZ8Q0w$QqYl`w9<134_I8Zfy?65)MVb{M}e(7U+q~R zEK!tvf=^7*%x_wM+kQ+!&XAdV8K%dMUL;gjY#<>69s%b)t_lA>w&ox5YjgYTkkjq+ z=Wn0S+d3QE$W|X#uqO6tRs@P-F^B?l{g^`RD!bQw-H}0?rcwj9WB%hM&TRiVsr=;K zT$S&FII&U~KcgXq{$jq(^wZJ}-8=ZwUw!eywZ0MiTek;;8iS^(4-PhV=QXD1gph(z z|B&#lpVi^a=L@OZ)1im#JzU36`BSu8vKhVDpes%f?|FL2@p0Ec3f#WItl4h5LoCXh z633x)`oBq2oAeRuPUrNuB>CI(GK*B5#_JCsK5ik(47#=bJUJMkyFn(l)2vZ_Wq2SX z&FbZU6!`BW`~9)X{5S3}msbm*Dq7;6Ju~wp+m2Hj1~Qd?G8f)*6!#ZlC&#Jl9!{0Z z(>Zx}ZnM3yh_DZ{$=`SR*X!$Nx^}0S)cVO>)$)MR=pzs}bG;HhA__t5HLg1C8r|HS z&j@7xzNy>tFeETQ_5ImE^?Kf?8cUpCrL1L=XTE*;^^<=(_whD!cfIshu6M{_&8_J- zp{sdJ6LhsxL}*Bef6yO(4>&P*u0Glu`1tsNZ|UZn9BUn&Tqef*dnaq@EIT)|wzS&n zc;}R5MS3dXhz{<=hqxYWJ~G*hpu{wGSNn&puxVx~M6~XRh?QmnauL%UyxzSxxTQLG z`*Uyio%hvot-h~gAtUU7agq_DYOKJj!E`yuce!fy)uR08t)Ln^gTAcs@otX7SzCj0 z2Y4h7fKNzePHrwzFJ+I#AsQ;&pd$2w^R1}CxzbXN=};BMGzsg2JbBy%4v*Bc(y+N4KLqBVS$?%@e(Fq0T|7+|t_2tgvqX>zhU0 zFxI#EuODZM<&x6-HpG#hay_U}K>vfdxX|3gbD>|JitxUpvja#}XXNW^4Q zU?Do&2h;cfw|Fq)viOAQdVRz2+tGen-2Y?h-2<8K`~UH6W~PQwVW@^tDa=U8Ip+|` zA?GQ_Y{)U^IW#KDA?F-I%2|$~Ipj*t#}*@}%PEJE9G1iExBK(GuHSwC%|EZ#UeCkh z@O-|P^sZeJepP<;^66@Qv*J67#6>Jy>J#|wgsKmENM_FhyQuydgmajezfw^#FhJbT z$DRpHm!3TOc@z@p8$_R@QxzMUvit94X>zcfxZL*Y#>)3*iuTHPq3k;afYncrmiIcd z71P+HEjiCYPzm?+X#SZkk}r*3wj3}0T&t|GYr(nj!APk-9HDz8!8B>k7DgIlYT%G2 z&2<}h@>aRRl__IM=#QIEBc08(vaeK5G=%Td&L55D;&C3Y^`pJ342yaSAsX^XjO?wv zt~U)LKJWe65&y#G|CkjdV{nFdx^XZGVaIRfMlM-`#O{NIgD64i)}S8~=qraRlWOuB zLBj{_cBM=c`rX@nT1C)uQPJ@|#o2;m1eoU)ENR&q+YoE$!-$|6cujzqdoWwdwIep{g>DsY2V~z1CPW zhSt})!sv_L7B5qm)8ub*JAec=C40o++!>Clx?}|<`r;;E<-ii#1zQg3-l1REw1-d8 zcx2q8iQAXJ=8rPv`Z52VLqRz^r`h+cVOD85iV@G!&Ij(zYyLe_dgno({p z?WDeBkI2dekMhRdGzFUl?+4tI+3mb+_R1OOZFrmlgH{~6M1*mlFDBwd%}4sR5#~u8 zr?~5&n3%csmF?us+{8=Qin%jxza_`T)OMi`3v_xHzkE54ViO#zTwcoj?)*Vs(l3c4 zf&FrvK@tAa9ZPHJWC~@J&xmnw-lkayBF!84s7^`2b9;O4_YZv6mmlS{TY@7*UCkBT z+u%z#Gj1o|t`VVpTUjTC9}g1u7kk5LV|*`jT?9eN3FQVo36hW0Bc2tzs{c4zpRf7) z@}OWe?89Gfk$^0rZ(Rl{$bU!kjTWU*Kxo~B!PxRp!=kssP6xWy`I5mv%!J`7gN`?`nn3Q`n)f3tbes7RTpS5){R-bI zoW%?E5)%^qBfVWultx#ruuU{xZC!8RG-}xRVb$E&`k^ICKNGC;%Ht-c*6Ht5dGAY_ z3yb98Ycp?e)xWt;=CZpo@mnJ1ZB65O?|V&GCrt`Rv3fOnwSVuA&_$w+C(58z{Yz2J zYhwYCM;rU@)phb0@!za&)f<$VvYDOsnNMb}BCul|&m0}j&1x!KC-K~Sd!6kP)X5$B zUlF_Swy?1IYfdd@!ZQ6lPQlb9u8q-p>(<_VOEI~VxE~6 zM8D~(b=EVxBjVT#>2@o-7OClwsCEOvEBQIrN}t{7uDheCHPO)=^qi;!yhBMb-s-)uR8rCz8MqjdV-^>mLvF8n$ z&s;0KS9sAXoL>EQC_;1{dj5KdOABj^-)}`B&L;+Xr}gv-?>W}J2c5XM)1~RJC>zlH zJ##zw>#u<%Y2j_0ijnhqw7w;|$gR)dI=33-w6F+W=b_> z&G6DxKKSDKVX_vo8yOGki}k&}D8bjCD)jZ@LK#zOeje_(U#EIpppzRCc0^f*nTWIV z!`hi<8azerawr7Q1 zEY2+UnFdbx4-dGREC?BkL zUv&YYED7p&-%fbQ8U36ZU1Z>A`wjrna9al;|=sDv&k-i)j6m+n%9553|qkYx+ zx{b3Yn7zmYnU&nH)2@m_aK9b*5d85`Km_D{`jwdMC`d^ZuF-rnQa8rfQ7m;I`%0?_ z-Lq#5o8(^3=<DY?xa7(GAgrb;qKoo?zh+^>d%R9(<~`e{wIr?+u4Ll3F#?Tt>O1 z^BxyXtv>W0Ga6J1F!Gtf1?Qf9wBIjHIwE=EUJh;?O-UbYaf2@2%c0`f;ThZAD}3RM zQoh!0a`GY9Qs9XbP)?2Bq1PKVC-czmIZGd$qVbnNa==XPc*N9gXP5?O=nZAkVe`w@ zgJso_#pW6M`f{t%)RbF496b68-;Kil--Ud5tSyjp!C6yWZ~UUxT@m8$L&gNT>(!@8 z>W1?5kWISLX6P1n!tW_WZKBHcq&Y=OCW*52Ci`TLe20JYz()*Bax^vgD{DtWyrXly zpl3@6wa!}k>*dOpK5|noUKCPn!H0$1DGLNSBa;R8td@*r-oPTYQDYXIA{x9=zB|S8 z@7|RO%_FZjN7VCkbHFU_R3zWc_LS?-aVfbdv(;&TG+b9ndOJP8+OEUcn0a8X9b0=E zAE6rNdL4FF0V4FUiYIu@Cd?6ztPeLykm zP)EaYBmTxr*dDF*G4*8&DSZ2T-8H)zm5_wDnOaX_W?B%vgnwTNI7e1oef$K5A24yf z-XXfUqJMuWnRyon-6S`~;wG{~yU4TC#wLyWtbS&0yi0xk*HzM&V@5wE!$o?pHuIHS z9A-7G=cnxvNq*p%T?rz0297C^>XSo(VYj48o0f`YC#nPrSfldVA0JUj69YeY|BOz$ z=zKNWQ2oSMp%%ov95fnOnvydbt<5T>m3W`QS!B-y&r-EV2SUC3qXi#q9;7&24 zJetiqto-yo&^%Xm$jW@P!lS=rYU9t(oq?(SpVv)8CwATZrS*sjxQ+w`ct-g!}lW_D;vl=fz@oYDyk6nzS&COC2rn|{N~);vEY)wwU?2w_57jA(z`|0bm8Q>!Ef3Ct5(L zE5)x9<;zRFQ%wEm7I25N?Zf`EjqAvMK((-lY;~Epr8ApmuaDnEdur*NqwHCu=F2j$ z4C4qlw!CVg^(^Y#GR-c~cL5i3K2+&!u3YJ0vXg+5%gx)3O+ZsO zPVWslhx3Np@w~yeUp=uybOS8+LRuQ>8}EdUJxHxBhXXM;6fbL%rFyjQA=P*c#3#tT z(xJ;+L>sv0Doy3NK|4LO9KD^3UfgA5j%^ zij2?0#U{@fr>_0n*$Y4Rly}dR>6fEArYxVl{{m5tOz^72$bKu`ToMwzWaG6kJv|*S zIPT%{xa)PpcuqFhF~ynJb!=~M%AP*M$Ze+bN)#4o?YbTQoI4EP9#!3MrDxGg(*}vW zMOSE+JbH=p|0yjW?kQd77(Au^ISy+KV6O)_4CSrQ&u@<=`)q?i2DH+{;F*KHQq|)v z=90rtDt=SpzB_X|G{)BX8Pyv~lEqi}MDz8@6BMP~erl3C8ct-A^01qA3L!fys<>19 zB6rAhu$xks@>zi+jJtGZEyo~dg1FSU}NNj(Nb zdwcB{a#flb@cDH7`>DTTQ&(OEs{`Wx|ID%N1c-yf&b)t9*M)@U7jE}gl)##Wz6W{! z`JHCJKf_qi@eJK3JJhAl_u2=pS_JQJY-Lu5By<;V3g-vuHUalk1{>KAOK=sd~Jt7`g1`%v&!+`;He% zFff;y$IMlaRO(bu!hlj_~B<)QMAA_jB`zlsL zrFK1fQFBe+PK-mbPJbvF3ZG4%EO*v6~Ck3YXJkJ*Lp+X-N6+viN)oRBTWwP6tL za6(tttWtT54Rv!Wc;};~DU_CenlyOzDB_%; zebCB8+DwR(kj{1831W7;yM;7;`+WFX^590xVV2Q>lHSBFXRTL`byk~_Ba2&_1Oodc zs(RV-6I?P9T_OrUjeuO~*x26rSrc6OBSd}5h3njIV?h+RIn6`DJ*PB&tuId8^lDRd z|9nCJ*51PO-1Rc;$JD0kR@z$&d&RKFm1)DTv3_jXiR6H|SQyCoai2=SD-K=|0Y8!P zRKMpE4d^D+nkx8Wj?sOCX-H z4_ldtUrQ^Wcx@Pbm?mqBsFrX%y#JMAiRrd{av>|M z<3^0S7+MMcV7e~uLtT4l@Q$kuM|!{+^j}!P4apYACf}$QD~?RZsl}As~y{#9KP@ zM;cl|6A$2m;@ zbID0k$pTMNzwhs#dNUh86me}}o^ku~3fmi9vEL^iUc~?=&<2?fc8%WqF*Ap&2iTVe zq9|z2!giyC593RzbQqo7)lS5X18mG2udw~d6k1HUN7AreO&FpE=G-1EO1`^exhjFE zkdVCB)5A#Nk?y`ryS*zkSB6Va*diV7!BOA zvYn8<)GY?Da{H|I_o}sY>uRpd}@StceNhBQw!_5Cq zv0%Jp9P~5R7%M%rmUvt&p;+o31!Mgj=Xl>H@SdUbHF#BUuD@oRkmrxbD_>O~&tFjW z2zGZdH}3fOpyk(YWhix!;j8o!RX;Z(=7NiKuZ96}v*^JA_^4>^I3^btLU*qWJKCDU&#+6SOa&xwhWRs& zb!hTjM(^BuC9L}L)Inx!V^XbK7wjinAN9_AEr)-aTvi|?scR?~R?Qk`$YIlolA1;8 zjy8d7yVn@|s`Kcuo%4*zjT&jwnxbrLcMb7wxLcD^az0!8NrdKeT>pJNFUl*K%^*Q5 zV|g3-lm1}t#-O=_a#ebP&C61Ei?GAF3!_mn>e05NFA&VVn1VhZkEos!fBw*49`5gB zi;YY!M8<75b9v(`8I<#(zth5-Ctsh@VCFNsu*Fi;7qhs&_%o0j)RMLXr;b0a%*bo7jkVg`*@FeZ` zywzW$QuGjchU-D$kC%UCGY;ej{kP@b3d!3>RJHf@j!Dftra$ptIbcE@Uz$s6uF;@( zEG!d(=SzTmyDSUqO+m;5L}X*;;#KK${gvUC8PZ`}vwPWxR}hdM37QOshsUHjv}lvhS5$LX4e}TKMTD&cLAFyKK;xh4;Coq3Q*jM-yq?% zXy96BU2odnxoIwUc{lH*+qdQIL%dvCPuoU2#0aOKK3i+u>wpWk*b^;SitLdD=;*h3 z%kZOMaM%RW?bH$)W?>)phRWf6?nhI`{7<(cfZ)xsxM@)h0tXMfy0W*aG!UW?M|heq z1e>fvfT3CSS7ImGxVUD*mcN`2eV6NbKv6LDjqn8~*4o}2TN>UfZ?FsAwm<&!hs4zo z(BO=Of(cW@TP}><^Y%xp?xcW9^SX)VgT)5B!=*7Fp~D|E4;$;LkKeiRHbyGmdAQwY z|6YMVldqU0r9rz8ui|xIiRr75f*I+h?VK7T9@ny8dtm>L)DxE)C+J45U}Mv`_A2Zs z7l0#0?HGBV+@hA$OJ|Nu!R4`qzI#7^uD2(bvW-1#C=X1!;dH}rVgNb})T%1cIjOJd z2wr#X`)+<1Oi9831bM+(dvG-F)e=9^H6HUVUcyMGHZW(hPH^qAMSxMx&IO%BXjPk9 zmo~pvn^*hL()xh?aoW^e)Jpft(g2@YB0#SVh2Pc7qDF-W9nPlkae3G|mq?;rvKQn)D}fslTe>nv3j77>lE5?0?(p zGu3*LgfoS}n|bW-+T0XNAXbi>+uhxPyAL6FH1IPqI)PhWx6FdN6yJ-ucvrp+bfFp6 zD}?|65%s{+x6cWM{-JHQJidN5EF|EDa-G=8sko|cP2=BBye#EJQ3`#~fPv+#ujj+} zMs`aR2G6UkPufQ2f&1}{rw^gtC_Y`*H|S(@Rpn4` z{}QtC;bA4?C!2KZu6F&0G??bXLC@lkFSS+~j&g%On)lBB!)9g^m!ElbsDb;cW!XgQ zr^Wa;C?6jF5cF%xb_vc|+bS5H@^7A)3;@9R!J-b_f3fo5yZG!se#ZoF)@z*}q9$>S zLpr#V=2U;am7Uoqe>GB3_;EIu*3Y~1r22E=ko!3`7vp+F%@kM=cJFHc=*m(7<9ChF z-u2q%)`RS&a~Pf^DCn0`OoU?z+o{CV=$~fNA)AvHt%tj|n-;C~T{gzAmwq8UzR}#Z z&}2#DXzFT}l3~)*SQJ1z2?(j-7QbZCKlyc&alEzpK{>?05*#TuKENyfiegdvDQuqX z8SegLM!Jo_0W2-Gm`HV*w;DDjX|hXxM*jmdML7oVg00ev+W3hMHpQk7uLf8}3p76C zFZS;9Q4M+Q8{{3f(z6R=0l6xQ^by#zu+GgPZmJm9Q}x1m9kN$M_yHk6KB%#GY5_a2Tgae4PQ2m+l}`VbZg5OLLJYravG z{dSeL`wC}&{Rsrnq}0s5a^}x*Kt;>r#@dAHznJ2 zJ9x0HKnzykCl&(uEK~S=I5WT}q5Ye`g;NA@BBfi1C}hK2<0v8019#1O1?&Zjbm&Go z(fV@ce`M-epM^zFso#h4a1V+{;oac7m?(@VZAXrWj#x@!ND2#EP-;6I&U z4HF1bh)#mBv9*?G@)3#L@v!$=6<_6X%Z4j|d=DuuTrGR#F)R0WU@ZcCrTbG}^(~SG z0Q|J-i*EA?xk~_|-aV9X;t(qU1+$#1f(c@xP&oBe^~pPtFdd9qLgY$hP&7H;g4I<- z1fT2ohWu|vt+@U0uB*R`+= z!3SF9q_7jra!%b9oPV2U|L3=$ZO~CSH89{>9eW2L8QEVZkNZl##*Ec54^kTrp5*o( zMX71BShJf-?MW;YZu_532L%(oY1FQkW@zs!*=c4y8v5PtYfx9<^3?uOJDYt7P0_Pl zsyxQA9@0Tf1gry$&6=rF5dg5FvDt}KVI?PsE+L_-R_p^zR?X%YE4w_tOWdiQ^R7ht z#Sg5BwEAi+q0nbf0 zLp@3pc}?fl9;K6MpDoNEY-TPW&u$dV94{4QN!w9kBK-bR10mrA;NW&hSW6wyL>|x~ z@08^W?_>pmr2%rnEa3K&N$^5LbyLk(La4}kcB}hCKQkjxlqm5I@z|3nT@7bZ7)Iz5 z^0}0*{9^I2N$}1ZXQH^XS% z?v*n~tJmyZG~KZ<6fn*7w{uPCpI?tGat~3TJ6SCw&k7@cX41`kWC`GxL6c*I=-Q%EQl{dH^`Gu2a1d5JlrwhUl_Jad9eoVg39T>g6>P?x- zTy|>-U<^|yX+eJN)rN5Ok!Tc)|I;UhQJg0(>eVk)`vFbUoCFizRy$f_)R-A<(%7#* zd8yG~k&NSK{%fj(jjRK89X*wsawP3hP`NDop zH5_v>?pu}HA5M?aIQRH3MFS9GYmv(R+d(9Y(Qg5#aG$H%-&OrzjQ>qxS2BW_)x#zw zKEuXAXEg!bHt~%D-c!Fv#-++9(q%lCUaEdPe4ZQr=L@wXIk|?q@0?Q<*o0OM^xkQv zsVIc_il{$+hD@rzf&h1D!#=cx!4C^`SyIhXu^L3RZuF6=UcK3G){$t!Z&uyZJSnPp zzif#syy}FM+2;4hYfnmNj+>;Y0g(J|c6m|MfKPvOW6_2QIzQ3vBlbMxuJ9sYqIhs+i3(?jueYfW8#HP52~PAMn3BQdGEjYYpL`*F%WzOYXu~wn$=qhn z?_lEb%4{zO-ch&q=mDOCwlhcH)0iH~M_z8Zl=|jkK;6o+LItRHk!&I&hP57%(5y zT0i=UvPZSavLm@_!s}0oCjcm=MN}{dM!*u{7JBXJzmK0cyf}X@bfwweuF{;$N>o=v zszri_OB=pp9v}Rw8qAg_lstna{Tuy7bNkgC@aQN$5Fttv5SMys9SJBX}i-@ZLiWY>AOmKy~;Jowv9rA{Pz~VLDZt^9Y9r%!JeL#w{u>r28}dBJ{Ril-aY{Rw;MghuGxNu zNsXjPq6KmM<|%-B00!!+D+H5y0V|7)sOhJ8+?c@`JzjEU z0;`&Oz5)Z5Dc{jh;?uvyd`V0$;k>VaeL8?&d`8lB05o4XbAk+3LaI>BqDvu-!& z@t^h!AHtn(WC8wwuFPM0khv@m>lpWMp4$8K7gkS7%Na$!Aovd?Ng*!lt0fYn(V`h( zw=)232sWb|VCGX_{}7jF_17`~w~yK0nS)E2i#G|cgl+Q7ut--gm$Ny!Ms0O{y~DVf zLpq;MjLT?uMTrJl7l7gi;AH3DRD z-M;Pko8}eJV!2r^7U|YyjQ&a@ zIfRo^EK08?$^+9lK*W;z=9bo0uC<-5Vc(XhJ7f(&qgCYrMEzfuliAy{c3?(h0qu?= z{>_vUTs(vY5u2K`cvIjLwk%mvl*x;DdrrO>d^cJ=px^8rQN{j5GBXvFyyIBngY6iv z_pe(F>fCrf54hMvcm}ZU`h2%+X>-!k;X9KrmrOS6-E6$_KflwC^Sd;gk7U?1I z{GMUda(b2p-i~o#9l#*LbP0KOB)-WL3SfSp@DSSE+tRTIaq?v)&ZcayxjP=>MTz9M z?iTC<5H-M_TtD{*J1Ti;;m@4I=BX84!`0dY50QVOLZ2xGBIc`3_>Y$)b(~!V-Fs_N z7eN`RKzR#&PA`g7a<0clk3HCk$A@>#_lH!MkGiQy8>V6-s&N|m_&k<(6`6I#ALU_e zeZ!C?UQJDZOSF1Akai>V2pr<%=VoI|QN3_6op37=02LsR6qO6gOlrkHLttP$QR8jq z(u?uEO!(A>Sxz?=>+j&%6-EB2TAMhGiy1nsI=3fH^=x?LA6DTu@~Icij~6OT(lRy^ zcWf{K%2kKZNQ3srJr-l7pF(z5_xCAF>!$KBj1A$#^vtyoAe!9*KhVI&#wNMF9#W&M z@I;vtA>*q@D!e85uL#OSrzweu_Rd(TVwks(MKw%@MHo(a^N<2#eFAm%AA`HbeOP?< z!!ywB{ixgZ+=mud%?!0IxYZ-Y=i)2KwJy7qrmEqyilC zwiA&*6#wP9nI0p1@DW?Wz54*}+i;vgrW3{>rqnql(ny$49I34tnTU%oC4E$?r!MGC z4>a3aY6FmW2pk313`d+ZomaX)O=hN9og&P}=D`Tua@ZVYrQ_Lmn>HouwmlZ9(Ya5%YkGi8B)KgD?cp&8QE;y@ZenjX^s*rZKLL52Z=1V&x z`DVIp>xUfA7xTN1KFZy*X1^Mzkzf|~XN@*<7{Hhtc|OM6BB|OgqT6J%12`rA^{Pc0 zm&d2LhdNxjWzy8#oY$H}saO74{d)`P6%bayDPMlutJESoosJA>4h;6Lu;tPvcW{mv zkPW*2=OHA=f;!3?d&)-E-CQYF&Izv~x66`nHnFpJu?g8Ppy&g+Ympope;I5FH&s1% zkP=R+$32(0M{du45bf-<8e0A0&?e*DO_P(5C?8?hDrcqR^||@M^VJ3&d0+^hjlC_Y zEv%(^dpls08XgqJ5Dunz2u;Eq!ESNA|Y1mc!|HU%Ux?ZdV26uX1BMixZWe3E8zj{=%0#-ALcN zkXC8`Jg%>{aN6kHxq){V^xUV({-Wt&t06V459$OYvvYFHXR^t-nxZTu9)bYLFs zcC_a6sR?s?hxJ&=56SOJYMSyI7w!Jib=L2JU_W-4JSPZ8`KJTngh%bwy~{B=yFbUh zlkvRqyw<-qJeoqo{CmvjUGow{8+9hm9 zBrw1`T38g8;V2H&CCq8p@3u3YTRUH8db7ru_Nv?*`t0kcyVECrE$!^IAD&+cNj9g- zzl-4lvWy!tuf4zSvIX%C{@D&x+Hl+lwIfysd zE>Gf92AU=Ad-BsJ)GkSWmWN*w#aeQ|;t+vF^6k805zQC9ulo_lT!ZI?oWz?Q(bb2mCFN85XD3qI*zg*{4M^)JKqQtIxDCiSsGfW`y=E zDnqvWxsDGjue}^RH`7Y{+8MfXq%E@Q+1-A!Y$+OPoT2zV8o%MNvdW1gObK-;R? zV{!2%$UCwciQOlWED*<$7p{_^JsY#xE*pod{eBJ`H`Z)dNL}sR5}*VJwx@YObe>5% z62|NZhi-~TO1!UoaJaX$e#h;c`CAVnxS5Gat8w{pB_~Qu0isZE{)So7l-%p=I{iaa ztq6Q{ocGv|>mpHk`b3W5;qSqLi)|J3UN)v`@@qERs3GgC(e(aVC8ktb(?8XGN6RZ` zd9}&Q-@9qDf2`8hvwU}Iqr2d%o6r;~X4MP9d)-iZmKXf5G3<87_G#?%?^fE5e%z1R z)uQ)bsk7>_c)7F8O2|YRbelw=ZAnpc6z=wqYBx;9)io*XqIarpNG%M(U)XjFMP9Cd zx_)jTpn2QQMT}$Gy*dYbhzW0!Zk?L)E)N?SwMD}qZ0~QFoCL|#iR}XBC zLZSG9RyQ39>Z0$x0nrgw)Xm*aH`!fFy~@tl&dU!|EVBYta+me2T&&r$;D|_eu(kSgJ0c7m){2$q8_&c+4FEv@U17^;)(rF6yGhU(e~{4 z1)h*gc1_YaFgz%3obS?f`I;wvK_|^)>PFxv#iNCtx7R$C_j~kd$162Iaz1RDn;=+` zUAh-GryCo>s~TDxUbKCpGUL}I_uSMmPDQ~o3Oj;{%i}l`i~8p^Gi?evuJBsNiAV=Z zv}7c}z~ri|U`DisX;_7K18m8(qw zQMiboXBMv4C)aG_cZ-8OJDz=bmIvfVb3X%sMWEwSiY!E6*WEvQn>uFAaUdvq1n@=; zb(OQxs=Sk&*{8BgbzYVl%`>aAX|}EHBtQN*8R{S6>otE+Ck(-4T=heXbW}%b2>zHj zJ~<{m(}bybO8>;Dp^dp*I9w^BkU5g4BSbPJzn9Y2EE-(0EbI?W+}-w%a6UUfyO;iK z?RPY<-xV)#@@p5r_I& z?JwF`cQbI+!pkLEBl5Ejj#Y@V4LRL>r#1vS0a%*O-!*Q{;e+=dt*5>CsWB-FgJF59 zSkPESToPJs0$vsMQf`xQ-?zU{-WkmNK$C@3C6gf7`km%sOY)bDaqww5{Chj5!Bh3R zf^vB#H~P}#=htdWd@jq^n1_j?GcCS?GPlimyTL5n;$=CeCfh5?$ulh^db~2eYBJhS zxUWi9aI%DIA4GTev&c|f>)NQ9#!oWR`0TAI|b%f?>2jz)Z^;pHv}fW@uTKHd6?u%l*|HmBP~g|31qt_8igf8CS}$Ku5k|t zn+w&C_-6)Gc)YTWJ0ofe6xd;X%AG3d*J+-KPjEnBM^+t}A5G>8-$}_mk`6!mTmRZv zFk45}eb|dnLA#y$l|Pz%7iU!&G08Q_vibmyaWA!wUymDZH^ld2BP0|VKJCCD3K zlmb|=?~NC~M{4fgj^sw?e+VeWWh#s#%PL$&jft|6SpCnd`-$Q|k4+{}0$AY#3nk)*Ee z1vR^tfRC+z$i}SW%=rYS74Q*BB9C?>%zI*4VD@F$p?`KRhd+T}Xb%tumONsr*#E`t z-9niE7H-}?-ipaJ>#qj`rF1;0 z??XH`qvG|n6BIDSH;O&L_qm?jal9D_1tgDyppZ_*9#P+dW*<&vPFhSKm#=vgua3%{ zJ*(UpNMFqk*i}oI?8Rl4y#M8GlKZD6GmJGCh5$R$>=>GH`5>jMI6&4A`_Vdeh+zg zyu?HxDvP|oisba(x;?Yesu0P#bSaYW#A|#M8Vr7&h+sBXX){6di@OhB!qVlB8L*^_ zmBcNkrK@Ml=(bVL>$56KR}Avo#`|R>Y8E_f0zGqM(XLvWOD8ahF064ZRx}y^#i7te z_WFyCUBR^J$Mlr&J(7Oqr#3Q@^4X(i(mGz0{8oZ`(;8(&X_q!v9QuZ%4I1iL zlGcF_-;J+qt+%6Uy-39mLGZD+V~f~dY8-CRS{`jqceEaGG5n@Cn1HuS&riE-`p-ze zh23s)&GEvw=Cjn;H(HKK9c>O`akvMy+-u65>NL$j#w?SY-|OLOA<_Q!dvU3ta5X1@ zK5~3KKd2JEv!$bP#*#ay)PIx-bn~ugI3o=(|I{%Gvv}hOUg>(nRqEQB?&T$$^34u7 zyg~6rU?F=%UeE=Y04!3%Y*)U@alESJG#-o6FS(z@UCW_^hU-PWx61$y`8#Vz17F1< zSxl_2I^S1p=;IBI{h&1%n>|^y8nXH>bXqeW;l2QOh|E~mf}>`;?rp|PfAXqZ)cp^K zb&4pdh=fRjuEu z-`bH4F9vaj7Jnhq$G3uwZ6Cz*&W!}ys5LuBWyI5qKD~I{SuY`>DSVFzV zi~cB*;#%mt%)GO;J*jv#N6n--2^Yc->&i+S6)fubf?%HH{LS~zpoF5Rz_sts8S7t} zkYb-cp(j?O(`oaOK0Eh<-pL#kJM3A@iuu~yk-YLJL}mKheyXOE^-R$2!B~rmO>*r6Thh_rb@Z$;@2l4})KY?qX%imx+y2eUilpsk8XEsqGr<;&xyc7jX8te@qOZaK zYqITN6$3($%@`AjF#~XHiHZ?q_F+lBy7(Ih{&a^%9EB)i&}JrQZ3m6gwFY5W2nhC9 zrYI(_pP??$1>@g%NXfsdbH{mzcgUROP)WF;6r<#<_C>c2;$>Y|+M;D>JfZkmH!Yuo zz+TyD!xhasPUIjE)NQI*fiQkpU0-DwHNMw^Hn5SMj*L=2b>UreL2`21-HyfG)lTy2 zP|;FNaqcE^kVsUvwK80(Z)gcw)V8j3jer47{2BxLNlR0{A->-NCI^|XX6e`QGcxp~ zS0O@jRBczn1;vkeA)oZ$&<@1Fx+Q1dL3zX_`_+<&3pX`={t9Waq*A$Wf5h@YU8MvK zw4Hn3m-KbTb=3-Ym6Y7hQjd}plr5ApHgAiK9wxq*faE)AqTBpwXf?Jx`BNg)FvD)r9hcq0e3H$y>@NQ#Kzehk&wSv;o zuiWFO+y2m~t}b03MD(rMp@y21iIPKliT~*6|7lOuVHyIamW%us*?}pgMyMEJgu^M{ zNo$tXs~Va9ijK7osEcNTRu~Ms1t)i*4P2C8&q7Z;Kgb1amY7(c;@nHb9Y;_ifhkua z5}Xv;33%=}VRLN1k7gFD`P+1KBISdILG=QFh|}^1q8-uzf)MO;913U!f}SM0jlB9Q z&Co9u3g{{SuS%RH^^OHvwzOF&O9Hg3wejNo5%TLmR9N+ zC>Y-jMwbZ$19^onMFLM7fRIpqe@kCyvqqr|?t$;j{UxA8iu-`3yDzXW7OS12%d&p; zE^x?1&!JX+NbG~t`VYMd^QaWd&H--mBuy5Jzbamf-8v;>_Qq+5G*;0hwkvX$ml$I-UOw!CM zyi-ao47Vu-IyBWkbQ0IJ_1m#TH;Y_B-RElTJi%vlK~<${MgJn?TOHeu1to3kVj1$m zmDREx&A_$`FDi(D zzx{|2in?=m_=PJpFh}339>ud6OmM^_GoYCQzM^06 zz|GF23m`aA*E4+pyHA12K4|?iq?pEaWrfY{il9onJCUb(vyoQ-6S#qPxhusbO*Yxfu%LFutG84SsKjvK6t;Ew#A7&#_wb zTpp+U0>Cd5T^=nGxreSz;6S^vJ%@abGvGIXPE1-q%E3dHekp0!j=+aCdrlQeReh-) zUD@Z%vo*J5(T$cZ_7-B?f zEL@PFiXL4g$g$pmj45upEB%q;i!iB;GkD)22UV+{HP$LTqX`B!eKWlE42(b!4ADuU znR1uEnv2=Q*1Bptg23sL4|60%1(hM{cT4(e%S&SUWho{%`PqdNGDhXc%-z{oN3S;GN&>lO>s)iQUN8=oNz!JoJh$b z=RD?AYI;gD2NH6~F+r@f!kN&J9MJrj8K_t)l9Kw}=lz~@y`Mkf{o!0(>}&t9_XT@B z&$HIO*K@CXT}{%vDyOHK2Rbs~a<41rnW}bzxHijhv5H;0;m6$BU9YxNb6jKis7{Z@ z`NWhsZ=Ml-1rsi$PO*jGlOAHJQ=%NUxZNl5^sC}TK^yJrzQptO&BSYRf1};p*DJ6D z?;#VvmIN&WR7<8DVkSoiqRkkTaBGsF^cp|xFH1hhng|$|&`$*WNuS5)sXcRrCqs6B zIw0-m2kU$8*?=~phez6Zr#YfE))Os``X-EyT`d>*yw~&FNAi|S^QZwTQ$k(@GoIzT zL8Qj?#CHqY;+GlJHr%{L>mEJraaHsEM}Ipgxi@ywaaih`$o(dCeYI+EEteWx;75u< zw)N)u7hZ7gIZ~+FM%?&lL^m1;NJ|6yr63uEB);?k9n!{GfU7ErGM1iBNYry>h9;^0 zjc5(-%=PFZ>3*1;ZU<3Bbw&d5${x(y97ZD8?vis_C?h@3zIaYw+9UzAxl5$6Sq&n0 zXYYCGL`ivduwCEG>6Ve_y)clmq(c1zr{Da>4$C<_t+r5qQ=ph?`*LU6`!a7uU*Llh z-SMI{G!$022iI}>cEr!O2VGm9i^AmeL=sz$yb%rj{$|>{S`rxvci(x7dJ1K+o>-E& zGvCiPC&V((zvl?DnvP})&pHwU00oDG1g{Ct=!=ftFJ$y~=Y`4d`-ruEDDA3qU%s;8 zAMbIoEBuH}PH26Fry-IA<#S^@Uf+;OdLv=r=m*l+=QJwOa&y6jez=?40G4#u6+7J| z-ry<@c0JLRaQ@_HeZN1&^t#LK zTWeV#|g}i>ACo()f@byg+ zO}FR3?$o;>(Tm*KK#^pywD$u)7xNzD!?p#_^N8B+OdwNQI<@s(B`#y75gx|&$(K~! zp_8b}$xJw-XX8et&^uJYstnYQyZ@W}ew*IiGH(R}i|^z|8w30D1f|48$G&~ZVM9Ht zqj~BY_vUX-Rv%5VJQyqvKA#glN>x{|m8&tzNFf&A4Kx{hEUyaJ)0TypmnErY?v=dT zD=xP(ako3f`54h-AGiq&{=DghgZ0vDvOXcw)G5OkPIZ>W9 z1npd%lpY8dPk9p5DRShVDohWReEG@w0`zjQE$D!Gg4k2Bh(>wU@{_uL)ky~x8Is^2 zQ{BVAjk&@-(=oCOdD0>eyNy2_wLJuX470CgC5bAP^v%7$*0?!v-Rw4?vfc6HeV;MY zR03n43Qi5Z`+PDxJDU!mt$mWxBA?_L@4elW5_U{0%*vOZ zr7hkPop-z8VE7>=;yJpAYpGas!r?#tzI;HT*eeqzndSxdiP~*f{$aLMOh@Z$r;EJS zbA0ezRjm{34KnPhz{}Fq^x-YiPj(O0>vI|^4k)IICwqvebUP#fD_^|Zv@!A$H#ZG* zJXzdK`tk1IHPK4_P_a9DlH`wcC%W0K?fWywXu7#DIq{0jkkCwHbsLzdCPPd@I?s`; z-IYfSp1f9aHhS*W_U5J_zBTN6?Tww-k|?{JCdO|$&gQ)m)w@I`&-%j#sSC;?<9}l= zV4u>d;Nu*~`;%(9-wsvzy9b)y5Kv+Wz!knfdJvrJcp$0C4hV1lNyK1d#n5EMTxY_- zVMq~dSCRQAu~1~`PWe0CVnHTFb{26LQZ3)9?tXY}{!W;5=G7Gs?vXzeiX;hmRY0Mmq{WJZ4bMw=f8GkF zw&Gp~Ue$9J2dj!)sQ13o@Ee@Zjtam1YnmSaW7=#hLM3*mk;ylZ_U^2}@Vg=keh~u& zLAi`n@J%(lULVQ4tN+DC$R}1sD++4%KJZ95KNJ#FZ`f)q75c3D_aYGtO!9D2hzP zQdG53z-`noPd?iRURrFsZ1E7l{~ z7K1&n{&eRRF}$pKAra?M4-vJqOZL7W_1)r-IHvzTleAA_-|anF6+4q!E~Mt_sG%$# ziakFN*5clR?ZlG^&0YLY|%x@qGPvdKPd*&UUfa+IlOJQ_anZYWnI4 zlH%SLxn&o}Vf(ILI(Q-QoaHC>8-K7^-gw3kfOim^#dd zg-S(f%T6(eVv$4O-}F30^1QqBB;`_r#l>DH8$6vo{`#qFe$5>neFVNOzQiT~kktG2 z`HwFA?^$6ErY-kd!WSq0s29oU(d%UBd*U}M=TGS-Y0E$9%`q%g1L?cMDQrg4E|o1V z5@?rVJa}=NCBX+nD1rzr$Xz*9p_sBn}@U_iGyfI&~$*%9oOm#(9eNAAIa^{WKsfUL| z+``%x0_(Lw72L#2|8dE&GP6qTc+y=UVKf-d$k!p6hMU)amB&0xJ@P_Cx<>+*`aDwq zu_b*os@^Qi$#}SYWo39Vsx=ZPGd6hOH-$t;QE$ogd1USF*?UN&4s(t;ICPf(Wug9j zPb_bEbbWepytIAu&t0XrA5m6h4W;j0v-B(2D=~67N!8e2hdFKI%F7ZKEHeGRuTUpC9UdR=Z$pq!9UEyUa zj+s}H%^zw+Hlpk!doC5dQN^F&hc);cd^3k1Gmx`xE|cf7caw=mpVS>e&M@l?@7DnR zPA(z`<~J0jzrQ7FSPEf$+MM<}{lNTz`J122+4RnrJF5Oz%UXI^X*s=gM(J+tIB0zD(|_*bhD zH+V79E885f6x?iJSd-4nZNfpRacruuIyFoa3Hx;1f6X>snY&@WQxX9sCSU?{yAzwHj#CL$s z3*tA&&u+)HsUT|O?zdpv8G@Lz%-ZVFv9<=na06|cLgrn*AP+76zIql44UH@$VhYIP z84E#?U_ZF#p4YYEQu<>Cb|- z3@oD2!j-Lv?ZvHD;nenesglz4Y8TjPgmmmxTR{}n6Nx09u^@hM{RCyh*|VA7E(`i2 z=+sgOV#zbN5tpgFz8bxh^^Mw>T95J<6M^~fkV3T}$b=Ek-37T?hD42;pX za>AT>N+i&bsg~@l!C41v6?rDb0=&oM1RGl3^DH>1qQ!S93g#Dx`hjCAWmNYZ#0DK7 z8gg@fi!xzO*R$ab%e~)jJ_|s$b^;h0Lqi=OfNgLm<8oQ9j-*O?6E?gB=h%%%F=9hz z$&>9FbH`_AhUcgh*%$NIniu%1hA|tromgiZ^koYODp)G{_Ph4ApQyg$)i%M^D1*UA z-#g4`-G~ZOjA8Rqeyy^-)IBsk5?VW7Hkr45Ed|fwp;%o(BA^7zf{w$lY>~}hav(D3 z!StesC~PEswM3U7i;b};<`6lxTsFG2Z*7dC|M-RCNdq6R3V3HrbKxDEUOq%d%U0JSa6L_AGXFDe=#sA~m-AmTV9}SeUcpv&7 ztW9Pkvk{fyQ*`IR;3yrl+vp&{a)x}GGrmdLoypAbr$Fk`tewctQYi*Ub!qpNsOWsG z)hg=pYzG!oAw{|3GV}1#MZsH#g(6gkhtfQePS0u=WUaaiCf9HI2P~llP=m0&Akd>m zVDL^VR1>Z&H|yFnTi2a&K8ZNl@D` zyw;&*AX`4k!CF8wZUmB1BeB<0zSbV8J|;sh@Qrf9X<2Y5YhL)u$hR3XPLyE%7e+d0 zCv%74V1;`+bGH0RN9mQ;RJ_(7$ zylv1C=`Q15i+482YlT5nM9f3ygwXYON_jn21^r5*8a{SXM%Gm?e`(HqTCnI@%X|Vy&79N`wB6CS45K z;J#_jLI1f23$x9^PHfZX2$HYKV{jI_Ssx!3waBH@OJ&2&%)D4*aGfAB!J_OT+Vtoe zIyavY6VnaWnh(Ec4FY}6sXS4QNA)^1`&8k{vu@Lu16l0hM&Dpm2C=61A*X00Q2oJR zby2XU#mY+rtlwc#N7Ls&R+NCX4kL(TvhPQ>%i>G*u#e@JVHI8SFM?T8XjUFZM#k{Z#A27Yy8nOa)py{bvk^8G>T69$aQLQLtiOX5{d5(1 zEv`fHWWhp?CAj2+kuPUpo{%}p+<$VKk!;CimjhC{vTX&6JV49cDTst$CjYvGbFgXc z%x;1Nu+ZoWT2HYthu^^#g0w6y3OP5~0yfkow5N=Nus-eOz)S`R^i?*Vxr6YJWeed{KG@g zq%NZcD6MB2H7>$HwZ(MlvkU~-#4TD+tXOc}T9=Z+IhJEQ@b!e>! zbX?L&IbqYJl+oN8jI8(?rlB5IgFSlYxDt30??kHL-#Q&eeoD*g5LCz#gW##G zt@>Rkr`kI+dAc^tK=istv`a}5jqHkRLVVTu&rmXMs`Q*$-EC)n_g|48Sb%nd zIeJ#L(DR~|6VA!>3l{BJCTE4kmWX{p%69|JNxz{A zQN?S14*h%GImMy)7#uyKe=>vrpFE6WflNk!`lU73UuZ&km9=Jy&qDg;euv0F83tp2 z8N<~dgG4qzb)EGn;}PZFxn&S_@>dwe_@%qA!js8HkRbY7<#BLsAM|n5K+{LO(*Rjn zSrAb>|Krw#;Ozpj!Dq@S-MXZQt6&K$X1#XZlwpw0av8lM(Aw_@MZvb?PI;OHAi-K6NQQ z=i_jBo6tlCi#8zgavvdJPHqNZC|6VKN=%;FI_L$+nnfU~<2jfO+f3QTHc=J#O| z;lmO>zPDf3k?D&4l71-}6O~=_YOmGcgK*7;$_S0fDcl#MnR=O$qTuKaG6ES%=am%A zbGSvWI5^J1RQ=bD_p%wb0ceHMn`nC%xG!yn>9Rz@#UJ^2)@xiWYfY|TR%5x zQ*pvIdVJjWips04Xd~(pzGV@g z<39AvhO4}2SGnjmO!l{`3hN=^mp0pVO%-#&1@A8o3}!~w6ySS<24J5!Tm{EZ!whsR zfD5f)+m9)xO#wc$d-C%knuo1U8yV>Iu=4kF72Jg@P<9{k6ZoVv3+6Yb&^pEeP=ofs z0)p-k*oSO?C}oB8Dy)kf&{)hF>Oizqa3b1)T4q3MJI(ADU*+5u=Y&`M_6#LE{?^KL z7fGkmS|R$#!j1K;N(H`#wOY@9 zXokYT=C5jBA4iQ&9+_HDQN)>S)~YpPDzG-~6w++=bFMkk9H!{>AFIdPD-c-ZdT-Me zoz@WCnN?mFkggLF%zmw9UyuJeOzZ$zqTTKzx5zCRuCCQ!cadOoVU_>V=ddI0#FZbN-UF^|7hLR?z-hjr z?h)dQ#muw(Y~f^9kN-Ou&bmA62F__}&%0T9euP^ig`%#apxIQ4t>8IRu#>kpnL@M8 z*_rF{vD-ASbHA1eb@4xc45VH6qHcfXEK>NZ$60>`4bYaCz1Ps{$6EK3W$n6=_QWyh zO!HG4cCIqkx)HyoaUsjY9-7s0+r;-hnnI|{2k$3J3@pq!m4>9bfSU!+JgMYPdj%UW zt>p`KZ~)Jvphm-kkBZzlTJs%VuVRIOE8x#~ZFSMiw!2tno4=U90~(`0*+4PH*-0wJ zlRDTeqXq&cY|{%m^a6MsYM&H88SligiVjwHh4&U;#%Za`#GE7-KsuENU~gf9Ek#tz zqp0`E%e}OjAavV&OQ)KtBIyFUcQxk6DiD}qisMM0bX0^~OUdTJ~D)#3r ztM1h{hpo~PFI=P%a9-%T$uBeDmcPd63J?e)1s$a%djm#Bcp9 zd=)2{1HOHAK)!7Kf9{{2A=P!nwMRE9JN*?$KEKie2ARLg?E>8d|065KR01h`E z0M{jyYXhf>{(oJn@$aSoTHs#`{A+=KE%2`e{ - +