From cef2d3afcae87230dbe361ef48ecb5dad50ad0a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20d=27Herbais=20de=20Thun?= Date: Tue, 10 Oct 2023 11:29:05 +0200 Subject: [PATCH] Gradient Part 4 - Conic gradients (#2325) --- crates/typst/src/export/pdf/gradient.rs | 263 +++++++++++++++++- crates/typst/src/export/render.rs | 2 +- crates/typst/src/export/svg.rs | 178 ++++++++++++ crates/typst/src/geom/gradient.rs | 198 ++++++++++++- crates/typst/src/geom/mod.rs | 6 +- crates/typst/src/geom/stroke.rs | 1 + tests/ref/visualize/gradient-conic.png | Bin 0 -> 23950 bytes .../ref/visualize/gradient-relative-conic.png | Bin 0 -> 88675 bytes tests/ref/visualize/gradient-sharp.png | Bin 89427 -> 30371 bytes tests/ref/visualize/gradient-stroke.png | Bin 11463 -> 15249 bytes tests/typ/visualize/gradient-conic.typ | 25 ++ tests/typ/visualize/gradient-radial.typ | 2 +- .../typ/visualize/gradient-relative-conic.typ | 29 ++ tests/typ/visualize/gradient-sharp.typ | 8 + tests/typ/visualize/gradient-stroke.typ | 13 +- 15 files changed, 694 insertions(+), 31 deletions(-) create mode 100644 tests/ref/visualize/gradient-conic.png create mode 100644 tests/ref/visualize/gradient-relative-conic.png create mode 100644 tests/typ/visualize/gradient-conic.typ create mode 100644 tests/typ/visualize/gradient-relative-conic.typ diff --git a/crates/typst/src/export/pdf/gradient.rs b/crates/typst/src/export/pdf/gradient.rs index 18b4de367..1123b53e2 100644 --- a/crates/typst/src/export/pdf/gradient.rs +++ b/crates/typst/src/export/pdf/gradient.rs @@ -1,14 +1,19 @@ +use std::f32::consts::{PI, TAU}; +use std::sync::Arc; + use ecow::{eco_format, EcoString}; use pdf_writer::types::FunctionShadingType; +use pdf_writer::writers::StreamShadingType; use pdf_writer::{types::ColorSpaceOperand, Name}; -use pdf_writer::{Finish, Ref}; +use pdf_writer::{Filter, Finish, Ref}; -use super::color::{ColorSpaceExt, PaintEncode}; +use super::color::{ColorSpaceExt, PaintEncode, QuantizedColor}; use super::page::{PageContext, Transforms}; use super::{AbsExt, PdfContext}; +use crate::export::pdf::deflate; use crate::geom::{ - Abs, Angle, Color, ColorSpace, Gradient, Numeric, Quadrant, Ratio, Relative, - Transform, + Abs, Angle, Color, ColorSpace, ConicGradient, Gradient, Numeric, Point, Quadrant, + Ratio, Relative, Transform, WeightedColor, }; /// A unique-transform-aspect-ratio combination that will be encoded into the @@ -83,6 +88,38 @@ pub fn write_gradients(ctx: &mut PdfContext) { shading_pattern } + Gradient::Conic(conic) => { + let vertices = compute_vertex_stream(conic); + + let stream_shading_id = ctx.alloc.bump(); + let mut stream_shading = + ctx.pdf.stream_shading(stream_shading_id, &vertices); + + ctx.colors.write( + conic.space, + stream_shading.color_space(), + &mut ctx.alloc, + ); + + let range = conic.space.range(); + stream_shading + .bits_per_coordinate(16) + .bits_per_component(16) + .bits_per_flag(8) + .shading_type(StreamShadingType::CoonsPatch) + .decode([ + 0.0, 1.0, 0.0, 1.0, range[0], range[1], range[2], range[3], + range[4], range[5], + ]) + .anti_alias(gradient.anti_alias()) + .filter(Filter::FlateDecode); + + stream_shading.finish(); + + let mut shading_pattern = ctx.pdf.shading_pattern(shading); + shading_pattern.shading_ref(stream_shading_id); + shading_pattern + } }; shading_pattern.matrix(transform_to_array(transform)); @@ -258,29 +295,47 @@ fn register_gradient( Relative::Parent => transforms.container_size, }; - let (offset_x, offset_y) = - match gradient.angle().unwrap_or_else(Angle::zero).quadrant() { + let (offset_x, offset_y) = match gradient { + Gradient::Conic(conic) => ( + -size.x * (1.0 - conic.center.x.get() / 2.0) / 2.0, + -size.y * (1.0 - conic.center.y.get() / 2.0) / 2.0, + ), + gradient => match gradient.angle().unwrap_or_else(Angle::zero).quadrant() { Quadrant::First => (Abs::zero(), Abs::zero()), Quadrant::Second => (size.x, Abs::zero()), Quadrant::Third => (size.x, size.y), Quadrant::Fourth => (Abs::zero(), size.y), - }; + }, + }; + + let rotation = match gradient { + Gradient::Conic(_) => Angle::zero(), + gradient => gradient.angle().unwrap_or_default(), + }; let transform = match gradient.unwrap_relative(false) { Relative::Self_ => transforms.transform, Relative::Parent => transforms.container_transform, }; + let scale_offset = match gradient { + Gradient::Conic(_) => 4.0_f64, + _ => 1.0, + }; + let pdf_gradient = PdfGradient { aspect_ratio: size.aspect_ratio(), transform: transform - .pre_concat(Transform::translate(offset_x, offset_y)) + .pre_concat(Transform::translate( + offset_x * scale_offset, + offset_y * scale_offset, + )) .pre_concat(Transform::scale( - Ratio::new(size.x.to_pt()), - Ratio::new(size.y.to_pt()), + Ratio::new(size.x.to_pt() * scale_offset), + Ratio::new(size.y.to_pt() * scale_offset), )) .pre_concat(Transform::rotate(Gradient::correct_aspect_ratio( - gradient.angle().unwrap_or_else(Angle::zero), + rotation, size.aspect_ratio(), ))), gradient: gradient.clone(), @@ -301,3 +356,189 @@ fn transform_to_array(ts: Transform) -> [f32; 6] { ts.ty.to_f32(), ] } + +/// Writes a single Coons Patch as defined in the PDF specification +/// to a binary vec. +/// +/// Structure: +/// - flag: `u8` +/// - points: `[u16; 24]` +/// - colors: `[u16; 12]` +fn write_patch( + target: &mut Vec, + t: f32, + t1: f32, + c0: [u16; 3], + c1: [u16; 3], + angle: Angle, +) { + let theta = -TAU * t + angle.to_rad() as f32 + PI; + let theta1 = -TAU * t1 + angle.to_rad() as f32 + PI; + + let (cp1, cp2) = + control_point(Point::new(Abs::pt(0.5), Abs::pt(0.5)), 0.5, theta, theta1); + + // Push the flag + target.push(0); + + let p1 = + [u16::quantize(0.5, [0.0, 1.0]).to_be(), u16::quantize(0.5, [0.0, 1.0]).to_be()]; + + let p2 = [ + u16::quantize(theta.cos(), [-1.0, 1.0]).to_be(), + u16::quantize(theta.sin(), [-1.0, 1.0]).to_be(), + ]; + + let p3 = [ + u16::quantize(theta1.cos(), [-1.0, 1.0]).to_be(), + u16::quantize(theta1.sin(), [-1.0, 1.0]).to_be(), + ]; + + let cp1 = [ + u16::quantize(cp1.x.to_f32(), [0.0, 1.0]).to_be(), + u16::quantize(cp1.y.to_f32(), [0.0, 1.0]).to_be(), + ]; + + let cp2 = [ + u16::quantize(cp2.x.to_f32(), [0.0, 1.0]).to_be(), + u16::quantize(cp2.y.to_f32(), [0.0, 1.0]).to_be(), + ]; + + // Push the points + target.extend_from_slice(bytemuck::cast_slice(&[ + p1, p1, p2, p2, cp1, cp2, p3, p3, p1, p1, p1, p1, + ])); + + let colors = + [c0.map(u16::to_be), c0.map(u16::to_be), c1.map(u16::to_be), c1.map(u16::to_be)]; + + // Push the colors. + target.extend_from_slice(bytemuck::cast_slice(&colors)); +} + +fn control_point(c: Point, r: f32, angle_start: f32, angle_end: f32) -> (Point, Point) { + let n = (TAU / (angle_end - angle_start)).abs(); + let f = ((angle_end - angle_start) / n).tan() * 4.0 / 3.0; + + let p1 = c + Point::new( + Abs::pt((r * angle_start.cos() - f * r * angle_start.sin()) as f64), + Abs::pt((r * angle_start.sin() + f * r * angle_start.cos()) as f64), + ); + + let p2 = c + Point::new( + Abs::pt((r * angle_end.cos() + f * r * angle_end.sin()) as f64), + Abs::pt((r * angle_end.sin() - f * r * angle_end.cos()) as f64), + ); + + (p1, p2) +} + +#[comemo::memoize] +fn compute_vertex_stream(conic: &ConicGradient) -> Arc> { + // Generated vertices for the Coons patches + let mut vertices = Vec::new(); + + // We want to generate a vertex based on some conditions, either: + // - At the boundary of a stop + // - At the boundary of a quadrant + // - When we cross the boundary of a hue turn (for HSV and HSL only) + for window in conic.stops.windows(2) { + let ((c0, t0), (c1, t1)) = (window[0], window[1]); + + // Skip stops with the same position + if t0 == t1 { + continue; + } + + // If the angle between the two stops is greater than 90 degrees, we need to + // generate a vertex at the boundary of the quadrant. + // However, we add more stops in-between to make the gradient smoother, so we + // need to generate a vertex at least every 5 degrees. + // If the colors are the same, we do it every quadrant only. + let slope = 1.0 / (t1.get() - t0.get()); + let mut t_x = t0.get(); + let dt = (t1.get() - t0.get()).min(0.25); + while t_x < t1.get() { + let t_next = (t_x + dt).min(t1.get()); + + let t1 = slope * (t_x - t0.get()); + let t2 = slope * (t_next - t0.get()); + + // We don't use `Gradient::sample` to avoid issues with sharp gradients. + let c = Color::mix_iter( + [WeightedColor::new(c0, 1.0 - t1), WeightedColor::new(c1, t1)], + conic.space, + ) + .unwrap(); + + let c_next = Color::mix_iter( + [WeightedColor::new(c0, 1.0 - t2), WeightedColor::new(c1, t2)], + conic.space, + ) + .unwrap(); + + // If the color space is HSL or HSV, and we cross the 0°/360° boundary, + // we need to create two separate stops. + if conic.space == ColorSpace::Hsl || conic.space == ColorSpace::Hsv { + let [h1, s1, x1, _] = c.to_space(conic.space).to_vec4(); + let [h2, s2, x2, _] = c_next.to_space(conic.space).to_vec4(); + + // Compute the intermediary stop at 360°. + if (h1 - h2).abs() > 180.0 { + let h1 = if h1 < h2 { h1 + 360.0 } else { h1 }; + let h2 = if h2 < h1 { h2 + 360.0 } else { h2 }; + + // We compute where the crossing happens between zero and one + let t = (360.0 - h1) / (h2 - h1); + // We then map it back to the original range. + let t_prime = t * (t_next as f32 - t_x as f32) + t_x as f32; + + // If the crossing happens between the two stops, + // we need to create an extra stop. + if t_prime <= t_next as f32 && t_prime >= t_x as f32 { + let c0 = [1.0, s1 * (1.0 - t) + s2 * t, x1 * (1.0 - t) + x2 * t]; + let c1 = [0.0, s1 * (1.0 - t) + s2 * t, x1 * (1.0 - t) + x2 * t]; + let c0 = c0.map(|c| u16::quantize(c, [0.0, 1.0])); + let c1 = c1.map(|c| u16::quantize(c, [0.0, 1.0])); + + write_patch( + &mut vertices, + t_x as f32, + t_prime, + conic.space.convert(c), + c0, + conic.angle, + ); + + write_patch(&mut vertices, t_prime, t_prime, c0, c1, conic.angle); + + write_patch( + &mut vertices, + t_prime, + t_next as f32, + c1, + conic.space.convert(c_next), + conic.angle, + ); + + t_x = t_next; + continue; + } + } + } + + write_patch( + &mut vertices, + t_x as f32, + t_next as f32, + conic.space.convert(c), + conic.space.convert(c_next), + conic.angle, + ); + + t_x = t_next; + } + } + + Arc::new(deflate(&vertices)) +} diff --git a/crates/typst/src/export/render.rs b/crates/typst/src/export/render.rs index 0b26045ef..6fd47387d 100644 --- a/crates/typst/src/export/render.rs +++ b/crates/typst/src/export/render.rs @@ -735,7 +735,7 @@ impl From for Transform { } } -// Transforms a [`Paint`] into a [`sk::Paint`]. +/// Transforms a [`Paint`] into a [`sk::Paint`]. /// Applying the necessary transform, if the paint is a gradient. /// /// `gradient_map` is used to scale and move the gradient being sampled, diff --git a/crates/typst/src/export/svg.rs b/crates/typst/src/export/svg.rs index 1aa5141af..25cb75197 100644 --- a/crates/typst/src/export/svg.rs +++ b/crates/typst/src/export/svg.rs @@ -1,4 +1,5 @@ use std::collections::HashMap; +use std::f32::consts::TAU; use std::fmt::{self, Display, Formatter, Write}; use std::io::Read; @@ -17,6 +18,11 @@ use crate::geom::{ use crate::image::{Image, ImageFormat, RasterFormat, VectorFormat}; use crate::util::hash128; +/// The number of segments in a conic gradient. +/// This is a heuristic value that seems to work well. +/// Smaller values could be interesting for optimization. +const CONIC_SEGMENT: usize = 360; + /// Export a frame into a SVG file. #[tracing::instrument(skip_all)] pub fn svg(frame: &Frame) -> String { @@ -76,6 +82,8 @@ struct SVGRenderer { /// The `Ratio` is the aspect ratio of the gradient, this is used to correct /// the angle of the gradient. gradients: Deduplicator<(Gradient, Ratio)>, + /// These are the gradients that compose a conic gradient. + conic_subgradients: Deduplicator, } /// Contextual information for rendering. @@ -131,6 +139,21 @@ struct GradientRef { transform: Transform, } +/// A subgradient for conic gradients. +#[derive(Hash)] +struct SVGSubGradient { + /// The center point of the gradient. + center: Axes, + /// The start point of the subgradient. + t0: Angle, + /// The end point of the subgradient. + t1: Angle, + /// The color at the start point of the subgradient. + c0: Color, + /// The color at the end point of the subgradient. + c1: Color, +} + /// The kind of linear gradient. #[derive(Hash, Clone, Copy, PartialEq, Eq)] enum GradientKind { @@ -138,6 +161,8 @@ enum GradientKind { Linear, /// A radial gradient. Radial, + /// A conic gradient. + Conic, } impl From<&Gradient> for GradientKind { @@ -145,6 +170,7 @@ impl From<&Gradient> for GradientKind { match value { Gradient::Linear { .. } => GradientKind::Linear, Gradient::Radial { .. } => GradientKind::Radial, + Gradient::Conic { .. } => GradientKind::Conic, } } } @@ -170,6 +196,7 @@ impl SVGRenderer { clip_paths: Deduplicator::new('c'), gradient_refs: Deduplicator::new('g'), gradients: Deduplicator::new('f'), + conic_subgradients: Deduplicator::new('s'), } } @@ -572,6 +599,7 @@ impl SVGRenderer { self.write_clip_path_defs(); self.write_gradients(); self.write_gradient_refs(); + self.write_subgradients(); self.xml.end_document() } @@ -681,6 +709,87 @@ impl SVGRenderer { self.xml.write_attribute("fy", &radial.focal_center.y.get()); self.xml.write_attribute("fr", &radial.focal_radius.get()); } + Gradient::Conic(conic) => { + self.xml.start_element("pattern"); + self.xml.write_attribute("id", &id); + self.xml.write_attribute("viewBox", "0 0 1 1"); + self.xml.write_attribute("preserveAspectRatio", "none"); + self.xml.write_attribute("patternUnits", "userSpaceOnUse"); + self.xml.write_attribute("width", "2"); + self.xml.write_attribute("height", "2"); + self.xml.write_attribute("x", "-0.5"); + self.xml.write_attribute("y", "-0.5"); + + // The rotation angle, negated to match rotation in PNG. + let angle: f32 = + -(Gradient::correct_aspect_ratio(conic.angle, *ratio).to_rad() + as f32) + .rem_euclid(TAU); + let center: (f32, f32) = + (conic.center.x.get() as f32, conic.center.y.get() as f32); + + // We build an arg segment for each segment of a circle. + let dtheta = TAU / CONIC_SEGMENT as f32; + for i in 0..CONIC_SEGMENT { + let theta1 = dtheta * i as f32; + let theta2 = dtheta * (i + 1) as f32; + + // Create the path for the segment. + let mut builder = SvgPathBuilder::default(); + builder.move_to( + correct_pattern_pos(center.0), + correct_pattern_pos(center.1), + ); + builder.line_to( + correct_pattern_pos(-2.0 * (theta1 + angle).cos() + center.0), + correct_pattern_pos(2.0 * (theta1 + angle).sin() + center.1), + ); + builder.arc( + (2.0, 2.0), + 0.0, + 0, + 1, + ( + correct_pattern_pos( + -2.0 * (theta2 + angle).cos() + center.0, + ), + correct_pattern_pos( + 2.0 * (theta2 + angle).sin() + center.1, + ), + ), + ); + builder.close(); + + let t1 = (i as f32) / CONIC_SEGMENT as f32; + let t2 = (i + 1) as f32 / CONIC_SEGMENT as f32; + let subgradient = SVGSubGradient { + center: conic.center, + t0: Angle::rad((theta1 + angle) as f64), + t1: Angle::rad((theta2 + angle) as f64), + c0: gradient + .sample(RatioOrAngle::Ratio(Ratio::new(t1 as f64))), + c1: gradient + .sample(RatioOrAngle::Ratio(Ratio::new(t2 as f64))), + }; + let id = self + .conic_subgradients + .insert_with(hash128(&subgradient), || subgradient); + + // Add the path to the pattern. + self.xml.start_element("path"); + self.xml.write_attribute("d", &builder.0); + self.xml.write_attribute_fmt("fill", format_args!("url(#{id})")); + self.xml + .write_attribute_fmt("stroke", format_args!("url(#{id})")); + self.xml.write_attribute("stroke-width", "0"); + self.xml.write_attribute("shape-rendering", "optimizeSpeed"); + self.xml.end_element(); + } + + // We skip the default stop generation code. + self.xml.end_element(); + continue; + } } for window in gradient.stops_ref().windows(2) { @@ -726,6 +835,43 @@ impl SVGRenderer { self.xml.end_element() } + /// Write the sub-gradients that are used for conic gradients. + fn write_subgradients(&mut self) { + if self.conic_subgradients.is_empty() { + return; + } + + self.xml.start_element("defs"); + self.xml.write_attribute("id", "subgradients"); + for (id, gradient) in self.conic_subgradients.iter() { + let x1 = 2.0 - gradient.t0.cos() as f32 + gradient.center.x.get() as f32; + let y1 = gradient.t0.sin() as f32 + gradient.center.y.get() as f32; + let x2 = 2.0 - gradient.t1.cos() as f32 + gradient.center.x.get() as f32; + let y2 = gradient.t1.sin() as f32 + gradient.center.y.get() as f32; + + self.xml.start_element("linearGradient"); + self.xml.write_attribute("id", &id); + self.xml.write_attribute("gradientUnits", "objectBoundingBox"); + self.xml.write_attribute("x1", &x1); + self.xml.write_attribute("y1", &y1); + self.xml.write_attribute("x2", &x2); + self.xml.write_attribute("y2", &y2); + + self.xml.start_element("stop"); + self.xml.write_attribute("offset", "0%"); + self.xml.write_attribute("stop-color", &gradient.c0.to_hex()); + self.xml.end_element(); + + self.xml.start_element("stop"); + self.xml.write_attribute("offset", "100%"); + self.xml.write_attribute("stop-color", &gradient.c1.to_hex()); + self.xml.end_element(); + + self.xml.end_element(); + } + self.xml.end_element(); + } + fn write_gradient_refs(&mut self) { if self.gradient_refs.is_empty() { return; @@ -749,6 +895,13 @@ impl SVGRenderer { &SvgMatrix(gradient_ref.transform), ); } + GradientKind::Conic => { + self.xml.start_element("pattern"); + self.xml.write_attribute( + "patternTransform", + &SvgMatrix(gradient_ref.transform), + ); + } } self.xml.write_attribute("id", &id); @@ -996,6 +1149,26 @@ impl SvgPathBuilder { self.line_to(width, 0.0); self.close(); } + + /// Creates an arc path. + fn arc( + &mut self, + radius: (f32, f32), + x_axis_rot: f32, + large_arc_flag: u32, + sweep_flag: u32, + pos: (f32, f32), + ) { + write!( + &mut self.0, + "A {rx} {ry} {x_axis_rot} {large_arc_flag} {sweep_flag} {x} {y} ", + rx = radius.0, + ry = radius.1, + x = pos.0, + y = pos.1, + ) + .unwrap(); + } } /// A builder for SVG path. This is used to build the path for a glyph. @@ -1091,3 +1264,8 @@ impl ColorEncode for Color { } } } + +/// Maps a coordinate in a unit size square to a coordinate in the pattern. +fn correct_pattern_pos(x: f32) -> f32 { + (x + 0.5) / 2.0 +} diff --git a/crates/typst/src/geom/gradient.rs b/crates/typst/src/geom/gradient.rs index 33b8ca776..f4c750a37 100644 --- a/crates/typst/src/geom/gradient.rs +++ b/crates/typst/src/geom/gradient.rs @@ -15,9 +15,9 @@ use crate::syntax::{Span, Spanned}; /// A color gradient. /// /// Typst supports linear gradients through the -/// [`gradient.linear` function]($gradient.linear) and radial gradients through -/// the [`gradient.radial` function]($gradient.radial). Conic gradients will be -/// available soon. +/// [`gradient.linear` function]($gradient.linear), radial gradients through +/// the [`gradient.radial` function]($gradient.radial), and conic gradients +/// through the [`gradient.conic` function]($gradient.conic). /// /// See the [tracking issue](https://github.com/typst/typst/issues/2282) for /// more details on the progress of gradient implementation. @@ -27,6 +27,7 @@ use crate::syntax::{Span, Spanned}; /// dir: ltr, /// square(size: 50pt, fill: gradient.linear(..color.map.rainbow)), /// square(size: 50pt, fill: gradient.radial(..color.map.rainbow)), +/// square(size: 50pt, fill: gradient.conic(..color.map.rainbow)), /// ) /// ``` /// @@ -174,6 +175,7 @@ use crate::syntax::{Span, Spanned}; pub enum Gradient { Linear(Arc), Radial(Arc), + Conic(Arc), } #[scope] @@ -365,6 +367,75 @@ impl Gradient { }))) } + /// Creates a new conic gradient (i.e a gradient whose color changes + /// radially around a center point). + /// + /// ```example + /// #circle( + /// radius: 20pt, + /// fill: gradient.conic(..color.map.viridis) + /// ) + /// ``` + /// + /// _Center Point_ + /// You can control the center point of the gradient by using the `center` + /// argument. By default, the center point is the center of the shape. + /// + /// ```example + /// #circle( + /// radius: 20pt, + /// fill: gradient.conic(..color.map.viridis, center: (10%, 40%)) + /// ) + /// ``` + #[func] + pub fn conic( + /// The call site of this function. + span: Span, + /// The color [stops](#stops) of the gradient. + #[variadic] + stops: Vec>, + /// The angle of the gradient. + #[named] + #[default(Angle::zero())] + angle: Angle, + /// The color space in which to interpolate the gradient. + /// + /// Defaults to a perceptually uniform color space called + /// [Oklab]($color.oklab). + #[named] + #[default(ColorSpace::Oklab)] + space: ColorSpace, + /// The [relative placement](#relativeness) of the gradient. + /// + /// For an element placed at the root/top level of the document, the parent + /// is the page itself. For other elements, the parent is the innermost block, + /// box, column, grid, or stack that contains the element. + #[named] + #[default(Smart::Auto)] + relative: Smart, + /// The center of the last circle of the gradient. + /// + /// A value of `{(50%, 50%)}` means that the end circle is + /// centered inside of its container. + #[named] + #[default(Axes::splat(Ratio::new(0.5)))] + center: Axes, + ) -> SourceResult { + if stops.len() < 2 { + bail!(error!(span, "a gradient must have at least two stops") + .with_hint("try filling the shape with a single color instead")); + } + + Ok(Gradient::Conic(Arc::new(ConicGradient { + stops: process_stops(&stops)?, + angle, + center: center.map(From::from), + space, + relative, + anti_alias: true, + }))) + } + /// Returns the stops of this gradient. #[func] pub fn stops(&self) -> Vec { @@ -379,6 +450,11 @@ impl Gradient { .iter() .map(|(color, offset)| Stop { color: *color, offset: Some(*offset) }) .collect(), + Self::Conic(conic) => conic + .stops + .iter() + .map(|(color, offset)| Stop { color: *color, offset: Some(*offset) }) + .collect(), } } @@ -388,6 +464,7 @@ impl Gradient { match self { Self::Linear(linear) => linear.space, Self::Radial(radial) => radial.space, + Self::Conic(conic) => conic.space, } } @@ -397,6 +474,7 @@ impl Gradient { match self { Self::Linear(linear) => linear.relative, Self::Radial(radial) => radial.relative, + Self::Conic(conic) => conic.relative, } } @@ -406,6 +484,7 @@ impl Gradient { match self { Self::Linear(linear) => Some(linear.angle), Self::Radial(_) => None, + Self::Conic(conic) => Some(conic.angle), } } @@ -415,6 +494,7 @@ impl Gradient { match self { Self::Linear(_) => Self::linear_data().into(), Self::Radial(_) => Self::radial_data().into(), + Self::Conic(_) => Self::conic_data().into(), } } @@ -436,6 +516,7 @@ impl Gradient { match self { Self::Linear(linear) => sample_stops(&linear.stops, linear.space, value), Self::Radial(radial) => sample_stops(&radial.stops, radial.space, value), + Self::Conic(conic) => sample_stops(&conic.stops, conic.space, value), } } @@ -540,6 +621,14 @@ impl Gradient { relative: radial.relative, anti_alias: false, })), + Self::Conic(conic) => Self::Conic(Arc::new(ConicGradient { + stops, + angle: conic.angle, + center: conic.center, + space: conic.space, + relative: conic.relative, + anti_alias: false, + })), }) } @@ -605,6 +694,14 @@ impl Gradient { relative: radial.relative, anti_alias: radial.anti_alias, })), + Self::Conic(conic) => Self::Conic(Arc::new(ConicGradient { + stops, + angle: conic.angle, + center: conic.center, + space: conic.space, + relative: conic.relative, + anti_alias: conic.anti_alias, + })), }) } } @@ -615,6 +712,7 @@ impl Gradient { match self { Gradient::Linear(linear) => &linear.stops, Gradient::Radial(radial) => &radial.stops, + Gradient::Conic(conic) => &conic.stops, } } @@ -625,18 +723,12 @@ impl Gradient { let (mut x, mut y) = (x / width, y / height); let t = match self { Self::Linear(linear) => { - // Handle the direction of the gradient. - let angle = linear.angle.to_rad().rem_euclid(TAU); - // Aspect ratio correction. - let angle = (angle.tan() * height as f64).atan2(width as f64); - let angle = match linear.angle.quadrant() { - Quadrant::First => angle, - Quadrant::Second => angle + PI, - Quadrant::Third => angle + PI, - Quadrant::Fourth => angle + TAU, - }; - + let angle = Gradient::correct_aspect_ratio( + linear.angle, + Ratio::new((width / height) as f64), + ) + .to_rad(); let (sin, cos) = angle.sin_cos(); let length = sin.abs() + cos.abs(); @@ -672,6 +764,15 @@ impl Gradient { ((z - q).hypot() - fr) / (bz - fr) } } + Self::Conic(conic) => { + let (x, y) = + (x as f64 - conic.center.x.get(), y as f64 - conic.center.y.get()); + let angle = Gradient::correct_aspect_ratio( + conic.angle, + Ratio::new((width / height) as f64), + ); + ((-y.atan2(x) + PI + angle.to_rad()) % TAU) / TAU + } }; self.sample(RatioOrAngle::Ratio(Ratio::new(t.clamp(0.0, 1.0)))) @@ -682,6 +783,7 @@ impl Gradient { match self { Self::Linear(linear) => linear.anti_alias, Self::Radial(radial) => radial.anti_alias, + Self::Conic(conic) => conic.anti_alias, } } @@ -717,6 +819,7 @@ impl Repr for Gradient { match self { Self::Radial(radial) => radial.repr(), Self::Linear(linear) => linear.repr(), + Self::Conic(conic) => conic.repr(), } } } @@ -809,7 +912,7 @@ impl Repr for RadialGradient { let mut r = EcoString::from("gradient.radial("); if self.center.x != Ratio::new(0.5) || self.center.y != Ratio::new(0.5) { - r.push_str("space: ("); + r.push_str("center: ("); r.push_str(&self.center.x.repr()); r.push_str(", "); r.push_str(&self.center.y.repr()); @@ -848,6 +951,71 @@ impl Repr for RadialGradient { r.push_str(", "); } + for (i, (color, offset)) in self.stops.iter().enumerate() { + r.push('('); + r.push_str(&color.repr()); + r.push_str(", "); + r.push_str(&offset.repr()); + r.push(')'); + if i != self.stops.len() - 1 { + r.push_str(", "); + } + } + + r.push(')'); + r + } +} + +/// A gradient that interpolates between two colors radially +/// around a center point. +#[derive(Debug, Clone, Eq, PartialEq, Hash)] +pub struct ConicGradient { + /// The color stops of this gradient. + pub stops: Vec<(Color, Ratio)>, + /// The direction of this gradient. + pub angle: Angle, + /// The center of last circle of this gradient. + pub center: Axes, + /// The color space in which to interpolate the gradient. + pub space: ColorSpace, + /// The relative placement of the gradient. + pub relative: Smart, + /// Whether to anti-alias the gradient (used for sharp gradients). + pub anti_alias: bool, +} + +impl Repr for ConicGradient { + fn repr(&self) -> EcoString { + let mut r = EcoString::from("gradient.conic("); + + let angle = self.angle.to_rad().rem_euclid(TAU); + if angle.abs() > EPSILON { + r.push_str("angle: "); + r.push_str(&self.angle.repr()); + r.push_str(", "); + } + + if self.center.x != Ratio::new(0.5) || self.center.y != Ratio::new(0.5) { + r.push_str("center: ("); + r.push_str(&self.center.x.repr()); + r.push_str(", "); + r.push_str(&self.center.y.repr()); + r.push_str("), "); + } + + if self.space != ColorSpace::Oklab { + r.push_str("space: "); + r.push_str(&self.space.into_value().repr()); + r.push_str(", "); + } + + if self.relative.is_custom() { + r.push_str("relative: "); + r.push_str(&self.relative.into_value().repr()); + r.push_str(", "); + } + for (i, (color, offset)) in self.stops.iter().enumerate() { r.push('('); r.push_str(&color.repr()); diff --git a/crates/typst/src/geom/mod.rs b/crates/typst/src/geom/mod.rs index 29ecbe743..105ee5a30 100644 --- a/crates/typst/src/geom/mod.rs +++ b/crates/typst/src/geom/mod.rs @@ -32,13 +32,15 @@ pub use self::abs::{Abs, AbsUnit}; pub use self::align::{Align, FixedAlign, HAlign, VAlign}; pub use self::angle::{Angle, AngleUnit, Quadrant}; pub use self::axes::{Axes, Axis}; -pub use self::color::{Color, ColorSpace, WeightedColor}; +pub use self::color::{Color, ColorSpace, Hsl, Hsv, WeightedColor}; pub use self::corners::{Corner, Corners}; pub use self::dir::Dir; pub use self::ellipse::ellipse; pub use self::em::Em; pub use self::fr::Fr; -pub use self::gradient::{Gradient, LinearGradient, RatioOrAngle, Relative}; +pub use self::gradient::{ + ConicGradient, Gradient, LinearGradient, RatioOrAngle, Relative, +}; pub use self::length::Length; pub use self::paint::Paint; pub use self::path::{Path, PathItem}; diff --git a/crates/typst/src/geom/stroke.rs b/crates/typst/src/geom/stroke.rs index 2b1bb8764..e88d887db 100644 --- a/crates/typst/src/geom/stroke.rs +++ b/crates/typst/src/geom/stroke.rs @@ -15,6 +15,7 @@ use crate::eval::{dict, Cast, FromValue, NoneValue}; /// line(stroke: 2pt + red), /// line(stroke: (paint: blue, thickness: 4pt, cap: "round")), /// line(stroke: (paint: blue, thickness: 1pt, dash: "dashed")), +/// line(stroke: 2pt + gradient.linear(..color.map.rainbow)), /// ) /// ``` /// diff --git a/tests/ref/visualize/gradient-conic.png b/tests/ref/visualize/gradient-conic.png new file mode 100644 index 0000000000000000000000000000000000000000..ff4a0ca2e6dd4e29532943254ee433fa3c657696 GIT binary patch literal 23950 zcmbSycQ71Y^zX8)wk)fylC@Y}SiRR(R*e=xMDIkGAjGolYGL)3=$!;Xlpt#K9wkbU zh?=5?NW}ZT|K1rhWpL5HcmSAG6OH0j84FCXW^)Omy000RY06^+Q zN&4T+D{&D50Px_ho|cA1=*qX}Mk!xq!LfDH)?d9k?hzwX@}$~@u~AwHuQ#Mgk(4W< z^l<&3B=a;+jj~;&^()M3EQGWE2XQ67ZMM%r#kD|vX;$MPm_?2M{}%f<#r8)H`)z9f zBuQpsslMHj!*2GFJ(D6??LbEJ`XQb;wMZ#EUP%kR!7Q;(c<-)Qh!*H=MI1!HN8xF5 zX`fDMzjffN!jSZWz2&KVo(|KgWTc!0D925!_ovhLQ4KbKr(Q&ZXnWnA&IUosEIOjk ze)G~lUDk+tR13<(NUA0rwu#G^J<2I60L`fJr1kt}hEm?+?jglb;8KtTg6885tvk7l zj61#PSS2bUz0!arnuZ3Q1c)?O>1b;`FWahSN>*&l)-4nnq<0YQOXs;8L~5+UO|2q+ zT%jpNX@}H$N#QjRrR;#E!gfs)-VpT!VRmHb!QKJ*ENwW&%p4RhIXgt zlv!cf$S(Fva_orteaz^bm|~I$M{(Z)SR6}&iX6uE=}O%)7>*6(|K$Tyc6QK;rDQA` z5)$aG(V1)-PvHoJ!`kc2m-J9Vc2L2mD8ipxqQX~&-}5BbS2Or>tL+Lb_ZloGVq*}KG%;qo$!<= z`Yzs2az-^>7ryAIw>vlbz@gNsA8-?~hcE;I^Qd`R;}%c|CC@EhDlimWO?|vNu$f1( zaWW$}fUK8Fr>xkaA3x)e%^zTo-aj@J(EcOqF2_lX2D|W9^`7e54wo2eUR4`s*pULW z?QiTqb6-&OcNn+`6Tgu;MwtG-jL*7lRYlBY8-9TQmP_iq^V@NkhIF@`H{_*r@cMpYH8|eU)eqZ(PC$tC8I`H(@7=)fGoXkWC`bj`fNu>D|_)x`23# zz4vL9M!Rl|`Liv?CK+KP1L^o3#0uFjceQzmXqTD9fvyiP|l&%KR(uDTH@k#E-czK`eL3G!%;RU2%8###M5UWK!qe6A; zOfJRB5dyrfokE!R=#(`tN1BK(gFz4SfSggEu7z`frA@VsH6SVBGx5s2j0@5&&Oj+;Uc3%6DWW|&%y*&HD$Ru2Z3 zC0O94@A1$O(V+YOnQNNS^A9PbBcz!gYB=BDt5g_M$v|ipj}Vf2t!lvotKc&YZC{4( zzAlL(9fP>u+_Wj=bKG8gQz5Yz`TiXv0<@HqLfW23hWqkwQ7_(G=D<^WrHH|`c!M0B z;X#NZIxBP@EGuN^5oGf{`#2Daz9Ff6gg3nvf3tT`3S>j%q%xgxu7)d=;`6iQfQxMf z9oaGUcZcicDO&mY%LM~0x1AK-&L2cAJLpE`rr1WN`QLShd9MljGVdv{hHVW=sT1x} zLOM68-PISbre?}1kZ{eO%F0H1qveZ$ z@6$UPx|%dcg@ffENHe5~CVBrgHP7I`Z5`WCP7Rq{DWE_m1L!DL zDtt@pwoq{M!?&L_NSd{)`f zI*q(cw%Q3*)OWhB$!+VUFKIUQ$bFGA=$2@AUGQZyWOHk{7uePw)`-1LEqTxFGj~32 zxkXLR{|lTF`5}@t0MR6q7)pJIpcZH{V6BrdFXTH zzso7NHb0Ya+_?R;4MgfCqI@8!BjFP*Fm)%~e`KT5RIA#UHM|`0GP&JJ)UmGcsbSFh8%Bf5r#sqI$nMnAOg|M6@=;_RIhEi%56v<7|?t;2mw)pdfk$KO*E3g zPG;tXM}Jwgcxn4Gu~9wXHNEDxjy(lT;qSsdejU-DR&J}roO?GcT@O)Z2*ZU}<$0)F%TIi~` zRnKMx=5+z_O?QU|37YUI?hZR)XHFnPUK?x?lMr zqWB}}xr1#<4AQ*G!rbz!0aEjuo`RGMMHyB3i7?97D3hYgfz?;8}vd77)O>P zw}d(x@QK_uhqG8`d!oik{bc|nLvJYdjO5Y3$nK5L)H%GQ1!w8R2#0-{BgMa_PBLRk zF|*Z7SBtfNL8zdc?*~peNXbLCY1FL$IN&q_L5WzYS;O{tPaRteJ;Aw7-mFi{A`c{c zU(sPjfp+7N3mH#yzb(rTbO{wDs#4O(E-_jbq*d(eh%2L8fB?^UsF{>O?qto3`@A<;)k+B#DN)6b@uCYJkzTmy0*R<1zjr`QCUprPs!k zIj;%_PlbN%8qr@n2ZO;F25@tqBEIMm^oBEN1)3QTVr3b$Br7uAi0*WZrwRKb!933| zMdiI8xf7k}Y+y5ky`kB_%|MWksnvF5S^qM#*ZHYPNL1Y?SxH=79?n2qtF9-!f3DrC z%MI*g9y}T31xoXOHD7vMZ_b$-E`P9|6j$~!?MzFNf*u4Y#V9jyC8R{B#Ol6xu0}H5 zr{wqi&DKX(DW=2((7|z2*}9dOmz0kB-xdpbjGx}7zL~Ak!_(3Z1OJx4$o}(>b9O*1 zd;U=peluh?@Kucf+JcA0jK}dLbP}1YBd(qnPgg%H1=NMx2MLtyk zgHSqyM4FCUDLrsly??q_QZh>6KbJ_{F_eA4y!a}C`5d6IrC0R@g$Pb(U(B7qT zaov&iRKU?21@I_5`E~QDYz8Hm)5`M1Z6$U6?gsH_)rmnzntpuZi%{}B{m$`y%9Bt4 zcI(ILz|nbhj~0kL4G^i?gqG zIJ{*WEqPDI9*b}N3+uY^zj+*rweR~fQ1q@iiqj`tS_MYdOneED01}rE2=H#(4gXJt zC)XUlH`C&OyjxZ+RA=fs3cB^GUJe;XNL8Nrzql zid_}5~Yn<=v}MIDU4R-U&p&Z<~U-aeO&+%b;JK2-O9_ciB;HqBcPTG z^+z4ui{G01Msh|IZ@+b{yA=s50sso(pCTj4a`8ev%6t2WQ%sNp)wZ%jh0|?7``wb% z^G~+XE{{_u6>(ct0PHQ0husrK51!Kl-`+`j1eO-WyG-&8zD=@ipxj-Sqx%%3N(y*R zceK7fPz*@ZMz?q_hRw*ExG?dnBsJO$-W67ab*}pGcdstI1Gm3B=+bs?X8|hMzuCu>qs zg&>b^BW)rpY9gECZzWE;;{Sz3-1|cYzCM$a9f^x02?TX%hEc>SfDcfEPn5kozszF< zHamLh9q9bo@fw+6L{xDw%Vx2uIt$WJJ8q5BV-gs#eH9GE_iPlk`3|tv8~*)1`%|Kw z4!gvXS(kimPvsD%WK&CL+)uJi_l0B^I9V2DNrEC324JCs0CTK4Y&lufh`(mmp~$c5;HMtp}MaaU2EJQ zf86*Xte8rOloBtQ@vI2nP9V<9F}vnQv%yyJYel-q@YZOZCgUc z`)1O~_yn>#lAe4VZ%OpTbW7xL;{8}uJP8Yu(sWetr$O<#N^{Gn{0WXj;vQ^y($N`Z z`$Mh5Gv*$fI?BeHY>9l-`{@271(2PoE^!k{W;=+8B`qIf5pB@Zw@$-SCB!3IQ1{=Z zuRkXzvkv@T!WXC0>uG#||zR&gN>W8!U^#IsyH;**C@oXpm`;e|bxj2M;mL{@Qu zj5~UYavwgH-j>}#M)Qk8C3&)=@#hpvst8o~E^EF9t} zK5V3!FtIR`E6W;0))uDp@_7>mUV!b7+wQE+nXvoiP0w2|%6xw}_vcO#b^mY+ZB%UP zhf8E%EFMuJi=k#O6okemMBkCjtS-5W0ZezQg2LiNM2!xGQmYHimoVul9h=aGO35<^ z(!dUWf5m#wOWzZ__$W@$`fFC;Np$pnsNlW74#f0tGySQx)_+Q+8(chu;(1v#RgB@n zTsEEJEaTb`Z=fF3~eNCN0L8G|Dv1aFk0v>k~TQ=bntY zy_XUvNdo$M_qN5MDlH=w9aMmM#0xGA=7irKz5%-=B1Y51EFQwg8Z$J|t|@YDMQ{1Jgb#!Qz0UVW$c~Kh4OmB5 zV|tF;x;;wJ^Rf<(*1UW{Wy(D32c01moXa=FPP8M@xi2g7k>7+%c1ra2x*1(9BX+SK zGTqXc;tUNjjc5+MIChIzwG9M?8_owU3rc;|L>m*xZ1kJ>ZkCnGnDm@rc$<&iH_znk zbXfR&<|45*(maBds;4@Ss4In8%)lmt*b|5Va?=k*B#WouF3AcUZ;3*}%`kf;;Sxu8 zG!xmBzYIRiumj*Ej##}FL1&*1^2Esd^J0;}MDp$(Nva;xisK1&8t(!M_G;^uO)qGQ zvZ%J!=l%Q%oEsIlX=;s9>1g}IIU0wfKe4u4sLQ&Sdj8>HSqEsg-e$Ho7IYQZ3?P=Q zKt6MWm~}L_HeKXT0XPjLJ7lzz2zvpw>HwbIx9fb#2wDjoLdQJ&>cqR%=PZlqwUngC zW`pAyA!f55T5y?;zm;YsKSy^jucUXCtNmuWrfXCsnrN*(_WcPf#z}(s`@nf-ljKJdK@Fh#8-{x^c$iV6Br$19gYmrUCp;_@nG@K*5# z0H@cuw5Z6B!>IE{_oO_{yA5sZ)8~LG3&&m?;=fF$8+n>~rK^$%$D*jPOJ6%WCQ_z=U$rRj3k-Y^V?5Jl({6sW>sUbH zYcy2E#-MmL^M?2zWOXa$UqT%w6?v4X>IdGJkxth*JKAy?vEihs{(SkGKGjWrOngT1 zA~4K1NNZ5a0#@*(^(xWjDAZvnCrdG%2&Qn4F$&PMcu!PkY#mciIr#~rvw1ut&lzzh zwfOEmE-m+Dd*&@aPe8_2&cMtcp1t;>FhPfzS0)@(-%q41DDK{mr+1#gz~)Z}0kVtL z@q`Ky5#Fr`Vu|=<1dM?j`6DXn_cdzM8DaPvHx>#nL}Ge0R$31nsB!C0%KebJ^YJK1 z03F4K=96C3aFL%<_hboZEZJ zP?>W#-&k^AMupPZxW}{Uf`EKurLYs|B(_|MSk|?+1w#ZS*>PHrvw?&Hk8IE}~Om+)ND-xOctegO?W74vj za`u4Syy8ywriLbU_#i;03t4ngu}b40f7-i%tUgh;)>Z=&fG7dCMk_a+=rD}m^`S~S zhWL9$^krzu(^40(-aw z-b-dECmariFBO)oknU>&p)H$Fw|QruSiz)u5jw@J={6sKrPl#11s1Iel4#|NPJc@) zyZHL5elxuLIeVakQlJBC&tEqlxTCbG9xnRSDa)Hc?gR*m zOqzYRNWR>JaKYJX9(S?+0Y6SF$&8T{Qa3Z`?w_QZjGUzmw;@+su||I&0Pw&#$4Y=)djYbM)>+BZ@dl|^D zO{vsj^O~8ItIzN053bSa@s<5u*>-g=oT5CAf!G>#CV@}HD5niQ9&^zys9Q>^J~FE? zI?$Kbx1Hbkmi@OyZT;TKeJt7aXR{RoQmc?*6>2 zg_juBJmeu$)B2fp=X<#4*1$v8c&Y>ba!O=|0~fI>{R*}IY2(|m4*2d}sGNI<o3rkD2j3m^nIqYogclgpLAwidX*u6ke67%a=m6 zE6hQc2%8dlsLC0^d`9bXH4fY<1szgBexSrXQ4q_YpFVlftq*9{8gs+y`K1M zr^*+r+MUW+ZrI~Fm`biVAM>CQBRAWqOKQQUrzWt^V z^il&4T-v4k^koE_qg$mOvKD8>sp@#|beh|UQ5f-WSK$D+ztlU1!gAuk_VMIL&t~}i zC?Q9w6j7uA7l1nG|Bd~Zmij-(rg=L_4|J`7toK$>X`$SapF_?L$#qrA2=?l;g)D%YBB2hh{&vrE=ofSU;GI(kph=(lOG zj3rs68TgT1;Upo&Yv=}bVHLW|9E+#L{1kDQJHwMJv3#p zG-+O-o=SY%XPHV;N?2eE%$yQBXDn=0a>jc&XL=8{|qGX#V z8nIiZ^Y#&k-6v(OLv8yWILFAl!^Bv=8srwzB?6%9_DY)hfuaUq{qVHG14v=~52%3WK-Id-k!p z9I-Ha_r>FqaEhE?GJuV)y6aS#8(WNjCG$jq0uEqSAC(T&+9Ow%Anh~Gx$`Ud;~Ce+ zXTEyb@$Nalj1?yb=c&8-xVIe*zHr~3VY-|Crx)iO|4QEY`q^+i&*Lb=Rs&4x{Zc2d zf0ylsdo-Khp#qnvwh0VoPR+}8mR8t zBK3Fltmy3Dukkzoo;CDb6V}!jAABtf(i@DI9>y>b4-b^4Uk7b<75)r+O1+#-wwimE z=HM_23+?6bTK;qfiI1uvyj$8JX}{k2V+}BpbdWXUT$Tlk{0jnh;TnbL8RT3_BaOB%>KAve7gG>;NSN4x`|wI zV`#uQHH4a(LSQstCz@Yal?huVyo1kndw>p9fq4^mc9(wzHud@cUMUDelh--QVU)_- zg1f#B*!|$X4dC?tJNK=N)HJ=*p4AfxBZgx^W^Y(!Cws_qs0Lo&oVzRiU%JhT{ zXV(YQ6%1o9r?%mhVe+PyAtc851GI@e1zfWwLGp^?Zaza?_3wKcGPN>zB$|ndLK#pa zjA%8$|NPQo%`f#AYG$rXM^D&2N5#!YcU)R*qLa#p%?{p_ zO)!u|2O}vc|6}mh&|`~RqmQdWd5|4KEw0nnxna8>k)UTLKB-@izQu8?z-&5xqS9^s z&iL1=<`b35`9QOts3uPu*NI@<*4F_OQ%=mt2`8sEn;r&nn~gZ2K@aNaedWAiD$ct3 z)@~=JBey30Ae=nQL(DU6u#|zy(s|NoPDD>WRm=3pG*8K!m_Zgmy(!7g^<=y_C!T%O z`~>~1o0FncGsclq&V!C1e?pWwnHj$rQ^rg8&$&B!G?eAy#}x)MZy{-NgQSMU8xV`T_&ho%Z1;X4hb9BhCWm@o^j|RU=@roEP|AccdMtt*9=9 z#-lUkrPwN=Wx`3MC4=;c2!}fV+>qlwg@y_(hm6bjk)R=8Z43K@Hr&)ddM2MokN(^J zlHk~v9A`s(EktXX?8jJY8qXs`+(-K*yJZCMkSUHne5-Cox&;1zHQ#?uIbn8cKR9&32z(L;nT%@}p-X}7G9>(vs?;M`p zUtCXgN=<52@SaQCQeXq{cIM?_5mN?|T0vzKj{OfjO;j_fT9w#dGHz%@e)~4`ceBtr zoQgV^@WyVkj=AOi(3357E%7DZ0m4WzwhGu+sj>c;uT)rvk-s>CGWj)&&0QZ8)li{; zsK&phOQipDx}{d0@x?k;4_x2e>1j8kv_wd)f0shgu;E`?B=AzW)q$jTFv=k9ivGCP z_|8#($IA~;s(l^iIY94|nk0gwThoWhCuv6$=mG}E4zEP=r`hyS=Z~HHAtP^|Q5y@7 z=xd)`iU3&g&JOBwFA4_Qvt`42jpK;%{w9)LM-HUCJUplBMO>-B^hd9x%lAJ~d5qTq zDGOfjAA)@)ZDIP7@nn3szDPWe)J#9-mIFE#SYHsAryP2lU-G7EzX z5v?1e1Qok%B-36$YtnhjU?Ks){wdr-!IJYRataxeWRCPAVe!;u<3@)fkO#__DAVHx zEv;`uFiRx08a4H6A;E)^Qj=pLu^$Tu3@Aa0#8OWSw$KjSxt^RspcJIvA(SgHiSm~4 zratC~Dq%1c!iq$8xsziPNj3+@``Jb}CEuHzvP@;Mi@=(H`e*cO+%NLDVTD^FYhg6m zk>bKuX&$y|2m}&?tHzEp-DnQo&M?-)KZ}jlSWb*KG|S7AN$+5QDsU}2)$9zgFs!`z z7wnsyN(($YzZ^$4BiXd zQeT(pdnVK<;$nZ#t4IDy_qUQ1G7<>Ffc>X@xmxEQfRiqd~ky}Q}!z{ zR#mdP9mQ$J-*K#J=;q9VX#m8A%lb=M{gGh-L7cG5T?U0>+FIP(-bifgBVh~m_iBND z8FW}~b}88G5}))IgMliO0qx3FOG$+y6e6nZ0c+ZfoM_b1`aL2A{SAM!XsjUk!(gx3 zFJln9a90v^+sQO%I6kgw05>(M1X1O!`A3z}YohfH!$h=1ZvUCW;_0Dh>RnM2{@TTHw|e zPuu_Yu0J_i7Yk8pZhXo3>=K2{k9G`oj;WxSjjQCa$8UEl^A$nw=`_;T#`I`p+~k8uJq7@x?OEVnh7n5|#){SSFWWQ*EWi3O8smMsh1&YFzdbPk;&s`+q(pRdd0 zCma?&a$C51kc8_ROh+dLnNy@-EmbQY41F-I^0WpBh%7!9wuz-jHtGySL9g>$^(yEG zgHX|=IOQ{3A&*T6Qje6XXf}*Klrlku@2dmd-1rb{JVkZic7wC+E_lU4pKV+lSu)i_ zj@V?Tgow)>72oMLU?_HaLup|Ih6d&Z-}i3)MUMdp`{N&}LkBHp{!25HC?Dy9Kva=c z;q{IT&I_3*<0^7*EWO|9vG@Z{W++&L)YIKWgiwLK16{}YsiMN^tc_lQ-sddt4&zJ~ zy%aktht++2***{CKrw^a6#3{5k{XBQk&##hi-qm4u(sR(CH!XDwE5s)>8GKWcZIz-{$Rc*P(a4zWxFF7tJT(IBtafj-|s13#M67> zmOU71Cqw3BP>n9s^-8telqwZNYOPU9G3Rb~JQjVpw>31}m-EmRLNIta5th@YY?u~~ z*0zovFJHBMc`%&Wq%cAP?Blcn)~4{jy*WGMwD}z98=CvT>0OrgGN;&o{#^SHg;4%- zG3R7A_x;EwCQZ5h=Y*L}C`S-hJM`h)Eff;sLH>3wK4&N}ai{TDvHr*;cz$dqh2o9n zbWOFl^8O?1yz+<$kuZk}3s(OKS;C$xv|qZi$UHxEhRFEnejYBz-ySf47B0PofEJsv zmo|6Wr2qH(-pukDid;<$@WNZzE^6<();}p1A zGsKz8sF>9~KZbglITf~tGaT(N2A(}YX{{C|$!(7_glc-$7LRcb^3|oYJG-*)Dtibg zdVR6Z(UW^>D$eYlh9FdNZG}$FJPFE8s!(NI3ae(&t5Tkr{YZ1pS)4i;JHwoN7mM%e z`?~GH!>#<`5-Q*ZUwQVk=18;KTVTC3#r^9W_0Kh5)OHZ(t!oD9c8V`4=V!yamEa$o zFD7t*Nzb}Z!PDYesNVA#dB>dMlp(Vh4?=HdANp%&Mt3n`H<}}4B1|7de2vQln2 ze%-2XwZYLqd|$HT(M_+MY&I(&HA+wr@lFX_C4+nQw;&-EdPn62Ot3ZKsJO##lO>6K z?6WhT-+99yu#YOk@Z#osT2#P~1;F$cC&6rX2#jirc_xn{!vWT#|5C9ZmqIs}r_gA{ z-VZEzxvjC&hpHdbwQRgY*WIOXh#>zWnJ%5k7fUGlI5uR^5Qd^!dShvR%#u1-NsOrz zrW4`g-|yo*`u<}piwaM%zh1`W2?q~w!w#F-TUDmO<`uCyPw@;7|IuLD@Vc5|) z_+B5;o<3(ddp5o=;^(EJDQ)Q`+W@W|={b#aFIL(AMWmO+KF6A4CQuao`%g)36*u+m znDHeB!T&P&KF&z_sBja>#VeZ;sxQH80ESewcAVjqFK_KBIZ$5nY+YPi-<+*+=9cfW zVqx%uZ)H7R>=a4^-0ERoOy-B4l^*iiL3{kYNB+yY>AP%T+{tm|UWPB%@$zrH}xBOb_FihcGd3x zf0~~HBjTc>N}fl)+97yQ1cMJ>`=yw5}PHdP^<1E$_Hfx{7= zk+B8Q=va(;sPb9w z5kJKCD|h06q1;XhNA{*6r~d1_Oi^Xrb?=egNYQq*&07BcH)BUD&no$92Euqoy7iOC z{~p`PfWd8H{^Pjf-4ZFtZxu6nPme+FhrvIyuFoI7YNDMs!5315!@Ew^x3<=lrH!vD za(lG}m+X@>0u|mwB z{-XvjEW~dp{|CZ!DB!P8c7NxGuwf&4zLjR$hBJ*&%%z)Oy6a{##k;R14}Tw50vVHyb@U{$u%+#XC4zzIDzK#g1W-U(>$q<=_r(KPf#tSH=h4iC(C-|j*Y6RuU{e88HTYW_j@42Uh?RD^Cn)8swAoh;PL4>%wW&%SkXEtU~=0?48uM(-XGQ)|P@ zm+~R7}%+|AdgO_W!aRR z`u%sw19b@o|K5Mf&h2s!OhygY_rbvTZkh7`cU-G=lpxxoLFQ~QYZz=qgyn|;yqBA1 z6zwafom(kq5d3*&cu!ip@Mj(;jLx~_Hf~R{WHnuNL5dqj;$;snwcqZ3*JTvdfvkXGL zojW=EqRSd*0$Q=+wk*IrfCIMIFiE4qHvYoZMp^6Qk6eO>$$F?sGS?8vx7)Y1E-ssy zLZb=~R(Bn+wqs9?7idaU+$@M<{?lmIN~8Ke>E%xXdbbYsJEdq1lqP@zgzxIvU5YC8kQTSLv~G*l}Q*TU?lIUdbvA~Y?u6B&q1=IpDrLdOu6>~U+Ke1)N$e_cj}bF zicMr3e{MQsuW5w;qu`vpN?C#D(HdVedmJ-}FSK!#&}nE|w$Q9_we4Q#7ZMNI`xh4e zRA1JNoPzWjI7CI?dG!&8`6D&iBzXqdmkLw+BxaNou&sW=T-#X z@XN_4ReZ>}xVI(-9qu)myk>-|U}j=Md{(U;(cG3U(Z<4E%!v<0yekiW@|FImCnj4Rn<(X!=2c*4w8#w?svhMJ zuM~ZgmPD-Iz?Js>@7O#OX1Z-GjZ~#b=++`r(G-NeJB0V4%6tnZ)A!tj66Iqh-vM;6 zw{v+~RhKcz|Di$YT8%M@D-9PIisB_nqD^+i;U`<5smkT@TK_#Obd^t#WvLJ9(toDm z8MC+_-eIQR8dVY!-3^T!oRc|ck|6yU_@z$-o=i$%m7oDs7oxL(dbrnYyr6$~Q}@`I z=CKos;q`^_&$N-SmIPD&SbouS9IvG2b~);37%!!ed)LUb$FC)WV*D;k_2|~8imm5> zhvx4hrZtaMpuDBKgf&^45}^x2elH7>gpDm|rCt^#-}-M~zx6+7C@a$6k6yw_fNy;G zm}j1TxTiV$dGJXV%rQ)aA&NJWi8q}vYEm*XSkFWtbAHwG%h!^|JBLk>_UnH(gSi5H zY~Rh}-HP%}z{Hm<0+fo-GM`+`NTAmOfqEIjJvt!W#_g4BX;aBWc;725+wSV|SE*y6 z9PKb-S`+%_&hNA{W9Eb{;s#z0-xq6WMaa)n3a_^k^d4W;Exe#EG}#hD zSUh(VP+CcA*Eed4f5e`btZWhn)7N3g(F)$H)VYV8dS|~0dq8~_lpowodL30m2`x?i z_Q6M3Cm=@am}23BMNz}c&idrl|5^~nTQ*e((#OUD6$z zlC0ed`sEhQbI$qlQ!kqr;Ze2V)hDrR?Xc8429KzrnKV!|J1}*aGpYFXxfClrb`eK{ za1q;4rxa_r^(JCF9!RA;)ou#BS%%;S>W@8IwerQSQM;c(Jb=V#a z1g30=ghjzlu5>0x)cJ%|s`TVyxPyG7$jhvm!8&n?{0pn6W(;K}qsGpS9fEJ)RcRJ8 z!|mcI;ILj`vhg0Td#+8W!-R&wmwU^C$8=)jpgSGjn;UspNPNliLRd9AltKl-Uddy*6~&I!Ol$;~z-1 z5Y$Qg7968hy;leh{q}Drus)Vx3=vjLt7D&F&pV({DL>tbd8zhd3r-$>LGYG+UBFvE zD_AtAmGr>YH0_psb4LEet3`3*UVKP+hC=Kj*5|M=g|E z24*(@tU@Zw78SW*zMsJiWq!x<5B|czksxxc2?Jb{{H3gPvpF$W8H}EZ3jY%lN^Tc< za)c)+1nZdKD9hfLr^Z5nP2?xnK7;pzK^7$Tn$@%48$x?2HQ+5e*`MBpr;(%{x49)q3=J@@|HgNvZ2c)Q`U-K1|dLlRV_W z^P1ZHO8N3Q!69;dTgd!Fv0SRUZRG*yF`dGdAlX{eKBD_~T1#lHam{jT#Mllm_^uDp zYZ&qw7YmsiNSAVQLCnqP`VeI%!7gsMpHWk3i=(;{hE=O#s?bH#y*Mf59UsBnv}ayS zFWF#0!kIe47M!B)N?JUFXlSLfmODi2%D7QC1_;TBT+rgP9;HfjLbAYmSa~;j>8jKM zz#+>2{yhzphTOBN>TUcy6t_9}V!`1!IPgr|Jli$>tBay_S%^QJOgkqdlO*1{w7F40 zF-z}WAcdB|W?FD|UV;$s=nK1>DQ+pjnC=frN)qP=2s?Rjuo^hBNas(O@fr!7k<<{u zMis^cQS1dGpBMj()MI(jC-{7Zib9WW(6HJ+5##cRRY4&~bH&%}8rPgM>k@`hkhV4zs3r zN>AgTl?uSH2+oYZ#3YvWns0fTxsyTs&2>c6s9zNV>(pS=LZ9t|yhMvTA+M*Ti8CMP z)ZfKP)==*6+L@a~Jl8#Zu9#C65tCsfdW-S1%+Qg4q;$%%Kin%YF?P4~tMDUzYkt=| zA1RPd{KedAF1#F$eAA==R~x?)snvYh%9r@<#xpQ01U(7beFD1tR8)m6VI8Wn=Nfl@ z-esup2NM{~CqQ#FTU|5+6xKl{VvP023RU#@r7Dno=J?mL>Y0K5cH{;i^~Bf4Z_;En zI0BsG$Q(QNf3ZjogjwuV9Z4%2tFc{i8vS?yIS|_=Q3!e3VmDqM&}uB;lkBkFmz`n# zy4+S>P^q!fC0Iq>bZ#t=31HK*)Ay~X>B&60*D@a8(tGrVeebt_p?19crosdB+0<9l zANPY7$Dvu&6akHr)%g;r{g)D>(7eFWa?Z(edfZU4%SGdd{Kyr6$tivQTiG@8$aM#$ zZ8CJW__UO0-j-|Csi*sH+0w3aPQDY0kRj#f#TwudWTW*=sJ}udJKVdi1n>}}V z0W)^zpziMJZ+&|@B-!-st^f!Pji0mJ{#oBrSx9=80%&)*>sG*2Ufw;YELzL&X0wmZ z>0kX^J-k@D8DM`mG?fH+->yyuF#xzMit`$N3w`g~mN zIn@4rn`F=1iKA_e&tK?zrZP5#xE2k~z9&#-4)g+Ardq#L6-Es_j{3J-^y&IL*Uj(N z_4QYsZxXnX%}uX)j?2C#U6hU^qq)@b>!j>Ce^iYlEx(lWCm9jOEU*9(n6&yAt3E&F z8`v>x#7*5o6v^7ZKfiK9FNUT!Ha3=b#;#(&GGob-6=vfcZhX}5ioq4uF{YG!r5catIl7_Z&_{js$l-<(ePRXZG< z=F)Vsi`$3q^GlrN0l_Oje{6;5*c|h=#fIbA@HQMEaNUKXY2#ND#;p|p?u`jl*sVec zpugU;`|#g{sL`O0r;O4$9f1%`iV8%dv!c-jP;R_eSVBsEca7_Zi5 zvidd)K>^!yGbDL);91SH`Vcq)FJ6BuN80TIR+}`Ts8OgW9+kub7*5yHzIs9I;EiA& zpwR1LguD-13_!f<$>Sk23?b(m!&3+#mBy) z{iOkp|HKv-D07?|JLZ?gf(&?Y@Pn*-y;g!;Lb9#u0}6#ql2j57Ta!G&LU^K$oiNgy z=q^kZT^G4OwB4IJ1!mf;n{{2daJtOxJW9qn-UDwgPqKXOPd*Hp^5cWhiiNW^o*$r$ zD{gPsady-?*}XM7hHmO41i5>*e*;g@A7rZidV380|MkhYQvXk4<%zs`HS>QQ#~jby z_Un8dGM&bn{wK-v|1ODsI=1Q9rhhL8J$eY@F-3QQUAa2UA5nYN^S`HDIAWP_-1sC( zbXas+m(+Gqzs&9-IwWuxtRk5TBr4nQr4fm#Doj`LC-Ku0Z=eZ+KLp`(JkVxs={C6` zZs4l?zaP�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 literal 0 HcmV?d00001 diff --git a/tests/ref/visualize/gradient-relative-conic.png b/tests/ref/visualize/gradient-relative-conic.png new file mode 100644 index 0000000000000000000000000000000000000000..232c5f0af4d8ed6861f9a3e70d5aaaa5cfaf6a3c GIT binary patch literal 88675 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%0Aa`KU8aa+q@@L}A( zQ%Q}`v~7W)3i>$6hXL$Ji#Q^Uxx-|tMg#a@u9*^CcpoDfW#g!b$0mX*(TJ|FNQ?C* zqteL-Q}X4<#N1nLjg(N5sBxu3kMde-O#V2t6L5F`i;APbqzYvZs&e&@_w`WadAXurPMFWPEvVFrH{Hm1@6YL zT1?}^0^p@@e=*{CreRGq<&_W@*G+$WRV|IUTIcx?pQ)t)iW+z>mUTFu|5jf!`$l+N z(8+Xg=(62!0}%lyJFKQfc+51VdK)U}dWFO38og+e4E^fqB*(Y`wnBWy!rO-nhePZC z!@8UPcg#e<2JsW%hw2l=l`jP*x$;e+z>%xYi01SbAXylu!xJ!|nXS&gXsVQ8JTA)G z)?m#<59>)4p5lu=G#hOeo8 zYxR9i-ZIu5Ln^lJij?pFC;&NgY|L4uhjnqXs;h){W1-FbCAlgqsTqD`i=D$+3%j2aeLwpdjq$yI+cR=k z4r2FjQ|fP%lNxkeE#y_cgS`OQ$~BVRxx&Fxp(Fc-v~Hh#l^Hbe!0-@giM3;f5&AiU zU?K2xjS`00Cw8buG;M3775%uK|MwZtLf$Fn01jx#I3)ly(XGcm^mH}({~ut&3#rCB z$dr`C#02ou-02 z0p1$ua_{kR0n41mR%}&8*eIi~KbLNoQ}QzEFF>)|qxokzkr!+F2cp`ynE&*do3G`) z5gz{BXsq-2-a#Ume&^jc}(yBz#{f{4j$PyL7 z)7nb4iRSxiUcIp10OZ$#wuBqW_vqM=*7Qu(#78_S(ty+){hT|?ca-iwPD~&~HzrGI zo48vJHLb)N$g+I4i)D_g0MoO!MvDKeCXz)SAJ#I^${u<3J7iuO zx4)Qu_{R5t)F6DXBO8*-1xqWRULvXZZj6Wg4jN}LwdA;$?*AEEzU78<0H1Iwd#W5o zoO}{qV>0k90w5mqcEVx%nTT!t%p79-&_LK%N0E*C{+BaGG=>|F-#>p!VELGGQxqQj zW1HfiJYvh$aM(jL0r|LyuH7-CzC_-!-C( z*I_z9k?lwQPF2?DNCC$OFzWGP-Xi>Gh6O{&tUfb*lBQ@6m=)X55bZj(>e4;b6C4*{ z@acc*0bw3F)CoS)0>Tg(=2?|JI1H3EO7EW~i(|QToBexy#R%Q?VcPEEUlVN>sevkS zLJ0u6pQCP)JIB?F_LMOX5d&65?~1=FcD9|Q2vhR)QZqj3zeiOS;M9{W4L}i%vV>E9 zY`teLaJRb>TUGi9ND@3%m$r^~Ka6LadZL%zxWoTvv`mnpd{D%$-YjNJ&+XQulow!b z;;xrxeI7@OYTwmvD@kel#9QQM*`j9N2}<{$jggWPT{Skc;JRv=PHB<^6R zk>0KFXKoCF(L%5UqHwdmvM>k_ibEqq89MI}rNOJ_p(;+YE_Nh7a>y5f*Oz})ws-M+ z9?Uf_3@-Ga@a-Uh+=@Z(D;GKIdWpC_em`j_#CU+szM6kah&8Y?;$VDd+6iX-VPr%u zEr2m3GFR*KzSng1&dKG%yO zPT($|H!gH3FlR+E0IlJ{6Z5@CqB?6?&|>ie#Plm*SAev*rq^AD17aUi2(4geSL<-K zLE1J^njaInE3>VDA4y9ox;&!Ua6X$Iy*;>@;Tz}qe%0pESmBeKFqMJA@x|%?Xfqs6vNW={f77ZE$O+F!O z<(LP)1X_b7M9=U9(07pT*m$RtWb(Z<@N?BTUv~Vb0T>&%?~g5XUKxE({xgN*iGlw0 z3^HB^{@xrp$?)a;`s<+|0(oxF+0VxmaLYyb1<|!VQlbz#fLuaBwrQj`!%HxeTEaLs zHJX*+Q*t~Aaj1On>awllq zpheyKl~1*h^qS)NSxPk(^7Vn7`Wtd2M*smW)fO@vD)&jZb+YzR5xu>LS%r<}JTTRr z8E<%!Wb=Im-Db3pAyWG>+i+*H1hjC_NUMTY^qY1U0jc@qlY%BZAKHh3+pYiX#s*mv z%tetN(67{UYR4LSes8|?v7P-R&vM0|^QY3D6tolW%{|yUL+G@KU!JFd3RkV(2ldcE zJJ(Li4kO$a(&I?4=kp@(SC^WLG#cZ=vdSfcsQCe{s-K8{9At`Z4}N&c(7j!5H~KD_ zYOyS3@1Iow3i8?D`!0K_Q^->9j9NaW|0r{l(kb0CXh-Ap^9624SoAyW-0(5bYenp(j zB7;%lIiKoMEa(2G4L64k=6}y-!F&9#f*CL&SNG<-HK$cL+*tzr?ThS8O(v#rlL^`) z!rtX-5jikbREh7~-V;dCn#KtbN7!1@kSE-uKEF@&pqICNnt(J5QJ@DTw9uH8?=ZS+ zNalkv-RoN>s{QLt@q>a+769Kx>TB*y6C+bj=>bpsk!{Y?usj5y<$ z@w2vHfM40FAwVO6U2As#ioRt@&L?xKWA~=wlCsEQg(D%{uynt4gyAKn07Flrw~@X; ze@32qVo$|rY>GU)A$LAi2R0<&_y3ptnhJVshP=gGbL}lf!Nz z9ThXP1z6)~ijDKqhX|^@oH~`@Mp(;|b04Kv(EU7(_=)bfrp8;OiulHt7>Ui1-MsnK z1g{d?MvUiXgo{)w}!^{IWql9FXrY7fUapuP4yi&VAWzLwxI`J9n9cua)3{2$Y`-KOV|!mHH0uexD(KZY*XzA;)){IEr= zs8Td1H>^3I;}3u`UA3uN`h>$O??yr-JZO~dc zaZ%|3e)WOn@;2C|F^*~*sQAYyz?PC@^pyMun0@J1l6IeZ8NgW2{LGFrS9$B0%3?zVp+>@@DQxeD=HeT@8wGCK*C&oYwTr%$2 z@2m}>xDEf{M66gb(99lyv1)mT?Hvt$#5U}VV4Id{HlcxfGe$vK1D?-P;DRI&5#nHf zfeycB)9KTMG~Y6~xo+-aVq6xsSkNe2ngDP$D{&}9`}v_me+$-sx~lo>q(>J_3831y z=eVC@XBt3n%?U6e8!jl^9h$GdDt@_^Xb!G((D%%+(x!|HF>8jX;Uv>SXgS?v2|5cA zRN>$*_fR<7SHkoA2yamqG9+4GUd`hRty@ zO!yfGKFsq8fP!m zHFH~8HZePqn}FAK@6C_hxp43SU*a>|sd7+t5JkymhxDC8c9T5g%aoD~LpZ zwiBuA0k9U}VC?XFZYJrDhdp|YwZW`5biNfbqmE>f^WBdT5+y(yso|Oif6dF};3{A( z|7Iui_s$x$jg1}j#q$5#$PueUxR4$AR$1(3=?0qxjq*U<5Ppme{M^pxVLlbz%`*f? z<0=pzQT}>#FMEfUq-~MYtcfNj!KR5udXsV5&wlCY^pkzRqsL!jU#XH~=!KUDe*5ub zdrC5FdVeEpez(A4L;2xOfh(T*n4H2w)78#D#i8+|a->L%)|V43f(f~0A}rNCG3Jlm!F3Tvt_HZG zs3>(luwKB+3&Ca&Boc@*$Fpx-f_jdFW0Xpf*Ib?BM3;<&CZ$3IDxX~Qz zla;q;b<;zsL#cJh7nfLPNK|K8!fRmC7~QEXzUh2QEdgvAk9J`Y2)5n(_!cG^c#qQb5A&Mcs(l7Rwwg;I*GsN+|d5{w1m7Wxl4DA z^A6%sYkiUV=ujRG#+z?f(pb2RyUZds@+3E*TpRUjsw?H0I*A1=RLgii8jh!l@1c4; z#uIpo%YKHbef@i7GKenF(+i1 zs^a^he!;EGEn@z-!?S)vz^>=0SEI@XDmFDwLtXq$w0<%WOoxlsvY1dA3zwGClKPyI zO9=B~e(J8$l{NSYhHgan`q)yA0Gm(kET}qJY%tU3(JKX$LDOi1rli_424A(8K|6TJ zhJ!zWcA*~fv=GX}k}+a8#)sHv4}4}0h<;8KNA%kfAJl1~%CW+&w~&?XH%4BT<|m|F zp^1m&b`n7!7gCGT%0HUTE1!0zTyv&_i0?A=NdHI~5>VYDl5>Vi5tA3azWldjV30?0 zaxK@WJU%Ss8x!QqrC+4@FBe~C_rsPl2H8`6nliG0Kmuzgh-y#QvFM6K*9Q6Uc&cAu zrh~B4lh)?0!a`{@J$7zet<8Y?a6lzkhCx|f*)16YWRU7# zj=rv0<~ZPPaeELR#6A_DPPn$x5~-b-m7S?Ji%qkK^pC7V4RwJ(wL5@q5$-KE?=kacZR(s zue8DL0I6k=)Hse@MX(PYB52F!&71!%f1k@{OHj>v^c6I(_*x3P`R8oR&fx2o`4}s| z2rBn5+p~;*fKt*QD9u}r3(=p7&x*!l?OW{G=MV`agpjd2Q+)yaNfyqn&HR=!RRNj- ze1!MSbDk-5)q^MAzh55~mmt#b$*)O(W}BOKMV2c0`dnqbrNI1?Xqfi-mF6`;HO|pj zi&)TIQ2hLZVwAc5p_uzRe4&bwIe3#$3S?JdrPJg{rBdX@AICDBELBGfHR=HYdWH?M zhvI$X!Y#Qaa)#1G=+T>AGBzVm2@qL0AmcdGH$0TFZ>x^ZoDnRd-Fc*hM57Fx~;k@^_t0b zG3V?F0corg4JNZeg<0sQFw5Mi(M+P6E%;c}AYXLoL@nJt&t8WB8PHaU=nH>3PGqF0 zwvY<8p|r=!UOF)q*GG3V9MZnc+4%87Y8n{;0(vp!iM>lvi(CrleV3r_*Y;G>8QOzb)#f~Jx# zJ;#ho6;Jw*|G=0i@|hQ-zqHeB(XdK@+bhbQzeH*V_OL7HRD&e*zN;mZ>t z)2%tAztY*lU-s=!L$32M5$1HkgMDQ+iR6@yGn~}@J7NYk{sU}gInS~pEe+mB@muCQ zyrMvESS0s7$h*sb5+Nw|yLqkWX>=VaL`6|7x4)2ec(RWAh|yOOtr6rkMj?IPzzX@R z)2&a-t)WA4@^pNmeH$P30y_6QJWBVn&3D$`QiMZrZL#AEMLqggchiGt^s%$9!a5=v z#XJfhXMo4F&E7wq*G5s$qY3A|5f=?YuG9aKzV4k1r0`F+zr^vddkU)@v?Gy2>nL^ z%i8p@Y8_9f-+J^S$~AW}R&qxoIclDo&5VmT6Ca47q7&f{g|2iD)d?>ioN^}4NOgj< zy8TPLQH}6SxKMO}%yZG0gx@cf0ArLf8SPy^vbvP5+!$sw43bEdQn~ec`J8AW-m`Zp z@31p#jmaPLcl=?Fd%d+F>@z1Zt`uPMPbP2Y&vKA03ZMVadN=_}0>xrXkW9{je7ha-_b z1w9+%w|kaN}0xjuOA!KX;{`A+^%tcLhFcL-&*(77oc(W%?A8p1pECtT3IpQ5hrshfLqrZPRYbcUu;@JiT`z(2mU&ovWJ8 z>L-QI>xiRa(e!SJ#|qV(){3|jvo+)h!?GyL=SDsC>{ zy7X(fn+$Sro5DfGRfkUK4%urmjb8V-oqgoxZvRd68|fjKRo6hzA?DrOkhpR7-S{!r z7R3S%P;=nG{`el#A86adkq}oacC*Yf^(PB(;$(QYx zFF=~V(y)RmCD{U#BL7LVdtVQmyGS^|M+LAyJT!{Bxtdub$|Ash0Sb*si+*dZvf%pe z*!DGTXv(lR&xE_V?#d_Vk-+$yE5+|Esedk%Ay?(hCPt6_RphX7%W(sUrvZ7-c!V)W z@UOPpe`6Gh{+z7*QMwv;VXA-{_Yr=elWm|Kd>_;({zbCIOK+FC+c@q(!pPO2lKd6A}Df-Tmlz3pa(s?tip~a2o^NFVJ zemny@J&}U($dlFs!>1|Q*Yst4<;c=|K<8_2;+8#vS6g{4UF~$$n|YA#5%6L!a-(+U z{gwWAE2_wVx~bywi8sgp+vPdyD+Qps>k{r}D)w~p!ynix%{OCvEs@V>*+*6CM?_r( z1L<7YoiCN7C5RI8UA!9};CK#aN8q7W__W`z%#3wasaqLi|@f5bI(V3SOA1ON1F+f>g?YwItiL~)aC*e&cA&V!4ab)1|+k*U0IL^s3STm0k#;$GL zBg#5D?>XF0C9{Yo+@GmV9b{`ltYPbnku9kFO$gt&1}8`<&Np@o9+ihHELD%$;;AT=D;$}hPtW+UNZi|fSs!lM`oTss zCLO-ai;#pulROh?x~!lpIK9}8cir+UfRNAOrb>Qla}qr zkGU_8hkh(S&=Lt_9}%>i?1KLQ063<8;IOQ4_Uzgo@@qq1Ha>-9aTtt%zH(2{Omw?e zudL;3+`Y!0(g;-0kG&gk1pT-5(*b=0kV{)i$YrPd(RKu4EJ@0=7cGM?Ej(*2AWl{` z23Pn+{CuW5BF%LFbRTu7nI4xc9uBb2AF+O~!p~g2t*mV5()!G3&)nBig4T3$l*T;UnG=29x zbQvA9x)(@2Mk-A-hk2PH10L#wBb3I@YZXsIvp1$d<7xj0tiwO~t0>qe4Mca#6PVh^>^(D7u9uswPyS6Kfrha_&C6 zLl&Owf~QsC08=S?24RJGX-xAy+2J|`XgfWCr3LcRrE|ppB-9p-^VbW>i>Nn`1BInS zL*++7F5)_F^d#vx1U~QtZIU48?F6uge=QocWq6|E zqY9L@iP_X9mI~)_mDOB$R=kMqW^_keBU$et-?QqNtsH`*>$Ek}84l9rwYPXb4rG=a z($2LZ!D|2-7ZjQ`ibDofozsoigQL{!S2vOL(DdMsc2&pm{NGRl@J}fZ334TOI-%l^ z=WEoHyAK^mRO-(4eZolXa*UeIw)vC%rhNF8SnTAc+)>{ zkA4c#*05Uzq^TZ>W?zDPV|Z5>jy}bng~85T9~Iqb#gCl25q+)O?pa*AIQe~@`Qo+Y zKQSxRdh;j9Ho1EwC7{#&xI}YOM&I=Hq+>}zRpSDMTw#fnGmX|{i@l|tETR2wYzbzk zCDyo&$16nYV9h}>!}LhBCQX*^D6;n|(vse5NG==zUc@_l|fEP`YtQ#V*J_Y(|SOjHP{jbUy?B8eKy_BqG*uphXG#w?%+}8Y?o{(-q0XBc~Swo0xeqtk%Rb(2Wwbtphwz^AL0P z|FLux3{fymnC?bOTDn8}q(Qo+yE~3L=~5b$mTr*lJi5CijyOO<>gZBJzI)&I`vbc> zvop`m?#?`u|C=Bdqk8l(kfR1|2BYDvx+DgWBa-@P&U;NLn`!N^MKIL+wJ(XKEyr1E zwN8CpOAiC5{@CPkChs=2CC6q1rsWE1wx-NCtz43?_gV!8fh& zoDmLGC0rHy1i2kmxS|{*Y(eEXsDN>Rs0xHDdJkG?k)eo^#Z8p1NQ%xTQi;0fm+G)T zk;R7>Qsfisu*nI*&+%@_;x!eu+Lt@eRfuyBb3qSkrWFp;=4@wMWWvC*POEtflA9%%LV}eftu*xmmf@cfeq?I$%_;^J7WSCd zw_?oH)z!u4s>o)y_)ZpHJoCbU`_ljPsZif|VqW&~>3$^&db{=HAdVd0SS!=boh#o57jigJVLQGw?#_{nU^I2o+f`@r}D z@&FoT1g0^2;rD8SbOgTb&<0K(jP*56!>jP5dM1@lFHie2=f7ul8dY9yTiF3g?@J#l z%MYeljPHNnKfjcNC4~WA*HTUo)9kjU)~%%LxuDS8hz!4-;6PaZl zReR&|M5;6Lmioo*8;Ie`A97k~2jV$9GgoBxw6GW6pl`J}SSPhF2A2x~FHRpGIm%bF z9q-Ci`vwbO?3E2b2sB_psU^s3?Yr{NGK%uk$_8p^vDm4|t1E*!ph;r`)QXwyt1H6hQ5L5S1V{$%3k1BK z-b}p&K_0N!;JG5^y&oZ`B7baLnFvyNcHWH`jEG2O&^F}TLVl8T zSqEiM_y+g`+fuSjV_5h7A@roihOQ1|er9Chu|db8Xz0(`FBgf9cXnCbY~sTcwXwi4 z+WXGoe=;)Eo8)q4MO^iPM?&!DNT1ef2GiW_R*lCgxA+4=IEJ*VO5-wUD0lr8{)oPJ zTfeS?e6FqkPj|%NNK+N6_AZ9ftIFr%{nh_NC3QrjR*?Z zwLEV|D-;Oz_hU1uBm~GC9OTrt8_YvG200(*5Hxze2l>R6SZ zUSZR+{yIYjD!B)i{2-sCDkLj6LkIsSL`2TBHJE_4YsUG3pTfiNCc7!~!CKRSj&C0_NRB?VQ4g6qDHuknl%6}d^z7m&MiqRa@U5uR_pV=0$#$dF$#SK0cm+*2+MxFs z&gHpz!uRbSK7Y)p`qx+9bJJLYj6bJlTkgb}fj>f^K@XX7c)Rfl-_vqw6utTMxqE3e z=LoqQq{Ac)b1g8Ce7}z*)~j5NyO*V z)?51!Q!q-3Y8{wtoBPQW2^J|esE(qf+_gAZy9&7CE{|dhO330=I=EKPUVR9|G9l7+ zaoC!DSX{rHcP{(K``=4o*y@kBGlfHc{g^E)5?#`En=;72`&Au;xm8Hb;mB6Lej;!r z!uI-1;7YTMjt-yb3z4EQ%8p>dKeDjY>TAB9hH)$7YiT1(?OmyZi9%!)%}0{--ECS! zV5a|VjGL_A&MD2VOJet7ECOssM8SnW1vnP!oHn8U!__7e<5L0gdYk;n8*1>{YPieM zo?G5E)zp_o;t6gg73_s+>;)k2AXs|iwCv{gb61CXMJ(uH3DNu%yayuMB1-$>n5arZ^ZA%l1yxjd8K&jzBcwf*>jD!OrL(0p1+jB7kAWQ3Y zls;gdl$e1Lp1~?6ywj}P!9eM{x7BEt|KHITsNCx-&c9KjuFpd)|CfYUqq8O**tc`p z+xijWDsugfV0z9i)u#Wwd1PuXsrSS8&n64>eYL|(AZ|oo$6yT2VgjNs$Oc9j;yL@6 z$G90DjnA!io8pZZU@{PZO&4O|F`eW?QbH_^dgb&yxvbF>@Gnj(FIwB`_lrDX4V+b9 z$D>KGTOpF-`2 z4!p-z4$$VGF$pw`>f>udz33>P7aY6(ya~ijdW@U47q1)owgrlL|%Z^9Qw@w6dnD z=s~b8Z>%zFk zz{qd3h$|CdQt7H^*hhjvME;BVp)T2RBzs>>?_FC};h1;9)JQoSm*?smr$+&rG^BRR za8-3ReKxDfOrTY9|9kWQxdOj~e%E9HCBQrN;Nl3=N+M97iM;#(fp;rn10IZ15*tDh zOxiF9()3!G^+W?xP$ZHZmGn#^|0eefh}!CIUvK%EZ%I|5GL#-xLzmkXpTG5IZ2czl z2MV?poV{@&LuF+iy6CdI};EP{$Or@m$Ok<+Ul-m!twu3i2Ji zMe9u_s?CP>lPMUt(;eb%Vzo|~l6WS*Vi!3)%IF6DJGuZOB7jWOa5Hw$?OBw}dFnQ! zp;$~|P6BVSl~G{*)>t`k#J&Oksd`iJQ-2QCcxdi_fX0J7k(zEz8h< zd7HENpf0j1ai%2v!ERJ}*llpiUtOpc7C0quRCV_I>G40qVSOloRZhN=V?nb3t@~ws z{8mK;Co{2TsGU-vmpo?rptTgrG&!Y?|GY|lajiSVRyJY>Nn&m4;)`_C;em~3jdv|(4uQfIQRO%%Yr}C2)KZZpLiJ_UyIptn z3r&Zu07~D1DfSq2Ao^SE%|h)40_$`3z2P+YA94J1)zS$rg$a<{kBcoNxmsZIRhV*I zwGTJIherhrk)C@my}@4SpDogs{vu-MD+*uXWu@uqsrggie~1X0AryWL{eitxZw!LB z>6&7jbSuW4Wj~2EMmvhf!~!nBP5{-?u-py7A_)#?Y!daWFh2Z{gOAr?7P2=j zQP7CkK-T*P1q|<4cgv2FyUJRixWZz(U@3l8Q+!TkST520DD|^W-puCRrjq_-MriIH zwe$vIcIxvEc8h6DTYCz)J>@q0mwWeR#Q*naGwFmKAD#N%I3i}l2>zeX%~g-tTl2Z%}p zr@1c)Ei+OJ6$KUH__HraKZH5BA!B*ijf<@ht_@=iNx(3$QGQVY6~f^jz3`3d7%+zM|XLr8!#oZHAdbpzR{mS|DB}u%m*YMT;-7gA11wI&+ zwrvX|2AGn^A5|VTm!Bc6q}Z@CM#ughq8<{;VW`hYZPwDT^a#fDD{H4jIs}|$AE>Do zXSy;SHJAFtbNx{wS=2yUy~%+z-D_cy_MNi)_tvj8vj z6S}dU?ByVb|Kg9alnHKqO%5zDkLiuF#+>B=A-$uUxmWf>$spGwWM*xm2KaR)xf~`X z0G#|}+R_-2|G81;Au+_B6a*%-vdHIL7&g{8<~s;!gRY-^}T!3WTtTMlaqL z)%t*?B9vT--XAn5Bg^NkdfvN?1Z5*Zd!=`5HCjc(rG>Wy+v$h^TE9;pF|OLnZ8MQ} z+`d&5KvR)Q;;0~>ZJ=r5N1n%d4-M4$`TydfOb&%FX+|Jrz@Ht<`{9fyC#^Z9^wlWu zoyK%;(%)doNWfY#&dlnKwW1K z@u{Oe?-BVI%%Twi8Ez^#V0~+BqvaMm-enfk!s_?KcmQjTs%iG~H;!qxm&%?T04}!H zQl_m1BKnyeKKyh3Q_3OJdu6mEq(@!T5e^c4D42;Qn4MwUR0gd<@Qx?-Ow(uJ6-ORd4_cgQ3QOriDFU2E8@Q)e z0w36ozT(+LQ$R${3Ghp-1y}4v()-`~Zv3}sP2ZNW*ugVwvfdFQ@4xqnmeNc|Q|Gny zxSVIlzQkN7tN@zj#s-7!LG^IXfN!$=*G!7`abR)rD}mh|G@(dQM!_ji%n3%cY|^ znN7aqMms;J-m*oXt0K;rkq**7wOHVT;ZUj!jnl3*_-1vBHru;X*&aOc*lKjRz(cI3 z;a(xD6RBq=b;;NjCw+GFXfX5dr%n{o$ys}@8>6%#z2z=13k9L0F)P{|Q|3fzF}x9I z7mtp+-Mn@6eNngcZr8Of6yWPZQ%MltdZzn|mEZz;wvXOc2S1$gj#jhF$?GR+>UQei zR#$l`wh5GYc~c32a;vS$F%K4!jdRlKVoV_P#aCq$5h?qS?^6r!GHfe$O=(5!mQksa zm%4t8gEqi^Ws{6L+yjYk+gtj;#_*s*7IgQEO<1~7_X%t8%!{X6=1K7Tuh8LS^#tL{ zSr1#;cNc#e6Z<4iEv2Q7bov0@X_$|265sfmsc%F)3}S_B!g3}s!_$A(%r z#=q;*MTK33;hifEQJ}7R+Ui9E+{&Ghh4f61yLe7EJA&R8*T4+?G99g@$2Ts|@^0aa zFMJz-OnCwvcX=xzhyZ>$w6IT7KmO#u0Nj)q;|Ri7#~qPxMtuLVL_neNL4EHp+M5%2 zKK*JG$eU7Og{r)21Sb{#>Z4ba zuF8VFU}@|O6mBhi$DcPgw&IkgKMSq`xmc+qn#uI6+WRVR6=uzU*62N`b-era^;>sX zLd|_W5E68kypr@xJ-lrse&nHFtQH=xid<#1$E7m)h~Kbp8P-&?lv9$;XA%~#Am-wb z?eAjO(!&u0o}Ws7`7Flz#_R((JPAJ09EO%drdob1OCSl)`@vFhJ z+h3qp*LPSccobb+Rz61%VvdNCI|jRPnGA=^g3m%Vx2kvJ1}S*z=_wAZ@F3q#ueFe1 z*rj?Foail6%ta6T`X|pd`yV5^K$}qA?6;}h1<12fY-(BCY6^Cbs4{m7#9jy_`ByPd9fjhqYL=AXw$l!j{>l? z`iBy)3N_?N4du++o2cszs|>7U=soMQEL>Rw@HC?&5qd z)!tz7^H%jHVe|u-+QvxU-2wuPJE&OeW5QQFXP3MF*<&bXr)VSIBSfv$4nPABV82dA z}|j<1oFZL=~hZ*U{@+9$uSLHf_b&_yj@K9iH(7T@W&V|?F#&^H$SmBcrZj+8)sjL z83fRu{p!H|?8m}RB5@md?|<5wAd1O>6)cF>`@v=1Aczbnjm7^@h4I-x$eOiExe?^F z4JSD0{RoHg#Zq_nbcRZ$@~+6B4{$PMv)!>yF>CDFisMfLO%gEGfRnH4u5KcRoY}%p zoI}+48^B@LeB^d9_$r$*AfnH#6zA#F5t2Ko))K_xK9m1kSEP9Z7{bfZ zdTtrfz`{|A_8(lj`9BNQzekRZ%<8ULvZ^0<(w5d1ruxu7bKhi>vqhm!3NWVE$lEx* z|(A4o{uh zPM2{%*@-Fgs=u!B^_9e89ru%6Jvv4?BdQa%yZ$Gp6+VKgEskg>*9RzJ_zIRpoLwuz ze-GR(FxR!roNn!Z&N3J1=FT10T^w=k`o}2z{bO2Itr!J$i34|wU;VOfJcEMVZQi9h zl;T4%N-v-Bs`G zhTE8FztKT4bl*8Q-=M*$T*xT*ErHG8_zay!o~$$cw&=W0+|%58g>=-%dB*nBw$Z|= zKy6B$mD0JbWDNXPb;vZhWEUz7$CM@UfZgj_B;StIcMND?CZ^mittpOYc1ji!CJx(N z{|O@R#)KXk-^eIIrKmp7#+?Ns(4*nTPr0&@Dc`Kbw+RF$ippObmIsw`LUSXtB6H{B z2d0jfyM7wJ3tlXXf=@t_+Z}Vwz5F3?L>~UoFuKx(%G{jp4YBEbGP1Nt+Uu<6IZ>3F z4$a-NbNSvS#|`@`x2>sRn_4<;JJM3tzAKda%z5^KGS=R1tI1XtpPFbm>OBceyG~SkP%0~JtlFh3v2=!OC2ceE&w0xv z#eh6gsV$~qma0{r+>Av)9ORj%xn+z__@>bUx$f_ggdV5S{U@#-ZXOx0r7t~U}Q)zBANU50&iX?FT? zO|mN4Z{r9FQUjT-=ef!BQ-pfe8khlE+%n~;a+%8Ts@9=X)9b6-Y&j-O9P zD#~ocgX)g0&_W!)E)A-OO;zZBOea+*RXWnd0k+YKkNnMq`eX}9`T89IWn87}bXfuK zYE5|yCkmsPlRLcwhD;y-nS?h$XBK>p1gq@*y*GsblUQa0M0iudnN7ywjcIRtsu_kk z_tdI(25WDj+*>sfxz2VirMmE0`V!rL#!dAB=KtZwKM``>1LN`v(5#1r>M<3@NptLR zSdJ>O-6&I~D#dgSp1Z)OBKg*hdBJUEy;~np#hm-&UG-AFn%Gv~@}wBQ3b9oKxXD-t z0ZU!9UUn1Ci3&_lnbyl3AO-~l?4?Q8#%zL>J}^SQ4&+q&EsZ!-r+g<8XH}aY3IA4E z3{iRwWzP|Ps(m-TSv?0+GY$P%YH>e5xjFH|iFfpyMCsr=-eChL7ZPKTVL9EQzrjt0 zQ}7W2?F=3)b}>=6{6c|WV}qFE_CpdXv|AYi~szWfYSx+^x=PJL92pm%b$B=8*zfz#JZuX*93?^gf5U)12SB1b_(t2_TZ~4&64PoS zR)PE^?6Pby-uHRA=T#09XEpRA2z5-0$?USK&kmWq{D25ib!UG8Tkt!!m77` z<~Ki(&hxgP=E8|23nua9gEG=JS99S=t-*aS>0Ijv7Rj@Ee4|?;zh0}s{n8u5xcS3B z{~dNu>Qdtu0e#jV><@|r0-E-fZ|Er_6YxmNN$CaYUcEU;dWGaVC5&X#=rHL_UVOE> z@^U_SI?J$!oNt9VA!q1^k#Yk=fZe_9Xw-f?R`Url!PBG=KKZskI09F|KCHjVjd*@S!}Yu58{@h=LD2bDr7uHTpXSL~$m5WiU`XolI3tSOR+`#{Tk` zOu+wx=_%h88Nc#P_8TOHJw(uO z4yflnJ3=g}th|RR3FxQTJcI_+IqNlUSbH7M*di-ueD>dLR4Q2JI5;k4sdd-sbHMKS zVA|x)Ks(1&l)qUF;?BQ+xTgORk=3ScWBbn5z^wmEU_^>?lh>zT0o1FUN;c=Ft$MtG zlBHr}i)^JP5l#oEZdhfP(>dlR)cdfRrbA2=GBC@2KQWXuAL;It$QK;BTAGG0y^*lu zw|mBVkyn+Q284*8+gBS)ymms&41YQ9A*d430UG?;nPSPp7L0OcUK@E~ZTM>qHsdRZ z^_XC;Bw(n~^x;zO7~zygP>`Ts}%c7jcS1x~SSt@EJ{b%|{;Bt_! z+qibY**~cHgh@V$aA4<{Wmoio^Y519`E{@m9XP%Gbv9BTDu^oGP{iwRChGjV?~cTk zFQ!z@Y@MYNU*jbIZck>u#>Kp6SHUV$?f;(q8G~x1L5}DF4^a=vkHC4GPAZbTmFzX{ zu?E$wBZb3Fv4^%7!3N{Q?HxEuFmloJf{f0hV3a9-K%^CEB#>la22BnYRdJ5aS|+78 z$sdCKD0f|0)?ugA%3Um2T&uz;YC6q|!YT=TnY5J;R~l+Kq-vdf)kpQ=n@|S@mez#0 znTrLt;b&|qHQ-lA>~Uris|woBDNhqH;)gS?YYlyo>s9@*UMc6YCeFj8jC{SzinRSG z=ygbKxOp0`1O3-kPHcE8$@KYa#6=gloIxq7C7kecrAAH|&*NQGaraFHbp~;Ob}DLg z5@Q^`_Jj{2fg!gEf<13}Wib1r;za!q5HU)zrU&DAv=v4=FtjB3lQJ4n|K8t`p7S)5 zF}oM)^gqAj_*l{HUh6w?GS;bPUy9oE{57TZ`#Y-5pbe7lI-Gd? z3gW21Uj)-(S=KU1AM_UGvu_I9y#w|eLlj5*?ORRM<69Axcq?IMh9{2AxF^8$DDcAf z9U?j}%W~7xXh}rC`Z_->zNB)2$flruNZGWuwC(f{V(Bl=iz8bD&A47V#9aatOG|S5 z9k}0~ir$eS(P6*R$mQB5nvTjknHF3z86WYB5mIQ+^sYjoa&dWpl}#G-OUn{MMiG;X zI42hz4GKC{VGaVJ82_t+OGP$7F z>F+`Ki_~=?+K$AEgTRLdCt&d{ARHQ9^(0i2ofa;XSgD+U|3OXo4~udi{b1-I_-D@9 z1Av=>;B?+ftvRpY3kobH#f&^G)Q4Jy%CPno_cxv}dgE2g1oC_bxr~^z@?CqsQag%G z1vZIWYW9-#OOY32eDT5R4~!93hMNH&-RZTgFE>?kAQF1!NCSWpD56l(P@`g8fOR1b3%a_wND`0AHYVgjhE}eE*|XVH`G={)GP!J?Q!g% zj=4$Y2A?=J$Lg?L6}3rECa)4w-adO11O;Z;XtN5UDxk*#eymv_=PG8iXE)gb+SOnh1bILD=Vt?w~2mjMVlwW655E8`(%djMi&~l zk2+C;->BOwmt=I0J`-(m);WKKbhr@^YZM+Pc`?E0kad&O7!dTGSVl@}K%#ddL`m|Uc^Ce$47`b4rGad3r}$C(@w3eJhB6F+VSCg zImEuBFg+Wb5nK(Z$8M=jT_K z=65uavExxAZLo_I##&3i8c9HJR*(RpUUE78A|Kazf`2Z&QxFio_>BAuO7%@}&O@N^ zTT*D4y!HV0=eSitRx1pqu`gBrpV>8==e!L#R|+Ulsr^36RSAVo`PQ*x;t`z{c}PQ{ zTOkNrYc&;7D*65rznxYORC*Eq?x4iW&V^Koz-at`dLe5XJJquF?-z2>ZJvCWU`NLgNwOljYIIg zBNF_}HYcFy`rv!FF17!?Iyvk) zOS0>}9Mv0X5j&KpuSYkow>?Tt8uEN~eKN`WRT5Y`JYOc9sv-R5YA+jKF-Fxd;e{-HXIb+F{RC|lRpJT!jXxN=tA2=Lb0D>!(bg>qMHlW3)Nt4r!Tfx zu`$inoMvM9X2f)}T}NS`7a;iFcCv&rIi&g7eqUqBvA>GEQ<1yIUHqv%tw_~5@}qZPJol#w19=sYtKVw|evP*_kN;^nZ(rV%onp;~ zxtgQ>QfU#T0$fI`;;8>TZ0Go<_zTJ`sU718LMTVF`b}{>=;h;jlaDA;gNFF%-bkN5 z&%+KZZkI>B?^?tB9n6;+RBc3&>_XyD)m$n8MWP;%*rp;p;8kDM{n1U+a;mrU^1=9x zRnR>om@j|pR`Vp77(6W66K5b$X2Yk!oQ$$buUW&gF#Coyk%Z$dYozM?jmlUQs;cjh zD^qwmfy+;EQ96Z7+hp6=1%?pMd#~7M5Xm&?R@P4I!qPA_h$Bk!ljD))y$Xqm@%v^% z)I&W)k?Py*PjSz0q(=yol0Cl$D7f_o4Q&wA_XN1qoqq#yF82Wr0sUZZd}|Kl)AuK_ zHZui<-{mpxmWNBYB*yuYOB8G;W6w3( z-nC&T{EVf$4eU7BwIFHaNtAqC#kQ)Cc)==|{^ML#VC>n$Hc)O%4Oayj`HMD1znTdV z!}-|hNth^w_n7rRNl=M?3f-l)n}~ryM0y{lQZPp+Xh`?iD}~A!F$<#%7>#iOBcw(e zpL%{gvnpS*sg-Y35t1u?RUeb8GP|_T&M)^(5i}z$*gQs}U9RSSGWA&7v244R=ZP+w zCUg4@L_Pe4h&L{>eIqFq4=hWSb-pCL-<0l96LE0D4O)TPZZaJL(ydt+i>Aq^cKnA4 zyohWKS*3r>zENjYD|pk7=u(}JzE|5)m);alKlOc5GN}vih&x*zk5r z{qE$|hCzf;CFe}*(|J654eLx631(m7OS@k177IEf4N!3fwPNxHcue**97#6T9SO<& zo}fLO6u^NX@g-<7yjKL)v)Ml*o6WGXA=^d{?JLIE4kR4Skl4K`sLBbSTO73V$vhmt zhc0p1j3{l=f9(q3Bu?;KL3iM?+mzn23?`kL$g!DX^NM{F`4OcEKaoU9L{DAWi+yYi zl)#V5k6iOrwMMJV!BtHkURDhlIh6W4iOZAv%InGHt3PSXz_xKW>>AOxzXB0L{W9q@ zFx^(l4Q&=pK*n3;hg(RLO0nonme0PFis%d^BZ5%k=`U`#c35@Q4)x6WL#Xv?v~V~M zXx?pLxdn_0jy-oeKbN^2Unce&r)E@4gts((H;??=22-Y`yl+9KWwjJjbC#ZZl>5jt zW7{^w=KwhK!L& zCK);^@C9%T15+gOlci9 z`JlY6k%*Yy4EKm9`~oBlqOt8Ambg;y@f6 zTJ%f^SlVA>Jd@e-ao+6ti$d!)E@u|+f9r|wPKmG;+kmg}*%CAWjK#o%hW`?fSUv_X zUP&5!1qy1btH(PcKYl`QLvWQfQtaR^8_L2PZzXwf<67ZhC46#02loeiT4Q06O>e8} zIs})V@1D(KEk$ zL&m6_d6jme!FbinLw9kDNO&yj>0a7@@KV^CAZ`nPdtbxkF{0^o{6mUj@@&Hqturff zuQ)U3=287Df9V86y8z^Eb)Q_ z0(|B+E!)_}o&ZkrwhKz@CLB&FO$_l@+?r(s<7Kvk*w{Fd*g>P9^$j}AKaq^#q=_xY zed7YzpW4(Mj2(UC!%cZv`uV?jXT=1mvWub#FxGY4E*jbDGu$98#!Ymy{!Z7vLG)#b zvWT+P{q^bw6Oo&4hpISs5^Lm-wz@PfMYewoQP4r{DVzOI1HcSZj8LdMeZFnC6{nRz z$I?UMNt4ncz_+?PJYw86lJOtwe*m-UOzk%mlPhb+wU6lg;tQf~r%Jz0W9)RcOjHZ4s71AOqNqIP1GoGQF5FCrs!FMMw-#kXh?-juV z6Ng_-zeFa7st6`Hr2^yMW&nvSZ+8-vI;A?PRTov~yuavqEfV5tCpHe{Nc1{W)|}If zKH!<-Fx^5~A2f6O3TYA#e!GRIQV!)_w8~zF(K>3?eM24?lHQzSTR^9yL((~HVIU?} zt#uMdWVKCxd&PbDi*}PpDDq2#0~d2a!udm2L=W=$#js{3 zHsM8m0VNXfYsUN+{*|3ic;1wguT0c!@7Fl^siuI~G=qdo5VT;SU2dE@2id|*r|Par z8GOzko9U${BuC9V#2oYS{G9D)znY-#?=KUtsS4X%7UL$nMScg~!T-*!K1(Jb%#gv4 zuY|X?MiUf?OM_J0z0ZY@oh_*o4#h7;XC?u*fJA= zItCpb#$TiZ{ZN8%x-b-4sn!$%QP60E*JJ9VTF2zdQKc$qWf9=xU-!eT{C!Oz&=S^ZwE|+@IL@++{o9st`R2dXMAFmp_B-_Dx%B#GL|tNrGt^oJEefS@9QtNC}>{kwEDXEnr zj1C#KVqn-;4*K5jTgzW${Z*m6u#V%>3ti4|t%pmtNm>%TZ8 z*?ZykCQI_gExs$e-0bDAJ?hpw_`T=Rcq^2lNH^5jeMi&KZ|B$ZI-WHLy7&dijKU%@ zI{10%JmsNWCxT4AS!=3^6)CVJxjI|AfrW#!ry?Up#L+GZ8CD-ch99{=9KQmjGhtaMcMu_@9W7o1(Y7#k0djF?9Rsb6n?IEXgzq(okm?wXeUS1JNmT~8Bn(#iQ2Mpc z!_AmY1^iK5!~GZNzu(<)?R-frqW|*w)?D&AO0M~}-}Nf#?ORRvC(48V`@MBqD&MW3 z!$Ne_jjU8LjLL|g?QA1Hd#{<7FFk&XokqF+h^}xVPzw`UpNb=9vE^!JK9qO_ zC7VQm=C@9}%z>{&9-G2u$?ff2kvXFJQzs-iip=TH&a2InHd;EGoCn%2hWzVP6*?;z z??JIk+egQ!`lmnG>gaM2EW_LeT-!^cwXyt!Hj6HE0NQNfRrSh)TfITYN^d$5_i|JG z?a|=dzKrCSqdh9^BfeYT+1F0Nu`&v|{dP?ovfn~WVki)K^wl6{qlb_tomY#4Z{%)P zUkW*}!V$YQHFoURIrsF|k^E%+W*w^_ae~6%YE+@y?IX_bq}1M|f(A%kblW5OZuyM@&}jW!l}$-L98d^b?!Ql1q4C?r7j#2{p-P-Ix-1Db{or=jS!3tvOxfy&6YK~(pE zU6uqxw-Z$denWiex zY&p_Sh)d~b9Pzp(NGzVz7;0|2dsl<8ijhUaoTzE-JjuRd72mLJWW;RhqGlp$V?W$4 z0o{opE-3NDSJ0C^2nl}r5`7prmMwYnG0%Smz32XE69-0<=#eQ5EEJh+-{n28m=jXAT!3aoPS;0JKFnbd*S^Hh0wa@O$Eleel%GMnJ!VR5&MO=wm@J`iEc@XlsH5f zNNvrDJ-%H~4#{$WQ=a)742P_|JV0o9uHA62(%Y`}D7ya?Z=jUbw{y3n)>=h;;tO zWPU48xewcXPt?LiG50pkT7s*U%;qF3ZZ|d@LRQJV7BHFQkD#I;x>wzTh=t{g#Ak1~ zRJJm4OH`DP<$ahN6^yRlIFL}8FA+duni@zjRtTy?8Fadzd-Gq2|M8t^O7X7sP=EWz zfOgy0zF)Sv^uM)}#LL=-19#ikcHI%pWT$Fel;?7V%`JV3I-Rejt*%m!#ZZiY17h`N z>c4$xJ~WC?FdBmV#>t#5W*jHj&Ru?Av#=adbJ!|Pa1FA%{DzURrY*42symuVhT4tY zS4%LrVZKai-H^nRY}IOuh)!`tk`P@bbWR83*CU-R_uP-?`>D)yqW|ga6D5qh*|$ou zk#z@YaO>sWOSzoDm#!EWfc;JMjG{OgR)Gl#nzSH85GI5>(aQ5N1&454$E9_B+g9L` zgM6ijEA*qOVYBX;tecjD+BWHWp=^V*ngbZY*k_89;u#B=)DJcu0qm_}UxP0EH>Ri; zoCy#6w29?cT9J9%NTl;f1T_w*Ax3i9GBF=ydS#sMaE?e`U$Z88S73gy*k}C)_~CsU zNsY6%bnU(13Q0;HdSl7Ubi<*j`1igzq;-e)9u)yMtCgei)bG16YEOAE2+jA4Syhbj zc)O(uwLwSPH_BJ~v&+!6Uf+!vY=%$>Xi(3T*S}0fYjND6%E~6b{G*s^igHjsvk2P* zNzYneh5#|i9dr_$QPk_q*5b06**e|+CiSapw*&F;0>(GF8i)F8=IVXDzS`I_L#L!H zI+<3kwNLc3-tK1xq>2Y*4ufigR0yMaUemr5=xJJV{-vz-ohCNbuZ3%FFGF5l4j7Du zzjQUsXGgak6m7!KQ9p0E9Vpo9^SaGUaCNk@O>sQ}xJm+`A?28;pVS-5y4+@bUJt%{(u;HIc=)QFhZ zzg^1mrrI&?UK%}On&6XPYOPv7SFO<+$@-#70)#UK6?h8|y%`dOEw62L0tqbzGtR+%;g@uw&U=y?C zxmw#TiS&~?maI-ojO)U zaqNn5yqjtIk`%*->0<&Mt}cgi!k-=7?rpM9uU$(Qt9--W8S~l?>u8V(7-#r~d2iFj zZfAfc2e%yanj# z)A)XokeF@11(H%$bCrPdeo}mTjQt&NZD)O(8o8H1~5OnfcZ*HIG=zIXI>Lq=( zuiBlYhHY%cxTx9yE|p%xqA9oM+6i!0spaW%2^xNCC?%7+4u5r3(XuXSdB@RT-LPiM zYDI(kQ=s;>Shr$$@wyVpYkeaRW}EddlJ{ZrWXaPE?p?VcyyCXMk4^`c_g=OeMjUPN z9X&7gSY9WOM9nqv7&^@T_3USsSXIwuG^odZt#A_vIr$%`Uar5?u^vlEYp}I=LGw?!^9j+hkkFv;{{h)RCchY)tB|5= zuQsPF*s!Zb3PvxIu4zT%BBa-=8nVCB#@6bR@7nhvzHc>Ckej0^aa+ z^^?#3-Jn^)rY4a$Z}iSjz4!k1gTwCYkN*DkGLC3nTSHiU! zwqW$gDh5aLY-_MuuyTH{YTvKuJYB_{-5zdn(HXtQ(-)rk2O_#A4Vx?&aD=UL^byU`QsziQUf zD>F{?3}?8bO%d{J!5rGMDIfja=bOK)E(wEp)zi7Z+lgDbI#Eo8ZpF$KArRR{Pqt!W zlk+y)C)i5fSW%KR(t&#LblErTKspnQV)S$ft<(et>*`Y6bn7}2(l;OC=!tF{#;*p=Ix7*bitv%%;E2Zuas7jQzOHf-dDqfpo~Y}?@5)EKM8 z8`-B^{T)|-cS~&E_)?UuKU*CfQN^6^-xZx~)J{!g-N4z^ag!o!X1E})`8y+>8h~>? zjuzKqBOPL_>&(Kf2*4TslqF-x&V#CC^K@$d&X{NohRky6+Ne8;({6{S3sE$)BrUf| zc%OScoia30XvmjZ6`y_f1M9zv%$BYRc@x?8=BYOeyRSX=&LQIlTXJhV4@)3hwrn$) zv-*0>0dMwiM^dnIAX<^o;ZrN2*ymXznu&J2c|Vlr1WdY+XDc@mV?%#7lNB@iv)HyP zqVlf#yDuF4ozy&A{GD03OY?UYV{3m_N+ln(@}VQob@CRSs@Hh79>9n0^TNaYe%2AG<&Tm0Dtq4oRnWdjH zDIx~d%wm5FWhqsqs)=GhtrUr0eD-ex9ag2aDT%0b~Y$QqX+i6(L>RKZRp9G#=LRT zTp7}e`%~T(*b&hk(OYVm+f~Nxv_{%y`YO><%d=Um*yyH`O0i8B=VPAD+kI$a%SX~7(y~Bssk3SIqVLmX#!j4fB+Q^;+787g5^BnGdhpeYH-NnPY&#im$JCpL-B%xb*8{g5P~@&M%%tO07_kY= ztz{o7%Iwcb#6L`nox#@ibn^+jCj1mnBDl7gX9M^u@;tq^<%A=ogzZ8Yy%uAY8Lil0 z^rUJkBIMa@c{cCc{M{zMS^V7>@6w&4zq?f#$IaiV?y_=0n;m?zs|eeP8sj4DF81ZM z=Gol*U6N+*oOH@+{fYuOAn)k!xD?swma%7-r7@@#$*r8@&xSp$sPJ@3mV&tzVc$HQ z!k4Lo%&c52Mh9mHvl6qP?a*o{QuBAUnCvP|gh?j;+;cW>{0oD;d80R`-aPCcf7f_R zZotQKQw_vmwBYReah$q|`1ig~r@2b%3 zV<-i4P2|G60=wq#Znqfg8+jtd>s9Bqb5T5<9Cf~^;$q)Kz9^pVK)RxfFr$|@+1nI3 z)nXCWnn0wDt%=Og4mCBcR-|~MC$&{1*5KeefoywvSqQ4$*$57fd~*U=f`-r@ButTH zFBRTRe(z$Bn>pmo8@>5>`@SjIJ<)%(x5&5^b0ljv=H^=y0hhzElB$&;ByG&S^$xBm zR2pLJ2V0E}4)N13i_d>DpqPd79*<-BF-)(FRg$w3n zUyNQp`nxavqux=vEy_eYDHhNCos?JBgOFW~uEppzEycuDA)6X>JH8TXZ9_1_Kln0w*Nz6|2L6c$;T3-d!hW&bAPeo+qLJBhx*MSZ#v$-?>8SD zc3*k?i4}3xuDM<-Hzwdb=7`@a`!a91R^q2o6!G^6Th~C;**bts!z%i-v1nJ~30VYH z=6Dja+rXp}ibWv3w$&7l_AJO#W`Cw4sWjv%@+=)-XT1Az;hp)r+j1OC$x@M5ZoV{6 zcMy5E*G+)kp^`6}r#pzOTz*s08z)_Ey;rL=(!t+(6E??&ELV^Pf5*zX;8N>q4pxrE zGAWAaGnk-i5(!2xS&St&edsg94Y*eH#2W3JC04&!j|!{WR_zv#v@bvRe%vvYYUhzR z&bBvg^yXprZZK{|Tpd}t8^zqX4l&HF5X^htI<(bp^`F4`qgMmYViN=l^SEX$xrnU-yXNEDx*rMF=CCLuK%|VOQ;(lZEcP+;5iD|P3@AQ`{?~>L$ zTP~BGROIFMoNN(E4kBOf^X_NVUE8uG$5q`sv#PrL%sDgC*g^!xm_OiwAov09`~hG| zHohR=F#G^dJV6*cc;%f3B8&-m_XGBb-~~rOgk{UJ#z zr{>H-73~vCD=Vvey2`88%AHwl03ga-oP**(^mMw_N$DI;F_w%hlrCU2=rN8l)(B5V z5M?W4iY*dZrPVH$eFaRR}elxUDVuEx;< zDz%TvC9K>u2+Pl<4V1 z05VOxi!m0xzte-)yH~$K$6@>qfi|%m;Z-l#Ixm7|rKzzb6EK}ux9~UkyH=41qSk8N zXu^P{0}ug^*#(fy9VK9eMFK61O`gt}acM*VZ1j@$p~=3CTY)PH?CHP?5Co*hnnMOQ z55Qp{*uJq@OSdE6%Hfm%3LPZmE}VQP2kd-n(Z%WAUyOSl?CB1Wypnu;!+Fb%9)E_V zV#oVTS-Ay?^?)+#oXkz<)0rO(n=^DC45CfcC=mNDDkk~pr2>u|Rr_Sj-Vlk3UhMCt ziWuzgfD67T$X35kRxGM5)>i~Ilw=$u@}us^M2!p4Q>S``@u10i_v4^)kXeVk|0 z3h-f!`a3a_5lr~I1Y#>&Ii9vc{1_-}1rR^)69cdwXImG8txVJIFb&%| zQmaPyUhiIudS^%gZ49j}NwRB0oiS_eacjKxNo&^1t7fOd+6f1=ZM1GRvC?_q1x^Mj z^q$TEG{Q4T0R+{HI9DW+zaz}RB5PkXYY4)}SdpTrMq`0p+erG>IF`w7i$tz7%^|s zxMhj;>Sd1c@-e$!c9#uVl+-*=P--6^ca*2v_d)FnF_Nr|?C+`~M$uZ=EBLp{n6!d2 z@UO8<5rGLa;WQzaWt*UPPV4}IPK>?b_oO3ZkAgwl7`xGNZk^d^z4l%7YH)z!u{xzY zPpVew#)E9`wAA5McsddrSc6=e5K;Sp*yx3P8f9+ucf7tLDvOO$1z45^ zL^0x88no(kvG(n8ZTl=659gJ6=4=2pHgc5;P#zIQB)9(y(5*6QY4bSWS76xFA$dpMBmxb+kk1e<5FATb&B zG}c%h$SRgwBNiUV-8@Jnjifc%=t(k;4>2|aoyPAFn^>mspl?+0cR%@t*Sli_0_@uB z9Z8~FEj++z?$Br%JY9&faePe+ z9qR@L$zegllW5Z9-iU*zQ)ncJNGh~4xHZ?%8@(kMNzCSvcv(dR?D!()dPVVk6b~ZF{w~K@ z4@}In!QWX$fQ?b^Mc&^Ht=c)U^L=hvx?%jWZfLtUAjupleWYw>Y-9Ciu#GXTQR`l< z1`?zjuX-`Ysz!kW(t#jw1S*(2q#%D7LMvcUH%E#9*vdH&GO6*vx0*O>L=vj8G@;}E z$-!}*VN?^5^b0MKEQ${VanJE=m9DMKq}&?1l|~N|$z=)vo^1ycWs0gwTU~^&eD_O* zD13+{Z@JO?!XG@k*uCbQ-IT^1o>;F|<`(4E($IOZZC2%s5kj_L^+pqsV{Zi)4QSbq-qD%Di0c^ylGSjLFrOO z!UH9BteKiXdVod=BLeAw3?N$ED02$61Yv+zPyh%^GFdr}haS-A>Ed04V`D+Wo|Uca z>A015E&?o1LfV^fXH;S4&I_;H`C=_b^?%my@FA5v-oCg<>^}8a5^JSahsxZ7xh7NI zZ92?eG;0o~72shtWGk1IvaU0*knL?H;2Fi~INXKby2!Ic9)ciBt@UIVqDXQ@B9H=7 zb0qnB?x9tBl5CJmVLgeSG&Y3d7-Jol-rwn%b{ngkfTdBb9ssdXyKdP2%j;h!0d&*Y zo7x}ZMA?n@p6+f>eaO?t5RV0dlNl3u{ zu3k8i0rBO5Rb|7mZ2Ib{#Zxx$N8f$%z{)Hi_=JbsX0UH3yWzMWZtNT$HoJb~fz!L8 z>nWJKp;bzTJ*9Rp4}{k4m8%mNfH!wsoiLCdXc*9gW%~z z9K4Iz$5=AtNNZZ7V!fi(gL^r!8n#`3{;jwE4g}bzwRviwhJ1#-+1r)wZ*EPi`x{%e z8mzRt_0B6D!qE0ZJM_(ffP++n1LQqjFTKB$VF0cd$^nDcks3`yQiFA5<4IB&-78pX z00e@GKYfO1gME`p*8qufok0S4#^GF@V50|Y)_j-L*OLggXazB6(8?i;5=>-?xG@=X z1Y*JgAdldN*4+KoJD;D)unSV{QpsDMZR^kT#ou2fcGFhw@PWAlWsX~`rUliB0I<@& zpmb1e93U8QPnIWUC)E*)J-MYQO+e}Is9tgl?AkcI6zgZR_T^SVmXmK`BnU&R1w@{t zLJr8FXfehHV8!V8a=ju?Oo_$W)(nKAF{)ELLUdtvy*u;%?!B*>XOy|AY-`oi+y3dT zBX_sXcgGi2ntt8y)>}gAyMEX8QQ&rMucQ(rc5?9k4t4Z&8jU0oWlp2@Bp8bz2{iE_Z)Z zE^>5jk&Kv26ZMi?qPiH8ZJ;08vRL%>cs=Sb`TxrmX zA+}1(png6bTd)ACJL4WJH+PxU8Zdp6^?LW&8NE9^)y}xNtChSdsa+~|fBMjgm6_|6 zxw%3FlL;W6Ha8IXs?C@IXUUnZ>XL9Bay?|jSok~OCH?%?^#?;Hxvv8v5CN0J?Al_l zVo#gjE|SUUVO~EA5htSuB&`X+3Zlkp6O^&F+InERP?ohqHhNgAEumNs7f0tG0Khl5 zf2%&WRZs2AMqfO8U#(PsQK9*YSnSSP?1oU!BCpjD@Z$^G%H@auUX z?|}a!5?0!ASOJXosNVcm4>2F0caJmGK3U28((gUG*!}2}&e_d9Xmg>=UD2$%c|+&H zgZ3C}t(nsp;POItOS~K+gPN=+sqi*gnwTUh=B}wOg5TOkFlrXq5My~y7~S7!sBGKYRM#8vyW6$A7*1 zrL+6L`tI57`>Iv?e2r_bZxqw9PW#OpbKtbL9rwqRMvJlOY@ipo!MIAwoVkQ1(Ls`$Vp z?I#(O=b9U4`rm!Y2eo<0n-{_VkCL}s>^?I$Fn9ejcd(&jr8}8WIX)^?Y(>tuV#TmZ z)?1NDYjW~Js>hGAkj2)igBPu-ULml2{-_9L3WuxNDjqka4a)qGcR>!AjovBIwpOiz zzq`?&KJ(sB9r(wO{neYl{#t*ud*`EXzjf=K57rOBpNorAxjQlId)~)2v2+jt(KrC$m;eZgv}jtZ5J+LWvV$Ni$?jx#tS(ljKW}e5 zd-mqX-g*T9{^2*j`u*Sd-rbM9{_@ei+eFUC_4;-r&xsmKjW!!8dH~dRB~eA0Gq#mN zQE+eq4FEWR0R$`qiI#*w3j{P4B2xS;K`K6!UM%Cl3c#>u#tgV#!QB~@WZg=W=V+c} zfRB7-{^UPC4L}E2ybpuqg?*NZ-7BB`EbxxkAajT3RyK46nIMz*+vCeC5|^|t?{YP7 z%~p=VLy_LfG4LB>3DzW%u_R+qI?#~O4uq{Gt*~*RvuY4+B#+GYLT((mJ=}l4yXC-d zegEI^GcSJPSN`4Gz15rN{VzJOYEFBdZaPkTU0p@LlaY1s+Z8zn18P;Mp|y{U7gv1v%>FP1#Oo$OXtS-_Zo z2W-y8#)1E8Kk@g!_J#xU_T7{Aq7^DCmq0t1)k^LF34!u?Hq=N|^-tQBo{mp%o-%?D z`$bVUeKUI^LpEzO6^V(~c@h?<*m|R%zVxX|;FeiDCZD9_)lJLA?zzuW{h_W!=IY#f zxS6fNnkSSe^$q#X0MytO9vs(j{O>Em}l{&V=q z>%sWllk0mMIc!bW33b%$lx+ptPV|UmY=cORP!UMf0OZw87z_Y_1X@c10mf__J}sE+ z+5lPmEFqRgub48DK>orD_cv8Ec%;)x6P1M7<4jf~=1UaFN|$(q8H=|d)n0?-Efl*S zKKHrhGWRG|h{@b~sG$SK41ka&kM)kPu=(xKF0EA6{LG=R)>;>Lb=721hd2L0dDT053qOPssE;vyAt7}??5-e<`j>L5)N=UMM6%UG#Wj& zZ}r!RXeWygfP0M|PA;$^#mD;RlNgjrH)H6QS-g3Yk37RKk-SA> z_X8((S0;1Z_wd}h+|cnG#XQ>_17bbGOE|kEhke=P9XPbk9j6ScQ(dy;A+otS+DvKu+x5g`-#L z=G)NT?JV5951TDW1xIJloqMq(gl2%I2NEE(f4L2f^pREt?X#`WhJ;A|&R7x*iebLA zk}Ls2416F3rf`boD!}C03UA0UmN-=M(g@1QxActsgL0KGn>wvTGnO!Ssh8c*+@(oB zyYoVAot9g?k~}okUXA2^<#(2d-RG}B<|f1GjG?Reg@%s!1El(FalK3xx8^hH^hANF zE^NX02!Sj-UHQIP7cmNd#|K1#>OC3j<=n zMgVD$J8WHRkL?yZ064|f2jIkR(}Van9mB~Pxb67VE1fXV?V#OyrtQ7ClNt!U4hkKF zPa#?ne3lHr`#WI-(3owLM{`a5#Q7rOrq(jsQZ#+(zL8oXbf!Q?6}3tJZH_>Fet+J6mc~D(Z7s zJ!)}kAQ>*Z!C|&w407_Fs%!usoLi~D4qzhr;Kk36W=v_iN%C~W+18V>l>n2!BQhwm zr%Qr}s6hsjbPzZPLV9fs$S82i1KMG`gBF3#aCHi+_h6$yyh-ct$p#t)$LId<`U1Kh z(0aXVdhhJO%UsB_2*P+wBGgE9TeHIdqEAU0CS0H9z zh9p@1Jqd)#=q134w)aW;@i+{S_EZuk*ErX%jpCpD*5$#A#5y;+NB?{0`9lSccbK<$ z3sUXEfxP;2E*HC(o!DK0%*_wa%@!i&4c&Zng(-wfjf2r-iZU?3B)fw35|Fp)$Nq)4WUL;yaHV&i}lvoq-K!P?=sX!DXoeoSgpmLn*YImkX=Dpnt+Lgjcm|Hg$h=q$i;O;vX0DnR5u5B z%#JG?A^{XM+Q6}1fx+}8(twDhNnKE*uz|E5O9xz&LK%06wO0oQXm%dJ7TODFo!A)= z@4@O_>P|u4Z3tQo>m4-8{}slAb_Ylfq!8S^jj4Yiaz%p89j0tsc)CbhOnElX4YrVUP=j>5 z22W~~4j_QfqSydX7>8@mq4hTpuXL*|h`UbjRti>q@N_#58U<*f9sCO*h@A>RM}HUd ztbYMSbI00;HV-h$7;=F!K&0sY92Sw}3y?6YTjBc{AXbT$LvC^EcFLT0p+zmd!B7syv z_$bJnivBLjTmt9-0;W967;t2Qx{a<)=6Xc{BPQe`26#+Z7(HZ$pK^*oC5gaY@+E^s zoq_gPFb>P1tteAej<4*(+{7yVTt9i^&L?YGnb*7J7H@gsV!7n~`7*IvAam1NHj!JG z7`g?~m5)#W^m&#=EVWir#}IP{tiEKn3H8;NNES*a33HxBD!Z3mkXsRnr=diH#(+2) zBQcqh3O z{HqIbRYp%2Fj{C-kzqYBLGRe#d4LX#dIxqS$?-YcM%NbV71mPJxJ*IHQ@R-rjUdSL(>@e_oN^U4!H; z6}uN+d|Wd3@P&wFwFoBXm97>|j=%|cz2mKt=|i8UTG_y~u?8_kGob>bb1eQ9g}>Xg z^1R-bwsp2uwxs0Djxe4{nj0E zPEEVU+;1&-keD&otntSacHEpX?_gt-dmZ#$tMnaFh$yHP`O08O`OL2ArP**}ZpL~r z1j;+{_b5%K;Bod~oM@^qdXh`%NESe%>o8<=gas#q=ksxQ-uU(cT)coY=r)&$@>-a%SO3oiZy+kb!he}1kMWa7Ij&IP|G_K zU2(1qlxKFi2)Ss{MA3$XKf)@rFDX9OcU<$t2{$<}2sx3+2X?)tJK!U?4t9}9}T);jaQ#q2LI97VOg#o+1p% zZ^kb1|Ap?{dVAXI;+_G3yMN%V{hz(ZZnbGWdkP zLtY_kS@2OEL|-n5M2G>Oz%TKWNHygFGC+pDB83));}>5;`D=wG8Bg5!wzN>kJ0gRC zb(!p@U9BH>2IhRe)fRLp{nph!q(es|OaXFnxpc#cHl_7>sA*ASo3`8Qq^&q?C z&b$#*#At>V9g3kDrc9*JqZTm*rcBth@+vo(bb(3NyH_qan&|I`G3;VKvzxW)z%Cx! zUTeMP_IPaB^_nE&+8k4KbrY%KB5*Ndy~s7wEea32?m*wMrpvrTJ}dQ|E)vpvZyOO} z5TPcn0`yc9@cnJv!%&{eD}>=y7gzIJp#Jznut94&Imo0f@c(SR%@lDSOFNmwQ%yhe zKH`AgH{bC=2j;4MYlWcmSy!8MS_5X@>EAt>NJubcRKaYP{xf-}l5ah&kV5qCH6$O? zs{fp{injzbA@r1#YpFpIpzo56O_&?z>AHd_rg0OHuGe>aG>=)_&Chgpf>01?g+=8xT zT~XJN4sSuB4)yZ+9bAVNl`?#gF)Q|iej|VN)H6{a^twuN9QB$|LXd`tCO$R^n?b=5 z^dK?jQj@so??^!3HOu}oEJ(-cX-+2?dAsX0cD5TkT!m9~?8kAwZq5_bT53=rflXR3 ztec1?niB6?#k)*2?xZ4$S_wU{Pii{e09n@%7pbE-#myMhcfL_-qAyh&){3@Qs=x8O z8Fz2}ITe%uUQWQfO-Vc(c^`SH19tEHV8phmd@I#w5tenel6MrjhNe?~ zmLecXQ5S$9q1nK_QpnRPm`4d%74ofT7Ml3>Up2x)TnN#p4X>u5L}W+0R6BU*5OmW> zJcp}w!|ogJ{Ht8~eXC#4Y3u4bq~mwhkuHDKsr5VxHrxNZ7L0@90-dpWEKAY6mO+F{ zB%t7cKRkUCQf}RZxJ!Uz(g{t+CwDlrJK!eIoy>N*xgF=HIj{IdoS$8v(`At5V!rG( zT{^1EXoIF>`h<$G6%+M1`PB0J5(}Oi4O?!m0UXT;P^#z`-&;q?AbD zz0#XU#2ld@^iqKg1U44&0(W{TM@S^3dkyOXQzpDBqltV@S0Wwjw6N%rm!8nHm(qzi z+vTj`?l}J?51sJYT#}42DLd|Pf5!bLMHBpzx*|1!IVO$fT@aZpn((kzUIF&0CWeO_ zYVmE8ScRt3S8iD+5|WMl>E|lPzNwy%BEN`M2)&MU2IEj0FMWz{3WQc6J)8 zFt;&5XCKm`C|(^iNQccQ=a6Wc)SL3q8 zs*hz`oY^s$@*7F;4hl~2j+>Fhe>Z9rI@5Er(hSN?{-v7g?Z_F#m0KzL z;9lkboxbs{xv~dMCghz*%}wZPuXVugwzaaeeJe;;SgjCr#u%MtT`PiD59xBz&EKg% zlktI)p+?Rifg82ZgBF916HUAY`(u#jbckHJ00-e`S-vs;xS1nQd2s>T-+4!h3>cK6ckWSpJocot%hxpe`$&5|@^_JxGAw3_OnKmyCWi$Gfw$Nentk)y>> zaK$1+M>N$H)Vzbd_crkdL1#z=$W%c~e?;jTy|uzGsyPYtLUOA}X73WVR#OYhmO}s@q)**Ai zDq;#qIULxn5*)M8Lo@+>7r0QQOZA}XlC10M4taY_x_xTS((JA{JJaoNTDG=5?3zqB z=(`35FXfsG;$o0>t5g(t2Tdo=?>^oCMxJa!ZR2l&RD5_i zds>A+@1NOuX6vm6)FzrisqfUI&F^acuzS~sA{UiGgkR9v*3~|wL$f?K>>?d6!Ox2S z7D3V=BG;mTm2V-b+VpUVaIDw~mSF>;32aM2#88t=B-Taf3r)JdSYr-DcFi6ayK&aZ zx}9z*hF^r)Amv2Sh$aY_WMz|^C`39@<{i-1s+d9~5~{#N9-5;y$%9rIry{gXEgfhG zlUu%BD?^NX6X`m%N#^4a7%)o&78 zQ54t~CHn|X)VwNfZ(0=K!*iv$gC<4kd@(SL`xW9c?Dp1M(%UEGoqdhWZ)yD!&p@6N zc7JU+Q-`2)SXbka&In%BRj_K(>CHs<%zA19veGt3TRvrEkm>$}r&_H!;+zO^`&>uMwt z5$;t;Ip!T~EEt!YT&QS5U=B?+dSad55rKVF8p@M@mC!*bp=BCOZr>4n#M_7W?j+Ln zd(3(RGbj#;hmJ$yVaW-*f^W5h2wTwktt;y4;I)EulBa4jAlUH^(F8Y(lf%dyu#I3; z(bQ5-+;j$C#6U^Xh5~Te#twOFBmge3QH^k~q1B{=la=GdTraq2S?KM> zW{*-j5zefs7w)2lH609Wh8Kz?`cjQTMia`qq6XTa?+T;Exe4$^)aoFwba)_YCG_BJ z)uGslX2Tq@F) z9~QuU0E_)>$t1*32qi|FK|R7`G_MdhDDqB7xm;up=5b&;;ptXB49+0prB5 zvCV#*E%>8$I!(vTyW{L^L(HjcW0AlTA&O;q!Nz8^SzJ2}q}$ zi3%muAsTin-XU6rK$B7-mC~^aC#!uiOecD$Y)JJF|$3;97rphZ+VJ?86>)`5(pTL@^3kM=oSEp&Vx!-sE{cSMIv;`w2B>tB3$dO>$d59yQyE0PWyYDt$1kPaQZ zyz3a}6%uMnnHH|8DX}3s*oh`;aXg1bl6!>Iuz#`-n-`a zLo{LCkpQ5@PH`QA!GyP96@Vio5&WcMmHT?0+W1!jp0q~jXtL>@h1*u}^fWBK#9 z`S7l*Pw;_V<|l&J7C-Z434WOhxK}hG;x9ZKA>sdk-$I+ zQiwtz3*-sF@hX!>kq$N%q>}~G3I5pSxo379O(Yw;-ED}W6L+TqL9D^CB5)w&uyPf{ zC0s}ki(nx{bwjqK?+{H0v}xXH%;i-w&hH9At$K-$9$1N6Z^UL_C^3P7^&a6lb)SJk zKkUBBu#=dp6m)*;T8bkKW=&4ITxinCfR**#$iqif6SRWjlOKyKu2@Cg75LVAoxNexmR3W^4?C}*(^*8lb+zM&iU$-| zk`5h{bX@2q)^}=LPD5=hkqGH5d;Ce9qUIn1nvPfd8U^Yi=>nm^=t&%63f6Q;C-}fF z6??onjn~~10`G-y#ZO%@OGgt4NV#0V;ew1~6U7GajH_c~5G?$ek0la#?}eVcYaIjmw0~IU26+EymAOS59xTVd=#Da_Bo@ zcvR*P&`~j~Y6cNaNcT!`uLJ3TKR8yA!wS-6DW`_)IFOC~4GMnyE;ajnA9jzzHp@Dx z>8Pmeg3^8PutLEJeHTzm-l1vpj>=8#UhTX>-=EDzS<}6~%r9+JH!y(W?D%b5lzNh<_e9D|)W(HomMiKvy7GbZdxyo(~Z zKvObqRB(?56!m!pv8H=1KG}OvBdkB3w9r^5Oi2I1f6*`!iXcl&}m3l93HOl zw)iO@EPUtua=g@^Af=za;g33~!8-U;^8qI)P=js(wK%ZLHEe7gZpAixEbCS=oTBC| zg#q)A`^Rx3!S16dVQ;LMIm$3>1N7EHQ)D>gQ#dG$;n;EDB}G^fhj z>Jz%AJY3QU%#FpeSgqh)45BFtQcXI4K5NX`ZN1iD+>s4rH(+Vecf-yh=q&4MAJW+) zCVtW(ew~hVco#C_Uv|7x@~u3Bq5+4uj6JlDo5)^Eq|;Z#AoL<)imd5|apGlMuO2W5 zyPqpQv)hhg!B09tBGE&*pzOdtVMvi$kTE5?Crf`%|Cd{bK%r zyn5bTaM&-5DxPjK_Q>_XO`CKmL^=WY3QdR6lgI*)F?Yak*`sEch2B|ePK7|o9O8I1 z0Vzi^rU1oIi(6t*IN#Ff3H42zcLkiux0GbvsJp;6eK~CFRk<)2=N5F+^KN=eTQBiG z_JWIt-7W9F&XGkp4(Sd9>FPrX+rX-i?Rcj)NE;hQntIx7uY7?W!xAud1pP* zlMB=(#drMGydfS%-q{^L@BG)uuJ^$X3dLnz)sp9%ckp&U=@h3-(zy++lzW}N``xaV zPg>`tAO(i9u`O!Q4f7}nWF_e!<-b|WR`(k z%Ds{zU{`>T;9c>kP8!v+pB1KGi9VpM98FjgcKVPGP5I}nHJuGU)Q)i0^Aepy$~*M^ zuzSzPih>SAFs!TNkPg;(deZ4Zle(k23InV9KWE+vmf`>^6C4d!$ISr(Fr|5=eQOe0nB4|qH>!$!1Up98Zyc4y$ z46EwoUSEmNsbic0IK4DE@BDQ0qfJXZKkUB5urmam!@8Prghe{p^pnmAB@_pZS(A#{ zxXLc(=#2Y8IJO&~%xiAf48CC{#=#I)-EALUquz9_|D@se)>r_#~Eo`^Hx+C@k?8 zKKCnyp3T0)$-C(-tz5eP`7YR z6Gu!>I(yK>c~oc1I`n@$e^4qk)I^O37mr>0w@HUO!qPSb(&4UH23&-ui$p1-*yGRX zcz23pSpuO5nvRQtlmq6lQ?slwE=!F44izu|*XujgL`UBkqf}h+g_rSfAYj*CGBfM& zw)RW%^Ug2&E{cOb*xme|>&-Db{~_H}q{AMYbUJ?37ImC)9s>(mhd%S}fo0MWE=yF9 z4&(sf2&=-$@~Y5uT*pY_;Z79t!%kw@=lYC3u%jq3XCV) zs+yZXTq`cdQi*gp>jL1oPO44dj{zs#YZ%grRb=ClWQfV?c?@)R*{P%M*sEAUR4*}@o#$INb?chf|)^&I^8^IWiVSl2^GIxegYnsn&Y zMizx7Y$!nxDEz_fN;z!I&aIwwQD26YH4g0h&a!VVBW_SExOu=fmWcLZ*rw)yZLCNV zxKP(2ly${wF_C~#1<}g-P7+Wwi)bThlll`i5W`RM|DKzU>z4VvJU<4&#sI% z>BeqQm_v5DkP{~{Qr8)B*mG^{UJNTXvnMfhLPDK|0_+S;r{mXR_#g?d!AEG?yyK#t zcTc+IInZ=k+;K;Zq4>=#mNqa>JjH39pLd^d!0x8^enNhpeMqN`ryaa*fOJOuT5(io z+zc~v2}{LprX#q_gAK zs#y~*$_BP9>vV9Tq4XUu!Rihu%ms(AiE#;k3xbVZ5$(n1fanw} zG|4iODTK}|xLL?6#7n)I3TVSBIt5ur11+Zh@)rdPk`~3Lx z^KN=e`-$heU{`-g=ZGWxq^lpPD~A$g2dYR^^ryACg!MFm@5~>nNvC59)TKbS;9gU` z9E4s>H8kCVfV|xp&T?}vkU&y{T3m)zO?0qoG!1=6g^80Q+Q|6c*fQ^)@|8bq`xixV zr+H^26=v<{oubu*yu-F>dFO}S7dqG(*7fL+u0E6)M_!Q4+FaryWgT9AXa0~P>7>w; zHWpqr>SzM)6){B{!*EWw;sO(P6!v4Y&r4@0z`a6|X?Q|rM;<*fU;%-$KLvfi|B7=9+e%sFGdFO}S4fUkM(h(w^9ZEP1EEj%Rht9X> z4>d>!6c%F&q_G%1L30^%vyUcVV^{q+@iINhE(CSfrs#$m9aXDEncYZTFeHuGG@BBx2e%RU8wGc=6hUxsI!yc1#RY!HUfi=fX zYGoY`>44M$x)DY0Z_XYzMmj1yotT%vJ^*o*&18-sFnSWRrfUaHhY7ok!W{~yDM*l! z;+O2$t2&L<8LR%DFx$GyTK^Hr)iMO1e(O^sq#O!E++pSpGsavPjPvl$SUPIFvnAdQ z9@xF_27I<7jzCQ`E$ONTO=^$o90vB%$vQx@3vl0C@nM@t9)R z*i=ValCZHuG;zT7ehj;uW}K!FLp0p0kw~D>c32d~WeE*Fs(jdqk-$FlYk!cs2qhfi z4rbOZ?i{>3bm@dk_ucRu59~haiX)7%;Y&q2)D@(wKdQ40tY6llQ{EW_`@TNA3i=Mr zKt1}^6A^$z6Qd`Q3q%v?K~HqRdk$inKB2SBzJWyGLeZQSY$>!MiUR4{5+ZHu%7yx= z5Lrkhp8fUTgMw3-s}*-`dB%7GGy5CEJ3s9Fhjg?#()o|-?8_1tmrK;kIw(ZB;nvy1 z#iN`A;8Y=~hiN4P3QG!PqEHVnsYxWXIV}v+<>ol= zo_E`mx(XqWq3lo;#hp2Z;vcmm@}(0;WZDjWH|(}LWoKB|>fqH+I@F<_bdIAshk!!c#TZ?AYD`#`I z$~$kFJu<57H44({(GytORpdfO6G_u8`)J}IhCQwqM7tEIF^nn-t0{}tNL`CfLeo6I zBPuqz^TKaF9z;Vifw(irQ2c;9`nn^>^MT8VOrAJBXt^N6`_Pel3`#sEbH`~ z81wECg=oSUJxL*~dLVm#<6`(au}FK|-|d>8mFo^bka3(hVK{rEkU30q@yOvW_SQCFNYCvrp~}DW~?2 zO_`MLy&}+f$+sU3M#d7_P#9*`5O>CmvBS(d!iuB7JI!t%?B4(B{E?d>9lDBi-uP8R z$75jaaT8nC8OL@751R}9nKw0$%E_#nyjw}3*DDU8>9|HTkz^h5BLH^NONB5MO<+TX zbuEMsriU$WC`S`OA(}7y&eg-RE$+(stS(C8PMg{2FtZMCd&GI?hh0S+u^H0&LkaR5 zSih`uL=#1T-q>8NAAcf-?0EkWO|(f_Act)R8@uEW+>c?wowJy*E22#`ONGWI85yhn zoK8Yt@1#LLf`xR&10vC`dfqX_53@4EyPkCp=^~MlLE` zhcMi0p+77YSg9WIWDF0Z9*-to{@q6igu%&LbSuoDnBtD_v5+#e4sloGZC!HD&pUrp z_x-TbafC^_LWVmr=@iIZM|JfERj{ zlnZvBA)-R?T7N;pCSCnC3EQ07dw>tOfwdo2tf}OSCJL|@Kd0VTu?9 z9(EE|yeCcAouy!Cx`KSOl^yBC!}hR-W5v(n!%qJA`&VK4B4MWutS#=MdOAQ`H-<97 z;oTA8-8j8I^(+_cqTGClNau)OjiWltz#6%PU)HIKlUfg}H+-&n%%Jaxe`4+=hM`6@ zAxBTz$l@*;SfT}!NWrB>$^k>gV?KdAG}T*BTf-%2qWF{BA1W|sJ6YS(f_kR7Qx_^$ zIJt9~+3DRY-m(GSslFF>pJ!!P6}(PQIz4FO2qny;I@`dKol6vCox{W0*{;$#)bS4P z6{H)U*~ta3;+dU&f58WKxHwVPbc$K%*z5z{l+Y{6H(*Ogu}b>=-{z}se@KyWesKr1 z+2T&}j+Uu7T&H!|a2R>#huxtjU13|@QC-=6mpz6 zfO=e{TVku^Wbt|6NU9Crst@C^T85?$B1mmRtqE9wf1p?2{$Ncjx)3LeX>EJtxNK%K z>~t(!F@`e1s9j-$vok&K{IJ^$>0k!2(bWL_S~Xwug9j1Bet*p~~wCwq}=CS#oSr&BJ zy~;B?*w}-ZVhY+$=XU}zia02Ql(Ur`ej55t^wp~IB@*0x?GGO)WSZN_Ry-r1QrxX3 zN-BsZ2rD+rJ0I-+>;0eI80j>XrYD_*g>7J!Si7{c4olUrv)=Nr;c-gS4KE#7 zr#-Oyz-KEiNH|ExwM9CEVmi1$v+AhMly$a&t&nvnF6nrk9o=@k!`F$)tFkSVuI+Q! zgRbDEZA{on?nvB7|7f!h+wAbc7$_-7KQv$eqX$I6MO)C-Ia$rPN^z%Wj3Mso$L{J5 z@388p+w^GD^!oHOU9g*;boTJDJ!s-Ms}2x|cidkoI16)bCkyITh&wrBtj16# z9z8jlyz|3OA?fIm&TnArWE~3CG|*{86Sc6jgHMKYd4Dh* zu8~VjFYAb=ft}zfHvA(!k$Mq$kfMp%=+{wWRn^2cEo!J}>c1yEzMeyOJw7}Q= z+FdW zW1IiLPBHo)=m|;Rwa^h^5oy7lT^4t(;ER%Pc!}B+ab;mx9v-$YOW;G^^poGAdQInd zvW1}55_jMoVAo#Q7|H~rCr68SZrG_2lg*RPeN=ZT4J=WmtTUsD>13UTom~2R)_3?i zG5#{_6?b-c`b410$|!8Ql@nX#PmB8Q{7&}GKfMpxXtM>K-^u#L9mY_mHM9P(VspIv zj01L``@r9BkaWP4Ka|jT@*CI*WSxp8CO)uJ!1z0QV%rZDFL-UAHQoNYL&Z1(z)~A* z8*66{h2dc%jeW~c?{glakuB(KCrkB=Q$nvO?l>0D;8SBLCg2>rJG!HGpLvEKb~s3? z`g&}ObX6mD^uO($$xf6(6opTV<7+sBTYVPiaVPKKJSJ{jxHN8j4fSc95cd+GDMJ(K zki*U4awz^t?p<^$)%AyN7GKV(bE_K0R-I{JbuQt{I*uj;L(L7l@J@k`I6t0j*fnf) z*p2=Gt6N~Vt?bgaRKQN;4}sRh_LG;to*<&d)T3o$MmF5(<~uF!CW9&OL>r1=-+_x_ zdD4g70Hota6HU5YuSv?lnq9&_mS==@1xzlYZ=x1i-%%G=Yeb{}u{|HmkF?W2@@mPlv3DTtu?2dB@Pu5Kb ziH;L~)`y*1{I1ObSen3YjYvdlOJ)u(pmAVzg5R;m`Z@rZjzOCel(HTu#0bAVc5KFbITh& zcav#KJO$2&bK_Tct4nbZ3ji@F7zpZxXfvEFz?1Q@Sw2bDSln?Nif?9px(&}eA9hbP z>6~K{b|}%qz;=~&y5nTOJgi*LZ#^HKm&%I{PDo{^^<8wy{H+DaI88mVZI^el=q&Eo z%r^LDHYfKC0(Rq_4?B-^%q*XDR8^SA1J(gjrVWu1;Dd=Klx zPCpL3m^llCA*=!!12M)N5aqvjeys&)Qv)NerDw$@DBwxqY7^paO}C-=X4bH`o$m$U zc^7t{=AUdXb4W*Hn{-SlUZxE!tx=BHmvv4wu`3S?q}z$L=zBSHhD>V$cD!=ytMJHo zevNaCON15qe&e<~#>K~GmAGrbcw%;;>)&*Sa z<6%`gkq~{a4xa`%uYe98_+6H;ab9tEaV7XjGzbJ*Hn;ViEE1>3w76@*f!VdaF|&r; z8~92);Ne9Fc25T&-9TG)gUY%XH`2rQNhfsw-8%11k@6A(jr3sdk$a0PS;iqAh~Pq; zoYhVishENUT_ElzgMfFfi<$jTc;~~;Af0S9@j{7YuL=3_bS^;*>LKd@&%;{j1g)1G ze0}6(+$j=YI}H5@WAxtdd-5&`yQ-?H zs)JGmyQ-?Hf?ZWrRaL>Rs;a80U{_UDRaLO7s;a6g*i}_kRTb>2s;a6Ac2!kXRRz1M ds;a7}{sKa5LiIJCifI4<002ovPDHLkV1k4ibW{KU literal 0 HcmV?d00001 diff --git a/tests/ref/visualize/gradient-sharp.png b/tests/ref/visualize/gradient-sharp.png index a01cf08f0ee56b0812d2f1211d708154bd7ac179..b7698cfa4505d4e91e9fa9e8e56b2551e7c6a96a 100644 GIT binary patch literal 30371 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

~k4^ z!LOQDUS!dgu<7R9d1XiBpeUID6kfqz|sg9acli&&05Y5DV3%RuyNl=4>NeJL$) z-ThN-VQGdWLi<0UNH_M2JU*eVqRz5}R_z#IF-J6oQgBLrd17*%J`aZdYmZMpLp*;C z-gEs`rW)&Aj-6g=m;-~7xIaUfr{}mwhSNhhuo-Djef&I*Q39Q?RzIG8pI-WX{_GJ8 zqe)Mm9U%W)LP4^9xABTbVb-0t0`b@58;awj^ij%0AWCA6f|$$emA?rhU@Vxh z`O;|Onu|C~Nov=6H(;EUp1{RSU&e4ynn_7l6=@HX6czqN2aA(g`_GaI5LVUA9=48oE}Of@8TBs^Z0{4(KN6MD;X4g1P;zg=P+g@Yi;OyWAQrGRFv<)3m+ z_56|@L6y-xL2TEG3gzS|l_J0QD{GF%37RoH$>$r5C zjF+9wgh+<qeC~h%+TiuOMeWx|nIVxhd zaqQLZRUh`)Z%ghPI!>B4bvEBYCvk-yyXrf*+u!Fb$5S>1UPT;;-Jgne-d;Fv`rqve z;pX@~9xUwX4_U+0|K+%z41c(@ewiIa`-g`N(xd+W^3Z?r)c+)?|0b}1@znndf&H%p z_rEdU|2^