From 805ff654e869030c4ba70f37fad6c3825f59c077 Mon Sep 17 00:00:00 2001 From: Barend Gehrels Date: Fri, 25 Apr 2025 08:37:13 +0200 Subject: [PATCH] feat: major rewrite of traversal --- CMakeLists.txt | 3 +- .../detail/buffer/buffer_inserter.hpp | 10 +- .../detail/buffer/buffer_policies.hpp | 58 +- .../buffer/buffered_piece_collection.hpp | 85 +- .../buffer/turn_in_original_visitor.hpp | 8 +- .../detail/buffer/turn_in_piece_visitor.hpp | 6 +- .../detail/overlay/approximately_equals.hpp | 4 +- .../detail/overlay/backtrack_check_si.hpp | 205 ---- .../detail/overlay/cluster_info.hpp | 5 - .../detail/overlay/colocate_clusters.hpp | 13 +- .../detail/overlay/debug_turn_info.hpp | 13 - .../overlay/discard_duplicate_turns.hpp | 6 + .../overlay/enrich_intersection_points.hpp | 322 +++--- .../detail/overlay/enrichment_info.hpp | 65 +- .../detail/overlay/get_properties_ahead.hpp | 183 +++ .../detail/overlay/get_turn_info.hpp | 48 +- .../detail/overlay/graph/adapt_operations.hpp | 120 ++ .../overlay/graph/assign_clustered_counts.hpp | 582 ++++++++++ .../detail/overlay/graph/assign_counts.hpp | 162 +++ .../overlay/graph/assign_side_counts.hpp | 63 + .../detail/overlay/graph/debug_graph.hpp | 112 ++ .../graph/detect_biconnected_components.hpp | 276 +++++ .../overlay/graph/fill_ring_turn_info_map.hpp | 54 + .../detail/overlay/graph/get_tois.hpp | 131 +++ .../detail/overlay/graph/graph_util.hpp | 62 + .../overlay/graph/is_operation_included.hpp | 50 + .../overlay/graph/is_target_operation.hpp | 215 ++++ .../detail/overlay/graph/node_util.hpp | 159 +++ .../detail/overlay/graph/select_edge.hpp | 315 +++++ .../overlay/graph/select_toi_by_incoming.hpp | 96 ++ .../detail/overlay/graph/traverse_graph.hpp | 437 +++++++ .../detail/overlay/handle_colocations.hpp | 390 +------ .../detail/overlay/handle_self_turns.hpp | 16 + .../detail/overlay/intersection_insert.hpp | 1 - .../detail/overlay/less_by_segment_ratio.hpp | 10 +- .../algorithms/detail/overlay/overlay.hpp | 74 +- .../detail/overlay/segment_identifier.hpp | 8 +- .../detail/overlay/sort_by_side.hpp | 746 ------------ .../algorithms/detail/overlay/stream_info.hpp | 1 - .../algorithms/detail/overlay/traversal.hpp | 1017 ---------------- .../detail/overlay/traversal_info.hpp | 2 - .../detail/overlay/traversal_ring_creator.hpp | 427 ------- .../overlay/traversal_switch_detector.hpp | 746 ------------ .../algorithms/detail/overlay/traverse.hpp | 57 +- .../algorithms/detail/overlay/turn_info.hpp | 14 +- .../detail/overlay/turn_operation_id.hpp | 55 + .../algorithms/detail/overlay/visit_info.hpp | 98 -- .../algorithms/detail/position_code.hpp | 71 ++ include/boost/geometry/core/exception.hpp | 25 +- .../geometry/strategies/relate/cartesian.hpp | 3 + test/algorithms/buffer/buffer_cases.hpp | 24 +- test/algorithms/buffer/buffer_countries.cpp | 2 +- .../buffer/buffer_linestring_geo.cpp | 27 +- .../buffer/buffer_multi_linestring.cpp | 2 + .../buffer/buffer_multi_polygon.cpp | 59 +- test/algorithms/buffer/buffer_polygon.cpp | 12 +- .../buffer/buffer_variable_width.cpp | 36 +- test/algorithms/buffer/images/rt_w15.png | Bin 0 -> 387315 bytes test/algorithms/buffer/images/rt_w18.png | Bin 0 -> 201999 bytes test/algorithms/buffer/images/rt_w2.png | Bin 0 -> 89885 bytes test/algorithms/buffer/images/rt_w22.png | Bin 0 -> 105538 bytes test/algorithms/buffer/images/rt_w24.png | Bin 0 -> 304151 bytes .../buffer/images/rt_w24_graph_right.png | Bin 0 -> 176500 bytes .../buffer/images/rt_w24_graph_wrong.png | Bin 0 -> 193475 bytes test/algorithms/buffer/images/rt_w3.png | Bin 0 -> 178685 bytes test/algorithms/buffer/images/rt_w7.png | Bin 0 -> 100630 bytes test/algorithms/buffer/readme.md | 69 ++ test/algorithms/buffer/test_buffer_csv.hpp | 2 +- test/algorithms/buffer/test_buffer_svg.hpp | 4 +- test/algorithms/overlay/CMakeLists.txt | 2 - test/algorithms/overlay/Jamfile | 2 - .../overlay/debug_sort_by_side_svg.hpp | 123 -- .../overlay/get_distance_measure.cpp | 3 - .../overlay/multi_overlay_cases.hpp | 33 + test/algorithms/overlay/overlay.cpp | 259 ++++- test/algorithms/overlay/sort_by_side.cpp | 263 ----- .../algorithms/overlay/sort_by_side_basic.cpp | 331 ------ test/algorithms/overlay/traverse.cpp | 1018 ----------------- test/algorithms/overlay/traverse_ccw.cpp | 360 ------ test/algorithms/overlay/traverse_multi.cpp | 462 -------- .../difference/difference_multi.cpp | 2 +- .../intersection/intersection_multi.cpp | 4 +- .../set_operations/set_ops_areal_areal.cpp | 14 +- .../algorithms/set_operations/union/union.cpp | 2 - .../set_operations/union/union_multi.cpp | 11 +- .../buffer/recursive_polygons_buffer.cpp | 95 +- 86 files changed, 4053 insertions(+), 6797 deletions(-) delete mode 100644 include/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/get_properties_ahead.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/adapt_operations.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/assign_clustered_counts.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/assign_counts.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/assign_side_counts.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/debug_graph.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/detect_biconnected_components.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/fill_ring_turn_info_map.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/get_tois.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/graph_util.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/is_operation_included.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/is_target_operation.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/node_util.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/select_edge.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/select_toi_by_incoming.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/graph/traverse_graph.hpp delete mode 100644 include/boost/geometry/algorithms/detail/overlay/sort_by_side.hpp delete mode 100644 include/boost/geometry/algorithms/detail/overlay/traversal.hpp delete mode 100644 include/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp delete mode 100644 include/boost/geometry/algorithms/detail/overlay/traversal_switch_detector.hpp create mode 100644 include/boost/geometry/algorithms/detail/overlay/turn_operation_id.hpp delete mode 100644 include/boost/geometry/algorithms/detail/overlay/visit_info.hpp create mode 100644 include/boost/geometry/algorithms/detail/position_code.hpp create mode 100644 test/algorithms/buffer/images/rt_w15.png create mode 100644 test/algorithms/buffer/images/rt_w18.png create mode 100644 test/algorithms/buffer/images/rt_w2.png create mode 100644 test/algorithms/buffer/images/rt_w22.png create mode 100644 test/algorithms/buffer/images/rt_w24.png create mode 100644 test/algorithms/buffer/images/rt_w24_graph_right.png create mode 100644 test/algorithms/buffer/images/rt_w24_graph_wrong.png create mode 100644 test/algorithms/buffer/images/rt_w3.png create mode 100644 test/algorithms/buffer/images/rt_w7.png create mode 100644 test/algorithms/buffer/readme.md delete mode 100644 test/algorithms/overlay/debug_sort_by_side_svg.hpp delete mode 100644 test/algorithms/overlay/sort_by_side.cpp delete mode 100644 test/algorithms/overlay/sort_by_side_basic.cpp delete mode 100644 test/algorithms/overlay/traverse.cpp delete mode 100644 test/algorithms/overlay/traverse_ccw.cpp delete mode 100644 test/algorithms/overlay/traverse_multi.cpp diff --git a/CMakeLists.txt b/CMakeLists.txt index 750938c0a..9138c1d95 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,6 +26,7 @@ target_link_libraries(boost_geometry Boost::core Boost::crc Boost::function_types + Boost::graph Boost::iterator Boost::lexical_cast Boost::math @@ -103,6 +104,7 @@ if(BUILD_TESTING AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/test/CMakeLists.txt") algorithm any crc + graph lexical_cast math multiprecision @@ -131,4 +133,3 @@ if(BUILD_TESTING AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/test/CMakeLists.txt") add_subdirectory(index/test EXCLUDE_FROM_ALL) endif() - diff --git a/include/boost/geometry/algorithms/detail/buffer/buffer_inserter.hpp b/include/boost/geometry/algorithms/detail/buffer/buffer_inserter.hpp index 02e1bf990..64a30a577 100644 --- a/include/boost/geometry/algorithms/detail/buffer/buffer_inserter.hpp +++ b/include/boost/geometry/algorithms/detail/buffer/buffer_inserter.hpp @@ -363,6 +363,11 @@ struct visit_pieces_default_policy template static inline void apply(Collection const&, int) {} + + template + inline void visit_cluster_connections(signed_size_type cluster_id, + Turns const& turns, Cluster const& cluster, Connections const& connections) {} + }; template @@ -940,6 +945,7 @@ inline void buffer_inserter(GeometryInput const& geometry_input, OutputIterator } collection.handle_colocations(); collection.check_turn_in_pieces(); + collection.assign_side_counts(visit_pieces_policy); collection.make_traversable_consistent_per_cluster(); // Visit the piece collection. This does nothing (by default), but @@ -949,7 +955,7 @@ inline void buffer_inserter(GeometryInput const& geometry_input, OutputIterator visit_pieces_policy.apply(const_collection, 0); collection.discard_rings(); - collection.block_turns(); + collection.discard_non_traversable_turns(); collection.enrich(); // phase 1: turns (after enrichment/clustering) @@ -960,7 +966,7 @@ inline void buffer_inserter(GeometryInput const& geometry_input, OutputIterator collection.deflate_check_turns(); } - collection.traverse(); + collection.traverse(visit_pieces_policy); // Reverse all offsetted rings / traversed rings if: // - they were generated on the negative side (deflate) of polygons diff --git a/include/boost/geometry/algorithms/detail/buffer/buffer_policies.hpp b/include/boost/geometry/algorithms/detail/buffer/buffer_policies.hpp index 1685bc858..545bb85bf 100644 --- a/include/boost/geometry/algorithms/detail/buffer/buffer_policies.hpp +++ b/include/boost/geometry/algorithms/detail/buffer/buffer_policies.hpp @@ -21,7 +21,8 @@ #include #include -#include +#include +#include #include #include @@ -36,54 +37,6 @@ namespace boost { namespace geometry namespace detail { namespace buffer { -class backtrack_for_buffer -{ -public : - using state_type = detail::overlay::backtrack_state; - - template - < - typename Operation, - typename Rings, - typename Turns, - typename Geometry, - typename Strategy, - typename Visitor - > - static inline void apply(std::size_t size_at_start, - Rings& rings, typename boost::range_value::type& ring, - Turns& turns, - typename boost::range_value::type const& /*turn*/, - Operation& operation, - detail::overlay::traverse_error_type /*traverse_error*/, - Geometry const& , - Geometry const& , - Strategy const& , - state_type& state, - Visitor& /*visitor*/ - ) - { -#if defined(BOOST_GEOMETRY_COUNT_BACKTRACK_WARNINGS) -extern int g_backtrack_warning_count; -g_backtrack_warning_count++; -#endif -//std::cout << "!"; -//std::cout << "WARNING " << traverse_error_string(traverse_error) << std::endl; - - state.m_good = false; - - // Make bad output clean - rings.resize(size_at_start); - ring.clear(); - - // Reject this as a starting point - operation.visited.set_rejected(); - - // And clear all visit info - clear_visit_info(turns); - } -}; - struct buffer_overlay_visitor { public : @@ -98,11 +51,6 @@ public : { } - template - void visit_traverse_reject(Turns const& , Turn const& , Operation const& , - detail::overlay::traverse_error_type ) - {} - template void visit_generated_rings(Rings const& ) {} @@ -141,7 +89,6 @@ struct buffer_turn_info // Information if turn can be used. It is not traversable if it is within // another piece, or within the original (depending on deflation), // or (for deflate) if there are not enough points to traverse it. - bool is_turn_traversable; bool is_linear_end_point; bool within_original; @@ -149,7 +96,6 @@ struct buffer_turn_info inline buffer_turn_info() : turn_index(0) - , is_turn_traversable(true) , is_linear_end_point(false) , within_original(false) , count_in_original(0) diff --git a/include/boost/geometry/algorithms/detail/buffer/buffered_piece_collection.hpp b/include/boost/geometry/algorithms/detail/buffer/buffered_piece_collection.hpp index 9a836375c..79b2fbcb0 100644 --- a/include/boost/geometry/algorithms/detail/buffer/buffered_piece_collection.hpp +++ b/include/boost/geometry/algorithms/detail/buffer/buffered_piece_collection.hpp @@ -37,9 +37,12 @@ #include +#include #include #include #include +#include +#include #include #include #include @@ -308,7 +311,7 @@ struct buffered_piece_collection // be three turns (which cannot be checked here - TODO: add to traverse) for (auto& turn : m_turns) { - if (! turn.is_turn_traversable) + if (! turn.is_traversable) { continue; } @@ -348,18 +351,18 @@ struct buffered_piece_collection for (auto& turn : m_turns) { - if (turn.is_turn_traversable) + if (turn.is_traversable) { if (deflate && turn.count_in_original <= 0) { // For deflate/negative buffers: // it is not in the original, so don't use it - turn.is_turn_traversable = false; + turn.is_traversable = false; } else if (! deflate && turn.count_in_original > 0) { // For inflate: it is in original, so don't use it - turn.is_turn_traversable = false; + turn.is_traversable = false; } } } @@ -439,6 +442,21 @@ struct buffered_piece_collection detail::section::overlaps_section_box(m_strategy)); } + // This fixes the fact that sometimes wrong ix or xi turns are generated. + // See comments in get_turn_info (block_q). + // The ix turns are not relevant for buffer anyway, it is fine to remove them, + // as long as they are removed before calculating turn indices. + // It will also enhance performance a bit (no need to calculate point in original, + // point in piece). Therefore we remove ii and xx as well. + m_turns.erase(std::remove_if(m_turns.begin(), m_turns.end(), + [](auto const& turn) + { + bool const is_ix = turn.combination(overlay::operation_intersection, overlay::operation_blocked); + bool const is_ii = turn.both(overlay::operation_intersection); + return is_ix || is_ii || turn.blocked(); + }), + m_turns.end()); + update_turn_administration(); } @@ -869,29 +887,27 @@ struct buffered_piece_collection inline void handle_colocations() { - if (! detail::overlay::handle_colocations - < - false, false, overlay_buffer, - ring_collection_t, ring_collection_t - >(m_turns, m_clusters)) - { - return; - } + detail::overlay::handle_colocations(m_turns, m_clusters); + } - detail::overlay::gather_cluster_properties - < - false, false, overlay_buffer - >(m_clusters, m_turns, detail::overlay::operation_union, - offsetted_rings, offsetted_rings, m_strategy); + template + inline void assign_side_counts(Visitor& visitor) + { + // Assign count_left, count_right and open_count + detail::overlay::assign_side_counts + + (offsetted_rings, offsetted_rings, + m_turns, m_clusters, + m_strategy, visitor); + // Mark closed clusters as not traversable for (auto const& cluster : m_clusters) { - if (cluster.second.open_count == 0 && cluster.second.spike_count == 0) + if (cluster.second.open_count == 0) { - // If the cluster is completely closed, mark it as not traversable. for (auto const& index : cluster.second.turn_indices) { - m_turns[index].is_turn_traversable = false; + m_turns[index].is_traversable = false; } } } @@ -904,7 +920,7 @@ struct buffered_piece_collection bool is_traversable = false; for (auto const& index : cluster.second.turn_indices) { - if (m_turns[index].is_turn_traversable) + if (m_turns[index].is_traversable) { // If there is one turn traversable in the cluster, // then all turns should be traversable. @@ -916,7 +932,7 @@ struct buffered_piece_collection { for (auto const& index : cluster.second.turn_indices) { - m_turns[index].is_turn_traversable = true; + m_turns[index].is_traversable = true; } } } @@ -924,9 +940,13 @@ struct buffered_piece_collection inline void enrich() { - enrich_intersection_points(m_turns, - m_clusters, offsetted_rings, offsetted_rings, - m_strategy); + detail::overlay::enrich_discard_turns( + m_turns, m_clusters, offsetted_rings, offsetted_rings, m_strategy); + detail::overlay::enrich_turns( + m_turns, offsetted_rings, offsetted_rings, m_strategy); + + detail::overlay::get_properties_ahead(m_turns, m_clusters, offsetted_rings, + offsetted_rings, m_strategy); } // Discards all rings which do have not-OK intersection points only. @@ -935,7 +955,7 @@ struct buffered_piece_collection { for (auto const& turn : m_turns) { - if (turn.is_turn_traversable) + if (turn.is_traversable) { offsetted_rings[turn.operations[0].seg_id.multi_index].has_accepted_intersections = true; offsetted_rings[turn.operations[1].seg_id.multi_index].has_accepted_intersections = true; @@ -1013,28 +1033,27 @@ struct buffered_piece_collection } } - inline void block_turns() + inline void discard_non_traversable_turns() { for (auto& turn : m_turns) { - if (! turn.is_turn_traversable) + if (! turn.is_traversable) { - // Discard this turn (don't set it to blocked to avoid colocated - // clusters being discarded afterwards + // Discard the non traversable turn turn.discarded = true; } } } - inline void traverse() + template + inline void traverse(PieceVisitor const& piece_visitor) { using traverser = detail::overlay::traverse < false, false, buffered_ring_collection >, buffered_ring_collection >, - overlay_buffer, - backtrack_for_buffer + overlay_buffer >; std::map turn_info_per_ring; diff --git a/include/boost/geometry/algorithms/detail/buffer/turn_in_original_visitor.hpp b/include/boost/geometry/algorithms/detail/buffer/turn_in_original_visitor.hpp index 12fffc4c4..070a3f6f6 100644 --- a/include/boost/geometry/algorithms/detail/buffer/turn_in_original_visitor.hpp +++ b/include/boost/geometry/algorithms/detail/buffer/turn_in_original_visitor.hpp @@ -75,7 +75,7 @@ struct include_turn_policy template static inline bool apply(Turn const& turn) { - return turn.is_turn_traversable; + return turn.is_traversable; } }; @@ -89,7 +89,7 @@ struct turn_in_original_overlaps_box template inline bool apply(Box const& box, Turn const& turn) const { - if (! turn.is_turn_traversable || turn.within_original) + if (! turn.is_traversable || turn.within_original) { // Skip all points already processed return false; @@ -237,7 +237,7 @@ public: return true; } - if (! turn.is_turn_traversable || turn.within_original) + if (! turn.is_traversable || turn.within_original) { // Skip all points already processed return true; @@ -262,7 +262,7 @@ public: if (code == 0) { // On border of original: always discard - mutable_turn.is_turn_traversable = false; + mutable_turn.is_traversable = false; } // Point is inside an original ring diff --git a/include/boost/geometry/algorithms/detail/buffer/turn_in_piece_visitor.hpp b/include/boost/geometry/algorithms/detail/buffer/turn_in_piece_visitor.hpp index bb7019c08..47a418e17 100644 --- a/include/boost/geometry/algorithms/detail/buffer/turn_in_piece_visitor.hpp +++ b/include/boost/geometry/algorithms/detail/buffer/turn_in_piece_visitor.hpp @@ -108,7 +108,7 @@ public: template inline bool apply(Turn const& turn, Piece const& piece) { - if (! turn.is_turn_traversable) + if (! turn.is_traversable) { // Already handled return true; @@ -154,7 +154,7 @@ public: if (d < border.m_min_comparable_radius) { Turn& mutable_turn = m_turns[turn.turn_index]; - mutable_turn.is_turn_traversable = false; + mutable_turn.is_traversable = false; return true; } if (d > border.m_max_comparable_radius) @@ -177,7 +177,7 @@ public: if (state.is_inside() && ! state.is_on_boundary()) { Turn& mutable_turn = m_turns[turn.turn_index]; - mutable_turn.is_turn_traversable = false; + mutable_turn.is_traversable = false; } return true; diff --git a/include/boost/geometry/algorithms/detail/overlay/approximately_equals.hpp b/include/boost/geometry/algorithms/detail/overlay/approximately_equals.hpp index f41996f1d..2bdcfad5a 100644 --- a/include/boost/geometry/algorithms/detail/overlay/approximately_equals.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/approximately_equals.hpp @@ -21,7 +21,7 @@ namespace boost { namespace geometry namespace detail { namespace overlay { -// Value for approximately_equals used by get_cluster and sort_by_side +// Value for approximately_equals used by get_cluster and assign_side_counts // This is an "epsilon_multiplier" and, therefore, multiplied the epsilon // belonging to the used floating point type with this value. template @@ -29,7 +29,7 @@ struct common_approximately_equals_epsilon_multiplier { static T value() { - // The value is (a bit) arbitrary. For sort_by_side it should be large + // The value is (a bit) arbitrary. For assign_side_counts it should be large // enough to not take a point which is too close by, to calculate the // side value correctly. For get_cluster it is arbitrary as well, points // close to each other should form a cluster, which is also important diff --git a/include/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp b/include/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp deleted file mode 100644 index 517d881db..000000000 --- a/include/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp +++ /dev/null @@ -1,205 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) - -// Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands. - -// This file was modified by Oracle on 2017-2024. -// Modifications copyright (c) 2017-2024, Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_BACKTRACK_CHECK_SI_HPP -#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_BACKTRACK_CHECK_SI_HPP - -#include -#include - -#include -#include -#include - -#include -#include -#if defined(BOOST_GEOMETRY_DEBUG_INTERSECTION) || defined(BOOST_GEOMETRY_OVERLAY_REPORT_WKT) -# include -# include -#endif - -namespace boost { namespace geometry -{ - -#ifndef DOXYGEN_NO_DETAIL -namespace detail { namespace overlay -{ - -template -inline void clear_visit_info(Turns& turns) -{ - for (auto& turn : turns) - { - for (auto& op : turn.operations) - { - op.visited.clear(); - } - } -} - -struct backtrack_state -{ - bool m_good; - - inline backtrack_state() : m_good(true) {} - inline void reset() { m_good = true; } - inline bool good() const { return m_good; } -}; - - -enum traverse_error_type -{ - traverse_error_none, - traverse_error_no_next_ip_at_start, - traverse_error_no_next_ip, - traverse_error_dead_end_at_start, - traverse_error_dead_end, - traverse_error_visit_again, - traverse_error_endless_loop -}; - -inline std::string traverse_error_string(traverse_error_type error) -{ - switch (error) - { - case traverse_error_none : return ""; - case traverse_error_no_next_ip_at_start : return "No next IP at start"; - case traverse_error_no_next_ip : return "No next IP"; - case traverse_error_dead_end_at_start : return "Dead end at start"; - case traverse_error_dead_end : return "Dead end"; - case traverse_error_visit_again : return "Visit again"; - case traverse_error_endless_loop : return "Endless loop"; - default : return ""; - } - return ""; -} - - -template -< - typename Geometry1, - typename Geometry2 -> -class backtrack_check_self_intersections -{ - struct state : public backtrack_state - { - bool m_checked; - inline state() - : m_checked(true) - {} - }; -public : - using state_type = state; - - template - < - typename Operation, - typename Rings, typename Ring, typename Turns, - typename Strategy, - typename Visitor - > - static inline void apply(std::size_t size_at_start, - Rings& rings, - Ring& ring, - Turns& turns, - typename boost::range_value::type const& turn, - Operation& operation, - traverse_error_type traverse_error, - Geometry1 const& geometry1, - Geometry2 const& geometry2, - Strategy const& strategy, - state_type& state, - Visitor& visitor) - { - visitor.visit_traverse_reject(turns, turn, operation, traverse_error); - - state.m_good = false; - - // Check self-intersections and throw exception if appropriate - if (! state.m_checked) - { - state.m_checked = true; - has_self_intersections(geometry1, strategy); - has_self_intersections(geometry2, strategy); - } - - // Make bad output clean - rings.resize(size_at_start); - geometry::traits::clear::type>::apply(ring); - - // Reject this as a starting point - operation.visited.set_rejected(); - - // And clear all visit info - clear_visit_info(turns); - } -}; - -#ifdef BOOST_GEOMETRY_OVERLAY_REPORT_WKT -template -< - typename Geometry1, - typename Geometry2 -> -class backtrack_debug -{ -public : - using state_type = backtrack_state; - - template - static inline void apply(std::size_t size_at_start, - Rings& rings, typename boost::range_value::type& ring, - Turns& turns, Operation& operation, - std::string const& reason, - Geometry1 const& geometry1, - Geometry2 const& geometry2, - state_type& state - ) - { - std::cout << " REJECT " << reason << std::endl; - - state.m_good = false; - - rings.resize(size_at_start); - ring.clear(); - operation.visited.set_rejected(); - clear_visit_info(turns); - - int c = 0; - for (int i = 0; i < turns.size(); i++) - { - for (int j = 0; j < 2; j++) - { - if (turns[i].operations[j].visited.rejected()) - { - c++; - } - } - } - std::cout << "BACKTRACK (" << reason << " )" - << " " << c << " of " << turns.size() << " rejected" - << std::endl; - std::cout - << geometry::wkt(geometry1) << std::endl - << geometry::wkt(geometry2) << std::endl; - } -}; -#endif // BOOST_GEOMETRY_OVERLAY_REPORT_WKT - -}} // namespace detail::overlay -#endif // DOXYGEN_NO_DETAIL - -}} // namespace boost::geometry - -#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_BACKTRACK_CHECK_SI_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/cluster_info.hpp b/include/boost/geometry/algorithms/detail/overlay/cluster_info.hpp index dae519c18..3e757087a 100644 --- a/include/boost/geometry/algorithms/detail/overlay/cluster_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/cluster_info.hpp @@ -21,17 +21,12 @@ namespace boost { namespace geometry namespace detail { namespace overlay { - struct cluster_info { std::set turn_indices; //! Number of open spaces (e.g. 2 for touch) std::size_t open_count{0}; - - //! Number of spikes, where a segment goes to the cluster point - //! and leaves immediately in the opposite direction. - std::size_t spike_count{0}; }; diff --git a/include/boost/geometry/algorithms/detail/overlay/colocate_clusters.hpp b/include/boost/geometry/algorithms/detail/overlay/colocate_clusters.hpp index 330ef3463..24e704a28 100644 --- a/include/boost/geometry/algorithms/detail/overlay/colocate_clusters.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/colocate_clusters.hpp @@ -34,15 +34,6 @@ struct cluster_colocator template static inline void apply(TurnIndices const& indices, Turns& turns) { - // This approach works for all but one testcase (rt_p13) - // The problem is fill_sbs, which uses sides and these sides might change slightly - // depending on the exact location of the cluster. - // Using the centroid is, on the average, a safer choice for sides. - // Alternatively fill_sbs could be revised, but that requires a lot of work - // and is outside current scope. - // Integer coordinates are always colocated already and do not need centroid calculation. - // Geographic/spherical coordinates might (in extremely rare cases) cross the date line - // and therefore the first point is taken for them as well. auto it = indices.begin(); auto const& first_point = turns[*it].point; for (++it; it != indices.end(); ++it) @@ -81,6 +72,10 @@ struct cluster_colocator // Because clusters are intersection close together, and // handled as one location. Then they should also have one location. // It is necessary to avoid artefacts and invalidities. +// Integer coordinates are always colocated already and do not need centroid calculation. +// Geographic/spherical coordinates might (in extremely rare cases) cross the date line +// and therefore the first point is taken for them as well. +// Currently only necessary for one test case: issue_1211 (validation of sym difference) template inline void colocate_clusters(Clusters const& clusters, Turns& turns) { diff --git a/include/boost/geometry/algorithms/detail/overlay/debug_turn_info.hpp b/include/boost/geometry/algorithms/detail/overlay/debug_turn_info.hpp index 53a5af27d..1f597ae21 100644 --- a/include/boost/geometry/algorithms/detail/overlay/debug_turn_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/debug_turn_info.hpp @@ -10,7 +10,6 @@ #define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DEBUG_TURN_INFO_HPP #include -#include namespace boost { namespace geometry @@ -49,18 +48,6 @@ inline char operation_char(detail::overlay::operation_type const& operation) } } -inline char visited_char(detail::overlay::visit_info const& v) -{ - if (v.rejected()) return 'R'; - if (v.started()) return 's'; - if (v.visited()) return 'v'; - if (v.none()) return '-'; - if (v.finished()) return 'f'; - return '?'; -} - - - }} // namespace boost::geometry diff --git a/include/boost/geometry/algorithms/detail/overlay/discard_duplicate_turns.hpp b/include/boost/geometry/algorithms/detail/overlay/discard_duplicate_turns.hpp index 3c1ef5f34..eb6da4735 100644 --- a/include/boost/geometry/algorithms/detail/overlay/discard_duplicate_turns.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/discard_duplicate_turns.hpp @@ -104,6 +104,12 @@ void discard_duplicate_start_turns(Turns& turns, return multi_and_ring_id_type{seg_id.multi_index, seg_id.ring_index}; }; +#if defined(BOOST_GEOMETRY_CONCEPT_FIX_START_TURNS) + // Handle it by removing them from clusters. + // Not complete yet. + return; +#endif + for (auto& turn : turns) { // Any turn which "crosses" does not have a corresponding turn. diff --git a/include/boost/geometry/algorithms/detail/overlay/enrich_intersection_points.hpp b/include/boost/geometry/algorithms/detail/overlay/enrich_intersection_points.hpp index ca82d015e..191c2033e 100644 --- a/include/boost/geometry/algorithms/detail/overlay/enrich_intersection_points.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/enrich_intersection_points.hpp @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include #include @@ -101,7 +101,6 @@ inline void enrich_sort(Operations& operations, >(turns, geometry1, geometry2, strategy)); } - // Assign travel-to-vertex/ip index for each turn. template inline void enrich_assign(Operations& operations, Turns& turns) @@ -110,16 +109,41 @@ inline void enrich_assign(Operations& operations, Turns& turns) { auto const& index = item.index; auto const& indexed = item.value; + + if (indexed.discarded) + { + continue; + } + auto& turn = turns[indexed.turn_index]; auto& op = turn.operations[indexed.operation_index]; - std::size_t next_index = index + 1 < operations.size() ? index + 1 : 0; - auto advance = [&operations](auto index) + std::size_t skipped_count = 0; + + auto advance = [&](auto index) { - std::size_t const result = index + 1; - return result >= operations.size() ? 0 : result; + std::size_t result = (index + 1) % operations.size(); + while (operations[result].discarded) + { + result = (result + 1) % operations.size(); + auto const& next_turn = turns[operations[result].turn_index]; + if (! next_turn.is_traversable) + { + // There might be more conditions to skip. + // But it should not skip ALL discarded turns. + skipped_count++; +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << " -> Skip for " << operations[index].turn_index << " because of blocked " + << " " << operations[result].turn_index + << std::endl; +#endif + } + } + return result; }; + std::size_t next_index = advance(index); + auto next_turn = [&operations, &turns, &next_index]() { return turns[operations[next_index].turn_index]; @@ -142,18 +166,17 @@ inline void enrich_assign(Operations& operations, Turns& turns) next_index = advance(next_index); } + if (skipped_count > 0) + { + // Don't assign travel-info, because it is not reachable. But neither discard the turn, + // the other operation might be reachable. + continue; + } + op.enriched.travels_to_ip_index = static_cast(operations[next_index].turn_index); op.enriched.travels_to_vertex_index = operations[next_index].subject->seg_id.segment_index; - - auto const& next_op = next_operation(); - if (op.seg_id.segment_index == next_op.seg_id.segment_index - && op.fraction < next_op.fraction) - { - // Next turn is located further on same segment: assign next_ip_index - op.enriched.next_ip_index = static_cast(operations[next_index].turn_index); - } } #ifdef BOOST_GEOMETRY_DEBUG_ENRICH @@ -169,11 +192,11 @@ inline void enrich_assign(Operations& operations, Turns& turns) << " op=" << operation_char(turns[indexed_op.turn_index].operations[0].operation) << operation_char(turns[indexed_op.turn_index].operations[1].operation) << " (" << operation_char(op.operation) << ")" - << " nxt=" << op.enriched.next_ip_index - << " / " << op.enriched.travels_to_ip_index + << " to=" << op.enriched.travels_to_ip_index << " [vx " << op.enriched.travels_to_vertex_index << "]" << (turns[indexed_op.turn_index].discarded ? " [discarded]" : "") << (op.enriched.startable ? "" : " [not startable]") + << (indexed_op.discarded ? " DISCARDED" : "") << std::endl; } #endif @@ -199,7 +222,7 @@ inline void enrich_adapt(Operations& operations, Turns& turns) auto& turn = turns[indexed.turn_index]; auto& op = turn.operations[indexed.operation_index]; - std::size_t const next_index = index + 1 < operations.size() ? index + 1 : 0; + std::size_t const next_index = (index + 1) % operations.size(); auto const& next_turn = turns[operations[next_index].turn_index]; auto const& next_op = next_turn.operations[operations[next_index].operation_index]; @@ -261,7 +284,7 @@ template inline auto create_map(Turns const& turns, IncludePolicy const& include_policy) { using turn_type = typename boost::range_value::type; - using indexed_turn_operation = detail::overlay::indexed_turn_operation + using indexed_turn_operation = indexed_turn_operation < typename turn_type::turn_operation_type >; @@ -276,11 +299,6 @@ inline auto create_map(Turns const& turns, IncludePolicy const& include_policy) { auto const& index = turn_item.index; auto const& turn = turn_item.value; - if (turn.discarded) - { - continue; - } - for (auto const& op_item : util::enumerate(turn.operations)) { auto const& op_index = op_item.index; @@ -289,58 +307,144 @@ inline auto create_map(Turns const& turns, IncludePolicy const& include_policy) { mapped_vector[ring_id_by_seg_id(op.seg_id)].emplace_back ( - index, op_index, op, turn.operations[1 - op_index].seg_id + index, op_index, op, turn.operations[1 - op_index].seg_id, turn.discarded ); } } } + return mapped_vector; } -template -inline geometry::coordinate_type_t distance_measure(Point1 const& a, Point2 const& b) +template +< + overlay_type OverlayType, + typename Turns, + typename Clusters, + typename Geometry1, typename Geometry2, + typename IntersectionStrategy +> +inline void enrich_discard_turns(Turns& turns, Clusters& clusters, + Geometry1 const& geometry1, Geometry2 const& geometry2, + IntersectionStrategy const& strategy) { - // TODO: use comparable distance for point-point instead - but that - // causes currently cycling include problems - using ctype = geometry::coordinate_type_t; - ctype const dx = get<0>(a) - get<0>(b); - ctype const dy = get<1>(a) - get<1>(b); - return dx * dx + dy * dy; -} + constexpr operation_type target_operation = operation_from_overlay::value; -template -inline void calculate_remaining_distance(Turns& turns) -{ + constexpr operation_type opposite_operation + = target_operation == operation_union + ? operation_intersection + : operation_union; + + // Turns are often used by index (in clusters, next_index, etc) + // and turns may therefore NOT be DELETED - they may only be flagged as discarded + + discard_duplicate_turns(turns, geometry1, geometry2); + + // Discard turns not part of target overlay for (auto& turn : turns) { - auto& op0 = turn.operations[0]; - auto& op1 = turn.operations[1]; - - static decltype(op0.remaining_distance) const zero_distance = 0; - - if (op0.remaining_distance != zero_distance - || op1.remaining_distance != zero_distance) + if (turn.both(operation_none) + || turn.both(opposite_operation) + || turn.both(operation_blocked) + || (is_self_turn(turn) + && ! turn.is_clustered() + && ! turn.both(target_operation))) { - continue; + // For all operations, discard xx and none/none + // For intersections, remove uu to avoid the need to travel + // a union (during intersection) in uu/cc clusters (e.g. #31,#32,#33) + + // Similarly, for union, discard ii and ix + + // For self-turns, only keep uu / ii + + turn.discarded = true; + turn.cluster_id = -1; } - auto const to_index0 = op0.enriched.get_next_turn_index(); - auto const to_index1 = op1.enriched.get_next_turn_index(); - if (to_index0 >= 0 - && to_index1 >= 0 - && to_index0 != to_index1) +#if defined(BOOST_GEOMETRY_CONCEPT_FIX_START_TURNS) + if (turn.is_clustered() && turn.method == method_start) { - op0.remaining_distance = distance_measure(turn.point, turns[to_index0].point); - op1.remaining_distance = distance_measure(turn.point, turns[to_index1].point); + // Start turns are generated, in case the previous turn is missed. + // But often it is not missed, and then it should be deleted. + // TODO: only if the cluster NOT ONLY contains start turns, and there are turns left... + turn.discarded = true; + turn.cluster_id = -1; } +#endif + } + + // Discard self turns located within the other geometry (for union) + // or outside it (for intersection) + // For buffer or dissolve, nothing is called. + discard_closed_turns + < + OverlayType, + target_operation + >::apply(turns, clusters, geometry1, geometry2, strategy); + discard_open_turns + < + OverlayType, + target_operation + >::apply(turns, clusters, geometry1, geometry2, strategy); + + // Remove discarded turns from clusters + cleanup_clusters(turns, clusters); +} + +template +< + bool Reverse1, bool Reverse2, + overlay_type OverlayType, + typename Turns, + typename Geometry1, typename Geometry2, + typename IntersectionStrategy +> +inline void enrich_turns(Turns& turns, + Geometry1 const& geometry1, Geometry2 const& geometry2, + IntersectionStrategy const& strategy) +{ + constexpr operation_type target_operation = operation_from_overlay::value; + + // Create a map of vectors of indexed operation-types to be able + // to sort intersection points PER RING + auto mapped_vector = create_map(turns, enriched_map_default_include_policy()); + + for (auto& pair : mapped_vector) + { + enrich_sort(pair.second, turns, geometry1, geometry2, strategy); + } + + for (auto& pair : mapped_vector) + { +#ifdef BOOST_GEOMETRY_DEBUG_ENRICH + std::cout << "ENRICH-assign Ring " << pair.first << std::endl; +#endif + if BOOST_GEOMETRY_CONSTEXPR (OverlayType == overlay_dissolve) + { + enrich_adapt(pair.second, turns); + } + + enrich_assign(pair.second, turns); + } + + block_ux_uu_workaround(turns); + +#ifdef BOOST_GEOMETRY_DEBUG_ENRICH + constexpr bool do_check_graph = true; +#else + constexpr bool do_check_graph = false; +#endif + + if BOOST_GEOMETRY_CONSTEXPR (do_check_graph) + { + check_graph(turns, target_operation); } } }} // namespace detail::overlay #endif //DOXYGEN_NO_DETAIL - - /*! \brief All intersection points are enriched with successor information \ingroup overlay @@ -370,116 +474,8 @@ inline void enrich_intersection_points(Turns& turns, Geometry1 const& geometry1, Geometry2 const& geometry2, IntersectionStrategy const& strategy) { - constexpr detail::overlay::operation_type target_operation - = detail::overlay::operation_from_overlay::value; - constexpr detail::overlay::operation_type opposite_operation - = target_operation == detail::overlay::operation_union - ? detail::overlay::operation_intersection - : detail::overlay::operation_union; - constexpr bool is_dissolve = OverlayType == overlay_dissolve; - - // Turns are often used by index (in clusters, next_index, etc) - // and turns may therefore NOT be DELETED - they may only be flagged as discarded - - discard_duplicate_turns(turns, geometry1, geometry2); - - bool has_cc = false; - - // Discard turns not part of target overlay - for (auto& turn : turns) - { - if (turn.both(detail::overlay::operation_none) - || turn.both(opposite_operation) - || turn.both(detail::overlay::operation_blocked) - || (detail::overlay::is_self_turn(turn) - && ! turn.is_clustered() - && ! turn.both(target_operation))) - { - // For all operations, discard xx and none/none - // For intersections, remove uu to avoid the need to travel - // a union (during intersection) in uu/cc clusters (e.g. #31,#32,#33) - - // Similarly, for union, discard ii and ix - - // For self-turns, only keep uu / ii - - turn.discarded = true; - turn.cluster_id = -1; - continue; - } - - if (! turn.discarded - && turn.both(detail::overlay::operation_continue)) - { - has_cc = true; - } - } - - if (! is_dissolve) - { - detail::overlay::discard_closed_turns - < - OverlayType, - target_operation - >::apply(turns, clusters, geometry1, geometry2, - strategy); - detail::overlay::discard_open_turns - < - OverlayType, - target_operation - >::apply(turns, clusters, geometry1, geometry2, - strategy); - } - - if (! clusters.empty()) - { - detail::overlay::cleanup_clusters(turns, clusters); - detail::overlay::colocate_clusters(clusters, turns); - } - - // Create a map of vectors of indexed operation-types to be able - // to sort intersection points PER RING - auto mapped_vector = detail::overlay::create_map(turns, - detail::overlay::enriched_map_default_include_policy()); - - for (auto& pair : mapped_vector) - { - detail::overlay::enrich_sort( - pair.second, turns, - geometry1, geometry2, - strategy); - } - - // After cleaning up clusters assign the next turns - - for (auto& pair : mapped_vector) - { -#ifdef BOOST_GEOMETRY_DEBUG_ENRICH - std::cout << "ENRICH-assign Ring " << pair.first << std::endl; -#endif - if (is_dissolve) - { - detail::overlay::enrich_adapt(pair.second, turns); - } - - detail::overlay::enrich_assign(pair.second, turns); - } - - if (has_cc) - { - detail::overlay::calculate_remaining_distance(turns); - } - -#ifdef BOOST_GEOMETRY_DEBUG_ENRICH - constexpr bool do_check_graph = true; -#else - constexpr bool do_check_graph = false; -#endif - - if BOOST_GEOMETRY_CONSTEXPR (do_check_graph) - { - detail::overlay::check_graph(turns, target_operation); - } + detail::overlay::enrich_discard_turns(turns, clusters, geometry1, geometry2, strategy); + detail::overlay::enrich_turns(turns, geometry1, geometry2, strategy); } }} // namespace boost::geometry diff --git a/include/boost/geometry/algorithms/detail/overlay/enrichment_info.hpp b/include/boost/geometry/algorithms/detail/overlay/enrichment_info.hpp index e01c13f74..64fcd3fbc 100644 --- a/include/boost/geometry/algorithms/detail/overlay/enrichment_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/enrichment_info.hpp @@ -9,6 +9,7 @@ #ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ENRICHMENT_INFO_HPP #define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ENRICHMENT_INFO_HPP +#include #include @@ -30,46 +31,54 @@ namespace detail { namespace overlay template struct enrichment_info { - inline enrichment_info() - : travels_to_vertex_index(-1) - , travels_to_ip_index(-1) - , next_ip_index(-1) - , startable(true) - , prefer_start(true) - , count_left(0) - , count_right(0) - , rank(-1) - , zone(-1) - , region_id(-1) - , isolated(false) - {} - inline signed_size_type get_next_turn_index() const { - return next_ip_index == -1 ? travels_to_ip_index : next_ip_index; + return travels_to_ip_index; } // vertex to which is free travel after this IP, // so from "segment_index+1" to "travels_to_vertex_index", without IP-s, // can be -1 - signed_size_type travels_to_vertex_index; + signed_size_type travels_to_vertex_index{-1}; // same but now IP index, so "next IP index" but not on THIS segment - signed_size_type travels_to_ip_index; + signed_size_type travels_to_ip_index{-1}; - // index of next IP on this segment, -1 if there is no one - signed_size_type next_ip_index; + bool startable{true}; // Can be used to start a traversal - bool startable; // Can be used to start in traverse - bool prefer_start; // Is preferred as starting point (if true) + // Counts if polygons left/right of this operation. + // Outgoing from this operation: + signed_size_type count_left{-1}; + signed_size_type count_right{-1}; - // Counts if polygons left/right of this operation - std::size_t count_left; - std::size_t count_right; - signed_size_type rank; // in cluster - signed_size_type zone; // open zone, in cluster - signed_size_type region_id; - bool isolated; + // Incoming: + signed_size_type count_left_incoming{-1}; + signed_size_type count_right_incoming{-1}; + + // Set to true if the turn is traversed. + // This is used for one condition. + bool is_traversed{false}; + + // The component_id of the operation. At uu or ii turns, it will + // usually change components (dependent on the constellation). + // This is detected by detect_biconnected_components + signed_size_type component_id{-1}; + + // Rank of this operation in a cluster. It can be used to compare + // (again) two operations originating in the same cluster. + std::size_t rank{0}; + + // For CC turns, the distance ahead to the first side change + using comparable_distance_type = coordinate_type_t; + comparable_distance_type ahead_distance_of_side_change{-1}; + + // For CC turns, the side of the ahead segment. + // Indicated conform side strategies: + // 1 for left + // -1 for right + // 0 for collinear + // -99 for unassigned + int ahead_side{-99}; }; diff --git a/include/boost/geometry/algorithms/detail/overlay/get_properties_ahead.hpp b/include/boost/geometry/algorithms/detail/overlay/get_properties_ahead.hpp new file mode 100644 index 000000000..c873e312c --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/get_properties_ahead.hpp @@ -0,0 +1,183 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GET_PROPERTIES_AHEAD_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GET_PROPERTIES_AHEAD_HPP + +#include +#include +#include +#include + +#if defined(BOOST_GEOMETRY_DEBUG_GET_PROPERTIES_AHEAD) +#include +#endif + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +// Get properties ahead of a turn. This is important for turns marked as cc (continue-continue). +// It walks over the ring (of each operation) into the direction of the next turn, +// as long as the points are collinear. +// It then reports both the collinear (comparable) distance, of the turn to the point where it bend, +// and the side of the next point. So where it bends to. +template +< + bool Reverse1, bool Reverse2, + typename Turns, typename Clusters, + typename Geometry1, typename Geometry2, + typename IntersectionStrategy +> +void get_properties_ahead(Turns& turns, Clusters const& clusters, + Geometry1 const& geometry1, Geometry2 const& geometry2, + IntersectionStrategy const& intersection_strategy) +{ + using point_type = typename Turns::value_type::point_type; + auto const side_strategy = intersection_strategy.side(); + auto const comparable_distance_strategy + = intersection_strategy.comparable_distance(point_type(), point_type()); + + auto walk_ahead = [&](auto const& turn, auto& op) + { + auto current_ring_id = ring_id_by_seg_id(op.seg_id); + auto const& next_turn = turns[op.enriched.travels_to_ip_index]; + auto const next_ring_id0 = ring_id_by_seg_id(next_turn.operations[0].seg_id); + auto const next_op_index = next_ring_id0 == current_ring_id ? 0 : 1; + auto const& next_op = next_turn.operations[next_op_index]; + signed_size_type const point_count_to_next_turn = current_ring_id.source_index == 0 + ? segment_distance(geometry1, op.seg_id, next_op.seg_id) + : segment_distance(geometry2, op.seg_id, next_op.seg_id); + + int offset = 0; + point_type point_of_segment0; + geometry::copy_segment_point(geometry1, geometry2, op.seg_id, + offset++, point_of_segment0); + +#if defined(BOOST_GEOMETRY_DEBUG_GET_PROPERTIES_AHEAD) + std::cout << " EXAMINE AHEAD: ring " << current_ring_id + << " segment: " << op.seg_id.segment_index + << " [ until turn: " << op.enriched.travels_to_ip_index + << " at: " << next_op.seg_id.segment_index + << " count: " << point_count_to_next_turn + << " " << geometry::wkt(next_turn.point) + << " ]" + << std::endl; +#endif + + // It starts with the distance from the turn to the next point on the segment. + + point_type point_of_segment1; + point_type side_changing_point_ahead = turn.point; + bool found = false; + int final_side = 0; + for (auto i = 0; i <= point_count_to_next_turn; i++, offset++) + { + point_type current_point; + if (i == point_count_to_next_turn) + { + current_point = next_turn.point; + } + else + { + geometry::copy_segment_point(geometry1, geometry2, + op.seg_id, offset, current_point); + } + if (i == 0) + { + point_of_segment1 = current_point; + } + int const side = side_strategy.apply(point_of_segment0, point_of_segment1, + current_point); +#if defined(BOOST_GEOMETRY_DEBUG_GET_PROPERTIES_AHEAD) + std::cout << " " << i << " " << geometry::wkt(current_point) + << " side: " << side + << std::endl; +#endif + if (side != 0) + { + found = true; + final_side = side; + break; + } + if (! found) + { + side_changing_point_ahead = current_point; + } + } + + op.enriched.ahead_distance_of_side_change + = comparable_distance_strategy.apply(point_of_segment0, side_changing_point_ahead); + op.enriched.ahead_side = final_side; +#if defined(BOOST_GEOMETRY_DEBUG_GET_PROPERTIES_AHEAD) + std::cout << " result: " << op.enriched.ahead_distance_of_side_change + << " side: " << op.enriched.ahead_side + << std::endl; +#endif + }; + + // First examine all clusters (this includes cc turns) + for (const auto& key_value : clusters) + { + auto const& cluster = key_value.second; + for (auto const& index : cluster.turn_indices) + { + auto& turn = turns[index]; + for (auto& op : turn.operations) + { + if (op.enriched.travels_to_ip_index == -1) + { + continue; + } +#ifdef BOOST_GEOMETRY_DEBUG_GET_PROPERTIES_AHEAD + std::cout << "Cluster " << turn.cluster_id + << " turn " << index + << " " << operation_char(op.operation) + << " travels to " << op.enriched.travels_to_ip_index + << std::endl; +#endif + walk_ahead(turn, op); + } + } + } + + // Then do the remaining cc turns + for (auto& turn : turns) + { + if (turn.discarded || turn.is_clustered() || ! turn.both(operation_continue)) + { + continue; + } + + auto& op0 = turn.operations[0]; + auto& op1 = turn.operations[1]; + + // IMPLEMENTATION NOTE: + // This means: it should be called AFTER enrichment. + // Which is called after assigning counts. + if (op0.enriched.travels_to_ip_index == -1 || op1.enriched.travels_to_ip_index == -1) + { + continue; + } + + walk_ahead(turn, op0); + walk_ahead(turn, op1); + } +} + + +}} // namespace detail::overlay +#endif //DOXYGEN_NO_DETAIL + + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GET_PROPERTIES_AHEAD_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp b/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp index 7795f41e4..2c4543710 100644 --- a/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp @@ -168,6 +168,12 @@ struct base_turn_handler : info.fractions[index].rb; } } + +#if defined(BOOST_GEOMETRY_CONCEPT_FIX_ARRIVAL) + // Override the assignments above, they are sometimes (but not always) wrong. + ti.operations[0].fraction = info.fractions[index].ra; + ti.operations[1].fraction = info.fractions[index].rb; +#endif } template @@ -220,23 +226,22 @@ struct turn_info_verification_functions bool const p_in_range = index_p < range_p.size(); bool const q_in_range = index_q < range_q.size(); - ti.operations[IndexP].remaining_distance - = p_in_range - ? distance_measure(ti.point, range_p.at(index_p)) - : distance_measure_result_type{0}; - ti.operations[IndexQ].remaining_distance - = q_in_range - ? distance_measure(ti.point, range_q.at(index_q)) - : distance_measure_result_type{0}; + std::array distance_measures{}; + if (p_in_range) + { + distance_measures[IndexP] = distance_measure(ti.point, range_p.at(index_p)); + } + if (q_in_range) + { + distance_measures[IndexQ] = distance_measure(ti.point, range_q.at(index_q)); + } if (p_in_range && q_in_range) { // pk/q2 is considered as collinear, but there might be // a tiny measurable difference. If so, use that. // Calculate pk // qj-qk - bool const p_closer - = ti.operations[IndexP].remaining_distance - < ti.operations[IndexQ].remaining_distance; + bool const p_closer = distance_measures[IndexP] < distance_measures[IndexQ]; auto const dm = p_closer ? get_distance_measure(range_q.at(index_q - 1), @@ -723,6 +728,7 @@ struct touch : public base_turn_handler ti.operations[0].operation = operation_blocked; // Q turns right -> union (both independent), // Q turns left -> intersection + // NOTE: the block is suspicious! ti.operations[1].operation = block_q ? operation_blocked : q_turns_left ? operation_intersection : operation_union; @@ -736,6 +742,7 @@ struct touch : public base_turn_handler ui_else_iu(q_turns_left, ti); if (block_q) { + // The block is suspicious! It is sometimes wrong! ti.operations[1].operation = operation_blocked; } return; @@ -777,6 +784,15 @@ struct touch : public base_turn_handler : side_qi_p1 == 1 || side_qk_p1 == 1 ? operation_union : operation_intersection; +#if defined(BOOST_GEOMETRY_CONCEPT_FIX_BLOCK_Q) + // NOTE: this block is suspicious! Override it. + // This concept fix is not complete. + // The exact situation should be adapted. + ti.operations[1].operation = side_qi_p1 == 1 || side_qk_p1 == 1 + ? operation_union + : operation_intersection; +#endif + if (! block_q) { ti.touch_only = true; @@ -1151,16 +1167,6 @@ struct collinear : public base_turn_handler ui_else_iu(product == 1, ti); } - // Calculate remaining distance. If it continues collinearly it is - // measured until the end of the next segment - ti.operations[0].remaining_distance - = side_p == 0 && has_pk - ? fun::distance_measure(ti.point, range_p.at(2)) - : fun::distance_measure(ti.point, range_p.at(1)); - ti.operations[1].remaining_distance - = side_q == 0 && has_qk - ? fun::distance_measure(ti.point, range_q.at(2)) - : fun::distance_measure(ti.point, range_q.at(1)); } }; diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/adapt_operations.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/adapt_operations.hpp new file mode 100644 index 000000000..da1e77460 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/adapt_operations.hpp @@ -0,0 +1,120 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ADAPT_OPERATIONS_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ADAPT_OPERATIONS_HPP + +#include +#include +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +// Changes the operation of a UU turn, following a UX turn, to X (blocked) +// under certain conditions, such that it is not followed +// ADAPT: still necessary for just 2 cases. It should be possible to fix it in get_turn_info instead. +// It happens in issue_1100_rev (union) and in ticket_10108 (sym diff) +// +// Situation sketch (issue_1100 reversed - the non reversed version does not need the workaround). +// +// +-----\ +--------+ +// | \ | | +// | \ | | +// | + UX | +// | | | +// | P | Q | +// | | | +// | | | +// +---------+--------+ +// UU <- This UU turn is wrong, it should be UX +// If it is UU, it will travel right (as designed) and polygon P will +// not be part of the union. +// +template +void block_ux_uu_workaround(Turns& turns) +{ + auto get_op_index = [](auto const& turn, auto&& lambda) + { + for (int i = 0; i < 2; i++) + { + if (lambda(turn.operations[i])) + { + return i; + } + } + return -1; + }; + + for (std::size_t turn_index = 0; turn_index < turns.size(); turn_index++) + { + auto const& turn = turns[turn_index]; + if (turn.is_clustered() + || turn.discarded + || turn.is_self() + || ! turn.combination(operation_blocked, operation_union)) + { + continue; + } + + auto const blocked_index = get_op_index(turn, [](auto const& op) + { + return op.operation == operation_blocked; + }); + + auto const& blocked_op = turn.operations[blocked_index]; + auto const next_index = blocked_op.enriched.travels_to_ip_index; + if (next_index < 0 || next_index >= static_cast(turns.size())) + { + continue; + } + + auto& next_turn = turns[next_index]; + if (next_turn.is_self() || ! next_turn.both(operation_union)) + { + // If it is a self-turn, they will both have the same source, and both are union. + // The "other source" is then ambiguous. + // It might be handled later, but only with extra conditions. + continue; + } + + int const same_source_index = get_op_index(next_turn, [&](auto const& op) + { + return op.seg_id.source_index == blocked_op.seg_id.source_index; + }); + + if (same_source_index < 0) + { + continue; + } + int const other_index = 1 - same_source_index; + auto& opposite_op = next_turn.operations[other_index]; + if (opposite_op.enriched.travels_to_ip_index != static_cast(turn_index)) + { + // It is not opposite + continue; + } + + opposite_op.operation = operation_blocked; +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "BLOCK XU/UU at turns " << turn_index << "/" << next_index << std::endl; +#endif + } +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ADAPT_OPERATIONS_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/assign_clustered_counts.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/assign_clustered_counts.hpp new file mode 100644 index 000000000..05143a982 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/assign_clustered_counts.hpp @@ -0,0 +1,582 @@ + // Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_CLUSTERED_COUNTS_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_CLUSTERED_COUNTS_HPP + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +// Indicating if the segment is incoming (to cluster) or outgoing (from cluster) +enum class connection_type { unknown = -1, incoming = 0, outgoing = 1 }; + +// A turn contains four connections to a cluster: +// For both operations one incoming and one outgoing connection. +// They are stored in a map, with the (segment id, connection type) as key. +struct connection_key +{ + segment_identifier seg_id; + connection_type connection{connection_type::unknown}; + + bool operator<(connection_key const& rhs) const + { + return std::tie(seg_id, connection) < std::tie(rhs.seg_id, rhs.connection); + } +}; + +// Properties of a connection in a property map +template +struct connection_properties +{ + // Assigned at construction time + int position_code{0}; + Point point{}; + Point opposite_point{}; + bool is_shifted{false}; + + // Assigned later + std::size_t zone_count_left{0}; + std::size_t zone_count_right{0}; + std::size_t rank{0}; +}; + +// Convenience structure to store connections in a vector +template +struct connection_item +{ + connection_key key{}; + connection_properties properties{}; +}; + +template +struct is_corresponding_connection +{ + static inline bool apply(connection_key const& left, connection_key const& right) + { + return left.seg_id.source_index == right.seg_id.source_index; + } +}; + +template <> +struct is_corresponding_connection +{ + static inline bool apply(connection_key const& left, connection_key const& right) + { + // For buffer, the source_index is always the same. + // It needs to check where the incoming seg_id is outgoing. + return left.seg_id == right.seg_id; + } +}; + +template +< + bool Reverse1, + bool Reverse2, + overlay_type OverlayType, + typename Geometry1, + typename Geometry2, + typename Turns, + typename Clusters, + typename Strategy +> +struct clustered_count_handler +{ + using point_type = typename Turns::value_type::point_type; + using connection_map_type = std::map>; + using ct_type = typename geometry::select_most_precise + < + geometry::coordinate_type_t, + double + >::type; + + clustered_count_handler(Geometry1 const& m_geometry1, Geometry2 const& m_geometry2, + Turns& m_turns, Clusters& clusters, + Strategy const& strategy) + : m_geometry1(m_geometry1) + , m_geometry2(m_geometry2) + , m_turns(m_turns) + , m_clusters(clusters) + , m_intersection_strategy(strategy) + , m_side_strategy(m_intersection_strategy.side()) + {} + + // Walks over a ring to get the point after the turn. + // The turn can be located at the very end of a segment. + // Therefore it can be the first point on the next segment. + template + bool get_segment_points(Operation const& op, point_type const& point_turn, + point_type& point_from, point_type& point_to) + { + // Use the coordinate type, but if it is too small (e.g. std::int16), use a double + static const ct_type tolerance + = common_approximately_equals_epsilon_multiplier::value(); + + // For a defensive check. + constexpr int max_iterations = 10; + + int from_offset = 0; + do + { + geometry::copy_segment_point(m_geometry1, m_geometry2, + op.seg_id, from_offset--, point_from); + } while (approximately_equals(point_from, point_turn, tolerance) && from_offset > -max_iterations); + + int to_offset = 1; + do + { + geometry::copy_segment_point(m_geometry1, m_geometry2, + op.seg_id, to_offset++, point_to); + } while (approximately_equals(point_to, point_turn, tolerance) && to_offset < max_iterations); + + return from_offset < -1 || to_offset > 2; + } + + void get_connection_map(cluster_info const& cluster, point_type const& point_turn, + connection_map_type& connection_map, point_type& point_origin) + { + auto const get_position_code = [&](point_type const& point) + { + return detail::get_position_code(point_origin, point_turn, point, m_side_strategy); + }; + + auto insert = [&connection_map](auto const& op, connection_type conn, + auto const& point, int position_code, auto const& opposite_point, bool is_shifted) + { + connection_key const key{op.seg_id, conn}; + connection_properties properties{position_code, point, opposite_point, is_shifted}; + connection_map.insert({key, properties}); + }; + + // Add them to the set, which keeps them unique on (seg_id,from/to) + bool first = true; + for (std::size_t index : cluster.turn_indices) + { + auto const& turn = m_turns[index]; + for (auto const& op : turn.operations) + { + point_type point_from, point_to; + bool const is_shifted = get_segment_points(op, point_turn, point_from, point_to); + + if (first) + { + // One of the incoming points is the origin. For the algorithm, + // it does not matter which one. + first = false; + point_origin = point_from; + } + + // Insert the four connections. Insert all operations (even if they are blocked). + insert(op, connection_type::incoming, point_from, get_position_code(point_from), point_to, is_shifted); + insert(op, connection_type::outgoing, point_to, get_position_code(point_to), point_from, is_shifted); + } + } + } + + void sort(point_type const& point_turn, std::vector>& item_vector) + { + auto compare_by_connection = [](auto const& left, auto const& right) + { + // Reversing it gives only one failure in ticket_9942 (difference)... + return left.key.connection > right.key.connection; + }; + + // Compare by side, then by connection. + // Left-side (1) goes before right-side (-1). + // Outgoing (1) goes before incoming (0). + auto compare_by_side = [&](auto const& left, auto const& right) + { + int const side_left = m_side_strategy.apply(point_turn, right.properties.point, left.properties.point); + int const side_right = m_side_strategy.apply(point_turn, left.properties.point, right.properties.point); + + if (side_right == side_left) + { + return compare_by_connection(left, right); + } + return side_left < side_right; + }; + + std::sort(item_vector.begin(), item_vector.end(), + [&](auto const& left, auto const& right) + { + if (left.properties.position_code == right.properties.position_code) + { + if (left.properties.position_code == 1 || left.properties.position_code == 3) + { + // For collinear cases, side is be the same. + return compare_by_connection(left, right); + } + return compare_by_side(left, right); + } + return left.properties.position_code < right.properties.position_code; + }); + } + + // Assign ranks, counter clockwise from the first incoming segment. + void assign_ranks(point_type const& point_turn, + std::vector>& item_vector) + { + std::size_t rank = 0; + item_vector.front().properties.rank = 0; + for (std::size_t i = 0; i + 1 < item_vector.size(); i++) + { + auto const& previous = item_vector[i]; + auto& item = item_vector[i + 1]; + if (item.properties.position_code != previous.properties.position_code) + { + item.properties.rank = ++rank; + continue; + } + + if (item.properties.position_code == 1 || item.properties.position_code == 3) + { + // Collinear cases always get the same rank. + item.properties.rank = rank; + continue; + } + + // If it is collinear, it gets the same rank. + // In other cases the side should be 1 (left) because the connections + // are sorted counter clockwise. + int const side = m_side_strategy.apply(point_turn, previous.properties.point, + item.properties.point); + item.properties.rank = side == 0 ? rank : ++rank; + } + } + + auto get_zone_counts(std::vector> const& item_vector, + std::size_t rank_size) + { + std::size_t const vector_size = item_vector.size(); + auto get_next_item = [&vector_size](std::size_t counter) + { + return (counter + 1) % vector_size; + }; + + auto get_next_zone = [&rank_size](std::size_t counter) + { + return (counter + 1) % rank_size; + }; + + // Each segment occurs twice, once as from, once as to. + // As soon as it comes in, increase the zone count, until it goes out. + std::vector zone_counts(rank_size, 0); + for (std::size_t i = 0; i < item_vector.size(); i++) + { + auto const& item = item_vector[i]; + if (item.key.connection != connection_type::incoming) + { + continue; + } + + // Walk ahead, cyclic, to find the next item with the same seg_id. + // The iteration is a defensive check. + std::size_t end_rank = item.properties.rank; + for (std::size_t j = get_next_item(i), iteration = 0; ; j = get_next_item(j), iteration++) + { + if (iteration > vector_size) + { +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cerr << " *** ERROR: infinite loop in cluster" << std::endl; +#endif + return zone_counts; + } + auto const& next = item_vector[j]; + end_rank = next.properties.rank; + + if (next.key.connection == connection_type::outgoing + && is_corresponding_connection::apply(item.key, next.key)) + { + // Found the corresponding outgoing segment for this incoming segment. + break; + } + } + + // Assign the ring count to the zone_counts in the rank range. + for (std::size_t r = item.properties.rank; r != end_rank; r = get_next_zone(r)) + { + zone_counts[r]++; + } + } + + return zone_counts; + } + + void assign_zone_counts(std::vector>& item_vector, + std::vector const& zone_counts, std::size_t rank_size) + { + // The main goal is to get the number of polygons in the zone_counts. + // The zone_counts on the right side of the seg_ids. + for (auto& item : item_vector) + { + std::size_t const zone_right = + item.key.connection == connection_type::incoming + ? item.properties.rank + : (item.properties.rank + rank_size - 1) % rank_size; + + std::size_t const zone_left = + item.key.connection == connection_type::incoming + ? (item.properties.rank + rank_size - 1) % rank_size + : item.properties.rank; + + item.properties.zone_count_left = zone_counts[zone_left]; + item.properties.zone_count_right = zone_counts[zone_right]; + } + } + + std::size_t get_open_count(std::vector const& zone_counts, std::size_t rank_size) + { + std::size_t result = 0; + for (std::size_t i = 0; i < rank_size; i++) + { + if (zone_counts[i] == 0) + { + result++; + } + } + return result; + } + + // Get the number of spikes in a cluster, and mark them as spikes. + void handle_spikes(cluster_info& cluster, std::vector>& item_vector) + { + for (std::size_t i = 0; i < item_vector.size(); i++) + { + auto const next_i = (i + 1) % item_vector.size(); + if (item_vector[i].key.connection == item_vector[next_i].key.connection) + { + // The connection should be different + continue; + } + auto& current = item_vector[i].properties; + auto& next = item_vector[next_i].properties; + if (current.rank != next.rank + || current.zone_count_left != 1 || current.zone_count_right != 1 + || next.zone_count_left != 1 || next.zone_count_right != 1) + { + // The rank should be the same + // It should have one zone on either side + continue; + } + + if (current.is_shifted || next.is_shifted) { + // The opposite point is shifted. Therefore a spike measurement + // cannot be done. + continue; + } + + // Precise measurement, not from the turn, but over the whole intersecting segment. + // If it is positive (on the left side), it is a spike. + auto const dm = get_distance_measure(current.opposite_point, current.point, next.point, + m_intersection_strategy); + if (dm.measure <= 0) + { + continue; + } + + // There is a small measurable difference. + // Make the cluster open and adapt the counts. + cluster.open_count++; + current.zone_count_left = 0; + next.zone_count_right = 0; + } + } + + void assign_turn_operations(cluster_info const& cluster, + connection_map_type const& connection_map) + { + // Assign the items, per seg_id, back to the outgoing turn operations. + for (std::size_t index : cluster.turn_indices) + { + auto& turn = m_turns[index]; + for (int i = 0; i < 2; i++) + { + auto& op = turn.operations[i]; + connection_key const key{op.seg_id, connection_type::outgoing}; + auto const it = connection_map.find(key); + if (it != connection_map.end()) + { + op.enriched.count_left = it->second.zone_count_left; + op.enriched.count_right = it->second.zone_count_right; + op.enriched.rank = it->second.rank; + } + } + } + } + + // Currently necessary for some failing cases in buffer only, where due to floating point + // precision the i/u turns get unexpected counts for left/right. + // rt_w10, rt_w11, rt_w14, rt_w15 + // The original sides are measured over the two whole intersecting segments. + // The sides in clusters are measured w.r.t. the turn point, which is the point of the first cluster. + // This can differ. + // It should be possible to fix it in another way. + void change_reversed_operations(signed_size_type const cluster_id, cluster_info const& cluster, + point_type const& point_turn, point_type const& point_origin) + { + std::set reversed_indices; + for (std::size_t index : cluster.turn_indices) + { + auto const& turn = m_turns[index]; + if (! turn.combination(operation_union, operation_intersection)) + { + continue; + } + int const union_index = turn.operations[0].operation == operation_union ? 0 : 1; + auto const& op_u = turn.operations[union_index]; + auto const& op_i = turn.operations[1 - union_index]; + if (op_u.enriched.count_left > 0 && op_i.enriched.count_left == 0) + { + reversed_indices.insert(index); + } + } + + if (reversed_indices.empty()) + { + return; + } + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << " *** REVERSED OPERATIONS in cluster: " << cluster_id + << " cluster size: " << cluster.turn_indices.size() + << " reversed: " << reversed_indices.size() + << std::endl; +#endif + for (std::size_t index : cluster.turn_indices) + { + auto& turn = m_turns[index]; + auto& op0 = turn.operations[0]; + auto& op1 = turn.operations[1]; + + bool const is_same_target = op0.enriched.travels_to_ip_index == op1.enriched.travels_to_ip_index; + if (is_same_target && reversed_indices.find(index) != reversed_indices.end()) + { + // Best choice: i/u are nearly collinear, so we can let them continue. + op0.operation = operation_continue; + op1.operation = operation_continue; + + // Also adapt the left/right-counts, both should get the minimum of both. + op0.enriched.count_left = (std::min)(op0.enriched.count_left, op1.enriched.count_left); + op1.enriched.count_left = op0.enriched.count_left; + op0.enriched.count_right = (std::min)(op0.enriched.count_right, op1.enriched.count_right); + op1.enriched.count_right = op0.enriched.count_right; + } + } + } + + template + void apply(signed_size_type const cluster_id, cluster_info& cluster, Visitor& visitor) + { + if (cluster.turn_indices.empty()) + { + // Defensive check. + return; + } + + point_type const& point_turn = m_turns[*cluster.turn_indices.begin()].point; + point_type point_origin; + connection_map_type connection_map; + get_connection_map(cluster, point_turn, connection_map, point_origin); + + // Sort the items by position code, and if equal, by side. + // For this they are copied into a vector. + std::vector> item_vector; + for (auto const& key_value : connection_map) + { + connection_item item; + item.key = key_value.first; + item.properties = key_value.second; + item_vector.push_back(std::move(item)); + } + + sort(point_turn, item_vector); + assign_ranks(point_turn, item_vector); + + auto const rank_size = item_vector.back().properties.rank + 1; + auto const zone_counts = get_zone_counts(item_vector, rank_size); + + assign_zone_counts(item_vector, zone_counts, rank_size); + + cluster.open_count = get_open_count(zone_counts, rank_size); + if (cluster.open_count == 0) + { + handle_spikes(cluster, item_vector); + } + + // Assign the updated properties back to the connection map + for (auto const& item : item_vector) + { + connection_map[item.key] = item.properties; + } + + assign_turn_operations(cluster, connection_map); + change_reversed_operations(cluster_id, cluster, point_turn, point_origin); + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + // List the connections + std::cout << "Cluster " << cluster_id << " size: " << cluster.turn_indices.size() << std::endl; + for (auto const& item : item_vector) + { + std::cout << " " << item.key.seg_id + << " " << (item.key.connection == connection_type::incoming ? " in" : "out") + << " " << item.properties.position_code + << " " << item.properties.rank + << " " << item.properties.zone_count_left + << " " << item.properties.zone_count_right + << std::endl; + } +#endif + + visitor.visit_cluster_connections(cluster_id, m_turns, cluster, item_vector); + } + + template + void apply(Visitor& visitor) + { + for (auto& key_value : m_clusters) + { + auto& cluster = key_value.second; + if (cluster.turn_indices.empty()) + { + continue; + } + + apply(key_value.first, cluster, visitor); + } + } + +private: + Geometry1 const& m_geometry1; + Geometry2 const& m_geometry2; + Turns& m_turns; + Clusters& m_clusters; + Strategy const& m_intersection_strategy; + decltype(m_intersection_strategy.side()) m_side_strategy; +}; + +}} // namespace detail::overlay +#endif //DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_CLUSTER_INFO_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/assign_counts.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/assign_counts.hpp new file mode 100644 index 000000000..f35bd7a1e --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/assign_counts.hpp @@ -0,0 +1,162 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_COUNTS_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_COUNTS_HPP + +#include +#include +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +template +void assign_clustered_self_counts(Turns& turns, Clusters const& clusters) +{ + auto is_self_cluster = [&turns](auto const& cinfo) + { + return std::all_of(cinfo.turn_indices.cbegin(), cinfo.turn_indices.cend(), + [&](auto index) { return turns[index].is_self(); }); + }; + + for (auto const& cluster : clusters) + { + if (! is_self_cluster(cluster.second)) + { + continue; + } + + // If a cluster only contains self-intersections, their previously assigned right counts + // should be adapted, they are within the other geometry, + // and otherwise they were discarded already in handle_self_turns + for (auto index : cluster.second.turn_indices) + { + for (auto& op : turns[index].operations) + { + op.enriched.count_right += 1; + } + } + } +} + +template +void assign_counts(Turn& turn) +{ + using counts_per_op_t = std::pair; + + auto assign_left = [&turn](std::size_t count) + { + for (auto& op : turn.operations) + { + op.enriched.count_left = count; + } + }; + + auto assign_right = [&turn](std::size_t count) + { + for (auto& op : turn.operations) + { + op.enriched.count_right = count; + } + }; + + auto assign_for = [&turn](counts_per_op_t const& op1, counts_per_op_t op2, auto&& assign) + { + for (auto& op : turn.operations) + { + if (op.operation == op1.first) { assign(op.enriched, op1.second); } + else if (op.operation == op2.first) { assign(op.enriched, op2.second); } + } + }; + + auto assign_left_for = [&turn, &assign_for](counts_per_op_t const& op1, counts_per_op_t op2) + { + assign_for(op1, op2, [](auto& enriched, auto count) { enriched.count_left = count; }); + }; + + auto assign_right_for = [&turn, &assign_for](counts_per_op_t const& op1, counts_per_op_t op2) + { + assign_for(op1, op2, [](auto& enriched, auto count) { enriched.count_right = count; }); + }; + + auto assign_left_incoming_for = [&turn, &assign_for](counts_per_op_t const& op1, counts_per_op_t op2) + { + assign_for(op1, op2, [](auto& enriched, auto count) { enriched.count_left_incoming = count; }); + }; + + auto assign_right_incoming_for = [&turn, &assign_for](counts_per_op_t const& op1, counts_per_op_t op2) + { + assign_for(op1, op2, [](auto& enriched, auto count) { enriched.count_right_incoming = count; }); + }; + + if (turn.combination(operation_intersection, operation_union)) + { + assign_left_for({operation_union, 0}, {operation_intersection, 1}); + assign_right_for({operation_union, 1}, {operation_intersection, 2}); + + // For i/u (either originating from a "cross" or from a touch, but the segments cross + // one another), the incoming counts can be assigned. + + // For other operations, this is not trivial (without retrieving the geometry). + // It is only necessary for some collinear cases to see how they arrive at the target. + // If it is not available, distance ahead is used. + assign_left_incoming_for({operation_union, 1}, {operation_intersection, 0}); + assign_right_incoming_for({operation_union, 2}, {operation_intersection, 1}); + } + else if (turn.combination(operation_blocked, operation_union)) + { + assign_left_for({operation_union, 0}, {operation_blocked, 1}); + assign_right(1); + } + else if (turn.combination(operation_blocked, operation_intersection)) + { + assign_left(1); + assign_right_for({operation_blocked, 1}, {operation_intersection, 2}); + } + else if (turn.both(operation_continue)) + { + assign_left(0); + assign_right(2); + } + else if (turn.both(operation_union)) + { + assign_left(0); + assign_right(1); + } + else if (turn.both(operation_intersection)) + { + assign_left(1); + assign_right(2); + } +} + +template +void assign_unclustered_counts(Turns& turns) +{ + for (auto& turn : turns) + { + if (turn.is_clustered() || turn.discarded) + { + continue; + } + assign_counts(turn); + } +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_COUNTS_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/assign_side_counts.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/assign_side_counts.hpp new file mode 100644 index 000000000..98119d8ce --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/assign_side_counts.hpp @@ -0,0 +1,63 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_SIDE_COUNTS_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_SIDE_COUNTS_HPP + +#include +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +template +< + bool Reverse1, + bool Reverse2, + overlay_type OverlayType, + typename Geometry1, + typename Geometry2, + typename Turns, + typename Clusters, + typename IntersectionStrategy, + typename Visitor +> +void assign_side_counts(Geometry1 const& geometry1, Geometry2 const& geometry2, + Turns& turns, Clusters& clusters, + IntersectionStrategy const& intersection_strategy, Visitor& visitor) +{ + clustered_count_handler + < + Reverse1, Reverse2, OverlayType, + Geometry1, Geometry2, + Turns, Clusters, + IntersectionStrategy + > processor(geometry1, geometry2, turns, clusters, intersection_strategy); + + processor.apply(visitor); + + if (OverlayType != overlay_buffer) + { + // Increase right-count for self-intersections. This should not be called for buffers + // (for buffers, all is self-cluster) + assign_clustered_self_counts(turns, clusters); + } + assign_unclustered_counts(turns); +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_ASSIGN_SIDE_COUNTS_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/debug_graph.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/debug_graph.hpp new file mode 100644 index 000000000..a47793366 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/debug_graph.hpp @@ -0,0 +1,112 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DEBUG_GRAPH_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DEBUG_GRAPH_HPP + +#include + +#include +#include + +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +// For debug purposes only +template +void write_graph_viz(std::ostream& out, Turns const& turns, Clusters const& clusters, + Graph const& g, Components const& component, VertexMap const& vertex_map, + bool use_absolute_position = true) +{ + out << "graph A {\n node[shape=\"circle\"]\n"; + + auto add_pos = [&](auto const& point) + { + out << ", pos=\"" << geometry::get<0>(point) << "," << geometry::get<1>(point) << "!\""; + }; + + // List all nodes + for (auto const& vertex_pair : vertex_map) + { + auto const& vertex = vertex_pair.second; + + out << vertex.node_id << "[label=\"" << vertex.node_id << "\""; + if (use_absolute_position) + { + if (vertex.node_id < 0) + { + // Use any point from the cluster + auto it = clusters.find(vertex.node_id); + if (it != clusters.end()) + { + auto const& cluster = it->second; + if (! cluster.turn_indices.empty()) + { + add_pos(turns[*cluster.turn_indices.begin()].point); + } + } + } + else if (vertex.node_id < static_cast(turns.size())) + { + add_pos(turns[vertex.node_id].point); + } + else if (vertex.original_node_id >= 0 && vertex.original_node_id < turns.size()) + { + // It is an extra node. It should be placed somewhere in the neighborhood + // of the connected node. Where depends on the situation, it is currently not worth + // the effort to get that. Just displace it a bit to the lower left. + auto point = turns[vertex.original_node_id].point; + geometry::set<0>(point, geometry::get<0>(point) - 1.0); + geometry::set<1>(point, geometry::get<1>(point) - 1.0); + add_pos(point); + } + } + out << "]\n"; + } + + typename graph_traits::edge_iterator ei, ei_end; + for (boost::tie(ei, ei_end) = edges(g); ei != ei_end; ++ei) + { + auto const source_vertex = source(*ei, g); + auto const target_vertex = target(*ei, g); + auto it_source = vertex_map.find(source_vertex); + auto it_target = vertex_map.find(target_vertex); + if (it_source == vertex_map.end() || it_target == vertex_map.end()) + { + std::cerr << "Edge not found FOR GRAPH_VIZ " + << source_vertex << " -- " << target_vertex + << std::endl; + continue; + } + auto const source_node_id = it_source->second.node_id; + auto const target_node_id = it_target->second.node_id; + + out << source_node_id << " -- " << target_node_id + << "[label=\"" + //<< source_node_id << ".." << target_node_id << " (" + << component[*ei] + // << ")" + << "\"]" + << '\n'; + } + out << "}\n"; +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DEBUG_GRAPH_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/detect_biconnected_components.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/detect_biconnected_components.hpp new file mode 100644 index 000000000..c6416124b --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/detect_biconnected_components.hpp @@ -0,0 +1,276 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DETECT_ARTICULATION_POINTS_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DETECT_ARTICULATION_POINTS_HPP + +#include +#include + +#include +#include +#include +#include +#include + +#include + +#include +#include + +#if ! defined(BOOST_GEOMETRY_OVERLAY_NO_THROW) +#include +#include +#endif + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) +#include +#endif + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +struct vertex_info +{ + signed_size_type node_id{0}; + + set_of_size_t target_vertex_indices; + + bool is_extra{false}; + + // For extra nodes, also store the original node + signed_size_type original_node_id{0}; +}; + +struct state_type +{ + // Using a flatmap changes behavior and cause errors. + // Using an ordered map gives a just a tiny bit of performance improvement, sometimes. + // Maps from vertex to vertex info + std::map vertex_map; + + // Reverse mapping. Every node (turn or cluster) has only ONE vertex, + // but there might be so called "extra" vertices, not associated with a node. + std::map node_to_vertex_index; + + // For each edge, store the segment identifier + std::map, segment_identifier> edge_to_seg_id; + + // Keeps track of vertex index, which must, for Boost.Graph, be consecutive. + // The turn index is not consecutive (because of discarded, and of clusters). + std::size_t vertex_index{0}; + + // For round-trips extra nodes are inserted. + // Round-trips are operations returning to itself, for example in some uu cases. + // They are numbered from turn.size() and up, such that they have a unique positive id. + std::size_t extra_node_id{0}; +}; + +inline void add_edge(signed_size_type source_node_id, signed_size_type target_node_id, + segment_identifier const& seg_id, state_type& state) +{ + // Insert the source and target node (turn or cluster) + auto it_source = state.node_to_vertex_index.find(source_node_id); + if (it_source == state.node_to_vertex_index.end()) + { + it_source = state.node_to_vertex_index.insert({source_node_id, state.vertex_index++}).first; + } + + auto it_target = state.node_to_vertex_index.find(target_node_id); + if (it_target == state.node_to_vertex_index.end()) + { + it_target = state.node_to_vertex_index.insert({target_node_id, state.vertex_index++}).first; + + // Get the accompanying vertex info (might be a new record) + auto& target_vertex_info = state.vertex_map[it_target->second]; + target_vertex_info.node_id = target_node_id; + } + + // Get the accompanying vertex info (might be a new record) + // and store node and the segment id for this edge + auto& vertex_info = state.vertex_map[it_source->second]; + vertex_info.node_id = source_node_id; + state.edge_to_seg_id[{it_source->second, it_target->second}] = seg_id; + + if (target_node_id != source_node_id) + { + // The normal case, Not a round trip + vertex_info.target_vertex_indices.insert(it_target->second); + return; + } + + // For a round trip, add an extra vertex. + // It is not necessary to add them to the node_to_vertex_index, + // because they won't be looked up further. + std::size_t const extra_node_id = state.extra_node_id++; + std::size_t const extra_vertex_index = state.vertex_index++; + + // Store the segment id in both of these edges + auto& extra_vertex_info = state.vertex_map[extra_vertex_index]; + extra_vertex_info.node_id = extra_node_id; + state.edge_to_seg_id[{it_source->second, extra_vertex_index}] = seg_id; + state.edge_to_seg_id[{extra_vertex_index, it_target->second}] = seg_id; + + extra_vertex_info.is_extra = true; + extra_vertex_info.original_node_id = source_node_id; + extra_vertex_info.target_vertex_indices.insert(it_target->second); + + vertex_info.target_vertex_indices.insert(extra_vertex_index); +} + +template +void fill_vertex_map(Turns const& turns, Clusters const& clusters, state_type& state) +{ + std::set edges; + for (auto const& key_value : clusters) + { + // The node id is negative for clusters + auto const cluster_node_id = -key_value.first; + auto const& cluster = key_value.second; + for (std::size_t turn_index : cluster.turn_indices) + { + auto const& turn = turns[turn_index]; + get_target_operations(turns, turn, turn_index, cluster_node_id, edges); + } + } + for (std::size_t i = 0; i < turns.size(); i++) + { + auto const& turn = turns[i]; + if (turn.discarded || turn.is_clustered()) + { + continue; + } + get_target_operations(turns, turn, i, i, edges); + } + for (auto const& edge : edges) + { + add_edge(edge.source_node_id, edge.target_node_id, edge.seg_id, state); + } +} + +// Assigns biconnected components to turns +template +void assign_biconnected_component_ids(Turns& turns, Clusters const& clusters, bool allow_closed, + Graph const& graph, Components const& component, state_type const& state) +{ + auto node_id_from_it = [&state](auto const& it) + { + return it->second.is_extra + ? it->second.original_node_id + : it->second.node_id; + }; + + typename graph_traits::edge_iterator ei, ei_end; + for (boost::tie(ei, ei_end) = edges(graph); ei != ei_end; ++ei) + { + auto it_source = state.vertex_map.find(source(*ei, graph)); + auto it_target = state.vertex_map.find(target(*ei, graph)); + if (it_source == state.vertex_map.end() || it_target == state.vertex_map.end()) + { +#if ! defined(BOOST_GEOMETRY_OVERLAY_NO_THROW) + BOOST_THROW_EXCEPTION(logic_exception("Edge not found in vertex map")); +#endif + continue; + } + + auto const source_node_id = node_id_from_it(it_source); + auto const target_node_id = node_id_from_it(it_target); + auto const edge_seg_id = state.edge_to_seg_id.at({source(*ei, graph), target(*ei, graph)}); + + auto const turn_indices = get_turn_indices_by_node_id(turns, clusters, source_node_id, + allow_closed); + + // Assign the component to all the operations + // going from the source node to the target node. + for (auto const& turn_index : turn_indices) + { + auto& turn = turns[turn_index]; + for (std::size_t j = 0; j < 2; j++) + { + auto& op = turn.operations[j]; + if (op.enriched.travels_to_ip_index < 0) + { + continue; + } + + auto const travels_to_node_id = get_node_id(turns, op.enriched.travels_to_ip_index); + if (travels_to_node_id == target_node_id && op.seg_id == edge_seg_id) + { + op.enriched.component_id = static_cast(component[*ei]); + if (turn.both(operation_continue)) + { + // For cc, always set both operations (only one of them is returned by get_node_id) + auto& other_op = turn.operations[1 - j]; + other_op.enriched.component_id = op.enriched.component_id; + } + } + } + } + } +} + +template +void detect_biconnected_components(Turns& turns, Clusters const& clusters) +{ + using graph_t = boost::adjacency_list + < + boost::vecS, + boost::vecS, + boost::undirectedS, + boost::no_property, + boost::property + >; + + // Mapping to add turns to vertices, count them, and then build the graph. + // (It is convenient if the vertex index is the same as the turn index. + // Therefore the default mapping is made like that, extra vertices + // are added later) + + state_type state; + state.extra_node_id = static_cast(turns.size()); + + fill_vertex_map(turns, clusters, state); + + // Build the graph from the vertices + graph_t graph(state.vertex_map.size()); + for (auto const& key_value : state.vertex_map) + { + auto const vertex_index = key_value.first; + for (auto const target_vertex_index : key_value.second.target_vertex_indices) + { + boost::add_edge(vertex_index, target_vertex_index, graph); + } + } + + edge_component ec; + auto component = boost::get(ec, graph); + biconnected_components(graph, component); + fix_components(component, graph); + + assign_biconnected_component_ids(turns, clusters, + TargetOperation == operation_intersection, + graph, component, state); + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + { + std::ofstream out("/tmp/graph_viz.dot"); + write_graph_viz(out, turns, clusters, graph, component, state.vertex_map); + } +#endif +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DETECT_ARTICULATION_POINTS_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/fill_ring_turn_info_map.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/fill_ring_turn_info_map.hpp new file mode 100644 index 000000000..ebe3f0230 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/fill_ring_turn_info_map.hpp @@ -0,0 +1,54 @@ +// Boost.Geometry (aka GGL, Generic Geometry Library) + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_FILL_RING_TURN_INFO_MAP_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_FILL_RING_TURN_INFO_MAP_HPP + +#include +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +template +void update_ring_turn_info_map(TurnInfoMap& ring_turn_info_map, Turns const& turns) +{ + for (auto const& turn : turns) + { + for (int i = 0; i < 2; i++) + { + auto const& op = turn.operations[i]; + if (op.enriched.is_traversed) + { + ring_identifier const ring_id = ring_id_by_seg_id(op.seg_id); + ring_turn_info_map[ring_id].has_traversed_turn = true; + + if (op.operation == operation_continue) + { + // Continue operations should mark the other operation + // as traversed too + auto const& other_op = turn.operations[1 - i]; + ring_identifier const other_ring_id = ring_id_by_seg_id(other_op.seg_id); + ring_turn_info_map[other_ring_id].has_traversed_turn = true; + } + } + } + } +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_FILL_RING_TURN_INFO_MAP_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/get_tois.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/get_tois.hpp new file mode 100644 index 000000000..9b4be75c4 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/get_tois.hpp @@ -0,0 +1,131 @@ +// Boost.Geometry (aka GGL, Generic Geometry Library) + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GET_TOIS_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GET_TOIS_HPP + +#include +#include +#include +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +template +void add_tois(Turns const& turns, Clusters const& clusters, + signed_size_type source_node_id, signed_size_type target_node_id, + set_of_tois& result) +{ + using is_included = is_operation_included; + + auto get_tois_from_turns = [&](std::size_t const source_index, std::size_t const target_index) + { + for (int i = 0; i < 2; i++) + { + auto const& op = turns[source_index].operations[i]; + if (op.enriched.travels_to_ip_index == static_cast(target_index) + && is_included::apply(op)) + { + turn_operation_id const toi{source_index, i}; + if (is_target_operation(turns, toi)) + { + result.insert(std::move(toi)); + } + } + } + }; + + constexpr bool allow_closed = TargetOperation == operation_intersection; + if (source_node_id >= 0 && target_node_id >= 0) + { + get_tois_from_turns(source_node_id, target_node_id); + } + else if (source_node_id < 0 && target_node_id >= 0) + { + const auto source_turn_indices = get_turn_indices_by_node_id(turns, clusters, + source_node_id, allow_closed); + for (auto source_turn_index : source_turn_indices) + { + get_tois_from_turns(source_turn_index, target_node_id); + } + } + else if (source_node_id >= 0 && target_node_id < 0) + { + const auto target_turn_indices = get_turn_indices_by_node_id(turns, clusters, + target_node_id, allow_closed); + for (auto target_turn_index : target_turn_indices) + { + get_tois_from_turns(source_node_id, target_turn_index); + } + } + else + { + // Combine two sets together, quadratically + const auto source_turn_indices = get_turn_indices_by_node_id(turns, clusters, + source_node_id, allow_closed); + const auto target_turn_indices = get_turn_indices_by_node_id(turns, clusters, + target_node_id, allow_closed); + for (auto source_turn_index : source_turn_indices) + { + for (auto target_turn_index : target_turn_indices) + { + get_tois_from_turns(source_turn_index, target_turn_index); + } + } +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + // This happens, for example, in multi line cases where lines are on top of each other. + // Then there will be many turns, and many clusters with many turns. + // It gives listings like: + // quadratic: -272 -> -273 sizes 55 x 55 = 110 + // It is currently probably not worth to cache these cases, as these are rare cases. + // In the bitset_grids robustness test, the clusters are small and the listings are like: + // quadratic: -5 -> -1 sizes 2 x 3 = 1 + std::cout << "quadratic: " + << source_node_id << " -> " << target_node_id + << " sizes " << source_turn_indices.size() << " x " << target_turn_indices.size() + << " = " << result.size() + << std::endl; +#endif + } +} + +// Variant with one node +template +set_of_tois get_tois(Turns const& turns, Clusters const& clusters, + signed_size_type source_node_id, signed_size_type target_node_id) +{ + set_of_tois result; + add_tois(turns, clusters, source_node_id, target_node_id, result); + return result; +} + +// Variant with multiple target nodes +template +set_of_tois get_tois(Turns const& turns, Clusters const& clusters, + signed_size_type source_node_id, std::set const& target_node_ids) +{ + set_of_tois result; + for (auto const& target : target_node_ids) + { + add_tois(turns, clusters, source_node_id, target, result); + } + return result; +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GET_TOIS_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/graph_util.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/graph_util.hpp new file mode 100644 index 000000000..88c93b61f --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/graph_util.hpp @@ -0,0 +1,62 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_UTIL_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_UTIL_HPP + +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +struct edge_component +{ + using kind = edge_property_tag; +}; + +// It appears that in an undirected graph, the components for two edges are sometimes different. +// It happens a lot in the unit tests, for example in test case "#case_recursive_boxes_93" +// Fix that. To be found out why this is. +template +void fix_components(Components& components, Graph const& g) +{ + typename graph_traits::edge_iterator ei, ei_end; + for (boost::tie(ei, ei_end) = edges(g); ei != ei_end; ++ei) + { + auto& component = components[*ei]; + + auto const source_vertex = source(*ei, g); + auto const target_vertex = target(*ei, g); + + // Get the reverse edge and its component + auto const reverse_edge_pair = edge(target_vertex, source_vertex, g); + if (! reverse_edge_pair.second) + { + continue; + } + + auto& reverse_component = components[reverse_edge_pair.first]; + + if (component != reverse_component) + { + component = reverse_component; + } + } +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_UTIL_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/is_operation_included.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/is_operation_included.hpp new file mode 100644 index 000000000..ec9bac2e2 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/is_operation_included.hpp @@ -0,0 +1,50 @@ +// Boost.Geometry (aka GGL, Generic Geometry Library) + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_IS_OPERATION_INCLUDED_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_IS_OPERATION_INCLUDED_HPP + +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +template +struct is_operation_included {}; + +template <> +struct is_operation_included +{ + template + static bool apply(Operation const& op) + { + return op.enriched.count_right >= 2; + } +}; + +template <> +struct is_operation_included +{ + template + static bool apply(Operation const& op) + { + return op.enriched.count_left == 0; + } +}; + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_IS_OPERATION_INCLUDED_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/is_target_operation.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/is_target_operation.hpp new file mode 100644 index 000000000..5df4e9af9 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/is_target_operation.hpp @@ -0,0 +1,215 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_IS_TARGET_OPERATION_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_IS_TARGET_OPERATION_HPP + +#include +#include +#include + +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +// For continue/continue cases where one of the targets +// is the same as a target of the other target. +// If is_target_ahead_op == true: +// CC turn -------> target_op -----> target_other +// ------------------------> target_other +// In this case, take the target_op +template +std::pair is_cc_target_ahead(Turns const& turns, turn_operation_id const& toi) +{ + auto const& turn = turns[toi.turn_index]; + auto const& op = turn.operations[toi.operation_index]; + auto const& other_op = turn.operations[1 - toi.operation_index]; + + auto const target_op = op.enriched.travels_to_ip_index; + auto const target_other = other_op.enriched.travels_to_ip_index; + + auto const nop_result = std::make_pair(false, false); + + if (target_op < 0 || target_other < 0 || target_op == target_other) + { + return nop_result; + } + + if (turn.is_clustered() + && (turns[target_op].cluster_id == turn.cluster_id + || turns[target_other].cluster_id == turn.cluster_id)) + { + return nop_result; + } + + auto has_target = [](auto const& turn, signed_size_type target) + { + return turn.operations[0].enriched.travels_to_ip_index == target + || turn.operations[1].enriched.travels_to_ip_index == target; + }; + + bool const is_target_ahead_op = has_target(turns[target_op], target_other); + bool const is_target_ahead_other = has_target(turns[target_other], target_op); + if (is_target_ahead_op == is_target_ahead_other) + { + // It is not so that one is the target of the operation of the other, + // or it is the case for both of them (this cannot be handled or + // it does not occur). + return nop_result; + } + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "Decide for turn " << toi.turn_index << " " << toi.operation_index + << " targets: " << target_op + << " / " << target_other + << " clusters: " << turns[target_op].cluster_id + << " / " << turns[target_other].cluster_id + << " via " << std::boolalpha << is_target_ahead_op << " / " << is_target_ahead_other + << std::endl; +#endif + + return std::make_pair(true, is_target_ahead_op); +} + +template +bool is_better_collinear_for_union(Operation const& op, Operation const& other_op, + turn_operation_id const& toi, turn_operation_id const& other_toi) +{ + // Continue, prefer the one having no polygon on the left + if (op.enriched.count_left > 0 && other_op.enriched.count_left == 0) + { + return false; + } + if (op.enriched.count_left == 0 && other_op.enriched.count_left > 0) + { + return true; + } + + // For union the cc target ahead should not be called. + + // In some cases, one goes to a target further, while the other goes to a target closer, + // and that target than goes to that same next target. + + if (op.enriched.ahead_side != other_op.enriched.ahead_side) + { + // If one of them goes left (1), this one is preferred above collinear or right (-1), + // whatever the distance. + // ^ + // (empty) / going left + // / + // >---------------------------- + // \ . + // (polygon) \ going right + // v + // + // The left is also preferred above the other one going collinearly. + // Finally, if one of them is collinear, it is preferred above the one going right. + + return op.enriched.ahead_side > other_op.enriched.ahead_side; + } + + // If both have the same side, the preference depends on which side. + // For a left turn (1), the one with the smallest distance is preferred. + // For a right turn (-1), the one with the largest distance is preferred. + // For collinear (0), it should not matter. + + return + op.enriched.ahead_side == 1 + ? op.enriched.ahead_distance_of_side_change + <= other_op.enriched.ahead_distance_of_side_change + : op.enriched.ahead_distance_of_side_change + >= other_op.enriched.ahead_distance_of_side_change; +} + +// The same for intersection - but it needs turns for the same target ahead check. +template +bool is_better_collinear_for_intersection(Operation const& op, Operation const& other_op, + turn_operation_id const& toi, turn_operation_id const& other_toi, Turns const& turns) +{ + // Continue, prefer the one having no polygon on the left + if (op.enriched.count_right < 2 && other_op.enriched.count_right >= 2) + { + return false; + } + if (op.enriched.count_right >= 0 && other_op.enriched.count_right < 2) + { + return true; + } + + auto const target_ahead = is_cc_target_ahead(turns, toi); + if (target_ahead.first) + { + return target_ahead.second; + } + + return op.enriched.ahead_distance_of_side_change + <= other_op.enriched.ahead_distance_of_side_change; +} + +template +struct is_better_collinear_target {}; + +template <> +struct is_better_collinear_target +{ + template + static bool apply(Operation const& op, Operation const& other_op, + turn_operation_id const& toi, turn_operation_id const& other_toi, Turns const&) + { + return is_better_collinear_for_union(op, other_op, toi, other_toi); + } +}; + +template <> +struct is_better_collinear_target +{ + template + static bool apply(Operation const& op, Operation const& other_op, + turn_operation_id const& toi, turn_operation_id const& other_toi, Turns const& turns) + { + return is_better_collinear_for_intersection(op, other_op, toi, other_toi, turns); + } +}; + +template +bool is_target_operation(Turns const& turns, turn_operation_id const& toi) +{ + auto const& turn = turns[toi.turn_index]; + auto const& op = turn.operations[toi.operation_index]; + if (op.enriched.travels_to_ip_index < 0 + || op.enriched.travels_to_ip_index >= static_cast(turns.size())) + { + return false; + } + if (op.operation == TargetOperation) + { + return true; + } + if (op.operation != operation_continue) + { + return false; + } + + turn_operation_id const other_toi{toi.turn_index, 1 - toi.operation_index}; + auto const& other_op = turn.operations[other_toi.operation_index]; + return is_better_collinear_target + ::apply(op, other_op, toi, other_toi, turns); +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_GRAPH_IS_TARGET_OPERATION_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/node_util.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/node_util.hpp new file mode 100644 index 000000000..3649e1f9b --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/node_util.hpp @@ -0,0 +1,159 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_NODE_UTIL_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_NODE_UTIL_HPP + +#include +#include +#include +#include +#include +#include + +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +using set_of_tois = std::set; +using set_of_size_t = std::set; + +struct edge_info +{ + signed_size_type source_node_id{0}; + signed_size_type target_node_id{0}; + segment_identifier seg_id{}; + + bool operator<(edge_info const& other) const + { + return std::tie(source_node_id, target_node_id, seg_id) + < std::tie(other.source_node_id, other.target_node_id, other.seg_id); + } +}; + +template +set_of_size_t get_turn_indices_by_cluster_id(Turns const& turns, Clusters const& clusters, + signed_size_type cluster_id, bool allow_closed) +{ + set_of_size_t result; + auto it = clusters.find(cluster_id); + if (it == clusters.end()) + { + return result; + } + if (! allow_closed && it->second.open_count == 0) + { + return result; + } + for (std::size_t turn_index : it->second.turn_indices) + { + result.insert(turn_index); + } + return result; +} + +// Returns the node id of the turn: +// - if it is clustered, the negative cluster_id +// - if it is not clustered, the turn index +// - there can also be extra nodes for the round trip (>= turns.size()) +// but they are not returned by this function. +template +signed_size_type get_node_id(Turns const& turns, std::size_t turn_index) +{ + auto const& turn = turns[turn_index]; + return turn.is_clustered() ? -turn.cluster_id : turn_index; +} + +template +set_of_size_t get_turn_indices_by_node_id(Turns const& turns, Clusters const& clusters, + signed_size_type node_id, bool allow_closed) +{ + if (node_id < 0) + { + return get_turn_indices_by_cluster_id(turns, clusters, -node_id, allow_closed); + } + auto const turn_index = static_cast(node_id); + if (turn_index >= turns.size()) + { + // It is 'allowed' to have node_ids larger than the largest turn index (for example extra + // nodes in a graph). But they are not related to turns. + return {}; + } + + auto const& turn = turns[turn_index]; + if (turn.is_clustered()) + { + return get_turn_indices_by_cluster_id(turns, clusters, turn.cluster_id, allow_closed); + } + return {turn_index}; +} + +template +void get_target_operations(Turns const& turns, + typename Turns::value_type const& turn, + std::size_t turn_index, + signed_size_type source_node_id, + std::set& edges) +{ + using is_included = is_operation_included; + for (int j = 0; j < 2; j++) + { + auto const& op = turn.operations[j]; + if (is_included::apply(op) + && is_target_operation(turns, {turn_index, j})) + { + auto const& target_node_id = get_node_id(turns, op.enriched.travels_to_ip_index); + edges.insert({source_node_id, target_node_id, op.seg_id}); + } + } +} + + +// Get the target nodes of a specific component_id only. +template +auto get_target_nodes(Turns const& turns, Clusters const& clusters, + Set const& turn_indices, + signed_size_type component_id) +{ + using is_included = is_operation_included; + + std::set result; + for (auto turn_index : turn_indices) + { + auto const& turn = turns[turn_index]; + if (turn.discarded) + { + continue; + } + + for (int j = 0; j < 2; j++) + { + auto const& op = turn.operations[j]; + if (op.enriched.component_id == component_id + && is_included::apply(op) + && is_target_operation(turns, {turn_index, j})) + { + result.insert(get_node_id(turns, op.enriched.travels_to_ip_index)); + } + } + } + return result; +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_NODE_UTIL_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/select_edge.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/select_edge.hpp new file mode 100644 index 000000000..738473b89 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/select_edge.hpp @@ -0,0 +1,315 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SELECT_EDGE_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SELECT_EDGE_HPP + +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) +#include +#endif + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +template +struct edge_and_side +{ + turn_operation_id toi{0}; + Point point{}; + int side{0}; +}; + +template +< + bool Reverse1, + bool Reverse2, + overlay_type OverlayType, + typename Geometry1, + typename Geometry2, + typename Turns, + typename Clusters, + typename Strategy +> +struct edge_selector +{ +private: + static constexpr operation_type target_operation = operation_from_overlay::value; + using point_type = typename Turns::value_type::point_type; + using edge_type = edge_and_side; + using edges_type = std::vector; + + // Use the coordinate type, but if it is too small (e.g. std::int16), use a double + using coor_type = typename geometry::select_most_precise + < + geometry::coordinate_type_t, + double + >::type; + + // Walks over a ring to get the point after the turn. + // The turn can be located at the very end of a segment. + // Therefore it can be the first point on the next segment. + template + point_type walk_to_point_after_turn(Operation const& op, point_type const& turn_point) const + { + static const coor_type tolerance + = common_approximately_equals_epsilon_multiplier::value(); + int offset = 1; + point_type point; + do + { + geometry::copy_segment_point(m_geometry1, m_geometry2, + op.seg_id, offset, point); + ++offset; + } while (approximately_equals(point, turn_point, tolerance) && offset < 10); + return point; + } + + // Compares and returns true for the left most operation. + // p1 is the point before the current turn. + // p2 is the current turn. + // So (p1, p2) together define the direction of the segment. + bool select_collinear_target_edge(edge_type const& a, edge_type const& b) const + { + auto const& turn_a = m_turns[a.toi.turn_index]; + auto const& turn_b = m_turns[b.toi.turn_index]; + auto const& op_a = turn_a.operations[a.toi.operation_index]; + auto const& op_b = turn_b.operations[b.toi.operation_index]; + + auto const target_a = get_node_id(m_turns, op_a.enriched.travels_to_ip_index); + auto const target_b = get_node_id(m_turns, op_b.enriched.travels_to_ip_index); + + auto const& other_op_a = turn_a.operations[1 - a.toi.operation_index]; + auto const& other_op_b = turn_b.operations[1 - b.toi.operation_index]; + + if (other_op_a.enriched.travels_to_ip_index == -1) + { + return true; + } + if (other_op_b.enriched.travels_to_ip_index == -1) + { + return false; + } + + auto const other_target_a = get_node_id(m_turns, other_op_a.enriched.travels_to_ip_index); + auto const other_target_b = get_node_id(m_turns, other_op_b.enriched.travels_to_ip_index); + + if (target_b == other_target_a || target_b == other_target_b) + { + // The second edge goes via one of the targets of the first + return false; + } + if (target_a == other_target_a || target_a == other_target_b) + { + // Vice versa + return true; + } + + return true; + } + + void report(const char* caption, edges_type const& edges, + point_type const& p1, point_type const& p2) const + { +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << " *** Sorted edges " << caption + << " from " << geometry::wkt(p1) << " to " << geometry::wkt(p2) + << std::endl; + for (auto const& item : edges) + { + auto const& op = m_turns[item.toi.turn_index].operations[item.toi.operation_index]; + std::cout << " -> " << item.toi + << " to " << op.enriched.travels_to_ip_index + << " side: " << item.side + << std::endl; + } +#endif + } + + turn_operation_id select_by_side(edges_type& edges, point_type const& p1, point_type const& p2) const + { + // Select point and calculate side for each edge + auto const side_strategy = m_intersection_strategy.side(); + for (auto& edge : edges) + { + auto const& op = m_turns[edge.toi.turn_index].operations[edge.toi.operation_index]; + edge.point = walk_to_point_after_turn(op, p2); + edge.side = side_strategy.apply(p1, p2, edge.point); + } + + // Sort by side (with respect to segment [p1..p2]) (TEMPORARY: and then by toi) + // Right = -1 will come first. Left = 1 will come last. + // This works for both union and intersection operations, because it should always + // take the right turn (even in uu in buffer/union). + std::sort(edges.begin(), edges.end(), [](auto const& a, auto const& b) + { + return std::tie(a.side, a.toi) < std::tie(b.side, b.toi); + }); + + report("by side", edges, p1, p2); + + if (edges.size() == 1 || (edges.size() > 1 && edges.front().side != edges[1].side)) + { + return edges.front().toi; + } + + if (edges.front().side != edges.back().side) + { + // Remove all edges with different side than the first + auto it = std::find_if(edges.begin() + 1, edges.end(), [&](auto const& item) + { + return item.side != edges.front().side; + }); + edges.erase(it, edges.end()); + } + + if (edges.front().side == 0) + { + // Select for collinearity (it makes no sense to sort on mutual side) + auto compare = [&](edge_type const& a, edge_type const& b) -> bool + { + return select_collinear_target_edge(a, b); + }; + std::sort(edges.begin(), edges.end(), compare); + return edges.front().toi; + } + + // Phase 2, sort by mutual side, of the edges having the front edge's side. + auto compare_one_side = [&](auto const& a, auto const& b) -> bool + { + // Calculating one side is enough. Either both are 0, or they are opposite. + int const side = side_strategy.apply(p2, a.point, b.point); + return side == 1; + }; + + std::sort(edges.begin(), edges.end(), compare_one_side); + + report("by mutual side", edges, p1, p2); + + return edges.front().toi; + } + +public: + + edge_selector(Geometry1 const& m_geometry1, Geometry2 const& m_geometry2, + Turns const& m_turns, Clusters const& clusters, + Strategy const& strategy) + : m_geometry1(m_geometry1) + , m_geometry2(m_geometry2) + , m_turns(m_turns) + , m_clusters(clusters) + , m_intersection_strategy(strategy) + {} + + // Select one operation which is the leftmost or rightmost operation. + // p1 is the point before the current turn. + // p2 is the current turn. + // So (p1, p2) together define the direction of the segment. + turn_operation_id select_target_edge(set_of_tois const& turn_operation_ids, + point_type const& p1, point_type const& p2) const + { + if (turn_operation_ids.empty()) + { + return {}; + } + if (turn_operation_ids.size() == 1) + { + return *turn_operation_ids.begin(); + } + + edges_type edges; + edges.reserve(turn_operation_ids.size()); + for (auto const& toi : turn_operation_ids) + { + edges.emplace_back(edge_type{toi}); + } + + // Verification function for clusters: if it is clustered, all should come from one cluster. + auto assert_one_cluster = [&]() -> bool + { + auto const& turn0 = m_turns[edges[0].toi.turn_index]; + auto const cluster_id = turn0.cluster_id; + for (auto const& toi : turn_operation_ids) + { + auto const& turn = m_turns[toi.turn_index]; + if (turn.cluster_id != cluster_id) + { + return false; + } + } + return true; + }; + + boost::ignore_unused(assert_one_cluster); + + // It often happens there are just two collinear edges. + // If they travel to the same target, take either. + if (edges.size() == 2) + { + auto const& turn0 = m_turns[edges[0].toi.turn_index]; + auto const& turn1 = m_turns[edges[1].toi.turn_index]; + auto const& op0 = turn0.operations[edges[0].toi.operation_index]; + auto const& op1 = turn1.operations[edges[1].toi.operation_index]; + if (op0.operation == operation_continue + && op1.operation == operation_continue + && op0.enriched.travels_to_ip_index == op1.enriched.travels_to_ip_index) + { + return edges.front().toi; + } + + if (target_operation == operation_union + && turn0.is_clustered() + && op0.operation == operation_union + && op1.operation == operation_union + && op0.enriched.rank == op1.enriched.rank) + { + // Because it is clustered, and all operations come from the same cluster, + // the rank can be used, which is more efficient. + BOOST_GEOMETRY_ASSERT(assert_one_cluster()); + + turn_operation_id result; + if (select_toi_for_union(result, op0, op1, edges[0].toi, edges[1].toi, m_turns)) + { + return result; + } + + bool const better = is_better_collinear_for_union( + op0, op1, edges.front().toi, edges.back().toi); + return better ? edges.front().toi : edges.back().toi; + } + } + + return select_by_side(edges, p1, p2); + } + +private: + Geometry1 const& m_geometry1; + Geometry2 const& m_geometry2; + Turns const& m_turns; + Clusters const& m_clusters; + Strategy const& m_intersection_strategy; +}; + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SELECT_EDGE_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/select_toi_by_incoming.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/select_toi_by_incoming.hpp new file mode 100644 index 000000000..789d54e2d --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/select_toi_by_incoming.hpp @@ -0,0 +1,96 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SELECT_TOI_BY_INCOMING_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SELECT_TOI_BY_INCOMING_HPP + +#include + + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +// For two operations from a cluster, having the same target, and having the same rank, +// the outgoing side makes it unclear. This function inspects the target and uses the incoming +// side, which should be more clear. +template +bool select_toi_for_union(turn_operation_id& result, Operation const& op0, Operation const& op1, + turn_operation_id const& toi0, turn_operation_id const& toi1, + Turns const& turns) +{ + if (op0.enriched.travels_to_ip_index != op1.enriched.travels_to_ip_index + || op0.enriched.travels_to_ip_index < 0) + { + // Not the same target + return false; + } + auto const& target_turn = turns[op0.enriched.travels_to_ip_index]; + auto const& target_op0 = target_turn.operations[0]; + auto const& target_op1 = target_turn.operations[1]; + + bool const is_target_for_union0 = target_op0.enriched.count_left_incoming == 0; + bool const is_target_for_union1 = target_op1.enriched.count_left_incoming == 0; + if (is_target_for_union0 == is_target_for_union1) + { + // There is no incoming operation usable for union, or both are the same. + return false; + } + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "SELECT_BY_INCOMING " << toi0 << " vs " << toi1 + << " " << operation_char(op0.operation) << operation_char(op1.operation) + << " traveling to " << op0.enriched.travels_to_ip_index + << std::endl; +#endif + + if (target_op0.seg_id.multi_index == target_op1.seg_id.multi_index) + { + // They have the same ring (should not occur normally, in buffer) + // so they cannot be used for selection. + return false; + } + + if (is_target_for_union0) + { + if (target_op0.seg_id.multi_index == op0.seg_id.multi_index) + { + result = toi0; + return true; + } + if (target_op0.seg_id.multi_index == op1.seg_id.multi_index) + { + result = toi1; + return true; + } + } + else + { + if (target_op1.seg_id.multi_index == op0.seg_id.multi_index) + { + result = toi0; + return true; + } + if (target_op1.seg_id.multi_index == op1.seg_id.multi_index) + { + result = toi1; + return true; + } + } + return false; +} + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SELECT_TOI_BY_INCOMING_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/graph/traverse_graph.hpp b/include/boost/geometry/algorithms/detail/overlay/graph/traverse_graph.hpp new file mode 100644 index 000000000..01cf76dfe --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/graph/traverse_graph.hpp @@ -0,0 +1,437 @@ +// Boost.Geometry (aka GGL, Generic Geometry Library) + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSE_GRAPH_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSE_GRAPH_HPP + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) +#include +#include +#endif + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +template +< + bool Reverse1, + bool Reverse2, + overlay_type OverlayType, + typename Geometry1, + typename Geometry2, + typename Turns, + typename Clusters, + typename Strategy +> +struct traverse_graph +{ + static constexpr operation_type target_operation = operation_from_overlay::value; + static constexpr bool allow_closed = target_operation == operation_intersection; + static constexpr bool is_buffer = OverlayType == overlay_buffer; + + using turn_type = typename boost::range_value::type; + using is_included = is_operation_included; + using point_type = typename turn_type::point_type; + using toi_set = std::set; + + inline traverse_graph(Geometry1 const& geometry1, Geometry2 const& geometry2, + Turns& turns, Clusters const& clusters, + Strategy const& strategy) + : m_edge_selector(geometry1, geometry2, turns, clusters, strategy) + , m_geometry1(geometry1) + , m_geometry2(geometry2) + , m_turns(turns) + , m_clusters(clusters) + , m_strategy(strategy) + { + } + + template + void copy_segments(Ring& ring, turn_operation_id const& toi) const + { + auto const& op = m_turns[toi.turn_index].operations[toi.operation_index]; + auto const to_vertex_index = op.enriched.travels_to_vertex_index; + if (op.seg_id.source_index == 0) + { + geometry::copy_segments(m_geometry1, + op.seg_id, to_vertex_index, + m_strategy, ring); + } + else + { + geometry::copy_segments(m_geometry2, + op.seg_id, to_vertex_index, + m_strategy, ring); + } + + } + + template + void use_vertices(Ring& ring, turn_operation_id const& toi, bool is_round_trip = false) const + { + auto const& op = m_turns[toi.turn_index].operations[toi.operation_index]; + auto const to_vertex_index = op.enriched.travels_to_vertex_index; + + if (to_vertex_index < 0) + { + return; + } + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "At : " << toi << std::endl; +#endif + + + if (op.seg_id.segment_index == to_vertex_index && ! is_round_trip) + { + auto const& next_turn = m_turns[op.enriched.travels_to_ip_index]; + + bool allow = false; + + for (int j = 0; j < 2; j++) + { + auto const& next_op = next_turn.operations[j]; + if (next_op.seg_id == op.seg_id) + { + // It is on the same segment. Determine if it is located before or after + if (next_op.fraction < op.fraction) + { + // It is before, so we can continue + allow = true; + } + } + } + + if (! allow) + { + return; + } + } + + copy_segments(ring, toi); + } + + // Set the turn operation as visited. + void set_visited(turn_operation_id const& toi) + { + // std::cout << "Set visited: " << toi << std::endl; + m_visited_tois.insert(toi); + + // From the same cluster, set other operations with the same segment id, + // going to the same target, as visited as well. + auto const& turn = m_turns[toi.turn_index]; + if (! turn.is_clustered()) + { + return; + } + auto cluster_it = m_clusters.find(turn.cluster_id); + if (cluster_it == m_clusters.end()) + { + return; + } + auto const& cluster = cluster_it->second; + + auto const& op = turn.operations[toi.operation_index]; + + for (std::size_t turn_index : cluster.turn_indices) + { + if (turn_index == toi.turn_index) + { + continue; + } + auto const& other_turn = m_turns[turn_index]; + for (int j = 0; j < 2; j++) + { + auto const& other_op = other_turn.operations[j]; + if (other_op.enriched.travels_to_ip_index == op.enriched.travels_to_ip_index + && other_op.seg_id == op.seg_id) + { + m_visited_tois.insert({turn_index, j}); + } + } + } + } + + template + bool continue_traverse(Ring& ring, + signed_size_type component_id, + signed_size_type start_node_id, + signed_size_type current_node_id) + { + auto const current_turn_indices = get_turn_indices_by_node_id(m_turns, m_clusters, + current_node_id, allow_closed); + + // Any valid node should always deliver at least one turn + BOOST_ASSERT(! current_turn_indices.empty()); + + auto const next_target_nodes = get_target_nodes(m_turns, m_clusters, + current_turn_indices, component_id); + + if (next_target_nodes.empty()) + { +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "Stuck, start: " << start_node_id + << " stuck: " << current_node_id + << " (no targets) " << std::endl; +#endif + return false; + } + + auto const tois = get_tois(m_turns, m_clusters, + current_node_id, next_target_nodes); + + if (tois.empty()) + { + return false; + } + + auto const& turn_point = m_turns[*current_turn_indices.begin()].point; + + auto toi = *tois.begin(); + + if (tois.size() > 1) + { + // Select the best target edge, using the last point of the ring and the turn point + // for side calculations (if any). + toi = m_edge_selector.select_target_edge(tois, ring.back(), turn_point); + } + + if (m_visited_tois.count(toi) > 0 || m_finished_tois.count(toi) > 0) + { +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "ALREADY visited, turn " << toi + << " in {" << current_node_id + << " -> size " << next_target_nodes.size() << "}" << std::endl; +#endif + return false; + } + + detail::overlay::append_no_collinear(ring, turn_point, m_strategy); + + set_visited(toi); + use_vertices(ring, toi); + + auto const& selected_op = m_turns[toi.turn_index].operations[toi.operation_index]; + auto const next_target_node_id = get_node_id(m_turns, + selected_op.enriched.travels_to_ip_index); + if (next_target_node_id == start_node_id) + { +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "Finished at: " << next_target_node_id << std::endl; +#endif + return true; + } + + return continue_traverse(ring, component_id, start_node_id, next_target_node_id); + } + + template + void start_traverse(Rings& rings, point_type const& start_point, + signed_size_type component_id, + signed_size_type start_node_id, + signed_size_type target_node_id) + { + // Select the first toi which is not yet visited and has the requested component. + // If all tois are visited, not having the same component, it is not possible to continue, + // and it returns an invalid toi. + auto select_first_toi = [&](auto const& tois) + { + for (auto const& toi : tois) + { + if (m_finished_tois.count(toi) > 0) + { + // Visited in the meantime + continue; + } + auto const& op = m_turns[toi.turn_index].operations[toi.operation_index]; + if (op.enriched.component_id != component_id) + { + continue; + } + + return toi; + } + return turn_operation_id{0, -1}; + }; + + auto const toi = select_first_toi(get_tois(m_turns, m_clusters, + start_node_id, target_node_id)); + if (toi.operation_index < 0) + { + return; + } + +#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "\n" << "-> Start traversing component " << component_id + << " at: " << toi + << " to " << target_node_id << std::endl; +#endif + + + using ring_type = typename boost::range_value::type; + + constexpr std::size_t min_size + = core_detail::closure::minimum_ring_size + < + geometry::closure::value + >::value; + + ring_type ring; + detail::overlay::append_no_collinear(ring, start_point, m_strategy); + + m_visited_tois.clear(); + set_visited(toi); + + bool const is_round_trip = start_node_id == target_node_id; + use_vertices(ring, toi, is_round_trip); + + // Traverse the graph. If the target is at the start, it is a round trip, + // and it is finished immediately. + // The continuation could fail (no target nodes, or no target edges). + bool const is_finished = is_round_trip + || continue_traverse(ring, component_id, start_node_id, target_node_id); + + if (! is_finished) + { + return; + } + + detail::overlay::append_no_collinear(ring, start_point, m_strategy); + remove_spikes_at_closure(ring, m_strategy); + fix_closure(ring, m_strategy); + + if (geometry::num_points(ring) >= min_size) + { + #if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "Add ring: " << geometry::wkt(ring) << std::endl; + #endif + rings.push_back(std::move(ring)); + } + m_finished_tois.insert(m_visited_tois.begin(), m_visited_tois.end()); + } + + void update_administration() + { + for (auto const& toi : m_finished_tois) + { + auto& op = m_turns[toi.turn_index].operations[toi.operation_index]; + op.enriched.is_traversed = true; + } + } + + template + void iterate(Rings& rings, std::size_t turn_index) + { + auto const& turn = m_turns[turn_index]; + if (turn.discarded) + { + return; + } + auto const source_node_id = get_node_id(m_turns, turn_index); + auto const turn_indices = get_turn_indices_by_node_id(m_turns, m_clusters, + source_node_id, allow_closed); + + for (int j = 0; j < 2; j++) + { + auto const& op = turn.operations[j]; + if (! op.enriched.startable || ! is_included::apply(op)) + { + continue; + } + + turn_operation_id const toi{turn_index, j}; + if (m_finished_tois.count(toi) > 0 + || ! is_target_operation(m_turns, toi)) + { + continue; + } + + auto const component_id = op.enriched.component_id; + auto const target_nodes = get_target_nodes(m_turns, m_clusters, + turn_indices, component_id); + + for (auto const target_node_id : target_nodes) + { + auto const start = std::make_tuple(source_node_id, target_node_id, component_id); + if (m_starts.count(start) > 0) + { + // Don't repeat earlier or finished trials. This speeds up some cases by 1.5x + continue; + } + m_starts.insert(start); + + #if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE_GRAPH) + std::cout << "\n" << "Traversing component " << component_id + << " from " << source_node_id << " to " << target_node_id << std::endl; + #endif + start_traverse(rings, turn.point, component_id, source_node_id, target_node_id); + } + } + } + + template + void iterate(Rings& rings) + { + for (std::size_t i = 0; i < m_turns.size(); i++) + { + iterate(rings, i); + } + + update_administration(); + } + +private: + + edge_selector + < + Reverse1, Reverse2, OverlayType, + Geometry1, Geometry2, + Turns, Clusters, + Strategy + > m_edge_selector; + + Geometry1 const& m_geometry1; + Geometry2 const& m_geometry2; + Turns& m_turns; + Clusters const& m_clusters; + Strategy const& m_strategy; + + // Visited turn operations on currenly traversed ring - they are either + // inserted into the final set, or cleared before the next trial. + toi_set m_visited_tois; + + // Visited turn operations after a ring is added + toi_set m_finished_tois; + + // Keep track of started combinations (either finished, or stuck) + std::set> m_starts; +}; + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSE_GRAPH_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/handle_colocations.hpp b/include/boost/geometry/algorithms/detail/overlay/handle_colocations.hpp index 80c15e36e..d789b7db3 100644 --- a/include/boost/geometry/algorithms/detail/overlay/handle_colocations.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/handle_colocations.hpp @@ -34,7 +34,6 @@ #include #include #include -#include #include #include #include @@ -99,188 +98,6 @@ inline void cleanup_clusters(Turns& turns, Clusters& clusters) remove_clusters(turns, clusters); } -template -inline void discard_colocated_turn(Turn& turn, IndexSet& indices, signed_size_type index) -{ - turn.discarded = true; - // Set cluster id to -1, but don't clear colocated flags - turn.cluster_id = -1; - // To remove it later from clusters - indices.insert(index); -} - -template -inline bool is_interior(segment_identifier const& seg_id) -{ - return Reverse ? seg_id.ring_index == -1 : seg_id.ring_index >= 0; -} - -template -inline bool is_ie_turn(segment_identifier const& ext_seg_0, - segment_identifier const& ext_seg_1, - segment_identifier const& int_seg_0, - segment_identifier const& other_seg_1) -{ - if (ext_seg_0.source_index == ext_seg_1.source_index) - { - // External turn is a self-turn, dont discard internal turn for this - return false; - } - - - // Compares two segment identifiers from two turns (external / one internal) - - // From first turn [0], both are from same polygon (multi_index), - // one is exterior (-1), the other is interior (>= 0), - // and the second turn [1] handles the same ring - - // For difference, where the rings are processed in reversal, all interior - // rings become exterior and vice versa. But also the multi property changes: - // rings originally from the same multi should now be considered as from - // different multi polygons. - // But this is not always the case, and at this point hard to figure out - // (not yet implemented, TODO) - - bool const same_multi0 = ! Reverse0 - && ext_seg_0.multi_index == int_seg_0.multi_index; - - bool const same_multi1 = ! Reverse1 - && ext_seg_1.multi_index == other_seg_1.multi_index; - - boost::ignore_unused(same_multi1); - - return same_multi0 - && same_multi1 - && ! is_interior(ext_seg_0) - && is_interior(int_seg_0) - && ext_seg_1.ring_index == other_seg_1.ring_index; - - // The other way round is tested in another call -} - -template -< - bool Reverse0, bool Reverse1, // Reverse interpretation interior/exterior - typename Turns, - typename Clusters -> -inline void discard_interior_exterior_turns(Turns& turns, Clusters& clusters) -{ - std::set indices_to_remove; - - for (auto& pair : clusters) - { - cluster_info& cinfo = pair.second; - - indices_to_remove.clear(); - - for (auto index : cinfo.turn_indices) - { - auto& turn = turns[index]; - segment_identifier const& seg_0 = turn.operations[0].seg_id; - segment_identifier const& seg_1 = turn.operations[1].seg_id; - - if (! (turn.both(operation_union) - || turn.combination(operation_union, operation_blocked))) - { - // Not a uu/ux, so cannot be colocated with a iu turn - continue; - } - - for (auto interior_index : cinfo.turn_indices) - { - if (index == interior_index) - { - continue; - } - - // Turn with, possibly, an interior ring involved - auto& interior_turn = turns[interior_index]; - segment_identifier const& int_seg_0 = interior_turn.operations[0].seg_id; - segment_identifier const& int_seg_1 = interior_turn.operations[1].seg_id; - - if (is_ie_turn(seg_0, seg_1, int_seg_0, int_seg_1)) - { - discard_colocated_turn(interior_turn, indices_to_remove, interior_index); - } - if (is_ie_turn(seg_1, seg_0, int_seg_1, int_seg_0)) - { - discard_colocated_turn(interior_turn, indices_to_remove, interior_index); - } - } - } - - // Erase from the indices (which cannot be done above) - for (auto index : indices_to_remove) - { - cinfo.turn_indices.erase(index); - } - } -} - -template -< - overlay_type OverlayType, - typename Turns, - typename Clusters -> -inline void set_colocation(Turns& turns, Clusters const& clusters) -{ - for (auto const& pair : clusters) - { - cluster_info const& cinfo = pair.second; - - bool both_target = false; - for (auto index : cinfo.turn_indices) - { - auto const& turn = turns[index]; - if (turn.both(operation_from_overlay::value)) - { - both_target = true; - break; - } - } - - if (both_target) - { - for (auto index : cinfo.turn_indices) - { - auto& turn = turns[index]; - turn.has_colocated_both = true; - } - } - } -} - -template -< - typename Turns, - typename Clusters -> -inline void check_colocation(bool& has_blocked, - signed_size_type cluster_id, Turns const& turns, Clusters const& clusters) -{ - using turn_type = typename boost::range_value::type; - - has_blocked = false; - - auto mit = clusters.find(cluster_id); - if (mit == clusters.end()) - { - return; - } - - cluster_info const& cinfo = mit->second; - - for (auto index : cinfo.turn_indices) - { - turn_type const& turn = turns[index]; - if (turn.any_blocked()) - { - has_blocked = true; - } - } -} template < @@ -302,213 +119,12 @@ inline void assign_cluster_ids(Turns& turns, Clusters const& clusters) } } -// Checks colocated turns and flags combinations of uu/other, possibly a -// combination of a ring touching another geometry's interior ring which is -// tangential to the exterior ring - -// This function can be extended to replace handle_tangencies: at each -// colocation incoming and outgoing vectors should be inspected - -template -< - bool Reverse1, bool Reverse2, - overlay_type OverlayType, - typename Geometry0, - typename Geometry1, - typename Turns, - typename Clusters -> -inline bool handle_colocations(Turns& turns, Clusters& clusters) +// Get clusters and assign their ids +template +inline void handle_colocations(Turns& turns, Clusters& clusters) { - static const detail::overlay::operation_type target_operation - = detail::overlay::operation_from_overlay::value; - get_clusters(turns, clusters); - - if (clusters.empty()) - { - return false; - } - assign_cluster_ids(turns, clusters); - - // Get colocated information here, and not later, to keep information - // on turns which are discarded afterwards - set_colocation(turns, clusters); - - if BOOST_GEOMETRY_CONSTEXPR (target_operation == operation_intersection) - { - discard_interior_exterior_turns - < - do_reverse::value>::value != Reverse1, - do_reverse::value>::value != Reverse2 - >(turns, clusters); - } - - // There might be clusters having only one turn, if the rest is discarded - // This is cleaned up later, after gathering the properties. - -#if defined(BOOST_GEOMETRY_DEBUG_HANDLE_COLOCATIONS) - std::cout << "*** Colocations " << map.size() << std::endl; - for (auto const& kv : map) - { - std::cout << kv.first << std::endl; - for (auto const& toi : kv.second) - { - detail::debug::debug_print_turn(turns[toi.turn_index]); - std::cout << std::endl; - } - } -#endif - - return true; -} - -template -< - typename Sbs, - typename Point, - typename Turns, - typename Geometry1, - typename Geometry2 -> -inline bool fill_sbs(Sbs& sbs, Point& turn_point, - cluster_info const& cinfo, - Turns const& turns, - Geometry1 const& geometry1, Geometry2 const& geometry2) -{ - if (cinfo.turn_indices.empty()) - { - return false; - } - - bool first = true; - for (auto turn_index : cinfo.turn_indices) - { - auto const& turn = turns[turn_index]; - if (first) - { - turn_point = turn.point; - } - for (int i = 0; i < 2; i++) - { - sbs.add(turn, turn.operations[i], turn_index, i, geometry1, geometry2, first); - first = false; - } - } - return true; -} - -template -< - bool Reverse1, bool Reverse2, - overlay_type OverlayType, - typename Turns, - typename Clusters, - typename Geometry1, - typename Geometry2, - typename Strategy -> -inline void gather_cluster_properties(Clusters& clusters, Turns& turns, - operation_type for_operation, - Geometry1 const& geometry1, Geometry2 const& geometry2, - Strategy const& strategy) -{ - using turn_type = typename boost::range_value::type; - using point_type = typename turn_type::point_type; - using turn_operation_type = typename turn_type::turn_operation_type; - - // Define sorter, sorting counter-clockwise such that polygons are on the right side - using sbs_type = sort_by_side::side_sorter - < - Reverse1, Reverse2, OverlayType, point_type, Strategy, std::less - >; - - for (auto& pair : clusters) - { - cluster_info& cinfo = pair.second; - - sbs_type sbs(strategy); - point_type turn_point; // should be all the same for all turns in cluster - if (! fill_sbs(sbs, turn_point, cinfo, turns, geometry1, geometry2)) - { - continue; - } - - sbs.apply(turn_point); - - sbs.find_open(); - sbs.assign_zones(for_operation); - - cinfo.open_count = sbs.open_count(for_operation); - - // Determine spikes - cinfo.spike_count = 0; - for (std::size_t i = 0; i + 1 < sbs.m_ranked_points.size(); i++) - { - auto const& current = sbs.m_ranked_points[i]; - auto const& next = sbs.m_ranked_points[i + 1]; - if (current.rank == next.rank - && current.direction == detail::overlay::sort_by_side::dir_from - && next.direction == detail::overlay::sort_by_side::dir_to) - { - // It leaves, from cluster point, and immediately returns. - cinfo.spike_count += 1; - } - } - - bool const set_startable = OverlayType != overlay_dissolve; - - // Unset the startable flag for all 'closed' zones. This does not - // apply for self-turns, because those counts are not from both - // polygons - for (std::size_t i = 0; i < sbs.m_ranked_points.size(); i++) - { - typename sbs_type::rp const& ranked = sbs.m_ranked_points[i]; - turn_type& turn = turns[ranked.turn_index]; - turn_operation_type& op = turn.operations[ranked.operation_index]; - - if (set_startable - && for_operation == operation_union - && cinfo.open_count == 0) - { - op.enriched.startable = false; - } - - if (ranked.direction != sort_by_side::dir_to) - { - continue; - } - - op.enriched.count_left = ranked.count_left; - op.enriched.count_right = ranked.count_right; - op.enriched.rank = ranked.rank; - op.enriched.zone = ranked.zone; - - if (! set_startable) - { - continue; - } - - if BOOST_GEOMETRY_CONSTEXPR (OverlayType == overlay_difference) - { - if (is_self_turn(turn)) - { - // TODO: investigate - continue; - } - } - - if ((for_operation == operation_union - && ranked.count_left != 0) - || (for_operation == operation_intersection - && ranked.count_right != 2)) - { - op.enriched.startable = false; - } - } - - } } diff --git a/include/boost/geometry/algorithms/detail/overlay/handle_self_turns.hpp b/include/boost/geometry/algorithms/detail/overlay/handle_self_turns.hpp index 3d7ea5eb3..29f9bf695 100644 --- a/include/boost/geometry/algorithms/detail/overlay/handle_self_turns.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/handle_self_turns.hpp @@ -52,6 +52,22 @@ struct check_within }; +template <> +struct check_within +{ + template + < + typename Turn, typename Geometry0, typename Geometry1, + typename UmbrellaStrategy + > + static inline + bool apply(Turn const& turn, Geometry0 const& geometry0, + Geometry1 const& geometry1, UmbrellaStrategy const& strategy) + { + return false; + } +}; + template <> struct check_within { diff --git a/include/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp b/include/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp index 35c919255..ee9a2fac8 100644 --- a/include/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp @@ -154,7 +154,6 @@ struct intersection_of_linestring_with_areal << " at " << op.seg_id << " meth: " << method_char(turn.method) << " op: " << operation_char(op.operation) - << " vis: " << visited_char(op.visited) << " of: " << operation_char(turn.operations[0].operation) << operation_char(turn.operations[1].operation) << " " << geometry::wkt(turn.point) diff --git a/include/boost/geometry/algorithms/detail/overlay/less_by_segment_ratio.hpp b/include/boost/geometry/algorithms/detail/overlay/less_by_segment_ratio.hpp index 6f595d332..46b38f0a1 100644 --- a/include/boost/geometry/algorithms/detail/overlay/less_by_segment_ratio.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/less_by_segment_ratio.hpp @@ -24,7 +24,9 @@ #include #include -#include +#include +#include +#include #include namespace boost { namespace geometry @@ -46,14 +48,18 @@ struct indexed_turn_operation // use pointers to avoid copies, const& is not possible because of usage in vector segment_identifier const* other_seg_id; // segment id of other segment of intersection of two segments TurnOperation const* subject; + bool discarded{false}; + bool skip{false}; inline indexed_turn_operation(std::size_t ti, std::size_t oi, TurnOperation const& sub, - segment_identifier const& oid) + segment_identifier const& oid, + bool dc = false) : turn_index(ti) , operation_index(oi) , other_seg_id(&oid) , subject(boost::addressof(sub)) + , discarded(dc) {} }; diff --git a/include/boost/geometry/algorithms/detail/overlay/overlay.hpp b/include/boost/geometry/algorithms/detail/overlay/overlay.hpp index 04a95f134..037886c6a 100644 --- a/include/boost/geometry/algorithms/detail/overlay/overlay.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/overlay.hpp @@ -24,10 +24,13 @@ #include #include +#include #include #include #include +#include #include +#include #include #include #include @@ -66,12 +69,12 @@ struct overlay_null_visitor template void visit_clusters(Clusters const& , Turns const& ) {} - template - void visit_traverse(Turns const& , Turn const& , Operation const& , char const*) - {} + template + inline void visit_cluster_connections(signed_size_type cluster_id, + Turns const& turns, Cluster const& cluster, Connections const& connections) {} template - void visit_traverse_reject(Turns const& , Turn const& , Operation const& , traverse_error_type ) + void visit_traverse(Turns const& , Turn const& , Operation const& , char const*) {} template @@ -98,9 +101,6 @@ inline void get_ring_turn_info(TurnInfoMap& turn_info_map, Turns const& turns, C for (auto const& turn : turns) { - bool cluster_checked = false; - bool has_blocked = false; - if (turn.discarded && (turn.method == method_start || is_self_turn(turn))) { // Discarded self-turns or start turns don't need to block the ring @@ -113,15 +113,15 @@ inline void get_ring_turn_info(TurnInfoMap& turn_info_map, Turns const& turns, C auto const& other_op = turn.operations[1 - i]; ring_identifier const ring_id = ring_id_by_seg_id(op.seg_id); + // The next condition is necessary for just two test cases. + // TODO: fix it in get_turn_info // If the turn (one of its operations) is used during traversal, // and it is an intersection or difference, it cannot be set to blocked. // This is a rare case, related to floating point precision, // and can happen if there is, for example, only one start turn which is // used to traverse through one of the rings (the other should be marked // as not traversed, but neither blocked). - bool const can_block - = is_union - || ! (op.visited.finalized() || other_op.visited.finalized()); + bool const can_block = is_union || ! (op.enriched.is_traversed || other_op.enriched.is_traversed); if (! is_self_turn(turn) && can_block) { @@ -139,24 +139,15 @@ inline void get_ring_turn_info(TurnInfoMap& turn_info_map, Turns const& turns, C continue; } - // Check information in colocated turns - if (! cluster_checked && turn.is_clustered()) - { - check_colocation(has_blocked, turn.cluster_id, turns, clusters); - cluster_checked = true; - } - // Block rings where any other turn is blocked, // and (with exceptions): i for union and u for intersection // Exceptions: don't block self-uu for intersection // don't block self-ii for union // don't block (for union) i/u if there is an self-ii too - if (has_blocked - || (op.operation == opposite_operation + if (op.operation == opposite_operation && can_block - && ! turn.has_colocated_both && ! (turn.both(opposite_operation) - && is_self_turn(turn)))) + && is_self_turn(turn))) { turn_info_map[ring_id].has_blocked_turn = true; } @@ -263,8 +254,6 @@ struct overlay cluster_info >; - constexpr operation_type target_operation = operation_from_overlay::value; - turn_container_type turns; detail::get_turns::no_interrupt_policy policy; @@ -295,33 +284,40 @@ struct overlay #endif cluster_type clusters; - std::map turn_info_per_ring; // Handle colocations, gathering clusters and (below) their properties. - detail::overlay::handle_colocations - < - Reverse1, Reverse2, OverlayType, Geometry1, Geometry2 - >(turns, clusters); + detail::overlay::handle_colocations(turns, clusters); - // Gather cluster properties (using even clusters with - // discarded turns - for open turns) - detail::overlay::gather_cluster_properties - < - Reverse1, - Reverse2, - OverlayType - >(clusters, turns, target_operation, geometry1, geometry2, strategy); - geometry::enrich_intersection_points( + detail::overlay::enrich_discard_turns( turns, clusters, geometry1, geometry2, strategy); + detail::overlay::enrich_turns( + turns, geometry1, geometry2, strategy); + visitor.visit_turns(2, turns); - visitor.visit_clusters(clusters, turns); + detail::overlay::colocate_clusters(clusters, turns); + + // AssignCounts should be called: + // * after "colocate_clusters" + // * and "colocate_clusters" after "enrich_discard_turns" + // because assigning side counts needs cluster centroids. + // + // For BUFFER - it is called before, to be able to block closed clusters + // before enrichment. + + assign_side_counts + < + Reverse1, Reverse2, OverlayType + >(geometry1, geometry2, turns, clusters, strategy, visitor); + + get_properties_ahead(turns, clusters, geometry1, geometry2, strategy); // Traverse through intersection/turn points and create rings of them. // These rings are always in clockwise order. // In CCW polygons they are marked as "to be reversed" below. + std::map turn_info_per_ring; ring_container_type rings; traverse::apply ( @@ -332,6 +328,8 @@ struct overlay clusters, visitor ); + + visitor.visit_clusters(clusters, turns); visitor.visit_turns(3, turns); get_ring_turn_info(turn_info_per_ring, turns, clusters); diff --git a/include/boost/geometry/algorithms/detail/overlay/segment_identifier.hpp b/include/boost/geometry/algorithms/detail/overlay/segment_identifier.hpp index 4d6c9fc02..279db45b3 100644 --- a/include/boost/geometry/algorithms/detail/overlay/segment_identifier.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/segment_identifier.hpp @@ -76,13 +76,11 @@ struct segment_identifier #if defined(BOOST_GEOMETRY_DEBUG_SEGMENT_IDENTIFIER) friend std::ostream& operator<<(std::ostream &os, segment_identifier const& seg_id) { - os - << "s:" << seg_id.source_index - << ", v:" << seg_id.segment_index // v:vertex because s is used for source - ; - if (seg_id.ring_index >= 0) os << ", r:" << seg_id.ring_index; + os << "g:" << seg_id.source_index; // ('geometry' i/o source) if (seg_id.multi_index >= 0) os << ", m:" << seg_id.multi_index; if (seg_id.piece_index >= 0) os << ", p:" << seg_id.piece_index; + os << ", r:" << seg_id.ring_index; + os << ", s:" << seg_id.segment_index; return os; } #endif diff --git a/include/boost/geometry/algorithms/detail/overlay/sort_by_side.hpp b/include/boost/geometry/algorithms/detail/overlay/sort_by_side.hpp deleted file mode 100644 index 5148fa2e4..000000000 --- a/include/boost/geometry/algorithms/detail/overlay/sort_by_side.hpp +++ /dev/null @@ -1,746 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) - -// Copyright (c) 2015 Barend Gehrels, Amsterdam, the Netherlands. -// Copyright (c) 2017-2023 Adam Wulkiewicz, Lodz, Poland. - -// This file was modified by Oracle on 2017-2023. -// Modifications copyright (c) 2017-2023 Oracle and/or its affiliates. - -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SORT_BY_SIDE_HPP -#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SORT_BY_SIDE_HPP - -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -namespace boost { namespace geometry -{ - -#ifndef DOXYGEN_NO_DETAIL -namespace detail { namespace overlay { namespace sort_by_side -{ - -// From means: from intersecting-segment-begin-point to cluster -// To means: from cluster to intersecting-segment-end-point -enum direction_type { dir_unknown = -1, dir_from = 0, dir_to = 1 }; - -using rank_type = signed_size_type; - -// Point-wrapper, adding some properties -template -struct ranked_point -{ - ranked_point(Point const& p, signed_size_type ti, int oi, - direction_type d, operation_type op, segment_identifier const& si) - : point(p) - , turn_index(ti) - , operation_index(oi) - , direction(d) - , operation(op) - , seg_id(si) - {} - - using point_type = Point; - - Point point; - rank_type rank{0}; - signed_size_type zone{-1}; // index of closed zone, in uu turn there would be 2 zones - signed_size_type turn_index{-1}; - int operation_index{-1}; // 0,1 - direction_type direction{dir_unknown}; - - // The number of polygons on the left side - std::size_t count_left{0}; - - // The number of polygons on the right side - std::size_t count_right{0}; - - operation_type operation{operation_none}; - segment_identifier seg_id; -}; - -struct less_by_turn_index -{ - template - inline bool operator()(T const& first, T const& second) const - { - return std::tie(first.turn_index, first.index) - < std::tie(second.turn_index, second.index); - } -}; - -struct less_by_index -{ - template - inline bool operator()(T const& first, T const& second) const - { - // First order by direction (from/to) - // Then by turn index - // This can also be the same (for example in buffer), but seg_id is - // never the same - // (Length might be considered too) - return std::tie(first.direction, first.turn_index, first.seg_id) - < std::tie(second.direction, second.turn_index, second.seg_id); - } -}; - -struct less_false -{ - template - inline bool operator()(T const&, T const& ) const - { - return false; - } -}; - -template -struct less_by_side -{ - less_by_side(PointOrigin const& p1, PointTurn const& p2, Strategy const& strategy) - : m_origin(p1) - , m_turn_point(p2) - , m_strategy(strategy) - {} - - template - inline bool operator()(T const& first, T const& second) const - { - using cs_tag = typename Strategy::cs_tag; - - LessOnSame on_same; - Compare compare; - - auto const side_strategy = m_strategy.side(); - int const side_first = side_strategy.apply(m_origin, m_turn_point, first.point); - int const side_second = side_strategy.apply(m_origin, m_turn_point, second.point); - - if (side_first == 0 && side_second == 0) - { - // Both collinear. They might point into different directions: <------*------> - // If so, order the one going backwards as the very first. - - int const first_code = direction_code(m_origin, m_turn_point, first.point); - int const second_code = direction_code(m_origin, m_turn_point, second.point); - - // Order by code, backwards first, then forward. - return first_code != second_code - ? first_code < second_code - : on_same(first, second) - ; - } - else if (side_first == 0 - && direction_code(m_origin, m_turn_point, first.point) == -1) - { - // First collinear and going backwards. - // Order as the very first, so return always true - return true; - } - else if (side_second == 0 - && direction_code(m_origin, m_turn_point, second.point) == -1) - { - // Second is collinear and going backwards - // Order as very last, so return always false - return false; - } - - // They are not both collinear - - if (side_first != side_second) - { - return compare(side_first, side_second); - } - - // They are both left, both right, and/or both collinear (with each other and/or with p1,p2) - // Check mutual side - int const side_second_wrt_first = side_strategy.apply(m_turn_point, first.point, second.point); - - if (side_second_wrt_first == 0) - { - return on_same(first, second); - } - - int const side_first_wrt_second = side_strategy.apply(m_turn_point, second.point, first.point); - if (side_second_wrt_first != -side_first_wrt_second) - { - // (FP) accuracy error in side calculation, the sides are not opposite. - // In that case they can be handled as collinear. - // If not, then the sort-order might not be stable. - return on_same(first, second); - } - - // Both are on same side, and not collinear - // Union: return true if second is right w.r.t. first, so -1, - // so other is 1. union has greater as compare functor - // Intersection: v.v. - return compare(side_first_wrt_second, side_second_wrt_first); - } - -private : - PointOrigin const& m_origin; - PointTurn const& m_turn_point; - - // Umbrella strategy containing side strategy - Strategy const& m_strategy; -}; - -// Sorts vectors in counter clockwise order (by default) -// Purposes: -// - from one entry vector, find the next exit vector -// - find the open counts -// - find zones -template -< - bool Reverse1, - bool Reverse2, - overlay_type OverlayType, - typename Point, - typename Strategy, - typename Compare -> -struct side_sorter -{ - using rp = ranked_point; - -private : - struct include_union - { - inline bool operator()(rp const& ranked_point) const - { - // New candidate if there are no polygons on left side, - // but there are on right side - return ranked_point.count_left == 0 - && ranked_point.count_right > 0; - } - }; - - struct include_intersection - { - inline bool operator()(rp const& ranked_point) const - { - // New candidate if there are two polygons on right side, - // and less on the left side - return ranked_point.count_left < 2 - && ranked_point.count_right >= 2; - } - }; - -public : - side_sorter(Strategy const& strategy) - : m_origin_count(0) - , m_origin_segment_distance(0) - , m_strategy(strategy) - {} - - template - void add_segment_from(signed_size_type turn_index, int op_index, - Point const& point_from, - Operation const& op, - bool is_origin) - { - m_ranked_points.push_back(rp(point_from, turn_index, op_index, - dir_from, op.operation, op.seg_id)); - if (is_origin) - { - m_origin = point_from; - m_origin_count++; - } - } - - template - void add_segment_to(signed_size_type turn_index, int op_index, - Point const& point_to, - Operation const& op) - { - m_ranked_points.push_back(rp(point_to, turn_index, op_index, - dir_to, op.operation, op.seg_id)); - } - - template - void add_segment(signed_size_type turn_index, int op_index, - Point const& point_from, Point const& point_to, - Operation const& op, bool is_origin) - { - // The segment is added in two parts (sub-segment). - // In picture: - // - // from -----> * -----> to - // - // where * means: cluster point (intersection point) - // from means: start point of original segment - // to means: end point of original segment - // So from/to is from the perspective of the segment. - // From the perspective of the cluster, it is the other way round - // (from means: from-segment-to-cluster, to means: from-cluster-to-segment) - add_segment_from(turn_index, op_index, point_from, op, is_origin); - add_segment_to(turn_index, op_index, point_to, op); - } - - template - static Point walk_over_ring(Operation const& op, int offset, - Geometry1 const& geometry1, - Geometry2 const& geometry2) - { - Point point; - geometry::copy_segment_point(geometry1, geometry2, op.seg_id, offset, point); - return point; - } - - template - Point add(Turn const& turn, Operation const& op, signed_size_type turn_index, int op_index, - Geometry1 const& geometry1, - Geometry2 const& geometry2, - bool is_origin) - { - Point point_from, point2, point3; - geometry::copy_segment_points(geometry1, geometry2, - op.seg_id, point_from, point2, point3); - Point point_to = op.fraction.is_one() ? point3 : point2; - - // If the point is in the neighbourhood (the limit is arbitrary), - // then take a point (or more) further back. - // The limit of offset avoids theoretical infinite loops. - // In practice it currently walks max 1 point back in all cases. - // Use the coordinate type, but if it is too small (e.g. std::int16), use a double - using ct_type = typename geometry::select_most_precise - < - geometry::coordinate_type_t, - double - >::type; - - static auto const tolerance - = common_approximately_equals_epsilon_multiplier::value(); - - int offset = 0; - while (approximately_equals(point_from, turn.point, tolerance) - && offset > -10) - { - point_from = walk_over_ring(op, --offset, geometry1, geometry2); - } - - // Similarly for the point_to, walk forward - offset = 0; - while (approximately_equals(point_to, turn.point, tolerance) - && offset < 10) - { - point_to = walk_over_ring(op, ++offset, geometry1, geometry2); - } - - add_segment(turn_index, op_index, point_from, point_to, op, is_origin); - - return point_from; - } - - template - void add(Turn const& turn, - Operation const& op, signed_size_type turn_index, int op_index, - segment_identifier const& departure_seg_id, - Geometry1 const& geometry1, - Geometry2 const& geometry2, - bool is_departure) - { - auto const potential_origin = add(turn, op, turn_index, op_index, geometry1, geometry2, false); - - if (is_departure) - { - bool const is_origin - = op.seg_id.source_index == departure_seg_id.source_index - && op.seg_id.ring_index == departure_seg_id.ring_index - && op.seg_id.multi_index == departure_seg_id.multi_index; - - if (is_origin) - { - signed_size_type const sd - = departure_seg_id.source_index == 0 - ? segment_distance(geometry1, departure_seg_id, op.seg_id) - : segment_distance(geometry2, departure_seg_id, op.seg_id); - - if (m_origin_count == 0 || sd < m_origin_segment_distance) - { - m_origin = potential_origin; - m_origin_segment_distance = sd; - } - m_origin_count++; - } - } - } - - template - void apply(PointTurn const& turn_point) - { - // We need three compare functors: - // 1) to order clockwise (union) or counter clockwise (intersection) - // 2) to order by side, resulting in unique ranks for all points - // 3) to order by side, resulting in non-unique ranks - // to give colinear points - - // Sort by side and assign rank - less_by_side less_unique(m_origin, turn_point, m_strategy); - less_by_side less_non_unique(m_origin, turn_point, m_strategy); - - std::sort(m_ranked_points.begin(), m_ranked_points.end(), less_unique); - - std::size_t colinear_rank = 0; - for (std::size_t i = 0; i < m_ranked_points.size(); i++) - { - if (i > 0 - && less_non_unique(m_ranked_points[i - 1], m_ranked_points[i])) - { - // It is not collinear - colinear_rank++; - } - - m_ranked_points[i].rank = colinear_rank; - } - } - - void find_open_by_piece_index() - { - // For buffers, use piece index - std::set handled; - - for (std::size_t i = 0; i < m_ranked_points.size(); i++) - { - rp const& ranked = m_ranked_points[i]; - if (ranked.direction != dir_from) - { - continue; - } - - signed_size_type const& index = ranked.seg_id.piece_index; - if (handled.count(index) > 0) - { - continue; - } - find_polygons_for_source<&segment_identifier::piece_index>(index, i); - handled.insert(index); - } - } - - void find_open_by_source_index() - { - // Check for source index 0 and 1 - bool handled[2] = {false, false}; - for (std::size_t i = 0; i < m_ranked_points.size(); i++) - { - rp const& ranked = m_ranked_points[i]; - if (ranked.direction != dir_from) - { - continue; - } - - signed_size_type const& index = ranked.seg_id.source_index; - if (index < 0 || index > 1 || handled[index]) - { - continue; - } - find_polygons_for_source<&segment_identifier::source_index>(index, i); - handled[index] = true; - } - } - - void find_open() - { - if BOOST_GEOMETRY_CONSTEXPR (OverlayType == overlay_buffer) - { - find_open_by_piece_index(); - } - else - { - find_open_by_source_index(); - } - } - - void reverse() - { - if (m_ranked_points.empty()) - { - return; - } - - std::size_t const last = 1 + m_ranked_points.back().rank; - - // Move iterator after rank==0 - bool has_first = false; - auto it = m_ranked_points.begin() + 1; - for (; it != m_ranked_points.end() && it->rank == 0; ++it) - { - has_first = true; - } - - if (has_first) - { - // Reverse first part (having rank == 0), if any, - // but skip the very first row - std::reverse(m_ranked_points.begin() + 1, it); - for (auto fit = m_ranked_points.begin(); fit != it; ++fit) - { - BOOST_ASSERT(fit->rank == 0); - } - } - - // Reverse the rest (main rank > 0) - std::reverse(it, m_ranked_points.end()); - for (; it != m_ranked_points.end(); ++it) - { - BOOST_ASSERT(it->rank > 0); - it->rank = last - it->rank; - } - } - - bool has_origin() const - { - return m_origin_count > 0; - } - -//private : - - using container_type = std::vector; - container_type m_ranked_points; - Point m_origin; - std::size_t m_origin_count; - signed_size_type m_origin_segment_distance; - - // Umbrella strategy containing side strategy - Strategy m_strategy; - -private : - - //! Check how many open spaces there are - template - inline std::size_t open_count(Include const& include_functor) const - { - std::size_t result = 0; - rank_type last_rank = 0; - for (std::size_t i = 0; i < m_ranked_points.size(); i++) - { - rp const& ranked_point = m_ranked_points[i]; - - if (ranked_point.rank > last_rank - && ranked_point.direction == sort_by_side::dir_to - && include_functor(ranked_point)) - { - result++; - last_rank = ranked_point.rank; - } - } - return result; - } - - std::size_t move(std::size_t index) const - { - std::size_t const result = index + 1; - return result >= m_ranked_points.size() ? 0 : result; - } - - //! member is pointer to member (source_index or multi_index) - template - std::size_t move(signed_size_type member_index, std::size_t index) const - { - std::size_t result = move(index); - while (m_ranked_points[result].seg_id.*Member != member_index) - { - result = move(result); - } - return result; - } - - void assign_ranks(rank_type min_rank, rank_type max_rank, int side_index) - { - for (std::size_t i = 0; i < m_ranked_points.size(); i++) - { - rp& ranked = m_ranked_points[i]; - // Suppose there are 8 ranks, if min=4,max=6: assign 4,5,6 - // if min=5,max=2: assign from 5,6,7,1,2 - bool const in_range - = max_rank >= min_rank - ? ranked.rank >= min_rank && ranked.rank <= max_rank - : ranked.rank >= min_rank || ranked.rank <= max_rank - ; - - if (in_range) - { - if (side_index == 1) - { - ranked.count_left++; - } - else if (side_index == 2) - { - ranked.count_right++; - } - } - } - } - - template - void find_polygons_for_source(signed_size_type the_index, - std::size_t start_index) - { - bool in_polygon = true; // Because start_index is "from", arrives at the turn - rp const& start_rp = m_ranked_points[start_index]; - rank_type last_from_rank = start_rp.rank; - rank_type previous_rank = start_rp.rank; - - for (std::size_t index = move(the_index, start_index); - ; - index = move(the_index, index)) - { - rp& ranked = m_ranked_points[index]; - - if (ranked.rank != previous_rank && ! in_polygon) - { - assign_ranks(last_from_rank, previous_rank - 1, 1); - assign_ranks(last_from_rank + 1, previous_rank, 2); - } - - if (index == start_index) - { - return; - } - - if (ranked.direction == dir_from) - { - last_from_rank = ranked.rank; - in_polygon = true; - } - else if (ranked.direction == dir_to) - { - in_polygon = false; - } - - previous_rank = ranked.rank; - } - } - - //! Find closed zones and assign it - template - std::size_t assign_zones(Include const& include_functor) - { - // Find a starting point (the first rank after an outgoing rank - // with no polygons on the left side) - rank_type start_rank = m_ranked_points.size() + 1; - std::size_t start_index = 0; - rank_type max_rank = 0; - for (std::size_t i = 0; i < m_ranked_points.size(); i++) - { - rp const& ranked_point = m_ranked_points[i]; - if (ranked_point.rank > max_rank) - { - max_rank = ranked_point.rank; - } - if (ranked_point.direction == sort_by_side::dir_to - && include_functor(ranked_point)) - { - start_rank = ranked_point.rank + 1; - } - if (ranked_point.rank == start_rank && start_index == 0) - { - start_index = i; - } - } - - // Assign the zones - rank_type const undefined_rank = max_rank + 1; - std::size_t zone_id = 0; - rank_type last_rank = 0; - rank_type rank_at_next_zone = undefined_rank; - std::size_t index = start_index; - for (std::size_t i = 0; i < m_ranked_points.size(); i++) - { - rp& ranked_point = m_ranked_points[index]; - - // Implement cyclic behavior - index++; - if (index == m_ranked_points.size()) - { - index = 0; - } - - if (ranked_point.rank != last_rank) - { - if (ranked_point.rank == rank_at_next_zone) - { - zone_id++; - rank_at_next_zone = undefined_rank; - } - - if (ranked_point.direction == sort_by_side::dir_to - && include_functor(ranked_point)) - { - rank_at_next_zone = ranked_point.rank + 1; - if (rank_at_next_zone > max_rank) - { - rank_at_next_zone = 0; - } - } - - last_rank = ranked_point.rank; - } - - ranked_point.zone = zone_id; - } - return zone_id; - } - -public : - inline std::size_t open_count(operation_type for_operation) const - { - return for_operation == operation_union - ? open_count(include_union()) - : open_count(include_intersection()) - ; - } - - inline std::size_t assign_zones(operation_type for_operation) - { - return for_operation == operation_union - ? assign_zones(include_union()) - : assign_zones(include_intersection()) - ; - } - -}; - - -//! Metafunction to define side_order (clockwise, ccw) by operation_type -template -struct side_compare {}; - -template <> -struct side_compare -{ - using type = std::greater; -}; - -template <> -struct side_compare -{ - using type = std::less; -}; - - -}}} // namespace detail::overlay::sort_by_side -#endif //DOXYGEN_NO_DETAIL - - -}} // namespace boost::geometry - -#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_SORT_BY_SIDE_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/stream_info.hpp b/include/boost/geometry/algorithms/detail/overlay/stream_info.hpp index 307d9ff80..5d3c6a85f 100644 --- a/include/boost/geometry/algorithms/detail/overlay/stream_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/stream_info.hpp @@ -57,7 +57,6 @@ namespace detail { namespace overlay << dir(info.sides.template get<1,1>()) << " nxt seg " << info.travels_to_vertex_index << " , ip " << info.travels_to_ip_index - << " , or " << info.next_ip_index << " frac " << info.fraction << info.visit_state; if (info.flagged) diff --git a/include/boost/geometry/algorithms/detail/overlay/traversal.hpp b/include/boost/geometry/algorithms/detail/overlay/traversal.hpp deleted file mode 100644 index 3b92c6f04..000000000 --- a/include/boost/geometry/algorithms/detail/overlay/traversal.hpp +++ /dev/null @@ -1,1017 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) - -// Copyright (c) 2007-2024 Barend Gehrels, Amsterdam, the Netherlands. -// Copyright (c) 2023-2024 Adam Wulkiewicz, Lodz, Poland. - -// This file was modified by Oracle on 2017-2024. -// Modifications copyright (c) 2017-2024 Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_HPP -#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_HPP - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -#if defined(BOOST_GEOMETRY_DEBUG_INTERSECTION) \ - || defined(BOOST_GEOMETRY_OVERLAY_REPORT_WKT) \ - || defined(BOOST_GEOMETRY_DEBUG_TRAVERSE) -# include -# include -# include -#endif - -namespace boost { namespace geometry -{ - -#ifndef DOXYGEN_NO_DETAIL -namespace detail { namespace overlay -{ - -template -< - bool Reverse1, - bool Reverse2, - overlay_type OverlayType, - typename Geometry1, - typename Geometry2, - typename Turns, - typename Clusters, - typename Strategy, - typename Visitor -> -struct traversal -{ -private : - - static const operation_type target_operation = operation_from_overlay::value; - - using side_compare_type = typename sort_by_side::side_compare::type; - using turn_type = typename boost::range_value::type; - using turn_operation_type = typename turn_type::turn_operation_type; - - using point_type = geometry::point_type_t; - using sbs_type = sort_by_side::side_sorter - < - Reverse1, Reverse2, OverlayType, - point_type, Strategy, side_compare_type - >; - -public : - inline traversal(Geometry1 const& geometry1, Geometry2 const& geometry2, - Turns& turns, Clusters const& clusters, - Strategy const& strategy, - Visitor& visitor) - : m_geometry1(geometry1) - , m_geometry2(geometry2) - , m_turns(turns) - , m_clusters(clusters) - , m_strategy(strategy) - , m_visitor(visitor) - { - } - - template - inline void finalize_visit_info(TurnInfoMap& turn_info_map) - { - for (auto& turn : m_turns) - { - for (int i = 0; i < 2; i++) - { - turn_operation_type& op = turn.operations[i]; - if (op.visited.visited() - || op.visited.started() - || op.visited.finished() ) - { - ring_identifier const ring_id = ring_id_by_seg_id(op.seg_id); - turn_info_map[ring_id].has_traversed_turn = true; - - if (op.operation == operation_continue) - { - // Continue operations should mark the other operation - // as traversed too - turn_operation_type& other_op = turn.operations[1 - i]; - ring_identifier const other_ring_id - = ring_id_by_seg_id(other_op.seg_id); - turn_info_map[other_ring_id].has_traversed_turn = true; - } - } - op.visited.finalize(); - } - } - } - - //! Sets visited for ALL turns traveling to the same turn - inline void set_visited_in_cluster(signed_size_type cluster_id, - signed_size_type rank) - { - auto mit = m_clusters.find(cluster_id); - BOOST_ASSERT(mit != m_clusters.end()); - - cluster_info const& cinfo = mit->second; - - for (auto turn_index : cinfo.turn_indices) - { - turn_type& turn = m_turns[turn_index]; - - for (auto& op : turn.operations) - { - if (op.visited.none() && op.enriched.rank == rank) - { - op.visited.set_visited(); - } - } - } - } - inline void set_visited(turn_type& turn, turn_operation_type& op) - { - if (op.operation == detail::overlay::operation_continue) - { - // On "continue", all go in same direction so set "visited" for ALL - for (int i = 0; i < 2; i++) - { - turn_operation_type& turn_op = turn.operations[i]; - if (turn_op.visited.none()) - { - turn_op.visited.set_visited(); - } - } - } - else - { - op.visited.set_visited(); - } - if (turn.is_clustered()) - { - set_visited_in_cluster(turn.cluster_id, op.enriched.rank); - } - } - - inline bool is_visited(turn_type const& , turn_operation_type const& op, - signed_size_type , int) const - { - return op.visited.visited(); - } - - template - inline bool select_source_generic(turn_type const& turn, - segment_identifier const& current, - segment_identifier const& previous) const - { - turn_operation_type const& op0 = turn.operations[0]; - turn_operation_type const& op1 = turn.operations[1]; - - bool const switch_source = op0.enriched.region_id != -1 - && op0.enriched.region_id == op1.enriched.region_id; - -#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSAL_SWITCH_DETECTOR) - if (switch_source) - { - std::cout << "Switch source at " << &turn << std::endl; - } - else - { - std::cout << "DON'T SWITCH SOURCES at " << &turn << std::endl; - } -#endif - return switch_source - ? current.*Member != previous.*Member - : current.*Member == previous.*Member; - } - - inline bool select_source(turn_type const& turn, - segment_identifier const& candidate_seg_id, - segment_identifier const& previous_seg_id) const - { - // For uu/ii, only switch sources if indicated - // Buffer and self-turns do not use source_index (always 0). - return OverlayType == overlay_buffer || is_self_turn(turn) - ? select_source_generic<&segment_identifier::multi_index>( - turn, candidate_seg_id, previous_seg_id) - : select_source_generic<&segment_identifier::source_index>( - turn, candidate_seg_id, previous_seg_id); - } - - inline bool traverse_possible(signed_size_type turn_index) const - { - if (turn_index == -1) - { - return false; - } - - turn_type const& turn = m_turns[turn_index]; - - // It is not a dead end if there is an operation to continue, or of - // there is a cluster (assuming for now we can get out of the cluster) - return turn.is_clustered() - || turn.has(target_operation) - || turn.has(operation_continue); - } - - inline std::size_t get_shortcut_level(turn_operation_type const& op, - signed_size_type start_turn_index, - signed_size_type origin_turn_index, - std::size_t level = 1) const - { - signed_size_type next_turn_index = op.enriched.get_next_turn_index(); - if (next_turn_index == -1) - { - return 0; - } - if (next_turn_index == start_turn_index) - { - // This operation finishes the ring - return 0; - } - if (next_turn_index == origin_turn_index) - { - // This operation travels to itself - return level; - } - if (level > 10) - { - // Avoid infinite recursion - return 0; - } - - turn_type const& next_turn = m_turns[next_turn_index]; - for (int i = 0; i < 2; i++) - { - turn_operation_type const& next_op = next_turn.operations[i]; - if (next_op.operation == target_operation - && ! next_op.visited.finished() - && ! next_op.visited.visited()) - { - // Recursively continue verifying - if (get_shortcut_level(next_op, start_turn_index, - origin_turn_index, level + 1)) - { - return level + 1; - } - } - } - return 0; - } - - inline - bool select_cc_operation(turn_type const& turn, - signed_size_type start_turn_index, - int& selected_op_index) const - { - // For "cc", take either one, but if there is a starting one, - // take that one. If next is dead end, skip that one. - // If both are valid candidates, take the one with minimal remaining - // distance (important for #mysql_23023665 in buffer). - - signed_size_type next[2] = {0}; - bool possible[2] = {0}; - bool close[2] = {0}; - - for (int i = 0; i < 2; i++) - { - next[i] = turn.operations[i].enriched.get_next_turn_index(); - possible[i] = traverse_possible(next[i]); - close[i] = possible[i] && next[i] == start_turn_index; - } - - if (close[0] != close[1]) - { - // One of the operations will finish the ring. Take that one. - selected_op_index = close[0] ? 0 : 1; - debug_traverse(turn, turn.operations[selected_op_index], "Candidate cc closing"); - return true; - } - - if BOOST_GEOMETRY_CONSTEXPR (OverlayType == overlay_buffer) - { - if (possible[0] && possible[1]) - { - // Buffers sometimes have multiple overlapping pieces, where remaining - // distance could lead to the wrong choice. Take the matching operation. - - bool is_target[2] = {0}; - for (int i = 0; i < 2; i++) - { - turn_operation_type const& next_op = m_turns[next[i]].operations[i]; - is_target[i] = next_op.operation == target_operation; - } - - if (is_target[0] != is_target[1]) - { - // Take the matching operation - selected_op_index = is_target[0] ? 0 : 1; - debug_traverse(turn, turn.operations[selected_op_index], "Candidate cc target"); - return true; - } - } - } - - static bool const is_union = target_operation == operation_union; - - typename turn_operation_type::comparable_distance_type - best_remaining_distance = 0; - - bool result = false; - - for (int i = 0; i < 2; i++) - { - if (!possible[i]) - { - continue; - } - - turn_operation_type const& op = turn.operations[i]; - - if (! result - || (is_union && op.remaining_distance > best_remaining_distance) - || (!is_union && op.remaining_distance < best_remaining_distance)) - { - debug_traverse(turn, op, "First candidate cc", ! result); - debug_traverse(turn, op, "Candidate cc override (remaining)", - result && op.remaining_distance < best_remaining_distance); - - selected_op_index = i; - best_remaining_distance = op.remaining_distance; - result = true; - } - } - - return result; - } - - inline - bool select_noncc_operation(turn_type const& turn, - segment_identifier const& previous_seg_id, - int& selected_op_index) const - { - bool result = false; - - for (int i = 0; i < 2; i++) - { - turn_operation_type const& op = turn.operations[i]; - - if (op.operation == target_operation - && ! op.visited.finished() - && ! op.visited.visited() - && (! result || select_source(turn, op.seg_id, previous_seg_id))) - { - selected_op_index = i; - debug_traverse(turn, op, "Candidate"); - result = true; - } - } - - return result; - } - - inline - bool select_preferred_operation(turn_type const& turn, - signed_size_type turn_index, - signed_size_type start_turn_index, - int& selected_op_index) const - { - bool option[2] = {0}; - bool finishing[2] = {0}; - bool preferred[2] = {0}; - std::size_t shortcut_level[2] = {0}; - for (int i = 0; i < 2; i++) - { - turn_operation_type const& op = turn.operations[i]; - - if (op.operation == target_operation - && ! op.visited.finished() - && ! op.visited.visited()) - { - option[i] = true; - if (op.enriched.get_next_turn_index() == start_turn_index) - { - finishing[i] = true; - } - else - { - shortcut_level[i] = get_shortcut_level(op, start_turn_index, - turn_index); - } - - if (op.enriched.prefer_start) - { - preferred[i] = true; - } - } - } - - if (option[0] != option[1]) - { - // Only one operation is acceptable, take that one - selected_op_index = option[0] ? 0 : 1; - return true; - } - - if (option[0] && option[1]) - { - // Both operations are acceptable - if (finishing[0] != finishing[1]) - { - // Prefer operation finishing the ring - selected_op_index = finishing[0] ? 0 : 1; - return true; - } - - if (shortcut_level[0] != shortcut_level[1]) - { - // If a turn can travel to itself again (without closing the - // ring), take the shortest one - selected_op_index = shortcut_level[0] < shortcut_level[1] ? 0 : 1; - return true; - } - - if (preferred[0] != preferred[1]) - { - // Only one operation is preferred (== was not intersection) - selected_op_index = preferred[0] ? 0 : 1; - return true; - } - } - - for (int i = 0; i < 2; i++) - { - if (option[i]) - { - selected_op_index = 0; - return true; - } - } - - return false; - } - - inline - bool select_operation(turn_type const& turn, - signed_size_type turn_index, - signed_size_type start_turn_index, - segment_identifier const& previous_seg_id, - int& selected_op_index) const - { - bool result = false; - selected_op_index = -1; - if (turn.both(operation_continue)) - { - result = select_cc_operation(turn, start_turn_index, - selected_op_index); - } - else if BOOST_GEOMETRY_CONSTEXPR (OverlayType == overlay_dissolve) - { - result = select_preferred_operation(turn, turn_index, - start_turn_index, selected_op_index); - } - else - { - result = select_noncc_operation(turn, previous_seg_id, - selected_op_index); - } - if (result) - { - debug_traverse(turn, turn.operations[selected_op_index], "Accepted"); - } - - return result; - } - - inline int starting_operation_index(turn_type const& turn) const - { - for (int i = 0; i < 2; i++) - { - if (turn.operations[i].visited.started()) - { - return i; - } - } - return -1; - } - - inline bool both_finished(turn_type const& turn) const - { - for (int i = 0; i < 2; i++) - { - if (! turn.operations[i].visited.finished()) - { - return false; - } - } - return true; - } - - // Returns a priority, the one with the highst priority will be selected - // 0: not OK - // 1: OK following spike out - // 2: OK but next turn is in same cluster - // 3: OK - // 4: OK and start turn matches - // 5: OK and start turn and start operation both match, this is the best - inline int priority_of_turn_in_cluster(sort_by_side::rank_type selected_rank, - typename sbs_type::rp const& ranked_point, - cluster_info const& cinfo, - signed_size_type start_turn_index, int start_op_index) const - { - if (ranked_point.rank != selected_rank - || ranked_point.direction != sort_by_side::dir_to) - { - return 0; - } - - auto const& turn = m_turns[ranked_point.turn_index]; - auto const& op = turn.operations[ranked_point.operation_index]; - - // Check finalized: TODO: this should be finetuned, it is not necessary - if (op.visited.finalized()) - { - return 0; - } - - if BOOST_GEOMETRY_CONSTEXPR (OverlayType != overlay_dissolve) - { - if ((op.enriched.count_left != 0 || op.enriched.count_right == 0) && cinfo.spike_count > 0) - { - // Check counts: in some cases interior rings might be generated with - // polygons on both sides. For dissolve it can be anything. - - // If this forms a spike, going to/from the cluster point in the same - // (opposite) direction, it can still be used. - return 1; - } - } - - bool const to_start = ranked_point.turn_index == start_turn_index; - bool const to_start_index = ranked_point.operation_index == start_op_index; - - bool const next_in_same_cluster - = cinfo.turn_indices.count(op.enriched.get_next_turn_index()) > 0; - - // Return the priority as described above - return to_start && to_start_index ? 5 - : to_start ? 4 - : next_in_same_cluster ? 2 - : 3 - ; - } - - template - inline turn_operation_type const& operation_from_rank(RankedPoint const& rp) const - { - return m_turns[rp.turn_index].operations[rp.operation_index]; - } - - inline sort_by_side::rank_type select_rank(sbs_type const& sbs) const - { - static bool const is_intersection - = target_operation == operation_intersection; - - // Take the first outgoing rank corresponding to incoming region, - // or take another region if it is not isolated - auto const& in_op = operation_from_rank(sbs.m_ranked_points.front()); - - for (std::size_t i = 0; i < sbs.m_ranked_points.size(); i++) - { - auto const& rp = sbs.m_ranked_points[i]; - if (rp.rank == 0 || rp.direction == sort_by_side::dir_from) - { - continue; - } - auto const& out_op = operation_from_rank(rp); - - if (out_op.operation != target_operation - && out_op.operation != operation_continue) - { - continue; - } - - if (in_op.enriched.region_id == out_op.enriched.region_id - || (is_intersection && ! out_op.enriched.isolated)) - { - // Region corresponds to incoming region, or (for intersection) - // there is a non-isolated other region which should be taken - return rp.rank; - } - } - return -1; - } - - inline bool select_from_cluster(signed_size_type& turn_index, int& op_index, - cluster_info const& cinfo, sbs_type const& sbs, - signed_size_type start_turn_index, int start_op_index) const - { - sort_by_side::rank_type const selected_rank = select_rank(sbs); - - int current_priority = 0; - for (std::size_t i = 1; i < sbs.m_ranked_points.size(); i++) - { - auto const& ranked_point = sbs.m_ranked_points[i]; - - if (ranked_point.rank > selected_rank) - { - break; - } - - int const priority = priority_of_turn_in_cluster(selected_rank, - ranked_point, cinfo, start_turn_index, start_op_index); - - if (priority > current_priority) - { - current_priority = priority; - turn_index = ranked_point.turn_index; - op_index = ranked_point.operation_index; - } - } - return current_priority > 0; - } - - // Analyzes a clustered intersection, as if it is clustered. - // This is used for II intersections - inline bool analyze_ii_cluster(signed_size_type& turn_index, - int& op_index, sbs_type const& sbs) const - { - // Select the rank based on regions and isolation - sort_by_side::rank_type const selected_rank = select_rank(sbs); - - if (selected_rank <= 0) - { - return false; - } - - // From these ranks, select the index: the first, or the one with - // the smallest remaining distance - typename turn_operation_type::comparable_distance_type - min_remaining_distance = 0; - - std::size_t selected_index = sbs.m_ranked_points.size(); - for (std::size_t i = 0; i < sbs.m_ranked_points.size(); i++) - { - auto const& ranked_point = sbs.m_ranked_points[i]; - - if (ranked_point.rank > selected_rank) - { - break; - } - else if (ranked_point.rank == selected_rank) - { - auto const& op = operation_from_rank(ranked_point); - - if (op.visited.finalized()) - { - // This direction is already traveled, - // it cannot be traveled again - continue; - } - - if (selected_index == sbs.m_ranked_points.size() - || op.remaining_distance < min_remaining_distance) - { - // It was unassigned or it is better - selected_index = i; - min_remaining_distance = op.remaining_distance; - } - } - } - - if (selected_index == sbs.m_ranked_points.size()) - { - // Should not happen, there must be points with the selected rank - return false; - } - - auto const& ranked_point = sbs.m_ranked_points[selected_index]; - turn_index = ranked_point.turn_index; - op_index = ranked_point.operation_index; - return true; - } - - inline bool fill_sbs(sbs_type& sbs, - signed_size_type turn_index, - std::set const& cluster_indices, - segment_identifier const& previous_seg_id) const - { - - for (auto cluster_turn_index : cluster_indices) - { - turn_type const& cluster_turn = m_turns[cluster_turn_index]; - if (cluster_turn.discarded) - { - // Defensive check, discarded turns should not be in cluster - continue; - } - - for (int i = 0; i < 2; i++) - { - sbs.add(cluster_turn, - cluster_turn.operations[i], - cluster_turn_index, i, previous_seg_id, - m_geometry1, m_geometry2, - cluster_turn_index == turn_index); - } - } - - if (! sbs.has_origin()) - { - return false; - } - turn_type const& turn = m_turns[turn_index]; - sbs.apply(turn.point); - return true; - } - - - inline bool select_turn_from_cluster(signed_size_type& turn_index, - int& op_index, - signed_size_type start_turn_index, int start_op_index, - segment_identifier const& previous_seg_id) const - { - bool const is_union = target_operation == operation_union; - - turn_type const& turn = m_turns[turn_index]; - BOOST_ASSERT(turn.is_clustered()); - - auto mit = m_clusters.find(turn.cluster_id); - BOOST_ASSERT(mit != m_clusters.end()); - - cluster_info const& cinfo = mit->second; - - sbs_type sbs(m_strategy); - - if (! fill_sbs(sbs, turn_index, cinfo.turn_indices, previous_seg_id)) - { - return false; - } - - if BOOST_GEOMETRY_CONSTEXPR (is_union) - { - if (cinfo.open_count == 0 && cinfo.spike_count > 0) - { - // Leave the cluster from the spike. - for (std::size_t i = 0; i + 1 < sbs.m_ranked_points.size(); i++) - { - auto const& current = sbs.m_ranked_points[i]; - auto const& next = sbs.m_ranked_points[i + 1]; - if (current.rank == next.rank - && current.direction == detail::overlay::sort_by_side::dir_from - && next.direction == detail::overlay::sort_by_side::dir_to) - { - turn_index = next.turn_index; - op_index = next.operation_index; - return true; - } - } - } - } - - return select_from_cluster(turn_index, op_index, cinfo, sbs, start_turn_index, start_op_index); - } - - // Analyzes a non-clustered "ii" intersection, as if it is clustered. - // TODO: it, since select_from_cluster is generalized (July 2024), - // uses a specific function used only for "ii" intersections. - // Therefore the sort-by-side solution should not be necessary and can be refactored. - inline bool analyze_ii_intersection(signed_size_type& turn_index, int& op_index, - turn_type const& current_turn, - segment_identifier const& previous_seg_id) - { - sbs_type sbs(m_strategy); - - // Add this turn to the sort-by-side sorter - for (int i = 0; i < 2; i++) - { - sbs.add(current_turn, - current_turn.operations[i], - turn_index, i, previous_seg_id, - m_geometry1, m_geometry2, - true); - } - - if (! sbs.has_origin()) - { - return false; - } - - sbs.apply(current_turn.point); - - return analyze_ii_cluster(turn_index, op_index, sbs); - } - - inline void change_index_for_self_turn(signed_size_type& to_vertex_index, - turn_type const& start_turn, - turn_operation_type const& start_op, - int start_op_index) const - { - if BOOST_GEOMETRY_CONSTEXPR (OverlayType != overlay_buffer - && OverlayType != overlay_dissolve) - { - return; - } - else // else prevents unreachable code warning - { - const bool allow_uu = OverlayType != overlay_buffer; - - // It travels to itself, can happen. If this is a buffer, it can - // sometimes travel to itself in the following configuration: - // - // +---->--+ - // | | - // | +---*----+ *: one turn, with segment index 2/7 - // | | | | - // | +---C | C: closing point (start/end) - // | | - // +------------+ - // - // If it starts on segment 2 and travels to itself on segment 2, that - // should be corrected to 7 because that is the shortest path - // - // Also a uu turn (touching with another buffered ring) might have this - // apparent configuration, but there it should - // always travel the whole ring - - turn_operation_type const& other_op - = start_turn.operations[1 - start_op_index]; - - bool const correct - = (allow_uu || ! start_turn.both(operation_union)) - && start_op.seg_id.source_index == other_op.seg_id.source_index - && start_op.seg_id.multi_index == other_op.seg_id.multi_index - && start_op.seg_id.ring_index == other_op.seg_id.ring_index - && start_op.seg_id.segment_index == to_vertex_index; - -#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSE) - std::cout << " WARNING: self-buffer " - << " correct=" << correct - << " turn=" << operation_char(start_turn.operations[0].operation) - << operation_char(start_turn.operations[1].operation) - << " start=" << start_op.seg_id.segment_index - << " from=" << to_vertex_index - << " to=" << other_op.enriched.travels_to_vertex_index - << std::endl; -#endif - - if (correct) - { - to_vertex_index = other_op.enriched.travels_to_vertex_index; - } - } - } - - bool select_turn_from_enriched(signed_size_type& turn_index, - segment_identifier& previous_seg_id, - signed_size_type& to_vertex_index, - signed_size_type start_turn_index, - int start_op_index, - turn_type const& previous_turn, - turn_operation_type const& previous_op, - bool is_start) const - { - to_vertex_index = -1; - - if (previous_op.enriched.next_ip_index < 0) - { - // There is no next IP on this segment - if (previous_op.enriched.travels_to_vertex_index < 0 - || previous_op.enriched.travels_to_ip_index < 0) - { - return false; - } - - to_vertex_index = previous_op.enriched.travels_to_vertex_index; - - if (is_start && - previous_op.enriched.travels_to_ip_index == start_turn_index) - { - change_index_for_self_turn(to_vertex_index, previous_turn, - previous_op, start_op_index); - } - - turn_index = previous_op.enriched.travels_to_ip_index; - previous_seg_id = previous_op.seg_id; - } - else - { - // Take the next IP on this segment - turn_index = previous_op.enriched.next_ip_index; - previous_seg_id = previous_op.seg_id; - } - return true; - } - - bool select_turn(signed_size_type start_turn_index, int start_op_index, - signed_size_type& turn_index, - int& op_index, - int previous_op_index, - signed_size_type previous_turn_index, - segment_identifier const& previous_seg_id, - bool is_start, bool has_points) - { - turn_type const& current_turn = m_turns[turn_index]; - - bool const back_at_start_cluster - = has_points - && current_turn.is_clustered() - && m_turns[start_turn_index].cluster_id == current_turn.cluster_id; - if BOOST_GEOMETRY_CONSTEXPR (target_operation == operation_intersection) - { - // Intersection or difference - - if (has_points && (turn_index == start_turn_index || back_at_start_cluster)) - { - // Intersection can always be finished if returning - turn_index = start_turn_index; - op_index = start_op_index; - return true; - } - - if (! current_turn.is_clustered() - && current_turn.both(operation_intersection) - && analyze_ii_intersection(turn_index, op_index, - current_turn, previous_seg_id)) - { - return true; - } - } - else if (turn_index == start_turn_index || back_at_start_cluster) - { - // Union or buffer: cannot return immediately to starting turn, because it then - // might miss a formed multi polygon with a touching point. - auto const& current_op = current_turn.operations[op_index]; - signed_size_type const next_turn_index = current_op.enriched.get_next_turn_index(); - bool const to_other_turn = next_turn_index >= 0 && m_turns[next_turn_index].cluster_id != current_turn.cluster_id; - if (! to_other_turn) - { - // Return to starting point - turn_index = start_turn_index; - op_index = start_op_index; - return true; - } - } - - if (current_turn.is_clustered()) - { - if (! select_turn_from_cluster(turn_index, op_index, - start_turn_index, start_op_index, previous_seg_id)) - { - return false; - } - - if (is_start && turn_index == previous_turn_index) - { - op_index = previous_op_index; - } - } - else - { - op_index = starting_operation_index(current_turn); - if (op_index == -1) - { - if (both_finished(current_turn)) - { - return false; - } - - if (! select_operation(current_turn, turn_index, - start_turn_index, - previous_seg_id, - op_index)) - { - return false; - } - } - } - return true; - } - -private : - Geometry1 const& m_geometry1; - Geometry2 const& m_geometry2; - Turns& m_turns; - Clusters const& m_clusters; - Strategy m_strategy; - Visitor& m_visitor; -}; - - -}} // namespace detail::overlay -#endif // DOXYGEN_NO_DETAIL - -}} // namespace boost::geometry - -#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/traversal_info.hpp b/include/boost/geometry/algorithms/detail/overlay/traversal_info.hpp index 8cabfb0d8..ed92f6a03 100644 --- a/include/boost/geometry/algorithms/detail/overlay/traversal_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/traversal_info.hpp @@ -12,7 +12,6 @@ #include #include -#include #include @@ -28,7 +27,6 @@ template struct traversal_turn_operation : public turn_operation { enrichment_info enriched; - visit_info visited; }; template diff --git a/include/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp b/include/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp deleted file mode 100644 index e59c9adea..000000000 --- a/include/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp +++ /dev/null @@ -1,427 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) - -// Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands. - -// This file was modified by Oracle on 2017-2024. -// Modifications copyright (c) 2017-2024, Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_RING_CREATOR_HPP -#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_RING_CREATOR_HPP - -#include - -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -namespace boost { namespace geometry -{ - -#ifndef DOXYGEN_NO_DETAIL -namespace detail { namespace overlay -{ - - -template -< - bool Reverse1, - bool Reverse2, - overlay_type OverlayType, - typename Geometry1, - typename Geometry2, - typename Turns, - typename TurnInfoMap, - typename Clusters, - typename Strategy, - typename Visitor, - typename Backtrack -> -struct traversal_ring_creator -{ - using traversal_type = traversal - < - Reverse1, Reverse2, OverlayType, - Geometry1, Geometry2, Turns, Clusters, - Strategy, - Visitor - >; - - using turn_type = typename boost::range_value::type; - using turn_operation_type = typename turn_type::turn_operation_type; - - static const operation_type target_operation - = operation_from_overlay::value; - - inline traversal_ring_creator(Geometry1 const& geometry1, Geometry2 const& geometry2, - Turns& turns, TurnInfoMap& turn_info_map, - Clusters const& clusters, - Strategy const& strategy, - Visitor& visitor) - : m_trav(geometry1, geometry2, turns, clusters, - strategy, visitor) - , m_geometry1(geometry1) - , m_geometry2(geometry2) - , m_turns(turns) - , m_turn_info_map(turn_info_map) - , m_clusters(clusters) - , m_strategy(strategy) - , m_visitor(visitor) - { - } - - template - inline traverse_error_type travel_to_next_turn(signed_size_type start_turn_index, - int start_op_index, - signed_size_type& turn_index, - int& op_index, - Ring& current_ring, - bool is_start) - { - int const previous_op_index = op_index; - signed_size_type const previous_turn_index = turn_index; - turn_type& previous_turn = m_turns[turn_index]; - turn_operation_type& previous_op = previous_turn.operations[op_index]; - segment_identifier previous_seg_id; - - signed_size_type to_vertex_index = -1; - if (! m_trav.select_turn_from_enriched(turn_index, previous_seg_id, - to_vertex_index, start_turn_index, start_op_index, - previous_turn, previous_op, is_start)) - { - return is_start - ? traverse_error_no_next_ip_at_start - : traverse_error_no_next_ip; - } - if (to_vertex_index >= 0) - { - if (previous_op.seg_id.source_index == 0) - { - geometry::copy_segments(m_geometry1, - previous_op.seg_id, to_vertex_index, - m_strategy, current_ring); - } - else - { - geometry::copy_segments(m_geometry2, - previous_op.seg_id, to_vertex_index, - m_strategy, current_ring); - } - } - - if (m_turns[turn_index].discarded) - { - return is_start - ? traverse_error_dead_end_at_start - : traverse_error_dead_end; - } - - if (is_start) - { - // Register the start - previous_op.visited.set_started(); - m_visitor.visit_traverse(m_turns, previous_turn, previous_op, "Start"); - } - - if (! m_trav.select_turn(start_turn_index, start_op_index, - turn_index, op_index, - previous_op_index, previous_turn_index, previous_seg_id, - is_start, boost::size(current_ring) > 1)) - { - return is_start - ? traverse_error_no_next_ip_at_start - : traverse_error_no_next_ip; - } - - { - // Check operation (TODO: this might be redundant or should be catched before) - turn_type const& current_turn = m_turns[turn_index]; - turn_operation_type const& op = current_turn.operations[op_index]; - if (op.visited.finalized() - || m_trav.is_visited(current_turn, op, turn_index, op_index)) - { - return traverse_error_visit_again; - } - } - - // Update registration and append point - turn_type& current_turn = m_turns[turn_index]; - turn_operation_type& op = current_turn.operations[op_index]; - detail::overlay::append_no_collinear(current_ring, current_turn.point, - m_strategy); - - // Register the visit - m_trav.set_visited(current_turn, op); - m_visitor.visit_traverse(m_turns, current_turn, op, "Visit"); - - return traverse_error_none; - } - - template - inline traverse_error_type traverse(Ring& ring, - signed_size_type start_turn_index, int start_op_index) - { - turn_type const& start_turn = m_turns[start_turn_index]; - turn_operation_type& start_op = m_turns[start_turn_index].operations[start_op_index]; - - detail::overlay::append_no_collinear(ring, start_turn.point, - m_strategy); - - signed_size_type current_turn_index = start_turn_index; - int current_op_index = start_op_index; - - traverse_error_type error = travel_to_next_turn(start_turn_index, - start_op_index, - current_turn_index, current_op_index, - ring, true); - - if (error != traverse_error_none) - { - // This is not necessarily a problem, it happens for clustered turns - // which are "build in" or otherwise point inwards - return error; - } - - if (current_turn_index == start_turn_index) - { - start_op.visited.set_finished(); - m_visitor.visit_traverse(m_turns, m_turns[current_turn_index], start_op, "Early finish"); - return traverse_error_none; - } - - if (start_turn.is_clustered()) - { - turn_type& turn = m_turns[current_turn_index]; - turn_operation_type& op = turn.operations[current_op_index]; - if (turn.cluster_id == start_turn.cluster_id - && op.enriched.get_next_turn_index() == start_turn_index) - { - op.visited.set_finished(); - m_visitor.visit_traverse(m_turns, m_turns[current_turn_index], start_op, "Early finish (cluster)"); - return traverse_error_none; - } - } - - std::size_t const max_iterations = 2 + 2 * m_turns.size(); - for (std::size_t i = 0; i <= max_iterations; i++) - { - // We assume clockwise polygons only, non self-intersecting, closed. - // However, the input might be different, and checking validity - // is up to the library user. - - // Therefore we make here some sanity checks. If the input - // violates the assumptions, the output polygon will not be correct - // but the routine will stop and output the current polygon, and - // will continue with the next one. - - // Below three reasons to stop. - error = travel_to_next_turn(start_turn_index, start_op_index, - current_turn_index, current_op_index, - ring, false); - - if (error != traverse_error_none) - { - return error; - } - - if (current_turn_index == start_turn_index - && current_op_index == start_op_index) - { - start_op.visited.set_finished(); - m_visitor.visit_traverse(m_turns, start_turn, start_op, "Finish"); - return traverse_error_none; - } - } - - return traverse_error_endless_loop; - } - - template - void traverse_with_operation(turn_type const& start_turn, - std::size_t turn_index, int op_index, - Rings& rings, std::size_t& finalized_ring_size, - typename Backtrack::state_type& state) - { - using ring_type = typename boost::range_value::type; - - turn_operation_type const& start_op = start_turn.operations[op_index]; - - if (! start_op.visited.none() - || ! start_op.enriched.startable - || start_op.visited.rejected() - || ! (start_op.operation == target_operation - || start_op.operation == detail::overlay::operation_continue)) - { - return; - } - - ring_type ring; - traverse_error_type traverse_error = traverse(ring, turn_index, op_index); - - if (traverse_error == traverse_error_none) - { - remove_spikes_at_closure(ring, m_strategy); - fix_closure(ring, m_strategy); - - std::size_t const min_num_points - = core_detail::closure::minimum_ring_size - < - geometry::closure::value - >::value; - - if (geometry::num_points(ring) >= min_num_points) - { - rings.push_back(ring); - - m_trav.finalize_visit_info(m_turn_info_map); - finalized_ring_size++; - } - } - else - { - Backtrack::apply(finalized_ring_size, - rings, ring, m_turns, start_turn, - m_turns[turn_index].operations[op_index], - traverse_error, - m_geometry1, m_geometry2, - m_strategy, - state, m_visitor); - } - } - - int get_operation_index(turn_type const& turn) const - { - // When starting with a continue operation, the one - // with the smallest (for intersection) or largest (for union) - // remaining distance (#8310b) - // Also to avoid skipping a turn in between, which can happen - // in rare cases (e.g. #130) - static const bool is_union - = operation_from_overlay::value == operation_union; - - turn_operation_type const& op0 = turn.operations[0]; - turn_operation_type const& op1 = turn.operations[1]; - return op0.remaining_distance <= op1.remaining_distance - ? (is_union ? 1 : 0) - : (is_union ? 0 : 1); - } - - template - void iterate(Rings& rings, std::size_t& finalized_ring_size, - typename Backtrack::state_type& state) - { - auto do_iterate = [&](int phase) - { - for (std::size_t turn_index = 0; turn_index < m_turns.size(); ++turn_index) - { - turn_type const& turn = m_turns[turn_index]; - - if (turn.discarded || turn.blocked() || (phase == 0 && turn.is_clustered())) - { - // Skip discarded and blocked turns - continue; - } - - if (turn.both(operation_continue)) - { - traverse_with_operation(turn, turn_index, - get_operation_index(turn), - rings, finalized_ring_size, state); - } - else - { - for (int op_index = 0; op_index < 2; op_index++) - { - traverse_with_operation(turn, turn_index, op_index, - rings, finalized_ring_size, state); - } - } - } - }; - - // Traverse all turns, first starting with the non-clustered ones. - do_iterate(0); - - // Traverse remaining clustered turns, if any. - do_iterate(1); - } - - template - void iterate_with_preference(std::size_t phase, - Rings& rings, std::size_t& finalized_ring_size, - typename Backtrack::state_type& state) - { - for (std::size_t turn_index = 0; turn_index < m_turns.size(); ++turn_index) - { - turn_type const& turn = m_turns[turn_index]; - - if (turn.discarded || turn.blocked()) - { - // Skip discarded and blocked turns - continue; - } - - turn_operation_type const& op0 = turn.operations[0]; - turn_operation_type const& op1 = turn.operations[1]; - - if (phase == 0) - { - if (! op0.enriched.prefer_start && ! op1.enriched.prefer_start) - { - // Not preferred, take next one - continue; - } - } - - if (turn.both(operation_continue)) - { - traverse_with_operation(turn, turn_index, - get_operation_index(turn), - rings, finalized_ring_size, state); - } - else - { - bool const forward = op0.enriched.prefer_start; - - int op_index = forward ? 0 : 1; - int const increment = forward ? 1 : -1; - - for (int i = 0; i < 2; i++, op_index += increment) - { - traverse_with_operation(turn, turn_index, op_index, - rings, finalized_ring_size, state); - } - } - } - } - -private: - traversal_type m_trav; - - Geometry1 const& m_geometry1; - Geometry2 const& m_geometry2; - Turns& m_turns; - TurnInfoMap& m_turn_info_map; // contains turn-info information per ring - Clusters const& m_clusters; - Strategy const& m_strategy; - Visitor& m_visitor; -}; - -}} // namespace detail::overlay -#endif // DOXYGEN_NO_DETAIL - -}} // namespace boost::geometry - -#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_RING_CREATOR_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/traversal_switch_detector.hpp b/include/boost/geometry/algorithms/detail/overlay/traversal_switch_detector.hpp deleted file mode 100644 index 0756034af..000000000 --- a/include/boost/geometry/algorithms/detail/overlay/traversal_switch_detector.hpp +++ /dev/null @@ -1,746 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) - -// Copyright (c) 2015-2016 Barend Gehrels, Amsterdam, the Netherlands. -// Copyright (c) 2023 Adam Wulkiewicz, Lodz, Poland. - -// This file was modified by Oracle on 2018-2024. -// Modifications copyright (c) 2018-2024 Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_SWITCH_DETECTOR_HPP -#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_SWITCH_DETECTOR_HPP - -#include - -#include -#include -#include -#include -#include - -#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSAL_SWITCH_DETECTOR) -#include -#endif - -#include - -#include -#include - -namespace boost { namespace geometry -{ - -#ifndef DOXYGEN_NO_DETAIL -namespace detail { namespace overlay -{ - -// The switch detector, the first phase in traversal, inspects UU and II turns. -// Suppose you have these two polygons in a union. There is one UU turn. -// +-------+ -// | | -// | A | -// | | -// +-------U---------+ U = UU turn -// | | -// | B | -// | | -// +---------+ -// It first assigns region ids, A gets id 1 and B gets id 2. -// Because of that, it should NOT switch sources in traversal at U. -// So coming from upper left, it follows A, and also at U it keeps following A. -// The result is two rings. (See for example testcase "case_31" or others.) -// -// But suppose you have two larger input polygons, partially overlapping: -// +-----------------+ -// | | -// | A +-----T---C I = interior in output -// | | I | O | O = overlap A & B (included in output) -// +-------U-----T---C U = UU turn -// | | T = normal turn (u/i) -// | B | C = collinear turn (c/c) -// | | -// +---------+ -// Rings A and B will be connected (by inspecting turn information) -// and there will be one region 1. -// Because of that, it will switch sources in traversal at U. -// So coming from lower right, it follows B but at U it will switch to A. -// Also for the generated interior ring, coming from the top via A it will at U -// switch to B and go to the right, generating I. (See for example "case_91") -// Switching using region_id is only relevant for UU or II turns. -// In all T turns it will follow "u" for union or "i" for intersection, -// and in C turns it will follow either direction (they are the same). -// There is also "isolated", making it more complex, and documented below. -template -< - bool Reverse1, - bool Reverse2, - overlay_type OverlayType, - typename Geometry1, - typename Geometry2, - typename Turns, - typename Clusters, - typename Visitor -> -struct traversal_switch_detector -{ - static const operation_type target_operation - = operation_from_overlay::value; - - enum isolation_type - { - isolation_no = 0, - isolation_yes = 1, - isolation_multiple = 2 - }; - - using turn_type = typename boost::range_value::type; - using set_type= std::set; - - // Per ring, first turns are collected (in turn_indices), and later - // a region_id is assigned - struct merged_ring_properties - { - signed_size_type region_id = -1; - set_type turn_indices; - }; - - struct connection_properties - { - std::size_t count = 0; - // Set with turn-index OR (if clustered) the negative cluster_id - set_type unique_turn_ids; - }; - - // Maps region_id -> properties - using connection_map = std::map; - - // Per region, a set of properties is maintained, including its connections - // to other regions - struct region_properties - { - signed_size_type region_id = -1; - isolation_type isolated = isolation_no; - set_type unique_turn_ids; - connection_map connected_region_counts; - }; - - // Maps ring -> properties - using merge_map = std::map; - - // Maps region_id -> properties - using region_connection_map = std::map; - - inline traversal_switch_detector(Geometry1 const& geometry1, - Geometry2 const& geometry2, - Turns& turns, Clusters const& clusters, - Visitor& visitor) - : m_geometry1(geometry1) - , m_geometry2(geometry2) - , m_turns(turns) - , m_clusters(clusters) - , m_visitor(visitor) - { - } - - bool one_connection_to_another_region(region_properties const& region) const - { - // For example: - // +----------------------+ - // | __ | - // | / \| - // | | x - // | \__/| - // | | - // +----------------------+ - - if (region.connected_region_counts.size() == 1) - { - auto const& cprop = region.connected_region_counts.begin()->second; - return cprop.count <= 1; - } - return region.connected_region_counts.empty(); - } - - // TODO: might be combined with previous - bool multiple_connections_to_one_region(region_properties const& region) const - { - // For example: - // +----------------------+ - // | __ | - // | / \| - // | | x - // | \ /| - // | / \| - // | | x - // | \__/| - // | | - // +----------------------+ - - if (region.connected_region_counts.size() == 1) - { - auto const& cprop = region.connected_region_counts.begin()->second; - return cprop.count > 1; - } - return false; - } - - bool one_connection_to_multiple_regions(region_properties const& region) const - { - // For example: - // +----------------------+ - // | __ | __ - // | / \|/ | - // | | x | - // | \__/|\__| - // | | - // +----------------------+ - - bool first = true; - signed_size_type first_turn_id = 0; - for (auto const& key_val : region.connected_region_counts) - { - auto const& cprop = key_val.second; - - if (cprop.count != 1) - { - return false; - } - auto const unique_turn_id = *cprop.unique_turn_ids.begin(); - if (first) - { - first_turn_id = unique_turn_id; - first = false; - } - else if (first_turn_id != unique_turn_id) - { - return false; - } - } - return true; - } - - bool ii_turn_connects_two_regions(region_properties const& region, - region_properties const& connected_region, - signed_size_type turn_index) const - { - turn_type const& turn = m_turns[turn_index]; - if (! turn.both(operation_intersection)) - { - return false; - } - - signed_size_type const id0 = turn.operations[0].enriched.region_id; - signed_size_type const id1 = turn.operations[1].enriched.region_id; - - return (id0 == region.region_id && id1 == connected_region.region_id) - || (id1 == region.region_id && id0 == connected_region.region_id); - } - - - bool isolated_multiple_connection(region_properties const& region, - region_properties const& connected_region) const - { - if (connected_region.isolated != isolation_multiple) - { - return false; - } - - // First step: compare turns of regions with turns of connected region - set_type turn_ids = region.unique_turn_ids; - for (auto turn_id : connected_region.unique_turn_ids) - { - turn_ids.erase(turn_id); - } - - // There should be one connection (turn or cluster) left - if (turn_ids.size() != 1) - { - return false; - } - - for (auto id_or_index : connected_region.unique_turn_ids) - { - if (id_or_index >= 0) - { - if (! ii_turn_connects_two_regions(region, connected_region, id_or_index)) - { - return false; - } - } - else - { - signed_size_type const cluster_id = -id_or_index; - auto it = m_clusters.find(cluster_id); - if (it != m_clusters.end()) - { - cluster_info const& cinfo = it->second; - for (auto turn_index : cinfo.turn_indices) - { - if (! ii_turn_connects_two_regions(region, connected_region, turn_index)) - { - return false; - } - } - } - } - } - - return true; - } - - bool has_only_isolated_children(region_properties const& region) const - { - bool first_with_turn = true; - signed_size_type first_turn_id = 0; - - for (auto const& key_val : region.connected_region_counts) - { - signed_size_type const region_id = key_val.first; - connection_properties const& cprop = key_val.second; - - auto mit = m_connected_regions.find(region_id); - if (mit == m_connected_regions.end()) - { - // Should not occur - return false; - } - - region_properties const& connected_region = mit->second; - - if (cprop.count != 1) - { - // If there are more connections, check their isolation - if (! isolated_multiple_connection(region, connected_region)) - { - return false; - } - } - - if (connected_region.isolated != isolation_yes - && connected_region.isolated != isolation_multiple) - { - signed_size_type const unique_turn_id = *cprop.unique_turn_ids.begin(); - if (first_with_turn) - { - first_turn_id = unique_turn_id; - first_with_turn = false; - } - else if (first_turn_id != unique_turn_id) - { - return false; - } - } - } - - // If there is only one connection (with a 'parent'), and all other - // connections are itself isolated, it is isolated - return true; - } - - void get_isolated_regions() - { - // First time: check regions isolated (one connection only), - // semi-isolated (multiple connections between same region), - // and complex isolated (connection with multiple rings but all - // at same point) - for (auto& key_val : m_connected_regions) - { - region_properties& properties = key_val.second; - if (one_connection_to_another_region(properties)) - { - properties.isolated = isolation_yes; - } - else if (multiple_connections_to_one_region(properties)) - { - properties.isolated = isolation_multiple; - } - else if (one_connection_to_multiple_regions(properties)) - { - properties.isolated = isolation_yes; - } - } - - // Propagate isolation to next level - // TODO: should be optimized - std::size_t defensive_check = 0; - bool changed = true; - while (changed && defensive_check++ < m_connected_regions.size()) - { - changed = false; - for (auto& key_val : m_connected_regions) - { - region_properties& properties = key_val.second; - - if (properties.isolated == isolation_no - && has_only_isolated_children(properties)) - { - properties.isolated = isolation_yes; - changed = true; - } - } - } - } - - void assign_isolation_to_enriched() - { - for (turn_type& turn : m_turns) - { - constexpr auto order1 = geometry::point_order::value; - constexpr bool reverse1 = (order1 == boost::geometry::counterclockwise) - ? ! Reverse1 : Reverse1; - - constexpr auto order2 = geometry::point_order::value; - constexpr bool reverse2 = (order2 == boost::geometry::counterclockwise) - ? ! Reverse2 : Reverse2; - - // For difference, for the input walked through in reverse, - // the meaning is reversed: what is isolated is actually not, - // and vice versa. - bool const reverseMeaningInTurn - = (reverse1 || reverse2) - && ! turn.is_self() - && ! turn.is_clustered() - && uu_or_ii(turn) - && turn.operations[0].enriched.region_id - != turn.operations[1].enriched.region_id; - - for (auto& op : turn.operations) - { - auto mit = m_connected_regions.find(op.enriched.region_id); - if (mit != m_connected_regions.end()) - { - bool const reverseMeaningInOp - = reverseMeaningInTurn - && ((op.seg_id.source_index == 0 && reverse1) - || (op.seg_id.source_index == 1 && reverse2)); - - // It is assigned to isolated if it's property is "Yes", - // (one connected interior, or chained). - // "Multiple" doesn't count for isolation, - // neither for intersection, neither for difference. - region_properties const& prop = mit->second; - op.enriched.isolated - = reverseMeaningInOp - ? false - : prop.isolated == isolation_yes; - } - } - } - } - - void assign_region_ids_to_enriched() - { - for (auto const& key_val : m_turns_per_ring) - { - ring_identifier const& ring_id = key_val.first; - merged_ring_properties const& properties = key_val.second; - - for (auto turn_index : properties.turn_indices) - { - turn_type& turn = m_turns[turn_index]; - - if (! acceptable(turn)) - { - // No assignment necessary - continue; - } - - for (auto& op : turn.operations) - { - if (ring_id_by_seg_id(op.seg_id) == ring_id) - { - op.enriched.region_id = properties.region_id; - } - } - } - } - } - - void assign_connected_regions() - { - for (std::size_t turn_index = 0; turn_index < m_turns.size(); ++turn_index) - { - turn_type const& turn = m_turns[turn_index]; - - signed_size_type const unique_turn_id - = turn.is_clustered() ? -turn.cluster_id : turn_index; - - signed_size_type const& id0 = turn.operations[0].enriched.region_id; - signed_size_type const& id1 = turn.operations[1].enriched.region_id; - - // Add region (by assigning) and add involved turns - if (id0 != -1) - { - m_connected_regions[id0].region_id = id0; - m_connected_regions[id0].unique_turn_ids.insert(unique_turn_id); - } - if (id1 != -1 && id0 != id1) - { - m_connected_regions[id1].region_id = id1; - m_connected_regions[id1].unique_turn_ids.insert(unique_turn_id); - } - - if (id0 != id1 && id0 != -1 && id1 != -1) - { - // Assign connections - connection_properties& prop0 = m_connected_regions[id0].connected_region_counts[id1]; - connection_properties& prop1 = m_connected_regions[id1].connected_region_counts[id0]; - - // Reference this turn or cluster to later check uniqueness on ring - if (prop0.unique_turn_ids.count(unique_turn_id) == 0) - { - prop0.count++; - prop0.unique_turn_ids.insert(unique_turn_id); - } - if (prop1.unique_turn_ids.count(unique_turn_id) == 0) - { - prop1.count++; - prop1.unique_turn_ids.insert(unique_turn_id); - } - } - } - } - - inline bool acceptable(turn_type const& turn) const - { - // Discarded turns don't connect rings to the same region - // Also xx are not relevant - // (otherwise discarded colocated uu turn could make a connection) - return ! turn.discarded && ! turn.both(operation_blocked); - } - - inline bool uu_or_ii(turn_type const& turn) const - { - return turn.both(operation_union) || turn.both(operation_intersection); - } - - inline bool connects_same_region(turn_type const& turn) const - { - if (! acceptable(turn)) - { - return false; - } - - if (! turn.is_clustered()) - { - // If it is a uu/ii-turn (non clustered), it is never same region - return ! uu_or_ii(turn); - } - - if BOOST_GEOMETRY_CONSTEXPR (target_operation == operation_union) - { - // It is a cluster, check zones - // (assigned by sort_by_side/handle colocations) of both operations - return turn.operations[0].enriched.zone - == turn.operations[1].enriched.zone; - } - else // else prevents unreachable code warning - { - // For an intersection, two regions connect if they are not ii - // (ii-regions are isolated) or, in some cases, not iu (for example - // when a multi-polygon is inside an interior ring and connecting it) - return ! (turn.both(operation_intersection) - || turn.combination(operation_intersection, operation_union)); - } - } - - void create_region(signed_size_type& new_region_id, ring_identifier const& ring_id, - merged_ring_properties& properties, signed_size_type region_id = -1) - { - if (properties.region_id > 0) - { - // Already handled - return; - } - - // Assign new id if this is a new region - if (region_id == -1) - { - region_id = new_region_id++; - } - - // Assign this ring to specified region - properties.region_id = region_id; - -#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSAL_SWITCH_DETECTOR) - std::cout << " ADD " << ring_id << " TO REGION " << region_id << std::endl; -#endif - - // Find connecting rings, recursively - for (auto turn_index : properties.turn_indices) - { - turn_type const& turn = m_turns[turn_index]; - if (! connects_same_region(turn)) - { - // This is a non clustered uu/ii-turn, or a cluster connecting different 'zones' - continue; - } - - // Union: This turn connects two rings (interior connected), create the region - // Intersection: This turn connects two rings, set same regions for these two rings - for (auto const& op : turn.operations) - { - ring_identifier connected_ring_id = ring_id_by_seg_id(op.seg_id); - if (connected_ring_id != ring_id) - { - propagate_region(new_region_id, connected_ring_id, region_id); - } - } - } - } - - void propagate_region(signed_size_type& new_region_id, - ring_identifier const& ring_id, signed_size_type region_id) - { - auto it = m_turns_per_ring.find(ring_id); - if (it != m_turns_per_ring.end()) - { - create_region(new_region_id, ring_id, it->second, region_id); - } - } - -#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSAL_SWITCH_DETECTOR) - void debug_show_results() - { - auto isolation_to_string = [](isolation_type const& iso) -> std::string - { - switch(iso) - { - case isolation_no : return "no"; - case isolation_yes : return "yes"; - case isolation_multiple : return "multiple"; - } - return "error"; - }; - auto set_to_string = [](auto const& s) -> std::string - { - std::ostringstream result; - for (auto item : s) { result << " " << item; } - return result.str(); - }; - - for (auto const& kv : m_connected_regions) - { - auto const& prop = kv.second; - - std::ostringstream sub; - sub << "[turns" << set_to_string(prop.unique_turn_ids) - << "] regions"; - for (auto const& kvs : prop.connected_region_counts) - { - sub << " { " << kvs.first - << " : via [" << set_to_string(kvs.second.unique_turn_ids) - << " ] }"; - } - - std::cout << "REGION " << prop.region_id - << " " << isolation_to_string(prop.isolated) - << " " << sub.str() - << std::endl; - } - - for (std::size_t turn_index = 0; turn_index < m_turns.size(); ++turn_index) - { - turn_type const& turn = m_turns[turn_index]; - - if (uu_or_ii(turn) && ! turn.is_clustered()) - { - std::cout << (turn.both(operation_union) ? "UU" : "II") - << " " << turn_index - << " (" << geometry::get<0>(turn.point) - << ", " << geometry::get<1>(turn.point) << ")" - << " -> " << std::boolalpha - << " [" << turn.operations[0].seg_id.source_index - << "/" << turn.operations[1].seg_id.source_index << "] " - << "(" << turn.operations[0].enriched.region_id - << " " << turn.operations[0].enriched.isolated - << ") / (" << turn.operations[1].enriched.region_id - << " " << turn.operations[1].enriched.isolated << ")" - << std::endl; - } - } - - for (auto const& key_val : m_clusters) - { - cluster_info const& cinfo = key_val.second; - std::cout << "CL RESULT " << key_val.first - << " -> " << cinfo.open_count << std::endl; - } - } -#endif - - void iterate() - { -#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSAL_SWITCH_DETECTOR) - std::cout << "BEGIN SWITCH DETECTOR (region_ids and isolation)" - << (Reverse1 ? " REVERSE_1" : "") - << (Reverse2 ? " REVERSE_2" : "") - << std::endl; -#endif - - // Collect turns per ring - m_turns_per_ring.clear(); - m_connected_regions.clear(); - - for (std::size_t turn_index = 0; turn_index < m_turns.size(); ++turn_index) - { - turn_type const& turn = m_turns[turn_index]; - - if BOOST_GEOMETRY_CONSTEXPR (target_operation == operation_intersection) - { - if (turn.discarded) - { - // Discarded turn (union currently still needs it to determine regions) - continue; - } - } - - for (auto const& op : turn.operations) - { - m_turns_per_ring[ring_id_by_seg_id(op.seg_id)].turn_indices.insert(turn_index); - } - } - - // All rings having turns are in turns/ring map. Process them. - { - signed_size_type new_region_id = 1; - for (auto& key_val : m_turns_per_ring) - { - create_region(new_region_id, key_val.first, key_val.second); - } - - assign_region_ids_to_enriched(); - assign_connected_regions(); - get_isolated_regions(); - assign_isolation_to_enriched(); - } - -#if defined(BOOST_GEOMETRY_DEBUG_TRAVERSAL_SWITCH_DETECTOR) - std::cout << "END SWITCH DETECTOR" << std::endl; - debug_show_results(); -#endif - - } - -private: - - Geometry1 const& m_geometry1; - Geometry2 const& m_geometry2; - Turns& m_turns; - Clusters const& m_clusters; - merge_map m_turns_per_ring; - region_connection_map m_connected_regions; - Visitor& m_visitor; -}; - -}} // namespace detail::overlay -#endif // DOXYGEN_NO_DETAIL - -}} // namespace boost::geometry - -#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSAL_SWITCH_DETECTOR_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/traverse.hpp b/include/boost/geometry/algorithms/detail/overlay/traverse.hpp index 6c0b4488e..a31668027 100644 --- a/include/boost/geometry/algorithms/detail/overlay/traverse.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/traverse.hpp @@ -17,9 +17,10 @@ #include -#include -#include -#include +#include +#include +#include +#include namespace boost { namespace geometry @@ -39,25 +40,10 @@ template bool Reverse1, bool Reverse2, typename Geometry1, typename Geometry2, - overlay_type OverlayType, - typename Backtrack = backtrack_check_self_intersections + overlay_type OverlayType > class traverse { - - template - static void reset_visits(Turns& turns) - { - for (auto& turn : turns) - { - for (auto& op : turn.operations) - { - op.visited.reset(); - } - } - } - - public : template < @@ -76,34 +62,22 @@ public : Clusters& clusters, Visitor& visitor) { - traversal_switch_detector + constexpr operation_type target_operation = operation_from_overlay::value; + + detect_biconnected_components(turns, clusters); + + traverse_graph < Reverse1, Reverse2, OverlayType, Geometry1, Geometry2, Turns, Clusters, - Visitor - > switch_detector(geometry1, geometry2, turns, clusters, - visitor); + IntersectionStrategy + > traverser(geometry1, geometry2, turns, clusters, + intersection_strategy); - switch_detector.iterate(); - reset_visits(turns); + traverser.iterate(rings); - traversal_ring_creator - < - Reverse1, Reverse2, OverlayType, - Geometry1, Geometry2, - Turns, TurnInfoMap, Clusters, - IntersectionStrategy, - Visitor, - Backtrack - > trav(geometry1, geometry2, turns, turn_info_map, clusters, - intersection_strategy, visitor); - - std::size_t finalized_ring_size = boost::size(rings); - - typename Backtrack::state_type state; - - trav.iterate(rings, finalized_ring_size, state); + update_ring_turn_info_map(turn_info_map, turns); } }; @@ -113,3 +87,4 @@ public : }} // namespace boost::geometry #endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TRAVERSE_HPP +// remove diff --git a/include/boost/geometry/algorithms/detail/overlay/turn_info.hpp b/include/boost/geometry/algorithms/detail/overlay/turn_info.hpp index f8cbabff4..711e269aa 100644 --- a/include/boost/geometry/algorithms/detail/overlay/turn_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/turn_info.hpp @@ -53,17 +53,9 @@ struct turn_operation { using segment_ratio_type = SegmentRatio; - operation_type operation; + operation_type operation{operation_none}; segment_identifier seg_id; segment_ratio_type fraction; - - using comparable_distance_type = coordinate_type_t; - comparable_distance_type remaining_distance; - - inline turn_operation() - : operation(operation_none) - , remaining_distance(0) - {} }; @@ -95,7 +87,8 @@ struct turn_info bool touch_only; // True in case of method touch(interior) and lines do not cross signed_size_type cluster_id; // For multiple turns on same location, > 0. Else -1. 0 is unused. bool discarded; - bool has_colocated_both; // Colocated with a uu turn (for union) or ii (other) + + bool is_traversable{true}; Container operations; @@ -104,7 +97,6 @@ struct turn_info , touch_only(false) , cluster_id(-1) , discarded(false) - , has_colocated_both(false) {} inline bool both(operation_type type) const diff --git a/include/boost/geometry/algorithms/detail/overlay/turn_operation_id.hpp b/include/boost/geometry/algorithms/detail/overlay/turn_operation_id.hpp new file mode 100644 index 000000000..3d75c3395 --- /dev/null +++ b/include/boost/geometry/algorithms/detail/overlay/turn_operation_id.hpp @@ -0,0 +1,55 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TURN_OPERATION_ID_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TURN_OPERATION_ID_HPP + +#include +#include +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail { namespace overlay +{ + +struct turn_operation_id +{ + std::size_t turn_index{0}; + int operation_index{0}; + + bool operator<(turn_operation_id const& other) const + { + return std::tie(turn_index, operation_index) < std::tie(other.turn_index, other.operation_index); + } + + bool operator==(turn_operation_id const& other) const + { + return std::tie(turn_index, operation_index) == std::tie(other.turn_index, other.operation_index); + } + + bool operator!=(turn_operation_id const& other) const + { + return ! operator==(other); + } + + friend std::ostream& operator<<(std::ostream& os, turn_operation_id const& toi) + { + os << toi.turn_index << "[" << toi.operation_index << "]"; + return os; + } +}; + +}} // namespace detail::overlay +#endif // DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_TURN_OPERATION_ID_HPP diff --git a/include/boost/geometry/algorithms/detail/overlay/visit_info.hpp b/include/boost/geometry/algorithms/detail/overlay/visit_info.hpp deleted file mode 100644 index e401fbbb4..000000000 --- a/include/boost/geometry/algorithms/detail/overlay/visit_info.hpp +++ /dev/null @@ -1,98 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) - -// Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands. - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_VISIT_INFO_HPP -#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_VISIT_INFO_HPP - - -namespace boost { namespace geometry -{ - -#ifndef DOXYGEN_NO_DETAIL -namespace detail { namespace overlay -{ - -class visit_info -{ -private : - static const int NONE = 0; - static const int STARTED = 1; - static const int VISITED = 2; - static const int FINISHED = 3; - static const int REJECTED = 4; - - int m_visit_code; - bool m_rejected; - bool m_final; - -public: - inline visit_info() - : m_visit_code(0) - , m_rejected(false) - , m_final(false) - {} - - inline void set_visited() { m_visit_code = VISITED; } - inline void set_started() { m_visit_code = STARTED; } - inline void set_finished() { m_visit_code = FINISHED; } - inline void set_rejected() - { - m_visit_code = REJECTED; - m_rejected = true; - } - - inline bool none() const { return m_visit_code == NONE; } - inline bool visited() const { return m_visit_code == VISITED; } - inline bool started() const { return m_visit_code == STARTED; } - inline bool finished() const { return m_visit_code == FINISHED; } - inline bool rejected() const { return m_rejected; } - inline bool finalized() const { return m_final; } - - inline void clear() - { - if (! m_rejected && ! m_final) - { - m_visit_code = NONE; - } - } - - inline void reset() - { - *this = visit_info(); - } - - inline void finalize() - { - if (visited() || started() || finished() ) - { - m_final = true; - } - } - -#ifdef BOOST_GEOMETRY_DEBUG_INTERSECTION - friend std::ostream& operator<<(std::ostream &os, visit_info const& v) - { - if (v.m_visit_code != 0) - { - os << " VIS: " << int(v.m_visit_code); - } - return os; - } -#endif - -}; - - -}} // namespace detail::overlay -#endif //DOXYGEN_NO_DETAIL - - -}} // namespace boost::geometry - - -#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_VISIT_INFO_HPP diff --git a/include/boost/geometry/algorithms/detail/position_code.hpp b/include/boost/geometry/algorithms/detail/position_code.hpp new file mode 100644 index 000000000..2d594c2cf --- /dev/null +++ b/include/boost/geometry/algorithms/detail/position_code.hpp @@ -0,0 +1,71 @@ +// Boost.Geometry + +// Copyright (c) 2025 Barend Gehrels, Amsterdam, the Netherlands. + +// Use, modification and distribution is subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_POSITION_CODE_HPP +#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_POSITION_CODE_HPP + +#include + +namespace boost { namespace geometry +{ + +#ifndef DOXYGEN_NO_DETAIL +namespace detail +{ + +// Position coding of the point with respect to a segment. +// This is a combination of side and direction_code. +// It is counter clockwise from the segment. +// (because polygons are on the right side of a segment, and this way +// we can walk through the ranks ascending. +// +// 3 +// | +// 4 * 2 *: p2 +// | +// 1 +// ^ ^: p1 +template +int get_position_code(Point const& p1, Point const& p2, Point const& point, SideStrategy const& side_strategy) +{ + using cs_tag = typename SideStrategy::cs_tag; + auto const side = side_strategy.apply(p1, p2, point); + if (side == 1) + { + // left of [p1..p2] + return 4; + } + else if (side == -1) + { + // right of [p1..p2] + return 2; + } + + // collinear with [p1..p2] + auto const dir_code = direction_code(p1, p2, point); + if (dir_code == -1) + { + // collinear, on [p1..p2] or before p1 + return 1; + } + else if (dir_code == 1) + { + // collinear with [p1..p2], but farther than p2 + return 3; + } + + // The segment is degenerate + return 0; +} + +} // namespace detail +#endif //DOXYGEN_NO_DETAIL + +}} // namespace boost::geometry + +#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_POSITION_CODE_HPP diff --git a/include/boost/geometry/core/exception.hpp b/include/boost/geometry/core/exception.hpp index 2dbd298ca..294a7464f 100644 --- a/include/boost/geometry/core/exception.hpp +++ b/include/boost/geometry/core/exception.hpp @@ -1,6 +1,6 @@ // Boost.Geometry (aka GGL, Generic Geometry Library) -// Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands. +// Copyright (c) 2007-2025 Barend Gehrels, Amsterdam, the Netherlands. // Copyright (c) 2008-2015 Bruno Lalande, Paris, France. // Copyright (c) 2009-2015 Mateusz Loskot, London, UK. @@ -20,6 +20,7 @@ #define BOOST_GEOMETRY_CORE_EXCEPTION_HPP #include +#include namespace boost { namespace geometry { @@ -102,6 +103,28 @@ public: } }; +/*! +\brief Logic Exception +\ingroup core +\details Defines a type of object to be thrown as exception. + It reports errors that are a consequence of faulty logic within the program + such as violating logical preconditions or class invariants and may be preventable. + */ +class logic_exception : public geometry::exception +{ +public: + inline logic_exception(char const* description) + : m_description(description) {} + + char const* what() const noexcept override + { + return m_description.c_str(); + } + +private: + std::string m_description; +}; + }} // namespace boost::geometry diff --git a/include/boost/geometry/strategies/relate/cartesian.hpp b/include/boost/geometry/strategies/relate/cartesian.hpp index dbeccb8c6..205c18920 100644 --- a/include/boost/geometry/strategies/relate/cartesian.hpp +++ b/include/boost/geometry/strategies/relate/cartesian.hpp @@ -33,6 +33,9 @@ #include #include +#include +#include + #include diff --git a/test/algorithms/buffer/buffer_cases.hpp b/test/algorithms/buffer/buffer_cases.hpp index 48127fb14..28eca8cc7 100644 --- a/test/algorithms/buffer/buffer_cases.hpp +++ b/test/algorithms/buffer/buffer_cases.hpp @@ -22,7 +22,7 @@ static std::string const rt_w1 static std::string const rt_w2 = "MULTIPOLYGON(((6 3,6 4,7 4,6 3)),((6 3,5 2,5 3,6 3)))"; -// Goes wrong either way +// Needs using collinear ahead properties for two u operations in a cluster, having the same target. static std::string const rt_w3 = "MULTIPOLYGON(((8 3,8 4,9 4,9 3,8 3)),((7 5,7 6,8 6,7 5)),((5 5,4 4,4 5,5 5)),((5 5,6 5,5 4,5 5)),((0 7,0 8,1 8,0 7)),((2 2,2 3,3 3,2 2)),((2 8,3 8,3 7,3 6,2 6,2 8)))"; @@ -38,11 +38,11 @@ static std::string const rt_w5 static std::string const rt_w6 = "MULTIPOLYGON(((7 0,7 1,8 0,7 0)),((8 6,8 7,9 7,9 6,8 6)),((2 8,3 9,3 8,2 8)),((4 3,4 4,5 4,4 3)),((6 5,6 6,7 6,6 5)),((1 7,2 7,1 6,0 6,1 7)),((1 5,0 4,0 5,1 5)),((1 5,2 6,2 5,1 5)),((0 4,1 4,0 3,0 4)),((2 1,1 0,0 0,0 1,2 1)),((7 4,6 3,6 4,7 4)),((7 4,7 5,8 5,7 4)),((6 3,7 3,6 2,6 3)))"; -// Fixed by first handling non-clustered turns +// Originally fixed by first handling non-clustered turns. Now always fine. static std::string const rt_w7 = "MULTIPOLYGON(((6 0,6 1,7 1,6 0)),((6 6,7 7,7 6,6 6)),((8 0,8 1,9 1,8 0)),((2 7,2 8,3 7,2 7)),((1 2,1 3,2 3,1 2)),((8 2,8 3,9 2,8 2)),((4 5,4 4,3 4,4 5)),((4 5,5 6,5 5,4 5)))"; -// Fixed select_collinear_target_edge +// Fixed by select_collinear_target_edge static std::string const rt_w8 = "MULTIPOLYGON(((0 4,0 5,1 5,0 4)),((1 3,1 4,2 4,1 3)),((2 8,2 9,3 8,2 8)),((6 3,6 4,7 3,6 3)),((7 1,7 2,8 2,8 1,7 1)),((0 2,0 3,1 2,0 2)),((0 2,1 1,0 1,0 2)),((3 2,3 1,2 1,3 2)),((3 2,2 2,3 3,3 2)),((9 6,9 5,8 5,9 6)),((9 6,8 6,8 7,9 7,9 6)),((5 2,5 1,4 1,4 2,5 2)),((5 2,5 3,6 2,5 2)),((5 6,4 6,4 7,5 6)),((5 6,6 5,5 5,5 6)),((5 6,6 7,6 6,5 6)))"; @@ -82,6 +82,7 @@ static std::string const rt_w16 static std::string const rt_w17 = "MULTIPOLYGON(((3 1,4 2,4 1,3 1)),((5 3,6 4,6 3,5 3)),((5 0,5 1,6 1,6 0,5 0)),((8 5,9 6,9 5,8 5)),((8 5,7 4,7 5,8 5)))"; +// Error in turn_in_piece, see readme static std::string const rt_w18 = "MULTIPOLYGON(((4 4,4 5,5 4,4 4)),((5 6,6 7,6 6,5 6)),((5 1,4 1,4 2,5 3,5 1)),((7 6,7 7,8 7,7 6)),((0 6,1 6,1 5,1 4,0 4,0 6)),((1 8,2 7,1 7,1 8)),((1 8,2 9,2 8,1 8)),((1 6,1 7,2 6,1 6)),((7 3,7 2,6 2,7 3)),((7 3,7 4,8 4,8 3,7 3)),((3 2,3 1,2 1,3 2)),((3 2,2 2,2 3,3 3,3 2)),((5 8,5 7,4 7,4 8,5 8)),((5 8,6 9,6 8,5 8)))"; @@ -121,7 +122,7 @@ static std::string const rt_w25 static std::string const rt_w26 = "MULTIPOLYGON(((6 6,6 7,7 6,6 6)),((0 0,0 1,1 1,1 0,0 0)),((3 6,2 5,2 7,2.5 6.5,3 7,4 6,5 5,3 5,3 6)),((3 2,2 2,2 3,1 3,3 5,3 2)),((3 1,4 0,3 0,3 1)),((3 1,2 0,2 1,3 1)),((3 7,2 7,2 8,3 7)),((1 8,0 8,0 9,1 9,1 8)),((1 8,2 7,1 7,1 8)),((2 5,1 5,1 6,2 6,1.5 5.5,2 5)),((5 0,5 1,6 1,6 0,5 0)),((1 3,1 2,0 2,1 3)),((4 6,4 7,5 7,5 6,4 6)),((1 6,0 6,0 7,1 6)),((1 5,1 4,0 4,0 5,1 5)),((6 1,6 2,7 2,7 1,6 1)),((6 2,6 3,7 3,6 2)),((7 1,8 1,8 0,7 0,7 1)))"; -// Fixed by fixing by suspicious UX turn. +// Needs original arrival behaviour static std::string const rt_w27 = "MULTIPOLYGON(((3 6,4 7,4 6,3 6)),((4 3,4 4,5 4,5 3,4 3)),((5 8,6 9,6 8,5 8)),((2 7,2 8,3 8,3 7,2 7)))"; @@ -141,4 +142,19 @@ static std::string const rt_w30 static std::string const rt_w31 = "MULTIPOLYGON(((0 1,0 2,1 2,1 1,0 1)),((0 4,0 5,1 5,0 4)),((3 8,4 8,3 7,2 7,3 8)),((3 2,3 3,4 3,3 2)),((0 6,0 7,1 6,0 6)),((0 8,0 9,1 8,0 8)),((4 5,4 4,3 4,3 5,4 5)),((4 5,4 6,5 6,4 5)),((9 3,9 2,8 2,8 3,9 3)),((7 4,7 5,8 5,7 4)),((7 4,6 3,6 4,7 4)),((6 8,7 8,6.5 7.5,7 7,6 7,6 8)),((5 6,5 7,6 6,5 6)))"; +static std::string const rt_w32 + = "MULTIPOLYGON(((2 8,3 9,3 8,2 8)),((2 8,1 8,1 9,2 8)),((3 6,4 5,3 5,3 6)),((3 6,2 6,2 7,3 6)),((3 8,4 8,4 7,3 7,3 8)),((1 2,0 2,0 3,1 3,1 2)),((1 2,1 1,0 1,1 2)))"; + +// Reports invalid output for join round - but it is a false negative, because the output is valid. +static std::string const rt_w33 + = "MULTIPOLYGON(((4 2,5 3,5 2,4 2)),((2 1,1 1,1 2,2 2,2 1)),((2 1,3 0,2 0,2 1)),((1 2,0 2,0 3,1 3,1 2)))"; + +// Reports invalid output for join round - but it is a false negative, because the output is valid. +static std::string const rt_w34 + = "MULTIPOLYGON(((8 6,8 7,9 6,8 6)),((1 1,1 2,2 2,1 1)),((0 3,1 4,1 3,0 3)),((4 2,5 3,5 2,4 2)))"; + +// Same as for rt_w33 and rt_w34. The miter variant has a small interior and an inside point which is on the border of many offset rings. +static std::string const rt_w35 + = "MULTIPOLYGON(((6 6,6 7,7 7,7 6,6 6)),((5 4,5 5,6 5,6 4,5 4)),((4 0,4 1,5 0,4 0)),((0 0,1 1,1 0,0 0)),((7 0,7 1,8 1,8 0,7 0)),((0 2,0 3,1 3,1 2,0 2)),((3 3,4 2,3 2,3 3)),((3 3,3 4,4 4,4 3,3 3)))"; + #endif diff --git a/test/algorithms/buffer/buffer_countries.cpp b/test/algorithms/buffer/buffer_countries.cpp index 8444e5bd3..30151db9b 100644 --- a/test/algorithms/buffer/buffer_countries.cpp +++ b/test/algorithms/buffer/buffer_countries.cpp @@ -175,7 +175,7 @@ void test_all() test_one("nl100", nl, 0, -100); test_one("no1", no, 1819566570720, 1); - test_one("no2", no, 1865041238129, 2, ut_settings::ignore_validity()); + test_one("no2", no, 1865041238129, 2); test_one("no5", no, 1973615533600, 5); test_one("no10", no, 2102034240506, 10); test_one("no20", no, 2292171257647, 20); diff --git a/test/algorithms/buffer/buffer_linestring_geo.cpp b/test/algorithms/buffer/buffer_linestring_geo.cpp index eae435730..1c16e9723 100644 --- a/test/algorithms/buffer/buffer_linestring_geo.cpp +++ b/test/algorithms/buffer/buffer_linestring_geo.cpp @@ -57,11 +57,13 @@ void test_linestring() test_one_geo("sharp_5_miter", sharp, strategy, side, circle, join_miter, end_round, 3181.0, 5.0, settings); test_one_geo("sharp_5_miter25", sharp, strategy, side, circle, join_miter25, end_round, 3121.0, 5.0, settings); +#if defined(BOOST_GEOMETRY_TEST_FAILURES) if (! BOOST_GEOMETRY_CONDITION(thomas_skip)) { // Misses an intersection point when using thomas test_one_geo("opposite", opposite, strategy, side, circle, join_round, end_round, 1658.0, 5.0, settings); } +#endif { auto specific = settings; @@ -82,11 +84,11 @@ void test_linestring() // Cases which are curved such that the min area is smaller than expected. std::set const curved_cases_min_area{86, 181}; // Cases which are curved such that the max area is larger than expected. - std::set const curved_cases_max_area{5, 95, 119, 142, 192}; + std::set const curved_cases_max_area{5, 95, 119, 142}; // Cases which are rounded such that it results in a large area - std::set const round_cases_max_area{196}; + std::set const round_cases_max_area{}; // Cases which are not yet valid or false negatives - std::set const round_cases_invalid{143}; + std::set const round_cases_invalid{}; for (auto i = 0; i < n; i++) { @@ -116,12 +118,23 @@ void test_linestring() settings_rr.set_test_validity(round_cases_invalid.count(i) == 0); - if (i != 181) +#if ! defined(BOOST_GEOMETRY_TEST_FAILURES) + if (i == 143 || i == 196) { - // 181 fails, it should generate a hole, but instead that is the outer ring now. - test_one_geo("aimes_" + std::to_string(i) + "_rr", testcases_aimes[i], - strategy, side, circle, join_round, end_round, -1, 25.0, settings_rr); + continue; } + if (i == 75) + { + // One regression + continue; + } + // Old message: + // 181 fails, it should generate a hole, but instead that is the outer ring now. + +#endif + + test_one_geo("aimes_" + std::to_string(i) + "_rr", testcases_aimes[i], + strategy, side, circle, join_round, end_round, -1, 25.0, settings_rr); test_one_geo("aimes_" + std::to_string(i) + "_rf", testcases_aimes[i], strategy, side, circle, join_round, end_flat, -1, 25.0, settings); test_one_geo("aimes_" + std::to_string(i) + "_mf", testcases_aimes[i], diff --git a/test/algorithms/buffer/buffer_multi_linestring.cpp b/test/algorithms/buffer/buffer_multi_linestring.cpp index 364c45f26..0021cad7f 100644 --- a/test/algorithms/buffer/buffer_multi_linestring.cpp +++ b/test/algorithms/buffer/buffer_multi_linestring.cpp @@ -195,6 +195,8 @@ void test_all() test_one("mysql_23023665_1_20", mysql_23023665_1, join_round32, end_flat, 1, 1, 350.1135, 2.0); + // A heavy buffer operation, most lines start at the same point, causing clusters of up to 121 turns, + // having mainly the same segments. test_one("ticket_13444_1", ticket_13444, join_round32, end_round32, 3, 0, 11799.2681, 1.0); test_one("ticket_13444_3", diff --git a/test/algorithms/buffer/buffer_multi_polygon.cpp b/test/algorithms/buffer/buffer_multi_polygon.cpp index 1c07eeec8..8743cee16 100644 --- a/test/algorithms/buffer/buffer_multi_polygon.cpp +++ b/test/algorithms/buffer/buffer_multi_polygon.cpp @@ -415,6 +415,8 @@ static std::string const mysql_report_2015_07_05_2 #define TEST_BUFFER(caseid, join, end, area, distance) (test_one) \ ( #caseid "_buf", caseid, join, end, area, distance) +#define TEST_BUFFER_VALIDITY_FALSE_NEGATIVE(caseid, join, end, area, distance) (test_one) \ + ( #caseid "_buf", caseid, join, end, area, distance, ut_settings::ignore_validity()) template void test_all() @@ -603,49 +605,74 @@ void test_all() test_one("rt_v4", rt_v4, join_round32, end_flat, 23.4146, 1.0); TEST_BUFFER(rt_w1, join_miter, end_flat, 30.3995, 1.0); -#if defined(BOOST_GEOMETRY_TEST_FAILURES) TEST_BUFFER(rt_w2, join_miter, end_flat, 13.65685, 1.0); - TEST_BUFFER(rt_w3, join_miter, end_flat, 19.39949, 1.0); -#endif + TEST_BUFFER(rt_w3, join_miter, end_flat, 53.1421, 1.0); + +#if defined(BOOST_GEOMETRY_TEST_FAILURES) || defined(BOOST_GEOMETRY_CONCEPT_FIX_BLOCK_Q) TEST_BUFFER(rt_w4, join_miter, end_flat, 57.37, 1.0); +#endif + TEST_BUFFER(rt_w5, join_miter, end_flat, 106.7279, 1.0); TEST_BUFFER(rt_w6, join_miter, end_flat, 79.799, 1.0); -#if defined(BOOST_GEOMETRY_TEST_FAILURES) TEST_BUFFER(rt_w7, join_miter, end_flat, 58.8701, 1.0); -#endif TEST_BUFFER(rt_w8, join_miter, end_flat, 83.4852, 1.0); TEST_BUFFER(rt_w9, join_miter, end_flat, 68.9852, 1.0); TEST_BUFFER(rt_w10, join_miter, end_flat, 88.1985, 1.0); TEST_BUFFER(rt_w11, join_miter, end_flat, 53.4853, 1.0); TEST_BUFFER(rt_w12, join_miter, end_flat, 28.7353, 1.0); TEST_BUFFER(rt_w13, join_miter, end_flat, 25.5711, 1.0); -#if defined(BOOST_GEOMETRY_TEST_FAILURES) TEST_BUFFER(rt_w14, join_miter, end_flat, 58.05634, 1.0); -#endif TEST_BUFFER(rt_w15, join_miter, end_flat, 80.1348, 1.0); TEST_BUFFER(rt_w16, join_miter, end_flat, 31.6495, 1.0); TEST_BUFFER(rt_w17, join_miter, end_flat, 33.74264, 1.0); - TEST_BUFFER(rt_w18, join_miter, end_flat, 82.4779, 1.0); - TEST_BUFFER(rt_w19, join_miter, end_flat, 53.7132, 1.0); - TEST_BUFFER(rt_w20, join_miter, end_flat, 63.0269, 1.0); + #if defined(BOOST_GEOMETRY_TEST_FAILURES) + TEST_BUFFER(rt_w18, join_miter, end_flat, 82.4779, 1.0); +#endif + +#if defined(BOOST_GEOMETRY_TEST_FAILURES) || defined(BOOST_GEOMETRY_CONCEPT_FIX_ARRIVAL) + // See comments at issue issue_1262 + TEST_BUFFER(rt_w19, join_miter, end_flat, 53.7132, 1.0); +#endif + + TEST_BUFFER(rt_w20, join_miter, end_flat, 63.0269, 1.0); TEST_BUFFER(rt_w21, join_miter, end_flat, 26.3137, 1.0); -#endif + +#if defined(BOOST_GEOMETRY_TEST_FAILURES) TEST_BUFFER(rt_w22, join_miter, end_flat, 86.0416, 1.0); +#endif + TEST_BUFFER(rt_w23, join_miter, end_flat, 59.5711, 1.0); + +#if defined(BOOST_GEOMETRY_TEST_FAILURES) || defined(BOOST_GEOMETRY_CONCEPT_FIX_BLOCK_Q) TEST_BUFFER(rt_w24, join_miter, end_flat, 64.1985, 1.0); +#endif + TEST_BUFFER(rt_w25, join_miter, end_flat, 84.3848, 1.0); TEST_BUFFER(rt_w26, join_miter, end_flat, 91.6569, 1.0); -#if defined(BOOST_GEOMETRY_TEST_FAILURES) + +#if ! defined(BOOST_GEOMETRY_CONCEPT_FIX_ARRIVAL) + // These two cases FAIL if the concept fix is applied. + // See also comments at issue issue_1262 TEST_BUFFER(rt_w27, join_miter, end_flat, 31.6569, 1.0); -#endif - TEST_BUFFER(rt_w28, join_miter, end_flat, 100.0710, 1.0); TEST_BUFFER(rt_w29, join_miter, end_flat, 25.1421, 1.0); -#if defined(BOOST_GEOMETRY_TEST_FAILURES) +#endif + + TEST_BUFFER(rt_w28, join_miter, end_flat, 100.0710, 1.0); + TEST_BUFFER(rt_w30, join_miter, end_flat, 59.4485, 1.0); TEST_BUFFER(rt_w31, join_miter, end_flat, 85.7916, 1.0); + +#if defined(BOOST_GEOMETRY_TEST_FAILURES) || defined(BOOST_GEOMETRY_CONCEPT_FIX_START_TURNS) + TEST_BUFFER(rt_w32, join_miter, end_flat, 40.6569, 1.0); #endif + TEST_BUFFER_VALIDITY_FALSE_NEGATIVE(rt_w33, join_round32, end_flat, 23.3895, 1.0); + TEST_BUFFER_VALIDITY_FALSE_NEGATIVE(rt_w34, join_round32, end_flat, 26.5830, 1.0); + TEST_BUFFER_VALIDITY_FALSE_NEGATIVE(rt_w35, join_round32, end_flat, 51.63174, 1.0); + + TEST_BUFFER(rt_w35, join_miter, end_flat, 57.6569, 1.0); + test_one("nores_mt_1", nores_mt_1, join_round32, end_flat, 13.4113, 1.0); test_one("nores_mt_2", nores_mt_2, join_round32, end_flat, 17.5265, 1.0); test_one("nores_mt_3", nores_mt_3, join_round32, end_flat, 25.6091, 1.0); @@ -666,6 +693,8 @@ void test_all() test_one("nores_wt_1", nores_wt_1, join_round32, end_flat, 80.1609, 1.0); test_one("nores_wt_2", nores_wt_2, join_round32, end_flat, 22.1102, 1.0); + + // Fails if BOOST_GEOMETRY_CONCEPT_FIX_BLOCK_Q_1 is set test_one("nores_b8e6", nores_b8e6, join_round32, end_flat, 19.8528, 1.0); test_one("nores_2881", nores_2881, join_round32, end_flat, 16.5510, 1.0); diff --git a/test/algorithms/buffer/buffer_polygon.cpp b/test/algorithms/buffer/buffer_polygon.cpp index 48c644901..a63444b67 100644 --- a/test/algorithms/buffer/buffer_polygon.cpp +++ b/test/algorithms/buffer/buffer_polygon.cpp @@ -577,7 +577,7 @@ void test_all() test_one("ticket_10412", ticket_10412, join_miter, end_flat, 3109.6616, 1.5, settings); test_one("ticket_11580_100", ticket_11580, join_miter, end_flat, 52.0221000, 1.00, settings); #if defined(BOOST_GEOMETRY_TEST_FAILURES) - // Larger distance, resulting in only one circle. Not solved yet in non-rescaled mode. + // Larger distance, resulting in only one circle. Not solved yet. test_one("ticket_11580_237", ticket_11580, join_miter, end_flat, 999.999, 2.37, settings); #endif @@ -624,7 +624,17 @@ void test_all() bg::strategy::buffer::join_round join_round4(4); bg::strategy::buffer::end_round end_round4(4); test_one("issue_1262", issue_1262, join_round4, end_round4, 0.0, -1.8); +#if defined(BOOST_GEOMETRY_TEST_FAILURES) || defined(BOOST_GEOMETRY_CONCEPT_FIX_ARRIVAL) + // TRAVERSE_GRAPH New failure: + // It has a wrong segment id. That causes wrong ordering. + // This is caused by a wrong arrival, or a wrong fraction assigned + // due to arrival==1 + // It cannot be fixed by the new graph traversal, because the input order is wrong. + // The old algorithm could somehow cope with it. + // It can be fixed by defining BOOST_GEOMETRY_CONCEPT_FIX_ARRIVAL + // (but that causes some other regressions: rt_w27, rt_w29) test_one("issue_1262_1", issue_1262, join_round4, end_round4, 8.9161, -1.0); +#endif test_one("issue_1262_2", issue_1262, join_round4, end_round4, 62.5276, -0.8); test_one("issue_1262_3", issue_1262, join_round4, end_round4, 193.47288, -0.4); } diff --git a/test/algorithms/buffer/buffer_variable_width.cpp b/test/algorithms/buffer/buffer_variable_width.cpp index a4f6e241b..01177265e 100644 --- a/test/algorithms/buffer/buffer_variable_width.cpp +++ b/test/algorithms/buffer/buffer_variable_width.cpp @@ -19,9 +19,6 @@ namespace bg = boost::geometry; -#if defined(TEST_WITH_SVG) -#include "test_buffer_svg.hpp" -#endif // A point with extra info, such that // - it can influence the buffer with dynamically (input) @@ -113,32 +110,13 @@ void test_buffer(std::string const& caseid, std::string const& wkt, std::vector< throw std::runtime_error("There should be correct widths"); } - using point_type = specific_point; - using strategy_t = bg::strategies::buffer::services::default_strategy< - mls_t>::type; - strategy_t strategy; -#if defined(TEST_WITH_SVG) - bg::model::box envelope; - bg::envelope(mls, envelope, strategy); - - buffer_svg_mapper buffer_mapper(caseid); - - std::ostringstream filename; - filename << "/tmp/buffer_variable_width_" << caseid << ".svg"; - std::ofstream svg(filename.str().c_str()); - typedef bg::svg_mapper mapper_type; - mapper_type mapper(svg, 1000, 800); - - svg_visitor> visitor(mapper); - - // Set the SVG boundingbox, with a margin. The margin is necessary because - // drawing is already started before the buffer is finished. It is not - // possible to "add" the buffer (unless we buffer twice). - buffer_mapper.prepare(mapper, visitor, envelope, 2.0); -#else bg::detail::buffer::visit_pieces_default_policy visitor; -#endif + + + using point_type = specific_point; + using strategy_t = bg::strategies::buffer::services::default_strategy::type; + strategy_t strategy; for (std::size_t i = 0; i < mls.size(); i++) { @@ -165,10 +143,6 @@ void test_buffer(std::string const& caseid, std::string const& wkt, std::vector< strategy, visitor); -#if defined(TEST_WITH_SVG) - buffer_mapper.map_input_output(mapper, mls, result, false); -#endif - std::cout << caseid << " : " << boost::geometry::area(result) << std::endl; BOOST_CHECK_CLOSE_FRACTION(boost::geometry::area(result), expected_area, 0.001); } diff --git a/test/algorithms/buffer/images/rt_w15.png b/test/algorithms/buffer/images/rt_w15.png new file mode 100644 index 0000000000000000000000000000000000000000..cfd99d3bf1c0d2c92e61489d57776303c109a1a0 GIT binary patch literal 387315 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�A`Za8kz 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 z

#DMApIe2BhWKiuwkJu7g35vP7}R00GnlChzCfetf+*98odJtqUsr@f<|-w;0g} za8A1io-gyBe*5}4C)&<@l^$suqs>sNlxKWe5_GHswtUk!Pp7hlKBh8<&hwVuz&5~o ze4&slL1Qry5w&LBZ9wj0 zw60N=u1^I{4Xi$g^ZPet9uZ%@s&5W=T1b8OW?$$p4zs^1I)#^D(+@W-5;~^$?*Ejr zVkWX<9n(2JMT!MikDl8spjHYMW=q{am#J2yVfZRcdBljp_?*5Ou7I?o1pLO!vADQf zKXua*-MkRstBO77=6^%6%WQDNGu_*##<^D}Ijpg7{)itww@rhig{x9%HBF7CeCu9Ien;@zG-s@91_!rZaS~xFAL6cWys%=HW#u)9Qo}YBJuxYrRsU=kRf{9={h3MUYH~ z@NfSePNl$E;8HffH$i-nugFT&3tmQM_Q8}EG^)A^J!Xx?2%qdk|&91Cx;V$n7 zM-oJUdH>qHZ{%Rkx7M$&eqa9@-!UViTUJcCrIJ276RRw0z|6;^}+ zrM0c)Vfup#1Bzfuwt`jX9IvH_h>k){9#jXNc2VoftY4g7jYe=aOk|))L~q~B%rDqs zP}oofq$+t=rW?Y=S5xpAj-P__&{xKcq`5U^k{JBUu^G~zACB0~RTtz8-%M%B_8e|f zcKKD{Zn^Sn@M@0-IYbMH#o3>*q+R(72{A<-O<|GT*H04mf_N z?IE^*CY}g3pyZ?-tb$duI({Oavj@XXxXH(y1zXOSk8lpBcbYNNObaIYURp!XMm=M- znrj!(=O0v^)sv#HH^rKW+Sktk4{e3-u_* zg+?vlgY*ZtnAfeEg~=J*4Uxg6@8iO-u>#n0RBDH!&Qv`5re%tx25i_Sy!>Sr7WqJO$a}X0jL-Hs_K==90LI5V?+2a5th} zh#6uEgZZ4P>5z%J9Ypc{RFd(1OyskF=0nW=u#ozoQEM{GC*U7bhleItpK?x+7ENrK z!gt2IkT{hLvp>`6y2t*+5 zq%~2ZHM7J5spKQg&3AAr{^G9Z&EDPmQ1F9qci`jKxa9=H~jP3M7fRqZTI@Imh4UdO1R&0 zkDlvZqZlRpL&%h<#lw;5&QLaZ{EQVW12qNVlsQ)LppUS`-7I*4U3Z}Ec(f=qk#<%m znMhTvR1{OWi(>0U`wu7UZIhWzjz5^JHRdnS7d$>oy~3^u)LgUUB|=#j*YbXiAZ7RS z22sWm$a7#$?e%Yonom|j;S?1&<@S-Bk#3|o7~;j0JQ4@t@p+*CNrKsj`s{qIAclw5 zfqLt&eKy_X_(cDIlC;wdcPzpVm#USZzCocB{!oAje2B z{xm4=&HuAo>?F=LKXf`>>B-`u$|@hTy?@Fbt=2y{KXa|;P^x_LdRdfRxva5faDVbJ zoc$|imP8PYXq39<7gJ+s^l5zmm7}RN1(Xznl!li>h2y6};^oVhe7`;d$rRc3!SZU9)?7YY#xFj`O8!8-xbU&=s1A1M*|s_d$ZiL6AeGgAG*wKZx-)~ zi7S-2aFTf*tfS(^ecffI-I3W+I?VIFWxi*ARF|0*>468U$nKL+kNiKc-tdl0wyKjA z%Q9$o5VjrR995kLTG4d5%cYF-Dr(uQKna;9$Y+6hJc`EhI8R=VY_WmgUDPD%k6d!z|@5LnS)G-an@-1rwNS4 zaQ0@jH}$Qs6D*Sh8EFOHPeCZEl z0y(CecCb^ac@LOl_s)|6k+M!!gE`kzyjW3B;^P;HKS1Cn7Dt(g-Yf-qHsysHXr}rV zE#jzv#LS;z9ct6$tT2N$lgC+68~@@&Gi$A)kca@fLbR?}YdR-WRdfHquThCA-=m5* zFT$RL1lmwYpHYJ$<$II4-#_7_@9oL0gs)$?4(jo-tEao5I(=O9bw3{Ekf8;n)*){8 zlmO_4FL&T*#?BxuB;0&%6hDgsffD+Pu2+KG&lLUr{a*s&xXa=IFnAuIs`gM0$SFLy zJ;JwVwi63|G1G6JorDu;eY9CdR+ZfdG%0n^8XFbpJjb7EMG6knT0<_t zI}uGlkgpbX=KFYHMGYXPP}rcUktFMFPh$uIft4ZRXe0o;Yc_PBn&_9pU=`WsE)AYD$HW64n6 z9wEEMc9uj~l6J_6`fpRLvU<+d}YGl>&d)AF;lNC}kZJ7H_&7i$c~ck$POG3>1B z>KS?S2|-;hLYklH_H@{v9Jc<;qKAF|Y*>@%exMQfxro}Zch299*`6@m3Z|-O$Q=A4 z!lRewfmWCj6BBVhP7z5tPi9fDXkmC#B2aGd6+*5lAgMXzNxs5J9ew|iuyA$F z6D+hZ?TWEfulV^!?U!k`NPj3x*vhD{yPrDEB7lvm1_5%i`^9U)#HiSiAqR`R!s2*6p9@1X?Nc;;cIf> z693Y$om9Wx(_0WP-$JALI%cek8&7t1iApEkJ1oKDJ+Io~{fYhkAq0M$oc#A?=S#6D z<3A5`#*XTTE@p^|p$+?g`N?lSnp2E*M^U6CMDnJIscGICcpM>&bwqI-8RKm?<-(`G zfP{lWg%AJ}kzqA!nvpW3-K8uqRwWOaCrjtF9U6#a#sf9uPOzbTsZ{~Co`j!2{Q!GE zA;!qggFgj2|F!w-Pi7Y2=f|5ZR0gv^{aK{hxxbO16S&hWI3D`zi=fN!*8UlL&y8s^ zJ;euegY;EX<9YoPX};1whCvNB-!dpBkY%j5)s?jAHoosOOY_;BZadFDcR`dpL+D3Q z|38tR1{Axm#s3`BioJkrs7m4HtBci1*tQ_>d>)ic1#v=E;L#K>xyS3Y-M>+yh2Uuh ziwI=Hp)txa;jg<*p;z+>_uH;#ex73(i{rgN9Etp@ zFui8|7u!KMs+L=X#diEmWIE=kvCWOT5tMy(o-RHbSX_1MaFyYR-|i`?4M?3>RU^up zHn>rNo3UH}#QCSj48q?>$H8MAl<|6wSwF($OP?WL5WC!ooyu0XoS_o-)iTa!4o={= zs3KcZKtPP<1-lDG%KkEJ^eRtDC-#j`*WeErR_(idRU$Pr;m-Lp zDAdoxdBS+CX>yvzXyT^jp2w82)C?Z(=v%xKG(*`cS~hyE}u$3#%=5Wx5mP|LJuR6mNC`>Xup%$C zpTW^27co^rYE-WKTr6n-GK*4!NR|93@&o|0^wj$4=rx5U*P?R*W# z-I*@mDd3W%#qbuOV~+&h0tX}$T24uf`6_F?TK;*B#a@7lZ6pr2*EtQt@zAPchi}^f zYgl-VUrO&+S3j$gYY*-j5}r>!a~}R>AS}~<`$O9(e@rTEDJ^SBbe>I~o#*W)zGkgr ziJnD2x(};mUCpHqbf}a)>?lEm_*&Ui$cDS~<6GKYh>G1b3?=@%G)?u*tdibM?|!&% z!b{MDkn#G2SsJ0%OdVsIs&y%HW3|fX$Ox&gF0hffPPG)4=lLvsR7F7TBUQT90N&VNzVv;mzc9~*=MmN#+kb38e~i{0 z46N|L86^lp%3A;Zb$O`2Co>4u@oUJkL#_-hvU;(=frUCMDQQ>53%<*~??4dIi%;qS zj=z3iVXlvvj}$>4%R?K_*Pdyb&&Mma7xE5>qsP}$bPc;!S0;Gv&)Gt1eU~WIfAARg z&ys5ydZ~lUg=()2ai7N;@L^FOAfo%yz6_i{7)<^r{xfNd3FE>=LCX|6a&vfctQ8VL z{@uuAsiaD-IZvh~Yt`F0z_?j)EiyPkcm70N^ljMLH%yxvW>;%yN(clIki90O5jbwP zfe@W1+aq2?uXdQ$6mRgt73VfA>Fv_gPhd23_)onH4D(ED?c4ci{&L@>qXRwXMG))M ziD@cA8(U(`%Ht}QZ#c9ma#}rJKscAwHT<#`HaxLci>*GSijKtb;_oDoEzH zxAvQV=@fd>Bpx^UTZ=gIY|q0(-QTwn#2%*kgQCIM_E)K!m*?-+FB{ZITfoe2)osQ9 zYD6S8JsE3?o{yc%IL*=uuv{kQ{)J6FT83sH7Drw9ku>#lQ+LpyEeNa!x#r z@8-re7#%Y0b^9zHf-*GZj=vXD0gJQLon`7XBWf9XMY6h7Ip9YGc$pEPf#k~;$hA^u#cxV1)0!nr2bNGarn|= zeUQ^nzEnq@6yTedRbo+UR|ydDs5GcWG0&pimw24a3e-<`cADe0BBT&w1q_S8C;#}) zop1UMJd(n(-C>Tr9xjGmo3mVG+z%hSgh&r}UQNNl6+&D&jMP3t3$=(E&7LHknm61u zO9lENk*{Orr;{iwpd?*1Tt}UYQIV>A->V*2%lfWTU_5wHNe*a%@er{@$I;@l?=~R8 zQm7Cv4-e!Z)}Vooi0xis%@R*$t((DrTv#n~Nblin!lWP&{Q^;&#?&be-Xv;%zzO7mlmcTx|H}aE zj8yg~&6xJ+hE059aUUk^y_bG6 z2sCV&vb83gr?aPuEFSfK^ywv9t6MZsPji%Ot$Xn6si*9WV9`b4QSqPNuO9+B93^jp zAafzDdp<)dzHDdpTKUbM{ZVcnQ)JAID-Eulluse21@q$cq6fh(ZWwCFb(TKaQSwCg zC-7bMqYv}%)TJSIUyDq}If?SKHMsndfjHgK-1e^NI?+8O*Q}e~-rfWEXNbtvnhJpq zXzZz}9z5+oD=0pn3Cmbt(egd-$tar}Phny4IY6tpatSwOCR!+$7Yo@3i-)xasWXaK z0uO6uFC)gqcwHZ+6oL>tu32fe3=TdWC_3ios#XW%Y-las5K`}-6@u+~28o=TKKJ~5 zEWpfUbTK;2`}IC1x?WahN-513>L|ueXpsH~AoojY%OG7M60C`iB`xUZsL*(goDP z+8`oxBdo%hs%a8%N7e5-dAi$h7m{zHJu;P#BSkq4jaRoP1azIqE#rK3F}%Jk?)pKz zNGN}iV?^ISfD!XOAFSpFNS`^lE0=72OgKom3?p}nYsCs8X)|*_1BzPXhaKWf({lq@v!i29j{g@eI1WaYGm1`f5XICCcJcW zk#kCpJK90ac0YUxKGVqYUoy&{54e@LfN+a!i5n2fMWaz104=bFQ7T|zi+%W^hIA4k z(g3SKs|y_ZRw%ttVsvB#R3c^QmYYA+1s)inPqF>2iy94XwieDI29}wU=i`ua&Jubz zy%?sAIOJ;ikKI@hb>G!pn2V|5y6?`>N|iody-c$h;#o-1jK zG!MBS7*8~<2cCNVlgkiALt0@83`*~)polZn_i;9LQKYxIZSV#aV_U&PgkvDysHC^a~Q(`b-`EUhR?8UnHG(n*bPRSByTv?TE)k5G) zf$wU2$?>>%E9J(w{@gyiANE=YUgoRtho3pHsEk7uwY*|-DqyUa5N*Be6PF#xbC}xv zkoe>p?vKe}wHA|torqVKiXr}dnUvI5R2^1n-|@uDyqJ0lDEZg)wuXaMOFuc66b3bi z!#j4$7P#M5%<_j_dPzz;~*&15%Jp=PCd>=aX>U0=}X1^0u4Oh1*H4!UP6?#=Of=+~_`lVc3zrX2{;XjSTbA>B27-U6)#RjcSyiBU4{nNU zc0h{mh$l;7Exuom|CVCpCZu^#ab$S^MG&0$fGN*v!4GScHEU% zgBY8ZrcYy;uDP}w&-)(Up-{R99#?I`0U4KS+S!d)!w^NiYtqiX^USNlWDLc{uwc@` z)RjX#firKWKnzENB&w+@5_L^L_-d5?^4G+|2OMqJ)74b!VNT0=I@?AYo{59ZwMwXO z>P!b-(Wlf}AP}?J7_p_0ik%AmvbK436HvBAK$l`===S4YGs# zDxgW#1+r_XXL*KhxZ4KfualdeR{2z;$gXwx=9F4Tf5)XbKmkWh*)OTex{MxJkE&Jav6f7p`=7B|}R&oaAv&iq)iSY4L@1FZ{WC0O41-f{y ztNL>uJTa&PkG{E*xg@cjB-{R1UQE>#I02|K9L;CYLYDSb?J*y}EAs4C2Wwp286n8h zf42v>7`f8`PXTIT~NTzi(o@@BWzSk{{NlC3{ ze9Kfw>Q61yRb1^cQY0PPqT*1?NTiX%QwpWn{@9h&O9-9?@VmrPnQS2EYrD>W^ba*o zZ(gg*S1`JL?rSGX!-_+lhe!ttRzWtplig>Z0R2H%Iy(L*$XI!;Ri}OtpQ;yjb`-;y z^hTS#tKc(65OYYZwXBu@PyD!mey9yFeTGU>>QgMeGk`7}04L>N8E@~~`YbHf8cVIW zA!`xV1{0qJ&PEkZ%!D4v%NEgRB-1+&W^si$(IijdHs)+uhFRpQRO#|jhJ4b3xnyQ| zhn20o>v{dV%dLM0_R@Z`vl#e(au5ELA>f{2Qqh)BmdQ3}vw@mP?H!JYWmiG>nPYc9 znW(QPEw4VZLTFJ8Zb*|!Rt!j68>8f%_F*<+rkRj5+1{5lt8qC6E0|{=R3*jS1Uz0>gWogIS1vk zxaObg2uYQ~@l#JB-BG_t4K{j$-N?7OxVYF>%s$UBffWH_hka#;EPvokshH(C_i!M6 z$OzL9n@6<`uzuR%sf9^gd=sCDDxAhAQt^E`erCGTZr46_axXd4n&-udPhk&NdTu-w z;FrZ_zlDxggI=XN@L9aCDi<2rg|}=pb}z%_JxR|3ja$DfA$)R(=3n~4+Ulp`*SlX8mE@x0duvHgRSikL{I zzEu8v%ix1w_4{Dm<^-0MscqXnQ8g~($ao(njXZ8uJxb$xx3cQ39HzUQvC-yV!WPpHDU zHauJ6TNGp#rdp-pk{seX^93#EJoV}IQVxiHv~%Oj-u^|S!h%mIN^iIc7MEvtpnZ1E zvNtTDkJrB@y1B*+hSL+E^FHHpyZE3w?n{DcYpvvJd3gnO2Y-$K$VU*u!IC;O7cn3b zntNF|(OUCGJ%fLxksbE=BD5q=nnA$f0Ul=(Kh&4{xM_Fx^5enkn-*Ky@~V-02raT< zuy*z>=5jW71n$AiO^n<-LI(!pG%c} zwM2Io0FGpf&aFpfQ`$?x$db7{F{Jac(gN0vIR`gzII!}?8&wS=KeFQlT}TU7JRh-0 zJs#L>x7d-^u*0LJq<#l+O)-*#W@$rToqf949S(L2vh57Gys5RY3XYC^XM;5T8NgC%w7|x|!wM7cJkly9n&Sb+@rxuR zVa!W7WxRmCoHSd8d0dNuyIg(A8cJXqU(EHK)2@%j7c9K_XgEm?BajHx_n5l9JX{pv z^zT@z#H{8f$NfRPb#^kl+q*|CV_V!)PP&2vDyW$vje5k`|)h+_4_DH6w0Y3JoWvoy$?%1`U}` za}hiS%qwHbDGUwR2^^4*^Hm^pw0Y(SmhRD2rHS=oM8vlHxg$(==reNhq|H7`<&5K>C|MmQ ziJ>hQSd^Vk3Cx<+*DU-hD=Cm$cM3I8Nm7pum9|WWz>_f>h&A?6;9Ff*yIqV3rFJ8=d&s zllYac_tk;2tOOOU=8lNeBAGyCxw`I1l zWoNOH#;*S6ZHcYgIPyg3;&eH28)CUnH$Kbn-P|~LyX8)7(=aCmY;j<>UN#fiukaAJ zo_)Gi37<1c3Y}`%-fAtJL6wf)ni6+gxt0sPT`tY7B^1lm)4g~2K1BwbaZ}=1AZp+M z_pg0t1=Y^P{y}`NR>ysq!b@i}#{h^|X>#zJLUW(fW=2@mxpLC!seJHv@KZs46M-<# zLr}+bVdq8bIsW?T6B-1?56vJSKUAbTkZRat?`R-XDIrt?sBbEv9&x4)IHa68RmnYo z(0%EdX#>#N^&0x!IyqNV;H|7)hA#Cq3{;Iu%s-)HJ7T=r_~WU#mM``ADp|8=Pf`pp ziu(!*TM${m25%SDys>KQfZMn&(b-u^>jqWHH!4$u9(YajOLb^`T(~X1Stv*`zm1>{ zXGvE@*0tFD2Q%L}G)Bca4K#wYov;j@4=9*e{iWGyBA%6s4%Ea2;Lin;WPFi9XmHev zvtaxUT=m~Zn=3ze{VlM2ABgVWg8N8)15OE`@)pdOa6B6EYK$>K<|d7l;cz`%Bsf~u zU;I-K`Lp7G`R`NT^-ZUHPHPzEcqACoyUpSI&AbS(v>-X7M?vjfdW&27UC(8-gn7N7 zfQrdaR)05IIk@zk(-Urr%{zxk5<_qAqq~ImI&=Q2b*Mexa($T*u;*;u#Ud)slBNjL zso-~W0h@mR2-5J+w!Y`L3TF>%-Kb;Z^>{&I%%%Rjq8?+ysYsZSIcsEtcaq6pGcB`1P z`q@E{{_%Vcw4eXAH^_N4YFCCi>YG2r_qZ1(B1N z^HL#mTJ!boBOzr`4;SD@8hLr)X~F1G^yn`cemX}dmW%o3DOup7A!Bb5qR3<;fEZ+x zg6w|YGHg>bUJx#TDpJ>6kp|f-J;apZorAfK|4^q0-Ns=|i&I$!lz@+X3|&rpdwT+> zX?byFuiK4M{)7$C5agUbjxmP0+N;v--aqP>u!reuoJso<-578hO3cIb4UFDtxS)Z} zerS1dxw!Z{2Wz0qE$p}()%3k=8O$X~TZ}najCDU;eOxUy){mf%yUQdE%{Q_7{A~xz zY7FuTu9~x$o}WbNz7Z&)g6!$SPQ@+7qm(O0Y`$%ww%uup{X6EJb>N&TRe{&5L!l=T zczrQfZm%Z!REO9)tZAh7aRo|iyRPO6iHS+O`;3b2yyk{In{m+Kp55UqchQi@fvhU= z=^R{0I4ZA$l3A>7m$bN9Q)NimW#?5#{M)^@sluPR7j9dqhj*F2iFd+{N$Yo-cZH{l zcZDZqh#*t%3nZv6qZPp3)w>5R$I~3=Gg^)v?>$Ty>9+?Vg_l`Ra|P4+bYQVOWs*Al z1uog}^hxT0#m31$Rl?pY>zRm_*m;w!EI_cHq@`XK*L$s?Um;9a11xcCGi-;bRp_Xv zLrG(mGnyBLg(m;Bf0g{P+Pq=dGp^FlMbWR=o8->YNdS`36eZ7QobmLCc??R|3gz;k z3F?>7pf9&rep?@L*RsWHuTSO3?EnA?2A>>6{Rb0VWWF%~>>x*-NbfE9VoEYtBQ(eI zSMD!O|N0tgtT$(|GFP!PfLQz?1MLh$uv**7)^y5bZMXJRq&) zsv%IZCFp~RdgtTI25Xjx!->#+f@kMri{y7L2avFQ{%N0E?TVBIhgizi(^r8aW;CfR z&bjC%_M<({b;V_jpTANUa6D;D!R;+}h5LAWJ%Rg!4AXNgbPqckPm;-Zy}XpDC=Qr4 z>5r7NeCR^@ndeq#oX)Y7Qnw!)9I!dMZg5Vvsua77C^D&#wVm?}qn4*_=cVt1ab=)4 zdCs9@Vqa7I>YJg?Wh2E!j*|IY_=g$vKIS%ff>X0>)fH7HKp=g8)7&fXeU=F)y|*Jv zr_OWcBm|OanH-I?RYvdEJ6g!&g#|hh%UmA+z*r<726hlX|HHP7wm=i{?jfFKhNqIb zRERi}u%*k8BaV8*Ip0q>-3R>TX@dT0k{KiG&eMTpeYq*{s}mm>;o~Y!o1ftI>n=6) z?1^*5?@MsFRAIRga?_JjkEk|Z6ZY-_@QaR6PsMtF#^63RdzjW*JhT+4wP%WPo6P4VM-ahr?V* zO1+|SGX4wFvY<{@&RH+p_}F0Jnif+!3&@9@5|9~vShbq)Wl%Sd{I<#3qQH-yJK z8d3Bl5|b^^>ivXW>U2`9roHZ=f(~2_^^jv@&s4pFq>AQy9_F#xihLf%CXt#}1HriS z1h&YJwz~L*o#)<(8)6UZ=4L1cDFQL&IZ6Dl(ClO+ola3T6;eb9E%4_e`+$I~ii4OH zL&+Tz&I*#Dq-~|N1~s7natQDVeqTQcT9CcVI8){zlI!`tG+dtdqosgWLV}@C1BU(I ztTf;^Lq)RKM|z0=_A>^7B>M8;;dE3hMDGhG&o|X3rqHUN$t;N$wRCLnM~tsdq)9;X zreOR^&gaU`6lTZuP~9yb@KWWmdmC3>)BEM3dlb~PP7QFk1;<+P<8|YW}p92bSXIN*mduOCVznZnu0+ba3Y;Bn- zc-67#$Mz%_>@L#mnCla^IV5YpuX3-yf6?2f@}$V87|z?F+x<8DC!!&bfT4qiA!LtNJsxr=zLD`yo)wNvMmDIde)c; ziR10~7kgCAn`C3*ZdLem_rW{1zmMeUu^>oJ&ZW|09gD6ImhOw43zSW7RARlTT-GD zRPr4X7Pj8@6%ij7@Kflh2>sY<(VwIg%x0G>MB%S{qVyJ0VR91wGWR~CTM;<1kg3r) zJJa3zY<#!_rz>c1wQ;*X2-faHLmfQF*#m@*ps0ws=MnoNSp_YOX8KnZg@G;}5HUyw z72X0TuP$!IA*MV%zsWijvw<>7n^a}1ar#Q#o|2zG!2#nVwl4<40^_I8IWz;)#nJK` z(-i*##6(WTfqo~Sdap97eVGj5Lumv&%GC>0*+kwLmU|6w1d`49BD10e0u$#L?Kv4J z`eTX>ZlnirfR0jGPjjPLxs3os zM|AZD3H}yEM8-lYMK7h5=PWVXl6!4}SB8PFE^DI^CE4Yl>STBXeOkW5@qBf@i@gCv zO7_b&mFm~jiDy@a&9|jCw0oMeCtq;(Nv0r1f*={WAQ`&6pno-S&KELY@rr!szd~BR zf0y&DE9wO7>tPnA{8xBNDHI);_f$WDnu4 zUjW<4)RoU^$JWE@8F$--_YBU7Kr<3wLfy2uw=RaT7wL!9NJ~ep*D{C44up*yKLxd4eQ3|nh)+w-PD$tX zea@B};1&1(=;+`+Jj0dTb+ko#$&GFBSqFE)P{KT3)!yZlev=%Z&Q9jH$%uRwh_I-`}G%CSoous zi0R1N`G{W3n$8Ym{^X$fFTHRAOV{OOLzmk!ZP(?x)%jV&gl+qKT(1VqLn6n5z?Dn4 zolY*EqbP(OOJxnEaHM@%5$DWD7%fo>hSARPe@vpnaZQ(cLz~NrqQPQY0-TJ3UQX@o zN@Iq4Zo_e`U7q$-ze_3kigD0__uGg=B;XyibU1F=#ee*W6>>W{a&M*iy(?I8DgjsO zrMsr{8*^I0G^*Z|M{w0#>y?@p#Ijn1+QJ979Z#F>Z~&fUcF;nE&hzt%dHFa$<|~ll zJo+Je7ITFxC@69^IG|1Us=avS#OAr_fBnPi~J0wQy@mi z;0lV!w_W_%8Rg~WHSYG%{^W(+*ELCicw&2T=4t~gN6-}O2l^lUDw?TqNGvloh{N+F zZb8)&J+6-D%Q3tvA7_KLo@x95bfF}@OUd2H=Rd1630YY&3i;m-V_aRSKe)~@EMzW1 zKEO3@KDw*rDnvst{vuCgDLl}xC6d8oFkqn`E=)K(m+Ya?L7>3=J=OLqW>j=*i#eSz zD&k>Q1+^>I%CfUp4JobKXGHw;lK&zSrc(C-&D zxOD;Uo1;@Lz7(| zzf*w>0CV2^)3&p??=DbWw`1nl-K(rwY0O7BwBq!X~lxAp#R8@0+YhJ^3gn`L` zm%ww_zFIgQMPE{;k|$lZ=6a;M78e#xR;^;FqVJ2jw7%a1d+;&0mPaAR4sI`uTh^iX z6U7C6XnK26)xoEj8i79A4<_nQiF5c}^8MpjfrN@rxs7zUXY|^2|3NJSZ4KjT+Yb5l z$==#IdD4@4?9)0A@^{j5Vjc^;Ig-6q>i^X(L4QmIKcV4px4-U_SUG-jFh;972+&4f zsPJDc0NKOG&ZzBH_p3cw;-F#fv7J>Q<2GkJHDAp#Uk)vV5wJ)gwdCQ+U+6~-$s#>p zu4enkF+{zSAH+pevuXcWGTQp7*s`=vJ38YukZC_+=p!Ni%F#ok2U(v{NAt5rd&?d> zpMCR^ZGD=+=dTiljxgWT`s|eDRNSqsCFJ2@htLK{8Jbb>`B=DKV68rHf7Hb=x_ zH#=aGt`SL$HXmf9>5uuj-W5B)>{r@KIeg1O#5Sic)tCM5kWFZit zBm7c1yQLrLHbar|DSdf7(J2-LLk2Vf<5hc1zcD-YPk*6fSOmhTF=JpyZ+7jSh#*p3 z4JQLat94Yu+1OXI*mOfCjxZ9!@Szy`qgW?hE%S7IC9%|qy3@0}VvN(11y5Hr^8yX0 zSwWaDpWqA@b2jn#z1#$e+A0ihc3SfCD9V>=2&U*?cqs_V6r$|XCw}M1PLwFd{)X5G zR|&j@PFUZ6{@)V>bfH_*PbjPbo>U2V7tiGdA>&I+Y53gjBqb35cw5kvz+1bLS`hrN zj56ft27m#B)3V;-+2l0$?c29T&=fD08InI0TZ#OplGU?5)NS&KKeATnGJ4S8pig|| zxB+Q_(^Yx`#B-7jiaB&Ft|Ku}D>ZND{6C4fi_vHmCf+_0VuT(P;+1RHV6d~ZrvS+h z7FJeXmF_P>!+~#^!IG4bb_}Tcp`~z3vG701q!cg@q!jv z0jh{&{N`=v>!YP~3KPT{z}Ug+Ge~tzBHJ0nW#|!cww!_cyJz0k#2J(svGIDTkui5{ z)V5*=^Zzzez8jtio*ARP0N4q@hW-Gt(E!jJZwAbfoW=k_s+m4x$s!X|L}3C#LIrj8 z;(dhp$=!?$B0eKIH!k0jf7?x1>5gPziw_2A2NFVIM0E%vrDbL0DysgnPE%bCW z{d&3`h-hj)5zuU0)<^!siOeR0pHkvjXAT=z|9cDiAG=XES1n^`XD_SO=8I-Tbj#l{I6=b~=}e*lag!WpvSMN|r|#Pe%|G5k@giA{$DCKUuY|vC zwxq9%H#OS~RcvGaXJ`B$%@TyLgn%WVr|^<~e{10&k6o*Vwp7jx|E3i*-v`h#Q&OLGpXR?Wu+eqT7%v##re^VFtP091o@R%h?0>1QuWbEg4H!OEt=wE z@PdX%B=9Jt%tdYLbR#zS-bhhU2;WlNpDd)KfVqLBQ%kkAhwpkEBYjx@D@M8m z>kv8e8AE`Jt66D6V;aA5EZhyX5|)CP9sc5m{nu1wP)bcr4aCPv?WcQ~=G+~nD8ZIB zr4BX&0NfxX|)6`^g+OPU$TC-b&%z*-kOdgWYMMCNlpFV#4 z*qT<>@Z$+&VP?@iJ~TDNy}JSKE$pa36{ZogiQ&R_)nmbZ@r<=ub=Znj4Zue?<7gq|_jXmhyQ(tdlcYjNebOco<8?JRLFV3r;yz*6IG zN@P(a!_)$BWU6t)GR%Yk8=%i0O3KRm{Gs5gUC(p@0XNdr)Kmzy%-dMk)9yAxoKL*P zs2v2Q)%@kOu!Yw>H>{`nloEozTW)s$bGCpngH-YplK7#EOM(rYyFJkSucsm>&*!S+ z3?~@)fFzp4v9$`r(^Ty0D55`mjCaix>7c5R)&-8=LzezXcPD?8PEmJo=XD?Z+tDe|^r zPx&?+iv7Utc=HX7m|K}fh&(gn%I)Ied1IWiMjs6guvk!A%k{H%v9xlK^-d0|nKm0( zE-W3(uJb8)GkPaU${%A*(q!&i;OSztvNoa7j`Y6k|2T2~kwx1_fNF|LlL#c$jD1fU zy~r*|udwfLR0>b4d`=+|BWP^ce{lF{Z3A4S4KyVJU^tbMH(#v{<&!-OBhLsXTvuvL zcXsU7mGce1J8KTw;F^uzIDlR-MF?F4qh(B9nV%mjfX!m`h#rI$LZX~>{~!&Jwr!vZ z?6krrkbL%q-ga!#!Oj3ok;oYDCT$Xt68mD+yHvIHA$ZezAePkyhpQJ5)6A@$ubw_80gqo0*gGBU&L@_?#Hd4^U`v1aV|gt-x(qVM~*;X{Y-~ z?(W(K1O%)~wxGd?CglS=ntX3kAWnBZzkT|H8p(HohJNy%_2&T)t#R4(%~up&Cz~XK zx#nd3>k5&XOv=}kdpU?T-~DZR+mnwG>z!fwd3lE>O*}ALch2LWb|b9*X|14(Y#(RT z<8P6YcSsex)%+sC&h?FqFTn6YsHs2u&x^SquR4K&TqEQ}kzv##q+rH0XoT&JF)tw4 z+xGmX^@qR<5(3qjjHQ*ZB9DSoR^61HB=NOm=%Co_U_{V!zM5Qo)p7CDqBJUm0@naF za(k+FV}f5oFrRvyk|q>}AR(evOZUea{hKBk<#^I~y9F$qy0}$ zT`s5Y#jxW^g^~Vco&a0?k90Rhfhbi@SXT~dN^$?|a=5H!1VgD`6Zu$9)xe!MJ6jg2 ztE<66Gwoa8Dq2EAyW`ZLH_+LdBY__{2OLz%XU`I8yjWBSMl>OG?Mx0q@8jYYQr)-B zD2P}gENiH(Z`-B*G?<0hfHQx-(NP7bu~n2@zVWoqg?ssDQt-^LWgw{8i*Y|+U}r&P z!#nXJ7#o|GTUM7@_F_>}uo?)7g?QA(09>H8nLpIbG(g%D00$OcsHGwkp?&J2v)< z1Pd?MZP%p+C+l9o*0!U(tiBXaOTeF*eK)GRyFh;yQ` z-Gt;8j@G%}Z@9j4_naW~gRFs>ZmY<(+DBaa`YO90iLqXxxE3j{GQ$uWB=Wn?bnHYy z@p&PV!Zz5_CaaPOXnH{nIQaNO2i|qZ;}(%~b={%|N{1UG%GYn+yy-g#IP@+Xxp6}@ z{gJGchI}9v*&lKWlocxw6kXMMek6gYu;hdD!i+f$JK_wy-T;MD?*vw?2V+Yw`h4_{ zrw%3H;MH<^g>u_RzI+&rhd-*uqZU34z?Js!B)oIy4y@Vgft=h1EML^hz%TOr+-)jI z$*19E4~^xsQj9b6!jC*890uMOTOBG6tevuJzf$)#5{fc^_h)S9fesV0D-!ET27yV2 zq>PNr_egD`fDX9fV4DVA{EQ2N)r#{>~tYw?<*#46RnIfHPU3*%076omQi5x!<&ORy-69B z$VYy~4Gxbfyupov81n=7Y`Zlq{3|l!5YQ?ZjP5zy92?lE)-*}|&?A0=qbVK7f=xDHCjUhK4);KX#@4TkADtbYGeL)tl>^%PzFvgI z@Mo#GFuZ}k!-n6l_BA?)EkDkIh}8#m8e1C!_JVE>DL|cfqw#>_=04vfd51}Az_EB3kOE3 zz|>bw-3Nbaa$-RyWTc3OJgFDa7m|Q@y+_dg!NCBmp@fy6MnUZ?_wLz^hH0cF+jrdq zbE*fMUkFXcv)=3dimr<-3*NG!Bi0b1q;FkB*AfQ;XL?s2XRNl^Sh~)yzo0KBPTm z6ZJj8IOr3*hAzf8UOzMpj1y+WAN5pyuJ1>+V=cQ?#Hv$b=;@b z(drkP@Gx0jH|%bYRVij2d%i!u~`iDFGprx{RRIpHZV3((4(=ikPuXV$OYN3KKXovVR2T? z<7KWc?+Ysru?=Ox%<9f%Un}+KEV5;S7SlA2;_6gowSPDee}8KUbWrifZ!5^NxIlN8 z)Rm3DZ;lCO_PxeT1ZOdyD5(r&LenD_mF_tzA+`*-K`&+C z#QfrB(^OR@q#Ux<;<4#ZMW>yOmbgZ*UbnNig&6t!sb+0!wKC6k_*m*z%z8@di2xn@ zyQz>w(E?Ia#nQTkJcuCVF6Z5*JJCIDgIx-kIw*2*(~god4c*Es#WbhIr+@h}bBwbJ zIAvJ!?d}N5n($C#l(Dd3Egn^{oCwqvtZfy5kdzBc-NE&zGchN3L@+n43;? za!pY}LnrxY`A!FwNZVRPp*6JGnBAa(Dk>@}nS2V)YYlv|Dz@j}APFxSl^(xHefMsD z-$HLp#V-;Jn4X*c>R)pSHqvcKn(WQDo*oV;@11WH)%N36X8cJLoKcV@H;NAY>)vdY zXWyEw!1Nx!OI`ZLnbnw+FEhU7{WU(x#@>dRpaKMJixGIN(ed#)E8@0agtY#0&vby# zMHB#{uWu|oDa>~_*}|mJxps=wm7B^A|OX{9<;q55k(;Xt$RC?OO`aj zpfxU3qug`9levaYHfR!ufMEFN4p3zvnr#LPhMfZCEiKt@5*mCfWk)K3fA9n|0;K(J zFG?Tqf~?Fn4qNSkHI?iBBRprrR|SFQsgZV^Vi7;~7CfI-!weC4Z(9SwA4|#+M!G&T ziGmeRyRJ|ZlaX!gJV>a0fEoqjeq&&G;<*g{Xn0sfMDBQA9HZZi3bzk*P5#F-k>8?% zJC}d1i%A1Ad_c+JG@fCkUCk>bzpfgbOW@6;Rp(UN3^6Et`qq}@*{OYrVX(-u0`ll6 zbiIRvXbBdwSA!!X^g=>UwaOkr_M2~kCe_>6PMIG*IPxLzlKAw|+e_q!CVDeujh;q!;2q$6n}p@Ja!v#&ON>pj+ft zOiYY+iOHL7h?1h>K#DKk1L57)l?)KheIfDckX_~J2?nl7C>j(D7k?0PuK(Uj3DQqK zj@Y5+&)`_RYrdWjyIs~U+eRnEgg+9V{N`}+Fjhqt)#QKCVK2b}ld=CcJY;AgtOT=f zdkmUO9xK}J$`}9ClErL?iizI5`2k}t@w?Z@%CqAMn_^HsiQO{oh6K^EQ`O0!G-7q2 zP058*^`#v1te}z2V98g3<->*fQ^4;vy#MRVq`JO7jlI1+ScjYKA1PvRdA|Z~gPu5O zq97Hk^K4QpA3_yyuX<(P`QH2{ULPdrjgi%%33>>FVX-#+XJtxRTlhlaONfohsGd4Us z!9UK5FJ`TOttS}dykuNDHM2VubF<8ciaJlRc5Fvo4urZy{8J_T#SOpdWD;K@zQZAd zD=}Q1W2^q86YRXUuwH+1YTfX%^l{C{#C&qI2cOXDCVKHjk}?l#e8ueT1}MB+;_@5% z8$Vbdq2^;geF|oJSduS}Y^bWX>)VuL(*gte8X3tY#J&6;%P#-qNgEikPZ2Q6eQ;<7 z3`}W{xW7`EwFOA4fH9o@Cym~ioSdEwrnj9NS!lK-aC*SBTyR+Fcoy2W|Me&c(kF?U7atEvO@BYN@={ai18V zdZV*ZQmhOQIefGpZ1^)%17YtGW+V*(V?u-W=8&-)nJuwTyw-i->|a$o5eIdA(e{_a zZ`<0rmfD#lo5@t8*q=NqvX5uG)_qc;@Vk~vZ^i}1x81l%W}yDc%A4vKm1kpOI6+d! zl~8ArKDk?a8dB?Gpp>-3SlwJrSE(Q32<2B}9oToDQy?tIO3>YpH;X9{Tv%ok0>RiaT^3z-OLb`**!`D#Vk|Gq zPYX#9D%ZCEb}z_*b$RGliKI<3)*_izb5ZJ5;Pm=W1irlb?T;5m_tb8GGSC%~6*y`_ zci=6A9d%zGi3u}UkYDYDWKUe7Rm=Us z?ZjBx;BhGKW-iYG&C{_xDopQPoiAIt+0O(<8C)Fhej3DURt=af#NBRAkYTzgv*Lf~ zd;4jVJ_tFoJf}$pXc7ZL)^QrWBHA7>&-yR9*=SUJ3tHH*pOtPqeG>C7}nd|+n2qC z)_pqhikFw~{K%bGl$SVdvY}?{Nr?L&kON6yAF}5VqTM(ICP+b|g#ezCtR@mAz;WSt zjvCe0_D~Ehol~S*PF0UoJQCtI&+%tCN*mhSJ?;1QGtM z!1LNcXJKW98Onok@+WVL(c{nsd1Jq8Oh*3BLpRVp?gB?KINmY@B#0+bt+=0_AKW*1 z&^Wl+jo(=c-tURFZ$gh==uh{?ft8-le&x|h6lIVS`lnDxCIL-g=3u`KK72I?_2;WL zz=px|AvaGwwNbi}jF?+D73mjzhbJ;IGDyJ2i%e>r_Ae7GoGHm}&V9DM7g;3a?GX_& zHeag=mA-67`h>rW{&PSGa_nhj5M(PgTO6@GFJYlCmzHiWN?VNmm7}h$kLj`b5?^`s z=onRC=mAIb+m|z&uN?lelf853Op_uwudI*1pX8u*e&0F&(0peP?O$$NCDLu%=o|(v z$`cOg5LCk5rRH#MuE?;~R#X0s*2`b2#zfosJ<=|(1of}eD*M>QTl0@kjgXAw%dy+> z!F%>I=k#Fk+V>q*v)y^sxcRnwjkg?8X=wj6C}qXqzWFg$w!xFaId?tyCok56qdv@H`WvB+kl{ z+BV^nmviUbbwQRv|KW(11%k&^s4R;kUx;ycxaNBPW8kgy0wMA>sdAUQqBDPilP1@D})$$L@4C!PdXLBYUL_Y#P-ep`5@#o z1*1R^nB1Y2wgRviE)2b+gNO}Uky}fq7b;=4m!Zo^LyK$CLtIb0m+_*6q)7AUzR(o* z^u|DWq|Vhx#3QmsO(MbrIgw)0tBRg_xp}Xy?$FiqRE=VO?Ieeni{pUzN5gtXxWd!cH_(OCB(1F2w^KZC4WoJbrJDC2>LL1>@7>NxBeRDXOLs+mVtK$8 zM+ZMEuHi=6;d?!BJM()DirLM*rlo6;s=#i&02xGV#`NY$WjHyJ<7U~^B@H|f+7V8P zC@GJL7jj?%JE}dT&-P6IptVX9A5b5KLUyc3!aM^$!dU4`W8jBW?R}b=Z#{}guP~xL z7U0dDxqm$xom~;88S&0<{m9}kSj^9xMzN9U5Tzf&x3BMSoye~znxrm+)O2qfs*{rw z)~#DM3-$KS!>DfY1uwlaQZ;jfTIW~YHTa{2q-g3bX)s>mw5GJPS9SVQU$wZTJ?|WYJ;mo7{$j zvWv^hbQ~Pr%M~8)knlQ5IGh9t$oTSwi-D0l>@cltgMDYFk@lp)4zohTQr4jqN7kz= zMn`}yU*krGxqHP93`zsuqNJvTN!BkX9M`EtpM0Ai2-Y<;e{zoc)M^O#}cP!6hFkIoips~Q0n}avNDyQw`+dnZ0+VI43=F6<>VMQ-+mSh zivd#<$KNJFbk#!Mj|&q&kdxH2b)=A>QKxYoP0Mbs_>(oDO+a~}jiS%ZfxGZ!p1q3} zl^J8eNh|D#g-JlwOG3jl_{7ZYo@SvgHicXJFvyd|;-qEzcq5%zieYOI|AL`coDajP zI-xBRi`JDaGZ~;#ms4066hH?Wp@nmBu(A6xVgj^kUvEhp8POr*vzx24v(K}#vY>R* z=u{FMOnAAji`-!rmeSX=3yO;TIU(=z=9+Ei+;qCV?&a(12I%gL+AR$k zsBtWdjfu%nB!eGi2#;koTQ9V|1)B+Hiw*UE1W8QuU=^dz$>5wyHEG`X5Ui(m@eUS4 z9&m~>)yxz@BNhTSLayy7<_>~C%$f9~Lq6W;B818C~_A+%E+I42&gv*uWI?pEgJ{mnJ< z*~ybd1qFlNi(1|NZ(dRZ=VouK+{l9X3-K2`$qMVK5Kt{FbNrCB1uV*&rm7gIY@XEO zg?bQs^bOg<6pi5c8!h|tA1O^h@wJAIfrqEW6n^y~;>%h@DcAh&TyNV@|0|m86#}}@v3sMd6zDU63VfNA`GnJ18sc7SPYjMzoZYr^Z?@V84N5{n zavo8Cqou4H+9HqE_E}c|JJR%3zLUA1gF6ahsqaauC`J7c+G?y+$Gh6?hd)7vF9#lj zSlak;8I#AtaCzLAo|cFA=Iz@d?;pZ{8OMJLkmL#xa1g5tnR|kO)l`*a;oFxug)Air zWUjp;d1sGF@32Xpg-`K;Rpdoa>StD=|7eBk(Y&pnmgsc-t^%)mp<>yHEv>z$z#PC) z)yYjhl zoRgbnbmxn_<{ix3^~2>_=Jb9DSmMxD_mkEC=fqO!j_m}$EV`=Y;kOUkat$Jxa}3aF zRT^muA1g@jzb`FjVd;MfLoCf{W6UUS+ zm=ptcY%+f0dS=ZlgBu$gyT0*?6H-hP;K940$=i5J6ci9FA{Iqrj#WrcriVD#uDK1e zAWte+F#g4NcF3!pv}mUX)JR<7-0ZI-N(*FJXG9f5An zMhL$zLJ5QF_U(nQPj?xCIEkTX-6RC3LA$x&iY@y?m-85vP)Dkxt#bNX_{3G1`j7{G zckHbp@0%r8uW#*h)F7ITgqr`(wEyEQ)Vd%5#BB5t^#B(m=6j)DyYQ|T5 z(bhjnw+I7>Yx!bgqt`eExsJz;&acOfrOvr0?JRI~`?ZT5Ix(@7nH}ndt)@&QQsy7- z#w>7YAQ5Y)(tmjhH#^+Q_REl2|4F?j7&@w0dxiPwx8OM zh_R?p+9Y9Cg}}j74Nx&G69z zC#T%2B7HYZB-jw7bEC4B38U5_K!hdRi2$x>edrftzdE*uH}04$CpXt_t#*h95@m>C z<;ko_zTZ6jS=-}`vrjG%rZ-f+{V7j|AcrOL9l~}~4ellKFhaUIkF@4|J)hfZyzCfr zmJsO}{Zk@+3;_3>#>Bk^87yCh-L5KZ@_Gw0-8b9~DvhMmd`oNrX&yXCd<*~#jc?lG zW*saPgU{$j2dP$UK8gTA0gF&}lPcDy^Yin%i6Wh7baQ!b%2(Q)L_r;quXd)rB`BS@ zrK@nBnHw9c#>EDG^78B}x6m3K9-g1DX>0|FTUfK@zp}-?-N>l=Kwl@70-&E5XCFO~ z-|5Sw@Y5FBhoKAm1NcxsAq_S46vdP5<}`man8@o*Nqc)9uo+L6K$a@S1rTPtHm9J# zvV09eNYC}+2YKCo7pr#Z3;gCtO<|9Ja0&9;^aBvOta*&Qe+k^#QNmNDpM?FV-pUyg ziCdO?0|Pb>9;UBsUT~RD3TpcOYWe1lB;YSPs8k2Ye#35mP$ZcKU=vRw1i%bh^`uEO zGU8$5;x>m-+(*JL?(!)O16PPV=yWNsMD-6J)t4TCVQdT0BLYCYeA5@R-)(lqe1FoG z?=Ys`w3^bn;YFLP;6->N4_a|>%L>wppQ=a(6@yK?6bx07jPjmxCu$D7kDx@fv^(%X zgcJF@_;`dOM>QINfMKaRJbdH?X@=11EAjtPtb^VFw~jXZU=9ZI`d5UJhPK;{N182{ z7x>AUOx=%Fd=W<_&zum{LQaC+Ugu^210?u2%2FBi;$){CAS4_ibaMe{u#!_2NHLxa zgDypO-ldwlx=weHp*$}7&L3>H`W^%_!b_%0kHGVWQHlJ1Xv!E{fnfhWXFYM!m4`^p z&=7saJ{A!q;9KPL_qi~&^tQKY!Yj01x17(J6aFa--a@z;FIdAqd9-G3<5{a|QD0gOBnZvKXsl zEv2uYI&J>leJAtPrQ0Aihm6aPQozyn+kzDv2AF2f%eLsu;T^>PlTLUOkAANEfQjkx*gW?WDIBgI;0Z1B| zw(z)42hVzK3@DFXQJ8BQSQFe{e{$3?N&^(1Z#dI)ihy|ITeoh>fjmBeY?d$sD{DT; z1)mYbIHj_IEU?|_lm&H=W!@Q8tB8cmXde-t&D|C)L$O}+gn-nWOmibElgpj3UA{jE zhjjY!q{qpVYeDcm{-kLLA{#C*+_1jB?m^?HjS1DMv>q~^jZl%XU0Pli-VC!4xwj44 zFw!M203u0x5s`%o7K~wLC)?xHyxz)dyl*Pc>YOJjDs=yLP=UxH>5CTP`Tb?Tg+y2J zvRgRrDd7^=MydMD?Op#0x&MjOoRyVC#gI#RvK;_@@_MOneR=ssM^U&b7F#Y7Vqq5c zKTw(`U_f?Gye`iTPj~0QrsCda?F4f%3L?ckDTabbg(xsut`TyzlT;d6dc>zYST|#R zagEd6G<_8}U%B$@f!6uhR3z&^wE17(rt1OuDPxszMn;w_D!RIp{oJG!6k{yJW<8LW zr#FncmBL56$Z zl`)NK;+(djg?VSvPv^UqHto7y#Ln9!9||&Yzv%nHG?n4Xe+X8(LDc2Sf2XGYZY|S4%=+VuJ(co&K9+Qx04e*De~G8tdVXXVa14jvQN@K<|Os zVMmjXim{8e%hqHzh2KYfYrcTa6q&7`SVCe#F2|`q;KT=cUFDL zp_0bAk;k>k{Ff1tmWSdS-gbQ*p()ni@&83$Ph^rQLgWM_cwJy$>?af~r%O>xgF{v8 zvQa7Q63F9)Aix`P*(x7##2kAoFpbz-01#HU5elUHOrR#6ShYw*Yc!<&{XW5e_hrExGXbT=j|8}xJo{6JU2a|HK-!>+#vYitjAp=K;0Vm zbxH-{5)gE&tdj;&t}smRKs88y!zI>a2wsZ3~3m|yyo`Nq31UBmc! zDuxa`dMi+a^9dFbvpM7*EoEqmyncOIBkR;!XJH`y%;;JEi0gTJMut?+hK9Pjf1IY6 z|9gDpIhIX_@yTeZ1ccD#6J72r%IpdIn|~NK;#agF`LMOnT@UhO);Pp8)1kGg^;F*C zH3Uxu#h+KzR!i(F4)j)jmv!72eq6~R^WtN6b|zRn#GZjr`eMN}>2v_m9iIfyDu75n zggmW41s*DgojpB{AW4VB7yL%gZQ;Q|+6(SHuN3)~z{c)bnyE8#H z1cmKi*KfM%X}IvxG`^rIQNO4hkG(biaQ6F@#a?incQ(sgvbYM!Un9WQGRnWfjKCP0CwfrZbcuM zX90AkDFK2Ve$XsUxz%8=>A(STXX2qdr>^`7Tm+amK<`~r2Ej2Y493ez^?&PnKMm?IgV&AV*B4(>RuHY_; zw%ZbWnq1C)5hsz#c4av+rtAdUi2>u+ukkO}=5nkk2sSgoY!+`sf;7)VpTiy*4qE-_mx2nU3L-B%- zuCH9f3(@vkkD|LGE3bE9HEoXN(=l=pA9+mNzrGf|ntog*@{0a^Zq;tfQnT-u-jPt1 z`J`C9u<5$p#u?h57mF4S$k9|yDoTXRJU0Dc=4>kpC7Uy$DlTnRRyLsGMU|P)&Q$Cu zhS`nZM>|`~2}h@UK@hbyQJHBmQt0+>2CN|yt3)hSRBS6Q$?HxQR})x%j$6s{%$2rt zegqc$QUzyztg6xu77ni{2K@&#(>zKEN5Ti%ZHp4Nv!jp)%R*Y#dV9c)m36I7bR7E$ z;MV8>_Dx{Gn37dq{&^+I_7t_8hnJTa=t2U4gF%_;JKcGqd3kv%n#&&ZFE?%;W(SwC zQ?DJ9V%sdnomKc%iOgKw-VbdI)*#a5-hEan11ar!mnd^O61(DPDt|plHF^KitF&wR zGhRLOj+LAu==m~9#dan=!|Qt4*GEUQ?`kJ7_^yc$2K%ZyP~*0>JJ(E5SzOK|Bt!u^ zLn<`aRv7RK^YaJV*>-k7#h_yg|GEYzI3o7^@Z2d>xmBmpduF@1s&-zR{9VKtu667C z%7b~=%Q$WF{ z;{Mv+JJ{=a=S=wG>9S#Vb+wexD6I%Sg&~ETb>wj#TCszRuu^3At6ZEYf>{98nA<37 z98S`4#`?a1#8I1*u1PvCkzMycssY)`DObxK@*f9A1KG;7)Lro)v!al_{na0{_*Ea> z)EhG!5m$ZTU)f3tsB2IsQ*qKYkEvo~Ot5ZeCFg1V6XB49{e8#a;_|qo(2obY!hIk0 z>|R$SyRGMfY*|qum3_tM0BDysc^()WRcZOG-xfj}$I%;+ZJGk+7DYcBcC~+L+*x`0e8l6jzqIy=oRRjv-A^RG zqNB6Z?z=HS4!JeFS)eR+kuFSfOb?Y)QVMIOoN#8`WV?H}DTIX8(&qVI0b1d0CZ%30 z5nPca)BVdmFroW7NO6*W9&JcUO3Ke4|B(Frn>5JLq+Q?b+Bl}y_^CPsA%0sd!@Ll3zo>u2vO8Jm{Gf}g z#Y(^7k6=|Y2?T0p_szFKUUpYwwuYJG+ha_LZ_hP^t>%f~ggke>D1%H0%qr);BvWTO z_JaNh>ggHpYcYPSagzhaenXG*wQPEN`erjegqdWXbXK(ETK`9W?*}#&(d)io-_ja^ zqn5Dzl2iYidnsA=Kf+^CZelzKFzzS$Qc8C|;YbU=T{_)jPj!)pBV3T5MIe@S^Sq$6 zyPvwPI}enXA7SRYSdPuR@GNa^T5io1P_~p=h%Uxc!)+14j`md=O>GZG>$efPq<$7^h$zz^?jXGaIFTlZ|U1k58@as+ON>L?v$4Z*__7|4L z_v%mj8js^#O?36LSY*BKaip}V5gJ->4?+74*TaL+pl4@i1o_eo^5ha;b;q_JDO;%0 zbY<*f!_C}7HT>}?c{@I?V-5t7lizZ04(ha1XaXJO+iJ-B74H9NEN21^DUZlB+U>5^M8Tk8bH-|-d(){6n#&np8uH2 z{KE3;^Z8Qc<he{whSaThb40jrR)lIaz8-#jgkd_@UHsdbQ2gohL1t zi@|;2tVuF&4c>l4Luxc1hnr?wqdmSN1s>?4hHo_f`oF()0l(YJ0xz;vz|s!V*(?gvi>1R#tLP!g=f>e)f3y80cOKF*%dBp-dlg!2Yw zz_8@W@W3h^@Zo&E*_n9|XCR{!;4qV)F}SxB1epvwk}I!$kCrSB2d-+o8pSV|bQ7Jc z$I5%GmoC{?plLk?1qBN%#eh@867iAf#(!iBc0siPk``Se1vqsCwcq!6%punN?4 zewe3CcI$adtS7E>LCv|IgiwB(I0SU13UiTful@`kfF#F%|NcAoME>7IzE`|em%L#5JCm@+}P^MFP3{8T$EpF}LXXNW{C9z;_voPJ2}r=pDp`-NyU|B8ji(Y`-m#XbP;>t;1spN5UrxPaveTS}ED{=^K=ka{{BY~Y_4~!sOQ@)zS>CQgfI)t>tXx*MLQCu zdv@=K-=}N2Fzp*LHzk=v9Js)l7wZ?gC!wFj94t_K07_R%c!iw|c_Vkg?@YXi6IQ2( zs-=|Nmo>xB)|ok43yH4v8&Re(XA?HAO?F))l;#Tg>>DF5v1?X^Z`W8S8U zfU0vcwssJ-a?&1me}Df_k<>~X@ma#-ZO}PORyO{(dr#?mD|HOSl>J2xxCAG>bqeCT zUnF=;maw!S&-vq1wBu4&OilBIC@1wnKWqz}c)5IeSQC!O#fTzMTN6EYj4}udZ3l(M zXNi%$ZBx~1&-8ySP~VsP3N{An{3Myrp_E+)6BXT(#v7jfoO$kk`ths(z>vw{qr8Jg zyrRY{Qge%lpCq7`_JK*gLFKXi4E$%Ss&7$ag#>NzQE`_swg}T>${e<&LtT6T1+*Ar z6BEN%&rbcwv=y%9@M2RXdQ_{dz+vf$wDfzNar?oQk7_?v4-yhXO>5PnoZ;M(xo#PmY(KL@6_tq z9JaIfh&rU#5H$JIPQH1I*=Q9F{fj1kpA?oCA|$L6SX(BLlByBdaiJl;@*?U@ovAg% z=Gzmq?|?i4K>M5)y6*E>a!zlLY^>}+TarUFb=(c*6L7R{SxyEtvruh)`1WIPQfl>s zH1}EfyA$+(wO8$eun}@yRRTxGT0V~F@-K_(TlKMwY%apj>wdB53sZfJ*6@17$poB{ z#$#t^Yly|oT#ZPB>F=CvtrHsl9h@7CRl6^W3vr^%Arxwlf-LuuKM+O?JP~=UMd|X4 z+BjSecp95y{)~#TuWrc=L7C8UKR;HB!K#0JyL~Ds5Z(B6*M-D~N|OXKlhb4zJ!9>?h4DG+X*VV8H11z)!0~6-ZQXl*?q?to}v0_hF1Mka*%$#TRuPipa+!% zoQT@lmLQd!3;HmS2%klEEW&yE>0zcEFGt<3?oorH=98n*#>QbO+zPG0APlpJni?KB ztW*k}W@ZiF!T#LnaFvjyLw=Zsk8j(Zfhowa$>)`5qXz-0rAK>_3~OhvHhpb)8<M;6&-oG9+Ifq{XeNhpz~c4EBM zR5f2p)+d%0vLWb;>sUB!KiQGo9cij63UKxw03)d-%HRm7poY(5JKMC7XRM14%t1ne zYF??RHoh@D?E32DCj3DkB9tRBZ~QSlWuU1$W$1-^rS;PJEo#c_X-xQNgBUGXL8aMt z&-~Sg0S)aw{3HRbT+bTu$=IcCV^Monvtmkf!d|G;W6PKJfa4p5cLEgy-o1aD zmDQlFjxl0G?{wq*%%a3`VZQq_whYUPn16JHrt$l?WZs$L8$-;uS|8BXy)=Z8of~_a`_+y|0A;5<7YY z%ISwSlr6~(Am)oS1vxagRCF7pK?J6V=HkQO&W8PZZuU9S6|u^b9xiyADU!)(3zD+; z^N+Y>z(|Nvg~(X2h8J*K|K5%jxU-oW7L&moLwzm(_zL!XX;Myo--DjCc{tMN0V9!0 zO1d`wRv9L@5G}3B$>E=tnUuN(F`LyNCJyOO6>{o_wxZ(_QW5)oA1M0zzSKh<--w_K zoc9;e^bf!r_bZup-{(bw$RQ0le-)46$nw(BNpQA9qi9dI z`VEJG9B)*^C_@~H^Go)ei<2ZlIDW!Qo3V6F-eh-d?dY0;T?UMB*JBT709c2N}^_9kX>jHHZlbL zWTj4`28W+7e9_UXF9dFoBD}+3rV*p|)|O;tj)rcEyZ^d+rNoa^*ObhO7rYCBkChjm zAEB5q9<|mF(DoW;ae|o4Yw7;oxeUiJ#aiU)t-il}Aby|7-c3XRVKy+S0GD?v{}Fxr z=2`NEQNmu&Jwe^4>v0<+e8Pk~-Om<7n-8n-tJ~DD>8#y{J>S^aG@##BR7|d@d{)o7 zpPCY^Z_dH|FQmn+4#-V39GO^vD$^a*{;w70LtuPPxg(|3=ocwxFEFKH4D^nG?LmYa zbET7`kAp`CHKZ6A7*0XdmRzL~C@+`GxeQL4sIxX2(>n2&n=tGmuRXT~9E!&dtU#OO zdkDQy$DeM{C<%xKY6@bgRLFB20f z;mkEF|GhXgr?IyZmnRsPgJlH=QAv*Po^JJRwY{_1`&xK*ULJ8Zf6p;g$?E88H%Ijj z=es-zwl8DB?vfFza&F$iYir2H0`lLUg24_T`D0i=p4pyX;Ta^+cqMoF%)p>Am?I^$ z?#ft9n8U_^VMb@35mp=kC9*A2moaK>yd-F=<>DL=CP~kle9hW6=@DHS{B7iqrucN9 zn5JvY8#k`6H@UO8Zv1C&`DO~{bNJ9@dt>K!2KOjQ)S$WC(b=)+N+2>@dzuw4F@X zgXuckE28@P-7Cp6J=ssJW*?$5NTRY!&hB=_bc{7n!%bHpBb?}V%|Y}BgO5C}FHc6n zLg0{)5M%%iTB5)d4NMS#gT6*tH8mn>X=w;CaR5L(T@IlBwAxebxRjHXt-7q)=QaS< zA~vVExVVjDg_$b%+ca}?bLaK5-8Jm4U?4`$$*h!yMhjG2yt*&0X7$5!z!@J33rWw; z#5+3fS~%)0Gj}xx4h~{zXvIOHP_&EVm^^RRq2&jZm!b?U0bl)_2kYaYTwHi}K$)|m zqHl;#uvjq;>bPyGb~Kd!r8nU4upgs6Y2T;?f%VI+vtC}JoYwafbTVpRMi#S`H?Qm0 z{=jMbRi%omdN_(6#+D>Y$LdRdk9aSYTV)hPE&Dh;5YgvNHxAc_Z~+p{N;9D2M*XCPgXPbs&JJZ- z>z3X8cbsY!{p8&*FOf)uNNZbI!l?M6uPe|3=R%eeY{p` zXgKZpwS>TVV@`m^F?5fIK|p{^F_ukgDQ}3p!b0HT`GrV&+N4vAkKyyh--8H9!$XOL0Makq(@p%)AFJ@l>5az-`+&-J8lWPAWyIL8zs06#aZehEGw)md9DI~LK;r%m4HOvj6M+}ylN|IDB4(l+qlu2T`Kd9=T7IU}m>2C3Ag7mkxNyAY3=ThPJ{!4pc14Jxv( zCb`s*KD-;l%=!d7N|aHu3l%krG-v;M(*8dG=9IsX!}9a}#m>(&FiVu*8RrIe88@K5 zRe_AF2*WHln#TN2BLS^%F0-=GP?pnIDM4{77S!{@+#c+2w%SiJjA6{!Dt?04dHBSk zVf?Vl*SEvTXe6z_s-EUZ9T9xuI(>giSHeRn?j*iCR+`-{CQCR^L9L&k<+J0hr8t<5 zvEzBoxhYygosCnf3WuZ5tlyA5mCew4PJ23>(j&n5t?7;|0zygw%%ndfm@x1~-4%h2 zCu{47$C2nL^e_)?jZYz*?O7St9e&GnyuGkW1|6y2*{Qb;c_YOHOIwjX%!Dphv(G^$ zi&FIyZgiGT#eqzDv*S!eB(LrB%UKf@l}J#cHOs{!mYw#Wh_!a$6dRN8Vc!1EcE8!u6qBx)${BXxIr1cCi!OSQ&A6kzx z?du~iIpvgJABP9$WuS30cdk5!Nn-aCyG`2_Vnr6}`4duYW}?f(hlET_m!3~lh?#SV zse673fI*?@Uw^6u@HX|WbLtX89~##`4v?>X5QM;b6B;U${*1(^S~WfW7eF&ay{~m;y^kph_YZ=LVx-dE zn)AsoI*k}j?vSlXaTcN#|BRN?rI*B>r{uKZ5PPANMc@zGvx5Bmq&G*4$r2Kn4`1Ru zKsX<5Ry(XXlHbRUh)GSg)KoynIJ z3ME>sUP&F;oAS0DGaWr2U65bvMNy53SxpbEQA^)mCCis|MSonQLaor~STo}acJDqIJ_f$N>GnmA;M_vp+ zVokdVIXCS2<9 z^iv?J-s`4$4Bi{fM}6*(Qv;sJ1Xt+E*Oh7_8Hi<6Z2m*6v@Fr5m6ery6!wtpCn?e? z&wO84{vb4p+})IOm(Kbe3R$CYps=6uJTaVadGpL;k!0D>d)SNWyF^IVDg)jIAJv=U zH>pzzmehZ8br~H>NTg;!k7Bfs!0kx#6_784tik3AWDy+^mW^j%Wr_mC0ek-ENmqsY zEffXF&RYJmrP-?-+IR0z2`S9f(o_R?k3J8bF(YSq^f2XoJZE(1KTCPfk7x-?#Gt@hpn%St1{i*2HeC(kWC3lZ@Lvk zx*H@!x>FDk0qJfw(jciI3M!q_-Cas|h?F!)!+Y;JGv__W^Pdm%VSY2tv!Ca_*SglV zu63<!|0K*X{7kIITn|g(nS#UgD51r(&!;SXUdo@K-RnH>liod2 z9pDnhot^FcgtnZO)`LlU`85pRQON0s{MFf*`u38G9ihXcp^zF_oP!z|IDerMtP|Q0 zFMV*(=yS1M6{lZE#`5ILUa;yp`uzo*^^n>2{nKO02rm9k%KynS^H31ePTWv--$T;G zX#mu*9WMw7?up-{1hSU#@}lDEWo+Q0`N204fy0jhfvCNH7{IGqp$eW=^!;zouVv~O zv2H7y`CPJgb_GUIINKEXELKSc&k_Qh?F&`KePiVPf^QkXvBI?d|P7qLcg~ zqN}Baflu9eMF~b7%FbmZ>ntxQC0{=mqT25%=~=sZZ0G=A)w(=5UzlWXyY)X$O@(~w zE~7P(1pl{K-8f^QooxF3v$9?w5i#)x<0fBEOT-VHxBxj_7Py$~I=jak-TGPiW|-p1PBKi5F#!t9DOGOcTWQCC zolmcET?MUZTe5==65~ZMJbdi&V(={K1NWj={Z9FqX-L!UCP+e&4_RA6m=Js4pV5bY z*a(?Ak~4n##EbL5V)t}_Mv*p+xQGS++r+G6IMD>1 zANot>Yr!Yyz=sD4or?qNM(seIy2qfJ0>V-jiGr4;Mp;6T*B;iozJkjjPMj-fB?0g4 zoMkEV0SjNZXQdY#f49c`f}`RMZP(Q|N1zum2>AY6RYR@{j>D$D(?M5m?5vZ7{$GI+ z#L3JC7>JErA_Eun0kW`e&i>BgYY(wNrNiMbg47RO)=JvAP(uP9RG%G$?awt$Y-P8B zPcl&>QD7KI(0-2?ENnwnjQvbtN4@qm*j-gj|1~UYbz2va(ii*nwGZj@b1J+G3f|#K z?@O$Ge!*W7m(D+nUnDL4@5_0Kd^!3thrSBU3TQRxOnZkNRf|2Z^ha)4;tu9%7XKW@ zmDE*1+o{{0fK8R!O>t9xYplW=UwBC+{oFPt1IPg;4r^<7h^l9ZU6X)21hJg-vTAKvce zITnZYU`IL_>BWZ+T=Aryg@lDk9jH~TDqDbI_&awmt*GvrkYlVA49pD3(Cpw*Ma1~+ zM-6Zb|4|5vqix55jN$dmWu6DhPqTM^ur^}Vr<9`O)ob7L6suV&d}3upx7c){(Py&O zC7)9jYDPki_b48PL7uLqV&yxtWc`=JbbQ+D>+AKoI=))B-Dn{D1mS`9{{3Mu`!Xm8 zFm#%Bii~*tq^C4GxQ4L{M_4k8Yf+ebbbMEi)&W{S7!eJX5g_>k&m_GGcN?4 zq;c5lXG8*%ae!SN$U?6yO=qc$CgS3-FEuh*KgX|tnA?+yEDda7u8?2u}d`-i)r??s1sb?y$cpce5*YQ?x{lON}yW~D4-SyzlEC!IbiJXUwW zw4a@?;QNF>swMF{Mu0Sm>fZCIqLC2fmzgNS6&lrYYHKW;yvT{1 z^aeWI*C{Ea5Oj21mH|WhML}?SCQ|n!55WnnUrRSp4u(J=nE>>;YWoAFe(S`vAyE!54fd&quA$g+YFWe4o1V3$fH$w{bMfH zUmsY%w$fkb+HnYeXf^ejIFD)B!n-7waFJl<;23k92?`3L%;*9|6b^VUE9TNj4z%CW z@`i?#fPSC}+Md;W?_Y!EDC^%1RJ&F~a4-)w7k&cdGCm8Ho>AQGcgc2`{`+=W4d9Fk0&oMWIuGvh9A}`nYLc8KX<=sQB^b4EVTNl9ylq}8N><8ggBz! zjnHENZv%lM;I{LQO8VsR@H^XNK}LT%D88h-f%vi*^K^R^rM3^&?i#_r0D0W4Fg^bs7z1`l4s`gTjl$^y)LdpI;8xNASSVBvbN%K z{b)>uW=#M~iwMj;Y$4LY8rsyYM;p0VP-rd*O-BdoyI5>m;7KEgZ-#5Y_KOf7?gQ@` zDrAu0BcVa+^TP?5?mz!V4`kO>b;PuTt}!BH@B^vV*WpBO)b!!#mM*w_{{@$kp*bJ< zifo1s8s(c&1D<|S*+6B|Z80Ug_ZfJGHJuI^jE=u(ruI3}E!>FlZGhc3d9+h^uAARg zlK{D=tNmY*aF5Fj)Sy{8N4fRvaob8BQEn0CSrJ&cT73yx1jW_r1 zD<~*<%C5hC*_ewdPvyBzYv9zwz+BAPB}YEr6_BOxpT_E}Oo15j;q36w4v4B@AEHHl z3owS=$0bxItd!faHpexZy1Ll9sAVo&cfs(9V%YVA;!t?|yU;aZJ_zC{J-AuW_pA zE7}afzGYGK$H{Jf3!stvtKHIV`eA9bsi`T@7UorXFIs3`4yHx*@hApU9^3-@G3yfb zc5ZJiLau@D3Yn-NabobFw#uM2c!lM_w6ASKW^N$eMTQrSdnTa-aI3M>lG~Cf>cQ1m zHK`GO{tfiv$!aP<*WCdO_3W@=Su8}f7~zL8t%ES?17`INphxsvl~YlPHo|3y0cuI$ zh$Pp#;oZJF6QjqVP@6+RE5JJ@9tJzAHNDFyd~DIyd-nRz+NAy+sAZGgXx^%#Dbvy{ zl}h{C%~UFj_0njF@sev0U|pP_e+1q>tnH8E@1)YgrCY6fVw%!KdZQq-G60+!($BmU z$&w4pSMx)+$*j6}@%vLgOk8N}@USN{KVJ#N*Tq6wHqyv3q`b(J7xANv`yfE44*hj( zs77#NNkU07axKsuOsn8P9xgxv`cBv%_4IT+Oz63c^=(w%&LIx;|Zzufk42L}Z~GT&$4!1e}_C zAyG`aFnQ%Dje|APku*6g7fwwJ$Jw#qcCOiqwr1~?*n-?!U7{K!s=4v|G>vOXwy0 z_F_QKz?6YL$?}Czeje=Mn&@NibCy0SZ{`2ajN)iUasVxD)kfknqOL(La)(K3>Rdm_ z;y!CXq4qDz;tY*xzkZZJbNF-MyMTBSm$9z|yQ?B>O}9K7Z>9>!5`D);v2r0kcwRhw_UhKaEf<<%tB(nq#fwwag z60m-=FpS0m4M943dXi)#LA9_>L9gEhMpulI*|oLzKyfwZ5koQ7wlbh9?xcl|fzc|* zo|HadfRGoB1n}iGOsM`xYz55S!C4idj{#us$yq9rD-GPBP{ftn8VYmDA&W&J3jm9}6Az{!4P>w{KiBTC(96rbTq(6(DM zg5k>asM=V<#AH#_p}~_Pt674JNiUmZ4HiUe-}Sc-^!5e@cPT!8Y+>eHcjR930C}gS zqShWJ`t#zOjj~8ew?bUkhg&8)y0qwN;Pha4g`puvMn@;*8hYoBE3>p-X^)ZH^Eg^2 z)r|Juncemd8wP7DArDE`vG(v2&DL`{r}Bm!(J7NZAw!8Qcsfx3(4lfM?5)Q5MegBU z2Nj9-I!{i$9$W0(S!#Q5QLehFq~Kl<8HwY(JD>hRb~AS`TnNc_2f??jaZmyHeQ>=0 z?k641UsY!J(9nd37`+`?2;#yc0*6K56-M8eq4wZ-f?)juibS?vK157@{;*{WVfC{e zgA=|$-uORZFdMR#Ltn3_hdv|;(DpoTAtJv;o-}c}RrBgpQ|0dC8(bFnQfY5*FR=pf@&ST1;-b7rV35a{Q?^e9K|?W>>tEuc1Wdc^M4k0lcWbkwM>`m#Bk4bUf;fg!_3rDq*pd1tY zM&W<{4-Ehjx(vU6mkCvshUONGK$M=DS-yC2@8o1+;M{r~cfHY-V_DhP^{sBvpz#z7 zs@QB9na#Z~b7jKvXhj47izkxy@sR*R?k9Zf+LIDI!fWnDQ6T9}*AP()ag7WQU$TMR zQsEKS>y7Q>tiu5|eR{qK6nuQMqg&c<9!X)ADE@JNs{j;tBv;guM&nRgj8t@G4T5pY z(}KUDJb9N9{b^#bm6vzSmAqUwJi&KJII5*;;aL?0Uc5g5$`S?)od*L7;ByLW)K=Nc z!KEd+zz{i{fkCEN7z-CyMqVC^0pV4*6gX|M9D;~h0D2yzm$!ZWzARG64_KJkA+M>T z+D%sHo!L|$M^urWKN##idVp{RssWVNX0$aT!ISFA>#Gx)+S(8`|Ug` z~ZydEnf>u%MZ1+dVagiEG!b<-onco(WT_})uVE4Tk@~S*j@sJO zFLDAbvIFn&oK0GaJ23CJb33WfeQyiF!FM`8dLBkwBJGbjN=EhS!H1ufRr99% zKQ2MWF*b4Fo)R8}iDz?Ws$2fJ6-M?AFlhbhLRF&d<0IcwyZI9XRN~TyIf{e=FQ>SY zex0WM_npZ+Mpn#JUPh^qw8!GlY!y>p%S7DejipHI0v4cvQD*1is*;GTZU=csqjp*V^qr0s(C0X1{H$|66E^QYOV4 z53|U+-WaFrn>d4|gB{!3O8{i228Ag?!N7PYClP}Y5KIrNsbu7DQBdu->Y|!G zOoF%5jMT>@aZ9(F9aBzVzOA}MjbMEwSbypz-`srF;T2uKoRW6sD1$mC5L4QR8~%mr(Q$vZV3u2wVe=6T(7|a9Y9t*c~Tj9wv)K5J|*h{u=v2x4ydM& zhqluJ`w|oF6_eT*o0G$w;(1Er-M8zYH1HsdWI6_Rxgf*0GF6wt)=ta*=WDcngpA3d zNyG_2)uM8Db$P>$TJ}i`^hncj`__}F2GKYy=x%Tg&-?a^2(e)S2@3`Ut;7#jf}K?$ z$^#@m5Ij7N+!6H5Sn>xy;Fh@XY#u~5=8ksw*V~#0KUpdG9Z2;ne@Oy&T$P`X@xSF6 zu6*mr&(C*JcUG|W`!)GsEE&_;$xA;`EqD_CUHC#K6tv(7z`l#_1CfB0g{!+U8oMs; zr7!WLUV6?VLaG{mmayOcv)B}Wg=Dfg%LOj3gd+`Ge{g{C(;=Rb)uC^{+=3j}2MJMQTt*H~qk+_#?(wAY=Sp52IvA zKUV!^4_f5xHEZW`*-_-YBe?yemp*D4yS6aoS10aVjOk>N)Fz0V>Z0zPf5$zQuoNW7 zzdfS5%GW1-zYG?{XSK2{9Vj+}g^&PM5tG_Af2Y zc64*E&jQU_{{xLNjV$Bj7SbeP3PxkXgTq73opKH!z(hm4b!&!_Wd8o&_@+7mumD2O z%Qy)f;*o}Z^n;ZJ^UQ@T9WQTONsKtpzvY%w-=>ZcvcJB4PJiT>Cwx2Z-$*b+F|(}9 z0Jn^)SyS6E5-cK0pIHQ92EddNG5Ca z^STYBZ}AF3RW+fCTiy?{XRu~PHcTOB=%yndWdLJy3#|JTeVq0XibS-J6>k7OYO&zn zP}BeL;lseZiqT&uN;pc~bI|wlk{Zv9``}6bL7Iy+`ZxyTik%vf@BO8<)5G1nTSEiL z?M%p(L)5OEhA027yVL>cU;42G2h}=tumH) zVVhURFQI$XH_L3n7*5U2Af`E_g4om7?H-6p2*X#`sV3)n7AfxS?d_wqTCN?8z@bqK z9yNbH#soG70oS6DTY~T$PzQgr787gIdLhJR|JL8T3*Ye=$(#aaqk7}>+xx&A59sb5 z7x%~eMNAmH!WDGc%)SwsE((`J-kZ#A{8P~v#Mc!+@Goo4FbUqEJXlaPX>9D;hl{?pgMAb6Z?k6t7FQg`-%4tp55Pi=aUX z(+)4K=Yu)WOV%$@O)HVh1Q+O4V1uA9XlDUjI+&&F3l1%1VuEYq!>Qn+^fzGzm#{Nh z0mC0D-n((b&SjEH&$t0IdAvT76?T`-$hFRn6M1tUhBs&3q(tO~Ewn+1CJWbYw=a$@ z6X8Iqip7L5@u(t!Fkq8H*H!h0#6O@b;5G<(2L8c9@|mkx^6mwo`D}*l+qwQyI>J)z zLVJ&skLx~GCA4`y?_V>)F}nY?@b0n-fi(mK7+LWZ79$Dp5!q@L_`VqglNKfk>w!uX zch~*Rr4?LayvQ)WX$Ap&&2h-Sm0PI_9}P?4L|8%*#R~qAY2kp^n@*Q|s~e|budx>U zU0seHj*8y~eh3=Nt}ZpNfGoY%vg$6y`8yyyL@IY;F^%KIBM4%36M&)8X&d#mKQNOE z#@mxgXCeG<6SH++_d2J|H+a!&K^npo-8q{Z0~Zw38%laH5_(|vA_;JYZ@2a4Q$QG9 z7I}Hg7T#_x5`vIu6{3;}mG|S+Et3W`>bQ+m=&b9^i)yf?sgQU{6#1g8%OTi`w;i^2 zi`&c6a8>43PHXW~7QGmDYOgpOSfyL#oap{x<{Xgp_a=>VD zopcJF7oA@#BlP3u)4gL)%m)7C;)2f!A;1n5@;mc_c-`*F2pi8D7!P5j#!^2E^Y8^$?pB@ zX#y&xGYtx{YR=sV_brb-zu0e$_kKv3yg)S&I@G&5$$ZLG3j3#+Y(@v5jZ?f8C^oqv z^sc`F=SmxdlEA3^O+lv6P=JL63M>r-1MGmFtpYwP2lStS0U#q&-ID}SYX1B4K?JPk zEeN!rnAW&ac|%qTXa~WK%9GjW7teD+vr9no*+5!|+ky`XIiLL~clJwb(#DH1^KJnL zlsPzE>{E4Y2!`qKoSW%vR?Jswhx(@kGy$#>CWBk$jyJhn_erg`=XX7&O-yygX5D(S zQbc_Oy?uPPlh*!yicx3453nm=!Y2S=E))XX9NKQ-31_a<`(7PSkQl@e{6M3hUBUp> zqrHDOYkeU2M%vB^_Stm!a5U-oHbzFq&Gu>F<zhM?oZ53{2n>l$IN`_E34Dem)64^q*E{NQTZG_c@0zjWl;Gqo~(Hb`JN4v zOIzj@o0A}M7jax|;C+S!cYTEHk5m2r<@z+x-Swu#Wk9Mq2@4+;9<uj&K?n(jEqdIL-*T9>39K_+^HpCi)T8ux+MJxkkp50 zhUoZN<3>|06iGfG%T)T}OS*8VNVGj4#xvt)*5P&2>K`FzIvU0IapG%khLf!w=HFM| zof6sq+2VdQnE)jMZoR)Kg`5e6aH%5Kcjk^?c@aoscQ;4l;QX4Y!n-;@UTKd0+<8+S z0U$=5d>PeCIuk^!Z82q`mB~HOFdkWbrL9HSEiPC!&O`&3W<>AaykkpS(vOaKlPK}Y zv@H}UiBsX($8|#+cM&)&TwD`q>gOJPZ(q``ZG0JHU)KwBA%9{_fLtug*myG&hL5;HV3baTO$npxpj zxfk9gkQ@dUL(ddr-{cMrEJr(5uWS)xY1EWg$Nf{sS0j0HUL$s8G%YBRmDS33p`G^J ztLF%w^cctVVvH#>&y&_szJ+G$o8NpQ)^q|Akq$aZ#0u{0WE6|Pw3N8L=ZHWYQU1{N zsv%w6+M0uafOWXR3r$)+0!82x1`$vf#&mbfM^XsH!`r0<&j9_b7pU_SrIbKrwf|uYF0+lVq%}N_bOAYXKQzaAh|>8_WwpH zgCMCmW)LgI`)i^xFqQ3{BjQp%n(24tO$q*d+Z{VJ%AR@4Tz2KU%h&R0V7CA_p%wTl8TjL7(RXBFUVOqDYsHDQv%*+DYy z-MixE<)9q>Mkj$1RT+PTi#H(O6+IOAln_d z3~UE*v``c%bYHWyN@=X1?^XApXu#3Ytyt2zpX4$?#5Lq$&na$^hzM>b@UVQ5g;grs zaq;`g{DA0azMMqi8N7em@KVZW&GWR`7m{Bu3K#t$*V@-DO)!hOPv6{>B{re;p3VRQm3uL=-2n;JH>c54n90C(!B^M?{wj(x8l$P{8jD@yas zQ}qnVeHUUJf_j0*TZFTkMYIyfUN2W}^=CM+-XK5`{gEETT&zV(5q20VA1)&c=4^fR-gEH(HE> zk6QL>O*Ap(=#2`($k0#{e|hPOX&^yjdwJPRBi{gD$Ze+`w4|MHrfdae5F&!}E(He4 zoE|>w4meLrcj-o1W1<^HnbjB4vB#w2qZo}xRca}=l$0F4EAyGQBk%?H9e|BDFuFxr z9Z_m8SlEzejMib5RDfGFFQ2J$<>PjAvFqq`Vsx4_lou=!H0*N3?8639c1s{SA|m2@ zJ_X;4>Cr{4r|Rm%O@4muotIUH#8?qY84x|`hUAvK%V)YLqFEJxqasEi~V=+XBrC?pOyeasnv9K zjl`tujxIF*mTrR_{<2}Z9Tq;>q9}0RGz7ixWka8>$F@!SrxbTUtJ}MmO-<`bGIn&Pc;C&XRsCg*8;}dc(Uf6Vs2AGx_4Kp=Gnb;K_wr!m3c1=;iNMcg zCj(EcHQM9QA+@IzYw0zt%7uXq{uf%dmII(|`ia${)|^tNp3jmGCnwd(B;wGvbo*Qbc3a)ktN!eHt`Cd&NCQ-LJuyKwXk};B#k2I3HR{{34?5lYA}4xk4$ygG3`83 zz%)Puq)e-@<=f25E@GQj8GjiIf3suV-?}ciccLgm-Z!0oOrq%=d-dv7sr{TFB~_n# zVE5WW>XDR=V_Q^pK}j=z$Ilhl3LE;3DXaTGDrfBeLr@wJ3V!CjgGDw1hwx^7l96VpA>vD|u;T z2@OZqT4_jt$11mYu}M`Wzlnp7nbvzD`bARM|8I;m-vKdK$iW=}p}?Q~J?}Mn93gjK zcL1ZT$|tw6+x2?N8wYgQM1r1JVEsoXc@ZVCE!X8NG>i+7>3Pn@xiBCq^sE(6c0WRH6L~O<-QCH?ur*q5Vau=2bypPolZu$ zbhJWaL4(+p!1A}>Sz_LiZO1V+o4bSCBO}!>t^^@6(xba;g#Q%Es9oSQQt+5T2}%?) z3kq_$evPNGyNj=oCO_Gw(JVhZEN# z1^vWuleE^KdP|qGJqnra^a7io;y*e4aDHdWnk~PujS1EFbYr9+Lq;`SFeE1@2LlP- z+=$K|&j9}_m3KzREpk|s?=fz^d#qy36zy%$zao~cc5atxH%b70OC(4<;xyDIq`K_MlC5}OE0UINg=MxJX(hu{;!BOx- zWFENO@6*z=#)`w@B~OB9yPOx)6x*nVBEu$_|91xyy|kuZnWfU|_;kd;z$vVIu7)t* zzKL*UG#lHhvN*Be{qeCj*2ZLMV>QSAOHRqi)(Jj?<2c;DGwx>v>(}PV$jkrIYkkSgIc%KUbGU93e{!2qRp3-4&`T) zmbMn4Q_vz=A!qy?AEi=B} zF=+B_NE>y;R0m795Nw^kOs(_m2`PRvH)Cp6QoOYq!r?+6oS5+c6m74hZw-GeYr`i`xJ^32ifF?c>s3sBM{l{0YP!{ zBa7~&hK0;ZD_WzXsc`8x6MXq-jqY@rT(9FhmnW*4o;1BzMG~ORRH(WVtWED-^I~=2 zri6rqam89z6nc9P8OJncgoxkg4Sh+yxrT+aW+(Ez<$=?KqD9;CvXCX8+45U@fzHxj z$m*{{nF4-^xh%T`TADux6pqQz-V4T&N9Cn3TuIknHHqIh!-R{4BOh z#(V}5u|IxTG{Ap+jNr^O#)k)nlK+kB7SWbX{_z5c^?wBp+q;!^_3d~5B2c)s1>;AY z z9OAn$-%{A*$;~R}%1gYACEAn=3c7#5B-YY_CuX6WI5!b3-A$}*5Rm)yi@N{hr|y5a zT$A_UGx&%C*%vNBmXZpLjv|TS9(3)Au5K>j7o|xIAV0VR0>MsZx8O7z2qU{29$xVF z>f2HX94cW_;JF~ETTnm{cQreW7jSv$EiEhCYH@CSa45xux0GA8+b+i1=!Uh-({5_j zYv^wG`|wU**Q3z)^U#_N(?q88VB#Cr zWdflqC&R-kMoB^Eb^pP1p%oxOX%{(}4eCi?+JYJWBK{{?1#}|YffRfhW1U#<*hRyG zYA`h*&y9~ZMoCIdOV9667D66$sp;wEHT_Z#OnJI=_|HXALQ`|9r3eYBdtly)xZS!Q z8)Jpo%zaos4P*6Inuv_EK=DJ~^DwxFY&}8mAD#4r!8w@{$1fIfa*ad(5$plVbQtgdHvoJmjlfj&H07q z$B%=Um^N1r?w3;gdd%H+-#AN-O-jP>Vw0F=B%9Z?MNTPgQ!O6Pp#AmPWW3R-TO-%*iu{a)$1Nehx06B;J@gllid1K(3Rl9+AbJngA}KZO%Ewn*PdgUScy zh8+pzwZ88l!`G00a~hT-y|~5QCcC8kTlH&2Q|fN`$N{PPiDxSdnp+fFXQ<0@0uFcV zseRtxr9HTgQ?un>?EVWi^g|I4kL7SCHDE%FN#!mc@fyUtRFaXQx2zJ`1o*UY5dcDu z*5XP(O1Gk_gO0#Ep})JMNL8{VQkCo>6p)vu_}GA-YGLd}i3i&%>*Mi<3lXK8j$Qko zUud=7LZ(;6f2G$++C}+b`Ld_xnJp^3!lP)Aei=j!N?d9cL6{*%XrwX(0p?L9=*XHM zi9LI>WPU-nS6;Q-Qqd*asY5i`aJF?NyOL4bBx~wQYY_`Xe5ryMVq&*{nXO0=Si3>` z8M=XaoO5+Pz`Q14-!QIDwN#*d2mxB3HiKc+CHqIL=l*ZG{&{=_@c3!LF-%@;0VJa5 z42-|@Bja3t-{=@U-$aN6t(ndDqtAQh+f|W(m%aaS(CleLAZRbCYiWJP9I(|=Uxzl z*p2MaaH)O@CUTAsRLv+cU*i37(cqG-Y~MA@jx-wbnqf3RfFBDB=SBeG%PphZyLZ8q z3IPme;)agEg7wTXIF51w06{624n&bceNtRZ9-;>ksw;yN_RT>qWa~zTIf3tzBpdrI z^Im#K3=>|TQ95$6=|sc;^+3ZtdIp9N(^BEDs#EL))|_ZAIc@WVUa`L1l-Hk8K+wT# zSoYfJ(@mg}6$0CBk!#36rzt6x#>wzCEJ&0ZU>@Yh%0!BR(*|RC-N^#zzQioX?9K+s zSZNE69e4$C0(0$a#NbG{=kHvc>h3bj{}6-8FZw|O10S!C_5`o5+f>xjh=-{YpgJu! zqf!VsLBN7&IU5^RneLm|icKCe_xSdbpXzPGkR)&%QD07h`7NX-qv5A6N%Bbq4yoeg zS23U8!rxT3gT+{%XsiWI*4}T|IF^-v!E8bERP;7-%@^3}`+z;k%7so}3T;5eq-*5G zY2O#stlEcoLAHaL-Cfj}-mUmlsR-&J9YnI!c3h|)Uzd}&l9Tv^ zaUlk5L)RH1wIIC{HmTE$4)PLbv)K~@hd_U<*!FgD=U=2b1hmPyYIkKeOVL2HOwXS* zXq~$n49q}=wV1&HCRP3jMDlwh@0x)nOvNvqT4$EQqzuiz1)qMrt+h~`n$;wI2hcn* zcK9n0Ofv?EgpDtMit!E5W_?6QF@|gJgeSS5U)zW!HhoJ~^!G1xPq)FK{{U1JXf<*?QO1OQ=L%xM zawOtcjXgwMAdbfRYkrv4xw%+5%fb8xa|^S--ztAvBo)kJfk71*roVd%#DKz! zC^uH;lg;>vZu;m$E-p;Qgj|UiM8F!sz5TWoI$}fzoH7VC2Q;M*rh8>tqu@&e?Qq>& zlmOdq>M1KCs6F1?12yKRz*@M;yC)dQV(C=f-4w=^et z2`lYb)Pt(mq?)SriYpF+FvId=dHj3vqSA#T3W=YOHa3eJn(>B2A85tk1W!!H9gS`S#<9~B~U=R?G922V4 z19GbfoRizAK;*~DiVX(;IzeX$5k=0Y9=gXNg|_YA9O$;wkuG-~zQb>IVy}JPX?nBw z-ee~+MvsH3>1`U%7)lS7sqn%OAj4pf-edx3IF-_P<6+J z*QzEK34V2obeDNn`Rysl+K)nn9p=j4&}cy&t<0f1iZBI%gtU9Pn08lJL2=32UnEZ_ zZ|DZ5Y~`d+!9=(kgTw)FFKB7>VX!GFHDyMz+A3q8Xz;>p?;K}|Q!9Gb5yBSmv;c#X zA=BXdBV%J~9O@#pyBZ{ILtHSc!BaS$lr9CI-Su@NsQ|a+K7STQr&MgZVFV#l@0=P> zzO^!7D#P+cIn;KWY>uf^yT%Laj_qEO7336gK6$?cWI$75g9iFqLGo0w-_#Rl^%y?P zHTgB2v-g*KvC1F}g@toKZPha{(1G0OV+6a^TVmRF-}ln}Scv^D(up7xmz-G&hu@n% z;E}YrlZQMh8+8KS=Sx>%tqFT)cegHB@cXdnt_!iNR#RO!k{r#1h@FcSUiVy+GxQI2 z?8V0pla?udT{G3pzv2Hm_+kCbt9S`C-Pu%e2$Kydcg>b{lf^gpr1SV{K}!d*!Pr8MswsVxN~KjhGhCFMZGl& zeW$}(Tg_g_%07LOPB;*P2&Rr(7^?&y!RhMQZ#7@-21^M)an`O-TPHy&I@ z`SY74y&dv_&wmX$oMean)1yPmG6Rsqx~D4E+DLSAd3N{!c-9uE=!aNtEwp`jcPmGI z|0A992bma?|%;Hs-RsQ1J?T?d=lzr?R4y^9Omhpi-wBkGAjm8qAfg6=&Vs>awPlljCZLrAUVSXVAoQy10 z(fNhe#U>czB1j8ssw9G!NlIgU9pHP76tmjL_}Ad~oz-+V#Zh z5f^dTZaoTSa+R$X?2_|!d~sExNf{S0azud&6T7TkMAO;<-oYmRcAaM z-Qu`6jC?_6Y4gh-ELx!8Tu6H9J15Wn<(!|}e;NWHyH-m=ALd{sj1rM=lN~5PBGaj| zPw%A!Ic^<;RJ1nApBD;GB+r)^%ou3%yDrC>t98-bZ88Nf!K?tIr&lo4vahitQCmgh z<0sn$?T{4E->Y^ckEZNvb(v6>vbHt=|By6a!osB={MQtQwa)6TPQlsH)+)PFx>^lL&6*G6+l}*{{f6W;{$4kTmF= zVP%>m1VnVfaf-mkhY`G9 zdbQKBekS(Zfzuc%CEyGI%GO_#HMffWs!$?qC#00c%4R0FS$WUmcdC|iXN;@#2j?(X zcSrmRy)cQ%-+#e!ju{1t@??nxFX+!1q4vc&jRJD%UrK*Vgl2FG#o447aSz>DVTLB&)-shVu zpqi2lAyat%Ef01$M)UkRCUA3SN~7G$xKh9CUO|j+4)eiD`+=9<&6R(&qk()_Qr@h7!RZz z2#xz76$Td&&<$UqsWOfsu2e>YOIeJ&SXgA=iLmrY4#k-|Ii6UrGiUmIb_yT2$m7z= zb(*r%re>}P3NsmJqMrB{bvwjBbMq59$$K83jIZ^ZBcovEWmTygdUPk9+a{ zKMV{CikbryKy&${J;T&6P_eU!N0dP&;e;EEY@W zxKLeR2c)Ij*C!w4REAgM1`9J5;{WA1s%=N;UC#Y_vwn?_bqr_*(z!RsrSs#qS(7y%5&= z%_ya7^Ku+KMwf%!b$Fty2>#*6R6Q1`v)DloZGx90y$>2KK8+=eWf-7!l&l<5`=AaVKK zIHn0{$8ykb4}S_@_(3dU?Wf9KYFvl+-fUm)@+9<-5HjLu`k83vdlP$&ZH65mTcV*| zI<7>OkD}OT-zyO*bn>(qr+)QQ!Okw2fQ5ybi>u{e)tH4WUeix6nKRsG&+m1b1m)`} z@{`>APl`fj}^CBOFKepBjst9~rEN0Jx)?)>|8 z7oBuS=S=?2R=syFS7yfOcqg3p!`m}X(GvpXBqXcpxqTw3M|Lmmwyimwtzk}{*v0_B;%sX*m2Cn)JpSjZm%$v$Vt{taV zNgZi$muz?u4KJQrGoOoA!B{4YwZ*2IjXbE3eQpu7FyL%hJ|vpY*!TvX-i;~bCYkUPH44Cr({L)3u>#Jxy2BUZpzu|d^~oZKkd_!iz7|#|+FXx!=JX4t$#OlqX)1%c99;>i%CN<+v5d-}DF=NI?i$T~>S9lW|KR|$?2Iv9 z@yfXH9+^qw+o6VFe_Bbf0rP{EYZ{+^Fyb;J_JreK${Epe>Br$X4}!bThPo*gEzV5) zQPveMfyt7xslzZ_uo=Bs9PVj}i-BUx@eGdqeMDTGTvB4{PSaH4Cd=zWj>o|@9JOYjh-;&h|IwsZAq6Eu>ROWo zkVvuy8%3_c90Rm#8?~D6u`R6Ot7oVjz^{27{r|D`)=^QmU(_(*07D2v3P=szDIp~c z9n#&>(x8NNGn5QSBPA#x-CY6_21qI)NT`5x_jmC;kH2@V?|s+ePgqOu`?~IP&ffd% zZC+Rkv3XNh9`qF`Pcij|IDpOXo6=M$&TTtI3(e7Cf+QA!l9PF#g~wm4jO5bJEP%5@ zt83ETN@syMDOOg+54cVOh?N8-Y8?Jw>ny<~v8F^rRxL3_ut#57p4g{98~oJ|Mzh_9 z*i#LPF0++dSEb zHZ{^4C)!0L$V%JljUqz-g8b3eT#KJ}{GYnHmA0~o56%gx^a>^b@A|`8#@Sm?w*c=D zBMdD2{HQpX&+k0a%BCqZL(H=^mybSAT%bjT<;ea2h)2OnY9Bvi+Kx1aEyuUjVAnPp z*2ZmVR^|sBj!y2aMWlhnYCQ){3-5qH^KfkGbpKb`97dtU4#C%=BX#M$FN2F0=@vny z2Aqb=@G^QP%4(vq0b@$1bDQc1V9mHH2<3a0mVHrk4~!H-&3Wb5$XW^4?S_w^zc;$v z9UC97Ab;`gP-mh`mPnN0$;){;{Xyy9AZ_Sr^IfN3KxurdH=3}CgR4AM`8-~GaIn;!c^7bg1l{di@HX*GMLC|lY?Wq8iP41_4 zAN-Z7Usov8UzU*>`fPV(nCfj-Q=Y0sa2eb})pcD`0pi*(wYc|%;SD6z4+RTWn0VyB zmBm1Ixi(ziN5nxE=##&61z+o@(vQ)r5?S5TW;qFLx)jI%Bdi&Wowi-Em*WehQD;7{ z%N4AVO5x;x0j9qip@~~Kq;!%|(>jWeVl`;QvZx5^X-muchxc&*v^h)Ao_!ku71V*S z{g!YHB;Q_gd$wt0-4Pb9VXYr2Y79Of^BH>Z=lbCkULtmS$c{;Rg^mPZlnr4;4zgd@k(EQuI+4TG4LLdjE3&ETKR&x;AJWG#nXM*2GO2Iw5`t2M?J2O2mvmka@T52pJk^8H`?n< z6DLuXo%`%8Q{?{DMAGl$QD6~igk@(N@u>X&JbwU1~Yx5QamEh2Dc)VyC^@$_xd^XrG9~ds-EvqZ~|5MxAkK;RKj+4 z8D|-4sth|QUq2k6v%8YNp-Ye?aH^X>{uB?8Tm$+SoAJu-AOd z1=shBcG2Nhn1QPs#AY(Od;&$$wMU!stMic(=@Jq1jd=zUa$%4_X z<^1Sz9o(~A-^#kUkGql8NbWn5!qe+XR5TJsMCW-MC)9FNu`hNIMtPAem$hd^bTh*v z>rFi4$_wL$Fm57S1^OT9p-_Qb78WHc>mTpl5wSc*5R1 zl!_^KH9mm#eqDw&#@_kjNl&<;_n{X>g^fwON&{JG5S{MZ1xEXc>@EL8u`(y(u{Q4> zK(fUf)!E&zOkoDi<(vY&K}`Idq(3a5rIop4i0cbTt!t%GhOyhIB`0nB=E4X*P{)F@ z>M~P=sRXF;gJZ4JtIM5U!i~HeO6!7D>VI}v|09JCp)YkUeA7p=5{B$Y#3qqGdZi(B z4WF0Zt>(59u&)8E+jWq@m#S6EQ+<;yrRLe%*(B;V$#@v6jPTJf}Z-Y5r#mM zMF=CvYwcN1Kl}f_{bI;jnI$vxM9KE*BcUI!kAEkL zZZrfhep$Fw*Kkbg{!L8MXP&&>s20E9Xz%{a9u=b~P@~MkKJ=tSEuVv%yB{Dn>=9o# zG+qCDH=*9JeApO);m36&4C3y+*CZN!8n-ZV^!v(b<1Na{WG>u-9uoDjbKAL#pi^=s z-Jv7`f#;spKHKJ!Ay&_FL3rKcI~wmT+g7D2eR$DpsFKpHh!9NXF@|g4GOjJIS;5C9 zNMB(H4sdFf;b0R^X~WjOZ>>#yV~co-YtcmO%pEa!tcjsXcvo2MHrAnb+RF}O2`PQCLA-WOCmXc%-ZIO9zlC1kxh}zfa{lo+7CL%SOl8 z?v)OVANuTiED6R?$@1LjuAG0c>_vW56pSH!gt$qGtB#2r)x23&;i4T#R(kaukN)sb zPo=qBr*d=2V^Nx>^W60X)dg+=#S-?kijVLYZTzGKZ$@S3QULlnez_tDe(i)MbZv=_5{kjw}kRVUb9;2J4hs+|`ZcKNk-{QtP-Xz>ZHdMYPqcR2qk^}v@OCl5+ZnE%C%2TWTmhD{Hc&!T560Y9u#s*w_Z;NjGL<f8f{;Uw|Az5B9Od? zDMMMYRsbY^lfj4)r~p%OxyY)6acS>M;pE`wD7;J&^opWqs2jPBM`Ybtr}eBQsvkS(>AhtV3N?v_rz{Z= zECuV~l$Z(#?DdDYM!&sOb{sVk>BWwp_l-&TAgG|rcc~{|B3fGuXHtP7W~H|gYxt(Z zD;V&c?tBfUUm{jLQ^m@eu9z+2@|`gbogqdP36aXSS84dGB*@_tHTem|$jn(8vD#Y= zb}j`fA)hN&4T?fag4Mvye~v>9RLu`G#A(u7cdGSX?{Vp24CeTIJ2`Rp){gE{wg>Y@ z!nU^=r%?Y;*xf!*P3Ue;=iY4A46%%H4+`6Q^^G)E)+(lMSlMv7HVg62J#zG@gd z56=`igB1}&&lr1zZ)#Iv+2)mA}mWpaws(#h1S_qBSba>8Hs0ENNBc(~s3C-RFmzoL-|Co39(PNyH?1>73{bKs@W=DT{0JSk`j zHiS-t6cNyV%P8<);HHW}8s1md8lGCivZxEG5tX(}j4CmbCY9mJcc0{hekGQ}BA`}+ z_i_3aSHKuB27#S&!?jNgrjM}<%_IlcLqMdMq37vq=26rWT|#8^W9%=@FwHf}1& z%fDXl;#j?UyP3}%2{U1mY2eV0M53^RALNcy%7D}!51f#@WMr?;6(Lg~v`-6jW~=P%eZD*1UVQ&4FGIoP0$pnt)x&*?m zb8jmASHu4hq?UQF#VL{Q#>R&b@fY?u6bR%5aEaB%qnDA9Y1O{*kIWKM)D1x4kLV}c`zTos zqLi4JBRSwj<|ZIoM;EBxxc10OA}UJW4Ww?DN&wM>Mq%M*-5F_$pZjM_~* zuI@&#iv-?$9RB^OB*}*@iE;jXDtJTM2vvV6GW`s3km-ZTvjL&wy*PmGxGPC-$?k=5 zlZ!>6Sy5Npejpcunkc~g(3bi?R98#eej=&FOnURiI!wvSi%jk#fb-nOo1P}D_UD{- zy^Wz~2)9&B)GxCXM|Tr(_J!)*s3W|s|B*JKUf4iH)jd=MFO`q z(jl{dE%I_$KwmfxHIi0@P6$s}jek#I6E%eDWa3;-guiSqOp+M{E2B8~@88cCFMp0& z*jXk+-oc50^dXD%5icyi_WdST4@aTI7}21E_{BRE=Mx1nMA^~$oS6qSHohA zl5HmjyHD|XSUjv--**bE%;FBj3=I0gTvav+5{#F_T*~dISS?QEY-4;;8 zIQqS8?wTS3S_$OM8ev-o89DJdH^`j+B@cTX=c_t6-;R0Lt&OHG#Yx}(@e?JsF*<+J z<*L?UBmMv5T6{tW4tG0gYpS%Z3-i^%ci!rs-TG?yc+v%>IQ|>id@KQI0u1U3pufS5 zHI6N->ZAgz(~h?6V-;kpLpOC%ng|?`w)9Xa1F*^(=1x=YU&0xeX|ip!1-%@(+>J*q zfHBK1I|7@Mf;9Jm(;~YQ$`i0ISfQbIn`h-R58uFKY<`c14kwo-Qc(yN=I4KBrXrO! zeb=W(Lr-7RCFf94QPCgu=kUb+wD-iR@bZNIJ^LQ)xqqR0zxab|H8)3n^vPp#yTW`f z;FFT}+a-oS5Jj~>D610%m%g-S2+dUks&9r(GCcE`H5Sm8xo;>lAnP?EP`nntL}VPI z7nB7BwL_1Fb@g8~{Cb&izpCpeADz$t1WVLlE?5!8tMuXzO|F$NJ-o2>9d5rx`AN|v zXVa``Y5UDRIlIGw-$~XfPA`}w>lDl7&W<)`8ITlPb;dLw32!das61$59_h9OzQV!H>= z{R}@AC^#WZENXIc0c{bmQmlR$YfjHR4GaCPW~=^s+W~Tk{Y~o=f$kPqEiulC<8KX* z?HK2n`jL~i$qoC z&ji}W!nDmhX@2EBAQ~DPz`nh)zJB1W?J=MPFFHT#{gP>uR`u~sIu0Rm)c{PckHO|! zt(lTWUO6ElF0KPJ5;z8MY@m!+rOLi&?YbOk;Xe+KxH~7eSRHFdKfO;U)lAov(bazt zA`s2IKqp1{Mb_@o!zssmY$8Dlv0;=Qx1O6#zy1U-Q9#w;74#G|JFllUU)5(H`h6g% zM1>HNxU+;QjrU3F8yRI1_ucZ30J#TS#PF4}Ul!7*FM>UX7;Ktqp`}tAT&6o!)7)`C z#QwJpcnb_v)ZIULj)@E}rZ8UST~et#c>mcxcv$pEw$B+qPPAZh=)6qYcj+Ay94-&MP@e~=(X}h9W zj~*(Cy`^$GxavV~Xy$8%jAL-3h(~AUO&&d=m=ZaBN328l$Laa#sp9d6ZfgUH(C=Sj zgg^XJAl@Ovs6^6_k$cFncHI%+uPnX{ii6d9^yB_HJ-rm|0trpMwGTuvF&P7Q-Q3?b zOdGrY{C_+cn1iG1yV6AUUJ>^#T6z*KUp5C~yMwH0PfuA$l2IE-s^gw*LEO|KvxgxF zB?FSJnY|nwxS79q+ILzEf$9d(5T&G~INUK}REQ6OG6;-Lex*R>=Nqo9P8Kvb7XSb~ z_sQ2`RsKG5GS?^A=tQyvE1SKyRJY!Te@(>K&8J)cQeqYGN0!MPpEA@Xp?>)<$CGt<>ijgUBrJ;(_n zC8QX6;RijUK8Miee&RS(ZkinQ8%XTy)JG^O9GTm&RY8x&i25z{OsOkP&l_^@jgHH~ z{WpJl|HlIU<^tc~9Ol909OAD@UAL;byu_~zJEk6+54lUdvGRULwl2>HBb6~lyuYc; zW^&+h+zH)$W5pivl*B>g<$G-?f9#745YmpXHG;7=%xqVGC76jZ&x6#&=SMzSbH#|t zE`QL`1;zY{;Xy!HRM( zeZ!(CyWE?|=I0i@rin@1pCzvL#tRQ>4)F-~&`Hs+)Ul>s^Uv?{q5I?>LTR-;_?grv zK;6CB(%33VGsx|Q-Oz7n`>Iv+vN5HFDR>$iPn(D055Ig7Rqe-8*4(|vjAg7r8dW~~ z=`RiemJq-!E|X*{%7ik>iaWPxA$FS%UgpdDBN1z9iX`C|`N0uOul|@noR!js~Wb&ASGUpy?n}`JOb824fH+nKrZ{5_mjjBP1=XX@rdMiJ=E~LA)|N*AQ=$ zr7R!qChqQ;*Zp@Gy)eFs_^Kye6KV9k(YB2y5Ps2B4*r#?Gp!kcl`I{%Zf-$05pNG= z409PvouBExXW`L1zuqVOuK1J3HD23ob1^A_=5ZdqG);K@zDgeU1H6^NUr{0ph@}F= z!P`=Wx3wYcTKe>Q!{Ug?rV>0xt&qU6F}4sW8_Qn~7#qC(&5-_b8dkpZ8XbVyr_d7c z|8B|?hLdYVsrA?vx=!=U{3iGy#ksW$q#{AOdV1`6N0WY7=^vM@_PEeJYDPy#EyoXO zBVi*)5A8?P;YD?jwryWUgwo^34QD~`-}>9#1KY1Lk9x5hpbYE!v757rt*>8^%Fcx) zMSi6RvoT%J34A?ub-=G2QP@I682M))bC^coehhb&WuxZ3%na2^Mca49yst%{Ne8Tz zyImkho;$oZeM(*Yxc^F zzy^Yh;S73ihvuba2p1*_Lr72;f&z_m$HDHK(}2U*ZZ~q*fRtP+*y?y=J zg}V(&6l7}At)T7Ydx!_t!#5Q3h7T05HM>Aj7@i!J{7mp8i1;@-2q>5pY8Kz7Inb-| zpnmNWhF!R|VzHP-*(5qVwR{XP2LZVIM2Xfgt^htjE%~-uH+aBWUE#nJ%Ugf7;G8&` z&^47-uC_?&z(C2$fB>){EV^@`R@ei}@t9 z%gc|PI$bzl9F6?~O25*)u8S{TArz?vH<-x97z`nG_M6d+l1Mg+knXty8B#zAv$VXDKvM<)lWf{m zrVjVLw||{ZRb!=rp3HD;XUoeUfi!dktfpEp>uq#7tEiMzp%V00mJQB*1+s?@j*i|= zx7eea$yo8u=|ca!lWbmlU3OS}9p$1Ji<`3bT(<;6!$SXo{++|)*{g(tq24(yt`GE~ z1SE!S_S~JPzk?(UJ9-{d9gAE|OinIo zaS07T8|`KcpogqUb{wx9KBD86p)Cf|D7J`UpMzjLN?7Z8Z5W;2{`FIA;Gxy z{K1OR*0LDR2^G2lCalox<}Y$B06-RRJUKZD=XPOZQKKlvGA~RK&vn3Mz@nxzoFPGE zr9j>AMf(N@&ZSlTg2-;eiy9mC2_pcVSGsLlboM#&Erpb#mIYk}CUD}EW=2kwjBu!k zWu@Y!p74+$BE2QD@rjM1GV;BR~%uYVRG<3BAOe!jek_QM_|$# zlQRE!`2b_7tp3d#g>&~*G}o!2OsG{(UY>GyI?mv+Ojy3Kh)7v}#{zp?s6_Fn0@xC% zR+FteQ^cU9$-!Z$V z*JgGP0$VdU?Tp2I1!1(^lRzgz6j>B$$f3m~Bc|!C{mSq zchkhotO9G50Dv7%?qRXl4PHLodJE_ZG(xVI^!Q9$v!9o~*X6 zDTzW(2m@m_D$6(;E~|a$_9B4QRvHczB!u-Jj!_6CCsUi022fXdhg(7E-&5L-$tx?j z_gNF=iN0hfb8BtJC@k_^pYu|~5DlB{_2FhaV@yl42eQAF(u`uh5Cs(2mCU`RX^MEUgl!2&@VPKLxYfk+r{i_MBZ z8wqE;jp4S^;@7!3*{_W*iR1`5G=6O#T)3xtEF9|@kGM)m4*&_D51dk=pMDBlNmA4_ z*Lt2&$`W7oxo>nvB0e$;5GH@*nXbtBpvCwScm|(ZZxd5UGBNc{XMN*71QEPVmOqvM z#m_Gyz-xW5_Pf&I&B^DHk&ywA7oZ6{X&$v+ zAOYf>Th;@ZGji9pwVQo`ujJ@V^z?FVy~86_I=2c3ux&ev<*!UgWYJ<`aJ11k%MLBH zv_gr?j~sTtd%|)MNFQ_7C^UvCaj+tG@*|oqC8WW^=;izRQgs<%DCF8E{-1EXs`@n^i2z#|PCD8s~f3Jg}uhWs>_{N67!*q3ZEy21w zYGKyaBz-BHhEr4556xCj=r>skvTndU{srqx1W})|q88Kx1KIYs@Y8^jQ-6!R?rn9E zmt4d;NNH_|ncf8`lp3O;XXse>_e$H%fpp zQt3;z?d*#ee#>$9xH<>wJW$hED_oi&GL_iV`4eg?e5f+_Y)Z1R*5fYDQ#^DN2IOkY zYG>!;aTXVJw(aoJad0hG@6?N&p2_hli^2pzBr!!%X&7Jj3VV_SZ$W$ zLJX`C)m*J@9C39}1d_3Kel`MzuE5{N$#XZaJi;*C z^z=`^1E0`h0qRmzaM1e?#NckzySclGLIem0ced}X8-WKg4?Pbxe=?#s5d+9zaEK|* z{MoaXEK_1>qCWXEK;%LCoo{d;@Uw^kx_ut$y<@IaN4}*h64vE%lqC~3bzYO5wxu^m z@b}q?@IP;29`uy(TOZu2;5NTJKX%*g=aHGr1fU-dfSMs_Y5Cox2#H{33dA7TT;_9M zl;#dmT0mNIhHj^Gi|2FAD)@H3Di1Zo02K39H36N}D=a|7e2rY~7w_}RGz_8Ed%?>j ze8aU~akAfE*CU5xA;5LV;h9xkTumKWPH3otuTc?EeCTAsC2C6kwJ2 z53%M1_Kyfsd&8CT>ma5?GAq;!?s2T4AovsX%|v36usbsRe;4SRr9%)%Jk-T~)e2nX z)i0t#_k{38uLoHl4M|861~GlU$;lJ-v5>nSJi%Z<4x&j^6iNic0fycuAOL|C>I(=4 zZq5iWqiiU$n-35eQwvof@f>L?!J+ z^I|}!vW9B|^tH)Y(`L-{Q}jMv-gmuMx23y6{3M97=3V*aEEBOv~Vgtd}HnSQ2P7rKL4-_qaF1m)xTZY~)gyKMfbvIp@|&~_IZ8ri8gYn8R-UX9Y-GNF z>ViW|1dACo1D%g2`Npy&`MTUx@OYv04;3@fvgJ1ssUAA$<9?HP+F)o&0tJ2OuSO&}K zX2vl!#iz8iuYNlFr`@IOz{JI+E=!X7)p9qrq;ZVP>~kE3JLbOR+S+5Oc;bS%xa*R} zUa@f6{_Q%}JNzpK*UzL)qLdh!Le4N{m_^x3FxZDd02mp^heWTR<|l)5ir5P2fraO` zi(gdf1~z!FNk9yCHyB93RVSvJ7Jrzp(n0uhdnQs~Rq7rOGuh(@nIR<+5HlWml=`xZ zUI>!j>JnZF-?+uGGn$OOE55IekKiUAMT#-M*pg+sB9vISfnO#1u-xYi9>Z^mTDMCe5x)gmtfMRvdufGow z;vhgKAyW8!`;`rrTh~M$`xq`c{syv=R}@xgOJm#++(y^_JI8Zz$&&tGc<(_JC%p8> zZQgeq)$u*sb=y4$n;3*MyvFrP8a(bFlrNiML#DCONw1x3TUquBUh9LznQ$ zZ%)q14gD@Pt|!bnGpZTAx3}5+`&Fs&4ot*>A!;zsFcNTbpu#Cvo{Pl3R+p2D@W!@U zqce*@t$q+p%9S$OB-9?EcvJyNs;;J}B0@w^^`o}By#0nL<2d7X77pDWO;)C&yiC}o z7|>bYJbW)yY?de!h}|@7rGd{rQ*%pR+^0Z*m(b%D7X7o26bF<-wUagAEl)uRf)2^j zOnq*B77$_($ZzOvq**_H@*)eZX=CDr$F$@zSm@I_yP{d5e^cajdNG$40)=O`3GS}M zV(+|qmeYvwID6wHP5hPp;C~2&>{~?ZazT4&F5S?c8AaPa#z~s#$i6`Kqq?=kJgY zq(bZK?*Z``T(?E%c|56V2UL@^=F_Jy`a}pRqb5>|fOG8jnTznka=!)D--*>awB3jH zbF24w1^?6Rpy5z6O2Z=z!elY>zI$W8OXKNR651coIzvdFJinT^I>?ct!CA*tr47lv zX+^uI!DHRsq^)NKfKi#B-KIR$sKGHc_7^b{cwKDR;{c*XdOKGVbGVjOy~UEh!7;$s z7v=fPPCvY*LfF3_I~H#K<+fxcvDJ{inOTAZPKXUFrIphBlM(A$s`Ag(yO^iw=p_`{ zp{i2m@6esZsV|@H1J80R6@7As$;+==XXa*#_s2Ele=F-80_~faN8%hX0pgCm8Ff8o zwJ7I&UV>A?%k59wlR2_XyF$D0$bQqQZ~4X5okc>C4m(!tzcU0Hjv;vIRu3ccOo(84 z>l$StYxe9LsG|Jk&KPdNKqmqC-k2(%-f8S@9l=j*VTNNj6h+8?2gQDYp|8ngQqai_ z3J2Y>-=Z3qZ{NI%sVQ|dvv4JgQL zg6aL+sQO%6-3dMiUR6obK}~)Ogx21|-Z^6*_b9!M{;3tV3$12h#`z(#Fj4EYGMEJ1 zi!^!gN!V)}G(BA8BT#pw0tvpfUZ@_bfd+-;aNv>z2%J)UuZ4@ zd{NzwnYa-F#n)Vsu)?W5HF)KRC<2;NGxW$Ph0@RlXdZwLqbNFtY<-ACtNnz87raE? zq|kc!4L8K#Q0yO!E9Hq2)zs9e?+eO~u%cRQa0Ir4(RAKAy%cU#?;s4KAd1o?W0fP8 zhZPS}+X1cFvKQU5(<;?Q|4$c!{o&6Bql6g&gs%60{Zii-xb>GJ>gESn_r-yVgD(20 zlatftnY)l2ip!R~12~hZ<%p3vUGG4=J1;FJ(rCV1#hky*%+d)8qEmS3Q<UD7 z4e4u$47g^B;k9Mi2A|PB|MT~$Szz9XO!ir+VU7R_=Jj>=6{Xuz_>|8{)HP*t&kyu@ z3_uN4OcaKTG)--Aga5VffY8*q6TBvI<(t(eU7p-L9#jJv3vS@A|C)|Gj4=`|mQt|GM2s-+ZWw?}Xv^k&}`-a1!ixac`B!cY8O=!Bo{A zs>tEsy%w4wM2z$=3EY0WMb^Z$Gva==KK}wLlER7G4XTF$*p{?OuQz7&NvI zG8y4T_4QOge$>p^>URaPXWV<-?wL8MipL-=D(qT*a25r=XlFco-*AUlSWa)h_;p-c zE8u+6W$|dPX`#@f+9ka)?e=_Cc}F7KapN7f53Vf4FpR@>%EMEBYmZDnVb8RqOsd`a zogWm(gS}6qSMk&E&gK7MdD6;H(Xij@FDCr_u$qB@Nnqy~PEV%S$RjJA7`$9D3^uTQK$9 zECN{(;maEvQ@wii>gfVtL>_Is!mUUb_(nd141R{q)#}W%X_~TmA{&!A9FJcYZ2Fn0nv0yI7KmrRQD|YhpkQ zUR|CyRNwdAvDD4t*xAbJvRn<_q?p!>tbiw-DCb=@2mCY>eYO(+IVWE6zquhKkND?b3$U0Cm+eup!AB*?{SD2Nh1)*Sh$sbrJSR#GX%8So6@;+ zoKR$HQ$Tu}xjX#x+frF=&HQ=4)y#)q`JF{wjq6$;=Ca)TQAWd=WLA9_b2a+lYNEN5 zB2A3A*#2dx^kL#q8_v^uLV3uu8!V}`JpRp}xkz}b9#UsY!IN9B%x7Q^sBj4J<gMB_1H~$FE^++Y{O%l8_(nHadF#jJlEf3-HSxfY+rBe z>vN|?&jY)TrOl=VS8$K&zX=RUM<5x1LG@I&ZP%`)U1s72)8aOy922&?-IDt z*Z`8sGS*eNbC=fboN z42tc|u-Mb-_S)XBJi}m!C^u`<9|kJ!0XxU0Z&Rx9cfhm1`MX9B|;f-D6a5;aAZ;ZnI(znJC@XZ_IjZ?lmNF zfy#_AaqA#sefR+9_}U-c`=^UrBonUP0fEEBtV*`5X2O(f^7{k2xCiEk_HxmRO=8dK zTJxm!%=C)Sstex8n1mU|(l;8zN7Mk8s-&j2B8OoT(rS4(62%iT%K}(Y+QDi`iEclxvISs)xxH2hzw^ya&ycn zU<}~gyLZn)OUo`@^<_?n|1rXxlm_U@pZ|WkEd@wC`N&qcD8*8lZw@zHUdtL~zWG%m z4uiZr%j!r=qd(`zx)wF*2vln;m#KS?u4K0>l%Byo2GamEbdj+1$KEaqM2M9(HgYkB z5Tp}KSpZGfWVXC9`Y|4iNV?H&Aptm!J^K9e+pv|;ynQ6>aUMJh81TftP#4o`GHVn} zk_PHV*IKEIO{3)sWs#9 z!d3aWt1;NoE4V9gvwN#MOYfv*oLO2tiTF%ML>2SPHGr}=IohXjSfVo=QX6-)Xdm2$ z>9yXWq3wUpXDT^fl!`CY`{O;iDojx?$-hC3$#R_*bWN?%f+PPZLzounKMK z=5A%!WVv1)vCO*(OTUW7ouuubUy63a?O^P={Nt`VTiutCJev~09-~|4L16{7XVx^6x%O3A$)Z_=`Bjz9?rhgw5@ZHO!-=H~f_FMs_D*!&*4d1RyCxyyKZHS+G$eR#O>r*Vgd z>5=W+QwhoIJhA6JpeVnwAEd(8g#5D}v&py^3!Y9hAQxD9HeA4FAKzKlY>;`cZ5F`nGWhIBNI({qRZs6)40@fGW z(8qBjPK^}DT0{u2+=53y%@zT+aZ>-VBarpcR>&`9rmfi_Nci3zunH%C0kjF|Kqf1% z7J$zae8k`)KdNCA1W>#L08V=6Tvxx`K;8kMj$bjs?0kk%D>@*$+ZDWPex|P zOgqgE@0*~RT)uD0G-`}iYH;hr^9d-w1>Z!tr7IvIt)qH^WjnECb>-f z+kZ4Fe$SSn2!$C@iQwh3_dGmp8Qq(~Z83pg`{O$bd;!chidX*cydkY|1HTs^6v>PC zfgKjx+k2(AoM4RSBFJ9swf&voJ6BqSq7uYxCj?I7S5(9N-X<5hMolEj1~XGZR%2P>bfz9}galjX8F~5Je<6XqEP# z8ZwkU45+ne#3EX&spgKS%vvk{FGWf#GTklcHsg81mYRpe6edR7p3h>Vf!oCWZ_zwx z`#-qA3vS*wycr?DPZa1< zZT41%#C*#e@?47}`N4w=k;O<0LpGP7Lb`z=2tneH&y_c2AGsQR@=!xbN&4y2dZ}mL zM?|{%??*9;HrihG+TV!S`_bvcB-a`6qt*uy(Hc{y)dS}2zsE8o1qBIFH(`Qsg1Dp}sXB5(ch zSPf=h!eloHtXrO<9sXcv++DA@e(DW9_DSx3$ZHY)C#;-jt@qIo<4)7;)#MP>p1Thq zj6r-jSM+}c9u2Io>~MVDTefT8%M;%Xm2HMoJrBLebMwhmf5IuQ#->34nR#7Jz8xWiGwT^Y#jSGR_`Hz^t^#!=; zWQv^bUj*$p7H5d516?(1Ow@Nf*>OfP#^9mj22$<%F`S{U?CFv9%%c%39|I1Gcs6^R z+^%8DG0H9)pSkDNfgrAl@fXg&CD@M-eD5TypOj5VkIp^FjU4%ObnErqPgl4&Cjq0c zPv#qV*E7?tFabT6-^+~ilpCFLha`AjEti=dp#)qiInnz{zNB%RRC~KnM#63((|J~% zn0mgPAL1#xyX(Z!C+Bp~WeW#Zg+Z`Kh0@ZGaylG`E^BIQwM}CF%%+!d=^wu;Drz{- z%_V2-%fjr3IWb)PA;94D33$HHe#~h$5!~CzD37V)qsXC)KF(W4R~C2n$u@EMK+C?l z&@k;$xU|o~55_yZ@5|!_U0&v7x5kDTO2-;LzT^S2t}Ay!h7%0q(qL0qpuIkVP zkJ@9#vk1kVf86?^^8I+zJMlVnd~xTyA~+IR{=6 z$I2>=u0Df*gDOR#d_2f#-PwBGJS-N_jL@q!I$VZ3&$pJz!`9Xi$OHU-*mkE>V2w9# z&=uEr(_>yG)Pd~}lew9Qx($|m1IDO;#BZ_|X!-HJ%@xwXUVMxg0 zqNPiLGn9c8;it`8$Nev;lM6KUedCg&J^Lc}?)?sl-V0$ORGm_`OL=)2J-#E=$d;X` zurYtOUx$9{5v@PjR%YARpFytwe7=K$9J^1X3QZQK{P4CGhJg?QksmC`jOO!?+#C$T z3LvWQS1hjJ*@5y{niPwUSscCRF#8K&I`%vq`_phovAqCEpMf6VQ2U9Kl#XYahAN$(%?+){SxhbM>Hc=SOeD z>)K}L)MlyuUn2v+vXu`+F62(wG)De+*;;{!0p+T=l}i%)0UEOgXO~OZ0Tcp~0c>d; zeYGAO{w!y!04Imgc4xfTE-EBA9JX*HVA%0HVZ*0>#^c(xBeGQrQ@u${45d}N!LWSZ z4(V3e>7^~MyijBWiRNua$>^AX9%43DP>8}U`aauq_nWLEFNp*~R(7_Yg_RZiL%O}y zy9gZ+*g?U-cnd6J{`|>u_=jX+IT99%;4k|0y5}|xQ@6|kLD>GQ-mlT-6O^vyu~5J& zyY@!iKFhS-S?u{e?||5Cq}y3FakE}p6Xe?ja3abIdAGEV?Z1O~^KFgxH~nbivo%+0 zr=ri+_4^VGt3~rB9Xs#vW-tf;>Xh1-Gz?qz@glM|JTzmND3x!ye>*VY3!G4+bCoOu z{w_e-ssS$YwBXjT;Jtej1?>Uiz#O+Im~quKAtAvSR$5V^hu+)^M6b5k^@V@ly+hCl zD%*9bbWse!5M$%48xK4DqZzm#E@fh}HQ7%(R z>BO6Z7v1(XW3m;D=kvIkn;h?ukjsv%vkm^oV@3LD3__0G^aA&WqfI`(y_xH!kHJts z*3mv6C@lLA9?y~C=UKKS4=b&znyzFu-dw~^1goiXbC&%B1B}3E5)_#;%Aeq98P?j= z5!b3a=v961kWGnH0s;}Ll(KTMl3jS05~=LPtL(P=qs43L+rV-QC^Xmvhc{|1&pc7@1*a^cw}R0B^gM~>AxqS*%9$qBMt@t7y!9@SHPINwXPIa!V7;gjaxDxs%c3x<_|cxX`g zEmtZ!DAonLt8D%QXg5?#)#wazQ2_b)2XJ)!CP6jKl9YtHb4^WjeSJQF+%1odjxb0U z!sXYcBZu@h8;PBS4@q{QZth=}#oig7I$Nu)R403Z6Wj}UqxCMUB=&`R*v5*)F5V%e zD)e;rlOCcF$jP}dy3thqKG&ZRM8j{TQ*%MKxA`m0byjCQ?bYeh|E@*wF9@;-;@Vg} z_w3=DXjt@#05b7PQ8>`(%9nclA`O6&gMwyc)}(_;V6Gf(1>xV!odj@P#(Q|AOY_f2&c1LSZBUxLIYXW0jV*|SnOb^8M zwSVJ-eii@F^2Sbcn;OgXMWz`e7}ks7<9^pYpxp?sen-IN`a$KLwUx{ytNV>I2Tkf?Jt=?83##?@9yXjz8rWr-8TN zqnIBa`%4uLIT?>&$=M5|VU?COc1m^$ix@r~>bZWrYN;*zKRDl!z*CKVrBtNsKTP7e z#|nJ%wX{5;0@hk#|24ZA6ab~j3gn0|Np3qV-?ZHHHG3r}70>iE3Afcl2d^%C+(RNe zDO3LVvHTzj3B=ITvayMgvaw0MBsZjUIMPqQDLqdQX>KY2L}rw+nDCZ+TTTPB1s9PY zkttnlajz66vnT!!bAfHNclnx7Z(o6%x9A>jDsvjW4Sf4-uhDk)g?&gC-3?jj8mgFk=RlnSjrK}j_&7nvI7avH)& z0e}>sfwgRgc|-&w{0wADDzblp1qNHvWZjPQe;iCx?RB-a%T_T&N^i^ZpW3Mx3Gx+B zf?69#>Y$*|zMbBnAULCmGUd3mG$3P8SVyCjYeFnPN)K@nlm)_W7!?89nvx1+Tmf%> zOG3*LmMmiVAkzjd6by{DAAq!PizfW}hTrGtbRCMOe#jtWLjg$prSru7j=9e9{ArhC z?nPE*&e9}eA!1AOo&p9W9|I2xhRK7xt|vDYuL}#`{CyD-J6|BC^7~8F%g6gln-Vhl z|Jii6gM%5Ga*^HCPMo>m!{fquk6j!VMytSIi*-|Acrx#5G^VOE7 zq2KTRttfksVH-Et!CtHfskpZG?!AeO^F4V&HP6PyRMK3)pJ`hc} zxrBG^%AIG!HTk+fSb?PHR^{{cAFqLP!OzQI$p*vs==#z9d*8Bt3;Ijk?%Ub}C(if3 zfBm0HR^O9^x|1PWspt0UGziOH&5bKQ@deZXPb+_};ghQWh|gZSUsNE11%@%umYXY? zRs&m}tG(Lcv%s3SVCUevFqW>l!hJ#_J(pTbd}}dE34UL+bmzaUXV8ZlfN3){CT21K zI%apcz^0-i!r*F3eOUCyYMBij56rnIZepIV$Q*{TF^mTi=>Uo~vJ#32tSn6L)ipF? zW3*d&}ZeXn$gm{|yneW=tHJxSsxy#wR=cpGLI z>t)&=E5jqY(o?12jQ)+;dI}#%1*m0;qO*K&Nhdk4Zzr5K4z}@S&{skN#iD?ag_G%% zWL`kuooaQjjm8zi$b0cpUE(_h91#+!STJo69wl$bH*6sp>I9dlBruD4fnl#V0o+Rr zF}sU@z}H5Le-P|G_1>^V1y`oj!0B~aFvMPwrgIHk(n*9r+@MyBPkWt}p_)yksh4f{ za5sa`nad&X&uP?A0D%Gua1S{8K@W|{zkO``(1%i8=93prGRm_wLi{5JYEllM+>;Ws=s-v_TW=LyYZ&87vU=MKJi8((ehwnoU#c`?JdIG(i|_8?pL zdkh0|!P(ZIHwd4Pm$WYHThPVxB0E=89+ATA!_te$(4B$kNvQk1W(MD)z^(S#@Ir)v zf8U&;Rx(SqV0*-FFhhrK)K7kIMpygv|Bg9{??_;g$USquJZKo=N67V^3K1dn(P!GN zQR9PqTpJ$NpK99N`i<$hByJ)}Zleth=F7}phF!k}#l?q9j4JF8fWBC$qaUV)s}&{$ zKur*-^TaKP_1D1vgvUxQjQaE9PhizbbZ7un@aJtxbPxoi%~;GDgn?ahcB5OGBa(r+ zm`(NI&U{OQ3xcxxWMpqItp+k_R1}A$R(j2=Fy-g@nwq`!8BGTWKlk3n8A5g5&MgN$ z-D7T++gMYjWg=g`^uVaiV&g%eXIK7Qo=ewwe_XM_3^d1=fy&IY2hvZnrhlS7TYJ0t zs`}>V;9&RVBFIr~sJEFfIq;2|QIaduFu~Lo3eXq~CU01IrmJyX_LrZiL|cE}bs-Qh z#)KE2ES*tSTbHe4|2U56RB z!x{f?^eVVXvb@2W_AN#|WusznxQ`*BU2Q$%CyH^AMq@Y8qiO-)6M$#5?KPx8;Es`6%`5?iqew z2qsx9ianwU{9)126TT;}=i2$u0};^wydov{1EqM0=ROR_GoBAfnn>6}pPWc~AcP8y z{U*<4%{zAnD`TC_Igz8+wgoS*eu|tS$#-_2^+O|~{^o>Y(^gQLz_-M$agN8CKzSMZ z@6{jH(nSxtWXh4ol2UT*W?i~3b|V^LVD*(=J#&chI&8bF0wmIT5)d74i(@9oDEg0- zHati)$UtjZZIAA!kb!19zo3+t0F`c3_gNgff|gFH4m~HsSalsO261QK4X)GN= z^)(Ngr#}$zSPh=bwcfEsrg9EzmGpW1&*NqI={^_LNj~o{ym}aFvG)i()r?Bo@xNj? zU$O72c+JEFxzsp;$bjPlNnIjK3lR#TE7&s}WnL7M zM@}Fp3L9lV1F-SRx4#ACTwEG2$xTdt{Om8@evmqiWX5=tx-oHnqQDr>*2_3|ly}ZGnK5KuZ-f8v z46O&kqu)49_55Vk+-cw_Luw8gjS#rtrz`X#px(V-Pi|6iuY zNRER96vN^~1I?W|$+HA;a9!$C9Dh2OeNHsrs3MsNHEe%oYap95DvWyr#MSZTE5`3< z+kaa&C>fLfJ5K%~e6#Fq@%>6Rx_>Ru#dz+p#5j!{OO4(TLRVh9+LQ^nIQMWf6i=wC zz+-gsRtW@?kTB|aReV=-YlU2T1qT}^HBnWuP{SHO3|iW&v2)Qav7w28ys|G|SGyQ1bAfLy4Ftc)*lHRW;E2_5@5z#r`~rKrT|S zh4*TgiD%*VkU*}RiO_dYl+=AT_|=nz(kO5`$o@WLd9KMZE+Zq_%jDiiV?Ok6l4qtH zhdQN6H=+otgm~tUz;W;QV>j47=iIjA^sPYf!KFNZX_$D+N|B0F7)ADDD*yBTO+V7d zHE38Et4qVj87x6CX-uu6@FtVI5eukl5J$vV7N*957Ew(~0}%NebiRb`Zs{GUndd^{ zU;Ni`J_GI67CEG2?F2$sTNH^focki!ZMz%mSUDn8&vSgXlsFzelNAfM0;*Eo4n1+J0vcL2*hj}h;yqh$$| zADO}pcYcWHXk&UfP7+a<2ql7Nd8zF7qdDRq4Wl$Nx=1EY+wak&ncJ{&Q?2_kAsX0xP);?gq{5hdPU>*{A&OTrn5~=+C;iAqj!DyTf(f6= z-}Rfr2;>kwKOkR{fB^Lj^FTUFUj~Gn*#kHk#X8!eCnnPMPb6qvH4M+qc*-D7yf=M(HcMcO=_vnX*wH5~0gA*E) zbKQFmHW1%eGFMeT`s#c^xztcsyZMZwl<(pAm_)hIz~ewLXjb1yQr}yJvV^$>MLZ#a zk+Y$(Yv*raj0>#A@IPFEKp>>9??&IA&B-BW>IFuEa3{PBn@a&RI~6yp4Hec#>_+k+tFZ$N|k&cJ<*?*`!2ykP|w?}+WfHdP}Z%Rado}A zvR{KnKslZ7x#t#6cCbA4SK1!5#2N8jzufmp}t{ zmk4}Xs_l;8RFQ19`W63dK+J9f7;sp)nyw6ir+M3`jABpnD?>N_?%jZG7R5^p=_lE= z66jMq8YCqppW;cO14*7O`!9W?Q>AF_lP72>^+zLyjlTEO@cf!Fy0E>TB%FFYqWHWL z08y&&`8$CwA>36rxwFV63@0fgqjEqhe0Hx~=8<=}mMS*!no62XWQDz-k`L6S`KkHq zq2+9yU0wDEO`D@k$xK`}3qZpC`-3LYzc`5A6HV;L0Vn(-fa44F-ipA*P4loxYd=SZ z2a&(gUJV%4mLKHqsxC-4kd=MfA^0iUD?dJ-j)C2qPNfeV0UU?b{Qe9j53kOOe{aP7 zrHEOk3CK^+87#mQLZfyA5gu)DB=b7c6%+3rBXU?6nbcX4dNrl-QiYUe(4Jb(PhAr# zCBX>D;oiHJx*A~1Q&Zy<8N0DD@ruvkjgHZ@=$0Kq4j0<}mFY*=x z*Ofe+2rEZ+>MCY(H;Xxp!{HY%W9RV64#U1d}6GbKd8G_)lbalZdy-Y?tCv?|_#7$Re)qm<; z?h2kUfts9e6a0z~ajl3TC5J6ZN>a5XzXVfIh3jZYEjkXREbXaRZOOjC{t;Jjja8iH>pxN)a))Qob2A z=i4z01`=U#Ym9PlU<<$R8`g`d#}+Y$Z$X*)h)mWg+6_T!d>G<6%sT#R`^Ns3S;koq zaXK6R=4)j;vYEg+O-JW#<+PdMRdo7RWjCt$c8BGrYH53rX3ttxJzTYG8dzk&+h83p znT*^;l2>|{boYeWBRYIDK0bcbG~U0>!>+~gIh(uioG`L&HD1aT1Nl>7H5ASLACC21 z75qWkRO2tMDW4UAS%eQSFw1^2R@%@+!N_wxT!8qNJvmH(uX$kr#b4STgx3azA{2jU z6SREpFNsPWwDYW;?I&qR6Zumxq=x*P*hMwKKCSY7^Z_!`Y}51@CADhm^&J`0!HHth z@6&kvUR540Qc4edzb!}38}p%;^}V;2KyYz;)2(i4j7Yws)UQ^x_lk9`Um*K&Q*Viv zklD9v_Qu-$P00N+Qe@kn(yk8QjpK2)u$%K8oOVHX4k8b8w;IA*qp84-?|Cf;V?x2p zoqtu|)Wcz5eAygIw^AOlqYN2gN-iCnO_9$~6!F4zoyL3=)iwd^Q;pnp&K?0!pPp5B z8~oo0!WI{3dS9DO7E=IP+LO_t-ypEXEi)?u)Q|?cgnwMV{(UH7PlLwngLtfdKX+l_ zcS8ccH5qk`f&6SEq`quW8g@%CoItv9!KJU&rxJ@fU($_sAguLrFTkuQpfzC7z7MWP zBsX;otci~*gpAtEl%r?ijebE8Xo>+Q1YT^e#HQ-16ry3&7fSgK%Ga7sD6fnU>r;AY z8h-KU0UJjb6O&SymDfvg;>3bU;lEie_utFBL=;ME!e~o!mZ+;iDKckUy&bWWx$V%? z@3d~1q0iBo6GtCfMd6{)Np$Edy59TArQ*@)J zF;V72ZVNwhEIr1}aIS?du6FKLUM}=HWtpz8uYYucl=|4yQAvj#lJ!FbDdkd8oFabp zs!Cz^--9DJB58 z@a*2PTpvhk-1uT;H)By)*Eq;_;rKtlSjwgMVBJ*ITDlGeoIIzzloHDd4y&z0WCNo7 z`xO@0XTOq}{#Nj;iC_!PM14j02il)~(sS^P+Axg(cOMlYcsEAac!JrcJ)h?%M8KPp znn?ygRTjGt43V`ai}4bj5+T^6#k19OOhMqFfQ^Ggt)iM5bGY;|6iESP`^|getspQx zZyH!1HdEIPM!|vb$!V^gD+acNj@M9AVr%`0+_0+bZ5VJ~1|Gon6Pjk+bbnl3CMPGY zO2Y>SWuEl>EkdtY1rMxa1RffjLto8u1#NuOxZ+0*Bt z*45PkT6O$=ENgFcVUG&z#CnqKuF^x`HOnC@2EQ8sAF#X|7Qb z!7(4vP+>X#sg>lF2Jo}lwd=(m=(V5j^Lg=q2T$1|O`#YtB6I#g8YQG^lslLa4H&NJ zGm9fq5PLmTjd(~FUgvIBDdNu-IeU9nexEZ%xJ{xDhQ?e%;~x(Erfcm+=UsQh4CMLF zvAdZR5iA)fu79uP zq3H_#@3{~>tsi>_y2<5%=Y!rJ%n#U!Q5YLiXG-WS@eUZ#xSi|@x_@!=Qw?tXCzXI$ zXQfbe&ZvKJtv}&BQX-Y9TjU>+*%CK6)p`3CUYiv_R?x!dl|%A@bCe>yYqzS5rKJFe z1YYjlp7hAnGeBX@V*aRvvQ1v)qx-3rZ5y-n`E^Ca5?zHqm0W^Jyx_$Jlq_Da48N5x z%(E<=$JG!7PRCB)0~5n>=E4HmuOT2fH%qU>hY5Vb2eqxm)**PKAZsFX=|FZ*yEp=f zy=9g0lassy1mH}K^c^|k|M=0v83>Rc_kG9soNCWKl;)6+R=}K-$l`^rZSbAA>=aEfY&=|ulfO(%GaZL*_|qQxGW)om>dmgjA-KD<#!@~E&;@)G>_(*=$whoy zoRxLbwu!=gc%TO6UGoA%mcS_zpX_kjRvIyGChQikmRmy}6Q7q$XP%vc7V0G20Q{uk zfBJYJSEFFCk}@;Pp|5;2vZD_9S-p}W`H+W#f!4|=nT`%Qi{j-ftN+iOFn(a3D_3F$$zF*rLJf~O!+1^-ez<{5sqtxH}X;|Rdas$C- z^LFmTbG{J2Cs1DXMqbxrJ*NK@j-G*`&iB(UaG74YZr_#xaI{m1?j`ZA1R@<%x!SN; zwPmjpV{a58AOr{r15)UYOZaP^Xct?P`?XJCV4RoBH!=tW57saSaHtIx0d;t6M!hIZ zUeGu6&!LPxe9C~))iw2MV%_7UwvjjfGpUj*sETTIS6;oLpb*yjb=75zAEr2(wUP}z zT0N8uiXEI!b#u6eb!)fa!%V_~<~m7_S-72TG{h35?9dWk{tv-G(f}@ThA_FgrA_%w zjgLvCM=tjt3q`$x_@`3sU;4No8(E)(_c!K#aJEKUf(O-ECYe5+A2h~1bw4FB5jZ+X zdmI7pR1c7iBR7EZx2o!m4j?1xjtagmgAa}cyoK)u6^LX?s7_mjQ1(&wB38o_9fWXiYQSybBrjvOC} z$M7Pm-4mHlF=0P?Ns`Hf78{!f>b^?>DzfvUTo zzkYSK9JZIPJYP2e5Dv)OtIT-&&TNQ?Dx_e`*_{MSUHPPy3Jae%&OzF@n?V|Pb$9MH z7dtfyp{0yOl;n3&nnk~2SotoB7~TLdRGV}7#RS4~S}IDN`8=Bu4e5NKFQ78W^uR7S zK+VCS2D3h}Jnm}V3`0ow;{|VkD_@M~bBFYLUyhY(#(kl?hhAT<|K~7mdnt(&-SOlZ z&Gv2UVU@{x?v-rrX)56~{rBlZOw(l&&^b$FgvR;VLSk_p+_Q@-Dkd(G0m^DA|AeBy zmUhQ~1hbVh{RqUlmE@;TArHI4Y%&d0{UB1#207IFx9;M>nlDqp*v=j)LERY8J|&(_ z`NM`9jupkd=Z7MaQY(`Ja>lrEqS3E_01qld4^eiHPgJxaXHymX3SGeBe3P)c7m^~z zmfMjlxlo)(BzzaEL2yEIsOdm_JzHm$f>yl|N{XeH z#Z|R6p7II!v(ET$O>SvIP-V6M+ja;ZTvG61XpAOHpFnv{%lpyqvR)w6RdzQ$`J~z* zs*Z2f^lq`I!|~s7xfh62?2oj*_4ytndK;&8MqzAMSzM2=D9E~ngB|+pTpkm6SL|qQ z7mk;z?@otVPQAd{aDWqiL0T^#>Ck}TpLhkcg_RKEx6@8b_io!C|IiY~%1H9V&C%m@ z3))pl_?c&XEHc>#2}Brwg?uRtI65U!h$3T=J`7I_eY2J3{K|vtWV2O|Gm{l;Syqlx zH$0S9)&o_Q^aCOp40yspcbh0Y%Ny%$u6nY>N2nckhb<-psahL8W!U$n$I z8>f@ke<5Y6<0hbYrD9V4n6wx=;b`3Efl-A?M$;*$?|E!h`JMHDUI1#?qU*U!LCDW@ zJQ$l?D85M?`0>kD3YAYutcy_zVI=f{sd#)19HlVj3tSj7;eZHR+Vvr`t%-ZBDi#`8 zgc#H9lJOXMA*pngd?yJ}AKi8}nRvKt!5*9TkzP?B&BBC5+@-aJKB3bdZuFrimf$4bO)b z3$#XvZVQm|JZAm<(ic1_l3PS={`&7LT%8d;Z6j{cVxYitS;5uwjW$V*h_m-fVQb&u zDVMna*uOQgM*c0P0|ldJ;E0?q55n~^E&s+2e$?^RvU&CC?VBbSSnV+zQZc7yB4@)L zOOjKvacJ!~HcFv|)N|_g#Y+xk>9Mk%gfx4Tw}~ed*`_*kqr1#b7GC^@M!SZW2TEi@ z^b|OWOhO@WFD7F9&%VdWc%7ZzYE&(I+Rba05Ne_SwyghF-_S?i$C|GvCoq4VIb$NWoTFimx}(z$MoWpG*V{c#_mUgbBI z5kk4d^zT8E>Pwm2jtYcSHnootHxGo)zdQag=clU)4`%RbHIz0>LYm2W9M+&}QwrXj zwuX;?_HiW9)z?Dl0tZqsD8#mWUNvaIn z8d~DP3FR~ycoA9DGgzbc>wBxu?PtQ+DX&r{>!_vT@LWz@T{J0A>~~<<$r+#De?jeT zOSwl2bH@5L9GA2sm{rt>$TI8!!#+9q!9vr*ohpYSN0EU|_i>1UKRjntnSF?YBIixf z`1lsKFVldO{JHgYe~nT;VqzL?ulz0lcNWb||6S^)!!C))JufP1Z3pxmOOaG%V@*`V zwY5$CIfhA!!X<^^(fM-{bQuMaiQ38bFbag#V8miSZ988?d`xYxQVQ2-lLgHqJ+Ia) zZ@YO)*GtkqHt(-!BSxt==R04Oy>#REmLlCSNhn3}ZUcAIimI$<-`%J9mzygY;XJ&` zIH*ax>?AaDovps=8kcY4rH1fK?CD1Nc03Zcs$C^myO5B*xNV*fycOdGX}rySIi8g} zN&$G!gXoDcNh#Bx3kJPWlXh{bcQFxjHQiHI4?7SCp#*d`)oIVZIo)EmKKv26yS&1r z@szjmU|Z21JM#{rDd=5yjxZG0R!Ei47^b9^2^ohDkgJf z7r44avP27X!y^X~tGAZUNEJIg$B}XTo-heS^oVJ3h{l_*yK_nSp;7p|&bMDeUw5r@ z)Qm9Py;16v!~fmn=&SkGhd6jK_rc8^)# zx4jDsr%2tnb(i(#+zaS%K`6(ttq`7Zd&bp$KD?jRD5#rn^Kh}Tmo_tfCn~BMhn#p< zxR9;x130_12}4o8J(kTA;zoI)@qIjd^YwZAozr#U6wf8boX*OZMAqO6aoN_?_sGNZ z{Gu&=cEB{i>C= z-TaY0V6wJ&d>-w*r5GPN9#=QURYz7qe58e9F3?>ovqt;R&GXL%R0Oh~$Z(db9t8zT z&eWx^-%!myHTUmq7a{>bB*^U`(5jXqMOU_CVEscoiq$;q|BeuI4}IcFv`& zMYyZ!Uu%Ser$4u^d#_=?7V2tz*I03`T!cZqt=t3d4t!C$X0!KBMH<&auKRMGv(F6; zJ5@<%33k%+Q6#4ewKLql#?-E2VOkdHpDYigOBO#kxtdxzQ0fQ_d$oh!5?_G1Bf}j>U!S!9d&49gWt#FUcNy_`1C_J*v)I&gXqEQ zUb?>T#^d{j_t)dKmWHKta?eSPgzV>ommUx-=5~2p@f<(n4^;^iF!31~6_UuxHdRo_ z#$hywDA6cD;MI!fA{4MEI%u;dhrcA*o0fD){NIU3ipVAU0SYOsYFzkcz1QYlUonraoHQ8aZs>$7~%^7wttj0D(t_VD*!T`+idy9;O*Omb+LQP2wWVJDyIndE$pscK z=D5%2)U5Iw`^>2^8m@g@vzz_rKQzPcPTw7Wsb?oXx;6;yLy#_9s!jU)U2}`GuI;xK zX7?D6R+C6t&9Q7b%62Lnfw!_PTT3fQz7@}QKQ;HxG&9XmIDB=OL3MzJDxsB3Bc*k%!+*7r;^!C&q>Waqp?%LoN}lcLtMa`>7iW8# z4R=18HI(Xnh0lfE;$uHe%5fX3+DAqcqxSViT|cPQbv7}5>@Kc`8>>?k{!Px}Bvo)D z9Mag#Pp{G$O5(+N(i|Pdw;etj%BY>uSxvc^?P7$Jg5Nle!N{wTXS7i1dx>1|a3%NQ z@W%&U;qoIpM#(f9*)Kt7IkM)VB*)L{HPP*x`LQH5<{w_&u|BgGnp*VYcNjeQeBiZC zaK~(gHd7Rr*5ah&WZU}2;Js2Jaw9$F?k810E=*`tkHAy$JB`v?=r z$tOwjwP>D$@7-Zoe=79^hUMaO|ErL}x9@b%g@U+(d(L~;6ABH_JrBvOR>iP!adK>a zy=q*#M9-q-Mq2bbje19p*CPQ;4!A~gmn%$vf2m+s^)wgR^m7K*gEx)qny0b$#xD&M zJw__#&30;Vt26J4@oKedlSVmNap_ zEDYvF$9+<_M4U%PZ#h^En`&% z!XUUtO1k&D`e=ibMc@4f9jemXlvDG@$!ea^6~$Y@Oj$`O=Tx@|AcGg?DXzfS;;ns` ze%Qn}lMA9UkA03ktqvH2WdjMDY2@FPgi&LHfxMl8B#~_%=QYk<7ZVL7OkZ)y%km)N zF)8G9&8*E-=y3PtEmHmc{pNoQqI$cA^u>666uoOslGN>t`{aVegDBq9;aA_^kUj*w zq{sP_FO6&c*|j@&)ZY@e5>=OCcK8ac@*cdXHL>kF^M@1e@fyC2<)MVP||+}gvT_{h+ka&*!jXk1E08QBT_x~yb5$OyHQHvliQ8kzOy|0hAVjn9 zY;oqB8vd(|A7~a+Jmeq4@P6o_RD(hK!iZUQ+&@Q3F=;%W-0KOuJLUh zvX9L$2Z{>`1rVRMo&4z-cRI(>7dWeb`s%= z!X+mRIdVenp7r~JO*dU;<8M2Qbd0TqY+Nw5=AE6MD^M7EmTLf{UQO#I0Yai%d9)P9 z>>Nh4l6Ap!rDt$#D^_GO>)!h`e}8Y=q!4}n^P$<}d`GHpJ!!*mB2Lo{u_MPqv)xjf z|6NJ_9#TZts>$!8g&;Z!X&cpTUYjg~kamCHt7Qah6$g)z$9H1h+*r;@*=@^lT@uLZ zVqWLgo%P1W=!Gj6`}X^0nJQfAB<%3$uC=|__CVw2`_^g#g}blTzN@2B*?KxmjOOHz zE#6jYWe=AjDp$`dJ791UQYrMPV><}HATwEeDfxfZsR}xzQ ztG-$qAKlQVrLGl)U=5X6%}Dba292SW->qX%=MBQ4jSuW)$qc9Jr4$0ui`f$fLlvzr zMiTpETQkkLLjsRp)}Nhz_HN7jh@8yiGQgi6Yn=3?Ko`@ZCoC61=-hES8)E|^%lEH} zgr9(44^wwdTtSJJN~|8dg6-?SXq!FGf7#nvn$|FN%;ckl%T8B%B9iQ_W2i0%O7{dX zi{Hw8LBAdlPoELug>oEcDgM~JR5B#`rP%{HX=%&*m@f}r1{v!gu7z8Ka<&3`pP0G2nbvwqnLYrRd2%QKt#>k z*)ELAyS+#%}(PTA(Ti|rw z8B;uW5y0=KZUNy5e5cK(EBA)tH|ku|8wmY!a-Wtwqt_Hju@=LKP95%g591{rGyA^v zkie}IpKan>TC*RM`giRHt|H6nd+h!7RF#RQ+A8bytQf@@`_2)^$9nlExB~6ivSr&b zTAhHyGOv<`{*;T~1Ki_rxzNAqvaT!rP-}DDFQL7bQgRg~UCbP>yvYi%#4aCEnVa;> z)J<+Y-s}#92@zG6Ycv==&s@xAt{2mH}9T3CoXw#AZ4fIMgMmo z6}|)|j@y(nd*6cJ=j)e=tc&g+v-z3pIpw?BeY^!Rjh|A?DMH|NOS5OMr)e50rkaT= zWm^ai%jTle}AQsPQ)PG7<3r@Q_qWCt|jH)vh zNn~bW62|shmko|$!Mktz0C|?HY8>7|v_@lI=rw;_M7el-_g9)^hRXRQGYR`&wuYXo zmz*6@$*5@wWJEuedxY4!Rq4Mz(2XYgH}5|FBPg+|xI2k> zC@QJyIte6c1S(%a`^1|O_ghn$fkzBQJN~W{PS!TNMOoWycO_|Sk;3;-Sa0<(%UH)G z%N|R-8_P~x1ui4_=7d4}_=%!=A_dCvKXEBdY3IY}4g@30%F5}@^3z{iaDCm4P^fY4 zpc?rZcF8vAy8&Xy6tNn)E8<)N8h{1A8<)NJ)stprtM9L!e@RU3x9U9XT>^U8&hpjs zgQ0Yu+&1#^GB+-s;bv>CUbQ>x0j|3i^J=z^_qM;%mv!u}vpRBoH-8WplgK=z?Kgq! zoN{EkbPmE|2DNP0yc7J&z4c4&%*an1zcPOO5f`1hEq>?TtmX4DJ`z{zOVMW`4%XHo z+O)}S-tw{|5mdvI_49hqOB=7-{RZYrbONqW6#M`%ee{e%5GcCdq_;O^%=An{IxIGT zl5Do(cHAEDG?YMe2~~c&8PQS@C z7o%kiecyIs9_Pn*$WZ$3 zB0&d7_Hm8|2#_wT>?GXylnR+ga$3d$$|XJdT`W0U3vJgUohst(QC;1tv)`Hi8Cl?i zkJsWR@nv?Cg1H+xnPmQqD6URkW>QA`qbzYn@>@ikUz;JWA+tGt=mA)W1F=ey#cn6H{em)HoT<)Vr=%VW_(Xz?VqQJ!akCWw=v6;TQ z(bTd^NdXkH_(yl@!FU`$71xnJ4W+s7@Oj6viP0d4Je?q(mj`O>-y4cAore92p8h^6 zX&=Q&$9RXu$W4t*|p*1uG|Ubwo@WSqN$B^X2OdMA2xZazmmiQ0@{tvq}Ev21t~ zUnt0X_}1?beP#3W)lfMydC)omThRHNpfn@zp^HT?W{0u^E;2!AZ0-F(?8VD}A!;~G zfOqnKa2#(*sNQDr71c9=x}^9hvN!s?=6cped>u$k`d7Z4lZ3S^vla31^&|d3;J06f zY>+5VZ2zNe;l(E2-f6U4LFH#Tpdw8HT*~Shje5(rWkUKdmkeD&nv) zTvD`p8sZatKSyy`FM6?R#N3^NK3p1`c`XPVbxpe#T4+T7VDciq{gxQk+Axf<1S9NK z41c7J>w;!Ra5{Yu2|O_B7H2oXCV1RQa^v^S&RAB>@b8j}b{Kg3u7t)^;3Tk|zB`q` zcwd~v=r;+mpzl}wOMyw~hiD}N92frKYqnPS0SUIC&QlGK>DXMp+C`@3}Csa)e zX@wq#zOA1Ee-t+E z0=S3fM!erC6Qk4%-W88LmO?e$(Jw?^KHrNX=w90mqwm(@fcDSI;dGi6HCRFtIHPEz zOJe6niM$-$3i#J5qOsy2I(=UpEwe3dcwhSdHM3)`hga z&+{!WtZF(vv}&M2mil6r)%|Z9!J_{8vX*PxW_+IOc(qF4$T%UAu$gf~>FHiQ zA;(WJ>i{!QngUx@jG43FK0akDD58f^X{=*vv`YMu6DdyZ|n0H7xjM^A|9cU(eFN9(Ak7 ztWf7a%F+#u4{Vf6jkl`HQeUSiS)fDl{m!M|?S4k~(ruQaG+ET+!uiTJL3Vn?@2wFS z6k!JNfr^rS zmmmpMOtMe4WWrbNNMj=YC7m_&1KB(R@#^2mj#5n!G022Uo_o^?|2r;R`XmT|J#>$o z^p_qhIrE;7{Ky{%N(Bym-ze+I#C~TKn>CO4ZEg>4*-i}gbh7xwbR?Czss}AxDj3sf zyNpwwS^pir&~WriJ?9p!TgNoXs`$m?$hjR$j{B+vU%q47T#p3J@;Xj*Qi~GLg=8_f z=5G4RY#N@EDsApue4W#Eq-c}1YF@vvuUR>m$n(N|Jeizw<{OoIor&(g+gzKwaxmLm zu}~y|@$H}eE2ri!?rNol$g8MBwa0u;#&>Z6Um7vp3zst=)57Mwi3-2={x6G90uXRN;?K(hp-KnHdB> z7gQ!SHuYS|dJ34X!x67Vek1R)-y2nqla~7EgiS8Az&_IHR_tybbQE@JW&fs%Sq(p! zY~(2$<&U=|L2bw58;jf!d$jsh^9_%eGq1v-T{WDW^@6{I!DPp@iz-+LJ0Ht`muIeQ zj#k@@aBBesfU1zSmk7#mcXxsJ4`xjLDeSQG#X@(ivE0hR#zmWd<=tPZ*iD(wO|GLC z5Wr~icdSSf0faV%^O54?q$2x*HKraN^*f1Xr9eiFqgwu4>6D8ByPZt>yc_~!43~qs z+$c5*@lmQwuyb?axxKFZ*kXs24g{kaF4^nsuh)g|m4Zh|jZ_1@F6YUk#0%xD8H$7^ zNUkv0>jf~z`0x7ahO-u%?yWtJ#%xMRu88ye6UErff-Z}5+qBp%Ay~qL(MK0=UD=tl zmYo4D;pXNj@u;4mYw3qQ4641_WvK7{nj(kQ`^HQC(q`P1@NeS#C7SJvil{aAtFPK@ zw?-oF)WAh7p{x6f|Jt~o%>jp&*U)}kwF~@MW1O_s)Vr|nMfu14>vCj!mB2Es2F+Dg zH#?FT6*Atb*ZAPJCZhSXwTZr5&R}{SbFGLfv=TeXg%j(q1b!(rjI7rSHXC`_GZyaU zcpTBC61S+cEvX7wcc5{hVnn=1`JXo^!#<}f5`4l;Iz>q@y)t|r?=L?xNd-2gLIj_G z&SSrIIVecgs5c-+Ml&O?6zQq8a3-ThxlN}I%k(_p-e*pPDR|u<`+~5&ueLT*%tkj_ ztw8e^v!43sdGqo4(TGV*4v-AoaEp;!gecjtzas7M-YS@C6xg_pkiuvlS|LH5_BycF zqNP*^`xT3u0gWutYi;~PWr$7DkBE=>(>P) zwUGNlf_I%v#5cGZ6{dTW9!G*flaZwmys-j2#$Pw^xJ1_kMpcUk3a!B^W%76-%;&eW z#8!MuZa-L!dGFrXgq;qmpM13}FrRrjOg7k?^_xw?@2D%th6k~4g$S7%6@N#4>kyqbwZbxK(4{Rb} z{$jPboxj|%+8cXSTX=G!6MSAhYa^IZ(!uek9D5$~xa*hZN9QfGZ$Gawu~fS8Ti)te zxSJ9k2IU1@G-ssAO7imBYgG$3^)z!+%k^+pGrag*hGJazcm!GbzsP#)fT-GTeOM4- zKww&O^FHT2zw_}Aj5F@p_u8xD zS}Ki$MKre+-fW!xBiAFSID`iA2fzlyXHCU3q>YNAvj9=NNzJ}^UOnp)7K@MlVL#Ws zlCp?wf~6XiKe|^Gc-zSLEAP2eeCH>vk~tfpM_ZE52SxH~fGh3XlqV>S{~sw{ELMgz zEQT@l#F`JU8*7gxK&!o3&zUXX&BNke^he<-kybli|6Ih)dt6k%Vn)X?TJz<~9L>q$ zRamI8_5F^Mnz4o{o%WE;d`&c|0*n9ys0G^jso0JaXFH{KqpBL1#%f!K3xxD)_R+hE z4X@KYxeAjxWTeasjF@z@P$QAmD@}60vmI&^#pLCIHsF6|GaIbuC(hHyg|;f4q$8s5 zhpPVkNI%6H9Wp*soLU&SKwekqY-R=^fM>lSUjgymT6}ZMB^nD96A@XRH5a4x6W}#m z<_Q`8CeuFF{@Zsp@Cw5VoY_Do_tOmgThutKdS+{9tN?LE+Jsuj?YH=DBwa@VBGZw8 zwH8^Oxt|J}UIa@)RAA0R==uGQ;6ZaoPgf1=jD1FhQf`2xA$IPepoq5@Yv#Paw4@|6 zL%l^_lkPXhVfibiRMQBte$d7*`xbB9-Fwx%p!JJB%URl~T;4CKC8+r+uRL zqr*#zzS@q#ujEKS8VCS2(6!ko)E(~TT~mLFJ6Uv0Mog7gw9~>QMvD9RR&_A>NayeY zI3knbt&m$14~Nk@OPU$Dj#+P2ogT*hiU;8Fv?V3C z1k&dsUXYw$;+xG5W&_mtrKtj$7cGxlB5|)~)T)thUdv$ML)TUaJ!Num_&)657~N=6X(|Xpj%0fH@o{<6{}-i|C@uy zT)Gg_&+;?M!xYXEx^EFMP_vI{1QGswLnW2U)-u$HDOcX>Gd_obiaO8OXOPi4gI=tA zneMG;%}3V*wYvESG_uKgIDaNo_-WPt?H}U627}2va$aK;EqU*lsZMT?5I8I<2V4va z1^yU#e%kWUL19l|7o{yph7y)OVAH&SGI}mLL z)`i%%KhD*^jwtl@b_ym&4w6#cvv zAB8^eMb}Gqwx%TN9JjZu`%Y)K*gJek-3wbgp)g zHpVR!b;N{?Sm}l%UDUD9vZC80eTDO8#))4uw5j9xwZ*b(U-XB(tXoSEYEIy)@5>~+ zdDbqa8C=@pEk|OODr`a8}Bq>ahjBpxU*JB@^zxF6hH~4wL|beE*1QtbEKW%P zf>M<~;W_8o#c9779XyRrT&);>_`wp~rq<+M!`W=XpEy(JH%nf+qlV=A9m!sv?1tMx z?S%F^-D=!?FYzf-75D*LYpMho)`+KA#5g_HKM%LTy$%Y7Xh^`993e>t(e8U`Y)S;nl zyY6;IzxC@_-$_NqEO$B4TX@wJ%h{CEw>@K=HcnOJ8=!qmtO>z;%;-?nQA#b zsC@gG`jann{GD39pi0;u`}hdjRpWru)C+;GUVMYY2)5e+)REzD?l8m`x+@sdR!+5A z4=+u{>(@zZc72%`BGXS|NV!oHdN34nK3L9v8obtIQpC46o2|^2Cq4`ATT8!>!=WP* zu%9GD`#_{@-!jwu*gH+8Y&oEF@xt?F74EKfKPw3}K2Dii=Z(2CRTBzkNinH&@Y%$onw47DPmS#7rv#nBG@@lCQvA2&D(UdPQs&L zcI0`$hO9WK$efJ~_Bhmr0kE z2v`#(TouSb($!0Tp2Ry9zk~*26^JNWTckZfkGo6+;!=T4_(r}amHx3Ut9RMYhhJ%k zrP}pQrWDZ>qx~3WmxTPqHv?xM6z)siF3gBsrcUMoJkY(Z3Pv~>8c77=`)`622?|K> z7EV|m&QIDQYm=RcfYDk7Om)NU_G&lay)*%w8RlzLpDSf-2DUG5E&#LOF0-vBm}K4Q zbvwLO@W7M40*nlL%UWid)7!-j>(y3c!rr&5Rx-iC!ERbD#?g#jG?&DF%1LG3Y}Q!r zl+Id4h!~6Ulk1`M9f>T>3NUN9;^wA!x1~URU^I*CLlB#8 zu@VlHqJpuE={k8$eH5^_H)ot;Ymfy4+qavRtM!rkB08iIS(U)O0r#lH@1+dcTrdWR z<$i^G)RmEW=I4g-urwj3CvYp6BOVz)G)}f@Pyl_Z&UiE**Vfyvi4qsK?{CEnixxOs zd#-u3^b%ToJ|O<;po7Xa9_BsN@Y}sc6f-D%V|R$1hOqRFdi4fa@k1A##Jv=uUmr>b zj--zN?T^58u`vcFcSppmmzQkjuW2Px{@rqF+Q_>`)&oY|ylSU)+1Je5Q?&}& zN!)RH^h3VhTREaXv^m`yg$dT|bybg0mIcQ)9RL@G1v2VXWgUN=Q_sJp{s~oI*y0I)wm82nncgH#VBp4VAI1+o%Ns1UJvjqh`rdf zGW-1vb%IeN9=$!=xxr9V?RKiawN!Zu2}=;6=A3se8;#}S}PTQBDx`Tx6<<|D-W?3nwDGY;gZb~-N>VEjyfk+LPYdj-3;=Aw$Q26=*bdn%6XDR^`prO|a^PGwIPj6ib->nJKSZHVwyD{)@?!Fy zv|A+1zt#5H?KqP{C)7Ep37qO+Uk4yn$*6N|_Af1BE!%GmsUawpyXDZBSG!SqrD&6i z;;g=eJA6tr9s!CW4oET{6w-A>H4pXJY##jm7ue0_w@rk5-s`r6$GimM1@+|a-sP1r zRAXw&juK#Hh)2mW!G=d?*@qG@EI*#KJ$K_vwb<`LOBsft$EUl-6ElV;uT){i8Nc$Z z$&R$3W0pHY-I@>~T9G_d{JDKqB5tjd8z-(9G7@KLHj*B`jSAmkxh7q4&yhjGV2KDZ zj9N^ z*kAoV$!TY~S8i)tXdE-%7M}l|MAu6ynJBG#xSWMY|L>J~D5os89~iSQSc$H& z2|LON?(p;%Sp{s2sKd*`NU?(qlp&PVrbOqRc$-Bes_oXc5==Q3w~Xay7<%HdpZok( zFpP6u8ZA40vagM%h$ttEA|oKg$haypMryUWQ_WHVMn70li7|EFE_eEskdMIG(&XR%u z#%ZMJO^j?6!7fGc)kK{6aCN|GZw$CN{&Nl`zl1w(#~m2I*X@tg6ymTiQ5yqa_Ki0- zmMUfjJKFO|gX$~R0g*@{==iz@Tu_S?Ffr7+x+)MNVCu?6mrH7~0NV86=HsU3pgdfu z=vY#uz)+2we0n1ZK$#%6x&)yVI9Tu8Yn33^ElwrB z_e;zd)=z~vj%d=a#wI@rPFxN)ok!khr}s0Jn5H?JiUpkU87$jhBIBq6K(UPcDKOB{ z%ZPf{g_!+ZUxU@k`j!MTW#0yp#!;Xz@l~l*G{hOVYN9V{cGU5G<))$0YjNM>x{Z!- z7Qs0A#Zt46pC2`PF|eW?Y|VNw%&Wwqb}_K(CE7_IsOdrkXyvRWYEHSvwxQFQ@CeOo z{C7IcXI$ieT*VJhu42$J=7!$-y^qj{#Eq-fE?9r<$M+dNp&P}A`)`AJ**x+`*W6i^R8 z{d|58vxJBF&&;^!)H2qoS5b&mb$>^H(>$)5-&E^-AvrEBQ*~HSIW+U*?s#iCrb`W- z?&r>Zt(^W@U*vIahDzM*>F^sIaM^*A5ypwYKtsZw+fwN#d4apM{&%a z*pKw*rm@+xClkSn^No6(X8Ash*hu{yejG0Pprp%%GxbIbIuiPi8tL!)nDBIh%mNc8 z+ihi*kj{~i!asMkYwldwPN)r6nfbw?h>20D{4(n&!g;;&htqyUxKrSm#)H`!>l>r% z>&M(#EPo}$BJ8?%mY6fASo8L1#_)eqLvW%mwd^;nwJ{+wD$UY|Duni2lL+@x%{YyV zlU2Ujy+s%AL=LJ*cSm`Qv1Ju`imtE4lX$$&`Yljqm5D6_-Y)+HFRk!vxe z%?+d9!|)qBemB*7gaxg()WPn&E+CdW$=9KBpbCRY|*;i+P6-U#4AS^r#!)JV@e7m<3k z^){Z8He9_J>nMD7^=A!X-}2J$y2Rzz2Yfj618e+F8)f<9+>7>L|@UKYJuA19sV^9$j7u zLEU089r+>n(Xe}qBGR7di_O3we@s#`<@otsS3>17=fXO_$f5ia%A(vcvx_aKT5Yde z1BZ3;YIg|09yGJ?Q`dkC8>CP zhRj&XKc)q;@TK@Wib$6fMTkU?jx*I=GH`eEG`cAM%!f#M1if4>lI7f8GtV)T>SCmi zdL{CB+vo9>S+7$5bhSTMR`hH9p<7P5!o+8blRGcQ^gPp0AFt#Yf75tNHpNh!RK2n|e^%u+)6!78>TVW!W+L z(;VHgHfuD%&w9wBx!Cp4XF#kv)=8!QVowHYI-3#2N#4( zToNID9E7@CB{}k+`hng9$+u1i76S=aDCH3(!u*cSZ}}9kSC~%l7WLm2AAFH=b-dF^ zhr5n7FKL%`4DY0x?AV&3N@pcU^|>pJD8Tf`IJ|i!Q6;B6_b{Hg6*Hfi?tS$#9ONU} z;m5M#T7vLoCPbejg>$gpA=x=4F+HnDwlVZ3WZ9u3V&sg#G|e30D~qLF%-yKlpGc_E zN8~vW(myU^@h)S&t04uTCp}Z$d;@8K1g*HW3S|EbfCV>g-lxV;ld@KZAY!N?zBk7g z#ZeT>FYjvRqh9vF!^g}&YF~#TPU@u;V`I<>=7Gwj7W1G36$?+sZVM=uV?Ws_K)8U5 z#ySshMkkd2d3Vnebw$R~(EKQbH|tR&wq63fsbma%qkAB80Gzh;3>ENon}2Kox!yRr zvDVX{j;`S8{(B`t6<{%&MhF6}O7X8>dMj<&ZkwJ83QbbX9e|4j@k;3gR05k+6A~Ip zY992uxB{@v4UJUZ5)X>+8i3Sgtbcztdja^Y*dEXw{_<$26Dz|C1=KkRrzBZ>d7qKh zw#!hUgtfen4VBTm|)7Cb21hd-+7RJMav$PSU8o@>qF(^Q!?eJylG%6N2NYZL_uO_w;g(V?Wy1wVf=y{A0lxf{rvCu zk9(~t>W_Pfm9m!Ms`)>`R@mZmNjWy3dVP#!viYWSQ8lIW`vi!wpD_pesSh<3pEWl) zXqJ0*MhsYrn~%WDU?-77@jE>vl3(;{FeVG`B%s8>IWj(vE&O#ehCB2p^JGGsKlKf_ zkM>M`DX%%z;9p-0>R;W~n0*OgMo5tt))aCK7ojZ= zzTcK5){oDvxUU~)`(?ECkyXXR&T7qG(9ei0_QM^0hGlb|F5mq53!@`#u)Nw!_DkZ( zIix>_r$ZW=uB4}KmmSYG_uZZ6uJ4xF4vsEX)Dgq+Sc8re3ATlK5=@?bxvy7yf6?u% zTsn<6KYsaPJoMye!+x7z0x)m!Dh{{pHy`Wzo1^D)So}^BzSBUJSTHI;QSNlJO0fJl zF`UJ&aSvn6{2`DIa1r`31~Pi>9d|$2bdohRkmh<;%dUTL?tQg_lTtEy1+le_4}x35 z@9_6>3Z5deJ%)kV4SrO+sMCNr3L}}KPD#!vt?fNrph1K@HS278@xZ$9e(gzs>x!^7 zF&^=6b3Qa+nb!-mf#L{Lms=ZL4qTznSmZWkiU#ewwY9I&x26N=IO-D{i|Ci`@9d2! zSvSgtHfQbGn^sPe{Rf$(ew=W)97h#crxuT`w2NKDIP%+O2u~bj5ek?uTsHuq*xc|5 zYxIjOi_5K7-)IWJK#O!vW2@hhX8j3C$;$%41fJfcVeUniRB7-rA_kw(mc@Qyl`>eGM{}x>X(T$8%Ilc zy?BsDMnx;q9O>Y<(d#s;`tSq92=m{Uu6I z4MY9ns@ZhSNhiaL0}D07Prjog?$s<6VT*E ztNG9n-a-FGv}RQ3o-RqYaTZd>Bl)=FU8}Y657~JMM~2%GVuiiEd#txSF4iYHE4*tA zH*OxvG$fQzl$ZU=b9n-Mao0p|8TfLFOWupTr)A6C6*50v_grC#^w_a1uh&&)*E_I0 zUH?Od3DqyD?v34RC*-*%abLdwQf9h@h_Fh+IxJs6@w3;eJc7oh^k5(Rvg&5ddhbIq z3nK&njUfS_)&~u>wf}$b&>@~XyVbUb5?Og14-vSOLg*R*e%6Dj63y_k5SOFxq~Qcb zVeknnvE7s>wcAIdO=r)emdF)H+Da;@Qv5nyZ;7(XQkMPK+s`us#*_0m(W6#@vC8Fh zVKVL`vco?|?|OI|bm@f-LxJ6qeUAVf};sj!^Y6>~3g-JAU=a zrQh2b=IudEt-mo$UMdpnslKr&T8^Qj|H}O9mtq=~ikYV=t@g^kLfMenw{q^mf3X1G zG+zz+Wqc}9&a-$Uwk+)t@Nm+ORAzG~v2mD;myL_@sV=MZB?{Q5$r5S#WK<66y>V|} zh&MO$y0k-R=dW1MOp^za?^SNV1vI2uM^f-46!Cm2d*7MA>>kqV+ zC*#w`{s<7fiLXSrQE=njG>#&nuu1WtV!W#zpl9nBv21ri5f0aTuEP0Z1tcEN1(vbE ziE*#Ds((reS}_DhDTPRqc@*e{5>l$K$n>%9&T?M+BOnXtBG8A{+HdJ!9dc|C6es>B z4+#w|H6C^ofeF*6JubLM%51Va&zJ;yHxG}<6ZOwueh;ax<|meELt$cbOCd(kIUv;> zhpUe(sFrE};IbA$tCK>H^d-=n{x4-j48&pk8Wo8Bhkwuz^Es59Ohu$wzw>cWI*;~R26I|CzLGQTXYGaV zmy7d$8QITVIn1aOtTFDm7cbh=v_OfCe|s<1qCzU_FP5%4-m8x3+8w!i9js)PyZvWv zR!85~zFE_6b!^~KHAS2AdNy!M%Z9h>s#*I_>37EXsxo%0A^90$4$SJq|a9wo{cSeA9pVMMn%3e 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

`Pm};iA$1ZDjzt-7&Tr0u}wx1v2<60CfDP{QE z8F%o*3$z~vU+oUNM*=4s^xQ{s2gAcAn z?nOR&+=wuzU|V2yOh)LeB9Ts`JS2>??qORhEQIMxLu_1LAxXm@2f$BuGe`6<=dxz+S`q;0% z`V}}RU1PqZuXBL}v)A>bWb!tYM=Kw?H)>;y_TOP!Uc!@opQ4lk50T*U9tefaW_g}( zutI58JgajLuBfC0qL-ekLXp6moEL>|MQf~ukM=3-T9O=D4W_$iZWhAPQyQ{W$2&qmouh4+v9GV%oGbl4(~jz5$VxBckt zB@zmL^={C;XpdKjsjMIZ&NlYUw5t=daF`=inLyaEtvmko9AX=PHk& zl^PY?>ohZueQyToeOIkTxv!$Q`$oIk&W~!Tzs81!k0f-nubyw&JVM4TYd%oi2+u;B zuRHlJj3z2zGbte$`U%An%%7n+*R47A7^cFZ(KRwssTUABtorKx`bP>Eo}$&3TDhI? zA0_9rBgyiZ>=D#cQ40x*ER0jQ_1S$Alox1%S3g1uT0C#H=M5E^j82S^(WLj-9|NO` zQ0p)I0kRN{y3Fk4d9MKe4CZ{aaEF@8>~JEiOc`UN14FV8+%>mROJv|!^dsC$0NeD6 zUNkcaY*HQn7aB+}iF|mz&piJ&jrSzT)u)bM+gw zmzbNwoL8=qD9e1`1}pDG)9-t3WlbCDKUZR4V8COawB~u0j>`Ok-SE0hZQ@>Y6op6d z*9EtYyksLYSj_}cNjLl+*TlT{sbQ!QEs}dm@XkAdFk$LuDeN!`eIO%i6m#gA%)F;M zX_jn;`|Kz2HWn{eSmWN@1|2c?2>)eUYY_Ni6rW3P~G;(oK^0$x-fFV$fiJ+65x(-<^;x z)0?aF_m7(S4g41ijfhAen}%dkicpv_jG6E*i_ zfKQ%aJjf&RU|NTnI!5MfwD%|+1#W4N)~5+w@W)!4{=0(ZFdswr z2s0#G*|%ihQg$V4*0Q9sXN{r3*q4y9@7XDY?1YqTp==@hF8h*xXMDcz@B01T>wW*} zs>@Z)nRCu_p67n<=f00egpk3oQ=(jze>JGQvNDsey=C;FTl%7xF;pY&3^D>3KN!V6 z+&-A&_t9VsLPgkoLICiGlEj{t*`sdkk_EMqkdDRgjg0&}59_~_Gx6_8?I%69>Nd{f zlJ2xcYT4M>hmk=Jvdp-W*@p@2Q&L;u`{yy!PHVoKo3D7i26*c~id7(%XN#q9LLT1d z87&6SdR+=F(7-H^cf%Z5rIs!Ofwdpv@M7P`*V27L>VS3dx7i3IoWL}y8QEgiEqlvk zhs*pAnQJ$zs^e_2kwy$F{umhH??%E)F@woWVrg(%_8V3i<|3qe&foOy*{$?H9GPxl z`nw&PIrz|4@YRybCxOoU&WQZThNTX%&U>z7!1py9!vm?5t3Y_+9h1wwLt0r?L)Pzf zJHA?rn9k*BK7U@{%Vhg@&t;y$2H3<-JhhxuaQVk^UD(LaG@$Gy)VsX>J)>fJ)1SF< zg`v$d-2rEn!-xQs*C%o^UWCEDQLa`~DHVi} zL#a_xN;cUGWK`4W4B^(!Z?*}D`gf@nMCFwRQC04GUR4y^hg-hXzS!Zn#GTj+QI3E07+_XTKd%wtHw~YE_ z$ki-V{#>mLXFCVRi&WrKZiUuA&SEyaMpH^J~f-}h3Jay#||YvY5*ej(Dk#7g&5 zdo8jy7%KesEj)(P%+zoV6~zTN_Q-ZRSyc_AmQ=jcW_E492z1injd{5$5at}aQ}|t% z*(Gybqzv{w-=2QC_ouey$b*8-Cq$9@Ciq-i&2@oqPg`Vogq{~FYTu!p`gfYNw^XoC zrAxLIC)8!GBNVuMpN!lyjk?ELtuY=SzzGz1TTz|VIlFupNeKK3Q7Ia(JctVCR%W!a zd&4iR^)2oC9p7MKn11p0I|VWb_U!N0R>b^=4ROy$wP{mRnI}iaTYMOkKk@PLO+1+F zTYrm$wY{kcYs>QYci#47&`=O_fCH!ZOFKxdFVYcvOv_jg?O)0=A2N;#X)?5 z@IBLlJVpsI%~0Fk@%A^{wGE$(AAif=t4tE;WN=1&{~fuL`tpFACACt|zo5h6VEw8H zVSNz5skz-e_WGiOwodv3146$3(l;IFE!XWnmQSQIwzKOZbFREh6H^*`e%$}zZEfvV z71vEFrqIpnoDWQCpZp3i#df_*?=d$k^p$h9Y0${f=G3yRe|x$SSsoigE|fHlVq=Tv zeDHlGvbMyx^c4+FHs_gnGNxh4VXRzk&e=Kh{tV@x<9^F)jb3vb+5bxm;JbmUMVwvy zng+J8N`G2mm!9p(*ShTKPR2IljE4qw#RTWq!ISp3)}+xgC_nyy2j zYi5DY0B+C?;2hvj78`ZTft;!3yKjZyGFL9(g9Lp1@5w>SFx}R9Z^_2J!@#uINN0wl z(}R}5l|zn#(;L*+<#rCQy>vL3;~1_+56|2GO7b_-5m;dR@5v7WPrg4&G&A_WC*QD@ z5f;RlG7`;Y zy@N|lFidV}O|xeBCoNyi{-Q&6Aym0V@3b`pI9d-G68HT# z;MHyYCK7qrdpVx6B|2*z3#T;;6=Vp5bwk@~33yxh&SdTL(`N*ZI(xO` zl?bcrTwE&CAN{22c9eZWAl`HDbIE4N%BlU1DZU59BtzyPtw(7k!A|zgVIUSzL3|*( zYvvbmiYgF;NE=Hwg73L}Vuf{|&Yfq2nk3EKzpypd@>Ecp-zOtE{;$7Hu|#0O)ncR< z^_1wT&Q98*kA|)x$A8tyb`t&!<;ldXtUk^K{3Ix)h@v5<+N+^Zvb&yt72`L9J zGqZfT=S>5Cwmcgn1+U%?p&GC4AcvAB0q{gKB_w*t(iveAe$<}~_89+m2`6lVaTk`A zs`3`FQi}x!sGP7S$0rcS*ViI<{I*v)20{B&I(<(%_ybe(F5oZ=ps7Y}rxLg|^9U%% z&{s6-%pkJcVGY?NU33q@fZm^aD6t22fN;<4gVi&!3|%l72WOWS_RlqU`^+s4`~qi1 z5(Y?Y>P!_*BAU6JiS{7#Dpkf;n|vX}wrLwlOOj_n785&CnW2WtW-d)i)DC5P%N0_% z)!dr@K5-M7Hx%;w67S!AVtvmE@U&lS1D81Cx01a9-;lah%HZG6UH=VC|8vz5Y`)XV zhWHbhcq^0YAMNwC)qndx{D!>bev4H>OCbU-N&t~!s-7_dzsEyTG635Po)L$~5^-?{ zXcZO|(1vvk-SRJ2|8@?8IXd2=A b#f38f7>MEhIjiH!5E1*nGV}99BOJ&srG0k7 zIU5c`guXoU7N{@F_&oH4J1vCW^y1MP@Cm&9WyCjx*BS9u(QEN9isVaM;OdE<1-h3N z=GkF2m1(oVkP{|_dlWk=0Q0?A#b1#CX`wyHfU+PQdE6b%dK2_X|D1A6oZeYoU0ntY zOE)*7t|!1+Xy^vX1drr^U3^mrC|ZaNCGUExk(fOh^9_L*SdG?LWJ_0Dph3;NVe}Ls zQShj!QQ1n>5?FVMXRTQa5BY{zNlMu**shQ@?sOkH?qir#0fnf7eH**%+_noteF3v7 zd4ckkzwyI)7B)0l@$N_EHX+t=J1C8o`xY(0gq1Yra|u`mJ;p z=xuSpJB;~0p41=d$y)Xc)HGm-_wv4mj!y0LM$X~+C6#=VM&&GmO~1MWh+#TIAZSk3 zM1MHcC78S^u*Sc9t}vw$=sdAr`A*W+xlY8NQSSL^NumgE$87Weq%667AZ2mjYTvNF z$TeYPr2+w&R2lrV*63A7y>X2<(vNAQKYwK+)t_(#`uKN^jWtT{m2qBH_qtoz!mf_E zxis^nEf=B^*UIW7r-&0hxg_hY$5Ldq?K%bt^^IityjH}tRidUhJ-0H z>|c1sWOXW@??o7SRE|CK4zU_lfZ*6c$Wrh%=O`9j%l|{xcJ*X1_aX@A=JTbzIb zVm!Z5Stmo5Pa$%1+4WS+GN+@E`u~GF7>Ws*&iQuzwFN^Rf6lXCvDfwIJjIAkra}() z_#txuMtg};rFKS)2;yTYM%3B}U3Klx-b zCs(dJ@{shyfPm#cp8QV}Qk?DN(9p`dI_cOb-=(>R{A;T`lI1Yr*vvGPRX)q^OX(|2ajDiEL9Aow}KCG z>_wLrntIgokQidz)~>#sd^hc(SC=))s&my<=j^xP8d-=CG3l`IRLX6DwG-y>tn zc6j=w<>sq~X7NMG2KTlmDw2CE1cVJYh=rfzPY<-2Ow2L_>s|lbN13xhVj&>6S0`V( z7Rm&p==KHqt9$Da+3$KD-y_?zfv3v^l`}DiFIFqwb4TrBw0(VEyxrxiK(w+pHFDgY z!k{n-8O#4~3t&r)NTq9d*fQXrME@qO9_^D+Git4dHtE$B${ZO2RLm(Gq%uRzCuBx! z6IA6gEehR;F}86kA%3q&@GxxFzC858<6+akcG#cm?McZD>8sGG_&Hb_!52)296B+Y zyka6R@xA0(4lA6Le8uL6wAlaZTnTW#>k8<$KHNmV!Odih3VShH>ivL_KdU)jn z0Wqp)EzB}|yq1N->Ac6)a_Hl`pN9`TYQ(xUI;wda!zG)wCQTFu56ds zAf4RpKH~e^lwb2tv3rewIHhA6=JNU* zO`A)XzWL=wCG@X82CWhJU97vxHy9!3XFg@j-7$3cduIImDkiEXgV4`z$;+2~WFtxr z2TysXlQK{m6z9W2X9?$rNzS12_;)sDiH}>-u)kcUR8yDDf9hEn8+k&sY``MNatA}$ za=HCEho`64!I}j<3$1#~@!YVuYv<+NNSk-;%hy8#8+VCV(&Lxth>p%@>0bYRMvL`O zeJewxG9!nDR)7rk)t9(OJuABdD%2trI}^M+;h-jNr2|{+ox{S>ak0g5eA^pLn^{ge zjXLj(zB%@{*u2&m6Ef2lQ~wqxI6R%=vs6tZ|AS!mD&m){-sut{>8U4KDC%!Qzc>ji z16ENH8Pxpm!6Q(YLNy{^9Ag53cz5N_x!@_ zEo$(Ugg;um-o;3Pr!-LnmAZMR%laf(<9tFB&G5lQ8RVV*%okz3l}y@j=0?ANP_z3< zX5#G)ox|to2h!=E>tB?o`=)!Os>^y^9;TqTfXGWtZv_PwfcFCCg;;WwsLpV2J5tC^UV zvi`B_&+Eth7=$ME**>eNJ??CbuMC9?4#|4Xv25)2}h6{x|hfl-Gw%X*`mZU=UT3JH1GUd~OHtq@J zPAEDQ$^R4v-nhEAkQWH1kh!V+N zjbaq;TvsEATU@l02{@Bpn4brLXGfMOZ0E&tfNXw+A{?aw29dSirKS8BOYKP7G?KhK zP{Pry%zAs2#$tjW%#etqZAI@(Z4mcreNJF^9~>MMJ^t_vh^*d@<Pp*v5C$;v{xPuW%Zq1ZXF!NqsxrN_*^>6tCf0FfvFb}TJw!M7t zg*d5ouTOb1$Fk)Z$wtFYJSDf}u4wGVk5%TA^Mzgea?GNQ)K|3cuf1btCIybJ2t^g+ zm$0q)#!G<<+J(#19I^{TNDGm@5^>%uA3h}Q@7w={stiDkHaQ$!S3G|H2njvjTxE!{ zl)eiQhV^TNQF9c47CAGc04HZozX*lONl%+I9!YG)BZ=EHF2fh!sBi={kl{Lz^oxm0 z5}b$EU-MwRFTZN>M!`=$zo5Y4!Mxb*O!FsUjF?t<;BuU>AP)8tIBkJ9uox$^(Tz~$ zL2KWQ7E;6oqmF14K=b3c{@^a>Jmk8mE4J6^%iEJl6BBLo2hfn}P=n9ir?(y_PrHI1 z7IvG~#Dochlc29MG`elh^6<(-{co-D^H({-3!iV#O9LCnY}j)}kvkJ|E6!OQwoYdW zYMZY+doJIOzMcDKm1VpoP=S(J6x$WUHeqk)lI3KZeC~Ni>d9nF230ag7GZY;(Yix! z)V!>+2Kx`Rk)F0Fm|0DHEi*_tjgnE2<%z|NbO2e4`3^ei?XrzCH52vFvNsJ^{z zWL;ItxY_^&_ta$)A|1d6!asEDN~$fL;b~&P;|SOI22_OKeCg`j|MXS<+YP+}wSf>r2O# z&(@jeeiOL4$;iew?{pE**1S{;4=?wDoUn#Uuh2S67C|xSI(A!I+l>QoeX-<1g_OTe z<=H0d;zJ`obMW-`@;aaUzxlVDDMDXW!g+yYJM)85BX!kn>c9652ZcZs&W<}gs-IK- zdhAl%$RX-JvsY47L<2+*4S?;5dtkDHYa^ zj^)**%-nSW#@8QmC*45GD4Y*Yh1T`QlMWa8qkkbJ;4x6(eY34{QtRiO+rn_3;bx|L zN8OA&df73D4gL8p%^MBt@RuvBMhXt5@HsMwez6!_|F(DFXGG^I3+pk(G!$Knf_o^| zh1I(+9SF!KUz4-046?QY9#umwwoV+SDo}&3mG*EOU9`p46C!g0R52xmaw2V)1?QIP z{re>j4_?6oM=oR5m1JCI;GWN(4VHZ|p;8N3?2)n*F+wN4WmJsUqd0HKcKqQ!W4q)`VE35nlC!I}Uc>0i|bHC$<}k3yw%mZV)P zIeg%DUteFfRU7o%$kM+r!*=8iYR##ZlwS%`u_U#fO4xQ$+)+l1Fts9(Hwjb$Cuaq4b?@@ip0o)+ zC=rHNvue(UF z_U@Jm;b-0%ZQwsR1>iR=fiKsocrODYm=GDd7vHz!d_oTR<6J4jV@` zk%2X-mIKcS|9y$xSe(mvu`H=^XwK(mtR97UKK1$Ma%~5Q-PL)BUgP zpQ!1-c9GG;bJ)}`KF&S9=ayoyK_lJwV+BlbeFW^*px4Iug0OCwP=_r+@ch!!9aB>l z9(AeHPb^j&UPNHgBBNOX75Bcrxhc=NF!&;z?Jp5}nXd!!FX{uR@yet)DT0ii0rlTT zi^KJwD&4UhTl;5~`QGN{mjH(f*J1M$7`d#?sKxqGosTMPv)%Std&05-h4ayDH=RaG z4bNHr>y0g2y7L}XLBar@xtyY&diq}pN=IZKf+}WN=UD!{L62~J^e92hHkOUf^|2az z5QD(I?O0(?^m6qBc+Sf>g1gb+!-QVmCuGy?M0Q&m8YXG;&h>2@3-8f0G0~~SK^pW3 z>jYvj@E3^Rl(L(i+skcYUx01HJV(@5umgL^*0`;1b6pVoSeZjn>zjB{2~iKf+wR6! z{d$kQ5Hl1_x=bz<`=@(DneNZ~* zL`IpDUR<6oBgg=!^4G6QyfCv*_u)1rF^U!>s9+bX6cf_l%1TNEFA!`bX=q%G4Y8h~ zZxDi;)GlMrVu>Qc8;mf60Zwi>DZMTNDQ{I886IAB%9h)Od9`@Al@SpnMb}LJ`}gm@ zpGA4rUTR54q_!#)i?IcmBWAB<)V z*oCG0?fi2n@)oQ#Iv*a?`OWTwUG!hD@cX#!d+~I6;0x8w1hi%9cTQ z6RC1FWhIdsMA2$MS4->r=J?ha{0<=@lk6Tezx78%-6sD$llYy`M#UAb!(70Az|F|m zA%=`tbDKI;Q%+7K2d{Q+JJSl!SHd{i*wQ`L$^>GYu0<+-*y2KaWK4P>MAl~ z5-iYU>DNz)HZDtTkSP+rmbCb9)kxfH)7)|L(ANF$MUY6)U{Oz&`ii?#$(YQxep+uzW>#L0IzF)dcMq2oi$4t#_XV*f` zH*HEw7~5g9A~M%pq|z3*@$X#f`N^q*p2~`Auhy+>x7qAuxrd^COg>7=A!8dV)N+^Q zoS8$9?97j@f+Z_< zw7AyaLF586l;D(mtBkak40E7VOE~9hxC-IQ@+Md&Hl_(O2PND%VV5hBDlIMT130&L zxC5Ku-_JhYSRdi$&Jz)r!MMXTLay4-Fn&s;JU|CdbX1`PT)(CO{(EP8_PV%( zUZ^m#J7Oyb`RLK=C<6}377A1hOnmhP@iBL(n7jj~Nu+Z7_HBojBPXF7+Anx?^T6yv zkE<$EoLICqj+FRiY7ZGK4kT$%2jO~wi_J9_sPx(IFWN2oHONb#oR(x15-&7&e#*-y zVaQTp)v9caY(;!sU0}}qMnAt%&fkjYG|cx_@KV%paw>r_`i7>hZfrCPtl51 z89pjd>%=EPh!G)T&fBCG@1W=Uia~Mf>pSlVKx>;8_rOkF-%CodBIID*5n;hO#V!?R zjq4uTXLq2+&iK7;Xt2Oiv1r{XgxXQk>!D1&P&OV&;J$9s+uzTFK?^SGE0U`~R136T zb9U3vUA}9L%t@T#1|j!yusnkPyOdPYA zT@S}4;WJljqCGtf8pqC0tjks&j8H^ehJ|(q9dy^Q-_Eu`(gI@?2cQb?#>ll9-s>Kd z-E;h4rH3YX!1y3S0-gsAe0|Q#LJsFcb zAHZ+hUXbwJxM3!L)5PzmD22#aiW{IEi-EA*`8BuuiTy<@BODr-A@@q~?;cVO8!G+t z*phD&{nO$r$s?37k z*hWF~t&dNSIVscS)6uwiViCphcEn{x;-T&-7h+|I5<<`xw0`g2yQhvf#X)uY7FY+q zDQmYa0}`=c>z=INVW1Gza43;gySse#>Wj~JI`ti{!V4fhDI&JK*RPu_k_Sn_S*uUX zbu+i7H^J5gE?&}>L>nCo;EfAk$r!?@<}P`bG( zEJB*4jdgjL18);7VLy^ z7#7#fsMqw{67V2N3YEzgWk5mqW}{-4y$gvOgjROfWV8Lk6ZFo=$~y z{q!b!5eTv(0Lnx>sEyfdkff5_;deshKyZH`ZR@%R5Rn~-`>=KyMnMq{vqjELKeVM( zo-vUIOzd99>kK$$HDsyr?0u#MPe{%aPgEO%NFmNCuc_(2jxhu_Yi>ABBlXS62}#RN zrxWPABr@*iaU+@?p?1oe>bO{WtJ-aJN}SVHRnKRZ#Xhl)yA*RBu={Pkx&FQfGE{KE z6QJG$f$Kpeyo*UK!v-Q^*GEI`dk!{rikZQTn(V(zDu`Eixk1M|0qr(7Hz!>kN!SNc z9z>W_eIDi-A_vt2{F>nki8b6>Sb{xI@2j5YRw1b67AP9dK@9%{QN7O))Y5r~miID` zD#5fU!s)G%b0?nJiakIg*pC42#!GP7$Z%x1Ftb))MI~=cR&l-N`&WGRaQE)r0U(R? zwz)ZjQP7;XrQ+!Pp)(k0vuKMOkfu3*GUIyUYEMI%fA4nwvtpV%XF7WHa?Dezu z;v$Cz|D;mP@Ga~De67b98qWIp;)OpYg9PL2cA(<7Ql2z+XYikYEO8{v(^XrWo{90c zy|QwV#bxuyOo(}RUHLXdCs8;9#F3Vz_(9;M-_x}&6iScR+MTBEw6fsqzG6F2_mSDb zp;IGusMpurFqI^@1{OlEpX1~FQST_Rm2zo>?LU66>mr~Jk)d_Zo+r$?SdLnrJ5@{PB;14beLqDJ#2gH}dA0)kh zuoYqPJi1p^_V2e7;)u^|w{HFJ(tp%u9E#HEvLIK~$&}Z|qmBTFFi=+~_QU=dh(Y5h z^}UmB0+t&E^N?~RQ~#Po?ZhA0;JwYYZR0j7r7Sr`4Q*{oLc~T0GOGf7M~@#TW^2qa ze@1owc=3cB+o~jet&cOqHs?XkMsM%4if160y893)Z=aPza5B)tF{$YvsLl5#0fcCW z$arg`)@jVjqf%71 z{GGW%BEkdy!|Yu0K#0A$x-EI}J!rkf$iZ!<7`{dnmzF+&+gyuUY?6Td1kmHi=xBs= z-)yzbCo*C*OWAkLP!xE{SF<6CJ(Kl(oa!f5#pUG%z)f}l6zX|5lbcRx7HxjMd-!M9 zk>)slkN?P;3K6lbD-6wr1mg!uk@UmC{5-gtf&t6byMWJ%(3%RcCywN*Bbpo`*D}8IY zqO4mWzVrbG1inD3tftd%-U1jRl7@YH#~s5l#&;CtdiR%<(?NOmpN{@v+o=#8vxE2B z{wyEo3#)DZ82(QMjjF>B@l5{iZvyXW5adp)Av~ucn!^Zi6IZVZDFD(EL?0>w0I9wE zqOg?`l9sg=C=ublu^J#yu6+lNR2Zz!+*lM=pGDL% zq)UJScQ)LykC zpEVGEoRbAti94svD*>2i2tdc?&JxfXmU2hw0pM~zu#+4b$|n~rrq_cJb0Qz_6oznW zNUs5)pze^^Pr5Xc7;6N>Ldh`V5)y;J#r6UG>H>kyloBy|Gy=IRw;3iOv84LDfg1u8 zT@^+~Bzo+7%$)D9xFeuRAYcWQA!)E#`*v7RUVqtN`)26}4FxU?gFsbwxo_%U{@VhH zy_XrZg?-0{KX_SckGiYf#`pg(OM?7x1-UM0?$kv&MTQ*%64na$A0UJg`TBWCo_5sJ zobuzEBH@B!lM3Mjpw?z6kGb)P{zV-5s_=i?XGw4qrRpc?#0%xx1UTk{Kbycfe53qt zK(z6^27---W^k*a4tlSZmu!Za(85qy8Q7Ne_{$zZaF4`ZAo8&yuaF9|zaZF4vPVV8 zv0Pfr+fnH92{|^4l0xOXhO`9>0I){vUf@@{Q)8D{Mixq+Og|(x!JZxH5x89K==JGq zVdnHMe|}fN^{H20cqC!w9!5#SC05}u0{{zJIjsk}ABNlB(H57>X+|fN(ND=@hzqHc z73ZhCekBn{e%xwK6>QoYlF#70vXX&*6Mp%*FtQaBf$VVk(iL^tEJUft#}FC(qd~?y zJ%g-{Ou2dqa2w82baZvco-U4ox7tdD!2fBY6r5sdo0#v~HEw^YaRCbDb-v%f_Q^1) ziXi~5I0A;B$DC?XiY(nkq4ha2+JT}YPF}@kH#%Mk&hq#QQWVT8^?v?LW1%M^S+khb zrLWi)*Yf0yobARD?cd~e9<9JEo>(%wUpGGpHjGKL%_IZ-4P%W@8GdBXhF+kGig)z` zLqRuBu-D;+=FcZdi9e?_ZnTpOtz;NSe26M^50hD-_y*oE+H(YxrB8&FWVNI})z^(Y;m4^4Y zU{u9Y$u$A!&B36!U~=l7N#!`LWY-MU5%MZLX8__$(*Ges%2z z1*vitLkFVUC~6R3;LaY%cRssz%w$hLCvdybniw0W*be%Xph2oW-$&U$Jj(SiZ)EC| zIBwi`;@&OBllX_65{8!(@;#;HPL^|JkMoV#0`TC#0iFn_%WTnqkw#e>L%m5|Ef+mgtTY$%8czt*~%6aEb}*L5PfObuK)BG5lEqy7E8WGGYQ~N zRU{U<#u9W>K-SD!cCyNrB$qnoL@Ay3~nGj#iX-i&@JRqO|N)5#Md3inN zoJK>@VRCqzGz&mI_c*SEe(E})q$w;{uwXF) zycSRzXso(nNO~QsvCe@F<$+}L_2+d;~AE56ts>I2^+gpomvf@?6xr{(!zSPfX3hC=B1Y$V;~JU#d00EdgX4fw1L;W1hA8D_l5jBEMTV`e*E z8wp|d#*l0(vB7v%b}`Xu3;OiH42rO#o8aYYk<_zxNFr>|Q&lp1JC+8Tn%EZu#Xls)XIyzX|JLO1bL6z0lr((-Ho8V`a$ zaWwE5i3_+d>0g-y9Ys9&k{qjM@XM`Xr>ms%ao=4U_LBRd-9v;}tKS`TMK<4BH*Wuw^(t3G zzU?2JZu;bL=KUJRsSZQyi5i3a2rh4Qp7Sh5H}h`1k6K0G}9Fu~LBboYcDJk^&J0@CDt^!d;^iupX1cXF!{Kzf~0V^x38Q^d{D=v>gWOWAgn0HWQ zIcT6d5UqUJ@nCCq_Br#Yd`JhvHk#x^D1-1DP%A`9a!#^eWXxEoWx%SbZRM%$GP%+rKC+vIxALIIYgt|cnDj(^~JUpq3eIN6rWbgSLi}Zed zoR_c3^rL97W@L1>YMm`aSOLf^(}L)8JS1 ziI%(7KMF2~6lmnW0i$=6AVQE{M&`_r$kNXI#kF6*nMV3omr7bU-pC_|yVA33)}*3A*Ya;ZKr|(U5&E~c z6BxELK{}l(Wki~L;!SX+!=Wc`xgVoZ0^y8q&*k~#!j8UOW)+McMX5SM`hU;Qi?b*M z1j9*zK@5*A5q)@0Z?7c3fRmUkLPU(B?LA>DNz?*{V_Q(pb2ZW2BH(yIv>&;2N#Ce= zCwWvD_R<{TOZ7Yap`R_CiH+^NH1UhDmK}ARStr@iO#pA752pA3*ML$Xl4%%U`IGrI zS6gn$KIG@bvAwm=cgb!32KSXQ=HMT6;bVRP*+#@Z`2Av?cZLk6ANHuj_Q|AiDLGte z%Dz8?;nokY9~7VxP%YZ}Im8YCT#^4-ZWGiLk@GEp9j8i)q7_uJVUvNWIDZ&_{PtmG zE5Z*2%Qh}4SySuja$pg&ON4M94-J2_36EFID=1L$uaJlo*8bM9a^hsw2UDru&TV3w z?J4Fy;{~~Sm%9U8HyuQg+gtj9j=f8s+634QyjdlYV)elD!>OCe+b-h=FT&m`W3x1I z%!=CA$`bv4KJ@sh8=&R-nz`Jt*AF~lm?C@zvpV~`3*VN@;>VC|ZB+zd9?6UiJ9pgX z4Hb+bIrA{4lA!vS@YG^kE)*5yi#{r{q)I% zFtG~=3B>{)%a_?oR6^J%X1M+cKPvdgAzY>H)<}{lD8m~I@d(K`Mg|5u?^tNH1kws8 zh8UW9LNn9B>DGibu&|)g&Xm`0q$+&-)_ZnvSbgamGf#J9LvytzR|mrBh@e0A-8<3a zuq~-IQNM%7%KT+5iH(ai?Kz?c24k^LL%ii~PNsM^@#ghPC+YZ{Wz@}I4(IfsPn5#5@j1+)W z5n-$d*n7v^5HzQ}yan>0oz3W*8Mu>KmSoaU^xxti-6SM36s|;Acr)Zuyxc? zOcc}m$$r0(^(j9ctV@IUP-1LY&&o;^naU$4r-$&XmrJ_cg`<`Z$YjZZ)^nG2)jH{X z;r{40;Y&-%dqi(3K$2KulMFg7Epk{ti4`=xyK*&Z@$B4@rRH%_(|vC_fYrh<_zr>< zqMjV&+n{~!fbIc)*$$(nChy#x*Uy>Qc&D`Qr(a8yaG=m;^&wrbU!;rDO`E*t()H_? z9GL0eqJe+irDkK%CL}q)RkD@MRir<1S}UsF%RB0b9VSjqzc*XOFJShz@eCt~g7FN6 z0@{Gh9pBh{GK6R{347 z68GMILP0a_>DNlT+HzyAb_8;eKn0jAs>!GKQ7M6b;5&)pbIY(xf^gf=TS6TE+d)_k zq>P!zqg>}L@F_nj{qp*{hxG0U zJ4{4rtS+1&3v|37NYxk52(pbtMX$E|^>H=|YP7~l7V4>nbd!;@qG$^O@j%g7zE=tw z=hT#w6D+6Xp}*(P4JO$L5o~IU#l{5G4DibcC@GX7^anr)Ur2xs9*ev`wud|c)nSF! zZ(t_C9sH3HqnNEU9*-9vb-L*JsMgid8lduaw`n5IyA_t*bx?5MT`cN@XP%} zl}z^qbUTIbQ>P}H(_HkaV;J6+l)My+LQug1UCQo-;6t>mrmT4w7MoJoMrGQI=nRr> zyk$f*2UJ24;cxwLs`5 zkj$E712432IaHV)eLRh?@CLG!Z0;E)!Z@ut*;gt8|2n;ahaQ2&)7H*PVnQZa`1z-Q4_3=;#0DD&e@z;C>i$g z&v$BzkXeNB$?~H;)0q{rx*oJlw46Z@Tsg}-s|_J*#4hU{2L@od2sF&i)8H={cmjp! znK<%0!ajaFOxCDlQ2g{*7-n4s^kmSP{|FtB&~kxM;k^B(Lx;(mH{POTzdBmRMsC%J zy%NfDvOF&te(pnpUl^Wj_x1YI$w&AZbE?H-OYh@ogV^cdk z`sEG>fG)v!_nl7c6vdA#P6Qwmq)=dHW-cH`Qz$_X+$8RIKURsC6d|m=;~jgMTtzSM z>2tEn&Vo~_EB0z+dn#t%2!?b;v|Xej@Tl4&L2NdoReYo?UZ@DsP+2o_bgOowsKlzL zC!R*!@8Iqo%g7@w2|R740f4oBmomDyS^gcij78oeFiA{Fd8$h`TrNdNp=68~X!iLf zRyLzF zUHxKu_zjGa;!ce&gFah0EQyUXDr~6`7fH@!UBanq?tw+DGpaW*(y(0avX0^I@9(;a z2RSwF+@a%98dK3C9Lpv`Z9i3mi+lgWlS;F~3w}b;RaMsF4>S^mOT);2`|+^JeCL$C z`t_xYS&4U6Yg}?NwEWKrDzy6A9&sF@0SW7smD_eX5zt)%O*rq|CfhL5a~RgQZFRhTXuL< zP+fJL$TwLeu=a@50tIx%f!vdASJaAUmAaOdcLeZ=tYeC>dUnk&l<2lR*;wN4KZ{xj zI0Hv$dUkdlz-|==igxh1e`^A9rVzO3v&U)M39Iz%2D3w1_wEc2ZV46?m^yUg^d31D zG0ZBqKjala;O~*?? zQI2C#0ysZlFN#Zz85kNy?>&f&(#m1Gu}ajseABT%<>9@Ks;HF5jGx6t$smm0eG*k!ws6+H7_Qwp2 zb-tvk;-r50-$B-&giZ$A!?WO~CP+ z9eInrkMq*nbyCF`4xyLzya>1bQ8Pkvtkq>GWhjglzuPpSS@+GqmO(Pmsi~CsU^xh68}V{wY7l^AQYuoNqS*f2_-0kyokeGy0=M>XEX z$QXExU-(q^JS962gbKbSXUgwn`fgq{e%`1^O;|~9PfgxYq+2Rd6Hi`dF%%x4r z*oV4Hjg7Le8<~Zf(baYMoNkS*RXXez!4Va9#~)~q)5iQL2~xtzJv{pWnt(vH?SaKB zU`$Br9QRD5?Mkg~2b39`l^Xw$o3)W8N^3(*I_-R< z`3)Z7&)KEXQdkhtTFXIvU%!o?@dDA!MK_2&{`B`T-|$NB`y@fOBkRXk)6E-k?e6Z( z!F72lThH8xRsSElzACJ$sO^>#HoZ69unB3Tq`N`s25FF%knY%YhhQK`qcjTAARS6~ zhlJAIcqZTXpXWIj|GC>Y`mpAj>#Z@yJAR@(tP0$Jj~U4)40yqGA|fi&hXzRS^&a_= zbk_AQr%gUglw1|?irCg@v;z!(Zxg<;A;P5T=GAy==f?O^pTR1zU{0}uuI`VRL$ z$YGvmXVlUdGTaoQNU~w%;0gZA7(R~A67h_6HTx(TECCiI9~R)^)JVrY#Ze~gpCG

UyYKae4@x$WvA3TflRT^TTn^NJvl;C5I4#-Z*3~x^&WXgO zgvXP@I^yy_oBc(809l`d+BuVNVlM);1Y=L$U772(7oiM25IjHBTsapG9EFixf+b$* zNY8$xm_LG(;e72(HphUI$pYH2|6zVv*>k`7TuC5`Eds06MuEQkC?hVESV~FnH;(k> zuinu|B!Y>K`lnUNLeYYC{N{r(Z^D=H8tQ^)y01$XVrkvja{kVE%#+|@Q_ZE{) zr1pblN%)s;j$ZrD;<10mr?@H!s!x?F>&YL$ric7nr?ct_ez#-!lpx`3v^C$*s08eA zHnMeCe$6nUZ!nsuVe;tCxtHTE`N|xv`VOZ>3poXN@XB^0Y#^4~gFW9828R-hzI~&C znHEGeHj2m{|EAy(-Djkh4AQ#gcB-3w($ZmNFAY&cpbdfEN*4NI?8b%($CI0=T?nsJ zNJfzklfysy(nhE`NQ)DSd}#??^X$LzL?N4YbflDTP3H1FSZew%hmv9r*j%H1+-P)Y z7CtMgzz3Q0Apg?o$204ja~U?y+UOfLN`nN5throo{VKT)fS+6XN1Ov)g*h@fb#L1$ z@==Gs>+&A-ZvOhP;TT_9hvbSJiHPQ|-e6E0#g|DOt=fOhAN&3fn*6Bp(RUF`4)Nw= zW`55JvAx{e_uvNMJj~HianS`I=IHU|NHW1fynow;TK&!(*f=-}j9>mLGD*5kejGEK zs=QW@-0`MPM(p|1qC%}(o6ONv=3vL&A@`l<#bEL_j{DA@f{L12!O&1M9jp??;ax}0uAj&LQO%UIvj39qeH1g?NZyaeDUZoU}W;qaH~(s_IG6&=XNKb3lq;t;ZedWVk&M3ds3LOj`p2(1Us>q&EEzz8L>vod6}{o8jQ2|bU}l>5fv?) zr2L`>yz5>W#ywbQ)gWDj`5ZRvJoE@+a^WkD*L||V+{~*O?LBHy$ z_tPf%A$n`j;g=~!nwoIiK6+&)StxV(X8tcQuv7!qOf1LUAaCcPtunE%FhAlB_uZLt zcn?y9(ijy}yY8^9RDtfd66S3wNaT-bZaHk3iNd@PCA}&0qb3HUTXbcp2D=Vo*B;xC z&QgJ_!=ifPjq^fb7(65uEWsrGk&OS>ta#Ey)SllY>qdUQR2a@@w~k+@WnlN#>*;?a zHmDDLGo;8@UYGsoT4d^-FR@ozw{P~mOvHzm@_T(G35eu)iQUOxu zmTgVl_o!(9m(hn`cA!_{B3*&wPgwv2I-YX4=T;E{oy<#5ClaMZi|Oe6Pqdw19S0?Q?5&eb5Fq`Gug zwE{a%a<0^1+H-2j{8nwu3Ej74d7CZ#-#1Je->C^ZA9KYP|NFi0T=I5p{QvW?kR;FJ z-^zX$i{A37{ec8wbm)G5evP~2G)}8byw-it20TnT*fMFqWkVH;AApkNo-j4gu>7}6 zht!TLTUfy8BZklEPgGPMhs)AB|)Dy0=OJFAX@G|9$1d~@~fG@6~&0G#%tKf!QM!=?ay_WeW%$c zj=yj3Bt51(D*uQ00m$v(oBi&0G7Dn?Py!R`9HmDuxS}r6DJV;P|>t{!T+jH=zslw1sV|$NEk+`Gx&?Bd{(`&d`98(ewnvuPE>g|YK@%Y_gL#c81{G9_#0fP=yIA~=TP@Y zu~`y<@&8j$)_vLXMAvL5fmk3}CjVG{iPnO$3tPKpT2Uvn#6|#oQrpyY$#(e{&zhjT z7%G&x)83j41qvc`7S1PWL3Xm5s}aAsy1nUBpLw+=&O2Ni?VGnBwnYVRyY?l3%GCVP zZ86B||LlitAC!=&Y#N>wvG*5+l^Xi8!U_9d3e&R%<_NPDoKyNe2Hz|f;+rngorEp; ztS9igiHOOSVaq}t!wRC{+?)~uzR*i2$NpB@%uzZTg$@ws z+|Su@B&kpafoS>{7S_YKK=9{%7~BYof)qB=1o<8ZZE|)tS@Y*lXJd;NmwG{_21-S< zyO*xg^h@2SfWrO${d>FN(Wj?#{%yHASY)YEq%!?=+AMdxVmWw|%-TAgWPYGa_V2Xy zcNLL9fCFiMD07}*4o=p9X7Y-t#G&LAN*x|v~OZOt_Pg) zF*}!B0SEfyPgve!3Orgbp*;W>DU7zXyu6%u)xyrMWLgx=;CBcxCNckusXxP&xM+|^ z5yK&lB)RLfDmQC;1IWb|`i_s}i_~*i2;1?16&>W?52P-#_4Ncjb9yB!D~46kWWptXS&O^B*3h-qjQbF{PhDAA8If?~UnZm< zTUd1DIkmWyURu7sI82YThn2U3lEMxk08VL9$ZcvezQ_CFlG@cJ_prWgLBo8jn)-BL z&TK5@J@0#$KLtr59jwwmPMjY+u~jMf<7k2|Enu$%!2Sfv_s11wA(a4(SYt1|5__nn zeI9N8vm+`0v!s?{EjhbF+G#r$ZWfd>Mn7%`X1{>xJTdMY-pHgzH5TvknG7MSH-sX#px$6l>e1x1FLJO!m0=(ws zxAkv^Td%)$1k_$q0LsXUIx_SuAm(O=(!~jC3OB@&S!j+&c^CkMzF??-?E0jqARMso z1a(&z&vZW33(PwG^K2|KMEIUt(<`u*V> z5}L*ua5DzB_rSce84pYg-rlb97@T~RhVlz?aVa2rjW)**4OAX;qJ1viA<3zI2@6Yp zjbI6kZ{FSAWkkfA<3kyewEoQ%J)#4wBwl@r?7#=)maZUp%^>Bc61Ik8i%Ay^)IWM)|iEm75@2Szt1bLjJTARJ?1fr`uG#e#4l z3cR6#kO`^3FPb3AJKAs~0Td-%V$fvLFNQv=CefY;YImWnl}{|9IXTG@Gg{p(o`8-H z&{I>Hw*mTkdXL2;UDYF30{{p_fT%An*t8rLz?JevU!`1BR^OCSW}_dVMy3?cuoA zRn2d&6?*u18(X@HFg#g8>xfbhaJPg|=)S=IE0`xCA&EWIU+wT`R^&ewLjoJ&@=!4n z$1ab2ab#YQNd$L*!7dk0GIkS4iz`8KP-V8=H=LKbduu?x%ql6F^B>jnjAQv0hIya1 zx;WGEazwQMz7IJT_OFLAQUV!|%p3vERKP1dcIe2%<8H5R3_Z{eO0izt&1{_ZW^nQ+ z&wZqEueA}lJ7WL$$>&*^63Yt)f~z8KG`BDBkG#Ru9ugWsn^PAnC=Eb6xy2~dkZlO3K-OSTZ3Rp0tf_vWxuL%q@X9|{je9{Z^3^blRir=P(0hEsp~>2 z?eJcR;~p=@)$2c^N^(TKPyk2{;Bl$wNWJ*jaHQ*{5h`q)oP~hwe(D!A^Or!TnA5B^ z>p%MD;hk@XsFkZ%Zht3O0fj!@3hO`&(f(e@jh=~_dHjvOX}?AFt=P+e>lK{`25h3} z#X}cdMszv4+^YNxPeNV$^OD1}~O)E3EB2qc;xLb>7_96Vub$ z+S+OHZvXCY4hG2$6R%e}A8vWd-{xQ1kKEnSHM9uag}%jdvrv0%{xm$Yx_Ouxs4R3k zbxIJ^l-3EvC(<~dpH8&&{$RJ6`-XNT+h*j0a4NLwRg0z#I~SLp2>l-|M005fNr-uB zFX*S_60=X>Rl6VGJq$hLztSk2{{8C!JIA7-%TYlZTUvrsM$h(xSVzguiSzEMW32ki z-+T}^m-wtbXE~q&d}0p4+58~jTq6p@4jcrm#@Vm7Ku&Foy0^a9_eKxI+w8ARcEI_` zokJH7I!SaprNjLj(8Kc{VUwKV#xYf(t_tLNZ9PcBe3U^fG$qI=eGnO~1Nu6le@vfB zsmdS!;h+>#`}x0BtCC;ii*F0ISX4f2t3NKO6mcAhE20M3ny+8&2SE{h*yaL@=~v#%OI*$T zmH&+P78!SC0X}tnv68>Y5lMh2kqkw`o@T{ryfLIf?Zgf2t z!^vyw&j@US4=6wW)&h#c)|*XzB>Xa0Rc~~;(+9x!XYk(JTnzg6VIgo5*w7Q1`rnGt zkLRQ4VX#$?MbAMN0TN}84~Woj|CBw($2s`}>gD|+5D3KFPfW{lhHy}uU5Y=b8xO_M zP(@m?j~0LbcOQa*k5&^&$OBKAd%U@|RTklvu&2!gqKbR{Sx+W6Sb$(GyM8?MUrPMO z>e+l^MLTqcLE`E+VJvKkmO)}hN?Xoxz1!QR(MO|_uuXoa$=~jSD^A0H#1@NfKSA4B zg!)e`v@c-lf#PZ1UhE_-G(JUKOUoeIU*YMPk!1X zyI@p2AzkUCj#9OUUAwEwPZOomiu+ahv*XxyKuiP9)DO6D^G+|0IH;1XtqWohiAO*n zZ01w;XPmGbXT!lFIgT{4fyTnxnIv1Eboi|{1uw{E4@|XklnNv;gKecIw6zUaRJXFq z&pQ3;wKuoKonrvXiFbbcE*Hc&7SQ8=v!d9SLKW*t|GHA;>$)@ENpHS=XBiKl`P4b_ z*mLeatw{BK7n~Vad)#%7TVzG3C`7pEtzn&$p+a>x$*pbnP1fWejYiQu<&)c#i&x$U zd-DgzS<4^Dr*C>@%`V?R+%3?nRvfDcH6_(#UtkIm$clLFMk8MSso z$Ayd2m7HlNvt_Sc&Y9sWBL$gA4S~RG(U>I(QDoXLAg*s261{&tiK6OFqkRm_OSyyZ z19oS>Vtii?5(O6H5gmLHmri?%Gih}+LAr13-c8^#G$tt?Oa%tG6c=`T(wnnJAG*0; z9$H{MSxo|%VyRWMi9rC7=Jsd~!sF##I-wRYYanMzHzVzw4> z)#m1bim}mmJoz{hc;7EhZlTlQ^_=2x#?c<0?LiQ6fo^6tIy zR*7{}S3pORmEA3WJctN^x`u)y;A&6RjR=7r2BJ{WJV?~k*t;-CTlS`gEkGvhCKvq+rp`?6n zDKG5%LdU?k`?IftW`WJ1MkBhO#!v`W`kSkiklm==UA}ajnxC9`(R{cB@Gf$dvo^f8 z!>>QY#KfBKDH%8qA;_H3hb_qmp-$H7%F3F-KvqsOTcl&;kD?$AXei|~^={0#YbCFg z(nbtww;XQ^o4TMw)a~%s^z`%-A(Sn+Fd2T#Vbxz;k!1$eGK*HlsvnA$#D%_u5}goM zJ&vpjw2;~nF!0`Se*3(mHoxXw1*WF=uOA>idwu)DK?*K}G73FH2vbE5T#io`(3L|2 zkp2y7towyw1;*cBMJFZci;__crd$M8$4PSAv1R4PmA?TUsJO1E&w`tNyKq z!Vz}54U=9iV*BHRQ_xi(p#uH9BOvs{Z@x~N5$UCtZqRRPg6F}xr=W?NS|!$$LnJqz z=XnPWM>hWa`TVI59WSpI8tlNlGP9iQ5v=u}TW}my>xs$ggo0uHz|c_9jt_jpe@-1W z^nCp6#%YKdCX*$zJ)yD>mGuY`*(VJ;7zu+=YPa1UV^E|g#}}y%w^j;GvKaO=p}ZuO z6{$9++IlJ05krRx3b~}RK8kB%m*5DF&Us(I^Yhc zL(5{MlZj6IWc?KUra(tNM_Cyq3M_CY{A;Mas7*ukN*DVaVLHjvT3o96ZhwiC4mm4MrozJSM%se;nN)|mp0qh> zDeQag8EJN$6`2ys%RxTB7W6AbA(0syAMYP&Bs6LA(v5V3$u)3CbM%NKaarM7dPgVym-R^@@4BHRPp^EU6BE6b@t&!g!p(_f zeLmUj*U+Z?`z<*dMUW@TR;7(r%^Q8H~=@AicXegD@Q*h2@bv3YHg{N+11n$oA5&ZbkZJjk6L(D$)StLJ? zzE8V=_^!4fi~g5GG`*pr4I_V!+p|j!n9Rah0!<~@NCnVX3$P$sh3eJhmp2f4n&MZ9 zxQFdXG(Whyo6&@DoV>iCF`Ik+$)*Z$FRXMruy0J_bZ=f30TuKzG3kPm$aozrCDb}j ze|a6-GFeNfrMsaR4x_hkmqm&h>P|nAmtz<7GOqpdlOwVUN^ep9#WQm_VAK+#NW_vm zk}7Ey%+<8(}x*!)AQ{pNy#OPprq&MGnli6mAz<4#4%|A%5?e!viSUw;72ShuDkAL z_tPZEqIiEu)*x--=&dw*Cqxa2Pbv zF)6j3zP&Pdy+!r>TN<-9`vyioH4jy0@cC!QH-mE^C(kf}=wc#PqXB^+o53|)*BB*Q zwk?S??~^u(a^dwgSj8wPP$JT}>S2kve;meN#H0b|Asj3(|9ndaYHTg8Z9iH=v>VNac(;8%{idgtLBDt(gj6g1|f1MYBmg0kDpP{7+wK#a@?Gri` z8|x?fzLLoEAF_Apkb$l4wPRg%$wwb?}5q$4~tJ+60M)tZ}7k;S;(t zh8>FhdN1$KA*QD`gc)#qq;DNxUExF~pS-Z3vb$(({o3SJDW5z7YRfYDPh@B5{AO!mKABb;wlk zGHYMk#$aU@erMOdfE{}B6oB5K<>EN7v8pOr%s*)blrUtx){uw+M`=_OnFWkz4({)y z{*DzI`2IufQZqYC*OMQmQa(ao@0lNrN{DgSMSkwFQR;L5!Cq z(+0hhKnJ9qDBGQF+RjXWoEHSi$|CFP4@getR;Mjby8ya~j*m}w zHP|ZY!|;YeVO`Wjg?Os%hA_FxgS|t8Y;f~}l=S z+Dh@v$);xW*=t0|XH4+j{M}FK!9<3yM7N)OY&5r&MyCHrrh82i(RqFIneY%FM`zOA zha*S`B#DNuNe?um3{h1nIcTwFf2b{4Dpkc8Q7tO!>dY>yI;Cq-FMBSwfG1#beFld`H9t|>^Mo};L&JBm zravsFj@Eno=SA=XIJck%9FeYa*!#VJSOHEW^*-(8B_1+NCZM>opb)%C11QVT(2uBm zMJr3ax^99UvrIwfNZ3JhOa>}?39*nEiKMlXrN>UQb%irZ!0sV7JLN@uq&Q64i7$<* zmU*Os4;yZ~?WZeu6f$UsSjMChd#m>9NRd_VaQ3pjXYPtgKdM*6cMLxY&-bxdMzK6} z3DlqZVuC>urt`7%DucT1iRD|Y0ee3%(-LW8uX?p8!W6VkMc1gy z;bqTb4Op~fg0Hd=-D9rSY-lg&K=#6}vepG(@ZU@%$=}tX!v>p7OzXVwNu79>>l5#9 zk;M%bTAi^w{vd0_LQ8OwIYGV6LYpLprAQefhxQp)^D2Q4jh-H5c%p0uy{_2?0KL;~eW)@*#Ir*hkP!rYg%E9S$a_xOh=L$vKV%a(Bl6}knr7@AT$u4VcnX$HIKWA(6at?_I)z& zcqM>?O7N1NS1CKDWzntfp?o|(Ie7z5e*~4N6yhMElx@4eW~MmGQOb>9Ygv3Tn@x<; z$`J_)PEuA@RsxbimA0u1j&sQB$YPV%UI*R)X~)6)40%wB+dP$@9`Kv-h3VLr%#{qhRT&yu%vgULW%O&KXB#W(~wHn|DZ=q zG|V?^N$Z)C?BAQ?oqq%dr~Ytccr+wd=LBmgOTk{=zIH?0=)6m^GJpn_3!B^=Bt0Nt zVNn0-9TbF`Q+9`RYnbUuU}|+cR8ncEE6pMoVv6__Lib$xUE(Z*i} zWYqc452=52r%4|oa+Nc~C7&J9AUj$@u;CnRj>vM~Bew$2Ce^=j7$Ts!-DuioM6!$= z8JKuf7^>zx2#k!~rIz_3vW^|FA{M&{L>*wShVk5{8d~+x*D=Aa9_n;^%tHtyG4%b% zkLAaHhb*7P{FDsbHzwbzEzz70U=3i8o#kSTZq3b}>!sPqe4;>phHSkx^wFU}jgDF! zsL=Ig9!Bs-0GQT%K^5NBUEfyp+HTRr`5IU7}x9j>g} zXs*}W#voSZ`)j}^u@^$toeX0@|01T6k$uqYhWF-VBU5tZ^~+QUoMtCsPIni)iKuQ0 zVfO;R;A*e3$;7bRfkiZ`7CL_ zif;iVc7Eh-ho}M z1;gWHZp(6~k`lSJKcwazj+I8n9481VT$DOAXiFZ63|K1|X)`D=;zmwSA05e{T}e2S zr{v_s9WiWqP>*#CWz~d#yS+p0f1S^&S2^T1Q;`e}rZ6Fq+PPuJCvbG@Gp@raq=HHl zwdSK>;1Q+F2c0<#4zStJlknk|R>{)1bk3%}dne7Xh{fY~3bhTU-|m-T$lr4cQ~B)$2r*KGLW9z(?Cjs%_(JM~95# z{Jx%jo4W_YTKMNmhxBlUUf0SjU-_F%B^eKT)0QJn@NyP{GXf1VUvskw;R&7v;-&nk zh=VgRz41EHLqoev@iA>`2AHo1Yv()SkHU{|Tyfj(BqS_B2!X)N zwvKeJaEB5OYbD%6$bmG1w>XRON}xr~K*@fRtxNOiR>s#97NPnunJ{^Fk3~(W{oQaoHwtjCQarAL5BO&cgc^hOqTO7RUNg(y2Iz!J~w`}FqvQP)Lbm|c(r)7Up_#{ z_)bhR8)qp>FNldNSG^Led(q}&vUE0m*1<-EqnW&`d6kI1!|PTd2R^|eZ7~P`R@V=I zcP>|44ZNFQ$NiP{&I@Jes3Xg0p+O!l&^7cATiRg zn0~CDT_%PpBa;=3S87(1;J-7~1>J7~g&a#|Hd2jm0kuje?NT$&6Er7T|J(C27e;UO zKHqxt9x&=e#q%%9b)%d`t(f(gS2%Wu@nqh8wK7`nwqPwi?Rc2;XW zV&BNiLRx7h4Z8OiO43`{wt3_AZUc)8f)@rxd$=f02CFkase*oGBjwF^#IV~AWyzx` z@nPZWNVhTVR1(28o}qAzI6gKCOwP)piz3uBL%)~I#?#*; z+ZH>KoP%dq3)Z2JIXH+gF)=gZN&}}&!zW*g95I1eXSenD?_cnK*||_V4uZ`U{RXy@ z=Mr0OmYtdG5jW90FFUKtJH#&iHor)V(9?&B#pOBcmTvMTiT-ev@jn(QMqYK98(-?L=xG(w> zRa5NQjT%VayzASpWMh>k*5Tw*#TQW@dX|df>uXnGgoODDZ99$Sstu+B&?YT|l9lyN z8hi<^%S%^XyVWeuUmxZ#@>bSo=RRR6-mFCTIs)%yfA-~2(cvF|TDUs811nu8zP%n4 zHq-F|?Z;hh$k6=zi}H~Xq|-f0>0$kMfA8J*qtpT*I5>s((OnswS9;TGYIySQHImf$ ziQ+Vz?B?qI@$o9xr8M`dmD68s8BLn7m08^O4D#g==^xm$_t&o`xOO@MtgSya3Vxj- zAXrmeVkjI4|5{e|mMl9EZ^J63@~cz*rj_?--lPZ4Q$o0$cQR)2!{`|K0!*MD3X3Fa zf7LZ_wIH*TXY=+EdTg zIMnbGQs-n)X_{i4g+ANG zC0JHZ6NN`zUDn#;jrV7?H4uY9lfK{aNm8Am74cJ0lydWqT$dtta)R%vF_ESo5#H?# z4Di+89+Us={)n5Hr~=+Y?FAI9Tp(2}O`Rc(0ux_$hO~SbD1gC+w!WE*(nbv7FU{Tu zODq1+mNR-&&0*Zp+2zIlBeVJOP%yxuFX5_iNVp~|Y%^YuO7v7;f1D}0tILL@g+C2rAy zW&<_<5jHruED^~hn(?W@jOjcj)2>PBSdUzSavb9Y`lj3OKA7i6efIgQr0%5E&M0;o z4i2(GWQzFezdst3<{OEf(~MW_UXsiuP=xj^-{D26XY*G$oblyY-QI!@zU8>`fTnlN zISwXm*_}JatMY;dkq8SMsaB4i%;8CL4?$n4X^gI+DwA zhw^6RN5eKjU^=HEp@fgd^6fPv3-u1Gym$gzy(KoKB8#pQSXcVHL@u#?f(cL^j z3y4QbdLOu*8)esZWO^9Kmjtj;pvXG=K%lt3ZRglz7 zeWm>K4=as3T>AO$G4Xm zrm@udQpG@RJnjtyjgIPs(v|<+Yg!8p!hihMr})z}K7*jh5%qLP02O$y=Z@af48sq( zEiyCF**PvB;0Nrz2Aha9fD}%B`NES_iObRTdhxs&%b@C=kXs(FrSLKODCO#Cka2&> zP^6ZB#Js3^JCf(YdZ4S$H~qdEo55|ezS<^{I67((57%wnjyDU3bCWaPPWWpbYi=e< z#`ZYh*6U{Gg|={f{d?PVQO<^9Opdy`huIiJqT0Uc8`U~^s{Lf+V(&U-W?pmAy%}lY zCB+olvH6Oxdg!U7m}Sq0bi zBFEJJU4%sX(zxBfZiQoGyqw5(5>ekfb} z#@?*;&?Q3ro_d7YK`UXCnVH!Nn6l!vNSnSm<&ZGBfs0&{uKrs2i1#{dVkWs8XG*;C z$zCo&iJ8bH)~&@F)kdw`>9!_Ce``rkZO`Rv5*TotEa(~n`?uEVKjh4^BMwF%7%UBV zPgYV+jefds28^1*#puEmf6ueu-CXDo=O#8wdr;rrwhxmm2mcdKxc|Nczr0U4k(0$6FiJ9f)q2evZ>j~v?3ESG?Mr!ywK5!&Z6oIKJAr5B!)0LyzmYSlUm zc?PrI81Pi7TG6aZNukoqKVPlBy&I04vy2MO%X4acx&L_7Vn-e* z@!lmX!qFehD5t9o%dZPkh@3v@>zgzoF9$Dh4>yn9Zv1h)>Duj^)xYEFv#z@1=3P6- z&z8yz3H$qqWg|^`8M;01ILzH?SpC5(J`VWZm-5$UjNAokB1p*#u+q|ItW&W;R{!wR z?a@wF7wDbwIhIA|PDcc`^YO?Mozt#Y52f7nFH`7GE8LCI8r_+Zp8WZ%jX7A7ijL*( zLN1%M2(#h=spN=WE!VGQ5BHBM*+Vhoq)R8LYBZ9chH{Wkm8!6Mo*%*^=Z zX4#ecHm0z)V~H*xe&z(7{G?AKK&u+rtt#kMz;-6$5poL;i^D*JDmVT)x`kU`_62I3 zTBew&36s*+@9nQBRQ^?2^U)vi&C+|<8;++|y8h(+yi$p=+I>{*wyvOZ>@?4gz^HXa zF|%!!KHZ$9>)N9C*PK1ZvY-)r-^v*QtL~MZ{#?9E++k{S-Yj$JV>QenVU~4-KI+Mb zf6li4L#z%f>2zm!i&dJ_L?NDJ#TaU#!y> z#^}v#z9O2hNV+D=mrjE!^LM{)VAwmPrb6$oIi@NEqbo97WUkNR^1Q6A?ygn6KulbB z8~Jo^4S7|8PAR04QPCoU#qx9M_9`yjC-=K!7H?92TJK1039hejq!y)vU-;oQwP@tH zFRj$Y1_uRNRrp+0CmRN5WIV-FDNH!WRPa$ZFPPtssNT<(SwgJV*L7oE2v+=QCCBYu z)}IIjgk~{atVQz9Ul6qv+e11B`$^Yw1Y3)3`*k4vMgTwHpR35ECPitLZ)f=rocX(A z$&@^vV_oiRX!LqcEOWHWStYr#BaxgB(dAt24l9)+4bv+;?MQr>%+DFe*3rj~^hyqY z;b-mx`MOqCY5jfrhQ)^lx7qWbwS^)$SGjeB`SUz!sXITEQJC=8-rxCuftBd$!UmMO z;7uJJGg2<||1q?0p|)+2Y4kpjb4$KS__SljYK5Q7w3*)SW3ZMW3=Dhj+KK25E zCA!8}il*=izwm9pcNkFwHCqoZ@O?FV&kjeng7qht=T4HM@$A0{>K5CZ+H;wLJo9Be z_Zh8X<)s8T{rDxiq`+I-_{9@EbbXt7=T1J0z+~Pdi-NARaPdm0;}RXS_inp4sYxtm zv9mwLQBR!R>9t^rD%7Kw`sv(SykK9m`a#c#xQmr_#GTKw`i-Z&LK>zW>6o%}uc1qF zU@tiAV6(!Y6XiYuMy)&#@AUO_?z^$E>@Q!wzY3(KCKM4q#rm8e82zdgxZVQ;XOEU4 zp9h!hydAIK#A{`O(bf3ko_I?WH|k1@P9{j+-IQ_%O<%zS`-E>demr{c*Or?eywJ35 zmI2pxRpczN!H`cBoDpRb5;5tTtn%!pMc8kUS7AdpYC z#^n_7^SDXaY@BL?==HQfVfI(Fw=E=J>xx`{4AL$n24@Q41z$hKEuTqoXV`Dq=843p-LNcYMZk-%7!Mr`h_aLCWg$W1# z`y#lS@#pIY8bw1J@`_JcG}B4-%9ut}M*U;#hyiwMnf}DYuW(iWqdORc`21SbTN6Q$L@!kLY zyX8r=xpozDPevuKO)mfN@?tX%u3;B}?nx@Ct=y;jrJmDXn+2(@EHX$m4ZF(myCO!q zR>S|j^Ue>^>aqk}oQnDX=XoCf7eA22kExoiP8Wrm;l>-4BhFi_Up>JA{aZ@Wj|Nu1 zji%tTyf_0fPV^xV4uP9=ZRa^aNT9abFtj;veKx)Kw?XTPpxRY7n6z;$rX{7Y1cWp* ziYnW2FwoInE+ltBIfD-UVasWTW$Qm^haxdfL-&sx9_#7pt|gM%u0&)#^4O}SmPz*B z-KbjH7TL3p-;vl~2s#c-$9Qwh_nkevXNxTvU#4C0VRD*J&HRf51vf#;&r8IMc2PA~ zfNey$8hft0R=deg6>arV*5E2oyF17+2b01OtV(Wz$N~mVO93GrW{jiJr!29rO;xH} zp4or9cZ;>nj!sTy;V^5>Ni8+Tr(NAYR|;%ZrDI_UK`bN^JrR#a)XHGB)WpgZ+&P6fcUx-I03I@M8daa<#RrN2n>3yH}Vw^og5c)Ve@e!83}PkQir*_kPiS^SXC0CDRu)rYSZ}O8ZY7iU_45rLRxH0ojx9tRiP)*<%d=c zx(z}`twaYus-;qrq<)tDjY?GXXUALEHz%;aB>S$9r%%&96kBe$ryq79Q#WrsxnZN9 zQAF3mM&zw}CHa%WHRf8J(y(j;>vJ3kd~Z4b`+@q+uJoGPOu0u)Oo5Q*JjmW<=mM?S ziu24_X^2qwJ*8@XIr2-X!a;F(c2bezyZv~o``h?@E6&u*0V{WgAGT0U`wVQH;Cw^ZZE!qVSvX0)F-X3 z(k<1p|D<>3s9XEy-$ld@7567jabtxN+t9O};Bq(o-;Q0lf-jWM6h^*w=pFxEc)r>( zHzLtxP^z{0?rr;@@ma=zM_`0$q>=b7=7tHjZ2#^Ns|Tp#z@kRc2y6)Q0WGkZAwzV&v;!S@?m^vQ^7hEdI$$; z{8GbKSvx{XmN8lTZFrRA`)~$k?a|3f2%N}207L#V(PatCd&r0AU*K6A*l&N1Hj48t zC2sxmi4qZJRAGPL#7DHt(BR20lc#Isstn@{_SS(o;w?k8@n{faP0e|FaJ@_6uS%d~IC?rGq)#{fC>nMF&iatH@As=l%DR5VFqGNJ{H--ow!TZ3t0QS{bS+c^EIf7x@zU}Wl@^@i}R z>!7%__MB9gW7GO`RJkr@FddH%b4N}&lSAzqN_sAyP9(J@+v@9mnA*yy_US~46SwO8 z6B6)yw6z(#H%|>Y;otw^>aD|~?7paB83q`72I(GJ8l{x(PC-%{QE8>SyOEGaP!Oag zq#G0@L5a?C@5!^*{}9IweJ#`L(iDVfft@f+od$l!A5+F6}^bh=pe_hGXh~T}$cHjc;9- z)t|jxme3|9De!$Ks!+{W*bTNi?xS? zhkgyTsi`|iG5(bq_dTC571FbPa0u9fkM^H`*s;87ZVzf8o@YwP%~hbS6Wf^L?l=-@ zUuPnOkL1wF?=wDl@HqR@XV{#l8}KB;mzw^#H=yzF6~)pm9=;!5{FvlwrSg%RzKv>x zbe@Ej;ZY6iPR8prubnk-O?mk+uP_U#0kXIO%n`L}TowkY-EjAfk&b8D z=7Kn{%CqSF&ZIm;E2R=-?(VDbQsw>CJ~M0uCgzm;jYhg%+fIGaZ%GGT%i)5eRYI`! zbPLAEPov)JMTmes?9JIC{TG!U)~=B(l?cHmR?9~8>*GW=?K{`;yua?zky$#xZ%m$; zgki_WcMqq;$yk1&(puZ%BUj0xi$$Nwn*aU_~5(sP=!qAUydZ_R|z*8DEshi{jODs1ha&C+fz@+ zo|rpl_izw=9|)D>Xf5JRYZN7{&MT_854f#~$w0HvH{^1i9(eyoGGo zFMdO34^G-ec7_O=fNDk1K70%xVd$@DyNL?Mvh@lgr~0Vyrv@v46^H6<(xX4D0ZeZB zNLB#m->?@jQLTI;@l$$Mu>W_wH0920g{g!!+(p6e`ALwOR%Q#mhsf{Cz@E@XQreDz zFpd)(=QMC@CXaG-)1Y#>0zFtXS%v~CzRk*4z)$HS9$nuD~0G$n7>0}$h~==*w__}4s+2dk2ydb7jWvDbM%~Q*0_n$YMSp&D4}jD zZC#nC!0KXI`0&DCb5RK}{I|+0$SCjHdp|O0oMX|5H9_v|fxMHdMcM;egWArhM;5>J zIFiWaaV7B=AS4YqzgUS9g5Ca_49`(c9m3w7=6CcSTK-T~IqvIdU((~c9oQ``XLRr+ zCMv4Bu2JRi>~}BbI)EU|faBGI4Gkre8i|bT=w2L;F*ISOm zk84lL5>0W?4v9eV((KE~br*u4(f-<0ECS8Qq_dL!(%iI8EB%vW<4i!?_0AVc(X-GH z(}2xK8I|%q_hrCNKrTFkQ2T|O-k+MxU*@PWPmseN=;V28(-r^uX!1DL)XB3@EZ*gr z1|g{+b*L4<>$a4ZxE#puq@GrpHX-1!RNId8^FiS8O|$hVyZmS4@R zHD;=pqgwok1-c09(~3eVqBi{G5fkJU!>|d};BWmQoj2xN1qFK#m{m{fVYvAdmry1B ziI)sHjW_mUrKn4j*4{ICgU+e*XwdyOc+pLir?t?!ruB;YdjwDX2kZE|_LBAMAffGe zte$@JK#)FN--zQ75nsU=Ze}=bYkYvY*f_bll4Mh~Y;}V@L*hbS15r1e4jDLXWsC27 zy;_zC&yLVo^TCj~u;B!+-14m#jA|tXS6kZ&&Z6z+-eTAI{$ku=&j!hlB%=AIE-Kl2 z1F%T7kurmod)r%wpFrj8Oh9>ASyeTDZE0K5B27T^Xa)R$Ww*~Z{lChLQWBF|WS+K& zQ*9;>OSc<9u2lQ`1SQg{$*4_p?MTF)OLkgJG3ZDfo}b6%(s(ukJn6W+V}jUnas3Hb zm}-uw!E7{FZc)tUfDLj)6V)Zt^nP-p0!s%R5Y3kp`+qcIdNP?y*+7VXYol4APC(@MNz zxR=5mlxTI8WYD&NL&3?{U8r;KAeeKAD^8Vv9;z`Pess{N>UqR;Xy&$+y;1(oa}Sp* znjW=r>@9g$Bcxa@?C%Ofv|L4Jm`A2IrflENaypdK~-4&8zY0j_kK4G7q&_FhD0>3Lx#!3 z=g+T}+(e9`lr=05B!>G6KJ(mLS^aV3f0-mT+SZ2uBHXv?n$PBksP*2$@(?HkTCT~+ z#G*AO{31^LdOSF+!lhpQux${u{<3!QgH~9RBuoX%G*Ch{%d!?C-ZusBx?WfGs5K0X zeQUS1xE!p|b>BwMbF%o!_h)G73V&<*zph7vlXP_Qw^QacpLIyel1@;*uF?OK+Ihy{ zx`1i&+01K~`Oi6CmwmXr2!IE9W;vs5VfAzV|(AY`?RcW_6=o= zjMJTdvd?#zKiuu*-y*fGpO^rn3%-W|vD>R;j;b7KSNbGILaTDPn8rkkGwHMuBZN+c zG1U}`-@C&Pd*yvb+tEws-X}W|#v!QxMTFpfo92B9!M~5XG+w(uEAea?0GV&HXXR)* zzFjSiee?hAL$3a>4_V&&WNh2OsB&S!=XiR;!3XPUa??a{xarP0^Ze*Wk4@{D2OuJ&&!M3#w0^M_SZVO@!NqOiLsC$s2-h zc)b#*obQs7hwZ~LG)NaGg?B#*^?#uo3tw;bx)beo6_ENSjJ51D^=LDXOnLjR{7ha9 z&0z2_nO+OsB-Kh38ISh4?hfvwh(q)(?{&&)tL?*gQRJdtA83NmgZKZn9lv=&Tw3R< z!UI{QGhVfD(jV+EvJ=`~7OwB_cdX;$hVR6M4>PdSP1G)$Z^^jl1pm4~1p!}2+i&aq zbOW^{N%rHV>xVUH(T+aGKi3-bHxoa?ol*iA`9dnnwiYKFYk@W|rL6v!yFA{aH{tqI zOFpZenJ*4B=?i7oZ?<89jey`-$bGa@59qlKvXbjZW-`Ck=uD&Ost5uF!Prp_S~^~+ z>GeEONca^g;Y@?EI4&CCMfzk12xx_v^4nU{A2Q*B8y{I%hw0*NZ^_6)MKk*c#LB*c z8w03w5kPe^L*cYvHg`Hj^*=j-|8`(JMMeWMobz<1kXc`%Jq#PxBQWbAdpPpjv)d}g zYN@ShPWFWywzlDMC&$FZ(eDMf!-t(bXG3ubL;c?+$9O5Vw!3T44;Q@3Rxw8hKdEti z6f^jU1)r#muI+hAOQp8?Qc@z-U3FDC8g|Y_2&*w;89J!6TlgQ*0gYA7pUaBO@O+9O z)Z*M|`Ls(nzv2C7DjY<>|9BM7jE$FTiiXJ6I(li`qqCdQudcpHM>O@AmN#*OzEa~M z_2*yVv58!#v1OeT)}#-`oIm}sKRC|qIc_vAaD577EamV@)-XkVPCdn6^Nl{=>((hc z^J%9)zX&EX_0ftfV+i|cYWg*GGaTe%$6ZhB*rAlnXnxKMybSYxmt0TQ2m7wAIYzMM z+zhhvU{j|8xgirf>89%=RBl2{xc_1;3($kfiSprmDR279^L2;X+1@U`=ME}&ISn2r~G|A+2u|Kc;<+eLti=uz=To@>e`!niVH_vWLC|4*m)$? zig@VP>G})V&RVZpHymagbjSUKi%|S+(P^##Gk?=`~-b z_WfIzq0zBuP2JRF_>M5v_Hlj@xkrh~j)-ZQ5uH0q%_A2uOhdZQ^&0q6eF8HSn*{h@ z`fgjw%$JMtg}g3v1yvySK47#3L?H36%@VFlr2yB6Qqd|5+$K3p?Swj6&)v6gbo+Vq zL()p>CTC}65?aZ5_t8{$M7nmo{^@m)BXI1!=$IxMZUI^KYK>zVv-!xDhVxomEiHp` zQJLQQoWf2k1D0=fb~NkIsl-|m6+-_CQ7K`m3tOSKV0G+lF1?gpTBZcugpbl$+5H70 zW-Ao;!;^|M@^}qw9^_8W@vcJ+q!%l5M8*s~gPdM%>pA-1@*#%SrK+AbaXN$gTHG=2bqW^JS69ttnyGzdBCU-hOSuK4-j~Jqf1so@AF~ zKH)zGlZ78^h5llcH#;-km4|sgQ9(fPQQ}zqd@^ggkN`r&LZv>CHg*9gkxIU65tnGy zo)*R0Myy+$=i%=N9ynhPDu@xW_xzQ&{s2}?IxiJ^#;mpEIYE?jHE4rfNq!Js@9-oC z*?c#v`HP0JgiFMZ>O-!QaJ&JI?{Y8aOzgyKm6+w%kGq007v680-bI9%|CBM8xtNz| zH1Z7FTYDIIaTM^FoH8L?_JEi#b$R8ys*!=xRIeM*D4IWczrvxto=s*5BA49iWA`m_^hThW{ATMZ*&#GdrB8Zde;n>4WGqpphs` zjo-~8mu66EE1Mp$TBMAKm-+M4M`-QPNJeFuyZJ9{#qQ3p@n(zMl+jzE9 zBaQBu)1y}9Yy7l3ePPeEc(}RMmxP379NbYfaaBm6X^P9fy1dM!4^K+?Iv9FS|Wjvmf5V7a63C#3Qa2g z_iIdtOc$(9=}yt#;vbDcjy=zm*OLGQZ34Vio`-9#Ul?N>#(`4cHI=jer{dz`m$H-M zhc_dOWFnLNSb_7RJ&;g?b z%&(v|SbZz3Q;mC0@^`3Jr}hd2YZsYdKysmwcK`ATk&oUk+eVwBaVG7Z1Qn?PL|X3Fy331zZo_!G^EgzMYT_R5qCc320}VX+-%^%(IHCaJz^8k19<&t)_yR22?eGu4&9YkzW(WPYuM; zqBm#DW)r``pceLcxUF{|cP2Vu86&zWso(1HK=to@9UfKyQ*ckVrhCwx@n6Z^yx$2-1Guy>#YhMbE5rY)@iVaT?n)8fke-*d5lJ z-%v~rjNo8|gbKh=@?{LCt4!U0EQE*xRn34|449eJ2NRl?o3Fqa^!k zgIv&s0LDcax}Vukh@zn(rN>VR){IPX-$oeHWE*j4KgbqTSX5M+CZjGn`A!b^D~Uzx zP7n@;QF9AF%@Iux-qo6Myn0H8lH0$<0Y#}j#ExoV{rNuI zk>Gj8^mM%k_LJFHxGZmU>j!=s-xZdpWu6vs@2ws1uddTy!$!+RNoF)$lKHh^XM$)2 zu=_Sc)G5!mfsRbS$&Cw?RxS?f`cMk~=LrW;1Y(7n^nAe@asq|V5`*6u*(*{@EX5z` zcYTqs5Kl`)tAd{RqJY(DHCE5!Dq_FE;lwpIC$!=YoA~1xi56EeLoJKThNa{U<%ctM z^pLlKRl*w+l&@obl1iH)G1^9d)80G2^yaD43`j|`$lxhs`T?KtXO?{i_&*}m`kXG z1!5|;XTUm}zB2we*`5wZAv7&(h@ZglloU~jMvLBBtuh3o_c8^lI3~*VpQ*4;e&L<+ zkiM5$eW6>fu8`sHw^*s$7ubo+p~72q5p{{*ou-O2ouqD~ODfprRps)EKf(MxSEXmN z>M4EqGEV~>R)iw@($K_4g}gAq57imu6TqR*I!hIkoGciB0zM!q#akW_xSN2MfsmlU z^Xkl*#G(O=X?i|Y&78siVyRqBNvxL1>1e`qe|!*^FS{8=lY+i#lOUxu-q&_hf`dJ{ z+1Jy96c(Nw)v*2o=fww|Th%d=A8>Hx!X|;jPvhJ=mM#Qn$mT`mpf5bGcR9SfA+UJW zC2D%=5_{m@FoLYK+YScIntuMPb3^D>sun#3?VSoc!D8; z$iaxi@uI#r|748s^cxw42~|YO?+53mdA3`E+0CEN%x7-Ft;CMr7}9fJ z`{VquH^_=e>ThY2w>(0vM$95}GvyhNPU}m1bKK`VH|API-W3#V*6&xlA{Q9I=QoD3 zl!9W!DOGauBDW06dSyDnId1>XY;Gp1z&W zS~xvI>JuW#bB-ks1EJ0dyaiuAMwy*Vi#@)be*FZxn5yjY>0+1Xh150NW1(e!xf6Z2 zz+E?I7E_c){Ejb+Sd{aHm6$N!xP5g>n_(A@aBimN5I)dYf0DGDDyG{VXmh$KK9c>_&KVmmx&IlW)}B zJ17E%WckbXA_~4|4)MwU`t_^UC~Yc_sl!C6NvFlznu3S?YxgKOGU`0A1x0U!**1`ZFsA4dn!GMxfLhRXMca6kSy426VsCIv>cDE zz50C$vs0apsF!HK;K`oasNAQ3bxE+*ft7Y}tdt|qi zdv#&40a(E|3z18RrG!+^C%iZez`%21bPDLPi~I|jrQ6f6g&9%B?d#J@QW>{o@@mUI zg3_GbE#&ZkKAtBScc-gp_IfwvvpP(N6)3A+X%EyuRx1J(<{#vE+PJ9wDjqLi!u$Oj zd3Aqfj+xg-5iR3ZZ{d6Qz*Ii-iaXp&N=g8nE@~WMjICvf+EWB3Wz!5m;etdWX{X9{ z*r9{c0Tr=-`UsZmPRl!zaQgDA{0c|(RScg7^p*SfaW>I!pV0+ontp-0XI;>WX_+N| zCA;~mpC(K)fp^JhSZ4<)Lu%S4}u)to)g`YRq=@PDwJ`iWQy>us&Q?UHy zKL3t_0{uNKFichwmw}Iu55Q)Hajsph`cVv`h9xh?J~$K`l)xct%dECih zLc$P?Zv=S90>6?eTBQPZ4UC0N|H=460z|-th!S9mY*hf6)WpE&Se}Rjc8;q1eAr|>Mlpa}OwZ5%lgv%yHyboWl98nyIozE$ z5kYuo>e%q^h;;uuxoFKm3!kLphdC$n;pMs*&%+*+%<+dTjxEF$+lkYE6ZN5E9slh|It?A zV+tfHBBT>8Tb?epOLf-}~+C5DKrN=DN+<023U0oom3kBP!R((N43PuNJWu7L?21#ML#OhR(JIKm+%!LF{Z zjxWqsI>jHX=03uZYui*W-lE`+b~4y=z7UWu-;<8oMT`ImY}aRj=c>`j4rB*xQ!hyU ze0sEzH~XNMWPv=$c|?NRF%N&ulhJso?a9AsZ1c15;hMMqh38D@8 z+mu)*<(#>XTX+^XWGo!f&63)|L7G2nai29G)=I3(KAS5OsFv`l1Ox7(6M$ie z6fZaR%dU)J{Ok~5!h*`UUzY%kBMQ4s^0fz^`p_UFjsbC^#sAmX0%bP?R-CN$RApZc z!Wp)*vO+H|KDR~ypqupx?mqkuZ$1ixCli;pivFs(`%GbORJN{P28kg#ETDiX!dAJK z&I?5KWA1-l)25PsyG!2R19|E?T&Rglf2LcM2m{c=Ds)T0Q7!=X}xKH6DM-os( z$F6WfMtXWl<~u8h%_NRO)KX&+>&!?8Jf4CoxxQy90lq}`Vva@0m^c49U zMif`FHEn_|ynqd^YLB3jpMZBs{=ceAz~Tbr!TMmZXB-$3>fmVf`FWsJFlHp|Ra}G* z>KlK8a>~JHhtSY5^MC`|zhVpE+d%=0$dI1+((*}R{eqaf%oqT z8Cmms2#16^b3I3hyx%JGVFivc7wuoB*(^z5NC?}FK)RO}0wk6%M%_zXnXNKptg3^k zP!vA-bnO)Q^9bmtNc!enFc)~T#ajrasH&X?Mq=G_X}&}d{Nw;GM967sg*6dvsrgCM zR?0fCL6R1}#qtgSwl#g^q8_~EO*@ZL*v97+rH5-ZUzP(87wMNOLqdM6i!Xf&atl+W z^Qwq=qv-6?7CO>J;mNP#YF~~kciLubv`_kM=v`eF%rBcV+fvuP6k*tN8LRSGSO0&SIyZ3VF@%Qc|Jgrs<7!GW2 zmu%YUaN|e_J(dP%ZgZkS0odKg3MzVh`UkZ-DYmnPJVz@8vixtC%Q@aV9l-y_dAoMv z(IA*G!pa2(*L>!$&xgC5^Q z!EY_Wf&da-&m;ZU{dA#jiHm^h4WQOx(*!G2cgKvrI!fs<3!Gw6T7f?N50g8?1r7B5(r2Z|KdlDa z7L@n8+G|-K|Ah;-;Ift{${w8FE+FeERtgAB05IAra}fqytTA3p3YgA)9n@O``$_-K zqD}j^Z_3t+>oYvsgKF(;D2p8nV0y4HIu1s)>l8T4!T8*7l{P~pWmxj;aln9WFyu{l zg2itaNFWA2`(Bz3MX>@_D(H5wc`xxfwUru9{t z5an}$uK8XWxqu6O75%E}^vnc$hLxvcVIvzNU-C?ZBWUm2RR9>5f@Fx`acTHm^$QvU z>Ccx5*KwfE5dz#bu))>Fneids6s0ZJmwE$d&9h%{|^R&ycRsbzTX8OQK zT+ilv2D7wcmjs>_VJL9W**j)qWyJzhrn&(<{`0W03{yp))5z+tyZ9+m0e33Bj$ocM zJ6exJ@VDKFIDdy&Ao~8nF&)TTGv8PRvZ9Wb~1yXvP2YcRA5L?ufAF&SCu_Gk@xZ5&m1;}#j2UGr|d6RKyI?XjSgJRPUrpGD9<_}ih#p)zwq_*Brp*J z1gyy(pSERhV=1Y?`@Gdy5u}nXz+!Wh2^hPCNc!GguuUbE0cBEo&RAKkQm2JMfkm9> z)lODQN@#_j2aS=oM4w8E(PI2x^dY~!=$;yq?Ge!ys-4^E>y62(f`^nmWzTiM6THxw z=KM|sklIHwJI*c3xJ`@Nb zI@;%Gvaf+RLGs@0M@FrX!#32^-&mc4*_Jn{xPcd_^#1x(%HF6w%!M}l@?x`sV?Vbm z|Dg8qKWOeyH5LL3e`~(@P5aJh8436?2_M0|`HX%ch8$S<4UPZ=7eL*^Y5p++-r@>Q zx=2h0DlB*$-T@RF7NKw&u=sb5n36IooX(GYe}BJ@;|-`j&`}F|N9Ut9EIm=uT9;XV zkS0i1-=@YB1J;gr8>sJg`!aL0AA+JW2r~w3_>zHN`<(o70bA!{&7@@rz5=zsFgG^= zDsmsyY{^}t+Mj+66V|1i0UL0A;C9#hd$&ztSF4~MsT2du#u#HSZU^V+uKI=_Y<;y< zxiiZ3|6T-Xrhy0Q@n?USFSkc5`s1=i_6}2X!Q}X8Gibi2*=t!$*^llVCs5Dx)ihnd zgnvbZ1>HwZ*9Rb~&fw{k+=V=2-dnNp@7c(%FgMeUn`Pm~Rcy~`bzeI9=wH*6!$}Om z54|JdRMVkAMF?h>e!yEiInfA#d%O5}zkSa}L`xgDvGIIiygp8U04oxK*j#k z(V7{#unGN#`S98Bq@|=pJ~tmKPkbV9AHuON7TA^R1CdZJ$%aV~>pWrL5GMCDH*a{= zQ6I7W<4Yo9KYRA+@zDcC-!+Pu0>2tvamL}`Zv#ACc`7_9R)6Z~-CiA#j`XBnZf-gwog&%7|O){khNnmFapo-}wH62fDTljEp^OHc5Vo&-le5Mr>I>;x2dlimM+8y641FIwm`L z`kzd_{(fS8vIqG@LM!tR{_rC5s{kev&zmW{t|r;_bKi9gmYn|6ltZZlW{0@0W^~ zFKBPH>t=U&ZvUnQ6|bo9djG&@2%2PO#-*Y{E1<7-oJZNH>VbVh4do01<05gk?ho@Q zqeQ+YNS5arV6X5~Lau_051}FGGW>K^9eVx z(hL8Q@S<*gV0lYunn}=$Ls~Lq_rSHz#P=#>6qdV_wktRFJMftrwNvK7F3XB3 z3> zikupOFdt)^ho3gJo<{a?8ZksTWNP72WM>EGWs4v@4~Unpt~HG@Ry5<%)sAL7r~K#S zfXnysFu1t0P}SL3v6UQhp$R%E$>%sHYBybnzh4kEl5fR>NlYWFN4$i`+%*&J#Cc>J zx>QWtu)f6lrpW@#nc3Z`{A>*K2)u*KVE*PzPoBjStu94PKZ@Rqv)=*ZNZ{i4);4O$K{~(3)`00w3{-Nca*gMK7)5U8O!No9HikR%uJFk`me6 zG!yB*{pA&}&2f{Y*#DJr_OQycjxX~1cg%O8w2~xrbf%dlD?+p^?H2vs>l(82GonXz zi|-rXV9w$BEI$04&9Bvx?A@TG?TZe0=ZffmRi{XhX0ZWU&@Y?iO}sJ2*l7+%5ut59 zLBT~oG?fX_zN2Tnb1z*yo1H8LClFH$^xlwW>=2-sbFc!q9_(df77xF-##kAI`OE5h)0A9OiICdu zn>YX2+A~U>G0ulmLxzCn{Qtm8em2N2S$IqE6}=O%;`F)Pu4j)K1hOqT=qSo?4`o&M z9AR~Ram?=AVlBfAI!7o6Gf|Cz;epRTbvV;SG19b&>=n!jPsWM|t4qtAm`gX%+<2}_O^;mRU**U=Si&WkNC8D5YTKdOh$HR5GfL{H z{GdzH&@h7%A3;Th`%em^17gqvB4D(-A^2avN4i}EdN#Adi#acP1Sj${4&?JYQP^vd z%E!1(bj9&Qi#v?;upzYKkcSwVUJL#D?hTPCHZAzN+!asys=daTsL~GyualXsC7!e^ zoXVde_a8S2bv;l4?s^~aW9#te^dnaRIBI*aBr|7fVw9&i-E=j^VbO563#)Y5Gp(T^ zUE;Z|I<6&iyBu16e-(h_`O_%@lG6aVNTnKnfU&^9b0`lGA&B%wt-l?hgA>}U6i{Ic zlnVM_V3V!}+|mf_qr@;DQb-PKUT6ZavqziviSFK>=6lnO$*FRW`Kz&Veoa`*{-fW7 zR3(^Z!UwcfpJZCS!zF(otm^N_V>vk;lJeu?%K1%ExX?U=SmyZQe4nmARcEw9Q4aoL zlGJcBZ_H@{FslY+zv{Ite&nU(>e7Bi>e)K)T$X*#joYBYiI1Y6h^!6wEn?Aj=XElK z<1cAut0WUSUH9Vu|Gp2{rJ$VJd6iW8O8fW2#hU+$X#?!NU}tspIAy2w+}wD;JP266 zJiv{wB~ny6{s5fhjpxq){Yz1mybQQ>CcDv@*gN-KsiQwWOy^kd@~R<4SJw&ZJfFV$ zpWp2@^?Z+$OF}~vySL{wEU5mn;w~C#uIX8y#9nu%BZGm3(?sO^EB*goZbn10jWtWu zlL&Z56)&P$%)A5rxF5X3>&gdP3pbX-Ib0IAF*N=cxaCfrwrAvJZDp1U#`Ukhc)H0O zT6lpZDZMqiFi^VP6H*>QKQzH^3tIB@&_SsHx+Kp+O=st-jB5BhIRvR4kn#-w&vrv?5E+fUlo(X@Vf%0Cg_n!sYtrS#Ka`4>6+Q4)ZYd$&!tFK zU|zrjiZ;@B+L8aA^oC5378t10#$Fj)lmUVnz>SdH+(W-D-s;6eJrcORZ+C%rL#AU3 z4cVw!#vP8io?e!nV?xPx`+BpL`5l3wR6v#H206smQevodyD0Q*&F?R9&ln3~+*QjZ zf|4SR)b}DQx`K-#!t+Ae5Y;4D$JPgKf+``Q2vRw)>DDhL>*%5UXtvT3CUszd>e1!| zp+{k|zoA7xIh%X$AXEInQlyQk&q9xOVYYGctxXPE-*W4IFI5kEVe6w}f@uw6hWS4a*w}Q*jzqlX$$B~#OiW~lG|9Yz@spGk3l0hjhulL2p!_dEBqu#3 zgUlh@!%jOpr3D(N=G)e~-nttijjH6^wTZ#gqs&&Gq$F!gbTeK~o!D^Xe+?gWHt=SSYc=99+^z5L*i0D}{qg2Cx zn0*ejnF^|w%URtS`dv$2opg}=zHMKyb0cTGq=d-R&##|#U%bK9HpXjPSM*}oKM14z zzn;(#!Se;zNcfL-5q-DeQ|vcnX=Ww^Pa3%Sf36L!=q4G_d*Yk4K1*ptI32vc!6hK5 z19>_<*h-tw&v!b%+&e>x+`FfQCs}TJ^qZ%l?c2SqJY(FJFk``=irAG}DKZpJFb&!i z8@xbQfXG=4rh|6U*+!MQ3T#n)-5Y6YDra|+Jv0u15v~E~M-EtJ$ieorcal?4tQaPg zL#KC<+uxr6Id}*Jbb4bJ{pwL()vk-uI@BU)Az@}Kp=9qS&hNsNPpVL!#T{65#C(OV zA_IMOJktHQHSRPETDnH=@5!Wb;K~~tNUQxc94-VFJ?wE4o(R2d4m5e7Jekax&M~#jaXobOArR>5YuI z*cOs~_>k>oykt$ycim#IE~rlF6MXP_m80IYuDxUCW`J^H!*MPNsD%T7{UJNz)!Y5G zpfv7B;D(M0ut7=!s&vC=Cdok}HiQMk;@jL`vJpxFpv6J8Tx&S%Dc@p9M2`iOm$$`i zynwOAEG=4qBajvqz@VuJ<@}1m?(;xB+dHSmwSa?dg)P4>D#x4&P&0FYu|-5g@V>Dv zj@e-Tg~U@1dt-*-xlx(|+aHMd~^jH0vtIrg%b{K!-$9A}T8H4Nc zxV=kV!BF%6dI2ceMoiJq>Ll<@S)Vl~vsT72c|b(1b>jp(W!fsi_I{dyA>O^Vn~rcC2BN zNjHfm<jcW0uakQ&>+Dm?TU8Wbh7|@dM0j>#;w|XR7@PdH(ab z`;X1^Lo_X)D#7&<#)P9J{h*2gnv-1;h5_kN7}*$}sE<)(!d3cpvMG~PvD%O%8OKlF zU#M5s!-Ob@c({oHXpa;OjKrY@JxELSLOG`46tm}JA7Y7+4u&mpF!+N3<&bp6jUt9T znDJLwx)rQ!$TfcPt$=+Ja;9K9+3_C5(py&}qAyPv3Yjz~+}R=A3<(|wOmn*<*b`si z5=JXEbnl@Vk-zH!qUtGld)lVIRP_pg-pBx71J6 zq!3P2&^IvW%n~*oc~z-LvynhS9iHdtI^>%w6$w}2pIL4)a1=%Fb_ujL4A5WKjD*|D z9@V2B@FOh!n;rEjzXuD1Nv2p>p_JD9xY#Pf=9j(mx?yC(lDzSJ5sVlUZB#s0t42`1 zKaXy~>W4U}9^RXq7hiAr$JXF(@vVk>w)E;km2n~EMD#4QsMo)$(NG}*I_>2!+%|Bb zeY~CX$1D{ugEf$VMQqS@75*M`PqEEo|J@?Q77THnY;@)LUGErg<~;tA;ti}ywqT`= zm4$`!iHM7Cy~n=A2uVyqo@@l8%TW$^YBtCTVqq@P(oRz|L9IUTB=@JtEfj6Z0l3dw zXDEm1zssMuM}mLOrE`?QupkfnAqU;UrZ6_#I#5?Rs4D4eDv{|p$&@)UW?$Ypa(Yw56rmP!^p0VH z8ttW~wnsaLgNqA4=r7o&!L=B=ALhhaOfpKHsc!$S#ShG+eYOFUYAJ$w5d3?ir&{*{ zI$!6+%1MXVSUPiyzFvzVLgr|Np1=BogM25eDBgb*{%`p);FT;AL%9-;gR$eKdJ3TD z6H|kaD_Tf413^={U-)GAm149(Y=)A;D1#7UeIeX;&iw2?D^YyB2eq#e!K-LdTb3v+ za8RSLYZLw2*4?LfDEzKt?h#REyp!9=sWo#Iw-z)d;BhBQ!KLfRt1=_Oas?Q|cj{EKw(8 z`CC<@fQq!$_qlQXx<#_Ah=(D?QLb`C&SJN4$ED%Mi&?5X!E3^zfe;c0LoiEom*r$7(myM40lA!7p{cj-J@2nGwEeL{%npLrlts zSbAvRMT(SGnFM|Y?_RBb+e7rQX<1s+)2FZcgysW^us&7z@S^<rRE{_yrE z7{xMrm|q}495@gaAb^y1M{c=;X06aC(kz-uH-iVu9g$y@gDN9j;>Yu4uw>45YlsMVOw`Rl)BAo8$;&&kRN|)#B@TQi*`5S{ z2pWy~7&`BjNx)a%4pDoDY_`|t*xlQjhZ8TwSI0O0I zi6O!lP|;j!?)uy@#@3%BL(smYlfFsu%PxL0{Og<7nBxrHzMD#~KY-{d7k}sUo(^wp zbaYpVZfVSQR7-t{5vOM3|o2H2PvK4hbhr-Hznh zdAh(~F2CmkzWn~xqn|_`FbH*4SuJx}jR`qX_l3cA8TbV~!2!&ufU(G1L`CrUarkn! zQk3RlRE9{Z)U2fe2+t&Fr}6>U=U_x!|F@w|HM;mNjfYf-7`x23etk_WLjsMYw_i?} zGf$5#z9RRgcX}pI$F3U~U7N;KuS}h6@F>n8854H-vJsCz&j>-*t^ED{b^kiev;WAt z2Z@s8qhDaBc;`?Rm4BampM>dTd3m|Y`_y51*Q!_PjhaC~`0K2S7iZsqeYV-JrxNYc z1D8av^Wr^mP%%(h?S;4)Et+~caLVBOBoq`JjQji{2lmpw?k5a3Yght2U&G!8YI85R zXLac}gPdZ-h+#-!L}TA83gy^h*c)Mpao3*YH?nn!fERxTMhPMb4v&nTL|kYOM7{X` zZ1d*KahgD%`QAdmIr?HPBQ}qEG`uGilKnI+B@dBok3YnWol#1G(@l&9E(<3cs4-Gz zgS1quK%UL0?vn`F`=4vylkldRUq47?^$9jLu7u@}AE>NeECn~Ua@0<_-g{P*M8Sir@@z!dk#zh3*jGDgI* z#kbT}dGO1PWdmgU=YqZYeCN3Ian`wEsqd&$e^Lk9u(a$hQ2|vw{oc$>6Yom9!gFMJ zfe3CJJyF$Dx{eibcai9lQxeppquwB1vK>KT(b)4&;f{oaL_C|ui@`!>ii59>HoOmP znHdsR;ZZ$vDNdiRgVP_GHFkM;9e$GpM~b6>ww9PSK+;WJu#RRntnjtcWX+3s=l=U@ z9DqTy4^n%Sti0iJr)jjs+ntat_L&yy*9E?lYR@1BR74p?Ma9u()yJqKI1qFvG9i?T zY$?q;emQ%_UVSV^{>}}_49Vfn?e`bPv6?=x=9^i|h?x_KnAaT)D-;!t&mSIHh&{8>l@oHYV3xD5u zakk8jlx}VGj~r{D%s+#lxvn#8-To1uNo*bXqe4gUCyJ{4mX1=_VFeu6|7|I7Z(ySt zSw%GV928PQRqwA{zQ65?3qIr(sb4TaUUoD8y0sRP{c=X?v9?d9S!E$N%wD*5k_6Xe zSV=M)3nxaKfD7kRM<+f|u)sW7D9LKOwzlcSHO;3KA1;q-7t`SjU_#jC#0fnJN4b0(ftp*6Tdr-xYE%8dK+Z-W$m1e<*-+Ny< zYwx{I>F_xDKvXuK)xhJ&mqFjN6YYN#*LfnpykAM{;Yh~VlKJ{C(jCBLcEu24}t8KHke! zA-t(+Fk1M%Rm8f^F7vuhWP(bVI-L%bno&|EA&}>&_h8G_jnP4tEk|DEh{N4JP?(sd z?!_1;;6%xNd9{kikqAjV3i_82IRv2~O7mIy`xDdC(`v8YPocKtl4O7^j8MhjVa{bH z_e*C!Jp0^}tCFO|)fd+FJC=V)l_O5{uZXb>{X;Q|)3%2=^(n`W>$OdB6X#yEA7_ zPgiwywQDzHqp#k2w*LSB@G5~49tRbd8WG*YJ>KUs4V8z_5?TrzrcYxh^M3Xs-d)bh z!h#sc1q69!H|j7@y4}JTJ(vLK3xOdw`$kci_^l47_8#5+G180ezO&yLK7Rdtht%s| z*I9s%vPh{^yE~QWdlr7VGt3AdkBa~DzQLyYZ?cn>xtniMOu+=0aBq9$g9@B@z{pCU?PMjqHy)h7n zsj5t6A!IA(5rNkWtX2liCd6GBccI5%HKZ~I6#xhG zfd$w{`O5{`F4hf_*;x&$=ZQn}jDgMHAtehBu!0)PNebYyUC#)1VDCQqkiJVZ$UwW~ zz9I*;Y4i3+wsI9a_KW+IvxV3+BP7)9u>r{JsJ%bg?r5@VkFCyO64uVTo;i@mD*nGX z@g6RoC`37e{j6_J+kb2`S~hkn5A(bw0fP6@#9t)+%{-t2+z z#xU*lhX{Go^+FuM7^`X52bL4@0YaW4c<>4Ke#`L|#x{H{^fx{|?*^v7^Ivkj=^bg^ zB@bitZP5fK1}JX(N|ws&UicD7-%`C|oU+l$9f|I%~^E=k>g$d%aqP^3FcZgp&(o zmG-Rf4GX*IgQ*2li4XxMAgSG_$p>9ILhaMu0(Pe%I}%oUt=b7>=1I4Q{}6$BiRyQn z|ADJSNGJsg(}&9)%ZXfw!2KV%k|$)nfFYtUw2LOGur;^H`;EQ22y9@WcS*8UEjeHp}tS;*u(;^-!OW} zwLMkQ>9n8}AcLtsfM9f6lcgzoNZ`8`^U%Jnm?YT>{A*-{?2Z1wa}6{Ead8J-w>4LipYn5=e@G z0t}B22h!w}&lEjWV%!d^QCt17xTRPmiIt~dgwA|itN=y=2n_PN_*#IYf@J(3N0lrI z2fa%J;S9`n>b_)UVE7!4##5z@p@G$|Y$*Y;475rAOii`4q>Lrv!vG+^2ekDqkalzy zpjFHGI=&6mV=#+_pb%RhQz{mr$1)hw50%S>RA-a8uS0Y%K3rGo&A)6Z$tI3FI$0Q$ z$e@02I+;}oj@ZLh3r8ETl3)(Vpb*XL{4sv__ss})k#f+SW$m&uya3yCtI|jbpT%{C zI9V|jfWcpl0ZAhnP?~4|l&V<0SywH1Z3BoCf2+ z|A^=;q7=1h2@ZzZT7I7hho9^=yB%tF_^z%^pi!J*PNt@_zg(db(JV z$a9DI39~W2?fKbu*Y#%=k7xT8${`YwchYx6p7UoSQ$`pdX6dc> z5cPa%HpfwTM=-v&b|P0CIqK9ClYi#aI92*L^#HcYgEmsEOea2sF-~X2s*-EpAag6LBKH(*o0mU_6)+X<4=@)RXIO<9EY<4engKxJEe~KsL*(IxrvQ>Q zTzb&2kxG~K9wm4ghKvAJpW7>Or0ZMf)InCNtX~;C6yKIZtQ`&B*SYp* zGSh<$vOyMY*myhaAhR*0afkY)@;$CceZUpgt)8-Ad^%^jxU;f@FwW|ok`7MYDTxD_ zqSu?2vUful2&qV}n52~+lu&&A^L{v74%gy8u<%($oxGy2o>p%a6L4c`^N6Mov5;9}|(|fpBU*^QEy0MxIjwFB>%UWK#6#QE0 z#k4m*GG}3u*wk@}nGzo({#~8>OQcu15ozllUHU4c5wH;Y4TOm~FBC}AAOKFGV_}&- zPs-$)IZ6j=_We71-!y%=>bI%jv>e@MB0={FwCkl|Gb?IwrVB^uh*B>m`MT>Cim#sU zE8slL-sYZb);+UdsDTC)l3X0Vx5rxlk=oI^DvlCBGk4wgwg=1YJN+S8YRpyk{_(eP zP2wS?I!t$!(mJNHU#6f7+iwZ%&#&Cl9}x5JTiNLF?uhu`p(zm7fM3gZd^1WC_JJpC zhG>s!k2RD68WxtY5Dr#hO92hhO_M}ZaI}Wv>mfQDJi4}E91>V2j1E1%FT1b73lx5{s}DO0P_^B>#m&o~;^c{zZ>mG7*k_a!Tnx#KQtG zHt!(ehX)(W;Wr>F1I|`RNf^>k_;2^GwAX{xCm4(TB9WAghFyzX=a^b~Fn0i_hjv$v zJDLPUvkf|~ZJ-6(1n%xP&@N5neDnHrMyS30_BhuuQK7@bGumb@5BwlqsZM+VT8H^i zG0UMpY9XVd!j2i6UT_&-_;wc^`o18^dm zxc-M_c4q%2v$`ak4vZ;g#9eO=r(&VSvBp%8!t*t2;^0IG+?_W3(5Y&M2iD&tCuPYk z_z~g{V($1h;8XZ-B6UmpCoKAuiYef5{;s1lq8Go@s>1=h=Ir1X&FH>I#c+S2cQy@^ zyg!GCvN;aP(P(3zm%6PC_@&tq?{BBJ%ZGl)NB*4mD5Q{POhojVC*FLbdrFaN`E449 z-1+g^DhiLi>s+nM3+Jv%Vl)r<@c>cT@V>`8d^i1>DtWP|VpjMyH)Abq&)$%bS()h0 z;<_f(QSC4vE!uXqK+I;%YCzVj)`W96g%*aLq9KNk4u^>t=YG*BzcwiNHLVhI|Fy_z ztFKfOOab}vBRV#=*|U_iGy}b}mE)0Wg#Qw`p<);y=!Xh|LH@J3EUdg=)P>e)%Rn-3Sn%;OI1kIxM-aSIT!v0nl8-TNqf0If3tJ)Y4nw6egt+C<}TY_*aL%M|fj zt+uVwZLS%6vDeZ`rw5MBxhYV=LG#2qSZb^SyA?+MK+X;TvR>QFJLE5dcSO>je6DxT z0q$`g_aj#BPmi9`5b{MVE|-z@7nyPikZ$uT z7&VFQDzk-q&msU}|F6TWxU1T^RGWn)xN>!YZ}g_04cI4y+kLK z1Yk=Y?Uek)gq#ifFo;&^G}rz}uqpBY6=WAjE=cvVH)5N)zl8Wk3tQ%*{||t_z&^JB zDBxohgJQ{y>a$_i$?LFv&Nt1ydSqlhaF%^UAtgPAN9x?g8J%pB!)ys6V*YO;I|4QX z9lT25k6%^lP!W(2325YlR`lnL5pLKr=~QA(ohD&uM?8OSr{CY82>&uTM}@+t4>6Rw zcV9)bDRF9PXDj+G0EMRY&7sjmozB-rB~p!q8F%WiPL_rJD$is1@A1v#y0dLFHVO$` zj>fJi$q(*E%Z*p)%hh@0va}CHlCtpXvm)MH@aPP#=Su&VnRf2T06QSd8wvvHz2aI% zNW}op{5a!{`F12d8jZYxg0+}JuXyY}SG4dRHvfpQ_Iz=994Tc&N$4g~kI(3*g}T8y z)_b8#yb%2}A*5A!c&b(vg#CBJ8h0{A%#2|TKpZe_+f@M60yKdn2zcoMum)cP*jY*> zwEQ@l4Z+SJG*_#A=Qr#l0Ez^lKaBwIQa=WN+m(=>9KQeuU83Kz*{osJT&p41jLaeg{4*0&_icTE?(fYs5>@)!A zaq^4uS-0#ZDgd_TE5M;J>jgI1Ep0Gcd<2RHAkUXa0_ZL6dw3_>p)2+zB;c}Ce`hJB zUDUP&fsYCN@zpdn7Ko_#j$i*$^T-d+JgdPY6v3 z?}$za+;^OCsqMN7opox0N`n6wvj1>*?mZeAxT`)TCnqPKu@|;Q%$)BECeKusU44MM z{WHKBKz$)?;XofiGiYX=D~}HETIWY(cP>5u?DV!SVrQ-Yjauw7cY^i(4%>y(OduO! z(K9(G>mcB=2ChY(Dv{A_igmzZMsgr_yaQ|3rz5nj@roUaU{A z3^m)%@e$109*n|5blEI>2=32}Rn{0o{x9_Z-Z%67;<<@+;=mj4Rsd1*D*(|5{!0lf$vTlACMjjA4F|qPeNhZ*#4KA3`i{$J-m+**ZCwyLre}dIX7HBX`*P+;Jw+7)ruaynJBu|8_TED)hsh9nHf} ziinnXN_;FQ_nBT$u=N^ZlbpIiCM51&Hi=XE9*`iLWfFGR-h9F$1+F73(%DBER8g|W zyS0n0eH(TK7+MQ*E?V5Ru(?pfg%1qyn@G%URlwOk4SYxb7;{{}+&{WFW)jb`|HCr? z4uOEA5_hfC2JLKB_G`jgl&8t{M5vwY4kfV}jaqNnQe6G#?A z1bsnsl=PioPR3^#di>>ecM8;jpn4QV6o+F0%Z*K7WEiN5F6|mX?108RgjyD;A_C*R zyt@DND@Ho@n#%+1ZG&~aVM;`&5|5J90tiugTn0`OECSoK2wCD0f}Rk@IR>bk~g27l|BsqkxxZ|$R} zf!ahR>Ot+6$@Npo@8*dgc%&ADRBf~iXhbXw@9w!a2UEr|M;HKH0HAxIyLCH4{69MS zl2Wu$qwabg=t`R)mz0s&dVaX7rV?Sw$wk}(Fwh~MJ$yulH_sqyyf(fupBDgX3xwrD zo>^8cEFUI+t1(Kr&bQieN?OQJK8^^xdpzYE-KgU&dZsp|U^j9SM7#&%2rPZYWlZ#S z^Vc2gf9z9pq(-ay+>zCMoQSJIu=(Q|4xJf$!F2G(n6z!B?}sx$6qs{1mMvsM)Yk`0 zTq}E!>nLmp{L^0piqKaD-aIcj$CK~hxX(n8iK327b)8%t_aMR(_CCB<=XVc z;mUt@PsO&~@_X{Szr{MkD6HMBNwh({5cf>!oQ8ea^QnZTb1YLSiU7wt^?O@q|Bv=( zhKoBVyFkaq4OQDTPaLwjg`Cp>o-+wQwO5u4<6JjY%{?w5VTMDMqI?{H@$gM$LCNGz z`}L^N9LAGOj3o5ueZp@Mn(4$5Kpz~z3gHdILYMA_g9gPmLX{!2{s!85=gsrgxXInD zon@^R=OX-|vho-re9E{jSXz*=t0xQMH7qfDE!S<0UU!o~2gqp!Ap?lE4Hw3!c^$1; zzfkw!c~oMMfF9Kd@-%9NYZM+-<%0-FKRNxNIcFRb-=n~VH9=jUd9ciEbL?~f0jl{~ zilK~s!!Re)&~#le`}0?k_*-FvEc%aFwaohBGZiR7Qi#f&eb|SR{v6R>Y{rS>cS@|u1yr1UyZ1bBc8~k($UV-%Qg*Bk2PSD zFgTV_Q7FnSU7Dd3M$|t$bX$P}hEjE=XpRlVSAlk*w)nw{_J0Hr6(aBQ3d(nFP7$@3zIGFNgyr2nhxIT}=xT#5R3QBi-z6WRnQU=SW`u~JS9i{2kYknO(PNJePp z%qLwm9th=Vf`aajGpPi0O2NXJbVVSWbHol95_oG& zXop~-$@M>dI|^q#@}Df2P{#_iR9t7ZH|A=>g{&-x4Qw0E)hbF(o$@0f_-B2r4?VGr zchuBXd4R=zC)SxHY}rQRma}a0{~A6}WW#0A6$K!~a>z0J zaPfbE&KD@>I<` z=ubr`?sA>bIVtx2fE4{thpFi?fWxw6t@$V*f8xs+-|yX&Sy!3;=qv2o=eb^-t$H>4 zu{X!Xry#tuXeO_MD=RJA7l##6+pjnBF6oh5#xzW*QFHNjxr~dKLV}ydClp_+3_ZN# z?xexF13FK0#vS36a~E5u@n%uvU3uaMmn(d#1?QO1?slf13HT=fy4F6@@VL8GFVuHy zzbv=aaKM^jsSfX=Jl@(Kh`OEFP$-$Ju>z|(5p^TqC_Ra*zUiKL!DO{!Dlae!8DM~$ zAv9AkL(Xa`oOpQ#nsB#CqZSg@q+UKFU-mM`kX{U0T=*F*#|llhM9pDypDF(4?&dTx zkbHO@ucRmmUHU>`jH(z=Pkb*}1wCK-8|zMLG5x;j#70if z!2WVHG0IRFw=nt0NM%T{LjDe%b>5F1UvN#2{UU_~hcoB-)k75+i!gJSk;FF@ZvsE( z%hT*vwtNA574B4MGYqCdjN13jk%r`1j2w0vD6 z)7Cv%V;{~xq;f?@_{)%qVwfHZ@DSKnTZ*x-obf(B_PqUo411y29;jHW88$IDNACXI z)4zm!wtA@yjwjc>{_?b@81fYC7k~HJDCy!h5fveh-26Z;_?#8cBeWL2AGut(c`1Ju zS-G(DTqR%i(ytH+v`W%d`fY4Zo02W#2gr9)h6htc?px736Tpy7Zx=B@6#n&HasmQ1 zJM7AfjYZf9eMQJ+0#jHMC*xhG?DT5;r9ew7_8>sSlh=)v91jU{_AD|dHwZCKEFYI} z;XBiCqNELWtS@A)=?xuRSNo=N*wPTpSQ@(5IUSHkZ)3bO3s4Etf8x=?qN98H*{}BU zvcH3p;^O?JqY3b5$(d-w(WbQvf!Tl|#X9cpO&4+jWI+ci!}mseB9E)IlPdF_cV5FA z$G4CmB>K(YWz_+v44GCxR4v8sa6rgd@lz|Q1)>;3J>$xPM_$z7u(YfQE(nC5YkV9h zdnB3=2I)oyxu+K918&FlKGlk~c1wu2=dyB2f056k#5~mren;%|N4~;-T`6PgL^$5L@pwljy_Msn-Bd2oxud7U}9dx>g$o;?X$FVD3T9>QU&L)B) z=F$+2cvSuiEcb&>{aR0kZ{|Wc+)aTp$_=P7CAPF6_?}>b$(XL9&A;Fo{EO{UAKoF= zxcdjUV&$HT0=n~c?*R{Rb-;sJJ2CW_PG$!Jq3++Hlc19hwt$nM7f{YE@Shu>pXfdd zmJfF~7-Nunv-UF^_c^8EO&A--YX$;DXLP2;^RBxn#r9ULh_n|UX^%7UU_D1gsfT)) znGUO+iGlLX4~@QdM0#8{pE2STJ0Vf|NsB6v1x-{ebJXs~z1CiECkY7=A+NOK2;E5P z5Eo?71B#ANs14L^W3`nFieYw|n~n?RH0K-~Xpr-2sE$v=rNVGQWaK&HW!t&xKr@sz z#z!sDvy~Me_0;6}pflxpQxt#yZTUYIOMXB=BSw zon#MleCw6<^@rBe`ccAaNNkGIYWgoW4;qq8zlSIxK_=k)Qe-g0Dmkb9nANkvz zIiJGvxmKU-n7=hwn&2a1&Kn#@6Pojr#H1h85Mv&7!89Oyz4RzVxD|i_?GLHA&Bwk6N)#;@qS78dj0W@l06Tprn@|Qc2lQHTKKbdcG2#P~Epo?@a)o3Sa z-OefKtkaUV2ozx9kj2WvU`$J`(D_L~9Mt(a>1%^Mabks9StsK@Y^Gmjlk|F57$#pm z!HDCh4Z0XwA~9Ec?%$w)l5Ng@DZQE7R*;8G6ZxT-iDrwtoVZ1TaI)gc;{{(N`e$^C5K0QT9 zm`q+zakyUjw?u!JuJ^omWc7wz0}&4KV}fBKpege za?Hh}9{y0x1)c4^k6TScu30|HkE4}(O=K=016llFcnDJMDtV@g}Xm~%EtmsS&z zk_;J^YGw%ql}}%&hWlo~Nsd_?pg5ApU353^O>G3ZwsyiCX?^#; zP>~7-BXHoTC0&saM2OC4k)ha*$4qfg8~RQ^Pouf9s}IHdr(+)#$ko%(85FnTQ=d)u z1f@E5Z!)35ZjRpmq`Zi&(2G>nX(Sh2^!T>K9cI14&k7&&lG&j<$VqDav_5a)(sN%(D{<~`%T1hgO2tO=w0Ao@wAx_;D#@}0l|qbVGIVuLWFmH2lLY` zcR)N8F0hM4+wVEk=|mrI^yEr(%CoB#N%!eb0z2G=uW;Z##}w8x82tYJsp#_VfN@JzU042b@XW4uVFr6N5aF7+sEj~BK5c><2mAC z4tTEF%OPvGOs(ZVcq_M{>f|c|D34}`S2c7OCY{SJ*6c<&M4rD0&MSq%a!ou~Ik2$J z!O=Fybf5(#giqb60*%OyRKG*ir5-w;pEQd{Z%Cft=Wu4-Q$5({6ngFfU3j0FaTa3- zrrQbkV`R!Ud!3O)0h4b$%^uU{NUJl^#^Q)N@QIl@nzY`qYZmyMEPdp=;-AJ!vc+Dk zqm>(tg+5jMn@N33v$&Pl*|^EEFkIbbWwCi#nK+?QIPuY0C78lM)$v&8It`co?9xU; zdE?CV3O6R_7tWxeHcJ?-+@^ceDzg9^4*i6*)W9rwNimFDJj_ppqKk^}4!7H1No^r}*zDns?z&zMM~54FA9mXzqMX|-ncE+c9aRnc+s$?iu#xgQqpVJtvMrG?D1AlfL*!=?P~*M zKkhC4rqk^v{!cHW6i>dO^W4i)2Ak`F^=D_4&A-nacEZCq_)83T47M#yuuDRFwP_-) z!47Ztk2Q^L8Gn?x`c$s68iufQ2w2VdXw1ST>Ic#-$(}kJqL&tkc}6~kK@acz_8y@< zMZ(z8tr1N_{at4dO3xDL9{ysmy_(=f;o{4_W_6Ts57u*GO-W3nJGyG)b=rlaFw?gp zJG$bp`NH#2&Ss2xglDOtw)3T?zBTS)vCWj;l}SIUqCeS4w@1IOa_F%xXOV`Fa@!BW z=VBr?CCazUHE-h*5aAE(bgQU3OF)&fzii{)QHTfA-PCL<)9@fJc{5UQkHQ{=QcnCf zXEZVD3kQ9y#pmUXhsqlifhB&F*$s@f|8N+-KBWDj;ePFI>pEX*AR15@HdAc>40aw) zk;sLEXqAa!3pO-gY!H5k0on}kF*Ae$$UrfyK0YGO3C0tWBZrVu{!gJAQ1PwZ$~;Yo z3=dKZpBKrTQyny*3>DV*4(`ZrQw-KA15XcE^~2DOKG!JR;@Zsmzx^<|Y%9=fakZpF zRMFrL$n4<@pCGW9yU3b%GNKQ3!I%`h%Y-Yf1w*6DUZY54abzhom*T*n5LqgG)wSeB z)LmCuZvtkx4i2>&TaHC)VD?xPd+^2k^MDb}8X_!=Z$$hOwd z18# z5F-#xr={B?=O@poiUTp4PIjF9i`RKO%T`f&w2V z+`;_58cDc*pq3%!ack44>>YXs9oG=ql+=V6y?cw9vI z8Ey&Se2A=u)rzt*Q?h2Y@EKK$R-Tlyp&SHEKK7php2+wnIc0LZ!<;{;Hf{@L_v&CZo4Ao*;oFMg}vq2tAz>5=*D!mAh!W>r3goOg%fHzllGvwj$E zJcB4yf{EWfi5Zap5=xI1bqqD5&x*qh-&HfU)M#|mzCh)3Y)FSlNSG%`^FpUGD3_;3?JD8p1=e3Aa9S?yVWjrSd~ID-a9 zu>Nu6OvGOCgtDR6Rx>=!q;a2*W?z2K{7GpdL1?iG51}^$g+|}M5XH~}olyuF5-dqx z1YNHC<~lnq8NyfO9U-#3#}H(<4Q~h2ZqW4il>cDdV?k_ zi=0gY&=%5DQoR&hlBTO!g%~JPGq|viLQn=v<(bh?D}<9>xTIj(Mtz2s++8 zrmsEgYS*aSFGu<`tu}0Eqzf9~ZR}ol2_@l2P?OFTgUu5ExbARm)e@$^*6z_;VGfO? zgVfG7rzMTU#(f%7AP?yqjV0bQ58seQD#;%H81yZaVX{?*$y#7q6@>+uj)Q9Wevs=I zJ1*P-W0$YrLCNZr5@8rxjL*t~E?UZWf-Q?^m_6`tGs*hKQdLxTv|{_=B8rXio@kv`wOWi}G^Ni1|P-?4YHZOJ{yegZ~CP30jna-+T)`Ml} zmDWnsZ#!{VX&IcO>oUqE?L|ql?54%oUTtd*T=q(%ZK(RcLec15#0aU3g}ThLXttGH zxeiMF;#rnSIqc%^dIApkRiHSa_jM^9-{PsZzAWr8qEoCD6#AGA8G81a>UP_fa_|Y&@Nbgqe!>b+Xr`z zD9N{l+6|2s9KZ(2yqsFjzPf4&LD!|4wZ^AfFYdZ-`ELC20-s3aJcF(}TUwxiiGv1K zdQ-dsu1rcbdn>f<0px{r>cFS&;v;n#Xa+{1a>iM9Cgf1+B~#fIBDIod=aBw-`*XfP zphjw;pC9nK8ksjiLwx0n4?17bRqfzCV=tt&l}Q~yFWeWoL;+3nh6oz6|4SQhP<|vv!32;ds-A9lA=T z0SdY4wM<(sdJ{nF&vVm@3(;cR2mL|z{Wu?(rB+Hu{Y6bsI`R2HYRVM}`R%fU9nc+m zmfprXdnwK!@8`90Gu8KHNHCe6LvTGf>Jj3v*8Z#zH1gq&h9&3pNhk^)8an}HXw(oT z(x}(t!#JQh+Ria4rEj8#lmS6`Ja=bY==Pn3VUU-a$%dfXUs!{7^IpF8wR~PRUdEDi ztd${+(yen68x5K{f$wZ5_F;wu(ODTugn?yf%1mm=Ws^pu+rrZy@~cx3@mO;0K$uRj z=Q*hMT~XJHrIt)qZ!y%m9L0Iq1W6}BHNJi}UTiS5!+@%jAfcWyqm#5RCNxDsL1Td- z60YBM0CM(jY$-a$1>9AqhYfd0&f@qs-v&{O^8(B1(opbQt*x+@NuPPL>~A#QjF&e= z1=?1x>uZ5JB5q?jYsfNdhxkpmjH#H8G}p)#d0*bF$!cY6`hmQ={|T2yhNTz{n9|LKhfMXA_cnz(S+ zi%Mq5xzSHY0q+uTk%!QhiKD6WM_s^<@tC0OKWEJQBfG|}E+vtIplEJa&7m53Zp(#6 z1*w=I&tE!?EQ?{gKid?QbT{drpR&O23PUQWxK~Lakw>q3sdPApBTs{#r`MLEe=oJ2 z$j95)#eEQm=)yabJhqMjP|ek}9^HZhi%{Ca1JK0v+D#A~_1O*j%TXV#ydtR1kRi>8 zYS2tMSh37899&er$(iBZ#z{a+EUzpl?0$ZR&$N)if|e8+>2-f#E(UEHAbC)LfrV^+ zsJ@LT9pkCtD^+bVtK7k?>>M~1Sfh*`EvNn|b(}|rEcSfddqAkVFXd1 zV7p<&=wTo6%WMSN&sv&cmU^svrP*uppR`u?jZH+l9nJb91nR=)-<@1BKVVUa*y=i& z9X##k;ojDg4a1P_%A1af%8^mJdj6H6VW{<9g1y($ED$t)5nC{t?wTXyT`}8_E(GZ} zL-V|_-t$N$;g~pW#mQU>*<)<>bgvd?prV;H9J%DbG+tcLPKuPR!)%vFDcP8s_;wFr z)9Fql z*!diEy!|n2aeerY)|Y&6$Kl^M!`$ds=PyGwn#Fu?IwfMR4p@a;#&N=K1EU(i5TlZ5d5z#(JPy+^BfEhM`*@(E@7#G0Q5R9Qv{jyI zzNwgF4s%v=VCu?X^LANipEeNfh)o6y1>-12+N^38rJl1{m<^lIHrl5}A;~z_yRMaR711$2Ts&&KYNBt05e4DgMY2>W4?w@&m))2NnG|Wr6r@fRWOjDg#8g{GAT=8{-Cg4&WlFKcAIY%yMqQU?aAj)4Bb66}4N}G)Npvud zC}hn;;3fX*7>2$1m3c$z_UNvZY=^GLz)F7dAu&4(+WwtbN*Y27lX3 zkA+Gr+8n-atQ0%Dzrjl;wv+B>Ql5S!NQx*#fjvXRtv-ssT$P$Sp{3t?K=1x}Ge^{$ zp}RF%6X~uU#8>eDya1|mcxzzTF*9Cwx%QpxiKR_dZ&>}@`^#v!&F7>{Jq0NBHti5& zpOs!7B5i08IIIF(6>jnGFKwdMJ;xa?rL0Uk;K--;3Q*DLKT9ufrQcX#bDfnmOXp4z z-4&QWg`sFN+N5{mWjwjHrK0+5s=~^Y-Sn6wtn#q#JTVOk^A>NpFY~RFd_-*!V37J* zZunG-LL@^k`sThfZ3!TKy;=4ny8Gounp^3c&IBGG+vP3(K`eq=Qk4mtQ!XabVo=xm z-=JvzZEdQ(dw6dlYBke@*jD(K!m4*5v%;@OVEQ;MizacFP7kMs21K{^SZvTUI4i6pKz6W}|A;q5S%t*3!OVsu^CifH;3%(jX|=-V^wT1&8CG)PWjkWz1d~^6 z`6OcU4lK~zUN!;G>5!44A*^FCA0rpWYS6x1{2UbgefDj&+tA9utnG4~ZJ{Pbd!5l{ z(``+fc|k)5HUVvo6({8uvY(HEzqZaR1dj3VNt)@MvVT-NAES%$f|)dgnS@h8Wd6YmU|4|C4K=H!2eE*4Th) zP~YOp<7$(xP9o#H%q;H3i&NGwaD)d`6~i5%u%!XEmV4WjpS-LiuXsA5hLy5x)WZ4j z%A+W0R4z6mXdWg|B|LuH^LzPbmpUV7>zRLZl5kZb;ZV_TweiQKGth644*t;q?_^jn zTI+o(tIi$MXcc|Y@oej{uyP44Ju-@Q} z2lji{HT+qw=K?`r;POwkFlHMx?ZBRJvfP3?O0NL%(;ryc%iam2bh_WuA;nxaY>B~h zegeZ?#zB_4SjQ=RDh_QfOGCu0TaMR1g`H+&4W`Z>w6HI%)sf}?5f%(1=Fv$;n$eYW zg*}uPslnB6`^nwo)FEvAJxvif`@3q!#_L^}xG~WRBD$kE=c~DQ?jns+p z*_Ea+fQlrY>)^+FQ`FV=zpo7oe3QT|j5KUi_itjMFXV!oUU*u$(-iUHe+-9-YwJXQ z;n8ny@>o(YA?Td7N>wL!uy=-3g+X;!-BA(t|2FjPTzLB)GJmJy}FVTHhucOM1 z{XR_%S3Tabn5gj`SnG=jK$7Ei8$35zpy_ufgl8%7!9qBN{N+SGjh2KTxKK@Xoz1ZU zBF_%ld1=Xn{p6Z8|F`2`g@(>O#&*T^xqF!VOa>cO%YIlQtso+UHW)-2h0ckQz(C_G zvt?f2Ojq;`C1E3d4&iWEXmqS)z8V;#?UvOne{hMfG%gmE=%}QH$G_h8&Pq$nh3?Kk zdtAU0gB|@cO6itT+kA>3-Dd^|y+)r2(_lb9$Qorgu*8QTPyFiF0RM(VZ51Z6%q&@` z6olEq_Ak6`Ll#4k7ba$6BPGFPRNV$U1ULGgTIvtAQOBP}d?1`jG#%Y$P;IRWHSlcE z+K=wj>opyPo_@VF`?Ev|W8`gAJl*nUAvTdTx$ZhjFgDT6eoX3OAXF!h1hExQtW6+Jp-V3y5-o_tfnUMFfmHaQN*Obx;=rFmWoXt7Z?1=ox^Cv|e-_AkM(^5p zmOiwfIP}i=PDjfZqm5*%!Od|1p>>c#SO3$kr*4*=-?M2KY1p~PRPv}MQ!>*srsk&6 zZZGhr`w2H=`^1dN7$Ayg;^{>u=aSy%mv$ozF1Wv3@oL4U^F3c(y+qPC@p^Eq@7Ww9 zBbp$0VUeV{(EcGw3k~2axuUhbIP%e=u0)T13GHuNuK~_JFDS}O^1$!`Ie~3ejL_s+ zNitQ$=*0RPE-FeTlucP2@j)3|p9Q1zUtcZZtIF_s9G*>KW!qY$-bvVwKYL!fSVubA zQ~Wgu8zd$ceFSv^517*Cq>Ury?Pmra8vQ?Mwl3E9_o9!+%EftOw6%jwBU=`mYeES2 z42cJVJL15$_evs$1x<^)`ZLLDVU#v;DIGpoYHq%PPJFk+9HdDXK@MKuqPiHJoO|i-lFa%)I7VMXhU*Z4AazC(7=-A&r-n zT7Kkd-L8K*m6{sHaAjwOZ$8;KUUUc40q70#CRS5hW7C zWoy#R>XX~Mz6%!Q#(ON$m_l-ha4~(#}EEUVK%=x*yCjotjy*Fl9_{z*6g7Gq< zp!KKT0;)joAM+A-YRkhFbXvC_yu!H^w>9J;wf7_6BA5fHRY{1ruz4ibK_002Yn6?T zNgp>p*0$=jGK`&{fpE+o@gtpTp0H}1b2p5`PvdwsmoWT$BfR30c)m#D!kYi4VJZt6 zCNn=5y^lu&BaD@c>1W@e{W70`y69#9*?NcG|dbzhU?mlWj8h?0ORJr2GAOYiaR$SF#%1Qm7U3W~0oXIKSesH4E=&)-x_6 zY;o+va9y*>!fENL2IpD0JQ#+Zw4n|m9JdjzgXYzAnc;Wq9U@_bV~$9DUqyvjyY3ad zvxZw?y*f3C$%Mb z|K?~x=nMt7Q8$>s7ACD@1F?|B2W!rPXvAxFH6>hFZ-W1r;QPV+&RK6o+kpCAj5UJnHV{-QzmH!^o6I?T)K~JLY-i@=;{RcspBOW@;uYE>; zTCMD`)L|9t=#z0nVTB(Ig`AEh$~@sAaL8F9}YUoy)NKd41|x zshw;u>ZWmgmbv%vICYC(?`jTd4>9grb*t^w(~Ukcd(%PI{#=DYwrdFnId`7(aOCp7 zYDRXzOL!nuCHd}HRwOW$2cMupN9iTtqrlqV;RT(n%3=9lk@E%fuVmY~^8R9jOpZI385X!x!}6`rZJtW~SW0Yr(3j)|e$+eKINnWh za!bGBzIAjrSmxjO_$}qiDpL!jsT0J6Y2<|nZbJE?0_0Bm#!{TEQ#16g72?NQLFIha zFoYc)u+ysCd)*uU$4mCos$1I1|2D4HGNnfEpSPFbff`RljjYPrDyRWQ%g>T{*2j&t zm{vgD(j<=rVLwdlW425|sWf!C$t8r*P0;qyUQlTM!mP;G)g|GDzWy)aHC=C-u|(+5u~C$R{y2m0t3Ri|N}dj4{IZe=BnG^r^wJ z34%+t2phbM#b;{s^%vBF-jm=dD$X}sOAVxEb8c;QhqRJUGK>s5>g2PtfMNI#RBI-k zfX@`cu2`EulDN-w+C%CwU#S)*WD}P~>$cfaW#3PUtIp>MaynzL!f9InC$DP(z1v&F zHSl9j&tkwnEE@RB9GcZ&hE4I78qAuL@+cF;-rlQ+JPD+-%U>Lg0g ztMW`%M23wSh5KI$#KUx2RK_xSNV8CmWsqr2bpkc>&a77uOmMKiS#rTU0jttQ{baX> z)lu=lnk}bo&S>*cISLH*VGivGv`6;huSWnU&|2l>~!D|Ea{0BwE`p&t&nPQyEM_dM6HqUtv* zX22n+E4Vj_ii=?!evhn0H&C>SD1a(3l_np{apt$$@VTBg^J(fvA!(5Aa8Ae* z>TU+XX8>13waARw@Lt?w?z5P=;WUJqOSYzBy81o-5_IDm%Vs}YyX>$z_k8>V$pRjE zO3u-1<2QV@6X6wfT;>q&aG8GXw{USfElQbK8c%CNnWstj;G2t*E_o9+%la0uRt!Tp zZfmHS#6enR#AvP6{FC84S9hP=8{HE(y||b8Du9h)Y$TGg3I06G{%)Y1!(;#4)_Lj>*QL3SNG038+J~{+!}RZ?y`@8qI=>(I#%;7+-w!~WcxuOVxtojr9brR zOL?k_1ZDCRRJJ?T{V-pGG{DV)%`h6W*1FO&vg+<)**HZ^ z4rJHIJ!GeJw4wUs`$-xQvgnQQ?(Qk(gS8r;x$qWj3d!fWF4)eNo)plc4@pB&`s;;b zc!1#?+I7lqGvy%kj%T^=3-Z&mH!1DSxI$lE0>$X)BpYM=G8}B82!$~f3(~dL7|t`g z80=~GyMiTYRy|?2Kt0Yl`=>UM|6hCW9S&#L^$mw;A$o9$P7q~?-dhlzAbN}Fz4sPG z3(<|}(TU#6sL>5Z@0}qGGtoQmB-i_V&wJm`^&a2%|9AW2Jj@)k&%MvJe(Sf^-sj$H zUB07k@J?7Mc~>It-S5J zHLYEL;!N-Yd|yQp2^0**ymqzJodt$aEz=hk8lEO z{i0x07@OTfA1ev7^wiqxF7=Lx#6W>H5QQ6eQHg z+{V{ev8vbV)Y5ZqRdeQfEJwOR@x`qPaGU^s)B$mUQQ{miIrvITl{1?hFQ}U1tE!06 zD~YWMKiF}|6B6CA>Cwcw<>q83a9Pzf(;wf1J=m7`cR7*yFc!~|$NQrDF(tf8b5+Q~A4*0lYE%FVzQGiaS+v;yfJ_k) z9-q8r+^AdrDd?8P(KT;lc!XJA5BMp$`wWJIZPfzFv!GqUb*-@76OP!;KTuoycswD3w%M_L3%D>65 zsZsrMF8|`*m-;YvyJ@{Jy4=kE+c76Tevy|$p3T9nq zTD{H+BWt&1_zrt8eG5+TQIF2Y7Zut0r@j^M)04O6lS13p+6rTCTCiMe*S;05MuaF$jtY=#hiB@1)!A8cr^vi;E#r*# zy#GYZmi;5NWsD?cmGovfIb6VWUW@p6!!)Jfs7`Q+dI_`r!)@)EoQx%Ve?Ib8gR5i; zYPMjTzvd1-4Hg6{UA}bl@jcq|*8S>u`FWLzGS2xbxWb)YoHDx7WqI*s^$n&ZnXeipZ zasCd@6&k@B4BjL!W`^ zBQW5NxfPK5gD}c9%H&e7r*5}K#NrPkpeN^b>?~nyN)4eAT-@i+_CeJ?Mg7A~wF*m& zuP=UlqI5cnUi|e^{KBomn0nau1!nJDXprm1Fpr;V zpKbf@{;1mE^51LfE8L|XvW=`5fYH-lIUQ2yP?x_b7#cKl#RB2zyDZU-*G`KSE zb#4s?4uK}r{TVH4nml|dJ!+KkBr7&j!i7-A8oKUPm#>;&QyCjFj^C_Zr)37>;r)*v zdY||D=i87R&&JhNbGbMq?6lh}qoG2=zgCT1>`nbbTg9Gd4gYb~fO8^y4I9W1nmICy zxx5o2vxhaV*bx@1=09vm|J+OpqO*pfX!PWO*AP@E#3PNH`X(pegD9QQ9i$6zEPPD( znNL(}*)7VGTrNeFd5v#|yr);t=|3gk8Ddk4csPG8s>m=tQ{8NMpWTvdGH=QTA81kk zN->2z*V+i1pXF&IWuo}Jiiww>N(_+fhZecufhSuSf=F4tXQKO`vMAw_VeLRH+>X_i z-9F9RRGk}Bvc8Vb<_@~>$Tco`|0~UYmcQ0G6U)4OZP!TPIV5F)?gPgz+KEoy{x5ZV z9JIca2G#xz#Q3EfGQQYDyl#J$E2IHbnKW@Vnorj25G*!+n*DSYeWJbo_Y^_EHF4pl zxRAYA`ecPhB2e^A9Ca2V{r=Zew3qJ!4{8RExicnyy||~S9>@g?@Ep69d`V%Zc;*saD92cWq;Pg(F{?{`LSC9DnlUCo9|$1N3eBhi@7itmVt$ z65RlL77zu(Wn{-Fw`!tY70T>JBP-_rk!q-=Cb#ge2Epy;9CeKPmDaggqu@vaLu#Y|)}j zxI@Z19n&XmD$+-OvSt-G?-!U`PP!({rX9%zJ(R8S5tBy?%4$UPVv)h1c63*BO)c1I z^qCyWgB64km_NJ*O(9XLGzP3U;d;C2-8bf8ZOx1`m?zxtj~I)u$(Jc=h*u2XzSE~e zTQ1v8SJY$GFIc~|`xuXM_%I)9m!+$g#uC6_b{wt^h~Me$OCVpn9r^A_dI4P8NSq|m zGB#1Q#;)2*85uCTJ{1_Q#WgduH(QI+7!j^1Q6X_Hd_`BbueYoh$ZVgLZ;>_T`)LE( zYdI*k)5gv?an7ALwiS!L#6>XH9$_!_GF!#=^K!mcdGy||rYeH^Lw?5}f@Hg?IR#%T zY!=a2=*`%a2TKw^+9ZfbotEm4D`4;n`68rBfF|YLd=0VV^UURqzUz+f-IF* z`>TF&SIyuY&T^l>a-wN&u*g2e1r)Mhcm`5Rbu{ul9JZfs$7ul7#HE`a?MB}im6I)e zn`uQD`wc-ssukR}yC+?(qk&4lO6O>5zqr_!_Ml-5>G3vs`J>SVo|C<`CsUpi{g^ot zboNQ+(_jlg%+T7*58Ab6R-vDNE{(qp=4qJu%Fh?TUD)>2-fjA;>CLx(NSPf?PljHG zVeK?Iheb>2oir9cmH=-=iHqriiT7K+yB`L2rrCNmM0-wcQL7xu7Mu1N#RD0w`S4$RU)YXIdY-+8)1pvEmr(j#vF@*fcuNsiWeu96N+E9r~+Ct z4jGudahS{<+!dy7Q6|PJC${-{D`+X6l}RS~jX@{s%@ewg@=bff!!6%)0N%hsCbvr> zWR^#dwoD#B9^VhW_~NcCdLBtTKApbp-CGlN*QX(U3p#W%d;5bZmH$iJ;2y`u8B>0` z8m?J6|IzwlK2Z15JdD$Zo93{?Pq@F8)?7Kc)}IqitJWHsY0h?QDx@#lBTId~^FE^! z#_%-OYjpqT(X#KaGA@)XThCDniAWs2Q@~M;vPmaM0<~VBZ?4M3DdP)Q6nK0pjB6Jc z;VWOs=wN`?WYNjB#NWWZ=hv)_5-Ksnr$NshSUm;}q+M|{ zJ^86qI&bgcfpPbG-) zb#_A5@cg5giUXa8G1K0`L=UhuXCBO;!&#_d^f!g((o`B1N9!OVk&h z2b`4B3s(1$Cc(nRojuRU*gaMWq1jV21K$h|bA2r6s0}%5AkGf`64?sx_0=X?qYiy% z1}DP#zPcF&tcwkq%w3(t9EFk!W=hOk&97S5bl?AQUx0g$J}ryokl8+J`B3UM*=Bxm z@_3=8a@a9?upR@0dfCi52<$;VXBWFoYbR$C{p8qjmrd#;5Hlq^;5pQM)co8H7EoEC zTq$%<@gsJu+lWJV-=BV13^a`YCI`a|8H}>6Y&!ZGA~?jV31*0bezZTVtp;?-sXO3P zO3)>LBC`F7rDz>O`*~8PRIQqp9t-fNaHv{W*} zFWco2FOp9mghE3>3qVO!^Q$j3%OmiEk!3`3yBh>Rm~nfUIOj)W2f+ak8*)0>E^nR% z_LGD0=Y32oE)KFCG;`IRz@xt6GB78fl0C6@CJu^|%I!1aZ?)X`7rr%a-AsOO>R}dV zrU7u>n?_N3iq{UW%UvOD^PZEHvxm$;K76}e3$xOeB##w`l@VX$icE6@$bH=X*|3bh zJ$w3hPFx^EYk9?-gO~-Z$@rOK^2?3W&xE!kJYGTGxByAo7xjcn+pmKM22K;RGsI`h zYn%XoLALEvP`OKb`Hq$65>!#5R$f*FxxjEH99_w8u1{{^Zw{9{ce1<`qRpbRoo?>@ z8ZBeCjQx#|jocHEm9a;C2%hrsM}qPO1cFK%@l@17J(G#gYJJVfzgsV5C$;Q8mtP>^3q z&Vr&ATGw^bmZ79JNq-3gPR<0*L&&mIeTB#EEt&k@*3pPlu$f=yXWr8-+p zdR!h@zS|&U3t?5s_40fRYXGsZ&$0RLZT0K#!|75Pb9GJi6A^uHr%-XPwWtLp_t$)i zA$i$mVY+m|9vd2k!)r$E?Z0d!Y|d}|q%gZ1Qm7{nK6HN7KKATHWY*80eV~Tx(w%QP zjg|ly*3(KG5b#;d6{pHhsYOeA01ltoJ4MiXWP4GC8(`7%^%vX^OVu`mWDh{FP8)GG z)5PA-=VgIIU`CGia7|jLyBq`4B8yBli&{6Q<4v0FmM4&HYXNMP&%CK)Ivz(9@&SI6 zZ&|o5827$*h?#3RvU#Vpd9Ka5UUqE|hi)u{MxEt480nxN%g^4x2ZcSLZ$=5i(*x%) zy9>`?u&wcTit~ET+{mqi=8v4pr|K!;^XiN3TtAFtyL2EmuQMHGSgDeJ%Jx8G z>s3%Xw*sA;il9TQG)iHcB+E^zZHv-v6-(FcjS+MpjEW^*5sAq&eP1KYLHnxF8HO_f z+WC4ZJNLu66WH|xB3pNada+!u&13IF63NFF^eSf3Nr{fHJlc4wKCgX??(e>BU$yM6 z;Xkuy#a}tgm0^?hr$2=x^tEazO?v_wLgE@GMveZqrHd$m|fnq48 zdhEV;fF{Y!g9LLNF=+sUQlPgXwHo%yXLwCpssadRlE?<5b|TrW44wN$cxgWC=clr_c8=HzR-e^&)DG24Tpf{mS7g^u1Z=*LUfwa@>Adj?->8bI*MpVe`*D+s!TQ z2`;StE9drdm5qxpww+!EfMSw;$;@k@4y2V+ql?fj4l2+F2EZAgUr#6PP6D}E@8t1g z&{H6r9lsaq>@4eGtGv?m?x)v?j$*SpM)~A>YP5{|X|v|DVav%Qw}-H4VABaDTQ7Wu z>a3~fIB{z3o*mN?H}OV88*}N?$wCi0g%SjgkgsrUP-V9Z>-Vf&aQaBnp?{%<+;;DU zN~e9f<9<_m^Dx_&s)$ozO=NojbVvuPEGiaH&244<;A5L_;G$svYPOZAM?G^a=;>&6 zuzxsENNfT96anqtUQ;{BxpOIM?O!b2-BNB>t(;m9CfQkZ3-+Md);sF6lM}NH)E8F( z`riZ{zn#R6^SXPu(hbINJwt9%_E{mlC&N01TOWp$){qWI>{Ac4`WqIK5VopjKQnje zpwXk=$nY@%Bc`$^D+Al&q7jqyYR{VA3A+bqa#T#N_YM@FJa-qcg%~1@)D!OU)42_2 z7%GxFw8?S@?Tm_Ek$v2O_tLqhe*g44Zxm>=ms|U%EzENOyT)!DK5=d+!k{V3&lBLQdNMnjg6M2E z$rkr)W3z=oxbMYia~hp1{UZtxG0v5;u#hR-)%okk=!*_wG)*n~wg3~R8ajO%UB*P3 z=-xqG31#==50w!~R-?_*q}$XA6{ zcC*n}i#YD}24;O^!i&Ph2aLyblm=%0Vy%GHk5=z?)R7NhM_u3Ils*hRXCccYS}<*o zgN!>a`EuYb=Z9(08`fJV5L?%{jZ%qtZAl$ESlH8$ySm3B@GQJ{X9o9OyBk8Gi`N2~ zm%X9~zBSwwY@Ib94UpLtGp%qTCm%9n<#g3Sk17esMVBpu&r2DVZ1hQorA8r3ZsA(u zE^KakP3xpxHE!uFH)vR&%ySs+grm`b4tn%ef$mi?!k%s4=*KI?C_P$k^G7u&uQwZ+ zxj$-4&u};MlYSy8U-&W*`0h@{EWIgtaS`9=N;Eh+{Cp4p=hM;mt99-*Zd3K*6BR*| zp28*hB*VJ>Li6>v5DRX9dlMfv8GY(e9TWOIkFJ^FFIf?iY?n0|ftJPiRgP>fN8esD6zQYWn6al**{aB2I_w)K9px*J#{}G)`L~GU3|p9XHPp`nb-s^tVzAPscC##d6wbS5W((dM{XH3 zmHPbK=b0mn?-)Xyar+-lO`t<;_)ZHyPZ2f&5sSJnNZ;3_i|2BqEaBUy-mLy)-$E^b zx<3U5>hyFFb?#J8ZGvq-Tlv2{w<6vbV|(=#^dVMM7%pWsk@;Nrq)4$zako)GBuxnN z{7d7+yMXmJ+xMDjY2ute;T<^-s0t->2JrSB^`nt>ebbtT_!><3`>AQ>?BpIqJLlP% zsn|U4^}M>xE6bSjmHH!@9ey@Gi*)fNc}r`3)V1~owp`H^bGtLg<8hV8weRvLRuFp- zy!cQ=8$+t?hITcw<`>ps@kQRtQRSQwcWB)rHn*5J+aM=B+fdPB6IfaRZ*Y=n`O&Y- zpa(fcwG0lG5W~*KP5d*IjbIXR!TZQ9d$4}kV;J*&aZaGC{>$mPuGtDFkL0Se4%@pT z%=CVkAb-&G0Y{v>FWor3s)`w`XHGv8SqnCWHK?il>&ft|1@YUU$yYM*`%7uq0!1%yNYdKF;pyoC)qwJo%`A@%vjBWDhAoSYIim7+rc`Tt@mqnkjb;o*ieI^ zulYP7MbL;y-K!#NJM!_n8T%GQ*dnL6gc~ZL0eXh!P+|CL(4&=B?Ma$(S+VG{P4$Vv z`?*#l0c}u?al5ZL`g?NCqy^ZiSvwQw?b<87sxWHpzX;1`O#2a#_0n(nH~B7fpoS~?HiQ#xb)Rt+5b?8hc#Cq~D z#m?d*9=E?#JO}%(O{y$SvLmy!U+fdzBgQRXvE87#Y;4k>%^?8dB+<3=s~Zu%PW{mE zT|S4+6TK1vd&3aS)x#omcwM38M;CMls!m%02}BA=+xYM#VUAU8m+zAcrAoBfDzVX2)tT(V$LRZ=Qq0R4?Ki6zEf6cmLLoN6#$6elxAQHg zb1?>ZwSoKZ(tNErZ89ito0TUW<1@Zcvba20ZyjW;NR&@ziV@dOxV&-5@*JJ__*q4A z(eC7)vI^=*x|U)MuADa9RO&MTn;nJ=qELbm2Go;h)oq&9uJNNhRzq=3dxAoAm3L9; zUaSu}L10+{Pv`TQN`xe&MZDy?|8agR_)vsNKJ>JUg!$0;mvTbc_MzXv)!AV4Dvt|X z?`qx*aRH=`DBAm4f5Q!*jJm=l0>s(ri(hvl)Y`}n@I|~1Z>x{F*vwj#2P!gFZXBsN zU;X0wSmC7K(WZguBMa3YIeQvuz$gmAc8iPI1I#(zD^@DwFVCcEeZAMoWrN~Wj3l_! zDt^#5wkAP)&Ts#-UdFYG*lWRP@odvdf7L6$@fx2WS+DPV|CE}-ok(nxaLszVo-UYx zf_+8*odNp7TMOFm#%`+)RJ7OrD&EY>XiN|qwkf90m!TTKE0u}51ir#Ck_)AQoeQ4; zxTW(hBnPoP&#s$LBRPKex^}kT8*%)`bs>92V_5A=$YYy5?k4LP_d8h-$pno#_>pd% zCY#KVa_~1$))0<(!d_BNQt;6I6t|!gE{pN5c4=Ni9y`N(6^l9zTI(f+DamB;W8h{b+^6!$Bes5L~#Gd&eW6Iak_^Nver zj@8bn`^sE`FxH~Qb7$5vK3#6rBmH@CB|9(oYn#MpT4m+Rj=A4v2BTgEzTJV4b3mAH z)W8q)Ws2RtD}{4sYF4(yj%5UXFY8A#4IZ60dirQN4XCmpm;tI^upEdMk0KBS-tm}L z0-<(k0$@=PelR?CRQEhf`SRSwhif57C2o#k>qV`qRST%c4X%@^BkW*ybrxvsJx;;QYy|Z``bU)ObX0*yCK9Zn zN&a?G1vd88vc8W2v(fRGCk{Xg1}_WC6uMOM)Vu((;!Ng*=e<|ocCBjPuc8k0oD02$ zMZ~j>R!b_{es(9XTnXz#3?~F|l4==d+l$G6@6*D$eB0)KLhp04)p0yogT5&KQmlvi zb4=VzW}M-sM5%UhXK^kjgvBqS$#7@;qFa_v>M0aTa4wS`=|)X3y_`SgvGKEUI+k*Q70 zwI2Zh?W89)qvl`5UtwgF_ZN#90*u?{_lWw&@F5YKQDSg{G;Y}epvkVwuQclJo?3jxN2N@`y1%4yh1g|nCp}8R3!D@`lN;bo zuE7u7eKBmiv2p>`)YGPw)>**?mT3=R*(uj6Ht9mk;*8ghKSGkSOl&woc!whiw~}dj z7SOst6Fb$tOR+xe?sBb2bi#6+X`i?|9gU6$DGq#h!_&KPX$+-NgH{ZcXei-9+Td}# zc3MBS?}1^B=>C0g!140Z3N)&x&f^*5T8IuTBGA01XmRuUQV8fG?MU|(y=SGej2$0Q zkD+eomHyp`5q|TN!Djm?`zEdZzWiZd;vsW-&t)m9Y321RKk@Q%bgxE;w&e4Y&1kA( ztJPN7`;1pNG6MC$)V*?s2wk?z%)vOIqI}9jK${Z1Xsxa0v(FM0k4>IzD7jsHd0N%^vz5r8DRI{K4g_&Mr##eyN%ZLWTgEZcBw@p zsEsJjs&!e>O%Rw`gDQ>lk{I89a zHl-;-qRclHwQELYq7HL;DNhzW#*zb&-m4ap$d?s{nls|9Q#5ub`JB>#(_<3PR$b>) zdDP1nb@^qAJ=au)R1o)nvG6Q=_gp2nJ`70t#bhzeg(yW|P`^QsxMBmUG6N2-~4} z$WjgNy(>OC5eK?V$tiA`Q50zVwpm(f@Bw7a1CX0Pe}v5qiycx6&8S$Xief^gD@qNt zgWln^+Dy=-^rRn|6hFW-#reQe1YX7LicWlKhr!P9@Y3UnWSzp&qC!jG5X&^pUTW0F z-ghZPGnGKhO0d42fl`0#{MEP78I5DLiVT7v`A`ub^SD`#$hqeNu=*Bg zmS!;;ZpeI~0mhuI#DWiD$s_y8O{eWq8skLms0`jZ;QF&=z(l=0z`x^J{*=dVa!w{~q(fIF8MsT= zvWL4#uk;C*#{xe0!IIP@lSQ;)$*!)87zYq|DEoczAlX{T`!wE=z~$X4pqkz~`cc&< zjITBHrywFb@b#&6sc~b`({?By^G}-r&T(m%k6K~=H-%2d@lK>)zzG4JMXG*#6PFyF z6;h&J_6tR8+p8DwBo0DQLHeo=o2|oWpYI)<<(eX>aQ2B-{l^bA*(ZKDz$8FT>TtAI zo5y5^^W(0@kg#j##PTrh3125bS@3r>rRa`M#j2?>#FvEqIirli!}<1Uc&T>eHb&4K zTo-WBzNG0Wzr>`afxjnxr(UyF%iJ1cAKNZt+;);hjPBmeZ;7v^J#QL@eoy_m^KeFv zXm=#Rx?KP`^S+x9U|3&YK4Ug*JYZKkv4JT1mA%A;&(>DwmwZ^)`Me8$oWc9oK5~^T_xK=`qr&oiq|~KtcPR zXTDAjBJV(T(?#+8+#Q)bCJ zugj}@0&&VES>B?2og=$XztXmgpq|k#4m-$BIuZ^D_%uD9-U{rj@mKw3x3cCdwua-K z^`>ul`0L`a^$ndyqq1HnI#o98$yrk;%)QCDnBpugcQl?X6UI9&ybLk9J0iLAuk?JJ z`Pe5dgJOmC!ej-ql03!Qdu+z9Ck{FG$Ep7&960=rrT*qpY@k1TzJjEy@mUOzG!$c4 zcI8Y!lsGAi*wYdDO5=j*W=TwM@&tgI{B(-`aM>1HiAIqT+{0Trs0w5RRvvxL*cbEnki%LFxMR zd@&rVbSTipbb>5a1(goDBh`JiZLFdM>;0l34*fWVy}{?e@Szh^$mJ;odu%F)8=n04 z`!|TmwerK(pawV`Fw^ScCVJpA5eTlGeBLWNpHyuCr&=(|A>&tE*uGOmsiI01yZQ{S z;^Kpr#y%u*7pk_?k5AvL4d!h1E7Wwd?lBq!O6QP!!g!<(JG_*(9{k2v3X^;rZu+yO zK^9$?5d}VzzARbpk~uZRy%_SVS)HFoI1Q!m=XRw#gC8%g@3mp9pe;7+?xY>eFYtUd zP(N6o2z6Z>beudG6lTe4gV<1gus}!74MtessTjj}v_IsTEo)u1wfZpmt=7UODyf2? zv^*GM%rNoGw~E%;dCA5){0lA%Cf^I*O|+-?;3#a4}8Xs=^Ak_gy!rv zIxUHah__Kxl=6G*Uhvygc@k!?C;J_Y7$^s_JY!}!ZGOh4yIjg^6|5kV}&LHul|XHAO@JTvLCFs1!2f*?utRuUx)k1v|e<)uc9`YlJdOi|t-3fj4@4RKf9J z{0F+4sDY_kjW}>@n=Et}br*bMBqtxHK@#d~Ziq+|yeRiSki13lfoB9Mg)#)mmzw$U zCR1?E3R}r_d^pw&X64Siz|;_Caw8#I;q}R;@kBJaIc;P(4Yzf3Dj?Zr{5ZHR9oDo( zL}Q?+XyW#zKF}ue=ImRQXQkfi+*n);$qtbwQQ?|_*!E^9TcOORBQCrbY^wt1M`pmj z8cPzm_Fosk+H@Qr6Dg}F|K8?&^plHQGl-LIzroIC=t4&yFEuvh!}YD#S+&lxmT&vw z*@rpM-J3-ZdD`CS-DE4QPnq0wY=TSZ>erK~7k zE8NXMpT?N56+s>zz}-)V1yP&Y7yEHC;tmdP6*59+JKG~5I)G3oi2^+q0(YHS6&fri zPD*Ar0Zw;pr!rs_gU&Qa+tzlYOr;S5tPxB@mGYuEZ#|fTm?w!7P|ncA-lhXT0}SL_ zJO>7Z2g@UNuW#=h8WuZEeuc4{NT~6=vC(MPFlxzz^J$d%I|N1NO#1K-^~Vx670(VWQRDt!`p_$EGQf;#pyiqB8s&=&de&e0xjvU_CQz^Tu4z2uWK z`2EXC)|N)0GOmrcx=5)`X*MVlQkD^1Gon--AqnBEymZa9udP3rXGxe)*FeseY@EGl zAhMaAqdzLi1(FbTlJNpWv5bRrC-qCAxF;T^yh2s(d@Tn*g5=+IpiW*Kf-;@XAx%>E zgyhY7_VF`0mp=!l6S-er`CA3PtK!ng_Xk+{qk{TJMMR2KLn$)$glLi>sNlkwj$P(?8KEOORFj%yr#3%+( zQ0z@c5{mwi7GJuRi%LhdLHHVz-?*WKM|u&|VBz70hA8*$QhVI-+4DV@q5O-Uq%`Eb zr$S&$`l#6_XZUjiPkl9$`e#@(lZRbnJZXCNi0Zk49loPyAe!&X)l2YGy_>VSTAhq$ zWbIG8FiV|5=*0^26*gv-k3|^1r{hwfmF2Z#q zCj_jQ#y^?~uyd!~5@XX5v?(pIX?bS{ZZ)dZld8GHL&FZY@-#5ncj~2qS&9r4%GW4r za8{O5r;@7XrjxKQAau0#Gt50f>|W3MTDHJz1H*H8`*;K)G(+^WIY zX~Cmadmw$j0>GY_sJSglC6_;OccJi(3Bd>-E`NVFtK&o@g0YZAb9ou;LPW7;ls^YA zJb(HgLJs7t+iLcKi|X;f*%m4S4h>)l*gCuk*X@2vbffr|p0zh6=p^Nvky@|o{5AXi z*5 zv4L#|QQOhWk?w!%x;7~+(vdeh^ep^HO5cj!cW&_hs#cPk&c!3xDd=Y3TR*WO#5mi! zRIj1b&};9DYPXT4*lPzXkSFfR($|aaE?1RkaZcb2>6g^=eU?6m>=y*+(IZL>1sSP# zRYdz`bP`?&iu0JGg^@V(t;Vo17nWy6%C%yv#2`*RlvzC(W$*tzkI zUix#;hYNgzsyl}Z;vf@& zx1Bc$#`$Cgw;A+6ZgQ6r*XOjt6g?1=P{Cs<9G%+IoIO2V(=}{^GhVKoJ3PR|IRzin zQA@r2)Sk#0Bvo3mwY%)Bw;P|~EVg|7?Y)WocpD@S={qaZQ)^hX4LaU+mgc{+_4cW* z63ST!7#=%}fymQ!4x&n-V|_w{ZuGe6bvX*_1-u2vq^=B>hs%1B#Vvwnxa*6L$G0keT^OqR{N91E5CB*`QB~8+-9pR@qUB?k zCn^$ljNUw`8m)Ko7t0N;M9t0%Y3y6C!_Gjfo}^Cc1~4g@BS z4sp*E|Fry_Ff_-QLpT6o8zkJYY;Cor@b z=4qnFba>xkcANDjW3~n|`ECJ}1TMQ1tLAa6EmQ`Mb<{KJm%hIHO`jLDTTqoPrYSjQ2_o7~w3S74r zda1XJA8Sh5JyzQ%6lk@8A{5~n;fA0To`1n-fCR2N8#CLVrh_V|q)%HOR>W1o1WQg7 z)wKcJjy6O-Z!s-YP8Emo9Im)T8cO_=p2METIMTeaGs&x3;bS!jp`A@_IFq8V7k!Kq z@|2ugW^;3MdleHgfkK_*ZX2@LVeYZUS^icI!-Gnhp!e6;|1HKsRPDdcFPR_cB;u9g zat`?iUXjs=#+tyzy<7YdEneHlj|bs7gea(VR-dxI&?EJTl?gzdRhbQSx=4^XuRL2U z3|XAaGnc77SzSH#ca<4HIm-M#pq-lQ)yBbvZYH`WUfK!3`tX=|(L7WKx&G6~gEiS1 z6lC>L)s9rm@_OlbVL2`nMRVl~=8_i-wM=Qt(e)-pY!45NzD0sm7gCId?2>`BWHfD^ zo>^vJL2+~goL)4Y%WW5#el1r&YY92_sGp71 zd6UWvFk(GaN%%ZngscCh=>L}y7Hc9$xHoNS z@b?HSy5?3|m9AJMlotFGxF2q<^-NfE4p?0Md*d~ZY+Spu&0G9?)E9t>terEZ42J_T z;!w#*3N-SgLjs|CtL$e=YVqMVAajq^&00=Y?O4+2q%n`{!Rp+eOnCJ&kT#fLiqUBH z(2#BE+$p8~2$a>QNE(%L+{Y$A!|g(p`@lu_TZyzECB1RtX$J2GQvXS)#nQir{MM4< z?;*EKYP=3<^AFV8OOOZ}51@$~l)hf+i)z9|5WhoXZ|0XgJ@#kLub`k&m&Pm?;@o!bH8p>QkyJB~{h)$>;hZfP=Lbg~+m%%v4w|p|nn_{<7GIm)g`SCWnswyB;ae61)2h zhJFSG9-fdp{id9M>kI1>DJ=ofVkF}q=#LQwpPsre)Vi1Yd+DetEHXEfQlr`ObJXUf;GikPM%*3wk0_c2~HnWWpUW&elH zXxEWj0ehE1h5mrp?QIt-?UO}5;N23)tEybTL9r2F#01-c5L3{$D<<_5>3yGml9q&v z?1+Hk)_=9N#r4$&CV4`~Wv}n!yQ8e+#IOcZ(Wj-w*TO|NTO$Z1b?2^0zL#ggDm834E@gsnA~=JsQQTRGcYEHiRDl zYKiUy=lODR!Vmlhi?n7z-ZF0}MX2qM7A3>eYJAv~I)I_uJN+x%{y*6N2PTk)@Dj;x zxt}g6|6nllS@p-kDK!be`64nKpVcw}g>-LG(vwf#^sQ0}rfZ@MDM2)BMpOKLfd^+7 z;zP_$P$za`nhf}vIL|-HDvg+yAW?`J`1+6U!9+(c`%6V5^QlHHSpabh9Jd1Moz{$p zQ`ne&j<*HS&y$c$McUpFTIuko3CQxc3RN8@!v_X0`tTfpzC@f9?#`!F$aR_v zLa6yqs{9v~hJ02Mmo)z*s@dOuY9;3HQDicpW(N}p3^_{n>PKeU)As&N?NPC@z%)C{ z;o2`a77weqi2|%|Y%{&0>MK^p7VLvj(U(V0KL1bKq>YzFszDFU%;kT>s>_77SEU_Y zrre-BG7{?oprE9Lv!Dg+q#cYR`GxsUgKNYgz#8(@(2o3lcLEO7Zd5w*DeJ9pWC7N< z!^tej9Y@3`Xi}j`em9O^LgS{us-Yc3mTk`3?(6SYM3xT?NK_=~ zjrb(+@0N#jQB(AiwA=Ns>InagefecP(z+`sK{!sspgKW%?31{r7ZY>jCX z{CkCFcyG9>x2kxG4|tR418FCg^IxPv5^Nr(2TvIz&@6mc67 zk4WCvw#3fLnC2T|79uU>jzm0?K_mSy~xYK5pYl*XGQt>g8BYzn3 zU)@8oI?~&df=Suk~ellLr#@m41A^C{XbA?XqYpDjNL! zoDVv-r}>zp2lJoIUWgOP#=Bn@P=Di8l7rx{>ltF#z0V1*TKn*Cem8EfpXeQV#JG!Q z61fZAI45`}X+c|1G>SEgW-XG2G z7p?U!H3@BUn1cqNRVu3j3&ygbi-c9-hCuXx*XVBryT17-DL>X+tNjOVhA*lGOsh^Q z1KVTN(uiHFtTmLGz}8zSNpOEI!SR3bbMZV#AMVYZ z*zEoweb54RC89CKYST(yONhuFk_!I}v?2aHtis|G%3(#r5jDtAqbAOgdbUUWfAJuL zCF&<=8j;V6Qt`W1$3X9^^P$5*Vc%KwR0P|#{+k&0@3RZH|Y zFK{?t{xV%?a>{ADgmxCby=86TcZfEml`H&KF#I|yq0dJVjPNN_D(sE6==)5fQDZ1n z3NlYiUhXi;!>5erUKBQW(nn6=XK8|Db`nH_(%Bh#v3~p^ynl;doGp<&pQ#tr82cN2 z&ZJnn1lu1mcS6A}W*KCn3*RG-MoG_n2&^ zOA-z;xup5;MYUq>uQch;?i6+Sk}$;lve8RFko}W1l|M>i?V|iPmq)0q@kJFviAhO} zTwD`ADvFAU8$A(9$XMdHuLN=!v1%5prhNVS7cx_7WiOJOqe%e;nT=1QA|ty9{)N5% z2Glw`2`zyukoqrAoIf6Z1V{92T2u970kZPz@inXp?6aH2-0pjp$RHOxcz<_Oh%C3H zD*35<9CBOp;U6>~EQ!QB>d-Io--GQE;{0_wr3S9G0KafrZ6hKhW4^n&@Val*W|;lZ zdr!h)IDh3eW`^=_0{;Cmvk-ZovB}3hj(;NZOrPLNBarZl`AoUq)RPcoQO2CBtbghs z35ypv`8XB#b=)L0>d+TUpZKLt&jiL|RvQxh-#o{s+$ zYhlr@Ga_Tw=uqxA5$L%|Fi4;e+Kv; z@%&R{@*nXaar7Vb{KvTdk%0cgJ^!KR|C`tOkLUXTr(?gBz)G82FQ4I7e1!Z{kX4nb JeEmM;e*u*^FV+A6 literal 0 HcmV?d00001 diff --git a/test/algorithms/buffer/images/rt_w18.png b/test/algorithms/buffer/images/rt_w18.png new file mode 100644 index 0000000000000000000000000000000000000000..24ad2a68941c7bbe8936fbedbb604e1a2ad9050a GIT binary patch literal 201999 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%0A1Q7nM#QRJDCoA$=BtwH<*FT_qL()9 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

r`e#uz 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 b$A1!a^CM=Tyjspc1HSaME^EF~w-5V&mL@)x literal 0 HcmV?d00001 diff --git a/test/algorithms/buffer/images/rt_w2.png b/test/algorithms/buffer/images/rt_w2.png new file mode 100644 index 0000000000000000000000000000000000000000..fb75f1cc8c42c51514239bd0ea4406361ab5b941 GIT binary patch literal 89885 zcmeGE_dnME`#+AOQ=KQ_v?B97twdJIo+mQ0ldWOzz4s=vN47*n*?UE{ipbvCvK1nu z@9k`;=i~MM1HM0eTpl{_&hs{o+cB@laoo&XS-xSyla&8yT-TQF*!#u@PT!a9Ffnv_lTZDsP?i|LaA)(S742)-wc{5cJi4RA8 zs~}9!9jwc}YM;z6D{6caw$D7!` z_S(%Y?f{-AZh6kD4gPL7`LpPX;iXQL>-d>Jb-79-QY zBEri_r7sa0AXOVfC?_H;LH^#4ya?`CP~uBWP)gH=3po_Glgo^Vl`Va%X(|yM*rWQz zq?X7{SL@Z$$23Ty>JO(x-|WH8!LYKqI7F_Pr3$nB<3LS3{m$dG8r$a|R-RpRUU(WM zNx}MV25U~!kC{O%D~i-u#@`^})X42H;A=aNF^oS(uAvygDx#)B`zoR{VVPjrUymqM z6BZ!gf4mU-rgj_KPdu#F-~;4YAm8)e3wGjSuk^1e5-#6jJ+ZqXZXNoVH(>N;6Q?5o zC8cY=xT;xECZV{`=1JY=q{b#oOr=B)RN_F3pH%unG;)hAKB@~-3DJ9Q7D0CU zY%w+_8J=j!oMXfLhG3e4e5?U*eT)OT3*8bv(|MxdyYyInDj1YH}bJe%dcN$ zZVKM4Mv`h3`n-yw8`;frFAs6|j{I<%_1)7I|Hl}yj_*ci?}IBP4xZt~;OI{`PCPpFoRG8)ZXTncR}#5dR*Zm&z_FH1};rzpt>YkOJNN_bd-e zK2eG{e+qStq$g)r1hjQcbA)w{q>>+coa?vx(c5!$4kOdx+_`fhuN@wCVvMd~+Wc7B zO2Z?5Eue?oAjPN27$`V$U* zJFzW|$mPr+j+T+RiJkKecuoGI%}3id5Q;a^50tj)Y@ywO@+~B&t68xn3AWL;IMcVM z0$n8ORGyeB?D~Gw$KgulORov7iL6O=O&gWc-2xWU|TYlA#v zCKXQQ`*Sq!crx$ATfWtOYc40eNV3Sj7*SAAkX(>w{XWOrz!7OFoVe(J2X z@mxS_N;Unth>%o2W& zL&}E=8EtiKac$2+qQV~SE0r|;Ty^~E3d{Y={ndR+{q>cP#)rqLHY_*nH}uA-$Grr! z1&Rb73EXiiaEx4W{H$N6UPm>hJH=RcxXP*k6n{4hybUX-q;~sG5d}C{6hzG$k9tY)Xn*%F}!M5r5o2)uUYHF zvLz>KCBD4&LGyKWS(RK_ip`Me-h1s2DF%9mdL~{Y!N&6@H^y>1mI~PV6U|Z$>U;NN zsm+&-pBQNvx%AUix>S>m7ng5QiIdOrqqv_Lx8YqVIQK5AFRORfFT2Pf(4f>Hd;VR_ zCHgzk?38ZC3%pl&^K|pr6kXCP(^}KQ({lWx1MLvtbp}FayHt<5DXuk++ zWUq*KYQ@@Ma;d(u&dceW?US03`fsk9t~qXM9+MBuZ)7KjCz%MtGB7jBg$X>ockREi zY>zMRJ*f_GiTsAYWs+SejeE=H@<~_c`;fKr?!0$TW>c5y`>Wr57>ruenE%!{Gnu*7 zH1y-@yTpW^@ox9apGXieKJx91jrNRg5t>l!U`QgiGsFy=5mJa(M{9X0?XoV}B-z}h z>%t4J%t&q_N39jSNWzfL{KefMx4@o@7PxuAok7KTKI9L{kdI6+2Smas%RS#u$-I+M zF*G0vos(pXsw1 zy?LskklAXEVrgTI+T_hKi!X1xy<%;tSF5nR$K=WT%?#q} zCP%t&C(~-1$OK6>NSe~0a2G#sdts>9oqZqWozHrgH6eaFX-n9r70c7lR=l%C1$X4y zv3duG;QdXtds?SPgf{($_tSm!PS%>|9=B89o_zA^zML+Lw!2sIOxXr$3aJ!nRAQ9Y zbcuiIGt2gg1Y(VhmyU&#C1GW9bp;kqZL7IAFIglO9hUJ}Y*ZHb7EBEV58=L?DV{H` zZw@4{sMPl7hd)4rcM8sW%MdP`pmL8=l25bJWlwYgI3(xDktM;B^8Xv9{ zcJ|OIl(yQyZ>7Gy+9zP9_o3HLkYfX9a!74Uxyh`0bMuSvgDA%jUmMLlinnlQM(Q$a zn@)Wf{Z<2Z1B~!wS}THIcf9H-%8k$MT`E}`zO>5N|{2f0uJl1K8&?4H}u}jG|8}O z_~f0HHC1@>Y0J8acHMT%v}VPw^mFX;^Tgi%bZL$wJrO&`?YEy_roAL9lDfCnkYRhW z6k*3(XZ^)Sq&~r8ZD^xqB6I6~?d=*JXQlaji(aiqH+@D=OY7e?u5|@8U)Ug+r5#<`9R~J(`1eKZ^HX zFTCE=h}Ae(OxD=%Q@&BSHZgpw zo;}~fWX3r6^L;D~j1V&n$nPvUV`FaU^{C@jZA0W-FuRfPry|5&erPtIDtq)*m%f({$8S zkQXqpv0{H{Xrph$?rLR=UI#gxLR3SI|#T6)BPMF0G`orbI>7v4so;) zrqfhVMo8G$8zFeuIoUbsL~sxYgpj?Vv4E=Nt>4qZU&3^zj*hkh92_n#F6=Hh*lp}h zIJo%v`8hbRb6mg921c+sxLG?sbY-)4p#QbVpLHaS91QHuY#q&PtP$vSAL`pUISSL! zp*K4F`9-IZtJ&Y3tQ~$I3mlLG{RsybJ1584+F+^>`dtBKGgl)^ElD#gz%#Ii2p1TmCau^WUlboc~V!=cE5lz3X6PFJWT^Hgy#FE3n^_|NZdyL?I6J+5h3i zFGl}-7jRkxM~LH0Y9cuI!Z`eaAgRnGmDIp1P&4!o=05m``PVD@`JGhIMsYX>h8Tvd zq_~qz|ER39F<{w4j`KrtdyvGP74rBdQfJI{2FI6jBOblofW9%t_yWkHzik z3VQPk^rr4QdF$ZbbsEawTK_s>as2Bzo+!q6az`#6vj6R2z4M*Ac zy|twKpZ9+a;ld1rJ44O}|D9(qfq`V;Rp<#u{of^h;VmM6N1kmaW(`FIF68EqDgQs# zgQG?-oQ?cTVHX}|VDu#SO-h`<6rU}Pf*$=H`S)10NMCqtYOb*a@@(YU$;6-!Y5$Hq z;{}2j0(dYmXvusw^6w}pa{b)d$iJsu2*yCkSf`}m1^qvWKn8mK9eKueze%_lv|Hg$ zdDj19Jw#v$!P&^ar;Vn>f+B0p%y~%ukLWOfaQ6R>{CnE}PdNXdaQ^?va)KWf?>azZ9X&ny_ zkL}U9EP;?qA*($Sh>j>)+O*EsUPqR5ZI8INqTeKJZ_G3`u^)BD&`ZlVq(+2jj?8Pm zxc zn!5AyNt{SNf+3F&8NyEUSq8U`oL1~VHDj)=tdwvWbOhq-RnIRT?9As{6cwGzx-INB zXz>Fcb$aTZ%5A1r*DtZ(b@q}Su?%&3E3;4-o~JWjbuIHx;8XKC={;e zYSPwpV?Dc2+u`rN%>!p^f3iOz69gn!~!zO`57{($#leL?WKyOfjk$+lT^*Y@pWZZ-0tU4AgX!0&8IJ&ZI$(81D(Lq1_WJq{v z>=ja{XA)ofUL%?0Do{*bK#^XuF$x69`?pJ=lJ~`TpvjQ6NhFQHd5JH|6ZrvZ1T^-d z%vF+9JJ72bWMBGrh~AO{7FfNIypL75N?i~dvM;>T=S`-Hkq9s9eGzzVgEq_6bmFdw z(`yEq;eZfHyL6?sHxe#K?esaUl1CwJMnf9@CNJiAFE|cJ9!YoApB5DF6WBp}B>4UJ zMX6_y*gNiD`cALW2q>y8M;Aq-Xpq=;WUWr=u=KUho_QzZZaJ{I@muL194B+xC|3_& zXix=4yT>rHgSh5LOQ@`$jsM1_=}51BHki_KbF%i00Jgno!^!@{{#(}K(T(aE8g7_6 z)^Q6iN1JSm(G$H(*I?@Y^Fl@Sn{`RjFBmk1c&sN)IbI(;n{r!D7k6V;(JVJsm@Ihr zgoB`W-ecw{L(gq7q3XdK{|7~I#^$-5_3{tndM;C>+@J4U-~D)-qaD^ys-a5=R&B|v zcVg8j;@)ss&hW5SrqQXgEWMKHd3`BMQ5?OIBNa=2!)n3HIYm{d-v{CcJ2eM$;TsKK zdvTX=R6@jr)Qj&~xy*REOa^BW={#zhL-x<5SQI^qYKN0ylL^v#taIr!xR$bMS1^+k zR89>S>L`>tokp8d%VAuK8oBQyyy^S7A1+M=uq5fwc_|^sjgKOQ78|jQxBX#rb6MX-zI4$$cT&5w9Z54|Y6^ip zOtxMhS*Kkw{Q*UW){~zG&>ka1UUSr~JbU0@Bd|Cw+BQF|V^hiRummA)V+?LOTuQBa z*m}MmyasI03M>raoa7do-V7j7#X*! zp1SlETIsXm>b6#!(polOii!J+I zO^MNS6~4Q>+eQ~IfQ^iOpyb;w(Gv6(I*X%%)!=>N?y;JmH&@5<27gF47LkwtW~nDt z0akJv^eL-8NG=grXNe@AQ!J_m)g~cZ({|12fDt3aHpuixpPK}=zst1Sl}qVu^nti7 zQ(Oe1$F@QwlIf;kIJCKrvbgtIuZO)AbJcznya-O#+Bo2FxcKD4eAehHr<|wi75CHQ z!#A!n$6m)fo%1I>*gNp_n`Es+;-Wu}zbataLN!9`Y1<^`as*E22wO<$xOC^9e>^4h4+)>OY1p}SP4jja!7Pp)4bdmZhP4!CaUlr7&d{OaTm)5!0I%%!MYP5g zc`9w>rCkeTZELr!%!1s2h0GD6wg-2vaOv{uw>3MYs`}TAOKcQ=U0{5oYcF>(|K|OC zx=Q>n#DUQWau^oCf=~G{T>@OOUMW@pp%lSg0$yale3nI!rHc%LmFTY(X`{&%Z<8Q< zu%n#bo;|GSS1;~pqLxnKgd+qis=T9|gb^MB$pcfDvlt{{FI|~o_u$Q>bJlQ}(Oj0I zDYJ&mL#%5w_E!UKgGlPc2Q%hoWo-)`f9oXaP^)3`h)+48iPOBmyaO*YXw1puGij>xGs`CI6P!u!YOS?76-7GH#E(IMIY=% zM^oo4OY-q$n7}gf*Pz~sy4(Xie{JjsfGZC9bX?+_{o2?{)FVWKjHhpFv*@^3e=>e2 zx-T!XB=X5m_6dD`f5R@F@m8>XPz|Nz2v)*vjz;cF!WN{ydKbwE7D0eGrVnJ5oC}yl zm`jsRO~Phz`cJdwC6ChEBodzAe$wIZT3U;$XgD}LyftEyZWCYpB4XF2oHQ`n*n(>n z7Zb`&>WAVD)zBsD(AGm{e5#>rGXQ!EBv@Z7ckS-6qIhAtKNv8=4`>sFY@Xj41;@$2 zIGXZq-&gc=9lZWfGmElqjfxJof6_XIpb-S)fVWf*5tB;CVti9shr*dc+*?*If^WgQ z@aClE?iCin(Z)rMm7okpG=n7tSRVq_yy_U>x(*Ia=F=`=sTPj_WQ2y)i#POw4F&Fj zRe+B^1Vjb_vD{Vz#)M!mRo)~`|5ky=QfEQaLK;ibN~(ij4~DRx)*Xr4wM!JiVaAov z4ExR(5?6RbzeYE2`n$5RhvtwMx&K^UGd!eCn{)?wOV*5f@w5B)wts=tXBt{IQc=+r4Y^1MI4p9r`i@3F3?H5XGtt`Di%a(jsa`~N(hPQRvJT&Sw(D$oyxQ}c{-z-g>&W83M4 z5Baf!NtVx3IPoxz~h zt7xpYb2|}e5>ZLKB+DC>&WaLOAS;bfSJPL8OgRdP+OZF2M1f$~;-re;wTOabK`9~6 zAGW-qoy9|>biAQa!uv_5tFpG0>N~2ilDUyN5CadgLTCgQffbFc;#^$MM>u{PCV7NW0mR$S3j$N|~9$D{;+*Sb3| zq~I>Rp@GqcF%OvSw3c(_+?ds`a_PC=u)iq?m{JkQhq@1Es0S$`-{VXtsC559vTf8BO za=}n7TrYhyHopTn&9{5I99oyIX~J>ihTa1;aRsWg1}NeHRMxPElGPa=j}BG#rhC6` zxL2vvo&UnZsgm~^&OF|TM_}|UU5`7!nZZ|{;s$KqT0vbSl(^!p7aIS5wed%xhF9*E zV^-gkjFWCcjq6pwuq_K&{{#ey16uWTk&9^47$%*g_6MrAc8zAW%d{w3P7gV!@*XHr z0_13tJfY5TQ2Zk`d@74Yy}&8Rl=h>yx+ww2J*(_%Dx{r?5(HUQqCV)$J2b%D6F9gA&4I2j|*TONG3YcseUS{w? zGOodL75zsx__Tcn2s%oykX2I1u_%$e=&LhY7gSy&cQlBN$XJJP=H^u10_Nrqld6JO zI}1BtCQB`Sklyw%+&MtpU@+MEbp}|UJs55F)t7$JP^1nYIYmz`jVpo=NgWk1adF&@ z_mFECIHp4~b+A`vL}$_m2Ik0K190Fo?8Tiz+(428{Q?*JbI*NWmdB;7l&1k>R*Qpp zv}mB0d1)6E4^A>^E{MH|K5GiYs2~J=jC#NaexUn%isH|UqV3VgQ6O4Bk_No#Eb1Ut z?FD4Nbox2jQpumyNj!(KIqZG}2tc3EO72kkdy*B=HJX3dOL%%Wf;9(CgvLD14!)o0 z)eZy3`+$s^105jjo%U=BjnJYyDU@ghH_%waktJ>=Z36E}2C9N}%U#vxajq@{O9O&_ zTPrT)d=rh^;w0#WbMK+&%A}ANp+EcBX4?+vq}$P0&IJ?O?*bJEMB86C-}^;b<5L_U z;n`obi8la><}cyQy>)P0Pb9u~;!>w*@$CL1WaazJrJdE2Fu1BsOIrvABqh>U^5PWN z&=jLn#q9)D1MUI9tKt*}zMfyqG?euvZBo?;b%Dy&g77(~lF!QU`=cB*wa?K3_%?X5 zzA0;)2+`aDCr8hzR|S+)N^;$8%l`SaV7RcVi!?*CJs-`}p8_x=N<*7skZeiYhii;r zSuPf*AmH_ZEJ|6Og3udS-^8*_K{JjeR50pVdMq#^ut;$^ZgWBn>LXgNs%Z86x!f<( z>;MJ7Nb|38{Y_&uH;{5+2Wc$WZj?P#V-BaAE|}FD5Kq<$h;QfxD*AUZeV{<{J_)Rn zyfJD&78vqh%YV5$Vy5@C!Y044?4D?>UGSRCnS;nhKE(|Z@G3Jk*9<&mS9kR5OD|nm zP?qz(nXFb?D;{gdO(IElQEzY{Y;~5*afqXErJH-zkzq|^-DMU2V!F;FKT@;y8E$IF zfZWap{RnleS674?u5_|i;S0MfMLitS^U+g&M+)#xL4F%Y;fqE`zuxP-!IK25qmQJy z1RZDV(n2zpVixg3U01BFuL?Rov}AlE@+K!X#=iXvZxO76<~iR$s1W=*}TIQ=`%_%&nW=1Fy;KuobK6S}1WE7>QQ>KQt+ zml9g=SDq^0R>pdjb+61WkCgEZkp#jR zK7Khr?q*o36dp4EftEPqvBp7luhZ$MiXDfBV}s24U>_58lo^Oj3N`u8@~i^4NObfQ z1qK$wA}xBBvkZiB2_7{Ot-h-j_w*uaW27t9!k-$1G>Uo-at(9T%eE*@Mk}|7P;r^a1you4?F08UGt>T%N_E+sfooaTge%B(n z6ID5g2SS6v<{!Y()JztkS|BGPjRJya7@^k)wH8rpkszL0y|3M0Db;(uU6J)IKk$1= z&*y~;yGWnuBH!tfjL%eTeb&6@VsLwHa8C!HZDT-d2@RKZi$^CB-Bz0LT9ji%_jR;M z3M|VahWuzCvz+`Ca|%L7Rgn* z+cdDsLo`Dl_!#0e3&}_VLU)P6u&oL)aW_uzh^-FV$u~tZ!s*e_!pEc!bgp5v|1|lKhCyN#mLnjs$TD z7@M_XyB6xymMiLc1TIzBXsDKLZ$oNgYqZsmZfO(gD$x*$e}qIY@Z{4M7?h?pFT-rL zL)b6tP&ZUCXi{T6QcOs^b|hUXG$_uYp}YPnKBV`#85V#uS^}55zZ((yGE(HiP~A1F z*FZIAZvpw{7M;~|MqGk+1>(TiHBy2N+Qmq+4YF0SJg1e|Qm2!|P|YH>cM^635Ty;5 z@gFQ#=c1Wh!vInfh*ATT+3r*W%BnJi%4z`YQhO^weZq}dqfJw{gTO4%?RU~0DVCEP zK9Q(Z7}iyy3t26g*Vu8AU(GBsIu$u|nRQ7R^vOw-f?mG*t@;Vzp;eXS6%SSuLI+pDh_9U899C@n7u4$=PPn4c(3vDUCbyUo|A^jVLBfbGu4 zYmH)uJHl%~O9Xn$_};eFkKv$X$}7qDK<6bm!FO|f#rmM2%X#gRI=|Q^NG%UG(@7j~ z{-=}ECj=TiDS3r2u0jx;D2U;mczQ_#>qVmeQ4NKuJ6SkV1HdnqUSO2QQ!3%l=>izK|TY-TzpLgv6IBUnI% zlU_pXMwCT|l@@d$LzCc0&wzez%w zFa*9>WOREt*+knT;*)IM2D-q7XUStS{~jORz3QU(Q>6>le4j4J`=r$Xj{4%tP}1|y zu0J39zChkSLX00Y;75r=%?|Z4@dD4t`ZdZ{f{(B?K0CVC%_}YaV`Isu=Mw+&4er~_NgTc1KQoib z61HIFdJ)ydxfS{fA6SMp7P~K%kZa%h3l|FO>nVW(q{fc}G5kK0E}WS}Dw2v{U(k7- zZ;>Qf*u%LfgC+nT8?KiT0cbX7RA%<=Qm=8|(5?r?&iUn{d1!tDdlP^he_EsDidaNa z+>W=b2_Mmc`h3~t8^&!vIwGkB)9zl5aY6<@hB~VQUUB34>0@p>07)bt(be1v#ZvXzPiMkkuy z;=#g#zeo^c#0o9OMYhRq|07Y(G|2wejE$F<7mvm8H46(1%HF%xZFO*z_Or`lPyk}p zu|PxShMqD$t%xNhk7bF|+HgCuOhR}#Ts0DZM*I(hF`pqkv1#eb~c9Qlc^YjxXCaa^{C^@(Zy$q(}yO=1Tz> zkS_{PlMrQ|hxX_qwv)5-5+%M4!QWP|GB4J1NqC{{Y)g=H&&`q1-OmGSRj29~AHzR} z6~5&G9C4yoW)5Asyf!s81w}e#D?B(e)My*5MM-$fLsxmHqYEe*r^y3SK%)Z|d#IzM zBWTcj-hc4*j3;8k(40qz*NVZNe2>V!CUa9AeR>m+{|wq{z+yoe82#3@l>7fs^w>#GL~M zET(|}I1ftyZ+rhi4vax6W~$z0;(hWBtKnB#!^6WoABQXs_UHq-J&9Gs&-nI7;9_=I zLC<6~G@g8>eJ%uUCw%cd_#eOe(`fogAl%6;kQ7|wS_ z5m3ZE7y~yW4CmWa(VvA8i8*nE1reOd00Z(C-ZyV|^!qQ`@OZ9LrXu_0OE$TtP-HS^DI5&) zi-YK5j8)s*7b3jt;=)VD;f(+HtbXzkU5Hkrdu2}&S8Gw-DoZMlm3Hn-nKB=^jWDZ8 z1OwjgAyyDp*LbCc)w@JC=aapWiMjT0LX>vR)EM{KLh!Jkra{akU*fS@8#2q4g`okz zfXup zGF}H8OG3~-++%;8OBmm!C*@|9-F!zZR;bOT|9C-!EJ6XYvv`?io*{UP6lr*%SAj zu6{0zm7L}dzUrqfI11|=BNd=#62d|#2>?ocVZQL$%oi6hr)1*b_A7l^2lqjk`+Oht zTU9!_S`AkFaTb9;j9+f82JTQ1CIjzpzr7i)iVqAVZIj9pfSlio-X$h>xBxopg-uPO z&NQsmlXXrntw5tGl(}U)>7v*PNARTcYgTZ$a0 z_(MJ-?Ektgd&y6r%RSuRACt{yovt7SHA}BDynS}y--h>q9J&GuvSkPd_lxJ&1zv&R zi?0j=*~r;;KOYNae;H?Gb@fF2)jO6gfw02bEVhQbP$b)AjU~mI7=An1K>A;yX#;d7 zs}|oqnHbE!(^}{&(~81C8ftQu6a8m>xT!H#5MAiBi<8qBXu!5_Cox&71x7Pjau;0u zFD){{Br}-+M zG5uqH$e$r6QgE}Tb?L*;!1xgYLXSe9j2a+=PUkKc9ssnux78{_v$gfBt6 z7H?Ej4LG&m#H-1QMb3bGCLO$u-;a*a4sJ)(i-(VokAbDtAQ)kGKmb;I{pbY(qy!%! z02Wcq!1{uevAR-iUYkirQk9ajs*eJ9Xczd{@m#6*855N+U=az&f4zEP@TGOIEXn83 zpG$>3_S2AIoI<(yc*>p8AXW$7HU(ay7RG=by|*^f>2lul<^O`QrZ@cYF7>y#Ekd?g8cNL_$q7`;lTBKh^v z`!xQzyiV?JYhUo0OWip?qczERruds5ls+=(3MQ39MOj@fyXVTv24;%v)JHg zDZsY8U@I+^An?1sS{_gmwbH4!R?tJDWLW4f{pKeSPc5D8@qr!X4P*JDs@luEmykJ^ zbs_`+ICerlz1(7CF(|1CU~vg(Z)*cz)eW$0ykslcAAyKHorRfV4esyn2Nz!DH7KQa7I%Y1qjx<1o1!(H78V42n63l#+w z6PC-7;OZV_y$FRnFPD&))}wZnhLOCmAr`VF4o&IsVmJ4speD5U*O6Fvg=rY*a4vR=~H%dCE z(p93|?GIPEZ~E!eh1&F$8NDN?ndh_z(KR-^!}!iW&;!lHg-2rigpyR`G;w*2v%6Jv zXN>r>4w`YMgji;Dp*(T3Tx=glNv*-ngP>+jsxyoF&0C68U&&~2XUk(DMp}OB9Vx(x z*#jvv$iNEY`m($Kt_L*7UiK3}HdQWL_XIr;Y_A1_+X17AY&vt_0s;agk~oEop|OcS zFpxQmsY(A$AfrXGQU*`EV(5owX6~z#0I++yj|TuoCBM#p+#f;%@=-DdbZWosCQ)q= zLXrIDmOTIDGH3uQHVq>omcpkIGA%dx5c#7Ui88YSL85T#wdG$S{8sgNL^O$1u41}5 zH8nM3;?lf2xQ+Ueg{|8eaG+IAj7*_NQp9;(GnMmUOG!~`!avDN;FYJxio}I1P1zMZ z0BsCg->(8mB~-o{8$NdB=9;UEOEt&@&fmkG{U_#pgi;B+4|YUQKB*#~k$30FnL7+vTWu3GV2g;ZmZ`ds$u)`#=SVju&B zG0`j|1W6D4KGpxGdcnZ`L{CrO(*ejb9bC%D?VL7$aUB~g0o;qt54`ja7&M#GQ)LXa zK?^}{kxl4>yI$m^B7afs9#Wavf8_)uJR3`?HpZ^XLg(gxLlF z4j=5^nHB^8#2^JPRB#BG1opvW(n|%<2$|12Dd53snT!H}vowdA4%_KHhyuWFZKSxG zcgFLE_kH$DC>eeM&kJYP*#c)~@^@W$$I+BF%Y`2>@*WhGu4n6uL&XpT5Riml!lg?I z@@x&pGr|UNN@$(XlKv0B=w+X#L7%yE2^ll!QTL$uZZLM6I#*M*w zEm21l9qwl9^#N&NDzi7xqJ{zJv-|Da#Dq-~H9>Oim$$4|J9F*Bps=BtB6`Lp3`hZ^ z?OYpdqS2$;48I!0B~2wIrDG+DC*iUGbMsJiVsi0V07S`WMrmJ z6g<|qE%VHNfr1JTZS`eI*iGM6L|Y%mC_kQgwX-GU5*YUg&d?77l9c^^y3eL;>6!jg?=P-pS_eB&rIpY%4mHOm-!74^)0qg264_2SPX8baZqE29v|i>P3Drz^93;g@9yW z;v9hx92Y5{B0y9aJL3e3fYlpg_5iQQ0aS)gXh9KYcxcEdJw5&ItvQo33ZCu(4=V2Y zvbf=k9H=E+ycZIIf$A#BGL{0aqMVqSM2x}zF|FuyU41j8F1Ih2OR)a9# z`RqEtm3%>cbr8?ES^ZS8x|*BC8f013Ux`7@hC7~5{~>iS0Tg5TO=;a02nUYrgJ!uF zSGM(pf#weeuy6t0&1H&a@;&H4{*Q+Nff=2T0Gk;FOtJ#is^NhF1Av1n>7^sn?!EXl z1<;3rTf)7oaB_U0OReI`PC%Xt;)s_RbCdz_IR@9i8ZGg&_L%YDHAuWJNjYy$UdE*( zk^;3a&(#YTqxggTd0Qm`=uZ+WrvQvEg{|PXgG!%*3+Fxe&x{i_b_U0$llGOjpjV|s zw$79cP)H;N09?0+eHeojVQ^=faeMuDG*3hghS5BM`2}1c=rGW_8F`oZ+3Tat`W?yq z=LJ!4)v$}1e@mDjA+gUuO~J>E0J-~_SQBRdg_?_326f#AoK-A);b9(sv5QNCs%qrvCfW0`d92gxQ zN8qlsQuSrtx0dp|QRr)Jzsf)qkDB|%%l%gFcdp#2jAeetKLHHXVfDte*i#xn!K!#d z5>Thxgv^Yg+^^tYMud%hUXNMc=Du+>Dg&uC2pe0zl$<`%ue#CF@yD7t%ODG%$OWA( zjS^g0+~YT|%uvqVerTHR`G7o;}U5_4X4>waU>mI~M^a1asp>0qHuP|y3--l>GPq@AJ1LtN z?<7s>OsHZ(zzwWVRDakVodA_!LzkciuP)2}^7fJaEwa=`S`8UHK2M4i06jiwjfo(#d*nY- zL0zs2D%@Y9$Bzn22uVzy@=`CgIk<@R2Eby7w4B&a*~*ByXeSEWIP;}2SC$;NTr1~b zXFm@7_IFvjpDAgkLoYwNUSvW`lg%$~t!a?!hQfKbzH*got%zqJf)WQ3><63!rc)7mMm^b#RWK5~I%uHUoSo`eVdi8QjkAZh|?u=}T={Zn1c~Sa;<)^AGfvXuMjn3t+>{yF(I?Vyv^#TZEw#%xDVTe3Kkxob1QYVeXGZX(x=GNc zVa%uK(~k40;2DB3^}@2bhk%nSLkXyt>3q4j}P}; zXR#;BjBX1B9D>Zk3SCkLS8~U4WaCz==j7;pcJa!aXj2}HYH(aX`n3D8pF4OTToeC( zlJ~5%!pDBI??V%9M0Mlm=UJH+mz;Y#6#w{NP=7^(j`9x~o|dne$f$YQQ>ZFp-c~y& zH*O6fZ?66*RXiHMaIYL>AeT1B1&2kx``qVSaLJ|QT+8lO3QrhQO12Ue*rgPnitJVm zv7e2rLxV(Ib$?(WdraHo7R6&TryDclaY`a)=gvL4k|W7FvY+# zO6H!RRxkOdR&OeW1!^2sC%s$8kyhgsSEm~iST)dJB{8rvhangGj_TGcMaduA@O@qy z*qQH_%)bZY00FV*GC^Va_o&x zHBt5GBwo81Axkv7bsm7Mj}P!rP5?eTVo~6H9lWEI+%cMH@4kZa`XKym^i9Bp4e-T* zGSS00QCWgCI~WW>!OHqZYFM3LMHTno@<0U^CLZ!|Fi*sYq62)<#<=OIzKK#)YtexA zNVCDMhb54tDk7Xtns;}sV$p`w+v$ris!N&4^P@6w`VDESh=E*CCGsC!duj zzAV0*&nxnrBhC!vEdw`n?-W)tx@%80#3??xlld7B)peQgAbSTbhkL2Y^Z@k3F%{%< zXSqOmE5mE=<^4hdb5#tjYHK}9T)k5LAhvrA2BGs2U5a7*@d7cG>6-gn^8{?!O z2%ptoPf^|jUrl(h#B7EYdI1HsBWn1A^^_yU=y8xDGh>f0-+-gu-lUnSWB_>ecS3k@ zGV{ahsMqB+anuK|?Kc;!KIX{gE0^IQXiPN&qnjr6_q(gT67ueg-W*w1>J!2Q*h&$XzZ>m# zFPTP0AHFA4jmM+q;RZwmThp+BTue>k0kEzu*G82pZc1_&Oez%BF488zBcM#Xyv+riim0he? zm-4@L6V>%y!Z{^n|}#Z;V$~nS97t(9b)i0Td9>6D~y2b1`VaQL&N-l)n-PP%Wa6 zf?g#N-}OfOThMBpcx*CJK#aO4@Sy5AC~Fer>HpmwYI-mF{&D;L3edOcB-`ik-U%O` zn$olDLWxVZgh65&J?P(=K7$aVPQL{iixNllu-*0E#4G>N=(SP}MM@-Z!+wRXr{XYf zkVKM*2NpCoPHon2i3lFGJ5!#_7ZW`HHb3y5ronY(`LvtYCHcfP26+?oS3*b5GXgd| z#gnK6Y5{)F zN7QCn1J#t3?4`hH2EtR&wL+U9_cgzmOQ^6%2>i8RO6wBbnT&_jwC?Xj1y0`MLnaID|k`>gJq=zyanKG2+jv8xL)f9wB;K2+!!y3GWg3} zgx!^c(UHQCP1Fjm-!=N%^18p2-{^VWz;O7vyJ?1>ijn98$q#&F4j-AwZ)ePn@QWcq zfp!n-`79T!Wxj&jeFk%eckwIzb;2XbPLCD64S2}C9DBlzKYYVG!T+g6X3PM=;|)=% zod+>AUd+d*$?JHYw))9^@3CHiwQEN$WUt}(`&c95j1F@U&-TzA3;{vG0iV;n)E;k} z*1pAfP0NO1%Z||-O_ZUh$K50EU-x?~EuWJ8Q>yLThTM{a$`Xr16k83ZU3SuW);j1M zV$J-TbS(G#wcK5d4?|2>Ha|#9xP}8yrLT7I$`9?BlnsOn zb?PH=B?U@`E7tS;FZc~=jP%Gr8AyN5mU~LZ^b=NIJ+A;g`%X+sCuJ9XA|qAqnAQ6k zvSJO zj-rXke43|ggs#swfg2sE;4&e%&{Cw2P^ZA_y5iB11fO8ID*p{{u2*2^U{YRI0D@6) zK6EwFUkH4C2i)DS7=-~We+X=E?c}esrK;>iE#!B*SWMEo%K-2HI zfhYf$qFVCkpXNB*64g6b-+xk#KYS^`T^L*1jz@=#*~_(<2$HvP#|C z-AyBs+TBeGS68gspNR-=Fl5V&2!4Mpd`Yf;Z}EnYAKada;M5%5{>2+%Py^LyW@)i` zUD3mCr9_>a6_*h`m-LgKnPY|it>aeeqw0w!p*^MjgSDuXX)@LuOg$B;9Cbb3-|M21 zrZsfAC6|7TneLnP6C27!yriatv56A5pW4K{GZGIOs|Jo|^rcA=4st=B<{108_C3JL z3XE2+mE%&8l<->aO}Ds_5oSr#R5fks(GsEE<*s9W*mEkl93e=63HkkG7{MlQYb4KS()Ga)9dwm|2~&r|5Tjw9FK9o z-yiqK{dRqD_xTBCdcJ!cC&{p1d;Qi^<|@aKXRIl%b}hpZWxK@Poz6ykUmMq9=1%&R zPDioUoj9IL5a2(dd{mrjtz=sdix^HYXS*-d*eADV&L1xi_XCAjJLQ z;!jm^N9Wj;$obsw=fZv@I@W$ozHo8J)#RRt3|hO){OKK;4}sLGwc5{j?C3{7)1N3Z`26Oxv8+?~Z;VUGj-97e2~jo_NU!YQ+ic3Neqz%LSoMe9<*#$Gk^Q&II*e*F zI(BJ^fs7PcXojlu!1a8{+ibU(Z1x6V=5o6Q-0>ateJC||OPT4J&$Fh0jT!d&$P9M3 z@H^|%ayDb<9z+d(c=yk`4t6qvNoqA%%pcr5%?ksWLpf{hJSzC@TZLpJ{dmgbR&*v! zLiU1`R;!yLGKULTly$E>VWb&8%U2O{b*$l<_npf>_NxMS_R_R<5(KNtOHEPBb+4Hs z*&2PP-VL2xv2orh+FiNX_}eDMe_*diP5OiJx~k3KAMZqZlWi4?ky#(p=l#4L!UMlp z%_gor@MRWUo6;|r{G8khF?)uj{*wr!`jbA6l>3mGx)U4u7PVsolJR-dr{eKYVIVf} z!g4!2?&N@!yHm?<-dE|l+Q6NrWSdhxmYl15O48(_Scs8Su2IdoMajz~f4#^T`SrBK zEnGm%5X5rFs*NP5$P)GPAG{oBZ7NkNak|(I0av zn$DWN#812S(n52rG5)Q;qr#i|4OrsB+jo{L!YY`i_!^fVX=mSSkc*56ecqm&XZHCJ z1Lqyz)7Bu?mT`6&Z*cs5&k_5g`^x7sD_8E9*3z&aa?0`>Z9HtLet}Gw(&RJ9bha`J z#&Xb@;jcRFA4tXj=y7|2l74v)V@_ghnc}5!DlYb`i(wzz!d@dFWuBaF=(i{q^0tHnp5r1pz=Gv2;uZ)Yp~^RJhU>lK(z zBSmN03S74%;c>D|sEeN1|z}=f?c};v*24U2-MQT;=_q9F(`-k&X)d{k^fOTxOSE%Ei5LcdX{~ z#c7nf)LAiyHo?=i5?S&_x=DXG$Fh00X*u6$Y@P~J9saO4qsc6&5%eO^-OCFkEW6%} z@!jgru$Q#UN~Aoo5sD0%d4?O^pgD?u5fzt~AaJq*o$R}kFm%#@L|`gs7g3i_Q)epS zHNqL1J!0lfX*!i!A9W3!$?<`L#d8cB&88Jf3|5ES`MVo1252uK%W0k$IbVbgdtMlS zwp`ZxmGIf^2l)s3d()wG2g=9HKZ2A@39$8$N$>;5Mk< zm$7d9-2oeaRrgz1eAo7wDl9n-nb1ecVl}`b>sxS5ul0t_L%D7=t+0o4ifC8^Qy$72 zlJiLFG|kG>tQ)`uOCYzjcgXgyhM-r_wD1k>x56yn4`r{{zihr^Ix|Zf&u>vZB(?a; z&cxDHS&u~{C~&ihwZ*FtQ81mQSOkmKF;i-CU|yh9ANMPhM0I08-FpKbp`>;6L5u4U1=zPD&Fk6ek$I;Lo1*R zWz_nC$>r5$h&r#p6EcT zx3E1uNgd-Iij}qksaNJ7_kd%F3Ny3PBV)VbL@_c>)}>NlqYm|h?X9}BK;IK+QKY2;Fs_NfV^279-anea`5< zkEXF|eUW|EqWWwRAHlAwkEhrRmoI_brqc_Cn>h>mh4b~}yUrP_ zXVgQqF%HAEw`s%QBbx<<&fw-CC`(8c3dGY3C~b>o8e z_WS*{>`9IvB@5-0J_P3%5eY1%+c_K^6WM{YpZDT3AuM^0MSId6Tkr!bvAK)E&FZ@SQDDt;h_mfVBg`fAf}$G?Yw z*n|2lEbAxzm82DG6<^)OfAt!5RfV_uhT(qGBeeN?(O=LrgvYZ;CwLTx4Kyh=zXJOf zaq$llr2E;rm%ZmpUml?ab#804chM*?7KGx_pGhMdABwwFL$c~iu5$D*5b)D*k<_1P za2}IHGCYU|JuN2sd%X0D8tB?va|vN+X*^zyl5zg_CmC^uW~Extcs9VcUj@k>NbNm9 zeM3~fO|1T_Jww`$uBUm2qJw?}++z7N{VD$a54|!ps7RVPPoGguc!mZQwrx$E>%#bl zo9=rc#>arfMAAf)&h0I`Yi-e-F7i>2L+bAm4lX*Kb3G_rNHQKx_RLLYS+9({1;)Ss zInY;1ukYlof7bPv{CNRet6@ad9*^s`2g92F^zDkF6=!4JeZCw+gFKzGBoWT!Et8Hh zF|WJQ>qBuGhHNZY4yco;}@wi6Wz^oA#0dJr- zf27&OEoMYVBwg}2c1=4(hSZo_g(B{^p8XZ3B_!~r$XjRJIKto?H6Z!VJW1iw5ZFH# z0{T-)HSCsqTmxV`Y*}7dzO35)eIzkjS^0A*bk_o76rZcw+UjneG0X2G7@F5l<-1C5qL#x%a5b{u_#F1y*o26^RC~sKLsPk3^`GCg z$3^`vf_4G~!Ni-MeGs;=+*vPKH=)^m&>78=vK_xrzNLHj)!xU%g2$?JdxQRsc5S*%j_zs5Wp7o1H}eLuy~)|51Q5h8o-5`!;}sT_B)dr0KM}HoG7Sl7K1{#R0mA@P z=Qr<0Nvgp=e;@JLUU)fKgMc0k;7VgY^qJG6^tt{jxi$sL)7llrM@_u8Gb6f~vC?a= zy9BZEXL#qTp3oMKU)x{$&esrFl#IvdY+r@XUiNsydHRDkmw0p(VF}XpP#8IKTrqYQ_JO!~%#73J5w$kq+Mw{vbpSOrs2RaKmf`Qrah>=WQ%flxkCB! zyQwBx!%)|$E<7DTUdNRMUQu9g?nu&L&O}HJA?#nteNGPUpJtdwI1JMGW3w5hfW_Wy z&SOxpY)!9M*pX&S(?S|_#&SzgcaPPgZ-10Hb>=JeE5%0x5V%+Q9v5F;pH(cI+UgV^ zm$u`(XL#mqnP*MRD9!T?KC`7zT|O`^2!Ei!$i~Ax1!ZzQb}-D?HtaOh+&3RUDyY|i zY!bNv59vCLk7(5ch5;fs@0vJvQk{*kU4?Y!JZRDZY4Q$4_$f0_`ii7_2e{rMl6$}e zU}!ok*g)#{1jO&sqacAjydfcrewx>IbQ-9k3p3K%vy4sryyzZG5dXaLlGtSQDY4&lle%$Kh&5hZcsklAJ zB%i}(cSWH#GkdzjlHb`x>M6-KEWPtdyzXi&iocxg|AWsadW@!_`@;0c$hi0QxpvP* z+^n9)qGEqdbhlq`E9h}iMan|xBhBJ{hc$iS=^aE8xYQi8ofy64{!09K)SG79N_ue-$7hr8t?G@dfS=!qboFnMNVlb-Yp zTN7F@iKG6N#m{8@l;-&m0nK@mH6Nr`^9@CdvjBSp&kvZc! zsiN9s_?X}^Oq-czO>BOhoczEy^ZjINz^|^h3+KeKM_LHBGft$R(|Fe;Z(sEjb$GYg z#?{!ta%V{@F>mVQxK4Wi71qr+{)tMq*ZR96@@{Xbdl^0P4$HQ2Pt0=6^HHrH5^q=@ zW0QuGJZvp4Rh6vE3==P-KP|%)Uty=aBH`=qvRW^eSmT8t1Q_C>q=5g6+)vf*?HZzq zC!77&>bhD{HaM^PTuHgpGUk7^O!Q1l3U?uA&$!^#$9`GWtGM!y>2rHqyn6=m_kEWa zf%_Yal;2%@l%v_%7K(|j_hxpUb7BeB@!=Nks$LD{kzvN;4F=_IcO6+`6op39Qb?Z8 zdxaG=_l&rO7W~ zn7GNQ?WEj2V}>W`NHIJf4-6KB0bzi^2!Lp@*{x>P*z$?VA=_$gnlje42233_#4~dw zDG8U!+nzk)=H4`&G0-1)Fvx6AandPu00ijq{3gWEuxniCvxtOSBLvaT!(>3{2Z#jS zg0`mpOc}M)KhFp372Fvlgwa8aUpk+CK9?qc8cE4-?1y`(j%piq-ZT zTgK^J!y2uMjpK|u#IEG@O56I~`NjaLtQwKp(N{jV*%ju))t=pFsO6(pAscu==IZ9N z%ba;C*GG^`d6Bw#Vv$x?`r?g>nH^UTX_K}heOeAzM;k5{E32D5-9=^hTR)_X$6K;G zL^YZxmT|D|d{bwU@}gF0di#9&zFgp)Dd!W+e>PtRZhQ9Ya7U0a7zcD^nCTzgO}*bb zUp`;)+RQs9s(CCDlLqOg%l=bw7cMZWT(*4OxVOcZ$8?BM<=yxE`>Lt>I+>X_d+t!s za^w_$HZI*#s46Xt$no6~vioA2cx7d3wr9hFqiZ|&J6nfHB<_F^@E?BxAQj?Avp|xf zX82|1yUy#u1H?x-E9d)LrH}skkjX3fTL^~Cz>8Pr2p|d{K5w3k&`AIZaEBTG#)o&j zD10c?&dvfPh^{8?rtw!BR@--7_Hbl`sqR*$`*vihI8o8$;&gUjQy~tr@G8* z?EY3?)rwJ+>Ozll<>=TdBI36x{THSHpo;@40)Q>P^C3eF7zhV^gctvU7`o_%vGJey z;X{%@Rrn8~0FNYH7WeiVFgTD=*m_&+-;cv}Vcbj_KSZU0y#EG8IMhXI_LF8}Bk2$I zpq>>*oZJ*{{~Rs&J8JZ%YF_>3!(2A8c?p~$(7Br{o{habUnh_s6fq@ z-!}YA%Jc54tvN{=kCqbeHhN*d^$Yr{4wm?DrzIx0Z392v7ZSjtM(ipk#`kx>vpJ*p zV=dX_mT5Oy1c+W=d-BvixtslU3oB=|9-@y#`)W;J-To=A`zghsCg!W4RhsV)=sT|+?9B(H2hbI1$2N)ULImq(8k*8pc z3zFmAVSO+{mbS6D=>FV9lGup^z8vhBKF`O;6eY# zpa9D`aTU3A7>tBITpdM?Y=C08;1;mMz8pY=|z_Nf3`23M%uP7{i ziXbf}j`ds+j{fIg?Gs1zM}vbWdm6l&WmgijqvFCT;$;8;c)|Q zKROu6|Ni9v*Bsa6O8e<2en%iC+A8*cunq)@0yrK>u?SgyR$k!#LX(p1KW{PqoRLQQ z`eN*`^o`mmmqX>~w&Tzzud3W>oeOPv8u!-9v+I(1BSL;QC0wxRMdKR{tnpobBDt5b5gm1k&+8OkeKmvUfi5wTetz%+ zX;03wgs0FznFI7m12D+nbCmGmOa9jriR5m-Oat)&F|nxPjtNyp2WGAZ@EmJp%?L&4 z0=yBl@qbTdPY*m7EV34MvaOjgo;%ilCY%qrCv>%=t2%h5(RcccwU;$p0ym`deXcEVjTl?eeU0Wy+lk-bjNimW&WUy$ z&XwYt!_AgC59S_^mW-{dPb}EHc)qHuihbkm_=38H@i<>KDx-?K4ft+exgHT5r87F2 zTu%McyiT;uMomg&`l$c}ViCBOG6FRQDKR`wYJBMfHm;h>o9{mCJMC}o3bxWF`setU zcE)1ku6?NQnRE+WYYX%2{_?AFbW?x($4J0#%sGu9qiKzGnHP3nMo(ldIgMX5cwju0 zZlJZ$=hPa9y~KHWZl~l>mT{Gh+PUQJG-F`bZbz=at;*F2?&82^uQpir2=TPcjq(PV zKM9SHi1td|&1>A(lh$pkam`HhsOu1oDKOoJMYxM}^P+ ziuJ~ScJA?6ULD1m`OMrAw`=KlbnLn37((=Wa)LZ+g4+qXw752f7qyZ>If^v%@0%rUy0dm_h9 zx!RwC@<-H(nG^j!=I^}C^)0O`-S-mo49frkJ8zOYsqE^0c5bw=^ z-=F6B_4P;(k55LgzJdYPg(z>O|BH4_DOS<`cG{Sw*Cjk|hW%mcSx#{yP%JQqPr0=> zrYxms67HQXPBwJX-|b7{wz^e`A87aB%h8&jDefxvE8vWcIN_jvBWa$Qg2nCb&d;>K zPU}UVfuAvww%IH%8*GIL>}`c{0?)JFde(1d6s&)i+xR;~KQUsW%c7C-++FyUz+N%6 zwt1^fyKgFWW9zDkheR)SV2W0M=cQA*ShSnO-d_x)VII z(<-X1GmdJ?4)-hzy%dv2>HQ{EJOZNjJqMqz&m`8`<@!=)Qi`7B`@3;pXrU(|>uyhg z#m;D@yOT-3lhG*qH5K8ZlY#NjuIgvsPmgxnIS4ksl4JoHKqQyZz+^}CpM>ZuZ$pH7 z{)+lf^obOo-eqGEeC>X2?lj{xgzi>79=UETlG!X$kB8nLUQI5`Ds$ZD`N}KD8*)0f zi}q&XOpj}em|m;b7d=Df2uV33bN4X~+U1hhsfC$x?hPI62Kblie-#)mt9|~X5#7}% zX_Lk`u%fr8FA!gR{$=~~K%Vj^;i@tl@xDLKo2}Dij#z!`yV#T@-Y|8J3*VMU&bklhvwFo9zj~p>_X}iF*F* z6We8DC#jOvABqshQWuq*F7M63wk5@X+m`K*RpQI@kuv0aXB&4`nDirTY?r3m_`PcE zkDAYaeiju;+u@ZPHSlM1IoQ$p@dUFye|cBmXf5{Dhw)lL2EYA)*t>#bZ1;jh{5(}F zvL6R<4zZVXmt-U4ab#HPA6ZG> zJfGD;;4#(v#kVCkuIX;XjUNpWPXoW?7jB9(l871pPJ*+?|gnlqEb!?A-tLZJB~RcyDjFXDLfOS9MOObBAbI1e^2&w6``Q zoY&j6IZTpH*JD*h=`QM?bJHi-wk25w4eqAv+3cgCs=|4KGK z?E)Zkg}2}NcXPkco6KlDh~i*--{+{`=WnL-@jpqIb0hTwx9YMhvg>CVKb@eS9RG7H zI05FgVlUn}iG*D(i9As0Q3DiKtNrS3E`!Y=kJX{2+qzU11AnbU)C}l`M=OU1fBAQP zmD~zv7CaHBT4pd_&F(vog)NS;>MI>kB6W;n#!1-5e~zzuZY|~U#`_O3>LLrN(a!ON zg!qhQ_xrXTD<@HkuqQ&HoFt)6M#QPJ?@$GAVR?{(Fi_S$=H91&*#GiA&-41gG?|wR zPJYgPeN$)FZl1|~DFLwtgUhA!G*En$@#d1K+2qK``14Xf-y0_5?c51knG$1NS;DPd z4}BV-FeFd@k_3!$O74Z7r^hjPxtpD-=Z^&EljoYxQh34kj)N$7_b(AHZk@pzJ-VL! z%036JmtI~j>?Z0V6E5WTQ1qOHp^Fw{AdSuIzpoMADQaA=#{_%uve002O=6$)F$ycA zTQ|1V4wO+cNFsQK!tl88r^v$VA>r|V(4^dLe5f;!06r+g2|?k5W)yQ(%L{m?IZU;U z5ycaZ2j1wB#BEke41S}Yge3ey(2B|Kc8hp}&=jV&Sflp4P?M#R@zMVdPY~Y-uOmS) z>mYT=`=`e8U(5(~028&jMw@B(D za`sZ-Lh?myDab?dI1FK5H0BD>*4F_zFoH-P$|gX${Os?aX$KaTi=yPLP+9o^dca=g zeMpnKd_3j+{Jh8oc}o&~RrxEUHLl@6xh#EK7lrATExv4SWn~4jEVCOJ*}L-RAf$P# z_wziOUCsGn78NTS+4lNEB_QCx*u~3SWwiFbeAey8c*9th@7$AIFnk6Tlw45_TKU9%`3t1YCSizdrxcNM`O-SS-X!8mKR>>qZ%50+9a8l36blFU z6WGl#;E9^y`VKV@4~Q}pk&SHV`*7_`k3vggg9K3NemS?2`tw24XTW3^V3j4$K-$cK zLzG4H+OS9dHPnJnmR;@o3vP?PO;D+#Z@#@RWT&IOUcONfwSx99|1Jtgx;zR%=3;AV zn;4phn+PdTlGN-}{3D@y-{#EFmq>A>C+A=EeFHf~a$e=|PfAb{Orc%nG07HEZc+7D&H3>slRP$&_ov~)9K(`-&BYbf8ot!`mMWv3+&j^s z^yoYkPWt-!-CUa+cx)-JLqj!YtRGi=$0)v)pDW7I`y)tbC%K#ZjgJR_>FNjeLOz4< zj%PFZ4B6zd9imYP{dBlIuL25=#;Jcpbm38KBZ@0D8Ixf0FFy>AdchN{h#@QjKHs+f z*YgfU1%B%J`}YJ4)qECg#`hGqQc@uJDfuxZlTF1R40YIhBfV)7MEgGSEaH17q z_tV59BKWEWtg@ju!I{hQEGqc_NHI!v*Qp1@;xrLdq4LRy^Xv`J`*KjImB0%9 z{nu%}ieDL}&e6Pq29gc!<9VlZZUNGp-|jyCOUee zc`o?wgL5x-6p1+g@#Y(s?qU+ibJ>I>k6u5~A@WHY5#=!(XtJ`1c>T7t%vG9MB1N4_ zhK8}LKK=rc6+&@x1{8g}9aDB5$AwH)&kiqP*q^zK%Z@;CQK|Wh50LJ@I-PMl4oW76 zDnH3uRH;zL^CG++DC&knp=zh16aQ4NeM2he?<`Ufaetiys{=MEHk*r(vj)`BX3s7K zTYg zq>Ku1`hov7Ti_vh!fxvJ4UoZkZZ3WIo-pL+j%b4?wAClP80fPDl9KR3i#eMfFFcAy zWW^4Vw!8AP$8zF|tnca!rksWzk+bT#K%1>`jox2|?gB=J(L5G(&YOc@y(eQm0qJi6 zup=r;O2AEU=?~Cev82;?uDkVJF^grg+dEAD5TY^o){=A00eg#-z{s33T7K%&Cq5vmeq8r7&rE{T}ORoUxBx5yU zQn`+Vr|%Mjj^lQBcOMHqK$u?^F0bi9TaE(#-9KkSdA!Pjmc8au?Ky?WrHe1Csz!{# zMyl)H@Zg|vRj)u)43l^lqTqEuDGPGxQ+JVGt~&IBM-hC&Q{Y;%BtMDn06{ARC!r@< zsRV;z;rpJpz$qI7`7Fe!s=utT

cq_S1Vf$o;5YZ{ydnUA)}h<`XcLH`hQ!i>8V1 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

r-i#zN4*{@X& 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

jn?S`@=VBkPB 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

k_n6uW01IIH?QOjqUICtDol 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

jJEQ?V8Z_1hmlvu#u!@kK~oWD^N4|KjbO!A3fp~ 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 z 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 z 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%0A*qT4UaE-+H4cw#Mhfbpxo$0O{8tEY;A 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 Q0t)<-kx&$`5H$?=KZyos*#H0l literal 0 HcmV?d00001 diff --git a/test/algorithms/buffer/images/rt_w24_graph_right.png b/test/algorithms/buffer/images/rt_w24_graph_right.png new file mode 100644 index 0000000000000000000000000000000000000000..fdcb98cc616cbd95f23ae599b960ffc4a3c610e8 GIT binary patch literal 176500 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 Cap%hb literal 0 HcmV?d00001 diff --git a/test/algorithms/buffer/images/rt_w24_graph_wrong.png b/test/algorithms/buffer/images/rt_w24_graph_wrong.png new file mode 100644 index 0000000000000000000000000000000000000000..86487c90098c07e2d6eaa23872bd3bec3a354ac2 GIT binary patch literal 193475 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

B2 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%0D|aUQ`e04qXk7hTf2Iu zQd`A`2k`?Pr$_EoTY4|>?7tKQe9Px(4xdLI1Qk~7SB}Sw?p($TxQ{hu37L!zc~4h$ z7h7#`jNX7kBnx z<&$Ar@YF5`rBpBiKS~xXD{czWSyQ;I(G0dD*?TPZI8T$AEev9HT4~OI)Jl%oTp?cy zHm!j*t2IZ4CcjIh1~zPPZ{(jLNv&+MDRNd6Ms@1+;`bS>b6Rb9Ga9)=%IIxSXnfQM z@5V6CaEf~El%z#4SyvJ4r1kFUOHY9v{?gI%b8{wR+<>2sKY%4QZHeYoEjhE7@v)yo zQVH=(l}?Gt^v~-_<+>kf+?px^D(EeJ)&*9N3amTaIC0 z_q+CP<7YZ?%XInCMO|AUATW4O@6KlXwvY97wJ`-UrYuT~*ipFtZKzDY{_zrfY((NC zYnfojp}gE|`T6v6Gx9C&%+x{c?v4aK*T)x;p(a#)cg`Gw_I|I=#`Zk3zby49ZO{dn z_Ff-`rA(;0n|;*nW^lF=PL!i%WD*m7o*x+=M3xYnveW$4%mqyt)=pySd0p|RD+INq^ zqcw&kKCJTlIE5`1^jdD>Sk=Nv(^@zitmTQWUGx8x4B)%+SILD~Hoi7$G2!VlXg7Wl zes)^r-j1L|wmQH#`|C;5OGX>NcPaEzKc58EGPBMpqL95iI9WN3EA7Rkz%YU=%j*q6 z&$lb~k*D2aVS+)_JI?7FmhN^%zVJpi7f0P+YX$aBMLk^6%32rIn~+9xTzX1PH%hGl z0yew#pFqB9k3={m&@zkVU?&^1kQ;H%>zMcyt|Yk@Sx^q#ZIm9Ux0NRK9kfo!(8EJ2 z+w-JNF4xaz1EZ(z8?0-Usp0+ViRk+uk|TEPMRbN<3}99S!--Z$%d^6k$4YhHGh9^l z=4rb7~?L-`^vV1#Kys|y5fB2?FSws!PW)c{dyTh?Z^Ir&#$%iWc-1CI%@LC5vPfSq|v z)>!-@-)6#R?nSSYuA>RTXkAIC^DYDMB2{|!ssgom=AXIz&#J$;VuU5sSGy2;{G{aD=BWo{xr_xyX` zY@592^hxeUme&pHf)URhvk-Ao<{68KOnMbsU<{9RjQb*}+%4hPv`nrUdb zm4JMRo9$DppG6X9RRFlD-TH#g`nD1iY>|>ZG7W)(L5N2@trr#>vhaZE`H2q1GAn^9 zcH!YU8V%&vFd_Do&Uv+Cj(JH-zsG@%e%JZ65uC55cdVmK?K3}Sap|$ku?d)wY+i^2 zbk=I{0HP^*Eos~dO$@LF|JW!kK!M23*u5nCIcM)%vaNIUuqoe6NNxv>RnW1i6>71HK)uqiqIdc37RM2c)X2<5xx zF*CKZuA+Z#uJzj#zmRZ|S244+>5}tvMj^t{u*tgEg)coHK%%o+*6E^S$u(M@bL+;;Ej3Q?3@_WXV{?US{~cR&w*P zF`PQh@1B0$_4RlB)(E55Z?z}{C)1<;A?hn^W%xCFX-YhX)QD^TJ}QI1?0Zw<(Q|ku zID`c{_6DjdVR*d80P1g^^YAvW&;+tzBJ>e>;w}EmSfRmh8YA}FQ3q?drtdM4Kh0jiv_ZT5`;e({&c{KOSuhh#0&9)~W~xrRyi*VTB9TqU

6g(1Gp(HnyfU`7G+7Zm+3z-0 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 ~|jiwI;Wj5MeKYpr; zIUv6B;gM3E;{+NAUN6RMztEy zK7TLG@*s$+#Q{2j>LJcOr#n+1!21AY${Fx~ht6MOFzUD)G@ODRRJ515?Ok}4S2p1^ zP~U3R891zggXtGAPw;_;ccslcpn(vVKSSRO!Df!9-1r;x?BaS* zL>I$AnL`%ATR;~yk-|(c!;kqMdks1+5J8-gk=~*A0)`D4LvoOkNeR)HAEVmBaj6tj z{%5rHA!2HYFomEHM=DBv9dqtX=EKjo5FMOwZnl$Wciv4`;PWO!d^P~;crj=}y5ZUp zeLsNxhxYh|)C*7b-^Xp(uxxBj4fW9e;GX74n2f6o4y~`VJF+&N;+K`C|_7TyzOfr&?1Yzz9tbdRGOAMNw3{xkg@^O6_mtOZfym4?dn4Fz^^`XQ}&L<6hJa1@cO?# zS)vYj?bMd0|JiqK#cLl_w9jWdXo>TGO*At~P`vv|GH5QzE4LiT-4EbEqgMq=HLHVi zZFt-nV<=-BRXncD>NCIG1{mhAhhBPHe>PlU&aN^LsN1A+%b_Z7k*oTkU<0+;K2z9R zcR&LIw50{TmZ0}5a35cQu7q%cK@utQ2b5mTH)>hz$=^Up4MSCN`)o!`1X)!(XCbs zc6d*iT^t#@^|t|6?1Jo6kgE>o2o>z!$~p5yujvkB`u)}s^}Yn^%F*{>&#ab3(33vO#JAHMh-=%a}D*HqtuHtK}ZclQSl8x+R% z)CHA*$2zP5ooE{IP67j5h5!UMQSLy9g%(gjNy|Pb)sk_B>$hjMWy(s(zDXwbrZFVNi;+Q>U&Rup1 z#bR@m^AI@$xf`(#j16o=15e~8SPRt(w$#7Dai*i@VMR01e@7dSzM zzaJSd6Grw|5ib-P44{djRy_DsVJ-abe5tL&7kaMxc%^^i0;W^BruUFpfW(*2S9ZH* z40LCyynXN0cp=tpk}C&!(fz|=B4PO?#1i;@6#?ZDDv?MCt? z(IRIAy{Q5u`??p+(L0Jcl!dge$a^I%glFdCLYF4xp77Y#a^rDZYnu{7j0(M^+HhLs zjlTQ|d&og!r;@W^q?igg5bxYAc1-I+<}bDH#}Ub0l=YDRw*xn2oR}aww6~vYJiPrW z444%tQeyj?N1`m1e5SFyy9m-|?1Ktt_(g1J9{}@4b$N$Cbw{fSkbRFhGwF&n?Z4^x z?%6KfpdjtpF0+)FA7bT{FRn{if0gzypiPSlwJ-*xOXVCRPOPt%eoSh97 zv@O`TWr2B}S5<$Y8ja9WIoDV{JrKx=2i|jVZl4Nv5>$u*nsyoj`(<7nZ$d%opvoBSi*vr~so3#gqqD zMn6AY(Yt3Fu_b{b9g<^`eejp+5EJjd1HOofLHNVx<)+!n7_Slfv^~sg!?nSmR{2Q z7s~zzDXZ9nXuz3>3PqouG}=zMS%DK79n4xe;!_Nh3xMUgSILJl2#JX6KNX??<+JaR zkGsi;v*D5#Bdsocjb(k2trO3Qi&pU%tRB??v%4dF#?(uH@0jF;`>z34HBH9J$k%dp z1h}nfV7=tq56$sA@FGByv|@x0u%F1p|F0^>NU?>1e!_M!a!T9C&(!Qi5eNl3;ZwAi zX9iEbNW^V}Lzl3*y;lOeP_vzvf7WwSVMcdPJ`QTP9?kWVw>4S)b6>Dsp7};n+5=N_+}Hz`QbGdrR?w?yq9im=$3i&z?A0%&;557ap zK=aPaCn^==G^0zTrTKJtQOtp?8O}su;qyp;2vS?3xbmsVibMa+A>=5_n9wXX9v@0<;bf}T(A?ki zdml;006PC(V?b1p7zqB^r7Lja&HnOgfhWJzY=%$rOsNPbt-xVq3h8<8gBicMSKT&m zBANN<>{856G9-_OcyEN9+8U<83{{*ov{rqwq*W8gQXWY}8zlwlia27eN z!cdzOhlYo=L14)BDQDOJOF?JiGeVbe41n{VlaJi*K|!&vPhU&@L{!0c(w`^j327tJ zN(Rm9GhEHF>0UpB$Zaawbz96JP*ez@b1(P#+;kn*dt$1*)rEarYMl?pJ36r@|jl zR%b6r9Kjm=^KIx3+-(30!&k8?<6}*6Qxf;wmdN*BLBMA|A2Q6yeevrQODf;GLz*FW z5x#VI;yTBsPGSxHEDx|s-U9+1c8`PepOU}fg9zX?Cl67mA0-+ zgI-4wBt+dnPtb+Q!3lXw>37JWvS8_8{xwSxe3arpahOUdw>KJ!`Xg);)It=vzx?6; z1mho!?2@BklPcUrA5-$a+VA0t)tzHPkfj%YBr`BD2rlJMJp!%b;z{eL83&#}1bLiB z|qyybI=^tlQIw6Cm~M+80mpyXAby+VMwS-qu?RCaK@TS2jQ#%h8m#ElKxB#tbBm7=)eci(OkOGe`}FYG3qT2(!G-XX!C?gBlpChBNNL;PphYsKoA56J&|NaU&>QOR%GI*KVMBhc$?mn1$z z#3_07B7`Ky2c)$(7h4;k07Yy5Vho4!FLTJ*e0vSp$y1iyr)3$O9|@&&N8^b}RNDTZ z0ugyo4%vS%)60e&)oRRs5%$E>=|IWbb=xr0EJ@hVRHP-;$^H+NeQ5{J9!WY}d1C4MgIoWu;6+!pkD_2y~RD;ui-e0Us!V$elmN`@{*@ z$u^qFgY#DS@~7O@hj(!Or#p+Q3qQ#4I!k`X^PfxXO7piYso?z0MF0;+5TF$R)4A$R zO!oGPfu&&Kn*uowJc@(I7GCqv<8m@{puZUe|L6;2#pArZk2Qb1QFKODw=bqkfSKoT zJc71>rNaDu%tb^Nu>K<-9ctDXfu2jZf9j))Bk6LfmZkIT1G<5{-@;x*sS4UUNpYlf zo=;2yLi#R-*_Tz|4#c9H6Hw(frUQM^qW(SC?Oo)bsI{!lm&Fq%+v__nBqvv zbW_O%hgjCyu+}^ZCs0Yi46H-k86W-v?x!737_9d`BlEt9JC=F-!9-(1(H`havfNnM zK<*UWy9dXC--^j013%o|y5y%^9jRWd>m>k$79!od(WeIlVeB`x@l5AgyG*zV2Wb@02-{bM9@H7@t-esNFx6 z0L8iIo5X8r0I2(0lUcSFJ{VAJI^`TpNN)EC1m(?X;)fZp`-bOsjZS<}N7Q>@GfE`Y8z@je77>#jb0 z6OIEGT7Uo-0c_n3G5@6Hrpg2fynd)cn-&$hHorc1so@CW z3$I+x%M$tbivr$1CJiAYOMh17&>_CW`$I_IgCOBJPWa^@v#{NY9k^8oJi9v(O!EuG zL)Udp*>6(>X|2J>G(1F{E=w{8I&TP0-|*bUfkO-96-_ zX}Xc)BDZFW0tO+H^W_5z{2hp(4c=d7uR1+5c}549Gdt=h8PFI)ZsO>H=KWyQc7Z(% zt72r2?7-nUki;@mUl8_MhJr^Uek!U)zLHixj?Akz*!BfjT_?bN;=^;_{j;B6oI)?u zEVURg8wNh!^J_bZ%@`sR;xv@+pDO1ovwqQ+mi;&!V+-<{(WkPC-RC5sXqb{$33?6CLBZ?nH5*K5WetB8sR-gt5 zpoJ2%zZ%&&y*^zEHgmYg;JzRrARvk$--;-Y6+QWiErJZz?jY5Sycd{X+>~`;^_?61 ze5UVD2k(9~8Ql1C;X%he)wm4PX^tdHZFM5>*k`ChiI&GVU+Euy_EO8uND!7rBhgjc z=HUT~w#ptqmQ!3E5233n>;Kc4Sw(utJ-CcOBC<3{*%bC#k9sOYpu{HP{?*g+cS2cG za5h3NP|o*k~hcYQ8~Ggl|xI^=rYQ{z>d7#m>spVN5l zcWvczcuzDwl9@@j$H55Vmm?>K7%6jcH|J6h7%lB5zo9EetRbXp^il+*f3`i-go1F< zFYI*i?Nz8}1a>C%T_iNRx(u(IC?N+&=zFv$XFb$bbPqo%>`rg8fp-zdejp!c4slXZ zy!R1f<&8a6mjg-UM{ldHd;ef}{{44aYjv+A#kn{({$7)^8-Bp*iR82eoT=pfg~x77 zF?*kcC%oM_nvew9018W5B=0ayY@|0UHSd~I)G)1shb`F&y0fE4QiT~2E6%*S@WY$e zqd;jG;Lm%0Dm}f&K{Fop=6y0nxNOXeP+XCt-t^&n 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 ncH*+5PFq3fL=VvpI^6B%y1snFv0 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

Khh% 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 XhZiTeXCb3Qb7;TzKM(er|NH*{@chTd literal 0 HcmV?d00001 diff --git a/test/algorithms/buffer/images/rt_w7.png b/test/algorithms/buffer/images/rt_w7.png new file mode 100644 index 0000000000000000000000000000000000000000..f3340b1dc75a4dacdf2d47bf42c4669d9a56f0ed GIT binary patch literal 100630 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

=WBg`kM19pwl`6-xk0O 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 E0}#?|S^xk5 literal 0 HcmV?d00001 diff --git a/test/algorithms/buffer/readme.md b/test/algorithms/buffer/readme.md new file mode 100644 index 000000000..c68830c67 --- /dev/null +++ b/test/algorithms/buffer/readme.md @@ -0,0 +1,69 @@ +# Buffer cases + +## Recursive Polygons Buffer + +### rt_w series + +#### rt_w1 + +#### rt_w2 + +This case failed because of a generated `x` (block) in `get_turn_info.hpp` +It is fixed by removing them `ix` etc. + + + +#### rt_w3 + +This case failed because it selected the wrong `u` turn from a cluster (at turn `2` in the picture below, before the fix), having the same target (`8`). +It is fixed by calculating properties ahead also for these cases, with the same rank. +Therefore it was necessary to add the rank to enrichment_info. + + + +#### rt_w7 + +Suffered from a wrong block (at 12). Fixed by removing ix turns in buffer. + + + + + +#### rt_w15 + +Failed until late phase. Actual reason of fix unknown. + + + + + +#### rt_w18 + +This case fails because two colocated turns (87/91) on the border are considered as "within each other". +This should be detectable and filtered out (make them both on the border). + + + +#### rt_w22 + +Fails because two colocated turns (12/13) on the border are considered as "within each other". + + + +#### rt_w24 + +Failed because of a wrong block in `get_turn_info`. This time it does not make the turn `ix`, +but `ux` (instead of `uu` or `cc`). +Using the collinear properties ahead functionality fixes this case. + + + +Graph with a "concept fix" + + + + +Graph without the fix, and there is a line from `5` to the isolated area, +causing an invalid output. + + diff --git a/test/algorithms/buffer/test_buffer_csv.hpp b/test/algorithms/buffer/test_buffer_csv.hpp index 8a1692659..4f150deb3 100644 --- a/test/algorithms/buffer/test_buffer_csv.hpp +++ b/test/algorithms/buffer/test_buffer_csv.hpp @@ -77,7 +77,7 @@ private: << bg::method_char(turn.method) << ";" << bg::operation_char(turn.operations[0].operation) << "/" << bg::operation_char(turn.operations[1].operation) << ";" << turn.cluster_id << ";" - << turn.is_turn_traversable << ";" + << turn.is_traversable << ";" << turn.blocked() << ";" << std::endl; } diff --git a/test/algorithms/buffer/test_buffer_svg.hpp b/test/algorithms/buffer/test_buffer_svg.hpp index 35add22c2..0d8ec9c79 100644 --- a/test/algorithms/buffer/test_buffer_svg.hpp +++ b/test/algorithms/buffer/test_buffer_svg.hpp @@ -164,7 +164,7 @@ private : bool is_good = true; std::string fill = "fill:rgb(0,255,0);"; - if (! it->is_turn_traversable) + if (! it->is_traversable) { fill = "fill:rgb(255,0,0);"; is_good = false; @@ -205,7 +205,7 @@ private : << ":" << bg::operation_char(it->operations[0].operation) << "/" << bg::operation_char(it->operations[1].operation); out << " " - << (it->is_turn_traversable ? "" : "w") + << (it->is_traversable ? "" : "w") ; offsets[it->point] += 10; diff --git a/test/algorithms/overlay/CMakeLists.txt b/test/algorithms/overlay/CMakeLists.txt index 362c5caf8..e9eec6927 100644 --- a/test/algorithms/overlay/CMakeLists.txt +++ b/test/algorithms/overlay/CMakeLists.txt @@ -18,8 +18,6 @@ foreach(item IN ITEMS get_turns_linear_areal get_turns_linear_linear overlay - sort_by_side_basic - sort_by_side relative_order select_rings self_intersection_points diff --git a/test/algorithms/overlay/Jamfile b/test/algorithms/overlay/Jamfile index d234385aa..6591d0ca1 100644 --- a/test/algorithms/overlay/Jamfile +++ b/test/algorithms/overlay/Jamfile @@ -31,8 +31,6 @@ test-suite boost-geometry-algorithms-overlay [ run get_turns_linear_linear_geo.cpp : : : : algorithms_get_turns_linear_linear_geo ] [ run get_turns_linear_linear_sph.cpp : : : : algorithms_get_turns_linear_linear_sph ] [ run overlay.cpp : : : : algorithms_overlay ] - [ run sort_by_side_basic.cpp : : : : algorithms_sort_by_side_basic ] - [ run sort_by_side.cpp : : : : algorithms_sort_by_side ] #[ run handle_touch.cpp : : : : algorithms_handle_touch ] [ run relative_order.cpp : : : : algorithms_relative_order ] [ run select_rings.cpp : : : : algorithms_select_rings ] diff --git a/test/algorithms/overlay/debug_sort_by_side_svg.hpp b/test/algorithms/overlay/debug_sort_by_side_svg.hpp deleted file mode 100644 index 71ac7204b..000000000 --- a/test/algorithms/overlay/debug_sort_by_side_svg.hpp +++ /dev/null @@ -1,123 +0,0 @@ -// Boost.Geometry - -// Copyright (c) 2017 Barend Gehrels, Amsterdam, the Netherlands. - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef BOOST_GEOMETRY_TEST_DEBUG_SORT_BY_SIDE_SVG_HPP -#define BOOST_GEOMETRY_TEST_DEBUG_SORT_BY_SIDE_SVG_HPP - -#include -#include -#include - -#include -#include -#include - -namespace boost { namespace geometry { namespace debug -{ - - -template -inline void sorted_side_map(std::string const& case_id, - Sbs const& sbs, Point const& point, - Geometry1 const& geometry1, - Geometry2 const& geometry2, - int take_turn_index = -1, int take_operation_index = -1) -{ - - // Check number of sources (buffer has only one source) - std::set sources; - for (std::size_t i = 0; i < sbs.m_ranked_points.size(); i++) - { - const typename Sbs::rp& er = sbs.m_ranked_points[i]; - sources.insert(er.seg_id.source_index); - } - std::size_t const source_count = sources.size(); - - std::ostringstream filename; - filename << "sort_by_side_" << case_id << ".svg"; - std::ofstream svg(filename.str().c_str()); - - typedef geometry::svg_mapper mapper_type; - typedef geometry::model::referring_segment seg; - - mapper_type mapper(svg, 500, 500); - - for (std::size_t i = 0; i < sbs.m_ranked_points.size(); i++) - { - const typename Sbs::rp& er = sbs.m_ranked_points[i]; - mapper.add(er.point); - } - - if (sources.count(0) > 0) - { - mapper.map(geometry1, "fill-opacity:0.5;fill:rgb(153,204,0);stroke:rgb(153,204,0);stroke-width:0"); - } - if (sources.count(1) > 0) - { - mapper.map(geometry2, "fill-opacity:0.3;fill:rgb(51,51,153);stroke:rgb(51,51,153);stroke-width:0"); - } - - const std::string style = "fill:rgb(0,0,0);font-family:Arial;font-size:10px;"; - for (std::size_t i = 0; i < sbs.m_ranked_points.size(); i++) - { - const typename Sbs::rp& er = sbs.m_ranked_points[i]; - - std::ostringstream out; - out << er.rank - << " (" << i << ")" - << " z=" << er.zone - << " " << (er.direction == detail::overlay::sort_by_side::dir_to ? "t" : "f") - << " " << er.turn_index - << "[" << er.operation_index << "]"; - - if (er.direction == detail::overlay::sort_by_side::dir_to) - { - out << " L=" << er.count_left << " R=" << er.count_right; - } - else - { - out << " l=" << er.count_left << " r=" << er.count_right; - } - out << " " << operation_char(er.operation); - if (source_count > 1) - { - out << " s=" << er.seg_id.source_index; - } - - bool left = (i / 2) % 2 == 1; - int x_offset = left ? -6 : 6; - int y_offset = i % 2 == 0 ? 0 : 10; - const std::string align = left ? "text-anchor:end;" : ""; - - std::string const source_style - = er.seg_id.source_index == 0 - ? "opacity:0.7;stroke:rgb(0,255,0);stroke-width:4;" - : "opacity:0.7;stroke:rgb(0,0,255);stroke-width:4;"; - mapper.map(seg(point, er.point), source_style); - - if (er.direction == detail::overlay::sort_by_side::dir_to) - { - if (er.turn_index == take_turn_index - && er.operation_index == take_operation_index) - { - mapper.map(er.point, "opacity:0.7;fill:rgb(255,0,255);", 3); - } - else - { - mapper.map(er.point, "opacity:0.7;fill:rgb(0,0,0);", 3); - } - } - - mapper.text(er.point, out.str(), style + align, x_offset, y_offset); - } - mapper.map(sbs.m_origin, "opacity:0.9;fill:rgb(255,0,0);", 5); -} - -}}} // namespace boost::geometry::debug - -#endif // BOOST_GEOMETRY_TEST_DEBUG_SORT_BY_SIDE_SVG_HPP diff --git a/test/algorithms/overlay/get_distance_measure.cpp b/test/algorithms/overlay/get_distance_measure.cpp index f526fe07a..cfdc0f492 100644 --- a/test/algorithms/overlay/get_distance_measure.cpp +++ b/test/algorithms/overlay/get_distance_measure.cpp @@ -15,9 +15,6 @@ #include #include -// #define BOOST_GEOMETRY_TEST_WITH_COUT -// #define BOOST_GEOMETRY_TEST_FAILURES - template void do_test(std::string const& case_id, Point const& s1, diff --git a/test/algorithms/overlay/multi_overlay_cases.hpp b/test/algorithms/overlay/multi_overlay_cases.hpp index aea74ef72..4bd03f2ae 100644 --- a/test/algorithms/overlay/multi_overlay_cases.hpp +++ b/test/algorithms/overlay/multi_overlay_cases.hpp @@ -854,6 +854,39 @@ static std::string case_149_multi[2] = )"""" }; +static std::string case_150_multi[2] = +{ + // For uu turns, unclustered, no self-intersections + R""""( + MULTIPOLYGON( + ((2 2,2 5,5 5,5 2,2 2)) + ) + )"""", + R""""( + MULTIPOLYGON( + ((5 5,5 8,8 8,8 5,5 5)), + ((1 1,1 3,3 3,3 1,1 1)) + ) + )"""" +}; + +static std::string case_151_multi[2] = +{ + // For uu turns, 4 meet at the center point + R""""( + MULTIPOLYGON( + ((1 2,5 5,2 1,1 2)), + ((9 8,5 5,8 9,9 8)) + ) + )"""", + R""""( + MULTIPOLYGON( + ((2 9,5 5,1 8,2 9)), + ((8 1,5 5,9 2,8 1)) + ) + )"""" +}; + static std::string case_recursive_boxes_1[2] = { diff --git a/test/algorithms/overlay/overlay.cpp b/test/algorithms/overlay/overlay.cpp index dd7b76064..ea77a3371 100644 --- a/test/algorithms/overlay/overlay.cpp +++ b/test/algorithms/overlay/overlay.cpp @@ -47,6 +47,46 @@ struct geojson_visitor : public boost::geometry::detail::overlay::overlay_null_v : m_writer(writer) {} + template + inline void visit_cluster_connections(bg::signed_size_type cluster_id, + Turns const& turns, Cluster const& cluster, Connections const& connections) + { + using point_type = typename Turns::value_type::point_type; + using ls_type = bg::model::linestring; + + auto id_as_string = [](auto const& id) + { + std::stringstream out; + out << id; + return out.str(); + }; + + if (cluster.turn_indices.empty()) + { + return; + } + + auto const& turn_point = turns[*cluster.turn_indices.begin()].point; + + for (auto const& item : connections) + { + auto const& key = item.key; + auto const& connection = item.properties; + ls_type const ls{turn_point, connection.point}; + m_writer.feature(ls); + m_writer.add_property("type", "cluster"); + m_writer.add_property("cluster_id", cluster_id); + m_writer.add_property("direction", std::string(key.connection == + bg::detail::overlay::connection_type::incoming ? "in" : "out")); + m_writer.add_property("position_code", connection.position_code); + m_writer.add_property("rank", connection.rank); + m_writer.add_property("count_left", connection.zone_count_left); + m_writer.add_property("count_right", connection.zone_count_right); + m_writer.add_property("seg_id", id_as_string(key.seg_id)); + m_writer.add_property("ring_id", id_as_string(bg::detail::overlay::ring_id_by_seg_id(key.seg_id))); + } + } + template void visit_turns(int phase, Turns const& turns) { @@ -59,15 +99,19 @@ struct geojson_visitor : public boost::geometry::detail::overlay::overlay_null_v { auto index = enumerated.index; auto const& turn = enumerated.value; - auto label_enriched = [&turn](int i) + auto const& op0 = turn.operations[0]; + auto const& op1 = turn.operations[1]; + + auto label_component = [&]() { - auto const& op = turn.operations[i].enriched; std::ostringstream out; - out //<< " l:" << op.count_left << " r:" << op.count_right - //<< " rank:" << op.rank - // << " z:" << op.zone - << " region:" << op.region_id - << (op.isolated ? " ISOLATED" : ""); + auto const& c0 = op0.enriched.component_id; + auto const& c1 = op1.enriched.component_id; + if (c0 < 0 && c1 < 0) out << "-"; + else if (c0 == c1) out << c0; + else if (c0 < 0) out << c1; + else if (c1 < 0) out << c0; + else out << c0 << " | " << c1; return out.str(); }; auto label_operation_ids = [&turn](int op_index) @@ -75,38 +119,47 @@ struct geojson_visitor : public boost::geometry::detail::overlay::overlay_null_v std::ostringstream out; out << bg::operation_char(turn.operations[op_index].operation) << ": " << turn.operations[op_index].seg_id - << " " << turn.operations[op_index].enriched.next_ip_index - << "|" << turn.operations[op_index].enriched.travels_to_ip_index; + << " v:" << turn.operations[op_index].enriched.travels_to_vertex_index + << "|t:" << turn.operations[op_index].enriched.travels_to_ip_index; return out.str(); }; - auto label_operations = [&turn]() + auto label_operations = [&]() { std::ostringstream out; - out << bg::operation_char(turn.operations[0].operation) - << bg::operation_char(turn.operations[1].operation); + out << bg::operation_char(op0.operation) + << bg::operation_char(op1.operation); return out.str(); }; - auto label_travel = [&turn]() + auto label_travel = [&]() { std::ostringstream out; - out << turn.operations[0].enriched.travels_to_ip_index - << "|" << turn.operations[1].enriched.travels_to_ip_index; + out << op0.enriched.travels_to_ip_index + << "|" << op1.enriched.travels_to_ip_index; return out.str(); }; m_writer.feature(turn.point); m_writer.add_property("index", index); m_writer.add_property("method", bg::method_char(turn.method)); - m_writer.add_property("operations", label_operations()); m_writer.add_property("travels_to", label_travel()); m_writer.add_property("cluster_id", turn.cluster_id); m_writer.add_property("discarded", turn.discarded); - m_writer.add_property("has_colocated_both", turn.has_colocated_both); m_writer.add_property("self_turn", bg::detail::overlay::is_self_turn(turn)); + m_writer.add_property("component", label_component()); + m_writer.add_property("operations", label_operations()); + m_writer.add_property("operation_0", label_operation_ids(0)); + m_writer.add_property("count_left_0", op0.enriched.count_left); + m_writer.add_property("count_right_0", op0.enriched.count_right); + m_writer.add_property("ahead_distance_0", op0.enriched.ahead_distance_of_side_change); + m_writer.add_property("ahead_side_0", op0.enriched.ahead_side); + m_writer.add_property("operation_1", label_operation_ids(1)); - m_writer.add_property("enriched_0", label_enriched(0)); - m_writer.add_property("enriched_1", label_enriched(1)); + m_writer.add_property("count_left_1", op1.enriched.count_left); + m_writer.add_property("count_right_1", op1.enriched.count_right); + m_writer.add_property("ahead_distance_1", op1.enriched.ahead_distance_of_side_change); + m_writer.add_property("ahead_side_1", op1.enriched.ahead_side); + } } @@ -115,13 +168,14 @@ struct geojson_visitor : public boost::geometry::detail::overlay::overlay_null_v }; #endif -template +template void test_overlay(std::string const& caseid, std::string const& wkt1, std::string const& wkt2, double expected_area, std::size_t expected_clip_count, std::size_t expected_hole_count) { + std::cout << caseid << std::endl; Geometry g1; bg::read_wkt(wkt1, g1); @@ -131,6 +185,15 @@ void test_overlay(std::string const& caseid, bg::correct(g1); bg::correct(g2); + if (! bg::is_valid(g1)) + { + std::cerr << "WARNING: Invalid input 1: " << caseid << std::endl; + } + if (! bg::is_valid(g2)) + { + std::cerr << "WARNING: Invalid input 2: " << caseid << std::endl; + } + #if defined(TEST_WITH_GEOJSON) std::ostringstream filename; // For QGis, it is usually convenient to always write to the same geojson file. @@ -174,7 +237,14 @@ void test_overlay(std::string const& caseid, #endif Geometry result; - overlay::apply(g1, g2, std::back_inserter(result), strategy, visitor); + + if (SymDiff) + { + bg::sym_difference(g1, g2, result); + } + else + { + overlay::apply(g1, g2, std::back_inserter(result), strategy, visitor); std::string message; bool const valid = check_validity::apply(result, caseid, g1, g2, message); @@ -227,6 +297,54 @@ void test_overlay(std::string const& caseid, #define TEST_UNION_WITH(caseid, index1, index2, area, clips, holes) (test_overlay) \ ( #caseid "_union" #index1 "_" #index2, caseid[index1], caseid[index2], area, clips, holes) +// TEMP +#define TEST_DIFFERENCE_S(caseid, area, clips, holes) (test_overlay) \ + ( #caseid "_diff_s", caseid[0], caseid[1], area, clips, holes) + +static std::string issue_893_multi[2] = +{ + "MULTIPOLYGON(((-9133.3885344331684 3976.3162451998137, -6748.2449169873034 -5735.0734557728138, 12359.886942916415 -1042.0645095456412, 5126.3084924076147 2226.9708710750697, -1604.5619839035633 573.85084904357439, -9133.3885344331684 3976.3162451998137)))", + "MULTIPOLYGON(((-3228.4265340177531 1307.7159344890201, -4500.2645033380131 1882.4913860267370, -4294.7752070657516 1045.8178117890784, -3228.4265340177531 1307.7159344890201)))" +}; + +static std::string issue_1100_multi[2] = +{ + "MULTIPOLYGON(((1.5300545419548890819e-16 2101,1 2101,1 2100,1.1102230246251565404e-16 2100,1.5300545419548890819e-16 2101)))", + "MULTIPOLYGON(((-0.19761611601674899941 2101,0 2100.6135231738085167,0 2100,-0.5 2100,-0.5 2101,-0.19761611601674899941 2101)))" +}; + +static std::string issue_1363_multi[2] = +{ + "MULTIPOLYGON(((2.0611606968426476882 0.61095000000000010409,2.046160696842648008 0.62595000000000000639,2.0311606968426478836 0.6409499999999999087,1.9486606968426476438 0.73094999999999987761,1.9261606968426476794 0.76094999999999990425,1.9336606968426472974 0.78344999999999986873,2.0161606968426477593 0.85844999999999993534,2.0236606968426480435 0.8584499999999997133,2.0461606968426475639 0.90344999999999986429,2.0911606968426479369 0.88844999999999973994,2.098660696842647333 0.8734499999999996156,2.1136606968426479014 0.86594999999999977547,2.1286606968426480258 0.85094999999999976215,2.1436606968426472619 0.83594999999999985985,2.143660696842647706 0.62594999999999989537,2.0836606968426476527 0.62594999999999989537,2.0611606968426476882 0.61095000000000010409)))", + "MULTIPOLYGON(((2.0461606968426484521 0.90344999999999986429,2.001160696842647635 0.91095000000000003748,1.8511606968426477238 0.91094999999999992646,1.813660696842647635 0.91844999999999998863,1.813660696842647635 0.9409499999999999531,1.8211606968426479192 1.1059499999999999886,1.8286606968426479813 1.263449999999999962,1.9636606968426479902 1.263449999999999962,2.0461606968426484521 1.2559499999999998998,2.0536606968426478481 1.2409499999999999975,2.1286606968426480258 1.2409499999999999975,2.1286606968426480258 1.1059499999999999886,2.1211606968426477415 0.92594999999999982876,2.1136606968426479014 0.89594999999999980211,2.091160696842648381 0.88844999999999996199,2.0461606968426484521 0.90344999999999986429)))" +}; + +static std::string buffer_rt_g_multi[2] = + { + "MULTIPOLYGON(((2.0 8.0,2.0 9.0,2.0 10.0,3.0 10.0,4.0 10.0,6.4142135623730958 10.0,4.7071067811865479 8.2928932188134521,3.7071067811865475 7.2928932188134521,2.0 5.5857864376269051,2.0 8.0)))", + "MULTIPOLYGON(((0.0 6.0,0.0 7.0,0.0 8.0,1.0 8.0,2.0 8.0,4.4142135623730958 8.0,2.7071067811865475 6.2928932188134521,1.7071067811865475 5.2928932188134521,-0.0 3.5857864376269042,0.0 6.0)))" + }; + +static std::string ggl_list_20190307_matthieu_1_multi[2] = + { + "MULTIPOLYGON(((-1.00000010731 -0.713619134602,-1.00000012822 -0.493922219801,-0.598172925227 0.100631982002,-1.00000012886 -0.0624283708015,-1.00000011994 0.0862738908136,-0.440262107798 0.31341400405,-0.360828341246 0.292948255722,-0.357275641893 0.210997365241,-0.970143533681 -0.695818118925,-1.00000010731 -0.713619134602)))", + "MULTIPOLYGON(((-0.999999965066 -0.493921978401,-0.909999987372 -0.360755621066,-0.909999996424 -0.91000000872,0.91000000872 -0.909999996424,0.909999996424 0.91000000872,-0.909999996424 0.91000000872,-0.909999911756 -0.0259065349961,-0.999999867625 -0.0624282647935,-1 1,1 1,1 -1,-1 -1,-0.999999965066 -0.493921978401)))" + }; + +static std::string buffer_rt_a_multi[2] = + { + "MULTIPOLYGON(((1 7,1 8,1.0012 8.04907,1.00482 8.09802,1.01082 8.14673,1.01921 8.19509,1.02997 8.24298,1.04306 8.29028,1.05846 8.33689,1.07612 8.38268,1.09601 8.42756,1.11808 8.4714,1.14227 8.5141,1.16853 8.55557,1.19679 8.5957,1.22699 8.63439,1.25905 8.67156,1.29289 8.70711,1.32844 8.74095,1.36561 8.77301,1.4043 8.80321,1.44443 8.83147,1.4859 8.85773,1.5286 8.88192,1.57244 8.90399,1.61732 8.92388,1.66311 8.94154,1.70972 8.95694,1.75702 8.97003,1.80491 8.98079,1.85327 8.98918,1.90198 8.99518,1.95093 8.9988,2 9,3 9,3.04907 8.9988,3.09802 8.99518,3.14673 8.98918,3.19509 8.98079,3.24298 8.97003,3.29028 8.95694,3.33689 8.94154,3.38268 8.92388,3.42756 8.90399,3.4714 8.88192,3.5141 8.85773,3.55557 8.83147,3.5957 8.80321,3.63439 8.77301,3.67156 8.74095,3.70711 8.70711,3.74095 8.67156,3.77301 8.63439,3.80321 8.5957,3.83147 8.55557,3.85773 8.5141,3.88192 8.4714,3.90399 8.42756,3.92388 8.38268,3.94154 8.33689,3.95694 8.29028,3.97003 8.24298,3.98079 8.19509,3.98918 8.14673,3.99518 8.09802,3.9988 8.04907,4 8,4 7,3.9988 6.95093,3.99518 6.90198,3.98918 6.85327,3.98079 6.80491,3.97003 6.75702,3.95694 6.70972,3.94154 6.66311,3.92388 6.61732,3.90399 6.57244,3.88192 6.5286,3.85773 6.4859,3.83147 6.44443,3.80321 6.4043,3.77301 6.36561,3.74095 6.32844,3.70711 6.29289,3.67156 6.25905,3.63439 6.22699,3.5957 6.19679,3.55557 6.16853,3.5141 6.14227,3.4714 6.11808,3.42756 6.09601,3.38268 6.07612,3.33689 6.05846,3.29028 6.04306,3.24298 6.02997,3.19509 6.01921,3.14673 6.01082,3.09802 6.00482,3.04907 6.0012,3 6,2 6,1.95093 6.0012,1.90198 6.00482,1.85327 6.01082,1.80491 6.01921,1.75702 6.02997,1.70972 6.04306,1.66311 6.05846,1.61732 6.07612,1.57244 6.09601,1.5286 6.11808,1.4859 6.14227,1.44443 6.16853,1.4043 6.19679,1.36561 6.22699,1.32844 6.25905,1.29289 6.29289,1.25905 6.32844,1.22699 6.36561,1.19679 6.4043,1.16853 6.44443,1.14227 6.4859,1.11808 6.5286,1.09601 6.57244,1.07612 6.61732,1.05846 6.66311,1.04306 6.70972,1.02997 6.75702,1.01921 6.80491,1.01082 6.85327,1.00482 6.90198,1.0012 6.95093,1 7)))", + "MULTIPOLYGON(((3 6,4 6,4.04907 5.9988,4.09802 5.99518,4.14673 5.98918,4.19509 5.98079,4.24298 5.97003,4.29028 5.95694,4.33689 5.94154,4.38268 5.92388,4.42756 5.90399,4.4714 5.88192,4.5141 5.85773,4.55557 5.83147,4.5957 5.80321,4.63439 5.77301,4.67156 5.74095,4.70711 5.70711,4.74095 5.67156,4.77301 5.63439,4.80321 5.5957,4.83147 5.55557,4.85773 5.5141,4.88192 5.4714,4.90399 5.42756,4.92388 5.38268,4.94154 5.33689,4.95694 5.29028,4.97003 5.24298,4.98079 5.19509,4.98918 5.14673,4.99518 5.09802,4.9988 5.04907,5 5,5 4,4.9988 3.95093,4.99518 3.90198,4.98918 3.85327,4.98079 3.80491,4.97003 3.75702,4.95694 3.70972,4.94154 3.66311,4.92388 3.61732,4.90399 3.57244,4.88192 3.5286,4.85773 3.4859,4.83147 3.44443,4.80321 3.4043,4.77301 3.36561,4.74095 3.32844,4.70711 3.29289,4.67156 3.25905,4.63439 3.22699,4.5957 3.19679,4.55557 3.16853,4.5141 3.14227,4.4714 3.11808,4.42756 3.09601,4.38268 3.07612,4.33689 3.05846,4.29028 3.04306,4.24298 3.02997,4.19509 3.01921,4.14673 3.01082,4.09802 3.00482,4.04907 3.0012,4 3,3 3,3 3,2 3,1.95093 3.0012,1.90198 3.00482,1.85327 3.01082,1.80491 3.01921,1.75702 3.02997,1.70972 3.04306,1.66311 3.05846,1.61732 3.07612,1.57244 3.09601,1.5286 3.11808,1.4859 3.14227,1.44443 3.16853,1.4043 3.19679,1.36561 3.22699,1.32844 3.25905,1.29289 3.29289,1.25905 3.32844,1.22699 3.36561,1.19679 3.4043,1.16853 3.44443,1.14227 3.4859,1.11808 3.5286,1.09601 3.57244,1.07612 3.61732,1.05846 3.66311,1.04306 3.70972,1.02997 3.75702,1.01921 3.80491,1.01082 3.85327,1.00482 3.90198,1.0012 3.95093,1 4,1 5,1.0012 5.04907,1.00482 5.09802,1.01082 5.14673,1.01921 5.19509,1.02997 5.24298,1.04306 5.29028,1.05846 5.33689,1.07612 5.38268,1.09601 5.42756,1.11808 5.4714,1.14227 5.5141,1.16853 5.55557,1.19679 5.5957,1.22699 5.63439,1.25905 5.67156,1.29289 5.70711,1.32844 5.74095,1.36561 5.77301,1.4043 5.80321,1.44443 5.83147,1.4859 5.85773,1.5286 5.88192,1.57244 5.90399,1.61732 5.92388,1.66311 5.94154,1.70972 5.95694,1.75702 5.97003,1.80491 5.98079,1.85327 5.98918,1.90198 5.99518,1.95093 5.9988,2 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6,3 6)))" + }; + +// Two colocations of interior/exterior ring +static std::string case_80s_multi[2] = { + "MULTIPOLYGON(((0 5,5 10,10 5,5 0,0 5),(10 5,4 6,5 4,10 5)))", + "MULTIPOLYGON(((10 0,10 10,20 10,20 0,10 0),(10 5,15 3,18 8,10 5)))" + }; + + + template void test_all() { @@ -234,8 +352,98 @@ void test_all() using polygon = bg::model::polygon; using multi_polygon = bg::model::multi_polygon; + // TEST_DIFFERENCE_A(ggl_list_20190307_matthieu_1_multi, 0.18461532, 2, 0); + // TEST_DIFFERENCE_B(ggl_list_20190307_matthieu_1_multi, 0.617978, 2, 0); + // TEST_DIFFERENCE_S(ggl_list_20190307_matthieu_1_multi, 0.18461532 + 0.617978, 4, 0); + // TEST_INTERSECTION(case_recursive_boxes_54, 10.0, 3, 1); // works (using select_edge) + + // TEST_INTERSECTION(case_recursive_boxes_95, 36.25, 30, 0); + // TEST_INTERSECTION(case_recursive_boxes_99, 99, 7, 0); + + // TEST_INTERSECTION(case_bitset_3, 16.0, 1, 0); + // TEST_INTERSECTION(case_149_multi, 48.0, 2, 2); // instruction +// + + // TEST_DIFFERENCE_B(issue_893_multi, 97213916.0, 1, 1); // needs is_traverse + + + TEST_UNION(case_134_multi, 66.0, 1, 2); + return; + TEST_UNION(case_76_multi, 8.0, 5, 0); + TEST_UNION(case_150_multi, 21.0, 2, 0); // uu + TEST_UNION(case_151_multi, 14.0, 4, 0); // 2 uu + TEST_UNION_WITH(buffer_rt_a_multi, 1, 0, 19.2806668, 1, 0); + TEST_UNION(case_80s_multi, 129.0, 2, 2); + TEST_INTERSECTION(case_108_multi, 7.5, 7, 0); + TEST_UNION(case_recursive_boxes_12, 6.0, 6, 0); + TEST_UNION(case_149_multi, 115.0, 2, 0); // instruction + TEST_UNION(ggl_list_20140212_sybren, 0.002471626, 2, 0); + TEST_UNION_WITH(issue_1100_multi, 1, 0, 1.46181, 1, 0); // fixed by ux/uu blocking + TEST_UNION(issue_1363_multi, 99.99, 2, 0); + TEST_UNION(case_recursive_boxes_32, 5.75, 2, 0); + TEST_INTERSECTION(case_148_multi, 4.0, 4, 1); + TEST_INTERSECTION_WITH(case_recursive_boxes_99, 2, 3, 8.0, 5, 1); + TEST_INTERSECTION(case_recursive_boxes_79, 9.0, 5, 1); // fixed (fixing self-turns in clusters) + TEST_INTERSECTION(case_recursive_boxes_98, 4, 7, 0); // fixed by skip_count + TEST_INTERSECTION(case_recursive_boxes_96, 37.25, 34, 0); // fixed by handling of cc / via target + TEST_INTERSECTION_WITH(case_recursive_boxes_91, 0, 1, 27.5, 29, 0); // requires specific selection of operation_continue + TEST_INTERSECTION(case_recursive_boxes_92, 30.5, 32, 0); + TEST_INTERSECTION(case_recursive_boxes_66, 16.0, 4, 1); + TEST_INTERSECTION(case_recursive_boxes_97, 30.25, 25, 0); // fixed by handling of cc / via target + TEST_INTERSECTION_WITH(case_recursive_boxes_92, 1, 0, 30.5, 32, 0); + TEST_INTERSECTION(case_recursive_boxes_83, 10.25, 5, 0); // Fixed (using count_right) + TEST_UNION(case_recursive_boxes_56, 7.75, 5, 1); + TEST_DIFFERENCE_S(case_multi_simplex, 5.58 + 2.58, 5 + 4, 0); + TEST_UNION(case_101_multi, 22.25, 1, 3); // Convenient start case for union with holes + TEST_UNION(buffer_rt_g_multi, 16.571, 1, 0); // FIXED by remaining + union + TEST_UNION(issue_1100_multi, 1.46181, 1, 0); + TEST_INTERSECTION_WITH(case_recursive_boxes_91, 6, 7, 8.75, 10, 0); // requires specific selection of operation_continue + TEST_INTERSECTION_WITH(case_recursive_boxes_91, 2, 3, 27.5, 29, 0); + TEST_INTERSECTION_WITH(case_recursive_boxes_91, 4, 5, 4.0, 5, 0); TEST_UNION(case_multi_simplex, 14.58, 1, 0); + TEST_UNION(case_recursive_boxes_3, 56.5, 17, 6); // still complex + TEST_UNION(case_recursive_boxes_4, 96.75, 1, 2); + + // Contains 4 clusters, one of which having 4 turns + TEST_UNION(case_recursive_boxes_7, 7.0, 2, 0); + + TEST_UNION(case_recursive_boxes_13, 10.25, 3, 0); + TEST_DIFFERENCE_S(case_multi_simplex, 5.58 + 2.58, 5 + 4, 0); + TEST_DIFFERENCE_A(case_recursive_boxes_18, 1.0, 2, 0); + TEST_DIFFERENCE_B(case_recursive_boxes_18, 1.5, 1, 0); + TEST_INTERSECTION(case_101_multi, 4.75, 4, 0); + TEST_INTERSECTION(case_125_multi, 2.1, 3, 1); // Fixed with correct visit info + TEST_INTERSECTION(case_124_multi, 2.0625, 2, 1); + TEST_INTERSECTION(case_recursive_boxes_4, 67.0, 13, 8); + TEST_INTERSECTION(case_128_multi, 75.5, 2, 3); // FIXED + + TEST_INTERSECTION(case_recursive_boxes_79, 9.0, 5, 1); // fixed (fixing self-turns in clusters) + TEST_INTERSECTION(case_recursive_boxes_77, 3.5, 5, 0); // fixed (using count_right) + TEST_INTERSECTION(case_recursive_boxes_54, 10.0, 3, 1); // works (using select_edge) + + TEST_INTERSECTION(case_recursive_boxes_1, 47.0, 10, 0); // works (allow on same segment) + TEST_INTERSECTION(case_recursive_boxes_89, 1.5, 2, 0); + TEST_INTERSECTION(case_recursive_boxes_90, 1.0, 2, 0); + TEST_INTERSECTION(case_recursive_boxes_35, 20.0, 2, 6); + TEST_INTERSECTION(case_recursive_boxes_42, 95.0, 1, 4); + TEST_INTERSECTION(case_recursive_boxes_48, 1.0, 1, 0); + + TEST_INTERSECTION(case_130_multi, 39.0, 2, 2); + + TEST_INTERSECTION(case_64_multi, 1.0, 1, 0); + TEST_INTERSECTION(case_78_multi, 22.0, 1, 2); + TEST_INTERSECTION(case_72_multi, 2.85, 3, 0); + TEST_INTERSECTION_WITH(case_72_multi, 1, 2, 6.15, 3, 1); + TEST_INTERSECTION(case_multi_simplex, 6.42, 2, 0); + TEST_INTERSECTION(case_multi_diagonal, 650.0, 1, 0); + TEST_INTERSECTION(case_multi_2, 5.9, 3, 0); + TEST_INTERSECTION(case_multi_3, 20.0, 1, 0); + + return; + + + TEST_DIFFERENCE_A(case_multi_simplex, 5.58, 5, 0); TEST_DIFFERENCE_B(case_multi_simplex, 2.58, 4, 0); @@ -246,25 +454,18 @@ void test_all() // Contains many clusters, needing to exclude u/u turns TEST_UNION(case_recursive_boxes_3, 56.5, 17, 6); - // Contains 4 clusters, one of which having 4 turns - TEST_UNION(case_recursive_boxes_7, 7.0, 2, 0); // Contains 5 clusters, needing immediate selection of next turn TEST_UNION(case_89_multi, 6.0, 1, 0); // Needs ux/next_turn_index==-1 to be filtered out TEST_INTERSECTION(case_77_multi, 9.0, 5, 0); - TEST_UNION(case_101_multi, 22.25, 1, 3); - TEST_INTERSECTION(case_101_multi, 4.75, 4, 0); TEST_INTERSECTION(case_recursive_boxes_11, 1.0, 2, 0); TEST_INTERSECTION(case_recursive_boxes_30, 6.0, 4, 0); - TEST_UNION(case_recursive_boxes_4, 96.75, 1, 2); TEST_INTERSECTION_WITH(case_58_multi, 2, 6, 13.25, 1, 1); TEST_INTERSECTION_WITH(case_72_multi, 1, 2, 6.15, 3, 1); - TEST_UNION(case_recursive_boxes_12, 6.0, 6, 0); - TEST_UNION(case_recursive_boxes_13, 10.25, 3, 0); TEST_INTERSECTION(issue_930, 8.3333333, 1, 0); } @@ -281,7 +482,7 @@ void test_integer() int test_main(int, char* []) { - test_integer(); + // test_integer(); test_all(); return 0; } diff --git a/test/algorithms/overlay/sort_by_side.cpp b/test/algorithms/overlay/sort_by_side.cpp deleted file mode 100644 index 9c9e12f91..000000000 --- a/test/algorithms/overlay/sort_by_side.cpp +++ /dev/null @@ -1,263 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) -// Unit Test - -// Copyright (c) 2016 Barend Gehrels, Amsterdam, the Netherlands. -// Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland. - -// This file was modified by Oracle on 2017-2024. -// Modifications copyright (c) 2017-2024, Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#include - -#include -#include -#include -#include -#include - -#include "multi_overlay_cases.hpp" - - -namespace -{ - -template -std::string as_string(std::vector const& v) -{ - std::stringstream out; - bool first = true; - for (T const& value : v) - { - out << (first ? "[" : " , ") << value; - first = false; - } - out << (first ? "" : "]"); - return out.str(); -} - -} - -// Adapted copy of handle_colocations::gather_cluster_properties -template -< - bool Reverse1, bool Reverse2, - bg::overlay_type OverlayType, - typename Clusters, - typename Turns, - typename Geometry1, - typename Geometry2, - typename Strategy -> -std::vector gather_cluster_properties( - Clusters& clusters, Turns& turns, - bg::detail::overlay::operation_type for_operation, - Geometry1 const& geometry1, Geometry2 const& geometry2, - Strategy const& strategy) -{ - using namespace boost::geometry; - using namespace boost::geometry::detail::overlay; - - std::vector result; - - typedef typename boost::range_value::type turn_type; - typedef typename turn_type::point_type point_type; - typedef typename turn_type::turn_operation_type turn_operation_type; - - // Define sorter, sorting counter-clockwise such that polygons are on the - // right side - typedef sort_by_side::side_sorter - < - Reverse1, Reverse2, OverlayType, point_type, Strategy, std::less - > sbs_type; - - for (typename Clusters::iterator mit = clusters.begin(); - mit != clusters.end(); ++mit) - { - cluster_info& cinfo = mit->second; - std::set const& ids = cinfo.turn_indices; - if (ids.empty()) - { - return result; - } - - sbs_type sbs(strategy); - point_type turn_point; // should be all the same for all turns in cluster - - bool first = true; - for (typename std::set::const_iterator sit = ids.begin(); - sit != ids.end(); ++sit) - { - signed_size_type turn_index = *sit; - turn_type const& turn = turns[turn_index]; - if (first) - { - turn_point = turn.point; - } - for (int i = 0; i < 2; i++) - { - turn_operation_type const& op = turn.operations[i]; - sbs.add(turn, op, turn_index, i, geometry1, geometry2, first); - first = false; - } - } - sbs.apply(turn_point); - - sbs.find_open(); - sbs.assign_zones(for_operation); - - cinfo.open_count = sbs.open_count(for_operation); - result.push_back(cinfo.open_count); - } - return result; -} - - -// Adapted copy of overlay::apply -template -< - bg::overlay_type OverlayType, - bool Reverse1, bool Reverse2, bool ReverseOut, - typename GeometryOut, - typename Geometry1, typename Geometry2, - typename Strategy -> -std::vector apply_overlay( - Geometry1 const& geometry1, Geometry2 const& geometry2, - Strategy const& strategy) -{ - using namespace boost::geometry; - - typedef typename bg::point_type::type point_type; - typedef bg::detail::overlay::traversal_turn_info - < - point_type, - typename bg::segment_ratio_type::type - > turn_info; - typedef std::deque turn_container_type; - - // Define the clusters, mapping cluster_id -> turns - typedef std::map - < - signed_size_type, - bg::detail::overlay::cluster_info - > cluster_type; - - turn_container_type turns; - - detail::get_turns::no_interrupt_policy policy; - bg::get_turns - < - Reverse1, Reverse2, - detail::overlay::assign_null_policy - >(geometry1, geometry2, strategy, turns, policy); - - cluster_type clusters; - - // Handle colocations, gathering clusters and (below) their properties. - bg::detail::overlay::handle_colocations - < - Reverse1, Reverse2, OverlayType, Geometry1, Geometry2 - >(turns, clusters); - - bg::enrich_intersection_points(turns, - clusters, geometry1, geometry2, strategy); - - // Gather cluster properties, with test option - return ::gather_cluster_properties( - clusters, turns, bg::detail::overlay::operation_from_overlay::value, - geometry1, geometry2, strategy); -} - - -template -void test_sort_by_side(std::string const& case_id, - std::string const& wkt1, std::string const& wkt2, - std::vector const& expected_open_count) -{ -// std::cout << case_id << std::endl; - - Geometry g1; - bg::read_wkt(wkt1, g1); - - Geometry g2; - bg::read_wkt(wkt2, g2); - - // Reverse if necessary - bg::correct(g1); - bg::correct(g2); - - typedef typename boost::range_value::type geometry_out; - - typedef typename bg::strategies::relate::services::default_strategy - < - Geometry, Geometry - >::type strategy_type; - - strategy_type strategy; - - std::vector result = ::apply_overlay - < - OverlayType, false, false, false, geometry_out - >(g1, g2, strategy); - - BOOST_CHECK_MESSAGE(result == expected_open_count, - " caseid=" << case_id - << " open count: expected=" << as_string(expected_open_count) - << " detected=" << as_string(result)); -} - - -// Define two small macro's to avoid repetitions of testcases/names etc -#define TEST_INTER(caseid, ...) { (test_sort_by_side) \ - ( #caseid "_inter", caseid[0], caseid[1], __VA_ARGS__); } - -#define TEST_UNION(caseid, ...) { (test_sort_by_side) \ - ( #caseid "_union", caseid[0], caseid[1], __VA_ARGS__); } - -template -void test_all() -{ - typedef bg::model::point point_type; - typedef bg::model::polygon polygon; - typedef bg::model::multi_polygon multi_polygon; - - // Selection of test cases having only one cluster - - TEST_INTER(case_64_multi, {1}); - TEST_INTER(case_72_multi, {3}); - TEST_INTER(case_107_multi, {2}); - TEST_INTER(case_123_multi, {3}); - TEST_INTER(case_124_multi, {3}); - TEST_INTER(case_recursive_boxes_10, {2}); - TEST_INTER(case_recursive_boxes_20, {2}); - TEST_INTER(case_recursive_boxes_21, {1}); - TEST_INTER(case_recursive_boxes_22, {0}); - - TEST_UNION(case_recursive_boxes_46, {2, 1, 2, 1, 1, 2, 1}); - - TEST_UNION(case_62_multi, {2}); - TEST_UNION(case_63_multi, {2}); - TEST_UNION(case_64_multi, {1}); - TEST_UNION(case_107_multi, {1}); - TEST_UNION(case_123_multi, {1}); - TEST_UNION(case_124_multi, {1}); - TEST_UNION(case_recursive_boxes_10, {1}); - TEST_UNION(case_recursive_boxes_18, {3}); - TEST_UNION(case_recursive_boxes_19, {3}); - TEST_UNION(case_recursive_boxes_20, {2}); - TEST_UNION(case_recursive_boxes_21, {1}); - TEST_UNION(case_recursive_boxes_22, {1}); - TEST_UNION(case_recursive_boxes_23, {3}); -} - -int test_main(int, char* []) -{ - test_all(); - return 0; -} diff --git a/test/algorithms/overlay/sort_by_side_basic.cpp b/test/algorithms/overlay/sort_by_side_basic.cpp deleted file mode 100644 index 4943fccc8..000000000 --- a/test/algorithms/overlay/sort_by_side_basic.cpp +++ /dev/null @@ -1,331 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) -// Unit Test - -// Copyright (c) 2017 Barend Gehrels, Amsterdam, the Netherlands. -// Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland. - -// This file was modified by Oracle on 2017-2024. -// Modifications copyright (c) 2017-2024, Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#include - -#include -#include -#include -#include -#include -#include -#include - -#if defined(TEST_WITH_SVG) -#include "debug_sort_by_side_svg.hpp" -#endif - -namespace -{ - - -template -std::string as_string(std::vector const& v) -{ - std::stringstream out; - bool first = true; - for (T const& value : v) - { - out << (first ? "[" : " , ") << value; - first = false; - } - out << (first ? "" : "]"); - return out.str(); -} - -} - -template -< - typename Geometry, typename Point, - typename Strategy -> -std::vector apply_get_turns(std::string const& case_id, - Geometry const& geometry1, Geometry const& geometry2, - Point const& turn_point, Point const& origin_point, - Strategy const& strategy, - std::size_t expected_open_count, - std::size_t expected_max_rank, - std::vector const& expected_right_count) -{ - using namespace boost::geometry; - - std::vector result; - -//todo: maybe should be enriched to count left/right - but can also be counted from ranks - typedef typename bg::point_type::type point_type; - typedef bg::detail::overlay::turn_info - < - point_type, - typename bg::segment_ratio_type::type - > turn_info; - typedef std::deque turn_container_type; - - turn_container_type turns; - - detail::get_turns::no_interrupt_policy policy; - bg::get_turns - < - false, false, - detail::overlay::assign_null_policy - >(geometry1, geometry2, strategy, turns, policy); - - - // Define sorter, sorting counter-clockwise such that polygons are on the - // right side - using sbs_type = bg::detail::overlay::sort_by_side::side_sorter - < - false, false, overlay_union, - point_type, Strategy, std::less - >; - - sbs_type sbs(strategy); - - std::cout << "Case: " << case_id << std::endl; - - bool has_origin = false; - for (std::size_t turn_index = 0; turn_index < turns.size(); turn_index++) - { - turn_info const& turn = turns[turn_index]; - - if (bg::equals(turn.point, turn_point)) - { -// std::cout << "Found turn: " << turn_index << std::endl; - for (int i = 0; i < 2; i++) - { - Point point1, point2, point3; - bg::copy_segment_points(geometry1, geometry2, - turn.operations[i].seg_id, point1, point2, point3); - bool const is_origin = ! has_origin && bg::equals(point1, origin_point); - if (is_origin) - { - has_origin = true; - } - - sbs.add(turn, turn.operations[i], turn_index, i, - geometry1, geometry2, is_origin); - - } - } - } - - BOOST_CHECK_MESSAGE(has_origin, - " caseid=" << case_id - << " origin not found"); - - if (!has_origin) - { - for (std::size_t turn_index = 0; turn_index < turns.size(); turn_index++) - { - turn_info const& turn = turns[turn_index]; - if (bg::equals(turn.point, turn_point)) - { - for (int i = 0; i < 2; i++) - { - Point point1, point2, point3; - bg::copy_segment_points(geometry1, geometry2, - turn.operations[i].seg_id, point1, point2, point3); -// std::cout << "Turn " << turn_index << " op " << i << " point1=" << bg::wkt(point1) << std::endl; - } - } - } - return result; - } - - - sbs.apply(turn_point); - - sbs.find_open(); - sbs.assign_zones(detail::overlay::operation_union); - - std::size_t const open_count = sbs.open_count(detail::overlay::operation_union); - std::size_t const max_rank = sbs.m_ranked_points.back().rank; - std::vector right_count(max_rank + 1, -1); - - int previous_rank = -1; - int previous_to_rank = -1; - for (std::size_t i = 0; i < sbs.m_ranked_points.size(); i++) - { - typename sbs_type::rp const& ranked_point = sbs.m_ranked_points[i]; - - int const rank = static_cast(ranked_point.rank); - bool const set_right = rank != previous_to_rank; - if (rank != previous_rank) - { - BOOST_CHECK_MESSAGE(rank == previous_rank + 1, - " caseid=" << case_id - << " ranks: conflict in ranks=" << ranked_point.rank - << " vs " << previous_rank + 1); - previous_rank = rank; - } - - if (ranked_point.direction != bg::detail::overlay::sort_by_side::dir_to) - { - continue; - } - - previous_to_rank = rank; - if (set_right) - { - right_count[rank] = ranked_point.count_right; - } - else - { - BOOST_CHECK_MESSAGE(right_count[rank] == int(ranked_point.count_right), - " caseid=" << case_id - << " ranks: conflict in right_count=" << ranked_point.count_right - << " vs " << right_count[rank]); - } - - } - BOOST_CHECK_MESSAGE(open_count == expected_open_count, - " caseid=" << case_id - << " open_count: expected=" << expected_open_count - << " detected=" << open_count); - - BOOST_CHECK_MESSAGE(max_rank == expected_max_rank, - " caseid=" << case_id - << " max_rank: expected=" << expected_max_rank - << " detected=" << max_rank); - - BOOST_CHECK_MESSAGE(right_count == expected_right_count, - " caseid=" << case_id - << " right count: expected=" << as_string(expected_right_count) - << " detected=" << as_string(right_count)); - -#if defined(TEST_WITH_SVG) - debug::sorted_side_map(case_id, sbs, turn_point, geometry1, geometry2); -#endif - - return result; -} - - -template -void test_basic(std::string const& case_id, - std::string const& wkt1, - std::string const& wkt2, - std::string const& wkt_turn_point, - std::string const& wkt_origin_point, - std::size_t expected_open_count, - std::size_t expected_max_rank, - std::vector const& expected_right_count) -{ - typedef bg::model::point point_type; - typedef bg::model::polygon polygon; - typedef bg::model::multi_polygon multi_polygon; - - multi_polygon g1; - bg::read_wkt(wkt1, g1); - - multi_polygon g2; - bg::read_wkt(wkt2, g2); - - point_type turn_point, origin_point; - bg::read_wkt(wkt_turn_point, turn_point); - bg::read_wkt(wkt_origin_point, origin_point); - - // Reverse if necessary - bg::correct(g1); - bg::correct(g2); - - typedef typename bg::strategies::relate::services::default_strategy - < - multi_polygon, multi_polygon - >::type strategy_type; - - strategy_type strategy; - - apply_get_turns(case_id, g1, g2, turn_point, origin_point, - strategy, - expected_open_count, expected_max_rank, expected_right_count); -} - -template -void test_all() -{ - test_basic("simplex", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)))", - "MULTIPOLYGON(((1 0,1 1,2 1,2 0,1, 0)))", - "POINT(1 1)", "POINT(1 0)", - 2, 3, {-1, 1, -1, 1}); - - test_basic("dup1", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)))", - "MULTIPOLYGON(((1 0,1 1,2 1,2 0,1, 0)),((0 2,1 2,1 1,0 1,0 2)))", - "POINT(1 1)", "POINT(1 0)", - 2, 3, {-1, 1, -1, 2}); - - test_basic("dup2", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)),((1 0,1 1,2 1,2 0,1, 0)))", - "MULTIPOLYGON(((1 0,1 1,2 1,2 0,1, 0)))", - "POINT(1 1)", "POINT(1 0)", - 2, 3, {-1, 2, -1, 1}); - - test_basic("dup3", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)),((1 0,1 1,2 1,2 0,1, 0)))", - "MULTIPOLYGON(((1 0,1 1,2 1,2 0,1, 0)),((0 2,1 2,1 1,0 1,0 2)))", - "POINT(1 1)", "POINT(1 0)", - 2, 3, {-1, 2, -1, 2}); - - test_basic("threequart1", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)),((1 0,1 1,2 1,2 0,1, 0)))", - "MULTIPOLYGON(((1 2,2 2,2 1,1 1,1 2)))", - "POINT(1 1)", "POINT(1 0)", - 1, 3, {-1, 1, 1, 1}); - - test_basic("threequart2", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)),((1 0,1 1,2 1,2 0,1, 0)))", - "MULTIPOLYGON(((1 2,2 2,2 1,1 1,1 2)),((2 0,1 0,1 1,2 0)))", - "POINT(1 1)", "POINT(1 0)", - 1, 4, {-1, 2, 1, 1, 1}); - - test_basic("threequart3", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)),((1 0,1 1,2 1,2 0,1, 0)))", - "MULTIPOLYGON(((1 2,2 2,2 1,1 1,1 2)),((2 0,1 0,1 1,2 0)),((0 1,0 2,1 1,0 1)))", - "POINT(1 1)", "POINT(1 0)", - 1, 5, {-1, 2, 1, 1, -1, 2}); - - test_basic("full1", - "MULTIPOLYGON(((0 2,1 2,1 1,0 1,0 2)),((1 0,1 1,2 1,2 0,1, 0)))", - "MULTIPOLYGON(((1 2,2 2,2 1,1 1,1 2)),((0 0,0 1,1 1,1 0,0 0)))", - "POINT(1 1)", "POINT(1 0)", - 0, 3, {1, 1, 1, 1}); - - test_basic("hole1", - "MULTIPOLYGON(((0 0,0 3,2 3,2 2,3 2,3 0,0 0),(1 1,2 1,2 2,1 2,1 1)),((4 2,3 2,3 3,4 3,4 2)))", - "MULTIPOLYGON(((1 0,1 1,2 1,2 2,1 2,1 4,4 4,4 0,1, 0),(3 2,3 3,2 3,2 2,3 2)))", - "POINT(1 2)", "POINT(2 2)", - 1, 2, {-1, 2, 1}); - - test_basic("hole2", - "MULTIPOLYGON(((0 0,0 3,2 3,2 2,3 2,3 0,0 0),(1 1,2 1,2 2,1 2,1 1)),((4 2,3 2,3 3,4 3,4 2)))", - "MULTIPOLYGON(((1 0,1 1,2 1,2 2,1 2,1 4,4 4,4 0,1, 0),(3 2,3 3,2 3,2 2,3 2)))", - "POINT(2 2)", "POINT(2 1)", - 2, 3, {-1, 2, -1, 2}); - - test_basic("hole3", - "MULTIPOLYGON(((0 0,0 3,2 3,2 2,3 2,3 0,0 0),(1 1,2 1,2 2,1 2,1 1)),((4 2,3 2,3 3,4 3,4 2)))", - "MULTIPOLYGON(((1 0,1 1,2 1,2 2,1 2,1 4,4 4,4 0,1, 0),(3 2,3 3,2 3,2 2,3 2)))", - "POINT(3 2)", "POINT(2 2)", - 1, 3, {-1, 2, -1, 2}); -} - - -int test_main(int, char* []) -{ - test_all(); - return 0; -} diff --git a/test/algorithms/overlay/traverse.cpp b/test/algorithms/overlay/traverse.cpp deleted file mode 100644 index ea99fb37c..000000000 --- a/test/algorithms/overlay/traverse.cpp +++ /dev/null @@ -1,1018 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) -// Unit Test - -// Copyright (c) 2010-2015 Barend Gehrels, Amsterdam, the Netherlands. - -// This file was modified by Oracle on 2021-2024. -// Modifications copyright (c) 2021-2024, Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#define BOOST_GEOMETRY_DEFINE_STREAM_OPERATOR_SEGMENT_RATIO - -#include -#include -#include -#include -#include - -#include - - -// #define BOOST_GEOMETRY_DEBUG_ENRICH -//#define BOOST_GEOMETRY_DEBUG_RELATIVE_ORDER - -// #define BOOST_GEOMETRY_DEBUG_SEGMENT_IDENTIFIER - - -#define BOOST_GEOMETRY_TEST_OVERLAY_NOT_EXCHANGED - -#ifdef BOOST_GEOMETRY_DEBUG_ENRICH -# define BOOST_GEOMETRY_DEBUG_IDENTIFIER -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include - -#if defined(TEST_WITH_SVG) -# include -#endif - -#include - -#include - -template -static inline std::string operation() -{ - switch(Op) - { - case bg::overlay_union : return "union"; - case bg::overlay_intersection : return "intersection"; - case bg::overlay_difference : return "difference"; - } - return "unknown"; -} - - -namespace detail -{ - -template -< - typename G1, typename G2, - bg::overlay_type OverlayType, - bool Reverse1, bool Reverse2 -> -struct test_traverse -{ - - static void apply(std::string const& id, - std::size_t expected_count, double expected_area, - G1 const& g1, G2 const& g2, - double precision) - { - // DEBUG ONE or FEW CASE(S) ONLY - //if (! boost::contains(id, "36") || Direction != 1) return; - //if (! boost::contains(id, "iet_") || boost::contains(id, "st")) return; - //if (! boost::contains(id, "66") || Direction != 1) return; - //if (! boost::contains(id, "92") && ! boost::contains(id, "96") ) return; - //if (! (boost::contains(id, "58_st") || boost::contains(id, "59_st") || boost::contains(id, "60_st") || boost::contains(id, "83")) ) return; - //if (! (boost::contains(id, "81") || boost::contains(id, "82") || boost::contains(id, "84") || boost::contains(id, "85") || boost::contains(id, "68")) ) return; - //if (! (boost::contains(id, "81") || boost::contains(id, "86") || boost::contains(id, "88")) ) return; - //if (! boost::contains(id, "58_") || Direction != 1) return; - //if (! boost::contains(id, "55") || Direction != 1) return; - //if (! boost::contains(id, "55_iet_iet") || Direction != 1) return; - //if (! boost::contains(id, "55_st_iet") || Direction != 1) return; - //if (! boost::contains(id, "55_iet_st") || Direction != 1) return; - //if (! boost::contains(id, "54_st_st") || Direction != 1) return; - //if (! boost::contains(id, "54_iet_st") || Direction != 1) return; - //if (! (boost::contains(id, "54_") || boost::contains(id, "55_")) || Direction != 1) return; - //if (Direction != 1) return; - // END DEBUG ONE ... - - - /*** FOR REVERSING ONLY - { - // If one or both are invalid (e.g. ccw), - // they can be corrected by uncommenting this section - G1 cg1 = g1; - G2 cg2 = g2; - bg::correct(cg1); - bg::correct(cg2); - std::cout << std::setprecision(12) - << bg::wkt(cg1) << std::endl - << bg::wkt(cg2) << std::endl; - } - ***/ - -#if defined(BOOST_GEOMETRY_DEBUG_OVERLAY) || defined(BOOST_GEOMETRY_DEBUG_ENRICH) - bool const ccw = - bg::point_order::value == bg::counterclockwise - || bg::point_order::value == bg::counterclockwise; - - std::cout << std::endl - << "TRAVERSE" - << " " << id - << (ccw ? "_ccw" : "") - << " " << string_from_type::type>::name() - << "(" << OverlayType << ")" << std::endl; - - //std::cout << bg::area(g1) << " " << bg::area(g2) << std::endl; -#endif - - typename bg::strategy::intersection::services::default_strategy - < - typename bg::cs_tag::type - >::type strategy; - - typedef typename bg::point_type::type point_type; - - typedef bg::detail::overlay::traversal_turn_info - < - point_type, - typename bg::detail::segment_ratio_type::type - > turn_info; - std::vector turns; - - std::map clusters; - - bg::detail::get_turns::no_interrupt_policy policy; - bg::get_turns(g1, g2, strategy, turns, policy); - bg::enrich_intersection_points(turns, clusters, g1, g2, strategy); - - typedef bg::model::ring::type> ring_type; - typedef std::vector out_vector; - out_vector v; - - bg::detail::overlay::overlay_null_visitor visitor; - - // TODO: this function requires additional arguments - bg::detail::overlay::traverse - < - Reverse1, Reverse2, - G1, G2, - OverlayType - >::apply(g1, g2, strategy, turns, v, visitor); - - // Check number of resulting rings - BOOST_CHECK_MESSAGE(expected_count == boost::size(v), - "traverse: " << id - << " (" << operation() << ")" - << " #shapes expected: " << expected_count - << " detected: " << boost::size(v) - << " type: " << string_from_type - ::type>::name() - ); - - // Check total area of resulting rings - typename bg::default_area_result::type total_area = 0; - for (ring_type const& ring : v) - { - total_area += bg::area(ring); - //std::cout << bg::wkt(ring) << std::endl; - } - - BOOST_CHECK_CLOSE(expected_area, total_area, precision); - -#if defined(TEST_WITH_SVG) - { - std::ostringstream filename; - filename << "traverse_" << operation() - << "_" << id - << "_" << string_from_type::type>::name() - << ".svg"; - - std::ofstream svg(filename.str().c_str()); - - bg::svg_mapper::type> mapper(svg, 500, 500); - mapper.add(g1); - mapper.add(g2); - - // Input shapes in green (src=0) / blue (src=1) - mapper.map(g1, "fill-opacity:0.5;fill:rgb(153,204,0);" - "stroke:rgb(153,204,0);stroke-width:3"); - mapper.map(g2, "fill-opacity:0.3;fill:rgb(51,51,153);" - "stroke:rgb(51,51,153);stroke-width:3"); - - // Traversal rings in magenta outline/red fill -> over blue/green this gives brown - for (ring_type const& ring : v) - { - mapper.map(ring, "fill-opacity:0.2;stroke-opacity:0.4;fill:rgb(255,0,0);" - "stroke:rgb(255,0,255);stroke-width:8"); - } - - // turn points in orange, + enrichment/traversal info - typedef typename bg::coordinate_type::type coordinate_type; - - // Simple map to avoid two texts at same place (note that can still overlap!) - std::map, int> offsets; - int index = 0; - int const margin = 5; - - for (turn_info const& turn : turns) - { - int lineheight = 8; - mapper.map(turn.point, "fill:rgb(255,128,0);" - "stroke:rgb(0,0,0);stroke-width:1", 3); - - { - coordinate_type half = 0.5; - coordinate_type ten = 10; - // Map characteristics - // Create a rounded off point - std::pair p - = std::make_pair( - util::numeric_cast(half - + ten * bg::get<0>(turn.point)), - util::numeric_cast(half - + ten * bg::get<1>(turn.point)) - ); - std::string style = "fill:rgb(0,0,0);font-family:Arial;font-size:8px"; - - if (turn.colocated) - { - style = "fill:rgb(255,0,0);font-family:Arial;font-size:8px"; - } - else if (turn.discarded) - { - style = "fill:rgb(92,92,92);font-family:Arial;font-size:6px"; - lineheight = 6; - } - - //if (! turn.is_discarded() && ! turn.blocked() && ! turn.both(bg::detail::overlay::operation_union)) - //if (! turn.discarded) - { - std::ostringstream out; - out << index - << ": " << bg::method_char(turn.method) - << std::endl - << "op: " << bg::operation_char(turn.operations[0].operation) - << " / " << bg::operation_char(turn.operations[1].operation) - //<< (turn.is_discarded() ? " (discarded) " : turn.blocked() ? " (blocked)" : "") - << std::endl; - - out << "r: " << turn.operations[0].fraction - << " ; " << turn.operations[1].fraction - << std::endl; - if (turn.operations[0].enriched.next_ip_index != -1) - { - out << "ip: " << turn.operations[0].enriched.next_ip_index; - } - else - { - out << "vx: " << turn.operations[0].enriched.travels_to_vertex_index - << " -> ip: " << turn.operations[0].enriched.travels_to_ip_index; - } - out << " / "; - if (turn.operations[1].enriched.next_ip_index != -1) - { - out << "ip: " << turn.operations[1].enriched.next_ip_index; - } - else - { - out << "vx: " << turn.operations[1].enriched.travels_to_vertex_index - << " -> ip: " << turn.operations[1].enriched.travels_to_ip_index; - } - - out << std::endl; - - /*out - - << std::setprecision(3) - << "dist: " << util::numeric_cast(turn.operations[0].enriched.distance) - << " / " << util::numeric_cast(turn.operations[1].enriched.distance) - << std::endl - << "vis: " << bg::visited_char(turn.operations[0].visited) - << " / " << bg::visited_char(turn.operations[1].visited); - */ - - /* - out << index - << ": " << bg::operation_char(turn.operations[0].operation) - << " " << bg::operation_char(turn.operations[1].operation) - << " (" << bg::method_char(turn.method) << ")" - << (turn.ignore() ? " (ignore) " : " ") - << std::endl - - << "ip: " << turn.operations[0].enriched.travels_to_ip_index - << "/" << turn.operations[1].enriched.travels_to_ip_index; - - if (turn.operations[0].enriched.next_ip_index != -1 - || turn.operations[1].enriched.next_ip_index != -1) - { - out << " [" << turn.operations[0].enriched.next_ip_index - << "/" << turn.operations[1].enriched.next_ip_index - << "]" - ; - } - out << std::endl; - - - out - << "vx:" << turn.operations[0].enriched.travels_to_vertex_index - << "/" << turn.operations[1].enriched.travels_to_vertex_index - << std::endl - - << std::setprecision(3) - << "dist: " << turn.operations[0].fraction - << " / " << turn.operations[1].fraction - << std::endl; - */ - - - - offsets[p] += lineheight; - int offset = offsets[p]; - offsets[p] += lineheight * 3; - mapper.text(turn.point, out.str(), style, margin, offset, lineheight); - } - index++; - } - } - } -#endif - } -}; -} - -template -< - typename G1, typename G2, - bg::overlay_type OverlayType, - bool Reverse1 = false, - bool Reverse2 = false -> -struct test_traverse -{ - typedef detail::test_traverse - < - G1, G2, OverlayType, Reverse1, Reverse2 - > detail_test_traverse; - - inline static void apply(std::string const& id, std::size_t expected_count, double expected_area, - std::string const& wkt1, std::string const& wkt2, - double precision = 0.001) - { - if (wkt1.empty() || wkt2.empty()) - { - return; - } - - G1 g1; - bg::read_wkt(wkt1, g1); - - G2 g2; - bg::read_wkt(wkt2, g2); - - bg::correct(g1); - bg::correct(g2); - - //std::cout << bg::wkt(g1) << std::endl; - //std::cout << bg::wkt(g2) << std::endl; - - // Try the overlay-function in both ways - std::string caseid = id; - //goto case_reversed; - -#ifdef BOOST_GEOMETRY_DEBUG_INTERSECTION - std::cout << std::endl << std::endl << "# " << caseid << std::endl; -#endif - detail_test_traverse::apply(caseid, expected_count, expected_area, g1, g2, precision); - -#ifdef BOOST_GEOMETRY_DEBUG_INTERSECTION - return; -#endif - - //case_reversed: -#if ! defined(BOOST_GEOMETRY_TEST_OVERLAY_NOT_EXCHANGED) - caseid = id + "_rev"; -#ifdef BOOST_GEOMETRY_DEBUG_INTERSECTION - std::cout << std::endl << std::endl << "# " << caseid << std::endl; -#endif - - detail_test_traverse::apply(caseid, expected_count, expected_area, g2, g1, precision); -#endif - } -}; - -#if ! defined(BOOST_GEOMETRY_TEST_MULTI) -template -void test_all(bool test_self_tangencies = true, bool test_mixed = false) -{ - typedef bg::model::point P; - typedef bg::model::polygon

polygon; - //typedef bg::model::box

box; - - typedef test_traverse - < - polygon, polygon, bg::overlay_intersection - > test_traverse_intersection; - typedef test_traverse - < - polygon, polygon, bg::overlay_union - > test_traverse_union; - - // 1-6 - test_traverse_intersection::apply("1", 1, 5.4736, case_1[0], case_1[1]); - test_traverse_intersection::apply("2", 1, 12.0545, case_2[0], case_2[1]); - test_traverse_intersection::apply("3", 1, 5, case_3[0], case_3[1]); - test_traverse_intersection::apply("4", 1, 10.2212, case_4[0], case_4[1]); - test_traverse_intersection::apply("5", 2, 12.8155, case_5[0], case_5[1]); - test_traverse_intersection::apply("6", 1, 4.5, case_6[0], case_6[1]); - - // 7-12 - test_traverse_intersection::apply("7", 0, 0, case_7[0], case_7[1]); - test_traverse_intersection::apply("8", 0, 0, case_8[0], case_8[1]); - test_traverse_intersection::apply("9", 0, 0, case_9[0], case_9[1]); - test_traverse_intersection::apply("10", 0, 0, case_10[0], case_10[1]); - test_traverse_intersection::apply("11", 1, 1, case_11[0], case_11[1]); - test_traverse_intersection::apply("12", 2, 0.63333, case_12[0], case_12[1]); - - // 13-18 - test_traverse_intersection::apply("13", 0, 0, case_13[0], case_13[1]); - test_traverse_intersection::apply("14", 0, 0, case_14[0], case_14[1]); - test_traverse_intersection::apply("15", 0, 0, case_15[0], case_15[1]); - test_traverse_intersection::apply("16", 0, 0, case_16[0], case_16[1]); - test_traverse_intersection::apply("17", 1, 2, case_17[0], case_17[1]); - test_traverse_intersection::apply("18", 1, 2, case_18[0], case_18[1]); - - // 19-24 - test_traverse_intersection::apply("19", 0, 0, case_19[0], case_19[1]); - test_traverse_intersection::apply("20", 1, 5.5, case_20[0], case_20[1]); - test_traverse_intersection::apply("21", 0, 0, case_21[0], case_21[1]); - test_traverse_intersection::apply("22", 0, 0, case_22[0], case_22[1]); - test_traverse_intersection::apply("23", 1, 1.4, case_23[0], case_23[1]); - test_traverse_intersection::apply("24", 1, 1.0, case_24[0], case_24[1]); - - // 25-30 - test_traverse_intersection::apply("25", 0, 0, case_25[0], case_25[1]); - test_traverse_intersection::apply("26", 0, 0, case_26[0], case_26[1]); - test_traverse_intersection::apply("27", 1, 0.9545454, case_27[0], case_27[1]); - test_traverse_intersection::apply("28", 1, 0.9545454, case_28[0], case_28[1]); - test_traverse_intersection::apply("29", 1, 1.4, case_29[0], case_29[1]); - test_traverse_intersection::apply("30", 1, 0.5, case_30[0], case_30[1]); - - // 31-36 - test_traverse_intersection::apply("31", 0, 0, case_31[0], case_31[1]); - test_traverse_intersection::apply("32", 0, 0, case_32[0], case_32[1]); - test_traverse_intersection::apply("33", 0, 0, case_33[0], case_33[1]); - test_traverse_intersection::apply("34", 1, 0.5, case_34[0], case_34[1]); - test_traverse_intersection::apply("35", 1, 1.0, case_35[0], case_35[1]); - test_traverse_intersection::apply("36", 1, 1.625, case_36[0], case_36[1]); - - // 37-42 - test_traverse_intersection::apply("37", 2, 0.666666, case_37[0], case_37[1]); - test_traverse_intersection::apply("38", 2, 0.971429, case_38[0], case_38[1]); - test_traverse_intersection::apply("39", 1, 24, case_39[0], case_39[1]); - test_traverse_intersection::apply("40", 0, 0, case_40[0], case_40[1]); - test_traverse_intersection::apply("41", 1, 5, case_41[0], case_41[1]); - test_traverse_intersection::apply("42", 1, 5, case_42[0], case_42[1]); - - // 43-48 - invalid polygons - //test_traverse_intersection::apply("43", 2, 0.75, case_43[0], case_43[1]); - //test_traverse_intersection::apply("44", 1, 44, case_44[0], case_44[1]); - //test_traverse_intersection::apply("45", 1, 45, case_45[0], case_45[1]); - //test_traverse_intersection::apply("46", 1, 46, case_46[0], case_46[1]); - //test_traverse_intersection::apply("47", 1, 47, case_47[0], case_47[1]); - - // 49-54 - - test_traverse_intersection::apply("50", 0, 0, case_50[0], case_50[1]); - test_traverse_intersection::apply("51", 0, 0, case_51[0], case_51[1]); - test_traverse_intersection::apply("52", 1, 10.5, case_52[0], case_52[1]); - if (test_self_tangencies) - { - test_traverse_intersection::apply("53_st", 0, 0, case_53[0], case_53[1]); - } - test_traverse_intersection::apply("53_iet", 0, 0, case_53[0], case_53[2]); - - test_traverse_intersection::apply("54_iet_iet", 1, 2, case_54[1], case_54[3]); - if (test_self_tangencies) - { - test_traverse_intersection::apply("54_st_iet", 1, 2, case_54[0], case_54[3]); - test_traverse_intersection::apply("54_iet_st", 1, 2, case_54[1], case_54[2]); - test_traverse_intersection::apply("54_st_st", 1, 2, case_54[0], case_54[2]); - } - - if (test_self_tangencies) - { - // 55-60 - test_traverse_intersection::apply("55_st_st", 1, 2, case_55[0], case_55[2]); - } - - test_traverse_intersection::apply("55_st_iet", 1, 2, case_55[0], case_55[3]); - test_traverse_intersection::apply("55_iet_st", 1, 2, case_55[1], case_55[2]); - if (test_self_tangencies) - { - test_traverse_intersection::apply("56", 2, 4.5, case_56[0], case_56[1]); - } - test_traverse_intersection::apply("55_iet_iet", 1, 2, case_55[1], case_55[3]); - test_traverse_intersection::apply("57", 2, 5.9705882, case_57[0], case_57[1]); - - if (test_self_tangencies) - { - test_traverse_intersection::apply("58_st", - 2, 0.333333, case_58[0], case_58[1]); - test_traverse_intersection::apply("59_st", - 2, 1.5416667, case_59[0], case_59[1]); - test_traverse_intersection::apply("60_st", - 3, 2, case_60[0], case_60[1]); - } - test_traverse_intersection::apply("58_iet", - 2, 0.333333, case_58[0], case_58[2]); - test_traverse_intersection::apply("59_iet", - 2, 1.5416667, case_59[0], case_59[2]); - test_traverse_intersection::apply("60_iet", - 3, 2, case_60[0], case_60[2]); - test_traverse_intersection::apply("61_st", - 0, 0, case_61[0], case_61[1]); - - test_traverse_intersection::apply("70", - 2, 4, case_70[0], case_70[1]); - test_traverse_intersection::apply("71", - 2, 2, case_71[0], case_71[1]); - test_traverse_intersection::apply("72", - 3, 2.85, case_72[0], case_72[1]); - test_traverse_intersection::apply("79", - 2, 20, case_79[0], case_79[1]); - - // Should be 3 shapes - test_traverse_intersection::apply("82a", - 2, 2.0, case_82[0], case_82[1]); - // Should be 3 shapes - test_traverse_intersection::apply("82b", - 2, 2.0, case_82[0], case_82[2]); - // other - -#ifdef BOOST_GEOMETRY_TEST_FAILURES - // simplified version of 82, area should be different - // missing IP at (1.5 3.5) from (1 4,1.5 3.5,2 4)x(2 4,1 3) - test_traverse_intersection::apply("83", - 1, 0.0, case_83[0], case_83[1]); -#endif - - // pies (went wrong when not all cases where implemented, especially some collinear (opposite) cases - test_traverse_intersection::apply("pie_16_4_12", - 1, 491866.5, pie_16_4_12[0], pie_16_4_12[1]); - test_traverse_intersection::apply("pie_23_21_12_500", - 2, 2363199.3313, pie_23_21_12_500[0], pie_23_21_12_500[1]); - test_traverse_intersection::apply("pie_23_23_3_2000", - 2, 1867779.9349, pie_23_23_3_2000[0], pie_23_23_3_2000[1]); - test_traverse_intersection::apply("pie_23_16_16", - 2, 2128893.9555, pie_23_16_16[0], pie_23_16_16[1]); - test_traverse_intersection::apply("pie_16_2_15_0", - 0, 0, pie_16_2_15_0[0], pie_16_2_15_0[1]); - test_traverse_intersection::apply("pie_4_13_15", - 1, 490887.06678, pie_4_13_15[0], pie_4_13_15[1]); - test_traverse_intersection::apply("pie_20_20_7_100", - 2, 2183372.2718, pie_20_20_7_100[0], pie_20_20_7_100[1]); - - - - // 1-6 - test_traverse_union::apply("1", 1, 11.5264, case_1[0], case_1[1]); - test_traverse_union::apply("2", 1, 17.9455, case_2[0], case_2[1]); - test_traverse_union::apply("3", 1, 9, case_3[0], case_3[1]); - test_traverse_union::apply("4", 3, 17.7788, case_4[0], case_4[1]); - test_traverse_union::apply("5", 2, 18.4345, case_5[0], case_5[1]); - test_traverse_union::apply("6", 1, 9, case_6[0], case_6[1]); - - // 7-12 - test_traverse_union::apply("7", 1, 9, case_7[0], case_7[1]); - test_traverse_union::apply("8", 1, 12, case_8[0], case_8[1]); - test_traverse_union::apply("9", 0, 0 /*UU 2, 11*/, case_9[0], case_9[1]); - test_traverse_union::apply("10", 1, 9, case_10[0], case_10[1]); - test_traverse_union::apply("11", 1, 8, case_11[0], case_11[1]); - test_traverse_union::apply("12", 2, 8.36667, case_12[0], case_12[1]); - - // 13-18 - test_traverse_union::apply("13", 1, 4, case_13[0], case_13[1]); - test_traverse_union::apply("14", 1, 12, case_14[0], case_14[1]); - test_traverse_union::apply("15", 1, 12, case_15[0], case_15[1]); - test_traverse_union::apply("16", 1, 9, case_16[0], case_16[1]); - test_traverse_union::apply("17", 1, 8, case_17[0], case_17[1]); - test_traverse_union::apply("18", 1, 8, case_18[0], case_18[1]); - - // 19-24 - test_traverse_union::apply("19", 1, 10, case_19[0], case_19[1]); - test_traverse_union::apply("20", 1, 5.5, case_20[0], case_20[1]); - test_traverse_union::apply("21", 0, 0, case_21[0], case_21[1]); - test_traverse_union::apply("22", 0, 0 /*UU 2, 9.5*/, case_22[0], case_22[1]); - test_traverse_union::apply("23", 1, 6.1, case_23[0], case_23[1]); - test_traverse_union::apply("24", 1, 5.5, case_24[0], case_24[1]); - - // 25-30 - test_traverse_union::apply("25", 0, 0 /*UU 2, 7*/, case_25[0], case_25[1]); - test_traverse_union::apply("26", 0, 0 /*UU 2, 7.5 */, case_26[0], case_26[1]); - test_traverse_union::apply("27", 1, 8.04545, case_27[0], case_27[1]); - test_traverse_union::apply("28", 1, 10.04545, case_28[0], case_28[1]); - test_traverse_union::apply("29", 1, 8.1, case_29[0], case_29[1]); - test_traverse_union::apply("30", 1, 6.5, case_30[0], case_30[1]); - - // 31-36 - test_traverse_union::apply("31", 0, 0 /*UU 2, 4.5 */, case_31[0], case_31[1]); - test_traverse_union::apply("32", 0, 0 /*UU 2, 4.5 */, case_32[0], case_32[1]); - test_traverse_union::apply("33", 0, 0 /*UU 2, 4.5 */, case_33[0], case_33[1]); - test_traverse_union::apply("34", 1, 6.0, case_34[0], case_34[1]); - test_traverse_union::apply("35", 1, 10.5, case_35[0], case_35[1]); - test_traverse_union::apply("36", 1 /*UU 2*/, 14.375, case_36[0], case_36[1]); - - // 37-42 - test_traverse_union::apply("37", 1, 7.33333, case_37[0], case_37[1]); - test_traverse_union::apply("38", 1, 9.52857, case_38[0], case_38[1]); - test_traverse_union::apply("39", 1, 40.0, case_39[0], case_39[1]); - test_traverse_union::apply("40", 0, 0 /*UU 2, 11 */, case_40[0], case_40[1]); - test_traverse_union::apply("41", 1, 5, case_41[0], case_41[1]); - test_traverse_union::apply("42", 1, 5, case_42[0], case_42[1]); - - // 43-48 - //test_traverse_union::apply("43", 3, 8.1875, case_43[0], case_43[1]); - //test_traverse_union::apply("44", 1, 44, case_44[0], case_44[1]); - //test_traverse_union::apply("45", 1, 45, case_45[0], case_45[1]); - //test_traverse_union::apply("46", 1, 46, case_46[0], case_46[1]); - //test_traverse_union::apply("47", 1, 47, case_47[0], case_47[1]); - - // 49-54 - - test_traverse_union::apply("50", 1, 25, case_50[0], case_50[1]); - test_traverse_union::apply("51", 0, 0, case_51[0], case_51[1]); - test_traverse_union::apply("52", 1, 15.5, case_52[0], case_52[1]); - if (test_self_tangencies) - { - test_traverse_union::apply("53_st", 2, 16, case_53[0], case_53[1]); - } - test_traverse_union::apply("53_iet", - 2, 16, case_53[0], case_53[2]); - if (test_self_tangencies) - { - test_traverse_union::apply("54_st_st", 2, 20, case_54[0], case_54[2]); - test_traverse_union::apply("54_st_iet", 2, 20, case_54[0], case_54[3]); - test_traverse_union::apply("54_iet_st", 2, 20, case_54[1], case_54[2]); - } - test_traverse_union::apply("54_iet_iet", 2, 20, case_54[1], case_54[3]); - - if (test_mixed) - { - test_traverse_union::apply("55_st_iet", 2, 18, case_55[0], case_55[3]); - test_traverse_union::apply("55_iet_st", 2, 18, case_55[1], case_55[2]); - // moved to mixed - test_traverse_union::apply("55_iet_iet", 3, 18, case_55[1], case_55[3]); - } - - // 55-60 - if (test_self_tangencies) - { - // 55 with both input polygons having self tangencies (st_st) generates 1 correct shape - test_traverse_union::apply("55_st_st", 1, 18, case_55[0], case_55[2]); - // 55 with one of them self-tangency, other int/ext ring tangency generate 2 correct shapes - - test_traverse_union::apply("56", 2, 14, case_56[0], case_56[1]); - } - test_traverse_union::apply("57", 1, 14.029412, case_57[0], case_57[1]); - - if (test_self_tangencies) - { - test_traverse_union::apply("58_st", - 4, 12.16666, case_58[0], case_58[1]); - test_traverse_union::apply("59_st", - 2, 17.208333, case_59[0], case_59[1]); - test_traverse_union::apply("60_st", - 3, 19, case_60[0], case_60[1]); - } - test_traverse_union::apply("58_iet", - 4, 12.16666, case_58[0], case_58[2]); - test_traverse_union::apply("59_iet", - 1, -3.791666, // 2, 17.208333), outer ring (ii/ix) is done by ASSEMBLE - case_59[0], case_59[2]); - test_traverse_union::apply("60_iet", - 3, 19, case_60[0], case_60[2]); - test_traverse_union::apply("61_st", - 1, 4, case_61[0], case_61[1]); - - test_traverse_union::apply("70", - 1, 9, case_70[0], case_70[1]); - test_traverse_union::apply("71", - 2, 9, case_71[0], case_71[1]); - test_traverse_union::apply("72", - 1, 10.65, case_72[0], case_72[1]); - - // other - test_traverse_union::apply("box_poly5", - 2, 4.7191, - "POLYGON((1.5 1.5, 1.5 2.5, 4.5 2.5, 4.5 1.5, 1.5 1.5))", - "POLYGON((2 1.3,2.4 1.7,2.8 1.8,3.4 1.2,3.7 1.6,3.4 2,4.1 2.5,4.5 2.5,4.5 2.3,5.0 2.3,5.0 2.1,4.5 2.1,4.5 1.9,4.0 1.9,4.5 1.2,4.9 0.8,2.9 0.7,2 1.3))"); - - test_traverse_intersection::apply("collinear_overlaps", - 1, 24, - collinear_overlaps[0], collinear_overlaps[1]); - test_traverse_union::apply("collinear_overlaps", - 1, 50, - collinear_overlaps[0], collinear_overlaps[1]); - - test_traverse_intersection::apply("many_situations", 1, 184, case_many_situations[0], case_many_situations[1]); - test_traverse_union::apply("many_situations", - 1, 207, case_many_situations[0], case_many_situations[1]); - - - // From "intersection piets", robustness test. - // This all went wrong in the past - // (when not all cases (get_turns) where implemented, - // especially important are some collinear (opposite) cases) - test_traverse_union::apply("pie_16_4_12", - 1, 3669665.5, pie_16_4_12[0], pie_16_4_12[1]); - test_traverse_union::apply("pie_23_21_12_500", - 1, 6295516.7185, pie_23_21_12_500[0], pie_23_21_12_500[1]); - test_traverse_union::apply("pie_23_23_3_2000", - 1, 7118735.0530, pie_23_23_3_2000[0], pie_23_23_3_2000[1]); - test_traverse_union::apply("pie_23_16_16", - 1, 5710474.5406, pie_23_16_16[0], pie_23_16_16[1]); - test_traverse_union::apply("pie_16_2_15_0", - 1, 3833641.5, pie_16_2_15_0[0], pie_16_2_15_0[1]); - test_traverse_union::apply("pie_4_13_15", - 1, 2208122.43322, pie_4_13_15[0], pie_4_13_15[1]); - test_traverse_union::apply("pie_20_20_7_100", - 1, 5577158.72823, pie_20_20_7_100[0], pie_20_20_7_100[1]); - - /* - if (test_not_valid) - { - test_traverse_union::apply("pie_5_12_12_0_7s", - 1, 3271710.48516, pie_5_12_12_0_7s[0], pie_5_12_12_0_7s[1]); - } - */ - - static const bool is_float = std::is_same::value; - - static const double float_might_deviate_more = is_float ? 0.1 : 0.001; // In some cases up to 1 promille permitted - - // GCC: does not everywhere handle float correctly (in our algorithms) - static bool const is_float_on_non_msvc = -#if defined(_MSC_VER) - false; -#else - is_float; -#endif - - - - // From "Random Ellipse Stars", robustness test. - // This all went wrong in the past - // when using Determinant/ra/rb and comparing with 0/1 - // Solved now by avoiding determinant / using sides - // ("hv" means "high volume") - { - double deviation = is_float ? 0.01 : 0.001; - test_traverse_union::apply("hv1", 1, 1624.508688461573, hv_1[0], hv_1[1], deviation); - test_traverse_intersection::apply("hv1", 1, 1622.7200125123809, hv_1[0], hv_1[1], deviation); - - test_traverse_union::apply("hv2", 1, 1622.9193392726836, hv_2[0], hv_2[1], deviation); - test_traverse_intersection::apply("hv2", 1, 1622.1733591429329, hv_2[0], hv_2[1], deviation); - - test_traverse_union::apply("hv3", 1, 1624.22079205664, hv_3[0], hv_3[1], deviation); - test_traverse_intersection::apply("hv3", 1, 1623.8265057282042, hv_3[0], hv_3[1], deviation); - - - if ( BOOST_GEOMETRY_CONDITION(! is_float) ) - { - test_traverse_union::apply("hv4", 1, 1626.5146964146334, hv_4[0], hv_4[1], deviation); - test_traverse_intersection::apply("hv4", 1, 1626.2580370864305, hv_4[0], hv_4[1], deviation); - test_traverse_union::apply("hv5", 1, 1624.2158307261871, hv_5[0], hv_5[1], deviation); - test_traverse_intersection::apply("hv5", 1, 1623.4506071521519, hv_5[0], hv_5[1], deviation); - - // Case 2009-12-07 - test_traverse_intersection::apply("hv6", 1, 1604.6318757402121, hv_6[0], hv_6[1], deviation); - test_traverse_union::apply("hv6", 1, 1790.091872401327, hv_6[0], hv_6[1], deviation); - - // Case 2009-12-08, needing sorting on side in enrich_intersection_points - test_traverse_union::apply("hv7", 1, 1624.5779453641017, hv_7[0], hv_7[1], deviation); - test_traverse_intersection::apply("hv7", 1, 1623.6936420295772, hv_7[0], hv_7[1], deviation); - } - } - - // From "Random Ellipse Stars", robustness test. - // This all went wrong in the past when distances (see below) were zero (dz) - // "Distance zero", dz, means: the distance between two intersection points - // on a same segment is 0, therefore it can't be sorted normally, therefore - // the chance is 50% that the segments are not sorted correctly and the wrong - // decision is taken. - // Solved now (by sorting on sides in those cases) - if ( BOOST_GEOMETRY_CONDITION(! is_float_on_non_msvc) ) - { - test_traverse_intersection::apply("dz_1", - 2, 16.887537949472005, dz_1[0], dz_1[1]); - test_traverse_union::apply("dz_1", - 3, 1444.2621305732864, dz_1[0], dz_1[1]); - - test_traverse_intersection::apply("dz_2", - 2, 68.678921274288541, dz_2[0], dz_2[1]); - test_traverse_union::apply("dz_2", - 1, 1505.4202304878663, dz_2[0], dz_2[1]); - - test_traverse_intersection::apply("dz_3", - 5, 192.49316937645651, dz_3[0], dz_3[1]); - test_traverse_union::apply("dz_3", - 5, 1446.496005965641, dz_3[0], dz_3[1]); - - test_traverse_intersection::apply("dz_4", - 1, 473.59423868207693, dz_4[0], dz_4[1]); - test_traverse_union::apply("dz_4", - 1, 1871.6125138873476, dz_4[0], dz_4[1]); - } - - // Real-life problems - - // SNL (Subsidiestelsel Natuur & Landschap - verAANnen) - - test_traverse_intersection::apply("snl-1", - 2, 286.996062095888, - snl_1[0], snl_1[1], - float_might_deviate_more); - - test_traverse_union::apply("snl-1", - 2, 51997.5408506132, - snl_1[0], snl_1[1], - float_might_deviate_more); - - { - test_traverse_intersection::apply("isov", - 1, 88.1920, isovist[0], isovist[1], - float_might_deviate_more); - test_traverse_union::apply("isov", - 1, 313.3604, isovist[0], isovist[1], - float_might_deviate_more); - } - - if ( BOOST_GEOMETRY_CONDITION(! is_float) ) - { - -/* TODO check this BSG 2013-09-24 -#if defined(_MSC_VER) - double const expected = if_typed_tt(3.63794e-17, 0.0); - int expected_count = if_typed_tt(1, 0); -#else - double const expected = if_typed(2.77555756156289135106e-17, 0.0); - int expected_count = if_typed(1, 0); -#endif - - // Calculate intersection/union of two triangles. Robustness case. - // some precise types can form a very small intersection triangle - // (which is even not accomplished by SQL Server/PostGIS) - std::string const caseid = "ggl_list_20110820_christophe"; - test_traverse_intersection::apply(caseid, - expected_count, expected, - ggl_list_20110820_christophe[0], ggl_list_20110820_christophe[1]); - test_traverse_union::apply(caseid, - 1, 67.3550722317627, - ggl_list_20110820_christophe[0], ggl_list_20110820_christophe[1]); -*/ - } - - test_traverse_union::apply("buffer_rt_f", - 1, 4.60853, - buffer_rt_f[0], buffer_rt_f[1]); - test_traverse_intersection::apply("buffer_rt_f", - 1, 0.0002943725152286, - buffer_rt_f[0], buffer_rt_f[1], 0.01); - - test_traverse_union::apply("buffer_rt_g", - 1, 16.571, - buffer_rt_g[0], buffer_rt_g[1]); - - test_traverse_union::apply("buffer_rt_g_boxes1", - 1, 20, - buffer_rt_g_boxes[0], buffer_rt_g_boxes[1]); - test_traverse_union::apply("buffer_rt_g_boxes2", - 1, 24, - buffer_rt_g_boxes[0], buffer_rt_g_boxes[2]); - test_traverse_union::apply("buffer_rt_g_boxes3", - 1, 28, - buffer_rt_g_boxes[0], buffer_rt_g_boxes[3]); - - test_traverse_union::apply("buffer_rt_g_boxes43", - 1, 30, - buffer_rt_g_boxes[4], buffer_rt_g_boxes[3]); - - test_traverse_union::apply("buffer_rt_l", - 1, 19.3995, buffer_rt_l[0], buffer_rt_l[1]); - - test_traverse_union::apply("buffer_mp2", - 1, 36.7535642, buffer_mp2[0], buffer_mp2[1], 0.01); - test_traverse_union::apply("collinear_opposite_rr", - 1, 6.41, collinear_opposite_right[0], collinear_opposite_right[1]); - test_traverse_union::apply("collinear_opposite_ll", - 1, 11.75, collinear_opposite_left[0], collinear_opposite_left[1]); - test_traverse_union::apply("collinear_opposite_ss", - 1, 6, collinear_opposite_straight[0], collinear_opposite_straight[1]); - test_traverse_union::apply("collinear_opposite_lr", - 1, 8.66, collinear_opposite_left[0], collinear_opposite_right[1]); - test_traverse_union::apply("collinear_opposite_rl", - 1, 9, collinear_opposite_right[0], collinear_opposite_left[1]); - - test_traverse_intersection::apply("ticket_7462", 1, 0.220582, ticket_7462[0], ticket_7462[1]); - - test_traverse_intersection::apply - ("ticket_9081_15", 1, 0.006889578, - ticket_9081_15[0], ticket_9081_15[1]); - -#ifdef BOOST_GEOMETRY_OVERLAY_NO_THROW - { - // NOTE: currently throws (normally) - std::string caseid = "ggl_list_20120229_volker"; - test_traverse_union::apply(caseid, - 1, 99, - ggl_list_20120229_volker[0], ggl_list_20120229_volker[1]); - test_traverse_intersection::apply(caseid, - 1, 99, - ggl_list_20120229_volker[0], ggl_list_20120229_volker[1]); - caseid = "ggl_list_20120229_volker_2"; - test_traverse_union::apply(caseid, - 1, 99, - ggl_list_20120229_volker[2], ggl_list_20120229_volker[1]); - test_traverse_intersection::apply(caseid, - 1, 99, - ggl_list_20120229_volker[2], ggl_list_20120229_volker[1]); - } -#endif -} - -#if ! defined(BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE) -template -void test_open() -{ - typedef bg::model::polygon - < - bg::model::point, - true, false - > polygon; - - typedef test_traverse - < - polygon, polygon, bg::overlay_intersection - > test_traverse_intersection; - typedef test_traverse - < - polygon, polygon, bg::overlay_union - > test_traverse_union; - - test_traverse_intersection::apply("open_1", 1, 5.4736, - open_case_1[0], open_case_1[1]); - test_traverse_union::apply("open_1", 1, 11.5264, - open_case_1[0], open_case_1[1]); -} - - -template -void test_ccw() -{ - typedef bg::model::polygon - < - bg::model::point, - false, true - > polygon; - - test_traverse::apply("ccw_1", 1, 5.4736, - ccw_case_1[0], ccw_case_1[1]); - test_traverse::apply("ccw_1", 1, 11.5264, - ccw_case_1[0], ccw_case_1[1]); -} -#endif - - -int test_main(int, char* []) -{ -#if defined(BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE) - test_all(); -#else - test_all(); - test_all(); - test_open(); - test_ccw(); - -#if ! defined(_MSC_VER) - test_all(); -#endif - -#endif - - return 0; - } - -#endif diff --git a/test/algorithms/overlay/traverse_ccw.cpp b/test/algorithms/overlay/traverse_ccw.cpp deleted file mode 100644 index 332d85e6c..000000000 --- a/test/algorithms/overlay/traverse_ccw.cpp +++ /dev/null @@ -1,360 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) -// Unit Test - -// Copyright (c) 2010-2012 Barend Gehrels, Amsterdam, the Netherlands. - -// This file was modified by Oracle on 2021-2024. -// Modifications copyright (c) 2021-2024, Oracle and/or its affiliates. -// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle -// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#define BOOST_GEOMETRY_DEFINE_STREAM_OPERATOR_SEGMENT_RATIO - -#include -#include -#include - -#include - -#include -#include -#include -#include -#include -#include - -#if defined(TEST_WITH_SVG) -# include -#endif - -#include - -template -using rev = bg::util::bool_constant::value == bg::counterclockwise>; - -template -inline typename bg::coordinate_type::type -intersect(Geometry1 const& g1, Geometry2 const& g2, std::string const& name, - bg::detail::overlay::operation_type op) -{ - boost::ignore_unused(name); - - typedef typename bg::strategy::side::services::default_strategy - < - typename bg::cs_tag::type - >::type side_strategy_type; - - - typedef typename bg::point_type::type point_type; - - typedef bg::detail::overlay::traversal_turn_info - < - point_type, - typename bg::detail::segment_ratio_type::type - > turn_info; - std::vector turns; - - bg::detail::get_turns::no_interrupt_policy policy; - bg::get_turns - < - rev::value, - rev::value, - bg::detail::overlay::assign_null_policy - >(g1, g2, turns, policy); - - bg::enrich_intersection_points - < - rev::value, rev::value, - bg::overlay_intersection - >(turns, bg::detail::overlay::operation_intersection, - g1, g2, side_strategy_type()); - - typedef bg::model::ring::type> ring_type; - typedef std::deque out_vector; - out_vector v; - - bg::detail::overlay::traverse - < - rev::value, rev::value, - Geometry1, Geometry2 - >::apply(g1, g2, op, turns, v); - - typename bg::coordinate_type::type result = 0.0; - for (ring_type& ring : v) - { - result += bg::area(ring); - } - -#if defined(TEST_WITH_SVG) - { - std::ostringstream filename; - filename - << name << "_" - << (op == bg::detail::overlay::operation_intersection ? "i" : "u") - << "_" << (rev::value ? "ccw" : "cw") - << "_" << (rev::value ? "ccw" : "cw") - << ".svg"; - - std::ofstream svg(filename.str().c_str()); - - bg::svg_mapper::type> mapper(svg, 500, 500); - mapper.add(g1); - mapper.add(g2); - - // Input shapes in green/blue - mapper.map(g1, "fill-opacity:0.5;fill:rgb(153,204,0);" - "stroke:rgb(153,204,0);stroke-width:3"); - mapper.map(g2, "fill-opacity:0.3;fill:rgb(51,51,153);" - "stroke:rgb(51,51,153);stroke-width:3"); - - // Traversal rings in magenta/light yellow fill - for (ring_type const& ring : v) - { - mapper.map(ring, "fill-opacity:0.3;stroke-opacity:0.4;fill:rgb(255,255,0);" - "stroke:rgb(255,0,255);stroke-width:8"); - } - - - // turn points in orange, + enrichment/traversal info - - // Simple map to avoid two texts at same place (note that can still overlap!) - std::map, int> offsets; - int index = 0; - int const lineheight = 10; - int const margin = 5; - - for (turn_info const& turn : turns) - { - mapper.map(turn.point, "fill:rgb(255,128,0);" - "stroke:rgb(0,0,0);stroke-width:1", 3); - - { - // Map characteristics - // Create a rounded off point - std::pair p - = std::make_pair( - util::numeric_cast(0.5 + 10 * bg::get<0>(turn.point)), - util::numeric_cast(0.5 + 10 * bg::get<1>(turn.point)) - ); - std::string style = "fill:rgb(0,0,0);font-family:Arial;font-size:10px"; - - std::ostringstream out; - out << index - << ": " << bg::method_char(turn.method) - << std::endl - << "op: " << bg::operation_char(turn.operations[0].operation) - << " / " << bg::operation_char(turn.operations[1].operation) - << (turn.is_discarded() ? " (discarded) " : turn.blocked() ? " (blocked)" : "") - << std::endl; - - if (turn.operations[0].enriched.next_ip_index != -1) - { - out << "ip: " << turn.operations[0].enriched.next_ip_index; - } - else - { - out << "vx: " << turn.operations[0].enriched.travels_to_vertex_index; - } - out << " "; - if (turn.operations[1].enriched.next_ip_index != -1) - { - out << "ip: " << turn.operations[1].enriched.next_ip_index; - } - else - { - out << "vx: " << turn.operations[1].enriched.travels_to_vertex_index; - } - - out << std::endl; - - out - - << std::setprecision(3) - << "dist: " << turn.operations[0].fraction - << " / " << turn.operations[1].fraction - << std::endl; - - offsets[p] += lineheight; - int offset = offsets[p]; - offsets[p] += lineheight * 5; - mapper.text(turn.point, out.str(), style, margin, offset, lineheight); - } - index++; - } - } -#endif - - return result; -} - -template -inline typename bg::coordinate_type::type intersect(std::string const& wkt1, std::string const& wkt2, std::string const& name, - bg::detail::overlay::operation_type op) -{ - Geometry1 geometry1; - Geometry2 geometry2; - bg::read_wkt(wkt1, geometry1); - bg::read_wkt(wkt2, geometry2); - - // Reverse if necessary: adapt to cw/ccw - bg::correct(geometry1); - bg::correct(geometry2); - - return intersect(geometry1, geometry2, name, op); -} - -template -inline void test_polygon(std::string const& wkt1, std::string const& wkt2, std::string const& name) -{ - typedef bg::model::d2::point_xy point; - typedef bg::model::polygon clock; - typedef bg::model::polygon counter; - - namespace ov = bg::detail::overlay; - T area1 = intersect(wkt1, wkt2, name, ov::operation_intersection); - T area2 = intersect(wkt1, wkt2, name, ov::operation_intersection); - T area3 = intersect(wkt1, wkt2, name, ov::operation_intersection); - T area4 = intersect(wkt1, wkt2, name, ov::operation_intersection); - BOOST_CHECK_CLOSE(area1, area2, 0.001); - BOOST_CHECK_CLOSE(area3, area4, 0.001); - BOOST_CHECK_CLOSE(area1, area3, 0.001); - BOOST_CHECK_CLOSE(area2, area4, 0.001); - - area1 = intersect(wkt1, wkt2, name, ov::operation_union); - area2 = intersect(wkt1, wkt2, name, ov::operation_union); - area3 = intersect(wkt1, wkt2, name, ov::operation_union); - area4 = intersect(wkt1, wkt2, name, ov::operation_union); - BOOST_CHECK_CLOSE(area1, area2, 0.001); - BOOST_CHECK_CLOSE(area3, area4, 0.001); - BOOST_CHECK_CLOSE(area1, area3, 0.001); - BOOST_CHECK_CLOSE(area2, area4, 0.001); -} - -template -inline void test_box_polygon(std::string const& wkt1, std::string const& wkt2, std::string const& name) -{ - typedef bg::model::d2::point_xy point; - typedef bg::model::box box; - typedef bg::model::polygon clock; - typedef bg::model::polygon counter; - - namespace ov = bg::detail::overlay; - T area1 = intersect(wkt1, wkt2, name + "_bp", ov::operation_intersection); - T area2 = intersect(wkt1, wkt2, name + "_bp", ov::operation_intersection); - T area3 = intersect(wkt2, wkt1, name + "_pb", ov::operation_intersection); - T area4 = intersect(wkt2, wkt1, name + "_pb", ov::operation_intersection); - BOOST_CHECK_CLOSE(area1, area2, 0.001); - BOOST_CHECK_CLOSE(area3, area4, 0.001); - BOOST_CHECK_CLOSE(area1, area3, 0.001); - BOOST_CHECK_CLOSE(area2, area4, 0.001); - - area1 = intersect(wkt1, wkt2, name + "_bp", ov::operation_union); - area2 = intersect(wkt1, wkt2, name + "_bp", ov::operation_union); - area3 = intersect(wkt2, wkt1, name + "_pb", ov::operation_union); - area4 = intersect(wkt2, wkt1, name + "_pb", ov::operation_union); - BOOST_CHECK_CLOSE(area1, area2, 0.001); - BOOST_CHECK_CLOSE(area3, area4, 0.001); - BOOST_CHECK_CLOSE(area1, area3, 0.001); - BOOST_CHECK_CLOSE(area2, area4, 0.001); -} - -int test_main(int, char* []) -{ - //bool const ig = true; - test_polygon(case_1[0], case_1[1], "c1"); - test_polygon(case_2[0], case_2[1], "c2"); - test_polygon(case_3[0], case_3[1], "c3"); - test_polygon(case_4[0], case_4[1], "c4"); - test_polygon(case_5[0], case_5[1], "c5"); - test_polygon(case_6[0], case_6[1], "c6"); - test_polygon(case_7[0], case_7[1], "c7"); - test_polygon(case_8[0], case_8[1], "c8"); - test_polygon(case_9[0], case_9[1], "c9" /*, ig */); - - - test_polygon(case_10[0], case_10[1], "c10"); - test_polygon(case_11[0], case_11[1], "c11"); - test_polygon(case_12[0], case_12[1], "c12"); - test_polygon(case_13[0], case_13[1], "c13"); - test_polygon(case_14[0], case_14[1], "c14"); - test_polygon(case_15[0], case_15[1], "c15"); - test_polygon(case_16[0], case_16[1], "c16"); - test_polygon(case_17[0], case_17[1], "c17"); - test_polygon(case_18[0], case_18[1], "c18"); - test_polygon(case_19[0], case_19[1], "c19"); - test_polygon(case_20[0], case_20[1], "c20"); - test_polygon(case_21[0], case_21[1], "c21"); - test_polygon(case_22[0], case_22[1], "c22" /*, ig */); - test_polygon(case_23[0], case_23[1], "c23"); - test_polygon(case_24[0], case_24[1], "c24"); - test_polygon(case_25[0], case_25[1], "c25" /*, ig */); - test_polygon(case_26[0], case_26[1], "c26" /*, ig */); - test_polygon(case_27[0], case_27[1], "c27"); - test_polygon(case_28[0], case_28[1], "c28"); - test_polygon(case_29[0], case_29[1], "c29"); - test_polygon(case_30[0], case_30[1], "c30"); - test_polygon(case_31[0], case_31[1], "c31" /*, ig */); - test_polygon(case_32[0], case_32[1], "c32" /*, ig */); - test_polygon(case_33[0], case_33[1], "c33" /*, ig */); - test_polygon(case_34[0], case_34[1], "c34"); - test_polygon(case_35[0], case_35[1], "c35"); - test_polygon(case_36[0], case_36[1], "c36" /*, ig */); - test_polygon(case_37[0], case_37[1], "c37" /*, ig */); - test_polygon(case_38[0], case_38[1], "c38" /*, ig */); - test_polygon(case_39[0], case_39[1], "c39"); - test_polygon(case_40[0], case_40[1], "c40" /*, ig */); - test_polygon(case_41[0], case_41[1], "c41"); - test_polygon(case_42[0], case_42[1], "c42"); - //test_polygon(case_43[0], case_43[1], "c43", inv); - test_polygon(case_44[0], case_44[1], "c44"); - test_polygon(case_45[0], case_45[1], "c45"); - //test_polygon(case_46[0], case_46[1], "c46", inv); - //test_polygon(case_47[0], case_47[1], "c47" /*, ig */); - //test_polygon(case_48[0], case_48[1], "c48"); - test_polygon(case_49[0], case_49[1], "c49"); - test_polygon(case_50[0], case_50[1], "c50"); - test_polygon(case_51[0], case_51[1], "c51"); - test_polygon(case_52[0], case_52[1], "c52" /*, ig */); - test_polygon(case_53[0], case_53[1], "c53"); - // Invalid ones / overlaying intersection points / self tangencies - //test_polygon(case_54[0], case_54[1], "c54"); - //test_polygon(case_55[0], case_55[1], "c55"); - //test_polygon(case_56[0], case_56[1], "c56"); - //test_polygon(case_57[0], case_57[1], "c57" /*, ig */); - //test_polygon(case_58[0], case_58[1], "c58"); - //test_polygon(case_59[0], case_59[1], "c59"); - - test_polygon(pie_16_4_12[0], pie_16_4_12[1], "pie_16_4_12"); - test_polygon(pie_23_21_12_500[0], pie_23_21_12_500[1], "pie_23_21_12_500"); - test_polygon(pie_23_23_3_2000[0], pie_23_23_3_2000[1], "pie_23_23_3_2000"); - test_polygon(pie_23_16_16[0], pie_23_16_16[1], "pie_23_16_16"); - test_polygon(pie_16_2_15_0[0], pie_16_2_15_0[1], "pie_16_2_15_0"); - test_polygon(pie_4_13_15[0], pie_4_13_15[1], "pie_4_13_15"); - test_polygon(pie_20_20_7_100[0], pie_20_20_7_100[1], "pie_20_20_7_100"); - - test_polygon(hv_1[0], hv_1[1], "hv1"); - test_polygon(hv_2[0], hv_2[1], "hv2"); - test_polygon(hv_3[0], hv_3[1], "hv3"); - test_polygon(hv_4[0], hv_4[1], "hv4"); - test_polygon(hv_5[0], hv_5[1], "hv5"); - test_polygon(hv_6[0], hv_6[1], "hv6"); - test_polygon(hv_7[0], hv_7[1], "hv7"); - test_polygon(dz_1[0], dz_1[1], "dz_1"); - test_polygon(dz_2[0], dz_2[1], "dz_2"); - test_polygon(dz_3[0], dz_3[1], "dz_3"); - - test_box_polygon("POLYGON((1 1,4 4))", case_1[0], "bp1"); - - { - static std::string example_box = "POLYGON((1.5 1.5, 4.5 2.5))"; - static std::string example_ring = - "POLYGON((2 1.3,2.4 1.7,2.8 1.8,3.4 1.2,3.7 1.6,3.4 2,4.1 3,5.3 2.6,5.4 1.2,4.9 0.8,2.9 0.7,2 1.3))"; - test_box_polygon(example_box, example_ring, "bp2"); - } - - return 0; -} diff --git a/test/algorithms/overlay/traverse_multi.cpp b/test/algorithms/overlay/traverse_multi.cpp deleted file mode 100644 index dd20f9567..000000000 --- a/test/algorithms/overlay/traverse_multi.cpp +++ /dev/null @@ -1,462 +0,0 @@ -// Boost.Geometry (aka GGL, Generic Geometry Library) -// Unit Test - -// Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands. - -// Use, modification and distribution is subject to the Boost Software License, -// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - - -//#define BOOST_GEOMETRY_DEBUG_ENRICH -//#define BOOST_GEOMETRY_DEBUG_RELATIVE_ORDER - -// Include the single-geometry version -#define BOOST_GEOMETRY_TEST_MULTI -#include - -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -#include - - -#include "multi_overlay_cases.hpp" - - - -template -void test_geometries() -{ - typedef test_traverse - < - MultiPolygon, MultiPolygon, - bg::overlay_intersection, Reverse, Reverse - > test_traverse_intersection; - typedef test_traverse - < - MultiPolygon, MultiPolygon, - bg::overlay_union, Reverse, Reverse - > test_traverse_union; - - // Intersections: - test_traverse_intersection::apply - ( - "simplex", 2, 6.42, - case_multi_simplex[0], case_multi_simplex[1] - ); - - test_traverse_intersection::apply - ( - "case_58_multi_b4", 1, 12.666666667, - case_58_multi[4], case_58_multi[2] - ); - -#ifdef BOOST_GEOMETRY_TEST_FAILURES - test_traverse_intersection::apply - ( - "case_58_multi_b5", 1, 1, - case_58_multi[5], case_58_multi[2] - ); -#endif - test_traverse_intersection::apply - ( - "case_58_multi_b6", 1, 13.25, - case_58_multi[6], case_58_multi[2] - ); - - test_traverse_intersection::apply - ( - "case_65_multi", 1, 1, - case_65_multi[0], case_65_multi[1] - ); - test_traverse_intersection::apply - ( - "case_66_multi", 1, 1, - case_66_multi[0], case_66_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_67_multi", 1, 1, - case_67_multi[0], case_67_multi[1] - ); - test_traverse_intersection::apply - ( - "case_69_multi", 1, 1, - case_69_multi[0], case_69_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_71_multi", 2, 2, - case_71_multi[0], case_71_multi[1] - ); - - // #72, note that it intersects into 2 shapes, - // the third one is done by assemble (see intersection #72) - test_traverse_intersection::apply - ( - "case_72_multi", 2, 1.35, - case_72_multi[0], case_72_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_73_multi", 2, 2, - case_73_multi[0], case_73_multi[1] - ); - test_traverse_intersection::apply - ( - "case_74_multi", 2, 3, - case_74_multi[0], case_74_multi[1] - ); - test_traverse_intersection::apply - ( - "case_75_multi", 1, 1, - case_75_multi[0], case_75_multi[1] - ); - test_traverse_intersection::apply - ( - "case_77_multi", 5, 9, - case_77_multi[0], case_77_multi[1] - ); - test_traverse_intersection::apply - ( - "case_78_multi", 2, 22, // Went from 3 to 2 by get_turns / partition - case_78_multi[0], case_78_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_80_multi", 1, 0.5, - case_80_multi[0], case_80_multi[1] - ); - test_traverse_intersection::apply - ( - "case_81_multi", 1, 0.25, - case_81_multi[0], case_81_multi[1] - ); - test_traverse_intersection::apply - ( - "case_83_multi", 3, 1.25, - case_83_multi[0], case_83_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_91_multi", 2, 1.0, - case_91_multi[0], case_91_multi[1] - ); - test_traverse_intersection::apply - ( - "case_92_multi", 3, 1.5, - case_92_multi[0], case_92_multi[1] - ); - test_traverse_intersection::apply - ( - "case_93_multi", 2, 1.25, - case_93_multi[0], case_93_multi[1] - ); - test_traverse_intersection::apply - ( - "case_96_multi", 1, 0.5, - case_96_multi[0], case_96_multi[1] - ); - test_traverse_intersection::apply - ( - "case_98_multi", 4, 3.0, - case_98_multi[0], case_98_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_99_multi", 3, 1.75, - case_99_multi[0], case_99_multi[1] - ); - test_traverse_intersection::apply - ( - "case_100_multi", 2, 1.5, - case_100_multi[0], case_100_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_108_multi", 7, 7.5, - case_108_multi[0], case_108_multi[1] - ); - - test_traverse_intersection::apply - ( - "case_recursive_boxes_2", 1, 91, - case_recursive_boxes_2[0], case_recursive_boxes_2[1] - ); - test_traverse_intersection::apply - ( - "case_107_multi", 2, 1.5, - case_107_multi[0], case_107_multi[1] - ); - test_traverse_intersection::apply - ( - "case_recursive_boxes_3", 19, 12.5, - case_recursive_boxes_3[0], case_recursive_boxes_3[1] - ); - - // Unions - - - test_traverse_union::apply - ( - "simplex", 1, 14.58, - case_multi_simplex[0], case_multi_simplex[1] - ); - - test_traverse_union::apply - ( - "case_61_multi", 1, 4, - case_61_multi[0], case_61_multi[1] - ); - test_traverse_union::apply - ( - "case_62_multi", 1, 1 /*UU 2, 2 */, - case_62_multi[0], case_62_multi[1] - ); - test_traverse_union::apply - ( - "case_63_multi", 1, 1 /*UU 2, 2 */, - case_63_multi[0], case_63_multi[1] - ); - test_traverse_union::apply - ( - "case_64_multi", 1, 3, - case_64_multi[0], case_64_multi[1] - ); - - test_traverse_union::apply - ( - "case_66_multi", 1, 4 /*UU 3, 7 */, - case_66_multi[0], case_66_multi[1] - ); - test_traverse_union::apply - ( - "case_68_multi", 1, 4 /*UU 2, 5 */, - case_68_multi[0], case_68_multi[1] - ); - // 71: single-polygon generates 2 shapes, multi-polygon - // generates 1 shape, both are self-tangent and OK - test_traverse_union::apply - ( - "case_71_multi", 1, 9, - case_71_multi[0], case_71_multi[1] - ); - - test_traverse_union::apply - ( - "case_72_multi", 1, 10.65, - case_72_multi[0], case_72_multi[1] - ); - - test_traverse_union::apply - ( - "case_73_multi", 1, 3, - case_73_multi[0], case_73_multi[1] - ); - test_traverse_union::apply - ( - "case_74_multi", 2, 17, - case_74_multi[0], case_74_multi[1] - ); - test_traverse_union::apply - ( - "case_75_multi", 1, 1 /*UU 5, 5 */, - case_75_multi[0], case_75_multi[1] - ); - test_traverse_union::apply - ( - "case_76_multi", 2, 5 /*UU 6, 6 */, - case_76_multi[0], case_76_multi[1] - ); - - test_traverse_union::apply - ( - "case_80_multi", 1, 9.25, - case_80_multi[0], case_80_multi[1] - ); - test_traverse_union::apply - ( - "case_81_multi", 1, 3.25, - case_81_multi[0], case_81_multi[1] - ); - test_traverse_union::apply - ( - "case_82_multi", 3, 4, - case_82_multi[0], case_82_multi[1] - ); - test_traverse_union::apply - ( - "case_84_multi", 1, 4, - case_84_multi[0], case_84_multi[1] - ); - test_traverse_union::apply - ( - "case_85_multi", 1, 3.5, - case_85_multi[0], case_85_multi[1] - ); - test_traverse_union::apply - ( - "case_86_multi", 1, 4, - case_86_multi[0], case_86_multi[1] - ); - test_traverse_union::apply - ( - "case_87_multi", 1, 6, - case_87_multi[0], case_87_multi[1] - ); - test_traverse_union::apply - ( - "case_88_multi", 2, 4, - case_88_multi[0], case_88_multi[1] - ); - test_traverse_union::apply - ( - "case_89_multi", 1, 6, - case_89_multi[0], case_89_multi[1] - ); - test_traverse_union::apply - ( - "case_90_multi", 1, 7.5, - case_90_multi[0], case_90_multi[1] - ); - test_traverse_union::apply - ( - "case_92_multi", 2, 6.25, - case_92_multi[0], case_92_multi[1] - ); - test_traverse_union::apply - ( - "case_94_multi", 1, 10.0, - case_94_multi[0], case_94_multi[1] - ); - test_traverse_union::apply - ( - "case_95_multi", 2, 6.5, - case_95_multi[0], case_95_multi[1] - ); - test_traverse_union::apply - ( - "case_96_multi", 1, 3.5, - case_96_multi[0], case_96_multi[1] - ); - test_traverse_union::apply - ( - "case_97_multi", 1, 3.75, - case_97_multi[0], case_97_multi[1] - ); - test_traverse_union::apply - ( - "case_101_multi", 1, 22.25, - case_101_multi[0], case_101_multi[1] - ); - test_traverse_union::apply - ( - "case_102_multi", 3, 24.25, - case_102_multi[0], case_102_multi[1] - ); - test_traverse_union::apply - ( - "case_103_multi", 1, 25, - case_103_multi[0], case_103_multi[1] - ); - test_traverse_union::apply - ( - "case_104_multi", 1, 25, - case_104_multi[0], case_104_multi[1] - ); - test_traverse_union::apply - ( - "case_105_multi", 1, 25, - case_105_multi[0], case_105_multi[1] - ); - test_traverse_union::apply - ( - "case_106_multi", 1, 25, - case_106_multi[0], case_106_multi[1] - ); - - - test_traverse_union::apply - ( - "case_recursive_boxes_1", 2, 97, - case_recursive_boxes_1[0], case_recursive_boxes_1[1] - ); - - test_traverse_union::apply - ( - "case_recursive_boxes_3", 7, 49.5, - case_recursive_boxes_3[0], case_recursive_boxes_3[1] - ); - - test_traverse_intersection::apply - ( - "pie_21_7_21_0_3", 2, 818824.56678, - pie_21_7_21_0_3[0], pie_21_7_21_0_3[1] - ); - - test_traverse_intersection::apply - ( - "pie_23_19_5_0_2", 2, 2948602.3911823, - pie_23_19_5_0_2[0], pie_23_19_5_0_2[1] - ); - test_traverse_intersection::apply - ( - "pie_7_14_5_0_7", 2, 490804.56678, - pie_7_14_5_0_7[0], pie_7_14_5_0_7[1] - ); - test_traverse_intersection::apply - ( - "pie_16_16_9_0_2", 2, 1146795, - pie_16_16_9_0_2[0], pie_16_16_9_0_2[1] - ); - test_traverse_intersection::apply - ( - "pie_7_2_1_0_15", 2, 490585.5, - pie_7_2_1_0_15[0], pie_7_2_1_0_15[1] - ); - -} - -template -void test_all() -{ - typedef bg::model::point point_type; - - typedef bg::model::multi_polygon - < - bg::model::polygon - > multi_polygon; - - typedef bg::model::multi_polygon - < - bg::model::polygon - > multi_polygon_ccw; - - test_geometries(); - test_geometries(); -} - - -int test_main(int, char* []) -{ - test_all(); - - return 0; -} diff --git a/test/algorithms/set_operations/difference/difference_multi.cpp b/test/algorithms/set_operations/difference/difference_multi.cpp index e98cc1789..9d8607bef 100644 --- a/test/algorithms/set_operations/difference/difference_multi.cpp +++ b/test/algorithms/set_operations/difference/difference_multi.cpp @@ -153,7 +153,7 @@ void test_areal() TEST_DIFFERENCE_WITH(0, 1, issue_630_a, 0, expectation_limits(0.0), 1, (expectation_limits(2.023, 2.2004)), 1); TEST_DIFFERENCE_WITH(0, 1, issue_630_b, 1, 0.0056089, 2, 1.498976, 3); TEST_DIFFERENCE_WITH(0, 1, issue_630_c, 0, 0, 1, 1.493367, 1); - TEST_DIFFERENCE_WITH(0, 1, issue_643, 1, expectation_limits(76.5385), optional(), optional_sliver(1.0e-6), 2); + TEST_DIFFERENCE_WITH(0, 1, issue_643, 1, expectation_limits(76.5385), optional(), optional_sliver(1.0e-6), count_set(1, 2)); } // Cases below go (or went) wrong in either a ( [0] - [1] ) or b ( [1] - [0] ) diff --git a/test/algorithms/set_operations/intersection/intersection_multi.cpp b/test/algorithms/set_operations/intersection/intersection_multi.cpp index 7a2298f37..333e83c31 100644 --- a/test/algorithms/set_operations/intersection/intersection_multi.cpp +++ b/test/algorithms/set_operations/intersection/intersection_multi.cpp @@ -166,7 +166,7 @@ void test_areal() case_recursive_boxes_3[0], case_recursive_boxes_3[1], 19, 84, 12.5); // Area from SQL Server - TEST_INTERSECTION_IGNORE(case_recursive_boxes_4, 13, 158, 67.0); + TEST_INTERSECTION(case_recursive_boxes_4, 13, 158, 67.0); // Fixed by replacing handle_tangencies in less_by_segment_ratio sort order // Should contain 6 output polygons @@ -320,6 +320,8 @@ void test_areal() TEST_INTERSECTION(case_recursive_boxes_86, 0, -1, 0.0); TEST_INTERSECTION(case_recursive_boxes_87, 0, -1, 0.0); TEST_INTERSECTION(case_recursive_boxes_88, 4, -1, 3.5); + TEST_INTERSECTION(case_recursive_boxes_89, 2, -1, 1.5); + TEST_INTERSECTION(case_recursive_boxes_90, 2, -1, 1.0); TEST_INTERSECTION(case_precision_m1, 1, -1, 14.0); TEST_INTERSECTION(case_precision_m2, 2, -1, 15.25); diff --git a/test/algorithms/set_operations/set_ops_areal_areal.cpp b/test/algorithms/set_operations/set_ops_areal_areal.cpp index 53d8f1f4a..4b0c5d3e1 100644 --- a/test/algorithms/set_operations/set_ops_areal_areal.cpp +++ b/test/algorithms/set_operations/set_ops_areal_areal.cpp @@ -241,17 +241,19 @@ void test_all(std::string const& name, std::string const& wkt1, std::string cons int test_main(int, char* []) { - TEST_CASE_WITH(case_141_multi, 0, 1, ut_settings().ignore_reverse()); + TEST_CASE(case_141_multi); TEST_CASE(case_142_multi); TEST_CASE(case_143_multi); TEST_CASE(case_144_multi); TEST_CASE(case_145_multi); - TEST_CASE_WITH(case_146_multi, 0, 1, ut_settings().ignore_validity_intersection()); + TEST_CASE(case_146_multi); TEST_CASE(case_147_multi); TEST_CASE(case_148_multi); TEST_CASE(case_149_multi); + TEST_CASE(case_150_multi); + TEST_CASE(case_151_multi); - TEST_CASE_WITH(issue_1221, 0, 1, ut_settings().ignore_validity_diff()); + TEST_CASE(issue_1221); TEST_CASE(issue_1222); TEST_CASE_WITH(issue_1226, 0, 1, ut_settings().ignore_validity_diff()); @@ -261,7 +263,7 @@ int test_main(int, char* []) TEST_CASE_WITH(issue_1288, 0, 1, ut_settings().ignore_validity_diff()); TEST_CASE_WITH(issue_1288, 0, 2, ut_settings()); TEST_CASE(issue_1293); - TEST_CASE_WITH(issue_1295, 0, 1, ut_settings().ignore_validity_diff()); + TEST_CASE(issue_1295); TEST_CASE(issue_1299); TEST_CASE(issue_1326); @@ -273,7 +275,7 @@ int test_main(int, char* []) TEST_CASE_WITH(issue_1345_a, 1, 0, ut_settings()); TEST_CASE_WITH(issue_1345_b, 1, 0, ut_settings()); - TEST_CASE_WITH(issue_1349, 0, 1, ut_settings().ignore_diff()); + TEST_CASE(issue_1349); TEST_CASE(issue_1349_inverse); #if defined(BOOST_GEOMETRY_TEST_FAILURES) @@ -290,9 +292,7 @@ int test_main(int, char* []) TEST_CASE(case_recursive_boxes_89); TEST_CASE(case_recursive_boxes_90); -#if defined(BOOST_GEOMETRY_TEST_FAILURES) TEST_CASE(case_recursive_boxes_91); -#endif TEST_CASE(case_recursive_boxes_92); TEST_CASE(case_recursive_boxes_93); TEST_CASE(case_recursive_boxes_94); diff --git a/test/algorithms/set_operations/union/union.cpp b/test/algorithms/set_operations/union/union.cpp index 44e8c6a61..762f85e18 100644 --- a/test/algorithms/set_operations/union/union.cpp +++ b/test/algorithms/set_operations/union/union.cpp @@ -471,12 +471,10 @@ void test_areal() test_one("buffer_rt_a_rev", buffer_rt_a[1], buffer_rt_a[0], 1, 0, -1, 19.28, settings); } -#if ! defined(BOOST_GEOMETRY_EXCLUDE) test_one("buffer_rt_f", buffer_rt_f[0], buffer_rt_f[1], 1, 0, -1, 4.60853); test_one("buffer_rt_f_rev", buffer_rt_f[1], buffer_rt_f[0], 1, 0, -1, 4.60853); -#endif test_one("buffer_rt_g", buffer_rt_g[0], buffer_rt_g[1], 1, 0, -1, 16.571); test_one("buffer_rt_g_rev", buffer_rt_g[1], buffer_rt_g[0], diff --git a/test/algorithms/set_operations/union/union_multi.cpp b/test/algorithms/set_operations/union/union_multi.cpp index 8f1269847..c80c7bfe3 100644 --- a/test/algorithms/set_operations/union/union_multi.cpp +++ b/test/algorithms/set_operations/union/union_multi.cpp @@ -253,12 +253,11 @@ void test_areal() case_recursive_boxes_14[0], case_recursive_boxes_14[1], 5, 0, -1, 4.5); - // 12, 13, 14 with invalid input. To make then valid it is necessary - // to break regions at self-intersection points (postponed) - - TEST_UNION_IGNORE(case_recursive_boxes_12_invalid, 5, 0, -1, 6.0); - TEST_UNION_IGNORE(case_recursive_boxes_13_invalid, 2, 0, -1, 10.25); - TEST_UNION_IGNORE(case_recursive_boxes_14_invalid, 4, 0, -1, 4.5); + // 12, 13, 14 with invalid input. Since using biconnected components, + // the resulting union is valid and the number of output rings is correct. + TEST_UNION(case_recursive_boxes_12_invalid, 6, 0, -1, 6.0); + TEST_UNION(case_recursive_boxes_13_invalid, 3, 0, -1, 10.25); + TEST_UNION(case_recursive_boxes_14_invalid, 5, 0, -1, 4.5); test_one("case_recursive_boxes_15", case_recursive_boxes_15[0], case_recursive_boxes_15[1], diff --git a/test/robustness/overlay/buffer/recursive_polygons_buffer.cpp b/test/robustness/overlay/buffer/recursive_polygons_buffer.cpp index 1c5235461..fa3e293b9 100644 --- a/test/robustness/overlay/buffer/recursive_polygons_buffer.cpp +++ b/test/robustness/overlay/buffer/recursive_polygons_buffer.cpp @@ -80,7 +80,7 @@ void create_svg(std::string const& filename } template -bool verify_buffer(Geometry const& geometry, Buffer const& buffer, std::string& reason, bool check_validity) +bool verify_buffer(Geometry const& geometry, Buffer const& buffer, std::string& reason) { if (buffer.empty()) { @@ -101,66 +101,20 @@ bool verify_buffer(Geometry const& geometry, Buffer const& buffer, std::string& bool all_within = true; bg::for_each_point(geometry, [&all_within, &buffer](auto const& point) { - if (! bg::within(point, buffer)) - { - all_within = false; + if (! bg::within(point, buffer)) + { + all_within = false; + } } - }); + ); if (! all_within) { - reason = "Any input points are outside the buffer"; + reason = "Not all points are within buffer"; return false; } - return check_validity ? bg::is_valid(buffer, reason) : true; -} - -template -bool verify(std::string const& caseid, Geometry const& geometry, MultiPolygon const& buffer, Settings const& settings) -{ - std::string reason; - bool const result = verify_buffer(geometry, buffer, reason, settings.check_validity); - - if (! result) - { - std::cout << caseid << " " << reason << std::endl; - } - - bool svg = settings.svg; - bool wkt = settings.wkt; - if (! result) - { - // The result is wrong, override settings to create a SVG and WKT - svg = true; - wkt = true; - } - - std::string filename; - - { - // Generate a unique name - std::ostringstream out; - out << "rec_pol_buffer_" << geometry_to_crc(geometry) - << "_" << string_from_type::type>::name() - << "."; - filename = out.str(); - } - - if (svg) - { - create_svg(filename + "svg", geometry, buffer); - } - - if (wkt) - { - std::ofstream stream(filename + "wkt"); - // Stream input WKT - stream << bg::wkt(geometry) << std::endl; - // If you need the output WKT, then stream bg::wkt(buffer) - } - - return result; + return bg::is_valid(buffer, reason); } template @@ -182,6 +136,7 @@ bool test_buffer(MultiPolygon& result, int& index, } else { + // Recursive call bg::correct(p); bg::correct(q); if (! test_buffer(p, index, generator, level - 1, settings) @@ -219,7 +174,7 @@ bool test_buffer(MultiPolygon& result, int& index, bg::strategy::buffer::side_straight side_strategy; bg::strategy::buffer::join_round join_round_strategy(settings.points_per_circle); bg::strategy::buffer::join_miter join_miter_strategy; - + try { switch(settings.join_code) @@ -245,7 +200,6 @@ bool test_buffer(MultiPolygon& result, int& index, MultiPolygon empty; std::cout << out.str() << std::endl; std::cout << "Exception " << e.what() << std::endl; - verify(out.str(), mp, empty, settings); return false; } @@ -254,7 +208,34 @@ bool test_buffer(MultiPolygon& result, int& index, std::cout << " [" << bg::area(mp) << " " << bg::area(buffered) << "]"; } - return verify(out.str(), mp, buffered, settings); + std::string verification_message; + if (verify_buffer(mp, buffered, verification_message)) + { + if (settings.svg) + { + create_svg(out.str() + ".svg", mp, buffered); + } + return true; + } + + std::string filename; + + { + // Generate a unique name + std::ostringstream out; + out << "rec_pol_buffer_" << geometry_to_crc(mp) + << "_" << string_from_type::type>::name() + << "."; + filename = out.str(); + } + + std::cout << "Failure" << " " << filename << " : " << verification_message << std::endl; + std::ofstream stream(filename + "wkt"); + // Stream input WKT + stream << bg::wkt(mp) << std::endl; + // If you need the output WKT, then stream bg::wkt(buffer) + + return false; }