From def001ea209388e6dd106c7fdf329f9a32e37188 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Sep 2022 07:16:50 +0900 Subject: [PATCH 001/414] Bump pytest from 7.1.2 to 7.1.3 in /requirements (#717) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.1.2 to 7.1.3. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.1.2...7.1.3) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6aee1a3d9e..2d5ecbc470 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,7 +3,7 @@ scipy == 1.9.1 pandas == 1.4.3 matplotlib == 3.5.3 cvxpy == 1.2.1 -pytest == 7.1.2 # For unit test +pytest == 7.1.3 # For unit test pytest-xdist == 2.5.0 # For unit test mypy == 0.971 # For unit test flake8 == 5.0.4 # For unit test From 1ff3095c14817835450d6788b9adc09b4dc4cfa2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Sep 2022 07:17:15 +0900 Subject: [PATCH 002/414] Bump pandas from 1.4.3 to 1.4.4 in /requirements (#718) Bumps [pandas](https://github.com/pandas-dev/pandas) from 1.4.3 to 1.4.4. - [Release notes](https://github.com/pandas-dev/pandas/releases) - [Changelog](https://github.com/pandas-dev/pandas/blob/main/RELEASE.md) - [Commits](https://github.com/pandas-dev/pandas/compare/v1.4.3...v1.4.4) --- updated-dependencies: - dependency-name: pandas dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2d5ecbc470..615377611b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.23.2 scipy == 1.9.1 -pandas == 1.4.3 +pandas == 1.4.4 matplotlib == 3.5.3 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test From 76b0d04a3ce61f6a1935e496ea43c809fb247097 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 11 Sep 2022 07:21:37 +0900 Subject: [PATCH 003/414] using pathlib based local module import (#722) * using pathlib based local module import * remove unused import --- .../drone_3d_trajectory_following/__init__.py | 5 ++-- ArmNavigation/n_joint_arm_3d/__init__.py | 4 +-- .../n_joint_arm_to_point_control.py | 2 +- .../rrt_star_seven_joint_arm_control.py | 13 ++++----- .../ensemble_kalman_filter.py | 5 ++-- .../extended_kalman_filter.py | 5 ++-- .../particle_filter/particle_filter.py | 4 +-- .../unscented_kalman_filter.py | 4 +-- Mapping/rectangle_fitting/__init_.py | 5 ++-- .../rectangle_fitting/rectangle_fitting.py | 5 ++-- Mapping/rectangle_fitting/simulator.py | 4 +-- .../closed_loop_rrt_star_car.py | 24 +++++---------- .../ClosedLoopRRTStar/pure_pursuit.py | 6 +++- .../DubinsPath/dubins_path_planner.py | 5 ++-- .../eta3_spline_trajectory.py | 12 +++----- .../frenet_optimal_trajectory.py | 18 ++++-------- .../grid_based_sweep_coverage_path_planner.py | 17 +++-------- PathPlanning/HybridAStar/car.py | 7 +++-- PathPlanning/HybridAStar/hybrid_a_star.py | 18 ++++-------- .../InformedRRTStar/informed_rrt_star.py | 4 +-- .../{LQRplanner.py => lqr_planner.py} | 0 PathPlanning/LQRRRTStar/lqr_rrt_star.py | 16 ++++------ ...y_generator.py => trajectory_generator.py} | 7 +++-- PathPlanning/RRT/rrt_with_pathsmoothing.py | 13 +++------ PathPlanning/RRT/rrt_with_sobol_sampler.py | 5 ++-- PathPlanning/RRTDubins/rrt_dubins.py | 29 +++++++------------ PathPlanning/RRTStar/rrt_star.py | 12 +++----- PathPlanning/RRTStarDubins/rrt_star_dubins.py | 27 ++++++----------- .../RRTStarReedsShepp/rrt_star_reeds_shepp.py | 16 +++------- .../state_lattice_planner.py | 23 +++++++-------- .../VisibilityRoadMap/visibility_road_map.py | 10 +++---- PathPlanning/VoronoiRoadMap/__init__.py | 4 --- .../VoronoiRoadMap/voronoi_road_map.py | 6 +++- .../lqr_speed_steer_control.py | 12 ++------ .../lqr_steer_control/lqr_steer_control.py | 14 +++------ ...odel_predictive_speed_and_steer_control.py | 12 ++------ .../stanley_controller/stanley_controller.py | 12 ++------ SLAM/GraphBasedSLAM/graph_based_slam.py | 4 +-- tests/test_LQR_planner.py | 2 +- 39 files changed, 144 insertions(+), 247 deletions(-) rename PathPlanning/LQRPlanner/{LQRplanner.py => lqr_planner.py} (100%) rename PathPlanning/ModelPredictiveTrajectoryGenerator/{model_predictive_trajectory_generator.py => trajectory_generator.py} (95%) diff --git a/AerialNavigation/drone_3d_trajectory_following/__init__.py b/AerialNavigation/drone_3d_trajectory_following/__init__.py index 087dab646e..2194d4c303 100644 --- a/AerialNavigation/drone_3d_trajectory_following/__init__.py +++ b/AerialNavigation/drone_3d_trajectory_following/__init__.py @@ -1,4 +1,3 @@ -import os import sys - -sys.path.append(os.path.dirname(os.path.abspath(__file__))) +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent)) diff --git a/ArmNavigation/n_joint_arm_3d/__init__.py b/ArmNavigation/n_joint_arm_3d/__init__.py index ba5dac65f6..2194d4c303 100644 --- a/ArmNavigation/n_joint_arm_3d/__init__.py +++ b/ArmNavigation/n_joint_arm_3d/__init__.py @@ -1,3 +1,3 @@ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__))) +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent)) diff --git a/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py b/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py index 36093df08d..498ef41c1f 100644 --- a/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py +++ b/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py @@ -5,11 +5,11 @@ Atsushi Sakai (@Atsushi_twi) """ -import numpy as np import sys from pathlib import Path sys.path.append(str(Path(__file__).parent.parent.parent)) +import numpy as np from ArmNavigation.n_joint_arm_to_point_control.NLinkArm import NLinkArm # Simulation parameters diff --git a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py index 0de4c7edb8..fca55184da 100755 --- a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py +++ b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py @@ -3,18 +3,15 @@ Author: Mahyar Abdeetedal (mahyaret) """ import math -import os -import sys import random import numpy as np from mpl_toolkits import mplot3d import matplotlib.pyplot as plt -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../n_joint_arm_3d/") -try: - from NLinkArm3d import NLinkArm -except ImportError: - raise +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) + +from n_joint_arm_3d.NLinkArm3d import NLinkArm show_animation = True verbose = False diff --git a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py index 1e8d1fc6d6..fc8280e7bf 100644 --- a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py +++ b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py @@ -9,10 +9,9 @@ (https://rmets.onlinelibrary.wiley.com/doi/10.1256/qj.05.135) """ - import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import math import matplotlib.pyplot as plt diff --git a/Localization/extended_kalman_filter/extended_kalman_filter.py b/Localization/extended_kalman_filter/extended_kalman_filter.py index a5dea19fd8..c2fe8e3a87 100644 --- a/Localization/extended_kalman_filter/extended_kalman_filter.py +++ b/Localization/extended_kalman_filter/extended_kalman_filter.py @@ -5,10 +5,9 @@ author: Atsushi Sakai (@Atsushi_twi) """ - import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import math import matplotlib.pyplot as plt diff --git a/Localization/particle_filter/particle_filter.py b/Localization/particle_filter/particle_filter.py index 1c45687ed1..17051623ca 100644 --- a/Localization/particle_filter/particle_filter.py +++ b/Localization/particle_filter/particle_filter.py @@ -6,8 +6,8 @@ """ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import math diff --git a/Localization/unscented_kalman_filter/unscented_kalman_filter.py b/Localization/unscented_kalman_filter/unscented_kalman_filter.py index 4f42cfd5d1..dbcdeef015 100644 --- a/Localization/unscented_kalman_filter/unscented_kalman_filter.py +++ b/Localization/unscented_kalman_filter/unscented_kalman_filter.py @@ -7,8 +7,8 @@ """ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import math diff --git a/Mapping/rectangle_fitting/__init_.py b/Mapping/rectangle_fitting/__init_.py index 087dab646e..2194d4c303 100644 --- a/Mapping/rectangle_fitting/__init_.py +++ b/Mapping/rectangle_fitting/__init_.py @@ -1,4 +1,3 @@ -import os import sys - -sys.path.append(os.path.dirname(os.path.abspath(__file__))) +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent)) diff --git a/Mapping/rectangle_fitting/rectangle_fitting.py b/Mapping/rectangle_fitting/rectangle_fitting.py index 6d3e63f0f3..124e48fe76 100644 --- a/Mapping/rectangle_fitting/rectangle_fitting.py +++ b/Mapping/rectangle_fitting/rectangle_fitting.py @@ -13,9 +13,8 @@ """ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") - +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import matplotlib.pyplot as plt import numpy as np diff --git a/Mapping/rectangle_fitting/simulator.py b/Mapping/rectangle_fitting/simulator.py index e75738c3b1..faca2cb79e 100644 --- a/Mapping/rectangle_fitting/simulator.py +++ b/Mapping/rectangle_fitting/simulator.py @@ -6,8 +6,8 @@ """ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import numpy as np import matplotlib.pyplot as plt diff --git a/PathPlanning/ClosedLoopRRTStar/closed_loop_rrt_star_car.py b/PathPlanning/ClosedLoopRRTStar/closed_loop_rrt_star_car.py index dc9a575694..01ab8349a9 100644 --- a/PathPlanning/ClosedLoopRRTStar/closed_loop_rrt_star_car.py +++ b/PathPlanning/ClosedLoopRRTStar/closed_loop_rrt_star_car.py @@ -5,27 +5,17 @@ author: AtsushiSakai(@Atsushi_twi) """ -import os -import sys - import matplotlib.pyplot as plt import numpy as np -sys.path.append(os.path.dirname(os.path.abspath(__file__))) - -import pure_pursuit -import unicycle_model - -sys.path.append(os.path.dirname( - os.path.abspath(__file__)) + "/../ReedsSheppPath/") -sys.path.append(os.path.dirname( - os.path.abspath(__file__)) + "/../RRTStarReedsShepp/") +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -try: - import reeds_shepp_path_planning - from rrt_star_reeds_shepp import RRTStarReedsShepp -except ImportError: - raise +from ClosedLoopRRTStar import pure_pursuit +from ClosedLoopRRTStar import unicycle_model +from ReedsSheppPath import reeds_shepp_path_planning +from RRTStarReedsShepp.rrt_star_reeds_shepp import RRTStarReedsShepp show_animation = True diff --git a/PathPlanning/ClosedLoopRRTStar/pure_pursuit.py b/PathPlanning/ClosedLoopRRTStar/pure_pursuit.py index ca763f0d4f..982ebeca06 100644 --- a/PathPlanning/ClosedLoopRRTStar/pure_pursuit.py +++ b/PathPlanning/ClosedLoopRRTStar/pure_pursuit.py @@ -10,7 +10,11 @@ import matplotlib.pyplot as plt import numpy as np -import unicycle_model +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) + +from ClosedLoopRRTStar import unicycle_model Kp = 2.0 # speed propotional gain Lf = 0.5 # look-ahead distance diff --git a/PathPlanning/DubinsPath/dubins_path_planner.py b/PathPlanning/DubinsPath/dubins_path_planner.py index 4d4ee07291..a7e8a100cc 100644 --- a/PathPlanning/DubinsPath/dubins_path_planner.py +++ b/PathPlanning/DubinsPath/dubins_path_planner.py @@ -6,9 +6,8 @@ """ import sys -import os - -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from math import sin, cos, atan2, sqrt, acos, pi, hypot import numpy as np diff --git a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py index bd211046c7..d034cb8a32 100644 --- a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py +++ b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py @@ -16,14 +16,10 @@ import matplotlib.pyplot as plt from matplotlib.collections import LineCollection import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../Eta3SplinePath") - -try: - from eta3_spline_path import Eta3Path, Eta3PathSegment -except ImportError: - raise +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) + +from Eta3SplinePath.eta3_spline_path import Eta3Path, Eta3PathSegment show_animation = True diff --git a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py index ef20af22f0..b7d1b8e642 100644 --- a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py +++ b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py @@ -19,18 +19,12 @@ import copy import math import sys -import os - -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../QuinticPolynomialsPlanner/") -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../CubicSpline/") - -try: - from quintic_polynomials_planner import QuinticPolynomial - import cubic_spline_planner -except ImportError: - raise +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) + +from QuinticPolynomialsPlanner.quintic_polynomials_planner import \ + QuinticPolynomial +from CubicSpline import cubic_spline_planner SIM_LOOP = 500 diff --git a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py index 2f4d32b187..31dc917566 100644 --- a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py +++ b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py @@ -4,25 +4,16 @@ author: Atsushi Sakai """ -import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") - import math from enum import IntEnum - import numpy as np import matplotlib.pyplot as plt +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from utils.angle import rot_mat_2d - -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../../Mapping/") - -try: - from grid_map_lib.grid_map_lib import GridMap -except ImportError: - raise +from Mapping.grid_map_lib.grid_map_lib import GridMap do_animation = True diff --git a/PathPlanning/HybridAStar/car.py b/PathPlanning/HybridAStar/car.py index 870dd18535..0367ab2775 100644 --- a/PathPlanning/HybridAStar/car.py +++ b/PathPlanning/HybridAStar/car.py @@ -7,8 +7,9 @@ """ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +root_dir = pathlib.Path(__file__).parent.parent.parent +sys.path.append(str(root_dir)) from math import cos, sin, tan, pi @@ -76,7 +77,7 @@ def plot_arrow(x, y, yaw, length=1.0, width=0.5, fc="r", ec="k"): def plot_car(x, y, yaw): car_color = '-k' c, s = cos(yaw), sin(yaw) - rot = Rot.from_euler('z', -yaw).as_matrix()[0:2, 0:2] + rot = rot_mat_2d(-yaw) car_outline_x, car_outline_y = [], [] for rx, ry in zip(VRX, VRY): converted_xy = np.stack([rx, ry]).T @ rot diff --git a/PathPlanning/HybridAStar/hybrid_a_star.py b/PathPlanning/HybridAStar/hybrid_a_star.py index 4ef0c1dd21..b87fe706c2 100644 --- a/PathPlanning/HybridAStar/hybrid_a_star.py +++ b/PathPlanning/HybridAStar/hybrid_a_star.py @@ -8,22 +8,16 @@ import heapq import math -import os -import sys - import matplotlib.pyplot as plt import numpy as np from scipy.spatial import cKDTree +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) - + "/../ReedsSheppPath") -try: - from dynamic_programming_heuristic import calc_distance_heuristic - import reeds_shepp_path_planning as rs - from car import move, check_car_collision, MAX_STEER, WB, plot_car,\ - BUBBLE_R -except Exception: - raise +from dynamic_programming_heuristic import calc_distance_heuristic +from ReedsSheppPath import reeds_shepp_path_planning as rs +from car import move, check_car_collision, MAX_STEER, WB, plot_car, BUBBLE_R XY_GRID_RESOLUTION = 2.0 # [m] YAW_GRID_RESOLUTION = np.deg2rad(15.0) # [rad] diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index 10af3a81bd..25c50a0cd2 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -10,8 +10,8 @@ """ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import copy import math diff --git a/PathPlanning/LQRPlanner/LQRplanner.py b/PathPlanning/LQRPlanner/lqr_planner.py similarity index 100% rename from PathPlanning/LQRPlanner/LQRplanner.py rename to PathPlanning/LQRPlanner/lqr_planner.py diff --git a/PathPlanning/LQRRRTStar/lqr_rrt_star.py b/PathPlanning/LQRRRTStar/lqr_rrt_star.py index 28d332aa00..e3f18a722a 100644 --- a/PathPlanning/LQRRRTStar/lqr_rrt_star.py +++ b/PathPlanning/LQRRRTStar/lqr_rrt_star.py @@ -7,21 +7,15 @@ """ import copy import math -import os import random -import sys - import matplotlib.pyplot as plt import numpy as np +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../LQRPlanner/") -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../RRTStar/") - -try: - from LQRplanner import LQRPlanner - from rrt_star import RRTStar -except ImportError: - raise +from LQRPlanner.lqr_planner import LQRPlanner +from RRTStar.rrt_star import RRTStar show_animation = True diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/model_predictive_trajectory_generator.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py similarity index 95% rename from PathPlanning/ModelPredictiveTrajectoryGenerator/model_predictive_trajectory_generator.py rename to PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py index 3ba1dd9fc2..a44e1ac956 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/model_predictive_trajectory_generator.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py @@ -7,11 +7,14 @@ """ import math - import matplotlib.pyplot as plt import numpy as np +import sys +import pathlib +path_planning_dir = pathlib.Path(__file__).parent.parent +sys.path.append(str(path_planning_dir)) -import motion_model +import ModelPredictiveTrajectoryGenerator.motion_model as motion_model # optimization parameter max_iter = 100 diff --git a/PathPlanning/RRT/rrt_with_pathsmoothing.py b/PathPlanning/RRT/rrt_with_pathsmoothing.py index 9826dba072..616c73a697 100644 --- a/PathPlanning/RRT/rrt_with_pathsmoothing.py +++ b/PathPlanning/RRT/rrt_with_pathsmoothing.py @@ -7,18 +7,13 @@ """ import math -import os import random -import sys - import matplotlib.pyplot as plt +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__))) - -try: - from rrt import RRT -except ImportError: - raise +from rrt import RRT show_animation = True diff --git a/PathPlanning/RRT/rrt_with_sobol_sampler.py b/PathPlanning/RRT/rrt_with_sobol_sampler.py index 8045d8f764..73488210a7 100644 --- a/PathPlanning/RRT/rrt_with_sobol_sampler.py +++ b/PathPlanning/RRT/rrt_with_sobol_sampler.py @@ -28,12 +28,11 @@ import math import random -from sobol import sobol_quasirand -import sys - import matplotlib.pyplot as plt import numpy as np +from sobol import sobol_quasirand + show_animation = True diff --git a/PathPlanning/RRTDubins/rrt_dubins.py b/PathPlanning/RRTDubins/rrt_dubins.py index f1bd03ca02..f938419f35 100644 --- a/PathPlanning/RRTDubins/rrt_dubins.py +++ b/PathPlanning/RRTDubins/rrt_dubins.py @@ -6,23 +6,17 @@ """ import copy import math -import os import random -import sys - -import matplotlib.pyplot as plt import numpy as np +import matplotlib.pyplot as plt +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) # root dir +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../DubinsPath/") -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../RRT/") - -try: - from rrt import RRT - import dubins_path_planner -except ImportError: - raise +from RRT.rrt import RRT +from DubinsPath import dubins_path_planner +from utils.plot import plot_arrow show_animation = True @@ -130,10 +124,8 @@ def draw_graph(self, rnd=None): # pragma: no cover plt.pause(0.01) def plot_start_goal_arrow(self): # pragma: no cover - dubins_path_planner.plot_arrow( - self.start.x, self.start.y, self.start.yaw) - dubins_path_planner.plot_arrow( - self.end.x, self.end.y, self.end.yaw) + plot_arrow(self.start.x, self.start.y, self.start.yaw) + plot_arrow(self.end.x, self.end.y, self.end.yaw) def steer(self, from_node, to_node): @@ -214,6 +206,7 @@ def generate_final_course(self, goal_index): def main(): + print("Start " + __file__) # ====Search Path with RRT==== obstacleList = [ diff --git a/PathPlanning/RRTStar/rrt_star.py b/PathPlanning/RRTStar/rrt_star.py index e2c05456de..a7aad49d60 100644 --- a/PathPlanning/RRTStar/rrt_star.py +++ b/PathPlanning/RRTStar/rrt_star.py @@ -7,17 +7,12 @@ """ import math -import os import sys - import matplotlib.pyplot as plt +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../RRT/") - -try: - from rrt import RRT -except ImportError: - raise +from RRT.rrt import RRT show_animation = True @@ -59,6 +54,7 @@ def __init__(self, self.connect_circle_dist = connect_circle_dist self.goal_node = self.Node(goal[0], goal[1]) self.search_until_max_iter = search_until_max_iter + self.node_list = [] def planning(self, animation=True): """ diff --git a/PathPlanning/RRTStarDubins/rrt_star_dubins.py b/PathPlanning/RRTStarDubins/rrt_star_dubins.py index e2a456d75f..7c52879b7c 100644 --- a/PathPlanning/RRTStarDubins/rrt_star_dubins.py +++ b/PathPlanning/RRTStarDubins/rrt_star_dubins.py @@ -4,26 +4,19 @@ author: AtsushiSakai(@Atsushi_twi) """ - import copy import math -import os import random -import sys - import matplotlib.pyplot as plt import numpy as np +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) # root dir +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../DubinsPath/") -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../RRTStar/") - -try: - import dubins_path_planner - from rrt_star import RRTStar -except ImportError: - raise +from DubinsPath import dubins_path_planner +from RRTStar.rrt_star import RRTStar +from utils.plot import plot_arrow show_animation = True @@ -136,10 +129,8 @@ def draw_graph(self, rnd=None): plt.pause(0.01) def plot_start_goal_arrow(self): - dubins_path_planner.plot_arrow( - self.start.x, self.start.y, self.start.yaw) - dubins_path_planner.plot_arrow( - self.end.x, self.end.y, self.end.yaw) + plot_arrow(self.start.x, self.start.y, self.start.yaw) + plot_arrow(self.end.x, self.end.y, self.end.yaw) def steer(self, from_node, to_node): diff --git a/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py b/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py index 323bc76be2..66185017a0 100644 --- a/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py +++ b/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py @@ -7,23 +7,15 @@ """ import copy import math -import os import random import sys - +import pathlib import matplotlib.pyplot as plt import numpy as np +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../ReedsSheppPath/") -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../RRTStar/") - -try: - import reeds_shepp_path_planning - from rrt_star import RRTStar -except ImportError: - raise +from ReedsSheppPath import reeds_shepp_path_planning +from RRTStar.rrt_star import RRTStar show_animation = True diff --git a/PathPlanning/StateLatticePlanner/state_lattice_planner.py b/PathPlanning/StateLatticePlanner/state_lattice_planner.py index b5fec697a4..fb80e1f582 100644 --- a/PathPlanning/StateLatticePlanner/state_lattice_planner.py +++ b/PathPlanning/StateLatticePlanner/state_lattice_planner.py @@ -4,11 +4,16 @@ author: Atsushi Sakai (@Atsushi_twi) -- lookuptable.csv is generated with this script: https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathPlanning/ModelPredictiveTrajectoryGenerator/lookuptable_generator.py +- lookuptable.csv is generated with this script: +https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathPlanning +/ModelPredictiveTrajectoryGenerator/lookuptable_generator.py Ref: -- State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.187.8210&rep=rep1&type=pdf +- State Space Sampling of Feasible Motions for High-Performance Mobile Robot +Navigation in Complex Environments +http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.187.8210&rep=rep1 +&type=pdf """ import sys @@ -17,17 +22,11 @@ import numpy as np import math import pandas as pd +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) - + "/../ModelPredictiveTrajectoryGenerator/") - - -try: - import model_predictive_trajectory_generator as planner - import motion_model -except ImportError: - raise - +import ModelPredictiveTrajectoryGenerator.trajectory_generator as planner +import ModelPredictiveTrajectoryGenerator.motion_model as motion_model table_path = os.path.dirname(os.path.abspath(__file__)) + "/lookuptable.csv" diff --git a/PathPlanning/VisibilityRoadMap/visibility_road_map.py b/PathPlanning/VisibilityRoadMap/visibility_road_map.py index 6458cd882c..e9f8733c83 100644 --- a/PathPlanning/VisibilityRoadMap/visibility_road_map.py +++ b/PathPlanning/VisibilityRoadMap/visibility_road_map.py @@ -6,17 +6,15 @@ """ -import os import sys import math import numpy as np import matplotlib.pyplot as plt +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) -from PathPlanning.VisibilityRoadMap.geometry import Geometry - -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../VoronoiRoadMap/") -from dijkstra_search import DijkstraSearch +from VisibilityRoadMap.geometry import Geometry +from VoronoiRoadMap.dijkstra_search import DijkstraSearch show_animation = True diff --git a/PathPlanning/VoronoiRoadMap/__init__.py b/PathPlanning/VoronoiRoadMap/__init__.py index 087dab646e..e69de29bb2 100644 --- a/PathPlanning/VoronoiRoadMap/__init__.py +++ b/PathPlanning/VoronoiRoadMap/__init__.py @@ -1,4 +0,0 @@ -import os -import sys - -sys.path.append(os.path.dirname(os.path.abspath(__file__))) diff --git a/PathPlanning/VoronoiRoadMap/voronoi_road_map.py b/PathPlanning/VoronoiRoadMap/voronoi_road_map.py index d184230fd5..0a1f6f5526 100644 --- a/PathPlanning/VoronoiRoadMap/voronoi_road_map.py +++ b/PathPlanning/VoronoiRoadMap/voronoi_road_map.py @@ -9,8 +9,12 @@ import math import numpy as np import matplotlib.pyplot as plt -from dijkstra_search import DijkstraSearch from scipy.spatial import cKDTree, Voronoi +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent)) + +from VoronoiRoadMap.dijkstra_search import DijkstraSearch show_animation = True diff --git a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py index db5a755008..7e57abb80e 100644 --- a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py +++ b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py @@ -7,19 +7,13 @@ """ import math import sys -import os - import matplotlib.pyplot as plt import numpy as np import scipy.linalg as la +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../../PathPlanning/CubicSpline/") - -try: - import cubic_spline_planner -except ImportError: - raise +from PathPlanning.CubicSpline import cubic_spline_planner # === Parameters ===== diff --git a/PathTracking/lqr_steer_control/lqr_steer_control.py b/PathTracking/lqr_steer_control/lqr_steer_control.py index 5596ea0fdf..95a1b92ce5 100644 --- a/PathTracking/lqr_steer_control/lqr_steer_control.py +++ b/PathTracking/lqr_steer_control/lqr_steer_control.py @@ -10,16 +10,10 @@ import math import numpy as np import sys -import os - -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../../PathPlanning/CubicSpline/") - -try: - import cubic_spline_planner -except: - raise +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from PathPlanning.CubicSpline import cubic_spline_planner Kp = 1.0 # speed proportional gain @@ -29,7 +23,7 @@ # parameters dt = 0.1 # time tick[s] -L = 0.5 # Wheel base of the vehicle [m] +L = 0.5 # Wheelbase of the vehicle [m] max_steer = np.deg2rad(45.0) # maximum steering angle[rad] show_animation = True diff --git a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py index ac8b883bd9..59e69aa999 100644 --- a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py +++ b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py @@ -10,16 +10,10 @@ import math import numpy as np import sys -import os - -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../../PathPlanning/CubicSpline/") - -try: - import cubic_spline_planner -except: - raise +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from PathPlanning.CubicSpline import cubic_spline_planner NX = 4 # x = x, y, v, yaw NU = 2 # a = [accel, steer] diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_controller/stanley_controller.py index 3a67d6268e..9c475cbaf2 100644 --- a/PathTracking/stanley_controller/stanley_controller.py +++ b/PathTracking/stanley_controller/stanley_controller.py @@ -12,16 +12,10 @@ import numpy as np import matplotlib.pyplot as plt import sys -import os - -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + - "/../../PathPlanning/CubicSpline/") - -try: - import cubic_spline_planner -except: - raise +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from PathPlanning.CubicSpline import cubic_spline_planner k = 0.5 # control gain Kp = 1.0 # speed proportional gain diff --git a/SLAM/GraphBasedSLAM/graph_based_slam.py b/SLAM/GraphBasedSLAM/graph_based_slam.py index 0827732cd8..5510a41110 100644 --- a/SLAM/GraphBasedSLAM/graph_based_slam.py +++ b/SLAM/GraphBasedSLAM/graph_based_slam.py @@ -11,8 +11,8 @@ """ import sys -import os -sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/../utils/") +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import copy import itertools diff --git a/tests/test_LQR_planner.py b/tests/test_LQR_planner.py index b535b99baf..be12195eac 100644 --- a/tests/test_LQR_planner.py +++ b/tests/test_LQR_planner.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from PathPlanning.LQRPlanner import LQRplanner as m +from PathPlanning.LQRPlanner import lqr_planner as m def test_1(): From cd5a50b2aa2bd80fd74fceb654d54d168c9f59da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Sep 2022 06:45:54 +0900 Subject: [PATCH 004/414] Bump numpy from 1.23.2 to 1.23.3 in /requirements (#723) Bumps [numpy](https://github.com/numpy/numpy) from 1.23.2 to 1.23.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.23.2...v1.23.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 615377611b..61a73fd2c6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.23.2 +numpy == 1.23.3 scipy == 1.9.1 pandas == 1.4.4 matplotlib == 3.5.3 From e40b4d9dec729b02a78dd98062e736f7477d6ad1 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 27 Sep 2022 21:49:53 +0900 Subject: [PATCH 005/414] Enhance bspline code and doc clean up (#720) * Start bspline code and doc cluean up * code clean up * code clean up * code clean up * code clean up * improve doc * improve doc * improve doc * improve doc * improve doc * improve doc * improve doc * improve doc * improve codes. * improve codes. * improve codes. --- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- PathPlanning/BSplinePath/bspline_path.py | 150 +++++++++++++----- docs/index_main.rst | 1 + .../path_planning/bspline_path/Figure_1.png | Bin 22882 -> 0 bytes .../bspline_path/approx_and_curvature.png | Bin 0 -> 43661 bytes .../bspline_path/approximation1.png | Bin 0 -> 28603 bytes .../bspline_path/basis_functions.png | Bin 0 -> 70364 bytes .../bspline_path/bspline_path_main.rst | 140 +++++++++++++++- .../bspline_path/bspline_path_planning.png | Bin 0 -> 34312 bytes .../bspline_path/interp_and_curvature.png | Bin 0 -> 37021 bytes .../bspline_path/interpolation1.png | Bin 0 -> 27476 bytes docs/modules/utils/plot/curvature_plot.png | Bin 0 -> 33206 bytes docs/modules/utils/plot/plot_main.rst | 16 ++ docs/modules/utils/utils_main.rst | 12 ++ tests/test_bspline_path.py | 74 +++++++++ utils/plot.py | 37 +++++ 17 files changed, 387 insertions(+), 47 deletions(-) delete mode 100644 docs/modules/path_planning/bspline_path/Figure_1.png create mode 100644 docs/modules/path_planning/bspline_path/approx_and_curvature.png create mode 100644 docs/modules/path_planning/bspline_path/approximation1.png create mode 100644 docs/modules/path_planning/bspline_path/basis_functions.png create mode 100644 docs/modules/path_planning/bspline_path/bspline_path_planning.png create mode 100644 docs/modules/path_planning/bspline_path/interp_and_curvature.png create mode 100644 docs/modules/path_planning/bspline_path/interpolation1.png create mode 100644 docs/modules/utils/plot/curvature_plot.png create mode 100644 docs/modules/utils/plot/plot_main.rst create mode 100644 docs/modules/utils/utils_main.rst create mode 100644 tests/test_bspline_path.py diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index 73f8aa5c0d..83c55b17f1 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.10'] + python-version: [ '3.10.6' ] # For mypy error Ref: https://github.com/python/mypy/issues/13627 name: Python ${{ matrix.python-version }} CI diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 5c796120a5..a3459f2560 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python-version: [ '3.10' ] + python-version: [ '3.10.6' ] # For mypy error Ref: https://github.com/python/mypy/issues/13627 name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v2 diff --git a/PathPlanning/BSplinePath/bspline_path.py b/PathPlanning/BSplinePath/bspline_path.py index d4b24c7645..a2a396efaa 100644 --- a/PathPlanning/BSplinePath/bspline_path.py +++ b/PathPlanning/BSplinePath/bspline_path.py @@ -5,57 +5,114 @@ author: Atsushi Sakai (@Atsushi_twi) """ +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import numpy as np import matplotlib.pyplot as plt -import scipy.interpolate as scipy_interpolate +import scipy.interpolate as interpolate +from utils.plot import plot_curvature -def approximate_b_spline_path(x: list, y: list, n_path_points: int, - degree: int = 3) -> tuple: - """ - approximate points with a B-Spline path - :param x: x position list of approximated points - :param y: y position list of approximated points - :param n_path_points: number of path points - :param degree: (Optional) B Spline curve degree - :return: x and y position list of the result path +def approximate_b_spline_path(x: list, + y: list, + n_path_points: int, + degree: int = 3, + s=None, + ) -> tuple: """ - t = range(len(x)) - x_tup = scipy_interpolate.splrep(t, x, k=degree) - y_tup = scipy_interpolate.splrep(t, y, k=degree) + Approximate points with a B-Spline path + + Parameters + ---------- + x : array_like + x position list of approximated points + y : array_like + y position list of approximated points + n_path_points : int + number of path points + degree : int, optional + B Spline curve degree. Must be 2<= k <= 5. Default: 3. + s : int, optional + smoothing parameter. If this value is bigger, the path will be + smoother, but it will be less accurate. If this value is smaller, + the path will be more accurate, but it will be less smooth. + When `s` is 0, it is equivalent to the interpolation. Default is None, + in this case `s` will be `len(x)`. + + Returns + ------- + x : array + x positions of the result path + y : array + y positions of the result path + heading : array + heading of the result path + curvature : array + curvature of the result path - x_list = list(x_tup) - x_list[1] = x + [0.0, 0.0, 0.0, 0.0] - - y_list = list(y_tup) - y_list[1] = y + [0.0, 0.0, 0.0, 0.0] + """ + distances = _calc_distance_vector(x, y) - ipl_t = np.linspace(0.0, len(x) - 1, n_path_points) - rx = scipy_interpolate.splev(ipl_t, x_list) - ry = scipy_interpolate.splev(ipl_t, y_list) + spl_i_x = interpolate.UnivariateSpline(distances, x, k=degree, s=s) + spl_i_y = interpolate.UnivariateSpline(distances, y, k=degree, s=s) - return rx, ry + sampled = np.linspace(0.0, distances[-1], n_path_points) + return _evaluate_spline(sampled, spl_i_x, spl_i_y) -def interpolate_b_spline_path(x: list, y: list, n_path_points: int, +def interpolate_b_spline_path(x, y, + n_path_points: int, degree: int = 3) -> tuple: """ - interpolate points with a B-Spline path + Interpolate x-y points with a B-Spline path + + Parameters + ---------- + x : array_like + x positions of interpolated points + y : array_like + y positions of interpolated points + n_path_points : int + number of path points + degree : int, optional + B-Spline degree. Must be 2<= k <= 5. Default: 3 + + Returns + ------- + x : array + x positions of the result path + y : array + y positions of the result path + heading : array + heading of the result path + curvature : array + curvature of the result path - :param x: x positions of interpolated points - :param y: y positions of interpolated points - :param n_path_points: number of path points - :param degree: B-Spline degree - :return: x and y position list of the result path """ - ipl_t = np.linspace(0.0, len(x) - 1, len(x)) - spl_i_x = scipy_interpolate.make_interp_spline(ipl_t, x, k=degree) - spl_i_y = scipy_interpolate.make_interp_spline(ipl_t, y, k=degree) + return approximate_b_spline_path(x, y, n_path_points, degree, s=0.0) - travel = np.linspace(0.0, len(x) - 1, n_path_points) - return spl_i_x(travel), spl_i_y(travel) + +def _calc_distance_vector(x, y): + dx, dy = np.diff(x), np.diff(y) + distances = np.cumsum([np.hypot(idx, idy) for idx, idy in zip(dx, dy)]) + distances = np.concatenate(([0.0], distances)) + distances /= distances[-1] + return distances + + +def _evaluate_spline(sampled, spl_i_x, spl_i_y): + x = spl_i_x(sampled) + y = spl_i_y(sampled) + dx = spl_i_x.derivative(1)(sampled) + dy = spl_i_y.derivative(1)(sampled) + heading = np.arctan2(dy, dx) + ddx = spl_i_x.derivative(2)(sampled) + ddy = spl_i_y.derivative(2)(sampled) + curvature = (ddy * dx - ddx * dy) / np.power(dx * dx + dy * dy, 2.0 / 3.0) + return np.array(x), y, heading, curvature, def main(): @@ -63,17 +120,28 @@ def main(): # way points way_point_x = [-1.0, 3.0, 4.0, 2.0, 1.0] way_point_y = [0.0, -3.0, 1.0, 1.0, 3.0] - n_course_point = 100 # sampling number + n_course_point = 50 # sampling number - rax, ray = approximate_b_spline_path(way_point_x, way_point_y, - n_course_point) - rix, riy = interpolate_b_spline_path(way_point_x, way_point_y, - n_course_point) + plt.subplots() + rax, ray, heading, curvature = approximate_b_spline_path( + way_point_x, way_point_y, n_course_point, s=0.5) + plt.plot(rax, ray, '-r', label="Approximated B-Spline path") + plot_curvature(rax, ray, heading, curvature) - # show results + plt.title("B-Spline approximation") plt.plot(way_point_x, way_point_y, '-og', label="way points") - plt.plot(rax, ray, '-r', label="Approximated B-Spline path") + plt.grid(True) + plt.legend() + plt.axis("equal") + + plt.subplots() + rix, riy, heading, curvature = interpolate_b_spline_path( + way_point_x, way_point_y, n_course_point) plt.plot(rix, riy, '-b', label="Interpolated B-Spline path") + plot_curvature(rix, riy, heading, curvature) + + plt.title("B-Spline interpolation") + plt.plot(way_point_x, way_point_y, '-og', label="way points") plt.grid(True) plt.legend() plt.axis("equal") diff --git a/docs/index_main.rst b/docs/index_main.rst index 151759284d..67bd9889f2 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -44,6 +44,7 @@ See this paper for more details: modules/aerial_navigation/aerial_navigation modules/bipedal/bipedal modules/control/control + modules/utils/utils modules/appendix/appendix how_to_contribute diff --git a/docs/modules/path_planning/bspline_path/Figure_1.png b/docs/modules/path_planning/bspline_path/Figure_1.png deleted file mode 100644 index 539854ac2988242af075981dd9b3e288d8635bcb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22882 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 diff --git a/docs/modules/path_planning/bspline_path/approx_and_curvature.png b/docs/modules/path_planning/bspline_path/approx_and_curvature.png new file mode 100644 index 0000000000000000000000000000000000000000..49f260bb602026678f577e64688a3bae0cc958f5 GIT binary patch literal 43661 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 ax_?t&7T4p|rLq`6!B0a~SEUGR_2@rR=XBKo literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/bspline_path/approximation1.png b/docs/modules/path_planning/bspline_path/approximation1.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f00551ebedc986179c36d5010bf31f85ce8193 GIT binary patch literal 28603 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

~-#ZjNO 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 N+86XS3eQ`H{ujyYu@wLS literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/bspline_path/basis_functions.png b/docs/modules/path_planning/bspline_path/basis_functions.png new file mode 100644 index 0000000000000000000000000000000000000000..65075c80157def7be1848fba2fc0a8f9e7caea97 GIT binary patch literal 70364 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 z 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 a1r|F;bJo|~6jI=iz{yD|NtTNn1^geTS3=bQ literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/bspline_path/bspline_path_main.rst b/docs/modules/path_planning/bspline_path/bspline_path_main.rst index d3523a1918..e734352e34 100644 --- a/docs/modules/path_planning/bspline_path/bspline_path_main.rst +++ b/docs/modules/path_planning/bspline_path/bspline_path_main.rst @@ -1,14 +1,146 @@ B-Spline planning ----------------- -.. image:: Figure_1.png +.. image:: bspline_path_planning.png -This is a path planning with B-Spline curse. +This is a B-Spline path planning routines. If you input waypoints, it generates a smooth path with B-Spline curve. -The final course should be on the first and last waypoints. +This codes provide two types of B-Spline curve generations: -Ref: +1. Interpolation: generate a curve that passes through all waypoints. + +2. Approximation: generate a curve that approximates the waypoints. (Not passing through all waypoints) + +Bspline basics +~~~~~~~~~~~~~~ + +BSpline (Basis-Spline) is a piecewise polynomial spline curve. + +It is expressed by the following equation. + +:math:`\mathbf{S}(x)=\sum_{i=k-p}^k \mathbf{c}_i B_{i, p}(x)` + +here: + +* :math:`S(x)` is the curve point on the spline at x. +* :math:`c_i` is the representative point generating the spline, called the control point. +* :math:`p+1` is the dimension of the BSpline. +* :math:`k` is the number of knots. +* :math:`B_{i,p}(x)` is a function called Basis Function. + +The the basis function can be calculated by the following `De Boor recursion formula `_: + +:math:`B_{i, 0}(x):= \begin{cases}1 & \text { if } \quad t_i \leq x`_. + +.. code-block:: python + + from scipy.interpolate import BSpline + + def B_orig(x, k, i, t): + if k == 0: + return 1.0 if t[i] <= x < t[i + 1] else 0.0 + if t[i + k] == t[i]: + c1 = 0.0 + else: + c1 = (x - t[i]) / (t[i + k] - t[i]) * B(x, k - 1, i, t) + + if t[i + k + 1] == t[i + 1]: + c2 = 0.0 + else: + c2 = (t[i + k + 1] - x) / (t[i + k + 1] - t[i + 1]) * B(x, k - 1, i + 1, t) + return c1 + c2 + + + def B(x, k, i, t): + c = np.zeros_like(t) + c[i] = 1 + return BSpline(t, c, k)(x) + + + def main(): + k = 3 # degree of the spline + t = [0, 1, 2, 3, 4, 5] # knots vector + + x = np.linspace(0, 5, 1000, endpoint=False) + t = np.r_[[np.min(t)]*k, t, [np.max(t)]*k] + + n = len(t) - k - 1 + for i in range(n): + y = np.array([B(ix, k, i, t) for ix in x]) + plt.plot(x, y, label=f'i = {i}') + + plt.title(f'Basis functions (k = {k}, knots = {t})') + plt.show() + +Bspline interpolation planning +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +:meth:`PathPlanning.BSplinePath.bspline_path.interpolate_b_spline_path` generates a curve that passes through all waypoints. + +This is a simple example of the interpolation planning: + +.. image:: interpolation1.png + +This figure also shows curvatures of each path point using :ref:`utils.plot.plot_curvature `. + +The default spline degree is 3, so curvature changes smoothly. + +.. image:: interp_and_curvature.png + +API +++++ + +.. autofunction:: PathPlanning.BSplinePath.bspline_path.interpolate_b_spline_path + + +Bspline approximation planning +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +:meth:`PathPlanning.BSplinePath.bspline_path.approximate_b_spline_path` +generates a curve that approximates the waypoints, which means that +the curve might not pass through waypoints. + +Users can adjust path smoothness by the smoothing parameter `s`. If this +value is bigger, the path will be smoother, but it will be less accurate. +If this value is smaller, the path will be more accurate, but it will be +less smooth. + +This is a simple example of the approximation planning: + +.. image:: approximation1.png + +This figure also shows curvatures of each path point using :ref:`utils.plot.plot_curvature `. + +The default spline degree is 3, so curvature changes smoothly. + +.. image:: approx_and_curvature.png + +API +++++ + +.. autofunction:: PathPlanning.BSplinePath.bspline_path.approximate_b_spline_path + + +References +~~~~~~~~~~ - `B-spline - Wikipedia `__ +- `scipy.interpolate.UnivariateSpline `__ \ No newline at end of file diff --git a/docs/modules/path_planning/bspline_path/bspline_path_planning.png b/docs/modules/path_planning/bspline_path/bspline_path_planning.png new file mode 100644 index 0000000000000000000000000000000000000000..a3c1e621f9c6c6743523eee14f4e7e91b6633ec0 GIT binary patch literal 34312 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 z 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 R2-x8YWom4WD>EWo{SUZ);xYgL literal 0 HcmV?d00001 diff --git a/docs/modules/utils/plot/curvature_plot.png b/docs/modules/utils/plot/curvature_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..891d300829356a7f50f96a78fca7c04d59afec18 GIT binary patch literal 33206 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ⅈs1zRQtK-PMBr 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 Date: Fri, 30 Sep 2022 09:14:27 +0900 Subject: [PATCH 006/414] Remove pandas dependency (#725) * Remove pandas dependency * Remove pandas dependency --- .../lookup_table_generator.py | 110 +++++++++++++++++ .../lookuptable_generator.py | 114 ------------------ .../StateLatticePlanner/lookup_table.csv | 82 +++++++++++++ .../StateLatticePlanner/lookuptable.csv | 25 ---- .../state_lattice_planner.py | 62 +++++----- README.md | 2 - docs/getting_started_main.rst | 2 - requirements/environment.yml | 1 - requirements/requirements.txt | 1 - 9 files changed, 226 insertions(+), 173 deletions(-) create mode 100644 PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py delete mode 100644 PathPlanning/ModelPredictiveTrajectoryGenerator/lookuptable_generator.py create mode 100644 PathPlanning/StateLatticePlanner/lookup_table.csv delete mode 100644 PathPlanning/StateLatticePlanner/lookuptable.csv diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py new file mode 100644 index 0000000000..6cb226adef --- /dev/null +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py @@ -0,0 +1,110 @@ +""" + +Lookup Table generation for model predictive trajectory generator + +author: Atsushi Sakai + +""" +import sys +import pathlib +path_planning_dir = pathlib.Path(__file__).parent.parent +sys.path.append(str(path_planning_dir)) + +from matplotlib import pyplot as plt +import numpy as np +import math + +from ModelPredictiveTrajectoryGenerator import trajectory_generator,\ + motion_model + + +def calc_states_list(max_yaw=np.deg2rad(-30.0)): + + x = np.arange(10.0, 30.0, 5.0) + y = np.arange(0.0, 20.0, 2.0) + yaw = np.arange(-max_yaw, max_yaw, max_yaw) + + states = [] + for iyaw in yaw: + for iy in y: + for ix in x: + states.append([ix, iy, iyaw]) + print("n_state:", len(states)) + + return states + + +def search_nearest_one_from_lookup_table(tx, ty, tyaw, lookup_table): + mind = float("inf") + minid = -1 + + for (i, table) in enumerate(lookup_table): + + dx = tx - table[0] + dy = ty - table[1] + dyaw = tyaw - table[2] + d = math.sqrt(dx ** 2 + dy ** 2 + dyaw ** 2) + if d <= mind: + minid = i + mind = d + + # print(minid) + + return lookup_table[minid] + + +def save_lookup_table(file_name, table): + np.savetxt(file_name, np.array(table), + fmt='%s', delimiter=",", header="x,y,yaw,s,km,kf", comments="") + + print("lookup table file is saved as " + file_name) + + +def generate_lookup_table(): + states = calc_states_list(max_yaw=np.deg2rad(-30.0)) + k0 = 0.0 + + # x, y, yaw, s, km, kf + lookup_table = [[1.0, 0.0, 0.0, 1.0, 0.0, 0.0]] + + for state in states: + best_p = search_nearest_one_from_lookup_table( + state[0], state[1], state[2], lookup_table) + + target = motion_model.State(x=state[0], y=state[1], yaw=state[2]) + init_p = np.array( + [np.hypot(state[0], state[1]), best_p[4], best_p[5]]).reshape(3, 1) + + x, y, yaw, p = trajectory_generator.optimize_trajectory(target, + k0, init_p) + + if x is not None: + print("find good path") + lookup_table.append( + [x[-1], y[-1], yaw[-1], float(p[0]), float(p[1]), float(p[2])]) + + print("finish lookup table generation") + + save_lookup_table("lookup_table.csv", lookup_table) + + for table in lookup_table: + x_c, y_c, yaw_c = motion_model.generate_trajectory( + table[3], table[4], table[5], k0) + plt.plot(x_c, y_c, "-r") + x_c, y_c, yaw_c = motion_model.generate_trajectory( + table[3], -table[4], -table[5], k0) + plt.plot(x_c, y_c, "-r") + + plt.grid(True) + plt.axis("equal") + plt.show() + + print("Done") + + +def main(): + generate_lookup_table() + + +if __name__ == '__main__': + main() diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/lookuptable_generator.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/lookuptable_generator.py deleted file mode 100644 index c57a05da57..0000000000 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/lookuptable_generator.py +++ /dev/null @@ -1,114 +0,0 @@ -""" - -Lookup Table generation for model predictive trajectory generator - -author: Atsushi Sakai - -""" -from matplotlib import pyplot as plt -import numpy as np -import math -import model_predictive_trajectory_generator as planner -import motion_model -import pandas as pd - - -def calc_states_list(): - maxyaw = np.deg2rad(-30.0) - - x = np.arange(10.0, 30.0, 5.0) - y = np.arange(0.0, 20.0, 2.0) - yaw = np.arange(-maxyaw, maxyaw, maxyaw) - - states = [] - for iyaw in yaw: - for iy in y: - for ix in x: - states.append([ix, iy, iyaw]) - print("nstate:", len(states)) - - return states - - -def search_nearest_one_from_lookuptable(tx, ty, tyaw, lookuptable): - mind = float("inf") - minid = -1 - - for (i, table) in enumerate(lookuptable): - - dx = tx - table[0] - dy = ty - table[1] - dyaw = tyaw - table[2] - d = math.sqrt(dx ** 2 + dy ** 2 + dyaw ** 2) - if d <= mind: - minid = i - mind = d - - # print(minid) - - return lookuptable[minid] - - -def save_lookup_table(fname, table): - mt = np.array(table) - print(mt) - # save csv - df = pd.DataFrame() - df["x"] = mt[:, 0] - df["y"] = mt[:, 1] - df["yaw"] = mt[:, 2] - df["s"] = mt[:, 3] - df["km"] = mt[:, 4] - df["kf"] = mt[:, 5] - df.to_csv(fname, index=None) - - print("lookup table file is saved as " + fname) - - -def generate_lookup_table(): - states = calc_states_list() - k0 = 0.0 - - # x, y, yaw, s, km, kf - lookuptable = [[1.0, 0.0, 0.0, 1.0, 0.0, 0.0]] - - for state in states: - bestp = search_nearest_one_from_lookuptable( - state[0], state[1], state[2], lookuptable) - - target = motion_model.State(x=state[0], y=state[1], yaw=state[2]) - init_p = np.array( - [math.sqrt(state[0] ** 2 + state[1] ** 2), bestp[4], bestp[5]]).reshape(3, 1) - - x, y, yaw, p = planner.optimize_trajectory(target, k0, init_p) - - if x is not None: - print("find good path") - lookuptable.append( - [x[-1], y[-1], yaw[-1], float(p[0]), float(p[1]), float(p[2])]) - - print("finish lookup table generation") - - save_lookup_table("lookuptable.csv", lookuptable) - - for table in lookuptable: - xc, yc, yawc = motion_model.generate_trajectory( - table[3], table[4], table[5], k0) - plt.plot(xc, yc, "-r") - xc, yc, yawc = motion_model.generate_trajectory( - table[3], -table[4], -table[5], k0) - plt.plot(xc, yc, "-r") - - plt.grid(True) - plt.axis("equal") - plt.show() - - print("Done") - - -def main(): - generate_lookup_table() - - -if __name__ == '__main__': - main() diff --git a/PathPlanning/StateLatticePlanner/lookup_table.csv b/PathPlanning/StateLatticePlanner/lookup_table.csv new file mode 100644 index 0000000000..2c48a11a18 --- /dev/null +++ b/PathPlanning/StateLatticePlanner/lookup_table.csv @@ -0,0 +1,82 @@ +x,y,yaw,s,km,kf +1.0,0.0,0.0,1.0,0.0,0.0 +9.975352133559392,0.0482183513545736,0.5660837104214496,10.00000000000002,0.0015736624607596847,0.31729782170754367 +15.021899857204536,0.023109001221800096,0.541061424167431,15.128443053611093,0.0006480950273134919,0.20847475849103875 +20.062147834064536,0.0406648159648112,0.5374967866814861,20.205553097986094,0.000452860235044122,0.15502921850050788 +24.924468605496358,-0.04047324014767662,0.5146575311501209,25.16775431470035,6.940620839146646e-05,0.12259452810198132 +9.971782095506931,1.9821448683146543,0.5206511572266477,10.287478424823748,0.05861430948618236,0.07036494964262185 +15.00170010872385,2.0003864283110473,0.5236741185892617,15.245993376540827,0.02657730439557895,0.09933479864250763 +19.991716537639487,1.9940629519465154,0.5226444441451559,20.277923997037238,0.015108540596275507,0.09478988637993524 +24.946447973869596,2.0815930190993206,0.5306354765686239,25.20115925294013,0.010036251429787917,0.08505936469481987 +10.033694822745312,3.9724800521928056,0.5349578864544497,11.087694168363686,0.10279429366023954,-0.12501011715795404 +15.010712586144749,4.0046776414868095,0.5234972445048012,15.729582155835587,0.05010930398580602,-0.0008557723200034717 +19.9175798257299,4.053680042954521,0.5265397234296523,20.52466275843717,0.029584390559990882,0.035276591227371874 +24.98769016158626,3.991699950598091,0.5229000018897194,25.543297770996556,0.018800715817231053,0.04750751098144048 +10.018665105170687,6.004814533505462,0.5183921334245007,12.249438857228967,0.13207408248643182,-0.2742892277307502 +14.988626131330372,5.991226410357179,0.5248160422552801,16.53593823576699,0.06924423592936522,-0.08634227857486092 +20.014420271646646,6.006767110727591,0.5233060851224174,21.23271362632659,0.041402041787912916,-0.01770377839603589 +24.998338724667267,5.997352722087869,0.5235621854299422,26.009046544833613,0.027285850882345728,0.011507045054418165 +10.040118020822444,8.017131894913126,0.5076867575242261,13.8061261785273,0.14561700178565884,-0.3527538468214878 +14.96397914886416,7.974972375534203,0.5303378183744862,17.667338175004062,0.08318912494381935,-0.15372672981944802 +20.045725182938817,8.023486945646207,0.5201839069343577,22.126364299043573,0.05173969669894265,-0.06557547083017647 +25.004687466358227,8.00036398460779,0.5234938146870878,26.740089158520917,0.034867425244601645,-0.02199309906456302 +10.065138949829214,10.03244363616002,0.49375882493214895,15.701940360254637,0.14847998727328912,-0.39355037236614626 +15.05373212031198,10.026401491912143,0.5111826366036252,19.105461052226858,0.09205576730549936,-0.20458802229704312 +19.965550451103926,9.977668905006206,0.5278605653376056,23.14082140870299,0.06010674632014157,-0.10340577652521214 +25.04062496016141,9.956781577401756,0.5252395961316738,27.641194908523495,0.04115083532669924,-0.05054407239730677 +9.980172344087242,11.981944953180841,0.5354924711458446,17.764377273124804,0.14616069587267325,-0.40115138946106776 +15.031707905116134,12.011530784459552,0.5157261778129998,20.745000892047745,0.0970285785481706,-0.2379719980195133 +20.05384921212195,12.02621662711961,0.5153884987125119,24.513013940487117,0.06601543941341544,-0.13666530932375262 +25.04326204059146,12.019946808479768,0.5198699857547844,28.74306622689766,0.04671545692054678,-0.07827401225777673 +10.005005976167096,13.993516346269931,0.5249997047973469,20.063732124124442,0.14007166951362482,-0.39994549637994103 +15.013469777117386,13.998572375088138,0.5211760827701193,22.591299061495683,0.0989196134377572,-0.25909446951756165 +19.980150236409695,13.98233838451409,0.5278966095736082,25.971685915503254,0.07029833263412807,-0.15993299513197096 +25.009669110020404,14.000751236643762,0.5227555344229664,29.949071374991423,0.05106114063333748,-0.09952052168406796 +9.996712859814979,15.986637217372996,0.5301458018536311,22.47478825250167,0.1329741433122606,-0.38823042580907063 +15.02373126750475,16.00384009060484,0.5182833077580984,24.557463511123004,0.0989491582793761,-0.26836010532851323 +20.023756339113735,16.004847752803656,0.5197401980953318,27.669260302891157,0.07275720314277462,-0.178811991371391 +25.015003771679122,16.002919774604504,0.5219791758565742,31.36524983655211,0.05429827198598215,-0.11766440355003502 +10.078596822781892,18.025309925487992,0.49768408992179225,25.02580432036455,0.1252233187334947,-0.3747545825918585 +15.001968473293188,17.988033772017467,0.5262415135796346,26.67625473617623,0.09746306394892065,-0.27167606206451594 +20.026047062413117,18.00445752595148,0.5193568548054093,29.442158339897595,0.07417227896231118,-0.19015828496001386 +24.984711558393403,17.982744830235063,0.5266809346220684,32.855828700083094,0.05675308229799072,-0.13090299334069386 +9.999999973554228,8.906672256498078e-05,-0.00024912926939091307,9.993250237275609,1.9794429093204823e-06,-0.00016167063578544257 +14.999999988951053,0.00030609885737583985,-9.259737492950393e-05,14.939586274030715,4.066161982234725e-06,-5.3230908443270726e-05 +19.999999963637627,0.0008196433029304879,-0.00010277758318455454,19.985770355960977,6.0902800817987275e-06,-5.581407356116362e-05 +24.999999906323,0.001558015443394581,-0.0001252423879458675,24.925430653319882,7.508303551937611e-06,-5.98269885073166e-05 +9.93201732790474,1.9700581591656137,-0.006606314895513332,10.1625049701131,0.05795554613825405,-0.23594780459354886 +15.017121844754504,2.000131018972639,-0.001958259181754851,15.130494387563031,0.026367577418638183,-0.10529363184139814 +19.962697589600058,2.0003823634817484,0.0021983556339688626,20.055058569558643,0.014972854970102445,-0.0592998512022201 +24.990093248087035,2.0008914594513647,0.0003319006512292333,25.020899019312747,0.009609456446194334,-0.03808543941908436 +9.942924437331126,3.9434423219621073,-0.047789349898090805,10.916318098481405,0.10417074854184473,-0.42509733550937057 +14.976393375378994,3.9987876606083557,0.004653465622298736,15.69826778341493,0.04981535482126709,-0.20027162173052074 +19.954160472557877,4.000101578371634,0.0053292950039418585,20.459066225465484,0.02905576509783228,-0.11479451096219842 +25.06247590490118,3.9997579161047643,-0.00486183691237807,25.40723367563786,0.01874893916371208,-0.07533000027879669 +9.974854017566281,5.998183884411291,0.01394025812352817,12.27808815775426,0.13163310345287574,-0.5111693653344966 +14.99829771854157,5.999020207860274,0.0007330116466723879,16.57520987140955,0.06880393034208837,-0.27508456151767885 +19.98389776689381,5.999506195067484,0.002770060727207646,21.17690590277397,0.04131547230609369,-0.1652252863196287 +25.022089217041394,5.998166050230614,-0.002551136444779001,25.974625009044832,0.02718132258204399,-0.10978755041013998 +9.940106683734614,7.99448983539684,0.03735909486314526,13.864600506318645,0.14554135993596395,-0.5498471044599721 +15.015405965817797,7.996301502316838,-0.004430455799697253,17.779484729664652,0.08234534796805798,-0.3300198333333338 +19.965919061860355,7.998456498324741,0.00732927315681664,22.0665101267907,0.05178054118886435,-0.20507088323830897 +24.97580637673196,7.998036396987909,0.0034859866489540536,26.699711792661176,0.03478260921646504,-0.13959734880932403 +10.003237328881212,9.994037173180942,-0.002542633641336778,15.800576175296408,0.1482242831571022,-0.5606578442626601 +14.95848212484301,9.995827033229693,0.016804720248816185,19.19635868417634,0.09159937492256161,-0.3610497877526804 +20.018365340632464,9.997789133099982,-0.003880405312526758,23.259977677838524,0.05967179836565363,-0.23873172503708404 +25.034844162753302,9.996613275552045,-0.005490232481425661,27.647073656497884,0.04122997694830456,-0.16548182742762063 +10.041413516307436,11.988808245039152,-0.015743247245750158,18.0174427655263,0.14424296158815444,-0.5545987939832356 +15.0710608536628,11.993636485613393,-0.025235844052727163,20.92474299071291,0.0960774359909814,-0.38199459745149106 +20.061838597733104,11.995243972143648,-0.015325438311212025,24.63090823780847,0.06556771814265559,-0.2626353022718591 +24.90813949494271,11.995929681233529,0.01760171116909426,28.6986397040137,0.046810556161518815,-0.1847353186190147 +10.005191819464756,13.97797567430312,0.018961636911005275,20.358534835690133,0.13825179056925302,-0.5307789523538471 +14.978392340358946,13.991362718235834,0.012411272386128935,22.755419658274054,0.0984622955030996,-0.38447788120958937 +20.015767113356507,13.992558840024987,-0.002205036951612893,26.18420998778461,0.06961025144239422,-0.2786494668163888 +25.01318440442437,13.994258255793202,-0.0016239998449329995,30.09124393513656,0.05071043613803722,-0.20387658283659768 +10.038844117562423,15.966797017942504,0.016384527088525225,22.88736140380268,0.13044436631301143,-0.5070826347325453 +14.91898245890566,15.984279670640529,0.03784081306841358,24.796728185207627,0.09830913950807817,-0.38207974071854045 +19.999487117727806,15.99041117221354,0.0034823225688951354,27.881676426972927,0.07220430103629995,-0.2873083396987492 +25.056418472201756,15.995103453935709,-0.011257522827095023,31.50238694595278,0.05406499488342877,-0.21526296035737832 +10.076107447676621,17.952889979512353,0.017798231103724138,25.454959881832874,0.1231232463335769,-0.47600174850950705 +15.032725028551983,17.978015286760307,0.0020752804670070013,27.089888269358894,0.09590219542773218,-0.3801465515462427 +20.03544756240551,17.98685790169768,-0.005300968094156033,29.75070206477736,0.07340450527104486,-0.29182757725382324 +24.960019173190652,17.98909417109214,0.011594018486178026,33.0995680641525,0.05634561447882407,-0.22402297280749597 diff --git a/PathPlanning/StateLatticePlanner/lookuptable.csv b/PathPlanning/StateLatticePlanner/lookuptable.csv deleted file mode 100644 index 85eff9b932..0000000000 --- a/PathPlanning/StateLatticePlanner/lookuptable.csv +++ /dev/null @@ -1,25 +0,0 @@ -x,y,yaw,s,km,kf -1.0,0.0,0.0,1.0,0.0,0.0 -0.9734888894493215,-0.009758406565994977,0.5358080146312756,0.9922329557399788,-0.10222538550473198,3.0262632253145982 -10.980728996433243,-0.0003093605787364978,0.522622783944529,11.000391678142623,0.00010296091030877934,0.2731556687244648 -16.020309241920156,0.0001292339008200291,0.5243399938698222,16.100019813021202,0.00013263212395994706,0.18999138959173634 -20.963495745193626,-0.00033031017429944326,0.5226120033275024,21.10082901143343,0.00011687467551566884,0.14550546012583987 -6.032553475650599,2.008504211720188,0.5050517859971599,6.400329805864408,0.1520002249689879,-0.13105940607691127 -10.977487445230075,2.0078696810700034,0.5263634407901872,11.201040572298973,0.04895863722280565,0.08356555007223682 -15.994057699325753,2.025659106131227,0.5303858891065698,16.200300421483128,0.0235708657178127,0.10002225103921249 -20.977228843605943,2.0281289825388513,0.5300376140865567,21.20043308669372,0.013795675421657671,0.09331700188063087 -25.95453914157977,1.9926432818499131,0.5226203078411618,26.200880299840527,0.00888830054451281,0.0830622000626594 -0.9999999999999999,0.0,0.0,1.0,0.0,0.0 -5.999999999670752,5.231312388722274e-05,1.4636120911014667e-05,5.996117185283419,4.483756968024291e-06,-3.4422519205046243e-06 -10.999749470720566,-0.011978787043239986,0.022694802592583763,10.99783855994015,-0.00024209503125174496,0.01370491008661795 -15.999885224357776,-0.018937230084507616,0.011565580878015763,15.99839381389597,-0.0002086399372890716,0.005267247862667496 -20.999882688881286,-0.030304200126461317,0.009117836885732596,20.99783120184498,-0.00020013159571184735,0.0034529188783636866 -25.999911270030413,-0.025754431694664327,0.0074809531598503615,25.99674782258235,-0.0001111138115390646,0.0021946603965658368 -10.952178818975062,1.993067260835455,0.0045572480669707136,11.17961498195845,0.04836813285436623,-0.19328716251760758 -16.028306009258,2.0086286208315407,0.009306594796759554,16.122411866381054,0.02330689045417979,-0.08877002085985948 -20.971603115419715,1.9864158336174966,0.007016819403167119,21.093006725076872,0.013439123130720928,-0.05238318300611623 -25.997019676818372,1.9818581321430093,0.007020172975955249,26.074021794586585,0.00876496148602802,-0.03362579291686346 -16.017903482982604,4.009490840390534,-5.293114796312698e-05,16.600937712976638,0.044543450568614244,-0.17444651314466567 -20.98845988414163,3.956600199823583,-0.01050744134070728,21.40149119463485,0.02622674388276059,-0.10625681152519345 -25.979448381017914,3.9968223055054977,-0.00012819253386682928,26.30504721211744,0.017467093413146118,-0.06914750106424669 -25.96268055563514,5.9821266846168,4.931311239565056e-05,26.801388563459287,0.025426008913226557,-0.10047663078001536 diff --git a/PathPlanning/StateLatticePlanner/state_lattice_planner.py b/PathPlanning/StateLatticePlanner/state_lattice_planner.py index fb80e1f582..e26fb8288c 100644 --- a/PathPlanning/StateLatticePlanner/state_lattice_planner.py +++ b/PathPlanning/StateLatticePlanner/state_lattice_planner.py @@ -4,9 +4,9 @@ author: Atsushi Sakai (@Atsushi_twi) -- lookuptable.csv is generated with this script: +- plookuptable.csv is generated with this script: https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathPlanning -/ModelPredictiveTrajectoryGenerator/lookuptable_generator.py +/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py Ref: @@ -21,27 +21,25 @@ from matplotlib import pyplot as plt import numpy as np import math -import pandas as pd import pathlib sys.path.append(str(pathlib.Path(__file__).parent.parent)) import ModelPredictiveTrajectoryGenerator.trajectory_generator as planner import ModelPredictiveTrajectoryGenerator.motion_model as motion_model -table_path = os.path.dirname(os.path.abspath(__file__)) + "/lookuptable.csv" +TABLE_PATH = os.path.dirname(os.path.abspath(__file__)) + "/lookup_table.csv" show_animation = True -def search_nearest_one_from_lookuptable(tx, ty, tyaw, lookup_table): +def search_nearest_one_from_lookup_table(t_x, t_y, t_yaw, lookup_table): mind = float("inf") minid = -1 for (i, table) in enumerate(lookup_table): - - dx = tx - table[0] - dy = ty - table[1] - dyaw = tyaw - table[2] + dx = t_x - table[0] + dy = t_y - table[1] + dyaw = t_yaw - table[2] d = math.sqrt(dx ** 2 + dy ** 2 + dyaw ** 2) if d <= mind: minid = i @@ -50,24 +48,22 @@ def search_nearest_one_from_lookuptable(tx, ty, tyaw, lookup_table): return lookup_table[minid] -def get_lookup_table(): - data = pd.read_csv(table_path) - - return np.array(data) +def get_lookup_table(table_path): + return np.loadtxt(table_path, delimiter=',', skiprows=1) def generate_path(target_states, k0): # x, y, yaw, s, km, kf - lookup_table = get_lookup_table() + lookup_table = get_lookup_table(TABLE_PATH) result = [] for state in target_states: - bestp = search_nearest_one_from_lookuptable( + bestp = search_nearest_one_from_lookup_table( state[0], state[1], state[2], lookup_table) target = motion_model.State(x=state[0], y=state[1], yaw=state[2]) init_p = np.array( - [math.sqrt(state[0] ** 2 + state[1] ** 2), bestp[4], bestp[5]]).reshape(3, 1) + [np.hypot(state[0], state[1]), bestp[4], bestp[5]]).reshape(3, 1) x, y, yaw, p = planner.optimize_trajectory(target, k0, init_p) @@ -82,18 +78,28 @@ def generate_path(target_states, k0): def calc_uniform_polar_states(nxy, nh, d, a_min, a_max, p_min, p_max): """ - calc uniform state - :param nxy: number of position sampling - :param nh: number of heading sampleing - :param d: distance of terminal state - :param a_min: position sampling min angle - :param a_max: position sampling max angle - :param p_min: heading sampling min angle - :param p_max: heading sampling max angle - :return: states list - """ + Parameters + ---------- + nxy : + number of position sampling + nh : + number of heading sampleing + d : + distance of terminal state + a_min : + position sampling min angle + a_max : + position sampling max angle + p_min : + heading sampling min angle + p_max : + heading sampling max angle + + Returns + ------- + """ angle_samples = [i / (nxy - 1) for i in range(nxy)] states = sample_states(angle_samples, a_min, a_max, d, p_max, p_min, nh) @@ -312,11 +318,11 @@ def lane_state_sampling_test1(): plt.close("all") for table in result: - xc, yc, yawc = motion_model.generate_trajectory( + x_c, y_c, yaw_c = motion_model.generate_trajectory( table[3], table[4], table[5], k0) if show_animation: - plt.plot(xc, yc, "-r") + plt.plot(x_c, y_c, "-r") if show_animation: plt.grid(True) diff --git a/README.md b/README.md index 2d0ee8d653..28b932baf2 100644 --- a/README.md +++ b/README.md @@ -103,8 +103,6 @@ For running each sample code: - [Matplotlib](https://matplotlib.org/) -- [pandas](https://pandas.pydata.org/) - - [cvxpy](https://www.cvxpy.org/) For development: diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 4a19126686..c2be93261b 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -30,7 +30,6 @@ Requirements - `NumPy`_ - `SciPy`_ - `Matplotlib`_ -- `pandas`_ - `cvxpy`_ For development: @@ -45,7 +44,6 @@ For development: .. _`NumPy`: https://numpy.org/ .. _`SciPy`: https://scipy.org/ .. _`Matplotlib`: https://matplotlib.org/ -.. _`pandas`: https://pandas.pydata.org/ .. _`cvxpy`: https://www.cvxpy.org/ diff --git a/requirements/environment.yml b/requirements/environment.yml index 109fc57789..202c2693d9 100644 --- a/requirements/environment.yml +++ b/requirements/environment.yml @@ -6,6 +6,5 @@ dependencies: - pip - scipy - numpy - - pandas - cvxpy - matplotlib diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 61a73fd2c6..42225b5fbe 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,5 @@ numpy == 1.23.3 scipy == 1.9.1 -pandas == 1.4.4 matplotlib == 3.5.3 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test From 3814341a10e0d7b97db4d5f5c8057e1d4cb17a2d Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 30 Sep 2022 09:24:03 +0900 Subject: [PATCH 007/414] Remove pandas dependency (#727) --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 28b932baf2..97a7742dca 100644 --- a/README.md +++ b/README.md @@ -632,6 +632,11 @@ If you would like to support us in some other way, please contact with creating They are providing a free license of their IDEs for this OSS development. +### [1Password](https://github.com/1Password/1password-teams-open-source) + +They are providing a free license of their 1Password team license for this OSS project. + + # Authors - [Contributors to AtsushiSakai/PythonRobotics](https://github.com/AtsushiSakai/PythonRobotics/graphs/contributors) From aebf8dc3ff6d82af7e02b3ed1cd3167c9aae6683 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 2 Oct 2022 11:14:25 +0900 Subject: [PATCH 008/414] clean up circle_artifact (#728) * clean up circle_artifact * Update circleci-artifacts-redirector.yml --- .github/workflows/circle_artifacts.yml | 13 ------------- .github/workflows/circleci-artifacts-redirector.yml | 2 +- 2 files changed, 1 insertion(+), 14 deletions(-) delete mode 100644 .github/workflows/circle_artifacts.yml diff --git a/.github/workflows/circle_artifacts.yml b/.github/workflows/circle_artifacts.yml deleted file mode 100644 index 56ac78ed15..0000000000 --- a/.github/workflows/circle_artifacts.yml +++ /dev/null @@ -1,13 +0,0 @@ -on: [status] -jobs: - circleci_artifacts_redirector_job: - runs-on: ubuntu-20.04 - name: Run CircleCI artifacts redirector - steps: - - name: GitHub Action step - uses: larsoner/circleci-artifacts-redirector-action@master - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - artifact-path: 0/html-scipyorg/index.html - circleci-jobs: build_docs - job-title: build_doc artifact \ No newline at end of file diff --git a/.github/workflows/circleci-artifacts-redirector.yml b/.github/workflows/circleci-artifacts-redirector.yml index d988d2c38e..149a087a5d 100644 --- a/.github/workflows/circleci-artifacts-redirector.yml +++ b/.github/workflows/circleci-artifacts-redirector.yml @@ -3,7 +3,7 @@ on: [status] jobs: circleci_artifacts_redirector_job: runs-on: ubuntu-latest - name: Run CircleCI artifacts redirector + name: Run CircleCI artifacts redirector!! steps: - name: run-circleci-artifacts-redirector uses: larsoner/circleci-artifacts-redirector-action@0.3.1 From b607af70c3431bb8e97d17a4805aaadd6ddea857 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Oct 2022 07:27:02 +0900 Subject: [PATCH 009/414] Bump matplotlib from 3.5.3 to 3.6.0 in /requirements (#729) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.5.3 to 3.6.0. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.5.3...v3.6.0) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 42225b5fbe..2befd0a9e4 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.23.3 scipy == 1.9.1 -matplotlib == 3.5.3 +matplotlib == 3.6.0 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test pytest-xdist == 2.5.0 # For unit test From 33f2fa39dc796ab5a9d5e227cece04ffc8297794 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Oct 2022 07:27:22 +0900 Subject: [PATCH 010/414] Bump mypy from 0.971 to 0.982 in /requirements (#730) Bumps [mypy](https://github.com/python/mypy) from 0.971 to 0.982. - [Release notes](https://github.com/python/mypy/releases) - [Commits](https://github.com/python/mypy/compare/v0.971...v0.982) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2befd0a9e4..a85aa121e6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.6.0 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test pytest-xdist == 2.5.0 # For unit test -mypy == 0.971 # For unit test +mypy == 0.982 # For unit test flake8 == 5.0.4 # For unit test From 1c165262f738b41d91acdb03ca546e82c7313fcc Mon Sep 17 00:00:00 2001 From: Abinash Satapathy Date: Mon, 10 Oct 2022 02:15:43 +0200 Subject: [PATCH 011/414] Update SECURITY.md (#733) Typo correction --- SECURITY.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SECURITY.md b/SECURITY.md index 5047a6fc3d..53dcafa450 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -10,4 +10,4 @@ In this project, we are only support latest code. ## Reporting a Vulnerability -If you find any sequrity related problem, let us know by creating an issue about it. +If you find any security related problem, let us know by creating an issue about it. From 028a0a4d8d9eb53be1291fd0db3930d0c8e351c4 Mon Sep 17 00:00:00 2001 From: Abinash Satapathy Date: Mon, 10 Oct 2022 02:16:31 +0200 Subject: [PATCH 012/414] Update pull_request_template.md (#735) --- .github/pull_request_template.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index c8790ad9ec..b6ac52efa2 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -19,6 +19,6 @@ Again, thanks for contributing! #### CheckList --[] Did you add an unittest for your new example or defect fix? --[] Did you add documents for your new example? --[] All CIs are green? (You can check it after submitting) +- [ ] Did you add an unittest for your new example or defect fix? +- [ ] Did you add documents for your new example? +- [ ] All CIs are green? (You can check it after submitting) From ebdc2d45003c9ce86eaebb1ebfd09d527c7e2eaa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Oct 2022 06:46:55 +0900 Subject: [PATCH 013/414] Bump matplotlib from 3.6.0 to 3.6.1 in /requirements (#736) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.6.0 to 3.6.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.6.0...v3.6.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a85aa121e6..67637bb3e5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.23.3 scipy == 1.9.1 -matplotlib == 3.6.0 +matplotlib == 3.6.1 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test pytest-xdist == 2.5.0 # For unit test From 001efc5935c4c5a3d25c2d5441db838817fa44b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Oct 2022 20:13:00 +0900 Subject: [PATCH 014/414] Bump scipy from 1.9.1 to 1.9.2 in /requirements (#737) Bumps [scipy](https://github.com/scipy/scipy) from 1.9.1 to 1.9.2. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.9.1...v1.9.2) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 67637bb3e5..e2fa5d7546 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.23.3 -scipy == 1.9.1 +scipy == 1.9.2 matplotlib == 3.6.1 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test From bc88e70f7ed53226d9c200a2087ab361a2d8bf6b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Oct 2022 07:02:25 +0900 Subject: [PATCH 015/414] Bump numpy from 1.23.3 to 1.23.4 in /requirements (#738) Bumps [numpy](https://github.com/numpy/numpy) from 1.23.3 to 1.23.4. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.23.3...v1.23.4) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e2fa5d7546..160c043818 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.23.3 +numpy == 1.23.4 scipy == 1.9.2 matplotlib == 3.6.1 cvxpy == 1.2.1 From 381634821511054f50dad6743ae0700d75525c72 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Oct 2022 07:59:09 +0900 Subject: [PATCH 016/414] Bump scipy from 1.9.2 to 1.9.3 in /requirements (#739) Bumps [scipy](https://github.com/scipy/scipy) from 1.9.2 to 1.9.3. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.9.2...v1.9.3) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 160c043818..1170b24088 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.23.4 -scipy == 1.9.2 +scipy == 1.9.3 matplotlib == 3.6.1 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test From 39472e66d217b6980d8ec18431302219b5fe2412 Mon Sep 17 00:00:00 2001 From: Abinash Satapathy Date: Sun, 30 Oct 2022 06:28:58 +0100 Subject: [PATCH 017/414] Update README.md (#732) * Update README.md Updated the sponsors correctly * Update README.md Remove the tag. * Update README.md Updated development references and styled the single line codes in "How to use" section * Update README.md Styled single-line comments using syntax highlighting for markdown --- README.md | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 97a7742dca..b46195f35e 100644 --- a/README.md +++ b/README.md @@ -70,8 +70,9 @@ Python codes for robotics algorithm. * [Contribution](#contribution) * [Citing](#citing) * [Support](#support) - * [Sponsors](#Sponsors) + * [Sponsors](#sponsors) * [JetBrains](#JetBrains) + * [1Password](#1password) * [Authors](#authors) # What is this? @@ -107,15 +108,15 @@ For running each sample code: For development: -- pytest (for unit tests) +- [pytest](https://pytest.org/) (for unit tests) -- pytest-xdist (for parallel unit tests) +- [pytest-xdist](https://pypi.org/project/pytest-xdist/) (for parallel unit tests) -- mypy (for type check) +- [mypy](http://mypy-lang.org/) (for type check) -- sphinx (for document generation) +- [sphinx](https://www.sphinx-doc.org/) (for document generation) -- pycodestyle (for code style check) +- [pycodestyle](https://pypi.org/project/pycodestyle/) (for code style check) # Documentation @@ -131,18 +132,24 @@ All animation gifs are stored here: [AtsushiSakai/PythonRoboticsGifs: Animation 1. Clone this repo. -> git clone https://github.com/AtsushiSakai/PythonRobotics.git + ```terminal + git clone https://github.com/AtsushiSakai/PythonRobotics.git + ``` 2. Install the required libraries. -using conda : +- using conda : -> conda env create -f requirements/environment.yml + ```terminal + conda env create -f requirements/environment.yml + ``` -using pip : +- using pip : -> pip install -r requirements/requirements.txt + ```terminal + pip install -r requirements/requirements.txt + ``` 3. Execute python script in each directory. @@ -614,7 +621,7 @@ If you use this project's code for your academic work, we encourage you to cite If you use this project's code in industry, we'd love to hear from you as well; feel free to reach out to the developers directly. -# Supporting this project +# Supporting this project If you or your company would like to support this project, please consider: @@ -626,9 +633,9 @@ If you or your company would like to support this project, please consider: If you would like to support us in some other way, please contact with creating an issue. -## Sponsors +## Sponsors -### [JetBrains](https://www.jetbrains.com/) +### [JetBrains](https://www.jetbrains.com/) They are providing a free license of their IDEs for this OSS development. From 2b877369a4a9335e5b28e2b8cabfe03c8cbb7405 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Nov 2022 06:15:31 +0900 Subject: [PATCH 018/414] Bump pytest-xdist from 2.5.0 to 3.0.2 in /requirements (#743) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 2.5.0 to 3.0.2. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v2.5.0...v3.0.2) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1170b24088..82598ddd69 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.9.3 matplotlib == 3.6.1 cvxpy == 1.2.1 pytest == 7.1.3 # For unit test -pytest-xdist == 2.5.0 # For unit test +pytest-xdist == 3.0.2 # For unit test mypy == 0.982 # For unit test flake8 == 5.0.4 # For unit test From 2d0fa60fd40398244317491655f6a51462cb73c6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Nov 2022 23:23:52 +0900 Subject: [PATCH 019/414] Bump pytest from 7.1.3 to 7.2.0 in /requirements (#742) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.1.3 to 7.2.0. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.1.3...7.2.0) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 82598ddd69..c8660ebd16 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.23.4 scipy == 1.9.3 matplotlib == 3.6.1 cvxpy == 1.2.1 -pytest == 7.1.3 # For unit test +pytest == 7.2.0 # For unit test pytest-xdist == 3.0.2 # For unit test mypy == 0.982 # For unit test flake8 == 5.0.4 # For unit test From 768df6ffabddc030fdaef3c1668c06ab30d25ba0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Nov 2022 07:27:05 +0900 Subject: [PATCH 020/414] Bump matplotlib from 3.6.1 to 3.6.2 in /requirements (#745) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.6.1 to 3.6.2. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.6.1...v3.6.2) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c8660ebd16..ffaef30d19 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.23.4 scipy == 1.9.3 -matplotlib == 3.6.1 +matplotlib == 3.6.2 cvxpy == 1.2.1 pytest == 7.2.0 # For unit test pytest-xdist == 3.0.2 # For unit test From 8cd5b05fb43aea4f91faf2007b039667b68681a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Nov 2022 08:04:42 +0900 Subject: [PATCH 021/414] Bump cvxpy from 1.2.1 to 1.2.2 in /requirements (#746) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.2.1 to 1.2.2. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.2.1...v1.2.2) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ffaef30d19..cc6ca162c2 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.23.4 scipy == 1.9.3 matplotlib == 3.6.2 -cvxpy == 1.2.1 +cvxpy == 1.2.2 pytest == 7.2.0 # For unit test pytest-xdist == 3.0.2 # For unit test mypy == 0.982 # For unit test From 85e00de888e8bc51ce2af0a0370e4a77d53a56b9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Nov 2022 21:04:55 +0900 Subject: [PATCH 022/414] Bump mypy from 0.982 to 0.990 in /requirements (#744) Bumps [mypy](https://github.com/python/mypy) from 0.982 to 0.990. - [Release notes](https://github.com/python/mypy/releases) - [Commits](https://github.com/python/mypy/compare/v0.982...v0.990) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cc6ca162c2..889d182f78 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.6.2 cvxpy == 1.2.2 pytest == 7.2.0 # For unit test pytest-xdist == 3.0.2 # For unit test -mypy == 0.982 # For unit test +mypy == 0.990 # For unit test flake8 == 5.0.4 # For unit test From b50a1180d819b0d45d9c565326ba18cbd12c3e5d Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 10 Nov 2022 21:29:11 +0900 Subject: [PATCH 023/414] fic mypy ci (#747) --- Mapping/rectangle_fitting/simulator.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Mapping/rectangle_fitting/simulator.py b/Mapping/rectangle_fitting/simulator.py index faca2cb79e..aa32ae1b1f 100644 --- a/Mapping/rectangle_fitting/simulator.py +++ b/Mapping/rectangle_fitting/simulator.py @@ -138,7 +138,3 @@ def ray_casting_filter(theta_l, range_l, angle_resolution): ry.append(range_db[i] * np.sin(t)) return rx, ry - - -if __name__ == '__main__': - main() From 8f14488ec2f243e48222bc87923604a7d46c45af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Nov 2022 07:25:44 +0900 Subject: [PATCH 024/414] Bump mypy from 0.990 to 0.991 in /requirements (#751) Bumps [mypy](https://github.com/python/mypy) from 0.990 to 0.991. - [Release notes](https://github.com/python/mypy/releases) - [Commits](https://github.com/python/mypy/compare/v0.990...v0.991) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 889d182f78..fa20768c46 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.6.2 cvxpy == 1.2.2 pytest == 7.2.0 # For unit test pytest-xdist == 3.0.2 # For unit test -mypy == 0.990 # For unit test +mypy == 0.991 # For unit test flake8 == 5.0.4 # For unit test From bcb2c863eb45ec8c11c1dcfdadcef98ef9e85b6b Mon Sep 17 00:00:00 2001 From: KohMat Date: Sun, 20 Nov 2022 13:19:42 +0900 Subject: [PATCH 025/414] Fix the start state to use the current accel in frent planner(#755) (#756) The robot didn't reach the target velocity when running frenet_optimal_trajectory.py. To fix this, I changed the constraints for determining polynomials that generate longitudinal trajectories. Expressly, I set the initial acceleration to the current acceleration. --- .../frenet_optimal_trajectory.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py index b7d1b8e642..331df36309 100644 --- a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py +++ b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py @@ -116,7 +116,7 @@ def __init__(self): self.c = [] -def calc_frenet_paths(c_speed, c_d, c_d_d, c_d_dd, s0): +def calc_frenet_paths(c_speed, c_accel, c_d, c_d_d, c_d_dd, s0): frenet_paths = [] # generate path to each offset goal @@ -139,7 +139,7 @@ def calc_frenet_paths(c_speed, c_d, c_d_d, c_d_dd, s0): for tv in np.arange(TARGET_SPEED - D_T_S * N_S_SAMPLE, TARGET_SPEED + D_T_S * N_S_SAMPLE, D_T_S): tfp = copy.deepcopy(fp) - lon_qp = QuarticPolynomial(s0, c_speed, 0.0, tv, 0.0, Ti) + lon_qp = QuarticPolynomial(s0, c_speed, c_accel, tv, 0.0, Ti) tfp.s = [lon_qp.calc_point(t) for t in fp.t] tfp.s_d = [lon_qp.calc_first_derivative(t) for t in fp.t] @@ -225,8 +225,8 @@ def check_paths(fplist, ob): return [fplist[i] for i in ok_ind] -def frenet_optimal_planning(csp, s0, c_speed, c_d, c_d_d, c_d_dd, ob): - fplist = calc_frenet_paths(c_speed, c_d, c_d_d, c_d_dd, s0) +def frenet_optimal_planning(csp, s0, c_speed, c_accel, c_d, c_d_d, c_d_dd, ob): + fplist = calc_frenet_paths(c_speed, c_accel, c_d, c_d_d, c_d_dd, s0) fplist = calc_global_paths(fplist, csp) fplist = check_paths(fplist, ob) @@ -274,6 +274,7 @@ def main(): # initial state c_speed = 10.0 / 3.6 # current speed [m/s] + c_accel = 0.0 # current acceleration [m/ss] c_d = 2.0 # current lateral position [m] c_d_d = 0.0 # current lateral speed [m/s] c_d_dd = 0.0 # current lateral acceleration [m/s] @@ -283,13 +284,14 @@ def main(): for i in range(SIM_LOOP): path = frenet_optimal_planning( - csp, s0, c_speed, c_d, c_d_d, c_d_dd, ob) + csp, s0, c_speed, c_accel, c_d, c_d_d, c_d_dd, ob) s0 = path.s[1] c_d = path.d[1] c_d_d = path.d_d[1] c_d_dd = path.d_dd[1] c_speed = path.s_d[1] + c_accel = path.s_dd[1] if np.hypot(path.x[1] - tx[-1], path.y[1] - ty[-1]) <= 1.0: print("Goal") From 644ce8a5fda39cf8a7fcff4537fe10b3f4bad538 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Nov 2022 10:46:42 +0900 Subject: [PATCH 026/414] Bump numpy from 1.23.4 to 1.23.5 in /requirements (#757) Bumps [numpy](https://github.com/numpy/numpy) from 1.23.4 to 1.23.5. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.23.4...v1.23.5) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index fa20768c46..5e3b4d8caf 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.23.4 +numpy == 1.23.5 scipy == 1.9.3 matplotlib == 3.6.2 cvxpy == 1.2.2 From 405f3e79341356c4fa3f78dbe37bcd87f12d155b Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 28 Nov 2022 21:27:22 +0900 Subject: [PATCH 027/414] Update gh-pages.yml (#758) --- .github/workflows/gh-pages.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index e51197cb37..bf46598633 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Setup python - uses: actions/setup-python@v2 + uses: actions/setup-python@v3 - name: Checkout uses: actions/checkout@master with: @@ -26,4 +26,4 @@ jobs: uses: ad-m/github-push-action@master with: github_token: ${{ secrets.GITHUB_TOKEN }} - branch: gh-pages \ No newline at end of file + branch: gh-pages From 727f32cb8b1a144ae1b6b167f2c2d2ebee61851b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Dec 2022 07:29:38 +0900 Subject: [PATCH 028/414] Bump pytest-xdist from 3.0.2 to 3.1.0 in /requirements (#760) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.0.2 to 3.1.0. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.0.2...v3.1.0) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5e3b4d8caf..b5e9d37b81 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.9.3 matplotlib == 3.6.2 cvxpy == 1.2.2 pytest == 7.2.0 # For unit test -pytest-xdist == 3.0.2 # For unit test +pytest-xdist == 3.1.0 # For unit test mypy == 0.991 # For unit test flake8 == 5.0.4 # For unit test From 5ac66d71dd3e4cf06d7b32782af9d2e911633a07 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Dec 2022 07:30:26 +0900 Subject: [PATCH 029/414] Bump numpy from 1.23.5 to 1.24.0 in /requirements (#763) Bumps [numpy](https://github.com/numpy/numpy) from 1.23.5 to 1.24.0. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.23.5...v1.24.0) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b5e9d37b81..47d9eefab5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.23.5 +numpy == 1.24.0 scipy == 1.9.3 matplotlib == 3.6.2 cvxpy == 1.2.2 From 6d27738e3d243cf758d6eaa16844504bb6eae2ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Dec 2022 08:02:56 +0900 Subject: [PATCH 030/414] Bump numpy from 1.24.0 to 1.24.1 in /requirements (#765) Bumps [numpy](https://github.com/numpy/numpy) from 1.24.0 to 1.24.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.24.0...v1.24.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 47d9eefab5..3f68d9ab4c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.24.0 +numpy == 1.24.1 scipy == 1.9.3 matplotlib == 3.6.2 cvxpy == 1.2.2 From af39afe05cfec0ef202cc1542dfe0103c130ed3b Mon Sep 17 00:00:00 2001 From: Lingkang Zhang <36938500+zlingkang@users.noreply.github.com> Date: Fri, 30 Dec 2022 15:38:43 -0800 Subject: [PATCH 031/414] add axes3d to figure (#766) --- Bipedal/bipedal_planner/bipedal_planner.py | 1 + 1 file changed, 1 insertion(+) diff --git a/Bipedal/bipedal_planner/bipedal_planner.py b/Bipedal/bipedal_planner/bipedal_planner.py index 9757fc42d6..8ca5ffcf78 100644 --- a/Bipedal/bipedal_planner/bipedal_planner.py +++ b/Bipedal/bipedal_planner/bipedal_planner.py @@ -51,6 +51,7 @@ def walk(self, t_sup=0.8, z_c=0.8, a=10, b=1, plot=False): if plot: fig = plt.figure() ax = Axes3D(fig) + fig.add_axes(ax) com_trajectory_for_plot = [] px, py = 0.0, 0.0 # reference footstep position From 1d683435c6d7c9eea2895b3f1441f00772f5ab32 Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Sat, 31 Dec 2022 07:51:17 +0100 Subject: [PATCH 032/414] Undefined name: import sys for line 188 (#764) --- PathPlanning/RRT/rrt_with_sobol_sampler.py | 1 + 1 file changed, 1 insertion(+) diff --git a/PathPlanning/RRT/rrt_with_sobol_sampler.py b/PathPlanning/RRT/rrt_with_sobol_sampler.py index 73488210a7..06e0c04c68 100644 --- a/PathPlanning/RRT/rrt_with_sobol_sampler.py +++ b/PathPlanning/RRT/rrt_with_sobol_sampler.py @@ -28,6 +28,7 @@ import math import random +import sys import matplotlib.pyplot as plt import numpy as np From 2916273e6239c70a12b1e46845a26bd49a727133 Mon Sep 17 00:00:00 2001 From: Andrey Bozhko Date: Sun, 1 Jan 2023 05:44:34 -0600 Subject: [PATCH 033/414] Update loop conditions to be more idiomatic; fix missing imports (#768) * missing import * use while true --- Mapping/rectangle_fitting/rectangle_fitting.py | 2 +- PathPlanning/AStar/a_star.py | 2 +- PathPlanning/BidirectionalAStar/bidirectional_a_star.py | 2 +- .../bidirectional_breadth_first_search.py | 2 +- PathPlanning/BreadthFirstSearch/breadth_first_search.py | 2 +- PathPlanning/DepthFirstSearch/depth_first_search.py | 2 +- PathPlanning/Dijkstra/dijkstra.py | 2 +- PathPlanning/GreedyBestFirstSearch/greedy_best_first_search.py | 2 +- PathPlanning/HybridAStar/dynamic_programming_heuristic.py | 2 +- tests/test_grid_map_lib.py | 1 + 10 files changed, 10 insertions(+), 9 deletions(-) diff --git a/Mapping/rectangle_fitting/rectangle_fitting.py b/Mapping/rectangle_fitting/rectangle_fitting.py index 124e48fe76..f54ada1e3a 100644 --- a/Mapping/rectangle_fitting/rectangle_fitting.py +++ b/Mapping/rectangle_fitting/rectangle_fitting.py @@ -162,7 +162,7 @@ def _adoptive_range_segmentation(self, ox, oy): S.append(C) # Merge cluster - while 1: + while True: no_change = True for (c1, c2) in list(itertools.permutations(range(len(S)), 2)): if S[c1] & S[c2]: diff --git a/PathPlanning/AStar/a_star.py b/PathPlanning/AStar/a_star.py index eb2672a9ce..6d20350432 100644 --- a/PathPlanning/AStar/a_star.py +++ b/PathPlanning/AStar/a_star.py @@ -71,7 +71,7 @@ def planning(self, sx, sy, gx, gy): open_set, closed_set = dict(), dict() open_set[self.calc_grid_index(start_node)] = start_node - while 1: + while True: if len(open_set) == 0: print("Open set is empty..") break diff --git a/PathPlanning/BidirectionalAStar/bidirectional_a_star.py b/PathPlanning/BidirectionalAStar/bidirectional_a_star.py index ecb875f410..5387cca1ad 100644 --- a/PathPlanning/BidirectionalAStar/bidirectional_a_star.py +++ b/PathPlanning/BidirectionalAStar/bidirectional_a_star.py @@ -75,7 +75,7 @@ def planning(self, sx, sy, gx, gy): current_B = goal_node meet_point_A, meet_point_B = None, None - while 1: + while True: if len(open_set_A) == 0: print("Open set A is empty..") break diff --git a/PathPlanning/BidirectionalBreadthFirstSearch/bidirectional_breadth_first_search.py b/PathPlanning/BidirectionalBreadthFirstSearch/bidirectional_breadth_first_search.py index dd4282573e..60a8c5e170 100644 --- a/PathPlanning/BidirectionalBreadthFirstSearch/bidirectional_breadth_first_search.py +++ b/PathPlanning/BidirectionalBreadthFirstSearch/bidirectional_breadth_first_search.py @@ -76,7 +76,7 @@ def planning(self, sx, sy, gx, gy): meet_point_A, meet_point_B = None, None - while 1: + while True: if len(open_set_A) == 0: print("Open set A is empty..") break diff --git a/PathPlanning/BreadthFirstSearch/breadth_first_search.py b/PathPlanning/BreadthFirstSearch/breadth_first_search.py index 406e5eb51f..ff662170e7 100644 --- a/PathPlanning/BreadthFirstSearch/breadth_first_search.py +++ b/PathPlanning/BreadthFirstSearch/breadth_first_search.py @@ -67,7 +67,7 @@ def planning(self, sx, sy, gx, gy): open_set, closed_set = dict(), dict() open_set[self.calc_grid_index(nstart)] = nstart - while 1: + while True: if len(open_set) == 0: print("Open set is empty..") break diff --git a/PathPlanning/DepthFirstSearch/depth_first_search.py b/PathPlanning/DepthFirstSearch/depth_first_search.py index 523225ee42..6922b8cbad 100644 --- a/PathPlanning/DepthFirstSearch/depth_first_search.py +++ b/PathPlanning/DepthFirstSearch/depth_first_search.py @@ -67,7 +67,7 @@ def planning(self, sx, sy, gx, gy): open_set, closed_set = dict(), dict() open_set[self.calc_grid_index(nstart)] = nstart - while 1: + while True: if len(open_set) == 0: print("Open set is empty..") break diff --git a/PathPlanning/Dijkstra/dijkstra.py b/PathPlanning/Dijkstra/dijkstra.py index 9956dff326..004e49f15a 100644 --- a/PathPlanning/Dijkstra/dijkstra.py +++ b/PathPlanning/Dijkstra/dijkstra.py @@ -71,7 +71,7 @@ def planning(self, sx, sy, gx, gy): open_set, closed_set = dict(), dict() open_set[self.calc_index(start_node)] = start_node - while 1: + while True: c_id = min(open_set, key=lambda o: open_set[o].cost) current = open_set[c_id] diff --git a/PathPlanning/GreedyBestFirstSearch/greedy_best_first_search.py b/PathPlanning/GreedyBestFirstSearch/greedy_best_first_search.py index f2416fba98..b259beb870 100644 --- a/PathPlanning/GreedyBestFirstSearch/greedy_best_first_search.py +++ b/PathPlanning/GreedyBestFirstSearch/greedy_best_first_search.py @@ -67,7 +67,7 @@ def planning(self, sx, sy, gx, gy): open_set, closed_set = dict(), dict() open_set[self.calc_grid_index(nstart)] = nstart - while 1: + while True: if len(open_set) == 0: print("Open set is empty..") break diff --git a/PathPlanning/HybridAStar/dynamic_programming_heuristic.py b/PathPlanning/HybridAStar/dynamic_programming_heuristic.py index cc635260d6..8a78b15d5f 100644 --- a/PathPlanning/HybridAStar/dynamic_programming_heuristic.py +++ b/PathPlanning/HybridAStar/dynamic_programming_heuristic.py @@ -65,7 +65,7 @@ def calc_distance_heuristic(gx, gy, ox, oy, resolution, rr): open_set[calc_index(goal_node, x_w, min_x, min_y)] = goal_node priority_queue = [(0, calc_index(goal_node, x_w, min_x, min_y))] - while 1: + while True: if not priority_queue: break cost, c_id = heapq.heappop(priority_queue) diff --git a/tests/test_grid_map_lib.py b/tests/test_grid_map_lib.py index 8ae142b003..92ca67e297 100644 --- a/tests/test_grid_map_lib.py +++ b/tests/test_grid_map_lib.py @@ -1,4 +1,5 @@ from Mapping.grid_map_lib.grid_map_lib import GridMap +import conftest import numpy as np From e7710546c18f8f4cd076c030939e77afc86d43c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Jan 2023 07:52:07 +0900 Subject: [PATCH 034/414] Bump cvxpy from 1.2.2 to 1.2.3 in /requirements (#771) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.2.2 to 1.2.3. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.2.2...v1.2.3) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3f68d9ab4c..9a990856f1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.24.1 scipy == 1.9.3 matplotlib == 3.6.2 -cvxpy == 1.2.2 +cvxpy == 1.2.3 pytest == 7.2.0 # For unit test pytest-xdist == 3.1.0 # For unit test mypy == 0.991 # For unit test From 3dc96997da60116ae5bc825d2e67adefe5ff7dc8 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 3 Jan 2023 22:27:55 +0900 Subject: [PATCH 035/414] Adding point cloud sampling examples (#770) --- .../point_cloud_sampling.py | 168 ++++++++++++++++++ docs/modules/mapping/mapping_main.rst | 1 + .../farthest_point_sampling.png | Bin 0 -> 253175 bytes .../point_cloud_sampling_main.rst | 70 ++++++++ .../poisson_disk_sampling.png | Bin 0 -> 265198 bytes .../voxel_point_sampling.png | Bin 0 -> 250443 bytes tests/test_point_cloud_sampling.py | 15 ++ 7 files changed, 254 insertions(+) create mode 100644 Mapping/point_cloud_sampling/point_cloud_sampling.py create mode 100644 docs/modules/mapping/point_cloud_sampling/farthest_point_sampling.png create mode 100644 docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst create mode 100644 docs/modules/mapping/point_cloud_sampling/poisson_disk_sampling.png create mode 100644 docs/modules/mapping/point_cloud_sampling/voxel_point_sampling.png create mode 100644 tests/test_point_cloud_sampling.py diff --git a/Mapping/point_cloud_sampling/point_cloud_sampling.py b/Mapping/point_cloud_sampling/point_cloud_sampling.py new file mode 100644 index 0000000000..df7cde41c0 --- /dev/null +++ b/Mapping/point_cloud_sampling/point_cloud_sampling.py @@ -0,0 +1,168 @@ +""" +Point cloud sampling example codes. This code supports +- Voxel point sampling +- Farthest point sampling +- Poisson disk sampling + +""" +import matplotlib.pyplot as plt +import numpy as np +import numpy.typing as npt +from collections import defaultdict + +do_plot = True + + +def voxel_point_sampling(original_points: npt.NDArray, voxel_size: float): + """ + Voxel Point Sampling function. + This function sample N-dimensional points with voxel grid. + Points in a same voxel grid will be merged by mean operation for sampling. + + Parameters + ---------- + original_points : (M, N) N-dimensional points for sampling. + The number of points is M. + voxel_size : voxel grid size + + Returns + ------- + sampled points (M', N) + """ + voxel_dict = defaultdict(list) + for i in range(original_points.shape[0]): + xyz = original_points[i, :] + xyz_index = tuple(xyz // voxel_size) + voxel_dict[xyz_index].append(xyz) + points = np.vstack([np.mean(v, axis=0) for v in voxel_dict.values()]) + return points + + +def farthest_point_sampling(orig_points: npt.NDArray, + n_points: int, seed: int): + """ + Farthest point sampling function + This function sample N-dimensional points with the farthest point policy. + + Parameters + ---------- + orig_points : (M, N) N-dimensional points for sampling. + The number of points is M. + n_points : number of points for sampling + seed : random seed number + + Returns + ------- + sampled points (n_points, N) + + """ + rng = np.random.default_rng(seed) + n_orig_points = orig_points.shape[0] + first_point_id = rng.choice(range(n_orig_points)) + min_distances = np.ones(n_orig_points) * float("inf") + selected_ids = [first_point_id] + while len(selected_ids) < n_points: + base_point = orig_points[selected_ids[-1], :] + distances = np.linalg.norm(orig_points[np.newaxis, :] - base_point, + axis=2).flatten() + min_distances = np.minimum(min_distances, distances) + distances_rank = np.argsort(-min_distances) # Farthest order + for i in distances_rank: # From the farthest point + if i not in selected_ids: # if not selected yes, select it + selected_ids.append(i) + break + return orig_points[selected_ids, :] + + +def poisson_disk_sampling(orig_points: npt.NDArray, n_points: int, + min_distance: float, seed: int, MAX_ITER=1000): + """ + Poisson disk sampling function + This function sample N-dimensional points randomly until the number of + points keeping minimum distance between selected points. + + Parameters + ---------- + orig_points : (M, N) N-dimensional points for sampling. + The number of points is M. + n_points : number of points for sampling + min_distance : minimum distance between selected points. + seed : random seed number + MAX_ITER : Maximum number of iteration. Default is 1000. + + Returns + ------- + sampled points (n_points or less, N) + """ + rng = np.random.default_rng(seed) + selected_id = rng.choice(range(orig_points.shape[0])) + selected_ids = [selected_id] + loop = 0 + while len(selected_ids) < n_points and loop <= MAX_ITER: + selected_id = rng.choice(range(orig_points.shape[0])) + base_point = orig_points[selected_id, :] + distances = np.linalg.norm( + orig_points[np.newaxis, selected_ids] - base_point, + axis=2).flatten() + if min(distances) >= min_distance: + selected_ids.append(selected_id) + loop += 1 + if len(selected_ids) != n_points: + print("Could not find the specified number of points...") + + return orig_points[selected_ids, :] + + +def plot_sampled_points(original_points, sampled_points, method_name): + fig = plt.figure() + ax = fig.add_subplot(projection='3d') + ax.scatter(original_points[:, 0], original_points[:, 1], + original_points[:, 2], marker=".", label="Original points") + ax.scatter(sampled_points[:, 0], sampled_points[:, 1], + sampled_points[:, 2], marker="o", + label="Filtered points") + plt.legend() + plt.title(method_name) + plt.axis("equal") + + +def main(): + n_points = 1000 + seed = 1234 + rng = np.random.default_rng(seed) + + x = rng.normal(0.0, 10.0, n_points) + y = rng.normal(0.0, 1.0, n_points) + z = rng.normal(0.0, 10.0, n_points) + original_points = np.vstack((x, y, z)).T + print(f"{original_points.shape=}") + print("Voxel point sampling") + voxel_size = 20.0 + voxel_sampling_points = voxel_point_sampling(original_points, voxel_size) + print(f"{voxel_sampling_points.shape=}") + + print("Farthest point sampling") + n_points = 20 + farthest_sampling_points = farthest_point_sampling(original_points, + n_points, seed) + print(f"{farthest_sampling_points.shape=}") + + print("Poisson disk sampling") + n_points = 20 + min_distance = 10.0 + poisson_disk_points = poisson_disk_sampling(original_points, n_points, + min_distance, seed) + print(f"{poisson_disk_points.shape=}") + + if do_plot: + plot_sampled_points(original_points, voxel_sampling_points, + "Voxel point sampling") + plot_sampled_points(original_points, farthest_sampling_points, + "Farthest point sampling") + plot_sampled_points(original_points, poisson_disk_points, + "poisson disk sampling") + plt.show() + + +if __name__ == '__main__': + main() diff --git a/docs/modules/mapping/mapping_main.rst b/docs/modules/mapping/mapping_main.rst index 0f7ec549dc..14a7cce70d 100644 --- a/docs/modules/mapping/mapping_main.rst +++ b/docs/modules/mapping/mapping_main.rst @@ -9,6 +9,7 @@ Mapping gaussian_grid_map/gaussian_grid_map ray_casting_grid_map/ray_casting_grid_map lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial + point_cloud_sampling/point_cloud_sampling k_means_object_clustering/k_means_object_clustering circle_fitting/circle_fitting rectangle_fitting/rectangle_fitting diff --git a/docs/modules/mapping/point_cloud_sampling/farthest_point_sampling.png b/docs/modules/mapping/point_cloud_sampling/farthest_point_sampling.png new file mode 100644 index 0000000000000000000000000000000000000000..6024a5f2d5a274177104590ff2b689231b57323d GIT binary patch literal 253175 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%0D2%2dpP9!thL=YxO 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

mK*=%P*gxpw`yb#@bxkKmXT% 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 literal 0 HcmV?d00001 diff --git a/docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst b/docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst new file mode 100644 index 0000000000..cbb5652f56 --- /dev/null +++ b/docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst @@ -0,0 +1,70 @@ +.. _point_cloud_sampling: + +Point cloud Sampling +---------------------- + +This sections explains point cloud sampling algorithms in PythonRobotics. + +Point clouds are two-dimensional and three-dimensional based data +acquired by external sensors like LIDAR, cameras, etc. +In general, Point Cloud data is very large in number of data. +So, if you process all the data, computation time might become an issue. + +Point cloud sampling is a technique for solving this computational complexity +issue by extracting only representative point data and thinning the point +cloud data without compromising the performance of processing using the point +cloud data. + +Voxel Point Sampling +~~~~~~~~~~~~~~~~~~~~~~~~ +.. figure:: voxel_point_sampling.png + +Voxel grid sampling is a method of reducing point cloud data by using the +`Voxel grids `_ which is regular grids +in three-dimensional space. + +This method determines which each point is in a grid, and replaces the point +clouds that are in the same Voxel with their average to reduce the number of +points. + +API +===== + +.. autofunction:: Mapping.point_cloud_sampling.point_cloud_sampling.voxel_point_sampling + + +Farthest Point Sampling +~~~~~~~~~~~~~~~~~~~~~~~~~ +.. figure:: farthest_point_sampling.png + +Farthest Point Sampling is a point cloud sampling method by a specified +number of points so that the distance between points is as far from as +possible. + +This method is useful for machine learning and other situations where +you want to obtain a specified number of points from point cloud. + +API +===== + +.. autofunction:: Mapping.point_cloud_sampling.point_cloud_sampling.farthest_point_sampling + +Poisson Disk Sampling +~~~~~~~~~~~~~~~~~~~~~~~~~ +.. figure:: poisson_disk_sampling.png + +Poisson disk sample is a point cloud sampling method by a specified +number of points so that the algorithm selects points where the distance +from selected points is greater than a certain distance. + +Although this method does not have good performance comparing the Farthest +distance sample where each point is distributed farther from each other, +this is suitable for real-time processing because of its fast computation time. + +API +===== + +.. autofunction:: Mapping.point_cloud_sampling.point_cloud_sampling.poisson_disk_sampling + + + diff --git a/docs/modules/mapping/point_cloud_sampling/poisson_disk_sampling.png b/docs/modules/mapping/point_cloud_sampling/poisson_disk_sampling.png new file mode 100644 index 0000000000000000000000000000000000000000..6863c9e0469014acbf371a911a67cb50d30da41d GIT binary patch literal 265198 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�ANvPU)SRs$s`h4T-DV zrf#C8{$6R}X!R;d%(yk$ehcw|g`#DzPD?##^349E%LEqhm1BzvXYJLF_IodtKvDF! z8`sZ$gTh<)x{BX6agCo^5|TQEd~fFDR@OxtO=j9uB?*r~8Vsf3WSP4qa? zhg=G^e4W8LGJqkwGNI;YZ|5}M77Ej#?fwxvzz*?&|M^msQuL!r%@`cPsoi#5>>c$`nKP=U}|fp*zmq93ia>mH%j}@ z%mmMvBv=NVVeP~GKe4D1>4~jTU$afzkWY?Z%QJ4GNXC7oHT%tK(IabLUsLfSEEykJ zoj$G{dtu3&lH5i-k$%%U-5UO^{epmy9ab8PMi9O5k`a9wob65h7Bg?A-@WX}Y@H7W z;ofe$rnC3{e)0G3e zfXG2{ZWO>g*D|LVt8)fhaY2Gup#42;cOE^CK(_=GY5Bh21qvdWYc^b%#t5@0^hVTY z*@hczy_pGdamM2Xz5Ct#zQIRA*>y`oQ$gXo$^KfAn!*E zN-QReRS*mGplt^JqglYlpZc0sC-ya`Z96NmqQj z#ef$;OoHfhSjKnEdKP6=Dtj_o&qsxFQ6GPzr4BTQcEY<|rrN->nj(^~?#Hu%A5@Im zE~6xrg}@7lG|zB+wl&TE2sjT(j*IM7q^vmAKLe!#JM={##87aqs8^LSfA@g`t68X9 zuPIfH6f1PHN;%gVe8h6+O-pS4g=B6DNZf(8jLAq8+yrsh)+4Pf0@~<3k@baiCw^(x z8YQF!4L@>+bep9u3WLm0Vw8V*%5KDurymlwf?APA3CUWX+6bz@_Gg(}J;3$+q0+uG zjVR42-JwzGiz3;p^sQAOfll7wxxDGW;P=?-{y*L7ys4v%dWHr>lPR8YynpM^+l*Wj zX`A_<5_Ylu@AiL{Fkiev)N??klAjF_DjH1#AI@?&f{^i8<_G^9uJncf2d-qhUXq7M zy%&Yp5}(Wi^_+uXV-9e;%y>2iL5W%OK}uEAtnXh-kUYJj&~qKLpT?POB_khu z+#werMQN|(@Go*zAdCOt*(trRY5-QH*R;#d;VVLvgQ~bX8impMDoC3f+@s{8)_SCs zt|bO**IR;5@Dv`jYt4_buDG(qRWdjSZ=mY`Q7CaFJQ?*wS0z*!Yii*VPI^8``co!R zGu}dp!`_uzsfqM(#IOaKZ+HkI4Hh-m`zm| zw`)^9=SaQ_ezUk?OaQeDWQT}HFi!sT8-*%FdT?X4&s#A!8`?zFTeG@C$|?xgqCgGSxA zrS^r#gyz=U!?Z8a=g|VIr3y?jvar5CU^Mj-6U|hzXA2P!){;Rp{d&b1x*uPT96X;8 zc~O%ac9N%a>`&;vUD}O1lt4$^?$oq2vnj5g#W&!S@@_nvbxrkwxtl}ny5JMH`4-Ek zbrq!bQzA{8fu>bq!AvS~qHoaGNFQk3LBbF>j*Scf?b!|Tyc`EMs2;R$>vf)SPaO7g z>QLiiM&T{Xpfk0HhMrX3f*{-ngnWmNAjM^&#Rk?~X=cZvOlsM-TRNA*dRX=JE7^%( z%!s3hg%*{6cxwB888<(k=3nqe17FC!I_Akt4hafIrn3+2YQAzHHmwr^bXKwlC!@OT zstmE>{~Q3zzz_gho(2*c#Onr-OghhB1&5M2E8 zUnCXnh^$f%w&E{*A)xYNg?P@=lBC}ddW;$5^ogpzCar}cN^m!2aUiW&k_~#&P;dG> z2@dk*w+$`(| z_D^oBxAD-!=htZca)fzeEWgIQ4Aqbn@Nfty|^)8kT&^!gC*;BvOG4d zRSm4x5a+pDxq+SR8wr;7P?mwKp9KnwEcELWp*NaFr-QLiP)sZrxbrdVJ)`_Y2_sbNP&9P87i)Z{`*x*DfGEa{Y(uh`A2VRQ;*~k>+FqM?SipF;!)1U&d8UKsAD&)nZTnAektH z7tU!JV)R@|K;`5I%@q~KlV_E=(a9hLeRvgE7IN}^=*46nQWabx_D$DP6PBxL*`&Db z7^L=n^HnXUb=qZf?DK4cfaprs&2D+qjT$w+QQ-ZB8!+T9R(;c60Rmjo5lgb)7|*F` z(J}gfr$SQX!Br=g#0!u4fS$oK5^8}Wi5o(GUm^K_nEJ}7DA%xS7}5a&X%Hy|X+%Io zY7h_w>5d@;qy(iKhE@;|B&0`>?vA0AMnLKA?r!+*@x1T)-sM_n9e?@E^W66pd+%#s zEOHhYTkBqgelERBk-O7xW|^M*ny3A3g>1wGqsipCw(rLfdxOyR_eP(Z2tv^t%xq z{hcdH-0@Gj_et48D#za5B^bwCL%2|tJM{V=vu&RN5H14^IayAh@~2?sJXIz_`fS&% z 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 LU9I%vSN#41X$q{) literal 0 HcmV?d00001 diff --git a/docs/modules/mapping/point_cloud_sampling/voxel_point_sampling.png b/docs/modules/mapping/point_cloud_sampling/voxel_point_sampling.png new file mode 100644 index 0000000000000000000000000000000000000000..fe1d171f7cd192e4dbf129567c236974b1bf6e89 GIT binary patch literal 250443 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%0D5Byv| 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 QvA~aloRVyz^y_#32jv8rPXGV_ literal 0 HcmV?d00001 diff --git a/tests/test_point_cloud_sampling.py b/tests/test_point_cloud_sampling.py new file mode 100644 index 0000000000..8f6447c69c --- /dev/null +++ b/tests/test_point_cloud_sampling.py @@ -0,0 +1,15 @@ +import conftest # Add root path to sys.path +from Mapping.point_cloud_sampling import point_cloud_sampling as m + + +def test_1(capsys): + m.do_plot = False + m.main() + captured = capsys.readouterr() + assert "voxel_sampling_points.shape=(27, 3)" in captured.out + assert "farthest_sampling_points.shape=(20, 3)" in captured.out + assert "poisson_disk_points.shape=(20, 3)" in captured.out + + +if __name__ == '__main__': + conftest.run_this_test(__file__) From ad4067df891b2d65c22f4cbf75cc0d16f5584612 Mon Sep 17 00:00:00 2001 From: U S A M A H <39458672+usamah1@users.noreply.github.com> Date: Sun, 8 Jan 2023 13:04:51 +0000 Subject: [PATCH 036/414] Change 'Path is find!' to 'Path found!' (#773) Minor - correct grammatical error :) --- PathPlanning/AStar/a_star_searching_from_two_side.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/AStar/a_star_searching_from_two_side.py b/PathPlanning/AStar/a_star_searching_from_two_side.py index 0318970cc8..822f5ea500 100644 --- a/PathPlanning/AStar/a_star_searching_from_two_side.py +++ b/PathPlanning/AStar/a_star_searching_from_two_side.py @@ -267,7 +267,7 @@ def draw_control(org_closed, goal_closed, flag, start, end, bound, obstacle): if node_intersect: # a path is find path = get_path(org_closed, goal_closed, node_intersect[0]) stop_loop = 1 - print('Path is find!') + print('Path found!') if show_animation: # draw the path plt.plot(path[:, 0], path[:, 1], '-r') plt.title('Robot Arrived', size=20, loc='center') From 98d5851c4da12bdb7c500682e32cfb5277adc782 Mon Sep 17 00:00:00 2001 From: Kadir Haspalamutgil <31936408+kadirhas@users.noreply.github.com> Date: Sun, 8 Jan 2023 15:46:46 +0100 Subject: [PATCH 037/414] Utilize numpy to reduce calculation time (#767) * Utilize numpy to reduce calculation time Change-Id: I6e421a1c2524a3d8f8875121a1a6d2ed832c3150 * styling updates to follow flake8 Change-Id: I909d49b40e6792efcb796846c97a0d984471d3c9 * improves readabilty for d_star_lite Change-Id: Ic329c2140f2200b49feeb03c588d7a805b96cbdc * removes self.detected_obstacles Change-Id: I4a0f2a424f17f44de3b444cb9c2e8e715d761d34 * styling for flake8 Change-Id: Id55c5972cbe76a2f6a69527dbf770f9bdf059109 Co-authored-by: Kadir Haspalamutgil --- PathPlanning/DStarLite/d_star_lite.py | 95 +++++++++++++++++---------- 1 file changed, 62 insertions(+), 33 deletions(-) diff --git a/PathPlanning/DStarLite/d_star_lite.py b/PathPlanning/DStarLite/d_star_lite.py index c250e38f91..86e777d7b7 100644 --- a/PathPlanning/DStarLite/d_star_lite.py +++ b/PathPlanning/DStarLite/d_star_lite.py @@ -12,6 +12,7 @@ import math import matplotlib.pyplot as plt import random +import numpy as np show_animation = True pause_time = 0.001 @@ -62,32 +63,40 @@ def __init__(self, ox: list, oy: list): self.y_max = int(abs(max(oy) - self.y_min_world)) self.obstacles = [Node(x - self.x_min_world, y - self.y_min_world) for x, y in zip(ox, oy)] + self.obstacles_xy = np.array( + [[obstacle.x, obstacle.y] for obstacle in self.obstacles] + ) self.start = Node(0, 0) self.goal = Node(0, 0) self.U = list() # type: ignore self.km = 0.0 self.kold = 0.0 - self.rhs = list() # type: ignore - self.g = list() # type: ignore - self.detected_obstacles = list() # type: ignore + self.rhs = self.create_grid(float("inf")) + self.g = self.create_grid(float("inf")) + self.detected_obstacles_xy = np.empty((0, 2)) + self.xy = np.empty((0, 2)) if show_animation: self.detected_obstacles_for_plotting_x = list() # type: ignore self.detected_obstacles_for_plotting_y = list() # type: ignore + self.initialized = False def create_grid(self, val: float): - grid = list() - for _ in range(0, self.x_max): - grid_row = list() - for _ in range(0, self.y_max): - grid_row.append(val) - grid.append(grid_row) - return grid + return np.full((self.x_max, self.y_max), val) def is_obstacle(self, node: Node): - return any([compare_coordinates(node, obstacle) - for obstacle in self.obstacles]) or \ - any([compare_coordinates(node, obstacle) - for obstacle in self.detected_obstacles]) + x = np.array([node.x]) + y = np.array([node.y]) + obstacle_x_equal = self.obstacles_xy[:, 0] == x + obstacle_y_equal = self.obstacles_xy[:, 1] == y + is_in_obstacles = (obstacle_x_equal & obstacle_y_equal).any() + + is_in_detected_obstacles = False + if self.detected_obstacles_xy.shape[0] > 0: + is_x_equal = self.detected_obstacles_xy[:, 0] == x + is_y_equal = self.detected_obstacles_xy[:, 1] == y + is_in_detected_obstacles = (is_x_equal & is_y_equal).any() + + return is_in_obstacles or is_in_detected_obstacles def c(self, node1: Node, node2: Node): if self.is_obstacle(node2): @@ -139,13 +148,16 @@ def initialize(self, start: Node, goal: Node): self.start.y = start.y - self.y_min_world self.goal.x = goal.x - self.x_min_world self.goal.y = goal.y - self.y_min_world - self.U = list() # Would normally be a priority queue - self.km = 0.0 - self.rhs = self.create_grid(math.inf) - self.g = self.create_grid(math.inf) - self.rhs[self.goal.x][self.goal.y] = 0 - self.U.append((self.goal, self.calculate_key(self.goal))) - self.detected_obstacles = list() + if not self.initialized: + self.initialized = True + print('Initializing') + self.U = list() # Would normally be a priority queue + self.km = 0.0 + self.rhs = self.create_grid(math.inf) + self.g = self.create_grid(math.inf) + self.rhs[self.goal.x][self.goal.y] = 0 + self.U.append((self.goal, self.calculate_key(self.goal))) + self.detected_obstacles_xy = np.empty((0, 2)) def update_vertex(self, u: Node): if not compare_coordinates(u, self.goal): @@ -167,26 +179,33 @@ def compare_keys(self, key_pair1: tuple[float, float], def compute_shortest_path(self): self.U.sort(key=lambda x: x[1]) - while (len(self.U) > 0 and - self.compare_keys(self.U[0][1], - self.calculate_key(self.start))) or \ - self.rhs[self.start.x][self.start.y] != \ - self.g[self.start.x][self.start.y]: + has_elements = len(self.U) > 0 + start_key_not_updated = self.compare_keys( + self.U[0][1], self.calculate_key(self.start) + ) + rhs_not_equal_to_g = self.rhs[self.start.x][self.start.y] != \ + self.g[self.start.x][self.start.y] + while has_elements and start_key_not_updated or rhs_not_equal_to_g: self.kold = self.U[0][1] u = self.U[0][0] self.U.pop(0) if self.compare_keys(self.kold, self.calculate_key(u)): self.U.append((u, self.calculate_key(u))) self.U.sort(key=lambda x: x[1]) - elif self.g[u.x][u.y] > self.rhs[u.x][u.y]: - self.g[u.x][u.y] = self.rhs[u.x][u.y] + elif (self.g[u.x, u.y] > self.rhs[u.x, u.y]).any(): + self.g[u.x, u.y] = self.rhs[u.x, u.y] for s in self.pred(u): self.update_vertex(s) else: - self.g[u.x][u.y] = math.inf + self.g[u.x, u.y] = math.inf for s in self.pred(u) + [u]: self.update_vertex(s) self.U.sort(key=lambda x: x[1]) + start_key_not_updated = self.compare_keys( + self.U[0][1], self.calculate_key(self.start) + ) + rhs_not_equal_to_g = self.rhs[self.start.x][self.start.y] != \ + self.g[self.start.x][self.start.y] def detect_changes(self): changed_vertices = list() @@ -196,7 +215,12 @@ def detect_changes(self): compare_coordinates(spoofed_obstacle, self.goal): continue changed_vertices.append(spoofed_obstacle) - self.detected_obstacles.append(spoofed_obstacle) + self.detected_obstacles_xy = np.concatenate( + ( + self.detected_obstacles_xy, + [[spoofed_obstacle.x, spoofed_obstacle.y]] + ) + ) if show_animation: self.detected_obstacles_for_plotting_x.append( spoofed_obstacle.x + self.x_min_world) @@ -210,14 +234,19 @@ def detect_changes(self): # Allows random generation of obstacles random.seed() if random.random() > 1 - p_create_random_obstacle: - x = random.randint(0, self.x_max) - y = random.randint(0, self.y_max) + x = random.randint(0, self.x_max - 1) + y = random.randint(0, self.y_max - 1) new_obs = Node(x, y) if compare_coordinates(new_obs, self.start) or \ compare_coordinates(new_obs, self.goal): return changed_vertices changed_vertices.append(Node(x, y)) - self.detected_obstacles.append(Node(x, y)) + self.detected_obstacles_xy = np.concatenate( + ( + self.detected_obstacles_xy, + [[x, y]] + ) + ) if show_animation: self.detected_obstacles_for_plotting_x.append(x + self.x_min_world) From 0f50d84ce6493ac192de9a743f6b51485dff0bd5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Jan 2023 07:04:10 +0900 Subject: [PATCH 038/414] Bump scipy from 1.9.3 to 1.10.0 in /requirements (#775) Bumps [scipy](https://github.com/scipy/scipy) from 1.9.3 to 1.10.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.9.3...v1.10.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9a990856f1..b613447ba7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.24.1 -scipy == 1.9.3 +scipy == 1.10.0 matplotlib == 3.6.2 cvxpy == 1.2.3 pytest == 7.2.0 # For unit test From c8b0698a88a7b72f7d3e0725136acb30f514ed52 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Jan 2023 07:05:36 +0900 Subject: [PATCH 039/414] Bump cvxpy from 1.2.3 to 1.3.0 in /requirements (#776) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.2.3 to 1.3.0. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.2.3...v1.3.0) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b613447ba7..3f44e47f21 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.24.1 scipy == 1.10.0 matplotlib == 3.6.2 -cvxpy == 1.2.3 +cvxpy == 1.3.0 pytest == 7.2.0 # For unit test pytest-xdist == 3.1.0 # For unit test mypy == 0.991 # For unit test From 5a16a113c703c9e9a88daf1c681ececb67f7f95c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Jan 2023 07:28:31 +0900 Subject: [PATCH 040/414] Bump matplotlib from 3.6.2 to 3.6.3 in /requirements (#778) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.6.2 to 3.6.3. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.6.2...v3.6.3) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3f44e47f21..a2b9663b2d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.24.1 scipy == 1.10.0 -matplotlib == 3.6.2 +matplotlib == 3.6.3 cvxpy == 1.3.0 pytest == 7.2.0 # For unit test pytest-xdist == 3.1.0 # For unit test From 15ab19688b2f6c03ee91a853f1f8cc9def84d162 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Jan 2023 07:28:49 +0900 Subject: [PATCH 041/414] Bump pytest from 7.2.0 to 7.2.1 in /requirements (#779) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.2.0 to 7.2.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.2.0...7.2.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a2b9663b2d..944c1ce217 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.24.1 scipy == 1.10.0 matplotlib == 3.6.3 cvxpy == 1.3.0 -pytest == 7.2.0 # For unit test +pytest == 7.2.1 # For unit test pytest-xdist == 3.1.0 # For unit test mypy == 0.991 # For unit test flake8 == 5.0.4 # For unit test From 489ee5c0e367a64f19b6cf3875ea6282e78bf889 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 26 Jan 2023 21:56:42 +0900 Subject: [PATCH 042/414] fix github scanning alerts (#784) --- .../two_joint_arm_to_point_control.py | 2 +- Bipedal/bipedal_planner/bipedal_planner.py | 1 - PathPlanning/HybridAStar/dynamic_programming_heuristic.py | 2 +- PathPlanning/InformedRRTStar/informed_rrt_star.py | 5 ++--- PathPlanning/LQRPlanner/lqr_planner.py | 2 +- PathPlanning/LQRRRTStar/lqr_rrt_star.py | 2 +- PathPlanning/RRT/rrt_with_pathsmoothing.py | 6 +++--- PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py | 6 +++--- 8 files changed, 12 insertions(+), 14 deletions(-) diff --git a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py index 9f835c8b32..012a7f72f1 100644 --- a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py +++ b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py @@ -45,7 +45,7 @@ def two_joint_arm(GOAL_TH=0.0, theta1=0.0, theta2=0.0): if x is not None and y is not None: x_prev = x y_prev = y - if np.sqrt(x**2 + y**2) > (l1 + l2): + if np.hypot(x, y) > (l1 + l2): theta2_goal = 0 else: theta2_goal = np.arccos( diff --git a/Bipedal/bipedal_planner/bipedal_planner.py b/Bipedal/bipedal_planner/bipedal_planner.py index 8ca5ffcf78..c34357df67 100644 --- a/Bipedal/bipedal_planner/bipedal_planner.py +++ b/Bipedal/bipedal_planner/bipedal_planner.py @@ -47,7 +47,6 @@ def walk(self, t_sup=0.8, z_c=0.8, a=10, b=1, plot=False): return # set up plotter - com_trajectory_for_plot, ax = None, None if plot: fig = plt.figure() ax = Axes3D(fig) diff --git a/PathPlanning/HybridAStar/dynamic_programming_heuristic.py b/PathPlanning/HybridAStar/dynamic_programming_heuristic.py index 8a78b15d5f..09bcd556a6 100644 --- a/PathPlanning/HybridAStar/dynamic_programming_heuristic.py +++ b/PathPlanning/HybridAStar/dynamic_programming_heuristic.py @@ -150,7 +150,7 @@ def calc_obstacle_map(ox, oy, resolution, vr): y = iy + min_y # print(x, y) for iox, ioy in zip(ox, oy): - d = math.sqrt((iox - x) ** 2 + (ioy - y) ** 2) + d = math.hypot(iox - x, ioy - y) if d <= vr / resolution: obstacle_map[ix][iy] = True break diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index 25c50a0cd2..289e33fe4b 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -192,7 +192,7 @@ def get_path_len(path): @staticmethod def line_cost(node1, node2): - return math.sqrt((node1.x - node2.x) ** 2 + (node1.y - node2.y) ** 2) + return math.hypot(node1.x - node2.x, node1.y - node2.y) @staticmethod def get_nearest_list_index(nodes, rnd): @@ -222,8 +222,7 @@ def rewire(self, newNode, nearInds): for i in nearInds: nearNode = self.node_list[i] - d = math.sqrt((nearNode.x - newNode.x) ** 2 - + (nearNode.y - newNode.y) ** 2) + d = math.hypot(nearNode.x - newNode.x, nearNode.y - newNode.y) s_cost = newNode.cost + d diff --git a/PathPlanning/LQRPlanner/lqr_planner.py b/PathPlanning/LQRPlanner/lqr_planner.py index ba01526a2c..0f58f93ea3 100644 --- a/PathPlanning/LQRPlanner/lqr_planner.py +++ b/PathPlanning/LQRPlanner/lqr_planner.py @@ -47,7 +47,7 @@ def lqr_planning(self, sx, sy, gx, gy, show_animation=True): rx.append(x[0, 0] + gx) ry.append(x[1, 0] + gy) - d = math.sqrt((gx - rx[-1]) ** 2 + (gy - ry[-1]) ** 2) + d = math.hypot(gx - rx[-1], gy - ry[-1]) if d <= self.GOAL_DIST: found_path = True break diff --git a/PathPlanning/LQRRRTStar/lqr_rrt_star.py b/PathPlanning/LQRRRTStar/lqr_rrt_star.py index e3f18a722a..0ed08123ea 100644 --- a/PathPlanning/LQRRRTStar/lqr_rrt_star.py +++ b/PathPlanning/LQRRRTStar/lqr_rrt_star.py @@ -179,7 +179,7 @@ def sample_path(self, wx, wy, step): dx = np.diff(px) dy = np.diff(py) - clen = [math.sqrt(idx ** 2 + idy ** 2) for (idx, idy) in zip(dx, dy)] + clen = [math.hypot(idx, idy) for (idx, idy) in zip(dx, dy)] return px, py, clen diff --git a/PathPlanning/RRT/rrt_with_pathsmoothing.py b/PathPlanning/RRT/rrt_with_pathsmoothing.py index 616c73a697..2ed6a366d1 100644 --- a/PathPlanning/RRT/rrt_with_pathsmoothing.py +++ b/PathPlanning/RRT/rrt_with_pathsmoothing.py @@ -23,7 +23,7 @@ def get_path_length(path): for i in range(len(path) - 1): dx = path[i + 1][0] - path[i][0] dy = path[i + 1][1] - path[i][1] - d = math.sqrt(dx * dx + dy * dy) + d = math.hypot(dx, dy) le += d return le @@ -36,7 +36,7 @@ def get_target_point(path, targetL): for i in range(len(path) - 1): dx = path[i + 1][0] - path[i][0] dy = path[i + 1][1] - path[i][1] - d = math.sqrt(dx * dx + dy * dy) + d = math.hypot(dx, dy) le += d if le >= targetL: ti = i - 1 @@ -67,7 +67,7 @@ def line_collision_check(first, second, obstacleList): return False for (ox, oy, size) in obstacleList: - d = abs(a * ox + b * oy + c) / (math.sqrt(a * a + b * b)) + d = abs(a * ox + b * oy + c) / (math.hypot(a, b)) if d <= size: return False diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index 5bc04c8ee3..1577d048d3 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -57,13 +57,13 @@ def straight_left_straight(x, y, phi): xd = - y / math.tan(phi) + x t = xd - math.tan(phi / 2.0) u = phi - v = math.sqrt((x - xd) ** 2 + y ** 2) - math.tan(phi / 2.0) + v = math.hypot(x - xd, y) - math.tan(phi / 2.0) return True, t, u, v elif y < 0.0 < phi < math.pi * 0.99: xd = - y / math.tan(phi) + x t = xd - math.tan(phi / 2.0) u = phi - v = -math.sqrt((x - xd) ** 2 + y ** 2) - math.tan(phi / 2.0) + v = -math.hypot(x - xd, y) - math.tan(phi / 2.0) return True, t, u, v return False, 0.0, 0.0, 0.0 @@ -103,7 +103,7 @@ def straight_curve_straight(x, y, phi, paths, step_size): def polar(x, y): - r = math.sqrt(x ** 2 + y ** 2) + r = math.hypot(x, y) theta = math.atan2(y, x) return r, theta From 732ed3ea6be5856b10727aac0e0f3724dad02d5a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 26 Jan 2023 22:46:00 +0900 Subject: [PATCH 043/414] clean up informed_rrt_star.py (#785) * clean up informed_rrt_star.py * clean up informed_rrt_star.py --- .../InformedRRTStar/informed_rrt_star.py | 261 +++++++++--------- 1 file changed, 126 insertions(+), 135 deletions(-) diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index 289e33fe4b..4f0ec31988 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -11,6 +11,7 @@ """ import sys import pathlib + sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import copy @@ -27,18 +28,17 @@ class InformedRRTStar: - def __init__(self, start, goal, - obstacleList, randArea, - expandDis=0.5, goalSampleRate=10, maxIter=200): + def __init__(self, start, goal, obstacle_list, rand_area, expand_dis=0.5, + goal_sample_rate=10, max_iter=200): self.start = Node(start[0], start[1]) self.goal = Node(goal[0], goal[1]) - self.min_rand = randArea[0] - self.max_rand = randArea[1] - self.expand_dis = expandDis - self.goal_sample_rate = goalSampleRate - self.max_iter = maxIter - self.obstacle_list = obstacleList + self.min_rand = rand_area[0] + self.max_rand = rand_area[1] + self.expand_dis = expand_dis + self.goal_sample_rate = goal_sample_rate + self.max_iter = max_iter + self.obstacle_list = obstacle_list self.node_list = None def informed_rrt_star_search(self, animation=True): @@ -46,110 +46,109 @@ def informed_rrt_star_search(self, animation=True): self.node_list = [self.start] # max length we expect to find in our 'informed' sample space, # starts as infinite - cBest = float('inf') - solutionSet = set() + c_best = float('inf') + solution_set = set() path = None # Computing the sampling space - cMin = math.sqrt(pow(self.start.x - self.goal.x, 2) - + pow(self.start.y - self.goal.y, 2)) - xCenter = np.array([[(self.start.x + self.goal.x) / 2.0], - [(self.start.y + self.goal.y) / 2.0], [0]]) - a1 = np.array([[(self.goal.x - self.start.x) / cMin], - [(self.goal.y - self.start.y) / cMin], [0]]) + c_min = math.hypot(self.start.x - self.goal.x, + self.start.y - self.goal.y) + x_center = np.array([[(self.start.x + self.goal.x) / 2.0], + [(self.start.y + self.goal.y) / 2.0], [0]]) + a1 = np.array([[(self.goal.x - self.start.x) / c_min], + [(self.goal.y - self.start.y) / c_min], [0]]) e_theta = math.atan2(a1[1], a1[0]) # first column of identity matrix transposed id1_t = np.array([1.0, 0.0, 0.0]).reshape(1, 3) - M = a1 @ id1_t - U, S, Vh = np.linalg.svd(M, True, True) - C = np.dot(np.dot(U, np.diag( - [1.0, 1.0, np.linalg.det(U) * np.linalg.det(np.transpose(Vh))])), - Vh) + m = a1 @ id1_t + u, s, vh = np.linalg.svd(m, True, True) + c = u @ np.diag( + [1.0, 1.0, + np.linalg.det(u) * np.linalg.det(np.transpose(vh))]) @ vh for i in range(self.max_iter): - # Sample space is defined by cBest - # cMin is the minimum distance between the start point and the goal - # xCenter is the midpoint between the start and the goal - # cBest changes when a new path is found + # Sample space is defined by c_best + # c_min is the minimum distance between the start point and + # the goal x_center is the midpoint between the start and the + # goal c_best changes when a new path is found - rnd = self.informed_sample(cBest, cMin, xCenter, C) + rnd = self.informed_sample(c_best, c_min, x_center, c) n_ind = self.get_nearest_list_index(self.node_list, rnd) - nearestNode = self.node_list[n_ind] + nearest_node = self.node_list[n_ind] # steer - theta = math.atan2(rnd[1] - nearestNode.y, rnd[0] - nearestNode.x) - newNode = self.get_new_node(theta, n_ind, nearestNode) - d = self.line_cost(nearestNode, newNode) + theta = math.atan2(rnd[1] - nearest_node.y, + rnd[0] - nearest_node.x) + new_node = self.get_new_node(theta, n_ind, nearest_node) + d = self.line_cost(nearest_node, new_node) - noCollision = self.check_collision(nearestNode, theta, d) + no_collision = self.check_collision(nearest_node, theta, d) - if noCollision: - nearInds = self.find_near_nodes(newNode) - newNode = self.choose_parent(newNode, nearInds) + if no_collision: + near_inds = self.find_near_nodes(new_node) + new_node = self.choose_parent(new_node, near_inds) - self.node_list.append(newNode) - self.rewire(newNode, nearInds) + self.node_list.append(new_node) + self.rewire(new_node, near_inds) - if self.is_near_goal(newNode): - if self.check_segment_collision(newNode.x, newNode.y, + if self.is_near_goal(new_node): + if self.check_segment_collision(new_node.x, new_node.y, self.goal.x, self.goal.y): - solutionSet.add(newNode) - lastIndex = len(self.node_list) - 1 - tempPath = self.get_final_course(lastIndex) - tempPathLen = self.get_path_len(tempPath) - if tempPathLen < cBest: - path = tempPath - cBest = tempPathLen + solution_set.add(new_node) + last_index = len(self.node_list) - 1 + temp_path = self.get_final_course(last_index) + temp_path_len = self.get_path_len(temp_path) + if temp_path_len < c_best: + path = temp_path + c_best = temp_path_len if animation: - self.draw_graph(xCenter=xCenter, - cBest=cBest, cMin=cMin, + self.draw_graph(x_center=x_center, c_best=c_best, c_min=c_min, e_theta=e_theta, rnd=rnd) return path - def choose_parent(self, newNode, nearInds): - if len(nearInds) == 0: - return newNode + def choose_parent(self, new_node, near_inds): + if len(near_inds) == 0: + return new_node - dList = [] - for i in nearInds: - dx = newNode.x - self.node_list[i].x - dy = newNode.y - self.node_list[i].y + d_list = [] + for i in near_inds: + dx = new_node.x - self.node_list[i].x + dy = new_node.y - self.node_list[i].y d = math.hypot(dx, dy) theta = math.atan2(dy, dx) if self.check_collision(self.node_list[i], theta, d): - dList.append(self.node_list[i].cost + d) + d_list.append(self.node_list[i].cost + d) else: - dList.append(float('inf')) + d_list.append(float('inf')) - minCost = min(dList) - minInd = nearInds[dList.index(minCost)] + min_cost = min(d_list) + min_ind = near_inds[d_list.index(min_cost)] - if minCost == float('inf'): + if min_cost == float('inf'): print("min cost is inf") - return newNode + return new_node - newNode.cost = minCost - newNode.parent = minInd + new_node.cost = min_cost + new_node.parent = min_ind - return newNode + return new_node - def find_near_nodes(self, newNode): + def find_near_nodes(self, new_node): n_node = len(self.node_list) r = 50.0 * math.sqrt((math.log(n_node) / n_node)) - d_list = [(node.x - newNode.x) ** 2 + (node.y - newNode.y) ** 2 - for node in self.node_list] + d_list = [(node.x - new_node.x) ** 2 + (node.y - new_node.y) ** 2 for + node in self.node_list] near_inds = [d_list.index(i) for i in d_list if i <= r ** 2] return near_inds - def informed_sample(self, cMax, cMin, xCenter, C): - if cMax < float('inf'): - r = [cMax / 2.0, - math.sqrt(cMax ** 2 - cMin ** 2) / 2.0, - math.sqrt(cMax ** 2 - cMin ** 2) / 2.0] - L = np.diag(r) - xBall = self.sample_unit_ball() - rnd = np.dot(np.dot(C, L), xBall) + xCenter + def informed_sample(self, c_max, c_min, x_center, c): + if c_max < float('inf'): + r = [c_max / 2.0, math.sqrt(c_max ** 2 - c_min ** 2) / 2.0, + math.sqrt(c_max ** 2 - c_min ** 2) / 2.0] + rl = np.diag(r) + x_ball = self.sample_unit_ball() + rnd = np.dot(np.dot(c, rl), x_ball) + x_center rnd = [rnd[(0, 0)], rnd[(1, 0)]] else: rnd = self.sample_free_space() @@ -179,16 +178,15 @@ def sample_free_space(self): @staticmethod def get_path_len(path): - pathLen = 0 + path_len = 0 for i in range(1, len(path)): node1_x = path[i][0] node1_y = path[i][1] node2_x = path[i - 1][0] node2_y = path[i - 1][1] - pathLen += math.sqrt((node1_x - node2_x) - ** 2 + (node1_y - node2_y) ** 2) + path_len += math.hypot(node1_x - node2_x, node1_y - node2_y) - return pathLen + return path_len @staticmethod def line_cost(node1, node2): @@ -196,20 +194,20 @@ def line_cost(node1, node2): @staticmethod def get_nearest_list_index(nodes, rnd): - dList = [(node.x - rnd[0]) ** 2 - + (node.y - rnd[1]) ** 2 for node in nodes] - minIndex = dList.index(min(dList)) - return minIndex + d_list = [(node.x - rnd[0]) ** 2 + (node.y - rnd[1]) ** 2 for node in + nodes] + min_index = d_list.index(min(d_list)) + return min_index - def get_new_node(self, theta, n_ind, nearestNode): - newNode = copy.deepcopy(nearestNode) + def get_new_node(self, theta, n_ind, nearest_node): + new_node = copy.deepcopy(nearest_node) - newNode.x += self.expand_dis * math.cos(theta) - newNode.y += self.expand_dis * math.sin(theta) + new_node.x += self.expand_dis * math.cos(theta) + new_node.y += self.expand_dis * math.sin(theta) - newNode.cost += self.expand_dis - newNode.parent = n_ind - return newNode + new_node.cost += self.expand_dis + new_node.parent = n_ind + return new_node def is_near_goal(self, node): d = self.line_cost(node, self.goal) @@ -217,21 +215,21 @@ def is_near_goal(self, node): return True return False - def rewire(self, newNode, nearInds): + def rewire(self, new_node, near_inds): n_node = len(self.node_list) - for i in nearInds: - nearNode = self.node_list[i] + for i in near_inds: + near_node = self.node_list[i] - d = math.hypot(nearNode.x - newNode.x, nearNode.y - newNode.y) + d = math.hypot(near_node.x - new_node.x, near_node.y - new_node.y) - s_cost = newNode.cost + d + s_cost = new_node.cost + d - if nearNode.cost > s_cost: - theta = math.atan2(newNode.y - nearNode.y, - newNode.x - nearNode.x) - if self.check_collision(nearNode, theta, d): - nearNode.parent = n_node - 1 - nearNode.cost = s_cost + if near_node.cost > s_cost: + theta = math.atan2(new_node.y - near_node.y, + new_node.x - near_node.x) + if self.check_collision(near_node, theta, d): + near_node.parent = n_node - 1 + near_node.cost = s_cost @staticmethod def distance_squared_point_to_segment(v, w, p): @@ -251,45 +249,44 @@ def distance_squared_point_to_segment(v, w, p): def check_segment_collision(self, x1, y1, x2, y2): for (ox, oy, size) in self.obstacle_list: dd = self.distance_squared_point_to_segment( - np.array([x1, y1]), - np.array([x2, y2]), - np.array([ox, oy])) + np.array([x1, y1]), np.array([x2, y2]), np.array([ox, oy])) if dd <= size ** 2: return False # collision return True - def check_collision(self, nearNode, theta, d): - tmpNode = copy.deepcopy(nearNode) - end_x = tmpNode.x + math.cos(theta) * d - end_y = tmpNode.y + math.sin(theta) * d - return self.check_segment_collision(tmpNode.x, tmpNode.y, end_x, end_y) + def check_collision(self, near_node, theta, d): + tmp_node = copy.deepcopy(near_node) + end_x = tmp_node.x + math.cos(theta) * d + end_y = tmp_node.y + math.sin(theta) * d + return self.check_segment_collision(tmp_node.x, tmp_node.y, + end_x, end_y) - def get_final_course(self, lastIndex): + def get_final_course(self, last_index): path = [[self.goal.x, self.goal.y]] - while self.node_list[lastIndex].parent is not None: - node = self.node_list[lastIndex] + while self.node_list[last_index].parent is not None: + node = self.node_list[last_index] path.append([node.x, node.y]) - lastIndex = node.parent + last_index = node.parent path.append([self.start.x, self.start.y]) return path - def draw_graph(self, xCenter=None, cBest=None, cMin=None, e_theta=None, + def draw_graph(self, x_center=None, c_best=None, c_min=None, e_theta=None, rnd=None): plt.clf() # for stopping simulation with the esc key. plt.gcf().canvas.mpl_connect( - 'key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + 'key_release_event', lambda event: + [exit(0) if event.key == 'escape' else None]) if rnd is not None: plt.plot(rnd[0], rnd[1], "^k") - if cBest != float('inf'): - self.plot_ellipse(xCenter, cBest, cMin, e_theta) + if c_best != float('inf'): + self.plot_ellipse(x_center, c_best, c_min, e_theta) for node in self.node_list: if node.parent is not None: if node.x or node.y is not None: - plt.plot([node.x, self.node_list[node.parent].x], [ - node.y, self.node_list[node.parent].y], "-g") + plt.plot([node.x, self.node_list[node.parent].x], + [node.y, self.node_list[node.parent].y], "-g") for (ox, oy, size) in self.obstacle_list: plt.plot(ox, oy, "ok", ms=30 * size) @@ -301,13 +298,13 @@ def draw_graph(self, xCenter=None, cBest=None, cMin=None, e_theta=None, plt.pause(0.01) @staticmethod - def plot_ellipse(xCenter, cBest, cMin, e_theta): # pragma: no cover + def plot_ellipse(x_center, c_best, c_min, e_theta): # pragma: no cover - a = math.sqrt(cBest ** 2 - cMin ** 2) / 2.0 - b = cBest / 2.0 + a = math.sqrt(c_best ** 2 - c_min ** 2) / 2.0 + b = c_best / 2.0 angle = math.pi / 2.0 - e_theta - cx = xCenter[0] - cy = xCenter[1] + cx = x_center[0] + cy = x_center[1] t = np.arange(0, 2 * math.pi + 0.1, 0.1) x = [a * math.cos(it) for it in t] y = [b * math.sin(it) for it in t] @@ -331,18 +328,12 @@ def main(): print("Start informed rrt star planning") # create obstacles - obstacleList = [ - (5, 5, 0.5), - (9, 6, 1), - (7, 5, 1), - (1, 5, 1), - (3, 6, 1), - (7, 9, 1) - ] + obstacle_list = [(5, 5, 0.5), (9, 6, 1), (7, 5, 1), (1, 5, 1), (3, 6, 1), + (7, 9, 1)] # Set params - rrt = InformedRRTStar(start=[0, 0], goal=[5, 10], - randArea=[-2, 15], obstacleList=obstacleList) + rrt = InformedRRTStar(start=[0, 0], goal=[5, 10], rand_area=[-2, 15], + obstacle_list=obstacle_list) path = rrt.informed_rrt_star_search(animation=show_animation) print("Done!!") From ffd8602e25d16f7801421310ca6892f08531042e Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 29 Jan 2023 22:22:11 +0900 Subject: [PATCH 044/414] support python3.11 (#741) * support python3.11 * try to fix error * try to fix error * try to fix error * try to fix error * try to fix error * try to fix error * try to fix error * try to fix error * try to fix error * add docs * fix conflict * fix conflict * fix conflict * using python3.10 for appveyors * add windows CI * roll back appveyor settings * fix windows CI --- .circleci/config.yml | 2 +- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 36 ++++++++++++++++++++++++++++++++ README.md | 2 +- docs/getting_started_main.rst | 4 ++-- requirements/environment.yml | 2 +- 7 files changed, 43 insertions(+), 7 deletions(-) create mode 100644 .github/workflows/Windows_CI.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index 075a613be0..d8f1e89dc4 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ orbs: jobs: build_doc: docker: - - image: cimg/python:3.10 + - image: cimg/python:3.11 steps: - checkout - run: diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index 83c55b17f1..a7b5aba5fe 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [ '3.10.6' ] # For mypy error Ref: https://github.com/python/mypy/issues/13627 + python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index a3459f2560..6f0849a43d 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python-version: [ '3.10.6' ] # For mypy error Ref: https://github.com/python/mypy/issues/13627 + python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v2 diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml new file mode 100644 index 0000000000..ed267045ca --- /dev/null +++ b/.github/workflows/Windows_CI.yml @@ -0,0 +1,36 @@ +# This is a basic workflow to help you get started with Actions + +name: Windows_CI + +# Controls when the action will run. Triggers the workflow on push or pull request +# events but only for the master branch +on: + push: + branches: + - master + pull_request: + + +jobs: + build: + runs-on: windows-latest + strategy: + matrix: + python-version: [ '3.11' ] + name: Python ${{ matrix.python-version }} CI + steps: + - uses: actions/checkout@v2 + - run: git fetch --prune --unshallow + + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + + - name: Install dependencies + run: | + python --version + python -m pip install --upgrade pip + pip install -r requirements/requirements.txt + - name: do all unit tests + run: bash runtests.sh \ No newline at end of file diff --git a/README.md b/README.md index b46195f35e..4ad19353e3 100644 --- a/README.md +++ b/README.md @@ -96,7 +96,7 @@ See this paper for more details: For running each sample code: -- [Python 3.10.x](https://www.python.org/) +- [Python 3.11.x](https://www.python.org/) - [NumPy](https://numpy.org/) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index c2be93261b..0e90d672b7 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -26,7 +26,7 @@ See this paper for more details: Requirements ------------- -- `Python 3.10.x`_ +- `Python 3.11.x`_ - `NumPy`_ - `SciPy`_ - `Matplotlib`_ @@ -40,7 +40,7 @@ For development: - sphinx (for document generation) - pycodestyle (for code style check) -.. _`Python 3.10.x`: https://www.python.org/ +.. _`Python 3.11.x`: https://www.python.org/ .. _`NumPy`: https://numpy.org/ .. _`SciPy`: https://scipy.org/ .. _`Matplotlib`: https://matplotlib.org/ diff --git a/requirements/environment.yml b/requirements/environment.yml index 202c2693d9..13dfa29f66 100644 --- a/requirements/environment.yml +++ b/requirements/environment.yml @@ -2,7 +2,7 @@ name: python_robotics channels: - conda-forge dependencies: - - python=3.10 + - python=3.11 - pip - scipy - numpy From 15a91900608199e9bccdf68b04786b30f6772ad5 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 30 Jan 2023 21:33:49 +0900 Subject: [PATCH 045/414] using ruff instead of flake8 (#787) * using ruff instead of flake8 * using ruff instead of flake8 * using ruff instead of flake8 --- docs/conf.py | 1 - docs/getting_started_main.rst | 15 ++++--- requirements/requirements.txt | 2 +- ruff.toml | 18 ++++++++ ...st_diff_codestyle.py => test_codestyle.py} | 45 ++++++++++++++----- 5 files changed, 62 insertions(+), 19 deletions(-) create mode 100644 ruff.toml rename tests/{test_diff_codestyle.py => test_codestyle.py} (78%) diff --git a/docs/conf.py b/docs/conf.py index 24b5518b6f..e7c64d07b2 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # # Configuration file for the Sphinx documentation builder. # diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 0e90d672b7..497b85a23a 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -34,17 +34,22 @@ Requirements For development: -- pytest (for unit tests) -- pytest-xdist (for parallel unit tests) -- mypy (for type check) -- sphinx (for document generation) -- pycodestyle (for code style check) +- `pytest`_ (for unit tests) +- `pytest-xdist`_ (for parallel unit tests) +- `mypy`_ (for type check) +- `sphinx`_ (for document generation) +- `ruff`_ (for code style check) .. _`Python 3.11.x`: https://www.python.org/ .. _`NumPy`: https://numpy.org/ .. _`SciPy`: https://scipy.org/ .. _`Matplotlib`: https://matplotlib.org/ .. _`cvxpy`: https://www.cvxpy.org/ +.. _`pytest`: https://docs.pytest.org/en/latest/ +.. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist +.. _`mypy`: https://mypy-lang.org/ +.. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html +.. _`ruff`: https://github.com/charliermarsh/ruff How to use diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 944c1ce217..a3a337a198 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.1.0 # For unit test mypy == 0.991 # For unit test -flake8 == 5.0.4 # For unit test +ruff == 0.0.237 # For unit test diff --git a/ruff.toml b/ruff.toml new file mode 100644 index 0000000000..fd02032f48 --- /dev/null +++ b/ruff.toml @@ -0,0 +1,18 @@ +line-length = 88 + +select = ["F", "E", "W", "UP"] +ignore = ["E501", "E741"] +exclude = [ +] + +# Assume Python 3.11 +target-version = "py311" + +[per-file-ignores] + +[mccabe] +# Unlike Flake8, default to a complexity level of 10. +max-complexity = 10 + +[pydocstyle] +convention = "numpy" \ No newline at end of file diff --git a/tests/test_diff_codestyle.py b/tests/test_codestyle.py similarity index 78% rename from tests/test_diff_codestyle.py rename to tests/test_codestyle.py index 89c228e285..2ad3816ea1 100644 --- a/tests/test_diff_codestyle.py +++ b/tests/test_codestyle.py @@ -1,8 +1,8 @@ """ -Diff based code style checker with flake8 +Diff code style checker with ruff This code come from: -https://github.com/scipy/scipy/blob/main/tools/lint_diff.py +https://github.com/scipy/scipy/blob/main/tools/lint.py Scipy's licence: https://github.com/scipy/scipy/blob/main/LICENSE.txt Copyright (c) 2001-2002 Enthought, Inc. 2003-2022, SciPy Developers. @@ -37,9 +37,30 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. """ import conftest +import os import subprocess +CONFIG = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(__file__))), + 'ruff.toml', +) + +ROOT_DIR = os.path.abspath(os.path.dirname(os.path.dirname(__file__))) + + +def run_ruff(files, fix): + if not files: + return 0, "" + args = ['--fix'] if fix else [] + res = subprocess.run( + ['ruff', f'--config={CONFIG}'] + args + files, + stdout=subprocess.PIPE, + encoding='utf-8' + ) + return res.returncode, res.stdout + + def rev_list(branch, num_commits): """List commits in reverse chronological order. Only the first `num_commits` are shown. @@ -89,23 +110,23 @@ def find_diff(sha): return res.stdout -def run_flake8(diff): - """Run flake8 on the given diff.""" +def diff_files(sha): + """Find the diff since the given SHA.""" res = subprocess.run( - ['flake8', '--diff', '--ignore', - 'E402' # top level import for sys.path.append - ], - input=diff, + ['git', 'diff', '--name-only', '--diff-filter=ACMR', '-z', sha, '--', + '*.py', '*.pyx', '*.pxd', '*.pxi'], stdout=subprocess.PIPE, - encoding='utf-8', + encoding='utf-8' ) - return res.returncode, res.stdout + res.check_returncode() + return [os.path.join(ROOT_DIR, f) for f in res.stdout.split('\0') if f] def test(): branch_commit = find_branch_point("origin/master") - diff = find_diff(branch_commit) - rc, errors = run_flake8(diff) + files = diff_files(branch_commit) + print(files) + rc, errors = run_ruff(files, fix=False) if errors: print(errors) else: From 7c1a92a8e5d2c9e0a961728e2cb008c3a4747e58 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Feb 2023 07:21:09 +0900 Subject: [PATCH 046/414] Bump ruff from 0.0.237 to 0.0.241 in /requirements (#788) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.237 to 0.0.241. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.237...v0.0.241) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a3a337a198..1e8a407a20 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.1.0 # For unit test mypy == 0.991 # For unit test -ruff == 0.0.237 # For unit test +ruff == 0.0.241 # For unit test From f9b2fb62afb5f974cbd2ee90434d6ab8c4f6140f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Feb 2023 07:24:15 +0900 Subject: [PATCH 047/414] Bump numpy from 1.24.1 to 1.24.2 in /requirements (#790) Bumps [numpy](https://github.com/numpy/numpy) from 1.24.1 to 1.24.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.24.1...v1.24.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1e8a407a20..0bff2c7b5a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.24.1 +numpy == 1.24.2 scipy == 1.10.0 matplotlib == 3.6.3 cvxpy == 1.3.0 From c627f881a88c47ed6b90c90a9353e38c76d31d7c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Feb 2023 21:49:10 +0900 Subject: [PATCH 048/414] Bump mypy from 0.991 to 1.0.0 in /requirements (#789) Bumps [mypy](https://github.com/python/mypy) from 0.991 to 1.0.0. - [Release notes](https://github.com/python/mypy/releases) - [Commits](https://github.com/python/mypy/compare/v0.991...v1.0.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0bff2c7b5a..01bcab20f6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.6.3 cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.1.0 # For unit test -mypy == 0.991 # For unit test +mypy == 1.0.0 # For unit test ruff == 0.0.241 # For unit test From 3c1162561ae4ae95b4f946fd75f84d198b7ff8d2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 11 Feb 2023 10:48:51 +0900 Subject: [PATCH 049/414] Bump ipython from 7.31.1 to 8.10.0 in /docs (#791) Bumps [ipython](https://github.com/ipython/ipython) from 7.31.1 to 8.10.0. - [Release notes](https://github.com/ipython/ipython/releases) - [Commits](https://github.com/ipython/ipython/compare/7.31.1...8.10.0) --- updated-dependencies: - dependency-name: ipython dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/doc_requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/doc_requirements.txt b/docs/doc_requirements.txt index b8702ee750..c01b596539 100644 --- a/docs/doc_requirements.txt +++ b/docs/doc_requirements.txt @@ -1,4 +1,4 @@ sphinx == 4.3.2 # For sphinx documentation sphinx_rtd_theme == 1.0.0 -IPython == 7.31.1 # For sphinx documentation +IPython == 8.10.0 # For sphinx documentation sphinxcontrib-napoleon == 0.7 # For auto doc From 06bb1d82121a7c4c9d906ced5f60adc14c12810e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Feb 2023 20:07:02 +0900 Subject: [PATCH 050/414] Bump ruff from 0.0.241 to 0.0.246 in /requirements (#792) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.241 to 0.0.246. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.241...v0.0.246) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 01bcab20f6..2f1aa41f29 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.1.0 # For unit test mypy == 1.0.0 # For unit test -ruff == 0.0.241 # For unit test +ruff == 0.0.246 # For unit test From ebc1d3d2f3bd3c273da94f74da383390cdb35ce9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Feb 2023 20:07:31 +0900 Subject: [PATCH 051/414] Bump pytest-xdist from 3.1.0 to 3.2.0 in /requirements (#793) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.1.0 to 3.2.0. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.1.0...v3.2.0) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2f1aa41f29..ed3e084c58 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.10.0 matplotlib == 3.6.3 cvxpy == 1.3.0 pytest == 7.2.1 # For unit test -pytest-xdist == 3.1.0 # For unit test +pytest-xdist == 3.2.0 # For unit test mypy == 1.0.0 # For unit test ruff == 0.0.246 # For unit test From 5641a491b95c4a5f90315b71cd01792319af0032 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Feb 2023 07:25:57 +0900 Subject: [PATCH 052/414] Bump ruff from 0.0.246 to 0.0.249 in /requirements (#794) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.246 to 0.0.249. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.246...v0.0.249) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ed3e084c58..b3dcf0458a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.2.0 # For unit test mypy == 1.0.0 # For unit test -ruff == 0.0.246 # For unit test +ruff == 0.0.249 # For unit test From fa254376f6017a6f62701bf56758431bc574cf89 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Feb 2023 07:26:14 +0900 Subject: [PATCH 053/414] Bump scipy from 1.10.0 to 1.10.1 in /requirements (#797) Bumps [scipy](https://github.com/scipy/scipy) from 1.10.0 to 1.10.1. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.10.0...v1.10.1) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b3dcf0458a..8e537c44bc 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.24.2 -scipy == 1.10.0 +scipy == 1.10.1 matplotlib == 3.6.3 cvxpy == 1.3.0 pytest == 7.2.1 # For unit test From f79bc4e139a70d42f4317846c1d5b1254e0761a5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Feb 2023 08:45:48 +0900 Subject: [PATCH 054/414] Bump mypy from 1.0.0 to 1.0.1 in /requirements (#795) Bumps [mypy](https://github.com/python/mypy) from 1.0.0 to 1.0.1. - [Release notes](https://github.com/python/mypy/releases) - [Commits](https://github.com/python/mypy/compare/v1.0.0...v1.0.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8e537c44bc..05b7c9aa13 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.6.3 cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.2.0 # For unit test -mypy == 1.0.0 # For unit test +mypy == 1.0.1 # For unit test ruff == 0.0.249 # For unit test From 9269e190c27f7e146190b4a3c082d04ccf32bc94 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Feb 2023 12:45:30 +0900 Subject: [PATCH 055/414] Bump matplotlib from 3.6.3 to 3.7.0 in /requirements (#796) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.6.3 to 3.7.0. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.6.3...v3.7.0) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 05b7c9aa13..afda81a29a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.24.2 scipy == 1.10.1 -matplotlib == 3.6.3 +matplotlib == 3.7.0 cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.2.0 # For unit test From 3f5b973d6cb508faf707f18cfcb76b4a4c324215 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Mar 2023 19:06:13 +0900 Subject: [PATCH 056/414] Bump ruff from 0.0.249 to 0.0.254 in /requirements (#798) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.249 to 0.0.254. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.249...v0.0.254) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index afda81a29a..5eb5d69364 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.2.0 # For unit test mypy == 1.0.1 # For unit test -ruff == 0.0.249 # For unit test +ruff == 0.0.254 # For unit test From 6e2f3df1d88731730028a78c834daf41c54669c8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Mar 2023 20:49:11 +0900 Subject: [PATCH 057/414] Bump matplotlib from 3.7.0 to 3.7.1 in /requirements (#800) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.7.0 to 3.7.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.7.0...v3.7.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5eb5d69364..141c14198b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.24.2 scipy == 1.10.1 -matplotlib == 3.7.0 +matplotlib == 3.7.1 cvxpy == 1.3.0 pytest == 7.2.1 # For unit test pytest-xdist == 3.2.0 # For unit test From 1f96f4eb55c5860d00bbefd83a28b59e0b07e128 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 8 Mar 2023 07:57:25 +0900 Subject: [PATCH 058/414] Bump pytest from 7.2.1 to 7.2.2 in /requirements (#799) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.2.1 to 7.2.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.2.1...7.2.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 141c14198b..35798d7e86 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.24.2 scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.0 -pytest == 7.2.1 # For unit test +pytest == 7.2.2 # For unit test pytest-xdist == 3.2.0 # For unit test mypy == 1.0.1 # For unit test ruff == 0.0.254 # For unit test From cb08c39a9388c90290b797014f0663c0ed53d2f7 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 11 Mar 2023 17:54:18 +0900 Subject: [PATCH 059/414] Add Normal vector estimation (#781) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add normal vector calculation routine. * add normal vector calculation routine. * add normal vector estimation * fix unittests in not matplotlib frontend * fix lint ci * add ransac based normal distribution estimation * add normal_vector_estimation_main.rst * normal_vector_estimation_main.rst を更新 * update normal_vector_estimation_main.rst * update normal_vector_estimation_main.rst * normal_vector_estimation_main.rst * normal_vector_estimation_main.rst を更新 * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst --- .../rrt_star_seven_joint_arm_control.py | 6 +- .../normal_vector_estimation.py | 177 ++++++++++++++++++ .../dynamic_window_approach.py | 3 +- PathPlanning/RRTStar/rrt_star.py | 4 +- .../VisibilityRoadMap/visibility_road_map.py | 5 +- docs/modules/mapping/mapping_main.rst | 2 +- .../normal_vector_calc.png | Bin 0 -> 96411 bytes .../normal_vector_estimation_main.rst | 74 ++++++++ .../ransac_normal_vector_estimation.png | Bin 0 -> 282297 bytes ruff.toml | 2 +- tests/test_normal_vector_estimation.py | 19 ++ utils/plot.py | 79 ++++++++ 12 files changed, 360 insertions(+), 11 deletions(-) create mode 100644 Mapping/normal_vector_estimation/normal_vector_estimation.py create mode 100644 docs/modules/mapping/normal_vector_estimation/normal_vector_calc.png create mode 100644 docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst create mode 100644 docs/modules/mapping/normal_vector_estimation/ransac_normal_vector_estimation.png create mode 100644 tests/test_normal_vector_estimation.py diff --git a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py index fca55184da..0f449bbe51 100755 --- a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py +++ b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py @@ -5,7 +5,6 @@ import math import random import numpy as np -from mpl_toolkits import mplot3d import matplotlib.pyplot as plt import sys import pathlib @@ -79,8 +78,9 @@ def __init__(self, start, goal, robot, obstacle_list, rand_area, self.obstacle_list = obstacle_list self.connect_circle_dist = connect_circle_dist self.goal_node = self.Node(goal) - self.ax = plt.axes(projection='3d') self.node_list = [] + if show_animation: + self.ax = plt.axes(projection='3d') def planning(self, animation=False, search_until_max_iter=False): """ @@ -176,7 +176,7 @@ def search_best_goal_node(self): def find_near_nodes(self, new_node): nnode = len(self.node_list) + 1 - r = self.connect_circle_dist * math.sqrt((math.log(nnode) / nnode)) + r = self.connect_circle_dist * math.sqrt(math.log(nnode) / nnode) # if expand_dist exists, search vertices in # a range no more than expand_dist if hasattr(self, 'expand_dis'): diff --git a/Mapping/normal_vector_estimation/normal_vector_estimation.py b/Mapping/normal_vector_estimation/normal_vector_estimation.py new file mode 100644 index 0000000000..996ba3ffee --- /dev/null +++ b/Mapping/normal_vector_estimation/normal_vector_estimation.py @@ -0,0 +1,177 @@ +import numpy as np +from matplotlib import pyplot as plt + +from utils.plot import plot_3d_vector_arrow, plot_triangle, set_equal_3d_axis + +show_animation = True + + +def calc_normal_vector(p1, p2, p3): + """Calculate normal vector of triangle + + Parameters + ---------- + p1 : np.array + 3D point + p2 : np.array + 3D point + p3 : np.array + 3D point + + Returns + ------- + normal_vector : np.array + normal vector (3,) + + """ + # calculate two vectors of triangle + v1 = p2 - p1 + v2 = p3 - p1 + + # calculate normal vector + normal_vector = np.cross(v1, v2) + + # normalize vector + normal_vector = normal_vector / np.linalg.norm(normal_vector) + + return normal_vector + + +def sample_3d_points_from_a_plane(num_samples, normal): + points_2d = np.random.normal(size=(num_samples, 2)) # 2D points on a plane + d = 0 + for i in range(len(points_2d)): + point_3d = np.append(points_2d[i], 0) + d += normal @ point_3d + d /= len(points_2d) + + points_3d = np.zeros((len(points_2d), 3)) + for i in range(len(points_2d)): + point_2d = np.append(points_2d[i], 0) + projection_length = (d - normal @ point_2d) / np.linalg.norm(normal) + points_3d[i] = point_2d + projection_length * normal + + return points_3d + + +def distance_to_plane(point, normal, origin): + dot_product = np.dot(normal, point) - np.dot(normal, origin) + if np.isclose(dot_product, 0): + return 0.0 + else: + distance = abs(dot_product) / np.linalg.norm(normal) + return distance + + +def ransac_normal_vector_estimation(points_3d, inlier_radio_th=0.7, + inlier_dist=0.1, p=0.99): + """ + RANSAC based normal vector estimation + + Parameters + ---------- + points_3d : np.array + 3D points (N, 3) + inlier_radio_th : float + Inlier ratio threshold. If inlier ratio is larger than this value, + the iteration is stopped. Default is 0.7. + inlier_dist : float + Inlier distance threshold. If distance between points and estimated + plane is smaller than this value, the point is inlier. Default is 0.1. + p : float + Probability that at least one of the sets of random samples does not + include an outlier. If this probability is near 1, the iteration + number is large. Default is 0.99. + + Returns + ------- + center_vector : np.array + Center of estimated plane. (3,) + normal_vector : np.array + Normal vector of estimated plane. (3,) + + """ + center = np.mean(points_3d, axis=0) + + max_iter = int(np.floor(np.log(1.0-p)/np.log(1.0-(1.0-inlier_radio_th)**3))) + + for ite in range(max_iter): + # Random sampling + sampled_ids = np.random.choice(points_3d.shape[0], size=3, + replace=False) + sampled_points = points_3d[sampled_ids, :] + p1 = sampled_points[0, :] + p2 = sampled_points[1, :] + p3 = sampled_points[2, :] + normal_vector = calc_normal_vector(p1, p2, p3) + + # calc inlier ratio + n_inliner = 0 + for i in range(points_3d.shape[0]): + p = points_3d[i, :] + if distance_to_plane(p, normal_vector, center) <= inlier_dist: + n_inliner += 1 + inlier_ratio = n_inliner / points_3d.shape[0] + print(f"Iter:{ite}, {inlier_ratio=}") + if inlier_ratio > inlier_radio_th: + return center, normal_vector + + return center, None + + +def main1(): + p1 = np.array([0.0, 0.0, 1.0]) + p2 = np.array([1.0, 1.0, 0.0]) + p3 = np.array([0.0, 1.0, 0.0]) + + center = np.mean([p1, p2, p3], axis=0) + normal_vector = calc_normal_vector(p1, p2, p3) + print(f"{center=}") + print(f"{normal_vector=}") + + if show_animation: + fig = plt.figure() + ax = fig.add_subplot(projection='3d') + set_equal_3d_axis(ax, [0.0, 2.5], [0.0, 2.5], [0.0, 3.0]) + plot_triangle(p1, p2, p3, ax) + ax.plot(center[0], center[1], center[2], "ro") + plot_3d_vector_arrow(ax, center, center + normal_vector) + plt.show() + + +def main2(rng=None): + true_normal = np.array([0, 1, 1]) + true_normal = true_normal / np.linalg.norm(true_normal) + num_samples = 100 + noise_scale = 0.1 + + points_3d = sample_3d_points_from_a_plane(num_samples, true_normal) + # add random noise + points_3d += np.random.normal(size=points_3d.shape, scale=noise_scale) + + print(f"{points_3d.shape=}") + + center, estimated_normal = ransac_normal_vector_estimation( + points_3d, inlier_dist=noise_scale) + + if estimated_normal is None: + print("Failed to estimate normal vector") + return + + print(f"{true_normal=}") + print(f"{estimated_normal=}") + + if show_animation: + fig = plt.figure() + ax = fig.add_subplot(projection='3d') + ax.plot(points_3d[:, 0], points_3d[:, 1], points_3d[:, 2], ".r") + plot_3d_vector_arrow(ax, center, center + true_normal) + plot_3d_vector_arrow(ax, center, center + estimated_normal) + set_equal_3d_axis(ax, [-3.0, 3.0], [-3.0, 3.0], [-3.0, 3.0]) + plt.title("RANSAC based Normal vector estimation") + plt.show() + + +if __name__ == '__main__': + # main1() + main2() diff --git a/PathPlanning/DynamicWindowApproach/dynamic_window_approach.py b/PathPlanning/DynamicWindowApproach/dynamic_window_approach.py index 74ff064e86..8664ec1745 100644 --- a/PathPlanning/DynamicWindowApproach/dynamic_window_approach.py +++ b/PathPlanning/DynamicWindowApproach/dynamic_window_approach.py @@ -300,8 +300,7 @@ def main(gx=10.0, gy=10.0, robot_type=RobotType.circle): if show_animation: plt.plot(trajectory[:, 0], trajectory[:, 1], "-r") plt.pause(0.0001) - - plt.show() + plt.show() if __name__ == '__main__': diff --git a/PathPlanning/RRTStar/rrt_star.py b/PathPlanning/RRTStar/rrt_star.py index a7aad49d60..f875d3a76d 100644 --- a/PathPlanning/RRTStar/rrt_star.py +++ b/PathPlanning/RRTStar/rrt_star.py @@ -186,7 +186,7 @@ def find_near_nodes(self, new_node): radius r """ nnode = len(self.node_list) + 1 - r = self.connect_circle_dist * math.sqrt((math.log(nnode) / nnode)) + r = self.connect_circle_dist * math.sqrt(math.log(nnode) / nnode) # if expand_dist exists, search vertices in a range no more than # expand_dist if hasattr(self, 'expand_dis'): @@ -280,7 +280,7 @@ def main(): rrt_star.draw_graph() plt.plot([x for (x, y) in path], [y for (x, y) in path], 'r--') plt.grid(True) - plt.show() + plt.show() if __name__ == '__main__': diff --git a/PathPlanning/VisibilityRoadMap/visibility_road_map.py b/PathPlanning/VisibilityRoadMap/visibility_road_map.py index e9f8733c83..5f7ffadd16 100644 --- a/PathPlanning/VisibilityRoadMap/visibility_road_map.py +++ b/PathPlanning/VisibilityRoadMap/visibility_road_map.py @@ -62,8 +62,9 @@ def generate_visibility_nodes(self, start_x, start_y, goal_x, goal_y, for (vx, vy) in zip(cvx_list, cvy_list): nodes.append(DijkstraSearch.Node(vx, vy)) - for node in nodes: - plt.plot(node.x, node.y, "xr") + if self.do_plot: + for node in nodes: + plt.plot(node.x, node.y, "xr") return nodes diff --git a/docs/modules/mapping/mapping_main.rst b/docs/modules/mapping/mapping_main.rst index 14a7cce70d..1c02c75cb2 100644 --- a/docs/modules/mapping/mapping_main.rst +++ b/docs/modules/mapping/mapping_main.rst @@ -13,4 +13,4 @@ Mapping k_means_object_clustering/k_means_object_clustering circle_fitting/circle_fitting rectangle_fitting/rectangle_fitting - + normal_vector_estimation/normal_vector_estimation diff --git a/docs/modules/mapping/normal_vector_estimation/normal_vector_calc.png b/docs/modules/mapping/normal_vector_estimation/normal_vector_calc.png new file mode 100644 index 0000000000000000000000000000000000000000..63e2cdade70313466314c1f2ce37e6968910d830 GIT binary patch literal 96411 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
  • 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 z

    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 Bj^h9T literal 0 HcmV?d00001 diff --git a/docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst b/docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst new file mode 100644 index 0000000000..a4d1bf0df2 --- /dev/null +++ b/docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst @@ -0,0 +1,74 @@ +Normal vector estimation +------------------------- + + +Normal vector calculation of a 3D triangle +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +A 3D point is as a vector: + +.. math:: p = [x, y, z] + +When there are 3 points in 3D space, :math:`p_1, p_2, p_3`, + +we can calculate a normal vector n of a 3D triangle which is consisted of the points. + +.. math:: n = \frac{v1 \times v2}{|v1 \times v2|} + +where + +.. math:: v1 = p2 - p1 + +.. math:: v2 = p3 - p1 + +This is an example of normal vector calculation: + +.. figure:: normal_vector_calc.png + +API +===== + +.. autofunction:: Mapping.normal_vector_estimation.normal_vector_estimation.calc_normal_vector + +Normal vector estimation with RANdam SAmpling Consensus(RANSAC) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Consider the problem of estimating the normal vector of a plane based on a +set of N 3D points where a plane can be observed. + +There is a way that uses all point cloud data to estimate a plane and +a normal vector using the `least-squares method `_ + +However, this method is vulnerable to noise of the point cloud. + +In this document, we will use a method that uses +`RANdam SAmpling Consensus(RANSAC) `_ +to estimate a plane and a normal vector. + +RANSAC is a robust estimation methods for data set with outliers. + + + +This RANSAC based normal vector estimation method is as follows: + +#. Select 3 points randomly from the point cloud. + +#. Calculate a normal vector of a plane which is consists of the sampled 3 points. + +#. Calculate the distance between the calculated plane and the all point cloud. + +#. If the distance is less than a threshold, the point is considered to be an inlier. + +#. Repeat the above steps until the inlier ratio is greater than a threshold. + + + +This is an example of RANSAC based normal vector estimation: + +.. figure:: ransac_normal_vector_estimation.png + +API +===== + +.. autofunction:: Mapping.normal_vector_estimation.normal_vector_estimation.ransac_normal_vector_estimation + diff --git a/docs/modules/mapping/normal_vector_estimation/ransac_normal_vector_estimation.png b/docs/modules/mapping/normal_vector_estimation/ransac_normal_vector_estimation.png new file mode 100644 index 0000000000000000000000000000000000000000..e9b661e79c1d8283e61c9cbdc991e6cd4ef2dec9 GIT binary patch literal 282297 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

    pNOwCuNn*iZ6b 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 z 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�N>rQV0OS;A}_R@QWI{X*Vx|=@1 zzk2L(pB3o$G`@(D%aT@&VhEDwM$9h9?~}h07lgGz^zEDaG!PBo^sJ0%GmEt3%W;Lg zje$v@wEs}-`DfsRPjIO_tgy+>4JVDzF31DeImCCgb{HEOGLI^JtnB( z8AlC<6c>ZAc!!UsQTWfp;q7NDY?pLEIsM7}-XJH+jvf2D6pIIrD{uHrKrP32{*WIr zPIe~YwL-!iug|6s_}L?|6Y2T7Y5?Kq#9Prlz;$7Juy4Op=G1+GiSCFr<(v)uVfb=Z zzgH>$D3AmxG~mB8?tVK0XGJ}h#ZCOLM1ZzX^g``*HVOgg>yV?k^8r473B)&%uU6>GII!PUaFa05qdQHu;TsH1QzyL`0c6 zO5~F4oCs(*+z;Fsn1U5cmg00m`{c2Iv!dRaxz}@)LN8evZXCd-BwEzKjF{i0PXQ?AcX*bBtFSnuRJ4IxnbT@NJ}iFFlV&fpb9CkB|#Aj zPdWtFNiYw6As~#sLBIa7eicj(hK#boEIg(*!TvXEBsS#nxR~votyl@Xm9*)B?__ip zUYkz#o2o2#G_L=XO`mJ&^jBI&4Kj_erGF$;8Vjsl=*-+pqTGgXqFDt zGxfSsb4;+@?epySzOv##7G&b`T`3uBT=AfQ*Cfe>Z%@TY2PKk4MjwtgXS`qds=vrS zg-f21K|r>N-orAYA#@5G9?5)ldh%^FEpedCjRVwjUcVdJ#qi^&4~ByQYsbW?nILYt zCwAJm40281h^=niC};d#lm#bV&)u}E99ll3uOFsO zi(~?O8D-nP>j^_8^ilOX#z>?q|HKY;%nt1+nfiZm>Ho0ACmPZIYlxF%PiQ}P21G{_ zT&~g5TkqX0zTFOBR>ftw;=Ix^1S?!iXrBXbbx7PDf=IX&rDU)X^hO%M)a(6gY#ix% zym>s2Bmf7IcA1Ltg#D<{uxM~izN*lW;#hYKjOmft*j0UL99ZPG2EV>DEI zOh@QmH`yUFMWH`5^3aEyHC%1SM&f*N7jgN;cNwsO9_L-ZK08k-ctXwO`*oBfokSB0 z1K3IZxu3t*zzvnTN696D!-#Ma^9C3F3tKVoJ5g2?rNBLi;;D+phfDM_w zQ5jZ7LNwg|P=rl(1EI_?)J(-Nex&u+P}Pt!p08c6pKggyjX?iY#Sd#-cK;JEe$%Kc z`VpFVm_eQMjVz>ICqqgeU44k1M|I2b9hH-u8u^tE7H~1xExQTw_WO4(E+nFft+<<{ z(0mLIgo7;fYLKieDnu584D5FGLeqRI2gP7R zSSQM_Amsmv#)yOdta3I!>3?Lm6(*~`)>MffqJ^LU(>?o25O!jglg9%rH3#>~f(?EP z(eC0%aB?kskBjs+qoSlWnLunN{}NGO7KNsri=;v-HgXXT%d?b3RlyR%3y+DXcKS>V zeMR=`w*e!*TE2e^Rd7U2Sb+xMD@VVGJXWo=VE4#arQ8916(54ubhW9=+s=+42A!( z;UMX9lkFfE{zpA=?-~e;=D1IxoR`=#ynf2lgJ3lVML}^cq_8=UAk2h%s#FVkT~Qdf(uCWcy*11XBAn(Mz^9+Upj zgZ#Ti%8&GM6_n+UXPRh?&%nv-=8@>eHETXZYK2-KN`$Hj@SQqbVoYggFzqD z*YA(Diq=2hYuwXd7R8BAf6ZHxgA{7~T%UXjqdu2o2>eax;vg6X6zY4A_7v5K>X=od zcz2j0f5_5hDhl;;l;$oDT$b0BStaDud~@!=B{qRIN0nc|i=okvBL%ngj9eXYqen`X z5qHPvUehv8f`Dkp@YQh|oK5DE-5Y4o?vr(V4lxH-^X`{x6xQlR zRQiFE#6-rC5kz+0pQGKjh1jG|RJi_ma?oi#Z)S01V^%ls0BYBzaw~p_-ZNuf?%3akSK*Y-fl~tBRl|2ZNJB?(zUUI(?Euvm*=|1~UYiefxGn+j=ej9} zV%i+-xVbq-;ltGy3OL!5w_bL(?BPsNOQ47wsG*gaqadm$iI#j#5-Wp~oBAlavkQk; zFn1rS^d2lgjb-XlSsYUfQVf0^tP*@uG<@XSy$g!I#%LnMBLQ8E4h~;UNomfA%f-?t z8&=)^{~esaL5^QUr-(Kb^({Oo36X+JUY1TE(cTPgP6Qw3mA}&uo|@+Ala6Y1OHOZ{ z#Mb6y$~xnZm~N!Sz%6AdH{XZC|A`kS5AE~2k=If#gW@_R7*@e>+#>3r0mtHZ4)%w+ z_lHM>Ig*U3d@8C;C{F&T7KlfnCo0_dB*xUX#m!!qBQJ%hFkR>tPfKLIcZG@MD`K0h z7vovQNic-{&6NG=Y^)DVgQdv>oQeSVAC4n4RA3}f&?S}Kx!W?!KCY4dQq!rAc4jBM zK6M$&20i>rLN}|!A41D6Ic1+}v!k2%bUZs=#H42G#It6K<~BAZ%w&v*xReqmZ!-jI zwH)bdNs7a8e%^-~8bi06`4B7%B$=%c@@!P5bdgBzO7}<-th8J5&O^W%B)^Rfo&fD+ z+-Y9aN91viUyY+DQO1H;4Hx{iRq62w)FHt1ViayhE`qkZXw*UES0?b>79kM)i( zUq>6N%3fe_1_O*rGESbLr+8fZ`wqm&!NZL|8J|S9l}s=6=F}Mc_?`4EftFZVk_gpJ zbY-goIN#7aQ*QqT39RWXsUF5!`rlfX7A)>O?O#D8O^fB*cOnSMG9KbroM`zbSQk_e|n*5AFmiq1zW()$jN6X-bqK>c_MVkC>$ zgYch)Mry;x<`6I`D?`4TCsK28=v&Z{{h$<4lbkOe^&*VJoM`DXS^7{$s3&}xCJ0GCL0Ogc4I0qr5>;XG@YQ)cqbQhATsUOqrc;A%=rvXsH(t zI>Rj@9qCAMFf77LDV|H$KOG}4qK4j^UbFqf+l9icd8cmmxR zei1FYT^!>#RUp}l%xbpR^8yS+P?tKXK*Ymq_o!x(Jxav(3-uww*;mvYgoxVT`Qj>&?{W*B-q4Nf?8FhTBfs*wtz>J&Ie=C`0yxM&mlQ4hEo<-%>B zFzh`0D6ac+a;>yoq#W5cb7im-c#>@~BjJW?2%TgOF=ir4DdOG75Ql}9y~Kv(qoe5` zJ$pX7UIrcs>8_Y`9qXJ|QpWP&OG<2h<~P3Z-P@dxQx#m|$grLkvYtw>1O;Po3?f*BUs5Y60ueyAq9eBH_cBPpzLD9!|qa;Z$+|DGe(s2 zM0UBve>P`uW7WMJNNs_mB%W@#{8k9IWxiRZ#pEKe1Vf1e_rsMiLTl(2``rxnl8N5> zSiN*Q4e{|K9Fs-2?|D2yK21MhHp?g{Ik%*}u!U^@USyd5IbJl-mU*ob&9;N(9;YGL zcA|;A$?jjab1lt|l4peB0+vJ?wQk_eGD3cZ-Ql+vX_6mNyP{m67Pe#Hej2U$^d8@9M%XT}Sus%k004mf0(=BD=a4)Q~E{ z-3T(Xi*h^Ai0q!;g?JE3A`kRT75C;J6QQ~sk(Q-L>paQ{J-a=a4b~9mI{m`Kcew*D z$b17-OHk;esm=LRX-#F1hDs<5J#*V`xgH_;KX=Cc4~4$nBditsv+qYe@2y#}{!n$k z0h%JjwfJG~M93bKqtc6@H8-wOCAGWO|2~2_1Vi&Cwq`Ar!HpjC1w$x~AMTe{eA3SG zE(~r;@Ysa!2CZ-p5y|5m9XRAa0TC(uFz;6&n)rh#mHHE^>$~S}_dJ1Ax5#PE7D%zf zuxqDoJmx_`5sS3@@O?d`48@Og%J%a05+V8423o;#v}s40__b&d@vg&wu13>8CJ+99m)wcH%7|avt#J#d&V|a5JxA^YbmU zf*Z$AI56D0u5@cD-{!{|4VpJvutPQE_YtVlq?^nnyZXhUaB}?lj8Eb6fEq}rx-AU; z5~vwBe|-n_nD_rfg9X?<*~4}m>LYSKByPqXAqmAfKvyOEL|`%GcC0+PBBRZ18^?Vn zp5B(!v+=l*eXEgP<4zozSxY3{Z#-`*XsT;tk~#4v?2z*bS-dh?4ui-a;~g!v)=P&F zX-i&Fv;6wN05G1UO^46a9BFrfm`5Zd6^Vcdz&;y2 zcFe!!YmPl?DbuKIhfjv;$gldLGjyyU<9hCQ4CUR9=B+8Ys}NwZsp?z(=5Oh_att|p z>@R$ZfWxV(e;54;&R+fXr_rK-O-4J;81R8xuvMIRCsnA^U*?u2mTO+oA`SfcPQ)vH z2@`N%$yrO9)}BG|WItPFY&WW0f!|NUaMk1M}^wLV%}#TIPrkJRsU^ zCTbaz9wWDL%(&ELI-pj#J6Ewin`ffN6+6nBpS;ZTm$K-QJMbl>NSucC!Z3m%*p=u0 z+wlu&uJLHi=XcMYn(}9~eO|&&L)&BPOPFza`#|nT49P**>qEjTTIfzWa52j%`{js> zsUcqysb?K+1 zA&x=^&8T9J=~IUeFvvmA<#XCCDI2h8T2HUCxfg%1)3*qA%G#s1as^z)HFjg5J&Wau z0#Yi{gBfGLBsnX8izNRM)ck2Ke1@5#fld44|CJ6rp^Fih+4>&c|4w@Klv|%|(PngP z&Isp1MqaB^kD+s9AC&rTZ2sw}WEUsNksyXBhZC`Zr<5_Hv(!eeGLkD}k2JP;v-2Up z#=mnEsjgFEB$OOWTaiY5WZRpLg+j<7);CsiAm84;aC-SW4{(bjSG}#%;PeDQOTKTyOT$eF2i+W45B>7--qkybXB+uRQaZYJgGgyH3};d22S-(D%~UA~ygiF(72 zk5+7v)~v4!4knmyW1-t|jQLa=Qs~rfoD@TTMpCrtGVI-j$Z*YOFjvE;9RpbSZIzu3e=KOMS)z{MgW8b7(&N z-g49UZ{lzh0eZBr#i{)dbxk*Tvp+?x{}H(ePx^kbXO#74Ud)Xk;VI9a+DNr`;fz!h z6Nv?ak}_Y?^R_v95KWxTENf*T?1VIoTOG>TEbXaiMY8QdCuWmBw-T%~^`{>6K7q%% zmgubmVK>SovpcO}Dc651_e0BT*dh1tp{8~$@TXm<-S^{wh<|^Xvi%UauU(Ab6>^|{ z56=a@Kc|f8Bd6IE)X@8nb&AylwZ6)E(Ym}C1XB8>CZ~CQ5KA;M4DrnDi=wSmlAj)O}I4n}1i z9+|H(mU_^YZXC~YHHAie{R^egh9fCg-4j2PbJC~DuMTS+<@)(Dy3+%_`i>J^4fSUMTJ>Cy_-_$TqbCrg(ue@(jXv8XkzsJ&YI~I{Hko>@4zhY?`N7B}g!-F=1d` zMQ-OEn+1xBmDxQAk6ynDr|_an8aH83D+N3j`tsjn2!xMgxBLD{CqnnIpY&u!SAo}Z ze2A?RTY-$j-~x&hPdRdZf(m{ONC0wuAP@a%Y(jw(=*JZw(t*@x_)!1#b%5znbLdVG zKU8DW!z&QVH!DOT@+mJ0t}fy5q$GYaD3XxAsSH45O#rDQ3rZvv=DU$sX!GB!jCmJR zvSILX3wNPrrI9zq1t%B5o`;=hk)v`{_l26m-P&h_E`2@`OU9Rnyjyh28BYWNW~ch{ zToh32=QRDCqAY(-ZEH7aj99rxje_mqvkzsJx`fR4Gk>OO)cMh-O2D;A#~PHTpodxM zfRT38aX1}s*nM1mjsqQyi2qXHN{U0K^|=D4}JyF=32!~ z_bac(;l(6bh^@te(~&+jvu=WN^lrI9JOLicn&%wymKZv3kO7AzLPBJbWk%%~*L@D# zc-B+?w!MCMHCE#53EVZLB<{*Np32Rn#>r&BDdrHBy43f(rd8pw*MIcy zun}&u^BRf6MOd=*Z?yzaJV?cdhrxurpT7Y6bzvmj??@>ig`4FUs{jj(JkVprp11?U zK3$PgtZ4oXHC)taQXDnK<(kJHzxiGRwd56{m7)(l;u>#6Ol%4p&ar=XP& zNc3cKZd`i^QO{noi@1jbg?)?8yObXE_4WBS)#Rrx_gDE=A!UZIW+>Gd@4*1`#<&xM zUk`FDO00Hj4cvYAV&Z0o?uZ2&U-Q+AqKC#WVUofr?BM2xS>IH_LTq8uUJTmYczhhj zSkZ>x+Iow)_F^Ad%yLr^0B^^31rfgPn0!+-m^CZc>*bH=ULSw4PrZD@za!35&n9VI z6;JzkyfG3%Gq_k58OuOKq9mMl1$_gYl_P0P$jL9Y3B}N+Utj-?-FxLaN0I%|JYF{^ z2OY#+M=mIKUxkQ}*uIO+XtVy4x-fa>O-EHj=6m(48*BMiQE|3__3e2MX5Rc#;> zd!ei!i(EMrC=2hPr45tyv19czYRP3IvLqikh-ja@N|-Mdl60knG!Xj7pHcs-Pzr(5 zNb~)hJ?@(n7))7x@ssmAW4tnsw9*?d1IGyTjGVLZI*qbfL;5+Lu1|D%0<`%86&oE& zw{$eTb`lhU{l{)U9}z4Wqj!UL_Xn>xw6h*)3vCbHd;>!RHew}85>F~ij0d_mAQ)Nm zBtiECVCAl3?-pPqr$tzk$Utqzvb46vM@d}EW_<*4+~WAJ``f2sSd3(vI{Gn!3{t)F zpBQp#7MOpVWal)r+3MEsR<&)ULDJFH`!0L)xF~aRwF0Aa4$reHbN+`qnTFFyn|0}W z`J~j|`Lhke{9&QTBM?MZYQ2B-Qw9#1<3VY?hZk{OLaem%lS4%4!OGo^59TM6UI5oBdQ& z%CR#{o;(%ITIb7rOGwOyNWuGjSRlADkiTvKwFEwEnJ(SJ_-xHHW|><~K;lo{gRo3UHUS7`U$i zDu>ATD-`~S@RDitY;Qj@b$1@Q$*>HfXn)1};H-=^d1Etq{>HbTAP<^H=F}UhEZ*ud zR2|M^b~^$SV%|Zka1w7=3e55+wKlKhc{sk9vNxSlDzo)QMjx9PiXM}sCzQD@tYs=d z-^^EXk>#{2%o1`f`-i*ff6EzKibfbfA^Jx)3z}%M3daQCI9na<-}Hc1_Yi~hjd%aq zX~6uL<;rijv9Ckk-(QtuJ&zt?6TZerIdS@tM}s|8(wxBbqV8Me|LPgx-NKVDMT!kh z39#lI@S~~=6&@2zsPR$^FNSfw9KVQ-!B6q42fiELkd<^Asap`fS>I#q`N{2kHTfL& zc_=fmaj0#$sd50WberFrFejlTCc?Dw{EDAlA*4&@^aS0Rc4bET7M%%^U5k;=p$y?9 znVO3Qk>@2JT%ga+uu{{*zsx&*Dc_&E7`U3wcqSw!Dk@aXBK5<6Be?Js=4*#D@&FW8 za$!YO%@)tgra*)ycrE@aF6Ivzmn1hie3LklWWN@~l#1jMvtjD^e3-2Ec+Weo#bJg{SH6|A@m?0|z zP-``tA8(QGVh3&n5vTprhj7^#t%d-I(~C)c?YjHsr!M<_E1)G^EIYh}rc*=i%lk8w zKzhBTtwhLsT6M30*2S*B`1=dzR`L1W1>dTD2e!Kklo-OwF>9M`6}IlTBg!+~nMSjX z{XE`cvszx#5OuFpylOTtZ@Lh?3Sgs^G;u9}l-rrE*<=fU{z1H-wxEG)y0QP93TmmJO56VUJ!>)cRwvqttr~+fUcLe31Fjsh z>u)XYsZ7GY&a)EbZpHw4-LuH}22GTs@#K2}dClPnO-|HlB=nuRL9d28a4cecQdwr} z`g%^Zcgqsp#hs$x)ferye3!+1NB4dU?Vr(hneTwHMh-}NK8p8z*p;qR#v{nHC5y>( zuw);NPKs^{mc}EQZq= zT*&uFSt42hufRdb#R{^Mu?w#RBlzGt)Dl}Eqre|IE-{}jLg=HSz)|J`fB{C|YxLZP zntViTq8ZX?QE7S1 zeuvENqwS4)nRz49;aSE2W+&=^jja8xtc!Nl#P?MI8dcDm8>;oY_89HG@tz3mg#!CV zK%xk6p4%_^@nt;tr)gfFEkU;RAl}Y#&(hNf8Z?b*HL_SBA?vB>Xs&}@8qaP~dIP{@ zt?+6lj9T&(<96=A0vCJs#=R+7BtMPuH_WhO{$M7^12+MjTCgHX$@020XTQH@U%^4F zy=U@dRUQM3l5Wj2S|W}C1Xe4cJ@L7plW2Cxj^jAOfieMTP;WCQeqUhxV4p>_)WjF@ zK$B};G0Vf$>EsAM_>Z4SNBqp;D{+?*4kh?udlQn21Bc=aM%9XYli!)<~8t3U(EHsew; zcmC?E&DnIRES9Vo2@|8Y2TEP%TVN&_$Hr&!{)OGa1!{U67yfH)kRB$9mI!|1whKyx zmNW{8D5RLtIlheB#!kpl>~lbUq8|L6QX7Zg9QtDN?7u|X|B9LZ9TZ{-+ajo-vMCN$ zHyLxi6f=c@Km)@Phd;$sLzr_$!rk_aPSuQE@d(+FJ(|jpACpxwaeN)_7I2Mm2NB6Q zpUD!(2Y{m>=w*3)wPvN+3)40+63T^wV5j}YZ4nSL#_X@XaJ_mqU7<6p}L1l9{n59XQrR%A&bZ$6~+2y%g=U z!eu{z44z+~cdP2Fm^E5(LbNMz8`JVcPI#JavT}esw3iJQoywHE3gbW*cps>Me3nUC zv|izGr32-`t8h$>j_4K_?#4pVp@ioX0;#uS1im#L4CwzLNc?|cZQlqLKq9+;Ftg2P zEpHyd% zp4KKRZ90{|;|n^8hf}jqB0f5}PdQiLMtcp%NViX(_RmEG_s*c*IZEK}5Q8`L4;XwZ zpf~f4BzL-JR$@vr%#nq3y#I)JJcC?@_&3zS?hA;o+dkes7vsb1gb}%6_7y-HO|-C1 z;>9_$rx#mJOho<)OP|a8O3Guo`PCqgnW0uhyQ)3tb1!mG3+YmFs|_J~WOxwG5E_Aj|u!k?-y*+-Ehv9DCCu zEvRZFJ*)Dkk;i!a{O@KV6L^J9Fsi1`JTbbnVsACe4f0<{OaEfebvq_~jD?h1 z5IUs}bnf8nEa{qeGH2dBt&IT1Tyzz;@qdkvL1yZyw*R5LKwN+(zHNvsgFxUIy??F( z9)bG7X+G2p5|N~>8tD-Zjzj5qTa}=*vEO-ybZRB@c<lBYcXOVlp9ljmyCpY8;5^T$+e`bXoE85e?gnUsM+$lDZ$tMM|1FBlcb!1*XI3T zu7(PgGiCp6AjtFf7+pM@1bo=w_(<78W#2Z@8xj`%_FgsW)UmWD#xut2r9B=_PEb&O zJ))F`{aq|O1Xn@L8w_nFltIz96FRLjS}=tOXJGc%=ZaCbg~gi$OxFe%yOaB{KY2fx z`O(nuFc_G>*^{P-$#N+tGXZ!E`gj_=4c`(_jz0pKwoXtIar^5$0kl%uC^lsXthPNe(A-J^eG%bg%wj(C$PEyRPYTArhQrG{fK8%m(cp13-zdp?i> zbQpR5Dwxl07IX&L*(*=LcDmHQXQ}>R5MvD5$lfI~RZZ>EIA0Ay)rs#QQ%)B210)=C zghLLhaeX zhm&cGi)~=lD};E~YBR7pOrl+Q>Qoh-^7Hexjf6jv+mj57@4veUb z2y@Mt(0W^oZxVR{S7v-8M?~ntm{TuaeerO|XX% z*nHy?eeV4u8ZPpAn<3(qvSVn2!8A4}2icV}AUv_eDmeTo&UenKdgYZG_qCB}l|D3? zKiZqbrWEcNX|Hwv2^+J+TTf^US%iO(`fMJJ&mn0fABDt z294p4%K4o6fQE~ayu~w_L4Y2U2po08I5O@Ff65Q-1?F4y^?7+DxPD4F^nWp;G1!f zIr;ki!hMXj!c+RgcNV-^SGyB2Zrm?|Dre6~Qh)t{4~VaG?v;dZvfYoNsHqp(EVc8d zJn?8d=L{m&Zt)>(mq1_3Q9vfizo~ zoj4?c^G9Gk7@M!!uQ`m1{Kf|ruQ_~VSW_QYq^UQH9M9usw%v3q7%2juB4?e}e)Q2x z03L#iKa=56;`f@+qSSDD*%{Rs*Z)YDJu&uGc887Sx|ZC#@E#o_@Vi*;D@DT4`NP3n z=oM+K$Gm9KIikS&uM#_p^{YQyzjHlHM3f!(edL~*XvlkGX8IbP7C zJDrMBIJN24yByhgH8x=Io^s7Uh_v0HwbVjR0>FSmw%N|a(atrh&p#9F-9* zFnJbf;IShP-o?~{i^t?4G<8MuhZHn$7&n`Y(TH>D+#~V4dQH6t>6WV>_rvxJc0fq< zt!z{Ffa6$b27NNYGfr(m|MsWQ$0cVdB5U2EP%&9?WM8RUfK{WCjw$g6W4zX5;{@%j z;sTCSrS5VqPjDfAF=KkQdn5J@4z8?7*uL{NE1O1~5bRo`R>MY1rRXxjSPPlIpXaGz zgX%XB?e1RbP6mU(~buA8RKM+974iqJnsDikCil^8oSM zGF-EOZT@)?TBH_5_qPUpwzXwlL{bPza z6FzcaCy|*(1Wa>eQpj1F$6I7W)sO#6(+_A4;$dmLJ@?^TSZ*h?dZg zLgYH;2hrU#GkZvd2a;u98_VWjPwD4m%3l?1l_FgXjRE~nZdN3TolVRfG17Psw4W-pY8PGE&xS{cZNo8WH^RrDJP#Yd2)Q~M~~NLSafcw%(fysL|eqO8S^ z&GR=+Nk3gD)p>RsmWTar5moiwqZw`hNC7_ zO6AOVlBhYuQFbbpwa%AW5dU+?YG|)C{|u@0@5LcH25`4;dk+$PgTk1D)uDdxg@gFT zZYyye=90%)s^*5VbJr7$HR8x8a(+Ld>LgWrh;W%_^_J)>AZ-J$dI`M*FhkO;D_y=_ z+`5r5018%SA}tOR%LKfc6$Uc~cZN~j+az}Uy;y;KB-IPOt;C^FL2*;RILYmbkqh=J zq+bd43zm*QJT&4P%f26&=hn&sjtjtuPfIrwhX$}x(siSTOjp${0b}PVr6^8OS=(?j z&YO!f(P%Wm;NdWy)8xs;lf1+$3_q>ZXJz6kFSG6)emT5)(w_qFl{ANBnhXGKO_)>S z?*lnsGw}TGM}eqQ6}(9Qq>!z~6#rSir%SKFwR^>)$0d7;1pRS9$vQsM&>>0k`5Imf zp^#jioQj5AyjyRb586EOazkBcyZ8qk^bxg#7p3g!yZ&hM;2&qLd;nx+7x8*1su{Z1FF^d8rIYcnynx0Jo&@ZNt}{ zT1)k#oZ+7$&ZihQTv3E64Qn#yDEwhpAo_%C%gm5W(!ekF4josPOV$=c#5trWjy`#k z?pp`~h)obPc{*wkb{&FCPc9okbz9%Gh*`=JdB?OD*O9(Ut59#1Go+NZeS8nxO{dhq zO4Q^{vb(cXjM%oF!`(}FpWDQ1DZ(=|%3I9AF>NC(Qr^hN=C$XhSL=KGN#Y)ZTYjUn z)ootHiaT)5Gb)NlJ4RQLw06q0$53z^>58TKoNYFWFQn^>wXM?IeaGE@$nLnsxO+3v zl}zaIM&&OR17v^FBT?AtFVxVBbHZ{P7bOkURtAm&d2_F{7f+j6QZoSJj5eR8h1?f( z@U}Y4EtL4;MrAk>myWa#%p!&*AvyCTvWBbWFeXBuTfYKX1;q@^llTo}TG3ht5)xH{ zAsvsBYdxT+2A$->+ca=3q4!84aQ z2(}HEwNPJuNh}kis75QIe)@Xkr{IdqFFuh!wEo{JmDIMCdV)l9hj^7H8!Ns>NVwz$ zUc-t+7bPOlgv8CzcGr$|hW?B8w@H7PO2ICGjuh5>eBm61F|Hf21J~YVV*gFvxQiG+>cfOFt)93J!*A8%z|wd z|6m^@+KHVZ*8RKJ9?<1jyv*3)mR{+F{Y~*NRlq8c26 z5zQEBxrFwr-@S1evp=*EoXR_nhFIp{r|dt~j(j^ZZ^fmgSD7O>sys!?tm zW}vI(&B9s1c`g?Z{QldwaAqzh>v=MOOE#1t_#rnrgoBTM?t2)tFF2Wy1Z+8YaQI{d z2Shs29zeEusfM-3~HP|CDTDbs4A$sLl_r7b$h z0hG5#_R%^SQ?-3tcu^yx54Z4qRWi%pPO>=zMy}o%GPgSiAmA<{LCK;c@tP^lM!oSn zfk!V5Y9bm8#U=^$(!nWItF8>_x~E7{v1c@iQ3LsLHp56&hadf#dOA$nxm{V^xx*ZOWsp1NQEDJBVU*i@m*K1D|yXl8s2?oatAbuv_Dyt zhj0bsNUZgdc23s^lGn>SwP-GP;L1G1=b{({n;r*%A9}I@?BqTqRk&IHBIVnZ^!*@= zHR^4>+o2RyUKeM;CWAMrR8lhJk`OU+Cen!TAau-UTi;%f=^To{u) zC-I^@w8jBH7&C@li1mqEmSkFnZ?+s)WLLu_?3~_#b+;YMJ{r8bD(@jiU`z$&po2yK-$e;^LX^K|VTwBG}B`^6A1B7b3T13#im zhx$Y4%lm?Tb_u$n;1$)DHs*uTH(%d}gHebnDYyYxMwlvR?h68RF@TSOyg!$h_k)Y~>PA(bKK z4-mZ%Xt_#IraP*^9_9`y&-N3r^Ft~Hy`)~69_L5@dX5=mVDnYH(}@}Sqd9!gLuypn zbh?%*&Kr*X8$-yFrTAvI+#Z4PPq|?%am*hWMymZ#gl>D;5Q-HBY>d3!28haxwhRe& z|H}d>JCi5jC*ruRW5;*>%q;1&Lrl<_GT)S(axF6{cLbErFQ4%QB*_+V(tE$?qAOth zUe$@q%NBersfHC+hEGy*%}&~eP0z}X8A*H0A39)7gkAfDL2*cT@O%qNu#Hc&6L! znB5Mg5humx=Np+(XHkO)um;_29$aW&+8&+U4`gXg+2?fd2=nR?om)gHdvB#kig0~# z#iB5_KY3n9GR`{ht_$p2zyqgmEK>p>`Pof{za&(@NC;mv!*U)iaLtb_Ce=ke4xOyt zb$O_u$mnval!})%nHFx$X?F7`dn_1-zm_5kNIC_%Za{cBJm?w^ScW-R;(Xtq`*3QkWasLH zJ9uU8*Iq^q(w@ntmOQuO$6mW_^kIns%TsA?>LFdvzWFKBy5ZPR!d$KA zR(GIoET3yh(T{oBdY%wEAkGFs16>Js^e4oUGb%)mv||dV+SzKSK5d$(PHpK=d#3ng z6>YoS-yC^I{+0i{{!u_uNRpW1Ys~!1f2$=PVih=n3v*)fcg;WmCTQ7P3!|s~Gm*a@ zhMBJV)q(&k#2169F?Vb0lJb9->8>Zp^q$_m7arlSixn4RCQGv@a5aB@Iq&`l@yF{j zf-V65@@BvZhCTJFP@JH_R&n9Qt<**UCv-IiyZuTpHoKmW$mo z_wJaz^nmmF%Zihu)-r``ln>>eO;gq~36 z{#w@(bX5dmp1Ngfj%#6)P2HJ#WXRnU*EU(Aahf9j`lIH`uug<`X<)l!socWuSxuv( z@6TdJVw;*PN7&*`pij1zQcX=(T!#Szz96I32pwr#d5cGAC8f08RsQ68X(Hd>#|0kU zSeAEy-*H+m#hkL|kj3~;_)TyrWlp*JoUUm%h`Uh0HGme1FzR%4e+-dNJiJ3v2yKa~!S=rVOv>-C(56gmljc zohih1ZkC7o@d*BGvlzmb4iEbfO)uy?X|$~ZE8ysh+*rBBLp&!J++dbc9Ko5gZ0Vk? zp@DC%P^_-*!!4aRQIPuy=?!{1O%G-YLsRpT+Wnc83XmxQ zZ!Y6s!=fO|uiI{GhpWRqQxxk}+16T~bw#;cv|=w!8Xf1`{y@iR*YF(JcfU;U#5mPK zi}kg?o2Qh0r9Gc@M^uz=3+m0M(&oaV`X27Q7K>Y=l4)zWofYx(H))caqV3bpYdz~RVds^lY0%Lg&y#06(Tin?;SdF;YiyV!z>SoJ#?8%zIUj9{{t{J zTZGSqK(ZLL2<+(~X9$}7?nsn}WApO`h5Go6vmeF!8duP-r_SU<9awE(fawEX=R;O) zQ*tvby%6lo;|RJm&zol(o2JN5QK~0+xkuL z{;G%U6W<(8x_p&Qh3sFe!cnVB2POYuK1=6WYc#3$0gyXBwky6TJ8`qzyL&p#f1_OJ zL6VRG`kg|HnSu6X%~%XtBPrw4hoe+)aIUv@zn5co=-?Ufp;%?mh|B0!$ksJfIt;Sx z0X+>ICZC-&;ML8VD{LS;_9Rr}C~Mdm@kpE?4+sU_E5kB~W6^|& zfpzJOqwEOtAJ>+i0NMc&3`nX>xwFK#QrqLe7dczWRG92V#>J$5yHwobWuoTR1gVK{ z`%ITE$+(BilqN7A`pIh`mC7ZmPM&Z4lDr@fEIzwX(ea2hy{zz;N_X;R%{}2hn<9X1*=lG{ zbRdtAh1_=eKH4($7a0oiEZr&?E^&kGDTbe#JZDe?{*>s6>giZ#vX)zejz9lqSYCa# zXX2maRic_h@t>aZvMbob^3?SZ6~mb?WM?k#kVc*nvbsF~+5#i|pt?MinG}hAb6uj_ z16kI>XXTV4am!}{TSJmwAO7OotJz%FiA(I^2GXXsmV<$y1aVIX5RRPmylK&Q2L35X zibH?cEb}|tTz6GJooRz#2#x7%_HX;H}a<=Yr&4G)Qv@>pqRT} z%BbCf8eY#u&(>SPZ1z|{JC%1BM(J)SRIpz|eLY#;*-$^65iiJ3NUK(|c|- z#1udF@q0z*2F>R?FU%2bSJ9o2m9Mp!QMg#wsg;ZZL#Ain`?0ZfZa9AZwST9lhb!kM zHNneP4Ha=$({d4t1x>rhJJ2E^saCn7wf=&Os=?*X{N(j?_s?Ff)N>0MfL4`#chu-F zE~enO(%~wiYYeF5cQj`qnuVn>gqFj!=QPTCoF;W(qbjL(O{b|l5>{2tiGXc> zI0vsO@<`Wfda%c!)a&iLYl8WT(z745({HqOw5QJ$|JH95PW7i5aM3`P>Q81$ejP_qCCZ#CuaX^f_VZ%bou%~;=6_VA zm`0n?;Tp2eItf~4%v;8M@&t0KsaMd^4=*znISBgGYtr2MIqIC^Dg*#{uaYDpSEfBf z;Vz`fUR5*BVRe7!ye=i8&S#bx(qLL{ z3qW9QabsALcb1wv>`5zT4og{B0BGiU8L5B$sy~j35Aa{~y}-tL{{|mxWwId25=$jm z*Ly0PD-M4|M{JPxP(6{;q*eAV;wyn`$;+=k7Eotp5r0B5eB!Vd_dvAjT{aFDUuO+- zG_epTgHxK5+4g9H_qAZWU__&VVU4F^V?lq}zU8Tw%4=wBRFsoPKg_%@ZLtb_EvS#C z{Gy`9j1OX-ZfX=ej~E?yOC?AIft^?Uk;|gG-x0Cot`iK^cx~V9D!E-Uk zg6HrW=38VJzYkJlMVZ9wE|pEC?D$Gi?e-~E&Cg}M6mvSwC9P}3Sv|agHPX@BC@a&d$`b7HCK3a8XIMTutSMU7k=PGPs0mvkiInEP74`l1&C!??n>D0qZ1qvK7*;iYn0uHr96gXtu{!B(HD^-TKO;?i5J)Hp z50+&*^r2UO@$hvo8tY9kA`wy|0=fcrOm=adDq(Ue_PCHHG% zHcsuT&C<--`9adHQZK`I8Fvo~y>}?V)2wlp|3l>O$T3~?gw{B}C(?DxRy{}2S6^g$ zm_Prx{itH{O3ou69KJw`?;zXuWzne(B%T!=9Lc9jB4PKZq*Fc0fF~OE zSjE(b#H79l+)pdx4{TotpAtZOFHDueasnO|un|UkO_@|0vK28s`MCId_@)X79L3N7 zr8HD_<2S*asZa9w)8j!BBd=!dBEun8L{77&MozQ5&PnJTur zyF76Z#n?koUxISZ@G(Z1aKNN&3G{N~tCcHD;-{PV@LxNVy_t^vl#PqLa?iAlR zf#7yk%m!?>pN5{B+5fz^UhAUsoBd)3y=-GIU)<@%c|7?uFlL4*0Jl6RhOA)rG>M5a-97)zv1MeL1OoBu^`XJR@duh`&nA-?)5u8*5LD z4Sj#*v$&245pUv4^T_FO9Xoo^Fs%E@y-PF<(h)4|4vkd4(1Y4FRh zv_(PnR(R0fR-U??JyrjjR@V^Qbn)miG=<2Nz4i3j8*@nQ_e_BMud5rJ4_2n-;IXcj zGm{29^yZ`B)7F?%vi{@}V^?2o7+jevQCSpo(2b#hCPmz{0xnhZ1d|)T@yYVlIR9Jk z)L+S|ox?KQc-^cQdTMSfzD9`2?g_RU6Kj~u8F{3lc2dT0s(jDbNU+_+=O0HaTM@3= zhuJ_QRJYVPgmx=S zg0z+P^U$>^5x+M5dxn!xyNXxlktI;GMt+Br1sr$>ZDcsD*v$pf5;XBRE$w?JPO~c> zm1QNI{HDpufe({YWODVDot?&+{|kk$IO9~ zN{D8W7pw~@=acp5#B8ZC+~jX?E6@-sn<)=17^ul``t!)SkAXZ09L_E-+574?;1=Hb ze=ZgC)S0vs4n2GHq$}(k z8~n6f>5d#ZF30W8Teld4q1LhZx>#C=L%=rwO(sCN{Ua|!dz+)M)@WbAEwiLO6OKU@ zkudBn>%g{ml%-0dHX7fVi}cr*rTm~jz5UZnrSD4LQtQ0{iOs_tm0<-fsNs)1RYNIE zNAvjFX|xK2qG^DrT@>PWxj1D`oy|AfO^1s`;_-YZLM&Y1Q?M7uI5jN?7>Q=R`mFD+ zH1s4u@b7d1h&xmxmy7$?@>gET{Lj}&=viTWk@wr9*AOLXhVm(lvdjzcZppGjg{oD=>x_u6V6D``R!Ib&=Mm zMM4E0)mOWYvCXtSD2bV>-*Z7}eFBjM>4TOr6&RJ~pW_f7gAhn)w$4Bt{|r=*C7g!j z^19bt?X7W~UvRCJ{P})$$6po<+U-5MS^RdL&L6YoY=fS8nm&|)a&TM-EL5JwEFmDX znVG5ClW{J|vovjvpj!&Wej)^CM7)wqxPeDO*7hQ0!gjnfsEyjyv46;iQRa)$OR>Xe zojf=s-r=|Ku~+)`$v)wHO7eW!6I8O3rZ{%^pQ3A=T5C3Y;M0Gx=#P7VYnBwm)|5Qn zt1md(`*4jvOrd|-L--Hn_sbE6=A&p^qJxk=(sBE>`v)PmgaN}}D(WV2@od^f-%%;!0%t{h=sg+%k z27l;3=(d*QDvHx*)(4OzX@i_KfbPtj4a4m0U__7zIq{Zaq{c~ty_U5H!!ex^NsK}! zkMQLMD>-mNnL3`Ew0xj_dH+x~fv*!zR+TDbc?S{^UYDB@I)vk!`PO%ns9J8oCffXKjC^j3u z!det8lK!vV)t#o&zBm`(WXaoJ@Rl{zcd$Ur$#1ygspGc&YCLO{fw5UEU}CwkQy}#8 zIThRzc>CtSG<#I-F@XouQ#3U^s520|Q+&rJn%nBqhP2mK(M-^ZJ%TJZnkNcb$d>` zl!REqFwZ2w#Ck2YL;cWztc&+<;B`iW==JQM?>o1AuHXOQRKg3R;AuB04_Yv>Gk3i6 zKGa0Y-zqOf^JAQ>+Ek7-EbD4eKH^N~^$^omLWT5enc-k57J6#xK*C_ZutXE{UNbw? z(~1k?%SNvH?L8iMkIw@KVi~X(DFZXf(DhzGep*k1TCdHmQv_o+ZksnxruV5CZi|17|YKmu25H(WZA zQXk)skA!`qhu1V|xwrjYW~=`zKT4XC-Sh%7saJP>bhk8!#o=N6am_|1y_^{dQgqwS zPWOaY)w>aKj)h2I4#BsA=_}cic?#^PwHMeZ^<`p@zqRel#;(fQW~t~@Rp!0(8!BMu zq|i9@WZWWFOh5cncFo?}S;CH`{tRqS?*MwYFmnL~hq8gc96l=e4oPEq8hxlxlO_Ht zGd_5&Y&iMlTj1MEjrqE>9Qd1|m(yx*Xt0Hr+1;hrS)N7))S=H=Hdj*`OTS9_cQKBM_N1GDBS9S&|yvIF$&NAM+ z$g)fu?-OA>t`AQQ$eTuczOpSMHpp+X&qs5f#gOiQx?v1?>-u3P+FaVqKiLy*+9$j^ zQ55x&Kg2llb?ewsO-+S~!W8EWG_AI{XuLxI@YcvrSS7a4N7ViPob8PchHh$tl~98i z>N8an9c9M>$|GUdhBV)zTob)*SA9d`zOn+-tutiFuA8jw$9~Q8nF-D`t?3!Wz!3Ld zLQxk{-CG)lmym~M8rUI)3Kk+ZHjxVEM_1)tH>Dp=x`$v}nRVPguAfV5A)gpOBFV`geBF-?~)h; zGkoilL<2q%Q-$_?fe+>6^vVm0yMZkO?8Ok0n?`sUx5d*w9^5UUFAefT^65V9#GAW& zS5%y1A{@z^ppNCK;Mm|R1kpK=RBatSLMg79=phP`Dfaj|V_M63a{Y`M{{92J^3l~f z+T($_c1M*{368^(A$90R!;#b_xgAbRaeG5z1Ks|XiZeaf6Y+5k9*u3sjq;7s+s75_ zhtPDE*lex0L-v&|>2J9=ktX1C`tNT)sjs=xGR}wfiDB`FNRA1O(WXq#oKvM}xb!%| z`-(ihq>){U+^?Vr`;mBpLK-2L_~``*b}>YByaO5n>*$}+*a_%IK1D6W(4e3CKgduB zkXb*ec%MetFHqq;U|GXC$7KUqhq&>&y({G`gzfPaIY+)goubwSe?WfF3t_c28WReg zuqsU17DoltxrGzCza!F-!zUV%B~k=qGPtFNi3YpH>GVbizn2*$cAIat`ktv=+f*N+ z^gB{(F7|su<}do@A@;SKIZh)qv!6w9MR2(`j_|L&RUi>)$R>DFI(`0pQr>`C67`}t z@&w;#H(;?AT}18achXg0@x{{L!QVjI0GjI}&3~cX4xKy{x@w=NG`1Yo;=1vj1KMIb zu1wGoqvjl$&3dGTOdMxazlPgESTYV8nVdp-J2e%G_>g?#({t-;dqOns^UJPhDq^Iy zg}s|!@q6l3K5vH|H*N&Wu@VdPe{IkIlUrm>%R2emP0dY-u7xzMbckM6CgD@gM&*<~ zY-4oWRopy&^}b?$0|>Y$vj*clu86x_+uev|#i0Sn+8Mer+w)C=WkhCFy#>5Qq;D$X zcW2?qIw#dCWsz-Cw&w@q)&vCSlm<*=dwOsH@^&WMb2n$LY}9y!*gL;rjQpf#PybyZ z5=wPeHdn=!h`nH^4E48<{VH1ye%=NuFE|e^;9Zo^<^t&f`Xt5s5zl-zaD54G#%+T3Dj>YIZ#=aXIL4x_7TBpg$Hl7tuM0v z^_s!Qy&a0!xQZ0rp_Jq`O)MuOG4@`hex>}|u3Trb1J5kO)Wj}bxkpI#VDjUzZko9c zxURk2+K(D_;uHR^+=4f?6f?r2{M1Gc-@#&h&Cl5A$jLK_@l%{%>b(L!7{nwu+R|Ky zK=Fz20$EAqEkX%+>5bCpRe~C$gA2aIJg3~Ls$aH4(+Mc#yHyA>yOh%iibQ7)PU28R zDkeC0muJZ&a0-%z+H|Sn8P5->U$Rs`*@kV}g;j->%9vBYrO+%c$X|tfqp@(`?oK5a zjY;hhmUF?HxrBb?yVTyoR*4q>&YxtQ2iivm9|$TpDyE(_?Bt{U*?Y(p^9$Qpi}gzi zk@q@W2{p!TPso+=Mt(X}#tTmm5?tNi&O2UEim2hFohQTut~HE4#cVVW0foxmxrDjSlC^{lzr_3`GwTv_PH|%T zEo=W<;!@t^pUs*=z+AEoAqoB$zG|#CkJ-4d(~qTkJ>CIK7ml>qhrPqvq;Ukt4a*Ns z6wwLT!In35p{zG6Dpqk-<1GEE3GPxix%g<{k_p4*`*q|?usV&BD?(XrbuU1r-Euj_ zc3E-@-%?pNG;*ycG-{l0>2a}+$fCOjJkRxTIQLIrH!ls4+Wj?wB;$@&QzgS-LQQktlBfg zWmQI;vRZ$vG_Mmvxg7o1W%T@O)IA81?_juu$Vx+;xh0qDbkUaF>hzQc#5rww zPR5aso&N76fgxnB0GhY^Tpw<@JbskYZs0qsJ+7dqfk>@zz|xQ0u5B+wKk=Te(&TnR zqXnu36koMY>8(|iUL`({~j(#fE?m|KHRvg%}&^%*vhL)6xxlm zE4TO5Zna_IhHq>73F9|Wy5i`QKQ~`^s1x?wpI`bZ{!8UhvWAU>n`SrlSk2k={qdj1 zmfuh^d?;qF`*=ZGnJ<6ZuwCVV6w<%>HjEhdrav2%rUw&Cp_YLvo)?C#z&ZvMh zjr=4I&U3!OZy#o#&k0w2NXf@$-6EgUMRpqRT>vk%E-UkqBl5@@Jk zuiD0sAot1V+;xTGijHfKB>!+wSRQ|b)Dd%mm zx1J&GJtxzV_`aB0lW#q4dU%q&m^SgEfRF%JXcY+;ermLq>O8&Y?(aKV${%7>wA@T3 zu7f$bU&49ney3)}d-S#R9M6L5Pk;^Vd~@u`Xv&0M<> zr8yHF-q>UH^+TL>blkjYR{UeeX_1U9<7_myoqmW*l6TRSYF_c4!O`1`$4|G~ z8rc&}l1`@!A4tVMw2qX+qC0*6UaBy*9&jTG4Xt z6~ZMtodJygi@iNdtp*C7g?l|n8O}pufk-dW6`jRZhK?B*4(I1uT?I-MVM;KI-k)R7 zhBo23cP|F4ZYo3y(y(7lav zuPCLdzX;VjyAQ#xBGo6EyQe-V z9alD+aYUoxMY-g8dF#=*v1FroPyg{K)G+~bK3Z?u9D6}oaJ_q2=IJFsw9VtM?dldd zd^$!1O#JLveY#~rPt>yF7Zg}1~^E}Dtd+m za9<=t(rzCL4+ijJ@hW@2P2?a*8|K%Ns56Z`S~9=AMYotZ?Y5$5+@;fk)S zJm}jOBjt=@yzVspoX;cFQ5-{ZE_Aw&G!B`dk3_R+)9|~~$jOK26>NyC#u3xQJ>nI+ z;3ZXo;+8AXiLP116Xs70P3XIEX2d*_sZ>g(a`++s_lsRi#gu#+Ykjj_Sd&V9UJXoi z?LG*=^*4Vqxy@r4%K+D2Xh`E8!UADY_%t_64{lp&DQ219G)A6Q(+Hw?Y1`c3>3A>H zJaP5w9-kYOOIJQ8bAvWn`G;`__uezxRA+q=5SR@#euyO z`Yo$qNNaRg7X#N9um0)`GbCDk@{tL&*ZY1(El4bgs@OKGMX6W!Aa$xXQRv9 zWg%}hy>f!rl9~y{)rg{)_;(}*>L+qm*A^Cqv}@K~tN;S)ySSe4;)1Xz=(?GTNB+rzId>_ZJk=t~J2vySMZdY~A8+~g zHFqU$%aM;h%yN7k!O9;cx^o_^XQMOwPQ7V)%+@CaluN4~c7A#sY8~6+{-8^9E)+`a zz4^DA2Dg(8TGk~M+4%taEwG-(3YPDaMol<9J2~0Xo#MF@xn^=alvp!b0rT$O!z~E2 z5P20XoY$^UxBvLa(x?zxIfZ4M$T^`k&9%F>(SKz58&rLqyR7Rbg4^X*A7MRRuLG7w*KOC#YOV_6(Tf-SQ8-;|B8+_P_UJs%s-_pt3am zoBWLzjyla#Is|oleZSnzutN;t0rH+3hoev_qt1H|m!87Ez^7t+Csj*?U8XerCURty zbzFB`iAEs{3yzu_O!M8#y^n=^TfVT9jWX)Hr~~nXlc>bnLQZPn1z$rPnVKCHZURRP zyI^r{zdtKc3B0UwLa6Dq&xt>d1Fv}^%X;48?7M-j(hz!^IqKHuKVLtUcE;FUK3*RT zaTOA+Dt75S?-hr1Bt5L-AQq333GZlM<tx=_f?nxP49bxf>r)1rh; zUT_el`R%ch){=i;u!Qpn;cJ=m90qt!XTj34VUEt%At~nVP$l?mf}Fme%Y2ih8qa8by<8+{s?jM?7U}K zv&}CYc7gtTXaQck!+YmzBlncIVxI7sw|*q}^kSj6w9|`uBJu+~1OW)Wr1I51*(U214fI>;M74;Nm~3qN z#cqhC7^pc8$b9%iKf~WnY%XS;CTBb}+WV+|C@_Bi!1KIjMT(dtqo-re!IJ_q@mR{v zv|)4UEDI-eS#jmPRG&gFizQB4CR;R96;|yejav$rzd=a=l68pq`e$q0>I5EzPpmA0^>`exK2S|o|D5|sLmf;JfeeG{(N>f)dg%goUo?sO$A*CaNwr4_Kp zn-1VUx1Gs8gK$Cb`Mv7j46@^!Frc5Gv0mmXW+CzW7lH2E%i zg1`TO_-cVz;>t?#S`wl=a^36b7r`huX-6{1DAXu=5pFHEyeBY1@L_HY%H!O;7Qi9Q zQ9^-Otzh!_=sP$$1}zD`g?dHAXt{h>S&-W9sg7^)D?v4fn$?6wFc;nVuQYUU6u&+l zpfkGKPb79gp!GYX_NYW?a^MT~j$d#?2YO<6{?@>W?vVIy$k0*koXkayLJgC&wYnWh zrg^I-=0??~<@}Olx*jg5@)ao$F-5aC3nZ599_Urr`8cZw)CNGDmG6GhAMOuO`;fE1 zv%LL0j{YvQkpJ}U*>KXU?A~hDq2-A$Hi^38<}K3rh6kDnF5T!sg_@|wLFGxROiU&J zuPE2(Z%IpNoKfgT)&DCLu+2^7nHUqd?m-{PKxmxjM7E)_WLF0B>erARB%+-|BTN~z z$WF5XHkD)VG>%}7<4XlWwtX-S1Ch|*gD@BF^i92QA)PA9h*~b!CrL^jfw2{wJ5==o zJjrtTGvvPdV(mSV?}2yrYPS8EpcVFqbwMgrqXK*N*4gRZ)^A9X@CEZ35#4 z{Pm}O4j?gy_`V}dCK`b{+W*r+*3|w|&kEq?V72*V?VO>DeKD&XpZO&*GO(oGz+GnB zi23qx?yhs^YJQcb_ZQ(U1h&l4J`O4F>AD=BECmkIdilKkP?03vzHTfQjLz5M=_2WyUj;;+W zEt>N=+sVc*q~cveG36fEO#YP0uIH1$h>1rqnxhg1r8mJWgttr=)pK= z!iBJ#@RXG@i>wQj-r(fQ=8vJiiDToU)&g!2=-X+e*v0VoJ4>Xt+04C2*m6Rj%`|Wx zja6)kTxjX%BktPU5ZS)z8!9^A@@!Xuj?KSys0`|F?4A(z7t0kdZ0d~F@IVy`Qdyv@ zK`DT8Y-S3aw=MB_Qtnhnci?$8k|D8`y&Mgup8oKFoIkhX1@Jo^H%cpo4Obr5{z0EV zO;j2Z=vw@a!SS`is%8bn01h>C+j~>NSi}HODgH_Ai%&qkLB)p&o0)%M)0ep;RBKC= zc67rjfI2NW&1X4|39VAL0KYd$th%z|SaXNK?oG~pj?ynH8%$D=6b;J{J;|?baPPJ& z?Q-4Ra^_m#%UCF2t!iQ2v=3}z?a$d=b7x75?G1yyQ=L<3GV1U@yLKeX2aRgJO>c|c zbRw_bNg=YCy^EYCUdrffVMrrwJ>O($)O6AITp5D* zyBkmaJyVCqjl_d!vPNaDY;i|#lONrwG28J0_#bb?l_RtW43cU)M%pLt7DvQ|- z98u5EEY)kO%ZaeUM(4T9vv*L{t@q36UG8$m{285^-Oh6@D!RuoXN2a3QoCM&I4c~= zdT^)7O@Pk1?JAo9A*d|aKdhs0`L*WHepYX0{Xi^FZXUD(^MgNo*;d9fOj31I^;TNI zk|Tmqn~NzZb#b_AQBdKcJXKARX~LGqyD8flDA-@Is|TXb)`=gbN2Rf=aRSac*-ZN$ zJhT1B%%S5V!k=o8YdmA9x5ewK!>|^W%F3yAP}aL5Y-l-8w5FL3Qhsu;tG9BD3AGUZ zW_p_II05B*EcKg=>|VplV-e$6-`vKy4S{(cpYggmff?_EzU2=V6^Oh0!PNGYM*okk zw+w6YedC9v1!V9AB}XU%BHbH}0U|I|RGNV_qepirsFdVH22&6a>F!p#W23vfJDz*~ z{{I)xb38A6Asge^ec#u0p4aF6#O0bcH6Suuq)nWfhC1f`+r-wKj*}+2$k;p=qFd{g zYVvOs8fsSW1pR=yF5ueZ&najqDP&aNsRNFof1PeL7k=RPi4 zWDw|2sm4GjPN;NI`wR;MLL&)B6BURvYy;TbejNB*)VbLBplJO0=HM-dj2qKxJ& zr6(4?$Czy{D8>fA!mf-qP@tRDr<}P$&4YS1uYq_FnX4tLF~ElX@7GJ6*?4v|eIl4ewE0IN&7q;DbG!z%C=GMEY{^)L zak;g_?2sw;u*>0h?NcOqX2u(w)Q{1o?h`E+8*~-hg~k|Sq>Aku@A}nHybG(Gxv5YR zXs0c1@U_u6w_2$^MMRd!Kwgf?V0qZlH)TUOGlF3s5ix3mh>##DZ?DO;vK=sL20op~ zd=ic|jO9DavgOfQ_?3_@Ax;!q^fO6vF>g%m+oe}Mc*Lw*?9fN*M`8QqM%WfN@|TI` z99pzBR=ivSX`OpKtFiiPV))H`60ND_)VXyEWAD@z}S$QhNygZBt z^d#^&gsyk$r5~sz5Evd>yk~+biz@_hwl#j~2x1O@VEWLQ`vsp`xD^wJ#gkbbeo}Tc zqTp2rKX`s6!FQ&ccVCn}P!`!0)L4UNl+3(%kz(v*J<>{Wj_C=c1aoMag{nvMjII)j zJ~e7LS!m}a5luI$?+EF6WdmR~HqzrwwqceR5*3Nd;0@KaPM^*qiTbztpXRGbw92Ac zMW4DWhYn;Jx4{m$<o)K8UDai?Ga zCC&|v**daH+d7%?_BgMUbj)lPQRhOdm=ILz#+}akvcT{VSfR_s3HA}i0#kKMJUWl0 zc#Bt!Yt01WyR)%!KkeZA6qi*7VpGgt?N+dmwNU1Dn)wZzTP{UY+T4rZL!_DX@vrp> zb=vLrjS#!jjdVExYxl@GkqB#mPcU=@{!zhCJG4ndvwxl>a(!sC^y!I{@L7Ev0=itG zGMW~;N{64N&jPNIo~l)FU;xjAzZr?1ahJ-V?!aPN4vP(Rochi%50_aa(PL&#a%Fm- z_{{;o%XK*WD2SWjU84yB4P`3h+}Y^+4AB;-T_9CmK-ejy8|}Fmm#H1z1*dNl%ijn56vj^=gfIQdDJO`E-BK4v zq+gD61xOZ#W#v}GrdU_VtA7*4>Ax3O_5Y{r8O{HWLS;UWr5(PYC9K`O>i}!5qDX z2V0{0XwdN6qkXcKHbh>f#YrjrymS^A1SdaQ-%KXT{DvPf{bq+_E}Wc=H3ClXb4d70 zOXKI9#THXAiLHG)I#`LPuTjIJCE-8hi;9kqpcI4_=ogJtP=c9O!3)O#{z|Ey-@t)O zP2`X1ViRWP2Y&?J)Pq^apl&6}OtjU}Dy8s}Ic%#DO>8{zxR$27qILt!p^at`jq9dq zL_yljKFdaPv4Db_7gq0+!Oyhh{6Jr_(cq)?O}qt?a^f8SU~qpip;ulzT{2EExYHLzW=&Igj;^e52SchcD@l=$&v_}7%mk1>iTw9naANp=8AeL z>I7JO!DOvtzlXFW)kdM~JZ@12@dR^~PDlOPd)&BOC!pZraaTL`F_lKcCQQ=#L`CDc z)MXZQp_^&%ek*lBN>M@wv%j^U)NI>?&z>1W9sQJ`$@sq)^(UacwbfEw#qqA(m&h0;gY((9Oo*h~#qSE5zw;Y=1 zyRuQ17$QQqg=dZ@`Pn=sn=W(hl zbiZD{zQF8m3I)>IEqsi8cW#EricNvt^T+LMlyrM<`qVBO8~(j&mwaqq)xn~B4nr(g zZhP83_qU(Y@^$q#lnMn-IJF_!>y?G?*cvmPa_! z6ltyNRijB#IEuO;Vv!=>b8i&hU}@GTdqiucMk8g;#NRH<=*FZ#vJYul3bk0`+G+aE zw@I9&{|}72Iio8Z!%3;(%#|Ih;QTc50^=OnUMnd&20Y-m$yStDbY1RL7X9FQp|0Jp zO4#HQ*DbL(Y;N;8wzhWRhA-FPODDHcrBAo|U!t|VKId+F{a!GtPno}wWI39ab(ZiLEzkH=rsXTy}8Wwvb*Pp;af z`%lw*Y*4wHLVi9|U4PAm(?2$4VS6A^&J~1y`mfsh{Ju;9H3e4Q*yRJtgUAaXU`%!^ zxohX|i3wUUu_0tbI{!(l^-UjEjwRzZAQ1ugGrT$4Tt`c@o>qf2dH)^5NKimDLqI=S z=w13>79-u=@9rKv*SoAjeqXr3GcxyzMzi5>Dd5#x)_$jQvG0q%UG!lLtbPmp0IDcN zev`5clH3ISq(!?Ns2(jOUD)}$z1C0eFTvSo@TlX=Pz)bPaPsy!Dq=)XOUqzmQvfvL zQc#wfZzkQv+|d{U08311;aSH+(1HXavo@~|hZtG6*@#CtQP#zumY}aW>9|?9R)XH8 z5^l*}7G2Tgr|zEmLt`D=lV5VBpB_!PZyC0y_?>pb*`@%3+AX}|v84`h%XE;ALj7Ma zfW&5@izcC4`Tm#dp`wZggXrJ;mh&u{jR!|PfrDLvY#j34n)$t#I?xwnA4$G53i5nB zzQfUzSEKbLeDK?CQ{J657IiSJQF{~IWhPVXOz)C~f>~Md3XtNnr{v{7h<-;`l4!So zx8UbuR?Q;`W^$$^2xOonCRM0Nj0y-F^!#y$d2KvHq5@%@(K3y%?BV64mQ-Eb2ZY%Z zJewM;mPTd|8|jryM7d&p_e&d%8&y*-;L*H2yF;I9G`2*L5aOP1BG?AA9$u-&QGf?E z7-i6(23=ImTM;UHtl9qo3gw4P1Pgku)uQKbjNa46(h_@5@tJ%+zSX zJ)dMj&Su)v8K#ZATA$!XnvGqhxD!{oirgdMa2Ah;V=Km+fFskONXE=Dlzwzimprqd zWVdMbdousxxd)+_S-g*tOg8ce zA&+Rlv+L6gtm$qSZXstB1##a0Ziga-CO)b*s4hy=_+?Q_G28^lV@B>;zK#7(emG7N2vX@qV-Y0T{mbz-aXQ#O&!!z|9&knpWO6Lc#ns z;je_|~0bcYo;v+8k}muRh;jRKEbSnOQvzg zSZ84rA@cTw1QN1(fa~h@{dc&%iq_&8KsIqD-CJ?iYpdv{*~`n7Fv=D<%?8slbxW)Ffd(;Av4c{Y6q z;bO-U!n3p71>-Y7#Uf9+)&FKguJ!9AR#{>3b(Qhd(DL(ym1Q=~aU}n8t=m@8&O3qb zE>o?s^Y8VmVB5HXH&gfaO}{NrP$|(j(jye5vw!LvEl&aU{{^yP9ONA2iGAaepqbFN z@T>Dxcc~G4?gr~qcso{a<1YJfMuLV%nWM%#t@fp0YI(>->-7nHXp%#n=M#L+RLJy6 z#5Cj7L55U>%jgJz`bm?e%m9T>p)t%4z{LLpNMp#L6F_BnQt|Ae|IeOG?#MH$cLZ~c zDx|itHwrmOTO0VKZ~a8Hh$=<$FYI~UZ50cgbym_Qb)W;kl@^%!N%uHqW?YXn72|0e zR7`&anSDORx-5GHJ+iKBZ4)$#+es?BxnLD)9{Q?D960(9}naUe2(odU| z9;E2_8^&>orOoYmioHtruKOn!)BS z(4$uobHxoonBbc1q@(Osm`$mS$mgp-W9E4ae1Y-2OjNen{H>!I*S{cY^PyLI6%EJE z<=~ID>9#L1>y$qKct1r3L^xnj5buJlCABBF$nzhs>(U%e?YH4`%Gd!mEk~_+jnd-Y zjdvT?S14$nt;D#__=;g~?oTO+-iEG2hjE6njqIQ{k3OqUFIfase(+nE`f9v?fQ!=TG6XLoW3z1|e z-dQ02xW5|1T=!<$f-PyrmJs0wa5VxAiM002wN5kuEFBwOOlrYCUmQwUEy=zj;3h)w zuIQ;dS7E#;SY9!va$m|3h}ByB~*XpWK3 z#*Q8`*JS-nu*Eilr7E}13zWrYPLR;%ebz=lT6QCj?t#%`1tfXyP}Jw~ChASEob)wa{Dc6T_6%>L6yzb4L%`c(3`|=c_umQQ)%$&u0 z`b#{;pOP}Ny#Li7cLDGT*GQFrl1QXz&r8SkO5CBwmbrkvRYne;4fIN{vvWbMETlX^ z6J*dqUkeZtG-t7nu5um#CR8O)lIbg83w)i-mS3}LUOSSBYK|FJ>2l^XT6uO3jiqCH z$o$z?LPURpYSv&>orHgF5X6Jssm$#Z6^7{EX@cH!asO#=FlX7 zPps;v)Iu#kV}SDIjK0c5&fG%chiyB}o8@J25IXLL6TOAocBfWz-ewIqgr2kY3q@)? z!8@6vnK{`%D+%UdNoQhyogQnJ-_3b+x>O~#eI02TkBEqM4aWN89~FaHre1$r4=x_^ zfBn_4AO5X%0D`|~-OOar1@9=ghi26Z9vf=W!{{QKILiRc@nUknWn)H1F4}qdhiv z5;2J=iGxhXPS3m#yiOxe*FD>>^*7#4c|0&N6zX=(^Urgj+DvQWkEl<$qMi6Z-&|mj zcEjM>03(uchB9u8(M*8s#64!m?zj7GE4`CCtu#JefKjr@%s0DsO!EBaYcU5z9I@>B z=`&60{xU_^gp61#-=_q*zx-vjw1~zg;(y) zR8qI_hpZE-cck|tr?}}%hp;}uUkSqhJCG|NHU@yVw>N@CBAR)1I=^EH-YL`gB=zgXJ@wX$S8vn%Lx2)#imd07plFtB(~{JDd>&%88Z-P)I6*ninm-+E7o* z+USzGT6NoXTy>+gaYXQPq2b_6gP`2=U;x)S1ok?QMm$kXuE6#Dl`qaCw=$2_lp@dG zU2}tziBsDpv20|}$3DwQCTI33l~z=3SslIoria!60Fzn|A2wh&)ed=UN{;sqoEr2B zGkFMgTN^2_-50NoQdB!0cdz!%v#!;ZF)iop+>^Im==2>v`ZBq|M|le`-){y2uJ%2Q z8MbFqiFz!QFNo?aL6IdMvVR{d%>s!|_7z8Ch)_J3Q*kmEroU2~i<}w4uN%!v&J8I? z1Ka{Dj?eQXXkpu9}db1Ccf$h=ps34 zKj{YLm4{)Q0n!;#0!VpYAUXD)rtEvAMUd?|{P&DIS(Ib?O1mw=3zfS~T{l#t!5W1c zU}hB8128kJ2htJgtCD`lGUzHbv^_!V)d43owYrU-Y2K{QQq8*CM_(9tmk$12T)EJS zN_p{wGhCB;W9|=y57~xeBoW)M^fDx*66BRkoS(L|y>($2?T8vEoZVP7u!$J7LG#sLVJ!6lo?1Ip-(5>)$zCG$qjKG|PrH2~jK6)shT+ID)_a`T4JTSm4nKzW zmhO+ZfPQ$tQme~rz6%hAaG}(`E03E2x5rvsmNfJN$Qtpgm~FaSfKSF~2C@gLaJ$mG zJ%RIcKr_b9uzX&TnL=b9@UIi|kj6&ULX~_z0w6;&9gst|kzGcyOLAYc< z2MtF(I85`X@9Og;!w1o_KE2j6@z5Bd{Mv_h88)WctGStSo7VFg_N;%#C8RWo^4)xU zC2GHsxytRRZ31JtSYWdlOmWsYza4&v>XP&WY~!U23;v7l4&{}`FD;v` z@wp$`^IKlw-~0@F|CO6M@`;y@5n2FayA(M}8dV?NWfa2&#oYMH3}B)uj|~+BW#_TT ztaX*-alH%PiYnjDi=a$&6R!zu&J_^5i1`4?ZEXCCU9I(3XY1YpC-*6yVg_OO>6(m* zDUUN7ltb|%I?BiFWJN_m8hlTYzb{^U(Qujg6=A{XUmR+%l8`Y^U=00!o*&{$9vb`Q zhG^#Nj(bXp#&*xc6mYsXgETSg5H2gqM=YWHi2t&Bv+j(dArFfXu)>Ld0A<^Kz&SKp zAc<{3gT3_%WpUyFUOj2GGRVnhk zLSkN{|Dn^W5L9W7IHb5vsMXdGRZ_N!`8IFh4ec2?0op7n60u>nF~m|;i1La+W6xpl z;RioM!CC%8)WLHd9LPs!S?1>))X#RUSx(>(!?)AUgZ}kCGE#YV4!T=il|JFm2(@gKyYO3q-Z|)I`c-1MP z>6C*EPYp=Y+Q?@NoFPm?%38weH-dwCzc$i{=70my+`L48Rz%_)^?HKJ%v>I2lXR}e zll)*Zh2`7Y&yc(hZ&ejBQr-Seok#8V5K5C+-oR;!hKIF5>aP?ouA_y*o*gEjQ#z8i zW94s>(SkF)ixcT5pJN8%&B6u41ZCU)oN-u&5N$}F7MXN%kMG@KiVVABM$nBhq_WPs-N4ffuoJQ8{OLzey)3ASZ zx|7%Ea;)!(@T!H_Iwjke_5@ojf9hVwv1h5ha33UrdI6;L8<5P;#D9yB`Er@#&Orl$ zewWFWZv%9`bB4eg($vWVzPfu-aUVB1igrPV+Zo0Bp8FOxe75D^7gbTd6Vb=px`|6B z;v#FK(Jeond6G#*C%R-ta9a4{zV=nGbJ5^+@O9Wf#z}yDX}@xYv-8(*C)qXz-@m*Z z@P!-)`J7psP+q8F3#9HqJIEc%dM9&m6;>5~^?TDvH5(Wcl|X2iij}taxj-~JN&Rpv zJctiO-DmB)IXq|Vpg*T*rtUc64j5KjHnni);VQu*3 z{gastaW_vpgQIUkf=O!s-$q9QvLlyzl~ z6KS7(G&&P7lZ?LMgnd_+Bp9IL-wwbuw#@|Vf?l0V)~pYo5g$GTC(e!>4sNb5;_CAv(WB zBj!Sw2MfFz>BMh(!N`rHHz5b{oIHGi{%+rXcL%D3zEP+s%1roor{lX_IQwJtQQS%@ zk3N_pr|njiXuGT#GB$!ojVrgIyu+}0(|Kbat?yBq4b4d}4)I4=3p7RxMSlEyFHys- z=tiERqnY*%p(1#P?TPps!S2~#mx~o@CBSZln8h{a{-{jA=FP5oE4)q)=YrTGJC}kZ zZi=czu4p&j+2dNKihSIiAB8*vuH=1!*|x7S_NMG48^j@L&1au}0<^=Zbx<4QrFrgh zT-6~H6DM5LcTG!$#k#xvtv@@?_rOV0kSu54oJYpI=+9dU(76x!<*@5WyRRRQuf;~X zguI~z=dc9>)4U8mSUwG%l|O7Ul>sE7$qUzQdS722M`09PymX8qJRdcsHP0@j$s&XC zjWyU{+cbq7w85v?rPx7#>h^-^d5;;mo4*Z`0MmF#Vhkk|NYfqIm*WYPq^#*HtO(Z6 z=u^$guTdUEn2Yk<&%9X@99#V22^{3tf%P!gms^rN?8|O7_`S_6bnr?r0)EWSyxlin zUGJ>!{3K&8{Dl316nh)J3U2vj&A>B1HKy#<(zUUl&Jz-c|7A5~?*beFt-KG@^jjq} zAJ|)U2jJ-clSNT@kMEj zWnE7Xx-a{-gf0a{gw_x=TEuX9<@kG_^l8p*M53ffPkD+;QHNh=cEkYc@XMttkW6*2 z|FnCHk>2sXR&Kkk%ip&~d$n|blG+$B$AEvuw8!TWsgLd3YDRl8vv=}6{{F)pJpg7} z)wcfHfeaap3s1#(Eng<0sy`1Q~r z{nsM&I_1ReE}-(h>S^pgB!O3|RdDI4T_)mgPXIr}PV_P}BUW+(ts|b+5x+9yk&air z!kF>Ma-RQ)7A??P#J@|!5@er8ot%CZUP@|D)%8ted8O+x_ebrKUqXwn8jmAy=E^|% zLdQ}tN1<`y6Zg|4L!)c$5ao`(l!w$*7dR#9DisCX$1C zB4p%yo3m+=!@GdA;)G@)Tz+0{M`1*TXK1nXnsYfR>~bp;(vZ1;i4jOLTo538Bv|Jd zG!k;jO&$RR`%eCoIs$?!IAd_HkoRb32>$Hi0Zj7&UBZyvqvB>a5Sk1>A@cO-xMVwS z3e39UIJGY#kCwHmVAvVXGvEL;*SBijw7uiI> zLSuAU-p@52zyX&xy$1}D9B+ek!U|Eav%TQjJJH=_h**h~-tQN??AN=F``uF1 zQL=k&9wQ6Dh@KVjS3H}Q01^m2z90l@K{%*m%0G(Os`at=Brjg`djcqF6khR&nZalr zm^qe&^=6h!nFCEm$!UDaBcUdL5^r;qt++cEfsF32%qr6z+>~E_?Ix`Y3-IU(3`E#3 zy~NCklN#*DkZ2LV5ly+OEa9t&RpvRaaWk4h8Kcg`EILYes)J-6CePqRlg{s2wp;7# zhaAyf&`!L%roEiHz65_Al;b)8{_AfQ@93ElUD@!U@o9MiWR=e(GY?Ud)*#TYx7ItN z<*2pUs3q9Qe;A4toN-e!?Uu6>UCx4zp4=%2V~v=MkkfSZpin?QgOW+%7)z-y;%D`K{S+-R_7(kr|eIX1Nxp47cZF%0tFY)c~reU>O zDzFeo{!U_fs8Up4!Odqtf6sqj^z0c+RiOKG#U1Iu#c*Y1_S7E#swNa4k^GaA!WchpeVD@?= z#zxa0Aj0%elD&J}(|Kv{jM4H+-M6I^Oz|7ZS~djWj^T@a=pAi3+!DRJ`Z`M1qj|Du5+%Vq_;~? zszb&ZuFKP_kFLtn{jF*ydJR;2PMSoa`(@d|FE8L2lq1B(?p_++Lp=2Q41T@7b9G$r ze~Vt`&w;7Jk!dqt6|*bz2d^E|b7sv$&KNl1QNZE(EvafXfO0?WG`mos1x$&=jOvuS zPSkzh1@*^lHc-}4)JTiu-2Qln!?dEf!csVSrZjkrg2wVkMtJa-GVEngJ9#WWO9>AHS^6DV zxg=Jpr>qF<#cR0f6?P~ zk*I;K|S#T9cTJmV^F&!lqju6^&Ss z5t+-ouLN`)bTwZfQRHP0OJ#QXXk_kiDEAV=cqZIqA29%~?Gx-|uFE4Uvxom? zXU`|RMJr^sPXuq%fX=GspzW1g>XDKyj_5a{^zVjdafE9$Fn_-=2e&#P@ zr&L1qdjqp9jmnBG3#~g2{<=%(jh*!3Z5np)TBln#WUS(^8VVXW3J)=^#vqB&k&oLH zWj$QUefX@g5ctUlIAdPr(zo5dx4t%h;F{}IFoXzy5yf_B&IQ2KWNh9Wg*?8&5Q29+ zp@1(y%eIVCSD(l$x2H%O9b=sx?JwcGra9=_ZqlfigQ&?NX+?ey@MFCM2`QU2oM@5b zT;I1?{*U*N&gM$DN#D?LVd8%gJvTjw-v zQP^v{V7n07ra<%X4H`VU=mDU4K9Wh3C56woMw~?NoF@+gi=fkYdu~b;6JxRN^$&pX zZ!rwgU!zWrL(EcBx&PWFmTgNqWJ-FT(Z;V`+R1YYkC%|@4za5+O8Q% z@NQiu>-}T3CFFzLbK8N3>xV|4P?d3Zctm<9yZ$VDUMl?bft(^(@Nh5Z-+nVjw|R^d z2KE~nD4P8@9fu#DDdqPr^$v#xnt#Q&nU4oqs_UUjXnZR&*4D_haL4_(Xio--Ka3{W zWaiyTT<)KOc99@n)1BvN;@O*>((XFqECVECOF>lly|Be1tbcE7En>Y7B< zynpHXV>tQ5DP|=LY0LupB5^hxf`%I%wlQN|mt@M>4Ot)XjjsQD{SW>4M-Ie> zENf=6L1B`gSt!i3T3^y5$tjAZ^|JI8FlP#mJ&FS=1F*FpN0h6bB~7VOIoPe}Cy#~~ z)FIm%G8jBL-P6&-Cu)a=Q+#@@az?%ihdygprH6*itX@XByK9neVk}0Z2lpJz!n=ld z5T4FfHHN)>2VS1CcvcjUdJ$R;D6j!$p>OvRUh1)vRDYT@?;g(jWexb5Q`MlHJ-(rH zQV5j4%35p~1BS@&Kg7p2xJi-lnNbRcagw&I-U}2aC9Aph_InwK#(UCe$?UlnC4X4C zC`Z@JkHueT{Ro>|qQw+k%#k8ek-0hcbzD^Vtwv`qfTQ4=B&=%hiKW?BpHucW9xmH& z3wH{*#%k;FOrXS6Q{*E+acGtMc)N!bE|Y8Je}g7`-{=V97B{dyqC-X4@dmJ3_`x$*cD6J4Hs$P+Uam| z`TZ;)e0TOf#WNifqlng#P3i(b^t6Y}?*ds&|$l%cL|JMZP$%0D3={5sLUwZuHwDZ0()b>vtnk*{AS3MF(0O# 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 Q*fyi~SrE;0cR61BH*yT!@&Et; literal 0 HcmV?d00001 diff --git a/docs/modules/mapping/ndt_map/ndt_map2.png b/docs/modules/mapping/ndt_map/ndt_map2.png new file mode 100644 index 0000000000000000000000000000000000000000..b99706297955c3b31d8bd33299311b45be14f9c1 GIT binary patch literal 21736 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 z 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 Okcxu3e4d=y%l`%7gFUVQ literal 0 HcmV?d00001 diff --git a/tests/test_grid_map_lib.py b/tests/test_grid_map_lib.py index 92ca67e297..670b357ad3 100644 --- a/tests/test_grid_map_lib.py +++ b/tests/test_grid_map_lib.py @@ -25,5 +25,16 @@ def test_polygon_set(): 1.0, inside=False) +def test_xy_and_grid_index_conversion(): + grid_map = GridMap(100, 120, 0.5, 10.0, -0.5) + + for x_ind in range(grid_map.width): + for y_ind in range(grid_map.height): + grid_ind = grid_map.calc_grid_index_from_xy_index(x_ind, y_ind) + x_ind_2, y_ind_2 = grid_map.calc_xy_index_from_grid_index(grid_ind) + assert x_ind == x_ind_2 + assert y_ind == y_ind_2 + + if __name__ == '__main__': conftest.run_this_test(__file__) diff --git a/utils/plot.py b/utils/plot.py index d4bbe29ffd..eb5aa7ad04 100644 --- a/utils/plot.py +++ b/utils/plot.py @@ -9,6 +9,69 @@ from mpl_toolkits.mplot3d.proj3d import proj_transform from mpl_toolkits.mplot3d import Axes3D +from utils.angle import rot_mat_2d + + +def plot_covariance_ellipse(x, y, cov, chi2=3.0, color="-r", ax=None): + """ + This function plots an ellipse that represents a covariance matrix. The ellipse is centered at (x, y) and its shape, size and rotation are determined by the covariance matrix. + + Parameters: + x : (float) The x-coordinate of the center of the ellipse. + y : (float) The y-coordinate of the center of the ellipse. + cov : (numpy.ndarray) A 2x2 covariance matrix that determines the shape, size, and rotation of the ellipse. + chi2 : (float, optional) A scalar value that scales the ellipse size. This value is typically set based on chi-squared distribution quantiles to achieve certain confidence levels (e.g., 3.0 corresponds to ~95% confidence for a 2D Gaussian). Defaults to 3.0. + color : (str, optional) The color and line style of the ellipse plot, following matplotlib conventions. Defaults to "-r" (a red solid line). + ax : (matplotlib.axes.Axes, optional) The Axes object to draw the ellipse on. If None (default), a new figure and axes are created. + + Returns: + None. This function plots the covariance ellipse on the specified axes. + """ + eig_val, eig_vec = np.linalg.eig(cov) + + if eig_val[0] >= eig_val[1]: + big_ind = 0 + small_ind = 1 + else: + big_ind = 1 + small_ind = 0 + a = math.sqrt(chi2 * eig_val[big_ind]) + b = math.sqrt(chi2 * eig_val[small_ind]) + angle = math.atan2(eig_vec[1, big_ind], eig_vec[0, big_ind]) + plot_ellipse(x, y, a, b, angle, color=color, ax=ax) + + +def plot_ellipse(x, y, a, b, angle, color="-r", ax=None, **kwargs): + """ + This function plots an ellipse based on the given parameters. + + Parameters + ---------- + x : (float) The x-coordinate of the center of the ellipse. + y : (float) The y-coordinate of the center of the ellipse. + a : (float) The length of the semi-major axis of the ellipse. + b : (float) The length of the semi-minor axis of the ellipse. + angle : (float) The rotation angle of the ellipse, in radians. + color : (str, optional) The color and line style of the ellipse plot, following matplotlib conventions. Defaults to "-r" (a red solid line). + ax : (matplotlib.axes.Axes, optional) The Axes object to draw the ellipse on. If None (default), a new figure and axes are created. + **kwargs: Additional keyword arguments to pass to plt.plot or ax.plot. + + Returns + --------- + None. This function plots the ellipse based on the specified parameters. + """ + + t = np.arange(0, 2 * math.pi + 0.1, 0.1) + px = [a * math.cos(it) for it in t] + py = [b * math.sin(it) for it in t] + fx = rot_mat_2d(angle) @ (np.array([px, py])) + px = np.array(fx[0, :] + x).flatten() + py = np.array(fx[1, :] + y).flatten() + if ax is None: + plt.plot(px, py, color, **kwargs) + else: + ax.plot(px, py, color, **kwargs) + def plot_arrow(x, y, yaw, arrow_length=1.0, origin_point_plot_style="xr", @@ -132,7 +195,6 @@ def plot_3d_vector_arrow(ax, p1, p2): ) - def plot_triangle(p1, p2, p3, ax): ax.add_collection3d(art3d.Poly3DCollection([[p1, p2, p3]], color='b')) @@ -163,3 +225,10 @@ def set_equal_3d_axis(ax, x_lims, y_lims, z_lims): ax.set_xlim(mid_x - max_range, mid_x + max_range) ax.set_ylim(mid_y - max_range, mid_y + max_range) ax.set_zlim(mid_z - max_range, mid_z + max_range) + + +if __name__ == '__main__': + plot_ellipse(0, 0, 1, 2, np.deg2rad(15)) + plt.axis('equal') + plt.show() + From 41fec85cb974d650d2ec7965346a1f64f3015518 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 08:02:59 +0900 Subject: [PATCH 105/414] Bump numpy from 1.25.0 to 1.25.1 in /requirements (#874) Bumps [numpy](https://github.com/numpy/numpy) from 1.25.0 to 1.25.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.25.0...v1.25.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2fab6f69c8..c5643beee8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.25.0 +numpy == 1.25.1 scipy == 1.11.1 matplotlib == 3.7.1 cvxpy == 1.3.2 From 4527785222d3bb885c4dfd97df54dfdd66e10595 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 20:10:50 +0900 Subject: [PATCH 106/414] Bump matplotlib from 3.7.1 to 3.7.2 in /requirements (#876) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.7.1 to 3.7.2. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.7.1...v3.7.2) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c5643beee8..27bc6b32d3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.25.1 scipy == 1.11.1 -matplotlib == 3.7.1 +matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test From 32e5e6fd2c891b1f56061f56e73b5d3f1386f1ba Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 20:54:22 +0900 Subject: [PATCH 107/414] Bump ruff from 0.0.276 to 0.0.277 in /requirements (#875) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.276 to 0.0.277. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.276...v0.0.277) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 27bc6b32d3..44742ed34b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.276 # For unit test +ruff == 0.0.277 # For unit test From 8c9eb0187e83d0abff9e3d3d5d3af4add6e2c59e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Jul 2023 09:29:15 +0900 Subject: [PATCH 108/414] Bump ruff from 0.0.277 to 0.0.278 in /requirements (#879) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.277 to 0.0.278. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.277...v0.0.278) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 44742ed34b..2f6a441d3c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.277 # For unit test +ruff == 0.0.278 # For unit test From ba5a1dda753671e5e54ac264c113a6b8f1142640 Mon Sep 17 00:00:00 2001 From: Emmanuel Ferdman Date: Wed, 19 Jul 2023 16:04:35 +0300 Subject: [PATCH 109/414] docs: update the code style test script (#880) Signed-off-by: Emmanuel Ferdman --- docs/how_to_contribute_main.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/how_to_contribute_main.rst b/docs/how_to_contribute_main.rst index 8a2f73e9cd..48895d6fda 100644 --- a/docs/how_to_contribute_main.rst +++ b/docs/how_to_contribute_main.rst @@ -50,7 +50,7 @@ At the least, try to run the example code without animation in the unit test. If you want to run the test suites locally, you can use the `runtests.sh` script by just executing it. -The `test_diff_codestyle.py`_ check code style for your PR's codes. +The `test_codestyle.py`_ check code style for your PR's codes. .. _`how to write doc`: @@ -155,7 +155,7 @@ Sponsors .. _`reStructuredText`: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html .. _`doc modules dir`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/docs/modules .. _`doc README`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/docs/README.md -.. _`test_diff_codestyle.py`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/tests/test_diff_codestyle.py +.. _`test_codestyle.py`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/tests/test_codestyle.py .. _`JetBrains`: https://www.jetbrains.com/ .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma From d6d761bd8a6289f43f6f763dd876018541439765 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:59:47 +0900 Subject: [PATCH 110/414] Bump ruff from 0.0.278 to 0.0.280 in /requirements (#881) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.278 to 0.0.280. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.278...v0.0.280) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2f6a441d3c..a1999d4854 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.278 # For unit test +ruff == 0.0.280 # For unit test From 9be188feca26a78fed1e638c8ca32ac8dca7d8b6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Aug 2023 19:16:32 +0900 Subject: [PATCH 111/414] Bump numpy from 1.25.1 to 1.25.2 in /requirements (#882) Bumps [numpy](https://github.com/numpy/numpy) from 1.25.1 to 1.25.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.25.1...v1.25.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a1999d4854..26e0eb8db3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.25.1 +numpy == 1.25.2 scipy == 1.11.1 matplotlib == 3.7.2 cvxpy == 1.3.2 From bd0254997d82a3e40bb230db1f137c5a96c8e68e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Aug 2023 19:21:48 +0900 Subject: [PATCH 112/414] Bump ruff from 0.0.280 to 0.0.281 in /requirements (#883) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.280 to 0.0.281. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.280...v0.0.281) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 26e0eb8db3..33bb44ee8f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.280 # For unit test +ruff == 0.0.281 # For unit test From e7d0a219c6a4c3277a61b3e441f260d036a41479 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Aug 2023 22:09:14 +0900 Subject: [PATCH 113/414] Bump sphinx-notes/pages from 2 to 3 (#884) Bumps [sphinx-notes/pages](https://github.com/sphinx-notes/pages) from 2 to 3. - [Release notes](https://github.com/sphinx-notes/pages/releases) - [Commits](https://github.com/sphinx-notes/pages/compare/v2...v3) --- updated-dependencies: - dependency-name: sphinx-notes/pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/gh-pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index d5af3b87c6..9cb661ae52 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -19,7 +19,7 @@ jobs: python -m pip install --upgrade pip python -m pip install -r requirements/requirements.txt - name: Build and Commit - uses: sphinx-notes/pages@v2 + uses: sphinx-notes/pages@v3 with: requirements_path: ./docs/doc_requirements.txt - name: Push changes From 5104e2c692ad8c8ffab6eb04bfa96cd9e75dc1d3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Aug 2023 22:09:42 +0900 Subject: [PATCH 114/414] Bump ruff from 0.0.281 to 0.0.282 in /requirements (#885) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.281 to 0.0.282. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.281...v0.0.282) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 33bb44ee8f..281a4c7662 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.281 # For unit test +ruff == 0.0.282 # For unit test From 801d43dd25c5bf3f553960eecfbaff7741550031 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Aug 2023 11:43:28 +0900 Subject: [PATCH 115/414] Bump ruff from 0.0.282 to 0.0.284 in /requirements (#887) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.282 to 0.0.284. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.282...v0.0.284) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 281a4c7662..d24bb676c6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.282 # For unit test +ruff == 0.0.284 # For unit test From de141eaf14cd3e71ef224eaa81ab4f76336a37b2 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 15 Aug 2023 12:40:52 +0900 Subject: [PATCH 116/414] Update gh-pages.yml (#889) --- .github/workflows/gh-pages.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 9cb661ae52..072c60c32e 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -6,6 +6,8 @@ on: jobs: build: runs-on: ubuntu-latest + permissions: + id-token: write steps: - name: Setup python uses: actions/setup-python@v4 From bfc91b1bc33372c697081221aefca65e7c7342b5 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 15 Aug 2023 13:04:17 +0900 Subject: [PATCH 117/414] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 072c60c32e..f2630df162 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -8,6 +8,7 @@ jobs: runs-on: ubuntu-latest permissions: id-token: write + pages: write steps: - name: Setup python uses: actions/setup-python@v4 From 35f4f61e44ad9c3f8fc6584e3d0d7ab7889bd866 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Aug 2023 13:16:21 +0900 Subject: [PATCH 118/414] Bump mypy from 1.4.1 to 1.5.0 in /requirements (#888) Bumps [mypy](https://github.com/python/mypy) from 1.4.1 to 1.5.0. - [Commits](https://github.com/python/mypy/compare/v1.4.1...v1.5.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d24bb676c6..7ae3c54134 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test -mypy == 1.4.1 # For unit test +mypy == 1.5.0 # For unit test ruff == 0.0.284 # For unit test From ff9e48852d7da400768099f54dce90f3cbab104a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Aug 2023 07:38:09 +0900 Subject: [PATCH 119/414] Bump ruff from 0.0.284 to 0.0.285 in /requirements (#893) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.284 to 0.0.285. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.284...v0.0.285) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7ae3c54134..fed24446c5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.0 # For unit test -ruff == 0.0.284 # For unit test +ruff == 0.0.285 # For unit test From 637269e0af6128acf5469c057fe6b0564e4d4768 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Aug 2023 20:42:01 +0900 Subject: [PATCH 120/414] Bump scipy from 1.11.1 to 1.11.2 in /requirements (#894) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.1 to 1.11.2. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.1...v1.11.2) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index fed24446c5..24f5dd8341 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.25.2 -scipy == 1.11.1 +scipy == 1.11.2 matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test From 3fce78a41e56b3bdb183e581bede2b19ea96a5df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Aug 2023 20:43:32 +0900 Subject: [PATCH 121/414] Bump mypy from 1.5.0 to 1.5.1 in /requirements (#895) Bumps [mypy](https://github.com/python/mypy) from 1.5.0 to 1.5.1. - [Commits](https://github.com/python/mypy/compare/v1.5.0...v1.5.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 24f5dd8341..a0eb41aa73 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test -mypy == 1.5.0 # For unit test +mypy == 1.5.1 # For unit test ruff == 0.0.285 # For unit test From 19c0fb379c070329c0e60e347a8b41179833140d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 9 Sep 2023 07:01:58 +0900 Subject: [PATCH 122/414] Bump actions/checkout from 3 to 4 (#900) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- .github/workflows/codeql.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index a152972753..b9a102c714 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -17,7 +17,7 @@ jobs: name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git fetch --prune --unshallow - name: Setup python diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index c8bfbbcb7e..2acabd8b44 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -19,7 +19,7 @@ jobs: python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git fetch --prune --unshallow - name: Update bash diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index 13fdcea8a1..3df2e6265b 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -19,7 +19,7 @@ jobs: python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git fetch --prune --unshallow - name: Setup python diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index d33545c90f..d3e888f09e 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: # We must fetch at least the immediate parents so that if this is # a pull request then we can checkout the head. From 4b3544e74ddfd20107de280295e799e0b0385433 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 15:55:49 +0900 Subject: [PATCH 123/414] Bump pytest from 7.4.0 to 7.4.1 in /requirements (#901) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.0 to 7.4.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.0...7.4.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a0eb41aa73..b0d3e4d4f0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.25.2 scipy == 1.11.2 matplotlib == 3.7.2 cvxpy == 1.3.2 -pytest == 7.4.0 # For unit test +pytest == 7.4.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test ruff == 0.0.285 # For unit test From c9145d348c68be78acb2652ec83587ce90d4a51f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 20:38:43 +0900 Subject: [PATCH 124/414] Bump ruff from 0.0.285 to 0.0.287 in /requirements (#902) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.285 to 0.0.287. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.285...v0.0.287) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b0d3e4d4f0..e4792a31bf 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.285 # For unit test +ruff == 0.0.287 # For unit test From 8a427a92abc7fe241dd67f69d17c80c54cd272c2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Sep 2023 07:35:26 +0900 Subject: [PATCH 125/414] Bump ruff from 0.0.287 to 0.0.288 in /requirements (#905) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.287 to 0.0.288. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.287...v0.0.288) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e4792a31bf..9eeb1f024f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.287 # For unit test +ruff == 0.0.288 # For unit test From 8956c67c21055b9a2c44c1e0d3d20b194e4dfd95 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Sep 2023 17:33:46 +0900 Subject: [PATCH 126/414] Bump pytest from 7.4.1 to 7.4.2 in /requirements (#904) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.1 to 7.4.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.1...7.4.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9eeb1f024f..0c616fc6d3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.25.2 scipy == 1.11.2 matplotlib == 3.7.2 cvxpy == 1.3.2 -pytest == 7.4.1 # For unit test +pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test ruff == 0.0.288 # For unit test From 644d70d0fa3d83ae4434725ff0f82b4f7d4ec46f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 06:51:53 +0900 Subject: [PATCH 127/414] Bump ruff from 0.0.288 to 0.0.290 in /requirements (#908) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.288 to 0.0.290. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.288...v0.0.290) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0c616fc6d3..6392fd2c33 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.288 # For unit test +ruff == 0.0.290 # For unit test From ba09b4dd90fc49d8873771782c7dc82f0a213534 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 06:59:38 +0900 Subject: [PATCH 128/414] Bump matplotlib from 3.7.2 to 3.8.0 in /requirements (#909) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.7.2 to 3.8.0. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.7.2...v3.8.0) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6392fd2c33..d1c0592e14 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.25.2 scipy == 1.11.2 -matplotlib == 3.7.2 +matplotlib == 3.8.0 cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test From a7513699bf7f6f3d6112e48464deddf7e8c22f68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 12:36:29 +0900 Subject: [PATCH 129/414] Bump numpy from 1.25.2 to 1.26.0 in /requirements (#910) Bumps [numpy](https://github.com/numpy/numpy) from 1.25.2 to 1.26.0. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.25.2...v1.26.0) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d1c0592e14..836f8b0f54 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.25.2 +numpy == 1.26.0 scipy == 1.11.2 matplotlib == 3.8.0 cvxpy == 1.3.2 From 57ee946537a13af397bafbe8cf54507988006873 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Sep 2023 20:23:08 +0900 Subject: [PATCH 130/414] Bump ruff from 0.0.290 to 0.0.291 in /requirements (#911) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.290 to 0.0.291. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.290...v0.0.291) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 836f8b0f54..d983e22916 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.290 # For unit test +ruff == 0.0.291 # For unit test From 6a765964409bb3f449d94bd55eb0dd8998730c71 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 21:36:37 +0900 Subject: [PATCH 131/414] Bump scipy from 1.11.2 to 1.11.3 in /requirements (#914) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.2 to 1.11.3. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.2...v1.11.3) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d983e22916..b67f904ea5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.0 -scipy == 1.11.2 +scipy == 1.11.3 matplotlib == 3.8.0 cvxpy == 1.3.2 pytest == 7.4.2 # For unit test From 2c4d74507777993d44cbb33e238689d776221243 Mon Sep 17 00:00:00 2001 From: Yuki Onishi Date: Sun, 15 Oct 2023 10:25:22 +0900 Subject: [PATCH 132/414] Revert a parameter in grid_based_sweep_coverage_path_planner to correct (#917) the planning results --- .../grid_based_sweep_coverage_path_planner.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py index ee192e9200..10ba98cd35 100644 --- a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py +++ b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py @@ -50,7 +50,7 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): # moving backward next_c_x_index = -self.moving_direction + c_x_index next_c_y_index = c_y_index - if self.check_occupied(next_c_x_index, next_c_y_index, grid_map): + if self.check_occupied(next_c_x_index, next_c_y_index, grid_map, FloatGrid(1.0)): # moved backward, but the grid is occupied by obstacle return None, None else: @@ -61,8 +61,8 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): return next_c_x_index, next_c_y_index @staticmethod - def check_occupied(c_x_index, c_y_index, grid_map): - return grid_map.check_occupied_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)) + def check_occupied(c_x_index, c_y_index, grid_map, occupied_val=FloatGrid(0.5)): + return grid_map.check_occupied_from_xy_index(c_x_index, c_y_index, occupied_val) def find_safe_turning_grid(self, c_x_index, c_y_index, grid_map): From 5eed0ec1a6a8751e448a476c950f7342d864510d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 15 Oct 2023 15:34:15 +0900 Subject: [PATCH 133/414] Bump ruff from 0.0.291 to 0.0.292 in /requirements (#913) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.291 to 0.0.292. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.291...v0.0.292) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b67f904ea5..cd38b9cff7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.291 # For unit test +ruff == 0.0.292 # For unit test From 4adb77dcf71d3dced8e152f861106de1d192adf6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 21:25:55 +0900 Subject: [PATCH 134/414] Bump ruff from 0.0.292 to 0.1.0 in /requirements (#920) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.292 to 0.1.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.292...v0.1.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cd38b9cff7..acc76577c8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.292 # For unit test +ruff == 0.1.0 # For unit test From 38a8be94bab0baa900a82fafa774b196bd4f1396 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 21:26:26 +0900 Subject: [PATCH 135/414] Bump numpy from 1.26.0 to 1.26.1 in /requirements (#922) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.0 to 1.26.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.0...v1.26.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index acc76577c8..a5875a67ec 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.0 +numpy == 1.26.1 scipy == 1.11.3 matplotlib == 3.8.0 cvxpy == 1.3.2 From 8f1306ac01055743a456b08cf2e0032f1942f96c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 22:01:34 +0900 Subject: [PATCH 136/414] Bump cvxpy from 1.3.2 to 1.4.1 in /requirements (#923) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.3.2 to 1.4.1. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.3.2...v1.4.1) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a5875a67ec..46ad6feb23 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.1 scipy == 1.11.3 matplotlib == 3.8.0 -cvxpy == 1.3.2 +cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test From d0ff8cc165ce97c473e090e78003a8e5703a7b6d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Oct 2023 20:15:46 +0900 Subject: [PATCH 137/414] Bump ruff from 0.1.0 to 0.1.1 in /requirements (#926) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.0 to 0.1.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.0...v0.1.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 46ad6feb23..0bda50edc0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.1.0 # For unit test +ruff == 0.1.1 # For unit test From bde8bda7536449522f3f2bfaa200a450dff41c92 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Oct 2023 23:01:04 +0900 Subject: [PATCH 138/414] Bump mypy from 1.5.1 to 1.6.1 in /requirements (#924) Bumps [mypy](https://github.com/python/mypy) from 1.5.1 to 1.6.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.5.1...v1.6.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0bda50edc0..1a89183ba6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.0 cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test -mypy == 1.5.1 # For unit test +mypy == 1.6.1 # For unit test ruff == 0.1.1 # For unit test From 3a8d93b2a54928d258362b34b31fd8adf04a7d05 Mon Sep 17 00:00:00 2001 From: Jeff Irion Date: Wed, 25 Oct 2023 07:02:14 -0700 Subject: [PATCH 139/414] Fix SE(2) inverse (#925) * Fix SE(2) inverse * Add missing ] --- SLAM/GraphBasedSLAM/graphslam/pose/se2.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SLAM/GraphBasedSLAM/graphslam/pose/se2.py b/SLAM/GraphBasedSLAM/graphslam/pose/se2.py index e89317a06f..2a32e765f7 100644 --- a/SLAM/GraphBasedSLAM/graphslam/pose/se2.py +++ b/SLAM/GraphBasedSLAM/graphslam/pose/se2.py @@ -136,8 +136,8 @@ def inverse(self): """ return PoseSE2([-self[0] * np.cos(self[2]) - self[1] * np.sin(self[2]), - self[0] * np.sin(self[2]) - self[1] * np.cos( - [self[2]])], -self[2]) + self[0] * np.sin(self[2]) - self[1] * np.cos(self[2])], + -self[2]) # ======================================================================= # # # From f374393b551b781f9c9564bd8b0e273342c8e3a0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 31 Oct 2023 20:55:50 +0900 Subject: [PATCH 140/414] Bump ruff from 0.1.1 to 0.1.3 in /requirements (#928) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.1 to 0.1.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.1...v0.1.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1a89183ba6..26a481cbe8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.6.1 # For unit test -ruff == 0.1.1 # For unit test +ruff == 0.1.3 # For unit test From fc3ec3cd66f64fc889c3382c4ae41aca26adaf4e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 Nov 2023 08:38:39 +0900 Subject: [PATCH 141/414] Bump pytest from 7.4.2 to 7.4.3 in /requirements (#929) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.2 to 7.4.3. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.2...7.4.3) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 26a481cbe8..4335e42aca 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.1 scipy == 1.11.3 matplotlib == 3.8.0 cvxpy == 1.4.1 -pytest == 7.4.2 # For unit test +pytest == 7.4.3 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.6.1 # For unit test ruff == 0.1.3 # For unit test From 8be35b6e70aeb466efcfc76f480a9d734f92f34d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Nov 2023 07:03:23 +0900 Subject: [PATCH 142/414] Bump matplotlib from 3.8.0 to 3.8.1 in /requirements (#931) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.0 to 3.8.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.0...v3.8.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4335e42aca..3515fbdf9f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.1 scipy == 1.11.3 -matplotlib == 3.8.0 +matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.3.1 # For unit test From dcf8eded0647e1f6d8695cbf98fae690e29fa6df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Nov 2023 08:15:50 +0900 Subject: [PATCH 143/414] Bump ruff from 0.1.3 to 0.1.4 in /requirements (#932) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.3 to 0.1.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.3...v0.1.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3515fbdf9f..e65db6c92a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.6.1 # For unit test -ruff == 0.1.3 # For unit test +ruff == 0.1.4 # For unit test From 9eac2c6f2acc63925085242d9bf895b0084fad3b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Nov 2023 21:40:32 +0900 Subject: [PATCH 144/414] Bump pytest-xdist from 3.3.1 to 3.4.0 in /requirements (#933) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.3.1 to 3.4.0. - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.3.1...v3.4.0) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e65db6c92a..6f7253b4a7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.11.3 matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test -pytest-xdist == 3.3.1 # For unit test +pytest-xdist == 3.4.0 # For unit test mypy == 1.6.1 # For unit test ruff == 0.1.4 # For unit test From 3fa8f3e56cf5c742ec19548167bde266ee5e7aa8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 13:18:18 +0900 Subject: [PATCH 145/414] Bump numpy from 1.26.1 to 1.26.2 in /requirements (#934) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.1 to 1.26.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.1...v1.26.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6f7253b4a7..f8439d2eb7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.1 +numpy == 1.26.2 scipy == 1.11.3 matplotlib == 3.8.1 cvxpy == 1.4.1 From 58df4be95f7ad4fa67b70cac657fcc2c07e85756 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 14:57:46 +0900 Subject: [PATCH 146/414] Bump mypy from 1.6.1 to 1.7.0 in /requirements (#936) Bumps [mypy](https://github.com/python/mypy) from 1.6.1 to 1.7.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.6.1...v1.7.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f8439d2eb7..f6e237366f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test -mypy == 1.6.1 # For unit test +mypy == 1.7.0 # For unit test ruff == 0.1.4 # For unit test From f7dadb8157cd8ecebb2ef3eeb2e8dc1ae5bfb664 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 17:08:33 +0900 Subject: [PATCH 147/414] Bump ruff from 0.1.4 to 0.1.5 in /requirements (#935) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.4 to 0.1.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.4...v0.1.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f6e237366f..a17a6bc7cb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test mypy == 1.7.0 # For unit test -ruff == 0.1.4 # For unit test +ruff == 0.1.5 # For unit test From f5f0253e14e97856f4f6d4016cf4864fce8d46bb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Nov 2023 12:57:31 +0900 Subject: [PATCH 148/414] Bump scipy from 1.11.3 to 1.11.4 in /requirements (#938) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.3 to 1.11.4. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.3...v1.11.4) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a17a6bc7cb..3fcdd9ad19 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.2 -scipy == 1.11.3 +scipy == 1.11.4 matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test From df932b0eb25349fd43f28c1f28a92616b9e709b8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Nov 2023 18:59:57 +0900 Subject: [PATCH 149/414] Bump matplotlib from 3.8.1 to 3.8.2 in /requirements (#940) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.1 to 3.8.2. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.1...v3.8.2) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3fcdd9ad19..788e900d13 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.2 scipy == 1.11.4 -matplotlib == 3.8.1 +matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test From 9093d709b5ff74c085f50ab3a1d57928ee6a5b13 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Nov 2023 19:52:11 +0900 Subject: [PATCH 150/414] Bump ruff from 0.1.5 to 0.1.6 in /requirements (#939) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.5 to 0.1.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.5...v0.1.6) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 788e900d13..b3b8509b68 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test mypy == 1.7.0 # For unit test -ruff == 0.1.5 # For unit test +ruff == 0.1.6 # For unit test From 0dc6ab42bab4d3e2fb06fc25d86b1abe41d4da2a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Nov 2023 19:59:15 +0900 Subject: [PATCH 151/414] Bump pytest-xdist from 3.4.0 to 3.5.0 in /requirements (#942) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.4.0 to 3.5.0. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.4.0...v3.5.0) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b3b8509b68..afc244c1a1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.11.4 matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test -pytest-xdist == 3.4.0 # For unit test +pytest-xdist == 3.5.0 # For unit test mypy == 1.7.0 # For unit test ruff == 0.1.6 # For unit test From e9ae79f9204df88e768de39443781a208d66ecd5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 3 Dec 2023 21:01:12 +0900 Subject: [PATCH 152/414] Bump mypy from 1.7.0 to 1.7.1 in /requirements (#943) Bumps [mypy](https://github.com/python/mypy) from 1.7.0 to 1.7.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.7.0...v1.7.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index afc244c1a1..f073524c51 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test -mypy == 1.7.0 # For unit test +mypy == 1.7.1 # For unit test ruff == 0.1.6 # For unit test From 5676da661f09d08fb0ef188f31f71f17be0ab44a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:23:50 +0900 Subject: [PATCH 153/414] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index f2630df162..42ec54f4e1 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -25,8 +25,7 @@ jobs: uses: sphinx-notes/pages@v3 with: requirements_path: ./docs/doc_requirements.txt - - name: Push changes - uses: ad-m/github-push-action@master - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - branch: gh-pages + - name: Deploy GitHub Pages site + id: deployment + uses: actions/deploy-pages@main + From 7585316933cee2febfc0a2cd68a13336020adbbc Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:35:30 +0900 Subject: [PATCH 154/414] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 42ec54f4e1..17fa1d76ca 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -6,6 +6,9 @@ on: jobs: build: runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} permissions: id-token: write pages: write @@ -25,7 +28,9 @@ jobs: uses: sphinx-notes/pages@v3 with: requirements_path: ./docs/doc_requirements.txt - - name: Deploy GitHub Pages site - id: deployment - uses: actions/deploy-pages@main + - name: Push changes + uses: ad-m/github-push-action@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + branch: gh-pages From 6dca76ac4b566958080dac7f87f44b15e44a84aa Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:41:48 +0900 Subject: [PATCH 155/414] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 17fa1d76ca..c50a9f1865 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -1,4 +1,4 @@ -name: Pages +name: GitHub Pages update on: push: branches: From 467f27d178f05474b619f841a93b027707b421ac Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:46:56 +0900 Subject: [PATCH 156/414] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index c50a9f1865..ccc0f5a835 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -1,4 +1,4 @@ -name: GitHub Pages update +name: GitHub Pages site update on: push: branches: From ef287d7a857c52a3f34e7b86765c3467858ad2b6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:53:12 +0900 Subject: [PATCH 157/414] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index ccc0f5a835..d2c7847807 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -24,13 +24,7 @@ jobs: python --version python -m pip install --upgrade pip python -m pip install -r requirements/requirements.txt - - name: Build and Commit + - name: Build and Deploy uses: sphinx-notes/pages@v3 with: - requirements_path: ./docs/doc_requirements.txt - - name: Push changes - uses: ad-m/github-push-action@master - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - branch: gh-pages - + requirements_path: ./docs/doc_requirements.txt From 331f0877f6ade42901c0762fee41abcce83c7e29 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:56:04 +0900 Subject: [PATCH 158/414] Update copyright for doc update test --- docs/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/conf.py b/docs/conf.py index df9b8fce22..46f69cf17b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -19,7 +19,7 @@ # -- Project information ----------------------------------------------------- project = 'PythonRobotics' -copyright = '2018-2021, Atsushi Sakai' +copyright = '2018-2023, Atsushi Sakai' author = 'Atsushi Sakai' # The short X.Y version From a141cf41807c508e58691c3c42919387e5ff9ded Mon Sep 17 00:00:00 2001 From: Fabiha Tasneem <55595104+fabihatasneem@users.noreply.github.com> Date: Sun, 3 Dec 2023 19:12:00 +0600 Subject: [PATCH 159/414] Fixed Inappropriate Logical Expression (#945) --- .../arm_obstacle_navigation/arm_obstacle_navigation_2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 40e6746bfc..591cd401eb 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -34,7 +34,7 @@ def main(): goal = (58, 56) grid = get_occupancy_grid(arm, obstacles) route = astar_torus(grid, start, goal) - if len(route) >= 0: + if route: animate(grid, arm, route) From ff66f3babe27d1ae3775f594ffd05264ca173d6a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 22:34:49 +0900 Subject: [PATCH 160/414] Bump actions/setup-python from 4 to 5 (#951) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- .github/workflows/gh-pages.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index b9a102c714..b83954f17e 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -21,7 +21,7 @@ jobs: - run: git fetch --prune --unshallow - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 2acabd8b44..19c6612b2f 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -26,7 +26,7 @@ jobs: run: brew install bash - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index 3df2e6265b..906edcfcdb 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -23,7 +23,7 @@ jobs: - run: git fetch --prune --unshallow - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index d2c7847807..e08c6106c0 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -14,7 +14,7 @@ jobs: pages: write steps: - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 - name: Checkout uses: actions/checkout@master with: From d25fb355f3c7a1d1e2ee895d009d0d639a37c18b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 22:35:02 +0900 Subject: [PATCH 161/414] Bump ruff from 0.1.6 to 0.1.7 in /requirements (#952) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.6 to 0.1.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.6...v0.1.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f073524c51..2c2a6d47ff 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.7.1 # For unit test -ruff == 0.1.6 # For unit test +ruff == 0.1.7 # For unit test From 313ce196215f2625c1f6b20e49722b51631bdb37 Mon Sep 17 00:00:00 2001 From: Xavier Dias <93143666+Xavi007@users.noreply.github.com> Date: Mon, 18 Dec 2023 05:42:47 +0530 Subject: [PATCH 162/414] Xavi007: #903 There's an error in the transformation_matrix of Quadrotor renamed "yaw" to "roll" (#906) --- AerialNavigation/drone_3d_trajectory_following/Quadrotor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py b/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py index 413a8625a5..c379e5eda0 100644 --- a/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py +++ b/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py @@ -56,7 +56,7 @@ def transformation_matrix(self): [[cos(yaw) * cos(pitch), -sin(yaw) * cos(roll) + cos(yaw) * sin(pitch) * sin(roll), sin(yaw) * sin(roll) + cos(yaw) * sin(pitch) * cos(roll), x], [sin(yaw) * cos(pitch), cos(yaw) * cos(roll) + sin(yaw) * sin(pitch) * sin(roll), -cos(yaw) * sin(roll) + sin(yaw) * sin(pitch) * cos(roll), y], - [-sin(pitch), cos(pitch) * sin(roll), cos(pitch) * cos(yaw), z] + [-sin(pitch), cos(pitch) * sin(roll), cos(pitch) * cos(roll), z] ]) def plot(self): # pragma: no cover From 3efbc94f9cb5532b7a046d4fe79d3fe62dc18bd4 Mon Sep 17 00:00:00 2001 From: flyingmars <55879494+2892510130@users.noreply.github.com> Date: Mon, 18 Dec 2023 21:53:03 +0800 Subject: [PATCH 163/414] fix d_star (#898) --- PathPlanning/DStar/dstar.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/PathPlanning/DStar/dstar.py b/PathPlanning/DStar/dstar.py index f8954d776c..cc1d88ed66 100644 --- a/PathPlanning/DStar/dstar.py +++ b/PathPlanning/DStar/dstar.py @@ -9,6 +9,7 @@ """ import math + from sys import maxsize import matplotlib.pyplot as plt @@ -103,7 +104,7 @@ def process_state(self): if y.h <= k_old and x.h > y.h + x.cost(y): x.parent = y x.h = y.h + x.cost(y) - elif k_old == x.h: + if k_old == x.h: for y in self.map.get_neighbors(x): if y.t == "new" or y.parent == x and y.h != x.h + x.cost(y) \ or y.parent != x and y.h > x.h + x.cost(y): @@ -116,7 +117,7 @@ def process_state(self): self.insert(y, x.h + x.cost(y)) else: if y.parent != x and y.h > x.h + x.cost(y): - self.insert(y, x.h) + self.insert(x, x.h) else: if y.parent != x and x.h > y.h + x.cost(y) \ and y.t == "close" and y.h > k_old: @@ -173,6 +174,8 @@ def run(self, start, end): s.set_state("e") tmp = start + AddNewObstacle(self.map) # add new obstacle after the first search finished + while tmp != end: tmp.set_state("*") rx.append(tmp.x) @@ -195,6 +198,15 @@ def modify(self, state): if k_min >= state.h: break +def AddNewObstacle(map:Map): + ox, oy = [], [] + for i in range(5, 21): + ox.append(i) + oy.append(40) + map.set_obstacle([(i, j) for i, j in zip(ox, oy)]) + if show_animation: + plt.pause(0.001) + plt.plot(ox, oy, ".g") def main(): m = Map(100, 100) @@ -217,7 +229,6 @@ def main(): for i in range(0, 40): ox.append(40) oy.append(60 - i) - print([(i, j) for i, j in zip(ox, oy)]) m.set_obstacle([(i, j) for i, j in zip(ox, oy)]) start = [10, 10] @@ -234,7 +245,7 @@ def main(): rx, ry = dstar.run(start, end) if show_animation: - plt.plot(rx, ry, "-r") + # plt.plot(rx, ry, "-r") plt.show() From 1801cd0dfff86de899285d02f4a1593d2df970e9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 07:04:43 +0900 Subject: [PATCH 164/414] Bump github/codeql-action from 2 to 3 (#955) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/v2...v3) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index d3e888f09e..878a4a4435 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -24,7 +24,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@v3 with: config-file: ./.github/codeql/codeql-config.yml # Override language selection by uncommenting this and choosing your languages @@ -34,7 +34,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@v2 + uses: github/codeql-action/autobuild@v3 # ℹ️ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -48,4 +48,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 + uses: github/codeql-action/analyze@v3 From 7cca7aa6ac4c6d66cbb46011cc642b2543e5756e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 07:05:11 +0900 Subject: [PATCH 165/414] Bump ruff from 0.1.7 to 0.1.8 in /requirements (#956) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.7 to 0.1.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.7...v0.1.8) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2c2a6d47ff..68d8b2dcff 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.7.1 # For unit test -ruff == 0.1.7 # For unit test +ruff == 0.1.8 # For unit test From b2f866a5cd7bbf3f70c9c247e13f19d4a8858c92 Mon Sep 17 00:00:00 2001 From: Nivid Patel <66813410+nivid26@users.noreply.github.com> Date: Tue, 19 Dec 2023 08:03:55 -0500 Subject: [PATCH 166/414] Update car.py (#957) Changed comment at line 62 and 64 --- PathPlanning/HybridAStar/car.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PathPlanning/HybridAStar/car.py b/PathPlanning/HybridAStar/car.py index 0367ab2775..d7631133c7 100644 --- a/PathPlanning/HybridAStar/car.py +++ b/PathPlanning/HybridAStar/car.py @@ -59,9 +59,9 @@ def rectangle_check(x, y, yaw, ox, oy): rx, ry = converted_xy[0], converted_xy[1] if not (rx > LF or rx < -LB or ry > W / 2.0 or ry < -W / 2.0): - return False # no collision + return False # collision - return True # collision + return True # no collision def plot_arrow(x, y, yaw, length=1.0, width=0.5, fc="r", ec="k"): From e3f7979c3c08de87d702e1d2006ffb55440514a5 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 22 Dec 2023 12:13:59 +0900 Subject: [PATCH 167/414] Update dstar.py (#959) --- PathPlanning/DStar/dstar.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/DStar/dstar.py b/PathPlanning/DStar/dstar.py index cc1d88ed66..b62b939f54 100644 --- a/PathPlanning/DStar/dstar.py +++ b/PathPlanning/DStar/dstar.py @@ -245,7 +245,7 @@ def main(): rx, ry = dstar.run(start, end) if show_animation: - # plt.plot(rx, ry, "-r") + plt.plot(rx, ry, "-r") plt.show() From 87b3aacb8b41e1924319eaae85ef88c39e3062b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Dec 2023 23:36:29 +0900 Subject: [PATCH 168/414] Bump mypy from 1.7.1 to 1.8.0 in /requirements (#960) Bumps [mypy](https://github.com/python/mypy) from 1.7.1 to 1.8.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.7.1...v1.8.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 68d8b2dcff..ae1aa2d749 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test -mypy == 1.7.1 # For unit test +mypy == 1.8.0 # For unit test ruff == 0.1.8 # For unit test From 748b9be4e76fa2f0d55b507a30bb578b74d6c921 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Dec 2023 08:33:04 +0900 Subject: [PATCH 169/414] Bump ruff from 0.1.8 to 0.1.9 in /requirements (#961) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.8 to 0.1.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.8...v0.1.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ae1aa2d749..bb78ed4d2f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.8 # For unit test +ruff == 0.1.9 # For unit test From cc3fd0c55e8df8637ffa1753c6a3d973db9ed2a1 Mon Sep 17 00:00:00 2001 From: Videh Patel <66770479+videh25@users.noreply.github.com> Date: Tue, 2 Jan 2024 19:09:48 +0530 Subject: [PATCH 170/414] Using util.angle_mod in all codes. #684 (#946) * switched to using utils.angle_mod() * switched to using utils.angle_mod() * renamed mod2pi to pi_2_pi * Removed linting errors * switched to using utils.angle_mod() * switched to using utils.angle_mod() * renamed mod2pi to pi_2_pi * Removed linting errors * annotation changes and round precision * Reverted to mod2pi --------- Co-authored-by: Videh Patel --- .../n_joint_arm_to_point_control.py | 5 ++-- .../two_joint_arm_to_point_control.py | 3 ++- Control/move_to_pose/move_to_pose.py | 19 +++++++-------- .../ensemble_kalman_filter.py | 3 ++- .../ClosedLoopRRTStar/unicycle_model.py | 3 ++- .../motion_model.py | 3 ++- .../trajectory_generator.py | 2 +- .../reeds_shepp_path_planning.py | 9 ++++---- .../lqr_speed_steer_control.py | 4 ++-- .../lqr_steer_control/lqr_steer_control.py | 3 ++- ...odel_predictive_speed_and_steer_control.py | 9 ++------ .../rear_wheel_feedback.py | 23 ++++++++----------- .../stanley_controller/stanley_controller.py | 13 ++++------- SLAM/EKFSLAM/ekf_slam.py | 3 ++- SLAM/FastSLAM1/fast_slam1.py | 3 ++- SLAM/FastSLAM2/fast_slam2.py | 3 ++- SLAM/GraphBasedSLAM/graph_based_slam.py | 3 ++- 17 files changed, 51 insertions(+), 60 deletions(-) diff --git a/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py b/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py index 498ef41c1f..a237523336 100644 --- a/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py +++ b/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py @@ -11,6 +11,7 @@ import numpy as np from ArmNavigation.n_joint_arm_to_point_control.NLinkArm import NLinkArm +from utils.angle import angle_mod # Simulation parameters Kp = 2 @@ -159,9 +160,9 @@ def ang_diff(theta1, theta2): """ Returns the difference between two angles in the range -pi to +pi """ - return (theta1 - theta2 + np.pi) % (2 * np.pi) - np.pi + return angle_mod(theta1 - theta2) if __name__ == '__main__': # main() - animation() \ No newline at end of file + animation() diff --git a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py index 66d0ebeb23..c2227f18e3 100644 --- a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py +++ b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py @@ -15,6 +15,7 @@ import matplotlib.pyplot as plt import numpy as np import math +from utils.angle import angle_mod # Simulation parameters @@ -110,7 +111,7 @@ def plot_arm(theta1, theta2, target_x, target_y): # pragma: no cover def ang_diff(theta1, theta2): # Returns the difference between two angles in the range -pi to +pi - return (theta1 - theta2 + np.pi) % (2 * np.pi) - np.pi + return angle_mod(theta1 - theta2) def click(event): # pragma: no cover diff --git a/Control/move_to_pose/move_to_pose.py b/Control/move_to_pose/move_to_pose.py index 73604ccd7f..cc29666297 100644 --- a/Control/move_to_pose/move_to_pose.py +++ b/Control/move_to_pose/move_to_pose.py @@ -13,7 +13,7 @@ import matplotlib.pyplot as plt import numpy as np from random import random - +from utils.angle import angle_mod class PathFinderController: """ @@ -71,9 +71,8 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # from 0 rad to 2*pi rad with slight turn rho = np.hypot(x_diff, y_diff) - alpha = (np.arctan2(y_diff, x_diff) - - theta + np.pi) % (2 * np.pi) - np.pi - beta = (theta_goal - theta - alpha + np.pi) % (2 * np.pi) - np.pi + alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) + beta = angle_mod(theta_goal - theta - alpha) v = self.Kp_rho * rho w = self.Kp_alpha * alpha - controller.Kp_beta * beta @@ -173,16 +172,14 @@ def transformation_matrix(x, y, theta): def main(): for i in range(5): - x_start = 20 * random() - y_start = 20 * random() - theta_start = 2 * np.pi * random() - np.pi + x_start = 20.0 * random() + y_start = 20.0 * random() + theta_start: float = 2 * np.pi * random() - np.pi x_goal = 20 * random() y_goal = 20 * random() theta_goal = 2 * np.pi * random() - np.pi - print("Initial x: %.2f m\nInitial y: %.2f m\nInitial theta: %.2f rad\n" % - (x_start, y_start, theta_start)) - print("Goal x: %.2f m\nGoal y: %.2f m\nGoal theta: %.2f rad\n" % - (x_goal, y_goal, theta_goal)) + print(f"Initial x: {round(x_start, 2)} m\nInitial y: {round(y_start, 2)} m\nInitial theta: {round(theta_start, 2)} rad\n") + print(f"Goal x: {round(x_goal, 2)} m\nGoal y: {round(y_goal, 2)} m\nGoal theta: {round(theta_goal, 2)} rad\n") move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal) diff --git a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py index fc8280e7bf..2bab3b49c1 100644 --- a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py +++ b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py @@ -16,6 +16,7 @@ import math import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod from utils.angle import rot_mat_2d @@ -179,7 +180,7 @@ def plot_covariance_ellipse(xEst, PEst): # pragma: no cover def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/PathPlanning/ClosedLoopRRTStar/unicycle_model.py b/PathPlanning/ClosedLoopRRTStar/unicycle_model.py index 5a0fd17a4e..c05f76c84e 100644 --- a/PathPlanning/ClosedLoopRRTStar/unicycle_model.py +++ b/PathPlanning/ClosedLoopRRTStar/unicycle_model.py @@ -8,6 +8,7 @@ import math import numpy as np +from utils.angle import angle_mod dt = 0.05 # [s] L = 0.9 # [m] @@ -39,7 +40,7 @@ def update(state, a, delta): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) if __name__ == '__main__': # pragma: no cover diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py index 531bf91ef5..5ef6d2e23f 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py @@ -1,6 +1,7 @@ import math import numpy as np from scipy.interpolate import interp1d +from utils.angle import angle_mod # motion parameter L = 1.0 # wheel base @@ -18,7 +19,7 @@ def __init__(self, x=0.0, y=0.0, yaw=0.0, v=0.0): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def update(state, v, delta, dt, L): diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py index 97c0ad8b80..6084fc1a07 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py @@ -18,7 +18,7 @@ # optimization parameter max_iter = 100 -h = np.array([0.5, 0.02, 0.02]).T # parameter sampling distance +h: np.ndarray = np.array([0.5, 0.02, 0.02]).T # parameter sampling distance cost_th = 0.1 show_animation = True diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index c55d2629e5..4d8fb7d9b8 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -9,6 +9,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod show_animation = True @@ -40,6 +41,9 @@ def plot_arrow(x, y, yaw, length=1.0, width=0.5, fc="r", ec="k"): plt.plot(x, y) +def pi_2_pi(x): + return angle_mod(x) + def mod2pi(x): # Be consistent with fmod in cplusplus here. v = np.mod(x, np.copysign(2.0 * math.pi, x)) @@ -50,7 +54,6 @@ def mod2pi(x): v -= 2.0 * math.pi return v - def straight_left_straight(x, y, phi): phi = mod2pi(phi) # only take phi in (0.01*math.pi, 0.99*math.pi) for the sake of speed. @@ -296,10 +299,6 @@ def interpolate(dist, length, mode, max_curvature, origin_x, origin_y, return x, y, yaw, 1 if length > 0.0 else -1 -def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi - - def calc_paths(sx, sy, syaw, gx, gy, gyaw, maxc, step_size): q0 = [sx, sy, syaw] q1 = [gx, gy, gyaw] diff --git a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py index 7e57abb80e..a70e30d378 100644 --- a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py +++ b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py @@ -11,6 +11,7 @@ import numpy as np import scipy.linalg as la import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -52,8 +53,7 @@ def update(state, a, delta): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi - + return angle_mod(angle) def solve_dare(A, B, Q, R): """ diff --git a/PathTracking/lqr_steer_control/lqr_steer_control.py b/PathTracking/lqr_steer_control/lqr_steer_control.py index 95a1b92ce5..4078ea56db 100644 --- a/PathTracking/lqr_steer_control/lqr_steer_control.py +++ b/PathTracking/lqr_steer_control/lqr_steer_control.py @@ -11,6 +11,7 @@ import numpy as np import sys import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -61,7 +62,7 @@ def PIDControl(target, current): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def solve_DARE(A, B, Q, R): diff --git a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py index 3015313198..c55018cf26 100644 --- a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py +++ b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py @@ -11,6 +11,7 @@ import numpy as np import sys import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -69,13 +70,7 @@ def __init__(self, x=0.0, y=0.0, yaw=0.0, v=0.0): def pi_2_pi(angle): - while(angle > math.pi): - angle = angle - 2.0 * math.pi - - while(angle < -math.pi): - angle = angle + 2.0 * math.pi - - return angle + return angle_mod(angle) def get_linear_model_matrix(v, phi, delta): diff --git a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py index ff72454f34..1702bd47dd 100644 --- a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py +++ b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py @@ -8,6 +8,7 @@ import matplotlib.pyplot as plt import math import numpy as np +from utils.angle import angle_mod from scipy import interpolate from scipy import optimize @@ -51,21 +52,21 @@ def __init__(self, x, y): self.ddY = self.Y.derivative(2) self.length = s[-1] - + def calc_yaw(self, s): dx, dy = self.dX(s), self.dY(s) return np.arctan2(dy, dx) - + def calc_curvature(self, s): dx, dy = self.dX(s), self.dY(s) ddx, ddy = self.ddX(s), self.ddY(s) return (ddy * dx - ddx * dy) / ((dx ** 2 + dy ** 2)**(3 / 2)) - + def __find_nearest_point(self, s0, x, y): def calc_distance(_s, *args): _x, _y= self.X(_s), self.Y(_s) return (_x - args[0])**2 + (_y - args[1])**2 - + def calc_distance_jacobian(_s, *args): _x, _y = self.X(_s), self.Y(_s) _dx, _dy = self.dX(_s), self.dY(_s) @@ -76,7 +77,7 @@ def calc_distance_jacobian(_s, *args): def calc_track_error(self, x, y, s0): ret = self.__find_nearest_point(s0, x, y) - + s = ret[0][0] e = ret[1] @@ -96,13 +97,7 @@ def pid_control(target, current): return a def pi_2_pi(angle): - while(angle > math.pi): - angle = angle - 2.0 * math.pi - - while(angle < -math.pi): - angle = angle + 2.0 * math.pi - - return angle + return angle_mod(angle) def rear_wheel_feedback_control(state, e, k, yaw_ref): v = state.v @@ -170,7 +165,7 @@ def simulate(path_ref, goal): plt.plot(path_ref.X(s0), path_ref.Y(s0), "xg", label="target") plt.axis("equal") plt.grid(True) - plt.title("speed[km/h]:{:.2f}, target s-param:{:.2f}".format(round(state.v * 3.6, 2), s0)) + plt.title(f"speed[km/h]:{round(state.v * 3.6, 2):.2f}, target s-param:{s0:.2f}") plt.pause(0.0001) return t, x, y, yaw, v, goal_flag @@ -184,7 +179,7 @@ def calc_target_speed(state, yaw_ref): if switch: state.direction *= -1 return 0.0 - + if state.direction != 1: return -target_speed diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_controller/stanley_controller.py index 9c475cbaf2..08aa049395 100644 --- a/PathTracking/stanley_controller/stanley_controller.py +++ b/PathTracking/stanley_controller/stanley_controller.py @@ -13,6 +13,7 @@ import matplotlib.pyplot as plt import sys import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -26,7 +27,7 @@ show_animation = True -class State(object): +class State: """ Class representing the state of a vehicle. @@ -38,7 +39,7 @@ class State(object): def __init__(self, x=0.0, y=0.0, yaw=0.0, v=0.0): """Instantiate the object.""" - super(State, self).__init__() + super().__init__() self.x = x self.y = y self.yaw = yaw @@ -106,13 +107,7 @@ def normalize_angle(angle): :param angle: (float) :return: (float) Angle in radian in [-pi, pi] """ - while angle > np.pi: - angle -= 2.0 * np.pi - - while angle < -np.pi: - angle += 2.0 * np.pi - - return angle + return angle_mod(angle) def calc_target_index(state, cx, cy): diff --git a/SLAM/EKFSLAM/ekf_slam.py b/SLAM/EKFSLAM/ekf_slam.py index bb648ce9d9..a624e8765b 100644 --- a/SLAM/EKFSLAM/ekf_slam.py +++ b/SLAM/EKFSLAM/ekf_slam.py @@ -8,6 +8,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod # EKF state covariance Cx = np.diag([0.5, 0.5, np.deg2rad(30.0)]) ** 2 @@ -192,7 +193,7 @@ def jacob_h(q, delta, x, i): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/SLAM/FastSLAM1/fast_slam1.py b/SLAM/FastSLAM1/fast_slam1.py index 7b89f52df4..17f6d5e572 100644 --- a/SLAM/FastSLAM1/fast_slam1.py +++ b/SLAM/FastSLAM1/fast_slam1.py @@ -10,6 +10,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod # Fast SLAM covariance Q = np.diag([3.0, np.deg2rad(10.0)]) ** 2 @@ -321,7 +322,7 @@ def motion_model(x, u): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/SLAM/FastSLAM2/fast_slam2.py b/SLAM/FastSLAM2/fast_slam2.py index aa77aa956a..2b57e3bcc3 100644 --- a/SLAM/FastSLAM2/fast_slam2.py +++ b/SLAM/FastSLAM2/fast_slam2.py @@ -10,6 +10,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod # Fast SLAM covariance Q = np.diag([3.0, np.deg2rad(10.0)]) ** 2 @@ -346,7 +347,7 @@ def motion_model(x, u): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/SLAM/GraphBasedSLAM/graph_based_slam.py b/SLAM/GraphBasedSLAM/graph_based_slam.py index 4d66ef6732..edd20a959c 100644 --- a/SLAM/GraphBasedSLAM/graph_based_slam.py +++ b/SLAM/GraphBasedSLAM/graph_based_slam.py @@ -21,6 +21,7 @@ import matplotlib.pyplot as plt import numpy as np from scipy.spatial.transform import Rotation as Rot +from utils.angle import angle_mod # Simulation parameter Q_sim = np.diag([0.2, np.deg2rad(1.0)]) ** 2 @@ -249,7 +250,7 @@ def motion_model(x, u): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): From 49ae54ab70f1c30ca848fef215bdbc172a8e692a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jan 2024 22:40:08 +0900 Subject: [PATCH 171/414] Bump pytest from 7.4.3 to 7.4.4 in /requirements (#963) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.3 to 7.4.4. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.3...7.4.4) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bb78ed4d2f..8b3c4c1739 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.2 scipy == 1.11.4 matplotlib == 3.8.2 cvxpy == 1.4.1 -pytest == 7.4.3 # For unit test +pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.1.9 # For unit test From d7060f60289cc0241f3411fea85764fb20f9cac0 Mon Sep 17 00:00:00 2001 From: Videh Patel <66770479+videh25@users.noreply.github.com> Date: Mon, 8 Jan 2024 18:06:49 +0530 Subject: [PATCH 172/414] Reopen: Added missing path types (#949) * added missing RS path types * modified assert condition in test3 * removed linting errors * added sign check to avoid non RS paths * Mathematical description of RS curves * Undid debugging changes * Added large step_size consideration * renamed test3 to test_too_big_step_size --------- Co-authored-by: Videh Patel --- .../reeds_shepp_path_planning.py | 320 +++++++++------ .../path_planning/reeds_shepp_path/LR_L.png | Bin 0 -> 280028 bytes .../path_planning/reeds_shepp_path/LR_LR.png | Bin 0 -> 381584 bytes .../path_planning/reeds_shepp_path/LSL.png | Bin 0 -> 239825 bytes .../reeds_shepp_path/LSL90xR.png | Bin 0 -> 301712 bytes .../path_planning/reeds_shepp_path/LSR.png | Bin 0 -> 257435 bytes .../reeds_shepp_path/LSR90_L.png | Bin 0 -> 339492 bytes .../reeds_shepp_path/L_R90SL.png | Bin 0 -> 316723 bytes .../reeds_shepp_path/L_R90SL90_R.png | Bin 0 -> 335979 bytes .../reeds_shepp_path/L_R90SR.png | Bin 0 -> 291754 bytes .../path_planning/reeds_shepp_path/L_RL.png | Bin 0 -> 277432 bytes .../path_planning/reeds_shepp_path/L_RL_R.png | Bin 0 -> 323010 bytes .../path_planning/reeds_shepp_path/L_R_L.png | Bin 0 -> 271666 bytes .../reeds_shepp_path_main.rst | 375 ++++++++++++++++++ tests/test_rrt_star_reeds_shepp.py | 6 +- 15 files changed, 586 insertions(+), 115 deletions(-) create mode 100644 docs/modules/path_planning/reeds_shepp_path/LR_L.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LR_LR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSL.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSL90xR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSR90_L.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R90SL.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R90SR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_RL.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_RL_R.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R_L.png diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index 4d8fb7d9b8..8e134ff38b 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -3,6 +3,7 @@ Reeds Shepp path planner sample code author Atsushi Sakai(@Atsushi_twi) +co-author Videh Patel(@videh25) : Added the missing RS paths """ import math @@ -54,21 +55,6 @@ def mod2pi(x): v -= 2.0 * math.pi return v -def straight_left_straight(x, y, phi): - phi = mod2pi(phi) - # only take phi in (0.01*math.pi, 0.99*math.pi) for the sake of speed. - # phi in (0, 0.01*math.pi) will make test2() in test_rrt_star_reeds_shepp.py - # extremely time-consuming, since the value of xd, t will be very large. - if math.pi * 0.01 < phi < math.pi * 0.99 and y != 0: - xd = - y / math.tan(phi) + x - t = xd - math.tan(phi / 2.0) - u = phi - v = np.sign(y) * math.hypot(x - xd, y) - math.tan(phi / 2.0) - return True, t, u, v - - return False, 0.0, 0.0, 0.0 - - def set_path(paths, lengths, ctypes, step_size): path = Path() path.ctypes = ctypes @@ -90,18 +76,6 @@ def set_path(paths, lengths, ctypes, step_size): return paths -def straight_curve_straight(x, y, phi, paths, step_size): - flag, t, u, v = straight_left_straight(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["S", "L", "S"], step_size) - - flag, t, u, v = straight_left_straight(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["S", "R", "S"], step_size) - - return paths - - def polar(x, y): r = math.hypot(x, y) theta = math.atan2(y, x) @@ -110,117 +84,200 @@ def polar(x, y): def left_straight_left(x, y, phi): u, t = polar(x - math.sin(phi), y - 1.0 + math.cos(phi)) - if t >= 0.0: + if 0.0 <= t <= math.pi: v = mod2pi(phi - t) - if v >= 0.0: - return True, t, u, v + if 0.0 <= v <= math.pi: + return True, [t, u, v], ['L', 'S', 'L'] + + return False, [], [] + + +def left_straight_right(x, y, phi): + u1, t1 = polar(x + math.sin(phi), y - 1.0 - math.cos(phi)) + u1 = u1 ** 2 + if u1 >= 4.0: + u = math.sqrt(u1 - 4.0) + theta = math.atan2(2.0, u) + t = mod2pi(t1 + theta) + v = mod2pi(t - phi) + + if (t >= 0.0) and (v >= 0.0): + return True, [t, u, v], ['L', 'S', 'R'] - return False, 0.0, 0.0, 0.0 + return False, [], [] -def left_right_left(x, y, phi): - u1, t1 = polar(x - math.sin(phi), y - 1.0 + math.cos(phi)) +def left_x_right_x_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) if u1 <= 4.0: - u = -2.0 * math.asin(0.25 * u1) - t = mod2pi(t1 + 0.5 * u + math.pi) - v = mod2pi(phi - t + u) + A = math.acos(0.25 * u1) + t = mod2pi(A + theta + math.pi/2) + u = mod2pi(math.pi - 2 * A) + v = mod2pi(phi - t - u) + return True, [t, -u, v], ['L', 'R', 'L'] - if t >= 0.0 >= u: - return True, t, u, v + return False, [], [] - return False, 0.0, 0.0, 0.0 +def left_x_right_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) -def curve_curve_curve(x, y, phi, paths, step_size): - flag, t, u, v = left_right_left(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["L", "R", "L"], step_size) + if u1 <= 4.0: + A = math.acos(0.25 * u1) + t = mod2pi(A + theta + math.pi/2) + u = mod2pi(math.pi - 2*A) + v = mod2pi(-phi + t + u) + return True, [t, -u, -v], ['L', 'R', 'L'] - flag, t, u, v = left_right_left(-x, y, -phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["L", "R", "L"], step_size) + return False, [], [] - flag, t, u, v = left_right_left(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["R", "L", "R"], step_size) - flag, t, u, v = left_right_left(-x, -y, phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["R", "L", "R"], step_size) +def left_right_x_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) - # backwards - xb = x * math.cos(phi) + y * math.sin(phi) - yb = x * math.sin(phi) - y * math.cos(phi) + if u1 <= 4.0: + u = math.acos(1 - u1**2 * 0.125) + A = math.asin(2 * math.sin(u) / u1) + t = mod2pi(-A + theta + math.pi/2) + v = mod2pi(t - u - phi) + return True, [t, u, -v], ['L', 'R', 'L'] + + return False, [], [] + + +def left_right_x_left_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) + + # Solutions refering to (2 < u1 <= 4) are considered sub-optimal in paper + # Solutions do not exist for u1 > 4 + if u1 <= 2: + A = math.acos((u1 + 2) * 0.25) + t = mod2pi(theta + A + math.pi/2) + u = mod2pi(A) + v = mod2pi(phi - t + 2*u) + if ((t >= 0) and (u >= 0) and (v >= 0)): + return True, [t, u, -u, -v], ['L', 'R', 'L', 'R'] + + return False, [], [] + + +def left_x_right_left_x_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) + u2 = (20 - u1**2) / 16 + + if (0 <= u2 <= 1): + u = math.acos(u2) + A = math.asin(2 * math.sin(u) / u1) + t = mod2pi(theta + A + math.pi/2) + v = mod2pi(t - phi) + if (t >= 0) and (v >= 0): + return True, [t, -u, -u, v], ['L', 'R', 'L', 'R'] - flag, t, u, v = left_right_left(xb, yb, phi) - if flag: - paths = set_path(paths, [v, u, t], ["L", "R", "L"], step_size) + return False, [], [] - flag, t, u, v = left_right_left(-xb, yb, -phi) - if flag: - paths = set_path(paths, [-v, -u, -t], ["L", "R", "L"], step_size) - flag, t, u, v = left_right_left(xb, -yb, -phi) - if flag: - paths = set_path(paths, [v, u, t], ["R", "L", "R"], step_size) +def left_x_right90_straight_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) - flag, t, u, v = left_right_left(-xb, -yb, phi) - if flag: - paths = set_path(paths, [-v, -u, -t], ["R", "L", "R"], step_size) + if u1 >= 2.0: + u = math.sqrt(u1**2 - 4) - 2 + A = math.atan2(2, math.sqrt(u1**2 - 4)) + t = mod2pi(theta + A + math.pi/2) + v = mod2pi(t - phi + math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, -math.pi/2, -u, -v], ['L', 'R', 'S', 'L'] - return paths + return False, [], [] -def curve_straight_curve(x, y, phi, paths, step_size): - flag, t, u, v = left_straight_left(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["L", "S", "L"], step_size) +def left_straight_right90_x_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) - flag, t, u, v = left_straight_left(-x, y, -phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["L", "S", "L"], step_size) + if u1 >= 2.0: + u = math.sqrt(u1**2 - 4) - 2 + A = math.atan2(math.sqrt(u1**2 - 4), 2) + t = mod2pi(theta - A + math.pi/2) + v = mod2pi(t - phi - math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, u, math.pi/2, -v], ['L', 'S', 'R', 'L'] - flag, t, u, v = left_straight_left(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["R", "S", "R"], step_size) + return False, [], [] - flag, t, u, v = left_straight_left(-x, -y, phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["R", "S", "R"], step_size) - flag, t, u, v = left_straight_right(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["L", "S", "R"], step_size) +def left_x_right90_straight_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) - flag, t, u, v = left_straight_right(-x, y, -phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["L", "S", "R"], step_size) + if u1 >= 2.0: + t = mod2pi(theta + math.pi/2) + u = u1 - 2 + v = mod2pi(phi - t - math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, -math.pi/2, -u, -v], ['L', 'R', 'S', 'R'] - flag, t, u, v = left_straight_right(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["R", "S", "L"], step_size) + return False, [], [] - flag, t, u, v = left_straight_right(-x, -y, phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["R", "S", "L"], step_size) - return paths +def left_straight_left90_x_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) + if u1 >= 2.0: + t = mod2pi(theta) + u = u1 - 2 + v = mod2pi(phi - t - math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, u, math.pi/2, -v], ['L', 'S', 'L', 'R'] + + return False, [], [] + + +def left_x_right90_straight_left90_x_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) -def left_straight_right(x, y, phi): - u1, t1 = polar(x + math.sin(phi), y - 1.0 - math.cos(phi)) - u1 = u1 ** 2 if u1 >= 4.0: - u = math.sqrt(u1 - 4.0) - theta = math.atan2(2.0, u) - t = mod2pi(t1 + theta) + u = math.sqrt(u1**2 - 4) - 4 + A = math.atan2(2, math.sqrt(u1**2 - 4)) + t = mod2pi(theta + A + math.pi/2) v = mod2pi(t - phi) + if (t >= 0) and (v >= 0): + return True, [t, -math.pi/2, -u, -math.pi/2, v], ['L', 'R', 'S', 'L', 'R'] + + return False, [], [] + - if t >= 0.0 and v >= 0.0: - return True, t, u, v +def timeflip(travel_distances): + return [-x for x in travel_distances] - return False, 0.0, 0.0, 0.0 + +def reflect(steering_directions): + def switch_dir(dirn): + if dirn == 'L': + return 'R' + elif dirn == 'R': + return 'L' + else: + return 'S' + return[switch_dir(dirn) for dirn in steering_directions] def generate_path(q0, q1, max_curvature, step_size): @@ -231,11 +288,52 @@ def generate_path(q0, q1, max_curvature, step_size): s = math.sin(q0[2]) x = (c * dx + s * dy) * max_curvature y = (-s * dx + c * dy) * max_curvature + step_size *= max_curvature paths = [] - paths = straight_curve_straight(x, y, dth, paths, step_size) - paths = curve_straight_curve(x, y, dth, paths, step_size) - paths = curve_curve_curve(x, y, dth, paths, step_size) + path_functions = [left_straight_left, left_straight_right, # CSC + left_x_right_x_left, left_x_right_left, left_right_x_left, # CCC + left_right_x_left_right, left_x_right_left_x_right, # CCCC + left_x_right90_straight_left, left_x_right90_straight_right, # CCSC + left_straight_right90_x_left, left_straight_left90_x_right, # CSCC + left_x_right90_straight_left90_x_right] # CCSCC + + for path_func in path_functions: + flag, travel_distances, steering_dirns = path_func(x, y, dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + paths = set_path(paths, travel_distances, steering_dirns, step_size) + + flag, travel_distances, steering_dirns = path_func(-x, y, -dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + travel_distances = timeflip(travel_distances) + paths = set_path(paths, travel_distances, steering_dirns, step_size) + + flag, travel_distances, steering_dirns = path_func(x, -y, -dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + steering_dirns = reflect(steering_dirns) + paths = set_path(paths, travel_distances, steering_dirns, step_size) + + flag, travel_distances, steering_dirns = path_func(-x, -y, dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + travel_distances = timeflip(travel_distances) + steering_dirns = reflect(steering_dirns) + paths = set_path(paths, travel_distances, steering_dirns, step_size) return paths @@ -252,7 +350,7 @@ def calc_interpolate_dists_list(lengths, step_size): def generate_local_course(lengths, modes, max_curvature, step_size): - interpolate_dists_list = calc_interpolate_dists_list(lengths, step_size) + interpolate_dists_list = calc_interpolate_dists_list(lengths, step_size * max_curvature) origin_x, origin_y, origin_yaw = 0.0, 0.0, 0.0 @@ -307,7 +405,7 @@ def calc_paths(sx, sy, syaw, gx, gy, gyaw, maxc, step_size): for path in paths: xs, ys, yaws, directions = generate_local_course(path.lengths, path.ctypes, maxc, - step_size * maxc) + step_size) # convert global coordinate path.x = [math.cos(-q0[2]) * ix + math.sin(-q0[2]) * iy + q0[0] for @@ -354,6 +452,9 @@ def main(): curvature, step_size) + if not xs: + assert False, "No path" + if show_animation: # pragma: no cover plt.cla() plt.plot(xs, ys, label="final course " + str(modes)) @@ -368,9 +469,6 @@ def main(): plt.axis("equal") plt.show() - if not xs: - assert False, "No path" - if __name__ == '__main__': main() diff --git a/docs/modules/path_planning/reeds_shepp_path/LR_L.png b/docs/modules/path_planning/reeds_shepp_path/LR_L.png new file mode 100644 index 0000000000000000000000000000000000000000..1e64da57f2a8ca1bcdded878f9a08e4198f7febf GIT binary patch literal 280028 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 z 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

    okV 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 z zN{js*mlkU=2xQsF6Y8kH;Q5ZvCcxjTdTKGVs5G_~`k+`xzw`dzUzjwhx{bQ|U|M>_ zxFl<|!2%-o=t){6uO@nG<}9vk1s(-p5tg1l52AFbavHkKhMOjGf+qNPZ8t2_yE)u_ zGgwne+IE9Fs|Fms)YYAVQJ&?HoSBBTnow(#@LuD35&coGff~jNrNps$0V~JmU=jY= z(2b#KtUj#bwPi+0PFUjcu#@rr*Vvm8!5su9bXWGw$yLEqj$}3B{}d5!;M`@+q+9SQ5UW zO~0t8`^ndkAsxNk`m7gzing(K;67~UwYu}+0qu>^2npe%3X4a}gjpI=O z^vsXf?%WP9sPz#G_8PJn)!fn<@Z{heEvBC?{QiZo3+Tb*WoQuzv?MUv-YCz`H2)^< z{5bV@;^M|n$_XVKMb?tsvl@!dk5w$dxhn1G>zST#Q0o}Q^LivgWnG=phtn;~`Y!&A zUJPQeg^C92%|Yopm5srZGopg+wrx@C8Kd@n0psIrlFd9a#O{f?Yw8_jSIIhk-$;o5 zglwh`RKCvo!=K;51nhd_@%{hqA`&EZruC|`?247S*(3-ecXy1-BO>F<*BLT-YQjkI zTfqdkz?;DjmUTWVm!(*4hzOQP$@5b(iltm-Cp^h{#)xN***uozo|C?nGuPZpq0>Ee zTeNw{0Sg9X!K{))TlYNgc2bA>{Ejy5LmNhPm+Z~1npY7Kt}dH|jj(KT02k!ri8-h&XCG z1Dx2U&Gh;KUFrqvLS?;tlPL?y^-tl0erAX1e0t+{`vL{PViuxqFU*$(jD^>4)JofY zboSBkEMd$njXIk~;gcC*m^-3d=>o2N8`Wd|-aM*RNpFQL%b16Ia3~jw{8hL10gx4Q zoBX@-AH@U3W)=m)oo5pmV24e1MrwgM@G$$cL(dd>2)*i8?0PnSHF47(6Mkm%v?#Nc z6#L>PxzV}xIIU!s=}IyH$ZCl#she5PU)eNjh6;7XboW@Joh%8deO+3}f8k`rcwFwS zRiby89tUojSZCPjoM@2pIdoDJsy?IVF1u=EUY*gh=F?^zJoL#j8)iq=+^4{oi@mFN zqqjVAu5$0}%|aDrUWBrU1ZF3{Gi0`ct};z>(HNr4XKtJ?8*Xc*eHl#t!X!jFMCuZ~ z68omqg+g3=GJGfxQ8eg1IsG+t-L3imJ7~yc5oM7LB&-9HBZMOjA#cd(wbvbak;3K7 zcqSvhlME#Va>s?AiCF)9&n0$hq@bfEKQ9ZElN#>%&O4LWP6EP)M@~$-mBSi3(VVA+ zG4uXuvu&gassk4wV6kq&I}*0TbqTPIYGBKRLc#CMUhJ5r3EdRY_H|=2qcFR?(6DOP z*=SJk#aleN)bBHQ7^;^zjTsTTQfv)VrJ<(Qfzvj++=46SX^@Kgj zCfd%~$`7=Rx(v%(&B(6}Q$QNkd!(oZ2b+8~;98Da_sZ!l*^Q7Ws(JN2@9Kk;L1pWn z3D|<2t)WgRcxmHtsoM_{qK(&8RCPHRT0Zg4wH7dmsTZ229ld_w?(gvX+q)lJclA~> zCub&%$I+C35-07Xy(y*lpYMbu64H}TI-MY~xay>uy@;L)ha}Aelk>2)N!W&G!Q1`K zgROJDSs6G=Dhd|r#tu#8L@;xW^~|_U@+TJJA zd(I00noKyTQ?T{&AZ+NtKu;1n`f&WOxo*GCz%UxLttJb{_v75`!Re-&Wuy}2)|2*D zx-mZSk^e&1O#=Bpz>QA2UOav6MNz4>w}Ghq8f?dIRL|aho4tl}lW9-=LFVqU{MH*J zVFp}3>Bi0@cZKyVaTIjs6JFFM+(qV%iKT?4lWbn%uNk4h$u=5ZNX*Glq!5>)s;h4b z%ZI7~e|7UgmoT`+I)gBYA^Mje)myjk&UDJqu%~~6^o~TXp}tFYdQMH;lXc!2X+W7URpu2 z6&=FEle-=ywh$cxVQMv^qR`p_TA>X}6wAbBl3qdkAe&+-_f#dktVMEzLL<)Apa*b-EIFr$)H< z4T%|~7S0WTJ1*{@?Pg4SQ?Oh#olkTafY06Zi2wYQ5JrgQrTe(7!*LhzOi-MxGVwB^ z-9pLqk9AK1HT2SfVLD9Ud5VT^s!>~A<{MW#=&m+|{nqOI^UUVm7$twRk!p<4x zzTEB4JECqR!$~oLTT^);Q8c7N!#|I`1q9y{WBsHR%G@|i?`xct_Kh&Tpi7 zA_a2g$dGdfs=Tn?%qS(u3jpM?=$>010uOqkvuWc+P5}jYmmS1Uh#$iXu>_>Vp;_NX_&l5faIWKSW$*Ps~ z>h2RW9IZF(Ns1;OC7+(VI@fODSXZ83RVbtp;ZDp8tbRfaR&SO z{&XY*6NV9I4=T^rd1%q?#(KK9a@h{i%v?z@913%Qvl5?mn?|s(baNOi=d0TNfyQo%g7qqLayY4}T?$yF$CQUhcYnAk zc%4z_!C7FAdz_7lk57U6EC@ZRPOaG%ryAV4z5)!-o1UiRj2UTqeWDC`%eE>ki_Txp zlXl4Xg*-P;-Bn{g^p=L_CwOTF(DF!&tMus#oOpwa#ulw_*hyiXcryW&J4`2>Q2H1_ zGD1`ZWV(sN_h5N1VUr^3Ebm7?I^PGvbuNZm)u`d8fayVFl#y$bda&bn6FkKcx>j?X0MQc{Wb@&t8q~7rukvN=(Ck@0$<9)MX;ff=xW6oOdHw3NXG^WPWX_< zE6$cIpJ~C4-`~{w_WK;dUDeD&bcQ|=X^cLuu`#tpL9T(kok}yMqeg^ z3$3zl5jQD&9X0=7y2rujcnU^yaRv!P6GH^##$kiN$5n|Rqub&=_n27)vI(qO#=1)n#|?pU^l<)d%GsYDS0^+pxtl+~!x^gD5Sq z5YT!P4UEAMM1d-o&8xhgmkUl8K;R8`-Ah~(U;ld&QcpD)-ql9sk25#R!8vVg(6ZzU zD%WuIcFHj-E^=r*lw2gO6sx-LN%GkyG#niDU+y|pd}2U~F0qw%=Ot{+byZ7tjG&^tyV8m)N8aa~y8O5EM3kSa&vW-u8S zN^r$ccfCLsuB{J{s#*6o=A2Ke`>$*5>|x8x+ym?d$JMdK*N^W0%K59XPh6*2CiQ|l z%dvPWrb8Bxu7=gOuGthtfn}tGK;``F+!4{bM}(r*K0L$7ZcJs>-1es($d+C3VH5s; z6L#YWI7Mtn`D=da#LHNJRdmEmMt2CKIc9?(EjK3ACqySPag~bWh^`Z>Ud#y8LF$R^ zq3jia;LJhvQyb2ne8j!g;%28MJAJUgCPS$;Isd>Fg?!0wod_yJPDt1#i|$JaeWCNO zC+gi5JtQGIx1!$%u*$`TE||d$^)~JheH*cqkv|nz7ip+}oQkb>ko?n%`R?fhR{zIB zkUSDo8b%NI^okcQ(nUMm}^tpN+ik12T-gx&7TGrVES?uJ}z(?QLn*^15$G)-EPc z4=}D=qdZfXC@FjaT__!tk_HGvyTg*YW1RhVv|QkG{Ld}KlZrZ`EMI1E9vY^;RTv;- z;DRW#J>$!%$sqP1(qotwxu7di?>~e-9=2XeZfrjEW-`ssW;rv%eH(12Als_b2BGIO zOrZ{}T6h!VjTUZ~pD%RYN&{sj`^Z0A^XMTUEXhbfQGSdYO=ChvTyEDQ7}}((L|_x! zy;(A41tRSPc2l2`p{9E6Jr$N=fpDna$|S8fu8HJ7rt4YT?*&_Cr;z)yuDPUrSmP13 znDKrgI%S*O$t5d*bEKn7Za`u5uFKEGbh;V`P*iJAytOU6NhWQ_1dT29IGv_9U5c(; zO5i!9#=NdFQoEp|d4xhsCgGzZ)w?WS(?jNo06cC2lM*BJcYKbt9|JYG4V#Qaf@vIyjz9~ng!T~@LP>AppMG?;Xrr4z^re1 zIb$&i@u+$VS%DG8h*23;gVW|hQgRD&PBv~=cgCDF1C*_6y*nkZ!ZsFf`qqj@ z#eAwthUe&>)kAT#u=<3w@s6D+@9b;GZambw)`kfAr5kMmC6-b*G*=sK!b<47zHpiv-q#+cV|8 z(yQ;)Be>r~^VaSg>2(j&#|*ID?&-}LU=?@{qP6f**T}DAJ+h?D3jH;D1fLN&gqIQ-FC8}T89?U zRa9|tzOvn|kH6&~6SZspt#xwTL32fvEARd^eWp-f6cAnb!NBzX5`PP-^amwa1 zNCX}O^)Cx@k3SO#hbuy_sEXwoLbqo@0Z-=l;c}mKj(n8MeEo?1GDwJ?H{C7z6Day9 z%HW#j;cV6SEL zsRQOzeO!GMgpfzMQXDO1A))iJAr%=N7PE_f?I6zd_{LJa4>gYX5l|n;jdU*>;kR}O zkupNnl0I_w$H$YP8ElhT&d2tXxx>B^ius7}hs0rK@Z!wakIM6lGS*0Uu3Mw@IS+zi z-p>p(qYiozDnP+dEfZ=Gq-TnJ*7_3&K+1mCVbH83IWl1WvpF(bmfb#2-f>q>w2rYmnC%~gF|*ijXCYpAbT>Zohf*Sh89mhv1^b01>l zv`4NnZI_A@z2tYNIxK`?-)pDAj<223dXy8Ww;axgwaj3B@GQQ+WvflbRbMJlYLenmI$%?jU>hNn+E- zH+!mGd)TuT602hpjSS^?ZZ_Dm{)pU)MQf%nqN@ZOTCXm3MRp;>gjnS2IF+*_`I&>? zfG%s zmKmkoTe?!kNxx>aFuYS(HXUPG&tb2kW9rmppTiJ>ss7d|(`xD9c-jtmrx}Ni!G&aR zOD^5AS&}&gW6lb>IZm_EIVY)ZFc_YiyC7sL?+^+mPZf-MSShL~fA&Z;A>mzg{ zGuMoPXZ+Q_We3i@B}uxGB%4?#FGA%fhUo*gzfmc_K}{Ca^?WQ(Q8|RbWVoe{7isL8 zk6NB>1&zes5U@ktXe?L{Tmb@98Tc+sUfO&`H+>AiQ9wT2O0DnSkw!RFnH^*nX$ZyK zHoZnJAi5wxP_`OJ7O@j1ed~u8@nN~Dev8>=6B~7sadQ0gRPK+> zlYTPJj^KUM-u>ZaD<t zXw|7AZYH?&=teo%>mD#SJzFA>&=>W36hy+xj1SPSn1NxZkT?!GN+lR=ec2WMp_rST zehiHEY3W3 zF^@YC*8kbD@#HY-_x*eVt}G7=iRCR$)4rA?xYMg_Fa955ECVAiUxcz380LeL2eejJ_Z7j{Z0mB6AaEMb@7c3F&(>jQ<{Z;QDkURS+gm^=T8fTZ?90W(Z?cDzyZ=G@fB-I0`@ z*B{ePcX2B|K@)lWtP;dC|K!yncedKrZC0<%l-P$)@UrE&ns}vF(PU(aGND8KU z+xT@?O8C1Y{rrn9yy+yVWvlNH-s>A;ZA&iNJ8kwehPG_Q_uTtzNGTll;PVVOuxQnB zqAB4CnfLMUlw0!ck8B?-JrONMy*dw5g=1SSKV}k=Dj!h=fy&rns$y3wBaJOXa-@>V z=Da1t@uM14R?(p^5(e?~xvJ-IZT+tIP#k&?Ap5)8L3HEbS!5 zKO|x_?3k62?rGNZLVm6oxx{)Log9FaN-)Ly>(m6=FS^}DpIy1>3YL!k0Fad$AhfX@ zlOFXDl(358nx%=G<7m z@hB0MJ$@k(au4~~G8XD4cO386`)E2H?N~wix~%+)icIPv7mXM`p#+nX-r0lVs{R+0 zbbTZJj|(PGzegS)m@TtPcx(BD!vE!{6lO))ftur{;r2bdO91nXzAWXp=FLSy}ILja>W9~ zw*=Yxz_4q|RX?o?#*YrR%pK?B1^v|S@2r5fBJAjoZT0dZGP6hv+XD)0`?8SaV;S~w z@!H*zya9XI2 zdFq$Nd4I9`-Fcs#KZcq8dao^;asBxBkFJ-$if%?hO)ZqCI6c%lWzgW!!e0}r^HG@B z&?-T7+Gvj!L3a{egpjX0qLsj7FxFGoc<-m|iPVg|ISkz_n6t_i%~g0#EHq02_*R!D&cF<6rYNu0;Vl<_nqdXq_>gmhLnP>=(WwDAPaZ8oFoGZP4%f8Z zDhuM}w#&&ze6Y=#hAVufaxd}x{;;de+T1nu zt?Xx2x@8BzsBb&h0v@(%is8iz*a?d1&P6uxCyioV^K>=(3@?)5{`Ckx`woA`wzf6_ zaq*8ANT_ggq!oCLM+AR@ zWYGQYis#q@*V2A3XZ@OMp(=v)jcYEz3viYz62LEG{_ZimqBi!6~$UHJ?~O8;z{mHUzD(4Vc7ZlQ0sSyGRzCz8Df#mHcpDy9~@iO zP?!vqzo2^$guO$FMJdKToXys}w`-}rNphVBR~qIwPv-isI6yoa2L5~sAAsW7+pZw_ z45()Zus)ktT>@CYoi*&luS@Y9x)lYXu?HUrV|3!MDl3{m_89skKy*ojc2wRa7MWTeg+xh@?t+Lsda&QL1XDaAti9P1aiOB%`-b zp6&x>RXi;%O$$9=Tbb?J6A3ws0`~FLQqG(?Q`GOCTmgjf4@9!|&2c-HR3GI-zgsN2 zJ8DM>>P2ys?ULsnGi!qw_p>Nfd<0=QA9coV2MK27jd6Q>dfvtjsDu_&VE68ZZ}!w# zUL%t@gR9UuZr=1@9aK^6nENbxbU-}7Q4i3>Y~@Y)aU4m*O7dd9zV!~10V&ZGbGOgv(qFb?YD zJqMHWK7~o0Kj?7Yki9AYpqhs`8vZ`sIn-@nmk_Uds@Bw6_utP-){n0bA;vk%Q1Y%GIwWV!1 zv+=VFn&>txyAJ0le&~z6RVFC^mdU`Fnv`WzS_&Px40TRbc4P36N(rsyQu(AF0 z#ouo^6V1u^(&P)&tLbn>-{m}1I3+XcFR(PV{hj^kWSn)%9t>m4 zE*#)$ga@lVw|U|rCa6(TbBXl))DLgk%v&#%qkxMg(d*64$+-ay1+^WMv^Tl*a{=O{ZSZ zc%3x=rv_#lokDf^`yjTK8)?fA!{eua=*YvUsGB!xK;_!T-ogxZ|3MPkr3CqyTEIBK z_jVkJOG1=42nZ;jIFWefWHzQ|it^80kDnHcAoS~sZna4!|3-VgPZUlVas`p9!)MTN z3_@CQ+*mowMfBdUi}Tnr^F?{)P_R?)pmnUfX$;blHBN>(7O!sq?}gLYl$4ZiXJ$%< zM)L9UMuUSyySL;RFAqMtAi12_iuJx=z8w`fC*ua%_EkIhnHedW8aW9w$hOI!z>qMh#T_Sl40%U@#0C*kPw?ci+t`!XH76M{cMHbbzDj_gp?*ag3 zRO9`HtN$C`VN{7G?yNw})=OcpU>P!kI^!FdzQbt^Q~k0{=&P%$j-!7~N0q?^3vBH+ zT$eZc=9Ht_CC-q4hs$YIUKQj6(?9jUUns&{g%4J=r(X4c3bjc{QKb6k(vt) z2Jx1^0QIm50;(Q#TU#H$U^##tdjMMbz3bdRJx2dCs{RFjWw${OEwUhq@b92Ji-s-J zWTvD7N-WJ>1Ro=C4Al9`~UU2Bi=)0oTH*V|2x3VuU@ zX6IDAQC$2W`j0mIWAp#L;@K~bchB_9{ktm(2FY~FyWXM>#$IOHyQ5e)Ck5l-+-zdg z?s41)S{YAMZC^<&cJ!4A`v8R{(k8=Ukz3sF<`we ziNU$Q9w|N76Fz|ZBCw;`L3^c0h6CeYzK9(WgX;rsK0ykrIiQB99ifuxf~S8tDuNKP zEQPJV_ukGkQRLjKPMK`^1Nbms=6*uKX(hYb2P=VZZ-k-AmJ~Nsby{F_g-dNE0Pu9@ z^}qk3n$7d&mJx>CqNEye@?&4U+GgzeiqZ;`qrDHY-`STgU0U~Mvr`?RuQ&E+H9(+sd>b0$sB6oT84==2C(T5RT!MA z#|%yd$jQzA1@>phu}k;L<@I5VVX-(QHT>Q^A=Fb29u#0&r5m0`o&k(J%!y$%4xe(x1xCk)>M8}p&;8jke(8N#N{^FT3;D{g<>6@06H#<#WJ}F0gwonaOeN#G zV6x4(4wyCXG;TpXzscI#I`|~0X+gmqk4pNmA+9G$MC61k{SCXC(qO7sqZ&YU(q;- zRmVP&=axQCp6rCl)Xi63u-m2*>(sb_+ODdQc6@U~4#fgJj9@y?NFoV_5rCo?ICt5H z5(RV0!sX(U9vXxS=j7~jyZy6;nP?3Vw#7tBm(=p~eJvyu!0 zi~T%wiqHnfU>f`BjoJ4gz~RmQaX!lb-3`>83p*T7gT=LDsg;(t z<7ZY&5x0~F?T&8BTbCeAJfINGF|lPSvg0*mfbbvVkZ-5GLo#7qQfDltaDGF@-Vt;U zT!)8ZI9r(+U#gj5>qF_UF7Nl8i!&-1aqbU+r(Clz#rosP~HBF zs;&f|$rk7ClpKj4KOQ3lMcxVTvgqP-hfaSNP`;w14)65F^~L2is&itbzR}C~KXl)j zT|tZBEH@uQ-EhOSsy4CL*YR-8czMGoSwOdUpW2w0Z@R|}kARZi^=DQc+Ix`V^y08c zXGahh*QS&2-ng{Dg=}_h>CuUx-%!?VeXuB5p@p#2;>8M24-UeY#qq{Y%IMEkjCO|~9g=$` zxM9N$Jq{ABsHyEKmX1}r8Fel(oP{AV9=*U!8XLTmBZdwrTVrrfe!ceM#9WdFLjA+lR7=6! zQ6l?O@v5!%vm ziWKtOm?OT}5GRCvqOGk>c%Ol25cWB|v)UiYx}f8S+blB1R-8h}(CtuNNUWX2-!DB^ zYjU^IZr3!KnXH$>mlQO1{y{+&8J9u4SvBt(Gvi+j%kv7Nxi;`ncAX3$j50Xn?4^Ex z9f3tlE&A{}`FG{&NX(^zFaw(3=n%|0bJqOT|AHN?$a}+;<857?0VXqR4qn2Ppt`(^u<%kM?-9696f*LS7#qarX zq4ta^gf0yYnRd{o!*(ZRA#vJ>LM*Ad{NqAw3}*&Eak5RN7$$afW5g~Y^2{diyqZ&4 z-NpCZ$#8k8go4|{7ZZZJ@O24o==huf0d$9fYj5q=R8phT9jl%RqF?csI zY>*>cZolny`8lMP$~kq|;@tU^Uyn+j=k7}sDd8j>jK9F81r<_)jDh}oWE-j-O3Ft$ zE7eoRFo(8m6ery`!n#*8gHg;c1dbXCKQ-YzGtj#45Zv)IZE8Pe#zNJ^CHLEr@c{AT ztBQ6sdDvIlE(%E%U#+pdPZNZcMg6@0_RY`hg#fwtE<7F`7q^;~y<6N5$2a>#jy7)P zXImIu|J?#i2CCG@x{xgBNsdU^p#8kr-L^vNu3i|b6g^qz_ss$f6APYBtoZad>YSIa z;t`$*&iFw^LtMchPMk9u#{RiZn{!~=|Ddpe5>i}?vcu zcNARAYE5&sdeec9diR>)aJNZ67`?XFDNcz!@FVr;*imP_!w*V+_T{)uP5wfC8O$~) z(*StWHlWd7Wc%56B`;K@ytwGP&;U`xsk=cB zcQ6B3bmB{BKK$cFj90}!>%#xk;XECTj{PlSXyUei4@5=;iMt%A94~t6g=*>@KBTHg zS5`kfoPNX}@ZD1=hH|{QH7bo`UixI~$K6vn!=3(K_2-bex0T|{h<4_LOFWKbMva-P z%xo!x8e<5Qxz^c`Gx^y(dRoMrlsYM?Y?m{+%X}Vq1>BTe=V008gnrkSG&w@97l@zo z6y~^EsUGgT+PCH&9?RjZN~x(9$Njgn>zSJ{OOG`_<@(tAr31RLtx1B%)xLa8iI&6p z>Pu=KChtl8w{Jhjm_e-C85qD(07-w(>nF?0gWK_1}Sya{^ zeS{}gIK?*#U_hkS}fzE-yFp;KaaFa75e|63>W#?%`kRx#(s%WYJ*Y}xYEZ~}L%Ii7y( z)rq(GpU^}3lZwRv87|HBx5EeK#zS+!w@whNbGLty6`W1Td7~(C5*<9_)5c`CucUPeej~WR-cV0`Z zRi5XI4R(O5nCcV*=g#we_ld?=@)nv&6$b~0!XIz{`;&j_e1Ss#HaWj?EB5YEyT|wc zvGv~ZT(|xEc*GUDiin0?Xb2T5L`q~=vO~)j*;~<8L?l^-kjxU9Z)u5=nLScuWK~v? z{EpM=y1&2AKRvpy>$-WpU+?pLj^lY8$J0{;?`Oz=4RPS2i}MzEIt1pOt3~bUDR&Th z(p4X#$H9b3F?~dSLyS-~eH#pDw+WFT5CVr8Wt7CC=S*LBI!FCRk~MD0u}csi8~S*R zwDRxnwxe}W0iYv)W{2s;Hr;+;R&aflE>_#SkUak9Q@hZPNRDDuqte4gRuAgx}(njgQ<%EhE^MvbcR3{2vvv4N+ZH`bLaR!AUS*wB}&I(LK1ZMuFb?_ zHrb9QmLYaQa-F|CdDCLZ)&TW%q_js}f){RHJX%-`cIHPnKc%Rr+p zg3kFCfz~mJw(#t7c79@uQ}6?W&DFjGnt2S@YD)P2f9HLX4-Zpi)Sn-nmRt}QZcUSK zJ^+M=Pew*Y$IG6H`Z=KoJ&L67`gFtxGq)=1?HLMi0E`25O@=eHdeT;xze-XK;kZQ$;AGTi0f*Op<`9NQtUz{kaIU zRsm;JMH&gJYp$rk{`?UJqD`4qNdsg7xof0AdqP5jGS~;HswFMcg3+w+VXLdd&e+QA z3d*=W5XfsrLuKSd9Lu$rADQ+g3<^NWr|ZzjYgMfi@KOD@e)=B#sd=E4U~Q%Fu5Z}p zJFPZ9pG+c-lWbEi7X)Nk0UrHaTT*dU+sU|Xz6X=#p&?=3!GH6q<@$^KCtv#PTJP7Z zhTBhhsB~vnn1EgpKZtZ_QmdpGv06q?_26 zbi-mBF^DAzEaq_uj}dL@z+O-LJ8RLSFkPe$-yKUo6y7uV_G1n4`>?pemO7TE^^xhZ;f(&hF7a) zyvbIb`EbV5Pg8zZ+G^$bM*&!Ep@bRDX@(OQIhQY8PLCHN_gO51&Wsv2a;ME|@Lt5eHtGO4R~I)W&asz}h<4{>xh>WccmJ+`YVCwX}OZ=uNxTsP(gc z+($sG`AP^103lG9({^Jvm*CXvp9^ea$;f{2g)|B8I9v|$v;BfO3#u0H5E>X?n-D41 z`&(Jn-DJS=|9t99+iOOmnE@CLJP9^yps??Acn)0Cs69VK(}0 zA5SOk$fxCAB`;-0rqZXm=cPoL?CFPT?HRXpB6MnB?H{Mx3M3dECq9h?wG1vXzD(ZA z3r*SJW^A1m1{iz`xO;2CyNl1HgmA^9aPYapOg1{J?eny0aO{>-a}DtKfB!o?;_R+sQ6He< zrAU3MQJxU*kgeYlg=a=Poee7y5%+U{eiVR7=sTn+>BXbpdi<^^XR%WX>nI*Bz5xN_ zk93wVc;);SiO%2OyEscvZqLU85G?=P`*;0c(M1j)aYiCba35MD0LcqxVg}w+UlB`FW^+Hq6j3^|APvSB3UGq-Lekd$GGJ^$J$$Cq%IW5u`MrNY1-v?jh$?#`RkVq9_{9uw?V>s>TBOCTg<>lq~f`~X+c?3b6O>`=&vCh?m11223FTyS5Lf?y3cf+~*w3lP3oSNk^tU~I!z@sOZTokZIR3Oe!5451!R};uv ziT3{fglU~Qq;LOn>|)}ZkNt~$cvvbe2lTUAWl9YmJk)9)4ZkC@?~NgFt%rSJh_A`_ zWTyKG8ISX^#A>rc4Cb}YshTF-WY9=VN4`Xct)#w7*P|xwWmzt>ZvA?HMlnt6@%^Ev z79jBXK{Z~7?qONMK{&a;S9GjTpOCcgysDz&hIAN@gTB0ZIk$`f{MW5(6qc&_!Qdc% zoB7Bz@wT+s&2gOj;GU_>qgwA%dw#+FsRYEbK#5UQe^(2|8bAIqjbd{p1@3Q5fPe~` zkB*^(G37e<`=?zP%&`a#tf1kkPHIg;;$tmELp%3w+HV(OOXhlvAu}bq2!)DJ##7Il z|E+)9J$x`tEd^$#y7<@nQiG)rjQc(BZ1W+x63Sh#XSND-DoAlJe`H?ijuo}3V-+@N zXh_mIHqi~z!sQKg$;+`W%)X_t`n+(s(20G2K0J|~d;N6YxGq$(W{NZa`yQRSe4ihd zvFE{AQv&$cdtG!V;=b9hJl!5(mf17oc^DSwFPl7$jib{JGnR`@8z~x!#lHkDd3>x_DLA z`JU)dUZ1erNYw#3<4ao>BYe+fb-HC_fJ3|hGbm44xw+4D?wi;y_RuJ}Z{TGpYll}Z z*Tizd!oM)hv5nNvMb=c5-jv$9ez|*hY8Wgutz9B+EncWnui%Oe|1(ok(wPwc)~N&g z)toCD_|*lEN?k*rV-~?wlj~sS217LtkhfYaPd>4+NQPj|^3wM7nk<-LYY=kRk$i+` zWk7zBTxV+k!JKlXS3@j@3ifX}U2-UXn9s2*4X(wu)KJJLb3PovJBo*TMwq`k{{!z| z7?Ouo@!&x$63Dw_iavR~6rk4XIQN#R(RnVw6I1<#5aY_gfsHl|pQ>aCdp@-9LEfp8 z_V)H&-)`Q#3E+0c{gTbEFTEU=?(NeGZW**XF+s8fHBaD?+A;ViC<6XkWcn&_Ic=Ib z{dT|EH}WmjTicKVTUI4WnUey!tp^@Cf^rT@gq{x;N|dmlDL4^64Msf=(x_uj8aP)P z#2d0vLGTq}MM3xM7pna^O*=IlqyCQ>GJ~oH+;n8+!Fyi!Vcd5^a1Z2N@-kGL5lc&< z@bUZg^(9leGkuB03G9RqMQ&fS2a31|&NlOW@a5v6o-ba^x-ht5T24K|bHZ7vAAaz% zPnCu~9e=TQ{&M>qXC)@?JuiKM({keIedw-{Irpc4=-^hX1UGpZZffgZdeS=@(@W`| zgDY4F;@HBn%jxT_!%FXEMlPpoTi07h&R36gj8s#q(Y_{xsDh&At(J}=RXcw-zc$ zGuz8Ec;_R(nXwSGCpo_|Apdj21URbPP%y-bKf2}OpuP^peYA{WD15}`3(YsYKC`1) z1z>2RZ1~;6L_4)DKzi&Bab_-dev1`DW~561Oh z$+_N!iY8@a^t}qAjI8-^&-F8XFJK4O&{vTQ-+$oBUD(@VXFUqm!H&KfPGOZ>8&?Eb znH~mfxZDF@HWM8$)f7|kojd0GuwVKW2Mk2hnlZ-Vy~gb6w-wlm?J9(D_%KX>vJ=if zjh}wEkVdSP=KkDZU4jnGAwq|yd_96m-1LnYsx5ON8fAIBwId10Fn1t&@ zosSo7wN^~7wj%sfkM$o83mRB_1Z^`AUbJXeI+I5aD7Eb-i750 z4HFNO0d@GQg!+F8o`&sO%-r1E1}w%q=v)sY6^fj!X2q#sGAA4IN&$wc)kIr*L|6RV zF=ijeJO)D^LWsQ| zXW3-;#%~x%c*Gx+obA@}@>7HZYewZL34|z;EE4c*p-ABsjLtVQ%CX%G`W$nHmGOzc zU)KsBu+plo9~#?RJH{mOd_D>6q)ju(T?Yt_Wy&v5Tx_p7ntPiu1qU+(b19b3-8%dE z7{RziC1yh(iAB*lbup~`*{2)VK^C&A^?ZHsYH`b3q?S=$7;e@!sIfy(hm^pD zhKKAite=QqKbNp%i{4UCtg(OuFoC}SF|GKUy-wy-*&8D?^H5& zJP9uCS!P7(wc^I`?`C4+MnMt(+_^U8KVPM0U=WF2>-CC*cDGmF zJL-eQl=2EUIKtdqG57YnIEE&NU1@BM9qO0$rCx|Q#Z997SXw|;_|vkSTk{Rs!~6sI z-x}6takr00AETk^cuqB1W>YVB#$Rq>4j%5t5?8Fb z_`rYDtVpNb!6z<`PXcjW3`Du^QU*xYfN`rHuypJni1covx36!|$i+`Jib&HgCeA8$%XA0kSG^#d5$$g&NE2!+353P< zgKwc6AxFkXmawokx)m?GBa0cCc~F2CC?ayox3{c$Z@bRahqty&97d) zT7Be0r?Z;n$}w7?q#3MIf)C=nc-#g|RR4nIqcK8MLKV3>Al@%G+XnRe z7wEQrJKWbl0Mb>g5>WGEEhah@yN$XLVnsl%+m_afE>5&w5SoXKp7(M1WGxmZ69$Z* zA1sEi!~vo^dOVz<{f=yk(^06qvS>Ni?u{%0s(}Z%++GQKRnItX&J<8iR8xKOvj$1-sIA>`4Np{vNMezN;3#&~*FiFfAI``QmvanR1O>DP1M}-vy(Dx@H{$Wy`5yO?I0Y zM<(puzyG3nb^ckWm2khXHDw*`Z$fpqMYM`=(YCt`8r%=lzE~fzC)XbZaaEk{GPV8H zd@h2Q+UUqKHo{UY7Ei-`>m5P}#)Sd|JqieoWgVzJD%fiEu}S1_>f-s)>hiG^OkTB> z6SC2QQY%i(lk(wp#14pX`PHuNI9m-n7rQp}K^X0CWvwTd?gbRB`Q=>+4j5w*0UPfY zTF0X&Q*Yc7hhkeq|4TRtsssg0I%E+frPZA3DG(+#R~zZVE#EmgYTMkakR79TSL5Hb zNeLal3A6#l_0+TsSG7%CR_a^)Caa%)wX%B+3tS&pJ%!ez8ak!W8x9|OFfQHZocy70 zue(DjLrk5%kY;ew2a)w;f{9v6^baKDPc^W?D&RJDi2Xj0SwXfYj$~7##ec7%;sQA}|GTKKy;epHl$i><#V2>vWFjbCc9*jS7lo{&Vix z#UED@xqdX7SW7VUI6u?>B8g~1hJ76(i>9zh-r@rj9lZ~FC}m?~W5tw9@(aOKn+!!5 z%zPzgv8Hw@Dm7tlkfv1@gZ9QJS~@|N$-NaXMP0V0wp2XxYi`>JL!F|EN-)CgJG6@X zlatI=5xk$wdTy?hk3&4mHM%A+fusI**I8J|SHnWbVEnbud<2(GqzBUbx*?`S#yquQ@)hS)%{@d+^ z-Zs}`4lb2wR&JQO`=1?t2p2C<^NiW;ME)kNCg?m3Mgrx^xiFrry3kKL4_2g0!qHT@URNiflC|`0aNBUz_c<&wqW8r)Cz- zE0Xg80Y=5%J_BO?mpPAvzjycNwW7m80ZL$C61cf;{C@V5L?R_6rJLZhz5_a0P?w%9 z=?+b7CrI_ePODg0PI+qATE?!`4@&}zMp)-Tb(9n!hDeDz022mlLlyq#p=O>8f6yo& z2Obv7$lY{huzEEoCugEXSaI!(7kQ^*z4pt?E1^0+Z+chtRTExaU$As z^r*m98=gtwM>%ATMx2i{cMxj+baxwp*75)U9=s1w z>-V1^YRUSX?fcSwEo#R=5Oe>Koy}MmwJEFpKpk1PVP_pATf~m{;30QY=D%-Ykq^%* zSK!CiNjj#gXhd+x?tQZ0h9H(goJA{nt>~bR1U84<-ryX3(e%;3JiZc%UZe4B)s!328sRV ziS?lYbW{hC8kr2K5A#Yx zzV~UHzKJ1s+6NlX)M74n_P*-XYy2@Q+zgY-47c7pr1Zy2P=bf2>DM!ugI2?uDZ4o4 z|KL57m*2U?7OQU>!N7dzGq_m~DzSehgob zS3*HWWmkjz$rzRt%iYLC88q88To~9Xbfz0M(wGKJh_ za8Yv+LG(6W&WqvR+L>FRI!qM0K6>$L5v+LjpV4l*BJ(}rVBx%Rp11dUACM|a5VcNN zZU;FFJRc!fE_~&KR9shPQ!A4xHP|B|V84@|;;_~fO56|xi7x%UE?opmcwBQ&dmq{T zRiy*P+7~R)v27TdW2D-<^+SrXy0&$CqEAFgMMboWd(E0Kw*rA0D-AE6eJrC+r(4q+ zWymtKT#V@!ZxbrsU$l-I4Q_yZ*ITi9=wspI^Q@-Xak_!WT}{}k2hH}F(!$v;h^HMX z4zRhDyz}fx{JBE=FV`Lm3H!)yW$0OUpw+ZVW+dSx7`^B1-j>a7L8GEMuSh7=)ejDG z*Z3JIc{0SB(0tLv9OiA!i@4b!N2l)t6}>8;ZM#!vaeHq^oGFy3cbLK+0b?9)h1xM7 z2g-n@`L}JW`Z?sce>_t1o|H?P>Yc662Ob9p2Y-P>Yq6c=jke6{dMxVT%R71~+L?AO z>XdDTUWubXzdw&jN-W&r|NV9|R-uKu0vdNq*A@L&7g|)>wzZL}hyB{f2|XXou^`30 zX7L9pZ&|~#)$dMjx4XBr=L*%-q2t`{PY!*2ve1OLUz5cogzRtIq2|;bi;~S%bK8fI z$8x!3cb2EK9{X(YDqPV6RHQ6oXGIU`4$B~V)SsFHq8(861|P%(lv*1#P|6=?z}+tU zMpd!?O$&e&3Ne8xH#Z#QvS`V9{FqIsxDxEnXKcomeUynu-d>>pR5l0@<8zzzkOf@Y z=MXE|&2e~<`W``(0+@2IMXPZ%Q8>(L!G{9qPdi|!3~WF@5`gjZD$2AfPrEOPWIc8% zUuf->+3F%hhy&d330+z9nX8a^H9kG%Xx@A~sej!>d@kp;i~69DFD1qVQ&u7GkX3%2 zZaFk`r*rJko|h@J1aGR3n62FP>)TDZBv$X*@Jrue(Cg=G!CZ~8b?exa z^z4+%B(4&IZfx*#&EF!nV8Pyh5$J_YW(s)Vu4(#h>!^h>;MhW`a)qou7Y%65K)hj3 zkigvQU{WCdnn7f5Z02V~S7q?6z0r2 zXsh`6_*_%Z&GxQy2|lC1LQVRdH~Rgja%nyMUPV%5V-W5 z-euxmOc_A<6c7qC1Rj}j@<~g#D*9C@T0)Xn@SY=6IZykt%gUx~8PA713miGogN^?z z4%IfVu<1J$buVoouP<%*8f(--;jO(Y2g!bada21W3fDN`4Sg?*vIT7}oh21zRUVA~ z$|_EV(-{Gpf5)GT3tFBtWXY|+NUmOP;Xs{Mr0Y4hQZM;cJ_+n|MKRVoKc8^u9pn~ogUp6r) z{sF6+wQ>ljUmIgU?wxt=pK|k(m{W<+T%8In#Bfg$&Lr`WOBSo2Mc>PsdihpXUf$WW zeYhk#2|v-7mw?JC2u{Pw)U#)?mSyeKUBaHUZWfpb6T1H*U!cLN$J4&)aAnAq4WS~( z?*96<<5877o@w>*T8dyr*hrp*oxyhGxtH^t8nhgGvgs?FzkVp)AN`SR zW7<{oXwC}_b#6EHrcIkNu+XSxS2$Ce?jH!K|S@v0%UbRPA71`g9koML>nu_dMI2P$0+>zSm+9Z61CXAT(-P>Ck)ho0o7Ku z76Y%5xj<@ZZN)8ksO;p74fzD+p#`{RSZXX~SiOKl(QTrlu+>A6QxiVo0j!(uVOGY1 z>pIUJ8pj6~LdD6)2JQnV)=1HPd^|j@CKunVJhZdcHR>+zr(wHQbIJm_7d?~Pxr-EH z=XBbp#n`*2Ms8x|iof83H(E}@iYMy$h})w;VwKR~PdzoDG{n$%=Q#vvcNahyyj{f6 zRVvr8{;B;J}GXZrRIMKisQKtE-RPYg6m8yF57=lE2nr8UbUr24`8Q?Bm?^@43 zd0KyEO3c@Yg(AL5I^ULGLb}fm^1E2y!8J-l;VZvv*-KL14r{}do!>CLVt??i50 zvfDJ(bXUziBTqXck!C0tr(M;1BM98xF6y0S3~jMvz0xEZ#6Fhe_mQP0Ln46WYnk`&@C$TKI_BJytjq zXR`bC(0c%TO>4IsUj;g>Bj)oJUlw4Kc?~^JHuXef4@~TWVVG@*SWg7axdWSr zccs#00Y_i|(D3@%T?`Z%IHum~(xtT4l!9;t->rj$IZzWanE0#7DqW)AD7a_IvbDyR z_gT9~9pVcK8P0R;3FA~F0(KlKss5JUUZu_jONE6Gf{zqRi*+r>HLWZ1CQlSUpQA#D zPBPrSeBcJhO~9UE38!9f9(jK9?e0I%kQ)nFUKq(vXXt`b&?~YmS!NmQ*oKw=(Tj%C z7`gZI6EhdJW)!(4aM|LY&}-n1Ir^cOWfJnom#az#^fyJL_l{-EvSbduQ3W;wdV9O` zYv!AP-E5Usq3|WXjeTql9fgkL;gD*p0LoSI3PA>fJ%gI>wQKedDf#{*!;OetTPBL` zx6!<#L;HJW1?Ow93;2j)tcI6ZWD*?vVJj*z6GSGBTziuTUX}lS1Jeu!RhnGW%S-3o zPuo|Kg$8fQii%Sq!iM^=8W{|gaP&DU^REma5}=T^KIdDhPL%FV0i) z5#pd;?N5f8&O-X2yBJ%9lE4_9MMC^Cj$Ma9hg}uOKe;ZK0-E0s)Z#NV;NUv|!sQ{H zD;K^n?{g$dHFcWU+pZ>-*PDn5@AqybP8IAQjN-gIP?5EH0)568^hyr!bpd^$8dLV% z-h_zX+KmR>iY-J{kCm|4qO1>kSIo;%OO4-9Gew4*zxJ41B00*F`Yo*vc7iKfDI0g} zsIxdml;r;dLCpM598uiVMxzJSpUHZ%P#~<`Py4*N9=w(y^p5ZgY~_h~c-ija_BtZc zYU&PX^iVpE>eU{F!I3lCt%EOBwm7mJr%K%%f|mHSL@MLadA^;u_fA^SX4gZNC+g$| z{eCIRn4b4B27~XKO9#R~q?HZ;SqdS}mWfP5{*u%9%_PwXT30 zH`oU5{hwzBP>y?)x{FXIBSoMVt*oz~-$?ORsy?~&W0vYiAFV2*Tg|k%n=G|7cx-nl zk>32vT^y~5+pot~$2cdXKH*a9ZvxTN;zi82%)3tI)S|PdRy-rLq!L>Hy;O!+V32m; zBUM3I%O9+*c?XEh@9TY7sg)UAM>yej@8MlYaBVdm*cC(3gfAa4f>t`D!VFnN!PC=hv z&HSF842I5IErY5SKoT;r|3U&pk0%Mm6)3Pbp`&<4Yzl<4vi0x7p3GEW23uegG1}rz z0nualB)T&EXg>yklcPasy(A29jh~pH8Va)(D>XcZJZqY7l1w>qM`S+x{(Tqiay}nE zXcC_%|LFQyF_D{=-7>EpSg8;ye{ap3PRgc7#N!6Gc;QaX2*USnIG$ZqwDGR2UZf!^&mw_-VD2ymj7p$pz9BGuqF5+PfuKjV-!@xx_Jy|OCoLA2vzWJ0+{(5jZYD}`~6D? zO?7U?qTOO&FvX|yr0ozp7d}IiNnlo zJ&M`kda>0@=EC!f{XF@vI9i|gfDgUv92=c?I!#DMbOHQV{##E2a}Dwrju(%@{CrhPgYQKHj^n-Htel$fx|{6Z}lfBgCR z<)IBgE+kyPMXN>RO%g6mJRYP(HRJhqj7lx8>ReIt6&tmq7;!{0 zeT(oeWE`C`=hin&hTMBb6FPf@WL@dNn$T@KH|^CSa9dyuMo1cId0&&fTVDN8u%Cpo z7bb(7Y@!Ol@sm`gbBKR}QIy`q_>joN&=o+%`Sx_y3y;O_(;|>9b?N_h%NBqg$ z=K+P3V)UQ%w>Z%8kRvo2P1jy@7P5_HZ8>%FBuAm>!6-?7l;vBqs#-5hj1BaCYnYox z!|XgouV&YQ@NY&l1McBx%Vtl)ZDx2!b@tJG*%Sfr<}l9-nZn;cR5~Wu{#N4cVMS9o4rp+R{-cd@!`vTa2CVw!1u1@n?|UE1o$k7 ztJBXUrDMmD5a+ic1gyGrZ+Tp)Epq6I48lS_;iAoEF*nF6ky=#ozRWW}< zyz{9iY(JvEolv(I0PB> z08h)>R*TYBh1fGZNTpW@{}8-lVi*QmtChYsdR=~NLE+0@(jny|F&{lho=D3t?@2pr z!2aX6SFF@;bCVQILBb?!I>#{gSDKS;-(|e5#)!h1ZK|x#f8&t^RnrU)K-m6!tiFgW z$l7e>+hLnWEI-4-(ZhWF9|=RdEYAb#{JiAM!G={yF}Y{Zwu>8qFJD|wRC@q0BvWWw>W1iNhjyN6I~|^5GnsU>8q8)5k~d>_HuTF)2cbS0`%*cwAY`Q3-%iAN zxU0EhPqix}F`_hW259{jx1%+!NZmePrA2H`Urx1$-h4E{FK#pv)(N3|D7$14NS2;rZxP9KUI^{KpiL`x?ml$pDxS;0$ZJ&VjH5jF z+*xP(hZ_EMkGJS&mYBxt8?5Ua&E9(axbMPEsHYWsD3#xOe>D6EvTB^H5491u=xWKb zhl$Bu1r~$sKDaA0jyaQot8}w%qTnW1Wg4ZwMk(8!pXpl&nS#lG^q3I0>RA$j8!Oqu z(5T}Odu+a>U(id>pNa-r12r2gf35feckKJ_`K#1>P~KQRkvpUis^4x5hp6JGm4zv> z@r;7#N?#LuuGXJPJEf)lF~jvOLr6>&D#SrndD_1adc~@~D82i$zDn#{ju>;X5xaza z8?HZ`IB*;kvREz0?fdTC-i)Tb;%V$?Mbc{i23oj(uOo+8?MU`25N7os9lZBz0o*+y z@@=l_krz?LMuy$}(u?M6)p2lNY^Hne2gCsgLMr}p_6^4g=A6O2zD^9_#Jr{<$qhvv zvG!yA$qnIjg8{p2+r2?_7aESQPt0lxk&4l3&T`McPX?3n!IM~XDh!NV+(>_$>Y42e zHpoWQuqsRFU3>eiKxGv3U&4-03w`9Cb8U%DHpg^vN(wORxezE~lLt|?1R9oQMsV8l z?>k6CJxDl)X{!h1jAWDR&Eq*Jb}=HYXZ?xroj|LgaMf%D`k;`tap88!^5hVq$KdeG z{@D!o=sanN+>dO5CdhR~+X^Bu>%^|b?M?}$pC)*G+H5}z1UWT#%3jpYX#${OnlTBO zoUlBgIgaOeFpQ+3gjMhy>Mm%W6R6oIie5q2viPxTF(Lorm-sAVAo`~t=+TuztM>1CNIfA10V!H{_NNq2&{vATH!H9_nSr zkF-6|4ryia*vqlQ;Aub&;A>r%FzyBj;@V~rIQ|H8hV_s4tY=syyd`{E8v+>y z7n)zWON)DNws85GT|&H-)ul%!xjwiW0~V@>xO68>o}Zk*u8*kmg3G`@T90)}TbY|- zW@o0Vn5^?ve#tsBQbf7T)tufGZ-K?rAdmilpP{J$Z?;vvI+m#15n_W;n-?S5R^EK= z3(;+P!iMcnl&bK7nu?+De&PaRQJWO<(nxHZOg`Tjtk2h!{=RV%=1AL5yr3aom}Klh zHc)uhuBsPtfJxWCb4OrlPdD}C=c6DL+=f-KV3Fvl1+0lDlXy>W1kW%gE0IIn0sPFW zP=U<8>#{{Gcx>sa4qY6hA~~w5MNi;Mc>l-Yy2{i5c5zGN(>{Ma)c-KU;p}k%CiDrP z43u2I*K=HO;sE+GTDFzA&f_RTCU%q&|9(h8V-hr=(*jH@R`8iYHJ17jSO9j)NP9>d7zi$y)h|I#2_iFoeKMMqM) zb{g@(Gtn{lh(`^3BoX0xz2TT88yxxpFy|4#g|+|X zx^^Ct8lokW%Eo8sp1qePlXDC{ex0>dn2)Qoj~Gds+M`50M;A@}Pdb4ZC9E;eiUY{- zkFDvy^9lLW=B@BcS5j5Y)GO3xiNeGl#&A3adXZ@noz4&T&w(pE#sr__A?E01ccqU) zRn+eorBCrfv!juux#<^dz2pTig$f<5gEiW>LhnKS5y*ogBnL5Q^u$!DjeBc}`v<;p zSR!3{QoZCjw`)69fLU6-WL5^LMLmqB4R8|!CgT^+K0Q-Ol=t8VS8zTeE{r~ZhWXVd z7f$QK8p1Ti?*9o_aVdx&5fkj-v%h-%+RZxh zP~TMy1*Pt%%=L5K)cTK(1F+g|R?a~dT@5eZ&$oHA@*rj02v(y}o$o>qwt0;k>S5iY z=l9pEiYw@*893k&_qn6v3u5t(#eFZMkPto(r(ZohFol(%!==7e*S?dzTrJ>j$@Jb+ zpN}DCK3vl7B@p#TH_;Kyr29}HWiKBkz zi7H()Vq}nEK%Kd$O|8T`yD0;%GU#L0sX@gA1DrpH6BKpvu~^D+6=(~7mZzH za&xFe>VY#h78>~iLtUlA&(2Z!`S=tevxdirETJiMn304c&p0yCL3oey>r~3!0Or^a zzuy_r)rS3}5q&QDt%fX=P0GAMcEj4it)fOm3n{2GviXw7_tFjb6rp6~;1a{akC#Tt z{q?Dn(+&BI8#le}AL9E#bU9L;|S(A&YN1nT6*@)xsHirqnduRy?2WyuWyCoX)_3a|+y>uy9e|u`@8xY5KjqkiQE)SKBE15C}tWV{O z_6`adl~ZI)a_rbGeXH~S6%86{30ATjmaNTj>-7m-hv@k*NO>;L;X8a43iRZ=6J_pF*BAfIE=<0J%{~!pIz`p57!8<-o0D0WgywzP~SKQ-`4Z{@J75_5JX%QKju-M*4co%3{yb|xmS_j~qE z&;!bN1ki}4hV#uurS=dVqsJf>=jrD|YCZ7y4c9x(n*|sysE2s1dqfs?Z4YV<87aiD z&&=h+Naa4CbJLR_&$3s4W*o3>=j8iHJJvl{{$(&%cDG;=T>hV*m{DUSl}EL(vx2An zfUHzKSvrU!{n1#srt6#lZISX=(UfW+&A!<> zJD1LeGOAtkS>`{bx)l}cR-2! z6@9MkWFc&w;YX!Xj*AOW8K|gyE*jq8Z;q;h zXK6>qPXN|UI|WvjG?o^|esn;ofA)cXff+JWgPegZ4{9HeWtg9dMW%rdV+fYIe9cw0l1(R?!47pNK z*3fU4OISf{E7r%Ta@)aJWIt-0w_<-V$I=Jdor+~8c2Xk$-1zTt_(YCP!QD)f*Nl&~ zXNG+#{nH!i>wRTrsZp(MkihQB<` z8_38qk3HWTqMiGX_%K#%1fTEJejcV2f)gv-8B{ZvNBrCRs_ttHq3K`_A6$3dccHz; z9q>Mb*X3sR>e(Xt=ikpQ3xgoI^K#LhZKqD7WLl$^jfE}Pm}vUovxE96m?e%uca$4m zHB|!GsXNoHyyCJfa`0))?bAewMv!PoQ-N3~Y&O`PSoV+2@`F{2JAgDq{5ea6VR{Ci zMToWnGK8|j>7-m_Zq?G-BHc^Dm6os!4xT-sS8084LmI)l?Ogj7l3a7xks59J_vW^R zSZ=qT>_Ie3S^0MABmdE7XDI{Ni*dE?i%1NPqd&ov?nXRl#NSP`m~0kS<1ibV-2v5BQ#|9l1WCCjF@ zNy!p6MW*GFK_F`+%z1$`#)WReLoSv#Y^o^PUrOlapJVl3=s@ho5K4PAb#qxlO*5Z(9?TNip@$jWcg?^>H6`HA3=;)quw=<^fsJG zII*>H2eVxCf`D<64-H#Go>OvsLPDM?+>D0(T34{RPN)j0;=^B|4>FzoG;`&)&wiE$ z@Ffx7-b49fmeg~L3wztIMq%-i?~YcE_g6Z{IKJC$pFL?SR{TUacp9Zuf-#po5EXJJ zmoZp_4+R(mtKNHlwTJF>Q)cPI@O0XL?j8oH{2l<0DRvU5hx5}Vj4lOOns%b`Id4lxtn~kUH#0$rrwOZ6bDanD>$gH_M|Ou_9sAa^ zM;%E&Ab9EPtt+rHj+U6ny8Y;Uj3|}iWcT}+y6GIyuR%vVyT}fUdIM}+I0;6&tj1~@ zDJ67%A)j~6{<_%pTjB5H7w25Dq5zgo>ik`bZve$bB~>UVjQy)6g5r8_+!eWVT+~S) zra=wLQzd@XI9UH`+ii@teiYJ~hIS`8G97ZI(kfN#Z%y{@PImXiVUAQD(&yQ`a7Or_364&##hugHHZyPOto7JZsDKW;$h1WL93@}u33^QVAkoQ707czE=R^RGqU7~ydYbdt z;v&78f989$-x$4wSJ`&_2D%<8t-J-4i$|N*vEvh2Z?r5O{Xrc71YJ(&S8u@QcvafV zH2YBlX^lL;%TEH95iLK${{>ZKGyHTd(GxJ{QVyvfy5vl$o(vPS2r`7AHcfy`To`43 z9^a_ua9WsdH&EI!kh6023&Fk`z)c=&yuaBebhFmxRSI&!RV#OS{(KbtEp7AAL>{K2 z`M~3%&h7mDnkXbihE{_OY_Zhl+&0S(8@pq2*;sZGK_&t9(sG6mSN>qYqP)D&EqZ67264uj#JuQtY)iKZITH*1TD8PO2?jBpDP{P;yBxa z$_n@(5bJ?|u{de|-XFOX4KD{>_@+|dWl38M@t8Gf!K8~0$6UY=qZu`r!TW<)L}!!p z>9Vbpid5rDvI>pt9Y%?L=OL}uPt5rr4{sHf1_`x`Z+G(7?9B&zr{sAE6+Z$q00BBJ z_ep@@LI=5~18lN-6o!&V5)Z|kf2epZsC85;9hLrtzwROPXDD}LbZZN&r*BnV_)&o9 zQB1kV^WKZ~yw)eiWBGdjH1b{H4@1UQa(*6WQ%@|O%+9aa9F@R<2ha6(^E zmr84#I1UT)sxm%@J!R0NVbhay_bzZ3HQ^9$vM7_%JRH~=HJyYdHM@pfOlOA6Ona!4 zUi?9(lJI?v%$s>#IB#QnI}XV~D~KhEI$n5rGdG8{-{lf1_;#MGZmfNe$-|0}@0UCZ zeJk6@K%3k1n~&9I{dRyk=ej3Rb=zK8Uo$cHH<#Tyy;Vdok@ut>yOru`%mStr5 zlnmML?QP9BNu|F!nwGlFu6T{vA*wx%A364x-@}@$m|g#pMR<2Mk8OO|D(c9Ri)6Zp zm+6pf$X#L@gWzl@^IOcS&hOF+s@h#M$pwF$+}jQU)UaMW1%^p0QeD?BWz+Nb=^WE7 zl=NFRbD(e1WQyJmYJw@*@uXLGxi+u+23r`~l&c&<*KzqGoL?ygpeASpTGGDu2G>v9 z^lkb&n;f2@49_C#GsW*T4Sy&^7GA$5$R^J!HpW{Tyx|8r`)} zaMr}qpZks?BaH3Y#kKl}Vp_AR1@rr?phN z=cU?y9do4t$+vDb_YW}EZzbq8NOt~X-%iGYPkrk1_N_A^3q{7E7;lgpC6xw}ZVd=x zTRK&K`}w6O)%Vge-l7{=BkeKf7-T3d$LLgDU47E#cj@kEFijg#K^f8z>qBwu9cdIV z(h)PSEFy%6GRHFMh?zaaAi$dp_m@4ec+-e3)tIlK&+FkO*|`B{)297W2m6N2CRBX? z<0J1aA+J)OqSp~y0+X93r|zBoC_ufmzcs%eD|giu!yn=W{x-HzC0s$lQ2@7Yw?jB%3eN?J|6c9@)J zVZA_j($vrEx~XkxoxBwnJ+*9~eN9S^y$GgQ;~ZwlZ?P-Nef|iONDB)zd!7D;H*JUgm?xF$XVy zakzpA+;9nnzYDyZGl@a!W1?{su?OfE=6qar4+RDGmbHw}HLh=>T=(d49B@sHVgwJ2 z$k-LH?m18-cN`p~+u`9~w^v=*kYqcoy8dC!e)2?bDFf_tcHDz()2X@SSu%$ zL*8fR=!$4vZ^ms%e4lfpUepg!ddcYn6|%%1?c1)|AaV5=m6z!sWO7k8+3WW*>HccO zg7l7q3z&9(<&WsVy*)z=tUvGUIVUq-w(miQ-!vRqrOwdO>|?5YT10k4M#a?b*Vo$r zpZY8?ky<$|2ex7cHGK__@3+E9z*ll0x*MsuQj=r08uva%#qXpJTm)RQ>(RkYf?7$& zm|E}f5-!E%R;A~L9)@j;ZlHx~6K4kaDrt6O*c}6KpY=$G*;Z2mm%tgaLH;{tz4`!D zqLO|ml@DvK0cE(d(o?8BSA>uL7H(bxxHYYdCebqUzbfrqpQg zYqTGzb9Uz*AgBTDdreP9-w1MWeD1KhLfSTfDyB@V7*&-AKNM}C2?%4GeBa{G{i4r&22j@3}YHXJkcjd18PbHo}c50LWqWt$CY$)jK z0~VFh|1}}PW;^Bgr9YgoU&%JSlKA2bSRW3j)@II(Pnc+Z4sd&Y7%6KO1!!_29gNqN z3UZ+fCF}^T9>$s}B=n!TB^pdj|Kf5#sEQd->sjxK zWzUC8#WJ0pnF~@H6uV{g#C~vx*Mwtz4(hYpBT775!L#Sq^&aZq4HDdtmhDR8Rid?9n@=516kZeC2&5T_3Dtk{o)6s3#H9HhSjJgk0yjKg0Lx64cnAIh^|v zqH`M4`m|F5s(0E?KOYnsk-E7#{kym1iH}CA7|}5+9>?N}@(TJ2VwX&|T+@rGBrL>E z8j)zjUzt+(ToT)@;Y@ncCcC8FjIDLOQ^1S-K;J=;l3TJofhcBtF8*|&DWDnID!20@ z`!FOEPlD;M%Vv+{AU0mm?h$?y6A1U~=E?W4?=X))@TG52`AYi54N z(@3jnsH@ea#ji_0_yP-jf7>c&`n)C9S*n$7S!5&3iMDgUeq8qP~x4n&tbSJRqy20Fr?{ zn{52EOsNj}Rfa32E*SI8pDpjf^e{b}Ab(`QnnR=p}U30TIN=k zuIlY8X8Wih{dUOe>xdjgr-DwPk+D`HMg^tW>&7C9wxu{_=o{mPj?$Ky&{DBw1y!qmxPwDl0 z%j9ws>Gdq6nAhdfjxdp61s{DMtnYh060&fpKI^q(w2?{dH^eW&*^A%l3pG}#|1x~v zFcZqw34H^jBX2P3=UO?~?nEjNm_^zt#9di^`%gwvXDg_T5qr)RCI>)PppUNRW%W+~ zi#oDW%Mz)xTuht?x*jfx?j8S)b9)L5*zb+GY{H35|Me9mnKgRcpMdkEqVFcyMl8X!{m~(F-D&{=|y*tMfxXcG5#b$tVhGt18 z42c`PnOmMPXbm3L@BseW5pE8yN!sSN&3<;h@uA^^BJK)6RlQ^suUmQ3uzP|_H2}%I z{d-G*pw95BH}yORDk@e+$kf|`dGEk=O@o8~dE07w8BXbo!ayo5#;MK$g-B|ethJBbWC4 zx$|R7NM+h8AK8s0cgMbdOy^41Lv=~p){R(tt13yK=8h~l6OzIv)AO94+cRj~>-qo3 z)pvkn-M0Vdj-o|`B$AAxVWhI}NGtJki>1ko$U@w%iOc>&q?tIwpSq&)U!|33UT__ z{Ty>Mf21(n_1=rRk<`EYbT6ithL9Ym&pUmDVm3*F?&Z<7KbH1^?N$F%!IpaOs?b}% z%3LbnG>J4%XJQk|T_6E*!DmdB8(X;Y(sKMc3=a8oiY4C-bb?ve5uQxkD}S5kDb#l- zF%u*f>sz!VebmV_6(gE<#4}t_J24pmkwNt9Qd^rFX9@I z!6}Q+Cx@#i-ngnHVNj*t#ux^LX}7>1Z>tt=8ex(`PK-=#yZm`^NIuQdvpBBz-isEU ze$DYE*213TCH&8Vn4(O-*V$vWKU!fh+!CMUAuxWw>%~i!`_9MG@9f|gFKt}016jwX zKcBd!!|uvD>SbVg^im^tJvNwoTMUj-LFVM+!*=5Q^dFU|MOvTyZl+6s6I9{&gTDu# z$_IL%gMkiH$x7i%Hsc(AMl%hV`xu4vayOf6e;R}&x4VAcbWp-s;sr>g2(`Ah1CUx^ zGS(GRP^T!mjo0fwMD17hie1+}>JMfme){PJj`OaCJ=fPLTIcJ!fc9w^J^4CVH8FD0 z$9{f^#zdy|r$}`l#@d$E(bHANc5c{1ex!K5(^Ce{DV`jTP-K8@PcgxnXNKzQT609- zAFINj*E>N!7IE zPs0)gm?XDsGN|r3I&AgeptiOpXqx!cC_Kw$WCB9fw+67WnH^qKzA&QQK86dYEO;cP z$SA7*EAh4+{3Lfi_IZPv=7>L-@-u5kw%_Zf^wJ!chB_!E zU8E`%{r90(FS!m3&L^k+UvbQOJ9=$`YA@i0eyO}rB z%KmwDSyidg7eh8u{}+fZ6A?3cvBVAar9tif?*2hA);Unh=d0_mbly5*osMsm|3jU< z5bBfgSBqttz?c`EfP2%IHQygS&x8Gd!3J zoD)NnoJQrOUi_s1=~p0wNpg@so)RAw>lTIzg~>%>A+EnJ!Z}1p$qU956V~H)a@zs; zwI4v{MyU+l@QqE&QHT~ky5!*i0LqY06}LIbNYh`pHy{(NFt06}5B|z~TyKLm0tGbhScik0o(1TB_SipWu-E$umX zEh+1PMS^K2M-HwGDzNLafb0W2b$U)&F11N5S#kzRZ zj%%u_iqpKB;VX+*e79>JtyJ>J9~_)ctbWo7(Z*pA zz?~)~{;XarIjh^BBTHU7WK#R!K}qEqKpird%)UQ|TfhPdzlK_pb?r@K-p(}FhV!~O zrxNX@$?zm!K@zyz2yv~!?zfs;bA;p4kaTj~=54WQE`N2h!o$p!%BM^QyY{!X-$wu) zq5PEhmZh<%9L4jwIoT}vRgB5}NI3$r3iMCIZpOYzf2;bFYW3vBNa}tH-s;1ucx$@{ zuNVIlBm_3%>K2|DKk0-s6;ya)%ro%i)`+wd6U|JyTWMN8z$syE-AaEL}z zhrov!0|RJHoJAZ&)03tJ(p9>ddUs5sYyR{`=URWS|B}n6i@eD)V1G7aDJZTbx6suj47P4kTs8(>q9P|nJ-1&FOddykLM(cgPTG$jq@1aGr> znXJpb2uY74wy*y)f*Q~+&Xo7eQspz(-IwS8@8ucc6{h|_q0y=|CcQ(^@lB<$tHQB%4;lE?}Kk?0J?;B+E zorkUAVLl+>qqOGO3au>D;W*)ZVL5073D36DEp7v>Jxl2XbAF;Xu533MOpY;hea7{l zp;OpDR4!auFpT=d*5EbWhP8aXc&QDr%;qIN%y&OZ~f zFFoMs8SmE!6TRxwMP%;81c=dsWet;=F4zBdl3=+aD9sf%xRq0cFoy0p6pYKvbTdPY z$#QLEI4OfL;IkyQs1Zw5(lMD~8R14^cXw@BDF0gu3pkmu5=54IpHhdqpvUrA)J7Bx zj|@(A6HrRP$8*Sp1aD!b<$z6^_t?)a+DS<5Ur7)z1Qw`(a$(YY5Yu)lbZ_j;Is`) z%la?`U+BAFLf*I~lX|qm`=jS)9UJm6ab!V3)rozpXl)y_!9-1B{m6H*-+A# zLe!w@k)M0+IqhK@v(EsD0LUx+&lf)R!ABOn$6@AyU%u2vIq2q^5hSs2zk(x#W5`N zlk&p;sq$f7Gqma*kq69Qu!Qkc?sP#O(50RT_0u+b7$@V zk)EsJXr^_aaTM>&Is{-q`2H-AKQZ~KwI#wMIPqG*vkh8|U;$@iLW+nxPmOjdJxR^P zz3MQYU{Q{hxYS~Gl0I>Yv>?>&#i-gwP?krvdh8KeQkvlDgxS|kW`-9VGcEAsb#jz&K!WJQ&ca_*!`oJ1&&^t7hwSu&}ZweK`cWK zc;X(5_N{;GP^DeQIE^YRUD`-ey5(Rdr=NK3Lge?spwnYWp6!W))Rs$l^L36+@Y+Oj zzxwM04BSXbTG{hJ#1KP}$nY7}r>MBJ4NQf|$x?dFGl>nu=E{P%KAhov>K)W!{diOv zt?qo)!Ka=lJ3~=5wjfKjTjpT&y-J0d0n5x+8`AlzLCK&=KO7&6ShyYaw?UxvIr|Fl zkIF=05MJoI7c^xusOfaEJugUu%z+YLvkArmL5==<7P&W|>lTyKI-k`nM*@`GX3 z#>}aR(t1zJ)t=On#r~_M-+nWEDx1l7>+ebX(U9z~%z|5~)$$Q&QD4lg;8LWhl9?)R z4J?GPNIr19>YslA9LPf;Fdv2jCVrn&;6d26#^(Sf7eptP-Z16+f z-A!}*XkZbUtgNaNhHT-gex<@@nxn2@7W^)o3*HOOp0#V(mhUA30IaE2VY+wSe+@8? zKLp^fI=nJ<9#O~R)+m>9r&;SVOj2X5!kmX%`(!r4kwwgYr2dH!0^rT!YeFYzXg=u! z5qt|anR-ae{7XNqn4Ct#osTrf?x_-cEBg4eXc>=J={I|N)_o+0=n)E*6X80zUOsJmhn?n9i%V0esYjn! z;yBv5R7-V`jIzuE%#zqCz5cWp4gu+qoU81jrp+~}xQZ0mg0db|AWdb!LdCBFK;Xq4 znhfU2K zS7PE-vunU5UnxOz7skJ{Wgt^NZi|~J$20ZYCv$ZFO-Z5hGxi?6dd?Y!fZLKh9`8=U zX2h?4O`0!Ihg`_@pG+U!SV1g!gP?`a#v~?bd=K=$d+x-v_9bm34S=MM&>XK;Wxo9P zo|@;?1^=LYUdr|iB9Vp~nrVYqkT$}?x^*lXKDzVwP?DO7hFNzvdajJ%;9&LkhJbBt zGzmvf-rW1fl;uSf99cf6Zd^1YQe50XA2zx$uE_r{*@Qi*G3E7ZU?|KEtIlJ$tFBLj zxnZX2{0|cdCtrs&wPR$Q6EsaIRko62aP0`xB`vtiBTk9wM{t$LJ#Gx8yYqLCTwtpn z)*wX{3IY07Tk%{D=|yz({AA9AKvtjV271zEB>&K^SF19|FfzsUY*RdeQN1aHvLPLs z|G*;wB84w=d=f^a@GK7~uEzENY{Q2Ry6i>0m<%5C9g=PJc+MFFV5vA}W0N#Aeu9N` zRJ~mhXx{+jz;DLn1z88%p2%+Qsf_t4Oz?D>viLS)DQHBv;EEOXU`7TJ)K@vb0Vf56 zSlkf?Q7Jp$OKh<@_c3|jkpPHn!mXFE%-s*ae+0Ua z^#QtqRvdkoISa`ugP>UKoM?9FvUYbU7h|*g6}zL}*OmHF#mM%XUlfWIGO0s}kgH zz7HAU?WZK6Ee*ReHFZ^XDEAqu2Uf=!ULCgpmRWq)Wiv7lOMQwF#WCdWGwzSI*X+A| z-Ek97|9=v2f-Z1ZzF6~yo+_c<|MOz zqA{VFF9t60MM1ClbSbsWAI|-Jt->4cs;RcAEXqyH!%cY3M6fORPMB4wRph z=YN{vM$bZBxWm4vD`;ObYCk%j;Etn@PLz4Rw5391)q5Pu|7;9TxLJ^t_n`PvYEll! zaY;c2*B2-MGc?5ufAfuMzP6w8^LvltAWX1!*GzEKyhBxxc>OvZ*-L#C{fLmLk*FUK zHa&F0#E)i-pc>}1fCqA-lx=@*K;JJxd)aUv(W>KA)<-z!LnS{}14J?V26=MC-Tis) zh626(vmZDS*zPT_`E5-huP| z(tl?%zrELLHnIB9BLemumDB0+_+K9SI3$!&p$#F2$@-{Sp=B4wTKTvW%`_2nDBGKl zMPBlR3VWnPH)IIU?Au0H+ggq7P0&PMI7MM3`|%ydls2dnpAHc-vl;uSLy*aOn0hsJ zOaw8B?WcfB){sh2#uVVzJ9v(YdQj=qautM_3x^YPq~FkVQc?{n2h9`5yM3tTjANf0 zs#G_A@t3TUtL-TX3FX>4|F1>`obk-ucFrJVvKHwWUSd?DNC?7E?>+P+h)WVmwG zWvj_n`|D2t364r}Dc`WHBL4MQ4=})V^mx3rNehuo=qVy^ugnQwd35eE|5?RZMhYO_-Wczfv|yh%4uS<=%@TKaqOVR zeQ!!htCq-w!s$7z>ziw;jkXAdYbVXg@LSA_}2A zFrehQW4T$h$F0t)l7-B?nPgiX*^WGmFnZ^=t zK;-gdy9B;Sj=TYw^pik-LJ`z(eF7x_6#_koyRZ@Er=*k(_D;A{0RP`|&V_|U7NF1* zHAzI_;mGmkQOik7qbJbdwLp<2u~d69H!Cgd?}ETrW1*iD7av}v<0arNB>gv{SY-#D z;26HtnlRqrQ*L%v2cr_vc*h+*+)W(dO1d48qNE|zd4mZHp*ns`ZPf&8dyj?(x;2N}$hgL*cO0rks?k8B|oInH+B z0B$>NCiA_1kmVHFzmva^5alZJao`x2R^hLhkXjiT_Usb3Ygnh#6`)0lN zNlq*NJqA5aqS*&%{jNuBd}b#uAQO*8s0Xw)%d}}oVEjK{zy#H{YTpsQi<;?~N7wc{Z(@@_Qk3%1vuXz{LssEaAkAJCkJku#iyX}@Uxqq6z`S}_WC^2j( z@~qF7VI98z?`dR?52KDZ+ow^hNv0SPzQc37FF7c8AbJoq4PKnGhAe7!lpH|~}A zo-|=NhElIP zG1mc~V&nl!4o*K*T#x8Ed(6IZ2N_y9Luv;`?c#=sBAE~?s|)m9Vt*QoRdlpl&`su? zE`--H?dipZ!guGF4KkfQjFFDm&>VE~E(f${yqVb4LmF#$GwG?hyc-fy`nXsQlE7^z zUa>SNAuBN_CTU8zQ0rs)$R7woDi$ip;vTauW7ERl`h%+7v<(V^f`Xx@I~L&M_-^n5 zn*p&WY&0)aU3E(eSU>FcL$`+rx6bcTaaAVG8}>ZEqEnF$X-wqd#543=~#&h6GNm+-)&uq4Ge0CevYQD1!~o@2i0)ijT#a zlB6_^>s?lL5Pk8e^bev111h}6*?wO)9ooRAJVl*C_p_phADyV4^v*0EhKkF+=Ke<= zT=_S{wtnbVfLDO@U8j%gf4@&ZIpCApf5_tM<=iIrPvDMx_jsXCYJyS>hWZC3GoZXtuKkE9>Jw4aQ^ID!K` z{mOj0*`wLe*EOgRZ`6*J^1JHRRRvD3E;C|gO zkLz`GPjrLyZ0KC_ka@knHd$wb9#eSJ()YSYA(-fU;M_ag0H>k1fl|0(s*>VxCdW2` zX@Rgc6kdwj1(npHlvFiWMNAg8SHk%;04K@BXDRUL+zRfwpF@p@4w&DFb821t=a!i( zFuzcK3|%IDDIOW;x1BX6+4PT+3R8Pth-}`+*8%QIc9@BtpD$)`8H(oNWCa|J(S1KL z>FyY6R$uC{!}85u&`nD>9B3FJy^dqu?hW##0{{LFiN%SF`gX(0cAU(38y{@h{vj7P za_+v@-sG(XG63x*)#e;Mk@dvl(6zp(5;R{b*2@md$_SsJ397NTg5Dc;)>6yohVT9J zO8FR2t40n&N~w85Hb}Q^gyrRf#ZUC&CGSP0r-#|e8Wn@X z_}xVcK*;@z8GHF#;YNtRtg3%EQ1Sc^o9+AE{*-Uj*2U&)NhDKbm3ma{-P@3DJ)iyl zSQx!+iJ`WTH?9r(O)+(9K2~PfR5M`5?!k)+Qu9znUK!Q+m8J2Dh-Ztc2@j z)+^&&FOAH-+L3B2!4o&5))pOd+$7$gKY>CJI6SkO`f^A<27#u(I`Gw%G4Zlj;e}nR zrQ<%GfCj?Y3utQfSaPK#nSup4II8{dXZt9HjBi%}-eG=%Xp`XzM4uD$-j~zjzM7D&#r=sD%2d%W1 zdgR>c&u54oN2!Fi1I`zjVR2W2PsDA2A<2}~ARb8c-YL9Z_o040+!Du019jw~^4E_i z?+lZ(1Z}K_k^Jr>-QYYVI>zOQgB^@onS*tfMZG1u#-^1^6L1m3DjhLX2v=*xR-M`R zBoxJdtNSK?+J$(hu(4%N)&OoOpZ|0U2O^pG9V@ zNEINpTky?mvr#pac#n@tzaTLK-kWW31q;W{0{xxHI~bkHK~mvy@MVGcY5wrEskRLLkbW za}Gs^Rl}PN-^w~veQ+#|LQMm*>rnG-_>B+-j{1m4i2>Io%qH z35DUJ?q3RB3xaY^i1jH#^F2A7gC;G%vhH{X_&&2cdo)%53jRWuzdGfZ5E{n#uc^e| zq(>j%qANgq-b~8gy7>k$%DWu2Sx;{F%M>-`NXSy|>)VON-hKN=6Du8Ia@>GgALmZf zV|LP2rZuGCxPb^$vR0i;B{$=o$1l!s?&qxY>Gr}Wr|l44opqnp2IaTCoGp#F4F>!w zCm>O`Iv0&f^YSevTflZR;W9Ih>72FqSWZxCFWns zNe1m!z*b7j(qzNCZo2nQHu5w*Wk4a=ieyFO&ZoQn$#ZJ?ALsD`5{Pr~Q$01d%f;&914Aph zJD^RrL0L~t_}XK;Q7gk#qjvYWe!ESvq)J&s)@JfEsxAmh;-& z5t_>oJdlzEKt;rRdX>5Xf(M*X0!+y}Kx{FAgq{;J@gyIkM|*ZglaD2ddT7sjk_Y7E z&cuGR^Uq33rVtMW$H)VhWM`szfNs@N|JDA|R4CN@6&^UJ%@}__THDGijbTHZ)Mub8 zMTAiC{q7DPJiDz{k-JKx$hD!qCJ6attKBY|DE&F#sS$JF4s9?KEa^6&(cY?=C=fN< z{Fe~Y_mx*MsfC)ijpL(cBJbk}8X~)DiG&xAsE1lUC9%38S@goH{6$9-b1yl|K`=dm z{%c|Vf`!i$ijnVb4tmpRDH;4baac;KAft|Qg8V^Ie65;gh+X0U1VKq#ObH2vk_+I>uoO}ND3n-}%P!ryCaa41>ON#I0 z(mx!pwqK{(@8P76^;SR%4S63DnN^e0?pkhs`1`HuG zmUSAi(TD?ZdkE8dV}ufB_7y68CABx5X!e47x`oe^J)OjfarCsi{>rZ~o_J@)_^=A2 zQtq$aWs-=Vs9Z*zG>CjP3_6!2oBnG={fM@k& zBwab(SD$ulckKmXsPQxJltU6^$mqJi?+LsEPB5K8q69{n`Pm+-fN;a#$`&k z>G;TxS!F|;c9HUGrn=SWKOMxw)Z7_Qj0f&y=5&|u^}T*ruzP(*l1u58^wP&|<)Av| zo|@f$>S8$}chOx4*T*BU{M|=iF1HNpnqWL$J2#zK2(sPta7JmKtbjbHnHVwBKB1s& zBE};%OCeSxDg!fu5PF)I9p1x?$b2q`(Te~I^--xA8aF?WhdjWKIjl?45}8_k?cBp! zb|$&b9$JpZgS`Es!F9-&8x<&8rA|<9-z{_=n($QH#P7^O(tGC2)gp+~vyhPDk+Pdi z*t#*0;_W=R>sjUV(eWt8m*!cG{E*Sy_YeP(g^%>XJbc^VwP4AVsFJMk%=P?4eNO{1 zY(3D>yrSWSsG&DK!y62G8Xq66;blhyS4bI)cA(@RAh$`w`^V63N`q{9D%|~r_)iX#vL??Nn zP#>}Hy8+!$FZjHi@$TY*=BzgWDtagfo=<3T>~M#o*9kOhelxTwR}2BIdJ5+j!(2T8 z^@?MK9b^?wD42a5ConQJhfG;1bXCT1sDpWt=Q~SYYnYHlowCS0J&3g~=S+Ll{b&L( zq41xbkS8=UhH+e6WrU+#qh735^zqHE)hoEc9sQ{vy$@6O2*OtLlZ%sCwl%#nzd(n%b zKUx4jS%7QyZ{>P~LaB!)M|M5*lm~WnkU!j+sC(uDT|!sYj&e)^L?h-To2Lf$6;j(y zy}g^Jc(>le?1?jb^GRZ$wQR3wA^DczljRfMYVOt#y?rN^-YGV!_&jWLR+v&^WXIj&neye91RVPENG-}FM7`ECrH$Hx(9r)17(ZcSQuRh zYvxArTF-cbHm({XI-cg`TUd<3lSq(LywErK+;*uclJiF`Ft&^01B^KXvT~8pMN`ds^;v@hK{doU_b&U?AFz{r=KWr1a>K7&XY~_~ zF_duhparg-r6HQ&V5NYUXAYLgV_}j;kmS9=R{y7-o6nD$Ls<;xsCz%exj2T^Q@qhE zhx01`WuK86#?W6v=aEN;&=bTr7BJ>25g zWyTmP-ozo`$wMKQ1+aa$_r<}Ha|m@nptr(Q$NYl9>=uKb@8Hzl0YMFH{@5|Kf~3n1 z;D~ludNg|Nmb|VYgRm9M7wj*EC=-x2m&FCNS|o!G#2!m$T*eQp4F0c5Z|>ynA_P(1 z{e3NrsMRnX;q%(0Wx640I1!F>o}_y}(t?)j^opeNdy5SJ$^$&9y%gvTvT?_sh)AqD zL~I=-J0x~Hhlv^ZL=#T$59AN0BmSZA8^L$>3>fA+q@ynizA*o>{c5^RFKRjRnwzR* zaiE?eVHK+V*eE0c;EiJ?$NdPU0_Ux+68c)LYP~;nUzrka#{dR^k|)6!+?U6=5V#sYc}kLLX^sPpH7U6t zuXw(+quMe3mA_^NWe{jd;srPnOJIyCU&r!P%Dw2Kv9T@kt*z=mJMRPl~x`X&vJuk&Xc}yI}Iod7}8I1{lx5bW8!1mcU zasA0~**tBo}9!gwa>aQAVHH54BFjMI5U(1*KdIk zq5_#V8r-b4e5J}}~aFn)53{`eIE!n$bLG9`?K)^4*JCRa#aQH-lE9JOw<^A9eJ;m2GyOl;L5`=BYMr&; z6~tsn7p&8M9_b9-^%UUo$jOD211qX8Hj;RYLRTMak=|omH2XMvTX$NI_8vdfleQXh z_Nu+?zaIyS?^)7g{$LfS0wrT1$7?eZ&MaYbi}${rjCi1wkudcLz9s7GI7wF1jr7Hy zX4{jJ4GHKpE(gJGbOBTH(I?@h4=w#(^r%9VA8BY;CYbWnd9b;@$%8*Awrl5;pJQi| zb}-*fbJZe$x1HsHn^&&tw*0f(i?0(uj7GGe{2h{}Hp|G-Jo;|uJg;Pk z4tkz=QG*#WPiFImpWTa&GZ}o$0bau|j;Vv?xQx&pZ~V)^+b%Hqk9l+ zDmVd1rkOYq&L{KmH2Fy9wV6ROnT})ZM7RUdRKAxV*V@h+dueB((_?euGZ4{P|0fv? z=95rKvw)@OB&42UFU}ZreLCAgx=S6ODv`|HHx*>>Cl#>9!a-Cz38-Hv&D zD95s&A`~kA+i>f*EH~J9AQ$b_KJ(#3gS=Fb-@9Y@&Q6Qgr`TgfV@?`hv@15t>N)kG^>wwi{VL)5fr}O+i z!h-tNQkKhmK_%XZ4#aT2Igr2*OiFg0e`ikdJGar0?110;i&yd5u|lil`JWgC6c#b2 zF?;&R)mt<>cqU$elj5bfoTN*um+7~~E^3B;2R^IN-YdE*ULc&;~4poeVL^fL3B%5)7_MxZHNR z12WJtzT`GCCjZQ{v^zkpZvoh2B_eQxm+0IEmF$?zIoGmBjW1hNDbz5-*Vq))%A366 zC1JuDq026TH$3oENFvA@^zyu6XdFK?Xk`~e| zbQnqiBu2Nte`e2RE?7>1nl@J+8k3YmAt#b~R{M1=ufAwtR4^~XzEXMu*OStc<2e4q zoStbtihi*tE7RAIA~VO9jj%QrIHwY4;?CiBD?~cr)%~|lL05T3*MEs_6Sxh}YG zeb|5xx3!JN-~SWe=|m75)uhE2)y`?f9AHYS!-p6hLELeXG*DEu2Ck>MyKm ztATB4XmIb>l2Y?_RD`{kj_Kh$ou#u1Az@)~L{lev^l>&t609eO%1 zrnJ&{SN)|BPfV+AF<#cQl0I%T?4it!C`Y?iUFPk+pGdi3KtU;yMSL?-eZT#dT;l!^ zVuk-$nxdC}ymb2Rx?kVm(Ylzf{{SVKKF(yjaxUN!D@KfM7j&Mv3av$0kkyzvC^?__ z{u|&KQb?o`k@l!Li=Q0;hUIa{d>A3ARab_@rI{A|8Z1DXRh9e|!GMz|nGZolORNpPQf=)p6G`40ft*~*Ce{0T*7ER8RQ+{P6CpV-qje_|S;vQWIk zpC>=GnQOlCJg=3@wfHY3=`Lhbv(Vl16x|@b{f?J>ERq!Bmq1xi!Aldk zB4l2gFT4po|BjHg@(*?s@m~tP3%hYHQlOHdanN*}9Mi?+{&Dj+Wj`hT6Foc#a=uLT zF}B|WjC<$Km$@IK{4sH6*d-|+2qCqWBlyJ|N8kT!aYSsYWX6xug&q^4lP~?6wXf^9(r@?T-^I7JsH-V|NeyTW;&e-vx|=D=5)%3Omt_ru$W8WQWk_Dpi@+iBP%!gvLIih4$JaCS^- zoLUaK&+ZQJ3-L+s2;8foceR3c-%vJbIb+u?Pu6mBbi>2w!0Ik{GpwY(2eS>0Nec7> zY1*>!WR6uSKg@+E7%Uo626aNm=e)(JmQ2o%`2P+m+_AiRcqKB)G8KPJJ)0Y6#FZ74 z??H2cPNAqGOj6jyv@e=z+&>L;$~nb#B7W!a3@QWU)SPe?`yJfz0DF_Js=`XmqtXL& zlLnEl{Rp(&w*jQ5x#L=v<=$ZvYcY#p2%^^E6qD4pnZLOHTFd@!7R421Y}(iE>BlB%{uv_Bwc{m|Ba_<TQLn(RTPhj4`*KUyPFf_W}#rPrbUBCauOiId-K7MN3pFugP5P6DseP4G~!- zMxT5XSTwVkraFLmNMAFkA@QmWK+z++t^#x0RV>6|hufrY!uK2ASQOd9DMT#&IiFzC&=J&kD? zwZ2_ayeQMg2%>|PF1o(q?aj~isi}FSqrbJ;u)o|emca^)W(F)CTOxMH&AChPC{?uR z*sp1gGFDahEZfw(xZz0_{XG+X+yYecJoy<*Lp_ridb_=PD%h7E2-%2F#cOg$BjSTO zx5Fj@QYwGdHs@A&uk%;_hd=XQlpTH09;zP?nng!ee)j(i?EJ=u+Z8*;LgWBY5J@x4 zF)Ot8Y@prxvP|A{aZe@Pv>O59PWH#+66K<8eI_m3e1+KyJ&SDp@h6>l965ksw)fxE zV$h|fLQ`b^LT`*phLdaF)BSbydbzMxSG^+vp~(NpjYo5ZyP`Q@kf}F@-v1Kqu^;9a?|L^-~=p zNw@S0ILb#yNu9pcdAHjAD(9A{hvGKa#&buSz-7-b$t2Ft{!#O+^3{Pks|XooWu_bO zmF3kQy7zJ_`_m={l$q3;L6dKcSeKx_Zi^{iwGpLjJh|Z(X?wa3?YDA znCq=9MgY!w*0NMRFgUb} zdo)yzHLZ`;@EfjK!ftdp*Cw`#XQ|F$7UcYg52an}&g~;)I)JNWdYxE9Ro!W>1O|gE zzNF9uQ=IbCc~p{tC|}RMltt4wxpXYg zhddKIGAK`TYzL>8!3r(M)wE^%uR}B=ORFS*{?#XMxBgy}a|`nXv0VL%M-mA4WZfP- z6xhPWR)1-;lwF)2-#uCiUu19r*Dx-I-TQTjvO; zLJaH4SA1b>do~`BSnqq`%c~K3h7~M<5g7t|&Z<=MGs@X%7Wp!&EGXM)S1G;tW6^{M z=3_cIM)YaXo>b{SSrD4!RyCW{msE%ytbJE2Ak=?EPz>`s`cQ-}o2PV|rSP&07!`rW zc^^0OHD0{4@glv7C;3%QoyTppcJukskC&_lv(RN<(8v{Esw3rxEeKL{?~@3I!Zq;w z?4#x3F1Zc3 zU+cpDc^9sLRc(=Z;jWC2AJW3NZAen3_!WJJHj}XW`Msz+NZi1IaE(ZrtbHHSie}8* zUI?TCkKX_T!)EE+H$-B|qPp7~7mR#DUa{adbk{zwZmRzNOFcy?iNPc&b^P>>s}@6X zq%wzS5Q(^a0@t~>r`WA?6f~c#6Wex3GfZMncV*;*q;D}AjP;}bzKt08Xi(s!G5ZZT z)h%fBA1EriPidjX!U&S$ahyVTniy*taXyVUL5&3 zkG{2nz2oo#cGH!3P68dwlodHM7x`QGyymfZy3KRSLtOg$c@HyGe?R44&zg_!JZntu z`{=Dr987_p%bALgRdbKN1lV^E4e#s7g>e(1G7DDSV6f+>Ghzzfcvu^d-SSUceJ^Y| z`ndP>LAkbF^l4!wP4Uryijyi>Y`m5_R$tpxr|UU;bMAeV1{2@GC&X)LS2SL2xh-{C z2ub6kd1o!X{e68$T0Bvz+`4sz%HFN2NG;Mt2$XhU9u=KcOwh*XE-4RBMKy*+W3XGy77LsXAes9v7IEVUOcKW77Ui|hDf8{=?-yBl<8`XW( zHn2R{J+N%2LUYMvDj3!W?jI_VOXE1+gYuvZvU=KPEQLUXU%W<=8N+c&#@AX>uh!7* zJPc?0i15q!I0X^_JL&(}vDL~#ME|q86XkcgtZu$~2g-fB?s6`} zEiOM}Bv>!f4`9z#PR{?IZTM?Tdah-Za~)I3(>}Iy*_Mq%D5dv>9Ny-N7cnMU`W;W+ zeeJyE3zP;??Op%4@!H!7lzdyC_dMFt`6*q1#hilG_#YUFJ$*v38QY=$qdHeiEY*y` z*O5R!Wq6Av=-V5|`ZbJN$5!l;k&BjHP&$=o-*f1K+@Din<+XX+*p_i`Q@?j|i}g=r zz68&E)8eTjuNow9VJ3=$#pR(vo;HfZ?YGU_ZclWq#B}4`I|bKl(yC$DgBEz$Td2!Rk z1;yQhRlhe#$*p44gr5MJ>2&6B=3su1&X?|r&+MG7?R=ImXEhh^$THzwth{uBE~gBH zu*eOWLL+&X5o(9$kjrW%W0q6`4LQktxtPXNl7?pGH4K7xA@J&-#J;$R7J6|hwONmE z^E2D<7TF&>Lqk9zd~`d%bjP5@euWbHBsj6Rz@E=&e)yk9xo%{v?_kyko~msDUS^!- zZh|U-#mDb-+fep+ew?7*$TBThk#pp0zMT%9{!vz{s-ZgTu}4g78dF@dPL^A$x{v*R zEBJ>W{3LXx4|a!?Jm4Fz6@Px)f8LQT&1tp@#-{=58J+k)iK+JEUjLso8)=I=zxlI>>x^v6(fNs$CVK}Y(hA!<`#_on7#m(qnGHJVZw!j&66BXk9c-z%> z-s{K&!@GcmA7LV*SIiPR-3iP_m9998tFXTncWcrWksntO`1=YbTKf1EM9W+hep2@D zBNBq?_?x{~$|A+cJy4O=3sDy^x$G+r$>pg^YZdsg>G_Csz{iP^ymzZN;Dnt|C+Gh3 z@Kf=(@fxD*vnu~wGvwA`o|e+MAh9?zZtzKd?s4 zh1bm3bh(F1F0=0K7o{uTaLl?)e7*H#$O)I#`)%D^49o)FUZ5A->BY26JzOkq?>x4> z(9yn&T%vmkiae#%15tbC&gWmJG>a95WgpbAdz^oOY!g7!S7W_>rLcA@?~>O8xLS&h z==n8Ag^zTnE-K(``a+_Ih?^GV!og1_TdW~L3s|w`XsbySOm9~{HV5R1T3zH{{SNxvExD85SoLm0Es-1k`GRi( zB7pnb{Ca4uM(Gn*v(drd|M3HFKdF0dCgI2&*%QTIw4a;N;JLWe?uVV;WtKIXU#0E3 z0wLC)kx=5@_vdLC(@~~|u2)!BQtS<@4~eT3>rzrm2SY`#tx+sYtr&H=%7z8^ku&sJ z1}~lZW8<73s0{0u{h%-`N-SIAGfa;GksX<>t`KO}^9%pEl}WY0mrH-{+b7O%4Mjih zea?hbO&i+84xvtyGbpqe{V${7@%El)-~=LP1FA{;4QdYROZcw>0#yZq?#O>7aLI+p zAnI182w7*%iiD<@IC(|ZM=xKCfNMrkhy^9O74-d#ke>C}=wWo^2p?P<68*g~&@L#KLg z?pHWamCBNHx+;jJ%j9Of2i5XCiq7%r>_U{s3eiLAIEgt2oi5t) zKOcM=Q?7vjENEk=a~ew!XM?HH!k{lI{R4F?unq%T+Rz)kiDb93Lb9Df zlwt4%55C%7C-ZA8t8Sn|^9)#OJdq9;To}d#TigNIsh#g|Dxu>Br-){!duX^IjxWry zxg#=LymJ;PZU18&)oS2^LyCE};MQF&rd&(8@ZIjy>*tW=JVlY9!>!zA!+B@tmlJ2}QD?R64ME$&$Z+GAo}~HB0ZihqoU-&bUQKZ-(NH zId^2E(7O0sd7&|v%}jyR7{(6SVSMNlz*e(|pF~Z+4idZyeR})DtFZ~&rrcP?R(YY? ze*;>@;ndD0!O+=yCg2J)xE-kWIoZ4>js)g=PF5@{-#Kq{50robLCIXLv&UXha!{$u zEa-k`B^}W}2NPTNw3~woZea`cl|LcgiECL>weD~4!9~}bfZ&y( zt*7PKKDeEW(coA2@$Z{fna91aDq1mBRunXHe^Z0Z&P^$bDT2=jf5g1nroyK}4=C-S z5bNr7Ah3g=a^pLBtioDs)SGG3#{8)}I?+-aY)MJ;`xlD~1;GJ20a^icIU>PO)uW`Y z6Mgnrh0lHN`~XP)fUPc{pK|#fzH5lSe`O>5J}1X|Yb^X-cxxl-)62x6O4$4|z^wsBDL#;kIE^uq>5UlZ4@b1YnR_xOW^TlKr!JVA>=w zbYi>*m9?f=YBpjh$NgJ?B^c%B@LV;kg8*WEw#~Z}|884OI>zg3soBhO?bOB;tLepC z_*XwvWb(d_ez&e9XVaCIXOqqLT|xr$Mx`QbR?ojmZ}a8Y-``FC!Lw=ZutrIez`fx0 zp7T&3`0(&PAM|;$73V<7ErQ%f9P+fMr_`*CXokvmMRxKIo6~GIS;nm8{T?NQfKy1y{fBzs zuWE3L9$v}y;9_W7bUy9;4nuibUP8gDryzXp!9o8sPq@Xe<^NH2CD2f|?|WtpMz%p& zvV@RSB4t-2LJ|qB$Wq!YV<*WBLM2g@rKq$>C6!8AjHSrhreqz27NiZO_+M}J)$f0f z)9HL)X}s_A+{<-c_jN1Dh4y=kn2r;bYZgPU`zxeBuS(uRK>4~Z!{KMUYpQ~a`<)ks zFC@QLnK%Yo>}AO>4XK3cLxq?o3D|E3++%@7OtM13AboIWbeM5Ww?TPpgtpuurg~=G z4t{_19lxx(y~%OYzejHmwJ>EEvbmf23&Mt$r)#;7vAGF9ZAl+4<4C?~5k4xguam!$ zkH;DXIjeh1j|w-6qCOeDKr4xTt*gVQUWyI)^ye0q7K-mUY#&4s2Js@wW^H0^eiJGyA+ znq&Rlt^|g=0=0LOc5&6KsM7ME2Jl*W7b?x4f7z{Lwtsh}I6CdGAAk^~fi#Smp81_v zAm8*;g0j14@9x1?csXX@g>3Ef2GIoj9h0yI^wym(g^FqtmOqm)-@A?!_-qh-fx-= zxHG&hY8X@JX*$PpSLBBXNeaQwDBs#p6 z5-85JjNz)I@HCa(gGu@(3!`z)^`zWq!H>lkY_nX~wgV&5D6RFa2W=Cj_*NNN&MBx!YUt}oRQw8qZeq=oIy3(9 z^ii4d>THucg!+iM*w?#VfT$e>QN{vLv>6)t_j$Z|lH- zmFkzJ+>TLh8PC_PMdYfWO3dhPhJ48No&Zy>?WGv~@Trx?*Ozh&46d4OE5&SLa2-Sl zsRFSt7H8)y{xNL!)#$Zu#EAEU4Yh(kp3h`lo4NbO7uG#5I;J*Z8GH(O$LI0WYu6s+ z|8p@|Uj?|YmPfc=o7iSh?ndXRt#ssNCZb#n)SN9X#n~K*xPMLXVbF3C)!D$-U0lun zw0W%ge^>Qax;Upq+S&kZ;T+3+cr$HO6pvRl!OWJSe+0U*GZwbUY`%b6w>4FiMe7bJn6YkwyPo8?KDpsLUl`KA-Mw0uwYHzs%S}sdI z5xG1OsBKdNc3Af6@d?BVl5-syv2*frljR!?!xY?q#FNY&nNIh@KcD+hPW1r(o4) zufKL?BNI~OH4WV(Vq#)SV3>1TKPS&f6jrpYGNzli7nd&87tz+&*kD=*y;4B$ao-tq z_RjYO(slqxd`cfWI}r7Kr_$4SMfol}f1}vVd89M@IBxIOb_TJAM{vQ6dj zB~h+=)&m{qKW9Fezc~I^%KV+XC6!scw;<}>WU%4u+h>-mmdY4?zB(4Sx^^Asx~QMr zZKko@k}jq|e`spdL*<;vlbhyxd!$Tj*fgPj-NygU-i~y+DFV{zq)Isq{MakMLcE_n z%hZmnSBg5&8YrZ(d`;&O)>#^7@DmWf5^YmC$CC{9$)rUD(>7(%hN`f|Y%7g69?g8< zsE09otv)r+)&T0ujKz^9ZZRUt&Xt4oN0>@oJ$jTA=!M`?@$+)|$KRlCY&uD<{OaO; z5u*TT(t2){0vC~7jY+;+^;i+T46aY7jQC_xEj z`a16ZRa5cCWmc~go{mj5HzCZ>BNUHtVo9E2fS^MRHdJ&HTh(F0sIHxWQWF;``+RHP5; zTYwf1YI3L4i!`bMI7@meT)CRgjgKI}Xs0$)mPGc~RVS{22Xmk0yXg<2H+qz%b8*ey znQfi(<(B-)sjMggMyha?pPz2|QfXnSVFopk7-xEWb33io|4QYkqO>x1D{!i_aGk2T z+UCMpe-E(gJGy?lXIlawB!PTt$rSy&6=7tGetx5mJL>EJ}%qUFzcjh2|B~gck zXff*E6Q0QoEdlPm{!5vv8X5*`R!{MA9jHyGs{88o1-q|N;iixlzxl}iAl>YgV-VbIakUq7Yo85s(t1%O}c!>Y=Gdi;9Rw4c8^T$5zqHXc}{5xR3QT}MrUL- zD+gf%kqq=*z`U(Rd5!-5R@D8oVd(f=8!OB*F|Pj5#&6o8+eDH%PFjapU{YE3_1+r`76X+&7GvmS;-qVy*(|)(T)edwMumNkixiB0!-Zg_d3RAv+fl~Vk~R{G%haC?W7$BD)CT#{ai&jM7YAuL=BZfGPDAfc_zng z{38;@t`Rki9^o82A9B4H@?`!UsW~r?Qw4BWxl5>+shmZhV#MdX_!;hLkPUs-m5sM- zU(U~tG&VTMXR=;To^NSefsYs9u+6F274~f+B&dR?Im#D`7GHvy$dd&_PDJwym`lT7 z>7n4(jlXe3#ur-Kolv`aAMV-u;NqPEBAv{UkVN3C8vTBu+HM@ut2?27U&L=13GNIG zQ>*wXyrfHd|2Wyag`Ef*tQK{Gqg1oo*~?cvVoqF)5UX57&)a!UDD3{gliYZZgL$Bp ziQ4n1?u5Kg5ARi@*g<-kXT79P^Og2pb9^m(n67qMk+{(q8-EVtUd`DW{^d%fCDk+C z=rONO@(0bEEB_?@J|&iL(ul02_IzHpQLsbb?KmuH3v?cv=$6h)tPB>pzR6{>-_HNe zWX82+; zKUl0)rVF1_>3KEtTuK}Pou8}ROwasg_S(Wf;!TI%KnAsZF9UZaIFQ5~CXkQghCk!5 zQu_#1PM~-}Ea!))kkV46fp5bVqP&eWlE`?lgU^K4E}(aZtnCq5>mLEZ-WIHvF`Uc1 z7e9XQ70-w8gwaK&N|N)gZ>d#7;`f>{{WF0&vRQOiMX{P|m0d#0z+{0za_(n5$7*=N zwDplc&vL8`Otf3_(~-zNxB8PHIeP15QguY@W%O6wm3NbJS_GHwOlUO|!@N`)G<10d z+LK>k8gXF>=#J-uCX!7%20l2zgT=wae;$!;=-p$}i;vP@>}2mezpwK{XX$)c>t6dQ zq8$GEXV+>+vT*Qp@-vQ5u=KK|+3e{n(mROzMqe0??7;4yfu zf1%*%zT`IgV-0?Nh1J-R9WawDkL&d9oFZ95g6ZU8ka{54qDnwY(2_khASp4?@hq>* z-|vRsoSMm1_q7c7roEEqIeW%FThov&-Uij?RDFv*7{U33;&{BR4kA^@3){yTGA8=0 zQ)h1cR6gH$@H3SNr%Y2f@Nx@aS@*RS__7uHlU@v!Z6zIGbkgZZNv25gX-)5`im0a}x!FNKe0kpX}Pz1d+8He%+f`Su*X? zl})7z%L;wxyH;f$y~S>H*qZfrps}jN1N}wN$`|Nf3Nv1~%w1Q=;EE*e8IG)UE%Kee zIbN_tOkT=fSe6n=)isOeC1&H^^=c^2t@?iIrm6Vn<;;?Jl03UJ>dO;LxE!p%qB%`B ztjshDElrKPJoy}`#G(neULr7a*)Zi%o$-%i6?-Q!Bg`NM!`>+0H|DhAH@7k zPM7SsKr?Rki&i};zt`??R{Fg}H!a4LlaVq%dsFUp_l45mt{r*|;@qU@$15X&%5+jq zt-IxY&)EFBfJFYOT)x6>w5}9S&bR8c9#fWs$LIfjRgq2f@MmDDrGHD%ib>;5WuX)vLG@qS)VSEjg4G>z#6|1e3Q7`H>l-GJ-Q}fs4|_go@E_e%EMW}wd&3q93F9Zh z6GEZce@drcpv2e_R&KF;cRlnN&25E6_qpkdkfU-+CNQ9T2J1<7d?Ypge(CgQwOE!QI&bgDs{O4o6-zJ!T=H!NtwS+ECqn# zan~f--)!QE4!R_vthIz{s!!DKlv}IUvV+ZO_q!h++-XEjI)YQuBoJ7bA?|FSLfu*9 zCVYgK_ClU#>4Gl@cb??^RDS%((X8`37eKLEc3i6AdZ#wQv&f42!p@v$;w zX)^}5z-b@Y;UiV`DeiFz6~bENt!nr2b^!5{M(g_Ot?+hqTo?7(P(-N51#bG&+W62- zo4JNixgEW4LRbQ7`Wjk)FDHJpbOk4)I1*~39VrdktE>%ymb$7M0~}QKsw!8k@eai% z=?|*cCO=G0*dbuA@V~QmZ7hEZBTSsL^)aB(E!b2?@z055e9?lV-dCA&M8E_EvbUT8 zjG;MuYqT+4D77qc>OFA{uQJm1Z$irlI2oLN<6_@u5yemFr_PpS-!KvxBIQsp%TO55pz7|(Fq8&QW zY!CA&=_6`$BQ^VcVUKm@VZ!@!CVJ(!Ct!^oWE4X4EhGysxxq0;c)a*La-&2-IFA-Y z5Ub%Hzh$-8jIoA<(bRi0@7@`~{aV|!q@g0T4uLICyG&TYv$s#%uYm8+A3Y3vc;-og zHv5dYM!~MopJpZ=yJrQojqMXY4bvQ2@Q#5_7Ey6yK-pS_JBMtOE@!gKF?715(Qwz5 zw3DB2xLlM!#J_NExdC5o$A&@cK;yp=%}bSQ({>-*sAS+D>|@1zs)6Q!(Z%6G)9b5PwQA1VW-?GXoP`mb-7!kOK7p^DvZ+6Rf41+az}h0wxHnHS^q+cXDYcPV zE7qEu$DYim{6eY{8KlOyd8C+}FyG-X16l#Et#0@?Ee2?LK40hd0RU{vVZP_Na5L>v z*O!C!reoVD%XdjtEFwF1VlqxpcUgBtrkZk<$pz>YqIbU0R4ggGe)b+mzA9JV`q(C9@H~ zpN=;qN_D!qoT8-2x~7f#^zm0Ay%n}zKlugKcEM%$lqXeB*e}*zsrb^s;s5G(peXxU zI{rpA8Wm!Mmt`uty4j<%{djx_)ys}6no`(2yTQ}lGimDY0X8QiW2Z>2l?X$-9#9*j zqgW}NO`!-lX0q1pB``Z9^46yBkFAkCnyxd{c__uGwBN7hY&Ay;HOt7fi*#rkk|@|V z;|C6~70T40{+`=65nZ169-H+GE!CG`$=+0Rjpw|Y*t<12A)<&i)^>y>pY^7{KI^=h zAvV&O-f#sHYN*QuuMY}J6?{#*wpp*J^lrFTPiLn$@`R9pGF|#JBr%!P0h}d=>nA+ zn7>K^zw=nT%K2EM!#= zg1E2%I9}oeNxm(n4&-xhhGPpXNnl+XNki_A_!YD2q^-Pux#*yxHKq@B_vb`~Y}i8B zQiFw)ywxA_p~EG^sVrRHBeacUyx-Abq%w98XY&jX>^Irsfe*MVvQ;POa1|6jn-SL&0Kx_gB^1onT(Xef0 z$_l>JE`W(&Zh2=RCWO-$2Z8yVGct40G}bA@Iv>Sc9e&+ zSk@8<$f+oIE(Cn)Fei}XekWL5`gl%3avBf647G0zwSiN~Stx8KtoII5S)|I>II0e^Ld=}9QGM!= z9+aagsIbSL&w1gl6jUX+bQBoQZQ~i!C|aX?7b{(Q>D&|fZk744(7yf!RGWr{dQpxh zo71E=ZT}SZ2ls$J)=}I96Xx?^v+8T9L5X zLWy^K+LH8RQ*>srAB(e!<(H14V2RgFnH;%~eKO%NlMKFnvcv{KLMSCyZ~2&p?<5SV zeI!2Q2AuBE$-1)`%Oun=wP+vj7RbO7-n+}6EU03=OqpqUI+6cFKZ>ut_0IFDEOn=Y zAIRw5dw)J%@WEFkmU>*G7$9?it0k}NkDSrhdy+nUXL3c%Ii`^Sx_q-N?!(k+Rk_k# zLK;fY+P*Qcdl59>;Qj0nmDo`63e$-@#Fhs7n61a4+!;)KX}=Q~ok#0c3WyJr_i3F> zwC_N6Tc6h(2`4gi5OU8n!xsPdXjuXRoPoDMUvJiE=1tv^8m=wTy}1TK zo==J4f5%jl`V8V*F~&C$o748s71Got%@#`WjCZ;n7C%k-Pqjp#B#dE!g_tP3nf~TN zsQ&qRu6LV5nqj8nD6>7G)xON?01`gUd0wQz@k1dV;{Sp3f#R%Zoxmu!ATF0^>?p99 zDkF2jd=Mz*IjhFw$4;z2!YHC)rJe&s!KaL*rg;&*QkQkj{GY-P=?oUi=kGK&a_@TX zLYVnHg|a!A_F(Y7%T-kCwICjXXStN_aj75QU^3iMZaj+e_4z6#>AjDePRJHCWiWTE zxGkgPg~X0m;vYOMBr5yjqrn?Z7_k*(Kj4{$yCv%Q%=;yY>K3;sWMEyIz>tB~Mg~K= z0~^SBHor043y+x^;3Z9D=KlC}1$(SDfm$``RN&TtzhwtoiPbNoe{<)w?M1G6@l%BS zZdwDKFeXs=LyICnanY36P#MiRKck9c?gS~BS-Q-fzY=pr_OL3Q=5Hi9hQg{(!f}6V zWch=b<%$CWjM$iZU8YBfvlf$g7EYh_Ne5`63i~ZdD)b~OcU|_9s6FkEOX2fK__c0N z<{Ak4mTYLdAGz^%Q^^!>{Wk36{Jw~IR(*)o)|ie8p4HXS^Zt5)pGo}0Hky!)*4mO9e`>#Sa zZH*toF|*jR{Dyp1*+1%{YZ=KRXH4YayVDJn#=B@S1m>&D%|lw-Lg=J3Ry<7#K1>fuZ((41W7^YWh9%xTM8XK|J#YyxH2HG`XA(l-#^4GY_07h6MkV@T|`ZyRcL za)HykgV;FKX=!2gHU3!foaK3^N8f!l<+?bo32p~tAx~M!&lM6^cTS$Wy=mtw)7>IZ zitj)_vRAyKm0vgZ)P}4(45z7WmM**+CR`meiHoh1=C*X6>(kALJ1s5Vi8V|%FN`B9 zo?S|X+P9HIEUcY+qw8lP%}S<+KS+|_*e;qf=Xk5VeBDcpxHwrwiN6%;a0Um@J+1I3 zvY2h-vZj0Rfq11``K^tNG77*H9cnX^N-0)5S|Tcnp6gqCF-BO@uwQcC^yAcK!T*8< zanBhvH;I{&7tG`l$G=Z0j3V@s_zSggKWPi0nTkMRFjbv?x3U@0o8>ORDC!>w=WS>k ziVe4rqid{!3)hOXP@B#sn9$&dVxTZqoeoX7+yK2v5?HBQ7sJ24b2{I!1H4}f;^ns& z>5q~gs!d6Cuv{O!HAQ*Z6rx9aWbq(qIcJQjU>tTb_I+LryHWAd`E5%+-Wx}yw^)=y z3ErBvVnFsCR#yykmM*bwrRPKhY*`XIbo|S^rrN&Z0)s0RY2qRS%skM!MwBoM8C~ym z##FwSA;q_LJ^|4)8y4iJNZpe)DEggj>9;%sEzm$w(?lK~n&Fq{oFVkzBVlj_!e)9m zVoEj z?!5?v3lL}?rE7ay@tgWbSbe-6C{EKL>v!#j^*`m~2~P&;36vyd<>X(D!$JztEhqIS zJ;5&PZy1JK$-4u&!@kXi03M0j4XLaadW6lO88Bcc-a94kAOqXQSM^lLwSi{MO`Ilj zVazyKlDT>>N8BF5u6>D#&*kBwX?gXUKd*UPl9#;n2h4`A{F=Sb_8MJ!DOcqDwyor@ z9bkP&{gkCt4G;15JQfWu%h_|f6I%s+w$~T5;d(}yQ1NaaWKX=o8<8$qwcZ&~O zxxtWYN3KG7$36M1Ji?*qP(S~BlH;Q7aLV@Sk#b&lOhha;@5( zujdwuiF|%0Ag)52q5ez2t4fT{JgTiRB^0^htYHDsuo3pPBMp)dtq%QH-4PT;I#rSR z7F>zuZG@W|V#Q*z+RFc)tsz@R$EzBxme0@fN7AQ90JKw0q(ZDHT~;IyV_LG}#3C~{ z+bMzvlAa*w%fK~ICeE!^%yT=;E*L_68p_Jbo6&9`CPYf(VNlaGm0yfxSP6XI_lD2> z%Z%N_ra^XkKf+ypaC&VQn7B)W$x zB)wIsaeF>?FH5CD>ZZC0YZ$GLKwx)f?3IDQ*j^6!gw$Fl>P=PHo%*)k#dJtORZNWL z;$z%_D&o^9kRAQY0!?wjQt1ss%As>LmR{O9gEwG!DSj2%Trtk> zI%22@*T>dqZ=rl2rN!B1c!8fF|}J$IR^^4(1zpH2)!3K}msjy$GdyEe;Hcqb)2 znSD`IZFW~eZ2ONc@pW!SfqjX-#bJ55C!Ol0`zE9!z?@*zxT(g z#jW;jzGm+HRsEvSs*9z=%BINs)#}kX#-qCemfjS%pSvp?exzqP^0KqJp9rlI zoi(oP{PM<2uiQU>HK^{srh8y~R$uVP$it??KySsI<419g6{rgeXG9@ReX5nuTk>gLJ+j~HZ%)5;mv4# z8aPJvupmZx@)Iw5a%38hL`2l>>U)Lb|3vlV?VCo~Ga!jWeSX0AI@v^Ysmk1^=*A7K zmk=B-_f?!JrGdtoHe=dSIijR^3ZlF)I!<^CHW4N+DD@F#i43`a4bl4QW`DKZ{;uz2 z=#LI<#A{`UUIL7K^^Hc~JTVJR)ayL*ME7{-3EupGZPCFiIp7^ck1bMjD1DoLcP(|# z#J8;(OQP-@N;YBH(`UP{TfH^e5fOR$?vuz2*TA->2|CZ~0je~S_|?@|urNA(?XhEj zwL5PGxE-QqjgU6z%L~R1K4!_h`cn2qip?`DNOrt|!Kl1~%jmH#ZuR3sxII~X;)8&A zp*|a6aSiluLAjMwtK!rv56b!F>;`zYP?dcDpOPW{0I6*Qrs~cej!QU;frfWZCmCdv z&$iWk5cvKYluQs~NBw-i3A>p}-?W6G?K+Dk(b_w*W}ze*%i*BhB1YCq;=0-h!?MZH zH&v2XtMi-^9%m9$+Jy1oo`Jn9*Y6|QtT=Aci2`zHuuC$%^FiFg2p*{jKBiy%0izh| zQbfv(f=#6bLZQPB7xNC}0G=8)Frn2!q&PTYoZyTol5fP9^dZ~1^CehYR42*Ut|Hj> z;-kcA$`7I5Q12Ymk5uslGTGZ)4mAS-G2Eb7KEeRrik~uBVh9>?F)wmMHOxmK0ldup zCdKZ@;)n2MKW{_*vKkH}Zx+>E{|oTgSdu<3A3_04uRVDF+?`AA8Cv%xCZPZ*x!PlL z9PD7>=5o_Jvl#wHok}WnKB|a<@wPyj!Wq8B;H^C*515Xy1-dYr7hBfUPyY);SaEhy z70v4b%y014vqqjwol|CP#nGeCWlSrF)Ke?swiVwBT-v0UZJbFYkM0-f&eY3NBBfv5 zaH*A0lVHBMaR?*G4%qiAv(4MPvywVo_x{Z`-ijm$z%#-epV<9GSle-g#yj+6YqbuK z8CH{kG@;eSQN$)EMoUc$Eni+*@9;7hB>5S@4s5G^K8IPoG;aVnd&au>7ilK6->{x? z<=#lng~sG&7%{4IbF9%3e!9O?UCy&Pous{{dk|B zqiiROgxfCC&kZe*cU6^@%QY%q>tjx@J7h`uW(O5FM@m6k>$5Yr+9yYj8#Ox*C~|bp^5BScbyKlaz)D3Mbnzx)_1% zCt8vMU7C-70%Em)eZIuf>ihVZ>ROv^q1vbcRrfq- z;m?=mZbf*e9F>q&BhL{h{FMPIISUJ)Tc7DKnID5T%fcj-Z>Dcsu@YfGS6?jjbBD(W z5PDknoPWIQi&@N}HiKib+h%*;n)rIFn|9TnC(tk{MQ5vRIQXv1`kRwx$024ygq&?l z@lta8(2?X4LBCmbXh!GUx0XhBbH8w&@EqZz8t^uZZ&U_F>=Wv*aD3ZMv9~-X37gnm{`s-RO^}VK!;brfZqS-ZK zz;}-zCP*(1Rg*TPfGtT`9Qpl?ILFx!?B~*B>k=Z)anPl3%G;wr7MJV|ab*1jUEh}U z9c|ZB)VZu=cHT|QzaGXdWEC}9;6hATa-m;4hJUPOg8Y7eOWXp-uIS@)Jsb(0!V~}Zv`xLaadLWm5AACB7l5VjWMsW=jO~;9649dLrytOj?t+Ht#0L>^ zngoSev@~2)|3-XFo{5d-ocQJcBWQG^qtTazk-e}u-TrJV>`oNvm(6Gx9TqLgwZlEejVtP5RBkA7&s|6AqOLhbfD5VWT5gQ`CH`On`G? z9%O_ib0faIQ34~PgL>ailrjoChdTqb=q~g+{ENj#=s}d?5qiPS`4QSiv3;4(u0?vF z^gad#`gVOVq(spxRg=i4wxiZ;%N{S|pP@e}b+&2IN5efWrHZcSja(jgE*?mx8jCY- z@Leux0M6_fylo!0Lquwn!MphU@T;RrW_+rfuOc4H)cLZr$j7LwN75j-lN?%POER7OpELm(V!sLl#95IC`kC*`*>MWhnn+%KXYDl^SY|Vep2vB84 z0Sr@xHhHRO*6@kw1-+0?*%!R0hj$y;1-ez)MVz{Dt0Dqhj?bcm@)gB8-ZY!ch08_By&FH|xvJUs?#>5^ z2(6SAP~dYuZF&Fi(fs$M+!^>^TE*3Jr%%xs&yyxY;ffVt_{1+~uH1)*N%AX3L(E)E z)yybemM0NetW~zmpqnCaEd1fdtXwR{;kyim+uUFlwmwnThCYmV0}-D}%8KJ4eHZx$GS;T#Y-?G^+kjC4|As-TjtM8uQe> zMRRsG61~=sL&QY29)Y0#|F3n?91umlMDW7UA5Bg(Mg|Avi0=55t(0}co9={M7QYek zKIAxb!>a0MYhCn91NB41X(ntSqctotPtZQ&h!Gq3nM!=8X0Y7_^aFodUPH?w<<0f@ z5zhia7|o!yq5-utR#Ik;kNEW76{!loJKT>jv;rxt-3zYfn_gk2nQ^TFhzkh&hd!+s z#a^AY{IJ@}eAhA8eHyY*H<2IhJBS}dI*W8a)Z;!sTi6j{MD_x%+DrtaPpzcyn4%=? zAqLCj6&eOEEHF1ZWwI6g$eF_YOoES(KJ0HK{E>d24*u>W7I$cZWv$pb7cMQ zDj}DrL2b!f&(h z*xhh{tXt3}8UvF@;H5oX?<0LPAKR#HFyM8y5&=q>@(qYnnZgL)=VLws_o#t2W5486 zG+3MQ)9&HlcTj{LOSsg0@VRb^AA6?+=Uh4pqYI|p-=5!pXNwr$^zcObLo|$ML1299 zejwPCdT*zZ`3LA7m)qRo5<1-9UuvqXd`+N{3$~Bg{E|I-KsGXx{;}tkikl44Jw{l= z_+{=@w{01M6$CK)_p4Zi3APvT>As=SKk7xkG`RhA{-$$9*1Y%h@lVzY*d`_8}W7;b} zk9i2&YeqdQ1+$`7?W4PYXvrq>zxUWa`)kG-|APhnB37f#@w61#UV21}4@%YXz+NVm zx< zs>TIDEoaxU>;1g_E%(R|J*_w#s^WA*05#&Gui`WMFJpQ@1MtTa`>Ouqvu1hnY|=O< zNhJWhpm$GSfJe?S3iYKgaFbdylhwE;;rWSuFF*Qa=f6gbS$TP8v7kQP$k%4B{pnbc zcddiruzNo2cmJD3s0|EBRnUD~7bopkNKziz{OItDfkH zKTac6ea4+G)&H~rzN0#;bS)`f%B1tP$dXfz4;OJZFGt|ujaIzQZ*I%9D_CC^#&k2 z*049q*Ci_NOQxjHPV{w#7SK&>Zp>~^jUm)fn`@7*JT{L0>?~f+IXQ_VA_{CFnFV>_ z&X~q2==(JNuFa)q61u{7;kxufCb`0jtF;?5lIKMR#zxaCQ8W@+(l_hP)3XPN-KzFU zfIm|)x7RQjj(#u=4{r|H=y>yu97x3uF0U~@MjR#&8&YEcPV$Y*@|NrfpnqrKH?{cd zXGH2b_IE=L-3s-&0)^~u9LdEus$%|SJv%N2r2;TGtm$h|&15$A`5=_f{Oc z7f89b@UwEB_H3Ow{{RfyJhDwJ=U%(^D)AB|c+(YdJve#F%TiKJYx`4`U!ZJfkF&50 zu?oTEgI~(;QzZV5zJMgH)J>y&;CaX~=-LfmvrI(u zRy+ts@fp3+^xpw}PiJ|KBT{>(S^GD}bL1(T_ynklq;u;$c`pU$Oz*h9_0Uk5qZg9+ zJ-fkS?l8E_h%x7#NzY{|eBT+PYVGL?JXIr@#nksvgEsiEqG@z`h}gByS6iQC1d6q} za)T=WrY9oah_E58qftFa*pHHt>#07;NHoHWjIL=Bdyi^>rJE$tn;vo#r0U)YDIDo0 zBUbO3NqX6VisWqzf@H=8-o<&EG&6zmDf^{2qk@V4Ue|p~@IhR(^+`y4KEWmU?f2M( zjB>qBOsI|2N6-s`73sqyf zuD5#F?E^46s6Am6n)=z$HOO7?d6OGamX@ip`W?p`-7VQh8eh3O&CmK3>TVZ?uWZfp zn!kfsWqVRt>0e22NLBQX2XA$ku3OMwol+5yRd6}5S6@6zjCJY}3X7n6Fr~KjvRYOg z8AA7aUy-dfi^WT~SzyFhvjDZZHk#FwKHg`F z+YLX=N>T~JohL||TIv+Zxq0S;upkh0ISfg*mEuXNVs+5XN4&O2$4dSBR@bkqtV5J# z)7r25wLRqYRR8Ybx5J$STT5tdURM&W&%e^r*aM_LMO!UF~nrniM)SVM({ z#XQ)ATpVf~%HJ$1r@so;2^VZldBu!BC>O@vhX2;HHFFkpGyhN#>4tN@CJIERdM)x~6dsB< ztJ3PV*Zg9 z@e-=Q@5`aT=Q*keoa0X*qY0CX*Yw=E_cKm^bF_xXW9=>@nHcIN8|-r8uVHeuA)|eF z^<7HZZKn4SVdxY}LoCS*yY1f-mt>A514Lv$rxLqdHBmq`F6`7?Malub;|Y4bs#~7^ zc}qB!+{2{oQQV$w5q-}@>az5%2+8WsRez1wGsP>!!-E1eG!?Btgj^ZWE}!0)U9>6Z zLqdH+6=Yu%7yO(O>$cq7PX>Ikrs<7k9yzZFNfQBJn#=Gl?m^|SW#p9hq#~Vlr?^Ks z40AFBG-UdweY%VBo*(Pxo!Q~B)W?xYi*ZQ5!rmb<5*-|&WHgc3d1s2>{foq~B6r}u zGz6V%hu#iRI%5E=cp1IE@zT}7mosuY811db?FGLJMO@ZD;|kCO3gCWJH=T9zzd@BGx|12Gb>NrBR&+u7_I{ON3#9jW>%kkc(Aq zguhw5(e#{$qDsotp-dU;!z#)w&;$7X16`;P255_5iRdk2bSJ2H`>N#cq#xl5ZB=a3(#)K>Ip!$!jkesq5<@=^- z4mES`Ap*Q@yM5hI7bAt%Z3REWQSe6BC;v~j5@-1eP(mGj*?Cg3DKaW_5vtp&i%urj zX3W=}ta!{O=mEl%j2CBEnfdM07OZ30pTrk31uG-%Ru=w0Q86Lch5SMlQlqD5Ut(+s zgNn|aXQ11-39s0XXz)icBdq((2RAUB7h%cDp3;S{Zfq`5p$k#a2?f7%6}c5sd~@gN z9Jklv)r*Ni5zMbV3npKkC*@CB-Z9-LH}es+Gr2;1<=(V(nfqd_Ttkgz+)4SG(mUT1 z+0{&lv+pk&s(1oL!Dv_zqC&3Rk%ik=Ux2Cm^L(e;p4-G5#FwHz)vb`1eW&kXlB<$$ z{G2&$Z8y}Ry3H?+u3tf%#Do^OP>*v}>RkUEMo6ZuNuL??8yinqyIYxF3v>`;sfo3i zSE;WnRGgfj{?3|DZ#`t@wORL4AT4m~<{cUwv88OdhPG*Kuk}C3lepplfH5k66l-qY zK83FrWt74HV34g=H&Sm-IxvcT3UqyceG3fQp2d=3ujwLzm=&gJk#~E+>t~%)TVNtO zUTbu*JjYFkGiSiW`D9C?=W&yWqfHvop)xkD4(Nq9!!NSr$45D#G93tV^*bu$g$mv? zovWfXj+Yg7QGLS;%A5E$L|u)eix<2b@_^us07DinIdm{uE7$#ZVKsj4j-2JwjuDX70p* z(-xp^YVz98{w9mZG-H^#!34xy5pUj>h8+YJZjaq&&BOKqF;tz?bxvX&Wlltlx^*6b{J`$LXa5XRlPF zVP;tS#4PhcSabFBEwQ72iy-o4A&m`aV|I$skP=P*Cd$GMtCnN0Tl39v@_kvqmZIfu z4V=H>S!+HUO7RQU?$6g`j80$hnIn!?Bo^^>iS;bF-3g9;_i?j)@PY?2;}M30*SLz? z0t!lG`y+Fb*!#Yr@VYv1;Zeb?XSgnZz9*Zh%!DTrVdUXkO;5pDoqG~9tD@?zy1uI^ zfPN&4r_O|j|1bOn?cJ0%{a@NH5~ZN#3DnZ7Ac@#wU=BZ$-QA1>PSBkX+A&`}-^ z`9T6nuH{794&a=nLeg4_7C!OsHhX(tmAbgIJNO4AN9Vqu=wrUusKUw@=Z^4x`CDev z0530XDs>I5!#8VR6Bb>IHAVL?#wO&ciNUg>x4hrxZoyC4oWP}DeLYHlMG9leI={Uf z`B5gV*?)*g=K9H9RK;sq|MdIrWo{)dYlSHFY&nO zl(8jz?tL%{Jp(fph4z>ByY8VqAT~_wZxId<&fpV}-p2ve@fzK0bfaWd^$DX}s_kN8UU(db%7U)_s(H*!IFf~69Sx-hIQ)ObH8ZD z7STsqEdk<{{RQ_CF4}`&V1i49LZHJ$JqVoOJ1nUik!{SR}l_ zhOj#zIqez!(0OHrDppDYpq@VSOtqX4e0@S>-`RE7xz|mP$3+K@U2?)ha4IVF-WE$>{+p3+$g;+No+E=)po29@$B=S0x-u{R zCsk0YPIkcwNY5bkWhw>)2hFca=bjn3JoY?MNNbbR87naZnB1j)S&^!)gk+}Ilbjxy zEWkM{FWWdU)4e>Fq8$=+(1fWeS7X1R-9^qQ#75wie9wXT_me^F+%b9S6nyqgcTBO| zfgGlLm2)t}`nj#CwV$~Qad^UymBx>w(?#_D9MS3h$C9aq3JFv}cDTFx!#{Bvoh`hk zTCSEMn4dY=4amW%bDD&Tm0JN@dn48uk$;r>d+j0-8c6s~Pb2PT2mUH^IjO;j+2t=} z)7FoAlzVPV5r;C{IzyjN(hxFwx1yj7(SNNf)Q>b`z`*Buk!V8Xsv()CNQxM8X|zVG zkS^J#y64_qEPG|=9)~vnCm8HE9YX?Bqu|O%-^-d)roPyLJ0a)7E?BPx4^CIi(oa=w zudcR&`B2gNIF7NI)k%QDpK!U}EGUN5xAve?vsHBcj+XbJE$k;IU{BzrCZE;P_5hRs z?@uGX*k0U}kcc5fGIa!s(M&nHC)zn!)U~5sFv~4kmG5rEXui8V7f+zq=5czD^q7xE9@!=dl<^Gn}l*tijPdFRoY~qOSF00qw#C1Dtz5gE57fO#&WA{1>@IOE^umU>iGmw@8>pIO6 zI{f=Ek(Ej0UaYkvNFLaznqApt`n3S9#|r2!gnQ1sbL#%3elMi1(q0vq(QtI$M$XU^ z3m$Gw_&B(AaT%HIxao)3G`FOYXLd`{pvZc6tz6l#t-wRP!_i>6mKzIe>etRQCYEKs zg9WthjgR&3*!BAK;w2Fyb-k;~cx1`{zeW4?`CllKOf~ziIP-pSXjV^}vW2)D{Z!|l zOUhg3O@0`5=}96O(kQ(CFcsF*i|NJj5mTwcY;kJ1P2~X|=XN>_?J8XkyAJm#{e2oL zZqq3Ab^`W446y2?&^|!mZeFvrRahTFnA_tw8c~NjsA_%hn=Z}*5!S7etH%k0qMOx7 z#k|85c9%G+yJJL2sn-UB`Q;GyRq&dvI}`|%>KZ&nO_v9@W!W1@O!BMQWe*$`OxoF8 zc*y)zO;S5 zj>Io-2x&2W2t7AguEeWLZ0UOR_h&h!It*$-Fp)Og-tNTRb4bILctWGp;lxDi>=Cv# z|Km@vkNsuCFo7dByq{$K93vND!QSekG7VzCp)pTj;`PM>a9*wCDL)`MYf`Z)|fX+SN zna-l-P5U6#5$LOR;Wa;qpnmq1b@Bb>`o1Wz3sp&Ca=O~(?b8~AA!FCxJZ+%x9z#z5 zPYeiKPLj<6zBe0w76IXW_m`ZvWE6NuF#OTR1UmMwP6X5Cgt=LZhOsB;E>@}s|6 zloNrrFd0=rs5v@)7QflQ>!ac}myqhb-=&q6N1d+cdnrpl=mD)sgs1}4`5*nh!^2D1 zIP}(77ak;hNJhs3*vb1zkyocXX>Ql0D}U#pn@c(|NsEIw|AKvP+-|rp`;I%`^v)o7 zy#G;HVCkRT7D9boze7MmEfu8ntA+==^K!%5U8@z~@mcCGP!*@>Y8*9jH=sRqT3&SK zyp6g_@0q*fnRWPSx~vHwjA#v$4Q`)b5eA9SDQ{kOh#Bd?Z2SG1&&?c$N^MGPG3v0u zOr!iDIFzi17R#&Ts@&&*g{Gqu~RY=94Nj3^jNk{UQ& zB&sh~Haq^mivRbwW&;ZRRewj($H1CxfvVp(t0rejDKSPf3~37S$LRVLfDFl8AwtXEh3tKP6rhsBclx zH~bTU(f2~pR!h{lnKOON^Iq@`+M}-t=YLeUT#-s$^;4v=ws~Q+uu8gTjD5^?gQxT} zRhq&!C?I(@$(^$RS}aS}?;}E7sJLX%)AM#8HhMxn`M=q3w<0Jz(ZaB8j|EQd-T|bd z>C7ol&Z&E_9}cRfeRpz?|Ml*;po=I{c2$j=^#jl$&UU^^4Q@l;U9IVz$zv4zo<7^? zsAZDvYOu17-GQP0-@j~s`}kDM5MeE31x-a;b_9y;ULj(DxZNK;io};jnkJjDC4)Ny zHSk$OciLLl6flLWe$d-$%R7kAsQ89T1gkF-$59&-X1)v|LVN%FOG}gNxU*vPD{3yo zl|epXa5BZ~Wz~rML>zc$}c9YvLrGqddE2?WSU;(v-uH5!Axs zAz?Njb$Cwp%ktq z(Y}J&pISJg1XuaM(Gs2oZ$9o;fT3scx#opk>+GN3pH)15s$Bgy_6^|Mt1){Xp;ir! zG24<2kBzH-I7%lN%lB0 zvR7s)TUL}kLbCp^PviT1pXc|#F4y7@!!mV16iDF&g^;YB)96^E-b4*DMVy(u`o#DkHv6=vuR4?63QyjaubK zL*hBFw_@xuTj;fV{XuQubvXPVp42PPE!2P*28+=oe6CBD7Zg@W$xQC;>_CnB*HJEf~ zJr7~ayG5GUZ_-^ml7-pe{CoBUax-kD&?rzY*C6EI1UI-s-h2SomSEN7j}vmi{agOg z`%2grfFV%_q|J7&pzkTH5-Y|RDhN~T=|MO+07aU988XN#SL*Rj!oas0#P*t@s&cSK zX#V&?+88E#60{}E=>%k%$L=|UXpATa%Qb6ww==iyZ2rid+InJN5e0H|Qfn&Y_BZ>; z(=ATIKC9x%D`Ry#`N-m^SVP8&OdEpQ1YMKr0qp~VS7epy$S}dGSPHpHuXK8WE6TN` zWHk9fj=*60N|R4s-sF)4!zMW{4jt3M9m&sjE1y3Mez@|YG_A&?{qYBZ%PW3q)^A=_ zxX*jclg7dW^T+QzpOQ^>8>G!$zWnY~(|)wmCNqUH#K?W!Zc0`7VM&vco5<3j)_sb4 zN>r8>~|`G0){`c;Cu<60(TPFvey1-XH>hLgs&$58A9)ME|V(NzuUH*rreoRMU7 zx1gUaMrIb|${mRMSovTWSYV*h+VY`lrPY!YByx5YU;@4Ve#vIgf*)hR765T#{y}5A zN0Z!6Xq*{HoU)X2kFbZ?rqw2%Bzns7fq>g;<$-BsNuXyl06F=9B1i~qVOy-DyVk`N zI&z%qB~<1?xZfS1R>TSiK+h(sGIxW9sR$UXMFO?xpczwCRxZqayS9GeH(sO5&9|eo zJ|Wn32bYv|d*bmG9qPlvjUcZ`G-DhX;?a17b$JWD@+Al$1E;`O!PRcMWGnUAmEHFZ z;3nXNRq%rqn@jI*N!>kZH=x@i_Ps-4u;lswoEiL2RaR8yWu}{rY~O@T!*tP#vgnhs zUbV9f?xrFqaH_k>SuW(NveHX_m(z`!2`L9TYp)w=j5U^Q70uFQ`b--B{6AmkA}S$B zA-mY+b}3->K=MGMHW*zcnd)+oqhb5J#0E&W6P~=L6YbLk2_}#A+C8mj^(B*uHUqmx z1VTJK^5&avktx9^lA$;Ub1W3u_fKGqbBula3(kl=aXLh!C+GjZJGNBwAtI@#%^R!V zh6P`BA8)fPt{>Dl!X2su?`vz&0oiq&0_5+-h%YN2PXP{~(lOR0k4`8`M({5@R`X0QTqy-@S0h5dl3gk>SZuwHV$D z`%o&FE{|3mcIA-UQB3tg!7_*-V{a(pQF|R0RxDCF zP-VO~A(CT0EJD?i!-it44TU1{M!zGcOpp7I+El1>996?cX$(D?R(BzHuk^GCG7dUqQ zg@*h_%WGuBWZVI5Rtmtr#MAPBA3vd#644xibx6Xl>L8v(D;nt^rbd;j$Wa-7ZiKp$ znx|Km=Ym#Ocs_MiiKNqn2I2x-XgAmgWa^iD5gw(JvT)HZmx60ge&S0qxVQ%-$??vR z)2~9wb@WG7Y9j_Ng1Q8(-Sk#ou4lA2fR%`ey_JdgcD|%M)>mcl#o8EbBnV1VI zQGe!lw#9=F1kx4&JLm<-Dqi={x2|44I%6v%&)xMp&h4&nk8y)2D4%b)V5=J8}pHk|3U z4vw05wKk>>!Rp77t_^$SeKhvm@VKwgIl0SZ>`RY87l8Gw_Z>E7``14bIf%wuwLTK8 zLF5nsnVs^Tg}&m}Kr$TR=~%;F?BpaAyQuBNY@P9wWDbJ6;DNm?A%o4~=!SC@`dgPj;Lg$d?q#TM1kRYh&RC-6wr zcygfszXbCl+HawPbEIkbuV>YJmW=LPZDr8jpnh7VQ%?O#wclatq7Sm-bquZ?A-@w~ zY?V!Ewt>khR0KRUxh#L|`B(rZIkWeass-nSYG0-$TEn)KR-?eU$4Kf(Oi z+Msxd0yjX-N$v3vW#pTh(8Y;&nO562t9{LVDSgrQP%fzb$ckxty2JLZ( zPc%JFjoo1~PW$&e66uZ>=woM#8g}>hm=kIf7Y6$Vby&OlZkpCT1S;GwR#sv4j*{NpXI|+-j^OzywmF#x~q%N!Ms3T}M z`q=`QuEGRw-X0b=LYCg%=vMVD5FpbYZ2T))xHCazCFu;pxMCQA0+O}cG2t*fn=*=7T>hXl8B;JI-d-Me#XWoz$! z)YGS!Z4}v^wE+j`rK4`@9dg>bc9yg9$nPi)c`WSo&{yA^+d65Q%%#h15?mc>EZ9;Tj!KFc+H(-yTJ4 z9=P=0ENNOW%l`Jy`3K4##X|5r7%p!eLB9ANHZV@+{(h}vOFvBel7+ho@e zgu%d=Com6G4&RF%__ksOf&ly>o%^=;*8?DSu{*%>h<-qnov4GG88@X91;LJt=M)Vc zsQ|2aMH;vvG!%ifr`G9+^|5et1sIIzf8!DW4)Gdi8SlBIN@&4sLBuE5HVcqM=#SG+ ze&&C`AgP!jM2WZXgl}fFo$oDukry@`+TJ8D=YDt%e<6PKg>KCOUxF0c$O%+CI>dG z1-S;QgvibQ&)XIN5#F4e#Z3JAz(@@0PFoWg_Zs5k5J?sQC8y&n)9P{jGzq>X#Ss$`%qf>=-*7&8rDi==48gBrQ21F2ED+kWPk@Rd; z8q^(S?XWHjhRLzc^flLpAbeK&cL+@>>f={((Z35DY2q~ zB6JRFIf4-YSs^xgm1j>6n$sCM$Q7|X2u(cgX}`_Qs_`I$AE_$7-nQ%;7xf2G|1Fzd zCK!Hxg`DIN-Myr(_3wlT<-Rgf?n^wookSzw4qTyl zw{CXV%kGPI&scj>|~qc;N6MGmhtJ)E@jbQMZNs-+7l%lvqzBZYQg7d z2{l~3B_pxp5YM-h*P6}INigX?SjIZg4Nxkxi*aBai3Jl15y)?V#!(k^dfr1eFrvZi z+@&KZXx_T7*!f=1!@Y#ECC}~GjT$J@bhbe*d&9WH(;CAIQTNc;l7@V1g`c>Nz+bn_ znbINYGb|ri4lUbMY2NaL4&t2a!r@=J1bLf8$?<;qy*JouXtH1Mpx7h7KwxfPqLuwX zM^wa{%E4%Ap}*Nvx>%uA^r4`cOSTZOk<Qt@2E*@H1ffY+K zjFN5+c=ro*?2#pC;2SLHf$RtETPEP4yfThVpSCDwws(dKuAkqpGIK18RQ=}GH@u4` zfb+#rZ%A1^0Y`?94ASV`?7T-^(8@rHzJ^ju>|WTDC?2Hq@fdZ^KBv;G&`maW#w+7E zxHDeUega8D#b|J6Ox#N3fjtV8NO`bl>`N)L$nTm9D@BA&KplV$F&EVEro~@{7uV$b zzU%6LQxuVeBYe97hE-6yOY2jphtD`Fyz>9`>R&_Z{gVOmyKux7_DY2V+3^`WEpGH_ zOBs)yGesExegZU0mMADT3qj}A7v#nN=Ib*_Ev3;_$rSYsX3N&NYoO#lZR{AthAjev z)`1i00XJQ0t`~xpm`fAa!`i#sP{rrc8M{@9t*{Gx8F(>%RIlKT%k1H`?e|ZsAV43U z`$5w1Am$_F7j?iTB&p1x1x^l=UrkSkw)_l+-!WTRHe5TQTb8YK$5NgX1$QvN->&q; zjD?Yw@0qv}R{_d{7~S>I)rkBy@pnI0XP+pv@UhvXa>ORg$J|;3LCx;7iF@O|MVdw@ zsGRW3pK!7Tj^F~Y++*%b9SSt9CO&BPms-uUXcLf63SOV2HcU*fx>kJonH5NO}v_6zsd)728iEjEl)dS6$$wm zkjFNhCKX0x1Odrqc!}XKzj56Mw&1)k}iW&^+0hhfgdzs+|mSywAbMLOmVUSh{b*oQQl==)y`VF z%}k&4IVwX60NL8PvgNj9KD)PDE)p9v`3f#)mG+^}Z^IM`l^Ne&sO6IZH9rMYWy!4o z37CPgTW~??kd_e2s2voGjSn*e((%O7Xp{FdveqPsFV~g4%$+lmqmD4pgX{rl+c(cY z-VrwV^QJYTQ6K|zP<}$RS>lZM%ZPkP>GX-|*Q_L;P;c;ey?06iz_}0Bicyn`(U2U2 z7QGcIcPh)7qc$MJPAkqrR?w{GxeVnpPX^7crSYedV|7(hPrL(|z%=CaoYobm)L%cXPT5&>%D5}VSpp&Ii;Y^}=38$7Bt46PgWV^!s= zoq$RVNWJ*yWC*trXMdn9BL25=z;tz{b!_6@k+06A-kL`&1wpT%jsIAN)za_FED<5N-s+nmGEJ z)=RWk`XFr)$4PcKrDQii21Faao1zN705>cbUx?lHOaTv@#Feh!Kx4|orp3W9hQ(}M|)vj$<;(By5*ZBHxR5HA4; zFARbzXGdkwSbM@~;|T+sNufvWG=Ea|9gM@^J8@h#(Qz#7^wFr}(vLm{|H&T_Xmy6fuJP&)M z1^UOpCD@d!O1o>|*mT#+u_v8i;hQl1W`}09<&s@Vo!&zX9jHb3x|hNepIa6-TDTnl zxt;Hf!I)P|yN(L;HKZHP-el!jb!&it33eLJRMrpn6k+rZvSY(5f%_O-Gcc6|{}&|8 zRlOsiGIN(puzZVO0y)AREKZgkMJ~TAdP&PG*mme{fu{}F_7y=YVVlM`ENkhW_?zg5 zFhF#5Uk~5x9^Q57nYT3rqR1dltG^WlOZ#Cwq9QF6^TH7r@#mL|*F*m0U}%O!spTp6A2mlALhivWs9aY@Qb| zZ^YKTz6+?cSp8H`pOj-K0$PDy%5{x3@SP)t%0QbGrDLZOU9Z?=e9XeSGOU|$INW?& zlx1`k#XEKP1SZY0Wc&PQ%u2Z;l@XO<1n4pk`u|N z6bbh+KOWwjm=9=|#@8Dx%V~hG-l3#NQeEO$C$>fZfUuEgP;txcuiHE!0|p9L)}DZj zS8AbhSBag%5-y1%(M@XM{#x|q!BOb(bA{R^g}~|j?&@P$9VmH!|J(X#Z}jG?m>)Fu zuphdDGwT3Tk${okiPo=^z|fi449V?nz;R$9a`~_%+RP%YD}CKdx4%h3x?J~5|$W62-X)J!>8{&AjDb^}&WcJ8x&1~KqvMiY&}>@R5h_Z?!;7>0(`L4LLJE9h+# zT>7pHwj050an$pf{YXnR(otV?!#CWR;e)JB>1lGNz}~s{>imVs#N^gtN6rxEGWNt; zThUJMCabzxz#;a3i({g3+<@BO5)!CEMYt_Iaa*9h*R5;%O91)w_c&4Y7S7Aiq!iLy z4*VNkTddvXjCLe8zPlMXTq7q+(rY2UyZiMeOJHN1P%ig2>!vaNDQBrmClftpy3T9u z3kf=Ul$f;ZPTS~B7Cu$elCf|J@7n3aT^>iJzxwizQH4T3)`?v|rbu8y+};cTsPH*e zRXDh@O8~{5$e*Csjh(V$Z3$dv|v(EO*S-hK_q& zdHD13V9E$2Dvc+Rtx40zf>VrGcYW-@6VEnlIW%6)6tcM({yVNXCKSv73Kd;m6$ynR zP`Hb%2s2Jq4+X=!H|dg|K7(pPx=Pi!zP(1>mxqWr`(3;Dg(7_w_s@MH9w&IE2wfej ztmHZ=#g1_&VBS8b#@Y;f9kG0~iRVk#Se|R*VlPARQGU-yT)p*|a4M+G37Tm99cCLk~#swZSKsKN7g&4Km-hExPXV zq5-^lr_3aP6QiqvrOi^eJ>fvzAbN zyq+FAqDR|o$`lueNo64Cl{vrV6=l8-6(q&J7>`Xb(Y*-mz`4774=4S}6R9HPpU%L# z9hM^NgWOcQ+F_q=u)QW)EwD$vK=@o{;UxfvOM{)DmU;kZ-WmPg1>Ws-?i{c`R4~QT zi{4@On905E5?%G0TesfgSslmv?q|DyN5$X&-5W|K9|;6N-!?##OlGnR8+|s}b$4u! zI(iV9oA0=8f}K`Bg6JVLz|4|v0xBNyJn^&x`EJB~UmoiQwH_J7o;Qg=Ta{K!GA?zo zod!~_qTz5B5pD(P#QEkGUs}z^P9w?MS;_>{&@c}1uf6$c{UO%Wr2e0K4%TDe#sr>q z*lZUa3#IqyoM4Y+L8rR}7%-c8L5rl!bPHOT6{>VU+BmT}SiIM+2b%oH?TJ%S5s zjWrPnBc$(StR{@u0M_QF_3s9Vun;JzP6MIk2z9=aTIru(Q*J#8uYY2W$_((w_c+h= zbf%w6ZM=a3D_KWxnjOW|N(PQv#bFk8{5gyBA7+q~AxM%R)sEpj)U5pq__I%iHu`J` zxcci$l|UY9Xi&OeIBs!1dgXR)Ze{?&fSijVvpM*b+Am!Cr&aN%S6HGIRGlm*cx{o+ z(;g*>c|N0hM1`TE><9jxdQM=wQkLhisuQ3$U!IH2a{L>e=0bxJ(p4l4dqpy#;)NU9vtb=$z;J}9=z`E-{OR%w- zR%@OWF_J}N1J9pj@1Q2r|E@aC52(zl-c#9OpC=yaqBA))nGPe>f~}F}F_6+53beTG zTU=WK>!-gZE|C5a7}LmgcxZP%o*Ii_(J#-E zndL&(6tjxte6f&umJQX3htlcdxjs#JhJ5H#H+rz|7rm%-n!g@`3Txutkt#-mipLb( zEa*SQ!Jo@OIE@0JqFidV$4t&1fjh*Vrw-7H2KAd&>m@Tr92RLtjP9WoZ4y*IoZkOe z3jn(@Ncj|Rik%|f!<_2mch**)85o~uknw%%v7yG3aDekj1W%wr?QGyB#}tHvvBx~- zw1b(IH|>7RY3IUiAbR>ZIPo{#JwjA{xaY`GLDu&CbGCIph>c|Y^qaM1;OZFm>w&Iq zf4`*X9soG@_D#UR%`MH5k*knqPk}(7m~#5W(}6sLhLQP@?n+tNrq6g8Nr&U$Na4Yy z6BrN~9FI;vDOX6jGc0t>;kEjJBH;k}c2?QAyugcQJedE0&o!?qCQ`LF}(w0JM?E6UOk9yk{=%smG}>jiA3hWeHWT zR#T(pbH_bf2+mRHHI7REcK1K%L8BeYD8}V$2b*e(QHt_DkGYb`tKJ-r9vY;*=3}5W z>P5^)oH$l@6VsVTxIuh5vnXc5eq0h7&V8=-zU`g$09;Zpl6ZDs`>e2EtafX_efsqU z@Yu3?5`4WB9u0rlf;Ut!1DaARx+bjfcpCh+0JFL2Gz}Lc(yEJf1}LuUpYJS(ZG42d za>aGfSzlwIFc&lakW6n5RX4r8Gr3in4)EWiD-$2Gj=prZsNefk)%~q!A$)sF`E6lg zZ(99D^<+|jFDu>*dgd>_Q+Hn6mUl7Uim_OF$9-wl6MW$m?yWkoa85~ZTUO{S-#A8BVe_^@nE2W8~$zwkTg956N7D{1de_)N4lB<;zPm zC;J~;Z~wVD*dVgGwt)up;kF<14O>)ef&=XcTL0dMta?@ZK7BfgF=Ou)_m(p$$1#96 z(4n1Icu|I$UZL-x(ezD~4eEmEYA(ih*5og6jYLL6G>iLJwkN7e zvnMV%N{sf{WR=vPUemx8=bJVUV87rI+5!k8&Td*uhY2kQprQ=j9ViRPGe&t*ik^d)s7HOK}D{ zLvAT|!BV{ldW+-=pl#{COBhw)3X5ShI?Jp^?=~P~S!d(JrRdy#R$UVrilTGeC|?`0 ziFM{0WwT2H`7i)(A|~g@+z{^gwzW?!1&e#6Mnbn$Z{Bk-0_V*xwRua;iEytqYI~oC ztkw7wLOSqIm<1fz76vdh>7&vT-J7ieQ7^h1UHs!lW!+;mi*bbb)DeXrhxvdX{XF=e4(i&MTL5W^Fg0!Y_z8RK zlg{g;4R%h;XUP1^Cp< zs37(Vv_p^dh%asE{JtI1Xz;O_1lOS;drRvRV;F7R1k8W!i=zuNjB<&Js-}c;IPMTXou-Z|VpKn17ai_m#*Q7K1<+@o= zaaXj9vGDYR$sU(=JpeIzV0Kh8>sWv+6HFP>XMC}TT$;Zu34nibx>X={+eKGLP;1Uc zJzHZ4>O-kL;{CP|8X9pe2jEq{I2o!m&h4CsbT3)RFsq4q?FrJNK#iFo17bgHmg{-@hFv0n@^RG{-`c`cgYL2-Y4s>MPg~i1|~~sT{122 z|4O3v#*xK61p~&7jQxkcyLG(z=`eV9IjltT5K-uGnHo)&e(Lr)tpal6D zY8`6~9m9@kR0990b|ry1=2vq6^_+k369)#IaT}|1gAzwI@x>~BympMa!*{1&7xw`l zbPXf8#SxpHux2Q%AlWGRlaWW{+CYu zMUC~!B?AQ|eI@(!81&dGvzx~qJ#MzefKaOs?(8?CSn$S)OgXREnwZnO6Ncb!Tn~+| zO2Hx{cd_$|KLAyBuBkE{bkYO)#~6YXJNo&Pn4d=LZ|zN61$Mtw8v6-E1|Ngz_*wE0 z!nIFoZD7oUpSf;U^arSWmhJY#)N}!8g&S%gZk$7JW40(W#EhVG6D)ihMyu`>V3cSe zrCr;$qY%`{5ftA-(>*(h!0ZS^qVMW3o za(sF8{c+y!|8wZQ>SR^o^^}=DxqMj=i5gi@oS*D_^SG?4c@o{8Ei$RIp>h$?#-WRS z7a+1K}kGjF@} zMrL;O{z;pYuf`QcRBaCkA;O3^)ADmZqQ=w(i)K&$?b z2om&7&J;xT(zI;$we&JbeJaJBtn=akWZ?5t4psu}k>zMN?dCe$)aW6iZ{sRx|5KcB zHDQtZ_Z$Y!@3vY^)QT(l&%acAW*B~)9H0e+txhuyra0O^AW2;q?X;Bvfnh0NhGE@S zO0%5r*qcXt4yL9LJ{dtolmLLvy&aOG+Nm#L-m~V0bbVK#z4+eBxEq;g$PR%`6^AuH zl6uF++j)Ob1)Sm%uw#nivT#CI0CTR%?+1C*!LAONR_em6cX{4Yko=P}P$o=@!!MrL<-sJC;#uwsjvL_kMeXXww2l!gQVA3Pa=JD* z!A5n5AeaYn&9&sIpF1;V2r~;T>40;gQFKKK8y2xHgp7HdO7j-14t|FmSk$B^d zGQGz!Fxq$E`-((b3CPLg;g?zw_pkJB=8p64B1V1zXgQb13uJkp`Sx;iw9rh>OZ05Z^X8|@n(zsI%7#)|)gY`=T zxA)FBJ`)c5^7Nj=RZp;ws@Xf_U|n@kP=N2vS9X07f|0}AQVG^Zo0mLy??)yB$;pp9 z4LkFkpNb00F||*~f-WI>2>Jvz0MB<=G9N63Io!!PRs_KN{dJqei-?_W zCx*8caCc9X34SzYkF-Mz%q7cTGu0Les=fWc&%{f;15lltp+S3kqMGBry`EDq;4XbRff)u~t6hpWxe_n;14DCwS<=rV@x z0cgsY%bx< zi5qk7B@#W%NIS{>M?84vlk&~y+kl_j0=Ff1cDc93+b!8@a6@KZX?Zx1oC<|!J?;mjEd;xwgq|WBwriZb>Qv9{ zcvkhdRHYY z#VIvG%*i5rH@0u|5%bq2Z|y<|75=KL02{o!ltz)$jc7s8n;>icnbE2G=f$?Mmv-7b_B@)*c_z2v&6L8g8U{p8 zx+znD7;0CaaGHYZ0o3;532AA$e>7#X&DaI%qlOPHn6u$kyqKc-I3VXCJ$pi}2$b1yC?{RRFBDIGcoKobmdCw%y5_(M>r%+28(? z|78y&rB#uSuh5CBAH`s3pa=KRC2I>;3?{`NR7D8}-^C{$na#jYcG~F1hZB$9QSp}z zPt+TQi;iMWQ=s3(N^9v7o=pz%o)*MswF+6ZIII~yyzKJ0T}N7HOsAAWg-mXA-|2zK z9P$CTu`rhrKRSQg9cWcW;_>Cf^JGNvxB8q(mGFuVOlGbzyvrpJWpy0T*dh)G8fsqy z<8!)IVVY8DCy8+BOW)6L%T;&6($5qY7fwgS#y=rva05PD%DUis!N}W^DVMS5SE=km zjAG88cnMQ~*M({J=^^iyJgsRt5xoIwq&Mwi{3L!>uzi^ea31}04zlqW2UeomH7E-c z$bX?g9+=~o-*j0954Zlzso9?othfaYx>Yy}>A#L?if}`BfI(qS!1sw}b4zYec!Ge# zC801K#II5ucp6*zKX8O0@)tGY_A~(iQv^<7^g9#oLsXtRrE3!L9K2@Dg?C{RZ5G~? z@By{G_Tc;}TAZ$x^Jud5EqEKXiHJoJlUZCX;!iuyt+GtagWiDWPQ&v#xT2cl0$ncg z7=l3U-2~Qf9y@5AJnVZu;Tnt`>kc{|mU9pSnPNWD(%#sR+4>&iWLx!`66Xxg8TeBy zB20<0>G;l>D)%!WYa6umV_!#aueW<%1OnMdy#6jDo!zgZvqh-A0H%Am8~SzMRGr}O z!|;IXf(2N;R7^d_7pbU=lozK|2dtGR3<-69{iUtsAy4GJ>4}(ok*t-$-O}|Ucjq(- znO;G3XL*#cim4wK%w{^LnEU8^vPUYT1q$|NHX4DZt#~36ODsd)O8%|_Adh9=W87$F zcS+Qq*xmgII-1fto}D9xd8tm$2xIV{FWEc}>`Nvnj3e&ca)+pZe2|I5Jvq)0D&glm|Fdae-CT^fCY{3njCgW2`$1VaHzXYJS#+-7{LmGKGwo zf^?|Z@42A!lqC@m9RLt}08Hal&}u3CQJ{P} zOqDqRU+lD1zxEEY{=gi(u+JWWHZ!x?nM<=#m+Yyv*TdS!35vot|0)8Y4P`>rW z^TjC&8#<$nUl+PEiR`19n(xSR^^VZ4Ef#TUxE_AU5kGx#7dhfH!+=4p-Y;JfSEiO% z{tA-{-u2#?7cg6@#+)MlU*aA+;7leZw*%8Yd(2DmBoBbmzthd{C~|5UjAgmf0!(*{ zcTa*O@8q+MTjELAN!{6(OFx|@*SU@Go^N4UmS)Wr5yM3gSN1}+KJ!LlbE4$Uxo~E= zX!dzD)@7Zl+p%nAM`nKVkR*NeQ!%4WsK(itS8;Wx!EFPx$jGOgqVQ|A8Ej zooIoPb%?C8?c|Dm(a4csBD3U$k z?f0oKg6bkY`xUBgR=4B!Xb{hUbG++d^;)3*A{UpOl{SUEDM%Tz&Un!UFx?Ei^rYKo z8YRXw^=r@$PVDy=$QV~VK8cikn*6+76?YYQ$~*qNj^DJy;C7ock!xJQmMq81DT^_< zy2YGg3+j*YzsQUTOzu~L#jP!f#w((Gk-P3qg`RuLG6$;JD&Wz-mbs*D{qt`izaUt^ zq3`VJg|=`O_HaAc@fkZv&7bhz;P>U2sm~qB%x}xv&n#~4*H2Y_Rm-SFflNzxsKm)q zq3ltn0eBXM0s7_KKwsup2XTPJxl73n6-bh-63;4<{JLoD*wkthd))9nQqj7&{sfOd zkB(EK62J#b&r}S^aNPP{JKdy_-gu05_MrialSKyy=I7^*?t5a;rBf_zT1ke8@SJY6 z|D>a&L=cq9O5(2BM2|U2cMsqME&%hCUb!C956%4zn5ufJ<6JL8y707*dNNfWO{ny- z&N{ZMj;~A~La6KO`OEXckNy=Lk*MpAt&I0sVfUQ;QWI3(d8<0%Ier&>>)Qk+6PJ3%6lJ&(h-qC;LfH80rA z@M~zv)t=M`Ff^95g zcNG^m=Yo%AsrHb%947F?PJJ848wU(uw72||$aZhSm`@)iPkf{_ZKrC?8L#nbFpt{3 z(zG%SRWs8^gU!0xZHahje@+1uu`GS8O>B~>^yk#86zlVh*QAN?o%tOsb0`l9@c+CUX}#ijgSLIW3NzFoM+sB6P|>(kn`L5xW<}}+D!Q)$9&fH+-I}_N4(_S~}x9n=7wKxg(76lN9hHQ!H1GIvm2D?tW3A%;Ir$-@LWG-))eiwz%+j3DdQ)-71fT6a=VU^fN=>C0%A zlL}namuS+Y#9}RNOkdjHut~hd<(13%(ctA09cb6S^d;Kd`R4_WLtbF+%vE@S@ycFQ zHqD8mER3BTFp|*m3ghm2V$-Qd6vpg8BhTQr-XrA#|_0k%!0V zS5WNjiL?b59<$=l_ex={$C0tNhX&lfrBg6bILIgZq6R^Ngli|7LIGj;fj>>Z=c)(( zbRvLv=KE7Be~vP(Y8hQ2a55;y$x!lR$i^5{n4M!^N!QcNO>deY$TA>js!Rry&p|M$ zyaWZOJnqL#e*26!6(7dk21Lj%kib+ZT1^Jp`levoC$`3R1JLkOS+0~>myrQ71e4FO zwTfHK+Gj|g(n!}?{rM}nS%xGdqjk^*PCq3ePB6?T7&&|!F`RrS2L&1{|UEy z<75leUKzb}I@@0O&$W)01K7e``vNPxhm>qy(<4xmd-r95GtYfkp2c=IL+4-VkvK!} zdglhvj}Ny;GjCcCRGp09H*R2y&x?I~aLFz=Li%ST>Cl>Y-3_MHt%SbvwI5qh^V>3u z-)an}jXz=1Hs9Cl1;a5SC~r!pU;m@c))ATH zx3h<37KN}6vf&DYyLu;_Fm8llSgs+1Znb%Y>5|PgRXXJ;iQ4X3G;qU<)q6^l5eC z2SX|zKc0WGUub0eH?Z|hT}T%x@aB{qt%2J4u&^(}Air^)XZhH{9@KvwJyHV^eeTtr z>NQriq$Z8F5bKkD>6MsB>US%Q*(2UI9OxGS5+BdW%`gKHu7yhgT-B3pcrD&Z@dudz z7}Yk=WMlCs-eS3kR)c-O0NcTwMfXpOSfj$ZO3t7VEz1i?6Yvg2sMy$@$kD~W7d)y@hl*2Su@+^)TALTg0( z89F^)lNGL`n7$)?Xj1r?G>T_Uwfh!{G)DGK4;%cBtSb--kqfj0h7#y&=bVlRs8-Aa zLv~@ga~$a#kxOu~*ri2A-~f2F$0z@p+m$84OlEmy$1CJT~ZM&OnkW^*KzphNwtACk=4ttgV#XwSAw+a4YzhF z%?>>gB@wtQmYR>{Z)OJB{nV0PPeqcXZRiokC}c?>;^`2WMHIc^w@bk86?)5K&e<}- z`2naycuk}nh8*73N4O?UY(3GBj)v8y)5)npR^lskYJzsCE6keTjN^g+RA%_;AP9q2 zjIf2c-#0*brk!Rohsi2M4By9npAvoH&6vHPBK5rkFSW?J&G2}X87N(Fw65noT@GJi z{{=;WXqB<+I}k{(fsxd4W_V3Xs25dP-@lS|4Ox4QXV-hld9=$gAJ^@{d4Bhh78)hn zgJ6;+B+J&vPlJL1D?%*$f6Ys28oV31*sMOKIdi1z&7Y8z%8guum+$>9mFj;J60uCt zfwND=lP4ZqdR*ni-Qsm?FyV{}Pk95oqlY`IOqek`FRl{E7o(t`0BMM)$+VwcdSn(Z z7{B2V{y%;BJ?xy?m=vNi#O=NeH_* z3gJH2PNGBZ! zVyX{-WKK%Fh|L4qw|o3|Za=tm(yy2%d|45oj`-;`x&c~g5cOTzXpp)G@e2obd%hQ2 z5pZE)tpo%;8{KcW4|ef*KEz-SzSQ!X*KcR&XPkwy)1E^)RCTM$##fCe@{)Wl%wWvm zMN)!5`d84fCi+pcYJg_1k30)*M~^(!SFCU&NVJ6fu488NI~|7vccY@9K=^XxEbAJ1 z`u|Y_+&Wa;o*>apndFeCeBc`^45H#_i*NM4$M&h!9@t2#vP`;bfhbw~aSzWk9SZ_= z)*Fhq=5;VMe3#vWY247E)^L~L0N6bz)F>ZWb5Ms3MfF_rPSqj_9&e}cQ(HyC7$!$k{^|wOg|%nS(ci@e zK$Da)?@`UTf>@G(seopZnpLVAN97vtm(g85sbbk@)KjZ!kJ_b`BgF+oS}BtcFpcvR zVW!UMyUS2fM(V1b{H;bh~NQ%#Kw-0dSoM{w9QUCHzwp5CpuwTpLvw_ger4 zHatc?{1*$3jC#R%uBv4qp?Ebgy?_W2ii|vwb_+(g<&1u41etqtK4QlrNJYHAK+} zN=uu3Nqz7k8bzffT~wyo;Ad^!gi9 zORV|Ud2&EA9jR#$A+t?d0q={9{Xl1?UGeqRbzJmzLa?*23@zK(yJ&$|BObvvH4aFr zb6=pn;)8tj}u=u0kn?xH%VR46H*)b=jzfih4Ff`OWu(Q%~LKW|)1%v2WulhmFk|6GUhO<8NI-~vDLmG`=IRK(~m4oGF_XU{Q7(~m)ob*HT^v0oCk2Dj|g z=YcMWuR`Q3=iEKd6PF1%Ute0KpIA4L^3GVdqB-u|(@KwG-Sm|5A4g5_L6hQ&lJo@M z&P&?6bf3mD*bbFgx9%bNcbvnLv>(wQtkAx6Km^wX+3lVw&OU4XfklIN!XHSvevIJ$rc9k@s zq^n!OMQ0xJ&Bk|^oE|$UC%NV*DLcY*5%&R#;yZSWn9=e8{&vabP$SuAQXPGKV-Wr| zgT85J4Q(bc!L$oskYbcH8tncK=egG->H(ND{qqEV4AFe?Rr0O{6*ul9{SrhX$E;o0 zgYMG>oU@&$KhOUXz1Xa0&Y!1jq-tZvbFM60nhb-ZI*vYc+yI+*jxuN*W>s+!2x#kvcTYOOhu5d7}Kpwq>5c`|>E<~G6 zp-k4fn?}nm@LfC1;?7hYFTt+SunaFfZvtcLza7ReWSrAm_Gm~yPUbB*HTjcZLd&xl z#6ced2&Z)rhYed83@C!KlLz&%PdFcHw{EcsY~Wid9F1K$nq4pc6BtB)QJe|vHsn+k zEpnc|pnv9&UWlZrb%t2jL3uShxS7*=1 zqrt-Wme~?rF|5a{6tzFd9vOxPmHR^@W(U1(5vlgTfp`*(^0_k#UR8A0Jd>hHPoA|$ z{b`( z&&PIz{w@MenAZfAt1YEXfYPL@}#l ztK>No&y|IB{3zzk=2pl(Ag~(loxCL4XK4&`BO3}de&LR zr*^e{2_8(f>*_$w4VF&i?rI!K8=>Yx>TS~_W{UxumR3w0|I zZ5w^=AX*dNJ;~58nYEzr-F0@5I=9CtxDY?%*Tic~nLi}a%LrhcElx)G^E{v!*pqMw zg`kFY{3lI7Jkq=%TsDv4N|A>Qdl|H2+j|L<<@Po9Io;8AvY8ks$6dpPYfFP>-YW0g6l1|a4_cTB|rqW&kZm0Y<*_8Jx1c5}x4f$YP?zvR|V>N}7aVCRb$d){9KVW{! zl<+x0Bsp}R<9DeMG(Vu0IA;0$!I!}LcU>Zh2FHlD2op)~u>LX+B3SSKLrzfcV zFBR<4$KRxTCg05jU#K4;H+a$s{{*!K*hy_d=U)gM4d6Jy0?MGTkkOIu=0y`thQExk zjFoJ0teD1^-s;yQqIJHq9an*W?JJ~`GZ~4b=`I34py41v<(@G>M8!|9OA&KMV3d@e zj{YN|l2pYjvhXgph!4)Uwzr8165O3bFJzlO)ub^bBO{f*?#}4PY;%#ouo|RK07xu5 z|1|Q`$LTPpl|ujoeNSWf426mFAdHU-aX8(+;k`PP_l5Ae z!VL;sIrH6pLW+{R{&Y}Ch}->{pd&BrBbstc zpeg?CQbM)?y0$$lKnch`L;y73VeCm@j= zZFOQCfl}uQX|~3yqUsC$p$6SeNYIjWS2?NfMh_#GdK`sBR4UZyY(+9gNbOuQJh6d8 znezFw$zgn^Ri!QygjDQTne!GZ?kvf!ODR4=hGd}cL6ShTvM*8m%)9=3AOWM(j(6wq z?D>H}0J5pb%HGG?_2*A(Y$6O5M2%H)o2vj%+>?w7gC?t}0e&zgCPZUthlfA!y~Npj zHRQVxZ9!OMqd*+8SM$MJU_?X@<3zmpD4@Lt&@z^YVANAhoeeB5(bo8dTuWegnUXz2 z*cRTHwanIZm3*b!pB=Sf?3{wm7hKv^i@w=vbj=k*6QhQ zT$Jp-Q%x%_&AOEKV)!7`ZW)rT_w z175-ys1>6PKTyUxA!H9xZ^?{Y7!Mvj*L#h535eNDDT8chp-*0lqzJbdwfDog*P!g@ zG0Jk!9K_HCelm~Lm1ZJXs)cu{uB1a^5qv(J+l49JFFOr$MS^H= zf6NXfrk4;D$}BYaTjo{8MZFNP+^m4FncZ8Q(nFuWRjDM_pSiz{MqM$E?)268`X zOLu{UL4sRgU!IhZ;f=uhTri7<$FY6 zPKCypjO(usqx;FFisf0H)ygU^yBA+Su0Z(aJHvT#%nZiNe}`d&{f!s)J0umD_s`={ z^QbCXTos6zL*TS7-I842{7Q3>HGV`X({v)a6I8aZ85RWgP$=7AnG0+nNs{DrX`#6> z1l7Du8uET#Xp`9!+~3?kHaG$VA2~uvHHr4o}T}>@Nq4f1mJD zbD-6``YGC7Ah|m2^!x)`ZUauSWr^4vlf>H%hBU%tX_22pHy!^h;A^OO$%>hcT!Bl{ zh2b@?8#A<#b6S*PR-(^E?!dpVKwFFtP-M5Ee}I20(l+D!2c@Xd)@T|_2)s5U?vmQ* zMLv|DTO?#~zTG=ifbhu*%DL^gKSAK8 z8w5R4f{cV1kE6!y-R{OG#%iXgox?>jq^h*PrE8$J7`#_K6-2ZIzh8SqqW_OZ3MiJc z}Ti~7xo_u$(e7n0>lS4yq z-svXuf2TaY4~@O=1`N|SzH%tAx18@+iWqe+ID~#uP{vhK$(fHdixaVJkD=uNT8S6A zmb7=WSwF$lvW#6HfZ1qwu1LOOQ@RFvmxT<@G=nyjpseO-0;&sdER$2V( z_ItBoVaF@{W-~sV$G=#=QWo)i3;{Fv*II^d*n!Tt`NUoO{?Q9(F}K)JUd-~zSh*d=W&}F?IzrP+K3S+*W`C_w z%%VOZ`)Bdz=JXUrvn|_xIcPMCMQb!Mlm!z6xTV*FpfR zS#cmVGy(BVoVZRI!gd!$VGNxd)=5IX0binfU0U5;!1xWj>fC#kERozgt3>yqe|HgF zYu?$w>XoW9`Ey*TuSKTS2*2Vc+}9F-wYFNvA|hH4K%Z_4C0`d)%h=zQj`h}FMlez% z>`tt_lTfMCP<>J=p-9>E9a9JRSd!T*Szct}&1{lnvvbs*aRJ`M+Fz%G!tgQkYps|U3N-7|vtlkqcr)6MIYVG6npC7@>w=o)}WaUxazfQp#AAwfgW_1=# z54Rq*9r+{%Clv2|fcF86<6X#~nu^H-Hx9M_>L8l5yZ_{#5?G6_Bj|Cue2;}{wzHzn z@ANTGI1o{`2z4-8D&U6Jrne$;ZxPP0=(HyMjbW;xkH~nxFx7@7Gy!r z$C4(TxK8nZ^G_vKL6}fRC++^?b_w*EhT&N<^A7+D<@V~4&kwaM<$E$OYJp3%1gWV9 zt6j*jS#f;~W_0oay|cthC=|)cpmM;KyDQzdKXV{A`$UPS{b`mbLm=mjTgK2q^Y?_k zmSmwM@>(v3dwB0DW7RB_u4r1CD{X<>&8h>{#o4Cs5(R7~3k2)7rL5_y8`B3K6JD)` z+L^P z)g2Jwya4gRx?8&s<2WK%`aC!5FiMbrapW4vJx2xiDAU&%+?670-t_T@p50|27-To- zWm@m9O@Ea<9V5kprWLit&h?q)DB`73kiYzHu899sML9cw(6jv-=E3LKf3N_EwD{nU z!kH`e1WMyk@^Zjy-G}z+FodWnkAKjj(sdrIC?_vw#I2M){~KMhN8{Lkq0U}Hn)?lB z&k%NA`L0HN2Qp{Y_=_l+j*N5uewWTrYaz$=(Mx*|(p`VBa^D@mjetgaPSdgk_l!CP zk0*25Lps=7jNw1kp+7+s@I6sEkoibbX@>M;PM*hO-2vR|D8wFQ$==i`H>G9hMCRD1 z)@Oz)Y4$uBH}CKM75)MVOTGhIGmzi4WU+fj+5xZv*V$9<&bWolXKmc|>*4iOBI9o) zop!cxl99m`U0(A?n~xn^3#JoS^g%Brm`rR)lN=qWg&?C-#$P#2?6j!nqISe0KmL~U zHXI08gR%mxC^wHILKNzHAkw;g1VoErh~XGdZGq{32_&?-TdEl;8gIM1tpFV24o&2u zD`Ea?4|Jeul%(OH&iPPtHEQ+J{g*ZN$8OglQn|jMZTCRVw@ctS%H-US%nGP(#9vK} zZuUS#tl9h~m3uSANCQh@-?_E#OdMclm{*Renr&TV)qbvavluQ2e~vG3VYU(MxIy%ypyVk7b>FMJ@#+2mW#;FYwG-I$&+FxfvN~@#7~{!maGi1X zPGR)ax{4MKl(&c=pQq>!We~z@-w4!><+Wl9Z>{~elKRIHO=FNo`ZkD=E;wDh@$0<$ zWuX$q?N`eU13}>2?O>oh;V^G|DuQ-)@osIG5yYCK@ds-lz%GaEi2aKN3;qL8YocT7 z4wJ~(fL!eILdyKR-R{+6%Dd~d>?=(Yg<(XD7^m8vGFc*9%n-B_5#?+5BOCwwDBb3* zd7v+dhQJuT^{lpe(ECoRR!%#nm5eT=!?NRfjxqXf>TnrFQY39}DFuKRdJbNNXNf;! z5KQKi+jJ{u4w_dI_CEb$#gd>T4DK6EKPtUQDOE>K@jz<|(Jdl-vyn-iwiG{1AzCeu zs<0e)Y9t2T!cF?yEH(>aVbOtv_YkO14B!Wn!+|C#hMn?GY#Oc4PRB*<*cQ>11SZaN zqrR#KltmzFgP;wcSfux{;!myUO%e|089Ffsr@_LU!p*?YEo~mx0y4vtEcW!bm^=yG z6R-T>L}csey0Plx%~L#zy_fnP>C;aKKhAk_3itRqD)pBv)(5tp;lXEu{X@vhOU4l; zE~ps%AavZ-eF^$(Cf#oi9msJ0i`v39>&;EJ%ddZVsd~_{ylQPfJlWCzRxymqg?Rs0 zy_s}{Tjj5xEcY6*d=cMfB$6_ruPm&syI5*zPTXDM&zxy_I zMt|`?T=36u$~4@4PcSWY?(0kw4A#>0IEg)+*+vjOPm92mqb|E3u%!uX9W^_o*nq^f?8fXi46W(v=()8lOSLF5wK z8i1Rt=2Qi=C8p7al_5=XJpG;xZZv}~CX+gDZBYlWQLj&oWYKJ)m0Hg7U|lktQ-9om>$QKi3(}JRS5F zb%vu^%649pjOQR3rnD^7#hw=my6wlLX2oRx2(L^wq8!rbtnXQpUfMD+Z|5xp@~8TX zb?eNVz9i*vsUBZLIy95xv&xbCk)sGPimy*4=*14XdO(kx99LOZ!llmBpLU_JZmYkE ziT;bI$P%9Im%o1=VXJPp&>dC2wIWXXCfbW}sXRINtD{;QMB)$3r6Cqg6tUf6Md8T@ z6zT!LDw=0KWdRMP)%&>Gxb$3Zzxiu_Owq7n!1qre7o=3?-Yv`6!^Zlu`38}67hsQ= zw=gg{nkzq2zXld6r*eTuAg219w&WE-J5+yT2rwwdZ@S~cyul^5i^LQ4{pbuvF z+}ukc3^659`-fAt~BoOCwL)m0JJvgT0o&V#p$*Z^E z!6E)7zg!=#w+9)S1Ek;D^?^jv;DWwm_6p4A%Hpudn3!v=arP%TbdDX<@c}+dv1D4zA+8%kp`DfjA1c@rx0ks6|z#xDYn7aTYnj8|@uMs#Nt_n43QLFM2= znWy@D4C^^mukGqYZDUpm^ryR7(r=ja^|kB^w40Rzi@Q_R2uA5GP3k?elR^bt-D&QoO7*2;B9k;Ywei^T`n`-+yUddcK3{ z;WM3svfE*|yk3@#QaMX2&O<>QupoIZb{Cw!SN=el))CGyacG5pj`Y=RQ7m@^-klJ- zUi@6*vEF0BlU}TzO3Z?tg=W76j*=Ai~;s=wY735cRsl(j2HBC}jg>*n8jG@wVf zmM;zBb12JBR}FG&FJqFi@gkq0fGDvp#g7RLdb@ujPxFEBJzF-D;zhkHh2KY)3F-zuZ}FwnTXPr?gpZI8AzU(vn}l10mNewG00qvL3@Z8UGZ*q?_tQ8YQq8Tj>KI- zrii2os=y}FOL+55uMIl>obm{^DFYJL9EtR^2N35~f7ib4E8@(i_xo?LOep>M79SSD zSYXeG_b|?ipvvxRAqDiOk6%{)<)Hk#%eQv(f3$NV?^d3NqdRP`EStD{Ayr z^@>zuyM*rM^5|fe|Djj;uz{he_3hfN%R{CUfUo!tQ|(6a%S}!pEi??uOqcvoB^fVQ zkkj7V;l~$9CKs}fcvbszM#5N22rpHJeHWYoFlo5P7M83T83QB@vLQYLn!*orZMaZJ z7Xy?gpm0v-n4XXe(wLW@s8bqbMWWSLqvSIPEiQko_4bgSjTTvgOw%A&E#qgQ2!6;laO-_Ir*b0x5{T?vJ{dEf~E2pu`Y(bX#29*&ERE zW9NO8ZBgO-D$&%_6YPY+XwqCH2Znq*eCQqtlVe2q*tMF zWZE}vooafDibul1cddb7Wn&(I6HaQW&>H4Mjk&PM%+#$P4M~#-o+;codbjyDDf9_% z?GDdz+7q@8+}tX?%=tP>qGUoA3Yrv_6iM8+C^7v@*w+Ww&*$FD=H@x|K{vIkgTFS_ zRO*+1UF(s<%ESZj8!KbTKYS(^Dtq3qbV{!N>>PWbSGVB1zH(M1I#bYbrg}J<;z%3S zjrD}~9x{QlP|!-ZKI5ct>YDW83G)<16pUF@;0Q1?KTSm&=fLLW<&`3go;JN_A>0yRF4FlPG?& zuO_?`3-j|;LBvr%04#U8|IKS}N2vBxS;nLAqxO4|87M`{pQFM|0gR=^rp`QGn~b4! z=Z~gzSNY0QED_^M*?Zz1;O+{$)W0NyIIp&uN#X1YobF%pYY8Ax-O0t zFF%xaoQ!$`jJl|ARCP?dSryhcH{*-rLl=}P06p3x%0tV^yEf+3ICE{V(BRCcwkl61 zBehnCXSY24as{wmtgjJ$%l-`*mvY+J*w}sSjccr_J2o1;kdz$*mb8Lqozi#0Hb{T- z*T*9wam}aJHa03-vRquxb`NX`txga$Hx@y0^l2~O$DVRBJ~sT+D3Y@GCucL9Uf+QS zOwJchhtN_JkfYYEd>RWw)?savP`(VmLZF1gu2fySJj7y$)ABSOcq}R(QxC>h{kWh? z9R2N7NC}Y2iT4{ln>w%XDYf4qusRgEjCqrpD2b@jUClvar*%~K1S?kVc&>WhcH>Dm_5z!2< zJlic_JEUa6Ir9E23Dw)|THEsBo&J?-iiMjS%p+Thrk;%F<%1_5Y+YS95x*X$MQ$@l zL?qz(tm+!|qX%6~IR`3BP6GEPA5Y8K-4t*(JsWr|WWmN4lN7u&3`Jmr1c@U^LV2Ah z*`%a*?Lln(+)pUG4frDxm|g&z>EB?_kXE7s2zq!Vc_*pY1Ye189b)y}1_lfCE2eiF7vB4)hTWd$<*Y>#|DkWL*7D_Sltnb^XMt zURv`}U}8<5eh|4+aMi}cA$sA=o@4Kc1FB8SF+up-8imX0PUqi7LQRM2i1t8blWDxz zv!%tRXI^#Vhj!U9OVMcY+y|u6n@oaY(Kc!4n!KC&j#a-q+I-+(51|h z23M?WUHfaLI#xiwrSas(1)Bqb&ED~Ejq>%;zhu*CVq$uq)t8)3uavDT={R|yRe~ds zw)37omhKdZbmzq|M?0|}J+@|M(kFYEWHw$#E3b98Na5~9TrnT`FeE`HtyCuR{gq`F z)kdvj8m0TlkVL89=0@*Aw9TSN&e4~YoSv9NOHq;QH>}MVztb2EB1fDcCwy3nvW15F zcEz=dRUz$2n}nfeDS@~fT@c>78cZ99Rx*^VYVAh24_|Xc+c)=~=s6ipJpKme-aI_M z7t`W#dH&05?U*e)ab8CEkBMnrEDB6GnE`aCdWMEpYHIYBi#txbh=0UU7C{FGGq&)3 zYH3OM5XYVe`zDf}DsE5E)N@%$f4#WmdA0Dy__xWI#UiwHt&gkUe0w^|K5xH@v4 zd~f&i=l%K>aE6yQ>JsK#+B&uqHV z?#ftNR&V@xJ@IK|9mcxGZ`fU6$sczJGLqbnKeyE zO)O%RuIj7lUuY;;wXv0Smo{GF9(qT6S?YL#lySrgcS!mD8TZ-m+RoKNRA&+wDauFv zQ728uN=xAea(eq1p=>@BM^gUDH3jIgoW^uPSUT7|06=+<=ma>rafm%nb< z1u|m=ix{=#4pQQVf2$=`5XfCN1P?h3pSg z2X@D>wG9B^l(~Lqld9vq;swaGFF^3(mlMz*i*3Jx87mESaYzqLyEo&mk;cbF;p*(o z?u@WCirzMU8^dKZ9t0kJRHOJk&#E zNC(2afKHg)_Fk=o)i1nMsJ=*k^z_kbM{&*vg){Ci%XaxK$R7>kvuySVohy{}fWN3S z=XMmISA?ZWUCS0}Q@1Q_z*%jeyImtR-zp1h)AsLQXGe^_l(U8ZWd0Y^F5uKik=*neFqsIwC&5&>3UA4!gTk=zsUs%aE8paDVEmI*M znu<&n@}s4JCmO3H>P{nqKbTNgj;9f^mD9Ogo7-+%l}3Jx;2qdw75GL$i>}Zk%_K`` z5O(~jubv#mSUdX7)ws7^aad&bxSK@Qx=L@;>tdoDTEBZLX03`6=-AzCb32N5hS?D( zof?D5ON<|4k^rf4^IOZhP&7&KebwgAM62*1G#;{Od6y zzosBHsV|R?_Mb_eB7G0Vh|4}^`4zs95Flerx5`1WyB&nY9v^BsS95fxkQ{$g!O(L{ zQ=iV-py}zIa@O$KnM-4iK2diK#^itp40f)n`(}6+G8byg8y4hM!DREY5mUW19o_5B zHx5RAYmseGp3Th?f-&_;faj1*(bI}6WA)3f7^kr8Bp4c}wy?%MH_*IH>kzH>@w4iK zNoESd@e`V`Ew|K>3j`lp84@|VZuXv<*XNkzyu#uB!nubkn_`85uxl%DHeGTmU|*08 zLe37ElCyW-;&K{OXg^3_T~^M$g>Cz)c_k54PcckdcsqdF}c zo1AJ|c)_vN_eq4td&2Ya^rxE(APUOlJz=|+8*7tOJ(Y2k5~|DaF z=5)GeD{fK~EB7!VTee@Qdd7V>JDH)tKhopA@f_Z!X=5n!x)PHIx+?q%j`)Zw_KFR|-x&SBqonYf{UYP43YLvVfAfmc^rE_e7Fyx%eRa= zXw{%ewXgkSWk_E#%+ff#i7X}T?GB!Sq~9?2C)6jDYRNN2&&&|Orm!Ds7{j|oVhr{J zgmCx5vBRvv>bB;!z-cawD?;vUCs>-lMy72Ui-89CMGz6t-)C4Fd}SWtaP_r}0=(m? z@;?U*&U9xeVgwW@%7f8a&qwH4=l65YD46Srz>2)9g>r}^^(IToj&Gjjc>fFKK2ynQ z@ego@AFP}54mN&hSp`rg0O2c!2TYr1%u6lFbBr6SzCcOd^}8(wI{@k>qgt@j)FAct z&MButcJ2^=ebk9kjgOb8Nn%?@mj zw#~h-+$OVYozYL$8M*PopKsie{odB+HCRwFn zwQYvJtzQn?`0Lq+r`mFU`WpmcHd$g$ppHMr)Pa|JhxQ{cKX39PF*^Qy3@QK6zr zVAxnzshtuq<3$7^)+@-~yD9nibaqmNtD3{u?ip@&KG#$n3#oS2SsMM_23JNNwcJv3vSsBXD#S6oY4WsVoXqjuKkM2ZyZR!!5jj42cvdkK zyr)KlWOkO2V?D?1coeEp0A=1&&39a;ZA7EiqLO^4iPnwsgs;Xor`B_i81Wt|OPylC z<26$f(VT;Lx#Ak>7%#D;)TTRI*@H3xMtAA}g(dnf=9vNXdz-qZJ&)=oK?TzEk=}f> z@R2diuIMmyCS(>+<0*PR5Mv8+mlBz<$UYK=fAyKYjCPKH>5w6 z0v}QrY#er~CuL2OQTuHpzqF?IH65{ZmOdJ(El29C^9gTMY_}NB`I%tXdB*?|@+3s4 z_r$7hIqTb&#%@igpauU$74~Ptqt*ly65{DOJ&Tv^ZEz`5^5NShgc+KZa%1<|+8)4%N9%DHn?7(SC0hFT*kM1oW4`}~%z!a?~ zcTyX4pR_t%;6L9$BA_w-WBA+1g~<4b?~eT>3P;T^n6TeHTp?j7G+n%U)B0$|yNIZ~|yM7qV1pPjpo|sFIKJF+o@%GPrEtmWeK&s<%+Ga0__L=c`Yfs$j`OS9S$*I0qi>XLOL zob%he-77;9pS^w>trC>XE=RAH3NLqeJp4(q=V2n=`H1GF(7lqz*Vs?9vQJ_HSzi)x zcpr50S9{KXv7BaHHiCouR)o%cI@3FNV9u6-4n^zc8^EjdCRD(q4=ic11PrtuH<`g3&G>-4O z2;b?bz=y@^EbW;UwiWh$awL|CL#qa$O;`gKt*0Ln34RUa4%4Pa2NU~*{DTEp@#KC; zcq}77$~qp0@ZVR329C}UDXvvpJc}@B1!*M9LW@TDdK2dK6<0j? zx%2Lb4^e-jGRY(1#~J~X<}Q^2H$aMTJ`vMiHj%#<1Oh%pxg%_36ftPkdKwfIo0{qR zSpooVns76o@`jzwX{bj1`_jhB$8$NPkPtiCam;3uyOo@PY82U;Fz#cAw?h@5KENB5CSo_4&b%4S6P--^Y{D`JL7%g?L!!(8#?%*S`iALe}+ zE^q!~f9*5&H(S`kk)ozEG=#JA_ znyAzAIK$=9Z|s#i#2%u$Y{=mN{CzP$!GN%;Zt6=?Vi=TD$xMfVMG8O%spHr`ZBrt* zYr6|ovxnKN*Q&|o17^0-@-~#PQY%Bx-@je7!aeseK zz%vYp=${uB5pk14!1zCa5PbK8q0}sIAgIB#!wmSG&n=$J6?q$^U&hJ^HgZg ziNEcbj)2GGAY?xF5%e}(jj#>1P!w-c{%?EPr;ec@6-)#i!graMmvVyAUs=0eXEIT$ zQbn;(Nd&%suL#w~m?D!-Jt*i*uJ0K!6WXG=9T#fhj7(icK@IH=BphUidSff29cry= z|1M>{0m{93*-1Sr$++qcU%}Zq->ZI%d#jUkyDdL;VbZcONEE#k&X9|kaeo%kVg{K@ zEwllHNE~1eY#$)&hKS~9;Ni14oB-KJIs6m?)vT?A*q^~Tx(EDM-)b)Ko|>Xj?q(YN zSd==nzun`1sF&%7$SU*LK&R{nWJu3lNF~@A6KePfJjn?2xB~%O{#=Vq<#U~{cLB)0 zM83`FVnu4Jzh8m}LPv_GyuDDHU&uA8 zzkvqLbY{>Y*Ec)gf09oX9P$(3!pPYZj&mT3eFMXM=@V#nx`nb}2p+|B3)-A+L5@_W z!tW#1eyW^F@{SU*ouF|{XdcXQ*-hbK;QDW)^jX(HK(igjmswV-h5JQ@f9pkR!*_tC zK%~3cP?#ZN!sEd}zm+jdcgPm@&hJX3HiKR(LbxcZ+q3KNtMp}teIpkWI0AZp>d~)v zM|uRH)NaO?Qr{BCB!GSY5x&L#MVuga2djp8&#vNvEnXQj5Tb+S zE7}+)FY-z2iK2`wKenJ6n42%(4`_qn<_pLg>#i09T3hYt@ZhKHR1B;Ka?5COt@=mn ze5*xa++|;1pXPUC0HNr=ykc+@CqX@t-0!pUS`8?Y*-{Q-Wnx|mJHP%x~yxKYC zfuj5h=Q}K4u@=Hr;W!nhgYEMMZs&XV2bV97mE4G%o1agSsDXS-xAv~vbLBOOf35_w zV(5Pd zw4M*j2h9=86j)>&fzue7}Qu;Jr5 z`|+wWz2*{nWQ8!izYU5TA1z^pTEL9E_}4cM@c#`7*)_&uZ7-+_&^j8$w-kvkX+K6> z^gpjW{y_hO@8)+PqNRGq8S}XhAUc#paWyI-ARBC+0JzwT%DSP~=mUlD&^JM)PQA`$ z6D}3ABT7qjM`CBl)Y|O1Vz=G_zsR!UgRST#^CO*JB=BmN`oMSIIE5Lw*1@v=Z0~t9=A<7@6HP1T0Q&;+!5C&Z*P9O_rR9k zrfUYd#mxEW_sYvT^jHVxE8EYrg)OW9n)Z5oxT`xOlsV_%aHbH3Xz$r^vD}ej&9A;0 zM#6L|FNcSRr_TTs`@J}vZXDMUe}&V*`QPQ8BbR@K&7DK8kaDw zGlT;IA%YFhf7`iEkW1tV|90Y2)3R#JFOd3SpOm}{cL7U<>k!#G@5$Eaje5^eBVx;L z5hicT`QYQmx!tK_G=dfZnXF#1afI0yr99Ux##=Nx_3D6m2@UGh5UZ+9A;l_flp0&W z;=n`k+n)zsMU0WQBVI>sBaSjLfDSE)j}$Oml^@^U2Qa@n0tLxWvHs)F(IE)XT|aO8 z{rmUfd^Vfg0b?f|IRAL)Rl-YSE59__@Z;s3ko`Y76JB!<dO=-q;5yL@xJ2I$Z%)?LLg`nw-6Ix>dxkgz z7A*iFCn&>oUC*bdBk8ndwNI8R3aQ{izuJ&s1{g%~z($S?K&ei_4<?I6_^ippOLRehfp(Sj4>r8g5-vSHYol1ePSnh#=i z;AIgNK&j(x+YmkBNF;Lcud56UA+DUSfF=$o@tzS7 zxCk(O>)oBrO;?pv)iwhQj=!G>T~7A3sjJ_=l;Mr$iq*QFPWV9iK{e)s^%Jl04}G=9 z29>#2@44R89ni6&D3^{DaSCPm;i#YxXy*ZV@_`b_+MR>}&NO-GDO*E-lEY59 z>4sH8Hr!0lM4YTIZCLvO<~v9w#3AW%LV!6TOrVhmesi7+(}AUx*m-vw+P{0)q=@st z2`j^HB2HFtqO;3lmRYz+cuk%+&x`l(JJ_=zE{M3%O$!%>p0(Jfi`G=CptMvpc|=<0 zUi%GAMLJ^;uO6@x`5js!cMWlx#;D7nZeUlFZwcDpe7Ex4&)z`e!XkLz3f3P1&pVeB z#;B{M(&P@Aohi_F?*K21fDms~9d-Kr6r7x(%H#Vd#C>{R(=Zjhy2(C;4n%xAa6n$2 z;W>BC9B|K5N|d~f7to+Gzzg6}?rG2!h~W?yAH47~`#C#S1{E3_%0q6HcNYKgA^MH5 ze7pfDKTY9UM)_(@?XJ%X`|LUeVuZ&0j($ycz)kQSmy^2q`|ettUjrs1E|s|l+>k0Qu9D)XTzWfg2*H$@1=W*S6i=NhVk1sZ z7r$M^db9WMg8W{V3^pu}<14+|noY;6=M8rsuqLpzYIn?=Ua&rheNX0p`|`8<`#aMs zx=$1zRAlB>$U24u^5GB(BKk3Q2um-j`84DS_dziCV}J&!)mq?}=6i_&gM=1-I2#n< zV~$pkbtQv#gI6uhX3qt5{J|__AOl|e-O{UVZiA)^k5fJxaAC49re|iF=H|md!xjq4 z5yEpu_;B`R!Kd6FeX9lT!L|}dsp4K61FpX<`xF5RbXuPR%JRMrr~k8LEU;upZlkVV{;mu8cniz2oN=}9 z)a3SWdaOI|m=7zhynAzV>?E{I#NXGSicd^r0|tAI-8tPUR$}QT(Ep5wA?jy}O@^Gv z*3JZibhr{l9*eLMM2iO_qI=6a|C*eIaR4A8b2J&Z(j6<6vq7Wp4G4IVHCx8I0`}g~ zp#2V902Af_tvlFCCJCqdJ70~w1KMg;h!39L?g(9zCv$p$Bj!OuC)O$0*b9;I7sGdZ z$sLTvo`2$xbL8^!xLW;=Nqjx|x8VApiS5_csebfI&KEgFoVYUHLZ9bU`mM}DEe4nK zD`bbbhws7)E0H4*U4Bz8U1wzITyGJE^*OU5ojXw&T?mhnCJzwi-yd8L{nsF|$48>C zQX7s_x4hM!qP$f@uwvncwRJlX4=8XnPuR_df^;xOSROg1 z`{$X(#SQu1&>91NEe{f_!<#2$w}=tTQ{eh-y7wFCW$_~bjoTv%7cyBsLgBc*qvMQ@ zQMu!|6&Rsz{d!&a7&3L72iIBdAXwBdcVCMI5xccf1ZPW&lC6;izB@WteFIRsObtL4 zBoUHxdbS(v{f3LMPqCn|WvdYA!MLcK)V3en48liVuM4oT1t*Niy7GNJ4rlZTBTo<} z|Ed^PPXqP@kEUrYQ3b{rK~$KlTEYkm-Ad>%R-r@HfDVdB*ac>($ta;-dPWvCX%Zc3 zQ0sWcD%|(K$7_bo;=))g?K7X0XRH;Ceb18;m)h4a;6JXAt+S_@D*^Q-`=20jPl<}Q zEN!ELjLR^H0!(MXIgCZZS(8hJUMCZ1=26rvolJv$ab{*PXaUL8zMD*f%!lYLTK{{r z=Y$ChdmcP^@CI~h$hyFNJ@bKBNkRF&d!oELwwUeCAleie3r2|V5OPFlb>l_{OzeGT zj}g13nJHxe$;{l5${V~t`&)#qm!1O>V#eV!I&Y}wzdGQ$-Rqx|#d&#Is+ZygGh zRz%5E(YTSL|$Hbo8+L zS-4kUn5Z!Ro8e74Bl+$t{vjUA$&u_UgV{EC#(Q&>&gDrn+ZCkvZv&9>Ac&Gb8HwvE z9#JvkT@h)vw75+qHU{|;qYO8l*!~YQLh;Uv@+GWn#Wao2-P6%&Za ze+UZpLm`O=sr)PY{Ns`j*#qh>YHMrjFOVAHB#iVPUE8MhH@k6H3-S&vRN79P|=SKRITtkZTXEO%Y4^^3&(Sq@W=B0tmd4SJRazbbSt{V_pnpq|$b0h+!(VMy! z4~nPRr?^l+&rb%RGVSqBLGi$@Wq>>X&`Vr=PC{4%IuOEuHqBf>1R`r-a=e@asp(q{ z9MTe?Q|QlZBHpiVcZR51`G*Xga}qKM-@Q_1`xA1IXhbevgPO-M$@|^^p`rI#Dt%I zBiL35I%2}6R^$KKqA7cnd((2q9TJVBXDRIwdN=a)Pbb8!tn$cSZFwXXH{)(TsjlXB zh|~iipXFgHraop5ykVrWsJ0cAoQOl1MqZ!$4S=mDs0>LtUI61UD8dgC6fFy2&hQAY zg8aI={=jR?3miDvcwsnVZIq`@rPw+_BL}zva)c+*Z+tZf)IyG1@O;ewXMcv@D7&vtygXA5gMVWODeVKpvx6{>)8rjjB>%eS z<}18$e}2=SVhxt`%*?ikGHX~|*8MH%yjrX*p z2ilUE$O}Z*@S+Z|@9lb_vA4ntYGN3660vmjzGA&YO`OB6whkxQ&m6Gk z5qE;O*dNFPU&)Qm5g`kDfgMU*qInLF;`Fc{3K$0L9^oVw;kh@g6UQMpp#Ivw97VqN z1G%oC4jmh-2zj`{y$8@N#m~S#{2eVda0DC@iP?+8FbIjo3+%M;-h>w~cn97EW|Pr* z-~4kFR>0Sr|`1$2&P*z!iM5>-bd zi>B`D|3s)rswwY)R%~9r+@n;wUGmT{k)X(d$9F`UORDBu;d3kS<+_(HF@x@GD$Ko7 z1?f`aPmWi&&g!)CnN(a_3sk`3O(LQ(nn^@~F9~S!MZ4SNAQ)6`p80U*RT6w}f)pY; zZIl_8MM^e@R{bBP$Jjh~MHd_Mj{)?L6AGtn zd|;>ou=QyaL2g#T!XnWZ;%UlZnu0E{*D1pZX31y?C6p~7#tGWNer|ui3?c7*ghpRb zXms*VqID6&Y=pDN{L#a9H4IL9p@Wr;JBR=}MhXWvy@TT)AJBouz96(zg(G_(3B&Wc zs=$5Gb2#m;T}yVPN-Wxyj}Crhrmhg0=@32@%g{WH@BjL_7Wo?(yBYdlo-Ti!yqL}L zwoyqCS=r9=eU?<$B913pdrViG0F@HTx5fp+J0=r88(Ph{z2Ax}akg8}9qJ$>hdt%c z@+dRT_|(*AxsUHX9KbUcD37W8nTW&c0=@Z53;Q4>`33Ipj~kB{-89kK84}kjDm;Ow zw|l+OS~KQL18i?B)(GI0k?)_;eC81r7S00+s@S9+Mb#;!GzY<@3PCRTMqwx^qy8ji z7-rngFvUDZ$2KeDB9lrSvTKQdll1^}Ck8sFD&hXf{RxyHq?dA4Ro+kvDZdn)&(J%1 zmPI3DV9gb|#D89x6M>hUy@S&!^UTXnG`?jzXTVNyT>Hbwtk+=&a@G#W?L zM)B952|lTi6)ewuObik?7ry}XPv82wO!gB?$PkWJ3c9Ld#nM9)jjuW+J~72b_*qDY3ZxT$kXvh9}Tl$Jc+1XfB4j&SOulZ3^|YT zEfR67glYV0oC&Oh@Zaprh#62qc&aiXNZK{S5fHkXk&!WT9cx+#0j%a0jet?spR@+4 zHmIU~`AEV5b6A3c4xJ@WF7KUbKpMc?9BiTVO9CjH$slpIm7>@ZHfK{{ywnh!9 z!GAgRT?-osJcH+cN&oUVsaSOKK6S?KjR%(u;n5B|bK6eo{z4?1I>VuIw z&XjVF1}t%bngu+;n_Ht|(<`(6HFXY@f0rv>egx|){b+9tTw{ws}o!})G%Ruj|B4zI&WuvD(+p_~2 ze2-WxTB2sgu4wE*F~F6oCgYgSnSpw{#&vio_DezaaLFTESx1;Y zrUvFmtDx4&XYv@7}EAn{%6K@7g?CIPi+Qg|7#pn>%+lF)(HG> zg#YKyKFZ9D&c7n`l>63-LYtQ}*TYWUQ7%6*x(sL%v8wv4iaTG_y+Hg+{}(BXPSkF6 z|1zk#lJHW&h9e(PFNd4waT|tm&VBik%$*0l8^{egRT@g-K2zP8p`G0e8wE8uE0}au zXL~G@9TK{ef#7kt6TIP`8;GUb;w$*LyT6snL%c(^`>g`#IuwNSN%C2~G-D3XYyoGI zI5uYD1!R1$SDw?k9|;iqi_b($xEqSYnhRTFx&YRx?hI%tZ)%7vJ|jkj`wW3f z)c6C0+k(VWV(N3hTdmoUjfjSK)7rHuC1+(7g{;tbtQAEl;q>|dg+g8a&m+olIjv18 zaM)dVx|f^FYHE+Ie++F=m|l1KQF+n|a@L^qXwhj1TB|eBjSU(xSfpR14#Xdjpd>tu!zOn>5kRM{iCu~dfvs92}KVl2We*x`7odgSqV+r0MWT5r9 zK9TRA2ZW4~`NJM`E&B;JIBbBiCo({Vlpjb^I;u?P&JV38%)4AE-^8% ztTbTOF5x4u`af6z-z(U!RM*?UjUj2?s$@Luu+^i-4t?RGiZo~)Rp|FlDC}CZP zMrabHtYa(LE279O#lf+aL{@f`ot0#hGLxN>t&(JwtVGH7W@fKS zWsj0d;{SY3<9&bs>*{sAS8;s5pYe?Qxu5%)N9r4|Zo(KR?Xzd^%HGan4dDYvHo5;0 zyAI~Q3K=E`dL1aesn3v`{)oIGB6$4gS&fNu_jhVa;YyDn)qC(bL+anyfjeZ29-^ks zaf`jzYb!LL8JAX6X4RSX>Zq-`>|r&9!L%<}D-*j126!K)$aGq0uwJ^822D4T)A^Fu5Q>BFR(N;Wy ztOu%LXjaQo;MW=^7wI&pZO3U~G>*}^`&nCC>%2Aul#z1G>2*P){h~ztI}~4`KXE=F ztb@`9LG*JU zgcJi+KS2$lC768MM*p65ZE%s+7<`4wJXtsU$^O&QwsH--cMun+joxhi-O!LJ#$Yw_ zv_Ww$h75|14*3qJw__H_76VIQ=*@;a>81uZQ`*|u&B(~UF_{2W#Or>?zn;7acIUqT zg&`RR4R=iH5p&?66eU9{nha^cdchZs84CBBcpfb?&_JS?Ir2N_`L!>+5N{b@G7vQ~ zRr}(^d-1CaQ$-2K1^rRZIcD72ilzU`mC0=n05~qqe+Q#r6QQAaJ3H-ZU5ut+@S*K7 z?R1d(zhETpaT%+YZl2P7rcgM(I|QWN^n6#Rv*p?9PCxZ2Em!tQTEcbQlGa8NWa$$T z(}6Gm`+Lz*FSr-=Kd{_kBM`4Lyx=(MDY$690=eE! z-nHMj7-(6Me_iGbSK~>cakA(6pvi5ozIJJrb;I+Y8DX?WM805mj!?-fr=dP6<6%sdqO>#`Yu^5VOZdRpt(5~b07#PzP2TaRZ(~%ris^lxtYM54pQI@ql zvHft%DZ&qZtQpB+&4LSTPvG^en3$CSG2D@%#eAhqr)2P+vhPiHMb& zjufl0gbe3JZ0=?8pwAwegQBcWaTiR)nu2#UNH&Bz zn~xGsxdF5a1^ajPgG0B{BJ-qSdXi@ImYkDc9Gd5u4@r-LV}U&GQ{;}LcePg-Dk1u{ zgMxuTlu{;Brv%9x^Is%|FOg(9tP^bcr^plh}!jakG?N% z>N<@)4UR1Y>i#X@_9+yvQJEK; zn;_y}WCsJgpO`_DiSXcCE7=*)MUMl*S#ogKeSM+Uwzi!zY)>-4Wa?wZ1&4tl6!oD< zHL6i<&m+;Nax8jSFw?xdcI`^Y$TW_jBj%L;6TBok1^XMPVJ~ezr@-N0Eud zMw4L|etcar%7j4aL5wg&9jBK5vA=o-1}EJ+*zce>T>ibyir&`gSLVX)91i9x&YjI9 z!ht_d2g6h$l&CQGFU#N$n6WGkYZ4Ifo#Dd@vV{A~$6%nKW0zvLhC_&~J6kCi{MHw@|c_m_uA0r~bx_pnbtjloHV-0RQO74TMzJG0j9YRP%=m?4MMmed@5?6a9~x+D$qv3HK~$?Sd~3`^tT-} zNwmWF03{PVeYz|ubNLom598+Spl~fxZj8cys5bA(T3eET|-nhK7bRxIBYi23xQSA#dxOAXCrdL<^x>Sr8k@-{H^C3U#eu#_oG&;j9mqZcv?`C)iEbZhoh5yLM_Z&@EvH?tF&e9x37m^Vr{ml2AYVq5 za=-C_%3vj8Ft%l(1OVrq#toohf4B-%s<$mNt6ti9`&mXk7BM5PJ!~(FvCA8Q)>|UX+ijtdFzJV!|0utU zs8UE7>3txKF^ZC<-*|r@$l6rB&ca}QfgKZ0%aH&A3+k&Cze`~gkHcdVKnWg}O<=70 zLSmwjZi?Ij(0o!LK$J+y@hJ?aMsQ ztG$IF)pHVX)_e+QsQ;rdM21a;EtQnIQ{!!4rK=;W3t&zL*|;aNYFxGERA;wx@k77-8hJfE? zvc;dM%Mkp%7p>B_aUjf|m(x1%mUkJ5d+clSaHscIjCyFB*?qPpy#oU|@vf@jY3JcG zhN*KmZV@ z*?ZqFwmL1!lboEFv_G?^Q+vtS|6L*YpG8I}rG`TZUya-5YCQ+$EKwRpnHT>^t~sFs z5X%(I_`aAuWyKPi&kEy{Ph3-fNpOjuDQn-K2pOti>WM)|1`RUuh)keju<8xcN-z@j zM%glgqo0ewxKSV;KZ112;$s7_aNg?%t?Qo*IP?A$J{8p5R+lC$jRt?CKwftleknaD z@R5~rH_dcYD_<1Lkq<1hWV^{CbM5Y(JKyK`XVstwhtjK$x&!@igRJ$gOQVk+^qH@v zlRy*r$K#Cksgz51PBc{F*dO3qAXfhG;*=aCOLWBhhO_rXsTd>`Tz$R>qF~8!6D{H` zjaE1Qd<^jP_#lhe0J-J zqmZt*V8xhsT2Uno1=dnsBsmQNo^tBr$9CvM7n9|9aqUF5{FOahDqn#N&<-sA{ir1| z?OSWpCzr-;$YK!a_lk%x5Dk$yeN<1Z=t3#mxNd60Z$v1JVJ}1cNg~4za;*M8ZEZct z^Fvf@^~w}1zCbG92bHtW%oy9Ps;LC+RL8F854=~W^^|PQM9p}H zRUr;Fn6df^(UrOl%t{uL?uDz2et9O$rSvwaDIyAL|H&U?(DN>7m^7 zm<7YVD{Sb_a)%gG&I5bo)2B~f_ms{weScx>@X1FOg~Nj8DX9E^n4FpxdL@e<2uVun z&khtX`TlGzs&{_#>{p2L&bFp?{XeT^M`{1o+xf_7#raGI9bVqAAUmo5Af-ng~&SqEdPbt%QkItB{ITG)mmRqTPGe2TlC3LHe-{@ z{t>fFatc~c2gY=^ZKqxyyBZkC2ftUN-UXAI*o9s2mNkB^E|!KHKl;th^Vx_|?0e+x z2;!7hoE+peFKF0JN;6dX$cs^j%RZyfKooKbB1<^;iY6g{MD)FHoblkZNFQEg^MCyr z1aDSz%#BonG8} zsxrB?xwJI}qCc+>c|ijQx(bUN>NAmI7}+teL;x)wysUz95i@bJz_>K$;lWD~xIrwk zn>>P=$K$&CG_9b|GlZ4m&1KN^KPukGBhtsZ zitK3Kj9xKM_|*udQNNSi_NXd;C?_X}A)HT62LObJOwZ3~a9bnHg3Zwo($Yy5@~2+( z&yV(nrsPm1J{mN+_@QH$N(WPA&4sU}W~9@F4p6wKjQDsSz?dl+7yuST zOHBG>CIrV|E+W8$oHzfhot^Lm#J-lI``M59l&sG5Hj@yBNmUG<-ws$zs9raAxrD=W zo6eot#s}(|44PIj-~AIfr?~=9k9`Klx=u51Utzm72BaP1AZjTk-Umj5A${d4daI(Y`1@j(#P=b*(&0D7j{+R^biG>U{D0GUe8{cYH-k?6C=xy_?t zH?4aEAPtRDJlp(v2`v)xLoDRP^8+$JmFHvkE`n~06$_yv_>tKN9EFN&u|g0A`&=R0 z9?d3obvH{1@ClZfSs6dkROn8nwCc?h^isb&s&Q6z83AhLYWl!RxevHg z$20!V*a%aI?|7j1?XYao(@$Ev6#RV-j-4S9;O3#Fr04hE~{H{kB8hEd=pvzC{ses?ck zZ*Va;TGNP88IgFj;>f!#^3#FP^$Et{2)x{3_?9*Vh}L6Ir$JPe52Wy)$upN3pyP}q zBVUy${SZdie_E=!>AOLK47hiZvROu6PVK(206JDGdRpJh{y|EuhTooFh}+&*G?vUc5SC;t^`TF!#n8j zY=Jc1TG6}J7GFUj$lcHkHNN&U~lByLntK7+F*Qrm^iI6Yh#?L z5MaAJ`CNF|Q6?J8piZXz3dF41A-$s6XZLdLr8!mqlp+Sz4GF7zT!AfeJ7&+Jo* zW=Dm`P$xLd0ECca`1V9RX?Y0@xXGay=?893sEKjp>J2o#IuZ4q9A=f2lziXFYMBI- zJHMfTb<&ILfv+QfE|fC_`yjAypY}x!D97CasFwflk%faBXN68Jo7@8c7~C?*dM@)E zGp^*BO&a2Ued+wuQ*VKqVG9^0eY#^$UZkz9txvmy@81##0S+`+!|VGEF=kf?C)m>n zwhzQM6~PnqK$?N|sTa}UzD<~YpB^ij~Hp_X$cQT+71_}f*ViQUEYj7rxo1G$~d05?#C9Rx%NH*>YUtgS9WT%p( z$N!|?xtA2 zG`Is{1)Dp?Zwh1`h{4T$yR^RQ@TJrV+`++jE@%Xf8C#VxzHAbE(F)?MVcCxuxVXOcnQObN) zY|K}H75OBFUG~*ON0a^NT*;}Cg|42EsOdhN4)~)symLU3!Fl$ZtZ0Bmy3SBfd;@W+*ErAaQ{Zck%wDh=Q^sBt@4+rkhDxO} zJrPi&XNt+V)>H zVZtXE(ZYo5w_AShs{_Gk?%{1pf;rFBC1WIblES+<&X`Ds+w{Wo`~g6BpnyRq zO>A$#7#3nK5RI)J~9bdXZ$xv zvnc3|8_*zwWWZ56)gq4w+{6k(83JZU^jDR@z-=h6YacZK|)2Ca)Ah z@9;?uF55Ga(pmHv-fPfeTH-D>T2wtNQU$EsGXVFa02Uw{GB$`_hOef`((zUH*Ki*Sr8Ka&Yc0 z4*=^5SR~hj#=rfIZt3-~3L8aS!vWYJaF#j}|XXNDDvza%n>uYHInAuMMi-q7FE^(_&u+h&cc##n6r z!mzR-SWr9o?-L?fXDMAaxC~qa`q77?w|V4yfU4GaNn^wULV_>nZR34`C;OVn10@D- z8H{nu)xi`Lq8|x?%12wO#2GIN#g&(gpSo1&4q5VOdtIw9v2K`xdc2sP!aB!bUh`(S z)1ZksdJ<#a6HxgQ<@nyNX% zmp-QVfLdVlh84+hSS6#e#z-Bj8kEW5PWDxe~YI?VkU+ zRJLG~f6OfgXK_%On9Ae=kBRl1-%jR=+*7C{>KLEkX3h|V>vrH0XXD`4v8p%KKsb3Q03u0`m>oqs%r%Z;QdQ=_0To%JU>&;g?pa*cuT+H$G!CR3 z@`+S)uOA3O3&JRO(u;xgV_?5D0x*NlH1RcSl$JlDlF5kaF2j$z(}Amt6Y~Y z*eWImfwcJlL}>Lmf(~XyGhe9$HQNWrN7Pl}mryUr!m!F=N456oOkr)(6+`DWk0>bjnd$ z=E`YL)X!aHlK-aazDu?Co4b!lFfe{E2BNurJl=|+Sf;Ze%ka=D_bUt(7cez3rh8Gz z8n6sakXlF}R-fY+(S?_O@7}$5+o<{-Lrn3Pj^46vkUuDDD&5h1C2FWVn8mR3qx)}f z6*miA^o>8HN5#Wmemz@Y8L(9Wl>049l_%gm3B-ki4X%$)sPw&rMwxis7_73q%-}!c za4g?WCrYq1Hv9(*d5>U}>)Ouz&fy>7tS6xM0_hik+E1KWp`jmbpjiB-m@~w4SVUCH z@dsQ>>*B(chI-I%zX+~q6^34b~U|0Jg zGo9Q*!D~QtKX=t~6r~>h=%ISgxAq?CX-n-MJ%&8LST>pU1ZTyHr!S(>3K0aQdyoV zaKitdr@e^E9yCgCoTT389Yb#wfxXsPrh&$4n!v!dbxFYuP!PzH--IsU1ZbNnIHR2V zMAoTaN7V&khsHv|OKb-tc9~Rpyw8IytwZE2htPF?a($#_(o^Mm?n@w*wC(a~=mVSi zex#lqi;uhrqap=vBmJxQxz`mwUA_FP)QYr9I$kcaP1yA2pT%E;4CzVOdG**mdS@nJ z7F@nu!NFJ0t4I!~M1}0#PHZ$zx+4=1oPQoy!f0H`Sa8=nV(XoUH!>WQV)ua6tLqT@ zlPJ^|W4i{L{VstSb5y_&g~Q(+Sqw%Sj$z{&b~@9W`ue>(LX_a+;pN1dw>x zr0Pl^qMv%-S9?R~D`=??laTF?Usn1c1&11balI$DlR0K!<@wcH5Z~<6Gn0ybyck1G z?{hXaok~xhx0Wvv`KZSgh{MX%}?Aq z+5~&SqiF>O21a^YZP2_a5cFx*E$kJL>G3$(UFN~CEI{t;-A$bTcK@fmmx7LyF;Kzs zAiLEY*(I!U8p>EvlEiNeOzHnEi)$c~0OQqLC?~Dd|B>K`M=>NX5z z!sH`T!p*;m<1WBR!G}36NDBk~so%n;D)&KI)lbal!_9LBTa?jNmO($uO-rs=twY!7 za>gU_ueff=T8k}scQ*n#YhN_$0Ylqy-#M{eQuZe(wFbXM;=Hr<^xPlPmvg-JVJkY6 zqxl@#&F{+$qAN2GOhzWmMgOn6WnBw%o}-gL%GU)XOy+6sK5m2OO$P$EM&B(GTM;j0 zW7epyhuN+#(>+Ha<=39aRbx@RS4bDf%{Y~Z5NDo*^~k3|eT8VQFvFghbm{IIL7#JO zBHGhFcuKkBgy{O%FILA|0yn<7w||+GkHO7%Q@{IBSXjsq&YenxEP&!B&mX7t@bFRdzfL#xYggQtstW5yfL z%NPgAqA8@r#%!eA<(pUsiR_%&JL6q%h??Zg5)a}3X*j`>GlrJpEnk+4NOp;gLhO+= zY$2Xa@@$OGZ8^P*(-5%Pf=@S$nv~GwC8L)=h`Yj0T$)b&vq{{B7zzrC&`v}?-SOg- z%lw}E0P+|z@6e7aS6J}D8tr6$_HM$|TdKwmHN}Nk;$H5vx!zO?jaPS5Jv}`7?y^J- zSB*RWk`(zHQ-*=XO0U3@g3MqDjZY|#zKYyFzUSX0508?(&1w~HqArTTA9HGs#!jDv z(&qr>2z{$J3;-$U*0^7E$54H0Z3mbCi8#}nB-{Z$A&{rUzMJCUC3TAN{l8#X%Bp`k^ zmzqzfopP7&ImqYer$;|-xg|*~Q%&JxYwO7wH23OO^#I+~<~hzzp^zlOU{Rc1TaxCC zOqo0Xq&nhMPH}?DU{u6Isq+kM3jUQ@mJE)AUg1{Ee-alBEJD4tf!=QAS;=k)y-)h? zKY)aD%JAINZ4zqgPh@r@MBkbJ`4Q&D3;s*X&;1PmR>_sQ0KU8I(&w|y?vp>R(#@(H zc>gz!g&Pfxhu#$}Wh4Y1ha=bF1kgj8`=OoWzoAJMKUjdD7t~+!xo&~In*tRZeVVHT zBkjc4XW}_e&e__2quO385Q1fpyD*!CLIN>=@VufS(vL)75hXD|dPss6=xJJZ#lWXA zFfV)FYxAfkc0Y*5l5*m{ak#TeDZBnW8nj`_l(Mj}6wqNShjnot?<8#1B-ziMAAYQ9 zXWmOqKM@~a2_ALD;2%#-pc0itqJCWg|Io^(;Mw(lzPu=r@r>ugGx4iH87y1BAFzD% zUpW<@G%}eik9YSfis@?~p{wb1+lT4bF(oJ0*=_Sl{OD10N+zvj8-ugsd;cES=Lm?Z zE2=Pe{{g8M>c%?RJqj>_6Mg;;YBp{oGxsZX1fZK~aFY|00g>1HV1>^oCp}@y2kPx$6s4tEEkWqVvFgahxe zF-1j1^(}QvI6|q$ty$qb(;rh7!VQ*S%+hG2s4@U>lrlgGUK{5HsvQF5tl9hd3px$+ z#Xo|_1!Ktsdw8C`d=Zcj>iM_sp3uF0qY!2zlChV=kY7HI2+*2pppswqyE*75wD5zHXt09d9oz z+!M5EURsW{O*L|a;)+2bYJvp(ZYFjHTD={J{mlCelLie!zwg5hG$=mJymanQWU)2D2-Vb7jW7+zv1?gO^A{d(TeCAML$DnSFk$Hs)t_w=L;d4(zH6Tyz}@=Q-`~0 z{;VH4iEXHGM#u?h@>@{Yc@Ks56RuXJbX37;c&9O%6q*+;8jU@9wH~3VKy(VVcUOaf z8T!xxW7zii1`Q9nBBKv9Jt5MD? zZNwhB4EaryzEtNIHblzFr^aT#y)YUS-&9>%NtbYDmHACR%K|)FFhZP zRVem;e7Sv!1WV_ClB#+m>?Y_)X@K3-I#&y+=Ib5GMAFD+qXk^lqtd7mz)eL!Z^Og= zmgnk)^42=Yj@zN#@^WbG0)I#%?-v~{8$I}atW=bp)FgO-D%7;qhNKzmS!eB(q8 z11^6>_SH&d^Z4=B3IEU6Hr5B~`qS58nqCW%P`{^<@e9rdlH`Yun|w&;qsXph@SyXc z_(TPp%^9rqPT75F_MV=e6rpyq)R?zGnjnhp?tb=lX`)!B>r5=U;>vTm$Zn~zN|Btf z>A_%*{U^dJpP~!Bukr4}a$uRh1<*h!iL>1u(-!JmPXXW&c_8yQHV(#0VWuBtEit$n zma)h4Qu@S$+qHNqvI>_A1fn8lgIjt0#U<*;rrr6(^ay!-$%mCv{V&&Z%q-XoYh-B< zweDEe4E{p0ps`Jf%%OGwNQb;J+1JAwHAHQIj4`0*aHP=%1FMNhJ_uxW<>6&l5ZA%R z?v~a9)vUQE?V_1je|1!g3cbb?UkF#f=jkQSFHcd`$mcTION9Y5&ujhwCLIn(V{@uD z*XL^A?5#cVmsADCwH6ciI*MOt zl;beDnhUKsb5pRHMdBsAhOzvI%NQc%g@n}c(nk!Kt_Sh$J~zE2_2x+6`PJtWDnXg~ zE4$XyBlhlImssc6jGf?{-5Yo{FeWg(u%}z}WZu@VewVX-o@1lbA(sjupI3dzwa~cT zqwvBzpQ1}OpI+N#|318N3|L;5HkGVh9qqju_2(ge_&UOzTL=G2Pf0itW`FWc;)TH~ zDE}&X&@$FfO#^Vndv~mX-xOfQ)WB}*MbTJN$bv%X)99!BzleWsDyZb33P&SP8LnF^ zF-Jemjt&PtRrGD(&!2t0vc!*ZCL>0|l$%Q0?J`r4iNwbJGUghDvws@VvBbv^a?l;&DRkjDm*-O)> zxV7=9XdNmJxH4u{N$2qZB00TJ3nk9S${d`>J{}rR;CGvg<*zR z#+|1Z{1B3~$xucPOSqdnFQFaiI^?L-4%GDEEHiFIKa6mLX2^J+*=@X^Zr)k-d@jvG zYUcX2C6qi6qA82Z8){Zoa$vqd!P6pn3k1yCz{Ew*DO-MpG&TVSyP4jhX#Q}_7`lb* zz=_0ue;KO5&5W~pu?G`xe}DLpjP8|v|H$MWB*(>aYwct;<@qEWrUArvo%bJp6u2O@ zji=u~qzU+|aqUp90wcIyAm)|wD;46vM4bEy%A!;UOQ2}LWb_G0gtvAUkFB(%-Lcto zxm?wso9+6lq!~BULuuR-ig+KX=%j_6X>`lSub+ida&)C2>w))hP_!UJ$zgc}dBY*l z`z+$JVF}pt^$n!R?=DEZ{SL|B{#Q>}XR<)MY!>64U2A_)Y6O_0z?wR}#^ID}x~6ER zyD>5?6#H*LgyiY~5fT6#r21{#P{e27<9f&Mc$84S`0-N@njU8|&YXtBfy8I3&Fy2T zKQ3MiiTIw{5yc{m;Slgj{ZFIKwkwfQ-7Dv9qhKJOn&v_ES!3PW?DoyEQFl=-2-JcoWd z(_X576Xp;cKsd^o`$j>J^#re^ z1bG4!2?5!=_dpfVSam21q5F#a32iy3dqL)XZKmo7G`{L==Lz+b`_aV!6$LRU>O8Te z?EIDLlQKd&hG{<&OOr?5*JgKEmr_NWrS822RKXp!ceEqwW3QNs?UZL(69Vb6`pJtC zEwQU_B3uD?*TwbdXCCrYQ`lHm`3`f*-vc>{;gP*pA+ExJFWYSjk`%PWL$Dw z#WS4j1Fg71&&$qk$LD_j(7;fw0xgW3uMhQwOuuv8bx`8oy?g3nD9<&PMNA0lj;H+iffBlg@RAM8(Wkn!C`of zK?VkI+Z)H|nV-{;KU|A`D3}#0AH{92RB+PeLBw0vMv8VpUe{CFGID1JKqHSJu6->VYz8l_3uNRs>{*!iY<5KT2S)OPznE6JC#;i(aIeo0*<^I`I2U*X&SH1jp za&}64CBy5SM{OZMznlN%uzF48!2$~c*B%cJ$bpg}3N{FEBLP$wlN*-E(sWNQQ|;)3so2zGMp=uUgR_;K#; zhaa^zm-z#%#>IU`4qIn(upDPXxL;zc0{TZJ~S%WmfkI=9^@dL z=dBWfQUWdL(ofcU7sny=^t7ptZPC2w9Tgk9{}mGAYihumJ_d0h$nO&Y0y_bB*UszG zz=7)*UcvOe_YoVK7;;M-NR;l*{JFXmUX#tSyy}^G?=8mi<%``o?#a_3(0ARYeW2FX z)L`pjpZPJiQ~S`o*If6oIaC7P01?o_;Yqo}zZMT?aFfs)`ZYmy$u~2%kSpEj)5T$G z!je<^`RSjsVFx3M?h z8{fK5+DP~kdS_2;0w|Q*|X@)~vN_h4a(fA5*byBgYb<8A3IBUpel@SeFe> z%=y4D54j{3Uvi^9X!A2y)oPFSF(m*;#uwI_*4kcec5lM;X;-ewG^oMk<>d`3DjocN zhDitc&zEJ>NuWc6ycTWmMrtY>l5HHA6Q?KNw-b~?8Xqa^paCw3l#A}52B>ms@uQ`SE%*=NF zug-jZ+;-@*BeviqLEgtA;LGbzOF>&BOihR{3=&AEc3E_B`GKACfC@+29tausL#jdT z%SHC*3jTR=xQtc|gUAO?O{JdfPrvZEn{gYtJQY0m$4Bb(=(!syRxw%?1qUAFX1em^ zvl^Hhzx=xf^Lruh=ja>`IzvlG$13*n^Pe z0X=?p<{apQ&8%e8b6t6P5Kfyq8c*B`2(6BKSI#VS^sTS7h%RVOLQ_ym-R76#yAJEi zpyzt+NbT(jK6GK_PFO+8o^bP~Fkk~0ti1EW{+u0jmF*~RAN4bYuw(LP$OxVJpj9C;A;Qzu<5_cBa6)150_GiBoOUd zKte*Vz^K@j>FHb-#$v%t9`q#~21~MQ6Zw6y{@huab1*#h3s^UT!=Vr?@c2ggDT(IvGJWsSg`J-~bk*cwy7nwIIf8b^;FOJrYG=4mdUN%HRS z+aTPyAI%MU3=XfXJ!S686<&|cqup)gdlE_C`^U;?hX5q61%2HPPsSU1mulH?gXZw2 zHJM6p)!`$Zx#Kc351>|1P}#2N_OQ0QoTw4;`>ISD!gv07Cb4>T0@3Mx9~P*{o7l5{ z&2a}dlm-~j`84i$zR5G>3)`zeB)7MKl9G~vi)-m!Zs{Hj&Y-*=G&4j||FCe(Oz*vR zAWECOenYXa0??-z7$~viAOH?grCiBL`7QiTf;d%2rlRFIl%`K&k)Hna#~~2j$4b&v zkv0~#uP5!8=pQZs+>J?}5ODU@4;y9&OLM!sB13}5DByDc*u@_Rrl4LBGhAg(HH!32 zL~O>YpFuh=(;6!NXMsX`&>nu~$fh%Y234v?4hIz#745O<-q2@g&ZXp`9JTuEB&Bw6 z3A@yBl$7ycDm9&*3%Rbh^njrDDa_s{dd)~9!}=5Loh~B8-`0V z8nE!snSp0W_j7HfhHosnO|Z7kp6>65{uDK5@GVRW`%eM9)ZVB?_`PYt!RTcA<=WOB z0_J}~sY?xQEz4_K7SsF(@8D@trlxG?D2@?v#zdq(qegxVqT@Rdzp_L|iNlf&V9s@B zB*R0ne|6WQ9h)K6$szV|F*m_MY2$d61lDR=TW1%`$z_K@E3N0>{U)Yr{_Onh34qILi6-RzW z#fiPf*%8CL&tCy@C3HI`z;kK(_*6=V^6rFBA$?vJhE!xi3Nzq^V)oxMb@Kv6l6I*4 z>?_%QfHExDbtvQ3EmQw|kR@aaIzA0NWcv_g+1psUItQzNDB0TbgSnk_3jxMZD=4Dq zm?(gl(x;D#TSIS#P9HcrMz06bnH(s)I|7y8eyY?6((m37%&HNdsq0-AzeRF$Uh{+9 z=bO)3|9LX>c=@K}wd!?1E$ZH$D-gbT5(xR{IK3VY_cn9~AWKLmVX_nK3y&KJXdQyK z3cao(MUW$t!1U6-(bLoG$0h6~)*PF;!VJ&*>xD}m5uloR?X9=iYTuZ{s&yOS8!a2( zKQG))Iddim)X~tu=EmWPiSD`*YDlY21XpkmMdwM9nw)SUM6=8#D_lm-GIZM{S60g9ISXc`tB<-=IX{xZ z{W<7+L|`2Pj?aT^kHAFGR)BjwJw1Knz)jGXlsMc4MEYI@N_t_80+ZaOPkA7|YJN+~ zffwSoFK^mJuaIH9S*Jms66672BsGD6yXwUfYwYn!$Ui+!zbqP%^F7u^Iwv?<@&K!m zvCBj2CAEtNEL>b%d+@fABu5ZzPVuNe%GR1 zP#6FifFyW7R$Ej1Y!#}})8&o=Z{EC-X$wB_`wZ02fMq$oMSbt?-Q8nzQEK+~_V-^g zgDFEYrY4H?yu^AsG@POgOvuT7PUl#~+y?6QQNzI@EVX-0cPSwueKrJTnE9_Xa#Ltb zg2YP7foI=x`np%GkB&8#O{w^i?+kB1ei~;GQV-PQeSj)d&$O)nYz0qv2N6o~%;Cg; zEelx)feQ4FBF85>U%g^+!Hhs7Mr3p}l^5F{I`TS*t`?0fSkxh*U~sFT&_+-`1O=y< z8JflJAvHk(KEB+(2ag->vQ*A7hNDL%eRTa!^rmk_lQ=FrS=V^q**_HT`B&6h} zBpg@gSHbk*qxLl!myMJjf-kJIx#Cl(I_y_4_3g*T>50o*u;1J$lE80a*mty z(=aZ?Ugdg%N?qk>xzmjx+Li*+y-Ojn{D51o4k^83)Es2n$rGDv6)90StbRWZ>6y62 zF~E|buf1115h8(iL&xp-;j~k?qP<&a@Au&3?!^1LiAz^UNkf+51S;loNap8W6dFL1?OFv8_i>IiqpIP-9lJv+Ude84I-(PFs z2tGKhzi2@pkr1_DQia2@09+oh|8wZrB;naYAjwtrU7HuKUI2dwm3R}lEPch6TzOl4nyh6{#b$;GZjYs=bCQs~j(zE^jGN}!o zFW^4R+~l^}h3NK&+$MvCGvKV19xJwcb#f?V+PlrvRuAeujwiuOKqz#4RrlYJnF4O#mPFl8U#gun0m@Q+%4JPh|K_g#~U8smeJ z9$w!}^9$rNXISp4=7J9bwlozb4b8*Vbx}B(ujng*%cB}SYt{^7H+cY0@j9Nv@(;1* zOUh`#-Mt-3m$$cua|POW=Tnk0l6oV|aEE5iBY+Z`9#4U+HyTp7@;ciXI_Lho!DQsx zU`kyhdkJ`OPfp~u-5*`G$Eo&L5^{2L0|MmwKVPngILZz{U=MH~XD*0o^t=j*kB<+O z+pW!ut_)gUW@rGawQ=3_e~tKjpm)$1?k468qS>TbNSo9l<@C$<2};Lf=XXhK9WOFJ z?KswDTE02bU3*S9a&heR3z5M?CW?LzAwQr2OtnT_)^&97-pV63h^tksV2t*sw26(T zqz)+Hi6EI}$%MylEHHK?33WQ~`fsc>zXu+|Be$urtLT9ysX~BeW`bIVdrz*PZ+IEW z7~qcU|8>j$y~Xt>(S4is!c${#-?S#-yP%z#rPl-6d#oSWTJr3$;#lC#rxS)8ge`p= zu+7R6#TqI_Kp@Q(aYAl8MuA!G;@hzKT}Mri zZ+z0eIoEIhS}W&qSFO>3+{xM_DvByjMw5esgP)$pRN=VswwPMqFA31?)1CAMa*P8N zSC*8T-VJyu0w9Lk=yaN4W_r{p$od8zm5C+=rv?uRj*bN}(Cf}b)X<2~0U4KsgoFYa zLM#Acq@DTmC727LeA`4|&j_!nAj4<@GKfwH!eZG2P6he4aXg2}X1dbSRodduu7&`g z;V8asoC7r%eF7YmRo7e08AR7Akf_m#4~9I`@I!<4vbJx4fH^ackcI+H;dh=fsF0^%Vz=A@sw@D-iJ z7w?70Yh!N$#OH9q1*iAGP)v~{*^cDK3QVnr%IuIRMCyxt040%t^{V`VzfXo%T<-KF zgp&-MoQw1Pt+eDQp#J;>&TR8ed!c9m^>4K4p8vL@ns!FFYI^N95K5c2QJW1O`g$aB z*RQQM1Rq;F+j%u`$g*s3pQtGGX7WaDtAUe)`V1eg6C%mTxpvO`%}X4rw%5C26f-}3 zD#!0j!myEr@axl03YQN*#gk)0bqO`i&p>AR?n@AK(X2>sysX=zxC=^drrz^|dX6iQ zjkLnR_YF^iA!)zzJ;+_grJyo~ux;TKqzdO+`=wvxdi?*S_4QjAsD?AR?C*w-yU1(T zq&H=^g;=2z#`fyqAzpkQ1}MZxAyp9WO5ukTcC`@O~oR*msUA?_={FVV*VDmK&1YBwbsQ^dtq(B2xSk1lSg`a~gNJL;a3p4Zk(WwV}CB-(-$>d}=)hz%U@!`-5D9(E69u1WNG}J`c;1~mH(xjm6r~f@)Jz3*-Y$nAMNiPX z5IbpXZ2a_=!u>%A0#RB|7hBKp=XV4n^YdUaeFfs|h)pIMFg-9V&Ah1cZBzkO93LN^ zEaYd<&j)+HZ+K>M-d9VLIa#C275VIw*8QPpwYmdmVceYC)qiv4o5K2cTR>j@V+_Ao zlBx+E)5aURptu_rzOBmf3_H<^2Nz=@R1ksO(EGY?I z9KMmB?h;i3K>5jHi=$NP$L(H z6c=Q&p#T`=+G_?G<~e>HmftUIC5-NF(BW0VamYjLpr+WkqZn>d*ww2nTNBVk9uEQV zk>%&^L~H?pJK!y`714|K9O6G>mgDzz|9)?}hvp*(nyvLns2V~R=#DH03)=_eI|Dem zrq#5)dsbx|WHpkihe6hO7iewL9ONdVR}1;H6N!kSF0S5oNRS&YAA8?utMDKDD#P40 zwgKs@Q9<{;yEzl#7ZyiN9?uAEBNqb1YH{k3wkr->70e=kL)1t3tv$4*cXy|~p+>SI zY;+R#@qQ+NB<=2j6W*=3>+c3108ruUox2~)SF@X7oiq&%QzT5zk2+ZUweHxpR6VzU z22zrbjj18QDp;?9vX~o|DP5}38yR}e9%cMTHY+EtH;_a2G>jQmeFDHo(|+HgcW^|K zLFu4rm~v3G8ZzT{_zRaPUq}f&fSf%n%Kn0MrI*zR(Z)zm4z-?6zbaQ%xj5g2`4<=@ znJY_fK0Xy7a-G+D3^{E=YU;E<*+FVw*rv;yVq_4pupn{c+h7h25>T48Gkw=9`mP4r7%~nZaF`u5IpT3*_zH%}0QOS89FQCD-KsvktgP@;9M?~yBHCQzA zqVCN@o_7NnN|o}4>4U%)-{HL$6O#mC6x)FEuL%6(&S~1l;l_aO9Mv9B+SmmL+%r)C zP}qOthP?t=bhVrc{)6`4l5X5E+NgoB&|Np;tJVpKp*WfD-Q=goS&%Pq-$}34rd@zp zerK8|Ro(4Bpw6Fjot*DpEc&a+e-+~AFFAT$WnxDjWR|eqgeqpCUTxAv@Nrv_lP}yVr2CfgH2b0T71$wb7z%F5tMjcllYi}E z-RJgU(I_&^8e`X(0q89rL__ZGPv++2#4IG72EC%XJkj0mW@fiRPwYn2@rn$KM`y38 z@(GHPUec0k`Xbl5l|J09fLf_JQqo6?o#FD+U}L!yU74z!T#{tgY`Gz1Vyf8DU?QlF z4K=oc%8_eydd&q84|}9C!Rjkf0m=Hi(4xZZM%{G*Cy0_&m^DaIDfn&-5btV&?tHO+ z4TriFxGzz3c>`_&#qYd~?w&qhdkVsm4-;0#9OThB`+F8Y3+Jk}P4s+*Yt3sae|Yp& zuby;RTN`<1mQW67`vb;zLX}JO$8_#>otsCX@%#-z#3qUHQqk%zj$X06I)}|jq-n2LfHRW>`%(}Z`OHD^l<*LzaQM_maFS3L$Z{6X|3#vKoK_RrP@p-Xjr-vi#@U{$P_ zlkHf+*oA2pvC`5~mdFJ04Ia0(c@xcJ$C6QFY1Pxf)`GEOfCr|o4sSvFwAC{p3LDINfDuCke07n2;D+s z9#J!2o7k%d|AmA8gnwx5qfsHFn^DCWK8&4Qj0_EgagY!@>pEIldY<-$ND9j!%vym4 z)!VX7P;HM^SUyokm47FZSMK-jm&CyCKRe0{kg(*=5p9dQ8R=Ur3oI9cu0=;DqSJ`z zQzMrj?Z&V$cZEN>2o-nW-P)<;%b%QiWl)sqPzK`6JwiJ924~~VYqZR?qFyeGYu?#& zNdj}6xr-OMa|8?jF+1&ayz zM57Hla33>FO*K5CzZu<{W`h??bsQ?YLsV7$egJO>MvwGj z&6G!0yHrp%)B5U_%x2%>+X2g%cWn^Y$UKf=@cEc(mBfIQf zC%Zv}>_U-|?9AWed8u>yyno++&h4Drk*?SEdOjcH{r z@)fv5Ho&E3G!|hohfK96Ez5LY*e$cVsbCB`zpy8POIEg`JlI#%IQrTg*~D)4wO`}V zFx&939ynk>jb)^#AEo8FvgN1YJFgMBAg@D4PAyF_V0HEkSI}U)yz5V2;-FI&!1Nan z*zi7E3n?WINF_&X4{b!-cD$3~?#U3SRZ2HPmnrKw9*kS}uP`FD0FdQr_IW>>J?CQm z`!xPZG?WM@c@lf#DB%uoF}J5?!#w5D3Klxed(dEqGKB$ZzVoi}3-H5cKUdTsd+2v< zJ%)79#hE|YS5j{p)(1NB)=>8F3!D}b_!{38kg;Bl*9Rh4XYciAz~(Z$;t7j%ZHCKT z&E6{ws|a1~!K}#mk8p9m;&pgVh9T>{fMsu-?8=Ts8xzmbfs=@IWyBN}efT_OR0`1V!dSJWn3*?O*%R{kdcEH;K*7E(~cGOEuA9>fYD&sjIG`_TuF=#=tM4cL z9;nLT!Oe=c-34>ESsa(CP$`F;W+IerNYzjQ%;oPJm?Vw=k$ahSdwram`@bAOx1+#eqTA zs9yRVj$y1%IicHx+BZK(mo(K`S65fFx<_}&WWb%?Gc#F#o1rlO<-i-pmhFmvJ^Ku?FNi|HQGYl3#^RjK^a0!c`Hzvq2 z2M9qMsZ)NLm8E4kX=CdPtyq!|hl&4s=`>k4aGqC(K?Y?}jTUWT0Yu?t z1uqo>XmMJDNQh2DOH1J6e$~f*+S=N=W3APPcFvA3#ktfyosY=ZIqU&^QQH917gfq( zP0v)Sefy+5+dA@RRMQY@4jR*n>E~_L=1K8nGUrC1f@-|NwCS5FU3lck5&xKMru-ki z8?JoKEn<1hUj2@A+uN0bkNe8?#WVFD3^>;S0+io4T**JtvW{*kkYJO8sCyTfn{>4TN;H!8wOg*bodGIs<#) zl;~GLsA*N?k#^p2Q#54w?=s+@F(Cg9*y=REpbUdaJB-0S-dk1|vf*1XXnnsk49Vp{ z8{DeAe%y!Ttd6{TXz0ZLq<9^a;{8%lPsLCIKsl3MH&vH$60H0=zp>qkSph@CcdK_o zL+7hSC1}X#5Ugnjr0DEAky`c5*9CQ&ee`_*pyg=S2QeE-|Ff%W1LpMxwy4?iiKQHk*}z1;LK(95U4yt2i~(OPK!-9 z=bPTuofX?$yPnhr2iN5mj%fm#xlg^WuRM^GD=G)VRdz=;K;5e1#q7=sJkCt*$BGKO zXkExwFvVJ5li{(pXrb~C0lyMeHov(Oip=XF4-Nh*VG46`$3l*~jos#}ef?UcY$aqP zp3F;eBfG6{9I|~)wdEUhpJ>Q@z*2xp9jbMe_M4&;!<4&rUN=;mzZ6ocz90-MVC&Zv zS#bUNc_USMsJ;C(EjewpvK>@E9oaQ752=o)Av=JF-3Xt+=vqZh?O^i$93NY0Pa&80 z!!Oj1=NpZRCB69cDMre_()w+}xNE*{`xnodFKnOk5-%*o1A}3i$s2Z=kHMfzoLdaq zEwl(?I@x4b8sfA+bsnzGID&@Qu)!pfSd@-xr=R)zy+UCoLh$j0re3>k%F7Pa!ZF(c znT=Qu8R&Yb-!15NlM&b8oF-G1V6rS3z(VFNfL8c?0-sq|qE9eb0rEvenTQSB?+_{j znV}qL4V-=1=eD~-hV$#Td^%pGSsb)KeXc72d=Sq}I(U7LVSQF|t%|8+in?d?<+3jM zkRK%lg*7lA+<Upv-8H2sbRw6p?v_(9gsZ56^h#$>;(>r zEi+S32eAF_gohUkotgC--Vb(u$F9yjJgG9;NS7F6>F!2-iB~YvOdFBy5R3LrqV#)) zEi`F}zw)Ta!I|dDF)+N9`NC!vK2gp7zKX{oj?Cpzk=zbQA<2ge(VlR zk;E!XA6z{!zMl4i6Vr{*vbArw$!M|lY8dD}j+xT@hIswliSN5s;ykT9W|W`FI+S%l zg&?QkKMyYL@O$f>F>7zj(6KcQN~y+g2C@-YSprvo}-QsTd*m6 z@o2BiBcJbl9k2Af2qX0orba}|w`F6Ze zi%B?)@yM!RmzfT=3B&vB((-+TIKtul7R@J^7zE{OPh&)t3@l zm)6Q5mOc0THP0VaO7=$_`veHZG(srWy zzuxhD;LZvY#bcp~EM!S~*fOFID^Z@YLbBh%o&jzW3H9%T$^J=pb_xbwuJ4KqYsQvN z>t}j~_6cm1ez{4--22=n?5CGn8KcKqaCgP9KW{wHz_OR76drxN-FO#j5FvN!OAkm1 zk?T9Aj|*Es60kPOdo~Mg@ReViNIS3hr1cA;R_=JXqVe><-yGZ#a*(zR|m>OQf-D8K?s{gFoxAF5}HwIwlP2w!GlVm+vR z$3AF@FbetkKxZ|c;E*r&6fx-_EmZ(XZ&-l(?Am$)nhk@+ z!`+CV@O|fBn5s-nZ!m%qG8WkEX{XH#gwWPufWC9)63%-+`I<&Dvo>0}9?kTenX%-- zhWMjYPk|&^%PdWzLAzIpmLAUE3~YpJ6_-C#E5*IB>m18%(>0uppoh-sH8-yoq|#cd z;3c46)nk6ttUM~(9XZu*dac;EN_zY4UYF+kG6P^lD~xs#^D+6ipJpGjCfw#;tr6tm z4HT;f6vkfS9jxDBk~w{EZ^yqwW~lnGPf6TK9rDbtu^P8^0}n;B;61=)NDZ5rq%lwU z@}asiduU(8{D&j6#XASyH7&5hIGoc?sH@}PvDrot;~fRj`mxG{$zwx9;lp6?{@iKs zc-rVV^v_qyM3Cmj_5yKo&fsT(<4NZR@{^~-DvKRn)=srwGdR~}Ht)qya$#}spQ$8H z7tn`&8B8v=i2ZDq!ok~g)aAX;wtvBG%e5tm;}vQiQ(r&&LEDB~B3``o2r@OYg4KSh z^GN=aH%HVZrt;6X4qCqqBFQk%$}|fDiYA<&=_AOM={gj_+C(8CA#L#SykKBfq9?9G z08svPlZv$MA?76~a;Dk`&3=WC&|5OOq9tEcveD^;Lcl@?592f#s7LA#3;}VdBe8o2 z=_aP3xelJA2cV3jCHb!lZBNz7r~qh<~S_oUU61`=LOi3g%;(O zIt|)u9_Qp#1|1WF35#_Yjug6v>jZQSs#9Jfp@*8J;fW3YCN$;{u#c-gA zQD;U=3q-oFG#$_aG$;sjt15GH$`i_0Lp9_W(kRsf+$MVpO}XwN2*Tau-I!c06Qg+-+77{IG4ncWd(Q{5CdF?t>VNeybNA|D>a9I2Fwxhy7rG;# z+T(ktI7Z0e>t%I40Cav-hJ|8m9J$ZI>hsZ8=O`Olb~-oW9KyrH%t3k{?BotK{4mCuMT^8rT^6G1aRoo~4$cd# zYuH4CuzsmV==%0Il&`%2UlsZ^rXpq!TQ4Eoo)+-jh=Y0c0qVUd%c7#>)ybLeeCjvl z2T=-wsxgsmFZp>9z3T|57SGg)ec^Q6xU%-xbB7CQvAz(`9^D^bfdcL@Q4LS0gHn$x zB=dvRq~Z`+U`I+bs26NFug_L|8w30!gfJBV4)7XHu44VueJ&v+QFnH~!@S z6TX=X$i(JUCtuH#l9NCPzf_Uv`ioz<`vhn-fR?iKhK8BYIp>iS@3z{Bn+R zprjpjm?#vAQpkgyKl1OJ1dDT^epF~b;`CVSJ{C5TxZ<-E^boAYd*c}HeD8jn z^GjP9DQenD_m%ionYC3=&Di=v*1F(`V>-TegPb0XFEVbUEz;5hF2OfBxfxIa0&r$E zYgW$bIg4vx##{*P9-BjpdjR{V>XZ>IE`jQzW}|XiM>J z7`Bxq06TcTk}{87*+yfhz?~c^F2~2T7tz zs}`XC2GyAadN^y$?eD^TMk{iiW>ggcsg7#Ad$6;lCdm0=wa~?I;aN3iq4{!ULaS*S zHgM!mr+F?9$25Nz92XdFFx7|vGs8akMSBNwETCi-mQ;k;qwc3_?cL@tM9^CpDYLd+II8dQU^*Jordb znSh={_kj4&LPBqkrpgVs&lUl1F&047{v%?kJKV>5QVc?T{njQk-QW(iLI2cdq93^O zpl+k#=mEr8Z93xcIotC**u6!8E~Obfh%S^B?3Z;*_X8u14{2)Dzea+oDj=FujmG$8T zK&*y|7yHJM)jud_6C!@L@IFSJ%$G8&e!I_5VcvN6EE%jNbNoy=z|NMu+mv|XF^u*Uj? zuaQXipe2MFZpXf2F^Yb`$*UEq=xNFJ5N*E6GCe2n;n3sYwRy;>JFqV3B|nWU(;)@^ z_|6QC?l+uFXio^Zh|&y> zgPY*3Q=^CAfR+OelZ*%;#K|}&@``mjovIlqmAEG4)ny7XYpS!rdsOfYOb_$5cu%?0 zXOdOpJh|&&e}YPwdWpq1aO9FEd14w1$;XD_y2G~@+v|1P3oH}hvxp3u8>^A^Kb-gJ zWhtcIL2k6G$xM|~B^Iiuj2dQu;UmUa=uoxm3R;42D1f&Ne(OE`A1rE^{0k7po!BOfLv>%?gg6KzKlL)gR(NFNJN0 z$4oIY;7N;W^60N&Huuv93b#Vqi&X#|L?H3cH>XGkgI(Mulc_XM_IVL_HeF5-6o4%Kw~qQS%z$_gCH5g zk{GLY0VOQoJHAbNspH6mN4ArmshjOWFo4@GLRUJjor38-4jYY|U2_LLLDeAM5r{J% zs=S;F|IYk`z8Ykf3}p{?hk>kew=CVYIyqg0EPF&ABK}OzlvIjmsL1z>WsvL`?V)Bfxs(ygP{z!dH+3Rx%gZRx z=io!8E@sB(Q;%sGTz#~f`*lu@U85V+k6%YlMAE8yPFgaQ zH!c47;VMiIh4MD$Y=(9;T)23ubZVY}`4-+S>iQtHUSRDP+jhKSh-X@N=up}jGxiZ2 z!uv_TEiL>)irATvJ5>MT4!;oyO2mzL8LO-g-&G*djQ3a{xkltO=>s*BWZ$>RWR(la zY(vy%zM!$`LPqXIT4)yxhZx6@T7~#QJy`6Ip<DpmP=w^V+j`AwqzeM{jCcOy5q1K;pR2~Y+k z?pUx7ijR2KzkLkqt@;iZ8RD&eRZsAdcLNMy!Od3xE>p?x`oJZo9x4MH7#jm@>4rpQ zP+?4hT+sH?IvBK19s9VzSjJp4g7|naEl>v7_6ozJDJq4vA6c{AvCvB*s9ACp9I|X? z2P!hYECWOOoUNnK84-Sqo}i7GhG~ZG^S9%e54)J*!93((m1>+6&`D6dE9Cp95_7%3 z6aafQX5mE^Yjwki`Xl+t|J9ePYDl^i1ICxl#pO)iV7kzzL|QWUtg^Em^1_u+7es+8 zb2cY1H&IJnNjV6gP=^Njy?_b(0gk`0!ktT+g#+Y)5j)BaeG;5Dn(=(OI46mMWRd-3 z=Wb$Q#U!v?_pAEP-tr9ksH`+|2+H=I1M5I0ztnXW2)4={$$02x!vixtq*DM^)&wCc zTK4R;?Y;@l@NxRh?}U}RWeQYiAAwq5 z;flGvJrMaxg^P=UxgtbG#hZYY&gJ102ZmwysS%h>4FGr=lh@H+!q zpaK6up;O<126IxJYhM+`#5+viiFs(ipPsP=r~cQCjeSx=Uv^k4_0bsQZodI$4}?)f z^C=Y-79dw~AA{RIeKUCJi8!uLHmPdFW0PnQEYt4E}DcN!dF%^P%U(6}=AS?Wic4;a9+Eg0qg( zBVIg_2XDQnm+zg&fNK-0+f-iJ+L(-B(C_|%a3PlI+TT+k!7lJr$*aWsrv_;AN}$Xw z>;A=Y07jK5^rTe z{^p3sNf1L5z{9JXBwATgB_Qg4>i)}nswbTCAsRWXxfjqyR?HrUCj4BPliAxV!2CXE z#vvl|eqtzp-%*n$gk)?8voxY$b?cy$=+kF6LB7A`BT5r>1Rl;p3y=0iBUMbOsgfQt z(UBK)XnUdA{@*2sUuXeldkrOuFnx?$UG)wf5P088aROwMzBG^A&zyn+l*0A`mynAW zD|A;QsX@|rY>12NPl@<}zedYjmw)kDBnyCC?u4zcMBa>zPNpaevsecN)QV-o`DFVh z{?d$aFHHv`g-s^J=AsHkfnp#G6oZ(U9gOCj*$7(SpvHFnb#XiLI)>Ddvq5yV@YTPN z=^3Giha_#IeshxnV+N|e7J_N)NV|bsqye1hAo`oRf59|lZbUPEwE%C%1~FBDiGX6W zhdMic9?^yrMJ^LY`NeWwP!Z_tmjd}z%qm^~i7Usw&vblAhHdax4r%S}?IRjV+B?58 zOBu@U9Gb@`kGQZA`9G8e-#vG=bb#gNQjY#$k}b8qqdyjaZr=e~a`J5Dy(2|2%;8^kr3dRAMry24dL++umKL-k4DYl(*da&vOq#zwCU^jwS)k4Y&5zx1R zoNLA=^c4t@qr?Cx9x=7_=S21Dl#5ga`ool2R~pG%GlgsZ($ zAd++Bv>DOhFLkep4-qq}!HJFI2JXun(|U?xz#M@67uu4~wV2^$W&{TA@P-(f5kbCR zxgHXFi`cd*?j(jse zB(UqmH5Qm_Wq>}AG(7LSDd|n>Zh3Q+akCMSH9v>2fA)b$GAlE46H|A!>rV2SOM_<# zcx_`x%+C=8J|v{nY?3u+D|8at#tplzrvc>;&lwKM2sP~VM3jg5( z{BNy#l&<;B8-_fM&J1~X$8Y|4Yy(8Rf`8W-0_S+l}lFt9f-T3emwTjfAcF>@6mgm!(!*X2Eqew zI=`W%Ia+`P;MX=fooc2RAikp@9pL*R{)So^57#aF4NMNg6GK8wWjU+d#b9)>mxboW zne=d6An_J#>TU&R84F`SfEH7GOmq(+#$suXu=wv$;VakRG9i?osx8WW=l2yp zfp!&JGr~9Tz+lhmHe8ASL@u$?2z^qDhyeY z8n(;f5u~6?aM1K8Kx5Gmj^$eQQ(sc6$tludHE)| zTkyN;Y2ii6eUXg0ag&6ClJagyG+L7e%;{KQNFh4wPu|^lEZL!pmFE!OFE;1=b$JtS za{3#bjDSt&7!Il(_nMt%DMcbT)JC3FMDCF$zB45e zEwL)-AXHJJRk2%hAxbQEz=FE~d=gGnHs82$qgO$SV1M%W`Kx~ppY`H$7Y#^Vi8WJF zQm|;^b=(AKQfTEdo+5aZgT@7w_-!E935(2O9RQ-vcY~%C9BCWTPAD%#p`1xU?8Z15 zJ}K!?+C^Wm63_O7+X|(m#sy6g z1Ees2gp1E$aURX!GAOb-iDB%>4}%C1i99%T8bC<~;*X4w#}2y}Tb~K9eLXI=A;<*l z^-)t#?*W*-T#w5#ttz!`y0`~pa5$>WDnx(mkwjo^(?20MZUTwRm5-0^#1%b+Ql+Sm z%#;n^hZB*AU0a?J0CLZBg)W#(av+SAk9r2P0b7gu6qN|ZLNKK6G4-n0oV5j|~8YV1YfS^h_ zps;TWpkn0TdL_)l!PI?eSEM zl$q3yrTpu$$LZTmf0=ka{>ZrkkE7x4?*5C(3h1ikz`{(HMim$br}1=Rbo3>Lx$lu? zE}}Fp&v8uqSY=%5Cqj)34JX7tf~ywbigZGrSAHLVaL;!qO@ZTw*2j;5C|#nIYa6gZ zlq*C5v}VTmEI{Q{6Z7D~H&;(+Yb71~&Y`7(2n0em^~z%nbW?d021hR)ffN@yUCnhB39Efm(9lfCtM`kE;JiB00wJF z;_iE8##9|==Pv4KF$7dE=YsQM=k!zr400Q^IuRXKJC z=TB0cdG@ydKfG?g(@J3}S~8^a<6;F>&2T69ML3Y^xs&xmt?79%S&&f3LC!G8fUBic zXjpOYU?&+hwRG(bkN_=6-rI5a;-Ha)3rqSoo2NsQ02t1Mee6#;wfrr0n!#Ht%e5MHwhxV1;az=*7oife;wxo z69hy+JOktL{vrf4i@S_q&kmqGT0QrQva~G(_g5qL8#2LL(8>UL7;21!4KI4t};NLIKAOGr=veo(&ba8w~kIu2UpppcR+rM@dFNGoP7uM}=9*#w$ zzt94yr9j^U#<>p>o3tbuk7Ff?*j!CRodECo{6&@kNRqGZqG68>-7DXrG-moBEiC)1 zZNR%l;7KI7x4^x!8AiKTNmE_*l4LpM10LwGT`PK374(+_(LwrDp zKB6a}@k^Zp)`$UxZX8&jY!`C%({3S+9oSeXytBbzJZYM@rX^Yu6is!14F3=tXnvOr zfTGy$J>H1w9i(A_*a*O6k7s+`L;3{x8qCNqFHa^P_M{k9dl&J2ML3%d@ox&l-{}sp zLVBq7<3M7Qfa&}p1ty{vH8^;bMD!>N^y;g>A4Ll#Js6;YE>xZ^71}f~E)xNqYo37H zpad$T566=Ck%8O%O>}CJ6C2wDihcX;-MB#vlzlw9AN5X{Z@NiQPznQA{ifNp2~B5N z!E4~qKuzhXbXsD5Y3`51Y@$u_# zbi(?9b~x?I26#5A#9R^}k?YE(jg1O`F@n7J+{pC@4xnTInUc;_E&dyYYDnyx-h~vHo=HB2zBlffspj4FAg~$-*fjC-x=c^be`!R_e za7*xR6uG8V=V5lj3)W8Ke%zgZUmb7}0;Y|qXO;&mB4>UhgYdqJ-1mkPpL4?3ej1Tu z2HM?6u5&+~CkKx7e#$Z}m*o*5bfrw4LMN`c{5Z%X69`|^e%KW7lC#HYcaxJuz2 zz5X6EY}G?sY5E!aFUN~xH7qStp_WjX!y_^J>5cq@z*E z$wJ6i21w8>RX5>7H{G#|q5mtZk)6Yi_zho!4I-ytOQQka;5s>m%p2J+#nJ%z7Y0r3 zmYy@`lM@piuF@ZZJ^-j3RGO4Ar&7{!0r9!X(h}n0+9aC5R65n9^BabEiQq8NM;>m= z=j%(-Gyt37=Ht_Vn^j{Pbe&A*497aq+;f2n2+|6+g|O*?PyZE|Bj@lim~2HWYoSgO zdnyBr`3hJrB=mUgCbOBX{Gx#y)W*$FBTmlS{Cc5=0|3(+kG6qB%XU5~l_?7?k^b<^ zK!7(>$La4fbL1v&DD1=KsQi=c5#tiU%sA~6DM1hdFVI9hfK+>p1R5ajzNcwp?Gat5 zg>(8~eG4l~ve?oEz$CMI{nYt9RIqJUz1lhW91n>>8ODuVDr#GMRSmfc-RuFCbib zD*C=QGlOu|nI~P6Wm+)f4z=TqvQ~%Bb*cDBoG*S9RIV_SZ@FV0xTMa2++oU__8s6l z>{mJuAm=wSB#m?OYC*#uWEu^yj8Oda_U7<*i_-Qly|Y(=9dr*!MjbI?^bF`_yW^o7 zX@e>KWzDnfZ~TEW%f-XfI7vJPZ}h*@ZbMkJ47U9`bsvAI{$@e+!YOA*0Ob*3Ex>UV zNQy12fK_se$f<>vl~o7kM3?3;A%~qqpc_Te zPtHUNKu>#mpVoU!EF~$HH^Y|<3Qh12No(G8H%@3$J%Y&d|CXaNCy--O>Y)1rp^KL_ zub}xU?E3C-v$KB#r&oGYt}k7K9^l-tqAGF%&cIQK0o9`$xOg_hQf3{}?qsa{g=7C0 z=*+}*hubYQrk+ybX0(ksko1H6IaM{h6}&V^KsYRR<6#8Xf*cstmo(&rt`>kasKYS< z($Y9HTH1kZIsGqz!{jfzvW@iW9R?yNgoKM@Dm16C#I2PXX<8cCRatc!s6nrvff^Kr zt@OERqezSx(21{VhN^h{m_@~SVO2fU5#zuMk$n2ZTsYsP;)8e8kfs$X6aLvJ{ZRRU zxb9$BfWsr)5OA}}P1?&>-x3pL*zWp(5qtM8Yxk3+k9^7+8}`WvH5*}=$KoGv#YrE`z5TluDdfTH_33b^P= zpu*3Lu|>y?xhlfr=F~%|36H2;`1W4<=^O~Ungt4~Ewj;JfESTi8ze!=0|L^bbGgL9 zsO%2L&8ka*?N3Lbo=Ma17K41x9=E@qco(=B!7SuC*wuC@nTB+iwX@tS+lRrU#dxCc z4v`RwL10-Sl|G1O)!}?!Xg%@R7PSlZ2V)3Q6{Nu{g=DB){7*k{izdR;n=$Zf*Juid zx`YlO1}98yz+)X@e5!cS(NgmcM?^?1Rpb*jHwj=A(pF5YZ6j|^q392gItK!N%39R#>cIFDt{B#W z1VIvr1;HxG#ifEa0BcMK(D%~6>i7$gDvUyTrO4`qg9ORGBDigU6xuwoB_|=e0=4Yy z^n#Y>&NpDFo08RRD(83W)-9iKy*lD<&KwwWX#k+SGs;4-#Q-gEFvz;5ZBAyZkEB8> z&b_xnLc%=x7v0}Jz3A$5jrCjDsv$&&0ZMcopF^<&RqfNcH~S;C3D?o>xe6FF5sF@2 z4ES{AEP^2z@Orc_iI`Oz=GU%$=hyoNdE_40!`3r2rEA1m19`-NjhzVn{V%yvNKo&{ zG$;!x;-nf-zNmSq-2SGQ5iuhd9*})jfx5J=%Nf`P0)TDR!(qapqGwl;EQ->oG>-#g ztZIiVr&*1!J{=r_TmGYH%?q-y4G<aRk_ZW!K7_T zve&djegXPB4uH<`%4Z{XbZ1g-)PpMJh;#MNTP^8ujuEvy+hA(j>WAV;TJH14$j2Ht ziIvqc9eSZ zZQ5#q6>njos5N}TeI)8m&L^*C>_D=+hX(9zC&__N$189+}qUxQ7 z9-*?Kri>bxy<~CA3%Zv&r0JcWzFPI{$P)d;H6j1l?p&X$ix^89=qeJiKl@5f#rU?Y zEoE5UTAsMXRo(=CLQINLVoRyPD+so228=t>{LrxI7qk;R04%!7`Z*UB?t;T|3!r8P z8&c$+UWGaQ;1^3v_{%wHNETlWp;8M-L4)&4-@pz`pW}JqWx@yh{SRAZEPely0_$K) zDag@e4&$%~;S&!vj%feM)cNF+xqY(}WIEL!h`nki!^jCE_Fb46KCGLs?{|r^cpOj3 z#k})JvIm!6olt8!Q!}U?w@y1}hTmWm;Nlh1;g=BC4i0BgFt&_|<@Wia(pl?{t?ws6 zu6c!(skz(z0S#&4`OTxPqK>`iO58Jo;#v##8)0& zKef1d`S<7eD|UH@>}r`Aa%H;>Inqx(rL^??V&lPNMfVS6A9+cNgW?5RE+q8klg}Ez zP3H1?EdP;!w5;BQKNR44VAF|qtx`3%&tqNt!lMg(SXcJz`mI+3SI7M0V0lh7*^2n;PM5oL;V zyxo5dy9vc1u8a)sjL?-J89=ZcNRTR;k&*H4mnq<*!t$0^4puy(#2Xq|5&jOYm6#a1 z2lt=07#iE1D~tWeCG`7HJYqn~3vLOCv+hmNAfs0YP!g#b#lcBdPq(d?OokyVJ3AV} z=mBXpMsilx^!E=Iug59|a%Lx!GGVs(PH()Gw$#yz{jxNr!_3l`7J|lGSM8q}zIvs- z-bqB{Opn$xpfypRmj;1pf?Pq$?8*^n4k@AU?RD@n3N>SCx%tb{=lDaA2V)GeN~0As zrTx>yK|w)d*_n@GRD`D~N7P8QcEqdjhIS&*+QRFa!Ebw44b>ERg zU-zCyFP?uUp(}s5>ce8t;F{)4{$eIIfCjbLt&7eYy2c6T*yL?1AKvar+ zj20k9RL4_c9dF!Y%(9rkPhNv$Nv zkQ3vvv`6{*#rZ3knVGAqtq12X#+D(kf_X9bopP+65xyx?{nW@z;^O1J{%3q09rLt0 zZO{1nKlOY-l>z|5>OHKZQM_Si=UuLq%2v(J5|4P%m+Eejha?({Mc@=O;gOv_TK2*G z4)wA|mF{+lH{%l$_`zi+bkGmXBJYH=E7iXJV!??Ha1@DqW;m?>`Vf%<1DsUm!;|Zc zzpvNM%Olgq2L)k@jPn|ubQz@gy=mH&v+RW4=lTW>D?k=_+(%w(T4u zx1(ri;7`G?(||#Q?enS}o!APPo^uNezx#M{f)Ivj>M>AiyAk2PJ4T69FHeH z73`6%l)Urhy6|A#5htsJOG3zLH9k?u?!V=EJq4SXipx!gK@&dg%?cdw%W(| z5-#hT%4)X-gJpaH37}RR!cfp@qA$Q@JmuGeFIB3;9C1**6l{YqlIN zixc_?Al+E0+g8{*t7C|?P^(u%)CjhbggCVeLnIglsue)Yow#T~tpFsEC+bm|Y|Q!R z7#F$*!lz;(Xs?gi9kC^*v2`F))3cYnMYMa5I?QA)hWz6PZ8A0`HB~v{kgVmoFWGr{ zjvtO5J9b`I<}>kL1pOVO9g*@$6fK+Lg3vDzSg%(L{VouN+$T~rd=rXK*!1E8AMV28 zv@pgmO=AZH012F77xO9BZ&CQ2Wm9U1-OI|Lvup*_bz1o$Q0e8jR!7VC}h2zq}1Q~EICGv?k^ZrcI(Q|rD4u}(5QfQ+JJh8VrPLD*MxUCTW6W32% zY+QBTvFH0tX&#vM(1D#)X$1?IAsGupS8hD)Ditkg%{WO!N+7=>!>x zelTa{=ii5sZpSnEwHn8RVwN|6((-bhS@{Ox?@>IAb*s`#;;GyBp<{}nX7zk*-w{sE z4bMSAh@$dGPG2+=?&j9wy7JR9J10vtnah5|8?j!R#jLc~KM>)UY1+9OfgvZ81eNfSIzbi-n5JG98}sZERU+@ME~L;z=1+0kPJG- zj)1I+!w1BbUiwMq9g7MK_hYxA$*VTD03ovHo#&O@ZvpG7Iqnp665@koi)l`UgMpW0 z!t_%);fGQ>p*`EfzeB_uVs$5J`Y&7e$qe((lT%T7+D)|~@fFJAqL~^qCa-(wTq92G z!r#Ie*9;Oa@zQ<1aBi92tS@YG9?x!Y^CT>1?#A%9pZC~XvevE2Y|8bcdLe>!>PB!I7U9d_6CB`#83uBF{*viB05eV*pG8NF^iI1h1bwn zu7i|82i1{f@0$Q&MThkN{^Kq4Q9eG}yf0>EW=;$=pvgC1ApHzx*K-fyJ+h_QSirwZ zqkxU{#DmYlf8Fk!dO9SeK(Yx{K_4+K|4x-6fEV|dL5$iq8wg`qRmCMiyshFW804Y)}fK=82ik!M9=SC6vm{(~?ng~6;bvy1wdj+=I^ z{sguRXS7x0!{w*DF^`zCa&zOz>3N!g;$tWM5$awvBEIH8W<0Ky6CiaJbUHDxYxLA{ z&*_Qo3YPzuRSG(pb83(zHh<H@2rg=op&%Ut z!8auRH?yseT=q>Tvv9SA?=y3y1IG}?{@$277wy|o@q1!4=@16OFoWD>=fZvh;clDyH^XFOVRYIETZ#2OH$oxB+G77{29`+}Ha=(?KQhY#tN+X0=U zoN(42f>!sDOb4O9yMf!%>9%fyTA^=W!TU*YwTL*c=i9jd3d^1OeTiE-$h8gVp=CaP zdv>n2pbKEttxzIG49kKOUIq9-*#K27>VF$D9FCd-E>1A-U05iU;!grDWdZV&C5m); zuVn!9hv4osJo1ngKp-Blz!5Y)Aq5hs#bDbPrQlzgos}g@*DrNl$LrbzAnKnk4G{J< z{5df0*H#l!@|jyFuiajw9CxSiR}=&0Y3C={Yt6;U`AX=Xl@4zjA}5XT;QK-;iZU|8 zq=ab;1X3PMObVDs8qn8E&qxBhQHKjrZHd-kLS1VfS$@0xoRB zk%!b)3nn4$-}7kuyRLr zWE)c3w+H}n?phs8%)C##F^Sv=|~k-(RK9B>IggE@z#JOEmiPD6iK(v=Pn2@(HGC}?#c zR{1Yf(@J5;iqo)0M)AOpdn=65F`F5#3zR$6*hR+CZiXR%4LT)JQBk8G2mblzpMC-D zuLPWK4u|p&b}9Ps)c5b{z>fp;Zw%0#4E?5thW#H+?BHnQ>L}y<*7L^FpK1Uyl%cgx zM_u$8xJqP%atppeEw~G~W3jw zSDQmb{h_3W^w(xbQ`m!~{4nW<_mGgZ+~Iws?r~W}-u%W5950D`)lZm^RLQF%Rm)q` zvf9*ysih{E7kvDK<*&?PUk$s`GXQ&z`wmXY&VUgd_9_JFN@0{s9TakbjT5 zTS0Hxd-wgcX{R)_VRE6DWZUTsWXy4^$E~HhyYqu=u5-iHW z{%c5w9`W2DwOm|Ni~ds2%s^!P;Apgz*BW_4O}tRebyUwQn;*^lS&0OpW?2``OE92$9)4 z60YmeHQ@n94F?h9DbPRtEHlX|Uf7de^^Rf`T~#u4RrMQcyx$(^{NVg>}3XQfQNUT5jk#l~=U(DNps3h*ss zyQbN4UiCI zPc6W`y6)eLPf)qb?tJcFaL6_S$MZxE^wo7gjBEVCY*{y?3WVQdFw!WVdg0I`3}hXP zYsybV{$GVUB}uV&G!sX$V}diXnCwtiMWKZirHyYUu#;^k_O6y=0kVRX*az>-a&vQM zwdAQYv+Cp#`w7QlQ5fbfHE+9P%xn!%x4OuWql#8ffJZv>s8@) zneB~*ad3~Cv*_CUzhEpX22YFpjtTB$AHabzO`R5wj-M8Ux#8pHDnQI2JWK%Rh^Ca6 z&ea}bubm=dg%a&BLPom>$ln`(j{WM7shmRFr9dMkyYHQSNh^fZ={0w7BF*}ce`jW= zNnU}hw~{<2XeQVoyuk`dZ}tD<>%Zf<{{H`QJff1K%qUT2h>FaNiZU`HdzC0#_Fkog zP-J8$*)w~qM9AJ-AuD_D@9jL$tLOW3`ThQQJ}*6=<mOVha%DhhicMUjqYxCO-U&Jte$_1lU?CD^EZQJrQ)dETaD$@MWMK#K3en;Sivv{1_oNYiHeF=M_+$d%yK^l@{VAL z95$Yw(!1{qj{0L92pzsk79Gi+lVK*FSK;1(FeA+<2&N~neNRfW&%y0p!5zR>3UwB0(pl=ocBL`l`Isw4K*#XP(k8c-{tB;-G zIbn&3joe3pq>A*pUY!KI*##vHt3ZUW^5M9&KLW&*%&Rf3(#$DI}B4AEC!!te-f3<}S#71oqNay}FD#(V;|*`1KIw4b_Jq^&puYK$R+gpq`Xw z2QBg3-224(}uN& zH?n`KsH!^5a4h*&IUx=_aUY?q3dC2;;?Ojzx=l%=Drmd3_M z&R|ma#$)iV!`#|#X;9JUO}2ur!yBN>=G-N@gHQ!Djg)RRua2Qm(|_7Dgpim-XLq{y z05+?UAdLX_-TNRCi9|1YE^4qiLG}6A9IpDaWi!y&2?VfkciIeSbc_^Ers0bSwxiu^ zdk5N?XJ4aXijUBvAEyd{2r9tEzANUp`>kDFSB{QJI|9dm_~LoJ9=Hy404uMZ*?CW8 zxqk$4!#kn)ufO@%MPl}@8(0^M!5B$nQI$6hKs|zm%wJHS%uyar`wYJ+P~L$bCs>4< z$d&C&{WgU!QF8f&S$4k9Mq8s;+1F_+C-I)%jV}%2(}{`Nc=#MsGKX;}kG8hAOMt1@ zCIIzwpEXr1gHqn+YD3PA4Uq7gS_i8ZNl-C8f)OWk4Z{JA@C!(NwNKCfXA_cDgt6a~ zmOIBVi;0R1^nj&wd)?Pud==tu=)$rA@NM?v$O)EzA8giDSW3$0%@ax}Bi))PAjLUx zqG^Bwx+EDNj=+2bdd%`Ma6qBae0A#fVa%E7K!?7rnyQ4EnfVp-8K`s2_`(_DLEof$ zHLNS+Imp++Y`gE|(Oqe_>`dX$8#Cw@x%a2*A)f{2dJJc63SfALuE*oJoSyT4vKp*c ze~#TG6rkhovkb`e?uHm65@pJ1gf7mn?l$gD;?dF~2@}61AHP!G(z*{t2Z2p`F^Ht= z)Q9teYQoX~AU~yrg;=^lUmGR!apdL8f4YdT!Ubc7E|^UmB4`TO`UyMT0Mbk;2`MRs zOthtU7$9k8@chN#(l^CPN=_C{7pbqSGk%*L{Q5Nw;Qq`Dr6GFj2=#d-!#tr({F?huttf zK$?)8M6`E~#XZMw#8momGlMZB#Y2?Mx8ft2FT~33b{jLC2EfZ{yg#8v`aQoJqS#mZ zY^Yyj{%RAVRaiJAL6&z~YM?_sTknnKL~FGa$7OK0+uP)@8&>@>Glh!J4$o9mHIj1; zm#pESujZm|g46a(7(Eq>2uEESCuZyc`%-p*w=DZJA^g^+f-rkhQ$-0t$|;}^J-)08 zc=?k0=oYqM3$>f7sL4>TaZ5{Jd@OHXd=S~694x=}QBO!cAyaeGA0uV30A zR~?f1!GGH1#%}&W?N;;SP9~emc{|hM2c-$oG_;=utS9c_N#5a{k@0gSZ}j?u+Owd0 z)TOdHZBrKT>C+YDeLXd;228_nxTdgX4x@cONPt!H-42qdN{7f?DHms81Qa}^to%cvS?K6s!88&IIWg zRrZY{hWtrGW2J7OyQr-JDybm4o|JVRy;rs)$nm0b(y*r;qz&vKs{2rt>~6=s_kKbd zyYTB4Tmho^#GPD6Umt3J=+?Gg2CsbE#aHDVWX5lhE2&RSb*>a~SSMwck2H1*TnUN7 zy1F0dv>V#u6nZC#`wG5vDO_C#*aHn74DAIlpf2WRF>dKU)M>$3c6KRfE z;Qa(~@nED$@Uheq(?)y321z+163YFG|7vk%%G7z`G$=wtwB4&|XbvDO4h_1}ebU=0BqMtsZc|U3I;XRRASR&*NnX3UV3b-|OpxpaY!q zlHuC5-h|(2)zdJ_xJdcz8Txn^VmQ=mkMAYx>zyxB)ayuxVzZ8VIGFYY0aeXFEZL+P z4SF~iYydlGYZTr?9k$%q3QIS*k0lYHaQ7g)U5IW_lLmidAQ7A1!2-WR$xj~>i7<`h z4xF>#5AcxtSPvHxS%>RN{j@uv0r%rKe7p^I;esh@iayUEIlELOU-$IH3I86u6X?&F zkbpznhcPl9)js6_p{2O$XcSq>)o?i7WCQS)M58p{$}1^##569}jIN8=SjX#~Ja-tH z;8Ccd-R;>LadRS|D@V=&ygHOw!IImHuQd6kqG|kYC+|LsEV$aE^4np{$|5|P1_?KJ zw*Eb##L77afp@}r?!pxis=fij(Tqs{|!K?<{tjU#` zQpjM-%)Ty1raqYB-wD{p1Ofd5B!~W^P3;zDzI5l}mNq=^V5>^YU7Nc-*8 zgn@CP{X2UTOUkkXM?}iHBYk})C>zj8l908jnKM3W z&s{(Q_RagCYl&nC`PKh`j^BBZ!aH*8h$0eC>ENg@3!kj$c!wHtd4_zU`(oQ@yCq$G5RI0lo62cDk4x5j^VV1se` zYdsHvt=8Tg8K322YY*m=Wk#TeuP|BdK7%4P(-9~%1&4O-KHiY;;#1VA%O3M zVNkv)P*4JS4WL$HJL8&-p>r)ld_4Rrs%KZ$zjdgF(Bqrr2Q*>IxXr zp4pgSk@snIcaI9_jh7;pR1VR1;aiO_2g8612-Rk8h9+RhUIh}QO=4FF+fe6_FoEO; zj2*p8m$QvgmtNH6aLfOBjc}Zwpw3meMV-XosFHV7@99G)1)DyuRRB+LQn>&J+}iVv zeWN&I1l{%P*W;?784fF`h~**!qTDHOp)K1pS5;YAgU1*?xR^bbMh$Llx8U;4UD)VX zqyAQb=#w~c!aqHzB_M}=JJYRu^u(LDbeDm=D4_2T@V3?9a-dJV>PUSwRl}10_Hh&p z!cOmwY&wrzgSpTr^AQRDV7P8;L6Xr8Bk>BKi8*CBA;NZc1)1JYp!I*yXoMBK>nG5B zITIFP?=EOGz>=~*#*uhGq1q?(#QmP^r$vfRm^fX^Iyh53WpA>N0h5*od33mbyMtw@ zFwA>kvs$&aX=~)(L9xQ(Pe`IzYrYu~%*yvJsO@u4Af2og+MXi}CR+fwX$`58`cFA6 zKFl@nGE=e>ad@n(tgO%YU7LRi48~ZW5KCvt({E`p2 z>vklt7qOuSvRuwLfTCx&xNu%`wrXmO5}AK_mo%fBKFo#s(C7=9y;_@rt*9EHdLk<0 zm2@XlL2@CcdKP-$Q>ACI(YB>Lx~gjK03-7=AV{=oT<(h145?T=qXIDj;-YmtM#2MC z^Lo1&1%%Hdq#`o3FB~pe4zUWx`7gNIhT^KHmW(T2o@@qE7nkpgarCz=lk+&PW&j+q3-?#e z%s0@*J4KGymIoMk$S+MpXQe+mY(#0D7p7^%Erz34SXg-XN|B~zR|d!^gqln#%gWLK zm`>j^e4C)%`|WvJ+Jjr?25~1Dc`Nayv4P|P_x#)K*=NHb&H~21&6c9?=jKpT(yS%U z^P3JgOUvi6!9Z+8ln-~DueQz{Z;+6XK>o|tD;kzfq6j3Pu1(*5yJ=I znrwVS&mfOA?GsQqI(5Dz7JS=3KKFdlE$PU z)xPFjeJgFL12O2+-I$`Q1J@rYIMG{se>)GM;L68N@G!ZjsL1yx{$VFW(P3QNcfR7N z@+^z2{cVm zYF6w?*h*P>`psJ%x`Nv>p~J?tG?9u&^+bQ-;*)jy%maw2FQFdP)+{|ZkQsnE=xFAd zTN5DU;ii@_dnxd)J4Qf0jcl~`Hbe}Bu7{6d zyU{{>axmOb5%L*h)@VFY)LAd&OO0N2k;P#fpQ#!%Gi`$)NQdU`Z5# zPrx!X3Y{Bsn0xaSGdb+3LITv|2m)iw-oom8{;DIc-}ccPmV>7PNw=lXKPP{8G+Hb(2)LRcbWgEmK*^&=oZK0gJr=-L!Va?9MVrWeQxI%WWD~2N@ zBXs3q=gfq#v6vgXhpkKWZnI=6-Mc3S)l4`uY|(1K+Js*0yYx=OCY9!0NtgQ>%tm!} zz3EmMN?EOu`vZo$7nrXocu{goBecyfSnvH7Zlue$9l}^lVIwLM(orTjh+4I8zMJ%* zvT|s&u$J)u&HDECXn6s=o@+PIe-YyA1;&HwLr-0drzo^v=Vt#LL!DV17~&LlC|Px+ zhrTvx2lViHxQQ&gr2>BEFh?;w0~+ky>P0@j&ZS7TOfyMIJ~(Q z#16Fz(E)mj7#<B;&f0T>{y0tJK79|$sDF>Gh0;4%tPst`HxZ^XrHoWTe{PC1O)onwaR#Nh^%83a@8 zOM;2@IcQKXX0?4nItk_cxSU-j01``htFG1M1SRRM8wpu)o>QTNCOydE=-jz;(td3< zKcFuRis?uErAihaT)%fDTU9uq2VB!wkT{0*By@fQ!Hs0)lU`E{Lsk30O;i9E4Fuww zEUrkHm`u;r{GrRrTPL})m#~_UGi{F1R*Oppm>+hTF=q4@lepsF`+-r)+~LfzPIEUv z*VRC?e(F#@5W+_wtLCCoChi;nd`*$F>XuQ+mwBsB!Pbh1f`z}AK z57%EW4KJg}IQ#ErSXIH8J+h5IdOkJ_1_b2*ofml0Aix65cP^4f_ZpyxcGo3T%RqKv z@Kr1X17V5Qj0X6d7!S0K%)LH=eZ&Pg)2+8{`Wj<#9@l}b_I7>8L`~>en%1Og_(@o3 zDuf4ZlCW6kf4`l~ATZ7*08mfl@J(B=h4z zh)EJB5TC?{%fMCmpj)?UCY#zLx`GZ8ve0G`;8|wM$4d-{Tn7B(po-i4ym=G;dtl>J zO2sxTw1bxjW29}2{(*JDXabSZzc8nEI_8Z-qhE;CI8{2V`y5CU| z_d;ta=2XuzI2Lu$=NXPHgWFL2b)Lc}w+6~vM40!x46A;^3W`DKj$Ua~sw3CU6oZ~w z1qi4qYsc8R*xN!ox=J5A&bSEr`@;Z0wz8{7tfsVr-;^F(fIzfE$h+EyO((HTPY&7( zn(`8tl2;+B^%`U`f3Rgh9X3AFz9xIseI_;J<=@&69f~)o!8!I=XI(|zspY9<=%Dm8 zi5~@I983s2kJ8L&9~??eyUr&yP_I*5x-a~{g&=JlZU;uq5QN3cv|TxXF$67-8Owy- z6DVsD&#`W3UZiL}15_Ndqj^*M3c5c#_|BW$a#jzvn28Q8TvdeWT6aV zH}Ug@eKGZ<6ciUg{_Bc~dgqsCq`TMc4k=S##&u{_iM@GNA=snfQCTGkh@T2jW(flP zi0E8%U<9;zKxi$hQ#8JKg$9 zoE^bKm)XyUkyaZ9{sC|QZ&LFcAE=aHS9^iWVloNDUq{7uM>$`Zh@jiCN51w8tY8ls z@rvZpnbl+ocjJ>>Ehb!zs>Chy1@}<@35FDPndjrS#vLPf~^=%ql7T0|Rx*qXi#3LNl_L znCAn^2sK%w$*s%a60Mvj2NGHpEz+$UX;(8{`t=>}KX+&Eh3Mx$vxUPy#04Um{$5@x zgc|lk6vZLN*RueQ$-{vL$S}a!t*@iYBwL#p^8w{9NcyXriQ-EHON+Y~xJ>d=$py^j ztY<4a$LD-F;EMQD93@COTw}2q=Sw*r63M>F>d`?6ErQB1{n^VU+J^Oi{59Ou(%A#S@Jy%E%GT z<96k4E2Q!1U0xtFZ>m76%tf#$1s=3mS~wt;v#Tlh`Sa%#J(Ig&vCZ4U#OD!oHB2#~ zIc%FM0f-t)=i!cEg^7zbpEQsw0XN+<_QB;b)J8sGns+{G=^t5r<~r^B8ax=)zc*!! zFEBgx@*5U@kpAjrc5$wew;6yjh&BpEE>d#%9RaB?t7>)v{Y~@z!4}SIOauvL3shHP z^U6|w#XP-R-=7ken9926)VBKt^D zjH$>LU~dGYy)nZ0au(j)4i1Eca{yDZ#&4k$l~Tl%c1Kq8Tp98^7>ha>OM&{sW!R+J zmITH?(tb@5H!Q18^u(DGgeX{aJiK}1#w$9F)L79gj#<)#5o%1)cp~dA*NNMfl7TMN z=X^;>NNahzuP0_y0oL{{%+!KE0Av0&kcA|^rb7yb(O6htnxtoBtP(S4Ea=mffx zb>e-w5thy3aZ06#;ci`Z^^SGAjD1J?@v>1bdsACZyT`}YmD>%DL9K9_A+y6JeTR^e zONtKU{_|UK$8pcAUhKeW*KT3ZXDg(M1H zfR1;gXNUX{HS8^~t@Fd8NMCXBTl6bq;sK6kiJIgVsQfUSOueOUz<mR;nVT74@QlEUl23>sNfPF>f$cTa~dvx6~v@?lK^T?IEpf|y ztH>9^Z&i}*ptF*?)4}|^FzZ!T5J<;ttjw&Ode4v-rm-4Ne%#>4aW$B8A3Jra{Gr*^ zGa&%Bd+=zlhQyYRX69E*kqnlYo*(&bm(*?mXK|rA+F)%(L zFu>pcPV!l2beb+(Pqs^CYnMPlu(r;v81Vk;<)ZCJ8>U+Y=}NCVlD3bVt{=K9ztb*a znkqe=GQL2RW7x^*d7J&#llDckxFQ_eBv7sHO-Pzf(FMg+Qfd_3tqc^Twlo_o)Hngz zb>kiHZd!3f-3@m2x6nv7(PYJU=iN~nWB#c^DvB+L?2p((J~wI`v{F%z!!(S#)Ps=P z3lL-`pGcZG)h)o_aDMx~#ockJRyFCPXGlY)c*Yd4i1+US%&O&UpyaiZpvE_p>|slc z5oQwl4i&$G@D<#wi5gi*u8zxwG5A@5h$0y2_FSNh!ywIt2OqnELWHEEVo(*2^HQ=F zFO^!rZ7!qE`yGt?C!rI(w40J<>Wo8ij5C#A>F8}ujKz^33aLw{?&k~DVrOd9F??(c zY9hBru%((!Y+Kx|dR(||oKROdwLA@Pg3{${ocJ&M%TKf70$BkC(BJ!7eLB78r2WR> zUvzmzj(p?$=3S{Lm^N1*X0mCr>aty1nFx7Hha?gO^yOF{9ZR_xCSkJj_6zdPfi#c6 zgBmpg2BlHm=y>-&pdRNzbFu~@o(ll(2l2_3J@TM7hQ@~i92(=`E-uJz^|s%g1o0_Q zk<2Q&sRM(zSuEIAPJ?tO&%@b^cNKisax^itwVu>-+s;>o6eSVf*q|gX-fo|ql43NU zyliOF;^lz~la{ZR^=N*w)Kp?ytlmaXrL~ZOKGVTN$DZ)1gOWA~Tn(i8u~bh1nBon@Yn$gidf|ZolLXJq zmQ1JsF=?jL59TRD-8C3I&aIk-W~AYb+qVqc-X8F9cRvM9vN9n!X`0lcxpjv&YGPsk*%{T`yz_+HUuNyp;b#%HiGWW#A-JU$!_Z zmYR|j;;v(ArM)1Naj9kdIDczftJpS}A}&@l%9TF$Yb7C*5Hm`#JjEkhsA=vg5@Gh@ z<+t-)egco^`V76xruoLXEFJ|c-22nVvSwO#ksd6C6;xE@D6MuxBPH@O3Q1tEh26L?Ge6o#y~!NCsaEk76( zDVo}}dwF~N5Ju-1JY`7ga9IkTm^kaUr7P>-BajH95xZY+&`bCyW7JElIqeG;83+BR z=0bT8IadV6E;WsE#yK_H(0evNOdj1%c*1JAt9hezgKqM@$16HpV*!&=73kDY{Z2?u z3raam{kE8UfFv>1it?Fa=*&Wci-gDLXJLPoRsl9WHscc9?N2m12@$zs+Z~KRh~|vd z9H8fLhD9ljlR2MX;s_P^_<`D`Dj+-6VQo>bxm$7&q$RGfea|#jWg3LMM=w1i1Qo}- zyA}NjF_fi&C(HN~E+xTaqYszf0mR=?49XyCJ{5Nua~Z0}YY*pLq-gPGBQfN#;c6{q5&PCZ>d@ zhNXdAZYdGdiN|NH2xsGEq3}V$1L+qGg98W`k>Bt7h}xjZvrdhddG_KI4^alDiKH|- z@(x@7Mj=BKAO~A?v{E}uA5XOINE+oS$JVaSHIKiQuV~Kv0JuxqwVgG;%UZz;4cwI% zKsRd0uwiY1{B{#dhAtx_; zf3ay|@*oVCX0ZB{+|Fr{0^}ro1;?}amL+c5PA_v@r z0h1}vNR5^97jm-~joM%ugM_~&pa>oYoVdx7?XmqsbtGE^6Fu29m^7!|7CeMFCwlaXU!M?n1ZL^n;sF3l#99IHr`>Gz2}Ooufrev|yj-kf6~WNxo3ibk z@Y%%{Km=z^25;1`+{&>vhDh`MwVzPXU_!#Jt#1ATjb{aaKGo6*2=x85Lrk?^pnLru zeR~!b1tt@{ppX3t*po%?Wca5z3jlG}bMAcHKeWUHZn-3Tqt$My#ODPs022Iwpg&!| zb~OZ~uP_+qforBB|A*r+C<>v(p{bgN1Wo}>Id|FYdk)crBdd|Z<8e~jQZm6Y4T2oU z1+yJ&JjKP|UR(crn zf*p5C{)F)^jBY%8sxtgEQWFS7i}au?PcZVMida(Wd)ZN^PZ)TSfrXyU zq~oz&)q=fZwx1=MdZvY6_rZcD>RI!5XMTeFk zE26B9@$E(#^csQ$Xdfm($EWuKs@TLpiM;Q%YU&mU*uDnE1{>+BT@2UWs~#M|4qdSv zEXTS45djQG@>3sw zx4o;Z{3f=-Z9gvgcMec>mR?gRl5~W*;**Bcf-4OWh z!qtx-<&^F=4X^g4<=^;~UXt6i)&I6P4awQcM6Ql#ALx0$Ic4e+0P5{Mtr+4K&|wkT z8L)bCKL=N)z+ImGF?Z+I*8sCid%AkNYib*XxCuCi4?Aex7lDR~AU%>kiC}vQrJD;` zqfRmmyE-r4McPXdfA{I?hjNJPY^cjHc3Q(X)R|@*GTFQ_sSKDPREiyKmN@C#4Hoyv z71#nF@^6y|Itb$iFZzVuLAU0*FifQyIBFE(qev|{ZUs2L; z1+!iCF=~j~rqd1MK8;q4@JAS9Rq5)Ne0BgUj+@n9j2j|NSE1cVFI^vXCi8x^x$W@g zP}@*)s$zBi6ju|pQaH85Ogcs@UDjKoh69x}&GI=@`_mM9QKcd5fXAwyFN>_$i^icH zF);j%cZxK*qaoQ;MYgedQid4oU)%|*SW@BW8Bf+3!B4x&qm`G0A%{j35(vV_zlnIL znCF{iaRbF%adY!eZ#tbJNK%k89|jp)Rjg^4o%mf_?tCbxp>Z+maYGQG3o}&=QQJ*4 z`5UNtRs&0j?&?(qa3*C#dZsX4k?036`w!=fo!gk_QjI}_NAdO0-lQcu6_>L>0EVI$ zdI}Y8{Q4E!088ijr`xx5_URd?-xNa*slWSYz+mrdk4u|^T(Na(Qv(+yM&Z12#U>GE zTD>2GCB7_mg!w7~NdA-Q?;k^3FVZzwu2b<-?xZEBycI}H1mNpR!^&Y?@x_8siP5Zj z|BU_;dZzO?SdTNi>+UQ>$t_Bnm$1|2P5J{?Vg%aW!Dxb|0vu9F)W zKqjF6V_{Ybx8zD9E#LlLa&t9#u#FT25b&@zm_0AKz7&iF3t)&(f9;w&xKGeS&2FJj z)<@>_#U1a~jYeQjvLcT9hoQxTt02VMoSz^YFxkLAb1k^is@-#VS&?{u$a*9@KzO>A zU9#V0n^s`7A^5x2R?W*Vg*u)(LfiRsC5jd^Wwx1fPR8P%_Z~fxIDFXC+W};6o29~D zIh!Q*ZZCCw+6gsuR&1)76571)*cNyBvB2hRgUxeyv8XEQ;QEJETo*#@dW_{}e|l7I zmHPLlWjX`NpwdF&_P0xmYiU4C*ziEPTJ%NS#a{~`($g(v2UE*iwjL2i=%CryEFCDzHL;w|Cy?F&R38&m%D1%nsb%eE*3MtqU&R7p zpy(jNha3!7kxMV~2sXJSB_{+^oR0v7LHaiDxQs(3iQAQoJG_DrkMs6`-Uf_9eY}aS z4xg2(^z-ua2SY$*5as$Km$J()K(Ds=dNeaM%hd^me&W!E7lR4k*OdWN$AJfpG!$SG zTDj6aI#|aoX&WVY%imVa=+E4&3-|%YUZMTEnrCdj@xExneYf#X z_<+j3GTOksj(c0QI)lCJn)8o-N%lZ!fBCrBl&orx1DssCs)yS!2oa*2s)GG{uJ&Ul zn~5^>c`76D+l4Mv6C=KurlxjZAi`di8Q@zG;_-{~}y7#e&INbdV0JN6 z<1@ST#Qh4um?hfo4osZLw+xE&np4Bx44bU!dX(h)yyyaqh%CYyzvZao`*)sv0E?Z- z7NiwkF$VzQF;GTuEw=jmS(i;S+QbqN{+e&PO6I@TYdvY869yyrv zAA=SpV64Mo#DVzzFlu&{9O9i6F?UGDqu32Put#NuSuzaim)E(*QuBP3tkQX{?<6hE z(_OoKmyYTCnE%T9r1@&;hVKfbKCNmyT z>K!+Yq0b-(GDVvk?xT?b(q(H>0bZdmqwK1vs%BQc4O?%`t`;xU2O#2AY8C*h=D}c^ zw->J(pIX%&-N3AWQ=y~TsvBUuM)ULMPr+io8-KGpbkp3%2E_2EhgAd+UyiHkz!rdH z=f;g2t|+QrI}f+`ZDk6Q{aa}_%9g(?hg(@x=#&ts8H{M{tSbd*XxWXBBI2fx*O)3r zUrJkR>vu?9Ma$r745*w!Z6y9X14gJ6x&xGFBe9~59KJ`O{5iJ(j5*{&8k>@GXMTP@ zp|{^iieNvQo04_{V@eK2#qJ$jH7q`19~40}t%$8yHVLwLXE@qL{d1^Lv73!855J zkHo$l=jNQy%7?0V^V5*bUeVhT5d;GsO1x?40a<7IfLv$i6qBG}|Ku+Q@YkIsMD8u` zz;5~8rul=rUlsbEd_8Us7xh}z4HevfdX)WivhkwW-P|-689qk2@ERc5SFotdHFf;~ z<~+_YbSoN&R3*bCMKqeTB2iiUTih2H(SoTRXWhaIA@vVnb@5= zbLP+6?C9unv5<~9g`X@eEND_52wgh~2tc3^N;qGBknlTbcKf&>XGApWTWDz=w0m9& zI#UmZPC4C7FD`~466!7ljB6EOB(8-l?yo#fvGU;eFV6wS_ekUv$;oqDEzPmd>J}KJ zjD&2rmgGK}M7T51iH)!~ya9j&dGSV?PQP9JlsOGgF98)++pR#lZ{&ZCl z|NKyYO@95_w(SS!cX@pbxZwD@new&V?aE-FQUwuZcY@5fQYZ5#{nrvdsnXjw(^Wf6 zT^-u42Q6JEayFyZ4swVWg8<|e2QB51*}E3VOB#6K#j7Vp5eBdpTL!9$OxjT6Nw6Xq zbNX-8mHDez^$X15(5QR4K{N~Dv5vy!R`QGU1kOLN3k<`Qu@SZWu7){W_4AOBau?W2 zxps)y8Y95a7?($VC_{wdd_gYEb87&S$>{0n=|j+jvkHEX814IsV0>f$upjjmB`f_b zd@pj5Vi>5iyqd6D=kV{TTg>0@bU2De$7RSm7tY>DTpO|Tqi4NSxIJw{WY#PmGoS?B zOkiA|Yg0_V>shi1W>uX^S`@Vwkgf|gvlsGPf`_)ye;t8=Qvg8V*1!#3 ziscJ;&TD`{ia{iSw6`*Z1)K|!MW|r!XeNfv4j<`!PBvH9`%l?&_YmH+FBvIxiRhrV zGJi6yUR6DnlXL$1^~(2FIXV7Y(6;PnNk0X{4v>Ts`}Gu;h=_bNL# zX+M#LV8Hj0B+$kPD13!lKKUxbQLGa|Lg1OP<5$9u3!rB4oJSIM@#cblyl~ zcdZo9r0$dxHuv4jowihPnOPXd8dqD1Tu7vh8yB>amS;jx>KMPT50;MVC4$RrFTpDw1@UqIBW8KlDg`0=AZjI)nZa?bj?R|Eaa zKmj~IR7W0LptM~ZJBgzvQ9hoImi8upwB5q*W)MyCqWZB*oPa-3eh?Q)p4kEM0aYu& zT%F|n0zZJ$eVWn)O>Ns~VP0}+5;1)l|kt6|B2{V?}P=UQcH&8MRl8VKU2G2ix9VHpJ!RD!f zms|vKRCq`_0U?p_YZ>1oJw09Bx=UAX)Wy&81vtm-{@A6^a%dM0n<)(5i}y9^D^vgp z>N9b(K#@esuwcz{i{(Z7_k6Hm%3+%U+tGO_F8HtMKnv{(NJ~uRK*85S$Y&) zr!NW;>MgguYX|I37-CD9dbv!b4 z)LjUy8Wv{sYj0aYD>U`5V3NIFmgvIVL~K2 z0(GHSU}1S6r2_Fe`? zlC#}M!%43_UWS?iJkLROLL5MQz#dVVOwm+Sj3XUFqaE^#vk<~1Kn%A%&nJeZ*DHEeaB8ORfQ-^@BH9_Txb|eLD@F*J1v)sy7ctj;p-86;zhA^iSp@@%LAf} zGBs}JZpMzaUg-OCQ?mOG9a(lpx)MB@t+Xp1xfCy zXIx9~)z;p(%i~@H?-8LL|A|f&Rn?@eJo}^d(4u>9^(5W%x|xF%)2Dq)CEHM8aggK- zyL9~%mr>(!Dbmv0cOqGx6(>b47UbkAxJ)C%HA+-%dJ zV+!-Mcv?sGw4lw4tXH`SXrBuPGTCEJ2JvnbP6^SLDbMc zYA<}f=g0*g^WkU$VLhU9hjE*dh1D?t;IbKXF77^`LUqd5>_xAhw(Ao&c@-+MfF*WU z=1X;5U7O%5d5vGxAgQ1aFcY6QcY8G-zGdBq;hkkdcd_~MPT7UaHXGKdryW$BOIz`d zoG7dGp^v^zh&Mf;MY%X`QT?5xBdyJ=*TQ8(iu>lybl*2VaEGp_7^}Z1^Z-ydNT{Zp zD!yMWDgIz$7;PON8M|gmiH9{OCAUcm>B`Dj)7O;o0BC=;x*{t_9YE_7oj%QiZnD+2 zwYKsk)?I`ax};%iL^3@A&Izy6diK{wa9_R%bo$6sT$d5D^oVTlG(BS|C!mg3u_umy zw124L44!#nfSB=#qM_IwC&5P?BC$mPM3@?Pd$>$I5&;q=U`!glmi|cyma+Bm$-RuH z)i10M5o$!f*jo3zDyWJ5A;xkv32)+V_XI;Vm9T-J^q;ETq-jTx@4yH}>8GsqNnX2hHc|T8$IlMw7_d)-nS# z4((5`#9=7(iUC~On(9x@f#_|=(YHZCHP90I2z17JVJCeh@J>w6IcK&X$)j`83A$*v zybIGhfJKW>(qp78DM8e;xkf5M%gLqqg@~wv=%iWoTGpew=A#_7gbJ;t-~^Qj44~)B z9P6=A|MQh}q1)~)Xn;`&i2i~gM}7o=#9|=0cR$Y@fPL2%esHjLzM=p3I*I1Of!!-2 zpr9gvRj?^56%OoLJ1=?T@Keh$TJ}cH$WPH;KSuWi?C^Naez|K@Ok{ombNDN=3C9hT`-C+ zZMvW*cl`J0Kx&xs&@VbVhTky--sJ2-aL;s8xj-IS3y7-=+uPfPhGF_o?bjcsYnBX; zM!8srw9Cr~(8IiuTfSx(^0l@Tt3dcUvmMd+QIh-}pOwK?#ow~~`vP4+vm{swjgkKT z=K+UKaB~7Af;o*k8|A;y6Tt78!M0%1b(;*(dcunX|T!UvPN>lkqe(w&{SunZs`a zap{UdD^uUn51yYe-E4*{5Xl>TU4-+_kVMOY4v8%G#Ecg>uqx$l&D^4;rlx)e4hq@E zJ!H`2+1mo}r!M8Y8pI$o4QQtlZ~$E`7(RmXn&cPQryO|TA{&<_&IZXmDH4_cWHBmT zr0(S8lrudwp|l_FVcz2aZ_dV#qi8Q8xUL)_iT~(%@q##udHVMwK0bjFCr_H!4t}<7 zVK3V>N9HF=HdIJP35MQ0Q#H%L?NS2NmDWjv-|%U{M^OHYVlU(dfdD~v5O0q~bm0Au zFTh10Kj23a1OT1CIZo=d#lhEL-Em49w)@wJE7&Oa6$vjHH)@J`&S~0z<{#cXH$2od zgI@0bU7Ak(T~hp{ns!XMMvesc${j7OcMg9-=pqF#KG)S99fdK@&RZ9_qYJCToW7to z6^v~xLmmkWy8@*^4PZS#>V=&_fKeQ)t?BZmOBw#RFZX@GZQT)Fx3zS~!B~U90f807 zc7sS(>q*RbChZJRQvo$gvNX(q7I9DO37i{WlYewwx^( z5(a>n>OC8L-~V+u6I{WakW^Uvuh)g_akn3)rA>wTqb7jps`2erSGk{6O-@14oTkB# zdI}$*J}RuT`|6JBB(V3Tit7e%Q(*0#(9&`E`doNdx^;hzF-X_Koa95HzAwIMH$`^F z8u*-o-*k;f>!<(N-4-^H+fiiQsC0#cW9pHIhleCwdMx=z|B=W@qJ{FnYLRDux_lxb zU${F)R6C4c32koyy{WD&xyJOUYa5>r7h06)-T;|qIy$=VFcKKMG?JWFD1n^UO@Gqt zI(6Z^x*)uB>0u;y%x-ZL9fSjuHPnNN5hP|3x_8|H`n;_OQ4sS`4R-lpGc2sdbF^&^ zk$$hKY3_FqqIPz6R$Z|^OQF+9EZMpDxc8ah#2&XQJhJ~qkFm*y2QlOh>!f}!Isd;v zfA`IJT$DT{;YcYJTz}giq(LvB2zjV36431)j0F#8GpD_@I-on910aO*bazPd>+6V~_74(W?d3zB(HJ7&p%HIF~EWNV;RN)-o` zX+0DIx+uQ?9mej*ftI5riWJr;h-Q2%a7~+YH^l7$5>C^by^oQdUmKe3p=86v&f3r zP(2(H8e0J!@chd*=~D$S?y1IK5jOpAPSW18Eg?Q|Bt+ppfIL*+*J{}G>9&(p132h! z)Ji910(=7$2Od6GNWIpt(Xg`qFmw_-1J^t3w<5E8(l=T2EOjedZNqd>js|?laV2BOPu)fo-Z%YpiScGvuBzAf4*|Lr)%A#0Q7pH zGhW}2vA$M4Sm`tJhCzyXn2ho?%L6<-ZO@kpjgB1B>rg+8fYOLXs48f!yT5o5dfCeS z1{im>`mjJBrG#k*?3L6VR1b=>X*#I9-beVsX&1+l4(B;nJNl4MWt|aL3;jodP$*=!ZoPotT>+v(Xw0pPO`j5`~w2 zaYEpoy%5*^@&nK=AmD=#D207!^+aQs^x*=?%+_%4J@}n(HuQ%GI?WEc{rK!+>)?L6 zT(;BpeAcj6Ipu$woI^U~n%yU8!u3Bem`Hp*aSIzFYRJuKn971o8gtSE>9xy%UqKV^ zx;IQJdp8IsAb-S$Mnnu>-steKI^Bs=rEG>rN0A^!T*zh3@%|Oef|n43TPo*uqI1ZO!bG$LSbX!ht*^SmrLpJ_Plr6JC{5Y zZ6EJ|*CD6+3Lb?=duc@Uh1<0$C{=^Os9t4uH6B(vu`!BAF=HX@wK>qLZ#CPoX;@f`2NF#Sd4Q^biDp* zi#tdlB2b?$h=CHcNQjBO26P9<$2)9CY$IGJ+S5#Q?)LT6`hi>~@)DY~Vxar`7r|b7 zhwDo%lqO)MOq!b1fKcEaFo8wmT|M{M0(K)UPKZ?D7OS7KQ zMdu4h?gZKJNH+cIYV-AHgv_xd|Jn0*UK5-N*cN^*gKeSNMuE<(kRn9+Lr9jRmO>3x9n~GD6#e8MX zpWrcUzvgUx`MXq+R6fY54?^8X!zxgGoMnZCmEb!ds`Sa<`uX`414|uU;|)hc^!`S{ z{m@lDiJX|%B@Z0f|34@{h08e!HnFAxukYU&!psQ1)X7%HGGM05{{$JO09ixP_A}a| zK_N^9LOUrAul}<|LtY02&_et6NhoSUq7v(oSm2oxvy^UV8V6#r8l}jZN*82CHHU;_ z{?A*49uBgk^|45M`F{tk|EBurFy2>nLrpJq=I7;~w@7I2t6MnfURf!j zeB-I|`SX^ely+Z$***e8ZL82Pre#|UFgU$r?p5LII*#k*<%RTr5xG8i^7Xl!Y-?p^ zEkmzq_O}@9vqPkvV1$G`B=_R+p}MCT=;55;`!D%~pxXYFqA+O=wUD!VE4izI<)6;G zlw3x7osJ-hv$sWNIpGfrOuag>Ur>eIz26)wj(VRxA5lZC3zSHGV#D(s@)U=iAALL8 zx3o#gO*R>Q9hxLz2Ze6p>n$nPJXqK0r%Rr{5;m4FwgDy2lN`}D$e|pP@9#YF&p-e8LTq?n^z;#` zJ14nR%=Vu^18D;>{6}~UzDM7bb=SJ5`iV_vh-0lXrSDHGe7FTguTGsqP2NM;8iTWh zLjGyxjbsoBErvQ3%gSYX6ME+wM+L_OH9@JdCfjWoAxF1{NjV(}+G%Mv^9`9}tomck zvwA-1UnJw7>e9Wl$=LYFXuI|v-*d(5{t31iwfXk{jc2^|=MrAU${H?~+5WX=MThZL zZ18#H`M0cRB|xX@2Rb7oBOMRFM@tfF^n#(I70c%DojYyxw~!f9e9|HNytpR=5A_!x z`axTd(EAD~KiJS?D$((d&~|#H?@zGTajyIQ=yvgGx&UU42GaM zxI>gTrmH{zhzK&nn$NSPuU4w-G4A{E2oUuT0H)5$;ncas+=ZD*Z2(EU-Nud2g3X^D zeIXEli>XHMDihf~cS)64^^s2tuPvON4qBnBtE8Q)2N*{#8(@#{Yn>9BTg2|6C>fk( zUxFqu^G!7LDbj%ird>87p*_A8z9UW;h;GU~!+&c-S>c@*?S>N4jtM~T2kt(6_Ke;C z4zK?;#^wx#U{O>MBo^sIl4kN^T>R&+P;e-b9CBfJD6S!9>+AD9-S#_Oky4xcCa5-c zd%zFzBgn(@O2TMoiS=OH;NW29&12lyA~F1UJLXKGmSkHwGX8=qtOJH-;+5dbWt?^y zCF_oQ45M3Xb4Zk^Sx;MKR!f)5TzpB0AXe{4c%bLd(0#$W%gwj4i)`l_f$-&dt67G2C%3rOwZ3-Wa^$nRoR70Fm-S@&FGTzuW`bn1zhT|+y+Dqc-nLGuWpme^Q9wEFo(nTGz+Jp zQX#3k>v!#{_jS7Wx4r!*K2Y7CHor%E$YNR%?vWO$6pA->nY6~O2L+9=X@seS2Q--* z&BhWwD5uVT{{LHwopAObG~1IN#z@yiB^9nUq%z&L?pbM=$mQJW1Sr0{&O8IhUZA;?IkS zxr7C+N%=zK@Xq}k;ici}A-!`EC@~TqfSHRy$lL<2F9+|7FiNO`7&EBxsn;gI2NLU2 zBiBDG4cUa@RA$`&+!-fjQOU@M2=0G`rTQGZa9!ly8;ti4QJQ}ypQ+@_dQh#dXHpu( zkLLDqaeyIpb^iUAyq9>6!DCH6Aj!|Yb+SN$$&JRbqjC2Cbk}CQu}b2|C+FTRS-NX3 z{yd5L{MLT%_UOlE@&hJ0KV`**fmRbhTC08F^s}zAv0)}8clqNi-SrQ8!_Xf?8fjROBX1PX(mGO^NzvM^Xco1IqEkpuoI9n1>adV9@lhYLxI7vqa3>DP8@ z+y8#dd32+slh>U4=wj=_nIkmoMyqU^D_k#JAWjVkjMv=0vgVr*rs>{WwyN1&{H5k- zG;P)VW(Akv+O1nNZKYi=)tGT=YV@8#yuyA=yvaX?f%nG7qVh4P6lS<^Jjau<~ z#N=k ztd}q{-a#bokx*t^-G(r{2spsW{OJp&Lr!4}(eG_V<4_a#C z3{Rp@fCr&*TJv8TeoZ~Kv{|4&EyR)WV&(6e$)6bPA3!REUiOw=GAQENf@*hv7|*4- zs&VGyelzp{bb73p*Lh;t^dlnKV)8=~>Qso$EG1!aYVN0{j=eYCT7yuQmD4Wt^mjfw;L zl*t;Cr!zG*g&pb56=F7(|8AZeNZ;4S={*#Bd>ie{++O#i0%MI($m&u`r3jWzqyH1w|PlWO+UhF12xddgM^cIV@y?NDiv6H7y zoCtqnyIz9&%xC^`V>8^uqd8Lpc4chMLEjB`X2bTS*O5TS8uOf-AdkOL$Oo>cgQ>0! zaQ%%NHrzpqgIP$TaLvi0`j70=v~AI{0#}qC4PnAL=}Ps{L{45Ke*(|zY}i7?FLRdaoMKJF zcaWxmi_$@-KEX;uv!K8Fd;0I{B$&6KzlM*@W5dTtz-DBLLcSg&5>&migJnMgWOi6K zRO_8gqScqYCz$bpmCmg=NK3MiqEPHd^;0bZ_11&q=?4~o3&pc$$y(PUcIrv}?pC*O zt>|tYq_MCs=Zuo9yC*VcK4 zth_jKA15`(n_Mo%v;BaTG4^7+tQ0x?ycsmkO=2hXIeZ@(so8zviNRk3D^B#v*{77> z&y||O{G<@e7^ywp{}}l=MGYzDiHkrd-E13Gd-0}t<} z^H)^YSSnYjdE?u+f3RYx$h}ddN;qj-eHCf*9&+Jd@`0O6v5NImv124&$HzrZ07p)#E&9Q%c8f1U?mN&dqr{)#|wGtY>(rIapKeG)vikY%ZLaoQ>vAIhH05;s`i zj*68FkVP2-xg5?v$wRZp4=JRu3zSlb9+^dtW_EilMvX2tO}pm83e&qE2O9!8abP7H zg2RE^3e4TBWTuXi?xVHxQKp3Wja$piWiL^|miT_A!JNqiqK8p_eIEfzQqUTttQMGD zcVdGFab=mfAj8KeO9Dd)5#t|Dng96)mUNiHHAm{Gs^@D5x#Cq6kU(f5a8jcr-!B6eziT!OpANBdh4GpB}BeN!GrsAszlul-#{lnXkqbm zwO3DVj?<8_X;tKPZ4bW((whL6Q>iub@|hV||LS;azk1F#_YbawGq)fHMt_{O=3USp zKbafrSVf-`;uD!tb46KWj9hY!ZQXjrArwAglcc>7yqm{MHwX*Y?oO55WTDN_k3GGt zCL@G;M}Ko8wSgE}fBKtADEK(kX?^tQ`=fBO=x^TFGy7iMDIM7Ti4VAvX-jNAzcm>O z!a2K7lyp)=hgrwhG5GNjXGYj~-*&wP|FaQ(H3Ws1bpvhavzr_r>MVgOLiKp-GZDHg ztc4(;?O)@nQ5Gs~&NYbEy&dP1m>duN-*c-p#+ZDEnr9?D{bVtjL%effZp`lRBIAvi z8>I57JVk6EPHdY$qTq}vJ5WcnfWXY{FZTYoP@v?#-Q0_*Bcu5h+FG=meTW$hF)yLF zn`Np4GKm8+Jw5$>@o{Ej{}F`#p!ayN<+$DLZ-Wh*PvODL&hbbxEmeRFp0`2s9NieF zJcSF)!1D6D9LDo6^N`NOi;61QI~lCJA83EPg>IajtG&oxHerl$2KQq0TIRu;O4Zek zlJ-68(YlP?aKBCt_-~>(u%!DuS^p)A%*q4Udg1pk@A^|U4R{q46fz}OjnXb%`hPZ} z;#jM)a_=ljh_Z!Qmo|H5Bm{tR=`r0c3SXU$N5lHQ{%d(a{-gc&|C!I0MK`>vLXNNG zAVOjw4K|r0Bv5iIk8ZfZO5?ukc@iF|z=|aYU#^26VkRRAW4s!ZtNzzHj}ORAs!*MG zql!Q#uiUe<7`rhf4~kz)AZb3nQavt7C}FJmBt|3D$m4Rf3xti{ce@ijlLE$)aO^_50EiA?aVr#=pOqD+?0%rjDOi+ zV2gD&vWZ;G6d14;^y{vs{;UmZxA{l6kI=XPa45YN;yJ5dClSDy;3QInT(Dsz9(X81FhA^T%1}oP zOJC~j@V80t;a_FQhWRyX&k~|a>7^diU9lgo2vw^U?3#mb=FNBUAaWvzWlYBM;XD7R zS+uLSm*qGEJ-AGFUc8Yj`t)4hG1aXufsEy;K>ol3Yto);8@P7Zm2hu2F2qE>nVa2Z z4#AmyPpU?wL^oAAYO@0|=OVCLj7Z8Z&Rm7D;U_{%NeemmgY4%AjD*z$UW&<>8Gh)+ zKtGO(`ai$T7llcPBCU?XNHq`lK@`X;U^oTEugYiMyGNyqWW?B?`D@5hyj=uTK za#hGedv)WJtS86LYGLQvlKH~GkRqX9P{7pqau;lszFW_z!}#Ds@dc38%{0MzD@nn1 zCHXLIysWBDhf~@9r)Tg=tMt9K@y7-C?Aarh;-?+2?i09?p!v?9q&9BaTwN-SDr%EW znw(r$nf*IYs6)%28<(z#K8~0@T0LPz;CMW|Ot{Vu6}(V`Fu@ zQ`PJBw`dVEtO$DXW)_v*8_79SMo(P-!TtZ&;MR>BzV7bxV4p|(=EAIaz$JgW_WOBw zxBO(}`?^RGZhvU9vQDvVEqOwj!ie&&%iHKMDA)d{G01Yhw0j!M%r>($xqQzi5L?gL zFMmoS?$bUsC51u5W0H^{5thEmVr*n2el%z^`9=`37eL7Vwus!<6>P+(zusbJ)-ewc z4|Ew^zy5zdECsn3F9!NL-ocjMs5SpG=W)+toa}`SNqd1vub;fS#;$Yn?+U4hX~~|S z;jnA`+`SV=)gAD}-qoB;+C#^)Has*5F52yE&;D0QqM;NX8R?ln8e4geAUM3Zec7l_ zUw1vRD}Z<{0D3^lKrCU!0|yvS(Z23Hx@qdtoqMtsT<5_rHv*;Bf#Y?4{)chLv#Cy9?@fvOA`$&O)InfiRoCZd3KzqBP_LaN_#`B(e z?M3&9)c;5Q>D$C5P?}GGN|E~WsHlI}#E-3(75NclFjmn!c}4dGJH|e{rFp08XFFfG zV--GhAZGUSwm6d>>+Jh~XaD(x1-Zu#U@R>!y(Q_F>gD(M1eCTpT;kzzJ*eehTkw1M z*Z2`F)$o;;XDps-wOd`kRuR%0%Y;+g4>h=i-V_WoeK6h<-Jq*FpwtzwAm=)O;++-PSxf{78Vwf zLzHZZLBw{`FI>1nd@JAF5o)FijAF$b!;Q0BQZy>>gNn?S#N4S&Ju6({z8FZG8Zd6x z6}gjpHcYEM^m})7X7K-6&ZqJLPa49lRXHH1^~%b27)sk0)IPmViD$V167A^V=d)bz z0R4!7ZY$;?c1B!l%r#xd$06=PKi7E%jg>Yn0*TrBr_o#>^`QImvTU4e~XXsb20URvcK{H}__XYnQGC^7JzBauca0 z0|+f|4l)mNoF-dBpKv^aO1;$i{j0B7R=wy2>T_XeUKLm-6&IC zN&)*)bYD>W-wUagzL+aDOpzCy@`kjtDjr#_WgF(h@R5x`CHcqr6tFzNr-7!ayINmy z)Pe?+yv1SIyu9=JhS{1q?>AlSc~>xU9af5)RUaU=2|OYOmUyieVc$?x>;tf#Gyzcz z44J!8*I-`6&zIlbw2kdacc?wUVSkwL?rKg3nVwu%%|CJdN3&492H*&kB^tcLln=(a zJYh916HM#((5{hr^FJ^X96rKI!G4EE@_~`i?6%jO(>4h|2i_BZj2mPnsg*4~_g5Q7 zJx3o<;yKfXK1RROW0~{AoEH4{ZjIXkzk8a6-?H9PA3OzwZ6s$dP!V6Q3{_njz$QqN<<}ld8uSnakF?r+)0qmXZJ%t%b zZ6>vs3l9vG?CXQ4A@oBZgT;FVdj4ALR!T~Us=tb{?CWluoSYn=urN5O1kstSPGf$F zbm8Z)pUIMjiEH1tLG`qS?~G@+6m`MyB72A=h;H1Z-h5R~R#x^!zQdZZpo(1wQkm0ZcEJD$CxO_<5GmJe1tUwJB{IJ%l+==x>=_O{Pv)n>JDrNA7jp(|XscS* z(aK&BQw}1a2ACnCcL<^tiGRTA5q0Q03ScsYWrWBxww`{wd@aMNzg&q5R`eMjmG(d42Eq2;E8@B?oJFKw= zOCH_cV-^sJ^EKwy0N4&u8S@X{*CR?Xw0<`_O6-$|SXc<_3aI^;wsK}~FRw`Wd;I`Z zD|yo#Wf1g~+Rf>K?i5RAYQYbsVHRsoO`IU4E_abN{{Jm^@z4QtEnBPpBN^|D=8yw? zv_lPU%cF%+4*d<>G8?y%r9fQ|LTK|`_+QuF-~bCfc*V@tYK(KNLgfZ_ITRv+H*7Qhat=Hk{Y5kkc^r zxM5U6=oAc#mh|wfq}APMQbU+rCx-8q25iWjhWNGvBFd*_%T{^2E7AkY5+HKu<_1JM zM}&H+rCI3(^p!;Xy(@uoKu*_ia{{|FV$bWA?t|2(4xKnI9_~&Ls?zc`BeJOuqf#*9 zI*Xb?-u}?3nY$B9=hJ!|k>VkiHZ;t@1Q<~|lvfcstim$0jrOYZ0_+<~%a&2G`f{Qe zYkm*8N(!H&qMYYIQ>=12ZXQDjW0aSu96IC!F+i+v`8mewbc%yRs??9dbrC^DzH3xu ze!m!oSmf=P;oiUA0&DtFinNj`3aHM{0d-H*_iLPf2Qf+vb$yr}!$a2DGv9&~$;(NF zDM!4ldz3DYS3WmVBznrqBYgU_Ul(4CW?MV()&knKBu59Xb6U*5Z#u3Dl|h_SK7OQL zu5%(^gL!nY&Z|jN+%db=B*hDw11feu{8+nt1eJF&1a2WblOTH+BNt6ADn)|PBWT%q zum^~=&Y>jLyiVEp{e86$jn9yxIQK9aeK|-t95{$-x%#^_JY2Ac_<4EfZ6}}4LuctX zDE+pveSaeVPb&5NiMda$ZZ?l~wT6fDLRsV&^Y6f1*NMbTG)ey3$;6Yo(_0SnZr!SO zkm2ZvCwNQay)*-XX&b4;aSeAb}woRq(y}eIa(PBN=^Oz5|MdI zawSlo2N?bqF5hQ#M9U5QsjM5Q`-3Y?})OO>5-2)`6zo~Znl$vCj| zJY>)E_W8mx2n*sR*;#i0{V~s@>cOh`yk>Cwe7|;dD}a6$$C&{_xLv1~9pN#9 zg`kE0dSLhthM-hEeb2d}e~6P8%I_kWo}NjI%49pBckfqrcUkf){XdKAlfa$3ch|z= zXz9qH!v1xrNOwE*72cfq+;;N*R`%FLQNQ>{aZ6)iRhZJpBA286(2D|m^m-Ag4VXxS0cepI%K z<4(+L1VLVDINiz3n65+l-TV_raJ?nRs#R2uQVqY)TwzW=otTIj( z_a)~V)Ipyga8l2lSe&OWe)YTlZ$uTMRsbKw(VE`H5l^}j8;t|9vV7ED|ZyKHe{e1%@@XDPN6BC4O9f=l=Q|IxkJ>TPrCt+qDV7>)-;s=JQ)Cax_9omzaijX1iJ}J}5s_yS+bP^->}+gndzcp3 zU2D($>yv~VGmsQOToM@Ee6efA51XpA8&S{2^W+nTIx15G?L}|8Pgv{QKO|%kQyV@u z+Rc!67eA!SMLS8i(2^cq1 z@*&fR1iR^ohDN(x1Df3}x1~pqri`|ppcmpJ%fbn8xlv1=2Pp7kUaRs+)Df-FVT}o= zpajyY4-E?&{Kg1(EezzNkjKHPdw0eGXX+**#5ng>TogG4E>r7gU{(YmN5b9@)S$HEhDI0pY zlk?CvAS`lG(2m-&?vteS3C|~2?tQQ8)JMz7raDbgmG1{Px- zQ6>;mE;5+W$wNG$9wb0^=6EJC&g$aatvUO^Pcy~{+#p>7isq~HG3L?+n}7@>#1&-a z$n@p>Gb{-G3qKB02koZwN6tjUdnx|7%XlU7J57mV_H5A{Q`&t$DX7?@J$PqdDI^S} zHY3H&zm7-Y^8=DVhP9*r&Mb3YzU`8^CiwcRz>5!`Flx3F%nuhc6_G ziQFA`?%WaTe>G>!iO)us^#DiGM++M`*F>+Jn4I*EJ+8(uTN;!Tsp?QU8yjg6uCS}# zb}U9TnD@t1&kn#lwyVV`Ci!5}>_S&n13I!vs6c9VDT+q8J0CJYk4rEyht|)SL_CM} z+q%c{?|C+;T0>0^q^C$QvvT}cJfLipNK`)BErItTlG+5BkA4^1b``DyB^?0<`cWei z|L2^`8==dcp2~V4*q_xR;?b{WB!*mA6=fZG4WQb5p^H`y z@d1|qF~0Z9mvw+YB6jo44NW~7I5u#wg{}A)3fS$WA?;lHc4EF}b%Iyp>YH5p=lAMg z_%6TXR%pcy;X8oaaB)rLxMn_~|I-cohb6g9U(6s_+t2S`ly7T_C+WwQxI~F}%u{DU zU34rf6jMt9sEWkx6W0HcnW2MYL1J_fZjJTZw+}_AYN%xiS%D&ePrh6Q<;|Cn?R?~0 zOX*X7zdi|^lxU5(%%Nw~YAKsL#NHES3U?Ww1ob}z<}XpOFu}Rn^EQuu zaG9#OB7noMQnEPcQ&z6S1o&&SsNr7#xjPF35`Boa3-`bySFK9$-@&|cXuY+WO4V;U zM9{z|C4}(c&c%WToM`vuI5Pv*G_CF};9B@(W}b*yDu^czvPAuhX_zaW*cdP8SV7-q zNonlpAMoj~H`33&=t|;uQy8I8haqd3@r3wnwJ`;ai@*E&cUdri{1= ze1Re|(c5z$KQAT_`eD2S>=3>W@{$STazfK@8tgK z5K-gjO8 z(1V~6fXn-id>a|@LocjxN~n^dvGCtF1LJg2PEN2{06h_?lKp~zZ{CE^e+w~!sPTkr zVWTaP2)sn954pDwY=G5NIPBl; zav6P!A&vnW!F8zp8vFqzY;zg42sP}v#gWG|`|0ozA9LW=j{PbprhVhajdo*~4L)j9fm0Gh+PR)spggD`|&89GO3)i1r5SQ)+(yyuU}0 zoq${atWBEr7G3=|b~k%DNJXqptdWjPOIPg%o&&#`*x>ZA8p6$qFKm8ysxo96_*04N zShFA@4euT+;4<(fhoj>b0o~2vUK(Ybi2)*pBErH6TZKm?UI^J~%fwb>!)Bl%5w%(T zGwEWH$UPixq*sS#k~o?vV)mt*%EdCX^=ICP7NH5oC;e{9g(=V(!Uo%Ep4m<%v`{fv z-I@80Fqi6dMLmKc$K9-T(@(1UWPnew<_fc?LH_l8QuVw8!B}08G;;2OjWG$woTV-|qar5nCj(I2l zB+I;H3Akz9IACM`u>RcHu(HM5j;%AEeW2;8El^>d(|Nh)!cS{b^v~Z1;utou59xg{ zpDZe_x;Zzf*0mYHrDpj4{#NBqUDuJChH3qTmp=|QOP5OR72B;=umS2wYn_S&ulgEj zu!_bnIcNvR&^eBL>FtgC-4pXAOUNf9sUoC2Ue8tQD9ucdyjhny--N--Ec-$FO^FuC zXe&~DK#Hw-^UH~V*tU$}F4>@uxgh(k%6Y$Gx_*P-`B{r<> z7WY|l;@8KI`kh|Qn)9@of6ag1PQ%_%f~NmAQzwvbwaMAphZd8Nhcdc@SX93@ zf^!EijDl;LFMVN)vG?d(bFl(#SI(re__AqXy*InhCqdl2D%THz)`M|Nzf`}CA2SGd=g>nT@b;U6gFwvl>UAEa~z$2@eR0e67Zq< zcIMsABl|cL;^-!9WjZ=ZX-b$f#Dylt>TV6Uf$NB$*3*kW+7DU=_9kR0BRDFYv;Pee z6k%VtN|@?;5vv*3b>!IU3ncB0whVmpGFIHHs8GelfAe*;2)EE$;%Sa2bO%p}^VBIS z8Hl399QpXMSI;5!i!oW|S@yke^-{&Im+H`Jk!2{Zn)BZiekb)vq?==CUfm=!T(M6_ zyEUj!qwmtvqwF4sm>z&qhe}a#DpWf2-Q4JBRarB!Mwq zoUWlZdAYfIb%z!zwD{xW=;EJnJ`;!2MhE>ZuTM1+b~~y+yYvj1X?E%7JaPf=7&bwn zXCAIdjVb%#$4z{gNrt)3n3GrnT;iNylKbM+7)WiVb-pW#jSzgv4)llEj^SD`a|^w5 zhqM@eAAK_ZEGNe0Iuv{B&g(W;_FSe`DjGUi8;9E!+kb*Ub#pfKoO|q&C+_BaK`L`>XqRRcLk4}>>@70Wzml7` zL59pWqQBo>#hCZRPLHZz7Y@R42570Tp>fY+E*i|(_cd042dKn-@S-I3qDh(EV4ipo z7h!q%Mh><$%^}jZmy#n!ZS@*7Pi9THjz7!{iOW5%vDNW5kF*q@#0d8Y5g+2nmo$*l z-y^EoaxtOecayoiynMq}?CCqm){=$kaxHT+qusZbz1^R(voIzxQ+yIJiX{^w5}pg* zY1wqh)7>xP>}ym*x(Ej_a5_uh?Pu$vjITlFQu%jiJv4P)dAU1_=uatB#XfyKlL+*c zFmfJr`aLCQ*ljM=HE-i&lUS}!_)w%3gx0Tr^W}>m;lopxEQRSM;9p|+Oq_~9o7e}I z8zS*2z1GDuKY<^U(xce>YB8kUdJ6`lb&g9?bm!g+0L{W%zMVuN{QJvo`+#pOi#c%> zQ{^l5rN}R9;+K38XZ3k{qAr*Cd}g{h_0XH3LfRnD`64dt$3D)um`kIDg$KGnCP$B+ z6;N3XrxaM?L^Qwbi+Pk)EYFz{7X}h?5vslv4UO0SL`q-%`AMwx?<4!{EvDP=sl3=o zM6w_f%>Z!06rsxf?h{Ak?9(-3){Bd4BWA@2 zHKqd(F57#kHccCL$}$oU9(DuTeUO&{2>Gs? z>Vv(*Jy?5pMbv4Yd+AJC^pfC}T`H1+$=lx;5*oyk2DEeWQb#VanRX%_xekta4yQOnr^Suq` zHn*ofHv-j(0|Qrpzw=5@Rf1Oo^j$1hxxE`o!d{X=o7;Y1pPgLUk<3jsw}s9m8sz4T z>V)laZTDEjlOB^bIXebx=mq=b4ouM7BkXg2wy}(t7)(X{J_g1*T(|IeYD~I&ilRIF zYHl95<<(^`q9gG412UdJqOWCduC3R&dNJz5{)NZ93);RG)>C~t^VCruj#Y2p_dgj> zcvd_jSZMFU_~>Sb{2n%R!~vqwDy#INx6sQAC>*!q8M1AZx^UE@sK_VB@Or{kgEKK0 zZG#ybHqCiDhVC2j;Kw;Jt@{I~!n+cLFGOTrl@yFQl@&W+Wj%*C>t9S>H5g5`q*i3eu~BADw?TdhDmwm*2Ox`t1*n-T;T z(bFG*?TSN_Ntmlc&hk$ob&LL{s;Y9&ADJS-*+-5Z?HU%XNg={2uI#Xc_dM^Z^?_&@ zsUIby4Qal1w7Xw`)B^OSJ7@n{bsb&oi4^$HKZi&lYXtMNaL(tcXDTBUMo+QPzvsJ? zY~&3LGUZ~n)uAc9%xm`FPC&9DA>&9a?($*zfq=pfUocF*_e_^`=X}gMASxN@ z&3KrZ5+EY?{V^`Me~IA_DAQ-ApJYbIk#ZWK972}kwcaFL)JQuxVgk{{JurTBVX6A! zboJ-l*v8Bix2()!4xGypnkXtNs;pJ*>>kJ(bQs}(H8K0~$$rr|M#(ln4&9yRdtt)5 zNx1f^a07XVI%{++mSCkGDmwrd1b@}=0T=nNWd!p@hGMxl(QR?CU^utQc$Q>B>1UCe z>`RVdwp-hd^Va=~4$?E8kI4%xmjMJjq^@qi?jNsPwVCOQ6y!~9>(I=TVLGaZ z=I&#?ZVfQHhBnjw-4GLR2~oIUVOOMTU2L9Ui`z+s^k=y(-eEY5NqO5l3&o_{EuRJ zZNitjkA0{P1wc-S-esEi`^5+4d%19OJrb?FdY>5al*B~7Gz>g*%Uh1!r?{-@zC3Jo z`knpLwg&pwGrRw}F&j9KbBOma{qO^O0{r>=e@%U-8LP3i6XtGp|K3xpR3hh;hu2cx zCjGk&eNU)epgw$oU5c{Eo}7uuX) zJ1~J@N;km>q<>*ePpzMC>uaS#1lV@KLe-y$T9KpFY~@laR#%7$XEW}~6wA+_nK6-J zU2J9kGcvu)qJ1LHjyR%3;r&ky2yafSbE%%l-`gGT_MHM>77>WnMcp)$$ygKMpygD; z*b6fFA)U$iB%$?!;w0`ifC6mu@zlPhOR}sdiOK^xHJ3jMz?zVdsdQ4zUTq(-F-mT+ z_w=6w9_jPtiR&+3zQW1~1 zkZS(3@cEK`o@+;&vPY=9Tf5ltI4aCI#Zc0j5CfwOI)LHFeggL@+*-wLwJ#!<(bJPs z_M@XMX#4(KzCquc^xm=WcJTE@go)XbRcDM3)=dW>ZuOkxt?lJf>Y*+J5*gsL|F^Ri zg9j&!DdkM)MTB>koB~;?=<~{*78_u5$@N=W$Ghx(4jzcj>$;?A7{zD~d=`t$K}h;_ zZ*LAg?k_knci88EW9K7derLbI<{0P!ibfq;M(V#31|*L19p)p){Z^5EPR zrwtU^@}ZaAi$}9z6~hGW*M`!=leBN=DoO18N>P4zKmOv__40%VQ^uOl>6NJuBlozz z-#l>j$dUKn{9$fW8I6{ZpUD4L1GlF{%dAgYg@uKpuSQW-2P)ZX*(^@&J+!0%8EoZ# zGQV1veA>BMZA2S0WDs^m#03^dt3XQEZ@8JH7!Z_67#4$-#|B3}rLO4RJXjziMsU=K zI^Ti<_4MDUG46qyM)C{}+lQ>Z2)7kBqtX+!Lt{RDzBf$^x&OlXL?KACo)UTVJP&+9OHE zY{^Q2CDK6Bf_Ijl{teBNZ7O-8E%oZ!l>~c+()|2-{_khZ+RznP>(yQOCmubXcDu*tbMo}AU{ zj-!1aBi^Zdk9NYHTiEoSUbfHtW zmb&u#_3K0=fBojo`1c9VsrZS9CKOt4FuZox-Ijgu}Y8CM=G5sIJk9#(FE23OdI!{7X2?!nR2KVTp4nq9|+dp_u7Ymcl z@TZ^9ZA77zdZ=*N?ayk9I7~6fujafWl`X0R_gPc;RXV-$B}Ral7Kvl&WLHK|gP|#x znY(<_g#$|Zk}+2@4veLgDr-DkaMEOUFS9t`VL?$GCJVOONfFFg+M^?Y@m1IF=KR7m>yQ;FfytLF0 z$`?%t6-r07UO8mHy?*=l*puI?%?AcI3JMAyUuagnUQ#kkH&0qnaQ^_tD-wtl&Nyk> z^$R(M4pO=y505B`Ej8#%5aEJ(hOP1F`RFL1cmiFYVA&ZRtooM^p@%z57xR7+!R0jn zgV~}L#%IBitByY|-ZB}zmwM@Uv0@Reeix`l7SYL#;Y+m9Fq-&VSk^w}K09=!LoM>d z%(IY7#mQB;C+EhDx4wrpXML(=FtKu%vJgH#yoba(L_){Yx?5`ECgmv8D*dE9Jdv|a zXBr2Cxb)WB!dCs^k!0uNmUc+2EKwB6Zm;=W1;ZE)i@M2pou`-jQO<|$I8%|A8rG@- z5?6Y%F@46TB_0!ZprQ*LtOIR= z|DCv@L^78&8Aa_{M4ZucYsQ#18)b}OF zo}H3E7y`f7Fm{VNUV9*J7L!Y@I4>+tBav~>srNXnPov?rQYEqw_nW7%*7o+R8tHm6 zHd`+)_PhC~fGK7?dbv>~y@f6V^6{6c6XTs>C3>H=4b$}`UqWSqob>Ikb$(Zapqqff z#SiDr7BiQyyWhN4hdneJ)Xe{f2l#UXCB1q7uAQ?Ty+=4BvFo>i?)rGDDLW(RZouOHsHvX4D~le+FIJBQK4+ndjMw|}r~#+>>3!sqeD2<&Jlcgna=nQ}sF zPaBB}t)wWeUuKZsj|gmEw3w-@t|kcYhKUw{)$hTF{*zf@VFp{Zz%2$Qwsq`BS{-ut zA6)R~br>-`&F@E9yA51^A6waIvvR4S8(=85`u1?HwyNWNh{K3qM#g}QKk*xtvs9#K z4m=A6#D0isvE6ZV2M9 z6}Fb|xi<`hB5|>r+Aos`iXZtsX*6E>$lo3*m4?RW&H`X9svGP3c>2;dOzO8!`v(LF zBAk-nAh*qH6W_$-C6U(AMLg#zqXW&y%Z|DtebcP*OZ$sUJl?R!Bn!SWQ&<*h%P->v=`k1924<4+ttz3HTn5~e}ygr)oUcMGew0fT1yJz_Kls8O- z#PI{cTE}jgW1e6GzO7u-eQs8|yS%Et0Vc-hRKlc>GfTZM)0e8v5Ds|RVN(>!Ay~Y4 z8m-;-`HqWI&NvazcTmB$XEvqm=}H)e&HS$n#Q#tiJjTY)=p!IncV)aAq}6n=IsSMK#D zRAdJaAAVZ#JDJMPM%#YP3X7uB^%wW7pUOkNZ>XP%!Pe%iM-RuKO}czYo2-X)SfnSv z^K9Dw$)&t@!=rGDadcGCaZ^*Dv9Ng#-8Zc=I+me{PhwIu-?(}6j(h(t4L}^7s-3`( z10p%7Ba|ElKUwN8Z+LFx9TOeIkO|X`11V-Tk&qfbHqGz%SoU~!@#1KDL4W9K&J5_wI1KQE%oEti!+t^sjnyK9+x#FB&YSZyG>N}pq@XS$|9GpH~9kLcD9QvGwsdc zu5imTEM{htQ$%sdE!yX|lX`|+5)MDh(kt&*W}&W&8k@xCL@e2|fwti&@@SG18I4A1 zh-xT3tZxLn>k`AdiXDs;Ny!iV#VA#5k1V6-T}qiq?tzI15vVQEH~7Lu&dbnsNTeoDO))v^r$# z*MrL#_$)hJBVMPbU4$I?9|Yf3*A<%G7~xE`%` z^}L-23ROE2PkqsY9K*qY{%7BgYf<8-MgsPHTOwC!ix}st#c<$}J6rtt@#Bf+%{Z=@ zOsNA2{N)$bC$cT-eS8oZ4R=6QJ#>1B1uk1Ze(Rsf<%bKU>t5NH`1DzD*cj-W@!e^= zXnx``4EFdrE;ZSGP>R@eLSY}1T)K3<@`R7a!lscGHL+dxPjg;IKIEr;NSwpxS$zLZ z>n)~Gb9#YN`2)Yb&)E~L6l}b5y&F#N(&VLtpL+kPZpINZmmhL;%kN(iB$C~r{>%;; zI#Cc@w=Py0q%Mg3BRB|-^6cDAZDW%NLSWtE&hPnVUZWe03s9yIxt&98_6X%2X4vzy zWkDchw;hV+4K5+^?I3E{O@@CCW&?>q9m)}lolF|(+2^Mb8|sU`iO5wuz+wLO_;@w# zMy0>7tm0}5a-x%(rU+CG%=l;1&Xs()W>}VXbb6bYtvW~!oI|DIT?r<(dcsa69X`^6 z$`6i2VYgJF5afm#8vvH@AB(j1N;6)y&N`CLlFqesX(53E$aDlidCH~g`o(id93_eD zDbNru5YyTYbiV8V|67`Olse}slc)Bf-9=>w{>+fs8GCaTC zr-|9a=CNj2gaRbrn{@OH(P9H!Q6x7C)hLuc{|GS}hV;iUqdj%ciwf@RvD%3|{-+<& zN>OiWs1pWrxMmcEGvo#ctWlQ`VrXPkM26cWaX{R3WNprs43tu7addLTA*2PAgf zm?Jn{J2XGedJ+T8cDNAk;K_{W$3;I_Yg`#2PaHvl6F(yt(wIMua=9@@X>po)VYXc* zlPh?9TF==vGX3jimj(91=n;;pk+SF3{o|3_Mi zmh9dWATNCFpu}nR+sR9Ybf;m^@UTLY02A|<79M++@7a{hC6a0>CMI4--^68T9C}3C z_T#2$)!<<;JLm2;6xXZNu^X^gE^dFJ03mM?ibgWt6 zOg+n6qTTfiGjxSZv|u$`()i}$#B;)!#J_vRS|M5sj;W>W*W9UzxWJQdV!Qrx(KAaX zm={8woSOXru5lyVHe+qvTF1rjm#o~0`m4@owp5-+_mD4KiO;uTKrR zgcf;UBkTxsCC?qn0iy$VD-J1BGnMAjaK7G2`hC`o6B$hnmN?z6Vd|TJwKbX8F>!ww(~>2iylVKcLCEAw&Atcsf@c0mjca)%EEi|+9S9D+$_}+9 zkZFWKbwY{3MO-8LW0n{x664*u(jPY3zTYRJbXjvB%J3g%yDl zBH>zbeOWWLSiI&yO28?m6Tk3qD4vX63m8Kx75*DAQbZROi3{_+&a$=df=*IlJGm=) z7|C^DpZO95%3aJHbYL;DyYkrB z#@Rm{OQn^+Wn)tgq}UkYo4j`~lNvhAVJsr-92(o|xCQ7=itf1rPJV--rB*Vi%$ZVq zZ+z1k{&lo`%xUAEmwUvA2_x#77I|3C?cBuKh}DDmDH0FTlDlGODkvcJ@pwEkJ}~n~ zdPe5~>RCrXU8Xa?Nwk^dHOyk)yiZS%*EZXD@%~xy9&o$JX6zb&g)5sMB*KJ`>sebz zaU9)uP~_6vsjbw7@LwS7zB;L>ths>%{967D_!DI*D75w(w zccYEXE4qV4#m`qa&D2{Lhhv@uqfaNpPgJnY4vp3^Etcteg36U#k^7>a8szGKx-g{l zVfAY7oTPYp?VVWw&-XCM`dv^TC>kHDtH`?YdE@~x zn)Z3{K==86$5scu5q*POb%BkFTp`OvHQ-!Rs31l@xyJ@h^k-3vLQj&Ndsiq4c1cB> z#lEO^pG!sb1%3s`lYJ($6J<|7_bZ7Qz^unmKLCYIrR8U_d5L?^Z$US`H2Zr`a=A_c{`;lasFxnDp{N@KUqPB>6mtI|#Ix`34EUy7$- z8PV$CTBt-YBMsgU9X^`KJrVOw6D~%)keA$m# zq9V52Sv97X+C3TW>z~M;ewtjy9F1YA`(D6xgv{SxE#zz3 zgA6;8jby5RcE?#5NDeDJ6Xr@Rar&2go1AeOZ29y0Xe*3Q;RL{Vfiq_IiDaJQ3nFfi z%W5{;7u<|=9-Q@4(}_1zbBBF)=p?^QZM|`cE--$R0p$PsYIm8Oru)yj-6IV2)W$1j z3}^HE;d!id;7UP&h=DMX53Q~Bd+#-9X`XbQQ&M*1-u~RV62g3bmbDAaGbI+)ab8CK zB!E)Bext`23JGFkqhi|BXq^?Rl8QtSv)ZRcCuhJt-bmmbSBG04+LH6joxw|Py+EGj zl@qpb0E6YDf^DUCYFAY}>ZIMtftOp(JyN9Z&r1IA{Ccqmg#;)jh_%@M(I<$Io zZqD1iy!*-*5WXsb&I8%>|2q+-$eZ6E)#w7^qS43aMwrJ6fD^N>iAQhEX@wbG1Eqpt z`10<>NhCnAW3(oG?}Ey!_1Mx@6_c<2#oBwxpoJY9Ssu7<@mSxp)d$S15}49OewO## zC(}DJnGu-BVO3z7{u?Lk*ULt6$F^*8dGCDNgw$ekPk$}r3FC4mS}?gRV8dso z=|wMMz4FR3*f~Ko;&AL%0yOhY!?!EGlqFGLO#c2B$ewmC=^9apExXg10JlbYeS~*I zzM38Q@J#}E%?I_}e%p`31plnnFaIr`js5iFw5gA$Pae8Ti!#fn#b6(5TS@#-?UBT^ z)uV#r=l4L9$P-f+o&@_DHD>UC{3y_#^Q%h@Dzt}97&H8cmib-ekfj>ivZF~K8F!ec z6Npu{=i)&FjMOZ&_&*$p*AW{!lHw1^!_frPJ9qlFhs*)Kpm(*bZ^}WtUD@lp1tOm9I)y|sL+EXio%-en!m^t#c{TR8IoxLzl;`+XD1 zNIPPC(d3c)8O>Z`bBSAmNX?vxB^iJIn$tf5atlFy;};NM_V2R2B)=LX=goKg0yl2L zWSKqpw-)=*kY!qMuT9Z$;ebAgbFvAUJwl`xMWAv$9#jnL#@10>D7MlM?%g{LJ`MZ( zF}IKcz1#btwAo<&VTK@0{hBN13*wZ{Fu|G;=nU_4$t=F(j~n$6FeDADB@S3D-}RE& zz(?x%IWw$d)k5>~y2rZm81=tDOFx`1A|{s7ekrjpm2ffeAD;iP-hLLV<)zR;<$M?2 z>cPExJ*Yen#pZx5Fn_Um#lUs{Y7QC}hh{Ms~)L?UWW3DwLgUqOu(; z4Iz7PmAx~we~;^&qu1ws`~LpvR-JV{uj_F==KXPhQ01+D`F4q9!i_m&&*Y$<_r|8C z>K5dgqJ)gV>jLI0u&Od<+@b2w%3SE2xRj>dWf%R=@mh!wK4lVNol)=&i?7OnUBbFF zACw3aG_aC)8Nx<=G6*PfFm{nN=vbWi4{07-TA?NeXe&%4lH zTLpBFK2Fu87=t63y%4&7HW77bKvs-haHhM>6S1$ek8{ap^gO(a({uGz&d z-#O9I=&)qhWlqdiT`*4s*t!N{TS|d$f=O(M=8@;+lgNg;ozf3@reyJ_IWEg}>^9F{ zymsi>)qnX57&+^}V&__*KMPny0~pkC6>NBV3m57mWx)cXiUKkk7|8h_szv3}|e zp&tl>Hh`e?n99@ORHUOdT zi`6N-3fNwIbDk)`+OGjHOjzU=Okxs(o_kRF9cDUw6;X~Rktfc}rm#QEMNMIm{cFC>^wS9XbnNHy+cJMVcC#`|PzohtiQd~+P zuLm0u>C&oufiC|4z*I2QqI>ejr509vARRPRWDg3Rft}sHFpj@>Oi>ClfJ4($kOQ3% zu_b1~RS%+6flQPaAyuG}Uj}p(Tmk|$6WT)a00~of+^+L8%H$#GwL}$Eur)l&X|g= zrs_G9%K0Ny&{6u>E~7zl+9RWy%f3M0@hAJHrJ-U5xGV1qht%;XkI1DI`p8h*J-p*Q zAVdLlBA~rFf2-m`rzJ?<5SN2MAzun)sXNTVD%m$?9&${En3Hq^I9nIxFm?7YZ|GL- zjtEGS%ziXYo)7dUT_t(&uW`-s0_Y~;g7(W_y?Pe62zKrE8|KE#{Xuno~@ z%$9Dhmc~`v9_Qk!d~FeZi;NO>IBNjBOxqZSZzQ`sKr>=f1j8fH0Ew5Z6LL`4H1hm& z9}N$_A~a!%T@cFXQb07@G*l>d{CMKc^MK(o)(rGtQT@P9&~nJG zkS^d~4fogyV=@6WeH8kMxtCNGD(>|V6GAA$pLyCrAd<#BqJ*aQJCSd=WeXKV2sZ{) z$8L)Kg8Dqb4D}LH!O*j_M)!a-wi?0^Z!)=~42<4Ai51YO#~bwe^{u;;D<6$I!1EJm zaC!=Q_zh}{)krSugw;3pdaAQb^xES4n!EMg_yw*~dn|=QE?vD=eEdY0?Oj~}Qz!uk zF(;%PPvT<0xVDpb0~|~DV;4w&C1f=(dVgDNREARRv-FiZrCm?~6)|n1G5~6YZ^hHb z-m#WjluUHVvZw}w+6JM}ksZ&x^3fD%I8fFX?8r+t z%Lhc>U`!A>*m!r8UKY^v0eH{=kmS=eM&CkV*?Z={w^p1h0rE0tZr-V7_&iF$-r}Zw zCOzi>9N0LoiDTE(9Xc1Zcj*;6-%R)dwby^@&w(Q-DoOyg3k=@>k)JP`b-g&_t`bpqaj1ba zdU-6^j1ag1&3%qUQ3c9luRPb6Nuwyyw%WR3OCSPYvv8<_Em!7 z;ana$eU2cwG2~#EZynyP`tP$z@OqTuHCkLh^+-{~sZTu=?@%bWo$1cc`^-0?Xb@_< zmql0}!h7cW^@alw!SrXAMZ-+(>L&*qjRzIG5=nRKCWN}(QdTb`Av2TPMIKiUv|W5G zWI}rGOH%@XO!DBsUb|&GQf$3v1ekInq~NlK_d!gVRPy&mK~0)w+Hu5v3D$eH)A_s25)|$ck;oMv$dTKb zPo_iBs!J1dG4Z!Eq4O5b2vmkF#_0NaC`brfH9va1^jDvFM8-!j`B8zS;d`6(?NB5w z@NJHx)j?DbEA{t?fEl>$`HZgsA`kWAPvkVh{TW$9Jc|RC<&cw1odD_q>qjW&CEH~RX$dc3NC#8I@ikpZdAapUjwrZZ)>V0af0G+2T_N& zq-3#vlgxwN!F}Kk<9f{!vPB@sT!zxjkCFu`?4N2fm{;M~3;=btl`qQwnSe+dfRi@Z z+>I`6P16o!?uu%<#)ux8!ymyC8a|mP6UsK>bRyJln(^gMP17Qp3xc#RX zU&Fvtt$8_Xbjw2i{=G9d9AQ_e0B9t$aTN-})j@yYs^}5jCqz{Wc6L*|heW|f)O-=! z%0~RnM6iTCgvYri;9= z)r=pzC&k4SAUOb-zOU)AAz@+K83OAiU3gdfidD)5e{kXHi}$xcR}5$2uZN*1Z3o@D z7mHWtX>lj_Kk5#9S^hV+-UW%O8u`2@%zUWfDs`5-BPnDHXw~L)-6q=@RP{Yx#j7{( zsoWJy(uHL{pd#mP5icL+i~gN4IZJ}6f@;vAEnnZ)Hv#R=R`X8((=uphx!Ik6J2V18 zi;;pkb%w^{_eBH9$(_LM0gljJ7B$aTBwRc9o;WL_UGg~KMX%{Md5~^_@l2=&0(03B zfDZ)$&8to;K=RHWv5!iR2LuwA3j$DpHGOX@UH+~dFt%6ojgD{yUreJ@+>V z1{$s2gfmu1eaz|tG&ehTS?oz!n(S(eEDaSXj4R66md0NgA^hbsUG!Y<*OrF|zpqX!?FdkitJ>=f9;(fB{e=h0uZ+!a2nm9^ zIr}NLamjYUTGQ&>OFpWc1P-q>`Ja{Q;nvXS0x9Q~wFtwkkiGcJ)HAI1MMqLnQp`oc zl7|6i>CrR%ol8sd2f2R}4+#m@1!H(LG)k@tw#q@#6+lh#Q15si9DL1=;thyX_?(Vc zFjT$@0l6kR*at4o53#i9wyoM}|0dk*IR)Yu_DhpN>ljMT%;hyHOVsE;`mc_p0{gY> zNs<*`MjR?g15>Te>1w-CTg1bNhCu+OUY&w^GqSnmiX78lsFp{6K1>)ZzyDlc$FgfF z5O^x5Qqu;$LF#_#YE+JaQiz}U^ZG&Y6s^3c8cMfJH|!LDD)7qp9i_++aP;gdg<%+0 zb9I2=c!7G14tvgA=<<4CdLJ^*m{1`jyTXh&e1|e0ya9}IfdkuKFT@%`(4rT$`XSjC z3PcmrTulp_M4sTn~#Idc+1}+F8v`#;~`;53pbRP+G zg`r1A4bk{kO98!%c1H1HXV9edA(S&DJM!LV^17~wnZK|hr0WVGU3W0sE$il{MMzD) zxrI`r+>%lV%Ysc_jqXM`o8AIeL2}Q2xnISG29u`H$z&c$^o4+q;LSi?u8zh(nV_5D zA<(@;(&Fl&D1-I8G=f2Z`|U`*b!Q#Tq6E-aL?Li2(eJ5bW?o+c{s`#l{a~v{`UZ~c z$W`%l*Fv0#F%S&*s|)a=m^$o+LO&uVXAMJfIG7q9XZB z8Jw0iy`=X}W;ZhO?VQuEv|1l&75$AvT^Na*uWLT$v!^*a4%9(VT-rL~7H|y9I;GAW zpgi<=e4+2PErO|vbUWNrne-dG1de(zDw<7czPqjoFqfK`h5IQGKi#*=8zp6w!T6mc zV=*@>cF%!)Lp20wyJA+?A%+ad7&!-c!`CAA(RGt(un{_v25?*@JD-XE{?7p>NC4$4 zaIbu?HPR8^M$bJ1sPsyxc$kW1fXiG3bto-{OHcAYo#BApEW=?gc$avJco%7`E|n%I zUkhgAKk>3F*PeM#e#JR4B`eyz4(qFG*mGm0B{a{4Mua-d3#wb!a{BWw~!too0o49`$n!UEeo@7K0OB z4E{|NLhRuP9{o`K{_hQ7D5*r_ZO6j)=Aks9W3St=nB7DFEy3AFHb_wjtXYL>%FqZj z_~T67d;|~FHW4^!jv+3W6nFqL0<3fKQZw;-#>#R45E-f}e1OOUMjVU7vf61{dyWv* z7TqH?c=I*){)6X;r+1hfpa>iY91X!4k*aWpY%C=`sO2jP)TnZcJIal zg6sL~*9V_u1W03n6_c;v&0vNTbj+PQQe(W28!Ntg`_iRvy!bX46-qUlg6L!CC%+jp z8BLD0zT+2PeV!D@{dwxJ-Lk}CZYh{><+H$anR`TeYOx zi3k7%D-4ViKRuuDJQE9@2f1e&Q!+QCsk9nm_@fPF>!)c~yy9#cBA9_daiRSkxIy1R zt=?^P@tJ_Igd4DUv+Y9bZn4tLu!(C5brk2BT(LkkGLs*b5li>u^&ZchCRY8)uDqpo zSIOyyxfo+6$>A0!BUib))%mqdn+DcfP>Ee^e+Tpditg_2s)bX51^^390E=*VHDP$! zy@dVAuP@4(PV??b&JC|y3SFnCJ}5yJFAOT2yWVysUNxGuYReEn!=u_W!KLp2Rjax( z1s_pZ=*+gc)mv16kmjbP;A|WRdQWWg5^5$NIxxBrYsbvW$`5GP$LE1*A+&4N)b-mz zi}nnbEMSO7^wDoiJoG9bN44a92)7LSqE5BA5S57q2F%7(P5wYHX^67iIOw1J3XEFR zTb)kPfR`mC){92kB}16_waD*vXOE^u8M2O8)TlR@Jrc3+Wy>y+C@9JL*fbrm;?u3( zP*-p`%Xpv9#QbouxBY?!qJm$Eb3Ez)!rIgo>wY*^x~ZFK-8-YN?Vcv=9hONpW)8-sg>FuuVu{B&)O2j(XG}pDsq{D^WwZZUu$c7az6A{@a#3sACG7uyoFsN zO8(;X{X2Z_(wK_Fa0azwojTKPqf5tCxZ2xXOFBor)QX3PQ%1amiXSpQQR}n=9>CMC zQ~HmkCy%DIOn>m5$SBLvJuO|*lD&ZMTNjLF3>i5?g||p_?_O|EvT3mJiJqFXTK`yA zdmcBk{4x{)13>v&SSKwlE}Z|S{-N+(>#1?Eq@=iE1NRN4^j`xj%G1H)#j}lHE4|#j zqOUC;#KeC485kvXuinBk+TYLuYE7iQE9niRZ5D++W4<)6`ynZ=PHCY~T<2?>wJG<~ z;DT6=ROa4Ge=3ycj;*XWs5f}}wk)+^o_vk5HZ_{A-WAu^`5+U!;&kN}JCA@=0ke@%z2r}$L8TyI#o*iNXRzb>`ZMs$bNzLx?6<7D6nyjwd{$A`{q z$5f6f+5?@qSpin&Y}U}gO07X}U0b(iZ2i60x=vwuYK=axoH=e+rbi{aB(lsy@YJ%U zIeWO<~D^FFw(9M!kD-?e)RC=C?UjmlSDUh{4xvo&U?HfGdQVzgNlq&C!J-#c# zt!pMtS+endZefQe7H=HQLoTt_pJosr!=r)yi(|ZxS)X3Bmnez8DcAM*?#`Yb$+89- zar}(aDCh8i?57?DEx8z;m+N2X?eaFH<@0+wzgAv#hK%ZF$<+8&XYTE`<&&)y)sGKB zX2iRdDi6POtlQ4^_pvo&v*Cg5Qa`cQPOxTx4zCtp({pn4x|}cheo8sxDOKLCR(-v> zh0gZ2U4MI@7z3gTp<}AAI-l!-BF1-9C)A&V)e3XK=P<&zFvHIXGBMe;d9bi3Do>oc zXcc+3yu-(FSB`$>Qdr!J<;FB^p)O|3Az^Jbu6>^;S#}=)gF1PVGEa{YmX5vcXnQ5U zXR$P@jS2qi1^TZe-FA}~(F3(v|F)#cs|!D?WO(N%#oU^a(X-te4Vr%Q!-JfG=Z~WB zq`({w=~8~r3L`-LJMTN-SEmp7b-lBN@51X`{mzmcb6NSc^;E{RXR*+E;~K(u!Ywj{Xffb z%P8oO>pL-VSuv)y-%MblQOnda98Lny6N2bfYI!s6;t%j84)6Vct zHgAO`vR_9h?$_1h!_NT{C6nJ%m4MKoC&a0&;VS=N`H7`*bFF?!{)=PT>G|Nz#oK8K zZ95w5ZSTQaj{RJ$61xVUn^cDF<7zCQEPRqudp%w03AFnBO<;D#eyw~=_7f{1H(iR} zVFT?Y=2S(-`(Qh@TDTI<%F?By=L+3=F5+6=8KCo~`#-XSB;m}E>h3%r0I$pfYnUGP zy3YgDqZU`4G`<{`bTMCYMq3d!;3^gAqbbP_9uV%!#^iAs2wzHdJ#gT?J>}^1?vV0G z;WJKn5q^hG7tD@9?9#o3k_gRwgRr7Jn!Ir*b^B_!;V5osaQx5%0K2pFTbBZDE^%3| zn{QJ90UgKhQpi7*@idA&8-6nlJOzcm#>PhFTV*lbA(NGlKU2FK7(hWVFy}1BaM7)# zsXIi9^$v7k--L2R+;AeZfphTZ=nieYk2fE?N!>wxT9ES9x7z{U;Dg>)hv!RKh36Kz zV<&Cdds^CC#cAlH5grNy18X-V0?1EVqv(lC2uGaDuhA7Cwp zZ^~)HUS9S`8+#^iGY0+$Tk-S*Mb-4;gybn9J1lhB zj?!Y^GLz!$Z;aBu120PDW8{hA!?%87C3lMJWgGU7Jbn35PH1Ey%h)ye0$kOmNSI3i zaq^zl%V>j|7~tFxK6vu80>4DmJEeP!(bTYshkPbH_gL;4V^xNcL$dZeJ@~Xl8WtWD z_vSBYI6ufkzC>!;VCSC}Ws6r$ta#A-e_L7mKk+C}%n#-Cei77*BBf;;6nd`J0kKO+d2iz8!CR8*!?=B}~TtB@*_4J=N&fougv z0?dY^SKf`U{*HK*Q5o61t%AlP$5os-@ReO+-7Q`^?0g8gM1=O7I;(!x+<7q*uZlS1~uhF%iizrzeCq%;)c}mtQ+SL`aVa+te_I%zo8G6V3!6`jEn0ZwNSGWNvv|e5cXm{A%0= z`;x}Ixp4>UUFB6X?K&h$H<|6!oO1H`R@QqBDD|WtviL8|uYZQGe>HJyk!&)vM1w9J z78WfrBIcJA*QYn{apk>#Cf41w&Ti-Ns5e|XN@SxJ3O>i(_*nW+tg32`kIU@ZqjraH zB`bSErUr9phtGuYiHVev0;Tumnj7sYc?JiROCOHZ^rP5k-pNj+>wa|FxR}RDe`#z< zbRLBj8~BV%PDsc`TtWC%WnKsZiA^a3|n|y!e*iA z{4MX-!`2Ob)>Zf3p=pbvJ03=pYX#u=m8`nkPSl-MfgjIfX!-a9D$KJ6QQR& zh}K$Co9}F%di|hR+HvKIj8T2_W9^A(Yo;a1$e3FWUKZ=8_O^^mAjfn}+FI18Z`o?N z4m|YyRVUktaW_4Vm3Ov(O)XrXGE7*olt`5l9(}5$bJ_hVL$bG%mxaKnpeqxPt5N3D zo}REaCxIG@k(}b*;TEG6vU(tyzfpJ|MyPk`<6e9i&H4oNo#Cm4jqh8?9|gbCom*h} z`Z(o~KlZ3vaQM-)ROs27LvrNqCDGI62Wj&T18)bEc~$M#JEZoy$%}y$Yp~ z&3{^IV^(LCSIo50%XM87D+BZ68||>FU)lC%<6rlQ74!cZKTMXtHzTZsGh`dT zqJTXzPkGaXgoc%kDg(kyL5Pyi2=$I#`Lm*Giu!zEs7`X0aTzh$A^R3h?7Inl6`?Yv z0Q!(K@`LV6$f1cczJk^Vw`x&E_qor=a>Yf}jH-17a_eQ82)iO{jGwi{s z6O(X+9Ej?6SAM0vhtIc@_rfq+wK=jkrE(VKZ63P{-JfOrN7?W{X_GRwvL=QEahXuT z?a5g-Te)ivN0h0Y`e1gGxXyN}ZqKT&GZoSs4Vem)&b1vdV>hD32=c}PQ0NU{!(1ZP`7m^_vR(9HiGal~ci z>oFNf1;6$^x_PFI$UGdU2k9|1&!KJLeHWE4Z>N^kG0Sc zM~<;mI4>?D@=Y6qO`p)e%~iqn+|_?-jN~s~i~|lTwG;zjp_~g`q&y!KA!nG;cpkuhD*{Kd&8`>VWkDkCbXGR^v12crry-Y}Zdly8Rt&O* zl6hUZ{`_b-AcBu>q#`i?zr!kk3e~VyGqJ<8?455(<-6@mNLth0(%wKrVa{4LW40vX z=oMoK89oBq9;H=Z$RYhXwFhYU47%C~s0MR9uEPvcfm4UQ=C1*ukxZ5F z(snwX0>=b>hffq-{N~3O4;(pL>$vF{JT?2J)u%dmIyyM+?(f812tWzk6Z+5C#EwF< zL-u3~un(e1#+(rlS$#9kk!~X7a^lb!upd{Bvc~%H?jukrV zcBny3U=#*VLM58Qvs8F%&P<3Js7SN<_%&V;Y zamaD@ySKWEMN1?g(x@2R)Pagc2(oL;QR%Xolc*=&-6#x{1`}tjiq;0+T;}VI#_?w|hrvh)G?vL|M+?-g^M5{ge$KgN5t4)fx$lObx@TgHo;UX? z^@*S%D7p%dwg3mcsA|*uMBu->Y-|tU_}Ovst~#iZ)$X8|k|v6}Y%Ej`D92<@J)A*&44Qy(ej}ia6iR*MmuBy2n=(U7u7Gt ze!@n5Ee0&n1(t&~|7x_9qd|wHggiEG5}bE5&k;(zhc}i7Td9d2+fYT;eEI7 zm`I&P)oY|(9Dp4nDv-onzI}haSuF^!X@?c5WpsNlXAKdW=Zi5zq&E|sWgA4jMEMK@ z6mpS}^Fl#Y^&!iVp2~ZZ{qxVX;B_FV5(RCTuJhs7OC#ug5y{F9+h~D4rp#;3T*^?F z+;PoJ2^2cYha2Wq?j-IHIu$0N_ttHKw+r+KvHF1Gfqhwj{bg|AlyL?MGEJR+4S^u^-JvR>_XxmK~e`u zxFcW805o3*Mw(X26VHQZ{{eC5WKZA#4doF3-365buB0d|i!os-CW1jRF+yn031o>I zbh`tTh#&^8AD1sLk*o!5Jp+#4V;p;~)u_N`=N4 z0IXvG@GOZ=00nOZMi#_VGU5_?m~`mAMyPoA%hZ%8E*F*iQQs`E7+haWGx_`gI#6O> zaa9m8`N4ov_S*lj8}QfhP=(LE#}9@8g36B8w`Bh|%y*g$2yBWTwZmAM6tx8ZiU;#w zzXEFr;6AR(exBSy1yHKMT7SBAj}ZBmUQv#GehMLFxUmQLQJ>@6oC%;A5a1$EN>lF+ zERbZ<0EZy6&_ZX`@d=>W-=R`A2qm%IJ=^PvjsKchz)n7;{+u>L z1O;fBoHBxm@2G{JFU^Bgm;XYJU}U4Cql4~DtgLzrj+tr+ijNk;r~duW8(vi%9UeI0 zAI)g=QSOVY;ljaCw|+RpF|x(BN`3`gvNE1q|G6K8C*v;XVYH=VypMWxu2 z++@qQ#zn;E@yjVg^*QLowyQV^)4$O?(a-KroC(~n91dh=7Pfg-x-wI!_Yd;$XYiK& zBe#gU7F>xd7@5hhXL3BKbC_u(I=VO~c9c2%|0uyDM`M-JS~3juz>3PmUv}Q=1)Bi3 zrHks13wgOtti0@v^88I_P&I5oS#$z`PD}QBZgn_Z}lc3*q`kG1?PjVBl8 zO?CkZ9O2O}BCp(%o!y-{w8l3I1MZL+B!6J3e=DR3n1?oUBf{N!mQD?*w{lAF#F6Y)Ex%=a@1^Mjr^_j2@54SNi~iV6nEb=>gaY`K84m)up^F|kIIjSE&%tk;@#6&D z#3ax^9vKZJ#K#AwpwAN&Taq&#vajhJY7M)duWz{%ZDfU~3o_*GwCA~I8`IiG#)Mg{ zG7XChdlLWk_{QmjZg}al?SRxjrvVvcU*ApSiipHhke{dd%W|k3k;T%XF+a!!wd0jq zoj6kf^h>eCKDgM66u?Oey(3qlY4=#+M+<-D;-E<;N&xt4lTNCI8* za!p?e>YwfdBd$DXG+2Za^PY6q@z$Ei(mQ+zvj*4!1!%Cink*?OD7f#TTntg%F&yMb zL-${JLu{?2yu(o6;W=Tqk7FwWVgglCe51I7mH05q6waafz&%;;PRhFVL;(c z+d0&=RQ&rlqM1YxUqG`@1)W9!q-{9){q?LnVZ6@%V%^y4+<&3%W%1F zVKNO4*PT5NdPzYErXBI`M##urCirJ@2AF%3g*Fkj-5Cj_#DJxR$r|a0kk1q(y4#tg zJs7s*jSfAwFBD@T70IGdT3?F9b~D4ChtOT6$SKb*9nmGc|4&cL1fbI6nwXvsnr zWszrd+euHt0)rSF3iQ=rq(`0?xD#P(;2^`@3<(+&i6S+_rC^}#zCgtj@Zk;b@uAS2 zs{o!v#c^jcrYKuYALTJ6!5g{!3dJ^_k0%f0K5%AvH=-P>smY?8zU0Zm%WBehFC&XtUP6AbCTCbQZC&xyx)M zlgL80qH4&Vf#-+nVJNT(MV~aXWD|5JK)vX;;UMD_j=2uOt*stR+zezBcmCeov9*UA7Cy51L`0u2CIPg0riM3`$nxe(U*GW?QKV`82KwzV z(1EktqU&e~f}lY?;x!1+=YXA!Rr`y>(vK_w&sF$)mMy>Hs0zmDQ4Neat|E@?h52Xku{ccEzqtn;EJumf3Zi=s zP={ne9i%pn!{p8i^Jtp#yW7x4gXVB2K)@(U(kvkmDk_1p9K1aNlEnYIMp8;jiZAMb zFj1EVABz>rF}r#5m8u8O#J_#xGS#gM(Gy!s0%2?oG8%L?5JrC5pXf!rabzb@bOOxF z^j_7ysUtf)qCQ3WdieglMdA*kfp>eJAgcD{^Ek-0C}f$}bYuGgL;D;M^N)8flKP-! z(=b+6seqLG@n;5{v>!H8E@RENi}w8Mb`>TEJ{v{zTWuCqz59ww09o`#Btn(M9tExg zVpfiAXe1>iJ~7ru&=WND1rtr-{@x4&i3T&XtyXus^XMtE63mECah__Tw^;9buFYt! zA{u=FdG+J%wH1VLierqzIfOAP=d84JA3u$k7-TrzkB`)z$S`cUhGt-cHK1myAN~e0 zTwGetowUj%!t!**Pp(5*&iLI#sgp9Ai;;7|*s^Z00Qa7ccT#ky*vzRa0NKlBV!5nBg9*>whw~5eNi<%gN_}w zLm5jEXaMhu#FlE~yM(O8d0MPCg!yRdnP2DYgyI{|s64jxTR(DLp7FmUDkC5B4&N`l?AvBVZxp6WH^g;^kKI(w`CzwW zIJ%2L9IDbIsfq#@Dg5Q)$bN03q$c~hgI@K*8>ZbCV^zQLJ$S=&bYJ}bg&letR;sr- zPQhG;A9LsHL<;&k?OC-FJ!%Worw)31yvwrV@R)X;?(?qPGrUnZryO(m@?p1|#nme_ z52e{qA==pE!=cCpIu494rjlkLZ7BM#(?d2#`ChNq*49f`uU_r-7Dq2a3-EqHxSK+Qr^md+NbJ2hh$?kMpj&l2895~#hw5Ik^2tF5|3&y5{128 zY$PDzUTPEuSdA~xCiRLQeeHI#8V-)`-rbK9iT_%lgmGSH0THX2S$A1#Huw&}kSMx( zE}*Z494f`w*jR7MP|2!CE!2U&>&cqIg*pW#Qh6L+;{wd{qM)s6CM>~`3~sGI0Diy0 zJhP)-2h!`4;-D~fGW3Kl14!xjlF~%l$YqWWy9y&_dQC1@37wO~#lH^&i?4T=@F*|e zU{-K4)cHx5nHFmFqhw%bv{TO~q$~3rNv%FJ1oEnJA69BoC_Ue)&5taw{NfkY4^fW&k0lZ05p~1 zeep+oMm#rq{V21%%7G~1TWax{_&nHc(V9G2tsGhsH^WfBif1%njhh3`E%|21ltW4xoz*EGpT0*v3U1pDx7dYwPc8f z?w91Wn@X|X+S;%*I|LI(*-%G}JUBs=q?biyRU!PQKpeR`@fKdVJ@aW-*xCm0IH6q< z)-E})lI0?slqV{tO$=MT2B++S++?DOi@xWmEsUg6?z2j`p`|?qC2<2r?w1~8ok&3@UXjO z?{r8J;oY#xL9}I4+%`UFLx>AQ+jIlAN#K(84Yc3MCvjAa$G^b(Hr!pkpr`vA01ov` z_;QtqkEzX}8D{_l((%+&qm^+f31z)NOgn351q2Eopoo+119Z~AV(;x`n5|Ar+<~?& z`vJzlz#yL1ECJ);-qPA?UM;V}tDwSP*#ZmR55>w_srrzTKB$uNLsLa3OP9k{v=Fq5 z4OEnQ%ss(6bm)8NEG2OoSIZ)fzZ;&eLT^xYhjk~onrmG_OZ&<_15FPVkoVW0E(ac# z)O;ZN@wfk}B}-U1<-TL@;oDD)MDyh?fkGL6WpJUiSON+pQ&F)Vz&t`-n4wJg+1Lc~ z#wGbyRpP`^CANh@*3|l zhwn!o-VE6;OneHCQZNnPoRY*R62t*-)+uOG$#%!<1GD9AAe*{yjCd4$vc{Fqxjs1j zERV!ry|AQFBdJ-y-%}$GO6UoChjW^boKiG79bRF8~V6SEPf}lkX(op7w{rTBRxc%ArWh!tr zM1MayGge#+?b6I}SuY1h$r{M)8iz^^Uc2|@g0 z=#Cd}j1VH~PmUnHe()*%fz9+L`|b!Rms2r7H%ExB1Pj;)V>>iOqP9M4d2Kt zjpnU3$)dY5;9<#YNe90$> zuO^GXz8B2ONMizxKJiyz#pVojcJ{~Rn~2L%+pm*rqYLAoH=_h#KHLcp&oqJ>B&XbW z9Q4tv7lwq}+(8zz+C6*&aO?|5^<7#tZv*MK#<}M`Bn`XDBp>3^mT45D>1+hp+ve8R zb2?UlWIN^1U$!&w3_%pDv^gYyic5|b9ua`+TX(HVDYp2C;|j8s=z35y)7c4iE2uHrAH` zV^{7v;rYPc9eWRbwgjr-Mfr-{oA`l(0L*?b(X|MYLP*Qw5myLx^lBQ+WmeEyv)vXtL+F{ zn%X|mjlaKt)B60CDOTEqDhiv==8}(*zh0I(@%v&a$s1QYc?Y6X3!(CFTgngZJO*rD z^9^p=6862&P4mH&&AI+UFy9}|1-%TQ{x9e(?V4X_`D2IGwn%2K}j4S zlXPG8EcrDS>`H%0)Hpos+kY<3iYZB;6_MlzmZpV7fa^{e!3T)juLCfQB2ZVgx)jqu zyc%d4D4CnQWOAEy5k@Id=03`QigzGCZDF*D`@!ym&z(5o_CEzK=AtI<``s|WYd_RD zs>r4ZS8iWs8T3fg<2MUpv^t?`DLR(?c2-b)y(6Y%S3K>-$<*5D64Et;RlVbe19e}_ zAXo}=MJ10FApD(&jaiRya?gaZ0Qfde2Unr<2d9+0O%WH*G5>?7z8 zt$jfLfQ_fsneJ)al`$vzm{ZeTMS5-m3_AZ*S;9YUi3K5bl_p8n9tQaknnabD!!0c> zr*3?Cl%R-s|H=6~LRMBUA-2ieFH0+0W+CMfw&wuAmKXs1kL0wL1Se zRlzf_ronA?ikwozzYIE)O(Ai5O;eKzSg|S#CXoXRY|e|LXP`1R0y;AxsDqnytg$xW z0#*<4*!mF;I=iS0jL$~|aO=tnNZ{Ma+dmbYE?_@RO}NjIh-gAK{&H_(6^6GzI(3zB zsR0SfG<^4+Kk*yhm(A5lvqN4gV~LMD(%~WsDXo8MzS^>8^(S$Kg@t$47uqB zB8D7Ur;ozs;ECzZAf#MJ8e~KE==t`d9}QYR7+F36^NZ^Y;of}TFaSmtQ)ulJyKiM} zZQ2;GusRQ1@RvagJrUfJRm@|!Qeo{lUE=>(3gG4wRjG56swVMykXyKE&yyfBLDZnC zx5!{xxKa`H27mBeo}Jj$G5Yv8Z@q~3+F!-D?~Mp|jt+IZpdk(mik>4f?EYZygCUG1 z2zu-Yxtd8Bs2uYPRT{i^v{^+RjN_AP2dsE~mtok!WCI#gGELrdzb9ZSU*Hiq#|-Tf zKT1|(KH)=OM<4eBi#TN9!gmpd77nEw@zsZ1{KMP*f8{)Z3l!@0VY3|K&$W;@zFlkN zTpzPe8N1+qPo5~WA;;iN3Q4w^gdI~dhIzHOVQ^||*C6EK>ZH~}$aa#f8YcD?1^A)N zqd6cvq60xPM>Xy1TAs+$ifY{5iCh`vS_&w&^nhC829^^>USV2?LOgS;t#>{9AW7IidyO zP45T_EuRF*b{lSieENgkZDH_jT%19CDM@sz8EsI^V98m$7#-h`{CE#?3+_ zq3Rnl-gYVA2pIty`YW$azPZR`6M^=SPtF)p;D5l{od=T31^2wQx9saYwc@9k4g~(g z0;DS*`9QSu5JntF!!cd?_KRF@_ab@>m_oE@DjdwFxRl!6+ujO9o08=dqcJ2;36@&5 z50ceCobs#*i?2UH1_8k1eOAe7X-9e$fMk+p~ zRV}cbh;=L&o?_-cI(;uHy6?O}7sp0r#7FBs%)5Z_-LAi|Ymn^>Ft$zH+J8S+-oaDY<7)1m{0XE{z4FOmaWd2RZ)mbI1D4bX_ehu@?U5+XQ9CRljeiyR@e zq;`XT>5bpgzo2xPlE+{~ZIs|YdHImbKGA?pA^k=aGSlnr?kJnIHr}Me-M%=DNEs_ zGNQ=v7>*7+}k7Epf=hMG6Ee`*OeJy2Mk6M)%80$8<3ns%&4J9~aQem31%t+$*sDBm=OKVj{vm8*315 zbVzwYPH#}A=BpRK&Y>+e_P_qizK0n1D?h>6xdBC-1wo$T6e-WYGZVpnL@UCx3r@sQ zRL+BNg^DQzi)PC20NL>PeN@f=1$fv!Oj11(1mS}_)=IDQ-uS`^5ayTwb_k%|HlLll z)fk`r?p+OjX5O_}11F~Wysx;*1EgT?Sqp9(Ziq?#$l^Xjl}`)vothya*pn1S$q+f8 zf=O$U>rHik&FiAqm1E}TisrM5g$37jL43gjaiM?XV2}`1xDH`WYz`9oRdW3pf^~VB zQU;YOQ|Q)Mm=e_VI4I^AKjv-bzL6^j3shtTg_g~jhuoBxd1X-B{0#|{K;Uml?S0w{ zG#9tW-{pmh`1NdE5=9J$rg<*}y}(#@#3R8+Ii$-eXP=eI&&9;-eb^qOksd~`@Hndz zxJ`P?XLKH3p@24f3Owlp@x2hI#&gR!gTF?TLz9g^^Uu58o9*kcireoh35$RWbAc@7 zqfF|r=+uJg9$+7c*0gUUhy;e02GBVo9)3#@-Ln922)WYc7s@=PWd#Q%^@u)tUKt{? z%!m1pzw=7hZHrlpVJ63KC8HHJH<|W-Xa0l&v?;57={h!G;^h5a0NS$vhk|AB@>RuH z26FJNqrEH>xUR3*&x0njeVkIGuw`a3u^r&=Mm%klC7yBF200{@+0R(i{z$ztVFg4G zRTq5@8%#$NV=?A@7#Z;k<&8NbyN+In{KK6hN_|vEF^gBF| zGR>u#TU^&3_`NpaBq?&EqZehxgCBo z7vSftV_!!g6!%>1>U$RGIlx)=?;cmlaui#Xf_qAE14`n~`Qzb4V_0`d-N)pqxxJR~eNP#cMc;hen5`A}iG-tI**XdL|^#oA5 z=_{uQw?W_8(&!5*RWWo!k$$Bgef)v5i&k4T?r-is~JAfHoH12 z#e?UU=kO{!+S4?;(X()N-F=$QBZJoE$$?WxA^j9S=ME!!%t1St1WF-~=6g7f9EnDRi!xq>MxE=){PBF^qx$Q@>#tNQ zI*~wegp~z)&%cGc0t`UzcmqPf@b>iFF=%$i{#Y3Sun)4dRrvHJ)CK zUMk|AW&i@2(4Iiv`sfXO<3GWs)OZd72v<~YF(I3TW1s_1FaQSE%eqh8ayNYs(^ikINRZTKIQLa=h<};{H?0 zS^_4}WYxQ6oI^5Gh*io4lD{uOM`Rq8qwZFLsjV*m#(ONLBvBiDZ@n7|Lr=b!kEE$^(b)oZ{8~=SqT)f%hxF*Nh$8Zle1h z+!7U`oOilHBoph4p`waU%9~nO^kJ@PLy*~_@y3xpp=0UiA>Rb<{<2gXEKx!;KL)ZP z(C#%91>(POcr()5e#s|H%DHfre|@8OQ*hmBWocL3WOuR<#9dAhKpykGy?!)6jEK`vI_$l~Y-vmVkeG21%izNOwTH1RL`D#TYJ2 z6*Vx73vcBz;F#3F!x#Gc{}FcGaW(J%|LPX0FNKC%QZ^+S5z?@d(V)FEQnX8jR1Pvq z$|zJSNqg_1fdzoG3)l=?G zPtgc1^Yz)`9hzr2B~Ng;Nz&oFmnSV(hs?Kx=OIbAU5;tvn*{pV3?dM$(mf=(SpWKrEA5~Bj z_L+g}FSM!{9NcStM0cBt*M{R#;Q;Pj*M%(YM{daC)|=iQHNfF4@seo@nj91XV_j>YG=6$Wk`DGgzs!O=NCmgyhaOjSS z&TFID>vV?ECY{k0%!xs|a&{fKpRNE1q^ztqOOAgG(N}sa}@!53rn3g)cEZByyk&#m~mz73eXu_K3w>@#fr=zu?@>pqnMd=UA5K!mZMkbHqK@)c(7d`Rf(; z7d>D|VVb;}fRosydFf@2_Orzoa+>&T)H{GGFDqAcvN;;ytM~ad&@>ms9cek%4uAgk`AIcwc&~#tpM8|6?3Hi3!Z1+WJOnS*Gm;IClyaZHJ6PYkYjP)2PW>pO`Z(M#K~(cj&Co zjA`tH8@4a>V%;Lahz;jD&Odb!hx+>_`^etp9zSd}pTV^Ia*y1XLEjjjapiu8P1=3y zdv5m$xj9MXMx4hGk&UDt({QUwrV~jzVG6IRP?o;<_lL=-&GIJ%&>JVpe}1ZyG@oNl zKj--<7>Zh*kovkYlX3}`h3omcZq?C3wScizuT)ML0Dp}^{vbFsG+%qogN(LvDmB&i ztX-E*i&ntgpC5-54`ZWs(v0y9mj6Z<@^L@V{DbzqTWA~n6d1SmdHs_)_%EyVDG-;f z83Q>&QcS)d%10Y{N0*pjpu5G%Xpx`tJ^jOR7*}u@2M4;>J{p(C>#Fevhf#RC6?K5T znAWk2<`L4*4TcLpqse*$`J7iv%mB{j!Nj$8+~(gHc)BCx^fVM=Qm!Wje6=#!O0mD% zCa|_|OaXbig%37-dSoARo(htNe_-IsF4ggP#2a#+3+sN_zt)W9nnG;%{Zw2Xm z@O;p=&g4(Po{5wMYUZo{Zc!H{ossKI+8V=*4%>Iw}unN+O{jm$dNF}ABL?WU_;`*F2sf+R(xD3-6B zT-*4^Puo&9g0r&Top667V`d|HD26^{s$H>2Z_Gy{nl*`f8Z6{I?>&V4J>&`QAS=B> zKiaD^wwZQ#p*7k%X_)`|Ne9}>9}m7Fe$&C9`r;qo%}?B?J971P0UQKT7PsG5d^Owgs0{&X0OU-;M8=}dJ-a&oE~zC#(|JLPH*z8CwC$G^QP|(3k&;% z3G+@M9xs6t#$`GC__QnhkBy1|Qc%a=zV5)dun1oxQz?(3*fR#taz3aHr-W+a9jJCK zUvyu17TGT0xU5Y@JMKDmfy5P4|4?G!IZN)JEIU}&1eCk=p`0{ZC3C2>0uht_wWoeM zObkAl|1jsFwQt6Y4w;XeXhS&--12rw;oTO_+`m&N)7fcb|Y()=!uB~aE)6Q{1 za3+33DMNzBbYxRB-MGm4&87oy^9I=0QbX!G2Pv;!&J|rtlCxI?{-Q0ZK(M<-Vr*L> z`f#qTuz$aQRZgjj4iC}hATe(t{cDp^8u%nJam%`t&v%lMTVT!@M)>#<+`qzR8D6uY z_xCf{NC?tbM7r9d9J%v4IG=j~B%sZz&P{Z0Y*sfC` z--X(Irm0etqdC@UEQ@;gE<*@k}h37fNM>-w4h zTUb1`ur+2tjPpp!QUCdO(0VLU%vA0SCe zbULg#UW3~Dhe}3rNBhwyccbm*#MwzA%7rwX(crpdXtw?L0+BpqmfCnc_!A_)y;}AT z4&Bv55mTP#xRRPCOz>Y}Oj@_Dy*mCU1E(xFg~x#@9ad3M=@OpOFoA3CZ}cGV@mw8^ z4&eh~nL}aHyz=M2Jihkv^If?*{akQwq(UXrNLIJFKSa)sze}m4|01r5I5!zCc#_?u zzZ_&S*KByOAK?PKI-roPP}J0p2RX!vLtx{JKHKxLeYYxDZ$^c6Xa~DHpld&zur<2M zTL0ep$=~FlTbK4T{o{J$@+P^A^Z{iB=y0>Ds_Ohc(CfD_C)?mc&r?}X%for@ZXj+b z$*v)|AP&|$crqihX<Z^iI*~S2JmJdUX2vLCXh=ev66#GdZWu-B%=02m*B>L-YO)&sR*d9$J%hN96 zYOG>T;KjN0px5k{H@g%P23RgM{CV4Fz#JnX^FaHo`+Ux^+Ut-3?J`!#G_>iAov(p$ z-6r$CLj7dH(cKNPh^B?7 zvt%1E!|l2QHOavlxWST){`9U=+eY5uhFRv2R(++4phFMeuVub4I@t0F9%WJUAU?yCB5EcK7mLT4p?*;fQW~}O;`4_*Vy*8&!z!Wb1!BQB{2rW$4>T_8*^eM(^U@57+||1*FhKq$W)7* zw}L)%LUVm#(74%ohl;PoIwj#oo$9{uqGQg=aT3TkMuMB)K>ePWepHE^gcuQntxzE6 zCV3!}SM8@%>lzd>4yVmVyFC$F~DtHs5AQQ{wENI zLd*S-E{R05>2~TN=yQRx{9Kyt{+Dt?yqb?26?M}x@!+_qHaIXK54HdX`Ud8GwI8(r zS#ck5n{DJkvS!RrMh({|OyIde)K&%zN4ah358JT;*Rh2JtRau@qF#$^U)*{sHun>* z*ex*j#ou4^^o)Bd{}H2^ffFt$)x%NYCO5M`{`5|DRi%8@}+P*wLC`-v=bCXjt&Fpb8&BhRr+JM z(O4vA4fLbmCB`-pwx$6vg<*`Eb44)N+5Zs_cJ$d$YZ%6+=$|+`a5Y}*`2b3SaxmM2 zbCu88W4o`41V@?KUQRv(S5Y#DX?UnSv+z>KS6dCc2+)|#-v}n1kmCknJVaH1n@~l_ zb^E)|f#2{eKteYb)kcns2W5;Me$h4Ev^0XuMDWp^8K}B9B;OGFezdlJq*gpkm4F5~ zdDkD=E~1^u%P>wT{F2Jht7Wd)Ng2Hn1Xd*zk9#;BdN>(ejivM0#4n(~>aoFZO&j#` z?_s{07P{bV&voUkcRTfirm&b;2Z9`if(Qs4+hy3BfLQ^8)KM$Mi;5So3;zCw^#K#J zQJGv86RRqCssVh%nAhtMGU3H}spL`Ef$XZeS7Yp(nQIssZ`uM{RYGcyGu6 z`g`!MdUWQ9^2ipQHc(SC*7c5NfQ9&#F#AC89{#*a;)amj*MmJ699EWA|07+t*}f$5=IE9%2?)qJR<#4^d)7Ocw)*TI-(Rng6vAl0}jLv_0&K^^kvwfgro=r zg$Jq6Ch-X{iVYarApN{gL3W#7W?VU^iJXIpuXWX_IqJ73Z`mJCoP~;$TmZ@rI%0B! z90uR?z@;v$-eectip{)5#!&6}y)2-N03s_oDYC8e5KtIm)TUl$rYJav3)k!ZAxds) zuo(sP&J`SMRarr1zLmGwb}b?g4n+0N2vXu+=oyjZoco$?)3H8NAZvCNp&1_HSym-7 zB011tS`VeiS@TopNBaR$VCz!<&?{wzA$a|_TqNXA{ScvusIAw7rRmaqLV`97gXc&K zyg}CE_k&*h{MV-oH=R5LFm2V!Ll5N7b4SzY-3GB)b3|%bF%(au@Ei$A2us@EVQf?; z!)NxtBx&lAnpVrBT`aEyf1YiT5AAJ|uNetUA; zg!&#L)(m*T7M6w7$tMAw!2{3WGW4#C0TtK0U~_pkaVRhrJSUaCZK-?@oju#(o}@qi zApifL&V-YspD?l_f9TDg_#*`Yp%hapFZhe=@pgGOx)&mQ&Hq;k(QEnarx3;+*v=sc+7mY7(KNCn{pJUX7$F;G1I~}s(#0l94 z)#GFrQbrTdX|*H(zKLeP6=m09*b}BR!ru})sdEk*=zB~=w^&v~*6h_aW)0z5H}Hg0 z3w=t!f&)Q%5#zs++|OuK_iP(U%K{g2n(^n%J>VV1>Cix4`3&L%+9q1VE2Y4L3?9MI z)0>D{%A7Y5lAt;j#UL|&uZtOl37kDcHFfeW-)KDK=Y7bgKPyQ?~%zxQ2H$-Q(vnCJk zB-;eKbk_GTg{D5rpR-OX)zH{Ct0f>f-$WHefe~e`qktcqOTu~LT?Mejm6ao-IuFAw zElI#b?YeXIyx(1J8c6?dnZa+|U^i>$OgPJ|1}iD>J#rAWSrnFmhqo2I>7O80EjXh@ zBP&a80OZ8^a*ZnCVR`B_AiRDXnn2hiueJ@Mv|!O#H_I3+W<^uI9Oj+;nTYzQ)mC%^ zp2NVC7%{QKf&%gy8r-<1E}IR@K0lL3>g^b^pMM=~CNlUzU7Sh6>0NUI{u1~aOFX?rFVa0pP%4ex+bnbXN&T#$3 zRw&-WBQ<#^Jeqi-(;)I@j(?`KV#563-sw=9ypP5z2b+{o{4i#ppH5_Ix$ABavpe?+|1`^BS7-0dbIi2SI& z(X|PY7hoi5Q!oG*kUZD9Ud0?cbQB^b0?MjS#|xemNa~v3UCy-Cz<$Db^TAKv;dk)n-q~Q22xs&qMCAa1to4>g zD(@y5N$-eEY33@es-2cs{l{V{97t`M?$lJ61bVDF3DZtF#}2{&wxe*O=9AJOl#|cp zBM-%v0@=9D>(+#&^Iglr4A~JV5eyNs+-~=I8SjlK``$1D`vsSE-kLyer+wq(3TgP_*RajUga^A;a61NFOIoTR|-!g<0`ZZ#c=ZI_~Fl&S$ zMz{>qLKd)?U!~lGk8%PB`s`c&7cis^g{pghZ>iZ)V4^)Q&*<*NfyT^67m&4}sRlct z*zhJPHuR&A@1idu(00VyZs1^grBy8jUiU3m@KP)CV*eO6&*Lf27qG^-pJ_{*ZiFQD z;2f%yovRicUzhwIvM!RGLH~_yD(<0s7N7fkdvCnOLE7cf!WVWD<9F|B7GhDJ`hi@L zZ_0+eTZ~k1{FZM_g`wCV`DT2no_$v0zKfD-j2Bu&>t7?#c)dTRDy7ATTcq}kLf`ZE zaJOSC(qtws;V)KuKnBYGgY4V$<2z1?WkdG_Tf)a7G|9YC%!A|sZ9wpiST!LwPa{~Y zRw0Z^Tz)dyy@g}n&4ss>3^PC9IY^M}ru?HizxcNC-KN|jaM6w9vC`xFkNI_^tZgEY z4h{*qfqr~@;Z8p_suw3KwZKYO*qq=vbWzfgkqjq?XC<~`jSBTgkOU7g4B^LQgNPvj67!YN+;iTlT*rk0yW*f9D8Wufh6tdz`A*LsT-Mq z8&D(idPd5ISvpGgOOOwcbmL`dembx}0LcvjAs| zWSvi&qC=}OD1)p5`%}=|4zvEhzcwx>5OsL@`oGBbe1InI>?F}Z8*>ffR#I|B0<^-M zXMng0c6A_zI^8Bz#q^u2LH4*0xMgSVz>89Fqxu3$|XVt^iJy&YMde(3Az$DpSQV|2|4e8Ju)e zFq_mU6gOeSTyC^H51LT2zOG(vs#zz`D(&GS-&bBt0?xS14QNmdm(@pr|+JX zAanJ#sFlUO`|>$z>p#u;w7UXkDQZd`W-3p<#~_+aK3?j0zOVcU(&pnn%yj3seLmqr zah#Tmg2UQ;h14Hh0KVyJdf^lIJ6x>mzZOs0=dU0v%B8dP9!|Um-X5W#k!!(rroMEj zuY;TL4%XrpYWb~O8k%o+_i2m-wsq^Ou;qvY7zjkE_qY#B<7x zSHIrYCV_@o2PR$1Z-mm^^*wYA*V77~esQKBai&5Un_`wuUX;rWqO>xe<}o418WL2$tD5IwXW@>zHRV()^+FnbZCdvUM7L&rnQITk@QG>H4MYK6c8h$%K2HtOg#%b>go78>( zG^u10&XM4*C8dge;=6TuDLKxZdH#EyzvUw~SVbLBZXcTkY%L@7DBrLad$<08XP9FX_2H7ElyxSmB4yJ)4Y4|jA` zS9In`b*2mY5w9ePtKiTh+7dz!e!u6GjYO5i{h7csdChjyR0(o|F_;tbY_~#IFsL~j zbh9o7M@CN6VJbS2jrWeXo6lFwN+E#xt6d%NL=V&*-M7emkEV5{o_P+t%AU}gNP?hE zE%om|D3XFDJ)bnKNgup#UIqHzqS{3W2|YKJRSdU|WTiu-`A;{Oz6Txr0D6}b@GNIm%XuT{V{9hpdZTTjDfmRuwbw2R$HxRWv5Bt$DO zly`VE`KiAUvU~_l`fyRj+{ve#!$DY*XhD&UyXB7*cMA;~2m8OW!Ehn=j$*+|1Q3L= zb=r2lrG!541N9d^=UYRzg07Q))Ry%0pj@Iy^S3*|^^ps_G~|l(1FgdUi@&o!;&}#_ zcYniD{{Ccs8xd0peDdxfF%|h!@oEYZCfUG;{8Ft?A7&M^VBM!B*YE(tB@*IZq2yRk0 zI^M+O?>BH#SQLFA8cmN4RbNUl4is7$c3+qYJw7djq+DfO zs}}qDk-Y5?_2`lg;F-4w$>Nq+U&XG}w%yZ&k+PC0pg$(ebL+LnzwO80nqs)^%i_Le zGLJ5YKN(bVac6N&0?VPC+KJ?rmcp`}M9UC0b^@e!lIP`bN z$~O~(IQL!_qPpW?=k*Xz3c=nJ{UV*gmi;b9#{QLnJIy=An zTI8=$3m!o|oWaf!tA9u8lLCl}9Dr=r{qWVs4?@zJu^m*~uJLYMj`o6aom+>Vs%XRB$OeLBEF#J{PyN`BJ>(*7nw5j+DUt&?Uv{#OYqq zg{nQ_`;wr{%iA&~alQwU_0<3^-UGK{Np0^$ko-#pB~K8!orh=z`Lw4IR@6npH3k$7 z%rwvgmYu!{)jy5zkZQUr8zh0%IgyH|VAs5lgyyy$j>p;$qo9Xyd=>^eI`AP#oSopH z&wPOk5TqtK?!BNl$XKry&9G|N9yI-02T&9TljlJJ5gg z%_Qv0Pb)O7^bkekW}7yWB>5o05Cley`?w!tV2tlC6Q5DOihMtDg_#o^NX-Y-=VzWR zNP;A{$G-VUs)$IXdq>oNIG%q{0tuUMZ_yM}5A8lkV06f9OUI*gq+*nKTqM=*v$~|c z0j)m#)F2>Uj_;O30{yZ;KKftguJEjEiT2mr}dg@%POb3Ivr+vjX9Jky)Oo{|Hh9qH{i46 zfwJJ$HoqCSU2-R##Lzoe8mnbEbF6=isnvJ;BP8Onf$=4>0%vdD`j1DWS10_G6;=fk zY-^flz-FO?Ruv#SCO5d*hSvGebpqXUW;;vj(#-fENGw-k4Utwj*zj&2ZvlV8ShGmx znuV=MK;J-J$5L8`J@3nSVfL?gr9l!GftOLQd`f%_;T?$AvoN`=+)pb!cqqd^Iz)OU4$3BQpE3sad5l z8z1-O@jC24OnI2K7@plH;&KtA4<)4h|E!qJ8Q&b^eZ}hMHy_Z2!>IO3Old;|DI{Ms zQ8pEN_&XN;2SpP~qmu=6)KjKzkN|Io zJ|ij3)g-?tzh(s4bU9sQS$YUX1^4_oN|_jTKSFlD=c}BRg{!oVzVCUgYQV#_g@fK{phF`A!U{}H;MH{@}C9oR;57$ zU?F)cohCI)J4?V6Uqgz4lN&BEe-s-1CTuN>4S$#kZJaq?0z{q4yC<1Wfr+1w z9$*zPP1iU#?&19}?YjcrtM;9|lkcX~V8NR8`i0)oN_G7vq%w@IlSKQigy~=kO&^>^ zXc7a+cRpaKPBN-IQXCE3J$=FHE-)c?9zXM6E~R`vdFBh}%Va05V(|$ISa1X1ea997 zxwn0b^JdRmWO)egwa6gXN?7I#P)Be2jXG|E>%UefV}}oLly-MGONoTEMnbB!71|04 z3SZVkG=8eFf7;!9&v4OR^FE$4^&a89y3pGjPzx%(q`y`JG~{DwHzxD23hoC#$$rz# zt>l<3yh~Tby$?L1EeOSn`^p_g%6neR*>7Y{fCKut_~_7-nwQ3Ua%a#S&l+vAaSQsRmlZX z@kDey7<&JKAj0jVl0HrPKgGe|N)|}_#}FMexFC;h$6?V0Micm;<2L*NA=V2QzUH3| z(S*`ab4?W+j^p-Xbp=t7!sk4&5nFNc)80N7Na~BVNvJ z{Vjn2OT`QeKq-SiIwmTF@SFW~xY{v5L!{ZYkkPL9OQ}jU_HwK#2}6o-d^I_wlgAGI zqbuk=ck|iFjXh_vXAL<(CFHW1G8h_DycJcXpBDHI?D0n5oOj?Q&vYq&_*>7KYy%3R zY$gh!$jg(gv~GSDI*8;54SMIMK&QwxpGjjnzAm3 z=AM&rh$*=rb#7=}@u49GAdXqXFX!Ltn;4eFqfY(i6liftcvM8BM? zFqj~}c7&1b#`M5G8)KlHPAGZoyogQ*_JeP9kjVXUU`GGd_{>4C%-7=2EN~f5$Z1Y> zVEv_-8fasmn|p<6G)dayQS9iCMB9OEqIS^)wtbu9k*0F+udXgdC#IFf-i>{x2r7Hh z>PI?xD1=T*to-~1F`9HaE4sm=&y%zNcDKE^x_&fqr!)7Cvt|Kfb0yIFF?*JH_Y9>f z?tq~GyfIgSKa0FQNNTYsHcMvyE0uzDR5IP(b%qqemzS23%<|o`W9Z0Ru&P+Iu@Cw> zhY&guj(4q%#B>glVju-KUZ&4aE|s4_OCA#U(A9UOUB3ra2dU3RQE@ZcMwIqP^wDxf zfAh^}pUs&1)~O%HeAB5H@A&7}i;r@D{A2gr12cDSJix|w|j+Z)vUn$!HnAi;{2Yn1V6O^Bq`4`dG>vZEc)};HFKRzI?;YHN`3u z;H0HRYoWO0cq9w61pQmMpJk$!DP?k7y>-%IME z<47Okp%h;v8l`GJ!mrdQ@)7HJ_PsC;l!5oR*B;w>QgVD4!^9|=@yDF@JH9RGB_A`m zL1es#J|6fFx(&?jRS9pvIxyraO$RKvWMty~$dS zw2`$jMc21z0Q;CIGtv%}*?bNr=J}v-DO#5+Pko-W83izBB^-Jq-wWSvP!)WiO25G* z#7?PG_yS4OwnuOb_ZDn>mN;1jcV2Tflem;zO$D>Q{>y6T&X5 z20R6Q+#0u_0@m1&5O&X42ht`^P1~-&Z)W$Q2ET`TXA^}v?$yv;slIDVJ#0JPZJadL z7ha&6em+4^Cu2BTStU%_<#u(6k&a)=jTLylk(j*2amcEsUad8IIj0QM47f2wl6n|2 z;H(7_>5Wpe)0ZU|F_7L)JO(PkT4T53?+I#@p@pq*Kd8~X0&1}*0-SZvPkr5Q4!HX; zpjX%AwOrHw9>oAMn?8ycwi?B7C1^cKnk4{0AYtiVC)FGCS3Ha4c(a?YgW=emq$u@- z{F!qX8O&l?93LLO*7oC#RW&VE@bJn&?e8BOy4f~1_`jf$P7mcjxNeVtp&WxQe8rfa z)F!^*wg;wkwPD-?_tSI$^~#v#AV*4^Ghc;PZNf-OZ?o>gSE{F*gVPC zCB4FA5H(Ec+qKRf@JXU=zlp-DD0Bwwyyj*ky=A2&UvL&+yNMj>~! zH_D;%FMaQMw`)KQGS<1!T@Kiyb@ zu~-`t|4f*6KeJRQxK$@znRp7F*v^z2bfOwP3DV-YiMfQ&&4W(+O7$#Ue<)omd+;|M zt=cPk*1thwp-6n>heH1t#y}*YxkBJm5f|Ax6tpiYW2j1yYw1;1_Ji|k_4r`s6oGba@B)MHzr4v9;4c~8 zXzijn(*2S})DySI7NLR6qk|Ur(Qcy>fohEd=b9tgiyel|#a%;^cRw}oLP}GYjC%%T zS%@-oZZ8Q3dqqKHrH)5{P*4Uvp^*G&YC6W>x9_K|>WoUU*s^8ITJ<(8qYL3Y7&hpc+U@`_f#e6w|qg3 z?UKqu?Ix&T>nF+ztkQ}Ua2=8*sc?3TfGi~<;QmzOCN1te$PO!w7Jwe|C57#kZapmic)^)0|TW1@t@EC@1G=Vu=#l| zp6ufTEoc|fZ6O^~sv%pg>g7%doAu6qWc@TSa&-O^^AB_sy7}_g`%z|S=6emNz9n28 zgzR%df^yopk~o7WQX;IGKXWScF<@>h;A9`pMUmy_%3fnc*mpG1rZn_ z%}|L(lV3)?MNG9n$Y9dTQENX^Nkd=t#N&k2Z10{kyc)6g`*&Td&MO@H(0ReZuUhv? zb*1UF`!!9XX-C3Wi?L!s)Wwq2pKp4v&ew9i6Qz7N^8FDA5Ct3DthW-w2lzbA2yw$G z`}(|FlBRpVAk85^*G`Ik(cF6)CMh|d7}L&wC4Sj#h7XOqs3#iq0WTd+@`vYydkA#q z{VD#_`%k`I6MZUgW!vzp{hgWf&wcK@Cb9Tf*KoH_*s4bBzN7zPcBE~fFTQ5XDy9w0 zn=m`0a-?5vqWLGO{ssGswHm9S#2T+lsx$B5GLbNAxY*lOU!T5rN!5G*z07IgH2Xh# zG{|~gm4uR&PvX#TvOEzD+OOZgZFv=|(Ey)T=4c9zxNJ`aN zVUaviGp1?4tSo5OyS%0_g#bk&;G)Vash=~q8 z?jJsY{_qj#vcF`G!`O(;oBaG(n1hsgp=%feJS77f`#|BSiYpT5Ua(tA>Z%w3BW180 z9(cTb%SgYVIJlimykSnjAg9W{u6o`Ds!$*uATXjeWvUvg@rWxJ*tEg&H1k`HZS}c_ z#wr4ZypFyRS({{>mZb6c<}T%xaq*>*iq%y-R^E>)TmL8O|90LrNzMMMIeoSMuXmbf z{I&l10euhg6P_cp`l?$jGoojI&rDbBFf?kZ(^B>~2*j;1k_i(@^eK=_xHU&s z*lt#flCqKdQ8C{yP4-GbM~u0xN*Jp%Y}3-W_ULho*gT7ZTki<4DmL!MfPGbc+w9^O zVS#xe1YUaKbAR?c#uX^}KBnL&*8QY#f6P4$ELR5}(2>1BE*{xb4J5VCR_|NucWPtQ zu4Wdy9oeJ(C5)l~y^EDO1vNjIh&AzA@1%Z@3vymrlVR4ow5`9eBk|10d$)Y1QVHui zRsjY7w?|7%Dl(p@&i&drnt8f%nXysk2J7Bv!;YYO`$C_@y%EP}CtXuS_wV0Z1!)y> zEmE6KP4~19GZ}$u>GCDg&lVY=Lq~gc^_ueC6LC3SuG|Je(t7pik|aOl9yIPrIPFe4 z0f+coG^;ToaR6u+&XK7gBZYO64jUPqt0Pa5N3! zS!^DuOtI7tLkl$1j_Ych(>c0-a28dB-MyM3#mTSuDs@ZiF+oEf!={7oNm{lx)vX0# z#>3B|jNWAs$&&RIc0;n!KUu1foH#W^m>R4vVs zecg{1o0e4Lwhr%>LJ@`%rF@Uo$Ag3=DqEEz^;bCGkMBrJtPGcEu4swNj83Qar=DUn zbLjcj!cx7S>*>gqS)wUpQSzae=4>6Ao7Pb)T9c_Xb|mM3dV$mCj-Ky}6V3@Vr!|dq zB(%ld|DHWK78|=FKh;5HjYiICrQnC!+`eT?|9!(Jg;25zW18itT7S@n=h3thC7!j| zFX%6Zk|Qovk?*Q4IT%VYL`!Ww`>_bd0Y29K$s?#WOccr(cv0$)u9jQSeeU|{c*_=9 zG`jZfs7tRdfGbn3hL~=d`pgAENn{qW5xkkseMkEwMhBLybc5rOvOdio2L2dkS~;CM z_tv|PF0HRKw$Ro4#E?Q$2s5uuW8bsdMltw(K% zp`_27bL}Oo+Izd|&SZuurrt?6FIXR@9@%=dq;T-~Ev+6ji?^*`+@IDWWLG8|>@d8f zq@yOTq)NifpPCu|cCF!&h!{bQ%(showAmYKwR9I<^{}dG7|XnAJ|dBHK#je`c9mc6 z@?vXW=B^E-vV@yiFPMpNo#o&@0lhvgG++;Lj@nP{*L(-7eC7=FBh)c^Ryok!ol0X5Y@E zCiY>z9TjmeL){}zC-pxoWyt??MU5GC_wmIs+XR}cayz`j<=QrNw92Y9rxn^t)fn>1 z@P4v)uurq>h|C<`#&7HQ`F~;hCr%{4YphT0vobt;;_{CB`;#Ayj1NSe7CTMb1lFyJ z7tKU%>8E@D11qBexN4-H2{Eos?RB&I5UTWM7sC<}G&Iiy1$fE#H8rvowMhjzmyWYC ziqwc>Xf?O^g=CGpeJub5-ygWQdR~vG1GPgW4Shr6T5M5e3sw1Y-(R=RK7R|X*s2)7 zN+m7`1ndcNheFNP?C=TIlT3^;A<2@`cUN}%Ydc;A)^2s(vTv2vJ}^Fs&=ucsdPpd=2zVi zFZr)4wH*_&%cylcGGslA+=VBS`<0WSH#i(jneK@>N4FhGu0X39in0&v-MT70fv(;Ie<%B2^ zX^B<)U44w0?7|Gr{IFj&_R@({aPfvKyp4VHBpeL-U54T;55K7rG^$X#W?$bjH;koI z?A2&htV)K}s+z?;C-r7dKlgulXVT`->}xV8r?i(u9d zX{Q&RYHDhg5)U6fy#2N?o^j7ws2Dp?BKzR)>qmV;7s)M-*PaM2Sa~QK>Gy(y$gCJC z3QOs!$EI4T^5s7G9O*GMP1Z z@zxU?dGgv+Li9V@5|Zw6*;qXZYEgMHC#g#!x}HdQI`tDZ(CV7Ti`hx89U@hs?qMEX zOJT0V3eNnO+FM7|p5DO{*=Z+#M_O`OqL4=7TZBa?XU$#2b=o=MFRsdTtV|g_7F9WO zh8Y(&T3gdaF`!dMlhjESKdqzIE^j;a)+h$MZ8oi|*?#7WF6z$jpxbqc%dp%|zIhBB zk=iG^WX{#+7Vwz1B^kepbDHC7q&s3;cha~uQM|ps@oIG!w^gRgz~IaFLG}j{PxcCl zhFWOBE4j(OMsqpUM(6G5`_Yl6xX${SGGN^kGqH?v*ZdG5pHwEJH4 z$j3i;x9f{`P^uC^WhbtA1gxb`3Pkyhc@bP6f)J^<&Fl zed4lhyg{bTy` zlzk#5Ki~;wC7!8ijUOLrId0vTbI50jv09h=zPp#}!mR-x{&Ha|0+15MJkLmUyn7dZ z_1t?&>;RY130JSJ$8-P3jgG;6ui6DvB7dBj15C#HC>gF@0q4pTNxV3CsAp5>a$J?% z$=nWGli?}y+=qKihkE=IZ{+qBPVUiiCWEi|?}fT)rJKFzD7rA{oj%+fX5v%DZde`c zHL8!fm4jP)9A^tvI^>R(kN9BkyJm;;{^~kS{O$iOr(Mdmd2?Wx@q%=yzUCZ>$VO>zN# z{&wQ0<#9N?6Lsf5@J!!{xeF>#)oxv(^|&87aNdnFm=C(ysA7GvH{CZbt!*|4+?`56 zW3i%-MQ9wiNxA_5*{iuR0&f>H#`EqtTWskEDXiR(x9B*kQoOCczRzK(o*idf_?C`Y zwIS>IpNS@I+ry3o9(d(hBQdmus+&JnbEe!Tt#HUXWxK5p4zN7a{;pkIw}wbj>7&Sa z?lc|WuI(y_m>kZvMp+YJ5bJdFx;Fb)H*4~Dl z`nTZG72Ze%JIDwTWrpMz+dWJAz~)y2Qz0C*9_27)K>-k|gxZcjW?X(LYmRA+k;IsI zX!>Z`I zZO4};m(p);JezezM+62-V@35n zw2g6=@fEK{Am4nc9h;J{;-JSs)lDeu6h2y1i6HTe#L(Qwd~ULIEH~{d>U_UZ3@yHM z6|{e4_KkN^J7=@jE5*n|ODsNWjeO+Bq2}AlVaFnjBJZ!vI97Cv>Pod4;qPsC5P4>^ zuxZSG@u|!E#2Q93&)z<^YNhr1SgB{vwR#eQn)YYjMRGW7o8Q{#`1 zK82e-eo^_xMYtyNFOB;0!oH6B7LT5abGyU$m2`fMe|<{eUzcSHxnSfoyN+So)|0ct z#~lvzZblerj3yP=hE3sGM4;MZNre6A;F#+dE~8_DaythlE5y3{Q5JAjbJl|8w=TZu zApSPMj<@mk2BLkPwbi5?K09Rj=Gpw1+^5cY%y+w0Xo2^(5|>;M&@NQRwG>5%`|dTp z4MtEz@0WKkUGnR~)iz0}v z?ycTZaZ_)T@%tC1?HI&hl4|KHT0PUpzI=(X;=++Y5!2VBnSH%gYH!p9jow5GmL(kK zG}K6PF|JR4DQg>h-?*x$g?nMX`&#|`K4vkcVHWp{YZFSF!yo8B33A=QP?K=0Elo>b z>*|>#V3(<1iww+DAAJb$;!*39R>?DX(a|E|aJv8?i(u5D8yow|J<`KZ#N0`=>$grz zZ;99+QyaYezc#$VolG}ht~N2Yc>GES+{{83R%2K_6ME~B5MPo+L4xFRqB&gJE#Uk- zSj2Xo<>oh^O~a96LCbGtq0X~K>YLA2bN>hgk_N$ z(o5{Mz8k&@B{BWF(+-b&MF&ro)LVKW*jD$|FG_gYc7JiA_w)2wDXb~^{h6b>BAKN{ z)*ZF(T|?XXMjpIiwKl{Bb(@M}( zqQ=)haGMFz!hdX7z#S-d#VXJE$r-z}JIV5~;WuDYE_ z>Z!t>#W@HsO&fIuP zMYR9m2vX~CO8BnTonH{v9up&1!Q$)?|H#%x{o&h<$^gdFQu18N{L5l0zYD5mW?yyq zp6X@NQI?<_V0Kv4{}8*OQrgpA6RW_@Vef=(s{}=pDvtY#AFW^KX{2Fe64TmbSW%y< z4G=_h+u3BT%jx=`wMtn6hl}bS40{MxC)YT!uRG~}P$jXi_g37Dp!&bWxfG^((Er}w zH8AI53|p4|j4-gPlx)^w#yW@Lo@;B|TK1hnX3Bl7+Qu*bB&uS1!6~F&GxB+HPMPcZ zr*AgapKIYs1BEWuOM@5)cnM13s_*z!B8}jm5P-Hi`sih@<^nff?=IV$M) z?;Z2Yty?$sfs$MS6(jR#4%-Qpp!p+XK+)~AY&soPg5{sPyp1Y431bw2{K~rG$ir2W zgPq-~=*C7`84NWeVyGcUQY}u4c$7_p=Kr?L#k0Q%enl`G%Yy|CuDflPwy$FC%)i+R zMn;1lUr4$Pwy>rM#Y8e=oQ4=Rt@kQ=s7PY$!mHD4XQJRBoT4{B@Pm#dyj*xh%LFAo z;G|kdK6jG(MwA*dvpZ~KFVEU+B(&lIsV1JweNL=Jx}7rj&mP6K%Ha=~V+?=vVj6t~ z@giWTV^Qol|AcGHRb8#|%fH+W`m@NP*I$WW>$Rt%(yR2_n_&$JY|0+TzfxW%gy}c; zgCrvoGY6Z!O#Cv)Xwv$NqK$po71|%@rZ4n}rsR_pfzOfAwtNGT4qf$`65$>K0g;l% z(f)soz@KCB3IMHq$;%G3n6)%} zvSf$Bru!y7&{x%HZNJo0qI9KlmIFuxCZDZF{$h;8YLViqg0Wmi~_H^2CM15#|M`q|IvI{c$6hY=V&uBZ|6hU^pOZc2)o#oYr-hRck7PGHZvYVLzky9+Fff&1RZO$*C zqT5qSdHB;~hi5sX4NS5xC~;ModeaU)vWcO**M?za3~>AvgY)pbVt2QrvdwCVbvn;u zWPm!Qn5L8$<4QN3WU>Ao><5&hSC(?AeLC$Dq1GE%7HDGlhTn%_-S1A?gRYUjW_D6g zQ{>Jk(|{65zIO~Tw_ZHwRT{KVr>PW5ACdSXJC*gVmZ$KkV=E5aW8B^aZkSfGxW^sa z_^~Rsss1A&s0wmfE-T9Sbkq609bS3$<+r7wk8!T8Q8^7$<)}?_> zgJN+~@<}5yFeXWcWgA)6!q5==sYN&c`j}VMAu<#Ms_bGSB#C7n_+PUeC zbh7&4C6oVkJbU$&VHX40f*;L6=6~~qWl1?!5(s;|WhWTUF|+ft-8+WDW)Iu=vr+A# z6Ip`Ptu9>QiBXe;aep`6tDR>Q&C>8Z?N5Pgi%$ak## z)8VAvhK;AgbKg#;gsw5~;WjBs53pGACiQTwm$Kn8&%M?1a3{x@O))a1jEN;IV8e{Efe0RO$bQ|burvX>{ zSIaV`8KyCeeyIObV#uyAv&Cm+H#KVu%W#U`8;%m!U9FxHmCk*Sy&qdyc@!6cK-3|1 zOrO5*ME#2ov8lSW#y@U6#QjUaMRwQ#Xsm=eUu5q4{{7j!Y%~sX;IB9ro z`MX-5$GCdE80MuhHeWY7;&=zA&3h&g>DSct)`fQ-K0JlXHfOu9)CylDu1~NtS+=4y zx)R(CWAIfIAcl_HRJvcI$nhxB*$Mu7PHF|43~giIDym+WS|zCb?13IfQT+TB2UHOb z*7#P<`td||)=#m0M{hqgqF*1TxIHd@b3|P>Lv8g3V`D+Xgl@Y>;XhN|fB)(FeM#*Z zHk>BDC^SEC^D~E#blK&iCg_4d|ujR zcT{Ut@H!07Q%c`ea0W3b%I2%vQLtkEI-DCt=eo zG4Ji+vk3p@fBYZwd0WqR`vE!KH6qrn5BUf`goNd;ThG!_?bxoz&@2eFid|4$*dUE9 zxgJqyi?K?v0|GFUlonry4DP)(&i?C1(Fm)JqqLza*F!DGtLgk<5s#m&H@7Qvwk%bn zo2ea=4f>x(mmAS5N&S7BCje5)8BWYFb}sM{t44>7G5zEbG<}MPnr2IW0}5MB@L34U z+`;@Ix~R46*VD3)I;fSt#g)E6KtQ0gP2cgxDnGsw)P!i}@GA!EGD#d}Wn}z9-Br(B zB^2)Un1}< z#;rp$@nv6ltufM=-@+{ed96-9WLW0+E=m#hNF3Uq zUu8F9&`m+g(*N?s1@gsv`bXmBu5dk|i~TXbIK2wj!~D?xsDj1ThB(ht=jZxa9)5K9 z2-bzdVU7~Zzvc)B7^*X&*CbubVzdt3Fei8~5FfYiHBXR3Trx{z_qrYiq+0cGeXQ86 z0L+AZgXe7u!Hvfx?J9B1G2Rox(JReLAzlHxqZ@E)no-aV)^7F@fzZQlbnq+^;bo=r zqigkZOyX2_D?M5}d*%9*Zx@m@m{OE>Z3dbk(1-Dqt}&osnss@dJ=IuYRwkxT#ruW5 z99nRw0mTi@f||+2sF>X;igKy>;ns>ld<-9Y9>a%=WFiEXQsjF0!tUN_Q_h<|61?yUFWwQVcZV`;fVifG=Lfy2k50rc55R&Os#6g_YFr+ zGcQ8dxInkizS$kzZ1i+=TzYY+tM2p#-tcrcPg?F0x~PnyP%-pEF2g~$Cwc9p*LXKW9>Q)1#;I@zy_j-X9cFLqz#*C!Yp-PBD}r-`n2>)Q+f`cl(b~ z&==(8OqRv%>V7TXK|4HqJW!()=CzuGrB?ez$77fG=a`Ude%8A?>5-YO!ILvSm&|Op zn~pRXLq}hrN)`HDC@i+s-E(dvWUOeg%i94k$(s%^7~%j&JzQLM?(m0_3nbhWCR|mRe36#e!SEU3_Q^z;Ty|}1t$G=mdiU(v$?7x(D`7_?4&%$ZKqUr zC5xRBc@)LIs-{!G^oWqRne7o%@p=Kd$$DrNSkeVrS2 zwo^APaxZqQuuo>t14*nwnMLM*&IVHFp}Yw%!wPuJkW04SEC)&9URGNViQQ8Gwj= zrXhy!18#J+onUyqtQ-C9Dv<8_s{MQiD5sx8wr+ND&H|J26ylg?1hphxd6UEMx_=hz zu8-1=Zpr*+&wWqua4wgMp^@Neo;JD;xFfS|QA)((#ow`Vd5w>?*AD-g3rt+E3v{ep zNqZTNmn_a}1XnGs@$v8yYnQ@HFMh#Qc=OMfwExTHwIfP5OnQcxp&fDkKJm3(~b;j8+#XYlYGqHy{!^}59lSX4lDY8(z(Hx4TYfE;%GJNrT4GO=ES ziu20(69~WNKn-x*3h$00 z1|e(0-O9M_mQ@)BCA?%{EO?>afSpuroBwTpBoBw_K2VKh-bcX!5M_H1*`2WF6(umG zn~*RbF)}mA?<#&$8zMS%cYQ;Zl>6m`z6@>zuhdC+w;!|p7t_*=l~ehu_B z@2Wd{_EssBjVv<16utb+E|fAc)toC+du^a6M zTsmcI;5zEo45ARpY3PKizHp?Yijf}t+pdAEr$i}`xfkhuU6XJzZYLech6<5g#E9sP zISpTQq&5{v?AUDHN+lSrJXmC5rrV6@h5Le8`6=fx7fG)I0~8c2!D18I%iZu0&vn&9 zwrqrPYWn)dql%a>%S?On8p-p+=4FX5_qW ze3T7B^Zj{bwvD{PKY&vZ<;$wbKAq5OjM7CZ-IfQ9c)r8b^k`$|>8`cI3Al?yu-A_~O9? z%ZeEFGWnCnnZE~hpZFD=GJnVhmB&D5l~!2NM>E9@bE7ceDlyt<08jW-D30JbfRag8 zi)vG^{3}r36(CxP@$HjrQ3J3Smb2vIpso6N)HqN;YMrMB58q4zkiu`}S&EN0e_Bg!h(;k~Q z{c*y>oIgPMG7a*IkH1VnabT(fkdBuBB5dXx^)I9=pBw4ozw+5Xhv@GgqR__-Yf!(| zrMG`aD&W~yvVloeHVfaG9*6;NK{Mrid)llTx6VeD=~hF%0E)_$b^3u5&px8-9W&-wQjTKDId z4%$_(Eyg1&<0AaHq3AV4)I9)NJAjxFG#h6Cf{Kq8H}B(?vKd~C0O?6<2!{w;2P#%h zg5m7X34R_ao2UI_u+l~hK+OEeMAwe9_zeJo*Jg=JNzE@L8{i~UVS)(gctO0p4tUr+ zoi4k8_<$@%h{$5BC6N|mnx?{p)z1n;;sj9b>Otk&%;3YV%pXh$S!D3eoR-IqWxxs? z00?#mD#c}lO9MR0*WA)}D&{Yc3>CEX)6lJ>7+5nVFm3VyQJ9HE6la&gay`xBlw|#R zh4D17;R?}$1OQnM5tIz@z&>bla~&MmU#@)gF$7bhLx|48bVFJJDC?pf=~#o%X5S@R zpJKOgpD`5NzO?WF33}QODt2jC3acI$Q4o4Pq^OfI>9a4Py;2Jh$4{2-4Dq1*wweIp zo@0gJ_sCUL>9DtSM5*@#VHxwWkvIkx4gJXLOt`8Cb#4!*`w(#Xnc;Ig3AZ{Is9?)z z3Hw|TKrE)fFdbNH1;CnO*Nsd3A!}=)TpcDt*oC86PW!-ie#*Rp`m+ck|HbFktM6Js z^1sBZ1cg@oEH(>g;8KdnNf*KUrx#9f8})n@>=Yf4jqGCRCvWK^RS)7`jN_S#<=Aj1 z{q_r$L5vwMm&Uy8d~q4v7YF1f!37iHWX^#MtE|%yf0+E=&RO$`S?JW zN=nHPtnwhDpqMASQ^`%{Sfgy6Ltfm4F^bS$@>^#(;4ADMNp5+b^gm*|Kb8bj4~YkOOV_6%9%Q@ljk_{Bdtj zGB_8j?`bY_=4dNv57hKaJ-}eN4wCk=x%=uL09F}stQ9kPEzoKbj-m>C=%44h7*)s7 zro5k_2XignnAF^b7;vtl;xph;!4 z=|8*r^=Qy%_wKzi?GR)~>ZBbj(yIb;=rh(WOX?EdtYJe?1fRoDBVtZNzLobKQKEEu0+T7pN_opP9BW-^cN0l%VQP} z;vm;O<+ti-Y>j_Ajj|DiWl$DVqg^H+X`XJG*_oXKuWczjHj=z&4n%rL@FWq`&#AWt zlHh@}St;psx0tcEzT9&9yV4EaSl7S@Z_mZgCfF=GY9ks7f)x&wY+ZgCyA@cT_mvOm ze+jr6tJd5V$`;ro&AbGW+tk^9Zq*fd^E{mFb#xic`RN{*y1mN(YyimCl>auq0`Sv& z%X`59QqnJcd^ruy5G_)&2Y`$>A|5ySNjODY3)P^L_44#=B~-fep9a;2F^5Bo#J8aq zGT=fItTe$KX+yp>P)V9NjG!k#3@Y1ca`o<7G0h7Q2vPfC zjm!gzzdOjj%N(-jR2|+z$GD0Jf@zV>HF!XdWPUg7*}mf(23t9bCmLII(6#B1t`H0ruzVO1QX=`T3kkzj~g!M3$;SIAri1e!d+VB z7XWfG<6_?1>p)e%rz2jl7H7bGX>V(**F8v=m}hm?yQQjI#L6tR27MdwR%#Z95$P$^ z4$2kowV3>E9&39-Grq8jq;go3DaAp!3z#ZrcxfsMtf1IHS$K-G7kMN!+#sPk#6q~6 zYHvu4pk7`7`P>Ja7=lxEo5tE(4J3C@v@qA|>79RrU!mskN1?<>@`2FGs19?PL}W1! z%C2K`9QT%%Ufh*bomuZbkLC2^g(Y;Rd(Y!mmo?eUi5IE_F zPKePJ+Hc-L-ItU!qNk^F9GXKZ8d^W3d;vts6|am46QS@WnpZyy1>B-_n`Q2A<|A(@szdC3 z&ke|1ieMMMCKmtblh6s@pKjd|8iM#17Swthtp_uwD(}{*FGEQqRdV`u+3@$_0lD;O z%ws-(bTv2LoqFP(grHgP53MC|s3@D;5$Nx>+WpR<1r}_?$YFcfyPx~I84CGM&~7C= z4vRKIJm=Ssij$s9{QzzhW?#+lmzsT_$)o2~lN}i9YkifKhhsC=rU8gVO)X%-h88`Z z*LQxt?fki@2?khrcabB}KJ)!Y_l?cdC;_z28$CalyGh8@wKq8LOMGp(ivhDA((Im< zu&dozyJEgQ_UGER>`TN>BnVoQOiwO6OapAbBIx6p0*y-FcX+E1a8}~Iq{?5I42}mu z(r3}WX+gd}wVQn9<2|pCh0Qjfo52QEIA%UhzK7%K?A2#aq3HR%*AP7ma(j2)FDJ4^rVi`TmZHggB%7 z+jJwZD)5@St)(8U_(gUtf0J^}ziaX*1{lsW$vTh*5S8YFenb*v9*9{$T>1u2J{9x;SFtrZyiGQ%QgXM&Or&RR93YEZba2LX=x18tvoa)IllUMc+8z`)je^X`r9ah09^?jXlfTwc9k#IPM%{ z)uD4#hop*$QPW*v9Ctdit(kY~uw76{=cGP_md09BVD|H|(50^m)iQBLaph_4p%ISI zkRPDcEgweVn|GW)_AOHmHV$*)37~_c8$v2WS}tLdanj&6)FFUs%J*+)Hq4*9gitlhHs3xX?J%*~yO4&7Ilk!ho!9gGlqUtMDJ* zvKGj6*ZXEaWkvVchjfph$)baz{GibF{KTu{d(80lgqzHce#rJ;tnL)wvE?qN&oJvF z#ODvtJ~a+M3%aHt4lv@|TWmhg!u=v1o~a+N{(Q`#fpi_x+EXY~?SGh_5}~9b8dn8m z&8BVYp>rHxKUbm1P{p9B5*07DR?I(?Fi)=MMi$3!C9Xx%pO)>5TqY%wuQo8vL<`OS z`V7l1w|7DLH&188;A_HrJ1FMrbh-c2BNyF-7*io0R^Bp>SLN8Y&0WYkPqVH;WG z=*cdR+wJLlvEcD|0+%lHeR{s(tsOeyE@Jv~RK*B2(-!mj_r-4}Jj2iav{~#wq<2Zq z%QR!U1Sq^IhuRb56{LUOl*L!CLY^~lG#R6tA=6?r>ZIwy1a^@%uw%}OCJt#Ct%;*q zU$(?jWB1wW%3hI~1i)yl*5>Cg-GiZMpNz?lH0qT9=2w&Z???2r`wV@fc^l?;33~!M>U`*_Lc>&DSBiT%1m>Be zm94nlKJYoa-gd_a(K!_-087k=f1jW<{VD;U#Er`7U=DT1?wsc?H-GmST@mwk!Om`q zA9k(K=?UYbtFqc?JO!W6nf&D^fKEKRP`0o|)Dnxr1LdYdP3PxFD-*J0mwBrX{7z_!Tq^yG;N<;M3X6l6R}IvpIyx{+-_a?>kF{E2(oL0*z2=+8i!>&lRJn+l$&d3p8?+K z6X{TJA{VhXCkzhum2fMbu4dc2S&8>DR6zFEM>dDnVozYhgiwB?;#Ap}-H5V;yzp!E z8v1gcbG$m28h5d#jFH=ZQe&?d=bD8~yIblS5=?cE28#M8RfAECMBrZQ=D3?qRm+(o z!uV&OAvrEHHkr&kMhsB4-ScsFp?Bw#B6$EqPa~bo^VC~dSvXJO%*tI4Wt81v^>IZ^=h28g_&hWY2OD4b||5ofGZ=ELRix z&C_ACV-}obIVp-d-?{Y6Vhb*;luCKI+rM^}dO1fsE~<|G>s)M_zx@27978k$!_ldh zKmN52sD+DDK6$~R%<061Ga7arng=bGI+Z)`53L*>HY}4j5G%J}5sZqh9$&VxaX2Q@hR&P+bqVo3 ztk;S1AwFrH&wkd4qoK=US!?xRB-US@C`#d9(0n}{^Z6Z;uWol-StgFzgtPn0Fy-in z4mReOY6`zCbortQ))pB&MS4qiv`*}}2m9r!a5@qn#97N_x}S%b7#w|TS6NohmU{(4EeYa#6Flybz$&+0`RdtMhz!4L@oU;Cl!Q6J#{1j4)lP}{y0wL`%%I&&N$1C!<|>MQrO>D|AT?01-><1MQC?;tCxi|KZS2#QS)K> z>X}l;PCuNnG7~3d_OtUx#yfaKfkwQkonFM|c)ZMkuPJVgU||?+-kn8N$7+`l9+EJ2 zGihNjkP0QjuaC5obl6Y7dNy_%g1L3 z4Y}hs1aXq3GWRicCuNHQOMhAs)_xDl^vKw+;q&=)OS&B524Cf>ttI{P;&0YpvV^MV z%yR6E?ZeXrmt~7TZ){ZOwDL9 zlLxTGh2dFz!0SP|W^9fztSa259bj5)chkF( z$C1=rjDRH|I2l)4Y%!7QTY}EMHBC-svCc`_GFnI?(3KmsL`Z4E(<=#4Gg9L7QZ*11(sKNauvo5kN#6Cv9Ka!cHT!t65cnDxXB zC=XZGw#LcqA zaeNct55}&?H)8Ajwb~C>AzOpm=cMJ6Njy%jdx#o_BOZy*aytYC<>~2`Iy!ZIz&EgW zNwz(GVX{M$g*&S57 z-GtyyYY%W)U&iStTGR3GvvYe3fJC5S^_zDdz`;ha>L5xA2psoZ^ViM@6Q`0hWF(R9 zughJkPV~Cjx;KH308EvfY+And9`D$~Yj3xD+$Ldt_7xwo)0RmeN}gM_J6|SWG9AZAxjU&P>AfH-=!`5o6MW?@LYxA6<9i3@$c-Ds)?GiylZrz}QR|}#lFp0U&)Iz% z_r;u}emI%V{`F*VtT9WOMW|zizKMpf6-Z|ui(@) z(_f0G-7wG6=9L*vKz(VrQg)sjYkB?S?8X+xZe{vY_wnU0c8F+85pC&k|Y3$sL4?`xAmCv~GhbX2}8lA@GD9~*p(DEI1AEr{FS#9dO z=IF{Rcr+D|j~hdG=0cJB0rY2Lum>dfyOQqQQz&jIvk4B+`-MIbVk92XN_Tn=zD5gE z0QP$-=jenHocGM(EXRvXyz`La@|#w$!B)mLg)IzuZc>4(@HFRiY9oYnPo-3|-{E_cAH3A5XY zxpN5CL(@@xr1b`%rGhvBdmR9%r$FR_CdM_Ip7k79J#*_007kei_`wqZo?Z4ZXM;KL z%qkf|UumFtAr{UvCs_hG&P3lhRdO<#z%B+mcd(RbBaK`#h2fm3?TIRaR z{W9dk|6DdBpKf_$A8;7CU*#oJ{GbCb zP3=h;&*wg)-Yvk5k?yg)IVl7HmIW{~ZB?eBdT0s+5X!J5A&b-gPzU=zri1H=r0OH} zCG&(m7W;)*ybmZow))}uN{77uLQ{vu~@pY$hv>lgjnR(6j zh3t?_8-Y{+HV>S_a>*D=<>J(A;N!|FbmLFk023olY|ru;c*Nm%j!0q+u`xtIZoOJ) zFkL9yySD5P)y`N`TX_$y0_w5}x(;%8Z?$_osj^QKK_aAhrz*Kt6F{E$sk3KZ@##bF zS+k9rvqol%=rZTp4Ag#DR#K~~c#4iQXlHVs`e@FfbmmKx{zah=-h!2W!h_6pE*DAJ z6sQ%sae70f6Hql+040A%m0xJ(2^guH)OxI%eGA^E+N2Df%ENkmTs?kJ^yPT_b$RV< z{r3)~17m6;36j>@Rb2Q!KYs`Yzq>%&>Id}I0I&hNsrH^6+D8dQ`>5B(3bl>vpCfS) znN(zY-3HQjx54GVn7uxKIxz60q@)8B&`EhMpikoDx@Fup0fj6Vr!C*8oQb-I!hyHI zE+hQTO2RfPAh{@=*2QJo6qy3v>4J48#+_Nw9X5=$I3PLy-aSwodgqR9b#CidaoJNl z-SjHlrefKdnClu1mEyre6U{fgl}#*E$3;+AN%Ey&^>b3Ltvv&ooOI*a+&P*~5*>@J z<}QPCIs?ZC z3h%JKa{p|x)6n3+hxXyfS9@k6>P2Js&iP_Mi=Q@a82PDloiG~PH(pVVx zemlcSRf0AO_-Dl1J3oBC{03{asrPue%*D-O;%Vp=NKz zFI;PZVqobE%{*K|cbR2q4|k@I1hR#$F1_LtA|KLg*dD#AHq<@ql9WzeErn!F@hD=S zSl;4_!tX<@_I5Uz14>jyYIj;N#53ncxE5Su&7{1SUVqY678QlWm~ zAUZQ*^Ze8E<02fh^iq2H2a@M>qy;E^n!;Xp@hdz15=}=9M&Q9OvJPDO`Z*Ty(JtG( z$*m=At_7LeE>l8;rO}23DipOS(gh(FS$%*sol&G)Qj*q-n`zQxJO8HDDui#?)(1f* zmv;&rW(w4l3aC_TClfg#lJNAsDlZ)!S#4-R&+2*<*4fn+)f5Iu{1Y7}&tItANc_Xa z^wA&YKgCAQB_*g?BbwkO7QJB;C*=->1KvBc#>Jw@tZnL8@ARmWe3!k1yJ==y1sCYa zIals4P7PHL-7J}(qCA%Aa0!=^UgX5%5EO`eMY+Yu6Tt9$(caGpTc41YA_fmf7&B4y zyJzQ*;b8;I*%p6T?E7~F7Ls-k39g;?lalL-KgyhBhkm; ze7^*27f0jIbd>CRVEpaUE~w(?lqPnj+CnJnn1Kqt{M?u%%!-I~gbJB=Z4Gd&k&;SO z3jx;4j!J^M%q@;9DFQKXU;{Fa2M;S+BG!W76`de+rL##hbyP=i-0OlL?^4kdh0DVL zP`k;v3P0jc;iGV~s&Q2iQlQpnniRdAzN?mnUW6k}$4B5LQ1&ueGezLHBD4^T-ik0S zXn4@%@gPFMQY(GsXwO~^Ci>3{)YA;#wxlbbf4w7nJs?`TVnKFXEDO?R4^43h1ld?T;PI{NH?KLsv&*1|<4A#!*N9@K5_cbTQUJ^=i){fl8 zCatC-IYK9(puFUcVd$66U4&NP;~M-;^PaVrhqr(Gj#U2`s^sMJ?;U7(^v3cz*xx1% zK+V*vOQ!9Wb~SlZAhea5FET&&k!Ld=35+Xy#TkfE8M{hBa87|Yn4PT4W##=N-68=S6=YT{wp7 z5vAw6_mJhTH8%aQE2@WwJAD__yPAr=aeX};yf<6A8~bg@&krxrg+ASSb!||Iq2kU) z+;hCgVPc_=D4QvKEVHFs6v4NO9r{nT+S$FyJv~$Qc1^tJppr#t#FyoxDVqbO&`*?F znM>>sv~9W;MP}Erw)O2=AVQ0_O&yjB7Em7cPQCo~!`Gi16Qo*;nClOiG>cNEA`SWh zsduQadwublKV$5~tCwv)eiXr=J|n9Fpx9EZNM_}&2B zrq)fHcC%=xC>p?qLgrZDHtbQsN8W{sZ$99=Ozld!tjA%M_!b#95XI zMD2CQ{Q&?j1Md{X7k0@x{iOL9su_GRCtssxJkx#+h;ofe=lR}HXvG5tMsM%|(} zwIAlpMRk+oLxdlR3?tNn6|hC=M=*(ndPH?GgZXj{Nf3M(DnoEuZsscgSWNuq$Uyop zrzHR`f1nGU_zY2VudM@3;q`jbWhHX`_RaVitdA~N%t-P*E=85jFq+|diLRo!To*hZ z44{5c0FVnc-T?i^7DF?QEcWYzXa$sixhu(pT|c2HKV}kLy*BNHl=`tCoT{kS1TdLp zG+i;(ZODvw@7`Cy8@8V@0_w~FQB|8alhe+)Yyev;uZI`d?kLBw5vT<8k45D5;y>2` z|7UFL(GJNUNI%$>=@b405vly!;Vm0cs?V_hw!=B6I_fpvghRN3mvuOkY|Op{DR`bi z+c6z7{}_122d!k)Zj#$_9m@FPZXCkQyQwvaN>u7Jr{l<&W|BOBC2{c8+11xZSuwB4 zEm*XnpBLo`3zJXKsZ!mV7w|c|iCr>5tDg(LpD4#YNS^v*Uzd9B57&v{GmrvdH3(AJ)GU|b_Rj}fxdr)CTEk&3Eudo76VH63C)XjmL>EzE8-v+|L?4GqD zpr1{sUCk6oQUJTufkjgJgI~DE+`bL=Dw`SNF{$Z%l~xU5#ZZIbZNFzZzMs2Ty~fkG zRSMWWp{oOcesM+Jh2?q*9AHZn#zR)s7%rX3pU;h`RqJ~QY6)kV%MfkdCCmi_A&@Xf zf>z{>ZufCe4HkcpP)L7zobhF2bF_}qqi-wV8qoW~I%#sS3JvYY%jO;eh};9|@<4fp z_ae>v2%c4g4*$vEg49W^mWbZtgo(pTD5KD*ecD;VEtjtMAGp4paK7SJ?KJ7VVCx;y zMq+rTU$#B2-sNNCthayxFC(%_CJZ&W5V@zkRhC-anse{D0kP~N|K-U_!|sD9F498o zOf_{?wOhITG*vK6$Gf{O-0D4WSn@!lG;_tU|7thUe@-{CI`{MaMK1FWQT2?{1jLJ$ zD5DZmbT(#%Dx&oCRCC)~&w&a?4)Z0qsUFgr{`eklMgg7qHN3U3Kid@LKCP476Nm&l z{iJZCI+p}S%<(9nFMhXQ{W#VE<>I7A6IIzsA81~_Km{vIuAbNzvX#Gm*3fg#;Z6zW zOjnu%c5b(?HN~5jFMeik-sss&kIwU&1j*2OZ_V9t2?(YG!wOV0-n^%i-|FQ}V%R=l zR13!KQ~O%yx^kfvv!~9yq$MbA=@O|<-;ukuhCF-&+?_p4cHY#A-iL4vAfmty zD`wXmqI)%lnyYxOjRaanWx$>J)ehW+5Vd^-U>6n&$pb8fxbcWn_?j4}9`wH@iT|*5 z(_zA-J}Zpj<}@BT$Qk%)OL{I<;ia(!gXZux-7>Mt83N5S(WC4#6Do0$B~*KlBdN;x z^^GR9kTrpxU560^VVPH#rp)*uF$=yRvH%ke7U8|0BT;VUjJ1Quhn6Yf2Gs6 zn;tbXvAH0oS=f`QM0qqjjBmpJwCKkqV-jt5r-^pDVr(=`6s7HZom`)_cj7cy`wt5|)F|(}L zRh%hw>A1tS=e>CqFvO?k+7kHZ5l^O2=G_{k(3nb#M6RZj?Y@0B=f+6{KqrjEy~Z9d zBK(2T-g**Qs?SQTfEHo70B%OjMxte2X+#SajC`7X7ecfQj56fd-y|0s9Pj}eDHKB= z0S>dzCayZ0fo^pr6=#TXGPowlY5q*qtpFTamfm}EV!j&%X)z3od8hn zo1Q~KJFwGI{;~eBu+I0>OOO;EYsrWW9>;6Edcm9#`D(vVZ8_I_;&-~tr zprP}KskV&hJ*5u_Jpq5c^=Mh1_XE`CE}l*EgeAb8YcYB4E|_+#ZW4Is&IZtX5kK|g zPras0&`XJiIzF|nQwk;EN%>@5MJ~u7eT#V}PvF@^FQ$39Mc@?f@rmL9|DHa;ylsMW z7TEuQNl%%p;8ejJrtq;ESFxX;lM8ome$byDeF3+e zCRfVnK857(C3pRbL&suSsonzB7*JtU`5uX*b)s?SfeAK(qWLZMTF>;Uj4VPPe;q>->a=k)BYAAbR~KqJG? zewFdC3o#D00yaYA-WZEgftb%KWlKus#xn~>b9cS`_UpTJU0KpNAGY5XF>PYuITcHH zi|Ph>-317R=Uxvr&fL9VqI`y4s_pS08>b^A={SQ=T3IQCq~{Mz!2rz_h)pCQHg(ZJ z4fd$QftYOqlK~A2&R{mmleTIF(y~mSEUIPJY(B7@9x5tS_B=f+#@}V7knJ;hqxw!C z+WE?DppH1(abf@Temm$0Xyj+L=8!+g=>O?Z?=nRB%uZ%;5C0Ow`DG_w*wo z*72h0F70L5Yc8#(@Ehsee;v`<;Qr6Q{@V`}rr<PKL z%lh^|(9!vrb~`RHM!x$y8y_w@0}mc5^8<@T`~Q+6{H4VB%VY4LANuAr4C5e>Vt;4h z`%8gwTT&)Z(yf08ME-X9zmE#?15Z(Cw4krO=ig6i@pBe(wKxQFyp* zAF=n}|2`IQ(e2vsfchL;cA4bWx=#{PL@7jU??^r;42q(C0-}IX`e>}j+!=S`4FOiy7`Tg8~ zJ`v=nUqSa!kxV$o^ZQsG6oa~S*1KDo5r3TfKOLS0)!fp)*mr+Cz>F%G9OR+;qTRor z`#)XOo4at^zjzA&FtYUL;DX8Vi6?gKcisNRRU{#HmOC!R)G7TozWxTtgvvFIasT6Q z>a^eqQ?gB1|Nlo;ff=#m9SObA@!P34(}RYnO#W<3-e0yG|7lGB@x6n^$osXp`0`IP zYUkasw{N>)^uMeG-{A@C`>}T@{4ues;oK`?AHV+(6RlklZX0#`W?%5{b7&X~llZEa ziR}L{9C3)1>N6HC$v-}C6_%ozWU&js3#~TB?AO%__lxwKHr-eFSWSx)?r7NL@qqK+ z?RJpHH*KtF$JyKYBEPk^dP1Mjf4<=Qzj}rL)gb5hFAfS0QgZ literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/LSL.png b/docs/modules/path_planning/reeds_shepp_path/LSL.png new file mode 100644 index 0000000000000000000000000000000000000000..6785ad3f8cd182b34c8639a93756b4f723b7d263 GIT binary patch literal 239825 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

    HZ%^o8@O?Fi7i)(6+xT`u>W7g(V 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR.png b/docs/modules/path_planning/reeds_shepp_path/LSR.png new file mode 100644 index 0000000000000000000000000000000000000000..8acc0de69fbc973373de069d337275436c7a30cf GIT binary patch literal 257435 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 b&v*5+srlt;ef}W~@J~nEP^;psL&SdpSa?j) literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR90_L.png b/docs/modules/path_planning/reeds_shepp_path/LSR90_L.png new file mode 100644 index 0000000000000000000000000000000000000000..58d381010d6c238c888955358135091b854a1b7d GIT binary patch literal 339492 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

    @Q6f3gUaYZcM}|DLu7UKk3YXV9yJohIcF?>9 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

    Wvq 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%0ATG& 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

    Yl3EeZ$)B2qFWI*-()M2 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 O$=+7HRd~ZF;Qs+KXZODV literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png b/docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png new file mode 100644 index 0000000000000000000000000000000000000000..f2b38329da384dc354626ca26d0359b9bc64357f GIT binary patch literal 335979 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%0Ankp84zpbr} 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≥|Na_a{GOkbY!&F<0h%O#P-5XS7mC=Q)r!>& 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%0Aq2V#O6W@p;G&7~?R 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL.png b/docs/modules/path_planning/reeds_shepp_path/L_RL.png new file mode 100644 index 0000000000000000000000000000000000000000..ad58b8ffea2433525e814fe8bee58e985829f285 GIT binary patch literal 277432 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

    Vpq5!XR+c>&PR&A3 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL_R.png b/docs/modules/path_planning/reeds_shepp_path/L_RL_R.png new file mode 100644 index 0000000000000000000000000000000000000000..db4aaf6af3dc475a847fb00d1ab1cd67c1818cef GIT binary patch literal 323010 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

    0KPy4;#vL$j1(Lf^L z=2hO5>oomMFLp{;DcaNb=+U2;Zj@0&Hx`mQ$I(gWn}5(zbBcnj8sNa3C$tq=u!avIo;1;EzIUyJrey0xvevS$ zGxJAYUS!mVag!J0p~nvJ%Nm4>ji3zWa1}6COwt!ccuwQ8eUQ;`{~Ox`sJa4{!0yuJ z)lX$mRwj!e7T{OrYB+M}Zl_iDX~@Cd;%I>xs+#81H`r(VSSsMaFC9Q}cVlDA983ta z5kdz5gZqDJZC+u^YJQ-?FJk`jS;_pe8|xxYY~R(9zLlRPWmL;6iy0r1KogZ|^%gcl zk4_bKCz<*@c4B=XJ09(i!x-?Y_E{k4GhoVGacq9!6qfGk$3eUYFh1A$qRm)$_wv#T z*4@@61pza~?ysZo^%+E)@fOU>sA&4R-E_0FJBjC9DpUhXx#Iy>X==2?K^f4;?4Y;M zIg60~4x;e)qTGZ_E>e_^di2dU3ds4TQI;2K8J`0+r_l90Z1fwtWHLPY?8>)yV62i$ zFfixefMok5w*69Hx;vJOgfUND4&pdIjN%~A)Er1&^(Y3f38G7%P7yk6Si%^TA(9*1 zTQ3UB9i=se%h|F1ujS+nDjatHFOG;4ItL7nqvkju#wi*fbcYfkJ!-~u&&a1|#0h}d-uh09Zpp#?(yO-O(bb`CK5Y6Wqni@l;LHmWg9I}rn*ctQ6YbHGwIa3iwmlMSu1S14Ep1W_D$aI&eL2Q4L1bV?5cmpLp zLXQn|$1#v%Q!XKr)R%qGrSh$g{nA$$mhNr(F?W}qT{~>!APik)$$`L~GANo)J##K) zv|~*YJ!F_%9W(+T)|JQtVJ?D+h|*al4oqgHqzAEMh?HxGzO1LO8inlnP-D6RR?)p* zRRgC`NQ`!-3RNq7m^%tq)q90GM!$?a9`U)AUYH~nbXa+IwDEoWabh_PuBBorvQk5Q zjX4)BaYLk<{;8NGL166~Btzxp+y90UcqF`YBQ_=pMcOM0?%H2kdc{Kz72e465RrM* z=YrZ#7ScPn;-nR5G858eszQ2&2J&E?BMml>Lz>0|*WW|FBep|bn1N~R#a8=q*h8vb zSpz3eqDbtDJacvSZ3!$kO$jK&Ak%E1WF)#L*xX$&%x$wE_Vula9XW=B?&u(gL5T}o zkeF?2&1PxPxOf+=K6Dfqh=cM1$S$R|zaL*W{h3KRJ3t%RhW^l{foJ}?JqcS}$?5AR zMcnTrF06z{A`B-_&CYvZr5uK@ciITZ3W}9B;L)g+Jv$2plP?(p?Y}qVPdm>Z{PqEs zz5>EolmB5C-LBy$;ZC)7T(c&-%>`u)${imKeUc2KdhOlp;Exq7V_J7UPIsXjjm*yg^6={v5hUpDGel^t~IZ|L1TVFc1sqIh%{+4>~gqfM5uR^gN z_v?=**IBH-4%)JAuo52Bt3#ftli%gKf+zU%5ezx*)4fN+6;88)=_^7$I{V;v6|C`C z58%CMtYshbPl9FN?}2;aLO}%3hSX!>ExT?k5)A@0;bI@Th~3j^PKtA(kojpyoh|b< zHWFQkWVb@}-hr90=Rc|u>1&NS8nHotaz^3zHxJseV{td$rjJ~x4G&6$_2el+Rh=C# z4!*fCtV}13}@8CtNDtB<+jopC408!S()Gp&Y{tpH7@-&==SQoSRX2rvk}KQrL)3u!h}D+q+O>n9 zCb>{NtjF<;XgJ@=U=Bu1uJ`Rg z{LiYZuNizkUgp6@lJw7icI{)GYztYuoTgIhjOpTlIfqOh0AcE#%4N7-Zun;izL#`| zg)cFlm`|8>@43nbIdpYs^cIvdRwyR5_BCxMD_iS(bN|%crf1YHLMNStG_5VLF79__ z_j#1z8_#{~T(>|$DsBv8tt?{QEg`ad64(-X!LFt7jyei&9Jm)h z+OYbxkyJeSSI*;G77fTQ=b!$Trd))N3yVMj2k8%khlV^fef#bl*f%U-vh{y7pSqkW z@r8nksq2o%J094d_>=Uhd_5};BRa@z+O&y2H(<$ZHlt>|u#mE8)m$9JjrP7F@3uptlLzc1moTmHe)BBP1;d=+1c$K_PZ@{r1LhZ;_N|L5!x?A|cJf@ble z^Fkp%y+i_p25a*-k`2Mk{=MHb zJf!AdStOsN>-`oM0F8iD_#Vi6xYu7^%KC<$x0q-u8nt;v&rsqlD1wponpoAi?5CPLb!?;*L>T38-ndC*v}3O) zxSEX!yBh4t6kC+8-%pn9V)@6y^)aZ~^;{#z)N!H)Ehk&wk{6pDJ9ez#ard!MzSkIB z+z7~Ah{;aSYQ(9ahl}QU&Y$!7QZe(cRmIIgpjj61B3er~%&^wkafQ!HG=gysj>Fva z2hv<$vOYjlcp4;?D@L{t*@gTAY$u;Na8>vPux$gLm3k3m_g(^>+0GwY(VhPxtPDNT|pPu_uxr&T*PJ;?Y< z3YjB8L(_{}Jo(!l!t)JdIpwt5tU$UDx-k(2K7G%sYpVzH?sI>U1nh1v7~E)LC@ zH0cV{57ToQbeA}CNO29hhku-4aCmW%l+u{{aqyT@$i(To;g3l3sq5YVX1779`|=kA zK1t(mza~D9RNrieHveUAJgJXssY5&?@GZ1+?ZG(h9!{Vq>L_(VB7MI-9-%9~y}w!P zmxU z(iU|Kz)hZ!n{ME^OwR9VA|=F({-fAqFUINp2a4PV^zvnhx28}$7#8(?e&6|5YeSbt zXv8b7Dm*$>{PijI+U^mQ9ja`7Lw2Km`9(W~AtF#wjG9K;))nxFvmzJS^%sW_#_ZRIl6Bi}?L`nxd*xV0-{$a%9|^Ljof5bv<^_nf%=RZVMd*PXtOzl$@(oci97 zeKU=c$&o?34`>QZRjHFlcJLa`?|8vM7L$~uR7pMp77^4O;vqw3;U2$7$6yMjMu1ZF zS!N2oqDkNz z>_>Z(w~eL7B<;8ZvMO!F%6Yg~|3Ik7`Z!2l8;A6--c+U-gc`iLaEat*#OJ!%7sEua z@1~$`wM}&&ZSvk5^KoY%^mh4xA>aOL$MAMbk>XNt>wZmuAlwYZa$tTAZW*an|Nf8D z9!v~R8*#Hr9`bFu=UjjL>7oA)H4d@;DA~nKP2)%dQ6s1*PlxEi)grp$0I* z#-NuMo|@ZWJqe>~ZN&@{p%wm`O{_mO_c0e0s!+lJC8`Iq4sOFwkQyyAioa=mn`u%W z%#p&E&3BM~ck{h&C1?1m9^hL5Z9C0`z0GaZW)!Wo#w=e=Yv2!=P#W01G?AcN7y}r! zsJJ$$();@t3rIor!M9{}$yAD;{%-%5jzv{Dio2W#xS)$|6$x3Z_K|U~Fd6K41jR3q zG3ZaL)sGP+psn<|8NcM2p;%y_&%8umW7XE7K#CRn$y>Lo_4g3c0ay zLUPDDrc$zGb9J(Yf1WTny|+Pg%=s2&3u)b7xO5f#@M~Ory}1^I3%>9U&)YBnuj&xy zgYIL+1|X|TE#s0XSM7jpVKzp9H_s+XxfA19dZVoJidwkd{M3(yu*(hWVG5ICmx&O1 z-L`#K-trDcl@UgiB8EOjcH8j3`yCGrwo*A2l4w6o>YiQHKfm|}q+WxGWl-N*qe>Ic zvTB&+s?5EiFX?vm$9H?%8%A>wNxL#u@VB6q)Y74BolYxLIiqX|${d#uTX?3*WDYTP zQfWXnt9Kw!N5B9Tm5TUFv0w6Y|6{iDsug=MU1U*>VT16y#dpy5XtCEm*S%~AECILU zB@VM@b9~(ai9tvJn(?)*$h7nyVdY{CE`b9Ju*$@PwvLLS)hXC-*!`1OTGV^*-ymKJ z7ApVOoqcdsn9@3Uz21n} zU?nJ^67w#j;L~C*nbi&1Y~lrJM4W*MGrJ;~ICWgXjgy7Y^d%Jnc-ne+JM%a05RjJw#e>_dofQVjh=LO>YG-3Vq4IgEt}$f@Ly2y%Fk$iORYar&|kiq1)L# z_CRWaX>XW=>~dO%-H8Q@dW=wm4{ZRtu6J~S(b+%}%!u%wha;0%aYpT`c$VZs1DZK+ zuqw1R>n_vYQ{M-*q&vKrC_47Hn&KJEqvhQ7J7aGj z`J4$h|2M|qF327w2`NIncdnnuX{v6Co zr?}r06%w+dx9k^IQn^Bd&M5Vvra?bJ_Qb3Zin z*X;!SI)MXpN&2R{boJajmP}uNk7!o16w4p&w&azjr1EM%QRthO4QO%Q%oLsEs}9)K zOuu5p*$^jFzf;1e?RJi3y`QC>U10*VV>6_K$wA4?pW zk6yskntFVnut$LP14tAJFD1xFDnON!3Fe3jV%XFT+CWkh0c57uGLF>OAIe`Oyy9SdQ`77rl_an;)j?#3fJ`X%Y@tYUa|(z~=b{!r3E6 z+h0!8*V{Q)vDv_V@ulFC^Y@2aKdv}R4I<;@SCxx+*xKhzd3ETW{KKRsGv6^gh1%c| zO$@?*NsB-12}S(-_2!|Kr?mcd-#&t`m@|bEs3Yh~&dKP$2b>|yX-F7Y&ufyS7~!qh zG^QNR9w*x2?um|Fam49S^FFt4{CbayCd{5=)dche0!}bsi&|Fq8s$cpt`D6MhX|pV zerZ2%Bp6OxT$$bSMSRWmu%EY(Eg1?Tg(tl~hJW%qbKLWoQ`zlkVOm$xhw5YYxi6Cj z8zSoDu5yMSn~G)ViMEQ_9{T9Cbv}2TlL6w_K4YN^JIl^c3R5#Q;^KVzYAL$)w)7L+ z8|aaTQMGOW#Sk#Co~7d1>b;p4*ixSxt*Uj0?>htD^z^~12_++JI z4Fo@1xAWL)l48+2u?9=1(<-}-RIG^S;JP5b=8%pfQA9=73|zT)@K~$dny8L+_F7@r zp}_A&f8n%5c6e^|wLHFJ4UD$SQ9@Rb`bx{A(?6%EQ$1V`b>oGT3nvpfk6JNpRTjC+32o^VT_R$fBL=$)5j4(PAt%fyIWpfe&)qa@6KVE4YWa;V<7cw`O;9a z*JZ^mp&W=A+9B2GZ$cIyu8$wM|KVzI`QuoQgxh6krS4*Mnx5Kj|F6t&MEjqW%hV~` zx?)Sr=KWzmeu3b1MUfW!?N`Mash^D#8-o8-)zvLuQY^0ymL^*T465vZ7xMxP#M2lE z98p&pxj$D;V)C|AX|yLsELS1*DcEaAYdLM3`d02RiSaWKxx~jaenSV8X7v_jGN4gzQ^Y3O5{(#X(0z~@Y~eh z1$V(}{&ywJ*%251S*!$0KTk1EvQ855@6v(W%g$7--FWPgmzYYK9QG4?TO)Lx-EKaz zfc`y^eGjQ@&bhZ1oG~-2SV0;h;|_F@S*YP&hNTDw`Y_ZK$@ClYoomu%7{pp*6si@o zXwjlXhHeqo$@XC(qhF8Hlwlq?v^z?ZA9uws+oxL+g$5Mgo#sFoAL$}pQ>7|RgFRmS zYCV>P1ZU1q_>wHCa?+Oi$`Cd8dUrNCS1J?UqE5_>dIw<`RU2iy{It_2}-b>JZ$s7zMp^xBTsVZkbXOQ6ts>12?zl-bsXp?jU^V<-1$ zBHjH*XzP8`uO?0xipE{YuAwNxuw~`vLC_XP-+Xr(J93b1!PugK_F5;_7fr}OPt@(w z7dAy(c(6d>?C0yCP*$O^>JQ%oh{R!_Evj#at9wWo2E~LQ{-eQz1F$(+xnce5+sCAl zHMQZ4XyQOiB-8^sGQQjBm3>%;aIXYx_7hv+T-&`7yu`K@vp$79-NmC8Rfg1Sjp{~9 zfQD5<*1&{Px%>io)#N=Jj<~$IGE8f-_6+30Ih-PB+mL2}P8cWu` zZHR76OeVzKy+yXGj%nGzXiGdMnbd7&U2k^f0M%(EO@OYiUY(f(wC|Gp_mw*4=y3m^ z(iMOYB3@hQG+Ri7jZ*lq7>w1frwskQ>Lx@ITlSeuv${$1yv4}olOJjV5-f@x_iwm= z57q|hFor9v8jy}t9a|6as-5T4)Gkwr{4|YG7!B{;mi@0KMx*+#srME3hMmG&d_e^O z|8aHRywe&v;mWSg;p%cmRMfeMd2eOizH;f!0M~1S%*HtOog(1+AbG`WU2<`Mc>ie? z#Z%3b_)d3bw?got5yZOTz+6x4c$g#o3=vL)LE+kGOSV(FV#@vo3^}i-w63XBFkPyh zgeF013OHv&Zp+%EPA$w@b~iQLFK^|k+Ia7QPrJ)lBa@)!634xmla$U`m1V@)uc3YI z4aPv9bz=hF1lQay7s|zr*9Sjn>x=7Eos5Du_lYrLrg`&M+aPw@-6I%e-AO8Hqj5gO zHbu>PrN|=ox%QX9;-?QvpqIuy-?Ihf(^|22@(q07y)Ig0y%!!I^a-+q8fVY=D0Hd$P(diY zTPydsA7g#>>-~7y$)nO9zb0=vtfdLgRA7Ii@}ItEgLHN5;8^nphKDgP0&G##OiN7{ zP{!wzdm;Hwqxp^?_w2PZW{AvC-?d%WCm($JEr-*3N;I8x-sfFy$91eUCWH{eF?`4U zwj?R=PA5Zr3wF3Sh8$h|?RstK+T*==6yF!~egz$+njI@cP6IEH-rx`6_*>$6_C1VO z8MDREEe=c~lol97hIY-WyW*apBixNSW8|o(v+UhZJ|mA)^;S@*e6oWzJGmQSkr(9| zeD(p1#OD071&)10gdBC8G^eAZ?Gs1r+X%ZPc}roqGPe(7+i2}IH&ax|7T&+FRcyy7 zIU90cMWfWvtIBCzotCPvKIXERtJip~Fe^%Ks+Y7|r<=9rkIRt^ z-LQa8hKzGDYF=yPiT%bD=Y1&(Xkxl5ZgH%|I-&~poXnF%rW0?CWlDs=D0D4ykcZ={ zhhV1C&yI`foEBe~j9j{KCTgdAWB%!w?9V!iTP*jRLrgWevNC{pB{3G(&11%SOEm4> zqyG8hhGl7I&ZZN`yrYnJIE)`|*Qq}%b8u43D|srO@r|8=owO@yDqxE0Acb-cE**(frXG-(`_N`r>8THP8t z-lU0@YUOxp7QhFTT+eaLV>9N0wXQx$OgAELKkut;!jZBD*=v7k@|=edMSM@#9)F`b zgd>hwxh~)h8Fc6*X{tZJ`6Ie`1{J6d=Ysp>Vt~58FV)T<$NU&(8itQ5PJ)v8)7TT5 z!M12Dr$4aNV0DVuF8GL%j@daw70iv(9DmR;gb!ad$Gbl@`ZvVZE-yk?$MK`~d5s`}x z$K7^oMgAv@C31Zpxp?2m;xpa9@iUfyM@1iR9=1kF zv%l!zqX}RqWTGduvu-v%3J;xFU*|)dwYffSr!fkyT>mwN9B@)s3o0YRL9!z%wKk{d zN}F^ItN0CCF^EOojbx3%+&7qnnE7~rYeH$!3+}DMyhZCwFP8vf0G-{eFsPm0ySvEt z^FG%$dObr%R8ytSHc_E_A1*UCSvlEW zVg1Uyr3yz8gk&1s);DPe=e!2#aY8HT8G_MwJQkO6K3)-u=K}5eLX0*PxrbLoNIgjV zR@5N)OI)hJXcn+LzY-#gy7?n;Z~YJP21EaN?TV}^^1k}AD?e(v(F`m};-*sNY)8zdj z;fB^dfHI1S^5cL4HI3tvysyMncT_BMG*q{D*SKhEI~6UaD#@ex__KR2tXnqu;|rp( z5e-CX2nOfwr~@#>(&4;Ro)~Lr_sP@45w#fnG?uTUzEYuawi11)h5s-POL*IC?@e?m zy#x8T44mwX-s^1m@H_{Y9&XQ(O3AqAeay2N&pikQM!KK`RVf*y=sem+a{ge1$4%Lg z@$UZoMLe>U$^}0w_qmw>N~EWH0vP$Qdd}qVRcv2}pLBXAoOm8D8iYq>K88=K%l>4z zkEIbk?#mG}#spbaQk`$&cTYx?ca?^9d$!rN@8>cw`G+b7sa^c^x)T9I2)b>g%0910 zntkqEB3;PoAiNRW0a_vFXQ6brn4ajnZjL>BO8+f#=s5|hi`u4npZv*h{Kqw%Ea0?V z*=#m5%Nedeue?E)i{gHQ5lg*rfDq|?7UJ1{=R-xU%VmDpk)A>5IN5{X@iEdh`Y=xW zT0V2)I^D^Bl;~)IEu_u=@W`9X=4rqp@vd@>Q`?|XC8oqlGViB_+}DLDcrkgny-Ni~zK1Fy_i3&`(quUC-zQ{3)5=OR|nv;91p0 zPP{qe0l;!gH8ptY0x754Dw+!nZ9OIA<~P8C#}X2Ft*yWH!PJZjdh7Pp-#GL=^qS-e zT-TyBo%@LH!FDf_{LA?%dy*GW&X7SFAF0GH9PI|ZiFH+>qM5Bv6FV6-j0@n`$@c4xL2vC|;4^e08xg>+mQQ)nw0cWlfwK$57U0qxf@Pu4^)Nw z%#al?G=?>6(wuWsqct8iSvL9)5FC9a!$gatFiRN*31mZw+0&lSaXQwbx^^3nsTKN^H=PRyo%N>9v4hc z*Y5)!P#fih%paXZMVVo)c8bz^27on9daF(=Us%fnP|%5%l?=ofFE@83I5PvLW%ZIg zXarSXcRnP*Z5s~4{9WbO=>pnMK56H64JrpOWwtIMCM(=*bgK!Nr}a|PsuNf((tQG9 zq$i0vxhCo89B9F&GaE8`d%}?Ud{D=jz@rip6X0qp6#2dY@~a=p{~)c2ly6maT>dYW zd{wnsIoFe~W}fD6*M)?K@z|uEW@N!qlqNuvHvIa&ycCH_xOTfZK0nT2uJ=B5#K*k| zSSbo@vr`;cmp;QYm>78QF=oLzWP-mYua}jkh7Gx&<#wC~8zt$9XRQIQaim64s)aTNScOfbfAz|DVqA1c0 zuE$qrSQ@*JJdk{09DODtBiG|mM`4TlC$vF-K3`S53ES5f7k`j)w^1Efx zyGu)Y$@YRrbzMVX;skp!z2AqbN) zgziXl#-cHl{dUi}y&P z3OQT;sv|@AdYlc@f@peF2o3Y7qLbmr6?ozkC|0s`O<+8Z(PqfcaCrQdJ&t$8DbK|i1{)s zGsVZyo1VXP2Fk%haXY+4PlN`{^b8d^gyND|Oe=qfGUoE8taT?PglF>C_2`wf)%7%X z#+BC~X&9s%7ML7O(q!}e$#)3(wb?>*KN?595TjZcrjBA&Lrc3^Rp>FY)^4;&&{mq$ zkn{cTt!3G1R+yp~zIRHfz=1wNvhmf!BX$%D(k;G%T=}w2fvj5L@I?S$ek^f6{xhfy z05I_)a67D%TZCIcO-&BiaHF^m-y?Q6;{AX@g-4(8e<{CZ!PQCJT|}Pp+jZdAvi{Abhq6pSsLQQdU$J>IPC21O?DF}~ zoQ%MgYLGiH+_oY}zakV(OAs2q&C>~ygW98i{H~N8yrH;9=dTNDd4NrGOAsBJlg6=y zhjCoIK&kguz&y;VE>fJY{CvbE`!g~z<15>#S!*{h_0;4@p=3(2Nn9i9N6;YTYekd2 z_Rum8|M*>R{MkX8e)X|~_~+T4H5}$~?WBQU+~9g7M2g-^mRC$1j30r<_;cS+GPngO z_G;|#lT#Q=3rlOqdRQ#DYVHR-rw(84<1%~1nUaxCgECNn998SiE|i`OoQwEsv{qI+ zno1o=xa_#;*4zzGr{*?d;3Y)~&z=lylevy2B7mI#>nrZG+5&9~vB<)>`FQ_DFZ4Y6 zVe3w43X86~7ytW&^NnUqv-OrJIp>UaloD}azUpu8B_GfYWOy)lUxOQ~Dp~T)c*wp$ z1a0PWK>|n+9&qw4f^qhvj^r89`W_}w(^Fs08SC3z`P|57ouV*krEJEYkna|#NG0!! zVJM!lsP&7E5Fkr0$t`QUfqh4(flP0bsZq9j?=@N|RSHVii~Xvj#Ec70q^PDM>1gj|;g$B5z zA#04n?|MHL)dKR(vl`FkqPV&u{!@cZe4aTMcF#970rfD_(^ysW=JRIz&P*Tbg??ooqOMl~Y)byn$k~kdKnJGB#?%(D_JtGcD;u znX$xgwnX{B3B7&2Z~<%GB$Z`U&ET;$|ESPYfU@0 z;7QY&y5(0xJW0te#6}k)j#}K$&?eu(K$`~6*k$&d>!yT2SYrMzQi`2FP&{^IR><4_ z)T&6QvuHQ7K|TrNJBpPxm;dnuS*FHp!4-541~JO6#r%K3V{CDa-Qn98?JcW8$|`gse!*;`$AEkg{*cgExhXttM{nKubTZ3h;>I)*+UbKlm*#K zoNB&j1U*%Oj;=U(5HHVgapk&biTUKE#%#0+AFbKxYuQwI^DkC*fbTQNDIlXh?P@Na z7%u`i&T*fEU%S>H`F(U59XvUsR}%PWS=a%*TI2ojpVEddHssB?PLbaOuc!MI>#-eE z5x0!`cI?~7O;Sn~INn0vZ-sJB@)oW;P*Uk9Ugbq%0xhNU#z+_n0M8+UTq#Rj1zqco zfcB12y!loUG~6f24fgGGevz1>9d{u_=I}wI57vr=RB!3ZBk} z5{8-(`X9!?Cf>jmu?;EFPi|GJ(&Kk=rX5Js=$w0#C>`EXb>A8K=Lm3ea`sn?s`$Ny z2;%X^OWF=Yz*`!zg}wO20O(soqv|oY0I65y+&>(rF#uD-jWSiQc2@iRe!wt>J;ceB zOR7ba|2maUQ|Tw09~1Vd>q{EKfN6vR%w&!FSRPa&g9w?apdsPz3>_3j$fBY|vLf*WPAoM-9? zC$MJCecC|^IcL-X60UG~7Qot7C!#@3X%P}%;CF2DE%UsfINv^4c`&+WW2E!#Ew~4@ zTVemwnb9tY;h`VdIO_+yv;F201fCG2RZ=F}qLZokzQQ45ta(vFO61HDnO9F?Bi1>-d zUvuIh8E!M6Xn9J#{K@{69gIyYZ+0)!ZM>6Ufs6C6((|u>L5McwHYnwS}Nrr~us9 zw{rFuhS5!2kW@b`xEKbukS-3n5dD__Ls1Wpu*8GQb!hK2Z6^?82>7uPB{XrkYxwI! zz~M(jtI>z*XV~IjV^Ig~EeU~hIalp>z=L9d{ulEdTiQQKF08NtrGuTkW`=5-Mtvb;|Sg5lja zE6JlWCu9_Z^!Xol&G0Oz{HAReUY#&s!&Z-7K}JEdSjkyV07kO2ae})H58Md4g)xNi zF!SrfNN$@c4kE3SgY2jthCS}DxtBYK@09KaTO}KuW${$aNGDxHemem_QU)5ciQDYM zfP>9^ZGcp`bTG#efH0vKevw8T=e|wMq17L>_^n1o0iS;jLEe-_*pK{U{i7&#k3aXR zoa{VH%P{CL$_gn*=$=;u<#oKfebwaK+=FXbeZXzYG#`WY#?{C$@>K>8N*2#xYEElG zp7)Pior!*SsL{?Se$mZ1qV)MP+Vgv47Np*;VRGPtVx{KxuB7ec{|?ok7R}dlobM0* z>fgfN5E8>`tNG8o1b9jkw!(=qkwt724%5^!aOh8hc9OW{A~RUp_wZM+I4fGx=Q$f^ zq3=B9MhpOS<71>+r7Mlro_Ic=tfI&s`dvFUQuSrW4Ksyd)7}g5CQ`pkRHxE4@gnm4 zY`12rIcEK|ycj=R%hE=!m5IGu4Z3@bSmhr?$5Z}i#NAV!N3o1x;cLGy$Uj$8w?vhu z9LkE{L$)%I49-eD&+e2F<`3y`tGkiJ4z9o7CCPgR<5Bg+GAJ_+9}2^Gw}Y|U3WbmZ zh45j>J{3EcpynS-zhXUvN~__k#hIYv>*bQjjQu)6Z{A6|xr6>PjLQen4I19o3jWD+ zxa)#PX~Veli*`sY)D{XIpG?6fq?Gvie(l-G4<)*tMyKlrreZb~D7W+}!5OGV=xJha zyb?il)TeRwBV3#*>Bpi?vxr0V17w}CVZ4h-oasHH_Zun>JMbFYgl2IIS%X{lPl7b; zOWCNRyF0)JTO;}J_f>}XGeabGR+>DmfHw=>6H~G#tTu2>QblApw3A6{0e60hHWuFz zzuueB;yzm>vI3aKYJMl+O2m6AeFEg|BJT!V_Xl7siU0d_z8_}aia?MXhW^>qax_sR zWKIe;*nN6S7H$#z0lg9~%`2u`=24XK`#uLE?sxAyqcw;845;iC44S%lDblPv!(;i-b~#bh_F z+6Atf5va3zMtTH13jmGh12-t_hTcJc z<#mMuCA6DYRtVl`&i(fp*gXV)>v!8yQxhLY8k!B?vDS5w`bAGadzLFEO^%uqOE0}0 zBd%+pr4c%Ze#R@5~{ANcK?7vRIjzOZf`%-aFH2oO2dY>+EVB32d_ z@44JLqW_5{0P>)5uoH(v`1E{l-Wk31oT2zW@g0+g8{nZ3mtNpz{BtI3C07YqEG^~s zoGlt!!Z4~O$mOzwxt4UYoKs-+p&Ic#iK{S3DELm6+X&4m87J)C^H=NhvYGvDkSnht zAAsiurK#k7XXOp`Pf21)z}lX4o`)lUpqOo6ZiBONk(khe%D%v}Aq&Y;&<CG0#g{0lydFyAF+U#5NnHY1eKD8;U5nxaRX~ei6ZmHW!(p_Lz61HJ(E; z_YnE-Zie_0Vh53Yr~_6lo+TziR}joh;PRL3vis6XY8sa<1jfX2PTp!mk=*H9B-^E~ z31}+acDj2sP~jd+#eUb4?zDsGtu!ZIKM5gujclHB`~8mnrsyF3^D(VURNUwzw3M5& zb~b6S5YrWfQJFb4o6NE%#7iK7Z@%A)C{L;I6fPtO{eML$`b*681qrcK;F6fCl+=T- zk0(3X3nsJCqj_Rsd~x6}(6yT>XGBObV#HGjuGRp?PpYZj_}$662CGxeRg0-X9JY;_ zaedoWehAh|$liMSlRwE~0#-=p6jyvcdUpk4m*CCt7LUWF@JE<1f>#S+7&;Yw<+<(Z zTlKq8l9NOesx%YnRZLDt$by|>i=O`FQus?RpL|)B!`!ss?s|^<=;sc8i?Ev8O@x%w z5J?zL1tHvzIF8L^1F+pcB}4$4*Hq9~>Df)xi$m=T9C4==BI~JKhOa; zgK5)RM5N6aroIw2%#2OXmmv#*gEmkJ-_6EGO8m!4SXW4Ep37dx5kY5uy#?-NGayuO z@sBHZ9#rF^^bT(H8fqm7%kbkPy?uQQ)JV>t4_)I(%1ub%gPPWcioQS8@TIR8XS*MaX5$GXVN`#_|= z;BIlw9&wHlMrc0rk+UY(+-<+nusWaiUWtCC$$Ep$7L;zZLqKT?AkHsb+6u7W5q!+W zEXN4c-=qE<;3b3*#~JcoR+7J6nnf1#EBVlJ*a2DsMpcnsl(20bM*|~aD`6SYGn*y& zNXjn-UTT&=P1_WnJMORBE)R=d)N z_98RTb0*zftd325GD_Mm9L-ae9LyK?WZ2dw+r>p^e*fn62?H@R0yEP41O}!Y6Tv%i zpH!Wy`^EPECBNS&X@X}OudbZ?^t#lphDa{2)cY0sQNc?y6@6H3ktuVGa1S;=p68CS z&00n%KsLI1@iMuAiRUTof zBatjh4~TW|AbN}OD3o+brKzwNdx*32Yfwow7B&Bp!Fje2+gmCMa)I1&DU->QVl^Rq zMPP6IrtgGug1TUkz_b&ur~@}{dd~x%lS7iNUmu7CQsOkB*^B$io`L(7UecqkC*RZW zJ(i@qI4hOmC)S=>9EIwYeA>0kYHmjR{A~EN@Eo=@Uo?Q`d6Ds7X=3=NbQa%w&6%4Q z8)KPFk6>lN4j56uqCav5w{L6#T%YdkLw? z(MB`3%SabH6Z2(O(u-b*btcuFs&9(Nq`U6JBESHX9?IyRJ4d2wv{cKoYdW&A_CCWXcZKG@I z$q%|jRsoXfyOX?#R;+WvzTQ(Q=nsxYeIW`QaGm!JiXkp+*>{+k`e*FH8Dl^Xj=&sK zKNnW;0JvV8Xk~{F5 zUB^Qtp7N4(*33IW8lDxc{1O&*TFF^c+PnJXqt9BkHk>|Ml~Gc6?Jj0J2Zq1JNf;=| z()O8d>{+j7Js}HWc$<^lHjpa`9Ae6n3)i2Cuefc^$}7xov~PLza+BRK8cUbIALJ&$ z6O8%1LuPh1K-FP|rm1qeinmbzT!xA5fX>xWzQw8AOS&<2nGn&#gt zh4Pnkm&JnfC@y3n>Pzi<(zOry$NX3~C=A)6iRZB+X2P>xFMEyLa*Rb1&;Uua)qhy` z46N7ZzK?s9#B;SAF6MZB@@vFYwWr{L?5Q7x=9^?I2k@N*=s52d#21!WkGo+ z;@s0hzyu5)cKD_7U(yjS2EC{x^}~b1-@_Tm+IGR4%t+kFP#kJVD!1(^`_&zjE$i5Q zK|zT{cC=>yIQIGex&$pjP@(K1((yTyNVhUZBS^XI_ zrrT{mq0)EUZghT7Iv%|z6_YeoT8<%2f77!P-QJ06U<=oUs(iUxXExqs!q4OQ#z?FB1q@syDs?DSGxQ5NW|9xe<_m{;9S`etW z`k_L}RCGafoPQE~vhW?t>D%ShwDx)p#ir{PDK>n7&hI!lsoUEQd!pCZ+`Hz>u1{{x zNNNLMQfQ2|0@xwTNHt2L?OZGclbB}EUJ8Az6**-&O>`$@Z)AG-ATYcx|BEQ0Ha~X) zSHr&1+$(PJn%(b(AOAx~XaQwi<7VjOi$c{>-d%K|cN0oiNY-@|=LIxO9)R(N#GS5< zn6(uAMO9^j2K?cP6YeBGTj$|Bjs2L(;!4G}gpbxja@17fK1%CYv_wtK&EYe@M=rLx zyj+88ma7o+;@aLb{_*qI|9QQw+=#;)M1vD373KBT7RhC0lpK4* z1C4)yLkfOD0}zMHS9P5rf1H^L#HOM!>8^$S-4EslSb|09o|w2oEwkdUR2=M69R` zl8@6Hmi4nAoTfj3eanUo6(o@I3?K(c9NV{_{?!p;*?!u>>-c5*Nec)I$YSzpb-5{w*0+_i)zc$3x#^=?;meq;Zr2{(~zQi6Ap4Jbpf=M zB3jaKPk*DkCPYGwP;YS0=qQDK0^3}+; ze0~r2dc1u8QX?uOv*PQ_ir*LceO?iN*Fkcq2)hGucu}7WDMQJby|=vPirB@a0$P%R zn1`5Pod3|(Xq5gaIOe09d0DPJC)#0QQdg+dq;+KOy#BMR@(Z5K*V!jSOr5-msS}<| zFEq!Rz-TpfBf0=PU+rV9Mo~`KreKH%BL8fuA9SYMvuQHY%6B2tCalGvUMf2Ei4kXz z8kJ%G0&^b0Ll-|j7UxwNoosC&Yit5wS8wK0p}5x9!1x>cS@>z>kU_$ZeoB*Wcu zD0Yw6J5%?&SQ(HSD5DI7uii}Neqb^7(0nAO*#*v~)yAJ$C^3yrwkExU!Ck?F#D)`! zg7a1~gn&ZA%S~3>+Gy8BTo*m_)E^xYf3x7=OZwqBM0Tp_AC_M*OR!QHX4Z&*YYpLJTi}tHdoIjkB0bscxT0yLujmlLh|su(R!Ki2 z!~%u)td9_KQ=iLK?mw*Ox(vTW(lTBs+#x$|y*nRmq0?h%bX#(cg??K0@YtKPGSGs#xE3-7B zBr`*1Q1w`&C}jU=WDB_*uIyv%xH|k`KG(q~XPM180_E3o#0kG~h-yh|zd8F7d0;?F4`W-`k!6<865Ct63#i+YZmi?VMIStsm zzMhHhEO|(LD}ZiXnm;{K7m>mq8p+ZgY(5vZfI)cil)AT2k(`yG_Jc375!bILq*r)S z_Kgcg9lv*suuZ(_!Uinl(cZKrT=nff*5Tp@8nLaJ)3v~2it9%wP{^)L-nhLHbxJ6khG;ZGc*Ix5UAKCV?1^2iX^wHTVmTXCBZGs`fE?3_HTFW1W2^Blj5PB zBsw(3p%}3{Lgy+H50RuzBvoYRDpEe94VcMY@`c2Eh4*Y}_9e6ek)?i@18dSs?=6y5 zW4h7W2&Q2|Esc!~T5ntP81JltTYquI_zetJvgJxkep$C|?nTF^D17zm)g$OpohO1Y z=-0@L>DqJdj+aJpk3OXlfJkAZrdrLotOyb1AzOvFr#^LU#W2A9xu*`xn=c}&e3n6N&<3v zADxaIB+o!;Ab9n(vsr|;L{S$Pxn%dX6Xb{X59f9g1r_qg=7wiD=hi5Qd`vX4#|PJ4 zlv&?Sf8t~1ZSY(V?GjjUSwWh0V^j`EH}d-}z-A+hN}^M_#sl6;6!#)=2fMR`N4fzJ+bSK0C zx6n*(n|HAz27Uy`L=C&;?T%+2dWZZxHJRozfzjfPO{U2<)$I7+lTUU$i-t^){ z6`6zD$@}m9UG^_?bcQ^)c@7xqm4%R|M!COOpjxH3=6<(BIVUKT%EMr79a*u6#B#%eij@InTDRJShSb0Cn1h5 zD!M3&e%uC?)98*fkbRf{Ws_=XgRLeRVMXn}b$vE)4U0GfXVUvR-j$?mv^lxcW&u5G z>Hz4S&)r38X1w!tW(p^bXtaw?TdrSp5|uLfy#DFkH^cZ()I7VZx3`Y0xPDWJvL@PM$BW!@Jl2 zkryAsPObU$cge!EG4WFyxF;ia=g&W6cFyyF1$t8oIb<0K!$(u|lqd16z1*+YHi z2=pc|3g^`mf(0XKYq#!wM`w>BcU0+bn!zmJE28Tu=fNv{*$$aSFZ@Ar)GzVH-lqZT zLVlK)S9|{%Zdn?U{bL3>)~X3BX+Fc?l~{RquS|&MYT0?B>1t;%E>}LRIwZa5A{sw)qZg^)Ff-WEc#G=~j^CfGQS~`_e9A$E z%0VCT& zHRn5-q05h=DgYR=7bv=uFf7R zdfZWpK!!WyQN+7>_N!4VbUeZ^hbmssWH0mc3TdE5V6f}^+uZH=C52oz+tt5_r+E9) z$J>|saqI;pJ_E`FqtrWtbtjAaHk`~Wy|H@+MBM@Wf61H3USdB$KcCtP4fE6^M32!X zV`RWb)gmiDEl)m;iadlg|7dR{tG?Dg!76A;4|9Jc4l!heg6M1Q!$h!O?oC1?HKSZI43HZyk5)ZemMF%6AA7w+s!34lY-9rS+)@)K_aI*Swpq^VT~Y@Gc5cOt zTbD|<_5q5Sxw4Olsjatph`a)F9g>clHyYA?GJuX}T9EQV~zF<;rdf?%{HTr-#?tyF# zeyk&89YvHhowaF$3m<0VGk(O~Fu$%gy4R!s#53s<|@bafX#~T z^FQ~Ws6nK>w%o!zA2bwcCc+56wP*y$R>^wOSmL_mlbL34+xjrs@XVzR30P@ce{qx! zf;lp($@t(;n0wS#ET!<4{&+2R+i~}$71Xq4h1f57nwAUV(5IVQ%vX81v5p6LeQ$RJ zuXM!Dfcwmw8=IC54B28ldRCC^;D9rco`N`t(#>#T_`;PvmS$FzQzCKcrp__f(#N`d zd;MG8!!l|dGSnhOnf+Fo2sVKAtFEFl+`eBdyKR}t*6rB+CB5wRIr*%=4$cVcAFzx0 zFZl`CkoaE285?(^%+x|MQRpY2>od-aJ3T8RW}AiGdq^AaSOG zjDC>z^VqRg?=P3f@q+K}ViFd61a!uZf5p#*8@<;1xN2MeaoxI)sg8@RYl6AR+ny}w z|A?b+{q8uj%O!xZIjS1~i)LL2jSEot_VSxnUqYqEyzaNta>O$pENEebMGu_;%d`ps^*`oORG=xtPIb^PU6!`^d`A zZ?7!A{^J4=N%i9IkZKJj)o85&HtnTzaR#+Q6fHkN_Eeq!-x;q)L$v#Yt|LHn3FYQo z^T`9N^jyn$F8lJ~6>cHE^-^_8;Z|e*`%om59>%;obx}!1ALJj z0?6C&`#jc_^s(QD%ATxc__TlYcdDKY6dqHPjGiDJil6B^B zj)&4~VlsVh8=ibMTiH-afm^s%98uVrDK|136i9qcaz zZ38U=l9jdR?*IP#3~Yeqt3~MPCuN;8hCl^BgZ&eHcrHC}ekb{R9z9W6#~~>j+h|wM z)ySI@cdn0U@<-Vu_vJ3@Qve(4R{>9<+dI?dn~w zDUgha^t+ETJj(af);5D%G2zh`#Rb!cJi5#`9uY^JgwMphHI-=xZm^{)S0`3oS!V4`%wvmhj-B>GCqCh|QXb1a?50En!rA7R0_-HaCcYPh z14kNb0X=Zl*^f-^T}XwFfD+p;Sl0mcU9|Jw`T6q~EEC&kbB6Q5?+A@0d=3?*l z!g}e0*AsjB@1V3J8e0kHmO@q z$mUM(w@*6nNap6Wm$o*+cz?~lmpnUk!wpR$T5fY~WjbeYNPu$EklXjX=Yui*EoH!o z%*TF=Uda58I~Oi%XrJwkbnr;C)xBQR|4c$kL70xfUEe;k2@X_wbHi2B5OUdoH>Pda zs5V5HeVS2{&-GakUz79o^hM>LJmh!YT{H3={c}9skahZ(>xA!am*t}Ruk;J)7(R-( z|87!qRF05|%+BL8%7hn+uG?5zvY4=8E#VbA-c%f4wSa27OsDPxLUO;<04QZ-!$jM{ zy4vMx@1fJZ>=pWJ^b)*$h~1RWlCS?<&4Si5lpY{!GpjFA1}A{*dTFTHP8<-<_oeZQ z?bBl&s?G1+wn1Xa^^jEz6zd87V}zPyf7?#83uBeM7N-*NhG#ca?wJeSsL4EdZJlzR z{mt(p%ZRixJ*Q9+s9VJ@iWw;97d4;z)v=kMLw^w+{%p+5IMZy`t*-b<`6bsu+=dNyGj@_J(~dn@K4CxAz_e_ydtr=0&(7bo3#raF{i zw)-e32iDb^+){A}lnVeVChppoYUz{*CE|3=>9UfSR8csXE0@)*9ttj~(Kzk-=l3r{ z4PNPR^)@|L>Y`?g6Ig=UT$D;ew>&IomX~}dARx>rjkiD2n8>i6!K%{Zy}yC)n}DAq z>Aqy)EVCj&;RO4}O4DG!N-Om4Sd8^DGUhaf0{5}mROFPBY6$HTuOklR5aYI_pyfKc z4@It-pRpHt-^FUQa?K>@!zW;ATG?yIm%vKgp6bac&MTE?%sbN@+5=){mV;(IwW%Ml zrejUwzV_z|L`roAtMUvm*!{i>;W5$Nr|(V_uknZ2oKruK`@%I_L-kwm{@_7wQGI8A zT7PDB80NYsiPmCeFL9mpKX?-iYKIN`9?+l7HsN6)XVX;&%N)SJS+4ifdUidGG1>j` zp|E~Vn;6AYv%0Xk^UbH2VV^I$5l8e(XU{DQnQ=aGNx>RUm9lc+=#J15LY%xwxh3E6 zK1zYqrMqn7`#|bUhv;_W?&_*#5X!3W#L@2(ifYqEtjZLd?W7lN`$PC zh|d&#vF+m1Kn|6C3asTcqqss7kF2cRNTmq}rC#P-H^)x z1{Lb}?A-_019IOeBZJ(74+4D{2MY(qy}^PLiLVEN{z{e}PFL2(_`IeRPWbl#uJ*~D zpPedz3!+fOMr)0ieSJ&fyQlg;;w0Jnrog;w*5#MFl|9YUSIzX!hqOb_NFmnESxXp& z94%yEM|VzFiY^B_<=B*UbPMOR!yBW_1)dV|VccK|2=joY+a^46-J18U zVN5o;1lPn8KfNX5G38&fXY6mC8r-5h+X-@{;b2hNW~t(!pe)z969q=!UvD4a|x~Zm)*n*h>&tZtu!ngH$<2bA%PQT z7LAH^)w?K(Q2L%)mMpa{UFja4N>SUPF_FJzlF2Kgt;SB@Req<|VX)CfYpFKbT+(je z1^=Rl7=rnh-IC2NMd_5f<_U_|712-X{<$j5e)Ir^8UnSh5?(x)CQTShPnBVCS{An) zl;_ggS@?&EFvmM$>HsB8vJGI)4BOKimdOQNw{A?fW9$>zsrOt~IPsV?vBp<3nmdVP z28cc!>|jUrv(9rq)s{Tnc$YBS5WNM=_8F~JOOPXjk?0E9cjr1#d;a<$jt-*sRQGrd zQ?_%PYIoh&Nq*FBIH7-BTg*=W{`jQ7EtC5UFK6#IWo& zd}4Hla1LIc0p_pm0@aM!%4zNs&tu$2i~-VOrRRKaY?<^UR9n>htGkkxX63FC6|g@4 zBHn<6T&R{;qFL5qzX$VYcmP_ORP{>e%MHWmF?h*#7aXV3(|Qk7mc*b@HmsS^wYshyhmwjtKR&x6_AvD4zgXH{A9;`F_e23 zs=pF=R*;vm_%JpQm8oa_kR5IHd(Lghbo*2@9-uT6F#%Ka*5E_O_Yj4!70@}(&14ft zfy(y#6M0y`Yi9~BPk5B=(U<5^>toyCvLYY`l45~qNqA>)FV7_MzYX!$s`e))#u zRmm7v2>np{Bzz18XdK576Ayl5wkl*%x>k-vHVA1GEYjcoTH^t(t(m1S>YLlP22rbN z;rjtt0YJ?$Y%( zrtxl_TkkBg4J)L5uclIulBNwu0lP!?652T% zT?$PJQ{SZTqR-t1s*gn{X(GvPh41bJ@`MMt>a}Eak>kXrOmk=3atX7lWf)>8B?9ij z~)Oa%_RvCk;f zFror<>(a8plZLwDP85%^_nqJfWUbwQVUn*76I$Z1k{l7_vQW?&a{;dhvS5k;4ss5C zKK4r$j{}=k>VcW9QP7V4w`5}OSzL`E-O?R-zd814NI-tW`)x}k&@0bKnv&y4+u z5vC(;`;`x)2#+vWaeD6py6XhG*a9f(d~NPdpJ-d^GsHgT`x$+F*prWhQu@C!FMoo0 zB{;m*pjVv98VUl8LhZUzBg13eezKI2OF8N<;X*0+f_z&x`)hZOSBeajt$gS%XE4>= zbR`+jB~`Q>5dEvC*N!_j(yN|7oy4^a?r<%rmi73oAr2crGg#fMTC)da-OJ^;$7mCe zsdmT2TbC9xSSGUs8Yx8h&QMN%Sh9;iRYAT>AN?X!NZ^mZhnmxR!ck8zXlE4{<_NR#f zHo<@MAzWJ??EVM$mE`r2*RLMo`D!rwIBA>h(r*)G_zwB`;(C_e1=LBNn#?We!+-AM z1r)iMcdKBs%V>K-`+SW}L~#W%e^BqPt%Xf1YBH16HjWEDbSMbNAZCGMXLC_sa_AN| z6JP1&C5(if*HL2z$*ncM|ZPhaRt`t%$-3Rs`9^wKfU z|1)AqrY{m52b?x7RN$cgfVlPmqv(=Dk58X6EZXT}>(T;J;QA|X^q5Vbi~l}vu^PqYM=)wRU94;r zMm8me3=&*T;dDHy24kZvE08M?jfBF_%H z&ob39Pu{1B&!(I@kt__mTZ-K7RzCr^eXF>q&}=GVAuD#D=%g&3{XWHw&ZE7D-X!cT zL!~DdSXv`Z!jysCQuaTvd$2(x{rGtifV z_Q~blTSO^ohlK|2;nwFzNnb=MHu&nv2q8yr>1CjGPwxK0CQ2hbPrbo$vL%&BbgaN> z?YRFcGsSZzMnUjBWAiVK;DKgV&7=flai{K6QtyA{&Jslf&QLM!Z@K$Q1%2#2jG3>_ z^{-$MR-Yty7=6tnlt!t8fw>SYBK|otJ>}4NM5fM zD{~aXs)sOlOKsW@p7eb*RH;fFjJTGu@XQjPg4VQ-)SVNpZrZfF89B!x`SZJC2OTI8 zsyDbrJW7eX0f~&-AQPkU+QfAV#1mINy1rVnI>y+AyBB5QYOkLT$KgvpWc&7G2j)KYY~`v%o=1?X9!o`GIdLfgw(t-s|K+5{v%RGVSA=S#Y1+Oa zY_(J2T2;&R{QG2uMn+A%N!pKu@XvIdn}ZIWos96LIN68|DOm4XK^jR9;JBJz_U6QdbSy(GwDy#{;hY)Au)KI- ztzu1XxL?G)GmxtZX`sOSX<93HQ#{Ialx^b^^AdB8xz7O_M)NK`_RY%4)f zf3+XV4o5I`RUhB&9{`5*L$yQobPbW8hj)+(YwMFb*a}u$4hXkLTfINwSHFYW4%|4{ z^ALkSP@jIekAmVvXr24_1}Mq(dVB`-+3F;@Ng0r`2J3URKY|=8stTd&Z&YAp?P|Ev z4Fjok%f7q^o(wAD(2iNL^K5p$s87?cq18Ub>`6C5vW~*_Is{yocz4OIq)2b_>2)8;sd&LpN#6U?~ z36HQD@Fd$m_l~uJt@H81cBU1*AoXMsr_Q^_DBokSM%f%@A$T5Lai}||XUdrhY}G4ZEGE)&{>++hPcgtXR#a3B zG4HOt{*od^ngV_*L2Q^jg&$_@F8SjR9B~l?*(n3Nj+p*k_J2_<7~IubgP?WhLUYd% z5JVHrS#qzQ!qyQ&Fw^naKj#r7$RR|0t?NNFWSl(_ zIVv6apkyg~Jx>Ll?02XJWIu#L6Wo@&!W9#oK_{tyW~NK*Ln`-It|Jf-p)5V7o|T<2>yDy48W$HM;!Z?XF2u?||32yo-mj6uP)aO(cPPFXxv^c zPup?l)7AB8WvI>s0N7$TwNG$2^YQ96^L|e}n%e-M`5&AF z<+bJN+Wo)%wb?oKkL}I#CMy8(mN{j8$$FM+8@6H;>I>(F(--bM$i6C9m&x-b_!yOa zOJTY2Es-l^!U56NQ^~=u?_bJ5smmNRpHVgz;ep8D}m*kY-(7VX;!qN^zxDi%u{ ztm9=&T8@51pq24UMd;bwBgQ38|Dpy*5xw)^7F6Xg7O`4b@~YJ75^-1zIzXz&5!$xn ziq6n&6_v7BVY;RS`Kd*{}RDx z`%S{_KyO9%dj%%$jJ`oMr@aNbu9%n%kRkd8&FIPVx;b`WPnaDmzd<;_uE8{LcbQh> zmr&6YyrZmTGO4uAA^J2Q!4pmLPuM{Tu3cw=^Nb$Iao@M~_b=#|5^^u89=(?~T#=-G z$ZXum#JE&;IAHKo*5fMyMSi>|sChwiN6c2}DKL>Rjw~prw!w-mUGJ@=Ydm5GRWYwJ zt;fMKu8cblSd%|wFr4hfGs4nW0<5bnz8PM)HT^a@XqVov;(vh1H|yB z>$ie8>CfvM*CZSmA=8 zvZcW#CAZ~Z=XG$}`)S!AQcIY#{yZ8Zvt})aHG`ZX#zuQ9GfildyJ4ACU&=dMRpX*= zN<6!^((C#AvlfG!=~e=$nlwlmk*-Sg$2bZpdI~MeGkm5oWN2Gy^7h`+&H8=U=@~eP z*fXyG=CgGbNmAJg#MJ<^Gx?3eYB#o0^t3W8uZCZR#_zKJAp+(bM*RiRd_Ebw409U6 zON8#T_f0LA;<^sM&u2~*yV@2sf+tb^FRd2*^WYW+#NqGx4Mv7NJ%3NSlpt7(|H_<4 zVgklIcXsoN=M&-A1h4Qgt+RyZr4PUU)Y9)`DFyeq$+CIu?5+@JsT;CE7yb2@l!F8- z$eje?yP8^#dA6SgyFa(8!WXDv9?gbH%r$VB*dbd72|2z~2XAhY?-+qS&`d z^hffUtQIz_8$GAc#RdtT5nAf?UI8w$IoN;Hgcb4KwBsAX$Y7gHYYMJP=jrIuL>Fw( z)=@isCH#v1^O>8bPQg}=si0{8VIp(FdM8ezT^c(?KL%OOpB437U4D3jB6}a)KZd29 z;MC*;m?2nlxnnJUZ0{;?i)&o*#QOz($NG=acE`ye-`JBi6K<~P^9zs*ikWqQd8qvK zUP4>|MjyApif4dO4nSNK|8V!s@7YftWY5sH0=KTpW=XL&4Feec>dQ~)PwIa~0djX^ zS%G6!00LcZ^YC~v`N}BiUF8}>uB{{RC-@y?cOSWLnyg|HLRg5LL*=FDpK(Fe~L%aY(uS=kNY!~YjQ`8yIw1L4&r%2=zo#Xxw95I?`y5g^|cw7#}5Sa_hFKcK7QqMI#uZn}p!u1LQ zdvyhEK2YCw2=m!&$o(x<@{`aa6bG(jEeTl7Mi=1@uYpl2aDh%`LeOr&(v+MPOiUg9Y#V%y|%AEtN!R_P$c7??w^R&u~ziykDY z0nE9)`V%UZ`}ZufTPXAosUUPv4bA5NqC`d#T6y=DP0JJoH5r7J(>o`it-H?G0@jmn zca+U$ybZhjCk&stRa8{6P(*(OFnN0S8xa=Sf%?WU0qIC6sJhZS93Il9m3OrY;VS~tdZTdP|l-;+g zG98Lsz8t7Odp=h&bX|RO`awsCRK5)Ll>e-$7MNhQ>-#a|%~|8L!lc&=SF8ngJ}V^Z zkH^#BF-ygxa#ZyvP`S(hd_Uc7azbMca`^A4IQK<2(ucJQA5&yW5lsy2CPf;a(vlS^QT?cn&yo7JtcTWyA9I{$uEq8^z|*|$=>p+w-|&z4rDM{s=u>B~ z|5KXMC&Cf5oeE!E(;$&MzINhF^8UXIO^@6=F9;Nm#pQwYYw%Rx+fU<12R)zGBl zBOn=PcWo^4#gTW}fFmDk?wtD1aG(CwmE@gUS@1!^#NK=P7X}SYu)c}wl!lp==QsGN zOKVG|zHBGULBEc59fC!aVQ?94Ltp$~;3DQ{r{N!|CwCV#kIcF=C{X_Q2Op-}mGHy~ zhoLeuMu8;N@R^)=Vutrl9HeDRy6$<=wkWQ}?^I2$7Na{pDLIYNtzMgl$nDZAxQJMv z7*$&@!%r<-Q6qP2=yLArXptMk#3aQ5_pNn$9z6*JDCDyL2FUJ7cw+S%VeH&DL*g$f z6ps)n>BOPtSzpSIzf3rERwkupm@|v%rm$?GKZHZXM(c)!%!SJe3z&1`Xk1Y){>R%e4Rq3BE+?#7DJCUr!@XIpA~OuWkbC)=sUku%DJ8DN7iCrdU!9 zj-qjTd<)j*AW-!X3dhQ!bF*YM{6<@;m}EZ}cU9-7@yec_9M;&GDf-!`G%av(d&?VX zt72`GNOy_LZNnG9r8Xe)Sr@lx_#eSA!OWu)f{l;NE6k3Ne$d@C79L;6$qE$Tl;tpx za-GmKk^ZOOP;h4_U7PryG1(tI)zyq0y^m8a@#8=Q8Idw)ylyL4{{+qFk?|Q#v)j{( zY4~wKSR8NltOjr*6k16O<%LaBFQWoPU4Wj~554t1a}CAcYT#m(uMds8C5cXx#;Q7v z?7W)>2&>7?Be@JYJ`bqYFa3>btpMQD2NQX|0a@6X=;`{{kM!OSBSxX8 zmuxc5Ndb{i=pn3nBkXI9-A?swf5H4NUd{m+Q64;=rsC57NH{!sz{C6BS_tH5Yr-44 z6yhQ~TMgK;Y`k_HVOjnlX^R{^Vn7gFG&>bk!8dL!Hd@3@UBuG+cbs_1>wT=R4-B^? zPP3v1xoS5hR{VfH#pI&LNQwDJo}3NHexBgoY zGgmQDRmi5%@CQq*=y5S=M6j__GaecCNC8H>>!Xc$92IT|# z2Uyz~=ATu0x64MTXYzi}>3YAC3|a~Pmm&6h!X(e6Z$j?#gn?nJO@hP#ynM7=?3?Wl zLOt}LcRCa8oiwZMH64t^ z9dS_QtLrV32r!Oae)aFS{9_`{m78c(aN<0Nh#@$>6sU6q-{uKQ$O9gr2PaV!u^-iz zrdOyOTM(k2!4rkW`cXL`L`NjL9ViW#?}6iXs(O%a@*>U|MwmtsvZjxwlIjVfe!!Jm zAg3zqA&XEo4rB0?<_}0bwzm&lc8ySGMc@;sf+PCYK@lZu_CWzZ>HH0^PjCb=QpwaH z6A|pewQ*1|z}y&GZlgnzBbfWktG2pcC`3n!I!wuP=DpTUpVBxEB1a+$;|2yGe(l&+ zZy1~60#m^j*ifyr$+?87Wo$Wmt+uD;Go#!-0{4|mPp^2ohA#P>ElJ4@5G0ZK-2aF_ z|A-}uIwIMQ{m|L2;ux&Xy>>_xNACe+^Uw?eS{_JyC1AsCGGz7d3tlO8ya_`X&YE;W znzC!WbmUyu_z|!GsjoP6I;(I;ZIPo*L+0DJ7G`6KOFgj#T6ymH^0l13twj$@(R^As z;*nN@)N}6YXwm^<*J3#G7hJ7P`RStX)B?{Sc`1I708vb#o4plPrA2TQYS|@|9uD2r zu<+y9!${j`2JzAZR^soIS?8>F2xAxGls2GXU9O>j&0KYWm30uwbEM@Bu?GO4n9fgn zd7?GlbKv`Du%eHtIT2mkr}15QE>A@g+h|kcgAP8iW871w0=VaPBGR)}%zxrH^$4M7 z7+n2Hk4_w0-72GLx+(Wx%AJ#VSs04UCCi=`JqVfO^-1Nt&1Y4e{z9~;arpE?F5Y z`6VSv;9g9hB{p#1t{FM?ql>yVxEze!R+~6HAJ)nqJ7wMHzfoeP`ZS}H7sp`D0B}*r zxfJfmFZHldTj2fa7LTmBeeLuufX7p^nyiB+z0kIN&Xs-x8p3P=`0tvfz{_Zl7ihyI z&M69l&!kmv@F+e>;+1}0oKQN4U_BC$QXJh<8smAd!>0*PAyqqJsGCE>wIp9!07Nhf z#>6(3in=LqM>N7yI_nAXPfeh7fI=#ptydgsnkb%@l;r^5??Tq(7qwe!ceN1}v%eMy z(!MsR)@MA(KkPrVJtfZJa|VwZcHM7i@Eqgc_cFcsDDZ{-yBDm2W%e)|p)XocH2zLC zmYJa3f3}Ci2hq6RNsio6OukRq!TELXM;mt(gVNl0bSym{U6gOpNPC@`KvbfkD54{DMbiUcL7~Y);$8eCRHMvI3*Mu z8$n)o!n^<)w+%(~t!Nk~J#*9^%ILQ^aO7HRJSW&B3X@Fw=1u_KHhHF5ua>jm%$6YJ z$Qb^5xi6@tUteW<4=dQGjdJUZ7z zTp}pZZEL&P9S=@S`plzf-zPByMFo)603k^G^01#AKseTpRcA; zNS0zDBrjqY#~P5MsmquoH55v|$^NX8B8o0+zux_mNcYB=s7l>Cx$4Sh`syDiC~qI^ zi`aPRDXF~3?uJ(j@6qlOP~8upjDHJ33)KU`21xy6wM#IENxyN2y7l7V+CbwD7zB>_ z#Bai&zk1uz$4lH-lrf6RW&5OTwzoZQ)6iYpjjh6xnFtH<{(rDbI!HWiS7ykdz47XsTb+A2HXpXOgZ zmD9poA_QfKhdV+vA!#3_iWJFhu5v%CaDmNsCo82!9u{KX4pP4An`=?JgC@DWu^n*$ z2XQ=ll-NK#eCm+q4z0j4vPr6XVu|YXMw8sMk_Yzt7R>%;WW@wF(>uTuBnzWJA^u13 z6C#UCA8Fx6JgjbH_~RR#xxOojxo4_M_j??;ei8jls4i?V?^CH4%9GJi9Z<7<0BRp` zl+^5TLy4r6Ph2=|_V+k7CykI*=L4!+chBA>Y=)w<@8O1K;n*j)57bJj|7^ z>;dGAta=6{aUN%pXABbsqj`*SA7#kOJ)m3L4M{@erFiF$?v^& zoo;DOtg#NA4rU7`a6Eh{R@eEu?sVxHUnDAr9C10HAORZ6!^H_%fKC z`WmqV53Iucpro2Dns7Sf6TICS&k<~1H31=c5FF4k-^~kW-zwIdqH-r|QSaJ|Db0MkU!lE%?N_$<~9 zHpiTZ?M=sF-@)y^pUadU2WU+F?kj+oDR*qSQWpMp$>} znDyr=?nyu_e8KH+i?Fd^LgnXNX~1E}*j%d|8t74fWqc}qf&+88(A*?RINRe0@e=Us z#g>irbgYymEWkj-*WWlL{^!>>J+zgxzi1^hc{qU{l$3hUi)u;}i{#`pEKBlLe}6mt zw?F@wwmNwV;#ZUfU72!wvk=IyNeLd{8es%{pH1wG9byR?4^!i9Csa@3pnI?m5!B+a zl=!f&Ww2<~9DltcBY;bc*#97hji?g)rU`!+l>V7dvuqyy{WI+ezX)X^;{V!aIRqJB zRQPbj`^<@aHt{Zl?PKp1OX_V`tg4QbaaqUBz5Yjt)JCS{{R)*1CboJwYrVW%Z_m19 zB303IJVy{K>Tjz~NlALrr#d5INcjb)O4Q5V#!xa<{L1XtyBL$yoR(IMVd|HSs;#(x zkRAtbO@c3yh1NynTlcNQ{@Lh%c_Uip*Y@x-JrzqVGo*Zd|H%$8-+i>LpV!PQRn8-R z%xzl);;~!v_cJhd_P+sm+|+$HMM}6x!n|0zK^|=OukqLQw{OD}`2X1Y5^yTiwe74Z znzj^8lw?Un38hey#6lE{k|`-e5n>T33JH}Ap=1iN6p?vODvhS33?&Vcd1s37-|wQ% z`M&SJu6^xuu1&*wy~Fd|&pjMou}WZ?7^F^c{k_dK;)jjgCJm6ygA{<|u{#jyj-Ii7 zm#DF%H0K*9KSouE!dGgtKnKK0Z!M$HHKv!N;X-MCk}E zI)}6R#PGSv24Y2xmS+DK3wGrVu^bl(6og(W|4CT24E&%NHC&3$FLRPPQepm|-L$Ym z`YZxqjzdU#pgm1Rks6b-DYaB*a0vc;zqA~GHY_NeN?Q>$Bo3cu7Z(UPKH6YXl!u&+ zCjgAE%Lz!Fe-pp4>hTLQL<7BWt8P-U#~35LEZV;A^${;$K8GLqJF<1^hZn9<%@eS4 zO2wN+ykqaq9irU&=jm$hEfnU}MJ2Kitj&#a*SZH*AEEwvB>yarQUZa1tPQ;TS$CUC z7Ewj&zH)K=mA!(x0r%uTS$|p@bgZNZtzZjVt4Uh0^;ui+4Y!?cWqPS_jMFDpR zo)4J|{{8xb_yuL5pgF4fG;8@O3PyU)0m2HOF-gn7GrC##n>-kWE|U}ZvHc#Jgy6YQ zB^R8mUy9dfPVZg#+}&QQwO`x%rQ!Ev%3^>v4~Q^JK~sJ`CPSOv_u_W@^1y0$vhC|= z<&|a2|8M~mkJI?IZoKR{zSB5%99QZ`A}dt-ryVpwMDMbBFp`FM5=%kU&Hon98YULI ze-8|<3qNvQv`KQ!WKB){EZ97_vXMC}@BBkA^DuMU8x*w5pY5_dfz?B+;4PgGu1QDI zy>GmjS=`oOaEhRHQ-vL1OQs82|GZIW0|bU*S3 zM0(hHdM=4)oWwAx=WMi2*ycp3PV?zLh;7f$H$$Bjwl%c-gqbBaiQ94rGs^C)asFV?ziy72qcaS3v-BM0Ysm>EB7)9j-XkE%v! zPPCqFgxlS`0x^3%t!QLE&7gE}bMD6B@g?e_#^)Z-L)WbnS(DrrD%MCMC*aC39Gh!~ zf=^&clrA^tg)(?kA4big@m3cmBX@CkGSIC09AQT!nX|UB?%Nvl3u~A zO{R8GaPhNlu{@J~0JS8&Gg zep4K?u8H^2&_tuDC3;Z_41pm3GIS2MV0&pXyqPiRI~wvki68LzaFUgL9sN zc3Vs+?gJ@1oju<5psEo?K}6E=+rzgfm`R<*pFyIzk;DjDdDr_a{a(6pVGgh@@$bLx zxC;`%UTR&eu{B{(5d-L|UwDjPkO67PDa-x;W3^^bYRG_gz*t(9)t^q?(@GU{2}%cu z_om$5ZYKy4PYq8pqr9PPD_kA=-B0PIf;Nekip z^8tgfc9;GvlMpcnnV`z>4KW%P+Q~1|8Zr#;vYxPI>tZ=}8!je)_mGn=>@Ja0l&fyHQ!CoN{0-2F0?a1A*; zH{~4SKW1c|{P=;m&pJo(nH*ow^{fl;!CWzikG)ESivXRn86MfUM35`0+`FWJ(S74C zCx`u?{pQI|tW=Q2vAOu%^P5}JI~1?Y@m#!aKRcmo;@6iG)3HCHg;TEqB8V%KzcAJ@ znLUK#LI4~io(jPC%@=JT@4gQ$#{uYmlnXrMF;jE?cr*t~T}mPP-TJ2NHA=NQ`$sS^ zUg_j$oO~2lfHe`wkkp}*br3aVJzeSklJ3|bv=MhOY$-S*3r;`5ow{K>9k``a~r=W!{LiGF79H!$1oV?y=3)8%AQzwf$rirGtn zDPmsC3QUQ339`205>kCCC2+0>WrWVTsaOW-rGBw+IpRC$VX%w)4zoW^T9%OQ^ zJ19|W4%*6QsKU1#qnivY!Spg0u4Z|(0dx_AE^;V+yk>9=L?!;{j_!vi&b8|0v8ykx zW~l{@lIFDIlArhf=NrO{M&85yCH4e_hZXAfPua;@>M_x*#teUgZt($>oezL3p4v&6 zk$y|$FgH&vr~Q4zqA6mVvR(Vl3qjP$G{q0EQsT=W7STm~o=-YStXbIKve^)2^X;Kp zsXkHO>e=nY$E@R|_NvgUOQp*7ibIqzPov${{aOx5j&SE*bq2E!s*-y9d23#ItVeDe z-C+_vBV`-tg#|-Z=O*faZawt8(vH2RX55N`Act#_h^s)tIrytCJ;Pa%$N~>=BoHUI zK-{<>%XFsV@Q(v6wJY2N@=@&7{rm;Aso54yEb$>p7fDBCC9$pXU^qiafSj${4ZTDV zQKu|7g=PKyAV=9G&L2W1N5f()R43n>=|04J7k;$%qII*$Euy41CklQ^;2!=c@gxLa zz1LnlS=}W&w36<9zL0XpQfTLwZ$Fdw3Rq=-D4}_S(6URvSh_mH-stz7Wack8m=w)e ziA$f5NQIUk1CX&9OnjtU^-`8w;;&9vB8;a3F6>SUv+>}Z^dbg$c#66QUqCUIFZPC= z(l1OLB%3g5OgWz){3=^l4b#u_G(+uYy$B}Bfs!)ZDbAbGqOc^n!$@(5*kMI$u*IK- z-oLhAVf6cLyOsWU*$;wXqLr?Zt;B-tgy`g6u)C%W%W@%Szo{Hg9PoH0GjuLJvOboG z0=aO@G`@9IN`(}N`b69nCjJZw*Z4MN$=H9+gYwkY_zHJ3smjNNSzl-)Mj#^vA6{<$ z$sTHiJV`-=!*$Yn2X*O5TLgw77n9BP8zkc8nECNQ2eu-zV% zH~99Dmijo7RfB-r%?w_#p0@LAHgeOqwl18V@$ri#y+m;Xj{G1*sw z5)_(6{~*UfLik64Z*A>A<&7F|gl`iq^_;guj2*>_6%oBvCEWJrDjKNO0Ng*A9P!VE zz_V-;Nv^PEDH8b?MSl~dtczq9!2zvEBhMJJJ*6Wh7&~>tChD?3`-G=R#ZFFdb*1zr zrXGXz^bZ3k&-ijD1t@Ka6p8)Og)++dQa7_PdOyVIb$SvoVkpFYc}l&jAVsWjR81Se z>m#Bpa%M8-{Qz|DcH;{_`2_LoS;_Q5?OT{^T^0xGL#QSu4SU|u%{NZpa#xAHNzsRo z*8S;>>_6Vt;pD0aPGb3wA|nh@bC!v!T1xdz@AoS(C8-w(Msl8vT&LlEX8Yl|dAJ%Yx{>IA!)((}VG-DQg*%0cQ zEIdKT>&26>9w;j@JckiOE@BN%5&OU$7y2UwX&6h9!MF3&h(X*RV2 zg50MmZj%WD4-|H7tXR4Aexw{9>k{Jqlaz~T|Kjo7n?O?2x@>(h+o`R=@o zYCE9xEQHJiQsd8JE?mlk3Hby37z++T-g0Z}sV79Sp01)*dh0ZQ?DO-?rKU(j9KPX* z`t;cqo$_(?gSCz8pOTwz;oqudKfgBkPF*PduSWE5;>PYF)q&p`w&IU<=Z{n+?@#nc zTeI=swPl>FvtmxpN<@CBCQE`Vs7GlmAhDp5pVq)SG~0N3=9*j(CqRBHFHy2eG|9z} z0=Kc;DKT)+3Nt(76MQY}a=~_)wcM5SybvmR2+ct;gI9;6g4o~?6O|(eb`IyGEhV^J zH^O-4CJUwUjco6)SR}bl^%T4j%MO{LUFzBTN_ybr`s%ioi^M538-qkJNyL9On~Gj5 zM)WW7vC%z0M(A^>rig=uJCOF@l2Ns<6%9EfuZx2IWWK2|xDmYW7}rtE?d`z27__m2 zYn5FtAM0unVN(<#rcHJRDWUP`@`(|T)eXLBPWucmPVQ>=EvAKcNpe?l?wYCf9vg9@;R{zXN7p?;2Q;))Pc|iD;t?0}H=R_&GzlFJ`ouN^? z_<-D94n@3ySN5?b{UNC?TX!G5K>B$ZboPwi;^~U4oJ4ZSWp_+PPK$Abeo6C>M?V_y zykFXiwQE|5w(|AW2MhZaM<5lQ7>p&UtTT<9a}%p@G(fj!+rrhcKe8ZIk5S)MZ{=)S zg6WiydDO#s=4hcd!!~dXBLRwy>N9^Xb%Ha_|IWWanNW@&pF{{^QBn%WCNglK+&Bwo z{S&Z8T(>gy=`HwUAHbmT9*pqx^Bs@o7GC0UONrv+mYSWouN7R-OJR*+YRlBVm!z~` z^1ij509v@VvKmqhg&F8+6B@q|3k>3t#B+5W_1W7zh0@ivc55_ zMw&EP?_`02koA}AQhfIWRn@#7qpA_#??rb93QaVhF>3eP+* z6w3p>A3qX$oGd@}5lMnf@~%7JN9@Z?0Cqe z)o~Vc=!1nw+6vO8-t5_$}$%}aU-!exd)pjb`ZQk2Xu5KmBHm1Rxj)ijQ;xK)F*7*jla)Hm# zG+pb{;=YjPG%=flghSE&8|vgKUX|vLoI* zNrR-=Fx3~$A-?qkt_9%h$Lzu|zH~m27BSdyrRbU&{do;JC~m#&or9_s_4;%#I6>&!{j*JROGw?2A;{!i+ zFYs{l#QdTiAUS&nyPZWtUyAGnOEDGQ45s=`w7z96E%uM*4^^(Y8o?ak;j9QLgL3&E zT1*q&v!LqFG#S8(6@zz6Nc%}@u6Xuzvq>I&BM{g{S5fod)W`%r!%*m#Zs49{Ra1c) z!WAl{(rT?J>^Ga0%>YnB_gDN~HTnB$3mgEK z$xv?W7L*~=0tT;f*q8QYM4i+E_wl$6QOco6Km{I{3Jk&GceX+Sj#ksme-zA6Rh-il znV3EAp_jv&SQ{qzZOIL1!q&Tkyg2(y&~*R}^U;~UK|cFQTz01>?{2t-;?fpJc7C$y z0{@e2-D$UTt(ZcyL%{fW%!1|u1$pPM<9?|-`B3w>mm4@ zJu7H?2W8az)A2ib_+jpOe_|;s#awAUff%Pkey2|~`8oKKS^VKF8UD`{+AJiWrfWp} z%S-eB0lAGV=ABQd5hiyz=OIL$8tA49283~&3*c7sqs;B?Qs^nezf9oqoTX4TI@npr z?$SaAhkd8{{gkq}x)7tf((U`|^uyp`JwoO}E{Dvm0g>F)eiSB!{`W?O42krMI8-W) zJL;U_N~U}Ssr+%=m^l@RQuas%an<*uFOPv9h6NG>Y7JPtAO%k7Cd#l9)RD>)=_8+zzOPe;RdS zU2Xq8XLs0u8Qr!zMkQfblW4!<*)v$b{2A{3_LW{rjRaij4E7wXGx+|(h1yRHXuB`N z2|rRe_R9|H@iE%jF@Wb?_@TW{xaO1Fg!5Y{>_Y!EsOhI^Eer@jP1Di9S)Jl_U=eY# zA+yxuhRj(WhzOh|(_$9fRR541wM8PDYF(Xh*E-zP=lSKxWGsdRq$ROp{#%N6)}ZC1 zX|nQtK8*xC2?M_|M>`1S`nc>esZtWytTAga5TD=xE*+s`QN$^v?T{Ic;t*c%8+`n~ z{DIdKbu&Sj`{zII`turEP$0Y@;wIPZJ1y%MF?#15w3H!Eve+myaPVe(R;*?%M}~N; zZ6WdR6iMFD1=Eb3!R}oqcE?Co!f4{Y;Nw#wS`q704!+JBJSxpQ85PUM@4J zmp$xtqIN3*>q-8ERg}KY5g5%~&~SuVb!HWFsAPG=m4oNTnm%>`3(JOA;O69st;@XB zxT}v`NT*fPwi8z<%5wAj&$@r8@MaN_K;cAIgavvhw!v3B!BBqwgD`O5Ycmp6M$(AV zpJMoUv0}_;fnJz1Rg`@>*cmxEnuXr8TC&Ct%Um?V!0l`HSS9YrpcBIvtfFsEW~A~s z@l9TIz%}JfSDG6@68~;)_i*zc{{VvIc9#IIPNfba)g@Q9`Cg@%Pw9|09yb}~F9qZ+ zwZ&9~wa>T($h_#Ovw0|MpDhy%s=X;gHGBiVij%yl^Oo{xO}(D6sP7lL?pwP5&6GO| z=qa>O@SyzX^UGD!=Tf=-j(HK{0Jx5yWjW|x&oJ0bB=8-vzMOz=Vr8C~C8-^LDf6S^oeAg%19r=9LRv$`&x0>4`@E%o> zfzq??HL8L4F#&U(zhBN{?H~wp5cCS`;V9sB7Oz<>y zi}~ch2f^hqa zQ?vUBE4Gwd-b?XTr|M``_?8{Hs(1{StmfuO%$(h*X=@eD0NCN^uEec=vE!HcYDtg* z>$KX}Y8}HE-|30@ZncN@5_tpJP3QSw(G*QK!zK;lu|#ITb)WYsTitmN^piz*JAPo` zj~GcxGWOOoVp1&of+**?H$F*MWM!QQkr+L-l5K(WSrF4Bc0EOzj@cDl0x1+4Za?!( zF}m;JS{70LGj`U~5sqVSeFZ>fs zr6+AZMD0x$I*Rc+acDZ@#dp(X{;{vS$Se-e*RzvcH4iMcar~EmkP?ce{Wetjx(qEr z7Cz5d)K|i!h2MhC=vZQ3tQF9`n6S->7+NoUib&__X^N|7oX276 zzFt4)1cGI8Nw&*oV~TtLaE-ac^Or1bwBRjLMJ>8ghtue_ly3xlc~W{LNw|log64Mu z2%X-_;k+TV)DB!dc#G^!gE^Krj^^PeOxitDcz~Vx#Gyuv+y4tgaWm;%F0o^nEj2E% z@Y-4;(g=4d0Vd$0D{G?oA(4-E!r*)%&wRbC)u8W6cI@Llo1WL^zgU~@m>`yCkgW5N zc744yvQ7OIf;L`7;JmRuYBza|D>9>d;Xi&;#(F=?x*P#Gxt=Ry$Ry&b!oPlCQ*#MT z*Ud_TC&;AMKIY@s%4?5E^_g>aDlm5jn>JP@Uz>HRDsFj}up1RPr5JowqT8k)%1v{> ztvc1<1PLmoCw@EqhYR2+Kg_{i#PK?2$4P>oX;c)z@_)55V%5;7{|KI^xJ%s^t-YVd zqH`f8g^YVd7piyE74w9N1=>Rd87Z*oA(wJnPObfoGC8>)?6_Of*uTNmf%@9xdvzQU z8Ye&S%VskL-3_NdGy>{&M%DSbpsHqKptJpPO6P<1-Ac*Ne=m_VvVYof>Mlx~!lxLq z$tSt?5RrBU&3o;H_8)GQ$eMK^fDn`M$Fz}=X|fz^FZ}0UP~f9~y((Qib;$&k;Wr}+ zNRu^U;LW6(Pusx$ks}B%k%Lr)v^CTNsA*qO&G+q#bXQlHvmW%{9~jm|SVWlVz*HTM zl~Q32y7{_RH$MZ%X#`)(#!*v4bRVc-IcYZvc@}XYf}0#0B1ZsAM4pE}cow|}QH^FO zFP8mTeLN9zrgtclTeK$cozsvAO_)G%i>pAq&1sZvF7%(F!s!jhq{yW&^pOG?&S1z-PAQY^|Src!2%MPh0Rds`FKj+U9%zfhdv2e zqAAt9#C>=KXT*O(ebY>`tGt4U2zLM8gwaIwd; z2Kua{L1HJngcc^rdo%B+E+-O4bPBZ%>ekE7N6S04V4&S8RyYY4Xa+883oR0xijwQv z$VuiCY`yL*r$-r+EK{;!LNJ)(_@_fT9#J4 zC5)bBtmSf`lF$+2L)8#9msd}~31AW$H;Mm&8TB67l@_bPIY=X6UWP2*e+5-iUre1|%4wg)<8`}$@N zuNF8c4>XP$2o;`XX1d*vV|D@T zbqsr#9kEg3k8gzG-cJXlbNyoR+~>gG*J361kyFEU^0X*R#3l?8kM8aY2Y7xF3F3PE zyyJR&5xn!a>1O@E|HXJyVjqahD7n84gyM!zqirh*B$5Ld9=e;kVFa z?F48KZ^4Pm+EPh=@=9|kZqXAMJqC~Kr!T|>=l`b+`Oiiffdk~NLJn3d(9HQ=;~2f+ z-+3PIjUcYfb1;i%?H_BxfU-5=7Z{_E(I>IWzO;zWbDgJ2JvLzcc-1_Qxxg@HlLS@w z@qf{aaT1R zsI%UfZ+zAbkm3PBPU+|AGRNP(WX(!Pzs8oa#@{%P_N{A2uVA9Ufq`K;tLoU+cS>8_93#yampO-Xq9IEkSxZ<+Wwjdud2v(F^hpW?S<^6jO=c>)L^>FRPHXw+7>C1Fro1>kjwzn#^e2sv)G5Kl&7gQQs(`*o4c z3slKT<0J~=!xc&5th@Ck%WKzwL-w*NJWDw2Djj{S0+ROw1q*6MZ!%4y6B!X8Xwc5_{Wg=Dyb0dk-{M*|x!Ae!k1-;2A5 z0|4hGtTOh;Fillk!o;nEN)kssR>oIFgjT?b1`||6Jl4&f3BOE36uh0Cf*Q#aOoSK(dpS6jnpmXC_ZsPCen>9Cl|nFYU;2Bts{}7 z_W`WsJ?=LYHH}qbdjaG#DbQ!{RGZ#Mg&JpgE^D>&xZlBz?-#Sj0Oh5@FaN1aO^`}T zo|CNKZ)DLsu&7f%^c;L;P`?!Y3WAn)lsWx2xwI35y=**EkP9%(e5Z_j#=x_VD5Pv546@ zR=AxeRz0}hDDQshu3vBg-#*qQU5Ei@k>PS!>1rrUZ91;+&gBr25vwi|VRal6yyP26 ztWg-N?tevT^mu*Bav3%E_`}WQz(U2fTl(jChS3`>AGS#n>e{@bh<)Tx`(AuCLnL;? zKZDeG%j9kTVjDB+_3s)xd?RK^-umb!s@-Z0zsx1sS}^)p@oVN$Z%&m6C6uKkwqV=cE@swcxfLfUd~W?g9P zZ=ie}Z}e)v40-My>D>w6r^m}0FAIK1bx#MOi#joO=&oa11s7};E-ZP#Y{yDGNcp!H zuRU?ffY4c*ix)7|%2f98#^q?IM?N+7&#TKzo1jq~HL$ zX@}LZKIw#B4syfe$7dpir?;3&k|#ro2n`!r2eyZ|vN1yO zT**A2!3giDFBa>aK;Ny8zr)MrhDL*E6`LzmhOs~e<`QDSPm@7sHixMB!$Iy_e8nS* z`p;f4U6X{rdf&_$S|CHgF{RsQ-+RhScWH}S8>awJ54R@m5o}=`L>RRe?3B35;*%k?6qm8R|w$Kd?!Y1A*2h7Gfyw%0cYh0bJ zrz}5r?o9Kl`xoG+wczHaqqNMS>`J1&?eYye{6pryxP=hUQDd9AzUsL8@-)?D2FX8o zqFu^5uu`I}w}rOASj_cSBoA5OvPmu?U?CtW?JaHjXr?Z`DaH43F|1ZGTqQek!h6JH zJtzLYPi(K2Sk(w^xrH|F9WhxG@qJw0961yIXL;j8P2Dhj=(pJ)=4pDS|FI5Z_o1`w zdR_)$&0$|gVf*n8;+5K?`gj8h;l|a47h^MZ$EZexmciO6{P53m5Z5T4_hEu*KOBh` zx<3l7$3bW>pwdK=5KTYq5Z5>6lQd(w{bTYUpyuT65ogKQ>(0-va>cFO1$N$oI??YC?#3VV6sV5>^+Sq5?j&H1+Dg6m21g%D z511Iv&0r}7fO+gBje6dkK-ghnt36_eQC08Hx!SgacZE5oJKS@qt;QC$4cCA?lYyfD zB-8bV%<|1A2qQ#c)v-Ne9LIhi=GCb;penhmVpADyN)nS?^l1qZ108ZA@|-bHVl{bV z>K4IhAcd5}L?{O?+`Ys^F&DSd&;0Cd2bIp{j%FHjeWKayaQd!O#(!>d?4wrh8*|hi z(C1SK5njXQpR7$SxZgDcEERTfEQTQMnoSJNuPRJ@Nq_~VB>0oO&ae;g=+n;0Pe)PM zO`o`Z>tde4v_sHMQzZ6jAsIkU{EV4=hp|mJmQyo4h$)#G?@kc? z_`-=89QXmQ?*UHKOz}$|xKENQ7^X2_*&7RZUS-eJQuP+A9CK?yKI3U|*a@gQsoy-z zO(IZ@QN!8|L&CKCAA%f166<|!1wZAtH>3fS?Uu%JG@%A$3~^x$TsrQV+Tvz5~8Ew#{C*iI}pY`e+p7%rx3lR zpvVG$Wj5+DqSExR?-oZm=J%3_QY1*n+cV}Z^Ln`mc4S-5NY2?OGyouf(@C>|E@~{T zy6%p)3q1R!6MeQ%d?$rFED*LxaN3}4?%gu()$b11ILSHap=9aG2LIZN-o`ADz~-}> z6M{SGbmM)Q7SHsmba}Fv&)j{3V+i(RAH%=&G=ZHt*IPGY2F z9~#+rs1ZXh@8WPKbwpkK+P|RA-#(<4kmg3a6F_j2N#~TiF0z>)ldp1-CJanhIb(ZIdWk0irl#Iun$$8G+<#FP{aMwOw~WeDE!Hg3g(x`l2#%sbk%bFRtz!PQ;iJ`1LboWHAL zPAoQ-7DQ-H-JhkNVj-hr!FA`v`B`;2w>Clb>gumt&6mVz7RduPjdpJgi1R8nM|@uZ zYhPRSSH|wVP_$RSwi$fl+6GZeA3Et)(|Fo(94^qxFnUWxm~$C2Cd7bIMYbUHhxnl0 zf9>;{n={-q_;J{XahBCSV%5rQxw2}<2V!k4^AEAeA$oLjXAnzhY8D|Wos{RggrE}b z8xcLH;~VMqEpN;Lu}H2n;p!fBM|ocOabm0BzZ`n}yN2(;jZJvPU4~R6*y>-jJr`p5 zaDaVayBi7|VivM^tdOwUP(?0y;rcgPmvzgMGjf2$x9F#@|M}ljcdsBa=;Kjceu>)) zqxJW=roJ*B^z#By%*I}LPYpNXS-s}iQcjgSWguP|4Kk?DPd~wPbQi^7&DIP#{_J2g zgah?33p%Bo0ATK1C(1Ph3mcbbJ!D#fQM|Llw^`KZ&mtwzwa~0gL0|yP^J;!O5$WL6 z-r1IgfyyiD?9sX1LeNbZ@1Q3t2C>MsFVk)^-awwOEO_T2hV1t&o&~cByx5tsme>U3 z-hU?Tw4)T`3giU8gnK|OOfMHpm}^;Ii~&FP0BW$7PWk_Pa?X>!Q;q~)lecB+UtUW| zBk^Q|J-^mTKs&&0?G?RODU zM>eG$F?_wz3k?G%SaMqoypsJWuMp}ygy&I*EMmz%N zd_UdPP#y@#tg+W)o2q&Q9}E%<%%CtK&PsJX0wqEi)4c`I3|A|uW7BQIe=sd>3hvEa zo@)OC+kspi=b|V3@}0p!rw`>R4PiJ=XqjJ zX|clbhs-db8iH{_q=|U4&^b{dlxz$@Cxv6LVU}wUKJYsJwoc`-Gb`ZJT}Y(nNy44p zH^qFf;^rH0S!Ek1>`*KTIf5y3m%*Sj{qQh>!N_b3_EX=ViQ@ajcB9zn2NO-#)C>k%96j&$9HgoxnMl?BA4_ zhj!yG@EZrAa+!sk=}LIXjKWS75r#Y>3!Y#Zj&88P_h%jA$q}cA}JJF20pArqlV}}y4O>(e4Gt$I4C(mrbj`&a$qqj=F8YJ4MTr#BQUDrrzkC)$ zR0hC_Jso!mO)0^^42+A-aQY->HdP`dAsXRym;BpD2bSBfoUZpPd_DR4f1DCIH@D`< zk(`&T^CQSdC=))ZmHdAW%ye0X@Yaon%U_$Z(PaoHgYaD}wV6*wf#uxfam6x2o(BB3 z3APe#^{(itJw#p~eJN@s+f4LiPS3h&41?XBs7)JDJ}GaSN3YSR4`XH{@_{&L1?N}` z%dr{vk~CV`_zi(9uL$nLpi+}2p>_E`{qLEMgyUIZF$AgIm?mF?hgN;P?p$j5Fbrrq zgK&)A;{xJsyEZxb4MZh#l!@9dO$D1F?4X^f!k<~t)K>9s(Nb{EiGJv~Ii}fJ1Wq3k zc^QaGY_}K2di5rV%&LobFx>|tWB7 zGQB=rvxMTn8j_Gl1G0{_@0-KaQht1(>4=z{veHJFF~q-zi1t82H8OWdRyI`=(PA{5 z>pZ*1n`Pp-*}7Jk5agTpuA`l32!HGkEU&8G_5+tEK&lNSydi3%?AO&R_OenQ~DC+Y31Vo#1dWP3L#)R8OPe4mo|l`!Gh z=T>-pPNiNRT;lpY z?&1k}otX%v)MhXr@$|2ay(P=&X|@JK!0}QrCJ<8e*9(qX1#|$nDrDE9781a^N7d(t zj@ZpY1~JhXTc$>Y0Yk`t=5Vyqc}gM==|>y1=C%w>c3cJxs4|p0+K})Ypsxw}Ch1h# zaK0!Z?hAwZG--J?0`2fLPOZKE{6vWf{&B&3QEg#a@}kpm8g z(g9!1lP`mPd785oMOVq(2?z~g?Z=l!9IuI5$hJ-nv_eg8KPwiqykcm4YrWSYqpDg`z?T0*Z-910mV~TUbUSg zGu4NA{CLkCkA*QZku9dB);H$OewygXcaH>)o18M()QK9et=3z84fj8k#>*<_#^4Hj z+`q2=_#NEuSK_zz+g~)hGWB{^_<1tIF|*3BUVXB*+H%=wpx@LRA-JDFAaBGU<*`<< zc71E7#y;72f73GuV~*|J%lf7f(uy_n#;doY1VAB2EXcg>gA)V=kUc<&)&bvEH0G`DS|yHzDupI=Kq-7r3Y>MECLXxUE) z9cB9^thXy&C+@t)6Mb`cn+y~l7FTCB?oNbN$4+VJG=?`rlNQ^g-l#+@Sr%+CoagXL zwqfKWz{(Ey6WpcXy)xdqk~M` zmXD=-@+~(;+^xw`m-D7y3qd>B z8JO(mMRQDqYXVyqOlv$w$+J>&{D~jyIz7XgY#7dDoc1l5S05ffJwfRpXT8`lDtsA* z=8Hx)J;mInR;MkVr-`0_3kSGw?)P5pdK1Olz$b@5=*V6<8jaMERZP5+9b$r;M^_*`U0}rN{Oh`3 z?374&P0c;i-7E{v8vGKh`>X}nt=peqsx9p=>atQ8&6b$nIJ@_mQWvMK@S=sVqdfgQ!KauzNe}MBWZ)ilOeAuLFCX*r z79LL6@knZw?V)?#E)r4y4(j$kIwDK*o{0GC<_Ba^1G zH+9NKa5riNEOXL5`ZM=~n|QtCK%OH!bloLRXmljtZ%G_NLDiF;P2Vwmw>(vq}Ww2L~<<+#vO@^$8 z;{aJkzI3ruqyuWxVZEOc*#uiE5!~yC`?S!OISs?q5+{7OuW}otS!St(e?# z2exx({WnONKD*SEFnp`S>r0fMwQ=#jAJnZM&Q{u)0VYiobX*qBb(agNMV7(vyu zO=YxKkW$CNIsb@FCexdFk7Xh_&kGpHyPo1%mN&#~U}L>2(FRf#=Tv zx{Y0%MqWW`(FQnB>GFICVg4wI&T1>1I8?YqbYB)pO@nokOI>LP-#YoL^FZh7_I7+m z4L^Xgy!pU|OQ2ibVD@yLnoCXU92L!YEsY-b7%XRPnZ_yp1L*IY+XZ2aNIW5kqK`$9 z516;#?aV$$urr!2M5;2|nU3xWMy2y^3eSIV zQ}Gfccn#(16eo*^gNTvEMBGJy?R-JqM)J3;R&(>gntc(^2T(n}^L&5>&$8s`HURtt+7>`^!|&o%et~e1f8;1BxdCNy`~rC;sXcQl_CHtkmmpwLssVY;)~qLMpzY~ECb zMkX(*W#ExFTW*hztC~+DI`7q)H?z*LgD?&tzwwEr|B*duP1daYSk$!)3T9+Egwb?j zZ59mamI?K}(bayBKccv?r#>~jxUYQfvf8zmg}C8r5C&2FQ@X1`Ibv^nP=;lBILln* z`Ak1-%+-fb0yWth!&wl9RZ)nTm~D1m*+a1V;_=u8@>{~dxrJ& zlRMmp?rPW>B)1jtRM5Q?QSn}fRwHJItmG@%xY6RXHtzl80KPJA@AwvJh1<)auG2ru z_es1kgL=QyQdzlh;+B%&b@qYW#DuHB6y3E*9bP1IH8J3o5%);CC&RnGlTGpJA3r%y z;;8-87n40VtvLKV>>9RARmxs!WI<}vxj#=Kzf%pZmnL~Nb$@jzT=Ep_wmCFF_+i2a zc$)Lw1-U&arN93TAYJJ3R%T-wtr5J!z!G(-wg^4~(vo0vXlhy^IqA!W*wdwM5)^)k zr1sw9jv&&`d;gKiu;tuSe}+0D{>eBOWVE&VxecYMj%R8UT*rse02xuwNO0;n7K>%H zBin*nEgpC4DKoFI>FJ<1(MlowH7eYTxs4eAr`bkK+vZNae=2EZc#^bYI$c#^WcB{2 zgyV)4YgnI54bpjem)Ydt{Do}iE&=t>hFAxmbql)GoJ$ar4mqX{r=(m<&mK_$v(m3bg!wia!*^3+B$w$*Hk z5@$1++duF)e?k#xQsh>ZQB^@>N_$mIE-@4#E`sSlVXXwA^ZKlO9Foq+Xf zD4fIJw(y9R7yuh4;VBcBl~C>zo-+8C0S$d5?`DPcG0lVpHyu`U4^!N3#aax3^+q+6 z!O1Fc>9sqEtP%HBGyc@Tn>n&Bd?0dPMr|FX6t%|BZK9hu$Uh*Zi1~iN))7T_HRoV& z`~Aa4_o#brPM4TA4*-!9t3kWYn8}+5Q1UYD0YL2v=~_(nB0)14OYmFi@{?p}p=wf- z5j!5$pWqrD!kxCpB6QwNFJwSKBnYFUW|BTNJYFPrQ@mesHQ=ebAH#iJ8&YVQ*$HQ^W=K9|s@>CJ1h%qQdCaQ*7Pa<9w_Q z^+IH_F4ThR{(JlN$6Hs`?Ge;vU$AQX3Gio~3!k{EPOD<8LLF+>P1neRK{XVjzqN%9 zIrXOZt+$&B&NWW^Tj`ZAW?(dC;pW^kdViT|AXhW2WRnEK6h0H* z4uD{f-<^nDKmmcV{Sn^$w*&kg;#q4h@ag>rJGjdwdQrJ|Tyd8VCF_3FbbD(^+OzB8 zkKv1l1qCts*vY?|_>@&R|8+BDl zWG;Cz;oTl{VlhCf&D3gNF^A0|chrU*1cQR|qO*hwEx-N@U7Dpx| zzSCb}xzL{PRsxryRo%E}oX;Jh+3Cg?Ff{W}bQ|q2VrFz+@B7Gg>0g)*NmC1d`G<)c z6bPTDRvuqX1NUzLf_26#(MzWE7t(7&`=Vu*nW%dj>a<1*Z)iXpUhv~2GbrZ$z67;} z;a{SIy3%4stvjR_dt9Hcnz^;G7x&cFqroQ&wO8rTsSR-LI4G?2_F7MGTl1{m9%36?UHw7*zdG4U;mZK z&kKWFR-o`I=vln8GPF=#lfkqI!k%z{MIyS-uBtNU@m62W%|QX`ZC^F%<`GLvbbAd{ z+HP@R)M}O@gRF@4l6T;aqUe6nsnUH`zsR+JnqY`sWkEozNI&fc*4lL}>Kpu;W4OOw z(&OQuT}LCk?oSvM7lkA!UJ8$nQ+bI^RzQO_GsaEcUvcwWRBqJUO6RIf@nM#U@7soV zq9=*neS9GIa*kN0n@FtK)^Q;0|H_A7TV_jEcmuq!P27)7#u_m@1z}3GMue~GwS_HMOR`OEnnJSJmNEFRo<9#ejRz;p? zNi#SH8OC|`tKVx59?dIJi!V4F_>nDw%r}C#a3(D&Zv4)emZ*1rEG9|zpJjpztFM%y4Cr{no%l5YJho6n zzP`TIL^ndGr4Z5x9qJLhI_jFo8cyBjsZqEM83ZA*-r1Hwh6yC?<*47~RiqTT+UqH!=XDPmx~qch2(E-=z>j<>S61&@NsyFH z=^E<;f51$FL~|H~ZC;&LGHL@Y&+NHF=AS6iv)L)I(7(@!-F9ZgKJzy25gT+K8Z#v9 zIVoOT$+R4vMz{;!a#coP;$1kfrfiPgpi1AW7^IWwrrhRMu1(FplhvIaJ-eQvd~}G| z>WQ4a^EQTA{LiZG3iYdr(eO4#*LQ|X>b~2)8rvIAkGkt-dfZ>FLA^ub#AFkHF@=iw z&^KLzY17RvJujnN+z0Pa4)YWWY&7#c)U3)b87nlK8F-I_G8$>G;TE%?NOp41kKQ$_ z-y3uF8hWb<3bNGGDEIoScm4Ao-ikYwXLxPoO6Gi>=kWP1UM#zPJb#;6!M;h3tYnjz z-QQ2`8Q;=tnQzHj)4yg`TgaN;p)@iLO+DRxb2zF%MU7%^v}LVmAX(8h&YyE_sd?+x zsjk}S{se@FlSEBu%75$%Qr1Lw4q>Vq-f)-xH6P8WL()ShX_^w(7h2BVNw?zghf?`fnY>i8EfcG+O}n5vVdwr+1m+y0_ZO6uY}d4;oFIC*{_8k>;+dHLwE zP14I+Ebkr680%3Sc3FG!+p8v*7(l6pCoHuuprxl_hIy|i9#I7t7cYKj;CqC#HUDz^ zcZd>0o8+TSMIZNkSBu$R%u|TyMpfeT`LJDQ-bZ2k{{^gm_eTt(+5O|Y51PF&iwi${=+ z{IhYVXB%U?#MJjF_|C9Py3L>cNy|B}3?SUq1$S0H2-XZGzlB1;jK|&4*(T9J-Qdw2 zg%VTs{8FtR^h_$ZPl)LxUsbH@@myNdT*58m}JpXVYnPF{($)8~eV*EO{wl~%PIyd_^ z&kW`XtLB#5ZfktjI38PdWsMHpW?;c|Vc$i2yNeg(FR-f#{^0b!cu_-5%@0mJGzH?<@6FwE!3ZX-{FbPYe~u5x|Azu23L@$BD>C$6?;$m;+)P=50|{9 zX#DfQ^sn;^!it@7lnb7rq7U86bpVHvU3}%qptY$1ndaZReoTms$NmT<`OAzNaqn#f z`=I~9=L}e3`TC8~?ioV;Xez~BY~*I&Q4djVU3x-Ns33a5oH@aso-;0LlQ}{ryh|<) zb@ujdz^B)_3f07%%@^{ID7X)4wsxV9b7V91b>~(}oFP}#xxF>BJK1x^Ik>MRLf3F! zOrbg9yJ%+5`zr8^6VRQhK7+M|F|MoLXmx3Eo<0iY@ZrPH69sNY%$wP}=>FEl!*iAj zD^dRMKhfIQLRF@_UbD8^Vy`M8o>wmp;_lvUAM$QvtLJsWosB5WidqS zMZ=d1VXPLp&6(-=PL>xRTlY%O*|TRqY&refk6o>7J)7==`}S=xR?oC}8F6jkOjH>h z2SS4c8Xk>|_J7`^D1=GT{uRP6IX2Tfwnf=An(Ky94;M*{WJJzQx6V<`vZ`Uvx31_K zxv|aJ=1}2h2Vt||854If?^#V6B=98m)(sj6 z&)U8G*<1Nnr0|GnTJPP!#T^;L1AHTiOWHR&EE9Tl` z?IMiS{*1T_oCpikxxZ}T`C&YP;m1)g=-R;YEacf?_)bzRvGC6gcSJEv!ZkwK{hI}y?!Aa8PT%Ttt*j0S?Rlo@@ z+rm{ACs1zkC>a{WyNGby5;yYhZpO7StjP0Q0;cm@-b;MqT(ICu@bgumA%p@KSvtSe z@hk1piY;mHv+f^WBO~+1VnyDoN0$XogL9_qadd=-ttxp3r_@*AT%oN3<}OjG-SbbZ zukmYM?ex!_IhnZ{D|>~=xavAErz z2pGe{y*U70Yhk%{3DEWM%un;wJ=tIKcvd=~D|55`Jw9G9@)1S(wdf^0o}L2cj8~7M z*Of2ZCgvRq4rn;3vqXvZhlZKbt0WAmc8KrWX!7~~I(#eV`+ixdL5DQMp9XtsaJHT) z!rbH+VmQOTkE2v&eD%6~S#EfVxW49?tlPkM#^AFHw=`l=!i%IzKddQ6$?{su_x3f< zB|LB`i3nUSOQTJ}!A3t&2PF&t3Y0oty?XHn!_4GC5f1VFs70Ae(=a zqJ2%oCh{LfguH-aRbsIRl2!szdIlS;4Q;Ja_{dnbC^a0kwdF(capmRZp@mUfFIEAm zP($BTZ1py34(oar(Tp(L&$$IxIvjW}lk0hlkY{Hjs0Cs>$1r>9dc7WL5R@fO&6VC| z8ta#uU%Ytn#s4GgOTekn+V43|MH!BvBtvGRL^5TFjFHL|l`%yj9Yl)ikW57sQlvo% z2`NL0PKZ)y5;AmXP%0_Wp!8px+s@QTxIC{RJ&yDp0K@7; z6T5#NS`|&7C+AlR=DFRfzT>H8UQsgEn6pz`2i^g;I7t~mtPXB3ZtY);Nz&D@%N-G8 z{LDZ6QG@hgeDM}D{dSfjq#2}WwS{xj0$8zM`q|F$WM#uRn)t}3{AeNpyzPCWi#c%q zAWPMCCEMvct4=M`sPWO9$g#WD1&=ho?mz$cWiY4(l8lzLVlL6spIAX>;nlLSpv2p> z+;7F-x8`q*vngLcQ-1ObH2w&1$r=GcA0FraR>Li_geLa)#7!39#IuEp977U))FH)9 zLMe12bH0fRK+|J{?yTJ3vND;CtKEz((#bAk7w9(f^p+gMX3fIEKp`>n-Y$JYql=i3m zdx8pV#+39AZ>JyTLq0x7{lxwEW)AH{jtcuZbIE@4g&}qd_!URNj}mPX6856!dXmVE zABOg*1@x8P?QwgdwWB8m&8o7as~tQ4CIAKJVbL{}%ls*12p(zC&3OM9p*)p#qW3!0 zVE_0+m_@YByf34E3{G%)zHXe)dl~-z*&JdwSPu&MuX@&|UT1t4XukM{QnZm)?<)=I zh%LCY+i=}B=kyA0za0d+ty$2WPo$<32k|Il{Ldp%O#`D> zu8=nnPfPwABJ7-W0MOe~9DoULLCo+^Tl7SV{hK`Fn-y@OG>lx#)3<^Vwiz|vpG!`) zQ?C_gF<)-z=ZJ4ri_g-zef0^-z{9`TC}nC+oCc$uAC*z(x|Crl^1>I((g&U{h`4{s zpLtnj|M;(+i@(;4yqP$BW;dexpucio^$)}Fc>)5`P`Ij{koB*ADX-^WuRakDg(4ub zxQ8C|@c38cW=j<6oK3Y{%4wFY$W}K~=rYXsC_M7XpqhK~kI!oApEe2F+6Y{A?+~Xz4 z`gb8oShTM2ir&19e=i3~?%sliTdMIPi&{&AXGzKCp8ogAg>vA@Re8+TnK5y}Hc=|n zb_~3sWxhs3@am3w|I^7k+I0{WB(ztYNLTe(@jBmMWo;`5#nCPz@DZ)VSM2$fvz@Avsxh%H z!_0&Sc#$2Z7l1N!X?qA8{XT%UXaQoP<^cb#1H%RfsD_fL(BrybaKxqjJk(-kRZ?PapS_{ch$ym>T(l_CDsye*Idr!(_7J&WC%*kwNGF-#eF1B zIZPdT)I6FaQTJPNA!3@ZBch_GxIZCDyy8+#+MDyT_E znfyj{EmEC###gu*@JZ;c}wCG<&%mWB4BE0f)bILJ*mv z?AW}0c=SRYuyi^4+*Y0n&)#LNwuX1(%jizP6Ur{UvE=0I-?#D9so)vRP!#&duo6Aj z91l|t?{ZF%I|u&YewtzMbk6R8>X_^?^h$p7=8B%fXh{j3;BmZ(_NO!W;`Jh+N^L~9 za+vo6=1jj(x+H%}GEZXg(U@MhA;oP3jw+o=Oqws?FJoYMz)p7RbR^k3IZ5|R*N?Mq zSz2G5Aa!K24xz6h-*A7W>cqD%$u3AMP!f=~RB!vd2gfHc1Ew(-!t~i${gKyzDit_C z?=9H~e(yUF%>w(kkc(xwnTu&7TI1bKc0uE|E-i7nvR8=4IcwH2M3H$T+-kcqjk8XS z^<94x5{WES11$UaVzXBDuR+G*~ER4qm@Fseqf~JKht|b4BfhEeQ z`7WWN7ppMvzrK4ohuGlPON37J|G(A@=>fu#5t_j(mV_+KZzIGX`sG#JnUo;FGm8=# zN}gLUiN2}(NUN*W=}^TSLJ_tLOLQePHQ)rdst7qGAVpADtV81n@Ux8%GI;P|>17xq zt&!PI38v5;K!&@j_v$_tB(C`w7&$=4m#bN;DrWAEvf>LA1|q?+Jm&4~bqPg@o=sUd z53nhf@y=Un@q7Q)nwFL|u;*!xSMRw}mpN5plaFrdNBb&#e;JQH8~z(fCgO>kq+!5~ z#RW_HEyyVhnzGg0LEM=ur-3?3L@%^BOzwSe$IZQC>#$Q<5wxi}emRK}`jxNlA78Uq zL-_33vtL-ZIY^I{-_G8<32QkYNZ{iV4LrY#O@cl9-|F(v6fujGNSEU4_G_U#s6StEgh!a`JQI@dbYj08h30Dj~fSPBGrPm zAKfM$KCF+CTvw(o6uI)x$NGPM!dTnYtib;7XFmBa)1?dpbWcmr)M^%p6keyL5d_bI zDMG~#-o<#3n)3#*eC;R%{odzU!Jcy~ubD5sP300$R0yF`vw=oDF;H>6so2}wYZghfCe8oi4!m#lq{3~8`Aj{a6w}hOFmKf zH^!4Y9J_(!|3z-QKK(}C7Z4CQ7j+n(q)F&_ZS4mJ57qy&U|Mm4Q)xDU?qg{NxV@He zGr74r&1QK5{+#>JHOlPVruBd=aS(C#7%tQTk3JB)sC%8_VF2FjpAnEm89LDe-#mqg-cwzZIsgBDzzi3HEX_J?J|B5+p9qLW;lIAy=#n@?7Ujyq zepW(XOCEudHBLqQEDJjq@@A_x-%nLmKqb8E4_AeDEh4{S2>u}yKHsM6=5D*V4x0-c zZf@1#dH%G%@cC%TFL@`U&?JnGJEN#Sj^o?g;MXuc%Zg3w)RhIRzfB;cnc7$SSI3_S z(~CgrybD6jW{g7vu~NmNWk%~E$-o$GU353e20d-O6+qsw7sO$5v-o91Q2- z>VJQL+Jo*Ik1QFzY!X$d`;h5;#I&G&dGnrCylEz zW6>PD$qMnG|B7ya_5qTqZ%xi}UaBT7{J`gL;*CiG;WGP6y3Rr)mjz@<80$ujoCv)ho zJ0GCWxPXjqroN)|AmG_Ok5=i-UL#)&+wj+Ks$r06v~BFJNhFo)JP5Rp3)ZUxWm~bC zcjP)Yua~7_TsyDn24-tZFs?fN@;2Al9QKM*J|qqz4U|vh!PmcjUc{NX=--cCo55yK z9_f1{FFz9hc^W*1wB3b5rU0nHl?ZO%oQ1tiCvuxL3%^mLRLhGOZfNJ;KUt`~d-BBE z1X1aXfCI-35{4osc53qsActz)t%7ycg_a2~QMrHTi~#f20>Lc7>jnU|Je2-N))xDp zq+PAe`;BsyUxKZz4@{$h-{LACY1dxz<88d3K2|ils{+cA1q8C@yJ=9oaOZj29v4r) z^tUML9^E9umzfb&{-yf+SK#-yTRo_)g$0pXj|DNwJqkl0+w0fOM}LXDyRA3GW*-rG z#<6^+P)>wzEZ*%^fs`4A3+&1gnfO0j04n$hp7n?0p&Lr4O)d(46W{gUcz=eI8P!mn zFSC#DcZpVi=~um;G0i z?+-Vay?kG|Ip4kUzd4k7nY8ii?%&=#`2_@#SC}T6Ng_YW!H-B@^6%56FC*_Pv1<#* z3fbLgw+RxcIU}6Gtu}^f*m(r@$Ixd+Fq0>)X|pt2fJ(Dh7vgZ z#@eB`QTQe3T4`vKFAZOR z*2=)4ZO<68@5oTYmIr!;!_j4+f<#VeV3&rxtLv)4f>I>n_Vu zq-eLTU;+6H|3Qo*2j{Ggq*c7+pF4N!NI=gsI@BkmAkN88oJ~c*1a2jxG|Up8MZgk)ceU^UQ%}kzv#bmbt?y20k+88-ypJmCZl> zdG_n4khQ(djM4_M&c>B4$?!c7y0yq}JRB9ujG!Hy+QpE!t<&Ln`LhTL9j}YQ;7N(7 zZHn^Y2+)l>9*Y5jazGGT%#>WTzU^ke_4a(VSX8#A5n&@W#};+bl91Eb>5$Cpqn^R;4Izn(R0t?&GMZf;v@<7{`9@=x9jC%|TP z$>U4~uJ)CTY1JR7cWWn`a0EuZG!iCn?BtiP_NbjMrxI~PiK23wZugW^`ST4FG>W%% zr2!~E#)jul9JdL`70S)7Z6sRx3N_jS8|`L~K?#HhVLi#sF}c6dhsfL2%gg8?`d!wX zN2-FFgl14jQqeA6+V}Y4n#FKTO+s|dFXH|tOPk#n66-59ui<@}yz>Hob6!H|+`s?} z*Aky=SCB{gY_4`A77}g=^m8K>!SB;r_2F1y{QJ|n#>mBf7B%(4_8vwTxM~5vMm}G4 zUlMVTAmPD01jzg62Yn%XS2iK~3!dE@6@vBr+7^FY87R~_6t5$sy2Ag4(K z718p!1Z{$^h+?(F0zo8w;dPdsJ)lWd|PjI>xUlw592!16Nw_gY8P-8W&{x z_wJb`rC0l#%j951_tOFwWP`D3wHXgVnn}SQas7|9nz2A}G83TPHR)Zx&0{A$8jmkt zjNbk@arLRXD=s~1u=nR&{`&XgnL~oI7Va{8CCn(zGK@AYz2kgh+LC0H4DR=`9rQ$# ziTFKna|{e6rQ1TnNAENpG#H|?geGstSA?i$1?s=$?!T?u#5%iXkT%aFz(%-PrI`qP^F|u6CwhjQHmkz36RJ?UQ>-;Pz&9aPdVW@MK>{&c> z#v?McM)*^I((CkZoMEL>A6zd3R9YX^psX-4s3ezy!G-UCc-vHT{^!?wktEl#hA$Qy zB7GGw{d%&xZf!fS8kbl%2ZdsvfsS)lo%Tua_j6b|`qC)82)lV@vh+dk10JLJZ6wUk zz-z5!&xlXe&ELO%y+Q}o_vzE8r#}p%#(~9kyn0xeu@xO%%3LJ?0|Uy`!ODmq;ILZa zEMGnS5m1~f#lqD=op~2Y{i|e6>d%<@`(o!6e@LZvWs>b8TaX69%b0gb{oq|}njRg9 z@UiR>f_2%!^uW?TfCZ+M?9SSLv{UB6rm!Dh#MvEoqRt3{4;bBzOKJ(+wy(C6ye8s6wRBD!e?la^wqpD zbld_Z&xX&HIZ`ItFjjmhF(W|NWRNpf6@hUec!g+-%Qmmolxiau%Fa3VM^w3ErxCr2 z7M1fpN>&wAYpLL?S)u7~8s&2A1`yz+F^C!6Q=O%%s%uXfYw&etKH*6)o?RcEtB;KV z>qc74vW%FHbstGHjPdLHMV2VxQdN_TDAlXrjL4Bc(16HsSX14!ZrX|=3>z#_bX867 zMnyU;!<}0OwYtx-?XXR%@+!=X?H4p`mAtvn)IM*9G-#1#dEd7GpBkW(%jDJb#QYKf zcISL=eB8QQcH;3dW{_t1fbfw#aCR6>Z~izlp?|KEENu&+XDqp9^E|-GDLrtu0R&?q zV#Xf2&h`q{Cxv=v)Y5tY@~#NeGq6bHmx=xX+ zm3Cgs^xvOU6x%6P*ZO;ZO^uM^T0`KzgQLE6)Rn;W2wsrc1v3I!v_xe-1c0%`eQEWL z(=y4ky+9lS%eH7}8cm;h^VWf4eQ*$5RX45%7&_6);GfQ@ z(tX2V{^X#seyWiFE{zMcH=tE#f;&f7r_dJP4F6#ZPKq4rdH*zV44TOu9114oe2+R? zEodzB2avc%~f48 z@H9lquB{hhEAMzcK|Qb%^)IzZIcpxIg2|}CL@x04hiF%*TQD7nYE22Sjj(p?$(i;t zMBP!BDBkI?AkcX-YSG*Sf(-a9n97_;ge_Rcd+Al^9i*m zCCrs{INwOIo|<5aSE}_zO8z6DsWWfm5pQ7i`8mzeUGoG!aBx4=t`>|9Ogs zto2EIj9ip*pVdgRdkZqhZovq~MB5MVnVL~iu=mK@55IIIrs@Y2$@3y&ojYINIdm~! zW&-Oc=X9K0zWbM2t`j~YLzKo$xP$?k=$6O~+ln8kT_=t{;;taQU^~y9kI8QAj$&8P zHOTqz{x*2ZFr3`KwZq6?Nhpw?r${)@R*RN@IKSQq5yhpOMMj!n$xMv)m-WvzBg4R+ zp-5H{$lyfDO3|;Wb>u)5TI)l`e_As}@GQ8KEA~C0?bMa(K&K((KA+ zraEfI7gUJ*_e0>lb|D%UIY1Jn@v~fuz)Q+`-nYN@p=o#i>JM9~TAlE{csIhZmT&jN z5eXEpVgVoe@?_2Odw~D1rAjo3A8a$d+2e7{7lCFWAIoe}W7;BRJp84NoP}RQ#nB91 zi`L;E`9B;|Ill1bRw3)OcvGhOzAj6*rD6SfKDwh{pP+l4DV?ZMZjUp+lh<0Q({U)J*&P2-9U|7<81 z2ZXB113kqnc*LmAt3;nJf2t=~G|OP`hPV@wybqFPV)i%%9=apHCH8r*$~3i<3(Va* zVE$3GHmnhp*l<$xkH3Bd8q-;>R-h{%P6D^dJXAHyv;FHhn2oLV$Lc4G;bYnko zDSE{xdz}0*FO|gL&+?T4$acGb|132HKT^m>`WtY^^?vVFc+wWTsi4SRYS{q5`INcj zRu6JHn7)J13w$jM4sNIm)3RS)`(AqrUY&T#pQ-e!ARwLFO-(AxbhFgLCWrb!W|2bP zRI2$-B$Rm+nn_nxSldopT}T&uHrugp49xolHoDZ) z6*i|ad%B?zxesdWi^0hULs1S>8%t_Ek|{zr)UI*}3~i(28nEvg1!FC*0j2M2prm_N z5f$c6o`XRT(Ggr~Hm!`Xt_3tgpKF&n15V>->SJh)wr9W@T6EDOIr3bHRdG1$6D^Z) z)_ihu%fM$y;q*rQ^#=>^+UTb&S^xQPX#NG7<({D0KTJfWz3!rW?YF&*>k#&-EowWs{L;C( zxYY8s&z+dxv+IL8vujBL>0ttlw8!)iHBj>L@KpwF7d$#8j&8YV|O8Mu)!VQ*#7HkykFjYPN8&L5*vT;>JB6b#@X;z!8l!PLH)89n| zPuR-rZE;?-^4#+C~ZRm%?NQ=XqEU|-14!DNu8NX0=JDA4a zrAF{0QGo4@0EXq^$oBgmRQc} z=XVZ5U)tGi>t(b^smQALm0f;%*W*a~+{s({KmR<2 zuBKmbG7dAhP(kv@^>-DWUg!Ot)_t|+M7gBiA?~XQv23T+!~K&O6U3;!>y-5LoWUL_ zqDq_$#lS{y-!G>zb+H3jfFg@wi7g*B>H@8zwyE3Z^RFL4C*U$3;>YQ=woE*Ev75oW zr+LS+qc<(bQ<7N0)_)L{;CvxXH;0!*AYuX}ybpt5<$R^s4nx1<>-u?p1 z=efYD!}kApEqo}*lS805jR`D;%KJ5k5;;mNtGhC{eRT4hRJ;5qJWK|O|EW{`DHvy| zzoVoh4_%(yG-%X5#nS*T+83hBzU(bMb|D(HAuPEut&L&jpzz zis__m%$9kH5rt*=MXuORjh9%2;RblJ|88%)Fdl4%AcH2{rd`R-FW%+UbO#~s0+_Y= z^A36#7AFon5`L`XufxnYC(%C7E4{V@V8h=}4^86*y*O@we6vdX#bU!VL5O)Q3 zzlmLWF!8f4bh}k3_MC%*;{uF^9>c-)@{>Izf`Fvza}BT53fRhsSx!ZF^FdaxENcrj zXU*wClfj&PlXQIj$CB(U9 zU^+KEVOEH(n|7D~dI{hE+*5%eZOT{euN88hHG@_p9l3~lO(0>eYgnk#%_zK_vWRIf zM}qpPlVLIALvySN>G}IWf4>64-s71zJPlEH>Rrc|@2|h;EDgjW83pUCsA7UDw8+wu zXT1TBbz!C3it}Ob9?Kz^9Lh@9M;|Qj@!`cSH?phiYx(j&zw9QwSJ*ebq%~it>|bwv z5q6V~D>m!VtEY(Oj2kpVhl?-^y~Lx2v~e|kPQI?ut1JZSL)%Y1Vrx^%5i7N+nkm{j zm&};j?RB<3l+*#PFd&ejuonOR>VI*Lh+L^5)Nr?J`Rj#jj!A`0ks`hkmPFX)8CNG- z^wUyo$x(R%EQm8OiGHOnrfoBM^xsH*;M=wpkikICje4WGo9MAB8j)793!!^I-yg^+ zwIH*HpXR!Pl^7C>JU}2Dam@wV^{{uaB5~wrRFH1Hu@LrmqQ3MFEI{W9+bp}UU(2O;i_z%i>dHhW{E+KwxjpwAXA9{(5X{FFxDBi-fcQnvkVFPoS**0dmv>i9j%FiJTS87nQ+QMaq86h%h}R&k5{+^gJ$HtPSoE+eE&PEG|~P zy3Oluk`Y&z%$^s64|H&=U183>E$}YprdOAws0$l=7vOm}V&M98$J$^r@lt85yHb0O zGOtJLoWL3!Lup2hxbDn&qzL@xl`ASnHU~GAUi3E$w_?efKchI~;AgWsdz;5AD;8^7u|8 zfwr6+%~i`zFERfQllPPS(D%=tRgKru7b$7>4QsAz`8-(K|6%fv@*~&t0{*qt~b zUSA5fZ~Z7wkRT`#b@#kE`?q{UCKW2zO}kiH1+deSwV786WQTjH+AfamS=s@cCPJKhs zI)Q>k(7|ME;o;tDb< zeQRgkVG%oAstfz-uR!7w)J~Q@E})+z*=az~(@5;VHw~0JM^RR7ZKxR& z=X}opeXZyVW7;7y|1?x2%?w?P-9CuHp#u(0sc7Y?jk=GK59EMkd1YV|j3d|W>=h6E zwN*1;#lX8YWsQ@QQS*hb4=u3S9Py_wGB+7+D&is~LFi=#e+`o;bE83{TM(ai+VZ z=xAq+?wHpytKwnbP<-^#jfFy!7@q)L7kBbT_fb_T5=Vx3D73)d10mgv+69?BB2)Kv zHL9~+gFZklYVO9(ZI-9GuTVV+b^>`&rV)Aa?-9K2gAjl17=tCIG8l_(ewM^qs+bFU zJ6p`93qJC#Zb4`Vb7r@UWcY8mrnY_~1DTo-&X>K-kwteu!iDLm=JpLSukR!RCgOCr z;~tNZ+|;Irp#zIXh1*#QRERp~7n|=a!IU-+HUl<}^b42ayVLV2;3L=%Ji9;l9UT4E zu2>h8AhRy=@2nwIfSuDyl8#ED^3FA63|WFMAj)s_dw+L&ds2*VG%6I);91^3Fg4Q& z)E?au!9YjnR<%bCp2rTU;l;Q2JUnA0Wc68O^}iD@6?sN{vT6oH>YzU>i+$DJDeIkF=qgc>yf{4E9Op%w7{r=KK~2=(*l zINaz3DxS)Kej zLDYPgsc`AfH5sfF^{^gEmA9Vv4ok>Mev4PQ%Tx3&rw;;yWHd6J%Yr3@S5mU1{r96? zuS~m%X?937{7CIGYNsySLS49eZ4s==NFD{BIB?u+WN!zB!ic_e7bInQUkH@%w1%zk5n8y7`wgj!1m!GcX;*zEz*Y_D z{A0d<|9+Xai^yxUG@rk%hc?nan6q|hc=#B??u`>yNR0lYPz<1kD4h8PekE!Z{#XU6 zob=H6?=ZRP^*MIoJ5kY)3R@VYk2b`RN&TCHh+VMTY_l zd1MKvHtXkQ+uz?&uFE5{`N*NC|jRg8qjV6R^y^Wa~273Zt6XHG2rBU4WAUHSx0ig<7C>nY9STMXwSKV zK_`aBiM4^7%w<`5)Iuaf`ex$s2zGcw-%`54bp+)*A(cE}+ba{wDH{C+XSMc?rZ98n z8aJ$e@DgmIJ&7OaQI9j-cJ@aP3sN`cF1<~@JMIXeoc9R>df9dhLYO8q87nl^{u zrdK;O&v6s@6M_lbKQG%0=CwvB(U1+)bshk)S>Tj7FztKM{x!66w;LhWh*sVuk^Gu# z)|^}#*SA1H-%Xo)>Tv%#W&8xZFC?tFi60J5)+GW|$+c>)rR|E{ji9F9AiHOi-QTm1 z-Gj?&F7BzFf>oHNpgLR-ry@G`!1+xU&YsCc^oLoz_!o&@G+!mVhrK>Jp#^v}^9_cc zi;$jowQue{nTf}jx1lt@Q9NiSoEtFQ)0mz)r?(F5F0p!L);t7x;n+@Yj#QhMTSxER35d;_w@ z#*Y&tZ5RR=rFaq_{eq3<&0EF%&i@9CB1eSBSqF;vSX_M}1&{DVTfKbjXFf3jn?zPt zHtN%l@ZT#R{P+vQ{GVf^C?>#9$@=qzRsac*(ZAZCM$a zi@BVP*-{0G;rr8_L#*47GxPgax{Ko02n#UBcK*5rgV?8==0N9{3cf-cSr_w2*69;^g~4&644PM<#h}5qrGlP_pR&;S%?*lW1G<; zM>g^GT+2JQ#_aEFo{Xnc|9nAO-5r;;ysbzKRZ$p1a}}Yy4XUe~=ppqbHy^0w@8X!s zfM8mn-1-pz;Pi60>kV?N($`*}Zrsk>5OUMpkm*ne>lBJwsQomm649HNg<%NKZM1aj zL&LbPk6f|Cy@v||4&H*cRiI;2;djxxa{jnZU{_~nkISz-YU2N*`f^kNx4_U+O6aX4 zGkL!6$M`Apr$mMo4GwX|-*48x;f?JL=IBpA1P`4TuXta$e>JoeFm2p=7^5)^q<;x) z@x1COKwmgvymG~*M2mdSbhZc(F783BLNMJqVV6Lj$7r&B?;;N$$(uzrUS(*nMSouh z_)F@yLqD!We5C4GclnR4`pbLxo0+Pp?tR(U+uV1!>19pCOa|3YjW*RL7ZB{nXqL=>$7IHU}BVS3jY z{;yPT?-W0C*4|jN*u+doW+lhR$2I#I)vCf@54}aP05J!7S1XGa5jlIuG}DFS`s4-?T@6W{xk0Cu?55 z^!GjPwe+o9bC;cl(~TQT=&~rO+VCiUE|YJb;AP{fiLGE^;+h6u3!?LSFnSzxUx%}K zU=#C-IF=s+8QRn-^);!$KsV3^8|(XWB#Yq_|3&-U7qQQ^VP(xY{QJ8|PU+M3$-y*( zx(aNPQ!W1mWF}I*DzR&5(9=gEQ@|`~?cnQ^3{Gbm=`|;oTwrbkn$VRf@^Hms4Cj+j zV>Du2q=S`T$$pWx!= zzP5*Z$97IN-TdXmUr6^3Q7?hXbwO*3eYj!j!hb+~#!F83>_PlZUV}j3rHlT!>=*pv zEQLPiGRKPGN_`jASVCpp*m=a;ZAC_68uDX5=CkjjmDh?*Z>gF&TS-xP|3AMQ$=Pty z=nt+;RkS%Vd$u#=Fdz5bTSA6NFX!B|eE&lu;Td5EuUs^VD?3o`2Te$nj?*%t=c|=%@90weCv##V}p82ydVGNb?I9 zID)U%@};kC5_`0eRN_2i*#uX(Eg0i^-GG~nfPG;;oNHeD^q*Ee(}jzFrBi#?b&T-j&{?tKfjx%w1TG2GJ0AAa(TG4YCZ%p8;2yUhmrn%3o|{x7|Be(;o&aXyqCT4MJ79 zOw!ou>`-Lbog0N4x!EZF>c`Lf%TP_mjJ|6+wHF)*@PZehl2X%Y>e)Eod5Q~wLEK7U z;tAteL2gSBKdtQEuD{ewfO4?@gTXX+LO?&TcORiYy zu1~In^Km~t^gXjss65+}391+&6m7Vf`|v=&gyz~QC~)EoyAH7R6m{R)|3XnDoOfo> z{Di#3u+8@;Oo{OCnd+oq6nS5_@b5=Bb?(kYC)&w0X1bR7t&ezLArE#X8X1~4?~Rg$ z{V3$O0QlVS%~-pr0V(!^GZt@=La>!hGBL)&O?`f>6>Lncg2U0ozk&dPhzlGh{e1fpEL=xwdC~=+_z$z_3NrSfA8`fEz|b-U~J$!K?sw zsq*Q?tt0emWOmY>i~J^zJdJ8;Q>}t5O@lf#?{HfuLdZ$+Gng1QZWnDcA2mZ|LLes4 zfP9}ipx~~Ec<9QMPb^>AH7+6?F)9}XL5rLpX%cPB>Em@{H=$*0*Wx_#A5=r2ID<{e zx$pP&!n`9nPjC%xJZNtij3Z6dWG|zJo9J?rO>8QQOns(R=+Gs8j6`r=#rI3V-jBDV zYevz5y*3-WZ(Ob_MaN|uoW~KK~TiGwiqMV0` z9z2imy>r(6p_R()8~@=As>~scm=YeYbh#mv)VFz#19VE?9%DU!wBiy7a2tPrGQ68O zLvx#IfdV7Q3wgnCskaK9*BYz_6!#6e+X0FYkCbP8jcI?;7ek6BKQp)q3FZ~#Kl~C$ z+Wa`Xu0%ZSVTR&St9S4ym$zHBeGkp3`xufF(YO-5;T%6N)!Dg>(U(V-&#a!}-b`F1 zXDhbU#Q-<9q>$QnbJNMz(t80r{~p-&o{)-4^29T(gKEU9m2HTKcZH55ZaYSCQNrb9I?zoeW`)X6C=B z3cI+^6*~u?#dSZ=Gkn0t&Q0-e%jpui{PEDo@Z)S*hbCmcEJ|WL6^N(CETV$3RQ0qr zRODmV&ALdtR-1hH@t?yQzkm9O`WZ0JaEbCiIC%Q>X-K^Dcy!1r2;xIiwA;{-A<(g{ z*}J;&*grs+H;q}}gL?5E5R)ceN9=wak(e*~#E-|>?d)k(&mzIen2G7^`KtKhP{+)+ zx&Y`vPQ#=Rfb`R7d%Fl}vZ3(6=!4~fBX9UKKmmX<{`wse3^N}KcHskbo zz8k?W@f})L{6vj8@*Z0XEHQ)b;t?MX2%?}M*9;7QfUvzPUG=u#8+u&bmFS2BF(l5m z_ztP9B>8994P}01Jx%Q zy~BoW{O#x*4nwSNua z0^DPc=~5RfI>di71Sadyz~m|3|7YB++cD49bR5n#BV&Z8j~MG>7;U^~3A^7l#`l$4 zL%(qON=?mM5OD9|B&Tf(b@3iW*%G!yp!|V&KTpK~P>u(F`*L|Bh7aXfM&*14@=Ll> zvj&w(qp3G(L0-19tR{$fT87?ex<0}9?^Dy0HzZw+%M|;zsmReAqSpo4V3*tpI0Hnr ziKH<`2fH`!`}s~G+l&6S=f2E=Nv36zF;kNvC@%@%c6e? zv!v2-q0s$ef^K-Q)c1#{#g9$@w}$LQ2=&+1m6&j>kfp7pD8~7I?+pj}MHZU$fYl?#F`*0 zo!u8RE|q@Ksx0WV;Na5dfP09o8VT}bv4){yoDb)lKEgpkeKl7@L^q^>`Qwo@V6G#) z#;ZdqggXqt$>&+`Y^_?>D78GqPOBbEV^yHoQEe;(#m91K1CEBS5`nt;Qd@X8_F15E z@3|gFUy2KOoS)bq5?EJ$b>>z`PF3O)irYEGIzquttK7#NGp@}Aw)OnM-63uYZeSV= z2+YzyKv}b>oo*eG;$5I{^`F7h&^`(#LAKL1bEMJE{`&Rn=6s6xlnlcLGK^8h=?@^V zCUx1kIh)D_#rs?40*qKk;hCytD+u?rsffF7o|Kf-m)_bL+l^ho6t~c18st?XIAitBz1_9%0k`dJq;( z*4#BFe%ce}lylfQ(>{;?#_RG@NNie6_h`E;v4tluHou(JPM8+f_1xd&7`}B-+-+5k zJ<%v6ngcO*U-dC}uYbb{>i~7=#HHSx5O)i>EAVp9(~z_4Gjt4H;5HmUuuMV2$1$Ysp}>0wwi#7um$UXZEuDK>~e8Ewi}iQ zD_N0;9|rGOj4c*qXT~cvS|0rB+6(4R6J;Y_gtP+VtrYWJR82N!uee(1ko(FE&CBMW zH8rBW@RohY3x@u2jM+1wQ4X9;+HjX+ZT8k1+BgKl4a22JG`2y&}< zhYZf4YAf5-D1*BMEu8D=-o9$o!dHX7V@$IJ3C9+?8;hpdZHg7qYTP%qzJoZppfFCz zx?f}8pYbY8tIfb}+8nsn&$;dmbxnujpkAO@+`k=zvlR>XDKh?ebVL{xi0z!Yum3HG zKalz9Z|)9`i3Wl(n}|#ZtJ7?eR6(5Z;;h;F#SPy34Vi=B!MN7x=+uU{|j*4vY{aQ%{FRWCo$Dtw~`Dib6(A3X3L+Nq~S zAhIt8Wa{wZWvzdLu_vYv7f{rNY;G~uKgj0KFnqwv4_jb(K9nyQ0Z4QRbyA0CfCMJ8 zr%1h&qZYdMDUEU9J-Qa_ki=n&wQG}>U33zqAB<*LYter}m{uUruu+${6X)zC{}3iL zxBDeQ*)+{j+U7KvK&+2%9%PGp0F?Bht6=&`;X+jeHd_d!B`F|p$Sh`{=dFsbCCQKo9577tmu=5VJMrH9u=hpS%Ja)B+_`RwonP{Xyr7_Hfa#MVsbqqKL$ejAFO zy=!U5*%D!;J!H3qzJS-9f1`sTWdjA^4N=|8NMit%ghY8vXbRnDa3J{&8m51UpSa<$ z=Hm;MvoI9v`eNia)%~c*;%Xa&bKa1;`w)T?vYE=Ympc@O1eevT3d3|wE+YC7 zo0${g>sFlMEjPsouvCZ1Zaw(PDNfC>&1*l~lr2jc zWXJs8zSU(YwRZz0cOb%=GrCoO>3WasrLM}wk0$*T{vIUDm0BG48?!UBmAyfFewMBF zjNqbz6Fh&i#sC}3gtm(k;~f0Wa{Y(cwYxg`5!;BpN@u73kzIlm@J73^U3}77C}dYNud^ka)*Wa9WsQuCD905xdSY5-3nTvQS{Syf0DZVtx={ku zI(Lo;{Hok|@yZC%Zu+`OR%|pAjH1*7T1wZ`4?*pG4;|d1NV3oQ`9l%qq?^%Y02fb=usU6FvLix7|Q`ge!U-qW^P3$AL7t zyaK6{;xPv9QR~1t%6(KisTD4Q_~LQw-wJCT0AL)UyP~bC8`O85MbBkcv@%YrdnW=G zSowP{_WZv7nF#aB<)>zMfA5IupWam_wf1(r=byzkXkc1hCYLw)i$eu*rK+}R=m`Jc_LV(G za40xn3=-jKt0SP|cv!L*X^SB5xD`1D*Diy@@pZ7fv-d;y*;+*W`(TGVD4{4q0c2ko zJ6aEBFI37J`J$W~H7;09c*6}my;2?~@yT$)mifj0KQ7mQ+zR`)x^o!i=AxM`QckcC zvybXv$zvf{1wRPc1zjB)tH*gWDK`S8*<)Kl2~nW?2YRJfCa(iCX{3u37TQO!3z_2; z2Az92&h5ybdFVrWOaoW7(|dsRu6)Y1dM< zGE-+XNI^xwXd41l`_97xd3sfbW>ecEI+^)-ak6ekSSKU)#ud+|J_LY%6oLh_c9c@; zB$bf}W0Qf^){PjwUFTJiWW4uwb|W~o?jATvokw2Ij~D*$h>ZE0lQkSxQI-)8bF7P^ z8!P5Zc})q)ZOqAd(er-R|A2Ql8H}R%PQoMvI+F&*$t8!VV)4X}przO@uXU)zOouqU zFLv58Y?r=#e>DvFHflt^W#fGx3siiAkj6$1Z%k)PKn-XW8XO9hJgK=|$!*_{3mPuP z3F1^%9dFEbE6NBs#1>%89X5kh^W^#feqIKX@Ft0=+Uti|aOu=t^5*Q|DpCaughvGB z$P+gL5E*t^K1Wa$yy^dLx~83^LVQkU2~{kLDio2FL?d!T37)R6cq^J*ND@g5Qwsg_ z|KsX9;HhrkH>V>%RVIKzpJgcA60+j^#PKpJG`U3B@U z1~=7l(iUc_0LI5k>MP#NJC|kFt~AN}OZAx6hVhAb7Mn6zGk$08#VBh`LV!AAW~fl3!|VoMNHq(Fno1 zp#X=R9g`C3vlLyHfjK!EhARvxDTbssSp&;+65tpOO>~S*If&4}&@;BWlJWKgpKh`i zU)d1~gyx6ebATe94W3p>r3l}!DRR8*v^jn2s7NRXsKi10904i+ui6l~h7>{Xm#>=> z6D?+b*WT#2s?$6_gv8De=dP^`zG(VI;$1tm?;x+69cUS%{JZe5yb`Pv`$24hfs94s z*h+ZuwD+CF_BRtk%xaBtL%gCJjz(?s!Q95Ouxpe36vP-=)guHq9KB;o!=d7eJBp8x zIC`W!LTsp>hkL4Y=I5)Mik&T~X>XD%l&l(5Ez`ynXVXVUAdeioyW=j|6RS1q>YC2b z(R1(@48GTdF$xOVj4_*}oJl;Yytiq%8X}(o^$OV}eN;QVfH$-nwHlisT=a8&Xcj_K zSq*zy*T;D=*dLpL8S(_AsnZ#`yMK9o^-Ph?_Ott(t;_8tC8EfQx8OTvH$kPPiwdw( zW*)}7gib;TU#KaLd+xVbJ`w3A&7&x=zh$_FwE!Dvw-;iyHlT{tZtN%1_z6Q|aOk^tlmWeuOX| zea-K*S{ZW_RX5!%Anby_El7kKVu!{VT-o<3Q_i z9tAe#t8GwzR6AS-`NEqaz7;Pw|E!9dZLCLfCmVd)M!9WQ+lXD|{C8GT_E3PPn;NeJf|O1+m+^ z!vYKdc9P4-bn-o9JCzjtB%C?@({Ql92i8l@cNV+rgS^U5L0DWI>=1q><7C^u%8C8D zgKJ;;p3|hxW}!wC=)K(;r2Q=KI{DO!j(Us8-=y9H?V}mdA+H%>HAO4S3rAdrZil6uB`?%KvQNz)V+@x21PJw=UQ3mMh7g|+dLVx zfnxbAV|i{tV!_#hzs?-L^W?REtD`(xWVX$rADwwT9)m0qOP7DWOO?ba2>w_DO3{j8 z?UC;qHtdt3vci*F9X*t;1eJ9^6O}$#KxoliBxbtUNdmE=2&UaVpER{EgXC6E9#4M4 ztPU{+TW%Gwy+#xF1#FtP1B8*u&cJDM69g*v^4?Yp$Iz$`0>>>9s7rLbK5_Rqa0m`_ z^G&FgF^SwKL*m}MYs)8Xu*;Y7NhKgL+hqoiUtg22m1PwU!!&akJD{gW{eYSZf-sy>-sli`JYdukSZewTX5)i zHE|x3m6e4wV#zjC9K4XNAEtK_YlNr5lO+C#jbw=guKd!UpU)!;3~1NhCNp%Hv@uKH1Urp{jaLDb11a>r=TgwO(ga!Dt9IpcXI=+;yTp(0jeh!S(rskLIbrTw$?aZFfxa9#L&<##tX@1Oco7GxZ;`HY zm0k7{TVHcM4ygCOza3=E@9`kgi7Q$dE0ht+H8DqK1Ax;Xha1M)%XwQ!Ac;?SR{QqK z@@(k`aDw@`!$Qdj1cnu()Hp`ld4g>|v+iuRIqmD7N|MO`hS0UG<0lJSM{SYjx5pXI z8A*fgLJlSO42%$TK4LOW1>~oHqhL5@Opmy2smpj=(PTAGHrPpa5Z@4bd@8G|zAOtQ z2ElYbzZ&A}E9?ZLmb4FG?O8vVvHan<Cp@PG0(yDo}P#3Ii#q+^cFMh*ZrlZHV|p;w_xfu*Ib*Ek5)d}s*IJ8MFz zyjeN6?6FobB!P9zhZd=?nK`SUsB$cCipFu;yMwXX03f?>+Q6u7H?R{JIiA+v{SV0! zjw3@AAqKb}OB0c1EmJW-nTmvlj~l9AmG859A02}fUMmSk*XkNDzApbkxW4KigO9|P z>rle3e?^ylWo2bs*jEHlLv=AyrLer<&t(z;(DWhU@Pa}W=&N2BY>Iy+Lo7T4$vQM@$v=HjGAS-1t&1yugGxtVxjV|uUP5=PEKr+omZ#@D|vl+42K*@a}m9lS~& z2De`RjB6<`;A0wl!W!1=Oo`uIP@=T(Jtytq-R3snPr+Px?S^Ng>*kU5hql%chn|~% zvK6?$lrhx|)M8xRQqSh=klugF`Hz^PT#gV|v-unsR-7Cr{IIA_?WG1kwmW1%E07JO z)(!~Rkr_k=H`BJ?ccphLw)`XoxgvdSP6|x$IEbxlz(WCZrh49mcLds&*1U~*j zb^SFi0E6<}A^To+;!*ZB6Is?Lv*5Z5X|ml09{vRAj~&h>(hpw|XojnkDDNSQOnpx2`&dF{&-xm=!a3{2 z4K$oOSPLM3r~*>k7qvy)iRw@dS;EAjRRwgX^n`rQ?1p7X-(g$%u@YgkYD1YaD08WP z1+Kwod1V+`3BQkwK>xbV>`!3N2YK0nGV#4V{8lgz=$dV43Jg%9lCCg5Q6p}1_}f(g z6$lL85P?=kuHvgBRi6RO{~#)S=hTL<*xz~gcC?$>1Bu60ck>*pxAMEJeLE{J^zq$KhC=6snLWN~y9nX=rGq&meC&ENc&|0geEX*tMc;eyGvybO(3iU9fD; zy!AzB&u3YGMwq823x!vZzcMs~>@{(Wr!=FsvqbIIg49O4RiuVIlnzx?8EwotID>5D zAp&GkT1l1TXt>&7($EB)R?JD7#2*0EFkrhgFdTPE<_CEOM8j^M*=yP8*uD=e-jK^u zS!o%6nW!!OPF?C2=ntXpte$exN6XB3mHP1iu7YI^I+YoJmFAZ}edyuaP>$ zXmCE)W$>@KlOP9VoTHGYCSCWoDjduRTX+OW`~AjEs%%mD8st%C%#BLm1&Bg*`@AFn z4J|2EEhTJ0X%S2#wBV{3%;UjX!7VcWx&iu(bQ#|^vL3yHNx4kqI^V9!R_u{kD-1X% zLu}fa719v^JLC_W5}#)}i%*g5#Wdu7&20THH0_F@=d`+`IU zWc!ziW1sEIz&I$%=J$Ppk;F~|fPra2y3nq>JRQG+_2hVJ%9g)QbdUhM;uv)=u@mug z*FNS{X`XXJG2GfoH-@+@6VK#qR~eFMF-?UaI_>g%`~3Gc`Sw1h`sjQ8^3rpi%#fe7`e z?dM32@+bfrQfCCMTkF1nqT2A5HtQbk#GjyQM^+bNkBKQuz!{rF-N*-NG}PTNoF0BwK57(KLhsZ()$jP^?N{cH|z=iJ6k+4C3NYOVjJt&o|q z$om`=RoAb{L5EdHr@5B-Xxnei83Z}RGVmSLmRj|nz#YO6{5oNr??>A#0RnTbAK~M&Y*Au{xRGbTE*^917VuTo; zi)$OC0SMKeg73xJji~|k!Jghhz5qNEBdnyg}7;Cg9<<#lY zfV#Y1RA6tc0)*FWNWEQ8vhOxBKxQG&&yD>(NO)nalpR_4vI}kC4A>u!bWK}GcZ1CX zc9yw}n~2X(Qf+~r3EecOu3Cjr_*(M<9YK5vGVNmP1f5cvR|k=##o;s7zF3SZjpQrfm3_;W^r#lPQf_`%I|yO( zZ~?}ib`qm7`%6n}{H++eai&kE<;ROe49FwmCayhn4*+}{i}x)U2`;S~g|dS^Xk}6o z)4Nqd83628cJ##a|6X8z?4bGk6gM5H+k0ZoKEE7IJTY_CmJ>yP1;>dYD5*0@)_4mt zHYTlM`#3txldZNj6|GQWy@M8sjVqu3C}a z^-PWK7@ViOz+^~~p>n=txEAj=xEY3X6{O~6P5%MJo_A!~3Brj(MaK@Xcs)oD4N~)~ z3)Ugn#ly%IJkMYJhNp5pw)M0}qna2p_=RiCS(A%HXwT((Zt)7!xWAEXD}$*J*a_Zm zeRCVOOC5x9$CZ$(+~o}ZOBaKd+4BYDolnT+RTOk8X)jqroA^1`9-hsTv%ekJ5Z>|c z2k|I)0=qxuvkzMx_JTP|1=GAYjmnVO-h&PUR*KDe%`Lr}!S4=9arbT%!nQ(gnY*b? zr_H4FrYD4mAbUZ|N0xBae?}j8 zhT2R||J^ylwuhj{q_Fhk<0O`02H5RMJ#$NC^a6gEnTWUcBcD=z=sbhqG<9g+1G(tQ z`rE~&ppfX8^dp$;4BRlJUL!6m`J}Dhr3!_jt@KFfxvUy|G8{M*SH8 z;nM_QLfofDL87*pw>TI6Moo3~8(xgM38ZDXw?d5|PcZSAJe*8ffx&N3AAp|l*0I0u z@4g5Py^BlBqs#=(X>1L7={@YBr$8qgWX*&++P*OIIheZayzg+;9;$OFY{QW|bAAEj zqjjJfu6K)IX`=-Gmv8+kwpPJm57bxP}!f)uE z0V<~^XwLdUbSLuy7RzG=<{PKiy$m_tA zv$e5NQwSdhrx4bdiYH#+ZI^wmMVuI1)FWhjc=rvkwR0g_<(epy!juFrwyKX_ zt}gdHCU_r5DfPO*(DAeKeC?TZvNxUZlPx5fmY3&ScPs&He>e`xQEfiXzvM(#sbdMi zA**{pX-$DnD|K1ep!}M>Jf{*Et{Eb2rFiJl5%#okuix89ziZEc2LN8o&|oWklEB@%@3-+N~eG=1yy z3pp9w5pJ^ozfUo)`{23jE8L+r{r`d}R4m2WK!#VlHy>3BW`@3QpeD2XIn z0MGz35|pF6X8Xb5ge!~%OuiZC+RO0vv0TotCD>+2P@~m>v=xM9L1fMZ`2w&EEhCg= zSxN4*8N86`ddB_0#P@+&8^dD-HMz{;V@*#y;R5^sL0_AHi^DczgkXZP74O}{dNJB2 zvTUpq4+00Uoe31j}`JB@^<|kMi&bGHa!k~Gg|;k|6F7^TVN2<&rX^-ug1m? zSaWmpe!v?it0O?9KCt}u_jeMuPH@|1Vc8t9KIbSviE>1qyUNPX{5=_*qN2w^rvyD# z$zf8!8C8_e0P#OfNQJ^=FX6{bI9ypAE@?kMb?F>(1+fm~k>@8NPl=^qnaTH1QA1Bc zufbfX2g<1EZyRso=eT+)(CQG;f; zy57v#+=4xvc;YYgOTGm=QensM)4X`Z6v|tzu%PWf{oe|&i_o7_E7HtuPuoZ?7Z3`_w*6C4s4V6zq-=pmNO% zw|!rr^I|DP*>&@<+Zg!E`{rJOb;9>>#XSF=61?kKpre}M>D9zvsq}E9sfp$OE4X3+cL`UD0H~#|x8%Lvik56!cC6 zx8soc0+JG?unyRm#$~~{vCa+BU3q3z&S!6RWMy*ucq*E$vK8SGo_+dG=HKg#HHc=T zAcUpfPx2eDY1{BOP5&2i$^a0bp(^aIUuBz=`;Z|DTQeoLdn1c>pgC*`p0vmRUinBB zLGG$iMfVwiIiFWLjC?jKwAY>Rgzk|6OtHOik@qQH^Bj3r6Svi`nK z=BD0T+v249>+X{cz9=#nXo53SP{-s0hm9VWp{!bXaqgkIH;=Ejz@?bcbr>1lM+k_X zi=p96FP>?)(u$?JNES`_c*$FSLoc4X4&B8^p~-;+kS61L&onvoY{Z4Q=pM4%xUx8Os7FROED-AxMpF`g!EJyexo8-}>lk<&wPS;}6Ay3> zK;ibuil3p_v@wOW1W4%~Fgq&a)sm!AzJP`iSyHu1kc9rLyrJx2A%TMxfD^+?!8Ow} z0HCE?&aY(|fZkQJ7jv}ULy~X@>Xa`>uvynYyYLLmZ8R0e zhj-@y?t)B++xeNM3|GJsTiqck0FZmo*m$)GmmNPC(xL>aE;K)i zp+nliR1`0P1zF=Ri1f~y$#A|fMETXb#3z(y@E-hkG<@YoY&*C_?*_uv><#yw2lhb@ zb-h0bsay!5pBZ(l;TS}qL9TVWUpW6=CT|Av#`Tx?hH-3)Tpt&M7|NL`|IwWA6jTO{ z^;N8z!3bVtpwjs!MPPh)7-S|OHr~aWsy|9B;c#UsK0^t=5L5&jEs~Zi< zB29GImFjg+RTP1d3liXzB~J!QQv*yR6=hnM7>aNW-n@^&>D>o$C2#bDb}!7I3g4@@Q7M!hn(@1nd?RB@m|$^~yB zi~%km?zC4k{@lF5gHrmN9OuMg%{>cE%Rs!(P+*}Von~xCE4_AyuilEU8K~!E>Meg@ z)~md@!P8z7^W}GPsLq61Rzn63Ptn=O6EGl5XI)fYe758Q<1|jl-(T+`_&wq`8kxv| z^(FDCn!6_(YnZu%3syg5tzpA`{o`e73idySb-on3yfP%a059cMXsF(-EMSqWL6_{C zlIXCbvRe52+rZjA{YR!TfM_k|WH^vVq1lBj#7suhZ5$!gZU!sNU)@N4Ryl;)Py6h; zDBtp&!G#d}-IawZt{Jm?7k*6TJIX6@N|?ENpqUDqm=lEk9nfgr)r1uOZN#EHa4Y`i zueUpu0fvl*>kLb&ujH~{0Lk(tuprO#uMJzL=JWzIo(#)teauw|!cT?>HiBT4u!m$u8wgTBT8vX%aAIpBA1|k+^=MspwGQya#V}@63NAdU7s2N;@>kZ)Q zDDIA&lEf|tEi0 z4EhqUKN!6%iYUMoxaMYCP*;0wSKErlK3{)|CrKL*nXncO=b zyP}>BZ&EHBEzZ2m4dwgLJP^BF>ba0-9tY+$;XV%5!Sq96Vq-#tno|&hb>pFOi9rrM z&^dex)>MebP|6z$bSx8?)%>zOz<^&4Y^aV1-k9AAm06PC5-!N16e;x?C3*nv(PL*euJB{>)(md$Ap`pBPpyBS!L=QJRPZrQ)Q`lc)rMzD@Y{+Jwj%kc z6*0^b7Rkq6LBZ7HchJ-V9YUtv`0Tz5q)0Vhdk|hE^HMX$-c~W!3_{X9!hJR47d}eO zfXQBgQ;2LPaOu=K7Fo*}82s|4+;;)Qaw#hTB2Tsj{zUlz;K?mBwOk(iW?dF2I_(@7 z^P+uZ)nK4deVE^hr;qU*W_|BBI>##lwUH>$rNdnfA$G*TW012atL~6+MT&txAKu$A zKq-y{|7N%L6AcWj*1%i#O^|E^50E{30RXcJ_R1{*ge_x`(r&aPLM}`4?^%OStQe?q z%;nCy`c4}ak~Ic&cZxqZe6;`ke<&qVXP)x=hex;i)5M^y_$&4csBH(-KAAvgh5NZ& zCo7f~fH)DeE#6~KVtBBmZy@6`06$UMJdKSIFIzp|dk)lbxIy46dM@N#3k6io81Mmv zAbOte4Fcw+cp$hYu>d(W3c|L#bw%2y3BeT@T7I^n?AbYou)ud-U?@Rx{s=Qb5MSk! z3_*GkPLr|i3bbV3g4FuO@^Z6=z+2D-zubc95Tbp>0MR>_Z?d2PD!bNEzrFw@;{j0Q z;HFKCH-uwP%JSPG)PHp=EFLxmk}O7=ll0u`F00# zN~YxY1cVaU^FR=9yu38-bsS2%A^~MT8-~l!`iO)-y4`XH)iFQ-qYK7>L+aSQ^^}mF z+vD5>`9QWOp6H6YB?Ab=R&+Uo_!`Hb2&Kn)n}E@thhg6CLcn#~K&tfuQbJlGoY(eh zKvzx`IxWx_qJcxe=4dGa(wJjmkU5;<55VHcwSjSM7XiW`ZV_G(qUE90-SnQfgD(py zWkD#rIqNl24g-AbxMc-uD3t23yz^i8cX;STERA0e$YPxhH-2wp9aIFFf`d@E`&1J@ zC=c`?3y|unzJ!Ih(-4pbihsUNYI~1d<+|fjog)ZeaSdj;LLH zC08pF&a5;?zO)5UTpd+UEbp*|g+=G>)5z%r(5y_G@Wa?RPCWJw?ZWMih;(o!dNc1j z4n{(w)sWZ4_d$m=buneVTWZMT-&)cwcd$xG4TI0v%ab0-ZiV=7u)A`0ZB$){?>{tM zzxUo?P4(XxT+c=V7{YW?kn`i4VEqf8dZ@!U&1Xo#4DJN(5@&wh;NS0sPgrl$P}u#5xDdxW_Y_nvH!@jmh;~qps>112uu8|zbop}GX}50A$*pX4VT`-j{}}vjUpZACUSA7v4ZP_GMXuff2Q`D zR(}S;5VO}$ri`TukRDth5mamfl=j=t1A?wFdhKg>G7M1y{8P{78ipz8ht6iQUcz-{ z0JA>DPY=A?28}b9M{I4DwGm}`4Pd^;zIQzX_90B;oEh5bKf1z8gu`$gE`rBQ^ciQ) zN|L0-ZNb#y+2TY6a~|&wYvv!xflGgyAl`OZsZ&)LeciX$xeV?r0==$#%h2cl_7OUa zVnl#>AZj#w9)Q(yP4-E9{?7(P<-#z(Jj`SH_orBn3Qh!zE$*`Qg0bRs8M%h!V^|+E zSxXVY6G&i#<+qB2ckvFgm=<99!KO5vc)z7|c0ai#`kSKWT~6@qL>}FU2E|+wS`D>f zbOJjuaJYS)qwI5#KQ&y*Q5vVu+RjNMC|F-J7l{VV8s+_jzQG2{Jr)QdQNWsU|IWoE zOK{ad4wXXt_#8XexBx6@kkD~vUl#iX zcubcdf6PXt$+z4J!);$feg}%n&=GpHIpxJ!7kJ(1SI%z14WqbCPD92@D`onQxP3LY8_5O%D7 zl|>a$7M$FB-mNHIfJ5|HRR{=FxVovKCV^qywzW~m_l2pF_VPyZLOy^i=GC2I%d>i` z1d#$MvdVY z$Mr)$*wK(8gdR3fwPCcB{;9&%DbTc{-gGiy!G06xz*{o=*||9|eA*ud+8FIN+pjF9 z7G*~f&^!fQjH=_C8b`r5g1Or90hstfetd#vmfPU9?}%Imh7q)PCK3?hrV2b=r|V zh{!yGM1l~F1DjC?YV%(|iYKdugl#Z9TL~2#%q%_8Y_lPFE;Hr9{}eYRSV+9K!o3(i zYfIb03-|q&65qkvwd0Ke`58ZvK2~kj3&V@e`{*Vg#To$E1N-YAeC+Pb@%(eOWJY;M z_s#$w^9~xENxXF|Ab`Ve>JidRt@z4=u?Xr`Qxr71kb5l}xogX%l68=sylo(z8Mbn{ z>j=Q^bhZ-sFn=*G(Lu zECVo;_U%qy3Mv4n>i0GoJXqf$OiU1-c)Kkg*XX`LPFw+!GM!%BiPb45^{nK_GElVG zrW4Q{#Ir99%-$|h0HS*evGQ6Z$pR1(O&CUH>wJ{5X0U`7Pq3CDL3npsS#R-%wB$r{ zE9f=*C|EsTy8}e2$THURNtMm-jH^i4``A;9uQuOtT*zO+y=DD@KX@Y1RLC@%#Md2) z*xA6vKC)>O^pz}C`vX@3r0~5%To*i~4Fbl_@Bcek!2ta&VW^@O9!R|#d7lZwSV1C+An|N6nL09mX`}`=xDezxco%jv@(b#8zddB zJCe%l;nL>OtT4?$N0iDzOS0@Okn|hND7O#G0&U_KFr0+s_%NE~1h6|7r7+ZAH{hb zDsSeKoKh1Ll=bIEiqH|-J(U~VT?Ma)goZk8(S++?alek(cllngIJ#*r9*{KRSPoUD#$`?_An_=1_@T(PDhVVoHRYnGhRa_4ROJHCEzyPe_ z^W{%;98$q5?A~jej?aBc6cG6ed4CfX$5U@4($S4|MFf{N+&!hV1GrJQXWt<#7=DX~ zU3~-pSmo%j6*#G|=bhJl9O{pu^+?V*m$TI*ZTsD@!-UnV6sLh9=r#cXq2r0uc$aa* zPk8*>K)c~sU;{G-&};`Z&^o4r%0C3thV-W2-}pK5)_uG4x-|2M z?8c>fIjHHUCfTZ({F2$+rN%p9=fQ)92R1L3fGb1VV^1I}M_FBf)T3T3PT5_pHV>@d zTHIm9tjDHgnK54vZW6*Z9`LK?W5g0lzE;64_6&x5jGV%kfuHJ^T`G?&xWfkYLwAwe$EybHqy^`vkTmQ9B|vcg8F1gZ1j$j!{(dtn{a$C?A7~`% zs3ErItZsy9gt91}8^Y}iqk=tM+LOg{kTxCVR;qy(0{#g$b8d5Vo)KN;P`eR#$J666 zTA8?mK*GDmbW1>Yv>C$~3-_@kgu@Rutio;*-)#W<^kW^${I@v!Z*v3d2=3^(n&_mz z9f;NBkTo;Nd$aul^2mehRVGr#ubN=pnh0QIn)N|!XBj(Q^o2>WVL^DsNoLF$(smI+ ziJzhe0}Xl*y;aR8fw31%|K2G7@D{-Ba_FxW0;wd!){OxUUjT@e02jz=MvRL(1VvF8 zAP~^;)2Rj-%0UL)V*8N9H}r5P{XE!S9EIY&WyZkK9%g~%8z-J-4ts<+c>0WN+@hud zG#LVLKj*|2hS}&)#(0b+WY2*bwkQ^*;nLF5t4pg0jcHYtkN`U4AmDA0oG#?<6OuWC zQBkIu^=@DCzQ>ed2HJRLpYQiEt7%0z4d-D{o7|h1_J-Aun)Qz+Z0EqT( zVvbg&hS*(_z1j=wu&(C!k(2&6HB0_wtgMs0Xr_f-6_k;D7 zXlcmenEMu=)AgHDQGN}E^WzP6;t=3B_T{EO^9RNv1|b|lo!^=1_mHsFdwTWnoW~rg90e5>kV5XYz40dVF`L1| zO1~KxGY?AjX&JiX`My%7(4noP8wc*&b;#X_Nkx*hPu|GuC~4O9(T{Zl>FX}Q?+wNhSHkBwy^1^u$y;J z^MPsbNh1vH%OyF1OqJ}UOktWpEu*_XFy+n?A!WJ#J&Lpv+pn{KNG!*Q?=sj74D^>a zMk_!M6G^#3B$q!xt&(vV(Bvmi>%si3;B}vif%TtEZCfVjpUQj=?2^i_1=d|t1r+!( z;2wHrG#_-AJI?35XtE*DuPq`MG%cWNK0Y$~_ zA6pZ8{kdm>RPVu(56+ZaGhj!NH(545;p@E}-1@7hy4=URysKLOd==M)?M3+h=P(y==>X;Sw@;}S?1fDW zDhkQ5!L_uK>+k|M=brR8JkrlE2I?@b(iNvGKp2<`E3L@o1BV?DW1sH2xnL9T(9a~A zz(W4{74Dih%7Q@wnS8DM0d`nwloDLUuJUFq@1TF+VO3l4`9|*ykSgB+XCSqN4eoXr zjy<1zjV`eZa&$ztkZ2%=Mk;5r%mFsCsu9p+ELE#wTQ#MDW!JTD7SHQ%ioY=O`K6U> zEhwaNP!WhmjXm<^whfX07q-XlqSbX&zofBi!U%t4Q;!jY%oXPKY-{@!3!|;vF#r8sd_=SJL5Ej?5thF@3GbhOn^kSt7Gd4yFdq;LpahltKC`1 zzyanY4(BmX?x4)Dpk@Hn8^a~CV9^|?Fj>iVOAkB$2#6- z>ce$`Tcd<7&uJw<19cBTWv=q(Dy$^}j`gv>FojsxUY5isN@<+cz`Vy0Y` zM|Tb)8Hv?9h!5jZb06}Jmk&>o!eaYYBMsgaO2~_FBCnY=7r8l{(I$*zvJ?^_FZK~X z{kJGXJ9k2uu=LBRBS)krvP^+CVAJ0(5^IHEP5XJR!lM578Ya_YATrzq8;-ZY(fY*v zSmpDJb0Wyt{MuoMh#VJod-l8oR-aGEwHR&&i0V*2+aRdlg$DSTq%>2BW_E||2!U@rv zo%f65z~#%FTO?tdZH+2zlr!+tUuGR~nz_EJnP`3cfUmU@?)f@EdG#3Qlt#f8;rQ|M z&g^a4nJmh5951)r_OzYjC8Tk zW~~v1R_i~iFwHt}dCC~x>hG?6)@fr#UzPQrs7CIFM%C;Av%LSmd-wcyovaDdldLmV zR6i`|RP;2E@Crtj)E&c`o65euY9?uY>alFrYrAffF2pS66*LD^zg%T?SD5@RwkN=% z$RxpI2%r7J57~Ch9 z&w{PM1Gpv-ZJ?%WIlmyk*ZDg!joIKRG>Ju8XgEI#TJCqL~MJEq2=J0nGY-P^i zji%QRuZ#7Z?r-*zOzXDjISZkG<;&oT|BX32+(TGkwN#ilpf6{(5#c{js_r=8>Jg** zIAchV*~RIUm~3Bf?_M2sB-SaF6JxL%?le~=pp?0&L`ZgpwPAHb8f1^=;KiAQp| z(|f_POP}#)W>7u^o3s1hIsdtWRudJU5SlpS9ydn-5PT%|KL4Aq;I|{f8||G z;r9wPy!1QDZO*ch`c|3;0k04zR5)=ET9kmu%qvS!Ud@rA6Ru!ilo#JM-m`@{OW3H_ zn9gqoUo!+#p>9PAiIYo1$awDv3rHl>_MW7KtyG(b0IAVi)c$*$G@^EnFa}HQ%lCrV z0+1~2TVia4w+L-eB%!kqCPwV$)xDcA{IPXwiLap9CW?QJMF9_Z4E8YF!1wNNu1om?@3WE5 z00p>4e4$57<93}1af^odc*ez>(7kkX;*v?o5n7cRAF2_XLKbjYo>PwwqjjQlaf`Z=@(W8*JCtV zqbb|Hzr~x7jUW4*k~C|#SsyvK^Hove&2{bX&)uO`NAuViM z(z+M5EVa-;n4B9ge%=ic(2C7+5wLY_X?_6=|_DtSVT~2>; zwONR0VL$msUgKI{2q^U9A~OC4k>L0=kCvGdhhPYWKEnuuUur) zA>#(zPKm2Aq5qcI*n2b^rLF{V84P}39lHY?S~U{5Nl#oq-CuQYz{(*e@pcWv8t>p2 zXYa_=29kgL-t|8Bm4T`fm9hkVxwGd=etbBt6x;#y9%gj<+7H?I3f)O0pLu@7!>U2* zmi*$Qr<&24OT)LCe;zyvezeNevE87eikTxc`|ouJl=Ks``skv`ey6s@H+wnvlTU7@ z)%R?8vhp&&>vWAY-X12_JwK%u&^%Pv!)+=yTw|J>hm?8`F&2%YYGhmDGB15lzo;Y3w);Y(a z7g#(R*Ac0#%?k4$3Xza`M?N^Xq>9V`hU+XbuoO|y>NpNaBVBaT3moMX5Ux!2`!B4Q z2t!kX{(ksz5#p~HRHPi# zTB<1E#9SfWD39gyp&^y;RShIVGi3lI7rG1`!5!UhLwv+dxqzoC2t^5DgtfIEYQ+vtXa*(|hUtTE1B>ltfKS@ixe_TJz>1K5>F3fk zbeh~cA8)poKUlUOK&!~>E6biO+tMO`d}}?mi`ybXIfWGlLNo5?U00e88j=*IU^mq1 z^w!4`HX(6)J79(Z$ie8>8SnPkYzt=c0g*VbGI81%OoW}B@O!0Nt zlkOZ(3E^9dU5v>11wL>r5YGZ@iRKScI)c~48r|wRCoU5eChUM_QbILvs!m}Vav)uO zp4xdn@wQC%#Z3L75^?5N@!G1F7hQRvD-;d%haJhRq%0WGpjtc^NRDNBvpVwzV$R(y zG@Q~`hSY&2XKnsTIV1y2dD3`Di%F+x5@BS*2e^xs9h;QEG@2&t1hTbhJYh)9S*2NQ z>}G&LI9k_QGhRAd!^B0gv1bI8Sg?P%#@0IzY5K1??pb&T+E|$UCkZMK`^4r#7rXOx zLWw9tBNDcHAI>Eh0?=NJ=!>7Ub;RIxK1&M)UT|%SPST0on%IA#O3ZO21xvdT@2L&~ z>{(%U68(%p=7Cvk%B!KxtHxhtYJ$yRkw7q>IY7f%GY2H83jY-SzG{0RphoT3jTv`3irw=w z+#hoIP6l*BhhrD4PiQNj3Bf9ZKVymn9aXYU{ROiqKBN7NF!x$!m#m@M;~8#5lDL?iv%=-JGQGyTG}cg-PR(VVicxqK*uP0W>SQs@3n-Ei>YeD% zpr=;|QeNaZ@}*3=HTql1R@=awj3rSHbH()XjfGIgY69vF%}Ip}%iyhZ5pvt*qvvz4M)C1$xgK1e^PoEPz9P?V$cW6qw9*@G z;}wBYp1<=M;;Tao^~doMc$t%eU>RXMT|P@&!nMdk^7=qgH_jcu9h+PwMfmxn>g1=^ z$<3Dn@3gt%hjtUXeHR40{FB8u6B??P;w_Ym*2n0&n2o2IIW1pq+r)QJ7w(nh$0_to zyeW^ij7{%X5gQYkyu%myWM2QyzMKV%!BGRdjK!m4%f(u^g7{vwgv|;PnydFSm|J)> z8sF;4iZ8~0>M;7A@4IfpTyKrEJBFF9B!y3C+<(C1{;<2?#%{Y7*^umt$#TkjW3m%|TGY#bn{&oswSh#i z#o+EAaqrIWXWILnP#Q8W<3b#wHOysBzy7&>G9b1K{_0nfOaY^Z(xlu^eeO$vLr>?l zoVi@b{4HfmDxnz*?1&xLxG0jJKynt-*=Mr=^*7@f-Gql7xJ~4h_RPOdo{#QwaI3f_ z`#oskoJaf?v%pzQ+~9N9#&5C$`Qk2iZ9Rp&-Qct`zPIQMfr~Ugm0VbIU|L?$xl19Y zX0MyVqgnK%X2VNwv|rW$7zk{3?b+b?k(8LEaK zbGdZ-Qk6k{rtelvQz?b+2kr8W!Jr|NxHQW*54$&e?zW?IcnvH3`p|ot0!9V9%DsoY z{F@81&|g)_)$5b0XiOQaOQRH{B*EwOm@A3z|_-MS=}|;<@dhXxs$|m zDX^rt*?9g;&S1l0V{}&&{LqHMuI#;O=Nz6DW{bNdeXk$Rcv0Kg{cyim<9N{np280c zn_G;}mGRp6feFx~f~>f%rbk0l8IJmA3Cu1H57Xykn}?>3Jb(#A8UQFKB}aZ+Dk^xp z=SC9MZgQO+`;Ty|gevB+a}!6(el?{wKay}cu;HOWbg%PL-#~+!e<;eFiyZ)IOJIAU~{J|?@ zo%g@@u1rdO{Mf6ovvRbZW|G`KIe@Pk{S|nKQZ?%Or6v2)@%Sds+Z{h6btoB4RV`|c zK@JnybdnvD=RTh2HvK_Y(zGo%m{0XEMah;TI}avopH%BX_h`7^133{GUXj1@KEXA( z+NhXZGrQ&fmq%vGMf5%K+f?M#neoh2k7iEVf-ShJ(R+O6=hfKrzwOP{q-3NspWOc7PmjBC@O*tTq5E_L2++iE$IPC|v@6x0#v{#xxz{A2p$)>g8r zWJA3La6nH3f4sxf_W;Jm>$U()yi!bt>D>=D!8;oY-uZF!g;yLIdC4T>_>J)Y7{Tuw zQUyC*E_j~>vW?@sKQUqMJ;napM0gfF(HFJQ7rm~1Mt>MS|5j+QC3__23HVM>Nq_QP{3S9B9>TGp-e>e{YNiIY080p61X^MD?}uJl8p7%1L6*_K}M!5@0? zp};tvF&6%!U$6scnsWMqU#%TB3hqkcW3h{Bwi4sX4}A@oC3p24^brV>=xeA{H%(YD4_LC;LOkHXaIl%o|v2yIp8#amyip=G|RAjhc6p0*8F zrFQdF<0zr*vx6-?b3*~Iur8_k*A{qbY)SAQf)6lBXTai)btdOPc8^AA>1}!e!nUr_ z{;IQZ33BLO@&M~L?AU}Mi8a4(-1REaYGZ~AX?@SZ!FNud9?`|ZXb<}d4~k!}vnNjQsOL!h17vE-r!#6KFg8=--ju-k6(4g!Jn9ZO6vUScG=PP#E^4e zyfG~37qmnD;T7zj>2+2}4{&>uPX1YU<`Qd-=MLM}Q*7_doYB4-`h)r3;w2qnH(*!B#1482dZ zg~|_8O2A_Z(57%vt?0vhiWOS3-)T|GE)0BrqoYY3GANk=$^yeyTMZ=~j)wQ0yQ*X2 zQYQy4O3+2Zm&snm~Ut^tfkrAvLK0`F8BZDsW8tD==VTAM`j z1YmHp1i+?(+K37kvhPVD%rLjY>dhbnD@fk6Z2Gh)ws{UlF~_6D2l6(9xBqG9u6S6^ z=YJpQ+F9|D`v4rZ7o`a+UcpDW*1Mj$(aB{mKWGjjjngeRULz+aW$wV*s2z6`LiTem znVXR;sPZe26=HOXI1L;vFL-X4J{XiUY1H+x*9<6?gtLS6kFWyGyy$~HX zHa51te9JKS@?LaWSC@KUCr4a(pL>fQm7i(6-g6VY(_5>TQ~bmI@HyP1W53dlz#8!U zUV~+3IM<_%%s{{?w)s(1e8`S{yX~p_Jap*GXDIyf!8`5U;VLPUbmH1;fyW*;o(i4eRF%s&+`>e)228Ge zA8i>d^$LlWUsx7#ealqCvH-B;`P*G~Txq?|Co6kwpW=&wMH#l|72iR}3I5le_uyAr zpo6&j_Fk~(H-XZsI*c!UP^NwM;S=Wk3N7e)>j(R;PUK>Qm;JT(l0>E1SUE=_K<{mw zhrW(7+fyMaej)qfjSW2Y@O$VOphaChi0HWq!z*pJc#(2{Jv;-jd58j9O^w62`hYp* zfVs4cpTk_%1yN(b1rRcnpec=&$Cs5au`vcsf?LMV5%zqZqBCF(Ent*#yF(zjwnr@x zJH5#Z%lRx}!{b6iRpYROTY5EZ68)*B2&S)@6}>!0?vyHIi#&dE>F-fF4w)2PclwxW zc}iHuPVFv zYx=sjj*3qd_r9g6ZYeqPrDvMhbgPhD;Nws&(6dWkVuRC0J4bzZ(*pbL+RFOZ>8<}> z5u)6YHcdY(bR!rT%P=A+pSqOf={jx1?;zgr_-&d;u5*3n-n7E(Ya6>H7M-gQhLM(- zUkGnBo(ZiQt6|RIwVQ#nl(CRD)BE{A8BABYcV`$>koU)L@EOPreXR%z)C=P}B`f9j zP_~!Iadv!OgplOTv(JUdb>xPaJ>jk|z10|onesaO_Sqr306trsqMUT^;i4qABs~kM zIwk>(hDwBm)^@v1`d7T@Oti`)KNwRz%G@jjNCjlBxWb^&&=#l2*X9zJ+t4`FTUiuf z(@vPS3z!A)HFBNWeUCJ8<9gPY>TA-b{^)U3ufmdWK6mgW}aP zLMEEfH)asKrsx>QY+__)hZ755^Jk(Hs2CWysuH;GCr3Y=OPlAQUR#HChfStWD7*q`l+N+nhK1 z!zy%4p(3F;u=7uR+6KSFw@t;rGZ&jqM4F3Y6W@)UsG2uc`k60qPk>K=e_d}lwz9JC z1H_;$->Vuw#o9_Zdz(MfXK$Ggxf-?lLvO*18V;>`e)1~)9SM*85`jN!Zyu}Q%o09T zd^&k290U~8%^9F(Mxy?-cG(%aG7(zYyD=V3UpJt4Wxoce-&BddWA%AD{|SG|2Qlh8 ztV5Oy)w^}Y_Y*YrQFm&GieGLjzGoL{o)1YBgZByHwCKQ^$D^iAMf=L@ebH_ZUc2z! zx%Fz*R%84z|L45L%QC-KMUKCkpZ_cxRT5O8g1i2cUE}+gKk--P2ItF96@9%kH~FGM z@w@Ga^MBmckHv)Mf07#&Sb9skNTHa2bc zbKZ>!m$N&+cs?+#*`J?!@4Svqw*Qw!S#=koKMXc@Cz4Ky^&FZ#x z0YixdA5Kl-N}HOx$NS7!4Kmls*HP#>G_d7Dx2gaM{hj!CQzkjlRY4W&`Q@(gN&EP4 z>qX(FZyPS-K$%wOnLBl9^hc&ph{c#jX#o!S=8PRd>2E<2`htV_^-*d6;s7H+qv#&~ zAtemDf1Db%66s%g{u?d-L8Ths8Gt$p3F|~K`NFP#F|#$bZm;bV_MsA5Dk@4+N@;hnLeMe{d9Jrwe(+z* zI}Q!y7C@0M0MB1FJ0)9OR+T*KR?y^^uEdW+%$(}fAV>Bb8qZ>^T4tJ|mxa~B`>*)+ znj|uC{;c1@upgyYfwuo7H2;T(`B4@UEtJE1sXrPUKGT+TO|P* zQq`nC2TYSCt?!Mr1Z##!kb*_mGUY+J_#qW<=ngLzIXh^9-URRz%6`vWv3TAFKfxm= zu1b;h61dTuasT5JNIdXiGZx{n9Mxw04~qBytr)7~XDI}B`JQ<`KBSH!<-iuofjIm+ zSy~fQv_XQkV7NzGNz>!kVqMz~Pv$}9@oRBbKcrWgvS;nhfn)pzs)$`aRi$2#Z;%_D zZfFv_{}d6%K#EQRd;uZAYomLh?XM({$eY}SsddNMLH6r6G=EXk(Zs2JO^RWbIq^L? z2JpxCwvPK+AqxpLw@8g&%gnnGHasu=dvx5(0AP@Eaom#*nue(#7a)G}XoLtDCzdv4wjf3_XbxZ zm@I=VF-){I$ScM2IOsokCHTG?jf`oaRRJWu5y~7bv}32YR|f2@sv$JF5ik6MBW5k` zfD3~!FDtLhoZe2)VjJ{$$$}UrSt|37Jh&80zBN!cGKDMgdpukTFXWmeB@fRq0@^{2 z&WSr#-xAM-5p}Q020&FZOo;e2Yo zaZ&8N<+LYzU|8C3{1%jt8y~aMe|#m<)42j_QYX)nvenNT&`MO>J-{CT+PR7s=I+bD z3n2WfBy+7g%={biHB3u9aj-u?2Qeg*Ql^QB8Wr?aWab0DImE_>4d^TKI(+;r3+R=F z$UdUEOuTjN-dt6v3y5w0k{m zNWm|KY=On5VeuN#z+^97hB;Bget+Z-h4_{hEc0ax~VtM2uJ?5+2xE7$)nch zrl1uCM5~p*N3kfJkPCb117ri)u-oSufe`ZSaMa09_ovy$zZRYP%|1uZXatRn&>zWt zP2gP6z^U!0z%y3$-k24Llm#fx_T(=%g&5O2j!J76q6vt#b|zvqWfRw0*Y>3o8e zLQet)J+T7OgjiN_=E46AGgF`s=PQxN1hfOplQyHE#=i4cHTMvr5zG;ln;2(#Zp@d8_3orl%I_J1POxMz(Jmh zf>$_YsGj!+8gfou6*5C=GTrFy^=Y1E{Zy_zM}c05&pv{fTMFbh#$O)XXZC%-4_51K_?er88b?${}03??GyL3h>jbnfv%nI(|zg$@ssQd>h8&xKK6P&z>b zJL7NKm|TzC)3(T({QfB`~wc|6`5*UsHp0u?Yc# z;neBURVis{($jloJ@l0wQ6+dADNrf)qx#Vw>`}>p@b}%L4d0l`#Tp5nJ}e2~1$`ud z5u5_o9-Oml0p06kXD+dP4Zn2=+2m_RpnUinRNX!T-{#w6s?a$g+=fFcDGLvn*^ltB z9Ew=_0Cz)Z@ZVp3)S|8q60hsLcWel`FM!jZpz32|d)cN}S*ZNhTbc<(>;>_840&%( z3KqW-rluKGQDBFLALR5jD32@=nB4nkQjKpgKvUI_zYw?kgFG>4;3IajKV6(B#Jk6R z4M66^$}GJ5*}C%!4bjR@)I9dTejgBbn0;5R^;+R4?w*Qy#qNJk;}k+_ahD4{T^FLv$-Iv1f5iBm9>0y?-_DN9sa@uY{iDx@0 zAniRs=Vat3OTB^mO9Io?<3MgsdUX8@5iJTr#t3lrA8rUju@vW# z3Bw4!6St-2J*T_5{yqu*49u4?c8>xb?qmtn@UH^mR!C7L9w1@enT4I1M|~wT)}xbdVs1(3RG)J8z0<1p^t)K@Y#zOr`=scYVUw^m&PB?gP`Rc|~reJ6g&?4PwTxN2^To+sI*2?_l!3)(mcX)_wfM|C830*ejrBG0~1tT?HZ}6^24q{@m zQgM)V3|s>D#Py=*eZCmT<(8EokzQ$-8UH_v!$OjRp7=)66C?IrjhWxg);G}|C4RfGI8z8RTm~ynwON%!@lvF zP-_7%7Mf$!AB#iOGj;ePaAeB$WoEQVV-AY%T{roEvDtP2*`n zDhTSK2*Foi5*puShb!GAtudrAwlKDPy!EBzuj?Zq`>74M-2<|(|7&BKAx4Dkyw|=S zW@AUVOz@;{s;2Q9QgF4_eeLyzrja2#@akM}d5_+epZSj-x`f{W%EPrYO#J*B--Gc2 zB&BK45zg}4JnY}eeU%2AxgeZCvp)iG_a;BMj5P1i-Wv%se>9)>*lVapUR6|+L+t|G z`-eQqE-(S9oJQ1D`C>p&kSY%WNWG-Q4V+;iIf7QkX^HsLE6Et*x zNC-MlCDt42h=MFBgcj9kueqE5lx%9M(dU%5#aHIgSMgIb-_}4V@oX^*367-pgw;@9 zcaK%%n5sZs`K@}wC=M%%YeDRtUYTRvr_5t`_qhP&kviF0R<>Q;R@TeX`C90{o;)_~j~Mi5zVp^a)@;tJ`A$L!us5rlt}P`PFHN-l zI?kk6HC>f8+;K=?HoXfxS>AY7SQyy=AoG?4Y{v=EB$xy6$3iB?&8k?-NSSW!w9$TC8rMFa%K`3U zS#bJ!SBgQ~vq1x%tA>f26R)1=7#qL5l_X_U1X0fbt;^t7YpQee$9;h~J^;-|H}7fK z!4oKiNb3dJeT!id<*;tZ93}m#CX$11Vs$Kceh(4Ds1gBo+;i=#|16Zp(#b|kzl9b+ z&v8e={Kk?24q*FK7OtX@kYjB5VtJVwMq}&SpyZI9mGwDeBByEY^4>x*HBV4ovt#Kf z?s7I+No48B`pM2?oIIF{&KyOyBHD+J3GPDP*o{Ws$;rv9YDVQdAEAg8S!zgM?CgiA zC}GJW>%Nba;_iN3CF#74vqfc2G}IS(y*FLiE^1+I?|w6!1;162nNxm*9j(XZFwx4G zX5wKq{k7?x)w4&)I!P_slBIi>J6n=L=DSZMoIw>WdI2COo?hswq`GvlO57EA-=d4xhNb`A0@;)UjkAHBW*1;rKoR2a zpO$;IW|??jh$@z!q12?2?Mlza=!XrskVg(I9DZBe^>F0sQ@VS0Co7gigg4&`nVKEn zroITj#~L{Zh8)Yov%9`Ngfd%{%vZFm|G9i zC5Mf_Qaa@N?ePlqUer81fFdSol?am!oB^o@JJfY^BKS-U>X<|)^ zT`MWa;)f4U-qHS^Djg5bq!8d}f3IA~x^Zw>WJGyx8@(Xfy}?8b$`3IH1_{tuIrPU4 z>?)UlfPl>^^}_BWz#QQQKy>>9aw$C7dGBp|rkPkeSOYg)?a!k}I~N~=MYXY% z&CJ@^g3EGH5lMj|1IWgO2BM z_&08#>fR5{>r=hA#uQ`0=49(vbe~ZcNa|X0*e;*WxuHjLl~%6H7A5!U@!2bvyfXB? z|9r;*QF2}Vp{2()OrRKu;Rl??QHZF%(W`=BJ*C? zW#eOTqwP7;n^`&WoHEStJu}YDDtj+O^=}2N_x(P+G#7yJnAU#jr`luX7aRW?wEp;hi%S* zhC}GWnt2eZa@p1lB*DjI;XZMds8^=8O4Qh*bRx>(f#lU^1gRapytK%>po7z$sZ%RL zv`KFs4dE9f$QHGYnUUwO5WPmDbOA|JAWqP1tchYhP`QS%vJ zF`eS$huwHuivn;ae{5{*=^52u7a#Hnsv$PSghe@Oe1%fsY=6eVf&Rv=fqo$w^XP4H z%E#j?TI}n&Pwv5-iWNw+1W#!eRo6)Rz__KB{u29naT2o`VgjrUeDtPl;C6OHgEbki zm?Ope`=47{N`P+p!0Q`~?8&pvt?GVNz+?k}ZPJlh{IEfpWfU#Nfh0y)Q3Z~S>CZO!koWe)SPlvNEscsny%)MIdm!zhzb z)70xnw0Yc--plC0bIMv;77*4vIjsS#H|>b8#YZ)QU6-P>Aeb{YXU|x9^NBlCS_x+O zp`0lYi#YQ=%J77U{=KN^Xzd<5p_8zH0C^*rBD*qr|D=wan_Jztf`S5Dz(cx$3z@!t zqwBuYOQfn_fi=p&{_*85xR4~J;wsLO|7?#mZO-(icAvD*D%?ir@a|?sq7^jMX zT#{eNHq%ikcTtN8suZbWOWP9VC#*mdU&dUjcgM5_k`O7{*}G~TzSF#OFh9^-fAl?*p*w?Hqu*XQECNx-tJz22NH9rsD0uq` zmL(6GW)bY%>yo9ImJkI2I+N`|tbFPi?n z|9${*nuu38DAjT=!e0EIb>w388HJ9S%)_At-Cx?LF3380#7}y9i~+HB7W6jm{z!cO zTtkK6Cm`S@N4ZODO1N(h#-rqs>284qr(ZdByw8SkAaB4&gh#(q1rpm&iqPkn_wDa` zPjx?lHOX`S2T3tWbEtb810#?ZSQ^t#%!5ji>T0OaDa1)#Hv&#{YP=5K3Wj*+BQ~JD zqr+?Zbh@67y1Ke?Qj3E-y`GMa&g&ac_KLSk!~anHcj}c4Nq%>sxt&;hsTWvJ(?b;k z^Oltk1c9WxZ-xHo)4{oK!7ZJnI|gIt4~JNcSJ=R(lQeI(OYYfK1g(m6xQ_*0#Z3k} zj~K*{<4UT82kBe>ZqNVihid0E8lSBnN%L~0BXPS^jy#od^xQwM`1FMMri0qpi7x{v z#A?jSh_9>kvRs7;f7C!YFJY5eB65`)g%)!h2b-py&at#{*|TsiBsU1S3_6=h`mZG8 zSBB=jd%RZ)5`{z*{uDu{;Ruvti~yKB#%uv|yVUBvpf3XZ+rqpZaxSdr@M0$O;&sIK z!BSR_s=NGEn)iUwWOLhcB#gU9PPC@sGmaZEa6cEicM0Go_-vr3!UuEu;{LSu@SAtp znVa;)wKt}2mukkd$?Y9D*ex^AmT~$q0%Jsingpshzw>zMQ?!-v5K$?4LhoiV)C~ei z&2Hb;24qv8M(m|DXVQ4_bWR2L%tB?QD4oIe;E#?(oob^XIZ*_{R+qD=w)E}n?8H2N z-h~f5T8)A`ng_)4L1g?Fhjz30Ur*{QR^&Ej#ok-)oEI*HShRsr{po>s(!q9^m|;br z$Bj5)=OQC(m_`={*u%>Qetr(et&Xi}=#&!_>1q9Uw*`*CX@AI+xVir$umNl8NpBlx z#XXI3zI@pzuI*3%J85y!u)m@?jHRR}x*0N0XmA4p?N64X>90O9WOQ?--%gCg@H(y% zv;VS$v@A6!GBP&o4iKDvPRl3ERhT$Gv4FxmKM*SOPRQT55kJIg0cU!TU^Zd_tlFdF zOEm{i=4Ia4{BwqYz>s)C3_4nd%mFQT?yX$@GY(_bNcIppr@F)JGw%#jxnc_*p~l|lgB(frtZ z_)EhTsu0ZHE+oklgblbkA})1*7ksRd!#B|JZgpyCe&cm}#E$Fg_8=W@`iyh#)j>R# z(>&IRl{g|ILXh}V1FcJ(7@SVdFFeOnz#<0#Y>c-*9G2x=AgoGg*rW7;nIK2Eq&Wd5 zjj;6>78VB8wLt^WK(p}lg(si=c()jo_4I5Yw7V=efggz2weUk3DZRgWsVSA5DY+_Q4%+y!rF{9 zvnAfPe2H3*qwjU&gz&(9W#-I^f!2I1^k97(qz>r3n~15PyKQDx8@#`A7X763^p9op zR2k{g45c$OHq(%0wBKSquopgHlFq?iS(A-z?C%uvlTUel*I7!$SB7;wCX}o>OtvNx z=6gqTxTa`C8fTqT7eUk)ru1wLeb8`SE zOGnBJ)XQIRrV?E4RGX#$yCx%h7|)HL(uV{`HpGX6-P$~=Y4)f1-!fXSrM5s~KNSej zG*R*v5M5T>47M+7)fOp3`W!V66-CcLB5*TUJaQC^{oX!B>3`^hYLQD-V(LFr-$>S) zEIKsbapDSi&hL;qe1W5j$|5;KwQDWF(ndncP&77Xw7-7Djs&D3-k@aee2FD}PKmj= zp1tozaoRBpYy06#=>{*ukkoJ_ezV^?7puNy4P>?O(=XAh5R0}W(s?2$&&?e7g&J%> zypQ-Jkr!$gK3vIEh=75wdC;ltALmp{%!afxS#=z5VDiC;p((lbCe&4O2InAE04r%B z=Kez+K2MSrlDYH&QF%5s*3JnZ)G@`AG?k{qkS?`~*MZx@#m1JleZTGC{;gKNK`=A| zHY4lzh1nmk;`O10P5V=V5Y7H#WfNerjRoeW|6Oc43rQRdIrZ%$Y%r6#tV-sgGD)CY zQB?PwihRKL{@?8D?U|B%v2Ft-)2-!>Ri1Koxm1a{irtjUP&zM$R4tlgG+iP&hJ$6; zbMedDH%4!UPqA}xIaA)sBYN-Alam@y@aE0Uqo@4_+VBTxq5%Cl|kN7D&0auMK z@C|06C$x#N=#zz=UC!jzk^cb#VX#z#a-BMeyNFzGGKh2)dPy$Nok#l(aafphWf;oXD@b zgo48(v5gbg`=RudyOL!V+m+b1eLvsQ3#(cmM) z25x1@8SeZ$BMRz61yC-1u&EDi#@V1>AiI0f8)v_CQ0q+puzVidF&HW&`aa|L zF!RPhP+z`n17z)Rsy0>%X(__Lp zh9ZCAIa(qzUVL7x#hmZ-XG2Bi@&F6jhnw~K!jHvB`l5b+&$J1vC z?h#LHX{G4v*_BV86Mg4n>HxRiur-3?C_JoN?^xM z|2sk12p?Qno5wTB{;}eqRKGi*bNtQgRxW zzzHFh{v;3Mw$vs_Qkd&c=e~X0vEu@09 z`|mQqzzA3v&5J=(F-Pc3&CO*-&dcm93Rx*PIfSbZsUALsi{h(J3RH)(*}eicQ(^hF zv%E$a{LN=>I~$Uc2RHt_r{gWbE4CYW`H%88%E^*Ooa@X_L@$|K(mm#%%89lj?*;1M zZBx@uSDM2q2{nn^OKc*mgLmGaTLD7K06?B<_O+jh2%?UVQ&RSWxXk$uJ0^2lxY)(FB3nW=#3$hBFCRw;~{R=z=QR$G-k&>hrnQ0}%n; z&}t4bn7*yjch`OMS_3A>7Fx_wB{;D~P-hbgoCPNM^<(?%mL-MThbwG>D*UAA%_PRB z$9zHLvmfwX1vw!rc^l10Io8hBO-5eFF{xOn7xtPi$BZ(ji5ndJ+)j(?|1t*(*T;|k z2)n_Z4<5K-jwp;Bet#DVz_~m~>iVFvD>>F#h2=5@nBhg{w^b_#9Tt3ja%AkVjHPCK z&Cjf$ATI+H=5LWVgCc|>n8+_7qJ{xizRwd95^7{m@2vQMZ$IQI1|EFk3BLe|j2&KN z7rNFsYbCGcI_i7a^~God)q@*9^tzZjK7YQ+))@bM9R=ucF@#j-O_TBDFao)|Gf|XJ zszw?G){Y;@R(S#3l?xITFgZe>{QOIZonr~1NA;Fkn&K5MBlQkD6_|NYa4S^k!xv)@ zVZ^fu1xqs*Wo2EMhM+-xaR7!zW>|SRba**(Jpj=FOLZ>?l6`-~K!COH*$8h6rW0|V zG6g#H0pfp$EQB2LT-YT>8k)rQKD<_QA&ztWa0WqW z9-yy)%<2XJNrM#ZZ46JxcJhnGW)U8n=P-&VXKS2IT<%vNpBO|ruWLYK!0L(E%8P=e z6=2vDfhK(Y8;|uM24!VsBdCprSe*K@Wy|_;+RM#IMZ!Tw-sa@sodfjyD+|yt+RcED z{9HhwnXZ1mOP7+x;vucy%f^(5A^FJoB%KF`?NfsG6E`|6lXJ2kZ?R_{YQCVJg$-0M z#?QY9ldS4Qb&aZ@0k4y@s5+7JWElpD7DCNe*pZ`=C9h}`aL1Vd=1>Q(P4tTx6iAG` z0k@$haoYjngfnu=8E%ct&GO>+VU#QV?QhPGEqs_SLHK8?N-pkjFUKE~>3B}_0^ zbT+_F9pCH&d2&kX*DJTpaYS{}qx1LvRxHmA4S-3Yi`t&N42Z5uWQsxA6}!RSL&r`l z|2o4PrjLDSxKySRdC zC6whmrqvO2P4TuYnZ@Sfn~%-S#ZV7_aMKkSuq)uv)(-nd|MM5iaLPlk zmkRSG2(B|?U=>6UCmz-T^}8$(#$65x>Da>nYFbbnRxg`o_uM8JoJer4O5Za- z4I*xb<>*AJ*LN%5BXSh>0M)-3pEymovrOM9LUk3j?39$cj0a@tInQHbr_YyTE^$T< z-16uH(Of|2hbMO}nw(|>>MX`jM1KeLq)Jxq#5+VOm53v~Vm~bU{pVyCF<#gTL4p@HmL_ij zB{&^tr9+a9c42KYH#38to1seiYlFK#$UwqIP^F~&^2ltvWV?IZ)5-lK5@mxU`pJC; zL_iOqhRI%txY%jkrnVdNm_AF!1y6falVIyD2N%~B>@^j?3J&_!nZAxt@oiV7usB@5 zWh#%34LZSVMVrl1OJSh;5S{QKWVPMEpXog&!9!Gs@sU@&h*{F2azB0cye0Is$l<_g zy4&zS*v-b^K6-+5?h1fN14udy7Dr*W(cKjXoJ0OuRh_cQf+U=5yUAKiOxSqQ#O0V< z)>Far`>^&DQcrG#p){j6L1ajy8%heD(KLM5_Ff)(iV;deVhe%*rGYmy^951E7x)fz z2_(qo--Y&~EPRLs)P{&go4zJqk^@t!+?PIQ?C`Xi4m4)g=Jgo-6f@eQ5PH8~m;5svM~L>U+;Z^ACG0a${rUFWs+EaJ(LHfjM#hK{+y^ z@(+ACW_WZ8KLY;q{*l`6=&;tQfu+8?Fr<}YDBX}tOG!y7*S;ri2ZKlA+EaoKqdo{s zY;*YT!#-d$P7haAd}2CBvv(IT4Ee}$cgOCeNF&6+jchw|o$_cij>wXf;|CS?XM`Bq%V7~OuN$s&VE6ruB6fDzT^iggE;qQ5_) zwgUk75i1+!dbSFJr99`>Kl`f`dX{uFG&CN2sXO}^(90+Ecx;ZQw&X%jevamd^NFBS zdxn-F2ZdN-sO~)sc?Q_^db@|@{x4$~HHT1P%X2we1j!Z;5MXUJm!Yr%g^_L$H%Cj= zknBFSP6dGA%gf4^FF-z)QGoYHwVf-i2FVbLlQd@q>}-&`9nlbS=9UbN;{)9^CB5_P zNhwia0kn`r5dt2Tvb51FInxm^+13&`lte=M;(wR=Lh4DJvEO$}Uj*nWwj|o5ISBG~ zfs0ocx+J0_l6#C+xX}BcBW{oo3f$&^E)Y}8^f{R<>1du6jL#a~swdEx$v?z1ZLr0kSdL&R2yJq+Hk6FuSUks$O-YD>edC+0;Gj-Me znGU4UHV6m`eZuR<>-vaETbVjwcFFa@KQ~q@oJT6SZ6UZ%ZHeo;!j&^OTqQEUF^&2x zw0okZT00q_m{|~6=^7L1{*7SKgM)q$&c}dk2#;@jyXsG~d*4&1!hEGJ-3#Q^-PyTZ zh#Kc2Ik9)*`ae`bNS-P`ZMAQ$n(rNEE8)!Wf;de>Pmd6YKM)UpSQz`r$<{6`lP>{1xORtn(ENP&|0R_6%sXF6XN zVo)drG*9ySJg|QeY*a2Nz?c-n@C>zHdC|D`L6CG{WJ5R8AYhmy8SQe5JCgQXJUl!m zHQ*olvD&#e)E@ptvM4z@xuP_4b90djfyn~y{p^46d=e7})J?vv7K!kjRM`Xcd=4W| zy+)cz3Km}T2_;XKxk;kA*!cPLUHpyqT_@p?3Av$N)up1~8x+}*3z?=%n2O2NSft3( z{Pz%B$@JglVQG;T_IF~Xej8xjX7d~9GJCzRiiuSvhcyqmjLfRHykdMxL{P;I3PL9G zo{$vMM8?L(2JoJK{~Cp7IlH;YP4WY91IygE>-Zb5&RsyO>KZ}0ZUtgU5z{c8nZIMf zJgF;n(X=QcLAfUU$D9_bXE9_Ek-a%XG#10BTJ2sx%gMgVdEzv0P2cxSZiV?(?7OPG zyuAL7E1{Iq?3SVXwc9z;)_EtaNl(rNklX+EHs6E$__ICm!>0k+ie5ryJ!C6_cT%@E zZ{9p@#a3O%+5q?t7M7?K3o&MiLG;8o)!WXj#hSy-%P@AP5NdHkv{*&Eo)KwzheVj= zT?KsNW+8lNPm0{BpVff4TLXUe_$qs-R8j&;-YG*bQdghD?Yi7$c_+}%FoI{x?=V`! zdw{ih=uV5+_CwfcVQpsU)<&rhyx4pvuL|D55%D%&O$_MhX7NAjkU4 zdLGcn4RT>$qGuzR)xxhDybDe~C}~L=&XL)ZcHYsT>nk|_%$e(n1W;bKhr(Xgol9O` zCgaE|kr050Liru}*7gbSlf5u_WO(tH#6L$l1u3!zZL1*RPQZghL6LyZwu*8vf+TgE zdhbEmL4|lITk~9b>C#g}Y!*n%&c*RUKN|wN7O{;ued1by?hD}tc3&faS5rAYTFGP7 zifpc6@ApLgiwW*tb0kMClebPgA(fDLG=~6dq4IJ;Ld|)H^^h}sHb6Wz=5t&8A~2gA z%q{PG<`N;gk}WCT5V-jF9-?zhyP<^OVSh;~HtbjDTrswl?Pt|Jgtr;W{ zgI191UG#^`G>ssPQoP+QYr8P|jv|qITKJ$B9oBCUybXRBS3hOVmc~?`^~)mV`9Z&3X_?!=czJF)YlK6tDsxpp6>wM>| ze(*r?L$OR;PRB!DwxD!on*4gSGCEFzp@f^?Mm#f6(xM%bDxPWOZum4dmRjGR2GFa$ zT^L33?4w9Ti(!~U$=mesNK?p~`-^R-H}65+UtypQZ+TQZ{*~!NKp+|mPd$zquD%Sp2yT62~#86QQtI74}^to_Onc?V7J8TU1k5|9u(k_Z6hN1|iF)-%InI*Of?2quQU_ z^5gT}Ep~`G>2rne>{nHhzxO>08DZ|TkEae#yz{<({kpW%HL%^Xera?VXbEF9<(8*Z zX3EEpacSk%qyh*1*A}J=Cl+y9+`BTIL`jl?6xDwXlRMIs4KAu1#Kol^)SRXx5d>(} z7RV2b&!$%UK;e2U%=9|}nZ!;=yK^{ZK$?#60wxqT^a==dSBwR5j?o=G$RdNxS8M*+ z?8#whT_!(;MLOk5xp`JPxhYzW(rO? zp}gmL^qza!xgQW6z%mafd{V^v`H~%9@~KW8Ul|RWjrox4z0ApWUY)Ddsshh#aJNmG zJNEq76ueKECd?i`%`aA!3Z+~N{AUG83@SQ0IyJt)FV@?@Yx7sbfxTaVp+N&8I14b% zF3q-`O8ZDy(gn8Bhr(tk}jiJ7J!1&|EqzX{?V^i$&-DM{1KDw*@n7nMo^c50~KUzJ6~#P zJOg46wlGz}@pL3N=~}MO)%R1&ni?9EwaG2S>y=3@$M+GF^a_}uargq%nP9?_jx8I$ zdpJXl?Nf7e&W6!{D5uJdqo2lclq0`*cFoM*%B;vBc{|5A?^(^=IE&PEMxZWC5q?bF zR?`sQ-~9Z|aM`v&s5-?>L;^4P-G~msQkaYg4!m4B`z&3Pl)R@M$N@HqQ%xHUKz)8>lS}@ zx^w52$my#6cN5@)>o5BjDiT*63j=k&kB>7vzy#EQ`W_cEGjk4ye2p%o#aC>4TLB5E z;Z}0&O1-mVveYS&nbYB&Z-I_&1?cT8L==UHGT5cVcmDBZ!k8d%Q0+ZK{@+`+N1ak$ z`qjl><^`2&gqx>vj3m8(7{~!>Rvyrsm`oqXOq%}6hb#r^+qKQzk_B)BbYSG)R4-rJ zYrGG>pc;sBj2#^<;=ZT5-Fz31bb?|L- z^M)(ltluIdBc+Qzg;TcUYqKct?i+$pU0(qI1Vw&Br&5wm7*xFk>)D`0`tsj`NCNJ| z!*RsCzOl0j6X?Q+y3qez>PAOPC9|`oELvb1(Dxf0OZ(52h=bErED|Xi#m~Ylh2nVU zZf(bqh#b;2jZv6=SqwuE0(9vz&yq)C++ItODLXeKMQqPZsK^@M^QQxXp#~Bx6r%9&Ba9F3yTr#g zL_!AS2ILMsRVSD&d;^Rct6R!niMQrHH#NyyWgYtmwWgHAx-z^UM(-quWCW}e6TWi* z9p0ocUV2S2zrN6-VOvxw>rUC8^!%rTAaY$X*@)M=5^b%NuHdu*{g6BxFdEbFVicxp z1!$E**a1jmC;Q#Vw5EvIiOrw{V0=myE6vI~&3N{>Zxaeno>|v7%I~@6-~nwc@1XR@ za>Nr_30I&d;V-?=d+Q0(t`dIwj3iV-3sFde^l>^-!T$F`CkSMaSr5oKPTt2bRX_{q zEMYn7fA|h}nTLDJ5$(MH8del`>x8B&kQx<>a5(k5jrB~&cI_OAtR+%7SpR)V2)+P? z1H2+1KpJ^I5$vh42lnpL;5mn-HW`tl`AfX+U}F_;7eRN02yyded*aS>Wm_=UG$*}3 z$DiEyFa=N#6Sfxo#h1G40=vUe{X-Ve!cNged!G${O z-{ra1=olGGiO0KpTnZmU=s@wwOht%{tJSI~X|Wy>LHI4n~y?aaYV-vR4Y7AYCY}0eZV7U?#_7>m$yqrK4wmS>ITLDwhN; z#O4Jj#W(Xzk`W@0K12i=Vvc51YQE5T*$;bIyMA*exeL$HKE;=Z3u^yqw3mf=Q?`Z% z^?#RAAfDAPznfoJcv(E0*Jbb2F$`ak9f*q~Kz88o5vlU%+`4=y;QeUKf-Dtk24n-bdc;ViBR{L$#3w398`|Hl^X|;uDup|z2a4< zFh}4sB%@PjO`@$VeANLHyhw2$p(hgM+3=;+k*5 ze25{dp+G@I!OI$gwF6`J2C{<+rt5w?k})B zzGx!#(KI+Xcoz8N#lR{S!4AMApTthCZ)!i~dBbDSOFjzNm&G=HCV0xT7I>1^Q=ym9 zc(T)wdy2vM1>=!!?gJo9NpJ!<#q4=T?@+P4#uCVmfIs5?wkFH*3HkMbL~ zhfdCNrm`)Okw2jsLHL+q{}8BO%UwcB|6(w0qj@B=b{Hw)L(RAtMt2A~^S%gVLoclZ zU?#vCmp8lUIq(h;nj%I&$=A_$iWCz*%}&10=nfoQk<4 zr`krmRx3uNp=hhev4F4$Bu|QwzX4i=X%X*3eRh5KHoddYaVUrBDtl;g5g#g{7j!V{ zjI`00SJ2wM22$j$TUUn6JGS_X;4S=IP0+n3e&@`dL4d`-g{(bZ6SZT`YteTL^bFN4 zl}-yC+;L@{lHkhRN6Ti^SqTsGqED~@HI<_76E9s0X$VxvI60!`1#p8!=2O>*s@es+w%5kPXPN+zIu1U5cE2 z;1Y-Qt_V>Ka0<+JBh|+ee=B2RPZ zMc);q!v;=mlI4DCTAD6+-r2+AYrc?FeG!t9s|QGfpEYC$3xnbgfn$m(%dGq_s1cS5 z-8GS{p+e~huEK6yw#iu+sagg8y-x+<_U2FVfdTt!Td;Dh1WiLxK@(&Q$e5o2Xcy;G z-NTH@-^lrhNbWf5PJIk^plGzz$r?0WjsuKU#&h$3(T4*Pw$D{^OZ_k52JbEhtZT7G zDuxg5IrFPvBUG@)FfT4?@?}+V+H2$_?WnXMG+dq^5x;Pg_3LAL@!{F8r|41Vc>r!d zM9pV*vsZN41saEx{`}#)hE~0X0g3yv_(wj8grG&Fk>8=6cb{YA$N0DwP-(V4zaQMW zKYACEfGS?5Y1bdfA|f(S|LoL0w8}7QkAUr7ThU_3#X`0l`9mEkn^{#|R)3rZ7`+PX zYj%}FxJWhy2|7FkX7@2oM?S|1bs*VA-k&coF1`m5_GfPv%}j_~r70U2D~k^n?}xCXH(=b6J7lMO3wo_W8Q!n_~r9K;bv6NzL4j$W;Pq zspp3|LwQ=uE)c}OW&447N|cgZ1LS2>G54iBsIG}pq&38evLwa7N9Y^c+S<)thXwfS z)8b{Vtkx@s;BK4uT;AL0K$6y4POdljjLFp(S7V`m3$_OE45^njk_%2}70gtv4j(=Gvb3}p!4f{Vo`xvmvkgGvxW3y_54H8& zCtu^*q^XP_z%3O}WG91Yr>j9AE zu!Rn^rm5L?j?*L0!vcGhhr^;)PcbfCGYJHliL-r z0|yl%Md-bjRM_%gJi;WSBc4LFT)1OC0JHO)fm_>m`*Zdzq_c{Ve`;$bjpoAqw@CC-g__)~juedrlxpq zzxxXW561U4ztO`;6Var)6-<2s5>!g#Hp1EA-y*IMC?S}#fGm^B1xVJ#Wp z<2c|ZU@{PP>(EylbTT=jR5d$T#y2woIe<3YgjX}HZvK#O2~qqk`lPR*kXTU^AT_T& z6jy54A-Z-IIa7=iAri`th(XbZ=&01H%VDTG4^HpcuH8495{j7XJ6zGk@cpA_2(WS- zz{KF_n7Hvbn|cg_mfxRgh<36}hGoQAS6OFCjUjn5NNs$(sd%!xqrE-u@72ka@brWj z_o%@lK92L}^MMQWu)YTd?oE$WS6hEO$Gb|5&{#-0CB(s*`iSZ5wFrglwSBF`+#< z9H3~`2kEwi8T6++fO`npUGb@27`UnsC)g$z6x11EnpubQwm&x)!`ohh0)|AWmX}6_ z5a1vkYB%u`iI8#Q@ze^Rnwp$A$_`V;%G^28u;T^RZXki_4pUeEq;*Ucz61pQ^HSgM z-h>?s<>QaM-`092byyw)7F~Ed&TbeQSS@p7SND@M240w2qju#5Bq0cL9N%OD(RA+Q zyyftz7ci9z@gKySdGAl~i7gP>V3E*e0IE^bRdS^HY=jXD`AF)WKg}3t5PKP&Od&X1 z*f9f@`y)c4%*^lQBHCMo!JL#zV&>_KtYsWJsz+ehTpuj~86oOCN74fv7rJAX>5XR7PcLUjX^~0QZqpJOj+cEvTquD+tg4@xzg_6zbo$&=|z{ zDh?8KBxtL5GcA{?sYXGn<4o3bf5e{9dctJ_k~r7D-$$YXIL(mGLIeZTy5R1$0;ZGV zVmCh#D-#E!N?>553s+#LCa}t(Bk@h~dk4`S8xTZ1vFac6d4e-$gg(X_LiV_LOfQ9K zy}_}a%fGWPYxf|qa67+qkyxaSKvck3fbH%nU4eqVwGtCq{|iYFX20t$WcSznq+p? zA}9lia|A$UtqV{_7UY{Mv@O^6!xJD-Aw=cap2z7()YEb_ODmr#t2U{aNt&)zW1kBk z_WL8Vn7F{XQ7YeY*6VB1FWi`(+Q4>&dl8!OZ7)rB*a9e_XbuDh#>V%W`p%IE_c8xW zfB|rid^qgQfw}zZu;TKo8W{X#wJxMlmH}XV3HUd_M}Yo`!}lI4fxN8w+|3uG2@HW~ zUvknl=-{7$p(>#-E@YhtOWT3O>-Z1_NocbHQ+9`}hEu@n>IC!=P)lTK9@F_)0h1BZ zB)q<}c;kzEf}e*Y%TYQy;UZy__QWE*AIQtbNZJm$x10MMdY{e$?N0Gv{@aA0IEZ+Q z5W>5Xx{1*ZXF#6%7*Z- z2x7Rh^Li$Td9`A70IqT`BGxju%fS5-k%YO2&*bql~7o9AnRog&;3 zh@;YE6}5UPyi-=N)67Bf7gtF)A{>z_VGbtmz zs~BP`=xsVCQVhfvAXZeQua7e9#x!GyEP<%=w~tEQhhBnV~2c8zYF~p&ZMP(e#F{B@tZLXEKo0u(Nv9^69hNI zK@189tqGpLY5f)ZN%y0cxp($sbW@Zqa{dw0Hb zCt*LsZ_+74?@T_Y<__9R=OWqtG(TKG1i{j2Ra&)@kxL8(!Uq|iAh)=c91pRZofTdk z-Ce$1FDUrjA&x*(>R6>oi6z?_sXXJ9SAuC8o%tYeoRVQTDz`Ej6sst?8@h;W)O-zU z#ejLQv8BkZj`huFG=KJwh|(RcFdg5=1by&X9-kt8IWO7?0$~EX^~mecb9I~-r0H*@ zUZ|b|apNVVFxH1`fp+UyJElBOMxJ?z-b0XMtNx{TT_%}j$@0s(VnQere7~!ThpzXn zqM8hVBe52ls!Nf7N+f2dD#=tMwC}(e_jbW!7F`YJ)y>Nc3*Nndzs}@mH}4fUcF0Z8 z2c&E}MRUDBd2y{I2aT*b$2J_Qx3{!k)Bk@XYw!D$&bEwsv*#{sG0<3ia?#Ac+Y0}W z^?ecXO$^B&YG=(;(f>TOv*IHhGI%E~4wdr~)oEVSq$`Co%Bj!$7&5+bxBCUmCs+_N z?`5)Zi=UV*;qpg=!GHeD&s!!(q~FjJTmU?@tjprah0j09VTr{|+&Xhfj*(s{+j#hGVr*M5U$N9Wv`8X2NS=eK*w=~$t;+5l^Bh}rKsM0ti$8Rdqdi3L9eGM zS>CIAwCp+!*@2d$fihtJfz&%SuKT)AT&|>m-Lyh1r5p7!f}oLSO0_JF(i467de2aaSJqIh7T=MV`jA77Qc4EtzQaHQ{fdG?(L-eIwEZ0ptng&R$9dQ6@=P?d$ie&imArop zhVPgM4U8A0@eM2$l{Gx;VOVtR>am?)Py8YPp^Vs!tzB}oF>nF)g(fFMT6dhnL8}%* zXWEUTOXuPa`MLC9n?ZEGG16n8X1;>%dfJ#V^^v(I=f#nnqeSL@5kz zPo`4Vl~sw$4?mE&!5D|$#EEma#1u**^c#+ULQ>+nd#QS)D@7~c zu(2F@5-%8AM`M!OA4Tf7Guc;P*@e-=a|C+MDZI)g+LuF1;uvP4pvxJ5_mjm$wiCoK8w=lcacIOarHn7S#y+Z~7UwzHLgA%3X&JvR^2k6NE;T@t?e*o(SEat* zuiL(V9(@oE65LA4#n{h|-Dr4h2c*Nr&3I!bOp#cXkcuQ>nfJa(5=1)Z(jmdiW>R@5 zWuj8je{$F~!|{(QLN6R6R`TR-=nv-388~Xwf5?Qz3vMdcKb;lf49udM@bX_inn+mt zAEZ{ef86ek#?(W-*O|MH-$_0_vxofS=s-!ty@^CzLN&%f%&1b#-S6JDqV#&06dD;> zQNy^#!e-!oCVHfS8hv|Ds9u0TEa5@b2_^E_TlwqsL<*-(3bHnNJeQlx@cW}IBS@K+ z#TIcwV?Js|Rp>i%r_{B9?{=Hx<(c12%_jF{xR2XgFu7k~%Fnyt<0eeX`2jI0Yg5(< z%%$yN#?b*DKX36m9(f-W$kC2xXq)F(1fE-2BIkk++6KD0n)q{=c+YOTYxqM=irwUEYMpeJ*@HQHVd93%-xAUMwE!2Gf!2^wM(^^H2P^T)mLu3@p z?xqL(x)$Bj{Ji9R&m8g+(k4_8UQGZ0FEpqM8g6fIxS}%5Mn=H@lbtpHp?GZl+hhq%k* z$Q!*7UgF-eOAlg%F1Q1$d>B?FTntSUx)~J$z7B6|ZhQ)Ihc$X@hVGbc(8yIjm2&sa zQ0bPn{}gQ;fodq&B|{V$@x6hk{T&qzjXv$%VUlZXa=Eh!MhD5xQIFoX)k(}O52y(p zF&W1Z{3>60^``}Q8r$ibG*b>he6kij8;{xBj7vH6bERa<^hZ-F4`7K!9lm#&aNOHk z6Sv{@dBv{4Oa?*EZcfrL>6(FUN*JxY2iE+69E79k^i+D1W8mn*E0;LY4@ohF_ugd9 zk0f}m(JA$yUS})Y z?6B^1xs(D8k;f~Mi)m3Xz0#elO^6e*Hnt(fxJ4(Bu3wL?;0BAtu;LTH-F~!maL2JNA|z zH7?u~@BT~Rn|TQmlmVHjYr^_VX!{zHT6GmVc$&&#Fg*a@uiM+2qe;!ma}-XG13)%> zTbRd{We0Bx`66W;Coj;*FCh&$>TfDOSj5FNg0_O zIQf{zq&hxKS(hqG#|d;@jt%xcdVV8@>m{KuEoUEO{=Uq?DBFv83dM zS)s3-8gjhVx6%5P0Oj4q@ewrH3r~p%x_7=yCpY zA^6xdV{YbGwrh?$D=8@vQ%&Qm%ZKUc)leV;?O=ial4IYl!EQi{8y9? zCzU`lyKC~pCqnNS{@lyKkim*0{}@^wj+GNdgN0Qi$`?q4e6g9z8$9Z%YmNFpcQD{X zd9L_dMn(>oizKo^*+ac1WkVj~o@v)6gxa;o{?BD2X$a$Dw|i zmY<*BWY9Mm5!>*gXGxLSi>M3SGZCI#^|pl6JBOo>LK1}dDT3j-3tHql)IW#mPqFK}%1m~& z0vzGsm*M>+I;d=#O$FJpJHW|Po)ZHH{q7Lng9KhhmjAI0Fv*pWd2pv@T~$ue-zeRt zq=z66YC%`jL5phAaPJ}xN8H$CF{&w{_mtdQds1Wazr`#b)~23DX|kJ0bJwvQ4XZ0f zeH=VyRL_1GIr$D8Ia#z+J@vHzj75=%MG{7FS-;LI`PlS+zr?5Ky$pA_UgG|&!;Q1; z$_imyrnlXjpFKUszdg(L1;rNiHiEj5D%?(=3I=YE+hHi!gS(`9STyIn7&7;}Vnll1U4u9u5o(#%(2v|U=4 zq$_ZfveU(=+}*?(L6ThAA&zvtJvjG2l3x1(aSfD#%gRSlVX5y?d;&pbp`NK>HTvh<%#5Ln>Pr{av#!T46* z3`K72%7u-m?QvKRrxZXb(Y*blW%C|1Glch>N54+g=C6AC)SqbS18);^z&k4>qLSja zYB@G9T|{sF{QM}`%|E3PkN(}5C9Y{%6Vniu4`5GcLISeaX1#@ht#_xeHV)1JY)%qg zciYOb-PkM~UwI4^C*4P^JBTk8YGg^THyn&9{8v!c>qg3peT)Yks10{M^S7BpJao1U z%_FH>4ZnbTboN z>ix5;dy!(YvIxPHXEytyE79@up~F;>jUUq`s*5mS>j$E_}i|Ad`d3DSDc76OWpp)*r~R*He-G&D$Aq{DmYFd7-k!F zdd25^i_Yq6Fo-#rq(>*GC)b&2=qBkNZ&hH4w&z;kakob^E9p{F7P}q;h(eOH zv&>Pifczu4O04@imuP(S%Y)7A4JtCEIgQI=&Q)5<5NhFkTU!3i%x@>H0Y2Yb@U%dFH;yX7{f9O$}c!2YBxyEf}YrD~!MZmlob}rfp_mbDw zXHGJGc{}aMNA(#E{B4RsK57><)ZXn5G3SYu=Q>0T-OGUinCk=KV|4Jq{s@8BP8&ZR z;ji2DkQ!?0BIo6=x#oFck*j@j*)Ji6Oh)mSVE8w%E}z*a7P4e$JSaQ?@RK_6C^9DI zzy;OuWMF-5ji0#}QJlHAqtY;XrjWmnb`&>b8j?3>wr2j%$%ff{2_J^9rO5m(C2`xa z2<~Og0Ui`(G^V4WIxg(rD>A0$^ZCoJQ05cN4tuGS7Rl{ku{yQaW0v#eM0@Ax44goZ zU4{trH($KlBaatNb!6!k&vc&Mf19Y+n!JBDkGRC}(R~sww_i_iHz{IYy}qpR;Zc*N ztT_-Lwt{A}Bu=Q8mo}dTuFWrkgM%M<5y!+wS}#{F40rYskMEGSLR&j?$8D*dpc42d z-FKs3DaE3huob&$Ta>a;!x8hwvx)PVw$V~kFpT13IKt(u2OrhL+|&tE7A`S{v* zzjW+Sbu`eu!v4dym}KBM=T=H>7_I-d)9pPTe9K>GRxmIpoG1gm9&yfY*WrrF%C2EQ zEsI_Bx^U(y&=zl`1S1=4iwxx;ok9xg>aR2fDO_9Wbe;TBZZ{nQ@JZp z-biFwHda$WlQS>lJIe7I5>bg;lYsNj`~Ec&2!tIp?cQRKM(-ACL%%0T+A9Tv1}9|V zrJ_^n7POD7as}Eid?sLG|D$$J;EYlqOL6I$8X9taS%aP-F?Hz>RQ)WhFTo)88jfen zy40vglE-vXdXIHq)M&cpr>6#4JbL&ww&r4a4aL#`MEJ6Y?iEJ%?zI=Hw`?S2#?Hlb zRbJ#xRW|iIy>?R*--X8_R~zv%Er77tLtHoEkBj4H3GtkX)K%1vbS(f{b}aq+3jHPw zGrbmnH00rG6ElJvEIQ#U6nCo=jMiVNH;YFnIB1}?wKYp1I+i2wP8rN0_oI1b3Jj7I zM^JMp6|vWI1fDE=aFR^~U;r55xpEGoG=?3mZ8AEqs{0e*q*YU+GF(j;l!}^m z;;VOW8QqNHQV>}q)~y$-(u$4CEij*sXfNlg+p9U?V(>Dl;}eMFea3Fh{K~JIOhevs z24+x)(qCvfnz?$%&s`w@2slm3TxwCyzMd*7JQ*VI#0PonelBqy`Ay&z>Qu!}=sSi3EYKLmGR~6@u@}z`Uz2_HRvfnYt{3@XG=P8{ql+RsEPxFwg#Q4 z^cLx(o#lFoYQ>VX_*h1j5f}}`p(blpjp9RZZunaVFpkt2&Rgu{rO&dEQqQUbZWP)L zNtqA#K8vyg#Y-)x!v&zQ=niU;kA?4O<1T{<*kWX%&5}1*zZe>XBO78?aR#0)L&wto z!iFit0;hzeZW*ysl;lc+4;x5jj0S(nh8EQ1m)U67V>G?I3NLl12M=m_HLvGK4JB$y z#KE^}tUS#=R2sN_dexERWOw8Mv_dttvrG0q=V#l_!a4*IDg<0!a%M?%EKVm&c32y27orgrp2ciZr;+XD+UHrTS zx-WU9zw0X4|Ll{B5}2Y;+Ua5&r1-Yv3Xoc7AYT;Pc3j#VCGd-_`d#{_b}w z(S{Mc@^_xLT*-@L@YQ^PG)IuD?%rGNQ;Qwn1jSl@@GY4t zN}pcaniyrqH}hWTFQ*=!HG(C)8g!19sJ;!lnKcj7%iN>dPv{D%&H(9(c+bsKC-p&W zGA@{g`$HP?sOz&P1c@GxgXZml$v=_LBVn)qF``g|32~9?V zRfn7Qf}_qm;i8DfDc$#k7zJQkWeq&leWc^H63Lz&R*Fw?M<8p%(4ka#j+Gv-mP8d<_Ql zI-t|&QC;@WX2so{f_6%b*>7iR`Yp~uBu8x}GNqUkA#p7+Gjm0^`ubFsV>X8&;8G46 zz>SmA@z)~a$o@^o21Wl@_(Gm|=7p~I8u65GXM_8ec6u?0J&lF|!LCEZQtj)dxQR!j zpSgu7CM=Tmm~nOME7VJ7K_exfd~2PH2G*whJuFXfj1SA=V`7Y-Sz2oqr=`2PA^k#k z;KU@YZ%x;TLQg82)C4(Q?mlm>ETlv?>}1;eglQuYYO3$ z`eL&QGn0H7!rSixr&>ii4QNXydo^}ljDyy~eIU2l%Wcbv0S}_Sz6!ig*1EJZLr=qa5#B2w&+fDY zMo%v}K8BzPeCW0K=ZG*)OVRka8=xbn8L79iY^?Z*^viuqGPejF+M41~++&|g`_hxU zw}~{Ca5#$}fR-12n6cE%0G^|MUGa-|I}o$`-h z$`Q*=Y0IKMtTL+?Ku#FKWhj-m)48CW^l1<31W0mH`xFm$|Kb7&sgrn=B-MQXKuhK> zQhYBx>EFYMIKK-{!kH5j6H>eHL0~ozz_xs-y`6bJgB)w`>x7g!pW1S7FP#8T0mp@K z{+pYsk8nWdPWb3mOi z3VJbY))>Qm6b8~CAt_>K8wBA)+@LNd;%qWUvOy=*bceQ6TA`wGG|y4nRHjWa?@mD{ zXU(}6BRi-W{YH99<=PEM*i@u{rR8U=S;8Uy82(tytWrwR8b6mKVhs9!DwHRU?CFl5 z&ClMBVIX*iR~plFh4bRiCGI1FCH_`7y-H>)lsI1iLc378{@%Pv;I&nQdyy<6+Fg?-*zAl<{;abo)Mh0ENlI@UFYvo%^sNQ z^4>G-OnkuOvo!vL2MP0$X;wc7fdV+^cXir6aV_d)XG|qqARm3~af+I=o}S+I2R1MP z3A|PYot~hffth8T+w-mNuwi}V!c(XwR7&xZBX-aYKdx))#<4&NuouiQ9iLg(AfjOA zth@J2b9(vZc0Jx*Rx%eEm-?1A9vb(#8WUqF+lJG>9~37O!5ivhoqIgQDE)U<&82N; zap>_!_T89&`xSng?wK$2hD=lbFxADjn5*S-wcxklMwMQ|Z~MIo{&)PNHa^a6`~qBy z_`d0V`3i%s0odD)#Wa&tM{9uCNJJKK$->^zng)aKza?&2R+z75G~6mACs+I3Q@>!J zaz8rZiO-EAwL_Ukif)3Gos@8~Gbv_8DVVLI8c&9BNX=-N%uspvzz+=Rm{pu2ylX>5)vYWME>zriSbi$e6D~no{{O5J5^k#Pu^S{aBq6b`#Y|c67fdaqw6;h#115l zKC1w6Xa30nw^PHf*Vu?VG4~2g68*`#n()l$8G0J=Z(3k0|7J6{WT+XfK_Y;LkS)xtA7j)tUkwSJ!NVJs&SztF7^!Ra;jn?<>$=*@Yeqa9FkedkLOuJZ@sh0Wy2p#WHYxpU ztx{z%J2f|BUOhcE#{|fpO(@4|`CCW9fy4M?Wl`Sjo3tYcexU|M<3;@FLjz^`i-~ax0$#n0>?h1B> zzu8oV%4S_xVCP$cwlz3-Ns5Y2hKH~FyKih*VZZ2 zNXEY{pj#PoXfovS=Jg9`nb)Pyvwj)ry)Kvk)3>HvC$k&LlNK?d6wjC|0yGDaXWPAQ5SMY$b?e$11w}9T^D^eV%zBk<<=Q(P2L^MdTHvG3zaWrI zD-!rHOt9l`$;vU`oqD}h$6syRvB__C-|KfU7F;bjt`K@`&lrcFCDZh?8_oNG;Z0r5 ze55n(mEi6o=hQoF5+~vnt-5XgKX)9nkj)Z|RvI{*7D)KXE{Xo7D+&P=7!6*$cro&rX|}ht3>vMz$x<=uQIIfbz00Z-B@Nzftt~Ed}QC< zth+5o4yh@E9TrBC@~}$iN$p5n)V#Qe!zIn1j{<9>4(Vyst`*Trhb^4cy1w!emXCpE zaz_11WKat!kY}!BJ+IB~T$%fL^pGQumk5L@9=`03d4rW_zkFPs>D0Wu-cmhyo~$`c zb-W|B9d+8&ZynuOd~-#qd{$xKBHt2y>sj^o#$I>s9W&OLw7i>o=u7w3R*Z!#ORgOD zVQJ~op)+cJ-S-S+gLFQUq5pq<69(VU+SZKHN;&y43Uw(dRp05WmdK)5f^#9^xi0sI zS3|v-fp^ThBWJIFMa-y6i<&+{&dy)VDsY=pWwV4p%CZ2&0!rpmBWR~G8Do!ju^4Gs zPWlcP^u)56GN;maT&D{S6vj%TXWfy_mhw=pn5m&5X>%cW246|PM(w>?lM$k$y9H1< za>4h)AQ364578%^ye<{Ky7JEHsMV}to>K4NS4YMkbY1w+c-wn2@0jj}oAadS4rFF9 z^?EHHF_?HQHeCeId@g=|Gy897jjnZ`BdO}fuUv8{DfOCys;Gp-k8@jMa%UB(j+ETT zM7N;8z@e8DI{zS7Sd=EN`1}s@=Hm|Z1LVW(U=|3GTU6ePI&C+2PK$YRoQMwcwdUp8$QWW{L1$=z=`y2Z`@6;UjKQ>56VXQBS z|2>)z1R}s(0>D?guj57!#v)bU3KQUt#~VwT6}4<0oM6d@GAJV&bLhkX;(Hj!itawh zAge}3Hg(tfP2DNs7WRTDEq?RuafN$)clnmQ>vJ41lz+~i?XRlf%Uj~anR6b{=fd*0 zc5^3vwa(<8nI~K43``}mr?2K@Tdy$3CTk7Q3WqDB&4<4p84j8%@kqZn3Trtz_&XQ^ zc=1ZU)iW$M{aS8YdSPj4vuRV^s1ZWe>1e1C>|$?z?sW>eyuj;W0AD7*oPBeE*U!b7 zIe7UR{$1{47EbbnTCiU_Ud}k&XV&&h_3VOe6~_sw0>zpTW3+L5`ev!vPHc2)hb9fLr)>bX8;J*2?y&KG$y{r{PdeyyR`EEO{;`BW_mBuvSwtL>wM0>+O z(yaXwxTOYudNdC5)ajihnS@xzOTp)9_hV{VvPoQ`$l8o`xes_H9z50;UR7v!7-&pT zbwgrFw}1fvXK5+Np1FzC4GmWak?~tb84>o}IX;ZWog8?SBAAU}bC`xvk(D?%CE0aq zGR{_6-%lRV{AQlB77~Q|4(|24A#zncSm>%*nLzX3&6M+(sWqFV(ud{@IecjM{jWsd zvomzWP}yFLu92(VwCciz3mf(toqAq);m0ODYvl&Z{K|#nQ{knxCaw-oJO@;)n~)iv zj#lw}zT{fe`@l12xMeftoWkxFx!T%ZueU5oebZ-ZUF>i9xo>eHnKJX?7H;M`jwX)m{fr*CDw!grO;17bxv{a3g9j*qMq>}h+@`ucG- zov1xzO@jci0$Jg~uKek#AMap_=?_!iMM6XEhifa)NAJJ9)y*vjQ{JC4v|bE|VH!CY z1a85&jeCWd#CP2>!hSZznYV5%a^#ui8I)F4F;xi##P$!=Jd0W!z$(2{6Grv>L{DT#z6O~ru0Iw zgRJ*i8T{BtY$0;SsIQQrUIfVS-CODXroU($%++xltO@j!aT&H8b{J_V9C%8MbBK?$ zR8(LAZx#3A0s3Y)$5-0=LM%D`>5q;d>IX#?a94?AT*Bv&-3nfl0SME~NIsmhBSF5G~W8d&WXBVub58WS_XTRe5(Mh1(^aQga;Wd<``v0o_)z-Mv1>JGQu3R37~7Eqy6 z!R385yUzIzNfkZaPtbJw+ zXZ8z)w%ob)>C+Xwnf+I5+g27L`qd0Bvv00(D%}EV@VNkY-y9GdzPw@#^uNpqo|`x> zfv>DV%TJpYs?`L)1CSDqY9}hx3*y&q81El4&E7*#s%$)IaPUUXbobp`QBYeYcXoo$ zkqwDQ!$t!GgU9`hzw9=C7xs9dN{nva`TYZj0QoHbTRXw*4Gj&o9ry9^DTb@p{FO5o z)P#8a;+ot#6$uHA^Gh}?H`hsL3Pi`o?UoY{56}D_uq+oW8NH@_q4&lfg|DG6k4LP% z#rJ~mQ%(Bx*EK*gjf|^brR`J*I(KgLDib#uqVznN`k^UJ8rQA|H&emvjZ_a7GVv&S z-H}SCHIoZa9f%_(V^-slnaK}GlF+HnV68CV7>l&<-I$Jqm5b}Yuu8JN8}V_Jdu>Bm z$v>aXAj__!r?)mSWpN@H&mU(~T2QHmphE=(x)xW_qtoggJ_GvG5qzm?vqcE>!z^vo|D9crq#MHV2`s8y|_kxo7s%P zEX7~joLpA@a$Sf#-)k=|Op8z{=%-Z3n> zquMI=+mRnGvi8k!-sbH!c-Pac&~mIX9s8fbvU~19()Ucd)gC}fM5>dXU zyNc{!Y?mQL)z)p>6quKah$Nz5czgqpl(W6?Zn=JLDbl+q9xbb!KC8 z>cRNu=LgyfO1kT=9*y(*u#9Eiyo`~FXkfWtITbN~{&U-Grh%^o_UdFJ%pbQVBGgiz zykQyo`Oi!w-7t0QD{@LXHx3vZhshpZ>Oep2PAqfgub__foO5?og#)^AhE<28^CuMe ziL)A&R4iN0@MmjiXqb8F>ESd@vmhD^OxN-+@w&7XP*HyCBfskE5kCsTYXoefo4PS! zn00}oi;&*W=hve8#YJME<{mq{?<&^H3Mkrl5~2L9?@GTX3H%YE$oezqVCiXm_QwR6 zjrXiF6G+$;$ea(!<{WVCc2}C_nK{ElPMb%QK4wEGgaT6B?cT2)L^8sg*PLwdu;szd zCFYB|zUO6Jh|O?n?g2PDTYk^`Eq~FZm>n2e!0ppn<#2ja@V%73s&1(=jTAKD#5Xh} zV_bf3YW()0O}ylSgBwiF=;N&&yvg6*V%Fg$sBRRccVx3fmSJqdxd%r&M(dgbgMuzX zn5GHp%_cq(w*S1%X6`j=Ak%(*dF?~qfpH=-^y^Dsi3aN^R1Bd29KCe)@7U|s2XOo> zqD*+}y4+>m*JC{O{#V62M)p=Cqqf6Fe|!(uQKt;y-7TEH7qN(ig@sE%pg(m_g?Kk< zYleM(`{Zg@UEE3#-sgJyFygmQ@e@Tj(JigcI<}z~3FkEbo-NHRy){eZiiZMt_&z8b zy|0Hm>Wv#kYfstyd-wdanN0am8dv_BELce&wi2y)=z*IK+EKuD7GmlGd5I~aoy(lJ zX=`7?QCY||0J3i=8hNJstn?7koLGsmdvC%{ALHAmy0CRqVPRvtV_&Ckx042JfRre@ zpUFs`iv&}->&Xe9tFYxmfFY}JrRe_M+cUCv?krjgb1@3=Y|J1vyh-j547oqqT$K_~ zUGUHI{`p@VtC3M0-||e2{>3Ri&28HvaHa6--ewvY?Qf2NBXSVmQeZM<>m>(c>zUNQ zwP5@x26s*Aii(P)__tkM2_RH`)jH)MD>sCGKC-b%WwPJ`t;5V4_%cfYO%ei)QH;Fe}5Nyl`aB_E;S~n*Z|X(|>WFW_~?+hW%2g z3w3|`qBBpJk-Q17*@-7tLtVWrfPTg?Y(&y|OhAlV7-_)IT2=QD(g#R#LTUaRm@uqJ z4m)DCt`b6FS@PDXSrdkCAZDzONQuFmSMvK$mJHsuer zt!~XfwEI>Aajtbme}vK2^F6}PX=b2lTTuSktvRy$ME431CRs>jSVu=Eqw@jV_bznB`LL(J0F(Sluqqd9dQGWX#{IhzJ&OJ&qLG0Jv z@{J=tKjtPAWssw#)VHX&ElM0*C{ix)`Pu>HpTpl{UBCi^ zKP_gsyw~-=wqkNJ&MGhO+uu`($aZx(i7%$-SBv(!k`N0X_3>NzBJ0+f6EjHH#m~p` z%7D?Iz5XzCHVLNRp9;iDhCdDB-s4 z<0vV}+j4GU=bwex&&3JH+H`P5(1iY3KrFT+*?t4T9P<#36>-CYCi`UdA>0^=V7yIP zhb#b0Zut_bm;LgD@Jwa^Hm((&xhD$!`3NO?BM#`>;rMUgj*_$d;}QLg0EQ?Ij^Rzc#cv(|v{W;E}_I7-7jXG_+$S#zIF(7)%;KlJwzNJ95X5dDj$+`nEdkLmDx ztN2ZYzqkO;5>Zf?vPB%7S>5GW-EujOH)M5DzEwPZ8bX4Fj?SEW%H#Fnx70}qh|{xK z;kB0zxKYCN&YYe6%!X2o@aMbXNGn?FHh+bUzX~i1xAfTk%o_fDIQoh0B==s7`{oML z+y&o%uXbZ7BPS>4b98$6t3uY1a74AkJ(6*DVGli)hVfj1jgStYQ^r+}FC-(CJ(kd`h$n*>a0J4)$f}k^D54tdy(xU`pgpjq_UbA<#Xv*#Wen% zC{&_F=Us4X=Eua(p^*j?8i0Mw18wMaczndM*-Rnn1Gj{pCK~7UZy_csnX^Q-eKTvq zf9JWsK0LJ*XKi>6J&?JCQL%SFw&hky-$ZQEMuR#58UOjp%X{dnNs-1Q*!V^gUare= zV*5tw>y?RKkkeIR({xa&=W%3oI_3PnpNUrWZL8{rtRMnDO^gx|Y)EIf;>=m5Q^$Y( z@?R11=e-2M6QXD2%)3xz81TOm7bgdQu*=9JHTUmNJ#q4+((-Lw^oY%zS_b?lF+QGp zY`jk*5>~LE55FV*SA6wv_g(h%o7m+nf`JpwyW(0LG5%k4Ng@bu@H^uml=$^mznr-M zBG`7&_Kiwe6e}-M(7cn!n6&yBRWf#5M zr+?R1n=^O*g$K515s=t&c>w7z$cV(32g9&(Rr#vJ?{yZy+|aH|6q7fYW6QvUlg76D zVm>r6TpNLN$Rx*Xntiqm734XmICvKDHmo0O7r|u1w3+X5x!^x|D&^d6H;EU>h6*GO z(K{G3XYbc$uR_dmF3?t^{<)eqB(SErtqCL^{h6n!@FN!$7YB{uWich)0q^!IXmNLu1H2$*Ss{3$r`V=X) zQQ-imcszHld0p(qiv}a>NuvzKC->9DNV;w4@54ubMoA+A3JU%Cc>dG{Slk6dyk8(UT|2%AVQ( zh(UfWr#2gwv#)BC%b(B7;fUqjY+3O%NfK+`eUiD-V$DIQ6&M2q! zi?ymhs`t==NQ|)WcN7TKfQKrYjcW%WMA`JWC&)>341^~7@-$VoWHS+{sIx>~!UZsSZD-q~+bASSVnjC3 zqy}>sJzRudE&fs2(i;BxYaGMKILRb+37soKK<|&J{V1O-o#`}DVUL(n{AGmPuV!+&5um5^F{UlrtDjVsGYa!zDv1O%_Yj+^# zf@(t^L(-7+iWqfzypfW_s=pgh7wt3&ym*}c zi~f1hxN>T7N`5Q|>!W`$Rl)`C|Ml#v(RSHZrd7m!`GP0yERZhk)i*T2GIg8Ewz&aKBm% zLyDQqKSKwL~%Sa^O_7P;#6_t8*XSE8p^ zT+@8juhroC^8|tg{l{XP@Wkhr1p7zR8R|B^w8hHqPhps*OM{)Y)`;$&pIJjGqjSlq zDFRL?3`*-2yhhJ;AWl}`$TQ%qUIq9m4Pfx`r$E@Iha>&Gx>x<1DQ7;g&v)pNtUP&V zf2(`}Vpb}b_#p)SKt?hu{QF?hr()9!fJT7KNUL*Z?T=@~))jvHh5pZjMRAEGTraMR$-2lXjhyuK zr4jxK7QkN)al_M!esdVB+u(kFUgUAGVHpgh63ILg-pJtH^z(<3`qIJD?~kRGODaBK zXvfV>tK9dR7aou2yX(!md35$EI53zKOF%si(uS?VIw%rWL3!)-&20N1;CuI0;-{U& z9~;Oe7Tdd~C}|HppY7a4W}E;W+&!)Zu0H`Gugug8He4<~hm<|KKc|v=eL@QSp?Ob< zZ*9~tqSz(qAI6W!ievq~>AeUTBEI4E0cJoHF|jP1xiG-rL{293jbFy21{WpA`~XCu zzp3moWrB0x+cReNy-1X^L33$XnU$3l8WPg^BBz25^!|!!^rx1QK@>YF$9|3eSl_l$ zi|qQorih&;S;kNH87-7@Ue38ElpamK=~53Stp`#mrl8R5R0HIc z)(Ku?I9wg9lNeQ}zU}@YzPWodF*goDZ|v$ZzN75<-J#lhVCND@eq}gM3(O{wNqLsz zXRYaLy>nCSt(fE=!FOhHUG9=~EiK(M)4%j1*C86Aq9DGBUwZUNJ?QM&M>C^U8RTea zL}`Itcj)j7;!-q`dIe*E=0I+_Z05%nGYY~WlAyx6Qf(z>ez7aa@8I2@?{dutI%)Aa zlhJ$}@*kx$;rfmGJynFNJO>bY-wQEg}O^%u&PR_L@yIq(bP|&T=U8o%{a}oWMu>De* zz+XMzoa9#*kp8xi^ukqOrf3L&@v6OM3+a;3;9(7y-kZxBah~_#ZWdsE%1IvM-+M!p z?2YBKug#=krqrUl{e1PM7|F0c0o5;Uu74{%e(qmJZbCVMjbw*xAg3)>uT$Ho5!1L%}#)a8%kUQUv$DgRu1!)L%^!{7T0`%hg`_e z;c1JjImu`A)Uy*O7@HMCB>ywQF>l|5M90bE@9Xp@XAUJ&EiqZyXF29LcZuk;Yzz*t zqkpWAw@Y$)-s(&va{TBydb-Y*P?x3GN zp>A?@Wuw()vE0zqSg8@==nxn2g4^@v!AWsgJ^^#7%MK!n*=k_zFfQv~ zWjpX(b$`o>1?T|j$}iQy%kI1f=gChIFJ2gPYk-)czGcgU|E|KB8Fi6<#~a+Cj|28M zVZ>mAWw;NLTu5mO@nN>sl}8A@G#*JFPWO}Z5;AYRPs;Bwh`6-JLNfm30K%ShrG@f5 z$BRW%gZzSmgKC_HUn59a=GNb&OX`3qSIoJVcj=`1$(BQk+{r;B(c=pWt*hCd?=G7q z;5K5fc;33NSNAXqWxfIDk4_H5Cot$-6L46}+>P$|CQTahlBZZs-2!+T8iJ$S`!ss% z&xr8H#!e-Bbxj7F0X^O^>XY0k+xLfi11n({1{>u(*|*VS>s%wPPnS_@JMq_naJtO|M`|ifg!g3R_d9fhtsic0r~)3Wy{m;YvQP-w?0T#+w?2tsV_+NO<>>*OwDd%Qg* zKH2M}uAxzdCT#+!YBk!iXK|uUD8RlS33w{^kWFn zyLF7CB2DLb`3+)%W{ui`O6C$X#`u^}41U0-2-;P$-6CPtVHOk_K z)FZb7iQzAE(0>-{FVc3Jse+%o4|bTEUAqj>L&z^f13iVHddRYGK>dXX%_V zcM}-IvHJe;g;S6}3k)c9euaXD9*DT5fDr`>>o233S^JtmLvFurjMVQwxSk%@veENK z|4AlX*kXs@SFdzFI=TkXst{bnF2V=shlKWQfV_S*HBOe>UJIc?Q$5)A!cq!UMw3yd zEA+`^|GH;5Bu`_DyrXu_49k2?Ip$TOvZoj~{FW?R?1W{reUHnpTeogcRu+9IDz%q< z-pMsW6vh-OqIkxP#F3~iY!^sZyz!RO>v9V4<#00PhY*h5@^r4CQFPlwPPF5syq;Mc>_iH29=mhMOKFBI{;$iCISS9a@rJ!HeX~om zI!J6A=-uH;wgH*!R~`~XZ)*x^;@JMp5@pB198!i7*$$0>q}Kk%+Y&fJbL&!c`rXJd z^a?T!TI&ux`1Y{NOu(mOPbrSEHM`?(hA#yEOt4; z@JS(fBRS@OB+Vz(5W4k~?}(GI;cv&7)4Nr<{#%=EA<7ZM+orNrkF;hmg8RIHTJv9} zp7OuPq!*_u3!3OEU4bP_5+uKI=a=NUxS~knP2M+nI}1tZ zMaL(19K25FI=5Kkj`(4{N!}%|3{c(XgSIlN;OmH>I&@Q*(`u&G34fT;*0elq&1_f< zB0W5m`2L+JGTsO(!iUU`Y;_p67YojsJtySM@y=KH*OlV?v`tL_ooLbxa!5)6btj zUyi=q&@SWBaiqBdri;3a#L@r)?^Vu8gtC$BUxt>q9U3`Ft40nJ<4`91l<{jkd1n%m zk}9DUb#Tkt`_EfM9Vsv?K(^*jV4{Uk=#(vGZD(xIX7(d39w49KYDYe`vQNJ{WevqM z!CdiP#*-5@eBS_ECc^w9NfhQ3Hf{$Fb`<8`VR(vcY(m`S!;57F5UJ}9_w|f;)Y`D; z@#lT&C^92zL4x>0{i#7ljN5#<^QXl2&n5ef*!}B(_yD@8X`nFtU`m`R43y{Ce!p>3YZkUw~ALZU0PkT|y(0a|>ym$PWbvl6*_2=PwQEt|kiBe^%^||I*hZXN9GF*Pnmgxg1~YI8sv4w1e#K)$6kO zmcYN|63FN4qz$rJ^2_j|6G50xIszhSH>&DTxIQte%;v+J?_uul>8XNWp@Wv@28BIO zL*m6hGABh|8ZvhXW{&Klx-Ge`ZF;Zx`*vHrC_&(F+hy8?CU8Hx^4gq1*Y`G=49DA zcFugD>)n%MuNCYL%ihrv3KXWAof6+5*D{-S%Cj~CXB{bSDy1L+fnou-~2+DGar8Eo0TWR7h!zR zY2xcIjII_5=6)JkQY&`FACp>&GZzjo(#f^<7s@n4_G+5F2;uy-TSgW~`Bx&vT2F+fU`dd`^vJMkoO$XPKg z!ZDxrypZj~CztV}MYCvMn2SF@7Lecbl%wGqhIm|r`p*C+Ii|7u6iLFDnM&P!<|V1| z$-Vex2PV0+yEW*BKT9j75j!+Yw)HK*52*5H1q0wON;+3v^AiQ2 z-k%L-P?EjOH*EJQv!KyFX7N2ERWji)YP5F@+Ak zQ478>nqbpq-H2hoiEh9P`j$}4D?^Sa3JYn)Ow{#;MeYZ7Ysi!+1^$nef)N$QS89d4 z9Qio@156OH*}+mENoDEMr3q*U+^xNUi{cWv44LA)>? z7ZWDtf7IVzD^3yf+eUczL`am>%gx1gHhqB9lUwaikefGbxeKPcRf0ijw`d4MgsX@r z^N0IC^;S8({doRr^48l$;)|lZg4;$#epYUO?q=pwSi$@H_A@@RFIkb#pK*7VQ61Ur zBYQsh?Ae?HR*ZCf)WsR+vG%|tPUh_f)H8DM;T4-vp?wA?b~|{9Y4ew_+@V7~=sXE8 zWeEb{Jk1$0VxxkO$EG( z-7(cPEvke|*qnS=8Y?;|R=ec&sAZwVq!HdQJK&3!B=%NB(uqX{gD1ZrAVdW`4;TZ! zyhD2XbM!yFlxEV-co5y2~0QX&_^_H332)^Px@dnrctim-ON|(0P%Ny zxutc(uHTROpU>YyWJ^CRqzSn5dmH_$E|d`(nx1++eF++gmpm14+11!l>Qlh9RFs$- z29pGd$a_z=pzPUVPV#&&uc;erb$)RHHcWlHK?W&>qKo&T&3tGIIC*6tr${%F<+bNw zzkhM!otz(wS8<|jKH_@hdhffnS1%DmWS=zDTjB5-`_EYYd)HKgp%=54`OiSZs6(h@ zUmgn_4CISWNKD)c)+YuU-|uC;bpb=!S<@!*dn>^=tvXVJ^|wk~DvTSxym}+q)FO;z zs&^1y){lkOKA%ro0E{{R^pYsLks}lWXrMy(WO@!tbmRuVW10aC>}0qr_vCtS@H@Ah z{t8BsCjN`0W?yb@n5+nN0_gjtdR6WG>0^L(y5WGqvb9)@f0A5QfU!a!JWz}KOi&>V zI1qw1GaQ}g|M$bzfIaY|;G81eJn`4dk`m5D>JtgSwp#Y!b(RQBcHrFsBN%n9otpab zsR}I0sv{~WHf_6v={KK-2U(DR-}xifs#s*w$YN32o)(U+7F_kJ(ZTND6=RH5v5eLm%?L( zmU5?Uv=>^G@;k5lF2wUaKF9HU{&3_e-PikizpmHy8s~Ywpd(5kDb`S=+Pin}d?pc~ z$*+=-2vNyLP>sd1Lb>Lbgv)56bNmsbe3$p-<6;_)JKGFxrE_Q=ZAb94-!+CF;mT_^ zp?T2vHb8#uS`*BtwR4r)M@)T;9ni1i?HdFmUaFjdTjD=WDBCvOG1KyPY-3JUdvQ3wPcm+rLTw9~tFBg}R_ z+*I_C0?qD=2_nW0v4buu1_bih}JaMZityEczh!PeY4haqpMW*$3)iwT2ck)!)8)u`6 zF_?23MQ6+gB7{el-Fo6g)KK1B#iQYM#QFiZPw%gfQwUn8o)!50ywe;TqbaG_UP$Ao z-O;*?=~jJcggbxz^v{ww(y&2#d-XiuLGrVgxW3}_?S)jyrmR6&zdkSz%`VAA5%>Ps za3>4rZ4~>B0Et@)z;P%(RDaErz^hxFyw%d>xdO^)Y)aDJI#fyk3FS}ED{ek2scMiJ zPGt8!l9~~(g7d!|HL$;pd19-G{rjOK1whNruMDG(h}cVous`Kz z^9lf%QWG|9$ZyovfSajo`ew#Z4o_$mZS>>1#5=s|Bm8VA4zbZndji$;W^F6k9Z1-B9-5BDkQ|?K#vfS2)(%30{`cpYx@pD z1ItIc8W;72Tu3On3$0yS_w~L}loMtREvRo=A}A9&agz4d)elwNVG27}3g-Dou?2o0g2`=pRBZp^k|glq``|wA%PD8^P6P zi$uVqJ8qd1**n0=CyLU#ZLGt9-aUyZr&-7y3Iz2pg7u_FX6BM+goY)p%>tO<6KWP3 z4at#G$vG_xNi)r<1h_bUh&$Z^S*4_{?!I%g25BGiDj(XJUgU#f`;*{>oC^$1oQ_!q z0Cj6JpZw!Pcz9)(qWR>OxDUvo*;0YiDQ*=#~)N8emg- z#fMRPoD%S!LdLEi0=;@uKnW&9Xgn^bcuE|lURx9fWKqeC1g1_jr%8(JgzcX(f- z`vGciDVZj0wf|+{%yBm7&do9DJafpAb8>QeGvneGae-8bYY;%ep(poH`rlEw?^F{h zQ6G?sF@2&`c%7?JDHc_iC$qx6Ugs-|u1p`vYj{}&q)$6QHm)dT3EndPQZ1|*`i!uz zY!1{Um`c>YdERiIJ17RHo^zs_e%ZN-`e0zdk!ClOccE!Jl7Z2L=X9JX^10d9Kp>&)~TeYW2m4 zO19fh-wuqOg?9id6UBMG_iaC3EA;R()6H&+4Z4BjVD{}GOZ~ugcekNKYYk6$bay1H z^$eHs6m+ew+yg+0Wl!w2b&c>JCf6GKy7#Iik+_Z%Y~ExLyTes&%VU`ot#*DsJa=4w z@0UHuLMfuYh5PI$TJcp?EEQZX^=;c^n9v$P8h?tjCzGq@z)n(B{}fULpsbprgc)LT z8YyF0RSE=i)kylieEIWrK|#-8D^f&DdqpFWyK_xVdRZp;6zEs=aiYlMO-PGGJ7mqT zC@27|N|A~=c6j(lGFL7&#k^5u+Ft%9a9f{~c{JP4LeP9YDwoqq;fzh2Vbtdf3P{p# zM9k_M$h}QvFIMbtHGX~~#RW-aAWMBlUS8ExyaFM}yo$?gb*tcEq#Hikz|p&MJI$V# z(+kR$jz|8H`O}-SIp!m12rm3rh=#CX+d?qq*PC?Kh4PN$<{6z2f>(qqe|e1Q>kRK) z_tW2zdT5;aOzPq2pj3${Qw3f9X8EM)v%YrA2j98^yRWfro0E53wLGc5q$c^h4;5m@ zn{?cD&l9prG*NQD5(uy(y;k z5Dqu%|Kz3xuK5jo>HJ(c?Bf37v%F}|EI0_Ib4xV0Zw>&GBr-f|k%)&h?{Rua zqr%TdG4~m`M09XAEqjjEOW^(TcH5Z?R&MnD{&_QLI_u2rO#%MK{29>}-#P^Dd64}% z(<^X;mX&1c64T=Jy%q!E6P^Ec4Dgl8SyZ{^u&;hW4={`^P&GY&>5`?! zN=ZpAWM&^|8bDy*3dA_Lf&spn^mNe)bbcj6y?h#lv5!RgBhVQ%=q2ctj4CY3_~eLY zpL0_YL;3q?L}cIA?k~Q$94AK*2kRVk#u6$b7cIA6*DCyu=*AYwQpo>vT6HO91*)}I zprU8zEP(N3=uMNNi0hvHpWhE+fP^OShA$%PP!zuLbpz{cpIO^Cdq}ubBen<4>HY}E z0E&jlQ0{{@+Ad^@rq0F$xe_zCD*XpW;Y8Dgfl*^_H2|r+N?w)yRk(mkv#$mIM+xXF z!6^8tube|OiNuM9QJ-}g2E`;8XC){4Y~e#$X4xmgj0xlvBjo=tXuw={zgrf338OY{ z>-djB7)}G^fRa-e!^1_1wqP8P&!n_U@S0m&f!Wry&we)z4dxYV6m1^tww(UB`_iQk zYsr3iQM_JXYWM`6JM}%BK|pxI>3e56qUytOj zvfYnx>H-@M6}q%)MZdOsckR}7@6S^)P~Ms&$Ix=L_=)M8gD6g&#g#u_?lB#1uPPPO zcp>AR%JcGZahkTNLX^Kf#A)IoaxRi!1}@1a0E48qfi!K;g0M*yFkP{F1^LQ@cgd(# z?F9@H@#XeiP>(nVQSj$`LX?(*)qWOm(B~LaEs;_%7|y}PMF~Bs19XOTkrksv>4-4p?}ZA*3N0S0onQB zHvhjaSAx(R6@Ct^2bPe`4La6^k01Abc-4M>Ly#C|eD`=QnS!@$O0#-0Ttb9xNCt;D zGxlNBd-ES1i76kUR4%PNKtffhMVt3qc0U_KiIC@5SKJxg3@>mMi{wgVu6yzars_k; z@+-8o5Up9vgOFP@26g6egM5evpNpHYjLLIaTz%3x%q1Q}G$w20n6%`{xOkw%1= z6lsMLHf2TFi6+{?>sopirvP9axnrc?k*j12d6KSB_RsV(8BtUD-uq)LCCMnGxGkP< z(IN?CTbvRH79(6J&3PeePo0vN!6&zwJnPYsA+wQ_2KE8W^@WB48=?{k7zW6bArfnry`Le)d2LMK1l2a0dxHesB( zg<8?;JzUoK0y09*bLPz99&KBInqC->efIivo|JV@an3(NMdU0naipF!svtv;AQ^Y6 z_=P4JXO*ODKnvmqQe6hK$o9W4nr*mf^4e`Kh!L-%qRr^q*^BVtwGploS(dtSb0yS1 zGis1k{W4MyUD6J?+Xo#WK!ya)-rdg7U9601M6|hgdtBJZ2Jc=q(pq88C7qJyYbW?t zzL7AiQ-&f*dt;$r(TDQnJg*N4TshH@sj*e+t~4VAT%LZnw!(~}QD_B!(lmkILX=gj zSLxSI^Bi=ZKWS^-T+Lk+v4kcpSm09O5ef-qVjK3i2?z6$<+j)IySOQe4+xu zyA+_KN0K7#v~M3ZQ)v`=L-FVqH*p5Gg|9kwAXB5>+lI?6=N@5h&! z680&EDN*S_BMN;^jhA6`-5f`_vIOkJV12D+`r<I%zZjvTZojoA+>NzLP++NTi45b6&G^8a4E$Z-%!H332?mqyAt@U6=dODdj0Ow5Y0zeT6CXIB(+zf5oO_e0Fv zrX~H&Dsm@uzS)MS=F=?pz_OS~Dp>m;`_32#-Z|i*Fk?P;oe;WSL{GWlV9hWZX-hyJ z^E0MMDJ$Ras(yR#O$9Ym^nvyMCZcKC$^ldon*={C1iQxm6#*iRa1<(KRyS6?Cxp{S znd2^Ick2T0D*!;1gi(Vb_Yi3$Y&z$y_7q5SaYA$HcBVoScEO6>8+GRTsI@lJ*pEmg zdF35df_W8o8>ItGVwUI2C?{(0H{IeFV~&_(C`~`0tNQMv{cFjACY6b$1{7NPL4*bi12Uwvm@6V#l`fr-oc7w90qcP?Hzk%if7s@Vh<6+?Zk-<*8K- z){wim`MOvd%qul}0>w8JxFe{>IK!rS;7RJ^*ZgZ4zw;L@*78-^8^}f){(_#NYB9V- z2_rUgpJp&FF({ZwJe|q=elX&(%VL>&NR@#9B4v2t1Ni7OZ0XrJ zVAQXGNi|9!xM8uhQnOtqEWALi2P_M<=tQ%E+|O%{ySq@YshwWvqUKQNhs(VgW3SJH z2KpSG81Zvb>uFBnqIpbu;RA>yh~@5CKH*1xd(2M+GBu{XcQ*amHRe7mEe#{L=q%fA z*PEsr0Vn)KZ;1vJ;T~7ZQw92fD$)a-^u=#|tuN3bwPRBf5Nw*wkUK5+!hBiW= zR#l`_dQpAa)Z<($Z34Ve{S{k1N-%UQR@_x>b);dp{ACzXyxmwB62=Q?M+NFpwv6f= zbiYY^aQYt>-f$9jelyf*-leF6Qq$gr_S&X@^4!<#q5a5C?V_hGG}(u}mX-?^iDg&- zJr%wZYUczX$TW{%h_P#Ye8_WDQ`LeN((j}a zZc=I?7u*)TA1xKpGlt8KOX9LEna)obufMxUTt-A%VEsS)=KlVjpLEI2O%s7*&!t@V z3*ErN^C*}^_91LL^IpSz4}`>>aU^nTPJBd&wuVANNHPnRc?&CJ#?<85qxF5LwP$I? zJQf5@>Kqb+Am9F(-Az3?=aLX=#>%m0I5e8!fbVOxA z6#LbxsWk;(;T}R10Uc&E|pN*g2$A z5iOO6hX{laV5jeyeDg?2Nq=tH;X%}w8!yKqlY<$a>9sUiG=_`FiW{^Q?g>h z0my-i*i(CRT%EEy^o1Z?@W)=#|60UH64VcC<_eErzO2>d~qvW;8Y0)Dk3IW;Y1DbI2D8hXa(ojbGJ9qk#t=LsAicwwiv2I*2;J6DmY-k%78-Io@N&4nh?r-K5b7DKn!r+=u^mvg6B5O~wmfai@u!<;(ANqJcHFLyMM#tQEvW2D8WAFog`#^2!W& z9dQB^ODCgDTbeIa@6f4*rTs{wtokF;G+r@TpWmf00R4Q2^Ctx$2@ zvVT>W@|-OoLnaYX#ew7*a|N_bRDvj|((YC*CkVaBcZX;?h$vQVJB8cK1T7BRcC=;s z=03xu$pgzB5$cjz7ihroEUIH=VcF>LhR{SLqD#S>YQ8_xa{*;|uEz_Z>*?x1y;ffX zYN;r~+Vdz?7%MNPAa?%m)u$3#(3`xa8|ipoc7}T2@1T!3qazx7+P3PpFn+IOO-ZdV z#|_dk-?;;qm!=ulVbz!|DnXq@HJ;rXIwwG+@;5sMpcpBRbDl>@VS6fNcH| z)0R05j9ubopiY-Z?;+sXA@@b(Ai~`nuen1aAvBaWuJhXTIT&MkAziN)1tlRfYHI%_ zA>!lzYwblfI9|ph!)%L)sX(yZJTo;8JfQw_x4Px5Wgooj6vMkm$r3jVE z)AbG-vkP=mp@QCX%xQg#5wjO+=f$v%J;j4)X`M$&Jw5(NDyuxE{xTjADN8hzQthaa%6jT1s6l&{ z=`2>a(x9~T?PU_m5A2+r%|%J-v|1Yh_7CP5Z0ykbDVy@#16}8bj~>;ZdVf9%sgP57 zPnYm!&JNXHk=O+w>fIAt!;6r(!Pfz>%zK5Y5UF)h7I&ic5#@0 zemDpc%buq*yE}*!7s^a0{Kvi*<9f!3?AY{1lf(%uKnP-T_C<@jXHU8Jm*GI18qtWh z8P9ez5y5|CgQLsHN#tQ}8~i{j(RFnuDOR08Z31C%2|bq@epXfTJFbGzp68MxaYbPR zMwL!=hU}s4%9?KmL0$7pICf&BLmkw?l`lkq5VaPK?2@fllaOiaPykq+SMbjC#I0;o z559w>-5S=4jBYQg>6<>s?&pv?kb+v@)@Wr@Qbc?4SWAVr_W|?1;^N6m7n5^KrLO4e-(T9ooHS1ecx^92LmA8UY_eEMMHJqwcIEuDCpF!KhiBAAn+xx zaa7B<|N7$g+xCI9@Y=C}v}3&MzTPm<+rDEVXzQKa`zPTPX&WhBFy)>5YxCU;X+~0( z=U?NNo||h_d&hKiH$A0_nZxj~dpLWxUVy&@O%d?Uo$k-=O-&Xk6|!3`<;+Gi<>Q^K zhI?)HfW>`*jDjg3K6Vu))*vOlTpC09(9wB$;lRK^O>{?#_(1PfvnOIH`GTZU7k{h7 zEx6}_JEsMi!+sUzCa>jJ*3jN?oygfMSC-G3HA@N07t(KxptX1Zc>9}~n6nf`pM9er zRe6yZcNN`2ei|x)xlPmGG4Foz^eX-`V}I#m9tBJF*!qDAxm(kZu2D1m#1~1nTp)2a zuo5bA?ET<`@&)$D*YDL~Y;10uEe3way4&^gcBs45H)av(@xk=dNdMYn%>rp#=U7PK z1(lVR{X6AFM7C5?A!RwqX^o0~~y17-z5p`N?JG<_3 z9RQdHSMwgvVN@RN*Co&#%(mINI+L*NIudTZtdg#Wk8Ec$18hJ6+3%ZMH3J6S!BJ6B zlHdb<^6Vvn2X5^jZMUy`q$(*W>>~JqQ$ay}o_9ECKCMY1;QRMO3Gwl5I{wko(St(l z{~zm31q&j`e)pa|1p2tqv?7qj2fUeY_Z%9PSx+zi-Zb54itaHhQta|S$4CZOC;L&? zJnBY<;*747SJIixOxYY%#P)*lZz|J2J99f)IS>vNeDL4_U*d&hw2+`*AjaL!!N%si zzyFl(M~#ih*P$JaYqeBT2gUQYu=Cg1CwHpL zwXkb5946b*h6nC$*ULdQcrZ(iFGp4U@ARH- z44z@IfZp5&S6ZFULYslJNp$)0b3oc2aaVaumi`&ef~PlJ=k5?odS<4LfJcULOpVOh ze`W_jIbs_TjLo<*ozGK+&%0}d%W4g7Sd|+^REVTSHa>E)vKrprd4nI%A;x{(&4q&& zJ67OB)I6aBR5N`4{{7g8-H{(qbUKTyYVfOK7I*Ps`qC!fb!LJ^v!l(NuUXFvP{zUP zqo?UADy@``uos}hR@Bvr1IW$al-$>;b`X6-J~)P!oKRO(t)9%&R_rrJHIH<2gWgM_ zq5TbI<@AUJG*g(%gosEy+HWj}wx3Eqdol6O-tJa@zRB396YH#gyty6mFXSr|3x>*+ zs(o=q6eAC=GvW@SHHs&%b9`H~$hO`ebEOfMV)g_C2hUb;>$sS?CvUj7WCc{ofIcpB zYQ9J!h|3$`3>1==m}0kAFeT@9h<=O44CbKsRToYxL#q;?dFg$7^a%dpsEjC!xR$3x&QmXVRME#0}8WYaGN;1zhO=Okg-o-_V5x{^7YqIfk1V!V)+IL)iD<7t&Hfj(Ot2mmP6I&T*jx*o_Uh2-UTvg(t*)D!#D z9c1;9EP959FXs4t-2f6*h}yA6Ag9!r8mkH)(?A++6o7TkLT1Fu&h>aLuJClfRwSGz zZyJF0*^8E#X(8?z-gTUeW)6dPnH+_ZD9MRXHlErY!1szV3;A0PPbe45era zHhPxhIT0E;x+ssS^20;@vZpndApoc8_qn_N3(dB_YZ8>iJSBag$(x zVo&x4U$kb7UnaY+G6*PTmC7$u6I&&L=Wa3!K;>4uR>|~CiDMp1IFXb`!`yVoOGry* z_-QIeQ*J%%7p-nk075Op!W+03%{TjZOf2p1XnmTfO14kT4qh5V-rxTOV@*ws(5h9s z;SmuMqS_&|qhZVO<{I={8bMihy-e~;;u2lCNsdgkzD0{2{6>rcXjQNvUeB7ba^B&} zLT?-FYgJD>=`CnJYz|rb<)m!ZLZV-Sf|E|~GS^^W@}2<#BD8vSl9QRCndQ~O0n8=}%(UXz$luQ;!)Ba0#n`7g^b?S+6LaInMvR=ac6*FM z;sWJE**uB=5D|hRZxVc#X57^Mz>M;hx}BX}$l(pDs_DyWq)#uSNva`jx6#QS<{Kig zA0T%Zq%0RDAcJ8xGF|H<+FsP)Ha`1Cs3+)p7}?q+i7%W=Kg846Q@K9wXihZO zh5%i_=94^aMmt0)%=0(HS34zhUh)d@_liB^b#L3yTrRGgKI{IK4yAQlP}j~h>PP91 zV9KQpHt3Oyb*4%ax)T>cd$--}J}0a2TT6u2H=~;^1l{=&eQa*dwR#(l)l_*;kNmKI z-N+R(wR~!P=mz=d6C%k5DT0AP=oFE)?rSI6Dp%-5fAh-5lG}ThZ-kE5#rQAbdRR3TJ)4; zE63-05~MOj&Z!;UeD;38ELx&dKYQSs{n!qHZ-~|GqA=I4yD)D$sTU0=4=ge|eSsDr ze2YfP{r&1O!8xsu%il^L9O~c4WMgZqHu}D(=H$tfXA!+B`04B;p?>~O z>@v6cAtUM?k|(Iu_fvhq!PW$Q$KLj4Y7`A{@%`)5b)mO!i?W7;Rrn1+1JX23C0FuI z4()e+Cl>qe?7ZWhZCYRHQlijWUGK7M*A=b1vy)Tmz$P|D*owxDkuPq#b%^6V4_uD2OzS4Gb3}42RT{cl^pw0-}Gp z3{QKAdNKI46p;_xVr*<2vT673-H^a|{`J+t_0u^yIZ2E085)O4?jzK~F@4tiG#{15 zLgu)CLGR7THpM%8^veFIb1;*}*?S0*3sM*LJ!UM_%I4EuoIX`)J) zJRvL`&_L;U&fnoZ(z8KHpJ2l*{v%qMJ%i2O<75c^y|I0|>YwrSzPrJN@bF@-u&BJ% zNx0FM&V^K9<-;`80EtA8I_P$oPkV;vqpg;4t3d%AJH8fj!~*MJ32}?{+R#q z9w-Th=t3$bRw<)6;Ee9of*bRS$(!w(_Z2kLx(sixA;%F1-#(u1mgon;0EF2+9lUvS zX}2Dym7!wm?R8b!+vT7GB(U9!M_in)=G4EOq@^7R0`(_`YgYLTyMFxh0OM?&AZ}esxVXo$%mbQ7!A!TwOQ-vGt4+i3jfL@U8_{3qY5@A;S}1le??y> zy(nj4{iAL|7Du;me~~^Z5fkRbGyD}wu^Tb7(W~xbRA}hUI}l!5)uf<+q9K+M5WvF0 z&HVykUGdq`5KkPGIrVeFzrx~bF`NT4g%WzHSY;WldJi=u<2##_yw(Z}t1Y{V^%|S1+DUKM2x0129dVh?+jO z27kXi%J=DS&K0&wGp{aAY-I{>EB)WZEFloM zC}IwC$0sD5!+6?_MD#wR8h5c_OG#wnk4^Dp-yF{up^5zwIM&L2oqYB`5GyYSI?5+H zG5!Olzh6`8j&=F^_3IX#v_nIAjaBZ&N*Gp@ZZRy!~AuU@^nKVB5#pnBQ$2)qAt-P%8*;13_$Tmy{rJQ^%per(ewDEp?3 zw1Oe0p~`Uer#IyddxX&~!9S6y zxVZR6YHHc;1p^yzo;}NEC{_BMeq;SI5q^u^SoG5S+3B=yL6a%v)vH%1DlYE`tG9tm zeF2_OK5KwIxnGvCxQ<2SLcLe#on{743*zQZO`{F3xpUh0@~#^$57~=u zw$fP1#slfJpe|+=!+?;^z{c{1B}z)BFeEnviRRxP0H==ljC1fmJnc3*G%Uvy$|y4` zFhJl(onEA90G=SdG3j`isL}5QEE+XX2{4CUAD-Syw#)Mb(bs53tEtJunv=rsNw}j zx;q+;jpgPA&^0qKO$YCuFdcVy0ARmm=g!MwKc{~D=14!W<3-T&Y;ph)ts$}U_4RFd zEgeZ#Aj!pF*R$K=CR)q7WEQj`L5D9F6H9B85)fEVCK?mz=jGnFXt7>s5pcU=g(LO7 zdrPAVkfQG$kmhubUTGOv=hb=V3uXXsgk&^HAI}1-?YgK@vDz1vq8Fwf^-OEYe!@d> z#wR6J${MvR5m9dlR@mP;Ho>=_IHOpn2|}S)Zc6QhwEFWDUloVrc^wChk4hb$3lY7#|;jvvPm3<0W||^EX)_ zYx+`So8ng0`GH$xY(+xNiG_EX6>2tbHg=(|AR{vo2PL5HIGoq>V9?)x$}VWmn|OC; zOm+Wi(Ys(*zw=G^{OFXBt41F0{7aiv=nKqcMP{doIXO%O@8)@1M2hpbmD8WWaSMF@ z20Badr>X7ZhC><@+v>MzUMgqI7J!JKJ==0UV^6VH3efmyPkST{-c-FjN2&kp@{yag z*AVW{GHQxRHyExH>$67M_vXO<3F6O1+s1`VQU%$fl+rq9|7{P$VE}|E9IEs zxVBhXSy43vE+n7-)GM*5tayLnq4f)A7gF60sHz_3vNv3U*-WUF5z%+vGL!l_f_2JP z;DizbNfpr6)m;KXDX!>k7=$CR;ds-ejwIa`RZGBB?AMSX55(**Q@XpmF$qqjBdiNU zi`#~qvsdI@vmxIaAVIgoOBUvtn_}+W+X0A&xYmMozWJF!5|3Oc5KPJ>@7{n_9!hb| z(35Cx(I_?LGe80}hxvQg{&g4DVd8mB@rD$i&EFq>n5M5*`}XyY&u`Xt^KzayRLmx% zqdXlEVPQ*c7dO7G+4YjLT68pnAQ1*vfP(hp{ZE1yiJ=%VE~rO$Jv9FV{R>t$`>crI zd9+BJO*%?NQ!^-jb1W5M&f~;Iu9aGA=vPK99^;@Je~eT>U?9u$($Xvujrw$Mq%tYH z3*y74PM`e@l)pX8B_%W4jJjpNgR=4*pvwF$M-9*_u4OU!Q8{ZTdaVBc5s&_{`cVI2 z%OfnAS(%xGB5MITuKjj~cB@#JlKRR_#(rT7u{so)le=wRI2QWnI_+SpU5EH4F$f84 z-b#-ilOgUWfy6JLV62?Aj@#7roSweEdRzZDcJ~s&6QT*VY3n%RyF9Jt5fkP=tU!dHxg-I_T?u?${$IvEg&_~c$l3`ZZ07lzDoTO|N}_LSwrFTL zTeZsVQP(CF4{7ND5Ui}X=Zc7lT_8hHR8;(vOmcR>*~q5OkOv~cL{QtzOcD%cE|=|B z<#kk5RZZ?Ky)Y<2q>G9%UdLu2hEOSpbS^V_w<+v9^W5)16H)K`o(dtG64v)07I$g? zSaj#ij)6kWxQw;Nq|lXvG@?5y#4)elm9COmrWteX+Il335+*9C8CP>DK<~tGcIVkxVVG_k{%J@QtWf*{&QAKgh;eFhM;~iB%j7YIf6JzdFKi$ zU&_Nya+s^s^uF#mCQa^T|Ew8gs1z}o8Bw3+oyu-1yjtPg&24+*bK7*H!u0~viS`X$ zJzCp+^TS5s1p~||9iuH36+2kD2X4%by8ZYCQ5OE`*J)qz&c#i1lCPE4TI08n4tVlp zlSETPLqoDY9|wmJYWg+NG*b_VBBrj!AG004XE;X^qPaK2!g(I-V<9Y0zDz+qneojX;&4F*d(ZWV_4ziZbLu)^GK{a&f^ zmL2P;wIls954*K;clcmjeQVz<^>CnOo*OxlCFF)b zpwqIUNCEp6`JwHZIN_U-dG9S8#28#?apR2!>6Pza!*Q`MT*$)v_ZC{9YCgEW%!+IOK3nHZ1oaC9wOF56;M{oe(iHU|h(<(+uD)S2Wa-PtW9$ow@2y zV}swf$F}|X<}dHU1$`w&vS7ik7<3CTOGMo0GHQ)Sj~<<$BU4XJc3%<&8XVW{bXjnc zB?yP7XC#J107X@_ku?w(Q2$qLNYkb(d1LI5lRRY~sTa;%8gsZ?w24oCn0JBmx7S(;_lK{0-}v?~pG0*srDt&VuPjN$ zfx-CQAWFIm*0_q0`tSHFeury}J7$_*=5vA_0GuM&cxo(Vb*Zfh3A=cgeIg18)6m9-R03`}$lQ zbdpHmG+(6&m8y*I82eTwdM0Wl_v_|mZ}r`5Ed%uI3w9}bK+*CGM2_FeY;RRRTD$1| zhrQ%51=v#{`E?1E^IezO>{~5qIn|_X4n}p-L+@y3dC=_MBo9Tm$o}L z*qWvc zpd_TTeN*48Gv_XMHm2E@e|cr7?(LHUqQxeh-LCNKBV@@-_tJPS0T?anC3TQoc$}Qa z{sSOL+||!$VG4r_%f+y;+V975Qc_YN_aDr5K|xB%6k97rVqPJ(vRnRM54S>uQq8Hu z`y%lBFpQ$xP{J}gIMSVU$3Pjl({Gr_A}k>Az&}!FCEjF{GQ)stP_Iv~_Yb2os(GxW zxdg-Yn{(p*L*I|?7$|o>H)zoP75wcT7$=p_5LruIKY95qS!wH8q$WWwX(!Q<6qBwW zzB-;7&S28e(D(?pn1NznU*EipRW@6;oSdO}i-6CYevp%ALrz{*RTUw;>zII84#m`t zG^-=}ZbYbt&_6ReVq*9us+Ga~KjNmA11t33&q!v)Lg==`Xsu^mGyB?iET2Qv=Pmvb z!>8t!E~{>PFmpBEXyWR9K9vJGAQe0V+B32OdwNTHd>Prg!dUM0RPi zc{jxu@jvQbB>4VATlo01OrcC;lLwp%@&-?A;ushhR{rylamLJ-aGW|3qw^N z5Q+p%InA}pVs;0g{m|#R-^wfhIig@{Um#>AdAW#MyZ)LJ!6{qpAifaAcp%b`s^{I5 z`0FloJb@K?h@_1JG^TO3wY3os+&wq#%_dk58NGyx;mjHVOL7}!l6HLuF`x+#z!7%- zydW|FoY*P)1t5ifLBBg%R?G*0Lraw7r?nkrCvL!p6(`D8&N?B*vZJ(wCsU72+b2Hy zZdEiu#*)@IytC`0n4$^~=9}~t%pJU1tUxo6rSsqyF6QU24N9)0-ox;z3vQZo2xrcmAtSVd-lKi?yvN_& z>>j|rFR-(=eO*L4f(R)p?r&X9+cYIq*Qu|oVz}@(v{^e&MRz=pF4zp1W&F@-5*bf6 zXMg_!a?Q}0ez+F$w~*8sH;kz0)_r#Ik)9P570lV*<+g_n=6;%n^*1aLRptaBE#6u1*%Kv0c3$4o|Dn3~hb!x4x3ab_r}Ur*XTTEz+&q+U zfm#17IiFyXUc*z%b;rf6z|8F|BwZ_ng#Nwx6nKtiv`~4*CpV5ioc}R$iqz`GYrUcJ zvcotFSOhSS>Yc|q8BRgdjEK#?>b2n-p37#t*2iwy%GYD6m0{@JR z@|4$b@SPQyeS!x0oIgHWekJD8jSktqa^hduX*v2tm=i%k4tx>S<)Bhb9Wy=T<8$sm zaME1}%6^4DO$8LuCSMGNu(q{L3uK!&Z;2?!WAY16lPcCT!;l&z-l3#y5+5sP(){{lNI-_T09&vZLPsmnV!fWVX%rV!90g$zna`Kzjn0jn6#Idp3T|dQdK5~t zZ)xTLq&GV2_P8$ol|4*s)VObPoZM0iW37DihUoQfI|kiiojiK#vxF5_@dhp_v!rg< zd=OceWT|#z1&_&FAWA|J6ujVy%1R;8(+?;A{^5CqA`%!F$af+kS`4O8)0l7wJY8A> z^xGe8x+p71u}v&$OAN4vn3@rH{rdH%YrE=t*u<6ri5`p#v9oQrHge}`VMic}2nP9; z%aOx}Z`{8hWszr^dzA)trk`$q50?0$qlvd~d#zqPf4&IVH4QUVsehdTjH^Q4c73lP z{loJO$7@TuQJtM=~kF>7PpFh(O{<>32 zT>K)!oQS^T$B%<&f9C7AZwfwkOX+njSQB~NJ{Dx8w(B%q7X#Nucq4tX+xGvxBrYt; z{wHJOrPO$V0&iOkWbGD*%d=r4w%85tS8+FWrp^FxK~Jx!V1!7)5*ledD>W<}<6)7C z%W@+bVRO46_`scN&T8=6>nS=wfxtM`SF$tz-OhT~q$rk4QBn4p2JM6w|J%=D>2>5F zylN63M|oVKb&rqTpml_OnZHWfj;7$J_i(WkN8Cv}5GX=0-Nlr}Lv1aQKzQ^wj? zU;J2xC;!$zJ_Mdx2xonpvw-!a-tSM;i2o7_VD~%p^{e&-qQ{Qx!*Q?C>#N@22wwp{ z^OY}>o{u2xFxGB!d2IcEBbmlu1v7kUX~vCt^oO0fB!*AFv$b{qWv}HNxB-k2r+JwB zoB?k>#Fukw9# zG;gfGrECyVotEgR%1V`kvZdDT+52jf*TK;pf6FEPvA&56nZ9Rrf+QYbs_pFT^iJZ& zG%)NBr@6U#R^T$d|G@F`iBw-#iL$XSL!;WNi-u%C5zs~d@5l7SHBhE(JmS~gdC}w*s zMi8_TIK|I>eNzc{pzIRdkE!Wwg5MUS`~YgM`7oN2B_GX6oqZNRQl5TT_$1@9>c$mVju#@9lN?-qHpO-bzAs*RYGn*`zPgctNCm z`zi|1nx%v;u3x(P$nWvfFdKRVWlzCqt|e!$t~FY+g&)Z{RJeaIzQouvRGHk$UvJa1c`pG zj~$_*Gfopr#l+2Bz&0VRe*rwjbni7!$#2r)^lZC!f(YcLDYPc-O8eNEQs~|hzIAd> z!Wz0>zHWclo5JD4?hm{Q)gJ7E! zdFf}WII8Fs*YWG^9WDI4wLLmB-WxI>$2*T5rf2XIPX{|z@xvz#cx;QeVxz1rKg70^ zml(i&J#v206rE|LghauA0de8)L@TCJo^W3V!kh>>$nxY6eK}~xt@6F@I)(e#C= z!ITngRMNV{B^H`0$Ch_=cE%MHn2uQ4+LH0LQ0iI5X@o|~RUnC+L9C4MG4&a!qUrVx zY+LoafyI~yAQMVRPVUjMaCA)F8opY+P)&CMT*9Qqqpb)d{6~`W7=6KLcz4{*?D(7+ zxddZwAe&J@Yj&$}W8>VM7Kl(7SP8p9XS-*+vZ|`;-uM5Wx>>$MZuk}OdT6g77<464 z%`T-%`@^Fq-#PtKG4`t=5!2(8cDE+S2jJXcsVJ7eU(pcxB)?N4bYKTV@6Rmi2_&tA z0N6(mTQKKXFs}SP_)(=zr4O0=myai{O2MCphQiQ530JiTblw@ji@~=FsxDs{lGXhrM$V3?8fTg$NaBuHdxp?W) zbBOSyN5&W?n=FT1&};ojjwAkAEaR0NwGm8UJpR4Gf(!*mv8y)!Dj^zKg8qtX?}s~K zSMUF2n}58pB32S|K2W=**r?Pp@A=&$hmj9I`~Izu{I`hV%kJ)2?p3=W|1r!%JsWJA~{PYw3gxl)C zfl6AUEE_>ku0ldW^9y&afw|QqvZKC=i(z9-BE*Sefc(Uj>>=e`XSYT|NG;|cf>yp z??6%WJWa10uc4@!G|VydT1-YpMwZGlW5zjTZZnvf9SKo(UlJe8BKGBXk4V=^)_5E!HsOixrMaRNj;&EnU; z_-mO>EF@>H@ z69%k=#KpHlgg2(P1&p@kfI;2c6@B{$WMs}^M1X3RlJ+DPre}(OM)ae~kyJ?7Hw3A+ z{=FhStVpYQ@5*tX;}}M(Dne*gHmq-8fCeMa%c8aR2r#<#`V$45auucWIM5=V#&#^t z0>C^w>nuakn~DlS!tWv22-y&Wf7k}T;WpYoWtH<}2h-#m0KJyL;cqubq#w>puakOA z8sNW2N^m$S@MGT1@}SMqT;W*CS3~hY>}1qGu{=y9Rg%OB4q{NRE%lT|PPSX_JhJx}8I4 zSQqJ0EM@0ki}Lr^B}R4Zocg$XF485p07}kF0Njw(Yzh;L%3YHbjdwNoeLi6!~&5p<-L z=Su{u6|JJ6yHYbWrC>9?RPJ>%-ae7YCx7|+A!KORQxv+%=qtXIOO#2U7%;|YV`C$P zX%+9K8~nPr2Twpkf4#mU3vAMyO+lFCNL#8(7Nz4{HZI8>W@Zi7pFm}ujIVSvmOBRd zJYN#~4Ap2aphQwYy&{}g*0Y!%Ms#x4PIH4s9vRfpyxnhDH(I97ySLyAy0>0QT3n=k z_G@L+mLRUZSunlU8)Bho9kyBAe82Oz?~ngv(M@tY622Q*u7xNA=Tb3IQFcyuBJ>Lq zw(h`Y#7gLCpz@lwPnfZbQ+vAutl2?a%TO*efv0Zm3Ia|gn1yDL-!gK(BeS&x)!O;d zEIH5Ejc+CuF&MkpMICT`!BN(Kcqt0}1Ce{Qc5vuj@d`;UnV4FhFx_ViLx6-x{}y1R>a{~q9J`-n znrDDyM7Hgl0%?~1`pi!^NV5L;!m6r~l-IYm5AEHR^!Hqmr6d==$Eq=@G~L9Dy(w|p z%f)CS0fwpd+@;W)BDIt}uXet^#QGY@GCx+Pnm{X^Ky=?@-us)HoiitWy5n(L!gxk4 zH-t`uJ-_Pa{&B68-xjH&f(4YYPOLoNh!mVyFRN|ZI z6BE5Tc&&~19eDvRLJ6$ZW{C^-i(XO z*{#qr`8|?FNs;b#9CuXagjJ`TnuYKx2%=ZHa`(T?3&5K~ty6_0d{%f<2L*t)4FH7r z1;Rb?z(`1ZzbH)h!>FS#iRPoUAZ7P9sF;IMtB`}4o2MBxE=^w7tN^s$t$X9#7vmgW zz>%<+bnDQ6SbiIv-)oU86G`4_p|YBq+f222y{n;9w-g~zth+bu=wnH<$dd57UjSn+ z9;koq3*1qd%w6Y z3*a(ka`gB5r-xq$dE|>g55MkLU-H*lnhxUJL={fco7glyHqrzFRGS=RBPGN|=$)+9 zo~0@1@6Sh^;^*7i^C(gCs?)76a2-gAk5Aq8FY$sB)g?poqVlu|@!{8}B+u0b4cxI; zi6Apjp-SF$ao6N^;`kSd;rDtsTi&uB_XXM{xZZCE=Hh!Bh0g!PViMhkB6s0gV zp^f7!0e?f>>QFR4p-7X16f?O;ag*a&Nl9pUcsO4H)3j+cbnQqSfpt!D(co_2yq3OA zBW+`{3vDW-c|`O$5iGIu@g*M#6v1Kd7erk{%JA?S{DUG=D2TH&r)Y6|B0=1XNl66T@6rQipf+n}=~ac-?VYP8Yr4m96Xqkq$f&SW1P8kH+!9RqDvt`}wK55U39?>$2 zhGp$ap3#+$xQ{pgX%W&1cq13gcGgU^hFV$T{S$|ov|6uw=s%MIJO+pIDu%gZb9xvd zbRr=7??O5rywcQ%13iS2d7dx|BH(u(C-Lo7J*5ZDZ}&%Eg0}h^hky1>{9gLHKr_|X z7sd({T}XMI7L{$d={R8E}yntgCv=+A!GX+kWXPdz0%zJEnWNJ|OWTdTCg z)zv#mbLA^ozNs3a2uchIU+I!~pJ0;-17|u4erEySw?+!K6!W&rqtYv=UlC#9mHBPo zmyOC5i5^yB^lK|u$$?+znQTJ|Q>FLy4yB5QJ*Zl(NxAyv&jY1WbP_ks8PBTtiIY$# zs%>H-4vnx5mu(pvbO5moK+U)HV2!diBv6^A2bg zB2mYn2+QafApn{X1ScUJT-90XGTF%==g^j$>(Q_^De7WXLxW^TtMGV-{r8n)coss0 zi8&5{DZ~+=43Y7`f6=2*`XF41t=1~K%$|ubK!<`a{dTJZ&<{^YO6tRW<(phQ?hkF4Qr%2|?JD&6RDh~9j(ddQzOZf-eFVG1|udnIs=r~|N zI(RyHxoO6EL6Tgr|0?56HZeFjS-6wFil6J6ww#n+L9(v7?qN48L$?dnf6Q@pKbz(v z4`)a&@`hyQ0e%ZpmF}8kcZXgjGQJ62T+AJnco8NQMikw*Kg@AywRteu-|rg#$7!A> zUM3)@JXJY->L1@AW@Ai361$%-)14XhTN(s1T7X$RBhsK$zUwnmOORK z=Hg2vkbB*~WeM|Tc!nQCP?`-zlsoXY1NU}v_Zwf3DKAGJ9sBFN{Iw)goC)ec^R)?u zCF#TdH3dpiQrkhx9ufB-n~yQ(XxeVF3R*b#lNSuz><9alq9zJaA0_evL~A;2-r~iJ z?QRW%Jli+$wuu_?!m*mxs0R#mTBtJ|^CoAeVgtB2t2+ICtXMyMz&i>Xh#hkLqv z-$hJxUrz)w78!1{X7-FOT2;Ds38Xbc(K=L)Fbo(Zif@2p=Fd5WLiO(ksmMsk=mY!j zV1~_I>l2HjuKtZcoQjM{S$f&8IY32IxdDA`Tx1NSUPB1sjjcPF_?iGeL$UJPdhWDcOVE!J~xo^6zyq z??hptK6gUq&L=i+KPuD=W4ze?`X1%WRE{QDRIcOYG&3j>|h zA;os0*hHo_V%|@bDbq;R`ze#&V9YH@W=+3=GTT%0+e0!{BN6{aES$_YhuEo90Ipxy z()sM{Y+pM)X0z_Y|6#b-1x(v>1w|2k)}n`Kz%9t|QKm(dBOwuQ^~n zOT0O|<-UCyn>U|u-v=EF)Q3+-M>q2CfA0u<^>JLI`$bkxrwq>E;N-Mc%t$fK%WRxc zf_wl;<1rJj_Bhf63HnfVK^L-B^}TC(Co-JzMOv5=hBL}>p3&#ICl>(A!SK{BGFSb{M`vwc;GT-#6TbhShbr5mkKN)Mc+kvV#h#1}&qC4N!vcx}YV zh=2tauWRV>qLXEQKWmdLi}sCQq^WUtP~^{4{Ne?4?~6JNDDd;I4`{p8p?m>A%8^*C^@Z%ALRRY z|3qenWK;#rI}q@Ui|EyGL4dxS7|2hl>{n0W&{j-OjI5~&?jD`Rxuftyu;NElskjDQ zFEo5W<<@z)-#Vy}Xo>*m-!G>WO)%X5<2w9w7O#5Fga60ZcgJ(xfA8lVGBO&75>k@U zFtb-8qmsRqy(N2VP-K)9G7HJfmRas1BdfgaQTEQ>e&?xu-=FXApC0cdUa#jo=Q`K9 zuH0W8D@>x=EpmJU&E=bGrbPoU~ zaq)7mtKsV05Tu!U^G&t2G9T*da#!4--h=M?JuExTqkk>y|BMnos`ga+U;OZMVR_(C zykG}1QB)KS!+qne33=bOgFhPPWkE>+#S6qOncsVuk{fTQ65;G7vH&3$#DH7{G1m2r zttj)%=G#+%&`mA3!$GkMITd^0*GtTsEjR!3`~UNF{R(J0hKz6i9NKtm@9}XnY7PVG z3b~Ao41^1V;8XC67cV@5M&LLb)%CJ*-M)Cl8)%f^GlLw(r&0+v1K`9rO;`f8_Jj%v zSGO(X9#>FMaMY8EhK2>!-km7lJ3sg9|7RMz5gWn1E&Ug@t4J>X#S3W}S=s#6s<&@J z=vP6>D+utHB{*ve`vN%|PNInMvPoJ|ky=}(HY-y02BWruKI(`wxbv-7JCsD(1EQJ21^oN2lJ(BX;Q+t1yp;>z`ywR%2e?gR=wTbzmzLVF72XrFCPcIZu>gb?0uIj&=d?f-lunr-?d8TZz>$5CeIs=_gq6bp9 z0V}9s1eW<-9NNAWnJ#;CbtXO$>W)LdCbTtDGv?1Tg@024(J0#(F?OV3{f8Z0} zm$se?PX43!sD|3<4@NP-aLg@`*Cn8D@+eIOmGDIXCu#;>qxs%MR&Tf2LjKn~pm9VL(-Pq`P^+|&QSv*b@d+KM@p6Xi{f+!razUj258RxZ3!FE< zT!29RoO~SDe?!hSsMluBOi0-OT$e!61}y#>2${j*@EFcdj}c&og+R@0stSuO?EA{M z3nv$)G3yk`BCdEE8XAL0vYVkfGt`%(c}S3C>90-t{ZpkSWOzLn8^nJ-o-yh#%=aqkysnDZ zyM7ooen6=mlB|9CY0$4|jp_>-s&SdRlu32;wUlW9=k?k3;uhxpf_*=Zq&@` z@?@~EmA1Ffm(*l=njlW|?~~=x(vm|5P&@G60ls#eo15YXU-!=^{2vd82k`B45X1ti z4!+WTq9WHDzCAb;)nWuiVlcUfgVo=j#aNduh6_Rsbq+M}$X*Pi%H4g6 zC9ZlU7eQeKX;|2PR#ttmrjh7-^GAQWC0}X9<|ooL0?4uaP#|qwLJuT5a*z}zh%k5&0hkny zWF?SL{MhvS7cf;j#YL-8;2tA&DUuf=q`!Xf&WzQcMwT@|SrF=6`1b7)7;B9U4;$v{ z?q2%^PyU=)Z%=?8N5X!cg-*qy`uh6V%hP`1Q*D_Jme{($5*-g`lfFAJUPAX9TaNB~ zk(CvJ{FroHr?{bW^T<^aRHX(fpqiE>SpbCeL`R&y(C6PO>3mam>qVA5bi@F_J^H{_ z4YgK_Rx*Mx-;_;IdVS*e0Xih62e!V6R;1Iyp8}`MMo=R9uiZo6|94*taPO)yEQ6U2 zwyG6*G{SC96=6r=6eO;!e)n#Szp34t@raif36ARBE?tjRL$Go*#`;BQJ49{()o+A` zzF)x`S_#;jG9Ap%Ff$*z$`0cCIW`00C^^B!!`l>Dn%>R-(#-PfO0*~u!(CkQOC|{t zqo0WgZqxh4(@QHTm8vLNyr4f8Z_BPltR~7vPv8=kNKYWMZ(nMQ>&%I~yRmNzd#7UD zE-@LJaST;pYcY=%m$qW4nMR(Dly)WC6WK!1f%F5&c%L|S?5!JAxhV`B+j;+b?S2Ie zdMfvIhcw}HCC{X2nfU+Wg~AYd^`RvbEzuzQ>&(UyqLUoN?*~D@oT(rA3V{yZiNR_9 z8wG zFe|(bS62H=egvkl3NNq!9h~OrE~(00i=B8RKX0U8n~%H(wWY77HkAKdX*hKI&fD~R znI!e4XV?za-lcUPJjA(opQ>+{aYNJzWP*~Xv0882x`OHg!2UdHi#sPTN_Tk;B+%qu zYy!iJXR7d8l1vLgNXSX{IW&OrWK{h+D}Mx+y$sp*6Dpit%I_(mI0f$W`!_@WN0>AS zl((ggPeyRpeqZ}uWCSLkO-U|7Emu7t8Jqe?I>#(ToC z7V=pN990!7UC=8>9QP(J)0TgfDm*~&uEkgsd9XeQyZUnR>hpqfdLN(iaR99&lJ8b> zgOE8mr|&Q$pss*o>4u3{^na~C&xj@HZO*i828*RQW)_buJ^ipJBTw(^Af4aW@ZYP0aV|%QXIbBxfB^$mW4NCi3$&uZm)*C8i55E2b;=*_Xk}f=&S^ zoW-X-$MmAT(%w#i<4zc;^wj}E+c2>O@+LtCPiwUc(sS7Ki_ULC&31nCn518O8(+9M zJ(V}esA(WU1LPgwa9Ja16BVLC^t!8*l=xR%`F#$ZD!hardcqYWxBHaRi(oE`_NMhc z)lf|Sd2{{v^rQ58{aNeJx%V0&Fi{g?XKzTpIt~4iVAuZ6PA9F@yhezhzw;Kp#1-yne@B9DP=6z{eL_zf&fc5u3%p)u)$&VyCQIAQna0D>RcjeBJO zd5~an+umH}fB*^|gz{ZY+rHdQ9`Geu*qxRdzW4t1glU$a1EG@&!z3TAgrP7f>`mfHa3*xgC$!k?5mL zLR!bJfw=X;Rae;kZgT$=42(V`9BGV;fa?@71R+(pC=<$jy{mS|g!}j7uH3JL^aUiH zgjAlTs=Z1qR+0M8eTjohBo6tw*o)jNzqTkDUQYCv^Q?DN?zJ2?1~XL;=6`~Plq(}` z)}hXdkW3?r2rI{*TmTb|Zx&$77wMBq(ZaP68yad*z6}nuvLJmf6n5Lg`F>4Xw)&>CD8C$(l`v%cxk`3U zLeW?Zn1^zZ$xPg-pgN-?r&|slAOJ{3jjSQ&;$Pnje=R~{%>qgtOuzm`l*tEIf*OB(atlicp~Jz#rv}^-jkc^8mvzg?c)$@Uix1kh{tLO<5EW$=p@qC24nKXY z33t0r;swHHzt^CXmT#_2c@b2d0)4t1p-2t94z8Z2Jv>O?5%Pyu<82VH8#cv@4X=X+ zM>r7BF1@<(PV2LK!Pg-S{{+gTkgjtaJB#Jwh73U!{S+} z)|L9WEKghBp4#f}r-flMkZ#0GlPlgawYJtgtCh4FOr5NFJpx ziL4*$Q<7IF5^nq*od0JA;O#`2;Giv~|Mf1obK3Om?DEKg282n2!LheJ-;=}&0NN7UU(53B3CwxY<;Epl(cK0*{%w-l9$dEVHNO^{C1NyFNG7 zlWnjEvqpaxzY~N$b6d%FnjYR7$6XI|{C^!Rhj{OdZ|`D-O3qVo)1PxwK9hbVFz#f;H1(`!k} z_Li0!rV-@X85(THK}fUj1RU_lxvt8WjF%Iy9`sK^OEhA_$j<0C+_+I4ghwnv;UF|6 z)}^-jvw9;jE?3PKWWhC{p<{5nZ7C0;&^oZGU_q`mU@z2>`%;%}{o_*w4$}@^qjbJ| zUBooU#;!fiJJg|(sZ%BcyO#|A_wN0@hW`E(1U3WH3chzf{yw`+nr0wEL_+xUDO&=C z$;w^xM2DaGLE9Nv&B&!EP;~b#JiUKA!-SY0tk7IjxO?BpnluW;_yW1%tAu*-Vr%72J>UPN} zD~_?kTJxAd;8bYq$d$UJP}yt8nU!iUgg)v#m;c-{rodJ)BYgj%VCVONMpaoMtfy3M zkC-*&a1WMLr>JeZZGYIDYwhgFF`F^#aI}p(uFY>O?CN)qGNd-?%U~2s!%!xZ_H(6I z*Z8blYw{B2zILh)kA#bE)(WK!w%+?{Q2mP5cIigq!>RRG7Q&^H!cRo_u~px68WmcS zm*jhGYesjxp8wZo{q?o}Yp`oi4;kqHKA$oVHW5wJ*kZH%sm>Ucj6u911DAGY$>*1| zG;+xddO=>#29}TpXx?~90dfrmfXR5?id)bV2-LY7NQUxuJ=Y9nlju6crUq~V&w-Rc zm(UX!bs11sPXgTpVcjJ6sy6|1lb@&toxXe%j2RD2W1LxZtH$kRZ|Jpg?flHOYO{4H za&`op$a#9O?d|Oe5JpH<_0 zcFwPNL)YD4NF|&n7mOvI|Bv)M7P{hk4g?Xo|4yT`_n-INDkUtAN{X+>8)O z)Qs?}YPXqz=%bI#S$KIp&+ON_FdpiEg>F-dSoqOR|Mw}|C6~1HiwnlNudR7fbdtsK z9h>LfWGcBb$y0|Ud5qmf!ji+H)d zx}ngzIV0@8Yp)C>`RvAnEzajD^u{eGsFz!O-&I6%H}4UNDf0erzbw5m(i)4A{Y7isL^TN@=|F1?>?;UG)9p<^}QF>Bd9nZHMot-Y-9SJxhJ5!78iHa?!ehYg+j0nxBd{cBu`FvV2{p zGPEwoh@6;`>S0p7miZ)3=+m5-bI#NOmAa(lq*~cNvT*0a+s@Jn9`{`47AwkgG^Rx= zO3xe!_pmJQOLj0<&o)e0D9=n0>|IkJBqJ%*@E8je8TytL$JH0)pLv`!E^0WxIxz6h zN-d;opigyylur0*YAb{{VSr&mOUPp8n$bTj2OAb4% z}aI%6otS8spxA920=636c z4QA*{qa=NLMnUo!2m9Kajpn&`k3Gd_G%o4vo}O89Vy!+0WTDZiw=zH944ni07;mtX zsDVf>z2H;4*zQwWMcKqll}vxG%O9gN0tvUkNOkA$|950h+3wo6PF)<|n=M*ZP3yCk3(FMEy2o zoK|Vj)CZoiXM79a`F$h?BTfyEjc-z`APJ0Wb)?qWaAYFoL|H)N2SKRY&PkxW=*D{+ zC%acB&J`ofsjB6fAWyeFaF~9uU`|ENt6c8p4E;wBLo|);|Fbtlf7nvgsQmHjN{BR-$gl`0Wb$%0 zU@F&MDy3?VHRu85}PnA4bTOW}jt{gqCmN*9q2G zX?}(tk?9jDALBSANC*gm@hQe-)1ugiI$vU?GoD24KSXYF;EvG1Qr#(4gE!%LbL#~s zayCavn?0UZ*os}drfA!ZZ7-*b7B;k?u9{*u>t@zpa|<@t1+hRoX7#_~UM;rZ@Ng!V zj7boG0??Lu&Dzp_qAd)-4yu`ehW~MO1|sHaeL(*2u_~1lP0?-(F7X)Ss)POZ(H_^A zj4m9~D>e3KIQk^T=IufNde$8r&1A$BK&N)c=?SNBQHaiQbii+N}v^ zDB5+~*0Hw$n{!_I*+r5@niqSPjjCV8Kp?!^(E6=#nvRdJk8EoZQ{tO%1>bmO4b;9J zk-A}C$nVYn^OKi8+(xvw^#9O}qN74Qd#%@Yr?3k6`1ny?B}p$`b-bPFPR@4> z?6X>KkVxbGHqsD%(!~u5AXn4@q|+*OYEF1FK1mvWwq#2^_1X#Ff-0F~a7EOl+l$m) zF*p9uxjAusYFtDam$RV%?VFZot37iUqN|@v+w4n=>)LPC7m}^&5>%%8QMX*Ljf|Ky zWV)dwa+mwq{T38()>WriuX}&nJU-BUX?~{k?Nm>ceHcRw{*cRgLQp&Vl@|Y=t$%&W zf!4u~tbbHEyxA}`W>}k>=p2CLNgW2yDGjUg92K=J3Pr_oC!5lPB!qQ& zc(7r1mpfmkw9+w4(dS5 zaD)Bc*k^X=@1W|99qTpcHYO=Cw|CqWxbB#8iP&KG-7ez0JtqWufHw?lzFNsx7t(5A zfz+f#cEWT7PoFQ4R&7Im~ z(0N&BV98(gw2c3wj1zp^9qG$Ph1j8jwZh?cs*Jfli+}7NKaRQ)&d_azy{>=#_Y?jf zpDItoHSKV7$9DC{EnPtXz`Zn}SgDigo@PbO9Y(3+IPqn(+e?ynn_^`==)qiXDVf~KTFNtw6@tsRl1Yas ztom+Rq}Z*$kXqyS*Iko8R&}hQA|zy+uyhX|UedPP`~Z8)e5>%-HdD7wc6D6YpE1Z^ z5%{i>hO;MOj&x5Xj0 z^Ie5c0`Ty0Yx}BHj5=*#N&@!qUYfbNoRpR8GHQED>qYkJGK7xu*+Tk~TM3*#bq~2Y zTO(k7vHs-5|9;kgfBGNmi;kkmX5cpA>j^AWbf%6PhA_!b>iAO3>FTY_4%mMCB8eJ3 zQ0@%!`i9^Si;T86X7;+uQK^BXdMaf34jCVZhx&YmuWZ&%2pP$aK$dUub`n}6Lcn-A za(r^Fw_YuyD|{;Zp*e0~tPoRSMW6a(#gL?{dJN72s zT!}A(#F8VY>u@BctHIl^bJ)zGVb^7?R&AZ~Dao{{Jol74Po?>$w)zEP<| zsTe?H7g!=*vPs_dtAUifo})3}6X>xCSCWUOND8xhDlV@DdNx@|R140m^6jV9Y2l8y z0LJ_uE31Y+o@{!em@AiHF6Y0X}Z?%#LoM7wDQOlcq zU69CdeQru$@wxbexk!ht>F(vh36YbLGh^E^g`a0k!ued5UI=z95uQ@WyX&^K9x*qN zrQd=z*PdW1<}1&?>+4gO(CTZrm8>hddvtBa`e-DxVz}o?#jPl_@H5mp;;~lCp?7@` zhDDp@a}3x)BJzOhK+?L;dAR54ZbQpI$5XW56SLO8 z0tjJ)#5(firJ#7XctVHvKMS|N8I`ryW}Ena|95N3rlv2@F(GH7TEVrVlWQce_&})8 z0YD98X#DvYKz57|qsh+PhwkdyKF@7-piCtas!ovf17+J!WxX5`D-lZs@Q@MbBl8Jq zI%WRc=544vJ_Kc=#{fjsLVJW3|IxDRS=X14y^)fUbyK`|B#HNMBxddCy3;@klU;07 zc$D!;*6?&@Ye%|M`TAz+>?M$N+HDu5Xk9A4v6#!(xOM#1qgO_BS3Kt*vUQYmRlA1; zGPBPtyQv}=C7RUoaqri)sBL170>dn}N7?;nORA<`2Qaky)CQRwt50nQ`V`jPFYy^N zt^9jSd$D8S$OTb>`Vn$i33K~T?HB4P%0e8xhsB;sMv+q zqA>vDdztRB`h-V#n5)W%@{skR$#=PrpFV~iDIrg>9CeO6$v#7+g=fp?los>I_7&9` zZGDzpYrY)i!EpppJf<;B`*2uWH{y%rv3i1q?Rsj@ZRXszhH%2XA1Bwk z`nnWKSFh2^+dIi>=Gnh;E7eP%6e?Er!=-rSGBi=^D%2MiFD^!Uuj@>T)}!W%z(>W0 zhd-pwr^rc{Ybm97_oPSLnY%r(Oa~oDi8WVhWRrGaD^goPlwMUFBNP3&U3H9 z#ZU%RY+9!PlDg2qt_$U%$AI{!c$!jpSi(PsgG_k)tCM}YO2((upa4jitBIM?!0Dr9 z2a5vKAW;mwlO#Amz}-duNe^w41@Jj0_p9YQ=3nrYlGU<1QPTETP@~13?YeAri=ELt zO*xG+H@cW6`hO59ut<`QwCV7$Mgq82O`Gsfh~*kJTu94>dC^3` zM_@=rnNH93I_Pz%%*W7JdD^z@dJvSsp097dIn&sAjgS9hzQ7IhKOg*9Jl;VFgN=#>f0H6sX6}XUZ&%<(h9_J1Q~%Q7vSd9 z`vwPFOz$m7kCgkhch8m|I@VVE1#D|G&atZJJkK-7etg&i6b=S3fRtYF#7Qh+NmBmxMB%&C#vw*i~&yTDZk?237Q;6RQmi8RJ@IO?EDj9Hu zvaq*S(lekaaxGJf&$r;iU!cs7kd_kzL3RjK5u@d~Oq!69SFXkGY0&6bFw*|x$Pttl zWqn}&&e1Usve8t{!b|}kZN08fUIqA_`OqFHpyjNcQqK>dEttYx0$8CMb2x}mKo|s2 z2(!!=?KfLy*FdPezQH=yr>6X4jql>)|xAGnW z%DGYFi>uyebIe2CU0FNsb>#-0=VD&iPJ3PbDV*tMzzH6X_l4IF(f-=YqUA)R65|~p zSDmWp>+3kbD4qRZ!TlO$J=w|_aQXQ2Gc|n6d<)<+ud}65}5Pa!kE!!VXq59W*F9Ou%u>INI-@t5$S5kUiClePAj58pAz_7MSWJW} zvSF)zWj*QhKWy@8rN-$SR;jzPJTqa9~t`=YDTjqlc2Orc_E4%_TQ=76~jvZRowUj&MOEwI6;)MVJ zs_xx>&1=^WJ*+>M6MY4)EfI`YV-{nj#~=SNdliR7Rr75dO=-d1EPEnz+19fuKK!@L zfyERG(4CRS1y;w2fY$CP{8C=)-pTzjlj1Wp1#Q`G?~}u70Xnz9wA0i$NJazYl5kl{ z`4mI5y-Z|$2~AX1s8U*LrS_}FjoypWCigE;28BZH;*>(p-3t*9d6Z}Jb39EApB3!=}C;Ik7NFu{>dWPH>2h@Jz*B$D^-NpMu?tSg%4;1&lC)Zx4@XjasrE6Tn4O&!Ogm!!&X(kTN!n+i3Mdx2LnSWxMo9r^3u)#B zWtwb2`I&E>LkV#H z)B!)mmBf{uN||_VQDX4}*ObC-x%^zF^PAEoq1YQ+2gfzezpdf_`J243grk#g9o#Y6 zLDbmNX`7b+U@{vQ<6(&-e4bP1?Ucu@b`UN6`M-hb#;O-d%aV0CWtG-S1U!ntTwFZy z*|Q|*4LU8s2W-a;=mgk*=peJbuGwhLR1U-U`|RnyCOy~W;1bTm`hVPTL6l92yEWYC z&2y7hyrjq;e*8VMKe3cXVkCs0;{d6%)3+}o14}^JEXlu?*yzt8nsx9HY-W(pInz>L zsY!iS&r3DX`!Zwy7zWXE0q(vptjz7UVsmBY^ri$*%b*C!s{j7sBRKu%PmS;-cr38;8v;TP=}t)o zR5JA1p1_8qHP3;eZD+9o9eQVwylMEd=A0a74wCcPl;@phS}#h z(2#=www?nhl;uikDkL}H6uBdsrBjAlmUP?~l}&-+co<4N`$XeCx3_W}XLOoH1nfq4 zK{sKMn5al~UXB&QCmm;ct=e}-U#RrNJLGDRAM%~sl=zBdp35Fbz*tZ?&L&+nh-UMO8S%L z$?oFZI`Mr_c&Bu?Isa1ZQmT#A2@w&Ey*te_^dh)Kc$AM3v%qwSsf8=^0ar%1k{|9p zqt1Nc_HEF*k^vlP2*`3ZK~}HGa5pZC(#1}~KA~QQFn7~xWA7pFjUBg8C^#lWJ#>E0I4DD5HiWqa+B8 zzxoJeUjijvYE3|LjNU3}jH1IRlWG*3700HY^N-*KWSmm$vBzQ`jtFJbp4^4l++k{N zth7WW9d6$JesHQ{1FADqJ0dl`o!YYLr`BJBwA|T{zTX1?&}m*HG9WsSaC-p;53pbv z^0$X#$tgHC>@678+oC`xsrcL?GIos@yQ7sO&vV-=i`Z>*5sO5Y4n#H0;*#L#lA}ar zVg1YX!o5j0de>8FHDzg(URd9rZ1@r-?PTJVxqhsBI$Yw-#eFr$!HR_n7c&iD__T-q zQvW6fF_$*imo-T)(BU^9u5t!9DrdrPw{XA9X9rr~d3QtEaDGj+auc4s$GZOL1`-+( z2r7$HdS-tz;c!8WcD6S0p=-rGB<&V00`SeQ)i)C(zN;Dq(UmQe!khNqd^(ymLMR9& z>SX@M_+8xn(-s0iqXp~`YcUMkVPU||5-7RUCRKR`(SqMyUn&uM&Cz{SiCNmLx-ERA zy)&7^HMds&I0swHX~iGd@pm)ifH3lGS$HIEEw;&&9RYmcglYzq1DXnr*5N5c151Jr z)OO)~*IHmaEJm*iPgE*OZc~8(^~1S)wo$W5MRhNoRIFmQHaqp|HyH8Mx&ebF%87NtS2QEPm8wl;JKMS|k`qnIj-m zmIfv=@@#jkI@*35L%^n0bQP?6Svm7(fxAu$hfF&|e4PBVivb+wP&$+XcG#ra`ZiS$ z@NU5&ufZYI0P4S9qu6|inz6vErgjgVTYrmXF0!nU(i{00gBJY!G8my&Li3XqIU?CY1JFkc z^`Cou`-~0r@gciKic7_|L(d^K<55Tg2REP4ys_2D*py~?$wkZ+!Ebk;3OHWI-+Ksg z=xsMi+rb;|iMa0`(j&ph5CmfVfSr@HzsIpJ3^-uYa2gMSUyt3+cxcN(Pr%XFyy_*KXo6g%WtGl1mXk!;U#+72-DX6l1^rZ2Q5 zUc&`2OXdx@F{)@dS3dL+z3AQjc1rTLxI84WU-a|&T_sM@DU%}cZ~&fm{&>1yt-_EuvdA#Vawb4Epqs&SBi;QU>y<~_ehosJ61sKWPM;r=dmTg~CS(mYQ= z^GC4sW7PXEVQ6fu0anQ*8#-XM{G9Qk?w?~HUy0l6zO3y$aF2>(N(8tbc`WNd*_1C5 z(kCV+4grF|2j~q{*K;?jCZG?lz)WDXs4{wE^FL?l>cS?QE99K~yBnoOOq8xZ=>C0a zPdz&3-%tDVQ)M(di(8u$vwp4$G=BXmNJHiW5^4l+0y^WzES8g$dqDY^1? zXf_f;BIuoNRkG2ABPjH=cIT#mF&X^AM;K_d4hN2s(YPikD4P_4k4`P)x?IX1Km6B5 z`1@tjB!igvA98hn&gK8{K;H*pmKO$m%i*6*r&6dSh9ac_ zuv26Nv>*a5C4uzjRK=5EV5b>70d#PMUXX?mjL^ry-B728E{oDDsJjmwKjsE}>11HW zHzM!8Vhr9nwuc~f3ITNS1N@j1VCzEzbxIH}$l@|@tG6nKfJGZDFrSRLKp)&3u=t0I zj}X%b$6)|gn}hqKE>Y5d5Y`#6hM7@t3lUn~9Wr5Nz};`EJA&@U!^b46**ipT=wE(n zJcZ1uwO=1MtPOnxWD;or(@`gsLs0De>5>m>INnF_&d+>#=k4W=St}W?J5#|1Q6vv5 zP~p0tdh)fLpRv6VU=Ja6Q{TCha!=?%$UF?V8PZ_fy6T<_Yrdt>S~peU8NLO_{}aYrT?`e3lZY z%z6WqW@@1t|3i1zM0g!}5spOm9&TL@5|W?E=x`CS1UYQf3g*hwm_x9VUkUmLr*z#H z!_GYc8*bDFl_hjY5Ca5daBs0HTU2SLzMWMv%|Gv&Ak^@zv2K!@pzfF+@}4=IpjPjS zxA1%f)c8ZlgjXuH=$nQuKuwTs6wkL5P^!|qE5#MWP*>{`v`ZAzmSyaop2;G59~V;z zYezo&286&Jm@$$b)E9Qtd2nCJF1RF_!PT(l7A=H{`(KF)6OT&x)968lC|BUx7M%~6 z4TsnsRW2mzY;d@oEuQxtQquv_f^0z*fVMA?N5HUnj8MS*Y1ce8O7Ev=PCuhLg&Jq5 z*d6>2fB?6u+A(#1bdGS}VgoDy18_A5Rubm7lkK4`}8t=qWhR)8KyUSAaRSTv~&bUBBKG9zHYRpvnJ^gTTqlixSrf zTFGoT1Y1w{+GDkcIpv9+o5*L4aoq1uAQ2u4R+YgTa%yT*qW;k;hJpf6XqJI9(n8~@ zO^Li5+g-1HO?~ok!&rHUe7*=VH9n?;*d$gWOUUfjad>pO5aB4mm?Uy&n54D0)RjU!%E!9WMmp`8nPUFqEN3p7U~X!aeEFIq6OEi8Q;O1qrjz zbbj_bi*zaj)5h*Czz^$stsX8>nSr4?t#vl;FtlJq0K=~ix}u*$7wz!v4oEjo0~www zBd-IhQAqluVf}pvgq!MOZOisJbtA}brub4CCo|~eJrKU1$ZLRw)&uBs-~bPAbpJLS zdFt39_wF{qAakWN)frM;3#uk{sa}@}cFqHrfYtCE(wbqnOVOMI4j)S_MDW=jz~rt8 zBe%O{6&Wnrq^gE0lYXoMW^&7wD`(+Fx;=OP_p>z$w~G0pV^!YR?kdO!i;8(2K;>orC~|}?X37ft%x#hu2Y!WhieWU{Xt zQRBLaAp$&8QRcmNGic!3jlcJ-x0bu8tT8c`I#4xB$I|B|=eCJxu#cArF*4*E)=2b- z6^zxng8a8AN$<^l6{q+tfd%p`Y zk0nx=XhA}EC({E@mz1|tF3o~Knb^3-15IqjKtbG;3mZ7rU+Sgv0wEcxO!Kv@S<(W@BjzD$f%vkX##`3A!S@`g}E!p??BH^Y}AHPCc3u zr|Hx*ca6u_0NyC^L+WWF=4Usd8;dh-Jl)Y{yFNTQm(e`cWfIOr8Q{G{GDHh1jK`~S`{*x^_wD}QQ=)v0s^yd?&jm-hq=-H6k1Yocd>AaC+O zdyb)h>i&!{gf?3x>*dK&OMwlhZ1|EpPR5ahIAe`BhJb_^F+EO~XZ>PE!D&ge^jXHJ zfU8Wc9C{CroFVPZAqf|wufSu=>H--!`s%T4?z_*GyBEKB#SRK|!7Q@Ytd+B!MOhX3 zE8$&&0GL_$z9c&|QLF}H8>?)&h8OXyg=bn0xA0$d4-WAW6(h3gRSsU8>^h9cMV_D> zpWm6GGSk|3QhT4(NNL?+U6O?kMclkfIXJBmP-Qo6mC+fi-TIb#t$5_+Ezv8~BAcT0 z0ysi_O=or5jQF;jYMa)2k?v3upusA2$e9mrkNRZ@L0EtTQ$VO;T-$oKlyYCw4Gb4< z_sMt)-I%xs&F-7GEb7)gy7J8vmKgR%S@M{sa$DVrJ#1g49s zx~tnQ{amSk4{WD%h$Z+ zOoGChz6y~t%qWCCa@;3j^S7Uj|J=BMTW$L$#-_yGgKbI|6HeR-86{UMkujE|cam1n zDSKh63(NEzvaed`%4;~-t1$q7@@4?j<0L!6BFIZ#2+ zs=7#1n(g+{BrFGz^r1^%0!Fld*mXu8wq84{5yqlCcjP275*YYc(w$mY;I2SFVShpO zUKiiY+&fib{n{%yWy1+%!uWgk7$3H1DL0Y6N|y+caTzGB@QajGmy_2xdc%zn9r-G! z0P@7h;JZE#K$Pzkgg5oCXe^b5pTxK^~`$`~8zAhvvy^K%VsoY2huM;pnV=7sHVCkq)iL38=#$jciF) zU6a<7mv;QLWj2`uq9o&H6yuQXUJ5!YBR?q+n^*B#ylEc#}%D*$jjhIQzt@&J1_fhXpua$1cb7y@*t_!k>b>j z#Xcvwo-9C?`@yoXC;Vg(Z;Yd<&4sEHYXX+lfWDcY zq+MTyI&P|NMS1a_>*i{`;qEzmG36}roUh00GhKSV0?Nl-;lJN%`SY`eq9Z%ZLX$_# z?$RA|XTv=__%w=R<~gK-a3`F1RB(lC7rGdb&IKYE7lY+&!lsMn9!K!cD!CAt8@xo~uB_l!N5@KChoKoQ z=pJn*?!ao@k`JsZgN)$>1A`b6N>m&Y${Lm*(cVLLli^QW)y z?O&+U#MRn4A2kDcHW!R=>YNjWl~y34dE&chO0eSZh2Lc#F5n*A-nM6b4++h2AYGL~ z3a)I_7;C9WuOpNn{~mhEY|G9hGq`4q_k!GqCm-&^1312Tfpj8PM2(|y8hICY7r69X zpgY*yAJTg#nZc`41hb~o+$a#ku0YH+Hu6N+M)|q)K1G{n&}_}4XgUx8m+EnBBWKSO z{BAgG&E_4{$#FanAe)y{H=gCC;+qDV2vH|fbqGEY4|UoN?<1ixGd#3u(aLg8 zWOE?|X{v#2E#1W%1lYh-B_p03t5+}rH|?k0%|8pbpr z)wrOBjlcsS_ymv#(x?+vrds`^__*t;G=hYdo(Rs@b2{fZwK_+5s93dUzcG_TeYBqs zEMB3(#L`zfN1Qx@w+4c4aJ1j*9g>%NTJG|!647alb6Vp=baFjGtE2Shp#^Ghw*%RN zdlN^PktWMpzL+L|{AYZC{7fm!z#2o+I67S=BPz8!Gk2m4LJuP!eUc*c1n=&TWR@Lt zb@V8>A?SXkFST}dQNtaTej?a&&#t^C`zk^ItP+B&hKKm!l#q(_vO>TH%AMy+vH?nE zg5np?#ONkh%!vdb)()=$Z>DLsM7Tc55}NSGIREL)KLBmuWVi_6ZJuCK_s<39{+&CG z5yE=Wdn#MeF6ny9MP-lO;QMaukkiGR6tmCtUHs6W+5Wa%WK!I7A5E| zPm8I5L^)B6#S)#~4P1f%VAiO61>1EfaQ(y8-y+D`0*Nir%wwWVl899&fH&BoOkD}>tmIjX884O^_9Mzel zyBXGAw=IpO#G&--={OIVjjyP6_~O~&;|ZN?NhXv0oUYDU-E2mnQ#H$fZxgoG(-gnL z7{{@P`;f;SO@xXSmS`Hbq!`+g=ZO~HME}^5(ShgP7kO|<=*I4>t&x9VFYLZ?wCUvD zQA?>uTf-?{_#g8z86Q~^B{|qQ4|a9#(blCq-b|h#T>3QMbn$XVd+d`ZCPd-^(7@d$ zpL+!3aVnU*TPM#%fs-*7-zm35WhO#;FOBy$p#e$ZMByS1t2^D;%$+s8unhUe`Gwcd z%15Tl*R9eL4{F@gxO0E4B)QkOX-`p}=s~y(w{$D#Dxa5=0fqb&WI$sgkW#YZd3)k6 z%wHfT9(O<2z%t&)-Vh0QgJJ304WyM_L3>k#E{pZ;Q~~*T0BZ*MOA6M7yW>!a&NbwQ zYJoK#f%?i+f^k0&K~b7*2}uc$zgluZOD#qC+0u-OoFkY_%6Qw7G|7&mn2&@-xwa+j zLi5k(Gog@D2ia-HYuY16EM6A2lF#BoFd;a=+_cAfzl~&3Pun-!Uc#I=8t6#qfgj1toA(SVf z?i{0|G#$`(BKPF17;xiFFt^u=la={Q;fz-oHNGMUmd4ImqazK#DSQrsuEU#OYa5@6 zY;SOGGGqf$Rotrd+eK1548g_~QM%L9O$m3L;}wkeW0&>bLxLVbgxMx=Lw+O8Qgnvv z{aKKNYP#{A$(4LySSkqvSa{@=$fPmkIJ7kOK)sf{!jWUXN@0a{Umk6i*xFjRR^$dV ziF2d@_rl0$FW{8je10WOpv8`9cb$>|HTI;zzORiPB~R=( z);KeC2F7cpQ9uDwuEXl5x-rMe=;yUBl zteH=hsom2D=~&mZkp%2>2$PNOLWfnoy^L#yaB^6KE~Ip;*ov(o4vH)MGc7hHKHa$m z(2ixWE|6VE-cF9;fsoyh@t{A$tcdrDFAv(wkS7u8S&T4aQ_2-OB={onRsFSHYAB0x zt(mqsCF#wa#}NeQ*PW9Uam~Z-Loa777%<&BVqa+0V*t#t#F=Igul;PuPh)|Nzo$}W zv+#y8!rq5uwX72E;(7~A=K}tfHh&z-_=jT0H|zZ#KD4V1v?)<^OP{R5&@i|7N-g*V z`5a%kq3s~gYNm0N134n(S@-oCvc%f;CJnfky$a7Cg5m znkc*mMCVvl>aPW=dVm9RIL{f($Ik2LdH{^q3nF7+;mw=3CHtUeokEoVl?NUsjoH8+JkyLZd2+2X zl&b^LR^I9>+`9)GYz!=?ccSscJ0FY$K|Q8K>IgpnBVEiYwN(Y&bnoW4!tsSrkd}*r zG+Gp-ofJY?=IFgVxC@L+^g!-&N7?B`Q*=rAY!<7Q)Wbszx}KZ)po3cjsFn7sO9kFu zRTz}ofNF#P<B^=^>WyBL>mzDgPT1(=B?2dG`1-WSA!wgrg$#AzI5^X78wf2B42yj zhtbH;_OIDNy3U$LiZNHLzu6+MvBoKzRxPr*UgD4jnQ}co^!IR$=< zV>EALy>KdQ9gh$q3YPOZ)NNvwBe)B%%XAL&-TZPFkzB5UY>`Fvi#qkA;>~?z>}38c zM+kO{)05%EMA`#yV|e~ditDb|gbjK~9K>)Lhpne&og9En&h7eBPin+2RMO$Gk%hK% zIyeft-Dre9BJT~#nw9KCp>>C$I{~MK&XlkmlM6R)OfXQVf`rHM9CP%%1&XBYqhbJo zi}WYsyVth(F79RXYd6HNac#BvFG(*G!`g19%`=6au=E5b?sN|3pgXfn_TQbDvxx{_s3dTO% zQxJI1rX=GU+ei>5JXis8Qq)t|v0v?D6_;GX%t_6t!dORI5V!*zQ;+)}DC8+H(qQmT zRXVGRjptfhAB0N=Fd}QgxrL4ccnf6-HlL~pXa;FkN(?P^p zfOH2*)kNl>ELj2)VjTzqUogHJ%WbX_%SEGsU5?W!X$`izoV#m`$G)pG@0cJb$MB^( z%>S$G$pfM6zGfO_iAaQsX+xG&%1(nw2$dyERQ8>S#+GR#gcf-#+nbOy$Ql~UPo!ka znqeqwMBb1Hedi(OQT_AzYs@^)J?EZ#?z!ilHDKEw&q2NMxN1_YtViYSbBKQKCz~SK z7>8~k(K&;%jZoh*YS?X3j;z%5c%A#zpr8lVlS=pd*Lpa{L{C?z1-sio_2=5*vJ6C* zxd_$JdXXy05I!tPdKf2W?d)>~G2ZuI)+pZuj*LlB+tr~^WciBNXD&;^#q~%$RI2vB zX9^(c`+5MIwUb7`ZLJVTw6NS5buRJQrKH%Km^eGNF?|vlf_sqar!)9{_-DYlrelHDTmU6pO(;)6b7x=Q!Py7P(hmM6bxpd0ak` z`(&f>E6{CDizl>7O$6NMZjObd`kF&A(TE9M2?+%WViQz-EtXKSXQ!Z`%}oDc0e>r% zi#}OrQw<%B@$s8;v`7Adb{t@hls@>5t`e-#_lvjq-ha*nS&4g@Mcc{`gHZ_1EW5rG?oCo2GQM z1Ra}DI3n=9`N?ixSDxu1LbPE&QtYi+8KScuy{xDpw3a31n~TF$&PYH>&VmkOa!OmE zB`XK^MAAX_rzN&FYjK|jVgg2u`36ogxRtggbumticA6rcM8P~F)l3<8kh5fi7%Pr? zM*;9_8kRQ zGOA~XEq?Bc`fx!1vE-23HgvALP;=B);!{^i3GZDh<&Dg+ZsnRtaCJCl@%vaD&Cdpnp}|;WQc`c#NWA|y z<2VCP#hUPWoL)URA6RA>GcUTbSBZASQ3iMhtf_8SJ|!X@(u$7Xb|%~jjPvU~|6#Xf z(1APY8>@2dg{jB;PNcODZ3yS3z%gB;76ksgUKtzm*ce2sv12D58!^QGw}BWiH*@a^ zC)lMk6C}5SgUy?s^)qrof4^_=hA%FhT@eC3-lRZ7!v>aipa0~FlBKUr%$>dWrsh2vg31jeC;d<11!kL>HTi7n((SF4 z$wwZXXST3V{PHfyIj8V!W#FU2!J~W0#@rh=^bSifRSs-LjB8cIgiYq#69$xKa7p4v z>k>Wt)wOzFRC6O&r2u-ei#t?mpyWPO>aHuF_PY5jGl;p@)BInq*vZ1fUK!(I4EvmT z?_QfjY!=0jsg3X65DT6CC9IuHZqB8q#O+i57IR;z{>N*fcnz>jJHJwIOnL3Ti?PcQkhlN}NaUzzgc>~#{KijC+yNZgZ*P~#9UX$!MT3;mFgAK2ETgduap00cF59U< zmb`MouNHV$e)}jU*0=Tyf~+j&9yJI0F%~VQ2}#}sSH(PeS$7OoD3T66ZWJ53YzhuQ z8(+B-*L9*D?!Djf^YB}Kjw)k(+D*6_n?ofa38;}Eb>N-WM+Ni8N$nU56QKL>=Rg0ZV10y}*auyb|o4xx* zHAAq||1z*0T!_yh!(4rBO9f`e*BZ=NpW8(~cojWA*>;&>;sYD&H*06P2bN&Z$r>pz z?`hls56e_Ychf2obJ&$D@98*=tf}7Gt&8DnYIdB3 zusP}0{gd-qwQ}nP1SEXKEo{~6gHD1ji|e2Hh#0k%d~{^Wvdvf=JV+O3~1~OO(bqR!pTT_3s;tMv02{C7T zOKdC=*z>`wK$t3eBD}-vtR|NiwMd&S^@#HvW3EV5``2JX zc*+g|O*^EdT1wn`6w#1QE(BJ99oTAe4)jq_6PeGV5Luj2V4ww3p*XbsEe>6mt`up3 z5&q^GKZX(NVH}fkr8+VEYd{%pPCGp5WxfqPOyq92$sq${2@^-J&0@xNlg^c&&L65?NFb5CeQP2|x9gQ+ekFsLOg@CVqDZAs z%;=V)6{RtBIhK+OpU6Y(Su{A^37XQM)}RUSYt4|VvMxe4YtTq{*B}cyJ=oxlWj5~y z(_|KOc}fe1U{@7z$eWFAd9>njy>1Ky7G=5jsDqY~H>5=}$$ezk@Q{IeSZ)QAFM{ZW zh7I3lZ`mAN0Wk`J_%*Y^9;={jp8U6?qLNT?G7x%xYsMpM@W z2hai=ae9FmlU#og?hr(FwmB3j@UX@Tl)2w$6?hOf(^N`g&B+y9;sP+dZa-VuIRtsP zP1p@OKFflotNES2b3R98#mX=@z!YwiV505VYK=#O>(+!J)0?bJ(O)iLbDE?6$p|6} zppm-h9neLOfIGD8Z)~OmY}U2q-0Bq-WWE8L=N}HWM&rN0n5BmFq_*@ZN_HON^f4zF zk{+BvrJ66%v@``lx9Nk`9yDg%4hXv3*1qU37tl>;ZqIcnGIXtLhrYT=8aKD$P-I^s zZ@?}PToUW#FRxftQ&3hYA{FQU81r-*(h9W~8VnkS9#&V^gzPTo&b8Hl8CVJF88g7P zYt;(+7(s71?<7Hr3V6b>>p3}hDkzv?R;^NA@sPkqjUz{Hg4nl~*L;%q<9nIyg+CC9 zL`rin#G)^e2S_=K^u9PK;9nUY_=5rX2??1y2Z}kU%{QT)=G2!vifF#V6PX9gNkv{G zw-DJr7aS6D3rv0+?7G@y|J=kh%?<^SeasH1&+mU>a5KhS6p4nF1=o+=^UilU4!+=F zcmye#=JLDcRs=cbG1*OigZPlw5aQmbI*J(cAt0S1ReJo7Sq271AdO`kR#j)BxffM@ z3YQ&dXs-ZSMO<1CYoPx`pK13B{5a`Z3m|__AIcNTZXCO9S-a;C_QQF@9A2oP0nic6 zuuuOtVx+c%ZXXO+D!X*3WOXt&^TlTWR!CtE8LH!MkOEqA@j-bsjr= z3dzJpiZ$*s&3iiix61KoHiN;xBkuK!N;6?w(4nbc!SE0##KH30!?b^AEquLOHmK!Y zrS~-A8n5>X#N60+y0NP1=g*)$S56KBT9rp!<=6l41Kykg3IWL(`*SQmg?u2s;%IAc4}o?z zcCM}$V^~K}uPlyLl?h{A3rg`s2LAQ#eFHozah%cBoZ{7@z#?+B@m9vm79fri4uQCG5G2-0TxYgX|tYe*M^7E{WBcu|J%@bI%99+F@Y;)2mg zVii=>gB{8^S(2h`uA(e?ZeSP+4Mc#6c9JcvAnG?vaC(~o#gA`IK!(tJz`Ffh43G_Y(TzTyD)p4->K7?cBNb!^6Y>K|3h{sn5g1p^%Yx zP=~{7>k?Zm&D=^4YQS7pJ+W_rSr)&I5W;oLUuf~#hVL%H9C_^T>Y5P_QMdEKZ~FCU(fw)YQ=Qgfxmy ze;Io|1J11I%jj811Gc`3uw$c2zkWRjDY{M02W4b*xrBb^U%Lz*TJ>YQryb;=Cx5+<;!zWiewSo|&D^SyWVX-a02g z{}psT)fb5}jJCT-lR#Iw9ydEY%gNdBIwQ2kbf&g}@@zkr$I1TgUrQqW+KQ&@R5=_rPm zLqo?|SI1RX$NlFtgsg{wmKx^yP@6XK_gqjKPIWUsf6IYLKc^W;3sEmHt99`Z5&B)M z=A49{1{JF^6_-(@$9w`|r90)Pe>fo+1M6}<-?ht}G6UC_#EguLU@;%TdCg($qB6A=f0|!N|zyZB30@ zs=mWm_}%Tar@NC&9yN7!2{bk~MxvlSx?W2JgtI=Wqg)Cbg!m|jHETFm$5GFpwIiT<01`-JM^;)3;DoY zA9}99k1LrM#6WM8272S&;L-^2g|>LD;`d`(;$qrIy)RgjN$NBayZ~r}5iI`m>{eM6 zoO}RN!f?wJ4v~AMaO7M1`pQE?%++AK>KTVqP=`ecvahrlbQ-i2flo znMGii*Oxic2u??&z@gn$`}#Mg$3-kCB`;oV&NU&Wlflzm0ef`3EiVoQb#al!VQ;wd zl5d~{e$^$|8{El{)M;A)*}CNHv8U6b9Q)PCgS@N<}FnFZYlir?L`K@E_; zLPvbcvg1q)nM~%{vZcmHbcnXq$LuiBdo&o1xWYMTer*{Lpd=FYCb9YK_LbxUefK7! z@9uXdqgK+*7Dyw1n*iGV1}4AxS=pA>)}GIw#VRW+&)V4ut2OVsy2Q1CcsT|axm8L0g}gDN7-fbH621{CP~pe#}qOhq|y^$JATu5DCmvD~w{i$(=z#d2q| z5)%^%n@sP~faqXv1^$400jLcZ<@tDcf+2V!#`7^NYRCnq0c@^N8f7;cpe_xO>tQx` z)~fJg89R=2Lw$>zG41o?&5HuY+oZaNCh|kX#z4t_1xY%fOrG)=GfCACdHb*TA5a>R zb4SN%73zm9F*tYnKBba5Fwq>x9A2ulT+k;%s}Uh8w5J@2>*?wF56Rjly|ST!%Mx>Q zcjpii5^A7O9`s2y>HI;uD?mEI%10U~KqfnZbRvWw>v3ax#L3A?V9myL)e{pFFME5f zJkOt3^d!`wc!efbmj_SyfJkGZTpUUU5Y~gb(YSw7CE+A;XSy35-7_(<|4rYyu<-Co zPS9|ATYdnqqZN{mL?B?+<%#I^2g+#O}wD}Q4VK!6y;Y-Vm=IW#oXY$2;T z-+nCVIAQQs9BoT2A$cJIG|g4?im1iH7Xv?xD_V4}m=oTe0os3_b#?v1oIoZkA~!sL zfBy=G2DI#5KpDpXgxbY(Y5fw~@T~@@`o2E4iThAX4?nwE5bNR(zJieHA$|c~-s_M8 zDjcObb*kOt&&jU?xqgu@?l4+vmcXd#Qkv6r?`tapu{Ea08Ay7_o@mUCYMU5zCfd7XK~QvEKi@t z2|`nt%+Q@QbRKEprssY@oi@kv5f2ZKhR)8|^h*Xy7xU%wou+NkFc<|{8{jRe3x^{s z5o&lLHV6~aH`lTw&lQ;pifDxFJ=Oj3<2I#$Ssu9hb{RrtQ$&P)Ar1dJfuAQK*MAp6 z24(pjK14XlXo;d$Gg1{~$YwSJEiB_pDwS%GIX94Iw)@rFw_#A!X!|l+S2?~zt%me~ tO;eMT6=3*1Gt(lB+GGpQ;YgUD^yU7u+uqvk$)tn7BWgN_(p64h`ah{YOauS` literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R_L.png b/docs/modules/path_planning/reeds_shepp_path/L_R_L.png new file mode 100644 index 0000000000000000000000000000000000000000..0d3082aeaf30772b53243558556fa4940b390d8b GIT binary patch literal 271666 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 eaZ~BdH!@-Iy>!yjJ9D?ezti$()` + +Hence, we have: + +- :math:`u, t = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`v = φ - t` + + +2. **Left-Straight-Right** + +.. image:: LSR.png + +With followng notations: + +- :math:`∠MBD = t1` +- :math:`∠BDF = θ` +- :math:`BC = u1` + +We can deduce the following facts using geometry. + +- D is mid-point of BC and FG. +- :math:`t - v = φ` +- :math:`C(x + sin(φ), y - cos(φ))` +- :math:`A(0, 1)` +- :math:`u1, t1 = polar(vector)` +- :math:`\frac{u1^2}{4} = 1 + \frac{u^2}{4}` +- :math:`BF = 1` [Radius Of Curvature] +- :math:`FD = \frac{u}{2}` +- :math:`θ = arctan(\frac{BF}{FD})` +- :math:`t1 + θ = t` + +Hence, we have: + +- :math:`u1, t1 = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = \sqrt{u1^2 - 4}` +- :math:`θ = arctan(\frac{2}{u})` +- :math:`t = t1 + θ` +- :math:`v = t - φ` + +3. **LeftxRightxLeft** + +.. image:: L_R_L.png + +With followng notations: + +- :math:`∠CBD = ∠CDB = A` [BCD is an isoceles triangle] +- :math:`∠DBK = θ` +- :math:`BD = u1` + +We can deduce the following facts using geometry. + +- :math:`t + u + v = φ` +- :math:`D(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`A = arccos(\frac{BD/2}{CD})` +- :math:`u = (π - 2*A)` +- :math:`∠ABK = \frac{π}{2}` +- :math:`∠KBD = θ` +- :math:`t = ∠ABK + ∠KBD + ∠DBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`A = arccos(\frac{u1/2}{2})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`u = (π - 2*A)` +- :math:`v = (φ - t - u)` + +4. **LeftxRight-Left** + +.. image:: L_RL.png + +With followng notations: + +- :math:`∠CBD = ∠CDB = A` [BCD is an isoceles triangle] +- :math:`∠DBK = θ` +- :math:`BD = u1` + +We can deduce the following facts using geometry. + +- :math:`t + u - v = φ` +- :math:`D(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`A = arccos(\frac{BD/2}{CD})` +- :math:`u = (π - 2*A)` +- :math:`∠ABK = \frac{π}{2}` +- :math:`∠KBD = θ` +- :math:`t = ∠ABK + ∠KBD + ∠DBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`A = arccos(\frac{u1/2}{2})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`u = (π - 2*A)` +- :math:`v = (-φ + t + u)` + +5. **Left-RightxLeft** + +.. image:: LR_L.png + +With followng notations: + +- :math:`∠CBD = ∠CDB = A` [BCD is an isoceles triangle] +- :math:`∠DBK = θ` +- :math:`BD = u1` + +We can deduce the following facts using geometry. + +- :math:`t - u - v = φ` +- :math:`D(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BC = CD = 2` [2 * radius of curvature] +- :math:`cos(2π - u) = \frac{BC^2 + CD^2 - BD^2}{2 * BC * CD}` [Cosine Rule] +- :math:`\frac{sin(A)}{BC} = \frac{sin(u)}{u1}` [Sine Rule] +- :math:`∠ABK = \frac{π}{2}` +- :math:`∠KBD = θ` +- :math:`t = ∠ABK + ∠KBD - ∠DBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`u = arccos(1 - \frac{u1^2}{8})` +- :math:`A = arcsin(\frac{sin(u)}{u1}*2)` +- :math:`t = \frac{π}{2} + θ - A` +- :math:`v = (t - u - φ)` + +6. **Left-RightxLeft-Right** + +.. image:: LR_LR.png + +With followng notations: + +- :math:`∠CLG = ∠BCL = ∠CBG = ∠LGB = A = u` [BGCL is an isoceles trapezium] +- :math:`∠KBG = θ` +- :math:`BG = u1` + +We can deduce the following facts using geometry. + +- :math:`t - 2u + v = φ` +- :math:`G(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BC = CL = LG = 2` [2 * radius of curvature] +- :math:`CG^2 = CL^2 + LG^2 - 2*CL*LG*cos(A)` [Cosine rule in LGC] +- :math:`CG^2 = CL^2 + LG^2 - 2*CL*LG*cos(A)` [Cosine rule in LGC] +- From the previous two equations: :math:`A = arccos(\frac{u1 + 2}{4})` +- :math:`∠ABK = \frac{π}{2}` +- :math:`t = ∠ABK + ∠KBG + ∠GBC` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = arccos(\frac{u1 + 2}{4})` +- :math:`t = \frac{π}{2} + θ + u` +- :math:`v = (φ - t + 2u)` + +7. **LeftxRight-LeftxRight** + +.. image:: L_RL_R.png + +With followng notations: + +- :math:`∠GBC = A` [BGCL is an isoceles trapezium] +- :math:`∠KBG = θ` +- :math:`BG = u1` + +We can deduce the following facts using geometry. + +- :math:`t - v = φ` +- :math:`G(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BC = CL = LG = 2` [2 * radius of curvature] +- :math:`CD = 1` [radius of curvature] +- D is midpoint of BG +- :math:`BD = \frac{u1}{2}` +- :math:`cos(u) = \frac{BC^2 + CD^2 - BD^2}{2*BC*CD}` [Cosine rule in BCD] +- :math:`sin(A) = CD*\frac{sin(u)}{BD}` [Sine rule in BCD] +- :math:`∠ABK = \frac{π}{2}` +- :math:`t = ∠ABK + ∠KBG + ∠GBC` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = arccos(\frac{20 - u1^2}{16})` +- :math:`A = arcsin(2*\frac{sin(u)}{u1})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`v = (t - φ)` + + +8. **LeftxRight90-Straight-Left** + +.. image:: L_R90SL.png + +With followng notations: + +- :math:`∠FBM = A` [BGCL is an isoceles trapezium] +- :math:`∠KBF = θ` +- :math:`BF = u1` + +We can deduce the following facts using geometry. + +- :math:`t + \frac{π}{2} - v = φ` +- :math:`F(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BM = CB = 2` [2 * radius of curvature] +- :math:`MD = CD = 1` [CGDM is a rectangle] +- :math:`MC = GD = u` [CGDM is a rectangle] +- :math:`MF = MD + DF = 2` +- :math:`BM = \sqrt{BF^2 - MF^2}` [Pythagoras theorem on BFM] +- :math:`tan(A) = \frac{MF}{BM}` +- :math:`u = MC = BM - CB` +- :math:`t = ∠ABK + ∠KBF + ∠FBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`u = arccos(\sqrt{u1^2 - 4} - 2)` +- :math:`A = arctan(\frac{2}{\sqrt{u1^2 - 4}})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`v = (t - φ + \frac{π}{2})` + + +9. **Left-Straight-Right90xLeft** + +.. image:: LSR90_L.png + +With followng notations: + +- :math:`∠MBH = A` [BGCL is an isoceles trapezium] +- :math:`∠KBH = θ` +- :math:`BH = u1` + +We can deduce the following facts using geometry. + +- :math:`t - \frac{π}{2} - v = φ` +- :math:`H(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`GH = 2` [2 * radius of curvature] +- :math:`CM = DG = 1` [CGDM is a rectangle] +- :math:`CD = MG = u` [CGDM is a rectangle] +- :math:`BM = BC + CM = 2` +- :math:`MH = \sqrt{BH^2 - BM^2}` [Pythagoras theorem on BHM] +- :math:`tan(A) = \frac{HM}{BM}` +- :math:`u = MC = BM - CB` +- :math:`t = ∠ABK + ∠KBH - ∠HBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`u = arccos(\sqrt{u1^2 - 4} - 2)` +- :math:`A = arctan(\frac{2}{\sqrt{u1^2 - 4}})` +- :math:`t = \frac{π}{2} + θ - A` +- :math:`v = (t - φ - \frac{π}{2})` + + +10. **LeftxRight90-Straight-Right** + +.. image:: L_R90SR.png + +With followng notations: + +- :math:`∠KBG = θ` +- :math:`BG = u1` + +We can deduce the following facts using geometry. + +- :math:`t - \frac{π}{2} - v = φ` +- :math:`G(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BD = 2` [2 * radius of curvature] +- :math:`DG = EF = u` [DGFE is a rectangle] +- :math:`DG = BG - BD = 2` +- :math:`∠ABK = \frac{π}{2}` +- :math:`t = ∠ABK + ∠KBG` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = u1 - 2` +- :math:`t = \frac{π}{2} + θ` +- :math:`v = (t - φ - \frac{π}{2})` + + +11. **Left-Straight-Left90xRight** + +.. image:: LSL90xR.png + +With followng notations: + +- :math:`∠KBH = θ` +- :math:`BH = u1` + +We can deduce the following facts using geometry. + +- :math:`t + \frac{π}{2} + v = φ` +- :math:`H(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`GH = 2` [2 * radius of curvature] +- :math:`DC = BG = u` [DGBC is a rectangle] +- :math:`BG = BH - GH` +- :math:`∠ABC= ∠KBH` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = u1 - 2` +- :math:`t = θ` +- :math:`v = (φ - t - \frac{π}{2})` + + +12. **LeftxRight90-Straight-Left90xRight** + +.. image:: L_R90SL90_R.png + +With followng notations: + +- :math:`∠KBH = θ` +- :math:`∠HBM = A` +- :math:`BH = u1` + +We can deduce the following facts using geometry. + +- :math:`t - v = φ` +- :math:`H(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`GF = ED = 1` [radius of curvature] +- :math:`BD = GH = 2` [2 * radius of curvature] +- :math:`FN = GH = 2` [ENMD is a rectangle] +- :math:`NH = GF = 1` [FNHG is a rectangle] +- :math:`MN = ED = 1` [ENMD is a rectangle] +- :math:`DO = EF = u` [DOFE is a rectangle] +- :math:`MH = MN + NH = 2` +- :math:`BM = \sqrt{BH^2 - MH^2}` [Pythagoras theorem on BHM] +- :math:`DO = BM - BD - OM` +- :math:`tan(A) = \frac{MH}{BM}` +- :math:`∠ABC = ∠ABK + ∠KBH + ∠HBM` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = /sqrt{u1^2 - 4} - 4` +- :math:`A = arctan(\frac{2}{u1^2 - 4})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`v = (t - φ)` + + Ref: - `15.3.2 Reeds-Shepp diff --git a/tests/test_rrt_star_reeds_shepp.py b/tests/test_rrt_star_reeds_shepp.py index 20d4916f96..11157aa57a 100644 --- a/tests/test_rrt_star_reeds_shepp.py +++ b/tests/test_rrt_star_reeds_shepp.py @@ -32,16 +32,14 @@ def test2(): # + 0.00000000000001 for acceptable errors arising from the planning process assert m.math.dist(path[i][0:2], path[i+1][0:2]) < step_size + 0.00000000000001 -def test3(): +def test_too_big_step_size(): step_size = 20 rrt_star_reeds_shepp = m.RRTStarReedsShepp(start, goal, obstacleList, [-2.0, 15.0], max_iter=100, step_size=step_size) rrt_star_reeds_shepp.set_random_seed(seed=8) path = rrt_star_reeds_shepp.planning(animation=False) - for i in range(len(path)-1): - # + 0.00000000000001 for acceptable errors arising from the planning process - assert m.math.dist(path[i][0:2], path[i+1][0:2]) < step_size + 0.00000000000001 + assert path is None if __name__ == '__main__': From 9efd4c07a78b52a03c37c221055db1ddf4401667 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jan 2024 07:29:57 +0900 Subject: [PATCH 173/414] Bump numpy from 1.26.2 to 1.26.3 in /requirements (#964) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.2 to 1.26.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.2...v1.26.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8b3c4c1739..417ab84425 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.2 +numpy == 1.26.3 scipy == 1.11.4 matplotlib == 3.8.2 cvxpy == 1.4.1 From 1de7ac951041787d2a02053931ef9a618d1bf037 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jan 2024 21:23:11 +0900 Subject: [PATCH 174/414] Bump ruff from 0.1.9 to 0.1.11 in /requirements (#965) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.9 to 0.1.11. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.9...v0.1.11) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 417ab84425..172a88423e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.9 # For unit test +ruff == 0.1.11 # For unit test From f8515d109e38d4f9cfbc665fe57f4a13b715e86d Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 18 Jan 2024 23:14:51 +0900 Subject: [PATCH 175/414] Update doc_requirements.txt versions (#968) * Update doc_requirements.txt * Update doc_requirements.txt * Update doc_requirements.txt --- docs/doc_requirements.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/doc_requirements.txt b/docs/doc_requirements.txt index a8cd2bde40..b29f4ba289 100644 --- a/docs/doc_requirements.txt +++ b/docs/doc_requirements.txt @@ -1,6 +1,6 @@ -sphinx == 4.3.2 # For sphinx documentation -sphinx_rtd_theme == 1.0.0 -IPython == 8.10.0 # For sphinx documentation +sphinx == 7.2.6 # For sphinx documentation +sphinx_rtd_theme == 2.0.0 +IPython == 8.20.0 # For sphinx documentation sphinxcontrib-napoleon == 0.7 # For auto doc sphinx-copybutton -sphinx-rtd-dark-mode \ No newline at end of file +sphinx-rtd-dark-mode From 4fcab6aa578c60d4bc594e47671a140e450c7cda Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jan 2024 23:15:25 +0900 Subject: [PATCH 176/414] Bump ruff from 0.1.11 to 0.1.13 in /requirements (#967) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.11 to 0.1.13. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.11...v0.1.13) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 172a88423e..127b89682d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.11 # For unit test +ruff == 0.1.13 # For unit test From cfe1e3035746454adfc02f66c6190fe58bb7101e Mon Sep 17 00:00:00 2001 From: Ryohei Sasaki Date: Mon, 22 Jan 2024 22:02:22 +0900 Subject: [PATCH 177/414] Addition of velocity scale factor estimation to EKF (#937) * Addition of velocity scale factor estimation to EKF * Format * Add a scale factor motion model in the Jacobian function description * Fix Jacobian function description * New script: 'ekf_with_velocity_correction.py' * Add doc * Fix doc * Correct the parts where the first letter of the sentence is lowercase * Fix doc title * Fix script title * Do grouping * Fix wrong motion function in ekf doc * Update docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst --------- Co-authored-by: Atsushi Sakai --- .../ekf_with_velocity_correction.py | 198 ++++++++++++++++++ .../ekf_with_velocity_correction_1_0.png | Bin 0 -> 40148 bytes ...tended_kalman_filter_localization_main.rst | 105 ++++++++++ 3 files changed, 303 insertions(+) create mode 100644 Localization/extended_kalman_filter/ekf_with_velocity_correction.py create mode 100644 docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png diff --git a/Localization/extended_kalman_filter/ekf_with_velocity_correction.py b/Localization/extended_kalman_filter/ekf_with_velocity_correction.py new file mode 100644 index 0000000000..5dd97830fc --- /dev/null +++ b/Localization/extended_kalman_filter/ekf_with_velocity_correction.py @@ -0,0 +1,198 @@ +""" + +Extended kalman filter (EKF) localization with velocity correction sample + +author: Atsushi Sakai (@Atsushi_twi) +modified by: Ryohei Sasaki (@rsasaki0109) + +""" +import sys +import pathlib + +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + +import math +import matplotlib.pyplot as plt +import numpy as np + +from utils.plot import plot_covariance_ellipse + +# Covariance for EKF simulation +Q = np.diag([ + 0.1, # variance of location on x-axis + 0.1, # variance of location on y-axis + np.deg2rad(1.0), # variance of yaw angle + 0.4, # variance of velocity + 0.1 # variance of scale factor +]) ** 2 # predict state covariance +R = np.diag([0.1, 0.1]) ** 2 # Observation x,y position covariance + +# Simulation parameter +INPUT_NOISE = np.diag([0.1, np.deg2rad(5.0)]) ** 2 +GPS_NOISE = np.diag([0.05, 0.05]) ** 2 + +DT = 0.1 # time tick [s] +SIM_TIME = 50.0 # simulation time [s] + +show_animation = True + + +def calc_input(): + v = 1.0 # [m/s] + yawrate = 0.1 # [rad/s] + u = np.array([[v], [yawrate]]) + return u + + +def observation(xTrue, xd, u): + xTrue = motion_model(xTrue, u) + + # add noise to gps x-y + z = observation_model(xTrue) + GPS_NOISE @ np.random.randn(2, 1) + + # add noise to input + ud = u + INPUT_NOISE @ np.random.randn(2, 1) + + xd = motion_model(xd, ud) + + return xTrue, z, xd, ud + + +def motion_model(x, u): + F = np.array([[1.0, 0, 0, 0, 0], + [0, 1.0, 0, 0, 0], + [0, 0, 1.0, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 1.0]]) + + B = np.array([[DT * math.cos(x[2, 0]) * x[4, 0], 0], + [DT * math.sin(x[2, 0]) * x[4, 0], 0], + [0.0, DT], + [1.0, 0.0], + [0.0, 0.0]]) + + x = F @ x + B @ u + + return x + + +def observation_model(x): + H = np.array([ + [1, 0, 0, 0, 0], + [0, 1, 0, 0, 0] + ]) + z = H @ x + + return z + + +def jacob_f(x, u): + """ + Jacobian of Motion Model + + motion model + x_{t+1} = x_t+v*s*dt*cos(yaw) + y_{t+1} = y_t+v*s*dt*sin(yaw) + yaw_{t+1} = yaw_t+omega*dt + v_{t+1} = v{t} + s_{t+1} = s{t} + so + dx/dyaw = -v*s*dt*sin(yaw) + dx/dv = dt*s*cos(yaw) + dx/ds = dt*v*cos(yaw) + dy/dyaw = v*s*dt*cos(yaw) + dy/dv = dt*s*sin(yaw) + dy/ds = dt*v*sin(yaw) + """ + yaw = x[2, 0] + v = u[0, 0] + s = x[4, 0] + jF = np.array([ + [1.0, 0.0, -DT * v * s * math.sin(yaw), DT * s * math.cos(yaw), DT * v * math.cos(yaw)], + [0.0, 1.0, DT * v * s * math.cos(yaw), DT * s * math.sin(yaw), DT * v * math.sin(yaw)], + [0.0, 0.0, 1.0, 0.0, 0.0], + [0.0, 0.0, 0.0, 1.0, 0.0], + [0.0, 0.0, 0.0, 0.0, 1.0]]) + return jF + + +def jacob_h(): + jH = np.array([[1, 0, 0, 0, 0], + [0, 1, 0, 0, 0]]) + return jH + + +def ekf_estimation(xEst, PEst, z, u): + # Predict + xPred = motion_model(xEst, u) + jF = jacob_f(xEst, u) + PPred = jF @ PEst @ jF.T + Q + + # Update + jH = jacob_h() + zPred = observation_model(xPred) + y = z - zPred + S = jH @ PPred @ jH.T + R + K = PPred @ jH.T @ np.linalg.inv(S) + xEst = xPred + K @ y + PEst = (np.eye(len(xEst)) - K @ jH) @ PPred + return xEst, PEst + + +def main(): + print(__file__ + " start!!") + + time = 0.0 + + # State Vector [x y yaw v s]' + xEst = np.zeros((5, 1)) + xEst[4, 0] = 1.0 # Initial scale factor + xTrue = np.zeros((5, 1)) + true_scale_factor = 0.9 # True scale factor + xTrue[4, 0] = true_scale_factor + PEst = np.eye(5) + + xDR = np.zeros((5, 1)) # Dead reckoning + + # history + hxEst = xEst + hxTrue = xTrue + hxDR = xTrue + hz = np.zeros((2, 1)) + + while SIM_TIME >= time: + time += DT + u = calc_input() + + xTrue, z, xDR, ud = observation(xTrue, xDR, u) + + xEst, PEst = ekf_estimation(xEst, PEst, z, ud) + + # store data history + hxEst = np.hstack((hxEst, xEst)) + hxDR = np.hstack((hxDR, xDR)) + hxTrue = np.hstack((hxTrue, xTrue)) + hz = np.hstack((hz, z)) + estimated_scale_factor = hxEst[4, -1] + if show_animation: + plt.cla() + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect('key_release_event', + lambda event: [exit(0) if event.key == 'escape' else None]) + plt.plot(hz[0, :], hz[1, :], ".g") + plt.plot(hxTrue[0, :].flatten(), + hxTrue[1, :].flatten(), "-b") + plt.plot(hxDR[0, :].flatten(), + hxDR[1, :].flatten(), "-k") + plt.plot(hxEst[0, :].flatten(), + hxEst[1, :].flatten(), "-r") + plt.text(0.45, 0.85, f"True Velocity Scale Factor: {true_scale_factor:.2f}", ha='left', va='top', transform=plt.gca().transAxes) + plt.text(0.45, 0.95, f"Estimated Velocity Scale Factor: {estimated_scale_factor:.2f}", ha='left', va='top', transform=plt.gca().transAxes) + plot_covariance_ellipse(xEst[0, 0], xEst[1, 0], PEst) + plt.axis("equal") + plt.grid(True) + plt.pause(0.001) + + +if __name__ == '__main__': + main() diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png b/docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png new file mode 100644 index 0000000000000000000000000000000000000000..595b651bd2354f67fd57de47e35b9848433d7c93 GIT binary patch literal 40148 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 +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + + +.. image:: ekf_with_velocity_correction_1_0.png + :width: 600px + +This is a Extended kalman filter (EKF) localization with velocity correction. + +This is for correcting the vehicle speed measured with scale factor errors due to factors such as wheel wear. + +Code: `PythonRobotics/extended_kalman_ekf_with_velocity_correctionfilter.py +AtsushiSakai/PythonRobotics `__ + Filter design ~~~~~~~~~~~~~ +Position Estimation Kalman Filter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + In this simulation, the robot has a state vector includes 4 states at time :math:`t`. @@ -61,9 +82,28 @@ In the code, “observation” function generates the input and observation vector with noise `code `__ +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +In this simulation, the robot has a state vector includes 5 states at +time :math:`t`. + +.. math:: \textbf{x}_t=[x_t, y_t, \phi_t, v_t, s_t] + +x, y are a 2D x-y position, :math:`\phi` is orientation, v is +velocity, and s is a scale factor of velocity. + +In the code, “xEst” means the state vector. +`code `__ + +The rest is the same as the Position Estimation Kalman Filter. + Motion Model ~~~~~~~~~~~~ +Position Estimation Kalman Filter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + The robot model is .. math:: \dot{x} = v \cos(\phi) @@ -97,9 +137,50 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & -v \sin(\phi) \Delta t & \cos(\phi) \Delta t\\ 0 & 1 & v \cos(\phi) \Delta t & \sin(\phi) \Delta t\\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \end{equation*}` + +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The robot model is + +.. math:: \dot{x} = v s \cos(\phi) + +.. math:: \dot{y} = v s \sin(\phi) + +.. math:: \dot{\phi} = \omega + +So, the motion model is + +.. math:: \textbf{x}_{t+1} = f(\textbf{x}_t, \textbf{u}_t) = F\textbf{x}_t+B\textbf{u}_t + +where + +:math:`\begin{equation*} F= \begin{bmatrix} 1 & 0 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 1\\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*} B= \begin{bmatrix} cos(\phi) \Delta t s & 0\\ sin(\phi) \Delta t s & 0\\ 0 & \Delta t\\ 1 & 0\\ 0 & 0\\ \end{bmatrix} \end{equation*}` + +:math:`\Delta t` is a time interval. + +This is implemented at +`code `__ + +The motion function is that + +:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \\ w' \\ v' \end{bmatrix} = f(\textbf{x}, \textbf{u}) = \begin{bmatrix} x + v s \cos(\phi)\Delta t \\ y + v s \sin(\phi)\Delta t \\ \phi + \omega \Delta t \\ v \end{bmatrix} \end{equation*}` + +Its Jacobian matrix is + +:math:`\begin{equation*} J_f = \begin{bmatrix} \frac{\partial x'}{\partial x}& \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v} & \frac{\partial x'}{\partial s}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{\partial v} & \frac{\partial y'}{\partial s}\\ \frac{\partial \phi'}{\partial x}& \frac{\partial \phi'}{\partial y} & \frac{\partial \phi'}{\partial \phi} & \frac{\partial \phi'}{\partial v} & \frac{\partial \phi'}{\partial s}\\ \frac{\partial v'}{\partial x}& \frac{\partial v'}{\partial y} & \frac{\partial v'}{\partial \phi} & \frac{\partial v'}{\partial v} & \frac{\partial v'}{\partial s} \\ \frac{\partial s'}{\partial x}& \frac{\partial s'}{\partial y} & \frac{\partial s'}{\partial \phi} & \frac{\partial s'}{\partial v} & \frac{\partial s'}{\partial s} \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & -v s \sin(\phi) \Delta t & s \cos(\phi) \Delta t & \cos(\phi) v \Delta t\\ 0 & 1 & v s \cos(\phi) \Delta t & s \sin(\phi) \Delta t & v \sin(\phi) \Delta t\\ 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 \end{bmatrix} \end{equation*}` + + Observation Model ~~~~~~~~~~~~~~~~~ +Position Estimation Kalman Filter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + The robot can get x-y position infomation from GPS. So GPS Observation model is @@ -120,6 +201,30 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ \end{bmatrix} \end{equation*}` +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The robot can get x-y position infomation from GPS. + +So GPS Observation model is + +.. math:: \textbf{z}_{t} = g(\textbf{x}_t) = H \textbf{x}_t + +where + +:math:`\begin{equation*} H = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ \end{bmatrix} \end{equation*}` + +The observation function states that + +:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \end{bmatrix} = g(\textbf{x}) = \begin{bmatrix} x \\ y \end{bmatrix} \end{equation*}` + +Its Jacobian matrix is + +:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v} & \frac{\partial x'}{\partial s}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partial v} & \frac{\partial y'}{ \partial s}\\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 & 0\\ \end{bmatrix} \end{equation*}` + + Extended Kalman Filter ~~~~~~~~~~~~~~~~~~~~~~ From 13137952eeee39438bf6f0eb030527ab804a9481 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 08:07:58 +0900 Subject: [PATCH 178/414] Bump scipy from 1.11.4 to 1.12.0 in /requirements (#969) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.4 to 1.12.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.4...v1.12.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 127b89682d..5af5be1794 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.3 -scipy == 1.11.4 +scipy == 1.12.0 matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.4 # For unit test From ae0676bfc0b5548ab643c8db73959edc5e68a324 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 20:18:49 +0900 Subject: [PATCH 179/414] Bump ruff from 0.1.13 to 0.1.14 in /requirements (#971) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.13 to 0.1.14. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.13...v0.1.14) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5af5be1794..5848b32aad 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.13 # For unit test +ruff == 0.1.14 # For unit test From 73d1189e824c38af70f724d3ba5b0322e55f142d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 20:40:15 +0900 Subject: [PATCH 180/414] Bump cvxpy from 1.4.1 to 1.4.2 in /requirements (#970) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.4.1 to 1.4.2. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.4.1...v1.4.2) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5848b32aad..ceee1d03c0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.3 scipy == 1.12.0 matplotlib == 3.8.2 -cvxpy == 1.4.1 +cvxpy == 1.4.2 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test From 0874d5023cc79cd2d9ad535f6d008c749ce4d257 Mon Sep 17 00:00:00 2001 From: Yi-Chen Zhang Date: Sat, 27 Jan 2024 23:59:02 -0500 Subject: [PATCH 181/414] Fix predict covariance (#973) * Fix predict covariance * Remove trailing whitespace and unused return parameters --- SLAM/EKFSLAM/ekf_slam.py | 9 +- docs/modules/slam/ekf_slam/ekf_slam_main.rst | 181 +++++++++---------- 2 files changed, 91 insertions(+), 99 deletions(-) diff --git a/SLAM/EKFSLAM/ekf_slam.py b/SLAM/EKFSLAM/ekf_slam.py index a624e8765b..5c4417d7c3 100644 --- a/SLAM/EKFSLAM/ekf_slam.py +++ b/SLAM/EKFSLAM/ekf_slam.py @@ -29,10 +29,9 @@ def ekf_slam(xEst, PEst, u, z): # Predict - S = STATE_SIZE - G, Fx = jacob_motion(xEst[0:S], u) - xEst[0:S] = motion_model(xEst[0:S], u) - PEst[0:S, 0:S] = G.T @ PEst[0:S, 0:S] @ G + Fx.T @ Cx @ Fx + G, Fx = jacob_motion(xEst, u) + xEst[0:STATE_SIZE] = motion_model(xEst[0:STATE_SIZE], u) + PEst = G.T @ PEst @ G + Fx.T @ Cx @ Fx initP = np.eye(2) # Update @@ -120,7 +119,7 @@ def jacob_motion(x, u): [0.0, 0.0, DT * u[0, 0] * math.cos(x[2, 0])], [0.0, 0.0, 0.0]], dtype=float) - G = np.eye(STATE_SIZE) + Fx.T @ jF @ Fx + G = np.eye(len(x)) + Fx.T @ jF @ Fx return G, Fx, diff --git a/docs/modules/slam/ekf_slam/ekf_slam_main.rst b/docs/modules/slam/ekf_slam/ekf_slam_main.rst index 70a7d131ae..b27971225e 100644 --- a/docs/modules/slam/ekf_slam/ekf_slam_main.rst +++ b/docs/modules/slam/ekf_slam/ekf_slam_main.rst @@ -63,27 +63,27 @@ Take care to note the difference between :math:`X` (state) and :math:`x` original author: Atsushi Sakai (@Atsushi_twi) notebook author: Andrew Tu (drewtu2) """ - + import math import numpy as np %matplotlib notebook import matplotlib.pyplot as plt - - + + # EKF state covariance Cx = np.diag([0.5, 0.5, np.deg2rad(30.0)])**2 # Change in covariance - + # Simulation parameter Qsim = np.diag([0.2, np.deg2rad(1.0)])**2 # Sensor Noise Rsim = np.diag([1.0, np.deg2rad(10.0)])**2 # Process Noise - + DT = 0.1 # time tick [s] SIM_TIME = 50.0 # simulation time [s] MAX_RANGE = 20.0 # maximum observation range M_DIST_TH = 2.0 # Threshold of Mahalanobis distance for data association. STATE_SIZE = 3 # State size [x,y,yaw] LM_SIZE = 2 # LM state size [x,y] - + show_animation = True Algorithm Walk through @@ -97,23 +97,22 @@ the estimated state and measurements def ekf_slam(xEst, PEst, u, z): """ - Performs an iteration of EKF SLAM from the available information. - + Performs an iteration of EKF SLAM from the available information. + :param xEst: the belief in last position :param PEst: the uncertainty in last position - :param u: the control function applied to the last position + :param u: the control function applied to the last position :param z: measurements at this step :returns: the next estimated position and associated covariance """ - S = STATE_SIZE - + # Predict - xEst, PEst, G, Fx = predict(xEst, PEst, u) + xEst, PEst = predict(xEst, PEst, u) initP = np.eye(2) - + # Update - xEst, PEst = update(xEst, PEst, u, z, initP) - + xEst, PEst = update(xEst, PEst, z, initP) + return xEst, PEst @@ -170,26 +169,25 @@ the landmarks. def predict(xEst, PEst, u): """ Performs the prediction step of EKF SLAM - + :param xEst: nx1 state vector :param PEst: nxn covariance matrix :param u: 2x1 control vector :returns: predicted state vector, predicted covariance, jacobian of control vector, transition fx """ - S = STATE_SIZE - G, Fx = jacob_motion(xEst[0:S], u) - xEst[0:S] = motion_model(xEst[0:S], u) + G, Fx = jacob_motion(xEst, u) + xEst[0:STATE_SIZE] = motion_model(xEst[0:STATE_SIZE], u) # Fx is an an identity matrix of size (STATE_SIZE) # sigma = G*sigma*G.T + Noise - PEst[0:S, 0:S] = G.T @ PEst[0:S, 0:S] @ G + Fx.T @ Cx @ Fx - return xEst, PEst, G, Fx + PEst = G.T @ PEst @ G + Fx.T @ Cx @ Fx + return xEst, PEst .. code:: ipython3 def motion_model(x, u): """ Computes the motion model based on current state and input function. - + :param x: 3x1 pose estimation :param u: 2x1 control input [v; w] :returns: the resulting state after the control function is applied @@ -197,11 +195,11 @@ the landmarks. F = np.array([[1.0, 0, 0], [0, 1.0, 0], [0, 0, 1.0]]) - + B = np.array([[DT * math.cos(x[2, 0]), 0], [DT * math.sin(x[2, 0]), 0], [0.0, DT]]) - + x = (F @ x) + (B @ u) return x @@ -261,22 +259,21 @@ the changing uncertainty. .. code:: ipython3 - def update(xEst, PEst, u, z, initP): + def update(xEst, PEst, z, initP): """ Performs the update step of EKF SLAM - + :param xEst: nx1 the predicted pose of the system and the pose of the landmarks :param PEst: nxn the predicted covariance - :param u: 2x1 the control function :param z: the measurements read at new position :param initP: 2x2 an identity matrix acting as the initial covariance :returns: the updated state and covariance for the system """ for iz in range(len(z[:, 0])): # for each observation minid = search_correspond_LM_ID(xEst, PEst, z[iz, 0:2]) # associate to a known landmark - + nLM = calc_n_LM(xEst) # number of landmarks we currently know about - + if minid == nLM: # Landmark is a NEW landmark print("New LM") # Extend state and covariance matrix @@ -285,14 +282,14 @@ the changing uncertainty. np.hstack((np.zeros((LM_SIZE, len(xEst))), initP)))) xEst = xAug PEst = PAug - + lm = get_LM_Pos_from_state(xEst, minid) y, S, H = calc_innovation(lm, xEst, PEst, z[iz, 0:2], minid) - + K = (PEst @ H.T) @ np.linalg.inv(S) # Calculate Kalman Gain xEst = xEst + (K @ y) PEst = (np.eye(len(xEst)) - (K @ H)) @ PEst - + xEst[2] = pi_2_pi(xEst[2]) return xEst, PEst @@ -302,7 +299,7 @@ the changing uncertainty. def calc_innovation(lm, xEst, PEst, z, LMid): """ Calculates the innovation based on expected position and landmark position - + :param lm: landmark position :param xEst: estimated position/state :param PEst: estimated covariance @@ -315,19 +312,19 @@ the changing uncertainty. zangle = math.atan2(delta[1, 0], delta[0, 0]) - xEst[2, 0] zp = np.array([[math.sqrt(q), pi_2_pi(zangle)]]) # zp is the expected measurement based on xEst and the expected landmark position - + y = (z - zp).T # y = innovation y[1] = pi_2_pi(y[1]) - + H = jacobH(q, delta, xEst, LMid + 1) S = H @ PEst @ H.T + Cx[0:2, 0:2] - + return y, S, H - + def jacobH(q, delta, x, i): """ Calculates the jacobian of the measurement function - + :param q: the range from the system pose to the landmark :param delta: the difference between a landmark position and the estimated system position :param x: the state, including the estimated system position @@ -337,17 +334,17 @@ the changing uncertainty. sq = math.sqrt(q) G = np.array([[-sq * delta[0, 0], - sq * delta[1, 0], 0, sq * delta[0, 0], sq * delta[1, 0]], [delta[1, 0], - delta[0, 0], - q, - delta[1, 0], delta[0, 0]]]) - + G = G / q nLM = calc_n_LM(x) F1 = np.hstack((np.eye(3), np.zeros((3, 2 * nLM)))) F2 = np.hstack((np.zeros((2, 3)), np.zeros((2, 2 * (i - 1))), np.eye(2), np.zeros((2, 2 * nLM - 2 * i)))) - + F = np.vstack((F1, F2)) - + H = G @ F - + return H Observation Step @@ -370,17 +367,17 @@ reckoning and control functions are passed along here as well. :param xd: the current noisy estimate of the system :param u: the current control input :param RFID: the true position of the landmarks - - :returns: Computes the true position, observations, dead reckoning (noisy) position, + + :returns: Computes the true position, observations, dead reckoning (noisy) position, and noisy control function """ xTrue = motion_model(xTrue, u) - + # add noise to gps x-y z = np.zeros((0, 3)) - + for i in range(len(RFID[:, 0])): # Test all beacons, only add the ones we can see (within MAX_RANGE) - + dx = RFID[i, 0] - xTrue[0, 0] dy = RFID[i, 1] - xTrue[1, 0] d = math.sqrt(dx**2 + dy**2) @@ -390,12 +387,12 @@ reckoning and control functions are passed along here as well. anglen = angle + np.random.randn() * Qsim[1, 1] # add noise zi = np.array([dn, anglen, i]) z = np.vstack((z, zi)) - + # add noise to input ud = np.array([[ u[0, 0] + np.random.randn() * Rsim[0, 0], u[1, 0] + np.random.randn() * Rsim[1, 1]]]).T - + xd = motion_model(xd, ud) return xTrue, z, xd, ud @@ -409,32 +406,30 @@ reckoning and control functions are passed along here as well. """ n = int((len(x) - STATE_SIZE) / LM_SIZE) return n - - + + def jacob_motion(x, u): """ - Calculates the jacobian of motion model. - + Calculates the jacobian of motion model. + :param x: The state, including the estimated position of the system :param u: The control function :returns: G: Jacobian Fx: STATE_SIZE x (STATE_SIZE + 2 * num_landmarks) matrix where the left side is an identity matrix """ - + # [eye(3) [0 x y; 0 x y; 0 x y]] Fx = np.hstack((np.eye(STATE_SIZE), np.zeros( (STATE_SIZE, LM_SIZE * calc_n_LM(x))))) - + jF = np.array([[0.0, 0.0, -DT * u[0] * math.sin(x[2, 0])], [0.0, 0.0, DT * u[0] * math.cos(x[2, 0])], [0.0, 0.0, 0.0]],dtype=object) - + G = np.eye(STATE_SIZE) + Fx.T @ jF @ Fx if calc_n_LM(x) > 0: print(Fx.shape) return G, Fx, - - .. code:: ipython3 @@ -442,68 +437,68 @@ reckoning and control functions are passed along here as well. def calc_LM_Pos(x, z): """ Calculates the pose in the world coordinate frame of a landmark at the given measurement. - + :param x: [x; y; theta] :param z: [range; bearing] :returns: [x; y] for given measurement """ zp = np.zeros((2, 1)) - + zp[0, 0] = x[0, 0] + z[0] * math.cos(x[2, 0] + z[1]) zp[1, 0] = x[1, 0] + z[0] * math.sin(x[2, 0] + z[1]) #zp[0, 0] = x[0, 0] + z[0, 0] * math.cos(x[2, 0] + z[0, 1]) #zp[1, 0] = x[1, 0] + z[0, 0] * math.sin(x[2, 0] + z[0, 1]) - + return zp - - + + def get_LM_Pos_from_state(x, ind): """ Returns the position of a given landmark - + :param x: The state containing all landmark positions :param ind: landmark id :returns: The position of the landmark """ lm = x[STATE_SIZE + LM_SIZE * ind: STATE_SIZE + LM_SIZE * (ind + 1), :] - + return lm - - + + def search_correspond_LM_ID(xAug, PAug, zi): """ Landmark association with Mahalanobis distance. - - If this landmark is at least M_DIST_TH units away from all known landmarks, + + If this landmark is at least M_DIST_TH units away from all known landmarks, it is a NEW landmark. - + :param xAug: The estimated state :param PAug: The estimated covariance :param zi: the read measurements of specific landmark :returns: landmark id """ - + nLM = calc_n_LM(xAug) - + mdist = [] - + for i in range(nLM): lm = get_LM_Pos_from_state(xAug, i) y, S, H = calc_innovation(lm, xAug, PAug, zi, i) mdist.append(y.T @ np.linalg.inv(S) @ y) - + mdist.append(M_DIST_TH) # new landmark - + minid = mdist.index(min(mdist)) - + return minid - + def calc_input(): v = 1.0 # [m/s] yawrate = 0.1 # [rad/s] u = np.array([[v, yawrate]]).T return u - + def pi_2_pi(angle): return (angle + math.pi) % (2 * math.pi) - math.pi @@ -511,53 +506,53 @@ reckoning and control functions are passed along here as well. def main(): print(" start!!") - + time = 0.0 - + # RFID positions [x, y] RFID = np.array([[10.0, -2.0], [15.0, 10.0], [3.0, 15.0], [-5.0, 20.0]]) - + # State Vector [x y yaw v]' xEst = np.zeros((STATE_SIZE, 1)) xTrue = np.zeros((STATE_SIZE, 1)) PEst = np.eye(STATE_SIZE) - + xDR = np.zeros((STATE_SIZE, 1)) # Dead reckoning - + # history hxEst = xEst hxTrue = xTrue hxDR = xTrue - + while SIM_TIME >= time: time += DT u = calc_input() - + xTrue, z, xDR, ud = observation(xTrue, xDR, u, RFID) - + xEst, PEst = ekf_slam(xEst, PEst, ud, z) - + x_state = xEst[0:STATE_SIZE] - + # store data history hxEst = np.hstack((hxEst, x_state)) hxDR = np.hstack((hxDR, xDR)) hxTrue = np.hstack((hxTrue, xTrue)) - + if show_animation: # pragma: no cover plt.cla() - + plt.plot(RFID[:, 0], RFID[:, 1], "*k") plt.plot(xEst[0], xEst[1], ".r") - + # plot landmark for i in range(calc_n_LM(xEst)): plt.plot(xEst[STATE_SIZE + i * 2], xEst[STATE_SIZE + i * 2 + 1], "xg") - + plt.plot(hxTrue[0, :], hxTrue[1, :], "-b") plt.plot(hxDR[0, :], @@ -587,5 +582,3 @@ References: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - `PROBABILISTIC ROBOTICS `_ - - From 6326e8c21205ca9c2d8e809c2dc2eaab60940bf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jan 2024 20:19:54 +0900 Subject: [PATCH 182/414] Bump pytest from 7.4.4 to 8.0.0 in /requirements (#974) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.4 to 8.0.0. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.4...8.0.0) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ceee1d03c0..f0729fb76e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.3 scipy == 1.12.0 matplotlib == 3.8.2 cvxpy == 1.4.2 -pytest == 7.4.4 # For unit test +pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.1.14 # For unit test From bd253e81060c6a11a944016706bd1d87ef72bded Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Feb 2024 19:07:36 +0900 Subject: [PATCH 183/414] Bump ruff from 0.1.14 to 0.2.0 in /requirements (#975) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.14 to 0.2.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.14...v0.2.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f0729fb76e..1d2072b01e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.14 # For unit test +ruff == 0.2.0 # For unit test From e4ddf10ad651dffa7c04f344cd13e878637fb8ca Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Feb 2024 20:21:31 +0900 Subject: [PATCH 184/414] Bump larsoner/circleci-artifacts-redirector-action from 0.3.1 to 1.0.0 (#976) Bumps [larsoner/circleci-artifacts-redirector-action](https://github.com/larsoner/circleci-artifacts-redirector-action) from 0.3.1 to 1.0.0. - [Release notes](https://github.com/larsoner/circleci-artifacts-redirector-action/releases) - [Commits](https://github.com/larsoner/circleci-artifacts-redirector-action/compare/0.3.1...v1.0.0) --- updated-dependencies: - dependency-name: larsoner/circleci-artifacts-redirector-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/circleci-artifacts-redirector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/circleci-artifacts-redirector.yml b/.github/workflows/circleci-artifacts-redirector.yml index 149a087a5d..504a3a1004 100644 --- a/.github/workflows/circleci-artifacts-redirector.yml +++ b/.github/workflows/circleci-artifacts-redirector.yml @@ -6,7 +6,7 @@ jobs: name: Run CircleCI artifacts redirector!! steps: - name: run-circleci-artifacts-redirector - uses: larsoner/circleci-artifacts-redirector-action@0.3.1 + uses: larsoner/circleci-artifacts-redirector-action@v1.0.0 with: repo-token: ${{ secrets.GITHUB_TOKEN }} artifact-path: 0/html/index.html From 0dcb68a8020a5dd8f5cad53f69dffbcca3f03273 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Feb 2024 21:49:03 +0900 Subject: [PATCH 185/414] Bump numpy from 1.26.3 to 1.26.4 in /requirements (#977) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.3 to 1.26.4. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.3...v1.26.4) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1d2072b01e..dd5adf0409 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.3 +numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.2 cvxpy == 1.4.2 From b1bdff203c483533c32a7357a124945b74d88aa1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Feb 2024 22:57:15 +0900 Subject: [PATCH 186/414] Bump ruff from 0.2.0 to 0.2.1 in /requirements (#978) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.2.0 to 0.2.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.2.0...v0.2.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index dd5adf0409..6b65ae5b8c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.2.0 # For unit test +ruff == 0.2.1 # For unit test From e6215ace2e62c350dcc174641fb6804d3bfd4d55 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 20:43:17 +0900 Subject: [PATCH 187/414] Bump matplotlib from 3.8.2 to 3.8.3 in /requirements (#979) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.2 to 3.8.3. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.2...v3.8.3) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6b65ae5b8c..be43a14788 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.4 scipy == 1.12.0 -matplotlib == 3.8.2 +matplotlib == 3.8.3 cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test From 47eb01f88f0083929f1948620b313019e44b96f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 20:44:06 +0900 Subject: [PATCH 188/414] Bump ruff from 0.2.1 to 0.2.2 in /requirements (#980) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.2.1 to 0.2.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.2.1...v0.2.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index be43a14788..e18459efdb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.2.1 # For unit test +ruff == 0.2.2 # For unit test From bf6acf3e31934dab4a496190ca74191cee672ea4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 21:34:06 +0900 Subject: [PATCH 189/414] Bump pytest from 8.0.0 to 8.0.1 in /requirements (#981) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.0.0 to 8.0.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.0.0...8.0.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e18459efdb..e40542015f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.3 cvxpy == 1.4.2 -pytest == 8.0.0 # For unit test +pytest == 8.0.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.2.2 # For unit test From e2412a6667d12a8b640f2dc5c6e15e22b1e36753 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 24 Feb 2024 18:26:59 +0900 Subject: [PATCH 190/414] Update circleci-artifacts-redirector.yml (#983) * Update circleci-artifacts-redirector.yml * Update circleci-artifacts-redirector.yml * Update circleci-artifacts-redirector.yml --- .github/workflows/circleci-artifacts-redirector.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/circleci-artifacts-redirector.yml b/.github/workflows/circleci-artifacts-redirector.yml index 504a3a1004..78eb479aa1 100644 --- a/.github/workflows/circleci-artifacts-redirector.yml +++ b/.github/workflows/circleci-artifacts-redirector.yml @@ -9,5 +9,6 @@ jobs: uses: larsoner/circleci-artifacts-redirector-action@v1.0.0 with: repo-token: ${{ secrets.GITHUB_TOKEN }} + api-token: ${{ secrets.CIRCLECI_TOKEN }} artifact-path: 0/html/index.html circleci-jobs: build_doc From 6e743ef31e8f99a5e78bbb11343228d433693034 Mon Sep 17 00:00:00 2001 From: William L Thomson Jr Date: Sat, 24 Feb 2024 04:35:13 -0500 Subject: [PATCH 191/414] PathPlanning/InformedRRTStar/informed_rrt_star.py: Fix hard coded graph axis (#982) - Use self.min_rand, self.max_rand variable values in place of -2, 15 --- PathPlanning/InformedRRTStar/informed_rrt_star.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index b6f9d234dd..c37326e490 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -293,7 +293,7 @@ def draw_graph(self, x_center=None, c_best=None, c_min=None, e_theta=None, plt.plot(self.start.x, self.start.y, "xr") plt.plot(self.goal.x, self.goal.y, "xr") - plt.axis([-2, 15, -2, 15]) + plt.axis([self.min_rand, self.max_rand, self.min_rand, self.max_rand]) plt.grid(True) plt.pause(0.01) From ffd28c2d635975ba9294c6fa6603a211d074ef1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Feb 2024 20:27:30 +0900 Subject: [PATCH 192/414] Bump pytest from 8.0.1 to 8.0.2 in /requirements (#984) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.0.1 to 8.0.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.0.1...8.0.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e40542015f..b464481003 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.3 cvxpy == 1.4.2 -pytest == 8.0.1 # For unit test +pytest == 8.0.2 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.2.2 # For unit test From 9a22fb34ba4a205b254b8d469d62c73188771bf8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Mar 2024 08:05:05 +0900 Subject: [PATCH 193/414] Bump ruff from 0.2.2 to 0.3.0 in /requirements (#985) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.2.2 to 0.3.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.2.2...v0.3.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b464481003..9d8ed2ac33 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.2 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.2.2 # For unit test +ruff == 0.3.0 # For unit test From 707f12fb363316ab687566a0b9819c2545eb89b8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 07:47:43 +0900 Subject: [PATCH 194/414] Bump pytest from 8.0.2 to 8.1.1 in /requirements (#986) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.0.2 to 8.1.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.0.2...8.1.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9d8ed2ac33..e3eee34e5e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.3 cvxpy == 1.4.2 -pytest == 8.0.2 # For unit test +pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.3.0 # For unit test From 1477c34cc717428ad6ae9b234451e679d8d0bc11 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 12:19:59 +0900 Subject: [PATCH 195/414] Bump ruff from 0.3.0 to 0.3.2 in /requirements (#987) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.0 to 0.3.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.0...v0.3.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e3eee34e5e..2cdfeaf126 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.3.0 # For unit test +ruff == 0.3.2 # For unit test From 655fbc71d9adc324276985693c3cac773791f1f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 12:57:17 +0900 Subject: [PATCH 196/414] Bump mypy from 1.8.0 to 1.9.0 in /requirements (#988) Bumps [mypy](https://github.com/python/mypy) from 1.8.0 to 1.9.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.8.0...1.9.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2cdfeaf126..1021562d1c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.3 cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test -mypy == 1.8.0 # For unit test +mypy == 1.9.0 # For unit test ruff == 0.3.2 # For unit test From a79cc374f3eb3f39ae1a82e7738b988c43791595 Mon Sep 17 00:00:00 2001 From: guangwu Date: Wed, 13 Mar 2024 20:20:01 +0800 Subject: [PATCH 197/414] fix: typo (#989) --- Control/move_to_pose/move_to_pose_robot.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Control/move_to_pose/move_to_pose_robot.py b/Control/move_to_pose/move_to_pose_robot.py index d5c51caa12..fe9f0d06b3 100644 --- a/Control/move_to_pose/move_to_pose_robot.py +++ b/Control/move_to_pose/move_to_pose_robot.py @@ -79,9 +79,9 @@ def set_start_target_poses(self, pose_start, pose_target): Parameters ---------- pose_start : (Pose) - Start postion of the robot (see the Pose class) + Start position of the robot (see the Pose class) pose_target : (Pose) - Target postion of the robot (see the Pose class) + Target position of the robot (see the Pose class) """ self.pose_start = copy.copy(pose_start) self.pose_target = pose_target From 1656cab0d229d294ec151ec9d4cbe086b271e1cf Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 14 Mar 2024 22:01:51 +0900 Subject: [PATCH 198/414] Support python 3.12 (#954) * Update Linux_CI.yml * Update MacOS_CI.yml * Update Windows_CI.yml * Delete .lgtm.yml * Update lqr_planner.py * Update lqr_planner.py * Update config.yml * Update environment.yml * Update ruff.toml * Update README.md * Update getting_started_main.rst * Update doc_requirements.txt --- .circleci/config.yml | 2 +- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 4 ++-- .github/workflows/Windows_CI.yml | 4 ++-- .lgtm.yml | 4 ---- README.md | 2 +- docs/getting_started_main.rst | 2 +- requirements/environment.yml | 2 +- ruff.toml | 4 ++-- 9 files changed, 11 insertions(+), 15 deletions(-) delete mode 100644 .lgtm.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index d8f1e89dc4..9f803ece4a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ orbs: jobs: build_doc: docker: - - image: cimg/python:3.11 + - image: cimg/python:3.12 steps: - checkout - run: diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index b83954f17e..7b3dc14751 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [ '3.11' ] + python-version: [ '3.12' ] name: Python ${{ matrix.python-version }} CI diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 19c6612b2f..5ea15ac72e 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python-version: [ '3.11' ] + python-version: [ '3.12' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 @@ -36,4 +36,4 @@ jobs: python -m pip install --upgrade pip pip install -r requirements/requirements.txt - name: do all unit tests - run: bash runtests.sh \ No newline at end of file + run: bash runtests.sh diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index 906edcfcdb..b9c8dea649 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python-version: [ '3.11' ] + python-version: [ '3.12' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 @@ -33,4 +33,4 @@ jobs: python -m pip install --upgrade pip pip install -r requirements/requirements.txt - name: do all unit tests - run: bash runtests.sh \ No newline at end of file + run: bash runtests.sh diff --git a/.lgtm.yml b/.lgtm.yml deleted file mode 100644 index b06edf3510..0000000000 --- a/.lgtm.yml +++ /dev/null @@ -1,4 +0,0 @@ -extraction: - python: - python_setup: - version: 3 diff --git a/README.md b/README.md index bc0198f78e..7a01ae361a 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ See this paper for more details: For running each sample code: -- [Python 3.11.x](https://www.python.org/) +- [Python 3.12.x](https://www.python.org/) - [NumPy](https://numpy.org/) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 497b85a23a..88f218545e 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -26,7 +26,7 @@ See this paper for more details: Requirements ------------- -- `Python 3.11.x`_ +- `Python 3.12.x`_ - `NumPy`_ - `SciPy`_ - `Matplotlib`_ diff --git a/requirements/environment.yml b/requirements/environment.yml index 13dfa29f66..afbb3fb8ce 100644 --- a/requirements/environment.yml +++ b/requirements/environment.yml @@ -2,7 +2,7 @@ name: python_robotics channels: - conda-forge dependencies: - - python=3.11 + - python=3.12 - pip - scipy - numpy diff --git a/ruff.toml b/ruff.toml index 578864b33e..5823ca3db7 100644 --- a/ruff.toml +++ b/ruff.toml @@ -6,7 +6,7 @@ exclude = [ ] # Assume Python 3.11 -target-version = "py311" +target-version = "py312" [per-file-ignores] @@ -15,4 +15,4 @@ target-version = "py311" max-complexity = 10 [pydocstyle] -convention = "numpy" \ No newline at end of file +convention = "numpy" From 4bdf9036b60eb40899079b777b208870d2c20bfe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 20:15:00 +0900 Subject: [PATCH 199/414] Bump ruff from 0.3.2 to 0.3.3 in /requirements (#993) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.2 to 0.3.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.2...v0.3.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1021562d1c..f6e64cc5ab 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.2 # For unit test +ruff == 0.3.3 # For unit test From f8b340be53ebb6ed4b6b0d2579394b58fe8074af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Mar 2024 07:30:04 +0900 Subject: [PATCH 200/414] Bump ruff from 0.3.3 to 0.3.4 in /requirements (#996) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.3 to 0.3.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.3...v0.3.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f6e64cc5ab..6e7c77d836 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.3 # For unit test +ruff == 0.3.4 # For unit test From 61d5da8576c43c59f69655cf6324fa959031623f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Apr 2024 07:31:43 +0900 Subject: [PATCH 201/414] Bump ruff from 0.3.4 to 0.3.5 in /requirements (#999) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.4 to 0.3.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.4...v0.3.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6e7c77d836..c1edf2951c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.4 # For unit test +ruff == 0.3.5 # For unit test From c6562d787f797f56561e362ea2633ad7e3b4ee3c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 08:00:57 +0900 Subject: [PATCH 202/414] Bump matplotlib from 3.8.3 to 3.8.4 in /requirements (#1001) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.3 to 3.8.4. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.3...v3.8.4) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c1edf2951c..fe97f01e24 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.4 scipy == 1.12.0 -matplotlib == 3.8.3 +matplotlib == 3.8.4 cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test From 84237d6007254c2a644adcabe61673da11f39eb4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 20:25:11 +0900 Subject: [PATCH 203/414] Bump scipy from 1.12.0 to 1.13.0 in /requirements (#1002) Bumps [scipy](https://github.com/scipy/scipy) from 1.12.0 to 1.13.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.12.0...v1.13.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index fe97f01e24..7a94111985 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.4 -scipy == 1.12.0 +scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.4.2 pytest == 8.1.1 # For unit test From 808e98133d57426b1e6fbbc2bdc897a196278d7d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 20:56:21 +0900 Subject: [PATCH 204/414] Bump ruff from 0.3.5 to 0.3.7 in /requirements (#1003) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.5 to 0.3.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.5...v0.3.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7a94111985..6ba7ea1c6d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.5 # For unit test +ruff == 0.3.7 # For unit test From d27f7dca1d2645915d03d087bc12c2ad281bb114 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Apr 2024 21:28:01 +0900 Subject: [PATCH 205/414] Bump ruff from 0.3.7 to 0.4.1 in /requirements (#1005) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.7 to 0.4.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.7...v0.4.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6ba7ea1c6d..7dfadddb48 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.7 # For unit test +ruff == 0.4.1 # For unit test From c12faa6a2ee2ac92102467487c4b168119c6cf07 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Apr 2024 16:20:45 +0900 Subject: [PATCH 206/414] Bump cvxpy from 1.4.2 to 1.4.3 in /requirements (#1006) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.4.2 to 1.4.3. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.4.2...v1.4.3) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7dfadddb48..8e4d166c4e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 -cvxpy == 1.4.2 +cvxpy == 1.4.3 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test From 8f84f0f5518797c1c11f4cee204c0a5c6bffbe82 Mon Sep 17 00:00:00 2001 From: noob3-3 Date: Sat, 27 Apr 2024 20:51:19 +0800 Subject: [PATCH 207/414] fix::Control PathFinderController bug (#1000) --- Control/move_to_pose/move_to_pose.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Control/move_to_pose/move_to_pose.py b/Control/move_to_pose/move_to_pose.py index cc29666297..279ba0625b 100644 --- a/Control/move_to_pose/move_to_pose.py +++ b/Control/move_to_pose/move_to_pose.py @@ -74,7 +74,7 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) beta = angle_mod(theta_goal - theta - alpha) v = self.Kp_rho * rho - w = self.Kp_alpha * alpha - controller.Kp_beta * beta + w = self.Kp_alpha * alpha - self.Kp_beta * beta if alpha > np.pi / 2 or alpha < -np.pi / 2: v = -v From c76f74703f6b9f7b2ec3bf993eb9c9c5d2ccb4ac Mon Sep 17 00:00:00 2001 From: Yi-Chen Zhang Date: Sun, 28 Apr 2024 07:55:25 -0400 Subject: [PATCH 208/414] Fix covariance dimension (#998) --- Localization/particle_filter/particle_filter.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/particle_filter/particle_filter.py b/Localization/particle_filter/particle_filter.py index 17051623ca..ba54a3d12b 100644 --- a/Localization/particle_filter/particle_filter.py +++ b/Localization/particle_filter/particle_filter.py @@ -96,10 +96,10 @@ def calc_covariance(x_est, px, pw): calculate covariance matrix see ipynb doc """ - cov = np.zeros((3, 3)) + cov = np.zeros((4, 4)) n_particle = px.shape[1] for i in range(n_particle): - dx = (px[:, i:i + 1] - x_est)[0:3] + dx = (px[:, i:i + 1] - x_est) cov += pw[0, i] * dx @ dx.T cov *= 1.0 / (1.0 - pw @ pw.T) From de2434361cd017851e10e4866bf6e6dca3b9cc95 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 28 Apr 2024 21:17:33 +0900 Subject: [PATCH 209/414] fix plot issue in random_inverse_kinematics.py (#1007) --- ArmNavigation/n_joint_arm_3d/NLinkArm3d.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py b/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py index 0cea963168..0459e234b2 100644 --- a/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py +++ b/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py @@ -127,7 +127,8 @@ def inverse_kinematics(self, ref_ee_pose, plot=False): if plot: self.fig = plt.figure() - self.ax = Axes3D(self.fig) + self.ax = Axes3D(self.fig, auto_add_to_figure=False) + self.fig.add_axes(self.ax) x_list = [] y_list = [] From b93f170d32a4132762ad879ffca19befa8eb218f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 08:56:40 +0900 Subject: [PATCH 210/414] Bump ruff from 0.4.1 to 0.4.2 in /requirements (#1008) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.1 to 0.4.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.1...v0.4.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8e4d166c4e..ced1457da6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.3 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.4.1 # For unit test +ruff == 0.4.2 # For unit test From bbf7d1ed857dc79e306f9c7fa09323cf74d0c71d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 12:49:55 +0900 Subject: [PATCH 211/414] Bump pytest from 8.1.1 to 8.2.0 in /requirements (#1010) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.1.1 to 8.2.0. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.1.1...8.2.0) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ced1457da6..ad5ab50f47 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.4.3 -pytest == 8.1.1 # For unit test +pytest == 8.2.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test ruff == 0.4.2 # For unit test From 1262b0bfd1823f4a0476eb5060bd8384dea34128 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 16:00:24 +0900 Subject: [PATCH 212/414] Bump pytest-xdist from 3.5.0 to 3.6.1 in /requirements (#1009) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.5.0 to 3.6.1. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.5.0...v3.6.1) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ad5ab50f47..b56c6e734f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.4.3 pytest == 8.2.0 # For unit test -pytest-xdist == 3.5.0 # For unit test +pytest-xdist == 3.6.1 # For unit test mypy == 1.9.0 # For unit test ruff == 0.4.2 # For unit test From e14134d1e705076e83ee4228fd463bbfa5fccd61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 07:54:14 +0900 Subject: [PATCH 213/414] Bump mypy from 1.9.0 to 1.10.0 in /requirements (#1011) Bumps [mypy](https://github.com/python/mypy) from 1.9.0 to 1.10.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/1.9.0...v1.10.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b56c6e734f..0575353a11 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.4 cvxpy == 1.4.3 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.9.0 # For unit test +mypy == 1.10.0 # For unit test ruff == 0.4.2 # For unit test From 16c16b6ff56dbebf4fd0ae0f170c9acc6df080dd Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 4 May 2024 23:08:14 +0900 Subject: [PATCH 214/414] clean up fast slam codes (#1012) * clean up fast slam codes * clean up fast slam codes * clean up fast slam codes --- SLAM/FastSLAM1/fast_slam1.py | 100 ++++++++++++++++--------------- SLAM/FastSLAM2/fast_slam2.py | 110 +++++++++++++++++------------------ 2 files changed, 104 insertions(+), 106 deletions(-) diff --git a/SLAM/FastSLAM1/fast_slam1.py b/SLAM/FastSLAM1/fast_slam1.py index 17f6d5e572..98f8a66417 100644 --- a/SLAM/FastSLAM1/fast_slam1.py +++ b/SLAM/FastSLAM1/fast_slam1.py @@ -17,8 +17,8 @@ R = np.diag([1.0, np.deg2rad(20.0)]) ** 2 # Simulation parameter -Q_sim = np.diag([0.3, np.deg2rad(2.0)]) ** 2 -R_sim = np.diag([0.5, np.deg2rad(10.0)]) ** 2 +Q_SIM = np.diag([0.3, np.deg2rad(2.0)]) ** 2 +R_SIM = np.diag([0.5, np.deg2rad(10.0)]) ** 2 OFFSET_YAW_RATE_NOISE = 0.01 DT = 0.1 # time tick [s] @@ -72,19 +72,18 @@ def normalize_weight(particles): def calc_final_state(particles): - xEst = np.zeros((STATE_SIZE, 1)) + x_est = np.zeros((STATE_SIZE, 1)) particles = normalize_weight(particles) for i in range(N_PARTICLE): - xEst[0, 0] += particles[i].w * particles[i].x - xEst[1, 0] += particles[i].w * particles[i].y - xEst[2, 0] += particles[i].w * particles[i].yaw + x_est[0, 0] += particles[i].w * particles[i].x + x_est[1, 0] += particles[i].w * particles[i].y + x_est[2, 0] += particles[i].w * particles[i].yaw - xEst[2, 0] = pi_2_pi(xEst[2, 0]) - # print(xEst) + x_est[2, 0] = pi_2_pi(x_est[2, 0]) - return xEst + return x_est def predict_particles(particles, u): @@ -235,28 +234,27 @@ def resampling(particles): pw = np.array(pw) n_eff = 1.0 / (pw @ pw.T) # Effective particle number - # print(n_eff) if n_eff < NTH: # resampling w_cum = np.cumsum(pw) base = np.cumsum(pw * 0.0 + 1 / N_PARTICLE) - 1 / N_PARTICLE resample_id = base + np.random.rand(base.shape[0]) / N_PARTICLE - inds = [] - ind = 0 + indexes = [] + index = 0 for ip in range(N_PARTICLE): - while (ind < w_cum.shape[0] - 1) \ - and (resample_id[ip] > w_cum[ind]): - ind += 1 - inds.append(ind) + while (index < w_cum.shape[0] - 1) \ + and (resample_id[ip] > w_cum[index]): + index += 1 + indexes.append(index) tmp_particles = particles[:] - for i in range(len(inds)): - particles[i].x = tmp_particles[inds[i]].x - particles[i].y = tmp_particles[inds[i]].y - particles[i].yaw = tmp_particles[inds[i]].yaw - particles[i].lm = tmp_particles[inds[i]].lm[:, :] - particles[i].lmP = tmp_particles[inds[i]].lmP[:, :] + for i in range(len(indexes)): + particles[i].x = tmp_particles[indexes[i]].x + particles[i].y = tmp_particles[indexes[i]].y + particles[i].yaw = tmp_particles[indexes[i]].yaw + particles[i].lm = tmp_particles[indexes[i]].lm[:, :] + particles[i].lmP = tmp_particles[indexes[i]].lmP[:, :] particles[i].w = 1.0 / N_PARTICLE return particles @@ -275,34 +273,34 @@ def calc_input(time): return u -def observation(xTrue, xd, u, rfid): +def observation(x_true, xd, u, rfid): # calc true state - xTrue = motion_model(xTrue, u) + x_true = motion_model(x_true, u) # add noise to range observation z = np.zeros((3, 0)) for i in range(len(rfid[:, 0])): - dx = rfid[i, 0] - xTrue[0, 0] - dy = rfid[i, 1] - xTrue[1, 0] + dx = rfid[i, 0] - x_true[0, 0] + dy = rfid[i, 1] - x_true[1, 0] d = math.hypot(dx, dy) - angle = pi_2_pi(math.atan2(dy, dx) - xTrue[2, 0]) + angle = pi_2_pi(math.atan2(dy, dx) - x_true[2, 0]) if d <= MAX_RANGE: - dn = d + np.random.randn() * Q_sim[0, 0] ** 0.5 # add noise - angle_with_noize = angle + np.random.randn() * Q_sim[ + dn = d + np.random.randn() * Q_SIM[0, 0] ** 0.5 # add noise + angle_with_noize = angle + np.random.randn() * Q_SIM[ 1, 1] ** 0.5 # add noise zi = np.array([dn, pi_2_pi(angle_with_noize), i]).reshape(3, 1) z = np.hstack((z, zi)) # add noise to input - ud1 = u[0, 0] + np.random.randn() * R_sim[0, 0] ** 0.5 - ud2 = u[1, 0] + np.random.randn() * R_sim[ + ud1 = u[0, 0] + np.random.randn() * R_SIM[0, 0] ** 0.5 + ud2 = u[1, 0] + np.random.randn() * R_SIM[ 1, 1] ** 0.5 + OFFSET_YAW_RATE_NOISE ud = np.array([ud1, ud2]).reshape(2, 1) xd = motion_model(xd, ud) - return xTrue, z, xd, ud + return x_true, z, xd, ud def motion_model(x, u): @@ -331,7 +329,7 @@ def main(): time = 0.0 # RFID positions [x, y] - RFID = np.array([[10.0, -2.0], + rfid = np.array([[10.0, -2.0], [15.0, 10.0], [15.0, 15.0], [10.0, 20.0], @@ -340,17 +338,17 @@ def main(): [-5.0, 5.0], [-10.0, 15.0] ]) - n_landmark = RFID.shape[0] + n_landmark = rfid.shape[0] # State Vector [x y yaw v]' - xEst = np.zeros((STATE_SIZE, 1)) # SLAM estimation - xTrue = np.zeros((STATE_SIZE, 1)) # True state - xDR = np.zeros((STATE_SIZE, 1)) # Dead reckoning + x_est = np.zeros((STATE_SIZE, 1)) # SLAM estimation + x_true = np.zeros((STATE_SIZE, 1)) # True state + x_dr = np.zeros((STATE_SIZE, 1)) # Dead reckoning # history - hxEst = xEst - hxTrue = xTrue - hxDR = xTrue + hist_x_est = x_est + hist_x_true = x_true + hist_x_dr = x_dr particles = [Particle(n_landmark) for _ in range(N_PARTICLE)] @@ -358,18 +356,18 @@ def main(): time += DT u = calc_input(time) - xTrue, z, xDR, ud = observation(xTrue, xDR, u, RFID) + x_true, z, x_dr, ud = observation(x_true, x_dr, u, rfid) particles = fast_slam1(particles, ud, z) - xEst = calc_final_state(particles) + x_est = calc_final_state(particles) - x_state = xEst[0: STATE_SIZE] + x_state = x_est[0: STATE_SIZE] # store data history - hxEst = np.hstack((hxEst, x_state)) - hxDR = np.hstack((hxDR, xDR)) - hxTrue = np.hstack((hxTrue, xTrue)) + hist_x_est = np.hstack((hist_x_est, x_state)) + hist_x_dr = np.hstack((hist_x_dr, x_dr)) + hist_x_true = np.hstack((hist_x_true, x_true)) if show_animation: # pragma: no cover plt.cla() @@ -377,16 +375,16 @@ def main(): plt.gcf().canvas.mpl_connect( 'key_release_event', lambda event: [exit(0) if event.key == 'escape' else None]) - plt.plot(RFID[:, 0], RFID[:, 1], "*k") + plt.plot(rfid[:, 0], rfid[:, 1], "*k") for i in range(N_PARTICLE): plt.plot(particles[i].x, particles[i].y, ".r") plt.plot(particles[i].lm[:, 0], particles[i].lm[:, 1], "xb") - plt.plot(hxTrue[0, :], hxTrue[1, :], "-b") - plt.plot(hxDR[0, :], hxDR[1, :], "-k") - plt.plot(hxEst[0, :], hxEst[1, :], "-r") - plt.plot(xEst[0], xEst[1], "xk") + plt.plot(hist_x_true[0, :], hist_x_true[1, :], "-b") + plt.plot(hist_x_dr[0, :], hist_x_dr[1, :], "-k") + plt.plot(hist_x_est[0, :], hist_x_est[1, :], "-r") + plt.plot(x_est[0], x_est[1], "xk") plt.axis("equal") plt.grid(True) plt.pause(0.001) diff --git a/SLAM/FastSLAM2/fast_slam2.py b/SLAM/FastSLAM2/fast_slam2.py index 2b57e3bcc3..d4cf0d84dd 100644 --- a/SLAM/FastSLAM2/fast_slam2.py +++ b/SLAM/FastSLAM2/fast_slam2.py @@ -17,8 +17,8 @@ R = np.diag([1.0, np.deg2rad(20.0)]) ** 2 # Simulation parameter -Q_sim = np.diag([0.3, np.deg2rad(2.0)]) ** 2 -R_sim = np.diag([0.5, np.deg2rad(10.0)]) ** 2 +Q_SIM = np.diag([0.3, np.deg2rad(2.0)]) ** 2 +R_SIM = np.diag([0.5, np.deg2rad(10.0)]) ** 2 OFFSET_YAW_RATE_NOISE = 0.01 DT = 0.1 # time tick [s] @@ -35,16 +35,16 @@ class Particle: - def __init__(self, N_LM): + def __init__(self, n_landmark): self.w = 1.0 / N_PARTICLE self.x = 0.0 self.y = 0.0 self.yaw = 0.0 self.P = np.eye(3) # landmark x-y positions - self.lm = np.zeros((N_LM, LM_SIZE)) + self.lm = np.zeros((n_landmark, LM_SIZE)) # landmark position covariance - self.lmP = np.zeros((N_LM * LM_SIZE, LM_SIZE)) + self.lmP = np.zeros((n_landmark * LM_SIZE, LM_SIZE)) def fast_slam2(particles, u, z): @@ -73,18 +73,18 @@ def normalize_weight(particles): def calc_final_state(particles): - xEst = np.zeros((STATE_SIZE, 1)) + x_est = np.zeros((STATE_SIZE, 1)) particles = normalize_weight(particles) for i in range(N_PARTICLE): - xEst[0, 0] += particles[i].w * particles[i].x - xEst[1, 0] += particles[i].w * particles[i].y - xEst[2, 0] += particles[i].w * particles[i].yaw + x_est[0, 0] += particles[i].w * particles[i].x + x_est[1, 0] += particles[i].w * particles[i].y + x_est[2, 0] += particles[i].w * particles[i].yaw - xEst[2, 0] = pi_2_pi(xEst[2, 0]) + x_est[2, 0] = pi_2_pi(x_est[2, 0]) - return xEst + return x_est def predict_particles(particles, u): @@ -266,21 +266,21 @@ def resampling(particles): base = np.cumsum(pw * 0.0 + 1 / N_PARTICLE) - 1 / N_PARTICLE resample_id = base + np.random.rand(base.shape[0]) / N_PARTICLE - inds = [] - ind = 0 + indexes = [] + index = 0 for ip in range(N_PARTICLE): - while (ind < w_cum.shape[0] - 1) \ - and (resample_id[ip] > w_cum[ind]): - ind += 1 - inds.append(ind) + while (index < w_cum.shape[0] - 1) \ + and (resample_id[ip] > w_cum[index]): + index += 1 + indexes.append(index) tmp_particles = particles[:] - for i in range(len(inds)): - particles[i].x = tmp_particles[inds[i]].x - particles[i].y = tmp_particles[inds[i]].y - particles[i].yaw = tmp_particles[inds[i]].yaw - particles[i].lm = tmp_particles[inds[i]].lm[:, :] - particles[i].lmP = tmp_particles[inds[i]].lmP[:, :] + for i in range(len(indexes)): + particles[i].x = tmp_particles[indexes[i]].x + particles[i].y = tmp_particles[indexes[i]].y + particles[i].yaw = tmp_particles[indexes[i]].yaw + particles[i].lm = tmp_particles[indexes[i]].lm[:, :] + particles[i].lmP = tmp_particles[indexes[i]].lmP[:, :] particles[i].w = 1.0 / N_PARTICLE return particles @@ -299,35 +299,35 @@ def calc_input(time): return u -def observation(xTrue, xd, u, RFID): +def observation(x_true, xd, u, rfid): # calc true state - xTrue = motion_model(xTrue, u) + x_true = motion_model(x_true, u) # add noise to range observation z = np.zeros((3, 0)) - for i in range(len(RFID[:, 0])): + for i in range(len(rfid[:, 0])): - dx = RFID[i, 0] - xTrue[0, 0] - dy = RFID[i, 1] - xTrue[1, 0] + dx = rfid[i, 0] - x_true[0, 0] + dy = rfid[i, 1] - x_true[1, 0] d = math.hypot(dx, dy) - angle = pi_2_pi(math.atan2(dy, dx) - xTrue[2, 0]) + angle = pi_2_pi(math.atan2(dy, dx) - x_true[2, 0]) if d <= MAX_RANGE: - dn = d + np.random.randn() * Q_sim[0, 0] ** 0.5 # add noise - angle_noise = np.random.randn() * Q_sim[1, 1] ** 0.5 + dn = d + np.random.randn() * Q_SIM[0, 0] ** 0.5 # add noise + angle_noise = np.random.randn() * Q_SIM[1, 1] ** 0.5 angle_with_noise = angle + angle_noise # add noise zi = np.array([dn, pi_2_pi(angle_with_noise), i]).reshape(3, 1) z = np.hstack((z, zi)) # add noise to input - ud1 = u[0, 0] + np.random.randn() * R_sim[0, 0] ** 0.5 - ud2 = u[1, 0] + np.random.randn() * R_sim[ + ud1 = u[0, 0] + np.random.randn() * R_SIM[0, 0] ** 0.5 + ud2 = u[1, 0] + np.random.randn() * R_SIM[ 1, 1] ** 0.5 + OFFSET_YAW_RATE_NOISE ud = np.array([ud1, ud2]).reshape(2, 1) xd = motion_model(xd, ud) - return xTrue, z, xd, ud + return x_true, z, xd, ud def motion_model(x, u): @@ -356,7 +356,7 @@ def main(): time = 0.0 # RFID positions [x, y] - RFID = np.array([[10.0, -2.0], + rfid = np.array([[10.0, -2.0], [15.0, 10.0], [15.0, 15.0], [10.0, 20.0], @@ -365,17 +365,17 @@ def main(): [-5.0, 5.0], [-10.0, 15.0] ]) - n_landmark = RFID.shape[0] + n_landmark = rfid.shape[0] # State Vector [x y yaw v]' - xEst = np.zeros((STATE_SIZE, 1)) # SLAM estimation - xTrue = np.zeros((STATE_SIZE, 1)) # True state - xDR = np.zeros((STATE_SIZE, 1)) # Dead reckoning + x_est = np.zeros((STATE_SIZE, 1)) # SLAM estimation + x_true = np.zeros((STATE_SIZE, 1)) # True state + x_dr = np.zeros((STATE_SIZE, 1)) # Dead reckoning # history - hxEst = xEst - hxTrue = xTrue - hxDR = xTrue + hist_x_est = x_est + hist_x_true = x_true + hist_x_dr = x_dr particles = [Particle(n_landmark) for _ in range(N_PARTICLE)] @@ -383,18 +383,18 @@ def main(): time += DT u = calc_input(time) - xTrue, z, xDR, ud = observation(xTrue, xDR, u, RFID) + x_true, z, x_dr, ud = observation(x_true, x_dr, u, rfid) particles = fast_slam2(particles, ud, z) - xEst = calc_final_state(particles) + x_est = calc_final_state(particles) - x_state = xEst[0: STATE_SIZE] + x_state = x_est[0: STATE_SIZE] # store data history - hxEst = np.hstack((hxEst, x_state)) - hxDR = np.hstack((hxDR, xDR)) - hxTrue = np.hstack((hxTrue, xTrue)) + hist_x_est = np.hstack((hist_x_est, x_state)) + hist_x_dr = np.hstack((hist_x_dr, x_dr)) + hist_x_true = np.hstack((hist_x_true, x_true)) if show_animation: # pragma: no cover plt.cla() @@ -402,21 +402,21 @@ def main(): plt.gcf().canvas.mpl_connect( 'key_release_event', lambda event: [exit(0) if event.key == 'escape' else None]) - plt.plot(RFID[:, 0], RFID[:, 1], "*k") + plt.plot(rfid[:, 0], rfid[:, 1], "*k") for iz in range(len(z[:, 0])): landmark_id = int(z[2, iz]) - plt.plot([xEst[0][0], RFID[landmark_id, 0]], [ - xEst[1][0], RFID[landmark_id, 1]], "-k") + plt.plot([x_est[0][0], rfid[landmark_id, 0]], [ + x_est[1][0], rfid[landmark_id, 1]], "-k") for i in range(N_PARTICLE): plt.plot(particles[i].x, particles[i].y, ".r") plt.plot(particles[i].lm[:, 0], particles[i].lm[:, 1], "xb") - plt.plot(hxTrue[0, :], hxTrue[1, :], "-b") - plt.plot(hxDR[0, :], hxDR[1, :], "-k") - plt.plot(hxEst[0, :], hxEst[1, :], "-r") - plt.plot(xEst[0], xEst[1], "xk") + plt.plot(hist_x_true[0, :], hist_x_true[1, :], "-b") + plt.plot(hist_x_dr[0, :], hist_x_dr[1, :], "-k") + plt.plot(hist_x_est[0, :], hist_x_est[1, :], "-r") + plt.plot(x_est[0], x_est[1], "xk") plt.axis("equal") plt.grid(True) plt.pause(0.001) From 20818bfe3c7185e065435ea4d204510db6dd37f5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 21:37:44 +0900 Subject: [PATCH 215/414] Bump ruff from 0.4.2 to 0.4.3 in /requirements (#1014) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.2 to 0.4.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.2...v0.4.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0575353a11..4db551eb8c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.3 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.2 # For unit test +ruff == 0.4.3 # For unit test From dfcc08e36723e7a371048147d2879f7b373e1902 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 May 2024 08:44:53 +0900 Subject: [PATCH 216/414] Bump ruff from 0.4.3 to 0.4.4 in /requirements (#1017) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.3 to 0.4.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.3...v0.4.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4db551eb8c..909b39faa7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.3 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.3 # For unit test +ruff == 0.4.4 # For unit test From ed5004b0f84081b93a2aceebe96defe013d99e06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?YSF=E3=83=84?= <50619491+yousefbilal@users.noreply.github.com> Date: Sat, 18 May 2024 13:56:04 +0400 Subject: [PATCH 217/414] fixed hard-coded plot limits (#1018) --- PathPlanning/RRT/rrt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/RRT/rrt.py b/PathPlanning/RRT/rrt.py index 55092e6e00..e6dd9b648b 100644 --- a/PathPlanning/RRT/rrt.py +++ b/PathPlanning/RRT/rrt.py @@ -199,7 +199,7 @@ def draw_graph(self, rnd=None): plt.plot(self.start.x, self.start.y, "xr") plt.plot(self.end.x, self.end.y, "xr") plt.axis("equal") - plt.axis([-2, 15, -2, 15]) + plt.axis([self.min_rand, self.max_rand, self.min_rand, self.max_rand]) plt.grid(True) plt.pause(0.01) From 36b630040224c79bfa05974b8107b7a384e8271a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 19 May 2024 20:54:57 +0900 Subject: [PATCH 218/414] Bump cvxpy from 1.4.3 to 1.5.1 in /requirements (#1016) * Bump cvxpy from 1.4.3 to 1.5.1 in /requirements Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.4.3 to 1.5.1. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.4.3...v1.5.1) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * fix cvxpy update issue --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Atsushi Sakai --- .../model_predictive_speed_and_steer_control.py | 14 ++++++++++++-- requirements/requirements.txt | 2 +- runtests.sh | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py index c55018cf26..eb2d7b6a73 100644 --- a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py +++ b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py @@ -6,14 +6,16 @@ """ import matplotlib.pyplot as plt +import time import cvxpy import math import numpy as np import sys import pathlib -from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod + from PathPlanning.CubicSpline import cubic_spline_planner NX = 4 # x = x, y, v, yaw @@ -281,7 +283,7 @@ def linear_mpc_control(xref, xbar, x0, dref): constraints += [cvxpy.abs(u[1, :]) <= MAX_STEER] prob = cvxpy.Problem(cvxpy.Minimize(cost), constraints) - prob.solve(solver=cvxpy.ECOS, verbose=False) + prob.solve(solver=cvxpy.CLARABEL, verbose=False) if prob.status == cvxpy.OPTIMAL or prob.status == cvxpy.OPTIMAL_INACCURATE: ox = get_nparray_from_matrix(x.value[0, :]) @@ -545,6 +547,7 @@ def get_switch_back_course(dl): def main(): print(__file__ + " start!!") + start = time.time() dl = 1.0 # course tick # cx, cy, cyaw, ck = get_straight_course(dl) @@ -560,6 +563,9 @@ def main(): t, x, y, yaw, v, d, a = do_simulation( cx, cy, cyaw, ck, sp, dl, initial_state) + elapsed_time = time.time() - start + print(f"calc time:{elapsed_time:.6f} [sec]") + if show_animation: # pragma: no cover plt.close("all") plt.subplots() @@ -582,6 +588,7 @@ def main(): def main2(): print(__file__ + " start!!") + start = time.time() dl = 1.0 # course tick cx, cy, cyaw, ck = get_straight_course3(dl) @@ -593,6 +600,9 @@ def main2(): t, x, y, yaw, v, d, a = do_simulation( cx, cy, cyaw, ck, sp, dl, initial_state) + elapsed_time = time.time() - start + print(f"calc time:{elapsed_time:.6f} [sec]") + if show_animation: # pragma: no cover plt.close("all") plt.subplots() diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 909b39faa7..76f203f423 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 -cvxpy == 1.4.3 +cvxpy == 1.5.1 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test diff --git a/runtests.sh b/runtests.sh index a2a683e571..12d1b80453 100755 --- a/runtests.sh +++ b/runtests.sh @@ -5,4 +5,4 @@ echo "Run test suites! " # -Werror: warning as error # --durations=0: show ranking of test durations # -l (--showlocals); show local variables when test failed -pytest -n auto tests -l -Werror --durations=0 +pytest tests -l -Werror --durations=0 From e752e50421e66f3982cfd84188499137c55d2925 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 21:16:11 +0900 Subject: [PATCH 219/414] --- (#1020) updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 76f203f423..65885f423b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.5.1 -pytest == 8.2.0 # For unit test +pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test ruff == 0.4.4 # For unit test From cfb736316aed6a6160e45e1c236beda0a5f01622 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 23 May 2024 21:48:35 +0900 Subject: [PATCH 220/414] --- (#1019) updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 65885f423b..cbf18ad938 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.4 scipy == 1.13.0 -matplotlib == 3.8.4 +matplotlib == 3.9.0 cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test From 5751829bab294019bb78917d91f280552bb549d2 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 May 2024 23:31:54 +0900 Subject: [PATCH 221/414] Enhance lqr steering control docs (#1015) * enhance lqr steering control docs * enhance lqr steering control docs * enhance lqr steering control docs * enhance lqr steering control docs * improve lqr steering control docs --- .../lqr_steer_control/lqr_steer_control.py | 14 +-- docs/README.md | 2 +- .../lqr_steering_control_main.rst | 102 ++++++++++++++++++ .../lqr_steering_control_model.png | Bin 0 -> 17366 bytes 4 files changed, 111 insertions(+), 7 deletions(-) create mode 100644 docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png diff --git a/PathTracking/lqr_steer_control/lqr_steer_control.py b/PathTracking/lqr_steer_control/lqr_steer_control.py index 4078ea56db..461d6e3722 100644 --- a/PathTracking/lqr_steer_control/lqr_steer_control.py +++ b/PathTracking/lqr_steer_control/lqr_steer_control.py @@ -55,7 +55,7 @@ def update(state, a, delta): return state -def PIDControl(target, current): +def pid_control(target, current): a = Kp * (target - current) return a @@ -70,10 +70,11 @@ def solve_DARE(A, B, Q, R): solve a discrete time_Algebraic Riccati equation (DARE) """ X = Q - maxiter = 150 + Xn = Q + max_iter = 150 eps = 0.01 - for i in range(maxiter): + for i in range(max_iter): Xn = A.T @ X @ A - A.T @ X @ B @ \ la.inv(R + B.T @ X @ B) @ B.T @ X @ A + Q if (abs(Xn - X)).max() < eps: @@ -178,7 +179,7 @@ def closed_loop_prediction(cx, cy, cyaw, ck, speed_profile, goal): dl, target_ind, e, e_th = lqr_steering_control( state, cx, cy, cyaw, ck, e, e_th) - ai = PIDControl(speed_profile[target_ind], state.v) + ai = pid_control(speed_profile[target_ind], state.v) state = update(state, ai, dl) if abs(state.v) <= stop_speed: @@ -202,8 +203,9 @@ def closed_loop_prediction(cx, cy, cyaw, ck, speed_profile, goal): if target_ind % 1 == 0 and show_animation: plt.cla() # for stopping simulation with the esc key. - plt.gcf().canvas.mpl_connect('key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + plt.gcf().canvas.mpl_connect( + 'key_release_event', + lambda event: [exit(0) if event.key == 'escape' else None]) plt.plot(cx, cy, "-r", label="course") plt.plot(x, y, "ob", label="trajectory") plt.plot(cx[target_ind], cy[target_ind], "xg", label="target") diff --git a/docs/README.md b/docs/README.md index 5c4145e8e3..fb7d4cc3bc 100644 --- a/docs/README.md +++ b/docs/README.md @@ -8,7 +8,7 @@ This folder contains documentation for the Python Robotics project. #### Install Sphinx and Theme ``` -pip install sphinx sphinx-autobuild sphinx-rtd-theme +pip install sphinx sphinx-autobuild sphinx-rtd-theme sphinx_rtd_dark_mode sphinx_copybutton sphinx_rtd_dark_mode ``` #### Building the Docs diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst index bf6d6b5854..b18e4728cd 100644 --- a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -8,7 +8,109 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_steer_control/animation.gif +Overview +~~~~~~~~ + +The LQR (Linear Quadratic Regulator) steering control model implemented in lqr_steer_control.py provides a simulation +for an autonomous vehicle to track a desired trajectory by adjusting steering angle based on feedback from the current state and the desired trajectory. +This model utilizes a combination of PID speed control and LQR steering control to achieve smooth and accurate trajectory tracking. + +Vehicle motion Model +~~~~~~~~~~~~~~~~~~~~~ + +The below figure shows the geometric model of the vehicle used in this simulation: + +.. image:: lqr_steering_control_model.png + :width: 600px + +The `e` and `theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. +And :math:`\dot{e}` and :math:`\dot{\theta}` represent the rates of change of these errors. + +The :math:`e_t` and :math:`theta_t` are the updated values of `e` and `theta` at time `t`, respectively, and can be calculated using the following kinematic equations: + +.. math:: e_t = e_{t-1} + \dot{e}_{t-1} dt + +.. math:: \theta_t = \theta_{t-1} + \dot{\theta}_{t-1} dt + +Where `dt` is the time difference. + +The change rate of the `e` can be calculated as: + +.. math:: \dot{e}_t = V \sin(\theta_{t-1}) + +Where `V` is the vehicle speed. + +If the :math:`theta` is small, + +.. math:: \theta \approx 0 + +the :math:`\sin(\theta)` can be approximated as :math:`\theta`: + +.. math:: \sin(\theta) = \theta + +So, the change rate of the `e` can be approximated as: + +.. math:: \dot{e}_t = V \theta_{t-1} + +The change rate of the :math:`\theta` can be calculated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \tan(\delta) + +where `L` is the wheelbase of the vehicle and :math:`\delta` is the steering angle. + +If the :math:`\delta` is small, + +.. math:: \delta \approx 0 + +the :math:`\tan(\delta)` can be approximated as :math:`\delta`: + +.. math:: \tan(\delta) = \delta + +So, the change rate of the :math:`\theta` can be approximated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \delta + +The above equations can be used to update the state of the vehicle at each time step. + +To formulate the state-space representation of the vehicle dynamics as a linear model, +the state vector `x` and control input vector `u` are defined as follows: + +.. math:: x_t = [e_t, \dot{e}_t, \theta_t, \dot{\theta}_t]^T + +.. math:: u_t = \delta_t + +The state transition equation can be represented as: + +.. math:: x_{t+1} = A x_t + B u_t + +where: + +:math:`\begin{equation*} A = \begin{bmatrix} 1 & dt & 0 & 0\\ 0 & 0 & v & 0\\ 0 & 0 & 1 & dt\\ 0 & 0 & 0 & 0 \\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*} B = \begin{bmatrix} 0\\ 0\\ 0\\ \frac{v}{L} \\ \end{bmatrix} \end{equation*}` + +LQR controller +~~~~~~~~~~~~~~~ + +The Linear Quadratic Regulator (LQR) controller is used to calculate the optimal control input `u` that minimizes the quadratic cost function: + +:math:`J = \sum_{t=0}^{N} (x_t^T Q x_t + u_t^T R u_t)` + +where `Q` and `R` are the weighting matrices for the state and control input, respectively. + +for the linear model: + +:math:`x_{t+1} = A x_t + B u_t` + +The optimal control input `u` can be calculated as: + +:math:`u_t = -K x_t` + +where `K` is the feedback gain matrix obtained by solving the Riccati equation. + References: ~~~~~~~~~~~ - `ApolloAuto/apollo: An open autonomous driving platform `_ +- `Linear Quadratic Regulator (LQR) `_ + diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png new file mode 100644 index 0000000000000000000000000000000000000000..961dfcdc05cd4938c1ea7ebc79e1c8e0314e9dd4 GIT binary patch literal 17366 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 ShTuQyfRXff>lG92j{hIC6RZ#b literal 0 HcmV?d00001 From b1fb7fe24e353852b3ab8cc97511463746eac0e9 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 May 2024 23:46:08 +0900 Subject: [PATCH 222/414] improve lqr steering control docs --- .../lqr_steering_control_main.rst | 2 +- .../lqr_steering_control_model.jpg | Bin 0 -> 11721 bytes .../lqr_steering_control_model.png | Bin 17366 -> 0 bytes 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg delete mode 100644 docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst index b18e4728cd..fcc9b5278a 100644 --- a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -20,7 +20,7 @@ Vehicle motion Model The below figure shows the geometric model of the vehicle used in this simulation: -.. image:: lqr_steering_control_model.png +.. image:: lqr_steering_control_model.jpg :width: 600px The `e` and `theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg new file mode 100644 index 0000000000000000000000000000000000000000..83754d5bb01c9a1a4339248be09b476578291922 GIT binary patch literal 11721 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 YY#zr#%kTQLyIC52cxCrT=Fh?Z0n~N9RsaA1 literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png deleted file mode 100644 index 961dfcdc05cd4938c1ea7ebc79e1c8e0314e9dd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17366 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 ShTuQyfRXff>lG92j{hIC6RZ#b From 3504db00a666d84de0e4738fad1db78142f34c17 Mon Sep 17 00:00:00 2001 From: RyuYamamoto Date: Sun, 26 May 2024 15:42:25 +0900 Subject: [PATCH 223/414] fix: typo (#1023) --- PathPlanning/DStarLite/d_star_lite.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/DStarLite/d_star_lite.py b/PathPlanning/DStarLite/d_star_lite.py index 86e777d7b7..f099530173 100644 --- a/PathPlanning/DStarLite/d_star_lite.py +++ b/PathPlanning/DStarLite/d_star_lite.py @@ -2,7 +2,7 @@ D* Lite grid planning author: vss2sn (28676655+vss2sn@users.noreply.github.com) Link to papers: -D* Lite (Link: http://idm-lab.org/bib/abstracts/papers/aaai02b.pd) +D* Lite (Link: http://idm-lab.org/bib/abstracts/papers/aaai02b.pdf) Improved Fast Replanning for Robot Navigation in Unknown Terrain (Link: http://www.cs.cmu.edu/~maxim/files/dlite_icra02.pdf) Implemented maintaining similarity with the pseudocode for understanding. From 9fed26e503fb28fbb6169e8fc3f8b4c29975e16f Mon Sep 17 00:00:00 2001 From: Tim Huff <89954856+timmarkhuff@users.noreply.github.com> Date: Sat, 25 May 2024 23:43:05 -0700 Subject: [PATCH 224/414] Fixing ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py (#1022) * fixing script * removing unnecessary code * fixing CI issue --------- Co-authored-by: Tim Huff --- .../rrt_star_seven_joint_arm_control.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py index 0f449bbe51..3bc2a5ec1d 100755 --- a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py +++ b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py @@ -265,7 +265,7 @@ def steer(self, from_node, to_node, extend_length=float("inf")): def draw_graph(self, rnd=None): plt.cla() - self.ax.axis([-1, 1, -1, 1]) + self.ax.axis([-1, 1, -1, 1, -1, 1]) self.ax.set_zlim(0, 1) self.ax.grid(True) for (ox, oy, oz, size) in self.obstacle_list: @@ -375,9 +375,9 @@ def main(): search_until_max_iter=False) if path is None: - print("Cannot find path") + print("Cannot find path.") else: - print("found path!!") + print("Found path!") # Draw final path if show_animation: @@ -396,7 +396,7 @@ def main(): [y for y in y_points], [z for z in z_points], "o-", color="grey", ms=4, mew=0.5) - plt.pause(0.01) + plt.pause(0.1) plt.show() From 1aa9a12873c49393dfa1b17a01f72e38b71ece6d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 May 2024 20:50:36 +0900 Subject: [PATCH 225/414] Bump ruff from 0.4.4 to 0.4.5 in /requirements (#1024) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.4 to 0.4.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.4...v0.4.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cbf18ad938..6a07880f45 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.4 # For unit test +ruff == 0.4.5 # For unit test From 01949a6edcf79100527a24ccf7d07fad235df03e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 1 Jun 2024 17:46:27 +0900 Subject: [PATCH 226/414] Bump scipy from 1.13.0 to 1.13.1 in /requirements (#1025) Bumps [scipy](https://github.com/scipy/scipy) from 1.13.0 to 1.13.1. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.13.0...v1.13.1) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6a07880f45..337f56781d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.4 -scipy == 1.13.0 +scipy == 1.13.1 matplotlib == 3.9.0 cvxpy == 1.5.1 pytest == 8.2.1 # For unit test From a9be11d131e404df00d9b91c91289aec7bc895ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 5 Jun 2024 07:21:06 +0900 Subject: [PATCH 227/414] Bump ruff from 0.4.5 to 0.4.7 in /requirements (#1026) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.5 to 0.4.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.5...v0.4.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 337f56781d..a7cdea961e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.5 # For unit test +ruff == 0.4.7 # For unit test From 9d06b1e3c3179f9da85f9646bf2e25aea0e4b068 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jun 2024 12:50:05 +0900 Subject: [PATCH 228/414] Bump ruff from 0.4.7 to 0.4.8 in /requirements (#1027) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.7 to 0.4.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.7...v0.4.8) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a7cdea961e..7a1b36454c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.7 # For unit test +ruff == 0.4.8 # For unit test From f289bd22b9390ab7fafe20c88fe8dda6919a4b67 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jun 2024 19:45:30 +0900 Subject: [PATCH 229/414] Bump pytest from 8.2.1 to 8.2.2 in /requirements (#1028) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.2.1 to 8.2.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.2.1...8.2.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7a1b36454c..3263de2c56 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.13.1 matplotlib == 3.9.0 cvxpy == 1.5.1 -pytest == 8.2.1 # For unit test +pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test ruff == 0.4.8 # For unit test From 83cfed15b6430b01130240da53a6c4d745ef9378 Mon Sep 17 00:00:00 2001 From: Yukihiro Saito Date: Sat, 15 Jun 2024 07:46:15 +0900 Subject: [PATCH 230/414] fix(README.md): typo in reeds-shepp path (#1031) Signed-off-by: Yukihito Saito --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7a01ae361a..ee40dfc7eb 100644 --- a/README.md +++ b/README.md @@ -407,7 +407,7 @@ Ref: ### RRT\* with reeds-shepp path -![Robotics/animation.gif at master · AtsushiSakai/PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/RRTStarReedsShepp/animation.gif)) +![Robotics/animation.gif at master · AtsushiSakai/PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/RRTStarReedsShepp/animation.gif) Path planning for a car robot with RRT\* and reeds shepp path planner. From 15e1ed5de1b2f3d53eedf896b0c9efb9650d25bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Jun 2024 07:57:18 +0900 Subject: [PATCH 231/414] Bump ruff from 0.4.8 to 0.4.9 in /requirements (#1033) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.8 to 0.4.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.8...v0.4.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3263de2c56..3b51f38858 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.8 # For unit test +ruff == 0.4.9 # For unit test From 75f3e4d56cb68ae0d6c1b2fc61e7f265cb2005d4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 20:27:21 +0900 Subject: [PATCH 232/414] Bump cvxpy from 1.5.1 to 1.5.2 in /requirements (#1035) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.5.1 to 1.5.2. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.5.1...v1.5.2) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3b51f38858..7cf9cfb7c3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.4 scipy == 1.13.1 matplotlib == 3.9.0 -cvxpy == 1.5.1 +cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test From d6075ca7d039b0ce98fd51518b9f48ca13763b3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 21:32:49 +0900 Subject: [PATCH 233/414] Bump ruff from 0.4.9 to 0.4.10 in /requirements (#1036) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.9 to 0.4.10. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.9...v0.4.10) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7cf9cfb7c3..576bfcb86d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.9 # For unit test +ruff == 0.4.10 # For unit test From df5d99248dae9967a9e90517900e3858b0ae8b5d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 22:12:57 +0900 Subject: [PATCH 234/414] Bump numpy from 1.26.4 to 2.0.0 in /requirements (#1032) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.4 to 2.0.0. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.4...v2.0.0) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 576bfcb86d..12830626aa 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.4 +numpy == 2.0.0 scipy == 1.13.1 matplotlib == 3.9.0 cvxpy == 1.5.2 From 71766f0a3eba78fcf6ba3820ed74464f32f751ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 07:38:06 +0900 Subject: [PATCH 235/414] Bump scipy from 1.13.1 to 1.14.0 in /requirements (#1040) Bumps [scipy](https://github.com/scipy/scipy) from 1.13.1 to 1.14.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.13.1...v1.14.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 12830626aa..7285355871 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.0.0 -scipy == 1.13.1 +scipy == 1.14.0 matplotlib == 3.9.0 cvxpy == 1.5.2 pytest == 8.2.2 # For unit test From cca764edf600f3a29456981691af8f414c4030ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 21:19:23 +0900 Subject: [PATCH 236/414] Bump mypy from 1.10.0 to 1.10.1 in /requirements (#1039) Bumps [mypy](https://github.com/python/mypy) from 1.10.0 to 1.10.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.10.0...v1.10.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7285355871..1c4806ab75 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.0 cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.10.0 # For unit test +mypy == 1.10.1 # For unit test ruff == 0.4.10 # For unit test From 0f8ce35bf236ac7c97baa99e4189f6bc283be834 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 21:57:57 +0900 Subject: [PATCH 237/414] Bump ruff from 0.4.10 to 0.5.0 in /requirements (#1041) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.10 to 0.5.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.10...0.5.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1c4806ab75..5eb478dfca 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test -ruff == 0.4.10 # For unit test +ruff == 0.5.0 # For unit test From af7a75fa837f98ab2980e4f637e4273ba4a78e50 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 07:16:58 +0900 Subject: [PATCH 238/414] Bump matplotlib from 3.9.0 to 3.9.1 in /requirements (#1045) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.0 to 3.9.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.0...v3.9.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5eb478dfca..406786edbc 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.0.0 scipy == 1.14.0 -matplotlib == 3.9.0 +matplotlib == 3.9.1 cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test From 4b69c7a859e7658483c16cd5b17820f1056ae21c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 21:21:56 +0900 Subject: [PATCH 239/414] Bump ruff from 0.5.0 to 0.5.1 in /requirements (#1044) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.0 to 0.5.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.0...0.5.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 406786edbc..e334ab227a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test -ruff == 0.5.0 # For unit test +ruff == 0.5.1 # For unit test From 26deca19b63382e2fffecc804fceb6694c21d5aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Jul 2024 08:20:28 +0900 Subject: [PATCH 240/414] Bump ruff from 0.5.1 to 0.5.2 in /requirements (#1048) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.1 to 0.5.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.1...0.5.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e334ab227a..aa91cb258f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test -ruff == 0.5.1 # For unit test +ruff == 0.5.2 # For unit test From 1e101d1f8adbbb6cdb9334807067b872ac62004a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 16 Jul 2024 23:02:31 +0900 Subject: [PATCH 241/414] improve LQT steering and speed control document (#1047) * improve LQT steering and speed control * improve LQT steering and speed control * improve LQT steering and speed control doc * improve LQT steering and speed control doc * improve LQT steering and speed control doc * improve LQT steering and speed control doc --- .../lqr_speed_steer_control.py | 13 +- .../lqr_speed_and_steering_control_main.rst | 127 ++++++++++++++++++ .../lqr_steering_control_model.jpg | Bin 0 -> 11721 bytes .../lqr_speed_and_steering_control/speed.png | Bin 0 -> 22550 bytes .../lqr_speed_and_steering_control/x-y.png | Bin 0 -> 31256 bytes .../lqr_speed_and_steering_control/yaw.png | Bin 0 -> 23991 bytes .../lqr_steering_control_main.rst | 15 ++- tests/test_codestyle.py | 2 +- 8 files changed, 149 insertions(+), 8 deletions(-) create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/x-y.png create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png diff --git a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py index a70e30d378..d85fa98a84 100644 --- a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py +++ b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py @@ -55,6 +55,7 @@ def update(state, a, delta): def pi_2_pi(angle): return angle_mod(angle) + def solve_dare(A, B, Q, R): """ solve a discrete time_Algebraic Riccati equation (DARE) @@ -221,8 +222,9 @@ def do_simulation(cx, cy, cyaw, ck, speed_profile, goal): if target_ind % 1 == 0 and show_animation: plt.cla() # for stopping simulation with the esc key. - plt.gcf().canvas.mpl_connect('key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + plt.gcf().canvas.mpl_connect( + 'key_release_event', + lambda event: [exit(0) if event.key == 'escape' else None]) plt.plot(cx, cy, "-r", label="course") plt.plot(x, y, "ob", label="trajectory") plt.plot(cx[target_ind], cy[target_ind], "xg", label="target") @@ -290,6 +292,13 @@ def main(): plt.xlabel("x[m]") plt.ylabel("y[m]") plt.legend() + plt.subplots(1) + + plt.plot(t, np.array(v)*3.6, label="speed") + plt.grid(True) + plt.xlabel("Time [sec]") + plt.ylabel("Speed [m/s]") + plt.legend() plt.subplots(1) plt.plot(s, [np.rad2deg(iyaw) for iyaw in cyaw], "-r", label="yaw") diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index 68ea9c88b2..a0b145456c 100644 --- a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -7,6 +7,133 @@ Path tracking simulation with LQR speed and steering control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_speed_steer_control/animation.gif +`[Code Link] `_ + +Overview +~~~~~~~~ + +The LQR (Linear Quadratic Regulator) speed and steering control model implemented in `lqr_speed_steer_control.py` provides a simulation +for an autonomous vehicle to track: + +1. A desired speed by adjusting acceleration based on feedback from the current state and the desired speed. + +2. A desired trajectory by adjusting steering angle based on feedback from the current state and the desired trajectory. + +by only using one LQT controller. + +Vehicle motion Model +~~~~~~~~~~~~~~~~~~~~~ + +The below figure shows the geometric model of the vehicle used in this simulation: + +.. image:: lqr_steering_control_model.jpg + :width: 600px + +The `e`, :math:`{\theta}`, and :math:`\upsilon` represent the lateral error, orientation error, and velocity error, respectively, with respect to the desired trajectory and speed. +And :math:`\dot{e}` and :math:`\dot{\theta}` represent the rates of change of these errors. + +The :math:`e_t` and :math:`\theta_t`, and :math:`\upsilon` are the updated values of `e`, :math:`\theta`, :math:`\upsilon` and at time `t`, respectively, and can be calculated using the following kinematic equations: + +.. math:: e_t = e_{t-1} + \dot{e}_{t-1} dt + +.. math:: \theta_t = \theta_{t-1} + \dot{\theta}_{t-1} dt + +.. math:: \upsilon_t = \upsilon_{t-1} + a_{t-1} dt + +Where `dt` is the time difference and :math:`a_t` is the acceleration at the time `t`. + +The change rate of the `e` can be calculated as: + +.. math:: \dot{e}_t = V \sin(\theta_{t-1}) + +Where `V` is the current vehicle speed. + +If the :math:`\theta` is small, + +.. math:: \theta \approx 0 + +the :math:`\sin(\theta)` can be approximated as :math:`\theta`: + +.. math:: \sin(\theta) = \theta + +So, the change rate of the `e` can be approximated as: + +.. math:: \dot{e}_t = V \theta_{t-1} + +The change rate of the :math:`\theta` can be calculated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \tan(\delta) + +where `L` is the wheelbase of the vehicle and :math:`\delta` is the steering angle. + +If the :math:`\delta` is small, + +.. math:: \delta \approx 0 + +the :math:`\tan(\delta)` can be approximated as :math:`\delta`: + +.. math:: \tan(\delta) = \delta + +So, the change rate of the :math:`\theta` can be approximated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \delta + +The above equations can be used to update the state of the vehicle at each time step. + +Control Model +~~~~~~~~~~~~~~ + +To formulate the state-space representation of the vehicle dynamics as a linear model, +the state vector `x` and control input vector `u` are defined as follows: + +.. math:: x_t = [e_t, \dot{e}_t, \theta_t, \dot{\theta}_t, \upsilon_t]^T + +.. math:: u_t = [\delta_t, a_t]^T + +The linear state transition equation can be represented as: + +.. math:: x_{t+1} = A x_t + B u_t + +where: + +:math:`\begin{equation*} A = \begin{bmatrix} 1 & dt & 0 & 0 & 0\\ 0 & 0 & v & 0 & 0\\ 0 & 0 & 1 & dt & 0\\ 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 1\\\end{bmatrix} \end{equation*}` + +:math:`\begin{equation*} B = \begin{bmatrix} 0 & 0\\ 0 & 0\\ 0 & 0\\ \frac{v}{L} & 0\\ 0 & dt \\ \end{bmatrix} \end{equation*}` + +LQR controller +~~~~~~~~~~~~~~~ + +The Linear Quadratic Regulator (LQR) controller is used to calculate the optimal control input `u` that minimizes the quadratic cost function: + +:math:`J = \sum_{t=0}^{N} (x_t^T Q x_t + u_t^T R u_t)` + +where `Q` and `R` are the weighting matrices for the state and control input, respectively. + +for the linear model: + +:math:`x_{t+1} = A x_t + B u_t` + +The optimal control input `u` can be calculated as: + +:math:`u_t = -K x_t` + +where `K` is the feedback gain matrix obtained by solving the Riccati equation. + +Simulation results +~~~~~~~~~~~~~~~~~~~ + + +.. image:: x-y.png + :width: 600px + +.. image:: yaw.png + :width: 600px + +.. image:: speed.png + :width: 600px + + + References: ~~~~~~~~~~~ diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg new file mode 100644 index 0000000000000000000000000000000000000000..83754d5bb01c9a1a4339248be09b476578291922 GIT binary patch literal 11721 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 YY#zr#%kTQLyIC52cxCrT=Fh?Z0n~N9RsaA1 literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png b/docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png new file mode 100644 index 0000000000000000000000000000000000000000..ae99eb7ea3ddcb73d6d3e657ac0bee507b1ad6ed GIT binary patch literal 22550 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 MZ4ac2w?%*RA94a*245^ZYCiOlkPR9 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�^J9P{5Ky^UU$V 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 O7_w3iB|qKO^ZFmzkv<^+ literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png b/docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png new file mode 100644 index 0000000000000000000000000000000000000000..7f3d9c1d10b7994d883e720d51950fc6bed47916 GIT binary patch literal 23991 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst index fcc9b5278a..baca7a33fc 100644 --- a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -8,6 +8,8 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_steer_control/animation.gif +`[Code Link] `_ + Overview ~~~~~~~~ @@ -23,10 +25,10 @@ The below figure shows the geometric model of the vehicle used in this simulatio .. image:: lqr_steering_control_model.jpg :width: 600px -The `e` and `theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. +The `e` and :math:`\theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. And :math:`\dot{e}` and :math:`\dot{\theta}` represent the rates of change of these errors. -The :math:`e_t` and :math:`theta_t` are the updated values of `e` and `theta` at time `t`, respectively, and can be calculated using the following kinematic equations: +The :math:`e_t` and :math:`\theta_t` are the updated values of `e` and :math:`\theta` at time `t`, respectively, and can be calculated using the following kinematic equations: .. math:: e_t = e_{t-1} + \dot{e}_{t-1} dt @@ -38,9 +40,9 @@ The change rate of the `e` can be calculated as: .. math:: \dot{e}_t = V \sin(\theta_{t-1}) -Where `V` is the vehicle speed. +Where `V` is the current vehicle speed. -If the :math:`theta` is small, +If the :math:`\theta` is small, .. math:: \theta \approx 0 @@ -72,6 +74,9 @@ So, the change rate of the :math:`\theta` can be approximated as: The above equations can be used to update the state of the vehicle at each time step. +Control Model +~~~~~~~~~~~~~~ + To formulate the state-space representation of the vehicle dynamics as a linear model, the state vector `x` and control input vector `u` are defined as follows: @@ -79,7 +84,7 @@ the state vector `x` and control input vector `u` are defined as follows: .. math:: u_t = \delta_t -The state transition equation can be represented as: +The linear state transition equation can be represented as: .. math:: x_{t+1} = A x_t + B u_t diff --git a/tests/test_codestyle.py b/tests/test_codestyle.py index a7d11d270f..55e558c184 100644 --- a/tests/test_codestyle.py +++ b/tests/test_codestyle.py @@ -54,7 +54,7 @@ def run_ruff(files, fix): return 0, "" args = ['--fix'] if fix else [] res = subprocess.run( - ['ruff', f'--config={CONFIG}'] + args + files, + ['ruff', 'check', f'--config={CONFIG}'] + args + files, stdout=subprocess.PIPE, encoding='utf-8' ) From c862d496f415399f28ba131abe503353c7b6dfcb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 10:15:23 +0900 Subject: [PATCH 242/414] Bump numpy from 2.0.0 to 2.0.1 in /requirements (#1051) Bumps [numpy](https://github.com/numpy/numpy) from 2.0.0 to 2.0.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.0.0...v2.0.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index aa91cb258f..a0af999bba 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.0.0 +numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1 cvxpy == 1.5.2 From f3ca769076b11f03f02508ed112c85901e4b79c5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 20:14:40 +0900 Subject: [PATCH 243/414] Bump pytest from 8.2.2 to 8.3.1 in /requirements (#1049) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.2.2 to 8.3.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.2.2...8.3.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a0af999bba..9cbe4747a0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1 cvxpy == 1.5.2 -pytest == 8.2.2 # For unit test +pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test ruff == 0.5.2 # For unit test From 76ba4ba1913fc7153e51fef434b3e955a58b3c2c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 21:44:01 +0900 Subject: [PATCH 244/414] Bump mypy from 1.10.1 to 1.11.0 in /requirements (#1052) Bumps [mypy](https://github.com/python/mypy) from 1.10.1 to 1.11.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.10.1...v1.11) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9cbe4747a0..1055194460 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.1 cvxpy == 1.5.2 pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.10.1 # For unit test +mypy == 1.11.0 # For unit test ruff == 0.5.2 # For unit test From 65cb7f5b41b75ef0d198949e5274546b9f015cc6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Jul 2024 17:53:37 +0900 Subject: [PATCH 245/414] Bump ruff from 0.5.2 to 0.5.4 in /requirements (#1050) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.2 to 0.5.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.2...0.5.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1055194460..2c2e156d62 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.2 # For unit test +ruff == 0.5.4 # For unit test From b1856d5ef3384d7ce1e8ecdd4937d1f76b28d99f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jul 2024 22:09:58 +0900 Subject: [PATCH 246/414] Bump ruff from 0.5.4 to 0.5.5 in /requirements (#1053) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.4 to 0.5.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.4...0.5.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2c2e156d62..7a89f692fb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.4 # For unit test +ruff == 0.5.5 # For unit test From f9ae5e5f887e527b7333b83d0332d5d25f1e0564 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jul 2024 22:10:12 +0900 Subject: [PATCH 247/414] Bump pytest from 8.3.1 to 8.3.2 in /requirements (#1054) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.1 to 8.3.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.1...8.3.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7a89f692fb..528c8f713c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1 cvxpy == 1.5.2 -pytest == 8.3.1 # For unit test +pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test ruff == 0.5.5 # For unit test From 171e3a8f60c984afd493c333fb97a8b8f5fb19df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Aug 2024 09:06:26 +0900 Subject: [PATCH 248/414] Bump matplotlib from 3.9.1 to 3.9.1.post1 in /requirements (#1059) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.1 to 3.9.1.post1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.1...v3.9.1.post1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 528c8f713c..d9e5930498 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.0.1 scipy == 1.14.0 -matplotlib == 3.9.1 +matplotlib == 3.9.1.post1 cvxpy == 1.5.2 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test From e1e3d8f5d7266229d46cd5b09d0c034d9c389eda Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Aug 2024 09:54:41 +0900 Subject: [PATCH 249/414] Bump ruff from 0.5.5 to 0.5.7 in /requirements (#1058) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.5 to 0.5.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.5...0.5.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d9e5930498..1bcbf1ac34 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.5 # For unit test +ruff == 0.5.7 # For unit test From e6c6814f7bd8865940f31354a84b18ebd659db87 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 22:24:41 +0900 Subject: [PATCH 250/414] Bump cvxpy from 1.5.2 to 1.5.3 in /requirements (#1062) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.5.2 to 1.5.3. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.5.2...v1.5.3) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1bcbf1ac34..bc09cdb54e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1.post1 -cvxpy == 1.5.2 +cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test From 12d6e694dc62d4ab4441cfafb429623e07803270 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 22:33:02 +0900 Subject: [PATCH 251/414] Bump ruff from 0.5.7 to 0.6.1 in /requirements (#1063) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.7 to 0.6.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.7...0.6.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bc09cdb54e..54a3c3eaf5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.7 # For unit test +ruff == 0.6.1 # For unit test From 791d4e7f003e6e5e75df2b4223fce40e05f87eef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 21:21:17 +0900 Subject: [PATCH 252/414] Bump matplotlib from 3.9.1.post1 to 3.9.2 in /requirements (#1061) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.1.post1 to 3.9.2. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.1.post1...v3.9.2) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 54a3c3eaf5..dcba39a756 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.0.1 scipy == 1.14.0 -matplotlib == 3.9.1.post1 +matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test From 6eed25537f3c683047ff154bcd09d7dea2dd898f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 07:07:58 +0900 Subject: [PATCH 253/414] Bump ruff from 0.6.1 to 0.6.2 in /requirements (#1064) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.1 to 0.6.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.1...0.6.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index dcba39a756..f219e1d279 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.6.1 # For unit test +ruff == 0.6.2 # For unit test From 2b6c9b0888734b4caa4bf1a8f3c810def3dfa0ba Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 20:14:07 +0900 Subject: [PATCH 254/414] Bump scipy from 1.14.0 to 1.14.1 in /requirements (#1066) Bumps [scipy](https://github.com/scipy/scipy) from 1.14.0 to 1.14.1. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.14.0...v1.14.1) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f219e1d279..500002ff0e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.0.1 -scipy == 1.14.0 +scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.2 # For unit test From b139717b297f90daa063e107154fc1ce96c5066e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 20:23:07 +0900 Subject: [PATCH 255/414] Bump mypy from 1.11.0 to 1.11.2 in /requirements (#1065) Bumps [mypy](https://github.com/python/mypy) from 1.11.0 to 1.11.2. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.11...v1.11.2) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 500002ff0e..0b8a51fcac 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.11.0 # For unit test +mypy == 1.11.2 # For unit test ruff == 0.6.2 # For unit test From dab1a9b2dca0b27bc4eef30d98c516ec655ac2aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 21:34:35 +0900 Subject: [PATCH 256/414] Bump ruff from 0.6.2 to 0.6.3 in /requirements (#1069) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.2 to 0.6.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.2...0.6.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0b8a51fcac..8a27c1e301 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.2 # For unit test +ruff == 0.6.3 # For unit test From 4ae9555a699b2823ea2e065e0ffe11b3622aa2b6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Sep 2024 21:39:10 +0900 Subject: [PATCH 257/414] Bump numpy from 2.0.1 to 2.1.1 in /requirements (#1071) Bumps [numpy](https://github.com/numpy/numpy) from 2.0.1 to 2.1.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.0.1...v2.1.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8a27c1e301..87107816bb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.0.1 +numpy == 2.1.1 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 From ad600cd9023e67cd8064b678213d6586d076dd15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Sep 2024 21:39:27 +0900 Subject: [PATCH 258/414] Bump ruff from 0.6.3 to 0.6.4 in /requirements (#1072) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.3 to 0.6.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.3...0.6.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 87107816bb..c614c4e96a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.3 # For unit test +ruff == 0.6.4 # For unit test From bf69f444afcfffd8ebb44ec8f0988598a0b37ab6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 16 Sep 2024 22:03:54 +0900 Subject: [PATCH 259/414] add turning radius calculation doc (#1068) * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc --- docs/modules/appendix/appendix_main.rst | 1 + .../steering_motion_model/steering_model.png | Bin 0 -> 72443 bytes .../turning_radius_calc1.png | Bin 0 -> 14926 bytes .../turning_radius_calc2.png | Bin 0 -> 21792 bytes .../appendix/steering_motion_model_main.rst | 97 ++++++++++++++++++ 5 files changed, 98 insertions(+) create mode 100644 docs/modules/appendix/steering_motion_model/steering_model.png create mode 100644 docs/modules/appendix/steering_motion_model/turning_radius_calc1.png create mode 100644 docs/modules/appendix/steering_motion_model/turning_radius_calc2.png create mode 100644 docs/modules/appendix/steering_motion_model_main.rst diff --git a/docs/modules/appendix/appendix_main.rst b/docs/modules/appendix/appendix_main.rst index 8a29d84676..cb1ac04066 100644 --- a/docs/modules/appendix/appendix_main.rst +++ b/docs/modules/appendix/appendix_main.rst @@ -7,6 +7,7 @@ Appendix :maxdepth: 2 :caption: Contents + steering_motion_model Kalmanfilter_basics Kalmanfilter_basics_2 diff --git a/docs/modules/appendix/steering_motion_model/steering_model.png b/docs/modules/appendix/steering_motion_model/steering_model.png new file mode 100644 index 0000000000000000000000000000000000000000..c66dded87afebc082d11743b5bab8b7531da1d20 GIT binary patch literal 72443 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

    B=42M# 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 z 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 G{{H|kNPn*Y literal 0 HcmV?d00001 diff --git a/docs/modules/appendix/steering_motion_model_main.rst b/docs/modules/appendix/steering_motion_model_main.rst new file mode 100644 index 0000000000..6e444b7909 --- /dev/null +++ b/docs/modules/appendix/steering_motion_model_main.rst @@ -0,0 +1,97 @@ + +Steering Motion Model +----------------------- + +Turning radius calculation by steering motion model +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The turning Radius represents the radius of the circle when the robot turns, as shown in the diagram below. + +.. image:: steering_motion_model/steering_model.png + +When the steering angle is tilted by :math:`\delta`, +the turning radius :math:`R` can be calculated using the following equation, +based on the geometric relationship between the wheelbase (WB), +which is the distance between the rear wheel center and the front wheel center, +and the assumption that the turning radius circle passes through the center of +the rear wheels in the diagram above. + +:math:`R = \frac{WB}{tan\delta}` + +The curvature :math:`\kappa` is the reciprocal of the turning radius: + +:math:`\kappa = \frac{tan\delta}{WB}` + +In the diagram above, the angular difference :math:`\Delta \theta` in the vehicle’s heading between two points on the turning radius :math:`R` +is the same as the angle of the vector connecting the two points from the center of the turn. + +From the formula for the length of an arc and the radius, + +:math:`\Delta \theta = \frac{s}{R}` + +Here, :math:`s` is the distance between two points on the turning radius. + +So, yaw rate :math:`\omega` can be calculated as follows. + +:math:`\omega = \frac{v}{R}` + +and + +:math:`\omega = v\kappa` + +here, :math:`v` is the velocity of the vehicle. + + +Turning radius calculation by 2 consecutive positions of the robot trajectory +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In this section, we will derive the formula for the turning radius from 2 consecutive positions of the robot trajectory. + +.. image:: steering_motion_model/turning_radius_calc1.png + +As shown in the upper diagram above, the robot moves from a point at time :math:`t` to a point at time :math:`t+1`. +Each point is represented by a 2D position :math:`(x_t, y_t)` and an orientation :math:`\theta_t`. + +The distance between the two points is :math:`d = \sqrt{(x_{t+1} - x_t)^2 + (y_{t+1} - y_t)^2}`. + +The angle between the two vectors from the turning center to the two points is :math:`\theta = \theta_{t+1} - \theta_t`. +Here, by drawing a perpendicular line from the center of the turning radius +to a straight line of length :math:`d` connecting two points, +the following equation can be derived from the resulting right triangle. + +:math:`sin\frac{\theta}{2} = \frac{d}{2R}` + +So, the turning radius :math:`R` can be calculated as follows. + +:math:`R = \frac{d}{2sin\frac{\theta}{2}}` + +The curvature :math:`\kappa` is the reciprocal of the turning radius. +So, the curvature can be calculated as follows. + +:math:`\kappa = \frac{2sin\frac{\theta}{2}}{d}` + +Target speed by maximum steering speed +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If the maximum steering speed is given as :math:`\dot{\delta}_{max}`, +the maximum curvature change rate :math:`\dot{\kappa}_{max}` can be calculated as follows: + +:math:`\dot{\kappa}_{max} = \frac{tan\dot{\delta}_{max}}{WB}` + +From the curvature calculation by 2 consecutive positions of the robot trajectory, + +the maximum curvature change rate :math:`\dot{\kappa}_{max}` can be calculated as follows: + +:math:`\dot{\kappa}_{max} = \frac{\kappa_{t+1}-\kappa_{t}}{\Delta t}` + +If we can assume that the vehicle will not exceed the maximum curvature change rate, + +the target minimum velocity :math:`v_{min}` can be calculated as follows: + +:math:`v_{min} = \frac{d_{t+1}+d_{t}}{\Delta t} = \frac{d_{t+1}+d_{t}}{(\kappa_{t+1}-\kappa_{t})}\frac{tan\dot{\delta}_{max}}{WB}` + + +References: +~~~~~~~~~~~ + +- `Vehicle Dynamics and Control `_ From e26d5cb99aed3d282508cc18457feb7a7b8ca18f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 21:13:36 +0900 Subject: [PATCH 260/414] Bump pytest from 8.3.2 to 8.3.3 in /requirements (#1077) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.2 to 8.3.3. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.2...8.3.3) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c614c4e96a..6bbe33e378 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.1.1 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 -pytest == 8.3.2 # For unit test +pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test ruff == 0.6.4 # For unit test From 3e178598d467b65154fb1b409ac9fab8339957b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 21:55:03 +0900 Subject: [PATCH 261/414] Bump ruff from 0.6.4 to 0.6.5 in /requirements (#1078) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.4 to 0.6.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.4...0.6.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6bbe33e378..f149183e96 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.4 # For unit test +ruff == 0.6.5 # For unit test From 660646a361162b9c286d5182558775eda5207ebe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Sep 2024 06:19:38 -0700 Subject: [PATCH 262/414] Bump ruff from 0.6.5 to 0.6.7 in /requirements (#1080) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.5 to 0.6.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.5...0.6.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f149183e96..453922eb8c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.5 # For unit test +ruff == 0.6.7 # For unit test From fafae87236eaf95785f5566e35fe9d6ba2fa3701 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Oct 2024 20:51:46 +0900 Subject: [PATCH 263/414] Bump ruff from 0.6.7 to 0.6.8 in /requirements (#1081) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.7 to 0.6.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.7...0.6.8) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 453922eb8c..83f9bc438f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.7 # For unit test +ruff == 0.6.8 # For unit test From 857a80febf8aef959d7df441f8948fe073e790d5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 21:05:58 +0900 Subject: [PATCH 264/414] Bump numpy from 2.1.1 to 2.1.2 in /requirements (#1083) Bumps [numpy](https://github.com/numpy/numpy) from 2.1.1 to 2.1.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.1.1...v2.1.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 83f9bc438f..e006f944ff 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.1.1 +numpy == 2.1.2 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 From a791c79da200435cb89d707320e106c10ca5b6db Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 21:37:36 +0900 Subject: [PATCH 265/414] Bump ruff from 0.6.8 to 0.6.9 in /requirements (#1082) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.8 to 0.6.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.8...0.6.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e006f944ff..62f9bc183a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.8 # For unit test +ruff == 0.6.9 # For unit test From 4d009a7916bffa53d2747cc6100180a3521e376c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Oct 2024 12:48:45 +0900 Subject: [PATCH 266/414] Bump mypy from 1.11.2 to 1.12.0 in /requirements (#1084) Bumps [mypy](https://github.com/python/mypy) from 1.11.2 to 1.12.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.11.2...v1.12.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 62f9bc183a..cbab816c8a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.11.2 # For unit test +mypy == 1.12.0 # For unit test ruff == 0.6.9 # For unit test From 74e9dcc0921f8128488b449901812b1b51e54bad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 22:01:11 +0900 Subject: [PATCH 267/414] Bump ruff from 0.6.9 to 0.7.0 in /requirements (#1088) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.9 to 0.7.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.9...0.7.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cbab816c8a..f275d9d82e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.12.0 # For unit test -ruff == 0.6.9 # For unit test +ruff == 0.7.0 # For unit test From 899f749f33637159be3515264705ca7fe2d8609e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 22:24:33 +0900 Subject: [PATCH 268/414] Bump mypy from 1.12.0 to 1.12.1 in /requirements (#1089) Bumps [mypy](https://github.com/python/mypy) from 1.12.0 to 1.12.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.12.0...v1.12.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f275d9d82e..0b44092a15 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.12.0 # For unit test +mypy == 1.12.1 # For unit test ruff == 0.7.0 # For unit test From 9ecc98d3e6af70865d902a88b5d96dffd4764b7c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 23:27:05 +0900 Subject: [PATCH 269/414] Bump mypy from 1.12.1 to 1.13.0 in /requirements (#1093) Bumps [mypy](https://github.com/python/mypy) from 1.12.1 to 1.13.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.12.1...v1.13.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0b44092a15..92ffcf3a74 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.12.1 # For unit test +mypy == 1.13.0 # For unit test ruff == 0.7.0 # For unit test From 41fea75c0ee0cfb6a1c24307f0e0c1f1bb0af133 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 21:32:30 +0900 Subject: [PATCH 270/414] Bump ruff from 0.7.0 to 0.7.1 in /requirements (#1092) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.0 to 0.7.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.0...0.7.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 92ffcf3a74..9fd97ba106 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.0 # For unit test +ruff == 0.7.1 # For unit test From 7c5959c5f2d0dbde7889870fc0056491577a5653 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 21:01:38 +0900 Subject: [PATCH 271/414] Bump numpy from 2.1.2 to 2.1.3 in /requirements (#1095) Bumps [numpy](https://github.com/numpy/numpy) from 2.1.2 to 2.1.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.1.2...v2.1.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9fd97ba106..38a0aed0f8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.1.2 +numpy == 2.1.3 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 From 5d8326957bcb40d62076e2920f5d61290f658fe6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Nov 2024 21:44:25 +0900 Subject: [PATCH 272/414] Bump ruff from 0.7.1 to 0.7.3 in /requirements (#1097) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.1 to 0.7.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.1...0.7.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 38a0aed0f8..21c9c64364 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.1 # For unit test +ruff == 0.7.3 # For unit test From 3f87bd4cfc9b8cc5a6e3c97dcfd113f020023801 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2024 07:40:59 +0900 Subject: [PATCH 273/414] Bump ruff from 0.7.3 to 0.7.4 in /requirements (#1099) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.3 to 0.7.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.3...0.7.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 21c9c64364..d3d3627d5c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.3 # For unit test +ruff == 0.7.4 # For unit test From 0f91e58ca3d3e67bdbc592105140791efa6b2dbc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 08:25:12 +0900 Subject: [PATCH 274/414] Bump pytest from 8.3.3 to 8.3.4 in /requirements (#1102) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.3 to 8.3.4. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.3...8.3.4) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d3d3627d5c..44875f28d6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.1.3 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 -pytest == 8.3.3 # For unit test +pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test ruff == 0.7.4 # For unit test From 455542d7178565517ac751a025e103d5ff11ced0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 15:36:51 +0900 Subject: [PATCH 275/414] Bump ruff from 0.7.4 to 0.8.1 in /requirements (#1103) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.4 to 0.8.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.4...0.8.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 44875f28d6..a224af5d40 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.4 # For unit test +ruff == 0.8.1 # For unit test From 115b32d2feb03bd96b52efeb2403dfb272c5e703 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Dec 2024 08:31:54 +0900 Subject: [PATCH 276/414] Bump matplotlib from 3.9.2 to 3.9.3 in /requirements (#1101) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.2 to 3.9.3. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.2...v3.9.3) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a224af5d40..91566508d6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.1.3 scipy == 1.14.1 -matplotlib == 3.9.2 +matplotlib == 3.9.3 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test From f86eecec7fa851fcc52aeb09a7c58b4c3c0110d0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2024 06:46:52 +0900 Subject: [PATCH 277/414] Bump numpy from 2.1.3 to 2.2.0 in /requirements (#1106) Bumps [numpy](https://github.com/numpy/numpy) from 2.1.3 to 2.2.0. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.1.3...v2.2.0) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 91566508d6..a99ed51781 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.1.3 +numpy == 2.2.0 scipy == 1.14.1 matplotlib == 3.9.3 cvxpy == 1.5.3 From 4ebe7543ffac5f4eb40bceedec14f11703cc6a1f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2024 13:17:18 +0900 Subject: [PATCH 278/414] Bump ruff from 0.8.1 to 0.8.2 in /requirements (#1105) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.1 to 0.8.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.1...0.8.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a99ed51781..dbc555e0c9 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.8.1 # For unit test +ruff == 0.8.2 # For unit test From 0d8cd9bb6cca5697a3cd3f1b279e4cd8a27d3cb7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2024 09:32:02 +0900 Subject: [PATCH 279/414] Bump matplotlib from 3.9.3 to 3.10.0 in /requirements (#1107) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.3 to 3.10.0. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.3...v3.10.0) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index dbc555e0c9..650e7a4048 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.2.0 scipy == 1.14.1 -matplotlib == 3.9.3 +matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test From e5eea35ee4a03082cd5acf5efea208d677df0a0a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2024 09:37:51 +0900 Subject: [PATCH 280/414] Bump ruff from 0.8.2 to 0.8.3 in /requirements (#1108) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.2 to 0.8.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.2...0.8.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 650e7a4048..cd4a01f88f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.8.2 # For unit test +ruff == 0.8.3 # For unit test From 4bc70480448295205fceb28053d0ed9c5efca99d Mon Sep 17 00:00:00 2001 From: Weipu Shan Date: Fri, 20 Dec 2024 20:32:57 +0800 Subject: [PATCH 281/414] fix: arm_obstacle_navigation calc_heuristic_map node through 4 corners error (#1034) * fix: arm_obstacle_navigation calc_heuristic_map node through 4 corners error * style: remove trailing whitespace --- .../arm_obstacle_navigation/arm_obstacle_navigation.py | 8 ++++---- .../arm_obstacle_navigation_2.py | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py index 75b1f9d2c4..e377897e54 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py @@ -203,10 +203,10 @@ def calc_heuristic_map(M, goal_node): for i in range(heuristic_map.shape[0]): for j in range(heuristic_map.shape[1]): heuristic_map[i, j] = min(heuristic_map[i, j], - i + 1 + heuristic_map[M - 1, j], - M - i + heuristic_map[0, j], - j + 1 + heuristic_map[i, M - 1], - M - j + heuristic_map[i, 0] + M - i - 1 + heuristic_map[M - 1, j], + i + heuristic_map[0, j], + M - j - 1 + heuristic_map[i, M - 1], + j + heuristic_map[i, 0] ) return heuristic_map diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 591cd401eb..10f4615c34 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -105,7 +105,7 @@ def get_occupancy_grid(arm, obstacles): Args: arm: An instance of NLinkArm obstacles: A list of obstacles, with each obstacle defined as a list - of xy coordinates and a radius. + of xy coordinates and a radius. Returns: Occupancy grid in joint space @@ -234,10 +234,10 @@ def calc_heuristic_map(M, goal_node): for i in range(heuristic_map.shape[0]): for j in range(heuristic_map.shape[1]): heuristic_map[i, j] = min(heuristic_map[i, j], - i + 1 + heuristic_map[M - 1, j], - M - i + heuristic_map[0, j], - j + 1 + heuristic_map[i, M - 1], - M - j + heuristic_map[i, 0] + M - i - 1 + heuristic_map[M - 1, j], + i + heuristic_map[0, j], + M - j - 1 + heuristic_map[i, M - 1], + j + heuristic_map[i, 0] ) return heuristic_map From 1f4214012a612f2163b01930444d83712d99b5f9 Mon Sep 17 00:00:00 2001 From: Aryaz Eghbali <64126826+AryazE@users.noreply.github.com> Date: Fri, 20 Dec 2024 14:00:49 +0100 Subject: [PATCH 282/414] Performance improvement (#1075) --- PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py index 8968c54dcc..7e93caa8fb 100644 --- a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py +++ b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py @@ -64,7 +64,7 @@ def transform( is_visited = np.zeros_like(transform_matrix, dtype=bool) is_visited[src[0], src[1]] = True traversal_queue = [src] - calculated = [(src[0] - 1) * n_cols + src[1]] + calculated = set([(src[0] - 1) * n_cols + src[1]]) def is_valid_neighbor(g_i, g_j): return 0 <= g_i < n_rows and 0 <= g_j < n_cols \ @@ -86,7 +86,7 @@ def is_valid_neighbor(g_i, g_j): if not is_visited[ni][nj] \ and ((ni - 1) * n_cols + nj) not in calculated: traversal_queue.append((ni, nj)) - calculated.append((ni - 1) * n_cols + nj) + calculated.add((ni - 1) * n_cols + nj) return transform_matrix From af456c70b0ec336442b0b32c5aab1a220aefaf74 Mon Sep 17 00:00:00 2001 From: Surabhi Gupta <103124390+SurabhiGupta17@users.noreply.github.com> Date: Fri, 20 Dec 2024 18:42:31 +0530 Subject: [PATCH 283/414] Implement Catmull-Rom Spline with test and documentation (#1085) --- .../blending_functions.py | 34 ++++++ .../catmull_rom_spline_path.py | 86 +++++++++++++++ .../catmull_rom_spline/blending_functions.png | Bin 0 -> 41129 bytes .../catmull_rom_path_planning.png | Bin 0 -> 33505 bytes .../catmull_rom_spline_main.rst | 103 ++++++++++++++++++ tests/test_catmull_rom_spline.py | 16 +++ 6 files changed, 239 insertions(+) create mode 100644 PathPlanning/Catmull_RomSplinePath/blending_functions.py create mode 100644 PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py create mode 100644 docs/modules/path_planning/catmull_rom_spline/blending_functions.png create mode 100644 docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png create mode 100644 docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst create mode 100644 tests/test_catmull_rom_spline.py diff --git a/PathPlanning/Catmull_RomSplinePath/blending_functions.py b/PathPlanning/Catmull_RomSplinePath/blending_functions.py new file mode 100644 index 0000000000..f3ef5dd323 --- /dev/null +++ b/PathPlanning/Catmull_RomSplinePath/blending_functions.py @@ -0,0 +1,34 @@ +import numpy as np +import matplotlib.pyplot as plt + +def blending_function_1(t): + return -t + 2*t**2 - t**3 + +def blending_function_2(t): + return 2 - 5*t**2 + 3*t**3 + +def blending_function_3(t): + return t + 4*t**2 - 3*t**3 + +def blending_function_4(t): + return -t**2 + t**3 + +def plot_blending_functions(): + t = np.linspace(0, 1, 100) + + plt.plot(t, blending_function_1(t), label='b1') + plt.plot(t, blending_function_2(t), label='b2') + plt.plot(t, blending_function_3(t), label='b3') + plt.plot(t, blending_function_4(t), label='b4') + + plt.title("Catmull-Rom Blending Functions") + plt.xlabel("t") + plt.ylabel("Value") + plt.legend() + plt.grid(True) + plt.axhline(y=0, color='k', linestyle='--') + plt.axvline(x=0, color='k', linestyle='--') + plt.show() + +if __name__ == "__main__": + plot_blending_functions() \ No newline at end of file diff --git a/PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py b/PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py new file mode 100644 index 0000000000..79916330c9 --- /dev/null +++ b/PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py @@ -0,0 +1,86 @@ +""" +Path Planner with Catmull-Rom Spline +Author: Surabhi Gupta (@this_is_surabhi) +Source: http://graphics.cs.cmu.edu/nsp/course/15-462/Fall04/assts/catmullRom.pdf +""" + +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + +import numpy as np +import matplotlib.pyplot as plt + +def catmull_rom_point(t, p0, p1, p2, p3): + """ + Parameters + ---------- + t : float + Parameter value (0 <= t <= 1) (0 <= t <= 1) + p0, p1, p2, p3 : np.ndarray + Control points for the spline segment + + Returns + ------- + np.ndarray + Calculated point on the spline + """ + return 0.5 * ((2 * p1) + + (-p0 + p2) * t + + (2 * p0 - 5 * p1 + 4 * p2 - p3) * t**2 + + (-p0 + 3 * p1 - 3 * p2 + p3) * t**3) + + +def catmull_rom_spline(control_points, num_points): + """ + Parameters + ---------- + control_points : list + List of control points + num_points : int + Number of points to generate on the spline + + Returns + ------- + tuple + x and y coordinates of the spline points + """ + t_vals = np.linspace(0, 1, num_points) + spline_points = [] + + control_points = np.array(control_points) + + for i in range(len(control_points) - 1): + if i == 0: + p1, p2, p3 = control_points[i:i+3] + p0 = p1 + elif i == len(control_points) - 2: + p0, p1, p2 = control_points[i-1:i+2] + p3 = p2 + else: + p0, p1, p2, p3 = control_points[i-1:i+3] + + for t in t_vals: + point = catmull_rom_point(t, p0, p1, p2, p3) + spline_points.append(point) + + return np.array(spline_points).T + + +def main(): + print(__file__ + " start!!") + + way_points = [[-1.0, -2.0], [1.0, -1.0], [3.0, -2.0], [4.0, -1.0], [3.0, 1.0], [1.0, 2.0], [0.0, 2.0]] + n_course_point = 100 + spline_x, spline_y = catmull_rom_spline(way_points, n_course_point) + + plt.plot(spline_x,spline_y, '-r', label="Catmull-Rom Spline Path") + plt.plot(np.array(way_points).T[0], np.array(way_points).T[1], '-og', label="Way points") + plt.title("Catmull-Rom Spline Path") + plt.grid(True) + plt.legend() + plt.axis("equal") + plt.show() + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/docs/modules/path_planning/catmull_rom_spline/blending_functions.png b/docs/modules/path_planning/catmull_rom_spline/blending_functions.png new file mode 100644 index 0000000000000000000000000000000000000000..928946df46c7f14524247d675697d81e049c9a86 GIT binary patch literal 41129 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

    tE>;rj18uQ$r_-%kmJ0~e2j$!iQ~wUR=gX9pvB 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 O%hb^P{1biW*nb0@J+h|& literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png new file mode 100644 index 0000000000000000000000000000000000000000..1d0ff001e60bbe01787ab8f134768a6558542ad7 GIT binary patch literal 33505 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst new file mode 100644 index 0000000000..4d8d3bdefe --- /dev/null +++ b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst @@ -0,0 +1,103 @@ +Catmull-Rom Spline Planning +----------------- + +.. image:: catmull_rom_path_planning.png + +This is a Catmull-Rom spline path planning routine. + +If you provide waypoints, the Catmull-Rom spline generates a smooth path that always passes through the control points, +exhibits local control, and maintains 𝐶1 continuity. + + +Catmull-Rom Spline Fundamentals +~~~~~~~~~~~~~~ + +Catmull-Rom splines are a type of cubic spline that passes through a given set of points, known as control points. + +They are defined by the following equation for calculating a point on the spline: + +:math:`P(t) = 0.5 \times \left( 2P_1 + (-P_0 + P_2)t + (2P_0 - 5P_1 + 4P_2 - P_3)t^2 + (-P_0 + 3P_1 - 3P_2 + P_3)t^3 \right)` + +Where: + +* :math:`P(t)` is the point on the spline at parameter :math:`t`. +* :math:`P_0, P_1, P_2, P_3` are the control points surrounding the parameter :math:`t`. + +Types of Catmull-Rom Splines +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +There are different types of Catmull-Rom splines based on the choice of the **tau** parameter, which influences how the curve +behaves in relation to the control points: + +1. **Uniform Catmull-Rom Spline**: + The standard implementation where the parameterization is uniform. Each segment of the spline is treated equally, + regardless of the distances between control points. + + +2. **Chordal Catmull-Rom Spline**: + This spline type takes into account the distance between control points. The parameterization is based on the actual distance + along the spline, ensuring smoother transitions. The equation can be modified to include the chord length :math:`L_i` between + points :math:`P_i` and :math:`P_{i+1}`: + + .. math:: + \tau_i = \sqrt{(x_{i+1} - x_i)^2 + (y_{i+1} - y_i)^2} + +3. **Centripetal Catmull-Rom Spline**: + This variation improves upon the chordal spline by using the square root of the distance to determine the parameterization, + which avoids oscillations and creates a more natural curve. The parameter :math:`t_i` is adjusted using the following relation: + + .. math:: + t_i = \sqrt{(x_{i+1} - x_i)^2 + (y_{i+1} - y_i)^2} + + +Blending Functions +~~~~~~~~~~~~~~~~~~ + +In Catmull-Rom spline interpolation, blending functions are used to calculate the influence of each control point on the spline at a +given parameter :math:`t`. The blending functions ensure that the spline is smooth and passes through the control points while +maintaining continuity. The four blending functions used in Catmull-Rom splines are defined as follows: + +1. **Blending Function 1**: + + .. math:: + b_1(t) = -t + 2t^2 - t^3 + +2. **Blending Function 2**: + + .. math:: + b_2(t) = 2 - 5t^2 + 3t^3 + +3. **Blending Function 3**: + + .. math:: + b_3(t) = t + 4t^2 - 3t^3 + +4. **Blending Function 4**: + + .. math:: + b_4(t) = -t^2 + t^3 + +The blending functions are combined in the spline equation to create a smooth curve that reflects the influence of each control point. + +The following figure illustrates the blending functions over the interval :math:`[0, 1]`: + +.. image:: blending_functions.png + +Catmull-Rom Spline API +~~~~~~~~~~~~~~~~~~~~~~~ + +This section provides an overview of the functions used for Catmull-Rom spline path planning. + +API +++++ + +.. autofunction:: PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path.catmull_rom_point + +.. autofunction:: PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path.catmull_rom_spline + + +References +~~~~~~~~~~ + +- `Catmull-Rom Spline - Wikipedia `__ +- `Catmull-Rom Splines `__ \ No newline at end of file diff --git a/tests/test_catmull_rom_spline.py b/tests/test_catmull_rom_spline.py new file mode 100644 index 0000000000..41a73588c3 --- /dev/null +++ b/tests/test_catmull_rom_spline.py @@ -0,0 +1,16 @@ +import conftest +from PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path import catmull_rom_spline + +def test_catmull_rom_spline(): + way_points = [[0, 0], [1, 2], [2, 0], [3, 3]] + num_points = 100 + + spline_x, spline_y = catmull_rom_spline(way_points, num_points) + + assert spline_x.size > 0, "Spline X coordinates should not be empty" + assert spline_y.size > 0, "Spline Y coordinates should not be empty" + + assert spline_x.shape == spline_y.shape, "Spline X and Y coordinates should have the same shape" + +if __name__ == '__main__': + conftest.run_this_test(__file__) From 7eeb9d215cb5652a800db507f066047bfd5d023f Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 21 Dec 2024 15:04:02 +0900 Subject: [PATCH 284/414] Add catmull_rom_spline doc (#1109) --- docs/modules/path_planning/path_planning_main.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/modules/path_planning/path_planning_main.rst b/docs/modules/path_planning/path_planning_main.rst index a3237f16f1..30802fd7a6 100644 --- a/docs/modules/path_planning/path_planning_main.rst +++ b/docs/modules/path_planning/path_planning_main.rst @@ -18,6 +18,7 @@ Path Planning rrt/rrt cubic_spline/cubic_spline bspline_path/bspline_path + catmull_rom_spline/catmull_rom_spline clothoid_path/clothoid_path eta3_spline/eta3_spline bezier_path/bezier_path From b5988dbcbc3c1d8cdbb3f9f3f9dec75cf63defb9 Mon Sep 17 00:00:00 2001 From: parmaski <89462537+parmaski@users.noreply.github.com> Date: Sat, 21 Dec 2024 19:39:16 +0900 Subject: [PATCH 285/414] Fix: Hybrid A* direction is incorrect (#1086) * fix to preseve direction history * add path to Reeds Shepp and its users e.g. hybrid A* --- PathPlanning/HybridAStar/hybrid_a_star.py | 5 +++-- PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py | 4 ++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/PathPlanning/HybridAStar/hybrid_a_star.py b/PathPlanning/HybridAStar/hybrid_a_star.py index 03db0dc167..1962efe295 100644 --- a/PathPlanning/HybridAStar/hybrid_a_star.py +++ b/PathPlanning/HybridAStar/hybrid_a_star.py @@ -105,12 +105,13 @@ def calc_next_node(current, steer, direction, config, ox, oy, kd_tree): x, y, yaw = current.x_list[-1], current.y_list[-1], current.yaw_list[-1] arc_l = XY_GRID_RESOLUTION * 1.5 - x_list, y_list, yaw_list = [], [], [] + x_list, y_list, yaw_list, direction_list = [], [], [], [] for _ in np.arange(0, arc_l, MOTION_RESOLUTION): x, y, yaw = move(x, y, yaw, MOTION_RESOLUTION * direction, steer) x_list.append(x) y_list.append(y) yaw_list.append(yaw) + direction_list.append(direction == 1) if not check_car_collision(x_list, y_list, yaw_list, ox, oy, kd_tree): return None @@ -134,7 +135,7 @@ def calc_next_node(current, steer, direction, config, ox, oy, kd_tree): cost = current.cost + added_cost + arc_l node = Node(x_ind, y_ind, yaw_ind, d, x_list, - y_list, yaw_list, [d], + y_list, yaw_list, direction_list, parent_index=calc_index(current, config), cost=cost, steer=steer) diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index 8e134ff38b..618d1d99ba 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -6,6 +6,10 @@ co-author Videh Patel(@videh25) : Added the missing RS paths """ +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + import math import matplotlib.pyplot as plt From b137ba1817af11ed944a28f8c1c8ad1a95848726 Mon Sep 17 00:00:00 2001 From: parmaski <89462537+parmaski@users.noreply.github.com> Date: Sat, 21 Dec 2024 19:40:30 +0900 Subject: [PATCH 286/414] fix behavior when path is not found (#1104) --- PathPlanning/HybridAStar/car.py | 2 +- PathPlanning/HybridAStar/hybrid_a_star.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/PathPlanning/HybridAStar/car.py b/PathPlanning/HybridAStar/car.py index d7631133c7..959db74078 100644 --- a/PathPlanning/HybridAStar/car.py +++ b/PathPlanning/HybridAStar/car.py @@ -97,7 +97,7 @@ def pi_2_pi(angle): def move(x, y, yaw, distance, steer, L=WB): x += distance * cos(yaw) y += distance * sin(yaw) - yaw += pi_2_pi(distance * tan(steer) / L) # distance/2 + yaw = pi_2_pi(yaw + distance * tan(steer) / L) # distance/2 return x, y, yaw diff --git a/PathPlanning/HybridAStar/hybrid_a_star.py b/PathPlanning/HybridAStar/hybrid_a_star.py index 1962efe295..0fa04189c6 100644 --- a/PathPlanning/HybridAStar/hybrid_a_star.py +++ b/PathPlanning/HybridAStar/hybrid_a_star.py @@ -282,7 +282,7 @@ def hybrid_a_star_planning(start, goal, ox, oy, xy_resolution, yaw_resolution): while True: if not openList: print("Error: Cannot find path, No open set") - return [], [], [] + return Path([], [], [], [], 0) cost, c_id = heapq.heappop(pq) if c_id in openList: From ca54f1b6880b9731b06fc33db338bc28bd63c864 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 07:50:00 +0900 Subject: [PATCH 287/414] Bump ruff from 0.8.3 to 0.8.4 in /requirements (#1111) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.3 to 0.8.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.3...0.8.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cd4a01f88f..d28cd5f956 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.8.3 # For unit test +ruff == 0.8.4 # For unit test From d1f1190106d624e555b0fdd0853b65ad844e3204 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 07:59:16 +0900 Subject: [PATCH 288/414] Bump numpy from 2.2.0 to 2.2.1 in /requirements (#1113) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.0 to 2.2.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.0...v2.2.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d28cd5f956..0992ab6cf0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.0 +numpy == 2.2.1 scipy == 1.14.1 matplotlib == 3.10.0 cvxpy == 1.5.3 From aacae0d79a9595356bd7f15ad8e565220a04de61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 09:13:35 +0900 Subject: [PATCH 289/414] Bump mypy from 1.13.0 to 1.14.0 in /requirements (#1112) Bumps [mypy](https://github.com/python/mypy) from 1.13.0 to 1.14.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.13.0...v1.14.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0992ab6cf0..47db4245fd 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.13.0 # For unit test +mypy == 1.14.0 # For unit test ruff == 0.8.4 # For unit test From 7d33f5f7140513d14bad016f48d132a08bc5c8a3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 31 Dec 2024 07:04:57 +0900 Subject: [PATCH 290/414] Bump mypy from 1.14.0 to 1.14.1 in /requirements (#1116) Bumps [mypy](https://github.com/python/mypy) from 1.14.0 to 1.14.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.14.0...v1.14.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 47db4245fd..bcfbbf97ac 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.14.0 # For unit test +mypy == 1.14.1 # For unit test ruff == 0.8.4 # For unit test From c27803f781c00384c9de29fe1fd82ace8279d788 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Jan 2025 11:49:14 +0900 Subject: [PATCH 291/414] build(deps): bump ruff from 0.8.4 to 0.8.6 in /requirements (#1117) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.4 to 0.8.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.4...0.8.6) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bcfbbf97ac..5291c45c58 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.8.4 # For unit test +ruff == 0.8.6 # For unit test From 01d398f4ab276bcbcac3a7ce8d62b2e2712f0a5a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Jan 2025 13:01:34 +0900 Subject: [PATCH 292/414] build(deps): bump scipy from 1.14.1 to 1.15.0 in /requirements (#1118) Bumps [scipy](https://github.com/scipy/scipy) from 1.14.1 to 1.15.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.14.1...v1.15.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5291c45c58..5aeded446f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.2.1 -scipy == 1.14.1 +scipy == 1.15.0 matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test From 647ce9ccfa1f581bff558a16803bfd7e2c343c3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Jan 2025 07:24:59 +0900 Subject: [PATCH 293/414] build(deps): bump scipy from 1.15.0 to 1.15.1 in /requirements (#1119) Bumps [scipy](https://github.com/scipy/scipy) from 1.15.0 to 1.15.1. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.15.0...v1.15.1) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5aeded446f..f5a7ff315c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.2.1 -scipy == 1.15.0 +scipy == 1.15.1 matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test From 4cf7531839a12faa9b7daf6a70aab4f596aa1b0c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Jan 2025 07:25:29 +0900 Subject: [PATCH 294/414] build(deps): bump ruff from 0.8.6 to 0.9.1 in /requirements (#1120) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.6 to 0.9.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.6...0.9.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f5a7ff315c..d212202cdb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.8.6 # For unit test +ruff == 0.9.1 # For unit test From 4c2e3e8f9b686baef5774dcfe0afd7dda6150af4 Mon Sep 17 00:00:00 2001 From: Mritunjai <101278178+Mritunjaii@users.noreply.github.com> Date: Mon, 20 Jan 2025 09:59:15 +0530 Subject: [PATCH 295/414] hashmap instead of a linear search (#1110) --- .../AStar/a_star_searching_from_two_side.py | 70 +++++++++---------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/PathPlanning/AStar/a_star_searching_from_two_side.py b/PathPlanning/AStar/a_star_searching_from_two_side.py index 822f5ea500..f43cea71b4 100644 --- a/PathPlanning/AStar/a_star_searching_from_two_side.py +++ b/PathPlanning/AStar/a_star_searching_from_two_side.py @@ -78,43 +78,43 @@ def boundary_and_obstacles(start, goal, top_vertex, bottom_vertex, obs_number): def find_neighbor(node, ob, closed): - # generate neighbors in certain condition - ob_list = ob.tolist() - neighbor: list = [] + # Convert obstacles to a set for faster lookup + ob_set = set(map(tuple, ob.tolist())) + neighbor_set = set() + + # Generate neighbors within the 3x3 grid around the node for x in range(node.coordinate[0] - 1, node.coordinate[0] + 2): for y in range(node.coordinate[1] - 1, node.coordinate[1] + 2): - if [x, y] not in ob_list: - # find all possible neighbor nodes - neighbor.append([x, y]) - # remove node violate the motion rule - # 1. remove node.coordinate itself - neighbor.remove(node.coordinate) - # 2. remove neighbor nodes who cross through two diagonal - # positioned obstacles since there is no enough space for - # robot to go through two diagonal positioned obstacles - - # top bottom left right neighbors of node - top_nei = [node.coordinate[0], node.coordinate[1] + 1] - bottom_nei = [node.coordinate[0], node.coordinate[1] - 1] - left_nei = [node.coordinate[0] - 1, node.coordinate[1]] - right_nei = [node.coordinate[0] + 1, node.coordinate[1]] - # neighbors in four vertex - lt_nei = [node.coordinate[0] - 1, node.coordinate[1] + 1] - rt_nei = [node.coordinate[0] + 1, node.coordinate[1] + 1] - lb_nei = [node.coordinate[0] - 1, node.coordinate[1] - 1] - rb_nei = [node.coordinate[0] + 1, node.coordinate[1] - 1] - - # remove the unnecessary neighbors - if top_nei and left_nei in ob_list and lt_nei in neighbor: - neighbor.remove(lt_nei) - if top_nei and right_nei in ob_list and rt_nei in neighbor: - neighbor.remove(rt_nei) - if bottom_nei and left_nei in ob_list and lb_nei in neighbor: - neighbor.remove(lb_nei) - if bottom_nei and right_nei in ob_list and rb_nei in neighbor: - neighbor.remove(rb_nei) - neighbor = [x for x in neighbor if x not in closed] - return neighbor + coord = (x, y) + if coord not in ob_set and coord != tuple(node.coordinate): + neighbor_set.add(coord) + + # Define neighbors in cardinal and diagonal directions + top_nei = (node.coordinate[0], node.coordinate[1] + 1) + bottom_nei = (node.coordinate[0], node.coordinate[1] - 1) + left_nei = (node.coordinate[0] - 1, node.coordinate[1]) + right_nei = (node.coordinate[0] + 1, node.coordinate[1]) + lt_nei = (node.coordinate[0] - 1, node.coordinate[1] + 1) + rt_nei = (node.coordinate[0] + 1, node.coordinate[1] + 1) + lb_nei = (node.coordinate[0] - 1, node.coordinate[1] - 1) + rb_nei = (node.coordinate[0] + 1, node.coordinate[1] - 1) + + # Remove neighbors that violate diagonal motion rules + if top_nei in ob_set and left_nei in ob_set: + neighbor_set.discard(lt_nei) + if top_nei in ob_set and right_nei in ob_set: + neighbor_set.discard(rt_nei) + if bottom_nei in ob_set and left_nei in ob_set: + neighbor_set.discard(lb_nei) + if bottom_nei in ob_set and right_nei in ob_set: + neighbor_set.discard(rb_nei) + + # Filter out neighbors that are in the closed set + closed_set = set(map(tuple, closed)) + neighbor_set -= closed_set + + return list(neighbor_set) + def find_node_index(coordinate, node_list): From 1cb45a5d3bdcb07b254c20ce7763d527435c355e Mon Sep 17 00:00:00 2001 From: Aryaz Eghbali <64126826+AryazE@users.noreply.github.com> Date: Mon, 20 Jan 2025 09:16:20 +0100 Subject: [PATCH 296/414] Fixed multitype list (#1076) * Fixed multitype list * Cast to float * Reverted to all floats * Moved all remaining to float --- .../BreadthFirstSearch/breadth_first_search.py | 10 +++++----- PathPlanning/Dijkstra/dijkstra.py | 10 +++++----- .../ProbabilisticRoadMap/probabilistic_road_map.py | 10 +++++----- PathPlanning/VoronoiRoadMap/voronoi_road_map.py | 10 +++++----- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/PathPlanning/BreadthFirstSearch/breadth_first_search.py b/PathPlanning/BreadthFirstSearch/breadth_first_search.py index ff662170e7..ad994732a5 100644 --- a/PathPlanning/BreadthFirstSearch/breadth_first_search.py +++ b/PathPlanning/BreadthFirstSearch/breadth_first_search.py @@ -220,20 +220,20 @@ def main(): # set obstacle positions ox, oy = [], [] for i in range(-10, 60): - ox.append(i) + ox.append(float(i)) oy.append(-10.0) for i in range(-10, 60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(-10, 61): ox.append(-10.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(0, 40): ox.append(40.0) oy.append(60.0 - i) diff --git a/PathPlanning/Dijkstra/dijkstra.py b/PathPlanning/Dijkstra/dijkstra.py index 004e49f15a..8a585e4b18 100644 --- a/PathPlanning/Dijkstra/dijkstra.py +++ b/PathPlanning/Dijkstra/dijkstra.py @@ -221,20 +221,20 @@ def main(): # set obstacle positions ox, oy = [], [] for i in range(-10, 60): - ox.append(i) + ox.append(float(i)) oy.append(-10.0) for i in range(-10, 60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(-10, 61): ox.append(-10.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(0, 40): ox.append(40.0) oy.append(60.0 - i) diff --git a/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py b/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py index 294c389023..8bacfd5d19 100644 --- a/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py +++ b/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py @@ -273,20 +273,20 @@ def main(rng=None): oy = [] for i in range(60): - ox.append(i) + ox.append(float(i)) oy.append(0.0) for i in range(60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(61): ox.append(0.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(40.0) oy.append(60.0 - i) diff --git a/PathPlanning/VoronoiRoadMap/voronoi_road_map.py b/PathPlanning/VoronoiRoadMap/voronoi_road_map.py index 0a1f6f5526..a27e1b6928 100644 --- a/PathPlanning/VoronoiRoadMap/voronoi_road_map.py +++ b/PathPlanning/VoronoiRoadMap/voronoi_road_map.py @@ -146,20 +146,20 @@ def main(): oy = [] for i in range(60): - ox.append(i) + ox.append(float(i)) oy.append(0.0) for i in range(60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(61): ox.append(0.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(40.0) oy.append(60.0 - i) From 9672434483459a00b13ece407079fbb53dd8a6b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Jan 2025 08:02:30 +0900 Subject: [PATCH 297/414] build(deps): bump numpy from 2.2.1 to 2.2.2 in /requirements (#1122) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.1 to 2.2.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.1...v2.2.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d212202cdb..e1c117cb1e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.1 +numpy == 2.2.2 scipy == 1.15.1 matplotlib == 3.10.0 cvxpy == 1.5.3 From 2bc59fe61247982eaed5b0b7eab842658a5c07d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Jan 2025 08:15:53 +0900 Subject: [PATCH 298/414] build(deps): bump ruff from 0.9.1 to 0.9.2 in /requirements (#1123) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.1 to 0.9.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.1...0.9.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e1c117cb1e..11b91abb1f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.9.1 # For unit test +ruff == 0.9.2 # For unit test From 5a66105ff5dc9924fc6b8f8986afaf52f0fd870d Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Wed, 22 Jan 2025 17:57:12 +0800 Subject: [PATCH 299/414] Extend frenet_optimal_trajectory to support more scenarios (#1114) * feat: Add third derivative and curvature rate calculations to CubicSpline classes * feat: Extend frenet_optimal_trajectory to support more scenarios * fix: frenet optimal trajectory type check * fix: cubic spline planner code style check * fix: frenet optimal trajectory review * feat: frenet_optimal_trajectory update doc * fix: frenet optimal trajectory review * fix: frenet optimal trajectory * fix: frenet optimal trajectory --- .../CubicSpline/cubic_spline_planner.py | 67 +++ .../cartesian_frenet_converter.py | 144 +++++ .../frenet_optimal_trajectory.py | 550 +++++++++++++----- .../frenet_frame_path_main.rst | 30 +- tests/test_frenet_optimal_trajectory.py | 40 +- 5 files changed, 674 insertions(+), 157 deletions(-) create mode 100644 PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py diff --git a/PathPlanning/CubicSpline/cubic_spline_planner.py b/PathPlanning/CubicSpline/cubic_spline_planner.py index 7cc7bedc79..2391f67c39 100644 --- a/PathPlanning/CubicSpline/cubic_spline_planner.py +++ b/PathPlanning/CubicSpline/cubic_spline_planner.py @@ -76,6 +76,11 @@ def calc_position(self, x): if `x` is outside the data point's `x` range, return None. + Parameters + ---------- + x : float + x position to calculate y. + Returns ------- y : float @@ -99,6 +104,11 @@ def calc_first_derivative(self, x): if x is outside the input x, return None + Parameters + ---------- + x : float + x position to calculate first derivative. + Returns ------- dy : float @@ -121,6 +131,11 @@ def calc_second_derivative(self, x): if x is outside the input x, return None + Parameters + ---------- + x : float + x position to calculate second derivative. + Returns ------- ddy : float @@ -137,6 +152,31 @@ def calc_second_derivative(self, x): ddy = 2.0 * self.c[i] + 6.0 * self.d[i] * dx return ddy + def calc_third_derivative(self, x): + """ + Calc third derivative at given x. + + if x is outside the input x, return None + + Parameters + ---------- + x : float + x position to calculate third derivative. + + Returns + ------- + dddy : float + third derivative for given x. + """ + if x < self.x[0]: + return None + elif x > self.x[-1]: + return None + + i = self.__search_index(x) + dddy = 6.0 * self.d[i] + return dddy + def __search_index(self, x): """ search data segment index @@ -287,6 +327,33 @@ def calc_curvature(self, s): k = (ddy * dx - ddx * dy) / ((dx ** 2 + dy ** 2)**(3 / 2)) return k + def calc_curvature_rate(self, s): + """ + calc curvature rate + + Parameters + ---------- + s : float + distance from the start point. if `s` is outside the data point's + range, return None. + + Returns + ------- + k : float + curvature rate for given s. + """ + dx = self.sx.calc_first_derivative(s) + dy = self.sy.calc_first_derivative(s) + ddx = self.sx.calc_second_derivative(s) + ddy = self.sy.calc_second_derivative(s) + dddx = self.sx.calc_third_derivative(s) + dddy = self.sy.calc_third_derivative(s) + a = dx * ddy - dy * ddx + b = dx * dddy - dy * dddx + c = dx * ddx + dy * ddy + d = dx * dx + dy * dy + return (b * d - 3.0 * a * c) / (d * d * d) + def calc_yaw(self, s): """ calc yaw diff --git a/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py new file mode 100644 index 0000000000..4cc8650c89 --- /dev/null +++ b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py @@ -0,0 +1,144 @@ +""" + +A converter between Cartesian and Frenet coordinate systems + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame] +(https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) + +""" + +import math + + +class CartesianFrenetConverter: + """ + A class for converting states between Cartesian and Frenet coordinate systems + """ + + @ staticmethod + def cartesian_to_frenet(rs, rx, ry, rtheta, rkappa, rdkappa, x, y, v, a, theta, kappa): + """ + Convert state from Cartesian coordinate to Frenet coordinate + + Parameters + ---------- + rs: reference line s-coordinate + rx, ry: reference point coordinates + rtheta: reference point heading + rkappa: reference point curvature + rdkappa: reference point curvature rate + x, y: current position + v: velocity + a: acceleration + theta: heading angle + kappa: curvature + + Returns + ------- + s_condition: [s(t), s'(t), s''(t)] + d_condition: [d(s), d'(s), d''(s)] + """ + dx = x - rx + dy = y - ry + + cos_theta_r = math.cos(rtheta) + sin_theta_r = math.sin(rtheta) + + cross_rd_nd = cos_theta_r * dy - sin_theta_r * dx + d = math.copysign(math.hypot(dx, dy), cross_rd_nd) + + delta_theta = theta - rtheta + tan_delta_theta = math.tan(delta_theta) + cos_delta_theta = math.cos(delta_theta) + + one_minus_kappa_r_d = 1 - rkappa * d + d_dot = one_minus_kappa_r_d * tan_delta_theta + + kappa_r_d_prime = rdkappa * d + rkappa * d_dot + + d_ddot = (-kappa_r_d_prime * tan_delta_theta + + one_minus_kappa_r_d / (cos_delta_theta * cos_delta_theta) * + (kappa * one_minus_kappa_r_d / cos_delta_theta - rkappa)) + + s = rs + s_dot = v * cos_delta_theta / one_minus_kappa_r_d + + delta_theta_prime = one_minus_kappa_r_d / cos_delta_theta * kappa - rkappa + s_ddot = (a * cos_delta_theta - + s_dot * s_dot * + (d_dot * delta_theta_prime - kappa_r_d_prime)) / one_minus_kappa_r_d + + return [s, s_dot, s_ddot], [d, d_dot, d_ddot] + + @ staticmethod + def frenet_to_cartesian(rs, rx, ry, rtheta, rkappa, rdkappa, s_condition, d_condition): + """ + Convert state from Frenet coordinate to Cartesian coordinate + + Parameters + ---------- + rs: reference line s-coordinate + rx, ry: reference point coordinates + rtheta: reference point heading + rkappa: reference point curvature + rdkappa: reference point curvature rate + s_condition: [s(t), s'(t), s''(t)] + d_condition: [d(s), d'(s), d''(s)] + + Returns + ------- + x, y: position + theta: heading angle + kappa: curvature + v: velocity + a: acceleration + """ + if abs(rs - s_condition[0]) >= 1.0e-6: + raise ValueError( + "The reference point s and s_condition[0] don't match") + + cos_theta_r = math.cos(rtheta) + sin_theta_r = math.sin(rtheta) + + x = rx - sin_theta_r * d_condition[0] + y = ry + cos_theta_r * d_condition[0] + + one_minus_kappa_r_d = 1 - rkappa * d_condition[0] + + tan_delta_theta = d_condition[1] / one_minus_kappa_r_d + delta_theta = math.atan2(d_condition[1], one_minus_kappa_r_d) + cos_delta_theta = math.cos(delta_theta) + + theta = CartesianFrenetConverter.normalize_angle(delta_theta + rtheta) + + kappa_r_d_prime = rdkappa * d_condition[0] + rkappa * d_condition[1] + + kappa = (((d_condition[2] + kappa_r_d_prime * tan_delta_theta) * + cos_delta_theta * cos_delta_theta) / one_minus_kappa_r_d + rkappa) * \ + cos_delta_theta / one_minus_kappa_r_d + + d_dot = d_condition[1] * s_condition[1] + v = math.sqrt(one_minus_kappa_r_d * one_minus_kappa_r_d * + s_condition[1] * s_condition[1] + d_dot * d_dot) + + delta_theta_prime = one_minus_kappa_r_d / cos_delta_theta * kappa - rkappa + + a = (s_condition[2] * one_minus_kappa_r_d / cos_delta_theta + + s_condition[1] * s_condition[1] / cos_delta_theta * + (d_condition[1] * delta_theta_prime - kappa_r_d_prime)) + + return x, y, theta, kappa, v, a + + @ staticmethod + def normalize_angle(angle): + """ + Normalize angle to [-pi, pi] + """ + a = math.fmod(angle + math.pi, 2.0 * math.pi) + if a < 0.0: + a += 2.0 * math.pi + return a - math.pi diff --git a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py index 331df36309..248894c1c6 100644 --- a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py +++ b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py @@ -17,43 +17,314 @@ import numpy as np import matplotlib.pyplot as plt import copy -import math import sys import pathlib + sys.path.append(str(pathlib.Path(__file__).parent.parent)) -from QuinticPolynomialsPlanner.quintic_polynomials_planner import \ - QuinticPolynomial +from QuinticPolynomialsPlanner.quintic_polynomials_planner import QuinticPolynomial from CubicSpline import cubic_spline_planner -SIM_LOOP = 500 +from enum import Enum, auto +from FrenetOptimalTrajectory.cartesian_frenet_converter import ( + CartesianFrenetConverter, +) + + +class LateralMovement(Enum): + HIGH_SPEED = auto() + LOW_SPEED = auto() + + +class LongitudinalMovement(Enum): + MERGING_AND_STOPPING = auto() + VELOCITY_KEEPING = auto() + + +# Default Parameters + +LATERAL_MOVEMENT = LateralMovement.HIGH_SPEED +LONGITUDINAL_MOVEMENT = LongitudinalMovement.VELOCITY_KEEPING -# Parameter MAX_SPEED = 50.0 / 3.6 # maximum speed [m/s] -MAX_ACCEL = 2.0 # maximum acceleration [m/ss] +MAX_ACCEL = 5.0 # maximum acceleration [m/ss] MAX_CURVATURE = 1.0 # maximum curvature [1/m] -MAX_ROAD_WIDTH = 7.0 # maximum road width [m] -D_ROAD_W = 1.0 # road width sampling length [m] DT = 0.2 # time tick [s] MAX_T = 5.0 # max prediction time [m] MIN_T = 4.0 # min prediction time [m] -TARGET_SPEED = 30.0 / 3.6 # target speed [m/s] -D_T_S = 5.0 / 3.6 # target speed sampling length [m/s] N_S_SAMPLE = 1 # sampling number of target speed -ROBOT_RADIUS = 2.0 # robot radius [m] # cost weights K_J = 0.1 K_T = 0.1 +K_S_DOT = 1.0 K_D = 1.0 +K_S = 1.0 K_LAT = 1.0 K_LON = 1.0 +SIM_LOOP = 500 show_animation = True -class QuarticPolynomial: +if LATERAL_MOVEMENT == LateralMovement.LOW_SPEED: + MAX_ROAD_WIDTH = 1.0 # maximum road width [m] + D_ROAD_W = 0.2 # road width sampling length [m] + TARGET_SPEED = 3.0 / 3.6 # maximum speed [m/s] + D_T_S = 0.5 / 3.6 # target speed sampling length [m/s] + # Waypoints + WX = [0.0, 2.0, 4.0, 6.0, 8.0, 10.0] + WY = [0.0, 0.0, 1.0, 0.0, -1.0, -2.0] + OBSTACLES = np.array([[3.0, 1.0], [5.0, -0.0], [6.0, 0.5], [8.0, -1.5]]) + ROBOT_RADIUS = 0.5 # robot radius [m] + + # Initial state parameters + INITIAL_SPEED = 1.0 / 3.6 # current speed [m/s] + INITIAL_ACCEL = 0.0 # current acceleration [m/ss] + INITIAL_LAT_POSITION = 0.5 # current lateral position [m] + INITIAL_LAT_SPEED = 0.0 # current lateral speed [m/s] + INITIAL_LAT_ACCELERATION = 0.0 # current lateral acceleration [m/s] + INITIAL_COURSE_POSITION = 0.0 # current course position + + ANIMATION_AREA = 5.0 # Animation area length [m] + + STOP_S = 4.0 # Merge and stop distance [m] + D_S = 0.3 # Stop point sampling length [m] + N_STOP_S_SAMPLE = 3 # Stop point sampling number +else: + MAX_ROAD_WIDTH = 7.0 # maximum road width [m] + D_ROAD_W = 1.0 # road width sampling length [m] + TARGET_SPEED = 30.0 / 3.6 # target speed [m/s] + D_T_S = 5.0 / 3.6 # target speed sampling length [m/s] + # Waypoints + WX = [0.0, 10.0, 20.5, 35.0, 70.5] + WY = [0.0, -6.0, 5.0, 6.5, 0.0] + # Obstacle list + OBSTACLES = np.array( + [[20.0, 10.0], [30.0, 6.0], [30.0, 8.0], [35.0, 8.0], [50.0, 3.0]] + ) + ROBOT_RADIUS = 2.0 # robot radius [m] + + # Initial state parameters + INITIAL_SPEED = 10.0 / 3.6 # current speed [m/s] + INITIAL_ACCEL = 0.0 # current acceleration [m/ss] + INITIAL_LAT_POSITION = 2.0 # current lateral position [m] + INITIAL_LAT_SPEED = 0.0 # current lateral speed [m/s] + INITIAL_LAT_ACCELERATION = 0.0 # current lateral acceleration [m/s] + INITIAL_COURSE_POSITION = 0.0 # current course position + + ANIMATION_AREA = 20.0 # Animation area length [m] + STOP_S = 25.0 # Merge and stop distance [m] + D_S = 2 # Stop point sampling length [m] + N_STOP_S_SAMPLE = 4 # Stop point sampling number + + +class LateralMovementStrategy: + def calc_lateral_trajectory(self, fp, di, c_d, c_d_d, c_d_dd, Ti): + """ + Calculate the lateral trajectory + """ + raise NotImplementedError("calc_lateral_trajectory not implemented") + + def calc_cartesian_parameters(self, fp, csp): + """ + Calculate the cartesian parameters (x, y, yaw, curvature, v, a) + """ + raise NotImplementedError("calc_cartesian_parameters not implemented") + + +class HighSpeedLateralMovementStrategy(LateralMovementStrategy): + def calc_lateral_trajectory(self, fp, di, c_d, c_d_d, c_d_dd, Ti): + tp = copy.deepcopy(fp) + s0_d = fp.s_d[0] + s0_dd = fp.s_dd[0] + # d'(t) = d'(s) * s'(t) + # d''(t) = d''(s) * s'(t)^2 + d'(s) * s''(t) + lat_qp = QuinticPolynomial( + c_d, c_d_d * s0_d, c_d_dd * s0_d**2 + c_d_d * s0_dd, di, 0.0, 0.0, Ti + ) + + tp.d = [] + tp.d_d = [] + tp.d_dd = [] + tp.d_ddd = [] + + # Calculate all derivatives in a single loop to reduce iterations + for i in range(len(fp.t)): + t = fp.t[i] + s_d = fp.s_d[i] + s_dd = fp.s_dd[i] + + s_d_inv = 1.0 / (s_d + 1e-6) + 1e-6 # Avoid division by zero + s_d_inv_sq = s_d_inv * s_d_inv # Square of inverse + + d = lat_qp.calc_point(t) + d_d = lat_qp.calc_first_derivative(t) + d_dd = lat_qp.calc_second_derivative(t) + d_ddd = lat_qp.calc_third_derivative(t) + + tp.d.append(d) + # d'(s) = d'(t) / s'(t) + tp.d_d.append(d_d * s_d_inv) + # d''(s) = (d''(t) - d'(s) * s''(t)) / s'(t)^2 + tp.d_dd.append((d_dd - tp.d_d[i] * s_dd) * s_d_inv_sq) + tp.d_ddd.append(d_ddd) + + return tp + + def calc_cartesian_parameters(self, fp, csp): + # calc global positions + for i in range(len(fp.s)): + ix, iy = csp.calc_position(fp.s[i]) + if ix is None: + break + i_yaw = csp.calc_yaw(fp.s[i]) + i_kappa = csp.calc_curvature(fp.s[i]) + i_dkappa = csp.calc_curvature_rate(fp.s[i]) + s_condition = [fp.s[i], fp.s_d[i], fp.s_dd[i]] + d_condition = [ + fp.d[i], + fp.d_d[i], + fp.d_dd[i], + ] + x, y, theta, kappa, v, a = CartesianFrenetConverter.frenet_to_cartesian( + fp.s[i], ix, iy, i_yaw, i_kappa, i_dkappa, s_condition, d_condition + ) + fp.x.append(x) + fp.y.append(y) + fp.yaw.append(theta) + fp.c.append(kappa) + fp.v.append(v) + fp.a.append(a) + return fp + + +class LowSpeedLateralMovementStrategy(LateralMovementStrategy): + def calc_lateral_trajectory(self, fp, di, c_d, c_d_d, c_d_dd, Ti): + s0 = fp.s[0] + s1 = fp.s[-1] + tp = copy.deepcopy(fp) + # d = d(s), d_d = d'(s), d_dd = d''(s) + # * shift s range from [s0, s1] to [0, s1 - s0] + lat_qp = QuinticPolynomial(c_d, c_d_d, c_d_dd, di, 0.0, 0.0, s1 - s0) + + tp.d = [lat_qp.calc_point(s - s0) for s in fp.s] + tp.d_d = [lat_qp.calc_first_derivative(s - s0) for s in fp.s] + tp.d_dd = [lat_qp.calc_second_derivative(s - s0) for s in fp.s] + tp.d_ddd = [lat_qp.calc_third_derivative(s - s0) for s in fp.s] + return tp + + def calc_cartesian_parameters(self, fp, csp): + # calc global positions + for i in range(len(fp.s)): + ix, iy = csp.calc_position(fp.s[i]) + if ix is None: + break + i_yaw = csp.calc_yaw(fp.s[i]) + i_kappa = csp.calc_curvature(fp.s[i]) + i_dkappa = csp.calc_curvature_rate(fp.s[i]) + s_condition = [fp.s[i], fp.s_d[i], fp.s_dd[i]] + d_condition = [fp.d[i], fp.d_d[i], fp.d_dd[i]] + x, y, theta, kappa, v, a = CartesianFrenetConverter.frenet_to_cartesian( + fp.s[i], ix, iy, i_yaw, i_kappa, i_dkappa, s_condition, d_condition + ) + fp.x.append(x) + fp.y.append(y) + fp.yaw.append(theta) + fp.c.append(kappa) + fp.v.append(v) + fp.a.append(a) + return fp + + +class LongitudinalMovementStrategy: + def calc_longitudinal_trajectory(self, c_speed, c_accel, Ti, s0): + """ + Calculate the longitudinal trajectory + """ + raise NotImplementedError("calc_longitudinal_trajectory not implemented") + + def get_d_arrange(self, s0): + """ + Get the d sample range + """ + raise NotImplementedError("get_d_arrange not implemented") + + def calc_destination_cost(self, fp): + """ + Calculate the destination cost + """ + raise NotImplementedError("calc_destination_cost not implemented") + + +class VelocityKeepingLongitudinalMovementStrategy(LongitudinalMovementStrategy): + def calc_longitudinal_trajectory(self, c_speed, c_accel, Ti, s0): + fplist = [] + for tv in np.arange( + TARGET_SPEED - D_T_S * N_S_SAMPLE, TARGET_SPEED + D_T_S * N_S_SAMPLE, D_T_S + ): + fp = FrenetPath() + lon_qp = QuarticPolynomial(s0, c_speed, c_accel, tv, 0.0, Ti) + fp.t = [t for t in np.arange(0.0, Ti, DT)] + fp.s = [lon_qp.calc_point(t) for t in fp.t] + fp.s_d = [lon_qp.calc_first_derivative(t) for t in fp.t] + fp.s_dd = [lon_qp.calc_second_derivative(t) for t in fp.t] + fp.s_ddd = [lon_qp.calc_third_derivative(t) for t in fp.t] + fplist.append(fp) + return fplist + + def get_d_arrange(self, s0): + return np.arange(-MAX_ROAD_WIDTH, MAX_ROAD_WIDTH, D_ROAD_W) + + def calc_destination_cost(self, fp): + ds = (TARGET_SPEED - fp.s_d[-1]) ** 2 + return K_S_DOT * ds + + +class MergingAndStoppingLongitudinalMovementStrategy(LongitudinalMovementStrategy): + def calc_longitudinal_trajectory(self, c_speed, c_accel, Ti, s0): + if s0 >= STOP_S: + return [] + fplist = [] + for s in np.arange( + STOP_S - D_S * N_STOP_S_SAMPLE, STOP_S + D_S * N_STOP_S_SAMPLE, D_S + ): + fp = FrenetPath() + lon_qp = QuinticPolynomial(s0, c_speed, c_accel, s, 0.0, 0.0, Ti) + fp.t = [t for t in np.arange(0.0, Ti, DT)] + fp.s = [lon_qp.calc_point(t) for t in fp.t] + fp.s_d = [lon_qp.calc_first_derivative(t) for t in fp.t] + fp.s_dd = [lon_qp.calc_second_derivative(t) for t in fp.t] + fp.s_ddd = [lon_qp.calc_third_derivative(t) for t in fp.t] + fplist.append(fp) + return fplist + + def get_d_arrange(self, s0): + # Only if s0 is less than STOP_S / 3, then we sample the road width + if s0 < STOP_S / 3: + return np.arange(-MAX_ROAD_WIDTH, MAX_ROAD_WIDTH, D_ROAD_W) + else: + return [0.0] + + def calc_destination_cost(self, fp): + ds = (STOP_S - fp.s[-1]) ** 2 + return K_S * ds + +LATERAL_MOVEMENT_STRATEGY: LateralMovementStrategy +LONGITUDINAL_MOVEMENT_STRATEGY: LongitudinalMovementStrategy + +if LATERAL_MOVEMENT == LateralMovement.HIGH_SPEED: + LATERAL_MOVEMENT_STRATEGY = HighSpeedLateralMovementStrategy() +else: + LATERAL_MOVEMENT_STRATEGY = LowSpeedLateralMovementStrategy() + +if LONGITUDINAL_MOVEMENT == LongitudinalMovement.VELOCITY_KEEPING: + LONGITUDINAL_MOVEMENT_STRATEGY = VelocityKeepingLongitudinalMovementStrategy() +else: + LONGITUDINAL_MOVEMENT_STRATEGY = MergingAndStoppingLongitudinalMovementStrategy() + +class QuarticPolynomial: def __init__(self, xs, vxs, axs, vxe, axe, time): # calc coefficient of quartic polynomial @@ -61,29 +332,25 @@ def __init__(self, xs, vxs, axs, vxe, axe, time): self.a1 = vxs self.a2 = axs / 2.0 - A = np.array([[3 * time ** 2, 4 * time ** 3], - [6 * time, 12 * time ** 2]]) - b = np.array([vxe - self.a1 - 2 * self.a2 * time, - axe - 2 * self.a2]) + A = np.array([[3 * time**2, 4 * time**3], [6 * time, 12 * time**2]]) + b = np.array([vxe - self.a1 - 2 * self.a2 * time, axe - 2 * self.a2]) x = np.linalg.solve(A, b) self.a3 = x[0] self.a4 = x[1] def calc_point(self, t): - xt = self.a0 + self.a1 * t + self.a2 * t ** 2 + \ - self.a3 * t ** 3 + self.a4 * t ** 4 + xt = self.a0 + self.a1 * t + self.a2 * t**2 + self.a3 * t**3 + self.a4 * t**4 return xt def calc_first_derivative(self, t): - xt = self.a1 + 2 * self.a2 * t + \ - 3 * self.a3 * t ** 2 + 4 * self.a4 * t ** 3 + xt = self.a1 + 2 * self.a2 * t + 3 * self.a3 * t**2 + 4 * self.a4 * t**3 return xt def calc_second_derivative(self, t): - xt = 2 * self.a2 + 6 * self.a3 * t + 12 * self.a4 * t ** 2 + xt = 2 * self.a2 + 6 * self.a3 * t + 12 * self.a4 * t**2 return xt @@ -94,111 +361,85 @@ def calc_third_derivative(self, t): class FrenetPath: - def __init__(self): self.t = [] self.d = [] - self.d_d = [] - self.d_dd = [] - self.d_ddd = [] + self.d_d = [] # d'(s) + self.d_dd = [] # d''(s) + self.d_ddd = [] # d'''(t) in low speed / d'''(s) in high speed self.s = [] - self.s_d = [] - self.s_dd = [] - self.s_ddd = [] - self.cd = 0.0 - self.cv = 0.0 + self.s_d = [] # s'(t) + self.s_dd = [] # s''(t) + self.s_ddd = [] # s'''(t) self.cf = 0.0 self.x = [] self.y = [] self.yaw = [] + self.v = [] + self.a = [] self.ds = [] self.c = [] - -def calc_frenet_paths(c_speed, c_accel, c_d, c_d_d, c_d_dd, s0): + def pop_front(self): + self.x.pop(0) + self.y.pop(0) + self.yaw.pop(0) + self.v.pop(0) + self.a.pop(0) + self.s.pop(0) + self.s_d.pop(0) + self.s_dd.pop(0) + self.s_ddd.pop(0) + self.d.pop(0) + self.d_d.pop(0) + self.d_dd.pop(0) + self.d_ddd.pop(0) + + +def calc_frenet_paths(c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, s0): frenet_paths = [] - # generate path to each offset goal - for di in np.arange(-MAX_ROAD_WIDTH, MAX_ROAD_WIDTH, D_ROAD_W): - - # Lateral motion planning - for Ti in np.arange(MIN_T, MAX_T, DT): - fp = FrenetPath() - - # lat_qp = quintic_polynomial(c_d, c_d_d, c_d_dd, di, 0.0, 0.0, Ti) - lat_qp = QuinticPolynomial(c_d, c_d_d, c_d_dd, di, 0.0, 0.0, Ti) - - fp.t = [t for t in np.arange(0.0, Ti, DT)] - fp.d = [lat_qp.calc_point(t) for t in fp.t] - fp.d_d = [lat_qp.calc_first_derivative(t) for t in fp.t] - fp.d_dd = [lat_qp.calc_second_derivative(t) for t in fp.t] - fp.d_ddd = [lat_qp.calc_third_derivative(t) for t in fp.t] - - # Longitudinal motion planning (Velocity keeping) - for tv in np.arange(TARGET_SPEED - D_T_S * N_S_SAMPLE, - TARGET_SPEED + D_T_S * N_S_SAMPLE, D_T_S): - tfp = copy.deepcopy(fp) - lon_qp = QuarticPolynomial(s0, c_speed, c_accel, tv, 0.0, Ti) - - tfp.s = [lon_qp.calc_point(t) for t in fp.t] - tfp.s_d = [lon_qp.calc_first_derivative(t) for t in fp.t] - tfp.s_dd = [lon_qp.calc_second_derivative(t) for t in fp.t] - tfp.s_ddd = [lon_qp.calc_third_derivative(t) for t in fp.t] - - Jp = sum(np.power(tfp.d_ddd, 2)) # square of jerk - Js = sum(np.power(tfp.s_ddd, 2)) # square of jerk - - # square of diff from target speed - ds = (TARGET_SPEED - tfp.s_d[-1]) ** 2 - - tfp.cd = K_J * Jp + K_T * Ti + K_D * tfp.d[-1] ** 2 - tfp.cv = K_J * Js + K_T * Ti + K_D * ds - tfp.cf = K_LAT * tfp.cd + K_LON * tfp.cv - - frenet_paths.append(tfp) + for Ti in np.arange(MIN_T, MAX_T, DT): + lon_paths = LONGITUDINAL_MOVEMENT_STRATEGY.calc_longitudinal_trajectory( + c_s_d, c_s_dd, Ti, s0 + ) + + for fp in lon_paths: + for di in LONGITUDINAL_MOVEMENT_STRATEGY.get_d_arrange(s0): + tp = LATERAL_MOVEMENT_STRATEGY.calc_lateral_trajectory( + fp, di, c_d, c_d_d, c_d_dd, Ti + ) + + Jp = sum(np.power(tp.d_ddd, 2)) # square of jerk + Js = sum(np.power(tp.s_ddd, 2)) # square of jerk + + lat_cost = K_J * Jp + K_T * Ti + K_D * tp.d[-1] ** 2 + lon_cost = ( + K_J * Js + + K_T * Ti + + LONGITUDINAL_MOVEMENT_STRATEGY.calc_destination_cost(tp) + ) + tp.cf = K_LAT * lat_cost + K_LON * lon_cost + frenet_paths.append(tp) return frenet_paths def calc_global_paths(fplist, csp): - for fp in fplist: - - # calc global positions - for i in range(len(fp.s)): - ix, iy = csp.calc_position(fp.s[i]) - if ix is None: - break - i_yaw = csp.calc_yaw(fp.s[i]) - di = fp.d[i] - fx = ix + di * math.cos(i_yaw + math.pi / 2.0) - fy = iy + di * math.sin(i_yaw + math.pi / 2.0) - fp.x.append(fx) - fp.y.append(fy) - - # calc yaw and ds - for i in range(len(fp.x) - 1): - dx = fp.x[i + 1] - fp.x[i] - dy = fp.y[i + 1] - fp.y[i] - fp.yaw.append(math.atan2(dy, dx)) - fp.ds.append(math.hypot(dx, dy)) - - fp.yaw.append(fp.yaw[-1]) - fp.ds.append(fp.ds[-1]) - - # calc curvature - for i in range(len(fp.yaw) - 1): - fp.c.append((fp.yaw[i + 1] - fp.yaw[i]) / fp.ds[i]) - - return fplist + return [ + LATERAL_MOVEMENT_STRATEGY.calc_cartesian_parameters(fp, csp) for fp in fplist + ] def check_collision(fp, ob): for i in range(len(ob[:, 0])): - d = [((ix - ob[i, 0]) ** 2 + (iy - ob[i, 1]) ** 2) - for (ix, iy) in zip(fp.x, fp.y)] + d = [ + ((ix - ob[i, 0]) ** 2 + (iy - ob[i, 1]) ** 2) + for (ix, iy) in zip(fp.x, fp.y) + ] - collision = any([di <= ROBOT_RADIUS ** 2 for di in d]) + collision = any([di <= ROBOT_RADIUS**2 for di in d]) if collision: return False @@ -207,38 +448,41 @@ def check_collision(fp, ob): def check_paths(fplist, ob): - ok_ind = [] + path_dict = { + "max_speed_error": [], + "max_accel_error": [], + "max_curvature_error": [], + "collision_error": [], + "ok": [], + } for i, _ in enumerate(fplist): - if any([v > MAX_SPEED for v in fplist[i].s_d]): # Max speed check - continue - elif any([abs(a) > MAX_ACCEL for a in - fplist[i].s_dd]): # Max accel check - continue - elif any([abs(c) > MAX_CURVATURE for c in - fplist[i].c]): # Max curvature check - continue + if any([v > MAX_SPEED for v in fplist[i].v]): # Max speed check + path_dict["max_speed_error"].append(fplist[i]) + elif any([abs(a) > MAX_ACCEL for a in fplist[i].a]): # Max accel check + path_dict["max_accel_error"].append(fplist[i]) + elif any([abs(c) > MAX_CURVATURE for c in fplist[i].c]): # Max curvature check + path_dict["max_curvature_error"].append(fplist[i]) elif not check_collision(fplist[i], ob): - continue + path_dict["collision_error"].append(fplist[i]) + else: + path_dict["ok"].append(fplist[i]) + return path_dict - ok_ind.append(i) - return [fplist[i] for i in ok_ind] - - -def frenet_optimal_planning(csp, s0, c_speed, c_accel, c_d, c_d_d, c_d_dd, ob): - fplist = calc_frenet_paths(c_speed, c_accel, c_d, c_d_d, c_d_dd, s0) +def frenet_optimal_planning(csp, s0, c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, ob): + fplist = calc_frenet_paths(c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, s0) fplist = calc_global_paths(fplist, csp) - fplist = check_paths(fplist, ob) + fpdict = check_paths(fplist, ob) # find minimum cost path min_cost = float("inf") best_path = None - for fp in fplist: + for fp in fpdict["ok"]: if min_cost >= fp.cf: min_cost = fp.cf best_path = fp - return best_path + return [best_path, fpdict] def generate_target_course(x, y): @@ -259,40 +503,39 @@ def generate_target_course(x, y): def main(): print(__file__ + " start!!") - # way points - wx = [0.0, 10.0, 20.5, 35.0, 70.5] - wy = [0.0, -6.0, 5.0, 6.5, 0.0] - # obstacle lists - ob = np.array([[20.0, 10.0], - [30.0, 6.0], - [30.0, 8.0], - [35.0, 8.0], - [50.0, 3.0] - ]) - - tx, ty, tyaw, tc, csp = generate_target_course(wx, wy) - - # initial state - c_speed = 10.0 / 3.6 # current speed [m/s] - c_accel = 0.0 # current acceleration [m/ss] - c_d = 2.0 # current lateral position [m] - c_d_d = 0.0 # current lateral speed [m/s] - c_d_dd = 0.0 # current lateral acceleration [m/s] - s0 = 0.0 # current course position - - area = 20.0 # animation area length [m] + tx, ty, tyaw, tc, csp = generate_target_course(WX, WY) + + # Initialize state using global parameters + c_s_d = INITIAL_SPEED + c_s_dd = INITIAL_ACCEL + c_d = INITIAL_LAT_POSITION + c_d_d = INITIAL_LAT_SPEED + c_d_dd = INITIAL_LAT_ACCELERATION + s0 = INITIAL_COURSE_POSITION + + area = ANIMATION_AREA + + last_path = None for i in range(SIM_LOOP): - path = frenet_optimal_planning( - csp, s0, c_speed, c_accel, c_d, c_d_d, c_d_dd, ob) + [path, fpdict] = frenet_optimal_planning( + csp, s0, c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, OBSTACLES + ) + + if path is None: + path = copy.deepcopy(last_path) + path.pop_front() + if len(path.x) <= 1: + print("Finish") + break + last_path = path s0 = path.s[1] c_d = path.d[1] c_d_d = path.d_d[1] c_d_dd = path.d_dd[1] - c_speed = path.s_d[1] - c_accel = path.s_dd[1] - + c_s_d = path.s_d[1] + c_s_dd = path.s_dd[1] if np.hypot(path.x[1] - tx[-1], path.y[1] - ty[-1]) <= 1.0: print("Goal") break @@ -301,15 +544,16 @@ def main(): plt.cla() # for stopping simulation with the esc key. plt.gcf().canvas.mpl_connect( - 'key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + "key_release_event", + lambda event: [exit(0) if event.key == "escape" else None], + ) plt.plot(tx, ty) - plt.plot(ob[:, 0], ob[:, 1], "xk") + plt.plot(OBSTACLES[:, 0], OBSTACLES[:, 1], "xk") plt.plot(path.x[1:], path.y[1:], "-or") plt.plot(path.x[1], path.y[1], "vc") plt.xlim(path.x[1] - area, path.x[1] + area) plt.ylim(path.y[1] - area, path.y[1] + area) - plt.title("v[km/h]:" + str(c_speed * 3.6)[0:4]) + plt.title("v[km/h]:" + str(path.v[1] * 3.6)[0:4]) plt.grid(True) plt.pause(0.0001) @@ -320,5 +564,5 @@ def main(): plt.show() -if __name__ == '__main__': +if __name__ == "__main__": main() diff --git a/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst index e9d9041e0e..38efaf2b53 100644 --- a/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst +++ b/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst @@ -1,14 +1,40 @@ Optimal Trajectory in a Frenet Frame ------------------------------------ -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/animation.gif - This is optimal trajectory generation in a Frenet Frame. The cyan line is the target course and black crosses are obstacles. The red line is predicted path. +High Speed and Velocity Keeping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_velocity_keeping_frenet_path.gif + +This scenario shows how the trajectory is maintained at high speeds while keeping a consistent velocity. + +High Speed and Merging and Stopping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_merging_and_stopping_frenet_path.gif + +This scenario demonstrates the trajectory planning at high speeds with merging and stopping behaviors. + +Low Speed and Velocity Keeping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/low_speed_and_velocity_keeping_frenet_path.gif + +This scenario demonstrates how the trajectory is managed at low speeds while maintaining a steady velocity. + +Low Speed and Merging and Stopping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/low_speed_and_merging_and_stopping_frenet_path.gif + +This scenario illustrates the trajectory planning at low speeds with merging and stopping behaviors. + Ref: - `Optimal Trajectory Generation for Dynamic Street Scenarios in a diff --git a/tests/test_frenet_optimal_trajectory.py b/tests/test_frenet_optimal_trajectory.py index 72bb7a8341..b8761ff4a6 100644 --- a/tests/test_frenet_optimal_trajectory.py +++ b/tests/test_frenet_optimal_trajectory.py @@ -1,12 +1,48 @@ import conftest from PathPlanning.FrenetOptimalTrajectory import frenet_optimal_trajectory as m +from PathPlanning.FrenetOptimalTrajectory.frenet_optimal_trajectory import ( + LateralMovement, + LongitudinalMovement, +) -def test1(): +def default_scenario_test(): m.show_animation = False m.SIM_LOOP = 5 m.main() -if __name__ == '__main__': +def high_speed_and_merging_and_stopping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.HIGH_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.MERGING_AND_STOPPING + m.SIM_LOOP = 5 + m.main() + + +def high_speed_and_velocity_keeping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.HIGH_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.VELOCITY_KEEPING + m.SIM_LOOP = 5 + m.main() + + +def low_speed_and_velocity_keeping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.LOW_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.VELOCITY_KEEPING + m.SIM_LOOP = 5 + m.main() + + +def low_speed_and_merging_and_stopping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.LOW_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.MERGING_AND_STOPPING + m.SIM_LOOP = 5 + m.main() + + +if __name__ == "__main__": conftest.run_this_test(__file__) From 95eedba44713883d805fb92ff74aabbe1fa4f735 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 24 Jan 2025 13:24:26 +0900 Subject: [PATCH 300/414] Fix lint error (#1124) --- .../arm_obstacle_navigation.py | 4 ++-- .../arm_obstacle_navigation_2.py | 4 ++-- .../dynamic_movement_primitives.py | 13 ++++++------- .../Eta3SplineTrajectory/eta3_spline_trajectory.py | 7 +++---- PathPlanning/RRT/sobol/sobol.py | 12 ++++++------ 5 files changed, 19 insertions(+), 21 deletions(-) diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py index e377897e54..593db42b34 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py @@ -158,7 +158,7 @@ def astar_torus(grid, start_node, goal_node): while parent_map[route[0][0]][route[0][1]] != (): route.insert(0, parent_map[route[0][0]][route[0][1]]) - print("The route found covers %d grid cells." % len(route)) + print(f"The route found covers {len(route)} grid cells.") for i in range(1, len(route)): grid[route[i]] = 6 plt.cla() @@ -212,7 +212,7 @@ def calc_heuristic_map(M, goal_node): return heuristic_map -class NLinkArm(object): +class NLinkArm: """ Class for controlling and plotting a planar arm with an arbitrary number of links. """ diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 10f4615c34..5295b7ca3a 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -189,7 +189,7 @@ def astar_torus(grid, start_node, goal_node): while parent_map[route[0][0]][route[0][1]] != (): route.insert(0, parent_map[route[0][0]][route[0][1]]) - print("The route found covers %d grid cells." % len(route)) + print(f"The route found covers {len(route)} grid cells.") for i in range(1, len(route)): grid[route[i]] = 6 plt.cla() @@ -243,7 +243,7 @@ def calc_heuristic_map(M, goal_node): return heuristic_map -class NLinkArm(object): +class NLinkArm: """ Class for controlling and plotting a planar arm with an arbitrary number of links. """ diff --git a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py index 468d3b9f97..aa34934c0e 100644 --- a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py +++ b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py @@ -18,7 +18,7 @@ import numpy as np -class DMP(object): +class DMP: def __init__(self, training_data, data_period, K=156.25, B=25): """ @@ -215,21 +215,21 @@ def show_DMP_purpose(self): T_vals = np.linspace(T_orig, 2*T_orig, 20) for new_q0_value in q0_vals: - plot_title = "Initial Position = [%s, %s]" % \ - (round(new_q0_value[0], 2), round(new_q0_value[1], 2)) + plot_title = (f"Initial Position = [{round(new_q0_value[0], 2)}," + f" {round(new_q0_value[1], 2)}]") _, path = self.recreate_trajectory(new_q0_value, g_orig, T_orig) self.view_trajectory(path, title=plot_title, demo=True) for new_g_value in g_vals: - plot_title = "Goal Position = [%s, %s]" % \ - (round(new_g_value[0], 2), round(new_g_value[1], 2)) + plot_title = (f"Goal Position = [{round(new_g_value[0], 2)}," + f" {round(new_g_value[1], 2)}]") _, path = self.recreate_trajectory(q0_orig, new_g_value, T_orig) self.view_trajectory(path, title=plot_title, demo=True) for new_T_value in T_vals: - plot_title = "Period = %s [sec]" % round(new_T_value, 2) + plot_title = f"Period = {round(new_T_value, 2)} [sec]" _, path = self.recreate_trajectory(q0_orig, g_orig, new_T_value) self.view_trajectory(path, title=plot_title, demo=True) @@ -257,5 +257,4 @@ def example_DMP(): if __name__ == '__main__': - example_DMP() diff --git a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py index d034cb8a32..2dab7a7add 100644 --- a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py +++ b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py @@ -26,8 +26,7 @@ class MaxVelocityNotReached(Exception): def __init__(self, actual_vel, max_vel): - self.message = 'Actual velocity {} does not equal desired max velocity {}!'.format( - actual_vel, max_vel) + self.message = f'Actual velocity {actual_vel} does not equal desired max velocity {max_vel}!' class eta3_trajectory(Eta3Path): @@ -42,7 +41,7 @@ def __init__(self, segments, max_vel, v0=0.0, a0=0.0, max_accel=2.0, max_jerk=5. # ensure that all inputs obey the assumptions of the model assert max_vel > 0 and v0 >= 0 and a0 >= 0 and max_accel > 0 and max_jerk > 0 \ and a0 <= max_accel and v0 <= max_vel - super(eta3_trajectory, self).__init__(segments=segments) + super(__class__, self).__init__(segments=segments) self.total_length = sum([s.segment_length for s in self.segments]) self.max_vel = float(max_vel) self.v0 = float(v0) @@ -166,7 +165,7 @@ def velocity_profile(self): try: assert np.isclose(self.vels[index], 0) except AssertionError as e: - print('The final velocity {} is not zero'.format(self.vels[index])) + print(f'The final velocity {self.vels[index]} is not zero') raise e self.seg_lengths[index] = s_sf diff --git a/PathPlanning/RRT/sobol/sobol.py b/PathPlanning/RRT/sobol/sobol.py index 428ba58a98..cddc9d7c72 100644 --- a/PathPlanning/RRT/sobol/sobol.py +++ b/PathPlanning/RRT/sobol/sobol.py @@ -370,8 +370,8 @@ def i4_sobol(dim_num, seed): if (dim_num < 1 or dim_max < dim_num): print('I4_SOBOL - Fatal error!') print(' The spatial dimension DIM_NUM should satisfy:') - print(' 1 <= DIM_NUM <= %d' % dim_max) - print(' But this input value is DIM_NUM = %d' % dim_num) + print(f' 1 <= DIM_NUM <= {dim_max:d}') + print(f' But this input value is DIM_NUM = {dim_num:d}') return None dim_num_save = dim_num @@ -443,7 +443,7 @@ def i4_sobol(dim_num, seed): # l_var = i4_bit_lo0(seed) - elif (seed <= seed_save): + elif seed <= seed_save: seed_save = 0 lastq = np.zeros(dim_num) @@ -471,8 +471,8 @@ def i4_sobol(dim_num, seed): if maxcol < l_var: print('I4_SOBOL - Fatal error!') print(' Too many calls!') - print(' MAXCOL = %d\n' % maxcol) - print(' L = %d\n' % l_var) + print(f' MAXCOL = {maxcol:d}\n') + print(f' L = {l_var:d}\n') return None @@ -819,7 +819,7 @@ def r8mat_write(filename, m, n, a): with open(filename, 'w') as output: for i in range(0, m): for j in range(0, n): - s = ' %g' % (a[i, j]) + s = f' {a[i, j]:g}' output.write(s) output.write('\n') From 2a489b3b82d3d0a3152cf7641fa137deb116972d Mon Sep 17 00:00:00 2001 From: parmaski <89462537+parmaski@users.noreply.github.com> Date: Fri, 24 Jan 2025 13:28:12 +0900 Subject: [PATCH 301/414] Fix: dead link URL in doc (#1087) * fix dead url links * change link to MPC course * remove dead link --- .github/FUNDING.yml | 2 +- .../arm_obstacle_navigation.py | 2 +- .../arm_obstacle_navigation_2.py | 2 +- PathPlanning/BugPlanning/bug.py | 2 +- .../dynamic_movement_primitives.py | 2 +- .../eta3_spline_trajectory.py | 2 +- .../InformedRRTStar/informed_rrt_star.py | 2 +- .../quintic_polynomials_planner.py | 2 +- PathPlanning/RRT/sobol/sobol.py | 2 +- .../state_lattice_planner.py | 4 ++-- .../wavefront_coverage_path_planner.py | 2 +- PathTracking/cgmres_nmpc/cgmres_nmpc.py | 2 +- README.md | 21 +++++++++---------- SLAM/GraphBasedSLAM/data/README.rst | 2 +- appveyor.yml | 2 +- docs/conf.py | 2 +- docs/getting_started_main.rst | 2 +- docs/how_to_contribute_main.rst | 2 +- docs/make.bat | 2 +- .../particle_filter_localization_main.rst | 2 +- .../rectangle_fitting_main.rst | 4 ++-- .../bezier_path/bezier_path_main.rst | 2 +- .../bugplanner/bugplanner_main.rst | 2 +- .../coverage_path/coverage_path_main.rst | 2 +- .../dubins_path/dubins_path_main.rst | 2 +- ...l_predictive_trajectory_generator_main.rst | 2 +- .../quintic_polynomials_planner_main.rst | 2 +- .../reeds_shepp_path_main.rst | 2 +- docs/modules/path_planning/rrt/rrt_main.rst | 8 +++---- docs/modules/path_planning/rrt/rrt_star.rst | 2 +- .../state_lattice_planner_main.rst | 4 ++-- .../cgmres_nmpc/cgmres_nmpc_main.rst | 2 +- .../lqr_speed_and_steering_control_main.rst | 2 +- ...ictive_speed_and_steering_control_main.rst | 4 ++-- users_comments.md | 16 +++++--------- 35 files changed, 55 insertions(+), 62 deletions(-) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 24f0926299..0d943696cc 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,4 +1,4 @@ # These are supported funding model platforms github: AtsushiSakai patreon: myenigma -custom: https://www.paypal.me/myenigmapay/ +custom: https://www.paypal.com/paypalme/myenigmapay/ diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py index 593db42b34..9047c13851 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py @@ -34,7 +34,7 @@ def detect_collision(line_seg, circle): """ Determines whether a line segment (arm link) is in contact with a circle (obstacle). - Credit to: http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html + Credit to: https://web.archive.org/web/20200130224918/http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html Args: line_seg: List of coordinates of line segment endpoints e.g. [[1, 1], [2, 2]] circle: List of circle coordinates and radius e.g. [0, 0, 0.5] is a circle centered diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 5295b7ca3a..f5d435082a 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -66,7 +66,7 @@ def detect_collision(line_seg, circle): """ Determines whether a line segment (arm link) is in contact with a circle (obstacle). - Credit to: http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html + Credit to: https://web.archive.org/web/20200130224918/http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html Args: line_seg: List of coordinates of line segment endpoints e.g. [[1, 1], [2, 2]] circle: List of circle coordinates and radius e.g. [0, 0, 0.5] is a circle centered diff --git a/PathPlanning/BugPlanning/bug.py b/PathPlanning/BugPlanning/bug.py index 62fec7c109..34890cb55a 100644 --- a/PathPlanning/BugPlanning/bug.py +++ b/PathPlanning/BugPlanning/bug.py @@ -1,7 +1,7 @@ """ Bug Planning author: Sarim Mehdi(muhammadsarim.mehdi@studio.unibo.it) -Source: https://sites.google.com/site/ece452bugalgorithms/ +Source: https://web.archive.org/web/20201103052224/https://sites.google.com/site/ece452bugalgorithms/ """ import numpy as np diff --git a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py index aa34934c0e..9ccd18b7c2 100644 --- a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py +++ b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py @@ -9,7 +9,7 @@ More information on Dynamic Movement Primitives available at: https://arxiv.org/abs/2102.03861 -https://www.frontiersin.org/articles/10.3389/fncom.2013.00138/full +https://www.frontiersin.org/journals/computational-neuroscience/articles/10.3389/fncom.2013.00138/full """ diff --git a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py index 2dab7a7add..a73797dacb 100644 --- a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py +++ b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py @@ -6,7 +6,7 @@ Atsushi Sakai (@Atsushi_twi) Refs: -- https://jwdinius.github.io/blog/2018/eta3traj +- https://jwdinius.github.io/blog/2018/eta3traj/ - [eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots] (https://ieeexplore.ieee.org/document/4339545/) diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index c37326e490..0483949c99 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -6,7 +6,7 @@ Reference: Informed RRT*: Optimal Sampling-based Path planning Focused via Direct Sampling of an Admissible Ellipsoidal Heuristic -https://arxiv.org/pdf/1404.2334.pdf +https://arxiv.org/pdf/1404.2334 """ import sys diff --git a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py index 8ba11a23d2..fdc181afab 100644 --- a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py +++ b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py @@ -6,7 +6,7 @@ Ref: -- [Local Path planning And Motion Control For Agv In Positioning](http://ieeexplore.ieee.org/document/637936/) +- [Local Path planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) """ diff --git a/PathPlanning/RRT/sobol/sobol.py b/PathPlanning/RRT/sobol/sobol.py index cddc9d7c72..520d686a1d 100644 --- a/PathPlanning/RRT/sobol/sobol.py +++ b/PathPlanning/RRT/sobol/sobol.py @@ -13,7 +13,7 @@ PYTHON versions by Corrado Chisari Original code is available at - http://people.sc.fsu.edu/~jburkardt/py_src/sobol/sobol.html + https://people.sc.fsu.edu/~jburkardt/py_src/sobol/sobol.html Note: the i4 prefix means that the function takes a numeric argument or returns a number which is interpreted inside the function as a 4 diff --git a/PathPlanning/StateLatticePlanner/state_lattice_planner.py b/PathPlanning/StateLatticePlanner/state_lattice_planner.py index f4b1461b7a..7f8e725e0a 100644 --- a/PathPlanning/StateLatticePlanner/state_lattice_planner.py +++ b/PathPlanning/StateLatticePlanner/state_lattice_planner.py @@ -12,8 +12,8 @@ - State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments -http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.187.8210&rep=rep1 -&type=pdf +https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf +&doi=e2256b5b24137f89e473f01df288cb3aa72e56a0 """ import sys diff --git a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py index 7e93caa8fb..c5a139454b 100644 --- a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py +++ b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py @@ -4,7 +4,7 @@ author: Todd Tang paper: Planning paths of complete coverage of an unstructured environment by a mobile robot - Zelinsky et.al. -link: http://pinkwink.kr/attachment/cfile3.uf@1354654A4E8945BD13FE77.pdf +link: https://pinkwink.kr/attachment/cfile3.uf@1354654A4E8945BD13FE77.pdf """ import os diff --git a/PathTracking/cgmres_nmpc/cgmres_nmpc.py b/PathTracking/cgmres_nmpc/cgmres_nmpc.py index bb5699b888..a582c9da81 100644 --- a/PathTracking/cgmres_nmpc/cgmres_nmpc.py +++ b/PathTracking/cgmres_nmpc/cgmres_nmpc.py @@ -6,7 +6,7 @@ Ref: Shunichi09/nonlinear_control: Implementing the nonlinear model predictive -control, sliding mode control https://github.com/Shunichi09/nonlinear_control +control, sliding mode control https://github.com/Shunichi09/PythonLinearNonlinearControl """ diff --git a/README.md b/README.md index ee40dfc7eb..ec65342430 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,6 @@ ![GitHub_Action_MacOS_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/MacOS_CI/badge.svg) ![GitHub_Action_Windows_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Windows_CI/badge.svg) [![Build status](https://ci.appveyor.com/api/projects/status/sb279kxuv1be391g?svg=true)](https://ci.appveyor.com/project/AtsushiSakai/pythonrobotics) -[![codecov](https://codecov.io/gh/AtsushiSakai/PythonRobotics/branch/master/graph/badge.svg)](https://codecov.io/gh/AtsushiSakai/PythonRobotics) Python codes for robotics algorithm. @@ -111,7 +110,7 @@ For development: - [pytest-xdist](https://pypi.org/project/pytest-xdist/) (for parallel unit tests) -- [mypy](http://mypy-lang.org/) (for type check) +- [mypy](https://mypy-lang.org/) (for type check) - [sphinx](https://www.sphinx-doc.org/) (for document generation) @@ -328,7 +327,7 @@ The animation shows a robot finding its path and rerouting to avoid obstacles as Refs: -- [D* Lite](http://idm-lab.org/bib/abstracts/papers/aaai02b.pd) +- [D* Lite](http://idm-lab.org/bib/abstracts/papers/aaai02b.pdf) - [Improved Fast Replanning for Robot Navigation in Unknown Terrain](http://www.cs.cmu.edu/~maxim/files/dlite_icra02.pdf) ### Potential Field algorithm @@ -357,9 +356,9 @@ This code uses the model predictive trajectory generator to solve boundary probl Ref: -- [Optimal rough terrain trajectory generation for wheeled mobile robots](http://journals.sagepub.com/doi/pdf/10.1177/0278364906075328) +- [Optimal rough terrain trajectory generation for wheeled mobile robots](https://journals.sagepub.com/doi/pdf/10.1177/0278364906075328) -- [State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments](http://www.frc.ri.cmu.edu/~alonzo/pubs/papers/JFR_08_SS_Sampling.pdf) +- [State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments](https://www.frc.ri.cmu.edu/~alonzo/pubs/papers/JFR_08_SS_Sampling.pdf) ### Biased polar sampling @@ -403,7 +402,7 @@ Ref: - [Incremental Sampling-based Algorithms for Optimal Motion Planning](https://arxiv.org/abs/1005.0416) -- [Sampling-based Algorithms for Optimal Motion Planning](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.419.5503&rep=rep1&type=pdf) +- [Sampling-based Algorithms for Optimal Motion Planning](https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=bddbc99f97173430aa49a0ada53ab5bade5902fa) ### RRT\* with reeds-shepp path @@ -421,7 +420,7 @@ A double integrator motion model is used for LQR local planner. Ref: -- [LQR\-RRT\*: Optimal Sampling\-Based Motion Planning with Automatically Derived Extension Heuristics](http://lis.csail.mit.edu/pubs/perez-icra12.pdf) +- [LQR\-RRT\*: Optimal Sampling\-Based Motion Planning with Automatically Derived Extension Heuristics](https://lis.csail.mit.edu/pubs/perez-icra12.pdf) - [MahanFathi/LQR\-RRTstar: LQR\-RRT\* method is used for random motion planning of a simple pendulum in its phase plot](https://github.com/MahanFathi/LQR-RRTstar) @@ -436,7 +435,7 @@ It can calculate a 2D path, velocity, and acceleration profile based on quintic Ref: -- [Local Path Planning And Motion Control For Agv In Positioning](http://ieeexplore.ieee.org/document/637936/) +- [Local Path Planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) ## Reeds Shepp planning @@ -523,7 +522,7 @@ Path tracking simulation with LQR speed and steering control. Ref: -- [Towards fully autonomous driving: Systems and algorithms \- IEEE Conference Publication](http://ieeexplore.ieee.org/document/5940562/) +- [Towards fully autonomous driving: Systems and algorithms \- IEEE Conference Publication](https://ieeexplore.ieee.org/document/5940562/) ## Model predictive speed and steering control @@ -630,7 +629,7 @@ If you or your company would like to support this project, please consider: - [Become a backer or sponsor on Patreon](https://www.patreon.com/myenigma) -- [One-time donation via PayPal](https://www.paypal.me/myenigmapay/) +- [One-time donation via PayPal](https://www.paypal.com/paypalme/myenigmapay/) If you would like to support us in some other way, please contact with creating an issue. @@ -640,7 +639,7 @@ If you would like to support us in some other way, please contact with creating They are providing a free license of their IDEs for this OSS development. -### [1Password](https://github.com/1Password/1password-teams-open-source) +### [1Password](https://github.com/1Password/for-open-source) They are providing a free license of their 1Password team license for this OSS project. diff --git a/SLAM/GraphBasedSLAM/data/README.rst b/SLAM/GraphBasedSLAM/data/README.rst index c875cce73f..15bc5b6c03 100644 --- a/SLAM/GraphBasedSLAM/data/README.rst +++ b/SLAM/GraphBasedSLAM/data/README.rst @@ -3,4 +3,4 @@ Acknowledgments and References Thanks to Luca Larlone for allowing inclusion of the `Intel dataset `_ in this repo. -1. Carlone, L. and Censi, A., 2014. `From angular manifolds to the integer lattice: Guaranteed orientation estimation with application to pose graph optimization `_. IEEE Transactions on Robotics, 30(2), pp.475-492. +1. Carlone, L. and Censi, A., 2014. `From angular manifolds to the integer lattice: Guaranteed orientation estimation with application to pose graph optimization `_. IEEE Transactions on Robotics, 30(2), pp.475-492. diff --git a/appveyor.yml b/appveyor.yml index 4964bab3da..05ad8a2820 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,7 +4,7 @@ environment: global: # SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the # /E:ON and /V:ON options are not enabled in the batch script intepreter - # See: http://stackoverflow.com/a/13751649/163740 + # See: https://stackoverflow.com/a/13751649/163740 CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\appveyor\\run_with_env.cmd" matrix: diff --git a/docs/conf.py b/docs/conf.py index 46f69cf17b..4e06f3f988 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -3,7 +3,7 @@ # # This file does only contain a selection of the most common options. For a # full list see the documentation: -# http://www.sphinx-doc.org/en/master/config +# https://www.sphinx-doc.org/en/master/config # -- Path setup -------------------------------------------------------------- diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 88f218545e..004d68227b 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -49,7 +49,7 @@ For development: .. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist .. _`mypy`: https://mypy-lang.org/ .. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html -.. _`ruff`: https://github.com/charliermarsh/ruff +.. _`ruff`: https://github.com/astral-sh/ruff How to use diff --git a/docs/how_to_contribute_main.rst b/docs/how_to_contribute_main.rst index 48895d6fda..915b2155e4 100644 --- a/docs/how_to_contribute_main.rst +++ b/docs/how_to_contribute_main.rst @@ -159,6 +159,6 @@ Sponsors .. _`JetBrains`: https://www.jetbrains.com/ .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma -.. _`One-time donation via PayPal`: https://www.paypal.me/myenigmapay/ +.. _`One-time donation via PayPal`: https://www.paypal.com/paypalme/myenigmapay/ diff --git a/docs/make.bat b/docs/make.bat index 6aab964dcc..07dcebea41 100644 --- a/docs/make.bat +++ b/docs/make.bat @@ -22,7 +22,7 @@ if errorlevel 9009 ( echo.may add the Sphinx directory to PATH. echo. echo.If you don't have Sphinx installed, grab it from - echo.http://sphinx-doc.org/ + echo.https://sphinx-doc.org/ exit /b 1 ) diff --git a/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst b/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst index c8652ce8a7..20a9eb58fc 100644 --- a/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst +++ b/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst @@ -34,4 +34,4 @@ References: ~~~~~~~~~~~ - `_PROBABILISTIC ROBOTICS: `_ -- `Improving the particle filter in high dimensions using conjugate artificial process noise `_ +- `Improving the particle filter in high dimensions using conjugate artificial process noise `_ diff --git a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst b/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst index 50a50141b2..b6ced1dc1d 100644 --- a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst +++ b/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst @@ -7,7 +7,7 @@ This is an object shape recognition using rectangle fitting. This example code is based on this paper algorithm: -- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ +- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ The algorithm consists of 2 steps as below. @@ -66,4 +66,4 @@ API References ~~~~~~~~~~ -- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ +- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ diff --git a/docs/modules/path_planning/bezier_path/bezier_path_main.rst b/docs/modules/path_planning/bezier_path/bezier_path_main.rst index fbba6a4496..d306a85352 100644 --- a/docs/modules/path_planning/bezier_path/bezier_path_main.rst +++ b/docs/modules/path_planning/bezier_path/bezier_path_main.rst @@ -17,4 +17,4 @@ Ref: - `Continuous Curvature Path Generation Based on Bezier Curves for Autonomous - Vehicles `__ + Vehicles ` diff --git a/docs/modules/path_planning/bugplanner/bugplanner_main.rst b/docs/modules/path_planning/bugplanner/bugplanner_main.rst index 72cc46709f..81c91c0313 100644 --- a/docs/modules/path_planning/bugplanner/bugplanner_main.rst +++ b/docs/modules/path_planning/bugplanner/bugplanner_main.rst @@ -5,4 +5,4 @@ This is a 2D planning with Bug algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/BugPlanner/animation.gif -- `ECE452 Bug Algorithms `_ +- `ECE452 Bug Algorithms `_ diff --git a/docs/modules/path_planning/coverage_path/coverage_path_main.rst b/docs/modules/path_planning/coverage_path/coverage_path_main.rst index 828342a294..0a688b5ed2 100644 --- a/docs/modules/path_planning/coverage_path/coverage_path_main.rst +++ b/docs/modules/path_planning/coverage_path/coverage_path_main.rst @@ -29,6 +29,6 @@ This is a 2D grid based wavefront coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation2.gif .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation3.gif -- `Planning paths of complete coverage of an unstructured environment by a mobile robot `_ +- `Planning paths of complete coverage of an unstructured environment by a mobile robot `_ diff --git a/docs/modules/path_planning/dubins_path/dubins_path_main.rst b/docs/modules/path_planning/dubins_path/dubins_path_main.rst index 516638d83d..12172fb51e 100644 --- a/docs/modules/path_planning/dubins_path/dubins_path_main.rst +++ b/docs/modules/path_planning/dubins_path/dubins_path_main.rst @@ -72,5 +72,5 @@ Reference ~~~~~~~~~~~~~~~~~~~~ - `On Curves of Minimal Length with a Constraint on Average Curvature, and with Prescribed Initial and Terminal Positions and Tangents `__ - `Dubins path - Wikipedia `__ -- `15.3.1 Dubins Curves `__ +- `15.3.1 Dubins Curves `__ - `A Comprehensive, Step-by-Step Tutorial to Computing Dubin’s Paths `__ diff --git a/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst index 0fc997898e..463363ddcf 100644 --- a/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst +++ b/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst @@ -19,4 +19,4 @@ Lookup table generation sample Ref: - `Optimal rough terrain trajectory generation for wheeled mobile - robots `__ + robots `__ diff --git a/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst index feec345bae..0412b3c9b3 100644 --- a/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst +++ b/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst @@ -101,6 +101,6 @@ References: ~~~~~~~~~~~ - `Local Path Planning And Motion Control For Agv In - Positioning `__ + Positioning `__ diff --git a/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst index 6d456417fe..ff377eb91b 100644 --- a/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst +++ b/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst @@ -383,7 +383,7 @@ Hence, we have: Ref: - `15.3.2 Reeds-Shepp - Curves `__ + Curves `__ - `optimal paths for a car that goes both forwards and backwards `__ diff --git a/docs/modules/path_planning/rrt/rrt_main.rst b/docs/modules/path_planning/rrt/rrt_main.rst index 5a3a30dcff..e5f351a7ba 100644 --- a/docs/modules/path_planning/rrt/rrt_main.rst +++ b/docs/modules/path_planning/rrt/rrt_main.rst @@ -57,7 +57,7 @@ Ref: - `Informed RRT\*: Optimal Sampling-based Path Planning Focused via Direct Sampling of an Admissible Ellipsoidal - Heuristic `__ + Heuristic `__ .. _batch-informed-rrt*: @@ -90,10 +90,10 @@ PID is used for speed control. Ref: - `Motion Planning in Complex Environments using Closed-loop - Prediction `__ + Prediction `__ - `Real-time Motion Planning with Applications to Autonomous Urban - Driving `__ + Driving `__ - `[1601.06326] Sampling-based Algorithms for Optimal Motion Planning Using Closed-loop Prediction `__ @@ -113,6 +113,6 @@ Ref: - `LQR-RRT\*: Optimal Sampling-Based Motion Planning with Automatically Derived Extension - Heuristics `__ + Heuristics `__ - `MahanFathi/LQR-RRTstar: LQR-RRT\* method is used for random motion planning of a simple pendulum in its phase plot `__ \ No newline at end of file diff --git a/docs/modules/path_planning/rrt/rrt_star.rst b/docs/modules/path_planning/rrt/rrt_star.rst index d36eaac70e..6deb6b9172 100644 --- a/docs/modules/path_planning/rrt/rrt_star.rst +++ b/docs/modules/path_planning/rrt/rrt_star.rst @@ -16,6 +16,6 @@ Simulation Ref ^^^ -- `Sampling-based Algorithms for Optimal Motion Planning `__ +- `Sampling-based Algorithms for Optimal Motion Planning `__ - `Incremental Sampling-based Algorithms for Optimal Motion Planning `__ diff --git a/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst index 3ef0c7eca2..d5e7ed17d1 100644 --- a/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst +++ b/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst @@ -25,9 +25,9 @@ Lane sampling Ref: - `Optimal rough terrain trajectory generation for wheeled mobile - robots `__ + robots `__ - `State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex - Environments `__ + Environments `__ diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst b/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst index a1980ba17e..23f1218a94 100644 --- a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst +++ b/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst @@ -60,7 +60,7 @@ Ref - `Shunichi09/nonlinear_control: Implementing the nonlinear model predictive control, sliding mode - control `__ + control `__ - `非線形モデル予測制御におけるCGMRES法をpythonで実装する - Qiita `__ diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index a0b145456c..ded187e972 100644 --- a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -137,4 +137,4 @@ Simulation results References: ~~~~~~~~~~~ -- `Towards fully autonomous driving: Systems and algorithms `__ +- `Towards fully autonomous driving: Systems and algorithms `__ diff --git a/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst b/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst index 59a7166674..de55b545ba 100644 --- a/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst +++ b/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst @@ -133,5 +133,5 @@ Reference - `Vehicle Dynamics and Control \| Rajesh Rajamani \| Springer `__ -- `MPC Course Material - MPC Lab @ - UC-Berkeley `__ +- `MPC Book - MPC Lab @ + UC-Berkeley `__ diff --git a/users_comments.md b/users_comments.md index 66e8b4022e..a2f798eac4 100644 --- a/users_comments.md +++ b/users_comments.md @@ -17,13 +17,7 @@ Ref: # Educational users -This is a list of users who are using PythonRobotics for education. - -If you found other users, please make an issue to let me know. - -- [CSCI/ARTI 4530/6530: Introduction to Robotics (Fall 2018), University of Georgia ](http://cobweb.cs.uga.edu/~ramviyas/csci_x530.html) - -- [CIT Modules & Programmes \- COMP9073 \- Automation with Python](https://courses.cit.ie/index.cfm/page/module/moduleId/14416) +If you found users who are using PythonRobotics for education, please make an issue to let me know. # Stargazers location map @@ -386,14 +380,14 @@ Dear Atsushi Sakai,
    Thank you so much for creating PythonRobotics and docume 1. B. Blaga, M. Deac, R. W. Y. Al-doori, M. Negru and R. Dǎnescu, "Miniature Autonomous Vehicle Development on Raspberry Pi," 2018 IEEE 14th International Conference on Intelligent Computer Communication and Processing (ICCP), Cluj-Napoca, Romania, 2018, pp. 229-236. doi: 10.1109/ICCP.2018.8516589 keywords: {Automobiles;Task analysis;Autonomous vehicles;Path planning;Global Positioning System;Cameras;miniature autonomous vehicle;path planning;navigation;parking assist;lane detection and tracking;traffic sign recognition}, -URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8516589&isnumber=8516425 +URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8516589&isnumber=8516425 2. Peggy (Yuchun) Wang and Caitlin Hogan, "Path Planning with Dynamic Obstacle Avoidance for a Jumping-Enabled Robot", AA228/CS238 class report, Department of Computer Science, Stanford University, URL: https://web.stanford.edu/class/aa228/reports/2018/final113.pdf -3. Welburn, E, Hakim Khalili, H, Gupta, A, Watson, S & Carrasco, J 2019, A Navigational System for Quadcopter Remote Inspection of Offshore Substations. in The Fifteenth International Conference on Autonomic and Autonomous Systems 2019. URL:https://www.research.manchester.ac.uk/portal/files/107169964/ICAS19_A_Navigational_System_for_Quadcopter_Remote_Inspection_of_Offshore_Substations.pdf +3. Welburn, E, Hakim Khalili, H, Gupta, A, Watson, S & Carrasco, J 2019, A Navigational System for Quadcopter Remote Inspection of Offshore Substations. in The Fifteenth International Conference on Autonomic and Autonomous Systems 2019. URL:https://research.manchester.ac.uk/portal/files/107169964/ICAS19_A_Navigational_System_for_Quadcopter_Remote_Inspection_of_Offshore_Substations.pdf 4. E. Horváth, C. Hajdu, C. Radu and Á. Ballagi, "Range Sensor-based Occupancy Grid Mapping with Signatures," 2019 20th International Carpathian Control Conference (ICCC), Krakow-Wieliczka, Poland, 2019, pp. 1-5. -URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8765684&isnumber=8765679 +URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8765684&isnumber=8765679 5. Josie Hughes, Masaru Shimizu, and Arnoud Visser, "A Review of Robot Rescue Simulation Platforms for Robotics Education" URL: https://2019.robocup.org/downloads/program/HughesEtAl2019.pdf @@ -408,7 +402,7 @@ URL: https://arxiv.org/abs/1910.01557 URL: https://pdfs.semanticscholar.org/5c06/f3cb9542a51e1bf1a32523c1bc7fea6cecc5.pdf 9. Brijen Thananjeyan, et al. "ABC-LMPC: Safe Sample-Based Learning MPC for Stochastic Nonlinear Dynamical Systems with Adjustable Boundary Conditions" -URL: https://arxiv.org/pdf/2003.01410.pdf +URL: https://arxiv.org/pdf/2003.01410 # Others From 732db3d40d1dbdcfe60a3a5a02948d306c6a4c88 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 Jan 2025 21:06:23 +0900 Subject: [PATCH 302/414] Fix Doc generation warning (#1125) --- docs/getting_started_main.rst | 2 +- .../catmull_rom_spline/catmull_rom_spline_main.rst | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 004d68227b..256319ab8f 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -40,7 +40,7 @@ For development: - `sphinx`_ (for document generation) - `ruff`_ (for code style check) -.. _`Python 3.11.x`: https://www.python.org/ +.. _`Python 3.12.x`: https://www.python.org/ .. _`NumPy`: https://numpy.org/ .. _`SciPy`: https://scipy.org/ .. _`Matplotlib`: https://matplotlib.org/ diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst index 4d8d3bdefe..72e558c486 100644 --- a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst +++ b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst @@ -1,5 +1,5 @@ Catmull-Rom Spline Planning ------------------ +---------------------------- .. image:: catmull_rom_path_planning.png @@ -10,7 +10,7 @@ exhibits local control, and maintains 𝐶1 continuity. Catmull-Rom Spline Fundamentals -~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Catmull-Rom splines are a type of cubic spline that passes through a given set of points, known as control points. @@ -24,7 +24,7 @@ Where: * :math:`P_0, P_1, P_2, P_3` are the control points surrounding the parameter :math:`t`. Types of Catmull-Rom Splines -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ There are different types of Catmull-Rom splines based on the choice of the **tau** parameter, which influences how the curve behaves in relation to the control points: @@ -51,7 +51,7 @@ behaves in relation to the control points: Blending Functions -~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~ In Catmull-Rom spline interpolation, blending functions are used to calculate the influence of each control point on the spline at a given parameter :math:`t`. The blending functions ensure that the spline is smooth and passes through the control points while @@ -97,7 +97,7 @@ API References -~~~~~~~~~~ +~~~~~~~~~~~~~~ - `Catmull-Rom Spline - Wikipedia `__ - `Catmull-Rom Splines `__ \ No newline at end of file From bf8f1774b753d3b0915960628386bb220de8f0af Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 Jan 2025 23:30:14 +0900 Subject: [PATCH 303/414] Update doc organization (#1126) --- docs/conf.py | 2 +- docs/index_main.rst | 24 +++++----- .../{control => 10_control}/control_main.rst | 0 .../inverted-pendulum.png | Bin .../inverted_pendulum_control_main.rst | 0 .../move_to_a_pose_control_main.rst | 0 .../plot/curvature_plot.png | Bin .../{utils => 11_utils}/plot/plot_main.rst | 0 .../{utils => 11_utils}/utils_main.rst | 0 .../Kalmanfilter_basics_2_5_0.png | Bin .../Kalmanfilter_basics_2_main.rst | 0 .../Kalmanfilter_basics_14_1.png | Bin .../Kalmanfilter_basics_16_0.png | Bin .../Kalmanfilter_basics_19_1.png | Bin .../Kalmanfilter_basics_21_1.png | Bin .../Kalmanfilter_basics_22_0.png | Bin .../Kalmanfilter_basics_28_1.png | Bin .../Kalmanfilter_basics_main.rst | 0 .../appendix_main.rst | 0 .../steering_motion_model/steering_model.png | Bin .../turning_radius_calc1.png | Bin .../turning_radius_calc2.png | Bin .../steering_motion_model_main.rst | 0 .../definition_of_robotics_main.rst | 4 ++ .../software_for_robotics_main.rst | 7 +++ .../technology_for_robotics_main.rst | 4 ++ .../1_introduction/introduction_main.rst | 13 ++++++ ...samble_kalman_filter_localization_main.rst | 0 .../ekf_with_velocity_correction_1_0.png | Bin ...xtended_kalman_filter_localization_1_0.png | Bin ...tended_kalman_filter_localization_main.rst | 0 .../histogram_filter_localization/1.png | Bin .../histogram_filter_localization/2.png | Bin .../histogram_filter_localization/3.png | Bin .../histogram_filter_localization/4.png | Bin .../histogram_filter_localization_main.rst | 0 .../localization_main.rst | 0 .../particle_filter_localization_main.rst | 0 ...cented_kalman_filter_localization_main.rst | 0 .../circle_fitting/circle_fitting_main.rst | 0 .../gaussian_grid_map_main.rst | 0 .../k_means_object_clustering_main.rst | 0 .../grid_map_example.png | Bin .../lidar_to_grid_map_tutorial_12_0.png | Bin .../lidar_to_grid_map_tutorial_14_1.png | Bin .../lidar_to_grid_map_tutorial_5_0.png | Bin .../lidar_to_grid_map_tutorial_7_0.png | Bin .../lidar_to_grid_map_tutorial_8_0.png | Bin .../lidar_to_grid_map_tutorial_main.rst | 0 .../{mapping => 3_mapping}/mapping_main.rst | 0 .../ndt_map/grid_clustering.png | Bin .../ndt_map/ndt_map1.png | Bin .../ndt_map/ndt_map2.png | Bin .../ndt_map/ndt_map_main.rst | 0 .../ndt_map/raw_observations.png | Bin .../normal_vector_calc.png | Bin .../normal_vector_estimation_main.rst | 0 .../ransac_normal_vector_estimation.png | Bin .../farthest_point_sampling.png | Bin .../point_cloud_sampling_main.rst | 0 .../poisson_disk_sampling.png | Bin .../voxel_point_sampling.png | Bin .../ray_casting_grid_map_main.rst | 0 .../rectangle_fitting_main.rst | 0 .../FastSLAM1/FastSLAM1_12_0.png | Bin .../FastSLAM1/FastSLAM1_12_1.png | Bin .../FastSLAM1/FastSLAM1_1_0.png | Bin .../FastSLAM1/FastSLAM1_main.rst | 0 .../FastSLAM2/FastSLAM2_main.rst | 0 .../ekf_slam/ekf_slam_1_0.png | Bin .../ekf_slam/ekf_slam_main.rst | 0 .../graph_slam/graphSLAM_SE2_example.rst | 0 .../graphSLAM_SE2_example_13_0.png | Bin .../graphSLAM_SE2_example_15_0.png | Bin .../graphSLAM_SE2_example_16_0.png | Bin .../graphSLAM_SE2_example_4_0.png | Bin .../graphSLAM_SE2_example_8_0.png | Bin .../graphSLAM_SE2_example_9_0.png | Bin .../graph_slam/graphSLAM_doc.rst | 0 .../graphSLAM_doc_11_1.png | Bin .../graphSLAM_doc_11_2.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_2_0.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_2_2.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_4_0.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_9_1.png | Bin .../graph_slam/graphSLAM_formulation.rst | 0 .../graph_slam/graph_slam_main.rst | 0 .../iterative_closest_point_matching_main.rst | 0 docs/modules/{slam => 4_slam}/slam_main.rst | 0 .../bezier_path/Figure_1.png | Bin .../bezier_path/Figure_2.png | Bin .../bezier_path/bezier_path_main.rst | 0 .../bspline_path/approx_and_curvature.png | Bin .../bspline_path/approximation1.png | Bin .../bspline_path/basis_functions.png | Bin .../bspline_path/bspline_path_main.rst | 0 .../bspline_path/bspline_path_planning.png | Bin .../bspline_path/interp_and_curvature.png | Bin .../bspline_path/interpolation1.png | Bin .../bugplanner/bugplanner_main.rst | 0 .../catmull_rom_spline/blending_functions.png | Bin .../catmull_rom_path_planning.png | Bin .../catmull_rom_spline_main.rst | 0 .../closed_loop_rrt_star_car/Figure_1.png | Bin .../closed_loop_rrt_star_car/Figure_3.png | Bin .../closed_loop_rrt_star_car/Figure_4.png | Bin .../closed_loop_rrt_star_car/Figure_5.png | Bin .../clothoid_path/clothoid_path_main.rst | 0 .../coverage_path/coverage_path_main.rst | 0 .../cubic_spline/cubic_spline_1d.png | Bin .../cubic_spline_2d_curvature.png | Bin .../cubic_spline/cubic_spline_2d_path.png | Bin .../cubic_spline/cubic_spline_2d_yaw.png | Bin .../cubic_spline/cubic_spline_main.rst | 0 .../cubic_spline/spline.png | Bin .../cubic_spline/spline_continuity.png | Bin .../dubins_path/RLR.jpg | Bin .../dubins_path/RSR.jpg | Bin .../dubins_path/dubins_path.jpg | Bin .../dubins_path/dubins_path_main.rst | 0 .../dynamic_window_approach_main.rst | 0 .../eta3_spline/eta3_spline_main.rst | 0 .../frenet_frame_path_main.rst | 0 .../grid_base_search_main.rst | 0 .../hybridastar/hybridastar_main.rst | 0 .../lqr_path/lqr_path_main.rst | 0 .../lookup_table.png | Bin ...l_predictive_trajectory_generator_main.rst | 0 .../path_planning_main.rst | 0 .../prm_planner/prm_planner_main.rst | 0 .../quintic_polynomials_planner_main.rst | 0 .../reeds_shepp_path/LR_L.png | Bin .../reeds_shepp_path/LR_LR.png | Bin .../reeds_shepp_path/LSL.png | Bin .../reeds_shepp_path/LSL90xR.png | Bin .../reeds_shepp_path/LSR.png | Bin .../reeds_shepp_path/LSR90_L.png | Bin .../reeds_shepp_path/L_R90SL.png | Bin .../reeds_shepp_path/L_R90SL90_R.png | Bin .../reeds_shepp_path/L_R90SR.png | Bin .../reeds_shepp_path/L_RL.png | Bin .../reeds_shepp_path/L_RL_R.png | Bin .../reeds_shepp_path/L_R_L.png | Bin .../reeds_shepp_path_main.rst | 0 .../rrt/figure_1.png | Bin .../rrt/rrt_main.rst | 0 .../rrt/rrt_star.rst | 0 .../rrt/rrt_star/rrt_star_1_0.png | Bin .../rrt/rrt_star_reeds_shepp/figure_1.png | Bin .../state_lattice_planner/Figure_1.png | Bin .../state_lattice_planner/Figure_2.png | Bin .../state_lattice_planner/Figure_3.png | Bin .../state_lattice_planner/Figure_4.png | Bin .../state_lattice_planner/Figure_5.png | Bin .../state_lattice_planner/Figure_6.png | Bin .../state_lattice_planner_main.rst | 0 .../visibility_road_map_planner/step0.png | Bin .../visibility_road_map_planner/step1.png | Bin .../visibility_road_map_planner/step2.png | Bin .../visibility_road_map_planner/step3.png | Bin .../visibility_road_map_planner_main.rst | 0 .../vrm_planner/vrm_planner_main.rst | 0 .../cgmres_nmpc/cgmres_nmpc_1_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_2_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_3_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_4_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_main.rst | 0 .../lqr_speed_and_steering_control_main.rst | 0 .../lqr_steering_control_model.jpg | Bin .../lqr_speed_and_steering_control/speed.png | Bin .../lqr_speed_and_steering_control/x-y.png | Bin .../lqr_speed_and_steering_control/yaw.png | Bin .../lqr_steering_control_main.rst | 0 .../lqr_steering_control_model.jpg | Bin ...ictive_speed_and_steering_control_main.rst | 0 .../path_tracking_main.rst | 0 .../pure_pursuit_tracking_main.rst | 0 .../rear_wheel_feedback_control_main.rst | 0 .../stanley_control/stanley_control_main.rst | 0 .../Planar_Two_Link_IK_12_0.png | Bin .../Planar_Two_Link_IK_5_0.png | Bin .../Planar_Two_Link_IK_7_0.png | Bin .../Planar_Two_Link_IK_9_0.png | Bin .../arm_navigation_main.rst | 0 .../n_joint_arm_to_point_control_main.rst | 0 ...obstacle_avoidance_arm_navigation_main.rst | 0 .../planar_two_link_ik_main.rst | 0 .../aerial_navigation_main.rst | 0 .../drone_3d_trajectory_following_main.rst | 0 .../rocket_powered_landing_main.rst | 0 .../{bipedal => 9_bipedal}/bipedal_main.rst | 0 .../bipedal_planner/bipedal_planner_main.rst | 0 docs/modules/introduction_main.rst | 42 ------------------ .../Graph_SLAM_optimization.gif | Bin 114966 -> 0 bytes 194 files changed, 41 insertions(+), 55 deletions(-) rename docs/modules/{control => 10_control}/control_main.rst (100%) rename docs/modules/{control => 10_control}/inverted_pendulum_control/inverted-pendulum.png (100%) rename docs/modules/{control => 10_control}/inverted_pendulum_control/inverted_pendulum_control_main.rst (100%) rename docs/modules/{control => 10_control}/move_to_a_pose_control/move_to_a_pose_control_main.rst (100%) rename docs/modules/{utils => 11_utils}/plot/curvature_plot.png (100%) rename docs/modules/{utils => 11_utils}/plot/plot_main.rst (100%) rename docs/modules/{utils => 11_utils}/utils_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_2_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/appendix_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model/steering_model.png (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model/turning_radius_calc1.png (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model/turning_radius_calc2.png (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model_main.rst (100%) create mode 100644 docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst create mode 100644 docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst create mode 100644 docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst create mode 100644 docs/modules/1_introduction/introduction_main.rst rename docs/modules/{localization => 2_localization}/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png (100%) rename docs/modules/{localization => 2_localization}/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png (100%) rename docs/modules/{localization => 2_localization}/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/1.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/2.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/3.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/4.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/histogram_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/particle_filter_localization/particle_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/circle_fitting/circle_fitting_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/gaussian_grid_map/gaussian_grid_map_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/k_means_object_clustering/k_means_object_clustering_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/grid_map_example.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/mapping_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/grid_clustering.png (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/ndt_map1.png (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/ndt_map2.png (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/ndt_map_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/raw_observations.png (100%) rename docs/modules/{mapping => 3_mapping}/normal_vector_estimation/normal_vector_calc.png (100%) rename docs/modules/{mapping => 3_mapping}/normal_vector_estimation/normal_vector_estimation_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/normal_vector_estimation/ransac_normal_vector_estimation.png (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/farthest_point_sampling.png (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/point_cloud_sampling_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/poisson_disk_sampling.png (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/voxel_point_sampling.png (100%) rename docs/modules/{mapping => 3_mapping}/ray_casting_grid_map/ray_casting_grid_map_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/rectangle_fitting/rectangle_fitting_main.rst (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_12_0.png (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_12_1.png (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_1_0.png (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_main.rst (100%) rename docs/modules/{slam => 4_slam}/FastSLAM2/FastSLAM2_main.rst (100%) rename docs/modules/{slam => 4_slam}/ekf_slam/ekf_slam_1_0.png (100%) rename docs/modules/{slam => 4_slam}/ekf_slam/ekf_slam_main.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_formulation.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graph_slam_main.rst (100%) rename docs/modules/{slam => 4_slam}/iterative_closest_point_matching/iterative_closest_point_matching_main.rst (100%) rename docs/modules/{slam => 4_slam}/slam_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/bezier_path/Figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bezier_path/Figure_2.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bezier_path/bezier_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/approx_and_curvature.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/approximation1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/basis_functions.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/bspline_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/bspline_path_planning.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/interp_and_curvature.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/interpolation1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bugplanner/bugplanner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/catmull_rom_spline/blending_functions.png (100%) rename docs/modules/{path_planning => 5_path_planning}/catmull_rom_spline/catmull_rom_path_planning.png (100%) rename docs/modules/{path_planning => 5_path_planning}/catmull_rom_spline/catmull_rom_spline_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_3.png (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_4.png (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_5.png (100%) rename docs/modules/{path_planning => 5_path_planning}/clothoid_path/clothoid_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/coverage_path/coverage_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_1d.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_2d_curvature.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_2d_path.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_2d_yaw.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/spline.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/spline_continuity.png (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/RLR.jpg (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/RSR.jpg (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/dubins_path.jpg (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/dubins_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/dynamic_window_approach/dynamic_window_approach_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/eta3_spline/eta3_spline_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/frenet_frame_path/frenet_frame_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/grid_base_search/grid_base_search_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/hybridastar/hybridastar_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/lqr_path/lqr_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/model_predictive_trajectory_generator/lookup_table.png (100%) rename docs/modules/{path_planning => 5_path_planning}/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/path_planning_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/prm_planner/prm_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/quintic_polynomials_planner/quintic_polynomials_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LR_L.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LR_LR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSL.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSL90xR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSR90_L.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R90SL.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R90SL90_R.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R90SR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_RL.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_RL_R.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R_L.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/reeds_shepp_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_star.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_star/rrt_star_1_0.png (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_star_reeds_shepp/figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_2.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_3.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_4.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_5.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_6.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/state_lattice_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step0.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step2.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step3.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/visibility_road_map_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/vrm_planner/vrm_planner_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_1_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_2_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_3_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_4_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/lqr_steering_control_model.jpg (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/speed.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/x-y.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/yaw.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_steering_control/lqr_steering_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_steering_control/lqr_steering_control_model.jpg (100%) rename docs/modules/{path_tracking => 6_path_tracking}/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/path_tracking_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/pure_pursuit_tracking/pure_pursuit_tracking_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/stanley_control/stanley_control_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/arm_navigation_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/n_joint_arm_to_point_control_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/obstacle_avoidance_arm_navigation_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/planar_two_link_ik_main.rst (100%) rename docs/modules/{aerial_navigation => 8_aerial_navigation}/aerial_navigation_main.rst (100%) rename docs/modules/{aerial_navigation => 8_aerial_navigation}/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst (100%) rename docs/modules/{aerial_navigation => 8_aerial_navigation}/rocket_powered_landing/rocket_powered_landing_main.rst (100%) rename docs/modules/{bipedal => 9_bipedal}/bipedal_main.rst (100%) rename docs/modules/{bipedal => 9_bipedal}/bipedal_planner/bipedal_planner_main.rst (100%) delete mode 100644 docs/modules/introduction_main.rst delete mode 100644 docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif diff --git a/docs/conf.py b/docs/conf.py index 4e06f3f988..919fa9ac76 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -19,7 +19,7 @@ # -- Project information ----------------------------------------------------- project = 'PythonRobotics' -copyright = '2018-2023, Atsushi Sakai' +copyright = '2018-now, Atsushi Sakai' author = 'Atsushi Sakai' # The short X.Y version diff --git a/docs/index_main.rst b/docs/index_main.rst index 67bd9889f2..08c318ea83 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -34,18 +34,18 @@ See this paper for more details: :caption: Contents getting_started - modules/introduction - modules/localization/localization - modules/mapping/mapping - modules/slam/slam - modules/path_planning/path_planning - modules/path_tracking/path_tracking - modules/arm_navigation/arm_navigation - modules/aerial_navigation/aerial_navigation - modules/bipedal/bipedal - modules/control/control - modules/utils/utils - modules/appendix/appendix + modules/1_introduction/introduction + modules/2_localization/localization + modules/3_mapping/mapping + modules/4_slam/slam + modules/5_path_planning/path_planning + modules/6_path_tracking/path_tracking + modules/7_arm_navigation/arm_navigation + modules/8_aerial_navigation/aerial_navigation + modules/9_bipedal/bipedal + modules/10_control/control + modules/11_utils/utils + modules/12_appendix/appendix how_to_contribute diff --git a/docs/modules/control/control_main.rst b/docs/modules/10_control/control_main.rst similarity index 100% rename from docs/modules/control/control_main.rst rename to docs/modules/10_control/control_main.rst diff --git a/docs/modules/control/inverted_pendulum_control/inverted-pendulum.png b/docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png similarity index 100% rename from docs/modules/control/inverted_pendulum_control/inverted-pendulum.png rename to docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png diff --git a/docs/modules/control/inverted_pendulum_control/inverted_pendulum_control_main.rst b/docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst similarity index 100% rename from docs/modules/control/inverted_pendulum_control/inverted_pendulum_control_main.rst rename to docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst diff --git a/docs/modules/control/move_to_a_pose_control/move_to_a_pose_control_main.rst b/docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst similarity index 100% rename from docs/modules/control/move_to_a_pose_control/move_to_a_pose_control_main.rst rename to docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst diff --git a/docs/modules/utils/plot/curvature_plot.png b/docs/modules/11_utils/plot/curvature_plot.png similarity index 100% rename from docs/modules/utils/plot/curvature_plot.png rename to docs/modules/11_utils/plot/curvature_plot.png diff --git a/docs/modules/utils/plot/plot_main.rst b/docs/modules/11_utils/plot/plot_main.rst similarity index 100% rename from docs/modules/utils/plot/plot_main.rst rename to docs/modules/11_utils/plot/plot_main.rst diff --git a/docs/modules/utils/utils_main.rst b/docs/modules/11_utils/utils_main.rst similarity index 100% rename from docs/modules/utils/utils_main.rst rename to docs/modules/11_utils/utils_main.rst diff --git a/docs/modules/appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png b/docs/modules/12_appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png rename to docs/modules/12_appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_2_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_2_main.rst rename to docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_main.rst similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_main.rst rename to docs/modules/12_appendix/Kalmanfilter_basics_main.rst diff --git a/docs/modules/appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst similarity index 100% rename from docs/modules/appendix/appendix_main.rst rename to docs/modules/12_appendix/appendix_main.rst diff --git a/docs/modules/appendix/steering_motion_model/steering_model.png b/docs/modules/12_appendix/steering_motion_model/steering_model.png similarity index 100% rename from docs/modules/appendix/steering_motion_model/steering_model.png rename to docs/modules/12_appendix/steering_motion_model/steering_model.png diff --git a/docs/modules/appendix/steering_motion_model/turning_radius_calc1.png b/docs/modules/12_appendix/steering_motion_model/turning_radius_calc1.png similarity index 100% rename from docs/modules/appendix/steering_motion_model/turning_radius_calc1.png rename to docs/modules/12_appendix/steering_motion_model/turning_radius_calc1.png diff --git a/docs/modules/appendix/steering_motion_model/turning_radius_calc2.png b/docs/modules/12_appendix/steering_motion_model/turning_radius_calc2.png similarity index 100% rename from docs/modules/appendix/steering_motion_model/turning_radius_calc2.png rename to docs/modules/12_appendix/steering_motion_model/turning_radius_calc2.png diff --git a/docs/modules/appendix/steering_motion_model_main.rst b/docs/modules/12_appendix/steering_motion_model_main.rst similarity index 100% rename from docs/modules/appendix/steering_motion_model_main.rst rename to docs/modules/12_appendix/steering_motion_model_main.rst diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst new file mode 100644 index 0000000000..bdc7dc53e9 --- /dev/null +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -0,0 +1,4 @@ +Definition of Robotics +---------------------- + +TBD diff --git a/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst b/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst new file mode 100644 index 0000000000..835441f85d --- /dev/null +++ b/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst @@ -0,0 +1,7 @@ +Software for Robotics +---------------------- + +Python for Robotics +~~~~~~~~~~~~~~~~~~~~~ + +TBD diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst new file mode 100644 index 0000000000..4c60ab8851 --- /dev/null +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -0,0 +1,4 @@ +Technology for Robotics +------------------------- + +TBD diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst new file mode 100644 index 0000000000..4561efd349 --- /dev/null +++ b/docs/modules/1_introduction/introduction_main.rst @@ -0,0 +1,13 @@ +.. _introduction: + +Introduction +============ + +.. toctree:: + :maxdepth: 2 + :caption: Table of Contents + + 1_definition_of_robotics/definition_of_robotics + 2_software_for_robotics/software_for_robotics + 3_technology_for_robotics/technology_for_robotics + diff --git a/docs/modules/localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst b/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst rename to docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png b/docs/modules/2_localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png similarity index 100% rename from docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png rename to docs/modules/2_localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png similarity index 100% rename from docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png rename to docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst rename to docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst diff --git a/docs/modules/localization/histogram_filter_localization/1.png b/docs/modules/2_localization/histogram_filter_localization/1.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/1.png rename to docs/modules/2_localization/histogram_filter_localization/1.png diff --git a/docs/modules/localization/histogram_filter_localization/2.png b/docs/modules/2_localization/histogram_filter_localization/2.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/2.png rename to docs/modules/2_localization/histogram_filter_localization/2.png diff --git a/docs/modules/localization/histogram_filter_localization/3.png b/docs/modules/2_localization/histogram_filter_localization/3.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/3.png rename to docs/modules/2_localization/histogram_filter_localization/3.png diff --git a/docs/modules/localization/histogram_filter_localization/4.png b/docs/modules/2_localization/histogram_filter_localization/4.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/4.png rename to docs/modules/2_localization/histogram_filter_localization/4.png diff --git a/docs/modules/localization/histogram_filter_localization/histogram_filter_localization_main.rst b/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/histogram_filter_localization/histogram_filter_localization_main.rst rename to docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst diff --git a/docs/modules/localization/localization_main.rst b/docs/modules/2_localization/localization_main.rst similarity index 100% rename from docs/modules/localization/localization_main.rst rename to docs/modules/2_localization/localization_main.rst diff --git a/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst b/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst rename to docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst diff --git a/docs/modules/localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst b/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst rename to docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst diff --git a/docs/modules/mapping/circle_fitting/circle_fitting_main.rst b/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst similarity index 100% rename from docs/modules/mapping/circle_fitting/circle_fitting_main.rst rename to docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst diff --git a/docs/modules/mapping/gaussian_grid_map/gaussian_grid_map_main.rst b/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst similarity index 100% rename from docs/modules/mapping/gaussian_grid_map/gaussian_grid_map_main.rst rename to docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst diff --git a/docs/modules/mapping/k_means_object_clustering/k_means_object_clustering_main.rst b/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst similarity index 100% rename from docs/modules/mapping/k_means_object_clustering/k_means_object_clustering_main.rst rename to docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/grid_map_example.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/grid_map_example.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/grid_map_example.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/grid_map_example.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst diff --git a/docs/modules/mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst similarity index 100% rename from docs/modules/mapping/mapping_main.rst rename to docs/modules/3_mapping/mapping_main.rst diff --git a/docs/modules/mapping/ndt_map/grid_clustering.png b/docs/modules/3_mapping/ndt_map/grid_clustering.png similarity index 100% rename from docs/modules/mapping/ndt_map/grid_clustering.png rename to docs/modules/3_mapping/ndt_map/grid_clustering.png diff --git a/docs/modules/mapping/ndt_map/ndt_map1.png b/docs/modules/3_mapping/ndt_map/ndt_map1.png similarity index 100% rename from docs/modules/mapping/ndt_map/ndt_map1.png rename to docs/modules/3_mapping/ndt_map/ndt_map1.png diff --git a/docs/modules/mapping/ndt_map/ndt_map2.png b/docs/modules/3_mapping/ndt_map/ndt_map2.png similarity index 100% rename from docs/modules/mapping/ndt_map/ndt_map2.png rename to docs/modules/3_mapping/ndt_map/ndt_map2.png diff --git a/docs/modules/mapping/ndt_map/ndt_map_main.rst b/docs/modules/3_mapping/ndt_map/ndt_map_main.rst similarity index 100% rename from docs/modules/mapping/ndt_map/ndt_map_main.rst rename to docs/modules/3_mapping/ndt_map/ndt_map_main.rst diff --git a/docs/modules/mapping/ndt_map/raw_observations.png b/docs/modules/3_mapping/ndt_map/raw_observations.png similarity index 100% rename from docs/modules/mapping/ndt_map/raw_observations.png rename to docs/modules/3_mapping/ndt_map/raw_observations.png diff --git a/docs/modules/mapping/normal_vector_estimation/normal_vector_calc.png b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_calc.png similarity index 100% rename from docs/modules/mapping/normal_vector_estimation/normal_vector_calc.png rename to docs/modules/3_mapping/normal_vector_estimation/normal_vector_calc.png diff --git a/docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst similarity index 100% rename from docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst rename to docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst diff --git a/docs/modules/mapping/normal_vector_estimation/ransac_normal_vector_estimation.png b/docs/modules/3_mapping/normal_vector_estimation/ransac_normal_vector_estimation.png similarity index 100% rename from docs/modules/mapping/normal_vector_estimation/ransac_normal_vector_estimation.png rename to docs/modules/3_mapping/normal_vector_estimation/ransac_normal_vector_estimation.png diff --git a/docs/modules/mapping/point_cloud_sampling/farthest_point_sampling.png b/docs/modules/3_mapping/point_cloud_sampling/farthest_point_sampling.png similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/farthest_point_sampling.png rename to docs/modules/3_mapping/point_cloud_sampling/farthest_point_sampling.png diff --git a/docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst b/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst rename to docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst diff --git a/docs/modules/mapping/point_cloud_sampling/poisson_disk_sampling.png b/docs/modules/3_mapping/point_cloud_sampling/poisson_disk_sampling.png similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/poisson_disk_sampling.png rename to docs/modules/3_mapping/point_cloud_sampling/poisson_disk_sampling.png diff --git a/docs/modules/mapping/point_cloud_sampling/voxel_point_sampling.png b/docs/modules/3_mapping/point_cloud_sampling/voxel_point_sampling.png similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/voxel_point_sampling.png rename to docs/modules/3_mapping/point_cloud_sampling/voxel_point_sampling.png diff --git a/docs/modules/mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst b/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst similarity index 100% rename from docs/modules/mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst rename to docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst diff --git a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst b/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst similarity index 100% rename from docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst rename to docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_12_0.png b/docs/modules/4_slam/FastSLAM1/FastSLAM1_12_0.png similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_12_0.png rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_12_0.png diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_12_1.png b/docs/modules/4_slam/FastSLAM1/FastSLAM1_12_1.png similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_12_1.png rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_12_1.png diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_1_0.png b/docs/modules/4_slam/FastSLAM1/FastSLAM1_1_0.png similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_1_0.png rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_1_0.png diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_main.rst b/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_main.rst rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst diff --git a/docs/modules/slam/FastSLAM2/FastSLAM2_main.rst b/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst similarity index 100% rename from docs/modules/slam/FastSLAM2/FastSLAM2_main.rst rename to docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst diff --git a/docs/modules/slam/ekf_slam/ekf_slam_1_0.png b/docs/modules/4_slam/ekf_slam/ekf_slam_1_0.png similarity index 100% rename from docs/modules/slam/ekf_slam/ekf_slam_1_0.png rename to docs/modules/4_slam/ekf_slam/ekf_slam_1_0.png diff --git a/docs/modules/slam/ekf_slam/ekf_slam_main.rst b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst similarity index 100% rename from docs/modules/slam/ekf_slam/ekf_slam_main.rst rename to docs/modules/4_slam/ekf_slam/ekf_slam_main.rst diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example.rst b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example.rst rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc.rst b/docs/modules/4_slam/graph_slam/graphSLAM_doc.rst similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc.rst rename to docs/modules/4_slam/graph_slam/graphSLAM_doc.rst diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_formulation.rst b/docs/modules/4_slam/graph_slam/graphSLAM_formulation.rst similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_formulation.rst rename to docs/modules/4_slam/graph_slam/graphSLAM_formulation.rst diff --git a/docs/modules/slam/graph_slam/graph_slam_main.rst b/docs/modules/4_slam/graph_slam/graph_slam_main.rst similarity index 100% rename from docs/modules/slam/graph_slam/graph_slam_main.rst rename to docs/modules/4_slam/graph_slam/graph_slam_main.rst diff --git a/docs/modules/slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst b/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst similarity index 100% rename from docs/modules/slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst rename to docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst diff --git a/docs/modules/slam/slam_main.rst b/docs/modules/4_slam/slam_main.rst similarity index 100% rename from docs/modules/slam/slam_main.rst rename to docs/modules/4_slam/slam_main.rst diff --git a/docs/modules/path_planning/bezier_path/Figure_1.png b/docs/modules/5_path_planning/bezier_path/Figure_1.png similarity index 100% rename from docs/modules/path_planning/bezier_path/Figure_1.png rename to docs/modules/5_path_planning/bezier_path/Figure_1.png diff --git a/docs/modules/path_planning/bezier_path/Figure_2.png b/docs/modules/5_path_planning/bezier_path/Figure_2.png similarity index 100% rename from docs/modules/path_planning/bezier_path/Figure_2.png rename to docs/modules/5_path_planning/bezier_path/Figure_2.png diff --git a/docs/modules/path_planning/bezier_path/bezier_path_main.rst b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst similarity index 100% rename from docs/modules/path_planning/bezier_path/bezier_path_main.rst rename to docs/modules/5_path_planning/bezier_path/bezier_path_main.rst diff --git a/docs/modules/path_planning/bspline_path/approx_and_curvature.png b/docs/modules/5_path_planning/bspline_path/approx_and_curvature.png similarity index 100% rename from docs/modules/path_planning/bspline_path/approx_and_curvature.png rename to docs/modules/5_path_planning/bspline_path/approx_and_curvature.png diff --git a/docs/modules/path_planning/bspline_path/approximation1.png b/docs/modules/5_path_planning/bspline_path/approximation1.png similarity index 100% rename from docs/modules/path_planning/bspline_path/approximation1.png rename to docs/modules/5_path_planning/bspline_path/approximation1.png diff --git a/docs/modules/path_planning/bspline_path/basis_functions.png b/docs/modules/5_path_planning/bspline_path/basis_functions.png similarity index 100% rename from docs/modules/path_planning/bspline_path/basis_functions.png rename to docs/modules/5_path_planning/bspline_path/basis_functions.png diff --git a/docs/modules/path_planning/bspline_path/bspline_path_main.rst b/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst similarity index 100% rename from docs/modules/path_planning/bspline_path/bspline_path_main.rst rename to docs/modules/5_path_planning/bspline_path/bspline_path_main.rst diff --git a/docs/modules/path_planning/bspline_path/bspline_path_planning.png b/docs/modules/5_path_planning/bspline_path/bspline_path_planning.png similarity index 100% rename from docs/modules/path_planning/bspline_path/bspline_path_planning.png rename to docs/modules/5_path_planning/bspline_path/bspline_path_planning.png diff --git a/docs/modules/path_planning/bspline_path/interp_and_curvature.png b/docs/modules/5_path_planning/bspline_path/interp_and_curvature.png similarity index 100% rename from docs/modules/path_planning/bspline_path/interp_and_curvature.png rename to docs/modules/5_path_planning/bspline_path/interp_and_curvature.png diff --git a/docs/modules/path_planning/bspline_path/interpolation1.png b/docs/modules/5_path_planning/bspline_path/interpolation1.png similarity index 100% rename from docs/modules/path_planning/bspline_path/interpolation1.png rename to docs/modules/5_path_planning/bspline_path/interpolation1.png diff --git a/docs/modules/path_planning/bugplanner/bugplanner_main.rst b/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst similarity index 100% rename from docs/modules/path_planning/bugplanner/bugplanner_main.rst rename to docs/modules/5_path_planning/bugplanner/bugplanner_main.rst diff --git a/docs/modules/path_planning/catmull_rom_spline/blending_functions.png b/docs/modules/5_path_planning/catmull_rom_spline/blending_functions.png similarity index 100% rename from docs/modules/path_planning/catmull_rom_spline/blending_functions.png rename to docs/modules/5_path_planning/catmull_rom_spline/blending_functions.png diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_path_planning.png similarity index 100% rename from docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png rename to docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_path_planning.png diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst similarity index 100% rename from docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst rename to docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_1.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_1.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_3.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_3.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_4.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_4.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_5.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_5.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png diff --git a/docs/modules/path_planning/clothoid_path/clothoid_path_main.rst b/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst similarity index 100% rename from docs/modules/path_planning/clothoid_path/clothoid_path_main.rst rename to docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst diff --git a/docs/modules/path_planning/coverage_path/coverage_path_main.rst b/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst similarity index 100% rename from docs/modules/path_planning/coverage_path/coverage_path_main.rst rename to docs/modules/5_path_planning/coverage_path/coverage_path_main.rst diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_1d.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_1d.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_1d.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_1d.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_2d_curvature.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_curvature.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_2d_curvature.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_curvature.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_2d_path.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_path.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_2d_path.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_path.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_2d_yaw.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_yaw.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_2d_yaw.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_yaw.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_main.rst b/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_main.rst rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst diff --git a/docs/modules/path_planning/cubic_spline/spline.png b/docs/modules/5_path_planning/cubic_spline/spline.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/spline.png rename to docs/modules/5_path_planning/cubic_spline/spline.png diff --git a/docs/modules/path_planning/cubic_spline/spline_continuity.png b/docs/modules/5_path_planning/cubic_spline/spline_continuity.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/spline_continuity.png rename to docs/modules/5_path_planning/cubic_spline/spline_continuity.png diff --git a/docs/modules/path_planning/dubins_path/RLR.jpg b/docs/modules/5_path_planning/dubins_path/RLR.jpg similarity index 100% rename from docs/modules/path_planning/dubins_path/RLR.jpg rename to docs/modules/5_path_planning/dubins_path/RLR.jpg diff --git a/docs/modules/path_planning/dubins_path/RSR.jpg b/docs/modules/5_path_planning/dubins_path/RSR.jpg similarity index 100% rename from docs/modules/path_planning/dubins_path/RSR.jpg rename to docs/modules/5_path_planning/dubins_path/RSR.jpg diff --git a/docs/modules/path_planning/dubins_path/dubins_path.jpg b/docs/modules/5_path_planning/dubins_path/dubins_path.jpg similarity index 100% rename from docs/modules/path_planning/dubins_path/dubins_path.jpg rename to docs/modules/5_path_planning/dubins_path/dubins_path.jpg diff --git a/docs/modules/path_planning/dubins_path/dubins_path_main.rst b/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst similarity index 100% rename from docs/modules/path_planning/dubins_path/dubins_path_main.rst rename to docs/modules/5_path_planning/dubins_path/dubins_path_main.rst diff --git a/docs/modules/path_planning/dynamic_window_approach/dynamic_window_approach_main.rst b/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst similarity index 100% rename from docs/modules/path_planning/dynamic_window_approach/dynamic_window_approach_main.rst rename to docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst diff --git a/docs/modules/path_planning/eta3_spline/eta3_spline_main.rst b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst similarity index 100% rename from docs/modules/path_planning/eta3_spline/eta3_spline_main.rst rename to docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst diff --git a/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst similarity index 100% rename from docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst rename to docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst diff --git a/docs/modules/path_planning/grid_base_search/grid_base_search_main.rst b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst similarity index 100% rename from docs/modules/path_planning/grid_base_search/grid_base_search_main.rst rename to docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst diff --git a/docs/modules/path_planning/hybridastar/hybridastar_main.rst b/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst similarity index 100% rename from docs/modules/path_planning/hybridastar/hybridastar_main.rst rename to docs/modules/5_path_planning/hybridastar/hybridastar_main.rst diff --git a/docs/modules/path_planning/lqr_path/lqr_path_main.rst b/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst similarity index 100% rename from docs/modules/path_planning/lqr_path/lqr_path_main.rst rename to docs/modules/5_path_planning/lqr_path/lqr_path_main.rst diff --git a/docs/modules/path_planning/model_predictive_trajectory_generator/lookup_table.png b/docs/modules/5_path_planning/model_predictive_trajectory_generator/lookup_table.png similarity index 100% rename from docs/modules/path_planning/model_predictive_trajectory_generator/lookup_table.png rename to docs/modules/5_path_planning/model_predictive_trajectory_generator/lookup_table.png diff --git a/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst similarity index 100% rename from docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst rename to docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst diff --git a/docs/modules/path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst similarity index 100% rename from docs/modules/path_planning/path_planning_main.rst rename to docs/modules/5_path_planning/path_planning_main.rst diff --git a/docs/modules/path_planning/prm_planner/prm_planner_main.rst b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst similarity index 100% rename from docs/modules/path_planning/prm_planner/prm_planner_main.rst rename to docs/modules/5_path_planning/prm_planner/prm_planner_main.rst diff --git a/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst similarity index 100% rename from docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst rename to docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst diff --git a/docs/modules/path_planning/reeds_shepp_path/LR_L.png b/docs/modules/5_path_planning/reeds_shepp_path/LR_L.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LR_L.png rename to docs/modules/5_path_planning/reeds_shepp_path/LR_L.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LR_LR.png b/docs/modules/5_path_planning/reeds_shepp_path/LR_LR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LR_LR.png rename to docs/modules/5_path_planning/reeds_shepp_path/LR_LR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSL.png b/docs/modules/5_path_planning/reeds_shepp_path/LSL.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSL.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSL.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSL90xR.png b/docs/modules/5_path_planning/reeds_shepp_path/LSL90xR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSL90xR.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSL90xR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR.png b/docs/modules/5_path_planning/reeds_shepp_path/LSR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSR.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR90_L.png b/docs/modules/5_path_planning/reeds_shepp_path/LSR90_L.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSR90_L.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSR90_L.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SL.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R90SL.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R90SL.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R90SL.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R90SL90_R.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R90SL90_R.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SR.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R90SR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R90SR.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R90SR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL.png b/docs/modules/5_path_planning/reeds_shepp_path/L_RL.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_RL.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_RL.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL_R.png b/docs/modules/5_path_planning/reeds_shepp_path/L_RL_R.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_RL_R.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_RL_R.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R_L.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R_L.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R_L.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R_L.png diff --git a/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst rename to docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst diff --git a/docs/modules/path_planning/rrt/figure_1.png b/docs/modules/5_path_planning/rrt/figure_1.png similarity index 100% rename from docs/modules/path_planning/rrt/figure_1.png rename to docs/modules/5_path_planning/rrt/figure_1.png diff --git a/docs/modules/path_planning/rrt/rrt_main.rst b/docs/modules/5_path_planning/rrt/rrt_main.rst similarity index 100% rename from docs/modules/path_planning/rrt/rrt_main.rst rename to docs/modules/5_path_planning/rrt/rrt_main.rst diff --git a/docs/modules/path_planning/rrt/rrt_star.rst b/docs/modules/5_path_planning/rrt/rrt_star.rst similarity index 100% rename from docs/modules/path_planning/rrt/rrt_star.rst rename to docs/modules/5_path_planning/rrt/rrt_star.rst diff --git a/docs/modules/path_planning/rrt/rrt_star/rrt_star_1_0.png b/docs/modules/5_path_planning/rrt/rrt_star/rrt_star_1_0.png similarity index 100% rename from docs/modules/path_planning/rrt/rrt_star/rrt_star_1_0.png rename to docs/modules/5_path_planning/rrt/rrt_star/rrt_star_1_0.png diff --git a/docs/modules/path_planning/rrt/rrt_star_reeds_shepp/figure_1.png b/docs/modules/5_path_planning/rrt/rrt_star_reeds_shepp/figure_1.png similarity index 100% rename from docs/modules/path_planning/rrt/rrt_star_reeds_shepp/figure_1.png rename to docs/modules/5_path_planning/rrt/rrt_star_reeds_shepp/figure_1.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_1.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_1.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_1.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_1.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_2.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_2.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_2.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_2.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_3.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_3.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_3.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_3.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_4.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_4.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_4.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_4.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_5.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_5.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_5.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_5.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_6.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_6.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_6.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_6.png diff --git a/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst rename to docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst diff --git a/docs/modules/path_planning/visibility_road_map_planner/step0.png b/docs/modules/5_path_planning/visibility_road_map_planner/step0.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step0.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step0.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/step1.png b/docs/modules/5_path_planning/visibility_road_map_planner/step1.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step1.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step1.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/step2.png b/docs/modules/5_path_planning/visibility_road_map_planner/step2.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step2.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step2.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/step3.png b/docs/modules/5_path_planning/visibility_road_map_planner/step3.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step3.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step3.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst b/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst rename to docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst diff --git a/docs/modules/path_planning/vrm_planner/vrm_planner_main.rst b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst similarity index 100% rename from docs/modules/path_planning/vrm_planner/vrm_planner_main.rst rename to docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/speed.png similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/speed.png diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/x-y.png b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/x-y.png similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/x-y.png rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/x-y.png diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/yaw.png similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/yaw.png diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst similarity index 100% rename from docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst rename to docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_model.jpg similarity index 100% rename from docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg rename to docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_model.jpg diff --git a/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst similarity index 100% rename from docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst rename to docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst diff --git a/docs/modules/path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst similarity index 100% rename from docs/modules/path_tracking/path_tracking_main.rst rename to docs/modules/6_path_tracking/path_tracking_main.rst diff --git a/docs/modules/path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst similarity index 100% rename from docs/modules/path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst rename to docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst diff --git a/docs/modules/path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst similarity index 100% rename from docs/modules/path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst rename to docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst diff --git a/docs/modules/path_tracking/stanley_control/stanley_control_main.rst b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst similarity index 100% rename from docs/modules/path_tracking/stanley_control/stanley_control_main.rst rename to docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png diff --git a/docs/modules/arm_navigation/arm_navigation_main.rst b/docs/modules/7_arm_navigation/arm_navigation_main.rst similarity index 100% rename from docs/modules/arm_navigation/arm_navigation_main.rst rename to docs/modules/7_arm_navigation/arm_navigation_main.rst diff --git a/docs/modules/arm_navigation/n_joint_arm_to_point_control_main.rst b/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst similarity index 100% rename from docs/modules/arm_navigation/n_joint_arm_to_point_control_main.rst rename to docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst diff --git a/docs/modules/arm_navigation/obstacle_avoidance_arm_navigation_main.rst b/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst similarity index 100% rename from docs/modules/arm_navigation/obstacle_avoidance_arm_navigation_main.rst rename to docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst diff --git a/docs/modules/arm_navigation/planar_two_link_ik_main.rst b/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst similarity index 100% rename from docs/modules/arm_navigation/planar_two_link_ik_main.rst rename to docs/modules/7_arm_navigation/planar_two_link_ik_main.rst diff --git a/docs/modules/aerial_navigation/aerial_navigation_main.rst b/docs/modules/8_aerial_navigation/aerial_navigation_main.rst similarity index 100% rename from docs/modules/aerial_navigation/aerial_navigation_main.rst rename to docs/modules/8_aerial_navigation/aerial_navigation_main.rst diff --git a/docs/modules/aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst b/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst similarity index 100% rename from docs/modules/aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst rename to docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst diff --git a/docs/modules/aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst b/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst similarity index 100% rename from docs/modules/aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst rename to docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst diff --git a/docs/modules/bipedal/bipedal_main.rst b/docs/modules/9_bipedal/bipedal_main.rst similarity index 100% rename from docs/modules/bipedal/bipedal_main.rst rename to docs/modules/9_bipedal/bipedal_main.rst diff --git a/docs/modules/bipedal/bipedal_planner/bipedal_planner_main.rst b/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst similarity index 100% rename from docs/modules/bipedal/bipedal_planner/bipedal_planner_main.rst rename to docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst diff --git a/docs/modules/introduction_main.rst b/docs/modules/introduction_main.rst deleted file mode 100644 index f9fb487297..0000000000 --- a/docs/modules/introduction_main.rst +++ /dev/null @@ -1,42 +0,0 @@ - -Introduction -============ - -TBD - -Definition Of Robotics ----------------------- - -TBD - -History Of Robotics ----------------------- - -TBD - -Application Of Robotics ------------------------- - -TBD - -Software for Robotics ----------------------- - -TBD - -Software for Robotics ----------------------- - -TBD - -Python for Robotics ----------------------- - -TBD - -Learning Robotics Algorithms ----------------------------- - -TBD - - diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif b/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif deleted file mode 100644 index 2fabeaafc9cd4ad4b71bbf451637bf2560f1be5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114966 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
    9c|O;e7FnVD_n2A9rMrVj z(#!J&W8Is=i|2@u=)N+DK6hoJ%86Nx0N$ErH)2ltO6ZfCt#RXq0XgMe2Z?RH4Y;JZ zfQ=R_ENr}dA$PXq#4DxIgbZXdwXrk6W!U`DB!(*zZNTENjoz`Sw!Ua|jt3yFA*d_+E=)|uhO z*{Z=m;6;d0sspe02)z6SwtJC=a%Q@%%8pTi@rZv^Hxls{_#BL_m^{)S6V^GI6yhZW zBcnOIJ?b72kOCY+h?)tz{ygAy z$rBY$Qz(}5=I?-KWlR8v#q+q6WnG+=n3`=i1MZ*#_Up1DQTz}SFslkvE(Yk3LtjJo z)5|jvor%qFQHMuE8%KRlQv-O9w8{|JA~|!F9O^KQh}Kr|M_>ff@B(VSQYUisQRqu! ztjYnv7saP@z_!UuwO&*!LWDkz>XZW1OyH?KYLyAp@Pby~JZ29Y>L3l;B2?Cu?KCz7 zpOMiAWA}&2a;;pJ*Arm>X?Pn?bkt)P0=MM(-#N%rO;ulEA5oa|roTj@DKOi+2( zbkDTV0l(wrJ!=Mi~v30la-ryIu6kp>P-gK zIuEElI0~Rs%&N2EIhB646_zvLS@&Z24CpnFu9FmpKztH@pw2={f=A&?shCdb0VYJu zpn-cw0nO^@Ci-sGI|bh2xCg-~v<^}`2Jn%UyWS}^xPw@iSb^Zj=HL%wAEQTN>0SrX ztsE{)tm3e2R$-LK< zIFxG339FP)v>2{$SadwOn6i+$uMa4h%r-)+HZ}sq@||0!fSWl-%^##9(WQqgfssc^ zbV%A+9{hri*2NZd41=L9Mpa8-PEx@Z0O2WBt`3bzO@w>#;8o+8v&${FZ-EL)mG0gn zUUE2X6kvivIG6zj$ zZBj2*Dl1cRm_c$NxjYIedxBm!1$>(d-Pr^;I+)QPl)=eNyY&#@wYXPyO$maA#Xwh78FS0tc8*!WmY)({3=tELbElzy!x;>{HatgZ_T=V#_ z{S@ma9i{mwOnnE+x*EC06xEqnzNS@djDv%_PUsr8!6G~6cg7o`8^yUfFBX|W6DTpY z4!IY(N3H-^;`$9})lzCDhuKP4$oAzS_hz?;p?Hmr*^uoh=iCE#n&8hz19!Ei(GDGU zuFC4RV8&zb)~O?%IjBwosF~7bgAUMN(X6w*?SffQGNkM@PidKY&HIVk zV-Jlbux^(jqr|aae`2XwiAP^=Ae0IST&29Y^NH6=eFCVa0>Mao0v&|e(^WlsW}nx}P^0P@FD%M`Mc z+I2;A8VKy#e|!76E>y&!W+3QsP;ny1OMZlr80g0XEHf*jcK}}xU~x6*0$R_x`-qqC zz3`GAof#!RHk^TCrn^JyQ0F%mBO_SneZJQl_?Lu9k&AEpErQbGnt(2juA4 zNjO7((Mxt}nuJuX1o*PkCjM7-tc#0SC&|-7!3S<01X&Boww{I`m=hjr(<<9?K>anG zdkAf$a-n51Gx#*{9PBjAFIQTApq><5(cV&smwZ`~7M$27OwJdb72nh1BLgK}=FcYK)``Vsed#2XHrlb4n2Bu- zDwV0w0y(lZ5fsRjL!^M`Bm+wYu4}=A#L9-b967T^pD;n7u`b^>`Gu`D~* z3C|k*@VLF``_T-lM`O^Wh?6M9^%wxZ6}le+CQPbqU7jVf;Cf5ovD0)d3Fx?lY~g?< za(EbRG~JTxGYK!JPI)O7kZZgL&Wwyj(VJR0(ZQp@UVJO(Vs4l8z{}BnDi2fXtjE|p zyKwL)pZmLJ~xZ<~hi*C;NtM*@n2V9l)zHxLLf1`td9(!GGR;fGGp~WN?@PSjqt_Su@DB-ZWHDA|2|k z94$^vWAdit9~e#qM6u+Vuk0Cfa(Ov`7qh@h>6dHNtmg zJOC7}^7JD&-)4_RquJmabJdRd*vRRNE@{C^^fO>R6!l!6}Cq9vdKKySG29;LSwH-z(nyQBE< z!n|}jIHH2~mRdK_-w&j;SF61SG-IUZ#tQ?lfplDH`9IseB*qC(bc6l#4!l6%tU6Jg6fT%{}rt@(MgEVeZQd_*U9t zoyJ>cq8vPlJxc>=X_8;>P&-wtI;LC9jlr#t0H?~hN^t=v_tO)r&f{>;Bn~k2?UR|m z`yL8(Um}>*j_ja)L8BW#uq#G~J+9%PX4D%@3DD;7m-)!UVj--o4CW{Q@-^Xa%nY(6 z5$sO*0KW=E-2P(z`O(@hi^xrww#0i0dOyP;w^a=;LV%cB3VY7<(HgiDtX95ETw$fmvS#?o+1V5BzYK2<&?=o zJEh3T)o;A1OLYyfFY{iykheAm=LU-2l<}4~s%4LkPJ>sz=+pn=7YzVk`k4|q;^mK( zd%+*)qsF!nAZdmxprc~@F)silUN06DHrz6Ihk&b1u8 z)lL#!M2LK;Qw;)4q)>zhezuR)&x0n=qH#$$7T4K?dH1f6F%%_}qWah5W z{2t%?DJFOp$Zrg?Hdvp&HV2#$GG)!&KIBZr==`SpE{157MAfbL06vX8_V`_$M! z9$ZfIbGEasT^p8>(%#?v8|K_f%1QaDI%BhU@U^!Nvnue;oB8rUt7?+k>hm1#m7h~d zbZc*!+2_tcQi-MEP?e~`x}2=rjL9G*dACrtxX=v-+@ZO~A0<;n<1SJaqzti7DdF0S zoq?u!qbd9GYi07@T-Y-^$3_jKR?3jbiZw7?vYNb}*lE>EY0WV%BfvH+`i*@)^SNe{ zn`d=-YV~q0s-?lq%`J+7aB{Se+X>Ve zY1#UyG9wraoJrv{>~5fP7$S#`an#)4kBI`yktY5vbfa#_B&$3z5JwL7cg!S}Zh76@ zRC4H9bFs!my-Z|Dcs_<>klh4%-u6ginB_Z36cA%7SIS@AWIMt9flrPFe>dH&f4cK* zpf~H&<>4aLi-RJ7BCBDso(;=-qss$VopKSZ5EMk`e6sKnsd~RDkGV%GEQoPGZ)b__ z_h5xHwh3(mTS|m}EZL8Sgok=KoTydZ*<4?E(PnZ8xq==Z|7BPG&W0z)pX4ml zmAyu&8y72$0xzw7pOq3=XG@|9|1kL2@~mZAgK-~B9$Oi>r(|U+cm6+4Qcl zm;cnqnj-{BoYP7$%-858llIC#El&)HixUSu+jma@~M{Iw`3l$~;3VoLx1H%H0=l!+p z85bl&qI;&E-b=Z=dU+h*C6pvy-a->pdJp+0zaMecYnJ7%%y|vxO}0MkAFOmUdSWJ4 zoXVYRa5eE698Tiw$g%z5j-mNSt!TM#X(F23slVJR^Pa6UG2OX2J-SXcSSld0tdLx) z>+h1#Vyeg(|9OQVROdjsAql{xei#cdTR8r#od^c>4q5KDWxgZ{Ab`&BwTjqMvs=yR zd27ZvV3t=h&f#zQNgE+yuwIJ`W|z{q^f;VqNJBkF`L3&AcF}hcg06+kLC``}=IY)e zuw{yFeB(elj!A=qp@N@Qrg@%MW)a1c>Lw_Y2@{M=tBXQ2O?g$tLdcohzT_BZ(IyTvYQ;nN{kO9-9Y zttG?_q*kNL^{R|{b?iCW_$(@Lorojz)VKpF)EZpQKj1}i_qRP7Y*nej!kKejC7Wvp z5S|ooc=F>2w~-1=u{{b~CUF|9l^&zLcGWRkST!n~w%Ev8{Vo0av&sY+&xa$hXe9`V zGDBpz+;?1&2>j@oxYP$dn>zk9wD5V>)t*QW-sc)xvFs-q*DOaJIn_PT9u;m-suz+T zuATmw=oNNtvnUpEPiW;%jCi)8>;z?jL`q#WlUN3gSkWRAH6oW^Bm#6aZ>7r(k!^a_ z0_{t7=*^__MyJBRv>)~VPiFk1Z9h3 z-?UOwVQS&=Vk7#X(OL-&%%|~@V-5`pV_R*-+{5#PNYHOy@Lq60LYA3=tF+WMmr3Ez zzdkgAm7Ecm-;CYsFhCCJll{YdhzL?t=xvCB52}QFKi+y<^q|O^;)>J5(hx45yw3>2 z4OhNH;0>G?Wz3W7pRp)k-X!Cav;!tSZeQ)9dgp|@vBlnZPq;|XM}jP`<(ZP>T?Se> zn%m6onB=r2TPing!d&6$=AJMH>dK{;ZYDtkZin^bL^5Ea{f)y=bzP6$huZ-Jb3e8X zI}AcRykxL zicA;0G1w~&CH#I;;s8@}+;}~1-)0+g{Q5YF}XX&*j&Zi<)rrReX!Lm=~SnXicr%D+!*@{#*hfTB?f0pg-VZI zG9k{F=x}dP>B$Pk6)Fw>IT!9jlNm{EK$){!A7IIYEQ+C4Jc1SW@-sS|EI;>iZ@wnU zag-`pi*O5KwB0xAwn7=`^qtkewAye?pV7ME&pB0})DvZdmiyR2sE4*C4>bMWi`*a zd7v_N<5jt!co*``3?4mLc3x`#oGXPaT)ete+C=vdN+gIe1dD?zS%dvcd zUd7|W+oIFw*q#+j>(wNb;yB>ga>x%-a%>0@p(g3SuKwX?{%R3?MxOE6)pL}6`PrD; z&0P-L_aVMClXrnyBx&KNr=|xTl}xFEb<(O8mxcP#F#Ej-$0R)?w=R!60`FSeLi_&v zVH?b!X^>xOI^8*b=(1NbX&rg0<^{&eN9tAUbcxJXU3luS<;VJsxebu7LZ%#c5o(f~ z4+btTt5b%Bv=Tv?+wkVq$EbEiOP%+l9Ae#V6ReR?@9}R>FDCr1R!`+$nXM&LVKI+A z0me8JaQFwc(kc<#B)QrE;GvxWWS2)1rO&8axIa86P%NCZS9{YrXe<{nCEW@)MkZrk zurIneIc}nfV+tZXS1g!ExM*Uf;tD5z$mQI=@Eo=XXoo7bgrCi-xl)*{=ECByoCYr0 zZY;^qdwz`ka$nw#dl#8BcgilOc7%jTgKa!UO1)9Edb!A1Yv99fyU}n7XamYtFdwL@ z?aDac;Nx4->k?eM{xJl5uQ}g}=3Bo2r%prg8i*FPzy{lebRTq{K5mX>odY1f0U z7p#ZWOU}WP+BU?VEB%y4G@EZ}lR`~WbGgS>`t^E%RT)cbn2+QFhREQX1@os`|9aE1 z(W(IW2Ej?KT!UH>qj!A<4bG4tE*#5yVx#uxsSEU8Vcu7V*QZY84iK;Y9MrZ~wRb9` zvQWnNV6V(^b~*y5-XZ7LW6>7p&)F+k+27aOz1m>1Bs5a#TysWg4fNa?&yd$<peXS+h8Y;rlwkIQ=)p&r&GM@B19Rh^lNrN+&R&4YU5owyX zy^NK=1D!gHeuKeHVDyAyFS4-ncv-#^j_iXhWv zIp>b#Z~vOb1ZBm+=)@acVaj}fDHd=S(n zSIc+&cX8X?s%0~cu%35{pp7;H@3~wOLMccNdn^JV5g>)0K}`;RxkNKVZoO(5N}Y5W zPBb@`2=ZWlWPu>BKZAe{zNj^`uUp(ZHaaqvm(nj@%^GCNAM;0~1CtWcvGA6Uh>$Vu z$FZTtrPn+_C5C;srZ3{<;whxgt7!M4m2#1Z20_0HmKh7vPJcc-Y=(-+S?zocad2C~ zH}w$KCh1U3Su||tall>QKa*eXu_PR)o!czM)omXB)Dz`d_-uj}sT`Qen1;cveQk4u z)&JO|xmv{T$4(o{ysM^sj=jiDjW(99*WIq_u@k9P#XJA4Z54g?#dNFPb}K8!2$h|S z3c>-~!61dz^sMyl^v3|k*dsTkEA(Df_s@u*YxBZ!6Xp>8!S#ZTY$1!VT^ZVUznLuy)Y^^QDydL{sl6&|+`UBn|gBqi$l_H{|VyUTFS%IR0 zBhEPEn3k5BV`Ty2JcRR*6`HeFR;FgQHxQbom6@8h8?sL*W$zd`CRYobve8Fqg{NU8%$gwrbOK1*BhHlsPT%Y1sr#6*d$0(Oz-hUEX_7 z_%0vP$JK699e&A)fAkuDanQCf5YPsB`MU}5wxM|qAY;&@_wa+DOsHXEX zW0T4XQd7@=)-@FIeg;bzX!a3>IOpeZb`=$QI-c*tFer);HndbjnC&I>*&FRYqjA={ zh`bm2*V13NHM333aAr%lAWsBLT26&kf$7laXQkyw6V$3gi(VtbHfe_GxNpi93BS)H zw@NykiPbh?XeV39r_7w%L#G2VnyWMA{&!XP9`4vHg8DAK_+_N8#YLhcQ+WU&u8ygQX0IFUCuvWQ)J@8 z_E;*xHmQEr)I9xcFF9T7K7|F}7F+DhSzgN0()NL)E1=l{D0KL_Qi)Ix*7RD^<#^oR>f_Gd#7Tq-JRq7K4Ux6O+^;|T#u-o|-6F2S2es}dV7~7I*pP3mD%d?+_!)U_a{>FT6O({Xt z>2Q-kO?)e{;IZSw2T;iM=Im`mC6UZsOGg`poGGf;n%6QPHB>lEGRGub5}D5i?luP~yf-J; zWi>g!Z}=&#S^vE2(ie-$EQ8J2zah11KzL52r-wsnZ1fk3_)jarn8pfrR?ToWKxQ82 zIwv@}0QU!FUkRvWO3uuj)NuyEO`Tv^Do2FCX1i9ZFv$xU>;mI$%~*>?&Stj{BzsnM`?{B!#oNdk z$aAr7FTaKNN1mF-`o-^@e6{t^Y40#UQ>4`nH-H&kWegg_gByP5UmEWf+&=i49vM>D z-11VSy8S2jXmmwhd_}A=_P8AZ*ka^!-o?KI=^9B6^Lm)_>eUqo=UhGgDZzp1P$i@A zI{G33pKI^r8pXzyAu5IH%yt1X%6Zfd!DvCmdXgR6(PvpE`IB(?LV;a@!~0i#qb$OJ z`gF2HmqY_Wh$1|A9UwO~6dJ#`mKsD}z8y^MV!s>~Adk{noSo)^87SEoBy_=PTxM*n zk;_P|^if$05W1#;(l5jG=IC2pNY;sV^&yR!z_l+!v$R-vF&)4*J0#!CRrC{pkx&;L`QpSg<^XAfG6#qXCU3{ z08XW@q8+Sf`}QJXmOV*I@9;vDV@(lehe~SkvZB2wj9V@irC_1H`;J?b=@e~l@TOJ- zyI?fFOgB5}1IxeZBR=iN1v3SAuOMH@XV8bbcUq}!pmPG-Ee!* zcCE@G6B}!Ym*x6Oo{-7YS8N&ejs&+5&6zDX?L>`N*crfY_TL!R`4~BQ{X=xzE#t0d zH@-S{K4VN@c*!~5<8ss45q7{_Ut|BTJ{LTBt6$ZL6u>~6ejQto>*_jb?RI+O6g0Mr z_hH!hvqgP#hipIW6GQ{v)VP(=inyegPnJysK4h{=M~|D+6W_9jK0>SttGt`mcCmD- zi+E={Lei{*4ePViLDe(^z%Cx#zw7*ty9N#CpeKJkFBB%8ACXKAXUc5?T4fga7T z;_}J@JV0WvC(zGvZ!b2OLa?#FarY|XSv2OVAZ*4`w5|Ikp*$miNx^j7=0@;Dd@cmH zSi9BL4b{~S->5jW*B`PYl+k4$HS7xLAyK5TrTptKEUb#N-bC!(l#d~D`RbLhFvkqA z95#JT50AiAuG(+xwbEN{0^4v@I|`c;>z(!t(;#=lhVw2Z(s z5bJ=8HCIQtYR4_(^ynfG>~~8Oa#&)Hac*m)srY4})}V^93ZCdXwbcVszTrlw6rJi8 zV}1g1OZk*pf#ceKqSry@>MrcX?H7`W7>jUL=jXx{H~BW}BnM-vZo#(raD;{HYiwwa zbAuu~>fcT(j?e7Z6BMXAR<=t7Ry)iJ5P9SPhJJaaX{7d}5*A$P@sk!;|6n^J6BNv( zdTuu$x}nm%CIq5+q(3^AUQsZfOVd%XumiKk0>^3c<9 z`6@Z=^35rL1Edk~i)ci8>~@q3H!bc)bqPt2~%-nGRYCTiu}lt z?M#ZR11W-%8xKqAsC|PmGq1y3Y%*_g5p1NT3s)M5P=n=HMh)z;jy`2^6)0OB2Hf;= zq^le`h78S#aM69XAGNV$t2^YfbA53O&Lsn~X&nvK)o3)SBNpm20yX}eHb9ioh9?@h z2$c{6Go?=gurjuwN&ho^JupA#&|gzRrse@Q6Yg@a9<6>ve}Pmca<~C#Vog*2f^(rP zT=9O*yIA15lIEQQBpP^+C>`+z_l~SFuzN9~rfT*~*E35C=uX>>H$IN(x)Z~VOibxj z(uN==;)>8YzOx8lz|api9`q#}U7x)ow=y|sE|9Cmv5MYbkD>=m_*ki&uHT>Fy7{7z zDMN_gC;GE+7op}tH`v#0bnBi=@OJS?gFvWtR*_Af=j3JNTz+P`fJ4si9GnT#aSH|K zl4GmL2WGum7P&a*A=fzaaW+}IOUN98NEnaU8i(q8YqF#z6%yPu#lq^0=G*kZ!423$ z21PGSDcG)cQT)K#fMI|y2X$Iy`@5(4wy)~|h<^Co^i0laP@O`mOa>Tj}E zE7S`dJ^KaQjKsHtpv4lX=hW8?zT`(^_(x?f#g2*^{v}*K6*aZcMsj85^t=y1C#P!c z`}^kjmbjyU;b_F!3ihxd%DV30H4}mg-3}M*c{j>}e{^H-JtvrK;Uup4p`z;p6S0%O zp)nek3_5g*;i<1j)>ReZCPP4H_SBiU_RQQ|b4#2n^G(zxoqk>^YIV%f{z=3Kh@FY8 zM(=JJFQASs3&t50u9H4w>{7C;A{YK>E`eDFB;{PiTKG8xn(F2jI^3Wc7HlQcTUhAz zKS4T^WE)j8Dyq}4;om6W3O$10OT3hsU!oqjEeRtAWotN-@;DitkUJx)_nxU|MxV3O za}kpkP7RnKe}d54{*&j-k6v95I_HDu2Y7rboWEd2+;$sTcZk3 zepD{d)J1K*u03A2{X6f%i-dO2>pzoDAT>pD=R-(j4T+ey@0;-UX?B3fRJzBCKXm6& z-@M=SLw`PAh!bmJ$pzBG%ZeaTGdqEBa810eTs8W3#S!$*syw`&>D`CQ`$IxBr!NzdnDYWz15<=r2#SS{-EW?NzZ3@O+UeMn|XASVN9Nq8w>Tay3N*Lv5G7`q+ z&b4EdmcWl&_$o5VkX-NVqMGLbWaIpLFk0G6s*}*6n$~2z{bB3Tg}1c`ctd^75k!h~M0IYI}x3oRVR#>(`~2yLNi9 zo6yHW==_Hj33p8Z^1I_wT*C{_@#1AwA+86ny|d8NqHsnu5=!P*18(PjmSKIK4u=b! zEq$POWKrXcn?82uIQdkv?~U;yV-@&ijhQJ$3r0yUrjo|`2Fk(?n*ea9t)5jr(x=1I z$#&0=BtLGm@i_2ubM1ODjnxBs$0+KZ_2XY$bSim4T|kjJtpZE*dryPo@h)^V#>Ow6 z70cRK%cok36=_cG#9f9{&s{hEbSMLvN~D`VmmjytKe-dU*ZGbi@X~kntV3|+CW@|O zbnJKnCA~w1X(l!NGW}ih)aWVSpqI{S&jn(6gVHp7%varo}Smn0`wTMFWl*UEj8HUS=8Sat@H!ehfeOB#^U5lLdYk1gYg{FFibs{CA{&R=Er?AkOr{N>t*w7rw zU~HT}vpy5gH<8P-#QOyzCw&S(ZVvS|<%fWUYjq!&_(=8*=lU6YLX<5Ox`v^fAr;oR3MHK|-)2BM@U zl5(mh9ly#`wS92T#?5yN1(rL);L*>CF&hWwqS+fhVq75q#@LtTT~|Tlh(N`Nw>$fM zRKXi;C3p@5wJbFmqk{LkOSFUiQ@%$3epjGm14_d4sI@ZCw|Bp%F$_g+p|Eka4@EFJ zV`K2r_(0k1XHqf}jOT#=YTylDDb30+QvU`W?0NHX$Q9{FXi@=2X76O5SzmGH#%)A5 z(QHso=wXn9{Pev7jGWh(%HT5d#tywgn% zlpdASI!L)9o24VLFDr}GT7Kh5#Sg$W;nhrtcVs$3w>qRsM1!sU5sPN zb>a(kYoQ6_F4jk0vX|pIe}+EFb+_goVzj%Czq@up2eSV3Ao%!dspUmTiu|uM;TJpq zwN8d%J5ROQ*pDj{pj#+C?MRiFy<1caDjn%1o}s;knIfIfv&P?VHa_4u#@>;MV&Ms8Tc_HjtlvCnHm@}?4-uHp&?bhB*da0`*Mn^oDU_d%fJ#lFKQ0e z5{hi=p%#Ztt&Qpj1Hbi3Z*#G%RY{vG0=~!#kpvrv=$Tb~m0Ag!!v6wQU9P_f2;1`7 zc^IZlD`4biCIe!m;rl57Wz-b`tmSVyoHuPl{_O6P!tx&Q=OlGTumrMvbNvRTY1!3cZSn zU|B+LTJgu>G6EL(jRx*dJu{L}s2WkyJyn$83mp2oys1UTBT4nC3`i#5Jme`5Uc^tK zKUiLI_TkXQb{g&I?oRpYP%?W32IUDh|E&*JktlDM{HB&*zW>s5HovvcNgvOLPMt$n z0MKzMcMYtg5{UV7PUXJjz_=uOw)JXSm@D~#IG{Us>GR+odC5u4$J!=0tDdQ@^Qmk;&^RT%REb`s_BXbLThzGfIkuU>V>NmU0~# zoZmP+J1Rz#wOQlqlG$$(9Vbkn3Vn%+Qm$uH>x9czu)W8G*Uh9k^>uWK6J6?ZBbL!R zGZsrsby5*!5lrYqEJ#9%JEsl{0y}^4eZTVA&Byz5YfnwYOaCswP$jUlPbIU*GBBUQ z`XbT!<8JWnJ`uhb)&L-*J`XMz+%CB{du6|B=}1@?<77C>_)EjZt@N8fSX)R{kwE>jif64gRj!=Nc zAOBL)@NMIWr3}gip~sWbPRF^Ev4r*!n2J;=LwIS)_aMOs|8jPncvX9-OrF~6B!6>D zmrjcd)_F-`cmJB-aw%(^wh!#Hst;h_2sF%b(}_a#wR6xAhE1 zL$2dd?(@&xxxrT$+BBJVaN})L+16)&w;kVfLFskC<_M?mOqLmiHA-aJx~@xmXsCj} z56U4#ai7>DXkzQJEcoG22$LcHW@UlHHT_>53fmcBkg93Tl+#z&FX|2eI^wO|0e&)@U8e6?DcM zq%{DXsjAVil^Pf45NPzXPbAP@o}is^gU#PCrSlt;)faRpu-%n9`+4x=1-IBWqgMH$ zs1KNL^nVPb+U?^Phk#3C*T-(8Z7Eti8f5DNxDeqU_ePazI_uk_cS=nfAled8Y1YsH z)h44-p64&on_Ug65hA#U6n2>w^+9Q)MDnPaI)uhI$T#uqLY9XxKVNh1YBepbH2XL# z>qgG}d~GBI!Gxd_kE~jTu3z;YDk|I46(+@eq5qRBteJCbKD=_V;pM3W=jP2m2kuK* z#dJ!$iXyd8DLirZ?>+P90N58gCYE>56XtMlyKUt@!)&aYL`~uCoPkxgEa6 zIZKyDprV`0%ERCOm^8LM{ZG_}rGbA-%H$gwf_zYO_kvHJev;$3dKuu+{`SY{v`c1t z(KO3?Vz`|mNNUVvxA#DVIVgHVx&FH`OcAp(wr*hE6H!yZE$x0{lf2j=#GJ6Su#x7Q z1SneSNjr~3wQ9n2_BLOy*za*}U%D1(SLG6;(V@)1Vesx9j4o1->h)uL6}G6#I=3*q zN5BZUSk1xjUSrmBuDCzsXh?JA{=ud3h}22s9cQO<4Gc+ts>!?ki&lZ)O=W2Vj=H$A z3-gG>a@tzrlPWCl=CEwnZKIV8r?%t#0~!>wQ-Y0l>iE?T)?a%#({<{%YPY{CU(|Kh zb9_jY1;FG|%;D|~#@Jjz6U^`10^v1=9Cb>A|Iq$r2OpK`>PqmNls^%ag05UZoz$41$%UZuFVxQBwkJPnkOF2z$AvNntxRU# zJY~hG4|#GBeQRckJ8BZZ4!7IkG86=q>nZwh`+Uk1OXVeux^Uf&2u-y?y$*tK|yt_pxt}Gf+E;p zdbF&MZy>RAD0c@p3J^QGA6e}-l~-7~Y5$yOGHd-wp1Tn z*hVg9)1i7zkE&a?L&$KL)5S=>>ZQG9*%dCthkm-qV&){`Pb%i!SP3QbfUd>;w33KpF{|?+!ZRp$?~`pJRdW|d*A$V?v-!4{d+ff#-FE%; z_LZV|C2$F-x5;QOjartyZ{C_Q`e#8inuIn>-u>jmt$@8x6PH+|e{?O#%O;5ulP7lg z)0t1c!?zxFbWtOyckxpkIY1ZA#9V+QH5LfP#Yc0p6w(!k^hBW+&wKCYG^iLU8SA zqZezJ-AZt}(7UlQQa>~QStuXaHZFImxihY5lE~MNlJ3mXSWsQoxQ&BVP$ml{FWVCV z%4`q$gJ6+qW`2F>;RwtyBOh5F3DdO=XU=5iZ!WL2K?vuwGHM?%LoWm5&2A9SQB?wB zwuL+-!(F1X-doGg#T_E6cP?(&P-fTaxCXXyCmZxGa@vI2_>&35>~&1#M2-e^Q8n?d z(zZMM>r6RvR30E(S39CO$&wy$nb(>lnE|>QQdHY2dpqB%yu{IP=h6K88jxHd*s67R z^h8 z-ht1nHP*`JF`T49EGVKcRG}!`YsR(O^FzvptSNG%;yS*}ZVdv1zPg`_+SOh~U zAPC3242Bkin&g1gs zp*RD&fC;v`hY#L-haq5<#jl=V>AsY+Q(liY{Rk_K#$0frfcSHA$&Ax#!~`ul z`h{1Kd)ja_z56|QV$oBKp}KGW0)r5dt+OZ@srW9t---x1ORXW7?BsfeUVgae=jW$O zYNbXuZZ^#xha7OJq_2kQo{)fNTc16qNCpv{ zztV2}u{M6S)w)zv4&|A@m*tztC-$0ixj#(7B-iS%?zMM9dTO)8 zPg|0|t4#jsB-^pBv**RDh}M0}{uzS%Y{>{&`V#ZxFxdvS$|R}RigPJE{d`G?tuEg0 zZZV975H;IW$`I9D!+P1*&{K%<_v=k<>$Vd!>U>Ppd@Y%$)Wr0xU9>%Fw`@K7n>xRy z)DhlbD0>-WpsmEJK1?xCN@!?5SIQfkc&S=mfFSZ;*-Z#nwjunpBmH2LP!y^a|cmMAkyI%B_&g_*g_!@##re-g)mxt z9%#Se6Z;QZIH3L#AV)(W{5=dcwK$UcEXYs}a`J=VL2Ww)B66<%$9$4{R2=EJcn-F{ z4K>K!P->JedIkN&{;RqNUm+`4bvjjlkJQOCiQm6+bX0Y*)NN+?>6BtlhM{G-1X*Qw zE{cxti^Vm0Kt{O;M^DIeE}>VIaQY+uj3?kBg>EW9{*b_SfsBP>#JBmVU5&VPCK^V9 zus=fmn&1?W?hu4rJ1?LX`wgiYgYUWymyWhWkveKf*6%xO;=4|Ml zkL`)`I$)1$poNoY@Md@2&yoUzKj9ORh(iS*X>LZAbod&P>I&0&kH-A^)baB&nf1UL z%hZjbp(oh|>N40bz7Bt`0Ymfvzu zHVRVu(BQ86dS1EuR<8l?$XiDRdTeOORa?*BS1Ga4R&c32dCDdx8tI=E8rJfa;?3ZaAiUIrIpVaWWoqmW-lEaU!S1C`9tncYKf|+rNNtRXoJbZk96*n8@ zysHemi~p(~w|8M_Po97VwbXetzspwqBR0Y!ce_R;Ws*!&m5DX#ywx}KnkHf&Z4$WljxPY=mcW%fz;Y1;wEufoXj7?iOt{y4}mF#+;~3z>Q- zhEzIkaCXd+G2`$jcj>BBigS1AZK^xKEU26k`Fv?ju~)gPmP}F>tvWAXa?X~y)IdKB z+BpyR-jjTJeIM_!vZVId(s9QZw^w*a(<5k*{M&4j&Iy-vny_t9qT&fpz$`nJFZ(dJ*9wnV-l4fE`yy&UB9wj{MHo>UO-?FHh zw)XXKBDvXr^|h+Ba{gaFCl|!wgVA8GTX?^$RHMd6o;WbrbvzM5n-N(BRHX*gT~pja z4OW3IR)LMFffv38c6|-JHXU#^HRz^Qz>Tj#zgqm~6F^D} zFz^d7_Vd`P?qMgw%In0#OLD_wXbNZpkWGK)fwrs+NPQ-7Ie5Ax->jI+&w zglH-HZZZ2`zXOIcu+L1wg5M#NX1p`sJDQ&Km%2TCeg!GUuSDUQy04?8;O;cEPoEt} zdV|XcIZKa3gHt-3z=zhJb*FjzTG?oe5Baa9Vu)$k_F$&e^Fguyjwm#vJ3VfzS4|q& z>v3Ar4jZ-kX&5-uBnm&%m-z{JZO{a|Qbf?`cjx%uyK8;y;d`(OH}hHQYsFdd^&;@z zZt!UO`fGt6#>{uxhmdRp#CW?sf7!o3S`R$onq}B@+?;XzcK^xr)VMKMbv3$tMR+t? z7i2Bqzmwwukort2X)`Bas>BD^2x7#iE6t9>GK{xoJVQ%gZx)Y#^H*1&&#oc~FQ72) zzUp38&pFvSsQGMPfA3d2jAAo*%DV4&&7P#!`c$NmK;MM?3~RMUUPZ>yo&5sCZ--U6 z{^!0GKn=lx{jZxhrs>$czVa>2D9Z2PSHB>7#&!S0k)_22{?-wyi8pLA_bc)K_?GFi zlJQAMu&FtAx!)ZvKJ;n!SkMUinH`lOhU%it7TOEg+sf$Vq>uX^8H z)_20tE}8JXB<%emRGppiMs*d?5nSyNPybZ&C@^~9$i5vZ8Lk zG^p+%tS%kI=s#q$ z_t;2Z)<|w{Zc$Ou|8h3FySvYyKmWg+&0h*aQC&e#whQ?p2N`oXy8)N1ip0D3Hxp-T&ikejOSa9UYyXp8h|P&9Sln z3)y`4?%n@KkWGcEdHDY|RnvRR|6kP{=}aA?pYP`0+G+|iT2yjG=^Q7Vp5PhxC7P;H zcKaU+C`Q2m%IcDs3J%6yv_O}Yfk7&;nFt#9a2OvB0^l@aBNeKcI)EK8rh~wW9T}RI zSr!ciS)wYdh+ks_T@WgIw*A13;m#>dPxX<6mQ}ymD4s<(h;m!G~^P7O-t?MrMp0e z9KP^UUx|w%??*RP0d~pH1TZ< zNu_c$eqE`Tg$_e~9*H!Ds7y7}fT7oVcJQA}G-&zRXPQz0I`?7w+P}5Vrq_6LPn#|v zdq=@!h6V`KdT+PC-rcmS zhQs4;>p`u+otduRUfzPX)qdT5oLxPTIaRaL$_n;SPH)f0{x?qZ?IO*EWR&5Z{SSX2dRp#-;W(GSg z?GR+Q#S+#oA_~N}^5W4|gfZyyerh85azIdn=1|xR0k7NSAOD(relgvl$86dtPuEG` zp4+A07fspG>h?o6e>GLvOtYjbHY6a>&wpP_GL-b)d#LHGptXgMnQbpYz!mG$)Y3$U z;4oC8`?Wj>P14{!u-WBP$r{%-TL!`d)~s+njofOW6FoBF@0n%NLD z9@2kQrariuV^-X#vY&ZN>&a@a&3L0)`sgj~AFB#gQzb&>$hGnlXIAr*%t_9b`ErAp zoB{)W6RvFuZ&WTX^cg34^-!=|4}2=J`$S^O;UgBGg~i(R^O}!iaaPtn1@u)K8YwGe z_Q;6cqf%u9sbj-HlHN%bE}Bf_!@m%5brL|AMC2n>UScD7%|tkhxp(cd0e_rna3me< zTnIvlH$(LEKzG?*UJ#oBvO&O=I|F=PIZ+HXjpr946+~zHX1Ixa9Lx7^bCo){buf)J z8jNf%9hqv;KDIno3$GwOU??IUiP=%sILgCHrge+F5Wy5fW`<%s`Vg4pABNbXTE%mwFMlagCLJ&oOQY7_Bq!hP}Uv=y9Pv{ z%!yJ&GdBt-WedHrSX59xReea4Pfd}c!oJBixwH6oQFge~OAJF5dY-2wLjCH{u-9_C ze@LHSL+tQ+oJT%u^w?dYy5i_%W4yVtb3GVdTE)|BSQQ#J(3@joA-L)u0BciS*`jh# z?-cr3yL%(TEm45Gi1wv1EO6C{Mhca*;By}Yl}O1k-L(vUtd=Ice68GL?>whmCMUSi zWCpPq7^!y}zSWehd-KP$q1R^#m$!d0v8Ft{NSqH#(|!k?d)Wg z7QDW0V-c|IE`e0`f;Rq~cSCYyxQjffsn0)w=n;S7j-pN4^kT{i=}K`we|IBgeEf?v3GEl_8=v z>XZ`%Ww_Lb$onccWh~s=rUQoV5q~f}vGUGzT%dp9o1pfz2oab8M!2;Lw#4oB((?Fz z7t%OvvO;6o9G9XtTPxMO)B(nfDs(;X6E)`FrPld5LmTm;a_A&NpDcasGApMIB?@=; zG~xYQK3qK`7P^w@h%+>VsRek2e7unWxej1eOmg{ht|a?H|ABRB!mGpOGTdniLt}2zu?9w!mZ5Pyh6<7w!RLi9_raC=!ob)-t^iR3%dSAYEIetr7s2>ws(TQfUep8G zkevacRDo99YMOA#Hqjdn{9AGCuSMm`pJ12Zqyyv>usV!xs5^ZfFjiTBe^2;g8rvu| zgv)W??=hTgA41uCb>G42phxyU6`I23>R#xBRrK`;l>2er-}7!V3>l|{rud(wXSoN* zEgW7gXsc`9?P`ba7E>L_6^!G|HiQjY(T5 z=rA#GwGSG}4%%*}gx0|Hh!DXbXO;w7zZwsOqaKey3-frjAm{G{SYKks7LHSsC<~Lw z-P@SGQ;JNA4kLx5_&xawh$@+@L>h+GeT7smLJD7Tw)a4XTMo6v0HxFWRXlUMI42r- zIS45t*a_`20qyTe&0)v$D44!^L^vpurVcyHErozl5`zR?%2^5#%r$VVmfTNkr;z1b6cgR7oTXjH=03 zRO4awv+L-pzX9*Rk;<{Cu3RJ~QR(yJgsOH#ILuj~UZMODvEdD(hjz4v7}He?g!S{8 zJ?YRHrap%ui?Ju#>YMA&by%fluR#{M%Sr zWHnN_L-892oZ0(%;-IojoID?Q939M%0R9qKb`RpB8LCCB%vlSJdV_3w3}F1z^z(eL zP9W>wa5hRHg$^OGo#8(f{h(Od3_?pe{#9neOddK{F{{|d-9HYOiuO0H0h{JQoVXEF*ZdBy zLBq}9FQLdwW`~=5V3Hl8sJ7F$@!T_xEDQ}03wcm5ikVydxF50j78ybGGCojfhG-5wL03@rHTm%S^;H0&`|g&_9n@$5SGk9`pCXinemjBQRb!YK|Of z!|e%B8fP*U-k_%gQ2T^g|Ad*41F8H1iKewwHbY{>P(HWzQp*`SnyciOf6y%2o()8c zT>8X_#W&Dl7G`M)s@$05DgpYq$SkLji!;nX+6m`*sF4lkq~D2Nkm&3(*Hr`rWfUE2 zOLA#Lr^Df*CwaTVv$1R?eQ~o8fP{`9+r`RzX{>}*<%2!dIY5i}ZF40d1IGp`3Aq>% z1pkD|F@x@3RX!|XZhei&qOoixNMH6P?7R}WBk*M^kS$V9FH}tHMjl&2SG@s_e+RCQ zLVX8e7bg%-v5nh0P7)p-+_ZlkWnT?Q{6ZD9nenkAhVm7rS$(eod{aNJB@Wlf?Rm^( zX062rTRrQC5(N69Bk%BXGz{8HD1z42p zDw^jA-xTDh`w4DW~iejSeRDalsZp|4{(5Ps=9%9#<9;_V9_O2o}jv6)RP z&QnA2_?3=AQ4NWRAoj79*T8{{E#bg^tOPUX z!+bOYQ`m>N^UxqJ?7UEdq2)VshwwCb828j+hmhEvT%u%<*Pam~zN$<|bt#4v)d4j< z(PLFXgR$sv5pb3gb7l$M_Psp;z;>)!Zm_%lxeE8)k*UjuTuX(A_dt)t_Pee^Popau z%{m!0R=Nb?W>)C@cba`Yx{9V$ZX?AKA)09Lb<}MV(a(hKe4yvLHw)YjLaqPCVnuUf zOr0V?g@E4*r(F!&PK@qPEPDNqg7eMff--}}1zqq=jRWX|#%LE&P|y+@N(BLD- z%5a;NgT;Uo=ynk&pLC70-2^(rVQ!^{V7ZNx(JfnpTbi4}($s64GnFq%;@egSVC}&5 zVLrn_JG;H)p z{%{T8uf|+7LmvIAh|3# z01S0su~};C>M;*dAVLatOGE`p4!9@sgJ!rrAk?K*?u7~DSuXU`tdEYa&1aY2PgLM4 zk4p8?%Jys|G8~yOf9Zx(TAv7r?U~bDU*RM^OZE}N>|L0fxIJw)X%~Et?09_J3_Zy7 zd*pKf_*M@MP7I(rF%?~#@ovnYJNv+$53y`uJZA(e0;_8cZOF^Vtttx=m3FKuziAB* zmW2QM=kVFgI2W_4MKS%@y$jJ@@}Yk*r)VI1-wDq3eAqvTJeqQ=S!#Ep66|0t5*%Ou zuh&)3XgV<;&jpgEU*N_Yb;5f&U9j^9A`VDkLJ2}lJbh_*6~T-tltX^sk(Xc?v*yNR zh!iIoQ0GI}rm0YAVTk-Iu>IY^;B_c>^;I|#R+fUORVPLQzIu7nq_`>LENcgbtBYmWF!Ync^=#SNiHVgUf+^JY|LP+7=Vx zD~2X;;rZ;qtBJ_3noe{s>S7|IDLww@u8h;Gr+ug}j#rhwpJ@=!|(TRwz-RM#{ zj5VLCx^QL927+TNbrNcRGxjb!`e*ugF~a;QmY5H51m`_3zUbWeRcr43Oa$Ky-sW>R z>qOR>d1%HTOmB9?^a^KT3(kIh>Do1zIBQh=T#Dn+J zA+Yf>4m;}lA`mPAf_WE^;i%ISwM-E7FH>-32Eu6`mT=bb?>Y=Ngy~PXJh~NK#9$_| zAv#>Z(QF-3IWb5eUg}SAp-GUfW;gN@5hgpFqpBea{xnFj<6cA5_7t9fr(DfGcX1w8 zDFnAMPHqqHCFhBRmdbS?RsxL`HxIZH%k+vR*L<0ZQ5)@CR2Kz$@c@|3hHMhU`a~%h z32eYWi^)T*9p|4lD^=KoKm9))_F37C$$4-Mpx7cAf5$42i+zc;(so#A+AM|*}mgdbKKvCjbB0wXM7yNjq{2G5rP!oF>_FgO>BAU z%G`m57Wx9YXs&|@2sDHF@&NX2C~N`g=d=*z$UL};RE<+M`}A4^^Ja6VOVYXoX6)hY zD(=Pep5}#uAFPiMR!6X_Le7Q2z4H*NnNoe0N8Fo3`YXy2_hJ6qvY))+oPB{M?fBIj z$4%AYR<0)V?$@L;Ti7bnD84ZDNB6>z9 zLhznt9IO9SP3LOUkmnYwUawv2%;TOj>arsX^z8FBifMF86a8Q)yx2?*IBmj^eU{91 zWkM3ns6mdnyDTA=?ac}xB^BxJ;T*pFgwyC_;ub!cDEvq1P4Hmq`-@T077u7TaqM^p z^M!d#;btev7LLJ`$o{H?(LnjcB1&;rg0X+?cdIgr6cg8Xk~ntfj07gNH%~u_IWXNF za^+?ITY{mDlBdc}Y@i*`Mu?D9S-f&mm13eM?iL+2=r&K>&v2cL#$Bks z_}R_24_B`-M|zteE#Ga*@+F9OnEp$yHp$pgdze~*tvRA%J2S6GlT!ZiZD4}rG}2O3 zrE|gzb)k)&l+(u#*7!637R(|XuHL7`+*$9ec^>|MaCe_UO*L-2=u=iIplLv;h88*k z(iGGrw9rGZLO?)3)F53^lMo;jF%*$*fPko|hzKaCNd!btpP;Cys6kP&Jc=C~?)=~L z&faIwoH^h2m%Sz*^C8J()|z#%`}$qefZ4Nh|MWJcVU8K&tifs(o{a|r)-J9+=j(mF zE=%;)O^)r43LSkOt@*iNpunCr`*B6$(%F^;x0RVO8U z_SQb*t7PsCm&Usd0VAf!)oIL?Lwvm`VcVf$=GM=KFb#`!GO$5@4LN!PxC8aL*oAvl zLcVdc(D6B(JSucFVk9e|hSA0`(DA+*enW7x#cjBfY-%NLNKe&At#Og*ZN0x= zPLC|v6?+|r1QKTLqo1v??!Szl{{$*L^!0IWVp@Z$Nwt1Till${jt7uZ|IvO<$Lqrie*2YO@tSiVMp{Xg z8@nR7Y6OHb@vM?y)8M~RPi4$Pt%&KZLaar@Yb8T#({p&)yV;++qW$WGA0!4pprvFB z4Vp^BzX?T$oWfL1cBE+4#mwa7Zgnrm!ghHn8;+XPsIDs`c4XbzUS$5oM4ofGGq^`{ zqHqmsi1Ph$&Hl@JU5_bT_z|4pPm8#kL`5oIzPC$SDFM9y_m; zKI@I#^a5q*63>b2@ZhKZUZEvTqo%#7*K zB6V|4--d@8LVT1d<(Nm1WdRbl_c&q*mZ% ztF5BqXf;tEb@1Uq!bmSFIGqRaOriBGwNw2yZFVnh)hy9xYeqZip-y4$nhRdHGwW)s zsF>SWt|8|A+%v*{q1doF&JS3I*VFFE3*?fPz$hR`D>p)L>{)m5QoMiF)5!0 zkV|Xpbc`rqB1!46#ea}WF*I8rqv?C*q_JYuC1#j!MixUZm7WMW$6pC8y}QfVEFt^9IgDtAW`QzOL|2DCyApha5%QM?uoFRA*y+S;wjLad@VqZPGQ%m}$ zR>lBrkL)OXU!-ILy?zkAA5^Ax&%t9Ok*^|Pn!fnZhghbZRG|#`fkux&9)Q$t49gb;(!h;!o;IAT$PFZ@l{LL0S2ENj zv3Kl0;rVYCrRY$J(Ip)5szrAZvbru;vj5zeu~{KxWhfD37nGm8->@3^Y0W|T3Ai(E zV{OMpOd6>`hAP2=}Eh>ovH_aYiXU_@f>Ww};!M+&7_%FC3reZ z3TYUF*9zm|s#nG=nq@S@W!!^*tcJ4x$-!tU8G8M!5o6dp!B2Rf4n+jvbexXp`CIWv7_-5aO||G5rzQrXG9-cZOfQ1pkb%WciD zu`I@f(XWb+Y^pi8^~1kiY?yAHli=FpguZCGfoZ8V+;mpI*W|SuPI2RHBq~q}?fv?F z_x_VGKYd&c$R?*s$Q$=sp#YJKT=is@!`apJm@P%OpB#tnL5cQ0ZrO~lYmEIxnwUqT z?Sc!-J{Lc2aNp-&4^ywUp40JB5a?U^&DDm9NH64!>JduN~D~ zzcG-(#R)NMbieO$G@hNDu02Khnv_tr<=vVuSNeZldD8CQ`0|R;?cs*SwquM9ANP`c zoV0#3xVA*3W6C;;9I4DdI1Db_?n4rvwQXLf-Zxyi%ci_uv;N#8F-Q~opw#4|tGKDH zup9;RU4#raf-EP1*hb!|Aq>YFdhjBwE)eo2LUd2d`A<1EI)bCL$i^*!XYxiim~eD^ zLEx;W;SDMwvnv->zciI=@#_^~!g{DBvV8gx_fh;|4x4-O0xZeZHJS}^BvQCbS&g}=Bbs>mwJCegeB zTWryR3_LDEHFi#gr8HVAH!IF}NnU7t)Lyl1y2=`P)q+)vOwqY7G0nXw{rz@)ZT=@(b37~6fg1GgQ{AL2k9^I{_y$aS)S{9 z$nDar`zx?rsdyFZB0n}{t@AHR_i{Lc!M!J+o~t&^tPK>k4C}YjXVD3O4@zno=0sRa zhg2+a@foEcLbYE$dQI;^d&*d+$mhU9Q!z_%If80dK@FLZ*gf9*GSCWA2;PRT$?m6p z-*6-IY-gp6J01eTf3&J4NjOetLFU&UcXI`zbv5Y*|1#7pSYBZ)SouQ}GuE1hbb76v zSM_^xHnG%M3nG}}`N?_yOS~{v5qj79{if2wcdsn}#TyX&jQ^#5IgCMo~B=Cg30b00r zNx{H+OP#pe8`x$;5dY&4BT5}~%Vv&{_xE+Bhsg>EM2FSV0SJk`zxp&0tE*-tI!@so z1{J9gkvziT_34KrOF>uD1BvVVEJf=7%0NUStP@h`Kq<2U9VCNQD#fe+NFct%PT27- z{UBH7~T78-FXlmt4$|EF=Gp=SBKBOfqJfgDD{Jmc@Y7Zgfe%J*--b7!6}9WIZ6 z`iDnwjghpmW|)6(H+dN{$+MHmG2M?0FETrzj2SmNub4h#nZ0qQly~1n1=xTs`>i^( zJb5v}kV>BnJb&2nrp}%W!bbb!zD|%6>3m<|p%K)ks61FeH&nBYYbZOa*9*~XE8P+r z0%!4xnQRY}ljpq6;bmSfJ2azL=vT%oDqZE6`d>IB8P{i;yQ*5zWgq;Ztz2va<9b8L zrbYDz-Ik2AN0zFe?m6;K5O9&yBQ*ouh`a3DhG780UEW*>1G{4E#;R2l?INrBG&QNZlWt4T<|? z2s-XMDMv#C7+lMV!Q_uE{>}sbu!mRjEn9Z**HNmCQ%s%r4tM>#s(J^~<5E%RP!O;S{#Cf%$6xT#XzThJf7XRm>3yv>HMi}vdbJA$g2MV)YNDr zRh>A>d3|!))ne<`@Wp`L=8A{693!_<8j*XWf6L~CI&EPi{lVaqKMdz{Xj@gJF4A)A zM~Hb_ks(9>uQG|F6g__GNpaOCJxs^?=dsVeR604~&i*SI3WC&nyDshX49p){54!vP zW_wl@TZ4r|v*H5ZK5=qa*3X03fR2S@IxKswzt+;IHZZ+&MXx!2(EUO(p07%Wm=L)e zx*xB4bmIfbmp=v4B=Q=xE?LQVKJv3ZONBkkm%*=rH!kH4PTcBlf2{w(o@pv&`N6Am zaXA_*M>sAjQF5SHz$f>1o96kiy!4rJtBJ}4aji*I3YpXaMnH9$EB!U4q-hgv^F+PN3(8R18h_WfcmC!irFs9&Lk4nw z&TYR+87TU(ikn=fx=AU`9u=s%@bNiDf$zG>64jCuh^bYM#2^9^IB*UY1!8)s9c`g- z(U%w|bl)r&e00i~*F~6VM4{`-!UYpvnj&4Fr)%f2@V*x|W5F@av-AF4h##V49QZh%DuU4xhM$;!MpNS-sAr7U{{D zC^jeP^r+gmO22(*EfUv-bPX-$8s9I%hS77`?m>MK2WiR>nWS*ZQp~XC9-+ zUUS&LG*F30khQI{dc2XrjdVkK5&2q6p4+6t*%NFhBG&}E{mS~GB$wxiE}i2xvd1R8 z8du%gUSCcpe|-70>K3i>C7bQFq&^oD-=r89ODEHn&dCiS>!(5JjW0Xj z70*ZOBi|e!Z@8hWN^GkLJL_%F;t(h>?n8h~Z;s}7<7%tuEDO2+zi0pWp%%-EimwK* ztRjoKK7lbJCz#Eru!@x(_g8R4;mcYE}|BmGk)UFC7>c+pO_f6;-cAx>n9M(0DI zGFW=1mWOXje_x5!6N8?}1=;ze*<#fFjw!uB z>CER1-&c{cSM}7gZ85hJ-&eY-+#B9<>V+=m!gw7_#1EY&|De<?a#o4W%6^0tepgK7}gnU9?pE*VJ zj+>!GcNZmntMn3sy@vo3Yn=DcfFA~GQ>OeKgIrzDTXo7&Z4V@}#BMDTx;C%;3XEE| zRtoQA5g79|CgSfO0h=i9p)*e}v_#d4zaO?zwL1u+4#T3Bpqt#e_nu^oSeI62K}Z$6 zAWX;FUd6LS(3&BT^eu;Ava72E>pDSIi<>yyy~j{dBLT|4nR&1#*J{M*WZp|>?d2a8 zuNkrT3Imq_|9WVpfXmObTlqoxWw;$>oW?D8M@92bl4rMSS6$wl&oy!?xO@y1dF1?5 zsAEHF(TPB=Pu?HBh0iztor@OS-iO{&y1(>6qAGeBx^@Ec?SGH=r~OsU)MK)=%51c}LA|Q(sj|`<_D`z~6wX{RLv`XRGUJ8taFSQGoARk>{W#M| zTOY&8+QF0zs`Q1(yDGYFw(LKuX7h&JPw!rTHkJvU9;MV`IMUT&rWu60^^ogWRb|tH z_7`PSReFUqG;AeJXdY1;mm8ZBl|i3IMXvask_lAJwM-1%gWjA#&DeFc#<&I149d!* z1tyY2rF%G|GwJ?P8&ne6(8uM$7akBid!x}Y^ZoCdy9aT~bXhN@}Iu$C($;;0LvS#-=qy zoW1F-xzXg(SM;v>MzcYaz@xu5{$BnVd9ac#MP5a}2oCFG)N)NSMcJcir>HOBTYlva zG!@v`@PjeBKpW0HyKS^AT9vdLMNB2;RS|k_7LVc!lZ04=55?Y%)NH61X{;($^)lL- zcnk|$!9PiuQl~qC%e_yLGQ0{E8S}(|f%?E1WyKE5yk&1XZd`3`dlF`qcf1KWsHBIN#GtCH8?Fj{;jT@ObzE)KFJb(|hPCV)!4jI>k zbV^l=o|r=}_?b)Og9wkXJ-Z#8%I z|7khY8cBl_j*1u%L~d+95ARptO(eKtY5nnr83X4`Vz{?rH*G;O7{%(2hnfxc3|Pg z6t2zpC)U2U0JE)aMUzUQ+jRy ze-m(nw0pT0zk#Y0z?3SL7NXIyGX475WL(ED-Q~-w7Y#~%A!?X8z*mU1FVIuw$f^4mhL>EDe)u?Pc*%s;N@-i%XR2S@XD~{Dwa(gAy3_jH4Fy zXkf@X$iWJ+L7z03Lngt(HAMRRj&rqERTb$mz^FgNdYbdkiy(m{^kTUf{ZsXd{+{;Y zDj7YsmbmH4B?v}S1F(ny1H>7h0JseYPNqPjzOI0<3VV^7Oo9<8>5Ky#Xu99-blL63 zne?y=-GM-LH)Rg2uYrrJWn63G(?W;~k8snYjzJS`Xf-WA-Q0fZ+a8d;<`UkWFYdYL zCp_YD7UT(RJKAU}K?hgynsV-6PYp`ZSEW8Mi3skdXF*U6;!-sRh!-y1eQ3VXT`h4d zGB}Y=?eCUi6lq@9o9D7Ura{e(Qb>OwuNtmF4MS%GX9Ago_YVy1cXcBUR!|MMPrL$@ zGn7(LAJn>8FI2W(*EqPdSar|R)pyE4ni`=ggy23d-=Ep7#Sk*4Dz*gMf+XQBmihPy z`tF%dz<5ML@^VX|ZAmUS=hIg(J-vlCMi?HQ2}ZT{R*=(gyIQ@teL(x}jnJ#R-O51R z78Nkf#6b^kIb(rJlJU`ujx{&!7gmP|!avP?FAMVxg}6pYRl8C!`FBf_c|j^6=G->ReD#BXnYvpVb9sYF<}sU~zk1THjOujY4g+N9v}Z z?L@mtkWRPn-WDb*1%MKiJ((OB2~=dvY{#9stq`}VCj%1ONqhgjb5x{iZiZV7EtI(# z$5PR$XEPrNs-aqbgLJy2-he^8M=L?Ro}gvY@Z?;!c<$k%aB;#mwJVZ)bsyV zkjooT=o^?H~$wttXG$c0ro)r!Wz1y)TGq~-P(aB8=meloibj@9I{YCwc0O8!D z8ns6f|2GL-b*W<2@{5z?UO!)HMl~MwyEFUjZqu74)m(#-BR*+MT=mOKh$xK&d<(^m zys?=PjroG1BgZs-f7I2dKv4HhKUn&60_~FRE%y1BVytA)0i=^i{}Sv_wt|diwNF~T zzg|bSMz0}^p+9KW>bYc8ue;7yYZTK0odd%ywNfVcoZlAsY5AI)A& zk5^py3bK5~Oj~mIHjK#&-6|gB6J-wt9s zzPBExf7|+uDG!{)Rcv-{pelylYyy8p;)c9it7kZ`tgK4ty0M#w(J%yPtj2R!?>@Ud z6RC8j-R*XG^^nmV_fd)e^P|JnU!&O|ds^{7VIPI`pc(l&gG7%Hl6!YjnLm46_s;p7H;L}xQ)g)wi?{fY1Kd|j03cwh^|Pm zK@{Fb^EMdLN@(z-mli^ky*sBc+cC{gjC)?;%$f5jYmFB(F54j98D4rRw0{b?IwoaAHt-XF_L52oQ^-94}IOg>6DU`C3B@b@(R8DkG6+-w+^v8 zVl0N&GZL|<2xiFVL0!a_-8Arw)C|M^5gJ~;QTg-_o@R>MpX{+eHcwat8Zl2&a9$^5 zv_gHOo;yK89Kv3j*9xfss}+FB>0EODVtT&^}mH9@L!GzlkK>WIhwv9mrkOX%>l36(fjP&pwHGYWNeQZr2^K&_rk}f zH@N1r97U}VnaAnrk*F7dAK4edEA-sy9DE8`n?y5bhlh28F#@k^Gmo^AIK)J*-U8Un z*#0+;vHwBO= z;N}IdoDLFP-yzMwQU6(qDj1OkYN%MK#845wx=%?2bC-MWE)ol(*GB`;Tb@Wk%QkWqICN2&;bHw9kv_k5IlkB0m&LDWIlh%^jPYvR-2Q+C*RX$USSC*vAQr$DEOU--}0wLIB5A6z& zkwwCqRfou$Jf(?Z0%QD;{xr6>0(*mvk%5l`9V9-VVDchXn6B>C#JEP8{_HY0b48G4Gp_9Q`zZHdmjP45VJgz;tkik`NZCOj~=jbFC|dBxzVr5uI;fZB`F5m zW|<`|_k9qoNC(-&U?I{|ZZuOO1i=&F1TV*m%g5i3-tm97FKHaH(5Yg%MXSO~H(T1S zxZ@g?Rd~$k*-hZN8wmEoOK&$NWb6nXES@9QUmjhaWf~&1*SWH>siTwe#c(%f&`~|0uqe=5w$| zZ*f8N`}Cn03C6-am43pc!sFX(3amg}@ou{-a~Jr@`} z@r9fc+#xRn5DhsV9yC4Dhr#|cxB|(g2Nb^?rN4n7WpsC)(?LWC1vyg^h?xYI!XM@P zHC{&icryOOW66KCojOCQcnDYs5o&xx?Uk4%(FpCC`~#8z#w~NSFdSVW1XuCklIA?i zm#bUw#wU=XEe5|Ox@qvJ#@%(x`)>_;TVvwrZQazghdj%rMKz)XnaN#4$oTYamAmZ{ zAw+WKuGQuC$BNm#M&g4&me;Gv@_ieu-@!A0nv<|u%6uBPGi=oG0b4Z}PNsXT%vDpx zZ2b0d@<&O%5OgU-a_S&wjf`Wsz((Xzus@eXF4h|639?gb0(v^BV!xM{GPdP z)(llEQIcw3WXLTtD<4}iTWf1B6L~n<253t$0`9KYeak%R?}{CP4BPTB{YwqD^(#v@ zO>2jLcrZYbt1IA+=PJtU!-9XW9qRvtVBRGj$V~Vn-&ZW%@Kk30F8-69^^klL^j5q) ze$M6Us~I>9cI2(f$Ct-dK0B(PqdR?}Ohv3d2~?y3$gH3?2F1_fG#AH6BJbYeqClfjf7p$F_E%5ApUNg=HB;U)G_ z$Lwu#Js>g9%_u8h!P@PP+zzJ`=eIol8hOOfyDM?oh)th?EO$ylqn&<8kdv-Mg7H9t z!8ee_z}C$UiJk+Ajta_QASupa%hrM9T>}Zh4%-emB=2=dIh2!F{!Jk^B##)yA9IVj z=IQzBd_LrS`qf!cZ?c7uxBWC1G}IMwCnx=v!^e>Ue~R56O$xYYn?bV(Tzho;uXvWT zqdhIxZLL%#a8M=k`(NhZ-xSA>EXUXbj(H`6d50YHj|}D?{qAe*2%0!gs$7#fd;==l z1|Aula*;0Ie6ch!$m$q{ASvNbxfUc4m;~BY;&b3{Zh^XZw`aduH*Nb7FNC13OSjVMlJsRAspv zNH|*e)``3BLd~_)UhmI)YhG}$Vtac`)^{Wt484T9U6`U=pj$u=ul{Gp6b;;)JC*pu zGV6z>aNtP!=#Fjn&8xG@pE_-MlP~=2chKPCU(EWaOY6bQL;Mfx1?9j|&o6~nyLiJl zgys;RPdAIU4V8cQvm8ybB!a^B{ygAJDLUfx6#2tad4mD(r=z131Y(0`^Y#uKKeZ5h zk;Oj3&jD5|fk4pJ)%~AB!p4moJv=-V zHbQW4@c+Xj?Ay05J3IRdXww{M&36#u4+#7fg!&0X{Y9Z(K{WoT5tpE=AAt<+fK2C* zrvK$6tiQY3=`F$duc6@|Q}Y#j`<0EG{xx<~I0?hh|2PREX!Lnx;2!x5W?4zuDOyW&&M2QRr5_xk)dm2fAjSh}TQZfo&$dc(W_LK2>5 zR49am|H&gXC5(%moBuZ(;cD4`+X(ks#^*Zz10%dVHU745{LAq8@|E$W!ST`2(W$Aa|9>Ij?c2X! zzkdDl<*(uZ{au+C3J#Eji^3l8dBV6Y#^%G5%Md)$$;DcY3xW_0V-iUeE(ZYuW_<)$&ZX|1 zHht*9{;A>IfA3xDHtRJ5A6F(v2^se|q1foBLH49?JMUkD>C+iLVc>p*#`*+Sq#Qg7 ztbrXGJ6{Ki>^gT+)C6L`bQ?@qF~wMeez4tOpgEdoP<;RW(_N24vq|hO#9+`9 zt~f!kqnJWf&I_j;a8*mC94N!6Pwi8W>TUxCorZ(-0k?Z=psOlUj?ugC7EOYndb=Nh zXipNv;l_>2NCk3GOMwEL7TJxkjh{qR(2x-Ws%%Gz@aXo{Y$<~rPhjV2=r2%;j{{xE zL-QJ_1+ao}`n1^6zo+&Xr6Q&HMO~3uP-NA<2lQ}*rpdJUG$MHvv>PxjeY>qLxgT^6 z>Srzk1x&V6db(&o^`iPfOC*D)+mUZCXg=PfWCjpxqbxu?a!Op$?V|4XiYIxg$6=PF zNGj50=uwmM#(@WtXx)V~RHc$~Lj#yeZ4VX6HhwyUjn*)^sJ%HWyacK$;BPcMwGt!$>El0>s|9U_2{r#^GV#M0tOHNyMia$;mpZWdihU16d zpJkqF|9qJV-}UF~?6zGL@Wb2>f4>_ z-oUQX-{tFNm^LxK?k5A1o!;T|%mllsH4$MyCke1(d14ihnj9*QuF>n8sHSr(H)}|A z^2K<v4YCU_|~qlzBk}c-@+{J+;k0 zqRKtt8&A!T?ds!0LZ@rm)&KqCWgLcq9)2>a>}x%0ZOZ1kEccf?K1R`uFoo+_&y1a0 zB!Q{6O5_R&&PVRL#@d=wg`RHTh@z=%6$4~Du<~J6k$*&EP^*B0I=9T#i~yI`1EW=abd2yn{><}1BSoFQfdn#_0`;5NZ-Ysa88yZT{lY5bz+{8FB^g-?aDV` zKe1rzDaTFd!{8aEzA0Q>4yMQwc{`@8!d9>WRftc?P}X#IO5eaqn9s`rO$WXi587#K6Y!xIB_ z5<*)s=?M5OF>4n$~r9PnKNI$of`5tt6fcH&2L9SGj`6_)ubwSOSn zo(Fbw%rISmJ249PAma~`OB@HXJ?Ok#JFu4+Ldo%5!3uWkzl3K{kPULwUNKrEPRq(p zo>W(BHrxxL?j?8P8$JD7$jI?)m@`7SQWv&gfHJ7xA0-dTS=zT&T zh5sKprxt|TPX<$Em>w1)gbB;cJ*Y8{K5Pw33We?FCo0naK}<~6T_}m|wPj#etb#S_ zjY)i&;?)ajdX;j}0sP!Pu`~siB6r0LfkJqqqtl_{98WkZem%2Pzt0=k#(JEB?_|Rx zNf<6Ol}d>`R1_;B?b59(+sashd9bQB86uLthUiYmbqGpKM|qakzF0Y`1B9vq3A&G^ zU(2agm4g{!u-Aitt#yT$kX4LGYyqKZy^$+cI1VR1C1c`^Z+=D5%Y1j z!d?WgUtyv}8rYsCuze!EDSsQWs{Bz-tds~YlA~R(R}ErN`pkVfvY-c{m{)X|zZhke zj|*o4=}e$ao}aLU8#0aKQQ%BQyp{USmv>{CB=~+%t@$93!U9$^T&*y$Bq8d?eZV!x zlOTYR-2KnwV@}CopCj6hBn>COG?)VZPZcP99bo?jJfIfjo{adKh<@h|7Gdy=^&ty~ zId+^T=nIqrjH#CwnF5Gl5G)mw`L!h0M-I`TK#wqx`SQ$NV?bGP;%cE{1Pkmj1?Q5m z17cLXbtVRm06XF>-WSFH&WqN|SjIR3couzg$f?mLfff)OOUim!8T04)LP6iT5 z{-?WY#|A2eVpOA8Wc9t);Dlfy2}ULJAnssKR-unItVPxWiC1du?V5ktHXQ~IkpV@N z6UNwMCfNG>_tUuy=q3VWPyk~ocEM%rl?bGt@c3j``x@|(=ij>Au)Au9Dyzk@SjOSk z+4;C$$n`~6^+uXC1@>yJ^7vxGd>w2DE9ppYOow%oO=-vY8?0h9=w@2KNd!H1Jl)1R zu)8ES##-suaYfgu|Fai}sIxKJ_Q2k-7$@(Y+23;?CFcNb%}d0c3>N$VyCV(+|E{*v z!Z>cb5VdytwEaA4H4|(l1~M3~>tv^1&DPm{1mZv|sI1=ncSzM^FW`)PQKIaq`L+_g ztk5(Bif~5elaTT1I|Jl^1)}(y8a!Eu>R=sC+4E zVZim&&RKxb9xP;|Y&IyiX-sxI^~m_O_OkR3S;R4saug}}k{XDlRP2Fb9xmx!c1)kC5_w4^|CtYX1F zZ`l*{{Cf8f1C#_x)&a@LOGTCR?;0 ze6KY;*$D2#3~6Ft8f3tIL9pvesxA$U_-T0VmzdlTpWaE#v89Y3uPz}9E)=L1hD{z? zYonw&2W+D#ZDGTsL*OBx9>_HMgVq(F`G6}6af|L?!zFl)SG$HD@^d%M{Grrb5~#xj zYt|K5Q0<$2`zW;TU5l$2dM!t(j@h5U*arOw6NDlS_a>%Bk891L zeKUM}HbvecZ8tn-#7NVMEsNAKF-=RLuAeav(QL_bq z)a!=kM|6ZhP$fo8*t&O$+ceQq!Ty(X9iOos`=N_iU!JQCHr$TCOZ1cEGNGbGq(Q z{AlocES|BymYEtyg4&b(>wzPftbL@fDf#GS&8+s_iSO?&| zn-W6~3=}-N?16udL`*I|wVFnQRxpR$9{^Ty`w{U9AwtLZ*@J`lqvl{w5EA14#QE%O zsI?3uLHP*NF1m)N%U$ISG-L5u^%=Q=B+!GRe)ybidC+_LiRU#v(_3D) zLITm7*)3)Jl|-y##Y~h@x%aESm@_O?0vjfKc;e)CSdc8^wqe|zR_v)PGUv(bO`~(& zp*W>?u4`o_kwSnhPO%?a+{;8J$N_^lE3UQ{`bSxVx2(WBtl`_(s1{jtofufHfGv;1 zcY@}~ZC=cC$kxor^%*bpyQEL8aF55tdk5Y<%>@q%%8rJHT`NMhi{JdJSLOBJ`i4Ta z$qM{sySFpphv<`2*NWpQXwR3B6KcqaTXNkh(7Qqq6JKo?uTYja`>%`}9ENHxAgeXZy7#jW__EB&x;jIZj{<5D-QZoe+pTn^qWTZ%J$0nhkiyao&USi%LkP@@oLw$D7RSVdV`CDPm9ib*V61&CWDhKj3!wEb zTrT?MaJ!PO6nV2b`pEp2usx(0448{N=^R$y+yI-ZX$d&xwBw-&Fo6*q^u}KNBxHKs z+(i|yh$Kf|*Ya7Yg?Z}ZD z!L?|s->bd5(#j}@j_5D)45MtZR|oXsZRZ`MW2Z%<_?C46Wj43OqOo#%19U_EbbGkzAPP-PQYI?c}^y5WV|hE3MDhBkjQH)Wvs_5Bg@%M@2+ z;f5@J4XME?;S{Q%S$J2+Qgu~y*M>-?wzcHU@*3OZO9wlwH^lb|@OF#$9`czF7OEqz zzd)jzBKY7E(p+{5qKszkz#NK*EQgRi8{I3pVb+{>Tpwonx_4pWC<&V8WYXRD-Vd#|^?~3*(CD@$dPnqLnQPrOsKEyA$LQ zr8^-)vS7d&r5|AqnVG#P>H6>t7Y5N4K7)4Yq`@DFj?N}^)P#@QdFF9LKy4Z04hvD+x zJMQd>B2`D!z=5Hi*KTj$y{VI1YJHU;5W-I~a#@>6nnRu&t&8&4N~s$0JeTB3Z=0JR zODe>V^$Z0gUUmBI|0o38M-3UOB=Ec0eKg}CJ0j!3|1<(RMYu+?7PG|&mWhPg>lIe}Jt!V@`1(AEcTnmypU zRmfXk%W>Lvl>t3T@%r&`7ulK~Z>tbDB=>zcAD+SVXHtf4nFRHw#-UPMzlbAtZ0F)K z=^V$bp)^pC7~F@_-Brqf)t)`0MvQ}7`V8(H#Up_6_i}95@&6$9!1T143EPKv;7+5s zmN5&en+wK@Ev|s&gYY~^BoJEwC|y*@1!awe`S#7Ktc5l3XCAwyH>!&|g2acD6y}Nz z`GhDJ7X%Fj*0@8-^-YMUZ|?wmkm#&d^e`$x!eUQc**<1I0FRx0{`XCi&dlRP<(i}s zt=e6~@3g%^{jzS7&pKMqTRf)uV;)3f~$|L?@7l|sNN|i zOoc^QDsl$l8?AZnzS#ZHpOk#;47nJ0PJA5I0>N4gprZ9hRjY9@C_pFMTqOr;_a-Ui z^7J}5@2k+Tn(h9O*6FniuEU8|jQ;vHw@G4eiPhpY|M-y=M=gK{()RuA*v|^T zJd(whqv;M-#wB)%xE5{%9rMis6W{*COJSAx{`&sXmU7b=oyM%G`0;}NNyXi|tFxC@ zs6{$^Xs(79R8>zE0HB2m(}j^4+uakcwx^l9z#LlI6>&HC?av_}O{D(XHDG+?n9Qh< zos#CE+DZbPJWzuG&%~=jRu0U&BCrqlkM0b2BBmEp{9RNERL?gjyV8P8*XKb=S78#O zE~*9v5rTC8j1_WQSzAM}qzJxqDBob3j-UD5wT?lSS3xAIe7P$pHXB zJXzk zvB8Up=;?!R=e5<9PVFy6^_x%)(q`Y<9XS5w6LRm0t;>Q?+v-KtR=Gd>ho=-uA3wY! zdcL2e{|_VE+w3mNZ_Q0MK1$yBz+pau>pwQxBS!Ry<+d|YwS+M#{=XIC{N#_X$C3&ztIBw~yYWULl&)E@ZKE zR5lvy++y+VxI1fDetFsNsMFolG|p5--pYcPXuoNpHA~aN9e;bsOr#=Qyr-5w98jJa2 z=U&F@n7CfVHE3q5iMjW+Z3>^_+SEj+lan6M*(4mwPbr zAC%b-P@Uq0^Ck!?4(_TzgfItgTQovUU5#wun#*L(pi+^LQm1tK7U z!eRk9z7j~_EZBRU0eP@@m~y-~{b{i;6{Jxs<4;GUz1oasA#sa&zxp(=|`tQD_ABYU`^IKT^qE?zD~S;A11Ff_EgO9%sL zeY))2wrwc3Ew9a16YMGihx8QJ+uW6spn4Qm>)W<*m1_MMTyjMLMR2?5iO=&Gn6sYe zvy=((ylI}0UWvsLC(0TDM?a8>| zv0TlqW8g|D^PvXGbecFH!<7yXkqeX%R3OhKcVjaE%~PyIaSU&g9KF1q7u8kSJu0KO?W-i4q!4Z1pLvo#>hq?9L!=^(0bN5y3%{qg$PmCL5|D%*NT!PZeS4m_ zG^8Hq>BF@7h3DGLf?OE6+Je?nZ3{}Kk(1(pms7Q^gtd)a5#9_T(v^r5Wh=_26czX+ zadU{jvo1=Z<4x^#6f|HA;tPZPsd3LEc{usI9rf85-h+Iu>lCx0Fu4L?Dh}#i0nN?A zt-XZ)fQRsxmrBR-m7WcAXA9vlP;k;luXPfXy3BD{fsBno+yn*Na9|=IWCqYITyYT2 zY3<7bKdD!uZslRun9+W>sv^~uW(^5=u>Y)LbPp#oleOX3^c{TehBLCknPI~~P{J3S z9+77wswa|BhmS#{$eQdRFBT05W8}gZK(*!ar3zFujYY<>7}!VC6$^)UbYrdgz zhR68z(fp))XGXNxqVO#QoDY%XyzN2?ViatbRz3=S@f7WI+8%U`wI;Uu=jg z5j5E!-3;Tp#sJkN43v-^FajBxiTzHMfrtoc7MS zqno@JV1zZ6y@c)D1FXY=Hh2NONiVMP*zIH`B5zD&AC}!SSXXw(bRHDd46F?e7LYuU zghGC5T;c3}$Ie>CJf-x0TDBOZSfG?hSUx_99M&i$Ho z#62HaG(M~wMztokYM|K0IMdq2QLTWy+fl5Hm-i}x@wq@P_%4D>dJ{4b^dcEV_5#;c z!lTS%e`RnD8C&IDYsy6r+C_1jpM#cdK})}P!G=c}^N?dYu$1_h7o(Xblrl=s&Qc+i zkim-VLAp@d_7`x9u3Tf(BRB8PbCJxu+ATh7sF?qTOYS8EE|0zgvJFvBxiGLHotwSJ zwxP$ewI|B-UzYw;)KQ`T*O$Z+0@#o|%xzxu-OVHNKtU(-%_Q@&->0+8%T1HmCe&?T z&0t?_;eMv<96C307t9z2PI{GRC+^5oYoKINc*HB@&v_=F$I*rj zE=vIN^8hs}a8<}iIK*6F08Cq3+;b=4Fpi&;vmQZ!-gMsRMdU_`jrYePeP$sO285~Z ztqpw-s^wm>*&J6oXmua#V*|%i#|I{fn_@DqmNOhHWApg)xDkR817yx)YD$1EJrF+$ zB!CX33ZT8`awBDmP$F33*zLaRu=L>lpBl~sV(f7?*Bbxo)v?!4_9J%X11td0$(DB! zc&fb5J0&^_&A$$|0IE8tj8ypyba5H6P@1NMLjmR8;>S%@w_%u8Z}P@R=NxbZf1E- z-W$LIqX^uyK(01^gWRL)6DjL++WrUo?IQ#$8mR^*`b5Nr6^P%*@Yfw-Y!TCiDA~F{ zXjZ9eqD#?;Z>aLezy|T&=qYe3zw!PVz!tt?g#nC2V*BwIUt>;(Q(3mOE73%@euepB zOG@0XR3siWsUws1a2+YZp3_V(<^9_~RF~Jgrydk00TDQXf};ee-5gp)wmWzNi1lJU zB6XXg*ggbE<&Jh3wOmqgq6;n;^l(O3RWM^5Z0I=UbGYFvOq#jd(P_QpoTg z13S4F8f`jkez;OU@UD0JQBW^XD+4&53#binYRs%0-<^-~O36Gx00%su6R}v9kne&= zJOS5-*K9@ShV#dX!p^1Ww5-F+^|Ww25lq?!GFo%*R5`>GL2+kCdE!<$Ju#{|kvR5j zN(mmP#R{Qw9V93h68QN9&_~Ky(+YFubMk`&^2Qj8EAPNf<=*!ZhfZlS9AIPsczv_E zU|SC)f^Hqs39;^p{LD~0x*O)75kVaLSA|>6@VZW)qJ1XFi>#r|+?2V?>zYBA_!^3o zAKDaNTTwnmpq8i(_n|TIB9O%xc!=7TTK~X%y-m;*rXyfh=N!b{Lr_mpqY))5_y9AE#G@nFs{hLEk^!x|{I5~@D4S-Rv?T_6%xL9zJd1*qw zSjrz0^Dsui?MbV;qXlTiq?xrOAz1!esA_Xpp4g*sg9D4cEMedFGTjqwbCm^#S8Rwg zZ*kkh;=pT?Fx6uSjA`!n(!DV+gF#SqacWnm%FC7^4HZ#%^Ex2xzP9=Hn7#DgcsL~o zTTaw?M;tG+I&jdd)#Metv_E(v0mDtF)i^x{ z1lmWtJKo*b$1GFL$$DKJ4v!(|D}n0K(=V60H2Z6QGARj%NVDW;m9wlbHam zAGq2W#Ix|AF!yab3FE5GLK{ZRd~~{owd-e@s-f%KiOg_H>MCg<(xI^{e1}EBEq8dJ zOVeD`wpQ-b5HxaLe`8$q>zKN=DS)^-tN}u6&Q(+yA7q$; zby%?E#<0-$qM->X>cWZV9UQ#b9e(`PO8=+GsSOxhs(f%N~$NkIY`a-eIwgb>G$N8a< zf1J+@hL{|m&uVn=6sg{(|Ly#K{nqr?yv**fvXFBO@X(i?9yh;%r#yz$LTDhvR698f z;XI-Kx;D0vF4qq*_57>KBfWeDS`R4Pay|G0IZLL?(KjGkR-A><0ogVM{;2Xbw{|sK zsC5!ZdtOD!m!PNX2SwQjJ2Yey#cWmDXq4H4xVnkcy+AqGe!E z>8deMb&v)RTx5iJ(pfk}hrGuxPd@VV65fF21;<(Ca*&PvZ$*$mSWTu{g+5kE#{wZ5 zfThNfl}XpSRlx-00)b-^u8$i`WW-T7Z6!)UP0YfTX}_b|(#R49()!je}<7_jfH4(*uYOGOuXu$w-^an1<_HB@HQ-&y(FmK%iw2_C+CD<9l#4YzA)fIDM< zMnyAehGuKY`;wWgG-zm>NrH~A?8&R3YlLDHP}zB|Qxxyfp*i2W|7`w!fkng>?#tA~ z9|q4pD!F624vxWg59;K6?Y{o*jCrOtc*os4k52XGUrwDhj%EGK?_d99KsdS7_7s5a zAu#3!GLA`fKEJZN4lSHxY%+^`%)3T7+}V00a4T!ox#yI$bT>jkQm>Vj_^&-HCz zP`#3&hu&{lu*+=M>3ZCt^-asdw3wHL?@70u*H`nIutgo&aLwu7SaE*)qQS982fTM% zmDQ!b9E1bh!f#rYUuj=b*w=e|$GVlE%aK7W?Y)z@@k+&X`);$k%)9&T4pqG{+e5td z_%;Z?T6($fq2u(?`zMyZ;DP_dZA%H0X#8!>S3Di>3J#mJPWxKNZ0B_aM75ofd)uH> zne6Y|JAHoLrrFK>ZBS|7Orx5u9syYpadC3TO3pqWhWAGmQhtgH&q(c{roh08zkNb44ie}p5a+hnL) zyB`U=_6Ntj7Hz`3s)!@qA(;T(sWb@d_lsAJy#>nWKSkfss=ym9+&HTgbo5mJi$6*v zw7he1({0j{e(#7kEBULtK3*{Q@%uG)WPa4sS~a=mINQnFCq7D=9X^6J{;rC@!vo5y zx@$^z+t?L=>pJ4)?$K{IAC;x(8ZthCDI8I*)8|2B@oFCKI8cSQ7INt3m-Bxdm)$o1 znk>EfwQ-x%+mOq@9$dNk?b0cy_q#U#{rHD1{{MoIfx%z}1%>|;A(KUReSCZ(BO_%9 zS!!zP$&)Al6Cr!{FG42w-x0D`K-{`IZdDFF2h^Vim^_A<$PlvIK$~HR^8*Fj_iF!> zBKtSEOR)PNwcUD9beBA(Pd!>jkyV0|F2Mf{?w*DoIjj6{aJLnkbXhyK+i?GwiuVHo z<(-|^ZQJB^PtPA@&oyt#e+GAdghjt|kC<~$n)W;LE;Q+Vc=Er^-K3-+w13OHANTw> zoJ^r2OZ9)^WLWGUZEYFd_P@t>eKG&CWZ@hB#mRP={1;1h%XO{Ygpr zlb-%ZR^DYJvSs)GEbpGt{;%?Gu71T?s|s0mx6vxE-#xp-uR>Pa9SzQx)pnm8uDG+O zVktHIKS8o@$FpCa{I|AS81`>!_e{*_f3jq<&TiN7e_68Z|F^SST3Y&l1<5}A2S~=@ z{Q2*Z-L|$rSFip@WVc{c*4e#N`oDB`U$%~ZxcXl#+5ZNT4G;ghbLY?W^q;3s|12#n z$x^#7U;cUj{?FHcZ~y-U$z%xGq5rQUyA*><{{tbbKWuuIy*+9u&m#&S>?MC%&5oWv z1!(J_*C-Jk9>vF=ZU<3qy;8`JI9C+h704t2Kn|p;AUjK&6oUaUENYqH^7OXfI}9;; zb-yPhOxYqzxbl#B4SN78EvP)h2m>jT3^RPiW_Nmu_J;%TpKD{TU|=}D-6Mtv6tEcV zF0)^B_n*+(a{Db{mlwE5UGn!?+LGKcR3DpV7JSO?i$SDL7#iS z$X|T-n9Pp3h+EDJuE&T-2egX?X{7T!K}C$1mGgBexjhaeJYHVoOLFVpZ>~5KM~OH zB}hE))L9)@xUW1`zo^W(iG1|17s_-?_M3S!KDZkvP%}OVa7C(YM}bBxrQ~Yi^LmZq zQq}YbQ(&{Mgg33Ixm30ucJSd6IUhpQj>}d`e?e{stjxK>RKjr}Ios?vMOA9oQkw5f zgsQiJR7GA9?cyU5mk(Hi7`r6hJ`6Uh_Q<1loqO?@z;H>tBnfN}VD#ZyFyy0G9j8<| zvy+(dD)g)1xqWx#-j@jZX5Z(`5dCAjGT++^>%iYswZ#VxhaHvW5-ff!lk+|=MN|PZ zc29yfPQ_Orx-uEhxQKimTp=djdiwDy)TUNkV%lr)PF!`ErbcJpsDp%E7+3*{0netQ^m^uxDDv>fyAvk7PSeSe(Pbn*L>)N3EU&(Tkr zC*BKxbo#-RwjzbR4$OExb?q5L@7qyNu=ton$~3Z2Sx`sQdRz)jE$jn}kCxlsYYVva zlX4~`y^7n481{PTxqp9FV0FYVQsxFYxQ|qw->BJZ7p}rQ$VXQ)-W1Y5jGS)s70I8qxHWQLz;o)Lg*2{1@ ze!TC3qh+QUYRG`b%-6EAI_s$6rjoGA+3Gh~F{Q6*E8lr9FD3+J-waX_%9b27T{Y4= zP|xJhX9OW;0qe8I(Kqw*F!wxYROh9K**5^Uro^2O#=9A=R5;kPLX6`1Ad_?UaPW@M zy&t~L1wsZ`+PomOD#DP;D{rWEYONY^U<5PPESnnYU@>Lxx>PbJUCF#&=L}49dj=Z; z&{69^d2IC4$#2YB!0ez5Vuh06fOD=GyL4zcvNr639Y>|wZ->fZ7SfagRKG-S(vd{k z3V+o@o|ZD8<>CpLkO2*eZGadO!wAcVK~y12^`>|N4%1aUOLA8-^J0c5)VE>Ly1HqD za6+oCdOghr;2$j69aKI}9y!o~h#8Lpz>Cfd!%T>*i-Yc1igeg?89(Poz$gV0!AbHhSXCdX z+|#OI2V(%j4+ervTw$u5r-9xW1{OZqun#iW+7Fj>T}_rXh&yHTMgKnPNAt#U*t z=qd`vh7AXaIU(sGc=1Tb2}@SKG45>l>Cgif6ZSAd{XlQcjayZ7W}w(rE$P{6 zRxTWADhfrMyfL&swRMn824clXxIS#f+~PTaQF zDQNR$>V~q4XKn+&IiHKwNXobzYxlu1G9^07C=edR1MQvs9kID!K!HuOFg}iqiAiuh zPvNsJw5>o5%7{&g43;5T69cMm0hCQ>2ae_D9BrM%cS#|d!~Eo|Jm6^a#adHg%wXtK z7p1)!t}0^;m^Xoxx$%-Yikt?6?98|`QzeUp<*=|Jm%*P42mQ|6;uvvyuljji0lqk% zZ8I~^qc;z#IBGE;uiK&`#?n>SYfTRLg}P?y(l$rm;=gFlq^J%@6|(m~Ds>|;RT`W3 zDSzLS-&7da@b&7ThMh}LpnDur)hlbOQ=FVI-vt|S7-}S5p~Lxust|*HkVO&@d-Nwf zke8xqsc^)A)E-KBp*0js{&DlXgm@2o4vN}jeETj{(=U6HNSwMEJMCKFYwHq zK#_IUj-}bwA?*+r_&EmN&Nkq zI!J+ZPoP+i13>oDd}Kw+K-7VgVe)4Hr&P%x_CxT5H9YEprz#Qty2;VMJT^)SwGziC z9XVzujW83&qUed^*yD#IsB7OL!6K*)EojH#Ef0?Ddu$lI)dk^0lm8wbZG-o3Ain7QoUhazxG#(eBK}-puXT9S>w(|X8z{prz_#xim@hcz;z>&iq$BuPDg1OY*0=o&em^$^`Hf-mUjj=O;?452FD(Dvact{sWm)E!+f-tqqM$>()BGhYA!_%MnT zG_eari(qxi$4^+pa_H^}1d?|nIz%6GN}MP23ajGbc0b~VY*8Ju@r{164ii~Uck#vt z2H{yoH97hT$ZC4pHM_uQaZHWuytaE!MzeepF^fDJ5lV;KQdnJwBTB|V*S0|LOt31& z8<2ilBh4em?#QxjQdV}3t2pNMu+y>tS&f25NrN6_ppTGGPpU!B3o-VFMRlTec(Qos z4;(ZcAlG*WCIbd80}z=E#54Vqu|f!oaG?HL(9=?2Q(_ra?4(RN8jq(KWuk<_y;`Bz z``^&&w7BS75kCcv_H)f}HE-j*WbS zma}uMwXej87RG_`+K#SQh zYf|>Gz%gY71Xn|t5g}Z9lsg3ZYAwvx$`tksV0Y0CONI!z85MV6nae_#dSOfS$70B+!W8=1g=Hw`QlDrIK z0_F}&`n^y%76mN)iue{uAu`J_G+%*b zXyajMJ^f@o5w=efF#@k1=R)ZKxf4Etyxx@k8BiHi^|U@m_mvR7Tyr%F>lF#i1crajC&RN8$k?X_g+lx=@`$_%1-w z`{Z+otW!(h)2i{vuURNe8P@?1nqXhjt+|vj9>nEBdx+rD2biiAN`$m(d>ULqt2ql* zr_Eee(m{gr{L_}!K{9rsY010TqfWl%sGduQ6rS?J5sJ)xA&UOdum zEwYCW43?xyoHXt3hIJ`KG0AEIdKak zVq}L1;g2eiT-0tXAV7o<+)e3?h(q*nDwx9PP7<(?i{_|B1YSqSnmTQF2dC0#n*p+J zI5L5s>N6466$Yy3An$rZFAG)cg+MC@^b!^r)9UE90@*34Q4T7cmG9Xz6jN z4Bdp^UL%A)F-TC9(Rjq_@gcciS%VMru`T(sbVE?|*}rtqv30hcLRE2L}-k=d`pf$M?Bg~LmZYszm_#&$q0+I8|#aQT$+VYGgSBs0>)B1 z!iXPRrwU8rQ|~~_R+kV}v>mcMZ`(0X_H}d?K@dwLqs5S`zJ≻MieUHv{SR=GG|% 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¨k!z_aNFW=6G#yxJ? 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%0AI;4Y4{-Ta%I zB;|+2w}p04{4z9FJI2rGT#4&K{bhhJ<>AB(2(Ugb1B*p|cL&+)?sY}S4U;alcAu^u n1bp8i9={4d81rZV00i)b-%LrT_UQcoLPCF_P*NiU0I>QW)2;|X From f1b171d88b00d8579e8cd4b0b1ee7cc42e0c8407 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 26 Jan 2025 22:12:28 +0900 Subject: [PATCH 304/414] Update head doc (#1127) * update head doc * update head doc --- LICENSE | 2 +- docs/getting_started_main.rst | 19 +++++++++++++++++-- docs/index_main.rst | 32 ++++++++++++++++---------------- 3 files changed, 34 insertions(+), 19 deletions(-) diff --git a/LICENSE b/LICENSE index c0c52a4321..1c9b928b54 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2016 - 2022 Atsushi Sakai and other contributors: +Copyright (c) 2016 - now Atsushi Sakai and other contributors: https://github.com/AtsushiSakai/PythonRobotics/contributors Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 256319ab8f..db71960dcf 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -3,11 +3,15 @@ Getting Started =============== -What is this? -------------- +.. _`What is PythonRobotics?`: + +What is PythonRobotics? +------------------------ This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. +This is developped under `MIT license`_ and on `GitHub`_. + The focus of the project is on autonomous navigation, and the goal is for beginners in robotics to understand the basic ideas behind each algorithm. In this project, the algorithms which are practical and widely used in both academia and industry are selected. @@ -16,6 +20,17 @@ Each sample code is written in Python3 and only depends on some standard modules It includes intuitive animations to understand the behavior of the simulation. +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE + +Features: + +1. Easy to read for understanding each algorithm's basic idea. + +2. Widely used and practical algorithms are selected. + +3. Minimum dependency. + See this paper for more details: diff --git a/docs/index_main.rst b/docs/index_main.rst index 08c318ea83..8c967ac59e 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -6,32 +6,32 @@ Welcome to PythonRobotics's documentation! ========================================== -Python codes for robotics algorithm. The project is on `GitHub`_. +"PythonRobotics" is a Python code collections and html based text book +(This document) for robotics algorithm, which is developed on `GitHub`_. -This is a Python code collection of robotics algorithms. +See this section (:ref:`What is PythonRobotics?`) for more details of this project. -Features: +This project is `the one of the most popular open-source software (OSS) in +the field of robotics on GitHub`_. +This is `user comments about this project`_, and +this graph shows GitHub star history of this project: -1. Easy to read for understanding each algorithm's basic idea. +.. image:: https://api.star-history.com/svg?repos=AtsushiSakai/PythonRobotics&type=Date + :alt: Star History + :width: 80% + :align: center -2. Widely used and practical algorithms are selected. -3. Minimum dependency. - -See this paper for more details: - -- `[1808.10703] PythonRobotics: a Python code collection of robotics - algorithms`_ (`BibTeX`_) - - -.. _`[1808.10703] PythonRobotics: a Python code collection of robotics algorithms`: https://arxiv.org/abs/1808.10703 -.. _BibTeX: https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib .. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`user comments about this project`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/users_comments.md +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE +.. _`the one of the most popular open-source software (OSS) in the field of robotics on GitHub`: https://github.com/topics/robotics +---------------------------------- .. toctree:: :maxdepth: 2 - :caption: Contents + :caption: Table of Contents getting_started modules/1_introduction/introduction From e93ada6cb84ad6be0cb7dd70af22e4defe84b0af Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 27 Jan 2025 22:11:15 +0900 Subject: [PATCH 305/414] update README (#1128) --- README.md | 12 ++++++------ docs/getting_started_main.rst | 2 +- docs/index_main.rst | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index ec65342430..8621a40923 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ![GitHub_Action_Windows_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Windows_CI/badge.svg) [![Build status](https://ci.appveyor.com/api/projects/status/sb279kxuv1be391g?svg=true)](https://ci.appveyor.com/project/AtsushiSakai/pythonrobotics) -Python codes for robotics algorithm. +Python codes and textbook for robotics algorithm. # Table of Contents @@ -73,9 +73,9 @@ Python codes for robotics algorithm. * [1Password](#1password) * [Authors](#authors) -# What is this? +# What is PythonRobotics? -This is a Python code collection of robotics algorithms. +PythonRobotics is a Python code collection and a [textbook](https://atsushisakai.github.io/PythonRobotics/index.html) of robotics algorithms. Features: @@ -90,7 +90,7 @@ See this paper for more details: - [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) -# Requirements +# Requirements to run the code For running each sample code: @@ -116,13 +116,13 @@ For development: - [pycodestyle](https://pypi.org/project/pycodestyle/) (for code style check) -# Documentation +# Documentation (Textbook) This README only shows some examples of this project. If you are interested in other examples or mathematical backgrounds of each algorithm, -You can check the full documentation online: [Welcome to PythonRobotics’s documentation\! — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/index.html) +You can check the full documentation (textbook) online: [Welcome to PythonRobotics’s documentation\! — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/index.html) All animation gifs are stored here: [AtsushiSakai/PythonRoboticsGifs: Animation gifs of PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index db71960dcf..86049ac2bf 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -10,7 +10,7 @@ What is PythonRobotics? This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. -This is developped under `MIT license`_ and on `GitHub`_. +This is developed under `MIT license`_ and on `GitHub`_. The focus of the project is on autonomous navigation, and the goal is for beginners in robotics to understand the basic ideas behind each algorithm. diff --git a/docs/index_main.rst b/docs/index_main.rst index 8c967ac59e..b9f334dd9b 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -6,7 +6,7 @@ Welcome to PythonRobotics's documentation! ========================================== -"PythonRobotics" is a Python code collections and html based text book +"PythonRobotics" is a Python code collections and textbook (This document) for robotics algorithm, which is developed on `GitHub`_. See this section (:ref:`What is PythonRobotics?`) for more details of this project. From 6744d4b104d9281f0a6c3404860b996f9d53d0a8 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 27 Jan 2025 22:41:52 +0900 Subject: [PATCH 306/414] copy paper contents (#1129) * copy paper contents * copy paper contents --- README.md | 8 +++- docs/getting_started_main.rst | 42 ++++++++++++++----- .../definition_of_robotics_main.rst | 5 ++- .../technology_for_robotics_main.rst | 10 ++++- .../2_localization/localization_main.rst | 1 + docs/modules/3_mapping/mapping_main.rst | 2 + docs/modules/4_slam/slam_main.rst | 2 + .../5_path_planning/path_planning_main.rst | 2 + .../6_path_tracking/path_tracking_main.rst | 2 + 9 files changed, 60 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 8621a40923..cb1816c2b5 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ![GitHub_Action_Windows_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Windows_CI/badge.svg) [![Build status](https://ci.appveyor.com/api/projects/status/sb279kxuv1be391g?svg=true)](https://ci.appveyor.com/project/AtsushiSakai/pythonrobotics) -Python codes and textbook for robotics algorithm. +Python codes and [textbook](https://atsushisakai.github.io/PythonRobotics/index.html) for robotics algorithm. # Table of Contents @@ -85,7 +85,11 @@ Features: 3. Minimum dependency. -See this paper for more details: +See this documentation + +- [Getting Started — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/getting_started.html#what-is-pythonrobotics) + +or this paper for more details: - [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 86049ac2bf..aaf304514d 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -9,27 +9,49 @@ What is PythonRobotics? ------------------------ This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. +These codes are developed under `MIT license`_ and on `GitHub`_. -This is developed under `MIT license`_ and on `GitHub`_. +This project has three main philosophies below: -The focus of the project is on autonomous navigation, and the goal is for beginners in robotics to understand the basic ideas behind each algorithm. +1. Easy to understand each algorithm's basic idea. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In this project, the algorithms which are practical and widely used in both academia and industry are selected. +The goal is for beginners in robotics to understand the basic ideas behind each algorithm. +If the code is not easy to read, it would be difficult to achieve our goal of +allowing beginners to understand the algorithms. -Each sample code is written in Python3 and only depends on some standard modules for readability and ease of use. +Python[12] programming language is adopted in this project. +Python has great libraries for matrix operation, mathematical and scientific operation, +and visualization, which makes code more readable because such operations +don’t need to be re-implemented. +Having the core Python packages allows the user to focus on the algorithms, +rather than the implementations. It includes intuitive animations to understand the behavior of the simulation. -.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics -.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE - -Features: - -1. Easy to read for understanding each algorithm's basic idea. +about documenttion 2. Widely used and practical algorithms are selected. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The second philosophy is that implemented algorithms have to be practical +and widely used in both academia and industry. +We believe learning these algorithms will be useful in many applications. +For example, Kalman filters and particle filter for localization, +grid mapping for mapping, +dynamic programming based approaches and sampling based approaches for path planning, +and optimal control based approach for path tracking. +These algorithms are implemented in this project. 3. Minimum dependency. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Each sample code is written in Python3 and only depends on some standard +modules for readability and ease of use. + + +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE See this paper for more details: diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index bdc7dc53e9..2f31834017 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -1,4 +1,7 @@ Definition of Robotics ---------------------- -TBD +In recent years, autonomous navigation technologies have received huge +attention in many fields. +Such fields include, autonomous driving[22], drone flight navigation, +and other transportation systems. diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst index 4c60ab8851..4dd1d1842f 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -1,4 +1,12 @@ Technology for Robotics ------------------------- -TBD +An autonomous navigation system is a system that can move to a goal over long +periods of time without any external control by an operator. +The system requires a wide range of technologies: +- It needs to know where it is (localization) +- Where it is safe (mapping) +- Where and how to move (path planning) +- How to control its motion (path following). + +The autonomous system would not work correctly if any of these technologies is missing. diff --git a/docs/modules/2_localization/localization_main.rst b/docs/modules/2_localization/localization_main.rst index db6651f6b8..22cbd094da 100644 --- a/docs/modules/2_localization/localization_main.rst +++ b/docs/modules/2_localization/localization_main.rst @@ -2,6 +2,7 @@ Localization ============ +Localization is the ability of a robot to know its position and orientation with sensors such as Global Navigation Satellite System:GNSS etc. In localization, Bayesian filters such as Kalman filters, histogram filter, and particle filter are widely used[31]. Fig.2 shows localization simulations using histogram filter and particle filter. .. toctree:: :maxdepth: 2 diff --git a/docs/modules/3_mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst index a98acaaf50..28e18984d3 100644 --- a/docs/modules/3_mapping/mapping_main.rst +++ b/docs/modules/3_mapping/mapping_main.rst @@ -2,6 +2,8 @@ Mapping ======= +Mapping is the ability of a robot to understand its surroundings with external sensors such as LIDAR and camera. Robots have to recognize the position and shape of obstacles to avoid them. In mapping, grid mapping and machine learning algorithms are widely used[31][18]. Fig.3 shows mapping simulation results using grid mapping with 2D ray casting and 2D object clustering with k-means algorithm. + .. toctree:: :maxdepth: 2 :caption: Contents diff --git a/docs/modules/4_slam/slam_main.rst b/docs/modules/4_slam/slam_main.rst index 86befa6e35..dec04f253a 100644 --- a/docs/modules/4_slam/slam_main.rst +++ b/docs/modules/4_slam/slam_main.rst @@ -4,6 +4,8 @@ SLAM ==== Simultaneous Localization and Mapping(SLAM) examples +Simultaneous Localization and Mapping (SLAM) is an ability to estimate the pose of a robot and the map of the environment at the same time. The SLAM problem is hard to +solve, because a map is needed for localization and localization is needed for mapping. In this way, SLAM is often said to be similar to a ‘chicken-and-egg’ problem. Popular SLAM solution methods include the extended Kalman filter, particle filter, and Fast SLAM algorithm[31]. Fig.4 shows SLAM simulation results using extended Kalman filter and results using FastSLAM2.0[31]. .. toctree:: :maxdepth: 2 diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index 30802fd7a6..4960330b3e 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -3,6 +3,8 @@ Path Planning ============= +Path planning is the ability of a robot to search feasible and efficient path to the goal. The path has to satisfy some constraints based on the robot’s motion model and obstacle positions, and optimize some objective functions such as time to goal and distance to obstacle. In path planning, dynamic programming based approaches and sampling based approaches are widely used[22]. Fig.5 shows simulation results of potential field path planning and LQRRRT* path planning[27]. + .. toctree:: :maxdepth: 2 :caption: Contents diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index 504ba08795..d7a895b562 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -3,6 +3,8 @@ Path Tracking ============= +Path tracking is the ability of a robot to follow the reference path generated by a path planner while simultaneously stabilizing the robot. The path tracking controller may need to account for modeling error and other forms of uncertainty. In path tracking, feedback control techniques and optimization based control techniques are widely used[22]. Fig.6 shows simulations using rear wheel feedback steering control and PID speed control, and iterative linear model predictive path tracking control[27]. + .. toctree:: :maxdepth: 2 :caption: Contents From 53f1ba35d5c1b981eca55a91b72c53fb1000263a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Jan 2025 09:19:20 +0900 Subject: [PATCH 307/414] build(deps): bump ruff from 0.9.2 to 0.9.3 in /requirements (#1130) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.2 to 0.9.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.2...0.9.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 11b91abb1f..e8bed7b6d7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.9.2 # For unit test +ruff == 0.9.3 # For unit test From fc3562733814e43134da8a1d7d73e370d44b9f4e Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 28 Jan 2025 22:25:53 +0900 Subject: [PATCH 308/414] update getting started (#1131) --- docs/getting_started_main.rst | 122 ++------------------------ docs/how_to_read_textbook_main.rst | 4 + docs/how_to_use_main.rst | 30 +++++++ docs/what_is_python_robotics_main.rst | 100 +++++++++++++++++++++ 4 files changed, 140 insertions(+), 116 deletions(-) create mode 100644 docs/how_to_read_textbook_main.rst create mode 100644 docs/how_to_use_main.rst create mode 100644 docs/what_is_python_robotics_main.rst diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index aaf304514d..07abeec451 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -3,120 +3,10 @@ Getting Started =============== -.. _`What is PythonRobotics?`: - -What is PythonRobotics? ------------------------- - -This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. -These codes are developed under `MIT license`_ and on `GitHub`_. - -This project has three main philosophies below: - -1. Easy to understand each algorithm's basic idea. -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The goal is for beginners in robotics to understand the basic ideas behind each algorithm. -If the code is not easy to read, it would be difficult to achieve our goal of -allowing beginners to understand the algorithms. - -Python[12] programming language is adopted in this project. -Python has great libraries for matrix operation, mathematical and scientific operation, -and visualization, which makes code more readable because such operations -don’t need to be re-implemented. -Having the core Python packages allows the user to focus on the algorithms, -rather than the implementations. - -It includes intuitive animations to understand the behavior of the simulation. - -about documenttion - -2. Widely used and practical algorithms are selected. -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The second philosophy is that implemented algorithms have to be practical -and widely used in both academia and industry. -We believe learning these algorithms will be useful in many applications. -For example, Kalman filters and particle filter for localization, -grid mapping for mapping, -dynamic programming based approaches and sampling based approaches for path planning, -and optimal control based approach for path tracking. -These algorithms are implemented in this project. - -3. Minimum dependency. -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Each sample code is written in Python3 and only depends on some standard -modules for readability and ease of use. - - -.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics -.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE - - -See this paper for more details: - -- PythonRobotics: a Python code collection of robotics algorithms: https://arxiv.org/abs/1808.10703 - -.. _`Requirements`: - -Requirements -------------- - -- `Python 3.12.x`_ -- `NumPy`_ -- `SciPy`_ -- `Matplotlib`_ -- `cvxpy`_ - -For development: - -- `pytest`_ (for unit tests) -- `pytest-xdist`_ (for parallel unit tests) -- `mypy`_ (for type check) -- `sphinx`_ (for document generation) -- `ruff`_ (for code style check) - -.. _`Python 3.12.x`: https://www.python.org/ -.. _`NumPy`: https://numpy.org/ -.. _`SciPy`: https://scipy.org/ -.. _`Matplotlib`: https://matplotlib.org/ -.. _`cvxpy`: https://www.cvxpy.org/ -.. _`pytest`: https://docs.pytest.org/en/latest/ -.. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist -.. _`mypy`: https://mypy-lang.org/ -.. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html -.. _`ruff`: https://github.com/astral-sh/ruff - - -How to use ----------- - -1. Clone this repo and go into dir. - -.. code-block:: - - >$ git clone https://github.com/AtsushiSakai/PythonRobotics.git - - >$ cd PythonRobotics - - -2. Install the required libraries. - -using conda : - -.. code-block:: - - >$ conda env create -f requirements/environment.yml - -using pip : - -.. code-block:: - - >$ pip install -r requirements/requirements.txt - - -3. Execute python script in each directory. - -4. Add star to this repo if you like it 😃. +.. toctree:: + :maxdepth: 2 + :caption: Contents + what_is_python_robotics + how_to_use + how_to_read_textbook diff --git a/docs/how_to_read_textbook_main.rst b/docs/how_to_read_textbook_main.rst new file mode 100644 index 0000000000..3b92970e26 --- /dev/null +++ b/docs/how_to_read_textbook_main.rst @@ -0,0 +1,4 @@ +How To read this textbook +-------------------------- + +TBD \ No newline at end of file diff --git a/docs/how_to_use_main.rst b/docs/how_to_use_main.rst new file mode 100644 index 0000000000..d21b07c1a3 --- /dev/null +++ b/docs/how_to_use_main.rst @@ -0,0 +1,30 @@ +How to use +---------- + +1. Clone this repo and go into dir. + +.. code-block:: + + >$ git clone https://github.com/AtsushiSakai/PythonRobotics.git + + >$ cd PythonRobotics + + +2. Install the required libraries. + +using conda : + +.. code-block:: + + >$ conda env create -f requirements/environment.yml + +using pip : + +.. code-block:: + + >$ pip install -r requirements/requirements.txt + + +3. Execute python script in each directory. + +4. Add star to this repo if you like it 😃. diff --git a/docs/what_is_python_robotics_main.rst b/docs/what_is_python_robotics_main.rst new file mode 100644 index 0000000000..ce6e059dba --- /dev/null +++ b/docs/what_is_python_robotics_main.rst @@ -0,0 +1,100 @@ +.. _`What is PythonRobotics?`: + +What is PythonRobotics? +------------------------ + +This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. +These codes are developed under `MIT license`_ and on `GitHub`_. + +This project has three main philosophies below: + +1. Easy to understand each algorithm's basic idea. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The goal is for beginners in robotics to understand the basic ideas behind each algorithm. + +`Python`_ programming language is adopted in this project to achieve the goal. +Python is a high-level programming language that is easy to read and write. +If the code is not easy to read, it would be difficult to achieve our goal of +allowing beginners to understand the algorithms. +Python has great libraries for matrix operation, mathematical and scientific operation, +and visualization, which makes code more readable because such operations +don’t need to be re-implemented. +Having the core Python packages allows the user to focus on the algorithms, +rather than the implementations. + +PythonRobotics provides not only the code but also intuitive animations that +visually demonstrate the process and behavior of each algorithm over time. +This is an example of an animation gif file that shows the process of the +path planning in a highway scenario for autonomous vehicle. + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_velocity_keeping_frenet_path.gif + +This animation is a gif file and is created using the `Matplotlib`_ library. +All animaion gif files are stored in the `PythonRoboticsGifs`_ repository and +all animation movies are uploaded to this `YouTube channel`_. + +PythonRobotics also provides a textbook that explains the basic ideas of each algorithm. + +.. _`Python`: https://www.python.org/ +.. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs +.. _`YouTube channel`: https://youtube.com/playlist?list=PL12URV8HFpCozuz0SDxke6b2ae5UZvIwa&si=AH2fNPPYufPtK20S + + +2. Widely used and practical algorithms are selected. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The second philosophy is that implemented algorithms have to be practical +and widely used in both academia and industry. +We believe learning these algorithms will be useful in many applications. +For example, Kalman filters and particle filter for localization, +grid mapping for mapping, +dynamic programming based approaches and sampling based approaches for path planning, +and optimal control based approach for path tracking. +These algorithms are implemented in this project. + +3. Minimum dependency. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Each sample code is written in Python3 and only depends on some standard +modules for readability and ease of use. + + +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE + + +See this paper for more details: + +- PythonRobotics: a Python code collection of robotics algorithms: https://arxiv.org/abs/1808.10703 + +.. _`Requirements`: + +Requirements +============ + +- `Python 3.12.x`_ +- `NumPy`_ +- `SciPy`_ +- `Matplotlib`_ +- `cvxpy`_ + +For development: + +- `pytest`_ (for unit tests) +- `pytest-xdist`_ (for parallel unit tests) +- `mypy`_ (for type check) +- `sphinx`_ (for document generation) +- `ruff`_ (for code style check) + +.. _`Python 3.12.x`: https://www.python.org/ +.. _`NumPy`: https://numpy.org/ +.. _`SciPy`: https://scipy.org/ +.. _`Matplotlib`: https://matplotlib.org/ +.. _`cvxpy`: https://www.cvxpy.org/ +.. _`pytest`: https://docs.pytest.org/en/latest/ +.. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist +.. _`mypy`: https://mypy-lang.org/ +.. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html +.. _`ruff`: https://github.com/astral-sh/ruff + From 44bad786829e713c44259bc18cc7ac24b6c1e24c Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 29 Jan 2025 21:54:18 +0900 Subject: [PATCH 309/414] update getting started (#1132) --- docs/how_to_read_textbook_main.rst | 4 ---- docs/index_main.rst | 3 +-- .../0_getting_started_main.rst} | 7 +++--- .../1_what_is_python_robotics_main.rst} | 23 +++++++++++++------ .../0_getting_started/2_how_to_use_main.rst} | 0 .../3_how_to_contribute_main.rst} | 0 .../4_how_to_read_textbook_main.rst | 6 +++++ 7 files changed, 27 insertions(+), 16 deletions(-) delete mode 100644 docs/how_to_read_textbook_main.rst rename docs/{getting_started_main.rst => modules/0_getting_started/0_getting_started_main.rst} (53%) rename docs/{what_is_python_robotics_main.rst => modules/0_getting_started/1_what_is_python_robotics_main.rst} (79%) rename docs/{how_to_use_main.rst => modules/0_getting_started/2_how_to_use_main.rst} (100%) rename docs/{how_to_contribute_main.rst => modules/0_getting_started/3_how_to_contribute_main.rst} (100%) create mode 100644 docs/modules/0_getting_started/4_how_to_read_textbook_main.rst diff --git a/docs/how_to_read_textbook_main.rst b/docs/how_to_read_textbook_main.rst deleted file mode 100644 index 3b92970e26..0000000000 --- a/docs/how_to_read_textbook_main.rst +++ /dev/null @@ -1,4 +0,0 @@ -How To read this textbook --------------------------- - -TBD \ No newline at end of file diff --git a/docs/index_main.rst b/docs/index_main.rst index b9f334dd9b..c1e8d22d32 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -33,7 +33,7 @@ this graph shows GitHub star history of this project: :maxdepth: 2 :caption: Table of Contents - getting_started + modules/0_getting_started/0_getting_started modules/1_introduction/introduction modules/2_localization/localization modules/3_mapping/mapping @@ -46,7 +46,6 @@ this graph shows GitHub star history of this project: modules/10_control/control modules/11_utils/utils modules/12_appendix/appendix - how_to_contribute Indices and tables diff --git a/docs/getting_started_main.rst b/docs/modules/0_getting_started/0_getting_started_main.rst similarity index 53% rename from docs/getting_started_main.rst rename to docs/modules/0_getting_started/0_getting_started_main.rst index 07abeec451..cfec5b3c73 100644 --- a/docs/getting_started_main.rst +++ b/docs/modules/0_getting_started/0_getting_started_main.rst @@ -7,6 +7,7 @@ Getting Started :maxdepth: 2 :caption: Contents - what_is_python_robotics - how_to_use - how_to_read_textbook + 1_what_is_python_robotics + 2_how_to_use + 3_how_to_contribute + 4_how_to_read_textbook diff --git a/docs/what_is_python_robotics_main.rst b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst similarity index 79% rename from docs/what_is_python_robotics_main.rst rename to docs/modules/0_getting_started/1_what_is_python_robotics_main.rst index ce6e059dba..32b1ad4e5d 100644 --- a/docs/what_is_python_robotics_main.rst +++ b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst @@ -8,7 +8,7 @@ These codes are developed under `MIT license`_ and on `GitHub`_. This project has three main philosophies below: -1. Easy to understand each algorithm's basic idea. +Philosophy 1. Easy to understand each algorithm's basic idea. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The goal is for beginners in robotics to understand the basic ideas behind each algorithm. @@ -31,17 +31,26 @@ path planning in a highway scenario for autonomous vehicle. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_velocity_keeping_frenet_path.gif This animation is a gif file and is created using the `Matplotlib`_ library. -All animaion gif files are stored in the `PythonRoboticsGifs`_ repository and -all animation movies are uploaded to this `YouTube channel`_. +All animation gif files are stored in the `PythonRoboticsGifs`_ repository and +all animation movies are also uploaded to this `YouTube channel`_. PythonRobotics also provides a textbook that explains the basic ideas of each algorithm. +The PythonRobotics textbook allows you to learn fundamental algorithms used in +robotics with minimal mathematical formulas and textual explanations, +based on PythonRobotics’ sample codes and animations. +The contents of this document, like the code, are managed in the PythonRobotics +`GitHub`_ repository and converted into HTML-based online documents using `Sphinx`_, +which is a Python-based documentation builder. +Please refer to this section ":ref:`How to read this textbook`" for information on +how to read this document for learning. + .. _`Python`: https://www.python.org/ .. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs .. _`YouTube channel`: https://youtube.com/playlist?list=PL12URV8HFpCozuz0SDxke6b2ae5UZvIwa&si=AH2fNPPYufPtK20S -2. Widely used and practical algorithms are selected. +Philosophy 2. Widely used and practical algorithms are selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The second philosophy is that implemented algorithms have to be practical @@ -53,7 +62,7 @@ dynamic programming based approaches and sampling based approaches for path plan and optimal control based approach for path tracking. These algorithms are implemented in this project. -3. Minimum dependency. +Philosophy 3. Minimum dependency. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Each sample code is written in Python3 and only depends on some standard @@ -84,7 +93,7 @@ For development: - `pytest`_ (for unit tests) - `pytest-xdist`_ (for parallel unit tests) - `mypy`_ (for type check) -- `sphinx`_ (for document generation) +- `Sphinx`_ (for document generation) - `ruff`_ (for code style check) .. _`Python 3.12.x`: https://www.python.org/ @@ -95,6 +104,6 @@ For development: .. _`pytest`: https://docs.pytest.org/en/latest/ .. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist .. _`mypy`: https://mypy-lang.org/ -.. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html +.. _`Sphinx`: https://www.sphinx-doc.org/en/master/index.html .. _`ruff`: https://github.com/astral-sh/ruff diff --git a/docs/how_to_use_main.rst b/docs/modules/0_getting_started/2_how_to_use_main.rst similarity index 100% rename from docs/how_to_use_main.rst rename to docs/modules/0_getting_started/2_how_to_use_main.rst diff --git a/docs/how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst similarity index 100% rename from docs/how_to_contribute_main.rst rename to docs/modules/0_getting_started/3_how_to_contribute_main.rst diff --git a/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst new file mode 100644 index 0000000000..fb8db348c6 --- /dev/null +++ b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst @@ -0,0 +1,6 @@ +.. _`How to read this textbook`: + +How to read this textbook +-------------------------- + +TBD \ No newline at end of file From 2b9cc06000a4ae57dce885240d04e38e30cff8e3 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 30 Jan 2025 22:25:45 +0900 Subject: [PATCH 310/414] update getting started (#1133) --- .../0_getting_started_main.rst | 2 +- .../1_what_is_python_robotics_main.rst | 49 ++++++++++++------- ...rst => 2_how_to_run_sample_codes_main.rst} | 6 ++- 3 files changed, 37 insertions(+), 20 deletions(-) rename docs/modules/0_getting_started/{2_how_to_use_main.rst => 2_how_to_run_sample_codes_main.rst} (84%) diff --git a/docs/modules/0_getting_started/0_getting_started_main.rst b/docs/modules/0_getting_started/0_getting_started_main.rst index cfec5b3c73..cb2cba4784 100644 --- a/docs/modules/0_getting_started/0_getting_started_main.rst +++ b/docs/modules/0_getting_started/0_getting_started_main.rst @@ -8,6 +8,6 @@ Getting Started :caption: Contents 1_what_is_python_robotics - 2_how_to_use + 2_how_to_run_sample_codes 3_how_to_contribute 4_how_to_read_textbook diff --git a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst index 32b1ad4e5d..8c932b7263 100644 --- a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst +++ b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst @@ -6,6 +6,9 @@ What is PythonRobotics? This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. These codes are developed under `MIT license`_ and on `GitHub`_. +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE + This project has three main philosophies below: Philosophy 1. Easy to understand each algorithm's basic idea. @@ -60,35 +63,32 @@ For example, Kalman filters and particle filter for localization, grid mapping for mapping, dynamic programming based approaches and sampling based approaches for path planning, and optimal control based approach for path tracking. -These algorithms are implemented in this project. +These algorithms are implemented and explained in the textbook in this project. Philosophy 3. Minimum dependency. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Each sample code is written in Python3 and only depends on some standard -modules for readability and ease of use. - - -.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics -.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE - - -See this paper for more details: +Each sample code of PythonRobotics is written in Python3 and only depends on +some standard modules for readability and ease to setup and use. -- PythonRobotics: a Python code collection of robotics algorithms: https://arxiv.org/abs/1808.10703 .. _`Requirements`: Requirements ============ -- `Python 3.12.x`_ -- `NumPy`_ -- `SciPy`_ -- `Matplotlib`_ -- `cvxpy`_ +PythonRobotics depends only on the following five libraries, +including Python itself, to run each sample code. -For development: +- `Python 3.12.x`_ (for Python runtime) +- `NumPy`_ (for matrix operation) +- `SciPy`_ (for scientific operation) +- `cvxpy`_ (for convex optimization) +- `Matplotlib`_ (for visualization) + +If you only need to run the code, the five libraries mentioned above are sufficient. +However, for code development or creating documentation for the textbook, +the following additional libraries are required. - `pytest`_ (for unit tests) - `pytest-xdist`_ (for parallel unit tests) @@ -107,3 +107,18 @@ For development: .. _`Sphinx`: https://www.sphinx-doc.org/en/master/index.html .. _`ruff`: https://github.com/astral-sh/ruff +For instructions on installing the above libraries, please refer to +this section ":ref:`How to run sample codes`". + +Arxiv paper +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +We have published a paper on this project on Arxiv in 2018. + +See this paper for more details about this Project: + +- `PythonRobotics: a Python code collection of robotics algorithms`_ (`BibTeX`_) + +.. _`PythonRobotics: a Python code collection of robotics algorithms`: https://arxiv.org/abs/1808.10703 +.. _`BibTeX`: https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib + diff --git a/docs/modules/0_getting_started/2_how_to_use_main.rst b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst similarity index 84% rename from docs/modules/0_getting_started/2_how_to_use_main.rst rename to docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst index d21b07c1a3..eff54d3426 100644 --- a/docs/modules/0_getting_started/2_how_to_use_main.rst +++ b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst @@ -1,5 +1,7 @@ -How to use ----------- +.. _`How to run sample codes`: + +How to run sample codes +------------------------- 1. Clone this repo and go into dir. From a5fc2d039db9cdf6182d9fc97073b0d6e7388830 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 31 Jan 2025 21:38:06 +0900 Subject: [PATCH 311/414] update getting started (#1134) Co-authored-by: Atsushi Sakai --- .../2_how_to_run_sample_codes_main.rst | 94 ++++++++++++++++++- 1 file changed, 90 insertions(+), 4 deletions(-) diff --git a/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst index eff54d3426..b92fc9bde0 100644 --- a/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst +++ b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst @@ -3,7 +3,21 @@ How to run sample codes ------------------------- -1. Clone this repo and go into dir. +In this chapter, we will explain the setup process for running each sample code +in PythonRobotics and describe the contents of each directory. + +Steps to setup and run sample codes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +1. Install `Python 3.12.x`_ + +Note that older versions of Python3 might work, but we recommend using +the specified version, because the sample codes are only tested with it. + +2. If you prefer to use conda for package management, install +Anaconda or Miniconda to use `conda`_ command. + +3. Clone this repo and go into dir. .. code-block:: @@ -12,7 +26,10 @@ How to run sample codes >$ cd PythonRobotics -2. Install the required libraries. +4. Install the required libraries. + +We have prepared requirements management files for `conda`_ and `pip`_ under +the requirements directory. Using these files makes it easy to install the necessary libraries. using conda : @@ -27,6 +44,75 @@ using pip : >$ pip install -r requirements/requirements.txt -3. Execute python script in each directory. +5. Execute python script in each directory. + +For example, to run the sample code of `Extented Kalman Filter` in the +`localization` directory, execute the following command: + +.. code-block:: + + >$ cd localization/extended_kalman_filter + + >$ python extended_kalman_filter.py + +Then, you can see this animation of the EKF algorithm based localization: + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Localization/extended_kalman_filter/animation.gif + +Please refer to the `Directory structure`_ section for more details on the contents of each directory. + +6. Add star to this repo if you like it 😃. + +.. _`Python 3.12.x`: https://www.python.org/ +.. _`conda`: https://docs.conda.io/projects/conda/en/stable/user-guide/install/index.html +.. _`pip`: https://pip.pypa.io/en/stable/ +.. _`the requirements directory`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/requirements + +.. _`Directory structure`: + +Directory structure +~~~~~~~~~~~~~~~~~~~~ + +The top-level directory structure of PythonRobotics is as follows: + +Sample codes directories: + +- `AerialNavigation`_ : the sample codes of aerial navigation algorithms for drones and rocket landing. +- `ArmNavigation`_ : the sample codes of arm navigation algorithms for robotic arms. +- `Localization`_ : the sample codes of localization algorithms. +- `Bipedal`_ : the sample codes of bipedal walking algorithms for legged robots. +- `Control`_ : the sample codes of control algorithms for robotic systems. +- `Mapping`_ : the sample codes of mapping or obstacle shape recognition algorithms. +- `PathPlanning`_ : the sample codes of path planning algorithms. +- `PathTracking`_ : the sample codes of path tracking algorithms for car like robots. +- `SLAM`_ : the sample codes of SLAM algorithms. + +Other directories: + +- `docs`_ : This directory contains the documentation of PythonRobotics. +- `requirements`_ : This directory contains the requirements management files. +- `tests`_ : This directory contains the unit test files. +- `utils`_ : This directory contains utility functions used in some sample codes in common. +- `.github`_ : This directory contains the GitHub Actions configuration files. +- `.circleci`_ : This directory contains the CircleCI configuration files. + +The structure of this document is the same as that of the sample code +directories mentioned above. +For more details, please refer to the :ref:`How to read this textbook` section. + -4. Add star to this repo if you like it 😃. +.. _`AerialNavigation`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/AerialNavigation +.. _`ArmNavigation`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/ArmNavigation +.. _`Localization`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Localization +.. _`Bipedal`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Bipedal +.. _`Control`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Control +.. _`Mapping`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Mapping +.. _`PathPlanning`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/PathPlanning +.. _`PathTracking`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/PathTracking +.. _`SLAM`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/SLAM +.. _`docs`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/docs +.. _`requirements`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/requirements +.. _`tests`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/tests +.. _`utils`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/utils +.. _`.github`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/.github +.. _`.circleci`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/.circleci From f225c1845775cf8e1d8c62d04164743c2e9e00fc Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 1 Feb 2025 22:47:52 +0900 Subject: [PATCH 312/414] update getting started (#1135) Co-authored-by: Atsushi Sakai --- .../3_how_to_contribute_main.rst | 45 +++++++++++++++---- 1 file changed, 37 insertions(+), 8 deletions(-) diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 915b2155e4..296e4e8658 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -2,9 +2,18 @@ How To Contribute ================= This document describes how to contribute this project. +There are several ways to contribute to this project as below: + +#. `Adding a new algorithm example`_ +#. `Reporting and fixing a defect`_ +#. `Adding missed documentations for existing examples`_ +#. `Supporting this project`_ + + +.. _`Adding a new algorithm example`: Adding a new algorithm example -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This is a step by step manual to add a new algorithm example. @@ -67,9 +76,16 @@ Please check other documents for details. You can build the doc locally based on `doc README`_. -Note that the `reStructuredText`_ based doc should only focus on the mathematics and the algorithm of the example. +For creating a gif animation, you can use this tool: `matplotrecorder`_. + +The created gif file should be stored in the `PythonRoboticsGifs`_ repository, +so please create a PR to add it and refer to it in the doc. + +Note that the `reStructuredText`_ based doc should only focus on the +mathematics and the algorithm of the example. -Documentations related codes should be in the python script as the header comments of the script or docstrings of each function. +Documentations related codes should be in the python script as the header +comments of the script or docstrings of each function. .. _`submit a pull request`: @@ -92,6 +108,9 @@ After that, I will start the review. Note that this is my hobby project; I appreciate your patience during the review process. +  + +.. _`Reporting and fixing a defect`: Reporting and fixing a defect ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -115,19 +134,24 @@ in the test code to show the issue was solved. This doc `submit a pull request`_ can be helpful to submit a pull request. +.. _`Adding missed documentations for existing examples`: + Adding missed documentations for existing examples ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Adding the missed documentations for existing examples is also great contribution. If you check the `Python Robotics Docs`_, you can notice that some of the examples -only have a simulation gif or short overview descriptions, +only have a simulation gif or short overview descriptions or just TBD., but no detailed algorithm or mathematical description. +These documents needs to be improved. This doc `how to write doc`_ can be helpful to write documents. +.. _`Supporting this project`: + Supporting this project -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^ Supporting this project financially is also a great contribution!!. @@ -141,10 +165,12 @@ If you or your company would like to support this project, please consider: If you would like to support us in some other way, please contact with creating an issue. -Sponsors ---------- +Current Major Sponsors +----------------------- + +#. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. +#. `1Password`_ : They are providing a free license of their 1Password team license for this OSS project. -1. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. .. _`Python Robotics Docs`: https://atsushisakai.github.io/PythonRobotics @@ -160,5 +186,8 @@ Sponsors .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma .. _`One-time donation via PayPal`: https://www.paypal.com/paypalme/myenigmapay/ +.. _`1Password`: https://github.com/1Password/for-open-source +.. _`matplotrecorder`: https://github.com/AtsushiSakai/matplotrecorder +.. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs From e6f5dfe537d97cf79d55ad2803911a135aeaa1fd Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 2 Feb 2025 21:34:26 +0900 Subject: [PATCH 313/414] update getting started (#1136) Co-authored-by: Atsushi Sakai --- .../0_getting_started/3_how_to_contribute_main.rst | 2 +- .../0_getting_started/4_how_to_read_textbook_main.rst | 10 +++++++++- docs/modules/1_introduction/introduction_main.rst | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 296e4e8658..6e5c1be8ee 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -1,4 +1,4 @@ -How To Contribute +How to contribute ================= This document describes how to contribute this project. diff --git a/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst index fb8db348c6..1625c838af 100644 --- a/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst +++ b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst @@ -3,4 +3,12 @@ How to read this textbook -------------------------- -TBD \ No newline at end of file +This document is structured to help you learn the fundamental concepts +behind each sample code in PythonRobotics. + +If you already have some knowledge of robotics technologies, you can start +by reading any document that interests you. + +However, if you have no prior knowledge of robotics technologies, it is +recommended that you first read the :ref:`Introduction` section and then proceed +to the documents related to the technical fields that interest you. \ No newline at end of file diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst index 4561efd349..ec1f237545 100644 --- a/docs/modules/1_introduction/introduction_main.rst +++ b/docs/modules/1_introduction/introduction_main.rst @@ -1,4 +1,4 @@ -.. _introduction: +.. _Introduction: Introduction ============ From 70269fe9601b6189914a739c4c0d42b598c3425b Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 3 Feb 2025 22:19:10 +0900 Subject: [PATCH 314/414] update getting started (#1138) --- .../python_for_robotics_main.rst} | 5 +---- docs/modules/1_introduction/introduction_main.rst | 7 ++++++- 2 files changed, 7 insertions(+), 5 deletions(-) rename docs/modules/1_introduction/{2_software_for_robotics/software_for_robotics_main.rst => 2_python_for_robotics/python_for_robotics_main.rst} (51%) diff --git a/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst similarity index 51% rename from docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst rename to docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 835441f85d..23f31da779 100644 --- a/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,7 +1,4 @@ -Software for Robotics ----------------------- - Python for Robotics -~~~~~~~~~~~~~~~~~~~~~ +---------------------- TBD diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst index ec1f237545..a7ce55f9bf 100644 --- a/docs/modules/1_introduction/introduction_main.rst +++ b/docs/modules/1_introduction/introduction_main.rst @@ -3,11 +3,16 @@ Introduction ============ +PythonRobotics is composed of two words: "Python" and "Robotics". +Therefore, I will first explain these two topics, Robotics and Python. +After that, I will provide an overview of the robotics technologies +covered in PythonRobotics. + .. toctree:: :maxdepth: 2 :caption: Table of Contents 1_definition_of_robotics/definition_of_robotics - 2_software_for_robotics/software_for_robotics + 2_python_for_robotics/python_for_robotics 3_technology_for_robotics/technology_for_robotics From 5b06435be9e24a73c8ee9d0f0acb1e409a118141 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Feb 2025 07:37:17 +0900 Subject: [PATCH 315/414] build(deps): bump ruff from 0.9.3 to 0.9.4 in /requirements (#1139) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.3 to 0.9.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.3...0.9.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e8bed7b6d7..9d4e7deb4d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.9.3 # For unit test +ruff == 0.9.4 # For unit test From 7b7bd784093e4d46108b667c54261d054894e875 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 5 Feb 2025 13:41:28 +0900 Subject: [PATCH 316/414] update introduction (#1141) --- .../python_for_robotics_main.rst | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 23f31da779..1ad5316f53 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,4 +1,50 @@ Python for Robotics ---------------------- +Python for general-purpose programming +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +`Python `_ is an general-purpose programming language developed by +`Guido van Rossum `_ in the late 1980s. + +It features as follows: + +#. High-level +#. Interpreted +#. Dynamic type system (also type annotation is supported) +#. Emphasizes code readability +#. Rapid prototyping +#. Batteries included +#. Interoperability for C and Fortran + +Due to these features, Python is the most popular programming language +for educational purposes for programming beginners. + +Python for Scientific Computing +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Python itself was not designed for scientific computing. +However, scientists quickly recognized its strengths. +For example, + +#. High-level and interpreted features enable scientists to focus on their problems without dealing with low-level programming tasks like memory management. +#. Code readability, rapid prototyping, and batteries included features enables scientists who are not professional programmers, to solve their problems easily. +#. The interoperability to wrap C and Fortran libraries enables scientists to access already existed powerful scientific computing libraries. + +To address the more needs of scientific computing, many libraries have been developed. + +- `NumPy `_ is the fundamental package for scientific computing with Python. +- `SciPy `_ is a library that builds on NumPy and provides a large number of functions that operate on NumPy arrays and are useful for different types of scientific and engineering applications. +- `Matplotlib `_ is a plotting library for the Python programming language and its numerical mathematics extension NumPy. +- `Pandas `_ is a fast, powerful, flexible, and easy-to-use open-source data analysis and data manipulation library built on top of NumPy. +- `SymPy `_ is a Python library for symbolic mathematics. + +And more domain-specific libraries have been developed: +- `Scikit-learn `_ is a free software machine learning library for the Python programming language. +- `Scikit-image `_ is a collection of algorithms for image processing. + +Python for Robotics +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + TBD + From 322fead45a62417c5d0d7dbb07ef17067122da7b Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Wed, 5 Feb 2025 20:56:13 +0800 Subject: [PATCH 317/414] feat: add DistanceMap (#1142) * feat: add DistanceMap * feat: add DistanceMap test * feat: add DistanceMap doc * feat: DistanceMap doc update * feat: DistanceMap update --- Mapping/DistanceMap/distance_map.py | 151 ++++++++++++++++++ .../3_mapping/distance_map/distance_map.png | Bin 0 -> 32698 bytes .../distance_map/distance_map_main.rst | 27 ++++ docs/modules/3_mapping/mapping_main.rst | 1 + tests/test_distance_map.py | 118 ++++++++++++++ 5 files changed, 297 insertions(+) create mode 100644 Mapping/DistanceMap/distance_map.py create mode 100644 docs/modules/3_mapping/distance_map/distance_map.png create mode 100644 docs/modules/3_mapping/distance_map/distance_map_main.rst create mode 100644 tests/test_distance_map.py diff --git a/Mapping/DistanceMap/distance_map.py b/Mapping/DistanceMap/distance_map.py new file mode 100644 index 0000000000..54c98c6a75 --- /dev/null +++ b/Mapping/DistanceMap/distance_map.py @@ -0,0 +1,151 @@ +""" +Distance Map + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Distance Map] +(https://cs.brown.edu/people/pfelzens/papers/dt-final.pdf) +""" + +import numpy as np +import matplotlib.pyplot as plt + +INF = 1e20 +ENABLE_PLOT = True + + +def compute_sdf(obstacles): + """ + Compute the signed distance field (SDF) from a boolean field. + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array representing the signed distance field, where positive values indicate distance + to the nearest obstacle, and negative values indicate distance to the nearest free space. + """ + a = compute_udf(obstacles) + b = compute_udf(obstacles == 0) + return a - b + + +def compute_udf(obstacles): + """ + Compute the unsigned distance field (UDF) from a boolean field. + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array of distances from the nearest obstacle, with the same dimensions as `bool_field`. + """ + edt = obstacles.copy() + if not np.all(np.isin(edt, [0, 1])): + raise ValueError("Input array should only contain 0 and 1") + edt = np.where(edt == 0, INF, edt) + edt = np.where(edt == 1, 0, edt) + for row in range(len(edt)): + dt(edt[row]) + edt = edt.T + for row in range(len(edt)): + dt(edt[row]) + edt = edt.T + return np.sqrt(edt) + + +def dt(d): + """ + Compute 1D distance transform under the squared Euclidean distance + + Parameters + ---------- + d : array_like + Input array containing the distances. + + Returns: + -------- + d : array_like + The transformed array with computed distances. + """ + v = np.zeros(len(d) + 1) + z = np.zeros(len(d) + 1) + k = 0 + v[0] = 0 + z[0] = -INF + z[1] = INF + for q in range(1, len(d)): + s = ((d[q] + q * q) - (d[int(v[k])] + v[k] * v[k])) / (2 * q - 2 * v[k]) + while s <= z[k]: + k = k - 1 + s = ((d[q] + q * q) - (d[int(v[k])] + v[k] * v[k])) / (2 * q - 2 * v[k]) + k = k + 1 + v[k] = q + z[k] = s + z[k + 1] = INF + k = 0 + for q in range(len(d)): + while z[k + 1] < q: + k = k + 1 + dx = q - v[k] + d[q] = dx * dx + d[int(v[k])] + + +def main(): + obstacles = np.array( + [ + [1, 0, 0, 0, 0], + [0, 1, 1, 1, 0], + [0, 1, 1, 1, 0], + [0, 0, 1, 1, 0], + [0, 0, 1, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 1, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 0], + ] + ) + + # Compute the signed distance field + sdf = compute_sdf(obstacles) + udf = compute_udf(obstacles) + + if ENABLE_PLOT: + _, (ax1, ax2, ax3) = plt.subplots(1, 3, figsize=(15, 5)) + + obstacles_plot = ax1.imshow(obstacles, cmap="binary") + ax1.set_title("Obstacles") + ax1.set_xlabel("x") + ax1.set_ylabel("y") + plt.colorbar(obstacles_plot, ax=ax1) + + udf_plot = ax2.imshow(udf, cmap="viridis") + ax2.set_title("Unsigned Distance Field") + ax2.set_xlabel("x") + ax2.set_ylabel("y") + plt.colorbar(udf_plot, ax=ax2) + + sdf_plot = ax3.imshow(sdf, cmap="RdBu") + ax3.set_title("Signed Distance Field") + ax3.set_xlabel("x") + ax3.set_ylabel("y") + plt.colorbar(sdf_plot, ax=ax3) + + plt.tight_layout() + plt.show() + + +if __name__ == "__main__": + main() diff --git a/docs/modules/3_mapping/distance_map/distance_map.png b/docs/modules/3_mapping/distance_map/distance_map.png new file mode 100644 index 0000000000000000000000000000000000000000..2d89252a70358ad1b60025d7bb3d9a217a2cefcc GIT binary patch literal 32698 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 literal 0 HcmV?d00001 diff --git a/docs/modules/3_mapping/distance_map/distance_map_main.rst b/docs/modules/3_mapping/distance_map/distance_map_main.rst new file mode 100644 index 0000000000..45273cd3bb --- /dev/null +++ b/docs/modules/3_mapping/distance_map/distance_map_main.rst @@ -0,0 +1,27 @@ +Distance Map +------------ + +This is an implementation of the Distance Map algorithm for path planning. + +The Distance Map algorithm computes the unsigned distance field (UDF) and signed distance field (SDF) from a boolean field representing obstacles. + +The UDF gives the distance from each point to the nearest obstacle. The SDF gives positive distances for points outside obstacles and negative distances for points inside obstacles. + +Example +~~~~~~~ + +The algorithm is demonstrated on a simple 2D grid with obstacles: + +.. image:: distance_map.png + +API +~~~ + +.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_sdf + +.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_udf + +References +~~~~~~~~~~ + +- `Distance Transforms of Sampled Functions `_ paper by Pedro F. Felzenszwalb and Daniel P. Huttenlocher. \ No newline at end of file diff --git a/docs/modules/3_mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst index 28e18984d3..825b08d3ec 100644 --- a/docs/modules/3_mapping/mapping_main.rst +++ b/docs/modules/3_mapping/mapping_main.rst @@ -17,3 +17,4 @@ Mapping is the ability of a robot to understand its surroundings with external s circle_fitting/circle_fitting rectangle_fitting/rectangle_fitting normal_vector_estimation/normal_vector_estimation + distance_map/distance_map diff --git a/tests/test_distance_map.py b/tests/test_distance_map.py new file mode 100644 index 0000000000..df6e394e2c --- /dev/null +++ b/tests/test_distance_map.py @@ -0,0 +1,118 @@ +import conftest # noqa +import numpy as np +from Mapping.DistanceMap import distance_map as m + + +def test_compute_sdf(): + """Test the computation of Signed Distance Field (SDF)""" + # Create a simple obstacle map for testing + obstacles = np.array([[0, 0, 0], [0, 1, 0], [0, 0, 0]]) + + sdf = m.compute_sdf(obstacles) + + # Verify basic properties of SDF + assert sdf.shape == obstacles.shape, "SDF should have the same shape as input map" + assert np.all(np.isfinite(sdf)), "SDF should not contain infinite values" + + # Verify SDF value is negative at obstacle position + assert sdf[1, 1] < 0, "SDF value should be negative at obstacle position" + + # Verify SDF value is positive in free space + assert sdf[0, 0] > 0, "SDF value should be positive in free space" + + +def test_compute_udf(): + """Test the computation of Unsigned Distance Field (UDF)""" + # Create obstacle map for testing + obstacles = np.array([[0, 0, 0], [0, 1, 0], [0, 0, 0]]) + + udf = m.compute_udf(obstacles) + + # Verify basic properties of UDF + assert udf.shape == obstacles.shape, "UDF should have the same shape as input map" + assert np.all(np.isfinite(udf)), "UDF should not contain infinite values" + assert np.all(udf >= 0), "All UDF values should be non-negative" + + # Verify UDF value is 0 at obstacle position + assert np.abs(udf[1, 1]) < 1e-10, "UDF value should be 0 at obstacle position" + + # Verify UDF value is 1 for adjacent cells + assert np.abs(udf[0, 1] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + assert np.abs(udf[1, 0] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + assert np.abs(udf[1, 2] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + assert np.abs(udf[2, 1] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + + +def test_dt(): + """Test the computation of 1D distance transform""" + # Create test data + d = np.array([m.INF, 0, m.INF]) + m.dt(d) + + # Verify distance transform results + assert np.all(np.isfinite(d)), ( + "Distance transform result should not contain infinite values" + ) + assert d[1] == 0, "Distance at obstacle position should be 0" + assert d[0] == 1, "Distance at adjacent position should be 1" + assert d[2] == 1, "Distance at adjacent position should be 1" + + +def test_compute_sdf_empty(): + """Test SDF computation with empty map""" + # Test with empty map (no obstacles) + empty_map = np.zeros((5, 5)) + sdf = m.compute_sdf(empty_map) + + assert np.all(sdf > 0), "All SDF values should be positive for empty map" + assert sdf.shape == empty_map.shape, "Output shape should match input shape" + + +def test_compute_sdf_full(): + """Test SDF computation with fully occupied map""" + # Test with fully occupied map + full_map = np.ones((5, 5)) + sdf = m.compute_sdf(full_map) + + assert np.all(sdf < 0), "All SDF values should be negative for fully occupied map" + assert sdf.shape == full_map.shape, "Output shape should match input shape" + + +def test_compute_udf_invalid_input(): + """Test UDF computation with invalid input values""" + # Test with invalid values (not 0 or 1) + invalid_map = np.array([[0, 2, 0], [0, -1, 0], [0, 0.5, 0]]) + + try: + m.compute_udf(invalid_map) + assert False, "Should raise ValueError for invalid input values" + except ValueError: + pass + + +def test_compute_udf_empty(): + """Test UDF computation with empty map""" + # Test with empty map + empty_map = np.zeros((5, 5)) + udf = m.compute_udf(empty_map) + + assert np.all(udf > 0), "All UDF values should be positive for empty map" + assert np.all(np.isfinite(udf)), "UDF should not contain infinite values" + + +def test_main(): + """Test the execution of main function""" + m.ENABLE_PLOT = False + m.main() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 2234abf63d07e5496e37c1b57a1b927c303272a8 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Thu, 6 Feb 2025 12:05:20 +0800 Subject: [PATCH 318/414] fix: DistanceMap doc autofunction (#1143) --- docs/modules/3_mapping/distance_map/distance_map_main.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/modules/3_mapping/distance_map/distance_map_main.rst b/docs/modules/3_mapping/distance_map/distance_map_main.rst index 45273cd3bb..0ef9e3022f 100644 --- a/docs/modules/3_mapping/distance_map/distance_map_main.rst +++ b/docs/modules/3_mapping/distance_map/distance_map_main.rst @@ -17,9 +17,9 @@ The algorithm is demonstrated on a simple 2D grid with obstacles: API ~~~ -.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_sdf +.. autofunction:: Mapping.DistanceMap.distance_map.compute_sdf -.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_udf +.. autofunction:: Mapping.DistanceMap.distance_map.compute_udf References ~~~~~~~~~~ From 0676dfd67e099198c34c485e176b077ad6fa7374 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 6 Feb 2025 15:16:17 +0900 Subject: [PATCH 319/414] update introduction (#1144) --- .../python_for_robotics_main.rst | 57 +++++++++++++++++-- 1 file changed, 51 insertions(+), 6 deletions(-) diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 1ad5316f53..2f89f0c7b5 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,11 +1,13 @@ Python for Robotics ---------------------- +This section explains the Python itself and features for Robotics. + Python for general-purpose programming ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Python `_ is an general-purpose programming language developed by -`Guido van Rossum `_ in the late 1980s. +`Guido van Rossum `_ from the late 1980s. It features as follows: @@ -17,7 +19,7 @@ It features as follows: #. Batteries included #. Interoperability for C and Fortran -Due to these features, Python is the most popular programming language +Due to these features, Python is one of the most popular programming language for educational purposes for programming beginners. Python for Scientific Computing @@ -29,9 +31,9 @@ For example, #. High-level and interpreted features enable scientists to focus on their problems without dealing with low-level programming tasks like memory management. #. Code readability, rapid prototyping, and batteries included features enables scientists who are not professional programmers, to solve their problems easily. -#. The interoperability to wrap C and Fortran libraries enables scientists to access already existed powerful scientific computing libraries. +#. The interoperability to wrap C and Fortran libraries enables scientists to access already existed powerful and optimized scientific computing libraries. -To address the more needs of scientific computing, many libraries have been developed. +To address the more needs of scientific computing, many fundamental scientific computation libraries have been developed based on the upper features. - `NumPy `_ is the fundamental package for scientific computing with Python. - `SciPy `_ is a library that builds on NumPy and provides a large number of functions that operate on NumPy arrays and are useful for different types of scientific and engineering applications. @@ -39,12 +41,55 @@ To address the more needs of scientific computing, many libraries have been deve - `Pandas `_ is a fast, powerful, flexible, and easy-to-use open-source data analysis and data manipulation library built on top of NumPy. - `SymPy `_ is a Python library for symbolic mathematics. -And more domain-specific libraries have been developed: +Also, more domain-specific libraries have been developed based on these fundamental libraries: + - `Scikit-learn `_ is a free software machine learning library for the Python programming language. - `Scikit-image `_ is a collection of algorithms for image processing. +- `Networkx `_ is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. +- `SunPy `_ is a community-developed free and open-source software package for solar physics. +- `Astropy `_ is a community-developed free and open-source software package for astronomy. + +Currently, Python is one of the most popular programming languages for scientific computing. Python for Robotics ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -TBD +Scientific computation routine are very important for robotics. +For example, matrix operation, optimization, and visualization are fundamental for robotics. + +Python has become an increasingly popular language in robotics due to its versatility, readability, and extensive libraries. Here's a breakdown of why Python is a great choice for robotics development: + +Advantages of Python for Robotics: + +Simplicity and Readability: Python's syntax is clear and concise, making it easier to learn and write code. This is crucial in robotics where complex algorithms and control logic are involved. +Extensive Libraries: Python boasts a rich collection of libraries specifically designed for robotics: +ROS (Robot Operating System): ROS, a widely used framework for robotics development, has strong Python support (rospy). This allows developers to easily create nodes, manage communication between different parts of a robot system, and utilize various ROS tools. +OpenCV: This powerful library provides tools for computer vision tasks like image processing, object detection, and motion tracking, essential for robots that perceive and interact with their environment. +NumPy and SciPy: These libraries offer efficient numerical computation and scientific tools, enabling developers to implement complex mathematical models and control algorithms. +Scikit-learn: This library provides machine learning algorithms, which are increasingly important in robotics for tasks like perception, planning, and control. +Cross-Platform Compatibility: Python code can run on various operating systems (Windows, macOS, Linux), providing flexibility in choosing hardware platforms for robotics projects. +Large Community and Support: Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. +Use Cases of Python in Robotics: + +Robot Control: Python can be used to write control algorithms for robot manipulators, mobile robots, and other robotic systems. +Perception: Python, combined with libraries like OpenCV, enables robots to process sensor data (camera images, lidar data) to understand their surroundings. +Path Planning: Python algorithms can be used to plan collision-free paths for robots to navigate in complex environments. +Machine Learning: Python libraries like Scikit-learn empower robots to learn from data and improve their performance in tasks like object recognition and manipulation. +Simulation: Python can be used to create simulated environments for testing and developing robot algorithms before deploying them on real hardware. +Examples of Python in Robotics: + +Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. +Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. +Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. +Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. +Getting Started with Python in Robotics: + +Learn Python Basics: Familiarize yourself with Python syntax, data structures, and programming concepts. +Explore Robotics Libraries: Dive into libraries like ROS, OpenCV, and others relevant to your robotics interests. +Practice with Projects: Start with small projects to gain hands-on experience, gradually increasing complexity. +Join the Community: Engage with the robotics community through online forums, workshops, and conferences to learn from others and share your knowledge. +In conclusion, Python's simplicity, extensive libraries, and strong community support make it an ideal language for robotics development. Whether you're a beginner or an experienced programmer, Python offers the tools and resources you need to build innovative and capable robots. + +Python is used for this `PythonRobotics` project because of the above features +to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. From 9936f344635e146b9a2ee402ab1672b4e7216d6e Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 7 Feb 2025 13:32:11 +0900 Subject: [PATCH 320/414] update introduction (#1145) --- .../definition_of_robotics_main.rst | 7 +++ .../python_for_robotics_main.rst | 63 +++++++++---------- 2 files changed, 37 insertions(+), 33 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 2f31834017..fd151e3f20 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -5,3 +5,10 @@ In recent years, autonomous navigation technologies have received huge attention in many fields. Such fields include, autonomous driving[22], drone flight navigation, and other transportation systems. + +Examples of Python in Robotics: + +Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. +Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. +Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. +Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. \ No newline at end of file diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 2f89f0c7b5..90edd5dc0c 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -40,55 +40,52 @@ To address the more needs of scientific computing, many fundamental scientific c - `Matplotlib `_ is a plotting library for the Python programming language and its numerical mathematics extension NumPy. - `Pandas `_ is a fast, powerful, flexible, and easy-to-use open-source data analysis and data manipulation library built on top of NumPy. - `SymPy `_ is a Python library for symbolic mathematics. +- `CVXPy `_ is a Python-embedded modeling language for convex optimization problems. Also, more domain-specific libraries have been developed based on these fundamental libraries: - `Scikit-learn `_ is a free software machine learning library for the Python programming language. - `Scikit-image `_ is a collection of algorithms for image processing. -- `Networkx `_ is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. +- `Networkx `_ is a package for the creation, manipulation for complex networks. - `SunPy `_ is a community-developed free and open-source software package for solar physics. - `Astropy `_ is a community-developed free and open-source software package for astronomy. Currently, Python is one of the most popular programming languages for scientific computing. Python for Robotics -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^ -Scientific computation routine are very important for robotics. -For example, matrix operation, optimization, and visualization are fundamental for robotics. +Python has become an increasingly popular language in robotics. -Python has become an increasingly popular language in robotics due to its versatility, readability, and extensive libraries. Here's a breakdown of why Python is a great choice for robotics development: +These are advantages of Python for Robotics: -Advantages of Python for Robotics: +Simplicity and Readability +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python's syntax is clear and concise, making it easier to learn and write code. +This is crucial in robotics where complex algorithms and control logic are involved. -Simplicity and Readability: Python's syntax is clear and concise, making it easier to learn and write code. This is crucial in robotics where complex algorithms and control logic are involved. -Extensive Libraries: Python boasts a rich collection of libraries specifically designed for robotics: + +Extensive libraries for scientific computation. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Scientific computation routine are fundamental for robotics. +For example: + +- Matrix operation is needed for rigid body transformation, state estimation, and model based control. +- Optimization is needed for optimization based SLAM, optimal path planning, and optimal control. +- Visualization is needed for robot teleoperation, debugging, and simulation. + +ROS supports Python +~~~~~~~~~~~~~~~~~~~~~~~~~~~ ROS (Robot Operating System): ROS, a widely used framework for robotics development, has strong Python support (rospy). This allows developers to easily create nodes, manage communication between different parts of a robot system, and utilize various ROS tools. -OpenCV: This powerful library provides tools for computer vision tasks like image processing, object detection, and motion tracking, essential for robots that perceive and interact with their environment. -NumPy and SciPy: These libraries offer efficient numerical computation and scientific tools, enabling developers to implement complex mathematical models and control algorithms. -Scikit-learn: This library provides machine learning algorithms, which are increasingly important in robotics for tasks like perception, planning, and control. -Cross-Platform Compatibility: Python code can run on various operating systems (Windows, macOS, Linux), providing flexibility in choosing hardware platforms for robotics projects. -Large Community and Support: Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. -Use Cases of Python in Robotics: - -Robot Control: Python can be used to write control algorithms for robot manipulators, mobile robots, and other robotic systems. -Perception: Python, combined with libraries like OpenCV, enables robots to process sensor data (camera images, lidar data) to understand their surroundings. -Path Planning: Python algorithms can be used to plan collision-free paths for robots to navigate in complex environments. -Machine Learning: Python libraries like Scikit-learn empower robots to learn from data and improve their performance in tasks like object recognition and manipulation. -Simulation: Python can be used to create simulated environments for testing and developing robot algorithms before deploying them on real hardware. -Examples of Python in Robotics: - -Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. -Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. -Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. -Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. -Getting Started with Python in Robotics: - -Learn Python Basics: Familiarize yourself with Python syntax, data structures, and programming concepts. -Explore Robotics Libraries: Dive into libraries like ROS, OpenCV, and others relevant to your robotics interests. -Practice with Projects: Start with small projects to gain hands-on experience, gradually increasing complexity. -Join the Community: Engage with the robotics community through online forums, workshops, and conferences to learn from others and share your knowledge. -In conclusion, Python's simplicity, extensive libraries, and strong community support make it an ideal language for robotics development. Whether you're a beginner or an experienced programmer, Python offers the tools and resources you need to build innovative and capable robots. + +Cross-Platform Compatibility +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python code can run on various operating systems (Windows, macOS, Linux), providing flexibility in choosing hardware platforms for robotics projects. + +Large Community and Support +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. + Python is used for this `PythonRobotics` project because of the above features to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. From 15e106839285033e1fa68cbed6f14e219f3af88f Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 7 Feb 2025 13:42:56 +0900 Subject: [PATCH 321/414] Update CONTRIBUTING.md --- CONTRIBUTING.md | 24 +++--------------------- 1 file changed, 3 insertions(+), 21 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 91f6dfa822..3bcc499e6a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,23 +1,5 @@ -# Contributing to Python +# Contributing -:+1::tada: First of off, thanks very much for taking the time to contribute! :tada::+1: +:+1::tada: First of all, thank you very much for taking the time to contribute! :tada::+1: -The following is a set of guidelines for contributing to PythonRobotics. - -These are mostly guidelines, not rules. - -Use your best judgment, and feel free to propose changes to this document in a pull request. - -# Before contributing - -## Taking a look at the paper. - -Please check this paper to understand the philosophy of this project. - -- [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) - -## Check your Python version. - -We only accept a PR for Python 3.8.x or higher. - -We will not accept a PR for Python 2.x. +Please check this document for contribution: [How to contribute — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/modules/0_getting_started/3_how_to_contribute.html) From a8f3388bbe80e41655acedc44c2cbb86d011fb48 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 9 Feb 2025 21:00:02 +0900 Subject: [PATCH 322/414] update introduction (#1146) --- .../3_how_to_contribute_main.rst | 37 ++++++++++++++----- .../python_for_robotics_main.rst | 29 ++++++++++++--- 2 files changed, 51 insertions(+), 15 deletions(-) diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 6e5c1be8ee..874564cbb8 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -9,10 +9,30 @@ There are several ways to contribute to this project as below: #. `Adding missed documentations for existing examples`_ #. `Supporting this project`_ +Before contributing +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Please check following items before contributing: + +Understanding this project +--------------------------- + +Please check this :ref:`What is PythonRobotics?` section and this paper +`PythonRobotics: a Python code collection of robotics algorithms`_ +to understand the philosophies of this project. + +.. _`PythonRobotics: a Python code collection of robotics algorithms`: https://arxiv.org/abs/1808.10703 + +Check your Python version. +--------------------------- + +We only accept a PR for Python 3.12.x or higher. + +We will not accept a PR for Python 2.x. .. _`Adding a new algorithm example`: -Adding a new algorithm example +1. Adding a new algorithm example ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This is a step by step manual to add a new algorithm example. @@ -112,8 +132,8 @@ Note that this is my hobby project; I appreciate your patience during the review .. _`Reporting and fixing a defect`: -Reporting and fixing a defect -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +2. Reporting and fixing a defect +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reporting and fixing a defect is also great contribution. @@ -136,8 +156,8 @@ This doc `submit a pull request`_ can be helpful to submit a pull request. .. _`Adding missed documentations for existing examples`: -Adding missed documentations for existing examples -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +3. Adding missed documentations for existing examples +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Adding the missed documentations for existing examples is also great contribution. @@ -150,8 +170,8 @@ This doc `how to write doc`_ can be helpful to write documents. .. _`Supporting this project`: -Supporting this project -^^^^^^^^^^^^^^^^^^^^^^^^ +4. Supporting this project +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Supporting this project financially is also a great contribution!!. @@ -165,8 +185,7 @@ If you or your company would like to support this project, please consider: If you would like to support us in some other way, please contact with creating an issue. -Current Major Sponsors ------------------------ +Current Major Sponsors: #. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. #. `1Password`_ : They are providing a free license of their 1Password team license for this OSS project. diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 90edd5dc0c..65b1705150 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,6 +1,8 @@ Python for Robotics ---------------------- +Python is used for this `PythonRobotics` project because of the above features +to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. This section explains the Python itself and features for Robotics. Python for general-purpose programming @@ -76,7 +78,27 @@ For example: ROS supports Python ~~~~~~~~~~~~~~~~~~~~~~~~~~~ -ROS (Robot Operating System): ROS, a widely used framework for robotics development, has strong Python support (rospy). This allows developers to easily create nodes, manage communication between different parts of a robot system, and utilize various ROS tools. +`ROS`_ (Robot Operating System) is an open-source and widely used framework for robotics development. +It is designed to help developping complicated robotic applications. +ROS provides essential tools, libraries, and drivers to simplify robot programming and integration. + +Key Features of ROS: + +- Modular Architecture – Uses a node-based system where different components (nodes) communicate via messages. +- Hardware Abstraction – Supports various robots, sensors, and actuators, making development more flexible. +- Powerful Communication System – Uses topics, services, and actions for efficient data exchange between components. +- Rich Ecosystem – Offers many pre-built packages for navigation, perception, and manipulation. +- Multi-language Support – Primarily uses Python and C++, but also supports other languages. +- Simulation & Visualization – Tools like Gazebo (for simulation) and RViz (for visualization) aid in development and testing. +- Scalability & Community Support – Widely used in academia and industry, with a large open-source community. + +ROS has strong Python support (`rospy`_ for ROS1 and `rclpy`_ for ROS2). +This allows developers to easily create nodes, manage communication between +different parts of a robot system, and utilize various ROS tools. + +.. _`ROS`: https://www.ros.org/ +.. _`rospy`: http://wiki.ros.org/rospy +.. _`rclpy`: https://docs.ros.org/en/jazzy/Tutorials/Beginner-Client-Libraries/Writing-A-Simple-Py-Publisher-And-Subscriber.html Cross-Platform Compatibility ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -85,8 +107,3 @@ Python code can run on various operating systems (Windows, macOS, Linux), provid Large Community and Support ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. - - -Python is used for this `PythonRobotics` project because of the above features -to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. - From e304f07a997bf40977a004ac2a66f476aa2aa861 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 10 Feb 2025 11:21:19 +0900 Subject: [PATCH 323/414] update introduction (#1147) --- .../python_for_robotics_main.rst | 32 +++++++++++++++++-- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 65b1705150..b677d2c59b 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,9 +1,10 @@ Python for Robotics ---------------------- -Python is used for this `PythonRobotics` project because of the above features -to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. -This section explains the Python itself and features for Robotics. +A programing language, Python is used for this `PythonRobotics` project +to achieve the purposes of this project described in the :ref:`What is PythonRobotics?`. + +This section explains the Python itself and features for science computing Robotics. Python for general-purpose programming ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -107,3 +108,28 @@ Python code can run on various operating systems (Windows, macOS, Linux), provid Large Community and Support ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. + +Situations which Python is NOT suitable for Robotics +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +We explained the advantages of Python for robotics. +However, Python is not always the best choice for robotics development. + +These are situations where Python is NOT suitable for robotics: + +High-speed real-time control +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python is an interpreted language, which means it is slower than compiled languages like C++. +This can be a disadvantage when real-time control is required, +such as in high-speed motion control or safety-critical systems. + +So, for these applications, we recommend to understand the each algorithm you +needed using this project and implement it in other suitable languages like C++. + +Resource-constrained systems +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python is a high-level language that requires more memory and processing power +compared to low-level languages. +So, it is difficult to run Python on resource-constrained systems like +microcontrollers or embedded devices. +In such cases, C or C++ is more suitable for these applications. From 610f35ff58e6535efa619f9ed73a113c6ca2c7f7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Feb 2025 10:42:10 +0900 Subject: [PATCH 324/414] build(deps): bump mypy from 1.14.1 to 1.15.0 in /requirements (#1148) Bumps [mypy](https://github.com/python/mypy) from 1.14.1 to 1.15.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.14.1...v1.15.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9d4e7deb4d..178046ac0d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.14.1 # For unit test +mypy == 1.15.0 # For unit test ruff == 0.9.4 # For unit test From ba307673013376204ceb5a6def16da0e3a86a15d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Feb 2025 11:35:28 +0900 Subject: [PATCH 325/414] build(deps): bump ruff from 0.9.4 to 0.9.6 in /requirements (#1149) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.4 to 0.9.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.4...0.9.6) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 178046ac0d..f5f674d7d2 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.4 # For unit test +ruff == 0.9.6 # For unit test From b298609b2832c8029baa98b2d3906abce0263ec4 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 11 Feb 2025 21:15:34 +0900 Subject: [PATCH 326/414] update introduction doc (#1151) --- .../definition_of_robotics_main.rst | 81 ++++++++++++++++--- .../python_for_robotics_main.rst | 2 +- .../technology_for_robotics_main.rst | 9 +++ 3 files changed, 82 insertions(+), 10 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index fd151e3f20..f6fba646b4 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -1,14 +1,77 @@ Definition of Robotics ---------------------- -In recent years, autonomous navigation technologies have received huge -attention in many fields. -Such fields include, autonomous driving[22], drone flight navigation, -and other transportation systems. +What is Robotics? +^^^^^^^^^^^^^^^^^^ -Examples of Python in Robotics: +Robot is a machine that can perform tasks automatically or semi-autonomously. +Robotics is the study of robots. +The field of robotics has wide areas of technologies such as mechanical engineering, +electrical engineering, computer science, and artificial intelligence (AI), +to create machines that can perform tasks autonomously or semi-autonomously. + +The History of Robots +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This timeline highlights key milestones in the history of robotics: + +Ancient and Early Concepts (Before 1500s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The idea of **automated machines** has existed for thousands of years. Ancient civilizations imagined mechanical beings: + +- **Ancient Greece (4th Century BC)** – Greek engineer **Hero of Alexandria** designed early **automata** (self-operating machines) powered by water or air. +- **Chinese and Arabic Automata (9th–13th Century)** – Inventors like **Al-Jazari** created intricate mechanical devices, including water clocks and humanoid robots. + +The Birth of Modern Robotics (1500s–1800s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **Leonardo da Vinci’s Robot (1495)** – Designed a humanoid knight with mechanical movement. +- **Jacques de Vaucanson’s Automata (1738)** – Created robotic figures like a mechanical duck that could "eat" and "digest." +- **Industrial Revolution (18th–19th Century)** – Machines began replacing human labor in factories, setting the foundation for automation. + +The Rise of Industrial Robots (1900s–1950s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **The Term “Robot” (1921)** – Czech writer **Karel Čapek** introduced the word *“robot”* in his play *R.U.R. (Rossum’s Universal Robots)*. +- **Early Cybernetics (1940s–1950s)** – Scientists like **Norbert Wiener** developed theories of self-regulating machines, influencing modern robotics. + +The Birth of Modern Robotics (1950s–1980s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **First Industrial Robot (1961)** – *Unimate*, created by **George Devol and Joseph Engelberger**, was the first programmable robot used in a factory. +- **Rise of AI & Autonomous Robots (1970s–1980s)** – Researchers developed mobile robots like **Shakey** (Stanford, 1966) and AI-based control systems. + +Advanced Robotics and AI Integration (1990s–Present) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **Autonomous Vehicles & Drones** – Self-driving cars and UAVs (unmanned aerial vehicles) became more advanced. +- **Medical Robotics** – Robots like **da Vinci Surgical System** revolutionized healthcare. +- **Personal Robots** – Devices like **Roomba** (vacuum robot) and **Sophia** (AI humanoid) became popular. +- **Collaborative Robots (Cobots)** – Robots started working alongside humans in industries. + +Key Components of Robotics +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Robotics consists of several essential components: + +#. Sensors – Gather information from the environment (e.g., cameras, LiDAR, gyro, accelerometer, wheel encoders). +#. Actuators – Enable movement and interaction with the world (e.g., motors, hydraulic systems). +#. Computers – Process sensor data and make decisions (e.g., micro-controllers, CPUs, GPUs). +#. Power Supply – Provides energy to run the robot (e.g., batteries, solar power). +#. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, machine learning models, localization, mapping, path planning, control). + +This project, PythonRobotics, focuses on the software and algorithms part of robotics. + +Applications of Robots +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Robots come in various forms depending on their purpose: + +#. 🤖 Industrial Robots – Used in manufacturing (e.g., robotic arms in manufacturing factories). +#. 🏠 Service Robots – Assist in daily life (e.g., vacuum robots, delivery robots). +#. 🚗 Autonomous Vehicles – Self-driving cars and drones. +#. 👨‍⚕️ Medical Robots – Assist in surgeries and healthcare. +#. 🚀 Space & Exploration Robots – Used for planetary exploration (e.g., NASA’s Mars rovers). +#. 🐶 Humanoid & Social Robots – Designed to interact with humans (e.g., ASIMO, Sophia). -Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. -Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. -Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. -Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. \ No newline at end of file diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index b677d2c59b..c47c122853 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -4,7 +4,7 @@ Python for Robotics A programing language, Python is used for this `PythonRobotics` project to achieve the purposes of this project described in the :ref:`What is PythonRobotics?`. -This section explains the Python itself and features for science computing Robotics. +This section explains the Python itself and features for science computing and robotics. Python for general-purpose programming ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst index 4dd1d1842f..93dc9e3466 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -1,6 +1,15 @@ Technology for Robotics ------------------------- + +Autonomous Navigation +^^^^^^^^^^^^^^^^^^^^^^^^ + +In recent years, autonomous navigation technologies have received huge +attention in many fields. +Such fields include, autonomous driving[22], drone flight navigation, +and other transportation systems. + An autonomous navigation system is a system that can move to a goal over long periods of time without any external control by an operator. The system requires a wide range of technologies: From be608f067cbd96f34955b81d3e5be9e22a46f588 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 12 Feb 2025 21:51:29 +0900 Subject: [PATCH 327/414] update introduction doc (#1152) --- .../definition_of_robotics_main.rst | 38 ++++++++++++++----- .../technology_for_robotics_main.rst | 3 ++ 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index f6fba646b4..63525057fe 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -1,14 +1,24 @@ Definition of Robotics ---------------------- +This section explains the definition, history, key components, and applications of robotics. + What is Robotics? ^^^^^^^^^^^^^^^^^^ Robot is a machine that can perform tasks automatically or semi-autonomously. Robotics is the study of robots. -The field of robotics has wide areas of technologies such as mechanical engineering, -electrical engineering, computer science, and artificial intelligence (AI), -to create machines that can perform tasks autonomously or semi-autonomously. + +The word “robot” comes from the Czech word “robota,” which means “forced labor” or “drudgery.” +It was first used in the 1920 science fiction play `R.U.R.`_ (Rossum’s Universal Robots) +by the Czech writer `Karel Čapek`_. +In the play, robots were artificial workers created to serve humans, but they eventually rebelled. + +Over time, “robot” came to refer to machines or automated systems that can perform tasks, +often with some level of intelligence or autonomy. + +.. _`R.U.R.`: https://thereader.mitpress.mit.edu/origin-word-robot-rur/ +.. _`Karel Čapek`: https://en.wikipedia.org/wiki/Karel_%C4%8Capek The History of Robots ^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -18,22 +28,30 @@ This timeline highlights key milestones in the history of robotics: Ancient and Early Concepts (Before 1500s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The idea of **automated machines** has existed for thousands of years. Ancient civilizations imagined mechanical beings: +The idea of **automated machines** has existed for thousands of years. +Ancient civilizations imagined mechanical beings: + +- **Ancient Greece (4th Century BC)** – Greek engineer `Hero of Alexandria`_ designed early **automata** (self-operating machines) powered by water or air. +- **Chinese and Arabic Automata (9th–13th Century)** – Inventors like `Ismail Al-Jazari`_ created intricate mechanical devices, including water clocks and automated moving peacocks driven by hydropower. -- **Ancient Greece (4th Century BC)** – Greek engineer **Hero of Alexandria** designed early **automata** (self-operating machines) powered by water or air. -- **Chinese and Arabic Automata (9th–13th Century)** – Inventors like **Al-Jazari** created intricate mechanical devices, including water clocks and humanoid robots. +.. _`Hero of Alexandria`: https://en.wikipedia.org/wiki/Hero_of_Alexandria +.. _`Ismail Al-Jazari`: https://en.wikipedia.org/wiki/Ismail_al-Jazari The Birth of Modern Robotics (1500s–1800s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **Leonardo da Vinci’s Robot (1495)** – Designed a humanoid knight with mechanical movement. -- **Jacques de Vaucanson’s Automata (1738)** – Created robotic figures like a mechanical duck that could "eat" and "digest." -- **Industrial Revolution (18th–19th Century)** – Machines began replacing human labor in factories, setting the foundation for automation. +- `Leonardo da Vinci’s Robot`_ (1495) – Designed a humanoid knight with mechanical movement. +- `Jacques de Vaucanson’s Digesting Duck`_ (1738) – Created robotic figures like a mechanical duck that could "eat" and "digest." +- `Industrial Revolution`_ (18th–19th Century) – Machines began replacing human labor in factories, setting the foundation for automation. + +.. _`Leonardo da Vinci’s Robot`: https://en.wikipedia.org/wiki/Leonardo%27s_robot +.. _`Jacques de Vaucanson’s Digesting Duck`: https://en.wikipedia.org/wiki/Jacques_de_Vaucanson +.. _`Industrial Revolution`: https://en.wikipedia.org/wiki/Industrial_Revolution The Rise of Industrial Robots (1900s–1950s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **The Term “Robot” (1921)** – Czech writer **Karel Čapek** introduced the word *“robot”* in his play *R.U.R. (Rossum’s Universal Robots)*. +- **The Term “Robot” (1921)** – Czech writer `Karel Čapek`_ introduced the word *“robot”* in his play `R.U.R.`_ (Rossum’s Universal Robots). - **Early Cybernetics (1940s–1950s)** – Scientists like **Norbert Wiener** developed theories of self-regulating machines, influencing modern robotics. The Birth of Modern Robotics (1950s–1980s) diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst index 93dc9e3466..e460059e20 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -1,6 +1,9 @@ Technology for Robotics ------------------------- +The field of robotics needs wide areas of technologies such as mechanical engineering, +electrical engineering, computer science, and artificial intelligence (AI). + Autonomous Navigation ^^^^^^^^^^^^^^^^^^^^^^^^ From 1ecc154fbaf9bc2342671fe93a305e8f0e3f510f Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 13 Feb 2025 17:19:03 +0900 Subject: [PATCH 328/414] update contribution link in README.md to fix invalid link (#1154) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cb1816c2b5..818d7b0d4e 100644 --- a/README.md +++ b/README.md @@ -617,7 +617,7 @@ This is a list of user's comment and references:[users\_comments](https://github Any contribution is welcome!! -Please check this document:[How To Contribute — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/how_to_contribute.html) +Please check this document:[How To Contribute — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/modules/0_getting_started/3_how_to_contribute.html) # Citing From 156483000524488d64687a853ac030e8d57c18a6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 13 Feb 2025 17:56:17 +0900 Subject: [PATCH 329/414] update robotics definition document to enhance references and clarity (#1155) --- .../definition_of_robotics_main.rst | 29 ++++++++++++++----- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 63525057fe..265814e068 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -52,21 +52,36 @@ The Rise of Industrial Robots (1900s–1950s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - **The Term “Robot” (1921)** – Czech writer `Karel Čapek`_ introduced the word *“robot”* in his play `R.U.R.`_ (Rossum’s Universal Robots). -- **Early Cybernetics (1940s–1950s)** – Scientists like **Norbert Wiener** developed theories of self-regulating machines, influencing modern robotics. +- **Early Cybernetics (1940s–1950s)** – Scientists like `Norbert Wiener`_ developed theories of self-regulating machines, influencing modern robotics (Cybernetics). + +.. _`Norbert Wiener`: https://en.wikipedia.org/wiki/Norbert_Wiener The Birth of Modern Robotics (1950s–1980s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **First Industrial Robot (1961)** – *Unimate*, created by **George Devol and Joseph Engelberger**, was the first programmable robot used in a factory. -- **Rise of AI & Autonomous Robots (1970s–1980s)** – Researchers developed mobile robots like **Shakey** (Stanford, 1966) and AI-based control systems. +- **First Industrial Robot (1961)** – `Unimate`_, created by `George Devol`_ and `Joseph Engelberger`_, was the first programmable robot used in a factory. +- **Rise of AI & Autonomous Robots (1970s–1980s)** – Researchers developed mobile robots like `Shakey`_ (Stanford, 1966) and AI-based control systems. + +.. _`Unimate`: https://en.wikipedia.org/wiki/Unimate +.. _`George Devol`: https://en.wikipedia.org/wiki/George_Devol +.. _`Joseph Engelberger`: https://en.wikipedia.org/wiki/Joseph_Engelberger +.. _`Shakey`: https://en.wikipedia.org/wiki/Shakey_the_robot Advanced Robotics and AI Integration (1990s–Present) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **Autonomous Vehicles & Drones** – Self-driving cars and UAVs (unmanned aerial vehicles) became more advanced. -- **Medical Robotics** – Robots like **da Vinci Surgical System** revolutionized healthcare. -- **Personal Robots** – Devices like **Roomba** (vacuum robot) and **Sophia** (AI humanoid) became popular. -- **Collaborative Robots (Cobots)** – Robots started working alongside humans in industries. +- **Autonomous Vehicles** – Self-driving cars for robo taxi like `Waymo`_ and autonomous haulage system in mining like `AHS`_ became more advanced and bisiness-ready. +- **Medical Robotics** – Robots like `da Vinci Surgical System`_ revolutionized healthcare. +- **Personal Robots** – Devices like `Roomba`_ (vacuum robot) and `Sophia`_ (AI humanoid) became popular. +- **Service Robots** - Assistive robots like serving robots in restaurants and hotels like `Bellabot`_. +- **Collaborative Robots (Drones)** – Collaborative robots like UAV (Unmanned Aerial Vehicle) in drone shows and delivery services. + +.. _`Waymo`: https://waymo.com/ +.. _`AHS`: https://www.futurebridge.com/industry/perspectives-industrial-manufacturing/autonomous-haulage-systems-the-future-of-mining-operations/ +.. _`da Vinci Surgical System`: https://en.wikipedia.org/wiki/Da_Vinci_Surgical_System +.. _`Roomba`: https://en.wikipedia.org/wiki/Roomba +.. _`Sophia`: https://en.wikipedia.org/wiki/Sophia_(robot) +.. _`Bellabot`: https://www.pudurobotics.com/en Key Components of Robotics ^^^^^^^^^^^^^^^^^^^^^^^^^^^ From 77ad3344b5e9df26ca370725d3921dd354c755b1 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 14 Feb 2025 21:20:35 +0900 Subject: [PATCH 330/414] update robotics definition document to improve clarity and add references (#1157) --- .../definition_of_robotics_main.rst | 28 +++++++------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 265814e068..f54d4d41fa 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -70,12 +70,17 @@ The Birth of Modern Robotics (1950s–1980s) Advanced Robotics and AI Integration (1990s–Present) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +- **Industrial Robots** – Advanced robots like `Baxter`_ and `Amazon Robotics`_ revolutionized manufacturing and logistics. - **Autonomous Vehicles** – Self-driving cars for robo taxi like `Waymo`_ and autonomous haulage system in mining like `AHS`_ became more advanced and bisiness-ready. +- **Exploration Robots** – Used for planetary exploration (e.g., NASA’s `Mars rovers`_). - **Medical Robotics** – Robots like `da Vinci Surgical System`_ revolutionized healthcare. - **Personal Robots** – Devices like `Roomba`_ (vacuum robot) and `Sophia`_ (AI humanoid) became popular. - **Service Robots** - Assistive robots like serving robots in restaurants and hotels like `Bellabot`_. - **Collaborative Robots (Drones)** – Collaborative robots like UAV (Unmanned Aerial Vehicle) in drone shows and delivery services. +.. _`Baxter`: https://en.wikipedia.org/wiki/Baxter_(robot) +.. _`Amazon Robotics`: https://en.wikipedia.org/wiki/Amazon_Robotics +.. _`Mars rovers`: https://en.wikipedia.org/wiki/Mars_rover .. _`Waymo`: https://waymo.com/ .. _`AHS`: https://www.futurebridge.com/industry/perspectives-industrial-manufacturing/autonomous-haulage-systems-the-future-of-mining-operations/ .. _`da Vinci Surgical System`: https://en.wikipedia.org/wiki/Da_Vinci_Surgical_System @@ -88,23 +93,10 @@ Key Components of Robotics Robotics consists of several essential components: -#. Sensors – Gather information from the environment (e.g., cameras, LiDAR, gyro, accelerometer, wheel encoders). -#. Actuators – Enable movement and interaction with the world (e.g., motors, hydraulic systems). -#. Computers – Process sensor data and make decisions (e.g., micro-controllers, CPUs, GPUs). -#. Power Supply – Provides energy to run the robot (e.g., batteries, solar power). -#. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, machine learning models, localization, mapping, path planning, control). +#. Sensors – Gather information from the environment (e.g., Cameras, LiDAR, GNSS, Gyro, Accelerometer, Wheel encoders). +#. Actuators – Enable movement and interaction with the world (e.g., Motors, Hydraulic systems). +#. Computers – Process sensor data and make decisions (e.g., Micro-controllers, CPUs, GPUs). +#. Power Supply – Provides energy to run the robot (e.g., Batteries, Solar power). +#. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). This project, PythonRobotics, focuses on the software and algorithms part of robotics. - -Applications of Robots -^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Robots come in various forms depending on their purpose: - -#. 🤖 Industrial Robots – Used in manufacturing (e.g., robotic arms in manufacturing factories). -#. 🏠 Service Robots – Assist in daily life (e.g., vacuum robots, delivery robots). -#. 🚗 Autonomous Vehicles – Self-driving cars and drones. -#. 👨‍⚕️ Medical Robots – Assist in surgeries and healthcare. -#. 🚀 Space & Exploration Robots – Used for planetary exploration (e.g., NASA’s Mars rovers). -#. 🐶 Humanoid & Social Robots – Designed to interact with humans (e.g., ASIMO, Sophia). - From 35c08824d00bd9fb452d1ee951018b177e65fd00 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 15 Feb 2025 16:08:23 +0900 Subject: [PATCH 331/414] add external sensors documentation to appendix (#1159) --- docs/modules/12_appendix/appendix_main.rst | 1 + .../12_appendix/external_sensors_main.rst | 56 +++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 docs/modules/12_appendix/external_sensors_main.rst diff --git a/docs/modules/12_appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst index cb1ac04066..89a7fa9303 100644 --- a/docs/modules/12_appendix/appendix_main.rst +++ b/docs/modules/12_appendix/appendix_main.rst @@ -10,4 +10,5 @@ Appendix steering_motion_model Kalmanfilter_basics Kalmanfilter_basics_2 + external_sensors diff --git a/docs/modules/12_appendix/external_sensors_main.rst b/docs/modules/12_appendix/external_sensors_main.rst new file mode 100644 index 0000000000..a1dba3b214 --- /dev/null +++ b/docs/modules/12_appendix/external_sensors_main.rst @@ -0,0 +1,56 @@ +External Sensors for Robots +============================ + +Introduction +------------ + +In recent years, the application of robotic technology has advanced, +particularly in areas such as autonomous vehicles and disaster response robots. +A crucial element in these technologies is external recognition—the robot's ability to understand its surrounding environment, identify safe zones, and detect moving objects using onboard sensors. Achieving effective external recognition involves various techniques, but equally important is the selection of appropriate sensors. Robots, like the sensors they employ, come in many forms, but external recognition sensors can be broadly categorized into three types. Developing an advanced external recognition system requires a thorough understanding of each sensor's principles and characteristics to determine their optimal application. This article summarizes the principles and features of these sensors for personal study purposes. + +Laser Sensors +------------- + +Laser sensors measure distances by utilizing light, commonly referred to as Light Detection and Ranging (LIDAR). They operate by emitting light towards an object and calculating the distance based on the time it takes for the reflected light to return, using the speed of light as a constant. + +Radar Sensors +------------- + +TBD + + +Monocular Cameras +----------------- + +Monocular cameras utilize a single camera to recognize the external environment. Compared to other sensors, they can detect color and brightness information, making them primarily useful for object recognition. However, they face challenges in independently measuring distances to surrounding objects and may struggle in low-light or dark conditions. + +Requirements for Cameras and Image Processing in Robotics +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +While camera sensors are widely used in applications like surveillance, deploying them in robotics necessitates meeting specific requirements: + +1. High dynamic range to adapt to various lighting conditions +2. Wide measurement range +3. Capability for three-dimensional measurement through techniques like motion stereo +4. Real-time processing with high frame rates +5. Cost-effectiveness + +Stereo Cameras +-------------- + +Stereo cameras employ multiple cameras to measure distances to surrounding objects. By knowing the positions and orientations of each camera and analyzing the disparity in the images (parallax), the distance to a specific point (the object represented by a particular pixel) can be calculated. + +Characteristics of Stereo Cameras +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Advantages of stereo cameras include the ability to obtain high-precision and high-density distance information at close range, depending on factors like camera resolution and the distance between cameras (baseline). This makes them suitable for indoor robots that require precise shape recognition of nearby objects. Additionally, stereo cameras are relatively cost-effective compared to other sensors, leading to their use in consumer products like Subaru's EyeSight system. However, stereo cameras are less effective for long-distance measurements due to a decrease in accuracy proportional to the square of the distance. They are also susceptible to environmental factors such as lighting conditions. + +Ultrasonic Sensors +------------------ + +Ultrasonic sensors are commonly used in indoor robots and some automotive autonomous driving systems. Their features include affordability compared to laser or radar sensors, the ability to detect very close objects, and the capability to sense materials like glass, which may be challenging for lasers or cameras. However, they have limitations such as shorter maximum measurement distances and lower resolution and accuracy. + +References +---------- + +TBD From e82a12319b5336beaff01ab9fd2ce7818bb08dfb Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 16 Feb 2025 21:41:22 +0900 Subject: [PATCH 332/414] add internal sensors documentation to appendix and create new internal sensors overview (#1161) --- docs/modules/12_appendix/appendix_main.rst | 1 + .../12_appendix/external_sensors_main.rst | 4 +++ .../12_appendix/internal_sensors_main.rst | 32 +++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 docs/modules/12_appendix/internal_sensors_main.rst diff --git a/docs/modules/12_appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst index 89a7fa9303..a55389e1e6 100644 --- a/docs/modules/12_appendix/appendix_main.rst +++ b/docs/modules/12_appendix/appendix_main.rst @@ -10,5 +10,6 @@ Appendix steering_motion_model Kalmanfilter_basics Kalmanfilter_basics_2 + internal_sensors external_sensors diff --git a/docs/modules/12_appendix/external_sensors_main.rst b/docs/modules/12_appendix/external_sensors_main.rst index a1dba3b214..d36b852d42 100644 --- a/docs/modules/12_appendix/external_sensors_main.rst +++ b/docs/modules/12_appendix/external_sensors_main.rst @@ -1,6 +1,10 @@ External Sensors for Robots ============================ +This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. +However, having basic knowledge of hardware in robotics is also important for understanding algorithms. +Therefore, we will provide an overview. + Introduction ------------ diff --git a/docs/modules/12_appendix/internal_sensors_main.rst b/docs/modules/12_appendix/internal_sensors_main.rst new file mode 100644 index 0000000000..13b8de4203 --- /dev/null +++ b/docs/modules/12_appendix/internal_sensors_main.rst @@ -0,0 +1,32 @@ +Internal Sensors for Robots +============================ + +This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. +However, having basic knowledge of hardware in robotics is also important for understanding algorithms. +Therefore, we will provide an overview. + +Introduction +------------ + +Global Navigation Satellite System (GNSS) +------------------------------------------- + +Gyroscope +---------- + +Accelerometer +-------------- + +Magnetometer +-------------- + +Inertial Measurement Unit (IMU) +-------------------------------- + +Pressure Sensor +----------------- + +Temperature Sensor +-------------------- + + From c92aaf36d8665a3b9ecd1a661f151cfd6ede4c66 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Mon, 17 Feb 2025 18:47:04 +0800 Subject: [PATCH 333/414] feat: add ElasticBands (#1156) * feat: add ElasticBands * feat: Elastic Bands update * feat: ElasticBands update * feat: ElasticBands add test * feat: ElasticBands reduce occupation * fix: ElasticBands test * feat: ElasticBands remove tangential component * feat: Elastic Bands update * feat: Elastic Bands doc * feat: Elastic Bands update * feat: ElasticBands update --- Mapping/DistanceMap/distance_map.py | 51 +++ PathPlanning/ElasticBands/elastic_bands.py | 300 ++++++++++++++++++ PathPlanning/ElasticBands/obstacles.npy | Bin 0 -> 384 bytes PathPlanning/ElasticBands/path.npy | Bin 0 -> 224 bytes .../elastic_bands/elastic_bands_main.rst | 73 +++++ .../5_path_planning/path_planning_main.rst | 1 + tests/test_elastic_bands.py | 23 ++ 7 files changed, 448 insertions(+) create mode 100644 PathPlanning/ElasticBands/elastic_bands.py create mode 100644 PathPlanning/ElasticBands/obstacles.npy create mode 100644 PathPlanning/ElasticBands/path.npy create mode 100644 docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst create mode 100644 tests/test_elastic_bands.py diff --git a/Mapping/DistanceMap/distance_map.py b/Mapping/DistanceMap/distance_map.py index 54c98c6a75..0dcc7380c5 100644 --- a/Mapping/DistanceMap/distance_map.py +++ b/Mapping/DistanceMap/distance_map.py @@ -11,11 +11,62 @@ import numpy as np import matplotlib.pyplot as plt +import scipy INF = 1e20 ENABLE_PLOT = True +def compute_sdf_scipy(obstacles): + """ + Compute the signed distance field (SDF) from a boolean field using scipy. + This function has the same functionality as compute_sdf. + However, by using scipy.ndimage.distance_transform_edt, it can compute much faster. + + Example: 500×500 map + • compute_sdf: 3 sec + • compute_sdf_scipy: 0.05 sec + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array representing the signed distance field, where positive values indicate distance + to the nearest obstacle, and negative values indicate distance to the nearest free space. + """ + # distance_transform_edt use '0' as obstacles, so we need to convert the obstacles to '0' + a = scipy.ndimage.distance_transform_edt(obstacles == 0) + b = scipy.ndimage.distance_transform_edt(obstacles == 1) + return a - b + + +def compute_udf_scipy(obstacles): + """ + Compute the unsigned distance field (UDF) from a boolean field using scipy. + This function has the same functionality as compute_udf. + However, by using scipy.ndimage.distance_transform_edt, it can compute much faster. + + Example: 500×500 map + • compute_udf: 1.5 sec + • compute_udf_scipy: 0.02 sec + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array of distances from the nearest obstacle, with the same dimensions as `bool_field`. + """ + return scipy.ndimage.distance_transform_edt(obstacles == 0) + + def compute_sdf(obstacles): """ Compute the signed distance field (SDF) from a boolean field. diff --git a/PathPlanning/ElasticBands/elastic_bands.py b/PathPlanning/ElasticBands/elastic_bands.py new file mode 100644 index 0000000000..785f822d14 --- /dev/null +++ b/PathPlanning/ElasticBands/elastic_bands.py @@ -0,0 +1,300 @@ +""" +Elastic Bands + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Elastic Bands: Connecting Path Planning and Control] +(http://www8.cs.umu.se/research/ifor/dl/Control/elastic%20bands.pdf) +""" + +import numpy as np +import sys +import pathlib +import matplotlib.pyplot as plt +from matplotlib.patches import Circle + +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + +from Mapping.DistanceMap.distance_map import compute_sdf_scipy + +# Elastic Bands Params +MAX_BUBBLE_RADIUS = 100 +MIN_BUBBLE_RADIUS = 10 +RHO0 = 20.0 # Maximum distance for applying repulsive force +KC = 0.05 # Contraction force gain +KR = -0.1 # Repulsive force gain +LAMBDA = 0.7 # Overlap constraint factor +STEP_SIZE = 3.0 # Step size for calculating gradient + +# Visualization Params +ENABLE_PLOT = True +# ENABLE_INTERACTIVE is True allows user to add obstacles by left clicking +# and add path points by right clicking and start planning by middle clicking +ENABLE_INTERACTIVE = False +# ENABLE_SAVE_DATA is True allows saving the path and obstacles which added +# by user in interactive mode to file +ENABLE_SAVE_DATA = False +MAX_ITER = 50 + + +class Bubble: + def __init__(self, position, radius): + self.pos = np.array(position) # Bubble center coordinates [x, y] + self.radius = radius # Safety distance radius ρ(b) + if self.radius > MAX_BUBBLE_RADIUS: + self.radius = MAX_BUBBLE_RADIUS + if self.radius < MIN_BUBBLE_RADIUS: + self.radius = MIN_BUBBLE_RADIUS + + +class ElasticBands: + def __init__( + self, + initial_path, + obstacles, + rho0=RHO0, + kc=KC, + kr=KR, + lambda_=LAMBDA, + step_size=STEP_SIZE, + ): + self.distance_map = compute_sdf_scipy(obstacles) + self.bubbles = [ + Bubble(p, self.compute_rho(p)) for p in initial_path + ] # Initialize bubble chain + self.kc = kc # Contraction force gain + self.kr = kr # Repulsive force gain + self.rho0 = rho0 # Maximum distance for applying repulsive force + self.lambda_ = lambda_ # Overlap constraint factor + self.step_size = step_size # Step size for calculating gradient + self._maintain_overlap() + + def compute_rho(self, position): + """Compute the distance field value at the position""" + return self.distance_map[int(position[0]), int(position[1])] + + def contraction_force(self, i): + """Calculate internal contraction force for the i-th bubble""" + if i == 0 or i == len(self.bubbles) - 1: + return np.zeros(2) + + prev = self.bubbles[i - 1].pos + next_ = self.bubbles[i + 1].pos + current = self.bubbles[i].pos + + # f_c = kc * ( (prev-current)/|prev-current| + (next-current)/|next-current| ) + dir_prev = (prev - current) / (np.linalg.norm(prev - current) + 1e-6) + dir_next = (next_ - current) / (np.linalg.norm(next_ - current) + 1e-6) + return self.kc * (dir_prev + dir_next) + + def repulsive_force(self, i): + """Calculate external repulsive force for the i-th bubble""" + h = self.step_size # Step size + b = self.bubbles[i].pos + rho = self.bubbles[i].radius + + if rho >= self.rho0: + return np.zeros(2) + + # Finite difference approximation of the gradient ∂ρ/∂b + dx = np.array([h, 0]) + dy = np.array([0, h]) + grad_x = (self.compute_rho(b - dx) - self.compute_rho(b + dx)) / (2 * h) + grad_y = (self.compute_rho(b - dy) - self.compute_rho(b + dy)) / (2 * h) + grad = np.array([grad_x, grad_y]) + + return self.kr * (self.rho0 - rho) * grad + + def update_bubbles(self): + """Update bubble positions""" + new_bubbles = [] + for i in range(len(self.bubbles)): + if i == 0 or i == len(self.bubbles) - 1: + new_bubbles.append(self.bubbles[i]) # Fixed start and end points + continue + + f_total = self.contraction_force(i) + self.repulsive_force(i) + v = self.bubbles[i - 1].pos - self.bubbles[i + 1].pos + + # Remove tangential component + f_star = f_total - f_total * v * v / (np.linalg.norm(v) ** 2 + 1e-6) + + alpha = self.bubbles[i].radius # Adaptive step size + new_pos = self.bubbles[i].pos + alpha * f_star + new_pos = np.clip(new_pos, 0, 499) + new_radius = self.compute_rho(new_pos) + + # Update bubble and maintain overlap constraint + new_bubble = Bubble(new_pos, new_radius) + new_bubbles.append(new_bubble) + + self.bubbles = new_bubbles + self._maintain_overlap() + + def _maintain_overlap(self): + """Maintain bubble chain continuity (simplified insertion/deletion mechanism)""" + # Insert bubbles + i = 0 + while i < len(self.bubbles) - 1: + bi, bj = self.bubbles[i], self.bubbles[i + 1] + dist = np.linalg.norm(bi.pos - bj.pos) + if dist > self.lambda_ * (bi.radius + bj.radius): + new_pos = (bi.pos + bj.pos) / 2 + rho = self.compute_rho( + new_pos + ) # Calculate new radius using environment model + self.bubbles.insert(i + 1, Bubble(new_pos, rho)) + i += 2 # Skip the processed region + else: + i += 1 + + # Delete redundant bubbles + i = 1 + while i < len(self.bubbles) - 1: + prev = self.bubbles[i - 1] + next_ = self.bubbles[i + 1] + dist = np.linalg.norm(prev.pos - next_.pos) + if dist <= self.lambda_ * (prev.radius + next_.radius): + del self.bubbles[i] # Delete if redundant + else: + i += 1 + + +class ElasticBandsVisualizer: + def __init__(self): + self.obstacles = np.zeros((500, 500)) + self.obstacles_points = [] + self.path_points = [] + self.elastic_band = None + self.running = True + + if ENABLE_PLOT: + self.fig, self.ax = plt.subplots(figsize=(8, 8)) + self.fig.canvas.mpl_connect("close_event", self.on_close) + self.ax.set_xlim(0, 500) + self.ax.set_ylim(0, 500) + + if ENABLE_INTERACTIVE: + self.path_points = [] # Add a list to store path points + # Connect mouse events + self.fig.canvas.mpl_connect("button_press_event", self.on_click) + else: + self.path_points = np.load(pathlib.Path(__file__).parent / "path.npy") + self.obstacles_points = np.load( + pathlib.Path(__file__).parent / "obstacles.npy" + ) + for x, y in self.obstacles_points: + self.add_obstacle(x, y) + self.plan_path() + + self.plot_background() + + def on_close(self, event): + """Handle window close event""" + self.running = False + plt.close("all") # Close all figure windows + + def plot_background(self): + """Plot the background grid""" + if not ENABLE_PLOT or not self.running: + return + + self.ax.cla() + self.ax.set_xlim(0, 500) + self.ax.set_ylim(0, 500) + self.ax.grid(True) + + if ENABLE_INTERACTIVE: + self.ax.set_title( + "Elastic Bands Path Planning\n" + "Left click: Add obstacles\n" + "Right click: Add path points\n" + "Middle click: Start planning", + pad=20, + ) + else: + self.ax.set_title("Elastic Bands Path Planning", pad=20) + + if self.path_points: + self.ax.plot( + [p[0] for p in self.path_points], + [p[1] for p in self.path_points], + "yo", + markersize=8, + ) + + self.ax.imshow(self.obstacles.T, origin="lower", cmap="binary", alpha=0.8) + self.ax.plot([], [], color="black", label="obstacles") + if self.elastic_band is not None: + path = [b.pos.tolist() for b in self.elastic_band.bubbles] + path = np.array(path) + self.ax.plot(path[:, 0], path[:, 1], "b-", linewidth=2, label="path") + + for bubble in self.elastic_band.bubbles: + circle = Circle( + bubble.pos, bubble.radius, fill=False, color="g", alpha=0.3 + ) + self.ax.add_patch(circle) + self.ax.plot(bubble.pos[0], bubble.pos[1], "bo", markersize=10) + self.ax.plot([], [], color="green", label="bubbles") + + self.ax.legend(loc="upper right") + plt.draw() + plt.pause(0.01) + + def add_obstacle(self, x, y): + """Add an obstacle at the given coordinates""" + size = 30 # Side length of the square + half_size = size // 2 + x_start = max(0, x - half_size) + x_end = min(self.obstacles.shape[0], x + half_size) + y_start = max(0, y - half_size) + y_end = min(self.obstacles.shape[1], y + half_size) + self.obstacles[x_start:x_end, y_start:y_end] = 1 + + def on_click(self, event): + """Handle mouse click events""" + if event.inaxes != self.ax: + return + + x, y = int(event.xdata), int(event.ydata) + + if event.button == 1: # Left click to add obstacles + self.add_obstacle(x, y) + self.obstacles_points.append([x, y]) + + elif event.button == 3: # Right click to add path points + self.path_points.append([x, y]) + + elif event.button == 2: # Middle click to end path input and start planning + if len(self.path_points) >= 2: + if ENABLE_SAVE_DATA: + np.save( + pathlib.Path(__file__).parent / "path.npy", self.path_points + ) + np.save( + pathlib.Path(__file__).parent / "obstacles.npy", + self.obstacles_points, + ) + self.plan_path() + + self.plot_background() + + def plan_path(self): + """Plan the path""" + + initial_path = self.path_points + # Create an elastic band object and optimize + self.elastic_band = ElasticBands(initial_path, self.obstacles) + for _ in range(MAX_ITER): + self.elastic_band.update_bubbles() + self.path_points = [b.pos for b in self.elastic_band.bubbles] + self.plot_background() + + +if __name__ == "__main__": + _ = ElasticBandsVisualizer() + if ENABLE_PLOT: + plt.show(block=True) diff --git a/PathPlanning/ElasticBands/obstacles.npy b/PathPlanning/ElasticBands/obstacles.npy new file mode 100644 index 0000000000000000000000000000000000000000..af4376afcf0e987bbb62c4a80c7afac3d221961d GIT binary patch literal 384 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC!@qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$-W;zN+nmP)#3giN=d=|8_M@a;}<~r z%~1IiD1RoD9|z^LL+NCwxEhq72<3}I`IS(%lCm`7X literal 0 HcmV?d00001 diff --git a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst new file mode 100644 index 0000000000..139996f291 --- /dev/null +++ b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst @@ -0,0 +1,73 @@ +Elastic Bands +------------- + +This is a path planning with Elastic Bands. + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ElasticBands/animation.gif + + +Core Concept +~~~~~~~~~~~~ +- **Elastic Band**: A dynamically deformable collision-free path initialized by a global planner. +- **Objective**: + + * Shorten and smooth the path. + * Maximize obstacle clearance. + * Maintain global path connectivity. + +Bubble Representation +~~~~~~~~~~~~~~~~~~~ +- **Definition**: A local free-space region around configuration :math:`b`: + + .. math:: + B(b) = \{ q: \|q - b\| < \rho(b) \}, + + where :math:`\rho(b)` is the radius of the bubble. + + +Force-Based Deformation +~~~~~~~~~~~~~~~~~~~~~~~ +The elastic band deforms under artificial forces: + +Internal Contraction Force +++++++++++++++++++++++++++ +- **Purpose**: Reduces path slack and length. +- **Formula**: For node :math:`b_i`: + + .. math:: + f_c(b_i) = k_c \left( \frac{b_{i-1} - b_i}{\|b_{i-1} - b_i\|} + \frac{b_{i+1} - b_i}{\|b_{i+1} - b_i\|} \right) + + where :math:`k_c` is the contraction gain. + +External Repulsion Force ++++++++++++++++++++++++++ +- **Purpose**: Pushes the path away from obstacles. +- **Formula**: For node :math:`b_i`: + + .. math:: + f_r(b_i) = \begin{cases} + k_r (\rho_0 - \rho(b_i)) \nabla \rho(b_i) & \text{if } \rho(b_i) < \rho_0, \\ + 0 & \text{otherwise}. + \end{cases} + + where :math:`k_r` is the repulsion gain, :math:`\rho_0` is the maximum distance for applying repulsion force, and :math:`\nabla \rho(b_i)` is approximated via finite differences: + + .. math:: + \frac{\partial \rho}{\partial x} \approx \frac{\rho(b_i + h) - \rho(b_i - h)}{2h}. + +Dynamic Path Maintenance +~~~~~~~~~~~~~~~~~~~~~~~ +1. **Node Update**: + + .. math:: + b_i^{\text{new}} = b_i^{\text{old}} + \alpha (f_c + f_r), + + where :math:`\alpha` is a step-size parameter, which often proportional to :math:`\rho(b_i^{\text{old}})` + +2. **Overlap Enforcement**: +- Insert new nodes if adjacent nodes are too far apart +- Remove redundant nodes if adjacent nodes are too close + +Ref: + +- `Elastic Bands: Connecting Path Planning and Control `__ diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index 4960330b3e..65fbfdbc3d 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -31,3 +31,4 @@ Path planning is the ability of a robot to search feasible and efficient path to hybridastar/hybridastar frenet_frame_path/frenet_frame_path coverage_path/coverage_path + elastic_bands/elastic_bands \ No newline at end of file diff --git a/tests/test_elastic_bands.py b/tests/test_elastic_bands.py new file mode 100644 index 0000000000..ad4e13af1a --- /dev/null +++ b/tests/test_elastic_bands.py @@ -0,0 +1,23 @@ +import conftest +import numpy as np +from PathPlanning.ElasticBands.elastic_bands import ElasticBands + + +def test_1(): + path = np.load("PathPlanning/ElasticBands/path.npy") + obstacles_points = np.load("PathPlanning/ElasticBands/obstacles.npy") + obstacles = np.zeros((500, 500)) + for x, y in obstacles_points: + size = 30 # Side length of the square + half_size = size // 2 + x_start = max(0, x - half_size) + x_end = min(obstacles.shape[0], x + half_size) + y_start = max(0, y - half_size) + y_end = min(obstacles.shape[1], y + half_size) + obstacles[x_start:x_end, y_start:y_end] = 1 + elastic_bands = ElasticBands(path, obstacles) + elastic_bands.update_bubbles() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From cbe61f8ca62785a072652741d8b33832caee1942 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Feb 2025 10:45:49 +0900 Subject: [PATCH 334/414] build(deps): bump scipy from 1.15.1 to 1.15.2 in /requirements (#1163) Bumps [scipy](https://github.com/scipy/scipy) from 1.15.1 to 1.15.2. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.15.1...v1.15.2) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f5f674d7d2..ea4550edb8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.2.2 -scipy == 1.15.1 +scipy == 1.15.2 matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test From 395fca59cc1f9c44e9ea7f7c08ce41958e399481 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 18 Feb 2025 20:06:34 +0900 Subject: [PATCH 335/414] fix: update robotics documentation for clarity and correct terminology (#1165) --- docs/modules/12_appendix/external_sensors_main.rst | 2 ++ docs/modules/12_appendix/internal_sensors_main.rst | 2 ++ .../1_definition_of_robotics/definition_of_robotics_main.rst | 5 +++++ .../technologies_for_robotics_main.rst} | 4 +++- docs/modules/1_introduction/introduction_main.rst | 2 +- 5 files changed, 13 insertions(+), 2 deletions(-) rename docs/modules/1_introduction/{3_technology_for_robotics/technology_for_robotics_main.rst => 3_technologies_for_robotics/technologies_for_robotics_main.rst} (88%) diff --git a/docs/modules/12_appendix/external_sensors_main.rst b/docs/modules/12_appendix/external_sensors_main.rst index d36b852d42..3597418150 100644 --- a/docs/modules/12_appendix/external_sensors_main.rst +++ b/docs/modules/12_appendix/external_sensors_main.rst @@ -1,3 +1,5 @@ +.. _`External Sensors for Robots`: + External Sensors for Robots ============================ diff --git a/docs/modules/12_appendix/internal_sensors_main.rst b/docs/modules/12_appendix/internal_sensors_main.rst index 13b8de4203..18f209098e 100644 --- a/docs/modules/12_appendix/internal_sensors_main.rst +++ b/docs/modules/12_appendix/internal_sensors_main.rst @@ -1,3 +1,5 @@ +.. _`Internal Sensors for Robots`: + Internal Sensors for Robots ============================ diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index f54d4d41fa..1e7a833b19 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -17,6 +17,10 @@ In the play, robots were artificial workers created to serve humans, but they ev Over time, “robot” came to refer to machines or automated systems that can perform tasks, often with some level of intelligence or autonomy. +Currently, 2 millions robots are working in the world, and the number is increasing every year. +In South Korea, where the adoption of robots is particularly rapid, +50 robots are operating per 1,000 people. + .. _`R.U.R.`: https://thereader.mitpress.mit.edu/origin-word-robot-rur/ .. _`Karel Čapek`: https://en.wikipedia.org/wiki/Karel_%C4%8Capek @@ -100,3 +104,4 @@ Robotics consists of several essential components: #. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). This project, PythonRobotics, focuses on the software and algorithms part of robotics. +If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robotics`_ or :ref:`External Sensors for Robotics`_. diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst similarity index 88% rename from docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst rename to docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst index e460059e20..64c6945c32 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst @@ -1,8 +1,10 @@ -Technology for Robotics +Technologies for Robotics ------------------------- The field of robotics needs wide areas of technologies such as mechanical engineering, electrical engineering, computer science, and artificial intelligence (AI). +This project, `PythonRobotics`, only focus on computer science and artificial intelligence. + Autonomous Navigation diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst index a7ce55f9bf..1871dfc3b1 100644 --- a/docs/modules/1_introduction/introduction_main.rst +++ b/docs/modules/1_introduction/introduction_main.rst @@ -14,5 +14,5 @@ covered in PythonRobotics. 1_definition_of_robotics/definition_of_robotics 2_python_for_robotics/python_for_robotics - 3_technology_for_robotics/technology_for_robotics + 3_technologies_for_robotics/technologies_for_robotics From d53711998aeb1d0b3aab7a62862ef5d358f2aff9 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 18 Feb 2025 21:49:28 +0900 Subject: [PATCH 336/414] fix: update robotics documentation for clarity and correct terminology (#1166) --- README.md | 4 ++++ .../0_getting_started/1_what_is_python_robotics_main.rst | 6 ++++++ .../definition_of_robotics_main.rst | 2 +- .../5_path_planning/elastic_bands/elastic_bands_main.rst | 7 ++++--- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 818d7b0d4e..9e605435ce 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,10 @@ See this documentation - [Getting Started — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/getting_started.html#what-is-pythonrobotics) +or this Youtube video: + +- [PythonRobotics project audio overview](https://www.youtube.com/watch?v=uMeRnNoJAfU) + or this paper for more details: - [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) diff --git a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst index 8c932b7263..2a7bd574f0 100644 --- a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst +++ b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst @@ -110,6 +110,12 @@ the following additional libraries are required. For instructions on installing the above libraries, please refer to this section ":ref:`How to run sample codes`". +Audio overview of this project +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +For an audio overview of this project, please refer to this `YouTube video`_. + +.. _`YouTube video`: https://www.youtube.com/watch?v=uMeRnNoJAfU + Arxiv paper ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 1e7a833b19..5d78bf858b 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -103,5 +103,5 @@ Robotics consists of several essential components: #. Power Supply – Provides energy to run the robot (e.g., Batteries, Solar power). #. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). -This project, PythonRobotics, focuses on the software and algorithms part of robotics. +This project, `PythonRobotics`, focuses on the software and algorithms part of robotics. If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robotics`_ or :ref:`External Sensors for Robotics`_. diff --git a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst index 139996f291..8a3e517105 100644 --- a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst +++ b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst @@ -16,7 +16,7 @@ Core Concept * Maintain global path connectivity. Bubble Representation -~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~ - **Definition**: A local free-space region around configuration :math:`b`: .. math:: @@ -56,7 +56,7 @@ External Repulsion Force \frac{\partial \rho}{\partial x} \approx \frac{\rho(b_i + h) - \rho(b_i - h)}{2h}. Dynamic Path Maintenance -~~~~~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. **Node Update**: .. math:: @@ -68,6 +68,7 @@ Dynamic Path Maintenance - Insert new nodes if adjacent nodes are too far apart - Remove redundant nodes if adjacent nodes are too close -Ref: +References +~~~~~~~~~~~~~~~~~~~~~~~ - `Elastic Bands: Connecting Path Planning and Control `__ From 8064488a1d63a1579d8c9d786a376c8b583c02a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Feb 2025 21:49:40 +0900 Subject: [PATCH 337/414] build(deps): bump numpy from 2.2.2 to 2.2.3 in /requirements (#1164) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.2 to 2.2.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.2...v2.2.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ea4550edb8..8176364c29 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.2 +numpy == 2.2.3 scipy == 1.15.2 matplotlib == 3.10.0 cvxpy == 1.5.3 From 2b7080991e5289c9524a505244fcd2a4995da06e Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 19 Feb 2025 13:36:07 +0900 Subject: [PATCH 338/414] Add GitHub copilot pro sponser (#1167) * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options --- docs/Makefile | 3 ++- docs/modules/0_getting_started/3_how_to_contribute_main.rst | 2 ++ .../1_definition_of_robotics/definition_of_robotics_main.rst | 2 +- docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/Makefile b/docs/Makefile index 9296811e02..ae495eb36d 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -2,7 +2,8 @@ # # You can set these variables from the command line. -SPHINXOPTS = +# SPHINXOPTS with -W means turn warnings into errors to fail the build when warnings are present. +SPHINXOPTS = -W SPHINXBUILD = sphinx-build SPHINXPROJ = PythonRobotics SOURCEDIR = . diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 874564cbb8..1e61760649 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -187,6 +187,7 @@ If you would like to support us in some other way, please contact with creating Current Major Sponsors: +#. `GitHub`_ : They are providing a GitHub Copilot Pro license for this OSS development. #. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. #. `1Password`_ : They are providing a free license of their 1Password team license for this OSS project. @@ -202,6 +203,7 @@ Current Major Sponsors: .. _`doc README`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/docs/README.md .. _`test_codestyle.py`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/tests/test_codestyle.py .. _`JetBrains`: https://www.jetbrains.com/ +.. _`GitHub`: https://www.github.com/ .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma .. _`One-time donation via PayPal`: https://www.paypal.com/paypalme/myenigmapay/ diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 5d78bf858b..ca595301a6 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -104,4 +104,4 @@ Robotics consists of several essential components: #. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). This project, `PythonRobotics`, focuses on the software and algorithms part of robotics. -If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robotics`_ or :ref:`External Sensors for Robotics`_. +If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robots` or :ref:`External Sensors for Robots`. diff --git a/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst index 491320512b..15963aff79 100644 --- a/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst +++ b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst @@ -165,7 +165,7 @@ different data sources into a single optimization problem. 6 215.8405 -0.000000 -.. figure:: graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/GraphBasedSLAM/Graph_SLAM_optimization.gif .. code:: ipython3 From c7fb228d24856d6c7a0cb28c715176bfb8b17281 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 20 Feb 2025 12:11:04 +0900 Subject: [PATCH 339/414] fix: update section references to use consistent formatting (#1169) --- .../technologies_for_robotics_main.rst | 48 +++++++++++++++---- .../2_localization/localization_main.rst | 2 +- docs/modules/3_mapping/mapping_main.rst | 2 +- docs/modules/4_slam/slam_main.rst | 2 +- .../5_path_planning/path_planning_main.rst | 2 +- .../6_path_tracking/path_tracking_main.rst | 2 +- .../7_arm_navigation/arm_navigation_main.rst | 2 +- .../aerial_navigation_main.rst | 2 +- docs/modules/9_bipedal/bipedal_main.rst | 2 +- 9 files changed, 48 insertions(+), 16 deletions(-) diff --git a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst index 64c6945c32..c77997a138 100644 --- a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst @@ -5,22 +5,54 @@ The field of robotics needs wide areas of technologies such as mechanical engine electrical engineering, computer science, and artificial intelligence (AI). This project, `PythonRobotics`, only focus on computer science and artificial intelligence. +The technologies for robotics are categorized as following 3 categories: +#. `Autonomous Navigation`_ +#. `Manipulation`_ +#. `Robot type specific technologies`_ + +.. _`Autonomous Navigation`: Autonomous Navigation ^^^^^^^^^^^^^^^^^^^^^^^^ - -In recent years, autonomous navigation technologies have received huge -attention in many fields. -Such fields include, autonomous driving[22], drone flight navigation, -and other transportation systems. - -An autonomous navigation system is a system that can move to a goal over long +Autonomous navigation is a capability that can move to a goal over long periods of time without any external control by an operator. -The system requires a wide range of technologies: + +To achieve autonomous navigation, the robot needs to have the following technologies: - It needs to know where it is (localization) - Where it is safe (mapping) +- Where is is safe and where the robot is in the map (Simultaneous Localization and Mapping (SLAM)) - Where and how to move (path planning) - How to control its motion (path following). The autonomous system would not work correctly if any of these technologies is missing. + +In recent years, autonomous navigation technologies have received huge +attention in many fields. +For example, self-driving cars, drones, and autonomous mobile robots in indoor and outdoor environments. + +In this project, we provide many algorithms, sample codes, +and documentations for autonomous navigation. + +#. :ref:`Localization` +#. :ref:`Mapping` +#. :ref:`SLAM` +#. :ref:`Path planning` +#. :ref:`Path tracking` + + + +.. _`Manipulation`: + +Manipulation +^^^^^^^^^^^^^^^^^^^^^^^^ + +#. :ref:`Arm Navigation` + +.. _`Robot type specific technologies`: + +Robot type specific technologies +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +#. :ref:`Aerial Navigation` +#. :ref:`Bipedal` diff --git a/docs/modules/2_localization/localization_main.rst b/docs/modules/2_localization/localization_main.rst index 22cbd094da..770a234b69 100644 --- a/docs/modules/2_localization/localization_main.rst +++ b/docs/modules/2_localization/localization_main.rst @@ -1,4 +1,4 @@ -.. _localization: +.. _`Localization`: Localization ============ diff --git a/docs/modules/3_mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst index 825b08d3ec..34a3744893 100644 --- a/docs/modules/3_mapping/mapping_main.rst +++ b/docs/modules/3_mapping/mapping_main.rst @@ -1,4 +1,4 @@ -.. _mapping: +.. _`Mapping`: Mapping ======= diff --git a/docs/modules/4_slam/slam_main.rst b/docs/modules/4_slam/slam_main.rst index dec04f253a..98211986c2 100644 --- a/docs/modules/4_slam/slam_main.rst +++ b/docs/modules/4_slam/slam_main.rst @@ -1,4 +1,4 @@ -.. _slam: +.. _`SLAM`: SLAM ==== diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index 65fbfdbc3d..a0f9c30a3d 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -1,4 +1,4 @@ -.. _path_planning: +.. _`Path Planning`: Path Planning ============= diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index d7a895b562..130a2340c1 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -1,4 +1,4 @@ -.. _path_tracking: +.. _`Path Tracking`: Path Tracking ============= diff --git a/docs/modules/7_arm_navigation/arm_navigation_main.rst b/docs/modules/7_arm_navigation/arm_navigation_main.rst index bbbc872c58..7acd3ee7d3 100644 --- a/docs/modules/7_arm_navigation/arm_navigation_main.rst +++ b/docs/modules/7_arm_navigation/arm_navigation_main.rst @@ -1,4 +1,4 @@ -.. _arm_navigation: +.. _`Arm Navigation`: Arm Navigation ============== diff --git a/docs/modules/8_aerial_navigation/aerial_navigation_main.rst b/docs/modules/8_aerial_navigation/aerial_navigation_main.rst index b2ccb071af..7f76689770 100644 --- a/docs/modules/8_aerial_navigation/aerial_navigation_main.rst +++ b/docs/modules/8_aerial_navigation/aerial_navigation_main.rst @@ -1,4 +1,4 @@ -.. _aerial_navigation: +.. _`Aerial Navigation`: Aerial Navigation ================= diff --git a/docs/modules/9_bipedal/bipedal_main.rst b/docs/modules/9_bipedal/bipedal_main.rst index fc5b933055..dc387dc4e8 100644 --- a/docs/modules/9_bipedal/bipedal_main.rst +++ b/docs/modules/9_bipedal/bipedal_main.rst @@ -1,4 +1,4 @@ -.. _bipedal: +.. _`Bipedal`: Bipedal ================= From f343573a7bb9b99fd8fcfc72cef7336ccf859c28 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Thu, 20 Feb 2025 18:09:30 +0800 Subject: [PATCH 340/414] Update move_to_pose for cases where alpha > pi/2 or alpha < -pi/2 (#1168) * Update move_to_pose for cases where alpha > pi/2 or alpha < -pi/2 * Update move_to_pose * Add move_to_pose test * Update move_to_pose --- Control/move_to_pose/move_to_pose.py | 90 +++++++++++++++++++--------- tests/test_move_to_pose.py | 74 ++++++++++++++++++++++- 2 files changed, 134 insertions(+), 30 deletions(-) diff --git a/Control/move_to_pose/move_to_pose.py b/Control/move_to_pose/move_to_pose.py index 279ba0625b..34736a2e21 100644 --- a/Control/move_to_pose/move_to_pose.py +++ b/Control/move_to_pose/move_to_pose.py @@ -5,6 +5,7 @@ Author: Daniel Ingram (daniel-s-ingram) Atsushi Sakai (@Atsushi_twi) Seied Muhammad Yazdian (@Muhammad-Yazdian) + Wang Zheng (@Aglargil) P. I. Corke, "Robotics, Vision & Control", Springer 2017, ISBN 978-3-319-54413-7 @@ -12,8 +13,13 @@ import matplotlib.pyplot as plt import numpy as np -from random import random +import sys +import pathlib + +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from utils.angle import angle_mod +from random import random + class PathFinderController: """ @@ -70,14 +76,20 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # [-pi, pi] to prevent unstable behavior e.g. difference going # from 0 rad to 2*pi rad with slight turn + # Ref: The velocity v always has a constant sign which depends on the initial value of α. rho = np.hypot(x_diff, y_diff) - alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) - beta = angle_mod(theta_goal - theta - alpha) v = self.Kp_rho * rho - w = self.Kp_alpha * alpha - self.Kp_beta * beta + alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) + beta = angle_mod(theta_goal - theta - alpha) if alpha > np.pi / 2 or alpha < -np.pi / 2: + # recalculate alpha to make alpha in the range of [-pi/2, pi/2] + alpha = angle_mod(np.arctan2(-y_diff, -x_diff) - theta) + beta = angle_mod(theta_goal - theta - alpha) + w = self.Kp_alpha * alpha - self.Kp_beta * beta v = -v + else: + w = self.Kp_alpha * alpha - self.Kp_beta * beta return rho, v, w @@ -85,6 +97,7 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # simulation parameters controller = PathFinderController(9, 15, 3) dt = 0.01 +MAX_SIM_TIME = 5 # seconds, robot will stop moving when time exceeds this value # Robot specifications MAX_LINEAR_SPEED = 15 @@ -101,18 +114,19 @@ def move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal): x_diff = x_goal - x y_diff = y_goal - y - x_traj, y_traj = [], [] + x_traj, y_traj, v_traj, w_traj = [x], [y], [0], [0] rho = np.hypot(x_diff, y_diff) - while rho > 0.001: + t = 0 + while rho > 0.001 and t < MAX_SIM_TIME: + t += dt x_traj.append(x) y_traj.append(y) x_diff = x_goal - x y_diff = y_goal - y - rho, v, w = controller.calc_control_command( - x_diff, y_diff, theta, theta_goal) + rho, v, w = controller.calc_control_command(x_diff, y_diff, theta, theta_goal) if abs(v) > MAX_LINEAR_SPEED: v = np.sign(v) * MAX_LINEAR_SPEED @@ -120,18 +134,35 @@ def move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal): if abs(w) > MAX_ANGULAR_SPEED: w = np.sign(w) * MAX_ANGULAR_SPEED + v_traj.append(v) + w_traj.append(w) + theta = theta + w * dt x = x + v * np.cos(theta) * dt y = y + v * np.sin(theta) * dt if show_animation: # pragma: no cover plt.cla() - plt.arrow(x_start, y_start, np.cos(theta_start), - np.sin(theta_start), color='r', width=0.1) - plt.arrow(x_goal, y_goal, np.cos(theta_goal), - np.sin(theta_goal), color='g', width=0.1) + plt.arrow( + x_start, + y_start, + np.cos(theta_start), + np.sin(theta_start), + color="r", + width=0.1, + ) + plt.arrow( + x_goal, + y_goal, + np.cos(theta_goal), + np.sin(theta_goal), + color="g", + width=0.1, + ) plot_vehicle(x, y, theta, x_traj, y_traj) + return x_traj, y_traj, v_traj, w_traj + def plot_vehicle(x, y, theta, x_traj, y_traj): # pragma: no cover # Corners of triangular vehicle when pointing to the right (0 radians) @@ -144,16 +175,16 @@ def plot_vehicle(x, y, theta, x_traj, y_traj): # pragma: no cover p2 = np.matmul(T, p2_i) p3 = np.matmul(T, p3_i) - plt.plot([p1[0], p2[0]], [p1[1], p2[1]], 'k-') - plt.plot([p2[0], p3[0]], [p2[1], p3[1]], 'k-') - plt.plot([p3[0], p1[0]], [p3[1], p1[1]], 'k-') + plt.plot([p1[0], p2[0]], [p1[1], p2[1]], "k-") + plt.plot([p2[0], p3[0]], [p2[1], p3[1]], "k-") + plt.plot([p3[0], p1[0]], [p3[1], p1[1]], "k-") - plt.plot(x_traj, y_traj, 'b--') + plt.plot(x_traj, y_traj, "b--") # for stopping simulation with the esc key. plt.gcf().canvas.mpl_connect( - 'key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) plt.xlim(0, 20) plt.ylim(0, 20) @@ -162,15 +193,16 @@ def plot_vehicle(x, y, theta, x_traj, y_traj): # pragma: no cover def transformation_matrix(x, y, theta): - return np.array([ - [np.cos(theta), -np.sin(theta), x], - [np.sin(theta), np.cos(theta), y], - [0, 0, 1] - ]) + return np.array( + [ + [np.cos(theta), -np.sin(theta), x], + [np.sin(theta), np.cos(theta), y], + [0, 0, 1], + ] + ) def main(): - for i in range(5): x_start = 20.0 * random() y_start = 20.0 * random() @@ -178,10 +210,14 @@ def main(): x_goal = 20 * random() y_goal = 20 * random() theta_goal = 2 * np.pi * random() - np.pi - print(f"Initial x: {round(x_start, 2)} m\nInitial y: {round(y_start, 2)} m\nInitial theta: {round(theta_start, 2)} rad\n") - print(f"Goal x: {round(x_goal, 2)} m\nGoal y: {round(y_goal, 2)} m\nGoal theta: {round(theta_goal, 2)} rad\n") + print( + f"Initial x: {round(x_start, 2)} m\nInitial y: {round(y_start, 2)} m\nInitial theta: {round(theta_start, 2)} rad\n" + ) + print( + f"Goal x: {round(x_goal, 2)} m\nGoal y: {round(y_goal, 2)} m\nGoal theta: {round(theta_goal, 2)} rad\n" + ) move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal) -if __name__ == '__main__': +if __name__ == "__main__": main() diff --git a/tests/test_move_to_pose.py b/tests/test_move_to_pose.py index 8bc11a8d24..94c3ec1102 100644 --- a/tests/test_move_to_pose.py +++ b/tests/test_move_to_pose.py @@ -1,13 +1,81 @@ +import itertools +import numpy as np import conftest # Add root path to sys.path from Control.move_to_pose import move_to_pose as m -def test_1(): +def test_random(): m.show_animation = False m.main() -def test_2(): +def test_stability(): + """ + This unit test tests the move_to_pose.py program for stability + """ + m.show_animation = False + x_start = 5 + y_start = 5 + theta_start = 0 + x_goal = 1 + y_goal = 4 + theta_goal = 0 + _, _, v_traj, w_traj = m.move_to_pose( + x_start, y_start, theta_start, x_goal, y_goal, theta_goal + ) + + def v_is_change(current, previous): + return abs(current - previous) > m.MAX_LINEAR_SPEED + + def w_is_change(current, previous): + return abs(current - previous) > m.MAX_ANGULAR_SPEED + + # Check if the speed is changing too much + window_size = 10 + count_threshold = 4 + v_change = [v_is_change(v_traj[i], v_traj[i - 1]) for i in range(1, len(v_traj))] + w_change = [w_is_change(w_traj[i], w_traj[i - 1]) for i in range(1, len(w_traj))] + for i in range(len(v_change) - window_size + 1): + v_window = v_change[i : i + window_size] + w_window = w_change[i : i + window_size] + + v_unstable = sum(v_window) > count_threshold + w_unstable = sum(w_window) > count_threshold + + assert not v_unstable, ( + f"v_unstable in window [{i}, {i + window_size}], unstable count: {sum(v_window)}" + ) + assert not w_unstable, ( + f"w_unstable in window [{i}, {i + window_size}], unstable count: {sum(w_window)}" + ) + + +def test_reach_goal(): + """ + This unit test tests the move_to_pose.py program for reaching the goal + """ + m.show_animation = False + x_start = 5 + y_start = 5 + theta_start_list = [0, np.pi / 2, np.pi, 3 * np.pi / 2] + x_goal_list = [0, 5, 10] + y_goal_list = [0, 5, 10] + theta_goal = 0 + for theta_start, x_goal, y_goal in itertools.product( + theta_start_list, x_goal_list, y_goal_list + ): + x_traj, y_traj, _, _ = m.move_to_pose( + x_start, y_start, theta_start, x_goal, y_goal, theta_goal + ) + x_diff = x_goal - x_traj[-1] + y_diff = y_goal - y_traj[-1] + rho = np.hypot(x_diff, y_diff) + assert rho < 0.001, ( + f"start:[{x_start}, {y_start}, {theta_start}], goal:[{x_goal}, {y_goal}, {theta_goal}], rho: {rho} is too large" + ) + + +def test_max_speed(): """ This unit test tests the move_to_pose.py program for a MAX_LINEAR_SPEED and MAX_ANGULAR_SPEED @@ -18,5 +86,5 @@ def test_2(): m.main() -if __name__ == '__main__': +if __name__ == "__main__": conftest.run_this_test(__file__) From 64779298ffa77c918c63f9206b694f0d8d439c71 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 21 Feb 2025 21:40:21 +0900 Subject: [PATCH 341/414] =?UTF-8?q?refactor:=20rename=20files=20and=20upda?= =?UTF-8?q?te=20references=20for=20inverted=20pendulum=20an=E2=80=A6=20(#1?= =?UTF-8?q?171)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * refactor: rename files and update references for inverted pendulum and path tracking modules * refactor: rename inverted pendulum control files and update type check references * refactor: update import statements to use consistent casing for InvertedPendulum module --- Control/move_to_pose/__init__.py | 0 .../inverted_pendulum_lqr_control.py | 0 .../inverted_pendulum_mpc_control.py | 0 {Control => PathTracking/move_to_pose}/__init__.py | 0 .../move_to_pose/move_to_pose.py | 0 .../move_to_pose/move_to_pose_robot.py | 0 docs/index_main.rst | 2 +- docs/modules/10_control/control_main.rst | 12 ------------ .../inverted-pendulum.png | Bin .../inverted_pendulum_main.rst} | 6 ++++-- docs/modules/11_utils/utils_main.rst | 2 +- docs/modules/12_appendix/appendix_main.rst | 2 +- .../technologies_for_robotics_main.rst | 10 ++++++++++ .../move_to_a_pose_control_main.rst | 0 docs/modules/6_path_tracking/path_tracking_main.rst | 1 + tests/test_inverted_pendulum_lqr_control.py | 2 +- tests/test_inverted_pendulum_mpc_control.py | 2 +- tests/test_move_to_pose.py | 2 +- tests/test_move_to_pose_robot.py | 2 +- tests/test_mypy_type_check.py | 2 +- 20 files changed, 23 insertions(+), 22 deletions(-) delete mode 100644 Control/move_to_pose/__init__.py rename {Control/inverted_pendulum => InvertedPendulum}/inverted_pendulum_lqr_control.py (100%) rename {Control/inverted_pendulum => InvertedPendulum}/inverted_pendulum_mpc_control.py (100%) rename {Control => PathTracking/move_to_pose}/__init__.py (100%) rename {Control => PathTracking}/move_to_pose/move_to_pose.py (100%) rename {Control => PathTracking}/move_to_pose/move_to_pose_robot.py (100%) delete mode 100644 docs/modules/10_control/control_main.rst rename docs/modules/{10_control/inverted_pendulum_control => 10_inverted_pendulum}/inverted-pendulum.png (100%) rename docs/modules/{10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst => 10_inverted_pendulum/inverted_pendulum_main.rst} (97%) rename docs/modules/{10_control => 6_path_tracking}/move_to_a_pose_control/move_to_a_pose_control_main.rst (100%) diff --git a/Control/move_to_pose/__init__.py b/Control/move_to_pose/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/Control/inverted_pendulum/inverted_pendulum_lqr_control.py b/InvertedPendulum/inverted_pendulum_lqr_control.py similarity index 100% rename from Control/inverted_pendulum/inverted_pendulum_lqr_control.py rename to InvertedPendulum/inverted_pendulum_lqr_control.py diff --git a/Control/inverted_pendulum/inverted_pendulum_mpc_control.py b/InvertedPendulum/inverted_pendulum_mpc_control.py similarity index 100% rename from Control/inverted_pendulum/inverted_pendulum_mpc_control.py rename to InvertedPendulum/inverted_pendulum_mpc_control.py diff --git a/Control/__init__.py b/PathTracking/move_to_pose/__init__.py similarity index 100% rename from Control/__init__.py rename to PathTracking/move_to_pose/__init__.py diff --git a/Control/move_to_pose/move_to_pose.py b/PathTracking/move_to_pose/move_to_pose.py similarity index 100% rename from Control/move_to_pose/move_to_pose.py rename to PathTracking/move_to_pose/move_to_pose.py diff --git a/Control/move_to_pose/move_to_pose_robot.py b/PathTracking/move_to_pose/move_to_pose_robot.py similarity index 100% rename from Control/move_to_pose/move_to_pose_robot.py rename to PathTracking/move_to_pose/move_to_pose_robot.py diff --git a/docs/index_main.rst b/docs/index_main.rst index c1e8d22d32..75805d1184 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -43,7 +43,7 @@ this graph shows GitHub star history of this project: modules/7_arm_navigation/arm_navigation modules/8_aerial_navigation/aerial_navigation modules/9_bipedal/bipedal - modules/10_control/control + modules/10_inverted_pendulum/inverted_pendulum modules/11_utils/utils modules/12_appendix/appendix diff --git a/docs/modules/10_control/control_main.rst b/docs/modules/10_control/control_main.rst deleted file mode 100644 index cee2aa9e8e..0000000000 --- a/docs/modules/10_control/control_main.rst +++ /dev/null @@ -1,12 +0,0 @@ -.. _control: - -Control -================= - -.. toctree:: - :maxdepth: 2 - :caption: Contents - - inverted_pendulum_control/inverted_pendulum_control - move_to_a_pose_control/move_to_a_pose_control - diff --git a/docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png b/docs/modules/10_inverted_pendulum/inverted-pendulum.png similarity index 100% rename from docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png rename to docs/modules/10_inverted_pendulum/inverted-pendulum.png diff --git a/docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst similarity index 97% rename from docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst rename to docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst index e41729fd61..048cbea9ac 100644 --- a/docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst +++ b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst @@ -1,5 +1,7 @@ -Inverted Pendulum Control ------------------------------ +.. _`Inverted Pendulum`: + +Inverted Pendulum +------------------ An inverted pendulum on a cart consists of a mass :math:`m` at the top of a pole of length :math:`l` pivoted on a horizontally moving base as shown in the adjacent. diff --git a/docs/modules/11_utils/utils_main.rst b/docs/modules/11_utils/utils_main.rst index ff79a26205..95c982b077 100644 --- a/docs/modules/11_utils/utils_main.rst +++ b/docs/modules/11_utils/utils_main.rst @@ -1,4 +1,4 @@ -.. _utils: +.. _`utils`: Utilities ========== diff --git a/docs/modules/12_appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst index a55389e1e6..d0b9eeea3a 100644 --- a/docs/modules/12_appendix/appendix_main.rst +++ b/docs/modules/12_appendix/appendix_main.rst @@ -1,4 +1,4 @@ -.. _appendix: +.. _`Appendix`: Appendix ============== diff --git a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst index c77997a138..0ed51e961b 100644 --- a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst @@ -56,3 +56,13 @@ Robot type specific technologies #. :ref:`Aerial Navigation` #. :ref:`Bipedal` +#. :ref:`Inverted Pendulum` + + +Additional Information +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +#. :ref:`utils` +#. :ref:`Appendix` + + diff --git a/docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst b/docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst similarity index 100% rename from docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst rename to docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index 130a2340c1..d98e324583 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -16,3 +16,4 @@ Path tracking is the ability of a robot to follow the reference path generated b lqr_speed_and_steering_control/lqr_speed_and_steering_control model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control cgmres_nmpc/cgmres_nmpc + move_to_a_pose_control/move_to_a_pose_control diff --git a/tests/test_inverted_pendulum_lqr_control.py b/tests/test_inverted_pendulum_lqr_control.py index cbbabb93b1..62afda71c3 100644 --- a/tests/test_inverted_pendulum_lqr_control.py +++ b/tests/test_inverted_pendulum_lqr_control.py @@ -1,5 +1,5 @@ import conftest -from Control.inverted_pendulum import inverted_pendulum_lqr_control as m +from InvertedPendulum import inverted_pendulum_lqr_control as m def test_1(): diff --git a/tests/test_inverted_pendulum_mpc_control.py b/tests/test_inverted_pendulum_mpc_control.py index 800aefd7d5..94859c2e0a 100644 --- a/tests/test_inverted_pendulum_mpc_control.py +++ b/tests/test_inverted_pendulum_mpc_control.py @@ -1,6 +1,6 @@ import conftest -from Control.inverted_pendulum import inverted_pendulum_mpc_control as m +from InvertedPendulum import inverted_pendulum_mpc_control as m def test1(): diff --git a/tests/test_move_to_pose.py b/tests/test_move_to_pose.py index 94c3ec1102..e06d801555 100644 --- a/tests/test_move_to_pose.py +++ b/tests/test_move_to_pose.py @@ -1,7 +1,7 @@ import itertools import numpy as np import conftest # Add root path to sys.path -from Control.move_to_pose import move_to_pose as m +from PathTracking.move_to_pose import move_to_pose as m def test_random(): diff --git a/tests/test_move_to_pose_robot.py b/tests/test_move_to_pose_robot.py index a93b44d198..7a82f98556 100644 --- a/tests/test_move_to_pose_robot.py +++ b/tests/test_move_to_pose_robot.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from Control.move_to_pose import move_to_pose as m +from PathTracking.move_to_pose import move_to_pose as m def test_1(): diff --git a/tests/test_mypy_type_check.py b/tests/test_mypy_type_check.py index 07afb40afd..6b933c1011 100644 --- a/tests/test_mypy_type_check.py +++ b/tests/test_mypy_type_check.py @@ -7,12 +7,12 @@ "AerialNavigation", "ArmNavigation", "Bipedal", - "Control", "Localization", "Mapping", "PathPlanning", "PathTracking", "SLAM", + "InvertedPendulum" ] From 6e13e8292aad80661093603ed262c6f0bdcb4137 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Feb 2025 08:07:42 +0900 Subject: [PATCH 342/414] build(deps): bump ruff from 0.9.6 to 0.9.7 in /requirements (#1173) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.6 to 0.9.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.6...0.9.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8176364c29..b439ea4266 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.6 # For unit test +ruff == 0.9.7 # For unit test From 0c8ff11645e6804db18bec6bd918e03ed03454f7 Mon Sep 17 00:00:00 2001 From: Jonathan Schwartz Date: Tue, 25 Feb 2025 06:53:36 -0500 Subject: [PATCH 343/414] Space-Time AStar (#1170) * wip - sketch out obstacles * move to correct path * better animation * clean up * use np to sample points * implemented time-based A* * cleaning up Grid + adding new obstacle arrangement * added unit test * formatting p1 * format STA* file * remove newlines by docstrings * linter * working on typehints * fix linter errors * lint some more * appease AppVeyor * dataclasses are :fire: * back to @total_ordering * trailing whitespace * add docs page on SpaceTimeA* * docs lint * remove trailing newlines in doc * address comments * Update docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst --------- Co-authored-by: Atsushi Sakai --- .../GridWithDynamicObstacles.py | 273 ++++++++++++++++++ .../TimeBasedPathPlanning/SpaceTimeAStar.py | 220 ++++++++++++++ .../TimeBasedPathPlanning/__init__.py | 0 .../5_path_planning/path_planning_main.rst | 1 + .../time_based_grid_search_main.rst | 22 ++ tests/test_space_time_astar.py | 33 +++ 6 files changed, 549 insertions(+) create mode 100644 PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py create mode 100644 PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py create mode 100644 PathPlanning/TimeBasedPathPlanning/__init__.py create mode 100644 docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst create mode 100644 tests/test_space_time_astar.py diff --git a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py new file mode 100644 index 0000000000..7b0190d023 --- /dev/null +++ b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py @@ -0,0 +1,273 @@ +""" +This file implements a grid with a 3d reservation matrix with dimensions for x, y, and time. There +is also infrastructure to generate dynamic obstacles that move around the grid. The obstacles' paths +are stored in the reservation matrix on creation. +""" +import numpy as np +import matplotlib.pyplot as plt +from enum import Enum +from dataclasses import dataclass + +@dataclass(order=True) +class Position: + x: int + y: int + + def as_ndarray(self) -> np.ndarray: + return np.array([self.x, self.y]) + + def __add__(self, other): + if isinstance(other, Position): + return Position(self.x + other.x, self.y + other.y) + raise NotImplementedError( + f"Addition not supported for Position and {type(other)}" + ) + + def __sub__(self, other): + if isinstance(other, Position): + return Position(self.x - other.x, self.y - other.y) + raise NotImplementedError( + f"Subtraction not supported for Position and {type(other)}" + ) + + +class ObstacleArrangement(Enum): + # Random obstacle positions and movements + RANDOM = 0 + # Obstacles start in a line in y at center of grid and move side-to-side in x + ARRANGEMENT1 = 1 + + +class Grid: + # Set in constructor + grid_size: np.ndarray + reservation_matrix: np.ndarray + obstacle_paths: list[list[Position]] = [] + # Obstacles will never occupy these points. Useful to avoid impossible scenarios + obstacle_avoid_points: list[Position] = [] + + # Number of time steps in the simulation + time_limit: int + + # Logging control + verbose = False + + def __init__( + self, + grid_size: np.ndarray, + num_obstacles: int = 40, + obstacle_avoid_points: list[Position] = [], + obstacle_arrangement: ObstacleArrangement = ObstacleArrangement.RANDOM, + time_limit: int = 100, + ): + self.obstacle_avoid_points = obstacle_avoid_points + self.time_limit = time_limit + self.grid_size = grid_size + self.reservation_matrix = np.zeros((grid_size[0], grid_size[1], self.time_limit)) + + if num_obstacles > self.grid_size[0] * self.grid_size[1]: + raise Exception("Number of obstacles is greater than grid size!") + + if obstacle_arrangement == ObstacleArrangement.RANDOM: + self.obstacle_paths = self.generate_dynamic_obstacles(num_obstacles) + elif obstacle_arrangement == ObstacleArrangement.ARRANGEMENT1: + self.obstacle_paths = self.obstacle_arrangement_1(num_obstacles) + + for i, path in enumerate(self.obstacle_paths): + obs_idx = i + 1 # avoid using 0 - that indicates free space in the grid + for t, position in enumerate(path): + # Reserve old & new position at this time step + if t > 0: + self.reservation_matrix[path[t - 1].x, path[t - 1].y, t] = obs_idx + self.reservation_matrix[position.x, position.y, t] = obs_idx + + """ + Generate dynamic obstacles that move around the grid. Initial positions and movements are random + """ + def generate_dynamic_obstacles(self, obs_count: int) -> list[list[Position]]: + obstacle_paths = [] + for _ in (0, obs_count): + # Sample until a free starting space is found + initial_position = self.sample_random_position() + while not self.valid_obstacle_position(initial_position, 0): + initial_position = self.sample_random_position() + + positions = [initial_position] + if self.verbose: + print("Obstacle initial position: ", initial_position) + + # Encourage obstacles to mostly stay in place - too much movement leads to chaotic planning scenarios + # that are not fun to watch + weights = [0.05, 0.05, 0.05, 0.05, 0.8] + diffs = [ + Position(0, 1), + Position(0, -1), + Position(1, 0), + Position(-1, 0), + Position(0, 0), + ] + + for t in range(1, self.time_limit - 1): + sampled_indices = np.random.choice( + len(diffs), size=5, replace=False, p=weights + ) + rand_diffs = [diffs[i] for i in sampled_indices] + + valid_position = None + for diff in rand_diffs: + new_position = positions[-1] + diff + + if not self.valid_obstacle_position(new_position, t): + continue + + valid_position = new_position + break + + # Impossible situation for obstacle - stay in place + # -> this can happen if the oaths of other obstacles this one + if valid_position is None: + valid_position = positions[-1] + + positions.append(valid_position) + + obstacle_paths.append(positions) + + return obstacle_paths + + """ + Generate a line of obstacles in y at the center of the grid that move side-to-side in x + Bottom half start moving right, top half start moving left. If `obs_count` is less than the length of + the grid, only the first `obs_count` obstacles will be generated. + """ + def obstacle_arrangement_1(self, obs_count: int) -> list[list[Position]]: + obstacle_paths = [] + half_grid_x = self.grid_size[0] // 2 + half_grid_y = self.grid_size[1] // 2 + + for y_idx in range(0, min(obs_count, self.grid_size[1])): + moving_right = y_idx < half_grid_y + position = Position(half_grid_x, y_idx) + path = [position] + + for t in range(1, self.time_limit - 1): + # sit in place every other time step + if t % 2 == 0: + path.append(position) + continue + + # first check if we should switch direction (at edge of grid) + if (moving_right and position.x == self.grid_size[0] - 1) or ( + not moving_right and position.x == 0 + ): + moving_right = not moving_right + # step in direction + position = Position( + position.x + (1 if moving_right else -1), position.y + ) + path.append(position) + + obstacle_paths.append(path) + + return obstacle_paths + + """ + Check if the given position is valid at time t + + input: + position (Position): (x, y) position + t (int): time step + + output: + bool: True if position/time combination is valid, False otherwise + """ + def valid_position(self, position: Position, t: int) -> bool: + # Check if new position is in grid + if not self.inside_grid_bounds(position): + return False + + # Check if new position is not occupied at time t + return self.reservation_matrix[position.x, position.y, t] == 0 + + """ + Returns True if the given position is valid at time t and is not in the set of obstacle_avoid_points + """ + def valid_obstacle_position(self, position: Position, t: int) -> bool: + return ( + self.valid_position(position, t) + and position not in self.obstacle_avoid_points + ) + + """ + Returns True if the given position is within the grid's boundaries + """ + def inside_grid_bounds(self, position: Position) -> bool: + return ( + position.x >= 0 + and position.x < self.grid_size[0] + and position.y >= 0 + and position.y < self.grid_size[1] + ) + + """ + Sample a random position that is within the grid's boundaries + + output: + Position: (x, y) position + """ + def sample_random_position(self) -> Position: + return Position( + np.random.randint(0, self.grid_size[0]), + np.random.randint(0, self.grid_size[1]), + ) + + """ + Returns a tuple of (x_positions, y_positions) of the obstacles at time t + """ + def get_obstacle_positions_at_time(self, t: int) -> tuple[list[int], list[int]]: + x_positions = [] + y_positions = [] + for obs_path in self.obstacle_paths: + x_positions.append(obs_path[t].x) + y_positions.append(obs_path[t].y) + return (x_positions, y_positions) + + +show_animation = True + + +def main(): + grid = Grid( + np.array([11, 11]), + num_obstacles=10, + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + if not show_animation: + return + + fig = plt.figure(figsize=(8, 7)) + ax = fig.add_subplot( + autoscale_on=False, + xlim=(0, grid.grid_size[0] - 1), + ylim=(0, grid.grid_size[1] - 1), + ) + ax.set_aspect("equal") + ax.grid() + ax.set_xticks(np.arange(0, 11, 1)) + ax.set_yticks(np.arange(0, 11, 1)) + (obs_points,) = ax.plot([], [], "ro", ms=15) + + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect( + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) + + for i in range(0, grid.time_limit - 1): + obs_positions = grid.get_obstacle_positions_at_time(i) + obs_points.set_data(obs_positions[0], obs_positions[1]) + plt.pause(0.2) + plt.show() + + +if __name__ == "__main__": + main() diff --git a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py new file mode 100644 index 0000000000..3b3613d695 --- /dev/null +++ b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py @@ -0,0 +1,220 @@ +""" +Space-time A* Algorithm + This script demonstrates the Space-time A* algorithm for path planning in a grid world with moving obstacles. + This algorithm is different from normal 2D A* in one key way - the cost (often notated as g(n)) is + the number of time steps it took to get to a given node, instead of the number of cells it has + traversed. This ensures the path is time-optimal, while respescting any dynamic obstacles in the environment. + + Reference: https://www.davidsilver.uk/wp-content/uploads/2020/03/coop-path-AIWisdom.pdf +""" + +import numpy as np +import matplotlib.pyplot as plt +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + ObstacleArrangement, + Position, +) +import heapq +from collections.abc import Generator +import random +from dataclasses import dataclass +from functools import total_ordering + + +# Seed randomness for reproducibility +RANDOM_SEED = 50 +random.seed(RANDOM_SEED) +np.random.seed(RANDOM_SEED) + +@dataclass() +# Note: Total_ordering is used instead of adding `order=True` to the @dataclass decorator because +# this class needs to override the __lt__ and __eq__ methods to ignore parent_index. Parent +# index is just used to track the path found by the algorithm, and has no effect on the quality +# of a node. +@total_ordering +class Node: + position: Position + time: int + heuristic: int + parent_index: int + + """ + This is what is used to drive node expansion. The node with the lowest value is expanded next. + This comparison prioritizes the node with the lowest cost-to-come (self.time) + cost-to-go (self.heuristic) + """ + def __lt__(self, other: object): + if not isinstance(other, Node): + return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") + return (self.time + self.heuristic) < (other.time + other.heuristic) + + def __eq__(self, other: object): + if not isinstance(other, Node): + return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") + return self.position == other.position and self.time == other.time + + +class NodePath: + path: list[Node] + positions_at_time: dict[int, Position] = {} + + def __init__(self, path: list[Node]): + self.path = path + for node in path: + self.positions_at_time[node.time] = node.position + + """ + Get the position of the path at a given time + """ + def get_position(self, time: int) -> Position | None: + return self.positions_at_time.get(time) + + """ + Time stamp of the last node in the path + """ + def goal_reached_time(self) -> int: + return self.path[-1].time + + def __repr__(self): + repr_string = "" + for i, node in enumerate(self.path): + repr_string += f"{i}: {node}\n" + return repr_string + + +class SpaceTimeAStar: + grid: Grid + start: Position + goal: Position + + def __init__(self, grid: Grid, start: Position, goal: Position): + self.grid = grid + self.start = start + self.goal = goal + + def plan(self, verbose: bool = False) -> NodePath: + open_set: list[Node] = [] + heapq.heappush( + open_set, Node(self.start, 0, self.calculate_heuristic(self.start), -1) + ) + + expanded_set: list[Node] = [] + while open_set: + expanded_node: Node = heapq.heappop(open_set) + if verbose: + print("Expanded node:", expanded_node) + + if expanded_node.time + 1 >= self.grid.time_limit: + if verbose: + print(f"\tSkipping node that is past time limit: {expanded_node}") + continue + + if expanded_node.position == self.goal: + print(f"Found path to goal after {len(expanded_set)} expansions") + path = [] + path_walker: Node = expanded_node + while True: + path.append(path_walker) + if path_walker.parent_index == -1: + break + path_walker = expanded_set[path_walker.parent_index] + + # reverse path so it goes start -> goal + path.reverse() + return NodePath(path) + + expanded_idx = len(expanded_set) + expanded_set.append(expanded_node) + + for child in self.generate_successors(expanded_node, expanded_idx, verbose): + heapq.heappush(open_set, child) + + raise Exception("No path found") + + """ + Generate possible successors of the provided `parent_node` + """ + def generate_successors( + self, parent_node: Node, parent_node_idx: int, verbose: bool + ) -> Generator[Node, None, None]: + diffs = [ + Position(0, 0), + Position(1, 0), + Position(-1, 0), + Position(0, 1), + Position(0, -1), + ] + for diff in diffs: + new_pos = parent_node.position + diff + if self.grid.valid_position(new_pos, parent_node.time + 1): + new_node = Node( + new_pos, + parent_node.time + 1, + self.calculate_heuristic(new_pos), + parent_node_idx, + ) + if verbose: + print("\tNew successor node: ", new_node) + yield new_node + + def calculate_heuristic(self, position) -> int: + diff = self.goal - position + return abs(diff.x) + abs(diff.y) + + +show_animation = True +verbose = False + +def main(): + start = Position(1, 11) + goal = Position(19, 19) + grid_side_length = 21 + grid = Grid( + np.array([grid_side_length, grid_side_length]), + num_obstacles=40, + obstacle_avoid_points=[start, goal], + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + planner = SpaceTimeAStar(grid, start, goal) + path = planner.plan(verbose) + + if verbose: + print(f"Path: {path}") + + if not show_animation: + return + + fig = plt.figure(figsize=(10, 7)) + ax = fig.add_subplot( + autoscale_on=False, + xlim=(0, grid.grid_size[0] - 1), + ylim=(0, grid.grid_size[1] - 1), + ) + ax.set_aspect("equal") + ax.grid() + ax.set_xticks(np.arange(0, grid_side_length, 1)) + ax.set_yticks(np.arange(0, grid_side_length, 1)) + + (start_and_goal,) = ax.plot([], [], "mD", ms=15, label="Start and Goal") + start_and_goal.set_data([start.x, goal.x], [start.y, goal.y]) + (obs_points,) = ax.plot([], [], "ro", ms=15, label="Obstacles") + (path_points,) = ax.plot([], [], "bo", ms=10, label="Path Found") + ax.legend(bbox_to_anchor=(1.05, 1)) + + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect( + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) + + for i in range(0, path.goal_reached_time()): + obs_positions = grid.get_obstacle_positions_at_time(i) + obs_points.set_data(obs_positions[0], obs_positions[1]) + path_position = path.get_position(i) + path_points.set_data([path_position.x], [path_position.y]) + plt.pause(0.2) + plt.show() + + +if __name__ == "__main__": + main() diff --git a/PathPlanning/TimeBasedPathPlanning/__init__.py b/PathPlanning/TimeBasedPathPlanning/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index a0f9c30a3d..0c84a19c22 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -12,6 +12,7 @@ Path planning is the ability of a robot to search feasible and efficient path to dynamic_window_approach/dynamic_window_approach bugplanner/bugplanner grid_base_search/grid_base_search + time_based_grid_search/time_based_grid_search model_predictive_trajectory_generator/model_predictive_trajectory_generator state_lattice_planner/state_lattice_planner prm_planner/prm_planner diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst new file mode 100644 index 0000000000..0c26badec7 --- /dev/null +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -0,0 +1,22 @@ +Time based grid search +---------------------- + +Space-time astar +~~~~~~~~~~~~~~~~~~~~~~ + +This is an extension of A* algorithm that supports planning around dynamic obstacles. + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar/path_animation.gif + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar/path_animation2.gif + +The key difference of this algorithm compared to vanilla A* is that the cost and heuristic are now time-based instead of distance-based. +Using a time-based cost and heuristic ensures the path found is optimal in terms of time to reach the goal. + +The cost is the amount of time it takes to reach a given node, and the heuristic is the minimum amount of time it could take to reach the goal from that node, disregarding all obstacles. +For a simple scenario where the robot can move 1 cell per time step and stop and go as it pleases, the heuristic for time is equivalent to the heuristic for distance. + +References: +~~~~~~~~~~~ + +- `Cooperative Pathfinding `__ diff --git a/tests/test_space_time_astar.py b/tests/test_space_time_astar.py new file mode 100644 index 0000000000..5290738eb4 --- /dev/null +++ b/tests/test_space_time_astar.py @@ -0,0 +1,33 @@ +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + ObstacleArrangement, + Position, +) +from PathPlanning.TimeBasedPathPlanning import SpaceTimeAStar as m +import numpy as np +import conftest + + +def test_1(): + start = Position(1, 11) + goal = Position(19, 19) + grid_side_length = 21 + grid = Grid( + np.array([grid_side_length, grid_side_length]), + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + m.show_animation = False + planner = m.SpaceTimeAStar(grid, start, goal) + + path = planner.plan(False) + + # path should have 28 entries + assert len(path.path) == 31 + + # path should end at the goal + assert path.path[-1].position == goal + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 67a3ca7138384b4a013974dbf22383252f83686e Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Fri, 28 Feb 2025 19:30:24 +0800 Subject: [PATCH 344/414] add state machine (#1172) * add state machine state_machine test state_machine_update * add state machine test/doc * state machine update * state machine generate_plantuml() can show diagram by using https://www.plantuml.com/plantuml/ --- .../StateMachine/robot_behavior_case.py | 111 +++++++ MissionPlanning/StateMachine/state_machine.py | 294 ++++++++++++++++++ docs/index_main.rst | 1 + .../mission_planning_main.rst | 12 + .../state_machine/robot_behavior_case.png | Bin 0 -> 28565 bytes .../state_machine/state_machine_main.rst | 74 +++++ tests/test_state_machine.py | 51 +++ 7 files changed, 543 insertions(+) create mode 100644 MissionPlanning/StateMachine/robot_behavior_case.py create mode 100644 MissionPlanning/StateMachine/state_machine.py create mode 100644 docs/modules/13_mission_planning/mission_planning_main.rst create mode 100644 docs/modules/13_mission_planning/state_machine/robot_behavior_case.png create mode 100644 docs/modules/13_mission_planning/state_machine/state_machine_main.rst create mode 100644 tests/test_state_machine.py diff --git a/MissionPlanning/StateMachine/robot_behavior_case.py b/MissionPlanning/StateMachine/robot_behavior_case.py new file mode 100644 index 0000000000..03ee60ae9f --- /dev/null +++ b/MissionPlanning/StateMachine/robot_behavior_case.py @@ -0,0 +1,111 @@ +""" +A case study of robot behavior using state machine + +author: Wang Zheng (@Aglargil) +""" + +from state_machine import StateMachine + + +class Robot: + def __init__(self): + self.battery = 100 + self.task_progress = 0 + + # Initialize state machine + self.machine = StateMachine("robot_sm", self) + + # Add state transition rules + self.machine.add_transition( + src_state="patrolling", + event="detect_task", + dst_state="executing_task", + guard=None, + action=None, + ) + + self.machine.add_transition( + src_state="executing_task", + event="task_complete", + dst_state="patrolling", + guard=None, + action="reset_task", + ) + + self.machine.add_transition( + src_state="executing_task", + event="low_battery", + dst_state="returning_to_base", + guard="is_battery_low", + ) + + self.machine.add_transition( + src_state="returning_to_base", + event="reach_base", + dst_state="charging", + guard=None, + action=None, + ) + + self.machine.add_transition( + src_state="charging", + event="charge_complete", + dst_state="patrolling", + guard=None, + action="battery_full", + ) + + # Set initial state + self.machine.set_current_state("patrolling") + + def is_battery_low(self): + """Battery level check condition""" + return self.battery < 30 + + def reset_task(self): + """Reset task progress""" + self.task_progress = 0 + print("[Action] Task progress has been reset") + + # Modify state entry callback naming convention (add state_ prefix) + def on_enter_executing_task(self): + print("\n------ Start Executing Task ------") + print(f"Current battery: {self.battery}%") + while self.machine.get_current_state().name == "executing_task": + self.task_progress += 10 + self.battery -= 25 + print( + f"Task progress: {self.task_progress}%, Remaining battery: {self.battery}%" + ) + + if self.task_progress >= 100: + self.machine.process("task_complete") + break + elif self.is_battery_low(): + self.machine.process("low_battery") + break + + def on_enter_returning_to_base(self): + print("\nLow battery, returning to charging station...") + self.machine.process("reach_base") + + def on_enter_charging(self): + print("\n------ Charging ------") + self.battery = 100 + print("Charging complete!") + self.machine.process("charge_complete") + + +# Keep the test section structure the same, only modify the trigger method +if __name__ == "__main__": + robot = Robot() + print(robot.machine.generate_plantuml()) + + print(f"Initial state: {robot.machine.get_current_state().name}") + print("------------") + + # Trigger task detection event + robot.machine.process("detect_task") + + print("\n------------") + print(f"Final state: {robot.machine.get_current_state().name}") diff --git a/MissionPlanning/StateMachine/state_machine.py b/MissionPlanning/StateMachine/state_machine.py new file mode 100644 index 0000000000..de72f0f451 --- /dev/null +++ b/MissionPlanning/StateMachine/state_machine.py @@ -0,0 +1,294 @@ +""" +State Machine + +author: Wang Zheng (@Aglargil) + +Ref: + +- [State Machine] +(https://en.wikipedia.org/wiki/Finite-state_machine) +""" + +import string +from urllib.request import urlopen, Request +from base64 import b64encode +from zlib import compress +from io import BytesIO +from collections.abc import Callable +from matplotlib.image import imread +from matplotlib import pyplot as plt + + +def deflate_and_encode(plantuml_text): + """ + zlib compress the plantuml text and encode it for the plantuml server. + + Ref: https://plantuml.com/en/text-encoding + """ + plantuml_alphabet = ( + string.digits + string.ascii_uppercase + string.ascii_lowercase + "-_" + ) + base64_alphabet = ( + string.ascii_uppercase + string.ascii_lowercase + string.digits + "+/" + ) + b64_to_plantuml = bytes.maketrans( + base64_alphabet.encode("utf-8"), plantuml_alphabet.encode("utf-8") + ) + zlibbed_str = compress(plantuml_text.encode("utf-8")) + compressed_string = zlibbed_str[2:-4] + return b64encode(compressed_string).translate(b64_to_plantuml).decode("utf-8") + + +class State: + def __init__(self, name, on_enter=None, on_exit=None): + self.name = name + self.on_enter = on_enter + self.on_exit = on_exit + + def enter(self): + print(f"entering <{self.name}>") + if self.on_enter: + self.on_enter() + + def exit(self): + print(f"exiting <{self.name}>") + if self.on_exit: + self.on_exit() + + +class StateMachine: + def __init__(self, name: str, model=object): + """Initialize the state machine. + + Args: + name (str): Name of the state machine. + model (object, optional): Model object used to automatically look up callback functions + for states and transitions: + State callbacks: Automatically searches for 'on_enter_' and 'on_exit_' methods. + Transition callbacks: When action or guard parameters are strings, looks up corresponding methods in the model. + + Example: + >>> class MyModel: + ... def on_enter_idle(self): + ... print("Entering idle state") + ... def on_exit_idle(self): + ... print("Exiting idle state") + ... def can_start(self): + ... return True + ... def on_start(self): + ... print("Starting operation") + >>> model = MyModel() + >>> machine = StateMachine("my_machine", model) + """ + self._name = name + self._states = {} + self._events = {} + self._transition_table = {} + self._model = model + self._state: State = None + + def _register_event(self, event: str): + self._events[event] = event + + def _get_state(self, name): + return self._states[name] + + def _get_event(self, name): + return self._events[name] + + def _has_event(self, event: str): + return event in self._events + + def add_transition( + self, + src_state: str | State, + event: str, + dst_state: str | State, + guard: str | Callable = None, + action: str | Callable = None, + ) -> None: + """Add a transition to the state machine. + + Args: + src_state (str | State): The source state where the transition begins. + Can be either a state name or a State object. + event (str): The event that triggers this transition. + dst_state (str | State): The destination state where the transition ends. + Can be either a state name or a State object. + guard (str | Callable, optional): Guard condition for the transition. + If callable: Function that returns bool. + If str: Name of a method in the model class. + If returns True: Transition proceeds. + If returns False: Transition is skipped. + action (str | Callable, optional): Action to execute during transition. + If callable: Function to execute. + If str: Name of a method in the model class. + Executed after guard passes and before entering new state. + + Example: + >>> machine.add_transition( + ... src_state="idle", + ... event="start", + ... dst_state="running", + ... guard="can_start", + ... action="on_start" + ... ) + """ + # Convert string parameters to objects if necessary + self.register_state(src_state) + self._register_event(event) + self.register_state(dst_state) + + def get_state_obj(state): + return state if isinstance(state, State) else self._get_state(state) + + def get_callable(func): + return func if callable(func) else getattr(self._model, func, None) + + src_state_obj = get_state_obj(src_state) + dst_state_obj = get_state_obj(dst_state) + + guard_func = get_callable(guard) if guard else None + action_func = get_callable(action) if action else None + self._transition_table[(src_state_obj.name, event)] = ( + dst_state_obj, + guard_func, + action_func, + ) + + def state_transition(self, src_state: State, event: str): + if (src_state.name, event) not in self._transition_table: + raise ValueError( + f"|{self._name}| invalid transition: <{src_state.name}> : [{event}]" + ) + + dst_state, guard, action = self._transition_table[(src_state.name, event)] + + def call_guard(guard): + if callable(guard): + return guard() + else: + return True + + def call_action(action): + if callable(action): + action() + + if call_guard(guard): + call_action(action) + if src_state.name != dst_state.name: + print( + f"|{self._name}| transitioning from <{src_state.name}> to <{dst_state.name}>" + ) + src_state.exit() + self._state = dst_state + dst_state.enter() + else: + print( + f"|{self._name}| skipping transition from <{src_state.name}> to <{dst_state.name}> because guard failed" + ) + + def register_state(self, state: str | State, on_enter=None, on_exit=None): + """Register a state in the state machine. + + Args: + state (str | State): The state to register. Can be either a string (state name) + or a State object. + on_enter (Callable, optional): Callback function to be executed when entering the state. + If state is a string and on_enter is None, it will look for + a method named 'on_enter_' in the model. + on_exit (Callable, optional): Callback function to be executed when exiting the state. + If state is a string and on_exit is None, it will look for + a method named 'on_exit_' in the model. + Example: + >>> machine.register_state("idle", on_enter=on_enter_idle, on_exit=on_exit_idle) + >>> machine.register_state(State("running", on_enter=on_enter_running, on_exit=on_exit_running)) + """ + if isinstance(state, str): + if on_enter is None: + on_enter = getattr(self._model, "on_enter_" + state, None) + if on_exit is None: + on_exit = getattr(self._model, "on_exit_" + state, None) + self._states[state] = State(state, on_enter, on_exit) + return + + self._states[state.name] = state + + def set_current_state(self, state: State | str): + if isinstance(state, str): + self._state = self._get_state(state) + else: + self._state = state + + def get_current_state(self): + return self._state + + def process(self, event: str) -> None: + """Process an event in the state machine. + + Args: + event: Event name. + + Example: + >>> machine.process("start") + """ + if self._state is None: + raise ValueError("State machine is not initialized") + + if self._has_event(event): + self.state_transition(self._state, event) + else: + raise ValueError(f"Invalid event: {event}") + + def generate_plantuml(self) -> str: + """Generate PlantUML state diagram representation of the state machine. + + Returns: + str: PlantUML state diagram code. + """ + if self._state is None: + raise ValueError("State machine is not initialized") + + plant_uml = ["@startuml"] + plant_uml.append("[*] --> " + self._state.name) + + # Generate transitions + for (src_state, event), ( + dst_state, + guard, + action, + ) in self._transition_table.items(): + transition = f"{src_state} --> {dst_state.name} : {event}" + + # Add guard and action if present + conditions = [] + if guard: + guard_name = guard.__name__ if callable(guard) else guard + conditions.append(f"[{guard_name}]") + if action: + action_name = action.__name__ if callable(action) else action + conditions.append(f"/ {action_name}") + + if conditions: + transition += "\\n" + " ".join(conditions) + + plant_uml.append(transition) + + plant_uml.append("@enduml") + plant_uml_text = "\n".join(plant_uml) + + try: + url = f"http://www.plantuml.com/plantuml/img/{deflate_and_encode(plant_uml_text)}" + headers = {"User-Agent": "Mozilla/5.0"} + request = Request(url, headers=headers) + + with urlopen(request) as response: + content = response.read() + + plt.imshow(imread(BytesIO(content), format="png")) + plt.axis("off") + plt.show() + except Exception as e: + print(f"Error showing PlantUML: {e}") + + return plant_uml_text diff --git a/docs/index_main.rst b/docs/index_main.rst index 75805d1184..65634f32e8 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -44,6 +44,7 @@ this graph shows GitHub star history of this project: modules/8_aerial_navigation/aerial_navigation modules/9_bipedal/bipedal modules/10_inverted_pendulum/inverted_pendulum + modules/13_mission_planning/mission_planning modules/11_utils/utils modules/12_appendix/appendix diff --git a/docs/modules/13_mission_planning/mission_planning_main.rst b/docs/modules/13_mission_planning/mission_planning_main.rst new file mode 100644 index 0000000000..385e62f68e --- /dev/null +++ b/docs/modules/13_mission_planning/mission_planning_main.rst @@ -0,0 +1,12 @@ +.. _`Mission Planning`: + +Mission Planning +================ + +Mission planning includes tools such as finite state machines and behavior trees used to describe robot behavior and high level task planning. + +.. toctree:: + :maxdepth: 2 + :caption: Contents + + state_machine/state_machine diff --git a/docs/modules/13_mission_planning/state_machine/robot_behavior_case.png b/docs/modules/13_mission_planning/state_machine/robot_behavior_case.png new file mode 100644 index 0000000000000000000000000000000000000000..fbc1369cbcd71f278a89d38adbcda6da4b737e36 GIT binary patch literal 28565 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 VMQeA>!#)E3qv`LZ-qN)T{cpp^WxxOc literal 0 HcmV?d00001 diff --git a/docs/modules/13_mission_planning/state_machine/state_machine_main.rst b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst new file mode 100644 index 0000000000..abaece1b11 --- /dev/null +++ b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst @@ -0,0 +1,74 @@ +State Machine +------------- + +A state machine is a model used to describe the transitions of an object between different states. It clearly shows how an object changes state based on events and may trigger corresponding actions. + +Core Concepts +~~~~~~~~~~~~~ + +- **State**: A distinct mode or condition of the system (e.g. "Idle", "Running"). Managed by State class with optional on_enter/on_exit callbacks +- **Event**: A trigger signal that may cause state transitions (e.g. "start", "stop") +- **Transition**: A state change path from source to destination state triggered by an event +- **Action**: An operation executed during transition (before entering new state) +- **Guard**: A precondition that must be satisfied to allow transition + +API +~~~ + +.. autoclass:: MissionPlanning.StateMachine.state_machine.StateMachine + :members: add_transition, process, register_state + :special-members: __init__ + +PlantUML Support +~~~~~~~~~~~~~~~~ + +The ``generate_plantuml()`` method creates diagrams showing: + +- Current state (marked with [*] arrow) +- All possible transitions +- Guard conditions in [brackets] +- Actions prefixed with / + +Example +~~~~~~~ + +state machine diagram: ++++++++++++++++++++++++ +.. image:: robot_behavior_case.png + +state transition table: ++++++++++++++++++++++++ +.. list-table:: State Transitions + :header-rows: 1 + :widths: 20 15 20 20 20 + + * - Source State + - Event + - Target State + - Guard + - Action + * - patrolling + - detect_task + - executing_task + - + - + * - executing_task + - task_complete + - patrolling + - + - reset_task + * - executing_task + - low_battery + - returning_to_base + - is_battery_low + - + * - returning_to_base + - reach_base + - charging + - + - + * - charging + - charge_complete + - patrolling + - + - \ No newline at end of file diff --git a/tests/test_state_machine.py b/tests/test_state_machine.py new file mode 100644 index 0000000000..e36a8120fd --- /dev/null +++ b/tests/test_state_machine.py @@ -0,0 +1,51 @@ +import conftest + +from MissionPlanning.StateMachine.state_machine import StateMachine + + +def test_transition(): + sm = StateMachine("state_machine") + sm.add_transition(src_state="idle", event="start", dst_state="running") + sm.set_current_state("idle") + sm.process("start") + assert sm.get_current_state().name == "running" + + +def test_guard(): + class Model: + def can_start(self): + return False + + sm = StateMachine("state_machine", Model()) + sm.add_transition( + src_state="idle", event="start", dst_state="running", guard="can_start" + ) + sm.set_current_state("idle") + sm.process("start") + assert sm.get_current_state().name == "idle" + + +def test_action(): + class Model: + def on_start(self): + self.start_called = True + + model = Model() + sm = StateMachine("state_machine", model) + sm.add_transition( + src_state="idle", event="start", dst_state="running", action="on_start" + ) + sm.set_current_state("idle") + sm.process("start") + assert model.start_called + + +def test_plantuml(): + sm = StateMachine("state_machine") + sm.add_transition(src_state="idle", event="start", dst_state="running") + sm.set_current_state("idle") + assert sm.generate_plantuml() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 346037a6e2362ed17870928ccf26992b60b0e54c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 07:26:47 +0900 Subject: [PATCH 345/414] build(deps): bump pytest from 8.3.4 to 8.3.5 in /requirements (#1178) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.4 to 8.3.5. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.4...8.3.5) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b439ea4266..b46a0e41f1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.2.3 scipy == 1.15.2 matplotlib == 3.10.0 cvxpy == 1.5.3 -pytest == 8.3.4 # For unit test +pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test ruff == 0.9.7 # For unit test From cd09abd5e00ca29d15f42c539121cf62751ecd52 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 12:21:33 +0900 Subject: [PATCH 346/414] build(deps): bump ruff from 0.9.7 to 0.9.9 in /requirements (#1179) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.7 to 0.9.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.7...0.9.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b46a0e41f1..3e2a1e7c7c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.7 # For unit test +ruff == 0.9.9 # For unit test From 5f3be9bccd6366493ea8d159ceeae26d55ed5250 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 12:52:57 +0900 Subject: [PATCH 347/414] build(deps): bump matplotlib from 3.10.0 to 3.10.1 in /requirements (#1181) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.10.0 to 3.10.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.10.0...v3.10.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3e2a1e7c7c..552bf8482b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.2.3 scipy == 1.15.2 -matplotlib == 3.10.0 +matplotlib == 3.10.1 cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test From 30a61add126e2c21c035d50a7a448ed8eb06afb0 Mon Sep 17 00:00:00 2001 From: Surya Singh <133056660+spnsingh@users.noreply.github.com> Date: Fri, 7 Mar 2025 09:01:37 -0500 Subject: [PATCH 348/414] bug: fix typo on line 6 of SpaceTimeAStar.py (#1182) * bug: fix typo on line 6 of SpaceTimeAStar.py * bug: removed extra line return on line 11 of SpaceTimeAStar.py --- PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py index 3b3613d695..a7aed41869 100644 --- a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py +++ b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py @@ -3,7 +3,7 @@ This script demonstrates the Space-time A* algorithm for path planning in a grid world with moving obstacles. This algorithm is different from normal 2D A* in one key way - the cost (often notated as g(n)) is the number of time steps it took to get to a given node, instead of the number of cells it has - traversed. This ensures the path is time-optimal, while respescting any dynamic obstacles in the environment. + traversed. This ensures the path is time-optimal, while respecting any dynamic obstacles in the environment. Reference: https://www.davidsilver.uk/wp-content/uploads/2020/03/coop-path-AIWisdom.pdf """ From fc160179c06cb4b57f821d83a9bdcf192379bd72 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Sat, 8 Mar 2025 18:26:23 +0800 Subject: [PATCH 349/414] feat: add behavior tree (#1177) * feat: add behavior tree * feat: add behavior tree test * feat: add behavior tree doc * feat: add behavior tree update --- MissionPlanning/BehaviorTree/behavior_tree.py | 690 ++++++++++++++++++ .../BehaviorTree/robot_behavior_case.py | 247 +++++++ .../BehaviorTree/robot_behavior_tree.xml | 57 ++ .../behavior_tree/behavior_tree_main.rst | 104 +++ .../behavior_tree/robot_behavior_case.svg | 22 + .../mission_planning_main.rst | 1 + tests/test_behavior_tree.py | 207 ++++++ 7 files changed, 1328 insertions(+) create mode 100644 MissionPlanning/BehaviorTree/behavior_tree.py create mode 100644 MissionPlanning/BehaviorTree/robot_behavior_case.py create mode 100644 MissionPlanning/BehaviorTree/robot_behavior_tree.xml create mode 100644 docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst create mode 100644 docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg create mode 100644 tests/test_behavior_tree.py diff --git a/MissionPlanning/BehaviorTree/behavior_tree.py b/MissionPlanning/BehaviorTree/behavior_tree.py new file mode 100644 index 0000000000..59f4c713f1 --- /dev/null +++ b/MissionPlanning/BehaviorTree/behavior_tree.py @@ -0,0 +1,690 @@ +""" +Behavior Tree + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Behavior Tree](https://en.wikipedia.org/wiki/Behavior_tree_(artificial_intelligence,_robotics_and_control)) +""" + +import time +import xml.etree.ElementTree as ET +from enum import Enum + + +class Status(Enum): + SUCCESS = "success" + FAILURE = "failure" + RUNNING = "running" + + +class NodeType(Enum): + CONTROL_NODE = "ControlNode" + ACTION_NODE = "ActionNode" + DECORATOR_NODE = "DecoratorNode" + + +class Node: + """ + Base class for all nodes in a behavior tree. + """ + + def __init__(self, name): + self.name = name + self.status = None + + def tick(self) -> Status: + """ + Tick the node. + + Returns: + Status: The status of the node. + """ + raise ValueError("Node is not implemented") + + def tick_and_set_status(self) -> Status: + """ + Tick the node and set the status. + + Returns: + Status: The status of the node. + """ + self.status = self.tick() + return self.status + + def reset(self): + """ + Reset the node. + """ + self.status = None + + def reset_children(self): + """ + Reset the children of the node. + """ + pass + + +class ControlNode(Node): + """ + Base class for all control nodes in a behavior tree. + + Control nodes manage the execution flow of their child nodes according to specific rules. + They typically have multiple children and determine which children to execute and in what order. + """ + + def __init__(self, name): + super().__init__(name) + self.children = [] + self.type = NodeType.CONTROL_NODE + + def not_set_children_raise_error(self): + if len(self.children) == 0: + raise ValueError("Children are not set") + + def reset_children(self): + for child in self.children: + child.reset() + + +class SequenceNode(ControlNode): + """ + Executes child nodes in sequence until one fails or all succeed. + + Returns: + - Returns FAILURE if any child returns FAILURE + - Returns SUCCESS when all children have succeeded + - Returns RUNNING when a child is still running or when moving to the next child + + Example: + .. code-block:: xml + + + + + + """ + + def __init__(self, name): + super().__init__(name) + self.current_child_index = 0 + + def tick(self) -> Status: + self.not_set_children_raise_error() + + if self.current_child_index >= len(self.children): + self.reset_children() + return Status.SUCCESS + status = self.children[self.current_child_index].tick_and_set_status() + if status == Status.FAILURE: + self.reset_children() + return Status.FAILURE + elif status == Status.SUCCESS: + self.current_child_index += 1 + return Status.RUNNING + elif status == Status.RUNNING: + return Status.RUNNING + else: + raise ValueError("Unknown status") + + +class SelectorNode(ControlNode): + """ + Executes child nodes in sequence until one succeeds or all fail. + + Returns: + - Returns SUCCESS if any child returns SUCCESS + - Returns FAILURE when all children have failed + - Returns RUNNING when a child is still running or when moving to the next child + + Examples: + .. code-block:: xml + + + + + + """ + + def __init__(self, name): + super().__init__(name) + self.current_child_index = 0 + + def tick(self) -> Status: + self.not_set_children_raise_error() + + if self.current_child_index >= len(self.children): + self.reset_children() + return Status.FAILURE + status = self.children[self.current_child_index].tick_and_set_status() + if status == Status.SUCCESS: + self.reset_children() + return Status.SUCCESS + elif status == Status.FAILURE: + self.current_child_index += 1 + return Status.RUNNING + elif status == Status.RUNNING: + return Status.RUNNING + else: + raise ValueError("Unknown status") + + +class WhileDoElseNode(ControlNode): + """ + Conditional execution node with three parts: condition, do, and optional else. + + Returns: + First executes the condition node (child[0]) + If condition succeeds, executes do node (child[1]) and returns RUNNING + If condition fails, executes else node (child[2]) if present and returns result of else node + If condition fails and there is no else node, returns SUCCESS + + Example: + .. code-block:: xml + + + + + + + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + if len(self.children) != 3 and len(self.children) != 2: + raise ValueError("WhileDoElseNode must have exactly 3 or 2 children") + + condition_node = self.children[0] + do_node = self.children[1] + else_node = self.children[2] if len(self.children) == 3 else None + + condition_status = condition_node.tick_and_set_status() + if condition_status == Status.SUCCESS: + do_node.tick_and_set_status() + return Status.RUNNING + elif condition_status == Status.FAILURE: + if else_node is not None: + else_status = else_node.tick_and_set_status() + if else_status == Status.SUCCESS: + self.reset_children() + return Status.SUCCESS + elif else_status == Status.FAILURE: + self.reset_children() + return Status.FAILURE + elif else_status == Status.RUNNING: + return Status.RUNNING + else: + raise ValueError("Unknown status") + else: + self.reset_children() + return Status.SUCCESS + else: + raise ValueError("Unknown status") + + +class ActionNode(Node): + """ + Base class for all action nodes in a behavior tree. + + Action nodes are responsible for performing specific tasks or actions. + They do not have children and are typically used to execute logic or operations. + """ + + def __init__(self, name): + super().__init__(name) + self.type = NodeType.ACTION_NODE + + +class SleepNode(ActionNode): + """ + Sleep node that sleeps for a specified duration. + + Returns: + Returns SUCCESS after the specified duration has passed + Returns RUNNING if the duration has not yet passed + + Example: + .. code-block:: xml + + + """ + + def __init__(self, name, duration): + super().__init__(name) + self.duration = duration + self.start_time = None + + def tick(self) -> Status: + if self.start_time is None: + self.start_time = time.time() + if time.time() - self.start_time > self.duration: + return Status.SUCCESS + return Status.RUNNING + + +class EchoNode(ActionNode): + """ + Echo node that prints a message to the console. + + Returns: + Returns SUCCESS after the message has been printed + + Example: + .. code-block:: xml + + + """ + + def __init__(self, name, message): + super().__init__(name) + self.message = message + + def tick(self) -> Status: + print(self.name, self.message) + return Status.SUCCESS + + +class DecoratorNode(Node): + """ + Base class for all decorator nodes in a behavior tree. + + Decorator nodes modify the behavior of their child node. + They must have a single child and can alter the status of the child node. + """ + + def __init__(self, name): + super().__init__(name) + self.type = NodeType.DECORATOR_NODE + self.child = None + + def not_set_child_raise_error(self): + if self.child is None: + raise ValueError("Child is not set") + + def reset_children(self): + self.child.reset() + + +class InverterNode(DecoratorNode): + """ + Inverter node that inverts the status of its child node. + + Returns: + - Returns SUCCESS if the child returns FAILURE + - Returns FAILURE if the child returns SUCCESS + - Returns RUNNING if the child returns RUNNING + + Examples: + .. code-block:: xml + + + + + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + self.not_set_child_raise_error() + status = self.child.tick_and_set_status() + return Status.SUCCESS if status == Status.FAILURE else Status.FAILURE + + +class TimeoutNode(DecoratorNode): + """ + Timeout node that fails if the child node takes too long to execute + + Returns: + - FAILURE: If the timeout duration has been exceeded + - Child's status: Otherwise, passes through the status of the child node + + Example: + .. code-block:: xml + + + + + """ + + def __init__(self, name, timeout): + super().__init__(name) + self.timeout = timeout + self.start_time = None + + def tick(self) -> Status: + self.not_set_child_raise_error() + if self.start_time is None: + self.start_time = time.time() + if time.time() - self.start_time > self.timeout: + return Status.FAILURE + print(f"{self.name} is running") + return self.child.tick_and_set_status() + + +class DelayNode(DecoratorNode): + """ + Delay node that delays the execution of its child node for a specified duration. + + Returns: + - Returns RUNNING if the duration has not yet passed + - Returns child's status after the duration has passed + + Example: + .. code-block:: xml + + + + + """ + + def __init__(self, name, delay): + super().__init__(name) + self.delay = delay + self.start_time = None + + def tick(self) -> Status: + self.not_set_child_raise_error() + if self.start_time is None: + self.start_time = time.time() + if time.time() - self.start_time > self.delay: + return self.child.tick_and_set_status() + return Status.RUNNING + + +class ForceSuccessNode(DecoratorNode): + """ + ForceSuccess node that always returns SUCCESS. + + Returns: + - Returns RUNNING if the child returns RUNNING + - Returns SUCCESS if the child returns SUCCESS or FAILURE + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + self.not_set_child_raise_error() + status = self.child.tick_and_set_status() + if status == Status.FAILURE: + return Status.SUCCESS + return status + + +class ForceFailureNode(DecoratorNode): + """ + ForceFailure node that always returns FAILURE. + + Returns: + - Returns RUNNING if the child returns RUNNING + - Returns FAILURE if the child returns SUCCESS or FAILURE + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + self.not_set_child_raise_error() + status = self.child.tick_and_set_status() + if status == Status.SUCCESS: + return Status.FAILURE + return status + + +class BehaviorTree: + """ + Behavior tree class that manages the execution of a behavior tree. + """ + + def __init__(self, root): + self.root = root + + def tick(self): + """ + Tick once on the behavior tree. + """ + self.root.tick_and_set_status() + + def reset(self): + """ + Reset the behavior tree. + """ + self.root.reset() + + def tick_while_running(self, interval=None, enable_print=True): + """ + Tick the behavior tree while it is running. + + Args: + interval (float, optional): The interval between ticks. Defaults to None. + enable_print (bool, optional): Whether to print the behavior tree. Defaults to True. + """ + while self.root.tick_and_set_status() == Status.RUNNING: + if enable_print: + self.print_tree() + if interval is not None: + time.sleep(interval) + if enable_print: + self.print_tree() + + def to_text(self, root, indent=0): + """ + Recursively convert the behavior tree to a text representation. + """ + current_text = "" + if root.status == Status.RUNNING: + # yellow + current_text = "\033[93m" + root.name + "\033[0m" + elif root.status == Status.SUCCESS: + # green + current_text = "\033[92m" + root.name + "\033[0m" + elif root.status == Status.FAILURE: + # red + current_text = "\033[91m" + root.name + "\033[0m" + else: + current_text = root.name + if root.type == NodeType.CONTROL_NODE: + current_text = " " * indent + "[" + current_text + "]\n" + for child in root.children: + current_text += self.to_text(child, indent + 2) + elif root.type == NodeType.DECORATOR_NODE: + current_text = " " * indent + "(" + current_text + ")\n" + current_text += self.to_text(root.child, indent + 2) + elif root.type == NodeType.ACTION_NODE: + current_text = " " * indent + "<" + current_text + ">\n" + return current_text + + def print_tree(self): + """ + Print the behavior tree. + + Node print format: + Action: + Decorator: (Decorator) + Control: [Control] + + Node status colors: + Yellow: RUNNING + Green: SUCCESS + Red: FAILURE + """ + text = self.to_text(self.root) + text = text.strip() + print("\033[94m" + "Behavior Tree" + "\033[0m") + print(text) + print("\033[94m" + "Behavior Tree" + "\033[0m") + + +class BehaviorTreeFactory: + """ + Factory class for creating behavior trees from XML strings. + """ + + def __init__(self): + self.node_builders = {} + # Control nodes + self.register_node_builder( + "Sequence", + lambda node: SequenceNode(node.attrib.get("name", SequenceNode.__name__)), + ) + self.register_node_builder( + "Selector", + lambda node: SelectorNode(node.attrib.get("name", SelectorNode.__name__)), + ) + self.register_node_builder( + "WhileDoElse", + lambda node: WhileDoElseNode( + node.attrib.get("name", WhileDoElseNode.__name__) + ), + ) + # Decorator nodes + self.register_node_builder( + "Inverter", + lambda node: InverterNode(node.attrib.get("name", InverterNode.__name__)), + ) + self.register_node_builder( + "Timeout", + lambda node: TimeoutNode( + node.attrib.get("name", SelectorNode.__name__), + float(node.attrib["sec"]), + ), + ) + self.register_node_builder( + "Delay", + lambda node: DelayNode( + node.attrib.get("name", DelayNode.__name__), + float(node.attrib["sec"]), + ), + ) + self.register_node_builder( + "ForceSuccess", + lambda node: ForceSuccessNode( + node.attrib.get("name", ForceSuccessNode.__name__) + ), + ) + self.register_node_builder( + "ForceFailure", + lambda node: ForceFailureNode( + node.attrib.get("name", ForceFailureNode.__name__) + ), + ) + # Action nodes + self.register_node_builder( + "Sleep", + lambda node: SleepNode( + node.attrib.get("name", SleepNode.__name__), + float(node.attrib["sec"]), + ), + ) + self.register_node_builder( + "Echo", + lambda node: EchoNode( + node.attrib.get("name", EchoNode.__name__), + node.attrib["message"], + ), + ) + + def register_node_builder(self, node_name, builder): + """ + Register a builder for a node + + Args: + node_name (str): The name of the node. + builder (function): The builder function. + + Example: + .. code-block:: python + + factory = BehaviorTreeFactory() + factory.register_node_builder( + "MyNode", + lambda node: MyNode( + node.attrib.get("name", MyNode.__name__), + node.attrib["my_param"], + ), + ) + """ + self.node_builders[node_name] = builder + + def build_node(self, node): + """ + Build a node from an XML element. + + Args: + node (Element): The XML element to build the node from. + + Returns: + BehaviorTree Node: the built node + """ + if node.tag in self.node_builders: + root = self.node_builders[node.tag](node) + if root.type == NodeType.CONTROL_NODE: + if len(node) <= 0: + raise ValueError(f"{root.name} Control node must have children") + for child in node: + root.children.append(self.build_node(child)) + elif root.type == NodeType.DECORATOR_NODE: + if len(node) != 1: + raise ValueError( + f"{root.name} Decorator node must have exactly one child" + ) + root.child = self.build_node(node[0]) + elif root.type == NodeType.ACTION_NODE: + if len(node) != 0: + raise ValueError(f"{root.name} Action node must have no children") + return root + else: + raise ValueError(f"Unknown node type: {node.tag}") + + def build_tree(self, xml_string): + """ + Build a behavior tree from an XML string. + + Args: + xml_string (str): The XML string containing the behavior tree. + + Returns: + BehaviorTree: The behavior tree. + """ + xml_tree = ET.fromstring(xml_string) + root = self.build_node(xml_tree) + return BehaviorTree(root) + + def build_tree_from_file(self, file_path): + """ + Build a behavior tree from a file. + + Args: + file_path (str): The path to the file containing the behavior tree. + + Returns: + BehaviorTree: The behavior tree. + """ + with open(file_path) as file: + xml_string = file.read() + return self.build_tree(xml_string) + + +xml_string = """ + + + + + + + + """ + + +def main(): + factory = BehaviorTreeFactory() + tree = factory.build_tree(xml_string) + tree.tick_while_running() + + +if __name__ == "__main__": + main() diff --git a/MissionPlanning/BehaviorTree/robot_behavior_case.py b/MissionPlanning/BehaviorTree/robot_behavior_case.py new file mode 100644 index 0000000000..6c39aa76b2 --- /dev/null +++ b/MissionPlanning/BehaviorTree/robot_behavior_case.py @@ -0,0 +1,247 @@ +""" +Robot Behavior Tree Case + +This file demonstrates how to use a behavior tree to control robot behavior. +""" + +from behavior_tree import ( + BehaviorTreeFactory, + Status, + ActionNode, +) +import time +import random +import os + + +class CheckBatteryNode(ActionNode): + """ + Node to check robot battery level + + If battery level is below threshold, returns FAILURE, otherwise returns SUCCESS + """ + + def __init__(self, name, threshold=20): + super().__init__(name) + self.threshold = threshold + self.battery_level = 100 # Initial battery level is 100% + + def tick(self): + # Simulate battery level decreasing + self.battery_level -= random.randint(1, 5) + print(f"Current battery level: {self.battery_level}%") + + if self.battery_level <= self.threshold: + return Status.FAILURE + return Status.SUCCESS + + +class ChargeBatteryNode(ActionNode): + """ + Node to charge the robot's battery + """ + + def __init__(self, name, charge_rate=10): + super().__init__(name) + self.charge_rate = charge_rate + self.charging_time = 0 + + def tick(self): + # Simulate charging process + if self.charging_time == 0: + print("Starting to charge...") + + self.charging_time += 1 + charge_amount = self.charge_rate * self.charging_time + + if charge_amount >= 100: + print("Charging complete! Battery level: 100%") + self.charging_time = 0 + return Status.SUCCESS + else: + print(f"Charging in progress... Battery level: {min(charge_amount, 100)}%") + return Status.RUNNING + + +class MoveToPositionNode(ActionNode): + """ + Node to move to a specified position + """ + + def __init__(self, name, position, move_duration=2): + super().__init__(name) + self.position = position + self.move_duration = move_duration + self.start_time = None + + def tick(self): + if self.start_time is None: + self.start_time = time.time() + print(f"Starting movement to position {self.position}") + + elapsed_time = time.time() - self.start_time + + if elapsed_time >= self.move_duration: + print(f"Arrived at position {self.position}") + self.start_time = None + return Status.SUCCESS + else: + print( + f"Moving to position {self.position}... {int(elapsed_time / self.move_duration * 100)}% complete" + ) + return Status.RUNNING + + +class DetectObstacleNode(ActionNode): + """ + Node to detect obstacles + """ + + def __init__(self, name, obstacle_probability=0.3): + super().__init__(name) + self.obstacle_probability = obstacle_probability + + def tick(self): + # Use random probability to simulate obstacle detection + if random.random() < self.obstacle_probability: + print("Obstacle detected!") + return Status.SUCCESS + else: + print("No obstacle detected") + return Status.FAILURE + + +class AvoidObstacleNode(ActionNode): + """ + Node to avoid obstacles + """ + + def __init__(self, name, avoid_duration=1.5): + super().__init__(name) + self.avoid_duration = avoid_duration + self.start_time = None + + def tick(self): + if self.start_time is None: + self.start_time = time.time() + print("Starting obstacle avoidance...") + + elapsed_time = time.time() - self.start_time + + if elapsed_time >= self.avoid_duration: + print("Obstacle avoidance complete") + self.start_time = None + return Status.SUCCESS + else: + print("Avoiding obstacle...") + return Status.RUNNING + + +class PerformTaskNode(ActionNode): + """ + Node to perform a specific task + """ + + def __init__(self, name, task_name, task_duration=3): + super().__init__(name) + self.task_name = task_name + self.task_duration = task_duration + self.start_time = None + + def tick(self): + if self.start_time is None: + self.start_time = time.time() + print(f"Starting task: {self.task_name}") + + elapsed_time = time.time() - self.start_time + + if elapsed_time >= self.task_duration: + print(f"Task complete: {self.task_name}") + self.start_time = None + return Status.SUCCESS + else: + print( + f"Performing task: {self.task_name}... {int(elapsed_time / self.task_duration * 100)}% complete" + ) + return Status.RUNNING + + +def create_robot_behavior_tree(): + """ + Create robot behavior tree + """ + + factory = BehaviorTreeFactory() + + # Register custom nodes + factory.register_node_builder( + "CheckBattery", + lambda node: CheckBatteryNode( + node.attrib.get("name", "CheckBattery"), + int(node.attrib.get("threshold", "20")), + ), + ) + + factory.register_node_builder( + "ChargeBattery", + lambda node: ChargeBatteryNode( + node.attrib.get("name", "ChargeBattery"), + int(node.attrib.get("charge_rate", "10")), + ), + ) + + factory.register_node_builder( + "MoveToPosition", + lambda node: MoveToPositionNode( + node.attrib.get("name", "MoveToPosition"), + node.attrib.get("position", "Unknown Position"), + float(node.attrib.get("move_duration", "2")), + ), + ) + + factory.register_node_builder( + "DetectObstacle", + lambda node: DetectObstacleNode( + node.attrib.get("name", "DetectObstacle"), + float(node.attrib.get("obstacle_probability", "0.3")), + ), + ) + + factory.register_node_builder( + "AvoidObstacle", + lambda node: AvoidObstacleNode( + node.attrib.get("name", "AvoidObstacle"), + float(node.attrib.get("avoid_duration", "1.5")), + ), + ) + + factory.register_node_builder( + "PerformTask", + lambda node: PerformTaskNode( + node.attrib.get("name", "PerformTask"), + node.attrib.get("task_name", "Unknown Task"), + float(node.attrib.get("task_duration", "3")), + ), + ) + # Read XML from file + xml_path = os.path.join(os.path.dirname(__file__), "robot_behavior_tree.xml") + return factory.build_tree_from_file(xml_path) + + +def main(): + """ + Main function: Create and run the robot behavior tree + """ + print("Creating robot behavior tree...") + tree = create_robot_behavior_tree() + + print("\nStarting robot behavior tree execution...\n") + # Run for a period of time or until completion + + tree.tick_while_running(interval=0.01) + + print("\nBehavior tree execution complete!") + + +if __name__ == "__main__": + main() diff --git a/MissionPlanning/BehaviorTree/robot_behavior_tree.xml b/MissionPlanning/BehaviorTree/robot_behavior_tree.xml new file mode 100644 index 0000000000..0bca76a3ff --- /dev/null +++ b/MissionPlanning/BehaviorTree/robot_behavior_tree.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst new file mode 100644 index 0000000000..ae3e16da81 --- /dev/null +++ b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst @@ -0,0 +1,104 @@ +Behavior Tree +------------- + +Behavior Tree is a modular, hierarchical decision model that is widely used in robot control, and game development. +It present some similarities to hierarchical state machines with the key difference that the main building block of a behavior is a task rather than a state. +Behavior Tree have been shown to generalize several other control architectures (https://ieeexplore.ieee.org/document/7790863) + +Core Concepts +~~~~~~~~~~~~~ + +Control Node +++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ControlNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.SequenceNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.SelectorNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.WhileDoElseNode + +Action Node +++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ActionNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.EchoNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.SleepNode + +Decorator Node +++++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.DecoratorNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.InverterNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.TimeoutNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.DelayNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ForceSuccessNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ForceFailureNode + +Behavior Tree Factory ++++++++++++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.BehaviorTreeFactory + :members: + +Behavior Tree ++++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.BehaviorTree + :members: + +Example +~~~~~~~ + +Visualize the behavior tree by `xml-tree-visual `_. + +.. image:: ./robot_behavior_case.svg + +Print the behavior tree + +.. code-block:: text + + Behavior Tree + [Robot Main Controller] + [Battery Management] + (Low Battery Detection) + + + + [Patrol Task] + + [Move to Position A] + + [Obstacle Handling A] + [Obstacle Present] + + + + + [Move to Position B] + (Short Wait) + + + (Limited Time Obstacle Handling) + [Obstacle Present] + + + + [Conditional Move to C] + + [Perform Position C Task] + + (Ensure Completion) + + + + + Behavior Tree diff --git a/docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg b/docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg new file mode 100644 index 0000000000..a3d43aed52 --- /dev/null +++ b/docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg @@ -0,0 +1,22 @@ +Selectorname: Robot Main ControllerSequencename: Battery ManagementSequencename: Patrol TaskInvertername: Low Battery DetectionEchoname: Low Battery Warningmessage: Battery level low!Charging neededChargeBatteryname: Charge Batterycharge_rate: 20Echoname: Start Taskmessage: Starting patrol taskSequencename: Move to Position ASequencename: Move to Position BWhileDoElsename: Conditional Move to CEchoname: Complete Patrolmessage: Patrol taskcompleted, returning tocharging stationMoveToPositionname: Return to ChargingStationposition: Charging Stationmove_duration: 4CheckBatteryname: Check Batterythreshold: 30MoveToPositionname: Move to Aposition: Amove_duration: 2Selectorname: Obstacle Handling APerformTaskname: Position A Tasktask_name: Check Device Statustask_duration: 2Delayname: Short Waitsec: 1MoveToPositionname: Move to Bposition: Bmove_duration: 3Timeoutname: Limited Time ObstacleHandlingsec: 2PerformTaskname: Position B Tasktask_name: Data Collectiontask_duration: 2.5CheckBatteryname: Check Sufficient Batterythreshold: 50Sequencename: Perform Position C TaskEchoname: Skip Position Cmessage: Insufficient power,skipping position C taskSequencename: Obstacle PresentEchoname: No Obstaclemessage: Path clearEchoname: Prepare Movementmessage: Preparing to move tonext positionSequencename: Obstacle PresentMoveToPositionname: Move to Cposition: Cmove_duration: 2.5ForceSuccessname: Ensure CompletionDetectObstaclename: Detect Obstacleobstacle_probability: 0.3AvoidObstaclename: Avoid Obstacleavoid_duration: 1.5DetectObstaclename: Detect Obstacleobstacle_probability: 0.4AvoidObstaclename: Avoid Obstacleavoid_duration: 1.8PerformTaskname: Position C Tasktask_name: EnvironmentMonitoringtask_duration: 2 \ No newline at end of file diff --git a/docs/modules/13_mission_planning/mission_planning_main.rst b/docs/modules/13_mission_planning/mission_planning_main.rst index 385e62f68e..c35eacd8d5 100644 --- a/docs/modules/13_mission_planning/mission_planning_main.rst +++ b/docs/modules/13_mission_planning/mission_planning_main.rst @@ -10,3 +10,4 @@ Mission planning includes tools such as finite state machines and behavior trees :caption: Contents state_machine/state_machine + behavior_tree/behavior_tree diff --git a/tests/test_behavior_tree.py b/tests/test_behavior_tree.py new file mode 100644 index 0000000000..0898690448 --- /dev/null +++ b/tests/test_behavior_tree.py @@ -0,0 +1,207 @@ +import pytest +import conftest + +from MissionPlanning.BehaviorTree.behavior_tree import ( + BehaviorTreeFactory, + Status, + ActionNode, +) + + +def test_sequence_node1(): + xml_string = """ + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.SUCCESS + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + bt.tick() + bt.tick() + assert bt.root.status == Status.FAILURE + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_sequence_node2(): + xml_string = """ + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick_while_running() + assert bt.root.status == Status.SUCCESS + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_selector_node1(): + xml_string = """ + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.FAILURE + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + bt.tick() + assert bt.root.status == Status.SUCCESS + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_selector_node2(): + xml_string = """ + + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick_while_running() + assert bt.root.status == Status.FAILURE + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + + +def test_while_do_else_node(): + xml_string = """ + + + + + + """ + + class CountNode(ActionNode): + def __init__(self, name, count_threshold): + super().__init__(name) + self.count = 0 + self.count_threshold = count_threshold + + def tick(self): + self.count += 1 + if self.count >= self.count_threshold: + return Status.FAILURE + else: + return Status.SUCCESS + + bt_factory = BehaviorTreeFactory() + bt_factory.register_node_builder( + "Count", + lambda node: CountNode( + node.attrib.get("name", CountNode.__name__), + int(node.attrib["count_threshold"]), + ), + ) + bt = bt_factory.build_tree(xml_string) + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.SUCCESS + assert bt.root.children[1].status is Status.SUCCESS + assert bt.root.children[2].status is None + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.SUCCESS + assert bt.root.children[1].status is Status.SUCCESS + assert bt.root.children[2].status is None + bt.tick() + assert bt.root.status == Status.SUCCESS + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_node_children(): + # ControlNode Must have children + xml_string = """ + + + """ + bt_factory = BehaviorTreeFactory() + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # DecoratorNode Must have child + xml_string = """ + + + """ + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # DecoratorNode Must have only one child + xml_string = """ + + + + + """ + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # ActionNode Must have no children + xml_string = """ + + + + """ + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # WhileDoElse Must have exactly 2 or 3 children + xml_string = """ + + + + """ + with pytest.raises(ValueError): + bt = bt_factory.build_tree(xml_string) + bt.tick() + + xml_string = """ + + + + + + + """ + with pytest.raises(ValueError): + bt = bt_factory.build_tree(xml_string) + bt.tick() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From e7f893ef1aa503df04c83ec6355d18dd05d36394 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 9 Mar 2025 20:21:24 +0900 Subject: [PATCH 350/414] feat: add linkcode_resolve function for enhanced documentation linking (#1185) * feat: add linkcode_resolve function for enhanced documentation linking * feat: enhance documentation linking with linkcode and relative path resolution --- docs/conf.py | 47 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 919fa9ac76..eeabab11b1 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -13,6 +13,8 @@ # import os import sys +from pathlib import Path + sys.path.insert(0, os.path.abspath('../')) @@ -41,7 +43,7 @@ 'matplotlib.sphinxext.plot_directive', 'sphinx.ext.autodoc', 'sphinx.ext.mathjax', - 'sphinx.ext.viewcode', + 'sphinx.ext.linkcode', 'sphinx.ext.napoleon', 'sphinx.ext.imgconverter', 'IPython.sphinxext.ipython_console_highlighting', @@ -184,4 +186,45 @@ ] -# -- Extension configuration ------------------------------------------------- +# -- linkcode setting ------------------------------------------------- + +import inspect +import os +import sys +import functools + +GITHUB_REPO = "https://github.com/AtsushiSakai/PythonRobotics" +GITHUB_BRANCH = "master" + + +def linkcode_resolve(domain, info): + if domain != "py": + return None + + modname = info["module"] + fullname = info["fullname"] + + try: + module = __import__(modname, fromlist=[fullname]) + obj = functools.reduce(getattr, fullname.split("."), module) + except (ImportError, AttributeError): + return None + + try: + srcfile = inspect.getsourcefile(obj) + srcfile = get_relative_path_from_parent(srcfile, "PythonRobotics") + lineno = inspect.getsourcelines(obj)[1] + except Exception: + return None + + return f"{GITHUB_REPO}/blob/{GITHUB_BRANCH}/{srcfile}#L{lineno}" + + +def get_relative_path_from_parent(file_path: str, parent_dir: str): + path = Path(file_path).resolve() + + try: + parent_path = next(p for p in path.parents if p.name == parent_dir) + return str(path.relative_to(parent_path)) + except StopIteration: + raise ValueError(f"Parent directory '{parent_dir}' not found in {file_path}") From 73ebcd85dc967dbb160e29ee4c529b7a64f11e2b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 12 Mar 2025 21:26:09 +0900 Subject: [PATCH 351/414] build(deps): bump ruff from 0.9.9 to 0.9.10 in /requirements (#1186) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.9 to 0.9.10. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.9...0.9.10) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 552bf8482b..cf6dea3a46 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.9 # For unit test +ruff == 0.9.10 # For unit test From 1308e76424723eb68a4a864117e60c0bbd054df1 Mon Sep 17 00:00:00 2001 From: Jonathan Schwartz Date: Thu, 13 Mar 2025 10:24:53 -0400 Subject: [PATCH 352/414] Add expanded node set to SpaceTime AStar (#1183) * speed up spacetime astar * forgot to include hash impl on Position * add condition to test on node expansions * remove heuristic from Node __hash__ impl * update rst with note about optimization --- .../GridWithDynamicObstacles.py | 3 ++ .../TimeBasedPathPlanning/SpaceTimeAStar.py | 51 +++++++++++++------ .../time_based_grid_search_main.rst | 17 +++++++ tests/test_space_time_astar.py | 1 + 4 files changed, 57 insertions(+), 15 deletions(-) diff --git a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py index 7b0190d023..7416ff2f08 100644 --- a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py +++ b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py @@ -30,6 +30,9 @@ def __sub__(self, other): f"Subtraction not supported for Position and {type(other)}" ) + def __hash__(self): + return hash((self.x, self.y)) + class ObstacleArrangement(Enum): # Random obstacle positions and movements diff --git a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py index a7aed41869..c4e2802d37 100644 --- a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py +++ b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py @@ -20,7 +20,7 @@ import random from dataclasses import dataclass from functools import total_ordering - +import time # Seed randomness for reproducibility RANDOM_SEED = 50 @@ -48,11 +48,17 @@ def __lt__(self, other: object): return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") return (self.time + self.heuristic) < (other.time + other.heuristic) + """ + Note: cost and heuristic are not included in eq or hash, since they will always be the same + for a given (position, time) pair. Including either cost or heuristic would be redundant. + """ def __eq__(self, other: object): if not isinstance(other, Node): return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") return self.position == other.position and self.time == other.time + def __hash__(self): + return hash((self.position, self.time)) class NodePath: path: list[Node] @@ -86,6 +92,8 @@ class SpaceTimeAStar: grid: Grid start: Position goal: Position + # Used to evaluate solutions + expanded_node_count: int = -1 def __init__(self, grid: Grid, start: Position, goal: Position): self.grid = grid @@ -98,7 +106,8 @@ def plan(self, verbose: bool = False) -> NodePath: open_set, Node(self.start, 0, self.calculate_heuristic(self.start), -1) ) - expanded_set: list[Node] = [] + expanded_list: list[Node] = [] + expanded_set: set[Node] = set() while open_set: expanded_node: Node = heapq.heappop(open_set) if verbose: @@ -110,23 +119,25 @@ def plan(self, verbose: bool = False) -> NodePath: continue if expanded_node.position == self.goal: - print(f"Found path to goal after {len(expanded_set)} expansions") + print(f"Found path to goal after {len(expanded_list)} expansions") path = [] path_walker: Node = expanded_node while True: path.append(path_walker) if path_walker.parent_index == -1: break - path_walker = expanded_set[path_walker.parent_index] + path_walker = expanded_list[path_walker.parent_index] # reverse path so it goes start -> goal path.reverse() + self.expanded_node_count = len(expanded_set) return NodePath(path) - expanded_idx = len(expanded_set) - expanded_set.append(expanded_node) + expanded_idx = len(expanded_list) + expanded_list.append(expanded_node) + expanded_set.add(expanded_node) - for child in self.generate_successors(expanded_node, expanded_idx, verbose): + for child in self.generate_successors(expanded_node, expanded_idx, verbose, expanded_set): heapq.heappush(open_set, child) raise Exception("No path found") @@ -135,7 +146,7 @@ def plan(self, verbose: bool = False) -> NodePath: Generate possible successors of the provided `parent_node` """ def generate_successors( - self, parent_node: Node, parent_node_idx: int, verbose: bool + self, parent_node: Node, parent_node_idx: int, verbose: bool, expanded_set: set[Node] ) -> Generator[Node, None, None]: diffs = [ Position(0, 0), @@ -146,13 +157,17 @@ def generate_successors( ] for diff in diffs: new_pos = parent_node.position + diff + new_node = Node( + new_pos, + parent_node.time + 1, + self.calculate_heuristic(new_pos), + parent_node_idx, + ) + + if new_node in expanded_set: + continue + if self.grid.valid_position(new_pos, parent_node.time + 1): - new_node = Node( - new_pos, - parent_node.time + 1, - self.calculate_heuristic(new_pos), - parent_node_idx, - ) if verbose: print("\tNew successor node: ", new_node) yield new_node @@ -166,9 +181,12 @@ def calculate_heuristic(self, position) -> int: verbose = False def main(): - start = Position(1, 11) + start = Position(1, 5) goal = Position(19, 19) grid_side_length = 21 + + start_time = time.time() + grid = Grid( np.array([grid_side_length, grid_side_length]), num_obstacles=40, @@ -179,6 +197,9 @@ def main(): planner = SpaceTimeAStar(grid, start, goal) path = planner.plan(verbose) + runtime = time.time() - start_time + print(f"Planning took: {runtime:.5f} seconds") + if verbose: print(f"Path: {path}") diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst index 0c26badec7..48dc1289c2 100644 --- a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -16,6 +16,23 @@ Using a time-based cost and heuristic ensures the path found is optimal in terms The cost is the amount of time it takes to reach a given node, and the heuristic is the minimum amount of time it could take to reach the goal from that node, disregarding all obstacles. For a simple scenario where the robot can move 1 cell per time step and stop and go as it pleases, the heuristic for time is equivalent to the heuristic for distance. +One optimization that was added in `this PR `__ was to add an expanded set to the algorithm. The algorithm will not expand nodes that are already in that set. This greatly reduces the number of node expansions needed to find a path, since no duplicates are expanded. It also helps to reduce the amount of memory the algorithm uses. + +Before:: + + Found path to goal after 204490 expansions + Planning took: 1.72464 seconds + Memory usage (RSS): 68.19 MB + + +After:: + + Found path to goal after 2348 expansions + Planning took: 0.01550 seconds + Memory usage (RSS): 64.85 MB + +When starting at (1, 11) in the structured obstacle arrangement (second of the two gifs above). + References: ~~~~~~~~~~~ diff --git a/tests/test_space_time_astar.py b/tests/test_space_time_astar.py index 5290738eb4..390c7732dc 100644 --- a/tests/test_space_time_astar.py +++ b/tests/test_space_time_astar.py @@ -28,6 +28,7 @@ def test_1(): # path should end at the goal assert path.path[-1].position == goal + assert planner.expanded_node_count < 1000 if __name__ == "__main__": conftest.run_this_test(__file__) From 41187d67b11f06265431b87dcf0b9da679345249 Mon Sep 17 00:00:00 2001 From: Zichao Yang Date: Sun, 16 Mar 2025 21:40:11 +0800 Subject: [PATCH 353/414] fix "ModuleNotFoundError: No module named 'utils'" (#1188) --- .../lqr_speed_steer_control/lqr_speed_steer_control.py | 4 ++-- PathTracking/lqr_steer_control/lqr_steer_control.py | 4 ++-- PathTracking/rear_wheel_feedback/rear_wheel_feedback.py | 7 +++++-- PathTracking/stanley_controller/stanley_controller.py | 4 ++-- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py index d85fa98a84..5831d02d30 100644 --- a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py +++ b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py @@ -11,9 +11,9 @@ import numpy as np import scipy.linalg as la import pathlib -from utils.angle import angle_mod -sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod from PathPlanning.CubicSpline import cubic_spline_planner # === Parameters ===== diff --git a/PathTracking/lqr_steer_control/lqr_steer_control.py b/PathTracking/lqr_steer_control/lqr_steer_control.py index 461d6e3722..3c066917ff 100644 --- a/PathTracking/lqr_steer_control/lqr_steer_control.py +++ b/PathTracking/lqr_steer_control/lqr_steer_control.py @@ -11,9 +11,9 @@ import numpy as np import sys import pathlib -from utils.angle import angle_mod -sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod from PathPlanning.CubicSpline import cubic_spline_planner Kp = 1.0 # speed proportional gain diff --git a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py index 1702bd47dd..fd04fb6d17 100644 --- a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py +++ b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py @@ -8,11 +8,14 @@ import matplotlib.pyplot as plt import math import numpy as np -from utils.angle import angle_mod - +import sys +import pathlib from scipy import interpolate from scipy import optimize +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod + Kp = 1.0 # speed proportional gain # steering control parameter KTH = 1.0 diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_controller/stanley_controller.py index 08aa049395..bc98175f17 100644 --- a/PathTracking/stanley_controller/stanley_controller.py +++ b/PathTracking/stanley_controller/stanley_controller.py @@ -13,9 +13,9 @@ import matplotlib.pyplot as plt import sys import pathlib -from utils.angle import angle_mod -sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod from PathPlanning.CubicSpline import cubic_spline_planner k = 0.5 # control gain From aa61a6ea570e013d346c40874f8a33890ec66d28 Mon Sep 17 00:00:00 2001 From: Jonathan Schwartz Date: Mon, 17 Mar 2025 09:01:07 -0400 Subject: [PATCH 354/414] Safe Interval Path Planner (#1184) * it works and is WAY faster than a* * some bug fixes from testing different scenarios * add some docs & address todos * add sipp test * spiff up comments revert changes in speed-up * explain what the removal is doing * linting * fix docs build * docs formatting * revert change to file (maybe linter did it?) * point at gifs in gifs repo * use raw githubusercontent gif links * change formatting on planner results * format output differently * proper formatting final * missing underline * revert unintended change * grammar + add descriptions for gifs * missing :: * add title to gifs section * dont use sections for sub-sections * constent a* spelling * Update PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update tests/test_safe_interval_path_planner.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst Co-authored-by: Atsushi Sakai * Update PathPlanning/TimeBasedPathPlanning/SafeInterval.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * addressing comments * revert np.full change --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Atsushi Sakai --- .../GridWithDynamicObstacles.py | 57 +++- .../TimeBasedPathPlanning/SafeInterval.py | 303 ++++++++++++++++++ .../time_based_grid_search_main.rst | 43 ++- tests/test_safe_interval_path_planner.py | 33 ++ 4 files changed, 434 insertions(+), 2 deletions(-) create mode 100644 PathPlanning/TimeBasedPathPlanning/SafeInterval.py create mode 100644 tests/test_safe_interval_path_planner.py diff --git a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py index 7416ff2f08..2a47023f8c 100644 --- a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py +++ b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py @@ -33,6 +33,10 @@ def __sub__(self, other): def __hash__(self): return hash((self.x, self.y)) +@dataclass +class Interval: + start_time: int + end_time: int class ObstacleArrangement(Enum): # Random obstacle positions and movements @@ -40,6 +44,14 @@ class ObstacleArrangement(Enum): # Obstacles start in a line in y at center of grid and move side-to-side in x ARRANGEMENT1 = 1 +""" +Generates a 2d numpy array with lists for elements. +""" +def empty_2d_array_of_lists(x: int, y: int) -> np.ndarray: + arr = np.empty((x, y), dtype=object) + # assign each element individually - np.full creates references to the same list + arr[:] = [[[] for _ in range(y)] for _ in range(x)] + return arr class Grid: # Set in constructor @@ -89,7 +101,7 @@ def __init__( """ def generate_dynamic_obstacles(self, obs_count: int) -> list[list[Position]]: obstacle_paths = [] - for _ in (0, obs_count): + for _ in range(0, obs_count): # Sample until a free starting space is found initial_position = self.sample_random_position() while not self.valid_obstacle_position(initial_position, 0): @@ -234,6 +246,49 @@ def get_obstacle_positions_at_time(self, t: int) -> tuple[list[int], list[int]]: y_positions.append(obs_path[t].y) return (x_positions, y_positions) + """ + Returns safe intervals for each cell. + """ + def get_safe_intervals(self) -> np.ndarray: + intervals = empty_2d_array_of_lists(self.grid_size[0], self.grid_size[1]) + for x in range(intervals.shape[0]): + for y in range(intervals.shape[1]): + intervals[x, y] = self.get_safe_intervals_at_cell(Position(x, y)) + + return intervals + + """ + Generate the safe intervals for a given cell. The intervals will be in order of start time. + ex: Interval (2, 3) will be before Interval (4, 5) + """ + def get_safe_intervals_at_cell(self, cell: Position) -> list[Interval]: + vals = self.reservation_matrix[cell.x, cell.y, :] + # Find where the array is zero + zero_mask = (vals == 0) + + # Identify transitions between zero and nonzero elements + diff = np.diff(zero_mask.astype(int)) + + # Start indices: where zeros begin (1 after a nonzero) + start_indices = np.where(diff == 1)[0] + 1 + + # End indices: where zeros stop (just before a nonzero) + end_indices = np.where(diff == -1)[0] + + # Handle edge cases if the array starts or ends with zeros + if zero_mask[0]: # If the first element is zero, add index 0 to start_indices + start_indices = np.insert(start_indices, 0, 0) + if zero_mask[-1]: # If the last element is zero, add the last index to end_indices + end_indices = np.append(end_indices, len(vals) - 1) + + # Create pairs of (first zero, last zero) + intervals = [Interval(int(start), int(end)) for start, end in zip(start_indices, end_indices)] + + # Remove intervals where a cell is only free for one time step. Those intervals not provide enough time to + # move into and out of the cell each take 1 time step, and the cell is considered occupied during + # both the time step when it is entering the cell, and the time step when it is leaving the cell. + intervals = [interval for interval in intervals if interval.start_time != interval.end_time] + return intervals show_animation = True diff --git a/PathPlanning/TimeBasedPathPlanning/SafeInterval.py b/PathPlanning/TimeBasedPathPlanning/SafeInterval.py new file mode 100644 index 0000000000..7fea10c67f --- /dev/null +++ b/PathPlanning/TimeBasedPathPlanning/SafeInterval.py @@ -0,0 +1,303 @@ +""" +Safe interval path planner + This script implements a safe-interval path planner for a 2d grid with dynamic obstacles. It is faster than + SpaceTime A* because it reduces the number of redundant node expansions by pre-computing regions of adjacent + time steps that are safe ("safe intervals") at each position. This allows the algorithm to skip expanding nodes + that are in intervals that have already been visited earlier. + + Reference: https://www.cs.cmu.edu/~maxim/files/sipp_icra11.pdf +""" + +import numpy as np +import matplotlib.pyplot as plt +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + Interval, + ObstacleArrangement, + Position, + empty_2d_array_of_lists, +) +import heapq +import random +from dataclasses import dataclass +from functools import total_ordering +import time + +@dataclass() +# Note: Total_ordering is used instead of adding `order=True` to the @dataclass decorator because +# this class needs to override the __lt__ and __eq__ methods to ignore parent_index. The Parent +# index and interval member variables are just used to track the path found by the algorithm, +# and has no effect on the quality of a node. +@total_ordering +class Node: + position: Position + time: int + heuristic: int + parent_index: int + interval: Interval + + """ + This is what is used to drive node expansion. The node with the lowest value is expanded next. + This comparison prioritizes the node with the lowest cost-to-come (self.time) + cost-to-go (self.heuristic) + """ + def __lt__(self, other: object): + if not isinstance(other, Node): + return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") + return (self.time + self.heuristic) < (other.time + other.heuristic) + + """ + Equality only cares about position and time. Heuristic and interval will always be the same for a given + (position, time) pairing, so they are not considered in equality. + """ + def __eq__(self, other: object): + if not isinstance(other, Node): + return NotImplemented + return self.position == other.position and self.time == other.time + +@dataclass +class EntryTimeAndInterval: + entry_time: int + interval: Interval + +class NodePath: + path: list[Node] + positions_at_time: dict[int, Position] = {} + + def __init__(self, path: list[Node]): + self.path = path + for (i, node) in enumerate(path): + if i > 0: + # account for waiting in interval at previous node + prev_node = path[i-1] + for t in range(prev_node.time, node.time): + self.positions_at_time[t] = prev_node.position + + self.positions_at_time[node.time] = node.position + + """ + Get the position of the path at a given time + """ + def get_position(self, time: int) -> Position | None: + return self.positions_at_time.get(time) + + """ + Time stamp of the last node in the path + """ + def goal_reached_time(self) -> int: + return self.path[-1].time + + def __repr__(self): + repr_string = "" + for i, node in enumerate(self.path): + repr_string += f"{i}: {node}\n" + return repr_string + + +class SafeIntervalPathPlanner: + grid: Grid + start: Position + goal: Position + + def __init__(self, grid: Grid, start: Position, goal: Position): + self.grid = grid + self.start = start + self.goal = goal + + # Seed randomness for reproducibility + RANDOM_SEED = 50 + random.seed(RANDOM_SEED) + np.random.seed(RANDOM_SEED) + + """ + Generate a plan given the loaded problem statement. Raises an exception if it fails to find a path. + Arguments: + verbose (bool): set to True to print debug information + """ + def plan(self, verbose: bool = False) -> NodePath: + + safe_intervals = self.grid.get_safe_intervals() + + open_set: list[Node] = [] + first_node_interval = safe_intervals[self.start.x, self.start.y][0] + heapq.heappush( + open_set, Node(self.start, 0, self.calculate_heuristic(self.start), -1, first_node_interval) + ) + + expanded_list: list[Node] = [] + visited_intervals = empty_2d_array_of_lists(self.grid.grid_size[0], self.grid.grid_size[1]) + while open_set: + expanded_node: Node = heapq.heappop(open_set) + if verbose: + print("Expanded node:", expanded_node) + + if expanded_node.time + 1 >= self.grid.time_limit: + if verbose: + print(f"\tSkipping node that is past time limit: {expanded_node}") + continue + + if expanded_node.position == self.goal: + print(f"Found path to goal after {len(expanded_list)} expansions") + path = [] + path_walker: Node = expanded_node + while True: + path.append(path_walker) + if path_walker.parent_index == -1: + break + path_walker = expanded_list[path_walker.parent_index] + + # reverse path so it goes start -> goal + path.reverse() + return NodePath(path) + + expanded_idx = len(expanded_list) + expanded_list.append(expanded_node) + entry_time_and_node = EntryTimeAndInterval(expanded_node.time, expanded_node.interval) + add_entry_to_visited_intervals_array(entry_time_and_node, visited_intervals, expanded_node) + + for child in self.generate_successors(expanded_node, expanded_idx, safe_intervals, visited_intervals): + heapq.heappush(open_set, child) + + raise Exception("No path found") + + """ + Generate list of possible successors of the provided `parent_node` that are worth expanding + """ + def generate_successors( + self, parent_node: Node, parent_node_idx: int, intervals: np.ndarray, visited_intervals: np.ndarray + ) -> list[Node]: + new_nodes = [] + diffs = [ + Position(0, 0), + Position(1, 0), + Position(-1, 0), + Position(0, 1), + Position(0, -1), + ] + for diff in diffs: + new_pos = parent_node.position + diff + if not self.grid.inside_grid_bounds(new_pos): + continue + + current_interval = parent_node.interval + + new_cell_intervals: list[Interval] = intervals[new_pos.x, new_pos.y] + for interval in new_cell_intervals: + # if interval starts after current ends, break + # assumption: intervals are sorted by start time, so all future intervals will hit this condition as well + if interval.start_time > current_interval.end_time: + break + + # if interval ends before current starts, skip + if interval.end_time < current_interval.start_time: + continue + + # if we have already expanded a node in this interval with a <= starting time, skip + better_node_expanded = False + for visited in visited_intervals[new_pos.x, new_pos.y]: + if interval == visited.interval and visited.entry_time <= parent_node.time + 1: + better_node_expanded = True + break + if better_node_expanded: + continue + + # We know there is a node worth expanding. Generate successor at the earliest possible time the + # new interval can be entered + for possible_t in range(max(parent_node.time + 1, interval.start_time), min(current_interval.end_time, interval.end_time)): + if self.grid.valid_position(new_pos, possible_t): + new_nodes.append(Node( + new_pos, + # entry is max of interval start and parent node time + 1 (get there as soon as possible) + max(interval.start_time, parent_node.time + 1), + self.calculate_heuristic(new_pos), + parent_node_idx, + interval, + )) + # break because all t's after this will make nodes with a higher cost, the same heuristic, and are in the same interval + break + + return new_nodes + + """ + Calculate the heuristic for a given position - Manhattan distance to the goal + """ + def calculate_heuristic(self, position) -> int: + diff = self.goal - position + return abs(diff.x) + abs(diff.y) + + +""" +Adds a new entry to the visited intervals array. If the entry is already present, the entry time is updated if the new +entry time is better. Otherwise, the entry is added to `visited_intervals` at the position of `expanded_node`. +""" +def add_entry_to_visited_intervals_array(entry_time_and_interval: EntryTimeAndInterval, visited_intervals: np.ndarray, expanded_node: Node): + # if entry is present, update entry time if better + for existing_entry_and_interval in visited_intervals[expanded_node.position.x, expanded_node.position.y]: + if existing_entry_and_interval.interval == entry_time_and_interval.interval: + existing_entry_and_interval.entry_time = min(existing_entry_and_interval.entry_time, entry_time_and_interval.entry_time) + + # Otherwise, append + visited_intervals[expanded_node.position.x, expanded_node.position.y].append(entry_time_and_interval) + + +show_animation = True +verbose = False + +def main(): + start = Position(1, 18) + goal = Position(19, 19) + grid_side_length = 21 + + start_time = time.time() + + grid = Grid( + np.array([grid_side_length, grid_side_length]), + num_obstacles=250, + obstacle_avoid_points=[start, goal], + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + # obstacle_arrangement=ObstacleArrangement.RANDOM, + ) + + planner = SafeIntervalPathPlanner(grid, start, goal) + path = planner.plan(verbose) + runtime = time.time() - start_time + print(f"Planning took: {runtime:.5f} seconds") + + if verbose: + print(f"Path: {path}") + + if not show_animation: + return + + fig = plt.figure(figsize=(10, 7)) + ax = fig.add_subplot( + autoscale_on=False, + xlim=(0, grid.grid_size[0] - 1), + ylim=(0, grid.grid_size[1] - 1), + ) + ax.set_aspect("equal") + ax.grid() + ax.set_xticks(np.arange(0, grid_side_length, 1)) + ax.set_yticks(np.arange(0, grid_side_length, 1)) + + (start_and_goal,) = ax.plot([], [], "mD", ms=15, label="Start and Goal") + start_and_goal.set_data([start.x, goal.x], [start.y, goal.y]) + (obs_points,) = ax.plot([], [], "ro", ms=15, label="Obstacles") + (path_points,) = ax.plot([], [], "bo", ms=10, label="Path Found") + ax.legend(bbox_to_anchor=(1.05, 1)) + + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect( + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) + + for i in range(0, path.goal_reached_time() + 1): + obs_positions = grid.get_obstacle_positions_at_time(i) + obs_points.set_data(obs_positions[0], obs_positions[1]) + path_position = path.get_position(i) + path_points.set_data([path_position.x], [path_position.y]) + plt.pause(0.2) + plt.show() + + +if __name__ == "__main__": + main() diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst index 48dc1289c2..04001d4504 100644 --- a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -33,7 +33,48 @@ After:: When starting at (1, 11) in the structured obstacle arrangement (second of the two gifs above). -References: + +Safe Interval Path Planning +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The safe interval path planning algorithm is described in this paper: + +`SIPP: Safe Interval Path Planning for Dynamic Environments `__ + +It is faster than space-time A* because it pre-computes the intervals of time that are unoccupied in each cell. This allows it to reduce the number of successor node it generates by avoiding nodes within the same interval. + +**Comparison with SpaceTime A*:** + +Arrangement 1 starting at (1, 18) + +SafeInterval planner:: + + Found path to goal after 322 expansions + Planning took: 0.00730 seconds + +SpaceTime A*:: + + Found path to goal after 2717154 expansions + Planning took: 20.51330 seconds + +**Benchmarking the Safe Interval Path Planner:** + +250 random obstacles:: + + Found path to goal after 764 expansions + Planning took: 0.60596 seconds + +.. image:: https://raw.githubusercontent.com/AtsushiSakai/PythonRoboticsGifs/refs/heads/master/PathPlanning/TimeBasedPathPlanning/SafeIntervalPathPlanner/path_animation.gif + +Arrangement 1 starting at (1, 18):: + + Found path to goal after 322 expansions + Planning took: 0.00730 seconds + +.. image:: https://raw.githubusercontent.com/AtsushiSakai/PythonRoboticsGifs/refs/heads/master/PathPlanning/TimeBasedPathPlanning/SafeIntervalPathPlanner/path_animation2.gif + +References ~~~~~~~~~~~ - `Cooperative Pathfinding `__ +- `SIPP: Safe Interval Path Planning for Dynamic Environments `__ diff --git a/tests/test_safe_interval_path_planner.py b/tests/test_safe_interval_path_planner.py new file mode 100644 index 0000000000..f1fbf90d2a --- /dev/null +++ b/tests/test_safe_interval_path_planner.py @@ -0,0 +1,33 @@ +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + ObstacleArrangement, + Position, +) +from PathPlanning.TimeBasedPathPlanning import SafeInterval as m +import numpy as np +import conftest + + +def test_1(): + start = Position(1, 11) + goal = Position(19, 19) + grid_side_length = 21 + grid = Grid( + np.array([grid_side_length, grid_side_length]), + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + m.show_animation = False + planner = m.SafeIntervalPathPlanner(grid, start, goal) + + path = planner.plan(False) + + # path should have 31 entries + assert len(path.path) == 31 + + # path should end at the goal + assert path.path[-1].position == goal + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 19fc48d60fea057f6c14365c502db4d18490c3a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Mar 2025 20:22:31 +0900 Subject: [PATCH 355/414] build(deps): bump numpy from 2.2.3 to 2.2.4 in /requirements (#1189) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.3 to 2.2.4. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.3...v2.2.4) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cf6dea3a46..3ea4197736 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.3 +numpy == 2.2.4 scipy == 1.15.2 matplotlib == 3.10.1 cvxpy == 1.5.3 From 764ba21f86fc0d5c2ae5b613449ca81ea6406036 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Mar 2025 20:29:12 +0900 Subject: [PATCH 356/414] build(deps): bump ruff from 0.9.10 to 0.11.0 in /requirements (#1191) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.10 to 0.11.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.10...0.11.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3ea4197736..5438678f87 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.10 # For unit test +ruff == 0.11.0 # For unit test From 1c1596be21f015b3b2c3db6489b93cd94d6eca01 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 28 Apr 2025 08:51:09 +0900 Subject: [PATCH 357/414] docs: enhance contribution guide with instructions for linking code in GitHub (#1202) --- docs/_static/img/source_link_1.png | Bin 0 -> 87987 bytes docs/_static/img/source_link_2.png | Bin 0 -> 237071 bytes .../3_how_to_contribute_main.rst | 13 +++++++++++++ 3 files changed, 13 insertions(+) create mode 100644 docs/_static/img/source_link_1.png create mode 100644 docs/_static/img/source_link_2.png diff --git a/docs/_static/img/source_link_1.png b/docs/_static/img/source_link_1.png new file mode 100644 index 0000000000000000000000000000000000000000..53febda7cbc62ba625f3f179b399552c7da351e5 GIT binary patch literal 87987 zcmb@tbzB_Hvp%|uF1|>B;O-hia3{DET!Xv2y99R#7DBKP++BhM2qD4Uf+V=R+~NJ6 z-#O=VFTD5uard*s4zn}e)zwu`JyqQssiYu@hD?AA0)fz^rNmW0Aou_f2pj}K0Iq0F zn!f^pP-QK}#FV7P#K@GK?9D7~OhF*2$P^7kP1OP1932&MIEc8g%pZAZ0+z50ggM}Z zB0@$ACIrh^RH-UI3b|ZQyz*ly**jur)mshR-aTzx6b8m^qptE+B(TejMmyIMm;2rI zNQVCp9`}t!KG4s(OBGA>&q%`MREoIRJ0k>X$=@klVNfk#cz+@``vmF^M!rKvtVFH# zXWh4h5ued_R~O&M17#3R%x=7b+B-<=%SBR&YMULu`iUt z=%Ts>Jh=|_Ns=+bMq38U zZ>OuvO&_gX44GT|cRL=jGNfZaa1O6d+53aOH;PA;KoQrXuqntU1Gq(VhzTd{lT_jd zV(=>y=#7%AG=-V4rGswOt~4#1ndl0a{LIUJ$lP|s3)As_#Z_#W_JtNZg$iIET;GIO z87@#D(fSEXQjy{bLZg&$pvCWqX``qPs~AY8k~S{;i~CmHMzf0jyyp#)vA?Vhlf@=& z_M=A+j|4}l7R2F6AAekZDstkace989Q1ng+7;fvR*dI|>? zj1NR5gF(Oj-Wk!;PJ-0h7X))aD^5X1O0>B&#Rzj5f6p7D=CmrJ;OYwcd+RHcVsn7A zstZMMT5kKODE;D(2#g2J^Fty2)vpWz>}#E$cka(`K-bwT!ZfY9z_fh(h@puE8wu`# z8bN>Ia&`JTu<{e>-x|91%{2B46D{o`DI(d1NQMxGxOHbsuZqqk{i}5QJ;RZomrX(@29UYRywqum9grJ3U!-2=`%16Q?pR|q zO%%5`k%$`eN$t)5J^^MWoPMumHhnQR5Wn?@?ClsGINxjdCv!0?DzKej`P_Rjf1TmA#TS) z_usUcJ{bFm(0Tb4CX~sbcV!R-+|KjI;ruVGu_3yRA^(p~G!L*46e21@6#*-4NO2;F zUGDrm9oa0%^8+L~VBHXn4l%P+T?yVT`1S+I%fO^%rbf8(0K#P!T>;`{_&*5yo#t>N zQV_JaWLFVLMv>E$KOlsMA}|RKR0z_dDha6KL3HsM-+Vs7X+cm@_kUHV>MCuC9 z#`Ap>`-JTo<0H!chIm3GMv2jdYEXj50-qpUL73wwy#=@#r1vg0FXazQExJIYzNr0& z-9IR`h_LAdeLZsQh|w{QRZ>jPW&2I0ZNA_$_A*pyf58;owASRC4E61a}Jkt-)?W75g{8v7~vg38)4hi-$Q~G`AM;w)-#Dh+DCX=cfCb_>K zd3(X2Q@^H&&)H6%f3+pv@TW7`U;MR8EPvXvg=9JMw;6sJ|4_e!(19pR6v=_u56Spp!gfH8i zrLtw*6}HVggV`;cEvhBuU<>039)hxMaMZK^VB>X(;GN{<&t}TT%3k0t<6UT;ZDwgk zY94c8bcx%l=U^{Lgi5}vL{W5ebVi?FpH^RKOx$z#_iS=Lay>Mq^0ApWU8AOsnmk`#Oj@cp zl;l}Plytj9S(g4a=diBvs1dCZFgqVE*|0fwIiA=U-dMn;!8K+!(;nBnF_W$`(J|95 zuj4nrTpXNb_+^!+);8g6EnuDF8t58xDnR%?reYW;Qzmn}UR}5rxL< z#klI&_gJn}@9~MB>0#c!G<);?d%AN~^t5yppYc-fWj}LN3!y!BMTEV=2ii|mZ)jT; zQKfV9zYtHOY-hRj5XkBr|jh{pj+R7+eR9r(M`8tV>e&@ zC4C}&BaNtnR1#Ujr`mBqd6{yP^HP8Is@4vyQK^0)`iEARc?ZWcO8s3+bE-C*zOCMM5*HL%j4y)qKheQ?^)43&p zV|a@G>d-d_L#RGsh7!keV;RS0f?2&8b*8Ug@Y%W@6CLxQY`A{wboi?dF>BadT~$>s2~cE-=@R%J|@mmU+-YObYPrBNCkdK{L+ zp(<&k^42BR&#dQ$x`zlRwZ7=I@5y?aUB)2azZ2L-n_|_!_X~FTIuYYXXwCK9mSN_^ zvc}_hm$^%4i=m7`wgIbQ!``=<`R!bj!F0zPd#-8y>f3Gff!MRp>7U0Y_9iCy(A-%{ zMXYf+vs+Z$^k#@FTk2E zmox5jKHjK0r6`$eCxGp?aWnIwrs#*`4`QKx-}b*jo1tIvX7ILIoAf?gJKFM`lx|mq zYcFVTv$Po4HLf}qRN2bSRh71DDC(m$x}EXvUlkBya?RTHEw%bGuB%_$uIz5QJMFbz zG2b_gxNj~}&NH@Gcy^owt^^M*+4?Vy?M?cfyzTs&Dp?h`Cy2}McPM_hCfgrWR9jRq zBA25k@7COYP1=0dy4{K%Vhw|xE+mrhNu^XHjC z+I%nqsxS63kX^hp)s!}qmj^Kb=MWGam;eM1oPmKu5KQ>r=MrE#5bQtKVL+g8OAy?D z-J<|}KD^?AMcm-w&8f&T<3EL>b1cv)H9-Q8K-IautS%vsracz9UZUa-D+!3^BN z?Cfdh^45dd&YAK*jr^Z>#7&)zoh%((EbZ;c9@>3tWbf)CKtb`)(SN`GBd4i{<^S|# z=loy80tU$X@C_?F3mfZyw+%eX|8SL8$ zDxhdVWPaBFo-{#Z?lDs*U>=Dq#TDNGpMaJ9^XdZr(gDZACve1X;0Fx&fpM^ z9^jp9L?4{jgndgWRC!!~DcUG0{K(WSjl|-OL|%J6i;u;5O%D@9XDBB8z70eXM8N=o zfx-PmDKGA|4^5os8tKz>J3nJ_A1KhvNi&#U$e5YQxS#YsTX5I?_3M{iUIGXy{^@rJ z5f~4CIexBa2l{WfS-{bOj)lp}me(*;!cV?&0z6UwMVxry2&@kv zqK|y33l#s-85p^fA3-Vr?#VZqIFb?w{TK0&-MR%nhAgt zO$Na)Ll>%caQ|(_l|UQpPfsH-4sw|Q7>9^GO}D70ry=0MZ15rJ!r|z|YX>V|1*g1M zLh(M?Ei?-bv5mHnpxNDykC`#>UfwbQ!HOpSS*YgA!@&*hPHFap{q<$MX1&u{2e z(alvk0zcsdtmygdOta@M*w5CMoc#Iq)jGp{(NhwaRey(bDaUci_gp$x(06BGpj{5k zJ(J)Z{J0%JkKlqBK>a;E5J5%%{kC(s<3PrtU4Y$i8`#T;Tcqg-N`05{>ka zEFR{+C7$4Gf}90D_q}95J>Dlswu%-Ih(G-DXo2idt>qXIdx07lKU<_Yx#R9i_U`6b z@$%+)g!oz#JdKHhE&YUz5<%czgCzK;&2u~@mb>s#y?3hmKUq(ecNH^CjDzDWLI@nH zJ&!k}SGq&9t5tjn5SaP=ZW<-|lC(j62#6RYOy`T<75(*N)u1o#8#^;KN8c#p{zRqH z!yBTYvpj`77i94kVEml2+w1c*W}W(r>1e5q?->Ph882YsreG1#EplSp)i0KVF+>@N z;NT4nyssq|o18aaVrY8c{l-6dCIi<$UX<&%#h$(l=-*_2u}xb5Dx0k@w>FY%pj~H0 zy*`vSwW?@7nEY3QQl*Ose)&x$_B7n%ZVUm#MB)Yr-CYJ)D=!*R*MGAT^-rh};|)ms&2!|xLXyxp#8>efm9Zra_Ny(%%bl8$Xph!sjOxiHszus^TPXhb zw+%M4wbF!@7&qu7{KclvSoL+cv8VIo?|P^e&|oSnz$;jcAcGD+y~%RDQetELEVMjo z=rIAw?lenmpws%GbeVQt&$`p!h~L?EbM^9b4Ibbi2Rv@U%8}07yX*Za(E=(O1h!a# zT0+;~{30!H;ZbnMMfH;z)MN-=S}acq#x`&;J%zgQR!CGbAis;1@O8k$NV0>u!=}I7 zAsgYJ?4JA`OZ93+>cnHwjjuB9?_-Sq_yW?MFBz9QXWy})!iC!x{rtCD`~-^ef{tC& zYp=7Nztf6sx)Yz()-N}6xx|4oTb21-tz|yz73XjYV;Y$qGwR&^-=bWf@^J778J0f) zFsV+|GRg7JIm|Rip%u?R-iDL_ z!xnP%_G{SlkIe-}b1)vi(;1XL1TgnIJMPUl9Rb?#HoHj+`t7#%En$|-T_JRp5DxvL zpoehrnQ26SjPHD_r?WwCy5!?#OBEl6M5PH5^tq_4wVj)++6KIIycM6AgBS}DjezRl z4`*f)2-SW7Pv4`f2;aI~EVtj#K(EDZqLtzFr9Ye@#CRx`If+rD{7guhwQY^uZo9Mq7mWXrp8o?o zr;aGRA!N(G{j#v>v&SZR@v3I~W{x+}Q1_hgYENXf&!tnpk3Y6AQYVt7dnocVlhIGo zSeTeA_Sl-SPsB~K7^qYwC^{ZifgFJ>$oF`d3kw%_gDVJtdkDX`Yw#u;zx{9+8$854 zUMV3Ysg4t*^QwMl43}BkB4=17Eaib_T$#-q-<{FHCMO z4#895&$Jutn6vrZ6@E7BMm{C_DHb3)>b{isG}r~3U1Ft;&}Mt8BG+c7np$~cb?iFR zzFn&nmR%EYP-;H6ou5W4UWDIR;?XF=SP-bj(7N4<6tZhC%B7r<(*j*Q^uxl#jn!p} zd1>zPxIDHe%c{Ljx8UjyGt6@mQkiwETq)LI;pThNxhnROp#hlnhF2$l5j31Tc3`{V z89-m>2uXe`D=TkU!M>No#|RPb8iFp6b&DmR_h;%F^v{h;gCxEf^`M@)MSGSGWySvP z$%W!>xN<8#WpT|97I%i5i+kvBnBmQa7F>r$DmY&y6HyMOWp|hXK*Z#5wHHQFmR5{u zS;N40g3`J>1nI%FJU>yA8?^h3HrN}KyeUbf83m%@$n56PBAlqlTi)kz8`pa+BlNOB z%*ER`)U9Yel4;F@CF3?5OqPaP8TLeAspACEmgh^Hsn(< zZ41?uLIUHH)1wn{FVk7gA%>v50iB&0!Sa;@MBwOTOwpPZ6H1CtF64K6s?qO@Y_IJw zg{FT9saZDhpl3Ji1lh9jpuP;pV{A7P;zR1>4m;R1f!4Brcxz(v$&mE-yeqFCp!?F$ zYlqLlmX9+RVHnFK;UM_syW49Nqodj3zZ^c^8NzAg`oz30-;C>SE|0BA8nmiSs@5*C zzLFiJuo^6?EM|gG-|l6*FJgM%w)eDN9&hsX4av)Z@w;EO8UbwXFJ>Y5EibhEs~t3o z+)z}Qi?H>}itVlmr0Z~8RZ**2MFu1h0dF%W=s`wcP6B0tf-mNqob?ggN;N8SaK&ck zJ$F=FeH@PD5SI#M(+KoC@lm1VB0H&^*6M-gyscrwuk7ZzFIU1zzf1SE>Vd-2qmF+_ zH@bU~*O(0xcpmoR#ax|a5b-#D3xY>Ed9CmiVG#{@82DnFw{;%U4(e=!Ju9>&$h18~ z)&4Eg0nd#XhQJzK1UWj}DmZgE6EqKCqrBY9wBDPEQjNN+-M^Y{Sm_CSrKFLEpfIVJ zN<=RRlFg9KLbIzg(Z#Uz&+)14xuQ55HS!lbVHbT7&NlVQSOF_#$oq5TVqxi-`NNrQ zDX^FU>`-z9N9PyzE0}J3^Olj!w)%K)xu8R{yKX44)U?i66Uuu47t)qOEOOm}VM93k z>gVjr@BLk46Lrkg+#pb9v2?$7-CeM6ab@GAU68)DBQG(}U$MlDRSLRwQ4@76`mFma=IqdPK*mtOj;S90{W^Y~perS$vU)P!1q!)7>F=F1CiYc?N9Kpo@dTirD#+gWoR3E*Xvw^FEc6CguVbX=q<%ikS#v zmk&0D){{BR3=2-D36KU`ysczx;pyc;Qv*+Hc)+y8TW`3mbi-Tz`WVVHkbZyhJFYJ9 z@FXM|H{ch#LBAA`Cf(o$w1u_@oZA7=e8S=_$6mSIu;jO$px@!=>v?y%S=V*FoM6Y* zbK4t*Obe(!%pwYpx{D39e)@w*u;H8DC&g3&2g0Fr;_slsewsnkkAZ&GWl0kl+IDhr zsqN|O(>|i4pr|$VaP&JGpiSjxdQ+~eb=|r|`MV?JbbAV=hpB~Ja0keKmaGD|mSWbm&xZ}*3s zuC3T3YOEAbd>RrGS4oKQnUKRQx^s>Ic5eplFfd!+?t?BF44Y`c4Zv2;wy`i34 z@reZWlQs+zZovKBwf*1urW)h^Ry6)~O-*XvUdIUmd0_4tD%#H8_kTY0B=FW5k#<2* z17H04m9LMu77RgWpC9lkLo9FRj&uEoMtKlI(LEJ5s6gH*)*t(^-995)E>2ocd`(11{c=|@iI(kL{j-}4<~Q($C%>e1C3#yL zbQr*sX+^_q70}iM{mt*r0^f42pJIrT78ya=QRmIL#v}177j6Fh%&T_%EfHtq z;bnC2()){9&sZ^$7oQGyn+wosRgz3Jt173Io66gvwd93$KJ-QpKN4 zq(2eDL}CSqAn7+kKeav=XY!B=3k}tJCyeve3xAE7hNdqu9KHs$Gc?u+BvAkr#x}l9 zqE(ccD%T?xkivELge+} z!Y=qszCpW|9Tm>b=ImvG(h;*(i9G0xlPs%gMFEB_R@x)>{(8S-BzP*6Krp3hL8v3@5jxlB`{$7b;*nTEP#C(n>WgC< zhdhcJ5Ku%i^;}DkY)zfo4!b}(9Mx$%tAvBF0+|~+v)^acYh`<&f>2=8`>t>E{^BL+ zTxX|_LN{k?BKe6ZU2VV0DfMUykTJf)Wo7{CYKcHW<~c>(V&C7fB9su3mb@6fW|v>n z-E-puIlgCFGwr@Ds;P!#)t}W$t$Z(U&zFcpoxeb;@E6CL$-jVCIr7UC7Q5*%6pb9% zFbIk&_HB_dabb3TWb?tp7V)r4=o&k)s1`<>3?%mEGZ>I#o^%7sJ?cbi%|fMMiwy;Y zv@~LgCANR%zNag~WV7(fX8J=f-DKLX>drmI>vtBXyhuMcj<}bWwc_0VtP1p)e)8t< z6*Bg^xp3rhT8pS>&St$jTTe3}=+AEON>_M_e$+##v_TT?zMcy-aQ%Aj3k8ueW)&+H z9e3I^iaA;FTeYra<>ZT>S<)|$qU-FbBx8xH4ZC0fw2EoHSdBWfsTcynZ(T$#rDSX} zz`VSfE6h6?n>`L!tKD|B@u3nU&(z1; z&R?Cq)k9|bP;OLBm3-gO*g*n+FMELdp1d8r0%YICxa?v6cbDe&nbBOtB>M`BwLrDQ z{e&g9L6jAKCzx3wn^!GLZKuGabwI%DUU~g^dD4@56=Y{c(r@JJH=zwXJSx*{;HL#y*2vsv_np2&B_lOp8KV!$4`zEH}C^e=btlRQaD+4P@|s} zcV%Ld6EJ9$?>MVPe1=Y+C{Fp}s%HSTim?!5Z;ucl)BB|!!g&FBz3(f+#e8UYFg?gP z7%~G&xB&7D!G;QRQA6=!l!*6cvM4ZYvr%jm&Kuv^xfasTsX_Ta0rIe3*06}>k#lXW z$bT4u8#T4lWM_bP4RQ=_3#I=xMA-xXeX7a`FF=`uTz%31-gg&c=#JnAUr0QiL3?XQ zX(iE9j!!@aeFN6qXXU3|acs7lUh=zf|Wv`woX#ojQKA?dCNWB)2eiPS1 zp&JODvN+u|{3UI>gperL?a7JOl{NgQ2LC|- zDn47MqkuC7H&9BHg-U$2^k2abGxt2-TPRQ|kl9dc`|*{}b7#6ryY=mL6lw^eCs1Ol z6Pbf1;eBb#5P%D5n$HpNUXyo?y{YqVFm6%CoeNq9$b$}YhnYtf?W0xYKqy5#6-;Hu z2!Ls|V1PODQse(*0!V~5zh+O!Yh8VV#l#J-)?woS?g+h$9RVOF&UP9C^^qe8`HJmr zvP?KP5;@_npz}tw$?$tMr_CSC>w_uSEe%d8b(prDXI&WAU{M+b+!_r1v^R5#)~BLu zOJ#6ss2>mx>sS3)R>s3|d#N#*or%D%p2COqFTwlivJh?FTpdU$K{fD@UE#Zl>$v>s= zQ9)pJ$I_p)8u8ycTn1K~Dk*Vk68~kTNO+bOSc==-7dv~R#{M5)BmzWt>**GMybArF z@km_*D>y~BzTZfmDxE)E51<4@kJU_N3IFTzz=P;y zyVxH`EPUl|Bq1#(=H3TOBmhV>KMflB~K^yQ=RoF z+itZxD9lflzY~{?;(MjexQC2_-DTj>*!Uu>)H0-zf+JE~{2ik+uA`}nzgG1-M(bCn zX?nUd&N7-m=2r(ZB)jbfY0GVR#C2JG$Fcw$q)G%PRUBq*>+$hG8Q|tMSY*F15^ve3 ziSN%*vtLgvb=|JEI|$A+{{gC7-N?^UqNxX^!V=f1#Y&tKt8A#{$rS1(9K@)gq7Q4Y zKYy5LJU%sKP?)N4jKR}kLMpHRT&x=7njWHQ%Dr^_Ts4cF7OmuSmR66I;nG$wYGaAv z?Wq(Ic@C3^<7L;D*U1`{d^Fl{uHCZu$I4SZ#LuXmcHap*xEZwLY`)%cF8w^)-5}M6 z+#uVhQ!3LpXDt<`Bhy!dPyBx_eQe# z{Z-9}ol_w$i#(zo_?5uSJP$4EO5C(cie7551T3u7iVq>{1B~VKTNo=uLAEkDu>#)O zMvA%d)A`|4XFtJ_m*%-gqKouZR$Ejul)B;<#C23RKfJK?+w64zL>M+iohArFpunm* z3}1rYqc9}Z0k_=dZMs24{l_l(VD7VYeS*D}qpK?g`}KWdacX)d!jw=RrJo9^YW-0czrMbf%*U&_3~nY?K;p^a52%J_-;>j&pwb6nCVxYQ6v zMKj1Ug!64WK>&+!!Dp zM>j*@HQ^4^SU&OEQM5Ek+l0}IdI<|=%zNn`y_nt<>P*Rulf;1OF6Gkp6ze6H_&;SG zQFLMNn{*jYUduQH%@>fHbn|{cQEi_q)^Y zPHD_^y`XY5{YGc5Ju$iUOMK~FLqA%8`aKwFD2esM)tJ~ydhj*1)eKBi;VMOc4)0qR z9wq~kNSmW{6RWGnMyCz-Q64dvJaJ%l>2~GMLLW7;PY|;9-ClA%Dz7CLYL)s_CV}uM zlK!(RR>s%KT-FlQcg@wCs3m^1TINPZYgc^}gNz>S0l6fs_$x0c_N~b?NdCreAoR+< zQ2)Yh@}SWSy@A-rHHsBDO^LYPy&Q|>yi;lNmsct>X;-Yon|?8ETD5{PDI z&Sj0Z_p&^(enXXs*Oz<~CJmn6xo-&Z!fX$%BfOpzc|3fIP=Q94P<(S#R`busvPZQtu|LXR7K8dDUYLLq@WPl~wpVG7 zs;Cyp@SqxKI{8nBJL92yEtbDdm|M82?EW~JBLu_oG>XURHqIbgw9?NeA&@ z8i|XT@llidV7MD{AXJmeFo``b_JH{E=yagdZa;Nm-8l-@&0}l18<8Lru*)(ZnWO#mLr%P;CeY-X=fNCo3Q-tDf$?{rxEPk75T}%L=8*R>UYR z7GlWMuOyACPN|w27^Ckcm6FQUK)Rm4OG#wPzLNIXl_;qmw!uM~2DnZ=_R16G-%p^x z=`q@M-F_OZRF1SY5A*iMY7^N&b%!JcxU7)n=#$i~5uT`BHVh?pQ&TR+CBJv#(H$;K!uMH~}h@WaQUKcT}?NvvFbL$8#hYRI}^@ds<8)o%W8II zjv1v*Z$KYFH^iN#MdHyWUqLJuJC;~eiR^t@o)4+Z5XP7>0)Q^j#J~G2^3FO_;_EX^ z!0vbHGIDlk%D>4`iNllx0RjF^72!1GG1eA%B13leou2311a?4kUBT*|_5S025EMVjy&yC;vu8qT+f0Ao;Ah#{me8 z9q7DE8vj6prZ$D50Ez?b-5H~JnD@0o?~0+i{dOG3mfjT37L&c7k}o*DMa6rO3loH$ z9;oJgPm{o7!v|ws#0h`j+jT0JWQ?>qi8mqUP0$sM5I)HzTpL|WquN;ZE7N#Bq?Y={ z*B}wqlp#!sbta`2;1CYl)3P>{kH#b^tj41iJ}1+&Hv_y5(c+6s3{=Xcgip$byaUz~rUDuoZn!apTleqXQd^h2NF zxgGu6PtG*8kRGCW+O!m|1Av@Z5f3SSNj6a>S$Zy`0V#{E<|=vMc5j+=rs*CVd*F%i z^7pUq?--3G22OhkFw+umycGwwe3uv+d-0hSPL)X_GLmIiOVg$%K$y>je&Ll73|6lE{Ore-qXse$0wM zNEc$ugNXazQg~FUrx2GO0OD3F)KoNG_@waE=`e*H%X_sL0J#(!Fjj| zz%vzCM(5EVZ!#UCn{)VC_u43S?ar)5N;924yykC;@QxOz@O=86lkXV9Zu+;;yf_o9 zh1WgnG8IzO`(zKa6fWXR(BqR0L+x-m%#KxORI>KI(&#~9H@SN-P zC0=<+RTqO-brUi~o2GVjupSUI#6gSmaREIj9V|zWvD(%(26#4g>|dwn#3G5`UexJ& zoq9S->Lo?5GsptWR|=r0f72l?IZ8m3!Ip{Lete6lFa<=HfJ@2<{g#qv@#ZCFox_9@ z4YX|+qv^tkH4>ocksX)RbF%hQeMb$UPH8g@RAj)6AbqHodCXnFSP^lZy}xdId@nzm zkaAJBfBdf44`+lynvC+bMfy9C6TOQ_{sP-CCH^&hlpWJe;6XT8>b|2#StAt`4hBzB zkTH>6w;C-MCuCOhH61qa143Fn$&=)59ltSz@S)jj&q$jqaXR-5Ula-e8%06}K0g{x zr8*5@E^3!jDAP=c+4`2$G+Bs&wptj{`cBe{T^WH~Z(!8*gNawIF)vMb`L!%ifav)2 z)b5oaspZw4w4=NFu%=9M zIMLo?pUwHG_r?qJQvWpi1>wmot^86vC6J9}*nln3$$Y9l9RE2J*Ru5ftV6xJSpkuA zUq;gvN!R*KO(K$RQYrQSOEh@>q4y)+noG{dqcJ_bZ^3XdG)m^XL?w6Io3mb-_SPTu zsZO8`$Y=?=5@7BoDOx{1z*0uypOUc?jtrFhT}RZ@{za^H=RsqT#D}wHPp8d3#k$Mg zXZs23F;{e$+)P@30RO`ME;0jwU;bcdLjAV6fCN)JqQ8_(ysCVr^&Ur#xTUd z7LAc)zB|q0g8S*^=QFxZk&+pPG(c>p8U9qp*adS?GQ=)D_hRyil0LayC#NXdo%)8l zqtF6vi1$D_H6f6g=-S6&X%!-b4MA!4$dg`My_BmSUP`7GOPm;f7Yvx5gM(-FtH&Me zASz(Hx154{D5^!zzhkfliqs2y#0!f;bld65^LEA0_Oa+4Y8q*M z=o0ztMXipS(cuj%EL8LmfcV=WJ5BajgFyW4_wb+~~A9n>q>JO1l2^qZ${;izBvQ$tL zm~zEM%*#K_3H+Bm0;cU!KlmdTVSoY@rCdES5MBwb>>?hIG7YFmI1%EvHTp4+J7Dl`5H;5oP>Jf0_ zO^65f&rY9}Hs@_o;?Ga<8!i$e|&t&2+adAi4fsIV99^7~iXCjEtt zB2A-wsAoc#5OF1(u+MA4 zi9WBmMgv_Buxe4t?*L zMy@)=uV1Sqg{v@AHuy@ifUkrwzD5DqwDQeB$DuMSYRaxo13qEP#~oHBCzB}wui(B53B6p9Meg*=mpKdq z(qJDvDtlP%mzGS{8Wk^I%^v-lJo@2n>0bLwX*;gU_$Hml`6~Iw`{2V!V!=>q%J+<# z3#KHJ7v$d-vS>>SN|OrPnQdp?t3NrCdqQ@W8Z=n+8x3uk%*%CEYBe2=dCEo(JY=`M z*(_)M?{0W_D*ZbOj*gx&$asi{P&4!3#**^U^v9C0ze*t&Ln!gEHZ|tKF&jNT7NOe_ zItzru5+!RBB%Ir4U0GRCX*VheAv>|o4yI)tykPZ9LqAVWvnn{gu2b-0z;P9jXxD5} ztS928HlCZrNfXMx-%xdIKKQY*S%A!GFS_wM4zJ`se(6*d zbVjK54o?mn=3tOH+~l&*A5AlElAgLD?YlKo_~>_FyYl*`nowlpLaN<@T1BAAVAhNj zpW{uV&DE`ju~x3-^o3v-29G_il~BZ}lfT>kEWQ8!(q>g@_xRmV0bCUkkF#`McPO<^ z{SJv~{J|wHsZ2#VG4b(9kEu{u%3SH4qJdn)*a^!wU|C&R-KS%I`z|gz`c1!%0)0_W zv2K%-H#6Rs=t*Xh#AibD7K+;bn5LVFsc{WzjDE?$?-piT)~1|J-`6FsUmTXQmsI{7 zB<)D+&*ZAA-HF@vE^tVoNUdGd^l(0+dM;p;UPV7|enui_$rRo#r|l;Qfxr7(hM_!F zK9IBEKX7KNQ_H%0CvXwBHew)b*IrOOZvB&PO~3Nfzn_(Q-swv(vgOnf9qdZXS1iY{*njX5+LS zgFpO7Eb3g^8-iZ8GGFc+NA8FwmJ8n8o>t#ad)g8%>{U>m+A$N|pZQ&B>n4TKjSRt4 z^bYkIj$qs_H{k)~LvoYAQp=!$TjpwCq}X;N;e?`EX{mh< zD+aaN4w+eM7B&CU@ZA_=O_RC}JO2}PbT&R^x^^rUZR)$RZ*1=4p2$-z+I0U-X+qXN4|{bz41t58-;d#v}*#Ngj7p z(-t+a1N)qZtg-uKJ`=gt%QQj zWs%is*<=2cOx8rgb2GyWD~Ftf-1fJOW6U1)-Y<^VpU0^rv80~E6valB4z)Q}1sHh9 ze)1CNm=ys}v&xlxRC*5$Ft{)b-VyNn0eV#>X4`aG_@&Q@ZrB4m!26t#ZX~YN(b#`y z1#!LTnUIG|Hn5(BWVuoS`mzsfxNQH2*DE)y0K%76Ou0-q zv!in-bRdkJ8ihMGax$09#hP}LA)@m+aYfnvvGq*!!JU2ktbN<9v=qeBXU8$7LlTZ? z`(%3}*su3ga#w(&TPUQF1{LS>Qs_X0i_65KHqTVu7g{7`l6 zJ;e_&Y;G3;Dluor~xd(O{^vSGn_&qH%iRXM4PV%J^UclJVA;3xK!W)gL9~P0Rw2S~? zkV2-z2?$m^Eu*hMLLfZprvqJ!(I1)yo!abBf%08DZ0DFSc0cKOVF$!zwNt^Gl})s; zs>!USY-+1~S0l+C&Ma5vD>dk*7u7_g%+7VfXu~Mm$COCUgl3^R=Z`%V@5XQwEIYsN zN2$Vg2W7zp(>Ul{LnERd-+<7JV*1ndgF?cDK}c+;)nYbec8MNqN`0EVpxl6InYp z15o_!uJrcWT2c%6fgg9py0k1)ffTcD3X>W1)Qyad*T)C2t1VXWs$C8#Q1Zid1S!Tg zeJrF=`b3LSI=c*$Ra~Pz9UHTRNbwpJ?7ud1mabQ1^PRl5MaFP!5jeIH61fq3&jIAk zKXlXI^8>{j#59g9c7`;T4a_s}h?D&Lx_D$O5X-!GhrwCQ&O(jO!yO$Rb<`&_)0rUt zlhA}w_n%PXa{6YiF+{~ru<(6a6ekx|0vEhUN=^qG45IqFniWKA0pu} zSBNOpgH7mfiM*yS6^oOcc@xjJlBThqdyL4;{8zQCA$dS`HZfHnuYH=wK>e;}aP&4@ zMu_e_t#u?ZRU1#&mlSiRsC7EmLt=i5RWKh!M4C6Al)DALT$A>3EyI2MgT=j8*SywR zor3F0Z+zwzR=`pYkEFK1S;#Wt6=6lk*0g&IC|dcgvAkpJ4x{Nnq8i0GNa>CMp{|o| zw3TIbC0vBApa$2o9iG;D@N+zttTg<(aywqh2+Qek{0|il2|8<& zgKD3IyMnyfhsIeznQg7gP{(QB24B&3z3S=e#k3_K*1D~EQ|YgwqNGm4&$^s3h2F%H z2!2@&AW7rcQWZuOOy_eav0b`2N^kR8f2Z5#)mx0-|E#g|j_07^%dKY$u$M%h;Z5^I z=_d18|LfjKHdm%U!HFw1J)DEV#Melagc`*jrI_en>F$?MuN?Pm=9h8K_3lGy{ov&?vbQ^Y)a%=Wv zs+@RBuvSqA@jT~a?>oLdV_$)5oT)^;cU?IhZkE@WuxH71YJ=uCKHkJgT4&Ut-|dZ8 zMJZd&q|^-ye&Jp`s(qV+?Dj(Bw}+gNtd1#bXF`XLZec0fabMWY<u=cR^k`>^iSpb6@rMHjr9xRHskvkDa;L4{<<`x2xw4?b}6!kDVM%-#T*eL^wVNYn{X|bO8BVKW;XnR)StU!e#>X7 z?5{5xGpkdMPjg!$Bnf&h5D*=w_Tj@V-V)ht?UCkuv+o&dfS9A8?P{hW~t7*P^ z^4)LmGmU)Z<|_eeRW)u@B95I0RaI)LK;K_N$EyX zML@b+O1g85?hxsg?(S}oZbo;Hjtv-t-`=0!_usv?XU}W9u5+LJT<1Oy#Q84`4~{J0 z|FQs39ZcYX7Mm66&vO%I{brT9FT4g_Ij6|Fu|+{bT{V*IhLLbYJTrY@JGjl?QNNCo zR`2&Ii^dh1YWXhw`~!|8Rm0N|IW?_>%{l+*p)erqmB4q;!+7Y_P1+B zfOzE#lyo86!d2IU)1*+3>yQ)F3*arp(j>nn%9C0gU;u*XJO9}cq5jL+d*Z&q>NqAx z-%b${O~yD*<2hD?E1kw~kWS0J0bJpt2`5k&ayc>&cei1uEPvYcf4mLfVMTkN(iBLT z&eSC;g^kOf9v|)5=6CyZ<<*r$eBn%&oX*tUAuz#C}= zF4dP){kCd@gq|8c=y-aSQUYUSm&=XN0{;tYh9SipGIX?ix6deMq(FF{-y3POx(2I_ zuY-yn?{NoO-iGXe!j zUCV&rwOWT^C!n(M0g-q6QDUZ;tBQkdwYMqcUcVJKR~hTUwKMKeS?^ij!stDE2HKsC zT~8h+8uHf5n>xr|c;31lkTOBv9CV+rKgq6~yh*YX%}%U5UBQ}gZ;SRc`{QynJ(|TT z5c+U?vOn$Cu_@2dm0Mv!f_^IkjDTBL*-^1M{qLlRaUWAU})5OyS_wXOyGTgHj`Ht#kdu_Z&af6FQKh^4TC{>f!syCtpUhKsV z4*u2QQ~eOX=pDLFZ3xFSdu*XTbY*loCT2fKR#<6B{-x-;9m!q<#~FDzR`MB2NBF)y zygs}%9m;n~%~e!@rn;S@DeNMYNIep;7Z6NjFi9TvoXNp;bfdWziSS3)v&vBIOHF{H z4d^2Me*V%_B&*HgG(`+1b?SS3PV3Ma!+$fpa_@ZHtA2zy`$asB%VkTrvS4GuZV+#I z+x8YM+icv0ft_;(O4CMLjJ9(}tejQ74zfzORx?#DagELF$bDijBNb;E^NZlu6HwBS zUo}Qd=+oo#CwTZuKql9bRss%hcnq!zP%aSas$OyxeM(PpfQGbB}7)sKpiG zbZ;4x@6F2+z59-++YnZfky5QDtU1#XEN;(dsst%m%cQ;bt17YZ=W~@#K#TIeI-qC# zc=zrr$|6&iT4E|as>9qZ+5J8Y^s}cG=p-t%fSOhQ4+~N8poY{YqCttAF3VU3+U)C?faB6-H#5P;J34Vk9=#oHZ0n z?JdaK7ucJgEbSwH@pyz!-Mgg?c_)^#g0?r+gbmPZsQ`$ zd;DwKzw4e1SQJkiCg-P3X8i+DV)Un!&$veYsExWv6jPo|Qy2d_8d`o@2evox-C2X} z)-Wxn#EYP-{_M@eU!PK3u;?}-hi+TSCn3*LbFEu-OO=N`Bv0!MV~oL87S z&NQ8k9|?f2Bf8XC3q1m$%{XuQPRjl9`;5?L{=H0cS#l3SjVhbleg`k+&38Ugl)|4| zVXbu3m^&U)eGV0;i~Ej|q>a-?v$&OS2;$p4cZCsvA&K1ePRh^o>yo3i94V-r?f*8p z>^kj@DO#7#=`QA|XS!m2uC_!v!obW1FURi>o#pTqnCwN1A{-1eVZ%P3^?Uf3P@0u@ z;3BeV{Pv_AZ!ai~n);zkT3~*xR~I7J;0s(+F}qWa%QC&UC&)8r5@UCqkl%v;#IwPPqRBZ#A}mOf+l#g#;~*bwydf3_IUJhVAQ94FZE3nl3c)MgI;!f z@WE}SRbmw}cAkjJz3JX2Pg$56qH<U{2%fa71F6Q*>GI4|6;QBXjj8Py!W$?AMqAT5RQg^xtUvP!T)5#|l zTT(@15S37w6>h6T)TfJI)U$;l?>QlmLsfw&AZ+M!YSn`iFN>_wLSgV6>4<2$TGF3y zMtm#v_Km}(wxQAa_?W9Zs_*8-+PX@E&aAQyl9a!)q;lbOS8Z@JC)Tsv^6qS0KaboQ zZf6F^2uHTexEXBIMai=)%GW(2FERKbt?F}E6FpO~bp}m-p=q49MyuJbV z8&%$V{vaIC5=ZuP`_KodT1V|nz89A%IkyKI|Ng8Y8`^;O%f}`Mxe}jG)iN0{>~#q! z$Ub_{{HGzNJ=w;owxRr!?Id>U&E9)&!cnJjCyd>t!Y1t*RQ+n4?s1*^KV7g>ZjoZI zo3oGS?OfVrB>1!!om|hq6DC2Q=hNSbX9L~VREuMF0pSo=ghdOOwWYV4D)ZOB~&zU0AwIu~YOmQzUUO)VfbVYmPcgcWgs%T@& zJ{H1$S-g^b`UGnpfJ}V_KpVuaG9*pVrGDcei-6f>;E&8UBtXs=d47z>=c!=7BuFVp ziMdMEBV&0|naO^PMByz3M}f#&qzh;I&34&Rfa4Q7^7JnJ_TVj^?Ms*E%~bQj)!3*r0je^$II`f=Njh^B*(z2tRL)9&4}(jvSlV-SYueHCeu=-azF|x~M82{!`fFAKYNt!5CZJ*$-8doAT@7IQ*V(d~cnmaLh$1 z4*sIoc$`>t9cj;WDtq4lytTv6A;F;TDyvUW%j(?eyj%NVpXE=qoW6GUiOI^K{f_>= zcpQ6759^gNkhBy_AXqGXO5f$A;5gYnj!& zp8i*Hp>{i~wc8>T`FekR>8E&gKxe542tIx%XplpK)}e5$B?l+oS+j2%R?@X^7o6RA ze@xs&Ex=Ya_N?zP%cWZqAlNX_A!pwo#XYp{d6^eo3%}4dedF^@1-h?Sd+<;29=0pP zM#Uc%YMnsfBQ)dv@M}~d-zRQ0fKc>#vB+c%0kazV$8?_XDR`&RT8(lu3X$_#Jc(d~ zKz!lk1^!@DQRkT|K=$8@{-t?5$A4o1jy}|NirFzcMC%4X%wILObiI@U7fr0%^*^rJ zy>k_Gvk#gXh&Sz{JO(OSDuq7qZ4ywUJgktOm8Y><+`rOj*;*uR*>L^pwJBAif*Of<1 zN??lce+S0>HjFF~^>F}2l5!c4NO1BF@wy3tew+<(9Y5YX$9K0)+d;48Nc}G9OZAJ` zoj~!0Ec^D3r)GFDb%qP&NtIOP2FFybF3Feig=FeV%HX~l21CvyWw0S;thPu}DBj7( za|O`Qhn?LLny8&|>MneW{>Z$d1X5lTp6zAJPB(_VrvO+EDoBI&d)T!6$@)ajKr%P*| zKg5(UM=HPy$#8Eh^zN_8iAHL3qUw15X|Y(cqm9gTQFt=sw5!PG`*$ zt&-Z+a+3@>S#y=ki)Z2tQ>erH2fs!w8fvQnoZZ24q8 z{ur7%M(90&h~?YwK2j}0 z-+mQi+-CIaOjmM0+2^*vEqfYFg`D4*Wp5hPV;V_3H}9_c!lMn6#bMb- z>o_%QLC6^!hS7;(om9vZE_pV9GU|!;`(m=8Poe2t;oa56(W}gQF20P;vl^tbDF7P$ z*yD1&!SAc;D^Oj-7=?!DVl(HK!#(ZD9>wJ^YN$ss)DLWMW5cZFNE{@!;-A`hVbgt25lsZm7 zJvt)%k2M$gUEs&SpV+ZP2UXIBacBpxzD!ffMDqYU4i_y2UABHVYJJe9>v3x*Uk8_3WzbAtq1rxR5g2vmAh_;%6F^|>rPR;^a6M@#y@=eqYlW*>18WleC;lYg0Y@( ztCB6RrkWkvom5gyP}W2f7Xwq{44PBUeq<4T?zlX{TqoX+ro+8-fB5iuiS>zoOiJzz zJ*w+YUEC!2WPW73%k9{96R2)a2=8`MIA>*7TGb!?5UM2kD!Y^QmW6b|&c@n}GOj6U zm8{wL&h$C{o6OD&oB)rOt*RZJ^1P8_+22~u$Z(G%)GGD13Kel7+QAeVls3$2AXOWt ztPko1O_yx~oMNs)4Q=vs(P9?a;^wA5+H&mM(U-q+Bwj%%&ADav)9Dx{ML5APmzr85a_DNEcNu>JXGMpyXSe z!SJR+ZdQV8#5sSz?NwV0R_yrH1}@LanhMn`kM;N9vtNF97et6=xrC>8Ay^`4M+c>W z=GiF*1l$v8-(XVfn5T=u(L9^y^JM=Z*Jo(f;9vcV;$XR8JA#+AWOtwHpUrRoTJj;b z)-ueq@MS?K9AdO0wu|jjb|Vz9ADH-0m~VADaHm3$0TdP!aIG{xSo{8B$Hf#4++tC& zMu?DuXuY9z!2M}+fMi=NecbnHa~Y@S;Oqrn$E&QL&+U}rM&jCc4a#higsb{_r8QBh zdu5=Se*FraoP0+1#wG&R{cotE>zu{%!;%YdOc5W_5)_(StuBHF$b9)PLWhf9^S=Ge zeFf|5bzeVWPnWz3kIP$!QMq;}+(rN{A!0UIUS!*NTL$Cl#zBzGX!z;V<`6GMfy&-W zl$a?Xe}-Qd^p5TZ>jhhYAhyzuK_)#_n;ZXeca-Qv9b%}izyXys1KlV?>cV57JG{DT zesoSzsj1PX$0r&`1GL@NDX5=*0=DLPjn>t}DUcSwmF0L~yT_(257IKju9X@dxv!W-F*tC_1gC3`W?MgYX)>*E~gQcSImS=RhL0IE|GY@vaPV4P7 z+*t;HEySBg^7s8~Kcs$Dl>D<9wxcaWv+BBVWA(|!h-S31dZQ1?HgQ3qj))y^gO!;3 zkJ`Y#u)0VNr_+$dCIT^imc#SWY=k+X3T8=lth)UEyhgbCq^s2alZk){T}{fvxcE(+ zF#67Y_g9?lYCA1_NS~N?gKp>YMH64uGiGS*XSUK`)GZvo?aH%wHzMD2-rU$~$l$E_ zxlw7v2({kY8_1L<#>_IAvu)6AJbRjM>SA>{e2G+Z4B7Hs7~tWgmeh{1*Oads%p1=< zub{=V|7f!7J;wU&S_TAU{5Vf*X&$L2`D@gPEnhK? zqUMZ{0oH~XHCyUD-)((uFzzPjUpmveZA#(~?W>>}Zta6KnBYY$#B1!?KWYei-siX9 zTwCTv@SkVqj)OWZ!hOn)LvPF0<$RSPRl+xsjTwTb?^72q-q=3m*EeUu-vIbp*P^ z>UW$7BRyunR9C6`Njmk{Sf3WXRe(BIp$6Y6;)vFJ)@{yW+jtyxCWlsJ+g-oEL}D17 zo%#pIIy2|HX)L;GyM~oNY5=#Z_MXPe1#)T>b-S*|$OpYn!P z{VM-~(W%bLsyzwNrt#nRbsmc)*7)Ojv+dEYBhJ^1T1ah(ByY7w0KtfhwZhz2;8ZvS#KWK)rbv@<=|&txQQBaPW15GOi0;6xYm*;$+4pT4C4KDkfP9FkHNxTF0 zXmjAgQ;rjYWK!|o(-0IAuHtCB{l$4j`p8)vlA_NjnTy9OU;ZHj&jvSx`V8NisvQtV zQqa91_yr&-e|iUfFz31JBJVHTsJ4rCd!kZ5pgUu1O@-mjoS4ky-e-GzKxjl9*O9qf zHn54b^98PY)VOCo?QFz6v$~*6M+F_X)49KA| z=LAiV;+zz%(IzxGyVBS$seIK*E4qRRrt)LbkM`kemN(je{$#=kYdnk~x>`x|JWd7z zgOt5|;R~u%S2xvf(UaB*++d3A_+(fankYyzR2Nu~P@*>5%bAq#l*?HABt!)puAkDYEwta1iy6 z?jU#Dz{IG-C-r(H(!GP0;+6exPhH@1l26GQ&L4hx16#OdD8E#?+=l44TA6+;87l*T zuPRmKMv28qD=gCcqHMiY0pF5C_~U_Y&)S;sNS?W~s@V)F2Z*7$K)*ox^+MdYZKf4b@^oxr?moOl&*mpDLSb-x(91>4=uL zE&pqd`ewJ<&IG=5Gxc6UmK`Sz?Z=|NLOXy|EsT zDd2ID-;?dy+&_P87q)gu|sxIiY2VsCRiAgU*P zswqf|6T=AJFr(>x!g1o0$a|0qbDm_U;=#9Y?(DiQP`&ktkW*0%%56orpw_RL1CrsmU4;+9+A9I}#` z|7=`I4nN8Go5{>d(oSM(jXz}sbCD9f?z3|<{^!df?a72fmQ#4~iM4JrSLF(>)|2Wlp$f3?lNvnk+^8 zc`eu)-5?0*S^AG)_%~-7NUs=vSj5;g$`D^$*Rcu`<%uoJqY;O0JbcN{^-Vue?V5H? zf1EeJ-8~vY2Yr zY3@JMfznI}`y$=Lu2>hw&v**G-Sf27yug7@E~8U(cLRG*|P4zwx_`-isM4c!7#b z>T$yNaYZep!e@QaAnSX}-qt4tMvFqd+S`5&ZAYVm)ud;>BejA+y{OiAeIPFblLQaE zvV^99In}IxE$T}$ZKP#ajvNxDB+dFCV?SBx1Ckmx!mZn#qJ~}Ln-A7JQvEwqqp7>i z-*;`LX;*Gcv+P_uS_qXLt(W%q%RxN*b(i#&rnpV# z-`6Y^ZAZ2lS+PeI16N<#LiTubw3J}H06hjq)FzFZfIvocWV+~S_8ILf=JnzgInS6$ zQ|2ieX`@YIeoYJ0EPCqsF_`!Q@`&{;SM2Baztk&!-V<7I1e!fMgj(Q>L7+pZN3lCn ze;<5svK^PkpO*MVP`Aj7(-HnFXWBs?Nw?MrC5}o3q-080i4542Hk~ekaH}+jskb+( zRgzG`Er>EtAx7lc$-JPyHQ?VwiV)gy)>kG=>>pBO$aecq@c$ww92Y4ps*QSj7{{Qt zCPOFeZhz>|MyOkn66}u@V31Z5IvITmCzvAjL1acG>L}qv2GB@jb0Ji}0@skW7#1#U zSMT+a>MxZr%>h+;)jsk53wkanzvRg#W`^CmB>3?Df#(Mbnei)!X#SOHXHC%{^Zt_x zH*0NYuKUfp;F-H8Og1Y;)M_9=Wc1}FE4nJ65g&Emb`}{^HX9^ve}7p3flrA|8Tvp{ zuhF89tPH?b>t6u|Eob~CKaMoyFT;0az5DgRu`5QmL%x-mUO=fpx|21{Dz|o+tNg)S zfT$0_)r!dSDm^{K5Rdl#ov8bKwOY;fdEXylr40VxjD3v+|E^IC+(^e#hgJIi)ez-- zSBWL@ur5lC3gFEhAnW-_pqD*A0Yeu6Z4$>SNnG@ntFFZCF*zqbwp?er-s{Aqxw0ne z5m^s#6zAm^Vn#Otos0K$lI9vB)mNmc@A6HAVE&8BbSXnh#y-qjZh|z?|9aZzv;ToX z-IA0E9lmYK{n?5vR~>+|{JQ9%US0O?1(O_mki7Jw^xDaK^_M14M_H(wbl4XUOo&_d z!>1GQyK9iRGd0+ro(BmldlXk3F&i)aV-%AIMBJ&N;W9&H>Uh9&9t=BHma@dldshY&M6hsQ2KJ59B z9S{eIi8h%O>nYOfbO zQ@;9Edy?<>cS3UDYaxfn097+c~agj zQZwWmoXCtOhBvo_Wq}JStcGq3D`I4saXIFjK#@v)g<(o1&=|xc9rhm37l=esv47A7=ni!Ann^*anzO?xXfRlH6 z$8-W2(lW7ugYu{bujmXi?T~6dCnuf32SM_f(MODzr5xC`qg53A9_@=$!8|~H4>ApQ z)j21d9cS;LLgqiPK~caSDX2*j@2`fg;XGt6Jg+KcR&mG=8J$P0G|&9LZMJi{*({mw zA{{IX|A$owu!)(3n8wFYCv=XiT;Di<;0h=q(uKRBYAY54Y)C8u=d+EFaN-xll)vV{ zA(desR!_LK^~rQuH;EouQgY{$alWE$;m5p|`D;wk0b=H;o?;HK zcQ+9@_~LCjnU+;{Pzc3LCbF4ClW)BOMe+VetTQU*o}daAkp9^Xp&yD})abP_Rkex+ ze6E`z^P%(R)|A9^ugOeXsEhQoV}Wsf;N*|snY_Y-7^!h~L< z8bSa?IXR(YvVhwCjXpOuoLsyEaZll%vFb{sseLpj%(!(LnlMQ65S$PZ;S7(=+!W0#UPP`>z@VevH`9 z+3zC&<-Um8R;P;)%j?d%n|q~|ar$}caj8s*=(nZ;a6L4s%1TJ?rj&zbEjof@MBG-$ z#-~D!!QaWK)u6YhjrWwq*LSg}ofoxKZ_@u@kuj)h7+KyWYyH)LM!R$xFK~sySBl`O zu044YYc`OHH}mGdp_4l2>%wUIuvtl6KgO1d<_Ppl&mL2L%u)`sS3G@oOy%JWe-8-p z`4;jc_!UJQ%22CaQ>t8795Xd1sVbR5r@gH6fMv;+!@1eEGK)pVRh?)y?4onDUkUs= zaJq$(8H8vigkT>OyULICBo0~q?%(~W*bt-_fq8GNbC#;~_$ur^ADI@MdNvXrt@lb{ zyj(_=dw6)BzQ;8)wj4QW3E8VW=_`&6A<|XViDv;^xB3IUm!w%5AFMAVO&K^-%17xb zX_8%z+Cj~`SC?=6?w^OArL4C%y&f+I()jEj*7iZa!ACK9iVjQf^)&nWBD!1IAnoy} zocIU}Qh?*v<1m!Q&R@&DPxR&1Oq{fSI*nFJ$aK5{egj)2aUWQPc2w++A05=WSFdD@ zhvaF%tXtMhJ%Gd&)xk$!LZCss^JTXXN@PxP?tMi%e@S;BR104SB}ESVGL+1E`&r^3 z=G1b$)DprxPZi(LE<}@kfL2-dY8bZb#@q-YZ7LwrTf}?S*7vn^w;n(VMmQd?Z}s1H zGeaqFntxQDH100~OlF~?g#{_L1?D{^*KCc~TrNl)V4uCI_9y2{E&)B@*i!Ul~#mWetYtm~_}EM5h}miF?O z4H}{n4fRxTFLf_kYg$e2nTbBq!@PUYh>WR_LVfmUbQ7E|>d*Rv6};dQ|HV71>|njr z02zrENBz=K8Pif{!QrzH0vl-&dw5*ifH%Wb@6b1lMmSJcFMU0}{p!*lG7|06b&4jP z{1AB%=iNvUQ-|*PF)bhBg39Us?``q;@@Epm6>J#(ec;t}BR6Pz_f$1{p7k||1>J}j z*x*We+CpIdQ*+cXI4#+7zYd`H-h$cd^zz3_;fo3?Nm6_LPggo&wrX!yt`gR@5$yWW z?fX^@Y|okBfXwy_?Zbuu67M}P)%H9}Tn1PfF#K&p-D#1YAAt4i-7}9ex{K;#0_2QWp4XEUP@f>{tZst1Fymx_p0@FHam1{8{Z%oDfORitRFa* zyb?MI38l?u!bhB_+J0|#J9LF+CTXkHEC$X=NekTamf*A0;3X^Ape(k6Se;lAW^}GL zv%P7yS`yWa(t5LoAiEqzs%5gz89%A4Zt0Rm6?WhOMV%6d{aBf!IP;)XBK%cFobFO} zRPI?BTTSg_){&U(u3vQ$`=%8ypaFmreZT_tJDZlt-1hH}ueD1p{mE!lOo;prCNq&a z2r`DC=8lC^!<^s0ZECGncq&mZPXGNQ)2JHPX)NSm`c9`$OOyH6cBMKL!|++0Aq1Ze znrWjT1UXiu(n036dRihE9RQ(VPYu2Q&c-9e*MH ziE%WqxC8vO;YN63%-5<&Ufzq}*NQ8y3C~?K zh#_DvcsgOKOB!o$m4?WSw}LRrOnf!C$q6HaNnBm3f71VL5${sI+6k1jJwZ$vf4HojPXJb3&)TJ zma~zo(jVz;@_t(f$>1TfC3up(96XR&x*$jxOI#rf-KgpJ1DIN0 zPCiH%L!H$Oj1?%u*|4LjG!@kKp4@xTj#LZ;oh9=YbQ{&IhnXb2ddKDrbVbP_@(Zo> z&YoBkvA5|;t$wPobHvYaI}Y3s%T)#Et#^GB`w^av~n1&NINvr(!C^YA+2#fzT(t@g1LzF znqCwXJB90o7#dnjD|BLC{J_7*Q0(~Zh~_%7U-YUWBHi}Lyxfq_85?J6G9ia;LFn;K zT_&T1zTR@v0*vQ87WIO^u28jakYkw@QjX9xtkr2>O&W}fZ7m*kiX?rC9T72@$iql` zixr93I1_Tv(|`%6H&r}rtAFIPSKBaG=!aCCy{BiOFCK`ToDFfEHvH2v76Xcz3T$z@ zERW0Z*mTnYEQBjk>e+{2xg@_=xRFX&#T2w%u4b<=tkYqCJA3MluUfg`ANv8LybUnR^U^^D6Iv`F*F4K2gLab`UEP6o}ruofS-H!o6 zSAjV^``mC%4=8Y4tXi;S#q825@xr*2DC@o_74c4y^0|OOacEhZ0@-##&t386KBjs_ zyA#<$o`0x048E|Zsb&Jk;0EmycIgC@Nx8@XWnRb;>Rsx`MDjI|GL?)`MXzr&j+iCs zx%QWz$waI8icCrwe@lB&SC*NS@?Q9OqBKF}Czuj3F8svoXLhl7e)30^Fg1y`Uu9Q| zhT!+>G(gfi1zewqHfXpagj|p8tTov$uo6>MnJ6??*HPU{GOF<75LmhC_^%B;Ckmu*I+y?x>d)J%7M&{af7EeDeT@`l#T28Q`S<=}=brVu;zT z>uD!eD5(@3jDDDIaIF4*P1Ko?R-tGG2ZBD-Q}A$_us>Bo8Bim0U8qKBC3vtf9d%HK$wF06U zOhF-?lzY@aT=BRHRn;Gqe*D!=vgoani|}(`I;;t;O@AB0%4sn!rqg_1t;fR}tNjI< z_Ue>TbFvVbPeMb8TNwz>{n|2voVA`3!O;!ePxv1Y(maMx7`z$l51&@E$M2)~G=>kR zt%pYb8PDr!Jub}jBirq_c@@Pf>k&Mr2dpOiI2j(P*JeWQJCu0(;(F{e$*!^#*Elea z*CsbrgYAldtUK_}WnZ_@8Ux!|o0Iji8!B$g>!XT6l?v3!AMqy9^YmOv@g4X`Ew3^) zV9%W>{J2y4tWwJ4guz1M{~&?LPyF7PqNe*Jk)gO;kBtO%&B6GxRf(dkwYr5&;Cr}r|5z`p^ zCN(W`Rh`6?uO*!i#-iw+YJYSG`11;0cAwS*#t^EZ#7@+3rZOF=yV{Y2RMP1Fp-;ev z4>&%&-L#}070#Mo@U_o_eT>}REmjQa7yV|B>VSRHdF|PLO=o$NChFrz;9lu`vBv2E zYrz+3k4lNeGBxfipEqBc2^(MA=$&h?@OgZG!#9T-P6xOKr3UMEl4OayFI>bId8ZnK znpuk-XIcz4fm?L3ColhtM|OE!R2FImiL*U!pe`d|ih1kjD{jhL^fJ+&PnWmPd6DJg z3-dN58P7SWgAGBUmRE7ZU)E!KrXa1mq`r zG{PtU^zATk3R@}Td=y6jtf{Jk-7PfAbVgwqU#3>}+2_<8!v55Kxw1Sj`&ZInGAXYj z2nS2?G1uVw=w*n2&CgZ%)^(TFwMK%l5_PN7-b*S$moIlq8|DvgiAm=RLJOWn=tg$& z!Lw5nYq7{#E<2459GFf#@_5?Cz|XrgCwQJFMfG z9kv$BbfHV1?&rNLMw%GMD$|d)PqcL!K2vGj48Q)Bt_mDnJJ`7Kn<#X?EL>>JNCRU_ z_?(G;6eF(Na8W!F&Xkia8Ag)u?e(pr$FRv;i8T%biruf7$0?%l$?c~t#D5XEe zTd_50(yp(2*{zsq-?^?-fk?U*dVgH^v*tCUZDr<9eM2NOU&k@ab^)`vf||>3m$W*Y z{_&NAjVIs^i?nY=k4;;aGjuSFCR~tI{b}J|wB+<-)eO=|HE`{ZpbBm(Ltgn2)Ei@% zYrG*Vu6gT|!z0SL-X%yS0t|jJvHWxF8o%uu+3E8ezf<%2A`a<5VuQ?Z1e@v1x!2}V+$G5T4)^4-Z^?n9Fh@As&1x8a%-OQ%2L(Q zEr&r9ZTxq|pL{87#a-4dbq~@PSBqWuH-vY+T57kf=hv)*T%!%gy^WIJ~#PDY?n>2_0cHL$Ha0u6D_%6fhl%v@aLN#e*krR}}@u{4PKH}G8Hh0(h z-Y#t8IPi5=xNk!aF)_huA;Z$9;-AVYb-|+q{;*>_rd*B2UX0`h<@u=r_RKHlbqG78sv4#9jfM8(M6{ezL zk^&k1C*j_vSL$4vgU*9rQMB-Wl7K6#4L|r!#eIF*?IhTE6dReWT2NHB98rR=(wLZr zLGCfqI#PmA4qel3%9*&9dQ9qq4TcGv^`pTM1b%|F_~IW1lU`+ZTE6W4nEd>$!oa4u zq8Bw%k$AWFi3LC-=JGp>MOCs*yv7WA%gp!xI!QD|e|2tb1zQn@5tMY~^Je)%buIq-gf{yQ(wWScKbuZ=ICnpoB&j3< z4I6q+UlkWL>q)O_`1Gk}?4YEIV{@U=L#zbdXq~Ui=sMEP2WiaO_oCo0=U>I?FT%4Q z%2;tk9yed$SR4Am1RV;8P=M4-9i8Kg84Q}gPaHBWcT3GM+~|A3k%&JyS_AspTSL*I zmg^4)r?@mVmhahO-h>*Y=M2ICJnAOETge`)@pu@~uS8hGVusw3&OvtKIb&a)H zqdCX*+mG>?`?0IYV2UrukY+FC8%TjSLWsy$72Q#nLo-!1)3?VnP)CC^dfrZUJx6n> z{1Ze(gH{;NQe#~Y%D3~DRjfZ#=-U~#eES>u8CM~cyTMb6LNoim+)33M%m{3L0!^!9 zsFjQ0RmAiL`<_A3pJ!%f)Fc!*bU zb{;GFr`d&B&`jmEci5U5Zi&#BU9%iI>(JDs;S58$FfirGX^?|;&C{KINU{FAe1eYq zpGs0#N`$BvS+={!U=1HGVA3igPd1;tnpK>@kB#%uhi@9)Xuq3Ov-6*qyid;_4hIwO zRUxm*L1%oj)kTJQy@IGdJ^!0gQWFaHE631pA$d@D3%gt?i(GbzC1`4&d5fPrvX$lY=&(M(oD^5&r;4lKU$HNqfqf**kAL6%VQZ^M zQRVPpwRFR_r6~&=keunaat>pYncw~YO}A7b!M(K~fPrd1jI5FtyG)@O_l*gt2IHU* zvYp!ej4U57Hu9W{xmMU-VKE!SN(>YSq*~xD;{(Y*D$_w6aQ{KOxV@63?*|yxPYVcm#$IrZ; z@25F>|2^F-D)$HYvKHBPztX=l1M2MiKBGOnl?-3zP#P@-jO}fItbdmT81pAqFH>nT zWX+#|TM=GfYQ$H;cY*+8&#A{siPv78wOGbfYkhE}bpiVBhli6peT%@YPj}zIy$=n) z#&ZBe(~zp$XwR9T%dlpT8o02^leM?D%6Wbuarq31L7o(ftHK$r)LO75Qshl8HM-Vq z(aVcYR;+A#B6t1$_xt_V#mkz$iu?FSSz_A`_i#pl^NQjcP79kNwkMy)hOQd&W9oqn z&RNKxGm8k`cjmaL5W{}ik!yY`)Ohgyzl%H{bZCQq&trWXyt%)R?cBZ^awcpW zN_)?`rcmad#aSmb4@~%#Fk;HO@p}7H8}fmQwbvsVJ>*9Ugek!8C`*1+r=J{E7G*yh z6_bvLjQbN|{)fu3rEkuKCF|K4`>j(8Bb&wKpQ9F-)c6yBeW%x+6f$dig_f4gU;iTY z8PaIVV=I%Qmw$&I<$mel&2_Ras(^L2Kal(VfSz{KOg7m_{Oj0@zoZpNq_^!7IV$iiXpnI zH|KR=h|C3Px?DPHL*=V;iz=oK;E76>(tCV#`%YFhO}FshRxK<4j} z|1*{^zOWRxMhLmDPsNvrurFz+zeu>d($?PKm)f%W@3_Q(J^u}AZB2Y$XT2MxfFrE5 z8$M8VIjl7+e}QZ>)2mqib=c@e*|@{m-L81784rExW}D^&jo6lZ)-u9TT#B@BxR z1^sLEpu*`=51LxtPnG*%8sbvhJgLfS^v#AN=Qt3u#hv`Ybg=kIT)VXyOvs3&_+x)i&)14Q{7q>8@&+Kmt_~;1|?NV+6?ww`cL0bkRLz^(axzSvDfwK}A zEXL9^RpEU=3mS`^E=pT;wVB&cef6k2m-->Bi&NbWY05Rt_w%soiBCpHX?QmtOINiK zTs&?MyV(0qHXP07JzC~>!6t(VU+bNgUT*~$bwE*`4wpuW3CJuP`|*b!jRakcK-@|b z7xJTERg1T_wTJJK0<#h&j1lhytXs*qN=Yd|&U^CJyp-eU7i}b!2^Jq_X-(m+uG>^! zEHQVTT1~5B#|s|SJHe!I!`_jku!pdB*V{r3I$6Rs;!bTooi)KnN#cC3vnftu0z*Tu zrgSIHH`3?H*BlaWmR=Za=kgmD7Un@E?nBpg0fV(orB@9uZh zE5p_|>eFGjP@H9}t_S2?W?9qyfnl^3Sx`xRFkht}-DtP|vvL7rok!Cvb&Kys`^pN<{AwD!4xZ;76I`nK%&B)L2r zQsq{U3FNY()>*Du!TeBpYXziCn0F~@lOZ7HRm@Oz;QKxOIurcYsq-XO70gc(A?5|D zc4#BI9taQYjZWv0(z;D*(r!fB3|v3Qr-ZUky*(J+-MvO>8fGwkz>zni=Bs$$IIDpypyL7DEKEapTo>kv0Xuy9bp1&j~8}sA-h>MB{ycRxmt!X#Ry6tC| z(;!dgztaZlh`H;?P_^F*$?=({9Bdad@jyPR>qF5i&CZ@|? zhf(+aB)3-j$;N3q1DoU=X7y8BxZO8w9>9DhURG@4wHb^!+s+WA8enFhV-o0?E z!1VlAMv|w~f`l=Owo?#RUcAA4UN73H_KJ-`41NVhZys5D4O zhX_cDA|NfL(%mpfcXum@N`rLF&kTcRKI z9+gsIIztAft#yf!v`zOsZ_EaX-d>=dygZF0h;*ZX$YC#UmxhJ>OdOwF{o#w|xZi@l zfGKn0MovP_{$Xq>CkUJ5=%JRvt4mM^nFICP)t2+ar&R1uR(cZBXdi0*a8#u4W$lPJ z_;|WCAv;#0_X#*dNzKT}m;GvyrQ_u49hIQ9u3#h&9g~^bYw*qp)`RPxt4j#-U)5=x z(XkS{Ot7ES;;zvHnPSG5LF3;Z%SEQg3;J9?IhUx2(jH4gkN{@fIo^OIg(b4aiA8hgA)TBjI0(~9Z#~U+H!90 zCq_HL@;+#@TYTMlTKQ-}zk`kjKpISOUaft-zUo?yveohL@>*Yz1t>P@a+}sORaZtn zoccmG=_Q?!)I68n;;%m6K}VN`v9DibP#?5#>E&|o(}_AAfJxb3CZEYzt@I6qpFP7v z`bYrqTw`mn5OdrXJTwjGOzDoz+9e1^u?=O#efUl_B|er_u(eLAwBIxBV!y zz9*h-m*>nzDVE29=-_7l^mMGFm^b31&}V$irw+UTHn?XI6VK-H8N7+6a?&|TM&*}5 za1o%`g*(BENzwA%sWE+(*G4r$ApN1vnZ(ga*a<$QywKTwRiO5@2IIFY###~FA7ly} zKpbMZJyO|a;V4_4q0o3X4iJsrk$iJ1kn%d|J? zA(Xk7XiCIuN+@#qs%F1|hKPV@(?Kw-nb3vteuXV%4o3Onc0L59rp9{hfB1g z`eCG~rDS0SW-KY7t)xdk9uR;~2yBz#rKbpbJp}`4-YQ^SV+BKdEk}+3URx$q9JZ3qzNMRbRB?@8vlx(N@4;#N6vo z0%~#}?Gd3Z<$_FN2H%?~FWD7DRxzo}!xs4E#)cm=sPB?WZ42>atv(@WFiElwjiTl7 z7b&+_jq~Ulo80-cPM`#Vd%J1f4%IhadalSiLzyni@~c)&S8EH*NuZVJ8bG3XoE?s8 zLVlJz)l-~z{W(_o39y-JmUNnTRMlO@E<`yMaLe&Fr!3Jh-Ubu|fkGqUri4uSQ)iW* zNlW?PrWSj?@7rXV*67N1+EM{7>UGV}GK;q8VSVlmt&pv)4|btCE&HGWN=#eVZz_OX zo&@VE{TewpnjLx10MdC;P6}mW>N-|;`&gdPE%s>AE6-_`9;EZ`>{JwNcq1;pMgxIL z^0FF|LXD?LPmFqepN=(l+u0r{8IDgPExDow{VUGExs9a@M0sd=x z5GwF|O@>cuutk7Wn;6%oi}Fj9v&H|EA`!8z7k~WQ5o~)^1LdV>aczywD=+v^G+z+5 zl^(r-peCWJphDme=IGy$-%jY?9(9Os1Y6g!k*d9qc+?m9Zj$mB;}IrubECNS{64W? zq@CN$y!+SlJB_>iAHLL41V({TLzL%M zCzevr2#0X2x@jg=>zyF**X-UYSim8I_&CDox6AckpXgMq8ux1Yo`kGvo2X~~6s5Zg zPvHEEI3LgBf+rnWT@J@88=;`W_JyPrfZl&ln*HLxzTrZi3029I0a{ZdAc*ua+eqjOcVy6sb6}p z5wo^}Yp?qHSv+5fbMOCRFqOo%$`{FNr>4^WI!~AE^PH*2Z`v4bP3UUt1Q~i_6Q(N! zT}4mnL9C-F`(7dhP%rafvfnP3B-{iSo{OO;bUHFlJ`5m~af3+k1B17geysM=6HQ`*U=yMaVE5 z*B^thoSMC_}g73I`P5CW4^l|%FT zZzhKiEg3}i7HMMeD)4cj}9qrioGrC%VBU>#{cqE z@OF0F!PyeOpItV?Tx5;xeE&B!!?>#W{e;X^qApZlf5Mu{e6*Q~+JFzMg}IOLmz1=a zzARS*dWqc5k?Qlyah>gDP9dFV z29!*#efD;Sr%e9Wzn>vo4E2WgB8U?<8eD$o;sfu?0vt~IIX>UC7fsn|4ow}8m-!TK ztU#!xH?&kocYeQ3-VoGWyrOEo5ZwH-&NIq@240Yr1e4zJsbz`jm1USMWPFw+uK(+~ zkQ<6}CRPr%xifZvITC^!^v9@t-^iJeGrZ6!GVkQV?LjjVOAc5Tad{wosbkZg4 z0ot+D`$>HeNsx*e=AD_}x@(Yc+DPYc(fP=IlbyTvrah?i^aM7j)q;iD1%7qUCH>6e z&x?%qi=(i+gFxW9C5OTvFMjU?xFOTHFv+ATQMSOH(`>j|2^1UBmIhDQ;aF1{SHaF~ zh#nSyDTFwF&TxJ!CeKJxckJJbiN%-7z)Lb_(>pIZr8jukocoXm4YiE0rqNVPZ~Nx1 z=@;F&@;k_fRSQ~KeZbA zp*vd>D$R>N+23VDS-;@Ed?tQtDzl6OGC%xwr$8g%$Euja88m4RTsPi)eDuz8vlN6X z3`nZ@a{=0H_8tC>=ZU^q>!I{q0fc7~AQ0&0=4WjC*S}9J+{(aeuzqpgIo8N|TDQW$ z`=tBjy-*)nQ%C|21MWAf6dOiqW*NWucm{@hyf1r{WphmK%fu+j_7KEKuY~nB-kjFE z=?`kVMD6OEyAGa z{$))BoC!NE-W!ih3vk0bd!1}?rF_A8^=yxTiQB@=)pD$;_0VO8c12>{+$hpCk!k_F z=G5v77b1kWqSPZE{M-Bfe7WxMOH?Wi3L(70_#@kYJ4`CDnfOuG-kRJjDa-El1h-wB)dkDUv$Y?L z+?y%+t)J+o?)AA}4wb@P2JsgSP7ZREp$Gv>NHB<2VD0$LZzlf7Ky#%GFV<(V2X$># zwB|fu*o!Rv8Mov7Mv&~?v2S#78i^I>GRdkmxwH6bW9o=!84~V>dS>H;)H&PrxzPz8 zrgrEfB-6ERF5N2c4Xj;#h4vcqvOPl2d4hS`X-rT13mTpfeIe}nf>bp;b1F*w;%&`J zszr;$^?uaeoF9H*UgGPAg}`zdEhlKwiqWk%E%_6xKt?_*_ZC|=>~|Ptd7ap~$WZi} z8i5GB_KXWxehtad(QwwxeP9m~nDsp5cG~zU-c>|k)}Kl`AdcL!-L4!9B-PaAQA*)u zR!V*Jm1`JrFGk{OUA1+;lP*iF{PLhTXfaZxxO-8dmDcfxlr~Z&cgm_-Z`>$|CbmQ3 zWsKPM+2Z_CoGRYww1cXa%ZyWNqK@_BmnEYf|Ii#?e@LIZyL%`0S%%TV3LV732By=J zO#17sq~QwMX@H!|^rLVC&#$HMkPIHA|6{pU^L48CjNB_&a~aN)52oE#Gb-m&ft$Wt ztEQ}}5Qmwk!FP%S#ua@Lr%k5;L3G|i^?Ti_-n^3E!qIEjK8CeCm!lyC?qZ)n$*ONB z)A0us+5uiUbg)=paP__hxSqUXP}@AisU;_fR(Nit&nt#X&m@|@<_3haqHKD6DDzcUsb)nAw9mQU+x7-++oddR6ltf#!;mu zv{_gYxIH2ch%RWe1Salr^Eu7>?g_$U*GN$@jhxPP&Ub#Jpk(JMO4-#(HLMY-!}<^1 zmAs*c`i!wgowwlhBFXg{e29wU@q|%TJ-tu&wlrY4hcx>$+^ctOD34Cp(V1`n)yIVx z_6iq%V5og%;N?`GYmAO+93u~0UqBsfT3ow=UBBDpF>YDWzo7GJp&Bx0HgVRt>&11s zKo09-7r+ja6l+2w2${VuN2HRG6UarYW+`T?7 z@d?OF(ifIA3BR{*>dLOYbIOJiZsBj^wW%}1cvS4t$hHMY1F+l6Pr$Yp>6g>1;$u#x zQd?T!l4^wey1^p|Pvnw-BZ0W)bL_wD-IoA(A0{0n%G)!H+b!vex20rM2K&)_Lf7j| zkyhgu)i{gfy7&8hTE25z?{t4U(K$A1|6@jboBF49d;K=veB>OS)wBQ&aemO}+Try2 zEsd^=1owQm7E|mV+m$cAXLcC9HT^3+r(Zj}L!OMNHQGDnN_6B5jL@`sf#e)y0;mI% zdxxM8bFWkUr0n@Rnieqh;VAsMUC&jK2@{fHI$Nh-T)eSUKfIgO)=B;_&%Q$;a6WPs z991u5DPYtFHqSiu>>a&xo4yhGYL8^~b+J1IpCgVVc{dq8PZ&2XN(lt&j$H+(o%FkBqSKWNJ13nwN;3pW*zPLEzJNAY|_1@kNx+ zB@Ea9yE`PmRQSFqZY#t0a?p~78w^V z4+jUINv4>t>bcA$)P|jH8r-Cw<9EDwJzq}3FY(&8XdTtDp;^hScRh(PZ6G)Bw5zH( z%W!e_taKDGbNf}GPx?yBC}3|z5casR;h-mvd9Q=Y=8oWuDwUJ*&y7cq{z%PrE`F zYoGX%7%$E2eeI3jY=gH40f{9gC{6}t-CV9}`$$d6x_ydrJFTD1sC;o^$t^%?92DdFQ$<ge}B0i57WYdnhpQ{jOkGO8h%dwOhV!b}fmoPQ;d!$}bYMgYgWfeA%ev|xY>hKODkYcp z+%;+{$s}q?cZewG`nmcD$gpf>P|p_WZd{?$vJ|K@A*{$USnOQ&GdhMy}l%UZfg-Mr=yvp>4 zf<9~=rb!WM5-XYnU-{t)-=6~Ws03XFj++>BcbRd?NP$jY<0-Hf>y{1#mU0j^VKD|N z1Zg$2Q-a~N9$PUnq*0;=^3;!z%C&g|+zM~X=L4xG->vVr(p}pc`Z2X76&c)Ij7^9z z6gF7aE+=YF!TEzT>8{q~=5ymz4y4RPI>%Ov>vvM?9~)^jW^nMjFrce&){UN<*-0t! zF|>AgxJe_?_f4#92~no28kJ{G_Bf*7H1!Q*oMFk#s;B`66QDlOy_a?IGrt@w{3FtI zZ0b9M>ApP|3-mS&k$j!P-cQWJ{O%@9U@liRXz2!Um~p4B&bSAp(qftNN6FG4zIP4_ zA*^H_F9O#~ypIbk={|fE_je8vNU9q17p>}k8mzz)5ZV-Ho;(h3nOT~480^20gIJ`k z&56ktq)nb^i0{6gMO=(lJ8Md5r3zgGj^sWwH0T>{Kr-hD$H5WJ4bAsftHr(jb=|)b z9?24j=xMc1%OY}{fTihB%;>;6Yn}hD*cd*<@hEEDJd@yama}EDamsSbrJU2WPv2?m zb9o8R55q!2Kp0>x3A$NgmB8wx^YIj9rFRm|3I2ueC(@QyY&IA=g*s)DWAxvyY<&_% z!y6vlOo9!TJCS7w0gFEUtctUPNXxpV*%b0Xi%d|582FWL8MI(fb>|S5ph1hyZT}wF zZ=>Ptm5x2_+8dTTqdNx3$uS`sdf3g?ZfkQ! z2tU_RJwfAl;-;c53mLDe&BZxUE*jk^p1f%qTR2LEGW0;y$FBAXewjG5{46HQ)Bi0W zLuUDjDc~!%s&Jx9ltvkyAaf*M34% zTizV2{358K9P8n>x9CI*--Crxm(Ba&Ka(MPbkxBacVk!2o2Z}=Dl0;kU4-`hsCEn! zr71*IkV*8s-w%xnG*CO4N>feO8EALNCDbFXo;AXT$_S-F3FoKdq*bC<(e}nF3uDe; zeL-))pxb!nOMym#L92x;^iiWf@TA`i}6`tk6BfV_x*?E)Xo6rsi!213m;IpDd@FA-^@D$F-kxN;O{{! zjpF9(T_UlA?DOrYms=Hs10VKi%JPJ)AHyS-fy--HqEF6JKC{OTdXl3V+4T3?>p{qv z%H0H_{6T2C=a{g3lbuMJ*eu{MQ_Hsv52MM&83nKuoN zd|Gt#Yf3g*gOXD43ROe=FC9A0T~TxuGMi9OCeBIGX|&`$FD^r58{;9AC z7I3K--Fakv&~l;lI;x-%Q}J z58nf`@>V<%lLF_pB*Ir9?yo@}H2w|3i{X6b-Xef3k{I#A6y^TLL%tHY?o_3<5M%C; zu@oNFaSyIW-dS9+HX})VNE6B`hFX#7$}Vcxm1)$GRf0u4TjrK*KFig;E#sby6n;tw zj|3IR#obY&Z=)AF1dl ze2z*2=WEa0c%gqV4llXy_z~F`jozmfL9a#42Q_J~SZt%~*em*pb=@Ri(#LZohISN- z)sV09D2_Mx++$$~Wf$h~oQOdY@^h4b>#5R76bDgy>FNXbQvg*z2#UU6p}2z^-V6duFbe}fzR(h8NF7|w1HL~=lk z(&op^=G0b*Q6?VP7THR8QnMIIHCG&XASbN!ZKEilSLAcc1C6HnSUB;t+j+AKlrBz9 zmXm&=Zv1=Wc4dE0t5DOZKj?E~K%YrD2ifi`sIA6m^8TUKRJ2gjnTrzR8-<=W1KkdW zm+N$ecpb0c*CHw0ex$`JjNV2s84I6`kR*yABf1>pq*HvB0Rr1DF%-K|qF8*^T}yGye`Ht25uMN!6kn@> zpZ6;ECqgucTA;*=V#MtD6UmU~h1lkIqS=+D*In6YFi!|sY1@l?ci!}$KFHOeZB9C6 z_fy13fvk6Ij6lj7_Vz0Uo)Foc`wG8f*@oQfKbf-0$~fez!rMUvtGIh{hJM~Nr$H4` zK?94tQj={d_o-+wEwyZ8m>0upwqZ|dAf*~p?}>l#g16Uo!T)9JLca+&)||ldk1?)7 zs|T%S{ig4#nW(PMa3_*$%9PLEydlm?<2kq3cU2sU5Jb32ru(laG|*qwGV;ntw`hG>sWhq9^Eb(NTY4$4}i_*`@ zCkh(K-uKuQEGNVfP1`g|N_Ov_T(UIjS1{a*>o8-W9y87iX^n znB~$SvLnGR<`m^O6zJ|^@V!z=jePx0At&z`qc^E+sL;lnY}>yPEO#lxQR1i|Ru}-Z zE>6w{0Ou$PD@`{Te;L-^f3VI4Hq$*%+xz)o_Riq!RTOt;!K*umN>{qcdlv`FzQ|3S zgvt0@044WsV(Qk%?SN(mKe|MWsktbmR*|6-RnY0+N`}lFj}WgBRuwM$9@ZAehkfI) z5-s*K_HeP)sLWiW$F38@3W@1y==L!hVNp{9+ALOSEc@aW@JghHTvo@oW@CL_E!{GI zS`_l#n@3gQZR$bI+=}zPxnrw63*S95{n^SvksMfd0WorG%k2v1hp*f+{ksldytB&{ zb|+%z#Q$^aXWE92qzB=cc6o9eAH%k*rp%gC3DV9!vlzrQcmhkiC!Sl;H6tORO;o~b z+gz8QX&AwAZ|djNOQF0TLDgsT4~+q+ed7&5Ry-k`Hco$Ps`e#hhicDc^tUf!Arw009fSH#zckP;U8&r{0>qzu#aeIXSB;T8NXg50VV<8t@S+N# zf6gpr5&Nl0%yQMYP4Gl8uGfq~iNc1t?|9rvl@cYryyU=5PPjmzsA88*81E?+b`?QA zB(BJNSu!2ZQD#yXoTRWK&MZs4Uw@?Ycl>J)7B0}v6yNRRz7jFOC)TfbPj2Wm=Of}d z_aHH{2WQqVtImIoi@Y;9bD7U=jW`z}gS}|Y$?r2-I>i{ zZ+^r^h4Gv{hn?weSz)UtP4CKiYk80J)(TA~$P60HUl5~`h=HMSM(zJS*sF#}!bF;j z2)WJ?)=ErvHspWymNE0uR~eA;cAFv90nK!2N9#l45G+Fp(9t_aYHOl170=ubAfvJq zb%SjZz^|{gD2-yYSOlkSW#GqtA=Nzviqhj1%2Dyk2YwBPhg1kF6G+>A@YilbBDhsg zjt^O{ZdW{SGcNReFRvkOaEqmFrL2>7s(-BEq&>-(g_FM2e?X^h@YGeJT1kxt0KiSN zQnbUU?ELYqMOJe@ACJQBld60@=#Mkc{BioO>W~ptNW)|Ea0by`_O1WG=y2c#AzW4B z%5ijdTtsyK-B>DZ+II#GI}f6=P*7wqLtM~YIM>^P5slrj-9>lw*&p&VRn-qZuc&4U zj9o|-diTGk(=+MkAKPNVrMs-*;LbrHvEEP5&Z(d`n_@H-Hv)>()KIlukh+wiYA{r* zs`E|YXZ4lrZh!qw(a?*wm{UAG;=dATZVE`><=D)8_a}U;!I{0zNaj6cYcBrI-3~5Y zQ66!McWUXR5XY{IRcjb?-`Pz2{6sGo_Ta3C<_gShAyCI(f#$&F^22h64Qbit3567p zSfimP^AaLI`O}9K8I`fO^guLmw1VP8SfN;*EH9(+tA0v&C;GDasYXJ)?G*g5a=%w! zlx@1nVcfS=*JRcbN9KJjTYmoQaJoe1o-b*Q)JZCAwxQfkV0ZpPk70Tc#K}{%o&_DS>Zbefrkp>0Oj*3o4>jxyyR25Q=&(xO7~1@_0Tc zagh_anxQ5^3#c1Z%sEXVgu&eBK`QWvG%#%={kk`($=o$XWg+SU-l7}r%BJt|8*c1i z40-K(PeJ)xx9gTyv?W9V-V>Oz9GQuZav9^GvTRVC`j8vU6efT3cMatZDJso}{Ru@b z$cU<#aG&QI%xIw=LB-N&)5-0<&m8m+-CZ>tUYIgpt5b|WD1D)CXP0~q_tFl=DkvQ4 z&MIov-E1t7K^-KP$eWeUCb&gau?(Y+a^)LL?j8^w(5u>_!-;%UtvkTngGT4Ab5YFc zS~O|xQSIG^V8!fqasyGEO~G8nb=6@6xlW@-4C_g{gnQosJ5>8kxW+s7=n1Xe@~_e7 z@B5gbZjrb?TGml%I1ZZgi-*_em&f{9hjwkNP7p(RON>@|OE=2S&fRgY{Mph1POKPm z8&6yumtgQz`oL`d);!Kn$kQEMQk3b>)F%gpr?Z<^D*5yRxFgNx3qatEyff8vYram5+|Wa ziw^#7Y-wmF?Uvtob&IH;00pah;Lsng11tn?yn}l6b`c{qdSJBTvxD!@9m@! z9iZ!6wYgDDKJRMPo_n0AFVI(eBEq}i0u)kvLnM>@CHa9w(1RW-*8G7q`uy{8nlDI< zifg{gH)6uFRS3h)n>$7hgtYVnHQylK8qcN zm$|V_!Pi6how>I^UZz!$vNR)fy2izD^L45?KW7;%MX(XGGY(4JT(WnCvK3Qk?bxWl zvf)q~;`zg-A{~q0w}wItn|>vQ#cx}cSS5D)+#`TLm?XGSc3V}JZ|mi(XZPF>GuV1+ z?8Qk%f6>o&<^NjHHX^Rh%7zl9FEk6N+IY?PT!g{nW^|%$ zd)H_*oRaIwB*P>td$oG1L$d#eJANbuu>kPn3b@F#qyS6)uLl+DE)}Ou7;a6RSVp@Kg{7&b=^3?< zu`JUs+IV$ujpv%z;>!8r@hnA>;_e|ICzWX&cI!N9OI*(qgHw=kjH@(pfmWfha_C0U z4A-AI%Xx?h%cH$dy7x@Mdxq83Jl0NA>`kVBtXT9%&$3Nr`6m(#w{WRh+y^pMV%U!p zCC|dClSD$eH&Hy6%BzF%rF3M;eAXw(+{eS)^`zV& zVD;Krv2%8-B}I16f2=_~+~6XC^0BD5FM4ZD_hBHn`F@SD&~WBu293ViXvLua-q8_v z7|c9#hdOKHa%KGds_heHv&f+jS9C*kBjx=_ z1dyvPm|mJikOcK2BP`J5CEJjv#*!{aVNKUHoo)@<)MHb(Xglp0pYOPPzlFZB1Y4Bs zli2FiNX%7nb%815jteYJ@0&5oR#v-Dnf4PSS)eS#hMWpmZ4{UD2MjO^Vd+76H<&&1 z7JQvPY7^<|q&oY>%wW&tLhg10)NNw*jN+KOibeOSuyOOyZ?zxRP z9B#1@j!0#aE0<}Y7-IxLGJ0X%HMDnRJ*F(C_=o^#%_N<`r7Q&6N^XrH=9{!rCU!WiWd)fl~SoYjG(+m z14)q%j>Rr4pG3rYL^`pIsCVvlxOkh(4RpE`*Um2L*Ni?t(1)a5(UJ>G=(~P)$nePU z;hJVepV+llZ(;8mP09ELpNKgeFz77VVSfdIxmur^wa*K~%$)>24|dIjFL{OR^=G=R z^VgaKToalOj#4!W37;T})$wyGL7&x{aU!Egya^H7VV97+)|!ww`>Zip1|ZZ61{F(z z79|dV!jbt?$;r=ZCK#jq=IM4%&AzrCJS%iiy2Q|P#+3%+bg*W54s)7PH6$DE;cJh3x$ejZqcHHQ%TG)JNMQnHU87?d- zA6$n=0X40?4NaK4B*~b*hgH?1V~q?cR{yZt`}Y}R;c@*{1Q>!fR>_av88WSL^g!gM z3HDi{KP(Y~MMs78ts9R=!~4oCqSq`J{EjZt+clgEWk83bio4nm-?s?PWx{*FV`WbR zNJ??hn?s}?wFN2Y5w*0C(=@if&&(6_dw$7pJY&Ke{|6B0+YQrbzBxI1|6ILT*>@#(q2EFt|QQLTk$< zpS-hy5oc_9v7smT)5-&gFuG(N>RTUQ)soBWv6x!}71f<(M$}}GH(KuwS_U!8^Tm^a zog_lIf5_A~eI$^kKY+{$>3yA4+imgPHCOLi6&WLNq;N=+nO)_7PIxWyutt&-CQo7R z&$sH(;K;$05uvsdxEx`Dur;H)#>;=S4V#}9LK~aXo&`M zo$bxos{eo-5Dv$IPZfV&FGpJ=Ej@oU9+fNs~5$&koW(jp*Hgdb8<{m?#6f zIASs#6Ua|yl1S2Bbs^G}ZBhJB#LwY#Gd3W(;7am^J1^#Bg1k5yZv8R4xGi$J5B6qHMvUzMl*S#(OcHiiW&3VsIXNZBbOXn{ANO zcjiodfJelY=&IpciB+SGIyhwm^Qx+AxffH31>`@xK)9$JCoXT+!`wzU+uT-qL)HSM zsQ{5-#4@o7VMQ|7sV)o3-ze}z8JdP!S`9uOA5Rt zHC+!|uHFe`cxE*s00i=>&$lT3HL!LAM#;jh=^>>nI9cE}5 zq%d1h#*pCKFVvhhPFdHRCg!Jmpi*p7ai97^?^`hI$$OKmf>TL&ad#xw1P zh)WUj_HL)brZRbcT@K4XO%sDCaGUmUCCeZVW*}fvHJ%nb_0#^|984T-w;-Ea&hEyGd;ZGWXj|o6vH_YNGnaz_81TH* zjL+gtJ^oO|$)tt3qJEjlx(2;-q}WRGUUj7DOQnxSjSydo`Ya&nu~lxKqf+eE8uz85 z`#c95W0jz^-q8{^ZijTRY^@9&=q5IJSWxf8xoA-s^N1L=fIaSsoLo#p<*~h8t4TGy zu{f}MP!kdC8mDei8uw@K;1Ph_76eV%4iA%0Ej@90mw|Fi4}{YPzu>)q@*7PzU292h zwE=Bu<;*l!g90})MN`w}g)a_UdDO2PZUD+oIj{e5atSMeXgq({s~#nNF>^_LZDaK@ zOzzQ;s^(0w-k7{ug3^`zk)6gxn%ypWwgb9-DoH|d=XJxub0!mNE8N@|4xVacyrMh~ zi)I5AxPGuqSwF8MBUEB zRhPT0{arx)iv`CUYO>)qE`73=bTQBvK|e#=r=?R<19Q)f$8#nD(v9fDcQ_! zWh2cyE7hUXV|y>5NrJ+6Md7EfgXmAbvK`Tdv6ssyyC4Q4M`iBC%OP;*F{OHta^>Ov zO+9;*p#t&Zz*RdnIDY9iuRGobrL{?Ew~=$#Ns68u&K7<8SGx8WKY-*XeE&iCzkd8L zly2acYZzEN|*p}aN&Hp*di(AObEBW2C^8aBTctGs1nVrl1KYXqD69B)YGfRzS z|9{WpKjQnHynX*8KKkG3P4<7Z?|1g#Kb!Zz^w9hjy8g%Z{m$2{{r})Pq&|xs_VLYM zY?j~yVGFE9249TCtS^~R|7t@s2q1DZ-135rTKuulRX6NkfSo5ylWYOruxZpS+sp{y zXWQJBH3*ad_`a>^mz|;MgQ+kBbC%Dk=+Kqt-8%(?R1Ae9yuYP zrKT02@WwWMvNnm5xONo+ItN;TMjPT$fc;(y(40oS9OYZ{S_(HjRE6gKxveI@Z%qjx zTo+3R#gRux8O9oebpSQL1?VD5G&%{@Y+z*55kvVB^b{S{^cdQ-1rWyYZgC_nyLQr6 zfN&95L_X%6k*&7`^p#AHoxMnx1|~RVIH^<=;x`?>2{f^*$Wrw|LuM%{7ewtYOE{#jRB<}>#t_I&aEf!w?dS)Zl41F-IF0bCQatMs9-7SQg3 zQ}AK^It-%gI3zm{q!HMFq_#jxRpW2MEQyTZ?THff$ybK42iU$6)b?|}n1KZ)O?AkP zTS{=l)wa#S&}jR*`e!YQ~0@%DToV_TGs2kjgvuNs)Abv*>(3 z?UsewdN?StTb!8nFwKWpdmj_Kb?)qr!eenq+y!Wp6U0aC23 zp&()&t@q-<%TZ9@RQ`I^s~jafqpQ`?)?Vj@wG3gyi>q!rE}D;)!7I!1@-Wf(fhV%X zEvX7!(t8ua%!^~Vf%gm(ZAdX4Xr%T(JY4v>t^>689lMGSgRL>MH6+uZ|lTp;OB>kU8hG zh^qWv$Upn0ym<@sR7LmOc6Pl*z7}+zOt~CexNjzM)g%Fm)jBV6bFO;&Lb+NR_J%R+ zm&t9{6VMYRL5Px`)yfDxw0ma{q+pmu>m&K*qv-5DA*R>otAn}{hVQR|oEaqHOC_l5Y{{p8 zxD(73@*s2beF46^oG-dC0)KKba6f{SDv`{F1w-a?nj2;j2e*{`3h$x~#XTejmM^{` z3BPCcasAw;OZANNrgsO>AamYlU~$?K2DHW*Kl$dfC_^d8z*6I@1?0Nh=AW2~A3IOJ z%il`zW`OR8gz1L_JT9h_Kb4OM$OwOm1NpZ&sBC^{E_U>Kg7`9NI1Sbw*p?J@es)b- z`0_N{`kZ$rmSTup;xJ|KrJQ(=3?PXb_WE(n6;_FJ1+v_op2vi6)8NEeDj)?e>?{9C z(2FBL{gud!a(Ba0za!gpy2ehUIcQs4rENbe=q2uC5K|0dLrxqT#DsaI!mx*m8qHY~ zD)j^egN9tg{NeJuiu%vi=hEHO12m*8yJCR39jZNmopefEmx;{D;G=EoFW*v6$7bYV z1n@@hO*IMf%|5?nL7)q-KKEu_}Q6|nNHfCy*$ zO1MQNn+_66?(muQL12K@u8?qMkPF74bE|O;E{e|b*r~O>xjGG+y<8F0g9+nsHQ0^` z<}@bzUIH%fU~V>KxAwNI0GJx$c>q1~uGy*EM2$SAOx~^-6xVj&a*MP)aafEH3y=JGA{+xz;4R(2ajw(NZRqn8RatHFzYs8sGWT_N`L z*n^(>)_2&0`@eRwGh2zMp;M`|ZBLiM115X4msqB^f=4yPNpB(XqW)rD$sB+LZ@vM~ zO;5=B6c^PptOb?vEbTddAR?$H6q(5-0xJ1Yh)GPi@A@VB(=|B6qi)%C(b6UE z?h;rygjp5;mKmYBoE|XQSTJh@D^xJEY5fX)eR1TO(`5xZs?_|+vJM?yiF)W0-2x#b zu;}#g%+?zjOoq7?QxuMV00`dru_qs+lXJX4 zDYnma`%j_Ot@}|+>QjbK1|oc$6}N9VbUmWZxDoC1MZqDV9!X*$Qh&!(FQzv5QRM41%^%MP5ko z7p%%u7I9p&*j=!DGOo(#%in!OB@LV)j)Ppz8nC1YZW>y*|YT09&yk+!mH}sj@ zyfE*0&7PiXsTrQfQO7YO3Y8y6B5UQTm2ymdehv^|F-Dw)*jw3#v_l#OGjXaU@l+hXmoYn4;OicR ziOxo1)VR)r5JE3&jCra7!Py_=tRu4K&yq7e&~82c>kT)aMB7&g!PE?iG6ixZ-?r?M z%-0uj+Z{7JI|e2@s_h_p2F^=ZCZ{{8j9Vh2^(08N(nwqu?K;5JX)B&Vj5GWG=2SYp zdpZpBHF-Hr+aIwg$Mn#JZLwDhnW9zXn$9^_RkL^Mo$*|7IZ&E2aXuSo@J)-^~) zohz`EB9fRQ%XjC7gh({idiAnH#IYs5u~)St)V87^kLm~Y5>2rw?)c!zm~_clXWG@z z+d3{Hhe>X*M+7?9`XEcZ`v*_8Ft=MxG@|?7g#LS+mE1Cwzzc^9OEz636&w1iXN@eWoF00}R}uKjtp{by7)DuOET*xXM(4?j*P zBIA`)n2gdLm``%tSesGMwfRTlC@=USu{8Kx(rv$h15l^c#1gApKf5~{IjaTnAmM0! z?2GNM7rc6Ah)Rl58bj8DeBMfW&5CUi95#2-EW>4x*#>>3FB+<5@_s~+z`=iR42oLDqWrbQ!QZJW(6QiT7 zs3{y_&ZLNK%li(I_QLuhPo6j_tzO9a6I^dcb$=(lT+WMaqmRR+>O-%w@X|P>6(Z{! zFnSHs>Mvr_;4JcZLjeH72&DAeFfR3WFXqu5Aih529C2NVq_T-GB)iu00{0p1D;N-c zJFlDNlc#D6MfW`GS=hhv;S_YBkmZDp%>0U^VHNMMPfS>&NDuZ&~Y9^$9&#k+>G3?=7pFbggC;>kVtpFLpB$l&bc8Is zNJ4J#%~SfvIu`$h5yo(J zHSHB6a@>dHkUNKoilSUQ7Lanve;4{_w;6N)z4mB5r{rnr9k_0t$qtsy%6|EZw!ilnQ1xeytH#}12 z{w}!PNz`@zZxu2cjyol{0lB;2gcSl`9O3J$l_PY^JwOj%xeN!k9N(xnH{hTxnIG@v zBci9UmX^PgTsFCyO(enUq_rWzavxwdHt4cST5ar1waSM6v=wjSzKI%gT5&U>jkIha zKBFj_pC$NkNUUcO&qnQKbhGm?X}L18g+jyzGEq(sAndy9E8)~$J4$b%Z$6e}(?P!> zWmeNh31jTduo?bxrd*v%LcK)W*fJh2c@dD__kC82%x(q#&z~#5*O1#0`%yXF9HT)d z$QnD&hG8A^^M~bjr?sv_!3gfLJ3iCC804H)tf3XBvjN6XnDXeV*0T_cYts(;2ZiW& zNGYSb3_d*8?NA|H3X@TLh*&K8HK{XCf58g)Q~_*oys>&kp<9EH7bBjK>*wipo^7K5 z$GbkfpP_qpfwV7JNIgR$cgTs8Pe10OWzewq+gslj+B-O}Dhw;}6r~(rQS{Y&z}?BJ zk?*boYn1tmF(d`b>MQPJ`VFhir>OhtY|F8_qsnqLHRI9rv@up8kmJ`f=ahQ zK8|fg+b^W(RE+MGw}@l=p->`b|c!`%~j={}kJm-OZ@Zdq++=2PvHuEvWFy)4z9&ZY>{; z*K%5s3$a?5S}k+q+Y1a$0LBXB2GH~hnDE5A;&-t_I?k~wJkHDil%IU^Xk&-}dJSo^ zBN)4i*pwzVOj7!suX~RC+ArPa7K*E5*N}LFas1-?cdu5c8mk}Vb zZhnQ2AEgpAZ1py};f@vy(bK;5fZWFu2hm$lHKn^|I7)&Bqs3mBxgF~a_c$>I*3PqB zl&op1PxRq5V>0DhrIV}5f|P}qknkUrE~W-tEN2!FoBqujs@UAm7%B8Ep>&tm1LWU| zfgTW5jj!$?EePH$z(mMoZ`-6;zfYsB!6p@+Tb`=GKnDh$lut$vbC%$YgwI>hseAcA znsX=qI2kF*dsGSs@l;_`zdpa1kjRdp*wl-pa2;SgJ9533l<43=$J+2mD`d1pp+gP! z>s>)f?(X_=G(|~(!t|k4hSHy@9fL4|{49)NrH{fX3V95~-BM&^1U@dZb*G~=!w*KL zi+;`BZ`w0zP+on`i)Y0XUDYdpr$9CMPQk@%R=PN>th@wcoO51_vqS+Yc6}&{3I-8Zth|2OL?tap8 z=xJ_f9Te#Kn16?DjpSxOul#ERd^V1R`DH&89qeC3r&!x>zG1SaG;ihy*I{irOu*cV z-|ljcuShLhq3LBzpbw|vOZ!H-%6YlceA!GJ9}5Lm#DRAiQjM5%GGcD92`cdApY$&( zo6<;Z2`6h#b?atFAQ6u;TaJ9+m!8C(=cT_;&gQoXPfOsLK7q8gN{Y~nPkk%fMQF{z>j4uS{*>@ML3IS^lHgVVN=T>Qd6aI)dW z{62y@sR+p!#~^(6zzZZYb_-kVf7bLyf?nB)b3VGfq|MM71>+pErzr(^<-Zu!mzTP0 z8MimhvasX5=6ctjKL}FW>l;8c$Q~C9m+;(h&P_r`|`@%zt`)Z$BVEoh1USd+@cYyVIIg8r5}C_F0PN{wjbRRUjd z9gok62k9PjV*MSFV*#-SL@8~F?!}Cc2{-1RVjFIvoL%;1+R3p|?>q2iWMf3HDf7Mr zsYGA1#-3*!B_CC{K+q`-3Om{(oClFdIXbu_!Mze^q4j1ik}C7d5^+i2^VN2~yx{;V z=5FdPs*=72X{64PMmxqwUPR4pI{h+eH_=`F^d$;Gb zapt^HM*mzV*1*Fj?MO|yWqM8)>s17`o+yT$u^>Aw znM6C8N!syteI6jheD=d6>Hl)aO;DM1zO00Ml2v{4MZ8gP(2^q5-hQyEg3hm6v&ZaZ zp76Occw6*`m=b8Q`)7lDzLM^}sddafO7rMeV8hjRQv+Q1P_{^_n^GyNc<)>gd{E=< z%BZLP^c&UB$$PG)cVPlK8CSDjsxN8xhu*H!;-9f?{L*1i;+i+ftdic_rV{)LJ^xz_ zhAc;*uW5P^t?Dp9R11Ho%bY)`s5lbv?2>7xgo|m3bf{Bzt}ZB}`GSNtToZjluLwo3 z!taL(w_hf-v+D>$KB6_@XsaJ|sesj#K5NZhh`J>wso>(mEom7zhGAH=X*Gd@i(FAzGZ*>Oj4(PMO)^UFdb9PL$=jLAASRZofkT@u3I!128_~ zRG3gemI?vErA|vg!)3Gf%j!uoG3cY80}duaZA>KjQ%zRNqY0{*Jka&J>ZdbJS=R?0 z*59|qv65Sw*Ci3U>)@Itd3PUer;gv=x&bJ8-t#H#eIQDd__bZSZYrDfCtrDu z23mzBT{egp0l78dvqUu`wNWBKp~q5C4`X~L3Cebv(W{jnf`nc$$I@|& z@^sx!s4sucMC&7d>Wnh;i$0KrY5smfrCM+cBr-jm(OLDmAs95d7 zd{WF8-=J_l@cDCvkno=>Dj#J~Rx9vOm-ys!WasrM2(3&FZuARz&@pi6JG$rSte{o} zmoKK`LZaZVET~OSeLoNlJzOE^4R7U}4!SAz}XDx?B02qNvTJTrz)BI5Re(K;P`BNx=pFE4-Zko z0!UXj)D!h>D2ptTQ>jj!QcpA0QS`QKMyt$UtntLm+cYlAwN?)nzw4qZ6j{ylCsTT7 z_U|XP3@~J0mpjwc5BE`Dt4|ZyQ!2Lj^ia38-rNxqv@;Kub4n@6@lL$eR4=xVm;KX( zorOy`tZI@}R6SB#dM5D0xLS1YcTO3VCZ03%g^0G5E@`-n%d;{hb|kan!ZdQ!JL@O6 znvt$?$R-~M+nCQNwyU@8(KBNzxsi=9{!h!;!P7%XTut~HpNU^t!)-7Et(B{l{ znfh8&9+>2r0J*>>=BjGD-uu}RmNtyosq01jb}fnkd*TP(*T^v><{tF@?q3nKAuqPv z<{Lxr1KG_};9|%N-9e?qYkC-eyl+!(;c1`TX?7nidS3X>w|DEu^rWD+^x+_hRJV(8 zo(i=xWa9MwYH$r>r`oJ~xXO}k5w--@7P_zMe=?~n%q@cvGys`PRbP-EoxV>xF);z^ z2jqkAQr_l$PE1r=h!CqqIYY~FR!ZpzianWisa>z#s0_K5*Hm=V{S%GC4W&|A)}1>< zf!y8q2;2NbC-v4+YME={4%#4-x1T%J@sos*5c==m*K)ZQ(wjR3b-#-ZW)`~R(I^&} zWk+m@gmSwvuB@spnes68c(ls3cT{AWD{kalskb4XEuU;>;hxn;kzqOy`X!4U_mOvj zbC#B3krk=C^}qG{%s#v`eehbbS1pVpM3}=_Gaq_vu|Eksa0e&r3B1`+((-

    }FI5g*{MKRy^eHTfm&J^8%n$^m!9C+auA@O(QFXFl zRw{O-GV^rEHoM%dN*h`E{-a&Ca&n*JBg;XF`gEYXu+p=E1-yZD4dI^WsZhj4TB~3P zTs_#7!1zMc-aCtZ(p)3v{-ODN)bl&5qaG7^*V+sYF&L!#yQYjM7<;LHEbLsA!?^G* zGN46#BKvIF2l76752(+2iD5bzKfVO+7k0&Ns9GWNgPwuPaKt}>i4qAl>O&aj054pj zNWrp{!?pI-pI4Y%NYA}&@L2UedNNrOAGLg{G%3$N6Ub!&s>&swQP=J>l#TfyhG*S< z8f7w{HZS4Wi@jtxjssgS)JS9=3*+>p^j1&Hx6a= z`OtOkG{<5FBv^I_9a$Dva@_8C<4PTG$Iq=?TL^zVv#xil@>lW#PK;~BD(;4Z;Y>Xk z{L1&^T32J3VsSZ@HsXjNT_{rA@KMu@zGz4sukskZbY%wG2iQ)kcCW|N4tP)ASZO4kkH&r$A~gPv-rEQ;b}7tsmz5032L@Bc!XK91*i^8TtVWy)}1S4LAG_ zMmA*l!*c>lA=l-#)xO&o{7Z31^d__44Nk~&+UpSl>w78!TQO-gUW@pL<9HBybvMtQ zWTJlHXMMUoo7BcR3DV-+USgcCj9}46kC*h7n>NpElsu`#<>Xy*ODoz4`*U}nxbM0ltuDZ5&2(bqeZs$%rdINm9SL$ zZ1lI0w;~$iAcko^(Pi%HQytLFqKmdZ2~XGBoi)loDrn)9p*0cSQ3-g?%90dxXS(*@ zW#oLjxYcwyKChOGRepP1uAo}!QY5cO^Wv%5j*Zg%pJZ*{)r-S=*gUt91vJJ!KPn$U zo{#g-|1;uF-g^;mzaqLLasG5?EcPL~tLRPyz}`&2COZ>cef)bLzf)8@sz=UF3&+IP z)S6KIXY$`jRh7f7y41bkb#}PM&{zq=4xZCjq`|*aaQLln%KKTx)@;q-4c@`kVl8q? ze0YBdlS*?&aAWWUaO$^#XB`OIOV8M|)qX5gl!d|drn04_y$>lHj1LZGyQpnnshR4$ zp(ip=dTal47rK)*tA*k{|5*x-H*h4uH-+nWdkRcp-;(Jp{#Vvr*Nw#Wio3f6uLY}j z7ma3>HkQ`!kczyGTj=<_OI7n!bfHX8az~QXmd?nZMg41dyA2KM!)g_T<9XE4OvDIs8Z=p+ zKzDSjR&kXe2sIQHVQ!~{(eB7|gWl)yn-plp*rvi^gP-_}FoDF9ti$)UH$vuEz{`!H z@-a-d?`l^Ea-T%n3A7*I0XhYsxH8eS-NFLpIJyZgvg1GXE;eKpDxOp>hgC1L;Z%yO zlD!MscJ8~4(AJVJyRVD1o)Epg&yXC-&M;&e*Yaa)wYaGGN2@VH!tzD=lZ`IElN^9% zj+k@octK_QZR#_DECC$B5ZNbQlsb8QpGp83m_9*p$KjFu-C~RCUeBFB+Mt{jGD@^p zUE1sI@_S0ruvDLj?L`!81qYcAv-8^D$f0`_&9Wrelos_{oHFjJ-2cyfF2KIm<16<| z7dq8`97xt_m&u?5UVEtn61mvGwl@p!D1W5!ow@eejpLKa#y^DDX&}GqZgb{%d3~7` zoT@N_RShko6i7k-+PELRGTBoe$j=-zfF(Z>dP?-RTD5!~eXif-9h74r7S^wgU=sZi0CF~lKFVR!`wBu@me(yG!IHsT@k`h5M~+-8@mBCkg7Zt!FG-9ZdP%Wds|4*>Zd{S=U)B43 zCrAa#br|r&`)K=&>e3dtz4x_r%BG*`5C4fD^H|wt_(`>fUhV@!Dgi6o$K@}_=SxDi^>S%%_>0lk+^vxUvAs_3$3x4qIw}sve_Ky?A4N6Pf|{C$m*6|N3C> z^kip6hjs^70^|c{Go*cJG|i2y!hAk5*6vZm3Kash-JKpS9%`@8R{Gv75pfapbfZ!h z%g6t0SibISdhuBwL11OdPdT54iv(-q89SWci2@5qS>AyeXPnq_{(K}5Ug5W;f6{I@E#vp#A?~5-w5Io?71YL#Y@87`>SLe!xoEPstZD;dPf!{vt^IzbiTlTF>3;ZiaQ4peh;MAAYBn55DdKE@)p94w z`eTj*cpE(k)a^g!wqaLh53VS8c2I1f)DT(xpfpwJQ&fhkg=C1~jT4pb)oy~8fFu!H zB4WnY`L>CdeBI-@ORqiT*$b8!ZMs&CxVM^~)vUSfDRqPGw+7ZwI=^=9On)~T4OjPAf#Q0`>hQaS47{X$A1121(f6p6xN&dz>&1y zIzXh$(sFgsM{9!b%>&vIM}2U1+PIbB5QQNpPXJ=r^*pyUn38;m1pVDB$Y!a!=mrDR zhf*nFVA@%y@oUBDW08J+EIeF^yBdzg53fX~zMa`%TV7MoO7E9><3azZ%)nuc%Z1DB zQuu>sE(Pvt8zHAhSE-u_9!SsnENAccu5^T}desgLndt>wp*y^=z>)UPw4WOafqIiN@BENjXhu#f>M3wmm!VOj2 ziQ%rYYYJ8!*g;5}J6=ya?B?GORKnct0USHLZthy)*qdx)dBxw+f*oWvbM@Vqhy5-tNA^lAN7nCaDth|O=T20erA=?_=nChCx>M^sk zNvzgy(SkBBe`O4WM&(ELL2BPtd1{J-%!*?Jm?Fq|*$G<4?TU#Kk5+Bhxs`FNt;!9l za*vEzaS!KmF~}t9(Q@$ydhDhI?p$N+Kk)Y2RJQWndo@M@Jogfe2-;s_f6z@*#5+el zP5sdIq3pjNyhp3o%>9Ok{jW`T$!Yq@(w^ud%^t`lOlVKrf5>+k7h4cCP}`=m(|$fv zp=N}(M}&p2sy={tm#!%Z+C(P!DTvw&X|*7?5}2nR>N%?*wx4N&E}z_VuH4@m+gg7d zLOZ-AlzkA$49IR^wV4pwX9=`JGieLQ+cO!Lq6}v+qRLtT6pyrhflN6>d}d}+pjY*9 zSCmYbIKg%3=p>0tSTkzvC{is6I)4_5fUG9EaM~cYTY*mzUJpM^94KYfA_YNAbS z_TmgXkF5q#$T|kFq^k0KJTT4)4rD9NPB-RTjAL!qJE!)3A!-oqZuGPE>n@X3u))jd z9C4afTt2Y3dW)KTGO~l7v1G;|+FIiZjINCMFnDi&R>&~BiQe6$0IrDB!K)N~;d;!T zIt03z!=04dpCiMKbOd1!f1$wSuNox)r8O*kDnDj#8?d@I+v#rDPErmde0A*0B!z|Y zRvkz)9@9fN%aH_gRul$A#qFzsc2QMoAHG$0z2!l|bfR5-763nPry8C~; z|5l+7)Vbjgp{IC`Z~3vxF4!=EN{qMJ-{9Pk$DcIVswKA(H+UJZBUjN}$W*D<&G76{ zYBggX<-+x&G=cCgWz{+LTFrjX?Lh9oM&=a)HyzTDz~C-`i&kf}AqzhJkD{1OQsdWl zX%_|#%q=NABcm}R+v=XC%&xO0LP3X2ScJyQtkz$Cf^F^+LRhR9P(3%i0p2fFRYPnm zrY+aI?h%wug;@<%k?GG?DTUI2mhx2kS{j+Lf~*$~Q6jY`t1!oTOH?NA#L&+2Z@lu% zn7E*v_VSRh8g9BxJ&FKv>L++q_q&F2N#r9|{KG#tM}P0!)e^~W4lP6=dk?x{LT z<_Kx-4XZx)pJmZq>x!7Fj6Pb?{Bx=--Td|XNVG*v^%VQLwfl%s=_96ET$FQQOTOqo zZvp(HI}yG;z*Nhy3pfROz@)JjF9&(e>aVy%CZhYi4j8(qz>XI4&O>X|v$Vm)a zA>^M)xHgsk89?Q9r0!^KRNeT8;>R~mT3dh@{3ntA9%0g-p>D;cd-lcfj&#jtXr!XoHtb0}#*Ht;%nGcLF<$sH zuL)lIn-COch4T zsFGc4G5nZq!cRqZN59JhDi|&I3TH8ANBrZFi>3b>S*P58i**f{9|z=ri_YEKhSCH- zoFj>P;R{k-&K07=5A)jf5${SJD*7+JT!5<##Ba-)JGp`Mz_<+G|^DgB6)FyQuQd=pw zL?Y-|IL{E)Ys&FJ9MLppOr!Pcx)P8dn3#YPbVI!iK$~j(iD#r=pTubznIVt>C-0<} z-(%hzr74{v5}|0Wtuwwj>3b(4L+c9^ba>i6@zHj9e$$C7QVznVJWwJ4y_CZ#q>Dh; z9<6f%5}DJa7if*tV+;C10ng4=Qm1wEj-B*MY&}Q)m~Lm!4PcS*dCPx1@?7I`t)|n7oeM6I){xNrH zoceY^2@^P@o;^|wqsNX6fCk&IXI4;dP}vb$5C%G;oeHd;SGXRqY}1Fs$?UYV#CY*a zh=~*X1p)epdmif2l$@ZvWq+p8#Ks4_V%vm%Xt&B7-=HUp2n_>#6!ME97UgeNb*W0d zYAd?I-6l=pqX4MsJiA5s+oJKg*Wav}K!;KSYCd0uezd2*a+VV1oVVIF-qFBckHPrz z1CT|_z$O0C^hojco!~}>S6Tw{XX-ct&PRqL6uT!F0Y6uHT@;2uu+cE0P2HPS)_oH$ z%?Op?G@ER9#@kQ-o>F}x-A4$Vd3rw1uJkBi-VxuyYkzbX>1%GYKDUh!{;b}1Q%`uA z8JtfhE{sV!(Y01G~1dRA2xJe8%Z-2C86OtYe1~$^4+G^H|rq zeuTNng%4iq=Skeio8(al%=$_O?o!f~jJ+JP$IWbKPSnnG#|%1=3~&Sg?rK#A~lpRg$~0RF#HWRVfN}n*0dAxWi`KtxkC}Y~4n( zln|r4@x@FR4;vxpeodbNE3JArYEfYjhiE=2kSCAB{N*1;TpE=3D`$flJw5wacj96C zuT=F)7gJBX05lbeoRRB&{oT+{;k?S8GUR;vlqQ8+IXb`F5Ls&P*R|s3p19qsAKI#4 z(fZmZ%>P)7_v%m%gEB^>^wfSrdY*=`CG8Pk#nhN%z{2}$iP!ywRH4*2{t0jyn#l(A zXWO6ozl#Io4?#)2JY_m)SvStZ-{VF=BBCHtes~Y?BwOgEMe?5VRnra%Tk3e{J9JU# zumIZhuN50`5l%iQPgY3dS&&bHywED~cJTS^hR@V$?KzM4P^UX(&yQ`&3EInkqUcmPpLs ztGw%0aVO$e!i$#kzYt|f2F)cZ-P7Y&r8?A*x5vxMY8PH_%d+!5In1Wm{$09cPN zfxVYNulE31LB2m9;yKWGE2jV9-8MV^hqQUUB$=fYNxYN@1o>_dx~{`EIu!7ZO1L%-E4MY7^qMC38Za;#&aWO2VmFG>eY3ff3g5;!ruL*e6N50~H^i#@ zbjye2kobDGBi#At0RKJ5hcOyAS~KNpc$|vGGiH-pMmVaG?w$4 zMrOvy^Jo}>vS<}kQAn3>Y!aomx9UFboo;;sC-_O6-C$+no{(JwMFd`HJ~Gvfph0J< zozdtF{#0R}2a8=q7sW*0?@QRWXd%T0P!h5XgeTszFxrfs#tdW|yfva^UCp%r#V}+( z8TFoDHzv&Qt)*G;OYMH2MX`;N=yv1AhEK&U9{g}Yp>aWM+d_}{s>lA+5UX^TVfsNd z4Oufx`s}=Ov;2sfkSTV=pi3k!MET6!r56;>cvSm+3Hi=){Bwv=Zf&{z zB12oyDfbb(;VnnH7hWxx>@)r_aZnA~!fQ9E{GE#X0~=mR00ni*cp;!siC3b>0%f~* zDfT3a7|mi)%j>r?{|IRH!CNR6eT}E>5`e*7{Lmfrg7Z9RYH=OuQ#6vC>9s^y4tNT< z3YL&a28hcqR@#f?TBZrK9hC&?lIuPE+=>YFtFD1|X_vufd&O^E6*Kv(^v3F!c%t5| zSN~C)`>no1p-5FxWXD`0f~cM32x@<@(1ayf4M3k`7V{iZ0tIzvq)_PYIA;v z!=i`TUO`T;TkR~mHDlFA@fgF4-PA1`Ja{F8))XByhLzYAe1eWC_63>+yOrg43%mNK zp1TJzM|F0-2THcR-K6Cu#m?Hj-Jhq~Vt`RL0F1Js$%T5@ai|dv%kNux)p!UhH}>1` z+%}CiJ-vfqZcNC)UZ%2Y9$Q|jyE)pk(gc`NWJWC0Y-wlne5ZBhC6~!p^MGTV5q1befSm+d3a(E<5y>*%QrinLO9qd5(dO>`iY|i8!;0IN%F`FuPRwU7TC884 zT1{()hqvWmBYAxno?%yH3IotY2S)FTyP@RhZF}N-B%~I(Bvo6jFVN=>`188ohg#!& z#7xmO3%8BaBBCybQvskbY;swKv8{`dbdyUfs2o^CX+H}o#??y7#=KY^owkI|*)Z5B z104%j@{-=GoTk4afl^1fC7B}n4^aowoM8u-gpU*D4)gjW%AA^%F>#zF)%)=U@s-Z< zNEu5~sS&GRG9+1VY%S6(WU8pV^mb}9C=t$ey3i-5+!Rv3fE)Y`0K;;A37D=TK82`z z994$$L|<`KNjA`oOj%d$|Fo+T2t7+vA0sPsF8RiI@!ZJVITC)G1%2}fL=y-!LF~W~ zL@R07TE~{vx~p$_nkO|`KdH)tZ8OS!gya`{d*^mBeG=v-xyWK#H^S}(+5GT8)gQY&*0E6ur107U z!+&fLAxN4i(YN!+>u*FOvny6c2B9-nn3D$4N-H)-X3x6(J2QkU0e8+KQMsv!y*zgi zjlL}a)blAWK1eFD4%q)FZ>Z@4KOREl59oz!o5gT9eR`kil>w<@9fg_)Kn5XsgLY&2 zaTsAEHMZz=HG_apfa9{6;+h8g5Y-#;eX0Lshrq<+ci8Z4dX$A6p32?F<5e*|$r#5a z!?*#KQ-}6EMAAqny2CEO_o8oK0r?=h@|jpjKgbc_wbQf9CQ$*uE%O4Q@d?00-^y=v z>F$r=+o#AcsPm?%WUTSx7|V67|LL5}{VzO~kCAXs(&nrJ&W29hAvSLe(n(H-?oZ+e zL358=5yk8(PhbG;{UQs~|4AI~I{F4r=7f7}MT}kzc)V@{wT%DucxzH&*z16qVfh1y z&(cD}k5Kf2#kd&m-VAlBuF-e7R0#ZLUZBqCN~>n_eZT)? zU>ap9*@79Q64Z_+?I)iJ1FwbV1@m03)WM zOI7v%134qZ1~6S@ZD*KF|NRC1SJZ^RE5MTZ9Ga621nYnOJ6Npz>*`Uuz;$EiD%3jv z^?&{^@R=iAfQf@GCc^%ozxv<)AW1cFU8-umf*|z&^D_VMpIrdJ=#7*<9{>FJ&Z_^S z-Ef%!EFNLAS{d|zp}YV0z5m-kS|i#=M%m2O=lWsa11o!R_(fI!&qyAss z&c{%I736xeXZ?S?tbe=U|N29F7~raP5;j7{p!7dK$T&6t?KwL6{ri9X9BBS{k-&BF zGT$hq{m&1QO9=$R;(AHRzaY#1&CS6`8}vlLb^m_|Ktjetz!Vh+0A_w^+{yOr1aJuC z^+4m>M!S^P&cA$ESDH?H$wOh)>dXKbtHBmfuP?7!<#@a5{$&xM-f!gwVq?HWhF2MY zg#gE4RTp;Pqe73^JG8jUEzYx=)K<2yj=iMcS00*IA33}LNCPH}xiDv$YS>A>auT9_ zx-Ifma0Cn`8MgUPPDHC2AeY4HqjWP+t!zH{(cB5By~$uiioYhQ(>j0^vhbQJ$(A1? zHX6VN_HkXgSOvHWov@`#1cp})1sbWFtqC#2`q6~X`sw}a=eGa_uw$A%AYbWN3NELy~8 zzXZ@yV|X9S3p9TkdSk2d-vaOnt2sbXSi2fEI|?iST-K9?$KF|mvblEiN;z~rbC|$4 z_LQ(o%Xxd!j@Sj<__8uG#_b{?SviKT3*Q2WQ8Eso|-R`;ckZ z)CO?&FRHc@6kUCBt_DhgSK|PHHmoY=0fl=PU~nfgSE>0R71R!3Zt($JK-Hn0)0l|c z&Fz@)%6TR=aP(OPluO-mWJ^uNy0S#mHZ4%@Me>sUjpkV0buQ8|R?CWcv%Jl12=#J6o z+w1GEPFV+DV=kk&Z3AyQ4Ly&3GPcnM!wfl7+F%gh0PM5Zo#OL=3|9?u*UJy7Ht`$e zF-Cg;>^wOE8eXM*{$vf;FYXhI3U?Hc(?Huwkq_r>?C=e|`Q8+*yb*@0CN@RKw~?9A zX}(rKkIcydfGBwMU01+68vuiXEJ5057LCN8A*TI3d6BXkyQ4d30MO_98VT-o2Xp$~ z4)u`PRN#que}zYo8v28kutifM-i~yFF@AC(1TaD(VYVldbjtqQA1j4{-{XWG4XA8% zp@{$=m$6OfPdNHoa`@9(bTei;Mz}jbL?!~xxmOkK*GKpkEAXp;K>p#SV!xsG5Em-^ zj`M{mG~rK2{4kdvMb;tg!}LTNKWreE3aXorY8lismUx8jieIcF2y07SKMKjN2>TW5U&GrCHWsuZhswlN( zi(v>apcDfB7Cl+qT&yrf0eNkYbn<1~3V22eq5{kGR|M^>HIJ5@o_eQ1WY)XSbx~<2 zbetRE$B5qT4ydCPCdWg7PvXdtV29w&QDZvKkdK*u2YB$>*C=(vJTJ{)a_4Szdre_K z*y~KWhM`!9jBh%LBRm0z~1K$^=LPJM}wtH#S zmn}OYV~Uv_^e;j%=$g(A9&wabflVbW-Te!k>xameNb2J_LHC@!j z?$YxvPN$V0_6%|V{WCZ}!=qBX_o+u;^Z6wgeIW7?}&c%D3<$m>YM_3klM^q}$cp~y0X}$P;V~=9PTi1g-BTt#J{&=-ncJO{P+G1O70Lt! z_TT4C>BqVPe?DcVu)-fc&BkR2JVQT;yoO)mZ0oI2yDR$il&wuExv%{PQv=M5a5O)6*+ztdO?91-1@CDFyqZ~AWm72Vl4C=bwQ3 zKP%PKN$9~rR9?*_Q304qt&@bcra8>eoQIqX2* zLF}>PE_{o3oz6Bz`i5l-3Ybp+^8gq zhq@Kjd0HQ#7cW#(zB?2WSr7NncJ;IJrP$5Wb)>#d9X|kk2p9aE^A@XYekD6@b$7l_k{QWfcc<$z8)R5j@K< z%jHu5JyBCJ6o)paY=?gr>LLF&7ud_1HP`~*%C3^LF_vmG6K}zpJqMG@;56_}PBn8! zhHGMdqXLXIlH7!R4+RXzbxr|hN4+gIFmYyp4mB4{E{N-~z{=T^KK@!w4{D!<6n?9_ zL24F?`ShD@7K5Hzf#YNaa`@IhnYy*e7oB9Kwq73V!Ne&!vEJTOYO>0?VfAKOpEB<* z+NQ2B-hZ2&a$NYZU_Hoond$lwkg2CH97msQ&gop6|ITa1oeUaPJx~pbX1@ClDDms(NfbT_;?A_(= zKTlQq<2b4wlZk^K+SA0_h87uT+?qMdFP$EJZRHP{4lOU>U>3P4cKrbIYYRc8M1?M= zc_A22X-DRC!lF8>pN)<^>)`E2<6-_?I_eV9($8vL~Y^92@@uhT?Z+46ir|u(qzZdXYmNeIpb=+w>70P zvjC1ESH~9K!K4W3H!w?QzxSmCQ7@7~Zf{nL=C5+kbX7Ud`Z$ttxZLa{okBe5sYD!keQ{G^C1Ml6zxo}?gEHM? zzqEwNmWA)#?g>Eo;mkqGLqQD@SnX+$?Ggr`v@trHFtJ+8=5mbe-PaE9gxQc8=G|cd zwo-wRvfunJf|~`@k00NrN&Q1J+@VmU$e2002C&EU$oT=Y%YbjPB)gt}cyr!{%d{ac zE9t%KEBtc&Yexmm1SN00%QxbUpLJvquISkb=oI5;(M2@p#M1IY@*-#m}VYfqm4VR)fw`& zjucl!E8u&GXs=8efgCCdqK3D@b<4hIc3yVAYS}x~bec@stFoXNwu5YXZuj0_`@wqq zni~=DA5e-93I{{Rzx1{r;|i5=7_~xp7GYyqaSE?{d#qf+|>iYaF}B&(UC(-jYZ}TFfj=so(eE)xW_{97;b2w-3Yp=c5+SgjwsQXjlx^}IOep`L*&A_nb z^BU*e2mw~cO2V#4Deh=Rnx9N0(xZOC8LU2QU==^7|;Mu&<8RmVU z$%YG1#MmLlA@L4w7MZ%Ps1g3_6LZNOK&)B5j1FeJEC2en*pQ82psZ^91Np$pqG%e8 z$5?W7Bp>^5)>X#n05==+5~71NM>F^*6-LqlN3k1mK4Gdm%5j|Q-jlN1x0soPylPKl z)9L~K-pEwCp`A&$o(TjV?Ol>cLkA3ft9^uPiV}da6OrXzyHR zB+x^$`9@8kB9G=7)Zw@9PlybB4PXOrbojfYp`c zeGkMkFTPqf7~W8f(V&LKMk_yEGL;)JWZh)eBq_}9C|Z>D;tD@ZccM1V^|bJ^R*v{bvHamn)v?S^*VK%zHIz9Uom6}(E!0%(zF0dDLIQG4 zSEA-kgKI03TIap=G?`t_^N#Q0&njyZ8^G=}jW2)@-8+Z!167*D52i;lYvwL)^++ph zM9?CFQxv}OQ_60o9;f+!5#LKPd}q2nqPwIYxWv&s(L57}dvc_5R43?#?$4)`gXt09 zCS~ugpErTqX^!P64hET?x7(J{wJ+Yd+2#45sbyuEw|iwLyX+gDzl`lV7E$lU6>k2t zwc^eG{L$UtH_vSWrqZLg2MNK9Q$|_+qAil%_4Y4ZnRCp()0yiO8cuNtntb_G@|&~<=5CuD~3dM_#lFLyYNdGh=I>Ue(I8Us{jscIhaJYgkKSay77{c4-KjsS8ach$im58ZP$7_#DT)0`zt{KA?;O{dzGnG_ zX^jFo=2K0_3g%8hcL!{o{o*Kjem-Du5H?L)pY>)*nDAA)-%2Plgcn0-d@*n{19^qp zUXWjiJ}$lUNA1^lC~jQ>X8a(s_(V4X+V6+7_M@U~JSGpweY;2JUia&oLVv8#-vN{H zl%EM{48;)~u+o#+UX$oSF_g0DlC6t|^j~4fe6tzUy_j7&oJlIe?K$Ja`BK2BD%zGE zUxo((ker1>?E9M6wFvs%#0Tc41z**#Kl%O3P@VBRXGwM^tFdHGWHLUv_RB!Ga*mfJ zQA1t)rkTP6a3hhcjq)dWhWDgjGWhsH7MJYBix{y6nku4j(K&|%inFSB1Y2}YcTq;0 z6?Y68ipRe~Z?UMvKBJMYuy zpts|L>&{OnM}h8b#=%#J1qK5)-qbcRFOzWXrJ@K$X8Adt1{jO0OR5g7)D~xG9OkmS z4Y`}*@fPI6JzVf&1(L~^?RSjYw2kL{;M*%^fg2(`H>1s(rJBK>6w9Fq!faidA|L@kD zEi)-Ro?6629J2+;{7}-lLPbGR3FXrFM?qx8v4@#FICm8&r4FA_^-l zdCno-SqqP9%ft(tjSF;zn*rq_vne$X8m)4R)&!obZYev>v#m3-yk2RQzEa8h`~>c& z(o~+tc{OWuQirh41H9fKwv+`%`WFz4E%vT69l*xm)a~%Zt^D4|n>S8g=3wh6l0Z-+ryae3c}Eo`w8MrVaH?IbSwd`JGCx ztvnbt2iSN9$vRb$b$v?g+B3v2f1o^))Ti1WwZ(rxJWQ>cs?LeK0$!BCx$zO%20E)c zIZ!+7a-|;YSY$E$zA%XQmDilxy!*UL&b*pm70zGsA%0sjq_)&ac5!Fd!B8VinX-zZ z{aKbJHNewWW1+_xo1P(EITJ0ZXkgsoSc%6ws_a(v^27&e=0G#x11B7xjF=s5OfVft z-b|5d=30fKqaESYkLF2q495^bw5k@1Wf3?%6Ax{BS3lY?z}Sm%e?}lWJjHiO1JC%r zXl-#6?FT=TpW&S9u{95%_qy2!Ho>82wu_GXS-5Ed)jZ%n#_T}i)QLu@aUk#lV?72g zULR{q3Mx}1vPA~^UhZ>znmL$me5K`N!IacKvssNtRQt-1LvopE?7%c-5yA7xbM4R4 z1dZh5G0ng}M|={kd|G+(eWp~DzpQY4CxH`^b)Sc$AKXZa}o z`XbQwW%Q<%X&zD9Pr!|B3vn_FE+X}V<9m9O=Zf-&m#8%BruieuUldK5mbuHa6w^r* zR(=g~%Ukx?L$?a-5iSPZR3>p?Kv?4A=bJrkjrYPX|1RFU+ZM|YqFZN~_HYqZ5R_J&X6Hir+wh~M^U6A|H>iv+QPi_< zqg6k*J;TCC*R{$hM@`d=4{ea&ga<0`P_{hred{6Xk=f}r_t~@4eIZ!>WPjfBMw)*9 z4GS~Kl?xH5%Pr5gc_9d?od>~rfKeIOZnJPMZnNlPRA48rNy~UGO)4Uo(NltL?3kw+ zj0`Z4!=f7RGxdI`UvE^Ac;2z##PEqfuLEAb`~=m76y7X!mLr7V1>6Xa$V$7g2+vQ8 zgX<6siy4PHI7t`$Dxx6aHW4i-68sF;Ce$K2q4c=7ixnfFwuD1`6a0rTUM4Da!k~O4 z5qkE=8Bw>l$o14r!<)iVKaADmh%=Zo&zXnV+n)?ssUCLi#f{K@h&9w77?iuso#asI z%6fpBa${3*!X7ao2*p0wMLR&a^rBck61?dZvM4Qh$n1C0p1^Ux%Yj+98vEJ`&4>?d zFqLv+hpd{O)R@K@HM9ofd6+(ab}%HgHvKY_L-x#jX1GIO!g1@XA>hA3hy^OW4R@K2 z2gU?Y@zv{0mm5fZx)3#!4x7fQ&)kXZ3dy=jojN0{z@UA0DRyRCX7Lz%-rrHLyP5Y1 zXpwSIOdQvw?W)3oqm|gHo7RN|&w?~0k7r$H-*;@hvHae=Dvix&1%jTd9vqM7Zz{af zoh1^OkzyRZSmIpbuGpd1T9_UrP(sy&1!xo7SGd|dP*M&bqE)L{qrt|N=<9ioW&|oC zE0r)2kdyqPrs0^1RGC!7xZnn3F-&jex6LJ5kEz8IROSd|YbC)g`4gka+$_MkS|BPx zx5hVKYr=jhjG3Fx0cugjk8x5Fvts>ss_w1KJr(J1%F;VdmFjv>TOYC)Hu;|{%1 zwm+gB-LCqDC^i!lssMLkpTZu|gz)_=5X8i~&bONQBHVs1h$&nL<(K><$SA@%k--%5 z7v4=cm%z^^rPd^4*v#uf<@*o|{CnJIlWC3m?2@c~JDXM9u?uARVgoQL)_Xv&T3vxN zmOyMc;iK#2g>kOANWG6y-vMZ%W!hsWUNp@-Rn>a`bwvt#E__ya;uc_EI<;7O&(GAEwAId;@%8vUBAH?*`LC7FC|xzLJKFrOtwqspW$Gj z4a5w%B>jP0jb?(VhCcW>HP0~yX)(*(*FE)`rf{mEI}(|zc`8Q{-QtSSTMI<*mnYO$ zY!1-hL_dw4&PhOoY+9`tQ7}V^qQB4S<|9D`5B4}7yz_%*y*0$7*5{H4?~k|yM`r|! z`St2|+C9~uspc+efuJOCw6!dpyHq$%A*~H!UAy@zGfG72V=Te>ZZ=zB=*=^;PZMO!5 zFp^tKsHv_U(8fbd4z=G94aVet40YchxXs1YaI?(vfY7&%bImJaJ?!c<^{k<5{q712 z%Y!5a3VvMjH6;SF%Vxb@sHnhu7dk8A$?OF$qTwh}*(U1dB@E3V5WhHIhY)Xb}r0gjh}zkYc-_2^bfE{dVtj($JJh%QVGKP}$ zG@I&@yZdaPrSxp|cp{fQTDGR3P&c*`n*EJQ`?<5szc9skKppkr151~qrqm8CksKGx z_X`OQ?6D}%VlI7`AP1VE;rg6mksnpO@^(H231d9zWgDZ+>Cd`&8Tw%CW?NW*97U4X zCQDa>-~bv)_WAt`po3S?+|H&M=Z=0DK{b0SBj&&mQQ%Rc%ne7A+GxIpAm%c(FvBbL!jJT~sJst!}LW^%~|7B2$T7p>5n*K3SL0A$sa~ zW*d5p_dyy9DQKCIqLz%to4jT)*;$6@MdD4GqB}pCW)kaJgF)mUSkzoQZIq)2jfh>0 z2TK1KDxZ2UkS9;^$2k9IB50athYqrJLIdXma*xzs7Fphlh;YX|A!dteZ}^coT-4-J zNpkYXPMt*Nx|CGceyrB!YyO}h>}i})Ga)_KqPJ?y7v8MzeZTZ3sJpU7FLz3>Y0gB` zFs#2-n=v}!MDe2fq`(*`t6R2$J03G}PuyY|#+dGqUDIo`^}4gjMDu5(6eU@=*}Ko8 zVfy`INkta!C&W^Uv&OjpfyyLAc0sTXMwAY%qBZv|cx=26}2AHpzd3-Q}Qt3lSisO`c&vX*YZ(S(JDO zreS9xU$<8+yNSLtqM-1J7x206&Z$L3e81t|&ncHXdEWJ7pBsA3J_|_}1-jLvPY?r| zy&(V^Z=yDYn5tT={`~nHx~otSlO|+Rm&|*xL4#4}2ouOK{rto9<@+l)>G}dV7bWhE z(&@MJst$Voeno*2AspM-PS;X!<%vO%}Vaj!SwXh`!z92%k+3;55DG zz|$kEpwhlWo_yT%%jHE@#Abc0!@60Se4`K8sc?aq=(`(t_Gpb<7E+YJO0eTtg$`8R zB+Bt9obsr~+ny|L~B;Q^N{;_=W3(fBcoDQ-ao8G#CHtqSeO zxHsf1{Es2&pcr39&MvFS;?x0n?6GvbM|TZRZ=#}Jx;hN15ItmkG2LpiqDeH$0jD9- zS|Ypq9b>l^N@DkPmGDdR$0!NJjBD<%L3L}zh|V%`-{elRk%5KS@YOWg-(sjNBOO^|o$bXiosR!H^c2{hU~fVJ|kO$J9Z zy``=r^A{GZzJCT#;aur%8zEi{vmPZBDbQX^H76cBILCziMhxqatGIUI*nN?FVD4}F`TzIPXYCTDsv~u3WuH&^GBru_yD;i)9 zHaFQ%4|;6~zf2z~`*!Y#>pfZvdM{Uf!HsIt?)v0c+nA#p>)&AT`ODXnha}l}``UN} zRY-4<biC2^96vXcbP%C!al9}d?FH0-&MOgC|lqx-T!r07#WL@ z;d@oMolq@8);~F=KDXXI;b!cmd#k0IF*!$ZdwChfN$6b*L}Uu{mI&ZCv3be5;&Hd- z%=V-U)~rZk5$qffKRh-0k*xaSo2VgsJ=F~t!~Di%y1Pr-ovwtPu9t_!dp9v9wg$O9 zzexYyy?(!JYS&&j=r#_bLvEj$*MPR zw0XEd$hiDsZpcq($ozKVYrl?B&ml|1xINj&a)u6%%t|jvT?@8W^jHRl|LA;>Gw_?r z@vv359Cf9*oh9#+QhJzl$)t&A%rgL9MvA9Bwdc3$%kMk@KU`VO6*2KbA?^QW0uZNX z!O}pqWT1@qIaA5bW%)it`hitRl>tGq@w&s@t;S|xBX~F`Kh=zfzKfs%SCse>6b%gQ zR*dK3@hUEiZQY?^#@E0^-P+p#8TMrV_*_YnCntmh4b7=_Cu594iaoi*gJO7?+@`7H zoa7@NEy>8$7Z`7_n_v(IWrxuVUvQIMc2A@5%)Actq~4-ru&4}NdUKy+GSR&ifZ!Kc9YZ@t_x9@}|3=Ec zVs~7wc|;4^vx2Vgf$-c!U%~;KuiAF1`3xtIEfIHGX8laRl81~3{&EOv^6RB{iK$rD ze$`{gBu;{@#kAy0VxwEz|K(zy#dNmDKf=A5Z|zm4#Lt%T+ex!=PCagpfA*@9$?LGE zHvX-YTbdAQiTiJ{*dE3Jzpvq%=E{WvY;}9)Jnq%1XX>l8kNn6WF9kz+{)adVeN}Psumk zh^Zn{vDC@1Y$XYGI1koZyY))(XG5oCxL+m}rW{eH{ru1)!%b$+{#Yf0Z5kx(QaIg9 zip`w@l1@V4HP9DHCdit9(ofX44`vRW3PY>CrX8`qBbV%5qZy! z1=G$;*E2Dg3w7fjihB*)HA;}}IvWyWh=i6PtRT^2X(7%E&43O-Nq7FfM(q@(>_Ma{ zCB6lPEwfBF%rVPC@39qIOfX&>1=lfWc*P<@m#SQ}fRa*@rVognsiDg6$`y5c^}Ztg zUU8npJm9(+*jABIbJFl2ROFqe5Wro;$0*&X=?d*pe;Lf*1PG^ZCrU0@a7XULcj@la z`Rk>9oW685U~ZV4%lv->KmpZHze=NV$C3w*WIDYHtF#7=q5WQEH0@W=tf2gSGb?I? zt_8xDpUHtBIYtgozVcODSU;xWDP?q5o$QhJudCC#tNNw#J`Nc*{=;buZc(yf@ zQaUOhTIw$Ajv@8*nfPO0zEbFUX2_9!@z`Y;=okfR7EMIPD1;?$w7k5?jAso-8HCKX z>K*>nflHk99?QOS?(}`?clEnBmz`2LH5i`aju^4&d``j1>Fj`h@o)>p^3q-@wPz_` zc1@S}8Dq7s*ZfJ*$;D1diqKLut$izVXQj?u#FGn8wmz7W+2FX*L&@%A`Pkc;CAM3Q zMwo-D^R+)-NSe@z(7Y7g2D`7t6<m%>5>6g-FqxkFn;oy! zUIx&`M8eyQZi1EOxd}IGff}7az>kThdW6P%%Ss! zvk(k)vbFt^q|DAmzRC)aM-r2$+tmvQ8&+R^0yQC%-23w{u`MV2+{hiQCjL-6>8SwjUpuHKY%K^0*`!_ z_aQ(dgzJ}-Wo$%rnaGgpefw61y;hyIB=Fwp@YkhBx2_d^vsfJ~Wyl3;{Vju6T|m4EaklUQUx!3Obez|SLR&YrD=e6y6k}ZU53FRdic7@9Rgt; zl2neXL4hQoeASdK!Ke%>FBxsmuFhW!djw;s88ny7w8#Zguh<0B+A~I^bFR283-4W^ zfz#aZ+Pb5=I}0l_&q zh)O$4Vrbu9)%sbx5#W=+w)^R3B)xLL{TM3cr7ixp+-HCAUG)dwUXaIaSfSh8O>>(l zGT(>5$)Z+<#WRHbxhbY}ZNqlWW09568+oKG*M)03MWag=z`JCuB-z@<1LtowS$&3_ zzN9LPp0f%<-z`8R&a1qEf(s%=cyE!PESZPuF zMte32H*@Tz!OcEKsVS*Rer6K|=SwmSy6em;Qh=&aLiWmd;Ve-cEFSgB+MUEc=$j_DVTdbO1l#Fs9Y6!Cw1G^GnN=_pVDqkq4krzExm|}nqB?wNIwCEVlIVJz z4IEt2^rd!P>^7xnKo>NRdF8G;(DKDnpS=5QHMtB|iG~K`$F^2XEIb6Nf`y=+;qRAN zn(3`W?nUw;`Yq*sxrKa;}F{vPOwAta5LVpvIN^qr7gr2p4p@t9~7 z$;>DHhj1CD;)^MuwMIHevYU6$-GizSfb$}-q{Km3w^HE0T=9ccc66M##oB@>r8BA-JTmOhmawd>g@IRhJcE|*WpHKdClL^Uj2%^A#sP^ z51FkVa)V7rSX&KigVSa;D$W<$7XTBF*-R^J);AK)Ib;g04Mdj6Ssk*3MMta%UOKq^ z>?lAsvg-W$OQOdFDJ3VV%4*MaoW3v;*EOdYwNU9ShVbs^JBv>o^suTkTx3c_rG0D3 zbNTSK`{QGhTaWN%PFT;_B?1a0X( z4VpNkKcu!cz(TQUU9*sT!cFn~J!5>*xF)OV)Q}|kt%b-K#?OL41fq_o8aZq9U?4Ms znwgK;!igE5u{yiQnooy_-)B|>PxY4uQ_a;pnupyp3pRceSK7L$`U)|5v0G1GDd>tn`!aAF94MkxaFZ$(OOFm+T6jh>a=6`8<+km|UVo8L0 zgMJ6dZR*@(Ofhrf2g#dU+FZRe=I`g|OWgs4ONmDI@+{M z^tJ2ZFyZ%GWHc7v2t~X_cw$FO*fMNlz2yPnp3xb;u(Dzniw{2;5}%e$z4EHDVEisW zwIfopFcXKV-%!^WeBEheia{@Jf|JNKat=}RG_?DhK}q;7qc4%En@`9&tKYH98$=BS zD^$PNZkNEp8!>wL@U|{a?|#xH9{5vGV5u_PIhhDO7s3=an?;Cx3Ze4 z%q$7p?jlaXd%j?U2S>@U-qhTN*0g-$I29VzaUTe=k6x#lE}5|{dAFH&#ziwMA4#DoD)g@#p^le#f8@ZB4D(&^O8zx zQ#4VYYz#jrU+5%_nUy+%{bFfkRIUU}hc0=cTFz}+vI-?x*P5z6k{x)iVP3Ah7+Wo~ z^CD{WEiFwzUR$oz7eq-H9K}zE(@wBm0cv>0+C`GS{7MvfF92HIw&q%6eM_AwNqm?T zkLcJ`%)S(Z{m5aN%I8yO5Q3vfb71%|501rs6$%b-H*Vyc&q-61D}}U`Oi&d4`fzO| z0As&+bT{v979Q_v{vmnIBPc?DUDPuN2(@TZ9-1Wl%+MF!lI01{!?izD8Te#QP9EzP zX6Cs*#{-UjmAP#Z9N{mvoEgW53|!kFjfyRujNDKJ^Bl{|F&Q+&KH^&%=legWya}tM zoxjrzgV5DjZ5IakVV_8ia~CXGkW(7pzxVSMhg2s6t?o)4kk75sk87R-o4Z`Dj{sO+ zHcd2z+F5c$e7&a|`%+WXH!`lI3*fcOAp9}2xHQE>3RoUjP3Xn_z;eu|4e}Q!ED)@L z-GM`_droruIoky;tcGPLE5krBh(?qJ)`uLLB=0IHUCo{Zt8|RCqJE?Ic)p*Rd9a+@ zo1zS&MfH9n1F!@ePQ``8OC~$sE{b9z(GyR=i9qiPn~@cU726ZCPFgTT@$k0b>@#bM z5?o06?aVIQt!5*jYF#e?W(mfy*Cuq~a=-n4bERzeCSBal;$+ToO@Vd$B(lk&5#q{~#Pte{c*XY(zfVBFT5e8RN?qWl zwKUDU46{H(#;j%e7RCw#M-9wC&Nz~6m{2ENgYpRdCfp8AV6f!YE&3(9_%g-IYTKN| ztc;#nZ$g_Ick6wSUQMh@GagpQcLSQB6E~oGFhxK;OUFy7@NM8` zGT&#Y9P{gp<5TZpZx-tO4UY2AM^`9aHixy57LFK0B@Nc<`}bePwAhhWqa zB3)<%*Ogo1cTe3~qQWtX2(!0luJDQsDfT@aYAu2wdD7axE=gS>3O&DnNa-GI+$&I( z+S^pmz+DSNJnmN7V)Uo@sSjs7X*y`rVA`?nji)nETgJf@Dz$&#Zd<)Kxy#A=t5XXl z>)HXWZ8c=*{s}Rn9Qe4dh@NrvJS8?)yYu>&34-8_=Lh&pCE;&=*1=37cwYH@uJZ>E zbqDWtd*KI;+RRGkyV0Mm@d9bBl}BTTinesryZmyfNmZDv!={&Q2MLh9yeaLBTq9uw zaoZ6lh0}=OYxMo?Ln4g`sGBik;bv08U460iIFb41A8D3{fI1hI-(Al;Prh~?#C`v* z@->I%^<{oI#6s@If4q-|-8Ue=Scvbq;O%Hk9u50eow4|859s9~U2l0cswL8q`vp*9 z*t`0)b!8=Nlw|xmfT*Tdi$yH|`LTk4$6BQ`Sg^DI5WK*myhIpz<*+M`bX|!5+N-ne z=Spu4Q%(?vzxFy^9NHLvWYT1_0r#7A+?G!MKW}*Xx)Fze?&o)X$kp77@ZJ%iRQqsG zs17y_Sn5!pH#}LHS#NK|1>8=gv0K~)g1(~e2A~Fz0jM6pZp4PXBB{PXxb)=wQf_jn z2WWs4kP8wC>gW5%K>qCmBMtB{+>v|b|980mc9jUeBbOb1Afy?b^}i?OA6IGEsR7xR z6q42wv42k8KdE=70a;pHm+}1B`_{*AjB{Z!q`|UlHL2P83JfR(zQL z^A!E{6%93@&@ayJj^KaB#b03S%LeelM&~)={2x&G*S&xN`|sfWbGrTv{(lGWFBtuO wdH)xAe_JTD-Wsl@=)u#jSX;!QI`ZKyfL>N^y60cb&l*90nhpcY6PJ z*Y~aUyJzK0GD&u1XJ=>UNlt{aqBJHN2^sD5SNc_2eQetchO^TF`1#d~9kPuheFedVpFFPxV&+xgb`+@9_y z()`8++;&!l5GGr0R4vK>po+KWixUu%45lX~48OZVc>4|UJrQ>F&C8~wH*emcekBGz z8yFZOhF7;8{hYnCc=lt_`S4v20Ra!uAyk=lFziMe;Z!5wiv|LM3Yy17+G|x>1N5p` z3_%o!GCYf7`w~2h-=}>N8NvLly>SSXB^S5V%n00floRjYno5ufMicPM1{?#p{XvHxGd_&yLXS!M88AO;LygWW#g{ zqeqB0bI#3zL>aEcm>k~-y!Vk8((MII50FMxze%7f{6PAJK`}B=3vrXd1L)lwub`vC z%V)JHRT!?;Z~UT4o(2{3%f1PIT6KIQ)xG}h`Nm?^){?QoEKd8E_$-{lVf<^EPKry4 z{=lmUn#^7!vhUui+xE;KRFo^nZ8r5EYR`fn+a?LyykHRSbS7@CETp z7!ZjG*HtWBZqRB`Uj z%Nuc|YJU`d42~Y^1Y|FoQxfdRPAE=7odAqy5KYXZcsHJp`*Nl;?xE4{5NarJYUJ$rq zSobeiQGXV$-XzB?Z`@egM0y+w5zJc{O`$It%?B5+77y&_{izV=E)j1cZkj2mG21LX zdP#un%khyp`{O!)EM#+g6U+bnKF_nQEt2e^oO1M<4ZOLAa4N#f&VD*W$ofEpa4)jK zv~fx}9*QZ(Vug??!mK=qrcPSkinE>(gyoha%8s^|qm!shzP~qRQVlzj#-gT= zcaouZeA5(nN$K|vs)C^|?V?OQi$)e#t%5}oK=)H^lGzzaCph`%$kgXrq?H)nU-Xj~ zd+N35KC#y(2x>j4sf;`RRUE7YF$KnHsTdh?KaB9TFz5a2I(NN^54%09-1u=V)|tUC z%GcS2aS7MCPH%5GThS`|0B349W)GsPVSaRzD50;s0{H@@Q$G&A8>LCYdygW75{6Q= zVQ@g#N{1IA|BGkp%}L)|V=Mz77^-qdD7~lrk-!`8 zni%_?^?S3d-H?^(n`(4{;LOj-@liwg+xpvi+j86V+t_avB5C_F@Dy-W&DAuN>(z7^ z2pLwAu)nbU;h9TG7az-I{iUG__+3=&_Pb(sc6M~Ob=G*U*9v{^{oHkNmU>IYwW7Z6 ziegqtc44`)VR^gSW8VTfMb+cFVw#(wJOUYeX2}ywrYN3e|sU3X1)C6^hOP?B{dSEMQ=E=*oPChs0u3D>+u=~tVjMMM)j;$NYzp$?%= z7!AbrfNKCTAcRCVhLCvC@i3^aPrEYD1*Gg|k%q0vmX%2d}} zx4c2vywkt9~dQ8U{Mg~a+Q~gKXdfW12I#87B@2nR6 zdi}bU*Iu)$Jq9)%L+wtaMwtuzLyhSU3uLoo{8%AaS6DEzwAk;leX$C$Z2h{?N@N{Y z4{2vPS>UYm%zB{}*LhbgH&$1m!_!RP_@{N%W5>Q9J0zRUopnoB1sQD_gSIswOt;Yc zk1*O3+mjq&VG&buOmdNIg6#clfJjA+%Ob~-*-?$bs|xXo*9K(<&{mOF^j2*5=Z&rP z#KW4A-ThaGsJ~D_^um`s7m$14)$zH>ZNa?{bOB;_FafJL^TYW{PKmLIdm3yqGPH5D z(~9DZmh_q&&AaDnXMBqsyF2hh&~Tt&U|rCgpprmnNNR{_$ZXhUNORaYstCChN)(DN zzH636@0-&Dcb|>yjf-xjPrs#mrN4X<4zG<$`cyCfkv>#OkLye^$t;QH4IJVIGM&KSMy|8y8_TnnO+)%ubfq$lS>F_x8WSnwK3;x%$XHXDnPJ7wV|Vb~ z^3w9b5_tx7e`vpDTI@XUmgnIK!=S%ETJ(ixrNOBl5v3l}5$G$ZCpOx!#;VQd8qVy$+aeB z+*kFj>SYh9ckEY1klsvF)Xr+oKw5)~D5sc-FX-jPYg+VX!cf*y{g3)dEqe>bMVoVd zek_UxU{&KU)s@>De7S40DOO3tpDWnTw5uVy54vX!WODi`K&`tbd97=?CN+;ww*zK@ zW*y$U5Bd-{#1XC(x6)IsDi2zR0#itx`csLOrga&s&ZGTUFHelMw)M#TQyp-**$E$r zuRE`{z%=isE~UY1SGic}*fa3w=ugR9z?>H!2~e;3Y>aNBP%Z3`N=rayjncTi-$xy`mxA)n{N^5?{;=KX&K}SKDVmeQaXE1n2$qJX>KO=Oe;wXO@9E zna=0K#fxfWMbwHpj{@7fi5C18u~}ClAkXo8@P^@H2X_{Xe{Jz()pt)5W{B zxJm_PY$@?**v#H&OJB3`1A!n@F5AA7kJrd&*g&zj!ro6ZPkSbALng~xk@R#*2ieWS zw#TUZO*b~@H7C2%yA+;sehYU#Tj&{tVo$iI(q3!%?I$VKDTscoUIouqyM{o&x~qZ9 zHLtAayPk~dhC4g!wW_r&kDQ06p|CUxSqdhxC10ys(zDxf@uyDzB(^Q=C$z8P9<@WS z)+e$MCRGu>b~;hJR3CWrYvIhLx#9#o2di5Qc5S{8M|>!XI}Y*VTX?b9K!(8dTS*C# zG89QXkWgG-U;5xw8+ZyXX8!2Tdn0J)cOFH! z|M!W9zkg}|%STKIML>rC!-K!>KVSY&ZY1ze#QzDuGKHrhNT^B5%EEm$6Gt;Mpwl-y z=K%U>c6bD;y^OXK0s;Z;-}i;AD$Oap{6)(zTFzPu@`5IIwyZ{`cE)C`?zZ-S%Rvx! z7la3G&76%W-ED1vPJ-?t@BWoT5FY*;&GwG+Us;^3Mc!#CC{s$>Ihs-Ova++XzY|5H zq@)yfG&L7g{V4U{xw*Nqx^c1EIa;uB2nYzUv2(I=gTk$3O@R`kEmf3?%h-SYox0y_P7 zx8NOQ`Xw1x8wUWX_L2Pe1izX<++N&i>nzmaPF z8z~V}*7LQyEb3Pv3Lqys;e2Hl z-;S1`?0h9li9sj(!ICDXyQHH0V7!TE1$K?ey%se8Nz zv3;g_NBL6jZNO`E0-EFFi$u8J-0^xSFa$j@|zqpTv)>iXBfbY8eW%0D@AHN5z) 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

    S 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 literal 0 HcmV?d00001 diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 1e61760649..30e3001f36 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -107,6 +107,18 @@ mathematics and the algorithm of the example. Documentations related codes should be in the python script as the header comments of the script or docstrings of each function. +Also, each document should have a link to the code in Github. +You can easily add the link by using the `.. autoclass::`, `.. autofunction::`, and `.. automodule` by Sphinx's `autodoc`_ module. + +Using this `autodoc`_ module, the generated documentations have the link to the code in Github like: + +.. image:: /_static/img/source_link_1.png + +When you click the link, you will jump to the source code in Github like: + +.. image:: /_static/img/source_link_2.png + + .. _`submit a pull request`: @@ -210,5 +222,6 @@ Current Major Sponsors: .. _`1Password`: https://github.com/1Password/for-open-source .. _`matplotrecorder`: https://github.com/AtsushiSakai/matplotrecorder .. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs +.. _`autodoc`: https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html From f466f25f5328e019bd1e0ccc62b176ff2fc72187 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Apr 2025 08:53:35 +0900 Subject: [PATCH 358/414] build(deps): bump ruff from 0.11.0 to 0.11.6 in /requirements (#1201) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.11.0 to 0.11.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.11.0...0.11.6) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.11.6 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5438678f87..f3e6c3dc51 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.11.0 # For unit test +ruff == 0.11.6 # For unit test From af0442d358b1deca5710c0c6812424b12b39f7e7 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 1 May 2025 13:08:29 +0900 Subject: [PATCH 359/414] build(deps): update cvxpy version from 1.5.3 to 1.6.5 in requirements (#1203) * build(deps): update cvxpy version from 1.5.3 to 1.6.5 in requirements * Add ECOS solver and improve solver handling for stability Added ECOS to requirements and enhanced compatibility with cvxpy solvers by specifying 'order' for matrix reshaping. Updated solver configurations in rocket landing and pendulum control for consistency and reliability. Improved test behavior by enforcing stricter warning handling in pytest. --- .../rocket_powered_landing/rocket_powered_landing.py | 9 +++++---- InvertedPendulum/inverted_pendulum_mpc_control.py | 2 +- requirements/requirements.txt | 3 ++- tests/conftest.py | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py index 239f3629c1..1918dc1cee 100644 --- a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py +++ b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py @@ -31,6 +31,7 @@ W_DELTA_SIGMA = 1e-1 # difference in flight time W_NU = 1e5 # virtual control +print(cvxpy.installed_solvers()) solver = 'ECOS' verbose_solver = False @@ -462,11 +463,11 @@ def __init__(self, m, K): # x_t+1 = A_*x_t+B_*U_t+C_*U_T+1*S_*sigma+zbar+nu constraints += [ self.var['X'][:, k + 1] == - cvxpy.reshape(self.par['A_bar'][:, k], (m.n_x, m.n_x)) @ + cvxpy.reshape(self.par['A_bar'][:, k], (m.n_x, m.n_x), order='F') @ self.var['X'][:, k] + - cvxpy.reshape(self.par['B_bar'][:, k], (m.n_x, m.n_u)) @ + cvxpy.reshape(self.par['B_bar'][:, k], (m.n_x, m.n_u), order='F') @ self.var['U'][:, k] + - cvxpy.reshape(self.par['C_bar'][:, k], (m.n_x, m.n_u)) @ + cvxpy.reshape(self.par['C_bar'][:, k], (m.n_x, m.n_u), order='F') @ self.var['U'][:, k + 1] + self.par['S_bar'][:, k] * self.var['sigma'] + self.par['z_bar'][:, k] + @@ -536,7 +537,7 @@ def solve(self, **kwargs): with warnings.catch_warnings(): # For User warning from solver warnings.simplefilter('ignore') self.prob.solve(verbose=verbose_solver, - solver=solver) + solver=solver) except cvxpy.SolverError: error = True diff --git a/InvertedPendulum/inverted_pendulum_mpc_control.py b/InvertedPendulum/inverted_pendulum_mpc_control.py index 9a5fa2ab41..c45dde8acc 100644 --- a/InvertedPendulum/inverted_pendulum_mpc_control.py +++ b/InvertedPendulum/inverted_pendulum_mpc_control.py @@ -91,7 +91,7 @@ def mpc_control(x0): prob = cvxpy.Problem(cvxpy.Minimize(cost), constr) start = time.time() - prob.solve(verbose=False) + prob.solve(verbose=False, solver=cvxpy.CLARABEL) elapsed_time = time.time() - start print(f"calc time:{elapsed_time:.6f} [sec]") diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f3e6c3dc51..e9c68be7e6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,8 @@ numpy == 2.2.4 scipy == 1.15.2 matplotlib == 3.10.1 -cvxpy == 1.5.3 +cvxpy == 1.6.5 +ecos == 2.0.14 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test diff --git a/tests/conftest.py b/tests/conftest.py index 3485fe8150..b707b22d00 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -10,4 +10,4 @@ def run_this_test(file): - pytest.main([os.path.abspath(file)]) + pytest.main(args=["-W", "error", "-Werror", "--pythonwarnings=error", os.path.abspath(file)]) From 1f729cb8cbd5075871bb52c8fb31df2732ad6641 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 13:59:15 +0900 Subject: [PATCH 360/414] build(deps): bump ruff from 0.11.6 to 0.11.7 in /requirements (#1205) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.11.6 to 0.11.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.11.6...0.11.7) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.11.7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e9c68be7e6..88cbb21f81 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -6,4 +6,4 @@ ecos == 2.0.14 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.11.6 # For unit test +ruff == 0.11.7 # For unit test From a2c42c3d6837658edb734e9f16ab64c1bd2662e7 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 1 May 2025 21:53:12 +0900 Subject: [PATCH 361/414] Update Python version to 3.13 across the project (#1208) * Update Python version to 3.13 across the project Upgraded the required Python version to 3.13 in configurations, CI workflows, documentation, and environment files. This ensures compatibility with the latest Python release and maintains consistency across all project components. * Update Python version to 3.13 across the project Upgraded the required Python version to 3.13 in configurations, CI workflows, documentation, and environment files. This ensures compatibility with the latest Python release and maintains consistency across all project components. --- .circleci/config.yml | 2 +- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- README.md | 2 +- appveyor.yml | 2 +- docs/modules/0_getting_started/3_how_to_contribute_main.rst | 2 +- requirements/environment.yml | 2 +- ruff.toml | 4 ++-- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9f803ece4a..f6eff674de 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ orbs: jobs: build_doc: docker: - - image: cimg/python:3.12 + - image: cimg/python:3.13 steps: - checkout - run: diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index 7b3dc14751..907d36452d 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [ '3.12' ] + python-version: [ '3.13' ] name: Python ${{ matrix.python-version }} CI diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 5ea15ac72e..03db65f43d 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python-version: [ '3.12' ] + python-version: [ '3.13' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index b9c8dea649..5cb19699b2 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python-version: [ '3.12' ] + python-version: [ '3.13' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 diff --git a/README.md b/README.md index 9e605435ce..6d04c90bc8 100644 --- a/README.md +++ b/README.md @@ -102,7 +102,7 @@ or this paper for more details: For running each sample code: -- [Python 3.12.x](https://www.python.org/) +- [Python 3.13.x](https://www.python.org/) - [NumPy](https://numpy.org/) diff --git a/appveyor.yml b/appveyor.yml index 05ad8a2820..72d89acf11 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -8,7 +8,7 @@ environment: CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\appveyor\\run_with_env.cmd" matrix: - - PYTHON_DIR: C:\Python310-x64 + - PYTHON_DIR: C:\Python313-x64 branches: only: diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 30e3001f36..0325aaacae 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -26,7 +26,7 @@ to understand the philosophies of this project. Check your Python version. --------------------------- -We only accept a PR for Python 3.12.x or higher. +We only accept a PR for Python 3.13.x or higher. We will not accept a PR for Python 2.x. diff --git a/requirements/environment.yml b/requirements/environment.yml index afbb3fb8ce..023a3d75bf 100644 --- a/requirements/environment.yml +++ b/requirements/environment.yml @@ -2,7 +2,7 @@ name: python_robotics channels: - conda-forge dependencies: - - python=3.12 + - python=3.13 - pip - scipy - numpy diff --git a/ruff.toml b/ruff.toml index 5823ca3db7..d76b715a06 100644 --- a/ruff.toml +++ b/ruff.toml @@ -5,8 +5,8 @@ ignore = ["E501", "E741", "E402"] exclude = [ ] -# Assume Python 3.11 -target-version = "py312" +# Assume Python 3.13 +target-version = "py313" [per-file-ignores] From 22cbee49218a1f8acb07ad488416db3c952c19d6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 2 May 2025 10:01:19 +0900 Subject: [PATCH 362/414] Standardize "Ref:" to "Reference" across files (#1210) Updated all instances of "Ref:" to "Reference" for consistency in both code and documentation. This change improves clarity and aligns with standard terminology practices. --- .../rocket_powered_landing.py | 2 +- .../two_joint_arm_to_point_control.py | 2 +- .../ensemble_kalman_filter.py | 2 +- Mapping/DistanceMap/distance_map.py | 2 +- .../rectangle_fitting/rectangle_fitting.py | 2 +- MissionPlanning/BehaviorTree/behavior_tree.py | 2 +- MissionPlanning/StateMachine/state_machine.py | 4 +- PathPlanning/ElasticBands/elastic_bands.py | 2 +- .../Eta3SplinePath/eta3_spline_path.py | 2 +- .../cartesian_frenet_converter.py | 2 +- .../frenet_optimal_trajectory.py | 2 +- .../potential_field_planning.py | 2 +- .../quintic_polynomials_planner.py | 2 +- .../state_lattice_planner.py | 2 +- PathTracking/cgmres_nmpc/cgmres_nmpc.py | 2 +- PathTracking/move_to_pose/move_to_pose.py | 2 +- .../stanley_controller/stanley_controller.py | 2 +- README.md | 42 ++--- .../Kalmanfilter_basics_2_main.rst | 2 +- .../12_appendix/Kalmanfilter_basics_main.rst | 2 +- .../steering_motion_model_main.rst | 2 +- ...samble_kalman_filter_localization_main.rst | 5 + ...tended_kalman_filter_localization_main.rst | 168 +++++++++--------- .../histogram_filter_localization_main.rst | 7 +- .../particle_filter_localization_main.rst | 8 +- ...cented_kalman_filter_localization_main.rst | 8 +- .../modules/4_slam/ekf_slam/ekf_slam_main.rst | 2 +- .../4_slam/graph_slam/graph_slam_main.rst | 2 +- .../bezier_path/bezier_path_main.rst | 2 +- .../eta3_spline/eta3_spline_main.rst | 2 +- .../frenet_frame_path_main.rst | 2 +- .../grid_base_search_main.rst | 6 +- ...l_predictive_trajectory_generator_main.rst | 2 +- .../prm_planner/prm_planner_main.rst | 2 +- .../quintic_polynomials_planner_main.rst | 2 +- .../reeds_shepp_path_main.rst | 2 +- docs/modules/5_path_planning/rrt/rrt_main.rst | 8 +- .../state_lattice_planner_main.rst | 2 +- .../vrm_planner/vrm_planner_main.rst | 2 +- .../lqr_speed_and_steering_control_main.rst | 2 +- .../lqr_steering_control_main.rst | 2 +- .../pure_pursuit_tracking_main.rst | 2 +- .../rear_wheel_feedback_control_main.rst | 2 +- .../stanley_control/stanley_control_main.rst | 2 +- users_comments.md | 2 +- 45 files changed, 173 insertions(+), 155 deletions(-) diff --git a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py index 1918dc1cee..e8ba8fa220 100644 --- a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py +++ b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py @@ -5,7 +5,7 @@ author: Sven Niederberger Atsushi Sakai -Ref: +Reference: - Python implementation of 'Successive Convexification for 6-DoF Mars Rocket Powered Landing with Free-Final-Time' paper by Michael Szmuk and Behcet Acıkmese. diff --git a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py index c2227f18e3..09969c30be 100644 --- a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py +++ b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py @@ -5,7 +5,7 @@ Author: Daniel Ingram (daniel-s-ingram) Atsushi Sakai (@Atsushi_twi) -Ref: P. I. Corke, "Robotics, Vision & Control", Springer 2017, +Reference: P. I. Corke, "Robotics, Vision & Control", Springer 2017, ISBN 978-3-319-54413-7 p102 - [Robotics, Vision and Control] (https://link.springer.com/book/10.1007/978-3-642-20144-8) diff --git a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py index 2bab3b49c1..e8a988a270 100644 --- a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py +++ b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py @@ -4,7 +4,7 @@ author: Ryohei Sasaki(rsasaki0109) -Ref: +Reference: Ensemble Kalman filtering (https://rmets.onlinelibrary.wiley.com/doi/10.1256/qj.05.135) diff --git a/Mapping/DistanceMap/distance_map.py b/Mapping/DistanceMap/distance_map.py index 0dcc7380c5..0f96c9e8c6 100644 --- a/Mapping/DistanceMap/distance_map.py +++ b/Mapping/DistanceMap/distance_map.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Distance Map] (https://cs.brown.edu/people/pfelzens/papers/dt-final.pdf) diff --git a/Mapping/rectangle_fitting/rectangle_fitting.py b/Mapping/rectangle_fitting/rectangle_fitting.py index 177f078871..7902619666 100644 --- a/Mapping/rectangle_fitting/rectangle_fitting.py +++ b/Mapping/rectangle_fitting/rectangle_fitting.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - Efficient L-Shape Fitting for Vehicle Detection Using Laser Scanners - The Robotics Institute Carnegie Mellon University https://www.ri.cmu.edu/publications/ diff --git a/MissionPlanning/BehaviorTree/behavior_tree.py b/MissionPlanning/BehaviorTree/behavior_tree.py index 59f4c713f1..9ad886aafb 100644 --- a/MissionPlanning/BehaviorTree/behavior_tree.py +++ b/MissionPlanning/BehaviorTree/behavior_tree.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Behavior Tree](https://en.wikipedia.org/wiki/Behavior_tree_(artificial_intelligence,_robotics_and_control)) """ diff --git a/MissionPlanning/StateMachine/state_machine.py b/MissionPlanning/StateMachine/state_machine.py index de72f0f451..454759236e 100644 --- a/MissionPlanning/StateMachine/state_machine.py +++ b/MissionPlanning/StateMachine/state_machine.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [State Machine] (https://en.wikipedia.org/wiki/Finite-state_machine) @@ -23,7 +23,7 @@ def deflate_and_encode(plantuml_text): """ zlib compress the plantuml text and encode it for the plantuml server. - Ref: https://plantuml.com/en/text-encoding + Reference https://plantuml.com/en/text-encoding """ plantuml_alphabet = ( string.digits + string.ascii_uppercase + string.ascii_lowercase + "-_" diff --git a/PathPlanning/ElasticBands/elastic_bands.py b/PathPlanning/ElasticBands/elastic_bands.py index 785f822d14..77d4e6e399 100644 --- a/PathPlanning/ElasticBands/elastic_bands.py +++ b/PathPlanning/ElasticBands/elastic_bands.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Elastic Bands: Connecting Path Planning and Control] (http://www8.cs.umu.se/research/ifor/dl/Control/elastic%20bands.pdf) diff --git a/PathPlanning/Eta3SplinePath/eta3_spline_path.py b/PathPlanning/Eta3SplinePath/eta3_spline_path.py index dc07d3c84b..3f685e512f 100644 --- a/PathPlanning/Eta3SplinePath/eta3_spline_path.py +++ b/PathPlanning/Eta3SplinePath/eta3_spline_path.py @@ -5,7 +5,7 @@ author: Joe Dinius, Ph.D (https://jwdinius.github.io) Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots] (https://ieeexplore.ieee.org/document/4339545/) diff --git a/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py index 4cc8650c89..482712ceaf 100644 --- a/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py +++ b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py @@ -4,7 +4,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame] (https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) diff --git a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py index 248894c1c6..4b82fb70fd 100644 --- a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py +++ b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame] (https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) diff --git a/PathPlanning/PotentialFieldPlanning/potential_field_planning.py b/PathPlanning/PotentialFieldPlanning/potential_field_planning.py index 8f136b5ee3..603a9d16cf 100644 --- a/PathPlanning/PotentialFieldPlanning/potential_field_planning.py +++ b/PathPlanning/PotentialFieldPlanning/potential_field_planning.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: https://www.cs.cmu.edu/~motionplanning/lecture/Chap4-Potential-Field_howie.pdf """ diff --git a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py index fdc181afab..86f9f662da 100644 --- a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py +++ b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [Local Path planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) diff --git a/PathPlanning/StateLatticePlanner/state_lattice_planner.py b/PathPlanning/StateLatticePlanner/state_lattice_planner.py index 7f8e725e0a..05f8df78f8 100644 --- a/PathPlanning/StateLatticePlanner/state_lattice_planner.py +++ b/PathPlanning/StateLatticePlanner/state_lattice_planner.py @@ -8,7 +8,7 @@ https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathPlanning /ModelPredictiveTrajectoryGenerator/lookup_table_generator.py -Ref: +Reference: - State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments diff --git a/PathTracking/cgmres_nmpc/cgmres_nmpc.py b/PathTracking/cgmres_nmpc/cgmres_nmpc.py index a582c9da81..ee40e73504 100644 --- a/PathTracking/cgmres_nmpc/cgmres_nmpc.py +++ b/PathTracking/cgmres_nmpc/cgmres_nmpc.py @@ -4,7 +4,7 @@ author Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: Shunichi09/nonlinear_control: Implementing the nonlinear model predictive control, sliding mode control https://github.com/Shunichi09/PythonLinearNonlinearControl diff --git a/PathTracking/move_to_pose/move_to_pose.py b/PathTracking/move_to_pose/move_to_pose.py index 34736a2e21..faf1264953 100644 --- a/PathTracking/move_to_pose/move_to_pose.py +++ b/PathTracking/move_to_pose/move_to_pose.py @@ -76,7 +76,7 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # [-pi, pi] to prevent unstable behavior e.g. difference going # from 0 rad to 2*pi rad with slight turn - # Ref: The velocity v always has a constant sign which depends on the initial value of α. + # The velocity v always has a constant sign which depends on the initial value of α. rho = np.hypot(x_diff, y_diff) v = self.Kp_rho * rho diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_controller/stanley_controller.py index bc98175f17..01c2ec0229 100644 --- a/PathTracking/stanley_controller/stanley_controller.py +++ b/PathTracking/stanley_controller/stanley_controller.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [Stanley: The robot that won the DARPA grand challenge](http://isl.ecst.csuchico.edu/DOCS/darpa2005/DARPA%202005%20Stanley.pdf) - [Autonomous Automobile Path Tracking](https://www.ri.cmu.edu/pub_files/2009/2/Automatic_Steering_Methods_for_Autonomous_Automobile_Path_Tracking.pdf) diff --git a/README.md b/README.md index 6d04c90bc8..05fd0262df 100644 --- a/README.md +++ b/README.md @@ -168,7 +168,7 @@ All animation gifs are stored here: [AtsushiSakai/PythonRoboticsGifs: Animation EKF pic -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization.html) @@ -186,7 +186,7 @@ It is assumed that the robot can measure a distance from landmarks (RFID). These measurements are used for PF localization. -Ref: +Reference - [PROBABILISTIC ROBOTICS](http://www.probabilistic-robotics.org/) @@ -207,7 +207,7 @@ The filter integrates speed input and range observations from RFID for localizat Initial position is not needed. -Ref: +Reference - [PROBABILISTIC ROBOTICS](http://www.probabilistic-robotics.org/) @@ -256,7 +256,7 @@ It can calculate a rotation matrix, and a translation vector between points and ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/iterative_closest_point/animation.gif) -Ref: +Reference - [Introduction to Mobile Robotics: Iterative Closest Point Algorithm](https://cs.gmu.edu/~kosecka/cs685/cs685-icp.pdf) @@ -275,7 +275,7 @@ Black points are landmarks, blue crosses are estimated landmark positions by Fas ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/FastSLAM1/animation.gif) -Ref: +Reference - [PROBABILISTIC ROBOTICS](http://www.probabilistic-robotics.org/) @@ -321,7 +321,7 @@ This is a 2D grid based the shortest path planning with D star algorithm. The animation shows a robot finding its path avoiding an obstacle using the D* search algorithm. -Ref: +Reference - [D* Algorithm Wikipedia](https://en.wikipedia.org/wiki/D*) @@ -346,7 +346,7 @@ This is a 2D grid based path planning with Potential Field algorithm. In the animation, the blue heat map shows potential value on each grid. -Ref: +Reference - [Robotic Motion Planning:Potential Functions](https://www.cs.cmu.edu/~motionplanning/lecture/Chap4-Potential-Field_howie.pdf) @@ -362,7 +362,7 @@ This script is a path planning code with state lattice planning. This code uses the model predictive trajectory generator to solve boundary problem. -Ref: +Reference - [Optimal rough terrain trajectory generation for wheeled mobile robots](https://journals.sagepub.com/doi/pdf/10.1177/0278364906075328) @@ -390,7 +390,7 @@ Cyan crosses means searched points with Dijkstra method, The red line is the final path of PRM. -Ref: +Reference - [Probabilistic roadmap \- Wikipedia](https://en.wikipedia.org/wiki/Probabilistic_roadmap) @@ -406,7 +406,7 @@ This is a path planning code with RRT\* Black circles are obstacles, green line is a searched tree, red crosses are start and goal positions. -Ref: +Reference - [Incremental Sampling-based Algorithms for Optimal Motion Planning](https://arxiv.org/abs/1005.0416) @@ -426,7 +426,7 @@ A double integrator motion model is used for LQR local planner. ![LQR_RRT](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRRRTStar/animation.gif) -Ref: +Reference - [LQR\-RRT\*: Optimal Sampling\-Based Motion Planning with Automatically Derived Extension Heuristics](https://lis.csail.mit.edu/pubs/perez-icra12.pdf) @@ -441,7 +441,7 @@ Motion planning with quintic polynomials. It can calculate a 2D path, velocity, and acceleration profile based on quintic polynomials. -Ref: +Reference - [Local Path Planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) @@ -451,7 +451,7 @@ A sample code with Reeds Shepp path planning. ![RSPlanning](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ReedsSheppPath/animation.gif?raw=true) -Ref: +Reference - [15.3.2 Reeds\-Shepp Curves](http://planning.cs.uiuc.edu/node822.html) @@ -477,7 +477,7 @@ The cyan line is the target course and black crosses are obstacles. The red line is the predicted path. -Ref: +Reference - [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame](https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) @@ -492,7 +492,7 @@ This is a simulation of moving to a pose control ![2](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/move_to_pose/animation.gif) -Ref: +Reference - [P. I. Corke, "Robotics, Vision and Control" \| SpringerLink p102](https://link.springer.com/book/10.1007/978-3-642-20144-8) @@ -503,7 +503,7 @@ Path tracking simulation with Stanley steering control and PID speed control. ![2](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/stanley_controller/animation.gif) -Ref: +Reference - [Stanley: The robot that won the DARPA grand challenge](http://robots.stanford.edu/papers/thrun.stanley05.pdf) @@ -517,7 +517,7 @@ Path tracking simulation with rear wheel feedback steering control and PID speed ![PythonRobotics/figure_1.png at master · AtsushiSakai/PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/rear_wheel_feedback/animation.gif) -Ref: +Reference - [A Survey of Motion Planning and Control Techniques for Self-driving Urban Vehicles](https://arxiv.org/abs/1604.07446) @@ -528,7 +528,7 @@ Path tracking simulation with LQR speed and steering control. ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_speed_steer_control/animation.gif) -Ref: +Reference - [Towards fully autonomous driving: Systems and algorithms \- IEEE Conference Publication](https://ieeexplore.ieee.org/document/5940562/) @@ -539,7 +539,7 @@ Path tracking simulation with iterative linear model predictive speed and steeri MPC pic -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control.html) @@ -551,7 +551,7 @@ A motion planning and path tracking simulation with NMPC of C-GMRES ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/cgmres_nmpc/animation.gif) -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/path_tracking/cgmres_nmpc/cgmres_nmpc.html) @@ -591,7 +591,7 @@ This is a 3d trajectory generation simulation for a rocket powered landing. ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/AerialNavigation/rocket_powered_landing/animation.gif) -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/aerial_navigation/rocket_powered_landing/rocket_powered_landing.html) diff --git a/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst index 9ae6fc5bcb..b7ff84e6f6 100644 --- a/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst +++ b/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst @@ -331,7 +331,7 @@ are vectors and matrices, but the concepts are exactly the same: - Use the process model to predict the next state (the prior) - Form an estimate part way between the measurement and the prior -References: +Reference ~~~~~~~~~~~ 1. Roger Labbe’s diff --git a/docs/modules/12_appendix/Kalmanfilter_basics_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_main.rst index 6548377e07..a1d99d47ef 100644 --- a/docs/modules/12_appendix/Kalmanfilter_basics_main.rst +++ b/docs/modules/12_appendix/Kalmanfilter_basics_main.rst @@ -552,7 +552,7 @@ a given (X,Y) value. .. image:: Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png -References: +Reference ~~~~~~~~~~~ 1. Roger Labbe’s diff --git a/docs/modules/12_appendix/steering_motion_model_main.rst b/docs/modules/12_appendix/steering_motion_model_main.rst index 6e444b7909..c697123fa2 100644 --- a/docs/modules/12_appendix/steering_motion_model_main.rst +++ b/docs/modules/12_appendix/steering_motion_model_main.rst @@ -91,7 +91,7 @@ the target minimum velocity :math:`v_{min}` can be calculated as follows: :math:`v_{min} = \frac{d_{t+1}+d_{t}}{\Delta t} = \frac{d_{t+1}+d_{t}}{(\kappa_{t+1}-\kappa_{t})}\frac{tan\dot{\delta}_{max}}{WB}` -References: +Reference ~~~~~~~~~~~ - `Vehicle Dynamics and Control `_ diff --git a/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst b/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst index 2543d1186a..214e645d10 100644 --- a/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst +++ b/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst @@ -5,3 +5,8 @@ Ensamble Kalman Filter Localization This is a sensor fusion localization with Ensamble Kalman Filter(EnKF). +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Localization.ensemble_kalman_filter.ensemble_kalman_filter.enkf_localization + diff --git a/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst index da214b6de5..adb41e5e40 100644 --- a/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst +++ b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst @@ -23,28 +23,40 @@ is estimated trajectory with EKF. The red ellipse is estimated covariance ellipse with EKF. -Code: `PythonRobotics/extended_kalman_filter.py at master · -AtsushiSakai/PythonRobotics `__ +Code Link +~~~~~~~~~~~~~ -Kalman Filter with Speed Scale Factor Correction -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. autofunction:: Localization.extended_kalman_filter.extended_kalman_filter.ekf_estimation +Extended Kalman Filter algorithm +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. image:: ekf_with_velocity_correction_1_0.png - :width: 600px +Localization process using Extended Kalman Filter:EKF is -This is a Extended kalman filter (EKF) localization with velocity correction. +=== Predict === -This is for correcting the vehicle speed measured with scale factor errors due to factors such as wheel wear. +:math:`x_{Pred} = Fx_t+Bu_t` -Code: `PythonRobotics/extended_kalman_ekf_with_velocity_correctionfilter.py -AtsushiSakai/PythonRobotics `__ +:math:`P_{Pred} = J_f P_t J_f^T + Q` -Filter design -~~~~~~~~~~~~~ +=== Update === -Position Estimation Kalman Filter -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +:math:`z_{Pred} = Hx_{Pred}` + +:math:`y = z - z_{Pred}` + +:math:`S = J_g P_{Pred}.J_g^T + R` + +:math:`K = P_{Pred}.J_g^T S^{-1}` + +:math:`x_{t+1} = x_{Pred} + Ky` + +:math:`P_{t+1} = ( I - K J_g) P_{Pred}` + + + +Filter design +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In this simulation, the robot has a state vector includes 4 states at time :math:`t`. @@ -82,27 +94,9 @@ In the code, “observation” function generates the input and observation vector with noise `code `__ -Kalman Filter with Speed Scale Factor Correction -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -In this simulation, the robot has a state vector includes 5 states at -time :math:`t`. - -.. math:: \textbf{x}_t=[x_t, y_t, \phi_t, v_t, s_t] - -x, y are a 2D x-y position, :math:`\phi` is orientation, v is -velocity, and s is a scale factor of velocity. - -In the code, “xEst” means the state vector. -`code `__ - -The rest is the same as the Position Estimation Kalman Filter. Motion Model -~~~~~~~~~~~~ - -Position Estimation Kalman Filter -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +~~~~~~~~~~~~~~~~~ The robot model is @@ -137,9 +131,61 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & -v \sin(\phi) \Delta t & \cos(\phi) \Delta t\\ 0 & 1 & v \cos(\phi) \Delta t & \sin(\phi) \Delta t\\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \end{equation*}` +Observation Model +~~~~~~~~~~~~~~~~~ + +The robot can get x-y position information from GPS. + +So GPS Observation model is + +.. math:: \textbf{z}_{t} = g(\textbf{x}_t) = H \textbf{x}_t + +where + +:math:`\begin{equation*} H = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end{bmatrix} \end{equation*}` + +The observation function states that + +:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \end{bmatrix} = g(\textbf{x}) = \begin{bmatrix} x \\ y \end{bmatrix} \end{equation*}` + +Its Jacobian matrix is + +:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partial v}\\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ \end{bmatrix} \end{equation*}` + Kalman Filter with Speed Scale Factor Correction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +This is a Extended kalman filter (EKF) localization with velocity correction. + +This is for correcting the vehicle speed measured with scale factor errors due to factors such as wheel wear. + + +In this simulation, the robot has a state vector includes 5 states at +time :math:`t`. + +.. math:: \textbf{x}_t=[x_t, y_t, \phi_t, v_t, s_t] + +x, y are a 2D x-y position, :math:`\phi` is orientation, v is +velocity, and s is a scale factor of velocity. + +In the code, “xEst” means the state vector. +`code `__ + +The rest is the same as the Position Estimation Kalman Filter. + +.. image:: ekf_with_velocity_correction_1_0.png + :width: 600px + +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.extended_kalman_filter.ekf_with_velocity_correction.ekf_estimation + + +Motion Model +~~~~~~~~~~~~ The robot model is @@ -178,33 +224,7 @@ Its Jacobian matrix is Observation Model ~~~~~~~~~~~~~~~~~ -Position Estimation Kalman Filter -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The robot can get x-y position infomation from GPS. - -So GPS Observation model is - -.. math:: \textbf{z}_{t} = g(\textbf{x}_t) = H \textbf{x}_t - -where - -:math:`\begin{equation*} H = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end{bmatrix} \end{equation*}` - -The observation function states that - -:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \end{bmatrix} = g(\textbf{x}) = \begin{bmatrix} x \\ y \end{bmatrix} \end{equation*}` - -Its Jacobian matrix is - -:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partial v}\\ \end{bmatrix} \end{equation*}` - -:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ \end{bmatrix} \end{equation*}` - -Kalman Filter with Speed Scale Factor Correction -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The robot can get x-y position infomation from GPS. +The robot can get x-y position information from GPS. So GPS Observation model is @@ -225,32 +245,8 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 & 0\\ \end{bmatrix} \end{equation*}` -Extended Kalman Filter -~~~~~~~~~~~~~~~~~~~~~~ - -Localization process using Extended Kalman Filter:EKF is - -=== Predict === - -:math:`x_{Pred} = Fx_t+Bu_t` - -:math:`P_{Pred} = J_f P_t J_f^T + Q` - -=== Update === - -:math:`z_{Pred} = Hx_{Pred}` - -:math:`y = z - z_{Pred}` - -:math:`S = J_g P_{Pred}.J_g^T + R` - -:math:`K = P_{Pred}.J_g^T S^{-1}` - -:math:`x_{t+1} = x_{Pred} + Ky` - -:math:`P_{t+1} = ( I - K J_g) P_{Pred}` -Ref: -~~~~ +Reference +^^^^^^^^^^^ - `PROBABILISTIC-ROBOTICS.ORG `__ diff --git a/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst b/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst index fafd578333..3a175b1316 100644 --- a/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst +++ b/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst @@ -16,6 +16,11 @@ The filter uses speed input and range observations from RFID for localization. Initial position information is not needed. +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.histogram_filter.histogram_filter.histogram_filter_localization + Filtering algorithm ~~~~~~~~~~~~~~~~~~~~ @@ -107,7 +112,7 @@ There are two ways to calculate the final positions: -References: +Reference ~~~~~~~~~~~ - `_PROBABILISTIC ROBOTICS: `_ diff --git a/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst b/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst index 20a9eb58fc..d648d8e080 100644 --- a/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst +++ b/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst @@ -15,6 +15,12 @@ It is assumed that the robot can measure a distance from landmarks This measurements are used for PF localization. +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.particle_filter.particle_filter.pf_localization + + How to calculate covariance matrix from particles ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -30,7 +36,7 @@ The covariance matrix :math:`\Xi` from particle information is calculated by the - :math:`\mu_j` is the :math:`j` th mean state of particles. -References: +Reference ~~~~~~~~~~~ - `_PROBABILISTIC ROBOTICS: `_ diff --git a/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst b/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst index bb6b5b664b..a7a5aab61b 100644 --- a/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst +++ b/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst @@ -7,7 +7,13 @@ This is a sensor fusion localization with Unscented Kalman Filter(UKF). The lines and points are same meaning of the EKF simulation. -References: +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.unscented_kalman_filter.unscented_kalman_filter.ukf_estimation + + +Reference ~~~~~~~~~~~ - `Discriminatively Trained Unscented Kalman Filter for Mobile Robot Localization `_ diff --git a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst index b27971225e..a1486ffe1e 100644 --- a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst +++ b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst @@ -578,7 +578,7 @@ reckoning and control functions are passed along here as well. .. image:: ekf_slam_1_0.png -References: +Reference ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - `PROBABILISTIC ROBOTICS `_ diff --git a/docs/modules/4_slam/graph_slam/graph_slam_main.rst b/docs/modules/4_slam/graph_slam/graph_slam_main.rst index 987eed385c..a2ef513527 100644 --- a/docs/modules/4_slam/graph_slam/graph_slam_main.rst +++ b/docs/modules/4_slam/graph_slam/graph_slam_main.rst @@ -17,7 +17,7 @@ The black stars are landmarks for graph edge generation. .. include:: graphSLAM_formulation.rst .. include:: graphSLAM_SE2_example.rst -References: +Reference ~~~~~~~~~~~ - `A Tutorial on Graph-Based SLAM `_ diff --git a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst index d306a85352..9d9b3de709 100644 --- a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst +++ b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst @@ -13,7 +13,7 @@ You can get different Beizer course: .. image:: Figure_2.png -Ref: +Reference - `Continuous Curvature Path Generation Based on Bezier Curves for Autonomous diff --git a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst index ffc3cc6451..82e0a71044 100644 --- a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst +++ b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst @@ -7,7 +7,7 @@ Eta^3 Spline path planning This is a path planning with Eta^3 spline. -Ref: +Reference - `\\eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots `__ diff --git a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst index 38efaf2b53..371d536e3f 100644 --- a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst +++ b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst @@ -35,7 +35,7 @@ Low Speed and Merging and Stopping Scenario This scenario illustrates the trajectory planning at low speeds with merging and stopping behaviors. -Ref: +Reference - `Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet diff --git a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst index 1644ed00cc..bf82c9f391 100644 --- a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst +++ b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst @@ -63,7 +63,7 @@ This is a 2D grid based shortest path planning with D star algorithm. The animation shows a robot finding its path avoiding an obstacle using the D* search algorithm. -Ref: +Reference - `D* search Wikipedia `__ @@ -74,7 +74,7 @@ This is a 2D grid based path planning and replanning with D star lite algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DStarLite/animation.gif -Ref: +Reference - `Improved Fast Replanning for Robot Navigation in Unknown Terrain `_ @@ -88,7 +88,7 @@ This is a 2D grid based path planning with Potential Field algorithm. In the animation, the blue heat map shows potential value on each grid. -Ref: +Reference - `Robotic Motion Planning:Potential Functions `__ diff --git a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst index 463363ddcf..1c5df1c9cc 100644 --- a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst +++ b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst @@ -16,7 +16,7 @@ Lookup table generation sample .. image:: lookup_table.png -Ref: +Reference - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst index 0628719176..f816c5c1b9 100644 --- a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst +++ b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst @@ -13,7 +13,7 @@ Cyan crosses means searched points with Dijkstra method, The red line is the final path of PRM. -Ref: +Reference - `Probabilistic roadmap - Wikipedia `__ diff --git a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst index 0412b3c9b3..66c3001c05 100644 --- a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst +++ b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst @@ -97,7 +97,7 @@ Each velocity and acceleration boundary condition can be calculated with each or :math:`v_{xe}=v_ecos(\theta_e), v_{ye}=v_esin(\theta_e)` -References: +Reference ~~~~~~~~~~~ - `Local Path Planning And Motion Control For Agv In diff --git a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst index ff377eb91b..a4a5d28e01 100644 --- a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst +++ b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst @@ -380,7 +380,7 @@ Hence, we have: - :math:`v = (t - φ)` -Ref: +Reference - `15.3.2 Reeds-Shepp Curves `__ diff --git a/docs/modules/5_path_planning/rrt/rrt_main.rst b/docs/modules/5_path_planning/rrt/rrt_main.rst index e5f351a7ba..da3a4957a5 100644 --- a/docs/modules/5_path_planning/rrt/rrt_main.rst +++ b/docs/modules/5_path_planning/rrt/rrt_main.rst @@ -53,7 +53,7 @@ This is a path planning code with Informed RRT*. The cyan ellipse is the heuristic sampling domain of Informed RRT*. -Ref: +Reference - `Informed RRT\*: Optimal Sampling-based Path Planning Focused via Direct Sampling of an Admissible Ellipsoidal @@ -68,7 +68,7 @@ Batch Informed RRT\* This is a path planning code with Batch Informed RRT*. -Ref: +Reference - `Batch Informed Trees (BIT*): Sampling-based Optimal Planning via the Heuristically Guided Search of Implicit Random Geometric @@ -87,7 +87,7 @@ In this code, pure-pursuit algorithm is used for steering control, PID is used for speed control. -Ref: +Reference - `Motion Planning in Complex Environments using Closed-loop Prediction `__ @@ -109,7 +109,7 @@ A double integrator motion model is used for LQR local planner. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRRRTStar/animation.gif -Ref: +Reference - `LQR-RRT\*: Optimal Sampling-Based Motion Planning with Automatically Derived Extension diff --git a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst index d5e7ed17d1..bf89ac11ae 100644 --- a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst +++ b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst @@ -22,7 +22,7 @@ Lane sampling .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/LaneSampling.gif -Ref: +Reference - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst index 92e729ab29..65e0e53465 100644 --- a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst +++ b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst @@ -11,7 +11,7 @@ Cyan crosses mean searched points with Dijkstra method, The red line is the final path of Vornoi Road-Map. -Ref: +Reference - `Robotic Motion Planning `__ diff --git a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index ded187e972..568ef9a0df 100644 --- a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -134,7 +134,7 @@ Simulation results -References: +Reference ~~~~~~~~~~~ - `Towards fully autonomous driving: Systems and algorithms `__ diff --git a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst index baca7a33fc..831423f364 100644 --- a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -113,7 +113,7 @@ The optimal control input `u` can be calculated as: where `K` is the feedback gain matrix obtained by solving the Riccati equation. -References: +Reference ~~~~~~~~~~~ - `ApolloAuto/apollo: An open autonomous driving platform `_ diff --git a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst index 5c7bcef85f..d7354cf8fb 100644 --- a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst +++ b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst @@ -9,7 +9,7 @@ speed control. The red line is a target course, the green cross means the target point for pure pursuit control, the blue line is the tracking. -References: +Reference ~~~~~~~~~~~ - `A Survey of Motion Planning and Control Techniques for Self-driving diff --git a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst index 70875fdc6c..d18cd6fbf7 100644 --- a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst +++ b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst @@ -6,7 +6,7 @@ PID speed control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/rear_wheel_feedback/animation.gif -References: +Reference ~~~~~~~~~~~ - `A Survey of Motion Planning and Control Techniques for Self-driving Urban Vehicles `__ diff --git a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst index fe325b0102..69089ac33b 100644 --- a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst +++ b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst @@ -6,7 +6,7 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/stanley_controller/animation.gif -References: +Reference ~~~~~~~~~~~ - `Stanley: The robot that won the DARPA grand diff --git a/users_comments.md b/users_comments.md index a2f798eac4..1674f21377 100644 --- a/users_comments.md +++ b/users_comments.md @@ -10,7 +10,7 @@ This is an electric wheelchair control demo by [Katsushun89](https://github.com/ ![1](https://github.com/AtsushiSakai/PythonRoboticsGifs/blob/master/Users/WHILL_Model_CR_with_move_to_a_pose/WHLL_Model_CR_with_move_to_a_pose.gif) -Ref: +Reference: - [toioと同じように動くWHILL Model CR (in Japanese)](https://qiita.com/KatsuShun89/items/68fde7544ecfe36096d2) From 5392fcff4d555421b4417827dc67c611ad14cc06 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 3 May 2025 09:25:12 +0900 Subject: [PATCH 363/414] Refactor module links and improve code documentation. (#1211) * Refactor module links and improve code documentation. Updated documentation to rename "API" sections to "Code Link" for clarity and consistency. Enhanced docstrings for `circle_fitting` and `kmeans_clustering` functions, improving parameter descriptions and adding return value details. Fixed typos in function and file names in the ray casting grid map module. * Fix import typo in ray casting grid map test module. Corrected the import statement in the test file by updating the module's name to `ray_casting_grid_map` for consistency with the source file. This ensures proper functionality of the test suite. --- Mapping/circle_fitting/circle_fitting.py | 33 +++++++++++++++---- .../kmeans_clustering/kmeans_clustering.py | 27 ++++++++++++++- .../ray_casting_grid_map.py} | 4 +-- .../circle_fitting/circle_fitting_main.rst | 4 +++ .../distance_map/distance_map_main.rst | 4 +-- .../gaussian_grid_map_main.rst | 6 ++++ .../k_means_object_clustering_main.rst | 6 ++++ .../lidar_to_grid_map_tutorial_main.rst | 6 ++++ .../normal_vector_estimation_main.rst | 8 ++--- .../point_cloud_sampling_main.rst | 8 ++--- .../ray_casting_grid_map_main.rst | 7 +++- .../rectangle_fitting_main.rst | 4 +-- ...id_map.py => test_ray_casting_grid_map.py} | 2 +- 13 files changed, 96 insertions(+), 23 deletions(-) rename Mapping/{raycasting_grid_map/raycasting_grid_map.py => ray_casting_grid_map/ray_casting_grid_map.py} (96%) rename tests/{test_raycasting_grid_map.py => test_ray_casting_grid_map.py} (71%) diff --git a/Mapping/circle_fitting/circle_fitting.py b/Mapping/circle_fitting/circle_fitting.py index 2eba550127..b5714b507c 100644 --- a/Mapping/circle_fitting/circle_fitting.py +++ b/Mapping/circle_fitting/circle_fitting.py @@ -16,12 +16,33 @@ def circle_fitting(x, y): """ - Circle Fitting with least squared - input: point x-y positions - output cxe x center position - cye y center position - re radius of circle - error: prediction error + Fits a circle to a given set of points using a least-squares approach. + + This function calculates the center (x, y) and radius of a circle that best fits + the given set of points in a two-dimensional plane. It minimizes the squared + errors between the circle and the provided points and returns the calculated + center coordinates, radius, and the fitting error. + + Raises + ------ + ValueError + If the input lists x and y do not contain the same number of elements. + + Parameters + ---------- + x : list[float] + The x-coordinates of the points. + y : list[float] + The y-coordinates of the points. + + Returns + ------- + tuple[float, float, float, float] + A tuple containing: + - The x-coordinate of the center of the fitted circle (float). + - The y-coordinate of the center of the fitted circle (float). + - The radius of the fitted circle (float). + - The fitting error as a deviation metric (float). """ sumx = sum(x) diff --git a/Mapping/kmeans_clustering/kmeans_clustering.py b/Mapping/kmeans_clustering/kmeans_clustering.py index e18960e990..cee01e5ad5 100644 --- a/Mapping/kmeans_clustering/kmeans_clustering.py +++ b/Mapping/kmeans_clustering/kmeans_clustering.py @@ -17,12 +17,37 @@ def kmeans_clustering(rx, ry, nc): + """ + Performs k-means clustering on the given dataset, iteratively adjusting cluster centroids + until convergence within a defined threshold or reaching the maximum number of + iterations. + + The implementation initializes clusters, calculates initial centroids, and refines the + clusters through iterative updates to optimize the cost function based on minimum + distance between datapoints and centroids. + + Arguments: + rx: List[float] + The x-coordinates of the dataset points to be clustered. + ry: List[float] + The y-coordinates of the dataset points to be clustered. + nc: int + The number of clusters to group the data into. + + Returns: + Clusters + An instance containing the final cluster assignments and centroids after + convergence. + + Raises: + None + + """ clusters = Clusters(rx, ry, nc) clusters.calc_centroid() pre_cost = float("inf") for loop in range(MAX_LOOP): - print("loop:", loop) cost = clusters.update_clusters() clusters.calc_centroid() diff --git a/Mapping/raycasting_grid_map/raycasting_grid_map.py b/Mapping/ray_casting_grid_map/ray_casting_grid_map.py similarity index 96% rename from Mapping/raycasting_grid_map/raycasting_grid_map.py rename to Mapping/ray_casting_grid_map/ray_casting_grid_map.py index 8ce37b925b..c7e73f0630 100644 --- a/Mapping/raycasting_grid_map/raycasting_grid_map.py +++ b/Mapping/ray_casting_grid_map/ray_casting_grid_map.py @@ -48,7 +48,7 @@ def atan_zero_to_twopi(y, x): return angle -def precasting(minx, miny, xw, yw, xyreso, yawreso): +def pre_casting(minx, miny, xw, yw, xyreso, yawreso): precast = [[] for i in range(int(round((math.pi * 2.0) / yawreso)) + 1)] @@ -81,7 +81,7 @@ def generate_ray_casting_grid_map(ox, oy, xyreso, yawreso): pmap = [[0.0 for i in range(yw)] for i in range(xw)] - precast = precasting(minx, miny, xw, yw, xyreso, yawreso) + precast = pre_casting(minx, miny, xw, yw, xyreso, yawreso) for (x, y) in zip(ox, oy): diff --git a/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst b/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst index 1892d1f8f7..e243529a9c 100644 --- a/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst +++ b/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst @@ -11,3 +11,7 @@ The red crosses are observations from a ranging sensor. The red circle is the estimated object shape using circle fitting. +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.circle_fitting.circle_fitting.circle_fitting diff --git a/docs/modules/3_mapping/distance_map/distance_map_main.rst b/docs/modules/3_mapping/distance_map/distance_map_main.rst index 0ef9e3022f..ec60e752c9 100644 --- a/docs/modules/3_mapping/distance_map/distance_map_main.rst +++ b/docs/modules/3_mapping/distance_map/distance_map_main.rst @@ -14,8 +14,8 @@ The algorithm is demonstrated on a simple 2D grid with obstacles: .. image:: distance_map.png -API -~~~ +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. autofunction:: Mapping.DistanceMap.distance_map.compute_sdf diff --git a/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst b/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst index b0f112a871..50033d2a20 100644 --- a/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst +++ b/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst @@ -6,3 +6,9 @@ Gaussian grid map This is a 2D Gaussian grid mapping example. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/gaussian_grid_map/animation.gif + +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.gaussian_grid_map.gaussian_grid_map.generate_gaussian_grid_map + diff --git a/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst b/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst index e098ca5409..0ece604009 100644 --- a/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst +++ b/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst @@ -4,3 +4,9 @@ k-means object clustering This is a 2D object clustering with k-means algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/kmeans_clustering/animation.gif + +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.kmeans_clustering.kmeans_clustering.kmeans_clustering + diff --git a/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst index 1f62179efd..29f5878e48 100644 --- a/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst +++ b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst @@ -196,3 +196,9 @@ Let’s use this flood fill on real data: .. image:: lidar_to_grid_map_tutorial_14_1.png +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.lidar_to_grid_map.lidar_to_grid_map.main + + diff --git a/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst index a4d1bf0df2..68a19e1534 100644 --- a/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst +++ b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst @@ -25,8 +25,8 @@ This is an example of normal vector calculation: .. figure:: normal_vector_calc.png -API -===== +Code Link +========== .. autofunction:: Mapping.normal_vector_estimation.normal_vector_estimation.calc_normal_vector @@ -67,8 +67,8 @@ This is an example of RANSAC based normal vector estimation: .. figure:: ransac_normal_vector_estimation.png -API -===== +Code Link +========== .. autofunction:: Mapping.normal_vector_estimation.normal_vector_estimation.ransac_normal_vector_estimation diff --git a/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst b/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst index cbb5652f56..8cb08d4b78 100644 --- a/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst +++ b/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst @@ -27,8 +27,8 @@ This method determines which each point is in a grid, and replaces the point clouds that are in the same Voxel with their average to reduce the number of points. -API -===== +Code Link +========== .. autofunction:: Mapping.point_cloud_sampling.point_cloud_sampling.voxel_point_sampling @@ -61,8 +61,8 @@ Although this method does not have good performance comparing the Farthest distance sample where each point is distributed farther from each other, this is suitable for real-time processing because of its fast computation time. -API -===== +Code Link +========== .. autofunction:: Mapping.point_cloud_sampling.point_cloud_sampling.poisson_disk_sampling diff --git a/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst b/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst index cc5a1a1c5b..bee2f64193 100644 --- a/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst +++ b/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst @@ -3,4 +3,9 @@ Ray casting grid map This is a 2D ray casting grid mapping example. -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/raycasting_grid_map/animation.gif \ No newline at end of file +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/raycasting_grid_map/animation.gif + +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.ray_casting_grid_map.ray_casting_grid_map.generate_ray_casting_grid_map diff --git a/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst b/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst index b6ced1dc1d..06d85efe61 100644 --- a/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst +++ b/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst @@ -57,8 +57,8 @@ This evaluation function uses the squreed distances between the edges of the rec Calculating the squared error is the same as calculating the variance. The smaller this variance, the more it signifies that the points fit within the rectangle. -API -~~~~~~ +Code Link +~~~~~~~~~~~ .. autoclass:: Mapping.rectangle_fitting.rectangle_fitting.LShapeFitting :members: diff --git a/tests/test_raycasting_grid_map.py b/tests/test_ray_casting_grid_map.py similarity index 71% rename from tests/test_raycasting_grid_map.py rename to tests/test_ray_casting_grid_map.py index f08ae9277e..2d192c9310 100644 --- a/tests/test_raycasting_grid_map.py +++ b/tests/test_ray_casting_grid_map.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from Mapping.raycasting_grid_map import raycasting_grid_map as m +from Mapping.ray_casting_grid_map import ray_casting_grid_map as m def test1(): From e1cdb24ecfd68ff4eaf51626e5a3f4854da588a4 Mon Sep 17 00:00:00 2001 From: Yuri Harada <55676955+NightzDev@users.noreply.github.com> Date: Fri, 2 May 2025 21:51:20 -0300 Subject: [PATCH 364/414] docs: rewrite internal sensors section with detailed descriptions and references (#1197) * docs: rewrite and enhance internal sensors documentation * Update docs/modules/12_appendix/internal_sensors_main.rst --------- Co-authored-by: Atsushi Sakai --- .../12_appendix/internal_sensors_main.rst | 41 +++++++++++++++---- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/docs/modules/12_appendix/internal_sensors_main.rst b/docs/modules/12_appendix/internal_sensors_main.rst index 18f209098e..fa2594a2bf 100644 --- a/docs/modules/12_appendix/internal_sensors_main.rst +++ b/docs/modules/12_appendix/internal_sensors_main.rst @@ -3,32 +3,59 @@ Internal Sensors for Robots ============================ -This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. -However, having basic knowledge of hardware in robotics is also important for understanding algorithms. -Therefore, we will provide an overview. +This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. However, having basic knowledge of hardware in robotics is also important for understanding algorithms. Therefore, we will provide an overview. Introduction ------------- +------------- + +In robotic systems, internal sensors play a crucial role in monitoring the robot’s internal state, such as orientation, acceleration, angular velocity, altitude, and temperature. These sensors provide essential feedback that supports control, localization, and safety mechanisms. While external sensors perceive the environment, internal sensors give the robot self-awareness of its own motion and condition. Understanding the principles and characteristics of these sensors is vital to fully utilize their information within algorithms and decision-making systems. This section outlines the main internal sensors used in robotics. Global Navigation Satellite System (GNSS) -------------------------------------------- +----------------------------------------- + +GNSS is a satellite-based navigation system that provides global positioning and time information by analyzing signals from multiple satellites. It is commonly used in outdoor environments for absolute positioning. Although GNSS offers global coverage without infrastructure dependency, its performance is limited indoors or in obstructed areas, and it suffers from low update rates and susceptibility to signal noise. It is widely used in outdoor navigation for drones, vehicles, and delivery robots. Gyroscope ---------- +A gyroscope measures angular velocity around the robot’s axes, enabling orientation and attitude estimation through detection of the Coriolis effect. Gyroscopes are compact, cost-effective, and provide high update rates, but they are prone to drift and require calibration or sensor fusion for long-term accuracy. These sensors are essential in drones, balancing robots, and IMU-based systems for motion tracking. + Accelerometer --------------- +--------------- + +An accelerometer measures linear acceleration along one or more axes, typically by detecting mass displacement due to motion. It is small, affordable, and useful for detecting movement, tilt, or vibration. However, accelerometers are limited by noisy output and cannot independently determine position without integration and fusion. They are commonly applied in wearable robotics, step counters, and vibration sensing. Magnetometer -------------- +A magnetometer measures the direction and intensity of magnetic fields, enabling heading estimation based on Earth’s magnetic field. It is lightweight and useful for orientation, especially in GPS-denied environments, though it is sensitive to interference from electronics and requires calibration. Magnetometers are often used in conjunction with IMUs for navigation and directional awareness. + Inertial Measurement Unit (IMU) -------------------------------- +An IMU integrates a gyroscope, accelerometer, and sometimes a magnetometer to estimate a robot's motion and orientation through sensor fusion techniques such as Kalman filters. IMUs are compact and provide high-frequency data, which is essential for localization and navigation in GPS-denied areas. Nonetheless, they accumulate drift over time and require complex filtering to maintain accuracy. IMUs are found in drones, mobile robots, and motion tracking systems. + Pressure Sensor ------------------ +---------------- + +Pressure sensors detect atmospheric or fluid pressure by measuring the force exerted on a diaphragm. They are effective for estimating altitude and monitoring environmental conditions, especially in drones and underwater robots. Although cost-effective and efficient, their accuracy may degrade due to temperature variation and limitations in low-altitude resolution. Temperature Sensor -------------------- +Temperature sensors monitor environmental or internal component temperatures, using changes in resistance or voltage depending on sensor type (e.g., RTD or thermocouple). They are simple and reliable for safety and thermal regulation, though they may respond slowly and be affected by nearby electronics. Common applications include battery and motor monitoring, safety systems, and ambient sensing. + +References +---------- +- *Introduction to Autonomous Mobile Robots*, Roland Siegwart, Illah Nourbakhsh, Davide Scaramuzza +- *Probabilistic Robotics*, Sebastian Thrun, Wolfram Burgard, Dieter Fox +- Wikipedia articles: + + - `Inertial Measurement Unit (IMU) `_ + - `Accelerometer `_ + - `Gyroscope `_ + - `Magnetometer `_ + - `Pressure sensor `_ + - `Temperature sensor `_ +- `Adafruit Sensor Guides `_ \ No newline at end of file From d2fe5ae8f0e414f394c00570771c07807d167e68 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 4 May 2025 09:50:49 +0900 Subject: [PATCH 365/414] Add code links to SLAM module documentation (#1212) This commit updates SLAM module documentation files to include direct code links for better navigation. It also adjusts imports in `test_iterative_closest_point.py` to reflect updated module structure and adds a safety check for the directory in `runtests.sh`. --- .../icp_matching.py} | 0 docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst | 5 +++++ docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst | 6 ++++++ docs/modules/4_slam/ekf_slam/ekf_slam_main.rst | 6 ++++++ docs/modules/4_slam/graph_slam/graph_slam_main.rst | 6 ++++++ .../iterative_closest_point_matching_main.rst | 8 +++++++- runtests.sh | 1 + tests/test_iterative_closest_point.py | 2 +- 8 files changed, 32 insertions(+), 2 deletions(-) rename SLAM/{iterative_closest_point/iterative_closest_point.py => ICPMatching/icp_matching.py} (100%) diff --git a/SLAM/iterative_closest_point/iterative_closest_point.py b/SLAM/ICPMatching/icp_matching.py similarity index 100% rename from SLAM/iterative_closest_point/iterative_closest_point.py rename to SLAM/ICPMatching/icp_matching.py diff --git a/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst b/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst index a2aa521216..b6bafa0982 100644 --- a/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst +++ b/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst @@ -22,6 +22,11 @@ The red points are particles of FastSLAM. Black points are landmarks, blue crosses are estimated landmark positions by FastSLAM. +Code Link +~~~~~~~~~~~~ + +.. autofunction:: SLAM.FastSLAM1.fast_slam1.fast_slam1 + Introduction ~~~~~~~~~~~~ diff --git a/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst b/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst index 9e79b496a3..59ed3b9f75 100644 --- a/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst +++ b/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst @@ -7,6 +7,12 @@ The animation has the same meanings as one of FastSLAM 1.0. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/FastSLAM2/animation.gif +Code Link +~~~~~~~~~~~ + +.. autofunction:: SLAM.FastSLAM2.fast_slam2.fast_slam2 + + References ~~~~~~~~~~ diff --git a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst index a1486ffe1e..3967a7ae4d 100644 --- a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst +++ b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst @@ -21,6 +21,12 @@ This is a simulation of EKF SLAM. - Blue line: ground truth - Red line: EKF SLAM position estimation +Code Link +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. autofunction:: SLAM.EKFSLAM.ekf_slam.ekf_slam + + Introduction ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/4_slam/graph_slam/graph_slam_main.rst b/docs/modules/4_slam/graph_slam/graph_slam_main.rst index a2ef513527..2ef17e4179 100644 --- a/docs/modules/4_slam/graph_slam/graph_slam_main.rst +++ b/docs/modules/4_slam/graph_slam/graph_slam_main.rst @@ -13,6 +13,12 @@ The black stars are landmarks for graph edge generation. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/GraphBasedSLAM/animation.gif +Code Link +~~~~~~~~~~~~ + +.. autofunction:: SLAM.GraphBasedSLAM.graph_based_slam.graph_based_slam + + .. include:: graphSLAM_doc.rst .. include:: graphSLAM_formulation.rst .. include:: graphSLAM_SE2_example.rst diff --git a/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst b/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst index a30b1fc99b..772fe62889 100644 --- a/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst +++ b/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst @@ -10,7 +10,13 @@ points to points. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/iterative_closest_point/animation.gif +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: SLAM.ICPMatching.icp_matching.icp_matching + + References -~~~~~~~~~~ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - `Introduction to Mobile Robotics: Iterative Closest Point Algorithm `_ diff --git a/runtests.sh b/runtests.sh index 12d1b80453..c4460c8aa7 100755 --- a/runtests.sh +++ b/runtests.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +cd "$(dirname "$0")" || exit 1 echo "Run test suites! " # === pytest based test runner === diff --git a/tests/test_iterative_closest_point.py b/tests/test_iterative_closest_point.py index 3e726b5649..cdfa89cc55 100644 --- a/tests/test_iterative_closest_point.py +++ b/tests/test_iterative_closest_point.py @@ -1,5 +1,5 @@ import conftest -from SLAM.iterative_closest_point import iterative_closest_point as m +from SLAM.ICPMatching import icp_matching as m def test_1(): From a38da41bafaf82bb56d4491d94a0095c1019ac4a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 4 May 2025 20:32:11 +0900 Subject: [PATCH 366/414] Add code links to documentation and fix naming inconsistencies (#1213) Added references to related Python functions in documentation for better navigation and usability. Corrected inconsistencies in module and test names to align with their respective directories and improve clarity. --- .../rear_wheel_feedback_control.py} | 0 .../stanley_control.py} | 0 .../10_inverted_pendulum/inverted_pendulum_main.rst | 12 ++++++++++++ .../behavior_tree/behavior_tree_main.rst | 2 +- .../state_machine/state_machine_main.rst | 4 ++-- .../cgmres_nmpc/cgmres_nmpc_main.rst | 5 +++++ .../lqr_speed_and_steering_control_main.rst | 7 ++++++- .../lqr_steering_control_main.rst | 6 +++++- ...l_predictive_speed_and_steering_control_main.rst | 13 ++++++------- .../move_to_a_pose_main.rst} | 8 +++++++- docs/modules/6_path_tracking/path_tracking_main.rst | 2 +- .../pure_pursuit_tracking_main.rst | 6 ++++++ .../rear_wheel_feedback_control_main.rst | 6 ++++++ .../stanley_control/stanley_control_main.rst | 6 ++++++ .../n_joint_arm_to_point_control_main.rst | 7 +++++++ .../obstacle_avoidance_arm_navigation_main.rst | 7 ++++++- .../7_arm_navigation/planar_two_link_ik_main.rst | 6 ++++++ .../drone_3d_trajectory_following_main.rst | 5 +++++ .../rocket_powered_landing_main.rst | 8 ++++++++ .../bipedal_planner/bipedal_planner_main.rst | 5 +++++ tests/test_rear_wheel_feedback.py | 2 +- tests/test_stanley_controller.py | 2 +- 22 files changed, 102 insertions(+), 17 deletions(-) rename PathTracking/{rear_wheel_feedback/rear_wheel_feedback.py => rear_wheel_feedback_control/rear_wheel_feedback_control.py} (100%) rename PathTracking/{stanley_controller/stanley_controller.py => stanley_control/stanley_control.py} (100%) rename docs/modules/6_path_tracking/{move_to_a_pose_control/move_to_a_pose_control_main.rst => move_to_a_pose/move_to_a_pose_main.rst} (97%) diff --git a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py b/PathTracking/rear_wheel_feedback_control/rear_wheel_feedback_control.py similarity index 100% rename from PathTracking/rear_wheel_feedback/rear_wheel_feedback.py rename to PathTracking/rear_wheel_feedback_control/rear_wheel_feedback_control.py diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_control/stanley_control.py similarity index 100% rename from PathTracking/stanley_controller/stanley_controller.py rename to PathTracking/stanley_control/stanley_control.py diff --git a/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst index 048cbea9ac..58dc0f2e57 100644 --- a/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst +++ b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst @@ -89,6 +89,12 @@ and :math:`P` is the unique positive definite solution to the discrete time .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Control/InvertedPendulumCart/animation_lqr.gif +Code Link +^^^^^^^^^^^ + +.. autofunction:: InvertedPendulum.inverted_pendulum_lqr_control.main + + MPC control ~~~~~~~~~~~~~~~~~~~~~~~~~~~ The MPC controller minimize this cost function defined as: @@ -101,3 +107,9 @@ subject to: - Initial state .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Control/InvertedPendulumCart/animation.gif + +Code Link +^^^^^^^^^^^ + +.. autofunction:: InvertedPendulum.inverted_pendulum_mpc_control.main + diff --git a/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst index ae3e16da81..22849f7c54 100644 --- a/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst +++ b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst @@ -5,7 +5,7 @@ Behavior Tree is a modular, hierarchical decision model that is widely used in r It present some similarities to hierarchical state machines with the key difference that the main building block of a behavior is a task rather than a state. Behavior Tree have been shown to generalize several other control architectures (https://ieeexplore.ieee.org/document/7790863) -Core Concepts +Code Link ~~~~~~~~~~~~~ Control Node diff --git a/docs/modules/13_mission_planning/state_machine/state_machine_main.rst b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst index abaece1b11..3f516d46a9 100644 --- a/docs/modules/13_mission_planning/state_machine/state_machine_main.rst +++ b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst @@ -12,8 +12,8 @@ Core Concepts - **Action**: An operation executed during transition (before entering new state) - **Guard**: A precondition that must be satisfied to allow transition -API -~~~ +Code Link +~~~~~~~~~~~ .. autoclass:: MissionPlanning.StateMachine.state_machine.StateMachine :members: add_transition, process, register_state diff --git a/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst index 23f1218a94..914a4555ff 100644 --- a/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst +++ b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst @@ -17,6 +17,11 @@ Nonlinear Model Predictive Control with C-GMRES .. figure:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/cgmres_nmpc/animation.gif :alt: gif +Code Link +~~~~~~~~~~~~ + +.. autofunction:: PathTracking.cgmres_nmpc.cgmres_nmpc.NMPCControllerCGMRES + Mathematical Formulation ~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index 568ef9a0df..b0ba9e0d45 100644 --- a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -7,7 +7,12 @@ Path tracking simulation with LQR speed and steering control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_speed_steer_control/animation.gif -`[Code Link] `_ + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.lqr_speed_steer_control.lqr_speed_steer_control.lqr_speed_steering_control + Overview ~~~~~~~~ diff --git a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst index 831423f364..fc8f2a33aa 100644 --- a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -8,7 +8,11 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_steer_control/animation.gif -`[Code Link] `_ +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.lqr_steer_control.lqr_steer_control.lqr_steering_control + Overview ~~~~~~~~ diff --git a/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst index de55b545ba..76a6819a46 100644 --- a/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst +++ b/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst @@ -5,13 +5,6 @@ Model predictive speed and steering control .. figure:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/model_predictive_speed_and_steer_control/animation.gif?raw=true :alt: Model predictive speed and steering control - Model predictive speed and steering control - -code: - -`PythonRobotics/model_predictive_speed_and_steer_control.py at master · -AtsushiSakai/PythonRobotics `__ - This is a path tracking simulation using model predictive control (MPC). The MPC controller controls vehicle speed and steering base on @@ -22,6 +15,12 @@ This code uses cvxpy as an optimization modeling tool. - `Welcome to CVXPY 1.0 — CVXPY 1.0.6 documentation `__ +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.model_predictive_speed_and_steer_control.model_predictive_speed_and_steer_control.iterative_linear_mpc_control + + MPC modeling ~~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst b/docs/modules/6_path_tracking/move_to_a_pose/move_to_a_pose_main.rst similarity index 97% rename from docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst rename to docs/modules/6_path_tracking/move_to_a_pose/move_to_a_pose_main.rst index 77ec682a30..19bb0e4c14 100644 --- a/docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst +++ b/docs/modules/6_path_tracking/move_to_a_pose/move_to_a_pose_main.rst @@ -3,7 +3,13 @@ Move to a Pose Control In this section, we present the logic of PathFinderController that drives a car from a start pose (x, y, theta) to a goal pose. A simulation of moving to a pose control is presented below. -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/move_to_pose/animation.gif +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Control/move_to_pose/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.move_to_pose.move_to_pose.move_to_pose + Position Control of non-Holonomic Systems ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index d98e324583..742cc807e6 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -16,4 +16,4 @@ Path tracking is the ability of a robot to follow the reference path generated b lqr_speed_and_steering_control/lqr_speed_and_steering_control model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control cgmres_nmpc/cgmres_nmpc - move_to_a_pose_control/move_to_a_pose_control + move_to_a_pose/move_to_a_pose diff --git a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst index d7354cf8fb..ff6749bbbe 100644 --- a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst +++ b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst @@ -9,6 +9,12 @@ speed control. The red line is a target course, the green cross means the target point for pure pursuit control, the blue line is the tracking. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.pure_pursuit.pure_pursuit.pure_pursuit_steer_control + + Reference ~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst index d18cd6fbf7..56d0db63ad 100644 --- a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst +++ b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst @@ -6,6 +6,12 @@ PID speed control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/rear_wheel_feedback/animation.gif +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.rear_wheel_feedback_control.rear_wheel_feedback_control.rear_wheel_feedback_control + + Reference ~~~~~~~~~~~ - `A Survey of Motion Planning and Control Techniques for Self-driving diff --git a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst index 69089ac33b..3c491804f6 100644 --- a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst +++ b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst @@ -6,6 +6,12 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/stanley_controller/animation.gif +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.stanley_control.stanley_control.stanley_control + + Reference ~~~~~~~~~~~ diff --git a/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst b/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst index cc6279f681..56900acde1 100644 --- a/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst +++ b/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst @@ -11,3 +11,10 @@ plotting area. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/ArmNavigation/n_joint_arm_to_point_control/animation.gif In this simulation N = 10, however, you can change it. + + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: ArmNavigation.n_joint_arm_to_point_control.n_joint_arm_to_point_control.main + diff --git a/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst b/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst index 899a64a5cd..4433ab531b 100644 --- a/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst +++ b/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst @@ -3,4 +3,9 @@ Arm navigation with obstacle avoidance Arm navigation with obstacle avoidance simulation. -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/ArmNavigation/arm_obstacle_navigation/animation.gif \ No newline at end of file +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/ArmNavigation/arm_obstacle_navigation/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: ArmNavigation.arm_obstacle_navigation.arm_obstacle_navigation.main diff --git a/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst b/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst index 2da2b0dc30..5b2712eb48 100644 --- a/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst +++ b/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst @@ -11,6 +11,12 @@ This is a interactive simulation. You can set the goal position of the end effector with left-click on the plotting area. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: ArmNavigation.two_joint_arm_to_point_control.two_joint_arm_to_point_control.main + + Inverse Kinematics for a Planar Two-Link Robotic Arm ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst b/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst index c3bdc33cdc..1805bb3f6d 100644 --- a/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst +++ b/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst @@ -4,3 +4,8 @@ Drone 3d trajectory following This is a 3d trajectory following simulation for a quadrotor. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/AerialNavigation/drone_3d_trajectory_following/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: AerialNavigation.drone_3d_trajectory_following.drone_3d_trajectory_following.quad_sim diff --git a/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst b/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst index 6c90d2b44e..4bf5117500 100644 --- a/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst +++ b/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst @@ -1,6 +1,14 @@ Rocket powered landing ----------------------------- +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/AerialNavigation/rocket_powered_landing/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: AerialNavigation.rocket_powered_landing.rocket_powered_landing.main + + Simulation ~~~~~~~~~~ diff --git a/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst b/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst index 2ee5971e7a..6253715cc1 100644 --- a/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst +++ b/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst @@ -4,3 +4,8 @@ Bipedal Planner Bipedal Walking with modifying designated footsteps .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Bipedal/bipedal_planner/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: Bipedal.bipedal_planner.bipedal_planner.BipedalPlanner diff --git a/tests/test_rear_wheel_feedback.py b/tests/test_rear_wheel_feedback.py index 895eb188b3..eccde52358 100644 --- a/tests/test_rear_wheel_feedback.py +++ b/tests/test_rear_wheel_feedback.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from PathTracking.rear_wheel_feedback import rear_wheel_feedback as m +from PathTracking.rear_wheel_feedback_control import rear_wheel_feedback_control as m def test1(): diff --git a/tests/test_stanley_controller.py b/tests/test_stanley_controller.py index a1d8073764..bd590cb51a 100644 --- a/tests/test_stanley_controller.py +++ b/tests/test_stanley_controller.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from PathTracking.stanley_controller import stanley_controller as m +from PathTracking.stanley_control import stanley_control as m def test1(): From 73e1c0bebccf4f4fc67ae59ada53b783a8533096 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 5 May 2025 17:29:45 +0900 Subject: [PATCH 367/414] Add "Code Link" sections and rename classes for consistency (#1214) This commit adds "Code Link" sections to documentation across various path planning modules, linking to relevant class and function APIs. Additionally, several class renaming changes were made, such as `Dijkstra` to `DijkstraPlanner` and `eta3_trajectory` to `Eta3SplineTrajectory`, to enhance naming consistency. Minor fixes include file restructuring and image renaming for the RRT module. --- ..._rrtstar.py => batch_informed_rrt_star.py} | 0 PathPlanning/Dijkstra/dijkstra.py | 4 +- .../eta3_spline_trajectory.py | 14 ++--- .../bezier_path/bezier_path_main.rst | 9 ++- .../bspline_path/bspline_path_main.rst | 8 +-- .../bugplanner/bugplanner_main.rst | 8 +++ .../catmull_rom_spline_main.rst | 4 +- .../clothoid_path/clothoid_path_main.rst | 5 ++ .../coverage_path/coverage_path_main.rst | 21 +++++++ .../cubic_spline/cubic_spline_main.rst | 8 +-- .../dubins_path/dubins_path_main.rst | 2 +- .../dynamic_window_approach_main.rst | 12 +++- .../elastic_bands/elastic_bands_main.rst | 7 ++- .../eta3_spline/eta3_spline_main.rst | 7 +++ .../frenet_frame_path_main.rst | 6 ++ .../grid_base_search_main.rst | 50 ++++++++++++++++ .../hybridastar/hybridastar_main.rst | 5 ++ .../lqr_path/lqr_path_main.rst | 5 ++ ...l_predictive_trajectory_generator_main.rst | 7 +++ .../prm_planner/prm_planner_main.rst | 7 +++ .../quintic_polynomials_planner_main.rst | 5 ++ .../reeds_shepp_path_main.rst | 7 +++ .../closed_loop_rrt_star_car/Figure_1.png | Bin .../closed_loop_rrt_star_car/Figure_3.png | Bin .../closed_loop_rrt_star_car/Figure_4.png | Bin .../closed_loop_rrt_star_car/Figure_5.png | Bin docs/modules/5_path_planning/rrt/rrt_main.rst | 54 ++++++++++++++++++ docs/modules/5_path_planning/rrt/rrt_star.rst | 6 ++ .../state_lattice_planner_main.rst | 17 ++++++ .../time_based_grid_search_main.rst | 9 +++ .../visibility_road_map_planner_main.rst | 7 ++- .../vrm_planner/vrm_planner_main.rst | 6 ++ tests/test_batch_informed_rrt_star.py | 2 +- 33 files changed, 277 insertions(+), 25 deletions(-) rename PathPlanning/BatchInformedRRTStar/{batch_informed_rrtstar.py => batch_informed_rrt_star.py} (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_1.png (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_3.png (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_4.png (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_5.png (100%) diff --git a/PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py b/PathPlanning/BatchInformedRRTStar/batch_informed_rrt_star.py similarity index 100% rename from PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py rename to PathPlanning/BatchInformedRRTStar/batch_informed_rrt_star.py diff --git a/PathPlanning/Dijkstra/dijkstra.py b/PathPlanning/Dijkstra/dijkstra.py index 8a585e4b18..f5a4703910 100644 --- a/PathPlanning/Dijkstra/dijkstra.py +++ b/PathPlanning/Dijkstra/dijkstra.py @@ -12,7 +12,7 @@ show_animation = True -class Dijkstra: +class DijkstraPlanner: def __init__(self, ox, oy, resolution, robot_radius): """ @@ -246,7 +246,7 @@ def main(): plt.grid(True) plt.axis("equal") - dijkstra = Dijkstra(ox, oy, grid_size, robot_radius) + dijkstra = DijkstraPlanner(ox, oy, grid_size, robot_radius) rx, ry = dijkstra.planning(sx, sy, gx, gy) if show_animation: # pragma: no cover diff --git a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py index a73797dacb..e72d33261e 100644 --- a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py +++ b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py @@ -29,7 +29,7 @@ def __init__(self, actual_vel, max_vel): self.message = f'Actual velocity {actual_vel} does not equal desired max velocity {max_vel}!' -class eta3_trajectory(Eta3Path): +class Eta3SplineTrajectory(Eta3Path): """ eta3_trajectory @@ -300,8 +300,8 @@ def test1(max_vel=0.5): trajectory_segments.append(Eta3PathSegment( start_pose=start_pose, end_pose=end_pose, eta=eta, kappa=kappa)) - traj = eta3_trajectory(trajectory_segments, - max_vel=max_vel, max_accel=0.5) + traj = Eta3SplineTrajectory(trajectory_segments, + max_vel=max_vel, max_accel=0.5) # interpolate at several points along the path times = np.linspace(0, traj.total_time, 101) @@ -334,8 +334,8 @@ def test2(max_vel=0.5): trajectory_segments.append(Eta3PathSegment( start_pose=start_pose, end_pose=end_pose, eta=eta, kappa=kappa)) - traj = eta3_trajectory(trajectory_segments, - max_vel=max_vel, max_accel=0.5) + traj = Eta3SplineTrajectory(trajectory_segments, + max_vel=max_vel, max_accel=0.5) # interpolate at several points along the path times = np.linspace(0, traj.total_time, 101) @@ -400,8 +400,8 @@ def test3(max_vel=2.0): start_pose=start_pose, end_pose=end_pose, eta=eta, kappa=kappa)) # construct the whole path - traj = eta3_trajectory(trajectory_segments, - max_vel=max_vel, max_accel=0.5, max_jerk=1) + traj = Eta3SplineTrajectory(trajectory_segments, + max_vel=max_vel, max_accel=0.5, max_jerk=1) # interpolate at several points along the path times = np.linspace(0, traj.total_time, 1001) diff --git a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst index 9d9b3de709..19fb89a1b1 100644 --- a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst +++ b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst @@ -13,8 +13,15 @@ You can get different Beizer course: .. image:: Figure_2.png +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.BezierPath.bezier_path.calc_4points_bezier_path + + Reference +~~~~~~~~~~~~~~~ - `Continuous Curvature Path Generation Based on Bezier Curves for Autonomous - Vehicles ` + Vehicles `__ diff --git a/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst b/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst index e734352e34..00e5ef2fdb 100644 --- a/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst +++ b/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst @@ -105,8 +105,8 @@ The default spline degree is 3, so curvature changes smoothly. .. image:: interp_and_curvature.png -API -++++ +Code link +++++++++++ .. autofunction:: PathPlanning.BSplinePath.bspline_path.interpolate_b_spline_path @@ -133,8 +133,8 @@ The default spline degree is 3, so curvature changes smoothly. .. image:: approx_and_curvature.png -API -++++ +Code Link +++++++++++ .. autofunction:: PathPlanning.BSplinePath.bspline_path.approximate_b_spline_path diff --git a/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst b/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst index 81c91c0313..e1cd2fe353 100644 --- a/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst +++ b/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst @@ -5,4 +5,12 @@ This is a 2D planning with Bug algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/BugPlanner/animation.gif +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.BugPlanning.bug.main + +Reference +~~~~~~~~~~~~ + - `ECE452 Bug Algorithms `_ diff --git a/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst index 72e558c486..fa2a2ff72b 100644 --- a/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst +++ b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst @@ -88,8 +88,8 @@ Catmull-Rom Spline API This section provides an overview of the functions used for Catmull-Rom spline path planning. -API -++++ +Code Link +++++++++++ .. autofunction:: PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path.catmull_rom_point diff --git a/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst b/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst index 1e8cee694a..16d0ec03c1 100644 --- a/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst +++ b/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst @@ -73,6 +73,11 @@ The final clothoid path can be calculated with the path parameters and Fresnel i &y(s)=y_{0}+\int_{0}^{s} \sin \left(\frac{1}{2} \kappa^{\prime} \tau^{2}+\kappa \tau+\vartheta_{0}\right) \mathrm{d} \tau \end{aligned} +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.ClothoidPath.clothoid_path_planner.generate_clothoid_path + References ~~~~~~~~~~ diff --git a/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst b/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst index 0a688b5ed2..eaa876c80b 100644 --- a/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst +++ b/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst @@ -8,6 +8,11 @@ This is a 2D grid based sweep coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/GridBasedSweepCPP/animation.gif +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.GridBasedSweepCPP.grid_based_sweep_coverage_path_planner.planning + Spiral Spanning Tree ~~~~~~~~~~~~~~~~~~~~ @@ -17,6 +22,14 @@ This is a 2D grid based spiral spanning tree coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/SpiralSpanningTreeCPP/animation2.gif .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/SpiralSpanningTreeCPP/animation3.gif +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.SpiralSpanningTreeCPP.spiral_spanning_tree_coverage_path_planner.main + +Reference ++++++++++++++ + - `Spiral-STC: An On-Line Coverage Algorithm of Grid Environments by a Mobile Robot `_ @@ -29,6 +42,14 @@ This is a 2D grid based wavefront coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation2.gif .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation3.gif +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.WavefrontCPP.wavefront_coverage_path_planner.wavefront + +Reference ++++++++++++++ + - `Planning paths of complete coverage of an unstructured environment by a mobile robot `_ diff --git a/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst b/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst index 33471f7c85..a110217a2e 100644 --- a/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst +++ b/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst @@ -171,8 +171,8 @@ the second derivative by: These equations can be calculated by differentiating the cubic polynomial. -API -=== +Code Link +========== This is the 1D cubic spline class API: @@ -199,8 +199,8 @@ Curvature of each point can be also calculated analytically by: :math:`\kappa=\frac{y^{\prime \prime} x^{\prime}-x^{\prime \prime} y^{\prime}}{\left(x^{\prime2}+y^{\prime2}\right)^{\frac{2}{3}}}` -API -=== +Code Link +========== .. autoclass:: PathPlanning.CubicSpline.cubic_spline_planner.CubicSpline2D :members: diff --git a/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst b/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst index 12172fb51e..5a3d14464b 100644 --- a/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst +++ b/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst @@ -62,7 +62,7 @@ You can generate a path from these information and the maximum curvature informa A path type which has minimum course length among 6 types is selected, and then a path is constructed based on the selected type and its distances. -API +Code Link ~~~~~~~~~~~~~~~~~~~~ .. autofunction:: PathPlanning.DubinsPath.dubins_path_planner.plan_dubins_path diff --git a/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst b/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst index d645838597..ac5322df94 100644 --- a/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst +++ b/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst @@ -5,7 +5,17 @@ Dynamic Window Approach This is a 2D navigation sample code with Dynamic Window Approach. +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DynamicWindowApproach/animation.gif + +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.DynamicWindowApproach.dynamic_window_approach.dwa_control + + +Reference +~~~~~~~~~~~~ + - `The Dynamic Window Approach to Collision Avoidance `__ -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DynamicWindowApproach/animation.gif diff --git a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst index 8a3e517105..d0109d4ec3 100644 --- a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst +++ b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst @@ -5,6 +5,11 @@ This is a path planning with Elastic Bands. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ElasticBands/animation.gif +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.ElasticBands.elastic_bands.ElasticBands + Core Concept ~~~~~~~~~~~~ @@ -69,6 +74,6 @@ Dynamic Path Maintenance - Remove redundant nodes if adjacent nodes are too close References -~~~~~~~~~~~~~~~~~~~~~~~ ++++++++++++++ - `Elastic Bands: Connecting Path Planning and Control `__ diff --git a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst index 82e0a71044..9ee343e8a7 100644 --- a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst +++ b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst @@ -7,7 +7,14 @@ Eta^3 Spline path planning This is a path planning with Eta^3 spline. +Code Link +~~~~~~~~~~~~~~~ + +.. autoclass:: PathPlanning.Eta3SplineTrajectory.eta3_spline_trajectory.Eta3SplineTrajectory + + Reference +~~~~~~~~~~~~~~~ - `\\eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots `__ diff --git a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst index 371d536e3f..0f84d381ea 100644 --- a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst +++ b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst @@ -7,6 +7,12 @@ The cyan line is the target course and black crosses are obstacles. The red line is predicted path. +Code Link +~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.FrenetOptimalTrajectory.frenet_optimal_trajectory.main + + High Speed and Velocity Keeping Scenario ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst index bf82c9f391..c4aa6882aa 100644 --- a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst +++ b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst @@ -10,6 +10,12 @@ This is a 2D grid based path planning with Breadth first search algorithm. In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.BreadthFirstSearch.breadth_first_search.BreadthFirstSearchPlanner + + Depth First Search ~~~~~~~~~~~~~~~~~~~~ @@ -19,6 +25,12 @@ This is a 2D grid based path planning with Depth first search algorithm. In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.DepthFirstSearch.depth_first_search.DepthFirstSearchPlanner + + .. _dijkstra: Dijkstra algorithm @@ -30,6 +42,12 @@ This is a 2D grid based shortest path planning with Dijkstra's algorithm. In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.Dijkstra.dijkstra.DijkstraPlanner + + .. _a*-algorithm: A\* algorithm @@ -43,6 +61,12 @@ In the animation, cyan points are searched nodes. Its heuristic is 2D Euclid distance. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.AStar.a_star.AStarPlanner + + Bidirectional A\* algorithm ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -52,6 +76,12 @@ This is a 2D grid based shortest path planning with bidirectional A star algorit In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.BidirectionalAStar.bidirectional_a_star.BidirectionalAStarPlanner + + .. _D*-algorithm: D\* algorithm @@ -63,7 +93,14 @@ This is a 2D grid based shortest path planning with D star algorithm. The animation shows a robot finding its path avoiding an obstacle using the D* search algorithm. +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.DStar.dstar.Dstar + + Reference +++++++++++++ - `D* search Wikipedia `__ @@ -74,7 +111,13 @@ This is a 2D grid based path planning and replanning with D star lite algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DStarLite/animation.gif +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.DStarLite.d_star_lite.DStarLite + Reference +++++++++++++ - `Improved Fast Replanning for Robot Navigation in Unknown Terrain `_ @@ -88,7 +131,14 @@ This is a 2D grid based path planning with Potential Field algorithm. In the animation, the blue heat map shows potential value on each grid. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.PotentialFieldPlanning.potential_field_planning.potential_field_planning + + Reference +++++++++++++ - `Robotic Motion Planning:Potential Functions `__ diff --git a/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst b/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst index a9876fa3d4..36f340e0c2 100644 --- a/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst +++ b/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst @@ -4,3 +4,8 @@ Hybrid a star This is a simple vehicle model based hybrid A\* path planner. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/HybridAStar/animation.gif + +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.HybridAStar.hybrid_a_star.hybrid_a_star_planning diff --git a/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst b/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst index 788442ff63..1eb1e4d840 100644 --- a/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst +++ b/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst @@ -4,3 +4,8 @@ LQR based path planning A sample code using LQR based path planning for double integrator model. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRPlanner/animation.gif?raw=true + +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.LQRPlanner.lqr_planner.LQRPlanner diff --git a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst index 1c5df1c9cc..76472a6792 100644 --- a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst +++ b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst @@ -6,6 +6,12 @@ generator. This algorithm is used for state lattice planner. +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.ModelPredictiveTrajectoryGenerator.trajectory_generator.optimize_trajectory + + Path optimization sample ~~~~~~~~~~~~~~~~~~~~~~~~ @@ -17,6 +23,7 @@ Lookup table generation sample .. image:: lookup_table.png Reference +~~~~~~~~~~~~ - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst index f816c5c1b9..d58d1e2633 100644 --- a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst +++ b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst @@ -13,7 +13,14 @@ Cyan crosses means searched points with Dijkstra method, The red line is the final path of PRM. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.ProbabilisticRoadMap.probabilistic_road_map.prm_planning + + Reference +~~~~~~~~~~~ - `Probabilistic roadmap - Wikipedia `__ diff --git a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst index 66c3001c05..c7bc3fb55c 100644 --- a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst +++ b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst @@ -9,6 +9,11 @@ Motion planning with quintic polynomials. It can calculate 2D path, velocity, and acceleration profile based on quintic polynomials. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.QuinticPolynomialsPlanner.quintic_polynomials_planner.quintic_polynomials_planner + Quintic polynomials for one dimensional robot motion diff --git a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst index a4a5d28e01..4dd54d7c97 100644 --- a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst +++ b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst @@ -5,6 +5,12 @@ A sample code with Reeds Shepp path planning. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ReedsSheppPath/animation.gif?raw=true +Code Link +============== + +.. autofunction:: PathPlanning.ReedsSheppPath.reeds_shepp_path_planning.reeds_shepp_path_planning + + Mathematical Description of Individual Path Types ================================================= Here is an overview of mathematical derivations of formulae for individual path types. @@ -381,6 +387,7 @@ Hence, we have: Reference +============= - `15.3.2 Reeds-Shepp Curves `__ diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_1.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_1.png diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_3.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_3.png diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_4.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_4.png diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_5.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_5.png diff --git a/docs/modules/5_path_planning/rrt/rrt_main.rst b/docs/modules/5_path_planning/rrt/rrt_main.rst index da3a4957a5..1bd5497f4c 100644 --- a/docs/modules/5_path_planning/rrt/rrt_main.rst +++ b/docs/modules/5_path_planning/rrt/rrt_main.rst @@ -14,6 +14,12 @@ This is a simple path planning code with Rapidly-Exploring Random Trees Black circles are obstacles, green line is a searched tree, red crosses are start and goal positions. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRT.rrt.RRT + + .. include:: rrt_star.rst @@ -24,6 +30,12 @@ RRT with dubins path Path planning for a car robot with RRT and dubins path planner. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTDubins.rrt_dubins.RRTDubins + + .. _rrt*-with-dubins-path: RRT\* with dubins path @@ -33,6 +45,12 @@ RRT\* with dubins path Path planning for a car robot with RRT\* and dubins path planner. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTStarDubins.rrt_star_dubins.RRTStarDubins + + .. _rrt*-with-reeds-sheep-path: RRT\* with reeds-sheep path @@ -42,6 +60,12 @@ RRT\* with reeds-sheep path Path planning for a car robot with RRT\* and reeds sheep path planner. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTStarReedsShepp.rrt_star_reeds_shepp.RRTStarReedsShepp + + .. _informed-rrt*: Informed RRT\* @@ -53,7 +77,14 @@ This is a path planning code with Informed RRT*. The cyan ellipse is the heuristic sampling domain of Informed RRT*. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.InformedRRTStar.informed_rrt_star.InformedRRTStar + + Reference +^^^^^^^^^^ - `Informed RRT\*: Optimal Sampling-based Path Planning Focused via Direct Sampling of an Admissible Ellipsoidal @@ -68,12 +99,20 @@ Batch Informed RRT\* This is a path planning code with Batch Informed RRT*. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.BatchInformedRRTStar.batch_informed_rrt_star.BITStar + + Reference +^^^^^^^^^^^ - `Batch Informed Trees (BIT*): Sampling-based Optimal Planning via the Heuristically Guided Search of Implicit Random Geometric Graphs `__ + .. _closed-loop-rrt*: Closed Loop RRT\* @@ -87,7 +126,14 @@ In this code, pure-pursuit algorithm is used for steering control, PID is used for speed control. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.ClosedLoopRRTStar.closed_loop_rrt_star_car.ClosedLoopRRTStar + + Reference +^^^^^^^^^^^^ - `Motion Planning in Complex Environments using Closed-loop Prediction `__ @@ -98,6 +144,7 @@ Reference - `[1601.06326] Sampling-based Algorithms for Optimal Motion Planning Using Closed-loop Prediction `__ + .. _lqr-rrt*: LQR-RRT\* @@ -109,7 +156,14 @@ A double integrator motion model is used for LQR local planner. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRRRTStar/animation.gif +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.LQRRRTStar.lqr_rrt_star.LQRRRTStar + + Reference +~~~~~~~~~~~~~ - `LQR-RRT\*: Optimal Sampling-Based Motion Planning with Automatically Derived Extension diff --git a/docs/modules/5_path_planning/rrt/rrt_star.rst b/docs/modules/5_path_planning/rrt/rrt_star.rst index 6deb6b9172..960b9976d5 100644 --- a/docs/modules/5_path_planning/rrt/rrt_star.rst +++ b/docs/modules/5_path_planning/rrt/rrt_star.rst @@ -7,6 +7,12 @@ This is a path planning code with RRT\* Black circles are obstacles, green line is a searched tree, red crosses are start and goal positions. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTStar.rrt_star.RRTStar + + Simulation ^^^^^^^^^^ diff --git a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst index bf89ac11ae..9f8cc0c50f 100644 --- a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst +++ b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst @@ -12,17 +12,34 @@ Uniform polar sampling .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/UniformPolarSampling.gif +Code Link +^^^^^^^^^^^^^ + +.. autofunction:: PathPlanning.StateLatticePlanner.state_lattice_planner.calc_uniform_polar_states + + Biased polar sampling ~~~~~~~~~~~~~~~~~~~~~ .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/BiasedPolarSampling.gif +Code Link +^^^^^^^^^^^^^ +.. autofunction:: PathPlanning.StateLatticePlanner.state_lattice_planner.calc_biased_polar_states + + Lane sampling ~~~~~~~~~~~~~ .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/LaneSampling.gif +Code Link +^^^^^^^^^^^^^ +.. autofunction:: PathPlanning.StateLatticePlanner.state_lattice_planner.calc_lane_states + + Reference +~~~~~~~~~~~~~~~ - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst index 04001d4504..9517e95b31 100644 --- a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -33,6 +33,10 @@ After:: When starting at (1, 11) in the structured obstacle arrangement (second of the two gifs above). +Code Link +^^^^^^^^^^^^^ +.. autoclass:: PathPlanning.TimeBasedPathPlanning.SpaceTimeAStar.SpaceTimeAStar + Safe Interval Path Planning ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -73,6 +77,11 @@ Arrangement 1 starting at (1, 18):: .. image:: https://raw.githubusercontent.com/AtsushiSakai/PythonRoboticsGifs/refs/heads/master/PathPlanning/TimeBasedPathPlanning/SafeIntervalPathPlanner/path_animation2.gif +Code Link +^^^^^^^^^^^^^ +.. autoclass:: PathPlanning.TimeBasedPathPlanning.SafeInterval.SafeIntervalPathPlanner + + References ~~~~~~~~~~~ diff --git a/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst b/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst index 3c9b7c008c..aac96d6e19 100644 --- a/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst +++ b/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst @@ -13,6 +13,11 @@ red crosses are visibility nodes, and blue lines area collision free visibility The red line is the final path searched by dijkstra algorithm frm the visibility graphs. +Code Link +~~~~~~~~~~~~ +.. autoclass:: PathPlanning.VisibilityRoadMap.visibility_road_map.VisibilityRoadMap + + Algorithms ~~~~~~~~~~ @@ -64,7 +69,7 @@ The red line is searched path in the figure: You can find the details of Dijkstra algorithm in :ref:`dijkstra`. References -^^^^^^^^^^ +~~~~~~~~~~~~ - `Visibility graph - Wikipedia `_ diff --git a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst index 65e0e53465..a9a41aab74 100644 --- a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst +++ b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst @@ -11,7 +11,13 @@ Cyan crosses mean searched points with Dijkstra method, The red line is the final path of Vornoi Road-Map. +Code Link +~~~~~~~~~~~~~~~ +.. autoclass:: PathPlanning.VoronoiRoadMap.voronoi_road_map.VoronoiRoadMapPlanner + + Reference +~~~~~~~~~~~~ - `Robotic Motion Planning `__ diff --git a/tests/test_batch_informed_rrt_star.py b/tests/test_batch_informed_rrt_star.py index 3ad78bdb23..cf0a9827a8 100644 --- a/tests/test_batch_informed_rrt_star.py +++ b/tests/test_batch_informed_rrt_star.py @@ -1,7 +1,7 @@ import random import conftest -from PathPlanning.BatchInformedRRTStar import batch_informed_rrtstar as m +from PathPlanning.BatchInformedRRTStar import batch_informed_rrt_star as m def test_1(): From 0c82dde2be24e5f3955018caa061750d7404978d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 07:22:51 +0900 Subject: [PATCH 368/414] build(deps): bump ruff from 0.11.7 to 0.11.8 in /requirements (#1215) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.11.7 to 0.11.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.11.7...0.11.8) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.11.8 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 88cbb21f81..e78b9b8d51 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -6,4 +6,4 @@ ecos == 2.0.14 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.11.7 # For unit test +ruff == 0.11.8 # For unit test From 292c9dc613d1b0ace3d25ca8a0295e19549516f2 Mon Sep 17 00:00:00 2001 From: atm <72185056+sutatoruta@users.noreply.github.com> Date: Sat, 10 May 2025 09:34:19 +0900 Subject: [PATCH 369/414] fix broken links (#1216) --- .github/pull_request_template.md | 2 +- README.md | 12 ++++++------ users_comments.md | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index b6ac52efa2..c0d9f7eab2 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,7 +1,7 @@

    W4dI(KFNqnSFN&(5qD#9iYJv?;M5mMvk zNZiJyrKL?>T5Rc4r1mK3fA&KfDy!F9A&}(GET#YprYNTWID|W(|Pkc zl3KBek1sWxT_REQsCg*P8piWK$tG*cV)jYE%|><8U3e?>#b;$@MXDvr6A5F*m0&fx z&3r&APw!qEh?7~4+j?QT$jt#$5-;FH<11-jo$v|VT_sYr;Y_vTf0#jGndFoCoSRkP zs7R9pqX(XzmWn(M4i2TzWG_6me?9}(vDMC)6nlw=IX6GwW9}b|51cy}i=r_PRlXh^ zW6RjWOEc-|>4}()j*q^5+hqI1Ej1`zWa0Au%z>)Oh@3%JTfNxkAjm_S9{@iIB_f6-& zKuGAefOIdqmmAbi>3+XptCo1pUM1Mu#GtJyhGv)YX@ z>HYF;9-P9p(QB70z#9FnUrL@Bqb#+wdM$| zb8@PqYZt7ImW4qQC39-hE_gC7lxo~NM9AVbsVf<#bm#taTeQSMW z)!u0&40LJYC~zdg2n<-VqG)KWnu;SkdyZ4vR5xBix+q6cp~#P=*GEh>{-$84?$`Rd&!?F%^e~w|-R2qoR>;z{29? zYJF`6x^RJG8XB9y+;{*$%u90Zv$*2}*4J)S6H@g=ZZhpJ@9>Wco)JXQ8A_KmX6<^X zKVu>bK1*78#M=G7%IZ}gYltHqMpP-tjMZCRJC^nyppjr3!=n{3?tx_c$LOf-v-z%8 z(b=G<>H?{OH+a^g6@t3&nP5MV<>>f7tSB_^h_n2izv7Fh@qB3(`ln0H0IGO2Ob$`c z_kEEK&clO(RoGR8>#4kLZ$o!hkDh3E@jR3Rkwkgu@Zm+r7(Tto#?iS6A`l@n6+vS{ zum^MnR(wHfzvS;WA2GCk)2=$R{fF+DkM*TNvZhQsPpAy*^5qAPA1~R#s|9ncbmUZp z^o;%Zu~KSmWF+?w&dXc?m*=Xx%%Lq~A_>^&NmhNk4e|Z~U0vNBazXsGJ6MZD{~(I3 zIFbRgb!+s+0AM6}WV675dU?kDtH1P|r|-khf41@kOq~qyb}d(^`Z<)exv?cInO$V2 zcMdVdYzofkA((KL457x@ojt&Cy>+9O-zX&|rT>Fa(R(QH+^8tw?l9LT5^e@z@`{&T z&s}Pf0<;!i#>Wc?cA34>35H=`WRl?y7EYwtO0)&q(2xz*8?3|C8 z3LV)~GKGc%hyP;?%?|dzE}(HYii*N`1N~peA=CY8l!Ff`Fsy>H<8ec=3_1}hDJ^76 z$FNyw#p}BvTq$ed8j7!uOVuP$6DB+icBB?uUM$@Q_{PN6y1Q1DcJAB=u?2NZVVT+f zlLNfdT~`1H&sm|B@Fid{o0vs_q1G-mFS_WGrGl*-H2$Ns_>T|k6iPsdPre3qzkFL| zUqBLWYf{IpE}p;vI6E&)c1Na*!+78RuW=ZY9fp}&_Jf|X4>!)G=~zfatC!UFj+DcU z!iVE%WEMN$MS5qF>NxF53M&5L{I1dvS0W~sb6;ax?Y;Py_xi^Q;Q!vfmmUZ(i`6wS zIHa%tTvtzzZ7RJxwS%FwD%blolSP8G>8mbwxeDeQQ2x(8v>E?#?$*tl+Z@VIK2uLP zdwM*wVc}?Lk8501K!7x%4L+8zOKNIrT50Ynks$%ET)8_dKcA(|*`K|I4lQ|BpV0NK z1-x)JxZpY%%h18lYCQqx4PDH-6VQ?yo(6m;7hsP@S82eWxgDFY$p6>H`R5M;_L2&7 z+idv|GHs&`U-&px89X;PkEbXPwC$a%uhs0hNqqbJhKEI0jDB|E%tP|0;kbrKZFJxe z#_CtOm8M`C2`Ly);fHrTo*(twy@`l}>-p_$)BMCHkWhXu{?4G3+^JSw=h|8gBrL_f zSSKu;FmQvJ*Zci|8CSrbA=m}y0&=|5V;cWFYYFr+e=@GnKbAhzRQziI&vXa={;$(@ zvW%Y<+Bj>v5H1kFy9L{P&9_(B`VK)}8!pAAj4|iC@RM+DcS{Se?K*_unHv^hG4+6H z@5(6(E@Ud2#yW#dAK&YTz@{eh(hJbG!7CkO41Ya zc~Ap|E!ql}AtA>iWa$ajfHbnr4htF+jq+i?-Kq#VmyD18-9>-`0zA?zmN9VE&v_Y^ z=``;Ia%!SeUjkQuTB>Rp72#Y9?NlDlamW|Q*(7rKwo?QH2?WLrH_huR34W(2 z8jzf48}@M*EjfMy+lO&Sff`7s#NK^Cj`z1`g=Eq>tf&kfRvVS@dw03-GF| zyn&mK80L_v%uFLuAOs7L=gNqD*|%?BBX+?RtYN^7r!rfbnhu~}=T;o)mr9xwB&P+2nN@xvmn0vI67cA2K5B&Z*DyLAI?_EcgY~C;^+H`ojA+W z5hBsZ$cXY_7|i|&Z8RB&iMRC8XxxK7zJA-bV}Kpju^UzN+8+FPY>YTeqhBU;rMo&o zE4OI0heUAzJ$Ohtsi9#)SF>Zl&)0VgxCuEc(Ugr#W@=umZ92_iY0mdHz5OXmeK*aY z)piD+?W7=8h1>qQulH3!P4&66a{FGOK>thWk{p1`V67FF|2Y?E)Tc9d(5g4BZ>`Tr z`!O=I2Lofpie#na3{Vd|{YE1L!QdUs>v0$sH-vp|2-)P!aWW)w@RE>e-xlcmx0#&@kHlH!AWqtSMxVl#zWnX3 z_8cdSx{ErhD`u)PzYPI@!U@RRoSnire}13v;&NA~L-S8TlF;1DGg_*h1~Zust$ZDK zi4C?7?DTl4{z$e+js{Cv@;yKCE7zr!F?k)owszyuP9U*ekfJA#e*d%hIjMQQH zx?m>S9uZ@tPJI*2x{s2!SnO>^oJUPpNEVLQBRGh<@$Nm__}~Vx25d=_Tj=Ip^f}`{#4> zaopa$UeD*_aUa+Hx~@An8qxkCZ>FDgt2k;_UvUiA@GKd2zHEV#I|fUYh)D%t*Oz^LE10n40M5gRo%iqEJEOwSTCW8!hld^hYpA;g{B{ll zO}epNSo(>n)b2(kHmt0&eUq-v1}qY0KU%g!od)F(ho>R1|Co9*TnX_1wIxdEuPR`h z96`IRJ1aRy3ZnQqIHUliOS)bfT-|tYHy+Jp!h0~-YhGib6P|EEj$>vvA07%1CJNa|hr z>#?4D;N)8y&W!*;w9JHB;HON|MHX6b%fOI^M3xa`5siLti4_E@5VF zQ8m)tM4RB{^zdz$;dt>u!2`g-Ue}`#{`BV%MnkeGsi}1)8;&eQgj3|FN_}Nc7P!F9 z@I!8H=s-1&Asf8fH}R}p`}}BsAz2Upk8g-lCe-SnJB9K4hQE?-hCdBGJ^da92L1*# zLB!LFUHA0~baGT7S8Ire20_$`aTigB1Gu&nK5?*AgKxF=qoB*H!8>B72G9~fw2@~U zGpI_M$XYQp?Es8t(zF*4gx_N{KlrcnWp3mQuV8uw1{8J#6-XMaR$oCK&Zk&oZiiLZ zsF@xtAxkp4sRjsbraPryUQI8+8s9iWU~VVJX%a;>A-B)L%Hs!=8NnTB0f(sYYn!WeeX!}j3z@ZHyM`bSMs900m z+FF2Gla~Z+mh8kdjn`(r?37Gfxu*64#+W&TSaO#z{>bVy61ad6?1vq0vf`@+G~T@C z-}`hw9pJ$j-^OsItad#0h@?37F`%Qhxz$se?fK-%lSw+dMT;!x3L!PSJQ#j=cr=gV z@EkN-_3p2Tx|K%^HYM$wdn1NbDy z$n(NI?=Lc!q)K&`HCsE6mUg4*>LQk%HWf8l!K#`-q8z`yU3IGh6@{#z9TfPV$slcp z_%?^4wv)NU6S|+T+kA3ZPMCBDD*~QMFf<68)oa?@+t;4WX74n;i@)Da*kJ1pSI4$kMO4+u3t9eypbSsy{~O*krLwxWdXeRe#Q zb?A(pa`I?UJ#v$zi^0j`aM>r`U$K>nEWVjZSxlZJ<~3E6s~b=7LlJp{aw$9Dt*%ZR z@M=QW`!x-L_O(nwqY`Y_L#JRGbP5_IVfuIpi-*J#$Do9ZuobrC95ba^!DSAMkxzRc z^o4=woY|w{X-C^S+y~b1XAJR$v=lMMxV2J370^*;$r;($*54jaJ(OB`m(TqTKV8Aw zxS(k$CPt_#^7tkDAK$;Ylp#>^IgAXP31Yjnrg1*i_^7A5yG>cCwzf8L-TgW=WWD!5 zuE9R%++10L8l?2+OWgPM)oyz~veuheS!B*lY2elGZ(m2;vV9)4pD_Z0_K5V-5g-M5hEIUQ zzD3@!BG9<-KmP5X!PE{wPkbQP$>~L)RP1a`v0C4U57#kr$=(HZxjNJit5i0dH)a^x znNv}#GV}2AZk8WN!}1;6*K0rQezqXlx=I@BsIh@Lj1bgB+aAYa;C%o_&|^dK>B1e^ zqtn0VKfWv}SDc}WYpyq^fAS1%>hKk&YJW&3I)F(bvZAXd-W|r^GUzqBq~C3&JtE_` zwzVFO_rWshO)89AEnDv{HmoSA&O3@}k1jep!fVG{6Y0pG$tOS=Q1SToyy^7L9;zZ}BD{r$1X9|Lb%G`d40j{NyjOwI9)7RgRC46bvjLgdq z4Dui$iXyMT=rV-QS$z5zq$IZKzx&^EWb(fO{=oE^+++XGcnV|>WX^*LvY;g}#@!75 zv6)Zy?b(x%dz5D>m>6oXme>yOVTaAv*)I;1Vm`Gn{6v`{f>bKOj%duG{~oCPa*fZ|wu2|H;5`09*vMB0c9 zp(le=yD1FDQNEkuS+jh*eZmYXpIOvHSnp_Rb|{n5bmY)4#l670{|w|E%o--*eTM}} znNfp>mr?t2HMTbm!LuCe56)hx8G^Won7D5jEuvR6lla)Z51~R)LPq~+fNClDqt`ET_aTK2CGw zBh*-v0kW9ffYSYoY0o7&NnEZe@D@8svqw-T%{bbJ++!51=SD=LFJKc@c8HGyu36QJ%Ld4={FmqCxO=y`FAS#~H5ZIvuB&52{9a-W=9V5Tl}=+M1G5tx&rd|I~CX56Di%K60Nuff&d zZ2!3EQcYYxZFd6aAvhg@OdUrb8y5YR)!f)I7tKp1XN?pU;46u5r|c_4)3f%bew3h$^=%MZA?P-FO0YkBWj3Bf;B zE1q-)3bH(q7BJR(LLfbZ{KQRaYphgfz0=V-Pv?9y(|44OCfNyJeC4w~5F#LpbCGQ&pXg7V`dzsz zl_5_uC(VbA(=&?V7Aj0hCY4`Iu>gDyqWCwQlc_>m>P+ZXoek*?dI9ji1q)4irE&Aad%egfsr@6^V)rJ)Ez7-+`G_{xqSh@gjL8cCMWEA`wrE! zX>>FUviw2Bv1`2@ZLGFvEA|Xy%khVR(w{TT4ScV|47Y(IhN@v-y~D89C0;$l1dZ6qS`XOORx&*R6fJ0d!)GTMsm)kM-SL%FL{-5`{}>*;B6toJdP|y@19Sd~gMl;6ioM>n#}& zL++t~eUBB1Gm4ewvk@!9BM+8RcK=#&DJm*TnMdTuc+fge&?nd>XjOcRPal_44c9b? zZbqqoA1e;&7A$D_KzNAaG_|HlZ^qvq3n4p5oEZw!UM(r@^9)EV$v15KSvBJF%JSYvPM49lxNU{TKmp z!=S;^J1-ajR_f&VrXGEv-he(-fNOYDP@Qn%Uq~bJ=|G!a?5QD zxX1}gNl7u3ocjlA!9=IP%QY$=!DW0zXeTSKu+whcDRrrf)m*TF_{5Sa)-LI8iRSbl zgM#F&5wdo`&09Ba+{a>@_bB;h!j@ZPK565hcBzyywToSnpn6vj#Is$ycN+L!h+bdNZ4-oyP~2uJLEjR)2avq?_~T1CF|!pe;zex+4Q^WAWEsF8v)FRVt$n zg<5jW?I`x2X(T9)tmIrPAyLzkgv50a?P!Q3I}4_ggZN9ef}8cUl^RlxbK85~^yO7l zs9_G2|FSEVMkn6XC)YzDm{F{NDLLEQHdd@PlZ``~o{YM-Ep$Jarv**x-(1JvD ziDsKvt+t{f2iZCTFmyS3b!!OTWnl1l>CffNi143VT4Vr$F@8cpnvl|&yf*yL9LA{B_1--E@fi+05I`IWMpAW9prg3 zIA~|k$<3ubcQ!#wZ1D3C#(p*L+vS8&M4CHo-MzY3$JyI^g%~XLp9coI-#>T${PMuK z(UFli%GWc{^bs9U6ci_KUquCoerO|;cmUj)OuvKt7NJr`w6@p5xKOFa?f(7eetsF5 zWax;re-R~lrFurm+pg^I(BjF!PKPt(_zE~B zu$u1>*-NG5OQsZ0hahID_|F0^@~YIUYv-y?a%BF6-er8i5%Wo*lBHylaz?Tl9_qQ8 zr7b-@lP;>~&VSuOcf_nB=>0>K5)(GVlef}#;4ZjT$$i#`C8$lgp<*$C4+dyPvQ5!o@u8nBH{aXXV$Er zhhFg>S^D}JFIdFv`^X4uU_97vvoP7WUQ%ezv9jPGg$s~euSi@s$dc1d!M-Qzba!X!CstIE+!vEUNMW!ye= z5zWT+EtJJwHDVHT8?T+sEFn`oTdojIFN5dL~%Xn%R&F6PB3_ zfZ*hE6!g)E+3fB=kGIolT1sZ*69GSj_F;Ql7(u9reC~$i!WCO5lNM+(Y%2*-is(5V zzAn!Tn=KDo&FOsaSL!Db{jfHt?Iem-F36njf3(La=LD;(svi^+=3m=*g=L~j9+pT8NkE?WP z2BO^{jDuiFL>P?!*9itWN}l4RMk7AHCF?p$)FDLYMu9gYz-SiLC`kPAPu8uO-jaZF zJK%Ef)~#D1wjCde5%WZU7-OXjLh<2uMYZuY;Mq2tIgWbeQRBB8&`{bmT#4SCOb0;< zDOXK0jWEZ8m3@^7`-X)NfT9y>G7OLRf$+6~zYGN?vg&&DSH;098#V~utfr);f6rs_ zWXSlaCi~g6KaGsbAWMVLRHW(ML)~`Je`hVa1?6S$eV}ux#f+@HUOzbcat5+&GyYOd zl8QrI{3tawHQ%8p{x=Fs+R+N}lF=ui>&Nn2km*o!6RGNdrV7e;ofS zj;I@njbGI|f$<+?@&O%bAM%}NxIb7raMIgAs6{hiPv8S)0f(>&74-i(;+y<{QnRU9 zWB3hl^~f~f!-o%xC0}W2{G31G@v*cKt`tV|HT&D;W)Y6nH zCz+M_Ec`@Qf{iE*F`Zyo6VkGo{RCV71dG)O`2~&>XA?)(FQYn*>=#kJK>wQ7?(XIq2)?)>F%GWg z7}%A;Fu4o~gX<)svbMB>9N`X8(3#E@oLLlPN3dhF{9BYXvX`3Fs1W3S0Db+IN*i4y z+%8OGc0IZ{`J~kHwxS*3Qt;J0ewrc824pb9KZ@p2i7u{8vI@bJ>Ak10k*r!NG;~DW zwXHvQ%Zz$6j{oHnn;&<6^JW)W{)Ey~Czc+~4xB-lQB<*LuY9paF&>XDq&pRK_3t$e zKlChiLMTbnx5}z(zO)IEPCtH>DURau=qBC3D_f35b}8_%`PkKEQvKw&#AYOxd{jH# znvQyu1@$b^m%(9w(|5G8#0yI7%8_&Bz-`V0 zGcYj?ExJFbJPb1;jRad6i*JfsHpnZUMy zRH73+b?W)dvhk7KXpV%3oOvnHeD-Xi%5bXTJ~;&!KvW^%I3zR%^DL+OGO3Un#~UIB zRncu^s}B&GLuGTGy4TR5M0=0V>1u@}tU#P!ot>Rcqw~pr0oqs$+$Th|N{FL{m!yp8 zqfMz!GkJ=S;JIPy5$3n(=Up(Dc1HZZ>HA!>7?jlKs1q_jBq9e+s-}X^H-o{3>5tC_Es^ovhp@HHGPCTP?S*}0pfp*bo3Du)bOSN zFVp*Yz&TqAww;{G2x%5|IRd$9p2Jg^j!gzq^Tp15-j|MBAqvW-B2|Bni%F$pJJ%cduYvLcml^<5ty6PmdW4i5Z>7wd8~dQuCp zmMfZkWnBsBigcGzDtAPYohoez>)K3vcKy1+yM3 z4s_da%68v8K)5pC9s#(jk!4!8j0Zy;YfC!ol@s91--BtzcT_sESq{Cg=b}kN@ShRZ zht22&QOegow0>F}Y)Xu`Mrx8lV^W79Y2FpqZ$6uKWd`SdrgvYm6@kQihhu$!9tKW$ zK_b4qAL-@Zc7iKwo~+(c6&?7s>H>UZa%UjMLC%;*654Aye+pPj9!TvW0vg#20zfDG z0KnXfPuvRK0_=V>+ZSdt32+kj49qfguEg#I2M}|r=87{QRA5iI0xJ(hH!<}Pt}Vyr zx7IJ!1qB6tM*dR2%^|a#J;|;1U{jl3GCBFsV8N2^tq1=!As4zix}d)z{YP0ZZv#*r z-iXv8&ryNeOKPe|j_@E66BVofqQ72NTuMG{>M%C1FFjFCI6)qpPP$ljRu+YB=$W3) zr`H_Q4mGTlrz%BFJ4D6MLH0P&b{QIB zSFey!dG52a!_3tA2yfbU!@wOrkW@4O`6LXmOq8~;R-qBLd*H7*)3Y!yUd)Lc`bcwN z`sgAijo3LNBFtwK$(>n+S4#*0c3s>d6w9icw5yz(b&<^(njuo z@xa-sAC*nb>4np9fSS`%dtZ4=X>0oeLe!w2H_yay-u(FwfC_1Zx1jxe4++g@&=+0)P0zr60PU`r)`a`m8$T(>D=>hPYHqot*#I&^a9W=0*D z7k}s;*-RaW@YdD;k|3}!SsI<6$@6F_S?>znP*rJwsJ!&PeK#@b)om|lOD1y*qANg? z<54aQ6Hw4LU^PB7+`?Q36;5|@d?>()$sq5|hd|2Dx`)s1tlfbFcr&nYY5Gj>!A@m_ z7ayOwUGYlnY$1+t1)7&Z=z8RL?b^i`?SukThe(sbO%@6xv~&!@u@QSF{9#0gVHT7V zKkRbpDP)D~)Z`Z6kt-i@_LZ*zO^jPLtCV&smxpe+>)`>|YdsTlP~afxt(LsQo@i2v z3Zm%R5*CQ6mni>>7;FC0El<04e<1>su)x&+d4TWsC3@=r-Fk$uFF@ZtzU3y!5^%?m z!yI6xCe_(Q;+)Wsjz;%Mh&CF zHcqsG?j7OD`RePoP+-}AdMZDE2N4ByQ}&m57XCaVwY#MhOe+|nPz3ev0djX@)-Ltg z)WU!pwEu`<)$9Y1u#fB{CuB@y*V1D&9a==!l4#j>pR7iP@cC3KwUK%e9!mIf)`eK# z3*|-WSr<>8AFt=GdXK0oy+che46|RNE+>XKGf`6@_gp1lSntAFIX`2na}pz#89jd< z5TLsCIJ&vDJUl_&H;!}B@DUfjS6*j8q9qB@xIU%ou|6WwX4BfOS@P|TMUWZ`KoNEy z2HI(s0T50S2U*z4ik%xuTE1OELPID;2N>U$<9MlO43oE1%;MJ~MS}V+pfp;};!6shp3Pwrjy#g~{oA+wF#36cSYxHkP{MI+CI0kw)lH(* z$CU8aqO+!^-70P=ec2nx&>%~;Gvm;fEnAuq;gi2+7Zk*MK;U3{A7f;R$cssA;(~$- z1DTh-y}d)Y${JWmYQX5s=H0dT;BM*?vNIY7uL7m-yM*j_00H$7vj_lzEJ42G)aDr+ z-3rj4x~oU`4gS1yjVGvCH`bv)K)F+`%)V&RF`C-c)Ko2Fl?OMW?gZA79}yJ-XUKJs z-X_YqV-YpmPF*!a0^jWFg395AZin1%*0U9U@tAgh{X)##KQSV0N5ZwsokOAQ!@jfJkRM;c`*HF@LHI>7&FOCzUW>f05#_I^dl4mN^ zG4Yzb2U}I7cHaPXFgOyshz!l|xj1p7wy>!+4Gav-!S>^GDjX@N;>ZLP)~+i=6MgoU z7hH9z9{j+f>*Z2?P~L2KaFEH-(eYCk&eHj&D=eKt$-*v0QWLNSB{s!?o0U#Whv}qi zBarIiAO%>|L+k4@X}>VDdYx7iIZ)yW1LY-U&=I%jh>gaHgx`vn2vPxL3{yY;^RI`u^&zzl^XYiS1gooq)LO#{*kY*nKi>qDj^PYescIl zD2Jbln^vF40-xZ%hlhGor!ADBALVyvFygRCTyRHjSdZnko8-$b0G5`%)TnC0`mr43 z#lF5inH)Z_J$H3oxpIZ+QTI>poOxqSJ^S;?gsuly!ma5UPI{==*wXc;9W?vYYhRUT+Lcc|0fqE0abP4Fe-)5U8`8L#JvN;)6;quZ8s69bhExzG8@8nLl(1zZm4 zLsOt}37&R#99UeWJWnXJ9vLwB6m!M|P5WWYia(tm?=CH=fq#)k?CNbX6=aVK0gCOh z8!vzwhNj8rh4vEu+RTa+DL*cJRHJ8^!j$*ov~o7^NwPna>Gm=tSinJ1pN!{UaUwHv z4Ks!I;Abd@K7gfl3ZFtv?qy(1M@XmZ4k9Pr)g@YI=_YsH5jAf!$b=hz)S{m_XOIle z8tD$hLYhnU*(G0SS5zlib+Bsbl-wk`8iJ!i08naq4Fw^wrXgJZnLKiQW+@XA=Jwt( znxg4S&=ETxp+*FEh#P=y%3Sia_Pl+3QRD+O1qV&``7HHU2rG1}9<+jJyI4#(H=H|` zg;0L3`YyYGO@-RgBB^?rx0b)?!I0MWMsge(8i7CBeoCv%=XqzIob47RfFy69l%Ii8 z3VHVSB=P&R9vf7D_tWx}LVfHH*4j+WoNNtz|!W7=_6V4Pq*9y>&5 zo5H$@|DY?IDC_uuos!vt;&PHZK~ioTw5sC-iFd#*y|ZnAm|*#qKb^4LqXDu9-_e-; z7_gocA0t9YRJ_2{W_XxD&_;2+?!#8fx0d3cJ@EVl!wMAQGC;ox@DjV?Ue02322$!( za@SoY>ToPs*-c-aY8P)@9dm#PDiPaN;;vl1nuCkYkJde0m7l=>sKD4NfGS;!kB|S_ zPlS&^(@)1{o;~%Yv(p%eZX$1`_U0#Z`cIxXA!8K3ZzZuI05>7qUFU*P$JN2}-J;!=KMsetsP&OyQ^9Y&_>h%F~>09MNFCic_T z{QDL3D{#dA9Ey@tFsM+ga?1fTKoHVd_u8{L{KCPUVq)q)1_F01uP`JI_0ROkzn!gq-jgQW&P}H?Og5 zraX7bY1?|xY2t0EdSC8ej+T^Pa~yNT^B)q`-9yP|5!iBm(rP-8jTog0*fIFcK@H7l#cO~OA!P6O2BDhPOz#dUkY`+w1QZazWPw59oU}-!KEb*R6B5UtGDV(Ky%No zv~lljYO>@GSE4$l1a>ThAs&_s2#X8(V~HeF+H)or7KqR!!%~fJ!VwyN*c|eCHJs*0OWvFFSTC8Y`o5!(R?Q zo^NjAjLVS?bH;UGHU+p5Ph0J}I2iw7jDwL*h(Ot7N+B}}z^@y~ed-np7~cVE^>^5v zxL&YjO-+j#L@_rohrVQId*r2h8rTG3m|Jm9Rr1ONcG$ZUA<*qJH74;y&pc!16T-6= zx~+(VCM{F8bDeAbxEXa4&q|XG5P^%A&!PH4UgfCdH;8GQ3mkt$=luz>iyL^mYKa_@ zRyw=8u(Bt$omJ99b9a}twDb$dZZHqX#Gw{NoC=`vG?Dcj=@&WPnJuW5WJB#RNGZ!%X66fPPtib&-G>=f494%rFY(;-3~NQ)3{ z)DKGa^J@$?0(gn5Dr|5sdwP5n(3cq6U#%yRudpCWJ@S~deSe;4fG_c5{@})) zGpUxV(3L=3cF$2&X!_sK{12C&i9jVMDPCQ)3D=~c6x9!k8N2=-n{5#ITvPA!Mak zKl5PvmWU&-b`fuYF)v_U`X#8_HCI+jlcQPHNZf)3s#7TzjP_ib6Uw{2y zx8!H%u_$N*(xlb8yls@12Yg!qLK>P{;rBtWhae%SGC1Y3Gb0gK#izp&G!wY>F{WM* zcy8b~0);i%`%q*a7l(kcrd0dK`Xz)lewE#JKUA{!+c&xERuFzE&P0ZqAGdex8RV`iBCPo)XuWInAe6z1^RIa@FhGvI=tsf zu+==~aZcsZ8!ELSTcuX09DJzyr~2FlF4vwJ^K7_$c^1`@`-`F`?pTa*>#iHttF!M( zjp#r3`QBZ-v@iDg{k41CQqsQ=4EGMKH>^5eWmQWh)5Uo?*{Pu1ErFUS0#`!Z`V43w zp2*`?4lSdBi96p5VUHr`u#1S=>mkTq;^mbmKD#LlU};Pnump4U!@wV{;A2Bd4uP4- zoREXf2;GMvd54;4XXHc)L8QRRza@@8j;5>RzJ+q$gAwcB_r+1c1aux6BX zgB|4Kljj21x~2NKL7VN)Rnwq@f#U&u%bkcnS(Zoi($W&Db()BQ{Kk|N*x1mHa5iqD!nNW) z0!~jG*f??h+75$dNw8Tvbul%jW$`i)9nyY`7)gA89T@L*Z1kXDYUws<;WweEk1L2z z*}l!k$5AP@ADTeZ^Aa_a^7`DLvD<>ND!Z$q~LWHSqUV&Dzj6t;4 z50FiSxKmHxYB<*Y{`fRD<7B7W|FNDTja;-Wn=4jFFyVv2;%A1;E?dcVE=0My>3u~SK)Jrx(kff6I(Hlk`lRjbab!G z0vMKUlmc=4WLU@Mrf;F4p{%2X=fzmFa6z0`NsnAm-Q{+m#9B!nZ1cJSC|Gq>m+2DA zy%~IggZKgt2BPXyFN>q9@CBVtd1}P%f7+>rq#?(Abn5 zK75!M6MkXp)RX3l+;P6|b9+6SEk%In9tm`1AAW>%3PldBW?eDmZotj@D5kxi((Tq~E1{jHWIa-w1p`l1^~K%X8&EJ$KZnp7bdadT{lxxb)N00nbi5*~DqZ))&fgk? zPkuyub%YSX9swhYoH(6%W8ge5B^M*Zt8+Jvv)+6su?v5(Ca&q)YTt7o=_J7>8tUh& zWM^kLRX}d(#hEOa^ENdWm9QLqgQA+T(rP^q&-)AZuV=Hg#+1m1Xd@_k#eyWp>b@My zUnOO0uQ!z(igf+be>Wvf<2pbV(VdIGl;yQ6mCogKWdVVd~PrTRP* zgS+zY{PRiM-n#~$S9m^0MAlW69eAKs#CR^pFhvH-4tfT-?DaShUadrv#QV{(NuGWspkhtJvuhN zRzDjbrv^IAfZCxth{(>#xsx=6H*3{d2?yar7f!#u=rbub9#vFgf^xxjplF|Nn)_pG z%;ehH^vK$+!S1@6s(C>#lE}0fMPH<3Zpabk)cew;Rsz-VLuhKS$E*~w*B5|`id1Ts z43`G~z;r7K(=WKTtR;uY$d!je8T!xKS^-_o@a4@GQ_*n2V%SI&qmJ)-nIjzg{P|jJ zAQpdqBD;64GoUVgfV9~kJ``akN7wyT=*$?FZ{7n_j<0j6Bh)|bTjj8pkw!G{auQ0y zt}M{bN&tkU>aD!WVt8=`-^S5OvF>tV9>b0RR{-MxX0!A1VxPeCtUw5zlSx(7yJlOt zR>zNjUT=rLT+VOTLi|LduA55~Osz)DD4>yDW(8X6P-(O0QAj@E1t0R(=fd7U&r0$g zd(%bA_1rubC~TslpP0X)1E9p(WWBKGN=TcGjLZOhck}_J$Ax^qaMy{yPHwrxA@H8L{cK1Z8@6Sq_UVohD%m)DQheL=_W+P}fM=0_ds&3e4mLwk?zocwJQbAY#jhL5 zqQf+k!hvyeDxk##Sse}0%QKRkoSY(!2*cf5jPyA3;nvxmB6&uo$f7`!JK8Luxuu0y zQc??Q#-Y!|ZYsB|`S$q~UT-tgmQ5x&Mz(Mo>dI_BCL<^>H>}& z7@T=FclG+|KGc-Y^nVaY!6o>YrM;wIQmR=gC0gT#G%a{c3NKi>Y*`QneASG%3}}U} z08$N5G^ySs*I0A8l9*6gxaDF!YB0AwESNzzhz#KOTfA40pFcL%Yq*8W7cGHAJM_DQ zFljdc4pt2Z;v5gtgr+%chCTluPN;J=;OqYR6vhtd{;13DeknQ%2^yxLhj#gWK%FhR z+{A6cHV|7JKpM5aot>TCUXth7@72%>ZohGHBAfU*Ffk-e(o#}t7wBH>;%eLu3`KHc ztUo(H-&*V)T%$rED>L}>+Tt0Xyjt?we5d^KXHh+2fjM-kBdDJ3k%8*w0Ah_B-CU%U zfE=31)CI8Bc-Q{`4K!`UvOm}_!Q(5~FNIh%UvKFqdh9d!Tpntn8=c33<3PYm1=n`S z&M!nSjk_L7UgBh-Y1Mq@Uti?({}2S3=8*WsqLq~HzgL$aeQe!AJ$VN*Av08l09H`Y zBUTKWj^sZ?p8Bqn_1OH**V^=GSz8yVq3v+`3Q%~WU2w>2C<=zW1YMFpQNIIAevc+u z8Vr8u7tS*+w?e)!>ihg*D09`+MEpPNLLuUxpE(Vy&j^{F+m?gJbXZ2_hU{bVsL)&NC=pK4zmNy%ycb<^J?*u;t(WN>3gDxPa!(nYAzkX8 z00=`3u^e+K)vcQ3aHy;0(HYpNKTAffKXvriH*6VS#w(Q{TlEt&4wGST0Q zF^qok?b|m!jop~SWP)QLm_By6WmMH9ulBhGwqP1!-iNGV80YChnUGICfa%AX^1vJk zp*%vOV5&)VoSBfy%C`vK6%n}_Q%dkbK0EevPU*q&+s(g!D((eb6S=1S#g>% z;d+6QJ-ZbHC@D8wT?g9-52c(&{IV-geyO*mfkpOl3h(|4;1i(^t89Zyco_IP!eyn_ zwZ+AU(J1ESPk@MRfT?9Qh}k(}dBdSNQ7XiMsOtB2;*+73)Bzqe-pMG?@XZoc>~5s z7S=J9xJmJ|rD5edcCias)0+_OI+>E= z{^KXYNA31b^;{givqB}eYTTVq{TU>Gm8<36*VWQm z;H{$QXhXhHhI=`iE>%m5Ck{h9B78ZjJAy$ZuCPI=>WQtV`I5t$GmcTdg!_2jLT@TY z*~<{_AukV)B2?K5VK?8MlgBgt5-KTNa+!{C;2n#OK6oF&K|zYTFV0I-w*fMYtY72$*#L;L&%vJ%ksG(wP2=kd; zK@3ZVeOIFXE>uy|(!JCb;1MwzJOnv*2aG{XQkk{Dic>If9I84U3lXRL$;UmyV6v2h zci0s5+wEL`1q8qEcn_iz?21&B7u(1}&Gk76ytIdp9tESLm64NE0Y_XX)JM9Uto;*x z!rAg*0MoAOcOGsvAs4&B2q}hrg;JojR|jC}XJA=n(|pOv&NfWl&cm}meYCD;0Oep! zk1!M#lrZ!kKlPHG!u78dlqp6?wC7T#Y;BXyo;@2}u^819MtJYwn=@VwzBVaZatmIn z!G*RRMZ78|B>Z0+OKM0X)egkZDr5lq9Z7gIi13(ckH1zS?yryyg+iNAqN4U6cW!!> zcNMqXrqV@m!PG;#NsUtqr?9$1?&auQU%Ys+9&95P_k7P5l(CLPTQ3&4I-rZQ*0L+Pu+A z3TLsaDjFtY__V$_tB z-?9EA1EgU)O24CO7&XkTgJ%IbT7Rg?9H6|7{|Ml;9EF4<%fR&c7x%(heBR?@cJRwW zTK&{_)FL}t?42YpZ#L?*bMe5Udg{|XgLm|#^bZi!jmfJ6 zXH-?A46J~mm>~=a7yt;Nh7e%+4mGAxRg`Y}j||pDegp|q*#7-Ffccib>bDY)dp3bf zL~#03zB&O5`c>7{U!w7n#t2dEYAZTlvcpz~|KiNDUmj6teed-6va+u(%!rOsk%w87v^NvZ-bCP|5XGV?NrhdG!p>`yxF3!XY zW44LPW24YmT7lJCzFZHN!xPIanfZ=z^vf*nj>B}eJt{{)2~wwI_d*JZ{Qo@F>7k8= zmFR`moY;&#^*;}u)cEXNx&mmnKxnoRBm0yX61@B*@@x=nNAtB+!^q;n3Xl*U+`a2Z z;%L`wxJrb?^K_`z#KR!rm|x?Z)nKBZ%$CeHWu%L~S&hs)t1&`v$f& z=!B;Z9c5T49wXmh{Oe);?Zf@gM`uL>N^NqvHSIuLqvkR;ls6Svzy6GvA{xHxUufl$*Z#OV|k5jzs+y4Y$l$Nm(>i?2s$S^R1|sw=$dUi7?rTJ zY?tp9{s~y{*6!UT`i{tqUZ!p0+PwKNmnI>@$7fce>LqhyJI`c; zmgmF7#?g0x?6UmFaQOFUTtMKsTU(;1f)H)#ZoinAQs0khaOqqVjzn?@A*g*5ulrWH zW3aP~TWhfe{sg^qN52A{TF)piBD%3KW#2J`2@;@Vj=jFP=7vZ_)G_MrSmA!*3Ct*z z$b=T<8_@ji@hlT?e=r3666XlwU#bWv=j*Nxxhzy3ZN!iq26RNl>xxYe(1cmBUi#Z^ z(_aVSe|}OVjJCn}Pcpy0@AP{Wk0=G2+)TIgSHUHZJ$A zw)T0HQH21Txo93uiH>dCI<2!G)|t9$lo?E-BrGNJ+rOW3WtU8nuPB*W)cDI-b5v>y zL!3qJ$`=VoX&^GgcMr+EPetK{5tGU1s%7Dv==<27eW@}+@2f#3J+_$8*Lfy@be4q7 zWrah+yKS2$1}PPi!?pgH@hfA-8^Qjz)}DCSNCMpfFl%Ad87z;ioz&#QrmU`Ru!E?@ za5zHcPyXJ=e)2;8(}(7P)lDem@a&sTz@G?p#|DcNLV03joEFU@tkMUJuno&rilLsX z<&6Wxkc8YJ1V1oLPui~;VU!C`ZL%X(UZP6~fwwg5%$@S}qM~ZV>gz%)uHz%RvYFws z8KX!Bb`8FVHch1sr+LmW4KacMWZ!@x5}E>+ZvcFUajpNg2DFEvqOl zBvg95?6Ca93>dHpV-`GG0Giu+5fNr@y+z-UK?Wdrsp++WKfVSNl<^%zAy4`~La`Tfh?<}X<;{W)F8UFZSlG%Buetj@s z=8c@g5M5)ns0_x-K~^JCQJcqMHWjCU!a-7On}9%mvz4#5TSWdoto)D|MQ7hi>U$hg z_&&48&)diy4Ptf~DNl1ZtQI;Q5*k{HKL`SrqmilWt`z{y@dz}n@KSl`w$6lOUo9(vkV z#{p6ehPz=&c!=cB0GDJ9SF=>d88-J9KgTq@~x3i&v)w zmJ!Ru@va4FX94Yupw>9quzjp|HwJqz}Ne{ri2gnx-A4zg^j>=Qvs61tkO3 zO!~Fs7PI6#0HeL|0YY$BK6szgs(@Pc)E^n}z}XzAJ(q^2)QUE}TOlF!M~xYEm5Q@< zfBjgpK%Vz|Q+fUL&-V`+2RR^44)p<`9i^XL->aElP*8!$7z@KIjpXmPWND@qj02LS z521M>ycN*2)!Z(mt!sP7`fGQug^X7$hH1!6; z^Fl!$Mc;QDqObuRhML=459~3(ehHyeVHpQj<=Hx5xHW>9U=ms9U8!AB4(X(i?q2Qs7Uo}K?B+2q6*c_+dc4EI=Xhq2yG!`fh;{;L%4%;10 zju7srpH(0^>^<%&nc!i?&CR`G_3Ae+LwOa^iRa&?9DUmqhRnEt0d;e42T?O=ev+5s8N^s4{+BT^$}Oi19E~s6EUdF) z%oI636daHBEfu2%iy0aHVOrPyq4;&7e%Hnwy)aW(_`?C-I zx=}{oxOPnufTO1E<6{=;>Q$WMSUgpRSLR+}Yd6<%UcA?r_h149!jaGrT2qlyEb1up zGl6VA857d2P@=t`Q~d|E;r4~um+SIE=ztIg@3c7kDtdOYMe#${EQa~{_3MIX&?Iif z`ge%}$}Sob?>zStARRz?B-L=WXIng+9@Zqmgo#H?Eb)4<1)EHwom;Rn1)TPgliL-tX|?yt$`^>QZj~ZQbsV)pr3x1qB5ibw3D_j4wmz zwCDSZcz0stvF%w}!&r-`A;8%%E3glD1JR|2SYGU2P0DbbDwC<`jtpXiN)LqKI=62S zI7=kHX~%j4(y(Jq7JFECxhgLUos?mW@O(6WzJ(W%26?do5OmGpP$5V2;Kbz$7XEv1 zV?+7#cF@QsIOOJbgs`x&v;HtDlzes7mdi@5=Rv)UYggl{WuZ%^4(8ue%P#~$%CBm+ ztiWd!r4^v627o+Yeq>?OkX{2X{jWdjwQ}aQBHf zIb4m}Ox6+fDH6h^#=FKVG%Z|-uklK}65Ew1=n4TJ4x;!aJ??G$8}O|&Ko%QP9wHKu zV?O{q+W)C7^86dvz@xhfU9ii};_X{hD6xX8G3#V$xSYhqpC_kP^^{ot zw+fMbdAZe%@)du>7B-BmrLs6YBiImzN-wsmOv52gu4>EpNgn=orHULWXPytWx`W=0U9iKLjy z?-A|E`w~pu)e>+iz!<1kdrf@AZLt>8uF8TJU(0D{=DUzf*6~~0k9{E@YEzEM8;Vk$ z_jH_BDqMRZK~>*8$abxDyz?;C%W+|zu4V7`{y8Gb8}jeN%&GINAL$h0B+)c9hjGjF z2avZW61x=b?%OEE0?$OVolhBIiI%pXgcP}#icT2RB6{j2hj%FrUqQFKqAPOeGKABWz?FC!y^HDZIH zUTkEus;5ZH!FKpi z$Td|{1@}b$k~srL##Dz-dF@BdwVr3|`>r!>t*fX{>S;Hen#ZtU{^2{%+1neQKAH1^ zp}6sOR*=f$(Sk0n4Y!U33?$+SA0gX01pDS!A+{@~&`^Z=;C`Eyr zcjH<`$*ken9vIIw@;PU~w_T?D zjcISl?+guk<^^=gUcJfRy_3TT3l7rnu)4hKA5myYK2rcJXtXWS0X#RE{re*;_W1Na z*tNuHVWHQBhq~{o$4A71`2fvbaB(>S~m;Siq z^^!G!B8Qr)qW*8}HxJHeqOxH#bwrK-z}@{zsprdi)BlQfXNGs5wyG+ZMR4+YiEk(S z&HB%&7!^Icf+E4lr_6gU<$|RhTRsG|5T1`l{kIhw?_=!+! zZtmc^1J}{!?ZZBx+fv>qm{=BV7}XX|Pr78m8!$D{pSr`pG7aS?1=>*U)T3l?hEKLj z4aO{|Od8Va7%jHUofgPww<-g04XMw4nS-t}R`n>;-5n`z5c720DbE!~7L8gc?P{yd z`8Bn+_`Qc!0Pn$@TNCT}`NcUK=R4orl|=3qS; z;9x;mJ{-|B1liSlGkMbqOr}+Us(rdGA%Fe4_qW#2K)p|D(HPVKEmh>?{GEr7&!B76i zva``|Mm0Z2xfHM5@K9oydA18p@Rx6CLy~z_)Fy9gf-LO0XV0NA{FLvSUDuPMM!zNY z#k&{0;a1*5OFN4Kyz{PZyW_*(nbJ!yq9c*nS zq_KYHUDB?+1Y*WAu>2pQO)xMpDt)y)*JE(@r^pQfws8?1DeSzDU=pTlJmPEyFge90u-%odly0 z^{@VrCy$@OY!Q&sK?UZ)pqAUm@^FcKX6x-m->|{UxIR!P{X#p$BWnzwT?=5`XlF81 z8v{0r8u+quqRa7*XV8pcg|HuJ#VhSPU)>J6zS>hYV=Ue4yJG^n5FSp>rv}_72lQAr z?(p(>Qk2{D|4RGvK&aOD@tbrbMUoVW5{g0*MVL}4YgD!@p{yCon!%V`Qny5@ls!VS zCCk_bEmGOD#bA`OHkL4!G5nrW%}`zU`h7qCI%k~op7(v;=Y96&oJgJeus2S?XM7(7 zlJg{?TWNqtArl?F;Acz&dzI&?(U!I>U)GlpW&CP7 z=G7GLPA8QK%&fH#z3WncLLV_^7Z#mTHZ!-iOoVy!utF0-j+RlQDK8n##m}I6i6pao<&k8 zBAhGtq~;Chgs|NUs)I-#b@o?7OOlkVT1|Th$3a7rR-yiFA6q6x=>GCyL^@s-{yeWa%%o~$W?k&d_ zLGda($KA5nV-F?@eJ5r{Aj9DG6qXA5UO$zMGRz$s^&*M=rj&A&zyHi6#v^oK*2g|)-^ z_v}-14}p~lwz<*V?^OqsxX99PIakULCdE^#`jUuK+b^u4_!cW(Ze?|u1oZnp!`Hy_ zc@^SMl;r!%DL=&FUfAbQU(5OxN1pA7;P!rYoi}aUlLnP7IP=)#l*^Y{l-?_0XuLn#Py4*^5B+vMYDO96ox* zbF-^{+Cx*`x}mizv=k2A+%D92RyBuEdD_%_5%Bf4LQih6TA7|Tb?5v*nMB{u#YsdL z^2qhMLipUBB0~|;mbPtQDrC2UViN0^eHB*0=bfRUkwY+iALgq2oLupiv@Mtm?YM?w z6?WSRlTjl_d83xIo7lO4@ft&%jbt=tp%!Sb%`RQ|rLEeueCt_$}dauQ3xmc~Rk% zJjjmknK|x)Q~2V0_WOT3<*Ud(zjy}Rw1U}-<2SYR`)Uq4v0fquGAr+X4{;v&zRobm z>#9Z3URoBv3GDEd`@uaGU2mnihsw zP76lWzTNiMD`Ka;@TOV=a7=6N?XYa&tNTCz*VY-I2`?vzrHGSv>5hhqbbAUs$I8ko zi4ST8l*>#9ODqk*m-~V|M(gvTVVaChc8@b@DmCIwDJiMY1-@O1@3dS(#+cUh zs0+o-p*gpx2Tj@B(l2s5&_$@FUx?4p9~PIk_%4sTa7%wln10neR(vB@}V->^|a+a6n!|m4<$*L1@j&PlyLjYWGYl+;l zbS`cMWXij`YY9W?wn7^%$5xE=!LA$#tWCe*otzFc3oUisnof{-B{2)(ed$ z2wK;^lR_ycZ59Vx7Emf$uMx&7?+@-&oZNMEr*94JERBYtVl z4{oJr{YsYskapOqY8=REC}-fDMbRRvmU& zH2hI0Nk1+7+LyY-;O8%1cw?R=Yk?Ad0z#1>4x}zlo#z0M=}W$21Ee${%FxiRl0)wc zN!_@>BV8h|dlP8oc2M5kjYLR<0I{l+s2$}MhF~wzg?umC%yF}`9N6(IZ4*A(CPoe) z+=fYCeSLkcHok6+N(!EtJgI^B!_oFsCNul z@dB%=E=6)nrRk+ZV=$^~+j_Yt9&TCXR?OuAc3_A8`^F7DUENxe)J4x>q*V2N@ENRFR|fOj=}U=ws0RNoG%?(yFJng+WdwD4I|@ zqoQipl;s4tj!%HokY*Bwr}dX8yFEImZwLh(XkveLy7zXv_W>h%59;UBj0`fVyqr{N zQz-caYDjeXYMTO*b1aAqHF{`4MTO zZ;BbQ;Gj`B<@ruL^9FG%yBsV$7b>oHioCQ&KM|LZ$X=8Nkyg7S^4|32kNcHnNnj!( z60*TY!J}KoY?cy{rqIUgh#9xbp*flr8hFcN5WR72NJIFia(eTh`E@YC_EM&PX5tEt z4{pjnx1PAnQH8=cx5I8b+a=~^G`HxO)t4t;Zu5E9TIsE@Ypm;nQNa+#p|UAvD#lwZ zX^Z{=194$h(Ihi}A9*~mX^lF=-QE0IXsgP++Gy3_9IiU(nOQBKst81KmKf9_S3mSal%bHVK zTG}Wt4lK)Y+0VrVYLdOOmRH#np0uuGQwd7*wIS;fiX3}EE4?y>X$Ocng-H*Cpb8J8qnf?3s8&h0${dY*GrLl*axlVEC^<6)w zy1k0IWx&I}fD-aWA2Pa?@+?zV#jZ-Ct_iu*{eJ0Xy&38?)~Kx#n4Y&ie*m7H({1^7NOC$Tqnm`Vig7K(=AfeR=$KoZPEtfWl#g4S-XEauVLL5u^u+wZ zt(aA=^+WpL7YOVv?7vK`c+(>=wO1R%=6r{@abK0`(D8s_1dnMGX2-sCM06O$_gb|x5iRc#dJdNeu!acS~NNP(K%@I z)BL~+whlzQ$a7X}=74#n)5hwxA1GW2+v@X@o3#x&SeG3wdm@KY zNs6w;bM{0jaCk!o2zV>pMb|fJ1hq0Zb8&HTgQ_q}#nhKI+FW?GEdK^Baq&oZ2}hDc zU$(2M{;^9$JP^WMZCYyH-8090puRx+#w`BzXyvq-J)VPOV~s{&;+1#Y4t*8pT6zDO z6;ywh=U?2QDh;QyP)i(>{f7YTv6X7BvfDM zjq&s2=e^=?9ic_eaC)(+b?TMF<44I)gfIW;-+L*w)ZU=cTt2ln-A*9*qh62e3jDy< zme{}$?BfBs?KQ6=`0kv%oj@z0CiU%ZeyFTzc>ZPLm!6dYok9|Cn+`329zKDwRnkYa+*n)8}GXbgNPRL=7{kyuCwDbn-qx;ls(GR zCu@~_jH&9B#y7Pma%i~W1e-cvXM6r&Crrfao^L*}>f2162Q7RE_#6M|E~RhKI01q| zim=Q6n6qWR(#*UHEk0F`WC9cvvKmUZw`OW{O;4Mpl#iR;qndS4Z4K~SFcEvQTEpAW zNLncrbn9E5ERy^@{NZ$!KwE8TnQ~2M_;%HZt+JaA$*m~T;bAXqzf#(|0*}p^vefi) z*Bu=_qH`qg)B9_6(uw}%;~SUyb!9kbjQShO>5aK^qp_c266Is7da}eg(T>kWIaL@{ zzWy1RzD@q9HXMo3OC3MeQ?@b2b+X{YxIcXgu^W6jaKgYC&ExXo%4$WAbJo-$2o~G?6s`ZW)5%{_XjK{)fgym^N z8E5_)iC@v<6&{)UajRdw6Yo?*>q*!C+AjSnm7G?#$i2505?zT>gn*aE#R2MbPeJt1 zl2Gv$wBGq9Y4MSgw`La`x|W|!x-Un`6o9G%VuFIvLp*(cLg3nsREbFmK50l)HXKUq zpYA$9?0TA_l|;ufyD`c1tsAxFDFBv(hHji7IYpW%p5m@2qQjic04AGfVEKo$u2qeI*l; zeGvoJ_Szpn+ZuWyPZ+b!O2t+N&NKiWu%U)G*k6h_`FhxO=GN0yD|}Abj20;uIH&5y z1aqt#pq&xuu9^w8Q0C#`Op+Aw((CY&^x9(*UwDxibAo|7bMKEBf0O<7168bu$(Ew;$t5u@4l*iUUS#(;33>} zx|9Dj!6iXVJnpXfKF{I1ZSoIJ-X=M`NDx=9z0@>g-N?_!8Ji%9)%Di(6sR|Mf40Fy z&N(^z)0F3}$tYFLcS}mcv4=^P{mNQrKA)jD2bz4na)`ov?sZ4!YRYirwD)M&v}cWq zd`8te|B=K;$<-rirtj3viekk5O&{QkunC^!ct@{eiou@i-xYxgBBUttL06&2vl}(S zg&A%6XR=9T1-1ntJp@an(ZBofjuea48+cQ_4^lIgFa#wtS{&#f4n=6z){!wj(_@E^ zzTUVYWSYDzrKzyNCsosfFM!u6RnfN9cq~D>lvqU?pR6#-G*74P-Xe84WIg8QpYiNL ziD#TE*W9mdl^(NttZLy-kades_2{vqxtFGiei?HhsmA)7#OaxH@-|QGrsn2dCKj2F z1)!zFrD%Yz=U?u=s&jSn zbjx1q1V7cSJ8vDfI-78RS7l?7in5~j1ee>5#x(^GM3uaIg9|sayO)R ztjZ)gB_F?G$IRj`?R1>i!ZMF@HXhx&wK%{B?E)r}KUbN|J;>2LOMurYJvzp>;)}<~ z6HlEZer}z2Yyg#?Qr758_9rho=jrJpcQAW7dUA<^%jGEibd0vXPdqnKPt3AP7Srqr z=5ZsxEL~8vJQGIV^$@gcqcbh-OrGT{7bM8>5aO;Ah^u*5Kh91e+8yq)+%*)AfpE5j zXJJaijXo(Un4Mqt4y6zu+viKj<7aZ^8(w8cN{p)> zN!peA`XspnfDvY&-F2ofJus?zEbQ*1N12Bmj52kMj34vYGWY#&Tbd5myz6SUIT^=H zJSB~zk}z#;(OLKXvK^z?IYZ^leV?mfSDaW_B@3O`(O{#Xil^K(%};6 zSmk9h`Z=uzU1Z7H!KHWYh>>R6=LE2BkNY>==?o+mhtA`4#=T%3zqnX?ZdB6B!El7^ z8cK7`Rm$o%9X**th>3Y_x^Arj)wWku%kZ(QVNqmpfBzfu31PyZ;pO;({5R9mTje#B zm3LmEEkxS;rUXaB*ElSsxqtfFwxh>#ydhu)LX3_>mN7Jov=csiIEU6(k8!OzR+dz1 zHd7~cFl)J0*mCcGjqjfUv0!%*+V{aZVtcm2rT{p=G7-s_p87u z*>n(my`0oyZ|PeX0w=pOrd|Q1UMpRQv{;8u*yy@Vn9OmhEm|s@qX#_F`k0n7kq* zmMlbv0p5563Dmqd+pZ09El-_11ueYgp&Z`{$Yy~|vlBOO-c()E1L18D9q3wD+RKL~ zMVLJf?l*gELRI^clQ0%g&xaqO46HC8oipjVV5Ez?KYsJ|2Q3w|HoRx&JC$h19;1(O)-aF zU3@_%=x(YL%KfZEy?gtFo%X)OhSS_{!<&7a!p`ehx617FOZkq!P~JtXqT;xwto-8t zkfz!Rz~cyW8oq^|^gXWY3`KP@=}4OFiY%!4cOoq&9^6BRuiOd_=7wr{=Sx6OGI3K% zR?&62w;}K0waN`^^&8cD=zXI9YXhoT;G=wtZf=|lvtmUYEn(+ zI)6*`O(xE#!FalGrIBp#|xH%h=hoy}`0X8OGKB%dXBn=c%At<*)kq zQw^X;At*36>LnXIc=zs|N-CmtH{%`CpgyIF65`w}Ur?n|_{vlfrQa1F&^O69cx%hG z`0dTN4)z^>dV~1Vuj7wgKcFcnE4f7?UztwGt{l0%JVq#`lDTosEX2M`FLy$0KETgw= zO{`JMD@d?f%Eyh?CQZ2YAPUB(1{x!Ac?uqEAuD7OQ74O#hEk0H*VaJV0Xl3 z(V)6ER67fZlo4ua<2n>JXF0!&hQRLIw04TauuV0#;d6#%mX(#Y@b;z=77w)M^F%>8 zHEmu_^Z;wDCgU|0<06#!rbDSkEBNUn&HfMh1x10q%8--h=VB~vZ4N57<_ZK8b3{^0 zm8W+=@AXz!?dN0@u4V>==D!HCUG#yX5vV=NE_QB*mG=zUMlyaaZfCBnto#Vo{?9?##B(-@$N%;uYyh*LqV4`1 zg6MVGjq^cqcI~J2P&tYjv9-JD2!irqHsaiI>+e3agTp~;6s56Q{EnJ7W)*s1YeL2B zd-G2CK6pN>T3*X&FhCQHXCgnDgsjUBh_D&3>9ERJ2SuRy>rLZ9nA&M%w^S@BQrT>0 zwY|c1#?t1wSZ;*M@vi<@Da2S<&?+26H<$GG+N~E5FmoA!W;gdDBMY;^Vv-in_G}jT z^GzLhoP`CSV6i-uvG0P_>NstzRbGwF%eQaUz6=Z$Id{K*Z-C@vcu$C7MDbkcfdfZY z&;bThP2_y1MUMrT=ZmL2kkjR!jXuPHOFKU0!& zod_{z@DCTLY~&p5l5AbYfJe^l;mgP##Q^jODv8j)!z#b*GMK?%Qx?-z%QAZ2XQ`k~6~!uZ)BOsn&wI?{Ds+xXa))fPTJN>)}@7N<{dPA?=ac}}LS z$yT1Tc?@v=d?DD%^qkxi8Q4FII4+y3&&pcb+l$M}$;Hx!6C&M$2)c1{+{Z z02GbF1I7!OtvujF?T)1;v)=`rc=hTP;6!lb{s$}B*w}VRO9vnKBp30Zizu8njL*-1 z;gkaKZG1c6H2ZyhE*lx%^vukWni3%)As!qBWFDKPEg6F>cx!Vt&&`ZOKkvneHi%Hz zY&Q|c6V>`S5d7Y^wt5d-2dU$cUXsqXHB?WZG&vshK-MGL0)W~CK&@&ha8YM0rah&& zsmXA!_oNJ@@<~pg1j1{SvgY&oJ;4xwbANqU`~nWIBGAc!b#Vc+6IgC~3UI4=X4|%H z2jXA>F&Xjz9!xTiYSY0hwVFxNtnfP2*6<#bFvHSZS1 zkkgeQv9U#IM96L5?4lUc_~in!@IYY`oc&dI(;#+c413PWX)rtN>eZ`{8vB6M>b^6_ z5&>P((pncVPg|I$Hucg7LyimL!$GTa10$oqp=k!3fE|1G+z-pgONzBbCY{UQ_S>%f zLSzL|?TQdDD7l33AWmtSOjyPHmX_;kapyUWv^`CWeE6XR`4KU`w-1tJaeSQ(3&_o7`4#?;rzxXk!` z@lxhyGaEA#lK^PZ$uZeda6x*5vd?-TT2o4bVE@RP7cm(a%JS(X2wtRNcMN^5xD6}_ zP~X45LMD@KW~LGoOw&rCRtd(bchCVa%1hc+i2m&NxdwUT^bU+4-AC!_{&NNhac)Lo|)Y3YXWfWkMe$ODRl<5OyuU2cs>_*Ic#AZO` z7?Yj-cg|nM)6+gsHvd3u&0%8`u{$w(Ne6R{wUR5Gfr&>Z4D|mpF$N50FK{d$+#F{W z6r4H>l!t!_5?z7U#Ljc|P{GFngk`ZiY8EMf{ru>>TP8??Et`leA~K|Tmn}{{KF}_L zFP%W(PtofOP69e;X=Nn>LU=4KBS9L-TV?q1S$;h47G6F9w8cQQ&y=w;MNXTgP3~@P z5`U4ct*x(Ov@|sj0&L;1y);@funY`SP(x_m@#z1WSOer`Y^s$Z-?wwkA+TC55LKdA z*EgC2xp@Ex4mKE8n*J_hD!*U+KI~#9$F_p2Bp>Q_IJObpwbT2lAi`*9Yl}9Bjb{S? zkh?UyIrD)y$PobMRYf8*kVZ+c+AiyxGUDkusS^by#qWiMU4y&;o0%^?rofjmDhmG% z1?H#QKvMkN(-T3TL$o7<$~w(Z^qYBjcz`GHc`GOf^0DE&&h_@ssv5u17&@^T4}^8$ zar7~L!8SV$wLV^fRzjL~v#{9IJL-8`P1wqNC6L+0kGC^cH9v&cA!0%GlT0=GN2LsK z(0h6u>Nr?>c};-?dhFP-iw=U;39R_8v+b#~;sgB!`s5g>F)o0_Wi!)Zj!IIuaqlZ>I{E0)8u^GG|FL{T;>%=@)`8;L&v(A{!V>k`Nt)ZYzl1 z0mVeGr9DxGerD(S9`z>yIX1iCpf&IG81p<#fJb{(AMT^mBOH1OI|oNBf4Gvoyr*>% zbV-9$-~-Tekt76YvSDBIEbXMv>$k52>A<7c*|mra9FAbiRH;=^P#D;rb79zOug}zO zX!<5k(l|pxq=rNGmh{ihyLexe2s|piLqwB72VH~^LO}8!Gs&Ex6=@Sp1EB_xdj=s( z5%zO{^P$81JIdU>}}^ zDcqcQrxRE=w)l8cv}T3=IYa%t zh===t>8?0dy_k+MC{@HBm!6l$OHRwic3+qpKX+R#?gmBowh}CDq~d@oV`=kV;PwHD z=g=h@GM><11&T}!yOO~A^clBDxJuVX?}0Lqa+}ecF6ZGu_}iWT@T?4OL4% z5#)n_w(77y177o9;Cx^TW5*iX7*FuCfetG!Ef=7G z0{hG7{7#s@zdwQWr(+Rq275ufl_g1k6i@-QBM^`*F&G5^ifCiz#V>c%gx9QDV*!@@ zSQ_^kRTy0%>vUAg8$Pu5A83{PMssBJ_l-QC;W$Xrfd;1|! z?q5#7{d~U8E^EsjwX0dno+2jGirk)Alj+x!w@dMli%eLzJnjD1M2*K0*&t?!aA-jlFN62U9yFJ2egCm`r2t}X}LpLSpc#D0&j9+_gQZ+w(jB zQZQ#A22y;#K=A^xt(97$NFVzAmM0+W0kRCVOaT~llImj&wsjtTdB=}PfYxO6$L71h zc>xf*Fw__dif}_eBOXV8X6j#+t6@mw6wHhbQ3o>h^<8q%7>_QJ_href67Y2pm)$_kKa`k zRsBnTemr$dXU+ z7vDg*xZ_wTcm&{-jJC-JV#!|VhFNvRdKfH54e9ic*?z<7rhv3UAq0I<>Oi?DmNLVWN3)5n7JV5>5<4w=zM zw_me+&z`G@$&Ew`BtgGKoy6m*xk9BJ!Nom2wwW`imsn+le0M?1^N-3C=c!VfM3diV z{o5}QfH>}*59wwFFlh`A4;y@EhBjHvQGZ=q%g1*ut#DEdqz>nf_Lz%2;{Yvg60~wH zc?NWHj6o-VLHJJ^#Uz&78Mu79zfF)25TNN^umqi!E#?IKVE}l+b}J}g1`5C`X<%Tm z_OJl^n*_jorLO*l1zk3&7E!_5Plaw?|M!Kbud~7Fg5g$IDYHt^8e)jQD z>`+Z%vzdb)dY=U6Yx@C~$ zi%J7#f)TbApwj_575x1aqh#UGWbBbMp&t(k&br`DAA-K_?;DN^0gNwo}Uouo2u}EQJq9IzW|6@fu0{;uzG=XMNRhjJaLyLWQ032vbL5A?Eslbzb z_~7_xs>xHe`DRVMT3^UeSqGRYl=t0~uD9rS8ExLr{UlZZKy^ieC{EOx8XcrO(^WfY zSa$`H5+ftEl24#ct%OBiJnF{aKfgns{)-?19_@(;sQeB#-0fu#6Vl zMesL5ML<4hXXl#fCKbW$@VM>$OG-aOnLgT2N1zcLS3ZjUT0f4{&TT<{PSiJVj(9Fj}wwr}eoCEwIz!RnSE=u75C7Sv~tAVh9p?@K1gL;B&A1H1aAR4CU=3b~7gFMPu zFabibV2xWSJHWAH3cLZFg4G;2N|Z8RPw6Ylzn>(O8-kY#3K2h$s&TVZ>jw(B9D!1* z7kJZYzm-)Ct;CH3mx+jc-uoy2P1=__&7^cl`t)K~ekSJ2pi6nLjqhgvzTL&BC8^>q zZJ??m4l-HUk5FRO8yY8DM~}I!#reSCV<+EF&x;z2ddJkutU4#k`@5*7n=lIl(q%CaC|@1r%o|lWXCIG zDBDa6y(ZddkL&HqD=XQ*w6SlhM$B72Y{aO4M2eqQ5rl?EU8+=}#5zJPQOlP6$&V%h z!vH2Ywi(>7doO(549+s$M-PRWLO}K{D!9-6(+CVYF!usy4w8*Pylo!achE?!#O?DZ z5<@1T& z`O(S>3fF+HzMRHF(UEIuc)SW3@e?HLqXg~Y5E_Qv^H~6qB7nVRASI#o`xfKYvy6zf zw6QeQVa4z!)h=YW1=oe(N zWL8>g>MJBl<1x}p4J>ZX54#^Tw;^ha-fzqP742#aBK`jOV=3>E1N)9MF@Ht$u7Qbs z#qV=)T7pZuOgx#QhnO;6y*dO2e|Ig3J8DDF=}_Fok`?y>$npQpE%7?5_{4KE_@fHO zjetPCQ6)E1wY0Unnj1b3|2&DgSoSMuAevEu{{NhZ#b=(Afw0xEf9W3>5RKH`wg$21 zAV6OJztFkpU?=Lt#D(Ovw9?8-txTho1CUVK55W%>*8>B=2rVd;4Eypz-f(P|Mbanr z8$P?h@o&2yEcSy>Ls$VBg;99#U(wg&$K2Ix*~93@fuzq1IM)!pFU**&Pw|-CNKd2BD5Jcu|L%py93I= z6`*nAU+h?aGa1lVH#Ah5buCI5nz|a3#d`>9DR4CU^Rk? z8|Y8|3l{uBYpVTSx@~pJziC?kiSK0!WBy%9-0u68Scz%$>tvIk{B3c}v{WaG>0p%OI zi7ttXtGNWLBVaS#ef0iWApYs7J(U0&JIdPogI9N}MMLBkvUD=I(h-AZ;0DEBJI8CR zD|5nu0DLYuzJNh51LO04FVd^@1DWEOftYrH6#x~MM|3S5V aW|8^*L^lphSm+<{cjTbffz{Xw4dia5;C=A&%dM+2xmWdbueyea=x4tqVY@aK<|<|9 z21!aR7Yz-6te2gdUG<7_uEjlFs+~=8b9Z-tfBe>ljTDsBJGm8aZNRb9pD{{ExcMU5 zTl4G;z1<3NqMksAtS6>wrNyPDTJYEnKY>rj@B4-wK3&$(-o z7pUJ+QeRPvEi9B79UYB}kKbono1LAlQ|NSqk%{T*4LOEg$PmyUpV2D|)1FznF|d2$OG-abDE{qq}Q85A#HzRWUjO!8wptD@3ZG+XPd9K!E!>G@uFbv9<*qiA(N zH1PiY`)8bDoqtRg{U+)wDvIwE^n(ZYqKAN^?s2N4_+^|QpZ~b?x|NlmoI5dcdF73H zqsd4^qK1J%q_dv#D-yB8Ch#5|%js+hlH3A8;`ydYd27z4i{U*Vw|z!Gmh8np?OsB8 zw?j@8Js-tbb)5g6qZQr^0w(owr^M|CKNV>nW3^KE5j}9gHy|J&TmidwcSqjPK)I&m z-%lj_4P((QTlcpZlWp`U3mdyoOiWCSFx1r4JUIGRD#p?673ntJ!G{9!)82OLq=m}* zcqJ-A<T=wwyF{)f6T_A1HJ{dp+rs(q z{evBJc`O92)}3Ud+{ta5t7vmF;T8Gn;AH7{TGz$Amr)MUy1>em!Zg}4dwNd)G7=+(j1GY%hUi%xfT%OicY z%=GVGBjPD0<6ZZDQv2Ue`LhY`?}g`Wl}sj^KpB?q&6_tLno=%SMkSOQyI*K)?;-Zv zP)zoDRWYJp{2ycd{8R1Doz@F?$!3DPOyl6}T$y{LgNFt$s-G)-?NhjTx@)#wL;mfF zs#VW>9U-N3d1fcN+5e2}*Nn-3!!1McZlc{zk`Dc9{>O@zmX=Metx9HQW(8AmadF5N zef;E!fBySTJ7jlGc?`)kj+K0)5`7qmUF~B%JjY_KzB!uH7L#M41%K;io#hlh^M9F& z`Xn{potfNFk0>J|B1{%0J6VTRqh+NpWg5vP~%1P!NWcK=Za>mp!*%M`l9+Slqp6wjR9(UywXYQl9-`dpF z&)%rmLrnMv`^&D~RetCdlM5TwA~W{?T9@#LFi?i+)Ul`Nk?vz09vSg2C@8pYV^bHNlAbQylCH~8US7V> zfX_Xd4sTZ1ph~{Fx5~ayx$WaQJl7aWzBMWNBX8NR+%4>9<45_Qq7!8RhYa(cqtU+^ zGhdakgZ@t?%mz=cyql1=V`co$!2W(_?S2R?H21W3$|U!d!7-*ZrIbJgV z#8I-bv6-x|kyzjR`1W%{_SnJr1=HN zIj&8uqm~fD>@MR4$-YTG>mPsG9SpnuQQlT`4Bde9U<9yInU-|zzhnB(;)GvEg8YQf zSQz>b4Ci5mD2yCL$hHys6F=>t*ac=E>g2m9MmEZ=TJZH3CKdn3w>RLjSYUbG?GK>w z;4MW3iq6hX1kE~f^$^oTA|CzyV)EZyF$5q!mcUQ$P|s=Sh{TEv!@{`yeCd`9!##X_ zd?%uMBl{pYSDPRDKMcbyCWHj%cNQ1OKDaww5sDS?d%km#QbF=ps~_*rx;aq&Hd_9L z-Mfi9CWrobe_1#!tiFY+_M6>g*7{Y`8PtKMv4aIOV zF)`_mXywTr@Zb3`#Eveh*; zTaGz?f$Xv)qFRw`P0*qK--p1s-c9tKwz*99L8<+(EL$_$3Y~2}Madjx7S`FBqA8Rn z1p#|Nk`*;k$_m5Sfh`ITQ|jEi@>-v7AbSY%HrzNZHQubX(Tdy{syK+<5M|f~+lS=U z@;o(l)Xt(11I})j)N1EcMbnV{(F<3v_GOox`a4VB7yZ)G!Yt!F>G$M-_GvpiyNZ+V zCf?&6`O)K}?)Qf55p5uN6}@weH{ecmuU?bH&ZlLqmaORf9o+hZ6m4v5#@k;D0K(;2 zT9_MYjL*$I62Ga3C|mI2EFW1w?t#6%qwcdVdX69YaD$mxIW~p4=i%5!HSyWeH2W0E zoWEB!@swl!M(+alLF&LQM~_4G z^WW{%?^jl$?kPm{9F#C?dOZr;ph4RHX42_f@tR%Y54xZA`(1;O$=|Ws%Ac<_ zHlQLByxiGWtF@QYdx~tZGS$qYoUO~k@ZtYB-S=*a;^N}^wzlvtf6ssYZPzSdp71Y} zXzOu{eWiePwj2KP-0$jz6io!|2^~04r+eFWjt4@z(wT`J*Ci2CAQkL+;!4S(G5pBQJn{>a8*zYTyNwATRKW z2Gq$z;5PjnaTqG3CY$|$lkA?PqpK}k58b%ilzZQId}-$t6PFHMYx|t5M~uIC|N)DjN?Kb}@-`udhkh=}zZlmM6^C?rA9cQ9~$Z&>;}6)mM}2 z*NT)~r&%n$6VE4;I!m0J`#_xNSSgxauDTZz)e*u$c;F6>rCsYvHhQr^3V(n9EVH_3 z`Bq>D{h^{=SPBQUj1i(Ei{Og5u8fSfrCR5TAnf{reSkD~#9uCc&{mtwD}gW+4$lvh(!uQm;M}*;yU6U5aLweD`%jJpsZ(7$j7+&^eonhai2Rv5$<7s~X6=FI+ z+RO^^lWVr-%5n7S%pLgR*?;C(Ti5dU_jfL&7B6(Y@Oa0t`EU!_*8LHiaN{&ctpkKq z?{IzmP^4sgiYHK(L1z-*=^fnzhk&>Ljs_P(G5LBj|Cg`qjwk~XnWz2wC(Ev{LcTRh+WwlbVSyy+$F5-`+cn=FE3V|;faKy`$+;)H zy6^t0nw3Wa&J@2q{e{}BrejfbbNzIER^0q}&5+1mzy4U-f^lVX(YHIWo_%-X_;B@zG z#ha~j6CL=8RLQ*9aoKzCHYRH>`mkSy`#JDOz7$oH6IBN%fA7+~ z(bO~(Kpl29BKQwEtwzs$MP7KLM+0QH2Wi>iRk3Mn#^w3k{#u#%ffwxz#@DRQynbynx{J(1@r{P-n0NJFbd2uT2rj*dYd@vGze@;Sa1 zcFi9IlC7A6A3fKyrxcZ5D;+Qd`>C$Wjk1&YQVwE1d8z+ndcd34D{;x0y#jAP6fBbz z78bTcRyXuCII3U>*L4jm#|CSo_Ruj4KhzXD{QaaZ`(8ry zDbSRBH|A)r}A*Cf$0!&x>)iOYVO9jso%)YAfd{0ZusG`bGIjy z%R0%eh)fGeze1-8pW@_BPtm1FPXrl5CapKji)jb{y4M*;K6f?>IXStJo$g9XN~+I} zh>&g<=H*EpEM2|XL#*Gx6)5e#&&2BJ=G}n@Un>9hUT#sU0QtG|FcSOT4-dz%1nipG zNsao4L*g4z7W?_0vV1CNznS(`_}h)QWjVxpwr5|}xNzZ+wblP9pmuM=<>uxBmvZt` zr1Wgl92CfVZ=6Gig;ji6(E4H^tUtcc{ey5b3x-`~vdI3!Z20fd{r5JKMe)ZaS^f&Em+*x2HFlAiT`sPNxseY0na{LV(B z)!toorsRDx1Sp?m9-f>GNJ>fq&hxmDI4~B?0~dtJEU{Gy3TG*cT6EhDXzT4=&Y1C~ z?++e$^_rWdyDs(!rlzykv!6qi)<0*XdgVvy2XVZ%wiY^KUQNK^Z+l?t-en+k51rv} zmDwV6+JPZi^dz?$#!iHl`fb82{=-gcue@X<<~sFyfN z;&J?7=TrczwvqJXi)3Zd&-k(!Uj}&mGx z1!_LripB{P%6TLRXa3qHGf(VB62qd!J0V{*iuQ7l?dC@uxai#6HjnnJ_4!zA#a(-& z_2ssO5%q=qFGXOIYoyQJSCXk;|5a)6zbZ>odlmg$X*)|X<;{G_McyM41G*h0ys^b>3_LK5+NsgF-m zpv!#mVt0>~se6I#N}HShjRcC~T|sOkytU{^8Ak&Fb$+b1atyP+>{1~S9aO&txGVnj zEt5DokvWu?mI+e7Sz8^-A~|M`*$AiF{Y$%?7FU)mhVq1Z8Q=iY+apHCI4{J^CAp z+?kZ;cHlAY6FC3?I;|&M9ch?Q%cK}U$J;aaS=*rA?8)Jy-Ru%Z#BBB{Me-^LTm?s9 zfWBcMcuK`|UuB(OMqC^Zhpl?zg?#Nf>H|Oq?2T zAY#|Aq);vBHfkTU$9HXL{Zr;OP1KlvuJOl>xI0^RoIY{l#2oyi`!`gQ+(^Diqu}a;guk>BT3j1`qn{78X7g6&1r1YSFtq5qeoeUtj-Aj42&{ zsPXlsm*_WeiwWbN-|x`Z(=&nHpmFIE^H2=dE8#-dSvKY(G*%V7j%!ik^q#PBIT0gw zaBW!0wEA_7;TMu+z<=%VXdCWIUk<=oK(%s14nQ_4Pqi5h$6%na=+nJQ-i!Tcj(dB* z!`;m-?)me*+c{-jQe*nJ-3GROzya%nR$-L6P+Ju*k4hP7hh@$ArDga;I2T*Wp3Np_ zW5FoM{;)0zC1@3u#sffuHY+o989%3W-PcdIU9laABoDo=`^3U+5lkmbY%{Iz>WZ#! z^ziZ#+oo$fWj>&M!R^z|M)>8rNgLr^Jovn1nk?vu%d)I6N|3d=QpyQ!(`Ms^(@CV3g*z z9oFym>6~)MoaQTUOezm{9E+P#RPEO8QPl$+!3<+B;&y8d`j5G)e z301$`T=9ynhbaCbml5@FN@~Brvh(jIl<)l_@=QYXOZf`%>d+YUV9OFhf3`v+cI9JG zo5#{Xz2kS|(@gejlT#+OmKd3UX5EOt_DCTGf($_O7T-+~BDT_7?rRE2BERFqZY_R- z{OK>DX#BeYH_foyB2R9q#RGVZ7@LE<_*?o2BLMAq%!x~A3|uBfE$KCUqJDKg(=1(f zDMj6%&zZ36R0*~0cJ1U?P>O0J zPvT--6eqUf1?F@ACG&*k@|g@~25*y<;S8r@=X)NQu5^g%R7Q0F=MES;mio#H3e51P0V6A?hINr_xXxnpH z_$QLm`tHO=mW_B`&1bG33s{(@`t}q{Y879Pnz~CKauE}V-BP@{Wg1WqB4~OX8d{Nk zwI;5hAfiJT>8sI`S?TgZMpNG3cN2n;LoOI2I% z&V2oX#pLe?*}a$mw6~zEIJSs1l!$aOIJiTKZ*Z0FSwi{plDe zMpMu6AC0IE(R=cA2gN=byt9MDNrcYrj#F5HF3XuMgifA=T+vh(C@UCCQ3!xtMMOQ# zW0G3{zI<}2Qn@ejk{m`L@qvoZw*O;L_@S$3kIzdQeTMWGR^&*Q^o>7Jo~E}}_pvfJ z_ZHF5oztCyCa6h}A#LTjp5C7ZEA)?<+U!X4c5}}k9Ab`IULC58+kthl^37uV@2YcG zQUt^-{WTCOfmgsogL?GSa9V1r5GZ%FY)JuE zPXOPTazh0D*qyssa8`FaLf!>(DR3fsEZ$)+Vvm}SUH%(pRO8I}F(sSA;@j&b>uY}P z0_#;VAA)73{Nj9kH1yivka_hF0LUWcFnr#vl~@w6G&`gOoblw*pm-)){Lt_{4Q8@+ zyQ0pm4?X8K7bS!)zzy1cCX<@;kzl6u*BDG(-lXF z?c=?HSlJ}mFo{C~!KVd6nT>d!AF9zde z!qlQ6^vr?%Fb~{+G3f(D0v?(?nfuTRmG_V_BO?r8H(rq;bai%ejJ5ut7q;U1Kl`vs zT$H=W3Z@K;x)t`~x{cVQB(@ zSR9B>8sVVg7Eni+ne&tR!AA|8)q{?ZBY@``Z7xL0@~cHK)`W=$_T$NXc1h5-H>=X5 z=7}~@clkDegVuOy3`_2*?R(k8Nj{vORtEUzuCKPR>2U09*IV7)&R*D%b}&qunZ#1qXbpYaU3yZu~2nCQ{Z3@;d{tR^xh?a z@Xrl3NWYy7`9bl1nG0Y@o8_ZNj#PYlDzPu$FpA6s`8=VP;7ZxQhydS=)A->xFFsqF{A*stE?PgwJh^ai<5*Kr5e_H5s0eb%-j*3f1gk+}??*rjXFm}QD@#Dux$R>Ep zq%FUH2E9TT>ss=jo-FD-vDw8({djs*MwyB@c~-p*s(HP+iGyw zNoN(6)B5(^tApXBbrSYoQ-;xh_8N{x_>tAw(D9b&@vmMP@dX9PIIPqsKTPb#f*(wm zZWcmsDp(oj-GR354GqAB_Lku`jZ6mHEQ=!E10wzE&Iq!z6ePNFul1F_FGov)#A8R* z*Cj&!|BMzKHvBhbC5gIF~PY$V|44@IuCGbP>sSSaQdKgvk@J#YpM z?tD{C3!WnxW)zh7dBlu<;2A`T0VIV^kxQ1%@{WNxRupBU*z%)sF`l=!{K@rVicU75 zDTO{(T}sCiG2*^s-Gs^S14 z`UOPwMCTi1hi^cM;pT4oBPM))CQ%)}&)L;jF0!rrm*WPz+)*4X-b&Y zs@j~pq^bGXpYL-JB0Cqp6G2W++*CJ~eLs<({G10Bg81V=W#e^-*lDkRdMxBph94hj zUJ_@A)K4E5kC(B+vGf*^qO4LW~*^zB7wTWRyY-24i_t+AQH-lv1 zbk%Ou18B9rE#BXjH9sIa^}3h}-^JD_T9|%bzm)}zc92Z5kt(<@9&kb3a1oSp$O?eM znBhEcsoud=TX!$R9nEMk!<|gU={Z-QH&cBe9+W$VL$>cG>O2M|;^UhYtc6nFZX7*_GF!+K8>`{uv>@)ROBgVR0OQTqu*4FtF{;eu05?E_0e zLi7%8Wq-8)04JD{k&!o^U1I{;<@%0i1b$1G9wNg2e*OBj7dby=CO4)_atie@^_uCg z(jAd)b+!iOTp*Ntm&-`xI7BY(7(kXiYi`UbqnYjQ<)a?Kx0O zZ5mN)MHr&y=4Pr^%-*BC1f!4I+BRfEj4SJO?&fgray8?XNnP(KCFz5xW{2w#u|M*# zWlO^Q>4h$Lo7MIhk}mUsacru=cKj3+)xg|5={juOoT>#4|HJ(J%&3As_B++Fg$ZAz zLUZ7f4z3?3jAaJ4XL>pI>>K{C#8yxc*Do>D+uM75{;}1!OVAH|k+pds0PxbJ0o@aH z!s9lhLKJwSUemsfqN}9~#Z%?>(X)}4?{)0pl4oZza=BbkXX81hkCd;0%60j>t<}36 zQUEXPOTMQH2joma!E?t;;+pDrVU!>m(#Uwpe2diFXPawHn0YfSv&v+N%msPE=MKv> zTa=?BKDdkOoHcu>7273UUFlsk{3q+6pzS?mNv1%1&vM3z5xZ1_;VfPHY}1R7{bL!0 z2RY7i)z(gI+qP}Q*yHBvu#$og2qSw~j@*^77bmP0c9RYsJ9g|)LHIF8i*%hV6Y5S@ zGMK80i&t2)8_(;x|7nYlj|oBxdrp_PkwqOyAi^|=hDgQ!DgQ<8cAO`m(BvcA4~UAY zcZ(OjctNeb5!9qC-%d5tqkSrS|Mx^u&;9a{qbe9;7C$VGLZ8O#j&WWO5tK>`cI8ak z2{kHC)}>P=E4^k4E4q@050?W!U;@?ZbR0{uU`D}cYI+yvL6-LuaDLJkSV5v|3bUvY z`)jkh+QF-m=)KHvCKg{PlWXLt71@@}7eA)kYQQkNwl*d3=>DbupjtRnga`-v&-E#n zfwB|$BZSWKuvVKOQ3IZ|Ks(1R#Zrnw=cxdeqHk37?d`0P-i|i*%=YiL&Lj0a;0i$6 zWh2tTHjQ{Zej%S260_Q$Hx%t|0;+1={9}l(uysIkN$I3IXEWE&LLFR2p2klwwXJxo ze^{&YI@0$>c_@knfvRVRYB@$9lZkhJ1eJFZ_8cehF%b2;1NT_x?Unls-Kstj8&?$rkLmJ}onYUN zKICvG0lQ8bsf?M89Qq)juvE2|m4CK$oitS^HH63?ZDzV})`-|ms`F~8#7*Ph4k?Gh0qk1!ax~}!L@HK@srRO>6T;!WT zF}95A$c?XzRog)>g2)*l2r{`WFl5R>b>;lo5iM=O9jD=y$?0}zRLe3c_gQSgmoNdT zkX#EhlWR|rrKu6XP1GDLM9%XCY1I7ABiQxj)>2M&k6wl?S~iCSQ)Vmn*o-@SWWYJU ze?q=__BOPNo7G0@yt!TcXWAXJE!}|w?wXJLhJ&8Wf4g=J=MW@vFuy<8;rsFd%+gue5oPsb?~(2CR*}Cu z5Bs$-npxmn9&AW6qNVR#?EX*L9${ zPIAsA2L{|f1bEr(_?GtKAXT47QTR--Dv){b%?aT8M090ev#wBTTS)fR` z66M2|5Ayc^9K6NdW^ftP?`G>JO*;2Mo7VT4O^I}TY5i8bfUlurv)1&p?p6Nig`%Ny z$N_RD-8G`6vXI+iUiT2Yy1E<$6=>#SJP{BI1?9e_2{iCi#8N~7y%!o*B3Tf~`FZ!D zh5LI+yK&iWM# z+oyn1FsY4{-j^%(Qx@~l6W8x+ltK`_cn?zX$Gy0H3daG#6&)5^MtOcF7_iwpu!TtNaw{Urg0q1vgcxh!%xOxu} zfSXRKmnUy&oxG5c5Kk7~^zFkKdj3Cq;Jg@x`&5Yx5j$zmN>bI!5en_{bbkCPT5hly z4!lX{Q~e39Kk9WO>OY0W~7q`tne1)bu-+60rbaN+G=l;EN}2OwT1N$N{?+x^`{NOn&z1qQd&ndO~IC zq+_Np-pu^LTMt^iK(T-fUO*;q!4aqe0cH_B%~y3I{;1$6=7Q@hUH7yq9*j_kJg>=E zelh9f$auSkrY`GiqowNbnRK&lUfIF{jMjBLNh!Z#5wt^&@?2m@)b#}PZEQlzF5@H& zqA>vadhi;VB3Q^&S}LV+8v3^W;YMF7cFs)^vFs`>#4Yy)7J7%;Q#> zuCJDDiL)AM2wxSz(udT_h+fcj+jjWEE>H;59*ZFx1vO&;a#RJuG|Jn~N95{lkka4e=@tas8NZ#myr|>7EG;!Yhzm(k2e=MTMn8NO12slAJ zCZqrj6kyC|bPf&<3C@-_mXHVBeyb*cTHD%#uIOG-+f zM5rN4W+tX`B%FcH-Skq}y_*>1W{S)pS~6cZzDu#hX086Us}ze}R*NYK==YD7wjcC6 zUpew8W>NbkDz3D=wELch@z2Gq@*pL{nZ!7ts8U5sq!7i+V-QTrRR$_`o?=O?Ir{`? zP0ZR%BwsFQAK$E&uCr8n%|08punqvFlVED9Pec3b_?g>uCZn@4Tp=+tkB{fH*MHgh zpky{mia3T*S_$B&_nfFKBTGWf|D$ipObr zF9YKGsibYkKyys^=Ls>ohT|9CBWDUrq9n+s&aF;4BTb0jX#)rM^z`%&y@3t8hmPgo zr;xN*RTPrizE)FuvawR0xtKJrb4k+mrtsQFr8tjrpSHQxq2#wd$*SJ7Ty8Jai$IuR zG9=Tr>qhC?{H;7Kb$31C1rk~(n(Pc(_pCuCN3?)Myza8n(P*l2?bE~N9rEFCn>`n85%t6Hbt_ecP$AJk^Du+p zt`s?%4+4P#&lf_mEBN7w(X)a3!T6!;V7U4OW!Bk=m3{%!Zn=fXW%ukx_vRQzTS`Rv&HJkJ- z4vqqzSub{&BshGLrKyhbWbb~pH@B3SgZS<8^B)OwZFi)CbZ%O{^by0G%5zQ*3G0%; z(tGFIxLvF;s0x?`v2@18u}ktjG#c(x#jJgIJLm?UrtKhGP;RkT$k|dLn~^g%_O?I7 z8=N} zw-z#LoWt6x{4*)rsp9&%tiUL@^h{g#O2}Gmz8H33KsfQ^uVehHurmUrICi&hxHb}Q zM*^2|Xy=sQrlK=}(@gITD_j{=0pQ&>w4Fc` zM#em}jA!#ad5mOGte7C>Z+%kd+2)vaS7Fizf#n+q+T}bOL3(LFMD&bVbKq5|5;q^H z)|sBqj0s7>7t0-y?PIOC?>*^8fG)9AlKlG8`=rkAbICDZX}p%!*Sa;P^D3jn!yv7g zNBtM+oHhok3_)b}E&4`A(Ip2Q2h1_qbC%Bm<8)!w-7{M98zBV8 z==Z|G)kZI{&1t=DHeMka*C(HKF}}vkM%Z7%ue9g`16%r(v$3^yqN97U;yNgS8v^SJ z1|z~37O)D&_zt6$uh&<~Mb~U=9b3zb@Fk9A_RD)-jkwnN)_Sfq><~p7CqUoM`8|g= zW|AY%@0b4g;o}~ptK*6Fz{Y0AL8ZnDa@qiBjuee3KhFogGsYnD>d{mOm39E|i^y543o%Jg|L658464R)cRK>vrRkAgB@l3M2FG82RqfSK zzSHlBepCC~g1Xnulj`aPWxSfvcWde#d5_O7mo7b0s8+%pcS=E_soC=vvV@MH00aIUvEfws5#oS zxU5|~+H?*y{+k*CM{WW02@$!DRiVnV9OO)AoSIa;@HsiBK*P4&Er2~I-_nW|2#oS5 z%EW5J5nBjes!tE`C7p|k*e;G7Tqr()nOW(tt6D#&82tT&vaboG-B0bR^m_@;Wi@3$WiHWVIivZ7apDr=-cj9UMB@ zSG?2I|Io;a+o_vKBQdAzxNPb>wRf+M)9Z7&^5&NIY#UK9yD>zBCOK(+44XKl`p;O6 z{6hZ4nj`;8OV6%5(_hOZy<_#Sobqth3*m30z%F~?@Av=w}IfwmK(p0 zj!#_uq;MSay}-wNEo3S~{%pm)4?1LIWcsoyImaZ*UV*CAL9h(fxGP(vweo0rjdY3~ zcKIqS*N4xHo5j42ecw&89xqrLoC^o%2sCsvcaS`i#Fgn<=WbG=f;nbTLPHL`f z(}>;0wHZ;<=}P&~HRrnNzO0^J-+26M2~szmO`%8P(B<-+lVf5fv<=QE ze7l8Q4+eBLqNNP};zqAyV{I+J?^D;j($q$Q179{)S$6RDmt3!pLylkYW;$zU7_dS; zdls8j2shFw%CwTHJ}Q*BmuBVw-8E*G-ds7XZF6#Up>wc8sV23Z8T7ijFP6x_Aoma@ zEdaamuhEoygY^qyJpYx}5C-LjqJwCEcje%o3w?m8QYDv96im3n*-G)T2+LaKFN-_Y zcYa=9&Kwbk`>LD`u%7Im!_VjXBr;2m4FW@UE1|=PG2@2 znY|pG%IkSrCz~U)5?naxGYWOCXYF+Nx_oXlb1r5j4Rb0rA)$N8soTwxeR=Sxy4*oR z*HJA~Q`1$bCC@x)gI>wn0S*&&Co^Zimx=)J-0%w_Zx?vyyrBO7aXAH)VjLYN>15G? zo#o6V+a>4&gN98mzM+4+9yD)irbnM>pMf-W&*3m#E(_jYuuUZmb-dS<_xvyjNv6NO zy)&Y}iC+nFg0NAM)HUFJPQOFT9lse+JSdre*+wc^AoZ+gsz|n8EZy?6ja5+W&RP!m8dHr`d_bLCRKu=+k3)1`<1u$`OBQc<& z!bSM$SYTzfjh94q*ue?=45XmS1wL|Dah2IotW+q$)l3uPG0obi-tFoIEFF`*P2O|k z7;Z>jBZcOCGT8!qi3mwJBFZ(@S$NdO{hZN7ete|5SFr73`?~xRzTbH!_*fZ}JR>W%ock7u(?^9U4JnmNK-XK%XqNREAkj>3c z?j0Q_E#0f1S^Mau32PnQYe#}(Vt|_&QFN!bg35f)f`BWeB!pxEDRP6%6M@p9x)|(e zGPI33E+~+kF<6xfzy3)~6-PPT#Ks7^i*xIds|zEg&z?Q&gN~hMdo;*Rs!N}o6_NDs3 za}#fjfX7UB)(g}e^`pyLk6D){b~(1Dl&ZN7N+1Gzj#JIe_4)43Z{X2(pNpr-LzL1ijb0K*Te2CQzhi?9Jq`oa;+VTHQwWkS;vx8pWYN2j~@TNc2_`lFI>wa zcBw}Hr=X|bU-2d;Mq-`oTG!)@^GLZQrNX^L;XHF{vM~_2%|wiEQmvc9MowHk+|I}) zqC1PO9&RbtQX|%_y>$RhM5)59P;K)-wDwGSBx9lg6eDWo;?B;j`O&n-zGXVRK%gTu zFJ-!?1Fn;n>gq&{G#MqLbkm)SOULH`)n(*#+$ZOf@k!O5yY<1yGH9QtP-NY7gZCZyy+Y=P9JNdWUc}oob9>dRJD%D@w6;X&@x$W*2aj8 zx-02J4!b#HrDDHyb%l z5_C1QSLRzWnOZK|OjG96+_yGR{QB3e*VG9~NoV0`0ntb)YB$I3-NV8vrX1UO6mJ&Z zv0}W;gZ^wh_4$~SfikCV7IHe@3*V`@VI$?wf7z&=0svg@8H0|`Kk#a94R@*D>w$brVA)UKv!4ylIvx-uhl|%9OPd? zKzCa(mBHx%LC4XitZI*pV=vBnXft(b%@o3aG1Jr2m()D8-8%pniu90rweM`+X5dJt zbM&|6z=l%Zx6ayXPdQ5+{;GVW>22t7u-T2>J!qT3r!+CQ`iY~@?5NORZBtj&IASK!9VY|GYzOVC+8*_n>NV%hfU`5TMovnnPwtr=0F zAG%U53Z&@cGx(A(r?XK<$~d1hF*Q9v-;E{BYrp)bG%;-!=m$&X$zr$pV0l;pymhC= zPLVLFf(-+r?4Db^xqdI(IUIptFmYFmz9q^Y8)dG=iU6+l*jhQ>&u&(fg)i2-v*UOoA zap#jt{iLO(^>~!*?6M@S2|5vy<|ex^n~(qYVB~RBXC)*C=5AA6a2S2en4EBCcA%zQ zMwT#qY9KL@9<(6R93=Y~1K+CUQ=yh5u0X*iKk*@2}C*d9) zH}J}Eax3SGQ*fKeyVRQF!66}6r@D%nnAWr!3KR7jlhkr}owb?``3lk=@Dd0F;lr|h zXp?TB*i1265?i3~Vv@ngDkvxj)X3V;@7=PdI%C~B(Xw+l+LgF(-Abf1fU|-{MFtlx zUd-{C2+JKFzAjXuJ9?@@3S|tiWe>fLtmUF+jaI@dx>Y^iv`7;8_4E?_J9S=L}#IMSXo)w z*X>pF+l3xIeVW2on3n0w)KwRwfEjCkv4yw5VI)pYtR84;jVeA)PR<<8u#MzP=u5$J z&|v3$v~JY6hq=A8b69xzZZPCVx{Zdkj|dqxH}(qt#~D><^W1J09=kxwEL}UqJx?UI z$mjJA=JR20_}xQ=H9K4+#w#eno8eS-^_%USj$>y#y+|Kqc>W=HdL#()ojQcKeiGN; z@3Zk;x66sK6B3MPl$BG?Twfnaj!B4(jlHA_iBbel;DIw1EvXg{?%iv)kUi*Rjq_X~ znkR31ad%aPSLEG++ox- zy|BQdMeW;|;8HxSajV}+Zjx4fFDk^s40JThnnOBfXJ$Zgyzg`xOG}!zIdMWt*%zM<$4H|Oqc1AG*~3I&Olu3jiv8r-8nGXb&hFp*~4 zw&v9Aw7W#>&H`m1B`jr`S$IJ7E3QE^1$(a*gKaLc_*zs{^yZ}V{8vq;PB5_B^xRzf zh^@hcKbGA|<%XoF9NBj`(p#yZ;2iCLLr} zOa_o>Am6YZw(2U%Z_31!R+Jb#L_d6x?y*rG_fTtQ*tlU~g4o{UuqRIuI?MM->3HbB zd30-!^&_`Un;)7LyAAFb{UFz@wp1s-q6&%$UI^un{QUgbULFw>JD=wBlD@rJyEVhm zQgS=XUgLnWsnYd>-JT0kR-FY}5c{vy^6{?_Y~OGDYPnD=GxZp@asDM!J8|^JlFC$c zb5+%aDu@d4#@$UKb2;rHt*DXI7&wv?SC zlasYUL(J|u;ycj~Zn~t%5mRE_d29)aO1=)f&C#V;Ypq#ergg0gM)=`Yp}}VTFO?!l_3Y@+=-8$pLpQo=GjQLr8e@N*U@>QWvQJk zt=+;Vd7T?nf=rG!kM7@!MuNxedsF>NK1g=461JTrNGqQ^7Yd@o5D9k|morzcBp_E? zSJaDhP#k99&M&@ZZ9rz@bNkO9uU)ntgRQit*yGgym=?9CC|kCjZPR-0u8{fHXt>^6RPTw?lW})Yyt7SQe6XEEi2kdL7E`dO1FZFU# ziSq_zQFNIRZn6t&YSNVUTy{v@xV*S{#+O;-LtUME4BcKK%G90Q`B7oiC^v!7daIG{ z5y3jI94h0R{U3K}aNRa+hqotlsGm83-~?N_jq{nepN)w;W7-EVyTl@>s`@x@3+JPo z`*wsM@fzKqqF@!?Z2GE|GS!Cw&2FLKuXMDusZ3|z-`|!9!e706#KOq}-z|1&iEwgo zCtQIR3!Qll6$hl6$_ecs7)X@cc@r+%sD8BfgjC8)JvWEbfAEPSh9dR4mWM}C|Im;& zTeuq+2Pfx2AaIxUHq>*U-v&`94R=bLd{s79GIHm4E|#REZr{Iu|LM~9BDiM)Q(9tb zEv11>;op1`D}f7XOja2T71^vo_5TR_?szWS_x%qcBUvFU%Bbv6WWLE>$=*~(w#>3= zs6^R2GNQM=S5_sXWbYX&Tgi&>J8xM}e|&#`Jg=8WyxsS8o!2>z^El3H$RR-T&99)( zNkxhR5SyPr6J3`DQTkc2%_X%W9KvJA!ob!(!uT$>=}mnV6_ujwG+xZltUqRQsx7yT zvW%(?m0t+!WSL6K$S72MZJI!@r5$P#O9KV-!w;96gK~2#j}vs3@0|MdDkd#0O;TD~ z-rhdf^PZ^-7CQq(5o}^A%)`!t7zGj&rjpp<1aKwt%F03FM>U#Hv#>~a<~{h2{ic_p zzVVMVG@2(|{1ZLUqjiRYE5c_cJLC7L;2WOHmvx4{w>^Ka&*VsH#9b{*ftt8fp zva+(D_&b)in|S+DFaNpPM;Qsi7^~(nwhQW z#^?bgZrmO9JzB`5r*S<94qO)*H0gXICbFvlRZ`6g$f=kYq~g2v{1|fJ@oe|rAYCF+ zUvjN9E)owDw^uwdB}K9#A({T7l9Jx=PmdzSn8AaiA)+UJ$RH8ZY<&!l zEZk1g%t`}LI4PK~XoA>qYqE|Q9 z0w`TZ^v{ngb8JFF1GAI!m8*tSq8_EkPIA}GT1`S?@CqB$d93KN49V4LzGZ0XU4J(L zuz4s{$Xef3*AFKdK7m;3UtKh6H*fs<^{WG2w6VV4e-87Nc#R8e#K7m6=)(>c9)6Yy z<>21+1E__NHXKW)gYkPDzRJ&?)QT`g4*h6u9BO{JGGwjyru0$k^=>`Y?<)fw{LysM z{SXQxS`Fiwbi+{@r2RX|#vJiQwKJpCn0a}5i$Ck>ts3WHu4YDel7^p<+>Q?8*#t5_ZH${K-rsn2wnAT}2HwTFl zw>u#Og>c9pn$oW&rvS2LW+WqnMVwxV6ts`$5r$|=O3M3L4Ej5x7|{Z^&k!X=aY(~Y z?A3%=){KeDO5oq}n@v9X`NTsGQ9>r%ad<;u?|YRY0RGB^4JpD}U0igyM*!3Fu8=;t z`*ca-kZa@7%!%l*tF~eILPx(gx4s`*QxPM167wRWBA z!j1b_M~}w3Q*9EXAX3&pqmR5QwyD0cy~fW-G#nKZ!sNUM6f`M zg93;)*5FGdWo^Hk9yr0BuSS;;2UA@)eeQ~L%9n5s$RuILXq~_1H??*$#1|#@V@`iz zEwMDJ!$u;;Fc$v!IJ0d7@p&#*9^9;-ye+buN9jBD8d%2Vu3n8SbNt?98J_9AUf6dV za?c^%)Ro$MM`Jw+=}1sumLSCqYZ2Sl-+g6r3UH+8(_p(7b0?p`8VkhzZ}mQ%?MK{`yUsF`5&m&mAHa21sCoOPY;A3I zQ*oE2{^MHE*viVWEYTxgR;?G(-CZARm*!4mIJI6G(of(u5Ayg?do<+vb7M`(s;Vj; z>t1f;R1N~?+05X|SuA33-cT9B_*MB~&sBrV?kkx(wFqOH$D*BSs=p{hXLIWQesqC_ z{eZ1r`xvQq9m6XQ%6 zzZ3WnD+kG|RoW#;6r#!5!~eCGNW2pi6!O;AnQ*lVRYUq}FK7%=$1oxR6&Xq`NvJy% z@L@}`!GbERW_dFt51zl~1!mg!=Fq1^Vtlx@2$)u79bLMyF~BRF?3kezD+(EaPTq|N zf7ZsInbq}VXmL?pc1Sr!#q&OM%L$HiJ(-H!CDukym;kD(u5Qwe**St2%Ayp)X;2>3 zm7siRn@h`U;Ak+NKR?BT;~bMOsL?ktFwk{ZyE*{e-252V|013pHXqzlKg3pYKW35~ z$_F;^CT9B>dHyiU6{W;$Xq1tT>JFjK}(fylK z8WEfq-x@fCY$1bz8ex3J?}3-9!gBQmJFu#f$#8SA4!O8Yw&%~EGeCcVlAoX7qBA`h zL5?;=2r;xMVNJV?Ff#X%v>mr-j{#YjfpMtLnM2;#<%H~=wd;)=E#Ak@r1Km5+^<|q zqGPP^m*lHl&$08B9zZ{~cjw-|mBpWi;J6!^mj*_CB8O zjf#>I*YM3Lx7TNr?`&oG;c__VTKFvp$`X@3w3?_k9(ud+XLMDOLBOa_5Zc&#NS` zjeW&7u@Mthx5uRm_&z+PV(dt}8VStm*#Dj}fe-||NJ&j?1UNxz)3692K|EYs`xH}R zHq3IUe+(!GP{gz(s+7~4OO?ZmN*YGe!iTx&9(>B=|@?do#FBeka!`4QNt znDPC+|2Q}Xz0OwbccBuPWzGUs_<#LS#5)=CI-ahkF(`k_whuF zxEE`d<)dGb4t8n9!|P2q?U>c>y0?a-5TIY+w!~+EaV_-4#l_q6O%-mty7p-N!MgW< zqDUpUH|rR%v9Wdi++jM?iuuczFG(pVSRet3h=0_!Z#YmlyhMGT9}3~KjcaR&X^uTx zTQX$Uk?y)MoW)!OcN-R*K`)OZ~)->9M51_on!KJirHUC>*Zz;t|#piUU_eD}}K zdQ*T%HC9rO9CEjA#0`y&ZKuAmb8=py3M#jIHJ|W$;}-0G`U`M2UB8kJ=MdfG=O{@W zu4Gw#n&dnW@$hR2(6|i{4Bc`LkerAF9}?ui?W~Le{*PBmkpnlz6G^3?K7VuM=rOa( z>8g#C#-~)50$BL@wKAUm0U?#T8?OO&Cm`NbVqR|sZ`adZ3V8Myd2?pCvVwDN0S$5k zb-bjlY&XEwzXA_GJ)ev2(8}cc`v`u~9-?;5X1*NLtri`cF+< zQ;T?<&kw`H!X7~t?Tllte&_@_oqJwo86Kxo+RDJQ@JcE5cg4aJSM8{-WKI5dv8}b6 z(L%1-pnTYV?NkLN)yJn)yb~|n=kwh3fdU7m8%wUkS9y-cO~7TsC17J4@8gjblARY8 z7Dh=OFK$C|Nb5Rp%d=u!6PD~ggkrby)px?Kn$#WQ1Q+80spmm6&nP! zQ2Kym()<5n{{U5+cav1i{~o7cFwZ2vh^r=T$O?5#r|-K&R+zvVIAdHy^b8!y!p zR$Ou_s`ItAwJXOXf0NkXfoGxfBGB1?kex?LWb}0)x!rM1c$+}Vu5nJ#w0-0Q3CSUI z6C@S*z0?u%d&m`s1bf6S1KPVI)4^5STN{fYiILOS*H3j^o@~3KU|Bs^Jdk;cj0}0& zizK~8R*?~-RoCA=WaUZ_xSf>l@BG%Q*ZeIga8zJ4#|&03PU(W=k? zEUKJduNgT8>Wp`$s6i&b6K_C5D9^RJyc`ZAX&T@nJgrcRQXKe@+_IX*uOGiQ^N)0f zJYcm#ucyk}d(Y<8Tc2ViI|#?6*(ev6VkRc0NAmXkU4uhIMMp1Ok&w`*d=k!RjEy|2 zPt)^%o^>4wGhQ3PF)^%gDo${5acyANeme9+of3%?gO?xEUs8P1(SA%CkBV1X;zM9Y z-DJ2Cnp6znzl#7JXBXat)>;wP8ps}NE%Ug!VS9`TeW9km3j5%{hspTu>#ZN($3? z4vwrS?I90M`lZ8fXwT#eotKIC_wl5!*k1Ck!UC(Vi{y2k*XPI+;pHu8&+FQt4ae<& zr9=}@U*iM2)X`Sd1z~r($db}&oGz6os@xeYI7Dl_>e0=PN23Ne4nkBno5)Itk>9kyks(T3XQk7 z_W<@g#lwc8%JAi-Khwgf_`Pe{)B-9oZ+=K{$W;GXw5#6KgxpBWv}+7*mC4fG0Jwu) zQ0yKOP2EUT5;%ZKB%|PvlW720GLPdo#cK&0tp{sNoO>Sy`B?g2@ZyWQM1{Py7T!FB zliX}@YTe7GP6s=_^A#PWCAJkxDqa0Vbb?Hv<-iF=z-P!@N-HV`I2p_i;U0+(F{jux z8=|EGj%Badb}OEVjJ12DWW6A z5etwx(VK4?0F-AX7%z5<$3sKO5k@}p01I3>(DA(zi`m}Jqhv7QMzW++vUb)l)drjj z`6R?^PD4<3ePnY+cJGJ&ZisI`f^N`M#u$M5fD^9q3WkA+_b?!yrU0^#6m&f8aGJ;O z`)j60p-F*@YKxZU_ML`tII?G zDV!UDfEw^;rZDDbvClj~qdZ0C)LlsmPW^L`&V9~z>ON>l8K1_`2owyCD}Ihn!K?P$FYbP$y1TjDBPDWDeg~Q= z)i;LGqC1DsJ1xc%8q$?-mf97Np89Ra@q)XCSN8sbPXcW)&@%405u_2PaIV|>*z)P?5b)Xp-o1UBaxGcW{T+ zD!VFr;bb4wGLJpBJ#YV7%KVuL$x^Z+BpqJBu?fAIKK@yw{TsAtEQN_Ek@J(yfTVYK z7aPyAZ34kTdvLbu1AV|=f`wF%l4o$w$6M%K? zxW7{#Kg6}Z-`K|#eH8GJZZ2Fs9hhAveh-I~gyf6rDRv4B8N~Ztb9o}LpWy#Jsg~@J zWd}~NyIcndkM^>|`^h^n=@Y51^{hE@4m-6#S zM~~A!f323*1gtY9Lp`{3IGW$?h45knW7nw!f*oVqG8*m8yUAnPbOJ7EP)KD*KSPgY zD~Bc@SZ(P;l)U^Cpj)ly*SX!fb8Ge0ba&PaHEt#;#!+aB57l0JYX8rZ@74#Iw;!Mr zLF8fPGzk&!+G7z2R)5n;a6#4_&*^E{egbVEERsf%Ze=V$)vm_J(toM;D1Ac!SJkbh z$zK8YoTu8QK*G!ffK>L%+TX@1&`manHk#OS)SDdP){+Jge5C*vl=~ofl=>imgQm}U zn1`ZgV{Dw5zM%?5G-s|`#3P@ZP?gU|ZAf<>Z28VtU67JgQfq6@yFs7u2@w%jyu3!k zBj_4K^O#Mh=EtEQ*XMlx=RH}-@;f3NcBmIwn!hz?P-uYwWd}Tf;ScgTG`wa{frqaG zB{TY>X#CCsp(%O+4HVv7>L8_|vC4OZ3o;P1PZH%#I#_OjYSi`XFVo%Cp<+$)q5#^1 zPZh$JSluF~`{yKLBjwirk{&!%p+AL={RplYhY<%0OV-J$@PXNllZO@?O(C%TH8Nyz z@gokMh@W2y@b1Sb$<&q^wr6fHPRK=bU-yIlZ`;I01Y@@w7Dg(@zVY@Qj5Bc^6HY0D zr~jS^y{c$9J3r3}dXwO@FYY9*li43o34Pw-fkN^LYq2Ew&`p3(v$sXgNE~_!*nD4I zSbakU6oHW!!nTl?=Ml6FJ#Cs3xyJ=yQA&@xe%J6|oOR|c)K0i` zVusYBD^Yz;tS>jC&0n+yUFPo+bed#XfL1Xwt-$P=!cKF@w;%5f+*`lcuD~S+^+2QV z3%BX>9F6e@41iH>OjaF(Av+jqlaT_sZxFd~+Zi8JDmb`bn1}gzkT=@9LA+TmsROQ& z1JFE@eTx7I{Ij{aOvy)bX!F8R(=$0AjS@V~a#^;6=$IYq@NYZ1@>^8`gQ*;*7%G6r zQCy)1_>^6@@KNlX+2eKu$I8vDfw(EjoV(ChP(M-gOnC88rhZv_J{j);Xz$a7<>25T zIb_Ak$=Qw0tAGFg5sbL$`gYS8em@IRz~W`IOaEPM3?U>1Ji5gCO1+B@h?#*b|NFhR zc8gvDJzjg5d#ingVIwVJ;(ge8Y5$-*-|6tmzfu&u@?4)vGX*7O_=@MRW_|>cGz*l0 zmJ1x=8Qk=i(};un{i)%K5~ca6mCox~VsG*!7>e+V( z$R(t7bT+}4PeMsJ3m`(p=Bf|wflt`^DihpZMYyk(fXA-e8?}UTtPF6-x}Khrhm4L? zhmHX>WfkO^zI^d#-fj^i6f|(&-fW-fGjATFfzBLURM&4Z0@G+4-##EnHLCVHczyx| zy#`vivBMeXm_bS-kJHmyhnBhu3!i`hkQXQrq>oqul?Q>_jl{_aF>yO(p{+ulcl&VZ z4e#s22yN-?ks$~y9jw;+)==JsgQvEVk%jVYKLyTxSkq_vabmVT73azZpB-oOi2Kzy z)R!`y`ay5j2%}!U4%k&+>{|d5Qv|a@ge>5Z7b9w-cGk0qSmms3dMLkQQDP#)Z)kjc zg&>+)$F7fb-u~7q#&W((OHN23>Ld$eJ1t-y?b#!Gq%ZP_b3?&ET>Q*+|1ppOq?s-> z6Z0trSYqG5D?p;30t19DQu$dOdTee5l!nza`b(c~jpRo2rVfv68%_xzl-l$sbJg2h z6^&ldJA8wb?q+pJQx0Bu12VTtT>~}}AC(XK2V87>Vgsw;P;M3jI-SQ%EG+Vx znwqI+rZMV}D6v!0*n7Zfqw^-x!PtAXzsU!R9M0y<1~W8um|%zt)V#?HsK>_->bfu3 zA!*9tnR5e#-6VqLefd(-fz-}@jaMQK6Kzv+^vhInj?+&5P~Is{?6G}; z!PfAONQ@nLlNZYdgBfL-U>2inh{FR)EUUe2X$a56++0CI!Y^Xf7F||Rp`fiDb^reT zNlq_JiU0Y=AYE}sq3pe%-d$&VV&p|kl5uxhw!3z~hW}^z_xBLXl%#SQ`&>SwV#PoG zg%d%R1!kjU_XyqNo2lAMSy{oO?>X$x#w$Zcdk`y zcB`kZ0J?D7kug4+k_7WJ0&MWkvsxWWbCA_5RfPP_5PAiF?Ey)@iha<%*{mf-eVBsI zAr0hgl1~SZwLqH$m_AJ~5LWlP^U{bwO_A4-UhtV1g zJOTp85b}a!doK?ZCn#0BSc@aW!=sOV>gZ4d-Ye6&bFxOYh!fCOhsOwT;Q5#Qdzv)&u>6`ew8pQ)i$=VX^bIG$BF+O0*q1Ruvf^&p{;o!v|QXeJMjA z3u4P!oN1qAKZOJx6<@e5ph2B%+e}}-9RLIt*m$Q_a?(qC$0AY8Hzb5qPF9w9+3-#N zt9cSBY3U~j=f}s#5our!ZhV|RbdV8GBzb?rrQVAQLbW`w8cfX0w`U;m6K0)@yX@UF+kmL5M1Loluu;D}YZ zLY?0PT~?*+xz}kgLI9VY^qRxkA^NH~`a;HjZTpmoiAfag1i*@67A&Vi(7!+FKi>Ob z$bO-JfRMx5J3815a{qQh{5B-Af94y9WsI8Z}&dFXTt-73uE;u@@Dlha6i>N7T+@zfR!oYI*sppT_RZ zX=tdG^ifCQ?tE+&<}}8}JAb0sV`DIBGbEbVyq{mzY`^PItAbpJ8xk9K{4IBRMHB`ri)v)yabY2fXE{aDg z-+R5$xJeM?8y$TGTpPc7d$lb<{Sg)!8GGz!L5pZ8R5N`Jc%OE-v57}~Hx{amI;$~W zQRB@E_A*KAg+G5X6{4tm;ARC5eEg_@oF{JX)-T;sHMrVZC{Nq3W<%$lcmx63?!$e% z_dC1iF&F8WbQct@Gyq46TL5zq4&;Uk@40gg{T;lbdp6+Xa}PgGzet{kl9TVzaI!Mp zWBn?94^XG94X=)Pa{+(;Qkm+q1%4T zpr4pQCSQyjuAM?U0JN*a4cD8PK)YB>a9<$b9=mbR&gi0T93K_$tFaa>Akr~PKjp@w zA|W{qy|OwNoxrg}%N7x%l0UxsuN^T*t1Evd_FRIM=dDe|lBjHtMceI#XM0?_$FR^9BOKb*ZpK^`q@Uqa1sWcM`qkm1=I)jz%zn#y2&6dcZ+&*!j1 z@df$&#mL$f4}Ur+9ejL5us|s`Q9ocC`g~CT-qiL`qVMdjZbbwD1t-1;9MqU&x5wT; z&cD@m#+}{w^3H0~O8Q{A9_>5#b}vn+z|}9c7bhhnONE<)0D`uTJQ;NYVyGUxZ~d@X z(*EK8YmeN(>2cwGKDh&d{dImm_Xwjz1HdA0@rNLuD~0@C5;aq1)=bjRP9kq8}kSuIuRNp!mYQPu(+i^#v9@LWYOD z)FLlE;a-2S&BvB2E+bT!sG6S$qWDIH@y6~c**&bjmPl=<#9h9#u)XTQ<{Y#ZWDG@i z>hoE9%MF(@ZfA7cgU$ZD3>QE3vmfeFcrm_0+5EEm3{Mh_(7Gy7z;~&fhG} z1t0dg^7nMqM?k>krKKODO(>MG(QmB(tU+X|#hh~_*#Fqk zOiZ-H2Jm8zMNpEGo`Iavx!bgW6Y55U&7_Gk{RbPy@I;E4oXuPlK4_!%UxU%Ib)t~K~woT0xCXx zc2$Z#d{z`FE%Dh=xjVnR#A>YUw;{Cf=G~FsZbPWC-AvC{mjF_eCiwl7HSdKsjnhdD z4YJo(ZIEOFuJv^hm{&~b#0Z)0OH!UPAX2`GZM9RfL8qmN*mMJVrh{Nc>|zUr@E(dUHZ z_E*&znC!<1dMF$Mb^ga1*vgQne>V_j+ebe1^+#7tKfbq`QccEpcUyWc17Yp_5@0a$ zz{N6!fq3Meoh{Ev@aBOf*G@XfwdFn@mBD1Wx63t!NJ|w9 z8(SPfJUg|K61d~`>3?D$3#ehXn>Sl+;DUk@J++w{xZSdlk+UmD>ynt57)Nb1JPW*uSKUc1 zmeLW>!nA{~GkHdZ_uR0sZa$yegZ4Skx=+M0l8m!e)KLEvmJWR{6-yxyd%tl?88_ zrOV@AnQvZw5mw4;{?t(H#(P|(6U@2s!cBV-WbWx}yy2r>Q+TK=50AC6W*hZ`!s;sw z4vz%z)6zSWv|A>Sni<%|g-DEsE?#=m9QrlZZzS7VnIB?0(!L>L2YYdpzzjHi_H6HQJfI&CTDRiT0BnpZoA2tI80$-f({P)7q7s+b)e?3 z(4m7bN=*YMloM>7-tvRCH93VTc|bpvY`NCP0^ASN0Nlh>=uP!|+ksYPzG}mEZq=aNDHvW>BaVg7rk@Yt6RlJtDll+5 z>Oun95I-^y2#j1al6DCesz-T|y9@Y$U!QbH>XSZ_+Dielu{$kH{>ljTNzB1)INiN7 zXRwKBp*YDzijxXwtf0M;;BN#mM!K%w2Zn-aU!+mSLZ;h)9tn<1*Vps)tIz z?2@w`>8~i^le@~V-9Utm&GU8gS~7w9;|av9Qv(2)H8O!4xRKNR42IOHrYX|_@8Kyz zxY`&7<{AQS>teffsV^gXNe%rp)}MxoNm_V6ruzew=*F|rA{kAt=y;$>LB{v0MF~Vj z`r5`oebqH>3djP&HX_O1ifx+X{45OVMYMI7nLlj)mf>ze?^6ppOU^jy7UMDlFC0PgR)HL?wS>Qt!fBbAUt)C5YP zA~8MS!zsoITuX?RPzPz-Y5SE~ojEN3fIz?uXuHT&wmH+i=@pAcyf&2F?Vs#tb3n%# zvbxsQA4pDCelk{YZWi2Po3h|eLEMcH6{yiq{~OC064@YAbS|RPB$U>8tEjAeNl*rq z)XYpw@BeH0%~+r0Y+Hog)Po3VSiB->{k?7%-+ldh@hW52AR>e51A zi@@!j>MKY)Msq21j42W7H#sGxuBz%Ab@)JUo-iGEg>DFV^yJMx2#(B>qxggiZ7SJQU!cpno%7ios=25J~ z+;6xDjo>S=6E=_LCe%QD*EISvJwV|&v|%B|5-j`Q$Gu=Gf)AYkTV4GH1qEz`SK~uy zsHk*){wO)sBcTYqVOnr*LiM8g`2V$TUwLFDvLgN0i8VDE)T<5qfcjh16wP|!@xJXa zB+~n$Lk3nkb(yxzU|L+sp^|@5_P-8xTF%kreLiy&y$8ds!tr*HxF5d5&dAM?%dX zElW<(kuh$43I4$I!5g3c=57;%)-3^U9u+h-mLT1rnTA;x?dU8cYsebM=H@*6_%xVH zT0kZB!fV}PE(Y+xkFXY2WGp>re0&IDiAyl@1C%a6ZiqCPo@Tr4R!x*-*UNTI(AWy8 zM=paIr=+E62^I+wmO#A(@bAqT;%Fjx7syClD2F{Ff>1?RO;Y#YKKzfu$;S)+N>7Vn zFAwSR%UQrpo+|etT-3}v_}BlOhhY5u0o|sh6_h9 zEbK%wa#2(G(NlN+cYg0^)g)n}&pluNeP!s%g|5zxX~6tJDNr~$cnmpHQ3&OyOm%7R z-0uFCy*3BX5OS=7u@;dmI)QDb^ED$PN)iSq2D2nf$MY{|$lF%K@ONZBM*qc} zs&%w55aTGGMPqN%}W68@T%dNcpBKg5%0Lnxl`K?35 zQI2gbW*tS{`G1CqLa4heor0Aq~}JHKmvh(XV0pF)Fx#20+W-$FLM*oSp1 z`N{t@x}g$aW@SZ>y_~na`gTWJ_W<$2+~?l?vuBf6Vb3<_9%nJCcFDqoFQ)0d$MJ17u+;pRh)BU(g~I7g2Ll=tQ6g0KX^&w!Gc zx#yT+zFBL5;Hqyp1rKL)B@C9Gk zIMEmy=u(bYFTn5~UbO)`m@%wBn#2CvCo05uw#{^I7%Vdw0PjF*^96F;{y%t|U}p`S z5C=HzPogx6T*7J`uyc|6hJ=cbV10QC%dKIYsW9{#_yDPxSkfiI# z?nk;7B2c}~&RWk^(_FGX2koM+kYS^{U&$Xod)Bk%0Uc&lKue80m&4&IzQ`Y+JNLK% z6=wi)NNa+Ys7+{ZG_;H@5#IS6AyuuguSLfz80K9N=rTW2UA@BHRTnDxi6+=^FJv?C^>+j+ZQtxHZlJOnsg&=5){ zeLQZ<9K2T}gyKbo4puGB>O?0*yvovN4y6~cuQ9_%`x&UHJjcSqQvdWDbbd1PkknrW zq_ppL`cZa-fEW!0SYJ;oa4B{>-ZkN8P6D>Dq7s(3(t3rc5oBMZ^0b-cyQav_kf>aw zkv4!0Tm=yK?$u;UWZ>T-S0N&waWD0<~A}hv9 zyX76U9aJS>r!#UQ5Scx+7K+A)fi(cEiRsf*(EckvGYP~v1L}*G6WRd`y8a{$pFSbO zOLVr@#)*$nZm-T24j=RSh( zQ(QM8KJ=QIEGiITL-X?TzrMw`*#b`>3!{y)C=^VOWMH{2C#IllY|(H)ob$nf%?-f7 zy$DbmRlILXfnuPn#>jh<`6$t;u);#VGW#!nPigo+PhcY;Bn;uu^6&;Z2LQ0gE?{bs ztpP0g^;N7b>9S8%Ua`}ZDwU8+X4f}!U|Rfb3n*hO`&{bkk9V}wA;kP4K*^xG~>ifnV@H_UM660QVp@fQ%SY4n*RgHDN*eBi`S>tnsXtf&l$wSP4W_yXP=NyU4w+xw*lX3=bNeFP2>^DaG;V68 z1-xE;ML7~F*sF?*(7m~#e2b?%;3(~sq<@<GykUYEW}Rpy+pvjiU3N#`OSf zHXneiCkpE;b8JU&ju8V1W3EM=`4gfEFNR5CZRQ|4Z-Imf#y9oL3+~$ zkjh1vvDR(r!MT^z*ORI=&VqS5z)iXzF^TZ-F5D#zzM1v>7V?}VAp>{G{{j*FWwt;i zY?X3#9fe*Zy1{jQ$wE#+0g28Ez$B>qV8(E8k~)wV?8!0Wx+?lR1>tFA1ZAg1fc61y zd3p}r)o4BoQaF|Uv^T_S6fwfzYysI$7QnnZ@@esK1dd%GA_I(wpTA_xeY)@=Orh=k z)He0d=PQ|(KuoV60e2#HW@xpTUEtoQ-;AP>qm+T)glJZo zo53%!0BZ-_yn`z)KE^LB9$sG4pJR3X8?{X^?`>$}rT-~(`n2uvdv-Im%D1wAkQ_?VeZOn*>&K5)*4u9G z?m~0@&^g$vb@+W39Z2~3ZQLMFXYErTiqj$wTkZv@7p5hER`OZw6-8Y2D~XwziYp5v zT!^X^BAk$r9>CJ601zdija(Ln4FIXv2_%_%;`0^TWq$B{$?6p2Z)|Lwd)vsMB&3W{ zPulND#u*{{4MY(!{k=CJ3#34#r%q*W(kdWMnbrXIL1sjJ?7y!WheBy2Kq-^}Bok>p zLa@Bt*T;+RgHrZdxH9J^!`c{Wy3?3(tlXX~Xp|e%87OWXirq=)IrwZd`W@itOF70$MHOwj?Qp2AoWA66D>$jd^>UQf6Xzom4n>$xhwM z6i=Q$4I3RDwKTYD4pxq8LBjl9*GC619I`L=B))*FJ(9=0*2SdmaG`OIGykWc-nU)( zcYeCMgDOJldH8UeUH9$2FQ?TTEg=#M^SNk+=<7&3vtny+fE+Og###}bp00!|L#_hY z$OH}M>Or@eET+;K&v%cIw9?+*7g*hmP2p^T*<*0&R``XR9|YF$@%Dt;pU7q5eBuyN zKY|>kEV6aycW{w9=SD2UFpBJCJu>=X%2+K2)KVISzRfjI!l|GU0gM zB@GTc7+l=n5(ubg2y~EwN9T!!WDtE6FlB)l(EyjVu|U}5(?&sWU;>h{a1eZ4{xFf zX{%L#@dNNlGNHhU4haimLR*f(8F6Mn;U4<+(ib)JmmQfVlb;=>FzIT z2LQl?mwckC(Cd?L^|%YJ~po1RfROCPF_OAif|| zCsg6WuuZP}xPQ&uUL3)vu5Cv^f316B+S9`WXpPeDk7AI-t26}Sa(3aseun?onpz*% z0IqEUpo#+mV1tH$jg`0iQrRZJd=UVl^-r+M+4eLN_;Bz1e4I2Y)n3rh(=_di`Dt8% zFqEeJliBK3Lkn$vYvR>KUh|YMYd;a0xW8^kcr6UNP#2Omycq5?`sK?@<}xnr+?tm? zQh!P8>l7*p{zFh&O5a1Ks}zMw(f(9F;h90UOE51YYiMcdIi<|T&YtO%__r7uA6e|b z?TC=I65(x*ms;FMv^@tIh(Nv%I?=1gz}15Oy$uu*XU?2qjZhnyaJe`P$+TUK8swd5 zOdL?({%LB{nw`G)JuYth=7Mr!#<`aIXJUPFvb{%qb02bGiK|?zt$w1;k?y0}rrO%w zo=~*DvDuWDuHns~lIN#8W6{-LiOsJ1S zD<+188rery<7idPhVQ;;5t1|eCi<(&G~~q#+nkz5h>{dJ-Nd=CYmDaKsFmCHPmm3D zKf%{&El7Lwr(Ud|Z?W~=`sh6(WNZVE3-tN8s|rP6+*UhWJlZOBL*ei5Q=jJsRoU;x zt6n$CdqAan7NnatCeN(*8bz9Tw1Q3zQF)cNU%3j#CpS$1HHU$dy5u;U$Vn)sNGu)d zes{(G&?H3)kL|tK> zTu?kSJJ*lMV@~UfT1HGWKgY!@AL>WFi(`YJ5Myy>@D!lD&NBKMao1cmeX&iQ*oxW7 z6UV9YQ5qWIKSzH9c=3G&dYWNzakQs+{4*OK?!L_EC0`=3KPr$ux)CEu~j8u7g1}WZlCnLo1w2<^&Y?3#-*GtvB0wF(RY2 z-YUt-UDyH?+Oa`dxiM6LBsZW2Zkhe+3zGtYu7E>$9;o>UNBizXu#BJWM;u%M4b<6) zDBw9*tgRp0znd3{hLS%SCiC;RzVuO1YytELo#r068?gr)c# zuoq`u@ik&Ykq&puNWqo$BQ$xFn^B+b`#@C;#6SKjARw4|kW*3yRN3cvTUNk5<4Db2 z+~CVVoGXC}==EMHNQidX1TuCbf7MSyw&My3yXMh~N__KXP@7OwYjv?_>4g9z=D4 zq#`RKMySZ*o?nI6JCai2%$R9>aoWpRdkEsh^xUmKI>}W`i_6WrS=78?3%DfLCuZ~< z%~vr|QSgpCbTR z79M-dGyL9?=ZB&*>drM6c6~8BvC%KToS>a?9r~PLw z7NJ6O4gPMYF#mQ*MmYd=P~fPC}GIf&C+RG}QnyFT(YxL%0_&T==P< zHwR4)M4YcI>wA(Uw-N=!s#F+1_Xuunv*j_fAS#+_B6BV%hE{Cd!nFR&m3kN4UJaDd za4BTB$e3i&)6={qa7TG<_DeF#zY#KsqP2y1>4AKKoWtjDKlFjn-8V=%#I#|e% z!@Iw~Mh4!z8pVA&Q-{-;VimY}U6WU|G+ISrFxoX#wbq~bk&lsFk)T_wxM1V(_kbt% zVJ%^Qf($-ZIY^B%jG_Q|HwJKXaF6wE2LvRm!2{bCx*qoE@RTep;vbLTola5RqD(0> zZ#jj~O)Xdi-Q5AOHh9i_em|MmCP`;I7bqtmdfc^=jHJ1-T8tyjaU>M#r-lWu)rv>! z`2(M!<_&>cF{!V|8x3x~qu){iiuf!A=TC;wbH3!DWCwBm)2QW*sr-+e1VUSY4ZP4Z zy$=0NhgxjP`$LpMXN=8#fqSL~8lX|Ku}36~PZy9fU&#Ne^+76+^N|(-CMN| zNy=182(<{w8+?s1={{h3Z3`t#;TW-9!m`uOfu;!ou z0WTh5ZAlBdiA05knf%#=%j0b&AC%huJWYgkhU6re1-oAHCvA?5d2>~!O;3>gs;a0k z@Q-*Du8R5SolAUl0vrN(R{M#fgayoc9WS<6$%Sh^3# z*!L^A8bVBjm;_d+9pYxdoRu9<7arEsQ_Y%IwN?ZWtTJ-%uvF?*At$7z?^w__V_gag zTJE>SVu3auvJ{~g=xGmb^=Wt+$)45NGlx(w;~L$Dx=ZRQ{@ zfa@(rt{NYa?8?&P2ioiLlOXn+B>M+@QT0wCsD-B9XoLRk_ z-Muu$ptouxN(vpSifd(Op;uHC-aaJk#_$i+&tPAi!V-BK5~7c)`V zmTp3_-Snh2FoEPtuSM{^Eo=PFKSRlqY{4qC zpXL{qR@1jc2|Jr83#LbJF3vjogwqU3RNH@q|()2LY&i)yq znQ=}w6vMGB&n*9Z?1of_l~^UtvCdEPfy;s-+QF+Znhb_pwm!)X6upwiTfyJG!B}|} zzq7E^z}%kSYF+4blulyRmAqfBcC<~KLtp`t^o4qD61(4s5AS*NrT>A0ciQl@EwZ~| z8$ui_Z4zhLbeUXU4vtKD^y;5)N}SOfg2gh0R9ieTmrU&R4TDS!i6fxl0JM-N$^~WURoF#Ip&%xVp|hqSPS2hVeKbnu?51FcAxN7*O$G~Lp1)2`oq&374~z5+2T3a)WufW zWztSXeh-zjBwHhUle*62b-0mc1>$yodht<)&Bfd0`|85Nut2YKY}f85$SmrM>dt@Z zpSqahg>Biq8U3)@ecXN~JIVA^wgHo~R@)Pi6G8><9AI$AdBM}WyQrIhn|z)*u+I#tL0KIExm0=V}6#MU8<{s&zf2|l3_T}I+JGnV0demvubV3=X(IfA6pQd zqt%A)oadnx@-!x%70)zWjjB|k$}(As;csE0>5w>)@uVM2N~h4TvLO#ps*i?--9*RzDhF@5*kuycLp?~_ zI=EwxOZQ$Fb0tq7vE=aMW+Ux!)L0<8R~a@+be2>oP^kB)N3*AQnu{41|MYLtS?odJ zjWnVEA7kGgk9GULpF5t6$|j|fT|z?f{r-7AKEnMT*L7a!d7Q_29E(F`SZpg=;qhCf|^kQ+c z9b=!TJ$JN6x>j`7=<>wRt-EfdC?vcqNQv~*VAC9IKNk13ziD@@eiX0M^-tk-E+bme z?>@;RCi=RM=K3jrnfqaI-8}}2tMY;8@uRoGT}<*p=g zW_~jsgonS6q2TS#_QYcrhYi?kT&^VZ0)o+yrkx*UP3p<}w0D4jK^~&?53Qc3sriA1J=EBxxx<4uwf0$N zP(t6b`S&&V@#}oNa%GL(jm8CI$-`{f_~zGoO-c99)hQ#%`HCv;*xGW}ud)03^~Q&kk^Dk7Tvv{Yg`|Uu zJ}?v~eUZsAaxYwt*YAR{T{9;F3&S1+X`(Dl|^6N@4Lv>-Uqrt^JSfKQgh7iF?0vE z{d^IZoR+t2*Y(Ygnn&{2MO=Bo&XbLaMuSF>3NE|_W@*c__x!w-@fDv$Cfs*t9=h_4 za<}ZCNtB*D8yzSbNAgGNzC3JkFKrKvi*o;11>#H9gif4ca5FNs~fVRof)%zrSi@=%gkyx z6PcM*h`WZmSr?1(QU`et$3E)+3h>)F$g3EO96hu;H^JUcU z-6#92Cd?f6)m|A*OC5$M$IiF7yDT8TdX4KUdq5Op>c@OMt?3)}mgOPG%u9?x2 zf|0LLA*v1f=EC=j537v_2sOKB+HQSQp>knO)<}KLV;i0i2k$$jM>M!;$R*okRJX5q zVpCliacM!CdCFqj@kXw(t!MpzeHp!4fqIPXNpK0zPlz z-4`GOI)@J*9@KXwcNKkwJSRsIUo3-{&c+qBPd)odH|kFK@2h!>V`sE{Gh1Vcjlp}b zHPWJ0@u}Mu;7=z`-^G6){R`a}y=1N)Ix0I%%!g)b3mn(H9ln|&TPbYvT=Xx`B4fAh-cxGRltq*+>Z6uxu{9 zUqb_0W-w#}f$1CK%rf%vzxs2wb(MsdwVE6iwb{xwP-q?*_CUx`i4_ot`r~gQj#^ue zvmM;<^`Q1^=JjJvlIt!%o)lS^KPh#zyMsm+dk~mRe1^ z@cR=D$HS_>^Nbdey6ImK8@)vBsuT6LOnKqqE>)`@zIhMz7xlDyVLT6tuk}W ze9xR}fXGmA?7?~%Xp3WZXim1&kXq3tN*?QpvZgfIqjL77;X_2}&zA%d^q#cBHd%u7 z>GwDk@}>bZFl-^#bVc!>Iswm$rCcgV=6katd0cB?toU=ZFH)^a*5WO5kp zV+O=(AboT%1Y`!1iuB|^iuM-_U*EoEFsA>wg#9U%@lJi{A&a0Nl)nDwhn;(epPgq` zFm6uGZVGL1$S;*U4b*iblyj6NZfVl>+|&((WM$uZuH0j^?gq6Vzgre3#?P06|50p+ zi@^Okeq|Ww_zW(BMo_OaC#&w3YAI3t68flVgRGb_wN&KDcUkjc0C7+-dx9 zyH3+c%>?^~!HXp^N;Ulxgvn|OufmY7*bvZ<$0@*PLPJCMiAG+(E%dpezX-0^AESkH z$qk+7!C7_b+2->90Ouh9)C*Rc*e}rY$0W?EJzjDfJEw+rBh8v2)s#nCzncZ6A2?pV z8h%`VUs%IGA>FNSZnX^#4VN7@+OwzIBUVK7{A-X!tWifgLvKJAO!*T-@BYDVS?F&u z-evUt(T2sx2?}A44!(%UTZ;u5v3|rtO1qq6;I1lkoMtapHU(C5oEgTv z!iD3#js-euP1I|a;a7l6Mo)d_TTh=)1zsNEwz|jg4}L$eMLe3WasEfuUR8v=DbaaR ze{|KFH7$t~7e*!D?!U0X#-200+SsHuIQ&;uf#~BeGtTK9vi?0;|AzI>vL@@}F~wu5 z%h(-PP860sNXZbNb;$SEv&Dow`BEGx@l`TB_|WqT*}WfF4%`^6c|5d+0M*|L!RfOr zSpnq7>tMr>ifrS7CuwExA3J_hzUisG=g^_Mm<%reb(CnI5oxqdN&2x4I`<)mF0kR4 z9EOZYK+Dl-hQW63 z_>NhTm+mH#qhvHFkXNd!m%nD&PSOg~9r`dfY2u36^$Tw%f4`e#Twew>&Kd&!$_=I< za}eRsPSF3#73#3}ABha0)%^y&zMZn4pFdY8(jMDC_yAfwHn|oZx0~rifZ`{UOn%QQ z;{L$?_KK1DQYoXfQ}hL8#JtPEKw$V`UQ5@AG-L-Ltt1JGY1->BQPMP)XGXL>vt4x7 z-%;G(4=n{>jkyh?HxP+3!P4dt^yM>Cb7ujTT zimugpL)_09^TJ-+0xokh%McZM0pRGJXV4aY(1pdU zKJ3&7D7|%m-u^v^jklpMF)KLSYOrm-*_so0H#b;_c?kpRD_erRTV36jWwWJ zWQ1wP^4*_REjSL=UMq-MP32$|ouiDlJWN~Vj(XqkGh`Eu2ZP#wY!$TL2j)#SI?8?3 zm&9cMvus?*vRPHDS7e`cjhs~IxcBfa`!;>~rNVKmbGo;H(diM6Nw3YBevgg0THT>-sxN$uadeJ-u`1t=~j#%iNZTlM3l%+mo4@ryPB>^2%$lsYKVT;oU&}@F*6P z2pJ4Z1pjj>9mqo#dG9VTjt?g^Ihs=sTHJfLK&KlRf^8WbeyE7PLVa#{l8 zjK_b(PF{xWls52mYR{c^>6S81XfNcphU!{@5}>?bg_n};97?H3oON!>&)W4vf>jZe zyu52=)tIs6Tj3AvkdWUY^HCOYjtjgTp=M_U3Nz)Rgufh8nT3Ql9Z|CNk70C8x(57E z8!4auZur`g!I}z{KU4s3u#uJyF-ZOds)KdOwUsyeUtguK?``_ckagx5FQ`vn>7^vW zN@A4XM<#@HViCQ=%&b>_m$Xd{?^Dl}^?f(BkK=OOa5)7&|6Ke#o;5Sz+Z$HAo~sL! zl*-NiUV3_Z1+U>d>bQRQg^&=p-J4HMYxB#+Qsv%JxG3@$A#jEWdzhJ1=T^ug3*j!m zvXf-b@O=4J_YH2jR}mA|q^V`m7}Q1k7`)5Op$`n-Gd9lzBt!FuF?(>1Pg8xEdRLbS zXW@>}m`JlE17C{s2Pe+u)1em(5J`s%^TifwY*$rTUOlU?-Zg8U8O0!cQ{ptQ&zZ#e~D239`SUS z_N^81_c5iR3wb*0S2y-gExow=6v*Vg)LD%*Q!a1@7;Fm~G{Wp*k20|x+qGwSx1!W1 zkZ;;Tb!85QdMeOuC>=N?;dvD#lNV6e@NvbpR`QWKyW+C4h+u9j=zsCP!!@o~-3w$t z7&p+avW#@_(c!?T#nc5-zuHT#Qd}_KSY{it!;<=~({mm@;&HN{VT3k+?~9i&b>LF7 z@@-5^V53{{2qu_{(VN}>XvMtSAz;cl6#O*2xjUAcQR9z4VImU*5g4m^cLpT;iSp|>6{&7LQ>JGjrk9;k~(KPLe3-bmIXv_%PN9~d9)Smf2SGIsa1 zf{%R9)CkkW&z8yc>k#Qlrv=xiCnhC9aPcbq5j?BUJ|{=h|NjXc=~rmn;Py2i^Scc` z>paXNeLCMKViGjakLA_Nmv2bsDj@F=4bihxXPz0-9W~?yh&!_oyFuSS$m9&E~ z@>ITGIDxv;E&2U1QXbSaS(S;=1N^<9REyVHK?{$Ng|w9e%ZlZudNBP(O|30Xgycn> ziUH8Ga646RKN{~U1wJDgvkK%Ld~W5Ox4 z$4@8xKbJK`(gO1@8|7}W!TPM2Xu7gBqJ13UChn@3HN^l}!5FP<=k@IJnpiBKkCM*! z?%ZLKTxC--kBk|)_SUbNz0RG+<|!(mU>8gnzYH~UoT$*;3|P8YNEPvZ3a8e!WC z!REnr^D?sKLsT@$Wj_*kf~GKrPkxxxw^CoR6XCK%!=Y>H^-;e{BZ2LwT2CIM+uDav zF^qlWdbEm=nQk2U7!XExsVgz^vrlI z2Pq_0dU+u$)R!x1ayZE#Of1xj#3=3hqwyK{yALJNo{=L-ElQ6_*!}g4igw}=c^%3z zyJU~HvHhpVALYXFkhD z!n~CHXzB6+WRt}++1EF7GvV3%D01?oT?`D-Ib#MBPRx zeFV}zwONY?0cxwXKIVjh0N!v(C58uh}i$TC(1 z%txV8iH)ihm#4j~r(B*Gd$YzEmGT&N^lM;A04nliZ=U8ARiZ{gg{`W#c4Qd3WA(Q) zdJ;z~ip^=l7ytL1Jzw~sSs-{{slXV%gk9h>?|hIl&0-Pa^1pj`Ssi3L^f~>#Z4O@$ z%`YFSYMCJFoDf}UCARG>+~TLQME1}kaq~)lz=`_}_`MA)(#Ko)3olMi^iK|5WA3Dq z;MH}hg&>@mkA3W1whsvFmBGQm0}IdiP!ncBVLUjse*#y~wGHG$liw` zM#F$Dtt67)X6NAvP9X~I;WSE<(QRm?eb;_~p}6;ny8IpzpM>&B!M*CxhuasOC!nxk z1)AED!*4g!UV4sp(WjnXgvE=HRLdpAF!E^!_W2`aczuprBKW4bgoG~22Qm1ppS#)Y zMEx~)5|`)RRGm%xBhwrEDz=uxQrQ@Je_~bw;#y<7R$ikAN;jMdavOOBr!1oy#p9Bn zb)@tvvUQK>-COBuSPgZz>_ovU$0uO;`i4#RktI)d_ws%Sjt1!zy3z#iz-&HbXGh=& zFz5MVod|$Jq;k053(@Ru7O-}_**7|th;u)lJHMk~DV0216h(HnOJniW#0sq{8Mus9 zdwsrxk$5tbZC>jzTq?Z3S4P+omF@5Y|K@oioC;tXLE^f`mS0-513$Ju?|Vtsp|$YE zS_kLsOD+&EA^uvVu4a{8@4|Ock_3Swc%JS3t!!Tl28JZM!pl@?59^e4+`Fe=T3Vhq z#ln0QPrGpmUboWAOUvoi($wpwAeNVPe*VWF>_=^YC@M=lSEUyaIHt$rfp`CWxJL5;+F5WRONK~Drnzq=~mDXQqHpQ;rFx{@o*AIidY zr{>b*L3oiWcA{Lenq}$8SjO@pka@Md%O;^_D+aTb2!q})H`pMBj)`WyPsLp1Zs4)$ z1(e?S&(%h1`n3#wJ<@)=g1?;oLbnae;aV@`84nLPtR0<|s7a5tPKl~uYlAZVt2IgE zAO?(Gc9rQFd>^bbvM2^IZOdVwfs>12(6L{zZ8M?U;V@Pg9{AYrV>E%b(J$9;uSG7r z4%1f_(5~sBM#*L_|G+@jI+$2t5bfpe&O@LkghogAg!X97B!s&n9mLMm4~dTS3!q0! z5Pq>zgZ2sqNV0$?rWoY)EJ-)BE9D?6gzbu4AL%RFFN!J4;o~xs1Lf&IJ1fuDy&9kW z8{0~w5Q%|_V-RF`Mx~E={8*>%K)u!`zTLUbi3DR&X0EHNi%)(=(yRpmJ>)%KVB_KC zJ-4-b$DZVSB9qCTJ-sH)ixw>CKCATXvrvS#XPo1kKU+|NBM7U&Taxl#FVGpHAcr?OU{_{D3#{*TQEM`hKH5aZLZ1 z98hJGNr#TeQKZ(^&@fsB!OUi*bUNu!hUXXFy95Dzj;~re$iY3u1&9JQkf3d+1;V(f zxtb7zw?hFKrIqK5yM`)_8)m_@10}8{ZQ!Wc$gjnH>wlXFHKd6!x@5@e1kB`in3~#0 z<^vti$oba;Xf;__>#+3&k-0aj*zNV_o0q=+ct?A1+U=bHq7}b*rw_fgnAm}q(5u;} zpTzz0psq1ZmX0+qnD|XCM=2Aq&9!=camo2NXDz8){V8|(SUhGVp%AdUXzpNy8_C4Q z#m{&M4N;l31HmLF2^`}3`y_oNg$UvCs;M->$jIm|Ce$>7?#^F3?qmroS)No9am)Lvl55ouVpcIzx#<$phJG|+KaUP>l9KnIsR#~ z7`x~A_oKf)pKXIova{ZGQEJEqDuG7B7cq&9_784epoz{)4zaPa3YehVD5$Q$?mEfx zt)I44r_X`&B)9vfrbY2#96WgvwGo9x8N83cTv;aJaGj*9KO`=Q zFa|7zV;b)GPEHV%P8Xgt=CVSn(gJJ05)yX+Or9Qd<_5T*A z!hA8QF;_N=RM=RMK;T7A0mqW!sl`Y?1)|9lU*N1Sma=#el_YCBK9B>mfa?#0jHfOY zqa*hUh9Wz{jVs446NnhIhCO_1>8Mk=q(2VIH<;V%%Xo*ux8=i)F8Vh|_tDDmF}9B7 zy^4GCw?5{&oe4f(o=1Nf>&>CXJA_F+U@w6;+k57e-+!WMyflKrLygXN4iqq?Kh9#w zORl8TQ3}OBaMv*N;43*c0rtC1)|aKe&8@~v zBKxCzlqt2Rff;BAL1}=wpAI6_}!tY^1TiPP4Oz^)}NAL@q7gkHMDS*lh^CI9oqBoA zVtBR%a`mlKV#s)%5Q>4W4l#t;e96nez@TUb1T18Zv4_RP94=H3pi7phki+{T1}?Ra z963@T?dq0G1aS~;{HViwe$PmT)CP#=rBU2fkj6`@)57l2ZR7&ZV5wJZOJM)c8{LCY z=+OOniNe3%4`N!jY?*oxm!w?!JjGLeu&>j-S>%o5nj!lVmzecxe3p=Ji;l%E z_3H;a!XMM#DE*A~zlev&9uYX_-|w1AZZoD*v_&%A()ez>!QD^ORlsVFvQ&_7|j{$115uS#%T?Io(s7L+w>*1%av2FvmyeQo(^ zGTyy=*9s&#$n0Kgs}`cyuF=FPh#)1*Pb|5;D0#ey>_N4EFc9n-je_Rh~hxtzYh;74Q`P}(G4UEii z1`hXsQkjl2syo?s?bFL)XTqO6FJW!j0p@vyI0;LzoI}B>Cke1d%2d=&8 z`NHTrjB?8mZ84Gqmu|Aya&5Kk`I8x5S$}F~%2I7Gt~53gdfnSZ0?*c8;XdG4CJQ8 z$TH4y4Xxdt3ERIIAdSIb14(}#4J1u|gorNMe`YsF_kKy@y{6*(7%oMx2jlcN{Je~H zBX?L;kT#8os0_af<3a0`GrfUQX%~Hee_0&TagG*{Q@9k4eot7rzzctgRAPoGYiT=} zSr;WjdTs5W*4?=6B5kr#4?YZ7Q%^A=+8Jxtp|mPUgPmdm<{Cl)3-+qLpHelb-KBbu z4UGp$`|QqNah3+I6;fHM2h+- z#5V_4L{$!U}1ztMt0S&*QP7fK}h0e5tRKzp@K*4MRgJ_&X;Q} z{)|No$&6$=)P3c3%k0UZBF-B zD6QH+{oG&NlCYsc1@r5-3x@PU!ma3MQSC--3#DMn%0HhDHqh>6h~|lpT&L!ojGPoU_PhxkV7j;H-+y)0?sR8lsb zj(`n%@ccDzer%pWy?(h=KR$gRUB3iff!h$QJ!#GvS`#*!`}XbID_9#Ld%FbsAU2s2 zWi4K2MMGn^<%VbH>M?Mk1aP-F|nra8Gg+YO)a+ z$}_D2f)ASQ8wY3~0c2&}ADf3fqvm7CMa)#5i_T;6N1d!i%HQyCT|k0~plXmZihi=j z-C;r(S%jEH%}v%VvAd*nx=(KdYpKU05(fznC5SKIE(%lB-!y1DJua7VE%c;tWPM-v z8>5NGZCoAG=B*>nrp>PYk&*M4Vkv{FrHxb?rF;1=8hy;qZztL7U9UO+b6%>xM#Mb3 z<;9sryyYMsJ!2o|NJvAE-wgTHhGm=TY4@mLWQjCn2XaYS2I)gNFz$_s;<+SmVo91d z5b7ho^>D$=su;_dNqh1YJo9M2X?f=1qg+i%dQqOa%8})RXjxt7DKFM>ea{v1C?T!0 zgc!X3OqiujMTBzHu*^MzMU4MgX5`s20wj#7oXIdrLAN0kzY*aOxB7R-S*oHq*$hrp za~%S;OVrY#_UKED+c)bGnJ^SJ+z$)&l}FSuQKLIj=J8nMSlU!3n^mOm^PQX2i~8B` zl*dxm4;0O;P!=2~k>NV00#LaQqr-<&^~=bP1Wn-B%M zn8rg)ar%|@P$sY3QdiH>O+Qsi;CBDt_^d4YYIJ@;-Jf-^@y?6T!cmS@j3f_NL$aRT+o)6ppl< z+Fou|?drZbrtR!hqjZSB7B%vLOV391*ycaH793vHqvBJ_`I)pWAS(8At~W-Jior@2 z!%!x&kYY5e8;hJb78qJdXr3dAPFOV!5SV|?kx6Xca7ldbi0AQT$!f390U zAlPL`{ZyU&>+4PG&_+Po_{&}ptVYBt9y+fRe|?BYa@n#_G;qckYiMax%!ZTVcWrpD zLB<&%22=12fC#H#)dOMV0~s&hJfW_?XxVh^yj&QKcyr}~oKNb#GX0CQ$)jRpdIRfO z6%~tRQc~lKG>p2t&#l;e|L z|3TLLGPBML@ceL}42F!!)MT4qaMlZAaioWc8!WKzWW z(!EO^+6Cz~DE@)^)fBwR75u=jti{;Gq^mNyY(mkpXa@Si=f87yPK|>Lb1Hx?h(6k@ zTWscAg4C<_jCHLW#F?-_qwh(5W{tTNsZg(P@cO6WG9j$t@5fy)A`X<{=Ev?_2z)tbpn{CHpCdOG`?w zi1BRw9gY1aCM6XV8|AQpllpvBRS{uD|F_5bP_-Eu;Di0I=2l*Z8Bro;kNE_z$j~lR z6+D*A%uM1bSfTRH5&i0yYzO5SpK^MFCW}TeD6aoBdPArN{0y*w=aucPrAiPNoum+2 zF6m?{N64By)FQYid*H=YxQ_u@lCeP6FC0|8LebHE2Wjvc3*AH26aZX)^4aj#KeidU z_+2EWo5}c;o2Y*ifgjg)l&gVdwc7N$&;KiLdCM1MEU`i$bqB}Knos%6dSGuUY?j&} zH^NqXI<3Q{J2jgCC`7;P^P=CB2F#rzHv_^@UKiVD{ZWc81wqbGGM$`c&xwDXB1Ga0RI1q`L?X`dF%c&hjJ$C)tvE7CnFNQf?W;!ppP8j<3Nd;ZO8zGV% z_(ufT#Cba{?J88U$L!y*9k|hPUr&K@>~R66A0TnyUYI|Lt65|Ci++GL>o;T0;4;if zKDEdG)VK=~ftjS-_uQe{-%ol^Bt7_EGo~nQZ`-y-|N2}}!Wi;2$1;2uOQF>W)8|(o zf!)XVZ#h%VMzrTqt$EK)Sp9VFycMcIXH(fvh|qsjbpu08mA>t;T`k}lF%glO(u~Ww zJz?|P2DLdABhQ^4aS;4?3qd8@x+9%b#Jp%B1q_)`kS@kVZx*T%ZC?*jZN4;~+q|6B zo1NRr>&2IvU6F$2w(F)#kVR;Ct|3Hwd~%t1!FtkVbg{kZ5D;k!I6z#Y-A{(6JmO@Q zeVy=?D_4~3G7nTdm2@Ixz`b7+Xw{3K8RK!?gRa)RW_uI&R(^Vm2;j~Vtzf#0^t;LQ z4cZ%TUZ*3Mh|kFSvG26*tmubW0REC}R@Ty)PWHI>c-=to~Lj^WmwmrLg?V2PaU>GoITk$C;afMx$ z;5Ipf%zCWCj`KODrUfH8_bP3-gj^87^4US;4NhGNfhzt}Fp@9&`<7!uz8}I0U zowuwJ{JjwVB!YDL?I9RqFmJZ&=~VC*^TedT(;iyU4qT#iTcQj7RGNB}N~D>2cDv9& z*~}fYW3Zds-&e3lqx)Bu((52#N&9W5;36cb)(}Ba{sxf6&{cfbe2U)EZP|JHn>KAK ze>U+wyihK%8QFlK>z=jLKkam{h>(sz7rd{3!twElxU6ojM{V(JhIe@SN1pCZ+{D)C zcH$x-?N|>t8mm5~-q>ec&7$-3$EKGh?SU%jV9jdI;eS$ZN;);pE-oR)`#|1Ydbs}K z{iDxM(RizVN=$@wMM$06TP+lI_4Pe$-&?hL`r|A*$G7^>-gg^@8$}53?u&~s^>p?h zU?dVjpfC*79j#6=UWFNp0Yz&<94-f~)RS@7QP$xc9omSXqk-ajcrtU|( zy6KCZriE^^P-Sb_zi(e~{Is0A+y&KVRlB<4b1*?K3O>Zq6D_w<=0E^NK9Kjv_wQwg z*Whyq1rFraS+q_UJ1cZcDsBz@AZBQgD|vTvegafS9JtEkhtLVEyzKgv!)y+{-~-tY zX=!`U)QhFR=jrT&nxT__T)#9#M>oRWlEb2)%r*Crc;W!f^j#u0}lL~6dcL<@> zL#dYfI{|rQqNa7{>olg=yiIcmjOUbB1TT)nl#~*QIo<-s7CLl{*3ZwEqz_8}IrvP; z=uG$7YmD?W85g16iaaMJ4ui%rGUv3dy)*Z z$Q1r|wqxH)I);8PDA@6Y%W)?yP1z#>q~?IK#zp-6w%;l`>9&@(q)*%PO=QZFlm2A< zIS`B48P4hbeU(APxZ4`_Emcif=_yE(ZI?6`-S45|XW4~5D;bjHg(ynC zda2+1?|Q1>g?6dFHJBOkFZw_%`2L(*U(4Oy-IaZlBlV}wa}osS`T`74R0SEwwn>{m zs$F@MgV0Afw5TZF>MRK{F$Nlwe+Fd2SB7UwBDrr>e?j8E9Hc zJG^`ICKS6|aW!W=jSr3Y#SxH4LrixqvyiXb3+X8?Kr<^bK&~tB%KrAqrO1x~-eq3`A8FBhAxea~f2%@> zkG_x6GgVUq1`a%}R#PWDCO-?Z(ARMsm`{MH*Erg|=MougRCSJ#LJCxtJMHARV}uZz z5V8~b@0~DqX*}8<;|$@fd~p>nDnQ0@6lbS3bVHSS5TBwCe5NKY=|M!#4|_xtvPJJs z<8~xE>ob$hHi^>N2&N*~Q+8)U)&E|_jK6W+Wx4*UmCPMIQHpk#j4Q=nATBq``8)B@ zZw33nh`EG@*d-s!1!Sm0Mu4?J)iJvyLZvI3^P@yv8 zpx06L4;acjSatV`p0F4s)zfwSiaDUHWx+`AagkL+-*O~m&?o-59$xbEdF=wL$zz-_ zz0v}Up<^}?jidf(z?No&KTJXfy;j`o$S5c@fT_GU_k73gDz(5*JXq4=^K6d1f)Mv6 zYG`5>F9*H$=7GWAS0f^pBB|n9uwa3`2bBktz6D1`_3k@6ES^^sMrDE{CZOOH*AYAY zQRk6bR2)g*|MMzw5erC5^UISZay2Z_h$D=NccuFhGWZVe^@0USx3kz1+Al<^(a&sw zn?)PetusbvOcc$Uhqd8na0oy2>lphq=~M1{X70jeL@y6b5XO&JX}M*O)QTf5>PHbv zyeTE9tS83D8swdXky{wCb$EwA_S|W1zG%fef@`6=^%QtjWjnK&nzH{t^Pxrj<<`e= zoFt%C3enQOBXejBAyuJclu@oaw356PVUKom`<9JrMS2uKHJ1oy9z2wjNp7I=yhX1y zgnt9AX;#MViJ71_*qRQr{KhOrC`1%$j-T)I%0W0z`BKh*prxfjsFBiIly>8%6L=bbXr z?aMf0Y15{#7cc#33vM73tH6BzVduYDGwTW9 zuQ}`b!|4+%oCORIRg_X4VFoDM5svbg?|HwmS%qRUc$=w@00t)?5Y;h4<=fAvM?C=i zTo?y63J|@HF|f~|5X_|sLhtnfm*!jhq zxc=Qj)UTNT2h|Ht2ejg6b;%g+v_`{qD|75T&Vb#`*fq)9TQSBmFZ~`duISBbK*9U# z*ROyJy0h?tW>BixI)3Cs4yB=86-YW{ka@aiHZucQHYNyG1^>CAz(C4;Q86)Xba;>6 zug$P!Jx3$*k^YR{oznaNZt!S{ZD2Q)u|)-Ns>VIWKSy&?KLf|n^%?SvkRuE?pj1^= z#b>ZodtU)K4!0XCL|wy$p+21HF{;|y=RnNb)`Yqt?tW*`Vv}Z{VzKb)EfZ;E3Ay9% z1JBsU81JK)Cu879dYr;CAV?+zvLg8; z{`R-1TWJ*75y+D8nJleEM}YFlnUl@AWYOOt$^SM&(jvDVit0kb4C6%yFub+HsPQ`H zfk5Qo{8?N^f6#cNO+2J0^=N#k!I`icW&p!p&Dw~~(yJ%=fE?!bGAMQ2i_6M}&OvXj zZWX$vQJVUmc;}*orwmbR(vW7Ht%Oj9NjA(N&|70dwc`+YmGf{s{c-Q|0$6_s;*@neOU2VFapdpRdh$13t@D;Jr1bM zRn+G4-YW!A@S84;lU47^(3W-@u7M#XF&I^J@9EH)8A@vx{V$S{s(4y~4I(Z3Z5iXm z<4zN5deZn$*v!>uJ1)-LUoq_i;paEZI59C?_}1=Tf%w=^?`l0C074}b-365=g0a9h zQWRbC%bI@1VcM9YicRmHEk_xW(EO!h*YI6}aSkT13NDeB$f{~te1TP|Y zPXCW8H(qg*db!{~$U+Czx{%_;O1o`NKp8}cMmPA^(wb(}v$M!l)%Npoun+C6V<*68r$}QYk&>-g%KuCNU{8zw{N|l_I=;;Wvg*@0USZ z(>wkaE1+uhrh)OV-a&MK=^d-|dqvOKRhA>|`oXfzsI~mWP7(?^=8(o1)rU1H>1Bru z#sJ8Paq!^5iVjG0(XK;?6-!K$;nGyMY$}83A%I%JtFs-CB*(q%!f1Jr@X% zx1x8~om=X*ZdCiz3LfU4^H)Z`N+7i;c@E5aKs?H$YgwoE9qo}7J;5VW@*H6Pm`Ta& zxhFH3{C0-CeICyMCVeAT7H8hn-$%Xj5MBl6)&Ml0w2`M2$i`S-jJUlZxp;{A8e2!# zCVD4b3v6_9c4FLnCY6Jx%FWuLI{;rfWz7$DjlN?IpVsab6~rY(FN+)219TS#8qKXF z)kgZ$5fa9z(EL9aJl1Ir0i0^sSF$MXf~c`6iuXh$W)d@{tGg?2T~J#sVo$rpc&Vw@ zj{YrvGuKP#ov9C74xRxK4pOT^Z2U4Q;o|@{WdLkn0gdhGuG8drCS>;b4`6T9C=DRO zT4Sn4Z}DtRepx(OyX!O3R=$E; zG~inwm<#mQBv__=lcX`mw%>U{#D+_;7~0Ij1m%>P>T?}zT`8l=fe?E1PrJZ z8TC&^_`#AqQ?q)d7Z@r_R$x4*`0d*t73Bgd?WIv?X>4e2Rqp z==)QboFtLIpCHYL$t+0G z@M?dTwu}FSk5j6KMoC%q^OH|MQx~?q7&%fQ0GrCc6R}srb|uCqR9h*d587ZDBAskF z?mN^sQ~Av@yWhY3&D3-`(0BLU94Y5|5wlP+ z1x*b-7NMSyMFAL;0bb*hD>A9Eul;+Vh!ABT1 z$p7YM*MB=Tw(y835{1h}I8QbD-#+Z@PJn5QHXu{AH-5!*xOEF$dS+EtS;_nxm8oCx zvR-T~@O-L~ZeLU8jtDN;cHk@mxUfAP(`}RGO zW5wi#svaXw4tBy0AUaEfZW6RHASKGruG~HaUrZakRhb;o@1LzIi$m=)1+npcf;KlF z!>qO{Yr?U@!horp*KM;SU#Ipk?IKT+_r1ikBI1EHfhiAhHR{JGwyin~&8SWkWY+DQ z>G017b=73{L%f^Xt5IL`c~>!BcHtNZEdp_N%f2z7m(oac!OmJn=+LI_b=Kzd{T;BC z{L6Wf{GUYAS7F9%p!Pnf=E^npeq}zD?$_k8eL(nB?2Ikc_=RPq<-lJ2wv0NkF`aAr zmvaf_Zg`j`pON{P2(Q3WG5_f~4B;3?$~!uYYp^^Hw%lWcVucc6&bg7*+KiO##1p_7^>@%jvYyAn z2l`oCbaaT5tJ=%+3l{`@<|cGUjsXhc1cJO&Dpp3=Mo9T*D*I5>XZY8%k-V?bE(T;H zS2EFk5IAM8Qqq)AN%|?g>#I3i7^f7O=oh|i0Zf|gZobN8{-sG=xYjx}O6K*Zdsns& zVU`mPxWXbJ`MM!!r;Vmuuek?7pt!i~I zFv@f!wuu-e9ic6$n} z2ll-}V`q{(=Z*wk zMg;CMIxy)vuCNMx5mjr7?$za&z%Xq*Zk!z0B?4l}_wV1ggyws@q_w0?79w56SjI@u z^A|7t$#+TVZ6pQz)+}2G<>1N;Rh%4*%eV;73Ee$HW4fXW z>4k7$Yf)y-Q>g^UZ?e)R*Vvr-^X>VmhA=9R5AGzIYwD9Zrp61_9J*W*y{_`6ilp79 zN8)dcYP1~gZ4J0bOL@o}XUz8#e`{l7leZ-UGZo8!vknEl`%T#)1f#p_N52aEP&DS2 z?F~yO9esjrE(dZhCQ!Mqcmp`&0K$lCF3anqTs$NOFjMkQM!E2|Qx)EDG^jFPn1|*N z8zqnX{ExW`WgpL+J*$hOo4Bi)&zr7XVB!f|*ft%`zqpb@+s;yO_VVeO*68#SdKm_P zuN~?gJ!_Skm&RLVlxBKR_!xv`Tkj^PIV-{cYE&D7-E}X=(R{o&_z3oi=g`{B|8#e5 zf^)vnJffgSD-KlS&NIo~u*0OC%uQ7FJLBWyyAdsz=nbu8_ zqVe<>QzC2oOz-ddQtsuXcbVjiA6X8ZXd~uC|G1{r`v6DR!m3_)!Z^q21`&07D13*k z+@^;Icjgk8E*#lz@&cO)e6U<-1w6rw@9#UUmXJ5^09cQF0oOTzVXg8BXgK~Q48gmMZ%{-Ea+rs zafp{(1O^>2L3hI=DF!kG*LxdQ)7VE-_4y$&VrNCL*#x6|=A?g?SA_#MzcoHcX4NYn z$m_psoY#?attBPeIb3Er`$HpkBkCjT!2~CAI$a0g)4fZWDeDw_T}W{WSF;d3093Y1;n$YYv(8S7*rPab~-5Z z?0DfaHDQ3W@PE*J?-!wjY9nI{AU;LPe}8phalhf>yu$+^=9b(y$sLEuY&bL)i$xO; zg>D6=s-C>c4Am4oG5ZW-`vldU^ObZ2Px}2NZ1~c(aG-n9_N4pWB}AP)j;rW3lqwSi zut>c2!=Y4QW8|cGgud8ZrmM0RGRXMlL>8&|n4&JQQBJ#i$V=n%!Ji)93sZ*g50zeR zRkj4HOiPO+bxR6M->5GYdAUm=Vy488UZzsz_^%cB#?*dlKY1j*G%koSBO_y>`~4%= z10M5VL`peoGR**GzKv6JJv%+VOugy5yyYsYb~{2Q@-Y`h*b@X4Cxjko23$cy^3YiM zOma$@xM@dS|ML6H;hiFQJ!W8|-TWFYch%`2d1cBV+`-Xr0> z-Fu=81v5XMB%~voOIZ@q;QK7{{e5JlH~W*|R)E1VZ_{RvM(zn~3=0d}AaG)TGFSPD zv7bWN|5DUO*rMYD8^gD)(auV9Kl$(k_ex=o+muno&6Do!kGQY6JTghxWbw%}qgF32 zl7otiAlT)=P&|LkP;e?B(9Wz=DMbXK0P-mnTln~iGFtjS%2{3dvT&A~63-kLPl9`+ z+vi-iuKk+m5Sd@t<5*yDJ=zD1+H;1PKN1eE`Gt`}gJZ17S`Iibr}#_9X=|XExtrb< zHnHWKT(M-jt*$FA+Dej!oH4Yl-+l-S4J8w3H?*Eca}EUg$$YP_39XmAW7e;h**Scp z&&see>7Iq#_Uyi3qO<7@7qs;B6&YGPCo?mV6htz5c!z8uW#=aCW_ZZmN!NOTRaqME zjy1%XRRm=zJ^$#tkurTiK#eW+Pto2Bg0U=4y0OzS8>c%Z)U(5mML{AP!ak9`H9td+ z>o;wA&p1M?V=={M%k?F*E5Rjdol8EEnqbJ#wS2zyjH^`0HqTelZwwv!eSl{u^ z`S}+G&-!UF%5fe*G?`n`bs`GW=-T`C#cSAXyheNAyOzgkKZMh~c*GF;=wB_oJ2tp# z3|A7Id`1e2qjS^AwTjTuN@^MZnddGuUs zlFscdoSewl?uZ8SxNc4eImH<>{3c42z67r}P0B&XOtfm7!7i zAUP^Jz$*+#k1F2h~KL0WbK00@8xe}q;T?eZu@m9M8;INaGZOQ7w2*?A7Idv1J8u5 zV;;*C?Kedxt}3tF*qiHl{|%yAXAOe=*A#%9#Ypr^U%^-5D!Q7UwNYMYyVKN7UVJo^ zHh+g1+f{5uhYh|Q-hg9TtMBoc1F>22ig6)ntK|}g@uRod>S7uoj6t#;zDSlE*b?G7 z-RI?hkDqU+&?}@IDMYdS9fC9h6+MSzJ{92Skn#9X)v`JaEd1`&_r2>H<+dRWrT*qN z>;(SQtiDu`8dlWhxg`e+uG=vpLK7 zB(!qnN@XTu#;5Hp3(yFKz*}HFrJg3mAG7vshYX#m(-S7=I_vOa5OO;zJv#)kum{fi z86L}$Uj86tl1Pq{8Q}{~^FSWyVRZdw=IZ(|S00@Y`VBPk0XAreAN>2ScAKh()gLza zwCGsJ4V~UcgBL^Uy!Eh}{&5FwD;@MPM?684bw=r3EpYX5(*$~!iO}sm zzD3WW=Il#?7X28(RC<)?FoJ50vHfg9RQzQkgiQr(eBl{V^jgDM`SGI23FM)y{%8(W zoRxWqVT32s=>I?-F2-CUkq&fBZNX7Wmel})Bt`>t$z+uE4&RZt7FGzWNvqxho{_}U zzUSU@VZ+ch;(x`(%WK^feXm2$L+`f5BhUM%&Ylf&V7TYFuPW+n{>%k zkj;|pwW;%oLDY|LL~0qZO6tyF3*T`Ab5Q*;_poOq2T0&rmfq3&y2qVQUG$u5bnX(` zMNt=pwDm(4$SZEy57CaV{edL6^PO)$c$R zEZ%jXX8&Pn_^6Y?guIx1@n_Hh8h6Ghqb|m$I*0pVUQB$^1k=8t6uHlr@vCsBw!<*1 zNQ{u>L55VA7F`eSJQk^L&rveH_O-$fD*<6P_^h&a`FS z3G9t(@q}i3WToaT!aR7iGB!^=4O_}@l3yt90lrTrghUR1boW%9F@Y+ zQS*pH@#Nu;750I3?n~?_f6bq(G=jnJk&AJ=i*IT%oMS}~-xE%I}(fOjNVJ~04 zd}W;*2&%*{y>P4jA{W%YKM_0C0sj1M8)!Q%^zc2`*>U{I*Dhl04dpRa2rF)whpSeQFCG*&^^vTrgB z{*A@c2p-czCi4X_j_wjp5xRZ+G(HrI)WmzF7?`4F#R|X{wnI2A1TJUbk$%k2Hje@; ziEuE>qZ8W?9!u3p>V7g;{4$VSYT3ffC}L>TiiOkm0c+&s_B#&6p@ItYD!}@|JDq>v zEWx(!2L}^UjrO%7@QPX?VR6``!TqEC!jh(jANO(>{n`vB(H!uRltHX9S4dP9MAm(` z^5UvV?CXRPCJ*VM)%<_+)nsCcCBqeS{nIDd5|%Qgo=BEe)v0w{+J`Wk%Y1s*-&^2A zpMGH`$a3@rwiF5_K)O(rP08I+9j=iW*d5i9)=h}DfIsTYZBs3i)Y@P}A6o6S{!VIh z=jK`!&G+TXZZSRDhnpo|X(T^9dh}?tmQ@+XGaJS`9}Zd**CDjM7T^lpe#*tgRf4;~ zvm7jgBN3V41CsT;x1r3`G7uI7x794JbqW2M3N0-VljZQwE?E4kVbHn)>}t z*m0>{u<9WHxDwwS^XF!5%?BXGzJx?G`{2W8r}e z?FW5Gwb0-C)mOK41Na0kj}p||RpYKFziRX5+&`smO>nG&!unb3W$bP-Cfg3ww6r4N zDADJ{Qvo2f66*_c`pRW#_X`||7mLOjm+qUn8_h}&LA4_u+B2x1jTKuQWL*6rgmQ z5_RrY-7Vpri>l}B!Q^xc(Z6F9;=S-K4ENN3T0$^IXjKf0#kcUYX;2I@jgqsiWTCQ3 z%t(9H5v(w5e*O+HWeeeX?~~HsyTsMi&7Cu6f6~3}s;ZIK{3IVY=2)~k(`?fde!4^B z^9VA*pNOoH53Ok&AFdTE!mY;)@b!_Z_$({|q+7@p1InFQ(He-c1tiECFtXm7q3 z`|NC+@XcqJXYwuhpSU-JffpB{M__NRYS9V`^mJq?gw7&soKZm;nRhEB_%-P7LwmvA zLeG5j>g1C(DtnSH`&B>i&KXu$;wWI{RXFCC-5nd->`vBV74uuz=X&;9`nsFZ3hS{* zv6TBT0M6*cCq}dH-?6js%{fWQ8@)&7j>NwZtvyd}CDp}n;KZn}*sn+JaY1A)MyrE- zcSa5IU(hYrb=gr(bxZw_)Q!G49FxHJhj=wf{!Us@$+MI+?7w* z@HJY87z~)U_Oea_!`|MC7+4L(D;%1}c)u54FwOHX`tAd7krCMKnL;TpU|V3*zG zmh7<%BNb8eD)&8&iI2liH^Bwv=gyx7^2W)@R=e|rTCB`|mqZCA%L5U<52Jp6;ogSy z?i&teB_$h-%rgho#q( zU%Z=<7KfI~&lCW8#bDP4EC{_#Nt?BZlXE5DRPNM+le{Fn3?^$*ZY_p${g%60Hubl9 ziMzePGTNLP6+7C3nmcv1=`bK&rL>@{&E&F)ge~s%n3<-i}^?bH5*A z@QER$n5%#?h zmVfq$y@D;ObD=Tf>KTsFP5g^d+ZFiXrsCg$XOLo&Kj zsZBP9$MpNEHcj#66C!c=r5rx5{ZB-gi-=%zBSDOMuP{J&3&&SmU40}Y(|G5)e z^_4^t6amW5DpJTf`7D4PEEdz?1CnbrMDAI|K=qq2BeJ7+7w7#Luo+C7H1&$YdxS>2-rtPYO zTuk&RGjXAUHvgGN=e^?P9JCVpC(WGDJ0O>eHU0rgV2|RsKFhs)J1QW^AGf!-k-PvR5JEsa8YCWYjZXEI*Q)oAh;V|9%H+k<*j$TUbv^6mVC$= z@{AP%0;%#_;--6>gnQmXR}?Wj{rU%2qp#8#y;}(gRPsIbdV%t|hF395Z!S^gHae{E z=9UX>-GfFiOHOBb1!3V5kCPyH**93kM+V=#d6QTnwFdUOrRW*gsbofFkUh~E4Y@Cf zwucl7v|PJQFz1oF?>1n$Si$2V=sp>5MyrSqajc@cquoUZLzs(U@hLB+nznnCT!N8g z#hdeQ->*RteH-{*YtYXR-(sFllsLFQ=@=aL5N;^F5T5!AlO%ekncZi>z8>S;gt;aB z?jkKC%0(fSK!EIQp0Rk^EVAf0#lXh{#<)j3M!pPUi(b+;UEj=uc|sT7UnW>c_Rf6eD&+eVO1*>cOZc|L12(W)qG&%Z4M^@J2Xgs26_z zuxg0tenfCi^w+BZ)2zL2VmHfp=^>zogYSHppVQzk{P;Q`vF`X+{F`c#3z) z?=YjeT&UuikD1?>Bk5b5ucUGQ8IS%}`S~7Es9LCVukRvU@8w^)@I0v^?rwirA-@5e@V~(_6vqk3kY zfKcIz@J}-416eJ{-5{)(2iA(j>dK)EH{=$sj&VnXCYlOIMg>F<;zjh0au@qVJ0P}e zf3nVj`hl&|ebMN9{R0OMgl(6$`LGw%Rq?2nX(xP&DjGngoCVMRGqrD#z~?`?O}&_D zuK^$UvY6fqUp+;?1(W&*!WdalS#rmqZh!Pi`;qg~O?yA9?4(%+2M0$aB&@FKMW0Y2 z!qU~|;NYOj(bD}MZl8ijuQ`SPzAW|#iS82M<32Ciih6&cqWX;aupa4$rLAeY&<%0$ zxS?91g}J6~q&ury3VaXt`lH<6mhM1iHu+iW;y3=V6QlSDYh&s7u#5Qn75QgB)sBQB zv#5hOI@4*%GtLc^%jK+*>aXeM8>}S1%?MKdUyzxavIg*#RQl3g0xebyjTc;zzJ)Aa zW+YBm8p+z|72yv0ZZBo{`w!1}cHW=XMs*12$L1hxT z-}84XixI$u#-Er~L{(Va9>V&X$l!tHddXS(j;vj3$8eq{)!GS75jFjb&^^g=&XA7T ze{b2cC(;wE9E`gnfP?Z$GCCfeJNmnefE3a&1W_`NTW3X0VyhfEjl^7v0xH?@?1c;A z7_(g#e>9VmUcQnfJ$-%YN1I=~sN`FS*PIz7+x=2PSwX1?5?^Hakny=drP#T!V~tpK>HVtgW=u+|u_kwhuXX@0mdka}x3>+GHgLyX`OcMV-d*zqApp8VzM8KKXKZ{@<-V8G>&Dc3O1OQoy zrC)Y~KYHm zrR1cJUUwrMZZ0lAx& z7x&buByqkOZ}S=}UgiW0YbOSJmQvF4`#9c9Js!<^ZxdQLKH8hv6U;(7QKC@t@CnX; zfx$GRy%Ple^8op?~g4omiFzcc!w2M-2B7xtyA z_}T0!QA(HL7?@b;YeLFj?Wc+*uk3Ey026ZzY+|V zqS=Ld>QKYR?lz3KrFB0Jd`48s0j_3M*G&Q{_6*($#?)J_T&}OoV4(OFLXh{IM=+|f z$LK%Lw0&z7#?`)nxyMCpL8Gc_em+QZIagKB0x)dT6lxz%lD2)sIq&}jc{xG?+_V0| zcI3%9bLME+PdYnz%}p^WERail!$r_r$M(v{%{SI703Y}sQTRud6rRolRe~^-7LEIZqe0|?84F1M=LzeZ~iQZGg_qCLdsqg4LMiZ zpEx={_?YPHeUnI~U&l%17gs)a$Q23d_M9m)Rij#xZ{2;CU3?;JPnI#>#iVxCc)>jR z2Qw(1T$Nw;817CLT}TVKy)*H;_`Ik7r;FeUA`->t3?lL#T_Z!Z{p6sh4*YR);cGm@ zkIJ=w0C-a=FtFFfpf83>H+$@XE#^wdFW^-#xM4%JM`}XC4oswIj6+e9sY+zJ5_NbG zC3oa+^C$1I98OSPzR}V3wN(9O{jj0K=fInbd_DuFGxx|=o0zL5_wXB)!YCDTedpx* zE0x8H2}2kpx>K;Pddu8?P$J)}s`zMFxPJ-oo<9~hn9#kE|(pZBb` zn>Y0~l=zsj8SozY#t}VYacYUUCf`$wz$Z8iYXqT-e_*_Op7+hcVA7ARa5b( z8)aw#-7rt6d>zKj&t^^`a7$}xMD$%0Ri#he(HY%F+{k2+78XvDySHC9@AC!O!=Qb! zj9PBZ6^gQ|N$QIFkQVku-XdzDqUWCzzlRFPMKN`2jqhA0ndAArbV>upC}_(*SX1nJqI+tf+f%iDz$hql3M#W@Wrxm#PyQU z60iymgnl=Ae}}o%KuR7b+A$Np@S)~5Rv1iijxIK}GGHIY1z0{m&$aJJs3cleO^2AC zKe3-X-WsGD8G;5t=VPGfiyH5`3c$uK;<`LuAS>;di{@QkI5IrKL~i->7mrC?%cGFt z**n)KIUQo$xxf7Uly{g7VNmiS)^sL22M3Q?df2NOjANLA{N7O4FkL*m8 z?V(qAmoK+bxIJDD5jbhTD%17+uSr^50%E}nZ$#aXSE96&6oUw1g@_2=+u8BqO12~x z5qcS6>6cmzH^^bWSktpKFW=ud&UcGcG99HA zf7uZe`5fH`8*YGPn#2Q@q6mt?jorz{mYF*ZYr10%Gc8+74|FUgX`k=(#1@6rcLl23 zw@07mLV^2B4;SUNpubfORl@M#Z%+OF{G>0@pH+X@A@xpLkdTO#L87h~3*3aFlTz!X zXs7E>_mL%ya{MM0_e5XT-g7KNLMlPWx(ZBRUFV$Rhdu1VX3XH5p{BA$r&;0MeY2qU z3IW>PUTjf?Es)qk^$?D&+bngXxZvk)Yb9EbUHqpzS~G9a zO=wu26MIFcCbD)@wXM5;FMB>lM z{2kn6tWS*C$Zn3rD`~GjHDv7kPPX7V#Y4d!-Fw_{LvE9o})Q@+Svqtf`Vd<2syeAzS@mOh#Vx$xt(e~>6v8#^8MW2%wwR2-`XFlL; zlyZl5y*Jn0bocH{g-;Gl&|mQ=v6?u#>3eKu{WJI^AMm?B64jXYQ4OjuQ1mFw31l88 zphc{{Lt83rGONDz2)rh|m6VvwcXy-RF*+y%K%BBd!B>gz?L@DSzOqbmz_`+xH-WPe zJ?CP!8bx$f=DMF@%D(B@%~wAg2;;i-H)f_U3HAtyDO12hX5vm^t8e<@p&bbT{!g9m zX+oBjXJosKBp)7XO?7n{!^5IB+#xGy31+)Fr%MUGBaD`TXG|muk1iKyAf2id`yzsa zVd(x*C)L>6-P$-*L1s3C2(vi`FP7Qkqc*pH1y1$F353fp74})~?@gM#Sfxw=JtNgs zW0|Orhz+z#wxSjUZvg=T-oX(w=ue#@5=&-&Js;eLdS3VPbs6ie$POvGD6su7+I69W zv}5&D7i$1NVIcFDAD5`wYm?K;6=8Hn5(1(3)}r8sH+l5Y_H@t}{O;9l(efG&MGY*@ z^06zw5?tKW%_~2#*fBIRW9d=xYHEq*I(|>JD++&087iSuGPoUJnp~y)_r_qg1S-9X zOEGLrP7JA@iMoH6B7zVC63I;LV$zH_fV~ekNz!C`IYcp7EKe9rHfz_cSwFM0TprV{ zfzcMub6}Y$zP!9HQ(e_|Nji$u?vEXX0Dv$n2rE{ z)`ncae*BWjRYRb}w?Lutyl~+ox;CHZLG=By7DCBry}zVcL%odV=ly2YD_F?*Xnbs> zmGg_!V>3+dmo0cZaP%ow>aIf8vbgr*g(-fAcRH2e_^z(5EREQ#X22zC@P!^Mt}~JJ zN!E`VNIrf8?z;+iT4#^Q)bWRrFXFB1wrS{}{&&=Te3C6*fsrJ)(d$n(M+!E&h=uKR zxz9HS_8JB_W?yeulQqC#jEpGEU=OXu9GQ4Z5+QqVVqJq1w?Fb} zWCa%9DgkFYw4e$93U8&mOzjn$+nhl}dx=#a%h&EXynKsT?A*^pVeev=lz=^CI}s#( z_xp5AWsVpE?B*;!`k!CDmuT^VjMhDwHmnGVi(5fh9YHD}2BNfQ;K#6eCPV7|VN%Rr zl$4=i=n3}FMWE3&ZR}*vuh4;$K*)AOOpW=@r>pJQPj)C03E%@TS}~J8SMPb`h5XVs z1qK3Nh%XzS0Ol%-<6T1W5wnHl8K|^$;nQSGgM1_IlnIqJ{Q!(p1ylQB*K_$rh3?tEN5DvaXWv@DD zM9@oZA`-8PBZHt#mS7iTOXWDO@UjJ8B=3z9_RhIQ>z^F8t0bE67I7cM(jA4Kqx=25 zP~9EIc^jJ(WXEo+t~4%oE2!q1i;mv&EgCG$9_{4)FZP$eW-jJnQ(QtEHKMEceDTq3Ih%uSp~<|GUaHY{qWt&G!9+?p<0aBm@8SD=-O_8BteCIor!&c)1PR%5cO_m%vhigN1kuZg@tllsYSQz0KbH=pF3OG`sK6mt^k)FH_ z?t{ntJHJKMrVWJ+(n340qkIZFyMQb$TFy=wFlW#^t%^+b;x!U+F%J zb}U=;bn-Eb5d^Ckle5lP6$AyuOy#gHs6A~Ot+s!eeir)Q+2GH6gckaP;eVc9Jq`=q zaj4n39|cglUE$Sfv&$AQAF?hyj`MUTw#i17bTp8GbPiTTTJp4jlh{g7BW64N3At6r&bmivt+&;prSC&(K90%6!_?jFv4}TZd&KdW(0fsGKI+ zD)8oJu5|n~b(ko6=!?AbC8-l^jlUNK??V(PFMp+)B1kil-g-Yj03AAGqN$;A84hRO z(}YITT|Q`UUJ=GtT>Udp6zU19+aN!GqwK&Vm;?U=P3I*bKB7xH67P35DbvK^wbV~| ziW%yJ+$FEDf{{pWVanhr^8;2sacWN_sgx~Bz04q-z3%;yWB|7#QU^SF@`S>F?BMh- zHzvQlP=z}E9_hhT+YrBef&$udL5Un9EKGT#EbG*H_)^%^C?BRX3$Mt!q>)ZT=ojR< zGGI&n-fMDv3^dc9Cw50&mBAf{KbDD#NP%U|&ThckEP=o%lT8e@%N_90aK%T0w75?H~(J;^wv-8=`X3XkOXbM8CSxdWnj}QQ^sR;@wM< zR{nZ{|HRf``*1%LO=kFQ=To6dt^rs|L*enN>VE5PK{lG^}6mL2dd`rSA^^kJLUV^2n=iR>DUtoRz{cQ7y*1>cmn%q;XD}xZppD_b+7?j!8gt3(2C!b|-OdkMQ4=wSMf&xB;R| z_#Fm7Pyet3xsIqyW13N6n`QFZ7%BuDgF{L@%5|QN^hm` zLtK8Whw)g@2jQ~@Ug=%sBE<9UH_!3&`xZ=XC2sM;IT`huA3*=j&?z8tL?FyGYrHFPbH_NkH7&0P zW2w74W%_>+XdVhgJ3x6-3an?F4d zs@e)MgYIa4F_-q?!?zOOkPUkgix$&~f8=*Eap9MrYTdcvKU)*8{`?sVr`sjZZNjf^+A=i>^F-&}$l5;df3+)o+Sxci z^{LWW5#detcOJ$#ZMUA@*C$o6TV{r~7$Y+!OsB)OLf^?@)}No1-jr5T+1ZULi^G+R zdX^@bpsAhKnjnWc@Fu+a){wzU3%QQ+BJtbADP{|;O?%Z{Ze4PD4RLo2VEZ0j1WNQu zY3cd{9*sG-Q3YHI32DiGxM*tQ8q-Gd^1IJ&;QgO7Pd*}QyWJ=c73m6L^iqko?Il+g_o|gGB)To@UcUeOq?EHR_Ol>bAGt(P(T*@Be>4$&Dzj}wAVO6&})5xLp*jX zclMMf?iKH>|n>yr}%g4$ijEF6BK;n)bDMd5Qo>WD*mx; zVboCJ7a*b>vSY5@My$b+eH*FD;OBgJ-jzw~5k75h@~VmOj~+Xx{_;x~5vcH|#3l;A zsP-;Z@ufRJd%^w_v0Epv$l<@}tyD*elDiprw;X`pE}*P4vD@aCnknA>PcUqwt1>%t z!7OcnBgA10G|Bk#Y*Vk4MfEd}H9&*qh{YugQo#FO3DzmUT8&nH2$a{5Ulok>$dYro z-`9f}S7GMG@~tIMtevrcr~oC7Zw<Zr$bvE0H+?(vQCze1d;2XP|G$ZPfznAyE$ z-lX4uzqqR88Wz~BQ`7ugkqdL|1^YkotxYpbrEf#79E$_TOE-B@9PJMcB+hb2^cfqi z`2_@&fmXk68&EioZU|NtB5u7$tqdBSNDU5quwQnw<`DrVHLZwlG68E>b#F`}66f)3 zmb9I@>V61&W%KXB!uQHYK50zd;{*Zx@-C*R1Jj3@{&#;?0ks(awst+Q#78&qKj^kr8WSx`-&bqB}zKu`(Y9Tkut zl+5RnS>;biXCLwrz0B}n_fk+KnpRPwQeq+_Ej*7uD2>qy=$Lx6?>lgQf*)?0x;7JO zyXY**3_p_CB`A+qk`WB%o=4AwT4D<{+}#-KPe;xths(R3nlZ-_*toLS$B!SYv7{pX z{Fd#gL?nC&y&v*A(JC*gdqytZRo6KC-E~4gNMY6~woRt@QJ;!QG&X?c9643@aUYI0 z|3+n$UuP(|6nEtYYWIkll)~r`bE8_e?@8WcO*QT|jiP}@gO7HqADv9gsMdhCtmgq6 zbgCXAf43JHvUBqOHJ?=Y9x{>*L!cx(N8S>Ww|KJ0(b3U%<~q7vuFn!?Y&)WBNpgt9 z9zhFb>Sc78ZxR$W0mk++gK7L!=Rke$9>bu3fOX70S>O|mJD(J+{KA+(@b9>(!H1=}emgaqPRlhQ^Z5hYLCklO+6plY} zs_q7$yX4BzJ{_nOGPj+p9^1Sm!-}p(3kh5L=IQ;Ka0UYDE4ENt^2aug2E;0mJc(wW z@W|~!MS&NaEz??f14^#f*@-hLe$#&zs;uu|Zo_PrmxU@4J8m{MYdqx5pl)dlQUUjzKUtvvLJ zi5gA!_aXZUvGI1Z2CcUPD6XkO1oR5Tq6me(q1!MH>+nx@IZ8M;sB5fr(}2ig&`HinuFptxlcC1#2V7)Eb8r z>_#Clbat6)#?9IVJ=07{O;nHR%Nq{>H~`WX}Ns+qKyh9+(k9Kxb{$||jx%K(9LMs1~IfB@yVuP&zlxYHp; z_*kvj0Tu%Ii)aE?u2>QGB(Qd^2Aa@a9liF~XKihpzPnPuar0j|{?pmg--{_HE=sEX?Ew1h zjc+d_0TYD3@?a|PCz-V|2VRSJO4b}ba%88maZJTtAnU8JdLaG&I3eZ}c7)&E(PTTT z+s5>xj!R6RJ7FzN)%EcP>={zw5bZXE>D3n^h$j;JTREmy%WiO!b?hz&*cdd|2u)0hhj`z#i-2D2%2QFN&_rpaSV!%hQwcUHV8Xu_52rN zWZtsS%a;YoEcfSrT1$Q3&A2!ZE=3;yaBqcpqQ_Sbb?$G5PjDZpM_i~1!|eh&KqXa0 zvfpPTi-hYRt*7RoF5U@OxO@ro8G~Ex-DemtgvpQ!m5AQq3E&*rjn(b^I0^IF8Sm`d z)5C;>L!=T}balcCZTb>+k{&x(`Y04|-!FIz=~>vb zA1`t%4mGwEi&blgx`o+fLgvX7wV9C9rQAOxj~Ta=SaF7V)mF%I_qFC=DHD`P1yQq& zpGO+pGZM+xuaopS0S_%Pe{;|}AL`eE2P+E1Kd$bifPlbjytixPb!WdzQj<6mj@>vj zhI`I~uU@OE#Jw9m+zv8yt!jqNv5XiGh;FLovb}OSkX!kB?h16U&l|f6CdnYvJ{l`z zJmoj+^R_!KJEyc`F0l(I%b4>PwST$^oX#&}erWoBrQR@??grg4_xL!0fdLZ$k^4N# zI3_AAT(9ZOIeED!YD;Ygyeuo5;z*z*iVU>&x-W0>o+G7A_>pi-@>n5u9|z|$3fycBjb-k zt$ouXsL3C~nV0A$#AX?sk7hi{KU$mM_;WZ)6vT^Gg?GPCgQx@lr~K1r&M-`NY|D`@ zF1js`dHRv5mLN$DbL^+D4gIyjqXu#1dqe=HA4QskOdqFq4`6TW^*R-Oz(sQ^VQ0%9 z`>HdF8p}#Mn0+#ZvsccV)akF@f^P1ard!!<2q<1qN-DFYFT=hEb3nQIuTno}9&|%z zku0ZI$O?1nPWy90zocwFJS=gLKHl^#WKoBnw)5~B}q?2L# zS zo-tycr12Z9QJ#eeIY}umc|INHmp|FKMx9%wtGB--s!6X%{D*r0WBeM%T(|8Fpf_(Pu=BT+AS zC$+D_F!fGgQ`9nJBhJ0Fv>K`dt$*;#jaT!BM{kWcD1K9nS7RYVOgPRJpudefh+_Z0+qfQyYpHy>Don?i+I{1&9LQe`nfS}4@5a&VH`NbQ zhKG+KjzYSp-FnzjdaaT6>-_rz=`s=%$rNLD(5mG7(_|$6ljk*YY(nzBXe?q-pKBgw zNi$7JaKg=AvhkRC$8UCz#<}Lc4XFP-Hr^H5r?1Z_jyg@S)+)0frCQ%{;3E|Wf9e)T zsoY>qjY)g;LpL)_M1NR#o&`kru#9_ibhO6KbPi_Mdr`3WEVwH4tzDA|{hzItDNZ`d ztLr+hw&0?DK_s~hwOn4kMF@|oy?cm}_MKDkeCT(w1sY})$Mctd!4=7PVAw#3qXA4T z9xh&e$s?fMsqlXDZtD`+IzE{S;rW0{?7T?+e?B`kgiPNY*E2Cfcm!yy2Ki}2U1oQ* zP^J~-rVwKd+g)Z9T6%_OG?T-YF$?fbasl*pBeU*A88B*zv{=Mt3NchKgU`}9flKRO zj(wcJ%7ts8d8TJ-ZF;?5*XQ|8<3l$p;*mr1sBvntoGX2QD;`{d=9-%Eqzg*v!#xii zXJ07cng>FdK0v^Q)rzueHmoUaVpV)>!W4Snx^!ciS+4k_@4jRbbK^;ooCtemVHo-v zbsHO-ux-QA9HZ}<&oG=2o+^Fb5V3nheQ^5}E|mtd_k5iki#uly=Dy&8CFRj z&n&r;`f0BcquM$r4ITGO0obddTQYDX@LN`J z>RzYDYro$-U!Qf_W#pO5=-%{1V=Wg01a8!Bxh2Y(Q3s5TjeoDtU9^QaYLV81Gy;wq zCF#K5hRAkOW!J3O9?L={o=&K*Ir59E?-Ujj-U4{-tv9>m>%FjfsT5NT-P!DngKQ|d z1_$^zQ+;(?0$0U^Y+vsB%*+j1l2l?0@OZQJ*H%AoF)mFlt@J@DYYaO9$Zz`N>2lK@ z&pKJkGASWh%={k5MmIK{P9)wg1o}-|m5=VUk?C7wo<89T3SU5AfAc!_+=5Dq!EMd! z+~uj@YSt-i&oJo5;S{-cUFf&P{fzD#YTu%mXvu~Qw1&!O>M+oF&NO^?<-vySL;#|@ z6y)NrTW|&WxXCEC5@oPuMXPraC!riK)HCL~m{~;l89>e&Y{Vt78L^u|~hoDx% z?dRB8t7d}@KUK|%lI*~{vzw1YgXX!Ell%4?jbK z6NSmyF`H>w6cd$j6CT^~L^6_=e)`FkI8n>?^&>1K&jDx1_v|6P{1XZRd9krd_;-A* zc0h};5{qd{*qv^i7NWLCk3|)w1$IRh*{C1MPT${ksxNpL4Jk<-6+EfN`!RDf*!H@kfbAu80+^}iI5q-IU}j| zKhg@J*F`iAszj0VQH}^3h*tW8T`^DiwRmyLs+>mdq<-YPI%dd)v7*^_6WJ*jHa0Ik zO|ihnn&G4o8IEHaMY{b8gLz6pl)HIXGSj82rclmu^1N67hQX;Ce2#j?fh@P(O zyfXa3viepaB>fNNH_jf`i@k6494EzfqYs%Hmc+ zGZ=8;0?X+&ZZdv*R%~S~Xo$635HA+D8h-Z}LSd$CnAzCTGsB>@@cx}ZL9i2E_0-9m zB=ek`DaW-5`&Ee-XRBPQQX|Z#f=5165uB7l-%Gt}Ea>QMCX+aLCar=02g{p8cQa#9 zI?h~#vZrXK57EiO<#K;HSvW{{>5W~*GM|g=qK~X!Uruw0Bg=~S@%=O2VKT zLE?YAPM>jfz}Mn2{h}s&3&mPG9clD4Om?Y3o6iws&D@=3c`r;gQ8yxU*j|^G{K#tH z9p(c+k9f8i*_3YA*}Hc&z-lM=<--o~U?|5i3k_erRfiFajZ0cddJqfZv92`3x;Yds zHli2%0AmcH$i_Fs+MGB_!j|GGMFO1;UUmkx|L7oLQf;s>I`K+O_r}2fyRY?36s=Uf z-glXw?7n#E(m}33ZfHkn~UA~ zLc+pU0&aJZQTFm|uV9b5He;z0b+l$nAvc+=69vO91QC|Ly3-HQeqUkqCj5M|wPWq9 zdBaDkgp8X!r~S!I6!wiPJsLCpxN<4bbBH|b+G;QwJ$oqk#>jrtuYXS_n;RmGf0NYF z7n4VIqVj%8SaJ3dSD6LaYAFV(glTafCJz3tSyuI$KuEZ19az7-vfyk*G1pgF(kW$; zo9YHyx$Dycp%Yg>b21oRu_H8jp4oEyu6&d`p`me3&Axs%^J?Q9NtSEv6_M~aiMSy3 zaXYtc6&n+$5Bf08BNZ{CxygY|vn`%CqeAoV5Z`zI**9AW^U7H50|#R81HD_Rj*p#n zbS|rZI2z-6=MP4~;nA!N?)pk5H{s*>GVfY7afqJC82@$;Q=f~(7E2fg{dHrcsQs0f zeqL}%Xq!vdoAYO1Ii0vC$*e4rVHIZq;mP@JZv^EU^^ABSFA2x_s!QP2+zMUh_6y6_ z=drfm%*e>t*4Wjzk7HLxT%JPlK-s7{N==0D$bB6qTXD0A0g7yHu6`a zkt{(uwXmg%gFaXDeozDt3SmG=4nC3anv(nRjKiDphPT+8ddqKcirunF_6{hHf1j;o zJ`P>}jUBv`&-(ZOVGzZWDVZ$yMSIT5=x8{IUpFT-ap3#`n(eAB4az#KEQCz$dS(!G z8`knah05rhX-;Oe!8+-F3npr=x1Q=7OQ;KsYufUKvhdLj$>{uKZg{|PjA!B$gTF=V zmDM*hNK$?Gkv-bjnfFH(<2{i-kw3w&R==)r(l^pO2iQX$qh=se*FK)KPY_%j=Mt64 zChKL0W8B`+vmAxjyn9$~%d&M?1>xLZao6W6`nhnr@<|{gfEe!oJl!Vd)rQA}>2q1N&-Xq^){%$6Ndw zCG$DNmYUdW`@e!S+}S3p`?j(tVmNXobhd5ty9~y@RuZ6QvBJ_*M_-iv<83;n{Fz8@ zljm_QA(^feFB6CxCBU$aHrFsxb3?rSl-7~K zfpQv{;c!3BE6wOX8YK3uW}{=fHrc}rKySsBI~Dr@-}uCGRT}vSH@xnIUMw8KcHxA! zbvL!riJ2|`Fw>~t$n5y{KXn>8j{jJ;z!IWBCgu17*=!KEJF0HZer2TK zc0}iE+S88kPLLzMZt+bF7MsyH>z22kW4+)IV#*pZG3S6?h2jM0uvWE8{hFYbxOP_J z*aE8+ZvjCWu|PI<8(>k~Fv}(iLlBes%4Tlk6Ibs2kddWp)%8nlp~S za%Is?kxb{SpVfbV?Cd+?#Zl>Xy}y}5)cLrT6;V!s0LLr&8WIIHE34#t>jf1QjIn`X zcK(Yr)=IJ8CMO5Nl(RifiULu-WVG+)`(SGSt;+~f1{v+U{0q|B{a8-YI%G25cOe}B zVW|tgzlsx?wMcFt+U^$#+uo{`Q~(Jrg~Ty1M)N8C zlHScKiauVjhWLi<_ykjnFchzQWo4pOo2#n$v7rNY?-mcr)IiVw3so2G!6Fj(o#C$k z!5%coazYCmMjw0+&0GNJLFbYzJ0qIqxu(qIvd}(?~I)Okt1Z!R-yZUcQkjCg>{Xhs}4|) ziD(-diePuVW*>MgE^c4)tnZC^eM0AQIV&s6cpi!h*lHYdS@LsxQ8FcW%XX8e8I?w| zik*bXY(6yTFWs~>Qot~nj9C@Z^+u8tU* zb_H#iNsfWH1@(gB*oogL&fK5hd|m}}r;W68)apX-0@&%~8)COFi(X$Ia++%>JylakWX>L*X;*HCf_ za`g4})m>e460|T%6~tmj$N&mCF7i_Da8-JFWtyH`eI|vIlXKga^Dz%&jhfcjOAn;3 z+(c!W`=@t&EPcP%=)ku4`WR&`&8jC4d+Y#;zcPz3@>@oKsO!w_y|z%8vFz(`f2zzX z|K;erVUx|ndATvZZ)$75ge+UyHQMVLI<=6iWiGDw$s6TSlfmt8iDt}+jZDcO)`D`O zz*TvnxS>NcZ}AWhI)iOKdCR$bf|X?zt=b*}>0i=8gF6KVaZ;v9ox1z>SuCt#dBfkp z`}!p_gUHI=N058Jt&h5c!@Z-7{e8|TCDNN8yQd{AEzX>& z82v)to%hPr5c|6eo^EuMB^1=1e7oz)>E9i z2R}HNAIRf+D1oo5$k^ZP-dOqRSbO0(tZf|ahbj!U^uYVu!?f zF_TT~;O=a==X&>oUDPi$^n#G?&wQc*fU00&B_$fA{+6Kkd56xOJ$niCvck7-C9dRg z&E>@qa&`NV|9Op5t)&&OMPnP^0rN5=>oA7rX8Opbv&yj`FC z2;Gsfqv74r48rb)v%u$7`-ZiabmoJ zCLNPJ%czTyMQz+*dxO8ylLa|8_*71MLecQ1yA=0a2HZ4lxFOnDu0ePIF8IXUqDy{KV$TsS7j6j#!{D6s3Xj)-KYB z-iPhv=h+6|u7MZjD3M)V8CORXZ(lcPXFu$@Dp`TSF3O&aV=itYjl2g{F|%(}?P<{6 z9c1gbq2Ebcy5N`k`fgyXw~^@dJKc5`!>Pgl$>T$8w#nXOvaau~vtJQG3Wj)Lm6h7@ zeOw)0bZv&vJ70PPzY}c&IiOg5og`WFF)Usx>6gs5HZYe?_It*?&eLD7!~}?qUPh+@6jQ>R3pVHB7h5t z<$J0UD(3bP)rubwlNyqZ997K~i@?&aXo2q&C@~VIY{O$|OWRWW@p$niCDV^5Kps!f zaz9<`G2Q8yu0b3Wb;<*+mMX^=d*)+r%9Sf>)!omytq$_Qt{F|O@SMR0t5!&)N44*?tY5ys+`{4_ zI(!RMi7t$d9>;J}82^XF#lphpf}s6)@>Mo8ST6G_01U%#CIO!Q&86#$V_5@(X7ii6 z`*e0%CZ?n;lz(;b?u~SD$j48~mpLke@sf9M{pyVy-~5uWtX*C6e23E5Dst%Hv=&@j zTf2zSjsU_ZwR&a6a@$wrz{Piz)%zU1lJQ$C@7G8-X=YEXb)76ssnI@b(jSoLm#?N+Hye0(&|RzA6gZ99r3;W}*JQ;K+8KJcS0)lFCJAKkBY zNCp@gS#N(4*QsLG<8Soa8qT&CN+Z(Gu-xn1mWW_pxj^QZVMuP32NExuxlbVm(6f+f zB&iN>(-fvJITstQ1w}d#t5a~kryprQdYncn#WYNx$GOdq9h1D^gRQxud|DbB{chF6 zw}%N5CCfUrtYMAVnl)-Kf_cRewTy#<7!laL82dA^yI3bGI{Liez`zj@H5M#e_N`DY zbTP$-tFoDw?C`0&(A}sk9q7?z*nEj-H(w{Or@P5`hk?}G*jqyESd7=SAFTicgA8yk zY|jJ7Z^L;m`X=;tzoO*IRVEMn#!lq=(gpkb2 z5a^F8MwGF?wCn8IIT(~GTrK1ZY5V$hCu*E}T4!e`Mv`B?=Nc@Fe?GV{%57BdE*~Xp zL1q2&ZpqYincPS}^s?oQnD`Tq=1cAE?Z&Kx5-kTKvKP%fUVnZN#T3G}54PXpRr)-o zT=)1HNLpn(HX={@0#@VJl46S6SwmdyAMa!(Btl=$QYheE8~nFaX5!=9YA0Jk`R7ZJ zZ&JvOuhDyaJ@X3hA|}R+_njzmm!-WqRE(A3=fqw#EpJ#awtDr;_62Q06!+t8rEYi? zEDZAUTZ^@ghx#)e;CZ`kyZS7OGh0GZ(j}Nus6&0c%%N<(Jsk36Z;e8Qx->qeEK;JF zMeqxqDY#C<2R1SCmB@cGO1?Zm34%+6qKJEY{`W;Q@3YhE70Pm}-6eIPbpr zK{0k_TbcbrXR!Sp*ydh3V=lIK?H89dtS4Nw5__9-U9b8&v96Gi znhH1G+tEx8F^PndI4~xpbjG`|ao5j@LaoS#JY@HUP`JL#+pd)NKvz$1Fc->>ZGd&o zi9a@4JTNfuqUx)`-L%FKjIv51I@7%EMNzfuC`or6YkIT~Fk-F91+b~nX#B7^w)TQ| z9;4%-D6V^5fx=*Q<= zIbPS$(CV0EFiglW75c5fx8k4sYr2RW_nATd|KU^Y-GlII)g&EdAvzFra&p?XnL|i}t?^lv16fZ?Y$?2UL@c8R8M(E# z@TPfrC|LgM-Lo+)8zARkO}8oRaB^_PcI@Y+AO~vrPR6Q z@(sU4M4jtDxoEDnO;>zClGm7UY;+eaB;0Pt_wu`Keu=e0f26Fhf2pgjJ?z2N>s}o) zD>Ncv6^^+=V36uRk#R0f+l_r(HKMK6&xudaO^Vp%OLLL#u8Nv3or+>hNd-GJpEi%KO8wnjILCo|m#cd%yR}}8=U2d=_ z0z_i4N1nz6&n5q92_`i2OH@DOaBVvfV)KTXh2{Sk`wp<4+xP9K6j35lw3Je4nWdeE z6@^gJG8&|zy@wEzN~pB#P%7FxBGN9}i%O-5cB=n*f9s*1_x&I5`#X-G!{hPr`F!sC zzV7Qfuk$)jF-7Cdlg6f|+jKq08GCL>!l9w!or-+c3S8Wxtr&ONa;-M;1IP(Ij8vUY z!=!&po~iID;51AE*I)w~E^hdF z{>b6OyN?{X?e7(y^k8_0cnE-nKbLphHEgM)sp@YjoWtfOYMnI-4{4^d-k+vSp*E}I zja)vKe8u`%Q3>Dh_VpFdIzTz*w#@4`Y*;3|rnslu{3-ti=*qqReiLl=-^yVUABuN4ICfn#YMOw-R;QrjIpOR}-PBXzf%>B`eFa zQkt~1G$nD#?+X>Rs(ZbC?kIZS+VwZ*<8IbQR0;=Tjg$2E2Uk(lk4;S{m!YB*rEC*g z3((MspCht40`!YU7cRr^pRqg8s*h3hzLubV2JCQ+W#t#f(7e3HB0k7byLKCjBf(8^ zS0rc?)W?bPU8rnn(@LaWzx%!9ZlU50-m>rkgmCohLc!3#epNU6BH#3o465`xYh~ zSMK@%dA8e(7SeiHIS*HwgnP!AF?cZ5ErCkbDC5R_Aiwoy|6+eOC>~CpJ9@HOMLxop zux$|8mIRFqXAR4Y)|9x4b+mLp-jzgofLx~Pcq3n&^Rh3)ez5GtFiQXTGh(?{>k558 zH?3FMyZ3sNFqA=yI5xbTy#%lDA|lH-6G2`oBanP}Y+kR008XI#Y-7UHk z2ya>3wQptq)3CE^*p~diFI0UTTgs`)?bY0_$~hkFDPglM zd(e7ZKr=vZ-SblmEe`-jnMVnZL9hljHP(sgE{Deyo$;44A^;d4ZzT_SoAh4>R))o7 zgH`OcT|q&i^$PEe{_3=S=eVe3Y>5BQPs}0i(Fn9XJd%AsGIpT5F*f8g(Idf*-Kf^D z1fUGZ?wAL3!&M0X*lPr&WI^PTug>W`ZotNG@!uBwiGw=rtAz`hnwn-l`Iw*Y4*~9l3=Gyb z3y*8Zx)RT3`z3vcgnc77vxr4VXty`7uVS>D(znP{pV)$rbGV;q?YF-&&lpxV)GP}>aQdBs9D zjf6*D-p+^KPECwYT$Ymnh~lTLVpILLfkY?F`!a^yvi89MVnt7dPAPwIBmhU^>NEOY zZn8}9!QH!TEtwfk9hpQ=qodLM=J-x>RNdtkhFX{JA;yoAj}jnYOyrJ!uRoI9{vf1a za6(J%AiFWicd8$KcqV9;O}p>U3=y~fGQ8b>OJ2Hpf3E%Md(;Z|s8jKsV7y&64Js-n zU%x()lYPNqll$mffVN(Lqas6{>13Sz1quhFtn+Kg*FjBK9HJEs*@7%8qZ>DFu=G6T zM7@|qm(ZO0{Q1WdvMw@JMSB^hmX1I`u9c8WF+L}?|0!&C5(2Vqi*?|Eku> zjNBB(m!9!(LScD)d*Z2#_zSPl1Ow~Qu7GXdS1Br)69(j1Va}Iv7Bu4vlxTBj-O!rojLuSp?{ zbl>l9XqxyylDm~x<r*Qw?aowKsU^u7=I`Aj`5C2>zE{zb%t z7+88)k>P|76tN2~(9%Z-^Bts|Y)u7ux8z{B*5&qzYu%dotf99mf^}6UnlJXKNVjg? z%CP%kSZ(5|arwT%>RHuGvl{l*ctryrE3%9~xsH6!C!{yangi(8n+-3N@!U7LsvVUB)6 z(0VdmQlyCVa*NoOK~6-MZMyBNDwmb|7}nBiNF{Yy;UX*U_*QF&3EX^epV#i?8fa zXJ!jt&y5#!_6pd9YEL)Al2}tm-g|xG(?j%M$Jn)&MuzE+-yj@DjCh3V?p&ZBCAZ}Y zK*bE)z#IxZZ@zp{)p125QMU+X&$Ltf6;ZYb~<*avZxP< z&+lT4qz!_e6PiKaH(ql65grkt=8qPX1ZhFh!W{Cj+B<-~o#I+9E}yA~KYaMWWRw6A z7vxsfDYDzP9RU_4_thb_)QNhvbHB%LU>Dm|4|PfnOgKR*ejw7ex>Z#y{s$p?;%-NtA_9lobb><(Gj!EQ@B-aRK8~ z`*6W?Sc|yG+t?)D3JjETiDvnHrd@M79QM;B^zZSmAHRWUkZj%mX}@Z5nrnM&>uzi7 zf&L3^Wx7m|s`ex`MR{qdg}sc7hXKx=*Hm_vok{W#1c;Eeza&0XIHwKN#1XF*4R+Z1 z6%+&zgO-7TRq4LZpKo~f^yx}J9yla`c76G`Lw)a)*1vcfDj-CT;fb}BVe?rl#dJR< zERrO=5XsZg(b<`7)05U{)$y`jYin>&(DrlB3GN8UD%VEqbmTh*PaF5uLl?BkU0y9O zuU1{U##-jQq8E$Q8CEqr2H|s6spB_rajT$pDRoDmQJlVG=PS@3j#~$4l^ldGleNcZ zr{ONWDXn6eVQul)!f7X1ItCF72qF+aHcl?$+u1U4mFGcZJJ6z<&S!#S5G=j8a5EtL zSqdIY<(sE)UlprUDAa#9Uk=y`G^0d72n-~RvI`8tjhJxqhY45#&MC1bH0$}UbUwYx zd=ot)9)Sei$m%e@Q(c-kEC4H0j<7HFG%?SglFYz3ZAy5%M^tld8wa8LBq(HKg z++CBTzh2>el$n`XRi5_aJ5JpuN&hXAYB@FYbFW;X%P%fARNt;P+bU@c_<6DV8xrN; zXhb~8QpS|T^nM_BavUvmG1|~dW|g^-oP9scH3GI4FnuhHYqztdde>ui;xzuSeqO4c z`WR(8E$0}$M_!jNr`^(V({YFO235LJ!8`mp?gxdQu>03bkZgtiA?^-Aq_@4HcT?-R z?}aQu{{L-b#p=oa1!N@PdUn-v4MN&Q8ULL9=;=k%Cx0h@9OeUwjTWZ}f@}y8>);Lf z%ha+`2b0#J=YI1L|*Da zL6Aj%=QbsuI44?KTB>htD!P7sr@{Sf-*eS*J3xIkHQZ|7CEK8#a_T)JYND;GFHg@3 zBkt~2h$9Y$vwsOMWxrpZzRDcHKSIVWILUtQ4AdsYEJ3IMD6i3T{&A_}M@9@Iz@rtd zj`*#o1+Ep2^<&J z%hJZovQP6oYU);~3R#X6CK#1)UG?^k*S(-LomtsY!%#Ct8}{Ce4nz&SI@%!eeuS4z zhug2YZ_$Ook#6>ZVLIIZc^gG$%}mEcNSNzF28BqC**Jd2K{v6suKH1xJ$VE=TwdFq zrj|TRX)sXW$A|Z(`&3m$^extcdmzBnwUAS*x$*O3&aSr|I|D;Q3paJirm_p6Z*R*~ zdU69INtHgQn3CnwB`jb?z=wg9cEJ|X5Cw8ZNBTPf)dL?x>4w3 zRirlPCP$n@8c*wiW=UC0tRxo6dFZhtB7Mi|o=PrG&K`xG+IVcN1v8cKlUlf;#d_Uf z+qRcqHFWoI>HUAk`ZuA+yz_k>1f1%xoJ3vufVM~G{igREyu`I^$-~oUrXPTV!rviI zLmaLa7|B}YBiz0D?AfzQO(p5#_FYa6X#ePx3#iR{Txot>v+s?A|D%|qpF-W!(?fBg z1>0{8R24EX0&+G*eY=ZvSY5-L4}7SlPI^q&x?L;2K#=!(z-H%71B24rw^y^O#Pj2I z^aVXo-93Bp!sc##)`AWvs@za&3~t>fc{m$8`;rAKv0Z_O`Xi-p=|fS|iWn3KV5uQ= z&(aknKDnFHVq9L3c;+cijy3&6rQA0xG8UYS*&sGHHpjN-5uUJV8T1-Kq}+MM2NjtPI;t_&TBD@UN(b z{4ViBK4V>*sNuWQh_ZD@BHeB2;h}1^Th$wr&6e65qE9}&X%xPtwq_7fI}mM$16s$A zbF!?$=q6f)?Ci^d;-7XFJ2}1c_4z%Z#e9gccf9-%6!|gRwNdrdz;Ic4`5KZ#78k2} z9Zs}Lx3!r53ug|@{}$s?*2SHx+3WygZ^jaWb820QX^7Zqd9jZuVGv@e;$cF^En_+l z+pVMyuC}kHUn~Jd1wmeQ!D-|Pst;9B24jDF8z`kv_IEB*=`d9fM{QZz32hcOHqugg zpp)Yzl_0O8MvZo#SejQC|N6`0G{hcN@MyFj0E%bNpD*jl=sOn*+u)z5E^l;jrHN`8 zPOEL?q~@TvWRjsa$T`Mk2iig1<^5_U=ZAE;;4sRZynvRrChr2p=w@d9ERwN)y(|W@ zlz$dqXnpm{l%1``a+Zpjk9f=@>s`;-;}Vcm+6dPi%V$;X@B-~D77^|0J{z=cLT&*X zhb^Gi70pA3$^~mt=o8mB<;^n^DH=2hPEXCO%fDI+pId^2veFuQk;{6hW0kcUlz&R@ zfG7lJ+Zaql)MQ4Are55RkUrRar*q1>g=zDtz0t?Nv3=(wT}dMPpZBD$7XlEBEzD89 zOu&N1R$&gm;H;}2V_N1E&`2`tn z^X?tYN-}c!dpxID0CHsaiPrpu<(DP*H|LuppXPsB1;PV8|*cIn4=k0 z8LQW4Q3Rat9P{@B^|C^$T!`2#%d0b;k`Es}%61Tv7auXhyFbh$FDk6f)6;W5r@(9S zHymX$HaBM#KD2tzrZn5LqN1X9yN}R+9dbzVKe{y=_e0eR1X&^OHhU+exHM<$SYWB*FEcW%dLk>tAFxj@gw%nvnv4Z z<}^}JvrltC|0X8x>=bxuwd|V_;wu4KOL1Gx)Ohw(-N=KhUu^@|2jjr+6Nv-!2_KM2 zc<0uxQfk=-kl;R@e*64=;xxqUEO?KzDI3Xzu1;M#@5ho7BH-CHf881x@49)^N~#fD z;$MTzf^YLUJUhsn<@%HrS~(wowiP_atVENF^~1ihU8_x{MdX*y^lbDGQ3>)1d~Au+bvMa!js1_K1=$(IyK|$XPt2J3gBt9Kg3&y zx@#Fz5=(WPSpe$c>xY}~dvV=lH%oc_cB^{cF6j7> zq>A#xNIG6=($y<}re{^LsQS!ZS!?6;6)RDrYugV`Aw^_|iXH(tiX^yMepKFZ&;F-6{v$*HMGS=vWF3WY9`9byus#b+7vKO72TQEi_2A)_VhZHDYNFoTBFx84XMw*58%4N;h|^b zxn2yBn?cREg!jDZ8R2E6EnQ1EC0jT8vm}{NaZfLBJhh8B+nHUqJzR}43H_OmAHN$( z|L|dV$^0#aH7^d-PkPDy-T@S=F_-o{s0>K4z2X-`qBCNm+vsOzpNn}Awe*aFRMSEt z$oUExwbwsTh**oecTh*)O#7HxQdvo(j9mP8rxe$ti9e0bi!a+mxo>BdSC_!WCZB}< zPK{wXygGSb|H}oSS)Ct8{->N?`MsU9q42Yn@$fkIW=kxA%OU5#Rr2dhTPg0E`{d+3 zojO55K~9Cq@un%WtuNz#mhNN+hdb{~K=Dot0%FcdOG5eNtky=3B~sPny?2;4&TR9U z+eQcZbI0{9#eTq!TXr{rWur{7P=`>J&ucpI8_ouI6ZaKKWgMFCV4M5E8X05KjI8 z*BXwWDXlkEuJf}Tg2G&k9hQ z2Z1UHHf}pP7gZ7xxu?hV0#bsFZc{Gg*7|+JD}@bF z7y5&?&$zMY##xD`7C}iu{a(yav`%NbW0_MgGQJdE-1Gf?ln|+dnM+xH?d-T7!->> zR+B`6aW6ubA0&ls-ga5=OmF`zv=h1s*-~+(GiXsCO#d_UrMFB9-g_EHQAq!{1z3ultaznR>~r_ zU$6SreXPFsDd5Hy>5;divs00onCPo|wOXrZR63Xe}dULj%XiuVu>-wSk~ za6@+ba`k-nb2(N&*)BI#vrbbEp2lVQM@&O~U^Xm|8N~J@tSr+qSUJn7`!a{aLmj_A zV^r^Qx@T(*qQH;0uegHM<;+=EtN?P>;{MAd663gA7nbs#oSQfOB_UAm%YT1pBxFSP zkI|sn@vb0{6QTwbzPu~eC!Ep-`G#h}0$=NeD!P$6gP0T`6!<&WBkqxnEl6kl+7Ya( zY|ecZ6%}hYZY=Gve69?FVfx*(UY6!J!r%4m@Sr+0I>O*98rxS!bjvd)$GW_#$}c2C z>kERD(!cG#4^%`<9wva#k04FTS0oJlP@BqQBtC8zdK?*44|B;zy4S)cg!x3&(V8m8 z*>RWM3=Zxb^l>uVGC^68%4~j z_8)~+;iksO@f#R6edwn{KZOG7bn2JO>>1y36sG@bd#z^FG6BeEq+I%@K={i{qB`cb zW!0G_HWQpgMGrXDf>vT`NjBQTg+I0m{+fa8-NPB$-;7JSqcRpH2(e9eKH-*6Z#43q z;vVC`BxUsQ`M7t2U5RO~WEDk4&k9Yvk1GfpEh!`6I)e$`;kF+hSLY0pdQKhtGpG0z7ueyEVr(zqS4diK->)XFCk&f6!{X3RpMhgD zJ;&IEBn_Q}aiL_i9pU*CvSRGJP34!YPldb2oFh!|MKV{{!lDwn=B_k`s#)m~8E`{i zf?Gs=`X!rLsn3NCde`lyP)Zu`?~=#2xc_F_7?}fcKPBJYc4FOFoW@2GLVNBpY_c;J z&ji3`)wr8N9r>+v4;-zI=H7Fp4UQCnLox*;)vGR@Xk6L2&aA3Ju{X7yiwuY@i98I> z!B}K_>3$93Nd;VcAEQQ@+M#Q3mBl_IB@9D8nE(IAAS<8O|+1g z`dVxH^lI&Pb~1gb3NegFf{JUUH-wdwqt5%$bwP zHTVi{U1iQrjNlgN)DJTIV<0gf4x&ASPPrFmcAR4K(}y>10;#V(vA*GVqQw^l^NY>p zY-3zm5ZWpWC=c}kpw%+GYJ!sxYyUp?H!?4lF?{*MtSv@1TRmy5gm4FA-lBfZy#~Fg z=g&inAHVZJbYI58^6gGy^!BT^H5Fz~E?!*hv0`8g9o^?0M8ZP>oiS57OX@J^*f8n1 z?+9XXu=AZB2OhR}CF{dSlED_W5^x|5GsFRl?<1S-hxW0VIG{%-4Ykgn@cOMk(Fwdw zi?m#H`=+w4m_IdlQUF>A->d$)_ zvkp^+{8n++^<<0|N|&gvp>SLKFOtEBwhz3%x8R_%ecu#>4GMrUcV0D+5o?Fe&~yG)I2n~(zWu6qh{kvFnDSEieheI~=&RRkIYxjJ_IPsdrJRCIVHh?*Y!?1S3F!oXp zhA_oGcZMag9PK#xv-q-YZN-DV(|3~*Z9ueM%N$$_&pnN9l$4h5R%m=6QunAY?h`r#SCLOXC97Q8pXeU0O5|d_pb8ws zL&O-IOwazZiB>!|1;6&ZCub&p2i?56#&OxoIW&f7a;4hzuJE6mSkhfT;Qn=p>CO37 zU_tGd_nsGKlT(2v$`G4F8f+uxrzTmIxU5QRkR#x%3n%h>?@@L_9oU`h)x% zv870?h)mxfLl=ZjL(bXr=`4$eI05``w(Zumn%~>Eh+fW7`$( zkdou~ae41I*b#=zZe69rQNSe17VidQATvwM>G_tkC0}hdJ}Y|8d;Gg>xzCw|_%6ZN zj5Qdtq@uNmd1EOgb=w(ef?yi9*(sNv-uL6I%Xf%+2MbU)p-^hs|N1g6r1f z$Z*cz%81`j1(xQ`kdUrjH8+tNaqFv62~ReniEywwrtkRJ-HbC8{14Y<^!2xn-xct# zTa5u8f`>xruPIdAW2On$@8`}Ei(XTWs*ziJn4J=RebGkihYfIoP?qBbbq`@%{rY0N zIao@+8c79yW!;=zui|6KFTt-nNaCv;qd`vdC@!vaM8S2MCU^Eu=|1*dIyzyuFkkH> zihJzl&71q!r6`rgeB1c2M5A4y10+#_>9PoMh5#Kh#PC@U$gr0ort+>}=# zu}N;$hN5E-lE-|)(%H8^cGchc1WbqZ)axEUu5xf_WA9y-17~>*n(kj>sLj;zeLRf| z+iU2fn5J-&J7xwl(_de=NEFQ)Q6OVr#1A3V^5c5m&`Sl=7XWxA7|>}I&mQ$r>__qX z6L_@>(Y{?Sg{g!sEX5+~1T5wXQ>YdT#ceXlr0VPWJcIpj+2?-n=E! z+{j%U8T|*RzgmB44m!ok;*Nuy0%6uSe}nzD<@5MMvqyEW3{+x=e?pESAIfl;ql`Gd zZ1#=)|8WVRop+HMk&&3yMQWIw@MJkW4Rhfm*VL>h%8qGScR-0YQ!0Nm1at&e4>!TN zjHP|}(pX>!hGKgL-ui|=eD*B=in^EWEj@6)$gwne`Eu#>w>Mly)NEQWvzuAat>@!Y zg14Zl1S9f?Y-HKc9aJq{}cP z4EftDHsj8qXxCx>A9=R9(3yg5NoEaanbn3kYaPTzMSY81lAMqFApnmYl9x($8~Nf@ zURi0ook5tp>dg?!jMxkT49*jrgETNE4ne_WFIrnf_$YMfOMw7`2_+fDyog+UI21%4 z^o6;+M>9@TYs9Sbe&j3T$RQvG@t1d#%HYrUZ{{aEhbDjP>|eyc{+mYivr_f2L@8Gx z_sRRwQ>&~^-?6fnwe)K~8X#UV8EH4U_D3KlPAUge2A6W4x!Wp<3JKjp$KT6m7m9(M zOruZ}l6gK1s6dwpESG7HvA=%(nm8jA0OM8()bMRw%uj)&fLg+s`7~}O#uHrU-!f4Q zo4YQxj7`39gE?WL>MrNm58AAZr_a1nbZGW3;_0&p+f}?b`kH$fO~N?z+r}LqM{}AC zrdVGdrzH&>%!{iEsH&=p-FP|^SajvZ?I63M%*e4_KUBBeuC=xG3QK{*SEc1HO_@Z0 z0^+rP4{u2BRZvg}<&W-r2QAXgsz+xiF#1LwWRsz9*LACTMn%K^b|lbXoUZHJYyvDn z=F_M$+B7@%ZHz_b^DR?c3EBp;UtrdnG#{4Fz8?Ghx#d_qsNcJtouw_gmJ(r4;I6t` zOpF?lKE&Fw56C-`sdPHco%a$GKd-ZhjgFT7ofaMY9;1vq?`yd!x5w~}pbY&0#~TB{ z0(n~r^A)nzlKUK>%SvQ8+x)*eYJ6>|aEvj{+sb?6#D0D4nMIzkz(I zGsX)KerkU~O=a@kNBV3Ji}ry7+**g9@d8ro_!vcdd-^WK1nBrZmK2j=+n%(sus-Ma zr$W*jU50g1fqAsT|0(n4r^N;h0#CqiFCg1qAl&|e9gpTrnG>+6-nwGHWs}RWgi>V0 zed~%KSKGn7(hIf?Pn{wC>(vIFUI67vBc12AIk!M7fkJ-IXPQl>#$rL;$u*Nb#RZFxy%8CqJ$S4tqQ}@eP zD2l-5U8&V9P0^?Lhf0ohq(EaOBtn1o^f_(A5r6r> zD>NeqWgk)4;LYOH8OozYFZh_`NXDmz*fhJ=#kTsr3t2jG_-kJ5k(MS&99m!AVyVI* zayWIYE*42S53YhFyMIW%vvFFPjYt8Jq&ZW}bI@lLTz5b41P{AT{)!kLD+4uEgcvhn z;Ar*aI3};lE)4fFK`Y3rz4$gpe*@Lk3xA*H7NcyRSo%Lig3J%S*1&|s#0kB1R6CYQixrG4U%6>#ZI|szH_78es~HC~eia9R z^q@0feG9rE@7A5`ld`s|z((?Mcz=BrFR?)(5LcFJ;NWx)vGH~e899RQi|v&?a`9(h zJ3(b)SIg)9%`?z$pCqPz00*tdC*|_FG*gO9KYETNp89yZF4Ous!Gg?mf(OLI5jbnn znlI#l#E(KnpTdztE?On(fB22}@#2BAc#k$ApbyxYTw*4(e&^jlUvejvV77EOoGQtT^p;EerIk-+ z^;K`Htl3<2ywNYuO=eyBXN-OT{9x_rsI|Kejz~=EH@4AUyX>yZ#=&It9v^6G`F0co zr*TRcuZG#yo_PgEy6@U(fxGB^OtgPu5fG%EKYy>5)?FeKC&b7<2O;kwqk#=h|A(od zBHqE}$^mHx{2dsk#30JUjWQX=xkltnhJy}w*_rS0|cN?l&B zvx`n6+1rf47Tqe80siEqmQha=y>XtlFCt3Mme2;0c`fEl>+76T$;jW6BM)l!_l+n&o2BCAOAjij3V1@sUc`5S?NT{|6+Id``KXW})6rvb z50&vwFZr3OpN7zqC9w2L;ukORxvAuZ+C-?(C$hM$ThN%^5Tw}tStJ1vk4RBIVe8@B zgS?LZpa9x}HoL6|MuwR!6*R_M(c&rjAx&L5OBuGMsk{`zk7?}`x*alWY#Ep z>#KAE30e~(%d!^|%;oidICltbfUcMbDQk8`4|Ae6da&#HmcsQ!!2zHN<7*tHkMM?7 zl3FmGh1U!AN9j%MB_QR(8%4LOSIe~A$v?iRN+owefx*w#{7kWsR0B(X3R)ze<4Xgs zhA1(iyjvD3VRag_3}yvMsj0`VUAy)Ofv`ye1U$ZJ;I$!1WcjSP=I$7OqC3I!kGH`%GZ^UXu zI)XV*s38#>lkp>uec7Ffc~?hY_m~|tjupL`8LMkpcmyO$=KO!<8tx^-5BPB?i7%-2 z7u*HChMZr*%`-jcG~B!GTHQE1LU^7d@I$lX0axc-JF?^<+jRrx25|l3*gB?8U3)mF z0%-<}2T^84T3uf)r<)+}e!`5ZA?O}Ev$fK$T`I8Gym;|qkd*NQ(nS#x@(T$uvDWZK zaK9QVTV)#DeazvGbt302j2x-MQ{h~4QNhgmk9hx^RjXDwV3k@Qc#Bv%JtyPZFcaBc zh#_Z9GP@?T&3g`(N_Slepq2mA^AxABzdPRjF>+_VL`?6;1dzl2THfUrFf* zjom9;FN-&3%L9!$SQ;J_WIU;Vl_-zIrN|FEwFJel_Vath+i<5SE7?`VYeV)OZ03)U zs`!%R5IobJa$BnT^5ms@%K~9l^<%G2U;RB+l|8ik?wCU=l*>Uh^BGMHf+e;h2Fhe! zaRtnV+T2~pvz27>tIypbN#x@XRR(OQ=3Uk?PU}*#XQ03lBq(&n%IdYJoBr-{^qBfN zLhRnk1b**Z^V6*(>2TN4qMOB)^In;mh*b9c%LQnVl$aQ(Xb=;f*`4|}9(IimyNV^d zgd)#S=wNy5=Js3Pfv$h*REimO3Cu`P`TEAZZ=HQ4^$CE}b3P)UqHpylLy1cyEs?AV zK3~w3(ZhP2lvLSif8g}qn>fB0^1wn!ih?e*0eJYt0X`T5Y3J`(o|Xt$A)b zYfzYwBa~d2Kl6Aao;mfYR&B7>wY+<6a)Opsd*j!wC{+XziJ4#cYWmU7P9$qqgwjlBDDKB-k0L=1 z)V91zL*u2=-5trdj{jZTfhDe^(OW0_;y1fZIulX2f?u0v23se&<8ap#AD4>5WG?eq zmhB+rGwU5GN8Y^Oc^=y+f96Buu|=S#nBV0PfHTe2nhT zneBuf!pUiR=fKt6BEok%bnMuAg7Uh%|07;fOep_Y5#l+7{83Eo+NCFM8apFwBUSQ~ zSu#ZzOeTE_YJu(G9Wsvdcr;~(+lrHvZu=q>n^RRiSi_?oacK(4SoLTh6VsYz6U;n94#S#lCzK2yJxXbGsH~EBmGzKP z3gH3=hw4WzbY}LbsCZI}6a66S+J+oj(^`v1BtQRl{`n>^;+ zDXl4p${>pf#Pf!G%`A97E5-E~Vofe(MKvy7uC^1T#sLz>Zkwi6odv15$g2H88+U+F z?Ij~Hrx{OL!MLv&Vn^S|Pd?RD9^0;b+WB1GV#J`R0{KvE%Js_qsRzb6q zjrJEdJa2f&obCRP#~17*Sq@>YzdmKn5*|=H>8~Fs1krJb0DXn~8(-i|ZkF|=F6!^4y35^0fpLHxEKx^_|2V{BujX*1p@C93NN z!rYSg%dI}ft`)M%^ZVLWt;erb?fTR);0LB`l+|jc)dacq?L6wt()Sa_K_r755|~yP zyjWj-nwhCX0_a#tFB8NLP*QJ(t771{Zzt!(WBu)j$4hp3zn>kuu`-&6P-?0)ie1>5 zBS`JzN|RX-~3Qe$F5AL#69tNx@})&Zx6%NiW#m~Ui zchDvX-nSL#ma^w!*!zASQY}Mj$MUPT2b#be{!%#j$U8JNR5#>x!o7(nA!f@ajt$#S z3|9F(uoo`2G9Z&3mf+f@ZKkc7-Xj=eCNxc4TVZ(<1WSy`9ID-6RbJEp5CHDB+d57; z{LN9w&k&_B-R`nLlcJXP=X#aTX~E`m3Js!N8W$>$Mm4mt-<_$i4HJ=&sIin_>iOVR7`Ps`SSf$yT^+^r5sH>%8@aYb*dH{ym#Vp_C1g7PZ zsj`!!fJh#0cSYWtx4OaJ786_sG5qTcW-up z?%8~siU+n0`cEPp(2c>Zb-L8V{y*>ZXJUW$U5(!VzXSeA&JyBuyt~J4kg=$Og80KC zG+k-#l!H>d6T9qSLOxl*?sXQ>7$IhNZSf_t0c2=-;%Q@Oh>`|Sr6fcc~9;~-X=ODz{P%~ z0ChffYSo-3DL^7@9>XlDxBrDcS+HW1NsE!&^2d*d5I#i0)717-(wR1@R+CSsHTmKd zzX^tfU_ZZHy$Cb^?me^#yxo{%Wt0NnWA~|3r!Y^UDz%^JJuqr%iyz+C;B5P5p}+@p zw#G7BF*bb%bTsRy>OYAh97&}G;(!*A)=|gKc`5diis!K8euxDTGeT8-8yT+ z77BlBaH&Vs?=GjD>c2m9kk))SCkAx<++DxKa;C38*X{s4xRcB&cDA;X`o`_HJ6gBuj~mOW5Q z*ezAF>J&qs>?oWMXZYZowG&Az#9g* z(|#BMQGwoPOteA7_VWs8gYbj5f!gkt4nNZwMOA-`JHH4d~cg&+)kESKk%O~ zw&_9J=Md)*%R*@BlAV5iKGjPSGZWga2@W7DMR_8rJoYhAw6AvICd#9)@qqZNGAtU; zY`W{J$FbGe53tC!qmDh5FGBD}ilD)UNyejBbq1C&zcHFC_Ws$Cs5{WVImEWrxcO6R zsl@bti&<8xKaSw{g0Tvz4}@oYJ|9Rk`?P=e?zl0&=Y_=sE*U4^UHhgyO|koTH%cFK zw@4SzH55JH=H;g@AhBgdg`?Tl7nGd5xp#- z8O-71cwe^Yct`qPI$jtM9JBm zwVKg%6%R>@-Zml8iamUL!;$Bj&d7I<5ec!ug@=O|nA{#>+jcf6GM2O|ry)Jc;Z$Sg zuJ7&CxH38$1;DZ}Yq?uE-Cx*Aes8~^2Z(~irU9Zs?@l(r$C|&nxBJ>VSK8u}cm-2x z(ja`@kExN0!X1LiChiSd6??yf;VKf*)&C{84YTSWZ0d<`H!xf7F`2v5AIn{Q(Li65 z9#JZ>`3|G*ZGBbXd8;SIc9jSt`dGqiK|7EGPPxbnmoYQ9`fM$n!)!gB%z$)5YnPjO#N?LkZOMxU*YTd8*fLIq8NoB7&O?hZCa{xe{tQ|)98L$%%6s@5 z)F4z4__6V7Id+zO-rENr!;tEwmbstWcPTzKQ=rG5*%ynujRynM!haTcD9|r86Wz+g z$=&>!n(dn4u~&~YVm{6TIUVctb&a(ANhaj)wRPQH8!9$O(K$g%m@~(a1ZNoKx<1rn#-)d~^(Xy|abJ9&% z05jw5ZU_48;cZ^(0a$GhB+o||xV%V!{>OQ*0TqEso_i-quKy99y}~RU$Xx+661x8C zmC-2AofVpq65b(NTdEPVVWu);O4q)Bjxw6i1?foH^K1C0-s~yY^b1|S(m$^}+pRXk zbgiI;#Rf&HsOXF=ZysAZ6Ei56~30+{Q*z7>ynLfvmZQ8 zL_Q^KdI;w4smN(Z=o$aL*3g4ab498CPkjE?^2aL2^n9;h-|A}s9YE#9ROvJWlV$Es z(As$S13UdtvYAf$*cWbc+{38H!c)ln9GH0fA8VMrPz{qj6ss#kcu1e3k5zaw-tqH$ZWN^n6}0HC-h>AJtCdQg zJ(w!D>}?+CRi}pX8X91e=S<2sT+v#5FltRX*}iHlrTw8tH#fm+E%+O_qivW+W>N1g zz3+)Zfs%m0HE;qhd!TGvbpGuXCUQrl-)JKr0bf&F_&}Dkg9I$!KA!*rwvNmYkKQ$V zB||zwC48ydT=oXfuXA{HD=L<+Wp?;+-$Fx|ETwo`b~Yk`KTvuv&igJMMt)Cs6`B~` z%ng9aZQH(_zTX+GZpO2t4hw7|XivILk+;Rcbu%OBWFO|2h z7C|?(N9Is=;C@i65olU|%pYq66mOMk@#TV!RoKQ87c$^AVar*tV|w?e?7at9J|c)6 zm793>^Iq7vL`KJk;i^PO+pp`Bb;XOzZ7`glMn5PY-aVFXsoC&t!F@RqNQf- z-{feRVNFPP5noA-I3 zsQHL2Et>KE{b6tkHJ$f+_E(0dJqR&_isE|ZYs}}r-RfkYbv?jbG!@Y_FklP!^ey@C z3%W<)jHGLY{#e@2;Q{*JN6758LMXxT5Zk#bcd5l57wC+0WY(>F${lIRi2t;Cvj-63 z0+ZNGem0Ae7u(L1zZHzSyIR8X?O}5{Y>0*@Bz?E;sx0blk(iNDHliEoZKyl9A-;0& z?F|Nvb1Z>JPrSSGPJwMoi?PBGy9;E4H+to zvr+SAz}MY~{!wIP0Zhb|=TQ;RLFSm@G=L$`Lj(V((;Hqvi=ejqvGeH9a^y2-u)}$F zTJ}9-Yh1nU?BOi_A4uSL^ulgV1_8~^uYN^9toE>AW_ zC~soOaa%q%fr_=Yb>)=TrAzs4lfPCw^uJypW5+WZT0^KO2xlxtD}=QUi)g3lCyKwY zb^6)52NeIpc4Lm|rjPt<8iE``yfC{cpuI4d7mdrnWo!2`pZlkH4*EyqOcH=4x`*%l zC))YxxLZis5g`J1_b8gJ2cE@(9Hp^1e>?VJB(+wi^9Mhk2lrD$g}J$N4x5V}jSl)0 ztEUGWc%J=txBie=|H5({3#=Kfk~@L1g`-tb{9s|r8oj zUvTXs7hEV$92i-_@Lvl>pdqsc&;8raA^##=(9XK#*o8%-CyxWlx9+L^eDVx{{yQj2 zB`_KC*`RAaU*f}=LRiQHvce(FX)m7i>5a*T)nLUSwX~`DF5|>pd`K5tuOUi=HDH!l z8rd4_uKe?5=)%+UD=We^_zIn6nb8AkHyi@uYQtxrAd4L~w3D=CWeAXp5IznCXM4;0!w~VK9}@?W)Qk>qWY{2J%%jV0PH;$z1U;%Pk{b8HeU;x>qXnFg^e3CXgJ$3 zi+pTxL}I&nl8S4ZPkLauX1zvCC}^{3_NOoZvZGoYXa-^uN-v>xPqRAu>=tzG%6UnR z!X*&BmJj%=g(NFK_GrDOGyYawYy)6%4Z(2W^*>)KXAT;HZ$u66`VUR|EsA!-4{Je(mOnu5rB6-vFK@;N2SpMZSguS;)+CHu*T*|tG8wJ?oj(`Yg z_?f-jA+}+|-sgv(y{U)@wJ`0N(|5^G!Ev?I5jFe^vQlo#1OH&rXysd&X)<=}11^II z7d+`lP<+2^U~rlck}k}%c`a6FP?lEMk*C+r#~$K*t?u~ z3`zeg+#)7WiYOT@ZmwHdHTX<0xKBpw8L3!JE9% z_FZ^UEA7q|RBB5e<1Emzf2R79Ppnf`c`3 zF9#Fi#A?ZMsQcLR!pi33#Vi~gLL}iO)k&Xtx$$G|7eOKMiN<9Luqt4!Njd*;t4U?y zx3C8uZ$K~UPguPAcl_I%Wd9h^6PTa0s6ukDb4VNl#(DO~Ali{c9&WV8Bhpu5d_&nB z`mlX~yLxWVsx=Dx*O;eq1_{oI{mmiBAYFc?z1lznC8yI!y^cmDR6alA{oJm8jR-68 zbN!9#^~v{>`ug_@-W$oIZd^>&z_;b(TRQdg+D%;vw?*}I6VgT!g|SKVZg86X7|*)z zH+95#qfTyD+7Dr)kZmS+7}&P%cAXqGIs>9fOqj`S=kUp!Zf?coQ2aikk9z*7XIC&6 zk?y$8E?&IBH>>@4UB*tA6DN-QPQun);W1Dclz5Mq)mBvQWh91jnV zWrIysJ~4_RQ@%-Usi(6bYP;qB0CErSA1J&906J{RcEjF^_MuMV2Twwh;2|pCil%wa zjRK|cCnUXgQ`O%^;!U@B6ffI1y$PDlIKt&gMXHGAH5+OFhA7I<+L6%O#fWC|qI7wl zl&%=IiSjm~YwvjsW>1b4Si5zWuPs~Di_4(qa>dyeqCyCSNz#N(wyclHZNRwtrKSqb zej5}<3dbh!dfrEKF$$TK+KbHi%A^qGsN;H3mlxMUJ+E^|MCa^sf-LwU$=?I?>Cx%@ zo6Y|Tl&$JOF=StFpP60%_o;KnaU(l5Z9A1m*UImA{PPe{F4zq4xliBQ_P28gZvyx5 zF{{e`+Jtv7wHh<2GL8dF7n@f6WJz%xd`>b3pgO{gx~Z0rVKu(KYj|*rG9tMFM5@H3 zD$kB#!xTB`-ynN;X}<%x6=6{7-7$Xkg&1f-WB{-*kc<*R8*QLd@V__KIJQNd`8)sV zNBR?BbT{CFRuSc>*qL+rpCfgt+cJ(dBWh6ei*+;8E?&Ci@as^J6sCBWepu@7?)=@D z+X+H$q_T_NvV>zhH;f=CH8TC__IQ(QX>GwTumUbS*+bGTqPkJzswdcLas>Z4)$ruD znb1mE=M+7ySH|Sqc}xl1>-)?pY3*m8JyFS@4`^Kg07UUv+U2@LM<*pEn%P=LGAgODDB}YN+2M)vG~A{^bHZ;w!u6 zivW5XaX7en0|=+TRpb@B0D&cH4xsEfjco3ljB2*H@ueRKt$R}~+kVr3po)?~<@xMG zOp{%#sTQppR;C>J=eg`y59P&KddFqt+P4xV3AVeDlua`d;hrVl1X%YcV2E1n-}tDQ zIp^={Vl$3C_;CJ_x`{s96EhsA>D6c^*A}DvBl>^0)y&OZ!h-lxQ{`2|+ahc!tjYfjmfZspci25&@=;*xI)M->ZdgwnAnru+VrNG7*E#R^RqT@fxQ% zLR^Qqc74E8wLdyGvMX6@;S>&Mf@Zfn)x6V~D`&}$ZHgL)n>2I^5*BW?@7E_fXus$A z9igOkE2&(59zvvU15qG;{VT&Fw)Hw`38QId2P#TN#~%FWurTk#VR>D@oszK3ybE3} z$D16MvUew+)3x%%A(czD|MB46!NaEQl|N2Xy{L2rnh>QPeLOkF_{c6mvLi`3aM(JH zy-ubO<4d_@9D@QAiNNc6-Ha4-&lG(dC{&BF(`>zEZ|V)_i0rA!y0e47;f%Hld+qZ9 zXT#OFrihDQsy;0Pr5D(2=7ESnp&et0;-%zmQ2dV}_d*VLH?}KQ>qRE`EEtJtnJ&gC zSp|O3B?VuU=<0x3at!3f;>i6hvzNouy`A2;S`?b0Cm$R(9sX_7-nV5RcsdP1{#*2) ziLkk!DZS@GLrXg(4amZMmbJbD%4$Pz``oN>zOlq3^R+OkCZ8Ms)4c*pFdMUYh zsqu=VY}DaG_l|_v_0+CqyIWYZmG0pRE?^YR$EnBKUBG`P!#V}vzdcsEx(o2!Ng@k(7`ZC8*=R*^H4HTcLlVitk|EV6?OCl;_g}yD|&Va z8g8IOs~bx-k^U16BeC@I;a)YliBB{&ut+SbkVoOsa^-&K+-8-$yb@iq75kqUHy!du zGLYm(WWNnHVjd8(C>@3Ae*DLlas*~D>rR5zxNJ*gHmer6Z?(o)j^ zcpQ3mXswu5d&J$jZE6o`lBeu>`(MfIMj)sSb+O#PhV3X_0;n;a#{V9c%6lB$x0sP} z$Zkz#pE4;JH>vTIj!PO<#F-$Yru$%DHhB6uowlIGAj~9Th9Pw9mC`_VvS}SZvILgh zT0f3NxtMU@_{QdeJsHgHRGb9OnNBFRga;5urGf4mb%1#1epN$5Q~i>h+8##ok)_oM zU|ySKDu`=4QQ|ey3GMj|E4g`icpj+fY&iJfqLIkuV{;>)EH_?Zfyf$_=~em@`aV!# z1Ul+QVT+Oe6B5A3->rdu(<6ND#?0-8eSy^A?fOHPKFTEaz>jcHSxR1 zfLyO{K(>jd0jKB^B`#}c|3t+hqyKs-Wq#9ykL>1dNx!pai%Yj&9U$3q%% z!pi%9Jx^Y=17-bCg?p*hCW+(&SCfnVpiogDEn(;a20j}2^hg-*nl;W2qtT10B9>_q zuZ2*Fitl$xJ4wuVg{ZD}!YezZ$u4Jm8WVy@OX}>{|Iqc_aXIh*`?^m#B@rn{qOvkl zNJ?5HBPz7Fw1-Ml`|cn+83|E|L|aR{h-feEiKaAE8h7h^z2cmsKEK}|pU>kwJRZln z-|zS9^&Hppx~}K$dR+8%nzfCANwDB|hQ4Y&2D8L&i-zleBR54!F@9hyv3oRguenYl~4&X(9J|xOQnIFJ>gr z2vHTiT*|WIW3*2FpQ<00PN+zWSbb|qQ3AkfxR({^Osex*wAgyi>LL_f-u}L<=?AQX zsABGRy8*%2pJNB?WcZ51*w=Moia`P;;)B=T4FD8X7-|f4` zuaV5JDz8Nl1@>f{T)cwbGBO?qjrQXyv!946oi#@?GA~my)){GswTL&7R%dVCKZRRYL|U{l3Z`4ZhwJ_ zZ~!i3Z7#(CWsQZ8S&v9_%^1P7*w8gfPhx{+KGuX<4mXA#S-t`WKbV#!nyZkV0i)ub za{^m-624OJqB(_75W!&w{qHf*lCzOdS|J37AsxS3jIJM)$x4+Eys3hWTzedkLOB~L z5Q=LR^7sfUh_gOaNr$~MMS7l-iDQErIOGwxD@Ha+C~V0n7eCkn{*XV!vsmhRX`(qd z1g1qKW8Ln%oC$}p0XP=7xipdb2!E(NQS?fHj~qIm<)aWSg`#r+HQXfLuJPVe#ir7c zu@j+kyFHc;&33@y@eKpqC4PAhDk_~_j~M7W&TcrxI3Y#HvJ4WV6Uf=?cI;TnLGO0p zBYOgF;Lr<(Q|Fw1{gsj_N3Rlpo-vN9PReVn7&yRrM1V#Fx568 z8zM~kQgIXHrICS!5_J!*dMvJ{jw2}<*rkHrWvrcX(DY|UW&aDvDOmx~9t_NN2}@FS zlvZ^jo59@Q9)Syy@((@ypUCW{i(g)%cZ!32wzC=8XsxjX z=qddB>ls~r27)zH@-!25g5rWbRqc`hk`gu$>{?gf#0g+`JXGuymkkW*saeG{jwhxL zKODNN*v*HIKRJ+x+i}-|J0^YL%C%K{l8$|`*)aoxxz7NEP(J2kYI8cUpA>%x{LY%U z+@EsIE(enL@6hAsYi(eAv@HhB#_Y82F^27>pa+ZoPcd$Q`8!(9SXq`P*HKbtT@yx|q zzaF_mK6?@&JE^u34gbcz^g$oMUXigmXRz}IGW|tfWEaEvDpauM6$eCCU_Qb)*HL^i znNNEyzp!a`?q?KL#d8=)bj`%)Y-h@HLEW8nBM-gmFfw>?BJ>LV{P|*7dkj6(ZkM6w zOp$!+*42Ehd1W26)4HiaxoHuG!9_Tilk(s#bik^DwHF>~T?%*^+>k#{_v9 zdb4fr63h4GZa-WvG4oWSdeU2DxW&(wE_~`&7oip-fGvUcQ`y(3)F5Wl&|wVT3or*b zEw>B_{J^!pcnMf!x3y1iitwJmCP-5MfZC!JEN90WiXK#eXm(CTPnuo$gxOZHzCk(J zCf;&`0<=DwC@6;F6QZziQNkIt!ZxfNFs^tm)wC{h7D*%h0N!u4_T~*UX2dgrYv%us z9YY3W@cSZ8uPx|{tbj?`(x_+4!S(<`5gkOob`8)bqL>G6LU2+{8_s55yGNm9Zoz)3 zjbvyJbF(YnO_qtoIuE3-6}tjPKSTwykN$88!@>xy;~;mm!gSKEbF;7whF$995*2xH zdyMLnUD4PLnETkE0)8PpE!`9%t$I9+c-o%&5%=hxfq8XwPxrdW+3VB#UGSrIJ()B} z{Qd7)sDS9s*AFiJ+>P8tTDrD37nqIrVN8D_)!vNFUJ!JOj-$8k^R!S%jjWXT2zjBH zT^&^~0TM~WHa}c7>cJgBJ<0lD=v&GG#&w}zwBwWM6IgBvBSSa5;@aHG5^gMo_wO{G ze=zAscXa{cZQIPfh?-xYn4i{UJrh2?(i!dw>RJ8WgFZXS*#>wl0f5P9a@X~C`TQlb zemeCa8B$*=$X@q*Y{L0`xCvG9{nVlB)Gzb`y6GD+!jJ8YMW3CbTJF%Wu=D3CG`*QY zJZZJuAUB7k>*ncN#LlAdVqL^l;=0xuv$L7)9>{+$>Vo1){!%{f1gY?{Kjts=MHSmt zm*`zD+^WFtbWo3u20UMHNomlkA7+~|f5>+@jO1_=;!jz!Vnt6wtoyh4iQhP}4~I)n z+n8h4{Fia`6)74sry`qN>5-6I;Y-WGR<$`*GlRT%JU(?TJxbY)g#FL$IWel|@H4*KtyCu>M^-}?(|$F`-b0q-5jFUWm5tM8zrA6P4$EFq=Ib(QK$ z536M-AG7nPvP!R3{x9b~!vM2ja58YTT!JkVUU($!lk0`8?LVKZXQ_ZqGB@z69 znMLBnvP-E$rh|OqumzS4$;Z7HuDI2qBWORCaw)brSlEeAG@le}9L};ht}r zhh9mP8T+Y>gBBm3f4b$oolwqNm?$Ueuk_r<09^WOb&Md&y_Yd;KKrsu7!qvL zRBcKuX+!7GI(^V_YHaJ+F_kv4_uTwEls8-Fkp;Ub6P=g}A-#~#b_W?H#V2eeV!kMD z(i#84t9!}Ibz=Hf|EfgUf)E$&9_@pKm25@0iOFZOMfkNj^S_pph^mX`ht5seC8YFl zu0H>h&W*tgj(hE91(RWLdaNkDUS3`d-S^^I`?u4vyxppkstkw3(+)<2wTg2rH)MAT z^}sqbeedbj6+GyHBCH4JB|%j7kJhSvePdmFvfg`O0Sg(CVNXKg59RRW4z;`RNzM+S z=ipc8Ar%o`bgS5D_r=xndr{LgC5X4rNn^ej@oueVnKR(=|LuH8$?dV$1_z>ynwF^g zcpt+H`P15wxY{=rJgXKKXFHFgcf=UqBAg707hNnFglHP zfrOo2J2ky^xrp@_7aR?e)ESb{lIm`+A|d`hW`L&IzoPWNN%ptd^yjFLENVd&oLG(H~<-%$4s}zLytiGz?Gk z_V#X1(^Kf@ri&W&1i+%spN!k?ta{Ap*)7%E)vm5U} zgXHvt-Fojl1;b6QTaMB{hKU(&54awSBqx;;gp2T81Dn*#Z)6cjo_d_Ag~Tn?;gXmUkri zsWZR#=l}66#yxIW!+7=?ffkw8%x7S5Zl}NhbLqlCW-c-NL*9#4Z3ay^{++n6Z^QHB zYhhn=6Mkj+AihYrY&}{mL?4JXF@!j|b%PK@2n21f=SzW$meM`J#^B@TDoR=QAlJ`_~!@j^aoJA8EKBr$45i5@1r6~b|^KwXd z^dLOR5&_YI*^{Y><0vSkbRDX`u~7IF1Mh%Y5s;rsAbGfD|J~bU^XVS3(nD#A_T7KC zUHb<}ZAcj(vhta263#X$pr2yz*XnHs&stb0S(C#7rVcF+dx)$E4NcD4yTKzg5I@K+ z!w~(E2GZ^q&iAGJWB%E<4fhFUsUJQv_ri{~{+K)xic#{Zz~Y~cJ>$IDwI~sKV;oTS z&iKWwql69INY2$;N>U|sr2k;iOzf*uMcg2y_b|mrKY8BChg-l?fiq3e2Y8u05I#o| z@~Km&l2)i7lcD}yhvBDP#nBa2S`3(tZh)<3!o5tZ=ccuBq3`*-A*KuQYnQ@ib@7g; zih_Ubwtb5AfRZH!yUB^L@t&DbgA{ldDPem_?~^A_+K3fAA;?`>E*RMHoom+7$NO|e z`QzUAAa2d912xZ!3xA%np0!_`+J zS&rqs^89FA#+!fzPPF-HJ(ng0hA*1iyw44oYkz>DxJIz#Bj<7?<2G!$W1kfARjY`7 z?%j~cxr5wWn+w!TC&2FAFz-kgzsL+7QnXH5eyo1Zei6>D>5AVEJ)U?1Q|2^JT_@E! z(4`-)NmgnDf7KEComA7F<3kwtEsOeiP-dRj8)hi+@0(WvlnYUm4d!hrqHIx%zB4x1 zQLp_51DQ5d_8aaryfipyt-IOIDLxyQW-U6*jCcHKOirs&8&*|Fo%wto8z422t9(29 zK?)1m>+asw@l(;UkPOTMj-_SVN=6mboyC0o7U-*auz24BGPGUpola~`{{1~ zFC96$Flh4ljx{`&=lj@Ma9*j9i&1v|5!KxnU73J#8ndO7+b77%Buv)qsuKpdMhFZJ z3?|PL);8id@UzWTKj<{`5!8tKgq|2|vza%;@GMZL>V?ulQq~2go_KPArHs$H?DxkZ z2NAhUV(vj3BnNG3X}q-HG7|Gl{Th+qtZ}}-U5Gd{bw_Cby6mx>ZGSIj#0&$}se^^x zbsS(^qNVxa#U4lRxl|omA#hI=05w_1zp?-R`5h^|l`TfXR^~8RxDzWO4AwZ-cFkYF zV(H=%u*WGH*trsh+z&dGt<%3BV6!FOV}s&%A=sPe)j(f`EwlJ@@6H3k>6*wjMy0`f zH+)=;Mpz|W`DS)@cDlls?pZf{MpFbMA%UF*Gw}1jA$Wp_QKa^NW_T*5i zpq^7*g1aL9ngP7}tz;@vw-*8J>AnjK82TOxEwQ;tweoNQ6h>xSAuD&mlcccXPg}{_ zFC>)!;F1H-ti4mn`}=Y_mJ3?-Heq}FNhI6y*HB3rp`4&yiLdE5JWU5;z&2jkN7XsM zqupDFrou-WA^_rp(msA&LcaM6ALi}&%Wk0u9=yXltGOU&t{Q=>!{gtl`T05fomU^% zy8jOs00~CY^RfnTBC_ETv6tT%!S?hf%ys;uyt~%4I8%^PY(dAkdf7}m83PgyI{gwY zI-vm*x+og$Et}#ctB=V^7cN{ljP;X8Rn*)adg@frZnTvsM>ghBfE@V(**9J(+Xtu0 zVdqNYbj)|kY(Qe8KG7oW9lQ3%`9%r_W+(E`8gZ8ph-{-t&sk1!|K{2WY3CEj#5xJAVV1M?HPL zH6-+k0g{8?w|h-Zju((+>#Cu9zmrVUXf9&au#xPof~Wb$l9Y?+Ai;VNAf{!Q!gM%` zBjr;)nSdEVn2-lrm-WjPMGwwPG8vH87EmW``Lc-FnUi&6EHHCQ#hE$$Ch9AKFWlYo zPJD8&bj}sd)S_A-;9C*nM*gH!T>_IIv_3&VHF099=n@GkvwrX-D{7L`aTS?YAP1!F z7Kf5)h>3o8J&Q;K58)00zjaM*`-^_T`hLu63qaPjEW0?>bdlRb{ds1i^8g^(qM%pU z*^%X}@B{$w2H$W&a@>Lg?l@GGfCjR^Ic?A!RkcvF)Q}l#x>HB!yXrZ;Y&1LK$K?M% zek>IQ9*COe!>Qa~0~&fRzJCUVm5b2Bkx{;F!^xrZ(sT?UM+!i|<%j}PCJFi)2A@-5}eyp!Fr?}MSE9#2E+e-(`Y4(o} zu6BN#jzQ#r*h6r_s5h7bDbLen~R^iI84L zNu|a-C#pyaq9*DP+|E3-#tWQl>?4;;TJa}6{Uz^b@Y+c?U4N9Fu8+0!Yfsf?i?2bi zK$Jg(ts_qS=QU^#sq?*;3uw=1JPjE?58spt&E2C3(O_1WBN1%V$?=OT^5d z)L3A|ozDCr2B`|CRZ&Eub+c}h+h9@pqWJFa^YuNaKJ(B&6z~lU6u@$%8?u*P63zr- zPuPu;d5oh^q_JDl)W~vj&_CWx_!}b1*ji=_$9Q7hET8BYRcsZ}mCH97IrdRW@vx0e zY=B8&|J3Gf5TC}UtTAzg$%r9*J|uHORvyOQ5lfHZ_^__r=Y?{;I0kVY%X~1i7hGDJ z^+)-!aR4Jdfr(QRH>Vn}PCZgIuHcg(_ydHFJ-rwIm~)C*3C!9+wj}=-f3TB@0gT0? ziBT{Wsay87?8!xOJk!|HkG|!g3=fK5v~dmG&qbwHGnvYkBK}=J8U$ zp$XBGFwP<>uEUZZL_U{-6ZgUvGZIWVllFDX3+ z_~pjJ)#5dlr<+@tK;{u{TO7vJgb}dBi#hgsD)=?USBJ&7(r()t8sAW=2v_6-IOG%Le;N? zUnYByWDFFf%RJ_h)-8ZSqrZzgt}&UaYVGvVRlt89ofb(Cq-7bTUwoSOc9Hv;2hl>4zjG+-denDV@*6CpGfaB9;h(y8+thTGBr>R<}UDe~XNoK!x9o zLeDYiy%+M1hZm*_52Oa607`V-0Sl6_O_xf+Ibd3_AYZHx1%CUq%)Wi!dawS^q4)r7 z_mS%_Yqx(cN%p>zSQ$muUO$MtK z(2~+D55?QqKI~!i0&={c@Qr9IcEp=?MxjR4;H?3>i|rapRo7M9*SYhwY@^HI!>+BB zSEmwEoslWHcKPr*K9!2^Iu^o*%I8!LzN9hIY$Jf1k zaivWIt4cwCNh|pTV)E<~V*ok~iL6sx|E;AZcV*NoJ9zK8qtv~BglWDm&?Gl>{}!5` zfKFZS6%Wnt$F|VSw7~pi+L;ov#LDTy4g((Fv}|NGBa}lNe|C+qx*JL$Z$A_aR#YH{ zj+I`c@ttm-o?LrHlsdihQ0Z$msvn1$Lm7`HY9ey`35n{)(a72yhN0CSpki({2Iu6^ zeW*V!mNadz7{`}6`awq|yrzE5+O=fI3QxU841FZs(N z0zf_mkl`4VgR?U0_A@S12GehEo9OI@vi}UxZC>_1egtYOhfpw8?xN$+*_qG}5=~9$ znU-v?$gkd*;+-p?97RA(73VrnRbo&G6yJmc&S790ynXZL{1*ll5L8bDWutg*MO&|W z7;DA!2i>`4=m)kC;uD)?^>`1k@{piE?2@R|dBh>X2xmP+aR7bL<(ZY&nCKLrGT*A1 z;0tZRJGQWI3A?*W+%>y2&hRt#`gNB*Fy{}3hFKBwE z7*o2rhqgZpcFuzd+><1g%z6)0As{h(l>9SiM@(*xzjj&Pi^Mh`;z7h_6B~wA!&@Wr z{Z*}qt1;7g)0R!*;@arKw$d(jgYH-Qcv@X9xiK&zXFH>)+R5fj_W_J#G#8e~>dP=O zGuuI330+eyeS%Ax>Y0+-o!Sk-d;eg<*l;0qSqNvMTERLp4%L~90quT(xzIYKUcn)C zdnz@a0Yjn9SOQ)O-=DQXApu4N@+?DgP!aggU!N)d}v)lrDKb`dGii%tbZ&1yz| zt)#*UWQNJ>lE>dQJqtK)|A!_i(I1@%+0QiSBr+EZ{BO`R>jjNIr>cHVM?@}^x|Rv= zw)U(ZGi;Ug1pzBSM!3*rY``cYO!#!2GTEg`yYXzyjA(*z;4~f%V1dci`D27#3#M1T zqCXb^-$hGFzvayNHc|eM1fn`EWweJ+!Z2KCM-UsP|i& zEkZLx}JLZV9--FkgBy6w?a0xJGUw8&-@bcU)sX|K!pEyP3g#tRT%|@ z{(|C)E$Umqy~ za5gpoh~_v~_58RD<~(h6dE4+Q4VgM~;{Y*fvX_1B;j|Co_4TJp(n+JM=q$_m`ZzV^ z*p{U3k%{dFxrZ(+U?2E;D`suW8467!w=QF5V>7N#*O@_w>hnY6UQ-K4V8~CZi9unO z#-Zo0>!9VxlNf2Z9b>oqFFH?-QK+SgZm&-`2H@+@0olh=SATq~tq|82gkSSlCHEbB z7Gg!W=VIkJ!#ua^uV2p!Gq_aC!2fXF`%(1I|6UgUsb7XJs+a8LWjhw76z0RP9xI)H zcWbxJWq4I6l_^E|NPz#a1L~Qy_hisy+P}`k73lJMFnpgkSc$Cvb4|-JFYvxUphen( z!g;%Al2Cw^ZkaDV(oVx#6slH%;lb=+zjK-sy&MMU$tI_+eHEtA#^lcRkjjFX@!2cw zFMg)TM5;5gL`64VV8a!vuot*6`S@RC(-&o~SIdabZS4MW5uP9k*IjxdDj1E(uXk!> zjhdDRnDvc9i}&-c1+Z?_WH4Ai)Mr1{;W>3M&~4yw-iHsqYb+QB~K~?Owt59&~ z`#A%uW$JiAUR|OyT#|o5<$i82Fu+vE+5tAXWNhYY15K4<^1Zx?FpHF#4Ot<53lJZN z%U_cR>oJmIvl2{Lw~FW3SuZr|k-n~Q!C27DD*=AUV|x3+JRI_)v4?{qPe47U^hkX= zz+2jiLL6O!s&|NRU^=7%SBHJ?Jgrs+u@gk|Xuz(bQ|_Dsl{~wOQpr%?2=ed^=L4F< z%j*oF*_QvHqgPy`UF0Bxd6CEHr#}Zx4xj4*AGxUdBgm7j;6v;RC|Z5Cg^m#BO_!Xr z5aI6lc1&vVfrAGJKl-^Hwwt{WkPM}fkVttst3Ki87{w5ch}zn}f23U+#VBxhM!7BW zj1gF(U^>)_!1pZ9m&FmioK{kE)Gr*Y{MSB(`lk#<|OKBT8otq0*A8s4Qcy z8o%Afn5@c!T?DWacyPKDv;Tk~9n)dv38?1dVBatXdj=ys&T!D^H1`UCnt07YwQh}( z8u4yHB}|NGQ?pTQ6b0QNycz@#qURiYV2h@|@OJ-D$p;cZ9HKp%K*tJlzNKmvg)Ytb zkATdQ|7lok$Pm%#xzL7L8K;GT0$lPAAq5X{tH6~=qYI_MW0NSlF?7*KNO=N$%v3jA!{WwV{Pf068MQn@O|XngOWeACy)3Bf#2jE( zTIF>gT1F&>Ok*n^7|brb0J|sSHC()1{%cdU2 zC2k>T6b29Vh&g;!x8DO7Ji;!c|C6Dh&cPxS@aBcp5B~MAAy;Zb871r=?Su71Kt~X# z@ZiV81RGOQlxPc+i>O?Uml+02Q_S5HYNDd@?E~G-m?OPNX%BfCp4dE0a0`Zo^%4 z-0gLqP!NP-c`E#nG=rUOW=ojCTwppo@PSsJg~{7a3N+(-;u zoPqs?Lg28$G_YFAibGIWyk08!t5hU(K^4lTSxIj?2=>s@0=(c^ANu-$mc1~PaNapg z#BE^R9T-9(MNdKZqzqL7VwhfGfrt#qUh)ong#ShlMUTwTz4doj@H z1v^$1&qx-23yayG5H?mR$X%S3YpEm5KwJ;_aP2-dvJX4EH==|1Ag0TGF3L|rxM2!Y zT9fXBGACrb7v}xoR{OziijQSfcJS05(!!lz<37_S;m)W|eq7M#+cpt;t_>vR{%~!Hdet;DNq;_ZCUXOzEAxyu2Gan=rgcL3AzhtYEeAo0;q2YTtiRtXtE^1_PTLObOiufh=V2 z8`;JZaHLXdB~3S)f%zwK_P6Ifdkfb^F_p8BVRl`?O2-n;$H!MM5ioJSK2eFK*rHQs zT3-YWJn>8+L`0I@$$lBmMQ04xHuN5nr_J~(^ox+Gb3k|ytzQw2e&r}Wb9_kf8RoFAdrxQbtufvB!Qd#v3yWU?aa!%@3H>Qv!#x{<|_ zquI(CRq~WV&lLCzOa2fmeq%v+-v=3g^>O zn}avk$j0eTt zs_VQ^y!Jl}9eu0q3AH)f#->>Pa}#()#s)_EngB6heD%Px&cm3$hJq=5q07h4U0K?* zxQuli0*DQs6W=dl8vwg`C<&Q+kxjF7F!f#w4&Yskwf6mR?#ZJqTkZaNKTzb_^G^b9 z%(l-#{yG~+j(Db6A(_hle*JmLlfOB{hbQO3u47Es%+Dx{4YbLJN~1YAn@P1&Abw>S zvT7Vvl~LF1y4yZUA!hGb*imMAp!`_a{N3pM;{rKcrs?hZDh0$iS<>hs;6T& zs7(h`o%aPT?FV#{hd-6g`F!CtV4;!)2}JFK9{lnf$NSx5fFea6J0A3Ie)}48F?$_h3pXBm@{3r!T**>VcUr=?#K+C=N zxBa`_t2fw8jGj@tt`o%A4_U9#-)Bk_B!ZR-8FrHd5__f0U?7|Tt|`{w|-mrwS$7Zx=a7+!zf7O=ub^f zG@Tr4;)A6b-EIuX?M|7y)^;?Yosup6Nk*o;^e z+;Q|FIJ&$P1gN;0w`u_QFJHYn=(}Ra^@kK%$`H1(-2t@IWcigWgq67o6i&WIVzBb* zVYaf8jGZOyrPnueo}5NuQW!%k|2pksnaX=?%XBk9s`AG&f4+c37Rz&%yD+-T-L+bm z38Sg5BjbrlUC&DYDEnpk`QKZxBHj`k&U(+8ve`VsYpK={T1vT3_*s}Dy|g5I!b0|P zlY{S1m^a|*y;tt73UAu^6GJD9>G?kc?{4>thdM%mklSDrH`x1bhb#TVb)`=ZE+!`M zvVF)oCnD9i^IeyF<+F@5y+)vc#5wk8vRP%?wq049CgOep4*9WZ9#f}b3NmILHLx0% zj{Pq?w^`FgeTb$TMlV`Fk%~EDy5i>SC8-9TsDIJaDpR$+LCMX*P_xeGTs!G>*-Ne}Qm5 zAw%V>SI;O$EV_+3K>@bJ#Jjs=0&WXvF|ygBDLn-X$@DNaoA~0P@5i`I`XmTWJ6wiL zuL}JzV??cELFdxC%xQrs`!}-eE^~@zLC!j%F}|oM%bzB-a|{XdP`wa9#&XRQcI_5O zn%e8&BYRH|!bRiFFT2@H?Y~6DKTtKP-aJY6+mK;`Sz|xc8{22li4DP*U}qrV)!c%+GJ%Tybu~u?Y?jK<5OWt&{>U1 z+h)S6Ml??Gd{YSZ#`010p+|j%OsZ+PCem_mrWKPo^wsKn4zgmAMXm z>sD#OF)7&yYl{yOgMKSqvW7=cd<`_eyz%hN)P(cp8#hE0ZA4km{U-2%0N=ztnuPg)OMe1VHnzVpV@yS=%b5t*A4Qky zbhLoi;Hz;2cF!7sI`RTRM$H|U=?IMZco+bv!F=(9H&TWjK&H%dOUdE4D}-O+1M_bf)INd6QcE+zlowq8 z-iNn}UOKF$TE&&>{dfQXSR)}^d`_+=jDCc&Eo!$Met&Re_ZmoYii>90rkL3z`e464;kVH-h0?AtOcb}c_!r^zR^4i2MImDcFx-b5;5cc95+orl>pT}Ka!~T2JN-$2Qi;}YTcX(6u3Cj z>xZVPux3+t1br=F)Ga`M19w$Mj&*jt!2I&YBW||;c@lQ~Vx7l@ zvo^bIO6IlEAxpVTuHj{qsVqPdz)OK20M48*8a+8l0 z#Jpp*>$mM@=;XRL9OK=7CXKVc z2bG%`9z3~PbYdpFXm1E+uTP{zCH_NmENK5+@`o9t!nq!Z#J1Drq370YBh*F0MGo0Z zD#T^FkcsD6a^}_2M*6I$j+V1-jLiQ2<-L5O6N`BFh!e{j3!W+PzuFzpO}|<6>3c_a z$K}F&VmeZ^Ahz4&8u7Y5IuFE@TJ2^il9wm^7Y=mN%;|JvFqPE?~zGK*Xx3eRu1~40`z#N&LC;}-?RS&!+3;ecp_?;ji z0wz+#UX_V8P|C9@9fSX(5yCyaq$(4G8e=DhGN4)ZCOIrxxvP+#Tc{pQSK-Jf3oRmT zi6!J}ANGwf0(mIruvsgNSO!dh>gBWQQWF9HgGwK-EF?ocV4OmV$IAS@pEy)p$Q0=| zv2C2VGZ@PLCC0t(O1yreZR-5Q#04o+;W5DWj3+fwISfwIEKoN>$JC^(SKaRdjX|%ukXp|b5YNvWV%L{;Q-DKg;Ru$+#D_1J-ZLS6BkJLk|5EaOzMi#d&`y~DncIust*AsJ+zno}5KMb2scD_Z#x!94T=R$6M-JFi^6d=uku z;;>QQt-qJvP4*-L5`!xT(&8efu3o_axy`?1>hF)x=seCu_8K~$g z^1`V3K(*`4b~2=pe_vxJd4tu_qT{pQ;4g3Uoq-oJ15D$~(Y99u%fRoR$9 zp6Z@qMWXQa6L`vNp-7+E9oJ3pT%D*=w1#3Y7fO=ZIP0he@@AZ@*VQ86*`}{EQ$ifx%VcNl$@&^;A6DWbF4s5`#8mJ4OM!#SGBIIJR}Hx zCkeP5crSYkaGTAO=~V%Gaq;mHm1RK^u&pR4dY$h5d#j6U;6@~>CAu!VW-mn>^+83^ zoKp4e;~)hGURZ3UKR4$vOb_Bau0EjvPJJP*qG(krOL{o;+>TweACD%$*SLvdx4_W_ z>m0EoGo|W>dCQFB*R5Mi4Hmg)xnfQ4S1pCmj<$}D0+0b^|A zf1`Tk0%VpJ7ccz1`DkxCVoSln;|EF7#+@z_dFJkt(v?(*4ftqp1HunLfe4+{N16$1 zfn^{}&u54E=TAT!6#M&(=x?7BAC~$9$ylrJ!SR<43_Dv@G&Rj%dBH0Qb?B?!XV2m2 zWxhVxbL16xb*Q`?M0ImC!Cz&YtUM}X0jHYq*7kNzBQyVxAj|DXYU@^RC+Cm8BvHoQ zUqHvOv-I&&4i43@-Qi+qA=)E2_ZV1o*JTpy(&BRl6*k>D%-X+~F5|JHb;Blp{)GBT zhzQ95YIyIGB>0W9GYqxALg0tJ@!3RCT&e@HIzcY)<~*8ob~VXhv@O)h*(0xCmLof~ zc3zO)yVnb11@1+OZ*z0y03yjBUn`5phvj|e3%Zdwf%Z1Fih0i+ZA2uz^SLGJiYdh=)f zRmAiSVEln7y@58_g}->Z{%fH zBB3_K#N2jK^2I6q%*?_!O-taeh8)i+WuWX9uHt+TyZO+i-GRqM&%S;~PAdnTR!x8S(H>l1f7v z(q`>B9-vfhyn~+gd0IBs>ylR6kq?`Fw1*CGBfO0UN*_Od6YXbAdC<9h3$maNp>%Y7 ze0=rNJ##-y@O=F4^!>koD?E2Pk?2?Jo!Vu()C(~wA2Wbe;a!yx{`BttTLIP!%a!^JU_QRnvreS{coU%K!1ty`FB zZCD-QjFJg7f~5xT?lIVTHKk&(6-DgLW{>fx+%E)X2jC;TI_yu=Rp>Jk_ar@kerRSJ zRD=&^VP*4rw!UgO5wUwWJUtrtf<^McEPk#3nn=ah`)hxm*eCbHhpR)e05*NcJn1rC zt63{YSdqF1FoM#wtmqs~$UHi3fK6N(=b5S8| zOSW;^6bUcw4NFQDo+0ztB!8DJU}j|W1@v+F*fHOO;aj<_7DM#~QFmyr7%`G9%Qlyn zNfVZWF>vK-M+muQ>;xiWGQ)>NCo}81raZ@pqfnyX zXHojEg28lENNi$9r7ymr1=wz&G_CQ)5*c(}_)JSLZZ#{7z{_7<`xQ+9*&>ycsOQ=v zyw*mq(MB~{$9nz)a%-p=;h#D>_?GL~-y}9CYbE({xD(lG;*74s#x&b&o;Ixgm^>54$3qc5JMe^KAEsW$0Km z6T5TJze!~!$f1uCOv~Pk?<(}cxLsk!wgj>^H5UauP$(4m4i8FJ{2BK2DUq&ODoJ49 zeMq0ik5!y4WF`6aiiqw84@{6bKfQ{Ljos}3wdUm$(wW1pxm#;d2iTSY^g|oiSz=YW z&^EpzSfjj3>_V*X-OICQj~0CYHcd@Ug-A6ME$U-_^Z&_^wur}Do$@yRTB!F=Xb2{7 zU-#zR?~EUHc(5wh@mtL&n~?e9PeMYzO7fZ@K~^*UipAfC*_SOdq<@`wE-me#u5KX8 zn%b)49(c{RwMPDxY1baS0sLc4gz$&q^1N>6PG!t=tj;%Y_Q8a-0IM;N_lXhmNrNCO zv_9mPGUJOTk~(c$+ZAsnehk(bU1(j0RTd+BTnc?z4G8)s8kq=U(bW@Y>P zTE>qDc!Y$Mpu+rOV~Thsu~aikzK9E$eJ}e)0fAj&cb9W;a57tjeSu{w?Cor}k?%KCY8IiP_>U!a2N`%3m7Y_!UoOtt9}W|IUSbfOymHW;^4@^3u5r z64F8ASJ)iD~mwFzmOTlScY``t<3g`FQ~%*1g|v5z9bgNLfkNNbLr* zyjw+0<E-ZYHmhgwuLF%m-YnkdIqcmQs>$7&#oWmQGNhl(p3~C zw8(!>75S%FQa3Nxi8!(3yIonsQH$MlEbc_d@wgXqA?JiG@ohYt{-Wb%EnUrVnBT(%M|^gWzbQbm?Z_0SQA4aRSU0M@N#IE=D?LY_GXZMBPaV(NE?Rmv*QU zpBRw!B9U8yr<=$|!=7EN?Ck5&8?Z`Ad7Mn@^$WGtcg;t${?uc#<-duNBEt?dra z827OYubbwS$_;A}cDEMt&#aaIZx-5e7@;fhqseK#C1hVHmy}0?RT^iz7^cbY7pU%Q zs8m^og!loB1!U9WznYdmy-axcw|sq%MXbWj`2Yc)Ax4KuyNUDx-$JOk+GZTcwh@K| zA^Nnq$2#>y+Yfinvr$!_ASKxrGqY!%m_*2UVa-skJU>Qgl{U7C9yJ7jbRG4R`7+4c|KoaoHH^^!+6gIO{#yEa_&Vl0eQz zH|QOby8Bzy$wW?AP_|heDFy5P)hGN9l+Uq2}wexeOM-m(IMW z=(q$$a&vIdCz|!c^mOq6YSY9sk(Y21e{)c!X4l-u=_QcuY7^Btyo>%|T%EfSI{xcqPs=u7IRL_5oNYI8!)RSNlBYIkfs}|u>p`>SG*poTgZ|KBz}w- z9$mhEJ#mk0^UB1l<6xIvvvI@L(rXeIuyeyFV7q}gF?ZT^TND0mHy&9kpY3sWkQw4MC343K?_&xc+2>T8&-az0wAKH8NJ?Y zp>73WvA1ar>Jus(!%$y}x9%1nNR$uvrVlFcMZZQ_8y>!#jXGFy3Rx+ar zcz~eH3Cq>9q8m)t(ZZa0R2$mCfEBdY6yDQ9=_=vcrggSru<|(OjQ4bqnClt;_V-+{ zA0{kVm=lm;pGHFWa*Fu3QQVyLxhRn*BpTfsmEk3(+ZP?h1rT#LuC#ymw4`IwK^gV)ll5@)@=T;kOU! zux+06QEbS(pYPm`Rg}afJa%d;*F*Q@HO)@478U?RoVWr0^yMp8c4Sn7h)YT@VlfP7 z4M+PR92-;VEK4`kEHjpxQ(8H(bu7B?i8Bs{ThE&L7=XgGQD{z+_#?;WbUaj#mHF#M z@C+3s8HIK~DyR|=0ve#PBl{TU6!MIskTG`1{v1~P3p};_Kzh%BoOtg{f)Qk`fiTH* zWcZ3qTDW;q|u%bq3*jt!8Ry~hJ-*D^B z9m8_-O>+}ET{D6E)2ag>%|Rc?u+2n3c;yUO78^^dMN4emV7%mi9h*E*#rtA@>gr~~ zDLxH{k9AwN6m%A+Vc_~?TExG}IE2HI0mM`a< z#(GHcOtl3N0Hrb$8+>$`CQhfaJSGjH;&TYP27lS?u9*yUv?e^G=m*t;a@LZyLJaB1qXxgqIX#{tXRj; zG(a)@ZlmlUJ$0CT-51LB93LAy3?U{-;-CBa^bAsnF$F&?7abouS_^g`m2w-k!IBG` z>vlHy;P;N41ZI@0#Fc*o5(qM1E>hW8$}Q>jP<;8L?hZ$wOQX5w@j0xTEM$!4Jcj~#j&+Bg{fxHREEM1lA{1lTF5BmrR|%7+nz(y<8Lps zC0X?#=^hyM0BpKL|IK-^O0tJ;41Mo4yPfK4lFB03!v&lyroxR2P*os%a{B{|R^*t3 zEo-2pMJL)@`$l~g9XH2^;^JL_2_cFXUzm5A#5NtR29<&P?y0$Qb38oKSW5Jtm9yVJ zV=^p_)0mIl|Fz~rkfW66;rx>77(MHHqr-|=X@FAOhDzR8v`rYWH1*5v$Nwm4d&@}DAm(QQ~Ti58L-gjjfV%h?q zwx#a0D^r=_OE@?-Anvoe|GfYO)*R@gkeqPw>c8dY{JHiz{JCuG(Vq@P)a48K;Tr@d z=6a%(=uyb|W~8H+Xg7|U(hw^C5dA9eYnX;QgA-+`WSXoa(<@dC?=N^zY0Et8&<4i( zB>UcWgI3_biCWvm#59Ro!NbGDD)M|NE5M}5bOm{NcK1{{2bmyNR8}jeJZQrO7aC_@ zM`Ss?#>0XOjpj6TqNJf4Epnk8|c2YVcHBqhorB$OCOjHwlwBRh4EL!hA`7_U9J*BvbakY#YCb8KO;MaTabKa}KU@G% z6>Vt`j=~SLnEf6cdB}1)t8!$$C$0%o1n8<}x^w3aS$%@)IK57GXX$Eg?vm!i)jA7| zXIE?pN}CYWAHDgoZq73r!`I)cJwoPm6OZqM2b&RV;_9z>Cl~MT;Igh+?TY^h+XCz# z&V%snDHt%HJ4U1$gGXRQPFUQ)Tt6@@*FKs4r&)FDgIsXK4eYh5dcV~b31eZ-&YEaF z^b6$~u1>J|x&@PxL-^~>A4KamS8r=VY;8l+kvm3Pt;ykCc`|K&1NPFMwDJNwEg$=B z`i?#IuK$s79)UA@iKy#vWM|gFfq{W=ZD~(c(~4);VYN{%EW2&?J{J;5Macp(rQP=z z&b~j{*YE<0&Z<1m3n11WmR^N%?x@Y=P^6`s1$@KU;waCtmqOj}86Ym(e)xj5jEQPo zkR#kiIhRkGJUnm0_%PYdfT$SxFNC)lMkxgC4Vre5(NvL?7$lAAfE=Z*|z3W6WM~kH`ZO^UdeuqEHN~U%ad3BHh(T1?fHU z=1#*C6K=5NxLU@m;ki|6&6+jW`s?6TDtoTK?L9cnmO6e}qo0|HC7tQU=!uQY@5x>} z#`tEJ?x@@|y_|$K>IT(7u5F!Bk{fFuoPAm^|J9qy8hK7yf__NiaM~+1F4~>TFx>fQ za6kdIPB=ZO*#heG1J9nQJcBtu+=}^tpPZbHzu{z3FQ8f1>O6HE+dzMh%F>hg^Xii8 z@vP6IvJs9Tzk1(m!*Xu}A78cO0w2-~n=h+@pLJ_nTOL3*b2q>1NN7i(gxUXxC9Ua+ z45&6X#9IdFNL_5XRi^LgW=d&yy$9H*nDd4(Ig(CmjVynAh4JhQYLjxr>tTra zH#B$jqZ-2K4x<|J@V&Id`fKVLs*&+rgh1?4+t!Vc}8Kk*t%#0s;!? z&(&j2B!1}zf!6e4J+NkCA^qKzf!}B!z<`U0Ls?)Vw27_s~)4EZpjaC?#_V~ zSo=34Iq5p=u0=~Z>#`Uj(mCt={G*o5UMH5Ead-L%YrA|nxvWF81}i-yd)=5ma$!ts zlrMVM;g~3-{HW6E-t(xSxPoVz1ZOl9xtyF06@sg9V|QSlkd~cRut5J5+El-6$U?Tb zhraSm@~5jhHJ+Zt__c4N=#p?8t2R~i*1VL-oSt&s zjX6A7v!rmpLgjX(W};leVEiH}DXAw~X;a|_C;|Pv&2&_l2hq4y&S;?k_?LX5!ckcr z(EI#Vh|~LmF#!P%0bC}MQy7;i6*|yaQK_#MXuEWU#(|IBRU04n5IC_ytuYF2LU1~PUKSq5 zj{%I8Y#K~8zlH9Kw8-(5k3Ts=i_(cDRAh5VwB`e64AAaUKy|!}L?OnNaq=}~g_MWe zR+CTL=-m{hrLHc9Nv_KmjoM3C(}RYpIp^g2|9zDT;|sI;G6elOjWLHQP!Z^k zay#py8|xnlPXPliz&&ey`F{0nCbkWt7MlJ=@z@(d6d0!mv3-@Z@w9{XnRo0&0qY-C z^cEFnJXxItqq(L}*~Cf?8|^d)>AAcR2LNdkeP=5mp+#voZrtz(QGi=nzuKI1Yz+{MPl?UT;jKA$oRzxD0=x(-wOss%F48S&SOS;oUjr{9)RnL7E z!wnplOWV4~h?h?>O23=dJqhyqu|#UN;Y zy>JUEF0Xusq2?tnY+COEjDF;8rS)B=Qs;Hfi3X^s-=iiOuVFAroAp7cf|!nuyo)Ff zY}`aVCIEGLHQuUA%z%ofm;YQM{>39RYcri1&RhgJBA;DN`_mmAV>q*cKYdN0!01uw zqa80-ZXoVg>4?cmehE)bYxKup%fpT{pZAL>zg~)CbG!xZeu#d<6$4B;2LJ?6z<{e{ z>@4EN$=~Hu>eB;Kj~^h7!vFo@2MK+n^MXnJoF7gIh@lZhx)QvxfOqmrN?vKD{={Kg zFWahPjGBJ*Bv209PZyR$f^m7;=XspR zIO&pT+3^8y-94U&X!f#S5wWvwOsl%ag;Fv9pBkpbo`{JKkV~-o00y_5V?% zV`U6-V1>`DC;m5b@}~t7F9?E9S|XpM2*mT@`e@z^Qp>&wV_-LHDPYo#!p`PJz&4dR zKQATNn}Ozu?a?vhN+9T1-xW@23jxq(7m&*+{szhXH9>wo2@O%4BG!kfn&93O#A%ax z$7s-k@*BHCsx(5@HnOvfPKTS6Kc1jnq>CbcqdvQN1hWsqLl?2VQqS_}dI6~NCZPB; zN$11Y!2t#o`WE8L0w~*QhZdy$#Z}7OppBD@)9IMr_MT6kGr#lcSMVql3&+w>JmD`y z4R6KsV6@hbU!HDLRv5i;VE&ZL>wY_cQbLW{K5Y9}<;;iHT|izwt36nr_zA`H5Vx+o z{3lw8sF{|4gLPa1-HTR4#r$sEU9ki&F!9vu69Ypq?vnBA z^TY8ibkO1O*oBW(S3Vk!X0a~M84dq#0`hIz^sMOhXn%|Cnfj+so?JR6wE`AWqhy@? z>Gmn5O=hp(No%2|IW<#a3|%ZlhKF0^zzOB$3aZOY4fB2poaSbbWIF9TsN z42jDcqI|=&Y$d=4S1@)eUgw@1Y*%(86gUT@b<2Z?(^Mjh)8QJ11}i%ZVf{}yrP-mT zMQy`gZouW!>v4}+ecH-cZL!dm>@S^Z;yVBfh4mz0@nYVn1oOZNKad^n>U+HAG!p5{ z!ngY&W+#Jftg-E!t%Q1l21nN(%JD^WmaHQlTXuB#jzSM1e>BvvWLe2_JS04jVcEA# zxIp-+Ij)9Fnp_0UiL)mIOc!p%Kj3;ytsaCK_7?S7qTQu=%-h zvifepIlAK~P80zZwu-6?Df!ypFK%yd4|!eF)%$YGXB~B9+j)|Fm@5Wm>2p#H$S{Pw z;wCNfU*%GZ)hdsZa1q-xtBn@GW zL<2{{gMX@m|Ld)xqH+z$%!;_>Y-}pHZNGc;jwBm?#zimsAbz5J?*w`<+r-23&x~_F z%UA4=VGrYw*@uaFh}kwe=C(AnlBYKwT+uy6FEU$htADk zb<10&y)tUED;2y^Us{4#wDRqn;}A)CiJ!~9N2q+figAB)E?HtZFUb*Y^PG&1qIs!_ zl=Ohj^$H>NX9F)7VzzGL;#gFBHHWFUF`26|NoME`A7lEBvmMzcp0fW}5X%we@s9QNCHPa_M)b9>2%zRis*1a#Y)TZ`5t#q|v6r_vf&R z5}l4N(Ng5K{hVbPO5prDwOyasS;{X5g5c;FKLX>7r|+27q5^1KM-;_mVreF%>q>gD zcOY+CskNhLJ>trkWl8tzf>5NLsXU{eC6KcpNL{IKFE5XFv0Oq&_h|AE=+VUN8+QXo zD!UM1uU?vD#53fK-hA?ONGbMLOG$mnn|*XQ4@9S?YB9k?ozZ;{|61Rgmn*Ymw`=P!j{a=%lpGY;jnD{T> z!i$xi^mPBjpN5$IPxCN83SFY^nQV%U|p5r2x-jPLd-qZAEe* zdA-I&)oAx=TZOSfT_$eIuTP4_97Qg>?DYoEW5@Q-Xrv`i^}-`onXx2X_6D)21N7IZ zcffi%YU!3QEmOZUj+>e`?5Wu6F*aZfCX4}6Sw5s3&adB7j78Ea;D@bWgf`VoRv%c{ zrBTiW)H=({YwdwQ+aEiKR}^o7^kqWJ>TbC2J?Bh=>;YD)E=vy2BhAOmU)ts3=e3+q zPuVgMpMP+fRxy)04b@{_;LAQ13WXRX6D{ZIGYcMrWh4TPrH%GDCPT+btoTspzGFxz zTe?nERN6b`&HzgO*Ga=wsW)rln(AQ)q~CC7Tx&75l8=HiAxQ%uIJ3x-`s)N;=5C5l zA1Sk&zHtmyQzYh7B`z|%=>=wd(5+jCdfA6IlA=9EQ^a`Aiy;3x8>#sBktE2|R37GA zl$u!pP}KxmpD71=J{jwU#{+^7Y^DxfN>atuk%@#_cU3nA=1<>8DmC;@5d39lPGL_u zz@m4>Z$MQEbT5%WdZDe8rTFU0)q8q5ti-nv*DV4YtyGO&01iD5?7n#4H9t5YREHsL zS=b|cONP$iZ7@2q)|7i-Av^vh7|X4$$)vfzjsf-9CVwy;<(M26`d{sV}_4pt))G}ebA|j}ET+nQejgKgURG8{mj*M|kG~&+%1Vkm zl2oH~NZ1l8hVwv9<()G6FjoPjPQRLFz0lt3veB=yF;Tn54<)B~{n;b%v=R^4(yHTP zf32`*JAG|LnjO~EEhH62!4x5`-X|>dRL(&(2&>r1R2Y-8EEoF|SeC_f7_n%gcID^z zzzuy{BO-lVwpzQ|9)~xSGS}7-H;zBN5fZY7xSW${>GZq> zbkZM_(?SBtRsjqN5$!8}=O=3+3uHj#t_sM{O{=>#q%ghZ(xN-Khhj?&l0`TWKW#lE zO`ic#S7DRND+kW|#xu9b^jnd*k9Tpvi2dT6nqIYm@op%Ytc2G zWRZwRe_M;aS}(K$JpbK%A}A z#wI2>lgBOVcB`sNW~cQ`h~UGgFJ8UbVDoq<|KKv!HFQ<`S|KJ+FWWt- z{z2%r6#N}8Ked~q-XLw#URkU#=fTg@+2J!DhyiOWqjl%q<7)I~E1WPEWsx2EO|w1A)2@L?u?19?)r0px#y*LK>&La=8AZr!@2 zJn8=OvUgYcqi(R;IzD)Dp>0NI!Hb6}-_y%xyJ7{hat*wOtHqMe76S3|p6*@54725K zZz85a&)n=M1;4JRQRj^PIP^7*G0)nb|Iv zaEUDRcWf8ucz+2xCoGU`Z+jg|!A{Tw-XL&9fRr*#i_SFcR8><8q@sN+>~}G4 zRE4h6VE_DJ;G{2Uy?>9Hwh2aE+#dCNAjM}g@e_l@d}=Y~^6-%&pJuJJGv1}F7Ou}} zjpt0o@P6X=BcND(Zi;6LaU~zVag#BO!h;@`?yc50DXUW-)>8Q?FqqZ$nMR&eCYc>~ zPiHK+EdAb4##5=$8#3aP;I1CWf_6yT%J*aCcvM=!ls!@Q)e zYxQE9_X2Qm0&}t=PJE4!Q1}BWi#dcfvUC1^H?z;{f3*<=qn6Vk_9>E}*AeF6C3$R1 zaWtyIC}!(x2EN+mxNuDQO!ZG)IQLY9lVe^jQ=bl(`}UVOv;%)g|I*#N*VxHUQ%#K+ z52zueisM-tW;gH1coYyzdRD4_j&}&7kB?6lT0K&1SPrbK=8j_^(n zVjhr_H&2Hkvc%2rRPXr8IDSxj^$-_T{8WC%307kulU{C

    bjmsldSB1H^qzJir~}Ka)bT@ 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 XA~_G;K8>F^;GdS7o@%4AZS?;EdtcVN literal 0 HcmV?d00001 diff --git a/ruff.toml b/ruff.toml index fd02032f48..578864b33e 100644 --- a/ruff.toml +++ b/ruff.toml @@ -1,7 +1,7 @@ line-length = 88 select = ["F", "E", "W", "UP"] -ignore = ["E501", "E741"] +ignore = ["E501", "E741", "E402"] exclude = [ ] diff --git a/tests/test_normal_vector_estimation.py b/tests/test_normal_vector_estimation.py new file mode 100644 index 0000000000..7612f22aa7 --- /dev/null +++ b/tests/test_normal_vector_estimation.py @@ -0,0 +1,19 @@ +import conftest # Add root path to sys.path +from Mapping.normal_vector_estimation import normal_vector_estimation as m +import random + +random.seed(12345) + + +def test_1(): + m.show_animation = False + m.main1() + + +def test_2(): + m.show_animation = False + m.main2() + + +if __name__ == '__main__': + conftest.run_this_test(__file__) diff --git a/utils/plot.py b/utils/plot.py index 3499694821..d4bbe29ffd 100644 --- a/utils/plot.py +++ b/utils/plot.py @@ -4,6 +4,10 @@ import math import matplotlib.pyplot as plt import numpy as np +from mpl_toolkits.mplot3d import art3d +from matplotlib.patches import FancyArrowPatch +from mpl_toolkits.mplot3d.proj3d import proj_transform +from mpl_toolkits.mplot3d import Axes3D def plot_arrow(x, y, yaw, arrow_length=1.0, @@ -84,3 +88,78 @@ def plot_curvature(x_list, y_list, heading_list, curvature, plt.plot(cx, cy, c, label=label) for ix, iy, icx, icy in zip(x_list, y_list, cx, cy): plt.plot([ix, icx], [iy, icy], c) + + +class Arrow3D(FancyArrowPatch): + + def __init__(self, x, y, z, dx, dy, dz, *args, **kwargs): + super().__init__((0, 0), (0, 0), *args, **kwargs) + self._xyz = (x, y, z) + self._dxdydz = (dx, dy, dz) + + def draw(self, renderer): + x1, y1, z1 = self._xyz + dx, dy, dz = self._dxdydz + x2, y2, z2 = (x1 + dx, y1 + dy, z1 + dz) + + xs, ys, zs = proj_transform((x1, x2), (y1, y2), (z1, z2), self.axes.M) + self.set_positions((xs[0], ys[0]), (xs[1], ys[1])) + super().draw(renderer) + + def do_3d_projection(self, renderer=None): + x1, y1, z1 = self._xyz + dx, dy, dz = self._dxdydz + x2, y2, z2 = (x1 + dx, y1 + dy, z1 + dz) + + xs, ys, zs = proj_transform((x1, x2), (y1, y2), (z1, z2), self.axes.M) + self.set_positions((xs[0], ys[0]), (xs[1], ys[1])) + + return np.min(zs) + + +def _arrow3D(ax, x, y, z, dx, dy, dz, *args, **kwargs): + '''Add an 3d arrow to an `Axes3D` instance.''' + arrow = Arrow3D(x, y, z, dx, dy, dz, *args, **kwargs) + ax.add_artist(arrow) + + +def plot_3d_vector_arrow(ax, p1, p2): + setattr(Axes3D, 'arrow3D', _arrow3D) + ax.arrow3D(p1[0], p1[1], p1[2], + p2[0]-p1[0], p2[1]-p1[1], p2[2]-p1[2], + mutation_scale=20, + arrowstyle="-|>", + ) + + + +def plot_triangle(p1, p2, p3, ax): + ax.add_collection3d(art3d.Poly3DCollection([[p1, p2, p3]], color='b')) + + +def set_equal_3d_axis(ax, x_lims, y_lims, z_lims): + """Helper function to set equal axis + + Args: + ax (Axes3DSubplot): matplotlib 3D axis, created by + `ax = fig.add_subplot(projection='3d')` + x_lims (np.array): array containing min and max value of x + y_lims (np.array): array containing min and max value of y + z_lims (np.array): array containing min and max value of z + """ + x_lims = np.asarray(x_lims) + y_lims = np.asarray(y_lims) + z_lims = np.asarray(z_lims) + # compute max required range + max_range = np.array([x_lims.max() - x_lims.min(), + y_lims.max() - y_lims.min(), + z_lims.max() - z_lims.min()]).max() / 2.0 + # compute mid-point along each axis + mid_x = (x_lims.max() + x_lims.min()) * 0.5 + mid_y = (y_lims.max() + y_lims.min()) * 0.5 + mid_z = (z_lims.max() + z_lims.min()) * 0.5 + + # set limits to axis + ax.set_xlim(mid_x - max_range, mid_x + max_range) + ax.set_ylim(mid_y - max_range, mid_y + max_range) + ax.set_zlim(mid_z - max_range, mid_z + max_range) From 5b14e91bc46a1bb7a32c736c534498e723ab24bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Mar 2023 21:41:34 +0900 Subject: [PATCH 060/414] Bump mypy from 1.0.1 to 1.1.1 in /requirements (#803) Bumps [mypy](https://github.com/python/mypy) from 1.0.1 to 1.1.1. - [Release notes](https://github.com/python/mypy/releases) - [Commits](https://github.com/python/mypy/compare/v1.0.1...v1.1.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 35798d7e86..8ed129f345 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.1 cvxpy == 1.3.0 pytest == 7.2.2 # For unit test pytest-xdist == 3.2.0 # For unit test -mypy == 1.0.1 # For unit test +mypy == 1.1.1 # For unit test ruff == 0.0.254 # For unit test From 9b70a6e1c22f68f8702e013962256a52b56e2d02 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Mar 2023 08:25:06 +0900 Subject: [PATCH 061/414] Bump ruff from 0.0.254 to 0.0.255 in /requirements (#805) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.254 to 0.0.255. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.254...v0.0.255) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8ed129f345..3efc1c87fc 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.0 pytest == 7.2.2 # For unit test pytest-xdist == 3.2.0 # For unit test mypy == 1.1.1 # For unit test -ruff == 0.0.254 # For unit test +ruff == 0.0.255 # For unit test From 3dbf2a4eb5b6ddaa113548d126429475128631ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Mar 2023 10:36:48 +0900 Subject: [PATCH 062/414] Bump pytest-xdist from 3.2.0 to 3.2.1 in /requirements (#804) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.2.0 to 3.2.1. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.2.0...v3.2.1) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3efc1c87fc..fc90ceb9d5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.0 pytest == 7.2.2 # For unit test -pytest-xdist == 3.2.0 # For unit test +pytest-xdist == 3.2.1 # For unit test mypy == 1.1.1 # For unit test ruff == 0.0.255 # For unit test From 1ce148e4be6e0c2cb619bc2c865f41b55a32dcc0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Mar 2023 07:11:27 +0900 Subject: [PATCH 063/414] Bump cvxpy from 1.3.0 to 1.3.1 in /requirements (#806) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.3.0 to 1.3.1. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.3.0...v1.3.1) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index fc90ceb9d5..001836e72e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.24.2 scipy == 1.10.1 matplotlib == 3.7.1 -cvxpy == 1.3.0 +cvxpy == 1.3.1 pytest == 7.2.2 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.1.1 # For unit test From 53eae53b5a78a08b7ce4c6ffeed727c1d6a0ab2e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Mar 2023 07:11:48 +0900 Subject: [PATCH 064/414] Bump ruff from 0.0.255 to 0.0.257 in /requirements (#807) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.255 to 0.0.257. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.255...v0.0.257) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 001836e72e..59a34902f4 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.2.2 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.1.1 # For unit test -ruff == 0.0.255 # For unit test +ruff == 0.0.257 # For unit test From 7d1365d08d272aef76d7cb88a8044711bacf3461 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 22 Mar 2023 22:47:12 +0900 Subject: [PATCH 065/414] Clean up README badge. (#808) --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 4ad19353e3..bfde2f9295 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,9 @@ # PythonRobotics ![GitHub_Action_Linux_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Linux_CI/badge.svg) ![GitHub_Action_MacOS_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/MacOS_CI/badge.svg) +![GitHub_Action_Windows_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Windows_CI/badge.svg) [![Build status](https://ci.appveyor.com/api/projects/status/sb279kxuv1be391g?svg=true)](https://ci.appveyor.com/project/AtsushiSakai/pythonrobotics) [![codecov](https://codecov.io/gh/AtsushiSakai/PythonRobotics/branch/master/graph/badge.svg)](https://codecov.io/gh/AtsushiSakai/PythonRobotics) -[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/AtsushiSakai/PythonRobotics.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/AtsushiSakai/PythonRobotics/context:python) -[![tokei](https://tokei.rs/b1/github/AtsushiSakai/PythonRobotics)](https://github.com/AtsushiSakai/PythonRobotics) Python codes for robotics algorithm. From 5093342d35b914c125f1a857d254083887574444 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Mar 2023 07:36:24 +0900 Subject: [PATCH 066/414] Bump ruff from 0.0.257 to 0.0.259 in /requirements (#809) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.257 to 0.0.259. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.257...v0.0.259) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 59a34902f4..bc27a2cb7d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.2.2 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.1.1 # For unit test -ruff == 0.0.257 # For unit test +ruff == 0.0.259 # For unit test From 32ecd546a45587e7634c0d321d3441057e1ebdf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 8 Apr 2023 19:15:17 +0900 Subject: [PATCH 067/414] Bump ruff from 0.0.259 to 0.0.260 in /requirements (#813) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.259 to 0.0.260. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.259...v0.0.260) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bc27a2cb7d..c8b9725def 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.2.2 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.1.1 # For unit test -ruff == 0.0.259 # For unit test +ruff == 0.0.260 # For unit test From f97fc0a26da22ac3eb51472cca5b2858bf9067fb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Apr 2023 08:17:07 +0900 Subject: [PATCH 068/414] Bump pytest from 7.2.2 to 7.3.0 in /requirements (#814) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.2.2 to 7.3.0. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.2.2...7.3.0) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c8b9725def..4019b31e0c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.24.2 scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 -pytest == 7.2.2 # For unit test +pytest == 7.3.0 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.1.1 # For unit test ruff == 0.0.260 # For unit test From cc6245cdcfcd6e35f5cb789a7aafe7fe57fe05c0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Apr 2023 09:34:13 +0900 Subject: [PATCH 069/414] Bump ruff from 0.0.260 to 0.0.261 in /requirements (#815) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.260 to 0.0.261. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.260...v0.0.261) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4019b31e0c..ad78be529a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.3.0 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.1.1 # For unit test -ruff == 0.0.260 # For unit test +ruff == 0.0.261 # For unit test From 90189c4711eba64d5ce902170277b9887a5f7cf5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Apr 2023 12:20:02 +0900 Subject: [PATCH 070/414] Bump mypy from 1.1.1 to 1.2.0 in /requirements (#816) Bumps [mypy](https://github.com/python/mypy) from 1.1.1 to 1.2.0. - [Release notes](https://github.com/python/mypy/releases) - [Commits](https://github.com/python/mypy/compare/v1.1.1...v1.2.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ad78be529a..9d43d13eb2 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.1 cvxpy == 1.3.1 pytest == 7.3.0 # For unit test pytest-xdist == 3.2.1 # For unit test -mypy == 1.1.1 # For unit test +mypy == 1.2.0 # For unit test ruff == 0.0.261 # For unit test From 2394e776f628cc0bba35b176e74e65345bb870b2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Apr 2023 14:56:19 +1000 Subject: [PATCH 071/414] Bump numpy from 1.24.2 to 1.24.3 in /requirements (#820) Bumps [numpy](https://github.com/numpy/numpy) from 1.24.2 to 1.24.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.24.2...v1.24.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9d43d13eb2..9f88bd9bfb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.24.2 +numpy == 1.24.3 scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 From 1efac6795ad75e7f28a04b049deab7038712efd9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Apr 2023 21:23:42 +0900 Subject: [PATCH 072/414] Bump ruff from 0.0.261 to 0.0.263 in /requirements (#822) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.261 to 0.0.263. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.261...v0.0.263) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9f88bd9bfb..e05a591dc5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.3.0 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.2.0 # For unit test -ruff == 0.0.261 # For unit test +ruff == 0.0.263 # For unit test From 28004c7b9c6cb0050e9b6e01a7c284ea631e9c9a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Apr 2023 21:49:36 +0900 Subject: [PATCH 073/414] Bump pytest from 7.3.0 to 7.3.1 in /requirements (#818) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.3.0 to 7.3.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.3.0...7.3.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e05a591dc5..501723248f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.24.3 scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 -pytest == 7.3.0 # For unit test +pytest == 7.3.1 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.2.0 # For unit test ruff == 0.0.263 # For unit test From 80124f20e814a03baa440481999847bdc850be62 Mon Sep 17 00:00:00 2001 From: RyderCRD <39330401+RyderCRD@users.noreply.github.com> Date: Thu, 27 Apr 2023 22:04:39 +0800 Subject: [PATCH 074/414] Fix the rewire() of rrt* path planning (#550) (#812) * Update rrt_star_reeds_shepp.py to fix #550 Add step_size attribute to RRTStarReedsShepp, and a method set_random_seed() to set the random seed, with two test cases. * Update rewire() of rrt_star.py Update rewire() of rrt_star.py to fix #550. Since the old version didn't assign path_yaw of edge_node to near_node, the old rewire() doesn't fit rrt_star_reeds_shepp.py * Update reeds_shepp_path_planning.py Limit the range of phi for the sake of planning speed, and simplify the the calculation process in straight_left_straight(). * Update reeds_shepp_path_planning.py * Remove unnecessary cost calculation Cost of edge_node is calculated in line 221, and self.node_list[i] is replaced to edge_node, so no need to update. * Update reeds_shepp_path_planning.py --- PathPlanning/RRTStar/rrt_star.py | 12 +++--- .../RRTStarReedsShepp/rrt_star_reeds_shepp.py | 14 ++++--- .../reeds_shepp_path_planning.py | 13 +++---- tests/test_rrt_star_reeds_shepp.py | 37 +++++++++++++++++++ 4 files changed, 56 insertions(+), 20 deletions(-) diff --git a/PathPlanning/RRTStar/rrt_star.py b/PathPlanning/RRTStar/rrt_star.py index f875d3a76d..b2884fe21b 100644 --- a/PathPlanning/RRTStar/rrt_star.py +++ b/PathPlanning/RRTStar/rrt_star.py @@ -225,13 +225,11 @@ def rewire(self, new_node, near_inds): improved_cost = near_node.cost > edge_node.cost if no_collision and improved_cost: - near_node.x = edge_node.x - near_node.y = edge_node.y - near_node.cost = edge_node.cost - near_node.path_x = edge_node.path_x - near_node.path_y = edge_node.path_y - near_node.parent = edge_node.parent - self.propagate_cost_to_leaves(new_node) + for node in self.node_list: + if node.parent == self.node_list[i]: + node.parent = edge_node + self.node_list[i] = edge_node + self.propagate_cost_to_leaves(self.node_list[i]) def calc_new_cost(self, from_node, to_node): d, _ = self.calc_distance_and_angle(from_node, to_node) diff --git a/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py b/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py index 66185017a0..c4c3e7c8a8 100644 --- a/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py +++ b/PathPlanning/RRTStarReedsShepp/rrt_star_reeds_shepp.py @@ -36,7 +36,7 @@ def __init__(self, x, y, yaw): self.path_yaw = [] def __init__(self, start, goal, obstacle_list, rand_area, - max_iter=200, + max_iter=200, step_size=0.2, connect_circle_dist=50.0, robot_radius=0.0 ): @@ -55,6 +55,7 @@ def __init__(self, start, goal, obstacle_list, rand_area, self.min_rand = rand_area[0] self.max_rand = rand_area[1] self.max_iter = max_iter + self.step_size = step_size self.obstacle_list = obstacle_list self.connect_circle_dist = connect_circle_dist self.robot_radius = robot_radius @@ -63,6 +64,9 @@ def __init__(self, start, goal, obstacle_list, rand_area, self.goal_yaw_th = np.deg2rad(1.0) self.goal_xy_th = 0.5 + def set_random_seed(self, seed): + random.seed(seed) + def planning(self, animation=True, search_until_max_iter=True): """ planning @@ -147,8 +151,8 @@ def plot_start_goal_arrow(self): def steer(self, from_node, to_node): px, py, pyaw, mode, course_lengths = reeds_shepp_path_planning.reeds_shepp_path_planning( - from_node.x, from_node.y, from_node.yaw, - to_node.x, to_node.y, to_node.yaw, self.curvature) + from_node.x, from_node.y, from_node.yaw, to_node.x, + to_node.y, to_node.yaw, self.curvature, self.step_size) if not px: return None @@ -169,8 +173,8 @@ def steer(self, from_node, to_node): def calc_new_cost(self, from_node, to_node): _, _, _, _, course_lengths = reeds_shepp_path_planning.reeds_shepp_path_planning( - from_node.x, from_node.y, from_node.yaw, - to_node.x, to_node.y, to_node.yaw, self.curvature) + from_node.x, from_node.y, from_node.yaw, to_node.x, + to_node.y, to_node.yaw, self.curvature, self.step_size) if not course_lengths: return float("inf") diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index 1577d048d3..c55d2629e5 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -53,17 +53,14 @@ def mod2pi(x): def straight_left_straight(x, y, phi): phi = mod2pi(phi) - if y > 0.0 and 0.0 < phi < math.pi * 0.99: + # only take phi in (0.01*math.pi, 0.99*math.pi) for the sake of speed. + # phi in (0, 0.01*math.pi) will make test2() in test_rrt_star_reeds_shepp.py + # extremely time-consuming, since the value of xd, t will be very large. + if math.pi * 0.01 < phi < math.pi * 0.99 and y != 0: xd = - y / math.tan(phi) + x t = xd - math.tan(phi / 2.0) u = phi - v = math.hypot(x - xd, y) - math.tan(phi / 2.0) - return True, t, u, v - elif y < 0.0 < phi < math.pi * 0.99: - xd = - y / math.tan(phi) + x - t = xd - math.tan(phi / 2.0) - u = phi - v = -math.hypot(x - xd, y) - math.tan(phi / 2.0) + v = np.sign(y) * math.hypot(x - xd, y) - math.tan(phi / 2.0) return True, t, u, v return False, 0.0, 0.0, 0.0 diff --git a/tests/test_rrt_star_reeds_shepp.py b/tests/test_rrt_star_reeds_shepp.py index cb6b586b33..20d4916f96 100644 --- a/tests/test_rrt_star_reeds_shepp.py +++ b/tests/test_rrt_star_reeds_shepp.py @@ -6,6 +6,43 @@ def test1(): m.show_animation = False m.main(max_iter=5) +obstacleList = [ + (5, 5, 1), + (4, 6, 1), + (4, 8, 1), + (4, 10, 1), + (6, 5, 1), + (7, 5, 1), + (8, 6, 1), + (8, 8, 1), + (8, 10, 1) +] # [x,y,size(radius)] + +start = [0.0, 0.0, m.np.deg2rad(0.0)] +goal = [6.0, 7.0, m.np.deg2rad(90.0)] + +def test2(): + step_size = 0.2 + rrt_star_reeds_shepp = m.RRTStarReedsShepp(start, goal, + obstacleList, [-2.0, 15.0], + max_iter=100, step_size=step_size) + rrt_star_reeds_shepp.set_random_seed(seed=8) + path = rrt_star_reeds_shepp.planning(animation=False) + for i in range(len(path)-1): + # + 0.00000000000001 for acceptable errors arising from the planning process + assert m.math.dist(path[i][0:2], path[i+1][0:2]) < step_size + 0.00000000000001 + +def test3(): + step_size = 20 + rrt_star_reeds_shepp = m.RRTStarReedsShepp(start, goal, + obstacleList, [-2.0, 15.0], + max_iter=100, step_size=step_size) + rrt_star_reeds_shepp.set_random_seed(seed=8) + path = rrt_star_reeds_shepp.planning(animation=False) + for i in range(len(path)-1): + # + 0.00000000000001 for acceptable errors arising from the planning process + assert m.math.dist(path[i][0:2], path[i+1][0:2]) < step_size + 0.00000000000001 + if __name__ == '__main__': conftest.run_this_test(__file__) From 033e301498a12a039f95a990fa9b831c5015eaf3 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 2 May 2023 20:54:45 +0900 Subject: [PATCH 075/414] Cleanup cvxpy related codes (#823) * add normal_vector_estimation_main.rst * add normal_vector_estimation_main.rst * cleanup cvxpy related codes * cleanup cvxpy related codes --- .../rocket_powered_landing.py | 17 +++++++++-------- .../model_predictive_speed_and_steer_control.py | 6 ++++-- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py index 37dca15b98..239f3629c1 100644 --- a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py +++ b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py @@ -12,13 +12,12 @@ - EmbersArc/SuccessiveConvexificationFreeFinalTime: Implementation of "Successive Convexification for 6-DoF Mars Rocket Powered Landing with Free-Final-Time" https://github.com/EmbersArc/SuccessiveConvexificationFreeFinalTime """ - +import warnings from time import time import numpy as np from scipy.integrate import odeint import cvxpy import matplotlib.pyplot as plt -from mpl_toolkits import mplot3d # Trajectory points K = 50 @@ -123,7 +122,7 @@ def set_random_initial_state(self, rng): rng.uniform(-20, 20))) def f_func(self, x, u): - m, rx, ry, rz, vx, vy, vz, q0, q1, q2, q3, wx, wy, wz = x[0], x[1], x[ + m, _, _, _, vx, vy, vz, q0, q1, q2, q3, wx, wy, wz = x[0], x[1], x[ 2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13] ux, uy, uz = u[0], u[1], u[2] @@ -148,7 +147,7 @@ def f_func(self, x, u): ]) def A_func(self, x, u): - m, rx, ry, rz, vx, vy, vz, q0, q1, q2, q3, wx, wy, wz = x[0], x[1], x[ + m, _, _, _, _, _, _, q0, q1, q2, q3, wx, wy, wz = x[0], x[1], x[ 2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13] ux, uy, uz = u[0], u[1], u[2] @@ -176,7 +175,7 @@ def A_func(self, x, u): [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]) def B_func(self, x, u): - m, rx, ry, rz, vx, vy, vz, q0, q1, q2, q3, wx, wy, wz = x[0], x[1], x[ + m, _, _, _, _, _, _, q0, q1, q2, q3, _, _, _ = x[0], x[1], x[ 2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13] ux, uy, uz = u[0], u[1], u[2] @@ -534,7 +533,9 @@ def get_variable(self, name): def solve(self, **kwargs): error = False try: - self.prob.solve(verbose=verbose_solver, + with warnings.catch_warnings(): # For User warning from solver + warnings.simplefilter('ignore') + self.prob.solve(verbose=verbose_solver, solver=solver) except cvxpy.SolverError: error = True @@ -569,10 +570,10 @@ def axis3d_equal(X, Y, Z, ax): def plot_animation(X, U): # pragma: no cover fig = plt.figure() - ax = fig.gca(projection='3d') + ax = fig.add_subplot(projection='3d') # for stopping simulation with the esc key. fig.canvas.mpl_connect('key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + lambda event: [exit(0) if event.key == 'escape' else None]) for k in range(K): plt.cla() diff --git a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py index 59e69aa999..3015313198 100644 --- a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py +++ b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py @@ -225,8 +225,9 @@ def predict_motion(x0, oa, od, xref): def iterative_linear_mpc_control(xref, x0, dref, oa, od): """ - MPC contorl with updating operational point iteraitvely + MPC control with updating operational point iteratively """ + ox, oy, oyaw, ov = None, None, None, None if oa is None or od is None: oa = [0.0] * T @@ -406,10 +407,11 @@ def do_simulation(cx, cy, cyaw, ck, sp, dl, initial_state): oa, odelta, ox, oy, oyaw, ov = iterative_linear_mpc_control( xref, x0, dref, oa, odelta) + di, ai = 0.0, 0.0 if odelta is not None: di, ai = odelta[0], oa[0] + state = update_state(state, ai, di) - state = update_state(state, ai, di) time = time + DT x.append(state.x) From b877a9d5ca15b794a72221c33d52d13bf3bf8434 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 14 May 2023 17:15:10 +0900 Subject: [PATCH 076/414] Bump ruff from 0.0.263 to 0.0.265 in /requirements (#826) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.263 to 0.0.265. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.263...v0.0.265) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 501723248f..4522f6c7ca 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.3.1 # For unit test pytest-xdist == 3.2.1 # For unit test mypy == 1.2.0 # For unit test -ruff == 0.0.263 # For unit test +ruff == 0.0.265 # For unit test From 18a7d1b75871d9f12fe5fd20a93f5c50f059e614 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 May 2023 07:27:24 +0900 Subject: [PATCH 077/414] Bump mypy from 1.2.0 to 1.3.0 in /requirements (#835) Bumps [mypy](https://github.com/python/mypy) from 1.2.0 to 1.3.0. - [Commits](https://github.com/python/mypy/compare/v1.2.0...v1.3.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4522f6c7ca..30c5330b90 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.1 cvxpy == 1.3.1 pytest == 7.3.1 # For unit test pytest-xdist == 3.2.1 # For unit test -mypy == 1.2.0 # For unit test +mypy == 1.3.0 # For unit test ruff == 0.0.265 # For unit test From 57943ae6f598ca14a0aadfe706bd7762c94ff36e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 May 2023 20:08:06 +0900 Subject: [PATCH 078/414] Bump pytest-xdist from 3.2.1 to 3.3.0 in /requirements (#837) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.2.1 to 3.3.0. - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.2.1...v3.3.0) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 30c5330b90..616e3c3fc0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 pytest == 7.3.1 # For unit test -pytest-xdist == 3.2.1 # For unit test +pytest-xdist == 3.3.0 # For unit test mypy == 1.3.0 # For unit test ruff == 0.0.265 # For unit test From 29e0bab4e7ab380624c4c6f7fe068e67a5c71718 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 May 2023 20:39:26 +0900 Subject: [PATCH 079/414] Bump ruff from 0.0.265 to 0.0.267 in /requirements (#836) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.265 to 0.0.267. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.265...v0.0.267) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 616e3c3fc0..6efd6fcb98 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.3.1 # For unit test pytest-xdist == 3.3.0 # For unit test mypy == 1.3.0 # For unit test -ruff == 0.0.265 # For unit test +ruff == 0.0.267 # For unit test From dd6d046bf9b6458a8bcdd947045806af8c86e788 Mon Sep 17 00:00:00 2001 From: Erkam Kavak <70749779+erkamkavak@users.noreply.github.com> Date: Tue, 16 May 2023 15:42:18 +0300 Subject: [PATCH 080/414] fix added for checking if a neighbor is inside openList (#832) --- PathPlanning/HybridAStar/hybrid_a_star.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/HybridAStar/hybrid_a_star.py b/PathPlanning/HybridAStar/hybrid_a_star.py index b87fe706c2..03db0dc167 100644 --- a/PathPlanning/HybridAStar/hybrid_a_star.py +++ b/PathPlanning/HybridAStar/hybrid_a_star.py @@ -311,7 +311,7 @@ def hybrid_a_star_planning(start, goal, ox, oy, xy_resolution, yaw_resolution): neighbor_index = calc_index(neighbor, config) if neighbor_index in closedList: continue - if neighbor not in openList \ + if neighbor_index not in openList \ or openList[neighbor_index].cost > neighbor.cost: heapq.heappush( pq, (calc_cost(neighbor, h_dp, config), From 874ebff495b088e0aee48ad29e352548dee65e8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yangshen=E2=9A=A1Deng?= Date: Tue, 16 May 2023 20:43:57 +0800 Subject: [PATCH 081/414] fix: set rrt_star to find the shortest path (#834) * fix: set rrt_star to find the shortest path * fix: code style white space --- PathPlanning/RRTStar/rrt_star.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/PathPlanning/RRTStar/rrt_star.py b/PathPlanning/RRTStar/rrt_star.py index b2884fe21b..dcb1a066eb 100644 --- a/PathPlanning/RRTStar/rrt_star.py +++ b/PathPlanning/RRTStar/rrt_star.py @@ -163,9 +163,13 @@ def search_best_goal_node(self): if not safe_goal_inds: return None - min_cost = min([self.node_list[i].cost for i in safe_goal_inds]) - for i in safe_goal_inds: - if self.node_list[i].cost == min_cost: + safe_goal_costs = [self.node_list[i].cost + + self.calc_dist_to_goal(self.node_list[i].x, self.node_list[i].y) + for i in safe_goal_inds] + + min_cost = min(safe_goal_costs) + for i, cost in zip(safe_goal_inds, safe_goal_costs): + if cost == min_cost: return i return None From 7be69c13cce0f518d3ce5521b4bafcc56bce1445 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 May 2023 07:23:34 +0900 Subject: [PATCH 082/414] Bump pytest-xdist from 3.3.0 to 3.3.1 in /requirements (#838) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.3.0 to 3.3.1. - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.3.0...v3.3.1) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6efd6fcb98..389107f0bb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 pytest == 7.3.1 # For unit test -pytest-xdist == 3.3.0 # For unit test +pytest-xdist == 3.3.1 # For unit test mypy == 1.3.0 # For unit test ruff == 0.0.267 # For unit test From 390c1cdd9fce482f13280724d762c9f9000baaba Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 May 2023 12:42:52 +0900 Subject: [PATCH 083/414] Bump ruff from 0.0.267 to 0.0.269 in /requirements (#839) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.267 to 0.0.269. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.267...v0.0.269) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 389107f0bb..649b331e1d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.3.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.3.0 # For unit test -ruff == 0.0.267 # For unit test +ruff == 0.0.269 # For unit test From ca82a4b1dff20dba0c852f4e0ac41501cba6e9ab Mon Sep 17 00:00:00 2001 From: Faizan Alam <51821426+Faizan-Alam-1@users.noreply.github.com> Date: Sat, 27 May 2023 17:00:02 +0530 Subject: [PATCH 084/414] Add copy button in the documentation code snippets (#840) --- docs/conf.py | 1 + docs/doc_requirements.txt | 1 + 2 files changed, 2 insertions(+) diff --git a/docs/conf.py b/docs/conf.py index e7c64d07b2..0cbf3471f9 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -45,6 +45,7 @@ 'sphinx.ext.napoleon', 'sphinx.ext.imgconverter', 'IPython.sphinxext.ipython_console_highlighting', + 'sphinx_copybutton', ] # Add any paths that contain templates here, relative to this directory. diff --git a/docs/doc_requirements.txt b/docs/doc_requirements.txt index c01b596539..04c30e6037 100644 --- a/docs/doc_requirements.txt +++ b/docs/doc_requirements.txt @@ -2,3 +2,4 @@ sphinx == 4.3.2 # For sphinx documentation sphinx_rtd_theme == 1.0.0 IPython == 8.10.0 # For sphinx documentation sphinxcontrib-napoleon == 0.7 # For auto doc +sphinx-copybutton From 5ddf70615ea35c366199ef6837ea88eba94ba6c8 Mon Sep 17 00:00:00 2001 From: Faizan Alam <51821426+Faizan-Alam-1@users.noreply.github.com> Date: Sun, 28 May 2023 13:52:35 +0530 Subject: [PATCH 085/414] Add dark mode feature in documentation (#842) --- docs/conf.py | 3 ++- docs/doc_requirements.txt | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/conf.py b/docs/conf.py index 0cbf3471f9..df9b8fce22 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -46,6 +46,7 @@ 'sphinx.ext.imgconverter', 'IPython.sphinxext.ipython_console_highlighting', 'sphinx_copybutton', + 'sphinx_rtd_dark_mode', ] # Add any paths that contain templates here, relative to this directory. @@ -86,7 +87,7 @@ if on_rtd: html_theme = 'default' else: - html_theme = 'sphinx_rtd_theme' + html_theme = 'sphinx_rtd_light_them' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/docs/doc_requirements.txt b/docs/doc_requirements.txt index 04c30e6037..a8cd2bde40 100644 --- a/docs/doc_requirements.txt +++ b/docs/doc_requirements.txt @@ -3,3 +3,4 @@ sphinx_rtd_theme == 1.0.0 IPython == 8.10.0 # For sphinx documentation sphinxcontrib-napoleon == 0.7 # For auto doc sphinx-copybutton +sphinx-rtd-dark-mode \ No newline at end of file From e4fe460e02f9f29ea2553e579e7599a652ca5207 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 May 2023 07:56:26 +0900 Subject: [PATCH 086/414] Bump ruff from 0.0.269 to 0.0.270 in /requirements (#844) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.269 to 0.0.270. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.269...v0.0.270) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 649b331e1d..4499e715a9 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.3.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.3.0 # For unit test -ruff == 0.0.269 # For unit test +ruff == 0.0.270 # For unit test From 6bade5000dca75b91cc9de94f797e5d558082855 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Jun 2023 20:46:56 +0900 Subject: [PATCH 087/414] Bump ruff from 0.0.270 to 0.0.272 in /requirements (#849) Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.270 to 0.0.272. - [Release notes](https://github.com/charliermarsh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.270...v0.0.272) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4499e715a9..93a1b8bba1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.3.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.3.0 # For unit test -ruff == 0.0.270 # For unit test +ruff == 0.0.272 # For unit test From 3be53ab0e0802e908544e274278ed0390ea98597 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Jun 2023 20:47:31 +0900 Subject: [PATCH 088/414] Bump pytest from 7.3.1 to 7.3.2 in /requirements (#850) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.3.1 to 7.3.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.3.1...7.3.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 93a1b8bba1..470180c1f7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.24.3 scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 -pytest == 7.3.1 # For unit test +pytest == 7.3.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.3.0 # For unit test ruff == 0.0.272 # For unit test From c06e4909c865cf3912cdee4610ab91afcd3b111c Mon Sep 17 00:00:00 2001 From: Yichao <111082392+YichaoDeng@users.noreply.github.com> Date: Mon, 19 Jun 2023 17:02:16 +0800 Subject: [PATCH 089/414] fix: [ValueError] setting an array element with a sequence in [fast_slam2] (#851) --- SLAM/FastSLAM2/fast_slam2.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SLAM/FastSLAM2/fast_slam2.py b/SLAM/FastSLAM2/fast_slam2.py index 7cd708df81..4c6c103325 100644 --- a/SLAM/FastSLAM2/fast_slam2.py +++ b/SLAM/FastSLAM2/fast_slam2.py @@ -405,8 +405,8 @@ def main(): for iz in range(len(z[:, 0])): landmark_id = int(z[2, iz]) - plt.plot([xEst[0], RFID[landmark_id, 0]], [ - xEst[1], RFID[landmark_id, 1]], "-k") + plt.plot([xEst[0][0], RFID[landmark_id, 0]], [ + xEst[1][0], RFID[landmark_id, 1]], "-k") for i in range(N_PARTICLE): plt.plot(particles[i].x, particles[i].y, ".r") From 94a8072b11fb2198b03ae193c4a3499d7a004a0f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jun 2023 07:01:39 +0900 Subject: [PATCH 090/414] Bump mypy from 1.3.0 to 1.4.1 in /requirements (#854) Bumps [mypy](https://github.com/python/mypy) from 1.3.0 to 1.4.1. - [Commits](https://github.com/python/mypy/compare/v1.3.0...v1.4.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 470180c1f7..bbd3764998 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.1 cvxpy == 1.3.1 pytest == 7.3.2 # For unit test pytest-xdist == 3.3.1 # For unit test -mypy == 1.3.0 # For unit test +mypy == 1.4.1 # For unit test ruff == 0.0.272 # For unit test From a0bb72e000bfcbc2442303c0bc39e4e6696f793f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jun 2023 07:20:25 +0900 Subject: [PATCH 091/414] Bump pytest from 7.3.2 to 7.4.0 in /requirements (#857) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.3.2 to 7.4.0. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.3.2...7.4.0) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bbd3764998..580a4ba731 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.24.3 scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 -pytest == 7.3.2 # For unit test +pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test ruff == 0.0.272 # For unit test From 81c75f75ab987645c733952bbf277d349fefcec2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jun 2023 13:25:12 +0900 Subject: [PATCH 092/414] Bump ruff from 0.0.272 to 0.0.275 in /requirements (#856) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.272 to 0.0.275. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.272...v0.0.275) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 580a4ba731..9db6898463 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.1 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.272 # For unit test +ruff == 0.0.275 # For unit test From d7fdcade2f0a86cbe263d31530667fadc9ec1e61 Mon Sep 17 00:00:00 2001 From: neriya shulman <45920392+neriyashul@users.noreply.github.com> Date: Fri, 30 Jun 2023 15:13:09 +0300 Subject: [PATCH 093/414] Fix broken links in README.md for ipynb files (#859) --- README.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index bfde2f9295..bc0198f78e 100644 --- a/README.md +++ b/README.md @@ -161,7 +161,9 @@ All animation gifs are stored here: [AtsushiSakai/PythonRoboticsGifs: Animation EKF pic -Documentation: [Notebook](https://github.com/AtsushiSakai/PythonRobotics/blob/master/Localization/extended_kalman_filter/extended_kalman_filter_localization.ipynb) +Ref: + +- [documentation](https://atsushisakai.github.io/PythonRobotics/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization.html) ## Particle filter localization @@ -532,7 +534,7 @@ Path tracking simulation with iterative linear model predictive speed and steeri Ref: -- [notebook](https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathTracking/model_predictive_speed_and_steer_control/Model_predictive_speed_and_steering_control.ipynb) +- [documentation](https://atsushisakai.github.io/PythonRobotics/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control.html) - [Real\-time Model Predictive Control \(MPC\), ACADO, Python \| Work\-is\-Playing](http://grauonline.de/wordpress/?page_id=3244) @@ -544,7 +546,7 @@ A motion planning and path tracking simulation with NMPC of C-GMRES Ref: -- [notebook](https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathTracking/cgmres_nmpc/cgmres_nmpc.ipynb) +- [documentation](https://atsushisakai.github.io/PythonRobotics/modules/path_tracking/cgmres_nmpc/cgmres_nmpc.html) # Arm Navigation @@ -584,7 +586,7 @@ This is a 3d trajectory generation simulation for a rocket powered landing. Ref: -- [notebook](https://github.com/AtsushiSakai/PythonRobotics/blob/master/AerialNavigation/rocket_powered_landing/rocket_powered_landing.ipynb) +- [documentation](https://atsushisakai.github.io/PythonRobotics/modules/aerial_navigation/rocket_powered_landing/rocket_powered_landing.html) # Bipedal From 67edaf8b026bee1c502b09d92249c10ce760e22a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 1 Jul 2023 08:29:34 +0900 Subject: [PATCH 094/414] Enhance rectangle fitting docs (#848) * enhance rectangle fitting docs * enhance rectangle fitting docs * Update rectangle_fitting_main.rst * Update rectangle_fitting_main.rst * Update rectangle_fitting_main.rst * Update rectangle_fitting_main.rst * Update rectangle_fitting_main.rst * Update rectangle_fitting_main.rst * Update rectangle_fitting_main.rst * Update rectangle_fitting_main.rst * enhance rectangle fitting docs --- .../rectangle_fitting/rectangle_fitting.py | 108 +++++++++++------- .../rectangle_fitting_main.rst | 62 ++++++++++ .../modules/slam/FastSLAM1/FastSLAM1_main.rst | 2 +- 3 files changed, 128 insertions(+), 44 deletions(-) diff --git a/Mapping/rectangle_fitting/rectangle_fitting.py b/Mapping/rectangle_fitting/rectangle_fitting.py index f54ada1e3a..177f078871 100644 --- a/Mapping/rectangle_fitting/rectangle_fitting.py +++ b/Mapping/rectangle_fitting/rectangle_fitting.py @@ -30,6 +30,11 @@ class LShapeFitting: + """ + LShapeFitting class. You can use this class by initializing the class and + changing the parameters, and then calling the fitting method. + + """ class Criteria(Enum): AREA = 1 @@ -37,15 +42,35 @@ class Criteria(Enum): VARIANCE = 3 def __init__(self): - # Parameters + """ + Default parameter settings + """ + #: Fitting criteria parameter self.criteria = self.Criteria.VARIANCE - self.min_dist_of_closeness_criteria = 0.01 # [m] - self.d_theta_deg_for_search = 1.0 # [deg] - self.R0 = 3.0 # [m] range segmentation param - self.Rd = 0.001 # [m] range segmentation param + #: Minimum distance for closeness criteria parameter [m] + self.min_dist_of_closeness_criteria = 0.01 + #: Angle difference parameter [deg] + self.d_theta_deg_for_search = 1.0 + #: Range segmentation parameter [m] + self.R0 = 3.0 + #: Range segmentation parameter [m] + self.Rd = 0.001 def fitting(self, ox, oy): + """ + Fitting L-shape model to object points + + Parameters + ---------- + ox : x positions of range points from an object + oy : y positions of range points from an object + + Returns + ------- + rects: Fitting rectangles + id_sets: id sets of each cluster + """ # step1: Adaptive Range Segmentation id_sets = self._adoptive_range_segmentation(ox, oy) @@ -60,56 +85,53 @@ def fitting(self, ox, oy): @staticmethod def _calc_area_criterion(c1, c2): - c1_max = max(c1) - c2_max = max(c2) - c1_min = min(c1) - c2_min = min(c2) - + c1_max, c1_min, c2_max, c2_min = LShapeFitting._find_min_max(c1, c2) alpha = -(c1_max - c1_min) * (c2_max - c2_min) - return alpha def _calc_closeness_criterion(self, c1, c2): - c1_max = max(c1) - c2_max = max(c2) - c1_min = min(c1) - c2_min = min(c2) + c1_max, c1_min, c2_max, c2_min = LShapeFitting._find_min_max(c1, c2) # Vectorization - D1 = np.minimum(c1_max - c1, c1 - c1_min) - D2 = np.minimum(c2_max - c2, c2 - c2_min) - d = np.maximum(np.minimum(D1, D2), self.min_dist_of_closeness_criteria) + d1 = np.minimum(c1_max - c1, c1 - c1_min) + d2 = np.minimum(c2_max - c2, c2 - c2_min) + d = np.maximum(np.minimum(d1, d2), self.min_dist_of_closeness_criteria) beta = (1.0 / d).sum() return beta @staticmethod def _calc_variance_criterion(c1, c2): - c1_max = max(c1) - c2_max = max(c2) - c1_min = min(c1) - c2_min = min(c2) + c1_max, c1_min, c2_max, c2_min = LShapeFitting._find_min_max(c1, c2) # Vectorization - D1 = np.minimum(c1_max - c1, c1 - c1_min) - D2 = np.minimum(c2_max - c2, c2 - c2_min) - E1 = D1[D1 < D2] - E2 = D2[D1 >= D2] - V1 = - np.var(E1) if len(E1) > 0 else 0. - V2 = - np.var(E2) if len(E2) > 0 else 0. - gamma = V1 + V2 + d1 = np.minimum(c1_max - c1, c1 - c1_min) + d2 = np.minimum(c2_max - c2, c2 - c2_min) + e1 = d1[d1 < d2] + e2 = d2[d1 >= d2] + v1 = - np.var(e1) if len(e1) > 0 else 0. + v2 = - np.var(e2) if len(e2) > 0 else 0. + gamma = v1 + v2 return gamma + @staticmethod + def _find_min_max(c1, c2): + c1_max = max(c1) + c2_max = max(c2) + c1_min = min(c1) + c2_min = min(c2) + return c1_max, c1_min, c2_max, c2_min + def _rectangle_search(self, x, y): - X = np.array([x, y]).T + xy = np.array([x, y]).T d_theta = np.deg2rad(self.d_theta_deg_for_search) min_cost = (-float('inf'), None) for theta in np.arange(0.0, np.pi / 2.0 - d_theta, d_theta): - c = X @ rot_mat_2d(theta) + c = xy @ rot_mat_2d(theta) c1 = c[:, 0] c2 = c[:, 1] @@ -129,8 +151,8 @@ def _rectangle_search(self, x, y): sin_s = np.sin(min_cost[1]) cos_s = np.cos(min_cost[1]) - c1_s = X @ np.array([cos_s, sin_s]).T - c2_s = X @ np.array([-sin_s, cos_s]).T + c1_s = xy @ np.array([cos_s, sin_s]).T + c2_s = xy @ np.array([-sin_s, cos_s]).T rect = RectangleData() rect.a[0] = cos_s @@ -151,28 +173,28 @@ def _rectangle_search(self, x, y): def _adoptive_range_segmentation(self, ox, oy): # Setup initial cluster - S = [] + segment_list = [] for i, _ in enumerate(ox): - C = set() - R = self.R0 + self.Rd * np.linalg.norm([ox[i], oy[i]]) + c = set() + r = self.R0 + self.Rd * np.linalg.norm([ox[i], oy[i]]) for j, _ in enumerate(ox): d = np.hypot(ox[i] - ox[j], oy[i] - oy[j]) - if d <= R: - C.add(j) - S.append(C) + if d <= r: + c.add(j) + segment_list.append(c) # Merge cluster while True: no_change = True - for (c1, c2) in list(itertools.permutations(range(len(S)), 2)): - if S[c1] & S[c2]: - S[c1] = (S[c1] | S.pop(c2)) + for (c1, c2) in list(itertools.permutations(range(len(segment_list)), 2)): + if segment_list[c1] & segment_list[c2]: + segment_list[c1] = (segment_list[c1] | segment_list.pop(c2)) no_change = False break if no_change: break - return S + return segment_list class RectangleData: diff --git a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst b/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst index c0949ac4c3..50a50141b2 100644 --- a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst +++ b/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst @@ -5,3 +5,65 @@ This is an object shape recognition using rectangle fitting. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/rectangle_fitting/animation.gif +This example code is based on this paper algorithm: + +- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ + +The algorithm consists of 2 steps as below. + +Step1: Adaptive range segmentation +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In the first step, all range data points are segmented into some clusters. + +We calculate the distance between each range data and the nearest range data, and if this distance is below a certain threshold, it is judged to be in the same cluster. +This distance threshold is determined in proportion to the distance from the sensor. +This is taking advantage of the general model of distance sensors, which tends to have sparser data distribution as the distance from the sensor increases. + +The threshold range is calculated by: + +.. math:: r_{th} = R_0 + R_d * r_{origin} + +where + +- :math:`r_{th}`: Threashold range +- :math:`R_0, R_d`: Constant parameters +- :math:`r_{origin}`: Distance from the sensor for a range data. + +Step2: Rectangle search +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In the second step, for each cluster calculated in the previous step, rectangular fittings will be applied. +In this rectangular fitting, each cluster's distance data is rotated at certain angle intervals. +It is evaluated by one of the three evaluation functions below, then best angle parameter one is selected as the rectangle shape. + +1. Rectangle Area Minimization criteria +========================================= + +This evaluation function calculates the area of the smallest rectangle that includes all the points, derived from the difference between the maximum and minimum values on the x-y axis for all distance data points. +This allows for fitting a rectangle in a direction that encompasses as much of the smallest rectangular shape as possible. + + +2. Closeness criteria +====================== + +This evaluation function uses the distances between the top and bottom vertices on the right side of the rectangle and each point in the distance data as evaluation values. +If there are points on the rectangle edges, this evaluation value decreases. + +3. Variance criteria +======================= + +This evaluation function uses the squreed distances between the edges of the rectangle (horizontal and vertical) and each point. +Calculating the squared error is the same as calculating the variance. +The smaller this variance, the more it signifies that the points fit within the rectangle. + +API +~~~~~~ + +.. autoclass:: Mapping.rectangle_fitting.rectangle_fitting.LShapeFitting + :members: + +References +~~~~~~~~~~ + +- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_main.rst b/docs/modules/slam/FastSLAM1/FastSLAM1_main.rst index f19527c453..a2aa521216 100644 --- a/docs/modules/slam/FastSLAM1/FastSLAM1_main.rst +++ b/docs/modules/slam/FastSLAM1/FastSLAM1_main.rst @@ -65,7 +65,7 @@ represent the initial uncertainty. At each time step we do: The following equations and code snippets we can see how the particles distribution evolves in case we provide only the control :math:`(v,w)`, -which are the linear and angular velocity repsectively. +which are the linear and angular velocity respectively. :math:`\begin{equation*} F= \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix} \end{equation*}` From 4d714706312735ce46a118bb6782c2aef0ba333f Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 1 Jul 2023 15:30:32 +0900 Subject: [PATCH 095/414] upgrade numpy to 1.25.0 and fix bugs (#861) --- .../drone_3d_trajectory_following.py | 13 ++++--- .../two_joint_arm_to_point_control.py | 11 +++--- .../inverted_pendulum_lqr_control.py | 6 +-- .../inverted_pendulum_mpc_control.py | 6 +-- .../histogram_filter/histogram_filter.py | 5 ++- .../unscented_kalman_filter.py | 4 +- Mapping/circle_fitting/circle_fitting.py | 6 +-- .../batch_informed_rrtstar.py | 6 +-- .../InformedRRTStar/informed_rrt_star.py | 4 +- .../lookup_table_generator.py | 2 +- .../motion_model.py | 39 +++++++++++-------- .../trajectory_generator.py | 6 +-- .../state_lattice_planner.py | 2 +- SLAM/FastSLAM1/fast_slam1.py | 2 +- SLAM/FastSLAM2/fast_slam2.py | 2 +- SLAM/GraphBasedSLAM/graph_based_slam.py | 6 +-- requirements/requirements.txt | 2 +- tests/test_codestyle.py | 2 +- 18 files changed, 66 insertions(+), 58 deletions(-) diff --git a/AerialNavigation/drone_3d_trajectory_following/drone_3d_trajectory_following.py b/AerialNavigation/drone_3d_trajectory_following/drone_3d_trajectory_following.py index e00b3fff48..029e82be62 100644 --- a/AerialNavigation/drone_3d_trajectory_following/drone_3d_trajectory_following.py +++ b/AerialNavigation/drone_3d_trajectory_following/drone_3d_trajectory_following.py @@ -8,7 +8,6 @@ import numpy as np from Quadrotor import Quadrotor from TrajectoryGenerator import TrajectoryGenerator -from mpl_toolkits.mplot3d import Axes3D show_animation = True @@ -128,7 +127,7 @@ def calculate_position(c, t): Calculates a position given a set of quintic coefficients and a time. Args - c: List of coefficients generated by a quintic polynomial + c: List of coefficients generated by a quintic polynomial trajectory generator. t: Time at which to calculate the position @@ -143,7 +142,7 @@ def calculate_velocity(c, t): Calculates a velocity given a set of quintic coefficients and a time. Args - c: List of coefficients generated by a quintic polynomial + c: List of coefficients generated by a quintic polynomial trajectory generator. t: Time at which to calculate the velocity @@ -158,7 +157,7 @@ def calculate_acceleration(c, t): Calculates an acceleration given a set of quintic coefficients and a time. Args - c: List of coefficients generated by a quintic polynomial + c: List of coefficients generated by a quintic polynomial trajectory generator. t: Time at which to calculate the acceleration @@ -168,7 +167,7 @@ def calculate_acceleration(c, t): return 20 * c[0] * t**3 + 12 * c[1] * t**2 + 6 * c[2] * t + 2 * c[3] -def rotation_matrix(roll, pitch, yaw): +def rotation_matrix(roll_array, pitch_array, yaw): """ Calculates the ZYX rotation matrix. @@ -180,6 +179,8 @@ def rotation_matrix(roll, pitch, yaw): Returns 3x3 rotation matrix as NumPy array """ + roll = roll_array[0] + pitch = pitch_array[0] return np.array( [[cos(yaw) * cos(pitch), -sin(yaw) * cos(roll) + cos(yaw) * sin(pitch) * sin(roll), sin(yaw) * sin(roll) + cos(yaw) * sin(pitch) * cos(roll)], [sin(yaw) * cos(pitch), cos(yaw) * cos(roll) + sin(yaw) * sin(pitch) * @@ -190,7 +191,7 @@ def rotation_matrix(roll, pitch, yaw): def main(): """ - Calculates the x, y, z coefficients for the four segments + Calculates the x, y, z coefficients for the four segments of the trajectory """ x_coeffs = [[], [], [], []] diff --git a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py index 012a7f72f1..66d0ebeb23 100644 --- a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py +++ b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py @@ -14,9 +14,10 @@ import matplotlib.pyplot as plt import numpy as np +import math -# Similation parameters +# Simulation parameters Kp = 15 dt = 0.01 @@ -50,15 +51,15 @@ def two_joint_arm(GOAL_TH=0.0, theta1=0.0, theta2=0.0): else: theta2_goal = np.arccos( (x**2 + y**2 - l1**2 - l2**2) / (2 * l1 * l2)) - tmp = np.math.atan2(l2 * np.sin(theta2_goal), + tmp = math.atan2(l2 * np.sin(theta2_goal), (l1 + l2 * np.cos(theta2_goal))) - theta1_goal = np.math.atan2(y, x) - tmp + theta1_goal = math.atan2(y, x) - tmp if theta1_goal < 0: theta2_goal = -theta2_goal - tmp = np.math.atan2(l2 * np.sin(theta2_goal), + tmp = math.atan2(l2 * np.sin(theta2_goal), (l1 + l2 * np.cos(theta2_goal))) - theta1_goal = np.math.atan2(y, x) - tmp + theta1_goal = math.atan2(y, x) - tmp theta1 = theta1 + Kp * ang_diff(theta1_goal, theta1) * dt theta2 = theta2 + Kp * ang_diff(theta2_goal, theta2) * dt diff --git a/Control/inverted_pendulum/inverted_pendulum_lqr_control.py b/Control/inverted_pendulum/inverted_pendulum_lqr_control.py index fb68c91c45..c4380530b8 100644 --- a/Control/inverted_pendulum/inverted_pendulum_lqr_control.py +++ b/Control/inverted_pendulum/inverted_pendulum_lqr_control.py @@ -50,14 +50,14 @@ def main(): if show_animation: plt.clf() - px = float(x[0]) - theta = float(x[2]) + px = float(x[0, 0]) + theta = float(x[2, 0]) plot_cart(px, theta) plt.xlim([-5.0, 2.0]) plt.pause(0.001) print("Finish") - print(f"x={float(x[0]):.2f} [m] , theta={math.degrees(x[2]):.2f} [deg]") + print(f"x={float(x[0, 0]):.2f} [m] , theta={math.degrees(x[2, 0]):.2f} [deg]") if show_animation: plt.show() diff --git a/Control/inverted_pendulum/inverted_pendulum_mpc_control.py b/Control/inverted_pendulum/inverted_pendulum_mpc_control.py index 6b966b13b4..9a5fa2ab41 100644 --- a/Control/inverted_pendulum/inverted_pendulum_mpc_control.py +++ b/Control/inverted_pendulum/inverted_pendulum_mpc_control.py @@ -55,14 +55,14 @@ def main(): if show_animation: plt.clf() - px = float(x[0]) - theta = float(x[2]) + px = float(x[0, 0]) + theta = float(x[2, 0]) plot_cart(px, theta) plt.xlim([-5.0, 2.0]) plt.pause(0.001) print("Finish") - print(f"x={float(x[0]):.2f} [m] , theta={math.degrees(x[2]):.2f} [deg]") + print(f"x={float(x[0, 0]):.2f} [m] , theta={math.degrees(x[2, 0]):.2f} [deg]") if show_animation: plt.show() diff --git a/Localization/histogram_filter/histogram_filter.py b/Localization/histogram_filter/histogram_filter.py index a4aeb419cf..17cfc2e14c 100644 --- a/Localization/histogram_filter/histogram_filter.py +++ b/Localization/histogram_filter/histogram_filter.py @@ -15,6 +15,7 @@ import math import matplotlib.pyplot as plt +import matplotlib as mpl import numpy as np from scipy.ndimage import gaussian_filter from scipy.stats import norm @@ -114,7 +115,7 @@ def motion_model(x, u): def draw_heat_map(data, mx, my): max_value = max([max(i_data) for i_data in data]) plt.grid(False) - plt.pcolor(mx, my, data, vmax=max_value, cmap=plt.cm.get_cmap("Blues")) + plt.pcolor(mx, my, data, vmax=max_value, cmap=mpl.colormaps["Blues"]) plt.axis("equal") @@ -194,7 +195,7 @@ def motion_update(grid_map, u, yaw): y_shift = grid_map.dy // grid_map.xy_resolution if abs(x_shift) >= 1.0 or abs(y_shift) >= 1.0: # map should be shifted - grid_map = map_shift(grid_map, int(x_shift), int(y_shift)) + grid_map = map_shift(grid_map, int(x_shift[0]), int(y_shift[0])) grid_map.dx -= x_shift * grid_map.xy_resolution grid_map.dy -= y_shift * grid_map.xy_resolution diff --git a/Localization/unscented_kalman_filter/unscented_kalman_filter.py b/Localization/unscented_kalman_filter/unscented_kalman_filter.py index dbcdeef015..4af748ec71 100644 --- a/Localization/unscented_kalman_filter/unscented_kalman_filter.py +++ b/Localization/unscented_kalman_filter/unscented_kalman_filter.py @@ -69,8 +69,8 @@ def motion_model(x, u): [0, 0, 1.0, 0], [0, 0, 0, 0]]) - B = np.array([[DT * math.cos(x[2]), 0], - [DT * math.sin(x[2]), 0], + B = np.array([[DT * math.cos(x[2, 0]), 0], + [DT * math.sin(x[2, 0]), 0], [0.0, DT], [1.0, 0.0]]) diff --git a/Mapping/circle_fitting/circle_fitting.py b/Mapping/circle_fitting/circle_fitting.py index c331d56796..2eba550127 100644 --- a/Mapping/circle_fitting/circle_fitting.py +++ b/Mapping/circle_fitting/circle_fitting.py @@ -40,9 +40,9 @@ def circle_fitting(x, y): T = np.linalg.inv(F).dot(G) - cxe = float(T[0] / -2) - cye = float(T[1] / -2) - re = math.sqrt(cxe**2 + cye**2 - T[2]) + cxe = float(T[0, 0] / -2) + cye = float(T[1, 0] / -2) + re = math.sqrt(cxe**2 + cye**2 - T[2, 0]) error = sum([np.hypot(cxe - ix, cye - iy) - re for (ix, iy) in zip(x, y)]) diff --git a/PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py b/PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py index b5eabbb39b..92c3a58761 100644 --- a/PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py +++ b/PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py @@ -23,7 +23,7 @@ show_animation = True -class RTree(object): +class RTree: # Class to represent the explicit tree created # while sampling through the state space @@ -132,7 +132,7 @@ def node_id_to_real_world_coord(self, nid): self.node_id_to_grid_coord(nid)) -class BITStar(object): +class BITStar: def __init__(self, start, goal, obstacleList, randArea, eta=2.0, @@ -189,7 +189,7 @@ def setup_planning(self): [(self.start[1] + self.goal[1]) / 2.0], [0]]) a1 = np.array([[(self.goal[0] - self.start[0]) / cMin], [(self.goal[1] - self.start[1]) / cMin], [0]]) - eTheta = math.atan2(a1[1], a1[0]) + eTheta = math.atan2(a1[1, 0], a1[0, 0]) # first column of identity matrix transposed id1_t = np.array([1.0, 0.0, 0.0]).reshape(1, 3) M = np.dot(a1, id1_t) diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index 4f0ec31988..b6f9d234dd 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -58,7 +58,7 @@ def informed_rrt_star_search(self, animation=True): a1 = np.array([[(self.goal.x - self.start.x) / c_min], [(self.goal.y - self.start.y) / c_min], [0]]) - e_theta = math.atan2(a1[1], a1[0]) + e_theta = math.atan2(a1[1, 0], a1[0, 0]) # first column of identity matrix transposed id1_t = np.array([1.0, 0.0, 0.0]).reshape(1, 3) m = a1 @ id1_t @@ -136,7 +136,7 @@ def choose_parent(self, new_node, near_inds): def find_near_nodes(self, new_node): n_node = len(self.node_list) - r = 50.0 * math.sqrt((math.log(n_node) / n_node)) + r = 50.0 * math.sqrt(math.log(n_node) / n_node) d_list = [(node.x - new_node.x) ** 2 + (node.y - new_node.y) ** 2 for node in self.node_list] near_inds = [d_list.index(i) for i in d_list if i <= r ** 2] diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py index 6cb226adef..4c3b32f280 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/lookup_table_generator.py @@ -81,7 +81,7 @@ def generate_lookup_table(): if x is not None: print("find good path") lookup_table.append( - [x[-1], y[-1], yaw[-1], float(p[0]), float(p[1]), float(p[2])]) + [x[-1], y[-1], yaw[-1], float(p[0, 0]), float(p[1, 0]), float(p[2, 0])]) print("finish lookup table generation") diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py index f6c78d3bc1..531bf91ef5 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py @@ -1,10 +1,10 @@ import math import numpy as np -import scipy.interpolate +from scipy.interpolate import interp1d # motion parameter L = 1.0 # wheel base -ds = 0.1 # course distanse +ds = 0.1 # course distance v = 10.0 / 3.6 # velocity [m/s] @@ -22,7 +22,6 @@ def pi_2_pi(angle): def update(state, v, delta, dt, L): - state.v = v state.x = state.x + state.v * math.cos(state.yaw) * dt state.y = state.y + state.v * math.sin(state.yaw) * dt @@ -33,18 +32,20 @@ def update(state, v, delta, dt, L): def generate_trajectory(s, km, kf, k0): - n = s / ds time = s / v # [s] - - if isinstance(time, type(np.array([]))): time = time[0] - if isinstance(km, type(np.array([]))): km = km[0] - if isinstance(kf, type(np.array([]))): kf = kf[0] - + + if isinstance(time, type(np.array([]))): + time = time[0] + if isinstance(km, type(np.array([]))): + km = km[0] + if isinstance(kf, type(np.array([]))): + kf = kf[0] + tk = np.array([0.0, time / 2.0, time]) kk = np.array([k0, km, kf]) t = np.arange(0.0, time, time / n) - fkp = scipy.interpolate.interp1d(tk, kk, kind="quadratic") + fkp = interp1d(tk, kk, kind="quadratic") kp = [fkp(ti) for ti in t] dt = float(time / n) @@ -64,18 +65,22 @@ def generate_trajectory(s, km, kf, k0): def generate_last_state(s, km, kf, k0): - n = s / ds time = s / v # [s] - - if isinstance(time, type(np.array([]))): time = time[0] - if isinstance(km, type(np.array([]))): km = km[0] - if isinstance(kf, type(np.array([]))): kf = kf[0] - + + if isinstance(n, type(np.array([]))): + n = n[0] + if isinstance(time, type(np.array([]))): + time = time[0] + if isinstance(km, type(np.array([]))): + km = km[0] + if isinstance(kf, type(np.array([]))): + kf = kf[0] + tk = np.array([0.0, time / 2.0, time]) kk = np.array([k0, km, kf]) t = np.arange(0.0, time, time / n) - fkp = scipy.interpolate.interp1d(tk, kk, kind="quadratic") + fkp = interp1d(tk, kk, kind="quadratic") kp = [fkp(ti) for ti in t] dt = time / n diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py index a44e1ac956..97c0ad8b80 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py @@ -106,7 +106,7 @@ def show_trajectory(target, xc, yc): # pragma: no cover def optimize_trajectory(target, k0, p): for i in range(max_iter): - xc, yc, yawc = motion_model.generate_trajectory(p[0], p[1], p[2], k0) + xc, yc, yawc = motion_model.generate_trajectory(p[0, 0], p[1, 0], p[2, 0], k0) dc = np.array(calc_diff(target, xc, yc, yawc)).reshape(3, 1) cost = np.linalg.norm(dc) @@ -135,7 +135,7 @@ def optimize_trajectory(target, k0, p): return xc, yc, yawc, p -def test_optimize_trajectory(): # pragma: no cover +def optimize_trajectory_demo(): # pragma: no cover # target = motion_model.State(x=5.0, y=2.0, yaw=np.deg2rad(00.0)) target = motion_model.State(x=5.0, y=2.0, yaw=np.deg2rad(90.0)) @@ -155,7 +155,7 @@ def test_optimize_trajectory(): # pragma: no cover def main(): # pragma: no cover print(__file__ + " start!!") - test_optimize_trajectory() + optimize_trajectory_demo() if __name__ == '__main__': diff --git a/PathPlanning/StateLatticePlanner/state_lattice_planner.py b/PathPlanning/StateLatticePlanner/state_lattice_planner.py index e26fb8288c..f4b1461b7a 100644 --- a/PathPlanning/StateLatticePlanner/state_lattice_planner.py +++ b/PathPlanning/StateLatticePlanner/state_lattice_planner.py @@ -70,7 +70,7 @@ def generate_path(target_states, k0): if x is not None: print("find good path") result.append( - [x[-1], y[-1], yaw[-1], float(p[0]), float(p[1]), float(p[2])]) + [x[-1], y[-1], yaw[-1], float(p[0, 0]), float(p[1, 0]), float(p[2, 0])]) print("finish path generation") return result diff --git a/SLAM/FastSLAM1/fast_slam1.py b/SLAM/FastSLAM1/fast_slam1.py index c4beaba257..7b89f52df4 100644 --- a/SLAM/FastSLAM1/fast_slam1.py +++ b/SLAM/FastSLAM1/fast_slam1.py @@ -194,7 +194,7 @@ def compute_weight(particle, z, Q_cov): print("singular") return 1.0 - num = math.exp(-0.5 * dx.T @ invS @ dx) + num = np.exp(-0.5 * (dx.T @ invS @ dx))[0, 0] den = 2.0 * math.pi * math.sqrt(np.linalg.det(Sf)) w = num / den diff --git a/SLAM/FastSLAM2/fast_slam2.py b/SLAM/FastSLAM2/fast_slam2.py index 4c6c103325..aa77aa956a 100644 --- a/SLAM/FastSLAM2/fast_slam2.py +++ b/SLAM/FastSLAM2/fast_slam2.py @@ -193,7 +193,7 @@ def compute_weight(particle, z, Q_cov): except np.linalg.linalg.LinAlgError: return 1.0 - num = math.exp(-0.5 * dz.T @ invS @ dz) + num = np.exp(-0.5 * dz.T @ invS @ dz)[0, 0] den = 2.0 * math.pi * math.sqrt(np.linalg.det(Sf)) w = num / den diff --git a/SLAM/GraphBasedSLAM/graph_based_slam.py b/SLAM/GraphBasedSLAM/graph_based_slam.py index 5510a41110..4d66ef6732 100644 --- a/SLAM/GraphBasedSLAM/graph_based_slam.py +++ b/SLAM/GraphBasedSLAM/graph_based_slam.py @@ -117,9 +117,9 @@ def calc_edges(x_list, z_list): for iz2 in range(len(z_list[t2][:, 0])): if z_list[t1][iz1, 3] == z_list[t2][iz2, 3]: d1 = z_list[t1][iz1, 0] - angle1, phi1 = z_list[t1][iz1, 1], z_list[t1][iz1, 2] + angle1, _ = z_list[t1][iz1, 1], z_list[t1][iz1, 2] d2 = z_list[t2][iz2, 0] - angle2, phi2 = z_list[t2][iz2, 1], z_list[t2][iz2, 2] + angle2, _ = z_list[t2][iz2, 1], z_list[t2][iz2, 2] edge = calc_edge(x1, y1, yaw1, x2, y2, yaw2, d1, angle1, d2, angle2, t1, t2) @@ -188,7 +188,7 @@ def graph_based_slam(x_init, hz): for i in range(nt): x_opt[0:3, i] += dx[i * 3:i * 3 + 3, 0] - diff = dx.T @ dx + diff = (dx.T @ dx)[0, 0] print("iteration: %d, diff: %f" % (itr + 1, diff)) if diff < 1.0e-5: break diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9db6898463..4f226facb1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.24.3 +numpy == 1.25.0 scipy == 1.10.1 matplotlib == 3.7.1 cvxpy == 1.3.1 diff --git a/tests/test_codestyle.py b/tests/test_codestyle.py index 2ad3816ea1..a7d11d270f 100644 --- a/tests/test_codestyle.py +++ b/tests/test_codestyle.py @@ -126,7 +126,7 @@ def test(): branch_commit = find_branch_point("origin/master") files = diff_files(branch_commit) print(files) - rc, errors = run_ruff(files, fix=False) + rc, errors = run_ruff(files, fix=True) if errors: print(errors) else: From e0b7ea5a0ace961fdada3bf524080208e36875ee Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 1 Jul 2023 18:40:03 +0900 Subject: [PATCH 096/414] upgrade scipy and cvxpy (#864) --- requirements/requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4f226facb1..30ccc4765d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.25.0 -scipy == 1.10.1 +scipy == 1.11.1 matplotlib == 3.7.1 -cvxpy == 1.3.1 +cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test From 5264c68542306e901fc0585219ade6f6f573d2a9 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 2 Jul 2023 22:12:25 +0900 Subject: [PATCH 097/414] Update dependabot.yml (#868) --- .github/dependabot.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 07f1bc80e0..7d7e6723cb 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -6,3 +6,8 @@ updates: interval: weekly time: "20:00" open-pull-requests-limit: 10 + +- package-ecosystem: 'github-actions' + directory: '/' + schedule: + interval: 'weekly' From c14bdda136d76193e8fdf2f0322579c0e0c71571 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 2 Jul 2023 22:25:55 +0900 Subject: [PATCH 098/414] Update dependabot.yml --- .github/dependabot.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 7d7e6723cb..c6fecb796f 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -7,7 +7,7 @@ updates: time: "20:00" open-pull-requests-limit: 10 -- package-ecosystem: 'github-actions' - directory: '/' +- package-ecosystem: github-actions + directory: "/" schedule: - interval: 'weekly' + interval: weekly From d5a0512568edbb12c7020e578d2b484ec48f8f3b Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 2 Jul 2023 22:27:45 +0900 Subject: [PATCH 099/414] Update dependabot.yml --- .github/dependabot.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index c6fecb796f..6ffedf6f3b 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,6 +8,6 @@ updates: open-pull-requests-limit: 10 - package-ecosystem: github-actions - directory: "/" - schedule: - interval: weekly + directory: "/" + schedule: + interval: weekly From 64c7624760a450a7163723b37a3f2dd7da09a4e0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 2 Jul 2023 23:12:22 +0900 Subject: [PATCH 100/414] Bump actions/checkout from 2 to 3 (#869) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- .github/workflows/codeql.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index a7b5aba5fe..a92d022e96 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -17,7 +17,7 @@ jobs: name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - run: git fetch --prune --unshallow - name: Setup python diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 6f0849a43d..f983cbbab3 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -19,7 +19,7 @@ jobs: python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - run: git fetch --prune --unshallow - name: Update bash diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index ed267045ca..5ca29fc632 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -19,7 +19,7 @@ jobs: python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - run: git fetch --prune --unshallow - name: Setup python diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 148260a835..ad173f14bf 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: # We must fetch at least the immediate parents so that if this is # a pull request then we can checkout the head. From 38639fd9c21999b1c45f0f2e3e0aa6e74d4c6ed8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 2 Jul 2023 23:12:44 +0900 Subject: [PATCH 101/414] Bump github/codeql-action from 1 to 2 (#870) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/v1...v2) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index ad173f14bf..d33545c90f 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -24,7 +24,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v1 + uses: github/codeql-action/init@v2 with: config-file: ./.github/codeql/codeql-config.yml # Override language selection by uncommenting this and choosing your languages @@ -34,7 +34,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@v1 + uses: github/codeql-action/autobuild@v2 # ℹ️ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -48,4 +48,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 + uses: github/codeql-action/analyze@v2 From 46d9809df367979c3d8bec8d44a63eb3e529fb23 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 2 Jul 2023 23:12:57 +0900 Subject: [PATCH 102/414] Bump actions/setup-python from 2 to 4 (#871) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- .github/workflows/gh-pages.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index a92d022e96..a152972753 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -21,7 +21,7 @@ jobs: - run: git fetch --prune --unshallow - name: Setup python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: Install dependencies diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index f983cbbab3..c8bfbbcb7e 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -26,7 +26,7 @@ jobs: run: brew install bash - name: Setup python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index 5ca29fc632..13fdcea8a1 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -23,7 +23,7 @@ jobs: - run: git fetch --prune --unshallow - name: Setup python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index bf46598633..d5af3b87c6 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Setup python - uses: actions/setup-python@v3 + uses: actions/setup-python@v4 - name: Checkout uses: actions/checkout@master with: From 49dd1a93f37a47a7e5c91376947b49282cceb3da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Jul 2023 07:35:39 +0900 Subject: [PATCH 103/414] Bump ruff from 0.0.275 to 0.0.276 in /requirements (#872) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.275 to 0.0.276. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.275...v0.0.276) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 30ccc4765d..2fab6f69c8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.275 # For unit test +ruff == 0.0.276 # For unit test From 0fc769421f66a6403f750781dc46534d84e7c424 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 6 Jul 2023 23:12:43 +0900 Subject: [PATCH 104/414] Adding NDT mapping script and doc (#867) * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc --- .../extended_kalman_filter.py | 28 +--- Mapping/grid_map_lib/grid_map_lib.py | 125 ++++++++++------ Mapping/ndt_map/ndt_map.py | 135 ++++++++++++++++++ .../grid_based_sweep_coverage_path_planner.py | 31 ++-- docs/modules/mapping/mapping_main.rst | 1 + .../mapping/ndt_map/grid_clustering.png | Bin 0 -> 33111 bytes docs/modules/mapping/ndt_map/ndt_map1.png | Bin 0 -> 23081 bytes docs/modules/mapping/ndt_map/ndt_map2.png | Bin 0 -> 21736 bytes docs/modules/mapping/ndt_map/ndt_map_main.rst | 53 +++++++ .../mapping/ndt_map/raw_observations.png | Bin 0 -> 18305 bytes tests/test_grid_map_lib.py | 11 ++ utils/plot.py | 71 ++++++++- 12 files changed, 372 insertions(+), 83 deletions(-) create mode 100644 Mapping/ndt_map/ndt_map.py create mode 100644 docs/modules/mapping/ndt_map/grid_clustering.png create mode 100644 docs/modules/mapping/ndt_map/ndt_map1.png create mode 100644 docs/modules/mapping/ndt_map/ndt_map2.png create mode 100644 docs/modules/mapping/ndt_map/ndt_map_main.rst create mode 100644 docs/modules/mapping/ndt_map/raw_observations.png diff --git a/Localization/extended_kalman_filter/extended_kalman_filter.py b/Localization/extended_kalman_filter/extended_kalman_filter.py index c2fe8e3a87..d9ece6c6f3 100644 --- a/Localization/extended_kalman_filter/extended_kalman_filter.py +++ b/Localization/extended_kalman_filter/extended_kalman_filter.py @@ -7,13 +7,14 @@ """ import sys import pathlib + sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import math import matplotlib.pyplot as plt import numpy as np -from utils.angle import rot_mat_2d +from utils.plot import plot_covariance_ellipse # Covariance for EKF simulation Q = np.diag([ @@ -135,29 +136,6 @@ def ekf_estimation(xEst, PEst, z, u): return xEst, PEst -def plot_covariance_ellipse(xEst, PEst): # pragma: no cover - Pxy = PEst[0:2, 0:2] - eigval, eigvec = np.linalg.eig(Pxy) - - if eigval[0] >= eigval[1]: - bigind = 0 - smallind = 1 - else: - bigind = 1 - smallind = 0 - - t = np.arange(0, 2 * math.pi + 0.1, 0.1) - a = math.sqrt(eigval[bigind]) - b = math.sqrt(eigval[smallind]) - x = [a * math.cos(it) for it in t] - y = [b * math.sin(it) for it in t] - angle = math.atan2(eigvec[1, bigind], eigvec[0, bigind]) - fx = rot_mat_2d(angle) @ (np.array([x, y])) - px = np.array(fx[0, :] + xEst[0, 0]).flatten() - py = np.array(fx[1, :] + xEst[1, 0]).flatten() - plt.plot(px, py, "--r") - - def main(): print(__file__ + " start!!") @@ -202,7 +180,7 @@ def main(): hxDR[1, :].flatten(), "-k") plt.plot(hxEst[0, :].flatten(), hxEst[1, :].flatten(), "-r") - plot_covariance_ellipse(xEst, PEst) + plot_covariance_ellipse(xEst[0, 0], xEst[1, 0], PEst) plt.axis("equal") plt.grid(True) plt.pause(0.001) diff --git a/Mapping/grid_map_lib/grid_map_lib.py b/Mapping/grid_map_lib/grid_map_lib.py index 85dd76e71d..d08d8ec5ba 100644 --- a/Mapping/grid_map_lib/grid_map_lib.py +++ b/Mapping/grid_map_lib/grid_map_lib.py @@ -5,22 +5,42 @@ author: Atsushi Sakai """ - +from functools import total_ordering import matplotlib.pyplot as plt import numpy as np +@total_ordering +class FloatGrid: + + def __init__(self, init_val=0.0): + self.data = init_val + + def get_float_data(self): + return self.data + + def __eq__(self, other): + if not isinstance(other, FloatGrid): + return NotImplemented + return self.get_float_data() == other.get_float_data() + + def __lt__(self, other): + if not isinstance(other, FloatGrid): + return NotImplemented + return self.get_float_data() < other.get_float_data() + + class GridMap: """ GridMap class """ def __init__(self, width, height, resolution, - center_x, center_y, init_val=0.0): + center_x, center_y, init_val=FloatGrid(0.0)): """__init__ :param width: number of grid for width - :param height: number of grid for heigt + :param height: number of grid for height :param resolution: grid resolution [m] :param center_x: center x position [m] :param center_y: center y position [m] @@ -35,8 +55,9 @@ def __init__(self, width, height, resolution, self.left_lower_x = self.center_x - self.width / 2.0 * self.resolution self.left_lower_y = self.center_y - self.height / 2.0 * self.resolution - self.ndata = self.width * self.height - self.data = [init_val] * self.ndata + self.n_data = self.width * self.height + self.data = [init_val] * self.n_data + self.data_type = type(init_val) def get_value_from_xy_index(self, x_ind, y_ind): """get_value_from_xy_index @@ -49,7 +70,7 @@ def get_value_from_xy_index(self, x_ind, y_ind): grid_ind = self.calc_grid_index_from_xy_index(x_ind, y_ind) - if 0 <= grid_ind < self.ndata: + if 0 <= grid_ind < self.n_data: return self.data[grid_ind] else: return None @@ -101,7 +122,7 @@ def set_value_from_xy_index(self, x_ind, y_ind, val): grid_ind = int(y_ind * self.width + x_ind) - if 0 <= grid_ind < self.ndata: + if 0 <= grid_ind < self.n_data and isinstance(val, self.data_type): self.data[grid_ind] = val return True # OK else: @@ -138,6 +159,27 @@ def calc_grid_index_from_xy_index(self, x_ind, y_ind): grid_ind = int(y_ind * self.width + x_ind) return grid_ind + def calc_xy_index_from_grid_index(self, grid_ind): + y_ind, x_ind = divmod(grid_ind, self.width) + return x_ind, y_ind + + def calc_grid_index_from_xy_pos(self, x_pos, y_pos): + """get_xy_index_from_xy_pos + + :param x_pos: x position [m] + :param y_pos: y position [m] + """ + x_ind = self.calc_xy_index_from_position( + x_pos, self.left_lower_x, self.width) + y_ind = self.calc_xy_index_from_position( + y_pos, self.left_lower_y, self.height) + + return self.calc_grid_index_from_xy_index(x_ind, y_ind) + + def calc_grid_central_xy_position_from_grid_index(self, grid_ind): + x_ind, y_ind = self.calc_xy_index_from_grid_index(grid_ind) + return self.calc_grid_central_xy_position_from_xy_index(x_ind, y_ind) + def calc_grid_central_xy_position_from_xy_index(self, x_ind, y_ind): x_pos = self.calc_grid_central_xy_position_from_index( x_ind, self.left_lower_x) @@ -156,39 +198,40 @@ def calc_xy_index_from_position(self, pos, lower_pos, max_index): else: return None - def check_occupied_from_xy_index(self, xind, yind, occupied_val=1.0): + def check_occupied_from_xy_index(self, x_ind, y_ind, occupied_val): - val = self.get_value_from_xy_index(xind, yind) + val = self.get_value_from_xy_index(x_ind, y_ind) if val is None or val >= occupied_val: return True else: return False - def expand_grid(self): - xinds, yinds = [], [] + def expand_grid(self, occupied_val=FloatGrid(1.0)): + x_inds, y_inds, values = [], [], [] for ix in range(self.width): for iy in range(self.height): - if self.check_occupied_from_xy_index(ix, iy): - xinds.append(ix) - yinds.append(iy) - - for (ix, iy) in zip(xinds, yinds): - self.set_value_from_xy_index(ix + 1, iy, val=1.0) - self.set_value_from_xy_index(ix, iy + 1, val=1.0) - self.set_value_from_xy_index(ix + 1, iy + 1, val=1.0) - self.set_value_from_xy_index(ix - 1, iy, val=1.0) - self.set_value_from_xy_index(ix, iy - 1, val=1.0) - self.set_value_from_xy_index(ix - 1, iy - 1, val=1.0) + if self.check_occupied_from_xy_index(ix, iy, occupied_val): + x_inds.append(ix) + y_inds.append(iy) + values.append(self.get_value_from_xy_index(ix, iy)) + + for (ix, iy, value) in zip(x_inds, y_inds, values): + self.set_value_from_xy_index(ix + 1, iy, val=value) + self.set_value_from_xy_index(ix, iy + 1, val=value) + self.set_value_from_xy_index(ix + 1, iy + 1, val=value) + self.set_value_from_xy_index(ix - 1, iy, val=value) + self.set_value_from_xy_index(ix, iy - 1, val=value) + self.set_value_from_xy_index(ix - 1, iy - 1, val=value) @staticmethod def check_inside_polygon(iox, ioy, x, y): - npoint = len(x) - 1 + n_point = len(x) - 1 inside = False - for i1 in range(npoint): - i2 = (i1 + 1) % (npoint + 1) + for i1 in range(n_point): + i2 = (i1 + 1) % (n_point + 1) if x[i1] >= x[i2]: min_x, max_x = x[i2], x[i1] @@ -211,27 +254,26 @@ def print_grid_map_info(self): print("center_y:", self.center_y) print("left_lower_x:", self.left_lower_x) print("left_lower_y:", self.left_lower_y) - print("ndata:", self.ndata) + print("n_data:", self.n_data) def plot_grid_map(self, ax=None): - - grid_data = np.reshape(np.array(self.data), (self.height, self.width)) + float_data_array = np.array([d.get_float_data() for d in self.data]) + grid_data = np.reshape(float_data_array, (self.height, self.width)) if not ax: fig, ax = plt.subplots() heat_map = ax.pcolor(grid_data, cmap="Blues", vmin=0.0, vmax=1.0) plt.axis("equal") - # plt.show() return heat_map -def test_polygon_set(): +def polygon_set_demo(): ox = [0.0, 4.35, 20.0, 50.0, 100.0, 130.0, 40.0] oy = [0.0, -4.15, -20.0, 0.0, 30.0, 60.0, 80.0] grid_map = GridMap(600, 290, 0.7, 60.0, 30.5) - grid_map.set_value_from_polygon(ox, oy, 1.0, inside=False) + grid_map.set_value_from_polygon(ox, oy, FloatGrid(1.0), inside=False) grid_map.plot_grid_map() @@ -239,24 +281,27 @@ def test_polygon_set(): plt.grid(True) -def test_position_set(): +def position_set_demo(): grid_map = GridMap(100, 120, 0.5, 10.0, -0.5) - grid_map.set_value_from_xy_pos(10.1, -1.1, 1.0) - grid_map.set_value_from_xy_pos(10.1, -0.1, 1.0) - grid_map.set_value_from_xy_pos(10.1, 1.1, 1.0) - grid_map.set_value_from_xy_pos(11.1, 0.1, 1.0) - grid_map.set_value_from_xy_pos(10.1, 0.1, 1.0) - grid_map.set_value_from_xy_pos(9.1, 0.1, 1.0) + grid_map.set_value_from_xy_pos(10.1, -1.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(10.1, -0.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(10.1, 1.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(11.1, 0.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(10.1, 0.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(9.1, 0.1, FloatGrid(1.0)) grid_map.plot_grid_map() + plt.axis("equal") + plt.grid(True) + def main(): print("start!!") - test_position_set() - test_polygon_set() + position_set_demo() + polygon_set_demo() plt.show() diff --git a/Mapping/ndt_map/ndt_map.py b/Mapping/ndt_map/ndt_map.py new file mode 100644 index 0000000000..f4f3299662 --- /dev/null +++ b/Mapping/ndt_map/ndt_map.py @@ -0,0 +1,135 @@ +""" +Normal Distribution Transform (NDTGrid) mapping sample +""" +import matplotlib.pyplot as plt +import numpy as np +from collections import defaultdict + +from Mapping.grid_map_lib.grid_map_lib import GridMap +from utils.plot import plot_covariance_ellipse + + +class NDTMap: + """ + Normal Distribution Transform (NDT) map class + + :param ox: obstacle x position list + :param oy: obstacle y position list + :param resolution: grid resolution [m] + """ + + class NDTGrid: + """ + NDT grid + """ + + def __init__(self): + #: Number of points in the NDTGrid grid + self.n_points = 0 + #: Mean x position of points in the NDTGrid cell + self.mean_x = None + #: Mean y position of points in the NDTGrid cell + self.mean_y = None + #: Center x position of the NDT grid + self.center_grid_x = None + #: Center y position of the NDT grid + self.center_grid_y = None + #: Covariance matrix of the NDT grid + self.covariance = None + #: Eigen vectors of the NDT grid + self.eig_vec = None + #: Eigen values of the NDT grid + self.eig_values = None + + def __init__(self, ox, oy, resolution): + #: Minimum number of points in the NDT grid + self.min_n_points = 3 + #: Resolution of the NDT grid [m] + self.resolution = resolution + width = int((max(ox) - min(ox))/resolution) + 3 # rounding up + right and left margin + height = int((max(oy) - min(oy))/resolution) + 3 + center_x = np.mean(ox) + center_y = np.mean(oy) + self.ox = ox + self.oy = oy + #: NDT grid index map + self.grid_index_map = self._create_grid_index_map(ox, oy) + + #: NDT grid map. Each grid contains NDTGrid object + self._construct_grid_map(center_x, center_y, height, ox, oy, resolution, width) + + def _construct_grid_map(self, center_x, center_y, height, ox, oy, resolution, width): + self.grid_map = GridMap(width, height, resolution, center_x, center_y, self.NDTGrid()) + for grid_index, inds in self.grid_index_map.items(): + ndt = self.NDTGrid() + ndt.n_points = len(inds) + if ndt.n_points >= self.min_n_points: + ndt.mean_x = np.mean(ox[inds]) + ndt.mean_y = np.mean(oy[inds]) + ndt.center_grid_x, ndt.center_grid_y = \ + self.grid_map.calc_grid_central_xy_position_from_grid_index(grid_index) + ndt.covariance = np.cov(ox[inds], oy[inds]) + ndt.eig_values, ndt.eig_vec = np.linalg.eig(ndt.covariance) + self.grid_map.data[grid_index] = ndt + + def _create_grid_index_map(self, ox, oy): + grid_index_map = defaultdict(list) + for i in range(len(ox)): + grid_index = self.grid_map.calc_grid_index_from_xy_pos(ox[i], oy[i]) + grid_index_map[grid_index].append(i) + return grid_index_map + + +def create_dummy_observation_data(): + ox = [] + oy = [] + # left corridor + for y in range(-50, 50): + ox.append(-20.0) + oy.append(y) + # right corridor 1 + for y in range(-50, 0): + ox.append(20.0) + oy.append(y) + # right corridor 2 + for x in range(20, 50): + ox.append(x) + oy.append(0) + # right corridor 3 + for x in range(20, 50): + ox.append(x) + oy.append(x/2.0+10) + # right corridor 4 + for y in range(20, 50): + ox.append(20) + oy.append(y) + ox = np.array(ox) + oy = np.array(oy) + # Adding random noize + ox += np.random.rand(len(ox)) * 1.0 + oy += np.random.rand(len(ox)) * 1.0 + return ox, oy + + +def main(): + print(__file__ + " start!!") + + ox, oy = create_dummy_observation_data() + grid_resolution = 10.0 + ndt_map = NDTMap(ox, oy, grid_resolution) + + # plot raw observation + plt.plot(ox, oy, ".r") + + # plot grid clustering + [plt.plot(ox[inds], oy[inds], "x") for inds in ndt_map.grid_index_map.values()] + + # plot ndt grid map + [plot_covariance_ellipse(ndt.mean_x, ndt.mean_y, ndt.covariance, color="-k") for ndt in ndt_map.grid_map.data if ndt.n_points > 0] + + plt.axis("equal") + plt.show() + + +if __name__ == '__main__': + main() diff --git a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py index 31dc917566..ee192e9200 100644 --- a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py +++ b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py @@ -13,7 +13,7 @@ sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from utils.angle import rot_mat_2d -from Mapping.grid_map_lib.grid_map_lib import GridMap +from Mapping.grid_map_lib.grid_map_lib import GridMap, FloatGrid do_animation = True @@ -41,8 +41,7 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): n_y_index = c_y_index # found safe grid - if not grid_map.check_occupied_from_xy_index(n_x_index, n_y_index, - occupied_val=0.5): + if not self.check_occupied(n_x_index, n_y_index, grid_map): return n_x_index, n_y_index else: # occupied next_c_x_index, next_c_y_index = self.find_safe_turning_grid( @@ -51,19 +50,20 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): # moving backward next_c_x_index = -self.moving_direction + c_x_index next_c_y_index = c_y_index - if grid_map.check_occupied_from_xy_index(next_c_x_index, - next_c_y_index): + if self.check_occupied(next_c_x_index, next_c_y_index, grid_map): # moved backward, but the grid is occupied by obstacle return None, None else: # keep moving until end - while not grid_map.check_occupied_from_xy_index( - next_c_x_index + self.moving_direction, - next_c_y_index, occupied_val=0.5): + while not self.check_occupied(next_c_x_index + self.moving_direction, next_c_y_index, grid_map): next_c_x_index += self.moving_direction self.swap_moving_direction() return next_c_x_index, next_c_y_index + @staticmethod + def check_occupied(c_x_index, c_y_index, grid_map): + return grid_map.check_occupied_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)) + def find_safe_turning_grid(self, c_x_index, c_y_index, grid_map): for (d_x_ind, d_y_ind) in self.turing_window: @@ -72,17 +72,14 @@ def find_safe_turning_grid(self, c_x_index, c_y_index, grid_map): next_y_ind = d_y_ind + c_y_index # found safe grid - if not grid_map.check_occupied_from_xy_index(next_x_ind, - next_y_ind, - occupied_val=0.5): + if not self.check_occupied(next_x_ind, next_y_ind, grid_map): return next_x_ind, next_y_ind return None, None def is_search_done(self, grid_map): for ix in self.x_indexes_goal_y: - if not grid_map.check_occupied_from_xy_index(ix, self.goal_y, - occupied_val=0.5): + if not self.check_occupied(ix, self.goal_y, grid_map): return False # all lower grid is occupied @@ -168,7 +165,7 @@ def search_free_grid_index_at_edge_y(grid_map, from_upper=False): for iy in x_range: for ix in y_range: - if not grid_map.check_occupied_from_xy_index(ix, iy): + if not SweepSearcher.check_occupied(ix, iy, grid_map): y_index = iy x_indexes.append(ix) if y_index: @@ -185,7 +182,7 @@ def setup_grid_map(ox, oy, resolution, sweep_direction, offset_grid=10): grid_map = GridMap(width, height, resolution, center_x, center_y) grid_map.print_grid_map_info() - grid_map.set_value_from_polygon(ox, oy, 1.0, inside=False) + grid_map.set_value_from_polygon(ox, oy, FloatGrid(1.0), inside=False) grid_map.expand_grid() x_inds_goal_y = [] @@ -203,7 +200,7 @@ def setup_grid_map(ox, oy, resolution, sweep_direction, offset_grid=10): def sweep_path_search(sweep_searcher, grid_map, grid_search_animation=False): # search start grid c_x_index, c_y_index = sweep_searcher.search_start_grid(grid_map) - if not grid_map.set_value_from_xy_index(c_x_index, c_y_index, 0.5): + if not grid_map.set_value_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)): print("Cannot find start grid") return [], [] @@ -235,7 +232,7 @@ def sweep_path_search(sweep_searcher, grid_map, grid_search_animation=False): px.append(x) py.append(y) - grid_map.set_value_from_xy_index(c_x_index, c_y_index, 0.5) + grid_map.set_value_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)) if grid_search_animation: grid_map.plot_grid_map(ax=ax) diff --git a/docs/modules/mapping/mapping_main.rst b/docs/modules/mapping/mapping_main.rst index 1c02c75cb2..a98acaaf50 100644 --- a/docs/modules/mapping/mapping_main.rst +++ b/docs/modules/mapping/mapping_main.rst @@ -7,6 +7,7 @@ Mapping :caption: Contents gaussian_grid_map/gaussian_grid_map + ndt_map/ndt_map ray_casting_grid_map/ray_casting_grid_map lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial point_cloud_sampling/point_cloud_sampling diff --git a/docs/modules/mapping/ndt_map/grid_clustering.png b/docs/modules/mapping/ndt_map/grid_clustering.png new file mode 100644 index 0000000000000000000000000000000000000000..c53590287af100b42c31afdb7610a825c4e3b589 GIT binary patch literal 33111 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