From f9bd8eba82136136c3b1eced7a5fb06c496d92d1 Mon Sep 17 00:00:00 2001 From: Oliver Booth Date: Wed, 1 Jun 2022 19:46:21 +0100 Subject: [PATCH] Bump upm to 3.2.0-nightly.114 --- X10D.Unity.dll | Bin 15872 -> 38912 bytes X10D.Unity.xml | 2083 ++++++++++++++++++++++++++++++++++++++++++++++++ X10D.dll | Bin 120320 -> 131072 bytes X10D.xml | 1323 +++++++++++++++++++++++++++--- package.json | 2 +- 5 files changed, 3317 insertions(+), 91 deletions(-) diff --git a/X10D.Unity.dll b/X10D.Unity.dll index 890893569757ddad87dac2893652a285ac871fd2..46dc791b1a672a80b92fa4ca164e8decba7405d4 100644 GIT binary patch literal 38912 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 diff --git a/X10D.Unity.xml b/X10D.Unity.xml index 29c4879..f4f8b23 100644 --- a/X10D.Unity.xml +++ b/X10D.Unity.xml @@ -4,6 +4,239 @@ X10D.Unity + + + Represents a box that can be drawn using the class. + + + This structure serves no real purpose except to be used in tandem with . For creating a logical + cuboid, consider using the structure. + + + + + Initializes a new instance of the struct. + + The origin of the box. + The half extents of the box. + + + + Initializes a new instance of the struct. + + The origin of the box. + The half extents of the box. + The orientation of the box. + + + + Gets the origin of the box. + + The origin. + + + + Gets the front-top-left corner of the box, in local space. + + The front-top-left corner. + + + + Gets the front-top-right corner of the box, in local space. + + The front-top-right corner. + + + + Gets the front-bottom-left corner of the box, in local space. + + The front-bottom-left corner. + + + + Gets the front-bottom-right corner of the box, in local space. + + The front-bottom-right corner. + + + + Gets the back-top-left corner of the box, in local space. + + The back-top-left corner. + + + + Gets the back-top-right corner of the box, in local space. + + The back-top-right corner. + + + + Gets the back-bottom-left corner of the box, in local space. + + The back-bottom-left corner. + + + + Gets the back-bottom-right corner of the box, in local space. + + The back-bottom-right corner. + + + + Gets the front-top-left corner of the box, in world space. + + The front-top-left corner. + + + + Gets the front-top-right corner of the box, in world space. + + The front-top-right corner. + + + + Gets the front-bottom-left corner of the box, in world space. + + The front-bottom-left corner. + + + + Gets the front-bottom-right corner of the box, in world space. + + The front-bottom-right corner. + + + + Gets the back-bottom-left corner of the box, in world space. + + The back-bottom-left corner. + + + + Gets the back-bottom-right corner of the box, in world space. + + The back-bottom-right corner. + + + + Gets the back-bottom-right corner of the box, in world space. + + The back-bottom-right corner. + + + + Gets the back-bottom-right corner of the box, in world space. + + The back-bottom-right corner. + + + + Implicitly converts an instance of to an instance of . + + The to convert. + A new instance of . + + + + Implicitly converts an instance of to an instance of . + + The to convert. + A new instance of . + + + + Represents a 2D box that can be drawn using the class. + + + This structure serves no real purpose except to be used in tandem with . For creating a logical + rectangle, consider using the , , , or + structures. + + + + + Initializes a new instance of the struct. + + The origin of the box. + The half extents of the box. + + + + Initializes a new instance of the struct. + + The origin of the box. + The half extents of the box. + The rotation of the box. + + + + Gets the origin of the box. + + The origin. + + + + Gets the top-left corner of the box, in local space. + + The top-left corner. + + + + Gets the top-right corner of the box, in local space. + + The top-right corner. + + + + Gets the bottom-left corner of the box, in local space. + + The bottom-left corner. + + + + Gets the bottom-right corner of the box, in local space. + + The bottom-right corner. + + + + Gets the top-left corner of the box, in world space. + + The top-left corner. + + + + Gets the top-right corner of the box, in world space. + + The top-right corner. + + + + Gets the bottom-left corner of the box, in world space. + + The bottom-left corner. + + + + Gets the bottom-right corner of the box, in world space. + + The bottom-right corner. + + + + Implicitly converts an instance of to an instance of . + + The to convert. + A new instance of . + + + + Implicitly converts an instance of to an instance of . + + The to convert. + A new instance of . + Extension methods for . @@ -18,6 +251,1757 @@ The type of the components to retrieve. An array representing the child components. + + + An extended version of Unity's utility class which offers support for drawing simple + primitives. + + + + + Draws a box. + + The center point. + The extents of the box, halved. + + + + Draws a box with the specified orientation. + + The center point. + The extents of the box, halved. + The orientation of the box. + + + + Draws a box with the specified color. + + The center point. + The extents of the box, halved. + The color of the box. + + + + Draws a box with the specified orientation and color. + + The center point. + The extents of the box, halved. + The orientation of the box. + The color of the box. + + + + Draws a box with the specified color and duration. + + The center point. + The extents of the box, halved. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a box with the specified orientation, color, and duration. + + The center point. + The extents of the box, halved. + The orientation of the box. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a box with the specified color and duration. + + The center point. + The extents of the box, halved. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a box with the specified orientation, color, and duration. + + The center point. + The extents of the box, halved. + The orientation of the box. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a box with the specified color. + + The box to draw. + The color of the box. + + + + Draws a box with the specified color and duration. + + The box to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a box with the specified color and duration. + + The box to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a rectangle. + + The center point. + The extents of the box, halved. + + + + Draws a rectangle with the specified rotation. + + The center point. + The extents of the box, halved. + The rotation of the box. + + + + Draws a rectangle with the specified color. + + The center point. + The extents of the box, halved. + The color of the box. + + + + Draws a rectangle with the specified rotation and color. + + The center point. + The extents of the box, halved. + The rotation of the box. + The color of the box. + + + + Draws a rectangle with the specified color and duration. + + The center point. + The extents of the box, halved. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a rectangle with the specified rotation, color, and duration. + + The center point. + The extents of the box, halved. + The rotation of the box. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a rectangle with the specified color and duration. + + The center point. + The extents of the box, halved. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a rectangle with the specified rotation, color, and duration. + + The center point. + The extents of the box, halved. + The rotation of the box. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a rectangle with the specified color. + + The box to draw. + The color of the box. + + + + Draws a rectangle with the specified color and duration. + + The box to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a rectangle with the specified color and duration. + + The box to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a rectangle with the specified color. + + The rectangle to draw. + The color of the box. + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a rectangle with the specified color. + + The rectangle to draw. + The color of the box. + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a rectangle with the specified color. + + The rectangle to draw. + The color of the box. + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a rectangle with the specified color. + + The rectangle to draw. + The color of the box. + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + + + Draws a rectangle with the specified color and duration. + + The rectangle to draw. + The color of the box. + + The duration of the box's visibility, in seconds. If 0 is passed, the box is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a circle with the specified color. + + The center point of the circle. + The radius of the circle. + The number of sides to generate. + + + + Draws a circle with the specified color. + + The center point of the circle. + The radius of the circle. + The number of sides to generate. + The color of the circle. + + + + Draws a circle with the specified color and duration. + + The center point of the circle. + The radius of the circle. + The number of sides to generate. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + + + Draws a circle with the specified color and duration. + + The center point of the circle. + The radius of the circle. + The number of sides to generate. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the circle be obscured by objects closer to the camera. + + + + + Draws a circle. + + The center point of the circle. + The radius of the circle. + The number of sides to generate. + The drawing offset of the circle. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the circle be obscured by objects closer to the camera. + + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + The color of the circle. + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + The color of the circle. + + + + Draws a circle with the specified color and duration. + + The circle to draw. + The number of sides to generate. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + + + Draws a circle with the specified color and duration. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + + + Draws a circle with the specified color and duration. + + The circle to draw. + The number of sides to generate. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the circle be obscured by objects closer to the camera. + + + + + Draws a circle. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the circle be obscured by objects closer to the camera. + + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + The color of the circle. + + + + Draws a circle with the specified color. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + The color of the circle. + + + + Draws a circle with the specified color and duration. + + The circle to draw. + The number of sides to generate. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + + + Draws a circle with the specified color and duration. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + + + Draws a circle with the specified color and duration. + + The circle to draw. + The number of sides to generate. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the circle be obscured by objects closer to the camera. + + + + + Draws a circle. + + The circle to draw. + The number of sides to generate. + The drawing offset of the circle. + The color of the circle. + + The duration of the circle's visibility, in seconds. If 0 is passed, the circle is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the circle be obscured by objects closer to the camera. + + + + + The default value to use for the duration parameter. + + + + + The default value to use for the depthTest parameter. + + + + + Gets a value indicating whether this is a debug build. + + if this is a debug build; otherwise, . + + + + Gets a value indicating whether the developer console is visible. + + if the developer console is visible; otherwise, . + + + + Gets the default Unity debug logger. + + The Unity debug logger. + + + + Asserts a condition. + + The condition to assert. + + + + Asserts a condition. + + The condition to assert. + The object to which the assertion applies. + + + + Asserts a condition. + + The condition to assert. + The message to log. + + + + Asserts a condition. + + The condition to assert. + The message to log. + + + + Logs a message to the Unity Console. + + The condition to assert. + The message to log. + The object to which the assertion applies. + + + + Logs a message to the Unity Console. + + The condition to assert. + The message to log. + The object to which the assertion applies. + + + + Pauses the editor. + + + + + Clears the developer console. + + + + + Populate an unmanaged buffer with the current managed call stack as a sequence of UTF-8 bytes, without allocating GC + memory. + + The target buffer to receive the callstack text. + The maximum number of bytes to write. + The project folder path, to clean up path names. + The number of bytes written into the buffer. + + + + Logs a message to the Unity Console. + + The message to log. + + + + Logs a message to the Unity Console. + + The message to log. + + + + Logs a message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs a message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs an assertion message to the Unity Console. + + The message to log. + + + + Logs an assertion message to the Unity Console. + + The message to log. + + + + Logs an assertion message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs an assertion message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs an error message to the Unity Console. + + The message to log. + + + + Logs an error message to the Unity Console. + + The message to log. + + + + Logs an error message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs an error message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs a formatted error message to the Unity Console. + + The format string of the message to log. + The format arguments. + + + + Logs a formatted error message to the Unity Console. + + The object to which this message applies. + The format string of the message to log. + The format arguments. + + + + Logs a formatted message to the Unity Console. + + The format string of the message to log. + The format arguments. + + + + Logs a formatted message to the Unity Console. + + The object to which this message applies. + The format string of the message to log. + The format arguments. + + + + Logs a warning message to the Unity Console. + + The message to log. + + + + Logs a warning message to the Unity Console. + + The message to log. + + + + Logs a warning message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs a warning message to the Unity Console. + + The message to log. + The object to which the message applies. + + + + Logs a formatted warning message to the Unity Console. + + The format string of the message to log. + The format arguments. + + + + Logs a formatted warning message to the Unity Console. + + The object to which this message applies. + The format string of the message to log. + The format arguments. + + + + Draws an ellipse with the specified color. + + The center point of the ellipse. + The radius of the ellipse. + The number of sides to generate. + + + + Draws an ellipse with the specified color. + + The center point of the ellipse. + The radius of the ellipse. + The number of sides to generate. + The color of the ellipse. + + + + Draws an ellipse with the specified color and duration. + + The center point of the ellipse. + The radius of the ellipse. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + + + Draws an ellipse with the specified color and duration. + + The center point of the ellipse. + The radius of the ellipse. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws an ellipse. + + The center point of the ellipse. + The radius of the ellipse. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws an ellipse with the specified color. + + The center point of the ellipse. + The horizontal radius of the ellipse. + The vertical radius of the ellipse. + The number of sides to generate. + + + + Draws an ellipse with the specified color. + + The center point of the ellipse. + The horizontal radius of the ellipse. + The vertical radius of the ellipse. + The number of sides to generate. + The color of the ellipse. + + + + Draws an ellipse with the specified color and duration. + + The center point of the ellipse. + The horizontal radius of the ellipse. + The vertical radius of the ellipse. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + + + Draws an ellipse with the specified color and duration. + + The center point of the ellipse. + The horizontal radius of the ellipse. + The vertical radius of the ellipse. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws an ellipse. + + The center point of the ellipse. + The horizontal radius of the ellipse. + The vertical radius of the ellipse. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + The color of the ellipse. + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + + + Draws an ellipse with the specified color and duration. + + The ellipse to draw. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + + + Draws an ellipse with the specified color and duration. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + + + Draws an ellipse with the specified color and duration. + + The ellipse to draw. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws an ellipse. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + The color of the ellipse. + + + + Draws an ellipse with the specified color. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + + + Draws an ellipse with the specified color and duration. + + The ellipse to draw. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + + + Draws an ellipse with the specified color and duration. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + + + Draws an ellipse with the specified color and duration. + + The ellipse to draw. + The number of sides to generate. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws an ellipse. + + The ellipse to draw. + The number of sides to generate. + The drawing offset of the ellipse. + The color of the ellipse. + + The duration of the ellipse's visibility, in seconds. If 0 is passed, the ellipse is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the ellipse be obscured by objects closer to the camera. + + + + + Draws a line between start and end points. + + The starting point. + The ending point. + + + + Draws a line between start and end points, with the specified color. + + The starting point. + The ending point. + The color of the line. + + + + Draws a line between start and end points, with the specified color. + + The starting point. + The ending point. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + + + Draws a line between start and end points, with the specified color. + + The starting point. + The ending point. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the line be obscured by objects closer to the camera. + + + + + Draws a line between start and end points. + + The line to draw. + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the line be obscured by objects closer to the camera. + + + + + Draws a line between start and end points. + + The line to draw. + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the line be obscured by objects closer to the camera. + + + + + Draws a line between start and end points. + + The line to draw. + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + + + Draws a line between start and end points, with the specified color. + + The line to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the line be obscured by objects closer to the camera. + + + + + Draws a polygon. + + The polygon to draw. + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + + + + Draws a polygon. + + The polygon to draw. + The color to use for drawing. + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + The color to use for drawing. + + + + Draws a polygon. + + The polygon to draw. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + + + Draws a polygon. + + The polygon to draw. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a polygon. + + The polygon to draw. + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + + + + Draws a polygon. + + The polygon to draw. + The color to use for drawing. + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + The color to use for drawing. + + + + Draws a polygon. + + The polygon to draw. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + + + Draws a polygon. + + The polygon to draw. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a polygon. + + The polygon to draw. + The drawing offset of the polygon. + The color to use for drawing. + + The duration of the polygon's visibility, in seconds. If 0 is passed, the polygon is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a polyhedron. + + The polyhedron to draw. + + + + Draws a polyhedron. + + The polyhedron to draw. + The drawing offset of the polyhedron. + + + + Draws a polyhedron. + + The polyhedron to draw. + The color to use for drawing. + + + + Draws a polyhedron. + + The polyhedron to draw. + The drawing offset of the polyhedron. + The color to use for drawing. + + + + Draws a polyhedron. + + The polyhedron to draw. + The color to use for drawing. + + The duration of the polyhedron's visibility, in seconds. If 0 is passed, the polyhedron is visible for a single frame. + + + + + Draws a polyhedron. + + The polyhedron to draw. + The drawing offset of the polyhedron. + The color to use for drawing. + + The duration of the polyhedron's visibility, in seconds. If 0 is passed, the polyhedron is visible for a single frame. + + + + + Draws a polyhedron. + + The polyhedron to draw. + The color to use for drawing. + + The duration of the polyhedron's visibility, in seconds. If 0 is passed, the polyhedron is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a polyhedron. + + The polyhedron to draw. + The drawing offset of the polyhedron. + The color to use for drawing. + + The duration of the polyhedron's visibility, in seconds. If 0 is passed, the polyhedron is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the box be obscured by objects closer to the camera. + + + + + Draws a ray. + + The ray to draw. + + + + Draws a ray. + + The ray to draw. + The color of the line. + + + + Draws a ray. + + The ray to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + + + Draws a ray. + + The ray to draw. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the line be obscured by objects closer to the camera. + + + + + Draws a ray. + + The starting point. + The direction. + + + + Draws a ray. + + The starting point. + The direction. + The color of the line. + + + + Draws a ray. + + The starting point. + The direction. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + + + Draws a ray. + + The starting point. + The direction. + The color of the line. + + The duration of the line's visibility, in seconds. If 0 is passed, the line is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the line be obscured by objects closer to the camera. + + + + + Draws a sphere with the specified color. + + The center point of the sphere. + The radius of the sphere. + The number of sides to generate. + + + + Draws a sphere with the specified color. + + The center point of the sphere. + The radius of the sphere. + The number of sides to generate. + The color of the sphere. + + + + Draws a sphere with the specified color and duration. + + The center point of the sphere. + The radius of the sphere. + The number of sides to generate. + The color of the sphere. + + The duration of the sphere's visibility, in seconds. If 0 is passed, the sphere is visible for a single frame. + + + + + Draws a sphere with the specified color and duration. + + The center point of the sphere. + The radius of the sphere. + The number of sides to generate. + The color of the sphere. + + The duration of the sphere's visibility, in seconds. If 0 is passed, the sphere is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the sphere be obscured by objects closer to the camera. + + + + + Draws a sphere. + + The center point of the sphere. + The radius of the sphere. + The number of sides to generate. + The drawing offset of the sphere. + The color of the sphere. + + The duration of the sphere's visibility, in seconds. If 0 is passed, the sphere is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the sphere be obscured by objects closer to the camera. + + + + + Draws a sphere with the specified color. + + The sphere to draw. + The number of sides to generate. + + + + Draws a sphere with the specified color. + + The sphere to draw. + The number of sides to generate. + The drawing offset of the sphere. + + + + Draws a sphere with the specified color. + + The sphere to draw. + The number of sides to generate. + The color of the sphere. + + + + Draws a sphere with the specified color. + + The sphere to draw. + The number of sides to generate. + The drawing offset of the sphere. + The color of the sphere. + + + + Draws a sphere with the specified color and duration. + + The sphere to draw. + The number of sides to generate. + The color of the sphere. + + The duration of the sphere's visibility, in seconds. If 0 is passed, the sphere is visible for a single frame. + + + + + Draws a sphere with the specified color and duration. + + The sphere to draw. + The number of sides to generate. + The drawing offset of the sphere. + The color of the sphere. + + The duration of the sphere's visibility, in seconds. If 0 is passed, the sphere is visible for a single frame. + + + + + Draws a sphere with the specified color and duration. + + The sphere to draw. + The number of sides to generate. + The color of the sphere. + + The duration of the sphere's visibility, in seconds. If 0 is passed, the sphere is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the sphere be obscured by objects closer to the camera. + + + + + Draws a sphere. + + The sphere to draw. + The number of sides to generate. + The drawing offset of the sphere. + The color of the sphere. + + The duration of the sphere's visibility, in seconds. If 0 is passed, the sphere is visible for a single frame. + + + if depth test should be applied; otherwise, . Passing + will have the sphere be obscured by objects closer to the camera. + + Drawing-related extensions for . @@ -205,6 +2189,91 @@ The point to convert. The resulting . + + + Drawing-related extension methods for . + + + + + Adds a vertex to this polygon. + + The polygon whose points to update. + The point to add. + + + + Adds a collection of vertices to this polygon. + + The polygon whose vertices to update. + The vertices to add. + + + + Drawing-related extension methods for . + + + + + Adds a point to this polygon. + + The polygon whose vertices to update. + The vertex to add. + + + + Adds a point to this polygon. + + The polygon whose vertices to update. + The vertex to add. + + + + Adds a collection of vertices to this polygon. + + The polygon whose vertices to update. + The vertices to add. + + + + Adds a collection of vertices to this polygon. + + The polygon whose vertices to update. + The vertices to add. + + + + Drawing-related extension methods for . + + + + + Adds a vertex to this polyhedron. + + The polyhedron whose vertices to update. + The vertex to add. + + + + Adds a vertex to this polyhedron. + + The polyhedron whose vertices to update. + The vertex to add. + + + + Adds a collection of vertices to this polyhedron. + + The polyhedron whose vertices to update. + The vertices to add. + + + + Adds a collection of vertices to this polyhedron. + + The polyhedron whose vertices to update. + The vertices to add. + Extension methods for . @@ -632,6 +2701,13 @@ The vector to convert. The resulting . + + + Converts the current vector to a . + + The vector to convert. + The converted vector. + Returns a vector whose Y component is the same as the specified vector, and whose X component is a new value. @@ -729,6 +2805,13 @@ The Y component value. The Z component value. + + + Converts the current vector to a . + + The vector to convert. + The converted vector. + Returns a vector whose Y and Z components are the same as the specified vector, and whose X component is a new value. diff --git a/X10D.dll b/X10D.dll index 847335921bf8911c56ba0ee87422f030ca2c934d..9ef67317421728cf9f8974b308ef542ed288936f 100644 GIT binary patch literal 131072 zcmcG134B!5_5Xd#yh&yf$TFEs)=2`1kC`MuSVe>&h>9qPh)LKYi$YjN2_O;!aYsaC zS5XuJ6>%xGE?5<@RngXpqIJcs+Ey)EYpq)={J-bi``*kX(c1R+&j;SU-+RtI=iGD8 zz3;yJmN~6qjWC1|CjK8iD#RY7^jFKrA3wB#+$H?WF5-dI-<9ssM*psK{H)o{CFd`Q zowwkec_q`&nLj_auw>fIk_C(Am&~4DGGfe`CG%o4W>%-C`?@R9V^0)fv}TBZp7z;? zj<)wiS&3ikCB!$H5SA?cBv%)r1o;xALS%3rS+bk{oK!TTkXZ!U)p!N5(!Y4BAQj7aETBp3G@`;lM`_D!kJ4J0)PHB+6WrARoU&Z zp}4VnLGyy?C}7)QBRBLr)JgcO6{5C!!OXcaFp{kTHVcwPG6V;LQwJ5}lCbb^iEuonE9v`~Sg zn@ivCw6vSn8SnH?OK|TbbMjcEunMxQEoFRPnSRAMoq(GHf z&1VpWyrJf-LRHrQ2WhJJS;1bWRaA#6mSd%Ej{`{sWq${8WV(pM(?uMkF5>9K49ilK zs|#xzWYl67<6uY15|Oejq$~v~*B`03uSxzI4*Th^vjG?EY3aFjvoeI9Zy%!xtEvFQ zPv*MnC2KSx7zB@Kkz5{;P0omHazkvXQJ15c0CfWbX`!@ zWw!aa<7DQ-;|{?-a9vd0Z6I8atX&Ubl@BA+fXwW4E9`4Xt@8~W3aVjTK&q{hc>u~W z_QbeF1M^Yt)nk)Tlw04kTKDGGv2o#8pHk%gj(~7+huYE8;}xUvip_nB6D!L8i|dSr z9FcQ*=802+zJaUIHizt-XcHNt^Bt-@2`ACU#c4E^CDHoFX*BI6(eg9RY)_`go(w`& zdSZt~s3EG6Lq{GtdNj9_g~UUh4Hc|DvT5~E<(K0X%MfSUoBv-7&4gt~$CXUy225cC zrZ@&n>0m&GzF3Vd&hgoRb9_GF9G?+5$L9o05Dloq`Svr;Go5;&X-ZX)=B_DK>1y7Z zk~nAmZ*vr#&Zkgk{v6|2j!#T}0&D3^BUqDaR0fUQ>ilTgf|qD%h^sucG+Z_nm3+}G zRoxd&(T(OtDzhSsb^9FTbfdf~tzyC3?l5lk(b9dCuD4JoHVr(jek!^}Z=p1yyhhK7 zNGM5k-6hZeroiP3uN{7@lBD^p+&b1^#p`>-CRN|ST=uPNoEhxtU*I({<;;Mpr5=LR zW(keev(0)>&kP$AnM`%j1>wI&ScpJoK!ZL+zCe(GAlRYeFp>Q&%){x(-Ei z0b}!UXr7M)2C2aaYekR1GU$hW?)f3}eoA|#DX~sWIo~yf&OxU5Eo^|RGGz-Bbk^tr z1Pgi57ww{&sye;{Z_k`Wqu5JfU!UJ}v^@ zsk0XoZEp+9T z=>hwfG^#1{C}oz>={tT})$K*ZyqFHZzyhQrok_brZqHm)q9XqVkWR+7lbx?~w- zMZK%n&|?>qsZGgD%djC}>akWL(HaEHciP8kx6TOqqQ$z!edzbv%g7|3*ItgaN)JXb znfNSumalmuSI(7}Lr!`JIjT9R6ZARD0)KS85}l@&F6k+(qN+=Z-9{=b8m-ZaR8^X) zO0C>_Uo<1dz63m}e5_W+cysIhjzQaV|KoOD`XlYaQbu&?(60CyAruXDdPa!o5!qm) zq4_e%$7(H_1{>igUj@%bM$P9|>c%t5KzSB@PkR zDfihjJLoi=rf8}uxbns-J8CswLv56yPQss3VjAqseZ&)!SpiF`um8~USB6KAEN^@&^2 zu(4{7R+ZbUA==JIRpZ4Rtc#_n>rg0};a{8>4SNmJz!8nsOz^wGdyQGj2gy2)xH@zr zOB~55hk=%j>wu`^KkQHl!~)0357wpGBkHqOQTwWNGh$e=b+Dnsw3gt2Uy%byHtfSy z2<;=an-j!l3^aT|2U2AtOVmClsq{%3@ z>AF2b(~WR=>NLIBs7E@z@nCz>bVZs5QkibQ11kjIXs%8wf1Ap&ZYHe>^pI2U-5)4_Pt|+hp<6=3(kGAVwcH2? zltFuK16Ep_UEtSSZgN4IWV0I5C5yKq8w*yVr!-_^1w=AXh7|(kP==Kli9#+#Z@C#c zt06m8=D-I@Ms|8;W_A~t)iyNK%=FaNXQnk| zTABX(%=Cu3OmC*IF0%_VD5(R5`BIsU$SIkr^-KmIS42S_RaAT?#G!Wc7T5qca{MpRH&-Fgw1O?d4x;2#*9W)GDBA-(;6cW z>ACe-^69xV8Yv0MBwr@QG6`pJnp?;9hhjPk*FxgZsY)U;P6;HwgRQ=wDiVfB(M^zT z=q-1^VG}Tt@1ztLr(7Um^G@o$-(_-=|_P2~yk|X!NlFLc16*(80b|FWa z?xqwo#yylK$O^l%h%+uLUQRVTDUmOERJ3K1!kEXOwn90anhW%!!2(R~OZY z%Z!(kgwD!IVrS)~fXX%A-!3Kjm`6s$=aEGtFw6O9zjM)v$oaih8PQxThJ6PgFVE7V zUA?jUfzqOKrI(gM_G)4f{EVpo_wxMFEGza4mVisM2RNe#AqMA*2Z1PkNTm;}bdO3O zQRy!!okpflh?^dJ6r~}Y#Lw-F5YD9)j*N+}NIhh0ICZkmsx+)9ayUDZ-!aZaH*SZK z+Z4%d^5y!mTJg?r@L^$m5L;xuzo1iFh_|^Sy8SPVMp`-0W>tT>JmXy}%8)KoY=yk; zBu_4Q60htG)AnQOQCT6^YFO1+#;S5mKjx}qaI~*OdlsBa4V;PGQcq}VRd!cl90@{R zLF_S<1&`>_K>H$E$oM?D%xo&=$C=qA=HwzB%zn!|6)|CmQ(-Ipb#5z0OtiApmS&O( zCO3(er-^1_O_>f()5euaG_t7^S?vwhBinug7q8ELia7HpiKB)`F6~4w?5CDi=>{&7 zet-c1q!_N$!+~HhnA`jWykPGmH^V+pKU1!5voUxs<#XYa=W+no}S{K_EbBMTNFP!cc706Y-uZF;NkEkHOVzA4-I_Ts- zUtSG4hfuF7En4g{M^x^cqfYMgIDKDnX2o@SrE zt&GL$Szdo*y(cgu;NI=KC<>?Y-9>Dh*63CwoNCq6;+*ELO7PjlN86%&jqx7%m+DnX zQ&|&FWwYF=EO#o!CXDZ{JY1$X$*GKFWT{d=n^7}}JHY`L>ZJ7H2I2`j}FJI1eHPT zoJA-*5$ioJF=a_=Q?HM5o6@}L(Jm>eL}*B(WMX=1u&LLlDSp~<^M=9oFbBgQ$;FEe zv)=v_a%D7#`&w8Tz$D$MH;wv0c==)64pOw|a0xWC-2&#RSRzl%sZxYgyTQ)iY0M zz^uxSv(E%U&WE2vhMW)oM$$MAWG1l)H*x4)*!0&HP<4Fok_Lkx6@_VStz#WQb=^9WfKig5?H*ydz{?gokVJk)+tE1 zc(^Q{A&bv-icgirb7k>-rx=g@(I)XiS-hBv|J2T=W#7W+Wfu_#`Cth$N36-H*Zdu~ zhA6ZE@2oXBWbs0>_^WnO-HCHqiz9g{OKv2||76KTu`%{KlZ;^!wHK4*ThK$Tj*N?0 z#&nYLFP1?R8*v$BzGcaLGl=hd<|B%YbwV`KAFE$1Zld-Ql1>QIdDOnh@%v0vg3B%= zQAX<(NZ9Z5Wbrk!_*$oUkt|*>i#Jkn#{j#5sN~%1kvU>5C$o;QSwx{74`X)bxMFI|a%xP+0KIEA&YlXG2fd@ z95PMI?j|xdX%{j_to3A^&}hsM#V#S^I;nO~aqI7l}D;*^i zq_UNjG!gnza}1vIQ< zaQ%A&+*yGq<+_qA@K9V~{C37`*f%CJlLZ-Ei|XL|i`U-EGErn=)2UBDx3iG9vvI)Q za{x((pvPiyNf(V2VDF6d^@mL~Z}Vl_nV4FZ>an1#0g+MvJ6NPxRt&SH?~oT2G@J_Q zsq55YzV#vspt}-s2K=BLY&YS8tGy&gj=x08p>>$!qY!))O7PJwiOq(tL?5-|HSAjx znaM}EfcHhlnYq;|03iZM^C(T!nGc=$2|BkWifN~_9j{?;Ph=*Yc;+vz6B`7qv#`C+ z_OWnBqL_9%+wmIqor%n(vnWw#vCSy+?DW)MkwnLj=v@jF$;|<0t&JKni%%sndS7y*mnt$z;bXNmUxpc9- zSY$p6nYZwBF8MW|8LX$;vTSS*;GvEosEuoAsr@O|PJMI%bPxJ3bjRllJe`7Pi-tmc zg=J$u!Dr+8JL>07H|Ru>?Tw!((o^|F;rF_xJR==J@z@Ak=p05vFW&e6-Vg2OXlaX4 znWoG+fm*Ke*hPtZf&Ar+r~g)WyYbLo_lN}DCnoCt&HsV!cpvb&zP;{|3A#^8)cw4x zTR!t~+<)Qoc)L6HKlU@)^}jpl(f>5){oc850KCA~{D18KlN0=KN}?ZLbp7z($6nkI zo%X?~1l^}5>OS~?p!?tS|L6qWr%}ED_wCZKaXGj{fB(e!^>j$#`4yXUm|w@@sODFq z{9n(ndh85HEjfDh=<=rCe!8-jvoBVVM3_yFAK>hlY4YihUI0kfQ{^C#b8sq8M}`?2 z2li~M^C>#ha_8vt{~_mST(HY&^7pcnC^qZ<&D>=Ez#N@4Hr9G8sq<_{XI*DH-}>KmcH-N5M`uH4I^X`^ zb#~(0iH=Te$#(3|cmH>to%nXLqjO4vPKwjZ|I0XS*RC+1zAL*JwmWst$IOWNmuZ?d4dDuYC^u#G?3zEzI^O!(&RT=6Ly^yv1iY%k^Hgja zbtTKUz&ny%jJpC+E!aj&#^g17QtYFFe=Y z51s4gq!@wDza)x5n-Z^^+wmIq;Y4QAd2XW4^OVk6?R6%_0d)Q~QA|6X?RX9Q^F(IS zIXh8jlhQedQhF1lc`kAu`wP?}+?oTg>t-vqkFjlu$Kp<@)$OlAoYUZ>*qv!1uE-#M zYR)aLkhu`utZ(7^6?i(t)^td&adLEfn!!=X#DlttK#vR|Hc8=UIubBHGQw@w#Sos&PA|zG%sUL%3MbFCesv4z%^}v*+W$7d}hjP*Q>YgLD z5)YPPxKqxKk%uG?&cafkRMl0ff*@{O(1~%Z0mV>?ar;YG7Uk^oA*&L%;YhGQOLJ6Q zKq`WGl!W;unZ6YfjhwqY8y-HAL-x}{CVxZ4Hry;QWuM)SDOyQUnUQg-3;iIX2RWhsA)ZKo)q%1UZ(>u1Z~Ac`vHa1a}gMj z=df(%W=okA7sKLlF#*n_xS%v17lc;Pp_8~EGZW(C1nx_+K*j~-=;ldcT(G`HtO{|# zst_0Ku%x&c&azZf5df64FN7?L3lc2jf>kUb6&x4DCCPMAj7PARV>1A8L3*g8=rKJ$ zv<+=G!P^$1emw~1Tm%^kp;AkNt{TC2MJLX5r`xv zvlyKcNlwR_RN6r-%**cO6S#lEfAo%A7qg3}i@XW#v<(l!l%Q>NF0lAJ1|!Iq;N{0{ z(KWITBY3e(N*8Yz`6zB$mTs4ERn#>FZeNft)a3`jTQSFDpvXMRP2FCGHnw7`7}*Nc zBMWNjt`AOv7C%lp)8eN|Eq<1CCaY{MA%02jgo=AF4pmh~g1a(4RU0}Sx~!c{#(fxd zuf?Kg8O4dJ?QDjJZSt@y+f28EMOHrzOF2E4cI&WZ>)>#YfEs&bk zS?eUlNUG$RE@@_>Pm)NUEG@I%hGE#35hr~?U=V~}f(vI2>${GH9#1EQ7>b?o%5@x_M^7Rhi*RMBS7N@T zlrA5*A?|#Mn5Azw;XF#cBj;Z3r^{hkWtAM8vY1Ax&Bd5T%K_vxN;$f-Nz>>wDMr?k z-EQL!Ry1;OIqpznG9@G8bB&X08;YDdG>0Lt4c&q@k-KKNM|<#{nh)T8aEaNCJba@EiA>2@5}&GF+I zu{5u@A)U|eUKmP;T{*sEg@6b zQe2l`06TPhG&SvnL_{&RIB~rqS1nw>nLPpf>HJQ8J&OC9BvD^eN`1{j-M*$Z6YZBv zYh)Vr9i*d{i)@30QKF6HOaYt5D+)+w#$IVHKyAwF>$PY5WC`XU4aNJSn$YRQI zv5dR8-|YSrce|G3RxIL<^kB>-uE_wgFdKvVZRlQFyqm39-yk;Xa z*f;W;P4*pmO?DFduie_5^(|smhyzxIIN;_c#X*vvu{I}9y4P&V;V7mY7t1&xF4-S8 zZq(C@vvlq~ogx5#%W*>pK|xBFtwA4PKB6n_=IN-_hDpzqrNM+!>@vwxT=2ztvDahb zH5j!_Jr)RVr;~E)Afli*sf_n5@}Za4xAr2oZ3!97=Y0&Hwa~8o_oIC4h!0X(I@VY zk}Jp78IY^S7WtUQ7NzmAMQ9bfzvI}VZd9=mgpG1+T}U?aehB5-U-z=UMXU;Ai&bH4 zai}DXt#~|2S=6=ef{nYIRdA@%I!=zQg!mokj4gc2RQ2z2EZ;D;xG`#7YOhCKto_*C zZCDSut5ADGA_XB5r)*55U<}78n-VFoz~q;EKHz;8I@%mDG@TCx5z~1s@nF;tr0E>r zn{=mho)^&X0!)Za>U8*m&u6;Lk)TjLb-pv5J8abRaW+B;Y&@H@Zko*}(~#T@@jO?% z$QiL*a0AHBY@SdcM{Ht&Gh!3U;(Krg&*$TQD3+6VaS*<8Ye$B0;<&|1fM->?nBaMr zvT8s&=Z!Ptu}#)cY*QMKZ9=Qq(2lW94ek)z)IBmDxue>hH(1{yR)yGRRfuhNY*K6| z^(Rgc)Mf6Tj_OzxQ;v&eY!jF4Q2OefbKW=?T~B|@k3$3<$>GLa4_6>0oQn|J^=rNw zwc7@R$4;c;^AmCE@d;FCb0|*5i5T00*o~n%3kl6gR zJFXww46ZzSI*>k7C(DAdn^2gRn;tz)7Nl}Pwu$WqYI7DwCz5(VYC9k$b@V#7C)nG} z#eGU-dg{6KE+su>pJ}GauZ_f2*4&LDslQ}5Vq1s> z&-m$l-op+rKRcT>C;r8YTfl)2D_OByk@4$Z`)&xcVg+z})hCG$55gzTGk^I#=< zZg+GeBz`VKg6GziXy4f!6J$y34zMM}1eFD2ccPGD;w-&|3R1a%V}jxpK|l$`1O+o7 zB{C+;AYJsQxbSCs81(HdHb^R~uGzw|;bMvn20I~=W8>FOY*2<`0}AMwPn=Wfo_i(_ z7u*)x19I#x)bdBmys=%#q*=<+*~&yYnQ}~dWq`c;j?Y_ZdF8WM@VxSqjFT);T`S{+ z;ty8QenTdAD)j9neH48DXttMwFU?BftF+kNC{+snn5=;N-HF325$-MJBiyOc2G``* z0r=u8-QJWxKeKY@C}pW~qo` z7O@*`{v|}wcfHj&qCE6Wf!w=;-5tJP!}pu4aK?1bOg(57yE#=N?;b%0eRHDl$7EUd zqtpyqUC`z#653Yfi{uC`PpFVqEmS&3eng~WF|S4NxfFHZ2>aBBC;;h>DK?zxjw$x0 zc@a<0y*c_Gm>MvF*_5Gv$E)gC=riy9vUR>IYb6Q$dCaO3xk3LI(ojQpwJAq2&fsGP z>c*)A>c*)8#K|{K6{kE&IO}2bo^!1?6CFwGVM=}Oy>CLR=+MbMPLjy;L*hOPSuWSZ zlxu&j$NCnrDy)ZD6&4WOwxsp&bl9caZ@aQ6=U(fPV7WQZD&qGziAy?-zHm8=Z-deqbLNDSa0g6W(O3 z?6zaGxIp;vc~c;n&UfN&F-wM(eMr7``&--4uaq4SwD@K4#l_4*s%Yzeb(d zQ*?M52Yxs_vYH-Kj#txTc#_$9-TS?vM?4g#{CZlP$LI!){MXlS=iu788C~UD>U@&{ zUrx5aL5D`}OBQV!U=I@eK&V)1;9HWU%RU}YLdbqM1lAAYybf)lSv3A)hOr2{!39|J zW}r>0XLEyO-y4gt?^l3l-ZLWgYhbI8fJJmPK9dFHbJN%l@jwpR}t z_P?l{KV_3p1&?C>2BPp$w{{gujxNWY?IToYb27=GZ$5OV3j*mXh(7uwqG#czR43gs zC-TeWVuMFh-z3poWbn7N{(TSF_%#H}9?U&J-xXU2|Ihk2{>N8-JA7HvbiXW_+o#lk z=VHGlx09P<&*Ok;!u}mn`vn{#ruwcWKG|V)!Ysc$$!iX?<{kB=%lu{NQ8QBAd;k*K zI6r}%;a+9w^qUR*ozs^{(#@GA+}pMZala=f*@ zdbYRTuUlTLo_;bRD!)e9-xX+9n)>Q04WCgk?N?EQbz|Q_G%4Nj2-ah-fuXo}#)1=2 zU4}Mh9p6&AOg% zpW9A;Q?iH5U{e%d_VD7XX48^YkcZ^Cgw`Q*(FXZk-5YSMe5bH0LLb|7Z=wKw<)P;) zcE(03QRyKB2>3aG(#Ho3X>l zDH8l`iN;Rl(kGBVapnF;TDm}s5yKSb>!1s>F8?LB;iu@zOK4FSGxn+5rVP@ClFz6l zv2EK(Nqn$`kJGW-#*M3J^IySAzsnM}aX&(>xlR5}s~Gx-9tp(No6-6O(qtJ{3zb1^ z{41{zYaOxvj^g%WY20FcC(b9CUn-gZKx&z-Um*@bzV-qp%%{sy9`t=}STZxEFwx3z-W`dug5owhC@ng3KW|AiE7 z{T@ks(L`$3R$@zTD{DJ~;`VLDNnL$F8DBt*9i@u+fbfDLaFfnQTi{cxa^5j{FD46i zEjR&mT*_#m@u)^#M;-&Q{DN}K6Z}=VDzhRG^&bgR0e{QS#@UGpQp>E2Ge^9HTsCb%(0 z-}RA=$CZol2j?S1*FkoVnV9fizcpIn8Os;}^ge%VHa6 zW}2%BxpTG7&l4{0;CH<_6>Rj?QcT@ZE9L`|&sG$ppXl5e&cG{3;f&_^*|8$w>`3Pl z4?V+_czz6L^ep5PWH{qLKSPEyYCe$TMCbST*@hCbp(McueDB^pLw9aNiDN^_e_=yO zCpOfQ4Ydh2L^{}j#b1&iY8@MDf5?XX_)4M4qNNIbeN3$t!nHN;%j-B>$xWWKu+T`; zEhFYfpYh^CkEJ17^B0^$4gLG^~;$L3JD+!oTNGvw zi#Jcav2-*KUxT(}#!AWblwr4jSc=KMr`=t1dGkqF5qg#GHk&B!+t5zeb$Kv3UvIZ3;k>GA6ut6vTh4bTC^ZY_{2jC2ANq^r1MAfTXEtx z^;~Ag*WhF=R1dbI?Phc$eoBHQ=q&`XQ0G)<5p|NpKU~2-I^wO5;f&>zB16d{A%`TW znk?KYA^9w%W?hhWtjHql4|heQmpV|c`-Y=wOWbyckMs%YE#wwhcSRFuYpL~uwthjHFkR>XqXKL`FLJJSKx++(-pX$ zr>@|A3M`{({~CQk4E({2-0HF10bHX6oBU`twzu&mDKyCsPb3s&Qr8j@4;N!=*Tg42 z^%lys;)Vxx3<=?mkBOk`YwGl)Wu2`!j`KX0;5<`-YxJJu# zs@F0TM>|XTD4{5ud_+X}2-_&qN0e#Bg$VhGgs_jKG$OH&W-+_oLIqO1@)6Zb@DagP z*CzYuV%J{jBWh3FN34i_MBn2gA7OqlTghnTv2SIv!R(_`l6^D_MCGFU=QoO@Wv;!_N7SCUk601=h(1n6KEnCXY$c-dJEPYrk$e#DX}a_ULq>Igvne+5@lMk zd?zoF81|BsM)4J#ing8uk%=sf~QJ z5cF2E8F{REOg5K&R8KytZk~jsZ3!sud{u_MnWr%Ef;g3k7~XMW7A7+grV#-#9VgH% zH;ZSvml8%W-0OJ$65>|-4Thk3PL5$>Ns3Rd({d@*Y`GjqcMK;K@fao|JP%RQ^OR|Y zgUItFggq~%5lM|<%IYohND`Fisa}HT3AP`@XaQn{1WMmii{id#MeKX}-%~n#!zMlh*1TS5MauuIfBinHd6GM`ZxJJuLs@Jj#M|TV-6!91)B7B4xl4F=M ztq6Sb5eZ=*NohoqW0-P!i#(D5HHN8Lf{O@t7{h2Td_)4JkElIyAF(3#5q^)(#Jk(PWI7tC|5pOi>%|L_!uUJq%q7jTGpYsNpIPJ#2v$lWjuz73NLL! z!e>m%w63AT+*T69UXt>Nq{c91^%i*~2`ZAPUV@tlCXZpn1$;!}q>rdQaUZc7_7Qyy zkbJZr^j5MN`Hhq(W$dFC@=w^80KNhhxplaGZ>TyZzf)MEXL0j#F7+e zT&HCV)oi&HM>ozAia5@Q2oK(dgwGX}X}yUGb6ZIWdr(Rvl8iIT=`Hd|0#uw)wFCze z>=0)dO7I~Gls=>u#eK+%*oX90Lh|7)ptq9I$Zw@Q>0=*WMLvvsX&cIwmv$iAG0un~ zDbBb?%k3yeoZX4UjkClujx(adOLrmRIHOGKb}GzmB{A$JDUV1h&M2$5$RkNmaYpqL z+(a-r&d{&$5s8yNqV~jn#A?__^od6D(H)?-lFi8Pq&z8OA6-X2s%~C~q-_@pe>BeS z1%vY7&xqHJGt9Z_d`m1zamID%wp$ha^z?kXjV?AuD1Z(w8F1hd&3sm5fII7nCP; z?8BR+4{sqKK8V6(A67Tx-C18-2nUz2%!uUyFIb9;R68HJO1}{+K)RalHwMumg#c|u zIQ$27?j!>qO*EibzDk`i2#O(6bs=5>!xxo!{m~Eo=V5;kUG-lvua~$2-d99f zYpnrQSe13ri}V)C$0|{Z+cDIel{4vf4CP{dK*H9j-4`j{L+ppNYN#G8_qCD*dP-}5 zN-iFNW0uZ8-5h=UTC`qoAwrsdF(pTG&cO;;&r!7?=UA#G6&FD9pbPQcpm#!6uxGX` z#mAy0H6PSNdVuX!_T%MF-#dBOLkS;|MzD7LaMW=`z|R0D7TbeS7|{x8JLDv><~0$5 zarpC!e;HcdbePp&T5r&+obgfkOSzq`*+WpuUcn>s$l|V9Et1$U9PA11*0r-!a1aj< zN-nAw8;%3-8S5=0WO2Om*;E-;#dXpcGDIz`!*Ys#&y{5Go;CLcP6levT5mbAy|j+| z(~e0b^LWS%aNLZP6KOY{x9xZ-K)A!uRgtx zr4kSARSU5dzX5~`>bXdF_eB28g$riSKMz-e_p{dquWVmoiYN& zmB0&ofOf*%*fe6spAPfRp1RGS8V2}I>q8$8A???x|8F3D%D_ET6Te!HJd71tNYB8@ zg7^@R{2K?0k>W~IOvV3&_)j$Y4|e|U3{2v0Z`nwNI5UT6coIg8?s|TSB~ml!xR;L= zT`mb{i+4(hIxXYr97{ad<&i8)+@5hq9(cOa@ohd%<>SSC?7`HTU5I*iIvvd}Yanw; z-b39jv8^i|A55Rz(-N1Zldgj-`KfY}e>k0vx1?_@w8Vk*OTw0Txq?cT7m|e9g6WV} znBEm7qr1@27bNN*yHdX2F_d2s;-jCAjR87t=i?Uz4|^=pz3}%{uwSS0P5SOqORVMN zQ7*Y9G!LzNq04NP-rPL zbo_?->#9leuQ|V*Idv|1kV`IR4?M@^mj=j(zwwh#zAdCv z8Sm)@@JO$caDJ!?zL^zsi;zG|JDCJ;>6Y(mxMa;v%M=(X$pUy1EC+`5S9F%q?x>&Ng{|vDN(Qy{?8045SPVkNO%*Jz39{zR9mE~hSt;qYCcBF)8DL|Ld zZNhF#{j)KJ7c;uAOd^|6pY9UXFzTr|2QgZuIBOXVQ)nckk4t5}v5blpt%1=e3e8}& zMWOkUQ)yVp=yHV?F?zdD%Dj+Kt*W<#(ML+(rHqOcZ51QY{kK)rzD@8{hIpsow^cU+ z-N3ZsZbVBHJ4G8j(Y0El$C&n)ZkzIE<2RijXY^#5L{CbY-KK|$_B5kmWfDEh=;Km} ze#@v>(OzJ5pQ`r~qj3ryWb}#Re3enHLT@noNXb0Js7TS?W%RA0{eh8R(f-V+TA{x% z8r}UL6=e12jE0p-^aZ1jOC|b}QL&0DU4Pr zS{F@2_R-pz) zA1RrQjEWTPTt=eXjRmA{E~B0bEo8K+OwtxJ8m7<^Mjw|-+Hyw4igpE~>y?z1jJ7D+ zwTy06wCflx==L*=zbvtikx*y@qg7>+wu#Z}inf{2Fh#qW(Z{8db1S1_MccvXJB4;K z`b42$GTNfhV~mC=4f`0?GA&#DkqeeW9dC^bbZ0x*zO58&4Tn23a;$As-{rP13qB z`Zc3bB7@PT%sEPAF}kpfI7f*RM#B^;XY_F?(M}b|Fe+x+Xwiewbe3|Oh#Cg8dvWfV zjjtQ@G>p;=5wi%LB?d6Ndiqg{*|#c)PnFq$P!WfWj3=ZiBFq%08=6VOsI zB>`P5&PmX)T+B?+aFv*spy4{PD52i7|phD#XcIjaiwZYj8S_K{ zvaBA~tn>+O^K<89O=xQl%}Jt`ikiY$mL^iFXQlTMn=%(Ne@6-UpOe*J+|hFxjzfAZ%PJLC%9p-UQJgX>oysrc^2@k<1&+lj6(*Hmi}H1;*K+wf z96$D6kK@Z;%HNVg$B+29gpW_+NVRTeX*Yu^wM>APQqf=Ox{ax~F_m;pfG(m+jdy_h zpr4MPdg$o4?f}nTFIk(G`lXNL-_1O9{M187zeUGxI1(pWm6j?k+0C4E{M187zqOlr zNN-vy9ZxEGkdIIB@j39^(eq^-hxB+EB^I}fywO|C_r9KWMq7T?tn`jYO$5yghpIN z+?+`zb*Ypej-w_nGU({=fAs_WUok&XFEZ%p@RJRl$tMekrxNudSQzL3_6OvD%kqhO zk?}1&7WMp#Tcl-EJ~NwI7vy{i=gV;%Bzk7YB_~==*4~^+C3UGk#qvb{pJI6;e@DxY zWebO}g(oLinCL6ga&sn?)WJ*t-dBnI9W{<)jc2pQa}qQrdYfw9oJl2hsU0QEVF~B6 zhy5w!TaiMZPe~2Z)dA<1f@iu|o*;ixLhn!F7Ey^48*ysSDzZOp{krfv3OLWP@ptWB3@8vPeBA>bx5JL z;4Bjvfr#g?5yV4D=U^75XkbGB7|aS7n4!?<^0|RJF;Ai06>|giVzENIz=^#e zg}w_n2PTS@3hf1&B-SewC~Xc*7B?$2y1Y3sMcl5??uzEXRB@j|yTI8f_9=8_XldXa z@wq}X3oZ#v6KU8rr`CR2bxB~lpx-GI*b{myZDnAF$cjqZGvW1tb47td8-UIe-4)tX zusJYGj8kYw>8*j;VxmIdg>MZsi5Uv*1)3w~DHH(bT(MZ8(dD-W=85GB?XI{rFkh@t zXcstRV!cAogzpHPFK$+71JDKHc7^s7+#6URURG#F>HUFbaY&)>!uJOjia#l|7if|A zT%iCs7mM!{8eM*W;6h>I-XQs9cg6jIC8CQ$yTEyo$XDo@@FRhxqD-L;KrJGo(4K;Q zfs4f?g?5xa9cUFZ6#6dwbYPj7r_f%Y!l9SfSAFil+mYinR*u z0_SC7i$a3}!}QC=JqkTm@qFM4@i#)ef;bqsN_542DIuN_Thlb$r!7k)2|Wh6%_wfoff!HUn};x=yH9XDDEkx z{0j9pifR}ADR6@rq0l4#v-Qom-zGWlw7v;!7W8WlWc9JBXX`hKISSnX+D&2!A@tGZ zJvVo~NnE1P-qg)qw}_Pro$cG)^;WS3*s1L9bP2KMNa^N<*;(7TyKa`uSH z3Ox<Mv;l(0(iE%bLU)s92HnytqT55yz~{c|km>P}p9V^P)JUP=br9OAa)Ft=(N0tb3PPl$4c~7&ciu>6#Epa zH23BFNtn3Apn4ZiNRyE zDuoV&9?!P5ehSriAJ6Wg)e=HKto1*h9nnrvv=U!qFshALXj5oruu`KRr=a#-RnQ#l zrJb!%b#QsGk47IdB-)Yu<-va19SR)}+5qi&g|Z8l2anbMq0qNgD}u*q!CG1Gt&_-#K6j~43soD&M${};K zHdmo%K|4)bsL%_gS)S9iOB6Z~vOQz8TNJAC+Mco6T?&0#lI1x=dq|;4sac+J+I|<^ z7(7#ZS)q4f%URl63f%~O6SNN$dNow+Ia@od&{b7go;q#C39{`4!7NX`wnm}VsMny~ zpb+B4oT%+nXk*~k;3VxEg${%U1tx3!ativk#yco5Me`4rGS~VC1*U3PVzYOrr5>Bn zsP$5)#Mj?5O*>YhS3~_h)3p%_^{d)q&d}y6v@x(FI8)oM(1FmS+PT`@3e|WY)y~r% zQfRIJQEisCPoZh4x;|TbQ=t;y7ITjFfkLl_wwQCZ!wU7Q+Gftvu=r;?HwLzu^R?3y zIuM!|h-qglRO6i(IA5Eg&|3e*zy;c~3QbErJ7aj6&R3`)IL5q1TcXfv&~DY*6zW&?PR>^C zW`#Beeigh;ds?9bq0ND9+V2!v>)#yMuDz;IjdyckhxWcgCBFT^+qJ_A^{e_g=MF99 zWG4on58kQuQs_YF-oQ?6ph9c?_Xh6LhAC9zy*IE+8?8`@@1@|~TAf1us=my*M_Z`S z#=w_3_i9@dIuP0yxKG=u&|3e#z|S<_DN=ilcVA$)7E-9h_iFIx+9EgQcra(YtDU2D|gXVxzA{)xoB)s`xBIKL$Hy0+Fu(a@XPPM5QP=#ciVi)uq}Yr)eT4WmNuXf-aH5_(TNU7^GI z3qpU;W+^l{r#1AUwnw24s#`;U(o#;BQo2{I34NqBD)fHE_RuHVW*6NX`ir(lp}{#% zhCbC&#>jdfR6iN|t5&B__o`Pyf75m=6e;~2Uw+u5P+{qxLtko7y0kAsUun;|v~NOR zYahBaBkx-+W31E=DNW7$P8+09VQFUGzqAo9D$F~gEm3G+c8@$w->1-y?3z4XPdUSp zazdU*@9UzI@%5J}3Kf=)%}deGbJ4^+Jf-Mz&dN*Ice-ePUKjnK%ego&Lx0Ofm*i#X zpSzr^^K$gUagO#4c|m=oLWQL_=Y{k!F1j->U!S2+*X#%KiuC0QedgPnSFEpa(X)AB zeTPEtnJ?#+>i4?n?YuJmIfc$OKFaH^A9T?ddFA?N3N16g&pSr{+C|=cThBgI+Bw#r zl^@XyT~wGK)dwnMWgnAYrB74n*JfXQ(Q%H8hUE9suTtm~C1BgD#qt-(P=4p-5?S{y_bEg$heA%0E^QjdwhFdH!+w2p6r)AFR(;sIYWh{t$hM zi?-y~>h~zLFMC)1aDB~LQp&A?U*wO_x4P)D{1f#q6C~|T-~RlQ^g04b? zT`*ZsYmoJJWDh8qs`s5J(a7|Z3a05JTr{R&hQ8B9^#$kYdt7u*!EC*7l2dO^!Cbx4 zMa>2C^))VPEx176>Y^(OnssxsQ}4Qh#X7e7@Q3To^y>?j=u2F5TS1Gy!bNu#wCaal z^oxQv{o*N3y~hhK)6=FpXn(<#`Wi-S#od9I3$E55k%;#TuF;=YoRQM^3a-(=anYX& zR_SGpQc7XzX9cVEsEfWWSfke}6e+a|*Xwg#lvcPw-{f)z3ODJux+q+DgZ_ZaSy_0K z{+^3!3UAhZ=Lr055{0FM3UAS~U36mMR^4Vq_s3H7?fO6$jVruEKUt!b-qu&CJN2mw ztp7~WPW3&k?a_b5Nbd0L(GM{qPxLVN=!ac&Y2l;#KV7u4@NwNgo%CJFetAMK zQ7ETqUEve>iA_l(zdWJ$SLkpdp%Dt%6@*4JBEQ^#dJ_~H0Q96jU75(nkwl)b}eI`RpbAO-9mZFX{Yw4P0g2=lxaTOM1VV5D7HI^V`CM z`Z$F~0llKf6uJ@URh>T6Nu2wEUf1s-#5=6NFMLyf-9_&fzNcf$T+t2}eyqRZqHhZS zqMPSAw3MRH^oJ!%$temI{Y`&Dq277LK>HOESwuUa&=xz!(U7CpV89^~|R6mB1jESTABt|rjrWPI5n_YBXkzs6- zh)0gcxK|;XQ9Q;Tg$&AYNU9_Pn z!x-nHTZ-_@CobAq6fka-h+7*p?o){7iJ-AZA!=>VD46H8mQXi^?27w~f<}LZ`e4=w z8bcUSYxjUQTA=|zA!D*ap&m~a6a4YMn=@re=jOA?vf~_TWUjLnelUlKF$6rwanP3&>}CP z;+Smhlq%w^U_>qYzNpOTtIzXMMSYDg6{6PmH3}~v4Oga6Yx^1}C^V&tI7cy}*5(%XHO4D60I0uljzWWirNsk{ z1r8_BAmcKH-VT%&4>qn>Xg|;p;~s^&_oynaHNJGwfZ}1szy)N>rj$^RVZ|pH8(eg1 z@o?iXBk83P#=vIcBy?8siN+*G(n}+a%N1>Z>7?S5j3*S0ymYeh3M1*Ila28UNeX#s zXVJ;VEEi2L9%U?%2tHd^INE4ahhQ5e2Y)Tmb zbh?qP(4gSF;;}||g`z;?jD8Be9hg@<-Z({}{Xi3pMuocfxTv_!*rgEWiQ;Hm-bNcImS|#_C)bC<2pj>X{PDMHWxixJl)vsq65VZbxBK!Rv(LJX3t&1Qd07(9@b_W%?g#2ybn(L90++g+Ve2b)d~#&I?vcB zIYoZ;SH-i99ST*I94Kxw{-w~dC7PIHq+LW(q?hIxm5gYNeP2A+7^-OGrFlj@BZ?Od z&+pE4kr|$6EOn7TJl}ZGMY-Xa@drlKzHZ_3jl+`0?K|JNbSY`SlG}H_ah*aXB|X4- zGb3tWU!dC+8UVDwctD}6fJjeMALzVkVjrZZXy?8u{g7<6cQ)zg%qWbJ5K3 z#l{ORnj3C4{>g|uu_V0AFk4wBdt#Y!wL;X>%ZyD5m6R+4=XOTqiK~I`QD^{Ao3Tfs zP>=QDOO489B$GUGbNDjjW=7Iw+}bM*+>pngZ0(gsUq%!K z_k^!9PEs^#?FwTCqfO#e>lfh_#%_hq0lM0Foe)NjUiDabrSYjkD?Lw#uQALvNh>p7 z2(K~<2=V9`Z(eIux#+dy2|1qE-5OW41!HmRfII z!H9hJZg{V;~|CK4!j$_$#_Pg{Xkoc*BQy#=2oNo zB?5nhJ`Qg+PG%%Mc$;y)qU|sJJiN`gThYja+l{@9oSjq?=(JFs4O$31V3qWnUpdkGpFP(Bc#wX zRozPNHX0NP2P;eNF_tOxwXaXfy~cwsI$bJEYrETShoakB zds)}It?s%F1=n?}yLGkgy4&4;|L1?+Gw(aO84>!m-|q{||9#GLp7WgNJm-GinfLWV zua0e~{Ic`zgIec*lr>jA>LjwE>np$N$P;tK>i;NfseH`&xEK0Yx2^K8oJX>uROMeg zKh1`2s{E$&nismZ=wM~W$-hl&xwhzomB*Y#+0b2;$DOzrnp$yR<=;B?`$h6DwIlrb z$|s!yhO|GQbjC9DarMpGFClKG7dk#Ek^ensaW?cfl}|Z$XG2d`{=j+E3;j#kGnIem z;Ois!`?&fC_l3%*olY;b$$6>r@0}lep-%U;%4eL#cWB9#WB#Y|$4)dGvZ|hS9`!=A z#}-%p#944iOFo@9zUrsWJ}>mU;u%%XIe(W8HB`OeEd79%{9SQt)d}ZeFZBB8yQ}`i z`Dr%v*{XkaW_?ggzCQZfRljgP;e{4Yzq{(+oyW7G&sP11GybraTs-~TRj)bkXXq|G z6Yj;TH=Hkdp)Xp$sQQ)je_rSa;(p^y|B$4+OMM@q|8iD)phGLBFZ5jAtf|VKcBhuy7`}L_f;(6?tVL8#&` zkvvhbebzPhICqi`S!L&oN$qu!;yJ9VOazZYs!Kb$(*J(86SsdL?LGNkQ1&&_xtvGY84{oUHm3uetK zJkPyOhiK<{Zp@1lJI`}>d2wCm{&;Go`zFHVMzOBs(ZqV6Teiur@WBlSMBck zn9lE!nJ-MOc5l%k=2z|B=EX^V)$ZM1+<#9wF?E`I(hEs`)7@V%r1P8MhCWW6tcUa6 zd@m&Vo$ubOLj@Pke9SuEeZY&8dN|+xoEIngo$r3li|d^7Z&NRD!+)xEN`5u&D28-? z?{aIrI4R#uca|5D{ARit9V*y0Gh@wkzw5xW}fvK6REm^BzCH z+3tLXbiLQQmocR4z1CgDkktEcr`Edb0+MswO##U{ZagcQUp>cd4M@&&y8@E)+yhz3 z(&~9`j~8lEW2zUphq96(yh!W_L%J<3azE#Vr0k2_i|_U8c9FYWhgi3Z+(s`>%D%|m z=*3ChE_Ofbg~ZoO+%GbueSNX}q!%Z?zQp~$7n1xgac}s9&QI$05;vhk%Nev3hZmCk>fGNjr0aIM>)a0gkxEsBYD z;v~Nox8l>1!wI&}xI5VkeS5a05^m=a9rr@f4OYUvl_Bkyt?maH>QNQW zlu=vVuLt6`yT<}?+udIW;%;=+QPJ6>4q8)2-RQ1nNb78Kn*(ueZZAV8EU~5C{po|g zE%G!K`K{EMMqAa6Hacx};}}B+^BTw>$jOyI^E!k2|9|>)J@Ad$1MAnuQ#^Lp4CMc@ zacp%VOE-VASl$V=RY5J@tmW~AGdRDj%vN6-Z(;|R8K}*ql0ItwbiL@%P<3RhThQYi zbzipMX-QjstT@-_u&STTK%J)44TWOie^r!~IqF}=2K9)YKF7wdg>$X7)f*U9f;MZ8 zrG7X`^a$GOpUQk0%~^ZiU>ry7?>9!_88HLOH7(0A_RGi?q>WE>ou0W^`OW8b6XYp2 zg={U_GXt@Ij=vAv#M>M3h(lW~#AEs#_4x}mCl@8waO|v1FqJ%&=izMH!R5u7HWiGJr%Xxz~ely>n)_&HtFcNxj zZ912r{xgxUpVvVBCaLtkF`IGP-o?S{0ytPbNoxm8CukJwF0<~|f>=Y`e$WEaK z&&UbVj;g~BqCZEh8my*7vJmGvw%Q29`)%YaNbuINI=hI**WYq@` z6bz>)sPnDp{$4V9iT>@{+gxD|RU>buzrUUT%`)cVP&NqPls8EC*ZFpB2+A8vhON4T{WKP9zlLSIK%Tp z>SHzjS(fP6e}k?0>oMavc@{k(Ed z^R$1AXZ#j5G)HUJl0NNlHST&Rr45CCEj=Z26ZDoYpf{VxV}Yo z;Kw6-@OdvjYpfKWo1IcG;FE{Xv-mu%y71iaF7Ue4M0}pb=V_#vfzJ#0OvUF}e4fU; zRBQ2h0iSo_^DI73<6Q#_@p%ECdH6hw&(rE=q`euuo00Zr@NNe00MZ@+?*P&s0Pg^J zw;=5;;N60>w}5vGcxlL`!AnCf4PF|&Zpd|m*A2OD@Vde40j~$V9`Jg=>jCc$bt^tE z;ByN;&*Jkm-o2hLE(fD_e|+4wUJ%qcJOYl_lCucQ)z7Tg`AF`grUDq*c;(5*L>(<2c-lL8|-olfe1?z0V1(aV( znFi9UNjH<;L^@8ojr4CxyU^CGUWSHw%5vl`spZI>+J|W8)5Js8)S_1FkoC#h4(mB^ z_5sINq^;eKl&HXxXQ35X@(i?cs~68HE4O})C()H#e?=_A)8)#o%kliVa_eC{cW#0e zsl5;K<7++*JXrJyIA5If7*L+}R$%??ybSPj#8-+X_Vx+iBmM(4d~(Lm5xZ&3zW^84 zJ_h{wj8}l7p}_iGh3L6pjBNw)Yr7h2TFoeXKkOW%jP<6 zy=Kfo;unxMui`1>H5)kBlIKm$wdBcC4>-?^e%9V?eJb>ipihlH0h#B=ifvC9ykftp z{<-)y#7;%*ZtGoDZ`w~<>5AXM{smK{6qgd8oh0eBBv4>R#g4 zoCVe=3!ichS$|rv1kZy$KI12#M_2Ya$Lz@Hmq4$dzC<0e=8yhA=QZoK&ne}cJ`+ag(ROTOi{!JK_d4>-ntL62R?WSRJfr4b_)1WoNh4_m<;gPl!h3@9>=?1(+|bj`L!k>m%QIr` zb>!JFB7cwj9NW3bEF|ZC+AO&Fyib!}7di%dEjb$?BhME(=E!qJj=?rTd5*|2*d{2? z4LJte1m(#f$6$}3Jj3GzY-mSXc}mAI*svB)@wwo~g&bNRu_iurdt9}6d*Xi+)*mgf` zTUGSaaJM}nyhPzmN*KouS>eim4}ZhD7za4tux5sefbxx~$LX1uo%)*T`G>5X7?)(k z8;ft6UT|I{zsCJ!;pO=;`_YQE`ERON_=fyr_Nn4TzO>k#`Q0`~zx+ozk`%Z#;Sc9q zZqxWr0GEyv{Oq`+z$87pQ#Qc+%Dxf{k+16#)ne&n25;5Ww!zJAUUV8wXBY2zAz z%f<^v&shun=s3Y|pK~4XU&mcnP~fgCNfgvr#WM~RblZr5KzfmCL!?z3Ox^GPUF8JT6 z`Z4J5RQ+SY68GCheFc{NZ0Og(*MSe%<7@uA;DqzW#F9b_k`oF~INzzNEPTjb9GV3@ zM!bvIK-`!&r|>mv=Y=Z^PhhlJ4IDF}9r(2gdx5tTTPO8^{!Z0Bko->7rwS$C&lEmF z3m>sxz#R7o4(%|*g8p?u0q9>BJOWF;SNH&Id(1lK{A%{kK)(+90sAu-z5#8oLGpyP zAHOv_VLehL`d8p$0pq@9V=MCy{ZCU3O+oItO>KsGPWRD{{ zr=h$b4b1{tO7QBUS+>|S%a(q9!up%(dkbgTV%02LtXe<~OQ~U&EgBlA;URltUPZ~9 zYJSy4B`-UNXD=&R4Sopk?Ya+7=58k4?9uYX?qg`HGQ0il?C%yFvv-y6F6p*@Q}}c1 zW#^N#?<{Gf4RKq1A~Fw^bdqy3IVaQ>%)GKbc><}#@?)^@`z24?)5ks!e9!EEEqTuV zU77r@yt+W>nV5@@!PIY>Q+spoE3wZ^%dCB2*W+ztK#`#$@-wM+1wQ|aSJS>A_P z-uqbIDyOKVsq|4>o-F>TEl(DI)RrfOS2`SremU;J56_j+AJ!(@^-MQIj1h(KL*5R~JolSo_X5#{PEHeY$NpQZLuK zFXxRbi@{5llC|IYW%oL7&KCT~@k>Z+v~A&BL(Vm23!oG0c1K3nr>!`~(r#zwg?EE=6p90e(3O8yXyW4?u$>&v$Qdo}DEq?W)0%cGcj>cQKnO*-Xi1N1h7b z?8r0Vo0+PashXLpnW>r`X@Sj5yNPKxq10PTL}~tDD64Q+>bK%e7w%@uJU{}S>00}Qj697z@_R_ zzzFWg!8hs%Vy9UT0xz&W51eIv5je+sw0tynPImzl#3zZ*0z>MX?)~5wlu7Iw;s)UP z>VwFoMtw!ST3w58{oYevi#O;z0eX`9A+VbKnd)#wt(vcX4bCNMHV$X&)n&jd)VqOA zY6tLo^h8<|%NIW6S0s6SKD3wp@uA*TnN z+b=kxj^J6!N7SDq)e*)%#I%p%Jw=Brj;X&^e|`Rw2v4?nsc$|2W=-49f*fZ7r71gBY+oM6(lWrp2LONkjR3EKKf%E*d+eqKV z*avJW?-9xzp`Nc$<{0_M$v;m1GvuEn=Oj6fBe{nh$+3bs26(ul$`PH_&Q#FV;Ngk{=@hY(oF1m?A*Y9_ZXR}zS14D?Zn>htAsuq*2Vx~T zRgA4BJ)Qjdz~`qe03NQ0kY7icdeSQ>(?pDt6Ju0K& zJe2lu8)fby_L6_ZLy3Km{I3u*R$4MV|Mdk^{J_CGyS|9l*D07nZNy@xPnb#?! zLi9<9J|P_n(I>#?r&W?uO`J~teDWjY)Du^b-$Z_toEWvWgy;drwveA7ouXu#oNh|? zkiLzvcQLk?oCg?tg!F@q{R(3<IBsnjVew{KZkG+o=%411^ zC@DGBd2IjWSCccH^nA)h$f?T{U)7Ud!Pq9oM#+gWwuN+pu_?x;$?3_PWZhGK8~JyU z-%I`x;)CRWh5QUT$B9pn{|xzkPnifg^^~b6 zzn+{Gq@$!;7~4Wl3pokWDd6+d(&Y3|ric6&<4sDQ1PSV>MbaXLBki4k(@i7Uv7l5Qa;$VmZF zE^>N^w~^mV`Uvqsa=t>z3^~UOShM6GC+7*$eWXu%DDB}z@?U3KypkLCTZODa(jn3n zK-3^PRpe9`vL|}9q?%4TLYaCGMgI!&qvW)BDEtKZX>xiz6#i}G_mcAf=_7>|=#>wW z&X9kM^l|c^ApHywBPwH0kaLpsi=!nEago;=%K$M95YVxO(A0elnoE79WQ8G$? z3;Ai%J*4kqY%e)S$jOjCPV6I|B&uTCfY;=pj}(gymE=^DQ%z2UoO*KV$%&HFLQV@g zE##z$J;Yw(kzy%bhV*e_AMqs9o@CmS&dAnr-^iwbPF*B4q7ki9?JJnriYxn7~4zw2xE^h_6Rv&VQhx~V6QVQe4ilSEa@5)mtj)x-#~zEnzDkDoSREk{n2*itHESDLYDa(c+=C4Gc+hV*gL zeUv;&T8)w%tx@#eDA7|%P8B)T1xsu z()FaHq+3X*N%xTMC4Gc+hV*gLeWXv4R-;9KB{4#b64S(9Vusi^TI#Wn^oh~pc?<7V zy1$}|*nsyT&8>-799K(gdMl=af0T3|X@xf%-Cq$Urh(5-J2*yGdPj+BtZ>v=T0**# zbc9$pR&t4wj*(82?k3#}`THw+$;pt;knSU@bEuOTAvT;N{US;_P3$E;06uJHY=)d; z?=oMNn+K+O}VnRJ90C8mjZ zLalg}^aG?br2B{`CQMY9U!W#Z&%}wU`GQK)RiH1wAVRv1bd+?AGHKG?ci2r)`b z6MKmnVjoeROL=017$v5Oy~GT$kEqV0JTXFy64S(9Vusj9RF#w`Mu<^jn%GOs5c`O# zit@w=F-lAmdx;rhA5l%EJTXFy64S(9Vusj9RMnIxMu<^jn%GOs5c`N~8s&)*Vw9LB z_7XG1KBAgVd18bZC8mkJ#0;^IsAf=}7$HW9X<{!iL+m4}^C?fv5c`Pg0`iFwVw9LB z_7XG1KBB6jJTXFy64S(9Vusj9RPUlZF+z+I)5Kn4hS*0`GbvAu5TnF2v6q-3_7T-A z$`d2RC^1d!C1!|yL^Yf8#0W7;OcQ%OlyzW+bf1U9QMFI0lIg0J8bB|ZUP(FvIx#&$ zItuzD)1#!*#9m^C*hf?sQiF%0IYK(>p>Wa{KBc}nJxxw8=zp8uOF9F3+>8wAKBAf< z+SD9LRY^MHp>U#eo>C1nqU5AO@1Bt+-Al}PD3X1o)m&jGQDT~$H0fT_y`(e5 zKB8J6sni1MAzev2LW~mAw??Rz7q%)-ZNcWLei$srF#9AO-NjkEK-XJGROp}u)-AlTcbcWbRREud9F+z+I z)5Kn4hS*0`ODIo_5TnF2vDZV|Pdc+i=swbYq}9c=|6oeufyS7Y$Kjn%GOsXikHq>Lq4~eMGf_ zt7~F}m|i71qnA^j*hh>u3P1gB;b(~I3ZeV15dNtvczU^-9AajT@a4s;&rj>UQuu1E zV00Zh#A#Pas_0e1&k+08OKfEmWtvzQ#6F^G7EUEGvq5Ac8wI1+31+U7*gm4Vo|41} zvG;n~u!(qs$WOaLR!R}l4W#45gT$l6%nhRFangOHPmxyd5x)B#(NIY`LX5uWDfQHh zDCsol-_1yq?tKr}>ZFe{RfhEAr29ypBCR%4^JZ!$9U(@EX<{!iL+m4}D9cNX5TnGS zQPGo$N?Xm4^Ef$uq)(AnG3JODGNUY{r;(13juO+vUScLjZKV5%Y72AUlCox>Ur9Pb zj1tqt-Yw$uUeX!T8Pbn$k$n3|pCYYVXip36Aw7+BgmeSxXp7WioOHTHe48fcAUVCH zkCM)i?xRc}X%(ln#0aq=E_p@cDQn;PQF7wsq)8tn-5cllK+aKeGNd0T-N)EIa!!$> z5-df6rATnBAZHpm5z-B$qom`c)1(iQ?j?PcbOsvG!pZ4N6v0}xRWL$q*h>3J$4RG2 z_YyNicbmveBQ_AD+eAa0bei-*(npCIavmq$NBR_LwOvxV+gUEs(?~~1H;|5!j+0K4 z&Jg>Es#P>p5+lSYF-<(!Dw>ZHGvqu@x{vfJ(&|Rqa3gIXJ&kmPbOY%q={V^$>4T(? z5;NpHPP&iuDbi{OHSeHi($h#sNcXl$Y=)?IvJ}J!F-lAmdx;sMYNsSILW~mA#9m^C zsFIW0(!InCv5%CF-|;4JgPY#kl2I7qniGpaE=lmC!QisJ1qPL zVw`x8c$D}!@Nk9uA$o>*koY+8e!S&8Pkp^SZvDCSxb?dAf7Utnd3LRRy}jFh!giek zXRK50EOnC3QRgep-#fo?LT-Uu;+DH}+DA=DVUF4P)Ih4zIGgl-LeE$`=f#o;T$*M?7ougOp4e=Yx|{8YhT7W|;#mjzB? zLE-4aiwmzV+*Ej|@Xo?-7Cv71OyP5dFBZO8Xcv_iRTf=Xw74i%bW71Ei(W1I@1m*2 zi;GtlZ!NyN_|wH-EB;~ezZXv|sVu22SzWTDWKYQ#OZrNFQ&Lzus&sm3W9k2vzH8LG zM@2_{WYnideRI^$M>%Da%Bsp{m(4G`tZYTu6=heI-B8w2)>@V<>ngjcth?-sWyi{% zD!UHfi?CD}zo^`x&cQDbCaI0862D1UfL|h9jBhkV@Ee2%{Py5-6;-QMOs!K}R5N~e zuo1sAxBxJot#G|3tdfmakf+qHwK&;4g&d{lD5Sa-rz=@-U z{`L8S&tD+;QPR6f{~hTslio_Yo^%QEKZy^Mf0*>Mq#q-_gY@O3KVKyI8mq+SFm1k; z)^^Tl1!vI!%Z-e-JV_a$FDnoYuT==WKPGR(8 zwJiN$jpVLneqQs9EIksLq0$ERY=*_HN)RI|XdQ zs|sw@Z0`kbu=fM6wr>JnV;=x+wBHAe+ugu~-2>ce-v-=f-wy1u4*~bs9|Z2TKLp%o z-wFJn{Sn|{eE-N+AF@9N{ILC}zz6MnfuF(Ky>0bb`+nf(>`wu|YCiz{OZy1$F}#c0 zR$s$AxNY@a`yt?y_MZd4hxcjQ>M8q+z!&UCfd6cN1^6@jtH3_{G2jXN>%e)=Ujr97 z-vlmmz6Fdp$ABxHI0D6qYme-0e%>gd(@vma*z6G-df<@kld^8f#hEG2}tf$_vKv$ z{3Imzs$NL$RiDml0v?6rKJ__B?o*$KKDAKn0*2+3|W8Is-V-0(HPN=WvoS&-~e zwUF#lb0CRd$w9J5Er29`IS0uewHT6jsAfpsp{|DH9cp9vTHtk%yhCk*4> zNFGvgNFGvKA$dq`hvXr3BP0*0Hb@>)?T|dAc0uw3sw2D^*cpzgJJtI^->L2ZeW_Zb z;&}RLC%oB%_>ZW2)Th*E)L*Da)i?3>f*+}$suSwp)a&ZEDrA*fM%`X^ zU)j;Jhs(ZR_I%mT%c{#~moF+`Ren`@tb9j#SGk*(-!j`+y>#Fsf9v>668t*B`};uo z`wI*$+y^R^>IEV6*FmQ+f_LKgpI!Lu!DlZ%`|#P1mu$ZmYpk2_tHhh}Ie^bC_`FXo zM;lp=+F!12#WziR@HwbfsN2+4cUONT?!a2>5I!G34SW!5t;6_y2%it*b0>Z$ zDu0F64`8WM#oo2dyN>p*W4!A*R=iehJ;(YlKEH6h7as40Cwk$DUU;$>p6rFsrJnKX zdhdFJr}rlB`aWxQiRgcybqdcdz^cv*cYEO;%DL)xPu{X0mfwCT%WikX@0PvPm2{4+ z%MlC*b9ffaDf*t@WMr2xX25aczQ;8*B9)I`D^x{dDmZf*Z=UYzw)lX@ve@e zP7GRl6QUCi~ofee%-s4EA zFIB-IZ!n3{bg!i&7{ z5-+^O3t!@eFY&^cdf`jG@MT{3GA~@`mABrzuJEp_ylbO(y~ev<>s_z+t~cQN6Lqis z6ZN#c$$H8Dm3qnk&(K_FQ{G(X{nl+x+IrZj27k8on&aA!xvu>kx7dEkF2yGw^sCmF zL$6wy&}&v7KK}yxe{gm4UbV*Ny=G0swFaL>pqJva9Q0NAYz7_2=SI-`@wpxJVSGLc z`bW6_IPX-*3eU7xh11SU_Gj>^vnBjOc&B}F{!RA1b`Rou5dIcFtHLkZFBiOMPcJNS z9w~g$zAEoU`$zcv0`!cc7wu(5_0D6sezWLR>*a#itWyZL6~AbA6u)X6EUtIn0R7*f zi%VX#&o8-&`AL~yvhM`_06t}TFWIB<`GK>ybaCFp_?_s<(i6_p_A<~5@%e%C(@~oc z|DU0k?A`9D@{98#G&*y&c*mF!RKOpWEF4;^ex48DXy{}xD?lA zxGuwWIj+lby&S(kZ-gDKxZa4Xw0pI5*^?2z;fH7Dzn?d^${&emjmQ)fqO z`?h7U1>>r&M92Ot z_vVF=+?MFvye77f#;oc{#30?gJ=VTrcUP>fIjQ68lU?ndYr0aM%M$^SwH-M^s}t?p zI=2rVzqC0y0(0i5=DDb&L5n!h`1zY5ysQf~giDLmWz?hQ3Q^ydh;`Jp#~WHxyOOCy zU0YjSYJYpnvN#e*d|hfqd)LlHM{G-*u8C~S`ou1{fesPgJdqwm%Y5(~>ytZo!O74e zAzvdyaABtxwXP!(Z*75d5kbw(vD6OG>l3l~+V-~nO}k?42-dNwNaFfrTbph;5;9`B zTrWGcIFVW1n(7S7df_#Roym^jXmZL$6JZLw4e?Kuje{%o|~!PtuiXD=pu zWmkI(5_#U6r>;osr<2#kT06jRY-pulWAMW~wH}Q*zF}8$a$Rz7qGRn=DcIF;b+Tig zx-zk^a|3#(2{+GI)IGmn%zRdyxMSf0&o3Z6zku@m!bmN&bbYLSTcSBBEoy;QxqoSYVM z2-wiPaxp4niCVe_V_;ii8M$@pn%2(kb)=V*UamIIoztLJx3(wdH>mp7j+VB>N(NV| z6>V*;yHW@?Cz~+7tyF7bo!eKcb;-8<+mh|VUYBfb?_5cBtEg_3&Zeopu@Qz|8M~6| zYa7?9rv0hT#7?1Pgj!GO^*HVngRUWOBk7H*1#K+Rv5`EfJWXB8*lWGmYqPPMf1Ss_ zF3Z18?UC_#^Ja4DIubDzYumLwW(>I|v4t*17fg1n-?l}q>`3mc>i{8+Czl~KXp_Y6 zt*P2oiS|TCYYS_T0}-j_S&9e5SlOw3a4&wtQCDL72BFv+b+Xq z8zv?#*qHLejqQ699THLBwI$gK%i*A9J2r1#j*$lQ=gQVZ8<^6(26ESSw4y1*WVRg` zSWH+S5>Lik*m9%#*Pj+@Dcdkxs?Hrho zFV&pf^;RNU(fZbH+uusl5Hd}jv5tXBr6s`6thL6JG;9e;!(anN^O?VSa{{b*>z>xQ z5OurIU?3u6sltfCq_RY+Yug6LbZ*~yWwIWPuQRbG(YYP*?TOA*XRJLQ>tNL;yu2`A zB|5goT6DO1|E>f^fuxLM9=k4eWmj8U_mQYLF|N_KT1`T9gk6KLO3#`Rq5-omUMLPok^!`jQEcVE{TW!FKqNB0BrL8N4X;`h6&6ywMsz18~sB1&#X-EA*P-0f> z+y$=$n6UsYwI}OEomtEFuJ#=a>P?Ew&++6=iBAc{Qfs$jW@_r%(juEw3AD!(`*4-k zM91hE+-nR?UAuNAJ36ICF;ALdT(7Z(p;r!E4@j^cM=RSB*TH#QB-^vRgsdV0 zy1W)p>vbE6kxs7HANo`YJF9-d{^w4zCF21U{O=K{Cy(Mpu47T|l&0u5u2phNDieX& zz{$O#BepkSstGn@C!|&;J62$phBL7Z#C2DzU~{Z}yQ;%VaJ$0V0c1+hOfa&#l7KXK zOfn3@PG0Mih^uQ6WZts5WPM!I8V9wPC|2uzhic<_ly1uCg4@;VSgNxjwtwx`H4Lt7 z?Z^ouD%IGo)S0n79RwCa7eco-`q9P5!Q2IGhfi;@1PW-Q}!Z1r$1 zm`pao%r@=+I0y{-NYf$fd})){#`dn0T3(OCE7c(&dZqTV+X5}TK7mCQc8oGcijo9c zB38u;ZBH(e3iBhvhR{~4993v2tvkK`D+_FNV~&1e2?;J_(6w+VAkz;QPRcCautk=} zsK?7>66J31=i{JrSxx%*YjtZU=6Gz7Fx+Pw?jTVzByiC@Xo7(;A}?wdE*LbyAW>cp zLnIie%H%M2;gC7>i}G^l$2GkbIrNKZOyy`c8Op|C+n^rv`Ce9oiPBfOlG+xKNzGZC+NICj)Ky*R znjP)v1k#!tuzi>1mCzg7aU6Q3Yy*T5n26Z>0!Jwd~<;;n*lhYHv(g)t20X z9o>69rnjoor?QeICKs&2c@(RMko5^1AnCBDBEUfc>|HR~AOmsZx@1ZR8rQDa*Mb3B zBI@9k?YPC!+T!!DGWKTWMBL|MO2Xo&y>o3>=i05@l>2d_KD(>pVnWZ1zJy6F1D4Ot zNr!AjhaW3j!nW2pj@I<5)sK=sIpq;s7%7!y^_Wxwndg@h{whgn-erHhU&H@ zSxMI=Iy7-D<`J~*_9X5Zk%=?^ox9|?LpG|b6CJyB6Tk+4w`o75#ix=O4SjVYwu>ZZ zC0RRlsGYO`kyy&Y6s0R_c~@&&JkcTj61-+CfjzPjtB{?sPAuu=;Hm?i1P7`zGwYIi z>2kFw?0V&1orzq!taJ0`EjkBvc{0`6oV*gf7u&M69ir0SWtd;tb4Kh=3>1%u!s6VcdQF497x)btdP~kCvPTtU}>&0Jt@aPr7 zs}h}t6ff%&QSTsJ;b;eoM$`_fl)lGkLqZnfs*Sh{_fuqDhxUa-aMePTGr<%>=I$5P zHGc8TO|0wzc&!n`PJ5}>={deH!x1?x$OyBzjbuq%<0)3PkhQ70SPEM0>#W~$QXsI^p;+|`um*fUtP>DmM0%~_P03iVF0 z)~ruGuckU$YO|yN8Z7m3YLyBI>603aRg2)#VQpzh=bJ8m*h9ca9X>Cs_S^CYNmp!3M zd3RR_a^?qQ^m;MC@NUTlI3hB4VSu4;Vg?v`ww05@08`ci`r8Eoraq7lFtB>V;d+44 zfc2X6iU3Pi3xQz2bGtxHlhj@yEZ+cFyR{!v&OQP%W})Mq>xqN87tIyHrYykFM6!qS0L{+6pzVxjBzr% z%F|=^<+u-~M@-zamGd#mb2%#~qnhR2jL`eNb`%J0iYI{qPJ-KKMrJF3y1dFzF-*)h+JcM$x7D$PH5nMWHYtz3+r``E+3W(h*>kh(9}y^ouffkc zDDGz;KN)&OJf$sB~?I*NwS?Kr_MFzH}&$!oJm`I&>7)bNWc%yD^I6w>_&8G!l>B0Cf zLjWefWYUa~R8iLbhPa)8pl*JRp<@iLzdF7CUMGI~N;rm5<5^|49&uX$_GF_hZ{@7lozcRU(Lz7(b z-A;V_aGy4cckmRx{}xZ|Q@o|awU62Cfhi{AB89=iMv9;Vn2X75PR2nsC%Ll2RaQuv zj>*kT)r@bPQc$i)&mD=-*f|?pvrD=9j{UnjliTo3-0eD%x%o>C-U4W4Y-elRew>gZn{699dG}de-r2d!&|YsaWz$CDD+8UPLfpyIR1`z@jg4D%$b5lIhqTi* z{a*RL{-lj+u9|~iy4R}p_#HdePx!4CPMbihOIG05R9*O0)jIs@ssnNO4hurN@QW_E z0N84dD-IY^p|d|Ohqp>`0>YiMN(7HuP?rYwhz zTk#KH{K8jOlla#JD`WU|SesIH^$2$%Pqb`YQ@AdN4)ppSBYAv`c@T>hU zrWRdu@N@9X5yEdm@#{3)VgpY~jp-eE)CaVP_d1cX19}qpb>NktX~CkQ(~C!fI;3o( zIf?XY(Q1UmyTW-J_Fl3Y>GvWnP7YZr+<}0Op-a61HM)!PYS9{`*oUVfi1)g{8$90u zK3Z`)>DI9I_<5;Cx=l&F>_m%9B7dBL(E27=BUXy{F-RgN1|R9xH}Z7XAhpz;mu^Zh zKizWVNe?*Lg?_cD8LeFWl50sL>SQ~(T2mdg>3*;U7D{VUQ%t(Xto8NqrnI4yQqu>< zibmZIw?c|Nuj*Q85=;8m;C0M7sZ^0XeL~lfDw6W-V*aYA1wPX4T}_hKZu+S7l2)XM zQ-dlIdrhy=8YE^P><^9s(pyDi*4O8Yl<1W_rT^&uK0vNq+HOwDlAvBy(gr=Ib*qd@ zT=gDx0e%#EF&?|oh3poq`9Mv#;02kB1N;_`7W3s*pC`Yahr#D{Z>dK(jk~$N@Y~hzvmCiL zoZ0&LW1By6ec{)~@3S1aHk{e|`2Wg0`1>r!>DGsCGxz};{>}Y=X+9s?hG4sDQNyj< zht}cukFz}w4sAoQ9C{ZN$Gp51K7XfWI@@FL+b>gaC1_GhS^Mv_Ox$oSPs^OW9m>!) ztzPJN(_`lP`3(cJ7wgnugWc1{z9AC*j7 z8SYf%%#2EB*N+2jJkx$0`KUM&pPrdf@$C9^pp9qKrz0JeN8;TxGb*25?+&!_%zJmF zv%*MxdS+&Yv+L7=HlAId4mT_1u6O-4-oO$6bk5Muj33Xojk)@VUa|CFr3Bk!u8!gS zc&6)mNf$Qf#ymoq~ zY#gaiPiKrBXye&!r>CgYUtVu){oG^mGmE; zcXc^}HlBI!j&!CUiBAXG`-kV#fg}Fe_37!1_ycYH{rb_Yp#1wGr`HC3JtO@#=uqGB z)bs1vw8D(zewpL=M%F^Lq~AR^(+?83Q#$fH@wxRUY3JqK#W%Uj8hd23@o@RS)yy$` z{v$uJ7>O?i&Jb_M7eQOz?&v?9hu&(WdMgjT-BEKmTi&X-za3lpk2Zb}G-p2Vv=51% zv(rmW9~fy5^uLi1EK_dll5fkrRSVR5hANY3f%2{M7QDpLUqKANA`N=pwA^>1!{|GG z9g8uxXzNd32VQ7$nmWu_;n#?+ski4-<9}%*zW*g;{L_N=Y0BAx(R=O?25ouZ zZzO`bm|sZ@Hy7v@R5L)+Ta~Q_zs?A*LVZi-apt**vE~;Sx`pbPg@eW{!Y?zly}4-y zdU`&7#bH|VBD8FuHf?n)H0fV_$m!pbfJ`jFk9qltOv3xchofVp>TYRvS+VeNk3Y>PmbkEyJ(dfwdvOxe3lF{%MP;#~NB<#yOp{XkXxYM$_UM zvDi;FuyyB_(D+AI9i|LI$FgP6)&^^DVYcnGptPoDgf?S?&_=V+rdFkI`Z9~NYarq4 z7AoeGj#GAV2B; zau3|mn4YG6>E}0?RY94dRxTqc_eiWbv%VQgjw6wIXYFPrIgCW+%=%^|HTKTRJ(3)L z|79B5s^5R_JDnUy(o)`8y^SP?Gh1&X$#H0zk$Tar$>iKa&(&t_A|qUITd&uyN!4#~A?7tCNBVnfv(iYw zGfQ%2N#DY)-io5XHzh2&k$=yHtrxQ}|W^|7m*QF2tXC=Vvv@-rkg5_L?St$x)ALvbS82^nzz{TL}}=|1gSC8zL)@7IUag5UD|6Qcxc+2kf6lRANXrLSpS5;ErtLK`1S zZpQ0E&*yGa*RAy9;5cgPP};XSlMs4Iwms>PnZKm31Zi#mJft*&B}-*zZNqVN=T13I>wipi<0ZS7lQI-{I!qpjSm*WMw7SD#%`f?+Y$ZpF*@gE z%OiY0Uo%pP?0o3=Eu9}oVb%m9wIGn&f}9i=1@e}Xn!H7`Pn)@0&N6)a{Ch)ku3`Kw zw5d_K4{Cax*s;Xx;hHwBN%(&1C8#5lb1Yy{EZ}Xkq8B}Wtqbkz*%C-=#s-m>Q(U8e zOTepUG!U5l<1ywJv@LYq2}InkH*+o|wPT?*~%H#45BxaVivfzYOn`zvw1DmQybImPyA zzYY2O5|Q_7Qtl5JokE*-CUs{{aAnOgC#zMjKeUI0Hf?1K;KctzSl|I^=*mQ35w|DNAs&$BXv1!q$U>6+9rW+oT@aCZgF$RxAu0@RVt zRcL>eAiYu7p-9OHWadE$>2m8BGdJry48GJNua}6_B796Pa$muhlCt_Sru|78e`O-2 z(fwHJN7}MZA$4VDWTAD>k~PBc_aaR0BBy(-q#6DWgw9b`2gWNx_itapI}>vdYwR>5 zgI@EP*+YkXskz?BsQJb+Ic+c{lQGYXVj^YM5SrGlRMVzb#9yXe$a>B9mzkkOeyDpN z{@p*R5wn7j6lPQwy8k-P*dZR8pRH>NncVf7$*+g4C}FVANgpyJx6oTSQUu2eeYOz1 zL*}n6^m<$NH*!D4?1gk)=)R?CS)rT$Blnz4&FXswTBbi=kLu#FTzONn{(Msp{rRR& za``fg2hX=m+cr9hoyu2NLC7i)y+^P8_H7Y^QK?rj<^yN z?4#0hb&e8aYE)X8zxy#OXXy=os}kBDIVI$eT{21=t!Aa6Q~URnO)EEYa(1Zcffk#x zh>b={Xn)TuA%9d6>rD?F-exn}i?r1fB%{e=I`5YR*br34p#%FWc_pOKQaYNlj{L9 zvx#N7V^II^$p%YmTJgYqgE%x8KGRl)(=2V*Z=<coY96fVKnV^4zb7HU!4pmRVb~T*6MwhnNSS21CY{ewLFgXri!rW2~?MvgY zfpu%<3W>>Wb-CYL3dWi7Ew?l>3l3Ep)3yheCg?%qC9%bCrTs^}q3tqh2Ii961N=O5 z`)uyoCwImP`pL{NVrOt)AuHXXtuq=1v(B`L+}>$Y$S9t>dhlynRz<Y$?RyX zlaq_!%)KPX@4;RteM6U9?n{_)R_=nB^ImD?{#`Ml{h2~SrrdHT!^~Ae8(rc}e+H3~ z87ZOtekyl4%;+k#-_K{f4!LdEoJ!@sp)f42c{j#NENi8C19I>ejx41)PT^Y z)e3ETsnCAEmQlvfBY0m&yy}-g*Ic0(8hyO zF24mx$@~~OU)Oamd{h5&qUP`GBxHJ#(0)CMXZ+m#Z;1=vFPnsXd*%GoYeN|}x9qm)y%RxyZS)Z<(A*nHZ@zpZ0T< z-xK&LWE?h9Qfof#k5y6^#(FtT@k=ZrlcUhSEfO-C`?ov)JM*%G4Qi8Do@fiC&Vn)W zO)V26r_QDX(jJ1XD;OhliAfV2<7Cd(`*3qtLt23uLG&GAZHK<|tG%LW-7n+}+I+i1 zX!C6dsdKq+B)JOh-+vZA8J$Aw-Yzn7|5KMnhy2uXp6|z)yG0`9-&qt|*NvXVWYr<} zhQtEh54Ngl$|~839Ct!iURI+jku3EgnE=Bu{zCkmM$sRJpuND)>?)RV1(G5g+VV zD%OOunOA1@FOj?eNBkM1XT%2aa)SBlS5AoqhFT21t`Dg>NteQFxm3%U%R%nFp6xtj zEq1o^kna`@n#VN_th4^FCmLA$(vB+G_T|M)LhJgk^lB>jdLq=pI9XQ?eC?6iS&tf( z*L>+#reB66I#ST6+o#NM(hAzpT57><27f=U(i)|=Z3ErF6!Lm2>5=lHu{LleR`Qfq z9!FYhtnLHmrAyKZ(E_K-tFh!;Ng{bQuDW-v1ZDa)q|VcQa>)2`JCIsl>(+ln@cZk4 zIA<#Qy7t?p@ZVhNKhCA-ojPalRd8da3}S1iYD9^|lX%TkN$|yIYVXw3xCQJASR%t<{Vnl@sRjSeHXTxJhcTcg-wY;nCU6oEA(y4fP z&dSpvUY@h^b%>YetU?_s%!j^4tGv5eh$)5;&PKx_A)KfYjvHdTA=->E2@&39I3$GA zX*eVrtC-v%)(B-G*!D4 z))k`ZDr-szh{pGI(4|vCZXuM4!%D+tmVK@&wb7U%gCf|aVv>^=c9B?0;()eCr|*YP zP-XX*=7*gr4hRSBe2N48Vz-3L!mc*Pvk3`oYm}8=hJmZRy9W09W^0avrZB}p)`Ccx7 z$6h5LR#hNRl%}*aUpZP&9&Cn+0+c#`iug5zywXpgw59k%5|s1_)KnOs0(^?bghv+- z__OnhrGbE75Dw*!P9Fn>EXvbwf+z}yJyvls+*e#2MqP^vREr>-Qd|txAvUJ}CB7!u zT~H8qMt7Hw?jDQEL$8>S4NJ4i%LAanD66ng8gTcEC|Y3%VB6vf>s;GDSL!hzJ&mqW zc_=n~mtPr@#%zb!BtM1*jsFG8Mxz#rJxU0)_IwFTYnQOJ>W?A6k`i{rkCli4CCIQu zD7yrO$P*iA7%AyNg~BS7_ET6`C@BP7SGZvbx&p-r(ml3NMPY#gfg(v*R8%B`$aE)! zKlp3%_z7jUbFTD;A4qQifk>2Cs=v?LCAF{mf5xzH7T-1qBEd6i_0c zSfFFXQH5}t4x#i26%|pUkXRIE4?0(R{CVAPa+HA1+3-LJZMH&{z-yjJK6(T5Lt}#; zv^XhGF*IPzIM9Q!11%T4LwfsLDcV3nhgm z=uw_{8Aq#qiLmAs=t~hUzFKxf84J-HUG(tL-7C&jQ$q0O6p-b&mSBpybqu`2IrUYT zy26%O7CcT{!q6j&#EjvX>6z#?En5bX?iC!xMt6S*L*L}dQznOHR2|)27Yf@`^7F%R zGcuoyF_(pe>DH8dGi-)Rw4V#Jqk5=_qZ;cqRDcm6OX<26UZLh?l@x0w`H0eOMuZBo z35zr}J{&e)@Z|MH)*`o#haXt@@hE(GrGsk4=pE7$W#Uzg-qJv%3OzEwE%dozpDggn zB55mLIrFj@gtjXdNb4-SyR z1=^xOg90&Nv_^rz4h+;S95iW?HYt)KflHtdB~ZovzH{%)E=8%4@)V$5?#?~;+;h)8 z_wSr@&&<$(WM#m9YKKflwC5}r+R9t7-_Ut5WH75xWSvvATTE%&G8w1_EPF8?ER&iR z%ro>iG%&uW1T_ammLrp#FtMQT$%L+9EC=lhFo#+g+(e;s2C`@R)6oB``YWEw8Z@lV zLi596SSzHH5rqcWrqmI|+*?^2g!7_`fnSs6S5|ehmK}`8r5D>`{n>7_P@US&pc@tG zPqNUNm;O}cdJ2Ohh6n^M^CkFS0l-~coZT}CYcszcqAE<~agc$`C` zYP2a360zc-!@Q7fRm-giKpZ!aCJN2Sc(i$3ma-nCMSF_0tZQkN~j`m zK^S5YMHYc24zk$z7!Nc-&y(5;*f^7e;*ZkX)6!sJLDkdJ!DXtU0!Fb@7Y7Q5kT_)! zFC11znD7(_CNVf8sZ3}BwYotO^&Z?6y-evpQl5)w0jc;VOuvPEUm7ax>JCcEhHpU` zOOBiEmNaz{3qCyxOF$i%ji_lYUxKaa+!iku3zx1AG}bmNW5xV5`8Kwg${9-~1 z;s0gr_;8%);aF4)=uMF5r|3ZEOTsXp%l2llm-1NnB6~k%9=f_q$RI%oVL-rO*vjW% zYK0FQ(Zr(>v4IS+%IosIQMraR_UQ<#A!^mQIIH}fi6?q<4;5!eexzj*H9JMS@ zUrOoq`Zmv2a7q=NPCD>Io%e`IrGSA~D46$&5u-HJ`8Hwr>k8f-52iz%@5%K)0GwLO}Sp@>b#yEjm5Yq2e(;RD?rH74Ug|H>j~l#&})PcCqV)ODGE-POyS}T7rv)l@tdU3`nxBXhMTs-Oc^;)Y{^BS!P*~Lu;fnQr_2hJ|L z;RLOq)TosF$}an??FF}1{;ab+>s@df z2g~LC3uAj07t59LN~N-I>?77}Y;fj6tqD%G#ag)(fF1PG)?_S|jHia`_+5;r3L}XW z)E6&5+UX?bTdAz2VwhioK;Q#qfwMC%2xBNUR8L}6U^JD= zLq)`J5`ZAKV*P*~A*2-|LaYg9j!M;@vPBZWnlv#I4@(?O?#O@oGb5v~X*6;}Q{BQeU?tbCRs z1H_5&P08s462%Z1lF$(&DGa6L8Q{QahLmr@8wY2^IrEI2A&P>juz1A5S?9+XL?-YJ z3h=zQL6RTK3{#^I%bC6xgP5qU_m-~rmiFgyzDK`A>*CBUx->H&&Naqo4Zl?xwKWJM zz?~3S1px9yf|U@K0T&$870%!UaS~TJW)tl1N53)fcLsBV;Yk4g8aXqS8O)KY(}yqT5)KHXCK;XJ{PMmb^<2_~Sr4NLWTcT1qYQDnIKuJhsjFtX95dtyzZrZ8@u=~R)z8`*8P(1br;8&T7M>9- zo7D#!9=2I5(H)|~z>YzoiJUZ%BRdU7>~e;O#CO*7=tZH?@CXg{i5LwL=7cYZ0qpLr z$$`QM3rt`lr{W=47-7Jbp^bf;uzaz+_lawq9K=ooJ|)#*;8@*+lUUt=g%P1*Km=hL zO+{UVm;$K`XsEJ6mDN-TcZ5_1ER0}47|J_nabeRX284DE#7U-2(?|mmiRm^-0};vN zkES#bkr-oxG*Bi7MW>O_i=e<7G!zD6HLM+jG!T*W%yk0>(gVgFhFvF}ld;K3uXDQB zCaA-)F<^HBCPn4lMvw_Cu(1FXMxZnX06=v!kv!}(^GqZU&BQzt$!B$*iR9Bd&qVTl zI?qJ%{W{O2Fk%+LWVi?*JQ-v6#w9I`7z~C$Fqm|M!IlvWCfH!o29u63eFoDPVW7>V zRzIg-APkj(uxk4?4#QCx!CX;>p0Q1%p{+@<=b*#+3|Eu^&ARIoDl|zdIK3g20S#5Z zP(ch*A-Wb)84v>FRKXaAIM}CX*WlyP&9kk{78qxoMhV9Vvq>gc_Y2^|Te{vH zZ|Tt}fq@2qnbl0@bbXCJgA==$BLWDpq~rz!?1kMILby=@$!I+J+l1R0A$*Vg8l^zI zfLF$~An191dCx=Yo4RX{!XyF~quk3+3wNHkLU_9B(}Tk36uUPM4=XkZ@0LGo5)H9q zXsDuzfkeEPV@W$LkeFm)z&jgcP~}e;5Sopkxd`gAuWI(yNS0HEiHoW(3NbTGAcCvA z+=RnzXqupD3R6;RD2O1Iq7Gyw6lh*e&8r!9qGK6etQSPQG(?<{fz=^HAQL~&r9{Sv z>*OC7$61U0L|-7wMrKaL-`86sEqk#LImATI$L7Z2$*}Xa<@q_UM-_2 zB;l>bH|d$7Stx)3Bm;1aB^`h=gdYWzsRO#Crel%>ouoXQ@KlESOj5v0%40)L5~kB~NcgtVoL z(d^(ZhKiX`e~fn@$eiIVwu88o$!#5sCFCZYj!|J)NEe2ww%=WfanQG9dx)MKj3?Kz z2+MFt0N9OcZHo;J;@JQh%P2I&JA8McbR$;&F`O#yS)_=C9Jn7&hWPy*#xr=@VTZ~kcVH!+ z0+bQR;uTw+*EPY+%N55vY9`RdvO6N}B*<%Bge8a@5n^Q(71+!c{F3;k@XIE4;Mtpu zr5GVnSe6JI%*G!1oL_1l_Zrie%TAM_nAxiDz1XrqC!qy3VX2Q6k5A9egdw0X0(1!> zAaKZUe%>$Dofkd-!c?u*bW6*}kyQmtWs)4(#(S4Rm%#Dps zDGE7o+G%>NTHyK1XMFb))gWlL4(#5&R12!@g<{#O@AgET1xmA9S4*RlPD6qx=zpmQZAT{j{FqWtS!&0<>tN+Mr68gnC-rA6HEpO} z*C}&nwTg$m5bkaAuOrB-SnDSH*{1?e>ZjXJZ2x1nVUT5^_XFjp9 zv34V<)t#`-87H8aT2!S@PEPUr-mTJC{J(n@Q>pL|R+Ksb;SWsXDbqHd@jfX}yYfli zY2=!C?v>Bg>Syoyyzexgf912~EHTf>g2nj8>c{awZ~$`6c4M_)M>Xr2W9?R8x0+75 zwz$mIU#r-)#-iuf<+g(j$ZnQ!N29R>JhlNghv@yHwT-L8Zu;J(TE(f@buz+^!G7S@ z!(NaN;^M#j^RvkaYvyP0@`qPn|JTHyyngHLKRx!n^k4k(w;uc2>*v1q*M}zm`Rn^% z?fb_c-u$=kesliD=Ewe~^09BE z7)|KitlvJFLU;IXfZnV#7+;FZ`3Mw8pU>Uv=lm}`Ox4es3Ds3^q3V|2R`t3%3hq8; z!BKxj-r=h{>qX*2_f?SS1u_Y-*1rbyUGfgAz7X}~FjfgySWB&eVEaY_^3`jVudGs` z<*^IwdFiu{<+FZre^W&8)D93?yJ%q-+KY?uooleoo@ck}CD#RHm%T<%GMcJV3Q9%m z*UBE0a-^S@VA5e*pvs`BpxvB{?UK|SEm{*tO0DXoyX3);R_jl+?88EA9B?=TxRKj{ zu4}Z>nD3x{n0}{d?Oa#Su6S?}8eU*~BH}tGMeE6fSWb`;KcP>L)co|In>bjPO0AQR;%4?dVV0z5#65uo$5slrcgaj zUas!Ew;0+IayFCbmi#4*<_J3-jbTmuH8#6D%n}fDI7)WeEwx&PJVZ8Nr7*jTB~Huc zdH9Vz!}q(6?}c^=%0NA``H#M$tYas!rtt3ymD>DhOl{_RH6KF5_&tH2hcd6Hj3j)B zp!ainW@_er|NGC4T=|vH{^4g{+w@y6e;@v!QoE~O-P!H88x6-r{8Mx8@85d^Qih-R3EN?A zefo_aI;GCR$)9rFW7s!Jyd%dcR$Ogvl=|?K;Bt3Y*Rz9bMuHJMNwK~_ZoVf4=7It?W_gBO2JKtY~EdR#pZn4hmFKKL13!Wdj-ym}}p z@${$ofhh%U{bveU3tXx8o`+iHi&xY`i%_`yY?oSm#fr+OB`U1f$x`ai5|_c$f=pe9 zY$K;xq2Vj-`j0PeV+`QhZ9!ey?>hcy0{N1j5|@s;kZp!9fw7$Ckv5aBgYhLWz92~1 z%Ibnx@dFCCOAWuK$h?dZ;!BNin(;Y-9@Nw&=^hfV@t<#eToO}N37ZVB=S;A`V|KzP%~A)dC5)Zu(Er$^#mZ9FOcKZ&{= z;WoxJ=#dKRvZvoi)DYxZPkVRoyM2EOa)ff~*Y?7(cvi-buawcf=gYM$x3MBQL*0?= c^6HKwy8FxZ8H}kMB>D+LC;$KXzc&K^11RyU1poj5 literal 120320 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 HzZZcIXI(gL diff --git a/X10D.xml b/X10D.xml index cce5765..df34386 100644 --- a/X10D.xml +++ b/X10D.xml @@ -889,6 +889,14 @@ The unit circle. That is, a circle whose center point is (0, 0) and whose radius is 1. + + + Initializes a new instance of the struct. + + The X coordinate of the center point. + The Y coordinate of the center point. + The radius of the circle. + Initializes a new instance of the struct. @@ -1101,6 +1109,14 @@ The unit circle. That is, a circle whose center point is (0, 0) and whose radius is 1. + + + Initializes a new instance of the struct. + + The X coordinate of the center point. + The Y coordinate of the center point. + The radius of the circle. + Initializes a new instance of the struct. @@ -1211,9 +1227,23 @@ ; otherwise, . + + + Explicitly converts a to a . + + The circle to convert. + The converted circle. + + + + Implicitly converts a to a . + + The circle to convert. + The converted circle. + - Compares this instance to another . + Compares this instance to another . The other object. @@ -1369,9 +1399,496 @@ component is . + + + Represents a cuboid in 3D space, which uses single-precision floating-point numbers for its coordinates. + + + + + The empty cuboid. That is, a cuboid whose size is zero. + + + + + A cube. That is, a cuboid whose size is the same in all three dimensions. + + A cube with the size (1, 1, 1). + + + + Initializes a new instance of the struct. + + The center X coordinate. + The center Y coordinate. + The center Z coordinate. + The width. + The height. + The depth. + + + + Initializes a new instance of the struct. + + The center X coordinate. + The center Y coordinate. + The center Z coordinate. + The width. + The height. + The depth. + The yaw. + The pitch. + The roll. + + + + Initializes a new instance of the struct. + + The center point. + The size. + + + + Initializes a new instance of the struct. + + The center point. + The size. + The orientation of the cuboid. + + + + Initializes a new instance of the struct. + + The center point. + The size. + The orientation of the cuboid. + + + + Gets the center point of the cuboid. + + The center point. + + + + Gets the orientation of this cuboid. + + The orientation. + + + + Gets the size of the cuboid. + + The size. + + + + Gets the front-top-left corner of the box, in local space. + + The front-top-left corner. + + + + Gets the front-top-right corner of the box, in local space. + + The front-top-right corner. + + + + Gets the front-bottom-left corner of the box, in local space. + + The front-bottom-left corner. + + + + Gets the front-bottom-right corner of the box, in local space. + + The front-bottom-right corner. + + + + Gets the back-top-left corner of the box, in local space. + + The back-top-left corner. + + + + Gets the back-top-right corner of the box, in local space. + + The back-top-right corner. + + + + Gets the back-bottom-left corner of the box, in local space. + + The back-bottom-left corner. + + + + Gets the back-bottom-right corner of the box, in local space. + + The back-bottom-right corner. + + + + Gets the front-top-left corner of the box, in world space. + + The front-top-left corner. + + + + Gets the front-top-right corner of the box, in world space. + + The front-top-right corner. + + + + Gets the front-bottom-left corner of the box, in world space. + + The front-bottom-left corner. + + + + Gets the front-bottom-right corner of the box, in world space. + + The front-bottom-right corner. + + + + Gets the back-bottom-left corner of the box, in world space. + + The back-bottom-left corner. + + + + Gets the back-bottom-right corner of the box, in world space. + + The back-bottom-right corner. + + + + Gets the back-bottom-right corner of the box, in world space. + + The back-bottom-right corner. + + + + Gets the back-bottom-right corner of the box, in world space. + + The back-bottom-right corner. + + + + Gets the volume of this cuboid. + + The volume. + + + + Returns a value indicating whether two instances of are not equal. + + The first instance. + The second instance. + + if and are considered not equal; otherwise, + . + + + + + Returns a value indicating whether two instances of are not equal. + + The first instance. + The second instance. + + if and are considered not equal; otherwise, + . + + + + + + + + Returns a value indicating whether this instance and another instance are equal. + + The instance with which to compare. + + if this instance and are considered equal; otherwise, + . + + + + + + + + Represents an ellipse that is composed of a 32-bit signed integer center point and radius. + + + + + The empty ellipse. That is, an ellipse whose center point is (0, 0) and whose two radii are 0. + + + + + The unit ellipse. That is, an ellipse whose center point is (0, 0) and whose two radii are 1. + + + + + Initializes a new instance of the struct. + + The X coordinate of the center point. + The Y coordinate of the center point. + The horizontal radius of the ellipse. + The vertical radius of the ellipse. + + + + Initializes a new instance of the struct. + + The center point of the ellipse. + The radius of the ellipse. + + + + Gets the area of the ellipse. + + The area of the ellipse, calculated as πab. + + + + Gets the center point of the ellipse. + + The center point. + + + + Gets the approximate circumference of the ellipse. + + + The approximate circumference of the ellipse, calculated as + π(a+b)(3([(a-b)²]/(a+b)²(sqrt(-3(((a-b)²)/(a+b)²)+4+10))+1). + + + + + Gets the horizontal radius of the ellipse. + + The horizontal radius. + + + + Gets the radius of the ellipse. + + The radius. + + + + Gets the vertical radius of the ellipse. + + The vertical radius. + + + + Returns a value indicating whether two instances of are equal. + + The first instance. + The second instance. + + if and are considered equal; otherwise, + . + + + + + Returns a value indicating whether two instances of are not equal. + + The first instance. + The second instance. + + if and are considered not equal; otherwise, + . + + + + + Implicitly converts a to an . + + The circle to convert. + The converted ellipse. + + + + + + + Returns a value indicating whether this instance and another instance are equal. + + The instance with which to compare. + + if this instance and are considered equal; otherwise, + . + + + + + + + + Represents an ellipse that is composed of a single-precision floating-point center point and radius. + + + + + The empty ellipse. That is, an ellipse whose center point is (0, 0) and whose two radii are 0. + + + + + The unit ellipse. That is, an ellipse whose center point is (0, 0) and whose two radii are 1. + + + + + Initializes a new instance of the struct. + + The X coordinate of the center point. + The Y coordinate of the center point. + The horizontal radius of the ellipse. + The vertical radius of the ellipse. + + + + Initializes a new instance of the struct. + + The center point of the ellipse. + The radius of the ellipse. + + + + Initializes a new instance of the struct. + + The center point of the ellipse. + The radius of the ellipse. + + + + Initializes a new instance of the struct. + + The center point of the ellipse. + The radius of the ellipse. + + + + Gets the area of the ellipse. + + The area of the ellipse, calculated as πab. + + + + Gets the center point of the ellipse. + + The center point. + + + + Gets the approximate circumference of the ellipse. + + + The approximate circumference of the ellipse, calculated as + π(a+b)(3([(a-b)²]/(a+b)²(sqrt(-3(((a-b)²)/(a+b)²)+4+10))+1). + + + + + Gets the horizontal radius of the ellipse. + + The horizontal radius. + + + + Gets the radius of the ellipse. + + The radius. + + + + Gets the vertical radius of the ellipse. + + The vertical radius. + + + + Returns a value indicating whether two instances of are equal. + + The first instance. + The second instance. + + if and are considered equal; otherwise, + . + + + + + Returns a value indicating whether two instances of are not equal. + + The first instance. + The second instance. + + if and are considered not equal; otherwise, + . + + + + + Implicitly converts a to an . + + The circle to convert. + The converted ellipse. + + + + Implicitly converts a to an . + + The circle to convert. + The converted ellipse. + + + + Implicitly converts an to an . + + The ellipse to convert. + The converted ellipse. + + + + Explicitly converts an to an . + + The ellipse to convert. + The converted ellipse. + + + + + + + Returns a value indicating whether this instance and another instance are equal. + + The instance with which to compare. + + if this instance and are considered equal; otherwise, + . + + + + + - Represents a line that is composed of 32-bit signed integer X and Y coordinates. + Represents a line in 2D space that is composed of 32-bit signed integer X and Y coordinates. @@ -1425,7 +1942,18 @@ The start point. - + + + Returns a value indicating whether two instances of are equal. + + The first instance. + The second instance. + + if and are considered equal; otherwise, + . + + + Returns a value indicating whether two instances of are not equal. @@ -1436,18 +1964,7 @@ . - - - Returns a value indicating whether two instances of are not equal. - - The first instance. - The second instance. - - if and are considered not equal; otherwise, - . - - - + Returns a value indicating whether the length of one line is less than that of another. @@ -1458,7 +1975,7 @@ ; otherwise, . - + Returns a value indicating whether the length of one line is greater than that of another. @@ -1469,7 +1986,7 @@ ; otherwise, . - + Returns a value indicating whether the length of one line is less than or equal to that of another. @@ -1480,7 +1997,7 @@ ; otherwise, . - + Returns a value indicating whether the length of one line is greater than or equal to that of another. @@ -1588,9 +2105,261 @@ + + + Represents a line in 3D space that is composed of 32-bit signed integer X, Y and Z coordinates. + + + + + The empty line. That is, a line whose start and end points are at (0, 0). + + + + + The line whose start point is at (0, 0, 0) and end point is at (1, 1, 1). + + + + + The line whose start point is at (0, 0, 0) and end point is at (1, 0, 0). + + + + + The line whose start point is at (0, 0, 0) and end point is at (0, 1, 0). + + + + + The line whose start point is at (0, 0, 0) and end point is at (0, 0, 1). + + + + + Initializes a new instance of the struct by taking the start and end points. + + The start point. + The end point. + + + + Gets the end point of the line. + + The end point. + + + + Gets the length of this line. + + The length. + + + + Gets the length of this line, squared. + + The squared length. + + + + Gets the start point of the line. + + The start point. + + + + Returns a value indicating whether two instances of are equal. + + The first instance. + The second instance. + + if and are considered equal; otherwise, + . + + + + + Returns a value indicating whether two instances of are not equal. + + The first instance. + The second instance. + + if and are considered not equal; otherwise, + . + + + + + Returns a value indicating whether the length of one line is less than that of another. + + The first instance. + The second instance. + + if the of is less than that of + ; otherwise, . + + + + + Returns a value indicating whether the length of one line is greater than that of another. + + The first instance. + The second instance. + + if the of is greater than that of + ; otherwise, . + + + + + Returns a value indicating whether the length of one line is less than or equal to that of another. + + The first instance. + The second instance. + + if the of is less than or equal to that of + ; otherwise, . + + + + + Returns a value indicating whether the length of one line is greater than or equal to that of another. + + The first instance. + The second instance. + + if the of is greater than or equal to that of + ; otherwise, . + + + + + Explicitly converts a to a . + + The line to convert. + The converted line. + + + + Explicitly converts a to a . + + The line to convert. + The converted line. + + + + Implicitly converts a to a . + + The line to convert. + The converted line. + + + + Implicitly converts a to a . + + The line to convert. + The converted line. + + + + Compares this instance to another object. + + The object with with which to compare + + A signed number indicating the relative values of this instance and . + + + + Return value + Meaning + + + + Less than zero + + The of this instance is less than that of . + + + + Zero + + This instance is equal to , or the of both this instance + and are not a number (), + , or . + + + + Greater than zero + + The of this instance is greater than that of . + + + + + + Comparison internally measures the property to avoid calls to . + is not an instance of . + + + + + Compares this instance to another . + + + + A signed number indicating the relative values of this instance and . + + + + Return value + Meaning + + + + Less than zero + + The of this instance is less than that of . + + + + Zero + + This instance is equal to , or the of both this instance + and are not a number (), + , or . + + + + Greater than zero + + The of this instance is greater than that of . + + + + + + Comparison internally measures the property to avoid calls to . + + + + + + + + Returns a value indicating whether this instance and another instance are equal. + + The instance with which to compare. + + if this instance and are considered equal; otherwise, + . + + + + + - Represents a line that is composed of single-precision floating-point X and Y coordinates. + Represents a line in 2D space that is composed of single-precision floating-point X and Y coordinates. @@ -1651,7 +2420,18 @@ The start point. - + + + Returns a value indicating whether two instances of are equal. + + The first instance. + The second instance. + + if and are considered equal; otherwise, + . + + + Returns a value indicating whether two instances of are not equal. @@ -1662,18 +2442,7 @@ . - - - Returns a value indicating whether two instances of are not equal. - - The first instance. - The second instance. - - if and are considered not equal; otherwise, - . - - - + Returns a value indicating whether the length of one line is less than that of another. @@ -1684,7 +2453,7 @@ ; otherwise, . - + Returns a value indicating whether the length of one line is greater than that of another. @@ -1695,7 +2464,7 @@ ; otherwise, . - + Returns a value indicating whether the length of one line is less than or equal to that of another. @@ -1706,7 +2475,7 @@ ; otherwise, . - + Returns a value indicating whether the length of one line is greater than or equal to that of another. @@ -1717,19 +2486,19 @@ ; otherwise, . - + Explicitly converts a to a . The line to convert. The converted line. - + Implicitly converts a to a . The line to convert. - The line polygon. + The converted line. @@ -1866,26 +2635,39 @@ The point to convert. The resulting . + + + Converts the current to a . + + The point to convert. + The resulting . + - Represents a 2D polygon composed of 32-bit signed integer points. + Represents a 2D polygon composed of 32-bit signed integer vertices. - + - The empty polygon. That is, a polygon with no points. + Initializes a new instance of the class. - Initializes a new instance of the struct by copying the specified polygon. + Initializes a new instance of the class by copying the specified polygon. - Initializes a new instance of the struct by constructing it from the specified points. + Initializes a new instance of the class by constructing it from the specified vertices. - An enumerable collection of points from which the polygon should be constructed. + An enumerable collection of vertices from which the polygon should be constructed. + + + + Gets an empty polygon. That is, a polygon with no vertices. + + An empty polygon. @@ -1893,17 +2675,19 @@ if this polygon is convex; otherwise, . - + - Gets the number of points in this polygon. + Gets the number of vertices in this polygon. - An value, representing the number of points in this polygon. + An value, representing the number of vertices in this polygon. - + - Gets a read-only view of the points in this polygon. + Gets a read-only view of the vertices in this polygon. - A of values, representing the points of this polygon. + + A of values, representing the vertices of this polygon. + @@ -1927,22 +2711,22 @@ . - + - Adds a point to this polygon. + Adds a vertex to this polygon. - The point to add. + The vertex to add. - + - Adds a collection of points to this polygon. + Adds a collection of vertices to this polygon. - An enumerable collection of points to add. - is . + An enumerable collection of vertices to add. + is . - + - Clears all points from this polygon. + Clears all vertices from this polygon. @@ -1963,31 +2747,37 @@ - Represents a 2D polygon composed of single-precision floating-point points. + Represents a 2D polygon composed of single-precision floating-vertex vertices. - + - The empty polygon. That is, a polygon with no points. + Initializes a new instance of the class. - Initializes a new instance of the struct by copying the specified polygon. + Initializes a new instance of the class by copying the specified polygon. - Initializes a new instance of the struct by constructing it from the specified points. + Initializes a new instance of the class by constructing it from the specified vertices. - An enumerable collection of points from which the polygon should be constructed. + An enumerable collection of vertices from which the polygon should be constructed. - Initializes a new instance of the struct by constructing it from the specified points. + Initializes a new instance of the class by constructing it from the specified vertices. - An enumerable collection of points from which the polygon should be constructed. - is . + An enumerable collection of vertices from which the polygon should be constructed. + is . + + + + Gets an empty polygon. That is, a polygon with no vertices. + + An empty polygon. @@ -1995,17 +2785,19 @@ if this polygon is convex; otherwise, . - + - Gets the number of points in this polygon. + Gets the number of vertices in this polygon. - An value, representing the number of points in this polygon. + An value, representing the number of vertices in this polygon. - + - Gets a read-only view of the points in this polygon. + Gets a read-only view of the vertices in this polygon. - A of values, representing the points of this polygon. + + A of values, representing the vertices of this polygon. + @@ -2043,35 +2835,35 @@ The polygon to convert. The converted polygon. - + - Adds a point to this polygon. + Adds a vertex to this polygon. - The point to add. + The vertex to add. - + - Adds a point to this polygon. + Adds a vertex to this polygon. - The point to add. + The vertex to add. - + - Adds a collection of points to this polygon. + Adds a collection of vertices to this polygon. - An enumerable collection of points to add. - is . + An enumerable collection of vertices to add. + is . - + - Adds a collection of points to this polygon. + Adds a collection of vertices to this polygon. - An enumerable collection of points to add. - is . + An enumerable collection of vertices to add. + is . - + - Clears all points from this polygon. + Clears all vertices from this polygon. @@ -2090,6 +2882,123 @@ + + + Represents a 3D polyhedron composed of single-precision floating-point points. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class by copying the specified polyhedron. + + + + + Initializes a new instance of the class by constructing it from the specified vertices. + + An enumerable collection of vertices from which the polyhedron should be constructed. + + + + Gets an empty polyhedron. That is, a polygon with no vertices. + + An empty polyhedron. + + + + Returns a value indicating whether this polyhedron is convex. + + if this polyhedron is convex; otherwise, . + + + + Gets the number of vertices in this polyhedron. + + An value, representing the number of vertices in this polyhedron. + + + + Gets a read-only view of the vertices in this polyhedron. + + + A of values, representing the vertices of this polyhedron. + + + + + Returns a value indicating whether two instances of are equal. + + The first instance. + The second instance. + + if and are considered equal; otherwise, + . + + + + + Returns a value indicating whether two instances of are not equal. + + The first instance. + The second instance. + + if and are considered not equal; otherwise, + . + + + + + Implicitly converts a to a . + + The polyhedron to convert. + The converted polyhedron. + + + + Implicitly converts a to a . + + The polyhedron to convert. + The converted polyhedron. + + + + Adds a vertex to this polyhedron. + + The vertex to add. + + + + Adds a collection of vertices to this polyhedron. + + An enumerable collection of vertices to add. + is . + + + + Clears all vertices from this polyhedron. + + + + + + + + Returns a value indicating whether this instance and another instance are equal. + + The instance with which to compare. + + if this instance and are considered equal; otherwise, + . + + + + + Extension methods for . @@ -2137,6 +3046,227 @@ The size to convert. The resulting . + + + Represents a sphere in 3D space, which uses single-precision floating-point numbers for its coordinates. + + + + + The empty sphere. That is, a sphere with a radius of zero. + + + + + The unit sphere. That is, a sphere with a radius of 1. + + + + + Initializes a new instance of the struct. + + The X coordinate of the center point. + The Y coordinate of the center point. + The Z coordinate of the center point. + The radius. + + + + Initializes a new instance of the struct. + + The center point. + The radius. + + + + Gets the center-point of the sphere. + + The center point. + + + + Gets the circumference of the sphere. + + The circumference of the sphere, calculated as 2πr. + + + + Gets the diameter of the sphere. + + The diameter. + + + + Gets the radius of the sphere. + + The radius. + + + + Gets the volume of this sphere. + + The volume. + + + + Returns a value indicating whether two instances of are equal. + + The first instance. + The second instance. + + if and are considered equal; otherwise, + . + + + + + Returns a value indicating whether two instances of are not equal. + + The first instance. + The second instance. + + if and are considered not equal; otherwise, + . + + + + + Returns a value indicating whether the radius of one circle is less than that of another. + + The first instance. + The second instance. + + if the of is less than that of + ; otherwise, . + + + + + Returns a value indicating whether the radius of one circle is greater than to that of another. + + The first instance. + The second instance. + + if the of is greater than that of + ; otherwise, . + + + + + Returns a value indicating whether the radius of one circle is less than or equal to that of another. + + The first instance. + The second instance. + + if the of is less than or equal to that of + ; otherwise, . + + + + + Returns a value indicating whether the radius of one circle is greater than or equal to that of another. + + The first instance. + The second instance. + + if the of is greater than or equal to that of + ; otherwise, . + + + + + Compares this instance to another . + + The other object. + + A signed number indicating the relative values of this instance and . + + + + Return value + Meaning + + + + Less than zero + + The of this instance is less than that of . + + + + Zero + + This instance is equal to , or the of both this instance + and are not a number (), + , or . + + + + Greater than zero + + The of this instance is greater than that of , or + is . + + + + + Comparison only takes into consideration the . + is not an instance of . + + + + Compares this instance to another . + + The other sphere. + + A signed number indicating the relative values of this instance and . + + + + Return value + Meaning + + + + Less than zero + + The of this instance is less than that of . + + + + Zero + + This instance is equal to , or the of both this instance + and are not a number (), + , or . + + + + Greater than zero + + The of this instance is greater than that of . + + + + + Comparison only takes into consideration the . + + + + + + + Returns a value indicating whether this instance and another instance are equal. + + The instance with which to compare. + + if this instance and are considered equal; otherwise, + . + + + + + Represents an enumeration of endianness values. @@ -5444,6 +6574,19 @@ is 0 or the result overflows. + + + Numeric-related extension methods for . + + + + + Rotates the specified point with the specified rotation. + + The rotation. + The point. + The rotated point. + Extension methods for . diff --git a/package.json b/package.json index 0a9eb86..02a9084 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "url": "https://oliverbooth.dev" }, "displayName": "X10D", - "version": "3.2.0-nightly.113", + "version": "3.2.0-nightly.114", "unity": "2021.2", "description": "Extension methods on crack", "keywords": ["dotnet", "extension-methods"],