pub struct Pt2D {
+Pt2D in geom::pt - Rust Expand description
This represents world-space in meters.
@@ -6,7 +6,7 @@
sourcepub fn x(self) -> f64
sourcepub fn y(self) -> f64
sourcepub fn project_away(self, dist: Distance, theta: Angle) -> Pt2D
If distance is negative, this projects a point in theta.opposite()
sourcepub(crate) fn raw_dist_to(self, to: Pt2D) -> f64
sourcepub fn dist_to(self, to: Pt2D) -> Distance
sourcepub fn fast_dist(self, other: Pt2D) -> NotNan<f64>
Pretty meaningless units, for comparing distances very roughly
sourcepub fn angle_to(self, to: Pt2D) -> Angle
sourcepub fn offset(self, dx: f64, dy: f64) -> Pt2D
sourcepub fn center(pts: &[Pt2D]) -> Pt2D
sourcepub fn approx_dedupe(pts: Vec<Pt2D>, threshold: Distance) -> Vec<Pt2D>
sourcepub fn to_hashable(self) -> HashablePt2D
sourcepub fn simplify_rdp(pts: Vec<Pt2D>, epsilon: f64) -> Vec<Pt2D>
Simplifies a list of points using Ramer-Douglas-Peuckr
-sourcepub fn to_geojson(self, gps: Option<&GPSBounds>) -> Geometry
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Pt2D
impl<'de> Deserialize<'de> for Pt2D
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Pt2D
impl<'de> Deserialize<'de> for Pt2D
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Copy for Pt2D
Auto Trait Implementations
impl RefUnwindSafe for Pt2D
impl Send for Pt2D
impl Sync for Pt2D
impl Unpin for Pt2D
impl UnwindSafe for Pt2D
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
const: unstable · sourcefn into(self) -> U
fn into(self) -> U
Calls U::from(self)
.
pub struct Pt2D {
+Pt2D in geom - Rust Expand description
This represents world-space in meters.
@@ -6,7 +6,7 @@
sourcepub fn x(self) -> f64
sourcepub fn y(self) -> f64
sourcepub fn project_away(self, dist: Distance, theta: Angle) -> Pt2D
If distance is negative, this projects a point in theta.opposite()
sourcepub(crate) fn raw_dist_to(self, to: Pt2D) -> f64
sourcepub fn dist_to(self, to: Pt2D) -> Distance
sourcepub fn fast_dist(self, other: Pt2D) -> NotNan<f64>
Pretty meaningless units, for comparing distances very roughly
sourcepub fn angle_to(self, to: Pt2D) -> Angle
sourcepub fn offset(self, dx: f64, dy: f64) -> Pt2D
sourcepub fn center(pts: &[Pt2D]) -> Pt2D
sourcepub fn approx_dedupe(pts: Vec<Pt2D>, threshold: Distance) -> Vec<Pt2D>
sourcepub fn to_hashable(self) -> HashablePt2D
sourcepub fn simplify_rdp(pts: Vec<Pt2D>, epsilon: f64) -> Vec<Pt2D>
Simplifies a list of points using Ramer-Douglas-Peuckr
-sourcepub fn to_geojson(self, gps: Option<&GPSBounds>) -> Geometry
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Pt2D
impl<'de> Deserialize<'de> for Pt2D
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Pt2D
impl<'de> Deserialize<'de> for Pt2D
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Copy for Pt2D
Auto Trait Implementations
impl RefUnwindSafe for Pt2D
impl Send for Pt2D
impl Sync for Pt2D
impl Unpin for Pt2D
impl UnwindSafe for Pt2D
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
const: unstable · sourcefn into(self) -> U
fn into(self) -> U
Calls U::from(self)
.
Constant map_gui::tools::title_screen::built_info::BUILT_TIME_UTC
source · [−]pub const BUILT_TIME_UTC: &'static str = r"Thu, 01 Dec 2022 13:54:55 +0000";
Expand description
The build time in RFC2822, UTC.
+Constant map_gui::tools::title_screen::built_info::BUILT_TIME_UTC
source · [−]pub const BUILT_TIME_UTC: &'static str = r"Tue, 06 Dec 2022 11:26:33 +0000";
Expand description
The build time in RFC2822, UTC.
RawMap
from OSM and other …","If a building doesn’t have anything from …","How many spots are available in public parking garages?","","","","","","","","","","","","Create a RawMap from OSM and other input data.","","","","If provided, read polygons from this GeoJSON file and add …","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Configure public transit using this URL to a static GTFS …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[31,30,32,31,32,0,0,0,0,0,8,31,32,30,8,31,32,30,0,0,0,8,0,8,8,0,8,31,32,30,0,8,8,31,32,30,8,31,32,30,8,8,0,8,8,8,31,32,30,8,31,32,30,8,31,32,30,33,34,35,0,0,0,0,0,0,0,0,0,17,18,19,20,0,0,0,0,0,0,0,0,0,17,18,19,20,22,23,24,25,26,17,18,19,20,22,23,24,25,26,17,18,19,20,17,18,19,20,17,18,19,20,17,18,19,20,22,23,24,25,26,0,17,18,19,20,17,18,19,20,17,18,19,20,17,18,19,20,22,23,24,25,26,17,18,19,20,17,18,19,20,0,17,18,19,20,22,23,24,25,26,17,18,19,20,22,23,24,25,26,17,18,19,20,22,22,23,22,22,22,23,24,24,24,24,25,26,25,25,25,26,17,18,19,20,23,26,17,18,19,20,22,23,24,25,26,17,18,19,20,22,23,24,25,26,17,18,19,20,22,23,24,25,26,0,0,0,0,0,0],"f":[0,0,0,0,0,0,0,0,0,[[1,2],3],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[1],[[1,4]],[[5,6,[7,[5]],8,4],1],[[],8],0,0,0,0,[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[],9],[[],9],[[],9],[[],9],0,0,0,0,0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],11],[[],11],[[],11],[[],11],0,0,0,[1,3],[[2,1],[[3,[12]]]],[[2,1,12],3],[[1,2,[7,[5]],8,4]],[[1,12]],[13,[[7,[14]]]],[13,[[12,[15]]]],[13,9],[[1,[12,[16]]],9],0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[17,17],[18,18],[19,19],[20,20],[[]],[[]],[[]],[[]],[[17,17],21],[[18,18],21],[[19,19],21],[[20,20],21],[[],[[10,[17]]]],[[],[[10,[18]]]],[[],[[10,[19]]]],[[],[[10,[20]]]],[[],[[10,[22]]]],[[],[[10,[23]]]],[[],[[10,[24]]]],[[],[[10,[25]]]],[[],[[10,[26]]]],[1],[[17,17],9],[[18,18],9],[[19,19],9],[[20,20],9],[[],9],[[],9],[[],9],[[],9],[[17,27],28],[[18,27],28],[[19,27],28],[[20,27],28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],29],[[],29],[[],29],[[],29],[17],[18],[19],[20],[1,3],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[17,17],[[7,[21]]]],[[18,18],[[7,[21]]]],[[19,19],[[7,[21]]]],[[20,20],[[7,[21]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],0,0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],0,[[1,8,4]],[[1,30]],[13,9],[[1,5,4]],[[1,5,4]]],"p":[[3,"RawMap"],[15,"str"],[6,"Result"],[3,"Timer"],[3,"String"],[3,"MapName"],[4,"Option"],[3,"Options"],[15,"bool"],[4,"Result"],[3,"TypeId"],[3,"Vec"],[3,"Tags"],[4,"AreaType"],[3,"Amenity"],[15,"usize"],[3,"ShapeID"],[3,"TripID"],[3,"StopID"],[3,"RouteID"],[4,"Ordering"],[3,"Route"],[3,"Trip"],[3,"Shape"],[3,"Stop"],[3,"StopTime"],[3,"Formatter"],[6,"Result"],[15,"u64"],[4,"PrivateOffstreetParking"],[4,"OnstreetParking"],[4,"PublicOffstreetParking"],[13,"Blockface"],[13,"FixedPerBldg"],[13,"Gis"]]},\
"fifteen_min":{"doc":"","t":[6,0,0,0,0,5,5,0,3,13,4,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,3,11,11,11,11,11,11,11,11,5,5,11,12,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,5,11,11,11,11,11,11,11,11,13,3,3,4,3,13,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,3,6,3,3,12,12,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,5,11,11,12,5,5,12,12,12,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,5,5,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11],"n":["App","bus","find_amenities","find_home","isochrone","main","run","viewer","BusExperiment","BusRoute","ID","Waypoint","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","draw","eq","equivalent","event","fmt","from","from","get_hash","get_hash","hash","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","panel","recalculate_everything","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","waypoints","world","0","0","FindAmenity","Results","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","create_border_isochrone","create_multi_isochrone","draw","draw","from","from","hovering_on_bldg","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","isochrone","new_state","new_state","on_click","other_event","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","FindHome","Results","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","draw_houses","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","new_state","on_click","on_click","options","other_event","score_houses","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Biking","BorderIsochrone","Isochrone","MovementOptions","Options","Walking","amenities_reachable","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","colors","colors","default_thresholds","draw","draw","from","from","from","from","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","movement","new","new","onstreet_parking_spots","options","options","path_to","population","start","start","thresholds","thresholds","thresholds","time_to_reach_building","time_to_reach_building","times_from","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","0","Entry","ExploreAmenities","HoverKey","HoverOnBuilding","Viewer","address","amenity_idx","amenity_type","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","bldg","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_panel","draw","draw","draw","draw_star","draw_unwalkable_roads","draw_unwalkable_roads","drawn_route","duration_away","event","event","from","from","from","from","highlight_start","hovering_on_bldg","hovering_on_category","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","isochrone","key","name","new_state","new_state","options_from_controls","options_to_controls","panel","panel","random_start","table","tooltip","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","value","vzip","vzip","vzip","vzip"],"q":["fifteen_min","","","","","","","","fifteen_min::bus","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","fifteen_min::bus::ID","","fifteen_min::find_amenities","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","fifteen_min::find_home","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","fifteen_min::isochrone","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","fifteen_min::isochrone::MovementOptions","fifteen_min::viewer","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","","","","","","","This is a tool to experiment with the concept of 15-minute …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","Calculate isochrones around each amenity on a map and …","","","","","","","","","","Draw an isochrone from every intersection border","For every one of the requested amenity on the map, draw an …","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","Ask what types of amenities are necessary to be within a …","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","For every house in the map, return the percent of …","","","","","","","","","","Represents the area reachable from all intersections on …","Represents the area reachable from a single building.","The constraints on how we’re moving.","","","Per category of amenity, what buildings have that?","","","","","","","","","","","","","","","","","","","","","Colors used to draw the isochrone","Colors used to draw the isochrone","","Colored polygon contours, uploaded to the GPU and ready …","Colored polygon contours, uploaded to the GPU and ready …","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","How many sreet parking spots are on the same road as any …","The options used to generate this isochrone","The options used to generate this isochrone","","How many people live in the returned area, according to …","The center of the isochrone (can be multiple points)","The center of the isochrone (can be multiple points)","Thresholds used to draw the isochrone","Thresholds used to draw the isochrone","","How far away is each building from the start?","How far away is each building from the start?","Calculate the quickest time to reach buildings across the …","","","","","","","","","","","","","","","","","","","","","","(building, scale factor)","","This is the UI state for exploring the isochrone/walkshed …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","Start with a random building","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,3,0,3,4,3,4,3,4,3,4,3,3,3,4,3,3,4,3,4,3,3,3,3,4,3,4,3,3,4,3,4,3,4,4,4,3,4,3,4,3,4,3,4,3,4,4,48,49,0,0,50,24,50,24,50,24,50,24,0,0,24,24,50,24,24,50,24,50,24,50,50,24,50,24,24,50,24,24,24,50,24,50,24,50,24,50,24,0,0,32,27,32,27,32,27,32,27,27,27,32,27,32,27,32,27,32,32,27,32,27,32,27,32,27,32,27,0,32,27,32,27,32,27,32,27,34,0,0,0,0,34,23,23,21,20,34,23,21,20,34,23,21,20,34,23,21,20,34,20,34,20,34,23,21,20,23,21,23,21,20,34,23,21,20,34,23,21,20,34,20,34,23,21,20,34,23,21,20,34,20,23,21,23,23,21,23,23,23,21,23,21,20,23,21,34,20,34,23,21,20,34,23,21,20,34,23,21,20,34,23,21,20,34,51,0,0,0,0,0,52,52,52,42,47,43,52,42,47,43,52,52,42,47,43,52,42,47,43,52,0,42,43,43,0,0,42,47,52,42,43,42,47,43,52,42,42,42,42,47,43,52,42,47,43,52,52,42,47,43,52,42,47,43,52,42,47,52,42,43,0,0,42,43,42,43,47,42,47,43,52,42,47,43,52,42,47,43,52,47,42,47,43,52],"f":[0,0,0,0,0,[[]],[1],0,0,0,0,0,[[],2],[[],2],[[],2],[[],2],[[]],[[]],[[]],[[]],[3,3],[[]],[[4,5,6]],[[3,3],7],[[],7],[[4,8,6],[[9,[6]]]],[[3,10],11],[[]],[[]],[[],12],[[],12],[3],[[]],[[]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[15,[[15,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[[],7],[[],7],[[8,6],[[14,[17]]]],0,[[4,8,6]],[[]],[[],18],[[],18],[[],18],[[],18],[[],19],[[],19],[[]],[[]],0,0,0,0,0,0,[[],2],[[],2],[[],2],[[],2],[[]],[[]],[[]],[[]],[[8,6,20],21],[[8,6,22,20],23],[[24,5,6]],0,[[]],[[]],0,[[]],[[]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[15,[[15,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[[],7],[[],7],0,[[8,20],[[14,[17]]]],[[8,6,23,21,22],[[14,[17]]]],[[24,8,6,25,26],[[9,[6]]]],[[24,8,6],[[9,[6]]]],[[],18],[[],18],[[],18],[[],18],[[],19],[[],19],[[]],[[]],0,0,[[],2],[[],2],[[],2],[[],2],[[]],[[]],[[]],[[]],[[27,5,6]],0,[[]],[[]],[[]],[[]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[15,[[15,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[[],7],[[],7],[[8,20],[[14,[17]]]],[[8,6,[30,[28,29]],[31,[22]]],[[14,[17]]]],[[32,8,6,25,26],[[9,[6]]]],[[27,8,6,25,26],[[9,[6]]]],0,[[27,8,6],[[9,[6]]]],[[6,[31,[22]],20,33],[[30,[28,29]]]],[[],18],[[],18],[[],18],[[],18],[[],19],[[],19],[[]],[[]],0,0,0,0,0,0,0,[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[20,20],[34,34],[[]],[[]],0,0,[[],31],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[15,[[15,[2]]]],[15,[[15,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[[],7],[[],7],[[],7],[[],7],0,[[8,6,[31,[28]],20],23],[[8,6,[31,[35]],20],21],0,0,0,[[23,36,28],[[38,[37]]]],0,0,0,0,0,0,0,0,[[34,36,[31,[39]]],[[30,[28,40]]]],[[]],[[]],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],19],[[],19],[[],19],[[],19],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[8,6,41,23],26],[[42,5,6]],[[43,5,6]],0,[[8,41],44],[[8,6,20],45],0,0,0,[[42,8,6],[[9,[6]]]],[[43,8,6],[[9,[6]]]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[[[14,[13]]],[[14,[2,13]]]],[15,[[15,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[16,[[16,[2]]]],[[],7],[[],7],[[],7],[[],7],0,[[8,6],38],0,[[8,6,28],[[14,[17]]]],[[8,6,23,22],[[14,[17]]]],[26,34],[[8,20],46],0,0,[[8,6],[[14,[17]]]],0,0,[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],19],[[],19],[[],19],[[],19],[[8,6,23],47],[[]],[[]],[[]],[[]]],"p":[[3,"Settings"],[8,"Any"],[4,"ID"],[3,"BusExperiment"],[3,"GfxCtx"],[3,"SimpleApp"],[15,"bool"],[3,"EventCtx"],[4,"Transition"],[3,"Formatter"],[6,"Result"],[15,"u64"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[8,"State"],[4,"Result"],[3,"TypeId"],[3,"Options"],[3,"BorderIsochrone"],[4,"AmenityType"],[3,"Isochrone"],[3,"Results"],[15,"str"],[3,"Panel"],[3,"Results"],[3,"BuildingID"],[3,"Percent"],[3,"HashMap"],[3,"Vec"],[3,"FindHome"],[3,"Timer"],[4,"MovementOptions"],[3,"IntersectionID"],[3,"Map"],[3,"Path"],[4,"Option"],[4,"Spot"],[3,"Duration"],[3,"Building"],[3,"Viewer"],[3,"ExploreAmenities"],[3,"GeomBatch"],[3,"Drawable"],[3,"Widget"],[3,"HoverOnBuilding"],[13,"Waypoint"],[13,"BusRoute"],[3,"FindAmenity"],[13,"Walking"],[3,"Entry"]]},\
"game":{"doc":"","t":[3,13,13,13,13,13,4,13,13,3,13,13,13,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,0,12,11,12,0,12,5,0,12,0,12,12,12,12,0,11,5,12,12,11,11,11,11,0,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,12,5,12,12,12,12,0,12,5,0,12,12,5,12,12,12,12,11,11,11,11,11,11,12,12,11,11,11,0,12,11,11,11,12,12,12,12,3,3,3,3,3,3,3,3,8,6,5,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,11,11,11,11,12,12,12,12,12,12,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,12,10,11,12,11,12,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,11,12,11,12,11,12,12,12,11,10,11,12,12,12,12,12,12,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,3,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,0,12,12,12,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,0,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,13,3,3,13,4,13,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,5,12,12,12,12,11,11,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,5,3,2,2,2,11,11,11,11,12,5,5,5,11,11,11,11,11,11,12,11,11,11,11,11,5,11,5,11,11,0,0,0,5,5,11,11,11,11,0,2,13,13,17,4,13,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,13,4,13,13,3,13,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,12,12,17,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,12,11,11,3,17,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,5,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,5,12,3,3,2,3,3,11,12,11,11,11,11,11,11,11,11,0,0,11,11,11,11,11,11,11,11,5,12,5,11,11,12,5,5,5,11,11,11,11,5,5,5,0,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,0,12,12,0,0,12,5,11,0,12,5,12,0,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,0,11,11,11,11,3,12,11,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,12,11,11,11,11,11,11,12,3,17,17,3,3,17,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,13,3,13,4,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,12,11,11,12,11,11,11,11,11,11,12,12,11,11,11,11,4,13,13,3,13,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,12,12,12,3,3,3,11,11,11,11,11,11,12,11,11,11,11,11,11,5,5,12,12,11,11,11,12,12,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,5,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,5,11,12,12,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,0,0,0,11,11,11,11,11,11,0,11,11,0,0,0,11,11,11,11,3,3,5,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,12,5,12,12,12,11,11,11,11,11,11,11,11,12,3,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,11,11,11,11,3,17,17,3,11,11,11,11,12,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,5,5,5,11,12,12,12,5,12,12,12,11,11,11,11,11,11,11,11,3,11,11,11,11,11,12,11,11,11,11,11,11,12,11,12,11,11,11,11,3,11,11,11,11,11,12,11,11,11,11,11,11,11,12,12,11,11,11,11,12,3,3,3,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,12,12,11,12,11,11,11,12,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,3,3,2,2,3,2,2,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,2,2,5,0,12,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,5,12,5,12,12,0,11,11,11,11,12,12,12,12,12,12,11,11,12,0,0,5,0,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,0,11,11,11,11,0,12,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,3,11,11,12,12,11,11,12,12,11,12,11,11,11,11,11,11,11,12,11,12,11,12,11,11,11,11,3,11,11,11,11,5,5,11,11,11,5,12,11,5,12,11,12,11,11,11,11,11,12,5,12,5,5,11,11,11,12,12,12,11,11,11,12,12,5,12,11,11,11,11,5,3,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,3,11,11,11,11,11,11,12,12,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,5,11,11,12,11,12,11,11,12,5,0,11,11,5,12,11,11,11,0,11,11,11,11,11,11,11,11,11,5,5,12,12,12,12,11,0,12,0,0,11,12,12,12,5,11,11,12,12,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,5,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,5,11,11,11,11,11,11,11,11,5,11,11,11,11,12,11,12,5,5,11,11,11,11,11,11,11,11,11,11,12,12,11,12,5,5,12,12,12,12,12,11,11,11,11,11,11,11,11,3,3,3,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,5,12,12,11,12,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,5,11,12,12,11,11,11,11,5,5,5,3,12,11,11,11,11,11,12,5,11,11,11,11,11,11,5,11,12,12,12,11,11,11,11,13,13,13,8,13,3,3,3,13,13,13,13,13,13,13,13,13,13,13,2,13,13,13,13,13,3,4,13,13,13,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,12,12,11,11,11,11,11,11,11,5,0,11,11,12,12,5,11,12,12,11,11,11,10,11,11,11,11,11,11,11,11,10,5,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,12,11,11,11,11,11,0,5,5,11,11,11,12,0,0,5,12,12,12,12,12,5,12,12,12,11,11,11,11,11,11,12,12,0,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,11,11,11,11,12,5,11,11,5,5,5,11,5,11,5,11,11,11,11,11,5,5,5,11,5,12,11,11,11,11,11,11,13,8,4,17,3,13,13,11,11,11,11,11,11,11,11,10,11,11,10,0,10,11,0,11,11,5,11,11,11,11,11,11,11,11,0,10,0,12,0,11,0,0,0,11,0,0,11,11,11,11,11,11,11,11,11,12,12,17,3,17,3,11,11,11,11,11,11,11,11,12,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,13,13,13,3,3,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,3,4,13,3,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,3,3,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,5,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,5,11,11,12,11,11,11,11,11,11,11,11,11,5,12,11,11,11,11,12,12,11,12,12,12,11,11,11,11,11,11,11,12,11,11,6,3,3,12,12,11,11,11,11,12,12,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,12,12,11,12,11,11,12,11,11,11,11,11,11,11,11,3,3,3,3,3,3,3,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,12,12,12,12,12,11,11,11,11,11,11,12,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,3,11,11,11,11,5,11,11,11,11,11,11,11,0,11,11,11,11,3,11,11,11,11,12,11,11,11,11,11,11,5,11,11,12,11,11,11,11,3,3,13,2,13,13,4,13,13,13,2,3,3,3,2,2,2,2,2,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,0,11,11,11,11,11,11,11,12,11,11,11,11,11,11,0,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,12,11,11,11,11,11,11,12,5,0,12,0,12,5,11,11,12,11,12,11,2,0,12,11,12,0,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,13,2,13,4,13,13,13,2,13,13,13,13,11,11,11,11,11,11,0,11,11,11,0,11,11,11,11,11,11,0,0,0,11,0,0,11,11,0,11,0,0,0,11,11,11,11,3,6,4,4,13,3,3,13,13,3,13,13,3,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,11,11,11,12,12,12,11,12,11,11,11,12,11,11,11,11,11,11,11,12,5,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,11,12,5,12,11,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,5,5,5,3,3,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,12,12,11,12,5,5,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,12,12,12,5,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,3,3,11,11,11,11,11,11,11,11,11,11,5,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,3,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,11,11,11,11,3,3,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,12,3,3,11,11,11,11,11,11,11,11,12,5,11,11,5,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,5,5,5,11,11,11,11,11,11,11,11,3,3,3,8,12,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,12,11,11,12,11,12,11,11,11,11,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,11,12,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,5,5,12,12,12,12,12,12,11,12,12,12,12,5,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,13,3,13,13,13,4,8,4,13,13,13,13,13,2,13,2,2,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,11,11,11,0,11,11,11,11,10,11,11,11,10,11,0,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,0,10,12,11,2,11,11,11,11,11,11,11,0,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,3,3,11,11,11,11,12,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,5,12,11,11,5,11,5,12,11,11,11,11,12,11,12,12,11,12,12,12,11,11,11,11,3,17,11,11,11,11,11,5,12,11,11,5,11,11,11,11,11,12,11,11,11,12,12,11,11,11,11,12,3,3,5,0,11,11,11,11,11,11,11,11,11,11,11,5,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,5,0,12,11,11,11,11,11,11,11,11,12,3,3,13,4,13,3,13,3,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,3,11,11,11,11,11,11,5,5,5,11,11,11,11,11,12,12,11,11,11,11,3,11,11,11,11,12,11,11,11,12,11,11,11,11,11,12,12,11,11,11,11,3,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,12,12,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,17,13,13,17,13,13,13,13,3,13,13,3,4,13,3,3,3,13,5,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,11,12,11,11,11,11,11,11,5,12,12,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,12,11,5,11,12,11,11,11,12,11,12,11,11,11,11,11,12,12,12,11,11,12,11,11,11,11,11,11,12,11,12,12,11,12,11,11,12,11,5,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,5,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,11,11,12,12,11,11,11,11,11,11,11,11,13,13,13,13,4,3,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,11,11,12,12,11,11,11,11,11,11,11,11,11,11,3,3,5,11,11,11,11,11,11,11,11,5,5,5,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,12,13,13,2,2,2,13,2,4,8,13,11,11,0,11,11,11,0,11,11,11,11,11,11,11,0,11,0,0,10,0,11,11,11,11,3,3,3,3,3,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,3,11,11,12,11,11,11,12,11,12,11,11,11,11,11,11,12,11,5,11,5,12,12,11,12,12,11,12,11,11,11,11,11,5,12,3,3,3,3,3,3,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,5,12,12,11,12,5,11,12,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,12,5,12,11,5,12,11,12,11,11,11,11,11,13,4,13,3,3,13,12,11,11,11,11,11,11,11,12,12,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,12,5,12,12,12,11,12,12,12,12,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11],"n":["Args","Challenges","CompareCounts","Devtools","Gameplay","LoadKML","Mode","Proposals","Sandbox","Setup","SomethingElse","TutorialIntro","Ungap","actdev","actdev_scenario","app","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","cam","center_camera","challenge","challenges","challenges","clap","color_scheme","common","compare_counts","continue_app_setup","debug","dev","devtools","devtools","diff_map","diff_map","dump_raw_events","edit","eq","finish_app_setup","flags","flags","from","from","from","from_clap","info","initialize_tutorial","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","layer","load_kml","main","minimal_controls","mode","opts","prebake","pregame","proposals","run","sandbox","sandbox","scale_factor","setup_app","start_time","start_time","start_with_edits","start_with_edits","try_from","try_from","try_from","try_into","try_into","try_into","tutorial","tutorial_intro","type_id","type_id","type_id","ungap","ungap","vzip","vzip","vzip","0","0","0","1","App","FindDelayedIntersections","Flags","PerMap","PerObjectActions","SessionState","ShowEverything","ShowLayers","ShowObject","Transition","add_study_area","agents","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","before_event","before_quit","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer_lane_type","calculate_current_selection","canonical_point","clap","clear_everything","clear_sim","click_action","click_on_intersection","clone","clone_into","cs","cs","current_flags","current_selection","currently_delayed","dash_tab","dirty_from_edits","draw","draw_default","draw_map","draw_map","draw_with_opts","dump_before_abort","elevation_contours","empty","free_memory","from","from","from","from","from","from","from","from","from_clap","get_renderables_back_to_front","halt_limit","has_modified_trips","has_prebaked","high_scores","info_panel_tab","init_camera_for_loaded_map","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_secondary","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","last_gmns_timing_csv","last_warped_from","layer","layers","layers","layers","left_click","live_map_edits","make_warper","map","map","map_loaded","map_switched","mode_shift","mouseover_debug_mode","mouseover_unzoomed_buildings","mouseover_unzoomed_everything","mouseover_unzoomed_intersections","mouseover_unzoomed_roads_and_intersections","mut_cs","mut_draw_map","mut_opts","new","new","new","opts","opts","per_obj","prebaked","prebaked","primary","recalculate_current_selection","report_limit","reset","routing_preferences","run","scenario","secondary","session","set_prebaked","show","show","show_areas","show_buildings","show_intersections","show_labels","show_lanes","show_parking_lots","sim","sim","sim_cb","sim_flags","store_unedited_map_in_secondary","study_area","suspended_sim","swap_map","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","tutorial","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unedited_map","ungap_current_trip_name","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","Challenge","ChallengesPicker","HighScore","alias","all","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","challenge","cutscene","cutscene","description","edits_name","find","from","from","from","gameplay","goal","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","links","make","new_state","on_click","prebake","record","score","title","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","BossSpeaking","CutsceneBuilder","CutscenePlayer","Extra","Layout","PlayerSpeaking","Scene","ShowMessage","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","boss","build","draw","draw","event","event","extra","fg_color","from","from","from","from","from","idx","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","layout","make_panel","make_task","msg","name","name","new","new_state","panel","panel","player","scenes","scenes","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","0","1","prebake_all","CommonState","RoadSelector","RouteSketcher","Warping","as_any","as_any_mut","borrow","borrow_mut","cached_actions","cmp_duration_shorter","color_for_agent_type","color_for_trip_phase","debug_actions","draw","draw_custom_osd","draw_osd","event","from","info_panel","info_panel_open","into","into_any","into_any_rc","is_within","jump_to_time_upon_startup","launch_info_panel","list_names","new","osd_for","route_sketcher","select","share","sync_abtest","tool_panel","try_from","try_into","type_id","vzip","warp","warp_to_id","Dragging","Hovering","INTERSECTON_RADIUS","Mode","Neutral","Route","RouteSketcher","add_waypoint","all_roads","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","draw","eq","eq","event","from","from","from","full_path","get_widget_to_describe","idx","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_route_started","is_route_valid","is_within","is_within","is_within","mode","mouseover_i","move_waypoint","new","new","on_click","preview","route","snap_to_intersections","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_mode","update_preview","vzip","vzip","vzip","waypoints","0","at","idx","Erase","Mode","Paint","Pan","RoadSelector","Route","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","dragging","draw","event","from","from","intersections","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","make_controls","mode","new","preview","roads","roads_changed","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","i1","preview_path","PROPOSAL_HOST_URL","ShareProposal","UploadedProposals","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","deserialize","draw","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","load","md5sums","new_state","on_click","proposal_uploaded","serialize","try_from","try_from","try_into","try_into","type_id","type_id","url","url_flag","vzip","vzip","DebugWarp","WARP_TO_CAM_ZOOM","Warping","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","draw","event","event","from","from","id","inner_warp_to_id","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","new_state","panel","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","warp_to_id","warper","Actions","DebugMode","PathCostDebugger","ScreenshotTest","SearchResults","actions","all_routes","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","blocked_by","blockfinder","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","calc_all_routes","common","diff_tags","draw","draw","draw","draw_arterial_crosswalks","draw_bad_intersections","draw_banned_turns","draw_baselayer","event","event","execute","find_bad_signals","find_degenerate_roads","find_large_intersections","floodfill","from","from","from","from","gameplay_mode","hidden","highlighted_agents","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_paused","is_within","is_within","is_within","is_within","layers","layers","new_state","new_state","num_matches","objects","objects","panel","path_counter","polygons","query","reimport_map","reset_info","routes","screenshot_done","search_osm","search_results","select_roads","show","todo_maps","tool_panel","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","uber_turns","vzip","vzip","vzip","vzip","Viewer","agent_positions","arrow_for","arrows","as_any","as_any_mut","borrow","borrow_mut","draw","event","find_worst_problems","from","graph","into","into_any","into_any_rc","is_within","new_state","panel","root_cause","simple_root_cause","trace_root_cause","try_from","try_into","type_id","vzip","0","Blockfinder","COLORS","MODIFIED","Obj","OneBlock","TO_MERGE","add_block","add_blocks_with_coloring","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","block","blocks","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","cmp","draw","draw","draw","eq","equivalent","event","fmt","from","from","from","get_hash","get_hash","hash","id_counter","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","make_panel","new_id","new_state","new_state","on_click","other_event","panel","partial_cmp","partitions","to_merge","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","world","Floodfill","Floodfiller","Scc","Source","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","calculate","clone","clone_into","draw","draw","event","floodfill","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","panel","scc","source","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","ObjectDebugger","as_any","as_any_mut","borrow","borrow_mut","debug_json","draw","dump_debug","from","into","into_any","into_any_arc","into_any_rc","is_within","try_from","try_into","type_id","vzip","PathCounter","as_any","as_any_mut","borrow","borrow_mut","cnt","demand_across_intersection","draw","draw","event","from","into","into_any","into_any_rc","is_within","panel","tooltip","try_from","try_into","type_id","vzip","Item","Point","Polygon","PolygonDebugger","Triangle","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","center","draw","event","from","from","idx","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","items","new_state","noun","panel","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","0","0","AllRoutesExplorer","PathCostDebugger","RouteExplorer","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","baseline_counts","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","calculate_demand","controls_to_params","costs","current_counts","draw","draw","draw","draw","draw_path","event","event","event","from","from","from","goal","into","into","into","into_any","into_any","into_any","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","maybe_new","new_state","new_state","panel","panel","panel","params_to_controls","recalc_paths","requests","start","tooltip","tooltip","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","BulkSelect","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","make_select_panel","new_state","panel","selector","try_from","try_into","type_id","vzip","UberTurnPicker","UberTurnViewer","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","draw","draw","draw_baselayer","from","from","ic","idx","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","legal_turns","members","new_state","new_state","on_click","on_click","on_mouseover","other_event","other_event","panel_changed","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","DevToolsMode","as_any","as_any_mut","borrow","borrow_mut","collisions","compare_counts","destinations","from","into","into_any","into_any_arc","into_any_rc","is_within","kml","new_state","on_click","polygon","scenario","story","try_from","try_into","type_id","vzip","CollisionsViewer","Filters","aggregated","apply","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","data","draw","eq","event","from","from","from_controls","individual","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_controls","new","new_state","panel","pct","severity","show_individual","time_range","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","world","GenericCompareCounts","as_any","as_any_mut","borrow","borrow_mut","compare","draw","from","into","into_any","into_any_rc","is_within","new_state","on_click","other_event","try_from","try_into","type_id","vzip","PopularDestinations","as_any","as_any_mut","borrow","borrow_mut","draw","draw","event","from","into","into_any","into_any_rc","is_within","make","new_state","panel","per_bldg","try_from","try_into","type_id","vzip","Object","RADIUS","THICKNESS","ViewKML","as_any","as_any","as_any_mut","as_any_mut","attribs","borrow","borrow","borrow_mut","borrow_mut","color","draw","draw","draw_query","event","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","load_objects","make_object","make_query","new_state","objects","osm_bldg","panel","pick_file","polygon","quadtree","selected","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","PolygonEditor","as_any","as_any_mut","borrow","borrow_mut","draw","edit","event","from","into","into_any","into_any_rc","is_within","name","new_state","panel","try_from","try_into","type_id","vzip","ScenarioManager","as_any","as_any_mut","borrow","borrow_mut","draw","draw","event","from","into","into_any","into_any_rc","is_within","new_state","panel","scenario","try_from","try_into","type_id","vzip","0","DrawFreehand","EditingMarker","Marker","MarkerID","RecordedStoryMap","StoryMap","StoryMapEditor","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","dirty","draw","draw","draw_baselayer","draw_baselayer","draw_baselayer","eq","equivalent","event","event","fmt","from","from","from","from","from","from","from","from_story","get_hash","get_hash","hash","idx","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","is_within","label","lasso","load","markers","markers","name","name","new","new_idx","new_state","new_state","on_click","panel","pts","rebuild_panel","rebuild_world","save","serialize","story","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","world","ConfirmDiscard","EditMode","LoadEdits","RoadEditor","RouteEditor","SaveEdits","StopSignEditor","TrafficSignalEditor","apply_map_edits","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","can_edit_lane","cancel","changelist","check_blackholes","check_sidewalk_connectivity","cmd_to_id","crosswalks","current_name","discard","draw","draw","draw","draw","draw","event","event","event","event","from","from","from","from","into","into","into","into","into_any","into_any","into_any","into_any","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","make_changelist","make_topcenter","map_edit_key","maybe_edit_intersection","mode","mode","multiple_roads","new_state","new_state","new_state","new_state","on_success","orig_dirty","orig_edits","panel","panel","panel","quit","recalc_btn","reset","roads","routes","speed_limit_choices","stop_signs","tool_panel","top_center","traffic_signals","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","validate","vzip","vzip","vzip","vzip","zones","0","CrosswalkEditor","ID","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","draw","eq","equivalent","event","fmt","from","from","get_hash","get_hash","hash","id","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","panel","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","world","SelectSegments","as_any","as_any_mut","base_edits","base_road","borrow","borrow_mut","candidates","current","draw","draw","event","from","into","into_any","into_any_rc","is_within","new_state","new_state","on_destroy","panel","recalculate","selected","try_from","try_into","type_id","vzip","RoadEditor","as_any","as_any_mut","borrow","borrow_mut","build_lane_highlights","can_reverse","compress_edits","create","draw","draw_drop_position","draw_drop_position","event","fade_irrelevant","fade_irrelevant","from","hovering_on_lane","into","into_any","into_any_rc","is_within","lane_for_idx","lane_highlights","lane_type_to_icon","main_panel","make_main_panel","make_top_panel","modify_current_lane","new_state","new_state_without_lane","num_edit_cmds_originally","orig_road_state","r","recalc_all_panels","recalc_hovering","recalc_lane_highlights","redo_stack","selected_lane","selected_lane_bg","top_panel","try_from","try_into","type_id","vzip","width_choices","RouteEditor","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","new_state","panel","route","try_from","try_into","type_id","vzip","StopSignEditor","as_any","as_any_mut","borrow","borrow_mut","draw","from","geom","id","into","into_any","into_any_arc","into_any_rc","is_within","mode","new_state","on_click","on_mouseover","other_event","selected_sign","try_from","try_into","type_id","vzip","BundleEdits","TrafficSignalEditor","add_new_edit","apply","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","change_stage","check_for_missing_turns","clone","clone_into","command_stack","commit","current_stage","draw","draw_baselayer","draw_current","draw_multiple_signals","edits","eq","event","fade_irrelevant","fade_irrelevant","from","from","get_current","gmns","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_side_panel","make_top_panel","members","mode","movement_selected","movements","new_state","offsets","original","picker","preview","recalc_draw_current","redo_stack","side_panel","signals","squish_polygons_together","synchronize","to_owned","tooltip","top_panel","try_from","try_from","try_into","try_into","type_id","type_id","validate_all_members","vzip","vzip","warn_changed","ChangeDuration","as_any","as_any_mut","borrow","borrow_mut","draw_baselayer","edit_entire_signal","from","idx","into","into_any","into_any_arc","into_any_rc","is_within","new_state","on_click","other_event","panel_changed","try_from","try_into","type_id","vzip","Record","Snapper","add_crosswalks","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","cardinal_direction","deserialize","fmt","from","from","geometry","get_mvmnt","green_time","import","import_all","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","movements","mvmt_txt_id","new","osm_ids","parse_linestring","parse_osm_ids","protection","roads_incoming","roads_outgoing","stage","timing_plan_id","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","ShowAbsolute","ShowRelative","TuneRelative","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","base","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","draw","draw","draw","from","from","from","i1","i2","into","into","into","into_any","into_any","into_any","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","labels","labels","labels","members","members","members","new_state","new_state","new_state","on_click","on_click","on_click","on_mouseover","on_mouseover","other_event","other_event","other_event","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","SignalPicker","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","make_btn","members","mode","new_state","panel","try_from","try_into","type_id","vzip","PreviewTrafficSignal","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","make_previewer","new_state","panel","time_panel","try_from","try_into","type_id","vzip","check_blackholes","check_sidewalk_connectivity","fix_sidewalk_direction","ZoneEditor","allow_through_traffic","as_any","as_any_mut","borrow","borrow_mut","draw","draw","draw_zone","event","from","into","into_any","into_any_rc","is_within","make_instructions","new_state","orig_members","panel","selector","try_from","try_into","type_id","vzip","Area","BldgInfo","BldgPeople","ContextualActions","Crowd","DataOptions","Details","InfoPanel","IntersectionArrivals","IntersectionDelay","IntersectionDemand","IntersectionInfo","IntersectionProblems","IntersectionTraffic","IntersectionTrafficSignal","LaneDebug","LaneInfo","LaneProblems","LaneTraffic","OpenTrip","ParkedCar","ParkingLot","PersonBio","PersonSchedule","PersonTrips","ProblemOptions","Tab","TransitRoute","TransitStop","TransitVehicleStatus","actions","active_id","active_keys","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","building","cached_actions","can_jump_to_time","changed_settings","clone","clone","clone","clone_into","clone_into","clone_into","color_for_problem_type","debug","disabled_series","disabled_series","disabled_types","disabled_types","do_time_warp","draw","draw_extra","draw_extra","eq","eq","event","execute","from","from","from","from","from","from_controls","from_controls","from_id","gameplay_mode","header_btns","hyperlinks","hyperlinks","intersection","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_paused","is_paused","is_within","is_within","is_within","is_within","is_within","lane","make_table","make_tabs","new","new","new","panel","parking_lot","person","problem_count","show_before","show_before","show_end_of_day","show_end_of_day","tab","throughput","time","time_warpers","time_warpers","to_controls","to_controls","to_id","to_owned","to_owned","to_owned","tooltips","tooltips","transit","trip","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","variant","vzip","vzip","vzip","vzip","vzip","warpers","warpers","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1","1","1","1","1","1","1","2","draw_occupants","header","info","info_body","people","people_body","area","area_body","arrivals","current_demand","current_demand_body","delay","delay_body","delay_plot","header","info","info_body","problems","problems_body","traffic","traffic_body","traffic_signal","traffic_signal_body","debug","debug_body","header","info","info_body","problems","problems_body","traffic","traffic_body","header","info","info_body","bio","bio_body","cmp_duration_shorter","crowd","crowd_body","current_status","header","parked_car","parked_car_body","schedule","schedule_body","trips","trips_body","bus_header","bus_status","bus_status_body","describe_schedule","route","route_body","stop","stop_body","OpenTrip","as_any","as_any_mut","borrow","borrow_mut","cached_routes","cancelled","clone","clone_into","describe_problems","draw_problems","endpoint","eq","finished","from","future","into","into_any","into_any_arc","into_any_rc","is_within","make_elevation","make_timeline","make_trip_details","new","ongoing","show_after","single","to_owned","try_from","try_into","type_id","vzip","Close","Layer","LayerOutcome","PANEL_PLACEMENT","PickLayer","Replace","Transition","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","draw","draw_baselayer","draw_minimap","elevation","event","event","favorites","from","from","header","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","map","name","pandemic","panel","parking","pick","population","problems","problems_diff","simple_event","traffic","transit","try_from","try_from","try_into","try_into","type_id","type_id","update","vzip","vzip","0","0","CONTOUR_STEP_SIZE","ElevationContours","INTERSECTION_SEARCH_RADIUS","SteepStreets","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","closest_elevation","draw","draw","draw","draw","draw_minimap","draw_minimap","event","event","from","from","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","make_colorer","make_contours","make_legend","name","name","new","new","panel","panel","tooltip","tooltip","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Favorites","ShowFavorites","add","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","buildings","contains","deserialize","draw","draw","draw_minimap","event","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","load","name","new","panel","path","remove","serialize","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","BikeActivity","Static","amenities","as_any","as_any","as_any_mut","as_any_mut","blackholes","borrow","borrow","borrow_mut","borrow_mut","draw","draw","draw","draw","draw_minimap","draw_minimap","edits","event","event","from","from","high_stress","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","name","name","name","new","new","no_sidewalks","panel","panel","time","tooltip","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Dead","Exposed","Infected","Options","Pandemic","Recovered","Sane","Seir","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","draw","draw","draw_minimap","eq","eq","event","fmt","from","from","from","heatmap","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","make_controls","name","new","options","opts","panel","state","time","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","Bldg","Efficiency","Loc","Lot","Occupancy","Road","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","cmp","draw","draw","draw","draw","draw_minimap","draw_minimap","eq","equivalent","event","event","from","from","from","garages","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","looking_for_parking","lots","name","name","new","new","new","onstreet","panel","panel","partial_cmp","private_bldgs","time","time","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","0","0","0","Options","PopulationMap","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","draw","draw","draw_minimap","eq","event","from","from","heatmap","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_controls","name","new","options","opts","panel","time","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Options","ProblemMap","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","draw","draw","draw_minimap","eq","event","export_raw_problems","from","from","heatmap","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_controls","modes","name","new","new","options","opts","panel","show","time","time1","time2","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","types","vzip","vzip","Options","ProblemTypes","RelativeProblemMap","after_intersection","after_road","as_any","as_any","as_any_mut","as_any_mut","before_intersection","before_road","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","disabled_types","draw","draw","draw_minimap","eq","event","from","from","from_controls","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_controls","name","new","new","opts","panel","show","time","to_controls","to_owned","tooltip","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Backpressure","CompareThroughput","Delay","Jam","PedestrianCrowding","Throughput","TrafficJams","adjacent_to","agent_types","all_polygons","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cluster_jams","draw","draw","draw","draw","draw","draw","draw","draw","draw","draw","draw","draw_minimap","draw_minimap","draw_minimap","draw_minimap","draw_minimap","draw_minimap","epicenter","event","event","event","event","event","event","export_throughput","from","from","from","from","from","from","from","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","is_within","members","name","name","name","name","name","name","new","new","new","new","new","new","panel","panel","panel","panel","panel","panel","time","time","time","time","time","time","tooltip","tooltip","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","world","TransitNetwork","as_any","as_any_mut","borrow","borrow_mut","draw","draw","draw_minimap","event","from","into","into_any","into_any_rc","is_within","name","new","panel","try_from","try_into","type_id","vzip","TitleScreen","as_any","as_any_mut","borrow","borrow_mut","enter_state","from","into","into_any","into_any_arc","into_any_rc","is_within","new_state","proposals","try_from","try_into","type_id","vzip","Proposals","as_any","as_any_mut","borrow","borrow_mut","current","from","into","into_any","into_any_arc","into_any_rc","is_within","launch","new_state","on_click","proposals","try_from","try_into","type_id","vzip","Actions","BackToTitleScreen","Finalizing","GameplayMode","GotPrebaked","GotScenario","LoadStage","LoadingMap","LoadingPrebaked","LoadingScenario","MinimapController","SandboxControls","SandboxLoader","SandboxMode","SpeedSetting","TimePanel","TimeWarpScreen","TutorialPointer","TutorialState","actions","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","async_new","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","can_interact","common","contextual_actions","controls","dashboards","draw","draw","draw","event","event","event","execute","finalize","from","from","from","from","from","from","gameplay","gameplay","gameplay","gameplay_mode","gameplay_mode","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_daytime","is_paused","is_paused","is_within","is_within","is_within","is_within","is_within","is_within","last_cs","maybe_exit_sandbox","minimap","minimap","misc_tools","mode","mouseover_unzoomed_agent_circle","new","on_destroy","recalc_unzoomed_agent","recreate_panels","route_preview","simple_new","spawn_agents_around","speed","stage","start_from_savestate","time_panel","time_warp","tool_panel","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","0","0","0","1","ActiveTraffic","CommuterPatterns","CommuterPatterns","DashTab","ModeShift","ParkingOverhead","RiskSummaries","TrafficSignalDemand","TrafficSignals","TransitRoutes","TravelTimes","TripTable","as_any","as_any_mut","borrow","borrow_mut","clone","clone_into","commuter","eq","fmt","from","generic_trip_table","into","into_any","into_any_arc","into_any_rc","is_within","launch","misc","mode_shift","parking_overhead","picker","risks","selector","tab_changed","to_owned","traffic_signals","transition","travel_times","trip_problems","trip_table","try_from","try_into","type_id","vzip","Block","BlockID","BlockSelection","BorderType","Both","CommuterPatterns","Filter","Incoming","Locked","Loop","NothingSelected","Outgoing","PanelState","Unlocked","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","bldg_to_block","bldgs","bldgs","blocks","border_to_block","borders","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_block_drawable","build_shape_for_border","building_counts","clone","clone_into","count_per_block","current_block","depart_from","depart_until","draw","draw_all_blocks","eq","eq","event","filter","from","from","from","from","from","from","from","from_block","group_bldgs","id","include_borders","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","is_within","make_panel","max_count","modes","new_state","panel","partition_sidewalk_loops","proper","redraw_panel","roads","shape","to_owned","total_trips","trips_from_block","trips_to_block","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","0","base","compare_to","open_trip_transition","preview_route","preview_trip","ActiveTraffic","TransitRoutes","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downsample","draw","draw","event","event","from","from","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","new_state","new_state","panel","panel","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Entry","Filters","ModeShift","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","distance","draw","estimated_biking_time","estimated_driving_time","event","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","make_table","max_biking_time","max_distance","max_driving_time","max_elevation_gain","new_state","panel","produce_raw_data","show_route_gaps","show_route_gaps","tab","table","total_elevation_gain","total_elevation_loss","trip","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","Entry","Filters","ParkingOverhead","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","draw","driving_duration","ends_off_map","ends_off_map","event","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","make_table","new_state","panel","parking_duration","percent_overhead","produce_raw_data","starts_off_map","starts_off_map","tab","table","total_duration","trip","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","walking_duration","Filter","RiskSummaries","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","event","export_problems","from","from","include_no_changes","include_no_changes","includes_mode","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","modes","new_state","panel","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","RectangularSelector","as_any","as_any_mut","borrow","borrow_mut","corners","draw","event","from","into","into_any","into_any_rc","is_within","new_state","panel","region","try_from","try_into","type_id","vzip","Demand","TrafficSignalDemand","all_demand","all_demand","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","count","draw","draw_baselayer","event","from","from","hour","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","panel","raw","rebuild_world","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","world","Filter","TravelTimes","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","changes_pct","contingency_table","draw","event","export_times","from","from","get_trips","include_no_changes","include_no_changes","includes_mode","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_panel","modes","new","new_state","panel","pct_diff","scatter_plot","summary_boxes","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","CLEAR_COLOR_SCALE","Matrix","MatrixOptions","TripProblemFilter","__private_field","add_pt","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bucketize_isizes","buckets_x","buckets_y","color_scale_for_bucket","deref","draw","entries","finished_trip_count","fmt_y_axis","from","from","from","idx","include_no_changes","includes_mode","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","new","problem_matrix","tooltip_for_bucket","total_height","total_width","trip_problems","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","CancelledTrip","Filters","FinishedTrip","TripTable","UnfinishedTrip","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cancelled_trips_table","departure","departure","departure","draw","duration_after","duration_before","duration_before","duration_before","end","end","ends_in","event","finished_trips_table","from","from","from","from","from","id","id","id","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","make_table_cancelled_trips","make_table_finished_trips","make_table_unfinished_trips","mode","mode","mode","modes","modified","modified_trips","new","off_map_ends","off_map_starts","panel","percent_waiting","produce_raw_data","reason","recompute_filters","start","start","starts_in","tab","table_tabs","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unfinished_trips_table","unmodified_trips","vzip","vzip","vzip","vzip","vzip","waiting","Actdev","FinalScore","FixTrafficSignals","Freeform","Future","GameplayMode","GameplayState","LoadScenario","Nothing","OptimizeCommute","Path","PlayScenario","Scenario","Tutorial","Tutorial","TutorialPointer","TutorialState","actdev","allows","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","can_edit_roads","can_edit_stop_signs","can_examine_objects","can_jump_to_time","can_move_canvas","challenge_header","chose_back_to_challenges","chose_next","clone","clone_into","cmp","commute","downcast","downcast_mut","downcast_rc","downcast_ref","draw","draw","eq","equivalent","event","event","fix_traffic_signals","freeform","from","from","from","has_common","has_minimap","has_time_panel","has_tool_panel","initialize","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is","is_within","is_within","is_within","map_name","new_state","next_mode","on_destroy","panel","partial_cmp","play_scenario","recreate_panels","retry","scenario","spawn_agents_around","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","tutorial","type_id","type_id","type_id","vzip","vzip","vzip","0","0","0","0","0","1","1","1","2","2","0","0","0","About","Actdev","as_any","as_any","as_any_mut","as_any_mut","bg_traffic","borrow","borrow","borrow_mut","borrow_mut","draw","draw","event","find_active_trip","from","from","has_tool_panel","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","on_click","once","recreate_panels","scenario_name","top_right","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","OptimizeCommute","as_any","as_any_mut","borrow","borrow_mut","cutscene_pt1","cutscene_pt2","cutscene_task","done","draw","event","final_score","from","get_score","goal","into","into_any","into_any_rc","is_within","mode","new_state","once","person","recreate_panels","time","top_right","trips","try_from","try_into","type_id","vzip","FixTrafficSignals","THRESHOLD","as_any","as_any_mut","borrow","borrow_mut","cutscene_pt1","cutscene_pt1_task","done_at","draw","event","final_score","from","into","into_any","into_any_rc","is_within","mode","new_state","on_destroy","recreate_panels","time","top_right","try_from","try_into","type_id","vzip","worst","ChangeScenario","Freeform","actions","area_spawner","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","draw","event","execute","from","from","importers","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","new_state","on_click","recreate_panels","spawn_agents_around","spawner","top_right","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","Area","AreaSpawner","DrawingArea","Mode","Neutral","Obj","PickingDestination","SelectRectangle","areas","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borders","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buildings","clone","clone_into","draw","draw","eq","equivalent","event","event","fmt","from","from","from","from","from","get_hash","get_hash","hash","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","mode","new","new","new_state","panel","polygon","preview","pt1","rebuild_world","rect","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","world","0","source","Input","as_any","as_any_mut","borrow","borrow_mut","deserialize","from","import_grid2demand","import_json","import_json_scenario","into","into_any","into_any_arc","into_any_rc","is_within","people","scenario_name","try_from","try_into","type_id","vzip","AgentSpawner","as_any","as_any_mut","borrow","borrow_mut","confirmed","draw","event","from","goal","into","into_any","into_any_rc","is_within","new_state","panel","start","try_from","try_into","type_id","vzip","ChangeMode","CountTrips","DepartureSummary","EditScenarioModifiers","PlayScenario","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","count","count_trips","departures_per_mode","draw","draw","draw","event","event","event","first_trip","from","from","from","from","from","get_filters","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","modifiers","modifiers","modifiers","new","new_state","new_state","new_state","new_state","on_click","on_destroy","panel","panel","recalc_count","recreate_panels","scenario_name","scenario_name","scenario_name","top_right","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","CAR_BIKE_CONTENTION_GOAL","Camera","Done","ESCORT","Escort","FixBikes","InspectObjects","LowParking","Message","Nil","PauseResume","Stage","Task","TimeControls","Tutorial","TutorialPointer","TutorialState","WatchBikes","actions","aligned","arrow","arrow","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","bldg","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","can_examine_objects","can_move_canvas","car_parked","clone","clone","clone_into","clone_into","cmp","current","custom_spawn","custom_spawn","draw","dynamic_arrow","eq","eq","equivalent","event","execute","fire_station","following_car","from","from","from","from","from","from","has_common","has_minimap","has_time_panel","has_tool_panel","icon","icon","initialize","inner_event","inspected_bike_lane","inspected_border","inspected_building","inspected_stop_sign","interaction","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","intro_story","is_within","is_within","is_within","is_within","is_within","is_within","label","last_finished_task","left_aligned","make_bike_lane_scenario","make_gameplay","make_scenario","make_state","make_top_right","message","messages","msg","msg_panel","new","new","new","new","next","num_pauses","parking_found","part","partial_cmp","partial_cmp","prank_done","prev","recreate_panels","reset_state","scenario","scenario","scenarios_to_prebake","score_delivered","stage","stage","stages","start","task","to_owned","to_owned","top_right","top_txt","transition","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","txt","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","warp_to","warp_to","warped","was_paused","window_dims","MinimapController","as_any","as_any_mut","borrow","borrow_mut","draw_extra","from","has_layer","has_zorder","into","into_any","into_any_arc","into_any_rc","is_within","make_agent_toggles","make_legend","make_tool_panel","make_unzoomed_panel","make_zoomed_side_panel","panel_changed","panel_clicked","try_from","try_into","type_id","vzip","RoutePreview","TrafficRecorder","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","draw","event","event","from","from","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","make_btn","members","new","new_state","panel","preview","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Fast","Faster","Fastest","Realtime","SpeedSetting","TimePanel","as_any","as_any","as_any_mut","as_any_mut","baseline_finished_trips","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","create_time_panel","draw","eq","event","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_paused","is_within","is_within","new","override_height","panel","partial_cmp","pause","paused","recreate_panel","resume","setting","time","to_owned","trips_completion_bar","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","JumpToTime","TimeWarpScreen","area_under_curve","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","build_jump_to_delay_button","build_jump_to_time_btn","compare_count","draw","draw","draw_baselayer","event","event","from","from","halt_upon_delay","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","maybe_mode","new_state","new_state","on_destroy","panel","panel","sim_time_started","tabs","target","target","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","wall_time_started","AddLanes","Explore","ExploreMap","Layers","ModeShiftData","PredictImpact","RoutingPreferences","Tab","TakeLayers","Trip","as_any","as_any_mut","bike_network","borrow","borrow_mut","eq","explore","from","handle_action","into","into_any","into_any_arc","into_any_rc","is_within","layers","make_left_panel","predict","quick_sketch","take_layers","trip","try_from","try_into","type_id","vzip","DEDICATED_TRAIL","DrawNetworkLayer","GREENWAY","PAINTED_BIKE_LANE","PROTECTED_BIKE_LANE","__private_field","__private_field","__private_field","__private_field","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","deref","deref","deref","deref","draw","draw_intersections","draw_roads","from","from","from","from","from","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_greenway","is_within","is_within","is_within","is_within","is_within","new","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","ExploreMap","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","layers","new_state","take_layers","top_panel","try_from","try_into","type_id","vzip","Layers","as_any","as_any_mut","bike_network","borrow","borrow_mut","draw","elevation","event","fade_map","from","highlight_road_type","into","into_any","into_any_rc","is_within","labels","layer_icon_pos","legend_btn","make_legend","make_zoom_controls","map_edit_key","minimized","new","panel","road_types","show_panel","steep_streets","try_from","try_into","type_id","update_panel","vzip","zoom_enabled_cache_key","zoom_enabled_cache_key","CandidateTrip","Filters","ModeShiftData","NetworkGaps","Results","ShowGaps","all_candidate_trips","annual_co2_emissions_tons","apply","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","bike_req","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","count_per_road","default","default","describe","draw","draw","driving_distance","empty","estimated_biking_time","event","filtered_trips","filters","from","from","from","from","from","from","from_controls","from_scenario","gaps","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","layers","make_top_panel","max_biking_time","max_elevation_gain","new_state","num_trips","pct","recalculate_gaps","results","take_layers","to_controls","tooltip","top_panel","total_driving_distance","total_elevation_gain","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","QuickSketch","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","layers","make_quick_changes","map_edit_key","new_state","proposal_management","route_sketcher","take_layers","top_panel","try_from","try_into","type_id","update_top_panel","vzip","AltRoute","ID","MainRoute","RoutingPreferences","TripPlanner","Waypoint","alt_routes","app_session_current_trip_name","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","avoid_hills","avoid_stressful_roads","before_after_button","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","default","draw","eq","eq","equivalent","event","files","fmt","from","from","from","get_hash","get_hash","hash","input_panel","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","layers","main_route","mut_files","name","new_state","on_destroy","recalculate_routes","results","routing_params","sync_from_file_management","take_layers","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_input_panel","vzip","vzip","vzip","waypoints","world","0","0","BuiltRoute","RouteDetails","RouteStats","alt_route","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","closest_path_segment","compare_routes","details","details_widget","dist_along_high_stress_roads","draw","draw","draw_high_stress","draw_traffic_signals","draw_unprotected_turns","eq","event","from","from","from","hitboxes","hover_on_line_plot","hover_on_route_tooltip","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","main_route","make_detail_widget","new_route","num_traffic_signals","num_unprotected_turns","paths","preferences","stats","tooltip_for_alt","total_distance","total_down","total_time","total_up","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":["game","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::Mode","","","","game::app","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::challenges","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::challenges::cutscene","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::challenges::cutscene::Layout","","game::challenges::prebake","game::common","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::common::route_sketcher","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::common::route_sketcher::Mode","","","game::common::select","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::common::select::Mode","","game::common::share","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::common::warp","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::debug","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::debug::blocked_by","","","","","","","","","","","","","","","","","","","","","","","","","","game::debug::blockfinder","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::debug::floodfill","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::debug::floodfill::Source","game::debug::objects","","","","","","","","","","","","","","","","","","game::debug::path_counter","","","","","","","","","","","","","","","","","","","","","game::debug::polygons","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::debug::polygons::Item","","","game::debug::routes","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::debug::select_roads","","","","","","","","","","","","","","","","","","","","game::debug::uber_turns","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::devtools","","","","","","","","","","","","","","","","","","","","","","","","game::devtools::collisions","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::devtools::compare_counts","","","","","","","","","","","","","","","","","","","game::devtools::destinations","","","","","","","","","","","","","","","","","","","","","game::devtools::kml","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::devtools::polygon","","","","","","","","","","","","","","","","","","","","game::devtools::scenario","","","","","","","","","","","","","","","","","","","","game::devtools::story","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit::crosswalks","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit::multiple_roads","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit::roads","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit::routes","","","","","","","","","","","","","","","","","","","game::edit::stop_signs","","","","","","","","","","","","","","","","","","","","","","","","game::edit::traffic_signals","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit::traffic_signals::edits","","","","","","","","","","","","","","","","","","","","","","game::edit::traffic_signals::gmns","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit::traffic_signals::offsets","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::edit::traffic_signals::picker","","","","","","","","","","","","","","","","","","","","","game::edit::traffic_signals::preview","","","","","","","","","","","","","","","","","","","","game::edit::validate","","","game::edit::zones","","","","","","","","","","","","","","","","","","","","","","","","game::info","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::info::Tab","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::info::building","","","","","","game::info::debug","","game::info::intersection","","","","","","","","","","","","","","","game::info::lane","","","","","","","","","game::info::parking_lot","","","game::info::person","","","","","","","","","","","","","game::info::transit","","","","","","","","game::info::trip","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::LayerOutcome","","game::layer::elevation","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::favorites","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::map","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::pandemic","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::parking","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::parking::Loc","","","game::layer::population","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::problems","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::problems_diff","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::traffic","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::layer::transit","","","","","","","","","","","","","","","","","","","","","game::pregame","","","","","","","","","","","","","","","","","","game::pregame::proposals","","","","","","","","","","","","","","","","","","","","game::sandbox","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::LoadStage","","","","game::sandbox::dashboards","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::commuter","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::commuter::BlockSelection","","","game::sandbox::dashboards::generic_trip_table","","","game::sandbox::dashboards::misc","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::mode_shift","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::parking_overhead","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::risks","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::selector","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::traffic_signals","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::travel_times","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::trip_problems","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::dashboards::trip_table","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::GameplayMode","","","","","","","","","","game::sandbox::gameplay::LoadScenario","","","game::sandbox::gameplay::actdev","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::commute","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::fix_traffic_signals","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::freeform","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::freeform::area_spawner","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::freeform::area_spawner::Mode","","game::sandbox::gameplay::freeform::importers","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::freeform::spawner","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::play_scenario","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::gameplay::tutorial","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::minimap","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::misc_tools","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::speed","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::sandbox::time_warp","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::ungap","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::ungap::bike_network","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::ungap::explore","","","","","","","","","","","","","","","","","","","","game::ungap::layers","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::ungap::predict","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::ungap::quick_sketch","","","","","","","","","","","","","","","","","","","","","","","","","game::ungap::trip","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game::ungap::trip::ID","","game::ungap::trip::results","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","","","","","","","","","","","","","Start in ActDev mode for a particular site name.","Start by showing an ActDev scenario. Either “base” or …","","","","","","","","","","","","","","Initially position the camera here. The format is an …","","Start playing a particular challenge","","Start by listing gameplay challenges","","The color scheme for map elements, agents, and the UI.","","Start in a tool for comparing traffic counts","","","Dev mode exposes experimental tools useful for debugging, …","This directory contains extra/experimental tools not …","Start by listing internal developer tools","","Load the map at this path as a secondary debug map to …","Print raw widgetry events to the console for debugging","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","Start by showing this KMl file in a debug viewer","","When making a screen recording, enable this option to hide …","","","Run a configured set of simulations and record prebaked …","","Start by showing community proposals","","","Start in the simulation sandbox mode","Override the monitor’s auto-detected scale factor","","","Start the simulation at this time","","Start with these map edits loaded. This should be the name …","","","","","","","Start on a particular tutorial stage","Start at the tutorial intro screen","","","","","Launch Ungap the Map, a bike network planning tool","","","","","","","","The top-level data that lasts through the entire game, no …","","","All of the state that’s bound to a specific map.","","","","","","","Load an extra GeoJSON file, and add the area to the map …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Ensure the map edits are blank, reset the simulation, and …","Returns whatever was there","","If an intersection was clicked, return its ID.","","","","","","","","","If we ever left edit mode and resumed without restarting …","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Any ScenarioModifiers in effect?","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","Is this the original “secondary” state, loaded via –…","","","","","","","","","","","","","","","","If true, all map edits immediately apply to the live …","","","","","","","","","","","","","","","","","","","","","","Only exists in some gameplay modes. Must be carefully …","State (like the simulation and drawing stuff) associated …","Assumes some defaults.","","","","","The most recent Scenario loaded from a file. Don’t …","Represents state for a different version of the primary
…","Static data that lasts the entire session. Use sparingly.","","","","","","","","","","","","","","","Display an extra area with this name on the map. This gets …","Only filled out in edit mode. Stored here once to avoid …","This swaps the primary and secondary PerMaps. Depending on …","","","","","","","","","","","","","","","","","","","","","","","","","","","If the map has been edited and …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Allow toggling of dev mode and warping to an object by ID.","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","If you want a simulation to start after midnight, pass the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","True if the route changed","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","Has the user even picked a start point?","Has the user specified a full route?","","","","","","","","","True if something changed. False if this component doesn’…","","","","","","","","","","","","","","","","","","","","","","","","Click and drag to unselect roads","","Click and drag to select roads","No selecting, just normal click-and-drag controls.","A tool for selecting multiple roads.","The user is choosing two intersections, to select the …","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Intersections can’t be selected directly. If all roads …","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","This will point to a URL with the new edits and the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Visualize the graph of what agents are blocked by others.","","","","","","","","","","Trace the root cause for everyone, find the most common …","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","Figure out why some agent is blocked. Draws an arrow for …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","A state to count the number of trips that will cross …","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","See how live-tuned routing parameters affect all requests …","Evaluate why an alternative path wasn’t chosen, by …","See how live-tuned routing parameters affect a single …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","Returns the indices of all matching collisions","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","Loads and clips objects to the current map. Also returns …","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","A simple tool to place markers and free-hand shapes over a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","After a single road has been edited, these states let the …","","","Mode is just used for allows
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","Always starts focused on a certain lane.","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","Snaps a line to a vehicle movement across an intersection. …","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","This imports timing.csv from …","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","Looks at all changed roads and makes sure sidewalk …","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Draw extra things when unzoomed or zoomed.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","When a button with this label is clicked, open this info …","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","When a button with this label is clicked, time-warp and …","","","","","","","","Show these tooltips over the map. If the tooltip is …","","","","","","","","","","","","","","","","","","","","","","","","","When a button with this label is clicked, warp to this ID.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","Draws the timeline for a single trip, with tooltips","Creates the timeline, location warp, and time warp buttons …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Creates the top row for any layer panel.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","Also returns the steepest street and a row explaining the …","","Returns the colored categories used and a row explaining …","","","","","","","","","","","","","","","","","A set of buildings that the player has starred, persisted …","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","This does not immediately initialize anything (like …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If you don’t need to chain any transitions after the …","","","","Assumes that the map and simulation have already been set …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","Aka a 2D histogram. Tracks matching IDs in each cell.","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","The caller should handle Outcome::ClickCustom with Vec for …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","Returns a mutable reference to the object within the trait …","Returns an Rc
-ed object from an Rc
-ed trait object if the …","Returns a reference to the object within the trait object …","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Must be called after the scenario has been setup. The …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","Returns true if the trait object wraps an object of type …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A gameplay mode with specific controls for integration with","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","True if done","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","Idempotent. This must be called before make_gameplay
or …","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Launches the tutorial gameplay along with its cutscene","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","is_enabled
: are (car, bike, bus, pedestrian) toggles …","","","","","","","","","","","Draws a preview of the path for the agent under the mouse …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","5 sim seconds per real second","30 sim seconds per real second","1 sim hour per real second","1 sim second per real second","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","Shows the bike network while unzoomed. Handles thickening …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","A bottom-right panel for managing a bunch of toggleable …","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A temporary structure that the caller should unpack and …","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","“main” is determined by app.session.routing_preferences
","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,12,12,12,12,12,0,12,12,0,12,12,12,16,16,0,6,16,12,6,16,12,6,16,12,6,16,12,16,6,16,0,16,16,16,0,16,0,0,16,0,16,6,16,16,0,12,0,6,16,6,16,12,16,0,6,6,16,12,6,16,12,6,16,12,6,16,12,6,16,12,0,16,0,16,6,6,16,0,16,0,0,16,16,0,6,16,6,16,6,16,12,6,16,12,16,16,6,16,12,0,16,6,16,12,347,348,349,348,0,0,0,0,0,0,0,0,0,0,0,7,4,43,44,7,38,45,50,33,4,43,44,7,38,45,50,33,4,4,4,43,44,7,38,45,50,33,4,43,44,7,38,45,50,33,38,4,7,33,4,7,45,4,33,33,4,4,7,7,50,38,7,4,4,4,7,4,4,38,38,4,4,43,44,7,38,45,50,33,33,4,50,7,4,38,38,7,4,43,44,7,38,45,50,33,4,43,44,7,38,45,50,33,43,44,45,50,33,4,43,44,7,38,45,50,33,7,4,43,44,7,38,45,50,33,38,7,7,27,44,44,45,33,4,4,7,7,4,38,4,4,4,4,4,4,4,4,43,44,45,4,4,4,4,7,4,4,50,45,38,50,7,4,4,4,27,44,43,43,43,43,43,43,4,7,7,33,4,33,7,4,33,4,43,44,7,38,45,50,33,4,43,44,7,38,45,50,33,38,4,43,44,7,38,45,50,33,7,38,4,43,44,7,38,45,50,33,0,0,0,51,51,51,57,54,51,57,54,51,57,54,51,57,54,54,0,51,51,57,51,51,57,54,51,57,51,57,54,51,57,54,51,57,54,51,57,54,51,57,54,54,54,54,54,0,57,57,51,51,57,54,51,57,54,51,57,54,51,57,54,350,0,0,350,0,350,0,0,58,350,351,60,61,58,350,351,60,61,58,350,351,60,61,58,350,351,60,61,58,58,60,61,60,61,58,58,58,350,351,60,61,60,58,350,351,60,61,58,350,351,60,61,58,350,351,58,350,351,60,61,58,350,351,60,61,351,0,60,351,58,60,58,61,60,61,58,58,60,58,350,351,60,61,58,350,351,60,61,58,350,351,60,61,58,350,351,60,61,352,352,0,0,0,0,0,69,69,69,69,69,0,0,0,69,69,69,69,69,69,69,69,69,69,69,69,0,69,0,69,69,0,0,0,0,0,69,69,69,69,0,0,78,78,0,0,78,0,0,75,76,76,75,78,76,75,78,76,75,78,76,75,78,75,78,75,78,76,75,78,76,76,75,78,75,76,75,76,75,78,76,75,78,75,78,76,75,78,76,76,76,75,78,76,76,75,76,75,76,76,76,76,75,78,76,75,78,76,75,78,76,75,78,76,76,76,75,78,75,353,354,354,355,0,355,355,0,355,79,355,79,355,79,355,79,355,79,79,79,79,355,79,79,355,79,355,79,355,79,355,79,79,79,79,79,79,79,355,79,355,79,355,79,355,356,356,0,0,0,81,80,81,80,81,80,81,80,80,81,80,81,80,81,80,81,80,81,80,81,80,81,80,80,80,81,81,80,80,81,80,81,80,81,80,81,81,81,80,0,0,0,84,85,84,85,84,85,84,85,84,85,84,85,84,85,84,0,84,85,84,85,84,84,85,84,85,84,85,85,84,85,84,85,84,85,84,85,0,84,0,0,0,0,0,86,88,88,357,86,89,88,357,86,89,0,0,88,357,86,89,88,357,86,89,0,88,0,88,89,357,0,0,0,88,88,89,86,0,0,0,0,88,357,86,89,86,88,88,88,357,86,89,88,357,86,89,86,89,88,357,86,89,86,88,357,86,89,88,88,88,89,357,0,88,88,0,0,357,0,88,0,89,0,88,0,88,89,88,88,357,86,89,88,357,86,89,88,357,86,89,0,88,357,86,89,0,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,98,0,0,0,0,0,0,97,97,97,102,98,97,102,98,102,97,97,102,98,97,102,98,98,98,98,97,102,102,98,98,97,98,97,102,98,98,98,98,97,97,102,98,97,102,98,98,97,102,98,97,102,98,0,97,97,102,102,102,97,98,97,97,98,97,102,98,97,102,98,97,102,98,97,102,98,97,104,0,104,0,106,104,106,104,106,104,106,104,104,104,104,106,106,106,106,106,104,106,104,106,104,104,106,104,106,104,106,106,106,106,104,106,104,106,104,106,104,106,104,358,0,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,0,111,111,0,111,110,111,110,111,110,111,110,111,110,110,110,110,111,110,110,111,110,111,111,110,111,110,111,110,110,110,110,110,111,110,111,110,111,110,111,359,360,361,0,0,0,114,115,116,114,115,116,115,114,115,116,114,115,116,0,0,116,115,114,115,116,115,116,114,115,116,114,115,116,114,114,115,116,114,115,116,114,115,116,114,115,116,116,114,115,114,115,116,0,114,115,114,115,116,114,115,116,114,115,116,114,115,116,114,115,116,0,122,122,122,122,122,122,122,122,122,122,122,0,122,122,122,122,122,122,122,0,0,123,124,123,124,123,124,123,124,123,124,124,124,123,124,124,124,123,124,123,124,123,123,124,123,124,124,123,123,124,123,124,123,123,124,124,123,124,123,124,123,124,123,124,0,125,125,125,125,0,0,0,125,125,125,125,125,125,0,125,125,0,0,0,125,125,125,125,0,0,0,129,130,129,130,129,130,129,130,129,130,130,129,130,130,129,129,0,130,129,130,129,129,130,129,130,129,129,129,130,130,0,129,129,129,130,129,130,129,130,129,130,129,130,0,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,0,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,0,0,0,0,136,138,136,138,138,136,138,136,138,138,136,136,136,136,136,138,136,138,136,138,138,136,138,136,138,0,0,0,136,136,138,136,0,138,136,136,136,138,136,138,136,138,136,138,0,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,0,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,142,0,0,0,0,0,0,0,144,147,362,146,145,142,143,144,147,362,146,145,142,143,144,147,362,146,145,142,143,144,147,362,146,145,142,143,142,143,142,143,143,144,144,145,144,146,145,142,142,144,145,142,144,147,362,146,145,142,143,144,142,142,142,146,144,147,362,146,145,142,143,144,147,362,146,145,142,143,147,362,146,145,142,143,144,147,362,146,145,142,143,144,147,362,146,145,142,143,362,145,147,147,143,147,143,147,145,144,146,146,144,362,144,144,147,143,144,142,143,144,147,362,146,145,142,143,144,147,362,146,145,142,143,144,147,362,146,145,142,143,144,147,362,146,145,142,143,144,0,0,0,0,0,0,0,0,0,149,150,151,152,149,150,151,152,149,150,151,152,149,150,151,152,0,150,149,0,0,0,0,150,152,149,150,151,152,149,149,150,151,152,149,150,151,152,149,150,151,152,149,150,151,152,149,150,151,152,149,150,151,152,0,0,149,0,149,151,0,149,150,151,152,150,149,149,150,151,152,149,150,150,0,0,0,0,149,149,0,149,150,151,152,149,150,151,152,149,150,151,152,0,149,150,151,152,0,155,0,0,156,155,156,155,156,155,156,155,155,155,156,155,155,156,155,156,155,155,155,155,156,156,155,156,155,155,156,155,156,155,156,156,155,156,155,156,155,156,155,156,155,156,0,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,0,160,160,160,160,0,0,160,160,160,0,160,160,0,160,160,160,160,160,160,160,160,160,0,160,0,0,160,160,160,160,160,160,160,160,160,160,160,0,160,160,160,160,160,0,0,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,0,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,0,0,168,169,168,169,168,169,168,169,168,169,168,0,169,169,168,169,168,168,168,168,0,0,169,168,0,168,168,169,169,0,168,169,168,169,169,168,169,168,169,0,0,168,168,168,168,168,0,168,0,0,168,168,168,169,0,169,169,168,168,168,169,168,169,168,169,168,168,169,168,0,170,170,170,170,170,0,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,0,0,0,174,173,174,173,174,173,174,173,0,173,173,174,173,173,174,173,0,0,174,173,174,173,174,173,174,173,174,173,174,173,174,173,0,0,173,174,174,173,173,174,173,174,173,174,173,174,173,0,0,0,178,179,180,178,179,180,179,178,179,180,178,179,180,178,179,180,178,179,180,180,180,178,179,180,178,179,180,178,179,180,178,179,180,178,179,180,178,179,180,178,179,180,178,179,180,178,179,178,179,180,178,179,180,178,179,180,178,179,180,178,179,180,0,181,181,181,181,181,181,181,181,181,181,181,0,181,181,181,181,181,181,181,181,0,182,182,182,182,182,182,182,182,182,182,182,0,182,182,182,182,182,182,182,0,0,0,0,183,183,183,183,183,183,183,0,183,183,183,183,183,183,0,183,183,183,183,183,183,183,183,73,73,73,0,73,0,0,0,73,73,73,73,73,73,73,73,73,73,73,0,73,73,73,73,73,0,0,73,73,73,71,184,184,184,191,73,185,186,184,191,73,185,186,184,191,73,185,186,184,191,73,185,186,0,184,191,73,73,185,186,73,185,186,0,0,185,186,185,186,0,184,184,191,185,186,184,71,184,191,73,185,186,185,186,73,71,0,184,191,0,184,191,73,185,186,184,191,73,185,186,191,73,185,186,184,191,73,185,186,71,184,184,191,73,185,186,0,0,0,184,185,186,184,0,0,0,185,186,185,186,184,0,184,184,191,185,186,73,73,185,186,184,191,0,0,184,191,73,185,186,184,191,73,185,186,184,191,73,185,186,73,184,191,73,185,186,184,191,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,363,376,377,379,381,384,385,377,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,199,199,199,199,199,0,199,199,0,0,0,199,0,199,0,199,199,199,199,199,0,0,0,199,0,199,199,199,199,199,199,199,206,0,0,0,0,206,206,206,205,206,205,206,205,206,205,386,205,205,386,0,386,205,0,206,205,0,206,205,206,205,206,205,206,205,0,386,0,205,0,205,0,0,0,386,0,0,206,205,206,205,206,205,205,206,205,387,388,0,0,0,0,207,208,207,208,207,208,207,208,208,207,208,207,208,207,208,207,208,207,208,207,208,207,208,207,208,207,208,207,208,207,207,208,207,208,207,208,207,208,207,208,207,208,207,208,207,208,0,0,209,210,209,210,209,210,209,210,209,209,209,209,210,210,210,210,210,209,210,209,210,209,209,210,209,210,209,209,210,210,210,209,209,209,210,209,210,209,210,209,210,209,0,0,211,212,211,212,211,211,212,211,212,211,212,211,212,211,212,211,211,212,211,212,211,211,212,211,212,211,212,211,212,211,212,211,211,212,211,211,212,211,212,212,212,211,212,211,212,211,212,211,214,214,214,0,0,214,214,0,216,214,215,216,214,215,216,214,215,216,214,215,214,215,214,215,216,216,216,214,215,216,214,216,214,215,215,216,214,215,216,214,215,214,215,216,214,215,216,214,215,0,216,216,216,216,216,215,216,214,215,216,214,215,216,214,215,216,214,215,216,214,215,217,0,0,217,0,217,218,219,217,218,219,217,218,219,217,218,219,217,217,217,217,218,219,218,219,218,219,217,217,218,219,218,219,217,218,218,219,217,218,219,217,217,218,219,217,218,219,217,218,218,218,219,218,219,217,218,218,219,217,218,218,219,217,218,219,217,218,219,217,218,219,217,218,219,217,389,390,391,0,0,222,221,222,221,222,221,222,221,221,221,222,222,222,221,222,222,221,221,222,221,222,221,221,222,221,222,221,0,222,222,222,222,222,222,221,222,221,222,221,222,221,222,221,0,0,224,223,224,223,224,223,224,223,223,223,224,224,224,223,224,0,224,223,223,224,223,224,223,223,224,223,224,223,0,223,224,224,223,224,224,224,223,224,223,223,223,224,223,224,223,224,223,223,224,223,0,0,0,227,227,227,226,227,226,227,227,227,226,227,226,226,226,226,227,227,227,226,227,227,226,226,227,226,227,226,226,227,226,227,226,0,227,227,226,227,227,226,227,226,226,227,227,226,227,226,227,226,227,226,0,0,0,0,0,0,0,228,230,228,229,230,231,232,228,233,234,229,230,231,232,228,233,234,229,230,231,232,228,233,234,229,230,231,232,228,233,234,0,229,230,231,232,233,234,229,230,231,232,233,229,230,231,232,233,234,228,229,230,231,232,233,234,0,229,230,231,232,228,233,234,229,230,231,232,228,233,234,229,230,231,232,228,233,234,228,229,230,231,232,228,233,234,229,230,231,232,228,233,234,228,229,230,231,232,233,234,229,230,231,232,233,234,229,230,231,232,233,234,229,230,231,232,233,234,230,231,229,230,231,232,228,233,234,229,230,231,232,228,233,234,229,230,231,232,228,233,234,229,230,231,232,228,233,234,234,0,235,235,235,235,235,235,235,235,235,235,235,235,235,235,235,235,235,235,235,235,0,392,392,392,392,0,392,392,392,392,392,392,392,0,392,392,392,392,0,237,237,237,237,237,237,237,237,237,237,237,0,237,237,237,237,237,237,237,0,0,393,0,393,393,0,393,393,393,0,0,0,0,0,0,0,0,0,238,239,243,240,238,393,241,239,243,240,238,393,241,239,239,243,240,238,393,241,239,243,240,238,393,241,238,243,239,239,0,239,240,241,239,240,241,238,241,239,243,240,238,393,241,0,239,238,238,239,239,243,240,238,393,241,239,243,240,238,393,241,240,238,393,239,243,240,238,393,241,0,238,238,239,243,240,238,393,241,239,0,0,243,0,241,0,243,239,239,243,243,239,0,0,241,239,243,0,243,239,243,240,238,393,241,239,243,240,238,393,241,239,243,240,238,393,241,239,243,240,238,393,241,394,395,396,396,244,0,244,0,244,244,244,0,244,244,244,244,244,244,244,244,244,244,0,244,244,244,0,244,244,244,244,244,244,0,0,0,244,0,0,244,244,0,244,0,0,0,244,244,244,244,0,0,0,0,248,0,0,248,246,0,246,248,0,246,245,252,249,248,251,246,250,245,252,249,248,251,246,250,245,249,251,245,245,249,245,252,249,248,251,246,250,245,252,249,248,251,246,250,245,0,252,246,246,245,245,250,250,245,245,246,250,245,245,245,252,249,248,251,246,250,250,0,249,250,245,252,249,248,251,246,250,245,252,249,248,251,246,250,252,249,248,251,246,250,245,252,249,248,251,246,250,245,252,249,248,251,246,250,0,252,250,245,245,0,251,245,251,249,246,252,245,245,245,252,249,248,251,246,250,245,252,249,248,251,246,250,245,252,249,248,251,246,250,245,252,249,248,251,246,250,397,398,398,0,0,0,0,0,253,254,253,254,253,254,253,254,0,253,254,253,254,253,254,253,254,253,254,253,254,253,254,253,254,253,254,253,254,253,254,253,254,253,254,0,0,0,255,256,257,255,256,257,255,256,257,255,256,257,256,255,256,256,255,255,256,257,255,256,257,255,256,257,256,257,255,256,257,255,256,257,0,257,257,257,257,255,255,0,0,255,255,255,256,256,256,255,256,257,255,256,257,255,256,257,255,256,257,0,0,0,259,260,261,259,260,261,259,260,261,259,260,261,259,260,260,261,259,259,260,261,259,260,261,259,260,261,260,261,259,260,261,259,260,261,0,259,259,260,260,0,260,261,259,259,260,260,259,260,261,259,260,261,259,260,261,259,260,261,260,0,0,262,263,262,263,262,263,262,263,262,262,0,262,263,263,263,263,262,263,262,263,263,262,263,262,263,263,262,262,262,263,262,263,262,263,262,263,0,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,0,0,266,267,267,266,267,266,267,266,267,266,266,267,267,267,267,266,267,267,266,267,266,266,267,266,267,266,267,267,266,267,267,266,267,266,267,266,267,266,267,0,0,269,268,269,268,269,268,269,268,268,0,269,269,0,269,268,268,268,268,268,269,268,269,268,268,269,268,269,268,269,268,268,269,269,0,0,0,269,268,269,268,269,268,269,268,0,0,0,0,276,275,275,278,276,275,278,276,275,278,276,275,278,276,0,275,275,278,276,275,275,399,278,275,278,276,275,399,399,275,278,276,275,278,276,275,276,275,278,276,275,278,276,275,0,278,278,278,399,275,278,276,275,278,276,275,278,276,275,278,276,0,0,0,0,0,279,282,280,283,281,279,282,280,283,281,279,282,280,283,281,279,282,280,283,281,279,282,280,283,279,282,282,280,283,282,280,281,279,279,279,282,280,283,281,282,280,283,279,282,280,283,281,279,282,280,283,281,282,280,283,281,279,282,280,283,281,279,282,280,283,281,0,0,0,282,280,283,281,282,281,279,281,281,279,282,0,280,279,282,280,281,279,279,279,282,280,283,281,279,282,280,283,281,279,282,280,283,281,279,281,279,282,280,283,281,282,53,0,53,53,286,0,0,0,286,53,286,53,286,0,53,0,0,0,53,286,284,53,286,284,53,286,284,53,286,284,53,53,53,242,53,242,0,284,284,53,53,53,0,242,242,242,242,242,284,53,53,242,284,0,0,286,284,53,242,242,242,242,53,286,284,53,286,284,53,53,286,284,53,242,286,284,53,53,284,284,242,284,53,0,242,284,53,0,53,286,284,53,286,284,53,0,286,284,53,286,284,53,400,401,402,403,404,401,402,403,401,403,405,406,407,0,0,287,288,287,288,287,287,288,287,288,287,288,287,0,287,288,287,287,288,287,288,288,287,288,287,288,287,288,287,287,287,287,287,288,287,288,287,288,287,288,0,289,289,289,289,289,289,0,289,289,289,0,289,0,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,0,0,291,291,291,291,291,0,291,291,291,0,291,291,291,291,291,291,291,291,291,291,291,291,291,291,291,291,0,0,0,0,292,293,292,293,292,293,292,293,292,293,292,0,292,293,0,292,293,292,293,293,292,293,292,293,292,293,293,292,0,0,292,292,293,292,293,292,293,292,293,294,0,0,408,0,408,0,408,0,295,295,408,296,297,294,295,408,296,297,294,297,295,408,296,297,294,295,408,296,297,294,297,294,294,295,296,294,294,295,296,294,295,408,296,297,294,294,294,294,295,408,296,297,294,295,408,296,297,294,297,294,295,408,296,297,294,295,408,296,297,294,295,296,297,295,295,297,296,296,295,296,294,295,408,296,297,294,295,408,296,297,294,295,408,296,297,294,295,408,296,297,294,295,409,410,0,298,298,298,298,298,298,0,0,0,298,298,298,298,298,298,298,298,298,298,298,0,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,0,0,0,0,0,301,302,303,305,300,301,302,303,305,300,301,302,303,305,300,301,302,303,305,300,300,303,300,301,302,303,301,302,303,305,301,302,303,305,300,303,301,302,303,305,300,301,302,303,305,300,305,300,301,302,303,305,300,301,302,303,305,300,301,302,303,300,301,302,303,305,305,301,302,303,303,301,301,302,303,301,301,302,303,305,300,301,302,303,305,300,301,302,303,305,300,301,302,303,305,300,0,312,312,0,312,312,312,312,0,312,312,0,0,312,0,0,0,312,0,306,306,306,310,313,306,314,311,312,310,313,306,314,311,312,0,310,313,306,314,311,312,310,313,306,314,311,312,310,310,314,311,312,311,312,311,314,313,313,310,306,311,312,311,310,0,314,314,310,313,306,314,311,312,310,310,310,310,306,306,310,310,314,314,314,314,314,310,313,306,314,311,312,310,313,306,314,311,312,311,312,310,313,306,314,311,312,0,310,313,306,314,311,312,312,310,306,0,310,313,314,314,314,313,313,310,313,306,314,311,314,314,314,311,311,312,314,314,310,314,310,313,314,314,314,311,314,310,313,311,312,310,312,0,310,313,306,314,311,312,310,313,306,314,311,312,306,310,313,306,314,311,312,310,313,306,314,311,312,313,313,310,314,314,0,316,316,316,316,316,316,316,316,316,316,316,316,316,0,316,0,316,316,316,316,316,316,316,316,0,0,317,318,317,318,317,318,317,318,317,318,317,318,317,318,317,318,317,318,317,318,317,318,0,318,317,318,318,317,317,318,317,318,317,318,317,318,319,319,319,319,0,0,320,319,320,319,320,320,319,320,319,319,319,320,320,319,320,320,319,320,319,320,319,319,320,319,320,320,319,320,320,320,319,320,320,320,320,320,320,319,320,320,319,320,319,320,319,320,319,0,0,0,321,322,321,322,321,322,321,322,0,0,0,321,322,322,321,322,321,322,322,321,322,321,322,321,322,321,322,321,321,322,322,321,322,322,321,321,322,321,322,321,322,321,322,321,322,322,323,323,0,0,0,323,0,0,0,323,323,323,0,323,323,323,0,323,323,323,323,323,323,323,0,323,0,0,411,0,323,323,323,323,0,0,0,0,0,325,326,327,328,329,325,326,327,328,329,325,326,327,328,329,325,326,327,328,329,325,326,327,328,325,326,327,328,329,329,329,329,325,326,327,328,329,325,326,327,328,329,325,326,327,328,325,326,327,328,329,325,326,327,328,0,329,325,326,327,328,329,329,325,326,327,328,329,325,326,327,328,329,325,326,327,328,329,325,326,327,328,0,330,330,330,330,330,330,330,330,330,330,330,330,330,330,330,330,330,330,330,0,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,0,324,0,324,324,324,324,324,324,324,324,324,324,324,324,0,324,0,0,0,0,0,0,336,334,332,335,336,333,332,412,334,335,336,333,332,412,334,333,335,336,333,332,412,334,335,336,333,332,412,334,412,332,334,334,335,412,333,336,333,335,336,336,335,336,333,332,412,334,332,336,336,335,336,333,332,412,334,335,336,333,332,412,334,333,332,334,335,336,333,332,412,334,335,336,333,332,412,334,335,0,332,332,335,334,0,336,336,335,332,335,335,334,333,335,336,333,332,412,334,335,336,333,332,412,334,335,336,333,332,412,334,335,336,333,332,412,334,0,337,337,337,337,337,337,337,337,337,337,337,337,0,337,337,0,337,337,337,337,337,337,337,337,339,0,339,0,0,339,341,341,341,339,340,341,339,340,340,340,0,341,339,340,341,339,340,339,340,339,340,340,341,339,340,339,341,341,339,341,339,340,339,339,339,341,341,339,340,341,339,340,339,340,341,339,340,341,339,340,341,341,341,340,341,341,341,0,340,341,341,339,340,341,339,340,341,339,340,341,339,340,341,341,339,340,341,341,413,414,0,0,0,343,344,343,345,344,343,345,344,343,345,344,343,345,343,0,344,344,345,343,344,343,343,343,345,343,344,343,345,344,343,343,344,343,345,344,343,345,345,344,343,345,344,343,345,343,0,343,345,345,343,343,343,344,345,345,345,345,344,343,345,344,343,345,344,343,345,344,343,345],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[],2],0,0,0,[[3,4,5,6,[8,[7]]],[[11,[[10,[9]]]]]],0,0,0,0,0,0,0,0,[[12,12],5],[[3,4,5,[8,[13]],[8,[14]],6],[[11,[[10,[9]]]]]],0,0,[[]],[[]],[[]],[15,16],0,0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],0,0,[[]],0,0,0,0,0,0,[20],0,0,0,[[3,6]],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],0,0,[[],22],[[],22],[[],22],0,0,[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[23,24],25],0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[4],[[4,26]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[4,3,27,5,5,5],[[8,[28]]]],[[7,28],[[8,[29]]]],[[],2],[[4,3]],[7,13],0,[[4,3,[31,[30]]],[[8,[32]]]],[33,33],[[]],[4,34],0,0,0,0,0,0,[[4,35,36,27]],[[4,35]],[4,37],0,[[4,35,36]],[[4,26]],0,[[],38],[4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[15,33],[[4,39,40,41,27],[[11,[42]]]],0,0,[4,8],0,0,[[7,3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],0,[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,[[],43],[44,43],0,[[45,3,[31,[30]]],5],0,[[4,3,29,[8,[46]],[8,[28]]],[[10,[9]]]],[4,23],0,[[23,13,33,47,34,3,48],7],[[4,3,23,48]],0,[[4,3,27],[[8,[28]]]],[[4,3],[[8,[28]]]],[[4,3],[[8,[28]]]],[[4,3],[[8,[28]]]],[[4,3],[[8,[28]]]],[4,34],[4,37],[4,47],[[],43],[[],44],[[],45],[4,47],0,0,[4,49],0,0,[[4,3]],0,[45],0,[[50,13,23],5],0,0,0,[[4,8]],[28,5],[[44,28],5],0,0,0,0,0,0,[4,13],0,0,0,0,0,0,[4],[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],0,[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[],[[52,[30,[11,[51]]]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[53],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],0,[[3,4,8],[[10,[9]]]],[[3,4],[[10,[9]]]],[[54,3,4,24,55],[[56,[4]]]],0,[[57,4,53]],0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[58,[31,[30]]],58],[[58,3,[10,[59]]],[[10,[9]]]],[[60,35,4]],[[61,35,4]],[[60,3,4],[[56,[4]]]],[[61,3,4],[[56,[4]]]],[[58,24,46,[31,[30]]],58],[[],62],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[3,24,59,63],55],0,0,0,0,[24,58],[[3,64,62],[[10,[9]]]],0,0,[[58,[31,[30]]],58],0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],0,0,[[]],0,0,0,0,[[],1],[[],1],[[]],[[]],0,[[4,65,65],[[11,[66]]]],[[4,67],62],[[4,68],62],[[3,4],[[8,[[56,[4]]]]]],[[69,35,4]],[[35,4,70]],[[35,4]],[[69,3,4,71],[[8,[[56,[4]]]]]],[[]],0,[[69,4],[[8,[28]]]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[65,[[10,[72]]]],[[69,3,4,73,71]],[[70,59,[74,[30]]]],[[],69],[[4,28],70],0,0,0,[[3,4]],[3,55],[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,0,0,[[75,4,32]],[[76,4],[[11,[77]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[75,75],[78,78],[[]],[[]],[[76,35]],[[75,75],5],[[78,78],5],[[76,3,4],5],[[]],[[]],[[]],0,[[76,3],64],[[75,32],[[8,[63]]]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[76,5],[76,5],[[],5],[[],5],[[],5],0,[[76,3],[[8,[32]]]],[[75,23,63,32],63],[4,76],[[],75],[[76,24],5],0,0,0,[[]],[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[76,3,4]],[[76,4]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[79,35,4,5]],[[79,3,4,[8,[24]]],5],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[79,3],64],0,[[3,4,[74,[77]]],79],0,0,[[79,3,4]],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[],[[21,[80]]]],[[81,35,4]],[[80,82],83],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],80],0,[[3,4,24],[[10,[9]]]],[[81,3,4,24,55],[[56,[4]]]],[30],[80,21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],0,0,[[]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[84,35,4]],[[85,35,4]],[[84,3,4],[[56,[4]]]],[[85,3,4],[[56,[4]]]],[[]],[[]],0,[[3,4,24],[[8,[[56,[4]]]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,29,[8,[46]],[8,[28]],7],[[10,[9]]]],[3,[[10,[9]]]],0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],[[3,4,24],[[56,[4]]]],0,0,0,0,0,0,[[86,4,28],11],0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[3,4]],0,[[87,87]],[[88,35,4]],[[89,35,4]],0,[[3,4],90],[[3,4],90],[[3,4],90],[88,91],[[88,3,4],[[56,[4]]]],[[89,3,4],[[56,[4]]]],[[86,3,4,28,30,5],[[56,[4]]]],[4],[4],[4],0,[[]],[[]],[[]],[[]],[86,53],0,0,[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[86,5],[[],5],[[],5],[[],5],[[],5],[88,43],0,[[3,4],[[10,[9]]]],[[3,4,[11,[92]]],[[10,[9]]]],0,0,0,0,0,0,0,[[3,4,[8,[[11,[93]]]]],[[10,[9]]]],[[88,3]],0,0,[[30,3,4],[[56,[4]]]],0,0,[[88,28],5],0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],0,[[]],[[]],[[]],[[]],0,0,[[94,4,95],8],0,[[],1],[[],1],[[]],[[]],[[94,35,4]],[[94,3,4],[[56,[4]]]],[[94,3,4]],[[]],0,[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,4],[[10,[9]]]],0,0,[[94,95],96],[[94,4,95]],[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,[[97,3,4,98,62,99]],[[97,3,4,[11,[100]],48]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[98,98],[[]],[[98,98],101],[[97,35,4]],[[102,35,4]],0,[[98,98],5],[[],5],[[97,3,4],[[56,[4]]]],[[98,82],83],[[]],[[]],[[]],[[],103],[[],103],[98],0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[3,55],[97,98],[[3,4],[[10,[9]]]],[[3,4,99],[[10,[9]]]],[[102,3,4,24,55],[[56,[4]]]],[[102,3,4],[[56,[4]]]],0,[[98,98],[[8,[101]]]],0,0,[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[104,23,105]],[104,104],[[]],[[106,35,4]],0,[[106,3,4],[[56,[4]]]],[[3,4,107],[[10,[9]]]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4,104,105],[[10,[9]]]],0,[[3,4,107],[[10,[9]]]],0,[[]],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,[[],1],[[],1],[[]],[[]],[[28,23,13]],[[108,35,4]],[[28,23,13]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],0,[[3,4,32],[[10,[9]]]],[[109,35,4]],0,[[109,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],0,0,[[],21],[[],21],[[],22],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[110,35,4]],[[110,3,4],[[56,[4]]]],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],0,[[3,24,[11,[111]],[8,[29]]],[[10,[9]]]],0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[4,112,48],[[113,[77]]]],[55],0,0,[[114,35,4]],[[115,35,4]],[[116,35,4]],0,0,[[114,3,4],[[56,[4]]]],[[115,3,4],[[56,[4]]]],[[116,3,4],[[56,[4]]]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[3,4,117,118],[[8,[[10,[9]]]]]],[[3,4,119],[[10,[9]]]],[[3,4],[[10,[9]]]],0,0,0,[[3,120,121],64],[[114,3,4]],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,[[],1],[[],1],[[]],[[]],[[122,35,4]],[[122,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,79],55],[[3,4,77],[[10,[9]]]],0,0,[[],21],[[],21],[[],22],[[]],0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[123,35,4]],[[124,35,4]],0,[124,91],[[]],[[]],0,0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],0,0,[[3,4,32],[[10,[9]]]],[[3,4,[74,[32]],63,5],[[10,[9]]]],[[123,3,4,24,55],[[56,[4]]]],[[124,3,4,24,55],[[56,[4]]]],[[123,3,4]],[[123,3,4],[[56,[4]]]],[[124,3,4],[[56,[4]]]],[[124,3,4,55],[[8,[[56,[4]]]]]],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,[[],1],[[],1],[[]],[[]],0,0,0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],0,[[3,4],[[10,[9]]]],[[125,3,4,24,55],[[56,[4]]]],0,0,0,[[],21],[[],21],[[],22],[[]],0,0,[[3,4,126,[11,[63]]],[[128,[127]]]],[[129,126],[[11,[63]]]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[130,35,4]],[[129,129],5],[[130,3,4],[[56,[4]]]],[[]],[[]],[55,129],[[3,4,126,[11,[63]]],[[128,[127]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[3,64],[[],129],[[3,4],[[10,[9]]]],0,[[63,63],46],0,0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,[[],1],[[],1],[[]],[[]],0,[[131,35,4]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,4,30,30],[[10,[9]]]],[[131,3,4,24,55],[[56,[4]]]],[[131,3,4],[[56,[4]]]],[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],[[132,35,4]],0,[[132,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,4,[113,[133]],[8,[134]]],[[10,[9]]]],[[3,4,135],[[10,[9]]]],0,0,[[],21],[[],21],[[],22],[[]],0,0,0,0,[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],0,[[136,35,4]],0,0,[[136,3,4],[[56,[4]]]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[4,[8,[30]],5,48]],[[34,137,[52,[30,30]],[11,[29]],24,63],138],[[4,24]],[[3,4,[8,[30]]],[[10,[9]]]],0,0,0,[[3,4],[[56,[4]]]],0,0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,[[],1],[[],1],[[]],[[]],[[139,35,4]],0,[[139,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],0,[[3,4,30,[11,[140]]],[[10,[9]]]],0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],[[141,35,4]],0,[[141,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[135,3,4],[[10,[9]]]],0,0,[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[142,142],[143,143],[[]],[[]],[[],[[21,[143]]]],0,[[144,35,4]],[[145,35,4]],[144,91],[146,91],[145,91],[[142,142],5],[[],5],[[144,3,4],[[56,[4]]]],[[145,3,4],[[56,[4]]]],[[142,82],83],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[3,4,147],[[10,[9]]]],[[],103],[[],103],[142],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,[[4,143],[[8,[147]]]],0,0,0,0,[[],147],0,[[3,4],[[10,[9]]]],[[3,63,24],[[10,[9]]]],[[146,3,4,24,55],[[56,[4]]]],0,0,[[144,3]],[[144,3,4]],[[147,4]],[143,21],0,[[]],[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[[3,4,14]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[4,107],5],0,0,0,0,[148,[[8,[28]]]],0,0,0,[[149,35,4]],[[150,35,4]],[[151,35,4]],[[152,35,4]],0,[[149,3,4],[[56,[4]]]],[[150,3,4],[[56,[4]]]],[[151,3,4],[[56,[4]]]],[[152,3,4],[[56,[4]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[3,4],55],[[3,4],55],0,[[3,4,32,53],[[8,[[10,[9]]]]]],0,0,0,[[3,4,53],[[10,[9]]]],[[3,4,[31,[30]],5,[8,[[56,[4]]]],[10,[59]]],[[10,[9]]]],[[3,4,53],[[10,[9]]]],[[3,[10,[59]]],[[10,[9]]]],0,0,0,0,0,0,[[149,3,4],[[56,[4]]]],[[150,3,4]],0,0,0,[[4,[8,[153]]],[[11,[[154,[153]]]]]],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],0,[[]],[[]],[[]],[[]],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[155,155],[[]],[[156,35,4]],[[155,155],5],[[],5],[[156,3,4],[[56,[4]]]],[[155,82],83],[[]],[[]],[[],103],[[],103],[155],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4,32],[[10,[9]]]],0,[[]],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,[[],1],[[],1],0,0,[[]],[[]],0,0,[[157,35,4]],0,[[157,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,4,77,158,158,14],[[10,[9]]]],0,[[157,3,4]],0,[[157,3,4]],0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],[[3,4,[8,[107]],[8,[107]]]],[159,5],[[160,4],[[8,[14]]]],[[3,4,77,[8,[107]]],[[10,[9]]]],[[160,35,4]],[[4,77,63,63],161],0,[[160,3,4],[[56,[4]]]],[[4,77],161],0,[[]],0,[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[160,4,63],107],0,[159,[[8,[24]]]],0,[[3,4,162,[8,[107]],[8,[107]]],55],[[3,4,63,5,77,158],55],[[160,3,4,[8,[163]],59],[[56,[4]]]],[[3,4,107],[[10,[9]]]],[[3,4,77],[[10,[9]]]],0,0,0,[[160,3,4]],[[160,3,4]],[[160,3,4]],0,0,[3,62],0,[[],21],[[],21],[[],22],[[]],[[4,107],[[11,[[154,[164]]]]]],0,[[],1],[[],1],[[]],[[]],[[165,35,4]],[[165,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,4,166],[[10,[9]]]],0,0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],[[167,35,4]],[[]],0,0,[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],0,[[3,4,32,53],[[10,[9]]]],[[167,3,4,24,55],[[56,[4]]]],[[167,3,4]],[[167,3,4],[[56,[4]]]],0,[[],21],[[],21],[[],22],[[]],0,0,[[168,3,4,63,59]],[[169,4]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[168,3,4,63]],[[4,74],[[8,[169]]]],[169,169],[[]],0,[[169,3,4]],0,[[168,35,4]],[168,91],0,[[3,4,74,63],161],0,[[169,169],5],[[168,3,4],[[56,[4]]]],[[4,74],161],0,[[]],[[]],[[4,74],169],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4,74,63],55],[[3,4,5,5],55],0,0,0,0,[[3,4,[74,[32]],53],[[10,[9]]]],0,0,0,0,[[168,3,4]],0,0,0,[[[11,[118]]],11],[[4,74],169],[[]],0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[168,4],25],[[]],[[]],0,0,[[],1],[[],1],[[]],[[]],[170,91],[[3,4,32,53,169],[[10,[9]]]],[[]],0,[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],[[3,4,171,63],[[10,[9]]]],[[170,3,4,24,55],[[56,[4]]]],[[170,3,4],[[56,[4]]]],[[170,3,4,55],[[8,[[56,[4]]]]]],[[],21],[[],21],[[],22],[[]],0,0,[[171,23]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[172,24],[[],[[21,[173]]]],[[173,82],83],[[]],[[]],0,[[174,24,23],[[25,[175]]]],0,[[23,32,24],[[25,[171]]]],[[3,4,24],[[10,[9]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],0,0,[[23,32],[[25,[174]]]],0,[176,25],[176,[[25,[[11,[177]]]]]],0,0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[178,35,4]],[[179,35,4]],[[180,35,4]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],0,0,0,0,0,0,[[3,4,[74,[32]]],[[10,[9]]]],[[3,4,32,[74,[32]]],[[10,[9]]]],[[3,4,32,32,[74,[32]]],[[10,[9]]]],[[178,3,4,24,55],[[56,[4]]]],[[179,3,4,24,55],[[56,[4]]]],[[180,3,4,24,55],[[56,[4]]]],[[178,3,4]],[[179,3,4]],[[178,3,4],[[56,[4]]]],[[179,3,4],[[56,[4]]]],[[180,3,4],[[56,[4]]]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,[[],1],[[],1],[[]],[[]],[[181,35,4]],[[181,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,63],64],0,0,[[3,[74,[32]],53],[[10,[9]]]],0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],[[182,35,4]],[[182,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,4,[74,[32]],63],[[10,[9]]]],[[3,4],[[10,[9]]]],0,0,[[],21],[[],21],[[],22],[[]],[[3,4,148],[[8,[[10,[9]]]]]],[[3,4,148],[[8,[[10,[9]]]]]],[23,[[11,[148]]]],0,0,[[],1],[[],1],[[]],[[]],[[183,35,4]],0,[[3,4,74]],[[183,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,74],64],[[3,4,77],[[10,[9]]]],0,0,0,[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[4,28],11],[[184,4],[[8,[28]]]],[184,11],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[73,55],[[8,[73]]]],[73,73],[185,185],[186,186],[[]],[[]],[[]],[[4,187],62],0,[185,[[188,[30]]]],[186,[[188,[30]]]],0,0,[[71,4,189,190]],[[184,35,4]],0,0,[[185,185],5],[[186,186],5],[[184,3,4,71]],[[3,4,28,30,5],[[56,[4]]]],[[]],[[]],[[]],[[]],[[]],[55,185],[55,186],[[4,28],73],[[],53],[3,64],0,0,0,[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],0,[[],5],[[],5],[[],5],[[],5],[[],5],0,[[3,11],[[11,[64]]]],[[3,137,73,11],64],[[3,4,73,71],184],[[],185],[[],186],0,0,0,[[3,4,24,59,186],64],0,0,0,0,0,[[3,4,24,59,185],64],0,0,0,[[185,3,4],64],[[186,3,4],64],[[73,4],[[8,[28]]]],[[]],[[]],[[]],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[73],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[191,4,133,[8,[192]]]],[[3,4,191,133,73],64],[[3,4,191,133],64],[[3,4,191,133],64],[[3,4,191,133],64],[[3,4,191,133],64],[[3,4,191,193],64],[[3,4,193],64],[[3,4,191,32,185],64],[[3,4,191,32],64],[[3,4,32],64],[[3,4,191,32,185,5],64],[[3,4,32,185,5],64],[[3,4,32,185,5],64],[[3,4,191,32,73],64],[[3,4,191,32],64],[[3,4,32],64],[[3,4,191,32,186],64],[[3,4,32,186],64],[[3,4,191,32,185],64],[[3,4,32,185],64],[[3,4,191,32],64],[[3,4,32],64],[[3,4,191,107],64],[[3,4,107],64],[[3,4,191,107,73],64],[[3,4,191,107],64],[[3,4,107],64],[[3,4,191,107,186],64],[[3,4,107,186],64],[[3,4,191,107,185],64],[[3,4,107,185],64],[[3,191,194,73],64],[[3,4,191,194],64],[[3,4,194],64],[[3,4,191,192,5],64],[[3,4,191,192],64],[[65,65],66],[[3,4,191],64],[[3,4,191],64],[[3,195,23],64],[[3,4,191,192,73,5],64],[[3,4,191,196,5],64],[[3,4,191,196],64],[[3,4,191,192,5],64],[[3,4,192],64],[[3,4,191,192,52,5],64],[[3,4,191,192,52],64],[[3,4,191,196,73],64],[[3,4,191,196],64],[[3,4,191,196],64],[197,70],[[3,4,191,166],64],[[3,4,191,166],64],[[3,4,191,198],64],[[3,4,191,198],64],0,[[],1],[[],1],[[]],[[]],0,[[3,4,189,199,191],64],[199,199],[[]],[[3,49,189,200,201],64],[[3,4,49,191,189,23]],[[119,4]],[[199,199],5],[[3,4,192,52,189,191],64],[[]],[[3,4,189,199,191],64],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],[[3,62,5,202,23,203],64],[[3,4,189,[8,[46]]],64],[[3,4,189,199,191,[11,[204]],23,[8,[46]]],64],[[],199],[[3,4,189,95,199,191],64],0,[189,[[52,[189,199]]]],[[]],[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[35,4]],[[205,35,4]],[205,91],[35],0,[[3,4],[[8,[206]]]],[[205,3,4],[[56,[4]]]],0,[[]],[[]],[[3,24],64],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],0,[[],[[8,[24]]]],0,0,0,[[3,4],[[10,[9]]]],0,0,0,[[3,55],[[8,[206]]]],0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[3,4],[[8,[[56,[4]]]]]],[[]],[[]],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[207,35,4]],[[208,35,4]],0,0,[[207,35]],[[208,35]],[[207,3,4],[[8,[206]]]],[[208,3,4],[[8,[206]]]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4]],[[3,4,164,164]],[3],[207,[[8,[24]]]],[208,[[8,[24]]]],[[3,4],207],[[3,4],208],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,[[4,133]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[4,133],5],[[],[[21,[209]]]],[[210,35,4]],0,[[210,35]],[[210,3,4],[[8,[206]]]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[4,209],[210,[[8,[24]]]],[[3,4],210],0,[4,30],[[4,133]],[209,21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,[[3,4],211],[[],1],[[],1],[[],1],[[],1],[[3,4],211],[[]],[[]],[[]],[[]],[[212,35,4]],[[211,35,4]],0,0,[[212,35]],[[211,35]],[[3,4],211],[[212,3,4],[[8,[206]]]],[[211,3,4],[[8,[206]]]],[[]],[[]],[[3,4],211],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[212,[[8,[24]]]],[211,[[8,[24]]]],0,[[3,4],212],[[3,213,24,30,64],211],[[3,4],211],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[214,214],[215,215],[[]],[[]],[[216,35,4]],0,[[216,35]],[[214,214],5],[[215,215],5],[[216,3,4],[[8,[206]]]],[[214,82],83],[[]],[[]],[[]],0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[3,4,215,[8,[64]]],55],[216,[[8,[24]]]],[[3,4,215],216],[216,215],0,0,0,0,[[]],[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[217,217],[[]],[[217,217],101],[[218,35,4]],[[219,35,4]],0,0,[[218,35]],[[219,35]],[[217,217],5],[[],5],[[218,3,4],[[8,[206]]]],[[219,3,4],[[8,[206]]]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],0,0,[218,[[8,[24]]]],[219,[[8,[24]]]],[[3,4,5,5,5,5,5],218],[[3,4],219],[220,217],0,0,0,[[217,217],[[8,[101]]]],0,0,0,[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[221,221],[[]],[[222,35,4]],0,[[222,35]],[[221,221],5],[[222,3,4],[[8,[206]]]],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4,221,[8,[64]]],55],[222,[[8,[24]]]],[[3,4,221],222],[222,221],0,0,0,[[]],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[223,223],[[]],[[224,35,4]],0,[[224,35]],[[223,223],5],[[224,3,4],[[8,[206]]]],[4,[[25,[30]]]],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4,223,[8,[64]],63],55],0,[224,[[8,[24]]]],[[3,4,223],224],[4,223],[[224,4],223],0,0,[[223,200,190,225],5],0,0,0,[[]],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],0,[[]],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],0,0,[[]],[[]],[[]],[[]],[226,226],[[]],0,[[227,35,4]],0,[[227,35]],[[226,226],5],[[227,3,4],[[8,[206]]]],[[]],[[]],[55,226],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,226,64],55],[227,[[8,[24]]]],[[3,4,226],227],[[],226],0,0,[[226,225],5],0,[[226,3],64],[[]],0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,0,0,[[228,23,32],5],0,[[228,23],[[11,[118]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[23,11],11],[[229,35,4]],[[230,35,4]],[[231,35,4]],[[232,35,4]],[[233,35,4]],[[234,35,4]],0,0,0,0,0,[[229,35]],[[230,35]],[[231,35]],[[232,35]],[[233,35]],[[234,35]],0,[[229,3,4],[[8,[206]]]],[[230,3,4],[[8,[206]]]],[[231,3,4],[[8,[206]]]],[[232,3,4],[[8,[206]]]],[[233,3,4],[[8,[206]]]],[[234,3,4],[[8,[206]]]],[4,25],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[229,[[8,[24]]]],[230,[[8,[24]]]],[231,[[8,[24]]]],[232,[[8,[24]]]],[233,[[8,[24]]]],[234,[[8,[24]]]],[[3,4],229],[[3,4,[74,[67]]],230],[[3,4],231],[[3,4],232],[[3,4],233],[[3,4],234],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],1],[[],1],[[]],[[]],[[235,35,4]],0,[[235,35]],[[235,3,4],[[8,[206]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[235,[[8,[24]]]],[[3,4,5,5,5],235],0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],[[3,4,[11,[24]]],[[10,[9]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],[[3,4],[[10,[9]]]],0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],[[3,4,236],[[56,[4]]]],[[3,[8,[30]]],[[10,[9]]]],[[237,3,4,24,55],[[56,[4]]]],0,[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[238,4,28],11],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[4,53,[10,[72]]],[[10,[9]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[239,238],0,0,[[239,35,4]],[[240,35,4]],[[241,35,4]],[[239,3,4],[[56,[4]]]],[[240,3,4],[[56,[4]]]],[[241,3,4],[[56,[4]]]],[[238,3,4,28,30,5],[[56,[4]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[238,53],0,[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[4,5],[238,5],0,[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[3,[[56,[4]]]],0,0,0,0,[[3,4]],[[3,4,242],243],[[239,3,4]],0,[[243,3,4]],0,[[4,53],[[10,[9]]]],0,0,0,[4,[[10,[9]]]],0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[244,244],[[]],0,[[244,244],5],[[244,82],83],[[]],0,[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],[[244,3,4],[[10,[9]]]],0,0,0,[[244,3,4],64],0,0,[[244,4,55],[[8,[244]]]],[[]],0,[[244,3,4,55],[[8,[[56,[4]]]]]],0,0,0,[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[245,246,3,4]],[[247,248,23],118],0,[246,246],[[]],[[245,249],11],0,0,0,[[245,35,4]],0,[[246,246],5],[[250,250],5],[[245,3,4],[[56,[4]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[4,48],25],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[3,4],55],0,0,[[3,4],[[10,[9]]]],0,[4,[[11,[251]]]],0,[[245,[8,[252]],3,4]],0,0,[[]],0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[4,63],[[56,[4]]]],[[35,4,189,161]],[[35,4,55,161,[8,[90]]]],0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[11,11],[[253,35,4]],[[254,35,4]],[[253,3,4],[[56,[4]]]],[[254,3,4],[[56,[4]]]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4],[[10,[9]]]],[[3,4],[[10,[9]]]],0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,[[255,35,4]],0,0,[[255,3,4],[[56,[4]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[3,4],[[258,[4,256,257]]]],0,0,0,0,[[3,4],[[10,[9]]]],0,[[3,4],[[11,[256]]]],[[3,4,258],90],0,0,0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[259,35,4]],0,0,0,[[259,3,4],[[56,[4]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[4,[[258,[4,260,261]]]],[[3,4],[[10,[9]]]],0,0,0,[4,[[11,[260]]]],0,0,0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[262,35,4]],[[262,3,4],[[56,[4]]]],[4,[[25,[30]]]],[[]],[[]],[263,5],0,[[263,120],5],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],0,[[3,4,5],[[10,[9]]]],0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,[[],1],[[],1],[[]],[[]],0,[[264,35,4]],[[264,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,[19,[[265,[[8,[118]]]]]]],[[10,[9]]]],0,0,[[],21],[[],21],[[],22],[[]],0,0,[[4,48],[[137,[32,266]]]],0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[266,190],[[113,[175]]]],[[267,35,4]],[267,91],[[267,3,4],[[56,[4]]]],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4],[[10,[9]]]],0,0,[[267,3,4]],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[3,4,268],64],[[269,35,4]],[[269,3,4],[[56,[4]]]],[4,[[25,[30]]]],[[]],[[]],[[268,4],11],[268,5],0,[[268,120],5],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4,268],55],0,[[],268],[[3,4,268],[[10,[9]]]],0,[[65,65],46],[[3,4,268],64],[[3,4,268],64],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,[[[275,[[0,[270,271]],[0,[272,273,274]],[0,[272,273,274]]]],[0,[270,271]],[0,[272,273,274]],[0,[272,273,274]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[63,[[11,[163]]]],0,0,0,[276,277],[[[275,[[0,[270,271]],[0,[272,273,274]],[0,[272,273,274]]]],3,4,[278,[[0,[272,273,274]],[0,[272,273,274]]]]],64],0,[4,63],0,[[]],[[]],[[]],[[[275,[[0,[270,271]],[0,[272,273,274]],[0,[272,273,274]]]],63,63],63],[[],5],[120,5],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[[11,[[0,[272,273,274]]]],[11,[[0,[272,273,274]]]]],[[275,[[0,[270,271]],[0,[272,273,274]],[0,[272,273,274]]]]]],[[3,4,11],64],0,0,0,[[4,187],11],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[279,35,4]],0,0,0,0,0,0,0,[[279,3,4],[[56,[4]]]],0,[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[4,[[258,[4,280,281]]]],[4,[[258,[4,282,281]]]],[4,[[258,[4,283,281]]]],0,0,0,0,0,0,[[3,4],279],0,0,0,0,[4],0,0,0,0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],0,0,[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[53,14],5],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[53,5],[53,5],[[],5],[53,5],[[],5],[[3,24],64],0,0,[53,53],[[]],[[53,53],101],0,[[[10,[242]]],[[21,[[10,[242]],[10,[242]]]]]],[242,8],[[[19,[242]]],[[21,[[19,[242]],[19,[242]]]]]],[242,8],[[35,4]],[[284,35,4]],[[53,53],5],[[],5],[[3,4,243,238],[[8,[[56,[4]]]]]],[[284,3,4],[[56,[4]]]],0,0,[[]],[[]],[[]],[[],5],[[],5],[[],5],[[],5],[[53,3,4],[[10,[242]]]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[242,5],[[],5],[[],5],[[],5],[53,92],[[3,30,53,[8,[53]]],[[10,[9]]]],0,[4],0,[[53,53],[[8,[101]]]],0,[[3,4]],0,[[53,4,285,48],286],0,[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],0,[[],22],[[],22],[[],22],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[287,35,4]],[[288,35,4]],[[287,3,4,243,238],[[8,[[56,[4]]]]]],[4,8],[[]],[[]],[287,5],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,30,5],[[10,[242]]]],[[288,3,4,24,55],[[56,[4]]]],0,[[287,3,4]],0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,[[],1],[[],1],[[]],[[]],[[3,4,53],[[10,[9]]]],[[3,4,53],[[10,[9]]]],[53,[[10,[59]]]],0,[[289,35,4]],[[289,3,4,243,238],[[8,[[56,[4]]]]]],[[3,4,53,65,65,65],[[10,[9]]]],[[]],[4],0,[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],0,[[3,4,290,65],[[10,[242]]]],0,0,[[289,3,4]],0,0,0,[[],21],[[],21],[[],22],[[]],0,0,[[],1],[[],1],[[]],[[]],[[3,4,53],[[10,[9]]]],[3,64],0,[[291,35,4]],[[291,3,4,243,238],[[8,[[56,[4]]]]]],[[3,4,53,5],[[10,[9]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],0,[3,[[10,[242]]]],[[291,4]],[[291,3,4]],0,0,[[],21],[[],21],[[],22],[[]],0,0,0,[[4,28],11],0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[292,35,4]],[[293,35,4]],[[292,3,4,243,238],[[8,[[56,[4]]]]]],[[3,4,28,24],[[56,[4]]]],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,4],[[10,[242]]]],[[3,4,24],[[10,[9]]]],[[293,3,4,24,55],[[56,[4]]]],[[292,3,4]],[[32,4]],0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[294,294],[[]],[[295,35,4]],[[296,35]],[[294,294],5],[[],5],[[295,3,4],[[56,[4]]]],[[296,3],5],[[294,82],83],[[]],[[]],[[]],[[]],[[]],[[],103],[[],103],[294],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[3,296],[[4,118],297],[3,[[10,[9]]]],0,0,0,0,[[295,3,4]],0,[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[],1],[[],1],[[]],[[]],[[],[[21,[298]]]],[[]],[3,[[56,[4]]]],[3,[[56,[4]]]],[[23,30,48],[[25,[30]]]],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],0,0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],[[]],[[]],0,[[299,35,4]],[[299,3,4],[[56,[4]]]],[[]],0,[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],[[3,4,[8,[133]]],[[10,[9]]]],0,0,[[],21],[[],21],[[],22],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[300,120,190,190],63],0,0,[[301,35,4]],[[302,35,4]],[[303,35,4]],[[301,3,4,243,238],[[8,[[56,[4]]]]]],[[302,3,4],[[56,[4]]]],[[303,3,4],[[56,[4]]]],0,[[]],[[]],[[]],[[]],[[]],[[303,4]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,[4,300],[[3,4,24,[11,[304]]],[[10,[242]]]],[[3,30,[11,[304]]],[[10,[9]]]],[[3,4,30,[11,[304]]],[[10,[9]]]],[[3,4],[[10,[9]]]],[[305,3,4,24,55],[[56,[4]]]],[[301,4]],0,0,[[303,3,4]],[[301,3,4]],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[4,28],11],0,[[306,307],306],0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[308,309],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[310,5],[310,5],0,[311,311],[312,312],[[]],[[]],[[311,311],101],0,[[313,[10,[59]]],313],0,[[310,35,4]],[[306,[10,[59]]],306],[[311,311],5],[[312,312],5],[[],5],[[310,3,4,243,238],[[8,[[56,[4]]]]]],[[3,4,28,24],[[56,[4]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[310,5],[310,5],[310,5],[310,5],[[306,24],306],0,[[3,4]],[[310,3,4,243,314],[[8,[[56,[4]]]]]],0,0,0,0,[314,312],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[3,[[10,[9]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[312,24],0,[306,306],[23,315],[[3,4,311],[[10,[242]]]],0,[[314,3,4],[[10,[242]]]],[[314,3,5],55],[314,[[8,[306]]]],0,[[313,306],313],0,[312,313],[70,306],[[3,4],314],[[63,63],311],[314],0,0,0,[[311,311],[[8,[101]]]],[[312,312],[[8,[101]]]],0,[314],[[310,3,4]],[314],[[4,311],[[8,[315]]]],[[313,315],313],[23,[[11,[315]]]],0,[314,313],0,0,[[3,4],[[10,[9]]]],0,[[]],[[]],0,[[312,3,314],70],[[4,314],[[56,[4]]]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],0,[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[313,28,[8,[46]]],313],0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[316,35,4]],[[]],[[316,4],5],[[316,4],5],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],[[3,4],[[11,[64]]]],[[316,3,4],64],[[3,4],64],[[316,3,4],55],[[316,3,4],64],[[316,3,4,55]],[[316,3,4,24],[[8,[[56,[4]]]]]],[[],21],[[],21],[[],22],[[]],0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[317,35]],[[318,35,4]],[[317,3,4],[[8,[[56,[4]]]]]],[[318,3,4],[[56,[4]]]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[3,63],64],0,[[],317],[[3,[74,[32]]],[[10,[9]]]],0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[319,319],[[]],[[320,3,4],64],[[320,35]],[[319,319],5],[[320,3,4,[8,[53]]],[[8,[[56,[4]]]]]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[320,5],[[],5],[[],5],[[3,4],320],0,0,[[319,319],[[8,[101]]]],[[320,3,4]],0,[[320,3,4]],[[320,3,4,319]],0,0,[[]],[[320,3,4],64],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,[[11,46,46],118],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[3,65],64],[[3,190],64],[[63,63],30],[[321,35,4]],[[322,35,4]],[322,91],[[321,3,4],[[56,[4]]]],[[322,3,4],[[56,[4]]]],[[]],[[]],0,[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],0,[[3,4,[8,[53]]],[[10,[9]]]],[[3,4,190,[8,[65]]],[[10,[9]]]],[[322,3,4]],0,0,0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],0,[[]],[[]],[[323,323],5],0,[[]],[[323,3,4,24],[[8,[[56,[4]]]]]],[[]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[[],5],0,[[323,3,4,64],55],0,0,[[],324],0,[[],21],[[],21],[[],22],[[]],0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[325,62],[326,62],[327,62],[328,62],[[329,35]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[162,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[3,4],329],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],0,[[],1],[[],1],[[]],[[]],[[330,35,4]],[[330,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],0,[[3,4,324],[[10,[9]]]],[330,324],0,[[],21],[[],21],[[],22],[[]],0,[[],1],[[],1],0,[[]],[[]],[[324,35,4]],0,[[324,3,4],[[8,[[56,[4]]]]]],0,[[]],[[324,3,4,24]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],0,[324,307],[[62,24],331],[[324,3,4],64],[3,64],0,0,[[3,4],324],0,0,[[324,3,4]],0,[[],21],[[],21],[[],22],[[324,3,4]],[[]],[3],0,0,0,0,0,0,0,0,0,[[332,333],5],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],332],[[],334],[334,70],[[335,35,4]],0,0,[3,336],0,[[335,3,4],[[56,[4]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[55,332],[[3,4,135,48],336],0,[[]],[[]],[[]],[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[3,4],55],0,0,[[3,4,324],[[10,[9]]]],0,[[63,63],46],[[336,3,4,48]],0,[335,324],[[332,3],64],0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],1],[[],1],[[]],[[]],[[337,35,4]],[[337,3,4],[[56,[4]]]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[19,[[19,[1]]]],[[],5],0,[[3,4,[11,[77]],[8,[338]]],[[11,[30]]]],0,[[3,4,324],[[10,[9]]]],[[3,4],64],0,[337,324],0,[[],21],[[],21],[[],22],[[337,3,4]],[[]],0,0,0,0,0,0,0,[4,8],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,0,[[3,4],64],[[]],[[]],[[]],[[]],[[]],[[]],[339,339],[340,340],[[]],[[]],[[],340],[[341,35,4]],[[339,339],5],[[340,340],5],[[],5],[[341,3,4],[[56,[4]]]],0,[[339,82],83],[[]],[[]],[[]],[[],103],[[],103],[339],0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],0,0,[341,342],[340,24],[[3,4,324],[[10,[9]]]],[[341,3,4]],[[341,3,4]],0,[340,121],[[341,3,4]],[341,324],[[]],[[]],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[341,3,4,64]],[[]],[[]],[[]],0,0,0,0,0,0,0,[[3,4,[11,[119]],343,340],344],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,[[4,345,345,340],70],0,0,0,[[343,35,55]],0,0,0,0,[[345,345],5],[[343,3,4,346,55],[[8,[[56,[4]]]]]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[[[10,[17]]],[[10,[1,17]]]],[18,[[18,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[19,[[19,[1]]]],[[],5],[[],5],[[],5],[[3,4,[11,[119]]],344],[[3,4,345,11],64],[[3,4,[11,[119]],62,[8,[62]],340],344],0,0,0,0,0,0,0,0,0,0,[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],22],[[],22],[[],22],[[]],[[]],[[]]],"p":[[8,"Any"],[3,"App"],[3,"EventCtx"],[3,"App"],[15,"bool"],[3,"Setup"],[3,"PerMap"],[4,"Option"],[8,"State"],[3,"Box"],[3,"Vec"],[4,"Mode"],[3,"Sim"],[3,"MapEdits"],[3,"ArgMatches"],[3,"Args"],[3,"Global"],[3,"Arc"],[3,"Rc"],[3,"Settings"],[4,"Result"],[3,"TypeId"],[3,"Map"],[15,"str"],[6,"Result"],[3,"Canvas"],[8,"ShowObject"],[4,"ID"],[3,"Pt2D"],[3,"String"],[8,"Into"],[3,"IntersectionID"],[3,"Flags"],[3,"ColorScheme"],[3,"GfxCtx"],[3,"DrawOptions"],[3,"DrawMap"],[3,"SessionState"],[3,"Bounds"],[3,"Prerender"],[3,"AgentCache"],[8,"Renderable"],[3,"ShowLayers"],[3,"ShowEverything"],[3,"PerObjectActions"],[15,"f64"],[3,"Options"],[3,"Timer"],[3,"Analytics"],[3,"FindDelayedIntersections"],[3,"Challenge"],[3,"BTreeMap"],[4,"GameplayMode"],[3,"ChallengesPicker"],[3,"Panel"],[4,"Transition"],[3,"HighScore"],[3,"CutsceneBuilder"],[8,"Fn"],[3,"CutscenePlayer"],[3,"ShowMessage"],[3,"Color"],[15,"usize"],[3,"Widget"],[3,"Duration"],[3,"TextSpan"],[4,"AgentType"],[4,"TripPhaseType"],[3,"CommonState"],[3,"Text"],[8,"ContextualActions"],[8,"FnOnce"],[4,"Tab"],[3,"BTreeSet"],[3,"Route"],[3,"RouteSketcher"],[3,"RoadID"],[4,"Mode"],[3,"RoadSelector"],[3,"UploadedProposals"],[3,"ShareProposal"],[3,"Formatter"],[6,"Result"],[3,"Warping"],[3,"DebugWarp"],[3,"Actions"],[3,"Tags"],[3,"DebugMode"],[3,"ScreenshotTest"],[3,"Drawable"],[4,"DrawBaselayer"],[3,"MapName"],[3,"OriginalRoad"],[3,"Viewer"],[4,"AgentID"],[4,"DelayCause"],[3,"Blockfinder"],[3,"Obj"],[3,"Block"],[3,"Perimeter"],[4,"Ordering"],[3,"OneBlock"],[15,"u64"],[4,"Source"],[4,"PathConstraints"],[3,"Floodfiller"],[3,"LaneID"],[3,"ObjectDebugger"],[3,"PathCounter"],[3,"PolygonDebugger"],[4,"Item"],[3,"Pathfinder"],[3,"Counter"],[3,"RouteExplorer"],[3,"AllRoutesExplorer"],[3,"PathCostDebugger"],[3,"PathRequest"],[3,"Polygon"],[4,"TripEndpoint"],[4,"TripMode"],[3,"RoutingParams"],[3,"BulkSelect"],[3,"UberTurnPicker"],[3,"UberTurnViewer"],[3,"DevToolsMode"],[3,"CollisionDataset"],[3,"DummyID"],[3,"World"],[3,"Filters"],[3,"CollisionsViewer"],[3,"GenericCompareCounts"],[3,"PopularDestinations"],[3,"BuildingID"],[3,"HeatmapOptions"],[3,"Scenario"],[3,"ViewKML"],[3,"HashMap"],[3,"Object"],[3,"PolygonEditor"],[3,"LonLat"],[3,"ScenarioManager"],[3,"MarkerID"],[3,"RecordedStoryMap"],[3,"StoryMapEditor"],[3,"DrawFreehand"],[3,"EditingMarker"],[3,"StoryMap"],[4,"EditCmd"],[3,"EditMode"],[3,"SaveEdits"],[3,"LoadEdits"],[3,"ConfirmDiscard"],[3,"Speed"],[3,"Choice"],[3,"ID"],[3,"CrosswalkEditor"],[3,"SelectSegments"],[3,"EditRoad"],[4,"LaneType"],[3,"RoadEditor"],[3,"GeomBatch"],[3,"Road"],[15,"isize"],[3,"Distance"],[3,"RouteEditor"],[3,"TransitRouteID"],[3,"StopSignEditor"],[3,"TrafficSignalEditor"],[3,"BundleEdits"],[3,"ChangeDuration"],[3,"ControlTrafficSignal"],[3,"Angle"],[3,"Record"],[3,"Snapper"],[3,"MovementID"],[8,"Deserializer"],[3,"NodeID"],[3,"ShowAbsolute"],[3,"ShowRelative"],[3,"TuneRelative"],[3,"SignalPicker"],[3,"PreviewTrafficSignal"],[3,"ZoneEditor"],[3,"InfoPanel"],[3,"DataOptions"],[3,"ProblemOptions"],[4,"ProblemType"],[3,"HashSet"],[3,"TripID"],[3,"Time"],[3,"Details"],[3,"PersonID"],[3,"AreaID"],[3,"ParkingLotID"],[3,"Person"],[3,"CarID"],[3,"TransitRoute"],[3,"TransitStopID"],[3,"OpenTrip"],[3,"TripInfo"],[3,"Percent"],[3,"Path"],[3,"UnitFmt"],[3,"TripPhase"],[3,"PickLayer"],[4,"LayerOutcome"],[3,"SteepStreets"],[3,"ElevationContours"],[3,"Favorites"],[3,"ShowFavorites"],[3,"Static"],[3,"BikeActivity"],[3,"ColorDiscrete"],[4,"Seir"],[3,"Options"],[3,"Pandemic"],[4,"Loc"],[3,"Occupancy"],[3,"Efficiency"],[4,"ParkingSpot"],[3,"Options"],[3,"PopulationMap"],[3,"Options"],[3,"ProblemMap"],[4,"Problem"],[3,"ProblemTypes"],[3,"RelativeProblemMap"],[3,"Jam"],[3,"Backpressure"],[3,"Throughput"],[3,"CompareThroughput"],[3,"TrafficJams"],[3,"Delay"],[3,"PedestrianCrowding"],[3,"TransitNetwork"],[3,"PermanentMapEdits"],[3,"Proposals"],[3,"Actions"],[3,"SandboxMode"],[3,"BackToTitleScreen"],[3,"SandboxLoader"],[8,"GameplayState"],[3,"SandboxControls"],[4,"DashTab"],[3,"CommuterPatterns"],[4,"BlockSelection"],[3,"Intersection"],[4,"BorderType"],[3,"Block"],[3,"Filter"],[3,"Loop"],[3,"PanelState"],[3,"ActiveTraffic"],[3,"TransitRoutes"],[3,"ModeShift"],[3,"Entry"],[3,"Filters"],[3,"Table"],[3,"ParkingOverhead"],[3,"Entry"],[3,"Filters"],[3,"RiskSummaries"],[3,"Filter"],[3,"RectangularSelector"],[3,"RefCell"],[3,"Demand"],[3,"TrafficSignalDemand"],[3,"Filter"],[3,"TravelTimes"],[8,"CloneableAny"],[8,"Clone"],[8,"Copy"],[8,"PartialOrd"],[8,"Display"],[3,"Matrix"],[3,"CLEAR_COLOR_SCALE"],[3,"ColorScale"],[3,"MatrixOptions"],[3,"TripTable"],[3,"CancelledTrip"],[3,"Filters"],[3,"FinishedTrip"],[3,"UnfinishedTrip"],[3,"FinalScore"],[3,"XorShiftRng"],[4,"LoadScenario"],[3,"Actdev"],[3,"About"],[3,"OptimizeCommute"],[3,"OrigPersonID"],[3,"FixTrafficSignals"],[3,"Freeform"],[3,"ChangeScenario"],[3,"Obj"],[3,"AreaSpawner"],[3,"SelectRectangle"],[3,"Area"],[3,"Input"],[3,"AgentSpawner"],[3,"CountTrips"],[3,"PlayScenario"],[3,"EditScenarioModifiers"],[3,"ChangeMode"],[4,"ScenarioModifier"],[3,"DepartureSummary"],[3,"Message"],[3,"ScreenPt"],[15,"i64"],[4,"OsmID"],[3,"Tutorial"],[3,"TutorialPointer"],[4,"Task"],[3,"Stage"],[3,"TutorialState"],[3,"ScenarioGenerator"],[3,"MinimapController"],[3,"RoutePreview"],[3,"TrafficRecorder"],[4,"SpeedSetting"],[3,"TimePanel"],[3,"JumpToTime"],[3,"TimeWarpScreen"],[4,"Tab"],[3,"Layers"],[3,"DEDICATED_TRAIL"],[3,"PROTECTED_BIKE_LANE"],[3,"PAINTED_BIKE_LANE"],[3,"GREENWAY"],[3,"DrawNetworkLayer"],[3,"ExploreMap"],[3,"ButtonBuilder"],[3,"Filters"],[3,"CandidateTrip"],[3,"Results"],[3,"ShowGaps"],[3,"ModeShiftData"],[3,"QuickSketch"],[4,"BufferType"],[4,"ID"],[3,"RoutingPreferences"],[3,"TripPlanner"],[3,"TripManagement"],[3,"RouteDetails"],[3,"BuiltRoute"],[3,"RouteStats"],[4,"Outcome"],[13,"LoadKML"],[13,"CompareCounts"],[13,"Gameplay"],[4,"Layout"],[3,"Scene"],[13,"Extra"],[13,"Hovering"],[13,"Dragging"],[4,"Mode"],[13,"Route"],[3,"SearchResults"],[13,"Floodfill"],[13,"Point"],[13,"Triangle"],[13,"Polygon"],[3,"Marker"],[13,"PersonTrips"],[13,"PersonBio"],[13,"PersonSchedule"],[13,"TransitVehicleStatus"],[13,"TransitStop"],[13,"TransitRoute"],[13,"ParkedCar"],[13,"BldgInfo"],[13,"BldgPeople"],[13,"ParkingLot"],[13,"Crowd"],[13,"Area"],[13,"IntersectionInfo"],[13,"IntersectionTraffic"],[13,"IntersectionDelay"],[13,"IntersectionDemand"],[13,"IntersectionArrivals"],[13,"IntersectionTrafficSignal"],[13,"IntersectionProblems"],[13,"LaneInfo"],[13,"LaneDebug"],[13,"LaneTraffic"],[13,"LaneProblems"],[8,"Layer"],[13,"Replace"],[13,"Transition"],[13,"Road"],[13,"Bldg"],[13,"Lot"],[3,"TitleScreen"],[4,"LoadStage"],[13,"GotScenario"],[13,"LoadingPrebaked"],[13,"GotPrebaked"],[13,"Unlocked"],[13,"Locked"],[8,"TripProblemFilter"],[13,"Freeform"],[13,"PlayScenario"],[13,"OptimizeCommute"],[13,"Actdev"],[13,"Tutorial"],[13,"Path"],[13,"Scenario"],[13,"Future"],[4,"Mode"],[13,"DrawingArea"],[13,"PickingDestination"],[8,"TakeLayers"],[3,"NetworkGaps"],[13,"AltRoute"],[13,"Waypoint"]]},\
-"geom":{"doc":"","t":[12,12,12,12,12,12,12,12,12,12,3,4,3,3,3,3,3,17,3,3,3,8,3,3,3,3,13,13,13,13,13,13,3,3,3,3,3,3,4,3,3,3,13,3,0,11,11,11,11,12,12,0,12,0,11,11,11,11,0,12,11,11,5,0,0,0,11,11,11,11,10,12,5,5,0,10,12,12,11,11,11,11,12,12,0,12,12,12,12,12,12,11,12,12,12,12,12,12,0,12,0,0,0,12,12,12,12,12,12,12,0,12,12,11,5,0,0,0,12,0,11,11,10,12,12,5,11,11,11,11,11,11,11,0,12,12,12,12,11,12,3,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,17,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,5,12,3,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,18,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,17,3,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,3,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,3,13,13,13,13,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,10,10,12,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,18,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5],"n":["0","0","0","0","0","0","0","0","1","1","Angle","ArrowCap","Bounds","Circle","CornerRadii","Distance","Duration","EPSILON_DIST","FindClosest","GPSBounds","HashablePt2D","HgramValue","Histogram","InfiniteLine","Line","LonLat","Max","Mean","Min","P50","P90","P99","Percent","PolyLine","Polygon","Pt2D","Ring","Speed","Statistic","Tessellation","Time","Triangle","Triangle","UnitFmt","angle","borrow","borrow","borrow_mut","borrow_mut","bottom_left","bottom_right","bounds","center","circle","clone","clone","clone_into","clone_into","conversions","count","default","deserialize","deserialize_f64","distance","duration","find_closest","fmt","from","from","from","from_u64","geometries","geometries_to_geojson","geometries_with_properties_to_geojson","gps","hgram_zero","histogram","indices","into","into","is_within","is_within","latitude","length","line","longitude","max","max_lat","max_lon","max_x","max_y","metric","metric","min","min_lat","min_lon","min_x","min_y","percent","points","polygon","polyline","pt","pt1","pt2","pt3","pts","pts","quadtree","radius","ring","rings","round_durations","serialize","serialize_f64","speed","stats","tessellation","tessellation","time","to_owned","to_owned","to_u64","top_left","top_right","trim_f64","try_from","try_from","try_into","try_into","type_id","type_id","uniform","utils","x","x_nan","y","y_nan","zero","0","Angle","ZERO","add","approx_eq","approx_parallel","average","borrow","borrow_mut","clone","clone_into","degrees","deserialize","eq","fmt","fmt","from","into","invert_y","is_within","neg","new_rads","normalized_degrees","normalized_radians","opposite","partial_cmp","reorient","rotate_degs","serialize","shortest_rotation_towards","simple_shortest_rotation_towards","to_owned","to_string","try_from","try_into","type_id","Bounds","GPSBounds","add_buffer","as_bbox","borrow","borrow","borrow_mut","borrow_mut","center","clone","clone","clone_into","clone_into","contains","contains","convert","convert_back","convert_back_xy","deserialize","deserialize","eq","eq","fmt","fmt","from","from","from","from","from_polygons","get_max_world_pt","get_rectangle","get_rectangle","height","into","into","is_within","is_within","max_lat","max_lon","max_x","max_y","min_lat","min_lon","min_x","min_y","new","new","scale","serialize","serialize","to_bounds","to_circle","to_owned","to_owned","try_convert","try_from","try_from","try_into","try_into","type_id","type_id","union","update","update","width","zero","Circle","TRIANGLES_PER_CIRCLE","borrow","borrow_mut","center","clone","clone_into","contains_pt","deserialize","fmt","fmt","from","get_bounds","into","is_within","new","radius","serialize","to_outline","to_owned","to_partial_tessellation","to_polygon","to_ring","to_string","try_from","try_into","type_id","pts_to_line_string","0","Distance","ZERO","abs","add","add_assign","borrow","borrow_mut","centimeters","clone","clone_into","cmp","const_meters","default","deserialize","div","div","div","eq","feet","fmt","fmt","from","from_u64","from_u64","hgram_zero","inches","inner_meters","into","is_within","meters","miles","mul","mul_assign","neg","partial_cmp","round_up_for_axis","safe_percent","serialize","sqrt","sub","sub_assign","sum","to_feet","to_miles","to_owned","to_string","to_string","to_u64","to_u64","try_from","try_into","type_id","0","Duration","EPSILON","ZERO","abs","add","add_assign","borrow","borrow_mut","clone","clone_into","cmp","const_seconds","default","deserialize","div","div","epsilon_eq","eq","f64_minutes","fmt","fmt","from","from_u64","from_u64","get_parts","hgram_zero","hours","inner_seconds","into","is_within","make_intervals_for_max","milliseconds","minutes","mul","mul","neg","num_minutes_rounded_up","parse","partial_cmp","realtime_elapsed","rem","round_up","seconds","serialize","sub","sub_assign","sum","to_owned","to_rounded_string","to_string","to_string","to_u64","to_u64","try_from","try_into","type_id","FindClosest","add","add_polygon","all_close_pts","all_points_inside","borrow","borrow_mut","closest_pt","from","geometries","into","is_within","new","quadtree","try_from","try_into","type_id","LonLat","borrow","borrow_mut","center","clone","clone_into","cmp","deserialize","eq","fast_dist","fmt","fmt","from","gps_dist","into","is_within","latitude","longitude","new","parse_geojson_polygons","parse_wkt_linestring","partial_cmp","read_geojson_polygon","serialize","to_geojson","to_owned","to_pt","to_string","try_from","try_into","type_id","x","y","0","0","1","1","InfiniteLine","Line","angle","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","contains_pt","crosses","deserialize","deserialize","dist_along","dist_along_of_point","eq","fmt","fmt","fmt","fmt","from","from","from_pt_angle","infinite","intersection","intersection","intersection_infinite","into","into","is_counter_clockwise","is_within","is_within","length","make_polygons","middle","must_dist_along","must_new","new","percent_along","percent_along_of_point","percent_slice","points","pt1","pt2","reversed","serialize","serialize","shift_either_direction","shift_left","shift_right","slice","to_owned","to_owned","to_polyline","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","unbounded_dist_along","unbounded_percent_along","0","Percent","borrow","borrow_mut","clone","clone_into","eq","fmt","from","inner","int","into","is_within","of","to_owned","to_string","try_from","try_into","type_id","Polygon","area","borrow","borrow_mut","center","centered_on","clip_polyline","clip_ring","clone","clone_into","concave_hull","contains_pt","convex_hull","deserialize","difference","dummy","eq","fmt","fmt","from","from_geojson","from_geojson_bytes","from_multi","from_rings","from_triangle","get_bounds","get_outer_ring","get_rings","intersection","intersects","intersects_polyline","into","into_outer_ring","is_within","maybe_rectangle","maybe_rounded_rectangle","must_scale","pill","polylabel","pretessellated","rectangle","rectangle_centered","rectangle_two_corners","rings","rotate","rotate_around","rounded_rectangle","scale","serialize","simplify","tessellation","to_geo","to_geojson","to_outline","to_owned","to_string","transform","translate","triangles","try_from","try_from","try_into","type_id","union_all_into_multipolygon","with_holes","ArrowCap","MITER_THRESHOLD","PolyLine","Triangle","append","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","dashed_arrow","dashed_lines","deduping_new","deserialize","dist_along","dist_along_of_point","dummy","eq","exact_dashed_polygons","exact_slice","extend","extend_to_length","first_half","first_line","first_pt","fix_angles","fmt","fmt","force_extend","from","from","from_geojson","from_geojson_bytes","get_bounds","get_four_corners_of_thickened","get_slice_ending_at","get_slice_starting_at","interpolate_points","intersection","intersection_infinite","into","into","into_points","is_within","is_within","last_line","last_pt","length","length","lines","make_arrow","make_double_arrow","make_polygons","maybe_exact_slice","maybe_make_arrow","maybe_reverse","middle","must_dist_along","must_extend","must_new","must_shift_left","must_shift_right","new","optionally_push","overall_angle","points","project_pt","pts","quadrant","reversed","safe_get_slice_ending_at","safe_get_slice_starting_at","second_half","serialize","shift_either_direction","shift_from_center","shift_left","shift_right","shift_with_corrections","shift_with_sharp_angles","slice","step_along","step_along_start_end","thicken_tessellation","to_geo","to_geojson","to_owned","to_set","to_string","to_thick_boundary","to_thick_ring","trim_to_endpts","try_from","try_from","try_into","try_into","type_id","type_id","unchecked_new","HashablePt2D","Pt2D","angle_to","approx_dedupe","approx_eq","borrow","borrow","borrow_mut","borrow_mut","center","clone","clone","clone_into","clone_into","cmp","deserialize","dist_to","eq","eq","fast_dist","fmt","fmt","fmt","from","from","from","from","hash","into","into","is_within","is_within","new","offset","partial_cmp","project_away","raw_dist_to","serialize","simplify_rdp","to_geojson","to_gps","to_hashable","to_owned","to_owned","to_pt2d","to_string","try_from","try_from","try_into","try_into","type_id","type_id","x","x","x_nan","y","y","y_nan","zero","Ring","all_intersections","as_geo_linestring","borrow","borrow_mut","clone","clone_into","contains_pt","deduping_new","deserialize","doubles_back","eq","fmt","fmt","from","get_both_slices_btwn","get_shorter_slice_between","get_shorter_slice_btwn","get_slice_between","into","into_points","into_polygon","is_within","must_new","new","points","polylabel","pts","serialize","split_points","to_geojson","to_outline","to_owned","to_string","translate","try_from","try_from","try_into","type_id","0","Speed","ZERO","add","borrow","borrow_mut","clone","clone_into","cmp","const_meters_per_second","deserialize","div","eq","fmt","from","from_dist_time","inner_meters_per_second","into","is_within","km_per_hour","meters_per_second","miles_per_hour","mul","mul","neg","partial_cmp","serialize","sub","to_owned","to_string","try_from","try_into","type_id","HgramValue","Histogram","Max","Mean","Min","P50","P90","P99","Statistic","add","all","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","count","count","default","describe","deserialize","eq","fmt","from","from","from_u64","hgram_zero","histogram","into","into","is_within","is_within","max","min","new","partial_cmp","percentile","remove","seems_eq","select","serialize","to_owned","to_owned","to_string","to_u64","try_from","try_from","try_into","try_into","type_id","type_id","Tessellation","Triangle","borrow","borrow","borrow_mut","borrow_mut","center","clone","clone","clone_into","clone_into","consume","deserialize","difference","downsize","eq","fmt","fmt","from","from","from","from","from_ring","get_bounds","indices","inplace_multi_transform","into","into","is_within","is_within","new","points","pt1","pt2","pt3","rotate","rotate_around","scale","scale_xy","serialize","to_geo","to_geojson","to_owned","to_owned","transform","translate","triangles","try_from","try_from","try_into","try_into","type_id","type_id","union","union_all","0","START_OF_DAY","Time","add","add_assign","ampm_tostring","as_filename","borrow","borrow_mut","clamped_sub","clone","clone_into","cmp","default","deserialize","eq","fmt","fmt","from","get_hours","get_parts","hash","inner_seconds","into","is_within","parse","partial_cmp","percent_of","round_seconds","seconds_since_midnight","serialize","sub","sub","to_owned","to_percent","to_string","try_from","try_into","type_id","prettyprint_usize"],"q":["geom","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::angle","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::bounds","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::circle","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::conversions","geom::distance","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::duration","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::find_closest","","","","","","","","","","","","","","","","","geom::gps","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::line","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::percent","","","","","","","","","","","","","","","","","","","geom::polygon","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::polyline","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::pt","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::ring","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::speed","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::stats","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::tessellation","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::time","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::utils"],"d":["","","","","","","","","","","An angle, stored in radians.","","Represents a rectangular boundary of Pt2D
points.","A circle, defined by a center and radius.","","A distance, in meters. Can be negative.","A duration, in seconds. Can be negative.","","A quad-tree to quickly find the closest points to some …","Represents a rectangular boundary of LonLat
points. After …","This represents world space, NOT LonLat.","","","","A line segment.","Represents a (longitude, latitude) point.","","","","","","","Most of the time, [0, 1]. But some callers may go outside …","","","This represents world-space in meters.","Maybe a misnomer, but like a PolyLine, but closed.","In meters per second. Can be negative.","","A tessellated polygon, ready for rendering.","In seconds since midnight. Can’t be negative.","","","Specifies how to stringify different geom objects.","","","","","","","","","","","","","","","Conversions between this crate and geo
. Long-term, we …","","","","Deserializes a trimmed f64
from an i32
.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Create a GeoJson with one feature per geometry, and no …","Create a GeoJson with one feature per geometry, with the …","","","","Groups of three indices make up the triangles","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","Default settings using metric.","Display in metric; US imperial otherwise.","","","","","","","These points aren’t in any meaningful order. It’s not …","","","","","","","","","","","","","Round Duration
s to a whole number of seconds.","","Serializes a trimmed f64
as an i32
to save space.","","","","","","","","","","","Reduce the precision of an f64. This helps ensure …","","","","","","","","","","","","","","","An angle, stored in radians.","","","True if this angle is within some degrees of another, …","True if this angle is within some degrees of another, …","Calculates the average of some angles.","","","","","Create an angle in degrees.","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","Create an angle in radians.","Returns [0, 360)","Returns [0, 2pi)","Invert the direction of this angle.","","I don’t know how to describe what this does. Use for …","Rotates this angle by some degrees.","","Logically this returns [-180, 180], but keep in mind when …","Returns [-180, 180]","","","","","","Represents a rectangular boundary of Pt2D
points.","Represents a rectangular boundary of LonLat
points. After …","Expand the existing boundary by some distance evenly on …","Converts the boundary to the format used by aabb_quadtree
.","","","","","The center point of this boundary.","","","","","True if the point is within the boundary.","True if the point is within the boundary.","Convert all points to map-space. The points may be outside …","Convert map-space points back to LonLat
s. This is only …","","","","","","","","Returns the argument unchanged.","Create a boundary covering some points.","Create a boundary covering some points.","Returns the argument unchanged.","Create a boundary covering some polygons.","The bottom-right corner of the boundary, in map-space.","Creates a rectangle covering this boundary.","Returns points in order covering this boundary.","The height of this boundary.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","A boundary including no points.","A boundary including no points.","Transform the boundary by scaling its corners.","","","Converts the boundary to map-space.","Creates a circle centered in the middle of this boundary. …","","","Convert all points to map-space, failing if any points are …","","","","","","","Unions two boundaries.","Update the boundary to include this point.","Update the boundary to include this point.","The width of this boundary.","","A circle, defined by a center and radius.","","","","","","","True if the point is inside the circle.","","","","Returns the argument unchanged.","Get the boundary containing this circle.","Calls U::from(self)
.","","Creates a circle.","","","Creates an outline around the circle, strictly contained …","","Renders some percent, between [0, 1], of the circle. The …","Renders the circle as a polygon.","Returns the ring around the circle.","","","","","","","A distance, in meters. Can be negative.","","Returns the absolute value of this distance.","","","","","Creates a distance in centimeters.","","","","","","","","","","","Creates a distance in feet.","","","Returns the argument unchanged.","","","","Creates a distance in inches.","Returns the distance in meters. Prefer to work with …","Calls U::from(self)
.","","Creates a distance in meters.","Creates a distance in miles.","","","","","Rounds this distance up to a higher, more “even” value …","Calculates a percentage, usually in [0.0, 1.0], of self / …","","Returns the square root of this distance.","","","","Returns the distance in feet.","Returns the distance in miles.","","Describes the distance according to formatting rules. …","","","","","","","","A duration, in seconds. Can be negative.","","","","","","","","","","","","","","","","If two durations are within this amount, they’ll print …","","Creates a duration in minutes.","","","Returns the argument unchanged.","","","Splits the duration into (hours, minutes, seconds, …","","Creates a duration in hours.","Returns the duration in seconds. Prefer working in …","Calls U::from(self)
.","","Returns (rounded max, the boundaries)","Creates a duration in milliseconds.","Creates a duration in minutes.","","","","Returns the duration as a number of minutes, rounded up.","Parses a duration such as “3:00” to …","","Returns the duration elapsed from this moment in real time.","","Rounds a duration up to the nearest whole number multiple.","Creates a duration in seconds.","","","","","","Shows only the largest unit (hours, minute, seconds), …","","Describes the duration according to formatting rules.","","","","","","A quad-tree to quickly find the closest points to some …","Add an object to the quadtree, remembering some key …","Adds the outer ring of a polygon to the quadtree.","For every object within some distance of a query point, …","Find all objects with a point inside the query polygon","","","Finds the closest point on the existing geometry to the …","Returns the argument unchanged.","","Calls U::from(self)
.","","Creates the quad-tree, limited to points contained in the …","","","","","Represents a (longitude, latitude) point.","","","Finds the average of a set of coordinates.","","","","","","Pretty meaningless units, for comparing distances very …","","","Returns the argument unchanged.","Returns the Haversine distance to another point.","Calls U::from(self)
.","","","","Note the order of arguments!","Extract polygons from a raw GeoJSON string. For …","Parses a WKT-style line-string into a list of coordinates.","","Reads a GeoJSON file and returns coordinates from the one …","","","","Transform this to a world-space point. Can go out of …","","","","","Returns the longitude of this point.","Returns the latitude of this point.","","","","","","A line segment.","The angle of the line segment, from the first to the …","","","","","","","","","","Determine if two line segments intersect, but more so than …","","","Returns a point along the line segment, unless the …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns an infinite line passing through this line’s two …","If two line segments intersect – including endpoints – …","Fails for parallel lines.","If the line segment intersects with an infinite line – …","Calls U::from(self)
.","Calls U::from(self)
.","","","","Length of the line segment","Returns a thick line segment.","","Equivalent to self.dist_along(dist).unwrap()
. Use this to …","Equivalent to Line::new(pt1, pt2).unwrap()
. Use this to …","Creates a line segment between two points, which must not …","","","Returns a subset of this line, with two percentages along …","Returns the two points in this line segment.","Returns the first point in this line segment.","Returns the second point in this line segment.","Returns a reversed line segment","","","Perpendicularly shifts the line to the right if positive …","Perpendicularly shifts the line over to the left. Width …","Perpendicularly shifts the line over to the right. Width …","","","","Returns a polyline containing these two points.","","","","","","","","","","","","Most of the time, [0, 1]. But some callers may go outside …","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","Usually m^2, unless the polygon is in screen-space","","","Returns the arithmetic mean of the outer ring’s points. …","","Doesn’t handle multiple crossings in and out.","","","","","Does this polygon contain the point in its interior?","","","","An arbitrary placeholder value, when Option types aren’t …","","","","Returns the argument unchanged.","","Extracts all polygons from raw bytes representing a …","","","","","","","","Do two polygons intersect at all?","Does this polygon intersect a polyline?","Calls U::from(self)
.","","","Top-left at the origin. Doesn’t take Distance, because …","Top-left at the origin. Doesn’t take Distance, because …","When factor
is known to be over 1, then scaling can’t …","A rectangle, two sides of which are fully rounded …","Find the “pole of inaccessibility” – the most …","","Top-left at the origin. Doesn’t take Distance, because …","","","","","","Top-left at the origin. Doesn’t take Distance, because …","When factor
is small, this may collapse Rings and thus …","","If simplification fails, just keep the original polygon","","","Optionally map the world-space points back to GPS.","Creates the outline around the polygon (both the exterior …","","","Transformations must preserve Rings.","","","","","","","Union all of the polygons into one geo::MultiPolygon","","","","","","One or both args might be empty.","","","","","","","","Don’t draw the dashes too close to the ends.","First dedupes adjacent points","","","","An arbitrary placeholder value, when Option types aren’t …","","","No excess leftover distance allowed.","Glue together two polylines in order. The last point of …","If the current line is at least this long, return it. …","","","","","","","Like extend
, but handles the last and first point not …","Returns the argument unchanged.","Returns the argument unchanged.","","Extracts all linestrings from raw bytes representing a …","","This does the equivalent of make_polygons, returning the …","Panics if the pt is not on the polyline. Returns None if …","Returns None if the point is the last point.","","Also return the angle of the line where the hit was found","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","If the length is too short, just give up and make the …","","This produces a Polygon
with a valid Ring
. It may crash if …","","Fail if the length is too short.","","","","Like extend
, but panics on failure.","","","","","Extends self
by a single point. If the new point is close …","Returns the angle from the start to end of this polyline.","","Returns the point on the polyline closest to the query.","","Returns the quadrant where the overall angle of this …","","Same as get_slice_ending_at, but returns None if the point …","Same as get_slice_starting_at, but returns None if the …","","","Perpendicularly shifts the polyline to the right if …","self
represents some center, with total_width
. Logically …","","","","","Returns the excess distance left over from the end","Walk along the PolyLine, starting buffer_ends
from the …","Walk along the PolyLine, from start_buffer
to …","Just produces a Tessellation","","Produces a GeoJSON linestring, optionally mapping the …","","","","","Like make_polygons, but make sure the points actually form …","","","","","","","","Doesn’t check for duplicates. Use at your own risk.","This represents world space, NOT LonLat.","This represents world-space in meters.","","","","","","","","","","","","","","","","","","Pretty meaningless units, for comparing distances very …","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","If distance is negative, this projects a point in …","","","Simplifies a list of points using Ramer-Douglas-Peuckr","","Can go out of bounds.","","","","","","","","","","","","","","","","","","","Maybe a misnomer, but like a PolyLine, but closed.","Be careful with the order of results. Hits on an earlier …","Print the coordinates of this ring as a geo::LineString
…","","","","","","First dedupes adjacent points","","Look for “bad” rings that double back on themselves. …","","","","Returns the argument unchanged.","","Assuming both points are somewhere along the ring, return …","","Assuming both points are somewhere along the ring, return …","Calls U::from(self)
.","","","","","","","Find the “pole of inaccessibility” – the most …","","","Extract all PolyLines and Rings. Doesn’t handle crazy …","Produces a GeoJSON polygon, optionally mapping the …","Draws the ring with some thickness, with half of it …","","","Translates the ring by a fixed offset.","","","","","","In meters per second. Can be negative.","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","Describes the speed according to formatting rules.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","None if empty","","Could implement PartialEq, but be a bit more clear how …","","","","","","","","","","","","","A tessellated polygon, ready for rendering.","","","","","","","","","","","Returns (points, indices) for rendering","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","The points
are not necessarily a Ring
, which has strict …","","Groups of three indices make up the triangles","Equivalent to …","Calls U::from(self)
.","Calls U::from(self)
.","","","","These points aren’t in any meaningful order. It’s not …","","","","","","","","","","Produces a GeoJSON multipolygon consisting of individual …","","","","","","","","","","","","","","","","In seconds since midnight. Can’t be negative.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Rounded down. 6:59:00 is hour 6.","(hours, minutes, seconds, centiseconds)","","For RNG range generation. Don’t abuse.","Calls U::from(self)
.","","","","","","","","","","","","","","","",""],"i":[15,20,33,38,39,41,32,60,38,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,57,57,57,57,57,0,0,0,0,0,0,0,0,0,0,48,0,0,1,2,1,2,2,2,0,26,0,1,2,1,2,0,56,2,1,0,0,0,0,2,1,2,2,55,36,0,0,0,55,56,28,1,2,1,2,24,40,0,24,56,23,23,19,19,1,1,56,23,23,19,19,0,28,0,0,0,44,44,44,40,29,36,26,0,25,1,1,0,0,0,0,25,0,1,2,55,2,2,0,1,2,1,2,1,2,2,0,22,52,22,52,2,15,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,19,19,19,23,19,23,19,19,23,19,23,19,23,23,23,23,19,23,19,23,19,23,19,19,23,23,19,23,19,23,19,19,23,19,23,23,23,19,19,23,23,19,19,19,23,19,19,23,23,19,19,23,23,19,23,19,23,19,23,19,19,23,19,19,0,0,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,0,20,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,33,0,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,0,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,38,39,38,39,0,0,38,38,39,38,39,38,39,38,39,38,38,38,39,38,38,38,38,38,39,39,38,39,39,38,38,39,38,38,39,0,38,39,38,38,38,38,38,38,38,38,38,38,38,38,38,38,39,38,38,38,38,38,39,38,38,39,38,39,38,39,38,39,38,38,41,0,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,0,0,48,40,48,40,48,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,0,40,40,40,48,40,40,40,40,40,40,40,40,40,40,48,40,40,48,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,0,40,40,40,40,48,40,48,40,48,40,40,0,0,22,22,22,22,52,22,52,22,22,52,22,52,52,22,22,22,52,22,22,22,52,22,22,22,52,52,22,52,22,52,22,22,52,22,22,22,22,22,22,22,22,52,52,22,22,52,22,52,22,52,22,22,52,22,22,52,22,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,32,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,0,57,57,57,57,57,57,0,56,57,57,56,57,56,57,56,57,56,57,56,56,56,56,57,57,57,57,56,55,55,56,57,56,57,56,56,56,56,57,56,56,56,56,57,57,56,57,55,57,56,57,56,57,56,0,0,28,44,28,44,28,28,44,28,44,28,28,28,0,28,28,44,28,28,28,44,28,28,28,28,28,44,28,44,28,28,44,44,44,28,28,28,28,28,28,28,28,44,28,28,28,28,44,28,44,28,44,28,28,60,60,0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,0],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],0,0,0,0,0,[1,1],[2,2],[[]],[[]],0,0,[[],2],[[],[[3,[1]]]],[4,[[3,[5]]]],0,0,0,[[2,6],7],[[]],[[]],[5,2],[8],0,[[[10,[9]]],11],[10,11],0,[[]],0,0,[[]],[[]],[[],12],[[],12],0,0,0,0,0,0,0,0,0,[[],1],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1,3],[[5,13],3],0,0,0,0,0,[[]],[[]],[[],8],0,0,[5,5],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[5,2],0,0,0,0,0,[[],2],0,0,0,[[15,15],15],[[15,15,5],12],[[15,15,5],12],[[[10,[15]]],15],[[]],[[]],[15,15],[[]],[5,15],[[],[[3,[15]]]],[[15,15],12],[[15,6],7],[[15,6],7],[[]],[[]],[15,15],[[],12],[15,15],[5,15],[15,5],[15,5],[15,15],[[15,15],[[17,[16]]]],[15,15],[[15,5],15],[15,3],[[15,15],15],[[15,15],5],[[]],[[],18],[[],3],[[],3],[[],14],0,0,[[19,20]],[19,21],[[]],[[]],[[]],[[]],[19,22],[19,19],[23,23],[[]],[[]],[[19,22],12],[[23,24],12],[23,[[10,[22]]]],[23,[[10,[24]]]],[[23,5,5],24],[[],[[3,[19]]]],[[],[[3,[23]]]],[[19,19],12],[[23,23],12],[[19,6],7],[[23,6],7],[[]],[[],19],[[[10,[24]]],23],[[]],[[],19],[23,22],[19,25],[23,[[10,[24]]]],[19,5],[[]],[[]],[[],12],[[],12],0,0,0,0,0,0,0,0,[[],19],[[],23],[[19,5],19],[19,3],[23,3],[23,19],[19,26],[[]],[[]],[23,[[17,[[10,[22]]]]]],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[19,19]],[[19,22]],[[23,24]],[19,5],[[],19],0,0,[[]],[[]],0,[26,26],[[]],[[26,22],12],[[],[[3,[26]]]],[[26,6],7],[[26,6],7],[[]],[26,19],[[]],[[],12],[[22,20],26],0,[26,3],[[26,20],[[27,[25]]]],[[]],[[26,5],28],[26,25],[26,29],[[],18],[[],3],[[],3],[[],14],[[],30],0,0,0,[20,20],[[20,20],20],[[20,20]],[[]],[[]],[31,20],[20,20],[[]],[[20,20],16],[5,20],[[],20],[[],[[3,[20]]]],[[20,5],20],[[20,20],5],[[20,32],33],[[20,20],12],[5,20],[[20,6],7],[[20,6],7],[[]],[8,20],[8,20],[[],20],[5,20],[20,5],[[]],[[],12],[5,20],[5,20],[[20,5],20],[[20,5]],[20,20],[[20,20],[[17,[16]]]],[20,20],[[20,20],5],[20,3],[20,20],[[20,20],20],[[20,20]],[[],20],[20,5],[20,5],[[]],[[20,1],18],[[],18],[20,8],[20,8],[[],3],[[],3],[[],14],0,0,0,0,[33,33],[[33,33],33],[[33,33]],[[]],[[]],[33,33],[[]],[[33,33],16],[5,33],[[],33],[[],[[3,[33]]]],[[33,5],33],[[33,33],5],[[33,33],12],[[33,33],12],[5,33],[[33,6],7],[[33,6],7],[[]],[8,33],[8,33],[33],[[],33],[31,33],[33,5],[[]],[[],12],[[33,31]],[5,33],[31,33],[[33,32],20],[[33,5],33],[33,33],[33,31],[34,[[27,[33]]]],[[33,33],[[17,[16]]]],[35,33],[[33,33],33],[[33,33],33],[5,33],[33,3],[[33,33],33],[[33,33]],[[],33],[[]],[[33,31],18],[[],18],[[33,1],18],[33,8],[33,8],[[],3],[[],3],[[],14],0,[36],[[36,25]],[[36,22,20],10],[[36,25],10],[[]],[[]],[[36,22,20],17],[[]],0,[[]],[[],12],[19,36],0,[[],3],[[],3],[[],14],0,[[]],[[]],[[],24],[24,24],[[]],[[24,24],16],[[],[[3,[24]]]],[[24,24],12],[[24,24],[[37,[5]]]],[[24,6],7],[[24,6],7],[[]],[[24,24],20],[[]],[[],12],0,0,[[5,5],24],[18,[[27,[10]]]],[34,[[17,[[10,[24]]]]]],[[24,24],[[17,[16]]]],[34,[[27,[[10,[24]]]]]],[24,3],[24,9],[[]],[[24,23],22],[[],18],[[],3],[[],3],[[],14],[24,5],[24,5],0,0,0,0,0,0,[38,15],[[]],[[]],[[]],[[]],[38,38],[39,39],[[]],[[]],[[38,22],12],[[38,38],12],[[],[[3,[38]]]],[[],[[3,[39]]]],[[38,20],[[27,[22]]]],[[38,22],[[17,[20]]]],[[38,38],12],[[38,6],7],[[38,6],7],[[39,6],7],[[39,6],7],[[]],[[]],[[22,15],39],[38,39],[[38,38],[[17,[22]]]],[[39,39],[[17,[22]]]],[[38,39],[[17,[22]]]],[[]],[[]],[[22,22,22],12],[[],12],[[],12],[38,20],[[38,20],25],[38,[[27,[22]]]],[[38,20],22],[[22,22],38],[[22,22],[[27,[38]]]],[[38,5],[[27,[22]]]],[[38,22],[[17,[5]]]],[[38,5,5],[[27,[38]]]],[38,[[10,[22]]]],[38,22],[38,22],[38,38],[38,3],[39,3],[[38,20],38],[[38,20],38],[[38,20],38],[[38,20,20],[[27,[38]]]],[[]],[[]],[38,40],[[],18],[[],18],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[38,20],22],[[38,5],22],0,0,[[]],[[]],[41,41],[[]],[[41,41],12],[[41,6],7],[[]],[41,5],[31,41],[[]],[[],12],[[31,31],41],[[]],[[],18],[[],3],[[],3],[[],14],0,[25,5],[[]],[[]],[25,22],[[25,22],25],[[25,40],[[17,[[10,[22]]]]]],[[25,29],[[17,[[10,[22]]]]]],[25,25],[[]],[[[10,[22]],42],[[27,[25]]]],[[25,22],12],[[[10,[25]]],[[27,[25]]]],[[],[[3,[25]]]],[[25,25],[[27,[[10,[25]]]]]],[[],25],[[25,25],12],[[25,6],7],[[25,6],7],[[]],[[],[[27,[25]]]],[[23,12],[[27,[10]]]],[43,[[27,[[10,[25]]]]]],[[[10,[29]]],25],[44,25],[25,19],[25,29],[25],[[25,25],[[27,[[10,[25]]]]]],[[25,25],12],[[25,40],12],[[]],[25,29],[[],12],[[5,5],[[27,[25]]]],[[5,5,[45,[2]]],[[17,[25]]]],[[25,5],25],[[5,5],25],[25,22],[[[10,[29]],28],25],[[5,5],25],[[22,20,20],25],[[22,22],[[17,[25]]]],0,[[25,15],25],[[25,15,22],25],[[5,5,[45,[2]]],25],[[25,5],[[27,[25]]]],[25,3],[[25,5],25],0,[25,46],[[25,[17,[23]]],9],[[25,20],28],[[]],[[],18],[[25,47],[[27,[25]]]],[[25,5,5],25],[25,[[10,[44]]]],[46,[[27,[25]]]],[[],3],[[],3],[[],14],[[[10,[25]]],43],[[29,[10,[29]]],25],0,0,0,0,[[[10,[22]],[10,[22]]],[[27,[[10,[22]]]]]],[[]],[[]],[[]],[[]],[40,40],[[]],[[40,20,20,20,48],[[10,[25]]]],[[40,20,20,20],[[10,[25]]]],[[[10,[22]]],[[27,[40]]]],[[],[[3,[40]]]],[[40,20],27],[[40,22],17],[[],40],[[40,40],12],[[40,20,20,20],[[10,[25]]]],[[40,20,20],40],[[40,40],[[27,[40]]]],[[40,20],40],[40,[[27,[40]]]],[40,38],[40,22],[[40,40],[[27,[40]]]],[[40,6],7],[[40,6],7],[[40,40],[[27,[40]]]],[[]],[[]],[[49,[17,[23]]],[[27,[40]]]],[[23,12],[[27,[10]]]],[40,19],[[40,20],17],[[40,22],[[17,[40]]]],[[40,22],[[17,[40]]]],[[40,20],40],[[40,40],17],[[40,39],[[17,[22]]]],[[]],[[]],[40,[[10,[22]]]],[[],12],[[],12],[40,38],[40,22],[40,20],0,[40,50],[[40,20,48],25],[[40,20,48],25],[[40,20],25],[[40,20,20],[[27,[40]]]],[[40,20,48],[[17,[25]]]],[[40,12],40],[40,22],[[40,20]],[[40,40],40],[[[10,[22]]],40],[[40,20],40],[[40,20],40],[[[10,[22]]],[[27,[40]]]],[[40,22],40],[40,15],[40,10],[[40,22],22],0,[40,51],[40,40],[[40,22],[[17,[40]]]],[[40,22],[[17,[40]]]],[40,[[27,[40]]]],[40,3],[[40,20],[[27,[40]]]],[[40,20,20],[[27,[40]]]],[[40,20],[[27,[40]]]],[[40,20],[[27,[40]]]],[[40,20],[[27,[40]]]],[[40,20,5],[[27,[[10,[22]]]]]],[[40,20,20],27],[[40,20,20],10],[[40,20,20,20],10],[[40,20],28],[40,30],[[40,[17,[23]]],9],[[]],[[]],[[],18],[[40,20,20],[[17,[28]]]],[[40,20],29],[[40,22,22],40],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[[10,[22]]],40],0,0,[[22,22],15],[[[10,[22]],20],[[10,[22]]]],[[22,22,20],12],[[]],[[]],[[]],[[]],[[],22],[22,22],[52,52],[[]],[[]],[[52,52],16],[[],[[3,[22]]]],[[22,22],20],[[22,22],12],[[52,52],12],[[22,22],[[37,[5]]]],[[22,6],7],[[22,6],7],[[52,6],7],[53,22],[[]],[54,22],[[]],[52],[[]],[[]],[[],12],[[],12],[[5,5],22],[[22,5,5],22],[[52,52],[[17,[16]]]],[[22,20,15],22],[[22,22],5],[22,3],[[[10,[22]],5],[[10,[22]]]],[[22,[17,[23]]],9],[[22,23],24],[22,52],[[]],[[]],[52,22],[[],18],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[22,5],0,0,[22,5],0,0,[[],22],0,[[29,40],[[10,[22]]]],[29,18],[[]],[[]],[29,29],[[]],[[29,22],12],[[[10,[22]]],[[27,[29]]]],[[],[[3,[29]]]],[29,12],[[29,29],12],[[29,6],7],[[29,6],7],[[]],[[29,22,22],17],[[29,22,22],[[17,[40]]]],[[29,22,22],[[17,[40]]]],[[29,22,22,12],[[17,[40]]]],[[]],[29,[[10,[22]]]],[29,25],[[],12],[[[10,[22]]],29],[[[10,[22]]],[[27,[29]]]],[29,10],[29,22],0,[29,3],[[],27],[[29,[17,[23]]],9],[[29,20],28],[[]],[[],18],[[29,5,5],29],[[],3],[30,[[27,[29]]]],[[],3],[[],14],0,0,0,[[32,32],32],[[]],[[]],[32,32],[[]],[[32,32],16],[5,32],[[],[[3,[32]]]],[[32,32],5],[[32,32],12],[[32,6],7],[[]],[[20,33],32],[32,5],[[]],[[],12],[5,32],[5,32],[5,32],[[32,5],32],[[32,33],20],[32,32],[[32,32],[[17,[16]]]],[32,3],[[32,32],32],[[]],[[32,1],18],[[],3],[[],3],[[],14],0,0,0,0,0,0,0,0,0,[[[56,[[55,[[55,[[55,[55]]]]]]]],[55,[[55,[[55,[[55,[55]]]]]]]]]],[[],[[10,[57]]]],[[]],[[]],[[]],[[]],[57,57],[[[56,[[0,[58,[55,[[0,[58,[55,[[0,[58,[55,[[0,[58,55]]]]]]]]]]]]]]]]],[[56,[[0,[58,[55,[[0,[58,[55,[[0,[58,[55,[[0,[58,55]]]]]]]]]]]]]]]]]],[[]],[[]],[[57,57],16],[[[56,[[55,[[55,[[55,[55]]]]]]]]],31],0,[[],[[56,[[55,[[55,[[55,[55]]]]]]]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]]],18],[[],[[3,[57]]]],[[57,57],12],[[57,6],7],[[]],[[]],[8],[[]],0,[[]],[[]],[[],12],[[],12],0,0,[[],[[56,[[55,[[55,[[55,[55]]]]]]]]]],[[57,57],[[17,[16]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]],5],[[17,[[55,[[55,[[55,[55]]]]]]]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]],[55,[[55,[[55,[[55,[55]]]]]]]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]],56],12],[[[56,[[55,[[55,[[55,[55]]]]]]]],57],[[17,[[55,[[55,[[55,[55]]]]]]]]]],[57,3],[[]],[[]],[[],18],[[],8],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],0,0,[[]],[[]],[[]],[[]],[28,22],[28,28],[44,44],[[]],[[]],[28],[[],[[3,[28]]]],[[28,28],[[27,[[10,[25]]]]]],[[[10,[31]]],[[10,[59]]]],[[28,28],12],[[28,6],7],[[44,6],7],[25,28],[46,28],[[]],[[]],[[[10,[22]]],28],[28,19],0,[[28,5,5,5,15,22]],[[]],[[]],[[],12],[[],12],[[[10,[22]],[10,[31]]],28],0,0,0,0,[[28,15]],[[28,15,22]],[[28,5]],[[28,5,5]],[28,3],[28,46],[[28,[17,[23]]],9],[[]],[[]],[[28,47]],[[28,5,5]],[28,[[10,[44]]]],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[28,28],28],[[[10,[28]]],28],0,0,0,[[60,33],60],[[60,33]],[60,18],[60,18],[[]],[[]],[[60,33],60],[60,60],[[]],[[60,60],16],[[],60],[[],[[3,[60]]]],[[60,60],12],[[60,6],7],[[60,6],7],[[]],[60,31],[60],[60],[60,5],[[]],[[],12],[34,[[27,[60]]]],[[60,60],[[17,[16]]]],[[60,5],60],[[60,5],60],[5,60],[60,3],[[60,33],60],[[60,60],33],[[]],[[60,60],5],[[],18],[[],3],[[],3],[[],14],[31,18]],"p":[[3,"UnitFmt"],[3,"CornerRadii"],[4,"Result"],[8,"Deserializer"],[15,"f64"],[3,"Formatter"],[6,"Result"],[15,"u64"],[3,"Geometry"],[3,"Vec"],[4,"GeoJson"],[15,"bool"],[8,"Serializer"],[3,"TypeId"],[3,"Angle"],[4,"Ordering"],[4,"Option"],[3,"String"],[3,"Bounds"],[3,"Distance"],[3,"Rect"],[3,"Pt2D"],[3,"GPSBounds"],[3,"LonLat"],[3,"Polygon"],[3,"Circle"],[6,"Result"],[3,"Tessellation"],[3,"Ring"],[3,"LineString"],[15,"usize"],[3,"Speed"],[3,"Duration"],[15,"str"],[6,"Instant"],[3,"FindClosest"],[3,"NotNan"],[3,"Line"],[3,"InfiniteLine"],[3,"PolyLine"],[3,"Percent"],[15,"u32"],[3,"MultiPolygon"],[3,"Triangle"],[8,"Into"],[3,"Polygon"],[8,"Fn"],[4,"ArrowCap"],[3,"Feature"],[8,"Iterator"],[15,"i64"],[3,"HashablePt2D"],[3,"Coordinate"],[3,"Point"],[8,"HgramValue"],[3,"Histogram"],[4,"Statistic"],[8,"Clone"],[15,"u16"],[3,"Time"]]},\
+"geom":{"doc":"","t":[12,12,12,12,12,12,12,12,12,12,3,4,3,3,3,3,3,17,3,3,3,8,3,3,3,3,13,13,13,13,13,13,3,3,3,3,3,3,4,3,3,3,13,3,0,11,11,11,11,12,12,0,12,0,11,11,11,11,0,12,11,11,5,0,0,0,11,11,11,11,10,12,5,5,0,10,12,12,11,11,11,11,12,12,0,12,12,12,12,12,12,11,12,12,12,12,12,12,0,12,0,0,0,12,12,12,12,12,12,12,0,12,12,11,5,0,0,0,12,0,11,11,10,12,12,5,11,11,11,11,11,11,11,0,12,12,12,12,11,12,3,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,17,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,5,12,3,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,18,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,17,3,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,3,18,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,3,13,13,13,13,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,10,10,12,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,18,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5],"n":["0","0","0","0","0","0","0","0","1","1","Angle","ArrowCap","Bounds","Circle","CornerRadii","Distance","Duration","EPSILON_DIST","FindClosest","GPSBounds","HashablePt2D","HgramValue","Histogram","InfiniteLine","Line","LonLat","Max","Mean","Min","P50","P90","P99","Percent","PolyLine","Polygon","Pt2D","Ring","Speed","Statistic","Tessellation","Time","Triangle","Triangle","UnitFmt","angle","borrow","borrow","borrow_mut","borrow_mut","bottom_left","bottom_right","bounds","center","circle","clone","clone","clone_into","clone_into","conversions","count","default","deserialize","deserialize_f64","distance","duration","find_closest","fmt","from","from","from","from_u64","geometries","geometries_to_geojson","geometries_with_properties_to_geojson","gps","hgram_zero","histogram","indices","into","into","is_within","is_within","latitude","length","line","longitude","max","max_lat","max_lon","max_x","max_y","metric","metric","min","min_lat","min_lon","min_x","min_y","percent","points","polygon","polyline","pt","pt1","pt2","pt3","pts","pts","quadtree","radius","ring","rings","round_durations","serialize","serialize_f64","speed","stats","tessellation","tessellation","time","to_owned","to_owned","to_u64","top_left","top_right","trim_f64","try_from","try_from","try_into","try_into","type_id","type_id","uniform","utils","x","x_nan","y","y_nan","zero","0","Angle","ZERO","add","approx_eq","approx_parallel","average","borrow","borrow_mut","clone","clone_into","degrees","deserialize","eq","fmt","fmt","from","into","invert_y","is_within","neg","new_rads","normalized_degrees","normalized_radians","opposite","partial_cmp","reorient","rotate_degs","serialize","shortest_rotation_towards","simple_shortest_rotation_towards","to_owned","to_string","try_from","try_into","type_id","Bounds","GPSBounds","add_buffer","as_bbox","borrow","borrow","borrow_mut","borrow_mut","center","clone","clone","clone_into","clone_into","contains","contains","convert","convert_back","convert_back_xy","deserialize","deserialize","eq","eq","fmt","fmt","from","from","from","from","from_polygons","get_max_world_pt","get_rectangle","get_rectangle","height","into","into","is_within","is_within","max_lat","max_lon","max_x","max_y","min_lat","min_lon","min_x","min_y","new","new","scale","serialize","serialize","to_bounds","to_circle","to_owned","to_owned","try_convert","try_from","try_from","try_into","try_into","type_id","type_id","union","update","update","width","zero","Circle","TRIANGLES_PER_CIRCLE","borrow","borrow_mut","center","clone","clone_into","contains_pt","deserialize","fmt","fmt","from","get_bounds","into","is_within","new","radius","serialize","to_outline","to_owned","to_partial_tessellation","to_polygon","to_ring","to_string","try_from","try_into","type_id","pts_to_line_string","0","Distance","ZERO","abs","add","add_assign","borrow","borrow_mut","centimeters","clone","clone_into","cmp","const_meters","default","deserialize","div","div","div","eq","feet","fmt","fmt","from","from_u64","from_u64","hgram_zero","inches","inner_meters","into","is_within","meters","miles","mul","mul_assign","neg","partial_cmp","round_up_for_axis","safe_percent","serialize","sqrt","sub","sub_assign","sum","to_feet","to_miles","to_owned","to_string","to_string","to_u64","to_u64","try_from","try_into","type_id","0","Duration","EPSILON","ZERO","abs","add","add_assign","borrow","borrow_mut","clone","clone_into","cmp","const_seconds","default","deserialize","div","div","epsilon_eq","eq","f64_minutes","fmt","fmt","from","from_u64","from_u64","get_parts","hgram_zero","hours","inner_seconds","into","is_within","make_intervals_for_max","milliseconds","minutes","mul","mul","neg","num_minutes_rounded_up","parse","partial_cmp","realtime_elapsed","rem","round_up","seconds","serialize","sub","sub_assign","sum","to_owned","to_rounded_string","to_string","to_string","to_u64","to_u64","try_from","try_into","type_id","FindClosest","add","add_polygon","all_close_pts","all_points_inside","borrow","borrow_mut","closest_pt","from","geometries","into","is_within","new","quadtree","try_from","try_into","type_id","LonLat","borrow","borrow_mut","center","clone","clone_into","cmp","deserialize","eq","fast_dist","fmt","fmt","from","gps_dist","into","is_within","latitude","longitude","new","parse_geojson_polygons","parse_wkt_linestring","partial_cmp","read_geojson_polygon","serialize","to_geojson","to_owned","to_pt","to_string","try_from","try_into","type_id","x","y","0","0","1","1","InfiniteLine","Line","angle","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","contains_pt","crosses","deserialize","deserialize","dist_along","dist_along_of_point","eq","fmt","fmt","fmt","fmt","from","from","from_pt_angle","infinite","intersection","intersection","intersection_infinite","into","into","is_counter_clockwise","is_within","is_within","length","make_polygons","middle","must_dist_along","must_new","new","percent_along","percent_along_of_point","percent_slice","points","pt1","pt2","reversed","serialize","serialize","shift_either_direction","shift_left","shift_right","slice","to_owned","to_owned","to_polyline","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","unbounded_dist_along","unbounded_percent_along","0","Percent","borrow","borrow_mut","clone","clone_into","eq","fmt","from","inner","int","into","is_within","of","to_owned","to_string","try_from","try_into","type_id","Polygon","area","borrow","borrow_mut","center","centered_on","clip_polyline","clip_ring","clone","clone_into","concave_hull","contains_pt","convex_hull","deserialize","difference","dummy","eq","fmt","fmt","from","from_geojson","from_geojson_bytes","from_multi","from_rings","from_triangle","get_bounds","get_outer_ring","get_rings","intersection","intersects","intersects_polyline","into","into_outer_ring","is_within","maybe_rectangle","maybe_rounded_rectangle","must_scale","pill","polylabel","pretessellated","rectangle","rectangle_centered","rectangle_two_corners","rings","rotate","rotate_around","rounded_rectangle","scale","serialize","simplify","tessellation","to_geo","to_geojson","to_outline","to_owned","to_string","transform","translate","triangles","try_from","try_from","try_into","type_id","union_all_into_multipolygon","with_holes","ArrowCap","MITER_THRESHOLD","PolyLine","Triangle","append","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","dashed_arrow","dashed_lines","deduping_new","deserialize","dist_along","dist_along_of_point","dummy","eq","exact_dashed_polygons","exact_slice","extend","extend_to_length","first_half","first_line","first_pt","fix_angles","fmt","fmt","force_extend","from","from","from_geojson","from_geojson_bytes","get_bounds","get_four_corners_of_thickened","get_slice_ending_at","get_slice_starting_at","interpolate_points","intersection","intersection_infinite","into","into","into_points","is_within","is_within","last_line","last_pt","length","length","lines","make_arrow","make_double_arrow","make_polygons","maybe_exact_slice","maybe_make_arrow","maybe_reverse","middle","must_dist_along","must_extend","must_new","must_shift_left","must_shift_right","new","optionally_push","overall_angle","points","project_pt","pts","quadrant","reversed","safe_get_slice_ending_at","safe_get_slice_starting_at","second_half","serialize","shift_either_direction","shift_from_center","shift_left","shift_right","shift_with_corrections","shift_with_sharp_angles","slice","step_along","step_along_start_end","thicken_tessellation","to_geo","to_geojson","to_owned","to_set","to_string","to_thick_boundary","to_thick_ring","trim_to_endpts","try_from","try_from","try_into","try_into","type_id","type_id","unchecked_new","HashablePt2D","Pt2D","angle_to","approx_dedupe","approx_eq","borrow","borrow","borrow_mut","borrow_mut","center","clone","clone","clone_into","clone_into","cmp","deserialize","dist_to","eq","eq","fast_dist","fmt","fmt","fmt","from","from","from","from","hash","into","into","is_within","is_within","new","offset","partial_cmp","project_away","raw_dist_to","serialize","simplify_rdp","to_geojson","to_gps","to_hashable","to_owned","to_owned","to_pt2d","to_string","try_from","try_from","try_into","try_into","type_id","type_id","x","x","x_nan","y","y","y_nan","zero","Ring","all_intersections","as_geo_linestring","borrow","borrow_mut","clone","clone_into","contains_pt","deduping_new","deserialize","doubles_back","eq","fmt","fmt","from","get_both_slices_btwn","get_shorter_slice_between","get_shorter_slice_btwn","get_slice_between","into","into_points","into_polygon","is_within","must_new","new","points","polylabel","pts","serialize","split_points","to_geojson","to_outline","to_owned","to_string","translate","try_from","try_from","try_into","type_id","0","Speed","ZERO","add","borrow","borrow_mut","clone","clone_into","cmp","const_meters_per_second","deserialize","div","eq","fmt","from","from_dist_time","inner_meters_per_second","into","is_within","km_per_hour","meters_per_second","miles_per_hour","mul","mul","neg","partial_cmp","serialize","sub","to_owned","to_string","try_from","try_into","type_id","HgramValue","Histogram","Max","Mean","Min","P50","P90","P99","Statistic","add","all","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","count","count","default","describe","deserialize","eq","fmt","from","from","from_u64","hgram_zero","histogram","into","into","is_within","is_within","max","min","new","partial_cmp","percentile","remove","seems_eq","select","serialize","to_owned","to_owned","to_string","to_u64","try_from","try_from","try_into","try_into","type_id","type_id","Tessellation","Triangle","borrow","borrow","borrow_mut","borrow_mut","center","clone","clone","clone_into","clone_into","consume","deserialize","difference","downsize","eq","fmt","fmt","from","from","from","from","from_ring","get_bounds","indices","inplace_multi_transform","into","into","is_within","is_within","new","points","pt1","pt2","pt3","rotate","rotate_around","scale","scale_xy","serialize","to_geo","to_geojson","to_owned","to_owned","transform","translate","triangles","try_from","try_from","try_into","try_into","type_id","type_id","union","union_all","0","START_OF_DAY","Time","add","add_assign","ampm_tostring","as_filename","borrow","borrow_mut","clamped_sub","clone","clone_into","cmp","default","deserialize","eq","fmt","fmt","from","get_hours","get_parts","hash","inner_seconds","into","is_within","parse","partial_cmp","percent_of","round_seconds","seconds_since_midnight","serialize","sub","sub","to_owned","to_percent","to_string","try_from","try_into","type_id","prettyprint_usize"],"q":["geom","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::angle","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::bounds","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::circle","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::conversions","geom::distance","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::duration","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::find_closest","","","","","","","","","","","","","","","","","geom::gps","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::line","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::percent","","","","","","","","","","","","","","","","","","","geom::polygon","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::polyline","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::pt","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::ring","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::speed","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::stats","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::tessellation","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::time","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","geom::utils"],"d":["","","","","","","","","","","An angle, stored in radians.","","Represents a rectangular boundary of Pt2D
points.","A circle, defined by a center and radius.","","A distance, in meters. Can be negative.","A duration, in seconds. Can be negative.","","A quad-tree to quickly find the closest points to some …","Represents a rectangular boundary of LonLat
points. After …","This represents world space, NOT LonLat.","","","","A line segment.","Represents a (longitude, latitude) point.","","","","","","","Most of the time, [0, 1]. But some callers may go outside …","","","This represents world-space in meters.","Maybe a misnomer, but like a PolyLine, but closed.","In meters per second. Can be negative.","","A tessellated polygon, ready for rendering.","In seconds since midnight. Can’t be negative.","","","Specifies how to stringify different geom objects.","","","","","","","","","","","","","","","Conversions between this crate and geo
. Long-term, we …","","","","Deserializes a trimmed f64
from an i32
.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Create a GeoJson with one feature per geometry, and no …","Create a GeoJson with one feature per geometry, with the …","","","","Groups of three indices make up the triangles","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","Default settings using metric.","Display in metric; US imperial otherwise.","","","","","","","These points aren’t in any meaningful order. It’s not …","","","","","","","","","","","","","Round Duration
s to a whole number of seconds.","","Serializes a trimmed f64
as an i32
to save space.","","","","","","","","","","","Reduce the precision of an f64. This helps ensure …","","","","","","","","","","","","","","","An angle, stored in radians.","","","True if this angle is within some degrees of another, …","True if this angle is within some degrees of another, …","Calculates the average of some angles.","","","","","Create an angle in degrees.","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","Create an angle in radians.","Returns [0, 360)","Returns [0, 2pi)","Invert the direction of this angle.","","I don’t know how to describe what this does. Use for …","Rotates this angle by some degrees.","","Logically this returns [-180, 180], but keep in mind when …","Returns [-180, 180]","","","","","","Represents a rectangular boundary of Pt2D
points.","Represents a rectangular boundary of LonLat
points. After …","Expand the existing boundary by some distance evenly on …","Converts the boundary to the format used by aabb_quadtree
.","","","","","The center point of this boundary.","","","","","True if the point is within the boundary.","True if the point is within the boundary.","Convert all points to map-space. The points may be outside …","Convert map-space points back to LonLat
s. This is only …","","","","","","","","Returns the argument unchanged.","Create a boundary covering some points.","Create a boundary covering some points.","Returns the argument unchanged.","Create a boundary covering some polygons.","The bottom-right corner of the boundary, in map-space.","Creates a rectangle covering this boundary.","Returns points in order covering this boundary.","The height of this boundary.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","A boundary including no points.","A boundary including no points.","Transform the boundary by scaling its corners.","","","Converts the boundary to map-space.","Creates a circle centered in the middle of this boundary. …","","","Convert all points to map-space, failing if any points are …","","","","","","","Unions two boundaries.","Update the boundary to include this point.","Update the boundary to include this point.","The width of this boundary.","","A circle, defined by a center and radius.","","","","","","","True if the point is inside the circle.","","","","Returns the argument unchanged.","Get the boundary containing this circle.","Calls U::from(self)
.","","Creates a circle.","","","Creates an outline around the circle, strictly contained …","","Renders some percent, between [0, 1], of the circle. The …","Renders the circle as a polygon.","Returns the ring around the circle.","","","","","","","A distance, in meters. Can be negative.","","Returns the absolute value of this distance.","","","","","Creates a distance in centimeters.","","","","","","","","","","","Creates a distance in feet.","","","Returns the argument unchanged.","","","","Creates a distance in inches.","Returns the distance in meters. Prefer to work with …","Calls U::from(self)
.","","Creates a distance in meters.","Creates a distance in miles.","","","","","Rounds this distance up to a higher, more “even” value …","Calculates a percentage, usually in [0.0, 1.0], of self / …","","Returns the square root of this distance.","","","","Returns the distance in feet.","Returns the distance in miles.","","Describes the distance according to formatting rules. …","","","","","","","","A duration, in seconds. Can be negative.","","","","","","","","","","","","","","","","If two durations are within this amount, they’ll print …","","Creates a duration in minutes.","","","Returns the argument unchanged.","","","Splits the duration into (hours, minutes, seconds, …","","Creates a duration in hours.","Returns the duration in seconds. Prefer working in …","Calls U::from(self)
.","","Returns (rounded max, the boundaries)","Creates a duration in milliseconds.","Creates a duration in minutes.","","","","Returns the duration as a number of minutes, rounded up.","Parses a duration such as “3:00” to …","","Returns the duration elapsed from this moment in real time.","","Rounds a duration up to the nearest whole number multiple.","Creates a duration in seconds.","","","","","","Shows only the largest unit (hours, minute, seconds), …","","Describes the duration according to formatting rules.","","","","","","A quad-tree to quickly find the closest points to some …","Add an object to the quadtree, remembering some key …","Adds the outer ring of a polygon to the quadtree.","For every object within some distance of a query point, …","Find all objects with a point inside the query polygon","","","Finds the closest point on the existing geometry to the …","Returns the argument unchanged.","","Calls U::from(self)
.","","Creates the quad-tree, limited to points contained in the …","","","","","Represents a (longitude, latitude) point.","","","Finds the average of a set of coordinates.","","","","","","Pretty meaningless units, for comparing distances very …","","","Returns the argument unchanged.","Returns the Haversine distance to another point.","Calls U::from(self)
.","","","","Note the order of arguments!","Extract polygons from a raw GeoJSON string. For …","Parses a WKT-style line-string into a list of coordinates.","","Reads a GeoJSON file and returns coordinates from the one …","","","","Transform this to a world-space point. Can go out of …","","","","","Returns the longitude of this point.","Returns the latitude of this point.","","","","","","A line segment.","The angle of the line segment, from the first to the …","","","","","","","","","","Determine if two line segments intersect, but more so than …","","","Returns a point along the line segment, unless the …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns an infinite line passing through this line’s two …","If two line segments intersect – including endpoints – …","Fails for parallel lines.","If the line segment intersects with an infinite line – …","Calls U::from(self)
.","Calls U::from(self)
.","","","","Length of the line segment","Returns a thick line segment.","","Equivalent to self.dist_along(dist).unwrap()
. Use this to …","Equivalent to Line::new(pt1, pt2).unwrap()
. Use this to …","Creates a line segment between two points, which must not …","","","Returns a subset of this line, with two percentages along …","Returns the two points in this line segment.","Returns the first point in this line segment.","Returns the second point in this line segment.","Returns a reversed line segment","","","Perpendicularly shifts the line to the right if positive …","Perpendicularly shifts the line over to the left. Width …","Perpendicularly shifts the line over to the right. Width …","","","","Returns a polyline containing these two points.","","","","","","","","","","","","Most of the time, [0, 1]. But some callers may go outside …","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","Usually m^2, unless the polygon is in screen-space","","","Returns the arithmetic mean of the outer ring’s points. …","","Doesn’t handle multiple crossings in and out.","","","","","Does this polygon contain the point in its interior?","","","","An arbitrary placeholder value, when Option types aren’t …","","","","Returns the argument unchanged.","","Extracts all polygons from raw bytes representing a …","","","","","","","","Do two polygons intersect at all?","Does this polygon intersect a polyline?","Calls U::from(self)
.","","","Top-left at the origin. Doesn’t take Distance, because …","Top-left at the origin. Doesn’t take Distance, because …","When factor
is known to be over 1, then scaling can’t …","A rectangle, two sides of which are fully rounded …","Find the “pole of inaccessibility” – the most …","","Top-left at the origin. Doesn’t take Distance, because …","","","","","","Top-left at the origin. Doesn’t take Distance, because …","When factor
is small, this may collapse Rings and thus …","","If simplification fails, just keep the original polygon","","","Optionally map the world-space points back to GPS.","Creates the outline around the polygon (both the exterior …","","","Transformations must preserve Rings.","","","","","","","Union all of the polygons into one geo::MultiPolygon","","","","","","One or both args might be empty.","","","","","","","","Don’t draw the dashes too close to the ends.","First dedupes adjacent points","","","","An arbitrary placeholder value, when Option types aren’t …","","","No excess leftover distance allowed.","Glue together two polylines in order. The last point of …","If the current line is at least this long, return it. …","","","","","","","Like extend
, but handles the last and first point not …","Returns the argument unchanged.","Returns the argument unchanged.","","Extracts all linestrings from raw bytes representing a …","","This does the equivalent of make_polygons, returning the …","Panics if the pt is not on the polyline. Returns None if …","Returns None if the point is the last point.","","Also return the angle of the line where the hit was found","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","If the length is too short, just give up and make the …","","This produces a Polygon
with a valid Ring
. It may crash if …","","Fail if the length is too short.","","","","Like extend
, but panics on failure.","","","","","Extends self
by a single point. If the new point is close …","Returns the angle from the start to end of this polyline.","","Returns the point on the polyline closest to the query.","","Returns the quadrant where the overall angle of this …","","Same as get_slice_ending_at, but returns None if the point …","Same as get_slice_starting_at, but returns None if the …","","","Perpendicularly shifts the polyline to the right if …","self
represents some center, with total_width
. Logically …","","","","","Returns the excess distance left over from the end","Walk along the PolyLine, starting buffer_ends
from the …","Walk along the PolyLine, from start_buffer
to …","Just produces a Tessellation","","Produces a GeoJSON linestring, optionally mapping the …","","","","","Like make_polygons, but make sure the points actually form …","","","","","","","","Doesn’t check for duplicates. Use at your own risk.","This represents world space, NOT LonLat.","This represents world-space in meters.","","","","","","","","","","","","","","","","","","Pretty meaningless units, for comparing distances very …","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","If distance is negative, this projects a point in …","","","Simplifies a list of points using Ramer-Douglas-Peuckr","","Can go out of bounds.","","","","","","","","","","","","","","","","","","","Maybe a misnomer, but like a PolyLine, but closed.","Be careful with the order of results. Hits on an earlier …","Print the coordinates of this ring as a geo::LineString
…","","","","","","First dedupes adjacent points","","Look for “bad” rings that double back on themselves. …","","","","Returns the argument unchanged.","","Assuming both points are somewhere along the ring, return …","","Assuming both points are somewhere along the ring, return …","Calls U::from(self)
.","","","","","","","Find the “pole of inaccessibility” – the most …","","","Extract all PolyLines and Rings. Doesn’t handle crazy …","Produces a GeoJSON polygon, optionally mapping the …","Draws the ring with some thickness, with half of it …","","","Translates the ring by a fixed offset.","","","","","","In meters per second. Can be negative.","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","Describes the speed according to formatting rules.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","None if empty","","Could implement PartialEq, but be a bit more clear how …","","","","","","","","","","","","","A tessellated polygon, ready for rendering.","","","","","","","","","","","Returns (points, indices) for rendering","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","The points
are not necessarily a Ring
, which has strict …","","Groups of three indices make up the triangles","Equivalent to …","Calls U::from(self)
.","Calls U::from(self)
.","","","","These points aren’t in any meaningful order. It’s not …","","","","","","","","","","Produces a GeoJSON multipolygon consisting of individual …","","","","","","","","","","","","","","","","In seconds since midnight. Can’t be negative.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Rounded down. 6:59:00 is hour 6.","(hours, minutes, seconds, centiseconds)","","For RNG range generation. Don’t abuse.","Calls U::from(self)
.","","","","","","","","","","","","","","","",""],"i":[15,20,33,38,39,41,32,60,38,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,57,57,57,57,57,0,0,0,0,0,0,0,0,0,0,48,0,0,1,2,1,2,2,2,0,26,0,1,2,1,2,0,56,2,1,0,0,0,0,2,1,2,2,55,36,0,0,0,55,56,28,1,2,1,2,24,40,0,24,56,23,23,19,19,1,1,56,23,23,19,19,0,28,0,0,0,44,44,44,40,29,36,26,0,25,1,1,0,0,0,0,25,0,1,2,55,2,2,0,1,2,1,2,1,2,2,0,22,52,22,52,2,15,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,19,19,19,23,19,23,19,19,23,19,23,19,23,23,23,23,19,23,19,23,19,23,19,19,23,23,19,23,19,23,19,19,23,19,23,23,23,19,19,23,23,19,19,19,23,19,19,23,23,19,19,23,23,19,23,19,23,19,23,19,19,23,19,19,0,0,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,0,20,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,33,0,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,0,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,38,39,38,39,0,0,38,38,39,38,39,38,39,38,39,38,38,38,39,38,38,38,38,38,39,39,38,39,39,38,38,39,38,38,39,0,38,39,38,38,38,38,38,38,38,38,38,38,38,38,38,38,39,38,38,38,38,38,39,38,38,39,38,39,38,39,38,39,38,38,41,0,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,0,0,48,40,48,40,48,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,0,40,40,40,48,40,40,40,40,40,40,40,40,40,40,48,40,40,48,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,0,40,40,40,40,48,40,48,40,48,40,40,0,0,22,22,22,22,52,22,52,22,22,52,22,52,52,22,22,22,52,22,22,22,52,22,22,22,52,52,22,52,22,52,22,22,52,22,22,22,22,22,22,22,22,52,52,22,22,52,22,52,22,52,22,22,52,22,22,52,22,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,32,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,0,57,57,57,57,57,57,0,56,57,57,56,57,56,57,56,57,56,57,56,56,56,56,57,57,57,57,56,55,55,56,57,56,57,56,56,56,56,57,56,56,56,56,57,57,56,57,55,57,56,57,56,57,56,0,0,28,44,28,44,28,28,44,28,44,28,28,28,0,28,28,44,28,28,28,44,28,28,28,28,28,44,28,44,28,28,44,44,44,28,28,28,28,28,28,28,28,44,28,28,28,28,44,28,44,28,44,28,28,60,60,0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,0],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],0,0,0,0,0,[1,1],[2,2],[[]],[[]],0,0,[[],2],[[],[[3,[1]]]],[4,[[3,[5]]]],0,0,0,[[2,6],7],[[]],[[]],[5,2],[8],0,[[[10,[9]]],11],[10,11],0,[[]],0,0,[[]],[[]],[[],12],[[],12],0,0,0,0,0,0,0,0,0,[[],1],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1,3],[[5,13],3],0,0,0,0,0,[[]],[[]],[[],8],0,0,[5,5],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[5,2],0,0,0,0,0,[[],2],0,0,0,[[15,15],15],[[15,15,5],12],[[15,15,5],12],[[[10,[15]]],15],[[]],[[]],[15,15],[[]],[5,15],[[],[[3,[15]]]],[[15,15],12],[[15,6],7],[[15,6],7],[[]],[[]],[15,15],[[],12],[15,15],[5,15],[15,5],[15,5],[15,15],[[15,15],[[17,[16]]]],[15,15],[[15,5],15],[15,3],[[15,15],15],[[15,15],5],[[]],[[],18],[[],3],[[],3],[[],14],0,0,[[19,20]],[19,21],[[]],[[]],[[]],[[]],[19,22],[19,19],[23,23],[[]],[[]],[[19,22],12],[[23,24],12],[23,[[10,[22]]]],[23,[[10,[24]]]],[[23,5,5],24],[[],[[3,[19]]]],[[],[[3,[23]]]],[[19,19],12],[[23,23],12],[[19,6],7],[[23,6],7],[[]],[[],19],[[[10,[24]]],23],[[]],[[],19],[23,22],[19,25],[23,[[10,[24]]]],[19,5],[[]],[[]],[[],12],[[],12],0,0,0,0,0,0,0,0,[[],19],[[],23],[[19,5],19],[19,3],[23,3],[23,19],[19,26],[[]],[[]],[23,[[17,[[10,[22]]]]]],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[19,19]],[[19,22]],[[23,24]],[19,5],[[],19],0,0,[[]],[[]],0,[26,26],[[]],[[26,22],12],[[],[[3,[26]]]],[[26,6],7],[[26,6],7],[[]],[26,19],[[]],[[],12],[[22,20],26],0,[26,3],[[26,20],[[27,[25]]]],[[]],[[26,5],28],[26,25],[26,29],[[],18],[[],3],[[],3],[[],14],[[],30],0,0,0,[20,20],[[20,20],20],[[20,20]],[[]],[[]],[31,20],[20,20],[[]],[[20,20],16],[5,20],[[],20],[[],[[3,[20]]]],[[20,5],20],[[20,20],5],[[20,32],33],[[20,20],12],[5,20],[[20,6],7],[[20,6],7],[[]],[8,20],[8,20],[[],20],[5,20],[20,5],[[]],[[],12],[5,20],[5,20],[[20,5],20],[[20,5]],[20,20],[[20,20],[[17,[16]]]],[20,20],[[20,20],5],[20,3],[20,20],[[20,20],20],[[20,20]],[[],20],[20,5],[20,5],[[]],[[20,1],18],[[],18],[20,8],[20,8],[[],3],[[],3],[[],14],0,0,0,0,[33,33],[[33,33],33],[[33,33]],[[]],[[]],[33,33],[[]],[[33,33],16],[5,33],[[],33],[[],[[3,[33]]]],[[33,5],33],[[33,33],5],[[33,33],12],[[33,33],12],[5,33],[[33,6],7],[[33,6],7],[[]],[8,33],[8,33],[33],[[],33],[31,33],[33,5],[[]],[[],12],[[33,31]],[5,33],[31,33],[[33,32],20],[[33,5],33],[33,33],[33,31],[34,[[27,[33]]]],[[33,33],[[17,[16]]]],[35,33],[[33,33],33],[[33,33],33],[5,33],[33,3],[[33,33],33],[[33,33]],[[],33],[[]],[[33,31],18],[[],18],[[33,1],18],[33,8],[33,8],[[],3],[[],3],[[],14],0,[36],[[36,25]],[[36,22,20],10],[[36,25],10],[[]],[[]],[[36,22,20],17],[[]],0,[[]],[[],12],[19,36],0,[[],3],[[],3],[[],14],0,[[]],[[]],[[],24],[24,24],[[]],[[24,24],16],[[],[[3,[24]]]],[[24,24],12],[[24,24],[[37,[5]]]],[[24,6],7],[[24,6],7],[[]],[[24,24],20],[[]],[[],12],0,0,[[5,5],24],[18,[[27,[10]]]],[34,[[17,[[10,[24]]]]]],[[24,24],[[17,[16]]]],[34,[[27,[[10,[24]]]]]],[24,3],[24,9],[[]],[[24,23],22],[[],18],[[],3],[[],3],[[],14],[24,5],[24,5],0,0,0,0,0,0,[38,15],[[]],[[]],[[]],[[]],[38,38],[39,39],[[]],[[]],[[38,22],12],[[38,38],12],[[],[[3,[38]]]],[[],[[3,[39]]]],[[38,20],[[27,[22]]]],[[38,22],[[17,[20]]]],[[38,38],12],[[38,6],7],[[38,6],7],[[39,6],7],[[39,6],7],[[]],[[]],[[22,15],39],[38,39],[[38,38],[[17,[22]]]],[[39,39],[[17,[22]]]],[[38,39],[[17,[22]]]],[[]],[[]],[[22,22,22],12],[[],12],[[],12],[38,20],[[38,20],25],[38,[[27,[22]]]],[[38,20],22],[[22,22],38],[[22,22],[[27,[38]]]],[[38,5],[[27,[22]]]],[[38,22],[[17,[5]]]],[[38,5,5],[[27,[38]]]],[38,[[10,[22]]]],[38,22],[38,22],[38,38],[38,3],[39,3],[[38,20],38],[[38,20],38],[[38,20],38],[[38,20,20],[[27,[38]]]],[[]],[[]],[38,40],[[],18],[[],18],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[38,20],22],[[38,5],22],0,0,[[]],[[]],[41,41],[[]],[[41,41],12],[[41,6],7],[[]],[41,5],[31,41],[[]],[[],12],[[31,31],41],[[]],[[],18],[[],3],[[],3],[[],14],0,[25,5],[[]],[[]],[25,22],[[25,22],25],[[25,40],[[17,[[10,[22]]]]]],[[25,29],[[17,[[10,[22]]]]]],[25,25],[[]],[[[10,[22]],42],[[27,[25]]]],[[25,22],12],[[[10,[25]]],[[27,[25]]]],[[],[[3,[25]]]],[[25,25],[[27,[[10,[25]]]]]],[[],25],[[25,25],12],[[25,6],7],[[25,6],7],[[]],[[],[[27,[25]]]],[[23,12],[[27,[10]]]],[43,[[27,[[10,[25]]]]]],[[[10,[29]]],25],[44,25],[25,19],[25,29],[25],[[25,25],[[27,[[10,[25]]]]]],[[25,25],12],[[25,40],12],[[]],[25,29],[[],12],[[5,5],[[27,[25]]]],[[5,5,[45,[2]]],[[17,[25]]]],[[25,5],25],[[5,5],25],[25,22],[[[10,[29]],28],25],[[5,5],25],[[22,20,20],25],[[22,22],[[17,[25]]]],0,[[25,15],25],[[25,15,22],25],[[5,5,[45,[2]]],25],[[25,5],[[27,[25]]]],[25,3],[[25,5],25],0,[25,46],[[25,[17,[23]]],9],[[25,20],28],[[]],[[],18],[[25,47],[[27,[25]]]],[[25,5,5],25],[25,[[10,[44]]]],[46,[[27,[25]]]],[[],3],[[],3],[[],14],[[[10,[25]]],43],[[29,[10,[29]]],25],0,0,0,0,[[[10,[22]],[10,[22]]],[[27,[[10,[22]]]]]],[[]],[[]],[[]],[[]],[40,40],[[]],[[40,20,20,20,48],[[10,[25]]]],[[40,20,20,20],[[10,[25]]]],[[[10,[22]]],[[27,[40]]]],[[],[[3,[40]]]],[[40,20],27],[[40,22],17],[[],40],[[40,40],12],[[40,20,20,20],[[10,[25]]]],[[40,20,20],40],[[40,40],[[27,[40]]]],[[40,20],40],[40,[[27,[40]]]],[40,38],[40,22],[[40,40],[[27,[40]]]],[[40,6],7],[[40,6],7],[[40,40],[[27,[40]]]],[[]],[[]],[[49,[17,[23]]],[[27,[40]]]],[[23,12],[[27,[10]]]],[40,19],[[40,20],17],[[40,22],[[17,[40]]]],[[40,22],[[17,[40]]]],[[40,20],40],[[40,40],17],[[40,39],[[17,[22]]]],[[]],[[]],[40,[[10,[22]]]],[[],12],[[],12],[40,38],[40,22],[40,20],0,[40,50],[[40,20,48],25],[[40,20,48],25],[[40,20],25],[[40,20,20],[[27,[40]]]],[[40,20,48],[[17,[25]]]],[[40,12],40],[40,22],[[40,20]],[[40,40],40],[[[10,[22]]],40],[[40,20],40],[[40,20],40],[[[10,[22]]],[[27,[40]]]],[[40,22],40],[40,15],[40,10],[[40,22],22],0,[40,51],[40,40],[[40,22],[[17,[40]]]],[[40,22],[[17,[40]]]],[40,[[27,[40]]]],[40,3],[[40,20],[[27,[40]]]],[[40,20,20],[[27,[40]]]],[[40,20],[[27,[40]]]],[[40,20],[[27,[40]]]],[[40,20],[[27,[40]]]],[[40,20,5],[[27,[[10,[22]]]]]],[[40,20,20],27],[[40,20,20],10],[[40,20,20,20],10],[[40,20],28],[40,30],[[40,[17,[23]]],9],[[]],[[]],[[],18],[[40,20,20],[[17,[28]]]],[[40,20],29],[[40,22,22],40],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[[10,[22]]],40],0,0,[[22,22],15],[[[10,[22]],20],[[10,[22]]]],[[22,22,20],12],[[]],[[]],[[]],[[]],[[],22],[22,22],[52,52],[[]],[[]],[[52,52],16],[[],[[3,[22]]]],[[22,22],20],[[22,22],12],[[52,52],12],[[22,22],[[37,[5]]]],[[22,6],7],[[22,6],7],[[52,6],7],[53,22],[[]],[54,22],[[]],[52],[[]],[[]],[[],12],[[],12],[[5,5],22],[[22,5,5],22],[[52,52],[[17,[16]]]],[[22,20,15],22],[[22,22],5],[22,3],[[[10,[22]],5],[[10,[22]]]],[[22,[17,[23]]],9],[[22,23],24],[22,52],[[]],[[]],[52,22],[[],18],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[22,5],0,0,[22,5],0,0,[[],22],0,[[29,40],[[10,[22]]]],[29,18],[[]],[[]],[29,29],[[]],[[29,22],12],[[[10,[22]]],[[27,[29]]]],[[],[[3,[29]]]],[29,12],[[29,29],12],[[29,6],7],[[29,6],7],[[]],[[29,22,22],17],[[29,22,22],[[17,[40]]]],[[29,22,22],[[17,[40]]]],[[29,22,22,12],[[17,[40]]]],[[]],[29,[[10,[22]]]],[29,25],[[],12],[[[10,[22]]],29],[[[10,[22]]],[[27,[29]]]],[29,10],[29,22],0,[29,3],[[],27],[[29,[17,[23]]],9],[[29,20],28],[[]],[[],18],[[29,5,5],29],[[],3],[30,[[27,[29]]]],[[],3],[[],14],0,0,0,[[32,32],32],[[]],[[]],[32,32],[[]],[[32,32],16],[5,32],[[],[[3,[32]]]],[[32,32],5],[[32,32],12],[[32,6],7],[[]],[[20,33],32],[32,5],[[]],[[],12],[5,32],[5,32],[5,32],[[32,5],32],[[32,33],20],[32,32],[[32,32],[[17,[16]]]],[32,3],[[32,32],32],[[]],[[32,1],18],[[],3],[[],3],[[],14],0,0,0,0,0,0,0,0,0,[[[56,[[55,[[55,[[55,[55]]]]]]]],[55,[[55,[[55,[[55,[55]]]]]]]]]],[[],[[10,[57]]]],[[]],[[]],[[]],[[]],[57,57],[[[56,[[0,[58,[55,[[0,[58,[55,[[0,[58,[55,[[0,[58,55]]]]]]]]]]]]]]]]],[[56,[[0,[58,[55,[[0,[58,[55,[[0,[58,[55,[[0,[58,55]]]]]]]]]]]]]]]]]],[[]],[[]],[[57,57],16],[[[56,[[55,[[55,[[55,[55]]]]]]]]],31],0,[[],[[56,[[55,[[55,[[55,[55]]]]]]]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]]],18],[[],[[3,[57]]]],[[57,57],12],[[57,6],7],[[]],[[]],[8],[[]],0,[[]],[[]],[[],12],[[],12],0,0,[[],[[56,[[55,[[55,[[55,[55]]]]]]]]]],[[57,57],[[17,[16]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]],5],[[17,[[55,[[55,[[55,[55]]]]]]]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]],[55,[[55,[[55,[[55,[55]]]]]]]]]],[[[56,[[55,[[55,[[55,[55]]]]]]]],56],12],[[[56,[[55,[[55,[[55,[55]]]]]]]],57],[[17,[[55,[[55,[[55,[55]]]]]]]]]],[57,3],[[]],[[]],[[],18],[[],8],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],0,0,[[]],[[]],[[]],[[]],[28,22],[28,28],[44,44],[[]],[[]],[28],[[],[[3,[28]]]],[[28,28],[[27,[[10,[25]]]]]],[[[10,[31]]],[[10,[59]]]],[[28,28],12],[[28,6],7],[[44,6],7],[25,28],[46,28],[[]],[[]],[[[10,[22]]],28],[28,19],0,[[28,5,5,5,15,22]],[[]],[[]],[[],12],[[],12],[[[10,[22]],[10,[31]]],28],0,0,0,0,[[28,15]],[[28,15,22]],[[28,5]],[[28,5,5]],[28,3],[28,46],[[28,[17,[23]]],9],[[]],[[]],[[28,47]],[[28,5,5]],[28,[[10,[44]]]],[[],3],[[],3],[[],3],[[],3],[[],14],[[],14],[[28,28],28],[[[10,[28]]],28],0,0,0,[[60,33],60],[[60,33]],[60,18],[60,18],[[]],[[]],[[60,33],60],[60,60],[[]],[[60,60],16],[[],60],[[],[[3,[60]]]],[[60,60],12],[[60,6],7],[[60,6],7],[[]],[60,31],[60],[60],[60,5],[[]],[[],12],[34,[[27,[60]]]],[[60,60],[[17,[16]]]],[[60,5],60],[[60,5],60],[5,60],[60,3],[[60,33],60],[[60,60],33],[[]],[[60,60],5],[[],18],[[],3],[[],3],[[],14],[31,18]],"p":[[3,"UnitFmt"],[3,"CornerRadii"],[4,"Result"],[8,"Deserializer"],[15,"f64"],[3,"Formatter"],[6,"Result"],[15,"u64"],[3,"Geometry"],[3,"Vec"],[4,"GeoJson"],[15,"bool"],[8,"Serializer"],[3,"TypeId"],[3,"Angle"],[4,"Ordering"],[4,"Option"],[3,"String"],[3,"Bounds"],[3,"Distance"],[3,"Rect"],[3,"Pt2D"],[3,"GPSBounds"],[3,"LonLat"],[3,"Polygon"],[3,"Circle"],[6,"Result"],[3,"Tessellation"],[3,"Ring"],[3,"LineString"],[15,"usize"],[3,"Speed"],[3,"Duration"],[15,"str"],[6,"Instant"],[3,"FindClosest"],[3,"NotNan"],[3,"Line"],[3,"InfiniteLine"],[3,"PolyLine"],[3,"Percent"],[15,"u32"],[3,"MultiPolygon"],[3,"Triangle"],[8,"Into"],[3,"Polygon"],[8,"Fn"],[4,"ArrowCap"],[3,"Feature"],[8,"Iterator"],[15,"i64"],[3,"HashablePt2D"],[3,"Coord"],[3,"Point"],[8,"HgramValue"],[3,"Histogram"],[4,"Statistic"],[8,"Clone"],[15,"u16"],[3,"Time"]]},\
"headless":{"doc":"This runs a simulation without any graphics and serves a …","t":[3,3,3,3,3,3,3,3,3,3,3,3,3,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,12,12,12,12,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,5,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12],"n":["AgentPosition","AgentPositions","Args","BlockedByGraph","Delays","FinishedTrip","LOAD","LoadSim","MAP","RoadThroughput","SIM","Throughput","TrafficSignalState","__private_field","__private_field","__private_field","accepted","agents","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","blocked_by","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clap","counts","current_stage_idx","deref","deref","deref","deserialize","distance_crossed","distance_crossed","duration","edits","export_geometry","from","from","from","from","from","from","from","from","from","from","from","from","from","from_clap","handle_command","id","id","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","main","mode","modifiers","opts","opts","per_direction","per_direction","person","person","port","pos","remaining_time","rng_seed","rng_seed","scenario","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serve_req","setup","trip","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vehicle_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","waiting"],"q":["headless","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Each entry indicates that some agent has been stuck in one …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The distance crossed so far by the agent, in meters. There …","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","The agent’s ID","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","None for buses","What port to run the JSON API on.","The agent’s current position. For pedestrians, this is …","","An arbitrary number to seed the random number generator. …","","","","","","","","","","","","","None for buses","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","None for pedestrians","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,6,30,27,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,31,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,13,29,30,3,5,6,7,24,28,24,7,0,3,5,6,13,24,25,26,27,28,29,30,31,7,13,0,24,28,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,0,24,7,13,7,25,26,24,28,13,28,30,13,7,7,24,25,26,27,28,29,30,31,0,7,28,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,3,5,6,13,24,25,26,27,28,29,30,31,7,28,3,5,6,13,24,25,26,27,28,29,30,31,7,30],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],2],0,0,[3,4],[5,4],[6,4],[[],[[8,[7]]]],0,0,0,0,[[9,10],11],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,13],[[14,15,16,9,7],[[18,[17]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[[[20,[19]]],[[20,[1,19]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[21,[[21,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[],23],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[24,8],[25,8],[26,8],[27,8],[28,8],[29,8],[30,8],[31,8],[[[33,[32]]],[[18,[[34,[32]],35]]]],[[7,36]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],[[],37],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0],"p":[[8,"Any"],[3,"App"],[3,"MAP"],[3,"RwLock"],[3,"SIM"],[3,"LOAD"],[3,"LoadSim"],[4,"Result"],[3,"Map"],[3,"IntersectionID"],[4,"GeoJson"],[3,"ArgMatches"],[3,"Args"],[15,"str"],[3,"HashMap"],[3,"Sim"],[3,"String"],[6,"Result"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[15,"bool"],[3,"FinishedTrip"],[3,"Delays"],[3,"Throughput"],[3,"AgentPositions"],[3,"AgentPosition"],[3,"RoadThroughput"],[3,"TrafficSignalState"],[3,"BlockedByGraph"],[3,"Body"],[3,"Request"],[3,"Response"],[3,"Error"],[3,"Timer"],[3,"TypeId"]]},\
"importer":{"doc":"It’s assumed that the importer is run with the current …","t":[3,11,11,0,0,11,11,12,12,11,0,11,11,11,11,11,11,11,11,11,0,5,12,12,12,0,5,12,5,11,12,0,0,11,11,11,0,0,11,5,3,11,11,11,11,5,11,5,12,11,11,5,11,11,11,11,11,12,11,11,11,11,3,11,11,11,11,11,11,11,12,12,11,11,11,11,11,5,12,11,11,11,12,11,5,5,5,5,5,5,5,5,2,2,2,0,0,3,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,12,5,5,12,12,12,5,5,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,12,3,3,11,11,11,11,11,11,11,11,5,11,11,5,11,11,11,12,11,11,11,11,11,11,11,11,11,11,5,11,12,12,11,12,11,11,11,11,11,11,11,11,11,3,11,11,11,11,5,11,11,11,5,12,5,11,11,11,11,11,5,12,12,12,12,12,12,5,5,11,11,11,11,12,5,5,5,5,5],"n":["Job","as_any","as_any_mut","basemap","berlin","borrow","borrow_mut","city","city_overview","clap","configuration","flags","from","from_clap","full_for_city","into","into_any","into_any_arc","into_any_rc","is_within","map_config","oneshot","only_map","opts","osm_to_raw","pick_geofabrik","pick_geofabrik","raw_to_map","regenerate_everything","run","scenario","seattle","soundcast","try_from","try_into","type_id","uk","utils","vzip","override_sidewalk_widths","Record","as_any","as_any_mut","borrow","borrow_mut","correlate_population","deserialize","distribute_residents","e_e","fmt","from","import_extra_data","into","into_any","into_any_arc","into_any_rc","is_within","raumid","try_from","try_into","type_id","vzip","ImporterConfiguration","as_any","as_any_mut","borrow","borrow_mut","default","deserialize","from","gunzip","gunzip_args","into","into_any","into_any_arc","into_any_rc","is_within","load_configuration","osmium","try_from","try_into","type_id","unzip","vzip","config_for_map","find_matching_regions","load_remote_geojson","pick_geofabrik","adjust_private_parking","ensure_popdat_exists","input","match_parcels_to_buildings","PopDat","import_data","make_scenario","popdat","trips","Endpoint","OrigTrip","PopDat","RawParcel","RawTrip","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","depart_at","deptm","deserialize","deserialize","deserialize","deserialize","deserialize","dpcl","dpurp","fmt","fmt","fmt","fmt","from","from","from","from","from","from","get_mode","get_purpose","half","hh_p","hhno","import_data","import_parcels","import_trips","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","mode","mode","opcl","osm_building","parcel_id","parcelid","parkdy_p","parkhr_p","person","pno","pos","purpose","seq","serialize","serialize","serialize","to","to_owned","to_owned","tour","travdist","travtime","trip_dist","trip_time","trips","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","tseg","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","xcoord_p","ycoord_p","BorderSnapper","Trip","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clip_trips","clone","clone_into","endpoints","fmt","from","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_scenario","new","orig","path","snap_border","to","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Record","as_any","as_any_mut","borrow","borrow_mut","check_sensor_data","deserialize","fmt","from","generate_scenario","home_zone","import_collision_data","into","into_any","into_any_arc","into_any_rc","is_within","load_study_area","num_bikers","num_drivers","num_pedestrians","num_transit1","num_transit2","num_transit3","parse_desire_lines","parse_zones","try_from","try_into","type_id","vzip","work_zone","download","download_kml","osm_to_raw","osmium","raw_to_map"],"q":["importer","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","importer::basemap","importer::berlin","","","","","","","","","","","","","","","","","","","","","","importer::configuration","","","","","","","","","","","","","","","","","","","","","","importer::map_config","importer::pick_geofabrik","","","importer::seattle","","","","importer::soundcast","","","","","importer::soundcast::popdat","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","importer::soundcast::trips","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","importer::uk","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","importer::utils","","","",""],"d":["A specification for importing all maps in a single city.","","","","","","","","Produce a city overview from all of the individual maps in …","","","Return the command-line flags that should produce this …","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","Transforms a .osm file to a map in one step.","Only process one map. If not specified, process all maps …","","Download all raw input files, then convert OSM to the …","","Given the path to a GeoJSON boundary polygon, return the …","Convert the RawMap to the final Map format.","Regenerate all maps and scenarios from scratch.","","Download trip demand data, then produce the typical …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","Given the name of a map, configure its import.","","","Given the path to a GeoJSON boundary polygon, return the …","","Download and pre-process data needed to generate Seattle …","","Match OSM buildings to parcels, scraping the number of …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Transform the Seattle-wide Endpoints
into specific …","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","If the output file doesn’t already exist, downloads the …","If the output file doesn’t already exist, downloads the …","Creates a RawMap from OSM and other input data.","Uses osmium to clip the input .osm (or .pbf) against a …","Converts a RawMap to a Map."],"i":[0,3,3,0,0,3,3,3,3,3,0,3,3,3,3,3,3,3,3,3,0,0,3,3,3,0,0,3,0,3,3,0,0,3,3,3,0,0,3,0,0,21,21,21,21,0,21,0,21,21,21,0,21,21,21,21,21,21,21,21,21,21,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,36,37,33,34,35,36,37,33,34,35,36,37,33,34,35,36,37,33,34,33,34,33,34,33,36,35,36,37,33,34,36,36,36,37,33,34,35,36,37,33,34,33,0,0,36,37,36,0,0,0,35,36,37,33,34,35,36,37,33,34,35,36,37,33,34,35,36,37,33,34,35,36,37,33,34,36,33,36,34,34,37,37,37,33,36,34,33,33,35,33,34,33,33,34,36,36,36,33,33,35,35,36,37,33,34,35,36,37,33,34,36,35,36,37,33,34,35,36,37,33,34,37,37,0,0,43,40,43,40,43,40,43,40,0,40,40,0,40,43,40,40,43,40,43,40,43,40,43,40,43,40,0,43,40,43,43,40,40,43,40,43,40,43,40,43,40,0,45,45,45,45,0,45,45,45,0,45,0,45,45,45,45,45,0,45,45,45,45,45,45,0,0,45,45,45,45,45,0,0,0,0,0],"f":[0,[[],1],[[],1],0,0,[[]],[[]],0,0,[[],2],0,[3,[[5,[4]]]],[[]],[6,3],[7,3],[[]],[[[9,[8]]],[[9,[1,8]]]],[10,[[10,[1]]]],[11,[[11,[1]]]],[[],12],0,[[4,[13,[4]],12,12,14]],0,0,0,0,[4,[[15,[4]]]],0,[[16,16]],[[3,17]],0,0,0,[[],18],[[],18],[[],19],0,0,[[]],[[20,4,17],15],0,[[],1],[[],1],[[]],[[]],[[4,4,17]],[[],[[18,[21]]]],[[20,17]],0,[[21,22],23],[[]],[[24,25,17]],[[]],[[[9,[8]]],[[9,[1,8]]]],[10,[[10,[1]]]],[11,[[11,[1]]]],[[],12],0,[[],18],[[],18],[[],19],[[]],0,[[],1],[[],1],[[]],[[]],[[],25],[[],[[18,[25]]]],[[]],0,0,[[]],[[[9,[8]]],[[9,[1,8]]]],[10,[[10,[1]]]],[11,[[11,[1]]]],[[],12],[[],25],0,[[],18],[[],18],[[],19],0,[[]],[26,27],[[28,29],5],[[4,30],[[15,[28]]]],[4,[[15,[4]]]],[[20,31]],[[17,25,12,12]],[[25,17]],[[20,32,17]],0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,33],[34,34],[[]],[[]],0,0,[[],[[18,[35]]]],[[],[[18,[36]]]],[[],[[18,[37]]]],[[],[[18,[33]]]],[[],[[18,[34]]]],0,0,[[36,22],23],[[37,22],23],[[33,22],23],[[34,22],23],[[]],[[]],[[]],[[]],[[]],0,[30,38],[30,39],0,0,0,[[20,17],35],[[20,17]],[[20,17],[[5,[33]]]],[[]],[[]],[[]],[[]],[[]],[[[9,[8]]],[[9,[1,8]]]],[[[9,[8]]],[[9,[1,8]]]],[[[9,[8]]],[[9,[1,8]]]],[[[9,[8]]],[[9,[1,8]]]],[[[9,[8]]],[[9,[1,8]]]],[10,[[10,[1]]]],[10,[[10,[1]]]],[10,[[10,[1]]]],[10,[[10,[1]]]],[10,[[10,[1]]]],[11,[[11,[1]]]],[11,[[11,[1]]]],[11,[[11,[1]]]],[11,[[11,[1]]]],[11,[[11,[1]]]],[[],12],[[],12],[[],12],[[],12],[[],12],0,0,0,0,0,0,0,0,0,0,0,0,0,[35,18],[33,18],[34,18],0,[[]],[[]],0,0,0,0,0,0,[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],0,[[],19],[[],19],[[],19],[[],19],[[],19],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[20,35,20,12,17],[[5,[40]]]],[40,40],[[]],[[34,34,20,41,42,13,12],13],[[40,22],23],[[]],[[]],0,[[]],[[]],[[[9,[8]]],[[9,[1,8]]]],[[[9,[8]]],[[9,[1,8]]]],[10,[[10,[1]]]],[10,[[10,[1]]]],[11,[[11,[1]]]],[11,[[11,[1]]]],[[],12],[[],12],[[30,20,35,20,17],31],[[34,34,42,13],[[13,[43]]]],0,0,[[43,12,20,13],[[13,[44]]]],0,[[]],[[],18],[[],18],[[],18],[[],18],[[],19],[[],19],[[]],[[]],0,[[],1],[[],1],[[]],[[]],[[20,31,30,17]],[[],[[18,[45]]]],[[45,22],23],[[]],[[20,25,17],15],0,[[24,25,17]],[[]],[[[9,[8]]],[[9,[1,8]]]],[10,[[10,[1]]]],[11,[[11,[1]]]],[[],12],[20,[[15,[46]]]],0,0,0,0,0,0,[4,[[15,[[5,[47]]]]]],[[48,4],[[15,[[41,[4,46]]]]]],[[],18],[[],18],[[],19],[[]],0,[[25,4,30]],[[4,30,48,12,17]],[[26,17,25],24],[[4,4,4,25]],[[26,14,17],20]],"p":[[8,"Any"],[3,"App"],[3,"Job"],[3,"String"],[3,"Vec"],[3,"ArgMatches"],[3,"CityName"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[15,"bool"],[4,"Option"],[3,"RawToMapOptions"],[6,"Result"],[15,"usize"],[3,"Timer"],[4,"Result"],[3,"TypeId"],[3,"Map"],[3,"Record"],[3,"Formatter"],[6,"Result"],[3,"RawMap"],[3,"ImporterConfiguration"],[3,"MapName"],[3,"Options"],[4,"GeoJson"],[3,"LonLat"],[15,"str"],[3,"Scenario"],[3,"ExtraShapes"],[3,"OrigTrip"],[3,"Endpoint"],[3,"PopDat"],[3,"RawTrip"],[3,"RawParcel"],[4,"TripMode"],[4,"TripPurpose"],[3,"Trip"],[3,"HashMap"],[4,"PathConstraints"],[3,"BorderSnapper"],[4,"TripEndpoint"],[3,"Record"],[3,"Polygon"],[3,"DesireLine"],[3,"GPSBounds"]]},\
"kml":{"doc":"","t":[3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,5,12,5,11,11,12,11,11,11,11,11,11,11],"n":["ExtraShape","ExtraShapes","attributes","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","deserialize","deserialize","fmt","from","from","into","into","is_within","is_within","load","load_csv","load_geojson_no_clipping","parse_pt","points","recurse","serialize","serialize","shapes","to_owned","try_from","try_from","try_into","try_into","type_id","type_id"],"q":["kml","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["A single object in the dataset.","Some dataset imported from KML, CSV, or something else. If …","Arbitrary key/value pairs associated with this object; no …","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","Parses a .kml file and returns ExtraShapes. Objects will …","Parses a .csv file and returns ExtraShapes. Each record …","Parses a .geojson file and returns ExtraShapes","","The object has a different inferred shape depending on the …","","","","","","","","","","",""],"i":[0,0,1,2,1,2,1,1,1,2,1,1,2,1,2,1,2,1,0,2,2,0,1,0,2,1,2,1,2,1,2,1,2,1],"f":[0,0,0,[[]],[[]],[[]],[[]],[1,1],[[]],[[],[[3,[2]]]],[[],[[3,[1]]]],[[1,4],5],[[]],[[]],[[]],[[]],[[],6],[[],6],[[7,8,6,9],[[10,[2]]]],[[7,8,9],[[10,[2]]]],[[7,8,6],[[10,[2]]]],[11,[[13,[12]]]],0,[[14,15,16,17,8,6],10],[2,3],[1,3],0,[[]],[[],3],[[],3],[[],3],[[],3],[[],18],[[],18]],"p":[[3,"ExtraShape"],[3,"ExtraShapes"],[4,"Result"],[3,"Formatter"],[6,"Result"],[15,"bool"],[3,"String"],[3,"GPSBounds"],[3,"Timer"],[6,"Result"],[15,"str"],[3,"LonLat"],[4,"Option"],[3,"Node"],[3,"Vec"],[15,"usize"],[3,"BTreeMap"],[3,"TypeId"]]},\
"ltn":{"doc":"","t":[12,3,3,13,3,3,3,3,3,4,3,3,13,3,3,3,3,17,17,3,6,13,0,12,12,11,11,12,12,12,11,11,12,12,12,11,0,0,12,12,12,12,0,12,12,12,12,0,0,12,12,12,12,12,12,0,12,12,12,12,12,0,12,12,0,12,12,12,0,11,11,12,12,12,12,0,12,12,12,11,11,11,11,5,5,11,12,12,5,5,12,12,12,12,14,14,0,12,12,12,12,12,0,12,12,0,12,12,12,12,12,5,12,12,0,12,5,0,0,12,5,0,12,12,12,12,11,11,11,12,12,12,12,11,12,3,3,3,3,6,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,12,12,11,12,11,12,12,12,11,12,11,12,12,12,11,11,11,12,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,12,11,11,11,11,11,11,11,12,11,12,12,5,5,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,17,17,3,3,17,17,17,3,3,3,3,3,3,17,3,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,2,2,13,13,2,2,4,13,13,13,13,0,0,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,5,12,5,5,11,12,11,11,11,11,3,11,11,12,12,11,11,5,11,5,11,11,11,11,11,11,11,5,12,11,12,12,11,12,12,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,3,4,13,12,11,11,11,11,11,11,11,11,12,5,11,11,11,5,12,5,12,5,12,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,12,5,5,11,5,11,5,12,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,11,11,11,11,11,12,11,11,12,11,11,11,11,11,12,11,11,11,11,3,12,11,11,11,11,12,11,11,12,12,12,5,11,12,11,5,12,11,11,11,11,12,5,5,12,11,12,11,5,12,11,11,11,11,11,17,3,3,11,11,11,11,11,11,11,11,12,12,12,5,12,12,5,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,3,4,3,4,13,13,13,13,13,4,13,3,3,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,5,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,12,12,12,11,5,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,5,5,5,5,5,5,5,3,11,11,11,11,12,11,5,11,11,11,11,11,5,12,12,11,11,11,11,5,5,5,13,3,3,3,3,4,13,3,3,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,12,11,11,11,11,11,11,11,0,12,12,11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,2,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,11,11,11,11,11,11,11,13,13,4,13,13,11,11,11,11,11,5,11,11,11,11,11,11,5,11,11,11,11,11,5,5,11,11,11,5,11,11,5,5,3,3,2,12,11,11,11,11,11,11,11,11,12,12,11,12,11,5,11,12,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,11,12,11,12,11,11,11,11,11,11,11,11,0,11,11,3,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,5,5,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,12,12,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,3,3,3,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,12,5,5,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,13,3,13,13,13,4,12,11,11,11,11,11,11,11,11,12,5,11,11,11,11,5,12,5,12,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,12,3,11,12,11,11,11,11,11,12,11,12,11,5,11,11,11,11,12,11,11,12,11,11,12,11,11,11,11,11,11,11,12,12,13,13,2,13,4,3,3,13,3,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,12,12,11,11,11,12,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,5,11,12,12,11,11,11,12,12,0,12,11,0,5,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,5,5,5,5,5,17,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,3,11,11,12,11,11,11,11,11,11,12,11,11,12,5,12,11,11,11,11,12,12,12,5,5,11,12,11,11,11,11,11,11,12,3,3,11,11,11,11,11,11,11,11,12,12,11,11,5,5,5,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11],"n":["0","App","Args","BusGate","Cell","Crossing","DiagonalFilter","DistanceInterval","Edits","FilterType","Neighbourhood","NeighbourhoodID","NoEntry","Partitioning","PerMap","PickArea","RoadFilter","SPRITE_HEIGHT","SPRITE_WIDTH","Session","Transition","WalkCycleOnly","app","app_args","appwide_panel","as_any","as_any_mut","block_to_neighbourhood","borders","borders","borrow","borrow_mut","bottom_panel","broken","cells","clap","colors","components","consultation","consultation","consultation_id","crossing_type","crossings","crossings","cs","current_neighbourhood","current_trip_name","customize_boundary","design_ltn","dist","dist","draw_all_filters","draw_all_road_labels","draw_boundary_roads","draw_bus_routes","draw_cells","draw_major_road_labels","draw_map","draw_neighbourhood_style","draw_over_roads","draw_poi_icons","edit","edit_mode","end","export","filter_type","filter_type","filter_type","filters","from","from_clap","group1","group2","i","id","impact","impact","interior_intersections","intersections","into","into_any","into_any_arc","into_any_rc","is_driveable","is_private","is_within","kind","layers","load_remote","main","main_road_penalty","manage_proposals","map","map","mut_edits","mut_partitioning","neighbourhood","neighbourhood_id_counter","neighbourhoods","one_ways","opts","orig_perimeter","partition","per_map","perimeter","pick_area","previous_version","proposal","proposals","r1","r2","redraw_all_filters","roads","roads","route_planner","routing_params_before_changes","run","save","select_boundary","session","setup_initial_states","shortcuts","shortcuts","show_walking_cycling_routes","single_blocks","start","try_from","try_into","type_id","use_expensive_blockfinding","user_modified","user_modified","user_modified","vzip","world","App","PerMap","Session","SimpleWarper","Transition","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","before_quit","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","consultation","consultation_id","crossing_type","cs","cs","current_neighbourhood","current_stage_and_remaining_time","current_trip_name","draw","draw_all_filters","draw_all_road_labels","draw_bus_routes","draw_default","draw_major_road_labels","draw_map","draw_map","draw_neighbourhood_style","draw_poi_icons","draw_with_layering","draw_with_opts","dump_before_abort","edit_mode","edits","event","filter_type","free_memory","from","from","from","from","impact","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","layers","main_road_penalty","make_warper","manage_proposals","map","map","map_switched","mut_cs","mut_draw_map","mut_opts","new","new","opts","opts","partitioning","per_map","proposals","render_bus_routes","render_poi_icons","routing_params_before_changes","session","show_walking_cycling_routes","sim","sim_time","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","warper","BLOCK_IN_BOUNDARY","BLOCK_IN_FRONTIER","BUS_ROUTE","CELLS","DISCONNECTED_CELL","HIGHLIGHT_BOUNDARY","HOVER","IMPERMEABLE","PLAN_ROUTE_AFTER","PLAN_ROUTE_BEFORE","PLAN_ROUTE_BIKE","PLAN_ROUTE_WALK","POROUS","ROAD_LABEL","SEMI_PERMEABLE","__private_field","__private_field","__private_field","__private_field","__private_field","__private_field","__private_field","__private_field","__private_field","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","deref","deref","deref","deref","deref","deref","deref","deref","deref","from","from","from","from","from","from","from","from","from","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AppwidePanel","BottomPanel","Crossings","Impact","Layers","LeftPanel","Mode","ModifyNeighbourhood","PickArea","RoutePlanner","SelectBoundary","about","appwide_panel","as_any","as_any_mut","borrow","borrow_mut","clone","clone_into","eq","from","into","into_any","into_any_arc","into_any_rc","is_within","layers","left_panel","legend","to_owned","try_from","try_into","type_id","vzip","About","as_any","as_any_mut","borrow","borrow_mut","draw","draw_baselayer","from","into","into_any","into_any_arc","into_any_rc","is_within","new_state","on_click","try_from","try_into","type_id","vzip","AppwidePanel","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","launch_impact","left_panel","make_left_panel","make_top_panel","new","top_panel","try_from","try_into","type_id","vzip","Layers","as_any","as_any_mut","autofix_bus_gates","autofix_one_ways","borrow","borrow_mut","color_grid","draw","entry","event","from","into","into_any","into_any_rc","is_within","make_legend","make_zoom_controls","minimized","new","panel","panel_cache_key","show_bus_routes","show_bus_routes","show_crossing_time","try_from","try_into","type_id","update_panel","vzip","BottomPanel","LeftPanel","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","builder","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","right_of_proposals","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Crossing","Crossings","Obj","Road","appwide_panel","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","bottom_panel","boundary_roads","clone","clone_into","draw","draw_crossings","draw_crossings","draw_nearest_crossing","draw_nearest_crossing","draw_porosity","draw_porosity","eq","equivalent","event","fmt","from","from","get_hash","get_hash","hash","help","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","labels","make_bottom_panel","make_world","new_state","populate_existing_crossings","recreate","svg_path","time_to_nearest_crossing","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update","vzip","vzip","world","0","0","1","CustomizeBoundary","as_any","as_any_mut","borrow","borrow_mut","draw","edit","event","from","id","into","into_any","into_any_rc","is_within","new_state","panel","try_from","try_into","type_id","vzip","DesignLTN","appwide_panel","as_any","as_any_mut","borrow","borrow_mut","bottom_panel","draw","draw_baselayer","draw_top_layer","draw_under_roads_layer","edit","edit_mode","event","fade_irrelevant","from","help","highlight_cell","into","into_any","into_any_rc","is_within","labels","launch_advanced","make_bottom_panel","neighbourhood","new_state","preserve_state","recreate","setup_editing","show_error","try_from","try_into","type_id","update","vzip","RESOLUTION_M","RenderCells","RenderCellsBuilder","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","boundary_polygon","boundary_polygon","bounds","color_cells","colors","colors","diffusion","draw_colored_areas","draw_island_outlines","finalize","from","from","grid","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","new","polygons_per_cell","to_multipolygons","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","ChangeFilterType","EditMode","EditNeighbourhood","EditOutcome","Filters","FreehandFilters","InteriorIntersection","InteriorRoad","Nothing","Obj","Oneways","ResolveBusGate","ResolveOneWayAndFilter","Shortcuts","Transition","UpdatePanelAndWorld","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","cmp","draw","draw","draw","draw_baselayer","draw_baselayer","draw_baselayer","eq","equivalent","error","event","event","event","event","filters","fix_oneway_and_add_filter","fmt","freehand_filters","from","from","from","from","from","from","from","get_hash","get_hash","handle_panel_action","hash","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","is_within","new","new_state","new_state","new_state","one_ways","panel","panel","panel","partial_cmp","road_name","roads","roads","shortcuts","temporary","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","world","0","0","0","0","0","handle_world_outcome","make_world","event","make_filters_along_path","handle_world_outcome","make_world","undo_proposal","FocusedRoad","as_any","as_any_mut","borrow","borrow_mut","current_idx","from","handle_world_outcome","into","into_any","into_any_arc","into_any_rc","is_within","make_world","paths","r","try_from","try_into","type_id","vzip","widget","geojson_string","write_geojson_file","BusGate","ChangeKey","Crossing","DiagonalFilter","Edits","FilterType","NoEntry","RoadFilter","Toggle3Zoomed","WalkCycleOnly","allows_turn","allows_turn","approx_eq","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","auto","avoid_movements_between_roads","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","crossings","crossings","cycle_through_alternatives","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","dist","dist","draw","draw","draw_zoomed","empty","eq","eq","eq","eq","eq","equivalent","existing","filter_type","filter_type","fmt","from","from","from","from","from","from","from","geometry","get_change_key","group1","group2","hide_color","i","intersections","intersections","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","is_within","kind","new","new","new_by_user","one_ways","one_ways","partial_cmp","previous_version","r1","r2","roads","roads","serialize","serialize","serialize","serialize","serialize","svg_path","to_owned","to_owned","to_owned","to_owned","to_owned","transform_existing_filters","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unzoomed","update_routing_params","user_modified","user_modified","user_modified","vzip","vzip","vzip","vzip","vzip","vzip","vzip","BruteForce","Greedy","Heuristic","OnlyOneBorder","SplitCells","apply","as_any","as_any_mut","borrow","borrow_mut","brute_force","choices","clone","clone_into","eq","fmt","from","greedy","into","into_any","into_any_arc","into_any_rc","is_within","only_one_border","split_cells","to_owned","try_from","try_into","try_to_filter_road","type_id","vzip","detect_filters","transform_existing_filters","Filters","Impact","ShowResults","all_trips","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","change_key","compare_counts","counts_b","departure_time","empty","end_of_day","eq","filtered_trips","filters","find_changed_routes","from","from","from_panel","from_scenario","include_borders","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","map","map_edits_changed","modes","pathfinder_after","pathfinder_before_changes","to_panel","trips_changed","try_from","try_from","try_into","try_into","type_id","type_id","ui","vzip","vzip","ChangedRoutes","ExportRow","ShowResults","appwide_panel","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","current","draw","draw","draw_baselayer","draw_paths","event","event","export_csv","export_geojson","from","from","from","help","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","left_panel","new","new_state","new_state","osm_intersection1","osm_intersection2","osm_way_id","panel","paths","recalculate","recreate","road_name","serialize","total_count_after","total_count_before","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","Cell","DistanceInterval","Neighbourhood","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","border_arrows","borders","borders","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","cells","end","find_cells","floodfill","from","from","from","id","interior_intersections","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_disconnected","is_within","is_within","is_within","new","orig_perimeter","perimeter","roads","shortcuts","start","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","0","0","BlockID","NeighbourhoodID","NeighbourhoodInfo","Partitioning","all_block_ids","all_blocks_in_neighbourhood","all_neighbourhoods","all_single_blocks","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","block","block_to_neighbourhood","block_to_neighbourhood","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","broken","calculate_frontier","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cmp","deserialize","deserialize","deserialize","deserialize","empty","eq","eq","equivalent","equivalent","fmt","fmt","from","from","from","from","get_block","get_hash","get_hash","get_hash","get_hash","hash","hash","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_empty","is_within","is_within","is_within","is_within","make_merged_blocks","map","neighbourhood_area_km2","neighbourhood_block","neighbourhood_boundary_polygon","neighbourhood_containing","neighbourhood_id_counter","neighbourhoods","new","override_drawing_boundary","override_neighbourhood_boundary_polygon","partial_cmp","partial_cmp","remove_block_from_neighbourhood","seed_using_heuristics","serialize","serialize","serialize","serialize","single_blocks","some_block_in_neighbourhood","to_owned","to_owned","to_owned","to_owned","transfer_block","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","use_expensive_blockfinding","vzip","vzip","vzip","vzip","Cells","PickArea","Quietness","Shortcuts","Simple","Style","appwide_panel","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","bottom_panel","change_draw_style","clone","clone_into","draw","draw_baselayer","draw_boundary_roads","draw_boundary_roads","draw_over_roads","draw_over_roads","eq","event","fmt","from","from","help","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_world","new_state","recreate","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","world","RoutePlanner","app_session_current_trip_name","appwide_panel","as_any","as_any_mut","borrow","borrow_mut","draw","draw_routes","event","files","from","help","into","into_any","into_any_rc","is_within","left_panel","mut_files","new_state","pathfinder_cache","recalculate_paths","recreate","show_main_roads","sync_from_file_management","try_from","try_into","type_id","update_everything","update_minimal","vzip","waypoints","world","Crossings","DesignLTN","PROPOSAL_HOST_URL","PickArea","PreserveState","Proposal","Proposals","Route","SaveDialog","abst_version","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","before_edit","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","can_overwrite","cancel_empty_edit","checksum","clear_all_but_current","clone","clone","clone_into","clone_into","current","current_proposal","deserialize","draw","draw_baselayer","edits","error","event","from","from","from","from","handle_action","inner_load","inner_save","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","list","load_from_bytes","load_from_path","load_picker_ui","make_active","map","name","name_updated","new","new_state","panel","partitioning","perma","preserve_state","serialize","share","stash_current_proposal","switch_to_existing_proposal","switch_to_state","to_gzipped_bytes","to_owned","to_owned","to_widget_collapsed","to_widget_expanded","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unsaved_parent","vzip","vzip","vzip","vzip","0","from_permanent","is_intersection_id","is_road_id","to_permanent","walk","PROPOSAL_HOST_URL","ShareProposal","UploadedProposals","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","deserialize","draw","draw_baselayer","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","load","md5sums","new_state","on_click","proposal_uploaded","serialize","try_from","try_from","try_into","try_into","type_id","type_id","url","vzip","vzip","SelectBoundary","add_block","add_blocks_freehand","appwide_panel","as_any","as_any_mut","borrow","borrow_mut","currently_have_block","draw","draw_boundary_roads","event","from","frontier","help","id","into","into_any","into_any_rc","is_within","lasso","last_failed_change","left_panel","make_panel","make_panel_for_lasso","new_state","orig_partitioning","toggle_block","try_from","try_into","try_toggle_block","type_id","vzip","world","EntryExit","Shortcuts","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","count_per_intersection","count_per_road","draw_heatmap","empty","find_entrances_or_exits","find_major_road_names","find_shortcuts","from","from","from_paths","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","lane","major_road_names","paths","quiet_and_total_streets","subset","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":["ltn","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::app","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::colors","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::components","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::components::about","","","","","","","","","","","","","","","","","","","ltn::components::appwide_panel","","","","","","","","","","","","","","","","","","","","","","ltn::components::layers","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::components::left_panel","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::crossings","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::crossings::Obj","","","ltn::customize_boundary","","","","","","","","","","","","","","","","","","","","ltn::design_ltn","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::draw_cells","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::edit","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::edit::EditMode","","ltn::edit::EditOutcome","ltn::edit::Obj","","ltn::edit::filters","","ltn::edit::freehand_filters","","ltn::edit::one_ways","","","ltn::edit::shortcuts","","","","","","","","","","","","","","","","","","","","","ltn::export","","ltn::filters","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::filters::auto","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::filters::existing","","ltn::impact","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::impact::ui","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::neighbourhood","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::partition","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::pick_area","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::route_planner","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::save","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::save::PreserveState","ltn::save::perma","","","","","ltn::save::share","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::select_boundary","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","ltn::shortcuts","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","","","","A partitioning of the interior of a neighbourhood based on …","","A diagonal filter exists in an intersection. It’s …","An interval along a road’s length, with start < end.","Stored in App per-map state. Before making any changes, …","Just determines the icon, has no semantics yet","","An opaque ID, won’t be contiguous as we adjust boundaries","","","","","A filter placed somewhere along a road","","","","","","","","","","","","","Intersections where this cell touches the boundary of the …","","","","","","","","","","Lock the user into one fixed neighbourhood, and remove …","","","","One road may have multiple crossings. They’re sorted by …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","For roads with modified directions, what’s their current …","","","","","","","Edit history is preserved recursively","Load a previously saved proposal with this name. Note this …","","","","","Most roads are fully in one cell. Roads with modal filters …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Draw unzoomed, but after the water/park areas layer, draw …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","Both the top panel and the collapsible left sidebar.","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","Panel won’t be initialized, must call event
first","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Bounds of the neighbourhood boundary polygon","","Colors per cell, such that adjacent cells are colored …","","Returns a set of adjacent indices. The pairs are symmetric …","Draw cells as areas with different colors. The colors are …","Draw the boundary between cells as a thick outline. It’s …","","Returns the argument unchanged.","Returns the argument unchanged.","The grid only covers the boundary polygon of the …","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","Partition a neighbourhood’s boundary polygon based on …","","Rarely, this might be empty if the area is very small","Per cell, convert all polygons to a geo::MultiPolygon
. …","","","","","","","","","","","","","","","","","","","","","","","Use this with Transition::Recreate to recalculate the …","Don’t recreate the Neighbourhood","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Creates clickable objects for managing filters on roads …","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","Returns the path where the file was written","","This logically changes every time an edit occurs. MapName …","","A diagonal filter exists in an intersection. It’s …","Stored in App per-map state. Before making any changes, …","Just determines the icon, has no semantics yet","","A filter placed somewhere along a road","Depending on the canvas zoom level, draws one of 2 things.","","","","","","","","","","","","","","","","","","","Experiments to make a neighbourhood be low-traffic by …","","","","","","","","","","","","","","","","","","","","","","","","","","","One road may have multiple crossings. They’re sorted by …","","The caller must call this in a before_edit
/ …","","","","","","","","","","","Draw all modal filters","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Physically where is the filter placed?","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","For roads with modified directions, what’s their current …","","","Edit history is preserved recursively","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Modify RoutingParams to respect these modal filters","","","","","","","","","","","Try adding one filter to every possible road, counting the …","Find the road with the most shortcuts that can be closed …","","Per cell, close all borders except for one. This doesn’t …","Find one filter that splits a cell, maximizing the number …","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","Detect roads that’re modelled in OSM as cycleways, but …","","","","","","","","","","","","","","","","","","","","","","Returns routes that start or stop crossing the given road. …","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A partitioning of the interior of a neighbourhood based on …","An interval along a road’s length, with start < end.","","","","","","","","","","Intersections where this cell touches the boundary of the …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","A cell is disconnected if it’s not connected to a …","","","","","","","Most roads are fully in one cell. Roads with modal filters …","","","","","","","","","","","","","","","","","Identifies a single / unmerged block, which never changes","An opaque ID, won’t be contiguous as we adjust boundaries","","","","","","","","","","","","","","","","","","","","","","","","","","","Blocks on the “frontier” are adjacent to the …","","","","","","","","","","","","","","","Only valid before the LTN tool has been activated this …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","Draw a special cone of light when focused on this …","","","","Needs to find an existing neighbourhood to take the block, …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","Captures all of the edits somebody makes to a map in the …","","","","","","","","","","","","","Call before making any changes to fork a copy of the …","","","","","","","","","","If it’s possible no edits were made, undo the previous …","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","Try to load a proposal. If it fails, returns a popup …","","","","“existing LTNs” is a special reserved name","","","","","","The Proposal struct references IntersectionIDs and …","","","","","","","","","","","","","","","","","","","","","","","","If this proposal is an edit to another proposal, store its …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","",""],"i":[74,0,0,99,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,99,0,4,123,4,4,38,76,116,4,4,123,38,76,4,0,0,37,4,37,138,0,29,16,37,37,0,0,98,100,37,37,123,37,0,37,37,138,123,37,0,138,139,0,138,98,97,0,4,4,97,97,97,76,0,37,76,29,4,4,4,4,0,0,4,100,138,0,0,138,138,37,38,0,0,0,38,38,29,16,76,0,16,76,0,29,4,37,97,97,0,116,29,0,37,0,0,0,16,0,0,76,138,38,139,4,4,4,38,98,100,97,4,123,0,0,0,0,0,16,37,138,24,16,37,138,24,16,16,37,138,24,16,37,138,24,37,37,138,16,16,37,16,37,24,37,37,37,16,37,16,37,138,37,16,16,16,138,16,24,138,16,16,37,138,24,37,16,37,138,24,16,37,138,24,24,16,37,138,24,16,37,138,24,138,138,16,138,16,37,16,16,16,16,16,37,16,16,16,16,37,0,0,37,16,138,16,16,16,37,138,24,16,37,138,24,16,37,138,24,16,37,138,24,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,42,43,45,46,47,48,49,50,51,0,0,52,52,0,0,0,52,52,52,52,0,0,52,52,52,52,52,52,52,52,52,52,52,52,52,0,0,52,52,52,52,52,52,0,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,0,59,59,59,59,59,59,59,59,59,59,59,0,59,0,0,59,59,59,59,59,59,0,53,53,53,53,53,53,0,53,0,53,53,53,53,53,53,53,0,53,53,53,53,53,53,53,53,53,53,53,53,0,0,140,141,140,141,140,141,140,141,140,140,141,140,141,140,141,140,141,140,141,140,141,141,140,140,141,140,141,140,141,140,141,64,0,0,64,65,65,64,65,64,65,64,65,64,65,0,64,64,65,0,65,0,65,0,65,64,64,65,64,65,64,64,64,64,0,65,64,65,64,64,65,64,65,64,65,0,0,65,0,65,0,65,64,65,64,65,64,65,64,65,65,64,65,142,143,143,0,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,0,75,75,75,75,75,75,75,75,75,75,75,0,75,75,75,0,75,75,75,75,75,75,0,0,75,75,75,75,0,75,75,75,75,75,75,0,0,0,81,83,81,83,81,83,81,83,81,83,83,0,81,83,0,81,81,83,81,83,83,81,83,81,83,81,83,81,83,81,83,81,83,81,81,81,83,81,83,81,83,81,83,0,0,0,0,144,144,85,85,90,0,144,0,0,144,90,90,144,91,90,87,88,89,85,144,91,90,87,88,89,85,144,91,90,87,88,89,85,144,91,90,87,88,89,85,85,85,85,87,88,89,87,88,89,85,85,90,91,87,88,89,0,0,85,0,144,91,90,87,88,89,85,85,85,91,85,144,91,90,87,88,89,85,144,91,90,87,88,89,85,144,85,144,91,90,87,88,89,85,144,91,90,87,88,89,85,91,87,88,89,0,87,88,89,85,0,87,88,0,91,85,144,91,90,87,88,89,85,144,91,90,87,88,89,85,144,91,90,87,88,89,85,144,91,90,87,88,89,85,91,145,146,147,148,149,0,0,0,0,0,0,0,0,94,94,94,94,94,94,0,94,94,94,94,94,0,94,94,94,94,94,94,0,0,0,99,0,0,0,0,0,99,0,0,99,29,97,97,66,29,98,99,100,101,97,66,29,98,99,100,101,97,0,97,66,29,98,99,100,101,97,66,29,98,99,100,101,97,29,98,99,100,97,29,98,99,100,97,99,29,101,97,29,101,29,98,99,100,97,98,100,66,29,66,66,98,99,100,101,97,99,0,98,97,99,66,29,98,99,100,101,97,97,29,97,97,99,97,29,101,66,29,98,99,100,101,97,66,29,98,99,100,101,97,29,98,99,100,101,97,66,29,98,99,100,101,97,66,29,98,99,100,101,97,100,66,97,98,29,101,99,29,97,97,29,101,29,98,99,100,97,99,29,98,99,100,97,0,66,29,98,99,100,101,97,66,29,98,99,100,101,97,66,29,98,99,100,101,97,66,29,98,100,97,66,29,98,99,100,101,97,106,106,0,106,106,106,106,106,106,106,0,106,106,106,106,106,106,0,106,106,106,106,106,0,0,106,106,106,0,106,106,0,0,0,0,0,108,108,110,108,110,108,110,108,110,108,108,108,110,108,0,110,108,108,108,108,110,110,108,110,108,110,108,110,110,108,110,108,110,108,108,110,108,108,110,108,108,110,108,110,108,110,0,108,110,0,0,0,113,113,114,115,113,114,115,113,114,115,113,114,115,114,113,114,113,114,113,114,0,0,113,114,115,0,113,114,115,113,114,115,115,113,114,115,113,114,115,113,115,113,114,115,115,115,114,114,114,113,115,115,115,115,113,114,115,113,114,115,113,114,115,113,114,115,0,0,0,76,116,139,76,116,139,116,76,116,76,116,139,76,116,139,76,139,0,0,76,116,139,76,76,76,116,139,76,116,139,76,116,139,76,116,139,116,76,116,139,76,76,76,116,76,139,76,116,139,76,116,139,76,116,139,76,116,139,74,119,0,0,0,0,38,38,38,38,74,119,38,120,74,119,38,120,120,38,38,74,119,38,120,74,119,38,120,38,38,74,119,38,120,74,119,38,120,74,119,74,119,38,120,38,74,119,74,119,74,119,74,119,38,120,38,74,74,119,119,74,119,74,119,38,120,74,119,38,120,74,119,38,120,74,119,38,120,38,74,119,38,120,38,38,38,38,38,38,38,38,120,120,38,74,119,38,38,74,119,38,120,38,38,74,119,38,120,38,74,119,38,120,74,119,38,120,74,119,38,120,38,74,119,38,120,122,0,122,122,122,0,123,123,122,123,122,123,122,123,122,123,0,122,122,123,123,0,123,0,123,122,123,122,123,122,0,123,122,123,122,122,123,122,123,122,0,123,123,122,123,122,123,122,123,122,123,122,123,0,124,124,124,124,124,124,124,124,124,124,124,0,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,60,60,0,60,0,0,0,60,0,127,128,126,127,60,128,126,127,60,126,128,126,127,60,128,126,127,60,128,126,127,126,127,60,127,60,126,126,127,128,128,127,128,128,128,126,127,60,126,127,0,128,126,127,60,128,126,127,60,126,127,60,128,126,127,60,128,126,127,60,126,127,127,0,127,127,127,128,126,128,128,127,0,128,127,0,0,0,60,127,127,60,126,126,128,126,127,60,128,126,127,60,128,126,127,60,127,128,126,127,60,150,0,0,0,0,0,0,0,0,133,132,133,132,133,132,133,132,132,133,133,132,133,132,133,132,133,132,133,132,133,132,133,132,132,132,133,133,132,132,133,132,133,132,133,132,133,133,132,0,134,134,134,134,134,134,134,134,134,134,134,134,134,0,134,134,134,134,134,134,134,134,0,0,134,134,134,134,134,134,134,134,134,0,0,135,136,135,136,135,136,135,136,135,135,135,135,0,0,0,135,136,135,135,136,135,136,135,136,135,136,135,136,136,136,135,135,135,135,136,135,136,135,136,135,136],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],0,0,0,[[]],[[]],0,0,0,[[],2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[3,4],0,0,0,0,0,0,0,0,[[]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[[9,10],11],[9,11],[[],11],0,0,[[12,13,[14,[13]]],[[6,[15]]]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[12,16]],0,0,0,0,[17],0,0,0,[[12,16,[14,[13]],[14,[[6,[15]]]]],[[18,[[6,[15]]]]]],0,0,0,0,0,[[],19],[[],19],[[],20],0,0,0,0,[[]],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[16,21]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[16,22],0,0,[[16,23]],0,[[24,25,16]],0,0,0,[[16,25]],0,[16,26],0,0,0,[[16,25,27]],[[16,25,28]],[[16,21]],0,[16,29],[[24,12,16],30],0,[16],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[],11],[[],11],0,0,[[16,12,31,[14,[32]],[14,[33]]],[[6,[15]]]],0,[16,10],0,[[16,12,10,34]],[16,22],[16,26],[16,35],[[12,35,36,[14,[13]],27]],[[12,10,35,22,34],37],[16,35],0,[16,38],0,0,[[12,10],39],[[12,10],39],0,0,0,[16,40],[16,41],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[],20],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[42],[43,44],[45,44],[46,44],[47,44],[48,44],[49,44],[50,44],[51,44],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[52,52],[[]],[[52,52],11],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[[],11],0,0,[[52,12,22,53],54],[[]],[[],19],[[],19],[[],20],[[]],0,[[],1],[[],1],[[]],[[]],[[55,25,16]],[55,56],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[[],11],[12,[[6,[15]]]],[[55,12,16,57,58],30],[[],19],[[],19],[[],20],[[]],0,[[],1],[[],1],[[]],[[]],[[59,25]],[[59,12,16,60,27],[[14,[30]]]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],11],[[12,16],30],0,[[12,16,58,52],58],[[12,16,52],58],[[12,16,52],59],0,[[],19],[[],19],[[],20],[[]],0,[[],1],[[],1],0,0,[[]],[[]],[12,54],[[53,25,16]],[[12,44,57],54],[[53,12,22,52,[14,[58]]],[[14,[30]]]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],11],[[53,12,22],54],[12,54],0,[12,53],0,0,[[53,12,22,[14,[58]]]],0,0,[[],19],[[],19],[[],20],[[53,12,22,[14,[58]]]],[[]],0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[12,58,54],61],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[12,59,54],58],[[12,59,54],61],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[]],[[]],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[16,[[63,[62]]]],[64,64],[[]],[[65,25,16]],[[12,16],66],0,[[12,16]],0,[[12,16],39],0,[[64,64],11],[[],11],[[65,12,16],30],[[64,67],68],[[]],[[]],[[],69],[[],69],[64],[[],[[18,[57]]]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],0,[[12,16],54],[[12,16,70],[[71,[64]]]],[[12,16],[[6,[15]]]],[16],[[65,12,16],[[6,[15]]]],[72,57],0,[[]],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[65,12,16]],[[]],[[]],0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[73,25,16]],0,[[73,12,16],30],[[]],0,[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],11],[[12,16,74],[[6,[15]]]],0,[[],19],[[],19],[[],20],[[]],0,0,[[],1],[[],1],[[]],[[]],0,[[75,25,16]],[75,56],0,0,0,[[12,16],54],[[75,12,16],30],0,[[]],[[],[[18,[57]]]],0,[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],11],0,[[12,74],30],[[12,16,59,54],58],0,[[12,16,74],[[6,[15]]]],0,[[75,12,16],[[6,[15]]]],[[12,16,76,77]],0,[[],19],[[],19],[[],20],[[75,12,16]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,0,0,[[78,79],[[18,[44]]]],0,0,[[80,78],79],[81,82],[81,82],[83,81],[[]],[[]],0,[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[10,76],81],[[10,76],83],0,[81,[[18,[84]]]],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[85,85],[[]],[[85,85],86],[[87,25,16]],[[88,25,16]],[[89,25,16]],[87,56],[88,56],[89,56],[[85,85],11],[[],11],[[12,57],90],[[91,12,16,76],90],[[87,12,16],30],[[88,12,16],30],[[89,12,16],30],0,[[12,16]],[[85,67],68],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],69],[[],69],[[91,12,16,57,76,58],90],[85],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[12,16,76],91],[[12,18],[[6,[15]]]],[[12,16,18],[[6,[15]]]],[[12,16],[[6,[15]]]],0,0,0,0,[[85,85],[[14,[86]]]],[[16,9],13],0,0,0,[[],91],[[]],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[12,16,[92,[85]]],90],[[12,16,76],[[71,[85]]]],[[12,16,76],90],[[12,16,76,93],30],[[12,16,[92,[85]]],90],[[12,16,76],[[71,[85]]]],[[12,16]],0,[[],1],[[],1],[[]],[[]],0,[[]],[[16,[92,[85]],76],90],[[]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[[],11],[[12,16,76,14],[[71,[85]]]],0,0,[[],19],[[],19],[[],20],[[]],[[12,16,[14,[94]]],54],[16,[[95,[13]]]],[16,[[95,[13]]]],0,0,0,0,0,0,0,0,0,0,[[29,96],11],[[97,62,62],11],[[97,97],11],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[97,18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[29,29],[98,98],[99,99],[100,100],[97,97],[[]],[[]],[[]],[[]],[[]],[[99,99],86],0,0,[[16,23]],[[],29],[[],101],[[],[[19,[29]]]],[[],[[19,[98]]]],[[],[[19,[99]]]],[[],[[19,[100]]]],[[],[[19,[97]]]],0,0,[[66,25]],[[29,12,10],66],0,[12,66],[[98,98],11],[[99,99],11],[[100,100],11],[[101,101],11],[[97,97],11],[[],11],0,0,0,[[99,67],68],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[97,10],102],[29,101],0,0,[99,44],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],0,[[39,103],66],[[16,23,62,62],97],[[104,99],98],0,0,[[99,99],[[14,[86]]]],0,0,0,0,0,[29,19],[98,19],[99,19],[100,19],[97,19],[99,57],[[]],[[]],[[]],[[]],[[]],0,[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],0,[[29,105]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[106,12,16,76,34],95],[[],1],[[],1],[[]],[[]],[[16,76,34]],[[],[[18,[[107,[106]]]]]],[106,106],[[]],[[106,106],11],[[106,67],68],[[]],[[16,76]],[[]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[[],11],[[16,76]],[[16,76,34]],[[]],[[],19],[[],19],[[16,76,62],[[14,[76]]]],[[],20],[[]],[10,[[18,[9]]]],[[12,16,34]],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,0,[[108,16,34],109],0,[12,108],[[],41],[[110,110],11],0,0,[[108,16,62,34],18],[[]],[[]],[58,110],[[12,16,111,34],108],0,[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],0,[[108,12,16,34]],0,[[108,16,34],112],0,[[110,12,16],54],[[108,12,16,34]],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],0,[[]],[[]],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,[[113,25,16]],[[114,25,16]],[113,56],0,[[113,12,16],30],[[114,12,16],30],[16,[[95,[13]]]],[16,[[95,[13]]]],[[]],[[]],[[]],[[],[[18,[57]]]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[],11],0,[[9,16],115],[[12,16],[[6,[15]]]],[[12,16,18],[[6,[15]]]],0,0,0,0,0,[[114,12,16]],[[113,12,16],[[6,[15]]]],0,[115,19],0,0,[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[]],[[]],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[116,16],[[18,[117]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[10,118,63,29],[[18,[116]]]],[[10,62,63,29],116],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[116,11],[[],11],[[],11],[[],11],[[16,74],76],0,0,0,0,0,[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[]],[[]],[[]],0,0,0,0,0,0,[38,[[18,[119]]]],[[38,74],[[18,[119]]]],[38,70],[38,18],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[38,119],74],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[38,118],[[63,[119]]]],[74,74],[119,119],[38,38],[120,120],[[]],[[]],[[]],[[]],[[74,74],86],[[119,119],86],[[],[[19,[74]]]],[[],[[19,[119]]]],[[],[[19,[38]]]],[[],[[19,[120]]]],[[],38],[[74,74],11],[[119,119],11],[[],11],[[],11],[[74,67],68],[[119,67],68],[[]],[[]],[[]],[[]],[[38,119],121],[[],69],[[],69],[[],69],[[],69],[74],[119],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[38,11],[[],11],[[],11],[[],11],[[],11],[[38,10,[18,[119]]],[[95,[[18,[121]]]]]],0,[[38,74],13],[[38,74],121],[[38,16,74],117],[[38,119],[[14,[74]]]],0,0,[121,120],0,[[38,74,117]],[[74,74],[[14,[86]]]],[[119,119],[[14,[86]]]],[[38,10,119,74],[[95,[[14,[74]]]]]],[[10,34],38],[74,19],[119,19],[38,19],[120,19],0,[[38,74],119],[[]],[[]],[[]],[[]],[[38,10,119,74,74],[[95,[[14,[74]]]]]],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[],20],0,[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[12,30],[122,122],[[]],[[123,25,16]],[123,56],[[12,16],39],0,[[12,16],39],0,[[122,122],11],[[123,12,16],30],[[122,67],68],[[]],[[]],[[],[[18,[57]]]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[12,16],[[71,[74]]]],[[12,16],[[6,[15]]]],[[123,12,16],[[6,[15]]]],[[]],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[]],[[]],0,0,[16,14],0,[[],1],[[],1],[[]],[[]],[[124,25,16]],0,[[124,12,16],30],0,[[]],[[],[[18,[57]]]],[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],11],0,[124,125],[[12,16],[[6,[15]]]],0,[[124,12,16],54],[[124,12,16],[[6,[15]]]],0,[[124,12,16]],[[],19],[[],19],[[],20],[[124,12,16]],[[124,12,16]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[126],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[126,11],[[127,16],[[95,[13]]]],[126],[127,127],[60,60],[[]],[[]],0,0,[[],[[19,[127]]]],[[128,25,16]],[128,56],0,[[128,12,16,[129,[57]]],30],[[128,12,16],30],[[]],[[]],[[]],[[]],[[12,16,60,57],[[14,[30]]]],[[12,16,[18,[130]]],95],[16,95],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[],11],[[],11],0,[[12,16,57,[95,[[18,[130]]]]],[[14,[[6,[15]]]]]],[[12,16,13],[[14,[[6,[15]]]]]],[[12,16,60],[[6,[15]]]],[[127,12,16]],0,0,[[128,12]],[[10,34],126],[[12,16,60],[[6,[15]]]],0,0,0,0,[127,19],0,[16],[[12,16,78]],[[60,12,16],30],[[127,16],[[95,[[18,[130]]]]]],[[]],[[]],[[126,12],54],[[126,12,16],54],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[],20],[[],20],0,[[]],[[]],[[]],[[]],0,[[10,131],[[95,[127]]]],[57,11],[57,11],[[10,127],[[95,[131]]]],[[57,131],95],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[],[[19,[132]]]],[[133,25,16]],[133,56],[[132,67],68],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],[[],132],0,[[12,16],[[6,[15]]]],[[133,12,16,57,58],30],[13],[132,19],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],0,[[]],[[]],0,[[134,12,16,119]],[[134,12,16,117]],0,[[],1],[[],1],[[]],[[]],[[134,16,119],11],[[134,25,16]],0,[[134,12,16],30],[[]],0,[[],[[18,[57]]]],0,[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],11],0,0,0,[[12,16,74,58],58],[[12,58],58],[[12,16,74],[[6,[15]]]],0,[[134,12,16,119],30],[[],19],[[],19],[[134,16,119],[[95,[[14,[74]]]]]],[[],20],[[]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,0,[[135,16],82],[[],135],[[10,76,116,11],[[18,[136]]]],[[10,76,23],[[63,[13]]]],[[16,76,34],135],[[]],[[]],[[76,[18,[137]]],135],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],11],[[],11],0,0,0,[[135,76]],[[135,76,62],135],[[],19],[[],19],[[],19],[[],19],[[],20],[[],20],[[]],[[]]],"p":[[8,"Any"],[3,"App"],[3,"ArgMatches"],[3,"Args"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[3,"Road"],[3,"Map"],[15,"bool"],[3,"EventCtx"],[3,"String"],[4,"Option"],[8,"State"],[3,"App"],[3,"Settings"],[3,"Vec"],[4,"Result"],[3,"TypeId"],[3,"Canvas"],[3,"ColorScheme"],[3,"IntersectionID"],[3,"SimpleWarper"],[3,"GfxCtx"],[3,"DrawMap"],[8,"Fn"],[3,"DrawOptions"],[3,"Edits"],[6,"Transition"],[3,"Pt2D"],[15,"f64"],[4,"ID"],[3,"Timer"],[3,"Options"],[3,"MapName"],[3,"PerMap"],[3,"Partitioning"],[3,"Drawable"],[3,"Sim"],[3,"Time"],[3,"CELLS"],[3,"PLAN_ROUTE_BEFORE"],[3,"Color"],[3,"PLAN_ROUTE_AFTER"],[3,"PLAN_ROUTE_BIKE"],[3,"PLAN_ROUTE_WALK"],[3,"BUS_ROUTE"],[3,"POROUS"],[3,"SEMI_PERMEABLE"],[3,"IMPERMEABLE"],[4,"Mode"],[3,"Layers"],[3,"Widget"],[3,"About"],[4,"DrawBaselayer"],[15,"str"],[3,"Panel"],[3,"AppwidePanel"],[4,"PreserveState"],[3,"PanelBuilder"],[3,"RoadID"],[3,"BTreeSet"],[4,"Obj"],[3,"Crossings"],[3,"Toggle3Zoomed"],[3,"Formatter"],[6,"Result"],[15,"u64"],[3,"BTreeMap"],[3,"World"],[4,"CrossingType"],[3,"CustomizeBoundary"],[3,"NeighbourhoodID"],[3,"DesignLTN"],[3,"Neighbourhood"],[3,"DrawSimpleRoadLabels"],[15,"usize"],[3,"HashSet"],[3,"Grid"],[3,"RenderCells"],[3,"GeomBatch"],[3,"RenderCellsBuilder"],[3,"MultiPolygon"],[4,"Obj"],[4,"Ordering"],[3,"ResolveOneWayAndFilter"],[3,"ResolveBusGate"],[3,"ChangeFilterType"],[4,"EditOutcome"],[3,"EditNeighbourhood"],[4,"WorldOutcome"],[3,"PolyLine"],[3,"FocusedRoad"],[6,"Result"],[3,"TurnID"],[3,"DiagonalFilter"],[3,"RoadFilter"],[4,"FilterType"],[3,"Crossing"],[3,"ChangeKey"],[3,"Line"],[3,"DrawCustomUnzoomedShapes"],[3,"Distance"],[3,"RoutingParams"],[4,"Heuristic"],[3,"Choice"],[3,"Impact"],[3,"TrafficCounts"],[3,"Filters"],[3,"Scenario"],[3,"Pathfinder"],[3,"ShowResults"],[3,"ChangedRoutes"],[3,"ExportRow"],[3,"Cell"],[3,"Polygon"],[3,"Perimeter"],[3,"BlockID"],[3,"NeighbourhoodInfo"],[3,"Block"],[4,"Style"],[3,"PickArea"],[3,"RoutePlanner"],[3,"TripManagement"],[3,"Proposals"],[3,"Proposal"],[3,"SaveDialog"],[8,"AsRef"],[15,"u8"],[4,"Value"],[3,"UploadedProposals"],[3,"ShareProposal"],[3,"SelectBoundary"],[3,"Shortcuts"],[3,"EntryExit"],[3,"PathV2"],[3,"Session"],[3,"DistanceInterval"],[3,"LeftPanel"],[3,"BottomPanel"],[13,"Road"],[13,"Crossing"],[4,"EditMode"],[13,"FreehandFilters"],[13,"Shortcuts"],[13,"Transition"],[13,"InteriorRoad"],[13,"InteriorIntersection"],[13,"DesignLTN"]]},\
"map_editor":{"doc":"The map_editor renders and lets you edit RawMaps, which …","t":[3,0,11,11,11,11,12,0,11,0,11,11,12,11,11,11,11,11,0,12,5,0,5,11,11,11,3,13,3,4,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,12,12,3,3,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,5,11,12,11,11,11,17,13,4,17,13,3,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12],"n":["Args","app","as_any","as_any_mut","borrow","borrow_mut","cam","camera","clap","edit","from","from_clap","include_buildings","into","into_any","into_any_arc","into_any_rc","is_within","load","load","main","model","run","try_from","try_into","type_id","App","CreatingRoad","MainState","Mode","Neutral","SetBoundaryPt1","SetBoundaryPt2","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","before_quit","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","draw","draw_default","dump_before_abort","event","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","mode","model","new_state","panel","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_instructions","0","0","CameraState","DefaultMap","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","cam_x","cam_y","cam_zoom","deserialize","deserialize","fmt","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","last_map","load","save","serialize","serialize","try_from","try_from","try_into","try_into","type_id","type_id","EditRoad","as_any","as_any_mut","borrow","borrow_mut","draw","draw_baselayer","from","into","into_any","into_any_rc","is_within","new_state","on_click","other_event","panel_changed","r","show_direction","try_from","try_into","type_id","PickMap","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","into","into_any","into_any_rc","is_within","load_map","new_state","panel","try_from","try_into","type_id","BUILDING_LENGTH","Building","ID","INTERSECTION_RADIUS","Intersection","Model","Road","RoadPoint","as_any","as_any","as_any_mut","as_any_mut","blank","bldg_added","borrow","borrow","borrow_mut","borrow_mut","change_r_points","clear_r_pts","clone","clone_into","compute_bounds","create_b","create_i","create_r","delete_b","delete_i","delete_r","delete_r_pt","dump_to_osm","eq","equivalent","export_to_osm","fmt","from","from","from_map","get_hash","get_hash","hash","include_bldgs","insert_r_pt","intersection_added","intersection_geom","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","map","merge_r","move_b","move_i","move_r_pt","recreate_world","road_added","road_deleted","set_boundary","show_intersection_geometry","show_r_points","showing_pts","stop_showing_pts","to_owned","toggle_i","toggle_junction","try_from","try_from","try_into","try_into","type_id","type_id","world","0","0","0","0","1"],"q":["map_editor","","","","","","","","","","","","","","","","","","","","","","","","","","map_editor::app","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_editor::app::Mode","","map_editor::camera","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_editor::edit","","","","","","","","","","","","","","","","","","","","","map_editor::load","","","","","","","","","","","","","","","","","","map_editor::model","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_editor::model::ID","","","",""],"d":["","","","","","","The initial camera state","","","","Returns the argument unchanged.","","Import buildings from the RawMap. Slow.","Calls U::from(self)
.","","","","","","The path to a RawMap to load. If omitted, start with a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","Represents the state of a widgetry Canvas.","Track the last map used, to resume next session.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","Load the camera’s configuration for the specified map. …","Save the camera’s configuration for the specified map, …","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Express a RawMap as a .osm file. Why not just save the …","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,4,4,4,4,4,0,4,0,4,4,4,4,4,4,4,4,0,4,0,0,0,4,4,4,0,46,0,0,46,46,46,13,15,46,13,15,46,13,13,15,46,13,15,46,15,13,13,15,13,15,46,13,15,46,13,15,46,46,13,15,46,13,15,46,15,13,15,15,13,15,46,13,15,46,13,15,46,15,47,48,0,0,20,21,20,21,20,21,20,21,20,20,20,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,21,20,20,20,21,20,21,20,21,20,21,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,31,31,31,31,31,31,31,31,31,31,31,0,31,31,31,31,31,0,36,0,0,36,0,36,36,33,36,33,36,33,33,33,36,33,36,33,33,36,36,33,33,33,33,33,33,33,33,0,36,36,33,36,33,36,33,36,36,36,33,33,33,33,33,36,33,36,36,33,36,33,36,33,33,33,33,33,33,33,33,33,33,33,33,33,36,33,33,33,36,33,36,33,36,33,49,50,51,52,52],"f":[0,0,[[],1],[[],1],[[]],[[]],0,0,[[],2],0,[[]],[3,4],0,[[]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[[],9],0,0,[[]],0,[10],[[],11],[[],11],[[],12],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[13,14]],[[]],[[]],[[]],[[]],[[]],[[]],[[15,16,13]],[[13,16]],[[13,14]],[[15,17,13],[[18,[13]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],9],[[],9],[[],9],0,0,[[17,13],[[6,[19]]]],0,[[],11],[[],11],[[],11],[[],11],[[],11],[[],11],[[],12],[[],12],[[],12],[[15,17,13]],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,0,0,[[],[[11,[20]]]],[[],[[11,[21]]]],[[20,22],23],[[21,22],23],[[]],[[]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],9],[[],9],0,[[17,24],9],[[14,24]],[20,11],[21,11],[[],11],[[],11],[[],11],[[],11],[[],12],[[],12],0,[[],1],[[],1],[[]],[[]],[[25,16,13]],[25,26],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],9],[[17,13,27],[[6,[19]]]],[[25,17,13,28,29],[[18,[13]]]],[[25,17,13],[[18,[13]]]],[[25,17,13,29],[[30,[[18,[13]]]]]],0,0,[[],11],[[],11],[[],12],0,[[],1],[[],1],[[]],[[]],[[31,16,13]],[[31,17,13],[[18,[13]]]],[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[8,[[8,[1]]]],[[],9],[[17,32,9,[30,[32]]],[[6,[19]]]],[17,[[6,[19]]]],0,[[],11],[[],11],[[],12],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],33],[[33,17,34]],[[]],[[]],[[]],[[]],[[33,17,27,35]],[[33,17,27]],[36,36],[[]],[33,37],[[33,17,38],36],[[33,17,38]],[[33,17,39,39]],[[33,34]],[[33,39]],[[33,17,27]],[[33,17,27,40]],[41,[[11,[42]]]],[[36,36],9],[[],9],[33],[[36,22],23],[[]],[[]],[[17,41,9,43],33],[[],44],[[],44],[36],0,[[33,17,27,38]],[[33,17,39]],0,[[]],[[]],[[[6,[5]]],[[6,[1,5]]]],[[[6,[5]]],[[6,[1,5]]]],[7,[[7,[1]]]],[8,[[8,[1]]]],[8,[[8,[1]]]],[[],9],[[],9],0,[[33,17,27]],[[33,17,34,45,45]],[[33,17,39,38]],[[33,17,27,40,38]],[[33,17,43]],[[33,17,27]],[[33,27]],[[33,17,38,38]],[[33,17,9]],[[33,17,27]],0,[[33,27]],[[]],[[33,17,39]],[[33,17,27]],[[],11],[[],11],[[],11],[[],11],[[],12],[[],12],0,0,0,0,0,0],"p":[[8,"Any"],[3,"App"],[3,"ArgMatches"],[3,"Args"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[15,"bool"],[3,"Settings"],[4,"Result"],[3,"TypeId"],[3,"App"],[3,"Canvas"],[3,"MainState"],[3,"GfxCtx"],[3,"EventCtx"],[4,"Transition"],[8,"State"],[3,"CameraState"],[3,"DefaultMap"],[3,"Formatter"],[6,"Result"],[3,"MapName"],[3,"EditRoad"],[4,"DrawBaselayer"],[3,"RoadID"],[15,"str"],[3,"Panel"],[4,"Option"],[3,"PickMap"],[3,"String"],[3,"Model"],[4,"OsmID"],[8,"FnMut"],[4,"ID"],[3,"Bounds"],[3,"Pt2D"],[3,"IntersectionID"],[15,"usize"],[3,"RawMap"],[3,"Error"],[3,"Timer"],[15,"u64"],[15,"f64"],[4,"Mode"],[13,"CreatingRoad"],[13,"SetBoundaryPt2"],[13,"Building"],[13,"Intersection"],[13,"Road"],[13,"RoadPoint"]]},\
"map_gui":{"doc":"This crate contains common code for applications that draw …","t":[8,13,13,13,4,13,13,13,13,13,13,3,3,13,11,11,11,11,11,11,11,12,11,11,11,11,12,0,10,12,12,11,12,10,12,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,10,10,12,12,10,12,10,10,10,0,10,12,11,0,12,12,10,11,0,12,11,0,11,11,11,11,12,12,12,12,12,12,12,12,12,12,13,3,4,13,13,13,13,12,12,11,11,11,11,12,12,12,12,11,11,11,11,12,12,12,12,12,12,12,11,11,11,11,12,11,12,11,12,11,12,12,11,11,12,11,12,11,11,12,12,12,12,12,5,11,12,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,5,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,11,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,11,11,11,11,12,11,11,12,12,12,12,12,12,12,12,12,12,11,12,11,11,12,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,13,13,4,13,13,13,13,13,3,3,13,4,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,12,11,11,11,12,12,12,12,12,12,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,3,17,3,3,3,3,3,3,3,3,17,8,3,0,12,0,12,11,11,0,12,12,12,12,11,11,12,0,12,12,12,5,0,12,10,10,12,12,12,12,12,12,12,12,12,5,11,10,10,11,5,12,12,12,12,12,12,0,12,11,11,11,11,11,12,12,0,0,12,11,0,12,0,12,12,12,0,12,12,12,12,0,0,11,11,0,11,12,5,12,11,12,12,12,12,3,3,12,11,11,11,11,11,12,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,12,12,11,11,11,3,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,3,11,11,12,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,17,3,11,11,12,12,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,5,11,11,11,11,5,12,3,5,11,11,11,11,5,5,5,11,11,11,12,11,12,11,11,11,11,11,12,11,11,11,11,5,5,5,5,11,5,11,11,11,11,11,11,11,12,3,11,11,11,11,5,5,5,5,5,5,11,11,11,12,11,11,11,11,12,11,11,11,11,11,5,12,11,11,11,11,11,12,3,12,11,11,11,11,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,12,12,11,11,11,11,11,12,12,11,11,11,11,11,12,3,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,12,17,3,17,11,11,11,11,11,11,11,12,5,11,11,11,11,12,11,11,11,11,12,11,11,5,11,11,11,11,12,5,5,5,5,5,5,3,17,11,11,11,11,12,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,3,17,11,11,11,11,11,11,11,12,12,11,11,11,11,11,5,11,11,11,11,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,12,12,11,12,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,12,11,11,11,11,11,11,11,12,11,11,12,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,13,3,3,3,3,3,3,3,3,4,13,3,3,3,3,13,3,8,17,3,13,13,13,3,13,3,3,8,3,3,12,5,10,12,12,12,12,12,12,0,12,5,5,0,5,5,5,5,12,0,12,12,0,0,12,12,12,12,12,12,12,12,12,5,0,5,12,12,12,5,5,5,10,0,12,5,0,12,0,12,12,5,12,12,0,12,12,12,12,5,5,12,12,12,12,0,10,0,5,5,12,12,12,12,12,12,12,12,12,12,12,12,5,12,0,5,12,12,12,12,12,12,5,12,12,10,12,12,0,0,0,0,5,0,5,0,12,12,12,12,12,12,3,3,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,5,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,5,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,12,11,11,11,11,11,11,11,12,12,12,11,12,12,12,11,12,12,11,11,11,11,13,13,13,3,13,4,4,13,11,11,11,11,11,11,11,11,11,11,11,11,11,5,5,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,5,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,5,3,3,17,11,11,11,11,11,11,11,11,11,11,12,12,12,5,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,12,11,5,5,3,11,11,11,11,11,11,11,5,5,11,11,11,11,11,12,12,5,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,5,11,11,12,11,12,12,11,11,12,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,12,11,11,5,5,11,11,11,11,11,11,11,11,7,7,3,8,12,11,11,12,11,11,12,12,11,11,11,11,11,11,11,11,11,10,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,12,11,11,11,11,12,12,12,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,3,4,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,12,13,4,13,13,13,13,13,13,3,11,11,11,11,11,11,11,11,0,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,5,3,3,3,3,8,12,12,10,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,10,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,17,17,3,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,12,11,11,11,11,3,11,11,11,11,5,5,5,5,5,11,11,11,11,11,11,11,5,11,11,11,11,5,5,5,12,3,3,3,11,11,11,11,11,11,12,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12],"n":["AppLike","Area","Building","Car","ID","Intersection","Lane","ParkingLot","PedCrowd","Pedestrian","Road","SimpleApp","SimpleAppArgs","TransitStop","agent_id","as_any","as_any_mut","as_building","as_intersection","borrow","borrow_mut","cam","change_color_scheme","clone","clone_into","cmp","color_scheme","colors","cs","cs","current_selection","current_stage_and_remaining_time","dev","draw_map","draw_map","draw_with_opts","eq","equivalent","fmt","from","from","from","from","from","from","from","from","from","from","from","from_agent","get_hash","get_hash","hash","into","into_any","into_any_arc","into_any_rc","is_within","load","make_warper","map","map","map_path","map_switched","minimal_controls","mut_cs","mut_draw_map","mut_opts","options","opts","opts","partial_cmp","render","scale_factor","session","sim","sim_time","simple_app","time","to_owned","tools","try_from","try_into","type_id","vzip","0","0","0","0","0","0","0","0","0","0","ClassicDayMode","ColorScheme","ColorSchemeChoice","DayMode","LTN","NightMode","Textured","after_changes","agent_colors","as_any","as_any","as_any_mut","as_any_mut","before_changes","bike_frame","bike_lane","bike_trip","borrow","borrow","borrow_mut","borrow_mut","brake_light","building_outline","bus_body","bus_label","bus_lane","bus_layer","bus_trip","choices","classic","clone","clone_into","commercial_building","curb","current_object","day_mode","day_time_slider","deserialize","driving_lane","edits_layer","eq","export","fade_map_dark","fmt","footway","from","from","general_road_marking","good_to_bad_green","good_to_bad_red","grass","gui_style","hex","import","inner_panel_bg","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","light_background","light_rail_track","ltn","map_background","minimap_cursor_bg","minimap_cursor_border","modulo_color","new","night_mode","night_time_slider","normal_intersection","panel_bg","parked_car","parking_lane","parking_lot","parking_trip","parse","ped_crowd","ped_foot","ped_head","ped_preparing_bike_body","perma_selected_object","private_road","residential_building","road_center_line","road_center_line","road_class_colors","road_outlines","rotating_color_agents","rotating_color_plot","route","scheme","selected","serialize","shared_use","show_buildings_in_minimap","sidewalk","sidewalk_lines","signal_banned_turn","signal_box","signal_permitted_turn","signal_protected_turn","signal_spinner","signal_turn_block_bg","slow_intersection","slower_intersection","slowest_intersection","stop_sign","stop_sign_pole","study_area","textured","to_owned","train_body","try_from","try_from","try_into","try_into","turn_arrow","type_id","type_id","unzoomed_arterial","unzoomed_bike","unzoomed_bus","unzoomed_car","unzoomed_cycleway","unzoomed_footway","unzoomed_highway","unzoomed_interesting_intersection","unzoomed_pedestrian","unzoomed_residential","unzoomed_road_surface","void_background","vzip","vzip","water","zoomed_intersection_surface","zoomed_road_surface","MapAlreadyLoaded","MapLoader","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","draw","event","force_reload","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","on_load","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Abstract","Brian","CameraAngle","IndividualTurnArrows","IsometricNE","IsometricNW","IsometricSE","IsometricSW","Options","OptionsPanel","TopDown","TrafficSignalStyle","Yuwen","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","camera_angle","canvas_settings","clone","clone","clone","clone_into","clone_into","clone_into","color_scheme","debug_all_agents","deserialize","deserialize","deserialize","dev","dont_draw_time_warp","draw","eq","eq","event","fmt","fmt","from","from","from","from","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","jump_to_delay","language","load_or_default","minimal_controls","new_state","panel","serialize","serialize","serialize","show_building_driveways","show_crosswalks","show_stop_signs","show_traffic_signal_icon","simplify_basemap","time_increment","to_owned","to_owned","to_owned","toggle_day_night_colors","traffic_signal_style","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","units","vzip","vzip","vzip","vzip","AgentCache","BIG_ARROW_THICKNESS","DrawArea","DrawBuilding","DrawIntersection","DrawMap","DrawMovement","DrawOptions","DrawPedCrowd","DrawPedestrian","OUTLINE_THICKNESS","Renderable","UnzoomedAgents","agents","agents_per_on","area","areas","as_any","as_any_mut","bike","bikes","blob","blob_pl","body_circle","borrow","borrow_mut","boundary_polygon","building","buildings","bus_stops","buses_and_trains","calculate_corners","car","cars","contains_pt","draw","draw_all_areas","draw_all_building_outlines","draw_all_buildings","draw_all_unzoomed_parking_lots","draw_all_unzoomed_roads_and_intersections","draw_default","draw_default","draw_default","draw_traffic_signal","draw_vehicle","from","get_id","get_outline","get_zorder","grey_out_unhighlighted_people","hitbox","id","id","id","id","id","intersection","intersections","into","into_any","into_any_arc","into_any_rc","is_within","label","label_buildings","lane","map","members","new","parking_lot","parking_lots","pedestrian","peds","quadtree","quadtree_ids","road","roads","show_zorder","suppress_traffic_signal_details","time","traffic_signal","transit_stop","try_from","try_into","turn","type_id","unzoomed","unzoomed_agent_radius","unzoomed_agents","vzip","zorder","zorder","zorder","zorder_range","AgentCache","UnzoomedAgents","agents_per_on","as_any","as_any","as_any_mut","as_any_mut","bikes","bikes","borrow","borrow","borrow_mut","borrow_mut","buses_and_trains","buses_and_trains","calculate_unzoomed_agents","cars","cars","clone","clone_into","color","draw_unzoomed_agents","eq","from","from","get","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","new","peds","peds","populate_if_needed","time","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","unzoomed","unzoomed_agents","update","vzip","vzip","DrawArea","as_any","as_any_mut","borrow","borrow_mut","contains_pt","draw","fill","from","get_id","get_outline","id","into","into_any","into_any_arc","into_any_rc","is_within","new","try_from","try_into","type_id","vzip","DrawBike","as_any","as_any_mut","body_circle","borrow","borrow_mut","contains_pt","draw","draw_default","from","get_id","get_outline","get_zorder","id","into","into_any","into_any_rc","is_within","new","try_from","try_into","type_id","vzip","zorder","DrawBuilding","as_any","as_any_mut","borrow","borrow_mut","clear_rendering","contains_pt","draw","from","get_id","get_outline","get_zorder","id","into","into_any","into_any_rc","is_within","label","new","try_from","try_into","type_id","vzip","CAR_WIDTH","DrawCar","as_any","as_any_mut","body","body_polygon","borrow","borrow_mut","contains_pt","draw","draw_default","from","get_id","get_outline","get_zorder","id","into","into_any","into_any_rc","is_within","new","thick_line_from_angle","try_from","try_into","type_id","vzip","zoomed_color_car","zorder","DrawIntersection","approx_eq","as_any","as_any_mut","borrow","borrow_mut","calculate_border_arrows","calculate_corner_curbs","calculate_corners","clear_rendering","contains_pt","draw","draw_default","draw_traffic_signal","draw_traffic_signal","from","get_id","get_outline","get_unzoomed_outline","get_zorder","id","into","into_any","into_any_rc","is_within","make_crosswalk","make_octagon","make_rainbow_crosswalk","make_unmarked_crossing","new","perp_line","redraw_default","render","stop_sign_geom","try_from","try_into","type_id","vzip","zorder","DrawLane","as_any","as_any_mut","borrow","borrow_mut","calculate_buffer_markings","calculate_driving_lines","calculate_one_way_markings","calculate_parking_lines","calculate_sidewalk_lines","calculate_turn_markings","clear_rendering","contains_pt","draw","draw_default","from","get_id","get_outline","get_zorder","id","into","into_any","into_any_rc","is_within","new","perp_line","polygon","render","try_from","try_into","type_id","vzip","zorder","DrawMap","areas","as_any","as_any_mut","borrow","borrow_mut","boundary_polygon","buildings","bus_stops","draw_all_areas","draw_all_building_outlines","draw_all_buildings","draw_all_unzoomed_parking_lots","draw_all_unzoomed_roads_and_intersections","free_memory","from","get_a","get_b","get_i","get_l","get_matching_objects","get_obj","get_pl","get_r","get_renderables_back_to_front","get_ts","intersections","into","into_any","into_any_rc","is_within","new","parking_lots","quadtree","quadtree_ids","recreate_intersection","recreate_road","regenerate_buildings","regenerate_parking_lots","regenerate_unzoomed_layer","roads","show_zorder","try_from","try_into","type_id","vzip","zoomed_batch","zorder_range","DrawParkingLot","as_any","as_any_mut","borrow","borrow_mut","clear_rendering","contains_pt","draw","draw","from","get_id","get_outline","get_zorder","id","into","into_any","into_any_rc","is_within","new","render","try_from","try_into","type_id","vzip","DrawPedCrowd","DrawPedestrian","as_any","as_any","as_any_mut","as_any_mut","blob","blob_pl","body_circle","borrow","borrow","borrow_mut","borrow_mut","contains_pt","contains_pt","draw","draw","draw_default","draw_default","from","from","geometry","get_id","get_id","get_outline","get_outline","get_zorder","get_zorder","id","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","members","new","new","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","zorder","zorder","DRAW_CURVEY_LABEL","DrawRoad","LABEL_SCALE_FACTOR","as_any","as_any_mut","borrow","borrow_mut","clear_rendering","contains_pt","draw","draw","draw_building_driveway","from","get_id","get_outline","get_zorder","id","into","into_any","into_any_rc","is_within","lanes","new","render","render_center_line","try_from","try_into","type_id","vzip","zorder","crosswalk_icon","dont_walk_icon","draw_signal_stage","draw_stage_number","draw_time_left","walk_icon","DrawTransitStop","RADIUS","as_any","as_any_mut","borrow","borrow_mut","center","contains_pt","draw","draw_default","from","get_id","get_outline","get_zorder","id","into","into_any","into_any_rc","is_within","new","try_from","try_into","type_id","vzip","zorder","DrawMovement","TURN_ICON_ARROW_LENGTH","as_any","as_any_mut","borrow","borrow_mut","draw_selected_movement","for_i","from","hitbox","id","into","into_any","into_any_arc","into_any_rc","is_within","make_circle_geom","try_from","try_into","type_id","vzip","SimpleApp","SimpleAppArgs","SimpleWarper","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","before_quit","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","calculate_current_selection","cam","clap","color_scheme","cs","cs","current_selection","current_stage_and_remaining_time","dev","draw","draw_default","draw_map","draw_map","draw_unzoomed","draw_with_opts","draw_zoomed","dump_before_abort","event","free_memory","from","from","from","from_clap","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","make_warper","map","map","map_name","map_path","map_switched","minimal_controls","mouseover_unzoomed_buildings","mouseover_unzoomed_roads_and_intersections","mut_cs","mut_draw_map","mut_opts","new","opts","opts","override_options","recalculate_current_selection","scale_factor","session","sim","sim_time","time","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_widgetry_settings","vzip","vzip","vzip","warper","0","ABStreet","CameraState","CityPicker","ColorDiscrete","ColorNetwork","DefaultMap","DrawRoadLabels","DrawSimpleRoadLabels","EditPolygon","Executable","FifteenMin","FilePicker","Grid","HeatmapOptions","InputWaypoints","LTN","Minimap","MinimapControls","NEXT_RELEASE","Navigator","OSMViewer","ParkingMapper","RawMapEditor","RunCommand","Santa","TitleScreen","TripManagement","TripManagementState","TurnExplorer","WaypointID","all","app_header","app_session_current_trip_name","app_type","app_type","base_zoom","cam_x","cam_y","cam_zoom","camera","categories","change_map_btn","checkbox_per_mode","city_picker","cmp_count","cmp_dist","cmp_duration","color_for_mode","color_scheme","colors","colors","comm","command","compare_counts","contours","controls","current","current_exe","data","dragging","draw","draw","draw","draw_isochrone","draw_overlapping_paths","draw_overlapping_paths","enter_state","fg_color","fg_color","find_exe","goal_marker","grey_out_map","has_zorder","heatmap","height","home_btn","icons","idx","importer","include_roads","include_roads","intersections_from_roads","l","label_covers_road","labels","last_drawn","last_map","layer","lines","loading_tips","make_heatmap","map","map","max_capacity","max_waypts","minimap","mut_files","navigate","nice_country_name","nice_map_name","offset_x","offset_y","on_load","on_load","outline_color","p","panel","panel","panel","panel","panel","per_zoom","percentage_bar","points","polygon","prompt_to_download_missing_data","radius","resolution","show_success_popup","smoothing","snap_to_main_endpts","snap_to_road_endpts","start_marker","started","state_type","sync_from_file_management","target_zoom","time","title_screen","trip_files","turn_explorer","ui","update_url_map_name","updater","version","waypoints","waypoints","width","world","zoom","zoom_lvl","zoomed","CameraState","DefaultMap","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","cam_x","cam_y","cam_zoom","deserialize","deserialize","fmt","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","last_map","load","save","serialize","serialize","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","AllCityPicker","CitiesInCountryPicker","CityPicker","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","chose_city","cities_per_country","draw","draw","draw","draw_baselayer","draw_baselayer","draw_baselayer","event","event","event","from","from","from","into","into","into","into_any","into_any","into_any","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","new_in_city","new_state","new_state","new_state","on_load","on_load","on_load","panel","panel","panel","reimport_city","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ColorDiscrete","ColorNetwork","add_b","add_b","add_i","add_i","add_l","add_l","add_pl","add_r","add_r","add_ts","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","build","build","categories","colors","draw","draw","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","map","map","new","new","no_fading","no_fading","pct_intersections","pct_roads","ranked_intersections","ranked_roads","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","RunCommand","as_any","as_any_mut","borrow","borrow_mut","comm","draw","event","from","into","into_any","into_any_rc","is_within","last_drawn","lines","max_capacity","new_state","on_load","p","panel","read_output","show_success_popup","started","try_from","try_into","type_id","vzip","A","B","Compare","CompareCounts","Intersection","Layer","Obj","Road","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","autoselect_layer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","calculate_heatmap","calculate_relative_heatmap","clone","clone","clone_into","clone_into","cmp","counts_a","counts_b","draw","empty","eq","eq","equivalent","fmt","fmt","from","from","from","get_hash","get_hash","get_panel_widget","hash","heatmap_a","heatmap_b","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","layer","make_world","new","on_click","other_event","partial_cmp","recalculate_b","relative_heatmap","relative_road_tooltip","relative_scale","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","world","0","0","draw_overlapping_paths","Grid","HeatmapOptions","NEIGHBORS","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","color_scheme","contours","data","draw_isochrone","eq","from","from","from_controls","height","idx","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","make_heatmap","new","new","orthogonal_neighbors","radius","resolution","smoothing","to_controls","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","width","xy","goal_marker","start_marker","ImportCity","as_any","as_any_mut","borrow","borrow_mut","draw","event","from","generate_new_map_name","grab_geojson_from_clipboard","into","into_any","into_any_rc","is_within","new_state","on_load","panel","sanitize_name","try_from","try_into","type_id","vzip","DrawRoadLabels","DrawSimpleRoadLabels","all_roads","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","cheaply_overestimate_bounds","draw","draw","draw","empty","fg_color","fg_color","from","from","include_roads","include_roads","into","into","into_any","into_any","into_any_rc","into_any_rc","is_within","is_within","label_covers_road","light_background","new","new","only_major_roads","only_major_roads","outline_color","per_zoom","render","render","simplify_name","simplify_patterns","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","MINIMAP_HEIGHT","MINIMAP_WIDTH","Minimap","MinimapControls","app_type","as_any","as_any_mut","base_zoom","borrow","borrow_mut","controls","dragging","draw","draw_extra","draw_extra","draw_with_extra_layers","event","from","get_panel","has_layer","has_layer","has_zorder","into","into_any","into_any_rc","is_within","layer","make_legend","make_legend","make_unzoomed_panel","make_unzoomed_panel","make_zoomed_side_panel","make_zoomed_side_panel","map_to_minimap_pct","mut_panel","new","offset_x","offset_y","panel","panel_changed","panel_changed","panel_clicked","panel_clicked","recenter","recreate_panel","set_zoom","time","try_from","try_into","type_id","vzip","zoom","zoom_lvl","zoomed","CrossStreet","Navigator","SearchBuildings","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","draw","draw","draw","draw","event","event","event","first","from","from","from","into","into","into","into_any","into_any","into_any","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","new_state","new_state","new_state","new_state_with_target_zoom","panel","panel","panel","target_zoom","target_zoom","target_zoom","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","EditPolygon","Obj","Point","Polygon","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","draw","eq","equivalent","event","fmt","from","from","get_hash","get_hash","get_points","hash","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","points","rebuild_world","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","world","0","ABStreet","Executable","FifteenMin","LTN","OSMViewer","ParkingMapper","RawMapEditor","Santa","TitleScreen","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","built_info","clone","clone_into","current_exe","enter_state","eq","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_state","on_click","replace_process","run","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","BUILT_TIME_UTC","CFG_ENDIAN","CFG_ENV","CFG_FAMILY","CFG_OS","CFG_POINTER_WIDTH","CFG_TARGET_ARCH","CI_PLATFORM","DEBUG","FEATURES","FEATURES_STR","HOST","NUM_JOBS","OPT_LEVEL","PKG_AUTHORS","PKG_DESCRIPTION","PKG_HOMEPAGE","PKG_LICENSE","PKG_NAME","PKG_REPOSITORY","PKG_VERSION","PKG_VERSION_MAJOR","PKG_VERSION_MINOR","PKG_VERSION_PATCH","PKG_VERSION_PRE","PROFILE","RUSTC","RUSTC_VERSION","RUSTDOC","RUSTDOC_VERSION","TARGET","maybe_update","NamedTrip","RenameTrip","SavedTrips","TripManagement","TripManagementState","all","all_names","app_session_current_trip_name","app_type","app_type","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","autosave","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","current","current_name","deserialize","deserialize","draw","eq","from","from","from","from","get_panel_widget","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","len","load","mut_files","name","new","new_name","new_state","next","on_click","on_click","panel_changed","prev","save","save_current_trip_to_session","serialize","serialize","set_current","state_type","state_type","sync_from_file_management","to_owned","trips","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","waypoints","CONFLICTING_TURN","CURRENT_TURN","TurnExplorer","as_any","as_any_mut","borrow","borrow_mut","color_turn_type","draw","draw_baselayer","event","from","idx","into","into_any","into_any_rc","is_within","l","make_panel","new_state","panel","try_from","try_into","type_id","vzip","FilePicker","as_any","as_any_mut","borrow","borrow_mut","checkbox_per_mode","cmp_count","cmp_dist","cmp_duration","color_for_mode","from","into","into_any","into_any_arc","into_any_rc","is_within","new_state","percentage_bar","try_from","try_into","type_id","vzip","download_cities","prompt_to_download_missing_data","size_of_city","0","InputWaypoints","Waypoint","WaypointID","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","at","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","center","clone","clone_into","eq","equivalent","event","fmt","from","from","from","get_hash","get_hash","get_panel_widget","get_waypoint_color","get_waypoint_text","get_waypoints","hash","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","label","len","max_waypts","new","new","new_max_2","overwrite","rebuild_world","snap","snap_to_main_endpts","snap_to_road_endpts","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","waypoints"],"q":["map_gui","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::ID","","","","","","","","","","map_gui::colors","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::load","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::options","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::agents","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::area","","","","","","","","","","","","","","","","","","","","","","map_gui::render::bike","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::building","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::car","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::intersection","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::lane","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::map","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::parking_lot","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::pedestrian","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::road","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::traffic_signal","","","","","","map_gui::render::transit_stop","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::render::turn","","","","","","","","","","","","","","","","","","","","","map_gui::simple_app","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::camera","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::city_picker","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::colors","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::command","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::compare_counts","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::compare_counts::Obj","","map_gui::tools::draw_overlapping_paths","map_gui::tools::heatmap","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::icons","","map_gui::tools::importer","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::labels","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::minimap","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::navigate","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::polygon","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::polygon::Obj","map_gui::tools::title_screen","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::title_screen::built_info","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::trip_files","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::turn_explorer","","","","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::ui","","","","","","","","","","","","","","","","","","","","","","map_gui::tools::updater","","","map_gui::tools::waypoints","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["An application wishing to use the tools in this crate has …","","","","","","","","","","","Simple app state that just renders a static map, without …","","","","","","","","","","Initially position the camera here. The format is an …","Change the color scheme. Idempotent. Return true if there …","","","","The color scheme for map elements, agents, and the UI.","A color scheme groups colors used for different map, …","","","","","Dev mode exposes experimental tools useful for debugging, …","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","Calls U::from(self)
.","","","","","","Create a widgetry::State
that warps to the given point.","","","Path to a map to initially load. If not provided, load the …","","When making a screen recording, enable this option to hide …","","","","","","","","Render static and dynamic map elements.","Override the monitor’s auto-detected scale factor","Custom per-app state can be stored here","","","","If desired, this can be advanced to render traffic signals …","","Assorted tools and UI states that’re useful for …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Even if the current map name matches, still reload.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","Options controlling the UI. Some of the options are common …","","","Different ways of drawing traffic signals. The names of …","","","","","","","","","","","","","","","","","","Draw buildings in different perspectives","widgetry options","","","","","","","The color scheme for map elements, agents, and the UI.","Every time we draw, render all agents zoomed in. Extremely …","","","","Dev mode exposes experimental tools useful for debugging, …","When time warping, don’t draw to speed up simulation","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","The delay threshold to halt on when jumping to the next …","Display roads and buildings in an alternate language, if …","Restore previous options. If the file is missing or the …","When making a screen recording, enable this option to hide …","","","","","","Draw building driveways.","Draw crosswalks and unmarked crossings.","Draw stop signs.","If true, draw an icon for traffic signals both when zoomed …","If true, modify several basemap features to de-emphasize …","How much to advance the sim with one of the speed controls","","","","Automatically change color_scheme based on simulation time …","How traffic signals should be rendered.","","","","","","","","","","","","","How to render geometric units","","","","","","","","","","","","Control how the map is drawn.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","If the sim has highlighted people, then fade all others …","","","","","","","","","Calls U::from(self)
.","","","","","","Label every building.","","","","Default options for drawing a map.","","","","","","","","","","Don’t draw the current traffic signal state.","","","","","","","","","","This is controlled almost entirely by the minimap panel. …","","","","","","","","","","","","","","","","","","","","","If the sim time has changed or the unzoomed agent filters …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","This is controlled almost entirely by the minimap panel. …","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Find sections along the intersection polygon that aren’t …","","","Calls U::from(self)
.","","","","Draws both zebra crosswalks and unmarked crossings","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Unsorted, unexpanded, raw result.","","","","A simple variation of the one in game that shows all …","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","Build a single gigantic GeomBatch
to render the entire map …","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","If text_width
is defined, don’t draw the center line in …","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","Simple app state that just renders a static map, without …","","","","","","","","","","","","","","","","","Initially position the camera here. The format is an …","","The color scheme for map elements, agents, and the UI.","","","","","Dev mode exposes experimental tools useful for debugging, …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","Path to a map to initially load. If not provided, load the …","","When making a screen recording, enable this option to hide …","Only select buildings, and work whether zoomed in or not.","","","","","","","","Options are passed in by each app, usually seeded with …","Assumes some defaults.","Override the monitor’s auto-detected scale factor","Custom per-app state can be stored here","","","If desired, this can be advanced to render traffic signals …","","","","","","","","","","","","","","","","","Represents the state of a widgetry Canvas.","Lets the player switch maps.","","","Track the last map used, to resume next session.","Labels roads when unzoomed. Label size and frequency …","Draws labels in map-space that roughly fit on the roads. …","","","","","A 2D grid containing some arbitrary data.","","Click to add waypoints, drag them, see the list on a panel …","","","Customize the appearance and behavior of a minimap.","","","","","","Executes a command and displays STDOUT and STDERR in a …","","A title screen shared among all of the A/B Street apps.","Save sequences of waypoints as named trips. Basic file …","","A tool to explore all of the turns from a single lane.","","","A standard way to group a home button back to the title …","","","","","","","","","","A button to change maps, with default keybindings","","","Less is better","Shorter is better","Shorter is better","","","","","","","","","","","","Logically represents a 2D vector. Row-major ordering.","","","","","Thresholds are Durations, in units of seconds","","","","","","Returns the path to an executable. Native-only.","Draw a goal marker pointing at something.","Make it clear the map can’t be interacted with right now.","Should the user be able to control the z-order visible? …","","","A button to return to the title screen","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Draw a start marker pointing at something.","","","","","","","","","Generic UI tools. Some of this should perhaps be lifted to …","Modify the current URL to set the first free parameter to …","","Returns the version of A/B Street to link to. When …","","","","","","","","Represents the state of a widgetry Canvas.","Track the last map used, to resume next session.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","Load the camera’s configuration for the specified map. …","Save the camera’s configuration for the specified map, …","","","","","","","","","","","","","Lets the player switch maps.","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","Executes a command and displays STDOUT and STDERR in a …","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Start with the relative layer if anything has changed","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","If a button owned by this was clicked, returns the new …","If clickable_roads was enabled and a road was clicked, …","","","","","","","","","","","","","","","","","","","","","","","","A 2D grid containing some arbitrary data.","","","","","","","","","","","","","","","Logically represents a 2D vector. Row-major ordering.","Thresholds are Durations, in units of seconds","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calculate the index from a given (x, y). Doesn’t do any …","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","From one tile, calculate the 4 orthogonal neighbors. …","","","","","","","","","","","","","","","The inverse of idx
. No bounds checking.","Draw a goal marker pointing at something.","Draw a start marker pointing at something.","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","Labels roads when unzoomed. Label size and frequency …","Draws labels in map-space that roughly fit on the roads. …","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","Label roads that the predicate approves","Label roads that the predicate approves","Only label major roads","Only label major roads","","","","","","","","","","","","","","","","","","Customize the appearance and behavior of a minimap.","","","","","","","","","","Draw extra stuff on the minimap, just pulling from the app.","Draw extra stuff on the minimap, just pulling from the app.","","","Returns the argument unchanged.","","Is there some additional layer displayed on the minimap? …","Is there some additional layer displayed on the minimap? …","Should the user be able to control the z-order visible? …","Calls U::from(self)
.","","","","","A row beneath the minimap in the zoomed view, usually used …","A row beneath the minimap in the zoomed view, usually used …","When unzoomed, display this panel. By default, no controls …","When unzoomed, display this panel. By default, no controls …","Controls to be placed to the left to the zoomed-in panel","Controls to be placed to the left to the zoomed-in panel","","","","","","","Called for Outcome::Changed
on the panel.","Called for Outcome::Changed
on the panel.","If a button is clicked that was produced by some method in …","If a button is clicked that was produced by some method in …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A title screen shared among all of the A/B Street apps.","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","Run the given executable with some arguments. On Mac and …","","","","","","","","","","","The build time in RFC2822, UTC.","The endianness, given by CARGO_CFG_TARGET_ENDIAN
.","The toolchain-environment, given by CARGO_CFG_TARGET_ENV
.","The OS-family, given by CARGO_CFG_TARGET_FAMILY
.","The operating system, given by CARGO_CFG_TARGET_OS
.","The pointer width, given by CARGO_CFG_TARGET_POINTER_WIDTH
.","The target architecture, given by CARGO_CFG_TARGET_ARCH
.","The Continuous Integration platform detected during …","Value of DEBUG for the profile used during compilation.","The features that were enabled during compilation.","The features as a comma-separated string.","The host triple of the rust compiler.","The parallelism that was specified during compilation.","Value of OPT_LEVEL for the profile used during compilation.","A colon-separated list of authors.","The description.","The homepage.","The license.","The name of the package.","The source repository as advertised in Cargo.toml.","The full version.","The major version.","The minor version.","The patch version.","The pre-release version.","release
for release builds, debug
for other builds.","The compiler that cargo resolved to use.","The output of rustc -V
","The documentation generator that cargo resolved to use.","The output of rustdoc -V
","The target triple that was being compiled for.","","","","","Save sequences of waypoints as named trips. Basic file …","","","","","","","","","","","","","","","saves iff current trip is changed.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A tool to explore all of the turns from a single lane.","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","Less is better","Shorter is better","Shorter is better","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","How many bytes to download for a city?","","Click to add waypoints, drag them, see the list on a panel …","","","","","","","","","","","","","","","","","","","","","If the outcome from the panel or world isn’t used by the …","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","Allows any number of waypoints","","Only allow drawing routes with 2 waypoints. If a route is …","The caller should call rebuild_world
after this","The caller is responsible for calling initialize_hover
and …","","","","","","","","","","","","","","","","",""],"i":[0,1,1,1,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,112,48,1,1,1,112,0,48,107,107,48,112,48,107,48,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,48,48,107,112,48,112,48,48,48,0,48,107,1,0,112,107,48,48,0,107,1,0,1,1,1,1,174,175,176,177,178,179,180,181,182,183,8,0,0,8,8,8,8,11,11,11,8,11,8,11,11,11,11,11,8,11,8,11,11,11,11,11,11,11,8,11,8,8,11,11,11,11,11,8,11,11,8,11,11,8,11,11,8,11,11,11,11,11,0,11,11,11,8,11,8,11,8,11,8,11,8,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,8,11,8,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,0,0,184,49,184,49,184,49,184,49,49,49,184,184,49,184,49,184,49,184,184,49,184,49,184,49,184,49,184,49,184,49,184,49,54,53,0,53,54,54,54,54,0,0,54,0,53,55,35,53,54,55,35,53,54,55,35,53,54,55,35,53,54,35,35,35,53,54,35,53,54,35,35,35,53,54,35,35,55,53,54,55,53,54,55,35,53,54,55,35,53,54,55,35,53,54,35,53,54,55,35,53,54,55,35,53,54,35,35,35,35,55,55,35,53,54,35,35,35,35,35,35,35,53,54,35,35,55,35,53,54,55,35,53,54,55,35,53,54,35,55,35,53,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,0,12,14,14,0,65,98,98,97,14,14,12,0,12,12,65,0,0,65,60,60,12,12,12,12,12,82,97,98,82,0,14,60,60,60,0,105,71,77,82,97,105,0,12,14,14,14,14,14,77,14,0,0,98,14,0,12,0,65,12,12,0,12,12,14,66,0,0,14,14,0,14,66,0,66,14,82,97,98,12,0,0,66,66,65,66,65,65,65,66,65,66,65,65,65,66,65,65,65,65,65,66,65,66,65,66,66,65,66,65,65,66,65,66,65,66,65,65,65,66,66,65,66,65,66,65,66,65,66,66,65,66,65,0,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,0,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,0,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,77,0,0,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,0,79,79,79,79,0,79,0,0,82,82,82,82,0,0,0,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,0,0,0,0,82,0,82,82,82,82,82,82,82,82,0,90,90,90,90,0,0,0,0,0,0,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,90,90,90,90,90,90,90,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,0,0,97,98,97,98,98,98,97,97,98,97,98,97,98,97,98,97,98,97,98,97,97,98,97,98,97,98,97,97,98,97,98,97,98,97,98,98,97,98,97,98,97,98,97,98,97,98,97,98,0,0,0,93,93,93,93,93,93,93,93,0,93,93,93,93,93,93,93,93,93,93,93,93,0,93,93,93,93,93,0,0,0,0,0,0,0,0,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,0,0,105,105,105,105,105,105,105,105,105,105,105,105,105,105,0,105,105,105,105,0,0,0,107,110,112,107,110,112,107,107,110,112,107,110,112,107,112,112,112,107,107,107,107,112,110,107,107,107,107,107,107,107,110,107,107,110,112,112,107,110,112,107,110,112,110,112,107,110,112,107,110,112,107,107,107,112,112,107,112,107,107,107,107,107,107,107,107,112,107,112,107,107,107,107,107,110,112,107,110,112,107,110,112,112,107,110,112,110,166,157,0,0,0,0,0,0,0,0,0,157,0,0,0,0,157,0,0,0,0,157,157,157,0,157,0,0,0,0,0,123,0,159,151,123,151,124,124,124,0,132,0,0,0,0,0,0,0,122,0,132,138,0,0,122,151,123,158,146,151,132,134,148,0,0,0,158,149,148,0,0,0,150,0,146,0,0,164,0,149,148,0,164,148,0,138,125,151,138,0,0,132,134,138,167,0,159,0,0,0,151,151,128,138,149,138,128,138,151,152,164,149,0,156,0,0,122,122,138,122,167,167,0,138,123,159,152,151,0,0,0,0,0,0,0,0,167,146,156,151,151,151,0,0,124,125,124,125,124,125,124,125,124,124,124,124,125,124,125,124,125,124,125,124,125,124,125,124,125,124,125,125,124,124,124,125,124,125,124,125,124,125,124,125,0,0,0,128,129,130,128,129,130,128,129,130,128,129,130,0,0,128,129,130,128,129,130,128,129,130,128,129,130,128,129,130,128,129,130,128,129,130,128,129,130,128,128,129,130,128,129,130,128,129,130,0,128,129,130,128,129,130,128,129,130,128,129,130,0,0,132,134,132,134,132,134,134,132,134,132,132,134,132,134,132,134,132,134,132,134,132,132,132,134,132,134,132,134,132,134,132,134,132,134,132,134,132,134,132,134,132,134,134,134,134,134,132,134,132,134,132,134,132,134,0,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,142,142,142,0,141,0,0,141,139,141,142,139,141,142,139,139,141,142,139,141,142,0,0,141,142,141,142,141,139,139,139,139,141,142,141,141,142,139,141,142,141,141,139,141,139,139,139,141,142,139,141,142,141,142,139,141,142,139,141,142,139,0,139,139,139,141,139,139,139,139,141,142,139,141,142,139,141,142,139,141,142,139,141,142,139,185,186,0,0,0,0,146,122,146,122,146,122,146,122,122,122,122,122,146,0,122,146,122,122,146,146,146,122,146,122,146,122,146,122,146,122,0,146,122,146,122,122,122,122,122,146,122,146,122,146,122,146,122,146,146,0,0,0,147,147,147,147,147,147,147,0,0,147,147,147,147,147,147,147,0,147,147,147,147,0,0,148,149,148,149,148,149,148,149,148,0,149,148,148,148,149,148,149,148,149,148,149,148,149,148,149,148,149,148,148,149,149,148,149,148,149,149,149,148,0,0,149,148,149,148,149,148,149,148,0,0,0,0,151,151,151,151,151,151,151,151,151,150,150,151,151,151,151,150,150,150,151,151,151,151,151,150,150,150,150,150,150,151,151,151,151,151,151,150,150,150,150,151,151,151,151,151,151,151,151,151,151,151,0,0,0,152,153,154,152,153,154,152,153,154,152,153,154,152,153,154,153,152,153,154,153,152,153,154,152,153,154,152,153,154,152,153,154,152,153,154,152,153,154,152,152,153,154,152,153,154,152,153,154,152,153,154,152,153,154,152,153,154,0,0,155,155,156,155,156,155,156,155,156,155,155,155,156,155,155,156,155,156,155,155,155,156,155,156,155,156,155,155,156,155,156,155,156,156,156,155,156,155,156,155,156,155,156,155,156,187,157,0,157,157,157,157,157,157,0,158,157,158,157,158,157,158,157,0,157,157,158,158,157,158,157,158,157,158,157,157,158,157,158,157,158,158,157,158,157,158,157,158,157,158,157,158,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,123,162,159,123,162,123,162,160,161,123,162,160,161,123,123,162,160,161,123,162,160,161,160,160,123,162,160,161,162,160,123,162,160,161,123,123,162,160,161,123,162,160,161,123,160,161,123,162,160,161,123,162,160,161,161,161,159,160,123,161,162,161,123,162,162,161,161,123,160,161,123,123,162,159,160,161,123,162,160,161,123,162,160,161,123,162,160,161,123,162,160,161,160,0,0,0,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,0,188,188,188,188,0,0,0,0,0,188,188,188,188,188,188,188,0,188,188,188,188,0,0,0,166,0,0,0,167,173,166,167,173,166,173,167,173,166,167,173,166,173,166,166,166,166,167,166,167,173,166,166,166,167,167,0,167,166,167,173,166,167,173,166,167,173,166,167,173,166,167,173,166,173,167,167,167,173,167,167,167,167,167,167,166,167,173,166,167,173,166,167,173,166,167,173,166,167],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1,[[3,[2]]]],[[],4],[[],4],[1,5],[1,6],[[]],[[]],0,[[7,8],9],[1,1],[[]],[[1,1],10],0,0,[[],11],0,0,[6],0,[[],12],0,[[13,14]],[[1,1],9],[[],9],[[1,15],16],[17,1],[5,1],[18,1],[19,1],[20,1],[21,1],[22,1],[[]],[23,1],[6,1],[[[24,[22]]],1],[2,1],[[],25],[[],25],[1],[[]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[[],9],0,[[7,30,[3,[31]],[3,[1]]],[[27,[32]]]],[[],33],0,0,[[7,33,34]],0,[[],11],[[],12],[[],35],0,[[],35],0,[[1,1],[[3,[10]]]],0,0,0,[[],36],[[],37],0,0,[[]],0,[[],38],[[],38],[[],39],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],0,0,0,0,[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[[],[[24,[[40,[8]]]]]],[[],11],[8,8],[[]],0,[[11,41],42],0,[[],11],0,[[],[[38,[8]]]],0,0,[[8,8],9],[[11,43],44],0,[[8,15],16],0,[[]],[[]],0,0,0,0,0,[43,42],[[11,43],44],0,[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[45,11],0,[[],11],0,0,0,[46,42],[[7,8],11],[[],11],0,0,0,0,0,0,0,[43,[[44,[8]]]],0,0,0,0,0,0,0,[[11,33],42],0,0,0,[[11,46],42],[[11,46],42],0,0,0,[8,38],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],11],[[]],0,[[],38],[[],38],[[],38],[[],38],0,[[],39],[[],39],0,0,0,0,0,0,0,0,0,0,[[11,41],42],0,[[]],[[]],0,[[11,41],42],[[11,47,41],42],0,0,[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[[49,[48]],13]],[[[49,[48]],7],[[50,[48]]]],[[7,51,[27,[52]]],[[27,[32]]]],[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[7,51,[27,[52]]],[[27,[32]]]],0,[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[35,35],[53,53],[54,54],[[]],[[]],[[]],0,0,[[],[[38,[35]]]],[[],[[38,[53]]]],[[],[[38,[54]]]],0,0,[[55,13]],[[53,53],9],[[54,54],9],[[55,7],[[50,[48]]]],[[53,15],16],[[54,15],16],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],9],[[],9],0,0,[[],35],0,[7,[[27,[32]]]],0,[35,38],[53,38],[54,38],0,0,0,0,0,0,[[]],[[]],[[]],0,0,[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[],39],[[],39],0,[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],0,0,0,0,0,[[]],[[]],0,0,0,0,0,[[56,33],[[24,[57]]]],0,0,[[30,33],9],[[13,48,14]],0,0,0,0,0,0,0,0,0,[[58,33,36,59,11],[[27,[60]]]],[[]],[[],1],[33,61],[[],62],[[42,3,36],42],0,0,0,0,0,0,0,0,[[]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[[],9],0,0,0,0,0,[[],14],0,0,0,0,0,0,0,0,0,0,0,0,0,[[],38],[[],38],0,[[],39],0,[[[3,[63]]],64],0,[[]],0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[65,9],0,[[]],[[]],[[]],[[]],[65,9],0,[[66,33,36,11],67],[65,9],0,[65,65],[[]],[[65,68,11],[[3,[42]]]],[[66,13,33,36,11,35]],[[65,65],9],[[]],[[]],[[66,69],[[24,[60]]]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],66],[[],65],[65,9],0,[[66,69,33,36,11,59]],0,[[]],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],0,0,[[65,70]],[[]],[[]],0,[[],4],[[],4],[[]],[[]],[[71,30,33],9],[[71,13,48,14]],[[72,11],73],[[]],[71,1],[[71,33],61],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[[],9],[[7,74,11,75],71],[[],38],[[],38],[[],39],[[]],0,[[],4],[[],4],0,[[]],[[]],[[76,30,33],9],[[76,13,48,14]],0,[[]],[76,1],[[76,33],61],[76,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[58,33,36,59,11],76],[[],38],[[],38],[[],39],[[]],0,0,[[],4],[[],4],[[]],[[]],[77],[[77,30,33],9],[[77,13,48,14]],[[]],[77,1],[[77,33],61],[77,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],0,[[7,78,33,11,35,75,75],77],[[],38],[[],38],[[],39],[[]],0,0,[[],4],[[],4],0,0,[[]],[[]],[[79,30,33],9],[[79,13,48,14]],0,[[]],[79,1],[[79,33],61],[79,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[58,33,36,59,11],79],[[64,64,30,80],57],[[],38],[[],38],[[],39],[[]],[[58,36,11],42],0,0,[[],9],[[],4],[[],4],[[]],[[]],[[56,81,33],[[24,[57]]]],[[56,33],[[24,[57]]]],[[56,33],[[24,[57]]]],[82],[[82,30,33],9],[[82,13,48,14]],0,[[82,13,48,14,83]],0,[[]],[82,1],[[82,33],61],[[56,33],[[24,[84]]]],[82,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[75,85,33,11]],[[30,64,80],57],[[75,85,33],9],[[75,85,33,11]],[[56,33],82],[[86,64],86],[[82,13,48]],[[82,48],75],[[87,33],3],[[],38],[[],38],[[],39],[[]],0,0,[[],4],[[],4],[[]],[[]],[[48,88,89,75]],[[89,81],[[24,[57]]]],[[89,81],[[24,[61]]]],[[89,33],[[24,[57]]]],[89,[[24,[57]]]],[[33,89],[[24,[57]]]],[90],[[90,30,33],9],[[90,13,48,14]],0,[[]],[90,1],[[90,33],61],[90,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[89,81],90],[[86,64],86],0,[[90,48],75],[[],38],[[],38],[[],39],[[]],0,0,0,[[],4],[[],4],[[]],[[]],0,0,0,0,0,0,0,0,[12],[[]],[[12,21],71],[[12,5],77],[[12,6],82],[[12,20],90],[[12,91],[[24,[1]]]],[[12,7,1,48,66],[[3,[60]]]],[[12,17],92],[[12,18],93],[[12,91,33],[[24,[60]]]],[[12,19],94],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[7,33,35,11,34],12],0,0,0,[[12,6,33]],[[12,81,33]],[[7,33,11,35,34]],[[7,33,11,35]],[[7,33,11,35,34],95],0,0,[[],38],[[],38],[[],39],[[]],[[7,48],75],0,0,[[],4],[[],4],[[]],[[]],[92],[[92,30,33],9],[[92,13,48,14]],0,[[]],[92,1],[[92,33],61],[92,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[7,96,11,35,75],92],[[92,48],75],[[],38],[[],38],[[],39],[[]],0,0,[[],4],[[],4],[[],4],[[],4],0,0,0,[[]],[[]],[[]],[[]],[[97,30,33],9],[[98,30,33],9],[[97,13,48,14]],[[98,13,48,14]],0,0,[[]],[[]],[[75,36,11,99,46]],[97,1],[98,1],[[97,33],61],[[98,33],61],[97,62],[98,62],0,[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],0,[[99,46,33,36,59,11],97],[[100,33,59,11],98],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,0,0,0,0,[[],4],[[],4],[[]],[[]],[93],[[93,30,33],9],[[93,13,48,14]],0,[[48,78,75]],[[]],[93,1],[[93,33],61],[93,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],0,[81,93],[[93,48],75],[[48,81,[3,[64]]],75],[[],38],[[],38],[[],39],[[]],0,[84],[[101,59],75],[[59,102,46,6,[3,[103]],75,48,53]],[[59,56,46,75]],[[48,59,102,56,46,103,75]],[[101,59],75],0,0,[[],4],[[],4],[[]],[[]],0,[[94,30,33],9],[[94,13,48,14]],0,[[]],[94,1],[[94,33],61],[94,62],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[7,104,33,11],94],[[],38],[[],38],[[],39],[[]],0,0,0,[[],4],[[],4],[[]],[[]],[[105,48,75,[3,[106]]]],[[59,33,11,6,46],24],[[]],0,0,[[]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[[],9],[[31,84,80]],[[],38],[[],38],[[],39],[[]],0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[107,108]],[[]],[[]],[[]],[[]],[[]],[[]],[[107,7,9,9],[[3,[1]]]],0,[[],109],0,[107,11],0,0,[[107,6]],0,[[110,13,107]],[[107,13]],[107,12],0,[[107,13]],[[107,13,14]],[[107,13,14]],[[107,108]],[[110,7,107],[[50,[107]]]],[107],[[]],[[]],[[]],[111,112],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],9],[[107,7,30,[3,[31]],[3,[1]]],[[27,[32]]]],[107,33],0,[112,51],0,[[107,7,33,34]],0,[[107,7],[[3,[1]]]],[[107,7],[[3,[1]]]],[107,11],[107,12],[107,35],[[7,35,51,[3,[113]],114]],[107,35],0,[[112,35]],[[107,7]],0,0,[107,36],[107,37],0,[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[],39],[[112,115],115],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[7,48,43],116],[[],3],0,0,0,0,0,0,0,0,[[7,48],116],[[7,48,117],116],0,[[118,46,46]],[[118,48,64,43,43]],[[118,48,103,43,43]],[[48,119],42],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[33,120],75],0,[[48,24],121],0,0,0,[43,113],[[30,31],75],[[13,48]],[[],9],0,0,[7,116],0,0,0,0,0,[[117,33],[[117,[6]]]],0,0,0,0,0,0,0,[[],118],[[7,75,91,[24,[30]],122],116],0,0,0,0,0,[[],123],0,[43,43],[51,43],0,0,0,0,0,0,0,0,0,0,0,0,[[7,118,31],116],0,0,[[7,51,[27,[52]]],[[50,[48]]]],0,0,0,0,0,0,[[30,31],75],0,0,[7],0,0,0,0,0,0,[48],0,[[],43],0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],0,0,0,[[],[[38,[124]]]],[[],[[38,[125]]]],[[124,15],16],[[125,15],16],[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],0,[[7,51],9],[[108,51]],[124,38],[125,38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[7,51,3],[[50,[48]]]],[[],[[127,[113,[24,[126]]]]]],[[[128,[48]],13]],[[[129,[48]],13]],[[[130,[48]],13]],[[[128,[48]]],131],[[[129,[48]]],131],[[[130,[48]]],131],[[[128,[48]],7],[[50,[48]]]],[[[129,[48]],7],[[50,[48]]]],[[[130,[48]],7],[[50,[48]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],9],[[7,[27,[52]],126],[[27,[32]]]],[[7,[27,[52]]],[[27,[32]]]],[[7,[27,[52]]],[[27,[32]]]],[[7,[27,[52]],43],[[27,[32]]]],0,0,0,0,0,0,[7,[[50,[48]]]],[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[],39],[[]],[[]],[[]],0,0,[[132,5,[133,[43]]]],[[134,5,42]],[[132,6,[133,[43]]]],[[134,6,42]],[[132,20,[133,[43]]]],[[134,20,42]],[[134,17,42]],[[132,18,[133,[43]]]],[[134,18,42]],[[132,19,[133,[43]]]],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[132,7]],[[134,7],135],0,0,0,0,[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],0,0,[[48,24],132],[48,134],[[48,24],132],[48,134],[[134,[136,[6]],137]],[[134,[136,[18]],137]],[[134,[136,[6]],137]],[[134,[136,[18]],137]],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,[[],4],[[],4],[[]],[[]],0,[[[138,[48]],13]],[[[138,[48]],7],[[50,[48]]]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],0,0,0,[[7,9,[24,[113]],[27,[52]]],[[27,[32]]]],0,0,0,[[[138,[48]]]],0,0,[[],38],[[],38],[[],39],[[]],0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[139],[[]],[[]],[[]],[[]],[[]],[[]],[[7,48,140],135],[[7,48,140,140],135],[141,141],[142,142],[[]],[[]],[[141,141],10],0,0,[[139,13,48]],[7,139],[[141,141],9],[[142,142],9],[[],9],[[141,15],16],[[142,15],16],[[]],[[]],[[]],[[],25],[[],25],[[139,7],116],[141],0,0,[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],9],0,[[7,48,9],[[143,[141]]]],[[7,48,140,140,142,9],139],[[139,7,48,43],[[3,[116]]]],[[139,7],[[3,[18]]]],[[141,141],[[3,[10]]]],[[139,7,48,140]],0,[[139,48,18],118],[[],144],[[]],[[]],[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[],39],[[]],[[]],[[]],0,0,0,[[48,24],121],0,0,0,[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[122,122],[[]],0,0,0,[[33,120],75],[[122,122],9],[[]],[[]],[70,122],0,[[[146,[145]],46,46],46],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[7,75,91,[24,[30]],122],116],[[46,46,145],[[146,[145]]]],[[],122],[[[146,[145]],46,46],24],0,0,0,[[122,7,116],[[24,[116]]]],[[]],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,[[[146,[145]],46]],[[30,31],75],[[30,31],75],0,[[],4],[[],4],[[]],[[]],[[[147,[48]],13]],[[[147,[48]],7],[[50,[48]]]],[[]],[[],113],[[],44],[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],[[7,[27,[52]]],[[27,[32]]]],0,0,[113,113],[[],38],[[],38],[[],39],[[]],0,0,[[7,48,42],148],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[43,31,30,80],91],[[149,13,48]],[[148,13]],0,[7,148],0,0,[[]],[[]],0,0,[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],0,[149,149],[[[27,[114]]],149],[[7,48,42,[27,[114]]],148],[[],149],[[7,48,42],148],0,0,[[149,13,48,31],95],[[148,7,48,34]],[113,[[3,[113]]]],[[],24],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,0,0,0,0,[[],4],[[],4],0,[[]],[[]],0,0,[[[151,[48,[150,[48]]]],13]],[13],[13],[[[151,[48,[150,[48]]]],13,[24,[95]]]],[[[151,[48,[150,[48]]]],7],[[3,[[50,[48]]]]]],[[]],[[[151,[48,[150,[48]]]]],70],[[],9],[[],9],[[],9],[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],0,[7,116],[7,116],[7,70],[7,70],[7,116],[7,116],[[[151,[48,[150,[48]]]],30]],[[[151,[48,[150,[48]]]]],70],[[7,[150,[48]]],[[151,[48,[150,[48]]]]]],0,0,0,[[7,70]],[[7,70]],[[7,43],[[3,[50]]]],[[7,43],[[3,[50]]]],[[[151,[48,[150,[48]]]],7]],[[[151,[48,[150,[48]]]],7]],[[[151,[48,[150,[48]]]],7,46]],0,[[],38],[[],38],[[],39],[[]],0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[152,13]],[[153,13]],[[154,13]],0,[[152,7],[[50,[48]]]],[[153,7],[[50,[48]]]],[[154,7],[[50,[48]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],9],[7,[[27,[32]]]],[[7,[24,[18]],31],[[27,[32]]]],[[7,31],[[27,[32]]]],[[7,31],[[27,[32]]]],0,0,0,0,0,0,[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[],39],[[]],[[]],[[]],0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[155,155],[[]],[[156,13]],[[155,155],9],[[],9],[[156,7,48]],[[155,15],16],[[]],[[]],[[],25],[[],25],[156],[155],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[[24,[30]]],156],0,[[156,7,48]],[[]],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],0,[157,157],[[]],0,0,[[157,157],9],[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[7,157,[27,[114]]],[[27,[32]]]],[[[158,[48]],7,43,70],[[50,[48]]]],[[157,7,[24,[43]]],[[50,[48]]]],[[[158,[48]],7,157,[24,[43]]],[[50,[48]]]],[[]],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[7,116],0,0,0,0,0,0,0,[[],3],0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[[123,[48,[159,[48]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[160,160],[[]],0,0,[[],[[38,[160]]]],[[],[[38,[161]]]],[[[162,[48,[159,[48]]]],13]],[[160,160],9],[[]],[[]],[[]],[[]],[[[123,[48,[159,[48]]]],7],116],[[]],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],9],[[],9],[161,46],[48,161],[[],123],0,[[],[[123,[48,[159,[48]]]]]],[161,113],[[7,160,161],[[27,[32]]]],[[161,43],[[3,[160]]]],[[[123,[48,[159,[48]]]],7,43],[[3,[[50,[48]]]]]],[[[162,[48,[159,[48]]]],7,43,70],[[50,[48]]]],[[[162,[48,[159,[48]]]],7,70],[[3,[[50,[48]]]]]],[[161,43],[[3,[160]]]],[[161,48]],[[[123,[48,[159,[48]]]]]],[160,38],[161,38],[[[123,[48,[159,[48]]]],43]],0,0,[7],[[]],0,[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[],39],[[],39],[[]],[[]],[[]],[[]],0,0,0,0,[[],4],[[],4],[[]],[[]],[163,42],[[164,13]],[164,131],[[164,7],[[50,[48]]]],[[]],0,[[]],[[[27,[26]]],[[27,[4,26]]]],[29,[[29,[4]]]],[[],9],0,[[7,20,46],70],[[7,20],[[27,[32]]]],0,[[],38],[[],38],[[],39],[[]],0,[[],4],[[],4],[[]],[[]],[[7,48,117],116],[[118,46,46]],[[118,48,64,43,43]],[[118,48,103,43,43]],[[48,119],42],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[[],9],[[7,[3,[113]],[27,[52]]],[[27,[32]]]],[[7,118,31],116],[[],38],[[],38],[[],39],[[]],[[[24,[113]],[165,[113]],[165,[113]]],44],[[7,51,[27,[52]]],[[50,[48]]]],[51,25],0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[166,166],[[]],[[166,166],9],[[],9],[[167,48,168,[169,[166]]],9],[[166,15],16],[[]],[[]],[[]],[[],25],[[],25],[[167,7],116],[[167,46],42],[46,170],[167,[[24,[171]]]],[166],[[]],[[]],[[]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[[[27,[26]]],[[27,[4,26]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[28,[[28,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[29,[[29,[4]]]],[[],9],[[],9],[[],9],0,[167,46],0,[[48,[24,[172]]],167],[[48,171],173],[[48,[24,[172]]],167],[[167,48,[24,[171]]]],[[167,7,143,114,46]],[[167,48,30],[[3,[171]]]],0,0,[[]],[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[],39],[[],39],[[],39],[[]],[[]],[[]],0],"p":[[4,"ID"],[4,"AgentID"],[4,"Option"],[8,"Any"],[3,"BuildingID"],[3,"IntersectionID"],[3,"EventCtx"],[4,"ColorSchemeChoice"],[15,"bool"],[4,"Ordering"],[3,"ColorScheme"],[3,"DrawMap"],[3,"GfxCtx"],[3,"DrawOptions"],[3,"Formatter"],[6,"Result"],[3,"ParkingLotID"],[3,"RoadID"],[3,"TransitStopID"],[3,"LaneID"],[3,"AreaID"],[3,"PedestrianID"],[3,"CarID"],[3,"Vec"],[15,"u64"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[3,"Pt2D"],[15,"f64"],[8,"State"],[3,"Map"],[3,"Timer"],[3,"Options"],[3,"Sim"],[3,"Time"],[4,"Result"],[3,"TypeId"],[3,"Choice"],[4,"RoadRank"],[3,"Color"],[15,"str"],[6,"Result"],[3,"Style"],[15,"usize"],[4,"LaneType"],[8,"AppLike"],[3,"MapAlreadyLoaded"],[4,"Transition"],[3,"MapName"],[8,"FnOnce"],[4,"TrafficSignalStyle"],[4,"CameraAngle"],[3,"OptionsPanel"],[3,"Intersection"],[3,"Polygon"],[3,"DrawCarInput"],[3,"Prerender"],[8,"Renderable"],[3,"Tessellation"],[15,"isize"],[4,"VehicleType"],[3,"Distance"],[3,"UnzoomedAgents"],[3,"AgentCache"],[3,"QuadTree"],[3,"UnzoomedAgent"],[4,"Traversable"],[3,"Panel"],[3,"DrawArea"],[4,"AreaType"],[4,"Fill"],[3,"Area"],[3,"GeomBatch"],[3,"DrawBike"],[3,"DrawBuilding"],[3,"Building"],[3,"DrawCar"],[3,"Angle"],[3,"Road"],[3,"DrawIntersection"],[3,"ControlTrafficSignal"],[3,"PolyLine"],[3,"Turn"],[3,"Line"],[3,"RoadWithStopSign"],[4,"BufferType"],[3,"Lane"],[3,"DrawLane"],[3,"Bounds"],[3,"DrawParkingLot"],[3,"DrawRoad"],[3,"DrawTransitStop"],[3,"Drawable"],[3,"ParkingLot"],[3,"DrawPedestrian"],[3,"DrawPedCrowd"],[3,"DrawPedestrianInput"],[3,"DrawPedCrowdInput"],[3,"Movement"],[3,"Stage"],[3,"Duration"],[3,"TransitStop"],[3,"DrawMovement"],[4,"TurnPriority"],[3,"SimpleApp"],[3,"Canvas"],[3,"App"],[3,"SimpleWarper"],[3,"ArgMatches"],[3,"SimpleAppArgs"],[3,"String"],[8,"Fn"],[3,"Settings"],[3,"Widget"],[3,"BTreeSet"],[3,"Text"],[4,"TripMode"],[3,"HashMap"],[3,"ToggleZoomedBuilder"],[3,"HeatmapOptions"],[3,"TripManagement"],[3,"CameraState"],[3,"DefaultMap"],[3,"CityName"],[3,"BTreeMap"],[3,"CityPicker"],[3,"AllCityPicker"],[3,"CitiesInCountryPicker"],[4,"DrawBaselayer"],[3,"ColorDiscrete"],[8,"AsRef"],[3,"ColorNetwork"],[3,"ToggleZoomed"],[3,"Counter"],[3,"ColorScale"],[3,"RunCommand"],[3,"CompareCounts"],[3,"TrafficCounts"],[4,"Obj"],[4,"Layer"],[3,"World"],[3,"DivergingScale"],[8,"Copy"],[3,"Grid"],[3,"ImportCity"],[3,"DrawSimpleRoadLabels"],[3,"DrawRoadLabels"],[8,"MinimapControls"],[3,"Minimap"],[3,"Navigator"],[3,"CrossStreet"],[3,"SearchBuildings"],[4,"Obj"],[3,"EditPolygon"],[4,"Executable"],[3,"TitleScreen"],[8,"TripManagementState"],[3,"NamedTrip"],[3,"SavedTrips"],[3,"RenameTrip"],[4,"TurnType"],[3,"TurnExplorer"],[3,"Sender"],[3,"WaypointID"],[3,"InputWaypoints"],[4,"Outcome"],[4,"WorldOutcome"],[15,"char"],[4,"TripEndpoint"],[4,"PathConstraints"],[3,"Waypoint"],[13,"Road"],[13,"Lane"],[13,"Intersection"],[13,"Building"],[13,"ParkingLot"],[13,"Car"],[13,"Pedestrian"],[13,"PedCrowd"],[13,"TransitStop"],[13,"Area"],[3,"MapLoader"],[13,"Road"],[13,"Intersection"],[13,"Point"],[3,"FilePicker"]]},\
-"map_model":{"doc":"map_model
describes the world where simulations occur. …","t":[12,12,12,12,12,12,12,3,13,3,4,3,3,4,13,13,13,13,13,13,13,13,13,3,13,13,4,3,3,4,13,13,13,13,13,13,13,13,13,13,13,13,13,3,13,13,4,3,13,13,13,13,13,13,13,3,3,13,13,13,13,3,4,13,4,4,3,4,3,13,13,13,13,13,13,13,13,13,13,13,3,13,3,4,3,4,13,13,3,13,13,3,3,4,13,13,13,13,13,13,17,17,3,3,13,3,13,3,13,3,17,3,13,13,4,13,13,3,17,13,13,3,3,3,4,3,4,4,3,3,3,4,13,3,3,13,13,13,13,3,13,13,13,13,3,13,13,13,4,13,13,13,3,3,3,3,3,17,13,13,13,13,13,13,4,13,13,13,3,4,13,13,13,13,13,13,13,13,13,3,3,3,3,4,3,13,13,3,4,4,13,3,13,13,13,13,13,13,3,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,0,12,12,12,11,11,12,12,12,12,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,0,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,12,12,12,11,12,11,12,12,12,0,0,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,11,11,12,12,11,12,11,11,11,12,12,12,12,12,11,11,11,11,0,12,12,11,11,12,12,12,12,12,12,12,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,12,0,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,12,12,12,12,11,12,12,12,12,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,17,12,11,11,12,11,12,11,11,11,11,11,12,11,11,11,11,11,13,13,13,13,13,13,4,4,3,5,5,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,0,12,12,12,12,12,12,12,12,3,5,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,13,13,13,13,13,4,3,3,4,3,3,2,13,13,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,12,0,11,11,12,12,11,11,11,12,11,11,11,11,11,5,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,5,11,12,12,0,12,12,5,5,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,5,5,5,5,5,5,5,5,5,5,5,5,5,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,12,12,12,12,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,5,13,13,13,13,13,17,4,3,4,3,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,11,11,0,0,11,11,11,11,11,11,11,11,12,5,0,12,2,5,5,11,0,0,5,11,11,0,11,11,0,5,5,5,5,5,5,5,5,17,17,5,5,5,5,5,5,5,5,0,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,11,11,12,12,5,5,5,11,11,11,11,12,12,11,11,11,11,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,12,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,12,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,3,4,13,13,4,13,13,13,13,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,12,11,12,12,12,11,12,11,11,11,11,11,12,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,3,3,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,13,4,3,3,13,13,17,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,5,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,3,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,12,11,12,11,11,11,11,12,12,12,11,11,11,11,11,11,12,5,12,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,11,11,11,11,11,11,12,11,11,11,11,12,11,12,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,12,3,13,13,3,3,3,4,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,12,12,11,11,12,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,11,11,11,11,11,12,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,17,3,13,3,4,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,11,11,11,12,11,11,11,11,12,12,12,11,11,11,12,12,11,11,11,11,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,13,13,13,3,3,4,4,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,3,3,12,12,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,13,17,13,13,13,3,4,13,3,4,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,13,13,13,2,2,4,2,2,2,2,2,2,2,13,3,13,2,11,12,12,12,12,12,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,0,11,11,0,5,11,11,11,11,11,11,11,11,11,11,11,11,0,12,5,0,0,2,0,11,11,0,5,13,13,13,4,13,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,3,11,11,11,11,11,11,11,5,11,11,11,11,11,12,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,13,13,13,3,3,4,11,11,12,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,11,11,11,11,5,11,11,11,11,11,11,11,11,11,12,11,11,11,13,13,13,3,3,4,13,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,5,5,5,11,11,11,11,11,12,12,12,12,13,13,13,13,4,3,11,11,11,11,11,11,11,11,12,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,12,4,13,13,3,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,5,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,5,11,11,12,12,13,13,13,3,4,11,11,11,11,11,11,11,11,12,11,11,11,5,11,12,5,11,11,11,11,5,11,11,11,12,11,5,12,12,12,12,13,17,17,3,4,13,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12],"n":["0","0","0","0","0","0","0","AccessRestrictions","Along","Amenity","AmenityType","Area","AreaID","AreaType","Back","BanTurns","Bank","Banned","Bar","Beauty","Bike","Bike","Biking","Block","Both","Buffer","BufferType","Building","BuildingID","BuildingType","Bus","Bus","CacheCH","CacheDijkstra","Cafe","Car","CarRepair","CarShare","ChangeCrosswalks","ChangeIntersection","ChangeRoad","ChangeRouteSchedule","Childcare","City","Closed","Commercial","CommonEndpoint","CompressedMovementID","Connection","Construction","Construction","Contraflow","ContraflowLane","ContraflowMovement","ContraflowTurn","ControlStopSign","ControlTrafficSignal","ConvenienceStore","Crosswalk","Culture","Curb","DirectedRoadID","Direction","Driving","DrivingSide","EditCmd","EditEffects","EditIntersection","EditRoad","Empty","Exercise","FastFood","Fixed","FlexPosts","Food","Footway","Fork","Fwd","GreenSpace","Hotel","Intersection","Intersection","IntersectionCluster","IntersectionControl","IntersectionID","IntersectionKind","Island","JerseyBarrier","Lane","Lane","Lane","LaneID","LaneSpec","LaneType","Laundry","Left","Left","Left","Library","LightRail","MAX_BIKE_SPEED","MAX_WALKING_SPEED","Map","MapConfig","MapEdge","MapEdits","Medical","Movement","Movement","MovementID","NORMAL_LANE_THICKNESS","NamePerLanguage","NoCache","None","OffstreetParking","One","OnlyAllowTurns","OriginalRoad","PARKING_LOT_SPOT_LENGTH","Park","Parking","ParkingLot","ParkingLotID","Path","PathConstraints","PathRequest","PathStep","PathStepV2","PathV2","Pathfinder","PathfinderCache","PathfinderCaching","Pedestrian","Perimeter","PermanentMapEdits","Pet","Planters","Playground","Pool","Position","PostOffice","Private","Protected","PublicGarage","RawToMapOptions","Religious","Residential","ResidentialCommercial","RestrictionType","Right","Right","Right","Road","RoadID","RoadSideID","RoadWithStopSign","RoutingParams","SIDEWALK_THICKNESS","School","SharedLeftTurn","SharedSidewalkCorner","SharedUse","Shopping","Shoulder","SideOfRoad","Sidewalk","Signalled","Signed","Stage","StageType","StopSign","Straight","Stripes","StudyArea","Supermarket","Terminus","Tourism","TrafficSignal","Train","TransitRoute","TransitRouteID","TransitStop","TransitStopID","Traversable","Turn","Turn","Turn","TurnID","TurnPriority","TurnType","UTurn","UberTurn","Uncontrolled","University","UnmarkedCrossing","Variable","Water","Yield","Zone","access_restrictions","access_restrictions","add_new_lane","added_turns","address","aisles","all","all_areas","all_buildings","all_costs_from","all_incoming_borders","all_intersections","all_lanes","all_outgoing_borders","all_parking_lots","all_roads","all_transit_routes","all_transit_stops","all_turns","all_zones","allow_through_traffic","almost_blank","alt_start","amenities","amenity_type","angle","apply_edits","area_type","areas","areas","avoid_high_stress","avoid_movements_between","avoid_roads","avoid_steep_incline_penalty","barrier_nodes","bike_graph","bike_lane_penalty","bikes_can_use_bus_lanes","biking_blackhole","blank","bldg_type","blocked_starts","borders","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","boundary","boundary_polygon","bounds","building_to_road","buildings","bus_graph","bus_lane_penalty","bus_routes_on_roads","cache","cached_alternatives","car_graph","categorize","center_pts","changed_intersections","changed_parking_lots","changed_roads","changed_roads","changed_routes","check_lanes_ltr","city","clear_edits_before_save","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","cmp","commands","commands","complicated_turn_restrictions","config","connectivity","constraints","control","cost","create_for_test","create_from_raw","crossed_so_far","crossing_nodes","crosswalk","crosswalk_backward","crosswalk_forward","currently_inside_ut","default","deleted_lanes","deleted_turns","describe","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dir","dir","dir","dist_along","districts","driveway_geom","driveway_line","driving_blackhole","driving_lane_penalty","driving_pos","driving_pos","driving_side","dst","dst_i","dst_i","edit_road_cmd","edits","edits","edits_generation","edits_name","edits_name","elevation","end","end_border","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","export_geometry","extra_spots","filter_crosswalks","find_b_by_osm_id","find_dog_legs_experiment","find_driving_lane_near_building","find_i_by_osm_id","find_r_by_osm_id","find_road_between","find_tr_by_gtfs","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_char","from_short_name","from_str","geom","geom","get","get_a","get_b","get_boundary_polygon","get_bounds","get_bus_routes_on_road","get_city_name","get_config","get_edits","get_edits_change_key","get_gps_bounds","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_i","get_i_crosswalks_edit","get_i_edit","get_l","get_languages","get_movement_for_traffic_signal","get_movements_for","get_name","get_next_roads","get_next_turns_and_lanes","get_next_turns_and_lanes_for","get_parent","get_pathfinder","get_pl","get_r","get_r_edit","get_routes_serving_stop","get_stop_sign","get_t","get_tr","get_traffic_signal","get_transit_route","get_ts","get_turn_between","get_turns_for","get_turns_from_lane","get_turns_to_lane","gps_bounds","gtfs_id","gtfs_id","hack_add_area","hack_override_bldg_type","hack_override_offstreet_spots","hack_override_offstreet_spots_individ","hack_override_orig_spawn_times","hash","hash","hash","hash","hash","hash","hash","hash","i","i1","i2","id","id","id","id","id","id","id","id","id","id","id","id","idx","idx","include_railroads","incoming_lanes","incremental_edit_traffic_signal","inferred_sidewalks","interior","intersections","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","is_for_moving_vehicles","is_train_stop","is_unprotected_turn","is_walkable","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","iter","keep_bldg_tags","keep_pathfinder_despite_edits","kind","label_center","lane","lane_center_pts","lane_closest_to_edge","lane_type","lanes","lanes_ltr","languages","levels","load_synchronously","long_name","lt","main_road_penalty","make","map","map_loaded_directly","map_name","max_elevation","maybe_add_bike_lanes","maybe_get_a","maybe_get_b","maybe_get_i","maybe_get_l","maybe_get_pl","maybe_get_r","maybe_get_stop_sign","maybe_get_t","maybe_get_tr","maybe_get_traffic_signal","maybe_get_ts","members","members","members","merge_osm_ways","merge_zones","merge_zones","merged","minify","minify_buildings","modified_lanes","movements","must_apply_edits","must_stop","mut_lane","mut_road","mut_turn","name","name","name","name","names","new","new","new","new_edits","objects","offset","offset","oneway_for_driving","opposite","orig_id","orig_id","orig_id","orig_req","orig_spawn_times","original_crosswalks","original_intersections","osm","osm2lanes","osm_id","osm_id","osm_tags","osm_tags","osm_tags","osm_tags","osm_way_id","outgoing_lanes","params","parent","parent","parking","parking_lots","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","path","pathfind","pathfind","pathfind_v2","pathfind_v2_with_params","pathfind_with_params","pathfinder","pathfinder_dirty","percent_incline","perimeter","polygon","polygon","polygon","polygon","polygon","proposal_description","proposal_description","proposal_link","proposal_link","protected_movements","recalculate_all_movements","recalculate_pathfinding_after_edits","recalculate_road_to_buildings","req","restrictions","road","road","road","road","road_to_buildings","road_to_buildings","roads","roads","roads","roads","route_type","routing_params","routing_params","save","save_edits","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","short_name","short_name","should_use_transit","side","sidewalk_line","sidewalk_pos","sidewalk_pos","sidewalk_pos","simple_path_btwn","simple_path_btwn_v2","skip_ch","spawn_times","speed_limit","speed_limit","spots","src","src_i","src_i","stage_type","stages","start","start","steps","steps","stop_signs","stops","street_parking_spot_length","supports_any_movement","to","to_char","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","toggle_road_direction","total_length","traffic_signals","train_graph","transit_routes","transit_stops","transit_stops","traversable","try_apply_edits","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","turn_on_red","turn_restrictions","turn_restrictions","turn_type","turn_type","turns","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","typical_lane_width","typical_lane_widths","uber_turns","uber_turns","uber_turns","unnamed","unprotected_turn_penalty","unsaved_edits","untrimmed_center_pts","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","walking_graph","walking_with_transit_graph","width","width","yield_movements","zones","zorder","0","0","1","num_housing_units","num_residents","0","i","i","id","new","new","new","new","old","old","old","old","r","0","0","0","0","0","1","1","0","0","0","0","0","0","0","0","0","0","1","2","0","0","City","POLYGON_EPSILON","areas","borrow","borrow_mut","boundary","deserialize","districts","from","from_huge_map","from_individual_maps","into","is_within","name","serialize","try_from","try_into","type_id","vzip","Border","Building","DirectedRoad","LeaveMap","RideTransit","SidewalkEndpoint","Spot","WalkingNode","WalkingOptions","all_vehicle_costs_from","all_walking_costs_from","allow_shoulders","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","closest","cmp","cmp","deserialize","deserialize","end_transit","eq","eq","equivalent","equivalent","find_scc","fmt","fmt","from","from","get_hash","get_hash","hash","hash","into","into","is_within","is_within","partial_cmp","partial_cmp","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vehicle_cost","vzip","vzip","walking","walking_speed","0","0","0","0","0","0","1","WalkingOptions","all_walking_costs_from","allow_shoulders","borrow","borrow_mut","clone","clone_into","common_speeds","default","default_speed","from","into","is_within","to_owned","try_from","try_into","type_id","vzip","walking_speed","0","ChangeCrosswalks","ChangeIntersection","ChangeRoad","ChangeRouteSchedule","Closed","EditCmd","EditCrosswalks","EditEffects","EditIntersection","EditRoad","MapEdits","PermanentMapEdits","StopSign","TrafficSignal","access_restrictions","added_turns","apply","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","changed_intersections","changed_lanes","changed_parking_lots","changed_roads","changed_roads","changed_routes","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","commands","compat","compress","default","deleted_lanes","deleted_turns","describe","deserialize","diff","edits_name","eq","eq","eq","eq","eq","fix_building_driveways","fix_parking_lot_driveways","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","get_checksum","get_orig_from_osm","get_title","into","into","into","into","into","into","is_within","is_within","is_within","is_within","is_within","is_within","lanes_ltr","load_from_bytes","load_from_file","merge_zones","modified_lanes","modify_lanes","new","original_crosswalks","original_intersections","perma","proposal_description","proposal_link","recalculate_intersection_polygon","recalculate_turns","save","serialize","speed_limit","to_owned","to_owned","to_owned","to_owned","to_owned","to_perma","to_permanent","to_permanent","to_permanent","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","undo","update_derived","vzip","vzip","vzip","vzip","vzip","vzip","i","i","id","new","new","new","new","old","old","old","old","r","0","0","ChangeAccessRestrictions","ChangeLaneType","ChangeSpeedLimit","OriginalLane","ReverseLane","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","deserialize","deserialize","deserialize","deserialize","deserialize","dir","dst_i","fix_adaptive_stages","fix_city_name","fix_f64s","fix_intersection_ids","fix_lane_widths","fix_map_name","fix_merge_zones","fix_offset","fix_old_lane_cmds","fix_phase_to_stage","fix_plans","fix_road_direction","fix_turn_restrictions","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","id","id","id","idx","into","into","into","into","into","is_within","is_within","is_within","is_within","is_within","l","lookup","lt","new","new","num_back","num_fwd","old","old","orig_lt","parent","remove_vehicle_caps","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upgrade","vzip","vzip","vzip","vzip","vzip","walk","ChangeCrosswalks","ChangeIntersection","ChangeRoad","ChangeRouteSchedule","Closed","IGNORE_OLD_LANES","PermanentEditCmd","PermanentEditCrosswalks","PermanentEditIntersection","PermanentMapEdits","StopSign","TrafficSignal","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","commands","deserialize","deserialize","deserialize","deserialize","edits_name","from","from","from","from","get_title","into","into","into","into","into_cmd","into_edits","into_edits_permissive","is_within","is_within","is_within","is_within","map_name","merge_zones","proposal_description","proposal_link","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","turns","type_id","type_id","type_id","type_id","version","vzip","vzip","vzip","vzip","with_permanent","with_permanent","gtfs_id","i","i","new","new","new","new","old","old","old","old","r","0","must_stop","RawToMapOptions","borrow","borrow_mut","bridges","buildings","clap","clone","clone_into","default","from","from_clap","into","is_within","keep_bldg_tags","match_points_to_lanes","parking_lots","skip_ch","snap_driveway","snap_nodes_to_line","snap_nodes_with_data_to_line","to_owned","traffic_signals","transit","trim_path","try_from","try_into","turns","type_id","vzip","walking_turns","find_bridges","classify_bldg","get_address","make_all_buildings","infer_spots","line_valid","make_all_parking_lots","snap_driveway","PROTECTED","YIELD","all_walk_all_yield","degenerate","expand_all_stages","four_way_four_stage","four_way_two_stage","get_possible_policies","greedy_assignment","half_signal","lagging_green","make_stages","new","stage_per_road","synchronize","three_way","add_stage","four_way_four_stage","is_conflict","make_crosswalk_variable","make_lagging_green_variable","make_signal","make_traffic_signal","merge_stages","movements","movements_from","multi_way_stages","optimize","protected_yield_stage","remove_movement","straight_types","three_way_three_stage","BorderSnapper","borrow","borrow_mut","bus_incoming_borders","bus_outgoing_borders","create_route","create_stop","finalize_transit","from","into","is_within","new","train_incoming_borders","train_outgoing_borders","try_from","try_into","type_id","vzip","curvey_turn","ensure_unique","expected_turn_types_for_four_way","make_all_turns","make_vehicle_turns","remove_merging_turns","turn_type_from_angles","verify_vehicle_connectivity","baseline_geometry","filter_turns","make_crosswalk","make_shared_sidewalk_corner","make_walking_turns","turn_id","area","block","building","intersection","lane","movement","parking_lot","road","stop_signs","traffic_signals","transit","turn","zone","0","Area","AreaID","area_type","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","deserialize","deserialize","eq","equivalent","fmt","fmt","fmt","from","from","get_hash","hash","id","into","into","is_within","is_within","osm_id","osm_tags","partial_cmp","polygon","serialize","serialize","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Block","Perimeter","borrow","borrow","borrow_mut","borrow_mut","calculate_coloring","check_continuity","clone","clone","clone_into","clone_into","collapse_deadends","contains","deserialize","deserialize","find_all_single_blocks","find_roads_to_skip_tracing","flip_side_of_road","fmt","from","from","interior","into","into","is_within","is_within","merge_all","merge_holes","partition_by_predicate","perimeter","polygon","restore_invariant","reverse_to_fix_winding_order","roads","serialize","serialize","single_block","to_block","to_owned","to_owned","try_from","try_from","try_into","try_into","try_to_merge","type_id","type_id","undo_invariant","vzip","vzip","0","Building","BuildingID","BuildingType","Commercial","Empty","OffstreetParking","Private","PublicGarage","Residential","ResidentialCommercial","address","amenities","biking_connection","bldg_type","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","deserialize","deserialize","deserialize","deserialize","driveway_geom","driving_connection","eq","eq","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","get_hash","has_amenity","has_residents","hash","id","into","into","into","into","is_within","is_within","is_within","is_within","label_center","levels","name","num_parking_spots","orig_id","osm_tags","parking","partial_cmp","polygon","serialize","serialize","serialize","serialize","sidewalk","sidewalk_pos","sidewalk_to_bike","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","0","0","1","num_housing_units","num_residents","0","0","1","1","0","Intersection","IntersectionID","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","control","deserialize","deserialize","elevation","eq","equivalent","find_road_between","fmt","fmt","fmt","from","from","get_hash","get_incoming_lanes","get_outgoing_lanes","get_rank","get_road_sides_sorted_by_incoming_angle","get_roads_sorted_by_incoming_angle","get_sorted_incoming_roads","get_zorder","hash","id","incoming_lanes","into","into","is_border","is_closed","is_cycleway","is_deadend_for_driving","is_deadend_for_everyone","is_degenerate","is_footway","is_incoming_border","is_light_rail","is_outgoing_border","is_private","is_stop_sign","is_traffic_signal","is_within","is_within","kind","merged","movements","name","orig_id","outgoing_lanes","partial_cmp","polygon","roads","serialize","serialize","some_incoming_road","some_outgoing_road","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","turn_to_movement","turns","type_id","type_id","vzip","vzip","Both","CommonEndpoint","Lane","LaneID","None","One","PARKING_LOT_SPOT_LENGTH","biking_blackhole","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","common_endpoint","decode_u32","deserialize","deserialize","dir","dist_along_of_point","driving_blackhole","dst_i","dummy","encode_u32","end_line","endpoint","eq","eq","equivalent","first_line","first_pt","fmt","fmt","fmt","from","from","from","get_directed_parent","get_hash","get_lane_level_turn_restrictions","get_nearest_side_of_road","get_thick_polygon","hash","id","intersections","into","into","into","is_biking","is_bus","is_driving","is_footway","is_light_rail","is_parking","is_shoulder","is_sidewalk","is_walkable","is_within","is_within","is_within","lane_center_pts","lane_type","last_line","last_pt","length","new","number_parking_spots","offset","parse_turn_type_from_osm","partial_cmp","road","serialize","serialize","src_i","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","width","0","CompressedMovementID","Movement","MovementID","angle","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","conflicts_with","crosswalk","deserialize","deserialize","deserialize","eq","eq","eq","equivalent","equivalent","find_r","fmt","fmt","fmt","for_i","from","from","from","from","from_permanent","geom","get_hash","get_hash","hash","hash","i","id","idx","into","into","into","is_within","is_within","is_within","members","movement_geom","parent","partial_cmp","partial_cmp","serialize","serialize","serialize","src_center_and_width","to","to_owned","to_owned","to_owned","to_permanent","try_from","try_from","try_from","try_into","try_into","try_into","turn_type","type_id","type_id","type_id","vzip","vzip","vzip","0","ParkingLot","ParkingLotID","aisles","borrow","borrow","borrow_mut","borrow_mut","capacity","clone","clone","clone_into","clone_into","cmp","deserialize","deserialize","driveway_line","driving_pos","eq","equivalent","extra_spots","fmt","fmt","from","from","get_hash","hash","id","into","into","is_within","is_within","osm_id","partial_cmp","polygon","serialize","serialize","sidewalk_line","sidewalk_pos","spots","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","DirectedRoadID","Left","Right","Road","RoadID","RoadSideID","SideOfRoad","access_restrictions","access_restrictions_from_osm","barrier_nodes","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","both_directions","both_sides","center_pts","children","children_backwards","children_forwards","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","common_endpoint","complicated_turn_restrictions","crossing_nodes","crosswalk_backward","crosswalk_forward","deserialize","deserialize","deserialize","deserialize","deserialize","dir","dir_and_offset","directed_id_from","directed_id_to","dst_i","dst_i","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","find_closest_lane","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_detailed_rank","get_dir_change_pl","get_half_polygon","get_half_width","get_hash","get_hash","get_hash","get_hash","get_lanes_between","get_name","get_outermost_lane","get_rank","get_thick_polygon","get_width","get_zone","has_lanes","hash","hash","hash","hash","high_stress_for_bikes","id","incoming_lanes","into","into","into","into","into","is_cycleway","is_deadend_for_driving","is_driveable","is_extremely_short","is_footway","is_light_rail","is_private","is_service","is_within","is_within","is_within","is_within","is_within","lane_specs","lanes","lanes","length","must_get_sidewalk","oneway_for_driving","orig_id","osm_tags","other_endpt","other_side","parking_to_driving","partial_cmp","partial_cmp","partial_cmp","partial_cmp","percent_incline","recreate_lanes","road","road","serialize","serialize","serialize","serialize","serialize","shift_from_left_side","side","speed_limit","speed_limit_from_osm","src_i","src_i","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","transit_stops","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","turn_restrictions","type_id","type_id","type_id","type_id","type_id","untrimmed_center_pts","vzip","vzip","vzip","vzip","vzip","zorder","ControlStopSign","RoadWithStopSign","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","deserialize","eq","eq","flip_sign","fmt","fmt","from","from","get_priority","id","into","into","is_within","is_within","lane_closest_to_edge","must_stop","new","roads","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","CROSSWALK_PACE","ControlTrafficSignal","Fixed","Stage","StageType","Variable","adjust_major_minor_timing","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","convert_to_ped_scramble","convert_to_ped_scramble_without_promotion","could_be_protected","deserialize","deserialize","deserialize","edit_movement","enforce_minimum_crosswalk_time","eq","eq","eq","export","fmt","fmt","fmt","from","from","from","get_min_crossing_time","get_possible_policies","get_priority_of_movement","get_priority_of_turn","id","import","internal_convert_to_ped_scramble","into","into","into","is_within","is_within","is_within","max_crosswalk_time","missing_turns","new","new","offset","protected_movements","serialize","serialize","serialize","simple_cycle_duration","simple_duration","stage_type","stages","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","validate","vzip","vzip","vzip","yield_movements","0","0","1","2","0","TransitRoute","TransitRouteID","TransitStop","TransitStopID","all_path_requests","all_paths","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cmp","deserialize","deserialize","deserialize","deserialize","driving_pos","end_border","eq","eq","eq","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","get_hash","get_hash","gtfs_id","gtfs_id","hash","hash","id","id","idx","into","into","into","into","is_train_stop","is_within","is_within","is_within","is_within","long_name","name","orig_spawn_times","partial_cmp","partial_cmp","plural_noun","road","route_type","serialize","serialize","serialize","serialize","short_name","sidewalk_pos","spawn_times","start","stops","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","Banned","Crosswalk","Left","Protected","Right","SharedSidewalkCorner","Straight","Turn","TurnID","TurnPriority","TurnType","UTurn","UnmarkedCrossing","Yield","angle","between_sidewalks","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cmp","conflicts_with","crosswalk_line","crosswalk_over_road","deserialize","deserialize","deserialize","deserialize","dst","eq","eq","eq","eq","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","geom","get_hash","hash","id","into","into","into","into","is_crossing_arterial_intersection","is_within","is_within","is_within","is_within","parent","partial_cmp","partial_cmp","partial_cmp","pedestrian_crossing","penalty","permitted_by_lane","permitted_by_road","serialize","serialize","serialize","serialize","src","to_movement","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","turn_type","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","AccessRestrictions","Zone","allow_through_traffic","borders","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","deserialize","eq","eq","floodfill","fmt","fmt","from","from","into","into","is_within","is_within","make_all","members","new","restrictions","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","0","0","Arterial","HIGHWAY","Highway","Local","Node","NodeID","OsmID","Relation","RelationID","RoadRank","Way","WayID","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","deserialize","deserialize","deserialize","deserialize","detailed_from_highway","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from_highway","get_hash","get_hash","get_hash","get_hash","hash","hash","hash","hash","inner","into","into","into","into","into","is_within","is_within","is_within","is_within","is_within","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","0","0","0","Bike","Bus","Car","CreateEngine","Path","PathConstraints","PathRequest","PathStep","PathStepV2","PathV2","Pathfinder","PathfinderCache","PathfinderCaching","Pedestrian","RoutingParams","Train","WalkingNode","all","avoid_high_stress","avoid_movements_between","avoid_roads","avoid_steep_incline_penalty","bike_lane_penalty","bitand","bitor","bitxor","borrow","borrow","borrow_mut","borrow_mut","bus_lane_penalty","can_use","can_use_road","clone","clone","clone_into","clone_into","cmp","default","deserialize","deserialize","deserialize","driving_lane_penalty","engine","enum_from_u32","enum_into_u32","eq","eq","eq","equivalent","filter_lanes","fmt","fmt","from","from","from_lt","into","into","is_within","is_within","main_road_penalty","node_map","not","partial_cmp","pathfinder","round","serialize","serialize","serialize","sub","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uber_turns","unprotected_turn_penalty","unround","v1","v2","vehicle_cost","vehicles","vzip","vzip","walking","zone_cost","CH","CH","CHSeedingNodeOrdering","CreateEngine","Dijkstra","Dijkstra","Empty","PathfindEngine","all_costs_from","borrow","borrow","borrow_mut","borrow_mut","calculate_path","calculate_path_multiple_sources_and_targets","clone","clone_into","create","deserialize","from","from","into","into","is_dijkstra","is_within","is_within","reuse_ordering","serialize","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","graph","graph","path_calc","InnerNodeMap","NodeMap","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","deserialize","deserialize_nodemap","from","from","get","get_or_insert","guarantee_node_ordering","id_to_node","id_to_node","into","into","is_within","is_within","new","node_to_id","serialize","to_owned","translate_id","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","CacheCH","CacheDijkstra","NoCache","Pathfinder","PathfinderCache","PathfinderCaching","all_costs_from","apply_edits","bike_graph","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bus_graph","cache","cached_alternatives","car_graph","clone","clone","clone_into","clone_into","deserialize","empty","eq","finalize_transit","from","from","from","into","into","into","is_within","is_within","is_within","new","new","new_ch","new_dijkstra","new_limited","params","pathfind","pathfind_v2","pathfind_with_params","pathfind_with_params","serialize","should_use_transit","to_owned","to_owned","train_graph","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","walking_graph","walking_with_transit_graph","IntersectionCluster","UberTurn","UberTurnV2","autodetect","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","deserialize","deserialize","entry","entry","eq","eq","equivalent","exit","exit","find_all","flood","fmt","fmt","from","from","from","geom","into","into","into","into_v2","is_within","is_within","is_within","members","new","partial_cmp","path","path","serialize","serialize","to_owned","to_owned","trace_back","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","uber_turns","vzip","vzip","vzip","ContraflowLane","ContraflowTurn","Lane","Path","PathRequest","PathStep","Turn","about_to_start_ut","add","alt_start","as_lane","as_traversable","as_turn","between_buildings","between_directed_roads","blocked_starts","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","constraints","crossed_so_far","crossed_so_far","crosses_road","current_step","currently_inside_ut","currently_inside_ut","deduplicate","deserialize","deserialize","deserialize","dist_crossed_from_step","end","eq","eq","eq","equivalent","equivalent","estimate_duration","exact_slice","fmt","fmt","fmt","fmt","from","from","from","get_blocked_starts","get_hash","get_req","get_step_at_dist_along","get_steps","get_total_elevation_change","hash","into","into","into","is_empty","is_last_step","is_upcoming_uber_turn_component","is_within","is_within","is_within","isnt_last_step","last_step","leave_from_driveway","max_speed_along","max_speed_and_incline_along","maybe_next_step","modify_step","new","next_step","orig_req","partial_cmp","percent_dist_crossed","serialize","serialize","serialize","shift","start","steps","to_owned","to_owned","to_owned","to_string","total_length","total_length","trace","trace_from_start","trace_v2","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","uber_turns","validate_continuity","validate_restrictions","validate_zones","vehicle","vzip","vzip","vzip","walking","0","0","0","0","Along","Contraflow","ContraflowMovement","Movement","PathStepV2","PathV2","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cost","crosses_road","deserialize","deserialize","find_uber_turns","fmt","fmt","from","from","from_roads","get_cost","get_req","get_steps","into","into","into_v1","into_v1_walking","is_within","is_within","new","req","serialize","serialize","steps","to_owned","to_owned","trace_all_polygons","trace_v2","try_from","try_from","try_into","try_into","type_id","type_id","uber_turns","vzip","vzip","0","0","0","0","Node","Road","UberTurn","VehiclePathfinder","all_costs_from","apply_edits","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","constraints","deserialize","deserialize","empty","engine","eq","equivalent","fmt","from","from","get_hash","hash","into","into","is_within","is_within","make_input_graph","new","nodes","params","partial_cmp","pathfind","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uber_turns","vehicle_cost","vzip","vzip","0","0","LeaveMap","RideTransit","SidewalkEndpoint","SidewalkPathfinder","WalkingNode","all_costs_from","apply_edits","borrow","borrow_mut","clone","clone_into","deserialize","empty","engine","from","into","is_within","make_input_graph","new","nodes","one_step_walking_path","pathfind","serialize","should_use_transit","to_owned","transit_input_graph","try_from","try_into","type_id","use_transit","vzip","walking_path_to_steps","0","0","0","1","Lane","MAX_BIKE_SPEED","MAX_WALKING_SPEED","Position","Traversable","Turn","as_lane","as_turn","bike_speed_on_incline","borrow","borrow","borrow_mut","borrow_mut","buffer_dist","clone","clone","clone_into","clone_into","cmp","cmp","deserialize","deserialize","dist_along","dist_along","end","eq","eq","equiv_pos","equiv_pos_for_long_object","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","get_hash","get_polyline","get_zorder","hash","into","into","is_within","is_within","lane","lane","max_speed_along_movement","max_speed_along_road","maybe_lane","maybe_turn","min_dist","new","partial_cmp","partial_cmp","pt","pt_and_angle","serialize","serialize","start","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","walking_speed_on_incline","0","0"],"q":["map_model","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::BuildingType","","","","","map_model::CommonEndpoint","map_model::EditCmd","","","","","","","","","","","","map_model::EditIntersection","","map_model::LaneType","map_model::OffstreetParking","","","","map_model::PathStep","","","","map_model::PathStepV2","","","","map_model::StageType","","","","map_model::Traversable","","map_model::city","","","","","","","","","","","","","","","","","","","map_model::connectivity","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::connectivity::Spot","","","map_model::connectivity::WalkingNode","","","","map_model::connectivity::walking","","","","","","","","","","","","","","","","","","","map_model::edits","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::edits::EditCmd","","","","","","","","","","","","map_model::edits::EditIntersection","","map_model::edits::compat","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::edits::perma","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::edits::perma::PermanentEditCmd","","","","","","","","","","","","map_model::edits::perma::PermanentEditIntersection","","map_model::make","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::make::bridges","map_model::make::buildings","","","map_model::make::parking_lots","","","","map_model::make::traffic_signals","","","","","","","","","","","","","","","","map_model::make::traffic_signals::lagging_green","","","","","","","","","","","","","","","","map_model::make::transit","","","","","","","","","","","","","","","","","","map_model::make::turns","","","","","","","","map_model::make::walking_turns","","","","","","map_model::objects","","","","","","","","","","","","","map_model::objects::area","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::block","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::building","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::building::BuildingType","","","","","map_model::objects::building::OffstreetParking","","","","map_model::objects::intersection","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::lane","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::lane::CommonEndpoint","map_model::objects::movement","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::parking_lot","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::road","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::stop_signs","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::traffic_signals","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::traffic_signals::StageType","","","","map_model::objects::transit","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::turn","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::zone","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::osm","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::osm::OsmID","","","map_model::pathfind","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::engine","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::engine::CreateEngine","map_model::pathfind::engine::PathfindEngine","","","map_model::pathfind::node_map","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::pathfinder","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::uber_turns","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::v1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::v1::PathStep","","","","map_model::pathfind::v2","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::v2::PathStepV2","","","","map_model::pathfind::vehicles","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::vehicles::Node","","map_model::pathfind::walking","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::walking::WalkingNode","","","","map_model::traversable","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::traversable::Traversable",""],"d":["","","","","","","","","Original direction","A business located inside a building.","Businesses are categorized into one of these types.","Areas are just used for drawing.","","","","","","For stop signs: Can’t currently specify this! For …","","","","","","A block is defined by a perimeter that traces along the …","Two lanes/roads share both endpoints, because they both …","","","A building has connections to the road and sidewalk, may …","","","","","Create a slow-to-build but fast-to-use contraction …","Create a fast-to-build but slow-to-use Dijkstra-based …","","","","","","","","","","A single city (like Seattle) can be broken down into …","","An estimated number of workers","","This is cheaper to store than a MovementID. It simply …","Multiple Road
s connect but no flow of traffic interacts …","","","Opposite direction, sidewalks only","Sidewalks only!","","","","A traffic signal consists of a sequence of Stages that …","","A marked zebra crossing, where pedestrians usually have …","","A raised curb","","","","","","","","","","","","","Flex posts, wands, cones, other “weak” forms of …","","Some kind of pedestrian-only path unassociated with a road","One flow of traffic forks into multiple, or multiple merge …","","","","An intersection connects roads. Most have >2 roads and are …","At least three Road
s meet at an actual “intersection” …","This only applies to VehiclePathfinder; walking through …","The kind of traffic control present at an intersection.","","What kind of feature an Intersection
actually represents. …","","Solid barrier, no gaps.","A road segment is broken down into individual lanes, which …","Original direction","","A lane is identified by its parent road and its position, …","","","","","","","","","","","","","A Road
ends because the road crosses the map boundary.","Represents changes to a map. Note this isn’t …","","A Movement groups all turns from one road to another, …","","A movement is like a turn, but with less detail – it …","","None corresponds to the native name","Create a fast-to-build but slow-to-use Dijkstra-based …","Two lanes/roads don’t have any common endpoints","Represent no parking as Private(0, false).","Two lanes/roads share one endpoint","","Refers to a road segment between two nodes, using OSM IDs. …","From some manually audited cases in Seattle, the length of …","","","Parking lots have some fixed capacity for cars, and are …","","","Who’s asking for a path?","","","One step along a path.","A path between two endpoints for a particular mode. This …","","For callers needing to request paths with a variety of …","When pathfinding with different RoutingParams
is done, a …","","A sequence of roads in order, beginning and ending at the …","MapEdits are converted to this before serializing. …","","Sturdier planters, with gaps.","","","Represents a specific point some distance along a lane.","","(Spots, explicitly tagged as a garage)","For stop signs: cars can do this without stopping. These …","(Name, spots)","Options for converting RawMaps to Maps.","","","An estimated number of residents, workers","","","","","A Road represents a segment between exactly two …","","","","Tuneable parameters for all types of routing.","","","","The corner where two sidewalks meet. Pedestrians can cross …","Some kind of shared pedestrian+bicycle space. May be …","","","See https://wiki.openstreetmap.org/wiki/Forward_…","","","","","","","","Just paint!","Not from OSM. A user-specified area to focus on.","","A single Road
ends because the actual roadway ends; “the …","","","","","","","","Either a lane or a turn, where most movement happens.","A Turn leads from the end of one Lane to the start of …","","","Turns are uniquely identified by their (src, dst) lanes …","","","","","","","An unmarked crossing, where pedestrians may cross without …","Minimum is the minimum duration, 0 allows cycle to be …","","For stop signs: cars have to stop before doing this turn, …","A contiguous set of roads with access restrictions. This …","","","Returns the index where the new lane was inserted","","","","All types of amenities, in alphabetical order.","","","Return the cost of a single path, and also a mapping from …","This and all_outgoing_borders are expensive to constantly …","","","","","","","","","","","A dummy map that won’t crash UIs, but has almost nothing …","","","This is the specific amenity listed in OSM, not the more …","","","","","","","Don’t allow movements between these roads at all. Only …","Don’t allow crossing these roads at all. Only affects …","","Some kind of modal filter or barrier this distance along …","","","","","Just for temporary std::mem::replace tricks.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Categorize an OSM amenity tag.","The physical center of the road, including sidewalks, …","","","","Derived from commands, kept up to date by update_derived","","This is meant for table-driven unit tests. Call this on …","","A hack. Use this to apply edits, then save the map anyway, …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A stack, oldest edit is first. The same intersection may …","self is ‘from’. (via, to). Only BanTurns.","","","","","","Transforms a string describing lane types and directions, …","","","Some kind of crossing this distance along center_pts.","Could be a Crosswalk or UnmarkedCrossing","","Is there a tagged crosswalk near each end of the road?","","","","","","","","","","","","","","","","","","","","","","","","The individual maps","Goes from building to sidewalk","Goes from the lot to the driving lane","{Cars, bikes} trying to start or end here might not be …","","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …","These may be on different roads entirely, like for light …","If true, driving happens on the right side of the road …","","","","","Once a Map exists, the player can edit it in the UI …","","","","","","","A transit vehicle either vanishes at its last stop or …","","","","","","","","","","","","","","","","","","","","","","","Export all road and intersection geometry to GeoJSON, …","If we can’t render all spots (maybe a lot with no aisles …","Only include crosswalks that match a highway=crossing
OSM …","","Enable experimental dog-leg intersection merging","Cars trying to park near this building should head for the …","","","Finds the road directly connecting two intersections.","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","The inverse of to_char
. Always picks one buffer type. …","","","The “overall” path of movement, aka, an “average” …","","","","","","","What’re the names of bus routes along a road? Note this …","","","","If you need to regenerate anything when the map is edited, …","","","","","","","","","","","","","","","None for SharedSidewalkCorners and turns not belonging to …","Find all movements from one road to another that’re …","","","","","","","","","","","","","","","","","","","The turns may belong to two different intersections!","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","As long as this is unique per road, this value is …","OSM railway=rail will be included as light rail if so. …","Note that a lane may belong to both incoming_lanes and …","Since the player is in the middle of editing, the signal …","If true, roads without explicitly tagged sidewalks may be …","These roads exist entirely within the perimeter","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","If false, only buses serve this stop","Does a turn at a stop sign go from a smaller to a larger …","","","","","","","","","","","","","","","","","","Preserve all OSM tags for buildings, increasing the final …","Normally after applying edits, you must call …","","Where a text label should be centered to have the best …","","","","","Invariant: A road must contain at least one child. These …","","","","Load a map from a local serialized Map or RawMap. Note …","","","When crossing an arterial or highway road, multiply the …","See …","A bunch of (mostly read-only) queries on a Map.","After deserializing a map directly, call this after.","","Returns the highest elevation in the map","","","","","","","","","","","","","","","","Experimentally merge these OSM ways","If false, adjacent roads with the same AccessRestrictions …","If false, adjacent roads with the same AccessRestrictions …","Was a short road adjacent to this intersection merged?","Modifies the map in-place, removing parts not essential …","Modifies the map in-place, removing buildings.","","","Returns (changed_roads, deleted_lanes, deleted_turns, …","","","Public for importer. Do not abuse!","","","","","","","","","","","","","","None if bidirectional. If it’s one-way, which direction …","","","","","","Explicitly store whatever the original was, since this can…","","","Useful utilities for working with OpenStreetMap.","If true, use experimental osm2lanes for figuring out lanes …","The importing process also automatically creates some …","","Depending on options while importing, these might be …","","Depending on options while importing, these might be …","","","","","","","","","","","","","","","","","Everything related to pathfinding through a map for …","","","","","","","[-1.0, 1.0] theoretically, but in practice, about [-0.25, …","","","The polygon covers the interior of the block.","","This needs to be in clockwise orientation, or later …","","Edits without these are player generated.","Some edits are included in the game by default, in …","The link is optional even for proposals","","","","This can expensive, so don’t constantly do it while …","","","","","","","","","","","","Only roads incoming to the intersection are listed here.","","","Returns the routing params baked into the map.","","","","","","","","","","","","","","","","","","","","","","Lot to sidewalk","The building’s connection for any agent can change based …","","","Simple search along undirected roads. Expresses the result …","Simple search along directed roads, weighted by distance. …","Should contraction hierarchies for pathfinding be built? …","Non-empty, times in order for one day when a vehicle …","","","The middle of the “T”, pointing towards the parking …","src and dst must both belong to parent. No guarantees that …","","","","","A transit vehicle spawns at the beginning of this lane. …","","","","","","Street parking is divided into spots of this length. 8 …","","","Represents the lane type as a single character, for use in …","","","","","","","","","","","","","","","","","","","Convert the driving lanes of a road between one-way …","","","","","Meaningless order","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If true, turns on red which do not conflict crossing …","Turn indications specific to this lane, from …","self is ‘from’","","","","","","","","","","","","","","","","","","","Pick a reasonable default for a lane width, without any …","For a given lane type, returns some likely widths. This …","","","","","","","Like center_pts, but before any trimming for intersection …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A single city (like Seattle) can be broken down into …","","","","","","","The individual maps","Returns the argument unchanged.","If there’s a single map covering all the smaller maps, …","Generate a city from a bunch of smaller, individual maps. …","Calls U::from(self)
.","","","","","","","","","","","","","false is src_i, true is dst_i","","","","Starting from some initial spot, calculate the cost to all …","Starting from some initial buildings, calculate the cost …","If true, allow walking on shoulders.","","","","","","","","","","","","","","","","","","","Calculate the strongly connected components (SCC) of the …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","This returns the pathfinding cost of crossing one road and …","","","","","","","","","","","","","Starting from some initial buildings, calculate the cost …","If true, allow walking on shoulders.","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","This must contain all crossing turns at one intersection, …","","","","Represents changes to a map. Note this isn’t …","","","","","","","","","","","","","","","","","","","","Pick apart changed_roads and figure out if an entire road …","","","Derived from commands, kept up to date by update_derived","","","","","","","","","","","","A stack, oldest edit is first. The same intersection may …","","Assumes update_derived has been called.","","","","(summary, details)","","","","","","","","","Recalculate the driveways of some buildings after map …","Recalculate the driveways of some parking lots after map …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Produces an md5sum of the contents of the edits.","","Get the human-friendly of these edits. If they have a …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","Load map edits from the given JSON bytes. Strip out any …","Load map edits from a JSON file. Strip out any commands …","If false, adjacent roads with the same AccessRestrictions …","","","","","","","Some edits are included in the game by default, in …","","","","","","","","","","","","","Encode the edits in a permanent format, referring to …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","When the PermanentMapEdits format changes, add a …","","","","","","","","","","","","","","","","MapEdits are converted to this before serializing. …","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get the human-friendly of these edits. If they have a …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","Transform permanent edits to MapEdits, looking up the map …","Transform permanent edits to MapEdits, looking up the map …","","","","","","If false, adjacent roads with the same AccessRestrictions …","Edits without these are player generated.","The link is optional even for proposals","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Options for converting RawMaps to Maps.","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","Preserve all OSM tags for buildings, increasing the final …","Snap points to an exact Position along the nearest lane. …","","Should contraction hierarchies for pathfinding be built? …","","","","","The various traffic signal generators live in the traffic …","","Adjust the path to start on the polygon’s border, not …","","","","","","","Look for roads underneath bridges, then lower their …","","","Finalize importing of buildings, mostly by matching them …","","","Take in parking lots from OSM and all parking aisle roads. …","Returns (driveway_line, driving_pos, sidewalk_line, …","","","","","","","","Applies a bunch of heuristics to a single intersection, …","","","","","","","Simple second-pass after generating all signals. Find …","","","","","","","","Create a traffic signal which has a stage that is: …","","","","Build stages. First find roads that are straight across, …","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","Generate all driving and walking turns at an intersection, …","","","","Ideally, we want every incoming lane to lead to at least …","","Filter out crosswalks on really short roads. In reality, …","","","Looks at all sidewalks (or lack thereof) in …","","","","","","","","","","","","Public transit stops and routes.","","Zones and AccessRestrictions are used to model things like:","","Areas are just used for drawing.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","The importing process also automatically creates some …","","","","","","","","","","","","","","","","","A block is defined by a perimeter that traces along the …","A sequence of roads in order, beginning and ending at the …","","","","","Assign each perimeter one of num_colors
, such that no two …","","","","","","If the perimeter follows any dead-end roads, “collapse”…","Does this perimeter completely enclose the other?","","","This calculates all single block perimeters for the entire …","Blockfinding is specialized for the LTN tool, so …","Shrinks or expands the perimeter by tracing the opposite …","","Returns the argument unchanged.","Returns the argument unchanged.","These roads exist entirely within the perimeter","Calls U::from(self)
.","Calls U::from(self)
.","","","Try to merge all given perimeters. If successful, only one …","Looks for perimeters that’re completely surrounded by …","Consider the perimeters as a graph, with adjacency …","","The polygon covers the interior of the block.","Restore the first=last invariant. Methods may temporarily …","Should we reverse one perimeter to match the winding order?","","","","Starting at any lane, snap to the nearest side of that …","","","","","","","","Try to merge two blocks. Returns true if this is …","","","A perimeter has the first and last road matching up, but …","","","","A building has connections to the road and sidewalk, may …","","","An estimated number of workers","","Represent no parking as Private(0, false).","(Spots, explicitly tagged as a garage)","(Name, spots)","","An estimated number of residents, workers","","","Returns (biking position, sidewalk position). Could fail …","","","","","","","","","","","","","","","","","","","","","","","Goes from building to sidewalk","The polyline goes from the building to the driving position","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Does this building contain any amenity matching the …","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","Where a text label should be centered to have the best …","","","","","Depending on options while importing, these might be …","","","","","","","","","The building’s connection for any agent can change based …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An intersection connects roads. Most have >2 roads and are …","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Strict for bikes. If there are bike lanes, not allowed to …","","","","Return all incoming roads to an intersection, sorted by …","Higher numbers get drawn on top","","","Note that a lane may belong to both incoming_lanes and …","Calls U::from(self)
.","Calls U::from(self)
.","","","","Does this intersection connect to only a single driveable …","Ignoring mode of travel, is this intersection only …","Does this intersection only connect two road segments? …","","","","","","","","","","","Was a short road adjacent to this intersection merged?","","","","","","This needs to be in clockwise orientation, or later …","","","","","","","","","","","","","Don’t call for SharedSidewalkCorners","","","","","","Two lanes/roads share both endpoints, because they both …","","A road segment is broken down into individual lanes, which …","A lane is identified by its parent road and its position, …","Two lanes/roads don’t have any common endpoints","Two lanes/roads share one endpoint","From some manually audited cases in Seattle, the length of …","","","","","","","","","","","","","","","","","","","{Cars, bikes} trying to start or end here might not be …","","","","pt2 will be endpoint","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the set of allowed turn types, based on individual …","This does the reasonable thing for the leftmost and …","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","This is cheaper to store than a MovementID. It simply …","A Movement groups all turns from one road to another, …","A movement is like a turn, but with less detail – it …","","","","","","","","","","","","","","","","","Could be a Crosswalk or UnmarkedCrossing","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","The “overall” path of movement, aka, an “average” …","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","Polyline points FROM intersection","","","","","","","","","","","","","","","","","","","","Parking lots have some fixed capacity for cars, and are …","","","","","","","","","","","","","","","Goes from the lot to the driving lane","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …","","","If we can’t render all spots (maybe a lot with no aisles …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","Lot to sidewalk","","The middle of the “T”, pointing towards the parking …","","","","","","","","","","","","","","","","A Road represents a segment between exactly two …","","","See https://wiki.openstreetmap.org/wiki/Forward_…","","","Some kind of modal filter or barrier this distance along …","","","","","","","","","","","","","The physical center of the road, including sidewalks, …","","","These are ordered from closest to center lane (left-most …","","","","","","","","","","","","","","","","self is ‘from’. (via, to). Only BanTurns.","Some kind of crossing this distance along center_pts.","","Is there a tagged crosswalk near each end of the road?","","","","","","","lane must belong to this road. Offset 0 is the centermost …","Get the DirectedRoadID pointing to the intersection. …","Get the DirectedRoadID pointing from the intersection. …","","","","","","","","","","","Includes off-side","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","This is the FIRST yellow line where the direction of the …","Creates the thick polygon representing one half of the …","","","","","","Returns all lanes located between l1 and l2, exclusive.","","","","","","","Does this directed road have any lanes of a certain type?","","","","","A simple classification of if the directed road is …","","Returns lanes from the “center” going out","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","Does either end of this road lead nowhere for cars? …","","Many roads wind up with almost no length, due to their …","","","","","","","","","","","Strict for bikes. If there are bike lanes, not allowed to …","Invariant: A road must contain at least one child. These …","","Get the only sidewalk or shoulder on this side of the …","","","","Returns the other intersection of this road, panicking if …","","","","","","","[-1.0, 1.0] theoretically, but in practice, about [-0.25, …","","","","","","","","","","","","","","","","","","","","","","Meaningless order","","","","","","","","","","","self is ‘from’","","","","","","Like center_pts, but before any trimming for intersection …","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Get the priority of a turn according to the stop sign – …","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","Only roads incoming to the intersection are listed here.","","","","","","","","","","","","","","A traffic signal consists of a sequence of Stages that …","","","","Minimum is the minimum duration, 0 allows cycle to be …","Modifies the fixed timing of all stages, applying either a …","","","","","","","","","","","","","Move crosswalks from stages, adding them to an all-walk as …","Move crosswalks from stages, adding them to an all-walk as …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","How long a full cycle of the signal lasts, assuming no …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Entry i is the path to drive to stop i. The very last …","","","","","","","","","","","","","","","","","","","","","","","These may be on different roads entirely, like for light …","A transit vehicle either vanishes at its last stop or …","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","As long as this is unique per road, this value is …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","If false, only buses serve this stop","","","","","","","Explicitly store whatever the original was, since this can…","","","","","","","","","","","","Non-empty, times in order for one day when a vehicle …","A transit vehicle spawns at the beginning of this lane. …","","","","","","","","","","","","","","","","","","","","","","","","For stop signs: Can’t currently specify this! For …","A marked zebra crossing, where pedestrians usually have …","","For stop signs: cars can do this without stopping. These …","","The corner where two sidewalks meet. Pedestrians can cross …","","A Turn leads from the end of one Lane to the start of …","Turns are uniquely identified by their (src, dst) lanes …","","","","An unmarked crossing, where pedestrians may cross without …","For stop signs: cars have to stop before doing this turn, …","","","","","","","","","","","","","","","","","","","","","","Only appropriat for pedestrian crossings. The geometry of …","If this turn is a crosswalk over a single road, return …","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","Is the turn a crosswalk or unmarked crossing?","Penalties for (lane types, lane-changing, slow lane). The …","Is this turn legal, according to turn lane tagging?","Is this turn legal, according to turn restrictions defined …","","","","","src and dst must both belong to parent. No guarantees that …","","","","","","","","","","","","","","","","","","","","","","","","","A contiguous set of roads with access restrictions. This …","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Larger number means a bigger road, according to …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Who’s asking for a path?","","","","","","","","","Tuneable parameters for all types of routing.","","","","","Don’t allow movements between these roads at all. Only …","Don’t allow crossing these roads at all. Only affects …","","","","","","","","","","","Can an agent use a lane? There are some subtle exceptions …","Can an agent use a road in either direction? There are …","","","","","","","","","","","","","","","","","","Strict for bikes. If there are bike lanes, not allowed to …","","","Returns the argument unchanged.","Returns the argument unchanged.","Not bijective, but this is the best guess of user intent","Calls U::from(self)
.","Calls U::from(self)
.","","","When crossing an arterial or highway road, multiply the …","Some helpers for working with fast_paths.","","","","","","","","","","","","","","","","","To deal with complicated intersections and short roads in …","","","","Structures related to the new road-based pathfinding …","","Pathfinding for cars, bikes, buses, and trains using …","","","Pathfinding for pedestrians, as well as figuring out if …","Heavily penalize crossing into an access-restricted zone …","","","","","","","","This operates on raw IDs and costs; no type safety. The …","","","","","","Returns (path cost, node IDs in path)","Returns (path cost, node IDs in path). Input is pairs of …","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","A bidirectional mapping between fast_paths NodeId and some …","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Call this after filling out the input graph, right before …","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","Create a slow-to-build but fast-to-use contraction …","Create a fast-to-build but slow-to-use Dijkstra-based …","Create a fast-to-build but slow-to-use Dijkstra-based …","","For callers needing to request paths with a variety of …","When pathfinding with different RoutingParams
is done, a …","","","","","","","","","","","","","","","","","","","Quickly create an invalid pathfinder, just to make borrow …","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","Create a new Pathfinder with custom routing params that …","Create a new Pathfinder with custom routing params that …","Create a new Pathfinder with custom routing params that …","","Finds a path from a start to an end for a certain type of …","Finds a path from a start to an end for a certain type of …","New pathfinders will be created as-needed using Dijkstra’…","Finds a path from a start to an end for a certain type of …","","","","","","","","","","","","","","","","","","","","This only applies to VehiclePathfinder; walking through …","","A sequence of movements through a cluster of …","Find all other traffic signals “close” to one. Ignore …","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Group lane-based uber-turns into road-based UberTurnV2s.","","","","","(legal, illegal)","","","","","","","","","","","","","","","","","","","","","","Sidewalks only!","","Original direction","","","","","","","","","","","Determines the start and end position to travel between …","Create a request from the beginning of one road to the end …","","","","","","","","","","","","","","","","","","","","","","Group similar requests together, returning the number of …","","","","Once we finish this PathStep, how much distance will be …","","","","","","","Estimate how long following the path will take in the best …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","If the agent following this path will initially block some …","","The original PathRequest used to produce this path. If the …","","","Returns the total elevation (gain, loss) experienced over …","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","The caller must pass in two valid positions for the …","The single definitive place to determine how fast somebody …","The single definitive place to determine how fast somebody …","","Trusting the caller to do this in valid ways.","","","","","","","","","","","","","","","","","","Traces along the path from its originally requested start. …","Traces along the path from a specified distance along the …","Draws the thickened path, matching entire roads. Ignores …","","","","","","","","","","","","","","The caller must pass in two valid positions for the …","","","","The caller must pass in two valid sidewalk positions. This …","","","","","Original direction","Opposite direction, sidewalks only","","","One step along a path.","A path between two endpoints for a particular mode. This …","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Vehicle implementations often just calculate the sequence …","The time needed to perform this path. This time is not a …","The original PathRequest used to produce this path.","All steps in this path.","Calls U::from(self)
.","Calls U::from(self)
.","Transform a sequence of roads representing a path into the …","","","","","","","","","","","Returns polygons covering the entire path. Ignores the path…","Draws the thickened path, matching entire roads. Ignores …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","This returns the pathfinding cost of crossing one road and …","","","","","","","false is src_i, true is dst_i","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","Attempt the pathfinding and see if we should ride public …","","","","","","","","","","","","","","","","Represents a specific point some distance along a lane.","Either a lane or a turn, where most movement happens.","","","","","","","","","","","","","","","","","","","","","","","Given a position along a lane, find the equivalent …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Return the center-line geometry of this lane or turn.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","The single definitive place to determine how fast somebody …","The single definitive place to determine how fast somebody …","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[29,49,18,43,67,36,45,0,166,0,0,0,0,0,28,31,6,138,6,6,6,63,2,0,128,2,0,0,0,0,2,63,86,86,6,63,6,6,38,38,38,38,6,0,59,77,0,0,24,25,2,166,163,166,163,0,0,6,79,6,26,0,0,2,0,0,0,0,0,77,6,6,139,26,6,2,24,28,6,6,0,24,0,0,0,0,22,26,0,163,164,0,0,0,6,4,135,79,6,2,0,0,0,0,24,0,6,0,166,0,0,0,86,128,0,128,31,0,0,22,2,0,0,0,0,0,0,0,0,0,0,0,63,0,0,6,26,6,6,0,6,124,138,124,0,6,77,77,0,4,135,79,0,0,0,0,0,0,6,2,79,2,6,2,0,2,25,25,0,0,59,79,26,22,6,24,6,59,63,0,0,0,0,0,0,163,164,0,0,0,79,0,25,6,79,139,22,138,0,69,19,27,17,51,68,6,8,8,8,8,8,8,8,8,8,8,8,8,8,134,8,9,51,21,131,8,50,89,8,85,85,85,85,19,66,85,30,60,8,51,83,136,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,89,8,8,8,8,66,85,8,159,66,66,6,19,17,17,17,14,14,27,0,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,6,23,2,26,28,29,31,99,14,19,8,0,9,11,84,27,8,83,19,64,19,19,83,30,17,17,2,21,22,23,24,25,2,26,27,28,29,30,4,31,8,27,60,62,87,89,51,68,60,85,68,75,30,61,60,19,8,0,8,8,99,14,11,9,71,6,22,23,24,25,2,26,27,28,29,4,31,6,22,23,24,25,2,26,28,29,31,8,68,30,8,30,8,8,8,8,8,21,6,22,23,23,24,25,2,26,27,28,28,29,30,4,31,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,64,2,2,6,131,73,29,8,8,8,8,8,8,8,8,8,8,22,23,24,25,2,26,28,31,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,75,71,8,8,8,8,8,22,23,24,25,2,26,28,31,130,23,23,50,51,11,60,131,68,19,72,74,75,71,73,130,70,30,11,8,30,122,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,2,75,8,2,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,6,34,8,11,51,87,60,137,60,19,69,29,51,8,71,27,85,0,0,8,99,8,27,8,8,8,8,8,8,8,8,8,8,8,162,131,136,30,99,14,11,8,8,17,11,8,137,8,8,8,89,51,75,8,21,23,29,31,8,0,41,74,27,28,51,11,19,83,71,14,14,0,30,50,68,21,50,51,19,23,11,66,64,61,51,8,6,23,2,26,28,29,31,160,0,8,8,8,8,8,8,19,123,50,123,51,11,68,99,14,99,14,116,8,8,8,84,136,41,62,126,70,8,8,122,11,72,8,71,8,8,8,8,21,22,23,24,25,2,26,27,28,29,30,4,31,8,2,71,8,126,68,51,68,75,8,8,34,71,69,19,68,61,60,19,116,74,71,9,83,84,8,71,30,2,64,2,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,6,23,28,27,83,8,66,8,19,8,0,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,30,27,19,131,73,11,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,27,27,162,83,84,29,85,8,19,99,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,66,66,27,60,116,8,19,170,171,170,172,172,173,174,175,176,177,174,176,175,177,174,176,175,177,178,179,180,181,182,181,182,183,184,185,186,187,188,189,190,191,192,192,192,193,194,0,0,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,90,90,90,94,94,94,0,0,0,0,0,93,90,94,90,94,90,94,90,94,94,90,94,90,94,94,90,94,90,94,0,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,0,90,94,0,93,195,196,197,198,199,200,198,0,0,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,58,38,38,38,38,59,0,0,0,0,0,0,0,59,59,69,17,38,17,14,59,69,58,38,17,14,59,69,58,38,17,14,17,17,14,14,14,59,69,58,38,14,59,69,58,38,14,0,14,14,17,17,38,69,69,14,14,59,69,58,38,0,0,14,59,69,58,38,17,14,59,69,58,38,14,69,14,17,14,59,69,58,38,17,14,59,69,58,38,69,14,14,14,17,0,14,14,14,0,14,14,0,0,14,69,69,14,59,69,58,38,38,14,59,58,17,14,59,69,58,38,17,14,59,69,58,38,17,14,59,69,58,38,38,14,17,14,59,69,58,38,174,175,176,177,174,176,175,177,174,176,175,177,178,179,0,0,0,0,0,102,103,104,105,106,102,103,104,105,106,102,103,104,105,106,102,104,0,0,0,0,0,0,0,0,0,0,0,0,0,102,103,104,105,106,102,103,104,105,106,103,105,106,102,102,103,104,105,106,102,103,104,105,106,104,102,103,105,106,102,102,105,106,103,102,0,102,103,104,105,106,102,103,104,105,106,102,103,104,105,106,0,102,103,104,105,106,0,98,98,98,98,100,0,0,0,0,0,100,100,99,100,101,98,99,100,101,98,99,100,101,98,99,100,101,98,99,99,100,101,98,99,99,100,101,98,99,99,100,101,98,98,99,99,99,100,101,98,99,99,99,99,99,100,101,98,99,100,101,98,99,100,101,98,99,100,101,98,101,99,100,101,98,99,99,100,101,98,100,101,201,202,203,204,202,203,201,204,202,203,201,204,205,206,0,34,34,0,0,34,34,34,34,34,34,34,34,34,0,0,34,0,0,0,34,0,0,0,34,34,0,34,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,118,118,118,118,0,0,0,118,118,118,118,118,118,118,118,118,118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,0,0,50,49,50,49,50,49,50,49,50,49,49,50,49,49,49,49,50,49,50,49,49,50,49,50,49,50,50,50,49,50,49,50,49,50,49,49,50,49,50,49,50,49,50,0,0,123,122,123,122,122,122,123,122,123,122,122,122,123,122,122,122,122,122,123,122,122,123,122,123,122,122,122,122,123,123,122,122,122,123,122,122,122,123,122,123,122,123,122,122,123,122,122,123,122,18,0,0,0,77,77,0,124,124,77,77,51,51,51,51,18,51,124,77,18,51,124,77,18,51,124,77,18,51,124,77,18,18,51,124,77,51,51,18,124,18,18,18,51,124,77,18,51,124,77,18,51,77,18,51,18,51,124,77,18,51,124,77,51,51,51,51,51,51,51,18,51,18,51,124,77,51,51,0,18,51,124,77,18,18,51,124,77,18,51,124,77,18,51,124,77,18,51,124,77,170,171,170,172,172,181,182,181,182,43,0,0,43,11,43,11,43,11,43,11,43,11,43,11,11,43,43,11,43,43,11,43,11,43,11,11,11,11,11,11,11,43,11,11,43,11,11,11,11,11,11,11,11,11,11,11,11,11,11,43,11,11,11,11,11,11,11,43,11,11,43,11,11,11,43,11,43,43,11,43,11,11,11,43,11,43,11,128,0,0,0,128,128,0,60,41,60,128,41,60,128,41,60,41,60,41,60,41,41,60,60,60,60,60,41,41,60,60,41,128,41,60,60,41,41,60,41,60,128,60,41,60,60,60,41,60,60,41,60,128,60,60,60,60,60,60,60,60,60,41,60,128,60,60,60,60,60,128,60,41,0,41,41,41,60,60,41,60,41,41,60,128,41,60,128,41,60,128,41,60,128,60,173,0,0,0,131,64,130,131,64,130,131,64,130,131,64,130,131,64,130,131,64,64,130,131,64,130,131,64,130,0,64,130,131,131,64,130,131,64,64,131,64,130,64,130,130,131,130,64,130,131,64,130,131,131,0,64,64,130,64,130,131,131,64,64,130,131,64,64,130,131,64,130,131,131,64,130,131,64,130,131,67,0,0,68,67,68,67,68,68,67,68,67,68,67,67,68,68,68,67,67,68,67,67,67,68,67,67,68,67,68,67,68,68,67,68,67,68,68,68,68,67,68,67,67,68,67,68,67,68,67,68,36,0,135,135,0,0,0,0,19,19,19,36,62,135,126,19,36,62,135,126,19,36,36,19,19,19,19,36,62,135,126,19,36,62,135,126,19,36,62,135,126,19,19,19,19,19,36,62,135,126,19,62,19,19,19,62,19,36,62,135,126,36,62,135,126,19,36,36,62,62,135,126,19,36,62,135,126,19,19,19,19,19,36,62,135,126,19,19,126,19,19,19,19,62,36,62,135,126,19,19,19,36,62,135,126,19,19,19,19,19,19,19,19,19,36,62,135,126,19,19,62,19,19,62,19,19,19,19,126,19,36,62,135,126,19,19,62,126,36,62,135,126,19,19,126,19,19,62,19,36,62,135,126,19,36,62,19,36,62,135,126,19,36,62,135,126,19,19,36,62,135,126,19,19,36,62,135,126,19,19,0,0,72,137,72,137,72,137,72,137,72,137,72,137,72,72,137,72,137,72,72,72,137,72,137,137,137,72,72,72,137,72,137,72,137,72,137,72,137,72,137,0,0,139,0,0,139,74,74,116,139,74,116,139,74,116,139,74,116,139,74,74,116,74,116,139,116,116,74,116,139,74,74,116,139,74,116,139,74,74,116,116,74,74,74,74,116,139,74,116,139,116,74,74,116,74,116,74,116,139,74,139,116,74,74,116,139,74,116,139,74,116,139,74,116,139,74,74,116,139,116,191,192,192,192,45,0,0,0,0,71,71,70,45,75,71,70,45,75,71,70,45,75,71,70,45,75,71,70,45,70,45,75,71,75,71,70,45,75,70,45,70,70,45,45,75,71,70,45,75,71,70,45,75,71,70,45,75,71,70,70,45,75,71,75,70,45,75,71,71,75,71,70,45,71,70,71,70,45,75,71,71,75,71,71,71,70,45,75,71,70,45,70,45,75,71,70,45,75,71,70,45,75,71,70,45,75,71,138,79,79,138,79,79,79,0,0,0,0,79,79,138,73,73,61,79,138,73,61,79,138,73,61,79,138,73,61,79,138,73,61,79,73,73,73,61,79,138,73,61,61,79,138,73,61,79,61,61,79,138,73,61,79,138,73,73,61,61,73,61,79,138,73,73,61,79,138,73,61,61,79,138,79,73,73,73,61,79,138,73,61,61,61,79,138,73,61,61,79,138,73,61,79,138,73,73,61,79,138,73,61,79,138,73,0,0,134,136,134,136,134,136,134,136,134,136,134,136,134,136,0,134,136,134,136,134,136,134,136,136,136,134,136,134,136,134,136,134,136,134,136,134,136,134,136,42,141,142,125,0,125,125,40,0,0,40,0,0,40,0,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,42,141,142,40,125,125,42,141,142,40,125,42,141,142,40,125,42,42,141,141,142,142,40,40,125,42,141,142,40,125,42,141,142,40,42,141,142,40,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,42,141,142,40,125,42,141,142,40,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,207,208,209,63,63,63,0,0,0,0,0,0,0,0,0,0,63,0,63,0,63,85,85,85,85,85,63,63,63,63,85,63,85,85,63,63,63,85,63,85,63,85,63,63,85,85,0,63,63,63,63,85,63,63,63,85,63,85,63,63,85,63,85,85,0,63,63,0,0,63,63,85,63,63,85,63,85,63,85,63,85,0,85,0,0,0,0,0,63,85,0,0,148,147,148,0,148,147,147,0,147,148,147,148,147,147,147,147,147,148,147,148,147,148,147,147,148,147,147,147,147,148,147,148,147,148,147,148,147,210,211,212,212,0,0,155,156,155,156,155,155,156,0,155,156,155,155,155,155,156,155,156,155,156,155,155,155,155,155,155,156,155,156,155,156,155,156,86,86,86,0,0,0,66,66,66,159,66,86,159,66,86,66,159,66,66,66,86,66,86,66,66,86,66,159,66,86,159,66,86,159,66,86,159,66,66,66,66,66,66,66,159,66,66,66,66,86,66,159,66,86,159,66,86,159,66,86,159,66,86,66,66,0,0,0,162,162,160,161,162,160,161,160,161,160,161,161,160,161,160,161,160,161,161,160,161,162,0,160,161,162,160,161,160,162,160,161,162,162,160,161,162,162,161,160,161,160,161,160,161,0,162,160,161,162,160,161,162,160,161,162,162,160,161,163,163,163,0,0,0,163,83,83,9,163,163,163,9,9,83,163,83,9,163,83,9,163,83,9,163,83,9,163,9,83,83,83,83,83,83,9,163,83,9,83,9,163,83,9,163,9,83,163,163,83,9,9,163,83,9,83,163,83,83,83,83,163,163,83,9,83,83,83,163,83,9,83,83,9,163,163,83,83,83,83,83,163,83,163,83,9,83,9,83,163,83,9,9,83,83,83,83,83,163,83,9,163,83,9,163,83,9,83,0,0,0,9,163,83,9,9,183,184,185,186,166,166,166,166,0,0,166,84,166,84,166,84,166,84,84,84,166,84,0,166,84,166,84,84,84,84,84,166,84,84,84,166,84,84,84,166,84,84,166,84,84,84,166,84,166,84,166,84,84,166,84,187,188,189,190,0,168,168,0,167,167,167,168,167,168,167,168,167,168,168,167,167,168,167,167,168,168,168,167,168,168,168,167,168,167,168,0,167,167,167,168,167,167,168,167,168,167,168,167,168,167,168,167,0,167,168,213,214,94,94,94,0,0,169,169,169,169,169,169,169,169,169,169,169,169,0,169,169,0,169,169,169,169,0,169,169,169,169,169,0,198,199,200,198,164,0,0,0,0,164,164,164,0,87,164,87,164,87,87,164,87,164,87,164,87,164,87,87,87,87,164,87,87,87,164,87,87,164,164,87,164,164,164,164,164,87,164,87,164,87,87,164,164,164,164,87,87,87,164,87,87,87,164,87,87,164,87,164,87,164,87,164,87,164,87,164,0,193,194],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,2,3,4],5],0,0,0,[[],[[1,[6,7]]]],[8,1],[8,1],[[8,9],10],[8,[[1,[11]]]],[8,1],[8,12],[8,[[1,[11]]]],[8,1],[8,1],[8,1],[8,13],[8,12],[8,1],0,[[],8],0,0,0,0,[[8,14,15,16],17],0,0,0,0,0,0,0,0,0,0,0,0,[[],8],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[8,18],19],0,0,0,0,0,0,0,[3,[[10,[6]]]],0,0,0,0,0,0,[[20,3,3,3,3,15]],0,[8],[21,21],[6,6],[22,22],[23,23],[24,24],[25,25],[2,2],[26,26],[27,27],[28,28],[29,29],[30,30],[4,4],[31,31],[8,8],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[6,6],32],[[23,23],32],[[2,2],32],[[26,26],32],[[28,28],32],[[29,29],32],[[31,31],32],0,0,0,0,0,0,0,0,[[3,3],[[1,[27,7]]]],[[33,34,16],8],0,0,0,0,0,0,[[],30],0,0,[2,3],[[],[[35,[21]]]],[[],[[35,[22]]]],[[],[[35,[23]]]],[[],[[35,[24]]]],[[],[[35,[25]]]],[[],[[35,[2]]]],[[],[[35,[26]]]],[[],[[35,[27]]]],[[],[[35,[28]]]],[[],[[35,[29]]]],[[],[[35,[30]]]],[[],[[35,[4]]]],[[],[[35,[31]]]],[[],[[35,[8]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[8,36,37],38],0,0,0,0,0,0,0,0,[[6,6],15],[[22,22],15],[[23,23],15],[[24,24],15],[[25,25],15],[[2,2],15],[[26,26],15],[[27,27],15],[[28,28],15],[[29,29],15],[[4,4],15],[[31,31],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[8,39],0,0,[[8,40],[[10,[18]]]],0,[[8,18],41],[[8,42],[[44,[43]]]],[[8,23],[[44,[36]]]],[[8,43,43],[[10,[36]]]],[[8,3],[[10,[45]]]],[[21,46],[[35,[47]]]],[[6,46],[[35,[47]]]],[[22,46],[[35,[47]]]],[[23,46],[[35,[47]]]],[[23,46],[[35,[47]]]],[[24,46],[[35,[47]]]],[[25,46],[[35,[47]]]],[[2,46],[[35,[47]]]],[[26,46],[[35,[47]]]],[[27,46],[[35,[47]]]],[[28,46],[[35,[47]]]],[[28,46],[[35,[47]]]],[[29,46],[[35,[47]]]],[[30,46],[[35,[47]]]],[[4,46],[[35,[47]]]],[[31,46],[[35,[47]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[48,2],[3,[[10,[2]]]],[3,[[35,[6]]]],0,0,[[29,[10,[20]]],20],[[8,49],50],[[8,18],51],[8,52],[8,53],[[8,36],54],[8,55],[8,30],[8,14],[8,5],[8,56],[[],57],[[],57],[[],57],[[],57],[[],57],[[],57],[[],57],[[],57],[[8,43],11],[[8,43],58],[[8,43],59],[[8,41],60],[8,[[54,[20]]]],[[8,61],10],[[8,62,63],[[1,[64]]]],[8,65],[[8,36],[[54,[36]]]],[[8,41],1],[[8,41,63],1],[[8,41],19],[8,66],[[8,67],68],[[8,36],19],[[8,36],69],[[8,70],[[1,[71]]]],[[8,43],72],[[8,61],73],[[8,45],71],[[8,43],74],[[8,3],[[10,[71]]]],[[8,70],75],[[8,41,41,43],[[10,[73]]]],[[8,41,63],[[1,[73]]]],[[8,41],[[1,[73]]]],[[8,41],[[1,[73]]]],0,0,0,[[8,22,52,76]],[[8,18,77]],[[8,5]],[[8,18,5]],[[8,45,[1,[78]]]],[22],[23],[24],[25],[2],[26],[28],[31],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[8,74]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[2,15],0,[[8,36,36,79],15],[2,15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],80],0,[8],0,0,0,0,0,0,0,0,[29,[[1,[20,7]]]],0,[[20,16],8],0,0,0,0,0,[[8,16]],0,[8,81],[[1,[10,[26]],4]],[[8,49],[[10,[50]]]],[[8,18],[[10,[51]]]],[[8,43],[[10,[11]]]],[[8,41],[[10,[60]]]],[[8,67],[[10,[68]]]],[[8,36],[[10,[19]]]],[[8,43],[[10,[72]]]],[[8,61],[[10,[73]]]],[[8,45],[[10,[71]]]],[[8,43],[[10,[74]]]],[[8,70],[[10,[75]]]],0,0,0,0,0,0,0,[[8,16]],[[8,16]],0,0,[[8,14,16],17],0,[[8,41],60],[[8,36],19],[[8,61],73],0,0,0,0,0,[82,23],[76,[[10,[29]]]],[3,[[10,[31]]]],[8,14],0,0,0,[[],[[10,[28]]]],[28,28],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[6,6],[[10,[32]]]],[[23,23],[[10,[32]]]],[[2,2],[[10,[32]]]],[[26,26],[[10,[32]]]],[[28,28],[[10,[32]]]],[[29,29],[[10,[32]]]],[[31,31],[[10,[32]]]],0,0,[[8,9],[[44,[83]]]],[[8,9],[[44,[84]]]],[[8,9,85,86],[[44,[84]]]],[[8,9,85,86],[[44,[83]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[8,16]],[[8,16]],[8],0,0,0,0,0,0,[[8,36],54],0,0,0,0,0,0,[8,85],0,[8],[8],[21,35],[22,35],[23,35],[24,35],[25,35],[2,35],[26,35],[27,35],[28,35],[29,35],[30,35],[4,35],[31,35],[8,35],[2,3],0,[[8,87,87],10],0,0,0,0,0,[[8,43,43],10],[[8,43,43,63],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[2,15],0,[2,48],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],20],[[],20],[[],20],[[1,4]],0,0,0,0,0,0,0,[[8,14,16]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,0,0,0,0,0,[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[2,81],[[2,3],[[1,[7]]]],0,0,0,[[],29],0,[8,15],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],0,[[],[[35,[89]]]],0,[[]],[8,89],[[55,16],89],[[]],[[],15],0,[89,35],[[],35],[[],35],[[],88],[[]],0,0,0,0,0,0,0,0,0,[[8,[1,[90]],91,63],[[92,[18,91]]]],[[8,[1,[90]],91,93],[[92,[18,91]]]],0,[[]],[[]],[[]],[[]],[90,90],[94,94],[[]],[[]],[[87,8],94],[[90,90],32],[[94,94],32],[[],[[35,[90]]]],[[],[[35,[94]]]],[[87,8],94],[[90,90],15],[[94,94],15],[[],15],[[],15],[[8,63]],[[90,46],95],[[94,46],95],[[]],[[]],[[],57],[[],57],[90],[94],[[]],[[]],[[],15],[[],15],[[90,90],[[10,[32]]]],[[94,94],[[10,[32]]]],[90,35],[94,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[62,64,63,85,8],[[10,[91]]]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[8,[1,[90]],91,93],[[92,[18,91]]]],0,[[]],[[]],[93,93],[[]],[[],1],[[],93],[[],96],[[]],[[]],[[],15],[[]],[[],35],[[],35],[[],88],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[38,17,8]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[14,8]],0,0,0,0,[14,14],[59,59],[69,69],[58,58],[38,38],[[]],[[]],[[]],[[]],[[]],0,0,[[14,8]],[[],14],0,0,[[38,8]],[[],[[35,[69]]]],[[69,69],[[1,[20]]]],0,[[14,14],15],[[59,59],15],[[69,69],15],[[58,58],15],[[38,38],15],[[8,[1,[18]],17]],[[8,[1,[67]]]],[[14,46],95],[[59,46],95],[[69,46],95],[[58,46],95],[[38,46],95],[[]],[[]],[[]],[[]],[[]],[[]],[[14,8],20],[[19,30],69],[14,3],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],0,[[8,[1,[97]]],[[44,[14]]]],[[8,20,16],[[44,[14]]]],0,0,[[8,36,[1,[27]],17]],[[],14],0,0,0,0,0,[[8,36,81,43],[[1,[36]]]],[[43,8,17]],[[14,8]],[69,35],0,[[]],[[]],[[]],[[]],[[]],[[38,8],98],[[14,8],99],[[59,8],100],[[58,8],101],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[38,38],[[14,8]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[35,[102]]]],[[],[[35,[103]]]],[[],[[35,[104]]]],[[],[[35,[105]]]],[[],[[35,[106]]]],0,0,[107],[107],[107],[107],[[107,8],44],[107],[107],[107],[[107,8],44],[107],[107],[107],[107],[[102,46],95],[[103,46],95],[[104,46],95],[[105,46],95],[[106,46],95],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],15],0,[[102,8],44],0,0,0,0,0,0,0,0,0,[107],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[],88],[[107,8],[[44,[99]]]],[[]],[[]],[[]],[[]],[[]],[107],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[99,99],[100,100],[101,101],[98,98],[[]],[[]],[[]],[[]],0,[[],[[35,[99]]]],[[],[[35,[100]]]],[[],[[35,[101]]]],[[],[[35,[98]]]],0,[[]],[[]],[[]],[[]],[99,3],[[]],[[]],[[]],[[]],[[98,8],[[44,[38]]]],[[99,8],[[44,[14]]]],[[99,8],14],[[],15],[[],15],[[],15],[[],15],0,0,0,0,[99,35],[100,35],[101,35],[98,35],[[]],[[]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[],88],0,[[]],[[]],[[]],[[]],[[100,43,8],[[44,[59]]]],[[101,43,8],[[44,[58]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],0,0,[[],108],[34,34],[[]],[[],34],[[]],[109,34],[[]],[[],15],0,[[8,[111,[110]],37,81,81,16],[[92,[110,87]]]],0,0,0,[112,[[1,[81]]]],[112,1],[[]],0,0,[[52,113],113],[[],35],[[],35],0,[[],88],[[]],0,[[1,53,16]],[[76,114,114,115],77],[[76,41,8],20],[[13,8,15,16],[[1,[51]]]],[52,1],[[52,113],15],[[8,16],[[1,[68]]]],[[110,52,92,8],44],0,0,[11,74],[[8,11],[[10,[74]]]],[[74,11]],[[8,11],[[10,[74]]]],[[8,11],[[10,[74]]]],[[8,43],1],[11,74],[11,[[10,[74]]]],0,[[74,30,11,[1,[1]]]],[43,74],[[8,11],74],[8],[[8,11],[[10,[74]]]],[[74,116]],[[11,8],[[10,[74]]]],[[116,11],10],[[74,11]],[74],[[11,8],[[10,[74]]]],[[8,11],[[10,[74]]]],[[74,11],[[10,[74]]]],[11],[36,[[1,[64]]]],[11,[[10,[74]]]],[[74,11],[[10,[74]]]],[[64,64],116],[[36,36,1],[[10,[64]]]],[[]],[[11,8],[[10,[74]]]],0,[[]],[[]],0,0,[[117,8,92,118],44],[[119,92,92,8],44],[[8,33,16]],[[]],[[]],[[],15],[8,118],0,0,[[],35],[[],35],[[],88],[[]],[[60,60,11],[[44,[112]]]],[[[1,[73]]],[[1,[73]]]],[[11,8],[[10,[[92,[79]]]]]],[[8,11],[[1,[73]]]],[[11,8],[[1,[73]]]],[[8,[1,[73]],79],[[1,[73]]]],[[120,120],79],[[11,8],44],[[121,121],112],[[[1,[73]],8,11],[[1,[73]]]],[[11,60,60],112],[[11,60,60],112],[[8,11],[[1,[73]]]],[[43,41,41],61],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[49,49],[50,50],[[]],[[]],[[49,49],32],[[],[[35,[49]]]],[[],[[35,[50]]]],[[49,49],15],[[],15],[[49,46],95],[[49,46],95],[[50,46],95],[[]],[[]],[[],57],[49],0,[[]],[[]],[[],15],[[],15],0,0,[[49,49],[[10,[32]]]],0,[49,35],[50,35],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[5,[[10,[[1,[5]]]]]],[[122,8],44],[123,123],[122,122],[[]],[[]],[122],[[122,122],15],[[],[[35,[123]]]],[[],[[35,[122]]]],[8,[[1,[122]]]],[8,[[111,[36]]]],[122,122],[[122,46],95],[[]],[[]],0,[[]],[[]],[[],15],[[],15],[[8,[1,[122]],15,15],[[1,[122]]]],[[8,[1,[122]]],[[1,[122]]]],[[[1,[122]],37],[[1,[[1,[122]]]]]],0,0,[122],[[122,8,122],15],0,[123,35],[122,35],[[8,41,111],[[44,[122]]]],[[122,8],[[44,[123]]]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[122,8,122,15,15],15],[[],88],[[],88],[122],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[51,8],10],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[18,18],[51,51],[124,124],[77,77],[[]],[[]],[[]],[[]],[[18,18],32],[[],[[35,[18]]]],[[],[[35,[51]]]],[[],[[35,[124]]]],[[],[[35,[77]]]],0,[[51,8],10],[[18,18],15],[[124,124],15],[[],15],[[18,46],95],[[18,46],95],[[51,46],95],[[124,46],95],[[77,46],95],[[]],[[]],[[]],[[]],[[],57],[[51,6],15],[77,15],[18],0,[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],0,0,0,[51,5],0,0,0,[[18,18],[[10,[32]]]],0,[18,35],[51,35],[124,35],[77,35],[51,41],0,[[87,8],10],[[]],[[]],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[43,43],[11,11],[[]],[[]],[[43,43],32],0,[[],[[35,[43]]]],[[],[[35,[11]]]],0,[[43,43],15],[[],15],[[11,43,8],[[10,[19]]]],[[43,46],95],[[43,46],95],[[11,46],95],[[]],[[]],[[],57],[[11,8,63],[[1,[41]]]],[[11,8,63],[[1,[41]]]],[[11,8],125],[[11,8],[[1,[126]]]],[[11,8],[[1,[36]]]],[[11,8],[[1,[36]]]],[[11,8],127],[43],0,0,[[]],[[]],[11,15],[11,15],[[11,8],15],[[11,8],15],[11,15],[11,15],[[11,8],15],[11,15],[[11,8],15],[11,15],[[11,8],15],[11,15],[11,15],[[],15],[[],15],0,0,0,[[11,[10,[20]],8],20],0,0,[[43,43],[[10,[32]]]],0,0,[43,35],[11,35],[[11,8],[[10,[62]]]],[[11,8],[[10,[62]]]],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[11,61]],0,[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[60,60],[[]],[[]],[[41,41],32],[[60,60],128],[129,41],[[],[[35,[41]]]],[[],[[35,[60]]]],0,[[60,121],[[10,[81]]]],0,0,[[],41],[41,129],[[60,43],113],[[60,43],121],[[41,41],15],[[128,128],15],[[],15],[60,113],[60,121],[[41,46],95],[[41,46],95],[[60,46],95],[[]],[[]],[[]],[60,62],[[],57],[[60,19,15],[[10,[[54,[79]]]]]],[[60,8],126],[60,52],[41],0,[60,[[1,[43]]]],[[]],[[]],[[]],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[[],15],[[],15],[[],15],0,0,[60,113],[60,121],[60,81],[[],128],[[60,30],5],0,[3,[[1,[79]]]],[[41,41],[[10,[32]]]],0,[41,35],[60,35],0,[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[64,64],[130,130],[131,131],[[]],[[]],[[]],[[64,64],32],[[130,130],32],[[131,131],15],0,[[],[[35,[64]]]],[[],[[35,[130]]]],[[],[[35,[131]]]],[[64,64],15],[[130,130],15],[[131,131],15],[[],15],[[],15],[[132,8],[[44,[62]]]],[[64,46],95],[[130,46],95],[[131,46],95],[[43,8],[[13,[64,131]]]],[[]],[[]],[[]],0,[[133,8],[[44,[64]]]],0,[[],57],[[],57],[64],[130],0,0,0,[[]],[[]],[[]],[[],15],[[],15],[[],15],0,[[[1,[112]],62,62],[[44,[112]]]],0,[[64,64],[[10,[32]]]],[[130,130],[[10,[32]]]],[64,35],[130,35],[131,35],[[131,8]],0,[[]],[[]],[[]],[[64,8],133],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[68,5],[67,67],[68,68],[[]],[[]],[[67,67],32],[[],[[35,[67]]]],[[],[[35,[68]]]],0,0,[[67,67],15],[[],15],0,[[67,46],95],[[67,46],95],[[]],[[]],[[],57],[67],0,[[]],[[]],[[],15],[[],15],0,[[67,67],[[10,[32]]]],0,[67,35],[68,35],0,0,0,[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,0,0,0,[19,134],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[36,[[1,[62]]]],[36],0,[[19,28],1],[19,1],[19,1],[36,36],[62,62],[135,135],[126,126],[19,19],[[]],[[]],[[]],[[]],[[]],[[36,36],32],[[62,62],32],[[135,135],32],[[126,126],32],[[19,19],128],0,0,0,0,[[],[[35,[36]]]],[[],[[35,[62]]]],[[],[[35,[135]]]],[[],[[35,[126]]]],[[],[[35,[19]]]],0,[[19,41]],[[19,43],62],[[19,43],62],[[62,8],43],0,[[36,36],15],[[62,62],15],[[135,135],15],[[126,126],15],[[],15],[[],15],[[],15],[[],15],[[19,41,37],[[10,[41]]]],[[36,46],95],[[36,46],95],[[62,46],95],[[62,46],95],[[135,46],95],[[126,46],95],[[19,46],95],[[]],[[]],[[]],[[]],[[]],[19,5],[[19,8],112],[[19,28,8],[[44,[52]]]],[19,81],[[],57],[[],57],[[],57],[[],57],[[19,41,41],[[1,[41]]]],[[19,[10,[20]]],20],[[126,8],60],[19,125],[19,52],[19,81],[[19,8],[[10,[136]]]],[[62,2,8],15],[36],[62],[135],[126],[[19,8,28],15],0,[[19,43],1],[[]],[[]],[[]],[[]],[[]],[19,15],[[19,8],15],[19,15],[19,15],[19,15],[19,15],[19,15],[19,15],[[],15],[[],15],[[],15],[[],15],[[],15],[19,[[1,[27]]]],[[62,63,8],[[1,[41]]]],0,[19,81],[[62,8],41],[19,[[10,[28]]]],0,0,[[19,43],43],[126,126],[[19,41],[[10,[41]]]],[[36,36],[[10,[32]]]],[[62,62],[[10,[32]]]],[[135,135],[[10,[32]]]],[[126,126],[[10,[32]]]],0,[[19,[1,[27]]]],0,0,[36,35],[62,35],[135,35],[126,35],[19,35],[[19,81],[[44,[112]]]],0,0,[19,96],[[62,8],43],0,[[]],[[]],[[]],[[]],[[]],[[],20],[[],20],0,[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[],88],[[],88],0,[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[72,72],[137,137],[[]],[[]],[[],[[35,[72]]]],[[],[[35,[137]]]],[[72,72],15],[[137,137],15],[[72,36]],[[72,46],95],[[137,46],95],[[]],[[]],[[72,61,8],138],0,[[]],[[]],[[],15],[[],15],0,0,[[8,43],72],0,[72,35],[137,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,[[74,91,91,8],44],[[]],[[]],[[]],[[]],[[]],[[]],[74,74],[116,116],[139,139],[[]],[[]],[[]],[[74,11],15],[[74,11],15],[[116,64,11],15],[[],[[35,[74]]]],[[],[[35,[116]]]],[[],[[35,[139]]]],[[116,131,138]],[[116,131]],[[74,74],15],[[116,116],15],[[139,139],15],[[74,8],140],[[74,46],95],[[116,46],95],[[139,46],95],[[]],[[]],[[]],[[74,5,11],91],[[8,43],1],[[116,64],138],[[116,61,11],138],0,[[140,43,8],[[44,[74]]]],[[74,15,11],15],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[116,11],[[10,[91]]]],[[74,11],[[54,[64]]]],[[8,43],74],[[],116],0,0,[74,35],[116,35],[139,35],[74,91],[139,91],0,0,[[]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[74,11],44],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[71,8],[[1,[9]]]],[[71,8],[[44,[[1,[83]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[70,70],[45,45],[75,75],[71,71],[[]],[[]],[[]],[[]],[[70,70],32],[[45,45],32],[[],[[35,[70]]]],[[],[[35,[45]]]],[[],[[35,[75]]]],[[],[[35,[71]]]],0,0,[[70,70],15],[[45,45],15],[[75,75],15],[[],15],[[],15],[[70,46],95],[[70,46],95],[[45,46],95],[[45,46],95],[[75,46],95],[[71,46],95],[[]],[[]],[[]],[[]],[[],57],[[],57],0,0,[70],[45],0,0,0,[[]],[[]],[[]],[[]],0,[[],15],[[],15],[[],15],[[],15],0,0,0,[[70,70],[[10,[32]]]],[[45,45],[[10,[32]]]],[71,3],0,0,[70,35],[45,35],[75,35],[71,35],0,0,0,0,0,[[]],[[]],[[]],[[]],[[],20],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[73,120],[73,15],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[61,61],[79,79],[138,138],[73,73],[[]],[[]],[[]],[[]],[[61,61],32],[[79,79],32],[[73,73],15],[73,[[10,[113]]]],[[73,8],[[10,[62]]]],[[],[[35,[61]]]],[[],[[35,[79]]]],[[],[[35,[138]]]],[[],[[35,[73]]]],0,[[61,61],15],[[79,79],15],[[138,138],15],[[73,73],15],[[],15],[[],15],[[61,46],95],[[61,46],95],[[79,46],95],[[138,46],95],[[73,46],95],[[]],[[]],[[]],[[]],0,[[],57],[61],0,[[]],[[]],[[]],[[]],[[73,8],15],[[],15],[[],15],[[],15],[[],15],0,[[61,61],[[10,[32]]]],[[79,79],[[10,[32]]]],[[138,138],[[10,[32]]]],[79,15],[[73,63,8]],[[73,8],15],[[73,11,8],15],[61,35],[79,35],[138,35],[73,35],0,[[61,8],64],[[]],[[]],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[134,134],[136,136],[[]],[[]],[[],[[35,[134]]]],[[],[[35,[136]]]],[[134,134],15],[[136,136],15],[[8,36],136],[[134,46],95],[[136,46],95],[[]],[[]],[[]],[[]],[[],15],[[],15],[8,[[1,[136]]]],0,[[],134],0,[134,35],[136,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[125,125],[42,42],[141,141],[142,142],[40,40],[[]],[[]],[[]],[[]],[[]],[[125,125],32],[[42,42],32],[[141,141],32],[[142,142],32],[[40,40],32],[[],[[35,[42]]]],[[],[[35,[141]]]],[[],[[35,[142]]]],[[],[[35,[40]]]],[3,5],[[125,125],15],[[42,42],15],[[141,141],15],[[142,142],15],[[40,40],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[125,46],[[35,[47]]]],[[42,46],[[35,[47]]]],[[42,46],[[35,[47]]]],[[141,46],[[35,[47]]]],[[141,46],[[35,[47]]]],[[142,46],[[35,[47]]]],[[142,46],[[35,[47]]]],[[40,46],[[35,[47]]]],[[40,46],[[35,[47]]]],[[]],[[]],[[]],[[]],[[]],[3,125],[[],57],[[],57],[[],57],[[],57],[42],[141],[142],[40],[40,82],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],15],[[125,125],[[10,[32]]]],[[42,42],[[10,[32]]]],[[141,141],[[10,[32]]]],[[142,142],[[10,[32]]]],[[40,40],[[10,[32]]]],[42,35],[141,35],[142,35],[40,35],[[]],[[]],[[]],[[]],[[]],[[],20],[[],20],[[],20],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],[[1,[63]]]],0,0,0,0,0,[[63,[144,[[143,[63]]]]]],[[63,[144,[[143,[63]]]]]],[[63,[144,[[143,[63]]]]]],[[]],[[]],[[]],[[]],0,[[63,60,8],15],[[63,19,8],15],[63,63],[85,85],[[]],[[]],[[63,63],32],[[],85],[145,[[35,[[143,[63]]]]]],[[],[[35,[63]]]],[[],[[35,[85]]]],0,0,[129,63],[63,129],[[63,63],15],[[63,143],15],[[85,85],15],[[],15],[[63,[1,[41]],8],[[1,[41]]]],[[63,46],95],[[85,46],95],[[]],[[]],[2,63],[[]],[[]],[[],15],[[],15],0,0,[63],[[63,63],[[10,[32]]]],0,[91,5],[63,35],[[[143,[63]],146],35],[85,35],[[63,[144,[[143,[63]]]]]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],0,0,[5,91],0,0,0,0,[[]],[[]],0,[[64,63,8],91],0,0,0,0,0,0,0,0,[[147,5],[[92,[5,5]]]],[[]],[[]],[[]],[[]],[[147,5,5],10],[[147,1,1],10],[147,147],[[]],[[148,149],147],[[],[[35,[147]]]],[[]],[[]],[[]],[[]],[147,15],[[],15],[[],15],[147,148],[147,35],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[[155,[[0,[150,151,152,153,154]]]]],[[155,[[0,[150,151,152,153,154]]]]]],[[]],[[],[[35,[[156,[[0,[151,152,153]]]]]]]],[145,[[35,[[155,[[0,[157,151,152,153,154]]]]]]]],[[]],[[]],[[[155,[[0,[151,152,153,154]]]],[0,[151,152,153,154]]],158],[[[155,[[0,[151,152,153,154]]]],[0,[151,152,153,154]]],158],[[[155,[[0,[151,152,153,154]]]],149]],0,0,[[]],[[]],[[],15],[[],15],[[],[[155,[[0,[151,152,153,154]]]]]],0,[[[155,[[0,[151,152,153,154]]]]],35],[[]],[[[155,[[0,[151,152,153,154]]]],5],[[0,[151,152,153,154]]]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,[[66,9,8],10],[[66,8,16]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[66,66],[86,86],[[]],[[]],[[],[[35,[66]]]],[[],66],[[86,86],15],[[66,8,148]],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],159],[[8,85,148,16],66],[[8,85,[1,[63]],16],66],[[8,85,[1,[63]],16],66],[[8,85,148,[1,[63]],16],66],0,[[66,9,8],[[10,[84]]]],[[66,9,8],[[10,[84]]]],[[159,8,9,85],[[10,[84]]]],[[66,9,85,86,8],[[10,[84]]]],[66,35],[[66,8,87,87],10],[[]],[[]],0,[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[]],[[]],[[]],0,0,0,0,0,[[43,8],[[10,[[54,[43]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[160,160],[161,161],[[]],[[]],[[161,161],32],[[],[[35,[160]]]],[[],[[35,[161]]]],[160,41],[161,62],[[160,160],15],[[161,161],15],[[],15],[160,41],[161,62],[8,[[1,[162]]]],[[61,8,54],[[1,[160]]]],[[160,46],95],[[161,46],95],[[]],[[]],[[]],[[160,8],112],[[]],[[]],[[]],[[162,8],[[1,[161]]]],[[],15],[[],15],[[],15],0,[[[54,[43]],8]],[[161,161],[[10,[32]]]],0,0,[160,35],[161,35],[[]],[[]],[[61,13],[[1,[61]]]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],0,[[]],[[]],[[]],0,0,0,0,0,0,0,[83,[[10,[160]]]],[[83,163,8]],0,[163,41],[163,164],[163,61],[[8,18,18,63],[[10,[9]]]],[[8,62,62,63],[[10,[9]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[163,163],[83,83],[9,9],[[]],[[]],[[]],[[163,163],32],0,[83,81],0,[[83,36],15],[83,163],[83,10],0,[[8,[1,[9]]],1],[[],[[35,[163]]]],[[],[[35,[83]]]],[[],[[35,[9]]]],[[83,8,163],81],0,[[163,163],15],[[83,83],15],[[9,9],15],[[],15],[[],15],[[83,8,[10,[96]]],91],[[163,8,81,[10,[81]]],[[44,[112]]]],[[163,46],95],[[83,46],95],[[9,46],95],[[9,46],95],[[]],[[]],[[]],[83,[[1,[41]]]],[[],57],[83,9],[[83,8,81],[[44,[163]]]],[83,165],[[83,8]],[163],[[]],[[]],[[]],[83,15],[83,15],[[83,61],15],[[],15],[[],15],[[],15],[83,15],[83,163],[[87,87,63,8],9],[[163,[10,[96]],63,8],96],[[163,[10,[96]],63,8]],[83,[[10,[163]]]],[[83,5,163,8]],[[8,[1,[163]],9,[1,[160]],[1,[41]]],83],[83,163],0,[[163,163],[[10,[32]]]],[83,114],[163,35],[83,35],[9,35],[[83,8],163],0,0,[[]],[[]],[[]],[[],20],[83,81],0,[[83,8],[[10,[112]]]],[[83,8,81],[[10,[112]]]],[[83,8],[[44,[52]]]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],0,[8],[8],[[8,9]],[[87,87,63],9],[[]],[[]],[[]],[[87,87],9],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[166,166],[84,84],[[]],[[]],0,[[84,36],15],[[],[[35,[166]]]],[[],[[35,[84]]]],[[8,[1,[161]]],[[1,[160]]]],[[166,46],95],[[84,46],95],[[]],[[]],[[[1,[62]],9,91,[1,[161]],8],84],[84,91],[84,9],[84,1],[[]],[[]],[[84,8],[[44,[83]]]],[[84,8],[[44,[83]]]],[[],15],[[],15],[[[1,[166]],9,91,[1,[161]]],84],0,[166,35],[84,35],0,[[]],[[]],[[84,8],[[1,[52]]]],[[84,8],[[44,[52]]]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],0,[[]],[[]],0,0,0,0,0,0,0,0,[[167,87,8],[[92,[62,91]]]],[[167,8]],[[]],[[]],[[]],[[]],[167,167],[168,168],[[]],[[]],[[168,168],32],0,[[],[[35,[167]]]],[[],[[35,[168]]]],[[],167],0,[[168,168],15],[[],15],[[168,46],95],[[]],[[]],[[],57],[168],[[]],[[]],[[],15],[[],15],[[63,155,85,8],149],[[8,63,85,148],167],0,0,[[168,168],[[10,[32]]]],[[167,9,8],[[10,[84]]]],[167,35],[168,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],0,[[62,64,63,85,8],[[10,[91]]]],[[]],[[]],0,0,0,0,0,0,0,[[169,87,8],[[92,[62,91]]]],[[169,8,10]],[[]],[[]],[169,169],[[]],[[],[[35,[169]]]],[[],169],0,[[]],[[]],[[],15],[[155,10,8],149],[[8,10,148],169],0,[[9,8],84],[[169,9,8],[[10,[84]]]],[169,35],[[169,8,87,87],10],[[]],[[149,155,8,167,167]],[[],35],[[],35],[[],88],0,[[]],[[[1,[94]],8],[[1,[166]]]],0,0,0,0,0,0,0,0,0,0,[164,41],[164,61],[[96,114],96],[[]],[[]],[[]],[[]],[[87,81,8],[[10,[87]]]],[87,87],[164,164],[[]],[[]],[[87,87],32],[[164,164],32],[[],[[35,[87]]]],[[],[[35,[164]]]],[87,81],0,[[41,8],87],[[87,87],15],[[164,164],15],[[87,41,8],87],[[87,41,81,8],87],[[],15],[[],15],[[87,46],95],[[87,46],95],[[164,46],95],[[164,46],95],[[]],[[]],[[],57],[[164,8],112],[[164,8],127],[164],[[]],[[]],[[],15],[[],15],[87,41],0,[[64,[10,[96]],63,8],96],[[62,[10,[96]],63,8]],[164,[[10,[41]]]],[164,[[10,[61]]]],[[87,81,8],[[10,[87]]]],[[41,81],87],[[87,87],[[10,[32]]]],[[164,164],[[10,[32]]]],[[87,8],121],[[87,8]],[87,35],[164,35],[41,87],[[]],[[]],[[],20],[[],20],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],[[96,114],96],0,0],"p":[[3,"Vec"],[4,"LaneType"],[15,"str"],[4,"DrivingSide"],[15,"usize"],[4,"AmenityType"],[3,"Global"],[3,"Map"],[3,"PathRequest"],[4,"Option"],[3,"Intersection"],[8,"Iterator"],[3,"BTreeMap"],[3,"MapEdits"],[15,"bool"],[3,"Timer"],[3,"EditEffects"],[3,"BuildingID"],[3,"Road"],[3,"String"],[3,"Amenity"],[4,"AreaType"],[3,"OriginalRoad"],[4,"IntersectionKind"],[4,"IntersectionControl"],[4,"BufferType"],[3,"LaneSpec"],[4,"Direction"],[3,"NamePerLanguage"],[3,"MapConfig"],[4,"RestrictionType"],[4,"Ordering"],[3,"RawMap"],[3,"RawToMapOptions"],[4,"Result"],[3,"RoadID"],[8,"Fn"],[4,"EditCmd"],[4,"GeoJson"],[4,"OsmID"],[3,"LaneID"],[3,"NodeID"],[3,"IntersectionID"],[6,"Result"],[3,"TransitRouteID"],[3,"Formatter"],[3,"Error"],[15,"char"],[3,"AreaID"],[3,"Area"],[3,"Building"],[3,"Polygon"],[3,"Bounds"],[3,"BTreeSet"],[3,"CityName"],[3,"GPSBounds"],[15,"u64"],[3,"EditCrosswalks"],[4,"EditIntersection"],[3,"Lane"],[3,"TurnID"],[3,"DirectedRoadID"],[4,"PathConstraints"],[3,"MovementID"],[3,"MapName"],[3,"Pathfinder"],[3,"ParkingLotID"],[3,"ParkingLot"],[3,"EditRoad"],[3,"TransitStopID"],[3,"TransitRoute"],[3,"ControlStopSign"],[3,"Turn"],[3,"ControlTrafficSignal"],[3,"TransitStop"],[3,"Tags"],[4,"BuildingType"],[3,"Time"],[4,"TurnType"],[3,"AmenityTypeIter"],[3,"Distance"],[15,"i64"],[3,"Path"],[3,"PathV2"],[3,"RoutingParams"],[4,"PathfinderCaching"],[3,"Position"],[3,"TypeId"],[3,"City"],[4,"Spot"],[3,"Duration"],[3,"HashMap"],[3,"WalkingOptions"],[4,"WalkingNode"],[6,"Result"],[3,"Speed"],[15,"u8"],[4,"PermanentEditCmd"],[3,"PermanentMapEdits"],[4,"PermanentEditIntersection"],[3,"PermanentEditCrosswalks"],[3,"OriginalLane"],[3,"ChangeLaneType"],[3,"ReverseLane"],[3,"ChangeSpeedLimit"],[3,"ChangeAccessRestrictions"],[4,"Value"],[3,"App"],[3,"ArgMatches"],[3,"HashablePt2D"],[3,"HashSet"],[3,"PolyLine"],[3,"Line"],[15,"f64"],[3,"XorShiftRng"],[3,"Stage"],[3,"RawTransitRoute"],[3,"BorderSnapper"],[3,"RawTransitStop"],[3,"Angle"],[3,"Pt2D"],[3,"Perimeter"],[3,"Block"],[4,"OffstreetParking"],[4,"RoadRank"],[3,"RoadSideID"],[15,"isize"],[4,"CommonEndpoint"],[15,"u32"],[3,"CompressedMovementID"],[3,"Movement"],[3,"DirectedRoad"],[3,"Turn"],[3,"AccessRestrictions"],[4,"SideOfRoad"],[3,"Zone"],[3,"RoadWithStopSign"],[4,"TurnPriority"],[4,"StageType"],[3,"TrafficSignal"],[3,"WayID"],[3,"RelationID"],[3,"EnumSet"],[8,"Into"],[8,"Deserializer"],[8,"Serializer"],[4,"PathfindEngine"],[4,"CreateEngine"],[3,"InputGraph"],[8,"Clone"],[8,"Copy"],[8,"Ord"],[8,"Debug"],[8,"Serialize"],[3,"NodeMap"],[3,"InnerNodeMap"],[8,"Deserialize"],[6,"NodeId"],[3,"PathfinderCache"],[3,"UberTurn"],[3,"UberTurnV2"],[3,"IntersectionCluster"],[4,"PathStep"],[4,"Traversable"],[3,"VecDeque"],[4,"PathStepV2"],[3,"VehiclePathfinder"],[4,"Node"],[3,"SidewalkPathfinder"],[13,"ResidentialCommercial"],[13,"Commercial"],[13,"Residential"],[13,"One"],[13,"ChangeIntersection"],[13,"ChangeCrosswalks"],[13,"ChangeRouteSchedule"],[13,"ChangeRoad"],[13,"StopSign"],[13,"TrafficSignal"],[13,"Buffer"],[13,"PublicGarage"],[13,"Private"],[13,"Lane"],[13,"ContraflowLane"],[13,"Turn"],[13,"ContraflowTurn"],[13,"Along"],[13,"Contraflow"],[13,"Movement"],[13,"ContraflowMovement"],[13,"Fixed"],[13,"Variable"],[13,"Lane"],[13,"Turn"],[13,"Building"],[13,"Border"],[13,"DirectedRoad"],[13,"SidewalkEndpoint"],[13,"RideTransit"],[13,"LeaveMap"],[13,"ChangeRouteSchedule"],[13,"ChangeIntersection"],[13,"ChangeCrosswalks"],[13,"ChangeRoad"],[13,"TrafficSignal"],[13,"StopSign"],[13,"Node"],[13,"Way"],[13,"Relation"],[13,"CHSeedingNodeOrdering"],[13,"Dijkstra"],[13,"CH"],[13,"Road"],[13,"UberTurn"]]},\
+"map_model":{"doc":"map_model
describes the world where simulations occur. …","t":[12,12,12,12,12,12,12,3,13,3,4,3,3,4,13,13,13,13,13,13,13,13,13,3,13,13,4,3,3,4,13,13,13,13,13,13,13,13,13,13,13,13,13,3,13,13,4,3,13,13,13,13,13,13,13,3,3,13,13,13,13,3,4,13,4,4,3,4,3,13,13,13,13,13,13,13,13,13,13,13,3,13,3,4,3,4,13,13,3,13,13,3,3,4,13,13,13,13,13,13,17,17,3,3,13,3,13,3,13,3,17,3,13,13,4,13,13,3,17,13,13,3,3,3,4,3,4,4,3,3,3,4,13,3,3,13,13,13,13,3,13,13,13,13,3,13,13,13,4,13,13,13,3,3,3,3,3,17,13,13,13,13,13,13,4,13,13,13,3,4,13,13,13,13,13,13,13,13,13,3,3,3,3,4,3,13,13,3,4,4,13,3,13,13,13,13,13,13,3,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,0,12,12,12,11,11,12,12,12,12,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,0,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,12,12,12,11,12,11,12,12,12,0,0,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,11,11,12,12,11,12,11,11,11,12,12,12,12,12,11,11,11,11,0,12,12,11,11,12,12,12,12,12,12,12,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,12,0,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,12,12,12,12,11,12,12,12,12,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,17,12,11,11,12,11,12,11,11,11,11,11,12,11,11,11,11,11,13,13,13,13,13,13,4,4,3,5,5,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,0,12,12,12,12,12,12,12,12,3,5,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,13,13,13,13,13,4,3,3,4,3,3,2,13,13,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,12,0,11,11,12,12,11,11,11,12,11,11,11,11,11,5,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,5,11,12,12,0,12,12,5,5,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,5,5,5,5,5,5,5,5,5,5,5,5,5,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,12,12,12,12,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,5,13,13,13,13,13,17,4,3,4,3,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,11,11,0,0,11,11,11,11,11,11,11,11,12,5,0,12,2,5,5,11,0,0,5,11,11,0,11,11,0,5,5,5,5,5,5,5,5,17,17,5,5,5,5,5,5,5,5,0,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,11,11,12,12,5,5,5,11,11,11,11,12,12,11,11,11,11,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,12,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,12,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,3,4,13,13,4,13,13,13,13,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,12,11,12,12,12,11,12,11,11,11,11,11,12,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,3,3,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,12,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,13,4,3,3,13,13,17,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,5,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,3,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,12,11,12,11,11,11,11,12,12,12,11,11,11,11,11,11,12,5,12,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,3,3,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,11,11,11,11,11,11,12,11,11,11,11,12,11,12,11,11,12,12,12,11,11,11,11,11,11,11,11,11,11,11,12,3,13,13,3,3,3,4,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,12,12,11,11,12,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,12,11,11,11,11,11,12,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,17,3,13,3,4,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,3,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,11,11,11,12,11,11,11,11,12,12,12,11,11,11,12,12,11,11,11,11,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,13,13,13,3,3,4,4,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,3,3,12,12,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,13,17,13,13,13,3,4,13,3,4,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,13,13,13,2,2,4,2,2,2,2,2,2,2,13,3,13,2,11,12,12,12,12,12,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,0,11,11,0,5,11,11,11,11,11,11,11,11,11,11,11,11,0,12,5,0,0,2,0,11,11,0,5,13,13,13,4,13,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,3,11,11,11,11,11,11,11,5,11,11,11,11,11,12,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,13,13,13,3,3,4,11,11,12,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,11,11,11,11,5,11,11,11,11,11,11,11,11,11,12,11,11,11,13,13,13,3,3,4,13,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,5,5,5,11,11,11,11,11,12,12,12,12,13,13,13,13,4,3,11,11,11,11,11,11,11,11,12,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,12,4,13,13,3,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,5,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,5,11,11,12,12,13,13,13,3,4,11,11,11,11,11,11,11,11,12,11,11,11,5,11,12,5,11,11,11,11,5,11,11,11,12,11,5,12,12,12,12,13,17,17,3,4,13,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,12,12],"n":["0","0","0","0","0","0","0","AccessRestrictions","Along","Amenity","AmenityType","Area","AreaID","AreaType","Back","BanTurns","Bank","Banned","Bar","Beauty","Bike","Bike","Biking","Block","Both","Buffer","BufferType","Building","BuildingID","BuildingType","Bus","Bus","CacheCH","CacheDijkstra","Cafe","Car","CarRepair","CarShare","ChangeCrosswalks","ChangeIntersection","ChangeRoad","ChangeRouteSchedule","Childcare","City","Closed","Commercial","CommonEndpoint","CompressedMovementID","Connection","Construction","Construction","Contraflow","ContraflowLane","ContraflowMovement","ContraflowTurn","ControlStopSign","ControlTrafficSignal","ConvenienceStore","Crosswalk","Culture","Curb","DirectedRoadID","Direction","Driving","DrivingSide","EditCmd","EditEffects","EditIntersection","EditRoad","Empty","Exercise","FastFood","Fixed","FlexPosts","Food","Footway","Fork","Fwd","GreenSpace","Hotel","Intersection","Intersection","IntersectionCluster","IntersectionControl","IntersectionID","IntersectionKind","Island","JerseyBarrier","Lane","Lane","Lane","LaneID","LaneSpec","LaneType","Laundry","Left","Left","Left","Library","LightRail","MAX_BIKE_SPEED","MAX_WALKING_SPEED","Map","MapConfig","MapEdge","MapEdits","Medical","Movement","Movement","MovementID","NORMAL_LANE_THICKNESS","NamePerLanguage","NoCache","None","OffstreetParking","One","OnlyAllowTurns","OriginalRoad","PARKING_LOT_SPOT_LENGTH","Park","Parking","ParkingLot","ParkingLotID","Path","PathConstraints","PathRequest","PathStep","PathStepV2","PathV2","Pathfinder","PathfinderCache","PathfinderCaching","Pedestrian","Perimeter","PermanentMapEdits","Pet","Planters","Playground","Pool","Position","PostOffice","Private","Protected","PublicGarage","RawToMapOptions","Religious","Residential","ResidentialCommercial","RestrictionType","Right","Right","Right","Road","RoadID","RoadSideID","RoadWithStopSign","RoutingParams","SIDEWALK_THICKNESS","School","SharedLeftTurn","SharedSidewalkCorner","SharedUse","Shopping","Shoulder","SideOfRoad","Sidewalk","Signalled","Signed","Stage","StageType","StopSign","Straight","Stripes","StudyArea","Supermarket","Terminus","Tourism","TrafficSignal","Train","TransitRoute","TransitRouteID","TransitStop","TransitStopID","Traversable","Turn","Turn","Turn","TurnID","TurnPriority","TurnType","UTurn","UberTurn","Uncontrolled","University","UnmarkedCrossing","Variable","Water","Yield","Zone","access_restrictions","access_restrictions","add_new_lane","added_turns","address","aisles","all","all_areas","all_buildings","all_costs_from","all_incoming_borders","all_intersections","all_lanes","all_outgoing_borders","all_parking_lots","all_roads","all_transit_routes","all_transit_stops","all_turns","all_zones","allow_through_traffic","almost_blank","alt_start","amenities","amenity_type","angle","apply_edits","area_type","areas","areas","avoid_high_stress","avoid_movements_between","avoid_roads","avoid_steep_incline_penalty","barrier_nodes","bike_graph","bike_lane_penalty","bikes_can_use_bus_lanes","biking_blackhole","blank","bldg_type","blocked_starts","borders","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","boundary","boundary_polygon","bounds","building_to_road","buildings","bus_graph","bus_lane_penalty","bus_routes_on_roads","cache","cached_alternatives","car_graph","categorize","center_pts","changed_intersections","changed_parking_lots","changed_roads","changed_roads","changed_routes","check_lanes_ltr","city","clear_edits_before_save","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","cmp","commands","commands","complicated_turn_restrictions","config","connectivity","constraints","control","cost","create_for_test","create_from_raw","crossed_so_far","crossing_nodes","crosswalk","crosswalk_backward","crosswalk_forward","currently_inside_ut","default","deleted_lanes","deleted_turns","describe","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dir","dir","dir","dist_along","districts","driveway_geom","driveway_line","driving_blackhole","driving_lane_penalty","driving_pos","driving_pos","driving_side","dst","dst_i","dst_i","edit_road_cmd","edits","edits","edits_generation","edits_name","edits_name","elevation","end","end_border","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","export_geometry","extra_spots","filter_crosswalks","find_b_by_osm_id","find_dog_legs_experiment","find_driving_lane_near_building","find_i_by_osm_id","find_r_by_osm_id","find_road_between","find_tr_by_gtfs","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_char","from_short_name","from_str","geom","geom","get","get_a","get_b","get_boundary_polygon","get_bounds","get_bus_routes_on_road","get_city_name","get_config","get_edits","get_edits_change_key","get_gps_bounds","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_i","get_i_crosswalks_edit","get_i_edit","get_l","get_languages","get_movement_for_traffic_signal","get_movements_for","get_name","get_next_roads","get_next_turns_and_lanes","get_next_turns_and_lanes_for","get_parent","get_pathfinder","get_pl","get_r","get_r_edit","get_routes_serving_stop","get_stop_sign","get_t","get_tr","get_traffic_signal","get_transit_route","get_ts","get_turn_between","get_turns_for","get_turns_from_lane","get_turns_to_lane","gps_bounds","gtfs_id","gtfs_id","hack_add_area","hack_override_bldg_type","hack_override_offstreet_spots","hack_override_offstreet_spots_individ","hack_override_orig_spawn_times","hash","hash","hash","hash","hash","hash","hash","hash","i","i1","i2","id","id","id","id","id","id","id","id","id","id","id","id","idx","idx","include_railroads","incoming_lanes","incremental_edit_traffic_signal","inferred_sidewalks","interior","intersections","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","is_for_moving_vehicles","is_train_stop","is_unprotected_turn","is_walkable","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","iter","keep_bldg_tags","keep_pathfinder_despite_edits","kind","label_center","lane","lane_center_pts","lane_closest_to_edge","lane_type","lanes","lanes_ltr","languages","levels","load_synchronously","long_name","lt","main_road_penalty","make","map","map_loaded_directly","map_name","max_elevation","maybe_add_bike_lanes","maybe_get_a","maybe_get_b","maybe_get_i","maybe_get_l","maybe_get_pl","maybe_get_r","maybe_get_stop_sign","maybe_get_t","maybe_get_tr","maybe_get_traffic_signal","maybe_get_ts","members","members","members","merge_osm_ways","merge_zones","merge_zones","merged","minify","minify_buildings","modified_lanes","movements","must_apply_edits","must_stop","mut_lane","mut_road","mut_turn","name","name","name","name","names","new","new","new","new_edits","objects","offset","offset","oneway_for_driving","opposite","orig_id","orig_id","orig_id","orig_req","orig_spawn_times","original_crosswalks","original_intersections","osm","osm2lanes","osm_id","osm_id","osm_tags","osm_tags","osm_tags","osm_tags","osm_way_id","outgoing_lanes","params","parent","parent","parking","parking_lots","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","path","pathfind","pathfind","pathfind_v2","pathfind_v2_with_params","pathfind_with_params","pathfinder","pathfinder_dirty","percent_incline","perimeter","polygon","polygon","polygon","polygon","polygon","proposal_description","proposal_description","proposal_link","proposal_link","protected_movements","recalculate_all_movements","recalculate_pathfinding_after_edits","recalculate_road_to_buildings","req","restrictions","road","road","road","road","road_to_buildings","road_to_buildings","roads","roads","roads","roads","route_type","routing_params","routing_params","save","save_edits","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","short_name","short_name","should_use_transit","side","sidewalk_line","sidewalk_pos","sidewalk_pos","sidewalk_pos","simple_path_btwn","simple_path_btwn_v2","skip_ch","spawn_times","speed_limit","speed_limit","spots","src","src_i","src_i","stage_type","stages","start","start","steps","steps","stop_signs","stops","street_parking_spot_length","supports_any_movement","to","to_char","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","toggle_road_direction","total_length","traffic_signals","train_graph","transit_routes","transit_stops","transit_stops","traversable","try_apply_edits","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","turn_on_red","turn_restrictions","turn_restrictions","turn_type","turn_type","turns","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","typical_lane_width","typical_lane_widths","uber_turns","uber_turns","uber_turns","unnamed","unprotected_turn_penalty","unsaved_edits","untrimmed_center_pts","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","walking_graph","walking_with_transit_graph","width","width","yield_movements","zones","zorder","0","0","1","num_housing_units","num_residents","0","i","i","id","new","new","new","new","old","old","old","old","r","0","0","0","0","0","1","1","0","0","0","0","0","0","0","0","0","0","1","2","0","0","City","POLYGON_EPSILON","areas","borrow","borrow_mut","boundary","deserialize","districts","from","from_huge_map","from_individual_maps","into","is_within","name","serialize","try_from","try_into","type_id","vzip","Border","Building","DirectedRoad","LeaveMap","RideTransit","SidewalkEndpoint","Spot","WalkingNode","WalkingOptions","all_vehicle_costs_from","all_walking_costs_from","allow_shoulders","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","closest","cmp","cmp","deserialize","deserialize","end_transit","eq","eq","equivalent","equivalent","find_scc","fmt","fmt","from","from","get_hash","get_hash","hash","hash","into","into","is_within","is_within","partial_cmp","partial_cmp","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vehicle_cost","vzip","vzip","walking","walking_speed","0","0","0","0","0","0","1","WalkingOptions","all_walking_costs_from","allow_shoulders","borrow","borrow_mut","clone","clone_into","common_speeds","default","default_speed","from","into","is_within","to_owned","try_from","try_into","type_id","vzip","walking_speed","0","ChangeCrosswalks","ChangeIntersection","ChangeRoad","ChangeRouteSchedule","Closed","EditCmd","EditCrosswalks","EditEffects","EditIntersection","EditRoad","MapEdits","PermanentMapEdits","StopSign","TrafficSignal","access_restrictions","added_turns","apply","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","changed_intersections","changed_lanes","changed_parking_lots","changed_roads","changed_roads","changed_routes","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","commands","compat","compress","default","deleted_lanes","deleted_turns","describe","deserialize","diff","edits_name","eq","eq","eq","eq","eq","fix_building_driveways","fix_parking_lot_driveways","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","get_checksum","get_orig_from_osm","get_title","into","into","into","into","into","into","is_within","is_within","is_within","is_within","is_within","is_within","lanes_ltr","load_from_bytes","load_from_file","merge_zones","modified_lanes","modify_lanes","new","original_crosswalks","original_intersections","perma","proposal_description","proposal_link","recalculate_intersection_polygon","recalculate_turns","save","serialize","speed_limit","to_owned","to_owned","to_owned","to_owned","to_owned","to_perma","to_permanent","to_permanent","to_permanent","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","undo","update_derived","vzip","vzip","vzip","vzip","vzip","vzip","i","i","id","new","new","new","new","old","old","old","old","r","0","0","ChangeAccessRestrictions","ChangeLaneType","ChangeSpeedLimit","OriginalLane","ReverseLane","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","deserialize","deserialize","deserialize","deserialize","deserialize","dir","dst_i","fix_adaptive_stages","fix_city_name","fix_f64s","fix_intersection_ids","fix_lane_widths","fix_map_name","fix_merge_zones","fix_offset","fix_old_lane_cmds","fix_phase_to_stage","fix_plans","fix_road_direction","fix_turn_restrictions","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","id","id","id","idx","into","into","into","into","into","is_within","is_within","is_within","is_within","is_within","l","lookup","lt","new","new","num_back","num_fwd","old","old","orig_lt","parent","remove_vehicle_caps","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upgrade","vzip","vzip","vzip","vzip","vzip","walk","ChangeCrosswalks","ChangeIntersection","ChangeRoad","ChangeRouteSchedule","Closed","IGNORE_OLD_LANES","PermanentEditCmd","PermanentEditCrosswalks","PermanentEditIntersection","PermanentMapEdits","StopSign","TrafficSignal","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","commands","deserialize","deserialize","deserialize","deserialize","edits_name","from","from","from","from","get_title","into","into","into","into","into_cmd","into_edits","into_edits_permissive","is_within","is_within","is_within","is_within","map_name","merge_zones","proposal_description","proposal_link","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","turns","type_id","type_id","type_id","type_id","version","vzip","vzip","vzip","vzip","with_permanent","with_permanent","gtfs_id","i","i","new","new","new","new","old","old","old","old","r","0","must_stop","RawToMapOptions","borrow","borrow_mut","bridges","buildings","clap","clone","clone_into","default","from","from_clap","into","is_within","keep_bldg_tags","match_points_to_lanes","parking_lots","skip_ch","snap_driveway","snap_nodes_to_line","snap_nodes_with_data_to_line","to_owned","traffic_signals","transit","trim_path","try_from","try_into","turns","type_id","vzip","walking_turns","find_bridges","classify_bldg","get_address","make_all_buildings","infer_spots","line_valid","make_all_parking_lots","snap_driveway","PROTECTED","YIELD","all_walk_all_yield","degenerate","expand_all_stages","four_way_four_stage","four_way_two_stage","get_possible_policies","greedy_assignment","half_signal","lagging_green","make_stages","new","stage_per_road","synchronize","three_way","add_stage","four_way_four_stage","is_conflict","make_crosswalk_variable","make_lagging_green_variable","make_signal","make_traffic_signal","merge_stages","movements","movements_from","multi_way_stages","optimize","protected_yield_stage","remove_movement","straight_types","three_way_three_stage","BorderSnapper","borrow","borrow_mut","bus_incoming_borders","bus_outgoing_borders","create_route","create_stop","finalize_transit","from","into","is_within","new","train_incoming_borders","train_outgoing_borders","try_from","try_into","type_id","vzip","curvey_turn","ensure_unique","expected_turn_types_for_four_way","make_all_turns","make_vehicle_turns","remove_merging_turns","turn_type_from_angles","verify_vehicle_connectivity","baseline_geometry","filter_turns","make_crosswalk","make_shared_sidewalk_corner","make_walking_turns","turn_id","area","block","building","intersection","lane","movement","parking_lot","road","stop_signs","traffic_signals","transit","turn","zone","0","Area","AreaID","area_type","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","deserialize","deserialize","eq","equivalent","fmt","fmt","fmt","from","from","get_hash","hash","id","into","into","is_within","is_within","osm_id","osm_tags","partial_cmp","polygon","serialize","serialize","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Block","Perimeter","borrow","borrow","borrow_mut","borrow_mut","calculate_coloring","check_continuity","clone","clone","clone_into","clone_into","collapse_deadends","contains","deserialize","deserialize","find_all_single_blocks","find_roads_to_skip_tracing","flip_side_of_road","fmt","from","from","interior","into","into","is_within","is_within","merge_all","merge_holes","partition_by_predicate","perimeter","polygon","restore_invariant","reverse_to_fix_winding_order","roads","serialize","serialize","single_block","to_block","to_owned","to_owned","try_from","try_from","try_into","try_into","try_to_merge","type_id","type_id","undo_invariant","vzip","vzip","0","Building","BuildingID","BuildingType","Commercial","Empty","OffstreetParking","Private","PublicGarage","Residential","ResidentialCommercial","address","amenities","biking_connection","bldg_type","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","deserialize","deserialize","deserialize","deserialize","driveway_geom","driving_connection","eq","eq","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","get_hash","has_amenity","has_residents","hash","id","into","into","into","into","is_within","is_within","is_within","is_within","label_center","levels","name","num_parking_spots","orig_id","osm_tags","parking","partial_cmp","polygon","serialize","serialize","serialize","serialize","sidewalk","sidewalk_pos","sidewalk_to_bike","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","0","0","1","num_housing_units","num_residents","0","0","1","1","0","Intersection","IntersectionID","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","control","deserialize","deserialize","elevation","eq","equivalent","find_road_between","fmt","fmt","fmt","from","from","get_hash","get_incoming_lanes","get_outgoing_lanes","get_rank","get_road_sides_sorted_by_incoming_angle","get_roads_sorted_by_incoming_angle","get_sorted_incoming_roads","get_zorder","hash","id","incoming_lanes","into","into","is_border","is_closed","is_cycleway","is_deadend_for_driving","is_deadend_for_everyone","is_degenerate","is_footway","is_incoming_border","is_light_rail","is_outgoing_border","is_private","is_stop_sign","is_traffic_signal","is_within","is_within","kind","merged","movements","name","orig_id","outgoing_lanes","partial_cmp","polygon","roads","serialize","serialize","some_incoming_road","some_outgoing_road","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","turn_to_movement","turns","type_id","type_id","vzip","vzip","Both","CommonEndpoint","Lane","LaneID","None","One","PARKING_LOT_SPOT_LENGTH","biking_blackhole","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","common_endpoint","decode_u32","deserialize","deserialize","dir","dist_along_of_point","driving_blackhole","dst_i","dummy","encode_u32","end_line","endpoint","eq","eq","equivalent","first_line","first_pt","fmt","fmt","fmt","from","from","from","get_directed_parent","get_hash","get_lane_level_turn_restrictions","get_nearest_side_of_road","get_thick_polygon","hash","id","intersections","into","into","into","is_biking","is_bus","is_driving","is_footway","is_light_rail","is_parking","is_shoulder","is_sidewalk","is_walkable","is_within","is_within","is_within","lane_center_pts","lane_type","last_line","last_pt","length","new","number_parking_spots","offset","parse_turn_type_from_osm","partial_cmp","road","serialize","serialize","src_i","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","width","0","CompressedMovementID","Movement","MovementID","angle","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","conflicts_with","crosswalk","deserialize","deserialize","deserialize","eq","eq","eq","equivalent","equivalent","find_r","fmt","fmt","fmt","for_i","from","from","from","from","from_permanent","geom","get_hash","get_hash","hash","hash","i","id","idx","into","into","into","is_within","is_within","is_within","members","movement_geom","parent","partial_cmp","partial_cmp","serialize","serialize","serialize","src_center_and_width","to","to_owned","to_owned","to_owned","to_permanent","try_from","try_from","try_from","try_into","try_into","try_into","turn_type","type_id","type_id","type_id","vzip","vzip","vzip","0","ParkingLot","ParkingLotID","aisles","borrow","borrow","borrow_mut","borrow_mut","capacity","clone","clone","clone_into","clone_into","cmp","deserialize","deserialize","driveway_line","driving_pos","eq","equivalent","extra_spots","fmt","fmt","from","from","get_hash","hash","id","into","into","is_within","is_within","osm_id","partial_cmp","polygon","serialize","serialize","sidewalk_line","sidewalk_pos","spots","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","DirectedRoadID","Left","Right","Road","RoadID","RoadSideID","SideOfRoad","access_restrictions","access_restrictions_from_osm","barrier_nodes","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","both_directions","both_sides","center_pts","children","children_backwards","children_forwards","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","common_endpoint","complicated_turn_restrictions","crossing_nodes","crosswalk_backward","crosswalk_forward","deserialize","deserialize","deserialize","deserialize","deserialize","dir","dir_and_offset","directed_id_from","directed_id_to","dst_i","dst_i","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","find_closest_lane","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_detailed_rank","get_dir_change_pl","get_half_polygon","get_half_width","get_hash","get_hash","get_hash","get_hash","get_lanes_between","get_name","get_outermost_lane","get_rank","get_thick_polygon","get_width","get_zone","has_lanes","hash","hash","hash","hash","high_stress_for_bikes","id","incoming_lanes","into","into","into","into","into","is_cycleway","is_deadend_for_driving","is_driveable","is_extremely_short","is_footway","is_light_rail","is_private","is_service","is_within","is_within","is_within","is_within","is_within","lane_specs","lanes","lanes","length","must_get_sidewalk","oneway_for_driving","orig_id","osm_tags","other_endpt","other_side","parking_to_driving","partial_cmp","partial_cmp","partial_cmp","partial_cmp","percent_incline","recreate_lanes","road","road","serialize","serialize","serialize","serialize","serialize","shift_from_left_side","side","speed_limit","speed_limit_from_osm","src_i","src_i","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","transit_stops","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","turn_restrictions","type_id","type_id","type_id","type_id","type_id","untrimmed_center_pts","vzip","vzip","vzip","vzip","vzip","zorder","ControlStopSign","RoadWithStopSign","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","deserialize","eq","eq","flip_sign","fmt","fmt","from","from","get_priority","id","into","into","is_within","is_within","lane_closest_to_edge","must_stop","new","roads","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","CROSSWALK_PACE","ControlTrafficSignal","Fixed","Stage","StageType","Variable","adjust_major_minor_timing","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","convert_to_ped_scramble","convert_to_ped_scramble_without_promotion","could_be_protected","deserialize","deserialize","deserialize","edit_movement","enforce_minimum_crosswalk_time","eq","eq","eq","export","fmt","fmt","fmt","from","from","from","get_min_crossing_time","get_possible_policies","get_priority_of_movement","get_priority_of_turn","id","import","internal_convert_to_ped_scramble","into","into","into","is_within","is_within","is_within","max_crosswalk_time","missing_turns","new","new","offset","protected_movements","serialize","serialize","serialize","simple_cycle_duration","simple_duration","stage_type","stages","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","validate","vzip","vzip","vzip","yield_movements","0","0","1","2","0","TransitRoute","TransitRouteID","TransitStop","TransitStopID","all_path_requests","all_paths","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cmp","deserialize","deserialize","deserialize","deserialize","driving_pos","end_border","eq","eq","eq","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","get_hash","get_hash","gtfs_id","gtfs_id","hash","hash","id","id","idx","into","into","into","into","is_train_stop","is_within","is_within","is_within","is_within","long_name","name","orig_spawn_times","partial_cmp","partial_cmp","plural_noun","road","route_type","serialize","serialize","serialize","serialize","short_name","sidewalk_pos","spawn_times","start","stops","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","Banned","Crosswalk","Left","Protected","Right","SharedSidewalkCorner","Straight","Turn","TurnID","TurnPriority","TurnType","UTurn","UnmarkedCrossing","Yield","angle","between_sidewalks","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cmp","conflicts_with","crosswalk_line","crosswalk_over_road","deserialize","deserialize","deserialize","deserialize","dst","eq","eq","eq","eq","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","geom","get_hash","hash","id","into","into","into","into","is_crossing_arterial_intersection","is_within","is_within","is_within","is_within","parent","partial_cmp","partial_cmp","partial_cmp","pedestrian_crossing","penalty","permitted_by_lane","permitted_by_road","serialize","serialize","serialize","serialize","src","to_movement","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","turn_type","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","AccessRestrictions","Zone","allow_through_traffic","borders","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","deserialize","eq","eq","floodfill","fmt","fmt","from","from","into","into","is_within","is_within","make_all","members","new","restrictions","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","0","0","Arterial","HIGHWAY","Highway","Local","Node","NodeID","OsmID","Relation","RelationID","RoadRank","Way","WayID","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","deserialize","deserialize","deserialize","deserialize","detailed_from_highway","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from_highway","get_hash","get_hash","get_hash","get_hash","hash","hash","hash","hash","inner","into","into","into","into","into","is_within","is_within","is_within","is_within","is_within","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","0","0","0","Bike","Bus","Car","CreateEngine","Path","PathConstraints","PathRequest","PathStep","PathStepV2","PathV2","Pathfinder","PathfinderCache","PathfinderCaching","Pedestrian","RoutingParams","Train","WalkingNode","all","avoid_high_stress","avoid_movements_between","avoid_roads","avoid_steep_incline_penalty","bike_lane_penalty","bitand","bitor","bitxor","borrow","borrow","borrow_mut","borrow_mut","bus_lane_penalty","can_use","can_use_road","clone","clone","clone_into","clone_into","cmp","default","deserialize","deserialize","deserialize","driving_lane_penalty","engine","enum_from_u32","enum_into_u32","eq","eq","eq","equivalent","filter_lanes","fmt","fmt","from","from","from_lt","into","into","is_within","is_within","main_road_penalty","node_map","not","partial_cmp","pathfinder","round","serialize","serialize","serialize","sub","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uber_turns","unprotected_turn_penalty","unround","v1","v2","vehicle_cost","vehicles","vzip","vzip","walking","zone_cost","CH","CH","CHSeedingNodeOrdering","CreateEngine","Dijkstra","Dijkstra","Empty","PathfindEngine","all_costs_from","borrow","borrow","borrow_mut","borrow_mut","calculate_path","calculate_path_multiple_sources_and_targets","clone","clone_into","create","deserialize","from","from","into","into","is_dijkstra","is_within","is_within","reuse_ordering","serialize","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","0","graph","graph","path_calc","InnerNodeMap","NodeMap","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","deserialize","deserialize_nodemap","from","from","get","get_or_insert","guarantee_node_ordering","id_to_node","id_to_node","into","into","is_within","is_within","new","node_to_id","serialize","to_owned","translate_id","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","CacheCH","CacheDijkstra","NoCache","Pathfinder","PathfinderCache","PathfinderCaching","all_costs_from","apply_edits","bike_graph","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bus_graph","cache","cached_alternatives","car_graph","clone","clone","clone_into","clone_into","deserialize","empty","eq","finalize_transit","from","from","from","into","into","into","is_within","is_within","is_within","new","new","new_ch","new_dijkstra","new_limited","params","pathfind","pathfind_v2","pathfind_with_params","pathfind_with_params","serialize","should_use_transit","to_owned","to_owned","train_graph","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","walking_graph","walking_with_transit_graph","IntersectionCluster","UberTurn","UberTurnV2","autodetect","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","deserialize","deserialize","entry","entry","eq","eq","equivalent","exit","exit","find_all","flood","fmt","fmt","from","from","from","geom","into","into","into","into_v2","is_within","is_within","is_within","members","new","partial_cmp","path","path","serialize","serialize","to_owned","to_owned","trace_back","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","uber_turns","vzip","vzip","vzip","ContraflowLane","ContraflowTurn","Lane","Path","PathRequest","PathStep","Turn","about_to_start_ut","add","alt_start","as_lane","as_traversable","as_turn","between_buildings","between_directed_roads","blocked_starts","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","constraints","crossed_so_far","crossed_so_far","crosses_road","current_step","currently_inside_ut","currently_inside_ut","deduplicate","deserialize","deserialize","deserialize","dist_crossed_from_step","end","eq","eq","eq","equivalent","equivalent","estimate_duration","exact_slice","fmt","fmt","fmt","fmt","from","from","from","get_blocked_starts","get_hash","get_req","get_step_at_dist_along","get_steps","get_total_elevation_change","hash","into","into","into","is_empty","is_last_step","is_upcoming_uber_turn_component","is_within","is_within","is_within","isnt_last_step","last_step","leave_from_driveway","max_speed_along","max_speed_and_incline_along","maybe_next_step","modify_step","new","next_step","orig_req","partial_cmp","percent_dist_crossed","serialize","serialize","serialize","shift","start","steps","to_owned","to_owned","to_owned","to_string","total_length","total_length","trace","trace_from_start","trace_v2","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","uber_turns","validate_continuity","validate_restrictions","validate_zones","vehicle","vzip","vzip","vzip","walking","0","0","0","0","Along","Contraflow","ContraflowMovement","Movement","PathStepV2","PathV2","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cost","crosses_road","deserialize","deserialize","find_uber_turns","fmt","fmt","from","from","from_roads","get_cost","get_req","get_steps","into","into","into_v1","into_v1_walking","is_within","is_within","new","req","serialize","serialize","steps","to_owned","to_owned","trace_all_polygons","trace_v2","try_from","try_from","try_into","try_into","type_id","type_id","uber_turns","vzip","vzip","0","0","0","0","Node","Road","UberTurn","VehiclePathfinder","all_costs_from","apply_edits","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","constraints","deserialize","deserialize","empty","engine","eq","equivalent","fmt","from","from","get_hash","hash","into","into","is_within","is_within","make_input_graph","new","nodes","params","partial_cmp","pathfind","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uber_turns","vehicle_cost","vzip","vzip","0","0","LeaveMap","RideTransit","SidewalkEndpoint","SidewalkPathfinder","WalkingNode","all_costs_from","apply_edits","borrow","borrow_mut","clone","clone_into","deserialize","empty","engine","from","into","is_within","make_input_graph","new","nodes","one_step_walking_path","pathfind","serialize","should_use_transit","to_owned","transit_input_graph","try_from","try_into","type_id","use_transit","vzip","walking_path_to_steps","0","0","0","1","Lane","MAX_BIKE_SPEED","MAX_WALKING_SPEED","Position","Traversable","Turn","as_lane","as_turn","bike_speed_on_incline","borrow","borrow","borrow_mut","borrow_mut","buffer_dist","clone","clone","clone_into","clone_into","cmp","cmp","deserialize","deserialize","dist_along","dist_along","end","eq","eq","equiv_pos","equiv_pos_for_long_object","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","get_hash","get_polyline","get_zorder","hash","into","into","is_within","is_within","lane","lane","max_speed_along_movement","max_speed_along_road","maybe_lane","maybe_turn","min_dist","new","partial_cmp","partial_cmp","pt","pt_and_angle","serialize","serialize","start","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","walking_speed_on_incline","0","0"],"q":["map_model","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::BuildingType","","","","","map_model::CommonEndpoint","map_model::EditCmd","","","","","","","","","","","","map_model::EditIntersection","","map_model::LaneType","map_model::OffstreetParking","","","","map_model::PathStep","","","","map_model::PathStepV2","","","","map_model::StageType","","","","map_model::Traversable","","map_model::city","","","","","","","","","","","","","","","","","","","map_model::connectivity","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::connectivity::Spot","","","map_model::connectivity::WalkingNode","","","","map_model::connectivity::walking","","","","","","","","","","","","","","","","","","","map_model::edits","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::edits::EditCmd","","","","","","","","","","","","map_model::edits::EditIntersection","","map_model::edits::compat","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::edits::perma","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::edits::perma::PermanentEditCmd","","","","","","","","","","","","map_model::edits::perma::PermanentEditIntersection","","map_model::make","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::make::bridges","map_model::make::buildings","","","map_model::make::parking_lots","","","","map_model::make::traffic_signals","","","","","","","","","","","","","","","","map_model::make::traffic_signals::lagging_green","","","","","","","","","","","","","","","","map_model::make::transit","","","","","","","","","","","","","","","","","","map_model::make::turns","","","","","","","","map_model::make::walking_turns","","","","","","map_model::objects","","","","","","","","","","","","","map_model::objects::area","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::block","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::building","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::building::BuildingType","","","","","map_model::objects::building::OffstreetParking","","","","map_model::objects::intersection","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::lane","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::lane::CommonEndpoint","map_model::objects::movement","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::parking_lot","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::road","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::stop_signs","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::traffic_signals","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::traffic_signals::StageType","","","","map_model::objects::transit","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::turn","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::objects::zone","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::osm","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::osm::OsmID","","","map_model::pathfind","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::engine","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::engine::CreateEngine","map_model::pathfind::engine::PathfindEngine","","","map_model::pathfind::node_map","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::pathfinder","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::uber_turns","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::v1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::v1::PathStep","","","","map_model::pathfind::v2","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::v2::PathStepV2","","","","map_model::pathfind::vehicles","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::vehicles::Node","","map_model::pathfind::walking","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::pathfind::walking::WalkingNode","","","","map_model::traversable","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","map_model::traversable::Traversable",""],"d":["","","","","","","","","Original direction","A business located inside a building.","Businesses are categorized into one of these types.","Areas are just used for drawing.","","","","","","For stop signs: Can’t currently specify this! For …","","","","","","A block is defined by a perimeter that traces along the …","Two lanes/roads share both endpoints, because they both …","","","A building has connections to the road and sidewalk, may …","","","","","Create a slow-to-build but fast-to-use contraction …","Create a fast-to-build but slow-to-use Dijkstra-based …","","","","","","","","","","A single city (like Seattle) can be broken down into …","","An estimated number of workers","","This is cheaper to store than a MovementID. It simply …","Multiple Road
s connect but no flow of traffic interacts …","","","Opposite direction, sidewalks only","Sidewalks only!","","","","A traffic signal consists of a sequence of Stages that …","","A marked zebra crossing, where pedestrians usually have …","","A raised curb","","","","","","","","","","","","","Flex posts, wands, cones, other “weak” forms of …","","Some kind of pedestrian-only path unassociated with a road","One flow of traffic forks into multiple, or multiple merge …","","","","An intersection connects roads. Most have >2 roads and are …","At least three Road
s meet at an actual “intersection” …","This only applies to VehiclePathfinder; walking through …","The kind of traffic control present at an intersection.","","What kind of feature an Intersection
actually represents. …","","Solid barrier, no gaps.","A road segment is broken down into individual lanes, which …","Original direction","","A lane is identified by its parent road and its position, …","","","","","","","","","","","","","A Road
ends because the road crosses the map boundary.","Represents changes to a map. Note this isn’t …","","A Movement groups all turns from one road to another, …","","A movement is like a turn, but with less detail – it …","","None corresponds to the native name","Create a fast-to-build but slow-to-use Dijkstra-based …","Two lanes/roads don’t have any common endpoints","Represent no parking as Private(0, false).","Two lanes/roads share one endpoint","","Refers to a road segment between two nodes, using OSM IDs. …","From some manually audited cases in Seattle, the length of …","","","Parking lots have some fixed capacity for cars, and are …","","","Who’s asking for a path?","","","One step along a path.","A path between two endpoints for a particular mode. This …","","For callers needing to request paths with a variety of …","When pathfinding with different RoutingParams
is done, a …","","A sequence of roads in order, beginning and ending at the …","MapEdits are converted to this before serializing. …","","Sturdier planters, with gaps.","","","Represents a specific point some distance along a lane.","","(Spots, explicitly tagged as a garage)","For stop signs: cars can do this without stopping. These …","(Name, spots)","Options for converting RawMaps to Maps.","","","An estimated number of residents, workers","","","","","A Road represents a segment between exactly two …","","","","Tuneable parameters for all types of routing.","","","","The corner where two sidewalks meet. Pedestrians can cross …","Some kind of shared pedestrian+bicycle space. May be …","","","See https://wiki.openstreetmap.org/wiki/Forward_…","","","","","","","","Just paint!","Not from OSM. A user-specified area to focus on.","","A single Road
ends because the actual roadway ends; “the …","","","","","","","","Either a lane or a turn, where most movement happens.","A Turn leads from the end of one Lane to the start of …","","","Turns are uniquely identified by their (src, dst) lanes …","","","","","","","An unmarked crossing, where pedestrians may cross without …","Minimum is the minimum duration, 0 allows cycle to be …","","For stop signs: cars have to stop before doing this turn, …","A contiguous set of roads with access restrictions. This …","","","Returns the index where the new lane was inserted","","","","All types of amenities, in alphabetical order.","","","Return the cost of a single path, and also a mapping from …","This and all_outgoing_borders are expensive to constantly …","","","","","","","","","","","A dummy map that won’t crash UIs, but has almost nothing …","","","This is the specific amenity listed in OSM, not the more …","","","","","","","Don’t allow movements between these roads at all. Only …","Don’t allow crossing these roads at all. Only affects …","","Some kind of modal filter or barrier this distance along …","","","","","Just for temporary std::mem::replace tricks.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Categorize an OSM amenity tag.","The physical center of the road, including sidewalks, …","","","","Derived from commands, kept up to date by update_derived","","This is meant for table-driven unit tests. Call this on …","","A hack. Use this to apply edits, then save the map anyway, …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A stack, oldest edit is first. The same intersection may …","self is ‘from’. (via, to). Only BanTurns.","","","","","","Transforms a string describing lane types and directions, …","","","Some kind of crossing this distance along center_pts.","Could be a Crosswalk or UnmarkedCrossing","","Is there a tagged crosswalk near each end of the road?","","","","","","","","","","","","","","","","","","","","","","","","The individual maps","Goes from building to sidewalk","Goes from the lot to the driving lane","{Cars, bikes} trying to start or end here might not be …","","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …","These may be on different roads entirely, like for light …","If true, driving happens on the right side of the road …","","","","","Once a Map exists, the player can edit it in the UI …","","","","","","","A transit vehicle either vanishes at its last stop or …","","","","","","","","","","","","","","","","","","","","","","","Export all road and intersection geometry to GeoJSON, …","If we can’t render all spots (maybe a lot with no aisles …","Only include crosswalks that match a highway=crossing
OSM …","","Enable experimental dog-leg intersection merging","Cars trying to park near this building should head for the …","","","Finds the road directly connecting two intersections.","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","The inverse of to_char
. Always picks one buffer type. …","","","The “overall” path of movement, aka, an “average” …","","","","","","","What’re the names of bus routes along a road? Note this …","","","","If you need to regenerate anything when the map is edited, …","","","","","","","","","","","","","","","None for SharedSidewalkCorners and turns not belonging to …","Find all movements from one road to another that’re …","","","","","","","","","","","","","","","","","","","The turns may belong to two different intersections!","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","As long as this is unique per road, this value is …","OSM railway=rail will be included as light rail if so. …","Note that a lane may belong to both incoming_lanes and …","Since the player is in the middle of editing, the signal …","If true, roads without explicitly tagged sidewalks may be …","These roads exist entirely within the perimeter","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","If false, only buses serve this stop","Does a turn at a stop sign go from a smaller to a larger …","","","","","","","","","","","","","","","","","","Preserve all OSM tags for buildings, increasing the final …","Normally after applying edits, you must call …","","Where a text label should be centered to have the best …","","","","","Invariant: A road must contain at least one child. These …","","","","Load a map from a local serialized Map or RawMap. Note …","","","When crossing an arterial or highway road, multiply the …","See …","A bunch of (mostly read-only) queries on a Map.","After deserializing a map directly, call this after.","","Returns the highest elevation in the map","","","","","","","","","","","","","","","","Experimentally merge these OSM ways","If false, adjacent roads with the same AccessRestrictions …","If false, adjacent roads with the same AccessRestrictions …","Was a short road adjacent to this intersection merged?","Modifies the map in-place, removing parts not essential …","Modifies the map in-place, removing buildings.","","","Returns (changed_roads, deleted_lanes, deleted_turns, …","","","Public for importer. Do not abuse!","","","","","","","","","","","","","","None if bidirectional. If it’s one-way, which direction …","","","","","","Explicitly store whatever the original was, since this can…","","","Useful utilities for working with OpenStreetMap.","If true, use experimental osm2lanes for figuring out lanes …","The importing process also automatically creates some …","","Depending on options while importing, these might be …","","Depending on options while importing, these might be …","","","","","","","","","","","","","","","","","Everything related to pathfinding through a map for …","","","","","","","[-1.0, 1.0] theoretically, but in practice, about [-0.25, …","","","The polygon covers the interior of the block.","","This needs to be in clockwise orientation, or later …","","Edits without these are player generated.","Some edits are included in the game by default, in …","The link is optional even for proposals","","","","This can expensive, so don’t constantly do it while …","","","","","","","","","","","","Only roads incoming to the intersection are listed here.","","","Returns the routing params baked into the map.","","","","","","","","","","","","","","","","","","","","","","Lot to sidewalk","The building’s connection for any agent can change based …","","","Simple search along undirected roads. Expresses the result …","Simple search along directed roads, weighted by distance. …","Should contraction hierarchies for pathfinding be built? …","Non-empty, times in order for one day when a vehicle …","","","The middle of the “T”, pointing towards the parking …","src and dst must both belong to parent. No guarantees that …","","","","","A transit vehicle spawns at the beginning of this lane. …","","","","","","Street parking is divided into spots of this length. 8 …","","","Represents the lane type as a single character, for use in …","","","","","","","","","","","","","","","","","","","Convert the driving lanes of a road between one-way …","","","","","Meaningless order","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If true, turns on red which do not conflict crossing …","Turn indications specific to this lane, from …","self is ‘from’","","","","","","","","","","","","","","","","","","","Pick a reasonable default for a lane width, without any …","For a given lane type, returns some likely widths. This …","","","","","","","Like center_pts, but before any trimming for intersection …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A single city (like Seattle) can be broken down into …","","","","","","","The individual maps","Returns the argument unchanged.","If there’s a single map covering all the smaller maps, …","Generate a city from a bunch of smaller, individual maps. …","Calls U::from(self)
.","","","","","","","","","","","","","false is src_i, true is dst_i","","","","Starting from some initial spot, calculate the cost to all …","Starting from some initial buildings, calculate the cost …","If true, allow walking on shoulders.","","","","","","","","","","","","","","","","","","","Calculate the strongly connected components (SCC) of the …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","This returns the pathfinding cost of crossing one road and …","","","","","","","","","","","","","Starting from some initial buildings, calculate the cost …","If true, allow walking on shoulders.","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","This must contain all crossing turns at one intersection, …","","","","Represents changes to a map. Note this isn’t …","","","","","","","","","","","","","","","","","","","","Pick apart changed_roads and figure out if an entire road …","","","Derived from commands, kept up to date by update_derived","","","","","","","","","","","","A stack, oldest edit is first. The same intersection may …","","Assumes update_derived has been called.","","","","(summary, details)","","","","","","","","","Recalculate the driveways of some buildings after map …","Recalculate the driveways of some parking lots after map …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Produces an md5sum of the contents of the edits.","","Get the human-friendly of these edits. If they have a …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","Load map edits from the given JSON bytes. Strip out any …","Load map edits from a JSON file. Strip out any commands …","If false, adjacent roads with the same AccessRestrictions …","","","","","","","Some edits are included in the game by default, in …","","","","","","","","","","","","","Encode the edits in a permanent format, referring to …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","When the PermanentMapEdits format changes, add a …","","","","","","","","","","","","","","","","MapEdits are converted to this before serializing. …","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get the human-friendly of these edits. If they have a …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","Transform permanent edits to MapEdits, looking up the map …","Transform permanent edits to MapEdits, looking up the map …","","","","","","If false, adjacent roads with the same AccessRestrictions …","Edits without these are player generated.","The link is optional even for proposals","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Options for converting RawMaps to Maps.","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","Preserve all OSM tags for buildings, increasing the final …","Snap points to an exact Position along the nearest lane. …","","Should contraction hierarchies for pathfinding be built? …","","","","","The various traffic signal generators live in the traffic …","","Adjust the path to start on the polygon’s border, not …","","","","","","","Look for roads underneath bridges, then lower their …","","","Finalize importing of buildings, mostly by matching them …","","","Take in parking lots from OSM and all parking aisle roads. …","Returns (driveway_line, driving_pos, sidewalk_line, …","","","","","","","","Applies a bunch of heuristics to a single intersection, …","","","","","","","Simple second-pass after generating all signals. Find …","","","","","","","","Create a traffic signal which has a stage that is: …","","","","Build stages. First find roads that are straight across, …","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","Generate all driving and walking turns at an intersection, …","","","","Ideally, we want every incoming lane to lead to at least …","","Filter out crosswalks on really short roads. In reality, …","","","Looks at all sidewalks (or lack thereof) in …","","","","","","","","","","","","Public transit stops and routes.","","Zones and AccessRestrictions are used to model things like:","","Areas are just used for drawing.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","The importing process also automatically creates some …","","","","","","","","","","","","","","","","","A block is defined by a perimeter that traces along the …","A sequence of roads in order, beginning and ending at the …","","","","","Assign each perimeter one of num_colors
, such that no two …","","","","","","If the perimeter follows any dead-end roads, “collapse”…","Does this perimeter completely enclose the other?","","","This calculates all single block perimeters for the entire …","Blockfinding is specialized for the LTN tool, so …","Shrinks or expands the perimeter by tracing the opposite …","","Returns the argument unchanged.","Returns the argument unchanged.","These roads exist entirely within the perimeter","Calls U::from(self)
.","Calls U::from(self)
.","","","Try to merge all given perimeters. If successful, only one …","Looks for perimeters that’re completely surrounded by …","Consider the perimeters as a graph, with adjacency …","","The polygon covers the interior of the block.","Restore the first=last invariant. Methods may temporarily …","Should we reverse one perimeter to match the winding order?","","","","Starting at any lane, snap to the nearest side of that …","","","","","","","","Try to merge two blocks. Returns true if this is …","","","A perimeter has the first and last road matching up, but …","","","","A building has connections to the road and sidewalk, may …","","","An estimated number of workers","","Represent no parking as Private(0, false).","(Spots, explicitly tagged as a garage)","(Name, spots)","","An estimated number of residents, workers","","","Returns (biking position, sidewalk position). Could fail …","","","","","","","","","","","","","","","","","","","","","","","Goes from building to sidewalk","The polyline goes from the building to the driving position","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Does this building contain any amenity matching the …","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","Where a text label should be centered to have the best …","","","","","Depending on options while importing, these might be …","","","","","","","","","The building’s connection for any agent can change based …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An intersection connects roads. Most have >2 roads and are …","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Strict for bikes. If there are bike lanes, not allowed to …","","","","Return all incoming roads to an intersection, sorted by …","Higher numbers get drawn on top","","","Note that a lane may belong to both incoming_lanes and …","Calls U::from(self)
.","Calls U::from(self)
.","","","","Does this intersection connect to only a single driveable …","Ignoring mode of travel, is this intersection only …","Does this intersection only connect two road segments? …","","","","","","","","","","","Was a short road adjacent to this intersection merged?","","","","","","This needs to be in clockwise orientation, or later …","","","","","","","","","","","","","Don’t call for SharedSidewalkCorners","","","","","","Two lanes/roads share both endpoints, because they both …","","A road segment is broken down into individual lanes, which …","A lane is identified by its parent road and its position, …","Two lanes/roads don’t have any common endpoints","Two lanes/roads share one endpoint","From some manually audited cases in Seattle, the length of …","","","","","","","","","","","","","","","","","","","{Cars, bikes} trying to start or end here might not be …","","","","pt2 will be endpoint","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the set of allowed turn types, based on individual …","This does the reasonable thing for the leftmost and …","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","This is cheaper to store than a MovementID. It simply …","A Movement groups all turns from one road to another, …","A movement is like a turn, but with less detail – it …","","","","","","","","","","","","","","","","","Could be a Crosswalk or UnmarkedCrossing","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","The “overall” path of movement, aka, an “average” …","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","Polyline points FROM intersection","","","","","","","","","","","","","","","","","","","","Parking lots have some fixed capacity for cars, and are …","","","","","","","","","","","","","","","Goes from the lot to the driving lane","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …","","","If we can’t render all spots (maybe a lot with no aisles …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","Lot to sidewalk","","The middle of the “T”, pointing towards the parking …","","","","","","","","","","","","","","","","A Road represents a segment between exactly two …","","","See https://wiki.openstreetmap.org/wiki/Forward_…","","","Some kind of modal filter or barrier this distance along …","","","","","","","","","","","","","The physical center of the road, including sidewalks, …","","","These are ordered from closest to center lane (left-most …","","","","","","","","","","","","","","","","self is ‘from’. (via, to). Only BanTurns.","Some kind of crossing this distance along center_pts.","","Is there a tagged crosswalk near each end of the road?","","","","","","","lane must belong to this road. Offset 0 is the centermost …","Get the DirectedRoadID pointing to the intersection. …","Get the DirectedRoadID pointing from the intersection. …","","","","","","","","","","","Includes off-side","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","This is the FIRST yellow line where the direction of the …","Creates the thick polygon representing one half of the …","","","","","","Returns all lanes located between l1 and l2, exclusive.","","","","","","","Does this directed road have any lanes of a certain type?","","","","","A simple classification of if the directed road is …","","Returns lanes from the “center” going out","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","Does either end of this road lead nowhere for cars? …","","Many roads wind up with almost no length, due to their …","","","","","","","","","","","Strict for bikes. If there are bike lanes, not allowed to …","Invariant: A road must contain at least one child. These …","","Get the only sidewalk or shoulder on this side of the …","","","","Returns the other intersection of this road, panicking if …","","","","","","","[-1.0, 1.0] theoretically, but in practice, about [-0.25, …","","","","","","","","","","","","","","","","","","","","","","Meaningless order","","","","","","","","","","","self is ‘from’","","","","","","Like center_pts, but before any trimming for intersection …","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Get the priority of a turn according to the stop sign – …","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","Only roads incoming to the intersection are listed here.","","","","","","","","","","","","","","A traffic signal consists of a sequence of Stages that …","","","","Minimum is the minimum duration, 0 allows cycle to be …","Modifies the fixed timing of all stages, applying either a …","","","","","","","","","","","","","Move crosswalks from stages, adding them to an all-walk as …","Move crosswalks from stages, adding them to an all-walk as …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","How long a full cycle of the signal lasts, assuming no …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Entry i is the path to drive to stop i. The very last …","","","","","","","","","","","","","","","","","","","","","","","These may be on different roads entirely, like for light …","A transit vehicle either vanishes at its last stop or …","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","As long as this is unique per road, this value is …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","If false, only buses serve this stop","","","","","","","Explicitly store whatever the original was, since this can…","","","","","","","","","","","","Non-empty, times in order for one day when a vehicle …","A transit vehicle spawns at the beginning of this lane. …","","","","","","","","","","","","","","","","","","","","","","","","For stop signs: Can’t currently specify this! For …","A marked zebra crossing, where pedestrians usually have …","","For stop signs: cars can do this without stopping. These …","","The corner where two sidewalks meet. Pedestrians can cross …","","A Turn leads from the end of one Lane to the start of …","Turns are uniquely identified by their (src, dst) lanes …","","","","An unmarked crossing, where pedestrians may cross without …","For stop signs: cars have to stop before doing this turn, …","","","","","","","","","","","","","","","","","","","","","","Only appropriat for pedestrian crossings. The geometry of …","If this turn is a crosswalk over a single road, return …","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","Is the turn a crosswalk or unmarked crossing?","Penalties for (lane types, lane-changing, slow lane). The …","Is this turn legal, according to turn lane tagging?","Is this turn legal, according to turn restrictions defined …","","","","","src and dst must both belong to parent. No guarantees that …","","","","","","","","","","","","","","","","","","","","","","","","","A contiguous set of roads with access restrictions. This …","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Larger number means a bigger road, according to …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Who’s asking for a path?","","","","","","","","","Tuneable parameters for all types of routing.","","","","","Don’t allow movements between these roads at all. Only …","Don’t allow crossing these roads at all. Only affects …","","","","","","","","","","","Can an agent use a lane? There are some subtle exceptions …","Can an agent use a road in either direction? There are …","","","","","","","","","","","","","","","","","","Strict for bikes. If there are bike lanes, not allowed to …","","","Returns the argument unchanged.","Returns the argument unchanged.","Not bijective, but this is the best guess of user intent","Calls U::from(self)
.","Calls U::from(self)
.","","","When crossing an arterial or highway road, multiply the …","Some helpers for working with fast_paths.","","","","","","","","","","","","","","","","","To deal with complicated intersections and short roads in …","","","","Structures related to the new road-based pathfinding …","","Pathfinding for cars, bikes, buses, and trains using …","","","Pathfinding for pedestrians, as well as figuring out if …","Heavily penalize crossing into an access-restricted zone …","","","","","","","","This operates on raw IDs and costs; no type safety. The …","","","","","","Returns (path cost, node IDs in path)","Returns (path cost, node IDs in path). Input is pairs of …","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","A bidirectional mapping between fast_paths NodeId and some …","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Call this after filling out the input graph, right before …","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","Create a slow-to-build but fast-to-use contraction …","Create a fast-to-build but slow-to-use Dijkstra-based …","Create a fast-to-build but slow-to-use Dijkstra-based …","","For callers needing to request paths with a variety of …","When pathfinding with different RoutingParams
is done, a …","","","","","","","","","","","","","","","","","","","Quickly create an invalid pathfinder, just to make borrow …","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","Create a new Pathfinder with custom routing params that …","Create a new Pathfinder with custom routing params that …","Create a new Pathfinder with custom routing params that …","","Finds a path from a start to an end for a certain type of …","Finds a path from a start to an end for a certain type of …","New pathfinders will be created as-needed using Dijkstra’…","Finds a path from a start to an end for a certain type of …","","","","","","","","","","","","","","","","","","","","This only applies to VehiclePathfinder; walking through …","","A sequence of movements through a cluster of …","Find all other traffic signals “close” to one. Ignore …","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Group lane-based uber-turns into road-based UberTurnV2s.","","","","","(legal, illegal)","","","","","","","","","","","","","","","","","","","","","","Sidewalks only!","","Original direction","","","","","","","","","","","Determines the start and end position to travel between …","Create a request from the beginning of one road to the end …","","","","","","","","","","","","","","","","","","","","","","Group similar requests together, returning the number of …","","","","Once we finish this PathStep, how much distance will be …","","","","","","","Estimate how long following the path will take in the best …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","If the agent following this path will initially block some …","","The original PathRequest used to produce this path. If the …","","","Returns the total elevation (gain, loss) experienced over …","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","The caller must pass in two valid positions for the …","The single definitive place to determine how fast somebody …","The single definitive place to determine how fast somebody …","","Trusting the caller to do this in valid ways.","","","","","","","","","","","","","","","","","","Traces along the path from its originally requested start. …","Traces along the path from a specified distance along the …","Draws the thickened path, matching entire roads. Ignores …","","","","","","","","","","","","","","The caller must pass in two valid positions for the …","","","","The caller must pass in two valid sidewalk positions. This …","","","","","Original direction","Opposite direction, sidewalks only","","","One step along a path.","A path between two endpoints for a particular mode. This …","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Vehicle implementations often just calculate the sequence …","The time needed to perform this path. This time is not a …","The original PathRequest used to produce this path.","All steps in this path.","Calls U::from(self)
.","Calls U::from(self)
.","Transform a sequence of roads representing a path into the …","","","","","","","","","","","Returns polygons covering the entire path. Ignores the path…","Draws the thickened path, matching entire roads. Ignores …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","This returns the pathfinding cost of crossing one road and …","","","","","","","false is src_i, true is dst_i","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","Attempt the pathfinding and see if we should ride public …","","","","","","","","","","","","","","","","Represents a specific point some distance along a lane.","Either a lane or a turn, where most movement happens.","","","","","","","","","","","","","","","","","","","","","","","Given a position along a lane, find the equivalent …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Return the center-line geometry of this lane or turn.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","The single definitive place to determine how fast somebody …","The single definitive place to determine how fast somebody …","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[29,49,18,43,67,36,45,0,166,0,0,0,0,0,28,31,6,138,6,6,6,63,2,0,128,2,0,0,0,0,2,63,86,86,6,63,6,6,38,38,38,38,6,0,59,77,0,0,24,25,2,166,163,166,163,0,0,6,79,6,26,0,0,2,0,0,0,0,0,77,6,6,139,26,6,2,24,28,6,6,0,24,0,0,0,0,22,26,0,163,164,0,0,0,6,4,135,79,6,2,0,0,0,0,24,0,6,0,166,0,0,0,86,128,0,128,31,0,0,22,2,0,0,0,0,0,0,0,0,0,0,0,63,0,0,6,26,6,6,0,6,124,138,124,0,6,77,77,0,4,135,79,0,0,0,0,0,0,6,2,79,2,6,2,0,2,25,25,0,0,59,79,26,22,6,24,6,59,63,0,0,0,0,0,0,163,164,0,0,0,79,0,25,6,79,139,22,138,0,69,19,27,17,51,68,6,8,8,8,8,8,8,8,8,8,8,8,8,8,134,8,9,51,21,131,8,50,89,8,85,85,85,85,19,66,85,30,60,8,51,83,136,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,89,8,8,8,8,66,85,8,159,66,66,6,19,17,17,17,14,14,27,0,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,6,23,2,26,28,29,31,99,14,19,8,0,9,11,84,27,8,83,19,64,19,19,83,30,17,17,2,21,22,23,24,25,2,26,27,28,29,30,4,31,8,27,60,62,87,89,51,68,60,85,68,75,30,61,60,19,8,0,8,8,99,14,11,9,71,6,22,23,24,25,2,26,27,28,29,4,31,6,22,23,24,25,2,26,28,29,31,8,68,30,8,30,8,8,8,8,8,21,6,22,23,23,24,25,2,26,27,28,28,29,30,4,31,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,64,2,2,6,131,73,29,8,8,8,8,8,8,8,8,8,8,22,23,24,25,2,26,28,31,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,75,71,8,8,8,8,8,22,23,24,25,2,26,28,31,130,23,23,50,51,11,60,131,68,19,72,74,75,71,73,130,70,30,11,8,30,122,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,2,75,8,2,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,6,34,8,11,51,87,60,137,60,19,69,29,51,8,71,27,85,0,0,8,99,8,27,8,8,8,8,8,8,8,8,8,8,8,162,131,136,30,99,14,11,8,8,17,11,8,137,8,8,8,89,51,75,8,21,23,29,31,8,0,41,74,27,28,51,11,19,83,71,14,14,0,30,50,68,21,50,51,19,23,11,66,64,61,51,8,6,23,2,26,28,29,31,160,0,8,8,8,8,8,8,19,123,50,123,51,11,68,99,14,99,14,116,8,8,8,84,136,41,62,126,70,8,8,122,11,72,8,71,8,8,8,8,21,22,23,24,25,2,26,27,28,29,30,4,31,8,2,71,8,126,68,51,68,75,8,8,34,71,69,19,68,61,60,19,116,74,71,9,83,84,8,71,30,2,64,2,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,6,23,28,27,83,8,66,8,19,8,0,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,30,27,19,131,73,11,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,27,27,162,83,84,29,85,8,19,99,21,6,22,23,24,25,2,26,27,28,29,30,4,31,8,66,66,27,60,116,8,19,170,171,170,172,172,173,174,175,176,177,174,176,175,177,174,176,175,177,178,179,180,181,182,181,182,183,184,185,186,187,188,189,190,191,192,192,192,193,194,0,0,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,90,90,90,94,94,94,0,0,0,0,0,93,90,94,90,94,90,94,90,94,94,90,94,90,94,94,90,94,90,94,0,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,90,94,0,90,94,0,93,195,196,197,198,199,200,198,0,0,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,58,38,38,38,38,59,0,0,0,0,0,0,0,59,59,69,17,38,17,14,59,69,58,38,17,14,59,69,58,38,17,14,17,17,14,14,14,59,69,58,38,14,59,69,58,38,14,0,14,14,17,17,38,69,69,14,14,59,69,58,38,0,0,14,59,69,58,38,17,14,59,69,58,38,14,69,14,17,14,59,69,58,38,17,14,59,69,58,38,69,14,14,14,17,0,14,14,14,0,14,14,0,0,14,69,69,14,59,69,58,38,38,14,59,58,17,14,59,69,58,38,17,14,59,69,58,38,17,14,59,69,58,38,38,14,17,14,59,69,58,38,174,175,176,177,174,176,175,177,174,176,175,177,178,179,0,0,0,0,0,102,103,104,105,106,102,103,104,105,106,102,103,104,105,106,102,104,0,0,0,0,0,0,0,0,0,0,0,0,0,102,103,104,105,106,102,103,104,105,106,103,105,106,102,102,103,104,105,106,102,103,104,105,106,104,102,103,105,106,102,102,105,106,103,102,0,102,103,104,105,106,102,103,104,105,106,102,103,104,105,106,0,102,103,104,105,106,0,98,98,98,98,100,0,0,0,0,0,100,100,99,100,101,98,99,100,101,98,99,100,101,98,99,100,101,98,99,99,100,101,98,99,99,100,101,98,99,99,100,101,98,98,99,99,99,100,101,98,99,99,99,99,99,100,101,98,99,100,101,98,99,100,101,98,99,100,101,98,101,99,100,101,98,99,99,100,101,98,100,101,201,202,203,204,202,203,201,204,202,203,201,204,205,206,0,34,34,0,0,34,34,34,34,34,34,34,34,34,0,0,34,0,0,0,34,0,0,0,34,34,0,34,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,118,118,118,118,0,0,0,118,118,118,118,118,118,118,118,118,118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,0,0,50,49,50,49,50,49,50,49,50,49,49,50,49,49,49,49,50,49,50,49,49,50,49,50,49,50,50,50,49,50,49,50,49,50,49,49,50,49,50,49,50,49,50,0,0,123,122,123,122,122,122,123,122,123,122,122,122,123,122,122,122,122,122,123,122,122,123,122,123,122,122,122,122,123,123,122,122,122,123,122,122,122,123,122,123,122,123,122,122,123,122,122,123,122,18,0,0,0,77,77,0,124,124,77,77,51,51,51,51,18,51,124,77,18,51,124,77,18,51,124,77,18,51,124,77,18,18,51,124,77,51,51,18,124,18,18,18,51,124,77,18,51,124,77,18,51,77,18,51,18,51,124,77,18,51,124,77,51,51,51,51,51,51,51,18,51,18,51,124,77,51,51,0,18,51,124,77,18,18,51,124,77,18,51,124,77,18,51,124,77,18,51,124,77,170,171,170,172,172,181,182,181,182,43,0,0,43,11,43,11,43,11,43,11,43,11,43,11,11,43,43,11,43,43,11,43,11,43,11,11,11,11,11,11,11,43,11,11,43,11,11,11,11,11,11,11,11,11,11,11,11,11,11,43,11,11,11,11,11,11,11,43,11,11,43,11,11,11,43,11,43,43,11,43,11,11,11,43,11,43,11,128,0,0,0,128,128,0,60,41,60,128,41,60,128,41,60,41,60,41,60,41,41,60,60,60,60,60,41,41,60,60,41,128,41,60,60,41,41,60,41,60,128,60,41,60,60,60,41,60,60,41,60,128,60,60,60,60,60,60,60,60,60,41,60,128,60,60,60,60,60,128,60,41,0,41,41,41,60,60,41,60,41,41,60,128,41,60,128,41,60,128,41,60,128,60,173,0,0,0,131,64,130,131,64,130,131,64,130,131,64,130,131,64,130,131,64,64,130,131,64,130,131,64,130,0,64,130,131,131,64,130,131,64,64,131,64,130,64,130,130,131,130,64,130,131,64,130,131,131,0,64,64,130,64,130,131,131,64,64,130,131,64,64,130,131,64,130,131,131,64,130,131,64,130,131,67,0,0,68,67,68,67,68,68,67,68,67,68,67,67,68,68,68,67,67,68,67,67,67,68,67,67,68,67,68,67,68,68,67,68,67,68,68,68,68,67,68,67,67,68,67,68,67,68,67,68,36,0,135,135,0,0,0,0,19,19,19,36,62,135,126,19,36,62,135,126,19,36,36,19,19,19,19,36,62,135,126,19,36,62,135,126,19,36,62,135,126,19,19,19,19,19,36,62,135,126,19,62,19,19,19,62,19,36,62,135,126,36,62,135,126,19,36,36,62,62,135,126,19,36,62,135,126,19,19,19,19,19,36,62,135,126,19,19,126,19,19,19,19,62,36,62,135,126,19,19,19,36,62,135,126,19,19,19,19,19,19,19,19,19,36,62,135,126,19,19,62,19,19,62,19,19,19,19,126,19,36,62,135,126,19,19,62,126,36,62,135,126,19,19,126,19,19,62,19,36,62,135,126,19,36,62,19,36,62,135,126,19,36,62,135,126,19,19,36,62,135,126,19,19,36,62,135,126,19,19,0,0,72,137,72,137,72,137,72,137,72,137,72,137,72,72,137,72,137,72,72,72,137,72,137,137,137,72,72,72,137,72,137,72,137,72,137,72,137,72,137,0,0,139,0,0,139,74,74,116,139,74,116,139,74,116,139,74,116,139,74,74,116,74,116,139,116,116,74,116,139,74,74,116,139,74,116,139,74,74,116,116,74,74,74,74,116,139,74,116,139,116,74,74,116,74,116,74,116,139,74,139,116,74,74,116,139,74,116,139,74,116,139,74,116,139,74,74,116,139,116,191,192,192,192,45,0,0,0,0,71,71,70,45,75,71,70,45,75,71,70,45,75,71,70,45,75,71,70,45,70,45,75,71,75,71,70,45,75,70,45,70,70,45,45,75,71,70,45,75,71,70,45,75,71,70,45,75,71,70,70,45,75,71,75,70,45,75,71,71,75,71,70,45,71,70,71,70,45,75,71,71,75,71,71,71,70,45,75,71,70,45,70,45,75,71,70,45,75,71,70,45,75,71,70,45,75,71,138,79,79,138,79,79,79,0,0,0,0,79,79,138,73,73,61,79,138,73,61,79,138,73,61,79,138,73,61,79,138,73,61,79,73,73,73,61,79,138,73,61,61,79,138,73,61,79,61,61,79,138,73,61,79,138,73,73,61,61,73,61,79,138,73,73,61,79,138,73,61,61,79,138,79,73,73,73,61,79,138,73,61,61,61,79,138,73,61,61,79,138,73,61,79,138,73,73,61,79,138,73,61,79,138,73,0,0,134,136,134,136,134,136,134,136,134,136,134,136,134,136,0,134,136,134,136,134,136,134,136,136,136,134,136,134,136,134,136,134,136,134,136,134,136,134,136,42,141,142,125,0,125,125,40,0,0,40,0,0,40,0,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,42,141,142,40,125,125,42,141,142,40,125,42,141,142,40,125,42,42,141,141,142,142,40,40,125,42,141,142,40,125,42,141,142,40,42,141,142,40,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,42,141,142,40,125,42,141,142,40,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,125,42,141,142,40,207,208,209,63,63,63,0,0,0,0,0,0,0,0,0,0,63,0,63,0,63,85,85,85,85,85,63,63,63,63,85,63,85,85,63,63,63,85,63,85,63,85,63,63,85,85,0,63,63,63,63,85,63,63,63,85,63,85,63,63,85,63,85,85,0,63,63,0,0,63,63,85,63,63,85,63,85,63,85,63,85,0,85,0,0,0,0,0,63,85,0,0,148,147,148,0,148,147,147,0,147,148,147,148,147,147,147,147,147,148,147,148,147,148,147,147,148,147,147,147,147,148,147,148,147,148,147,148,147,210,211,212,212,0,0,155,156,155,156,155,155,156,0,155,156,155,155,155,155,156,155,156,155,156,155,155,155,155,155,155,156,155,156,155,156,155,156,86,86,86,0,0,0,66,66,66,159,66,86,159,66,86,66,159,66,66,66,86,66,86,66,66,86,66,159,66,86,159,66,86,159,66,86,159,66,66,66,66,66,66,66,159,66,66,66,66,86,66,159,66,86,159,66,86,159,66,86,159,66,86,66,66,0,0,0,162,162,160,161,162,160,161,160,161,160,161,161,160,161,160,161,160,161,161,160,161,162,0,160,161,162,160,161,160,162,160,161,162,162,160,161,162,162,161,160,161,160,161,160,161,0,162,160,161,162,160,161,162,160,161,162,162,160,161,163,163,163,0,0,0,163,83,83,9,163,163,163,9,9,83,163,83,9,163,83,9,163,83,9,163,83,9,163,9,83,83,83,83,83,83,9,163,83,9,83,9,163,83,9,163,9,83,163,163,83,9,9,163,83,9,83,163,83,83,83,83,163,163,83,9,83,83,83,163,83,9,83,83,9,163,163,83,83,83,83,83,163,83,163,83,9,83,9,83,163,83,9,9,83,83,83,83,83,163,83,9,163,83,9,163,83,9,83,0,0,0,9,163,83,9,9,183,184,185,186,166,166,166,166,0,0,166,84,166,84,166,84,166,84,84,84,166,84,0,166,84,166,84,84,84,84,84,166,84,84,84,166,84,84,84,166,84,84,166,84,84,84,166,84,166,84,166,84,84,166,84,187,188,189,190,0,168,168,0,167,167,167,168,167,168,167,168,167,168,168,167,167,168,167,167,168,168,168,167,168,168,168,167,168,167,168,0,167,167,167,168,167,167,168,167,168,167,168,167,168,167,168,167,0,167,168,213,214,94,94,94,0,0,169,169,169,169,169,169,169,169,169,169,169,169,0,169,169,0,169,169,169,169,0,169,169,169,169,169,0,198,199,200,198,164,0,0,0,0,164,164,164,0,87,164,87,164,87,87,164,87,164,87,164,87,164,87,87,87,87,164,87,87,87,164,87,87,164,164,87,164,164,164,164,164,87,164,87,164,87,87,164,164,164,164,87,87,87,164,87,87,87,164,87,87,164,87,164,87,164,87,164,87,164,87,164,0,193,194],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,2,3,4],5],0,0,0,[[],[[1,[6,7]]]],[8,1],[8,1],[[8,9],10],[8,[[1,[11]]]],[8,1],[8,12],[8,[[1,[11]]]],[8,1],[8,1],[8,1],[8,13],[8,12],[8,1],0,[[],8],0,0,0,0,[[8,14,15,16],17],0,0,0,0,0,0,0,0,0,0,0,0,[[],8],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[8,18],19],0,0,0,0,0,0,0,[3,[[10,[6]]]],0,0,0,0,0,0,[[20,3,3,3,3,15]],0,[8],[21,21],[6,6],[22,22],[23,23],[24,24],[25,25],[2,2],[26,26],[27,27],[28,28],[29,29],[30,30],[4,4],[31,31],[8,8],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[6,6],32],[[23,23],32],[[2,2],32],[[26,26],32],[[28,28],32],[[29,29],32],[[31,31],32],0,0,0,0,0,0,0,0,[[3,3],[[1,[27,7]]]],[[33,34,16],8],0,0,0,0,0,0,[[],30],0,0,[2,3],[[],[[35,[21]]]],[[],[[35,[22]]]],[[],[[35,[23]]]],[[],[[35,[24]]]],[[],[[35,[25]]]],[[],[[35,[2]]]],[[],[[35,[26]]]],[[],[[35,[27]]]],[[],[[35,[28]]]],[[],[[35,[29]]]],[[],[[35,[30]]]],[[],[[35,[4]]]],[[],[[35,[31]]]],[[],[[35,[8]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[8,36,37],38],0,0,0,0,0,0,0,0,[[6,6],15],[[22,22],15],[[23,23],15],[[24,24],15],[[25,25],15],[[2,2],15],[[26,26],15],[[27,27],15],[[28,28],15],[[29,29],15],[[4,4],15],[[31,31],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[8,39],0,0,[[8,40],[[10,[18]]]],0,[[8,18],41],[[8,42],[[44,[43]]]],[[8,23],[[44,[36]]]],[[8,43,43],[[10,[36]]]],[[8,3],[[10,[45]]]],[[21,46],[[35,[47]]]],[[6,46],[[35,[47]]]],[[22,46],[[35,[47]]]],[[23,46],[[35,[47]]]],[[23,46],[[35,[47]]]],[[24,46],[[35,[47]]]],[[25,46],[[35,[47]]]],[[2,46],[[35,[47]]]],[[26,46],[[35,[47]]]],[[27,46],[[35,[47]]]],[[28,46],[[35,[47]]]],[[28,46],[[35,[47]]]],[[29,46],[[35,[47]]]],[[30,46],[[35,[47]]]],[[4,46],[[35,[47]]]],[[31,46],[[35,[47]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[48,2],[3,[[10,[2]]]],[3,[[35,[6]]]],0,0,[[29,[10,[20]]],20],[[8,49],50],[[8,18],51],[8,52],[8,53],[[8,36],54],[8,55],[8,30],[8,14],[8,5],[8,56],[[],57],[[],57],[[],57],[[],57],[[],57],[[],57],[[],57],[[],57],[[8,43],11],[[8,43],58],[[8,43],59],[[8,41],60],[8,[[54,[20]]]],[[8,61],10],[[8,62,63],[[1,[64]]]],[8,65],[[8,36],[[54,[36]]]],[[8,41],1],[[8,41,63],1],[[8,41],19],[8,66],[[8,67],68],[[8,36],19],[[8,36],69],[[8,70],[[1,[71]]]],[[8,43],72],[[8,61],73],[[8,45],71],[[8,43],74],[[8,3],[[10,[71]]]],[[8,70],75],[[8,41,41,43],[[10,[73]]]],[[8,41,63],[[1,[73]]]],[[8,41],[[1,[73]]]],[[8,41],[[1,[73]]]],0,0,0,[[8,22,52,76]],[[8,18,77]],[[8,5]],[[8,18,5]],[[8,45,[1,[78]]]],[22],[23],[24],[25],[2],[26],[28],[31],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[8,74]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[2,15],0,[[8,36,36,79],15],[2,15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],80],0,[8],0,0,0,0,0,0,0,0,[29,[[1,[20,7]]]],0,[[20,16],8],0,0,0,0,0,[[8,16]],0,[8,81],[[1,[10,[26]],4]],[[8,49],[[10,[50]]]],[[8,18],[[10,[51]]]],[[8,43],[[10,[11]]]],[[8,41],[[10,[60]]]],[[8,67],[[10,[68]]]],[[8,36],[[10,[19]]]],[[8,43],[[10,[72]]]],[[8,61],[[10,[73]]]],[[8,45],[[10,[71]]]],[[8,43],[[10,[74]]]],[[8,70],[[10,[75]]]],0,0,0,0,0,0,0,[[8,16]],[[8,16]],0,0,[[8,14,16],17],0,[[8,41],60],[[8,36],19],[[8,61],73],0,0,0,0,0,[82,23],[76,[[10,[29]]]],[3,[[10,[31]]]],[8,14],0,0,0,[[],[[10,[28]]]],[28,28],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[6,6],[[10,[32]]]],[[23,23],[[10,[32]]]],[[2,2],[[10,[32]]]],[[26,26],[[10,[32]]]],[[28,28],[[10,[32]]]],[[29,29],[[10,[32]]]],[[31,31],[[10,[32]]]],0,0,[[8,9],[[44,[83]]]],[[8,9],[[44,[84]]]],[[8,9,85,86],[[44,[84]]]],[[8,9,85,86],[[44,[83]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[8,16]],[[8,16]],[8],0,0,0,0,0,0,[[8,36],54],0,0,0,0,0,0,[8,85],0,[8],[8],[21,35],[22,35],[23,35],[24,35],[25,35],[2,35],[26,35],[27,35],[28,35],[29,35],[30,35],[4,35],[31,35],[8,35],[2,3],0,[[8,87,87],10],0,0,0,0,0,[[8,43,43],10],[[8,43,43,63],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[2,15],0,[2,48],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],20],[[],20],[[],20],[[1,4]],0,0,0,0,0,0,0,[[8,14,16]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,0,0,0,0,0,[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[2,81],[[2,3],[[1,[7]]]],0,0,0,[[],29],0,[8,15],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],0,[[],[[35,[89]]]],0,[[]],[8,89],[[55,16],89],[[]],[[],15],0,[89,35],[[],35],[[],35],[[],88],[[]],0,0,0,0,0,0,0,0,0,[[8,[1,[90]],91,63],[[92,[18,91]]]],[[8,[1,[90]],91,93],[[92,[18,91]]]],0,[[]],[[]],[[]],[[]],[90,90],[94,94],[[]],[[]],[[87,8],94],[[90,90],32],[[94,94],32],[[],[[35,[90]]]],[[],[[35,[94]]]],[[87,8],94],[[90,90],15],[[94,94],15],[[],15],[[],15],[[8,63]],[[90,46],95],[[94,46],95],[[]],[[]],[[],57],[[],57],[90],[94],[[]],[[]],[[],15],[[],15],[[90,90],[[10,[32]]]],[[94,94],[[10,[32]]]],[90,35],[94,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[62,64,63,85,8],[[10,[91]]]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[8,[1,[90]],91,93],[[92,[18,91]]]],0,[[]],[[]],[93,93],[[]],[[],1],[[],93],[[],96],[[]],[[]],[[],15],[[]],[[],35],[[],35],[[],88],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[38,17,8]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[14,8]],0,0,0,0,[14,14],[59,59],[69,69],[58,58],[38,38],[[]],[[]],[[]],[[]],[[]],0,0,[[14,8]],[[],14],0,0,[[38,8]],[[],[[35,[69]]]],[[69,69],[[1,[20]]]],0,[[14,14],15],[[59,59],15],[[69,69],15],[[58,58],15],[[38,38],15],[[8,[1,[18]],17]],[[8,[1,[67]]]],[[14,46],95],[[59,46],95],[[69,46],95],[[58,46],95],[[38,46],95],[[]],[[]],[[]],[[]],[[]],[[]],[[14,8],20],[[19,30],69],[14,3],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],0,[[8,[1,[97]]],[[44,[14]]]],[[8,20,16],[[44,[14]]]],0,0,[[8,36,[1,[27]],17]],[[],14],0,0,0,0,0,[[8,36,81,43],[[1,[36]]]],[[43,8,17]],[[14,8]],[69,35],0,[[]],[[]],[[]],[[]],[[]],[[38,8],98],[[14,8],99],[[59,8],100],[[58,8],101],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[],88],[[],88],[38,38],[[14,8]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[35,[102]]]],[[],[[35,[103]]]],[[],[[35,[104]]]],[[],[[35,[105]]]],[[],[[35,[106]]]],0,0,[107],[107],[107],[107],[[107,8],44],[107],[107],[107],[[107,8],44],[107],[107],[107],[107],[[102,46],95],[[103,46],95],[[104,46],95],[[105,46],95],[[106,46],95],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],15],0,[[102,8],44],0,0,0,0,0,0,0,0,0,[107],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[],88],[[107,8],[[44,[99]]]],[[]],[[]],[[]],[[]],[[]],[107],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[99,99],[100,100],[101,101],[98,98],[[]],[[]],[[]],[[]],0,[[],[[35,[99]]]],[[],[[35,[100]]]],[[],[[35,[101]]]],[[],[[35,[98]]]],0,[[]],[[]],[[]],[[]],[99,3],[[]],[[]],[[]],[[]],[[98,8],[[44,[38]]]],[[99,8],[[44,[14]]]],[[99,8],14],[[],15],[[],15],[[],15],[[],15],0,0,0,0,[99,35],[100,35],[101,35],[98,35],[[]],[[]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[],88],0,[[]],[[]],[[]],[[]],[[100,43,8],[[44,[59]]]],[[101,43,8],[[44,[58]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],0,0,[[],108],[34,34],[[]],[[],34],[[]],[109,34],[[]],[[],15],0,[[8,[111,[110]],37,81,81,16],[[92,[110,87]]]],0,0,0,[112,[[1,[81]]]],[112,1],[[]],0,0,[[52,113],113],[[],35],[[],35],0,[[],88],[[]],0,[[1,53,16]],[[76,114,114,115],77],[[76,41,8],20],[[13,8,15,16],[[1,[51]]]],[52,1],[[52,113],15],[[8,16],[[1,[68]]]],[[110,52,92,8],44],0,0,[11,74],[[8,11],[[10,[74]]]],[[74,11]],[[8,11],[[10,[74]]]],[[8,11],[[10,[74]]]],[[8,43],1],[11,74],[11,[[10,[74]]]],0,[[74,30,11,[1,[1]]]],[43,74],[[8,11],74],[8],[[8,11],[[10,[74]]]],[[74,116]],[[11,8],[[10,[74]]]],[[116,11],10],[[74,11]],[74],[[11,8],[[10,[74]]]],[[8,11],[[10,[74]]]],[[74,11],[[10,[74]]]],[11],[36,[[1,[64]]]],[11,[[10,[74]]]],[[74,11],[[10,[74]]]],[[64,64],116],[[36,36,1],[[10,[64]]]],[[]],[[11,8],[[10,[74]]]],0,[[]],[[]],0,0,[[117,8,92,118],44],[[119,92,92,8],44],[[8,33,16]],[[]],[[]],[[],15],[8,118],0,0,[[],35],[[],35],[[],88],[[]],[[60,60,11],[[44,[112]]]],[[[1,[73]]],[[1,[73]]]],[[11,8],[[10,[[92,[79]]]]]],[[8,11],[[1,[73]]]],[[11,8],[[1,[73]]]],[[8,[1,[73]],79],[[1,[73]]]],[[120,120],79],[[11,8],44],[[121,121],112],[[[1,[73]],8,11],[[1,[73]]]],[[11,60,60],112],[[11,60,60],112],[[8,11],[[1,[73]]]],[[43,41,41],61],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[49,49],[50,50],[[]],[[]],[[49,49],32],[[],[[35,[49]]]],[[],[[35,[50]]]],[[49,49],15],[[],15],[[49,46],95],[[49,46],95],[[50,46],95],[[]],[[]],[[],57],[49],0,[[]],[[]],[[],15],[[],15],0,0,[[49,49],[[10,[32]]]],0,[49,35],[50,35],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[5,[[10,[[1,[5]]]]]],[[122,8],44],[123,123],[122,122],[[]],[[]],[122],[[122,122],15],[[],[[35,[123]]]],[[],[[35,[122]]]],[8,[[1,[122]]]],[8,[[111,[36]]]],[122,122],[[122,46],95],[[]],[[]],0,[[]],[[]],[[],15],[[],15],[[8,[1,[122]],15,15],[[1,[122]]]],[[8,[1,[122]]],[[1,[122]]]],[[[1,[122]],37],[[1,[[1,[122]]]]]],0,0,[122],[[122,8,122],15],0,[123,35],[122,35],[[8,41,111],[[44,[122]]]],[[122,8],[[44,[123]]]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[122,8,122,15,15],15],[[],88],[[],88],[122],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[51,8],10],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[18,18],[51,51],[124,124],[77,77],[[]],[[]],[[]],[[]],[[18,18],32],[[],[[35,[18]]]],[[],[[35,[51]]]],[[],[[35,[124]]]],[[],[[35,[77]]]],0,[[51,8],10],[[18,18],15],[[124,124],15],[[],15],[[18,46],95],[[18,46],95],[[51,46],95],[[124,46],95],[[77,46],95],[[]],[[]],[[]],[[]],[[],57],[[51,6],15],[77,15],[18],0,[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],0,0,0,[51,5],0,0,0,[[18,18],[[10,[32]]]],0,[18,35],[51,35],[124,35],[77,35],[51,41],0,[[87,8],10],[[]],[[]],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[43,43],[11,11],[[]],[[]],[[43,43],32],0,[[],[[35,[43]]]],[[],[[35,[11]]]],0,[[43,43],15],[[],15],[[11,43,8],[[10,[19]]]],[[43,46],95],[[43,46],95],[[11,46],95],[[]],[[]],[[],57],[[11,8,63],[[1,[41]]]],[[11,8,63],[[1,[41]]]],[[11,8],125],[[11,8],[[1,[126]]]],[[11,8],[[1,[36]]]],[[11,8],[[1,[36]]]],[[11,8],127],[43],0,0,[[]],[[]],[11,15],[11,15],[[11,8],15],[[11,8],15],[11,15],[11,15],[[11,8],15],[11,15],[[11,8],15],[11,15],[[11,8],15],[11,15],[11,15],[[],15],[[],15],0,0,0,[[11,[10,[20]],8],20],0,0,[[43,43],[[10,[32]]]],0,0,[43,35],[11,35],[[11,8],[[10,[62]]]],[[11,8],[[10,[62]]]],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[11,61]],0,[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[60,60],[[]],[[]],[[41,41],32],[[60,60],128],[129,41],[[],[[35,[41]]]],[[],[[35,[60]]]],0,[[60,121],[[10,[81]]]],0,0,[[],41],[41,129],[[60,43],113],[[60,43],121],[[41,41],15],[[128,128],15],[[],15],[60,113],[60,121],[[41,46],95],[[41,46],95],[[60,46],95],[[]],[[]],[[]],[60,62],[[],57],[[60,19,15],[[10,[[54,[79]]]]]],[[60,8],126],[60,52],[41],0,[60,[[1,[43]]]],[[]],[[]],[[]],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[60,15],[[],15],[[],15],[[],15],0,0,[60,113],[60,121],[60,81],[[],128],[[60,30],5],0,[3,[[1,[79]]]],[[41,41],[[10,[32]]]],0,[41,35],[60,35],0,[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[64,64],[130,130],[131,131],[[]],[[]],[[]],[[64,64],32],[[130,130],32],[[131,131],15],0,[[],[[35,[64]]]],[[],[[35,[130]]]],[[],[[35,[131]]]],[[64,64],15],[[130,130],15],[[131,131],15],[[],15],[[],15],[[132,8],[[44,[62]]]],[[64,46],95],[[130,46],95],[[131,46],95],[[43,8],[[13,[64,131]]]],[[]],[[]],[[]],0,[[133,8],[[44,[64]]]],0,[[],57],[[],57],[64],[130],0,0,0,[[]],[[]],[[]],[[],15],[[],15],[[],15],0,[[[1,[112]],62,62],[[44,[112]]]],0,[[64,64],[[10,[32]]]],[[130,130],[[10,[32]]]],[64,35],[130,35],[131,35],[[131,8]],0,[[]],[[]],[[]],[[64,8],133],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[68,5],[67,67],[68,68],[[]],[[]],[[67,67],32],[[],[[35,[67]]]],[[],[[35,[68]]]],0,0,[[67,67],15],[[],15],0,[[67,46],95],[[67,46],95],[[]],[[]],[[],57],[67],0,[[]],[[]],[[],15],[[],15],0,[[67,67],[[10,[32]]]],0,[67,35],[68,35],0,0,0,[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,0,0,0,[19,134],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[36,[[1,[62]]]],[36],0,[[19,28],1],[19,1],[19,1],[36,36],[62,62],[135,135],[126,126],[19,19],[[]],[[]],[[]],[[]],[[]],[[36,36],32],[[62,62],32],[[135,135],32],[[126,126],32],[[19,19],128],0,0,0,0,[[],[[35,[36]]]],[[],[[35,[62]]]],[[],[[35,[135]]]],[[],[[35,[126]]]],[[],[[35,[19]]]],0,[[19,41]],[[19,43],62],[[19,43],62],[[62,8],43],0,[[36,36],15],[[62,62],15],[[135,135],15],[[126,126],15],[[],15],[[],15],[[],15],[[],15],[[19,41,37],[[10,[41]]]],[[36,46],95],[[36,46],95],[[62,46],95],[[62,46],95],[[135,46],95],[[126,46],95],[[19,46],95],[[]],[[]],[[]],[[]],[[]],[19,5],[[19,8],112],[[19,28,8],[[44,[52]]]],[19,81],[[],57],[[],57],[[],57],[[],57],[[19,41,41],[[1,[41]]]],[[19,[10,[20]]],20],[[126,8],60],[19,125],[19,52],[19,81],[[19,8],[[10,[136]]]],[[62,2,8],15],[36],[62],[135],[126],[[19,8,28],15],0,[[19,43],1],[[]],[[]],[[]],[[]],[[]],[19,15],[[19,8],15],[19,15],[19,15],[19,15],[19,15],[19,15],[19,15],[[],15],[[],15],[[],15],[[],15],[[],15],[19,[[1,[27]]]],[[62,63,8],[[1,[41]]]],0,[19,81],[[62,8],41],[19,[[10,[28]]]],0,0,[[19,43],43],[126,126],[[19,41],[[10,[41]]]],[[36,36],[[10,[32]]]],[[62,62],[[10,[32]]]],[[135,135],[[10,[32]]]],[[126,126],[[10,[32]]]],0,[[19,[1,[27]]]],0,0,[36,35],[62,35],[135,35],[126,35],[19,35],[[19,81],[[44,[112]]]],0,0,[19,96],[[62,8],43],0,[[]],[[]],[[]],[[]],[[]],[[],20],[[],20],0,[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[],88],[[],88],0,[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[72,72],[137,137],[[]],[[]],[[],[[35,[72]]]],[[],[[35,[137]]]],[[72,72],15],[[137,137],15],[[72,36]],[[72,46],95],[[137,46],95],[[]],[[]],[[72,61,8],138],0,[[]],[[]],[[],15],[[],15],0,0,[[8,43],72],0,[72,35],[137,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,[[74,91,91,8],44],[[]],[[]],[[]],[[]],[[]],[[]],[74,74],[116,116],[139,139],[[]],[[]],[[]],[[74,11],15],[[74,11],15],[[116,64,11],15],[[],[[35,[74]]]],[[],[[35,[116]]]],[[],[[35,[139]]]],[[116,131,138]],[[116,131]],[[74,74],15],[[116,116],15],[[139,139],15],[[74,8],140],[[74,46],95],[[116,46],95],[[139,46],95],[[]],[[]],[[]],[[74,5,11],91],[[8,43],1],[[116,64],138],[[116,61,11],138],0,[[140,43,8],[[44,[74]]]],[[74,15,11],15],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[116,11],[[10,[91]]]],[[74,11],[[54,[64]]]],[[8,43],74],[[],116],0,0,[74,35],[116,35],[139,35],[74,91],[139,91],0,0,[[]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[74,11],44],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[71,8],[[1,[9]]]],[[71,8],[[44,[[1,[83]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[70,70],[45,45],[75,75],[71,71],[[]],[[]],[[]],[[]],[[70,70],32],[[45,45],32],[[],[[35,[70]]]],[[],[[35,[45]]]],[[],[[35,[75]]]],[[],[[35,[71]]]],0,0,[[70,70],15],[[45,45],15],[[75,75],15],[[],15],[[],15],[[70,46],95],[[70,46],95],[[45,46],95],[[45,46],95],[[75,46],95],[[71,46],95],[[]],[[]],[[]],[[]],[[],57],[[],57],0,0,[70],[45],0,0,0,[[]],[[]],[[]],[[]],0,[[],15],[[],15],[[],15],[[],15],0,0,0,[[70,70],[[10,[32]]]],[[45,45],[[10,[32]]]],[71,3],0,0,[70,35],[45,35],[75,35],[71,35],0,0,0,0,0,[[]],[[]],[[]],[[]],[[],20],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[73,120],[73,15],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[61,61],[79,79],[138,138],[73,73],[[]],[[]],[[]],[[]],[[61,61],32],[[79,79],32],[[73,73],15],[73,[[10,[113]]]],[[73,8],[[10,[62]]]],[[],[[35,[61]]]],[[],[[35,[79]]]],[[],[[35,[138]]]],[[],[[35,[73]]]],0,[[61,61],15],[[79,79],15],[[138,138],15],[[73,73],15],[[],15],[[],15],[[61,46],95],[[61,46],95],[[79,46],95],[[138,46],95],[[73,46],95],[[]],[[]],[[]],[[]],0,[[],57],[61],0,[[]],[[]],[[]],[[]],[[73,8],15],[[],15],[[],15],[[],15],[[],15],0,[[61,61],[[10,[32]]]],[[79,79],[[10,[32]]]],[[138,138],[[10,[32]]]],[79,15],[[73,63,8]],[[73,8],15],[[73,11,8],15],[61,35],[79,35],[138,35],[73,35],0,[[61,8],64],[[]],[[]],[[]],[[]],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],0,[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[134,134],[136,136],[[]],[[]],[[],[[35,[134]]]],[[],[[35,[136]]]],[[134,134],15],[[136,136],15],[[8,36],136],[[134,46],95],[[136,46],95],[[]],[[]],[[]],[[]],[[],15],[[],15],[8,[[1,[136]]]],0,[[],134],0,[134,35],[136,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[125,125],[42,42],[141,141],[142,142],[40,40],[[]],[[]],[[]],[[]],[[]],[[125,125],32],[[42,42],32],[[141,141],32],[[142,142],32],[[40,40],32],[[],[[35,[42]]]],[[],[[35,[141]]]],[[],[[35,[142]]]],[[],[[35,[40]]]],[3,5],[[125,125],15],[[42,42],15],[[141,141],15],[[142,142],15],[[40,40],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[125,46],[[35,[47]]]],[[42,46],[[35,[47]]]],[[42,46],[[35,[47]]]],[[141,46],[[35,[47]]]],[[141,46],[[35,[47]]]],[[142,46],[[35,[47]]]],[[142,46],[[35,[47]]]],[[40,46],[[35,[47]]]],[[40,46],[[35,[47]]]],[[]],[[]],[[]],[[]],[[]],[3,125],[[],57],[[],57],[[],57],[[],57],[42],[141],[142],[40],[40,82],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],15],[[125,125],[[10,[32]]]],[[42,42],[[10,[32]]]],[[141,141],[[10,[32]]]],[[142,142],[[10,[32]]]],[[40,40],[[10,[32]]]],[42,35],[141,35],[142,35],[40,35],[[]],[[]],[[]],[[]],[[]],[[],20],[[],20],[[],20],[[],20],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[],88],[[],88],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],[[1,[63]]]],0,0,0,0,0,[[63,[144,[[143,[63]]]]]],[[63,[144,[[143,[63]]]]]],[[63,[144,[[143,[63]]]]]],[[]],[[]],[[]],[[]],0,[[63,60,8],15],[[63,19,8],15],[63,63],[85,85],[[]],[[]],[[63,63],32],[[],85],[[],[[35,[63]]]],[145,[[35,[[143,[63]]]]]],[[],[[35,[85]]]],0,0,[129,63],[63,129],[[63,143],15],[[63,63],15],[[85,85],15],[[],15],[[63,[1,[41]],8],[[1,[41]]]],[[63,46],95],[[85,46],95],[[]],[[]],[2,63],[[]],[[]],[[],15],[[],15],0,0,[63],[[63,63],[[10,[32]]]],0,[91,5],[63,35],[[[143,[63]],146],35],[85,35],[[63,[144,[[143,[63]]]]]],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],0,0,[5,91],0,0,0,0,[[]],[[]],0,[[64,63,8],91],0,0,0,0,0,0,0,0,[[147,5],[[92,[5,5]]]],[[]],[[]],[[]],[[]],[[147,5,5],10],[[147,1,1],10],[147,147],[[]],[[148,149],147],[[],[[35,[147]]]],[[]],[[]],[[]],[[]],[147,15],[[],15],[[],15],[147,148],[147,35],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[[155,[[0,[150,151,152,153,154]]]]],[[155,[[0,[150,151,152,153,154]]]]]],[[]],[[],[[35,[[156,[[0,[151,152,153]]]]]]]],[145,[[35,[[155,[[0,[157,151,152,153,154]]]]]]]],[[]],[[]],[[[155,[[0,[151,152,153,154]]]],[0,[151,152,153,154]]],158],[[[155,[[0,[151,152,153,154]]]],[0,[151,152,153,154]]],158],[[[155,[[0,[151,152,153,154]]]],149]],0,0,[[]],[[]],[[],15],[[],15],[[],[[155,[[0,[151,152,153,154]]]]]],0,[[[155,[[0,[151,152,153,154]]]]],35],[[]],[[[155,[[0,[151,152,153,154]]]],5],[[0,[151,152,153,154]]]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],0,0,0,0,0,0,[[66,9,8],10],[[66,8,16]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[66,66],[86,86],[[]],[[]],[[],[[35,[66]]]],[[],66],[[86,86],15],[[66,8,148]],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],159],[[8,85,148,16],66],[[8,85,[1,[63]],16],66],[[8,85,[1,[63]],16],66],[[8,85,148,[1,[63]],16],66],0,[[66,9,8],[[10,[84]]]],[[66,9,8],[[10,[84]]]],[[159,8,9,85],[[10,[84]]]],[[66,9,85,86,8],[[10,[84]]]],[66,35],[[66,8,87,87],10],[[]],[[]],0,[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],[[]],[[]],[[]],0,0,0,0,0,[[43,8],[[10,[[54,[43]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[160,160],[161,161],[[]],[[]],[[161,161],32],[[],[[35,[160]]]],[[],[[35,[161]]]],[160,41],[161,62],[[160,160],15],[[161,161],15],[[],15],[160,41],[161,62],[8,[[1,[162]]]],[[61,8,54],[[1,[160]]]],[[160,46],95],[[161,46],95],[[]],[[]],[[]],[[160,8],112],[[]],[[]],[[]],[[162,8],[[1,[161]]]],[[],15],[[],15],[[],15],0,[[[54,[43]],8]],[[161,161],[[10,[32]]]],0,0,[160,35],[161,35],[[]],[[]],[[61,13],[[1,[61]]]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],0,[[]],[[]],[[]],0,0,0,0,0,0,0,[83,[[10,[160]]]],[[83,163,8]],0,[163,41],[163,164],[163,61],[[8,18,18,63],[[10,[9]]]],[[8,62,62,63],[[10,[9]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[163,163],[83,83],[9,9],[[]],[[]],[[]],[[163,163],32],0,[83,81],0,[[83,36],15],[83,163],[83,10],0,[[8,[1,[9]]],1],[[],[[35,[163]]]],[[],[[35,[83]]]],[[],[[35,[9]]]],[[83,8,163],81],0,[[163,163],15],[[83,83],15],[[9,9],15],[[],15],[[],15],[[83,8,[10,[96]]],91],[[163,8,81,[10,[81]]],[[44,[112]]]],[[163,46],95],[[83,46],95],[[9,46],95],[[9,46],95],[[]],[[]],[[]],[83,[[1,[41]]]],[[],57],[83,9],[[83,8,81],[[44,[163]]]],[83,165],[[83,8]],[163],[[]],[[]],[[]],[83,15],[83,15],[[83,61],15],[[],15],[[],15],[[],15],[83,15],[83,163],[[87,87,63,8],9],[[163,[10,[96]],63,8],96],[[163,[10,[96]],63,8]],[83,[[10,[163]]]],[[83,5,163,8]],[[8,[1,[163]],9,[1,[160]],[1,[41]]],83],[83,163],0,[[163,163],[[10,[32]]]],[83,114],[163,35],[83,35],[9,35],[[83,8],163],0,0,[[]],[[]],[[]],[[],20],[83,81],0,[[83,8],[[10,[112]]]],[[83,8,81],[[10,[112]]]],[[83,8],[[44,[52]]]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[],88],0,[8],[8],[[8,9]],[[87,87,63],9],[[]],[[]],[[]],[[87,87],9],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[166,166],[84,84],[[]],[[]],0,[[84,36],15],[[],[[35,[166]]]],[[],[[35,[84]]]],[[8,[1,[161]]],[[1,[160]]]],[[166,46],95],[[84,46],95],[[]],[[]],[[[1,[62]],9,91,[1,[161]],8],84],[84,91],[84,9],[84,1],[[]],[[]],[[84,8],[[44,[83]]]],[[84,8],[[44,[83]]]],[[],15],[[],15],[[[1,[166]],9,91,[1,[161]]],84],0,[166,35],[84,35],0,[[]],[[]],[[84,8],[[1,[52]]]],[[84,8],[[44,[52]]]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],0,[[]],[[]],0,0,0,0,0,0,0,0,[[167,87,8],[[92,[62,91]]]],[[167,8]],[[]],[[]],[[]],[[]],[167,167],[168,168],[[]],[[]],[[168,168],32],0,[[],[[35,[167]]]],[[],[[35,[168]]]],[[],167],0,[[168,168],15],[[],15],[[168,46],95],[[]],[[]],[[],57],[168],[[]],[[]],[[],15],[[],15],[[63,155,85,8],149],[[8,63,85,148],167],0,0,[[168,168],[[10,[32]]]],[[167,9,8],[[10,[84]]]],[167,35],[168,35],[[]],[[]],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],0,[[62,64,63,85,8],[[10,[91]]]],[[]],[[]],0,0,0,0,0,0,0,[[169,87,8],[[92,[62,91]]]],[[169,8,10]],[[]],[[]],[169,169],[[]],[[],[[35,[169]]]],[[],169],0,[[]],[[]],[[],15],[[155,10,8],149],[[8,10,148],169],0,[[9,8],84],[[169,9,8],[[10,[84]]]],[169,35],[[169,8,87,87],10],[[]],[[149,155,8,167,167]],[[],35],[[],35],[[],88],0,[[]],[[[1,[94]],8],[[1,[166]]]],0,0,0,0,0,0,0,0,0,0,[164,41],[164,61],[[96,114],96],[[]],[[]],[[]],[[]],[[87,81,8],[[10,[87]]]],[87,87],[164,164],[[]],[[]],[[87,87],32],[[164,164],32],[[],[[35,[87]]]],[[],[[35,[164]]]],[87,81],0,[[41,8],87],[[87,87],15],[[164,164],15],[[87,41,8],87],[[87,41,81,8],87],[[],15],[[],15],[[87,46],95],[[87,46],95],[[164,46],95],[[164,46],95],[[]],[[]],[[],57],[[164,8],112],[[164,8],127],[164],[[]],[[]],[[],15],[[],15],[87,41],0,[[64,[10,[96]],63,8],96],[[62,[10,[96]],63,8]],[164,[[10,[41]]]],[164,[[10,[61]]]],[[87,81,8],[[10,[87]]]],[[41,81],87],[[87,87],[[10,[32]]]],[[164,164],[[10,[32]]]],[[87,8],121],[[87,8]],[87,35],[164,35],[41,87],[[]],[[]],[[],20],[[],20],[[],35],[[],35],[[],35],[[],35],[[],88],[[],88],[[]],[[]],[[96,114],96],0,0],"p":[[3,"Vec"],[4,"LaneType"],[15,"str"],[4,"DrivingSide"],[15,"usize"],[4,"AmenityType"],[3,"Global"],[3,"Map"],[3,"PathRequest"],[4,"Option"],[3,"Intersection"],[8,"Iterator"],[3,"BTreeMap"],[3,"MapEdits"],[15,"bool"],[3,"Timer"],[3,"EditEffects"],[3,"BuildingID"],[3,"Road"],[3,"String"],[3,"Amenity"],[4,"AreaType"],[3,"OriginalRoad"],[4,"IntersectionKind"],[4,"IntersectionControl"],[4,"BufferType"],[3,"LaneSpec"],[4,"Direction"],[3,"NamePerLanguage"],[3,"MapConfig"],[4,"RestrictionType"],[4,"Ordering"],[3,"RawMap"],[3,"RawToMapOptions"],[4,"Result"],[3,"RoadID"],[8,"Fn"],[4,"EditCmd"],[4,"GeoJson"],[4,"OsmID"],[3,"LaneID"],[3,"NodeID"],[3,"IntersectionID"],[6,"Result"],[3,"TransitRouteID"],[3,"Formatter"],[3,"Error"],[15,"char"],[3,"AreaID"],[3,"Area"],[3,"Building"],[3,"Polygon"],[3,"Bounds"],[3,"BTreeSet"],[3,"CityName"],[3,"GPSBounds"],[15,"u64"],[3,"EditCrosswalks"],[4,"EditIntersection"],[3,"Lane"],[3,"TurnID"],[3,"DirectedRoadID"],[4,"PathConstraints"],[3,"MovementID"],[3,"MapName"],[3,"Pathfinder"],[3,"ParkingLotID"],[3,"ParkingLot"],[3,"EditRoad"],[3,"TransitStopID"],[3,"TransitRoute"],[3,"ControlStopSign"],[3,"Turn"],[3,"ControlTrafficSignal"],[3,"TransitStop"],[3,"Tags"],[4,"BuildingType"],[3,"Time"],[4,"TurnType"],[3,"AmenityTypeIter"],[3,"Distance"],[15,"i64"],[3,"Path"],[3,"PathV2"],[3,"RoutingParams"],[4,"PathfinderCaching"],[3,"Position"],[3,"TypeId"],[3,"City"],[4,"Spot"],[3,"Duration"],[3,"HashMap"],[3,"WalkingOptions"],[4,"WalkingNode"],[6,"Result"],[3,"Speed"],[15,"u8"],[4,"PermanentEditCmd"],[3,"PermanentMapEdits"],[4,"PermanentEditIntersection"],[3,"PermanentEditCrosswalks"],[3,"OriginalLane"],[3,"ChangeLaneType"],[3,"ReverseLane"],[3,"ChangeSpeedLimit"],[3,"ChangeAccessRestrictions"],[4,"Value"],[3,"App"],[3,"ArgMatches"],[3,"HashablePt2D"],[3,"HashSet"],[3,"PolyLine"],[3,"Line"],[15,"f64"],[3,"XorShiftRng"],[3,"Stage"],[3,"RawTransitRoute"],[3,"BorderSnapper"],[3,"RawTransitStop"],[3,"Angle"],[3,"Pt2D"],[3,"Perimeter"],[3,"Block"],[4,"OffstreetParking"],[4,"RoadRank"],[3,"RoadSideID"],[15,"isize"],[4,"CommonEndpoint"],[15,"u32"],[3,"CompressedMovementID"],[3,"Movement"],[3,"DirectedRoad"],[3,"Turn"],[3,"AccessRestrictions"],[4,"SideOfRoad"],[3,"Zone"],[3,"RoadWithStopSign"],[4,"TurnPriority"],[4,"StageType"],[3,"TrafficSignal"],[3,"WayID"],[3,"RelationID"],[3,"EnumSet"],[8,"Into"],[8,"Deserializer"],[8,"Serializer"],[4,"PathfindEngine"],[4,"CreateEngine"],[3,"InputGraph"],[8,"Clone"],[8,"Copy"],[8,"Ord"],[8,"Debug"],[8,"Serialize"],[3,"NodeMap"],[3,"InnerNodeMap"],[8,"Deserialize"],[6,"NodeId"],[3,"PathfinderCache"],[3,"UberTurn"],[3,"UberTurnV2"],[3,"IntersectionCluster"],[4,"PathStep"],[4,"Traversable"],[3,"VecDeque"],[4,"PathStepV2"],[3,"VehiclePathfinder"],[4,"Node"],[3,"SidewalkPathfinder"],[13,"ResidentialCommercial"],[13,"Commercial"],[13,"Residential"],[13,"One"],[13,"ChangeIntersection"],[13,"ChangeCrosswalks"],[13,"ChangeRouteSchedule"],[13,"ChangeRoad"],[13,"StopSign"],[13,"TrafficSignal"],[13,"Buffer"],[13,"PublicGarage"],[13,"Private"],[13,"Lane"],[13,"ContraflowLane"],[13,"Turn"],[13,"ContraflowTurn"],[13,"Along"],[13,"Contraflow"],[13,"Movement"],[13,"ContraflowMovement"],[13,"Fixed"],[13,"Variable"],[13,"Lane"],[13,"Turn"],[13,"Building"],[13,"Border"],[13,"DirectedRoad"],[13,"SidewalkEndpoint"],[13,"RideTransit"],[13,"LeaveMap"],[13,"ChangeRouteSchedule"],[13,"ChangeIntersection"],[13,"ChangeCrosswalks"],[13,"ChangeRoad"],[13,"TrafficSignal"],[13,"StopSign"],[13,"Node"],[13,"Way"],[13,"Relation"],[13,"CHSeedingNodeOrdering"],[13,"Dijkstra"],[13,"CH"],[13,"Road"],[13,"UberTurn"]]},\
"osm_viewer":{"doc":"","t":[5,5,0,6,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,12,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11],"n":["main","run","viewer","App","BusinessSearch","MinimapController","Viewer","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","businesses","calculate_tags","counts","draw","draw_baselayer","event","fixed_object_outline","from","from","from","has_zorder","highlight","hovering_on_amenity","hovering_on_amenity","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","make_legend","minimap","new","new_state","recalculate_top_panel","render","show","top_panel","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update","vzip","vzip","vzip"],"q":["osm_viewer","","","osm_viewer::viewer","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,3,12,10,3,12,10,3,12,10,3,12,10,3,3,12,3,3,3,3,3,12,10,10,12,12,12,3,12,10,3,12,10,10,3,12,10,3,12,10,10,3,12,3,3,12,12,3,3,12,10,3,12,10,3,12,10,12,3,12,10],"f":[[[]],[1],0,0,0,0,0,[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[]],[[]],[[]],[[]],[[]],[[]],0,[[3,4,5],6],0,[[3,7,5]],[3,8],[[3,4,5],[[9,[5]]]],0,[[]],[[]],[[]],[[10,5],11],0,[[12,4,5,[14,[13]]]],0,[[]],[[]],[[]],[[[16,[15]]],[[16,[2,15]]]],[[[16,[15]]],[[16,[2,15]]]],[[[16,[15]]],[[16,[2,15]]]],[17,[[17,[2]]]],[18,[[18,[2]]]],[18,[[18,[2]]]],[18,[[18,[2]]]],[[],11],[[],11],[[],11],[[10,4,5],6],0,[[4,5],12],[[4,5],[[16,[19]]]],[[3,4,5,[14,[6]]]],[[12,4],6],0,0,[[],20],[[],20],[[],20],[[],20],[[],20],[[],20],[[],21],[[],21],[[],21],[[12,4,5]],[[]],[[]],[[]]],"p":[[3,"Settings"],[8,"Any"],[3,"Viewer"],[3,"EventCtx"],[3,"SimpleApp"],[3,"Widget"],[3,"GfxCtx"],[4,"DrawBaselayer"],[4,"Transition"],[3,"MinimapController"],[15,"bool"],[3,"BusinessSearch"],[3,"String"],[4,"Option"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[8,"State"],[4,"Result"],[3,"TypeId"]]},\
"parking_mapper":{"doc":"","t":[5,0,6,13,3,13,13,13,17,13,13,13,3,13,4,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,11,11,11,11,5,5,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11],"n":["main","mapper","App","BothSides","ChangeWay","Complicated","DividedHighways","Done","FAKE_PARKING_TAG","LeftOnly","NoStopping","OverlappingStuff","ParkingMapper","RightOnly","Show","ToDo","UnmappedDividedHighways","Value","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","data","data","draw","draw","draw","draw_layer","eq","eq","event","event","find_divided_highways","find_overlapping_stuff","fmt","from","from","from","from","generate_osmc","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","make","new_state","new_state","osm_way_id","panel","panel","selected","show","show","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip"],"q":["parking_mapper","","parking_mapper::mapper","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,3,0,3,2,2,0,3,3,2,0,3,0,2,2,0,4,7,2,3,4,7,2,3,4,7,2,3,4,7,2,3,2,3,2,3,4,7,4,7,7,4,2,3,4,7,0,0,2,4,7,2,3,0,4,7,2,3,4,7,2,3,2,3,4,7,2,3,4,7,2,3,4,4,7,7,4,7,4,4,7,2,3,4,7,2,3,4,7,2,3,4,7,2,3,4,7,2,3],"f":[[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[2,2],[3,3],[[]],[[]],0,0,[[4,5,6]],[[7,5,6]],0,0,[[2,2],8],[[3,3],8],[[4,9,6],[[10,[6]]]],[[7,9,6],[[10,[6]]]],[6,[[12,[11]]]],[[6,13],[[15,[14]]]],[[2,16],17],[[]],[[]],[[]],[[]],[[18,8,13],19],[[]],[[]],[[]],[[]],[[[21,[20]]],[[21,[1,20]]]],[[[21,[20]]],[[21,[1,20]]]],[[[21,[20]]],[[21,[1,20]]]],[[[21,[20]]],[[21,[1,20]]]],[22,[[22,[1]]]],[22,[[22,[1]]]],[23,[[23,[1]]]],[23,[[23,[1]]]],[23,[[23,[1]]]],[23,[[23,[1]]]],[[],8],[[],8],[[],8],[[],8],[[9,6,2,[18,[24,3]]],[[21,[25]]]],[[9,6],[[21,[25]]]],[[9,6,12,2,[18,[24,3]]],[[21,[25]]]],0,0,0,0,0,0,[[]],[[]],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],26],[[],27],[[],27],[[],27],[[],27],[[]],[[]],[[]],[[]]],"p":[[8,"Any"],[4,"Show"],[4,"Value"],[3,"ParkingMapper"],[3,"GfxCtx"],[3,"SimpleApp"],[3,"ChangeWay"],[15,"bool"],[3,"EventCtx"],[4,"Transition"],[3,"RoadID"],[3,"HashSet"],[3,"Timer"],[3,"Polygon"],[3,"Vec"],[3,"Formatter"],[6,"Result"],[3,"BTreeMap"],[6,"Result"],[3,"Global"],[3,"Box"],[3,"Arc"],[3,"Rc"],[3,"WayID"],[8,"State"],[4,"Result"],[3,"TypeId"]]},\
"piggyback":{"doc":"","t":[5],"n":["dummy"],"q":["piggyback"],"d":[""],"i":[0],"f":[[[]]],"p":[]},\
diff --git a/rustdoc/sim/analytics/struct.Analytics.html b/rustdoc/sim/analytics/struct.Analytics.html
index e8755b5ab0..14334fd296 100644
--- a/rustdoc/sim/analytics/struct.Analytics.html
+++ b/rustdoc/sim/analytics/struct.Analytics.html
@@ -7,7 +7,7 @@
pub passengers_boarding: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID, Duration)>>,
pub passengers_alighting: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID)>>,
pub started_trips: BTreeMap<TripID, Time>,
- pub finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>,
+ pub finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>,
pub problems_per_trip: BTreeMap<TripID, Vec<(Time, Problem)>>,
pub trip_log: Vec<(Time, TripID, Option<PathRequest>, TripPhaseType)>,
pub intersection_delays: BTreeMap<IntersectionID, Vec<(u8, Time, Duration, AgentType)>>,
@@ -25,13 +25,13 @@ running the simulation, and compare the live Analytics to the prebaked baseline
Fields
road_thruput: TimeSeriesCount<RoadID>
intersection_thruput: TimeSeriesCount<IntersectionID>
traffic_signal_thruput: TimeSeriesCount<CompressedMovementID>
demand: BTreeMap<MovementID, usize>
Most fields in Analytics are cumulative over time, but this is just for the current moment in time.
bus_arrivals: Vec<(Time, CarID, TransitRouteID, TransitStopID)>
passengers_boarding: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID, Duration)>>
For each passenger boarding, how long did they wait at the stop?
-passengers_alighting: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID)>>
started_trips: BTreeMap<TripID, Time>
finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>
Finish time, ID, mode, trip duration if successful (or None if cancelled)
+passengers_alighting: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID)>>
started_trips: BTreeMap<TripID, Time>
finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>
Finish time, ID, mode, trip duration if successful (or None if cancelled)
problems_per_trip: BTreeMap<TripID, Vec<(Time, Problem)>>
Record different problems that each trip encounters.
trip_log: Vec<(Time, TripID, Option<PathRequest>, TripPhaseType)>
intersection_delays: BTreeMap<IntersectionID, Vec<(u8, Time, Duration, AgentType)>>
Only for traffic signals. The u8 is the movement index from a CompressedMovementID.
parking_lane_changes: BTreeMap<LaneID, Vec<(Time, bool)>>
Per parking lane or lot, when does a spot become filled (true) or free (false)
parking_lot_changes: BTreeMap<ParkingLotID, Vec<(Time, bool)>>
alerts: Vec<(Time, AlertLocation, String)>
record_anything: bool
For benchmarking, we may want to disable collecting data.
Implementations
sourceimpl Analytics
impl Analytics
pub fn new(record_anything: bool) -> Analytics
pub fn event(&mut self, ev: Event, time: Time, map: &Map)
pub fn record_demand(&mut self, path: &Path, map: &Map)
sourcepub fn finished_trip_time(&self, trip: TripID) -> Option<Duration>
pub fn finished_trip_time(&self, trip: TripID) -> Option<Duration>
Ignores the current time. Returns None for cancelled trips.
-sourcepub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns pairs of trip times for finished trips in both worlds. (ID, before, after, mode)
+sourcepub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns pairs of trip times for finished trips in both worlds. (ID, before, after, mode)
sourcepub fn get_trip_phases(&self, trip: TripID, map: &Map) -> Vec<TripPhase>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn get_trip_phases(&self, trip: TripID, map: &Map) -> Vec<TripPhase>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
If calling on prebaked Analytics, be careful to pass in an unedited map, to match how the simulation was originally run. Otherwise the paths may be nonsense.
pub fn get_all_trip_phases(&self) -> BTreeMap<TripID, Vec<TripPhase>>
pub fn active_agents(&self, now: Time) -> Vec<(Time, usize)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn parking_lane_availability(
&self,
now: Time,
l: LaneID,
capacity: usize
) -> Vec<(Time, usize)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn parking_lane_availability(
&self,
now: Time,
l: LaneID,
capacity: usize
) -> Vec<(Time, usize)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the free spots over time
diff --git a/rustdoc/sim/events/enum.Event.html b/rustdoc/sim/events/enum.Event.html index cd6484ae3b..a3a9c13b1b 100644 --- a/rustdoc/sim/events/enum.Event.html +++ b/rustdoc/sim/events/enum.Event.html @@ -16,11 +16,11 @@ IntersectionDelayMeasured(TripID, TurnID, AgentID, Duration), TripFinished { trip: TripID, - mode: TripMode, + mode: TripMode, total_time: Duration, blocked_time: Duration, }, - TripCancelled(TripID, TripMode), + TripCancelled(TripID, TripMode), TripPhaseStarting(TripID, PersonID, Option<PathRequest>, TripPhaseType), PathAmended(Path), Alert(AlertLocation, String), @@ -35,7 +35,7 @@ has no performance impact.PersonEntersMap(PersonID, AgentID, IntersectionID)
PedReachedParkingSpot(PedestrianID, ParkingSpot)
BikeStoppedAtSidewalk(CarID, LaneID)
ProblemEncountered(TripID, Problem)
AgentEntersTraversable(AgentID, Option<TripID>, Traversable, Option<usize>)
If the agent is a transit vehicle, then include a count of how many passengers are on board.
IntersectionDelayMeasured(TripID, TurnID, AgentID, Duration)
TripID, TurnID (Where the delay was encountered), Time spent waiting at that turn
-TripFinished
TripCancelled(TripID, TripMode)
TripPhaseStarting(TripID, PersonID, Option<PathRequest>, TripPhaseType)
PathAmended(Path)
Just use for parking replanning. Not happy about copying the full path in here, but the way +
TripFinished
TripCancelled(TripID, TripMode)
TripPhaseStarting(TripID, PersonID, Option<PathRequest>, TripPhaseType)
PathAmended(Path)
Just use for parking replanning. Not happy about copying the full path in here, but the way to plumb info into Analytics is Event.
Alert(AlertLocation, String)
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Event
impl<'de> Deserialize<'de> for Event
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
sourceimpl PartialEq<Event> for Event
impl PartialEq<Event> for Event
1.0.0 · sourcefn ne(&self, other: &Rhs) -> bool
fn ne(&self, other: &Rhs) -> bool
!=
. The default implementation is almost always
diff --git a/rustdoc/sim/fn.count_parked_cars_per_bldg.html b/rustdoc/sim/fn.count_parked_cars_per_bldg.html
index bc672ac510..62cd7c2de0 100644
--- a/rustdoc/sim/fn.count_parked_cars_per_bldg.html
+++ b/rustdoc/sim/fn.count_parked_cars_per_bldg.html
@@ -1 +1 @@
-Function sim::count_parked_cars_per_bldg
source · [−]pub fn count_parked_cars_per_bldg(scenario: &Scenario) -> Counter<BuildingID>
Function sim::count_parked_cars_per_bldg
source · [−]pub fn count_parked_cars_per_bldg(scenario: &Scenario) -> Counter<BuildingID>
pub fn fork_rng(base_rng: &mut XorShiftRng) -> XorShiftRng
Expand description
Need to explain this trick – basically keeps consistency between two different simulations when +
pub fn fork_rng(base_rng: &mut XorShiftRng) -> XorShiftRng
Expand description
Need to explain this trick – basically keeps consistency between two different simulations when each one might make slightly different sequences of calls to the RNG.
fn parse_modifiers(x: &str) -> Result<Vec<ScenarioModifier>>
pub struct SimFlags {
load_path: Option<String>,
pub load: String,
- pub scenario_modifiers: Vec<ScenarioModifier>,
+ pub scenario_modifiers: Vec<ScenarioModifier>,
pub rng_seed: u64,
pub opts: SimOptions,
}
Expand description
SimFlags specifies a simulation to setup. After parsing from structopt, you must call @@ -14,7 +14,7 @@
load: String
The same as load_path
, but with a default value filled out. Call initialize
to set this
up.
scenario_modifiers: Vec<ScenarioModifier>
A JSON list of modifiers to transform the scenario. These can be generated with the GUI.
+scenario_modifiers: Vec<ScenarioModifier>
A JSON list of modifiers to transform the scenario. These can be generated with the GUI.
rng_seed: u64
An arbitrary number to seed the random number generator. This is input to the deterministic simulation, so different values affect results.
opts: SimOptions
Implementations
sourceimpl SimFlags
impl SimFlags
pub const RNG_SEED: u64 = 42u64
pub fn initialize(&mut self)
pub fn for_test(run_name: &str) -> SimFlags
pub fn make_rng(&self) -> XorShiftRng
sourcepub fn load_synchronously(
&self,
timer: &mut Timer<'_>
) -> (Map, Sim, XorShiftRng)
pub fn load_synchronously(
&self,
timer: &mut Timer<'_>
) -> (Map, Sim, XorShiftRng)
Loads a map and simulation. Not appropriate for use in the UI or on web.
diff --git a/rustdoc/sim/make/load/type.ModifierList.html b/rustdoc/sim/make/load/type.ModifierList.html index 800244ef58..b4150eb6bf 100644 --- a/rustdoc/sim/make/load/type.ModifierList.html +++ b/rustdoc/sim/make/load/type.ModifierList.html @@ -1 +1 @@ -type ModifierList = Vec<ScenarioModifier>;
retry_if_no_room: bool
Can be used to spawn from a border or anywhere for interactive debugging.
SpawningFailure
Something went wrong spawning the trip.
UsingParkedCar
JustWalking
UsingBike
UsingTransit
Implementations
sourceimpl TripSpec
impl TripSpec
pub fn into_plan(self, map: &Map) -> (TripSpec, Vec<TripLeg>)
sourcepub fn maybe_new(
from: TripEndpoint,
to: TripEndpoint,
mode: TripMode,
use_vehicle: Option<CarID>,
retry_if_no_room: bool,
map: &Map
) -> Result<TripSpec>
pub fn maybe_new(
from: TripEndpoint,
to: TripEndpoint,
mode: TripMode,
use_vehicle: Option<CarID>,
retry_if_no_room: bool,
map: &Map
) -> Result<TripSpec>
Turn an origin/destination pair and mode into a specific plan for instantiating a trip. +
goal: DrivingGoal
JustWalking
UsingBike
UsingTransit
Implementations
sourceimpl TripSpec
impl TripSpec
pub fn into_plan(self, map: &Map) -> (TripSpec, Vec<TripLeg>)
sourcepub fn maybe_new(
from: TripEndpoint,
to: TripEndpoint,
mode: TripMode,
use_vehicle: Option<CarID>,
retry_if_no_room: bool,
map: &Map
) -> Result<TripSpec>
pub fn maybe_new(
from: TripEndpoint,
to: TripEndpoint,
mode: TripMode,
use_vehicle: Option<CarID>,
retry_if_no_room: bool,
map: &Map
) -> Result<TripSpec>
Turn an origin/destination pair and mode into a specific plan for instantiating a trip. Decisions like how to use public transit happen here.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for TripSpec
impl<'de> Deserialize<'de> for TripSpec
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
sourceimpl PartialEq<TripSpec> for TripSpec
impl PartialEq<TripSpec> for TripSpec
1.0.0 · sourcefn ne(&self, other: &Rhs) -> bool
fn ne(&self, other: &Rhs) -> bool
!=
. The default implementation is almost always
diff --git a/rustdoc/sim/make/spawner/fn.driving_goal.html b/rustdoc/sim/make/spawner/fn.driving_goal.html
index 8b9af64b8f..43b0f08f94 100644
--- a/rustdoc/sim/make/spawner/fn.driving_goal.html
+++ b/rustdoc/sim/make/spawner/fn.driving_goal.html
@@ -1 +1 @@
-fn driving_goal(
endpt: TripEndpoint,
constraints: PathConstraints,
map: &Map
) -> Result<DrivingGoal>
fn driving_goal(
endpt: TripEndpoint,
constraints: PathConstraints,
map: &Map
) -> Result<DrivingGoal>
fn end_sidewalk_spot(endpt: TripEndpoint, map: &Map) -> Result<SidewalkSpot>
fn end_sidewalk_spot(endpt: TripEndpoint, map: &Map) -> Result<SidewalkSpot>
fn start_sidewalk_spot(endpt: TripEndpoint, map: &Map) -> Result<SidewalkSpot>
fn start_sidewalk_spot(endpt: TripEndpoint, map: &Map) -> Result<SidewalkSpot>
pub fn prebake(
map: &Map,
scenario: Scenario,
timer: &mut Timer<'_>
) -> PrebakeSummary
Expand description
Simulate a curated list of scenarios to completion, and save the analytics as “prebaked +
pub fn prebake(
map: &Map,
scenario: Scenario,
timer: &mut Timer<'_>
) -> PrebakeSummary
Expand description
Simulate a curated list of scenarios to completion, and save the analytics as “prebaked results,” to later compare simulation metrics against the baseline without map edits.
Fields
map: String
scenario: String
finished_trips: usize
cancelled_trips: usize
total_trip_duration_seconds: f64
Implementations
Trait Implementations
sourceimpl Debug for PrebakeSummary
impl Debug for PrebakeSummary
sourceimpl Serialize for PrebakeSummary
impl Serialize for PrebakeSummary
Auto Trait Implementations
impl RefUnwindSafe for PrebakeSummary
impl Send for PrebakeSummary
impl Sync for PrebakeSummary
impl Unpin for PrebakeSummary
impl UnwindSafe for PrebakeSummary
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
+}Fields
map: String
scenario: String
finished_trips: usize
cancelled_trips: usize
total_trip_duration_seconds: f64
Implementations
sourceimpl PrebakeSummary
impl PrebakeSummary
Trait Implementations
sourceimpl Debug for PrebakeSummary
impl Debug for PrebakeSummary
sourceimpl Serialize for PrebakeSummary
impl Serialize for PrebakeSummary
Auto Trait Implementations
impl RefUnwindSafe for PrebakeSummary
impl Send for PrebakeSummary
impl Sync for PrebakeSummary
impl Unpin for PrebakeSummary
impl UnwindSafe for PrebakeSummary
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/recorder/struct.TrafficRecorder.html b/rustdoc/sim/recorder/struct.TrafficRecorder.html
index f5cc2efb4e..bb78ba1f18 100644
--- a/rustdoc/sim/recorder/struct.TrafficRecorder.html
+++ b/rustdoc/sim/recorder/struct.TrafficRecorder.html
@@ -1,11 +1,11 @@
Struct sim::recorder::TrafficRecorder
source · [−]pub(crate) struct TrafficRecorder {
capture_points: BTreeSet<IntersectionID>,
- trips: Vec<IndividTrip>,
+ trips: Vec<IndividTrip>,
seen_trips: BTreeSet<TripID>,
}
Expand description
Records trips beginning and ending at a specified set of intersections. This can be used to capture and reproduce behavior in a gridlock-prone chunk of the map, without simulating everything.
-Fields
capture_points: BTreeSet<IntersectionID>
trips: Vec<IndividTrip>
seen_trips: BTreeSet<TripID>
Implementations
sourceimpl TrafficRecorder
impl TrafficRecorder
pub fn new(capture_points: BTreeSet<IntersectionID>) -> TrafficRecorder
pub fn handle_event(
&mut self,
time: Time,
ev: &Event,
map: &Map,
driving: &DrivingSimState
)
fn on_car_enters_traversable(
&mut self,
time: Time,
car: CarID,
trip: TripID,
on: Traversable,
map: &Map,
driving: &DrivingSimState
)
fn on_car_enters_lane(
&mut self,
time: Time,
car: CarID,
trip: TripID,
lane: LaneID,
map: &Map,
driving: &DrivingSimState
)
pub fn num_recorded_trips(&self) -> usize
pub fn save(self, map: &Map)
Trait Implementations
sourceimpl Clone for TrafficRecorder
impl Clone for TrafficRecorder
sourcefn clone(&self) -> TrafficRecorder
fn clone(&self) -> TrafficRecorder
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations
impl RefUnwindSafe for TrafficRecorder
impl Send for TrafficRecorder
impl Sync for TrafficRecorder
impl Unpin for TrafficRecorder
impl UnwindSafe for TrafficRecorder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
+Fields
capture_points: BTreeSet<IntersectionID>
trips: Vec<IndividTrip>
seen_trips: BTreeSet<TripID>
Implementations
sourceimpl TrafficRecorder
impl TrafficRecorder
pub fn new(capture_points: BTreeSet<IntersectionID>) -> TrafficRecorder
pub fn handle_event(
&mut self,
time: Time,
ev: &Event,
map: &Map,
driving: &DrivingSimState
)
fn on_car_enters_traversable(
&mut self,
time: Time,
car: CarID,
trip: TripID,
on: Traversable,
map: &Map,
driving: &DrivingSimState
)
fn on_car_enters_lane(
&mut self,
time: Time,
car: CarID,
trip: TripID,
lane: LaneID,
map: &Map,
driving: &DrivingSimState
)
pub fn num_recorded_trips(&self) -> usize
pub fn save(self, map: &Map)
Trait Implementations
sourceimpl Clone for TrafficRecorder
impl Clone for TrafficRecorder
sourcefn clone(&self) -> TrafficRecorder
fn clone(&self) -> TrafficRecorder
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations
impl RefUnwindSafe for TrafficRecorder
impl Send for TrafficRecorder
impl Sync for TrafficRecorder
impl Unpin for TrafficRecorder
impl UnwindSafe for TrafficRecorder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/sim/scenario/fn.count_parked_cars_per_bldg.html b/rustdoc/sim/sim/scenario/fn.count_parked_cars_per_bldg.html
index 64ae9dae9d..1dcf43785a 100644
--- a/rustdoc/sim/sim/scenario/fn.count_parked_cars_per_bldg.html
+++ b/rustdoc/sim/sim/scenario/fn.count_parked_cars_per_bldg.html
@@ -1 +1 @@
-fn get_vehicles(
person: &PersonSpec,
rng: &mut XorShiftRng
) -> (Vec<VehicleSpec>, Vec<(usize, BuildingID)>, Vec<Option<usize>>)
fn get_vehicles(
person: &PersonSpec,
rng: &mut XorShiftRng
) -> (Vec<VehicleSpec>, Vec<(usize, BuildingID)>, Vec<Option<usize>>)
pub fn debug_agent_json(&self, id: AgentID) -> String
pub fn debug_intersection_json(&self, id: IntersectionID, map: &Map) -> String
pub fn debug_lane(&self, id: LaneID)
sourcepub fn agent_properties(&self, map: &Map, id: AgentID) -> AgentProperties
pub fn agent_properties(&self, map: &Map, id: AgentID) -> AgentProperties
Only call for active agents, will panic otherwise
pub fn num_transit_passengers(&self, car: CarID) -> usize
pub fn bus_route_id(&self, maybe_bus: CarID) -> Option<TransitRouteID>
pub fn active_agents(&self) -> Vec<AgentID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn num_active_agents(&self) -> usize
pub fn agent_to_trip(&self, id: AgentID) -> Option<TripID>
pub fn trip_to_agent(&self, id: TripID) -> TripResult<AgentID>
pub fn trip_info(&self, id: TripID) -> TripInfo
pub fn all_trip_info(&self) -> Vec<(TripID, TripInfo)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn finished_trip_details(
&self,
id: TripID
) -> Option<(Duration, Duration, Distance)>
pub fn finished_trip_details(
&self,
id: TripID
) -> Option<(Duration, Duration, Distance)>
If trip is finished, returns (total time, total waiting time, total distance)
pub fn trip_blocked_time(&self, id: TripID) -> Duration
pub fn trip_to_person(&self, id: TripID) -> Option<PersonID>
pub fn agent_to_person(&self, id: AgentID) -> Option<PersonID>
pub fn person_to_agent(&self, id: PersonID) -> Option<AgentID>
pub fn get_owner_of_car(&self, id: CarID) -> Option<PersonID>
pub fn lookup_parked_car(&self, id: CarID) -> Option<&ParkedCar>
sourcepub fn all_parked_car_positions(&self, map: &Map) -> Vec<(Position, Position)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn all_parked_car_positions(&self, map: &Map) -> Vec<(Position, Position)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
For every parked car, (position of parking spot, position of owner)
-pub fn lookup_person(&self, id: PersonID) -> Option<&Person>
pub fn get_person(&self, id: PersonID) -> &Person
pub fn find_person_by_orig_id(&self, id: OrigPersonID) -> Option<PersonID>
pub fn get_all_people(&self) -> &Vec<Person>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn lookup_car_id(&self, idx: usize) -> Option<CarID>
pub fn get_path(&self, id: AgentID) -> Option<&Path>
pub fn get_all_driving_paths(&self) -> Vec<&Path>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn trace_route(&self, id: AgentID, map: &Map) -> Option<PolyLine>
pub fn get_canonical_pt_per_trip(
&self,
trip: TripID,
map: &Map
) -> TripResult<Pt2D>
pub fn get_canonical_pt_per_person(&self, p: PersonID, map: &Map) -> Option<Pt2D>
pub fn canonical_pt_for_agent(&self, id: AgentID, map: &Map) -> Option<Pt2D>
pub fn get_accepted_agents(&self, id: IntersectionID) -> Vec<(AgentID, TurnID)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn get_waiting_agents(
&self,
id: IntersectionID
) -> Vec<(AgentID, TurnID, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn get_blocked_by_graph(
&self,
map: &Map
) -> BTreeMap<AgentID, (Duration, DelayCause)>
pub fn get_blocked_by_graph(
&self,
map: &Map
) -> BTreeMap<AgentID, (Duration, DelayCause)>
For every agent that’s currently not moving, figure out how long they’ve been waiting and +
pub fn lookup_person(&self, id: PersonID) -> Option<&Person>
pub fn get_person(&self, id: PersonID) -> &Person
pub fn find_person_by_orig_id(&self, id: OrigPersonID) -> Option<PersonID>
pub fn get_all_people(&self) -> &Vec<Person>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn lookup_car_id(&self, idx: usize) -> Option<CarID>
pub fn get_path(&self, id: AgentID) -> Option<&Path>
pub fn get_all_driving_paths(&self) -> Vec<&Path>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn trace_route(&self, id: AgentID, map: &Map) -> Option<PolyLine>
pub fn get_canonical_pt_per_trip(
&self,
trip: TripID,
map: &Map
) -> TripResult<Pt2D>
pub fn get_canonical_pt_per_person(&self, p: PersonID, map: &Map) -> Option<Pt2D>
pub fn canonical_pt_for_agent(&self, id: AgentID, map: &Map) -> Option<Pt2D>
pub fn get_accepted_agents(&self, id: IntersectionID) -> Vec<(AgentID, TurnID)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn get_waiting_agents(
&self,
id: IntersectionID
) -> Vec<(AgentID, TurnID, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn get_blocked_by_graph(
&self,
map: &Map
) -> BTreeMap<AgentID, (Duration, DelayCause)>
pub fn get_blocked_by_graph(
&self,
map: &Map
) -> BTreeMap<AgentID, (Duration, DelayCause)>
For every agent that’s currently not moving, figure out how long they’ve been waiting and why they’re blocked.
sourcepub fn status_of_buses(
&self,
route: TransitRouteID,
map: &Map
) -> Vec<(CarID, Option<usize>, f64, Pt2D)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn status_of_buses(
&self,
route: TransitRouteID,
map: &Map
) -> Vec<(CarID, Option<usize>, f64, Pt2D)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
(bus, stop index it’s coming from, percent to next stop, location)
pub fn get_analytics(&self) -> &Analytics
sourcepub fn delayed_intersections(
&self,
threshold: Duration
) -> Vec<(IntersectionID, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn delayed_intersections(
&self,
threshold: Duration
) -> Vec<(IntersectionID, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
For intersections with an agent waiting beyond some threshold, return when they started waiting. Sorted by earliest waiting (likely the root cause of gridlock).
pub fn bldg_to_people(&self, b: BuildingID) -> Vec<PersonID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn get_pandemic_model(&self) -> Option<&PandemicModel>
pub fn get_end_of_day(&self) -> Time
pub fn current_stage_and_remaining_time(
&self,
i: IntersectionID
) -> (usize, Duration)
pub fn all_arrivals_at_border(
&self,
i: IntersectionID
) -> Vec<(AgentType, Vec<(Time, usize)>)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn target_lane_penalty(&self, lane: &Lane) -> (usize, usize)
pub fn target_lane_penalty(&self, lane: &Lane) -> (usize, usize)
(number of vehicles in the lane, penalty if a bike or other slow vehicle is present)
-pub fn get_people_waiting_at_stop(
&self,
at: TransitStopID
) -> &Vec<(PedestrianID, TransitRouteID, Option<TransitStopID>, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn generate_scenario(&self, map: &Map, name: String) -> Scenario
pub fn infinite_parking(&self) -> bool
pub fn all_waiting_people(&self) -> BTreeMap<PersonID, Duration>
pub fn describe_internal_stats(&self) -> Vec<String>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn debug_queue_lengths(&self, l: LaneID) -> Option<(Distance, Distance)>
sourcepub fn get_trip_time_lower_bound(&self, map: &Map, id: TripID) -> Result<Duration>
pub fn get_trip_time_lower_bound(&self, map: &Map, id: TripID) -> Result<Duration>
Returns the best-case time for a trip in a world with no traffic or intersection delays. +
pub fn get_people_waiting_at_stop(
&self,
at: TransitStopID
) -> &Vec<(PedestrianID, TransitRouteID, Option<TransitStopID>, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn generate_scenario(&self, map: &Map, name: String) -> Scenario
pub fn infinite_parking(&self) -> bool
pub fn all_waiting_people(&self) -> BTreeMap<PersonID, Duration>
pub fn describe_internal_stats(&self) -> Vec<String>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn debug_queue_lengths(&self, l: LaneID) -> Option<(Distance, Distance)>
sourcepub fn get_trip_time_lower_bound(&self, map: &Map, id: TripID) -> Result<Duration>
pub fn get_trip_time_lower_bound(&self, map: &Map, id: TripID) -> Result<Duration>
Returns the best-case time for a trip in a world with no traffic or intersection delays. Might fail in some cases where the real trip succeeds, but the single-mode path can’t be found. Assumes the TripID exists.
pub fn get_highlighted_people(&self) -> &Option<BTreeSet<PersonID>>
sourceimpl Sim
impl Sim
pub fn step_count(&self) -> usize
pub fn get_draw_car(&self, id: CarID, map: &Map) -> Option<DrawCarInput>
pub fn get_draw_ped(
&self,
id: PedestrianID,
map: &Map
) -> Option<DrawPedestrianInput>
pub fn get_draw_cars(&self, on: Traversable, map: &Map) -> Vec<DrawCarInput>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn get_draw_peds(
&self,
on: Traversable,
map: &Map
) -> (Vec<DrawPedestrianInput>, Vec<DrawPedCrowdInput>)
pub fn get_all_draw_cars(&self, map: &Map) -> Vec<DrawCarInput>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn get_all_draw_peds(&self, map: &Map) -> Vec<DrawPedestrianInput>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn get_unzoomed_agents(&self, map: &Map) -> Vec<UnzoomedAgent>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn get_unzoomed_agents(&self, map: &Map) -> Vec<UnzoomedAgent>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
This does not include transit riders. Some callers need those in addition, but the rendering ones don’t.
-pub fn get_unzoomed_transit_riders(&self, map: &Map) -> Vec<UnzoomedAgent>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourceimpl Sim
impl Sim
pub fn instantiate(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
)
sourcepub fn instantiate_without_retries(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
retry_if_no_room: bool,
timer: &mut Timer<'_>
)
pub fn instantiate_without_retries(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
retry_if_no_room: bool,
timer: &mut Timer<'_>
)
If retry_if_no_room is false, any vehicles that fail to spawn because of something else in +
pub fn get_unzoomed_transit_riders(&self, map: &Map) -> Vec<UnzoomedAgent>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourceimpl Sim
impl Sim
pub fn instantiate(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
)
sourcepub fn instantiate_without_retries(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
retry_if_no_room: bool,
timer: &mut Timer<'_>
)
pub fn instantiate_without_retries(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
retry_if_no_room: bool,
timer: &mut Timer<'_>
)
If retry_if_no_room is false, any vehicles that fail to spawn because of something else in the way will just wind up as cancelled trips.
sourceimpl Sim
impl Sim
pub fn new(map: &Map, opts: SimOptions) -> Sim
pub(crate) fn spawn_trips(
&mut self,
input: Vec<(PersonID, TripInfo, StartTripArgs)>,
map: &Map,
timer: &mut Timer<'_>
)
pub fn get_free_onstreet_spots(&self, l: LaneID) -> Vec<ParkingSpot>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn get_free_offstreet_spots(&self, b: BuildingID) -> Vec<ParkingSpot>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn get_free_lot_spots(&self, pl: ParkingLotID) -> Vec<ParkingSpot>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn get_all_parking_spots(&self) -> (Vec<ParkingSpot>, Vec<ParkingSpot>)
pub fn get_all_parking_spots(&self) -> (Vec<ParkingSpot>, Vec<ParkingSpot>)
(Filled, available)
-pub fn bldg_to_parked_cars(&self, b: BuildingID) -> Vec<CarID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn walking_path_to_nearest_parking_spot(
&self,
map: &Map,
b: BuildingID
) -> Option<Path>
pub(crate) fn new_person(
&mut self,
orig_id: Option<OrigPersonID>,
ped_speed: Speed,
vehicle_specs: Vec<VehicleSpec>
) -> &Person
pub(crate) fn seed_parked_car(&mut self, vehicle: Vehicle, spot: ParkingSpot)
pub(crate) fn seed_bus_route(&mut self, route: &TransitRoute)
fn start_bus(&mut self, route: &TransitRoute, map: &Map)
pub fn set_run_name(&mut self, name: String)
pub fn get_run_name(&self) -> &String
sourceimpl Sim
impl Sim
fn minimal_step(
&mut self,
map: &Map,
max_dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
fn do_step(
&mut self,
map: &Map,
time: Time,
cmd: Command,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
fn dispatch_events(&mut self, events: Vec<Event>, map: &Map)
pub fn timed_step(
&mut self,
map: &Map,
dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>,
timer: &mut Timer<'_>
)
pub fn tiny_step(
&mut self,
map: &Map,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
pub fn time_limited_step(
&mut self,
map: &Map,
dt: Duration,
real_time_limit: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
pub fn dump_before_abort(&self)
sourceimpl Sim
impl Sim
pub fn save_dir(&self) -> String
fn save_path(&self, base_time: Time) -> String
pub fn save(&mut self) -> String
pub fn find_previous_savestate(&self, base_time: Time) -> Option<String>
pub fn find_next_savestate(&self, base_time: Time) -> Option<String>
pub fn load_savestate(path: String, timer: &mut Timer<'_>) -> Result<Sim>
sourceimpl Sim
impl Sim
pub fn handle_live_edited_traffic_signals(&mut self, map: &Map)
sourcepub fn handle_live_edits(
&mut self,
map: &Map,
timer: &mut Timer<'_>
) -> (usize, usize)
pub fn handle_live_edits(
&mut self,
map: &Map,
timer: &mut Timer<'_>
) -> (usize, usize)
Respond to arbitrary map edits without resetting the simulation. Returns the number of +
pub fn bldg_to_parked_cars(&self, b: BuildingID) -> Vec<CarID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
pub fn walking_path_to_nearest_parking_spot(
&self,
map: &Map,
b: BuildingID
) -> Option<Path>
pub(crate) fn new_person(
&mut self,
orig_id: Option<OrigPersonID>,
ped_speed: Speed,
vehicle_specs: Vec<VehicleSpec>
) -> &Person
pub(crate) fn seed_parked_car(&mut self, vehicle: Vehicle, spot: ParkingSpot)
pub(crate) fn seed_bus_route(&mut self, route: &TransitRoute)
fn start_bus(&mut self, route: &TransitRoute, map: &Map)
pub fn set_run_name(&mut self, name: String)
pub fn get_run_name(&self) -> &String
sourceimpl Sim
impl Sim
fn minimal_step(
&mut self,
map: &Map,
max_dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
fn do_step(
&mut self,
map: &Map,
time: Time,
cmd: Command,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
fn dispatch_events(&mut self, events: Vec<Event>, map: &Map)
pub fn timed_step(
&mut self,
map: &Map,
dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>,
timer: &mut Timer<'_>
)
pub fn tiny_step(
&mut self,
map: &Map,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
pub fn time_limited_step(
&mut self,
map: &Map,
dt: Duration,
real_time_limit: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
pub fn dump_before_abort(&self)
sourceimpl Sim
impl Sim
pub fn save_dir(&self) -> String
fn save_path(&self, base_time: Time) -> String
pub fn save(&mut self) -> String
pub fn find_previous_savestate(&self, base_time: Time) -> Option<String>
pub fn find_next_savestate(&self, base_time: Time) -> Option<String>
pub fn load_savestate(path: String, timer: &mut Timer<'_>) -> Result<Sim>
sourceimpl Sim
impl Sim
pub fn handle_live_edited_traffic_signals(&mut self, map: &Map)
sourcepub fn handle_live_edits(
&mut self,
map: &Map,
timer: &mut Timer<'_>
) -> (usize, usize)
pub fn handle_live_edits(
&mut self,
map: &Map,
timer: &mut Timer<'_>
) -> (usize, usize)
Respond to arbitrary map edits without resetting the simulation. Returns the number of (trips cancelled, parked cars displaced).
sourceimpl Sim
impl Sim
pub fn delete_car(&mut self, id: CarID, map: &Map)
pub fn clear_alerts(&mut self) -> Vec<(Time, AlertLocation, String)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourceimpl Sim
impl Sim
sourcepub fn set_periodic_callback(&mut self, frequency: Duration)
pub fn set_periodic_callback(&mut self, frequency: Duration)
Only one at a time supported.
diff --git a/rustdoc/sim/struct.Analytics.html b/rustdoc/sim/struct.Analytics.html index 10d62b6911..567ef4ce8b 100644 --- a/rustdoc/sim/struct.Analytics.html +++ b/rustdoc/sim/struct.Analytics.html @@ -7,7 +7,7 @@ pub passengers_boarding: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID, Duration)>>, pub passengers_alighting: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID)>>, pub started_trips: BTreeMap<TripID, Time>, - pub finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>, + pub finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>, pub problems_per_trip: BTreeMap<TripID, Vec<(Time, Problem)>>, pub trip_log: Vec<(Time, TripID, Option<PathRequest>, TripPhaseType)>, pub intersection_delays: BTreeMap<IntersectionID, Vec<(u8, Time, Duration, AgentType)>>, @@ -25,13 +25,13 @@ running the simulation, and compare the live Analytics to the prebaked baselineFields
road_thruput: TimeSeriesCount<RoadID>
intersection_thruput: TimeSeriesCount<IntersectionID>
traffic_signal_thruput: TimeSeriesCount<CompressedMovementID>
demand: BTreeMap<MovementID, usize>
Most fields in Analytics are cumulative over time, but this is just for the current moment in time.
bus_arrivals: Vec<(Time, CarID, TransitRouteID, TransitStopID)>
passengers_boarding: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID, Duration)>>
For each passenger boarding, how long did they wait at the stop?
-passengers_alighting: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID)>>
started_trips: BTreeMap<TripID, Time>
finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>
Finish time, ID, mode, trip duration if successful (or None if cancelled)
+passengers_alighting: BTreeMap<TransitStopID, Vec<(Time, TransitRouteID)>>
started_trips: BTreeMap<TripID, Time>
finished_trips: Vec<(Time, TripID, TripMode, Option<Duration>)>
Finish time, ID, mode, trip duration if successful (or None if cancelled)
problems_per_trip: BTreeMap<TripID, Vec<(Time, Problem)>>
Record different problems that each trip encounters.
trip_log: Vec<(Time, TripID, Option<PathRequest>, TripPhaseType)>
intersection_delays: BTreeMap<IntersectionID, Vec<(u8, Time, Duration, AgentType)>>
Only for traffic signals. The u8 is the movement index from a CompressedMovementID.
parking_lane_changes: BTreeMap<LaneID, Vec<(Time, bool)>>
Per parking lane or lot, when does a spot become filled (true) or free (false)
parking_lot_changes: BTreeMap<ParkingLotID, Vec<(Time, bool)>>
alerts: Vec<(Time, AlertLocation, String)>
record_anything: bool
For benchmarking, we may want to disable collecting data.
Implementations
sourceimpl Analytics
impl Analytics
pub fn new(record_anything: bool) -> Analytics
pub fn event(&mut self, ev: Event, time: Time, map: &Map)
pub fn record_demand(&mut self, path: &Path, map: &Map)
sourcepub fn finished_trip_time(&self, trip: TripID) -> Option<Duration>
pub fn finished_trip_time(&self, trip: TripID) -> Option<Duration>
Ignores the current time. Returns None for cancelled trips.
-sourcepub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns pairs of trip times for finished trips in both worlds. (ID, before, after, mode)
+sourcepub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn both_finished_trips(
&self,
now: Time,
before: &Analytics
) -> Vec<(TripID, Duration, Duration, TripMode)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns pairs of trip times for finished trips in both worlds. (ID, before, after, mode)
sourcepub fn get_trip_phases(&self, trip: TripID, map: &Map) -> Vec<TripPhase>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn get_trip_phases(&self, trip: TripID, map: &Map) -> Vec<TripPhase>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
If calling on prebaked Analytics, be careful to pass in an unedited map, to match how the simulation was originally run. Otherwise the paths may be nonsense.
pub fn get_all_trip_phases(&self) -> BTreeMap<TripID, Vec<TripPhase>>
pub fn active_agents(&self, now: Time) -> Vec<(Time, usize)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourcepub fn parking_lane_availability(
&self,
now: Time,
l: LaneID,
capacity: usize
) -> Vec<(Time, usize)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn parking_lane_availability(
&self,
now: Time,
l: LaneID,
capacity: usize
) -> Vec<(Time, usize)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the free spots over time
diff --git a/rustdoc/sim/struct.BorderSpawnOverTime.html b/rustdoc/sim/struct.BorderSpawnOverTime.html index f2954565c0..b9d8b53b58 100644 --- a/rustdoc/sim/struct.BorderSpawnOverTime.html +++ b/rustdoc/sim/struct.BorderSpawnOverTime.html @@ -1,4 +1,4 @@ -Struct sim::BorderSpawnOverTime
source · [−]pub struct BorderSpawnOverTime {
+BorderSpawnOverTime in sim - Rust Struct sim::BorderSpawnOverTime
[−]pub struct BorderSpawnOverTime {
pub num_peds: usize,
pub num_cars: usize,
pub num_bikes: usize,
@@ -6,8 +6,8 @@
pub start_time: Time,
pub stop_time: Time,
pub start_from_border: IntersectionID,
- pub goal: Option<TripEndpoint>,
-}
Fields
num_peds: usize
num_cars: usize
num_bikes: usize
percent_use_transit: f64
start_time: Time
stop_time: Time
start_from_border: IntersectionID
goal: Option<TripEndpoint>
Trait Implementations
sourceimpl Clone for BorderSpawnOverTime
sourcefn clone(&self) -> BorderSpawnOverTime
Returns a copy of the value. Read more1.0.0 · sourcefn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresourceimpl Debug for BorderSpawnOverTime
sourceimpl<'de> Deserialize<'de> for BorderSpawnOverTime
sourcefn deserialize<__D>(
__deserializer: __D
) -> Result<BorderSpawnOverTime, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresourceimpl Serialize for BorderSpawnOverTime
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for BorderSpawnOverTime
impl Send for BorderSpawnOverTime
impl Sync for BorderSpawnOverTime
impl Unpin for BorderSpawnOverTime
impl UnwindSafe for BorderSpawnOverTime
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
+ pub goal: Option<TripEndpoint>,
+}Fields
num_peds: usize
num_cars: usize
num_bikes: usize
percent_use_transit: f64
start_time: Time
stop_time: Time
start_from_border: IntersectionID
goal: Option<TripEndpoint>
Trait Implementations
impl Clone for BorderSpawnOverTime
fn clone(&self) -> BorderSpawnOverTime
Returns a copy of the value. Read more1.0.0 · sourcefn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moreimpl Debug for BorderSpawnOverTime
impl<'de> Deserialize<'de> for BorderSpawnOverTime
fn deserialize<__D>(
__deserializer: __D
) -> Result<BorderSpawnOverTime, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreimpl Serialize for BorderSpawnOverTime
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for BorderSpawnOverTime
impl Send for BorderSpawnOverTime
impl Sync for BorderSpawnOverTime
impl Unpin for BorderSpawnOverTime
impl UnwindSafe for BorderSpawnOverTime
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/struct.Person.html b/rustdoc/sim/struct.Person.html
index 639715412a..a271e7f47b 100644
--- a/rustdoc/sim/struct.Person.html
+++ b/rustdoc/sim/struct.Person.html
@@ -1,6 +1,6 @@
Person in sim - Rust pub struct Person {
pub id: PersonID,
- pub orig_id: Option<OrigPersonID>,
+ pub orig_id: Option<OrigPersonID>,
pub trips: Vec<TripID>,
pub state: PersonState,
pub ped: PedestrianID,
@@ -8,7 +8,7 @@
pub vehicles: Vec<Vehicle>,
delayed_trips: Vec<(TripID, StartTripArgs)>,
on_bus: Option<CarID>,
-}
Fields
id: PersonID
orig_id: Option<OrigPersonID>
trips: Vec<TripID>
state: PersonState
ped: PedestrianID
ped_speed: Speed
vehicles: Vec<Vehicle>
Both cars and bikes
+}Fields
id: PersonID
orig_id: Option<OrigPersonID>
trips: Vec<TripID>
state: PersonState
ped: PedestrianID
ped_speed: Speed
vehicles: Vec<Vehicle>
Both cars and bikes
delayed_trips: Vec<(TripID, StartTripArgs)>
on_bus: Option<CarID>
Implementations
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Person
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for Person
impl Send for Person
impl Sync for Person
impl Unpin for Person
impl UnwindSafe for Person
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/struct.ScenarioGenerator.html b/rustdoc/sim/struct.ScenarioGenerator.html
index 4c3edefe61..de7123b13f 100644
--- a/rustdoc/sim/struct.ScenarioGenerator.html
+++ b/rustdoc/sim/struct.ScenarioGenerator.html
@@ -1,10 +1,10 @@
-ScenarioGenerator in sim - Rust Struct sim::ScenarioGenerator
source · [−]pub struct ScenarioGenerator {
+ScenarioGenerator in sim - Rust Struct sim::ScenarioGenerator
[−]pub struct ScenarioGenerator {
pub scenario_name: String,
pub only_seed_buses: Option<BTreeSet<String, Global>>,
pub spawn_over_time: Vec<SpawnOverTime, Global>,
pub border_spawn_over_time: Vec<BorderSpawnOverTime, Global>,
-}
Fields
scenario_name: String
only_seed_buses: Option<BTreeSet<String, Global>>
spawn_over_time: Vec<SpawnOverTime, Global>
border_spawn_over_time: Vec<BorderSpawnOverTime, Global>
Implementations
sourceimpl ScenarioGenerator
sourcepub fn proletariat_robot(
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
) -> Scenario
Designed in https://github.com/a-b-street/abstreet/issues/154
-sourceimpl ScenarioGenerator
sourcepub fn generate(
&self,
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
) -> Scenario
sourcepub fn small_run(map: &Map) -> ScenarioGenerator
sourcepub fn empty(name: &str) -> ScenarioGenerator
Trait Implementations
sourceimpl Clone for ScenarioGenerator
sourcefn clone(&self) -> ScenarioGenerator
Returns a copy of the value. Read more1.0.0 · sourcefn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresourceimpl Debug for ScenarioGenerator
sourceimpl<'de> Deserialize<'de> for ScenarioGenerator
sourcefn deserialize<__D>(
__deserializer: __D
) -> Result<ScenarioGenerator, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresourceimpl Serialize for ScenarioGenerator
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for ScenarioGenerator
impl Send for ScenarioGenerator
impl Sync for ScenarioGenerator
impl Unpin for ScenarioGenerator
impl UnwindSafe for ScenarioGenerator
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
+}Fields
scenario_name: String
only_seed_buses: Option<BTreeSet<String, Global>>
spawn_over_time: Vec<SpawnOverTime, Global>
border_spawn_over_time: Vec<BorderSpawnOverTime, Global>
Implementations
impl ScenarioGenerator
pub fn proletariat_robot(
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
) -> Scenario
Designed in https://github.com/a-b-street/abstreet/issues/154
+impl ScenarioGenerator
pub fn generate(
&self,
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
) -> Scenario
pub fn small_run(map: &Map) -> ScenarioGenerator
pub fn empty(name: &str) -> ScenarioGenerator
Trait Implementations
impl Clone for ScenarioGenerator
fn clone(&self) -> ScenarioGenerator
Returns a copy of the value. Read more1.0.0 · sourcefn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moreimpl Debug for ScenarioGenerator
impl<'de> Deserialize<'de> for ScenarioGenerator
fn deserialize<__D>(
__deserializer: __D
) -> Result<ScenarioGenerator, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreimpl Serialize for ScenarioGenerator
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for ScenarioGenerator
impl Send for ScenarioGenerator
impl Sync for ScenarioGenerator
impl Unpin for ScenarioGenerator
impl UnwindSafe for ScenarioGenerator
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/struct.Sim.html b/rustdoc/sim/struct.Sim.html
index 48955ff20f..802d6f63af 100644
--- a/rustdoc/sim/struct.Sim.html
+++ b/rustdoc/sim/struct.Sim.html
@@ -23,23 +23,23 @@
sourcepub fn debug_agent_json(&self, id: AgentID) -> String
sourcepub fn debug_intersection_json(&self, id: IntersectionID, map: &Map) -> String
sourcepub fn debug_lane(&self, id: LaneID)
sourcepub fn agent_properties(&self, map: &Map, id: AgentID) -> AgentProperties
Only call for active agents, will panic otherwise
sourcepub fn num_transit_passengers(&self, car: CarID) -> usize
sourcepub fn bus_route_id(&self, maybe_bus: CarID) -> Option<TransitRouteID>
sourcepub fn active_agents(&self) -> Vec<AgentID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn num_active_agents(&self) -> usize
sourcepub fn agent_to_trip(&self, id: AgentID) -> Option<TripID>
sourcepub fn trip_to_agent(&self, id: TripID) -> TripResult<AgentID>
sourcepub fn trip_info(&self, id: TripID) -> TripInfo
sourcepub fn all_trip_info(&self) -> Vec<(TripID, TripInfo)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn finished_trip_details(
&self,
id: TripID
) -> Option<(Duration, Duration, Distance)>
If trip is finished, returns (total time, total waiting time, total distance)
sourcepub fn trip_blocked_time(&self, id: TripID) -> Duration
sourcepub fn trip_to_person(&self, id: TripID) -> Option<PersonID>
sourcepub fn agent_to_person(&self, id: AgentID) -> Option<PersonID>
sourcepub fn person_to_agent(&self, id: PersonID) -> Option<AgentID>
sourcepub fn get_owner_of_car(&self, id: CarID) -> Option<PersonID>
sourcepub fn lookup_parked_car(&self, id: CarID) -> Option<&ParkedCar>
sourcepub fn all_parked_car_positions(&self, map: &Map) -> Vec<(Position, Position)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
For every parked car, (position of parking spot, position of owner)
-sourcepub fn lookup_person(&self, id: PersonID) -> Option<&Person>
sourcepub fn get_person(&self, id: PersonID) -> &Person
sourcepub fn find_person_by_orig_id(&self, id: OrigPersonID) -> Option<PersonID>
sourcepub fn get_all_people(&self) -> &Vec<Person>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn lookup_car_id(&self, idx: usize) -> Option<CarID>
sourcepub fn get_path(&self, id: AgentID) -> Option<&Path>
sourcepub fn get_all_driving_paths(&self) -> Vec<&Path>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn trace_route(&self, id: AgentID, map: &Map) -> Option<PolyLine>
sourcepub fn get_canonical_pt_per_trip(
&self,
trip: TripID,
map: &Map
) -> TripResult<Pt2D>
sourcepub fn get_canonical_pt_per_person(&self, p: PersonID, map: &Map) -> Option<Pt2D>
sourcepub fn canonical_pt_for_agent(&self, id: AgentID, map: &Map) -> Option<Pt2D>
sourcepub fn get_accepted_agents(&self, id: IntersectionID) -> Vec<(AgentID, TurnID)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_waiting_agents(
&self,
id: IntersectionID
) -> Vec<(AgentID, TurnID, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_blocked_by_graph(
&self,
map: &Map
) -> BTreeMap<AgentID, (Duration, DelayCause)>
For every agent that’s currently not moving, figure out how long they’ve been waiting and
+
sourcepub fn lookup_person(&self, id: PersonID) -> Option<&Person>
sourcepub fn get_person(&self, id: PersonID) -> &Person
sourcepub fn find_person_by_orig_id(&self, id: OrigPersonID) -> Option<PersonID>
sourcepub fn get_all_people(&self) -> &Vec<Person>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn lookup_car_id(&self, idx: usize) -> Option<CarID>
sourcepub fn get_path(&self, id: AgentID) -> Option<&Path>
sourcepub fn get_all_driving_paths(&self) -> Vec<&Path>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn trace_route(&self, id: AgentID, map: &Map) -> Option<PolyLine>
sourcepub fn get_canonical_pt_per_trip(
&self,
trip: TripID,
map: &Map
) -> TripResult<Pt2D>
sourcepub fn get_canonical_pt_per_person(&self, p: PersonID, map: &Map) -> Option<Pt2D>
sourcepub fn canonical_pt_for_agent(&self, id: AgentID, map: &Map) -> Option<Pt2D>
sourcepub fn get_accepted_agents(&self, id: IntersectionID) -> Vec<(AgentID, TurnID)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_waiting_agents(
&self,
id: IntersectionID
) -> Vec<(AgentID, TurnID, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_blocked_by_graph(
&self,
map: &Map
) -> BTreeMap<AgentID, (Duration, DelayCause)>
For every agent that’s currently not moving, figure out how long they’ve been waiting and
why they’re blocked.
sourcepub fn status_of_buses(
&self,
route: TransitRouteID,
map: &Map
) -> Vec<(CarID, Option<usize>, f64, Pt2D)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
(bus, stop index it’s coming from, percent to next stop, location)
sourcepub fn get_analytics(&self) -> &Analytics
sourcepub fn delayed_intersections(
&self,
threshold: Duration
) -> Vec<(IntersectionID, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
For intersections with an agent waiting beyond some threshold, return when they started
waiting. Sorted by earliest waiting (likely the root cause of gridlock).
sourcepub fn bldg_to_people(&self, b: BuildingID) -> Vec<PersonID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_pandemic_model(&self) -> Option<&PandemicModel>
sourcepub fn get_end_of_day(&self) -> Time
sourcepub fn current_stage_and_remaining_time(
&self,
i: IntersectionID
) -> (usize, Duration)
sourcepub fn all_arrivals_at_border(
&self,
i: IntersectionID
) -> Vec<(AgentType, Vec<(Time, usize)>)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn target_lane_penalty(&self, lane: &Lane) -> (usize, usize)
(number of vehicles in the lane, penalty if a bike or other slow vehicle is present)
-sourcepub fn get_people_waiting_at_stop(
&self,
at: TransitStopID
) -> &Vec<(PedestrianID, TransitRouteID, Option<TransitStopID>, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn generate_scenario(&self, map: &Map, name: String) -> Scenario
sourcepub fn infinite_parking(&self) -> bool
sourcepub fn all_waiting_people(&self) -> BTreeMap<PersonID, Duration>
sourcepub fn describe_internal_stats(&self) -> Vec<String>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn debug_queue_lengths(&self, l: LaneID) -> Option<(Distance, Distance)>
sourcepub fn get_trip_time_lower_bound(&self, map: &Map, id: TripID) -> Result<Duration>
Returns the best-case time for a trip in a world with no traffic or intersection delays.
+
sourcepub fn get_people_waiting_at_stop(
&self,
at: TransitStopID
) -> &Vec<(PedestrianID, TransitRouteID, Option<TransitStopID>, Time)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn generate_scenario(&self, map: &Map, name: String) -> Scenario
sourcepub fn infinite_parking(&self) -> bool
sourcepub fn all_waiting_people(&self) -> BTreeMap<PersonID, Duration>
sourcepub fn describe_internal_stats(&self) -> Vec<String>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn debug_queue_lengths(&self, l: LaneID) -> Option<(Distance, Distance)>
sourcepub fn get_trip_time_lower_bound(&self, map: &Map, id: TripID) -> Result<Duration>
Returns the best-case time for a trip in a world with no traffic or intersection delays.
Might fail in some cases where the real trip succeeds, but the single-mode path can’t be
found. Assumes the TripID exists.
sourcepub fn get_highlighted_people(&self) -> &Option<BTreeSet<PersonID>>
sourceimpl Sim
sourcepub fn step_count(&self) -> usize
sourcepub fn get_draw_car(&self, id: CarID, map: &Map) -> Option<DrawCarInput>
sourcepub fn get_draw_ped(
&self,
id: PedestrianID,
map: &Map
) -> Option<DrawPedestrianInput>
sourcepub fn get_draw_cars(&self, on: Traversable, map: &Map) -> Vec<DrawCarInput>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_draw_peds(
&self,
on: Traversable,
map: &Map
) -> (Vec<DrawPedestrianInput>, Vec<DrawPedCrowdInput>)
sourcepub fn get_all_draw_cars(&self, map: &Map) -> Vec<DrawCarInput>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_all_draw_peds(&self, map: &Map) -> Vec<DrawPedestrianInput>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_unzoomed_agents(&self, map: &Map) -> Vec<UnzoomedAgent>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
This does not include transit riders. Some callers need those in addition, but the
rendering ones don’t.
-sourcepub fn get_unzoomed_transit_riders(&self, map: &Map) -> Vec<UnzoomedAgent>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourceimpl Sim
sourcepub fn instantiate(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
)
sourcepub fn instantiate_without_retries(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
retry_if_no_room: bool,
timer: &mut Timer<'_>
)
If retry_if_no_room is false, any vehicles that fail to spawn because of something else in
+
sourcepub fn get_unzoomed_transit_riders(&self, map: &Map) -> Vec<UnzoomedAgent>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourceimpl Sim
sourcepub fn instantiate(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
timer: &mut Timer<'_>
)
sourcepub fn instantiate_without_retries(
&mut self,
scenario: &Scenario,
map: &Map,
rng: &mut XorShiftRng,
retry_if_no_room: bool,
timer: &mut Timer<'_>
)
If retry_if_no_room is false, any vehicles that fail to spawn because of something else in
the way will just wind up as cancelled trips.
sourceimpl Sim
sourcepub fn new(map: &Map, opts: SimOptions) -> Sim
sourcepub(crate) fn spawn_trips(
&mut self,
input: Vec<(PersonID, TripInfo, StartTripArgs)>,
map: &Map,
timer: &mut Timer<'_>
)
sourcepub fn get_free_onstreet_spots(&self, l: LaneID) -> Vec<ParkingSpot>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_free_offstreet_spots(&self, b: BuildingID) -> Vec<ParkingSpot>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_free_lot_spots(&self, pl: ParkingLotID) -> Vec<ParkingSpot>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_all_parking_spots(&self) -> (Vec<ParkingSpot>, Vec<ParkingSpot>)
(Filled, available)
-sourcepub fn bldg_to_parked_cars(&self, b: BuildingID) -> Vec<CarID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn walking_path_to_nearest_parking_spot(
&self,
map: &Map,
b: BuildingID
) -> Option<Path>
sourcepub(crate) fn new_person(
&mut self,
orig_id: Option<OrigPersonID>,
ped_speed: Speed,
vehicle_specs: Vec<VehicleSpec>
) -> &Person
sourcepub(crate) fn seed_parked_car(&mut self, vehicle: Vehicle, spot: ParkingSpot)
sourcepub(crate) fn seed_bus_route(&mut self, route: &TransitRoute)
sourcefn start_bus(&mut self, route: &TransitRoute, map: &Map)
sourcepub fn set_run_name(&mut self, name: String)
sourcepub fn get_run_name(&self) -> &String
sourceimpl Sim
sourcefn minimal_step(
&mut self,
map: &Map,
max_dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
sourcefn do_step(
&mut self,
map: &Map,
time: Time,
cmd: Command,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
sourcefn dispatch_events(&mut self, events: Vec<Event>, map: &Map)
sourcepub fn timed_step(
&mut self,
map: &Map,
dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>,
timer: &mut Timer<'_>
)
sourcepub fn tiny_step(
&mut self,
map: &Map,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
sourcepub fn time_limited_step(
&mut self,
map: &Map,
dt: Duration,
real_time_limit: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
sourcepub fn dump_before_abort(&self)
sourceimpl Sim
sourcepub fn save_dir(&self) -> String
sourcefn save_path(&self, base_time: Time) -> String
sourcepub fn save(&mut self) -> String
sourcepub fn find_previous_savestate(&self, base_time: Time) -> Option<String>
sourcepub fn find_next_savestate(&self, base_time: Time) -> Option<String>
sourcepub fn load_savestate(path: String, timer: &mut Timer<'_>) -> Result<Sim>
sourceimpl Sim
sourcepub fn handle_live_edited_traffic_signals(&mut self, map: &Map)
sourcepub fn handle_live_edits(
&mut self,
map: &Map,
timer: &mut Timer<'_>
) -> (usize, usize)
Respond to arbitrary map edits without resetting the simulation. Returns the number of
+
sourcepub fn bldg_to_parked_cars(&self, b: BuildingID) -> Vec<CarID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn walking_path_to_nearest_parking_spot(
&self,
map: &Map,
b: BuildingID
) -> Option<Path>
sourcepub(crate) fn new_person(
&mut self,
orig_id: Option<OrigPersonID>,
ped_speed: Speed,
vehicle_specs: Vec<VehicleSpec>
) -> &Person
sourcepub(crate) fn seed_parked_car(&mut self, vehicle: Vehicle, spot: ParkingSpot)
sourcepub(crate) fn seed_bus_route(&mut self, route: &TransitRoute)
sourcefn start_bus(&mut self, route: &TransitRoute, map: &Map)
sourcepub fn set_run_name(&mut self, name: String)
sourcepub fn get_run_name(&self) -> &String
sourceimpl Sim
sourcefn minimal_step(
&mut self,
map: &Map,
max_dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
sourcefn do_step(
&mut self,
map: &Map,
time: Time,
cmd: Command,
maybe_cb: &mut Option<Box<dyn SimCallback>>
) -> bool
sourcefn dispatch_events(&mut self, events: Vec<Event>, map: &Map)
sourcepub fn timed_step(
&mut self,
map: &Map,
dt: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>,
timer: &mut Timer<'_>
)
sourcepub fn tiny_step(
&mut self,
map: &Map,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
sourcepub fn time_limited_step(
&mut self,
map: &Map,
dt: Duration,
real_time_limit: Duration,
maybe_cb: &mut Option<Box<dyn SimCallback>>
)
sourcepub fn dump_before_abort(&self)
sourceimpl Sim
sourcepub fn save_dir(&self) -> String
sourcefn save_path(&self, base_time: Time) -> String
sourcepub fn save(&mut self) -> String
sourcepub fn find_previous_savestate(&self, base_time: Time) -> Option<String>
sourcepub fn find_next_savestate(&self, base_time: Time) -> Option<String>
sourcepub fn load_savestate(path: String, timer: &mut Timer<'_>) -> Result<Sim>
sourceimpl Sim
sourcepub fn handle_live_edited_traffic_signals(&mut self, map: &Map)
sourcepub fn handle_live_edits(
&mut self,
map: &Map,
timer: &mut Timer<'_>
) -> (usize, usize)
Respond to arbitrary map edits without resetting the simulation. Returns the number of
(trips cancelled, parked cars displaced).
sourceimpl Sim
sourcepub fn delete_car(&mut self, id: CarID, map: &Map)
sourcepub fn clear_alerts(&mut self) -> Vec<(Time, AlertLocation, String)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourceimpl Sim
sourcepub fn set_periodic_callback(&mut self, frequency: Duration)
Only one at a time supported.
diff --git a/rustdoc/sim/struct.SimFlags.html b/rustdoc/sim/struct.SimFlags.html
index d15bf99ac3..59ae9c6dc1 100644
--- a/rustdoc/sim/struct.SimFlags.html
+++ b/rustdoc/sim/struct.SimFlags.html
@@ -1,7 +1,7 @@
SimFlags in sim - Rust pub struct SimFlags {
load_path: Option<String>,
pub load: String,
- pub scenario_modifiers: Vec<ScenarioModifier>,
+ pub scenario_modifiers: Vec<ScenarioModifier>,
pub rng_seed: u64,
pub opts: SimOptions,
}
Expand description
SimFlags specifies a simulation to setup. After parsing from structopt, you must call
@@ -14,7 +14,7 @@
load: String
The same as load_path
, but with a default value filled out. Call initialize
to set this
up.
-scenario_modifiers: Vec<ScenarioModifier>
A JSON list of modifiers to transform the scenario. These can be generated with the GUI.
+scenario_modifiers: Vec<ScenarioModifier>
A JSON list of modifiers to transform the scenario. These can be generated with the GUI.
rng_seed: u64
An arbitrary number to seed the random number generator. This is input to the deterministic
simulation, so different values affect results.
opts: SimOptions
Implementations
sourceimpl SimFlags
sourcepub const RNG_SEED: u64 = 42u64
sourcepub fn initialize(&mut self)
sourcepub fn for_test(run_name: &str) -> SimFlags
sourcepub fn make_rng(&self) -> XorShiftRng
sourcepub fn load_synchronously(
&self,
timer: &mut Timer<'_>
) -> (Map, Sim, XorShiftRng)
Loads a map and simulation. Not appropriate for use in the UI or on web.
diff --git a/rustdoc/sim/struct.SpawnOverTime.html b/rustdoc/sim/struct.SpawnOverTime.html
index 9fa48f796b..6143926cba 100644
--- a/rustdoc/sim/struct.SpawnOverTime.html
+++ b/rustdoc/sim/struct.SpawnOverTime.html
@@ -1,12 +1,12 @@
-SpawnOverTime in sim - Rust Struct sim::SpawnOverTime
source · [−]pub struct SpawnOverTime {
+SpawnOverTime in sim - Rust Struct sim::SpawnOverTime
[−]pub struct SpawnOverTime {
pub num_agents: usize,
pub start_time: Time,
pub stop_time: Time,
- pub goal: Option<TripEndpoint>,
+ pub goal: Option<TripEndpoint>,
pub percent_driving: f64,
pub percent_biking: f64,
pub percent_use_transit: f64,
-}
Fields
num_agents: usize
start_time: Time
stop_time: Time
goal: Option<TripEndpoint>
percent_driving: f64
percent_biking: f64
percent_use_transit: f64
Trait Implementations
sourceimpl Clone for SpawnOverTime
sourcefn clone(&self) -> SpawnOverTime
Returns a copy of the value. Read more1.0.0 · sourcefn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresourceimpl Debug for SpawnOverTime
sourceimpl<'de> Deserialize<'de> for SpawnOverTime
sourcefn deserialize<__D>(
__deserializer: __D
) -> Result<SpawnOverTime, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresourceimpl Serialize for SpawnOverTime
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for SpawnOverTime
impl Send for SpawnOverTime
impl Sync for SpawnOverTime
impl Unpin for SpawnOverTime
impl UnwindSafe for SpawnOverTime
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
+}Fields
num_agents: usize
start_time: Time
stop_time: Time
goal: Option<TripEndpoint>
percent_driving: f64
percent_biking: f64
percent_use_transit: f64
Trait Implementations
impl Clone for SpawnOverTime
fn clone(&self) -> SpawnOverTime
Returns a copy of the value. Read more1.0.0 · sourcefn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moreimpl Debug for SpawnOverTime
impl<'de> Deserialize<'de> for SpawnOverTime
fn deserialize<__D>(
__deserializer: __D
) -> Result<SpawnOverTime, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreimpl Serialize for SpawnOverTime
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for SpawnOverTime
impl Send for SpawnOverTime
impl Sync for SpawnOverTime
impl Unpin for SpawnOverTime
impl UnwindSafe for SpawnOverTime
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/struct.TripInfo.html b/rustdoc/sim/struct.TripInfo.html
index 5aa6709113..eb945675cc 100644
--- a/rustdoc/sim/struct.TripInfo.html
+++ b/rustdoc/sim/struct.TripInfo.html
@@ -1,13 +1,13 @@
TripInfo in sim - Rust pub struct TripInfo {
pub departure: Time,
- pub mode: TripMode,
- pub start: TripEndpoint,
- pub end: TripEndpoint,
- pub purpose: TripPurpose,
+ pub mode: TripMode,
+ pub start: TripEndpoint,
+ pub end: TripEndpoint,
+ pub purpose: TripPurpose,
pub modified: bool,
pub cancellation_reason: Option<String>,
}
Fields
departure: Time
Scheduled departure; the start may be delayed if the previous trip is taking too long.
-mode: TripMode
start: TripEndpoint
end: TripEndpoint
purpose: TripPurpose
modified: bool
Did a ScenarioModifier apply to this?
+mode: TripMode
start: TripEndpoint
end: TripEndpoint
purpose: TripPurpose
modified: bool
Did a ScenarioModifier apply to this?
cancellation_reason: Option<String>
Trait Implementations
sourceimpl<'de> Deserialize<'de> for TripInfo
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for TripInfo
impl Send for TripInfo
impl Sync for TripInfo
impl Unpin for TripInfo
impl UnwindSafe for TripInfo
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/trips/struct.Person.html b/rustdoc/sim/trips/struct.Person.html
index 919b7f31be..468702d9ca 100644
--- a/rustdoc/sim/trips/struct.Person.html
+++ b/rustdoc/sim/trips/struct.Person.html
@@ -1,6 +1,6 @@
Person in sim::trips - Rust pub struct Person {
pub id: PersonID,
- pub orig_id: Option<OrigPersonID>,
+ pub orig_id: Option<OrigPersonID>,
pub trips: Vec<TripID>,
pub state: PersonState,
pub ped: PedestrianID,
@@ -8,7 +8,7 @@
pub vehicles: Vec<Vehicle>,
delayed_trips: Vec<(TripID, StartTripArgs)>,
on_bus: Option<CarID>,
-}
Fields
id: PersonID
orig_id: Option<OrigPersonID>
trips: Vec<TripID>
state: PersonState
ped: PedestrianID
ped_speed: Speed
vehicles: Vec<Vehicle>
Both cars and bikes
+}Fields
id: PersonID
orig_id: Option<OrigPersonID>
trips: Vec<TripID>
state: PersonState
ped: PedestrianID
ped_speed: Speed
vehicles: Vec<Vehicle>
Both cars and bikes
delayed_trips: Vec<(TripID, StartTripArgs)>
on_bus: Option<CarID>
Implementations
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Person
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for Person
impl Send for Person
impl Sync for Person
impl Unpin for Person
impl UnwindSafe for Person
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/trips/struct.TripInfo.html b/rustdoc/sim/trips/struct.TripInfo.html
index 92ff6ff1a8..c9731d68d7 100644
--- a/rustdoc/sim/trips/struct.TripInfo.html
+++ b/rustdoc/sim/trips/struct.TripInfo.html
@@ -1,13 +1,13 @@
TripInfo in sim::trips - Rust pub struct TripInfo {
pub departure: Time,
- pub mode: TripMode,
- pub start: TripEndpoint,
- pub end: TripEndpoint,
- pub purpose: TripPurpose,
+ pub mode: TripMode,
+ pub start: TripEndpoint,
+ pub end: TripEndpoint,
+ pub purpose: TripPurpose,
pub modified: bool,
pub cancellation_reason: Option<String>,
}
Fields
departure: Time
Scheduled departure; the start may be delayed if the previous trip is taking too long.
-mode: TripMode
start: TripEndpoint
end: TripEndpoint
purpose: TripPurpose
modified: bool
Did a ScenarioModifier apply to this?
+mode: TripMode
start: TripEndpoint
end: TripEndpoint
purpose: TripPurpose
modified: bool
Did a ScenarioModifier apply to this?
cancellation_reason: Option<String>
Trait Implementations
sourceimpl<'de> Deserialize<'de> for TripInfo
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreAuto Trait Implementations
impl RefUnwindSafe for TripInfo
impl Send for TripInfo
impl Sync for TripInfo
impl Unpin for TripInfo
impl UnwindSafe for TripInfo
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
diff --git a/rustdoc/sim/trips/struct.TripManager.html b/rustdoc/sim/trips/struct.TripManager.html
index 596b113f4c..a1c6a48428 100644
--- a/rustdoc/sim/trips/struct.TripManager.html
+++ b/rustdoc/sim/trips/struct.TripManager.html
@@ -9,13 +9,13 @@
down into legs – for example, a driving trip might start with somebody walking to their car,
driving somewhere, parking, and then walking to their final destination.
https://a-b-street.github.io/tech/docs/trafficsim/trips.html describes some of the variations.
-Fields
trips: Vec<Trip>
people: Vec<Person>
active_trip_mode: BTreeMap<AgentID, TripID>
unfinished_trips: usize
car_id_counter: usize
events: Vec<Event>
Implementations
sourceimpl TripManager
sourcepub fn new() -> TripManager
sourcepub fn new_person(
&mut self,
orig_id: Option<OrigPersonID>,
ped_speed: Speed,
vehicle_specs: Vec<VehicleSpec>
) -> &Person
sourcepub fn new_car_id(&mut self) -> usize
sourcepub fn new_trip(&mut self, person: PersonID, info: TripInfo) -> TripID
sourcepub fn start_trip(
&mut self,
now: Time,
trip: TripID,
args: StartTripArgs,
ctx: &mut Ctx<'_>
)
sourcepub fn collect_events(&mut self) -> Vec<Event>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourceimpl TripManager
sourcepub fn agent_starting_trip_leg(&mut self, agent: AgentID, t: TripID)
This is idempotent to handle the case of cars retrying their spawning.
+Fields
trips: Vec<Trip>
people: Vec<Person>
active_trip_mode: BTreeMap<AgentID, TripID>
unfinished_trips: usize
car_id_counter: usize
events: Vec<Event>
Implementations
sourceimpl TripManager
sourcepub fn new() -> TripManager
sourcepub fn new_person(
&mut self,
orig_id: Option<OrigPersonID>,
ped_speed: Speed,
vehicle_specs: Vec<VehicleSpec>
) -> &Person
sourcepub fn new_car_id(&mut self) -> usize
sourcepub fn new_trip(&mut self, person: PersonID, info: TripInfo) -> TripID
sourcepub fn start_trip(
&mut self,
now: Time,
trip: TripID,
args: StartTripArgs,
ctx: &mut Ctx<'_>
)
sourcepub fn collect_events(&mut self) -> Vec<Event>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourceimpl TripManager
sourcepub fn agent_starting_trip_leg(&mut self, agent: AgentID, t: TripID)
This is idempotent to handle the case of cars retrying their spawning.
sourcepub fn car_reached_parking_spot(
&mut self,
now: Time,
car: CarID,
spot: ParkingSpot,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>
)
sourcepub fn ped_reached_parking_spot(
&mut self,
now: Time,
ped: PedestrianID,
spot: ParkingSpot,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>
)
sourcepub fn ped_ready_to_bike(
&mut self,
now: Time,
ped: PedestrianID,
spot: SidewalkSpot,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>
)
sourcepub fn bike_reached_end(
&mut self,
now: Time,
bike: CarID,
bike_rack: SidewalkSpot,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>
)
sourcepub fn ped_reached_building(
&mut self,
now: Time,
ped: PedestrianID,
bldg: BuildingID,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>
)
sourcepub fn ped_reached_bus_stop(
&mut self,
now: Time,
ped: PedestrianID,
stop: TransitStopID,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>,
transit: &mut TransitSimState
) -> Option<TransitRouteID>
If no route is returned, the pedestrian boarded a bus immediately.
sourcepub fn ped_boarded_bus(
&mut self,
now: Time,
ped: PedestrianID,
bus: CarID,
blocked_time: Duration,
walking: &mut WalkingSimState
) -> (TripID, PersonID)
sourcepub fn person_left_bus(
&mut self,
now: Time,
person: PersonID,
bus: CarID,
ctx: &mut Ctx<'_>
)
sourcepub fn ped_reached_border(
&mut self,
now: Time,
ped: PedestrianID,
i: IntersectionID,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>
)
sourcepub fn transit_rider_reached_border(
&mut self,
now: Time,
person: PersonID,
bus: CarID,
ctx: &mut Ctx<'_>
)
sourcepub fn car_or_bike_reached_border(
&mut self,
now: Time,
car: CarID,
i: IntersectionID,
blocked_time: Duration,
distance_crossed: Distance,
ctx: &mut Ctx<'_>
)
sourcefn trip_finished(&mut self, now: Time, id: TripID, ctx: &mut Ctx<'_>)
sourcefn start_delayed_trip(&mut self, now: Time, id: PersonID, ctx: &mut Ctx<'_>)
sourcefn spawn_ped(
&mut self,
now: Time,
id: TripID,
start: SidewalkSpot,
ctx: &mut Ctx<'_>
)
sourceimpl TripManager
sourcepub fn cancel_unstarted_trip(&mut self, id: TripID, reason: String)
Cancel a trip before it’s started. The person will stay where they are.
sourcepub fn cancel_trip(
&mut self,
now: Time,
id: TripID,
reason: String,
abandoned_vehicle: Option<Vehicle>,
ctx: &mut Ctx<'_>
)
Cancel a trip after it’s started. The person will be magically warped to their destination,
along with their car, as if the trip had completed normally.
sourcepub fn trip_abruptly_cancelled(&mut self, trip: TripID, agent: AgentID)
sourceimpl TripManager
sourcepub fn active_agents(&self) -> Vec<AgentID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn active_agents_and_trips(&self) -> &BTreeMap<AgentID, TripID>
sourcepub fn num_active_agents(&self) -> usize
sourcepub fn trip_to_agent(&self, id: TripID) -> TripResult<AgentID>
sourcepub fn agent_to_trip(&self, id: AgentID) -> Option<TripID>
This will be None for parked cars and buses. Should always work for pedestrians.
-sourcepub fn debug_trip(&self, id: AgentID)
sourcepub fn num_trips(&self) -> (usize, usize)
sourcepub fn num_agents(&self, transit: &TransitSimState) -> Counter<AgentType>
sourcepub fn num_commuters_vehicles(
&self,
transit: &TransitSimState,
walking: &WalkingSimState
) -> CommutersVehiclesCounts
sourcepub fn num_ppl(&self) -> (usize, usize, usize)
sourcepub fn is_done(&self) -> bool
sourcepub fn trip_info(&self, id: TripID) -> TripInfo
sourcepub fn all_trip_info(&self) -> Vec<(TripID, TripInfo)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn finished_trip_details(
&self,
id: TripID
) -> Option<(Duration, Duration, Distance)>
sourcepub fn trip_blocked_time(&self, id: TripID) -> Duration
sourcepub fn bldg_to_people(&self, b: BuildingID) -> Vec<PersonID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_person(&self, p: PersonID) -> Option<&Person>
sourcepub fn get_all_people(&self) -> &Vec<Person>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn trip_to_person(&self, id: TripID) -> Option<PersonID>
sourcepub fn all_arrivals_at_border(
&self,
at: IntersectionID
) -> Vec<(Time, AgentType)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn generate_scenario(&self, map: &Map, name: String) -> Scenario
Recreate the Scenario from an instantiated simulation. The results should match the
+
sourcepub fn debug_trip(&self, id: AgentID)
sourcepub fn num_trips(&self) -> (usize, usize)
sourcepub fn num_agents(&self, transit: &TransitSimState) -> Counter<AgentType>
sourcepub fn num_commuters_vehicles(
&self,
transit: &TransitSimState,
walking: &WalkingSimState
) -> CommutersVehiclesCounts
sourcepub fn num_ppl(&self) -> (usize, usize, usize)
sourcepub fn is_done(&self) -> bool
sourcepub fn trip_info(&self, id: TripID) -> TripInfo
sourcepub fn all_trip_info(&self) -> Vec<(TripID, TripInfo)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn finished_trip_details(
&self,
id: TripID
) -> Option<(Duration, Duration, Distance)>
sourcepub fn trip_blocked_time(&self, id: TripID) -> Duration
sourcepub fn bldg_to_people(&self, b: BuildingID) -> Vec<PersonID>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn get_person(&self, p: PersonID) -> Option<&Person>
sourcepub fn get_all_people(&self) -> &Vec<Person>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn trip_to_person(&self, id: TripID) -> Option<PersonID>
sourcepub fn all_arrivals_at_border(
&self,
at: IntersectionID
) -> Vec<(Time, AgentType)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
sourcepub fn generate_scenario(&self, map: &Map, name: String) -> Scenario
Recreate the Scenario from an instantiated simulation. The results should match the
original Scenario used.
Trait Implementations
sourceimpl Clone for TripManager
sourcefn clone(&self) -> TripManager
Returns a copy of the value. Read more1.0.0 · sourcefn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresourceimpl Debug for TripManager
sourceimpl<'de> Deserialize<'de> for TripManager
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresourceimpl Serialize for TripManager
Auto Trait Implementations
impl RefUnwindSafe for TripManager
impl Send for TripManager
impl Sync for TripManager
impl Unpin for TripManager
impl UnwindSafe for TripManager
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreimpl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
diff --git a/rustdoc/src/geom/polyline.rs.html b/rustdoc/src/geom/polyline.rs.html
index 96330dc04d..c12489d33b 100644
--- a/rustdoc/src/geom/polyline.rs.html
+++ b/rustdoc/src/geom/polyline.rs.html
@@ -2404,7 +2404,7 @@
impl From<&PolyLine> for geo::LineString {
fn from(poly_line: &PolyLine) -> Self {
- let coords: Vec<geo::Coordinate> = poly_line
+ let coords: Vec<geo::Coord> = poly_line
.pts
.iter()
.map(|pt| geo::coord! { x: pt.x(), y: pt.y() })
diff --git a/rustdoc/src/geom/pt.rs.html b/rustdoc/src/geom/pt.rs.html
index 6008e8fee2..1161f093c6 100644
--- a/rustdoc/src/geom/pt.rs.html
+++ b/rustdoc/src/geom/pt.rs.html
@@ -357,9 +357,9 @@
}
}
-impl From<Pt2D> for geo::Coordinate {
+impl From<Pt2D> for geo::Coord {
fn from(pt: Pt2D) -> Self {
- geo::Coordinate { x: pt.x, y: pt.y }
+ geo::Coord { x: pt.x, y: pt.y }
}
}
@@ -369,8 +369,8 @@
}
}
-impl From<geo::Coordinate> for Pt2D {
- fn from(coord: geo::Coordinate) -> Self {
+impl From<geo::Coord> for Pt2D {
+ fn from(coord: geo::Coord) -> Self {
Pt2D::new(coord.x, coord.y)
}
}
diff --git a/rustdoc/src/geom/ring.rs.html b/rustdoc/src/geom/ring.rs.html
index d226822aa9..b35f935a46 100644
--- a/rustdoc/src/geom/ring.rs.html
+++ b/rustdoc/src/geom/ring.rs.html
@@ -586,7 +586,7 @@
let coords = ring
.pts
.into_iter()
- .map(geo::Coordinate::from)
+ .map(geo::Coord::from)
.collect::<Vec<_>>();
Self(coords)
}
diff --git a/rustdoc/src/map_gui/home/runner/work/abstreet/abstreet/target/debug/build/map_gui-63c5bcb4b09cf8fd/out/built.rs.html b/rustdoc/src/map_gui/home/runner/work/abstreet/abstreet/target/debug/build/map_gui-63c5bcb4b09cf8fd/out/built.rs.html
index dff9991e3d..031422bfe8 100644
--- a/rustdoc/src/map_gui/home/runner/work/abstreet/abstreet/target/debug/build/map_gui-63c5bcb4b09cf8fd/out/built.rs.html
+++ b/rustdoc/src/map_gui/home/runner/work/abstreet/abstreet/target/debug/build/map_gui-63c5bcb4b09cf8fd/out/built.rs.html
@@ -174,7 +174,7 @@
pub const RUSTDOC_VERSION: &str = r"rustdoc 1.65.0 (897e37553 2022-11-02)";
#[doc=r#"The build time in RFC2822, UTC."#]
#[allow(dead_code)]
-pub const BUILT_TIME_UTC: &str = r"Thu, 01 Dec 2022 13:54:55 +0000";
+pub const BUILT_TIME_UTC: &str = r"Tue, 06 Dec 2022 11:26:33 +0000";
#[doc=r#"The target architecture, given by `CARGO_CFG_TARGET_ARCH`."#]
#[allow(dead_code)]
pub const CFG_TARGET_ARCH: &str = r"x86_64";