From df78b2de624098eeb933e24cab1caa2521db3a10 Mon Sep 17 00:00:00 2001 From: dabreegster Date: Tue, 23 Mar 2021 04:42:10 +0000 Subject: [PATCH] deploy: 4a704e3172bd80fd33739d4d9b989087c28b4ab8 --- .../extract/fn.find_parking_aisles.html | 2 +- rustdoc/convert_osm/extract/fn.get_area_type.html | 2 +- .../convert_osm/extract/fn.get_bldg_amenities.html | 2 +- rustdoc/convert_osm/extract/fn.is_bldg.html | 2 +- rustdoc/convert_osm/extract/fn.is_road.html | 2 +- .../fn.service_road_crosses_parking_lot.html | 2 +- rustdoc/convert_osm/extract/index.html | 2 +- .../built_info/constant.BUILT_TIME_UTC.html | 2 +- .../map_model/objects/turn/fn.movement_geom.html | 2 +- rustdoc/map_model/objects/turn/index.html | 2 +- rustdoc/search-index.js | 4 ++-- rustdoc/src/convert_osm/extract.rs.html | 14 ++++++++++++++ .../build/game-a95c4551e63dceca/out/built.rs.html | 2 +- rustdoc/src/map_model/objects/turn.rs.html | 10 ++++++---- 14 files changed, 33 insertions(+), 17 deletions(-) diff --git a/rustdoc/convert_osm/extract/fn.find_parking_aisles.html b/rustdoc/convert_osm/extract/fn.find_parking_aisles.html index 03fdb0783a..d27ea34841 100644 --- a/rustdoc/convert_osm/extract/fn.find_parking_aisles.html +++ b/rustdoc/convert_osm/extract/fn.find_parking_aisles.html @@ -1,4 +1,4 @@ convert_osm::extract::find_parking_aisles - Rust

[][src]Function convert_osm::extract::find_parking_aisles

fn find_parking_aisles(map: &mut RawMap, roads: &mut Vec<(WayID, RawRoad)>)
\ No newline at end of file + Change settings

[][src]Function convert_osm::extract::find_parking_aisles

fn find_parking_aisles(map: &mut RawMap, roads: &mut Vec<(WayID, RawRoad)>)
\ No newline at end of file diff --git a/rustdoc/convert_osm/extract/fn.get_area_type.html b/rustdoc/convert_osm/extract/fn.get_area_type.html index cd127d3c9d..8e2aa77011 100644 --- a/rustdoc/convert_osm/extract/fn.get_area_type.html +++ b/rustdoc/convert_osm/extract/fn.get_area_type.html @@ -1,4 +1,4 @@ convert_osm::extract::get_area_type - Rust

[][src]Function convert_osm::extract::get_area_type

fn get_area_type(tags: &Tags) -> Option<AreaType>
\ No newline at end of file + Change settings

[][src]Function convert_osm::extract::get_area_type

fn get_area_type(tags: &Tags) -> Option<AreaType>
\ No newline at end of file diff --git a/rustdoc/convert_osm/extract/fn.get_bldg_amenities.html b/rustdoc/convert_osm/extract/fn.get_bldg_amenities.html index 8a91eeac40..65f9f8118d 100644 --- a/rustdoc/convert_osm/extract/fn.get_bldg_amenities.html +++ b/rustdoc/convert_osm/extract/fn.get_bldg_amenities.html @@ -1,4 +1,4 @@ convert_osm::extract::get_bldg_amenities - Rust

[][src]Function convert_osm::extract::get_bldg_amenities

fn get_bldg_amenities(tags: &Tags) -> Vec<Amenity>
\ No newline at end of file + Change settings

[][src]Function convert_osm::extract::get_bldg_amenities

fn get_bldg_amenities(tags: &Tags) -> Vec<Amenity>
\ No newline at end of file diff --git a/rustdoc/convert_osm/extract/fn.is_bldg.html b/rustdoc/convert_osm/extract/fn.is_bldg.html index 5715be1e4b..8baf0f0b31 100644 --- a/rustdoc/convert_osm/extract/fn.is_bldg.html +++ b/rustdoc/convert_osm/extract/fn.is_bldg.html @@ -1,4 +1,4 @@ convert_osm::extract::is_bldg - Rust

[][src]Function convert_osm::extract::is_bldg

fn is_bldg(tags: &Tags) -> bool
\ No newline at end of file + Change settings

[][src]Function convert_osm::extract::is_bldg

fn is_bldg(tags: &Tags) -> bool
\ No newline at end of file diff --git a/rustdoc/convert_osm/extract/fn.is_road.html b/rustdoc/convert_osm/extract/fn.is_road.html index 0516453fb1..58bf844946 100644 --- a/rustdoc/convert_osm/extract/fn.is_road.html +++ b/rustdoc/convert_osm/extract/fn.is_road.html @@ -1,4 +1,4 @@ convert_osm::extract::is_road - Rust

[][src]Function convert_osm::extract::is_road

fn is_road(tags: &mut Tags, opts: &Options) -> bool
\ No newline at end of file + Change settings

[][src]Function convert_osm::extract::is_road

fn is_road(tags: &mut Tags, opts: &Options) -> bool
\ No newline at end of file diff --git a/rustdoc/convert_osm/extract/fn.service_road_crosses_parking_lot.html b/rustdoc/convert_osm/extract/fn.service_road_crosses_parking_lot.html index 90d97db221..fd162eba6f 100644 --- a/rustdoc/convert_osm/extract/fn.service_road_crosses_parking_lot.html +++ b/rustdoc/convert_osm/extract/fn.service_road_crosses_parking_lot.html @@ -1,4 +1,4 @@ convert_osm::extract::service_road_crosses_parking_lot - Rust

[][src]Function convert_osm::extract::service_road_crosses_parking_lot

fn service_road_crosses_parking_lot(
    map: &RawMap,
    road: &RawRoad,
    candidates: Vec<usize>
) -> bool
\ No newline at end of file + Change settings

[][src]Function convert_osm::extract::service_road_crosses_parking_lot

fn service_road_crosses_parking_lot(
    map: &RawMap,
    road: &RawRoad,
    candidates: Vec<usize>
) -> bool
\ No newline at end of file diff --git a/rustdoc/convert_osm/extract/index.html b/rustdoc/convert_osm/extract/index.html index af4fb976d0..48b980ffc8 100644 --- a/rustdoc/convert_osm/extract/index.html +++ b/rustdoc/convert_osm/extract/index.html @@ -1,6 +1,6 @@ convert_osm::extract - Rust

[][src]Module convert_osm::extract

Structs

+ Change settings

[][src]Module convert_osm::extract

Structs

OsmExtract

Functions

extract_osm
find_parking_aisles
get_area_type
get_bldg_amenities
is_bldg
is_road
service_road_crosses_parking_lot
\ No newline at end of file diff --git a/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html b/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html index 443947808c..b713139960 100644 --- a/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html +++ b/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html @@ -1,5 +1,5 @@ game::pregame::built_info::BUILT_TIME_UTC - Rust

[][src]Constant game::pregame::built_info::BUILT_TIME_UTC

pub const BUILT_TIME_UTC: &str = "Mon, 22 Mar 2021 23:42:04 +0000";

The built-time in RFC2822, UTC

+ Change settings

[][src]Constant game::pregame::built_info::BUILT_TIME_UTC

pub const BUILT_TIME_UTC: &str = "Tue, 23 Mar 2021 04:39:14 +0000";

The built-time in RFC2822, UTC

\ No newline at end of file diff --git a/rustdoc/map_model/objects/turn/fn.movement_geom.html b/rustdoc/map_model/objects/turn/fn.movement_geom.html index 9948e04e8f..806ecfb58d 100644 --- a/rustdoc/map_model/objects/turn/fn.movement_geom.html +++ b/rustdoc/map_model/objects/turn/fn.movement_geom.html @@ -1,4 +1,4 @@ map_model::objects::turn::movement_geom - Rust

[][src]Function map_model::objects::turn::movement_geom

fn movement_geom(
    polylines: Vec<&PolyLine>,
    from: DirectedRoadID,
    to: DirectedRoadID
) -> Result<PolyLine>
\ No newline at end of file + Change settings

[][src]Function map_model::objects::turn::movement_geom

fn movement_geom(
    polylines: Vec<&PolyLine>,
    from: DirectedRoadID,
    to: DirectedRoadID
) -> Result<PolyLine>
\ No newline at end of file diff --git a/rustdoc/map_model/objects/turn/index.html b/rustdoc/map_model/objects/turn/index.html index a3e55746ce..17a428d043 100644 --- a/rustdoc/map_model/objects/turn/index.html +++ b/rustdoc/map_model/objects/turn/index.html @@ -1,7 +1,7 @@ map_model::objects::turn - Rust

[][src]Module map_model::objects::turn

Structs

+ Change settings

[][src]Module map_model::objects::turn

Structs

CompressedMovementID

This is cheaper to store than a MovementID. It simply indexes into the list of movements.

Movement

A Movement groups all turns from one road to another, letting traffic signals operate at a higher level of abstraction. diff --git a/rustdoc/search-index.js b/rustdoc/search-index.js index cfdd1d1bce..9848dccdc6 100644 --- a/rustdoc/search-index.js +++ b/rustdoc/search-index.js @@ -4,7 +4,7 @@ var searchIndex = JSON.parse('{\ "augment_scenario":{"doc":"A tool to modify each person\'s schedule from an existing …","i":[[5,"main","augment_scenario","",null,[[]]],[5,"add_return_trips","","",null,[[["xorshiftrng",3],["scenario",3]]]],[5,"rand_duration","","",null,[[["xorshiftrng",3],["duration",3]],["duration",3]]],[5,"add_lunch_trips","","",null,[[["timer",3],["map",3],["scenario",3],["xorshiftrng",3]]]],[5,"pick_lunch_spot","","",null,[[["buildingid",3],["map",3],["xorshiftrng",3],["findclosest",3]],["option",4]]]],"p":[]},\ "clip_osm":{"doc":"","i":[[5,"main","clip_osm","Clips an .osm.pbf specified by --pbf using the Osmosis …",null,[[],["result",6]]],[5,"clip","","",null,[[["polygon",3]],["result",6]]],[5,"to_pt","","",null,[[],["point",3]]]],"p":[]},\ "collisions":{"doc":"A simple data format to list collisions that\'ve occurred …","i":[[3,"CollisionDataset","collisions","A single dataset describing some collisions that happened.",null,null],[12,"source_url","","A URL pointing to the original data source.",0,null],[12,"collisions","","The collisions imported from the data source.",0,null],[3,"Collision","","A single collision that occurred in the real world.",null,null],[12,"location","","A single point describing where the collision occurred.",1,null],[12,"time","","The local time the collision occurred.",1,null],[12,"severity","","The severity reported in the original data source.",1,null],[4,"Severity","","A simple ranking for how severe the collision was. …",null,null],[13,"Slight","","",2,null],[13,"Serious","","",2,null],[13,"Fatal","","",2,null],[5,"import_stats19","","Import data from the UK STATS19 dataset. See …",null,[[["extrashapes",3]],["collisiondataset",3]]],[5,"import_seattle","","Import data from Seattle GeoData …",null,[[["extrashapes",3]],["collisiondataset",3]]],[5,"parse_incdttm","","",null,[[],[["option",4],["duration",3]]]],[11,"from","","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"to_owned","","",2,[[]]],[11,"clone_into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"equivalent","","",2,[[]]],[11,"clone","","",2,[[],["severity",4]]],[11,"eq","","",2,[[["severity",4]]]],[11,"fmt","","",2,[[["formatter",3]],["result",6]]],[11,"deserialize","","",0,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]],[11,"deserialize","","",2,[[],["result",4]]],[11,"serialize","","",0,[[],["result",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"serialize","","",2,[[],["result",4]]]],"p":[[3,"CollisionDataset"],[3,"Collision"],[4,"Severity"]]},\ -"convert_osm":{"doc":"","i":[[0,"clip","convert_osm","",null,null],[5,"clip_map","convert_osm::clip","",null,[[["rawmap",3],["timer",3]]]],[0,"elevation","convert_osm","",null,null],[5,"add_data","convert_osm::elevation","",null,[[["rawmap",3],["timer",3]],["result",6]]],[5,"generate_input","","",null,[[["rawmap",3]],[["result",6],["vec",3]]]],[5,"scrape_output","","",null,[[["rawmap",3],["originalroad",3],["vec",3]],["result",6]]],[0,"extract","convert_osm","",null,null],[3,"OsmExtract","convert_osm::extract","",null,null],[12,"roads","","Unsplit roads",0,null],[12,"traffic_signals","","Traffic signals to the direction they apply",0,null],[12,"osm_node_ids","","",0,null],[12,"simple_turn_restrictions","","(ID, restriction type, from way ID, via node ID, to way …",0,null],[12,"complicated_turn_restrictions","","(relation ID, from way ID, via way ID, to way ID)",0,null],[12,"amenities","","(location, amenity)",0,null],[5,"extract_osm","","",null,[[["rawmap",3],["timer",3],["options",3]],["osmextract",3]]],[5,"is_road","","",null,[[["tags",3],["options",3]]]],[5,"is_bldg","","",null,[[["tags",3]]]],[5,"get_bldg_amenities","","",null,[[["tags",3]],[["vec",3],["amenity",3]]]],[5,"get_area_type","","",null,[[["tags",3]],[["areatype",4],["option",4]]]],[5,"find_parking_aisles","","",null,[[["rawmap",3],["vec",3]]]],[5,"service_road_crosses_parking_lot","","",null,[[["rawmap",3],["vec",3],["rawroad",3]]]],[0,"osm_geom","convert_osm","Utilities for extracting concrete geometry from OSM …",null,null],[5,"get_multipolygon_members","convert_osm::osm_geom","",null,[[["relation",3],["relationid",3],["document",3]],["vec",3]]],[5,"glue_multipolygon","","Take a bunch of partial PolyLines and attempt to glue …",null,[[["relationid",3],["option",4],["ring",3],["vec",3]],[["polygon",3],["vec",3]]]],[5,"glue_to_boundary","","",null,[[["polyline",3],["ring",3]],[["polygon",3],["option",4]]]],[5,"multipoly_geometry","","",null,[[["relation",3],["relationid",3],["document",3]],[["result",6],["polygon",3]]]],[0,"parking","convert_osm","",null,null],[17,"DIRECTED_ROAD_THICKNESS","convert_osm::parking","",null,null],[5,"apply_parking","","",null,[[["rawmap",3],["timer",3],["options",3]]]],[5,"use_parking_hints","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"use_offstreet_parking","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"apply_private_offstreet_parking","","",null,[[["rawmap",3],["privateoffstreetparking",4]]]],[0,"reader","convert_osm","",null,null],[3,"Document","convert_osm::reader","",null,null],[12,"gps_bounds","","",1,null],[12,"nodes","","",1,null],[12,"ways","","",1,null],[12,"relations","","",1,null],[3,"Node","","",null,null],[12,"pt","","",2,null],[12,"tags","","",2,null],[3,"Way","","",null,null],[12,"nodes","","",3,null],[12,"pts","","",3,null],[12,"tags","","",3,null],[3,"Relation","","",null,null],[12,"tags","","",4,null],[12,"members","","Role, member",4,null],[5,"read","","",null,[[["gpsbounds",3],["timer",3]],[["result",6],["document",3]]]],[5,"read_tags","","",null,[[["node",3]],["tags",3]]],[5,"scrape_bounds","","",null,[[["document",3]],["gpsbounds",3]]],[0,"snappy","convert_osm","",null,null],[5,"snap_cycleways","convert_osm::snappy","Attempt to snap separately mapped cycleways to main …",null,[[["rawmap",3],["timer",3]]]],[5,"dump_output","","",null,[[["rawmap",3],["hashmap",3],["btreemap",3],["multimap",3],["wayid",3]]]],[5,"v1","","",null,[[["rawmap",3],["btreemap",3],["hashmap",3]],[["multimap",3],["wayid",3]]]],[0,"split_ways","convert_osm","",null,null],[5,"split_up_roads","convert_osm::split_ways","Returns amenities and a mapping of all points to split …",null,[[["rawmap",3],["osmextract",3],["timer",3]]]],[5,"dedupe_angles","","",null,[[["pt2d",3],["vec",3]],[["pt2d",3],["vec",3]]]],[5,"should_collapse_roundabout","","Many \\\"roundabouts\\\" like …",null,[[["rawroad",3]]]],[0,"transit","convert_osm","",null,null],[5,"extract_route","convert_osm::transit","",null,[[["relation",3],["relationid",3],["document",3],["polygon",3]],[["rawbusroute",3],["option",4]]]],[5,"glue_route","","",null,[[["vec",3],["document",3],["wayid",3]],[["result",6],["vec",3]]]],[5,"snap_bus_stops","","",null,[[["rawbusroute",3],["rawmap",3],["hashmap",3]],[["rawbusroute",3],["result",6]]]],[3,"Options","convert_osm","",null,null],[12,"osm_input","","",5,null],[12,"name","","",5,null],[12,"clip","","The path to an osmosis boundary polygon. Highly …",5,null],[12,"map_config","","",5,null],[12,"onstreet_parking","","",5,null],[12,"public_offstreet_parking","","",5,null],[12,"private_offstreet_parking","","",5,null],[12,"include_railroads","","OSM railway=rail will be included as light rail if so. …",5,null],[12,"extra_buildings","","If provided, read polygons from this GeoJSON file and add …",5,null],[4,"OnstreetParking","","What roads will have on-street parking lanes? Data from …",null,null],[13,"JustOSM","","If not tagged, there won\'t be parking.",6,null],[13,"Blockface","","If OSM data is missing, then try to match data from …",6,null],[13,"SomeAdditionalWhereNoData","","If OSM data is missing, then infer parking lanes on some …",6,null],[12,"pct","convert_osm::OnstreetParking","[0, 100]",7,null],[4,"PublicOffstreetParking","convert_osm","How many spots are available in public parking garages?",null,null],[13,"None","","",8,null],[13,"GIS","","Pull data from …",8,null],[4,"PrivateOffstreetParking","","If a building doesn\'t have anything from …",null,null],[13,"FixedPerBldg","","",9,null],[5,"convert","","",null,[[["options",3],["timer",3]],["rawmap",3]]],[5,"use_amenities","","",null,[[["rawmap",3],["vec",3],["timer",3]]]],[5,"add_extra_buildings","","",null,[[["rawmap",3]],["result",6]]],[11,"from","convert_osm::extract","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"from","convert_osm::reader","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"from","convert_osm","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"to_owned","","",6,[[]]],[11,"clone_into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"clone","","",6,[[],["onstreetparking",4]]],[11,"clone","","",8,[[],["publicoffstreetparking",4]]],[11,"clone","","",9,[[],["privateoffstreetparking",4]]],[11,"serialize","","",6,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","","",9,[[],["result",4]]],[11,"deserialize","","",6,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","","",9,[[],["result",4]]]],"p":[[3,"OsmExtract"],[3,"Document"],[3,"Node"],[3,"Way"],[3,"Relation"],[3,"Options"],[4,"OnstreetParking"],[13,"SomeAdditionalWhereNoData"],[4,"PublicOffstreetParking"],[4,"PrivateOffstreetParking"]]},\ +"convert_osm":{"doc":"","i":[[0,"clip","convert_osm","",null,null],[5,"clip_map","convert_osm::clip","",null,[[["rawmap",3],["timer",3]]]],[0,"elevation","convert_osm","",null,null],[5,"add_data","convert_osm::elevation","",null,[[["rawmap",3],["timer",3]],["result",6]]],[5,"generate_input","","",null,[[["rawmap",3]],[["result",6],["vec",3]]]],[5,"scrape_output","","",null,[[["rawmap",3],["originalroad",3],["vec",3]],["result",6]]],[0,"extract","convert_osm","",null,null],[3,"OsmExtract","convert_osm::extract","",null,null],[12,"roads","","Unsplit roads",0,null],[12,"traffic_signals","","Traffic signals to the direction they apply",0,null],[12,"osm_node_ids","","",0,null],[12,"simple_turn_restrictions","","(ID, restriction type, from way ID, via node ID, to way …",0,null],[12,"complicated_turn_restrictions","","(relation ID, from way ID, via way ID, to way ID)",0,null],[12,"amenities","","(location, amenity)",0,null],[5,"extract_osm","","",null,[[["rawmap",3],["timer",3],["options",3]],["osmextract",3]]],[5,"is_road","","",null,[[["tags",3],["options",3]]]],[5,"is_bldg","","",null,[[["tags",3]]]],[5,"get_bldg_amenities","","",null,[[["tags",3]],[["vec",3],["amenity",3]]]],[5,"get_area_type","","",null,[[["tags",3]],[["areatype",4],["option",4]]]],[5,"find_parking_aisles","","",null,[[["rawmap",3],["vec",3]]]],[5,"service_road_crosses_parking_lot","","",null,[[["rawmap",3],["vec",3],["rawroad",3]]]],[0,"osm_geom","convert_osm","Utilities for extracting concrete geometry from OSM …",null,null],[5,"get_multipolygon_members","convert_osm::osm_geom","",null,[[["relation",3],["relationid",3],["document",3]],["vec",3]]],[5,"glue_multipolygon","","Take a bunch of partial PolyLines and attempt to glue …",null,[[["relationid",3],["option",4],["ring",3],["vec",3]],[["polygon",3],["vec",3]]]],[5,"glue_to_boundary","","",null,[[["polyline",3],["ring",3]],[["polygon",3],["option",4]]]],[5,"multipoly_geometry","","",null,[[["relation",3],["relationid",3],["document",3]],[["result",6],["polygon",3]]]],[0,"parking","convert_osm","",null,null],[17,"DIRECTED_ROAD_THICKNESS","convert_osm::parking","",null,null],[5,"apply_parking","","",null,[[["rawmap",3],["timer",3],["options",3]]]],[5,"use_parking_hints","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"use_offstreet_parking","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"apply_private_offstreet_parking","","",null,[[["rawmap",3],["privateoffstreetparking",4]]]],[0,"reader","convert_osm","",null,null],[3,"Document","convert_osm::reader","",null,null],[12,"gps_bounds","","",1,null],[12,"nodes","","",1,null],[12,"ways","","",1,null],[12,"relations","","",1,null],[3,"Node","","",null,null],[12,"pt","","",2,null],[12,"tags","","",2,null],[3,"Way","","",null,null],[12,"nodes","","",3,null],[12,"pts","","",3,null],[12,"tags","","",3,null],[3,"Relation","","",null,null],[12,"tags","","",4,null],[12,"members","","Role, member",4,null],[5,"read","","",null,[[["gpsbounds",3],["timer",3]],[["document",3],["result",6]]]],[5,"read_tags","","",null,[[["node",3]],["tags",3]]],[5,"scrape_bounds","","",null,[[["document",3]],["gpsbounds",3]]],[0,"snappy","convert_osm","",null,null],[5,"snap_cycleways","convert_osm::snappy","Attempt to snap separately mapped cycleways to main …",null,[[["rawmap",3],["timer",3]]]],[5,"dump_output","","",null,[[["rawmap",3],["hashmap",3],["multimap",3],["btreemap",3],["wayid",3]]]],[5,"v1","","",null,[[["rawmap",3],["btreemap",3],["hashmap",3]],[["wayid",3],["multimap",3]]]],[0,"split_ways","convert_osm","",null,null],[5,"split_up_roads","convert_osm::split_ways","Returns amenities and a mapping of all points to split …",null,[[["rawmap",3],["osmextract",3],["timer",3]]]],[5,"dedupe_angles","","",null,[[["pt2d",3],["vec",3]],[["pt2d",3],["vec",3]]]],[5,"should_collapse_roundabout","","Many \\\"roundabouts\\\" like …",null,[[["rawroad",3]]]],[0,"transit","convert_osm","",null,null],[5,"extract_route","convert_osm::transit","",null,[[["relation",3],["relationid",3],["document",3],["polygon",3]],[["rawbusroute",3],["option",4]]]],[5,"glue_route","","",null,[[["vec",3],["document",3],["wayid",3]],[["result",6],["vec",3]]]],[5,"snap_bus_stops","","",null,[[["hashmap",3],["rawmap",3],["rawbusroute",3]],[["result",6],["rawbusroute",3]]]],[3,"Options","convert_osm","",null,null],[12,"osm_input","","",5,null],[12,"name","","",5,null],[12,"clip","","The path to an osmosis boundary polygon. Highly …",5,null],[12,"map_config","","",5,null],[12,"onstreet_parking","","",5,null],[12,"public_offstreet_parking","","",5,null],[12,"private_offstreet_parking","","",5,null],[12,"include_railroads","","OSM railway=rail will be included as light rail if so. …",5,null],[12,"extra_buildings","","If provided, read polygons from this GeoJSON file and add …",5,null],[4,"OnstreetParking","","What roads will have on-street parking lanes? Data from …",null,null],[13,"JustOSM","","If not tagged, there won\'t be parking.",6,null],[13,"Blockface","","If OSM data is missing, then try to match data from …",6,null],[13,"SomeAdditionalWhereNoData","","If OSM data is missing, then infer parking lanes on some …",6,null],[12,"pct","convert_osm::OnstreetParking","[0, 100]",7,null],[4,"PublicOffstreetParking","convert_osm","How many spots are available in public parking garages?",null,null],[13,"None","","",8,null],[13,"GIS","","Pull data from …",8,null],[4,"PrivateOffstreetParking","","If a building doesn\'t have anything from …",null,null],[13,"FixedPerBldg","","",9,null],[5,"convert","","",null,[[["options",3],["timer",3]],["rawmap",3]]],[5,"use_amenities","","",null,[[["rawmap",3],["vec",3],["timer",3]]]],[5,"add_extra_buildings","","",null,[[["rawmap",3]],["result",6]]],[11,"from","convert_osm::extract","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"from","convert_osm::reader","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"from","convert_osm","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"to_owned","","",6,[[]]],[11,"clone_into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"clone","","",6,[[],["onstreetparking",4]]],[11,"clone","","",8,[[],["publicoffstreetparking",4]]],[11,"clone","","",9,[[],["privateoffstreetparking",4]]],[11,"serialize","","",6,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","","",9,[[],["result",4]]],[11,"deserialize","","",6,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","","",9,[[],["result",4]]]],"p":[[3,"OsmExtract"],[3,"Document"],[3,"Node"],[3,"Way"],[3,"Relation"],[3,"Options"],[4,"OnstreetParking"],[13,"SomeAdditionalWhereNoData"],[4,"PublicOffstreetParking"],[4,"PrivateOffstreetParking"]]},\ "dump_map":{"doc":"","i":[[5,"main","dump_map","",null,[[]]]],"p":[]},\ "dump_scenario":{"doc":"","i":[[5,"main","dump_scenario","",null,[[]]]],"p":[]},\ "extract_cities":{"doc":"Extracts all cities from a large .osm file.","i":[[5,"main","extract_cities","",null,[[]]]],"p":[]},\ @@ -20,7 +20,7 @@ var searchIndex = JSON.parse('{\ "kml":{"doc":"","i":[[3,"ExtraShapes","kml","Some dataset imported from KML, CSV, or something else. …",null,null],[12,"shapes","","",0,null],[3,"ExtraShape","","A single object in the dataset.",null,null],[12,"points","","The object has a different inferred shape depending on …",1,null],[12,"attributes","","Arbitrary key/value pairs associated with this object; no …",1,null],[5,"load","","Parses a .kml file and returns ExtraShapes. Objects will …",null,[[["gpsbounds",3],["timer",3],["string",3]],[["extrashapes",3],["result",6]]]],[5,"recurse","","",null,[[["gpsbounds",3],["node",3],["btreemap",3],["vec",3]],["result",6]]],[5,"parse_pt","","",null,[[],[["option",4],["lonlat",3]]]],[11,"load_csv","","Parses a .csv file and returns ExtraShapes. Each record …",0,[[["gpsbounds",3],["timer",3],["string",3]],[["extrashapes",3],["result",6]]]],[11,"from","","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_owned","","",1,[[]]],[11,"clone_into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"clone","","",1,[[],["extrashape",3]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"serialize","","",0,[[],["result",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"deserialize","","",0,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]]],"p":[[3,"ExtraShapes"],[3,"ExtraShape"]]},\ "map_editor":{"doc":"The map_editor renders and lets you edit RawMaps, which …","i":[[0,"edit","map_editor","",null,null],[3,"EditRoad","map_editor::edit","",null,null],[12,"r","","",0,null],[12,"show_direction","","",0,null],[11,"new","","",0,[[["originalroad",3],["eventctx",3],["app",3]],[["state",8],["box",3]]]],[0,"model","map_editor","",null,null],[17,"INTERSECTION_RADIUS","map_editor::model","",null,null],[17,"BUILDING_LENGTH","","",null,null],[3,"Model","","",null,null],[12,"map","","",1,null],[12,"showing_pts","","",1,null],[12,"world","","",1,null],[12,"include_bldgs","","",1,null],[12,"intersection_geom","","",1,null],[11,"blank","","",1,[[],["model",3]]],[11,"import","","",1,[[["eventctx",3],["string",3]],["model",3]]],[11,"export_to_osm","","",1,[[]]],[11,"set_boundary","","",1,[[["eventctx",3],["pt2d",3]]]],[11,"compute_bounds","","",1,[[],["bounds",3]]],[11,"intersection_added","","",1,[[["eventctx",3],["nodeid",3]]]],[11,"create_i","","",1,[[["eventctx",3],["pt2d",3]]]],[11,"move_i","","",1,[[["pt2d",3],["eventctx",3],["nodeid",3]]]],[11,"delete_i","","",1,[[["nodeid",3]]]],[11,"toggle_i","","",1,[[["eventctx",3],["nodeid",3]]]],[11,"show_intersection_geometry","","",1,[[["eventctx",3]]]],[11,"road_added","","",1,[[["eventctx",3],["originalroad",3]]]],[11,"road_deleted","","",1,[[["originalroad",3]]]],[11,"create_r","","",1,[[["eventctx",3],["nodeid",3]]]],[11,"delete_r","","",1,[[["eventctx",3],["originalroad",3]]]],[11,"road_object","","",1,[[["originalroad",3]],[["id",4],["object",3]]]],[11,"show_r_points","","",1,[[["eventctx",3],["originalroad",3]]]],[11,"stop_showing_pts","","",1,[[["originalroad",3]]]],[11,"move_r_pt","","",1,[[["pt2d",3],["eventctx",3],["originalroad",3]]]],[11,"delete_r_pt","","",1,[[["eventctx",3],["originalroad",3]]]],[11,"insert_r_pt","","",1,[[["pt2d",3],["eventctx",3],["originalroad",3]],[["option",4],["id",4]]]],[11,"clear_r_pts","","",1,[[["eventctx",3],["originalroad",3]]]],[11,"merge_r","","",1,[[["eventctx",3],["originalroad",3]]]],[11,"bldg_added","","",1,[[["osmid",4],["eventctx",3]]]],[11,"create_b","","",1,[[["eventctx",3],["pt2d",3]],["id",4]]],[11,"move_b","","",1,[[["osmid",4],["eventctx",3],["pt2d",3]]]],[11,"delete_b","","",1,[[["osmid",4]]]],[4,"ID","","",null,null],[13,"Building","","",2,null],[13,"Intersection","","",2,null],[13,"Road","","",2,null],[13,"RoadPoint","","",2,null],[5,"time_to_id","","",null,[[]]],[5,"dump_to_osm","","Express a RawMap as a .osm file. Why not just save the …",null,[[["rawmap",3]],[["result",4],["error",3]]]],[0,"world","map_editor","",null,null],[8,"ObjectID","map_editor::world","",null,null],[10,"zorder","","",3,[[]]],[3,"Object","","",null,null],[12,"id","","",4,null],[12,"geometry","","",4,null],[11,"new","","",4,[[["polygon",3],["color",3]],["object",3]]],[3,"WorldObject","","",null,null],[12,"unioned_polygon","","",5,null],[12,"draw","","",5,null],[12,"quadtree_id","","",5,null],[3,"World","","",null,null],[12,"objects","","",6,null],[12,"quadtree","","",6,null],[12,"current_selection","","",6,null],[11,"new","","",6,[[],["world",3]]],[11,"draw","","",6,[[["gfxctx",3],["fn",8]]]],[11,"handle_mouseover","","",6,[[["eventctx",3]]]],[11,"force_set_selection","","",6,[[]]],[11,"get_selection","","",6,[[],["option",4]]],[11,"add","","",6,[[["object",3],["eventctx",3]]]],[11,"delete","","",6,[[]]],[3,"App","map_editor","",null,null],[12,"model","","",7,null],[3,"MainState","","",null,null],[12,"mode","","",8,null],[12,"panel","","",8,null],[12,"last_id","","",8,null],[4,"Mode","","",null,null],[13,"Viewing","","",9,null],[13,"MovingIntersection","","",9,null],[13,"MovingBuilding","","",9,null],[13,"MovingRoadPoint","","",9,null],[13,"CreatingRoad","","",9,null],[13,"SetBoundaryPt1","","",9,null],[13,"SetBoundaryPt2","","",9,null],[11,"new","","",8,[[["eventctx",3]]]],[5,"main","","",null,[[]]],[11,"from","map_editor::edit","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"into_any","","",0,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",0,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",0,[[],["any",8]]],[11,"as_any_mut","","",0,[[],["any",8]]],[11,"into_any_arc","","",0,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_editor::model","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"into_any","","",1,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",1,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",1,[[],["any",8]]],[11,"as_any_mut","","",1,[[],["any",8]]],[11,"into_any_arc","","",1,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"to_owned","","",2,[[]]],[11,"clone_into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"equivalent","","",2,[[]]],[11,"get_hash","","",2,[[]]],[11,"vzip","","",2,[[]]],[11,"into_any","","",2,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",2,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",2,[[],["any",8]]],[11,"as_any_mut","","",2,[[],["any",8]]],[11,"into_any_arc","","",2,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_editor::world","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"into_any","","",4,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",4,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",4,[[],["any",8]]],[11,"as_any_mut","","",4,[[],["any",8]]],[11,"into_any_arc","","",4,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"into_any","","",5,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",5,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",5,[[],["any",8]]],[11,"as_any_mut","","",5,[[],["any",8]]],[11,"into_any_arc","","",5,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"into_any","","",6,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",6,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",6,[[],["any",8]]],[11,"as_any_mut","","",6,[[],["any",8]]],[11,"from","map_editor","",7,[[]]],[11,"into","","",7,[[]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"into_any","","",7,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",7,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",7,[[],["any",8]]],[11,"as_any_mut","","",7,[[],["any",8]]],[11,"into_any_arc","","",7,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"into_any","","",8,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",8,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",8,[[],["any",8]]],[11,"as_any_mut","","",8,[[],["any",8]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"into_any","","",9,[[["box",3],["global",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",9,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",9,[[],["any",8]]],[11,"as_any_mut","","",9,[[],["any",8]]],[11,"into_any_arc","","",9,[[["arc",3]],[["arc",3],["any",8]]]],[11,"zorder","map_editor::model","",2,[[]]],[11,"clone","","",2,[[],["id",4]]],[11,"eq","","",2,[[["id",4]]]],[11,"ne","","",2,[[["id",4]]]],[11,"fmt","","",2,[[["formatter",3]],["result",6]]],[11,"hash","","",2,[[]]],[11,"event","map_editor","",8,[[["app",3],["eventctx",3]],[["app",3],["transition",4]]]],[11,"draw","","",8,[[["gfxctx",3],["app",3]]]],[11,"dump_before_abort","","",7,[[["canvas",3]]]],[11,"before_quit","","",7,[[["canvas",3]]]],[11,"on_click","map_editor::edit","",0,[[["app",3],["eventctx",3],["panel",3]],[["app",3],["transition",4]]]],[11,"other_event","","",0,[[["app",3],["eventctx",3]],[["app",3],["transition",4]]]],[11,"draw","","",0,[[["gfxctx",3],["app",3]]]],[11,"draw_baselayer","","",0,[[],["drawbaselayer",4]]]],"p":[[3,"EditRoad"],[3,"Model"],[4,"ID"],[8,"ObjectID"],[3,"Object"],[3,"WorldObject"],[3,"World"],[3,"App"],[3,"MainState"],[4,"Mode"]]},\ "map_gui":{"doc":"This crate contains common code for applications that …","i":[[0,"colors","map_gui","A color scheme groups colors used for different map, …",null,null],[4,"ColorSchemeChoice","map_gui::colors","",null,null],[13,"DayMode","","",0,null],[13,"NightMode","","",0,null],[13,"Pregame","","",0,null],[13,"SAMGreenDay","","",0,null],[13,"SAMDesertDay","","",0,null],[13,"BAP","","",0,null],[13,"OSM","","",0,null],[13,"Starcat","","",0,null],[13,"Textured","","",0,null],[13,"MapboxLight","","",0,null],[13,"MapboxDark","","",0,null],[13,"FadedZoom","","",0,null],[13,"NegativeSpace","","",0,null],[11,"choices","","",0,[[],[["choice",3],["vec",3]]]],[3,"ColorScheme","","",null,null],[12,"scheme","","",1,null],[12,"panel_bg","","",1,null],[12,"inner_panel_bg","","",1,null],[12,"day_time_slider","","",1,null],[12,"night_time_slider","","",1,null],[12,"selected","","",1,null],[12,"current_object","","",1,null],[12,"perma_selected_object","","",1,null],[12,"fade_map_dark","","",1,null],[12,"gui_style","","",1,null],[12,"dialog_bg","","",1,null],[12,"minimap_cursor_border","","",1,null],[12,"minimap_cursor_bg","","",1,null],[12,"driving_lane","","",1,null],[12,"bus_lane","","",1,null],[12,"parking_lane","","",1,null],[12,"bike_lane","","",1,null],[12,"sidewalk","","",1,null],[12,"sidewalk_lines","","",1,null],[12,"general_road_marking","","",1,null],[12,"road_center_line","","",1,null],[12,"light_rail_track","","",1,null],[12,"private_road","","",1,null],[12,"unzoomed_highway","","",1,null],[12,"unzoomed_arterial","","",1,null],[12,"unzoomed_residential","","",1,null],[12,"unzoomed_trail","","",1,null],[12,"normal_intersection","","",1,null],[12,"stop_sign","","",1,null],[12,"stop_sign_pole","","",1,null],[12,"signal_protected_turn","","",1,null],[12,"signal_permitted_turn","","",1,null],[12,"signal_banned_turn","","",1,null],[12,"signal_box","","",1,null],[12,"signal_spinner","","",1,null],[12,"signal_turn_block_bg","","",1,null],[12,"very_slow_intersection","","",1,null],[12,"slow_intersection","","",1,null],[12,"normal_slow_intersection","","",1,null],[12,"void_background","","",1,null],[12,"map_background","","",1,null],[12,"unzoomed_interesting_intersection","","",1,null],[12,"residential_building","","",1,null],[12,"commercial_building","","",1,null],[12,"building_outline","","",1,null],[12,"parking_lot","","",1,null],[12,"grass","","",1,null],[12,"water","","",1,null],[12,"median_strip","","",1,null],[12,"pedestrian_plaza","","",1,null],[12,"study_area","","",1,null],[12,"unzoomed_car","","",1,null],[12,"unzoomed_bike","","",1,null],[12,"unzoomed_bus","","",1,null],[12,"unzoomed_pedestrian","","",1,null],[12,"agent_colors","","",1,null],[12,"route","","",1,null],[12,"turn_arrow","","",1,null],[12,"brake_light","","",1,null],[12,"bus_body","","",1,null],[12,"bus_label","","",1,null],[12,"train_body","","",1,null],[12,"ped_head","","",1,null],[12,"ped_foot","","",1,null],[12,"ped_preparing_bike_body","","",1,null],[12,"ped_crowd","","",1,null],[12,"bike_frame","","",1,null],[12,"parked_car","","",1,null],[12,"good_to_bad_red","","",1,null],[12,"good_to_bad_green","","",1,null],[12,"bus_layer","","",1,null],[12,"edits_layer","","",1,null],[12,"parking_trip","","",1,null],[12,"bike_trip","","",1,null],[12,"bus_trip","","",1,null],[12,"before_changes","","",1,null],[12,"after_changes","","",1,null],[11,"new","","",1,[[["colorschemechoice",4],["eventctx",3]],["colorscheme",3]]],[11,"pregame","","",1,[[],["colorscheme",3]]],[11,"day_mode","","",1,[[],["colorscheme",3]]],[11,"light_background","","",1,[[["style",3]],["colorscheme",3]]],[11,"rotating_color_plot","","",1,[[],["color",3]]],[11,"rotating_color_agents","","",1,[[],["color",3]]],[11,"unzoomed_road_surface","","",1,[[["roadrank",4]],["color",3]]],[11,"zoomed_road_surface","","",1,[[["lanetype",4],["roadrank",4]],["color",3]]],[11,"zoomed_intersection_surface","","",1,[[["roadrank",4]],["color",3]]],[11,"road_center_line","","",1,[[["roadrank",4]],["color",3]]],[11,"general_road_marking","","",1,[[["roadrank",4]],["color",3]]],[11,"solid_road_center","","",1,[[]]],[5,"modulo_color","","",null,[[["vec",3]],["color",3]]],[5,"hex","","",null,[[],["color",3]]],[11,"night_mode","","",1,[[],["colorscheme",3]]],[11,"sam_green_day","","",1,[[],["colorscheme",3]]],[11,"sam_desert_day","","",1,[[],["colorscheme",3]]],[11,"bap","","",1,[[],["colorscheme",3]]],[11,"osm","","",1,[[],["colorscheme",3]]],[11,"starcat","","",1,[[],["colorscheme",3]]],[11,"textured","","",1,[[],["colorscheme",3]]],[11,"mapbox_light","","",1,[[],["colorscheme",3]]],[11,"mapbox_dark","","",1,[[],["colorscheme",3]]],[11,"faded_zoom","","",1,[[],["colorscheme",3]]],[11,"negative_space","","",1,[[],["colorscheme",3]]],[0,"load","map_gui","Loading large resources (like maps, scenarios, and …",null,null],[0,"native_loader","map_gui::load","",null,null],[3,"FileLoader","map_gui::load::native_loader","",null,null],[12,"path","","",2,null],[12,"on_load","","",2,null],[11,"new","","",2,[[["box",3],["eventctx",3],["string",3],["fnonce",8]],[["state",8],["box",3]]]],[3,"RawFileLoader","","",null,null],[12,"path","","",3,null],[12,"on_load","","",3,null],[11,"new","","",3,[[["fnonce",8],["eventctx",3],["box",3],["string",3]],[["state",8],["box",3]]]],[3,"FileLoader","map_gui::load","",null,null],[12,"path","","",2,null],[12,"on_load","","",2,null],[3,"RawFileLoader","","",null,null],[12,"path","","",3,null],[12,"on_load","","",3,null],[3,"MapLoader","","",null,null],[11,"new","","",4,[[["eventctx",3],["mapname",3],["box",3],["fnonce",8]],[["state",8],["box",3]]]],[3,"MapAlreadyLoaded","","",null,null],[12,"on_load","","",5,null],[3,"FutureLoader","","",null,null],[12,"loading_title","","",6,null],[12,"started","","",6,null],[12,"panel","","",6,null],[12,"receiver","","",6,null],[12,"on_load","","",6,null],[12,"runtime","","",6,null],[11,"new","","",6,[[["box",3],["fnonce",8],["eventctx",3],["box",3],["pin",3]],[["state",8],["box",3]]]],[0,"options","map_gui","",null,null],[3,"Options","map_gui::options","Options controlling the UI. Some of the options are …",null,null],[12,"dev","","Dev mode exposes experimental tools useful for debugging, …",7,null],[12,"debug_all_agents","","Every time we draw, render all agents zoomed in. …",7,null],[12,"traffic_signal_style","","How traffic signals should be rendered.",7,null],[12,"color_scheme","","The color scheme for map elements, agents, and the UI.",7,null],[12,"toggle_day_night_colors","","Automatically change color_scheme based on simulation …",7,null],[12,"min_zoom_for_detail","","Map elements are drawn differently when unzoomed and …",7,null],[12,"camera_angle","","Draw buildings in different perspectives",7,null],[12,"time_increment","","How much to advance the sim with one of the speed controls",7,null],[12,"dont_draw_time_warp","","When time warping, don\'t draw to speed up simulation",7,null],[12,"jump_to_delay","","The delay threshold to halt on when jumping to the next …",7,null],[12,"language","","Display roads and buildings in an alternate language, if …",7,null],[12,"units","","How to render geometric units",7,null],[11,"default","","",7,[[],["options",3]]],[11,"update_from_args","","Update the options using command-line flags.",7,[[["cmdargs",3]]]],[4,"TrafficSignalStyle","","Different ways of drawing traffic signals. The names of …",null,null],[13,"BAP","","",8,null],[13,"Yuwen","","",8,null],[13,"IndividualTurnArrows","","",8,null],[4,"CameraAngle","","",null,null],[13,"TopDown","","",9,null],[13,"IsometricNE","","",9,null],[13,"IsometricNW","","",9,null],[13,"IsometricSE","","",9,null],[13,"IsometricSW","","",9,null],[13,"Abstract","","",9,null],[3,"OptionsPanel","","",null,null],[12,"panel","","",10,null],[11,"new","","",10,[[["eventctx",3]],[["state",8],["box",3]]]],[0,"render","map_gui","Render static and dynamic map elements.",null,null],[0,"agents","map_gui::render","",null,null],[3,"AgentCache","map_gui::render::agents","",null,null],[12,"unzoomed_agents","","This is controlled almost entirely by the minimap panel. …",11,null],[12,"time","","",11,null],[12,"agents_per_on","","",11,null],[12,"unzoomed","","",11,null],[11,"new","","",11,[[],["agentcache",3]]],[11,"get","","",11,[[["traversable",4]],[["vec",3],["renderable",8]]]],[11,"populate_if_needed","","",11,[[["prerender",3],["colorscheme",3],["map",3],["traversable",4],["sim",3]]]],[11,"calculate_unzoomed_agents","","If the sim time has changed or the unzoomed agent filters …",11,[[["applike",8]],["quadtree",3]]],[11,"draw_unzoomed_agents","","",11,[[["gfxctx",3],["applike",8]]]],[3,"UnzoomedAgents","","",null,null],[12,"cars","","",12,null],[12,"bikes","","",12,null],[12,"buses_and_trains","","",12,null],[12,"peds","","",12,null],[11,"new","","",12,[[],["unzoomedagents",3]]],[11,"cars","","",12,[[]]],[11,"bikes","","",12,[[]]],[11,"buses_and_trains","","",12,[[]]],[11,"peds","","",12,[[]]],[11,"color","","",12,[[["unzoomedagent",3],["colorscheme",3]],[["color",3],["option",4]]]],[11,"update","","",12,[[["panel",3]]]],[0,"area","map_gui::render","",null,null],[3,"DrawArea","map_gui::render::area","",null,null],[12,"id","","",13,null],[11,"new","","",13,[[["colorscheme",3],["area",3],["eventctx",3],["geombatch",3]],["drawarea",3]]],[11,"fill","","",13,[[["areatype",4],["colorscheme",3]],["fill",4]]],[0,"bike","map_gui::render","",null,null],[3,"DrawBike","map_gui::render::bike","",null,null],[12,"id","","",14,null],[12,"body_circle","","",14,null],[12,"zorder","","",14,null],[12,"draw_default","","",14,null],[11,"new","","",14,[[["prerender",3],["colorscheme",3],["map",3],["drawcarinput",3],["sim",3]],["drawbike",3]]],[0,"building","map_gui::render","",null,null],[3,"DrawBuilding","map_gui::render::building","",null,null],[12,"id","","",15,null],[12,"label","","",15,null],[11,"new","","",15,[[["building",3],["options",3],["colorscheme",3],["map",3],["eventctx",3],["geombatch",3]],["drawbuilding",3]]],[0,"bus_stop","map_gui::render","",null,null],[17,"RADIUS","map_gui::render::bus_stop","",null,null],[3,"DrawBusStop","","",null,null],[12,"id","","",16,null],[12,"center","","",16,null],[12,"zorder","","",16,null],[12,"draw_default","","",16,null],[11,"new","","",16,[[["colorscheme",3],["busstop",3],["eventctx",3],["map",3]],["drawbusstop",3]]],[0,"car","map_gui::render","",null,null],[17,"CAR_WIDTH","map_gui::render::car","",null,null],[3,"DrawCar","","",null,null],[12,"id","","",17,null],[12,"body","","",17,null],[12,"body_polygon","","",17,null],[12,"zorder","","",17,null],[12,"draw_default","","",17,null],[11,"new","","",17,[[["prerender",3],["colorscheme",3],["map",3],["drawcarinput",3],["sim",3]],["drawcar",3]]],[5,"thick_line_from_angle","","",null,[[["pt2d",3],["angle",3],["distance",3]],["polygon",3]]],[5,"zoomed_color_car","","",null,[[["drawcarinput",3],["colorscheme",3],["sim",3]],["color",3]]],[0,"intersection","map_gui::render","",null,null],[3,"DrawIntersection","map_gui::render::intersection","",null,null],[12,"id","","",18,null],[12,"zorder","","",18,null],[12,"draw_default","","",18,null],[12,"draw_traffic_signal","","",18,null],[11,"new","","",18,[[["intersection",3],["map",3]],["drawintersection",3]]],[11,"clear_rendering","","",18,[[]]],[11,"render","","",18,[[["applike",8]],["geombatch",3]]],[11,"stop_sign_geom","","",18,[[["map",3],["roadwithstopsign",3]],["option",4]]],[5,"calculate_corners","","",null,[[["intersection",3],["map",3]],[["vec",3],["polygon",3]]]],[5,"calculate_corners_with_borders","","",null,[[["intersection",3],["applike",8],["geombatch",3]]]],[5,"calculate_border_arrows","","",null,[[["intersection",3],["map",3],["road",3]],[["vec",3],["polygon",3]]]],[5,"make_octagon","","",null,[[["pt2d",3],["angle",3],["distance",3]],["polygon",3]]],[5,"make_crosswalk","","",null,[[["colorscheme",3],["turn",3],["map",3],["geombatch",3]]]],[5,"make_rainbow_crosswalk","","",null,[[["turn",3],["map",3],["geombatch",3]]]],[5,"perp_line","","",null,[[["distance",3],["line",3]],["line",3]]],[0,"lane","map_gui::render","",null,null],[3,"DrawLane","map_gui::render::lane","",null,null],[12,"id","","",19,null],[12,"polygon","","",19,null],[12,"zorder","","",19,null],[12,"draw_default","","",19,null],[11,"new","","",19,[[["lane",3],["map",3]],["drawlane",3]]],[11,"clear_rendering","","",19,[[]]],[11,"render","","",19,[[["applike",8]],["geombatch",3]]],[5,"perp_line","","",null,[[["distance",3],["line",3]],["line",3]]],[5,"calculate_sidewalk_lines","","",null,[[["lane",3]],[["vec",3],["polygon",3]]]],[5,"calculate_parking_lines","","",null,[[["lane",3],["map",3]],[["vec",3],["polygon",3]]]],[5,"calculate_driving_lines","","",null,[[["lane",3],["road",3]],[["vec",3],["polygon",3]]]],[5,"calculate_turn_markings","","",null,[[["lane",3],["map",3]],[["vec",3],["polygon",3]]]],[5,"calculate_one_way_markings","","",null,[[["lane",3],["road",3]],[["vec",3],["polygon",3]]]],[0,"map","map_gui::render","",null,null],[3,"DrawMap","map_gui::render::map","",null,null],[12,"roads","","",20,null],[12,"lanes","","",20,null],[12,"intersections","","",20,null],[12,"buildings","","",20,null],[12,"parking_lots","","",20,null],[12,"bus_stops","","",20,null],[12,"areas","","",20,null],[12,"boundary_polygon","","",20,null],[12,"draw_all_unzoomed_roads_and_intersections","","",20,null],[12,"draw_all_buildings","","",20,null],[12,"draw_all_building_paths","","",20,null],[12,"draw_all_building_outlines","","",20,null],[12,"draw_all_unzoomed_parking_lots","","",20,null],[12,"draw_all_areas","","",20,null],[12,"zorder_range","","",20,null],[12,"show_zorder","","",20,null],[12,"quadtree","","",20,null],[11,"new","","",20,[[["eventctx",3],["options",3],["colorscheme",3],["map",3],["timer",3]],["drawmap",3]]],[11,"regenerate_unzoomed_layer","","",20,[[["colorscheme",3],["map",3],["eventctx",3],["timer",3]],["drawable",3]]],[11,"get_r","","",20,[[["roadid",3]],["drawroad",3]]],[11,"get_l","","",20,[[["laneid",3]],["drawlane",3]]],[11,"get_i","","",20,[[["intersectionid",3]],["drawintersection",3]]],[11,"get_b","","",20,[[["buildingid",3]],["drawbuilding",3]]],[11,"get_pl","","",20,[[["parkinglotid",3]],["drawparkinglot",3]]],[11,"get_bs","","",20,[[["busstopid",3]],["drawbusstop",3]]],[11,"get_a","","",20,[[["areaid",3]],["drawarea",3]]],[11,"get_obj","","",20,[[["applike",8],["id",4],["agentcache",3],["eventctx",3]],[["option",4],["renderable",8]]]],[11,"get_matching_objects","","Unsorted, unexpanded, raw result.",20,[[["bounds",3]],[["id",4],["vec",3]]]],[11,"get_renderables_back_to_front","","A simple variation of the one in game that shows all …",20,[[["map",3],["bounds",3]],[["vec",3],["renderable",8]]]],[11,"zoomed_batch","","Build a single gigantic GeomBatch to render the entire …",20,[[["eventctx",3],["applike",8]],["geombatch",3]]],[0,"parking_lot","map_gui::render","",null,null],[3,"DrawParkingLot","map_gui::render::parking_lot","",null,null],[12,"id","","",21,null],[12,"draw","","",21,null],[11,"new","","",21,[[["parkinglot",3],["colorscheme",3],["eventctx",3],["geombatch",3]],["drawparkinglot",3]]],[11,"render","","",21,[[["applike",8]],["geombatch",3]]],[0,"pedestrian","map_gui::render","",null,null],[3,"DrawPedestrian","map_gui::render::pedestrian","",null,null],[12,"id","","",22,null],[12,"body_circle","","",22,null],[12,"zorder","","",22,null],[12,"draw_default","","",22,null],[11,"new","","",22,[[["prerender",3],["colorscheme",3],["drawpedestrianinput",3],["map",3],["sim",3]],["drawpedestrian",3]]],[11,"geometry","","",22,[[["geombatch",3],["colorscheme",3],["drawpedestrianinput",3],["sim",3]]]],[3,"DrawPedCrowd","","",null,null],[12,"members","","",23,null],[12,"blob","","",23,null],[12,"blob_pl","","",23,null],[12,"zorder","","",23,null],[12,"draw_default","","",23,null],[11,"new","","",23,[[["colorscheme",3],["map",3],["drawpedcrowdinput",3],["prerender",3]],["drawpedcrowd",3]]],[0,"road","map_gui::render","",null,null],[3,"DrawRoad","map_gui::render::road","",null,null],[12,"id","","",24,null],[12,"zorder","","",24,null],[12,"draw","","",24,null],[11,"new","","",24,[[["road",3]],["drawroad",3]]],[11,"render","","",24,[[["applike",8]],["geombatch",3]]],[11,"clear_rendering","","",24,[[]]],[0,"traffic_signal","map_gui::render","",null,null],[5,"draw_signal_stage","map_gui::render::traffic_signal","",null,[[["applike",8],["trafficsignalstyle",4],["prerender",3],["geombatch",3],["stage",3],["duration",3],["intersectionid",3],["option",4]]]],[5,"draw_stage_number","","",null,[[["geombatch",3],["applike",8],["intersectionid",3],["prerender",3]]]],[5,"draw_time_left","","",null,[[["prerender",3],["geombatch",3],["applike",8],["duration",3],["intersectionid",3],["stage",3]]]],[5,"walk_icon","","",null,[[["movement",3],["prerender",3]],["geombatch",3]]],[5,"dont_walk_icon","","",null,[[["movement",3],["prerender",3]],["geombatch",3]]],[5,"crosswalk_icon","","",null,[[["polyline",3]]]],[0,"turn","map_gui::render","",null,null],[17,"TURN_ICON_ARROW_LENGTH","map_gui::render::turn","",null,null],[3,"DrawMovement","","",null,null],[12,"id","","",25,null],[12,"hitbox","","",25,null],[11,"for_i","","",25,[[["colorscheme",3],["intersectionid",3],["map",3],["prerender",3]],["vec",3]]],[11,"draw_selected_movement","","",25,[[["turnpriority",4],["applike",8],["option",4],["geombatch",3]]]],[3,"DrawUberTurnGroup","","",null,null],[12,"group","","",26,null],[12,"block","","",26,null],[12,"arrow","","",26,null],[11,"new","","",26,[[["intersectioncluster",3],["map",3]],[["drawuberturngroup",3],["vec",3]]]],[5,"make_block_geom","","",null,[[["polyline",3],["angle",3],["distance",3]]]],[5,"make_circle_geom","","",null,[[["polyline",3],["angle",3]]]],[3,"AgentCache","map_gui::render","",null,null],[12,"unzoomed_agents","","This is controlled almost entirely by the minimap panel. …",11,null],[12,"time","","",11,null],[12,"agents_per_on","","",11,null],[12,"unzoomed","","",11,null],[3,"UnzoomedAgents","","",null,null],[12,"cars","","",12,null],[12,"bikes","","",12,null],[12,"buses_and_trains","","",12,null],[12,"peds","","",12,null],[3,"DrawArea","","",null,null],[12,"id","","",13,null],[3,"DrawBuilding","","",null,null],[12,"id","","",15,null],[12,"label","","",15,null],[5,"calculate_corners","","",null,[[["intersection",3],["map",3]],[["vec",3],["polygon",3]]]],[3,"DrawIntersection","","",null,null],[12,"id","","",18,null],[12,"zorder","","",18,null],[12,"draw_default","","",18,null],[12,"draw_traffic_signal","","",18,null],[3,"DrawMap","","",null,null],[12,"roads","","",20,null],[12,"lanes","","",20,null],[12,"intersections","","",20,null],[12,"buildings","","",20,null],[12,"parking_lots","","",20,null],[12,"bus_stops","","",20,null],[12,"areas","","",20,null],[12,"boundary_polygon","","",20,null],[12,"draw_all_unzoomed_roads_and_intersections","","",20,null],[12,"draw_all_buildings","","",20,null],[12,"draw_all_building_paths","","",20,null],[12,"draw_all_building_outlines","","",20,null],[12,"draw_all_unzoomed_parking_lots","","",20,null],[12,"draw_all_areas","","",20,null],[12,"zorder_range","","",20,null],[12,"show_zorder","","",20,null],[12,"quadtree","","",20,null],[3,"DrawPedCrowd","","",null,null],[12,"members","","",23,null],[12,"blob","","",23,null],[12,"blob_pl","","",23,null],[12,"zorder","","",23,null],[12,"draw_default","","",23,null],[3,"DrawPedestrian","","",null,null],[12,"id","","",22,null],[12,"body_circle","","",22,null],[12,"zorder","","",22,null],[12,"draw_default","","",22,null],[3,"DrawMovement","","",null,null],[12,"id","","",25,null],[12,"hitbox","","",25,null],[3,"DrawUberTurnGroup","","",null,null],[12,"group","","",26,null],[12,"block","","",26,null],[12,"arrow","","",26,null],[17,"BIG_ARROW_THICKNESS","","",null,null],[17,"CROSSWALK_LINE_THICKNESS","","",null,null],[17,"OUTLINE_THICKNESS","","",null,null],[8,"Renderable","","",null,null],[10,"get_id","","",27,[[],["id",4]]],[10,"draw","","",27,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_zorder","","",27,[[]]],[10,"get_outline","","",27,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",27,[[["pt2d",3],["map",3]]]],[5,"draw_vehicle","","",null,[[["prerender",3],["colorscheme",3],["map",3],["drawcarinput",3],["sim",3]],[["renderable",8],["box",3]]]],[3,"DrawOptions","","Control how the map is drawn.",null,null],[12,"suppress_traffic_signal_details","","Don\'t draw the current traffic signal state.",28,null],[12,"label_buildings","","Label every building.",28,null],[12,"show_building_paths","","Draw building paths.",28,null],[11,"new","","Default options for drawing a map.",28,[[],["drawoptions",3]]],[5,"unzoomed_agent_radius","","",null,[[["vehicletype",4],["option",4]],["distance",3]]],[5,"grey_out_unhighlighted_people","","If the sim has highlighted people, then fade all others …",null,[[["option",4],["color",3],["sim",3]],["color",3]]],[0,"simple_app","map_gui","",null,null],[3,"SimpleApp","map_gui::simple_app","Simple app state that just renders a static map, without …",null,null],[12,"map","","",29,null],[12,"draw_map","","",29,null],[12,"cs","","",29,null],[12,"opts","","",29,null],[12,"current_selection","","",29,null],[12,"session","","Custom per-app state can be stored here",29,null],[12,"time","","If desired, this can be advanced to render traffic …",29,null],[11,"new","","",29,[[["options",3],["fn",8],["eventctx",3]]]],[11,"draw_unzoomed","","",29,[[["gfxctx",3]]]],[11,"draw_zoomed","","",29,[[["gfxctx",3],["drawoptions",3]]]],[11,"recalculate_current_selection","","Assumes some defaults.",29,[[["eventctx",3]]]],[11,"mouseover_unzoomed_roads_and_intersections","","",29,[[["eventctx",3]],[["id",4],["option",4]]]],[11,"mouseover_unzoomed_buildings","","Only select buildings, and work whether zoomed in or not.",29,[[["eventctx",3]],[["id",4],["option",4]]]],[11,"calculate_current_selection","","",29,[[["eventctx",3]],[["id",4],["option",4]]]],[3,"SimpleWarper","","",null,null],[12,"warper","","",30,null],[0,"tools","map_gui","Assorted tools and UI states that\'re useful for …",null,null],[0,"camera","map_gui::tools","",null,null],[3,"CameraState","map_gui::tools::camera","Represents the state of a widgetry Canvas.",null,null],[12,"cam_x","","",31,null],[12,"cam_y","","",31,null],[12,"cam_zoom","","",31,null],[11,"save","","Save the camera\'s configuration for the specified map.",31,[[["mapname",3],["canvas",3]]]],[11,"load","","Load the camera\'s configuration for the specified map. …",31,[[["mapname",3],["eventctx",3]]]],[0,"city_picker","map_gui::tools","",null,null],[3,"CityPicker","map_gui::tools::city_picker","Lets the player switch maps.",null,null],[12,"panel","","",32,null],[12,"districts","","",32,null],[12,"selected","","",32,null],[12,"on_load","","",32,null],[11,"new","","",32,[[["fnonce",8],["eventctx",3],["box",3]],[["state",8],["box",3]]]],[11,"new_in_city","","",32,[[["cityname",3],["eventctx",3],["fnonce",8],["box",3]],[["state",8],["box",3]]]],[11,"chose_city","","",32,[[["eventctx",3],["mapname",3]],["transition",4]]],[3,"AllCityPicker","","",null,null],[12,"panel","","",33,null],[12,"on_load","","",33,null],[11,"new","","",33,[[["fnonce",8],["eventctx",3],["box",3]],[["state",8],["box",3]]]],[3,"CitiesInCountryPicker","","",null,null],[12,"panel","","",34,null],[12,"on_load","","",34,null],[11,"new","","",34,[[["fnonce",8],["eventctx",3],["box",3]],[["state",8],["box",3]]]],[5,"cities_per_country","","",null,[[],[["btreemap",3],["string",3],["vec",3]]]],[0,"colors","map_gui::tools","",null,null],[3,"ColorDiscrete","map_gui::tools::colors","",null,null],[12,"map","","",35,null],[12,"unzoomed","","",35,null],[12,"zoomed","","",35,null],[12,"categories","","",35,null],[12,"colors","","",35,null],[11,"new","","",35,[[["vec",3],["applike",8]],["colordiscrete",3]]],[11,"add_l","","",35,[[["laneid",3],["asref",8]]]],[11,"add_r","","",35,[[["asref",8],["roadid",3]]]],[11,"add_i","","",35,[[["intersectionid",3],["asref",8]]]],[11,"add_b","","",35,[[["buildingid",3],["asref",8]]]],[11,"add_bs","","",35,[[["asref",8],["busstopid",3]]]],[11,"build","","",35,[[["eventctx",3]]]],[3,"ColorLegend","","",null,null],[11,"row","","",36,[[["color",3],["eventctx",3]],["widget",3]]],[11,"gradient","","",36,[[["eventctx",3],["into",8],["colorscale",3],["vec",3],["string",3]],["widget",3]]],[11,"categories","","",36,[[["eventctx",3],["vec",3]],["widget",3]]],[3,"DivergingScale","","",null,null],[12,"low_color","","",37,null],[12,"mid_color","","",37,null],[12,"high_color","","",37,null],[12,"min","","",37,null],[12,"avg","","",37,null],[12,"max","","",37,null],[12,"ignore","","",37,null],[11,"new","","",37,[[["color",3]],["divergingscale",3]]],[11,"range","","",37,[[],["divergingscale",3]]],[11,"ignore","","",37,[[],["divergingscale",3]]],[11,"eval","","",37,[[],[["color",3],["option",4]]]],[11,"make_legend","","",37,[[["eventctx",3],["into",8],["vec",3],["string",3]],["widget",3]]],[3,"ColorNetwork","","",null,null],[12,"map","","",38,null],[12,"unzoomed","","",38,null],[12,"zoomed","","",38,null],[11,"new","","",38,[[["applike",8]],["colornetwork",3]]],[11,"add_l","","",38,[[["color",3],["laneid",3]]]],[11,"add_r","","",38,[[["color",3],["roadid",3]]]],[11,"add_i","","",38,[[["intersectionid",3],["color",3]]]],[11,"add_b","","",38,[[["color",3],["buildingid",3]]]],[11,"add_pl","","",38,[[["color",3],["parkinglotid",3]]]],[11,"ranked_roads","","",38,[[["counter",3],["colorscale",3],["roadid",3]]]],[11,"ranked_intersections","","",38,[[["intersectionid",3],["counter",3],["colorscale",3]]]],[11,"pct_roads","","",38,[[["counter",3],["colorscale",3],["roadid",3]]]],[11,"pct_intersections","","",38,[[["intersectionid",3],["counter",3],["colorscale",3]]]],[11,"build","","",38,[[["eventctx",3]]]],[3,"ColorScale","","",null,null],[12,"0","","",39,null],[11,"eval","","",39,[[],["color",3]]],[11,"from_colorous","","",39,[[["gradient",3]],["colorscale",3]]],[11,"inner_eval","","",39,[[]]],[0,"command","map_gui::tools","",null,null],[3,"RunCommand","map_gui::tools::command","Executes a command and displays STDOUT and STDERR in a …",null,null],[12,"p","","",40,null],[12,"comm","","",40,null],[12,"panel","","",40,null],[12,"lines","","",40,null],[12,"max_capacity","","",40,null],[12,"started","","",40,null],[12,"on_load","","",40,null],[11,"new","","",40,[[["eventctx",3],["vec",3],["fnonce",8],["box",3],["string",3]],[["state",8],["box",3]]]],[11,"read_output","","",40,[[]]],[0,"heatmap","map_gui::tools","",null,null],[17,"NEIGHBORS","map_gui::tools::heatmap","",null,null],[3,"HeatmapOptions","","",null,null],[12,"resolution","","",41,null],[12,"radius","","",41,null],[12,"smoothing","","",41,null],[12,"contours","","",41,null],[12,"color_scheme","","",41,null],[11,"new","","",41,[[],["heatmapoptions",3]]],[11,"to_controls","","",41,[[["eventctx",3],["widget",3]],[["vec",3],["widget",3]]]],[11,"from_controls","","",41,[[["panel",3]],["heatmapoptions",3]]],[5,"make_heatmap","","",null,[[["eventctx",3],["vec",3],["heatmapoptions",3],["pt2d",3],["bounds",3],["geombatch",3]],["widget",3]]],[3,"Grid","","",null,null],[12,"data","","",42,null],[12,"width","","",42,null],[12,"height","","",42,null],[11,"new","","",42,[[],["grid",3]]],[11,"idx","","",42,[[]]],[0,"importer","map_gui::tools","",null,null],[3,"ImportCity","map_gui::tools::importer","",null,null],[12,"panel","","",43,null],[12,"on_load","","",43,null],[11,"new","","",43,[[["fnonce",8],["eventctx",3],["box",3]],[["state",8],["box",3]]]],[5,"grab_geojson_from_clipboard","","",null,[[],["result",6]]],[0,"minimap","map_gui::tools","",null,null],[3,"Minimap","map_gui::tools::minimap","",null,null],[12,"controls","","",44,null],[12,"time","","",44,null],[12,"app_type","","",44,null],[12,"dragging","","",44,null],[12,"panel","","",44,null],[12,"zoomed","","",44,null],[12,"layer","","",44,null],[12,"zoom_lvl","","",44,null],[12,"base_zoom","","",44,null],[12,"zoom","","",44,null],[12,"offset_x","","",44,null],[12,"offset_y","","",44,null],[8,"MinimapControls","","Customize the appearance and behavior of a minimap.",null,null],[10,"has_zorder","","Should the user be able to control the z-order visible? …",45,[[]]],[11,"has_layer","","Is there some additional layer displayed on the minimap? …",45,[[]]],[11,"draw_extra","","Draw extra stuff on the minimap, just pulling from the …",45,[[["gfxctx",3]]]],[11,"make_unzoomed_panel","","When unzoomed, display this panel. By default, no …",45,[[["eventctx",3]],["panel",3]]],[11,"make_legend","","A row beneath the minimap in the zoomed view, usually …",45,[[["eventctx",3]],["widget",3]]],[11,"make_zoomed_side_panel","","Controls to be placed to the left to the zoomed-in panel",45,[[["eventctx",3]],["widget",3]]],[11,"panel_clicked","","If a button is clicked that was produced by some method …",45,[[["eventctx",3]],[["option",4],["transition",4]]]],[11,"panel_changed","","Called for Outcome::Changed on the panel.",45,[[["panel",3],["eventctx",3]]]],[11,"new","","",44,[[["eventctx",3]],["minimap",3]]],[11,"recreate_panel","","",44,[[["eventctx",3]]]],[11,"map_to_minimap_pct","","",44,[[["pt2d",3]]]],[11,"set_zoom","","",44,[[["eventctx",3]]]],[11,"recenter","","",44,[[["eventctx",3]]]],[11,"event","","",44,[[["eventctx",3]],[["option",4],["transition",4]]]],[11,"draw","","",44,[[["gfxctx",3]]]],[11,"draw_with_extra_layers","","",44,[[["drawable",3],["gfxctx",3],["vec",3]]]],[11,"get_panel","","",44,[[],["panel",3]]],[11,"mut_panel","","",44,[[],["panel",3]]],[0,"navigate","map_gui::tools","",null,null],[3,"Navigator","map_gui::tools::navigate","",null,null],[12,"panel","","",46,null],[11,"new","","",46,[[["eventctx",3]],[["state",8],["box",3]]]],[3,"CrossStreet","","",null,null],[12,"first","","",47,null],[12,"panel","","",47,null],[12,"draw","","",47,null],[11,"new","","",47,[[["vec",3],["eventctx",3],["roadid",3]],[["state",8],["box",3]]]],[3,"SearchBuildings","","",null,null],[12,"panel","","",48,null],[11,"new","","",48,[[["eventctx",3]],[["state",8],["box",3]]]],[0,"turn_explorer","map_gui::tools","",null,null],[3,"TurnExplorer","map_gui::tools::turn_explorer","A tool to explore all of the turns from a single lane.",null,null],[12,"l","","",49,null],[12,"idx","","",49,null],[12,"panel","","",49,null],[11,"new","","",49,[[["eventctx",3],["laneid",3]],[["state",8],["box",3]]]],[11,"make_panel","","",49,[[["eventctx",3],["laneid",3]],["panel",3]]],[11,"color_turn_type","","",49,[[["turntype",4]],["color",3]]],[17,"CURRENT_TURN","","",null,null],[17,"CONFLICTING_TURN","","",null,null],[0,"ui","map_gui::tools","Generic UI tools. Some of this should perhaps be lifted …",null,null],[3,"ChooseSomething","map_gui::tools::ui","Choose something from a menu, then feed the answer to a …",null,null],[12,"panel","","",50,null],[12,"cb","","",50,null],[11,"new","","",50,[[["vec",3],["eventctx",3],["into",8],["choice",3],["fn",8],["string",3],["box",3]],[["state",8],["box",3]]]],[3,"PromptInput","","Prompt for arbitrary text input, then feed the answer to …",null,null],[12,"panel","","",51,null],[12,"cb","","",51,null],[11,"new","","",51,[[["fn",8],["eventctx",3],["box",3]],[["state",8],["box",3]]]],[3,"PopupMsg","","Display a message dialog.",null,null],[12,"panel","","",52,null],[12,"unzoomed","","",52,null],[12,"zoomed","","",52,null],[11,"new","","",52,[[["eventctx",3],["vec",3]],[["state",8],["box",3]]]],[11,"also_draw","","",52,[[["eventctx",3],["vec",3],["drawable",3]],[["state",8],["box",3]]]],[0,"updater","map_gui::tools","",null,null],[17,"NEXT_RELEASE","map_gui::tools::updater","",null,null],[3,"Picker","","",null,null],[12,"panel","","",53,null],[12,"on_load","","",53,null],[11,"new","","",53,[[["fnonce",8],["eventctx",3],["box",3]],[["state",8],["box",3]]]],[5,"size_per_city","","",null,[[["manifest",3]],[["btreemap",3],["string",3]]]],[5,"prettyprint_bytes","","",null,[[],["string",3]]],[5,"prompt_to_download_missing_data","","",null,[[["eventctx",3],["mapname",3]],[["transition",4],["applike",8]]]],[5,"sync_missing_files","","",null,[[["timer",3]],[["vec",3],["string",3]]]],[5,"download","","",null,[[["string",3]],["result",6]]],[0,"url","map_gui::tools","",null,null],[3,"URLManager","map_gui::tools::url","Utilities for reflecting the current map and viewport in …",null,null],[11,"update_url_free_param","","This does nothing on native. On web, it modifies the …",54,[[["string",3]],["result",6]]],[11,"update_url_cam","","This does nothing on native. On web, it modifies the …",54,[[["eventctx",3]],["result",6]]],[11,"parse_center_camera","","Parse an OSM-style zoom/lat/lon string …",54,[[["string",3]],["option",4]]],[5,"update_url","","",null,[[["fn",8],["box",3]],["result",6]]],[5,"change_url_free_param","","",null,[[["string",3]],["string",3]]],[5,"change_url_cam","","",null,[[["string",3]],["string",3]]],[3,"CameraState","map_gui::tools","Represents the state of a widgetry Canvas.",null,null],[12,"cam_x","","",31,null],[12,"cam_y","","",31,null],[12,"cam_zoom","","",31,null],[3,"CityPicker","","Lets the player switch maps.",null,null],[12,"panel","","",32,null],[12,"districts","","",32,null],[12,"selected","","",32,null],[12,"on_load","","",32,null],[3,"ColorDiscrete","","",null,null],[12,"map","","",35,null],[12,"unzoomed","","",35,null],[12,"zoomed","","",35,null],[12,"categories","","",35,null],[12,"colors","","",35,null],[3,"ColorLegend","","",null,null],[3,"ColorNetwork","","",null,null],[12,"map","","",38,null],[12,"unzoomed","","",38,null],[12,"zoomed","","",38,null],[3,"ColorScale","","",null,null],[12,"0","","",39,null],[3,"DivergingScale","","",null,null],[12,"low_color","","",37,null],[12,"mid_color","","",37,null],[12,"high_color","","",37,null],[12,"min","","",37,null],[12,"avg","","",37,null],[12,"max","","",37,null],[12,"ignore","","",37,null],[5,"make_heatmap","","",null,[[["eventctx",3],["vec",3],["heatmapoptions",3],["pt2d",3],["bounds",3],["geombatch",3]],["widget",3]]],[3,"Grid","","",null,null],[12,"data","","",42,null],[12,"width","","",42,null],[12,"height","","",42,null],[3,"HeatmapOptions","","",null,null],[12,"resolution","","",41,null],[12,"radius","","",41,null],[12,"smoothing","","",41,null],[12,"contours","","",41,null],[12,"color_scheme","","",41,null],[3,"Minimap","","",null,null],[12,"controls","","",44,null],[12,"time","","",44,null],[12,"app_type","","",44,null],[12,"dragging","","",44,null],[12,"panel","","",44,null],[12,"zoomed","","",44,null],[12,"layer","","",44,null],[12,"zoom_lvl","","",44,null],[12,"base_zoom","","",44,null],[12,"zoom","","",44,null],[12,"offset_x","","",44,null],[12,"offset_y","","",44,null],[8,"MinimapControls","","Customize the appearance and behavior of a minimap.",null,null],[10,"has_zorder","","Should the user be able to control the z-order visible? …",45,[[]]],[11,"has_layer","map_gui::tools::minimap","Is there some additional layer displayed on the minimap? …",45,[[]]],[11,"draw_extra","","Draw extra stuff on the minimap, just pulling from the …",45,[[["gfxctx",3]]]],[11,"make_unzoomed_panel","","When unzoomed, display this panel. By default, no …",45,[[["eventctx",3]],["panel",3]]],[11,"make_legend","","A row beneath the minimap in the zoomed view, usually …",45,[[["eventctx",3]],["widget",3]]],[11,"make_zoomed_side_panel","","Controls to be placed to the left to the zoomed-in panel",45,[[["eventctx",3]],["widget",3]]],[11,"panel_clicked","","If a button is clicked that was produced by some method …",45,[[["eventctx",3]],[["option",4],["transition",4]]]],[11,"panel_changed","","Called for Outcome::Changed on the panel.",45,[[["panel",3],["eventctx",3]]]],[3,"Navigator","map_gui::tools","",null,null],[12,"panel","","",46,null],[3,"TurnExplorer","","A tool to explore all of the turns from a single lane.",null,null],[12,"l","","",49,null],[12,"idx","","",49,null],[12,"panel","","",49,null],[3,"ChooseSomething","","Choose something from a menu, then feed the answer to a …",null,null],[12,"panel","","",50,null],[12,"cb","","",50,null],[3,"PopupMsg","","Display a message dialog.",null,null],[12,"panel","","",52,null],[12,"unzoomed","","",52,null],[12,"zoomed","","",52,null],[3,"PromptInput","","Prompt for arbitrary text input, then feed the answer to …",null,null],[12,"panel","","",51,null],[12,"cb","","",51,null],[3,"URLManager","","Utilities for reflecting the current map and viewport in …",null,null],[5,"prompt_to_download_missing_data","","",null,[[["eventctx",3],["mapname",3]],[["transition",4],["applike",8]]]],[5,"loading_tips","","",null,[[],["text",3]]],[5,"grey_out_map","","Make it clear the map can\'t be interacted with right now.",null,[[["gfxctx",3],["applike",8]]]],[5,"nice_map_name","","",null,[[["mapname",3]]]],[5,"nice_country_name","","",null,[[]]],[5,"open_browser","","",null,[[["asref",8]]]],[3,"SimpleApp","map_gui","Simple app state that just renders a static map, without …",null,null],[12,"map","","",29,null],[12,"draw_map","","",29,null],[12,"cs","","",29,null],[12,"opts","","",29,null],[12,"current_selection","","",29,null],[12,"session","","Custom per-app state can be stored here",29,null],[12,"time","","If desired, this can be advanced to render traffic …",29,null],[8,"AppLike","","An application wishing to use the tools in this crate has …",null,null],[10,"map","","",55,[[],["map",3]]],[10,"sim","","",55,[[],["sim",3]]],[10,"cs","","",55,[[],["colorscheme",3]]],[10,"mut_cs","","",55,[[],["colorscheme",3]]],[10,"draw_map","","",55,[[],["drawmap",3]]],[10,"mut_draw_map","","",55,[[],["drawmap",3]]],[10,"opts","","",55,[[],["options",3]]],[10,"mut_opts","","",55,[[],["options",3]]],[10,"map_switched","","",55,[[["timer",3],["eventctx",3],["map",3]]]],[10,"draw_with_opts","","",55,[[["gfxctx",3],["drawoptions",3]]]],[10,"make_warper","","Create a widgetry::State that warps to the given point.",55,[[["option",4],["option",4],["pt2d",3],["eventctx",3],["id",4]],[["state",8],["box",3]]]],[11,"sim_time","","",55,[[],["time",3]]],[11,"current_stage_and_remaining_time","","",55,[[["intersectionid",3]]]],[11,"change_color_scheme","","Change the color scheme. Idempotent. Return true if there …",55,[[["colorschemechoice",4],["eventctx",3]]]],[4,"ID","","",null,null],[13,"Road","","",56,null],[13,"Lane","","",56,null],[13,"Intersection","","",56,null],[13,"Building","","",56,null],[13,"ParkingLot","","",56,null],[13,"Car","","",56,null],[13,"Pedestrian","","",56,null],[13,"PedCrowd","","",56,null],[13,"BusStop","","",56,null],[13,"Area","","",56,null],[11,"from_agent","","",56,[[["agentid",4]],["id",4]]],[11,"agent_id","","",56,[[],[["agentid",4],["option",4]]]],[11,"as_intersection","","",56,[[],["intersectionid",3]]],[11,"as_building","","",56,[[],["buildingid",3]]],[11,"from","map_gui::colors","",0,[[]]],[11,"into","","",0,[[]]],[11,"to_owned","","",0,[[]]],[11,"clone_into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"into_any","","",0,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",0,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",0,[[],["any",8]]],[11,"as_any_mut","","",0,[[],["any",8]]],[11,"into_any_arc","","",0,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"into_any","","",1,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",1,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",1,[[],["any",8]]],[11,"as_any_mut","","",1,[[],["any",8]]],[11,"into_any_arc","","",1,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::load::native_loader","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"into_any","","",2,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",2,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",2,[[],["any",8]]],[11,"as_any_mut","","",2,[[],["any",8]]],[11,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"into_any","","",3,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",3,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",3,[[],["any",8]]],[11,"as_any_mut","","",3,[[],["any",8]]],[11,"from","map_gui::load","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"into_any","","",4,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",4,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",4,[[],["any",8]]],[11,"as_any_mut","","",4,[[],["any",8]]],[11,"into_any_arc","","",4,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"into_any","","",5,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",5,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",5,[[],["any",8]]],[11,"as_any_mut","","",5,[[],["any",8]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"into_any","","",6,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",6,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",6,[[],["any",8]]],[11,"as_any_mut","","",6,[[],["any",8]]],[11,"from","map_gui::options","",7,[[]]],[11,"into","","",7,[[]]],[11,"to_owned","","",7,[[]]],[11,"clone_into","","",7,[[]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"into_any","","",7,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",7,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",7,[[],["any",8]]],[11,"as_any_mut","","",7,[[],["any",8]]],[11,"into_any_arc","","",7,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"into_any","","",8,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",8,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",8,[[],["any",8]]],[11,"as_any_mut","","",8,[[],["any",8]]],[11,"into_any_arc","","",8,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"into_any","","",9,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",9,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",9,[[],["any",8]]],[11,"as_any_mut","","",9,[[],["any",8]]],[11,"into_any_arc","","",9,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"vzip","","",10,[[]]],[11,"into_any","","",10,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",10,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",10,[[],["any",8]]],[11,"as_any_mut","","",10,[[],["any",8]]],[11,"from","map_gui::render::agents","",11,[[]]],[11,"into","","",11,[[]]],[11,"borrow","","",11,[[]]],[11,"borrow_mut","","",11,[[]]],[11,"try_from","","",11,[[],["result",4]]],[11,"try_into","","",11,[[],["result",4]]],[11,"type_id","","",11,[[],["typeid",3]]],[11,"vzip","","",11,[[]]],[11,"into_any","","",11,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",11,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",11,[[],["any",8]]],[11,"as_any_mut","","",11,[[],["any",8]]],[11,"from","","",12,[[]]],[11,"into","","",12,[[]]],[11,"to_owned","","",12,[[]]],[11,"clone_into","","",12,[[]]],[11,"borrow","","",12,[[]]],[11,"borrow_mut","","",12,[[]]],[11,"try_from","","",12,[[],["result",4]]],[11,"try_into","","",12,[[],["result",4]]],[11,"type_id","","",12,[[],["typeid",3]]],[11,"vzip","","",12,[[]]],[11,"into_any","","",12,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",12,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",12,[[],["any",8]]],[11,"as_any_mut","","",12,[[],["any",8]]],[11,"into_any_arc","","",12,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::area","",13,[[]]],[11,"into","","",13,[[]]],[11,"borrow","","",13,[[]]],[11,"borrow_mut","","",13,[[]]],[11,"try_from","","",13,[[],["result",4]]],[11,"try_into","","",13,[[],["result",4]]],[11,"type_id","","",13,[[],["typeid",3]]],[11,"vzip","","",13,[[]]],[11,"into_any","","",13,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",13,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",13,[[],["any",8]]],[11,"as_any_mut","","",13,[[],["any",8]]],[11,"into_any_arc","","",13,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::bike","",14,[[]]],[11,"into","","",14,[[]]],[11,"borrow","","",14,[[]]],[11,"borrow_mut","","",14,[[]]],[11,"try_from","","",14,[[],["result",4]]],[11,"try_into","","",14,[[],["result",4]]],[11,"type_id","","",14,[[],["typeid",3]]],[11,"vzip","","",14,[[]]],[11,"into_any","","",14,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",14,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",14,[[],["any",8]]],[11,"as_any_mut","","",14,[[],["any",8]]],[11,"into_any_arc","","",14,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::building","",15,[[]]],[11,"into","","",15,[[]]],[11,"borrow","","",15,[[]]],[11,"borrow_mut","","",15,[[]]],[11,"try_from","","",15,[[],["result",4]]],[11,"try_into","","",15,[[],["result",4]]],[11,"type_id","","",15,[[],["typeid",3]]],[11,"vzip","","",15,[[]]],[11,"into_any","","",15,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",15,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",15,[[],["any",8]]],[11,"as_any_mut","","",15,[[],["any",8]]],[11,"into_any_arc","","",15,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::bus_stop","",16,[[]]],[11,"into","","",16,[[]]],[11,"borrow","","",16,[[]]],[11,"borrow_mut","","",16,[[]]],[11,"try_from","","",16,[[],["result",4]]],[11,"try_into","","",16,[[],["result",4]]],[11,"type_id","","",16,[[],["typeid",3]]],[11,"vzip","","",16,[[]]],[11,"into_any","","",16,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",16,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",16,[[],["any",8]]],[11,"as_any_mut","","",16,[[],["any",8]]],[11,"into_any_arc","","",16,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::car","",17,[[]]],[11,"into","","",17,[[]]],[11,"borrow","","",17,[[]]],[11,"borrow_mut","","",17,[[]]],[11,"try_from","","",17,[[],["result",4]]],[11,"try_into","","",17,[[],["result",4]]],[11,"type_id","","",17,[[],["typeid",3]]],[11,"vzip","","",17,[[]]],[11,"into_any","","",17,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",17,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",17,[[],["any",8]]],[11,"as_any_mut","","",17,[[],["any",8]]],[11,"into_any_arc","","",17,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::intersection","",18,[[]]],[11,"into","","",18,[[]]],[11,"borrow","","",18,[[]]],[11,"borrow_mut","","",18,[[]]],[11,"try_from","","",18,[[],["result",4]]],[11,"try_into","","",18,[[],["result",4]]],[11,"type_id","","",18,[[],["typeid",3]]],[11,"vzip","","",18,[[]]],[11,"into_any","","",18,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",18,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",18,[[],["any",8]]],[11,"as_any_mut","","",18,[[],["any",8]]],[11,"from","map_gui::render::lane","",19,[[]]],[11,"into","","",19,[[]]],[11,"borrow","","",19,[[]]],[11,"borrow_mut","","",19,[[]]],[11,"try_from","","",19,[[],["result",4]]],[11,"try_into","","",19,[[],["result",4]]],[11,"type_id","","",19,[[],["typeid",3]]],[11,"vzip","","",19,[[]]],[11,"into_any","","",19,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",19,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",19,[[],["any",8]]],[11,"as_any_mut","","",19,[[],["any",8]]],[11,"into_any_arc","","",19,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::map","",20,[[]]],[11,"into","","",20,[[]]],[11,"borrow","","",20,[[]]],[11,"borrow_mut","","",20,[[]]],[11,"try_from","","",20,[[],["result",4]]],[11,"try_into","","",20,[[],["result",4]]],[11,"type_id","","",20,[[],["typeid",3]]],[11,"vzip","","",20,[[]]],[11,"into_any","","",20,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",20,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",20,[[],["any",8]]],[11,"as_any_mut","","",20,[[],["any",8]]],[11,"from","map_gui::render::parking_lot","",21,[[]]],[11,"into","","",21,[[]]],[11,"borrow","","",21,[[]]],[11,"borrow_mut","","",21,[[]]],[11,"try_from","","",21,[[],["result",4]]],[11,"try_into","","",21,[[],["result",4]]],[11,"type_id","","",21,[[],["typeid",3]]],[11,"vzip","","",21,[[]]],[11,"into_any","","",21,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",21,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",21,[[],["any",8]]],[11,"as_any_mut","","",21,[[],["any",8]]],[11,"into_any_arc","","",21,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::pedestrian","",22,[[]]],[11,"into","","",22,[[]]],[11,"borrow","","",22,[[]]],[11,"borrow_mut","","",22,[[]]],[11,"try_from","","",22,[[],["result",4]]],[11,"try_into","","",22,[[],["result",4]]],[11,"type_id","","",22,[[],["typeid",3]]],[11,"vzip","","",22,[[]]],[11,"into_any","","",22,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",22,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",22,[[],["any",8]]],[11,"as_any_mut","","",22,[[],["any",8]]],[11,"into_any_arc","","",22,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",23,[[]]],[11,"into","","",23,[[]]],[11,"borrow","","",23,[[]]],[11,"borrow_mut","","",23,[[]]],[11,"try_from","","",23,[[],["result",4]]],[11,"try_into","","",23,[[],["result",4]]],[11,"type_id","","",23,[[],["typeid",3]]],[11,"vzip","","",23,[[]]],[11,"into_any","","",23,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",23,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",23,[[],["any",8]]],[11,"as_any_mut","","",23,[[],["any",8]]],[11,"into_any_arc","","",23,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::road","",24,[[]]],[11,"into","","",24,[[]]],[11,"borrow","","",24,[[]]],[11,"borrow_mut","","",24,[[]]],[11,"try_from","","",24,[[],["result",4]]],[11,"try_into","","",24,[[],["result",4]]],[11,"type_id","","",24,[[],["typeid",3]]],[11,"vzip","","",24,[[]]],[11,"into_any","","",24,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",24,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",24,[[],["any",8]]],[11,"as_any_mut","","",24,[[],["any",8]]],[11,"into_any_arc","","",24,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render::turn","",25,[[]]],[11,"into","","",25,[[]]],[11,"borrow","","",25,[[]]],[11,"borrow_mut","","",25,[[]]],[11,"try_from","","",25,[[],["result",4]]],[11,"try_into","","",25,[[],["result",4]]],[11,"type_id","","",25,[[],["typeid",3]]],[11,"vzip","","",25,[[]]],[11,"into_any","","",25,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",25,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",25,[[],["any",8]]],[11,"as_any_mut","","",25,[[],["any",8]]],[11,"into_any_arc","","",25,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",26,[[]]],[11,"into","","",26,[[]]],[11,"borrow","","",26,[[]]],[11,"borrow_mut","","",26,[[]]],[11,"try_from","","",26,[[],["result",4]]],[11,"try_into","","",26,[[],["result",4]]],[11,"type_id","","",26,[[],["typeid",3]]],[11,"vzip","","",26,[[]]],[11,"into_any","","",26,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",26,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",26,[[],["any",8]]],[11,"as_any_mut","","",26,[[],["any",8]]],[11,"into_any_arc","","",26,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::render","",28,[[]]],[11,"into","","",28,[[]]],[11,"borrow","","",28,[[]]],[11,"borrow_mut","","",28,[[]]],[11,"try_from","","",28,[[],["result",4]]],[11,"try_into","","",28,[[],["result",4]]],[11,"type_id","","",28,[[],["typeid",3]]],[11,"vzip","","",28,[[]]],[11,"into_any","","",28,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",28,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",28,[[],["any",8]]],[11,"as_any_mut","","",28,[[],["any",8]]],[11,"into_any_arc","","",28,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::simple_app","",29,[[]]],[11,"into","","",29,[[]]],[11,"borrow","","",29,[[]]],[11,"borrow_mut","","",29,[[]]],[11,"try_from","","",29,[[],["result",4]]],[11,"try_into","","",29,[[],["result",4]]],[11,"type_id","","",29,[[],["typeid",3]]],[11,"vzip","","",29,[[]]],[11,"into_any","","",29,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",29,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",29,[[],["any",8]]],[11,"as_any_mut","","",29,[[],["any",8]]],[11,"from","","",30,[[]]],[11,"into","","",30,[[]]],[11,"borrow","","",30,[[]]],[11,"borrow_mut","","",30,[[]]],[11,"try_from","","",30,[[],["result",4]]],[11,"try_into","","",30,[[],["result",4]]],[11,"type_id","","",30,[[],["typeid",3]]],[11,"vzip","","",30,[[]]],[11,"into_any","","",30,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",30,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",30,[[],["any",8]]],[11,"as_any_mut","","",30,[[],["any",8]]],[11,"into_any_arc","","",30,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::tools::camera","",31,[[]]],[11,"into","","",31,[[]]],[11,"borrow","","",31,[[]]],[11,"borrow_mut","","",31,[[]]],[11,"try_from","","",31,[[],["result",4]]],[11,"try_into","","",31,[[],["result",4]]],[11,"type_id","","",31,[[],["typeid",3]]],[11,"vzip","","",31,[[]]],[11,"into_any","","",31,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",31,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",31,[[],["any",8]]],[11,"as_any_mut","","",31,[[],["any",8]]],[11,"into_any_arc","","",31,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::tools::city_picker","",32,[[]]],[11,"into","","",32,[[]]],[11,"borrow","","",32,[[]]],[11,"borrow_mut","","",32,[[]]],[11,"try_from","","",32,[[],["result",4]]],[11,"try_into","","",32,[[],["result",4]]],[11,"type_id","","",32,[[],["typeid",3]]],[11,"vzip","","",32,[[]]],[11,"into_any","","",32,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",32,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",32,[[],["any",8]]],[11,"as_any_mut","","",32,[[],["any",8]]],[11,"from","","",33,[[]]],[11,"into","","",33,[[]]],[11,"borrow","","",33,[[]]],[11,"borrow_mut","","",33,[[]]],[11,"try_from","","",33,[[],["result",4]]],[11,"try_into","","",33,[[],["result",4]]],[11,"type_id","","",33,[[],["typeid",3]]],[11,"vzip","","",33,[[]]],[11,"into_any","","",33,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",33,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",33,[[],["any",8]]],[11,"as_any_mut","","",33,[[],["any",8]]],[11,"from","","",34,[[]]],[11,"into","","",34,[[]]],[11,"borrow","","",34,[[]]],[11,"borrow_mut","","",34,[[]]],[11,"try_from","","",34,[[],["result",4]]],[11,"try_into","","",34,[[],["result",4]]],[11,"type_id","","",34,[[],["typeid",3]]],[11,"vzip","","",34,[[]]],[11,"into_any","","",34,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",34,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",34,[[],["any",8]]],[11,"as_any_mut","","",34,[[],["any",8]]],[11,"from","map_gui::tools::colors","",35,[[]]],[11,"into","","",35,[[]]],[11,"borrow","","",35,[[]]],[11,"borrow_mut","","",35,[[]]],[11,"try_from","","",35,[[],["result",4]]],[11,"try_into","","",35,[[],["result",4]]],[11,"type_id","","",35,[[],["typeid",3]]],[11,"vzip","","",35,[[]]],[11,"into_any","","",35,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",35,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",35,[[],["any",8]]],[11,"as_any_mut","","",35,[[],["any",8]]],[11,"into_any_arc","","",35,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",36,[[]]],[11,"into","","",36,[[]]],[11,"borrow","","",36,[[]]],[11,"borrow_mut","","",36,[[]]],[11,"try_from","","",36,[[],["result",4]]],[11,"try_into","","",36,[[],["result",4]]],[11,"type_id","","",36,[[],["typeid",3]]],[11,"vzip","","",36,[[]]],[11,"into_any","","",36,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",36,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",36,[[],["any",8]]],[11,"as_any_mut","","",36,[[],["any",8]]],[11,"into_any_arc","","",36,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",37,[[]]],[11,"into","","",37,[[]]],[11,"borrow","","",37,[[]]],[11,"borrow_mut","","",37,[[]]],[11,"try_from","","",37,[[],["result",4]]],[11,"try_into","","",37,[[],["result",4]]],[11,"type_id","","",37,[[],["typeid",3]]],[11,"vzip","","",37,[[]]],[11,"into_any","","",37,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",37,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",37,[[],["any",8]]],[11,"as_any_mut","","",37,[[],["any",8]]],[11,"into_any_arc","","",37,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",38,[[]]],[11,"into","","",38,[[]]],[11,"borrow","","",38,[[]]],[11,"borrow_mut","","",38,[[]]],[11,"try_from","","",38,[[],["result",4]]],[11,"try_into","","",38,[[],["result",4]]],[11,"type_id","","",38,[[],["typeid",3]]],[11,"vzip","","",38,[[]]],[11,"into_any","","",38,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",38,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",38,[[],["any",8]]],[11,"as_any_mut","","",38,[[],["any",8]]],[11,"into_any_arc","","",38,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",39,[[]]],[11,"into","","",39,[[]]],[11,"borrow","","",39,[[]]],[11,"borrow_mut","","",39,[[]]],[11,"try_from","","",39,[[],["result",4]]],[11,"try_into","","",39,[[],["result",4]]],[11,"type_id","","",39,[[],["typeid",3]]],[11,"vzip","","",39,[[]]],[11,"into_any","","",39,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",39,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",39,[[],["any",8]]],[11,"as_any_mut","","",39,[[],["any",8]]],[11,"into_any_arc","","",39,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::tools::command","",40,[[]]],[11,"into","","",40,[[]]],[11,"borrow","","",40,[[]]],[11,"borrow_mut","","",40,[[]]],[11,"try_from","","",40,[[],["result",4]]],[11,"try_into","","",40,[[],["result",4]]],[11,"type_id","","",40,[[],["typeid",3]]],[11,"vzip","","",40,[[]]],[11,"into_any","","",40,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",40,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",40,[[],["any",8]]],[11,"as_any_mut","","",40,[[],["any",8]]],[11,"from","map_gui::tools::heatmap","",41,[[]]],[11,"into","","",41,[[]]],[11,"to_owned","","",41,[[]]],[11,"clone_into","","",41,[[]]],[11,"borrow","","",41,[[]]],[11,"borrow_mut","","",41,[[]]],[11,"try_from","","",41,[[],["result",4]]],[11,"try_into","","",41,[[],["result",4]]],[11,"type_id","","",41,[[],["typeid",3]]],[11,"vzip","","",41,[[]]],[11,"into_any","","",41,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",41,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",41,[[],["any",8]]],[11,"as_any_mut","","",41,[[],["any",8]]],[11,"into_any_arc","","",41,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",42,[[]]],[11,"into","","",42,[[]]],[11,"borrow","","",42,[[]]],[11,"borrow_mut","","",42,[[]]],[11,"try_from","","",42,[[],["result",4]]],[11,"try_into","","",42,[[],["result",4]]],[11,"type_id","","",42,[[],["typeid",3]]],[11,"vzip","","",42,[[]]],[11,"into_any","","",42,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",42,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",42,[[],["any",8]]],[11,"as_any_mut","","",42,[[],["any",8]]],[11,"into_any_arc","","",42,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui::tools::importer","",43,[[]]],[11,"into","","",43,[[]]],[11,"borrow","","",43,[[]]],[11,"borrow_mut","","",43,[[]]],[11,"try_from","","",43,[[],["result",4]]],[11,"try_into","","",43,[[],["result",4]]],[11,"type_id","","",43,[[],["typeid",3]]],[11,"vzip","","",43,[[]]],[11,"into_any","","",43,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",43,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",43,[[],["any",8]]],[11,"as_any_mut","","",43,[[],["any",8]]],[11,"from","map_gui::tools::minimap","",44,[[]]],[11,"into","","",44,[[]]],[11,"borrow","","",44,[[]]],[11,"borrow_mut","","",44,[[]]],[11,"try_from","","",44,[[],["result",4]]],[11,"try_into","","",44,[[],["result",4]]],[11,"type_id","","",44,[[],["typeid",3]]],[11,"vzip","","",44,[[]]],[11,"into_any","","",44,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",44,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",44,[[],["any",8]]],[11,"as_any_mut","","",44,[[],["any",8]]],[11,"from","map_gui::tools::navigate","",46,[[]]],[11,"into","","",46,[[]]],[11,"borrow","","",46,[[]]],[11,"borrow_mut","","",46,[[]]],[11,"try_from","","",46,[[],["result",4]]],[11,"try_into","","",46,[[],["result",4]]],[11,"type_id","","",46,[[],["typeid",3]]],[11,"vzip","","",46,[[]]],[11,"into_any","","",46,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",46,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",46,[[],["any",8]]],[11,"as_any_mut","","",46,[[],["any",8]]],[11,"from","","",47,[[]]],[11,"into","","",47,[[]]],[11,"borrow","","",47,[[]]],[11,"borrow_mut","","",47,[[]]],[11,"try_from","","",47,[[],["result",4]]],[11,"try_into","","",47,[[],["result",4]]],[11,"type_id","","",47,[[],["typeid",3]]],[11,"vzip","","",47,[[]]],[11,"into_any","","",47,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",47,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",47,[[],["any",8]]],[11,"as_any_mut","","",47,[[],["any",8]]],[11,"from","","",48,[[]]],[11,"into","","",48,[[]]],[11,"borrow","","",48,[[]]],[11,"borrow_mut","","",48,[[]]],[11,"try_from","","",48,[[],["result",4]]],[11,"try_into","","",48,[[],["result",4]]],[11,"type_id","","",48,[[],["typeid",3]]],[11,"vzip","","",48,[[]]],[11,"into_any","","",48,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",48,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",48,[[],["any",8]]],[11,"as_any_mut","","",48,[[],["any",8]]],[11,"from","map_gui::tools::turn_explorer","",49,[[]]],[11,"into","","",49,[[]]],[11,"borrow","","",49,[[]]],[11,"borrow_mut","","",49,[[]]],[11,"try_from","","",49,[[],["result",4]]],[11,"try_into","","",49,[[],["result",4]]],[11,"type_id","","",49,[[],["typeid",3]]],[11,"vzip","","",49,[[]]],[11,"into_any","","",49,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",49,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",49,[[],["any",8]]],[11,"as_any_mut","","",49,[[],["any",8]]],[11,"from","map_gui::tools::ui","",50,[[]]],[11,"into","","",50,[[]]],[11,"borrow","","",50,[[]]],[11,"borrow_mut","","",50,[[]]],[11,"try_from","","",50,[[],["result",4]]],[11,"try_into","","",50,[[],["result",4]]],[11,"type_id","","",50,[[],["typeid",3]]],[11,"vzip","","",50,[[]]],[11,"into_any","","",50,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",50,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",50,[[],["any",8]]],[11,"as_any_mut","","",50,[[],["any",8]]],[11,"from","","",51,[[]]],[11,"into","","",51,[[]]],[11,"borrow","","",51,[[]]],[11,"borrow_mut","","",51,[[]]],[11,"try_from","","",51,[[],["result",4]]],[11,"try_into","","",51,[[],["result",4]]],[11,"type_id","","",51,[[],["typeid",3]]],[11,"vzip","","",51,[[]]],[11,"into_any","","",51,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",51,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",51,[[],["any",8]]],[11,"as_any_mut","","",51,[[],["any",8]]],[11,"from","","",52,[[]]],[11,"into","","",52,[[]]],[11,"borrow","","",52,[[]]],[11,"borrow_mut","","",52,[[]]],[11,"try_from","","",52,[[],["result",4]]],[11,"try_into","","",52,[[],["result",4]]],[11,"type_id","","",52,[[],["typeid",3]]],[11,"vzip","","",52,[[]]],[11,"into_any","","",52,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",52,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",52,[[],["any",8]]],[11,"as_any_mut","","",52,[[],["any",8]]],[11,"from","map_gui::tools::updater","",53,[[]]],[11,"into","","",53,[[]]],[11,"borrow","","",53,[[]]],[11,"borrow_mut","","",53,[[]]],[11,"try_from","","",53,[[],["result",4]]],[11,"try_into","","",53,[[],["result",4]]],[11,"type_id","","",53,[[],["typeid",3]]],[11,"vzip","","",53,[[]]],[11,"into_any","","",53,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",53,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",53,[[],["any",8]]],[11,"as_any_mut","","",53,[[],["any",8]]],[11,"from","map_gui::tools::url","",54,[[]]],[11,"into","","",54,[[]]],[11,"borrow","","",54,[[]]],[11,"borrow_mut","","",54,[[]]],[11,"try_from","","",54,[[],["result",4]]],[11,"try_into","","",54,[[],["result",4]]],[11,"type_id","","",54,[[],["typeid",3]]],[11,"vzip","","",54,[[]]],[11,"into_any","","",54,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",54,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",54,[[],["any",8]]],[11,"as_any_mut","","",54,[[],["any",8]]],[11,"into_any_arc","","",54,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","map_gui","",56,[[]]],[11,"into","","",56,[[]]],[11,"to_owned","","",56,[[]]],[11,"clone_into","","",56,[[]]],[11,"borrow","","",56,[[]]],[11,"borrow_mut","","",56,[[]]],[11,"try_from","","",56,[[],["result",4]]],[11,"try_into","","",56,[[],["result",4]]],[11,"type_id","","",56,[[],["typeid",3]]],[11,"equivalent","","",56,[[]]],[11,"get_hash","","",56,[[]]],[11,"vzip","","",56,[[]]],[11,"into_any","","",56,[[["box",3],["global",3]],[["any",8],["global",3],["box",3]]]],[11,"into_any_rc","","",56,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",56,[[],["any",8]]],[11,"as_any_mut","","",56,[[],["any",8]]],[11,"into_any_arc","","",56,[[["arc",3]],[["arc",3],["any",8]]]],[11,"get_id","map_gui::render::area","",13,[[],["id",4]]],[11,"draw","","",13,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",13,[[["map",3]],["polygon",3]]],[11,"get_id","map_gui::render::bike","",14,[[],["id",4]]],[11,"draw","","",14,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",14,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",14,[[["pt2d",3],["map",3]]]],[11,"get_zorder","","",14,[[]]],[11,"get_id","map_gui::render::building","",15,[[],["id",4]]],[11,"draw","","",15,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_zorder","","",15,[[]]],[11,"get_outline","","",15,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",15,[[["pt2d",3],["map",3]]]],[11,"get_id","map_gui::render::bus_stop","",16,[[],["id",4]]],[11,"draw","","",16,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",16,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",16,[[["pt2d",3],["map",3]]]],[11,"get_zorder","","",16,[[]]],[11,"get_id","map_gui::render::car","",17,[[],["id",4]]],[11,"draw","","",17,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",17,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",17,[[["pt2d",3],["map",3]]]],[11,"get_zorder","","",17,[[]]],[11,"get_id","map_gui::render::intersection","",18,[[],["id",4]]],[11,"draw","","",18,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",18,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",18,[[["pt2d",3],["map",3]]]],[11,"get_zorder","","",18,[[]]],[11,"get_id","map_gui::render::lane","",19,[[],["id",4]]],[11,"draw","","",19,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",19,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",19,[[["pt2d",3],["map",3]]]],[11,"get_zorder","","",19,[[]]],[11,"get_id","map_gui::render::parking_lot","",21,[[],["id",4]]],[11,"draw","","",21,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_zorder","","",21,[[]]],[11,"get_outline","","",21,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",21,[[["pt2d",3],["map",3]]]],[11,"get_id","map_gui::render::pedestrian","",22,[[],["id",4]]],[11,"draw","","",22,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",22,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",22,[[["pt2d",3],["map",3]]]],[11,"get_zorder","","",22,[[]]],[11,"get_id","","",23,[[],["id",4]]],[11,"draw","","",23,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",23,[[["map",3]],["polygon",3]]],[11,"get_zorder","","",23,[[]]],[11,"get_id","map_gui::render::road","",24,[[],["id",4]]],[11,"draw","","",24,[[["drawoptions",3],["gfxctx",3],["applike",8]]]],[11,"get_outline","","",24,[[["map",3]],["polygon",3]]],[11,"contains_pt","","",24,[[["pt2d",3],["map",3]]]],[11,"get_zorder","","",24,[[]]],[11,"map","map_gui::simple_app","",29,[[],["map",3]]],[11,"sim","","",29,[[],["sim",3]]],[11,"cs","","",29,[[],["colorscheme",3]]],[11,"mut_cs","","",29,[[],["colorscheme",3]]],[11,"draw_map","","",29,[[],["drawmap",3]]],[11,"mut_draw_map","","",29,[[],["drawmap",3]]],[11,"opts","","",29,[[],["options",3]]],[11,"mut_opts","","",29,[[],["options",3]]],[11,"map_switched","","",29,[[["timer",3],["eventctx",3],["map",3]]]],[11,"draw_with_opts","","",29,[[["gfxctx",3],["drawoptions",3]]]],[11,"make_warper","","",29,[[["option",4],["option",4],["pt2d",3],["eventctx",3],["id",4]],[["box",3],["state",8]]]],[11,"sim_time","","",29,[[],["time",3]]],[11,"current_stage_and_remaining_time","","",29,[[["intersectionid",3]]]],[11,"clone","map_gui::colors","",0,[[],["colorschemechoice",4]]],[11,"clone","map_gui::options","",7,[[],["options",3]]],[11,"clone","","",8,[[],["trafficsignalstyle",4]]],[11,"clone","","",9,[[],["cameraangle",4]]],[11,"clone","map_gui::render::agents","",12,[[],["unzoomedagents",3]]],[11,"clone","map_gui::tools::heatmap","",41,[[],["heatmapoptions",3]]],[11,"clone","map_gui","",56,[[],["id",4]]],[11,"cmp","","",56,[[["id",4]],["ordering",4]]],[11,"eq","map_gui::colors","",0,[[["colorschemechoice",4]]]],[11,"eq","map_gui::options","",8,[[["trafficsignalstyle",4]]]],[11,"eq","","",9,[[["cameraangle",4]]]],[11,"eq","map_gui::render::agents","",12,[[["unzoomedagents",3]]]],[11,"ne","","",12,[[["unzoomedagents",3]]]],[11,"eq","map_gui::tools::heatmap","",41,[[["heatmapoptions",3]]]],[11,"ne","","",41,[[["heatmapoptions",3]]]],[11,"eq","map_gui","",56,[[["id",4]]]],[11,"ne","","",56,[[["id",4]]]],[11,"partial_cmp","","",56,[[["id",4]],[["option",4],["ordering",4]]]],[11,"lt","","",56,[[["id",4]]]],[11,"le","","",56,[[["id",4]]]],[11,"gt","","",56,[[["id",4]]]],[11,"ge","","",56,[[["id",4]]]],[11,"fmt","map_gui::colors","",0,[[["formatter",3]],["result",6]]],[11,"fmt","map_gui::options","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","map_gui::tools::camera","",31,[[["formatter",3]],["result",6]]],[11,"fmt","map_gui","",56,[[["formatter",3]],["result",6]]],[11,"hash","","",56,[[]]],[11,"deserialize","map_gui::tools::camera","",31,[[],["result",4]]],[11,"serialize","","",31,[[],["result",4]]],[11,"draw_default","map_gui::simple_app","",29,[[["gfxctx",3]]]],[11,"dump_before_abort","","",29,[[["canvas",3]]]],[11,"before_quit","","",29,[[["canvas",3]]]],[11,"event","map_gui::load","",5,[[["eventctx",3]],["transition",4]]],[11,"draw","","",5,[[["gfxctx",3]]]],[11,"event","map_gui::load::native_loader","",2,[[["eventctx",3]],["transition",4]]],[11,"draw","","",2,[[["gfxctx",3]]]],[11,"event","","",3,[[["eventctx",3]],["transition",4]]],[11,"draw","","",3,[[["gfxctx",3]]]],[11,"event","map_gui::load","",6,[[["eventctx",3]],["transition",4]]],[11,"draw","","",6,[[["gfxctx",3]]]],[11,"event","map_gui::options","",10,[[["eventctx",3]],["transition",4]]],[11,"draw","","",10,[[["gfxctx",3]]]],[11,"event","map_gui::simple_app","",30,[[["simpleapp",3],["eventctx",3]],[["simpleapp",3],["transition",4]]]],[11,"draw","","",30,[[["gfxctx",3],["simpleapp",3]]]],[11,"event","map_gui::tools::city_picker","",32,[[["eventctx",3]],["transition",4]]],[11,"draw_baselayer","","",32,[[],["drawbaselayer",4]]],[11,"draw","","",32,[[["gfxctx",3]]]],[11,"event","","",33,[[["eventctx",3]],["transition",4]]],[11,"draw_baselayer","","",33,[[],["drawbaselayer",4]]],[11,"draw","","",33,[[["gfxctx",3]]]],[11,"event","","",34,[[["eventctx",3]],["transition",4]]],[11,"draw_baselayer","","",34,[[],["drawbaselayer",4]]],[11,"draw","","",34,[[["gfxctx",3]]]],[11,"event","map_gui::tools::command","",40,[[["eventctx",3]],["transition",4]]],[11,"draw","","",40,[[["gfxctx",3]]]],[11,"event","map_gui::tools::importer","",43,[[["eventctx",3]],["transition",4]]],[11,"draw","","",43,[[["gfxctx",3]]]],[11,"event","map_gui::tools::navigate","",46,[[["eventctx",3]],["transition",4]]],[11,"draw","","",46,[[["gfxctx",3]]]],[11,"event","","",47,[[["eventctx",3]],["transition",4]]],[11,"draw","","",47,[[["gfxctx",3]]]],[11,"event","","",48,[[["eventctx",3]],["transition",4]]],[11,"draw","","",48,[[["gfxctx",3]]]],[11,"event","map_gui::tools::turn_explorer","",49,[[["eventctx",3]],["transition",4]]],[11,"draw_baselayer","","",49,[[],["drawbaselayer",4]]],[11,"draw","","",49,[[["gfxctx",3]]]],[11,"event","map_gui::tools::ui","",50,[[["eventctx",3]],["transition",4]]],[11,"draw_baselayer","","",50,[[],["drawbaselayer",4]]],[11,"draw","","",50,[[["gfxctx",3]]]],[11,"event","","",51,[[["eventctx",3]],["transition",4]]],[11,"draw_baselayer","","",51,[[],["drawbaselayer",4]]],[11,"draw","","",51,[[["gfxctx",3]]]],[11,"event","","",52,[[["eventctx",3]],["transition",4]]],[11,"draw_baselayer","","",52,[[],["drawbaselayer",4]]],[11,"draw","","",52,[[["gfxctx",3]]]],[11,"event","map_gui::tools::updater","",53,[[["eventctx",3]],["transition",4]]],[11,"draw","","",53,[[["gfxctx",3]]]]],"p":[[4,"ColorSchemeChoice"],[3,"ColorScheme"],[3,"FileLoader"],[3,"RawFileLoader"],[3,"MapLoader"],[3,"MapAlreadyLoaded"],[3,"FutureLoader"],[3,"Options"],[4,"TrafficSignalStyle"],[4,"CameraAngle"],[3,"OptionsPanel"],[3,"AgentCache"],[3,"UnzoomedAgents"],[3,"DrawArea"],[3,"DrawBike"],[3,"DrawBuilding"],[3,"DrawBusStop"],[3,"DrawCar"],[3,"DrawIntersection"],[3,"DrawLane"],[3,"DrawMap"],[3,"DrawParkingLot"],[3,"DrawPedestrian"],[3,"DrawPedCrowd"],[3,"DrawRoad"],[3,"DrawMovement"],[3,"DrawUberTurnGroup"],[8,"Renderable"],[3,"DrawOptions"],[3,"SimpleApp"],[3,"SimpleWarper"],[3,"CameraState"],[3,"CityPicker"],[3,"AllCityPicker"],[3,"CitiesInCountryPicker"],[3,"ColorDiscrete"],[3,"ColorLegend"],[3,"DivergingScale"],[3,"ColorNetwork"],[3,"ColorScale"],[3,"RunCommand"],[3,"HeatmapOptions"],[3,"Grid"],[3,"ImportCity"],[3,"Minimap"],[8,"MinimapControls"],[3,"Navigator"],[3,"CrossStreet"],[3,"SearchBuildings"],[3,"TurnExplorer"],[3,"ChooseSomething"],[3,"PromptInput"],[3,"PopupMsg"],[3,"Picker"],[3,"URLManager"],[8,"AppLike"],[4,"ID"]]},\ -"map_model":{"doc":"map_model describes the world where simulations occur. …","i":[[0,"city","map_model","",null,null],[3,"City","map_model::city","A single city (like Seattle) can be broken down into …",null,null],[12,"name","","",0,null],[12,"boundary","","",0,null],[12,"areas","","",0,null],[12,"districts","","The individual maps",0,null],[11,"from_huge_map","","If there\'s a single map covering all the smaller maps, …",0,[[["map",3]],["city",3]]],[11,"from_individual_maps","","Generate a city from a bunch of smaller, individual maps. …",0,[[["timer",3],["cityname",3]],["city",3]]],[0,"connectivity","map_model","",null,null],[0,"walking","map_model::connectivity","",null,null],[3,"WalkingOptions","map_model::connectivity::walking","",null,null],[12,"allow_shoulders","","If true, allow walking on shoulders.",1,null],[12,"walking_speed","","",1,null],[11,"default","","",1,[[],["walkingoptions",3]]],[11,"common_speeds","","",1,[[],["vec",3]]],[11,"default_speed","","",1,[[],["speed",3]]],[11,"cost","","",1,[[["distance",3]],["duration",3]]],[3,"Item","","",null,null],[12,"cost","","",2,null],[12,"node","","",2,null],[5,"all_walking_costs_from","","Starting from one building, calculate the cost to all …",null,[[["walkingoptions",3],["duration",3],["map",3],["buildingid",3]],[["buildingid",3],["duration",3],["hashmap",3]]]],[5,"all_walking_costs_from","map_model::connectivity","Starting from one building, calculate the cost to all …",null,[[["walkingoptions",3],["duration",3],["map",3],["buildingid",3]],[["buildingid",3],["duration",3],["hashmap",3]]]],[3,"WalkingOptions","","",null,null],[12,"allow_shoulders","","If true, allow walking on shoulders.",1,null],[12,"walking_speed","","",1,null],[5,"vehicle_cost","","Different unit based on constraints.",null,[[["turn",3],["pathconstraints",4],["lane",3],["map",3],["routingparams",3]]]],[4,"WalkingNode","","",null,null],[13,"SidewalkEndpoint","","false is src_i, true is dst_i",3,null],[13,"RideBus","","",3,null],[13,"LeaveMap","","",3,null],[5,"find_scc","","Calculate the srongy connected components (SCC) of the …",null,[[["map",3],["pathconstraints",4]]]],[5,"all_vehicle_costs_from","","Starting from one building, calculate the cost to all …",null,[[["duration",3],["map",3],["pathconstraints",4],["buildingid",3]],[["buildingid",3],["duration",3],["hashmap",3]]]],[5,"debug_vehicle_costs","","",null,[[["map",3],["pathrequest",3]],["option",4]]],[0,"edits","map_model","Once a Map exists, the player can edit it in the UI …",null,null],[0,"compat","map_model::edits","",null,null],[5,"upgrade","map_model::edits::compat","When the PermanentMapEdits format changes, add a …",null,[[["map",3],["value",4]],[["permanentmapedits",3],["result",6]]]],[5,"walk","","",null,[[["value",4]]]],[5,"fix_offset","","",null,[[["value",4]]]],[5,"fix_intersection_ids","","",null,[[["value",4]]]],[5,"fix_road_direction","","",null,[[["value",4]]]],[5,"fix_old_lane_cmds","","",null,[[["value",4],["map",3]],["result",6]]],[5,"fix_merge_zones","","",null,[[["value",4]]]],[5,"fix_map_name","","",null,[[["value",4]]]],[5,"fix_phase_to_stage","","",null,[[["value",4]]]],[5,"fix_adaptive_stages","","",null,[[["value",4]]]],[5,"fix_plans","","",null,[[["value",4]]]],[5,"fix_city_name","","",null,[[["value",4]]]],[3,"OriginalLane","","",null,null],[12,"parent","","",4,null],[12,"num_fwd","","",4,null],[12,"num_back","","",4,null],[12,"dir","","",4,null],[12,"idx","","",4,null],[3,"ChangeLaneType","","",null,null],[12,"id","","",5,null],[12,"lt","","",5,null],[12,"orig_lt","","",5,null],[3,"ReverseLane","","",null,null],[12,"l","","",6,null],[12,"dst_i","","",6,null],[3,"ChangeSpeedLimit","","",null,null],[12,"id","","",7,null],[12,"new","","",7,null],[12,"old","","",7,null],[3,"ChangeAccessRestrictions","","",null,null],[12,"id","","",8,null],[12,"new","","",8,null],[12,"old","","",8,null],[11,"lookup","","",4,[[["map",3]],["result",6]]],[0,"perma","map_model::edits","",null,null],[3,"PermanentMapEdits","map_model::edits::perma","MapEdits are converted to this before serializing. …",null,null],[12,"map_name","","",9,null],[12,"edits_name","","",9,null],[12,"version","","",9,null],[12,"commands","","",9,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",9,null],[12,"proposal_description","","Edits without these are player generated.",9,null],[12,"proposal_link","","The link is optional even for proposals",9,null],[4,"PermanentEditIntersection","","",null,null],[13,"StopSign","","",10,null],[12,"must_stop","map_model::edits::perma::PermanentEditIntersection","",11,null],[13,"TrafficSignal","map_model::edits::perma","",10,null],[13,"Closed","","",10,null],[4,"PermanentEditCmd","","",null,null],[13,"ChangeRoad","","",12,null],[12,"r","map_model::edits::perma::PermanentEditCmd","",13,null],[12,"new","","",13,null],[12,"old","","",13,null],[13,"ChangeIntersection","map_model::edits::perma","",12,null],[12,"i","map_model::edits::perma::PermanentEditCmd","",14,null],[12,"new","","",14,null],[12,"old","","",14,null],[13,"ChangeRouteSchedule","map_model::edits::perma","",12,null],[12,"osm_rel_id","map_model::edits::perma::PermanentEditCmd","",15,null],[12,"old","","",15,null],[12,"new","","",15,null],[11,"to_cmd","map_model::edits::perma","",12,[[["map",3]],[["editcmd",4],["result",6]]]],[11,"to_edits","","Transform permanent edits to MapEdits, looking up the map …",9,[[["map",3]],[["mapedits",3],["result",6]]]],[11,"to_edits_permissive","","Transform permanent edits to MapEdits, looking up the map …",9,[[["map",3]],["mapedits",3]]],[11,"from_permanent","","",10,[[["intersectionid",3],["map",3]],[["result",6],["editintersection",4]]]],[3,"MapEdits","map_model::edits","Represents changes to a map. Note this isn\'t serializable …",null,null],[12,"edits_name","","",16,null],[12,"commands","","A stack, oldest edit is first. The same intersection may …",16,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",16,null],[12,"changed_roads","","Derived from commands, kept up to date by update_derived",16,null],[12,"original_intersections","","",16,null],[12,"changed_routes","","",16,null],[12,"proposal_description","","Some edits are included in the game by default, in …",16,null],[12,"proposal_link","","",16,null],[4,"EditIntersection","","",null,null],[13,"StopSign","","",17,null],[13,"TrafficSignal","","",17,null],[13,"Closed","","",17,null],[3,"EditRoad","","",null,null],[12,"lanes_ltr","","",18,null],[12,"speed_limit","","",18,null],[12,"access_restrictions","","",18,null],[11,"get_orig_from_osm","","",18,[[["road",3],["mapconfig",3]],["editroad",3]]],[11,"diff","","",18,[[["editroad",3]],[["vec",3],["string",3]]]],[4,"EditCmd","","",null,null],[13,"ChangeRoad","","",19,null],[12,"r","map_model::edits::EditCmd","",20,null],[12,"old","","",20,null],[12,"new","","",20,null],[13,"ChangeIntersection","map_model::edits","",19,null],[12,"i","map_model::edits::EditCmd","",21,null],[12,"new","","",21,null],[12,"old","","",21,null],[13,"ChangeRouteSchedule","map_model::edits","",19,null],[12,"id","map_model::edits::EditCmd","",22,null],[12,"old","","",22,null],[12,"new","","",22,null],[3,"EditEffects","map_model::edits","",null,null],[12,"changed_roads","","",23,null],[12,"changed_intersections","","",23,null],[12,"added_turns","","",23,null],[12,"deleted_turns","","",23,null],[11,"new","","",16,[[],["mapedits",3]]],[11,"load","","",16,[[["map",3],["string",3],["timer",3]],[["mapedits",3],["result",6]]]],[11,"save","","",16,[[["map",3]]]],[11,"update_derived","","",16,[[["map",3]]]],[11,"compress","","Assumes update_derived has been called.",16,[[["map",3]]]],[11,"changed_lanes","","Pick apart changed_roads and figure out if an entire road …",16,[[["map",3]]]],[11,"new","","",23,[[],["editeffects",3]]],[11,"describe","","(summary, details)",19,[[["map",3]]]],[11,"apply","","",19,[[["map",3],["editeffects",3]]]],[11,"undo","","",19,[[],["editcmd",4]]],[5,"recalculate_turns","","",null,[[["intersectionid",3],["map",3],["editeffects",3]]]],[0,"make","map_model","See …",null,null],[0,"bridges","map_model::make","",null,null],[5,"find_bridges","map_model::make::bridges","Look for roads underneath bridges, then lower their …",null,[[["timer",3],["bounds",3],["vec",3]]]],[0,"buildings","map_model::make","",null,null],[5,"make_all_buildings","map_model::make::buildings","Finalize importing of buildings, mostly by matching them …",null,[[["map",3],["timer",3],["btreemap",3]],[["vec",3],["building",3]]]],[5,"trim_path","","",null,[[["polygon",3],["line",3]],["line",3]]],[5,"get_address","","",null,[[["tags",3],["map",3],["laneid",3]],["string",3]]],[5,"classify_bldg","","",null,[[["tags",3],["vec",3],["xorshiftrng",3]],["buildingtype",4]]],[0,"initial","map_model::make","Naming is confusing, but RawMap -> InitialMap -> Map. …",null,null],[0,"geometry","map_model::make::initial","OSM describes roads as center-lines that intersect. Turn …",null,null],[17,"DEGENERATE_INTERSECTION_HALF_LENGTH","map_model::make::initial::geometry","",null,null],[5,"intersection_polygon","","Also returns a list of labeled polygons for debugging.",null,[[["intersection",3],["btreemap",3]],["result",6]]],[5,"generalized_trim_back","","",null,[[["btreemap",3],["nodeid",3],["vec",3]],["result",6]]],[5,"deadend","","",null,[[["btreemap",3],["nodeid",3],["vec",3]],["result",6]]],[5,"close_off_polygon","","",null,[[["vec",3],["pt2d",3]],[["pt2d",3],["vec",3]]]],[3,"Piece","","",null,null],[12,"id","","",24,null],[12,"left","","",24,null],[12,"center","","",24,null],[12,"right","","",24,null],[5,"on_off_ramp","","",null,[[["btreemap",3],["nodeid",3],["vec",3]],["option",4]]],[0,"lane_specs","map_model::make::initial","",null,null],[3,"LaneSpec","map_model::make::initial::lane_specs","",null,null],[12,"lt","","",25,null],[12,"dir","","",25,null],[12,"width","","",25,null],[5,"fwd","","",null,[[["lanetype",4]],["lanespec",3]]],[5,"back","","",null,[[["lanetype",4]],["lanespec",3]]],[5,"get_lane_specs_ltr","","",null,[[["tags",3],["mapconfig",3]],[["lanespec",3],["vec",3]]]],[5,"assemble_ltr","","",null,[[["lanespec",3],["drivingside",4],["vec",3]],[["lanespec",3],["vec",3]]]],[3,"InitialMap","map_model::make::initial","",null,null],[12,"roads","","",26,null],[12,"intersections","","",26,null],[12,"bounds","","",26,null],[3,"Road","","",null,null],[12,"id","","",27,null],[12,"src_i","","",27,null],[12,"dst_i","","",27,null],[12,"trimmed_center_pts","","",27,null],[12,"half_width","","",27,null],[12,"lane_specs_ltr","","",27,null],[12,"osm_tags","","",27,null],[11,"new","","",27,[[["rawroad",3],["mapconfig",3],["originalroad",3]],[["result",6],["road",3]]]],[3,"Intersection","","",null,null],[12,"id","","",28,null],[12,"polygon","","",28,null],[12,"roads","","",28,null],[12,"intersection_type","","",28,null],[12,"elevation","","",28,null],[11,"new","","",26,[[["timer",3],["bounds",3],["rawmap",3]],["initialmap",3]]],[0,"medians","map_model::make","",null,null],[5,"find_medians","map_model::make::medians","Fill in empty space between one-way roads.",null,[[["map",3]],[["vec",3],["polygon",3]]]],[0,"merge_intersections","map_model::make","",null,null],[5,"merge_short_roads","map_model::make::merge_intersections","Merge tiny \\\"roads\\\" that\'re actually just part of a …",null,[[["rawmap",3]],[["btreeset",3],["nodeid",3]]]],[5,"should_merge","","",null,[[["originalroad",3],["rawmap",3]]]],[5,"connects_dual_carriageway","","",null,[[["originalroad",3],["rawmap",3]]]],[5,"angle","","",null,[[["rawroad",3]],["angle",3]]],[0,"parking_lots","map_model::make","",null,null],[5,"make_all_parking_lots","map_model::make::parking_lots","Take in parking lots from OSM and all parking aisle …",null,[[["vec",3],["map",3],["timer",3],["vec",3]],[["vec",3],["parkinglot",3]]]],[5,"trim_path","","",null,[[["polygon",3],["line",3]],["line",3]]],[5,"infer_spots","","",null,[[["polygon",3],["vec",3]],["vec",3]]],[5,"line_valid","","",null,[[["polygon",3],["vec",3],["line",3],["vec",3]]]],[0,"remove_disconnected","map_model::make","",null,null],[5,"remove_disconnected_roads","map_model::make::remove_disconnected","Some roads might be totally disconnected from the largest …",null,[[["rawmap",3],["timer",3]]]],[0,"traffic_signals","map_model::make","The various traffic signal generators live in the traffic …",null,null],[0,"lagging_green","map_model::make::traffic_signals","",null,null],[5,"make_traffic_signal","map_model::make::traffic_signals::lagging_green","Create a traffic signal which has a stage that is: …",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"make_signal","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"optimize","","",null,[[["controltrafficsignal",3]],[["option",4],["controltrafficsignal",3]]]],[5,"make_crosswalk_variable","","",null,[[["controltrafficsignal",3]]]],[5,"merge_stages","","",null,[[["controltrafficsignal",3]],[["option",4],["controltrafficsignal",3]]]],[5,"is_conflict","","",null,[[["controltrafficsignal",3],["stage",3]],["option",4]]],[5,"protected_yield_stage","","",null,[[["movementid",3]],["stage",3]]],[5,"multi_way_stages","","Build stages. First find roads that are straight across, …",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"add_stage","","",null,[[["controltrafficsignal",3],["stage",3]]]],[5,"turns","","",null,[[["vec",3],["roadid",3]],[["movementid",3],["vec",3]]]],[5,"remove_movement","","",null,[[["vec",3],["roadid",3]],[["option",4],["movementid",3]]]],[5,"three_way_three_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"four_way_four_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"movements","","",null,[[["controltrafficsignal",3]]]],[5,"straight_types","","",null,[[["vec",3]]]],[5,"make_lagging_green_variable","","",null,[[["controltrafficsignal",3]]]],[5,"get_possible_policies","map_model::make::traffic_signals","Applies a bunch of heuristics to a single intersection, …",null,[[["map",3],["intersectionid",3]],["vec",3]]],[5,"new","","",null,[[["intersectionid",3],["map",3]],["controltrafficsignal",3]]],[5,"greedy_assignment","","",null,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[5,"degenerate","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"half_signal","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"three_way","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"four_way_four_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"four_way_two_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"all_walk_all_yield","","",null,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[5,"stage_per_road","","",null,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[5,"expand_all_stages","","",null,[[["controltrafficsignal",3]]]],[17,"PROTECTED","","",null,null],[17,"YIELD","","",null,null],[5,"make_stages","","",null,[[["vec",3],["drivingside",4],["controltrafficsignal",3],["vec",3]]]],[5,"make_stages_filtered","","",null,[[["vec",3],["drivingside",4],["controltrafficsignal",3],["vec",3]]]],[5,"synchronize","","Simple second-pass after generating all signals. Find …",null,[[["map",3]]]],[0,"transit","map_model::make","",null,null],[5,"make_stops_and_routes","map_model::make::transit","Construct the final model of bus/train stops and routes. …",null,[[["map",3],["timer",3],["vec",3]]]],[5,"make_route","","",null,[[["matcher",3],["map",3],["rawbusroute",3],["btreemap",3]],["result",6]]],[3,"Matcher","","",null,null],[12,"sidewalk_pts","","",29,null],[12,"light_rail_pts","","",29,null],[11,"new","","",29,[[["map",3],["timer",3],["vec",3]],["matcher",3]]],[11,"lookup","","",29,[[["rawbusstop",3],["map",3],["pathconstraints",4]],["result",6]]],[5,"pick_start_lane","","",null,[[["map",3],["position",3],["pathconstraints",4]],[["result",6],["laneid",3]]]],[5,"default_spawn_times","","",null,[[],[["vec",3],["time",3]]]],[0,"turns","map_model::make","",null,null],[5,"make_all_turns","map_model::make::turns","Generate all driving and walking turns at an …",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"ensure_unique","","",null,[[["turn",3],["vec",3]],[["turn",3],["vec",3]]]],[5,"is_turn_allowed","","",null,[[["map",3],["turn",3]]]],[5,"does_turn_pass_restrictions","","",null,[[["map",3],["turn",3],["intersection",3]]]],[5,"make_vehicle_turns","","",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"curvey_turn","","",null,[[["lane",3]],[["polyline",3],["result",6]]]],[5,"to_pt","","",null,[[["pt2d",3]],["point2d",3]]],[5,"from_pt","","",null,[[["point2d",3]],["pt2d",3]]],[5,"lc_penalty","","",null,[[["map",3],["turn",3]]]],[5,"remove_merging_turns","","",null,[[["turntype",4],["vec",3],["map",3],["turn",3]],[["turn",3],["vec",3]]]],[5,"turn_type_from_angles","","",null,[[["angle",3]],["turntype",4]]],[5,"expected_turn_types_for_four_way","","",null,[[["map",3],["intersection",3]],[["option",4],["hashmap",3]]]],[0,"walking_turns","map_model::make","",null,null],[5,"make_walking_turns","map_model::make::walking_turns","Generate Crosswalk and SharedSidewalkCorner (places where …",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"filter_turns","","Filter out crosswalks on really short roads. In reality, …",null,[[["vec",3],["map",3],["turn",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"_make_walking_turns_v2","","",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"make_footway_turns","","At an intersection of footpaths only, just generate a …",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"make_crosswalks","","",null,[[["intersectionid",3],["lane",3],["drivingside",4]],[["option",4],["vec",3]]]],[5,"make_degenerate_crosswalks","","",null,[[["vec",3],["road",3],["intersectionid",3]],[["option",4],["vec",3]]]],[5,"make_shared_sidewalk_corner","","",null,[[["lane",3],["drivingside",4],["intersection",3]],["polyline",3]]],[5,"turn_id","","",null,[[["intersectionid",3],["laneid",3]],["turnid",3]]],[5,"get_sidewalk","","",null,[[["vec",3],["vec",3]],[["option",4],["lane",3]]]],[5,"match_points_to_lanes","map_model::make","Snap points to an exact Position along the nearest lane. …",null,[[["bounds",3],["hashset",3],["hashablept2d",3],["vec",3],["distance",3],["timer",3],["fn",8]],[["hashmap",3],["position",3],["hashablept2d",3]]]],[0,"map","map_model","A bunch of (mostly read-only) queries on a Map.",null,null],[3,"MapConfig","map_model::map","",null,null],[12,"driving_side","","If true, driving happens on the right side of the road …",30,null],[12,"bikes_can_use_bus_lanes","","",30,null],[12,"inferred_sidewalks","","If true, roads without explicitly tagged sidewalks may …",30,null],[12,"street_parking_spot_length","","Street parking is divided into spots of this length. 8 …",30,null],[4,"DrivingSide","","",null,null],[13,"Right","","",31,null],[13,"Left","","",31,null],[0,"objects","map_model","",null,null],[0,"area","map_model::objects","",null,null],[3,"AreaID","map_model::objects::area","",null,null],[12,"0","","",32,null],[4,"AreaType","","",null,null],[13,"Park","","",33,null],[13,"Water","","",33,null],[13,"Island","","",33,null],[13,"MedianStrip","","",33,null],[13,"PedestrianPlaza","","",33,null],[13,"StudyArea","","Not from OSM. A user-specified area to focus on.",33,null],[3,"Area","","Areas are just used for drawing.",null,null],[12,"id","","",34,null],[12,"area_type","","",34,null],[12,"polygon","","",34,null],[12,"osm_tags","","",34,null],[12,"osm_id","","The importing process also automatically creates some …",34,null],[0,"building","map_model::objects","",null,null],[3,"BuildingID","map_model::objects::building","",null,null],[12,"0","","",35,null],[3,"Building","","A building has connections to the road and sidewalk, may …",null,null],[12,"id","","",36,null],[12,"polygon","","",36,null],[12,"levels","","",36,null],[12,"address","","",36,null],[12,"name","","",36,null],[12,"orig_id","","",36,null],[12,"label_center","","Where a text label should be centered to have the best …",36,null],[12,"amenities","","",36,null],[12,"bldg_type","","",36,null],[12,"parking","","",36,null],[12,"osm_tags","","Depending on options while importing, these might be …",36,null],[12,"sidewalk_pos","","The building\'s connection for pedestrians is immutable. …",36,null],[12,"driveway_geom","","Goes from building to sidewalk",36,null],[3,"Amenity","","A business located inside a building.",null,null],[12,"names","","",37,null],[12,"amenity_type","","This is the specific amenity listed in OSM, not the more …",37,null],[12,"osm_tags","","Depending on options while importing, these might be …",37,null],[4,"OffstreetParking","","Represent no parking as Private(0, false).",null,null],[13,"PublicGarage","","(Name, spots)",38,null],[13,"Private","","(Spots, explicitly tagged as a garage)",38,null],[4,"BuildingType","","",null,null],[13,"Residential","","",39,null],[12,"num_residents","map_model::objects::building::BuildingType","",40,null],[12,"num_housing_units","","",40,null],[13,"ResidentialCommercial","map_model::objects::building","An estimated number of residents, workers",39,null],[13,"Commercial","","An estimated number of workers",39,null],[13,"Empty","","",39,null],[11,"has_residents","","",39,[[]]],[3,"NamePerLanguage","","None corresponds to the native name",null,null],[12,"0","","",41,null],[11,"get","","",41,[[["option",4],["string",3]],["string",3]]],[11,"new","","",41,[[["tags",3]],[["option",4],["nameperlanguage",3]]]],[11,"unnamed","","",41,[[],["nameperlanguage",3]]],[11,"sidewalk","","",36,[[],["laneid",3]]],[11,"house_number","","",36,[[],[["option",4],["string",3]]]],[11,"driving_connection","","The polyline goes from the building to the driving …",36,[[["map",3]],["option",4]]],[11,"biking_connection","","Returns (biking position, sidewalk position). Could fail …",36,[[["map",3]],["option",4]]],[11,"num_parking_spots","","",36,[[]]],[11,"has_amenity","","Does this building contain any amenity matching the …",36,[[["amenitytype",4]]]],[5,"sidewalk_to_bike","","",null,[[["map",3],["position",3]],["option",4]]],[4,"AmenityType","","Businesses are categorized into one of these types.",null,null],[13,"Groceries","","",42,null],[13,"Food","","",42,null],[13,"Bar","","",42,null],[13,"Medical","","",42,null],[13,"Religious","","",42,null],[13,"Education","","",42,null],[13,"Financial","","",42,null],[13,"PostOffice","","",42,null],[13,"Culture","","",42,null],[13,"Childcare","","",42,null],[13,"Shopping","","",42,null],[11,"types","","",42,[[],["vec",3]]],[11,"all","","All types of amenities, in an arbitrary order.",42,[[],[["vec",3],["amenitytype",4]]]],[11,"categorize","","Categorize an OSM amenity tag.",42,[[],[["amenitytype",4],["option",4]]]],[11,"parse","","",42,[[],[["amenitytype",4],["option",4]]]],[0,"bus_stop","map_model::objects","Bus stops and routes.",null,null],[3,"BusStopID","map_model::objects::bus_stop","",null,null],[12,"sidewalk","","",43,null],[12,"idx","","As long as this is unique per lane, this value is …",43,null],[3,"BusRouteID","","",null,null],[12,"0","","",44,null],[3,"BusStop","","",null,null],[12,"id","","",45,null],[12,"name","","",45,null],[12,"driving_pos","","These may be on different roads entirely, like for light …",45,null],[12,"sidewalk_pos","","",45,null],[12,"is_train_stop","","If it\'s both, train overrides bus",45,null],[3,"BusRoute","","",null,null],[12,"id","","",46,null],[12,"full_name","","",46,null],[12,"short_name","","",46,null],[12,"gtfs_trip_marker","","",46,null],[12,"osm_rel_id","","",46,null],[12,"stops","","",46,null],[12,"start","","May be a border or not. If not, is long enough for buses …",46,null],[12,"end_border","","",46,null],[12,"route_type","","",46,null],[12,"spawn_times","","Non-empty, times in order for one day when a vehicle …",46,null],[12,"orig_spawn_times","","Explicitly store whatever the original was, since this …",46,null],[11,"all_steps","","",46,[[["map",3]],[["vec",3],["pathrequest",3]]]],[11,"plural_noun","","",46,[[]]],[0,"intersection","map_model::objects","",null,null],[3,"IntersectionID","map_model::objects::intersection","",null,null],[12,"0","","",47,null],[4,"IntersectionType","","",null,null],[13,"StopSign","","",48,null],[13,"TrafficSignal","","",48,null],[13,"Border","","",48,null],[13,"Construction","","",48,null],[3,"Intersection","","An intersection connects roads. Most have >2 roads and …",null,null],[12,"id","","",49,null],[12,"polygon","","This needs to be in clockwise orientation, or later …",49,null],[12,"turns","","",49,null],[12,"elevation","","",49,null],[12,"intersection_type","","",49,null],[12,"orig_id","","",49,null],[12,"incoming_lanes","","Note that a lane may belong to both incoming_lanes and …",49,null],[12,"outgoing_lanes","","",49,null],[12,"roads","","",49,null],[12,"merged","","Was a short road adjacent to this intersection merged?",49,null],[11,"is_border","","",49,[[]]],[11,"is_incoming_border","","",49,[[]]],[11,"is_outgoing_border","","",49,[[]]],[11,"is_closed","","",49,[[]]],[11,"is_stop_sign","","",49,[[]]],[11,"is_traffic_signal","","",49,[[]]],[11,"is_light_rail","","",49,[[["map",3]]]],[11,"is_private","","",49,[[["map",3]]]],[11,"is_footway","","",49,[[["map",3]]]],[11,"is_cycleway","","",49,[[["map",3]]]],[11,"get_incoming_lanes","","",49,[[["map",3],["pathconstraints",4]],[["vec",3],["laneid",3]]]],[11,"get_outgoing_lanes","","Strict for bikes. If there are bike lanes, not allowed to …",49,[[["map",3],["pathconstraints",4]],[["vec",3],["laneid",3]]]],[11,"get_zorder","","",49,[[["map",3]]]],[11,"get_rank","","",49,[[["map",3]],["roadrank",4]]],[11,"get_roads_sorted_by_incoming_angle","","",49,[[["vec",3]],[["vec",3],["roadid",3]]]],[11,"get_sorted_incoming_roads","","Return all incoming roads to an intersection, sorted by …",49,[[["map",3]],[["vec",3],["roadid",3]]]],[11,"some_outgoing_road","","",49,[[["map",3]],[["option",4],["directedroadid",3]]]],[11,"some_incoming_road","","",49,[[["map",3]],[["option",4],["directedroadid",3]]]],[11,"name","","",49,[[["option",4],["map",3],["string",3]],["string",3]]],[0,"lane","map_model::objects","",null,null],[17,"PARKING_LOT_SPOT_LENGTH","map_model::objects::lane","From some manually audited cases in Seattle, the length …",null,null],[3,"LaneID","","",null,null],[12,"0","","",50,null],[4,"LaneType","","",null,null],[13,"Driving","","",51,null],[13,"Parking","","",51,null],[13,"Sidewalk","","",51,null],[13,"Shoulder","","",51,null],[13,"Biking","","",51,null],[13,"Bus","","",51,null],[13,"SharedLeftTurn","","",51,null],[13,"Construction","","",51,null],[13,"LightRail","","",51,null],[11,"is_for_moving_vehicles","","",51,[[]]],[11,"supports_any_movement","","",51,[[]]],[11,"describe","","",51,[[]]],[11,"short_name","","",51,[[]]],[3,"Lane","","A road segment is broken down into individual lanes, …",null,null],[12,"id","","",52,null],[12,"parent","","",52,null],[12,"lane_type","","",52,null],[12,"lane_center_pts","","",52,null],[12,"width","","",52,null],[12,"src_i","","",52,null],[12,"dst_i","","",52,null],[12,"bus_stops","","Meaningless order",52,null],[12,"driving_blackhole","","{Cars, bikes} trying to start or end here might not be …",52,null],[12,"biking_blackhole","","",52,null],[11,"first_pt","","",52,[[],["pt2d",3]]],[11,"last_pt","","",52,[[],["pt2d",3]]],[11,"first_line","","",52,[[],["line",3]]],[11,"last_line","","",52,[[],["line",3]]],[11,"endpoint","","",52,[[["intersectionid",3]],["pt2d",3]]],[11,"end_line","","pt2 will be endpoint",52,[[["intersectionid",3]],["line",3]]],[11,"dist_along_of_point","","",52,[[["pt2d",3]],[["option",4],["distance",3]]]],[11,"length","","",52,[[],["distance",3]]],[11,"intersections","","",52,[[],[["intersectionid",3],["vec",3]]]],[11,"number_parking_spots","","",52,[[["mapconfig",3]]]],[11,"is_driving","","",52,[[]]],[11,"is_biking","","",52,[[]]],[11,"is_bus","","",52,[[]]],[11,"is_walkable","","",52,[[]]],[11,"is_sidewalk","","",52,[[]]],[11,"is_shoulder","","",52,[[]]],[11,"is_parking","","",52,[[]]],[11,"is_light_rail","","",52,[[]]],[11,"get_directed_parent","","",52,[[["map",3]],["directedroadid",3]]],[11,"get_turn_restrictions","","",52,[[["road",3]],[["btreeset",3],["option",4]]]],[11,"trace_around_block","","Starting from this lane, follow the lane\'s left edge to …",52,[[["map",3]],["option",4]]],[0,"parking_lot","map_model::objects","",null,null],[3,"ParkingLotID","map_model::objects::parking_lot","",null,null],[12,"0","","",53,null],[3,"ParkingLot","","Parking lots have some fixed capacity for cars, and are …",null,null],[12,"id","","",54,null],[12,"polygon","","",54,null],[12,"aisles","","",54,null],[12,"osm_id","","",54,null],[12,"spots","","The middle of the \\\"T\\\", pointing towards the parking aisle",54,null],[12,"extra_spots","","If we can\'t render all spots (maybe a lot with no aisles …",54,null],[12,"driveway_line","","Goes from the lot to the driving lane",54,null],[12,"driving_pos","","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …",54,null],[12,"sidewalk_line","","Lot to sidewalk",54,null],[12,"sidewalk_pos","","",54,null],[11,"capacity","","",54,[[]]],[0,"road","map_model::objects","",null,null],[3,"RoadID","map_model::objects::road","",null,null],[12,"0","","",55,null],[4,"Direction","","",null,null],[13,"Fwd","","",56,null],[13,"Back","","",56,null],[11,"opposite","","",56,[[],["direction",4]]],[3,"DirectedRoadID","","",null,null],[12,"id","","",57,null],[12,"dir","","",57,null],[11,"src_i","","",57,[[["map",3]],["intersectionid",3]]],[11,"dst_i","","",57,[[["map",3]],["intersectionid",3]]],[11,"lanes","","Strict for bikes. If there are bike lanes, not allowed to …",57,[[["map",3],["pathconstraints",4]],[["vec",3],["laneid",3]]]],[3,"Road","","A Road represents a segment between exactly two …",null,null],[12,"id","","",58,null],[12,"osm_tags","","",58,null],[12,"turn_restrictions","","self is \'from\'",58,null],[12,"complicated_turn_restrictions","","self is \'from\'. (via, to). Only BanTurns.",58,null],[12,"orig_id","","",58,null],[12,"speed_limit","","",58,null],[12,"access_restrictions","","",58,null],[12,"zorder","","",58,null],[12,"lanes_ltr","","Invariant: A road must contain at least one child",58,null],[12,"center_pts","","The physical center of the road, including sidewalks, …",58,null],[12,"src_i","","",58,null],[12,"dst_i","","",58,null],[11,"lanes_ltr","","Returns all lanes from the left side of the road to …",58,[[],["vec",3]]],[11,"get_left_side","","",58,[[["map",3]],["polyline",3]]],[11,"offset","","Counting from the left side of the road",58,[[["laneid",3]]]],[11,"dir","","",58,[[["laneid",3]],["direction",4]]],[11,"parking_to_driving","","",58,[[["map",3],["laneid",3]],[["laneid",3],["option",4]]]],[11,"speed_limit_from_osm","","",58,[[],["speed",3]]],[11,"find_closest_lane","","Includes off-side",58,[[["fn",8],["map",3],["laneid",3]],[["laneid",3],["option",4]]]],[11,"all_lanes","","",58,[[],[["vec",3],["laneid",3]]]],[11,"get_dir_change_pl","","This is the FIRST yellow line where the direction of the …",58,[[["map",3]],["polyline",3]]],[11,"get_half_width","","",58,[[["map",3]],["distance",3]]],[11,"get_thick_polygon","","",58,[[["map",3]],["polygon",3]]],[11,"get_name","","",58,[[["option",4],["string",3]],["string",3]]],[11,"get_rank","","",58,[[],["roadrank",4]]],[11,"get_detailed_rank","","",58,[[]]],[11,"all_bus_stops","","",58,[[["map",3]],[["vec",3],["busstopid",3]]]],[11,"percent_incline","","Returns [-1.0, 1.0] theoretically, but in practice, about …",58,[[["map",3]]]],[11,"is_light_rail","","",58,[[]]],[11,"is_footway","","",58,[[]]],[11,"is_service","","",58,[[]]],[11,"is_cycleway","","",58,[[]]],[11,"common_endpt","","",58,[[["road",3]],["intersectionid",3]]],[11,"is_private","","",58,[[]]],[11,"access_restrictions_from_osm","","",58,[[],["accessrestrictions",3]]],[11,"get_zone","","",58,[[["map",3]],[["option",4],["zone",3]]]],[11,"is_extremely_short","","Many roads wind up with almost no length, due to their …",58,[[]]],[11,"children_forwards","","These are ordered from closest to center lane (left-most …",58,[[],["vec",3]]],[11,"children_backwards","","",58,[[],["vec",3]]],[11,"dir_and_offset","","lane must belong to this road. Offset 0 is the centermost …",58,[[["laneid",3]]]],[11,"children","","",58,[[["direction",4]],["vec",3]]],[11,"incoming_lanes","","Returns lanes from the \\\"center\\\" going out",58,[[["intersectionid",3]],["vec",3]]],[11,"outgoing_lanes","","Returns lanes from the \\\"center\\\" going out",58,[[["intersectionid",3]],["vec",3]]],[0,"stop_signs","map_model::objects","",null,null],[3,"ControlStopSign","map_model::objects::stop_signs","",null,null],[12,"id","","",59,null],[12,"roads","","",59,null],[3,"RoadWithStopSign","","",null,null],[12,"lane_closest_to_edge","","",60,null],[12,"must_stop","","",60,null],[11,"new","","",59,[[["map",3],["intersectionid",3]],["controlstopsign",3]]],[11,"get_priority","","Get the priority of a turn according to the stop sign -- …",59,[[["map",3],["turnid",3]],["turnpriority",4]]],[11,"flip_sign","","",59,[[["roadid",3]]]],[0,"traffic_signals","map_model::objects","",null,null],[17,"CROSSWALK_PACE","map_model::objects::traffic_signals","",null,null],[3,"ControlTrafficSignal","","A traffic signal consists of a sequence of Stages that …",null,null],[12,"id","","",61,null],[12,"stages","","",61,null],[12,"offset","","",61,null],[12,"movements","","",61,null],[3,"Stage","","",null,null],[12,"protected_movements","","",62,null],[12,"yield_movements","","",62,null],[12,"stage_type","","",62,null],[4,"StageType","","",null,null],[13,"Fixed","","",63,null],[13,"Variable","","Minimum is the minimum duration, 0 allows cycle to be …",63,null],[11,"simple_duration","","",63,[[],["duration",3]]],[11,"new","","",61,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[11,"validating_new","","Only call this variant while importing the map, to …",61,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[11,"get_possible_policies","","",61,[[["map",3],["intersectionid",3]],["vec",3]]],[11,"get_min_crossing_time","","",61,[[],["duration",3]]],[11,"validate","","",61,[[],["result",6]]],[11,"convert_to_ped_scramble","","Move crosswalks from stages, adding them to an all-walk …",61,[[]]],[11,"convert_to_ped_scramble_without_promotion","","Move crosswalks from stages, adding them to an all-walk …",61,[[]]],[11,"internal_convert_to_ped_scramble","","",61,[[]]],[11,"adjust_major_minor_timing","","Modifies the fixed timing of all stages, applying either …",61,[[["map",3],["duration",3]],["result",6]]],[11,"turn_to_movement","","",61,[[["turnid",3]],["movementid",3]]],[11,"missing_turns","","",61,[[],[["btreeset",3],["movementid",3]]]],[11,"compressed_id","","",61,[[["turnid",3]],["compressedmovementid",3]]],[11,"simple_cycle_duration","","How long a full cycle of the signal lasts, assuming no …",61,[[],["duration",3]]],[11,"new","","",62,[[],["stage",3]]],[11,"could_be_protected","","",62,[[["btreemap",3],["movementid",3]]]],[11,"get_priority_of_turn","","",62,[[["controltrafficsignal",3],["turnid",3]],["turnpriority",4]]],[11,"get_priority_of_movement","","",62,[[["movementid",3]],["turnpriority",4]]],[11,"edit_movement","","",62,[[["movement",3],["turnpriority",4]]]],[11,"enforce_minimum_crosswalk_time","","",62,[[["movement",3]]]],[11,"max_crosswalk_time","","",62,[[["btreemap",3]],[["option",4],["duration",3]]]],[11,"export","","",61,[[["map",3]],["trafficsignal",3]]],[11,"import","","",61,[[["intersectionid",3],["map",3],["trafficsignal",3]],[["controltrafficsignal",3],["result",6]]]],[5,"export_movement","","",null,[[["map",3],["movementid",3]],["turn",3]]],[5,"import_movement","","",null,[[["map",3],["turn",3]],[["result",6],["movementid",3]]]],[5,"find_r","","",null,[[["map",3],["directedroad",3]],[["directedroadid",3],["result",6]]]],[0,"turn","map_model::objects","",null,null],[3,"TurnID","map_model::objects::turn","Turns are uniquely identified by their (src, dst) lanes …",null,null],[12,"parent","","",64,null],[12,"src","","src and dst must both belong to parent. No guarantees …",64,null],[12,"dst","","",64,null],[4,"TurnType","","",null,null],[13,"Crosswalk","","",65,null],[13,"SharedSidewalkCorner","","",65,null],[13,"Straight","","",65,null],[13,"Right","","",65,null],[13,"Left","","",65,null],[13,"UTurn","","",65,null],[4,"TurnPriority","","",null,null],[13,"Banned","","For stop signs: Can\'t currently specify this! For traffic …",66,null],[13,"Yield","","For stop signs: cars have to stop before doing this turn, …",66,null],[13,"Protected","","For stop signs: cars can do this without stopping. These …",66,null],[3,"Turn","","A Turn leads from the end of one Lane to the start of …",null,null],[12,"id","","",67,null],[12,"turn_type","","",67,null],[12,"geom","","",67,null],[12,"other_crosswalk_ids","","Empty except for TurnType::Crosswalk. Usually just one …",67,null],[11,"conflicts_with","","",67,[[["turn",3]]]],[11,"angle","","",67,[[],["angle",3]]],[11,"between_sidewalks","","",67,[[]]],[11,"penalty","","penalties for (lane types, lane-changing, slow lane)",67,[[["map",3]]]],[3,"MovementID","","One road usually has 4 crosswalks, each a singleton …",null,null],[12,"from","","",68,null],[12,"to","","",68,null],[12,"parent","","",68,null],[12,"crosswalk","","",68,null],[3,"CompressedMovementID","","This is cheaper to store than a MovementID. It simply …",null,null],[12,"i","","",69,null],[12,"idx","","",69,null],[3,"Movement","","A Movement groups all turns from one road to another, …",null,null],[12,"id","","",70,null],[12,"turn_type","","",70,null],[12,"members","","",70,null],[12,"geom","","The \\\"overall\\\" path of movement, aka, an \\\"average\\\" of the …",70,null],[12,"angle","","",70,null],[11,"for_i","","",70,[[["intersectionid",3],["map",3]],[["btreemap",3],["result",6]]]],[11,"src_center_and_width","","Polyline points FROM intersection",70,[[["map",3]]]],[11,"conflicts_with","","",70,[[["movement",3]]]],[5,"movement_geom","","",null,[[["directedroadid",3],["polyline",3],["vec",3]],[["polyline",3],["result",6]]]],[0,"zone","map_model::objects","Zones and AccessRestrictions are used to model things …",null,null],[3,"AccessRestrictions","map_model::objects::zone","",null,null],[12,"allow_through_traffic","","",71,null],[12,"cap_vehicles_per_hour","","",71,null],[11,"new","","",71,[[],["accessrestrictions",3]]],[3,"Zone","","A contiguous set of roads with access restrictions. This …",null,null],[12,"members","","",72,null],[12,"borders","","",72,null],[12,"restrictions","","",72,null],[11,"make_all","","",72,[[["map",3]],[["vec",3],["zone",3]]]],[5,"floodfill","","",null,[[["map",3],["roadid",3]],["zone",3]]],[0,"osm","map_model","Useful utilities for working with OpenStreetMap.",null,null],[17,"NAME","map_model::osm","",null,null],[17,"HIGHWAY","","",null,null],[17,"MAXSPEED","","",null,null],[17,"PARKING_RIGHT","","",null,null],[17,"PARKING_LEFT","","",null,null],[17,"PARKING_BOTH","","",null,null],[17,"SIDEWALK","","",null,null],[17,"OSM_WAY_ID","","",null,null],[17,"OSM_REL_ID","","",null,null],[17,"ENDPT_FWD","","",null,null],[17,"ENDPT_BACK","","",null,null],[17,"INFERRED_PARKING","","",null,null],[17,"INFERRED_SIDEWALKS","","",null,null],[4,"RoadRank","","",null,null],[13,"Local","","",73,null],[13,"Arterial","","",73,null],[13,"Highway","","",73,null],[11,"from_highway","","",73,[[],["roadrank",4]]],[11,"detailed_from_highway","","Larger number means a bigger road, according to …",73,[[]]],[3,"NodeID","","",null,null],[12,"0","","",74,null],[3,"WayID","","",null,null],[12,"0","","",75,null],[3,"RelationID","","",null,null],[12,"0","","",76,null],[4,"OsmID","","",null,null],[13,"Node","","",77,null],[13,"Way","","",77,null],[13,"Relation","","",77,null],[11,"inner","","",77,[[]]],[0,"pathfind","map_model","Everything related to pathfinding through a map for …",null,null],[0,"ch","map_model::pathfind","Uses https://github.com/easbar/fast_paths. Slower …",null,null],[3,"ContractionHierarchyPathfinder","map_model::pathfind::ch","",null,null],[12,"car_graph","","",78,null],[12,"bike_graph","","",78,null],[12,"bus_graph","","",78,null],[12,"train_graph","","",78,null],[12,"walking_graph","","",78,null],[12,"walking_with_transit_graph","","",78,null],[11,"new","","",78,[[["map",3],["timer",3]],["contractionhierarchypathfinder",3]]],[11,"simple_pathfind","","",78,[[["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"simple_walking_path","","",78,[[["map",3],["pathrequest",3]],[["option",4],["vec",3]]]],[11,"should_use_transit","","",78,[[["map",3],["position",3]],["option",4]]],[11,"apply_edits","","",78,[[["map",3],["timer",3]]]],[0,"dijkstra","map_model::pathfind","Pathfinding without needing to build a separate …",null,null],[5,"simple_pathfind","map_model::pathfind::dijkstra","",null,[[["routingparams",3],["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[5,"build_graph_for_vehicles","","",null,[[["map",3],["pathconstraints",4]],[["laneid",3],["turnid",3],["digraphmap",6]]]],[5,"pathfind_avoiding_lanes","","",null,[[["pathrequest",3],["map",3],["btreeset",3],["laneid",3]],[["option",4],["path",3]]]],[5,"calc_path","","",null,[[["laneid",3],["pathrequest",3],["turnid",3],["routingparams",3],["map",3],["digraphmap",6]],[["option",4],["path",3]]]],[5,"build_graph_for_pedestrians","","",null,[[["map",3]],[["digraphmap",6],["walkingnode",4]]]],[5,"simple_walking_path","","",null,[[["map",3],["pathrequest",3]],[["option",4],["vec",3]]]],[0,"node_map","map_model::pathfind","Some helpers for working with fast_paths.",null,null],[3,"NodeMap","map_model::pathfind::node_map","A bidirectional mapping between fast_paths NodeId and …",null,null],[12,"node_to_id","","",79,null],[12,"id_to_node","","",79,null],[11,"new","","",79,[[],["nodemap",3]]],[11,"get_or_insert","","",79,[[],["nodeid",6]]],[11,"get","","",79,[[],["nodeid",6]]],[11,"translate","","",79,[[["shortestpath",3]],["vec",3]]],[3,"InnerNodeMap","","",null,null],[12,"id_to_node","","",80,null],[5,"deserialize_nodemap","","",null,[[["deserializer",8]],[["nodemap",3],["result",4]]]],[0,"pathfinder","map_model::pathfind","",null,null],[4,"Pathfinder","map_model::pathfind::pathfinder","Most of the time, prefer using the faster contraction …",null,null],[13,"Dijkstra","","",81,null],[13,"CH","","",81,null],[11,"pathfind","","Finds a path from a start to an end for a certain type of …",81,[[["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"pathfind_with_params","","Finds a path from a start to an end for a certain type of …",81,[[["routingparams",3],["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"pathfind_avoiding_lanes","","Note this is a slower implementation, never using …",81,[[["pathrequest",3],["map",3],["btreeset",3],["laneid",3]],[["option",4],["path",3]]]],[11,"should_use_transit","","",81,[[["map",3],["position",3]],["option",4]]],[11,"apply_edits","","",81,[[["map",3],["timer",3]]]],[0,"uber_turns","map_model::pathfind","To deal with complicated intersections and short roads in …",null,null],[3,"IntersectionCluster","map_model::pathfind::uber_turns","This only applies to VehiclePathfinder; walking through …",null,null],[12,"members","","",82,null],[12,"uber_turns","","",82,null],[3,"UberTurn","","",null,null],[12,"path","","",83,null],[11,"find_all","","",82,[[["map",3]],[["vec",3],["intersectioncluster",3]]]],[11,"new","","(legal, illegal)",82,[[["btreeset",3],["intersectionid",3],["map",3]]]],[11,"autodetect","","Find all other traffic signals \\\"close\\\" to one. Ignore …",82,[[["intersectionid",3],["map",3]],[["btreeset",3],["option",4]]]],[5,"flood","","",null,[[["map",3],["turnid",3],["btreeset",3]],[["uberturn",3],["vec",3]]]],[5,"trace_back","","",null,[[["turnid",3],["btreemap",3]],[["vec",3],["turnid",3]]]],[11,"entry","","",83,[[],["laneid",3]]],[11,"exit","","",83,[[],["laneid",3]]],[11,"geom","","",83,[[["map",3]],["polyline",3]]],[3,"UberTurnGroup","","",null,null],[12,"from","","",84,null],[12,"to","","",84,null],[12,"members","","",84,null],[12,"geom","","",84,null],[11,"uber_turn_groups","","",82,[[["map",3]],[["uberturngroup",3],["vec",3]]]],[11,"src_center_and_width","","Polyline points FROM intersection",84,[[["map",3]]]],[11,"angle","","",84,[[],["angle",3]]],[5,"group_geom","","",null,[[["vec",3],["polyline",3]],["polyline",3]]],[0,"vehicles","map_model::pathfind","Pathfinding for cars, bikes, buses, and trains using …",null,null],[3,"VehiclePathfinder","map_model::pathfind::vehicles","",null,null],[12,"graph","","",85,null],[12,"nodes","","",85,null],[12,"uber_turns","","",85,null],[12,"constraints","","",85,null],[12,"path_calc","","",85,null],[4,"Node","","",null,null],[13,"Lane","","",86,null],[13,"UberTurn","","",86,null],[11,"new","","",85,[[["option",4],["pathconstraints",4],["map",3],["vehiclepathfinder",3]],["vehiclepathfinder",3]]],[11,"pathfind","","",85,[[["map",3],["pathrequest",3]],["option",4]]],[11,"apply_edits","","",85,[[["map",3]]]],[5,"make_input_graph","","",null,[[["nodemap",3],["pathconstraints",4],["map",3],["vec",3]],["inputgraph",3]]],[5,"vehicle_cost","","Different unit based on constraints.",null,[[["turn",3],["pathconstraints",4],["lane",3],["map",3],["routingparams",3]]]],[5,"round","","",null,[[]]],[0,"walking","map_model::pathfind","Pathfinding for pedestrians using contraction …",null,null],[3,"SidewalkPathfinder","map_model::pathfind::walking","",null,null],[12,"graph","","",87,null],[12,"nodes","","",87,null],[12,"use_transit","","",87,null],[12,"path_calc","","",87,null],[4,"WalkingNode","","",null,null],[13,"SidewalkEndpoint","","false is src_i, true is dst_i",3,null],[13,"RideBus","","",3,null],[13,"LeaveMap","","",3,null],[11,"closest","map_model::connectivity","",3,[[["map",3],["position",3]],["walkingnode",4]]],[11,"end_transit","","",3,[[["map",3],["position",3]],["walkingnode",4]]],[11,"new","map_model::pathfind::walking","",87,[[["map",3],["vehiclepathfinder",3]],["sidewalkpathfinder",3]]],[11,"apply_edits","","",87,[[["map",3],["vehiclepathfinder",3]]]],[11,"pathfind","","Returns the raw nodes",87,[[["map",3],["pathrequest",3]],[["option",4],["vec",3]]]],[11,"should_use_transit","","Attempt the pathfinding and see if we should ride a bus. …",87,[[["map",3],["position",3]],["option",4]]],[5,"make_input_graph","","",null,[[["vehiclepathfinder",3],["map",3],["nodemap",3]],["inputgraph",3]]],[5,"transit_input_graph","","",null,[[["vehiclepathfinder",3],["map",3],["nodemap",3],["inputgraph",3]]]],[5,"walking_cost","","The cost is time in seconds, rounded to a usize",null,[[["distance",3]]]],[5,"walking_path_to_steps","","",null,[[["map",3],["walkingnode",4],["vec",3]],[["vec",3],["pathstep",4]]]],[5,"one_step_walking_path","","",null,[[["map",3],["pathrequest",3]],["path",3]]],[4,"PathStep","map_model::pathfind","",null,null],[13,"Lane","","Original direction",88,null],[13,"ContraflowLane","","Sidewalks only!",88,null],[13,"Turn","","",88,null],[11,"as_traversable","","",88,[[],["traversable",4]]],[11,"as_lane","","",88,[[],["laneid",3]]],[11,"as_turn","","",88,[[],["turnid",3]]],[11,"exact_slice","","",88,[[["map",3],["option",4],["distance",3]],[["polyline",3],["result",6]]]],[3,"Path","","",null,null],[12,"steps","","",89,null],[12,"orig_req","","",89,null],[12,"total_length","","",89,null],[12,"crossed_so_far","","",89,null],[12,"uber_turns","","",89,null],[12,"currently_inside_ut","","",89,null],[11,"new","","",89,[[["vec",3],["vec",3],["map",3],["pathstep",4],["uberturn",3],["pathrequest",3]],["path",3]]],[11,"dist_crossed_from_step","","Once we finish this PathStep, how much distance will be …",89,[[["map",3],["pathstep",4]],["distance",3]]],[11,"one_step","","",89,[[["map",3],["pathrequest",3]],["path",3]]],[11,"get_req","","The original PathRequest used to produce this path. If …",89,[[],["pathrequest",3]]],[11,"crossed_so_far","","",89,[[],["distance",3]]],[11,"total_length","","",89,[[],["distance",3]]],[11,"percent_dist_crossed","","",89,[[]]],[11,"is_empty","","",89,[[]]],[11,"is_last_step","","",89,[[]]],[11,"isnt_last_step","","",89,[[]]],[11,"currently_inside_ut","","",89,[[],["option",4]]],[11,"about_to_start_ut","","",89,[[],[["uberturn",3],["option",4]]]],[11,"shift","","",89,[[["map",3]],["pathstep",4]]],[11,"add","","",89,[[["map",3],["pathstep",4]]]],[11,"is_upcoming_uber_turn_component","","",89,[[["turnid",3]]]],[11,"modify_step","","Trusting the caller to do this in valid ways.",89,[[["map",3],["pathstep",4]]]],[11,"current_step","","",89,[[],["pathstep",4]]],[11,"next_step","","",89,[[],["pathstep",4]]],[11,"maybe_next_step","","",89,[[],[["option",4],["pathstep",4]]]],[11,"last_step","","",89,[[],["pathstep",4]]],[11,"trace","","Traces along the path from its originally requested …",89,[[["map",3]],[["option",4],["polyline",3]]]],[11,"trace_from_start","","Traces along the path from a specified distance along the …",89,[[["map",3],["distance",3]],[["option",4],["polyline",3]]]],[11,"get_steps","","",89,[[],["vecdeque",3]]],[11,"estimate_duration","","Estimate how long following the path will take in the …",89,[[["speed",3],["pathconstraints",4],["map",3],["option",4]],["duration",3]]],[4,"PathConstraints","","Who\'s asking for a path?",null,null],[13,"Pedestrian","","",90,null],[13,"Car","","",90,null],[13,"Bike","","",90,null],[13,"Bus","","",90,null],[13,"Train","","",90,null],[11,"all","","",90,[[],[["vec",3],["pathconstraints",4]]]],[11,"from_lt","","Not bijective, but this is the best guess of user intent",90,[[["lanetype",4]],["pathconstraints",4]]],[11,"can_use","","",90,[[["lane",3],["map",3]]]],[11,"filter_lanes","","Strict for bikes. If there are bike lanes, not allowed to …",90,[[["map",3],["vec",3],["laneid",3]],[["vec",3],["laneid",3]]]],[3,"PathRequest","","",null,null],[12,"start","","",91,null],[12,"end","","",91,null],[12,"constraints","","",91,null],[11,"between_buildings","","Determines the start and end position to travel between …",91,[[["map",3],["pathconstraints",4],["buildingid",3]],[["option",4],["pathrequest",3]]]],[5,"validate_continuity","","",null,[[["map",3],["vec",3]]]],[5,"validate_restrictions","","",null,[[["map",3],["vec",3]]]],[5,"validate_zones","","",null,[[["map",3],["vec",3],["pathrequest",3]]]],[5,"zone_cost","","Heavily penalize crossing into an access-restricted zone …",null,[[["map",3],["turn",3],["pathconstraints",4]]]],[3,"RoutingParams","","Tuneable parameters for all types of routing.",null,null],[12,"unprotected_turn_penalty","","",92,null],[12,"bike_lane_penalty","","",92,null],[12,"bus_lane_penalty","","",92,null],[12,"driving_lane_penalty","","",92,null],[11,"default","","",92,[[],["routingparams",3]]],[0,"raw","map_model","The convert_osm crate produces a RawMap from OSM and …",null,null],[3,"RawMap","map_model::raw","",null,null],[12,"name","","",93,null],[12,"roads","","",93,null],[12,"intersections","","",93,null],[12,"buildings","","",93,null],[12,"bus_routes","","",93,null],[12,"areas","","",93,null],[12,"parking_lots","","",93,null],[12,"parking_aisles","","",93,null],[12,"boundary_polygon","","",93,null],[12,"gps_bounds","","",93,null],[12,"config","","",93,null],[3,"OriginalRoad","","A way to refer to roads across many maps and over time. …",null,null],[12,"osm_way_id","","",94,null],[12,"i1","","",94,null],[12,"i2","","",94,null],[11,"new","","",94,[[],["originalroad",3]]],[11,"to_string_code","","Prints the OriginalRoad in a way that can be copied to …",94,[[],["string",3]]],[11,"common_endpt","","",94,[[["originalroad",3]],["nodeid",3]]],[11,"blank","","",93,[[["mapname",3]],["rawmap",3]]],[11,"roads_per_intersection","","",93,[[["nodeid",3]],[["vec",3],["originalroad",3]]]],[11,"new_osm_node_id","","",93,[[],["nodeid",3]]],[11,"new_osm_way_id","","",93,[[],["wayid",3]]],[11,"preview_intersection","","(Intersection polygon, polygons for roads, list of …",93,[[["nodeid",3]]]],[11,"trimmed_road_geometry","","Generate the trimmed PolyLine for a single RawRoad by …",93,[[["originalroad",3]],[["option",4],["polyline",3]]]],[11,"save","","",93,[[]]],[11,"get_city_name","","",93,[[],["cityname",3]]],[11,"can_delete_intersection","","",93,[[["nodeid",3]]]],[11,"delete_intersection","","",93,[[["nodeid",3]]]],[11,"move_intersection","","",93,[[["nodeid",3],["pt2d",3]],[["vec",3],["option",4]]]],[11,"closest_intersection","","",93,[[["pt2d",3]],["nodeid",3]]],[11,"path_dist_to","","",93,[[["nodeid",3]],[["option",4],["distance",3]]]],[11,"merge_short_road","","(the surviving intersection, the deleted intersection, …",93,[[["originalroad",3]],["result",6]]],[3,"RawRoad","","",null,null],[12,"center_points","","This is effectively a PolyLine, except there\'s a case …",95,null],[12,"osm_tags","","",95,null],[12,"turn_restrictions","","",95,null],[12,"complicated_turn_restrictions","","(via, to). For turn restrictions where \'via\' is an entire …",95,null],[11,"get_geometry","","Returns the corrected center and total width",95,[[["mapconfig",3],["originalroad",3]],["result",6]]],[11,"is_light_rail","","",95,[[]]],[11,"is_footway","","",95,[[]]],[11,"is_service","","",95,[[]]],[3,"RawIntersection","","",null,null],[12,"point","","Represents the original place where OSM center-lines …",96,null],[12,"intersection_type","","",96,null],[12,"elevation","","",96,null],[3,"RawBuilding","","",null,null],[12,"polygon","","",97,null],[12,"osm_tags","","",97,null],[12,"public_garage_name","","",97,null],[12,"num_parking_spots","","",97,null],[12,"amenities","","",97,null],[3,"RawArea","","",null,null],[12,"area_type","","",98,null],[12,"polygon","","",98,null],[12,"osm_tags","","",98,null],[12,"osm_id","","",98,null],[3,"RawParkingLot","","",null,null],[12,"osm_id","","",99,null],[12,"polygon","","",99,null],[12,"osm_tags","","",99,null],[4,"RestrictionType","","",null,null],[13,"BanTurns","","",100,null],[13,"OnlyAllowTurns","","",100,null],[3,"TurnRestriction","","",null,null],[12,"0","","",101,null],[12,"1","","",101,null],[12,"2","","",101,null],[11,"new","","",100,[[],[["restrictiontype",4],["option",4]]]],[3,"RawBusRoute","","",null,null],[12,"full_name","","",102,null],[12,"short_name","","",102,null],[12,"osm_rel_id","","",102,null],[12,"gtfs_trip_marker","","",102,null],[12,"is_bus","","If not, light rail",102,null],[12,"stops","","",102,null],[12,"border_start","","",102,null],[12,"border_end","","",102,null],[12,"all_pts","","This is guaranteed to be in order and contiguous.",102,null],[3,"RawBusStop","","",null,null],[12,"name","","",103,null],[12,"vehicle_pos","","Probably not an intersection, but this type is more …",103,null],[12,"matched_road","","Guaranteed to be filled out when RawMap is fully written.",103,null],[12,"ped_pos","","If it\'s not explicitly mapped, we\'ll do equiv_pos.",103,null],[0,"traversable","map_model","",null,null],[3,"Position","map_model::traversable","Represents a specific point some distance along a lane.",null,null],[12,"lane","","",104,null],[12,"dist_along","","",104,null],[11,"new","","",104,[[["distance",3],["laneid",3]],["position",3]]],[11,"start","","",104,[[["laneid",3]],["position",3]]],[11,"end","","",104,[[["map",3],["laneid",3]],["position",3]]],[11,"lane","","",104,[[],["laneid",3]]],[11,"dist_along","","",104,[[],["distance",3]]],[11,"pt","","",104,[[["map",3]],["pt2d",3]]],[11,"pt_and_angle","","",104,[[["map",3]]]],[11,"equiv_pos","","",104,[[["map",3],["laneid",3]],["position",3]]],[11,"equiv_pos_for_long_object","","",104,[[["distance",3],["map",3],["laneid",3]],["position",3]]],[11,"min_dist","","",104,[[["map",3],["distance",3]],[["option",4],["position",3]]]],[11,"buffer_dist","","",104,[[["map",3],["distance",3]],[["option",4],["position",3]]]],[4,"Traversable","","Either a lane or a turn, where most movement happens.",null,null],[13,"Lane","","",105,null],[13,"Turn","","",105,null],[11,"as_lane","","",105,[[],["laneid",3]]],[11,"as_turn","","",105,[[],["turnid",3]]],[11,"maybe_turn","","",105,[[],[["option",4],["turnid",3]]]],[11,"maybe_lane","","",105,[[],[["laneid",3],["option",4]]]],[11,"length","","",105,[[["map",3]],["distance",3]]],[11,"dist_along","","",105,[[["map",3],["distance",3]],["result",6]]],[11,"slice","","",105,[[["map",3],["distance",3]],["result",6]]],[11,"exact_slice","","",105,[[["map",3],["distance",3]],["polyline",3]]],[11,"speed_limit","","",105,[[["map",3]],["speed",3]]],[11,"get_zorder","","",105,[[["map",3]]]],[3,"City","map_model","A single city (like Seattle) can be broken down into …",null,null],[12,"name","","",0,null],[12,"boundary","","",0,null],[12,"areas","","",0,null],[12,"districts","","The individual maps",0,null],[4,"EditCmd","","",null,null],[13,"ChangeRoad","","",19,null],[12,"r","map_model::EditCmd","",20,null],[12,"old","","",20,null],[12,"new","","",20,null],[13,"ChangeIntersection","map_model","",19,null],[12,"i","map_model::EditCmd","",21,null],[12,"new","","",21,null],[12,"old","","",21,null],[13,"ChangeRouteSchedule","map_model","",19,null],[12,"id","map_model::EditCmd","",22,null],[12,"old","","",22,null],[12,"new","","",22,null],[3,"EditEffects","map_model","",null,null],[12,"changed_roads","","",23,null],[12,"changed_intersections","","",23,null],[12,"added_turns","","",23,null],[12,"deleted_turns","","",23,null],[4,"EditIntersection","","",null,null],[13,"StopSign","","",17,null],[13,"TrafficSignal","","",17,null],[13,"Closed","","",17,null],[3,"EditRoad","","",null,null],[12,"lanes_ltr","","",18,null],[12,"speed_limit","","",18,null],[12,"access_restrictions","","",18,null],[3,"MapEdits","","Represents changes to a map. Note this isn\'t serializable …",null,null],[12,"edits_name","","",16,null],[12,"commands","","A stack, oldest edit is first. The same intersection may …",16,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",16,null],[12,"changed_roads","","Derived from commands, kept up to date by update_derived",16,null],[12,"original_intersections","","",16,null],[12,"changed_routes","","",16,null],[12,"proposal_description","","Some edits are included in the game by default, in …",16,null],[12,"proposal_link","","",16,null],[3,"PermanentMapEdits","","MapEdits are converted to this before serializing. …",null,null],[12,"map_name","","",9,null],[12,"edits_name","","",9,null],[12,"version","","",9,null],[12,"commands","","",9,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",9,null],[12,"proposal_description","","Edits without these are player generated.",9,null],[12,"proposal_link","","The link is optional even for proposals",9,null],[4,"DrivingSide","","",null,null],[13,"Right","","",31,null],[13,"Left","","",31,null],[3,"MapConfig","","",null,null],[12,"driving_side","","If true, driving happens on the right side of the road …",30,null],[12,"bikes_can_use_bus_lanes","","",30,null],[12,"inferred_sidewalks","","If true, roads without explicitly tagged sidewalks may …",30,null],[12,"street_parking_spot_length","","Street parking is divided into spots of this length. 8 …",30,null],[3,"Area","","Areas are just used for drawing.",null,null],[12,"id","","",34,null],[12,"area_type","","",34,null],[12,"polygon","","",34,null],[12,"osm_tags","","",34,null],[12,"osm_id","","The importing process also automatically creates some …",34,null],[3,"AreaID","","",null,null],[12,"0","","",32,null],[4,"AreaType","","",null,null],[13,"Park","","",33,null],[13,"Water","","",33,null],[13,"Island","","",33,null],[13,"MedianStrip","","",33,null],[13,"PedestrianPlaza","","",33,null],[13,"StudyArea","","Not from OSM. A user-specified area to focus on.",33,null],[3,"Amenity","","A business located inside a building.",null,null],[12,"names","","",37,null],[12,"amenity_type","","This is the specific amenity listed in OSM, not the more …",37,null],[12,"osm_tags","","Depending on options while importing, these might be …",37,null],[4,"AmenityType","","Businesses are categorized into one of these types.",null,null],[13,"Groceries","","",42,null],[13,"Food","","",42,null],[13,"Bar","","",42,null],[13,"Medical","","",42,null],[13,"Religious","","",42,null],[13,"Education","","",42,null],[13,"Financial","","",42,null],[13,"PostOffice","","",42,null],[13,"Culture","","",42,null],[13,"Childcare","","",42,null],[13,"Shopping","","",42,null],[3,"Building","","A building has connections to the road and sidewalk, may …",null,null],[12,"id","","",36,null],[12,"polygon","","",36,null],[12,"levels","","",36,null],[12,"address","","",36,null],[12,"name","","",36,null],[12,"orig_id","","",36,null],[12,"label_center","","Where a text label should be centered to have the best …",36,null],[12,"amenities","","",36,null],[12,"bldg_type","","",36,null],[12,"parking","","",36,null],[12,"osm_tags","","Depending on options while importing, these might be …",36,null],[12,"sidewalk_pos","","The building\'s connection for pedestrians is immutable. …",36,null],[12,"driveway_geom","","Goes from building to sidewalk",36,null],[3,"BuildingID","","",null,null],[12,"0","","",35,null],[4,"BuildingType","","",null,null],[13,"Residential","","",39,null],[12,"num_residents","map_model::BuildingType","",40,null],[12,"num_housing_units","","",40,null],[13,"ResidentialCommercial","map_model","An estimated number of residents, workers",39,null],[13,"Commercial","","An estimated number of workers",39,null],[13,"Empty","","",39,null],[3,"NamePerLanguage","","None corresponds to the native name",null,null],[12,"0","","",41,null],[4,"OffstreetParking","","Represent no parking as Private(0, false).",null,null],[13,"PublicGarage","","(Name, spots)",38,null],[13,"Private","","(Spots, explicitly tagged as a garage)",38,null],[3,"BusRoute","","",null,null],[12,"id","","",46,null],[12,"full_name","","",46,null],[12,"short_name","","",46,null],[12,"gtfs_trip_marker","","",46,null],[12,"osm_rel_id","","",46,null],[12,"stops","","",46,null],[12,"start","","May be a border or not. If not, is long enough for buses …",46,null],[12,"end_border","","",46,null],[12,"route_type","","",46,null],[12,"spawn_times","","Non-empty, times in order for one day when a vehicle …",46,null],[12,"orig_spawn_times","","Explicitly store whatever the original was, since this …",46,null],[3,"BusRouteID","","",null,null],[12,"0","","",44,null],[3,"BusStop","","",null,null],[12,"id","","",45,null],[12,"name","","",45,null],[12,"driving_pos","","These may be on different roads entirely, like for light …",45,null],[12,"sidewalk_pos","","",45,null],[12,"is_train_stop","","If it\'s both, train overrides bus",45,null],[3,"BusStopID","","",null,null],[12,"sidewalk","","",43,null],[12,"idx","","As long as this is unique per lane, this value is …",43,null],[3,"Intersection","","An intersection connects roads. Most have >2 roads and …",null,null],[12,"id","","",49,null],[12,"polygon","","This needs to be in clockwise orientation, or later …",49,null],[12,"turns","","",49,null],[12,"elevation","","",49,null],[12,"intersection_type","","",49,null],[12,"orig_id","","",49,null],[12,"incoming_lanes","","Note that a lane may belong to both incoming_lanes and …",49,null],[12,"outgoing_lanes","","",49,null],[12,"roads","","",49,null],[12,"merged","","Was a short road adjacent to this intersection merged?",49,null],[3,"IntersectionID","","",null,null],[12,"0","","",47,null],[4,"IntersectionType","","",null,null],[13,"StopSign","","",48,null],[13,"TrafficSignal","","",48,null],[13,"Border","","",48,null],[13,"Construction","","",48,null],[3,"Lane","","A road segment is broken down into individual lanes, …",null,null],[12,"id","","",52,null],[12,"parent","","",52,null],[12,"lane_type","","",52,null],[12,"lane_center_pts","","",52,null],[12,"width","","",52,null],[12,"src_i","","",52,null],[12,"dst_i","","",52,null],[12,"bus_stops","","Meaningless order",52,null],[12,"driving_blackhole","","{Cars, bikes} trying to start or end here might not be …",52,null],[12,"biking_blackhole","","",52,null],[3,"LaneID","","",null,null],[12,"0","","",50,null],[4,"LaneType","","",null,null],[13,"Driving","","",51,null],[13,"Parking","","",51,null],[13,"Sidewalk","","",51,null],[13,"Shoulder","","",51,null],[13,"Biking","","",51,null],[13,"Bus","","",51,null],[13,"SharedLeftTurn","","",51,null],[13,"Construction","","",51,null],[13,"LightRail","","",51,null],[17,"PARKING_LOT_SPOT_LENGTH","","From some manually audited cases in Seattle, the length …",null,null],[3,"ParkingLot","","Parking lots have some fixed capacity for cars, and are …",null,null],[12,"id","","",54,null],[12,"polygon","","",54,null],[12,"aisles","","",54,null],[12,"osm_id","","",54,null],[12,"spots","","The middle of the \\\"T\\\", pointing towards the parking aisle",54,null],[12,"extra_spots","","If we can\'t render all spots (maybe a lot with no aisles …",54,null],[12,"driveway_line","","Goes from the lot to the driving lane",54,null],[12,"driving_pos","","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …",54,null],[12,"sidewalk_line","","Lot to sidewalk",54,null],[12,"sidewalk_pos","","",54,null],[3,"ParkingLotID","","",null,null],[12,"0","","",53,null],[3,"DirectedRoadID","","",null,null],[12,"id","","",57,null],[12,"dir","","",57,null],[4,"Direction","","",null,null],[13,"Fwd","","",56,null],[13,"Back","","",56,null],[3,"Road","","A Road represents a segment between exactly two …",null,null],[12,"id","","",58,null],[12,"osm_tags","","",58,null],[12,"turn_restrictions","","self is \'from\'",58,null],[12,"complicated_turn_restrictions","","self is \'from\'. (via, to). Only BanTurns.",58,null],[12,"orig_id","","",58,null],[12,"speed_limit","","",58,null],[12,"access_restrictions","","",58,null],[12,"zorder","","",58,null],[12,"lanes_ltr","","Invariant: A road must contain at least one child",58,null],[12,"center_pts","","The physical center of the road, including sidewalks, …",58,null],[12,"src_i","","",58,null],[12,"dst_i","","",58,null],[3,"RoadID","","",null,null],[12,"0","","",55,null],[3,"ControlStopSign","","",null,null],[12,"id","","",59,null],[12,"roads","","",59,null],[3,"RoadWithStopSign","","",null,null],[12,"lane_closest_to_edge","","",60,null],[12,"must_stop","","",60,null],[3,"ControlTrafficSignal","","A traffic signal consists of a sequence of Stages that …",null,null],[12,"id","","",61,null],[12,"stages","","",61,null],[12,"offset","","",61,null],[12,"movements","","",61,null],[3,"Stage","","",null,null],[12,"protected_movements","","",62,null],[12,"yield_movements","","",62,null],[12,"stage_type","","",62,null],[4,"StageType","","",null,null],[13,"Fixed","","",63,null],[13,"Variable","","Minimum is the minimum duration, 0 allows cycle to be …",63,null],[3,"CompressedMovementID","","This is cheaper to store than a MovementID. It simply …",null,null],[12,"i","","",69,null],[12,"idx","","",69,null],[3,"Movement","","A Movement groups all turns from one road to another, …",null,null],[12,"id","","",70,null],[12,"turn_type","","",70,null],[12,"members","","",70,null],[12,"geom","","The \\\"overall\\\" path of movement, aka, an \\\"average\\\" of the …",70,null],[12,"angle","","",70,null],[3,"MovementID","","One road usually has 4 crosswalks, each a singleton …",null,null],[12,"from","","",68,null],[12,"to","","",68,null],[12,"parent","","",68,null],[12,"crosswalk","","",68,null],[3,"Turn","","A Turn leads from the end of one Lane to the start of …",null,null],[12,"id","","",67,null],[12,"turn_type","","",67,null],[12,"geom","","",67,null],[12,"other_crosswalk_ids","","Empty except for TurnType::Crosswalk. Usually just one …",67,null],[3,"TurnID","","Turns are uniquely identified by their (src, dst) lanes …",null,null],[12,"parent","","",64,null],[12,"src","","src and dst must both belong to parent. No guarantees …",64,null],[12,"dst","","",64,null],[4,"TurnPriority","","",null,null],[13,"Banned","","For stop signs: Can\'t currently specify this! For traffic …",66,null],[13,"Yield","","For stop signs: cars have to stop before doing this turn, …",66,null],[13,"Protected","","For stop signs: cars can do this without stopping. These …",66,null],[4,"TurnType","","",null,null],[13,"Crosswalk","","",65,null],[13,"SharedSidewalkCorner","","",65,null],[13,"Straight","","",65,null],[13,"Right","","",65,null],[13,"Left","","",65,null],[13,"UTurn","","",65,null],[3,"AccessRestrictions","","",null,null],[12,"allow_through_traffic","","",71,null],[12,"cap_vehicles_per_hour","","",71,null],[3,"Zone","","A contiguous set of roads with access restrictions. This …",null,null],[12,"members","","",72,null],[12,"borders","","",72,null],[12,"restrictions","","",72,null],[3,"IntersectionCluster","","This only applies to VehiclePathfinder; walking through …",null,null],[12,"members","","",82,null],[12,"uber_turns","","",82,null],[3,"UberTurn","","",null,null],[12,"path","","",83,null],[3,"UberTurnGroup","","",null,null],[12,"from","","",84,null],[12,"to","","",84,null],[12,"members","","",84,null],[12,"geom","","",84,null],[3,"Path","","",null,null],[12,"steps","","",89,null],[12,"orig_req","","",89,null],[12,"total_length","","",89,null],[12,"crossed_so_far","","",89,null],[12,"uber_turns","","",89,null],[12,"currently_inside_ut","","",89,null],[4,"PathConstraints","","Who\'s asking for a path?",null,null],[13,"Pedestrian","","",90,null],[13,"Car","","",90,null],[13,"Bike","","",90,null],[13,"Bus","","",90,null],[13,"Train","","",90,null],[3,"PathRequest","","",null,null],[12,"start","","",91,null],[12,"end","","",91,null],[12,"constraints","","",91,null],[4,"PathStep","","",null,null],[13,"Lane","","Original direction",88,null],[13,"ContraflowLane","","Sidewalks only!",88,null],[13,"Turn","","",88,null],[3,"RoutingParams","","Tuneable parameters for all types of routing.",null,null],[12,"unprotected_turn_penalty","","",92,null],[12,"bike_lane_penalty","","",92,null],[12,"bus_lane_penalty","","",92,null],[12,"driving_lane_penalty","","",92,null],[3,"Position","","Represents a specific point some distance along a lane.",null,null],[12,"lane","","",104,null],[12,"dist_along","","",104,null],[4,"Traversable","","Either a lane or a turn, where most movement happens.",null,null],[13,"Lane","","",105,null],[13,"Turn","","",105,null],[17,"NORMAL_LANE_THICKNESS","","",null,null],[17,"SERVICE_ROAD_LANE_THICKNESS","","",null,null],[17,"SIDEWALK_THICKNESS","","",null,null],[17,"SHOULDER_THICKNESS","","",null,null],[3,"Map","","",null,null],[12,"roads","","",106,null],[12,"lanes","","",106,null],[12,"intersections","","",106,null],[12,"turns","","",106,null],[12,"buildings","","",106,null],[12,"bus_stops","","",106,null],[12,"bus_routes","","",106,null],[12,"areas","","",106,null],[12,"parking_lots","","",106,null],[12,"boundary_polygon","","",106,null],[12,"stop_signs","","",106,null],[12,"traffic_signals","","",106,null],[12,"gps_bounds","","",106,null],[12,"bounds","","",106,null],[12,"config","","",106,null],[12,"pathfinder","","",106,null],[12,"pathfinder_dirty","","",106,null],[12,"routing_params","","",106,null],[12,"zones","","",106,null],[12,"name","","",106,null],[12,"edits","","",106,null],[11,"from","map_model::city","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"from","map_model::connectivity::walking","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_owned","","",1,[[]]],[11,"clone_into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"equivalent","","",2,[[]]],[11,"vzip","","",2,[[]]],[11,"from","map_model::connectivity","",3,[[]]],[11,"into","","",3,[[]]],[11,"to_owned","","",3,[[]]],[11,"clone_into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"equivalent","","",3,[[]]],[11,"get_hash","","",3,[[]]],[11,"vzip","","",3,[[]]],[11,"from","map_model::edits::compat","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","map_model::edits::perma","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"vzip","","",10,[[]]],[11,"from","","",12,[[]]],[11,"into","","",12,[[]]],[11,"to_owned","","",12,[[]]],[11,"clone_into","","",12,[[]]],[11,"borrow","","",12,[[]]],[11,"borrow_mut","","",12,[[]]],[11,"try_from","","",12,[[],["result",4]]],[11,"try_into","","",12,[[],["result",4]]],[11,"type_id","","",12,[[],["typeid",3]]],[11,"vzip","","",12,[[]]],[11,"from","map_model::edits","",16,[[]]],[11,"into","","",16,[[]]],[11,"to_owned","","",16,[[]]],[11,"clone_into","","",16,[[]]],[11,"borrow","","",16,[[]]],[11,"borrow_mut","","",16,[[]]],[11,"try_from","","",16,[[],["result",4]]],[11,"try_into","","",16,[[],["result",4]]],[11,"type_id","","",16,[[],["typeid",3]]],[11,"vzip","","",16,[[]]],[11,"from","","",17,[[]]],[11,"into","","",17,[[]]],[11,"to_owned","","",17,[[]]],[11,"clone_into","","",17,[[]]],[11,"borrow","","",17,[[]]],[11,"borrow_mut","","",17,[[]]],[11,"try_from","","",17,[[],["result",4]]],[11,"try_into","","",17,[[],["result",4]]],[11,"type_id","","",17,[[],["typeid",3]]],[11,"vzip","","",17,[[]]],[11,"from","","",18,[[]]],[11,"into","","",18,[[]]],[11,"to_owned","","",18,[[]]],[11,"clone_into","","",18,[[]]],[11,"borrow","","",18,[[]]],[11,"borrow_mut","","",18,[[]]],[11,"try_from","","",18,[[],["result",4]]],[11,"try_into","","",18,[[],["result",4]]],[11,"type_id","","",18,[[],["typeid",3]]],[11,"vzip","","",18,[[]]],[11,"from","","",19,[[]]],[11,"into","","",19,[[]]],[11,"to_owned","","",19,[[]]],[11,"clone_into","","",19,[[]]],[11,"borrow","","",19,[[]]],[11,"borrow_mut","","",19,[[]]],[11,"try_from","","",19,[[],["result",4]]],[11,"try_into","","",19,[[],["result",4]]],[11,"type_id","","",19,[[],["typeid",3]]],[11,"vzip","","",19,[[]]],[11,"from","","",23,[[]]],[11,"into","","",23,[[]]],[11,"borrow","","",23,[[]]],[11,"borrow_mut","","",23,[[]]],[11,"try_from","","",23,[[],["result",4]]],[11,"try_into","","",23,[[],["result",4]]],[11,"type_id","","",23,[[],["typeid",3]]],[11,"vzip","","",23,[[]]],[11,"from","map_model::make::initial::geometry","",24,[[]]],[11,"into","","",24,[[]]],[11,"borrow","","",24,[[]]],[11,"borrow_mut","","",24,[[]]],[11,"try_from","","",24,[[],["result",4]]],[11,"try_into","","",24,[[],["result",4]]],[11,"type_id","","",24,[[],["typeid",3]]],[11,"vzip","","",24,[[]]],[11,"from","map_model::make::initial::lane_specs","",25,[[]]],[11,"into","","",25,[[]]],[11,"borrow","","",25,[[]]],[11,"borrow_mut","","",25,[[]]],[11,"try_from","","",25,[[],["result",4]]],[11,"try_into","","",25,[[],["result",4]]],[11,"type_id","","",25,[[],["typeid",3]]],[11,"vzip","","",25,[[]]],[11,"from","map_model::make::initial","",26,[[]]],[11,"into","","",26,[[]]],[11,"borrow","","",26,[[]]],[11,"borrow_mut","","",26,[[]]],[11,"try_from","","",26,[[],["result",4]]],[11,"try_into","","",26,[[],["result",4]]],[11,"type_id","","",26,[[],["typeid",3]]],[11,"vzip","","",26,[[]]],[11,"from","","",27,[[]]],[11,"into","","",27,[[]]],[11,"borrow","","",27,[[]]],[11,"borrow_mut","","",27,[[]]],[11,"try_from","","",27,[[],["result",4]]],[11,"try_into","","",27,[[],["result",4]]],[11,"type_id","","",27,[[],["typeid",3]]],[11,"vzip","","",27,[[]]],[11,"from","","",28,[[]]],[11,"into","","",28,[[]]],[11,"borrow","","",28,[[]]],[11,"borrow_mut","","",28,[[]]],[11,"try_from","","",28,[[],["result",4]]],[11,"try_into","","",28,[[],["result",4]]],[11,"type_id","","",28,[[],["typeid",3]]],[11,"vzip","","",28,[[]]],[11,"from","map_model::make::transit","",29,[[]]],[11,"into","","",29,[[]]],[11,"borrow","","",29,[[]]],[11,"borrow_mut","","",29,[[]]],[11,"try_from","","",29,[[],["result",4]]],[11,"try_into","","",29,[[],["result",4]]],[11,"type_id","","",29,[[],["typeid",3]]],[11,"vzip","","",29,[[]]],[11,"from","map_model::map","",30,[[]]],[11,"into","","",30,[[]]],[11,"to_owned","","",30,[[]]],[11,"clone_into","","",30,[[]]],[11,"borrow","","",30,[[]]],[11,"borrow_mut","","",30,[[]]],[11,"try_from","","",30,[[],["result",4]]],[11,"try_into","","",30,[[],["result",4]]],[11,"type_id","","",30,[[],["typeid",3]]],[11,"vzip","","",30,[[]]],[11,"from","","",31,[[]]],[11,"into","","",31,[[]]],[11,"to_owned","","",31,[[]]],[11,"clone_into","","",31,[[]]],[11,"borrow","","",31,[[]]],[11,"borrow_mut","","",31,[[]]],[11,"try_from","","",31,[[],["result",4]]],[11,"try_into","","",31,[[],["result",4]]],[11,"type_id","","",31,[[],["typeid",3]]],[11,"vzip","","",31,[[]]],[11,"from","map_model::objects::area","",32,[[]]],[11,"into","","",32,[[]]],[11,"to_owned","","",32,[[]]],[11,"clone_into","","",32,[[]]],[11,"to_string","","",32,[[],["string",3]]],[11,"borrow","","",32,[[]]],[11,"borrow_mut","","",32,[[]]],[11,"try_from","","",32,[[],["result",4]]],[11,"try_into","","",32,[[],["result",4]]],[11,"type_id","","",32,[[],["typeid",3]]],[11,"equivalent","","",32,[[]]],[11,"get_hash","","",32,[[]]],[11,"vzip","","",32,[[]]],[11,"from","","",33,[[]]],[11,"into","","",33,[[]]],[11,"to_owned","","",33,[[]]],[11,"clone_into","","",33,[[]]],[11,"borrow","","",33,[[]]],[11,"borrow_mut","","",33,[[]]],[11,"try_from","","",33,[[],["result",4]]],[11,"try_into","","",33,[[],["result",4]]],[11,"type_id","","",33,[[],["typeid",3]]],[11,"equivalent","","",33,[[]]],[11,"get_hash","","",33,[[]]],[11,"vzip","","",33,[[]]],[11,"from","","",34,[[]]],[11,"into","","",34,[[]]],[11,"borrow","","",34,[[]]],[11,"borrow_mut","","",34,[[]]],[11,"try_from","","",34,[[],["result",4]]],[11,"try_into","","",34,[[],["result",4]]],[11,"type_id","","",34,[[],["typeid",3]]],[11,"vzip","","",34,[[]]],[11,"from","map_model::objects::building","",35,[[]]],[11,"into","","",35,[[]]],[11,"to_owned","","",35,[[]]],[11,"clone_into","","",35,[[]]],[11,"to_string","","",35,[[],["string",3]]],[11,"borrow","","",35,[[]]],[11,"borrow_mut","","",35,[[]]],[11,"try_from","","",35,[[],["result",4]]],[11,"try_into","","",35,[[],["result",4]]],[11,"type_id","","",35,[[],["typeid",3]]],[11,"equivalent","","",35,[[]]],[11,"get_hash","","",35,[[]]],[11,"vzip","","",35,[[]]],[11,"from","","",36,[[]]],[11,"into","","",36,[[]]],[11,"borrow","","",36,[[]]],[11,"borrow_mut","","",36,[[]]],[11,"try_from","","",36,[[],["result",4]]],[11,"try_into","","",36,[[],["result",4]]],[11,"type_id","","",36,[[],["typeid",3]]],[11,"vzip","","",36,[[]]],[11,"from","","",37,[[]]],[11,"into","","",37,[[]]],[11,"to_owned","","",37,[[]]],[11,"clone_into","","",37,[[]]],[11,"borrow","","",37,[[]]],[11,"borrow_mut","","",37,[[]]],[11,"try_from","","",37,[[],["result",4]]],[11,"try_into","","",37,[[],["result",4]]],[11,"type_id","","",37,[[],["typeid",3]]],[11,"vzip","","",37,[[]]],[11,"from","","",38,[[]]],[11,"into","","",38,[[]]],[11,"to_owned","","",38,[[]]],[11,"clone_into","","",38,[[]]],[11,"borrow","","",38,[[]]],[11,"borrow_mut","","",38,[[]]],[11,"try_from","","",38,[[],["result",4]]],[11,"try_into","","",38,[[],["result",4]]],[11,"type_id","","",38,[[],["typeid",3]]],[11,"vzip","","",38,[[]]],[11,"from","","",39,[[]]],[11,"into","","",39,[[]]],[11,"to_owned","","",39,[[]]],[11,"clone_into","","",39,[[]]],[11,"borrow","","",39,[[]]],[11,"borrow_mut","","",39,[[]]],[11,"try_from","","",39,[[],["result",4]]],[11,"try_into","","",39,[[],["result",4]]],[11,"type_id","","",39,[[],["typeid",3]]],[11,"vzip","","",39,[[]]],[11,"from","","",41,[[]]],[11,"into","","",41,[[]]],[11,"to_owned","","",41,[[]]],[11,"clone_into","","",41,[[]]],[11,"borrow","","",41,[[]]],[11,"borrow_mut","","",41,[[]]],[11,"try_from","","",41,[[],["result",4]]],[11,"try_into","","",41,[[],["result",4]]],[11,"type_id","","",41,[[],["typeid",3]]],[11,"equivalent","","",41,[[]]],[11,"vzip","","",41,[[]]],[11,"from","","",42,[[]]],[11,"into","","",42,[[]]],[11,"to_owned","","",42,[[]]],[11,"clone_into","","",42,[[]]],[11,"to_string","","",42,[[],["string",3]]],[11,"borrow","","",42,[[]]],[11,"borrow_mut","","",42,[[]]],[11,"try_from","","",42,[[],["result",4]]],[11,"try_into","","",42,[[],["result",4]]],[11,"type_id","","",42,[[],["typeid",3]]],[11,"equivalent","","",42,[[]]],[11,"vzip","","",42,[[]]],[11,"from","map_model::objects::bus_stop","",43,[[]]],[11,"into","","",43,[[]]],[11,"to_owned","","",43,[[]]],[11,"clone_into","","",43,[[]]],[11,"to_string","","",43,[[],["string",3]]],[11,"borrow","","",43,[[]]],[11,"borrow_mut","","",43,[[]]],[11,"try_from","","",43,[[],["result",4]]],[11,"try_into","","",43,[[],["result",4]]],[11,"type_id","","",43,[[],["typeid",3]]],[11,"equivalent","","",43,[[]]],[11,"get_hash","","",43,[[]]],[11,"vzip","","",43,[[]]],[11,"from","","",44,[[]]],[11,"into","","",44,[[]]],[11,"to_owned","","",44,[[]]],[11,"clone_into","","",44,[[]]],[11,"to_string","","",44,[[],["string",3]]],[11,"borrow","","",44,[[]]],[11,"borrow_mut","","",44,[[]]],[11,"try_from","","",44,[[],["result",4]]],[11,"try_into","","",44,[[],["result",4]]],[11,"type_id","","",44,[[],["typeid",3]]],[11,"equivalent","","",44,[[]]],[11,"get_hash","","",44,[[]]],[11,"vzip","","",44,[[]]],[11,"from","","",45,[[]]],[11,"into","","",45,[[]]],[11,"to_owned","","",45,[[]]],[11,"clone_into","","",45,[[]]],[11,"borrow","","",45,[[]]],[11,"borrow_mut","","",45,[[]]],[11,"try_from","","",45,[[],["result",4]]],[11,"try_into","","",45,[[],["result",4]]],[11,"type_id","","",45,[[],["typeid",3]]],[11,"vzip","","",45,[[]]],[11,"from","","",46,[[]]],[11,"into","","",46,[[]]],[11,"borrow","","",46,[[]]],[11,"borrow_mut","","",46,[[]]],[11,"try_from","","",46,[[],["result",4]]],[11,"try_into","","",46,[[],["result",4]]],[11,"type_id","","",46,[[],["typeid",3]]],[11,"vzip","","",46,[[]]],[11,"from","map_model::objects::intersection","",47,[[]]],[11,"into","","",47,[[]]],[11,"to_owned","","",47,[[]]],[11,"clone_into","","",47,[[]]],[11,"to_string","","",47,[[],["string",3]]],[11,"borrow","","",47,[[]]],[11,"borrow_mut","","",47,[[]]],[11,"try_from","","",47,[[],["result",4]]],[11,"try_into","","",47,[[],["result",4]]],[11,"type_id","","",47,[[],["typeid",3]]],[11,"equivalent","","",47,[[]]],[11,"get_hash","","",47,[[]]],[11,"vzip","","",47,[[]]],[11,"from","","",48,[[]]],[11,"into","","",48,[[]]],[11,"to_owned","","",48,[[]]],[11,"clone_into","","",48,[[]]],[11,"borrow","","",48,[[]]],[11,"borrow_mut","","",48,[[]]],[11,"try_from","","",48,[[],["result",4]]],[11,"try_into","","",48,[[],["result",4]]],[11,"type_id","","",48,[[],["typeid",3]]],[11,"equivalent","","",48,[[]]],[11,"get_hash","","",48,[[]]],[11,"vzip","","",48,[[]]],[11,"from","","",49,[[]]],[11,"into","","",49,[[]]],[11,"borrow","","",49,[[]]],[11,"borrow_mut","","",49,[[]]],[11,"try_from","","",49,[[],["result",4]]],[11,"try_into","","",49,[[],["result",4]]],[11,"type_id","","",49,[[],["typeid",3]]],[11,"vzip","","",49,[[]]],[11,"from","map_model::objects::lane","",50,[[]]],[11,"into","","",50,[[]]],[11,"to_owned","","",50,[[]]],[11,"clone_into","","",50,[[]]],[11,"to_string","","",50,[[],["string",3]]],[11,"borrow","","",50,[[]]],[11,"borrow_mut","","",50,[[]]],[11,"try_from","","",50,[[],["result",4]]],[11,"try_into","","",50,[[],["result",4]]],[11,"type_id","","",50,[[],["typeid",3]]],[11,"equivalent","","",50,[[]]],[11,"get_hash","","",50,[[]]],[11,"vzip","","",50,[[]]],[11,"from","","",51,[[]]],[11,"into","","",51,[[]]],[11,"to_owned","","",51,[[]]],[11,"clone_into","","",51,[[]]],[11,"borrow","","",51,[[]]],[11,"borrow_mut","","",51,[[]]],[11,"try_from","","",51,[[],["result",4]]],[11,"try_into","","",51,[[],["result",4]]],[11,"type_id","","",51,[[],["typeid",3]]],[11,"equivalent","","",51,[[]]],[11,"get_hash","","",51,[[]]],[11,"vzip","","",51,[[]]],[11,"from","","",52,[[]]],[11,"into","","",52,[[]]],[11,"borrow","","",52,[[]]],[11,"borrow_mut","","",52,[[]]],[11,"try_from","","",52,[[],["result",4]]],[11,"try_into","","",52,[[],["result",4]]],[11,"type_id","","",52,[[],["typeid",3]]],[11,"vzip","","",52,[[]]],[11,"from","map_model::objects::parking_lot","",53,[[]]],[11,"into","","",53,[[]]],[11,"to_owned","","",53,[[]]],[11,"clone_into","","",53,[[]]],[11,"to_string","","",53,[[],["string",3]]],[11,"borrow","","",53,[[]]],[11,"borrow_mut","","",53,[[]]],[11,"try_from","","",53,[[],["result",4]]],[11,"try_into","","",53,[[],["result",4]]],[11,"type_id","","",53,[[],["typeid",3]]],[11,"equivalent","","",53,[[]]],[11,"get_hash","","",53,[[]]],[11,"vzip","","",53,[[]]],[11,"from","","",54,[[]]],[11,"into","","",54,[[]]],[11,"borrow","","",54,[[]]],[11,"borrow_mut","","",54,[[]]],[11,"try_from","","",54,[[],["result",4]]],[11,"try_into","","",54,[[],["result",4]]],[11,"type_id","","",54,[[],["typeid",3]]],[11,"vzip","","",54,[[]]],[11,"from","map_model::objects::road","",55,[[]]],[11,"into","","",55,[[]]],[11,"to_owned","","",55,[[]]],[11,"clone_into","","",55,[[]]],[11,"to_string","","",55,[[],["string",3]]],[11,"borrow","","",55,[[]]],[11,"borrow_mut","","",55,[[]]],[11,"try_from","","",55,[[],["result",4]]],[11,"try_into","","",55,[[],["result",4]]],[11,"type_id","","",55,[[],["typeid",3]]],[11,"equivalent","","",55,[[]]],[11,"get_hash","","",55,[[]]],[11,"vzip","","",55,[[]]],[11,"from","","",56,[[]]],[11,"into","","",56,[[]]],[11,"to_owned","","",56,[[]]],[11,"clone_into","","",56,[[]]],[11,"to_string","","",56,[[],["string",3]]],[11,"borrow","","",56,[[]]],[11,"borrow_mut","","",56,[[]]],[11,"try_from","","",56,[[],["result",4]]],[11,"try_into","","",56,[[],["result",4]]],[11,"type_id","","",56,[[],["typeid",3]]],[11,"equivalent","","",56,[[]]],[11,"get_hash","","",56,[[]]],[11,"vzip","","",56,[[]]],[11,"from","","",57,[[]]],[11,"into","","",57,[[]]],[11,"to_owned","","",57,[[]]],[11,"clone_into","","",57,[[]]],[11,"to_string","","",57,[[],["string",3]]],[11,"borrow","","",57,[[]]],[11,"borrow_mut","","",57,[[]]],[11,"try_from","","",57,[[],["result",4]]],[11,"try_into","","",57,[[],["result",4]]],[11,"type_id","","",57,[[],["typeid",3]]],[11,"equivalent","","",57,[[]]],[11,"get_hash","","",57,[[]]],[11,"vzip","","",57,[[]]],[11,"from","","",58,[[]]],[11,"into","","",58,[[]]],[11,"borrow","","",58,[[]]],[11,"borrow_mut","","",58,[[]]],[11,"try_from","","",58,[[],["result",4]]],[11,"try_into","","",58,[[],["result",4]]],[11,"type_id","","",58,[[],["typeid",3]]],[11,"vzip","","",58,[[]]],[11,"from","map_model::objects::stop_signs","",59,[[]]],[11,"into","","",59,[[]]],[11,"to_owned","","",59,[[]]],[11,"clone_into","","",59,[[]]],[11,"borrow","","",59,[[]]],[11,"borrow_mut","","",59,[[]]],[11,"try_from","","",59,[[],["result",4]]],[11,"try_into","","",59,[[],["result",4]]],[11,"type_id","","",59,[[],["typeid",3]]],[11,"vzip","","",59,[[]]],[11,"from","","",60,[[]]],[11,"into","","",60,[[]]],[11,"to_owned","","",60,[[]]],[11,"clone_into","","",60,[[]]],[11,"borrow","","",60,[[]]],[11,"borrow_mut","","",60,[[]]],[11,"try_from","","",60,[[],["result",4]]],[11,"try_into","","",60,[[],["result",4]]],[11,"type_id","","",60,[[],["typeid",3]]],[11,"vzip","","",60,[[]]],[11,"from","map_model::objects::traffic_signals","",61,[[]]],[11,"into","","",61,[[]]],[11,"to_owned","","",61,[[]]],[11,"clone_into","","",61,[[]]],[11,"borrow","","",61,[[]]],[11,"borrow_mut","","",61,[[]]],[11,"try_from","","",61,[[],["result",4]]],[11,"try_into","","",61,[[],["result",4]]],[11,"type_id","","",61,[[],["typeid",3]]],[11,"vzip","","",61,[[]]],[11,"from","","",62,[[]]],[11,"into","","",62,[[]]],[11,"to_owned","","",62,[[]]],[11,"clone_into","","",62,[[]]],[11,"borrow","","",62,[[]]],[11,"borrow_mut","","",62,[[]]],[11,"try_from","","",62,[[],["result",4]]],[11,"try_into","","",62,[[],["result",4]]],[11,"type_id","","",62,[[],["typeid",3]]],[11,"vzip","","",62,[[]]],[11,"from","","",63,[[]]],[11,"into","","",63,[[]]],[11,"to_owned","","",63,[[]]],[11,"clone_into","","",63,[[]]],[11,"borrow","","",63,[[]]],[11,"borrow_mut","","",63,[[]]],[11,"try_from","","",63,[[],["result",4]]],[11,"try_into","","",63,[[],["result",4]]],[11,"type_id","","",63,[[],["typeid",3]]],[11,"vzip","","",63,[[]]],[11,"from","map_model::objects::turn","",64,[[]]],[11,"into","","",64,[[]]],[11,"to_owned","","",64,[[]]],[11,"clone_into","","",64,[[]]],[11,"to_string","","",64,[[],["string",3]]],[11,"borrow","","",64,[[]]],[11,"borrow_mut","","",64,[[]]],[11,"try_from","","",64,[[],["result",4]]],[11,"try_into","","",64,[[],["result",4]]],[11,"type_id","","",64,[[],["typeid",3]]],[11,"equivalent","","",64,[[]]],[11,"get_hash","","",64,[[]]],[11,"vzip","","",64,[[]]],[11,"from","","",65,[[]]],[11,"into","","",65,[[]]],[11,"to_owned","","",65,[[]]],[11,"clone_into","","",65,[[]]],[11,"borrow","","",65,[[]]],[11,"borrow_mut","","",65,[[]]],[11,"try_from","","",65,[[],["result",4]]],[11,"try_into","","",65,[[],["result",4]]],[11,"type_id","","",65,[[],["typeid",3]]],[11,"equivalent","","",65,[[]]],[11,"vzip","","",65,[[]]],[11,"from","","",66,[[]]],[11,"into","","",66,[[]]],[11,"to_owned","","",66,[[]]],[11,"clone_into","","",66,[[]]],[11,"borrow","","",66,[[]]],[11,"borrow_mut","","",66,[[]]],[11,"try_from","","",66,[[],["result",4]]],[11,"try_into","","",66,[[],["result",4]]],[11,"type_id","","",66,[[],["typeid",3]]],[11,"vzip","","",66,[[]]],[11,"from","","",67,[[]]],[11,"into","","",67,[[]]],[11,"to_owned","","",67,[[]]],[11,"clone_into","","",67,[[]]],[11,"borrow","","",67,[[]]],[11,"borrow_mut","","",67,[[]]],[11,"try_from","","",67,[[],["result",4]]],[11,"try_into","","",67,[[],["result",4]]],[11,"type_id","","",67,[[],["typeid",3]]],[11,"vzip","","",67,[[]]],[11,"from","","",68,[[]]],[11,"into","","",68,[[]]],[11,"to_owned","","",68,[[]]],[11,"clone_into","","",68,[[]]],[11,"borrow","","",68,[[]]],[11,"borrow_mut","","",68,[[]]],[11,"try_from","","",68,[[],["result",4]]],[11,"try_into","","",68,[[],["result",4]]],[11,"type_id","","",68,[[],["typeid",3]]],[11,"equivalent","","",68,[[]]],[11,"get_hash","","",68,[[]]],[11,"vzip","","",68,[[]]],[11,"from","","",69,[[]]],[11,"into","","",69,[[]]],[11,"to_owned","","",69,[[]]],[11,"clone_into","","",69,[[]]],[11,"borrow","","",69,[[]]],[11,"borrow_mut","","",69,[[]]],[11,"try_from","","",69,[[],["result",4]]],[11,"try_into","","",69,[[],["result",4]]],[11,"type_id","","",69,[[],["typeid",3]]],[11,"equivalent","","",69,[[]]],[11,"get_hash","","",69,[[]]],[11,"vzip","","",69,[[]]],[11,"from","","",70,[[]]],[11,"into","","",70,[[]]],[11,"to_owned","","",70,[[]]],[11,"clone_into","","",70,[[]]],[11,"borrow","","",70,[[]]],[11,"borrow_mut","","",70,[[]]],[11,"try_from","","",70,[[],["result",4]]],[11,"try_into","","",70,[[],["result",4]]],[11,"type_id","","",70,[[],["typeid",3]]],[11,"vzip","","",70,[[]]],[11,"from","map_model::objects::zone","",71,[[]]],[11,"into","","",71,[[]]],[11,"to_owned","","",71,[[]]],[11,"clone_into","","",71,[[]]],[11,"borrow","","",71,[[]]],[11,"borrow_mut","","",71,[[]]],[11,"try_from","","",71,[[],["result",4]]],[11,"try_into","","",71,[[],["result",4]]],[11,"type_id","","",71,[[],["typeid",3]]],[11,"vzip","","",71,[[]]],[11,"from","","",72,[[]]],[11,"into","","",72,[[]]],[11,"borrow","","",72,[[]]],[11,"borrow_mut","","",72,[[]]],[11,"try_from","","",72,[[],["result",4]]],[11,"try_into","","",72,[[],["result",4]]],[11,"type_id","","",72,[[],["typeid",3]]],[11,"vzip","","",72,[[]]],[11,"from","map_model::osm","",73,[[]]],[11,"into","","",73,[[]]],[11,"to_owned","","",73,[[]]],[11,"clone_into","","",73,[[]]],[11,"borrow","","",73,[[]]],[11,"borrow_mut","","",73,[[]]],[11,"try_from","","",73,[[],["result",4]]],[11,"try_into","","",73,[[],["result",4]]],[11,"type_id","","",73,[[],["typeid",3]]],[11,"equivalent","","",73,[[]]],[11,"vzip","","",73,[[]]],[11,"from","","",74,[[]]],[11,"into","","",74,[[]]],[11,"to_owned","","",74,[[]]],[11,"clone_into","","",74,[[]]],[11,"to_string","","",74,[[],["string",3]]],[11,"borrow","","",74,[[]]],[11,"borrow_mut","","",74,[[]]],[11,"try_from","","",74,[[],["result",4]]],[11,"try_into","","",74,[[],["result",4]]],[11,"type_id","","",74,[[],["typeid",3]]],[11,"equivalent","","",74,[[]]],[11,"get_hash","","",74,[[]]],[11,"vzip","","",74,[[]]],[11,"from","","",75,[[]]],[11,"into","","",75,[[]]],[11,"to_owned","","",75,[[]]],[11,"clone_into","","",75,[[]]],[11,"to_string","","",75,[[],["string",3]]],[11,"borrow","","",75,[[]]],[11,"borrow_mut","","",75,[[]]],[11,"try_from","","",75,[[],["result",4]]],[11,"try_into","","",75,[[],["result",4]]],[11,"type_id","","",75,[[],["typeid",3]]],[11,"equivalent","","",75,[[]]],[11,"get_hash","","",75,[[]]],[11,"vzip","","",75,[[]]],[11,"from","","",76,[[]]],[11,"into","","",76,[[]]],[11,"to_owned","","",76,[[]]],[11,"clone_into","","",76,[[]]],[11,"to_string","","",76,[[],["string",3]]],[11,"borrow","","",76,[[]]],[11,"borrow_mut","","",76,[[]]],[11,"try_from","","",76,[[],["result",4]]],[11,"try_into","","",76,[[],["result",4]]],[11,"type_id","","",76,[[],["typeid",3]]],[11,"equivalent","","",76,[[]]],[11,"get_hash","","",76,[[]]],[11,"vzip","","",76,[[]]],[11,"from","","",77,[[]]],[11,"into","","",77,[[]]],[11,"to_owned","","",77,[[]]],[11,"clone_into","","",77,[[]]],[11,"to_string","","",77,[[],["string",3]]],[11,"borrow","","",77,[[]]],[11,"borrow_mut","","",77,[[]]],[11,"try_from","","",77,[[],["result",4]]],[11,"try_into","","",77,[[],["result",4]]],[11,"type_id","","",77,[[],["typeid",3]]],[11,"equivalent","","",77,[[]]],[11,"get_hash","","",77,[[]]],[11,"vzip","","",77,[[]]],[11,"from","map_model::pathfind::ch","",78,[[]]],[11,"into","","",78,[[]]],[11,"borrow","","",78,[[]]],[11,"borrow_mut","","",78,[[]]],[11,"try_from","","",78,[[],["result",4]]],[11,"try_into","","",78,[[],["result",4]]],[11,"type_id","","",78,[[],["typeid",3]]],[11,"vzip","","",78,[[]]],[11,"from","map_model::pathfind::node_map","",79,[[]]],[11,"into","","",79,[[]]],[11,"borrow","","",79,[[]]],[11,"borrow_mut","","",79,[[]]],[11,"try_from","","",79,[[],["result",4]]],[11,"try_into","","",79,[[],["result",4]]],[11,"type_id","","",79,[[],["typeid",3]]],[11,"vzip","","",79,[[]]],[11,"from","","",80,[[]]],[11,"into","","",80,[[]]],[11,"borrow","","",80,[[]]],[11,"borrow_mut","","",80,[[]]],[11,"try_from","","",80,[[],["result",4]]],[11,"try_into","","",80,[[],["result",4]]],[11,"type_id","","",80,[[],["typeid",3]]],[11,"vzip","","",80,[[]]],[11,"from","map_model::pathfind::pathfinder","",81,[[]]],[11,"into","","",81,[[]]],[11,"borrow","","",81,[[]]],[11,"borrow_mut","","",81,[[]]],[11,"try_from","","",81,[[],["result",4]]],[11,"try_into","","",81,[[],["result",4]]],[11,"type_id","","",81,[[],["typeid",3]]],[11,"vzip","","",81,[[]]],[11,"from","map_model::pathfind::uber_turns","",82,[[]]],[11,"into","","",82,[[]]],[11,"to_owned","","",82,[[]]],[11,"clone_into","","",82,[[]]],[11,"borrow","","",82,[[]]],[11,"borrow_mut","","",82,[[]]],[11,"try_from","","",82,[[],["result",4]]],[11,"try_into","","",82,[[],["result",4]]],[11,"type_id","","",82,[[],["typeid",3]]],[11,"vzip","","",82,[[]]],[11,"from","","",83,[[]]],[11,"into","","",83,[[]]],[11,"to_owned","","",83,[[]]],[11,"clone_into","","",83,[[]]],[11,"borrow","","",83,[[]]],[11,"borrow_mut","","",83,[[]]],[11,"try_from","","",83,[[],["result",4]]],[11,"try_into","","",83,[[],["result",4]]],[11,"type_id","","",83,[[],["typeid",3]]],[11,"vzip","","",83,[[]]],[11,"from","","",84,[[]]],[11,"into","","",84,[[]]],[11,"borrow","","",84,[[]]],[11,"borrow_mut","","",84,[[]]],[11,"try_from","","",84,[[],["result",4]]],[11,"try_into","","",84,[[],["result",4]]],[11,"type_id","","",84,[[],["typeid",3]]],[11,"vzip","","",84,[[]]],[11,"from","map_model::pathfind::vehicles","",85,[[]]],[11,"into","","",85,[[]]],[11,"borrow","","",85,[[]]],[11,"borrow_mut","","",85,[[]]],[11,"try_from","","",85,[[],["result",4]]],[11,"try_into","","",85,[[],["result",4]]],[11,"type_id","","",85,[[],["typeid",3]]],[11,"vzip","","",85,[[]]],[11,"from","","",86,[[]]],[11,"into","","",86,[[]]],[11,"to_owned","","",86,[[]]],[11,"clone_into","","",86,[[]]],[11,"borrow","","",86,[[]]],[11,"borrow_mut","","",86,[[]]],[11,"try_from","","",86,[[],["result",4]]],[11,"try_into","","",86,[[],["result",4]]],[11,"type_id","","",86,[[],["typeid",3]]],[11,"equivalent","","",86,[[]]],[11,"vzip","","",86,[[]]],[11,"from","map_model::pathfind::walking","",87,[[]]],[11,"into","","",87,[[]]],[11,"borrow","","",87,[[]]],[11,"borrow_mut","","",87,[[]]],[11,"try_from","","",87,[[],["result",4]]],[11,"try_into","","",87,[[],["result",4]]],[11,"type_id","","",87,[[],["typeid",3]]],[11,"vzip","","",87,[[]]],[11,"from","map_model::pathfind","",88,[[]]],[11,"into","","",88,[[]]],[11,"to_owned","","",88,[[]]],[11,"clone_into","","",88,[[]]],[11,"borrow","","",88,[[]]],[11,"borrow_mut","","",88,[[]]],[11,"try_from","","",88,[[],["result",4]]],[11,"try_into","","",88,[[],["result",4]]],[11,"type_id","","",88,[[],["typeid",3]]],[11,"equivalent","","",88,[[]]],[11,"get_hash","","",88,[[]]],[11,"vzip","","",88,[[]]],[11,"from","","",89,[[]]],[11,"into","","",89,[[]]],[11,"to_owned","","",89,[[]]],[11,"clone_into","","",89,[[]]],[11,"borrow","","",89,[[]]],[11,"borrow_mut","","",89,[[]]],[11,"try_from","","",89,[[],["result",4]]],[11,"try_into","","",89,[[],["result",4]]],[11,"type_id","","",89,[[],["typeid",3]]],[11,"vzip","","",89,[[]]],[11,"from","","",90,[[]]],[11,"into","","",90,[[]]],[11,"to_owned","","",90,[[]]],[11,"clone_into","","",90,[[]]],[11,"borrow","","",90,[[]]],[11,"borrow_mut","","",90,[[]]],[11,"try_from","","",90,[[],["result",4]]],[11,"try_into","","",90,[[],["result",4]]],[11,"type_id","","",90,[[],["typeid",3]]],[11,"equivalent","","",90,[[]]],[11,"vzip","","",90,[[]]],[11,"from","","",91,[[]]],[11,"into","","",91,[[]]],[11,"to_owned","","",91,[[]]],[11,"clone_into","","",91,[[]]],[11,"to_string","","",91,[[],["string",3]]],[11,"borrow","","",91,[[]]],[11,"borrow_mut","","",91,[[]]],[11,"try_from","","",91,[[],["result",4]]],[11,"try_into","","",91,[[],["result",4]]],[11,"type_id","","",91,[[],["typeid",3]]],[11,"equivalent","","",91,[[]]],[11,"vzip","","",91,[[]]],[11,"from","","",92,[[]]],[11,"into","","",92,[[]]],[11,"borrow","","",92,[[]]],[11,"borrow_mut","","",92,[[]]],[11,"try_from","","",92,[[],["result",4]]],[11,"try_into","","",92,[[],["result",4]]],[11,"type_id","","",92,[[],["typeid",3]]],[11,"vzip","","",92,[[]]],[11,"from","map_model::raw","",93,[[]]],[11,"into","","",93,[[]]],[11,"borrow","","",93,[[]]],[11,"borrow_mut","","",93,[[]]],[11,"try_from","","",93,[[],["result",4]]],[11,"try_into","","",93,[[],["result",4]]],[11,"type_id","","",93,[[],["typeid",3]]],[11,"vzip","","",93,[[]]],[11,"from","","",94,[[]]],[11,"into","","",94,[[]]],[11,"to_owned","","",94,[[]]],[11,"clone_into","","",94,[[]]],[11,"to_string","","",94,[[],["string",3]]],[11,"borrow","","",94,[[]]],[11,"borrow_mut","","",94,[[]]],[11,"try_from","","",94,[[],["result",4]]],[11,"try_into","","",94,[[],["result",4]]],[11,"type_id","","",94,[[],["typeid",3]]],[11,"equivalent","","",94,[[]]],[11,"get_hash","","",94,[[]]],[11,"vzip","","",94,[[]]],[11,"from","","",95,[[]]],[11,"into","","",95,[[]]],[11,"to_owned","","",95,[[]]],[11,"clone_into","","",95,[[]]],[11,"borrow","","",95,[[]]],[11,"borrow_mut","","",95,[[]]],[11,"try_from","","",95,[[],["result",4]]],[11,"try_into","","",95,[[],["result",4]]],[11,"type_id","","",95,[[],["typeid",3]]],[11,"vzip","","",95,[[]]],[11,"from","","",96,[[]]],[11,"into","","",96,[[]]],[11,"to_owned","","",96,[[]]],[11,"clone_into","","",96,[[]]],[11,"borrow","","",96,[[]]],[11,"borrow_mut","","",96,[[]]],[11,"try_from","","",96,[[],["result",4]]],[11,"try_into","","",96,[[],["result",4]]],[11,"type_id","","",96,[[],["typeid",3]]],[11,"vzip","","",96,[[]]],[11,"from","","",97,[[]]],[11,"into","","",97,[[]]],[11,"to_owned","","",97,[[]]],[11,"clone_into","","",97,[[]]],[11,"borrow","","",97,[[]]],[11,"borrow_mut","","",97,[[]]],[11,"try_from","","",97,[[],["result",4]]],[11,"try_into","","",97,[[],["result",4]]],[11,"type_id","","",97,[[],["typeid",3]]],[11,"vzip","","",97,[[]]],[11,"from","","",98,[[]]],[11,"into","","",98,[[]]],[11,"to_owned","","",98,[[]]],[11,"clone_into","","",98,[[]]],[11,"borrow","","",98,[[]]],[11,"borrow_mut","","",98,[[]]],[11,"try_from","","",98,[[],["result",4]]],[11,"try_into","","",98,[[],["result",4]]],[11,"type_id","","",98,[[],["typeid",3]]],[11,"vzip","","",98,[[]]],[11,"from","","",99,[[]]],[11,"into","","",99,[[]]],[11,"to_owned","","",99,[[]]],[11,"clone_into","","",99,[[]]],[11,"borrow","","",99,[[]]],[11,"borrow_mut","","",99,[[]]],[11,"try_from","","",99,[[],["result",4]]],[11,"try_into","","",99,[[],["result",4]]],[11,"type_id","","",99,[[],["typeid",3]]],[11,"vzip","","",99,[[]]],[11,"from","","",100,[[]]],[11,"into","","",100,[[]]],[11,"to_owned","","",100,[[]]],[11,"clone_into","","",100,[[]]],[11,"borrow","","",100,[[]]],[11,"borrow_mut","","",100,[[]]],[11,"try_from","","",100,[[],["result",4]]],[11,"try_into","","",100,[[],["result",4]]],[11,"type_id","","",100,[[],["typeid",3]]],[11,"equivalent","","",100,[[]]],[11,"get_hash","","",100,[[]]],[11,"vzip","","",100,[[]]],[11,"from","","",101,[[]]],[11,"into","","",101,[[]]],[11,"to_owned","","",101,[[]]],[11,"clone_into","","",101,[[]]],[11,"borrow","","",101,[[]]],[11,"borrow_mut","","",101,[[]]],[11,"try_from","","",101,[[],["result",4]]],[11,"try_into","","",101,[[],["result",4]]],[11,"type_id","","",101,[[],["typeid",3]]],[11,"equivalent","","",101,[[]]],[11,"get_hash","","",101,[[]]],[11,"vzip","","",101,[[]]],[11,"from","","",102,[[]]],[11,"into","","",102,[[]]],[11,"borrow","","",102,[[]]],[11,"borrow_mut","","",102,[[]]],[11,"try_from","","",102,[[],["result",4]]],[11,"try_into","","",102,[[],["result",4]]],[11,"type_id","","",102,[[],["typeid",3]]],[11,"vzip","","",102,[[]]],[11,"from","","",103,[[]]],[11,"into","","",103,[[]]],[11,"borrow","","",103,[[]]],[11,"borrow_mut","","",103,[[]]],[11,"try_from","","",103,[[],["result",4]]],[11,"try_into","","",103,[[],["result",4]]],[11,"type_id","","",103,[[],["typeid",3]]],[11,"vzip","","",103,[[]]],[11,"from","map_model::traversable","",104,[[]]],[11,"into","","",104,[[]]],[11,"to_owned","","",104,[[]]],[11,"clone_into","","",104,[[]]],[11,"to_string","","",104,[[],["string",3]]],[11,"borrow","","",104,[[]]],[11,"borrow_mut","","",104,[[]]],[11,"try_from","","",104,[[],["result",4]]],[11,"try_into","","",104,[[],["result",4]]],[11,"type_id","","",104,[[],["typeid",3]]],[11,"equivalent","","",104,[[]]],[11,"vzip","","",104,[[]]],[11,"from","","",105,[[]]],[11,"into","","",105,[[]]],[11,"to_owned","","",105,[[]]],[11,"clone_into","","",105,[[]]],[11,"to_string","","",105,[[],["string",3]]],[11,"borrow","","",105,[[]]],[11,"borrow_mut","","",105,[[]]],[11,"try_from","","",105,[[],["result",4]]],[11,"try_into","","",105,[[],["result",4]]],[11,"type_id","","",105,[[],["typeid",3]]],[11,"equivalent","","",105,[[]]],[11,"get_hash","","",105,[[]]],[11,"vzip","","",105,[[]]],[11,"from","map_model","",106,[[]]],[11,"into","","",106,[[]]],[11,"borrow","","",106,[[]]],[11,"borrow_mut","","",106,[[]]],[11,"try_from","","",106,[[],["result",4]]],[11,"try_into","","",106,[[],["result",4]]],[11,"type_id","","",106,[[],["typeid",3]]],[11,"vzip","","",106,[[]]],[11,"clone","map_model::connectivity::walking","",1,[[],["walkingoptions",3]]],[11,"clone","map_model::edits::perma","",9,[[],["permanentmapedits",3]]],[11,"clone","","",10,[[],["permanenteditintersection",4]]],[11,"clone","","",12,[[],["permanenteditcmd",4]]],[11,"clone","map_model::edits","",16,[[],["mapedits",3]]],[11,"clone","","",17,[[],["editintersection",4]]],[11,"clone","","",18,[[],["editroad",3]]],[11,"clone","","",19,[[],["editcmd",4]]],[11,"clone","map_model::map","",30,[[],["mapconfig",3]]],[11,"clone","","",31,[[],["drivingside",4]]],[11,"clone","map_model::objects::area","",32,[[],["areaid",3]]],[11,"clone","","",33,[[],["areatype",4]]],[11,"clone","map_model::objects::building","",35,[[],["buildingid",3]]],[11,"clone","","",37,[[],["amenity",3]]],[11,"clone","","",38,[[],["offstreetparking",4]]],[11,"clone","","",39,[[],["buildingtype",4]]],[11,"clone","","",41,[[],["nameperlanguage",3]]],[11,"clone","","",42,[[],["amenitytype",4]]],[11,"clone","map_model::objects::bus_stop","",43,[[],["busstopid",3]]],[11,"clone","","",44,[[],["busrouteid",3]]],[11,"clone","","",45,[[],["busstop",3]]],[11,"clone","map_model::objects::intersection","",47,[[],["intersectionid",3]]],[11,"clone","","",48,[[],["intersectiontype",4]]],[11,"clone","map_model::objects::lane","",50,[[],["laneid",3]]],[11,"clone","","",51,[[],["lanetype",4]]],[11,"clone","map_model::objects::parking_lot","",53,[[],["parkinglotid",3]]],[11,"clone","map_model::objects::road","",55,[[],["roadid",3]]],[11,"clone","","",56,[[],["direction",4]]],[11,"clone","","",57,[[],["directedroadid",3]]],[11,"clone","map_model::objects::stop_signs","",59,[[],["controlstopsign",3]]],[11,"clone","","",60,[[],["roadwithstopsign",3]]],[11,"clone","map_model::objects::traffic_signals","",61,[[],["controltrafficsignal",3]]],[11,"clone","","",62,[[],["stage",3]]],[11,"clone","","",63,[[],["stagetype",4]]],[11,"clone","map_model::objects::turn","",64,[[],["turnid",3]]],[11,"clone","","",65,[[],["turntype",4]]],[11,"clone","","",66,[[],["turnpriority",4]]],[11,"clone","","",67,[[],["turn",3]]],[11,"clone","","",68,[[],["movementid",3]]],[11,"clone","","",69,[[],["compressedmovementid",3]]],[11,"clone","","",70,[[],["movement",3]]],[11,"clone","map_model::objects::zone","",71,[[],["accessrestrictions",3]]],[11,"clone","map_model::osm","",73,[[],["roadrank",4]]],[11,"clone","","",74,[[],["nodeid",3]]],[11,"clone","","",75,[[],["wayid",3]]],[11,"clone","","",76,[[],["relationid",3]]],[11,"clone","","",77,[[],["osmid",4]]],[11,"clone","map_model::pathfind::uber_turns","",82,[[],["intersectioncluster",3]]],[11,"clone","","",83,[[],["uberturn",3]]],[11,"clone","map_model::pathfind::vehicles","",86,[[],["node",4]]],[11,"clone","map_model::connectivity","",3,[[],["walkingnode",4]]],[11,"clone","map_model::pathfind","",88,[[],["pathstep",4]]],[11,"clone","","",89,[[],["path",3]]],[11,"clone","","",90,[[]]],[11,"clone","","",91,[[],["pathrequest",3]]],[11,"clone","map_model::raw","",94,[[],["originalroad",3]]],[11,"clone","","",95,[[],["rawroad",3]]],[11,"clone","","",96,[[],["rawintersection",3]]],[11,"clone","","",97,[[],["rawbuilding",3]]],[11,"clone","","",98,[[],["rawarea",3]]],[11,"clone","","",99,[[],["rawparkinglot",3]]],[11,"clone","","",100,[[],["restrictiontype",4]]],[11,"clone","","",101,[[],["turnrestriction",3]]],[11,"clone","map_model::traversable","",104,[[],["position",3]]],[11,"clone","","",105,[[],["traversable",4]]],[11,"default","map_model::edits","",16,[[],["mapedits",3]]],[11,"cmp","map_model::connectivity::walking","",2,[[["item",3]],["ordering",4]]],[11,"cmp","map_model::objects::area","",32,[[["areaid",3]],["ordering",4]]],[11,"cmp","map_model::objects::building","",35,[[["buildingid",3]],["ordering",4]]],[11,"cmp","","",41,[[["nameperlanguage",3]],["ordering",4]]],[11,"cmp","","",42,[[["amenitytype",4]],["ordering",4]]],[11,"cmp","map_model::objects::bus_stop","",43,[[["busstopid",3]],["ordering",4]]],[11,"cmp","","",44,[[["busrouteid",3]],["ordering",4]]],[11,"cmp","map_model::objects::intersection","",47,[[["intersectionid",3]],["ordering",4]]],[11,"cmp","map_model::objects::lane","",50,[[["laneid",3]],["ordering",4]]],[11,"cmp","","",51,[[["lanetype",4]],["ordering",4]]],[11,"cmp","map_model::objects::parking_lot","",53,[[["parkinglotid",3]],["ordering",4]]],[11,"cmp","map_model::objects::road","",55,[[["roadid",3]],["ordering",4]]],[11,"cmp","","",56,[[["direction",4]],["ordering",4]]],[11,"cmp","","",57,[[["directedroadid",3]],["ordering",4]]],[11,"cmp","map_model::objects::turn","",64,[[["turnid",3]],["ordering",4]]],[11,"cmp","","",65,[[["turntype",4]],["ordering",4]]],[11,"cmp","","",68,[[["movementid",3]],["ordering",4]]],[11,"cmp","","",69,[[["compressedmovementid",3]],["ordering",4]]],[11,"cmp","map_model::osm","",73,[[["roadrank",4]],["ordering",4]]],[11,"cmp","","",74,[[["nodeid",3]],["ordering",4]]],[11,"cmp","","",75,[[["wayid",3]],["ordering",4]]],[11,"cmp","","",76,[[["relationid",3]],["ordering",4]]],[11,"cmp","","",77,[[["osmid",4]],["ordering",4]]],[11,"cmp","map_model::pathfind::vehicles","",86,[[["node",4]],["ordering",4]]],[11,"cmp","map_model::connectivity","",3,[[["walkingnode",4]],["ordering",4]]],[11,"cmp","map_model::pathfind","",88,[[["pathstep",4]],["ordering",4]]],[11,"cmp","","",90,[[["pathconstraints",4]],["ordering",4]]],[11,"cmp","map_model::raw","",94,[[["originalroad",3]],["ordering",4]]],[11,"cmp","","",100,[[["restrictiontype",4]],["ordering",4]]],[11,"cmp","","",101,[[["turnrestriction",3]],["ordering",4]]],[11,"cmp","map_model::traversable","",104,[[["position",3]],["ordering",4]]],[11,"cmp","","",105,[[["traversable",4]],["ordering",4]]],[11,"eq","map_model::connectivity::walking","",2,[[["item",3]]]],[11,"ne","","",2,[[["item",3]]]],[11,"eq","map_model::edits","",16,[[["mapedits",3]]]],[11,"ne","","",16,[[["mapedits",3]]]],[11,"eq","","",17,[[["editintersection",4]]]],[11,"ne","","",17,[[["editintersection",4]]]],[11,"eq","","",18,[[["editroad",3]]]],[11,"ne","","",18,[[["editroad",3]]]],[11,"eq","","",19,[[["editcmd",4]]]],[11,"ne","","",19,[[["editcmd",4]]]],[11,"eq","map_model::make::initial::lane_specs","",25,[[["lanespec",3]]]],[11,"ne","","",25,[[["lanespec",3]]]],[11,"eq","map_model::map","",31,[[["drivingside",4]]]],[11,"eq","map_model::objects::area","",32,[[["areaid",3]]]],[11,"ne","","",32,[[["areaid",3]]]],[11,"eq","","",33,[[["areatype",4]]]],[11,"eq","map_model::objects::building","",35,[[["buildingid",3]]]],[11,"ne","","",35,[[["buildingid",3]]]],[11,"eq","","",38,[[["offstreetparking",4]]]],[11,"ne","","",38,[[["offstreetparking",4]]]],[11,"eq","","",41,[[["nameperlanguage",3]]]],[11,"ne","","",41,[[["nameperlanguage",3]]]],[11,"eq","","",42,[[["amenitytype",4]]]],[11,"eq","map_model::objects::bus_stop","",43,[[["busstopid",3]]]],[11,"ne","","",43,[[["busstopid",3]]]],[11,"eq","","",44,[[["busrouteid",3]]]],[11,"ne","","",44,[[["busrouteid",3]]]],[11,"eq","","",45,[[["busstop",3]]]],[11,"ne","","",45,[[["busstop",3]]]],[11,"eq","map_model::objects::intersection","",47,[[["intersectionid",3]]]],[11,"ne","","",47,[[["intersectionid",3]]]],[11,"eq","","",48,[[["intersectiontype",4]]]],[11,"eq","map_model::objects::lane","",50,[[["laneid",3]]]],[11,"ne","","",50,[[["laneid",3]]]],[11,"eq","","",51,[[["lanetype",4]]]],[11,"eq","map_model::objects::parking_lot","",53,[[["parkinglotid",3]]]],[11,"ne","","",53,[[["parkinglotid",3]]]],[11,"eq","map_model::objects::road","",55,[[["roadid",3]]]],[11,"ne","","",55,[[["roadid",3]]]],[11,"eq","","",56,[[["direction",4]]]],[11,"eq","","",57,[[["directedroadid",3]]]],[11,"ne","","",57,[[["directedroadid",3]]]],[11,"eq","map_model::objects::stop_signs","",59,[[["controlstopsign",3]]]],[11,"ne","","",59,[[["controlstopsign",3]]]],[11,"eq","","",60,[[["roadwithstopsign",3]]]],[11,"ne","","",60,[[["roadwithstopsign",3]]]],[11,"eq","map_model::objects::traffic_signals","",61,[[["controltrafficsignal",3]]]],[11,"ne","","",61,[[["controltrafficsignal",3]]]],[11,"eq","","",62,[[["stage",3]]]],[11,"ne","","",62,[[["stage",3]]]],[11,"eq","","",63,[[["stagetype",4]]]],[11,"ne","","",63,[[["stagetype",4]]]],[11,"eq","map_model::objects::turn","",64,[[["turnid",3]]]],[11,"ne","","",64,[[["turnid",3]]]],[11,"eq","","",65,[[["turntype",4]]]],[11,"eq","","",66,[[["turnpriority",4]]]],[11,"eq","","",67,[[["turn",3]]]],[11,"ne","","",67,[[["turn",3]]]],[11,"eq","","",68,[[["movementid",3]]]],[11,"ne","","",68,[[["movementid",3]]]],[11,"eq","","",69,[[["compressedmovementid",3]]]],[11,"ne","","",69,[[["compressedmovementid",3]]]],[11,"eq","","",70,[[["movement",3]]]],[11,"ne","","",70,[[["movement",3]]]],[11,"eq","map_model::objects::zone","",71,[[["accessrestrictions",3]]]],[11,"ne","","",71,[[["accessrestrictions",3]]]],[11,"eq","","",72,[[["zone",3]]]],[11,"ne","","",72,[[["zone",3]]]],[11,"eq","map_model::osm","",73,[[["roadrank",4]]]],[11,"eq","","",74,[[["nodeid",3]]]],[11,"ne","","",74,[[["nodeid",3]]]],[11,"eq","","",75,[[["wayid",3]]]],[11,"ne","","",75,[[["wayid",3]]]],[11,"eq","","",76,[[["relationid",3]]]],[11,"ne","","",76,[[["relationid",3]]]],[11,"eq","","",77,[[["osmid",4]]]],[11,"ne","","",77,[[["osmid",4]]]],[11,"eq","map_model::pathfind::uber_turns","",83,[[["uberturn",3]]]],[11,"ne","","",83,[[["uberturn",3]]]],[11,"eq","map_model::pathfind::vehicles","",86,[[["node",4]]]],[11,"ne","","",86,[[["node",4]]]],[11,"eq","map_model::connectivity","",3,[[["walkingnode",4]]]],[11,"ne","","",3,[[["walkingnode",4]]]],[11,"eq","map_model::pathfind","",88,[[["pathstep",4]]]],[11,"ne","","",88,[[["pathstep",4]]]],[11,"eq","","",89,[[["path",3]]]],[11,"ne","","",89,[[["path",3]]]],[11,"eq","","",90,[[]]],[11,"eq","","",90,[[["enumset",3]]]],[11,"eq","","",91,[[["pathrequest",3]]]],[11,"ne","","",91,[[["pathrequest",3]]]],[11,"eq","","",92,[[["routingparams",3]]]],[11,"ne","","",92,[[["routingparams",3]]]],[11,"eq","map_model::raw","",94,[[["originalroad",3]]]],[11,"ne","","",94,[[["originalroad",3]]]],[11,"eq","","",95,[[["rawroad",3]]]],[11,"ne","","",95,[[["rawroad",3]]]],[11,"eq","","",96,[[["rawintersection",3]]]],[11,"ne","","",96,[[["rawintersection",3]]]],[11,"eq","","",100,[[["restrictiontype",4]]]],[11,"eq","","",101,[[["turnrestriction",3]]]],[11,"ne","","",101,[[["turnrestriction",3]]]],[11,"eq","map_model::traversable","",104,[[["position",3]]]],[11,"ne","","",104,[[["position",3]]]],[11,"eq","","",105,[[["traversable",4]]]],[11,"ne","","",105,[[["traversable",4]]]],[11,"partial_cmp","map_model::connectivity::walking","",2,[[["item",3]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::objects::area","",32,[[["areaid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",32,[[["areaid",3]]]],[11,"le","","",32,[[["areaid",3]]]],[11,"gt","","",32,[[["areaid",3]]]],[11,"ge","","",32,[[["areaid",3]]]],[11,"partial_cmp","map_model::objects::building","",35,[[["buildingid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",35,[[["buildingid",3]]]],[11,"le","","",35,[[["buildingid",3]]]],[11,"gt","","",35,[[["buildingid",3]]]],[11,"ge","","",35,[[["buildingid",3]]]],[11,"partial_cmp","","",41,[[["nameperlanguage",3]],[["option",4],["ordering",4]]]],[11,"lt","","",41,[[["nameperlanguage",3]]]],[11,"le","","",41,[[["nameperlanguage",3]]]],[11,"gt","","",41,[[["nameperlanguage",3]]]],[11,"ge","","",41,[[["nameperlanguage",3]]]],[11,"partial_cmp","","",42,[[["amenitytype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::objects::bus_stop","",43,[[["busstopid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",43,[[["busstopid",3]]]],[11,"le","","",43,[[["busstopid",3]]]],[11,"gt","","",43,[[["busstopid",3]]]],[11,"ge","","",43,[[["busstopid",3]]]],[11,"partial_cmp","","",44,[[["busrouteid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",44,[[["busrouteid",3]]]],[11,"le","","",44,[[["busrouteid",3]]]],[11,"gt","","",44,[[["busrouteid",3]]]],[11,"ge","","",44,[[["busrouteid",3]]]],[11,"partial_cmp","map_model::objects::intersection","",47,[[["intersectionid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",47,[[["intersectionid",3]]]],[11,"le","","",47,[[["intersectionid",3]]]],[11,"gt","","",47,[[["intersectionid",3]]]],[11,"ge","","",47,[[["intersectionid",3]]]],[11,"partial_cmp","map_model::objects::lane","",50,[[["laneid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",50,[[["laneid",3]]]],[11,"le","","",50,[[["laneid",3]]]],[11,"gt","","",50,[[["laneid",3]]]],[11,"ge","","",50,[[["laneid",3]]]],[11,"partial_cmp","","",51,[[["lanetype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::objects::parking_lot","",53,[[["parkinglotid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",53,[[["parkinglotid",3]]]],[11,"le","","",53,[[["parkinglotid",3]]]],[11,"gt","","",53,[[["parkinglotid",3]]]],[11,"ge","","",53,[[["parkinglotid",3]]]],[11,"partial_cmp","map_model::objects::road","",55,[[["roadid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",55,[[["roadid",3]]]],[11,"le","","",55,[[["roadid",3]]]],[11,"gt","","",55,[[["roadid",3]]]],[11,"ge","","",55,[[["roadid",3]]]],[11,"partial_cmp","","",56,[[["direction",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",57,[[["directedroadid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",57,[[["directedroadid",3]]]],[11,"le","","",57,[[["directedroadid",3]]]],[11,"gt","","",57,[[["directedroadid",3]]]],[11,"ge","","",57,[[["directedroadid",3]]]],[11,"partial_cmp","map_model::objects::turn","",64,[[["turnid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",64,[[["turnid",3]]]],[11,"le","","",64,[[["turnid",3]]]],[11,"gt","","",64,[[["turnid",3]]]],[11,"ge","","",64,[[["turnid",3]]]],[11,"partial_cmp","","",65,[[["turntype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",66,[[["turnpriority",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",68,[[["movementid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",68,[[["movementid",3]]]],[11,"le","","",68,[[["movementid",3]]]],[11,"gt","","",68,[[["movementid",3]]]],[11,"ge","","",68,[[["movementid",3]]]],[11,"partial_cmp","","",69,[[["compressedmovementid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",69,[[["compressedmovementid",3]]]],[11,"le","","",69,[[["compressedmovementid",3]]]],[11,"gt","","",69,[[["compressedmovementid",3]]]],[11,"ge","","",69,[[["compressedmovementid",3]]]],[11,"partial_cmp","map_model::osm","",73,[[["roadrank",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",74,[[["nodeid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",74,[[["nodeid",3]]]],[11,"le","","",74,[[["nodeid",3]]]],[11,"gt","","",74,[[["nodeid",3]]]],[11,"ge","","",74,[[["nodeid",3]]]],[11,"partial_cmp","","",75,[[["wayid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",75,[[["wayid",3]]]],[11,"le","","",75,[[["wayid",3]]]],[11,"gt","","",75,[[["wayid",3]]]],[11,"ge","","",75,[[["wayid",3]]]],[11,"partial_cmp","","",76,[[["relationid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",76,[[["relationid",3]]]],[11,"le","","",76,[[["relationid",3]]]],[11,"gt","","",76,[[["relationid",3]]]],[11,"ge","","",76,[[["relationid",3]]]],[11,"partial_cmp","","",77,[[["osmid",4]],[["option",4],["ordering",4]]]],[11,"lt","","",77,[[["osmid",4]]]],[11,"le","","",77,[[["osmid",4]]]],[11,"gt","","",77,[[["osmid",4]]]],[11,"ge","","",77,[[["osmid",4]]]],[11,"partial_cmp","map_model::pathfind::vehicles","",86,[[["node",4]],[["option",4],["ordering",4]]]],[11,"lt","","",86,[[["node",4]]]],[11,"le","","",86,[[["node",4]]]],[11,"gt","","",86,[[["node",4]]]],[11,"ge","","",86,[[["node",4]]]],[11,"partial_cmp","map_model::connectivity","",3,[[["walkingnode",4]],[["option",4],["ordering",4]]]],[11,"lt","","",3,[[["walkingnode",4]]]],[11,"le","","",3,[[["walkingnode",4]]]],[11,"gt","","",3,[[["walkingnode",4]]]],[11,"ge","","",3,[[["walkingnode",4]]]],[11,"partial_cmp","map_model::pathfind","",88,[[["pathstep",4]],[["option",4],["ordering",4]]]],[11,"lt","","",88,[[["pathstep",4]]]],[11,"le","","",88,[[["pathstep",4]]]],[11,"gt","","",88,[[["pathstep",4]]]],[11,"ge","","",88,[[["pathstep",4]]]],[11,"partial_cmp","","",90,[[["pathconstraints",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::raw","",94,[[["originalroad",3]],[["option",4],["ordering",4]]]],[11,"lt","","",94,[[["originalroad",3]]]],[11,"le","","",94,[[["originalroad",3]]]],[11,"gt","","",94,[[["originalroad",3]]]],[11,"ge","","",94,[[["originalroad",3]]]],[11,"partial_cmp","","",100,[[["restrictiontype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",101,[[["turnrestriction",3]],[["option",4],["ordering",4]]]],[11,"lt","","",101,[[["turnrestriction",3]]]],[11,"le","","",101,[[["turnrestriction",3]]]],[11,"gt","","",101,[[["turnrestriction",3]]]],[11,"ge","","",101,[[["turnrestriction",3]]]],[11,"partial_cmp","map_model::traversable","",104,[[["position",3]],[["option",4],["ordering",4]]]],[11,"lt","","",104,[[["position",3]]]],[11,"le","","",104,[[["position",3]]]],[11,"gt","","",104,[[["position",3]]]],[11,"ge","","",104,[[["position",3]]]],[11,"partial_cmp","","",105,[[["traversable",4]],[["option",4],["ordering",4]]]],[11,"lt","","",105,[[["traversable",4]]]],[11,"le","","",105,[[["traversable",4]]]],[11,"gt","","",105,[[["traversable",4]]]],[11,"ge","","",105,[[["traversable",4]]]],[11,"fmt","map_model::edits::compat","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","","",6,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::edits","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",17,[[["formatter",3]],["result",6]]],[11,"fmt","","",18,[[["formatter",3]],["result",6]]],[11,"fmt","","",19,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::map","",30,[[["formatter",3]],["result",6]]],[11,"fmt","","",31,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::area","",32,[[["formatter",3]],["result",6]]],[11,"fmt","","",33,[[["formatter",3]],["result",6]]],[11,"fmt","","",34,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::building","",35,[[["formatter",3]],["result",6]]],[11,"fmt","","",36,[[["formatter",3]],["result",6]]],[11,"fmt","","",37,[[["formatter",3]],["result",6]]],[11,"fmt","","",38,[[["formatter",3]],["result",6]]],[11,"fmt","","",39,[[["formatter",3]],["result",6]]],[11,"fmt","","",41,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::bus_stop","",43,[[["formatter",3]],["result",6]]],[11,"fmt","","",44,[[["formatter",3]],["result",6]]],[11,"fmt","","",45,[[["formatter",3]],["result",6]]],[11,"fmt","","",46,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::intersection","",47,[[["formatter",3]],["result",6]]],[11,"fmt","","",48,[[["formatter",3]],["result",6]]],[11,"fmt","","",49,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::lane","",50,[[["formatter",3]],["result",6]]],[11,"fmt","","",51,[[["formatter",3]],["result",6]]],[11,"fmt","","",52,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::parking_lot","",53,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::road","",55,[[["formatter",3]],["result",6]]],[11,"fmt","","",56,[[["formatter",3]],["result",6]]],[11,"fmt","","",57,[[["formatter",3]],["result",6]]],[11,"fmt","","",58,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::stop_signs","",59,[[["formatter",3]],["result",6]]],[11,"fmt","","",60,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::traffic_signals","",61,[[["formatter",3]],["result",6]]],[11,"fmt","","",62,[[["formatter",3]],["result",6]]],[11,"fmt","","",63,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::turn","",64,[[["formatter",3]],["result",6]]],[11,"fmt","","",65,[[["formatter",3]],["result",6]]],[11,"fmt","","",66,[[["formatter",3]],["result",6]]],[11,"fmt","","",67,[[["formatter",3]],["result",6]]],[11,"fmt","","",68,[[["formatter",3]],["result",6]]],[11,"fmt","","",69,[[["formatter",3]],["result",6]]],[11,"fmt","","",70,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::zone","",71,[[["formatter",3]],["result",6]]],[11,"fmt","","",72,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::osm","",73,[[["formatter",3]],["result",6]]],[11,"fmt","","",74,[[["formatter",3]],["result",6]]],[11,"fmt","","",75,[[["formatter",3]],["result",6]]],[11,"fmt","","",76,[[["formatter",3]],["result",6]]],[11,"fmt","","",77,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind::uber_turns","",83,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind::vehicles","",86,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::connectivity","",3,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind","",88,[[["formatter",3]],["result",6]]],[11,"fmt","","",89,[[["formatter",3]],["result",6]]],[11,"fmt","","",90,[[["formatter",3]],["result",6]]],[11,"fmt","","",91,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::raw","",93,[[["formatter",3]],["result",6]]],[11,"fmt","","",94,[[["formatter",3]],["result",6]]],[11,"fmt","","",95,[[["formatter",3]],["result",6]]],[11,"fmt","","",96,[[["formatter",3]],["result",6]]],[11,"fmt","","",97,[[["formatter",3]],["result",6]]],[11,"fmt","","",98,[[["formatter",3]],["result",6]]],[11,"fmt","","",99,[[["formatter",3]],["result",6]]],[11,"fmt","","",100,[[["formatter",3]],["result",6]]],[11,"fmt","","",101,[[["formatter",3]],["result",6]]],[11,"fmt","","",102,[[["formatter",3]],["result",6]]],[11,"fmt","","",103,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::traversable","",104,[[["formatter",3]],["result",6]]],[11,"fmt","","",105,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::area","",32,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::building","",35,[[["formatter",3]],["result",6]]],[11,"fmt","","",42,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::bus_stop","",43,[[["formatter",3]],["result",6]]],[11,"fmt","","",44,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::intersection","",47,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::lane","",50,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::parking_lot","",53,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::road","",55,[[["formatter",3]],["result",6]]],[11,"fmt","","",56,[[["formatter",3]],["result",6]]],[11,"fmt","","",57,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::turn","",64,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::osm","",74,[[["formatter",3]],["result",6]]],[11,"fmt","","",75,[[["formatter",3]],["result",6]]],[11,"fmt","","",76,[[["formatter",3]],["result",6]]],[11,"fmt","","",77,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind","",91,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::raw","",94,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::traversable","",104,[[["formatter",3]],["result",6]]],[11,"fmt","","",105,[[["formatter",3]],["result",6]]],[11,"sub","map_model::pathfind","",90,[[]]],[11,"not","","",90,[[]]],[11,"bitand","","",90,[[]]],[11,"bitor","","",90,[[]]],[11,"bitxor","","",90,[[]]],[11,"hash","map_model::objects::area","",32,[[]]],[11,"hash","","",33,[[]]],[11,"hash","map_model::objects::building","",35,[[]]],[11,"hash","map_model::objects::bus_stop","",43,[[]]],[11,"hash","","",44,[[]]],[11,"hash","map_model::objects::intersection","",47,[[]]],[11,"hash","","",48,[[]]],[11,"hash","map_model::objects::lane","",50,[[]]],[11,"hash","","",51,[[]]],[11,"hash","map_model::objects::parking_lot","",53,[[]]],[11,"hash","map_model::objects::road","",55,[[]]],[11,"hash","","",56,[[]]],[11,"hash","","",57,[[]]],[11,"hash","map_model::objects::turn","",64,[[]]],[11,"hash","","",68,[[]]],[11,"hash","","",69,[[]]],[11,"hash","map_model::osm","",74,[[]]],[11,"hash","","",75,[[]]],[11,"hash","","",76,[[]]],[11,"hash","","",77,[[]]],[11,"hash","map_model::connectivity","",3,[[]]],[11,"hash","map_model::pathfind","",88,[[]]],[11,"hash","map_model::raw","",94,[[]]],[11,"hash","","",100,[[]]],[11,"hash","","",101,[[]]],[11,"hash","map_model::traversable","",105,[[]]],[11,"serialize","map_model::city","",0,[[],["result",4]]],[11,"serialize","map_model::edits::perma","",9,[[],["result",4]]],[11,"serialize","","",10,[[],["result",4]]],[11,"serialize","","",12,[[],["result",4]]],[11,"serialize","map_model::edits","",18,[[],["result",4]]],[11,"serialize","map_model::map","",30,[[],["result",4]]],[11,"serialize","","",31,[[],["result",4]]],[11,"serialize","map_model::objects::area","",32,[[],["result",4]]],[11,"serialize","","",33,[[],["result",4]]],[11,"serialize","","",34,[[],["result",4]]],[11,"serialize","map_model::objects::building","",35,[[],["result",4]]],[11,"serialize","","",36,[[],["result",4]]],[11,"serialize","","",37,[[],["result",4]]],[11,"serialize","","",38,[[],["result",4]]],[11,"serialize","","",39,[[],["result",4]]],[11,"serialize","","",41,[[],["result",4]]],[11,"serialize","map_model::objects::bus_stop","",43,[[],["result",4]]],[11,"serialize","","",44,[[],["result",4]]],[11,"serialize","","",45,[[],["result",4]]],[11,"serialize","","",46,[[],["result",4]]],[11,"serialize","map_model::objects::intersection","",47,[[],["result",4]]],[11,"serialize","","",48,[[],["result",4]]],[11,"serialize","","",49,[[],["result",4]]],[11,"serialize","map_model::objects::lane","",50,[[],["result",4]]],[11,"serialize","","",51,[[],["result",4]]],[11,"serialize","","",52,[[],["result",4]]],[11,"serialize","map_model::objects::parking_lot","",53,[[],["result",4]]],[11,"serialize","","",54,[[],["result",4]]],[11,"serialize","map_model::objects::road","",55,[[],["result",4]]],[11,"serialize","","",56,[[],["result",4]]],[11,"serialize","","",57,[[],["result",4]]],[11,"serialize","","",58,[[],["result",4]]],[11,"serialize","map_model::objects::stop_signs","",59,[[],["result",4]]],[11,"serialize","","",60,[[],["result",4]]],[11,"serialize","map_model::objects::traffic_signals","",61,[[],["result",4]]],[11,"serialize","","",62,[[],["result",4]]],[11,"serialize","","",63,[[],["result",4]]],[11,"serialize","map_model::objects::turn","",64,[[],["result",4]]],[11,"serialize","","",65,[[],["result",4]]],[11,"serialize","","",66,[[],["result",4]]],[11,"serialize","","",67,[[],["result",4]]],[11,"serialize","","",68,[[],["result",4]]],[11,"serialize","","",69,[[],["result",4]]],[11,"serialize","","",70,[[],["result",4]]],[11,"serialize","map_model::objects::zone","",71,[[],["result",4]]],[11,"serialize","","",72,[[],["result",4]]],[11,"serialize","map_model::osm","",74,[[],["result",4]]],[11,"serialize","","",75,[[],["result",4]]],[11,"serialize","","",76,[[],["result",4]]],[11,"serialize","","",77,[[],["result",4]]],[11,"serialize","map_model::pathfind::ch","",78,[[],["result",4]]],[11,"serialize","map_model::pathfind::node_map","",79,[[],["result",4]]],[11,"serialize","map_model::pathfind::pathfinder","",81,[[],["result",4]]],[11,"serialize","map_model::pathfind::uber_turns","",82,[[],["result",4]]],[11,"serialize","","",83,[[],["result",4]]],[11,"serialize","map_model::pathfind::vehicles","",85,[[],["result",4]]],[11,"serialize","","",86,[[],["result",4]]],[11,"serialize","map_model::pathfind::walking","",87,[[],["result",4]]],[11,"serialize","map_model::connectivity","",3,[[],["result",4]]],[11,"serialize","map_model::pathfind","",88,[[],["result",4]]],[11,"serialize","","",89,[[],["result",4]]],[11,"serialize","","",90,[[],["result",4]]],[11,"serialize","","",91,[[],["result",4]]],[11,"serialize","","",92,[[],["result",4]]],[11,"serialize","map_model::raw","",93,[[],["result",4]]],[11,"serialize","","",94,[[],["result",4]]],[11,"serialize","","",95,[[],["result",4]]],[11,"serialize","","",96,[[],["result",4]]],[11,"serialize","","",97,[[],["result",4]]],[11,"serialize","","",98,[[],["result",4]]],[11,"serialize","","",99,[[],["result",4]]],[11,"serialize","","",100,[[],["result",4]]],[11,"serialize","","",102,[[],["result",4]]],[11,"serialize","","",103,[[],["result",4]]],[11,"serialize","map_model::traversable","",104,[[],["result",4]]],[11,"serialize","","",105,[[],["result",4]]],[11,"serialize","map_model","",106,[[],["result",4]]],[11,"deserialize","map_model::city","",0,[[],["result",4]]],[11,"deserialize","map_model::edits::compat","",4,[[],["result",4]]],[11,"deserialize","","",5,[[],["result",4]]],[11,"deserialize","","",6,[[],["result",4]]],[11,"deserialize","","",7,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","map_model::edits::perma","",9,[[],["result",4]]],[11,"deserialize","","",10,[[],["result",4]]],[11,"deserialize","","",12,[[],["result",4]]],[11,"deserialize","map_model::edits","",18,[[],["result",4]]],[11,"deserialize","map_model::map","",30,[[],["result",4]]],[11,"deserialize","","",31,[[],["result",4]]],[11,"deserialize","map_model::objects::area","",32,[[],["result",4]]],[11,"deserialize","","",33,[[],["result",4]]],[11,"deserialize","","",34,[[],["result",4]]],[11,"deserialize","map_model::objects::building","",35,[[],["result",4]]],[11,"deserialize","","",36,[[],["result",4]]],[11,"deserialize","","",37,[[],["result",4]]],[11,"deserialize","","",38,[[],["result",4]]],[11,"deserialize","","",39,[[],["result",4]]],[11,"deserialize","","",41,[[],["result",4]]],[11,"deserialize","map_model::objects::bus_stop","",43,[[],["result",4]]],[11,"deserialize","","",44,[[],["result",4]]],[11,"deserialize","","",45,[[],["result",4]]],[11,"deserialize","","",46,[[],["result",4]]],[11,"deserialize","map_model::objects::intersection","",47,[[],["result",4]]],[11,"deserialize","","",48,[[],["result",4]]],[11,"deserialize","","",49,[[],["result",4]]],[11,"deserialize","map_model::objects::lane","",50,[[],["result",4]]],[11,"deserialize","","",51,[[],["result",4]]],[11,"deserialize","","",52,[[],["result",4]]],[11,"deserialize","map_model::objects::parking_lot","",53,[[],["result",4]]],[11,"deserialize","","",54,[[],["result",4]]],[11,"deserialize","map_model::objects::road","",55,[[],["result",4]]],[11,"deserialize","","",56,[[],["result",4]]],[11,"deserialize","","",57,[[],["result",4]]],[11,"deserialize","","",58,[[],["result",4]]],[11,"deserialize","map_model::objects::stop_signs","",59,[[],["result",4]]],[11,"deserialize","","",60,[[],["result",4]]],[11,"deserialize","map_model::objects::traffic_signals","",61,[[],["result",4]]],[11,"deserialize","","",62,[[],["result",4]]],[11,"deserialize","","",63,[[],["result",4]]],[11,"deserialize","map_model::objects::turn","",64,[[],["result",4]]],[11,"deserialize","","",65,[[],["result",4]]],[11,"deserialize","","",66,[[],["result",4]]],[11,"deserialize","","",67,[[],["result",4]]],[11,"deserialize","","",68,[[],["result",4]]],[11,"deserialize","","",69,[[],["result",4]]],[11,"deserialize","","",70,[[],["result",4]]],[11,"deserialize","map_model::objects::zone","",71,[[],["result",4]]],[11,"deserialize","","",72,[[],["result",4]]],[11,"deserialize","map_model::osm","",74,[[],["result",4]]],[11,"deserialize","","",75,[[],["result",4]]],[11,"deserialize","","",76,[[],["result",4]]],[11,"deserialize","","",77,[[],["result",4]]],[11,"deserialize","map_model::pathfind::ch","",78,[[],["result",4]]],[11,"deserialize","map_model::pathfind::node_map","",80,[[],["result",4]]],[11,"deserialize","map_model::pathfind::pathfinder","",81,[[],["result",4]]],[11,"deserialize","map_model::pathfind::uber_turns","",82,[[],["result",4]]],[11,"deserialize","","",83,[[],["result",4]]],[11,"deserialize","map_model::pathfind::vehicles","",85,[[],["result",4]]],[11,"deserialize","","",86,[[],["result",4]]],[11,"deserialize","map_model::pathfind::walking","",87,[[],["result",4]]],[11,"deserialize","map_model::connectivity","",3,[[],["result",4]]],[11,"deserialize","map_model::pathfind","",88,[[],["result",4]]],[11,"deserialize","","",89,[[],["result",4]]],[11,"deserialize","","",90,[[],["result",4]]],[11,"deserialize","","",91,[[],["result",4]]],[11,"deserialize","","",92,[[],["result",4]]],[11,"deserialize","map_model::raw","",93,[[],["result",4]]],[11,"deserialize","","",94,[[],["result",4]]],[11,"deserialize","","",95,[[],["result",4]]],[11,"deserialize","","",96,[[],["result",4]]],[11,"deserialize","","",97,[[],["result",4]]],[11,"deserialize","","",98,[[],["result",4]]],[11,"deserialize","","",99,[[],["result",4]]],[11,"deserialize","","",100,[[],["result",4]]],[11,"deserialize","","",102,[[],["result",4]]],[11,"deserialize","","",103,[[],["result",4]]],[11,"deserialize","map_model::traversable","",104,[[],["result",4]]],[11,"deserialize","","",105,[[],["result",4]]],[11,"deserialize","map_model","",106,[[],["result",4]]],[11,"enum_into_u32","map_model::pathfind","",90,[[]]],[11,"enum_from_u32","","",90,[[]]],[11,"serialize","","",90,[[["enumset",3],["serializer",8],["pathconstraints",4]],["result",4]]],[11,"deserialize","","",90,[[["deserializer",8]],[["result",4],["enumset",3]]]],[11,"to_perma","map_model::edits","",19,[[["map",3]],["permanenteditcmd",4]]],[11,"to_permanent","","Encode the edits in a permanent format, referring to …",16,[[["map",3]],["permanentmapedits",3]]],[11,"to_permanent","","",17,[[["map",3]],["permanenteditintersection",4]]],[11,"new_edits","map_model","",106,[[],["mapedits",3]]],[11,"get_edits","","",106,[[],["mapedits",3]]],[11,"unsaved_edits","","",106,[[]]],[11,"get_r_edit","","",106,[[["roadid",3]],["editroad",3]]],[11,"edit_road_cmd","","",106,[[["roadid",3],["fn",8]],["editcmd",4]]],[11,"get_i_edit","","Panics on borders",106,[[["intersectionid",3]],["editintersection",4]]],[11,"save_edits","","",106,[[]]],[11,"must_apply_edits","","",106,[[["mapedits",3]]]],[11,"try_apply_edits","","",106,[[["mapedits",3]]]],[11,"apply_edits","","",106,[[["mapedits",3]]]],[11,"recalculate_pathfinding_after_edits","","This can expensive, so don\'t constantly do it while …",106,[[["timer",3]]]],[11,"incremental_edit_traffic_signal","","Since the player is in the middle of editing, the signal …",106,[[["controltrafficsignal",3]]]],[11,"create_from_raw","","",106,[[["timer",3],["rawmap",3]],["map",3]]],[11,"import_minimal","","Use for creating a map directly from some external …",106,[[["gpsbounds",3],["vec",3],["bounds",3],["vec",3],["intersection",3],["lane",3],["turn",3],["mapname",3],["vec",3],["vec",3],["road",3]],["map",3]]],[11,"load_synchronously","","Load a map from a local serialized Map or RawMap. Note …",106,[[["timer",3],["string",3]],["map",3]]],[11,"map_loaded_directly","","After deserializing a map directly, call this after.",106,[[]]],[11,"blank","","Just for temporary std::mem::replace tricks.",106,[[],["map",3]]],[11,"all_roads","","",106,[[],["vec",3]]],[11,"all_lanes","","",106,[[],["vec",3]]],[11,"all_intersections","","",106,[[],["vec",3]]],[11,"all_turns","","",106,[[],["btreemap",3]]],[11,"all_buildings","","",106,[[],["vec",3]]],[11,"all_areas","","",106,[[],["vec",3]]],[11,"all_parking_lots","","",106,[[],["vec",3]]],[11,"all_zones","","",106,[[],["vec",3]]],[11,"maybe_get_r","","",106,[[["roadid",3]],[["road",3],["option",4]]]],[11,"maybe_get_l","","",106,[[["laneid",3]],[["lane",3],["option",4]]]],[11,"maybe_get_i","","",106,[[["intersectionid",3]],[["option",4],["intersection",3]]]],[11,"maybe_get_t","","",106,[[["turnid",3]],[["option",4],["turn",3]]]],[11,"maybe_get_b","","",106,[[["buildingid",3]],[["option",4],["building",3]]]],[11,"maybe_get_pl","","",106,[[["parkinglotid",3]],[["option",4],["parkinglot",3]]]],[11,"maybe_get_a","","",106,[[["areaid",3]],[["area",3],["option",4]]]],[11,"maybe_get_bs","","",106,[[["busstopid",3]],[["busstop",3],["option",4]]]],[11,"maybe_get_stop_sign","","",106,[[["intersectionid",3]],[["option",4],["controlstopsign",3]]]],[11,"maybe_get_traffic_signal","","",106,[[["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[11,"maybe_get_br","","",106,[[["busrouteid",3]],[["busroute",3],["option",4]]]],[11,"get_r","","",106,[[["roadid",3]],["road",3]]],[11,"get_l","","",106,[[["laneid",3]],["lane",3]]],[11,"get_i","","",106,[[["intersectionid",3]],["intersection",3]]],[11,"get_t","","",106,[[["turnid",3]],["turn",3]]],[11,"get_b","","",106,[[["buildingid",3]],["building",3]]],[11,"get_a","","",106,[[["areaid",3]],["area",3]]],[11,"get_pl","","",106,[[["parkinglotid",3]],["parkinglot",3]]],[11,"get_stop_sign","","",106,[[["intersectionid",3]],["controlstopsign",3]]],[11,"get_traffic_signal","","",106,[[["intersectionid",3]],["controltrafficsignal",3]]],[11,"get_turns_in_intersection","","",106,[[["intersectionid",3]],[["vec",3],["turn",3]]]],[11,"get_turns_from_lane","","The turns may belong to two different intersections!",106,[[["laneid",3]],[["vec",3],["turn",3]]]],[11,"get_turns_to_lane","","",106,[[["laneid",3]],[["vec",3],["turn",3]]]],[11,"get_turn_between","","",106,[[["intersectionid",3],["laneid",3]],[["option",4],["turnid",3]]]],[11,"get_next_turns_and_lanes","","",106,[[["intersectionid",3],["laneid",3]],["vec",3]]],[11,"get_turns_for","","",106,[[["pathconstraints",4],["laneid",3]],[["vec",3],["turn",3]]]],[11,"get_next_roads","","",106,[[["roadid",3]],[["btreeset",3],["roadid",3]]]],[11,"get_parent","","",106,[[["laneid",3]],["road",3]]],[11,"get_gps_bounds","","",106,[[],["gpsbounds",3]]],[11,"get_bounds","","",106,[[],["bounds",3]]],[11,"get_city_name","","",106,[[],["cityname",3]]],[11,"get_name","","",106,[[],["mapname",3]]],[11,"all_bus_stops","","",106,[[],["btreemap",3]]],[11,"get_bs","","",106,[[["busstopid",3]],["busstop",3]]],[11,"get_br","","",106,[[["busrouteid",3]],["busroute",3]]],[11,"all_bus_routes","","",106,[[],["vec",3]]],[11,"get_bus_route","","",106,[[],[["busroute",3],["option",4]]]],[11,"get_routes_serving_stop","","",106,[[["busstopid",3]],[["busroute",3],["vec",3]]]],[11,"building_to_road","","",106,[[["buildingid",3]],["road",3]]],[11,"all_incoming_borders","","This and all_outgoing_borders are expensive to constantly …",106,[[],[["vec",3],["intersection",3]]]],[11,"all_outgoing_borders","","",106,[[],[["vec",3],["intersection",3]]]],[11,"save","","",106,[[]]],[11,"find_driving_lane_near_building","","Cars trying to park near this building should head for …",106,[[["buildingid",3]],["laneid",3]]],[11,"get_boundary_polygon","","",106,[[],["polygon",3]]],[11,"pathfind","","",106,[[["pathrequest",3]],[["result",6],["path",3]]]],[11,"pathfind_avoiding_lanes","","",106,[[["laneid",3],["btreeset",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"pathfind_with_params","","",106,[[["routingparams",3],["pathrequest",3]],[["result",6],["path",3]]]],[11,"should_use_transit","","",106,[[["position",3]],["option",4]]],[11,"get_movement","","",106,[[["turnid",3]],[["option",4],["movementid",3]]]],[11,"find_r_by_osm_id","","",106,[[["originalroad",3]],[["roadid",3],["result",6]]]],[11,"find_i_by_osm_id","","",106,[[["nodeid",3]],[["intersectionid",3],["result",6]]]],[11,"find_b_by_osm_id","","",106,[[["osmid",4]],[["option",4],["buildingid",3]]]],[11,"find_br","","",106,[[["relationid",3]],[["option",4],["busrouteid",3]]]],[11,"hack_override_offstreet_spots","","",106,[[]]],[11,"hack_override_offstreet_spots_individ","","",106,[[["buildingid",3]]]],[11,"hack_override_bldg_type","","",106,[[["buildingtype",4],["buildingid",3]]]],[11,"hack_override_orig_spawn_times","","",106,[[["vec",3],["busrouteid",3],["time",3]]]],[11,"hack_add_area","","",106,[[["areatype",4],["polygon",3],["tags",3]]]],[11,"hack_override_routing_params","","",106,[[["routingparams",3],["timer",3]]]],[11,"get_languages","","",106,[[],["btreeset",3]]],[11,"get_config","","",106,[[],["mapconfig",3]]],[11,"simple_path_btwn","","Simple search along undirected roads",106,[[["intersectionid",3]],[["vec",3],["option",4]]]],[11,"routing_params","","Returns the routing params baked into the map.",106,[[],["routingparams",3]]]],"p":[[3,"City"],[3,"WalkingOptions"],[3,"Item"],[4,"WalkingNode"],[3,"OriginalLane"],[3,"ChangeLaneType"],[3,"ReverseLane"],[3,"ChangeSpeedLimit"],[3,"ChangeAccessRestrictions"],[3,"PermanentMapEdits"],[4,"PermanentEditIntersection"],[13,"StopSign"],[4,"PermanentEditCmd"],[13,"ChangeRoad"],[13,"ChangeIntersection"],[13,"ChangeRouteSchedule"],[3,"MapEdits"],[4,"EditIntersection"],[3,"EditRoad"],[4,"EditCmd"],[13,"ChangeRoad"],[13,"ChangeIntersection"],[13,"ChangeRouteSchedule"],[3,"EditEffects"],[3,"Piece"],[3,"LaneSpec"],[3,"InitialMap"],[3,"Road"],[3,"Intersection"],[3,"Matcher"],[3,"MapConfig"],[4,"DrivingSide"],[3,"AreaID"],[4,"AreaType"],[3,"Area"],[3,"BuildingID"],[3,"Building"],[3,"Amenity"],[4,"OffstreetParking"],[4,"BuildingType"],[13,"Residential"],[3,"NamePerLanguage"],[4,"AmenityType"],[3,"BusStopID"],[3,"BusRouteID"],[3,"BusStop"],[3,"BusRoute"],[3,"IntersectionID"],[4,"IntersectionType"],[3,"Intersection"],[3,"LaneID"],[4,"LaneType"],[3,"Lane"],[3,"ParkingLotID"],[3,"ParkingLot"],[3,"RoadID"],[4,"Direction"],[3,"DirectedRoadID"],[3,"Road"],[3,"ControlStopSign"],[3,"RoadWithStopSign"],[3,"ControlTrafficSignal"],[3,"Stage"],[4,"StageType"],[3,"TurnID"],[4,"TurnType"],[4,"TurnPriority"],[3,"Turn"],[3,"MovementID"],[3,"CompressedMovementID"],[3,"Movement"],[3,"AccessRestrictions"],[3,"Zone"],[4,"RoadRank"],[3,"NodeID"],[3,"WayID"],[3,"RelationID"],[4,"OsmID"],[3,"ContractionHierarchyPathfinder"],[3,"NodeMap"],[3,"InnerNodeMap"],[4,"Pathfinder"],[3,"IntersectionCluster"],[3,"UberTurn"],[3,"UberTurnGroup"],[3,"VehiclePathfinder"],[4,"Node"],[3,"SidewalkPathfinder"],[4,"PathStep"],[3,"Path"],[4,"PathConstraints"],[3,"PathRequest"],[3,"RoutingParams"],[3,"RawMap"],[3,"OriginalRoad"],[3,"RawRoad"],[3,"RawIntersection"],[3,"RawBuilding"],[3,"RawArea"],[3,"RawParkingLot"],[4,"RestrictionType"],[3,"TurnRestriction"],[3,"RawBusRoute"],[3,"RawBusStop"],[3,"Position"],[4,"Traversable"],[3,"Map"]]},\ +"map_model":{"doc":"map_model describes the world where simulations occur. …","i":[[0,"city","map_model","",null,null],[3,"City","map_model::city","A single city (like Seattle) can be broken down into …",null,null],[12,"name","","",0,null],[12,"boundary","","",0,null],[12,"areas","","",0,null],[12,"districts","","The individual maps",0,null],[11,"from_huge_map","","If there\'s a single map covering all the smaller maps, …",0,[[["map",3]],["city",3]]],[11,"from_individual_maps","","Generate a city from a bunch of smaller, individual maps. …",0,[[["timer",3],["cityname",3]],["city",3]]],[0,"connectivity","map_model","",null,null],[0,"walking","map_model::connectivity","",null,null],[3,"WalkingOptions","map_model::connectivity::walking","",null,null],[12,"allow_shoulders","","If true, allow walking on shoulders.",1,null],[12,"walking_speed","","",1,null],[11,"default","","",1,[[],["walkingoptions",3]]],[11,"common_speeds","","",1,[[],["vec",3]]],[11,"default_speed","","",1,[[],["speed",3]]],[11,"cost","","",1,[[["distance",3]],["duration",3]]],[3,"Item","","",null,null],[12,"cost","","",2,null],[12,"node","","",2,null],[5,"all_walking_costs_from","","Starting from one building, calculate the cost to all …",null,[[["walkingoptions",3],["duration",3],["map",3],["buildingid",3]],[["buildingid",3],["duration",3],["hashmap",3]]]],[5,"all_walking_costs_from","map_model::connectivity","Starting from one building, calculate the cost to all …",null,[[["walkingoptions",3],["duration",3],["map",3],["buildingid",3]],[["buildingid",3],["duration",3],["hashmap",3]]]],[3,"WalkingOptions","","",null,null],[12,"allow_shoulders","","If true, allow walking on shoulders.",1,null],[12,"walking_speed","","",1,null],[5,"vehicle_cost","","Different unit based on constraints.",null,[[["turn",3],["pathconstraints",4],["lane",3],["map",3],["routingparams",3]]]],[4,"WalkingNode","","",null,null],[13,"SidewalkEndpoint","","false is src_i, true is dst_i",3,null],[13,"RideBus","","",3,null],[13,"LeaveMap","","",3,null],[5,"find_scc","","Calculate the srongy connected components (SCC) of the …",null,[[["map",3],["pathconstraints",4]]]],[5,"all_vehicle_costs_from","","Starting from one building, calculate the cost to all …",null,[[["duration",3],["map",3],["pathconstraints",4],["buildingid",3]],[["buildingid",3],["duration",3],["hashmap",3]]]],[5,"debug_vehicle_costs","","",null,[[["map",3],["pathrequest",3]],["option",4]]],[0,"edits","map_model","Once a Map exists, the player can edit it in the UI …",null,null],[0,"compat","map_model::edits","",null,null],[5,"upgrade","map_model::edits::compat","When the PermanentMapEdits format changes, add a …",null,[[["map",3],["value",4]],[["permanentmapedits",3],["result",6]]]],[5,"walk","","",null,[[["value",4]]]],[5,"fix_offset","","",null,[[["value",4]]]],[5,"fix_intersection_ids","","",null,[[["value",4]]]],[5,"fix_road_direction","","",null,[[["value",4]]]],[5,"fix_old_lane_cmds","","",null,[[["value",4],["map",3]],["result",6]]],[5,"fix_merge_zones","","",null,[[["value",4]]]],[5,"fix_map_name","","",null,[[["value",4]]]],[5,"fix_phase_to_stage","","",null,[[["value",4]]]],[5,"fix_adaptive_stages","","",null,[[["value",4]]]],[5,"fix_plans","","",null,[[["value",4]]]],[5,"fix_city_name","","",null,[[["value",4]]]],[3,"OriginalLane","","",null,null],[12,"parent","","",4,null],[12,"num_fwd","","",4,null],[12,"num_back","","",4,null],[12,"dir","","",4,null],[12,"idx","","",4,null],[3,"ChangeLaneType","","",null,null],[12,"id","","",5,null],[12,"lt","","",5,null],[12,"orig_lt","","",5,null],[3,"ReverseLane","","",null,null],[12,"l","","",6,null],[12,"dst_i","","",6,null],[3,"ChangeSpeedLimit","","",null,null],[12,"id","","",7,null],[12,"new","","",7,null],[12,"old","","",7,null],[3,"ChangeAccessRestrictions","","",null,null],[12,"id","","",8,null],[12,"new","","",8,null],[12,"old","","",8,null],[11,"lookup","","",4,[[["map",3]],["result",6]]],[0,"perma","map_model::edits","",null,null],[3,"PermanentMapEdits","map_model::edits::perma","MapEdits are converted to this before serializing. …",null,null],[12,"map_name","","",9,null],[12,"edits_name","","",9,null],[12,"version","","",9,null],[12,"commands","","",9,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",9,null],[12,"proposal_description","","Edits without these are player generated.",9,null],[12,"proposal_link","","The link is optional even for proposals",9,null],[4,"PermanentEditIntersection","","",null,null],[13,"StopSign","","",10,null],[12,"must_stop","map_model::edits::perma::PermanentEditIntersection","",11,null],[13,"TrafficSignal","map_model::edits::perma","",10,null],[13,"Closed","","",10,null],[4,"PermanentEditCmd","","",null,null],[13,"ChangeRoad","","",12,null],[12,"r","map_model::edits::perma::PermanentEditCmd","",13,null],[12,"new","","",13,null],[12,"old","","",13,null],[13,"ChangeIntersection","map_model::edits::perma","",12,null],[12,"i","map_model::edits::perma::PermanentEditCmd","",14,null],[12,"new","","",14,null],[12,"old","","",14,null],[13,"ChangeRouteSchedule","map_model::edits::perma","",12,null],[12,"osm_rel_id","map_model::edits::perma::PermanentEditCmd","",15,null],[12,"old","","",15,null],[12,"new","","",15,null],[11,"to_cmd","map_model::edits::perma","",12,[[["map",3]],[["editcmd",4],["result",6]]]],[11,"to_edits","","Transform permanent edits to MapEdits, looking up the map …",9,[[["map",3]],[["mapedits",3],["result",6]]]],[11,"to_edits_permissive","","Transform permanent edits to MapEdits, looking up the map …",9,[[["map",3]],["mapedits",3]]],[11,"from_permanent","","",10,[[["intersectionid",3],["map",3]],[["result",6],["editintersection",4]]]],[3,"MapEdits","map_model::edits","Represents changes to a map. Note this isn\'t serializable …",null,null],[12,"edits_name","","",16,null],[12,"commands","","A stack, oldest edit is first. The same intersection may …",16,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",16,null],[12,"changed_roads","","Derived from commands, kept up to date by update_derived",16,null],[12,"original_intersections","","",16,null],[12,"changed_routes","","",16,null],[12,"proposal_description","","Some edits are included in the game by default, in …",16,null],[12,"proposal_link","","",16,null],[4,"EditIntersection","","",null,null],[13,"StopSign","","",17,null],[13,"TrafficSignal","","",17,null],[13,"Closed","","",17,null],[3,"EditRoad","","",null,null],[12,"lanes_ltr","","",18,null],[12,"speed_limit","","",18,null],[12,"access_restrictions","","",18,null],[11,"get_orig_from_osm","","",18,[[["road",3],["mapconfig",3]],["editroad",3]]],[11,"diff","","",18,[[["editroad",3]],[["vec",3],["string",3]]]],[4,"EditCmd","","",null,null],[13,"ChangeRoad","","",19,null],[12,"r","map_model::edits::EditCmd","",20,null],[12,"old","","",20,null],[12,"new","","",20,null],[13,"ChangeIntersection","map_model::edits","",19,null],[12,"i","map_model::edits::EditCmd","",21,null],[12,"new","","",21,null],[12,"old","","",21,null],[13,"ChangeRouteSchedule","map_model::edits","",19,null],[12,"id","map_model::edits::EditCmd","",22,null],[12,"old","","",22,null],[12,"new","","",22,null],[3,"EditEffects","map_model::edits","",null,null],[12,"changed_roads","","",23,null],[12,"changed_intersections","","",23,null],[12,"added_turns","","",23,null],[12,"deleted_turns","","",23,null],[11,"new","","",16,[[],["mapedits",3]]],[11,"load","","",16,[[["map",3],["string",3],["timer",3]],[["mapedits",3],["result",6]]]],[11,"save","","",16,[[["map",3]]]],[11,"update_derived","","",16,[[["map",3]]]],[11,"compress","","Assumes update_derived has been called.",16,[[["map",3]]]],[11,"changed_lanes","","Pick apart changed_roads and figure out if an entire road …",16,[[["map",3]]]],[11,"new","","",23,[[],["editeffects",3]]],[11,"describe","","(summary, details)",19,[[["map",3]]]],[11,"apply","","",19,[[["map",3],["editeffects",3]]]],[11,"undo","","",19,[[],["editcmd",4]]],[5,"recalculate_turns","","",null,[[["intersectionid",3],["map",3],["editeffects",3]]]],[0,"make","map_model","See …",null,null],[0,"bridges","map_model::make","",null,null],[5,"find_bridges","map_model::make::bridges","Look for roads underneath bridges, then lower their …",null,[[["timer",3],["bounds",3],["vec",3]]]],[0,"buildings","map_model::make","",null,null],[5,"make_all_buildings","map_model::make::buildings","Finalize importing of buildings, mostly by matching them …",null,[[["map",3],["timer",3],["btreemap",3]],[["vec",3],["building",3]]]],[5,"trim_path","","",null,[[["polygon",3],["line",3]],["line",3]]],[5,"get_address","","",null,[[["tags",3],["map",3],["laneid",3]],["string",3]]],[5,"classify_bldg","","",null,[[["tags",3],["vec",3],["xorshiftrng",3]],["buildingtype",4]]],[0,"initial","map_model::make","Naming is confusing, but RawMap -> InitialMap -> Map. …",null,null],[0,"geometry","map_model::make::initial","OSM describes roads as center-lines that intersect. Turn …",null,null],[17,"DEGENERATE_INTERSECTION_HALF_LENGTH","map_model::make::initial::geometry","",null,null],[5,"intersection_polygon","","Also returns a list of labeled polygons for debugging.",null,[[["intersection",3],["btreemap",3]],["result",6]]],[5,"generalized_trim_back","","",null,[[["btreemap",3],["nodeid",3],["vec",3]],["result",6]]],[5,"deadend","","",null,[[["btreemap",3],["nodeid",3],["vec",3]],["result",6]]],[5,"close_off_polygon","","",null,[[["vec",3],["pt2d",3]],[["pt2d",3],["vec",3]]]],[3,"Piece","","",null,null],[12,"id","","",24,null],[12,"left","","",24,null],[12,"center","","",24,null],[12,"right","","",24,null],[5,"on_off_ramp","","",null,[[["btreemap",3],["nodeid",3],["vec",3]],["option",4]]],[0,"lane_specs","map_model::make::initial","",null,null],[3,"LaneSpec","map_model::make::initial::lane_specs","",null,null],[12,"lt","","",25,null],[12,"dir","","",25,null],[12,"width","","",25,null],[5,"fwd","","",null,[[["lanetype",4]],["lanespec",3]]],[5,"back","","",null,[[["lanetype",4]],["lanespec",3]]],[5,"get_lane_specs_ltr","","",null,[[["tags",3],["mapconfig",3]],[["lanespec",3],["vec",3]]]],[5,"assemble_ltr","","",null,[[["lanespec",3],["drivingside",4],["vec",3]],[["lanespec",3],["vec",3]]]],[3,"InitialMap","map_model::make::initial","",null,null],[12,"roads","","",26,null],[12,"intersections","","",26,null],[12,"bounds","","",26,null],[3,"Road","","",null,null],[12,"id","","",27,null],[12,"src_i","","",27,null],[12,"dst_i","","",27,null],[12,"trimmed_center_pts","","",27,null],[12,"half_width","","",27,null],[12,"lane_specs_ltr","","",27,null],[12,"osm_tags","","",27,null],[11,"new","","",27,[[["rawroad",3],["mapconfig",3],["originalroad",3]],[["result",6],["road",3]]]],[3,"Intersection","","",null,null],[12,"id","","",28,null],[12,"polygon","","",28,null],[12,"roads","","",28,null],[12,"intersection_type","","",28,null],[12,"elevation","","",28,null],[11,"new","","",26,[[["timer",3],["bounds",3],["rawmap",3]],["initialmap",3]]],[0,"medians","map_model::make","",null,null],[5,"find_medians","map_model::make::medians","Fill in empty space between one-way roads.",null,[[["map",3]],[["vec",3],["polygon",3]]]],[0,"merge_intersections","map_model::make","",null,null],[5,"merge_short_roads","map_model::make::merge_intersections","Merge tiny \\\"roads\\\" that\'re actually just part of a …",null,[[["rawmap",3]],[["btreeset",3],["nodeid",3]]]],[5,"should_merge","","",null,[[["originalroad",3],["rawmap",3]]]],[5,"connects_dual_carriageway","","",null,[[["originalroad",3],["rawmap",3]]]],[5,"angle","","",null,[[["rawroad",3]],["angle",3]]],[0,"parking_lots","map_model::make","",null,null],[5,"make_all_parking_lots","map_model::make::parking_lots","Take in parking lots from OSM and all parking aisle …",null,[[["vec",3],["map",3],["timer",3],["vec",3]],[["vec",3],["parkinglot",3]]]],[5,"trim_path","","",null,[[["polygon",3],["line",3]],["line",3]]],[5,"infer_spots","","",null,[[["polygon",3],["vec",3]],["vec",3]]],[5,"line_valid","","",null,[[["polygon",3],["vec",3],["line",3],["vec",3]]]],[0,"remove_disconnected","map_model::make","",null,null],[5,"remove_disconnected_roads","map_model::make::remove_disconnected","Some roads might be totally disconnected from the largest …",null,[[["rawmap",3],["timer",3]]]],[0,"traffic_signals","map_model::make","The various traffic signal generators live in the traffic …",null,null],[0,"lagging_green","map_model::make::traffic_signals","",null,null],[5,"make_traffic_signal","map_model::make::traffic_signals::lagging_green","Create a traffic signal which has a stage that is: …",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"make_signal","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"optimize","","",null,[[["controltrafficsignal",3]],[["option",4],["controltrafficsignal",3]]]],[5,"make_crosswalk_variable","","",null,[[["controltrafficsignal",3]]]],[5,"merge_stages","","",null,[[["controltrafficsignal",3]],[["option",4],["controltrafficsignal",3]]]],[5,"is_conflict","","",null,[[["controltrafficsignal",3],["stage",3]],["option",4]]],[5,"protected_yield_stage","","",null,[[["movementid",3]],["stage",3]]],[5,"multi_way_stages","","Build stages. First find roads that are straight across, …",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"add_stage","","",null,[[["controltrafficsignal",3],["stage",3]]]],[5,"turns","","",null,[[["vec",3],["roadid",3]],[["movementid",3],["vec",3]]]],[5,"remove_movement","","",null,[[["vec",3],["roadid",3]],[["option",4],["movementid",3]]]],[5,"three_way_three_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"four_way_four_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"movements","","",null,[[["controltrafficsignal",3]]]],[5,"straight_types","","",null,[[["vec",3]]]],[5,"make_lagging_green_variable","","",null,[[["controltrafficsignal",3]]]],[5,"get_possible_policies","map_model::make::traffic_signals","Applies a bunch of heuristics to a single intersection, …",null,[[["map",3],["intersectionid",3]],["vec",3]]],[5,"new","","",null,[[["intersectionid",3],["map",3]],["controltrafficsignal",3]]],[5,"greedy_assignment","","",null,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[5,"degenerate","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"half_signal","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"three_way","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"four_way_four_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"four_way_two_stage","","",null,[[["map",3],["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[5,"all_walk_all_yield","","",null,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[5,"stage_per_road","","",null,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[5,"expand_all_stages","","",null,[[["controltrafficsignal",3]]]],[17,"PROTECTED","","",null,null],[17,"YIELD","","",null,null],[5,"make_stages","","",null,[[["vec",3],["drivingside",4],["controltrafficsignal",3],["vec",3]]]],[5,"make_stages_filtered","","",null,[[["vec",3],["drivingside",4],["controltrafficsignal",3],["vec",3]]]],[5,"synchronize","","Simple second-pass after generating all signals. Find …",null,[[["map",3]]]],[0,"transit","map_model::make","",null,null],[5,"make_stops_and_routes","map_model::make::transit","Construct the final model of bus/train stops and routes. …",null,[[["map",3],["timer",3],["vec",3]]]],[5,"make_route","","",null,[[["matcher",3],["map",3],["rawbusroute",3],["btreemap",3]],["result",6]]],[3,"Matcher","","",null,null],[12,"sidewalk_pts","","",29,null],[12,"light_rail_pts","","",29,null],[11,"new","","",29,[[["map",3],["timer",3],["vec",3]],["matcher",3]]],[11,"lookup","","",29,[[["rawbusstop",3],["map",3],["pathconstraints",4]],["result",6]]],[5,"pick_start_lane","","",null,[[["map",3],["position",3],["pathconstraints",4]],[["result",6],["laneid",3]]]],[5,"default_spawn_times","","",null,[[],[["vec",3],["time",3]]]],[0,"turns","map_model::make","",null,null],[5,"make_all_turns","map_model::make::turns","Generate all driving and walking turns at an …",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"ensure_unique","","",null,[[["turn",3],["vec",3]],[["turn",3],["vec",3]]]],[5,"is_turn_allowed","","",null,[[["map",3],["turn",3]]]],[5,"does_turn_pass_restrictions","","",null,[[["map",3],["turn",3],["intersection",3]]]],[5,"make_vehicle_turns","","",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"curvey_turn","","",null,[[["lane",3]],[["polyline",3],["result",6]]]],[5,"to_pt","","",null,[[["pt2d",3]],["point2d",3]]],[5,"from_pt","","",null,[[["point2d",3]],["pt2d",3]]],[5,"lc_penalty","","",null,[[["map",3],["turn",3]]]],[5,"remove_merging_turns","","",null,[[["turntype",4],["vec",3],["map",3],["turn",3]],[["turn",3],["vec",3]]]],[5,"turn_type_from_angles","","",null,[[["angle",3]],["turntype",4]]],[5,"expected_turn_types_for_four_way","","",null,[[["map",3],["intersection",3]],[["option",4],["hashmap",3]]]],[0,"walking_turns","map_model::make","",null,null],[5,"make_walking_turns","map_model::make::walking_turns","Generate Crosswalk and SharedSidewalkCorner (places where …",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"filter_turns","","Filter out crosswalks on really short roads. In reality, …",null,[[["vec",3],["map",3],["turn",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"_make_walking_turns_v2","","",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"make_footway_turns","","At an intersection of footpaths only, just generate a …",null,[[["map",3],["intersection",3]],[["turn",3],["vec",3]]]],[5,"make_crosswalks","","",null,[[["intersectionid",3],["lane",3],["drivingside",4]],[["option",4],["vec",3]]]],[5,"make_degenerate_crosswalks","","",null,[[["vec",3],["road",3],["intersectionid",3]],[["option",4],["vec",3]]]],[5,"make_shared_sidewalk_corner","","",null,[[["lane",3],["drivingside",4],["intersection",3]],["polyline",3]]],[5,"turn_id","","",null,[[["intersectionid",3],["laneid",3]],["turnid",3]]],[5,"get_sidewalk","","",null,[[["vec",3],["vec",3]],[["option",4],["lane",3]]]],[5,"match_points_to_lanes","map_model::make","Snap points to an exact Position along the nearest lane. …",null,[[["bounds",3],["hashset",3],["hashablept2d",3],["vec",3],["distance",3],["timer",3],["fn",8]],[["hashmap",3],["position",3],["hashablept2d",3]]]],[0,"map","map_model","A bunch of (mostly read-only) queries on a Map.",null,null],[3,"MapConfig","map_model::map","",null,null],[12,"driving_side","","If true, driving happens on the right side of the road …",30,null],[12,"bikes_can_use_bus_lanes","","",30,null],[12,"inferred_sidewalks","","If true, roads without explicitly tagged sidewalks may …",30,null],[12,"street_parking_spot_length","","Street parking is divided into spots of this length. 8 …",30,null],[4,"DrivingSide","","",null,null],[13,"Right","","",31,null],[13,"Left","","",31,null],[0,"objects","map_model","",null,null],[0,"area","map_model::objects","",null,null],[3,"AreaID","map_model::objects::area","",null,null],[12,"0","","",32,null],[4,"AreaType","","",null,null],[13,"Park","","",33,null],[13,"Water","","",33,null],[13,"Island","","",33,null],[13,"MedianStrip","","",33,null],[13,"PedestrianPlaza","","",33,null],[13,"StudyArea","","Not from OSM. A user-specified area to focus on.",33,null],[3,"Area","","Areas are just used for drawing.",null,null],[12,"id","","",34,null],[12,"area_type","","",34,null],[12,"polygon","","",34,null],[12,"osm_tags","","",34,null],[12,"osm_id","","The importing process also automatically creates some …",34,null],[0,"building","map_model::objects","",null,null],[3,"BuildingID","map_model::objects::building","",null,null],[12,"0","","",35,null],[3,"Building","","A building has connections to the road and sidewalk, may …",null,null],[12,"id","","",36,null],[12,"polygon","","",36,null],[12,"levels","","",36,null],[12,"address","","",36,null],[12,"name","","",36,null],[12,"orig_id","","",36,null],[12,"label_center","","Where a text label should be centered to have the best …",36,null],[12,"amenities","","",36,null],[12,"bldg_type","","",36,null],[12,"parking","","",36,null],[12,"osm_tags","","Depending on options while importing, these might be …",36,null],[12,"sidewalk_pos","","The building\'s connection for pedestrians is immutable. …",36,null],[12,"driveway_geom","","Goes from building to sidewalk",36,null],[3,"Amenity","","A business located inside a building.",null,null],[12,"names","","",37,null],[12,"amenity_type","","This is the specific amenity listed in OSM, not the more …",37,null],[12,"osm_tags","","Depending on options while importing, these might be …",37,null],[4,"OffstreetParking","","Represent no parking as Private(0, false).",null,null],[13,"PublicGarage","","(Name, spots)",38,null],[13,"Private","","(Spots, explicitly tagged as a garage)",38,null],[4,"BuildingType","","",null,null],[13,"Residential","","",39,null],[12,"num_residents","map_model::objects::building::BuildingType","",40,null],[12,"num_housing_units","","",40,null],[13,"ResidentialCommercial","map_model::objects::building","An estimated number of residents, workers",39,null],[13,"Commercial","","An estimated number of workers",39,null],[13,"Empty","","",39,null],[11,"has_residents","","",39,[[]]],[3,"NamePerLanguage","","None corresponds to the native name",null,null],[12,"0","","",41,null],[11,"get","","",41,[[["option",4],["string",3]],["string",3]]],[11,"new","","",41,[[["tags",3]],[["option",4],["nameperlanguage",3]]]],[11,"unnamed","","",41,[[],["nameperlanguage",3]]],[11,"sidewalk","","",36,[[],["laneid",3]]],[11,"house_number","","",36,[[],[["option",4],["string",3]]]],[11,"driving_connection","","The polyline goes from the building to the driving …",36,[[["map",3]],["option",4]]],[11,"biking_connection","","Returns (biking position, sidewalk position). Could fail …",36,[[["map",3]],["option",4]]],[11,"num_parking_spots","","",36,[[]]],[11,"has_amenity","","Does this building contain any amenity matching the …",36,[[["amenitytype",4]]]],[5,"sidewalk_to_bike","","",null,[[["map",3],["position",3]],["option",4]]],[4,"AmenityType","","Businesses are categorized into one of these types.",null,null],[13,"Groceries","","",42,null],[13,"Food","","",42,null],[13,"Bar","","",42,null],[13,"Medical","","",42,null],[13,"Religious","","",42,null],[13,"Education","","",42,null],[13,"Financial","","",42,null],[13,"PostOffice","","",42,null],[13,"Culture","","",42,null],[13,"Childcare","","",42,null],[13,"Shopping","","",42,null],[11,"types","","",42,[[],["vec",3]]],[11,"all","","All types of amenities, in an arbitrary order.",42,[[],[["vec",3],["amenitytype",4]]]],[11,"categorize","","Categorize an OSM amenity tag.",42,[[],[["amenitytype",4],["option",4]]]],[11,"parse","","",42,[[],[["amenitytype",4],["option",4]]]],[0,"bus_stop","map_model::objects","Bus stops and routes.",null,null],[3,"BusStopID","map_model::objects::bus_stop","",null,null],[12,"sidewalk","","",43,null],[12,"idx","","As long as this is unique per lane, this value is …",43,null],[3,"BusRouteID","","",null,null],[12,"0","","",44,null],[3,"BusStop","","",null,null],[12,"id","","",45,null],[12,"name","","",45,null],[12,"driving_pos","","These may be on different roads entirely, like for light …",45,null],[12,"sidewalk_pos","","",45,null],[12,"is_train_stop","","If it\'s both, train overrides bus",45,null],[3,"BusRoute","","",null,null],[12,"id","","",46,null],[12,"full_name","","",46,null],[12,"short_name","","",46,null],[12,"gtfs_trip_marker","","",46,null],[12,"osm_rel_id","","",46,null],[12,"stops","","",46,null],[12,"start","","May be a border or not. If not, is long enough for buses …",46,null],[12,"end_border","","",46,null],[12,"route_type","","",46,null],[12,"spawn_times","","Non-empty, times in order for one day when a vehicle …",46,null],[12,"orig_spawn_times","","Explicitly store whatever the original was, since this …",46,null],[11,"all_steps","","",46,[[["map",3]],[["vec",3],["pathrequest",3]]]],[11,"plural_noun","","",46,[[]]],[0,"intersection","map_model::objects","",null,null],[3,"IntersectionID","map_model::objects::intersection","",null,null],[12,"0","","",47,null],[4,"IntersectionType","","",null,null],[13,"StopSign","","",48,null],[13,"TrafficSignal","","",48,null],[13,"Border","","",48,null],[13,"Construction","","",48,null],[3,"Intersection","","An intersection connects roads. Most have >2 roads and …",null,null],[12,"id","","",49,null],[12,"polygon","","This needs to be in clockwise orientation, or later …",49,null],[12,"turns","","",49,null],[12,"elevation","","",49,null],[12,"intersection_type","","",49,null],[12,"orig_id","","",49,null],[12,"incoming_lanes","","Note that a lane may belong to both incoming_lanes and …",49,null],[12,"outgoing_lanes","","",49,null],[12,"roads","","",49,null],[12,"merged","","Was a short road adjacent to this intersection merged?",49,null],[11,"is_border","","",49,[[]]],[11,"is_incoming_border","","",49,[[]]],[11,"is_outgoing_border","","",49,[[]]],[11,"is_closed","","",49,[[]]],[11,"is_stop_sign","","",49,[[]]],[11,"is_traffic_signal","","",49,[[]]],[11,"is_light_rail","","",49,[[["map",3]]]],[11,"is_private","","",49,[[["map",3]]]],[11,"is_footway","","",49,[[["map",3]]]],[11,"is_cycleway","","",49,[[["map",3]]]],[11,"get_incoming_lanes","","",49,[[["map",3],["pathconstraints",4]],[["vec",3],["laneid",3]]]],[11,"get_outgoing_lanes","","Strict for bikes. If there are bike lanes, not allowed to …",49,[[["map",3],["pathconstraints",4]],[["vec",3],["laneid",3]]]],[11,"get_zorder","","",49,[[["map",3]]]],[11,"get_rank","","",49,[[["map",3]],["roadrank",4]]],[11,"get_roads_sorted_by_incoming_angle","","",49,[[["vec",3]],[["vec",3],["roadid",3]]]],[11,"get_sorted_incoming_roads","","Return all incoming roads to an intersection, sorted by …",49,[[["map",3]],[["vec",3],["roadid",3]]]],[11,"some_outgoing_road","","",49,[[["map",3]],[["option",4],["directedroadid",3]]]],[11,"some_incoming_road","","",49,[[["map",3]],[["option",4],["directedroadid",3]]]],[11,"name","","",49,[[["option",4],["map",3],["string",3]],["string",3]]],[0,"lane","map_model::objects","",null,null],[17,"PARKING_LOT_SPOT_LENGTH","map_model::objects::lane","From some manually audited cases in Seattle, the length …",null,null],[3,"LaneID","","",null,null],[12,"0","","",50,null],[4,"LaneType","","",null,null],[13,"Driving","","",51,null],[13,"Parking","","",51,null],[13,"Sidewalk","","",51,null],[13,"Shoulder","","",51,null],[13,"Biking","","",51,null],[13,"Bus","","",51,null],[13,"SharedLeftTurn","","",51,null],[13,"Construction","","",51,null],[13,"LightRail","","",51,null],[11,"is_for_moving_vehicles","","",51,[[]]],[11,"supports_any_movement","","",51,[[]]],[11,"describe","","",51,[[]]],[11,"short_name","","",51,[[]]],[3,"Lane","","A road segment is broken down into individual lanes, …",null,null],[12,"id","","",52,null],[12,"parent","","",52,null],[12,"lane_type","","",52,null],[12,"lane_center_pts","","",52,null],[12,"width","","",52,null],[12,"src_i","","",52,null],[12,"dst_i","","",52,null],[12,"bus_stops","","Meaningless order",52,null],[12,"driving_blackhole","","{Cars, bikes} trying to start or end here might not be …",52,null],[12,"biking_blackhole","","",52,null],[11,"first_pt","","",52,[[],["pt2d",3]]],[11,"last_pt","","",52,[[],["pt2d",3]]],[11,"first_line","","",52,[[],["line",3]]],[11,"last_line","","",52,[[],["line",3]]],[11,"endpoint","","",52,[[["intersectionid",3]],["pt2d",3]]],[11,"end_line","","pt2 will be endpoint",52,[[["intersectionid",3]],["line",3]]],[11,"dist_along_of_point","","",52,[[["pt2d",3]],[["option",4],["distance",3]]]],[11,"length","","",52,[[],["distance",3]]],[11,"intersections","","",52,[[],[["intersectionid",3],["vec",3]]]],[11,"number_parking_spots","","",52,[[["mapconfig",3]]]],[11,"is_driving","","",52,[[]]],[11,"is_biking","","",52,[[]]],[11,"is_bus","","",52,[[]]],[11,"is_walkable","","",52,[[]]],[11,"is_sidewalk","","",52,[[]]],[11,"is_shoulder","","",52,[[]]],[11,"is_parking","","",52,[[]]],[11,"is_light_rail","","",52,[[]]],[11,"get_directed_parent","","",52,[[["map",3]],["directedroadid",3]]],[11,"get_turn_restrictions","","",52,[[["road",3]],[["btreeset",3],["option",4]]]],[11,"trace_around_block","","Starting from this lane, follow the lane\'s left edge to …",52,[[["map",3]],["option",4]]],[0,"parking_lot","map_model::objects","",null,null],[3,"ParkingLotID","map_model::objects::parking_lot","",null,null],[12,"0","","",53,null],[3,"ParkingLot","","Parking lots have some fixed capacity for cars, and are …",null,null],[12,"id","","",54,null],[12,"polygon","","",54,null],[12,"aisles","","",54,null],[12,"osm_id","","",54,null],[12,"spots","","The middle of the \\\"T\\\", pointing towards the parking aisle",54,null],[12,"extra_spots","","If we can\'t render all spots (maybe a lot with no aisles …",54,null],[12,"driveway_line","","Goes from the lot to the driving lane",54,null],[12,"driving_pos","","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …",54,null],[12,"sidewalk_line","","Lot to sidewalk",54,null],[12,"sidewalk_pos","","",54,null],[11,"capacity","","",54,[[]]],[0,"road","map_model::objects","",null,null],[3,"RoadID","map_model::objects::road","",null,null],[12,"0","","",55,null],[4,"Direction","","",null,null],[13,"Fwd","","",56,null],[13,"Back","","",56,null],[11,"opposite","","",56,[[],["direction",4]]],[3,"DirectedRoadID","","",null,null],[12,"id","","",57,null],[12,"dir","","",57,null],[11,"src_i","","",57,[[["map",3]],["intersectionid",3]]],[11,"dst_i","","",57,[[["map",3]],["intersectionid",3]]],[11,"lanes","","Strict for bikes. If there are bike lanes, not allowed to …",57,[[["map",3],["pathconstraints",4]],[["vec",3],["laneid",3]]]],[3,"Road","","A Road represents a segment between exactly two …",null,null],[12,"id","","",58,null],[12,"osm_tags","","",58,null],[12,"turn_restrictions","","self is \'from\'",58,null],[12,"complicated_turn_restrictions","","self is \'from\'. (via, to). Only BanTurns.",58,null],[12,"orig_id","","",58,null],[12,"speed_limit","","",58,null],[12,"access_restrictions","","",58,null],[12,"zorder","","",58,null],[12,"lanes_ltr","","Invariant: A road must contain at least one child",58,null],[12,"center_pts","","The physical center of the road, including sidewalks, …",58,null],[12,"src_i","","",58,null],[12,"dst_i","","",58,null],[11,"lanes_ltr","","Returns all lanes from the left side of the road to …",58,[[],["vec",3]]],[11,"get_left_side","","",58,[[["map",3]],["polyline",3]]],[11,"offset","","Counting from the left side of the road",58,[[["laneid",3]]]],[11,"dir","","",58,[[["laneid",3]],["direction",4]]],[11,"parking_to_driving","","",58,[[["map",3],["laneid",3]],[["laneid",3],["option",4]]]],[11,"speed_limit_from_osm","","",58,[[],["speed",3]]],[11,"find_closest_lane","","Includes off-side",58,[[["fn",8],["map",3],["laneid",3]],[["laneid",3],["option",4]]]],[11,"all_lanes","","",58,[[],[["vec",3],["laneid",3]]]],[11,"get_dir_change_pl","","This is the FIRST yellow line where the direction of the …",58,[[["map",3]],["polyline",3]]],[11,"get_half_width","","",58,[[["map",3]],["distance",3]]],[11,"get_thick_polygon","","",58,[[["map",3]],["polygon",3]]],[11,"get_name","","",58,[[["option",4],["string",3]],["string",3]]],[11,"get_rank","","",58,[[],["roadrank",4]]],[11,"get_detailed_rank","","",58,[[]]],[11,"all_bus_stops","","",58,[[["map",3]],[["vec",3],["busstopid",3]]]],[11,"percent_incline","","Returns [-1.0, 1.0] theoretically, but in practice, about …",58,[[["map",3]]]],[11,"is_light_rail","","",58,[[]]],[11,"is_footway","","",58,[[]]],[11,"is_service","","",58,[[]]],[11,"is_cycleway","","",58,[[]]],[11,"common_endpt","","",58,[[["road",3]],["intersectionid",3]]],[11,"is_private","","",58,[[]]],[11,"access_restrictions_from_osm","","",58,[[],["accessrestrictions",3]]],[11,"get_zone","","",58,[[["map",3]],[["option",4],["zone",3]]]],[11,"is_extremely_short","","Many roads wind up with almost no length, due to their …",58,[[]]],[11,"children_forwards","","These are ordered from closest to center lane (left-most …",58,[[],["vec",3]]],[11,"children_backwards","","",58,[[],["vec",3]]],[11,"dir_and_offset","","lane must belong to this road. Offset 0 is the centermost …",58,[[["laneid",3]]]],[11,"children","","",58,[[["direction",4]],["vec",3]]],[11,"incoming_lanes","","Returns lanes from the \\\"center\\\" going out",58,[[["intersectionid",3]],["vec",3]]],[11,"outgoing_lanes","","Returns lanes from the \\\"center\\\" going out",58,[[["intersectionid",3]],["vec",3]]],[0,"stop_signs","map_model::objects","",null,null],[3,"ControlStopSign","map_model::objects::stop_signs","",null,null],[12,"id","","",59,null],[12,"roads","","",59,null],[3,"RoadWithStopSign","","",null,null],[12,"lane_closest_to_edge","","",60,null],[12,"must_stop","","",60,null],[11,"new","","",59,[[["map",3],["intersectionid",3]],["controlstopsign",3]]],[11,"get_priority","","Get the priority of a turn according to the stop sign -- …",59,[[["map",3],["turnid",3]],["turnpriority",4]]],[11,"flip_sign","","",59,[[["roadid",3]]]],[0,"traffic_signals","map_model::objects","",null,null],[17,"CROSSWALK_PACE","map_model::objects::traffic_signals","",null,null],[3,"ControlTrafficSignal","","A traffic signal consists of a sequence of Stages that …",null,null],[12,"id","","",61,null],[12,"stages","","",61,null],[12,"offset","","",61,null],[12,"movements","","",61,null],[3,"Stage","","",null,null],[12,"protected_movements","","",62,null],[12,"yield_movements","","",62,null],[12,"stage_type","","",62,null],[4,"StageType","","",null,null],[13,"Fixed","","",63,null],[13,"Variable","","Minimum is the minimum duration, 0 allows cycle to be …",63,null],[11,"simple_duration","","",63,[[],["duration",3]]],[11,"new","","",61,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[11,"validating_new","","Only call this variant while importing the map, to …",61,[[["map",3],["intersectionid",3]],["controltrafficsignal",3]]],[11,"get_possible_policies","","",61,[[["map",3],["intersectionid",3]],["vec",3]]],[11,"get_min_crossing_time","","",61,[[],["duration",3]]],[11,"validate","","",61,[[],["result",6]]],[11,"convert_to_ped_scramble","","Move crosswalks from stages, adding them to an all-walk …",61,[[]]],[11,"convert_to_ped_scramble_without_promotion","","Move crosswalks from stages, adding them to an all-walk …",61,[[]]],[11,"internal_convert_to_ped_scramble","","",61,[[]]],[11,"adjust_major_minor_timing","","Modifies the fixed timing of all stages, applying either …",61,[[["map",3],["duration",3]],["result",6]]],[11,"turn_to_movement","","",61,[[["turnid",3]],["movementid",3]]],[11,"missing_turns","","",61,[[],[["btreeset",3],["movementid",3]]]],[11,"compressed_id","","",61,[[["turnid",3]],["compressedmovementid",3]]],[11,"simple_cycle_duration","","How long a full cycle of the signal lasts, assuming no …",61,[[],["duration",3]]],[11,"new","","",62,[[],["stage",3]]],[11,"could_be_protected","","",62,[[["btreemap",3],["movementid",3]]]],[11,"get_priority_of_turn","","",62,[[["controltrafficsignal",3],["turnid",3]],["turnpriority",4]]],[11,"get_priority_of_movement","","",62,[[["movementid",3]],["turnpriority",4]]],[11,"edit_movement","","",62,[[["movement",3],["turnpriority",4]]]],[11,"enforce_minimum_crosswalk_time","","",62,[[["movement",3]]]],[11,"max_crosswalk_time","","",62,[[["btreemap",3]],[["option",4],["duration",3]]]],[11,"export","","",61,[[["map",3]],["trafficsignal",3]]],[11,"import","","",61,[[["intersectionid",3],["map",3],["trafficsignal",3]],[["controltrafficsignal",3],["result",6]]]],[5,"export_movement","","",null,[[["map",3],["movementid",3]],["turn",3]]],[5,"import_movement","","",null,[[["map",3],["turn",3]],[["result",6],["movementid",3]]]],[5,"find_r","","",null,[[["map",3],["directedroad",3]],[["directedroadid",3],["result",6]]]],[0,"turn","map_model::objects","",null,null],[3,"TurnID","map_model::objects::turn","Turns are uniquely identified by their (src, dst) lanes …",null,null],[12,"parent","","",64,null],[12,"src","","src and dst must both belong to parent. No guarantees …",64,null],[12,"dst","","",64,null],[4,"TurnType","","",null,null],[13,"Crosswalk","","",65,null],[13,"SharedSidewalkCorner","","",65,null],[13,"Straight","","",65,null],[13,"Right","","",65,null],[13,"Left","","",65,null],[13,"UTurn","","",65,null],[4,"TurnPriority","","",null,null],[13,"Banned","","For stop signs: Can\'t currently specify this! For traffic …",66,null],[13,"Yield","","For stop signs: cars have to stop before doing this turn, …",66,null],[13,"Protected","","For stop signs: cars can do this without stopping. These …",66,null],[3,"Turn","","A Turn leads from the end of one Lane to the start of …",null,null],[12,"id","","",67,null],[12,"turn_type","","",67,null],[12,"geom","","",67,null],[12,"other_crosswalk_ids","","Empty except for TurnType::Crosswalk. Usually just one …",67,null],[11,"conflicts_with","","",67,[[["turn",3]]]],[11,"angle","","",67,[[],["angle",3]]],[11,"between_sidewalks","","",67,[[]]],[11,"penalty","","penalties for (lane types, lane-changing, slow lane)",67,[[["map",3]]]],[3,"MovementID","","One road usually has 4 crosswalks, each a singleton …",null,null],[12,"from","","",68,null],[12,"to","","",68,null],[12,"parent","","",68,null],[12,"crosswalk","","",68,null],[3,"CompressedMovementID","","This is cheaper to store than a MovementID. It simply …",null,null],[12,"i","","",69,null],[12,"idx","","",69,null],[3,"Movement","","A Movement groups all turns from one road to another, …",null,null],[12,"id","","",70,null],[12,"turn_type","","",70,null],[12,"members","","",70,null],[12,"geom","","The \\\"overall\\\" path of movement, aka, an \\\"average\\\" of the …",70,null],[12,"angle","","",70,null],[11,"for_i","","",70,[[["intersectionid",3],["map",3]],[["btreemap",3],["result",6]]]],[11,"src_center_and_width","","Polyline points FROM intersection",70,[[["map",3]]]],[11,"conflicts_with","","",70,[[["movement",3]]]],[5,"movement_geom","","",null,[[["directedroadid",3],["polyline",3],["vec",3]],[["polyline",3],["result",6]]]],[0,"zone","map_model::objects","Zones and AccessRestrictions are used to model things …",null,null],[3,"AccessRestrictions","map_model::objects::zone","",null,null],[12,"allow_through_traffic","","",71,null],[12,"cap_vehicles_per_hour","","",71,null],[11,"new","","",71,[[],["accessrestrictions",3]]],[3,"Zone","","A contiguous set of roads with access restrictions. This …",null,null],[12,"members","","",72,null],[12,"borders","","",72,null],[12,"restrictions","","",72,null],[11,"make_all","","",72,[[["map",3]],[["vec",3],["zone",3]]]],[5,"floodfill","","",null,[[["map",3],["roadid",3]],["zone",3]]],[0,"osm","map_model","Useful utilities for working with OpenStreetMap.",null,null],[17,"NAME","map_model::osm","",null,null],[17,"HIGHWAY","","",null,null],[17,"MAXSPEED","","",null,null],[17,"PARKING_RIGHT","","",null,null],[17,"PARKING_LEFT","","",null,null],[17,"PARKING_BOTH","","",null,null],[17,"SIDEWALK","","",null,null],[17,"OSM_WAY_ID","","",null,null],[17,"OSM_REL_ID","","",null,null],[17,"ENDPT_FWD","","",null,null],[17,"ENDPT_BACK","","",null,null],[17,"INFERRED_PARKING","","",null,null],[17,"INFERRED_SIDEWALKS","","",null,null],[4,"RoadRank","","",null,null],[13,"Local","","",73,null],[13,"Arterial","","",73,null],[13,"Highway","","",73,null],[11,"from_highway","","",73,[[],["roadrank",4]]],[11,"detailed_from_highway","","Larger number means a bigger road, according to …",73,[[]]],[3,"NodeID","","",null,null],[12,"0","","",74,null],[3,"WayID","","",null,null],[12,"0","","",75,null],[3,"RelationID","","",null,null],[12,"0","","",76,null],[4,"OsmID","","",null,null],[13,"Node","","",77,null],[13,"Way","","",77,null],[13,"Relation","","",77,null],[11,"inner","","",77,[[]]],[0,"pathfind","map_model","Everything related to pathfinding through a map for …",null,null],[0,"ch","map_model::pathfind","Uses https://github.com/easbar/fast_paths. Slower …",null,null],[3,"ContractionHierarchyPathfinder","map_model::pathfind::ch","",null,null],[12,"car_graph","","",78,null],[12,"bike_graph","","",78,null],[12,"bus_graph","","",78,null],[12,"train_graph","","",78,null],[12,"walking_graph","","",78,null],[12,"walking_with_transit_graph","","",78,null],[11,"new","","",78,[[["map",3],["timer",3]],["contractionhierarchypathfinder",3]]],[11,"simple_pathfind","","",78,[[["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"simple_walking_path","","",78,[[["map",3],["pathrequest",3]],[["option",4],["vec",3]]]],[11,"should_use_transit","","",78,[[["map",3],["position",3]],["option",4]]],[11,"apply_edits","","",78,[[["map",3],["timer",3]]]],[0,"dijkstra","map_model::pathfind","Pathfinding without needing to build a separate …",null,null],[5,"simple_pathfind","map_model::pathfind::dijkstra","",null,[[["routingparams",3],["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[5,"build_graph_for_vehicles","","",null,[[["map",3],["pathconstraints",4]],[["laneid",3],["turnid",3],["digraphmap",6]]]],[5,"pathfind_avoiding_lanes","","",null,[[["pathrequest",3],["map",3],["btreeset",3],["laneid",3]],[["option",4],["path",3]]]],[5,"calc_path","","",null,[[["laneid",3],["pathrequest",3],["turnid",3],["routingparams",3],["map",3],["digraphmap",6]],[["option",4],["path",3]]]],[5,"build_graph_for_pedestrians","","",null,[[["map",3]],[["digraphmap",6],["walkingnode",4]]]],[5,"simple_walking_path","","",null,[[["map",3],["pathrequest",3]],[["option",4],["vec",3]]]],[0,"node_map","map_model::pathfind","Some helpers for working with fast_paths.",null,null],[3,"NodeMap","map_model::pathfind::node_map","A bidirectional mapping between fast_paths NodeId and …",null,null],[12,"node_to_id","","",79,null],[12,"id_to_node","","",79,null],[11,"new","","",79,[[],["nodemap",3]]],[11,"get_or_insert","","",79,[[],["nodeid",6]]],[11,"get","","",79,[[],["nodeid",6]]],[11,"translate","","",79,[[["shortestpath",3]],["vec",3]]],[3,"InnerNodeMap","","",null,null],[12,"id_to_node","","",80,null],[5,"deserialize_nodemap","","",null,[[["deserializer",8]],[["result",4],["nodemap",3]]]],[0,"pathfinder","map_model::pathfind","",null,null],[4,"Pathfinder","map_model::pathfind::pathfinder","Most of the time, prefer using the faster contraction …",null,null],[13,"Dijkstra","","",81,null],[13,"CH","","",81,null],[11,"pathfind","","Finds a path from a start to an end for a certain type of …",81,[[["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"pathfind_with_params","","Finds a path from a start to an end for a certain type of …",81,[[["routingparams",3],["map",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"pathfind_avoiding_lanes","","Note this is a slower implementation, never using …",81,[[["pathrequest",3],["map",3],["btreeset",3],["laneid",3]],[["option",4],["path",3]]]],[11,"should_use_transit","","",81,[[["map",3],["position",3]],["option",4]]],[11,"apply_edits","","",81,[[["map",3],["timer",3]]]],[0,"uber_turns","map_model::pathfind","To deal with complicated intersections and short roads in …",null,null],[3,"IntersectionCluster","map_model::pathfind::uber_turns","This only applies to VehiclePathfinder; walking through …",null,null],[12,"members","","",82,null],[12,"uber_turns","","",82,null],[3,"UberTurn","","",null,null],[12,"path","","",83,null],[11,"find_all","","",82,[[["map",3]],[["vec",3],["intersectioncluster",3]]]],[11,"new","","(legal, illegal)",82,[[["btreeset",3],["intersectionid",3],["map",3]]]],[11,"autodetect","","Find all other traffic signals \\\"close\\\" to one. Ignore …",82,[[["intersectionid",3],["map",3]],[["btreeset",3],["option",4]]]],[5,"flood","","",null,[[["map",3],["turnid",3],["btreeset",3]],[["uberturn",3],["vec",3]]]],[5,"trace_back","","",null,[[["turnid",3],["btreemap",3]],[["vec",3],["turnid",3]]]],[11,"entry","","",83,[[],["laneid",3]]],[11,"exit","","",83,[[],["laneid",3]]],[11,"geom","","",83,[[["map",3]],["polyline",3]]],[3,"UberTurnGroup","","",null,null],[12,"from","","",84,null],[12,"to","","",84,null],[12,"members","","",84,null],[12,"geom","","",84,null],[11,"uber_turn_groups","","",82,[[["map",3]],[["uberturngroup",3],["vec",3]]]],[11,"src_center_and_width","","Polyline points FROM intersection",84,[[["map",3]]]],[11,"angle","","",84,[[],["angle",3]]],[5,"group_geom","","",null,[[["vec",3],["polyline",3]],["polyline",3]]],[0,"vehicles","map_model::pathfind","Pathfinding for cars, bikes, buses, and trains using …",null,null],[3,"VehiclePathfinder","map_model::pathfind::vehicles","",null,null],[12,"graph","","",85,null],[12,"nodes","","",85,null],[12,"uber_turns","","",85,null],[12,"constraints","","",85,null],[12,"path_calc","","",85,null],[4,"Node","","",null,null],[13,"Lane","","",86,null],[13,"UberTurn","","",86,null],[11,"new","","",85,[[["vehiclepathfinder",3],["pathconstraints",4],["map",3],["option",4]],["vehiclepathfinder",3]]],[11,"pathfind","","",85,[[["map",3],["pathrequest",3]],["option",4]]],[11,"apply_edits","","",85,[[["map",3]]]],[5,"make_input_graph","","",null,[[["nodemap",3],["pathconstraints",4],["map",3],["vec",3]],["inputgraph",3]]],[5,"vehicle_cost","","Different unit based on constraints.",null,[[["turn",3],["pathconstraints",4],["lane",3],["map",3],["routingparams",3]]]],[5,"round","","",null,[[]]],[0,"walking","map_model::pathfind","Pathfinding for pedestrians using contraction …",null,null],[3,"SidewalkPathfinder","map_model::pathfind::walking","",null,null],[12,"graph","","",87,null],[12,"nodes","","",87,null],[12,"use_transit","","",87,null],[12,"path_calc","","",87,null],[4,"WalkingNode","","",null,null],[13,"SidewalkEndpoint","","false is src_i, true is dst_i",3,null],[13,"RideBus","","",3,null],[13,"LeaveMap","","",3,null],[11,"closest","map_model::connectivity","",3,[[["map",3],["position",3]],["walkingnode",4]]],[11,"end_transit","","",3,[[["map",3],["position",3]],["walkingnode",4]]],[11,"new","map_model::pathfind::walking","",87,[[["map",3],["vehiclepathfinder",3]],["sidewalkpathfinder",3]]],[11,"apply_edits","","",87,[[["map",3],["vehiclepathfinder",3]]]],[11,"pathfind","","Returns the raw nodes",87,[[["map",3],["pathrequest",3]],[["option",4],["vec",3]]]],[11,"should_use_transit","","Attempt the pathfinding and see if we should ride a bus. …",87,[[["map",3],["position",3]],["option",4]]],[5,"make_input_graph","","",null,[[["vehiclepathfinder",3],["nodemap",3],["map",3]],["inputgraph",3]]],[5,"transit_input_graph","","",null,[[["vehiclepathfinder",3],["nodemap",3],["map",3],["inputgraph",3]]]],[5,"walking_cost","","The cost is time in seconds, rounded to a usize",null,[[["distance",3]]]],[5,"walking_path_to_steps","","",null,[[["map",3],["walkingnode",4],["vec",3]],[["vec",3],["pathstep",4]]]],[5,"one_step_walking_path","","",null,[[["map",3],["pathrequest",3]],["path",3]]],[4,"PathStep","map_model::pathfind","",null,null],[13,"Lane","","Original direction",88,null],[13,"ContraflowLane","","Sidewalks only!",88,null],[13,"Turn","","",88,null],[11,"as_traversable","","",88,[[],["traversable",4]]],[11,"as_lane","","",88,[[],["laneid",3]]],[11,"as_turn","","",88,[[],["turnid",3]]],[11,"exact_slice","","",88,[[["map",3],["option",4],["distance",3]],[["polyline",3],["result",6]]]],[3,"Path","","",null,null],[12,"steps","","",89,null],[12,"orig_req","","",89,null],[12,"total_length","","",89,null],[12,"crossed_so_far","","",89,null],[12,"uber_turns","","",89,null],[12,"currently_inside_ut","","",89,null],[11,"new","","",89,[[["vec",3],["vec",3],["map",3],["pathstep",4],["uberturn",3],["pathrequest",3]],["path",3]]],[11,"dist_crossed_from_step","","Once we finish this PathStep, how much distance will be …",89,[[["map",3],["pathstep",4]],["distance",3]]],[11,"one_step","","",89,[[["map",3],["pathrequest",3]],["path",3]]],[11,"get_req","","The original PathRequest used to produce this path. If …",89,[[],["pathrequest",3]]],[11,"crossed_so_far","","",89,[[],["distance",3]]],[11,"total_length","","",89,[[],["distance",3]]],[11,"percent_dist_crossed","","",89,[[]]],[11,"is_empty","","",89,[[]]],[11,"is_last_step","","",89,[[]]],[11,"isnt_last_step","","",89,[[]]],[11,"currently_inside_ut","","",89,[[],["option",4]]],[11,"about_to_start_ut","","",89,[[],[["uberturn",3],["option",4]]]],[11,"shift","","",89,[[["map",3]],["pathstep",4]]],[11,"add","","",89,[[["map",3],["pathstep",4]]]],[11,"is_upcoming_uber_turn_component","","",89,[[["turnid",3]]]],[11,"modify_step","","Trusting the caller to do this in valid ways.",89,[[["map",3],["pathstep",4]]]],[11,"current_step","","",89,[[],["pathstep",4]]],[11,"next_step","","",89,[[],["pathstep",4]]],[11,"maybe_next_step","","",89,[[],[["option",4],["pathstep",4]]]],[11,"last_step","","",89,[[],["pathstep",4]]],[11,"trace","","Traces along the path from its originally requested …",89,[[["map",3]],[["option",4],["polyline",3]]]],[11,"trace_from_start","","Traces along the path from a specified distance along the …",89,[[["map",3],["distance",3]],[["option",4],["polyline",3]]]],[11,"get_steps","","",89,[[],["vecdeque",3]]],[11,"estimate_duration","","Estimate how long following the path will take in the …",89,[[["speed",3],["pathconstraints",4],["map",3],["option",4]],["duration",3]]],[4,"PathConstraints","","Who\'s asking for a path?",null,null],[13,"Pedestrian","","",90,null],[13,"Car","","",90,null],[13,"Bike","","",90,null],[13,"Bus","","",90,null],[13,"Train","","",90,null],[11,"all","","",90,[[],[["vec",3],["pathconstraints",4]]]],[11,"from_lt","","Not bijective, but this is the best guess of user intent",90,[[["lanetype",4]],["pathconstraints",4]]],[11,"can_use","","",90,[[["lane",3],["map",3]]]],[11,"filter_lanes","","Strict for bikes. If there are bike lanes, not allowed to …",90,[[["map",3],["vec",3],["laneid",3]],[["vec",3],["laneid",3]]]],[3,"PathRequest","","",null,null],[12,"start","","",91,null],[12,"end","","",91,null],[12,"constraints","","",91,null],[11,"between_buildings","","Determines the start and end position to travel between …",91,[[["map",3],["pathconstraints",4],["buildingid",3]],[["option",4],["pathrequest",3]]]],[5,"validate_continuity","","",null,[[["map",3],["vec",3]]]],[5,"validate_restrictions","","",null,[[["map",3],["vec",3]]]],[5,"validate_zones","","",null,[[["map",3],["vec",3],["pathrequest",3]]]],[5,"zone_cost","","Heavily penalize crossing into an access-restricted zone …",null,[[["map",3],["turn",3],["pathconstraints",4]]]],[3,"RoutingParams","","Tuneable parameters for all types of routing.",null,null],[12,"unprotected_turn_penalty","","",92,null],[12,"bike_lane_penalty","","",92,null],[12,"bus_lane_penalty","","",92,null],[12,"driving_lane_penalty","","",92,null],[11,"default","","",92,[[],["routingparams",3]]],[0,"raw","map_model","The convert_osm crate produces a RawMap from OSM and …",null,null],[3,"RawMap","map_model::raw","",null,null],[12,"name","","",93,null],[12,"roads","","",93,null],[12,"intersections","","",93,null],[12,"buildings","","",93,null],[12,"bus_routes","","",93,null],[12,"areas","","",93,null],[12,"parking_lots","","",93,null],[12,"parking_aisles","","",93,null],[12,"boundary_polygon","","",93,null],[12,"gps_bounds","","",93,null],[12,"config","","",93,null],[3,"OriginalRoad","","A way to refer to roads across many maps and over time. …",null,null],[12,"osm_way_id","","",94,null],[12,"i1","","",94,null],[12,"i2","","",94,null],[11,"new","","",94,[[],["originalroad",3]]],[11,"to_string_code","","Prints the OriginalRoad in a way that can be copied to …",94,[[],["string",3]]],[11,"common_endpt","","",94,[[["originalroad",3]],["nodeid",3]]],[11,"blank","","",93,[[["mapname",3]],["rawmap",3]]],[11,"roads_per_intersection","","",93,[[["nodeid",3]],[["vec",3],["originalroad",3]]]],[11,"new_osm_node_id","","",93,[[],["nodeid",3]]],[11,"new_osm_way_id","","",93,[[],["wayid",3]]],[11,"preview_intersection","","(Intersection polygon, polygons for roads, list of …",93,[[["nodeid",3]]]],[11,"trimmed_road_geometry","","Generate the trimmed PolyLine for a single RawRoad by …",93,[[["originalroad",3]],[["option",4],["polyline",3]]]],[11,"save","","",93,[[]]],[11,"get_city_name","","",93,[[],["cityname",3]]],[11,"can_delete_intersection","","",93,[[["nodeid",3]]]],[11,"delete_intersection","","",93,[[["nodeid",3]]]],[11,"move_intersection","","",93,[[["nodeid",3],["pt2d",3]],[["vec",3],["option",4]]]],[11,"closest_intersection","","",93,[[["pt2d",3]],["nodeid",3]]],[11,"path_dist_to","","",93,[[["nodeid",3]],[["option",4],["distance",3]]]],[11,"merge_short_road","","(the surviving intersection, the deleted intersection, …",93,[[["originalroad",3]],["result",6]]],[3,"RawRoad","","",null,null],[12,"center_points","","This is effectively a PolyLine, except there\'s a case …",95,null],[12,"osm_tags","","",95,null],[12,"turn_restrictions","","",95,null],[12,"complicated_turn_restrictions","","(via, to). For turn restrictions where \'via\' is an entire …",95,null],[11,"get_geometry","","Returns the corrected center and total width",95,[[["mapconfig",3],["originalroad",3]],["result",6]]],[11,"is_light_rail","","",95,[[]]],[11,"is_footway","","",95,[[]]],[11,"is_service","","",95,[[]]],[3,"RawIntersection","","",null,null],[12,"point","","Represents the original place where OSM center-lines …",96,null],[12,"intersection_type","","",96,null],[12,"elevation","","",96,null],[3,"RawBuilding","","",null,null],[12,"polygon","","",97,null],[12,"osm_tags","","",97,null],[12,"public_garage_name","","",97,null],[12,"num_parking_spots","","",97,null],[12,"amenities","","",97,null],[3,"RawArea","","",null,null],[12,"area_type","","",98,null],[12,"polygon","","",98,null],[12,"osm_tags","","",98,null],[12,"osm_id","","",98,null],[3,"RawParkingLot","","",null,null],[12,"osm_id","","",99,null],[12,"polygon","","",99,null],[12,"osm_tags","","",99,null],[4,"RestrictionType","","",null,null],[13,"BanTurns","","",100,null],[13,"OnlyAllowTurns","","",100,null],[3,"TurnRestriction","","",null,null],[12,"0","","",101,null],[12,"1","","",101,null],[12,"2","","",101,null],[11,"new","","",100,[[],[["restrictiontype",4],["option",4]]]],[3,"RawBusRoute","","",null,null],[12,"full_name","","",102,null],[12,"short_name","","",102,null],[12,"osm_rel_id","","",102,null],[12,"gtfs_trip_marker","","",102,null],[12,"is_bus","","If not, light rail",102,null],[12,"stops","","",102,null],[12,"border_start","","",102,null],[12,"border_end","","",102,null],[12,"all_pts","","This is guaranteed to be in order and contiguous.",102,null],[3,"RawBusStop","","",null,null],[12,"name","","",103,null],[12,"vehicle_pos","","Probably not an intersection, but this type is more …",103,null],[12,"matched_road","","Guaranteed to be filled out when RawMap is fully written.",103,null],[12,"ped_pos","","If it\'s not explicitly mapped, we\'ll do equiv_pos.",103,null],[0,"traversable","map_model","",null,null],[3,"Position","map_model::traversable","Represents a specific point some distance along a lane.",null,null],[12,"lane","","",104,null],[12,"dist_along","","",104,null],[11,"new","","",104,[[["distance",3],["laneid",3]],["position",3]]],[11,"start","","",104,[[["laneid",3]],["position",3]]],[11,"end","","",104,[[["map",3],["laneid",3]],["position",3]]],[11,"lane","","",104,[[],["laneid",3]]],[11,"dist_along","","",104,[[],["distance",3]]],[11,"pt","","",104,[[["map",3]],["pt2d",3]]],[11,"pt_and_angle","","",104,[[["map",3]]]],[11,"equiv_pos","","",104,[[["map",3],["laneid",3]],["position",3]]],[11,"equiv_pos_for_long_object","","",104,[[["distance",3],["map",3],["laneid",3]],["position",3]]],[11,"min_dist","","",104,[[["map",3],["distance",3]],[["option",4],["position",3]]]],[11,"buffer_dist","","",104,[[["map",3],["distance",3]],[["option",4],["position",3]]]],[4,"Traversable","","Either a lane or a turn, where most movement happens.",null,null],[13,"Lane","","",105,null],[13,"Turn","","",105,null],[11,"as_lane","","",105,[[],["laneid",3]]],[11,"as_turn","","",105,[[],["turnid",3]]],[11,"maybe_turn","","",105,[[],[["option",4],["turnid",3]]]],[11,"maybe_lane","","",105,[[],[["laneid",3],["option",4]]]],[11,"length","","",105,[[["map",3]],["distance",3]]],[11,"dist_along","","",105,[[["map",3],["distance",3]],["result",6]]],[11,"slice","","",105,[[["map",3],["distance",3]],["result",6]]],[11,"exact_slice","","",105,[[["map",3],["distance",3]],["polyline",3]]],[11,"speed_limit","","",105,[[["map",3]],["speed",3]]],[11,"get_zorder","","",105,[[["map",3]]]],[3,"City","map_model","A single city (like Seattle) can be broken down into …",null,null],[12,"name","","",0,null],[12,"boundary","","",0,null],[12,"areas","","",0,null],[12,"districts","","The individual maps",0,null],[4,"EditCmd","","",null,null],[13,"ChangeRoad","","",19,null],[12,"r","map_model::EditCmd","",20,null],[12,"old","","",20,null],[12,"new","","",20,null],[13,"ChangeIntersection","map_model","",19,null],[12,"i","map_model::EditCmd","",21,null],[12,"new","","",21,null],[12,"old","","",21,null],[13,"ChangeRouteSchedule","map_model","",19,null],[12,"id","map_model::EditCmd","",22,null],[12,"old","","",22,null],[12,"new","","",22,null],[3,"EditEffects","map_model","",null,null],[12,"changed_roads","","",23,null],[12,"changed_intersections","","",23,null],[12,"added_turns","","",23,null],[12,"deleted_turns","","",23,null],[4,"EditIntersection","","",null,null],[13,"StopSign","","",17,null],[13,"TrafficSignal","","",17,null],[13,"Closed","","",17,null],[3,"EditRoad","","",null,null],[12,"lanes_ltr","","",18,null],[12,"speed_limit","","",18,null],[12,"access_restrictions","","",18,null],[3,"MapEdits","","Represents changes to a map. Note this isn\'t serializable …",null,null],[12,"edits_name","","",16,null],[12,"commands","","A stack, oldest edit is first. The same intersection may …",16,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",16,null],[12,"changed_roads","","Derived from commands, kept up to date by update_derived",16,null],[12,"original_intersections","","",16,null],[12,"changed_routes","","",16,null],[12,"proposal_description","","Some edits are included in the game by default, in …",16,null],[12,"proposal_link","","",16,null],[3,"PermanentMapEdits","","MapEdits are converted to this before serializing. …",null,null],[12,"map_name","","",9,null],[12,"edits_name","","",9,null],[12,"version","","",9,null],[12,"commands","","",9,null],[12,"merge_zones","","If false, adjacent roads with the same AccessRestrictions …",9,null],[12,"proposal_description","","Edits without these are player generated.",9,null],[12,"proposal_link","","The link is optional even for proposals",9,null],[4,"DrivingSide","","",null,null],[13,"Right","","",31,null],[13,"Left","","",31,null],[3,"MapConfig","","",null,null],[12,"driving_side","","If true, driving happens on the right side of the road …",30,null],[12,"bikes_can_use_bus_lanes","","",30,null],[12,"inferred_sidewalks","","If true, roads without explicitly tagged sidewalks may …",30,null],[12,"street_parking_spot_length","","Street parking is divided into spots of this length. 8 …",30,null],[3,"Area","","Areas are just used for drawing.",null,null],[12,"id","","",34,null],[12,"area_type","","",34,null],[12,"polygon","","",34,null],[12,"osm_tags","","",34,null],[12,"osm_id","","The importing process also automatically creates some …",34,null],[3,"AreaID","","",null,null],[12,"0","","",32,null],[4,"AreaType","","",null,null],[13,"Park","","",33,null],[13,"Water","","",33,null],[13,"Island","","",33,null],[13,"MedianStrip","","",33,null],[13,"PedestrianPlaza","","",33,null],[13,"StudyArea","","Not from OSM. A user-specified area to focus on.",33,null],[3,"Amenity","","A business located inside a building.",null,null],[12,"names","","",37,null],[12,"amenity_type","","This is the specific amenity listed in OSM, not the more …",37,null],[12,"osm_tags","","Depending on options while importing, these might be …",37,null],[4,"AmenityType","","Businesses are categorized into one of these types.",null,null],[13,"Groceries","","",42,null],[13,"Food","","",42,null],[13,"Bar","","",42,null],[13,"Medical","","",42,null],[13,"Religious","","",42,null],[13,"Education","","",42,null],[13,"Financial","","",42,null],[13,"PostOffice","","",42,null],[13,"Culture","","",42,null],[13,"Childcare","","",42,null],[13,"Shopping","","",42,null],[3,"Building","","A building has connections to the road and sidewalk, may …",null,null],[12,"id","","",36,null],[12,"polygon","","",36,null],[12,"levels","","",36,null],[12,"address","","",36,null],[12,"name","","",36,null],[12,"orig_id","","",36,null],[12,"label_center","","Where a text label should be centered to have the best …",36,null],[12,"amenities","","",36,null],[12,"bldg_type","","",36,null],[12,"parking","","",36,null],[12,"osm_tags","","Depending on options while importing, these might be …",36,null],[12,"sidewalk_pos","","The building\'s connection for pedestrians is immutable. …",36,null],[12,"driveway_geom","","Goes from building to sidewalk",36,null],[3,"BuildingID","","",null,null],[12,"0","","",35,null],[4,"BuildingType","","",null,null],[13,"Residential","","",39,null],[12,"num_residents","map_model::BuildingType","",40,null],[12,"num_housing_units","","",40,null],[13,"ResidentialCommercial","map_model","An estimated number of residents, workers",39,null],[13,"Commercial","","An estimated number of workers",39,null],[13,"Empty","","",39,null],[3,"NamePerLanguage","","None corresponds to the native name",null,null],[12,"0","","",41,null],[4,"OffstreetParking","","Represent no parking as Private(0, false).",null,null],[13,"PublicGarage","","(Name, spots)",38,null],[13,"Private","","(Spots, explicitly tagged as a garage)",38,null],[3,"BusRoute","","",null,null],[12,"id","","",46,null],[12,"full_name","","",46,null],[12,"short_name","","",46,null],[12,"gtfs_trip_marker","","",46,null],[12,"osm_rel_id","","",46,null],[12,"stops","","",46,null],[12,"start","","May be a border or not. If not, is long enough for buses …",46,null],[12,"end_border","","",46,null],[12,"route_type","","",46,null],[12,"spawn_times","","Non-empty, times in order for one day when a vehicle …",46,null],[12,"orig_spawn_times","","Explicitly store whatever the original was, since this …",46,null],[3,"BusRouteID","","",null,null],[12,"0","","",44,null],[3,"BusStop","","",null,null],[12,"id","","",45,null],[12,"name","","",45,null],[12,"driving_pos","","These may be on different roads entirely, like for light …",45,null],[12,"sidewalk_pos","","",45,null],[12,"is_train_stop","","If it\'s both, train overrides bus",45,null],[3,"BusStopID","","",null,null],[12,"sidewalk","","",43,null],[12,"idx","","As long as this is unique per lane, this value is …",43,null],[3,"Intersection","","An intersection connects roads. Most have >2 roads and …",null,null],[12,"id","","",49,null],[12,"polygon","","This needs to be in clockwise orientation, or later …",49,null],[12,"turns","","",49,null],[12,"elevation","","",49,null],[12,"intersection_type","","",49,null],[12,"orig_id","","",49,null],[12,"incoming_lanes","","Note that a lane may belong to both incoming_lanes and …",49,null],[12,"outgoing_lanes","","",49,null],[12,"roads","","",49,null],[12,"merged","","Was a short road adjacent to this intersection merged?",49,null],[3,"IntersectionID","","",null,null],[12,"0","","",47,null],[4,"IntersectionType","","",null,null],[13,"StopSign","","",48,null],[13,"TrafficSignal","","",48,null],[13,"Border","","",48,null],[13,"Construction","","",48,null],[3,"Lane","","A road segment is broken down into individual lanes, …",null,null],[12,"id","","",52,null],[12,"parent","","",52,null],[12,"lane_type","","",52,null],[12,"lane_center_pts","","",52,null],[12,"width","","",52,null],[12,"src_i","","",52,null],[12,"dst_i","","",52,null],[12,"bus_stops","","Meaningless order",52,null],[12,"driving_blackhole","","{Cars, bikes} trying to start or end here might not be …",52,null],[12,"biking_blackhole","","",52,null],[3,"LaneID","","",null,null],[12,"0","","",50,null],[4,"LaneType","","",null,null],[13,"Driving","","",51,null],[13,"Parking","","",51,null],[13,"Sidewalk","","",51,null],[13,"Shoulder","","",51,null],[13,"Biking","","",51,null],[13,"Bus","","",51,null],[13,"SharedLeftTurn","","",51,null],[13,"Construction","","",51,null],[13,"LightRail","","",51,null],[17,"PARKING_LOT_SPOT_LENGTH","","From some manually audited cases in Seattle, the length …",null,null],[3,"ParkingLot","","Parking lots have some fixed capacity for cars, and are …",null,null],[12,"id","","",54,null],[12,"polygon","","",54,null],[12,"aisles","","",54,null],[12,"osm_id","","",54,null],[12,"spots","","The middle of the \\\"T\\\", pointing towards the parking aisle",54,null],[12,"extra_spots","","If we can\'t render all spots (maybe a lot with no aisles …",54,null],[12,"driveway_line","","Goes from the lot to the driving lane",54,null],[12,"driving_pos","","Guaranteed to be at least 7m (MAX_CAR_LENGTH + a little …",54,null],[12,"sidewalk_line","","Lot to sidewalk",54,null],[12,"sidewalk_pos","","",54,null],[3,"ParkingLotID","","",null,null],[12,"0","","",53,null],[3,"DirectedRoadID","","",null,null],[12,"id","","",57,null],[12,"dir","","",57,null],[4,"Direction","","",null,null],[13,"Fwd","","",56,null],[13,"Back","","",56,null],[3,"Road","","A Road represents a segment between exactly two …",null,null],[12,"id","","",58,null],[12,"osm_tags","","",58,null],[12,"turn_restrictions","","self is \'from\'",58,null],[12,"complicated_turn_restrictions","","self is \'from\'. (via, to). Only BanTurns.",58,null],[12,"orig_id","","",58,null],[12,"speed_limit","","",58,null],[12,"access_restrictions","","",58,null],[12,"zorder","","",58,null],[12,"lanes_ltr","","Invariant: A road must contain at least one child",58,null],[12,"center_pts","","The physical center of the road, including sidewalks, …",58,null],[12,"src_i","","",58,null],[12,"dst_i","","",58,null],[3,"RoadID","","",null,null],[12,"0","","",55,null],[3,"ControlStopSign","","",null,null],[12,"id","","",59,null],[12,"roads","","",59,null],[3,"RoadWithStopSign","","",null,null],[12,"lane_closest_to_edge","","",60,null],[12,"must_stop","","",60,null],[3,"ControlTrafficSignal","","A traffic signal consists of a sequence of Stages that …",null,null],[12,"id","","",61,null],[12,"stages","","",61,null],[12,"offset","","",61,null],[12,"movements","","",61,null],[3,"Stage","","",null,null],[12,"protected_movements","","",62,null],[12,"yield_movements","","",62,null],[12,"stage_type","","",62,null],[4,"StageType","","",null,null],[13,"Fixed","","",63,null],[13,"Variable","","Minimum is the minimum duration, 0 allows cycle to be …",63,null],[3,"CompressedMovementID","","This is cheaper to store than a MovementID. It simply …",null,null],[12,"i","","",69,null],[12,"idx","","",69,null],[3,"Movement","","A Movement groups all turns from one road to another, …",null,null],[12,"id","","",70,null],[12,"turn_type","","",70,null],[12,"members","","",70,null],[12,"geom","","The \\\"overall\\\" path of movement, aka, an \\\"average\\\" of the …",70,null],[12,"angle","","",70,null],[3,"MovementID","","One road usually has 4 crosswalks, each a singleton …",null,null],[12,"from","","",68,null],[12,"to","","",68,null],[12,"parent","","",68,null],[12,"crosswalk","","",68,null],[3,"Turn","","A Turn leads from the end of one Lane to the start of …",null,null],[12,"id","","",67,null],[12,"turn_type","","",67,null],[12,"geom","","",67,null],[12,"other_crosswalk_ids","","Empty except for TurnType::Crosswalk. Usually just one …",67,null],[3,"TurnID","","Turns are uniquely identified by their (src, dst) lanes …",null,null],[12,"parent","","",64,null],[12,"src","","src and dst must both belong to parent. No guarantees …",64,null],[12,"dst","","",64,null],[4,"TurnPriority","","",null,null],[13,"Banned","","For stop signs: Can\'t currently specify this! For traffic …",66,null],[13,"Yield","","For stop signs: cars have to stop before doing this turn, …",66,null],[13,"Protected","","For stop signs: cars can do this without stopping. These …",66,null],[4,"TurnType","","",null,null],[13,"Crosswalk","","",65,null],[13,"SharedSidewalkCorner","","",65,null],[13,"Straight","","",65,null],[13,"Right","","",65,null],[13,"Left","","",65,null],[13,"UTurn","","",65,null],[3,"AccessRestrictions","","",null,null],[12,"allow_through_traffic","","",71,null],[12,"cap_vehicles_per_hour","","",71,null],[3,"Zone","","A contiguous set of roads with access restrictions. This …",null,null],[12,"members","","",72,null],[12,"borders","","",72,null],[12,"restrictions","","",72,null],[3,"IntersectionCluster","","This only applies to VehiclePathfinder; walking through …",null,null],[12,"members","","",82,null],[12,"uber_turns","","",82,null],[3,"UberTurn","","",null,null],[12,"path","","",83,null],[3,"UberTurnGroup","","",null,null],[12,"from","","",84,null],[12,"to","","",84,null],[12,"members","","",84,null],[12,"geom","","",84,null],[3,"Path","","",null,null],[12,"steps","","",89,null],[12,"orig_req","","",89,null],[12,"total_length","","",89,null],[12,"crossed_so_far","","",89,null],[12,"uber_turns","","",89,null],[12,"currently_inside_ut","","",89,null],[4,"PathConstraints","","Who\'s asking for a path?",null,null],[13,"Pedestrian","","",90,null],[13,"Car","","",90,null],[13,"Bike","","",90,null],[13,"Bus","","",90,null],[13,"Train","","",90,null],[3,"PathRequest","","",null,null],[12,"start","","",91,null],[12,"end","","",91,null],[12,"constraints","","",91,null],[4,"PathStep","","",null,null],[13,"Lane","","Original direction",88,null],[13,"ContraflowLane","","Sidewalks only!",88,null],[13,"Turn","","",88,null],[3,"RoutingParams","","Tuneable parameters for all types of routing.",null,null],[12,"unprotected_turn_penalty","","",92,null],[12,"bike_lane_penalty","","",92,null],[12,"bus_lane_penalty","","",92,null],[12,"driving_lane_penalty","","",92,null],[3,"Position","","Represents a specific point some distance along a lane.",null,null],[12,"lane","","",104,null],[12,"dist_along","","",104,null],[4,"Traversable","","Either a lane or a turn, where most movement happens.",null,null],[13,"Lane","","",105,null],[13,"Turn","","",105,null],[17,"NORMAL_LANE_THICKNESS","","",null,null],[17,"SERVICE_ROAD_LANE_THICKNESS","","",null,null],[17,"SIDEWALK_THICKNESS","","",null,null],[17,"SHOULDER_THICKNESS","","",null,null],[3,"Map","","",null,null],[12,"roads","","",106,null],[12,"lanes","","",106,null],[12,"intersections","","",106,null],[12,"turns","","",106,null],[12,"buildings","","",106,null],[12,"bus_stops","","",106,null],[12,"bus_routes","","",106,null],[12,"areas","","",106,null],[12,"parking_lots","","",106,null],[12,"boundary_polygon","","",106,null],[12,"stop_signs","","",106,null],[12,"traffic_signals","","",106,null],[12,"gps_bounds","","",106,null],[12,"bounds","","",106,null],[12,"config","","",106,null],[12,"pathfinder","","",106,null],[12,"pathfinder_dirty","","",106,null],[12,"routing_params","","",106,null],[12,"zones","","",106,null],[12,"name","","",106,null],[12,"edits","","",106,null],[11,"from","map_model::city","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"from","map_model::connectivity::walking","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_owned","","",1,[[]]],[11,"clone_into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"equivalent","","",2,[[]]],[11,"vzip","","",2,[[]]],[11,"from","map_model::connectivity","",3,[[]]],[11,"into","","",3,[[]]],[11,"to_owned","","",3,[[]]],[11,"clone_into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"equivalent","","",3,[[]]],[11,"get_hash","","",3,[[]]],[11,"vzip","","",3,[[]]],[11,"from","map_model::edits::compat","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","map_model::edits::perma","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"vzip","","",10,[[]]],[11,"from","","",12,[[]]],[11,"into","","",12,[[]]],[11,"to_owned","","",12,[[]]],[11,"clone_into","","",12,[[]]],[11,"borrow","","",12,[[]]],[11,"borrow_mut","","",12,[[]]],[11,"try_from","","",12,[[],["result",4]]],[11,"try_into","","",12,[[],["result",4]]],[11,"type_id","","",12,[[],["typeid",3]]],[11,"vzip","","",12,[[]]],[11,"from","map_model::edits","",16,[[]]],[11,"into","","",16,[[]]],[11,"to_owned","","",16,[[]]],[11,"clone_into","","",16,[[]]],[11,"borrow","","",16,[[]]],[11,"borrow_mut","","",16,[[]]],[11,"try_from","","",16,[[],["result",4]]],[11,"try_into","","",16,[[],["result",4]]],[11,"type_id","","",16,[[],["typeid",3]]],[11,"vzip","","",16,[[]]],[11,"from","","",17,[[]]],[11,"into","","",17,[[]]],[11,"to_owned","","",17,[[]]],[11,"clone_into","","",17,[[]]],[11,"borrow","","",17,[[]]],[11,"borrow_mut","","",17,[[]]],[11,"try_from","","",17,[[],["result",4]]],[11,"try_into","","",17,[[],["result",4]]],[11,"type_id","","",17,[[],["typeid",3]]],[11,"vzip","","",17,[[]]],[11,"from","","",18,[[]]],[11,"into","","",18,[[]]],[11,"to_owned","","",18,[[]]],[11,"clone_into","","",18,[[]]],[11,"borrow","","",18,[[]]],[11,"borrow_mut","","",18,[[]]],[11,"try_from","","",18,[[],["result",4]]],[11,"try_into","","",18,[[],["result",4]]],[11,"type_id","","",18,[[],["typeid",3]]],[11,"vzip","","",18,[[]]],[11,"from","","",19,[[]]],[11,"into","","",19,[[]]],[11,"to_owned","","",19,[[]]],[11,"clone_into","","",19,[[]]],[11,"borrow","","",19,[[]]],[11,"borrow_mut","","",19,[[]]],[11,"try_from","","",19,[[],["result",4]]],[11,"try_into","","",19,[[],["result",4]]],[11,"type_id","","",19,[[],["typeid",3]]],[11,"vzip","","",19,[[]]],[11,"from","","",23,[[]]],[11,"into","","",23,[[]]],[11,"borrow","","",23,[[]]],[11,"borrow_mut","","",23,[[]]],[11,"try_from","","",23,[[],["result",4]]],[11,"try_into","","",23,[[],["result",4]]],[11,"type_id","","",23,[[],["typeid",3]]],[11,"vzip","","",23,[[]]],[11,"from","map_model::make::initial::geometry","",24,[[]]],[11,"into","","",24,[[]]],[11,"borrow","","",24,[[]]],[11,"borrow_mut","","",24,[[]]],[11,"try_from","","",24,[[],["result",4]]],[11,"try_into","","",24,[[],["result",4]]],[11,"type_id","","",24,[[],["typeid",3]]],[11,"vzip","","",24,[[]]],[11,"from","map_model::make::initial::lane_specs","",25,[[]]],[11,"into","","",25,[[]]],[11,"borrow","","",25,[[]]],[11,"borrow_mut","","",25,[[]]],[11,"try_from","","",25,[[],["result",4]]],[11,"try_into","","",25,[[],["result",4]]],[11,"type_id","","",25,[[],["typeid",3]]],[11,"vzip","","",25,[[]]],[11,"from","map_model::make::initial","",26,[[]]],[11,"into","","",26,[[]]],[11,"borrow","","",26,[[]]],[11,"borrow_mut","","",26,[[]]],[11,"try_from","","",26,[[],["result",4]]],[11,"try_into","","",26,[[],["result",4]]],[11,"type_id","","",26,[[],["typeid",3]]],[11,"vzip","","",26,[[]]],[11,"from","","",27,[[]]],[11,"into","","",27,[[]]],[11,"borrow","","",27,[[]]],[11,"borrow_mut","","",27,[[]]],[11,"try_from","","",27,[[],["result",4]]],[11,"try_into","","",27,[[],["result",4]]],[11,"type_id","","",27,[[],["typeid",3]]],[11,"vzip","","",27,[[]]],[11,"from","","",28,[[]]],[11,"into","","",28,[[]]],[11,"borrow","","",28,[[]]],[11,"borrow_mut","","",28,[[]]],[11,"try_from","","",28,[[],["result",4]]],[11,"try_into","","",28,[[],["result",4]]],[11,"type_id","","",28,[[],["typeid",3]]],[11,"vzip","","",28,[[]]],[11,"from","map_model::make::transit","",29,[[]]],[11,"into","","",29,[[]]],[11,"borrow","","",29,[[]]],[11,"borrow_mut","","",29,[[]]],[11,"try_from","","",29,[[],["result",4]]],[11,"try_into","","",29,[[],["result",4]]],[11,"type_id","","",29,[[],["typeid",3]]],[11,"vzip","","",29,[[]]],[11,"from","map_model::map","",30,[[]]],[11,"into","","",30,[[]]],[11,"to_owned","","",30,[[]]],[11,"clone_into","","",30,[[]]],[11,"borrow","","",30,[[]]],[11,"borrow_mut","","",30,[[]]],[11,"try_from","","",30,[[],["result",4]]],[11,"try_into","","",30,[[],["result",4]]],[11,"type_id","","",30,[[],["typeid",3]]],[11,"vzip","","",30,[[]]],[11,"from","","",31,[[]]],[11,"into","","",31,[[]]],[11,"to_owned","","",31,[[]]],[11,"clone_into","","",31,[[]]],[11,"borrow","","",31,[[]]],[11,"borrow_mut","","",31,[[]]],[11,"try_from","","",31,[[],["result",4]]],[11,"try_into","","",31,[[],["result",4]]],[11,"type_id","","",31,[[],["typeid",3]]],[11,"vzip","","",31,[[]]],[11,"from","map_model::objects::area","",32,[[]]],[11,"into","","",32,[[]]],[11,"to_owned","","",32,[[]]],[11,"clone_into","","",32,[[]]],[11,"to_string","","",32,[[],["string",3]]],[11,"borrow","","",32,[[]]],[11,"borrow_mut","","",32,[[]]],[11,"try_from","","",32,[[],["result",4]]],[11,"try_into","","",32,[[],["result",4]]],[11,"type_id","","",32,[[],["typeid",3]]],[11,"equivalent","","",32,[[]]],[11,"get_hash","","",32,[[]]],[11,"vzip","","",32,[[]]],[11,"from","","",33,[[]]],[11,"into","","",33,[[]]],[11,"to_owned","","",33,[[]]],[11,"clone_into","","",33,[[]]],[11,"borrow","","",33,[[]]],[11,"borrow_mut","","",33,[[]]],[11,"try_from","","",33,[[],["result",4]]],[11,"try_into","","",33,[[],["result",4]]],[11,"type_id","","",33,[[],["typeid",3]]],[11,"equivalent","","",33,[[]]],[11,"get_hash","","",33,[[]]],[11,"vzip","","",33,[[]]],[11,"from","","",34,[[]]],[11,"into","","",34,[[]]],[11,"borrow","","",34,[[]]],[11,"borrow_mut","","",34,[[]]],[11,"try_from","","",34,[[],["result",4]]],[11,"try_into","","",34,[[],["result",4]]],[11,"type_id","","",34,[[],["typeid",3]]],[11,"vzip","","",34,[[]]],[11,"from","map_model::objects::building","",35,[[]]],[11,"into","","",35,[[]]],[11,"to_owned","","",35,[[]]],[11,"clone_into","","",35,[[]]],[11,"to_string","","",35,[[],["string",3]]],[11,"borrow","","",35,[[]]],[11,"borrow_mut","","",35,[[]]],[11,"try_from","","",35,[[],["result",4]]],[11,"try_into","","",35,[[],["result",4]]],[11,"type_id","","",35,[[],["typeid",3]]],[11,"equivalent","","",35,[[]]],[11,"get_hash","","",35,[[]]],[11,"vzip","","",35,[[]]],[11,"from","","",36,[[]]],[11,"into","","",36,[[]]],[11,"borrow","","",36,[[]]],[11,"borrow_mut","","",36,[[]]],[11,"try_from","","",36,[[],["result",4]]],[11,"try_into","","",36,[[],["result",4]]],[11,"type_id","","",36,[[],["typeid",3]]],[11,"vzip","","",36,[[]]],[11,"from","","",37,[[]]],[11,"into","","",37,[[]]],[11,"to_owned","","",37,[[]]],[11,"clone_into","","",37,[[]]],[11,"borrow","","",37,[[]]],[11,"borrow_mut","","",37,[[]]],[11,"try_from","","",37,[[],["result",4]]],[11,"try_into","","",37,[[],["result",4]]],[11,"type_id","","",37,[[],["typeid",3]]],[11,"vzip","","",37,[[]]],[11,"from","","",38,[[]]],[11,"into","","",38,[[]]],[11,"to_owned","","",38,[[]]],[11,"clone_into","","",38,[[]]],[11,"borrow","","",38,[[]]],[11,"borrow_mut","","",38,[[]]],[11,"try_from","","",38,[[],["result",4]]],[11,"try_into","","",38,[[],["result",4]]],[11,"type_id","","",38,[[],["typeid",3]]],[11,"vzip","","",38,[[]]],[11,"from","","",39,[[]]],[11,"into","","",39,[[]]],[11,"to_owned","","",39,[[]]],[11,"clone_into","","",39,[[]]],[11,"borrow","","",39,[[]]],[11,"borrow_mut","","",39,[[]]],[11,"try_from","","",39,[[],["result",4]]],[11,"try_into","","",39,[[],["result",4]]],[11,"type_id","","",39,[[],["typeid",3]]],[11,"vzip","","",39,[[]]],[11,"from","","",41,[[]]],[11,"into","","",41,[[]]],[11,"to_owned","","",41,[[]]],[11,"clone_into","","",41,[[]]],[11,"borrow","","",41,[[]]],[11,"borrow_mut","","",41,[[]]],[11,"try_from","","",41,[[],["result",4]]],[11,"try_into","","",41,[[],["result",4]]],[11,"type_id","","",41,[[],["typeid",3]]],[11,"equivalent","","",41,[[]]],[11,"vzip","","",41,[[]]],[11,"from","","",42,[[]]],[11,"into","","",42,[[]]],[11,"to_owned","","",42,[[]]],[11,"clone_into","","",42,[[]]],[11,"to_string","","",42,[[],["string",3]]],[11,"borrow","","",42,[[]]],[11,"borrow_mut","","",42,[[]]],[11,"try_from","","",42,[[],["result",4]]],[11,"try_into","","",42,[[],["result",4]]],[11,"type_id","","",42,[[],["typeid",3]]],[11,"equivalent","","",42,[[]]],[11,"vzip","","",42,[[]]],[11,"from","map_model::objects::bus_stop","",43,[[]]],[11,"into","","",43,[[]]],[11,"to_owned","","",43,[[]]],[11,"clone_into","","",43,[[]]],[11,"to_string","","",43,[[],["string",3]]],[11,"borrow","","",43,[[]]],[11,"borrow_mut","","",43,[[]]],[11,"try_from","","",43,[[],["result",4]]],[11,"try_into","","",43,[[],["result",4]]],[11,"type_id","","",43,[[],["typeid",3]]],[11,"equivalent","","",43,[[]]],[11,"get_hash","","",43,[[]]],[11,"vzip","","",43,[[]]],[11,"from","","",44,[[]]],[11,"into","","",44,[[]]],[11,"to_owned","","",44,[[]]],[11,"clone_into","","",44,[[]]],[11,"to_string","","",44,[[],["string",3]]],[11,"borrow","","",44,[[]]],[11,"borrow_mut","","",44,[[]]],[11,"try_from","","",44,[[],["result",4]]],[11,"try_into","","",44,[[],["result",4]]],[11,"type_id","","",44,[[],["typeid",3]]],[11,"equivalent","","",44,[[]]],[11,"get_hash","","",44,[[]]],[11,"vzip","","",44,[[]]],[11,"from","","",45,[[]]],[11,"into","","",45,[[]]],[11,"to_owned","","",45,[[]]],[11,"clone_into","","",45,[[]]],[11,"borrow","","",45,[[]]],[11,"borrow_mut","","",45,[[]]],[11,"try_from","","",45,[[],["result",4]]],[11,"try_into","","",45,[[],["result",4]]],[11,"type_id","","",45,[[],["typeid",3]]],[11,"vzip","","",45,[[]]],[11,"from","","",46,[[]]],[11,"into","","",46,[[]]],[11,"borrow","","",46,[[]]],[11,"borrow_mut","","",46,[[]]],[11,"try_from","","",46,[[],["result",4]]],[11,"try_into","","",46,[[],["result",4]]],[11,"type_id","","",46,[[],["typeid",3]]],[11,"vzip","","",46,[[]]],[11,"from","map_model::objects::intersection","",47,[[]]],[11,"into","","",47,[[]]],[11,"to_owned","","",47,[[]]],[11,"clone_into","","",47,[[]]],[11,"to_string","","",47,[[],["string",3]]],[11,"borrow","","",47,[[]]],[11,"borrow_mut","","",47,[[]]],[11,"try_from","","",47,[[],["result",4]]],[11,"try_into","","",47,[[],["result",4]]],[11,"type_id","","",47,[[],["typeid",3]]],[11,"equivalent","","",47,[[]]],[11,"get_hash","","",47,[[]]],[11,"vzip","","",47,[[]]],[11,"from","","",48,[[]]],[11,"into","","",48,[[]]],[11,"to_owned","","",48,[[]]],[11,"clone_into","","",48,[[]]],[11,"borrow","","",48,[[]]],[11,"borrow_mut","","",48,[[]]],[11,"try_from","","",48,[[],["result",4]]],[11,"try_into","","",48,[[],["result",4]]],[11,"type_id","","",48,[[],["typeid",3]]],[11,"equivalent","","",48,[[]]],[11,"get_hash","","",48,[[]]],[11,"vzip","","",48,[[]]],[11,"from","","",49,[[]]],[11,"into","","",49,[[]]],[11,"borrow","","",49,[[]]],[11,"borrow_mut","","",49,[[]]],[11,"try_from","","",49,[[],["result",4]]],[11,"try_into","","",49,[[],["result",4]]],[11,"type_id","","",49,[[],["typeid",3]]],[11,"vzip","","",49,[[]]],[11,"from","map_model::objects::lane","",50,[[]]],[11,"into","","",50,[[]]],[11,"to_owned","","",50,[[]]],[11,"clone_into","","",50,[[]]],[11,"to_string","","",50,[[],["string",3]]],[11,"borrow","","",50,[[]]],[11,"borrow_mut","","",50,[[]]],[11,"try_from","","",50,[[],["result",4]]],[11,"try_into","","",50,[[],["result",4]]],[11,"type_id","","",50,[[],["typeid",3]]],[11,"equivalent","","",50,[[]]],[11,"get_hash","","",50,[[]]],[11,"vzip","","",50,[[]]],[11,"from","","",51,[[]]],[11,"into","","",51,[[]]],[11,"to_owned","","",51,[[]]],[11,"clone_into","","",51,[[]]],[11,"borrow","","",51,[[]]],[11,"borrow_mut","","",51,[[]]],[11,"try_from","","",51,[[],["result",4]]],[11,"try_into","","",51,[[],["result",4]]],[11,"type_id","","",51,[[],["typeid",3]]],[11,"equivalent","","",51,[[]]],[11,"get_hash","","",51,[[]]],[11,"vzip","","",51,[[]]],[11,"from","","",52,[[]]],[11,"into","","",52,[[]]],[11,"borrow","","",52,[[]]],[11,"borrow_mut","","",52,[[]]],[11,"try_from","","",52,[[],["result",4]]],[11,"try_into","","",52,[[],["result",4]]],[11,"type_id","","",52,[[],["typeid",3]]],[11,"vzip","","",52,[[]]],[11,"from","map_model::objects::parking_lot","",53,[[]]],[11,"into","","",53,[[]]],[11,"to_owned","","",53,[[]]],[11,"clone_into","","",53,[[]]],[11,"to_string","","",53,[[],["string",3]]],[11,"borrow","","",53,[[]]],[11,"borrow_mut","","",53,[[]]],[11,"try_from","","",53,[[],["result",4]]],[11,"try_into","","",53,[[],["result",4]]],[11,"type_id","","",53,[[],["typeid",3]]],[11,"equivalent","","",53,[[]]],[11,"get_hash","","",53,[[]]],[11,"vzip","","",53,[[]]],[11,"from","","",54,[[]]],[11,"into","","",54,[[]]],[11,"borrow","","",54,[[]]],[11,"borrow_mut","","",54,[[]]],[11,"try_from","","",54,[[],["result",4]]],[11,"try_into","","",54,[[],["result",4]]],[11,"type_id","","",54,[[],["typeid",3]]],[11,"vzip","","",54,[[]]],[11,"from","map_model::objects::road","",55,[[]]],[11,"into","","",55,[[]]],[11,"to_owned","","",55,[[]]],[11,"clone_into","","",55,[[]]],[11,"to_string","","",55,[[],["string",3]]],[11,"borrow","","",55,[[]]],[11,"borrow_mut","","",55,[[]]],[11,"try_from","","",55,[[],["result",4]]],[11,"try_into","","",55,[[],["result",4]]],[11,"type_id","","",55,[[],["typeid",3]]],[11,"equivalent","","",55,[[]]],[11,"get_hash","","",55,[[]]],[11,"vzip","","",55,[[]]],[11,"from","","",56,[[]]],[11,"into","","",56,[[]]],[11,"to_owned","","",56,[[]]],[11,"clone_into","","",56,[[]]],[11,"to_string","","",56,[[],["string",3]]],[11,"borrow","","",56,[[]]],[11,"borrow_mut","","",56,[[]]],[11,"try_from","","",56,[[],["result",4]]],[11,"try_into","","",56,[[],["result",4]]],[11,"type_id","","",56,[[],["typeid",3]]],[11,"equivalent","","",56,[[]]],[11,"get_hash","","",56,[[]]],[11,"vzip","","",56,[[]]],[11,"from","","",57,[[]]],[11,"into","","",57,[[]]],[11,"to_owned","","",57,[[]]],[11,"clone_into","","",57,[[]]],[11,"to_string","","",57,[[],["string",3]]],[11,"borrow","","",57,[[]]],[11,"borrow_mut","","",57,[[]]],[11,"try_from","","",57,[[],["result",4]]],[11,"try_into","","",57,[[],["result",4]]],[11,"type_id","","",57,[[],["typeid",3]]],[11,"equivalent","","",57,[[]]],[11,"get_hash","","",57,[[]]],[11,"vzip","","",57,[[]]],[11,"from","","",58,[[]]],[11,"into","","",58,[[]]],[11,"borrow","","",58,[[]]],[11,"borrow_mut","","",58,[[]]],[11,"try_from","","",58,[[],["result",4]]],[11,"try_into","","",58,[[],["result",4]]],[11,"type_id","","",58,[[],["typeid",3]]],[11,"vzip","","",58,[[]]],[11,"from","map_model::objects::stop_signs","",59,[[]]],[11,"into","","",59,[[]]],[11,"to_owned","","",59,[[]]],[11,"clone_into","","",59,[[]]],[11,"borrow","","",59,[[]]],[11,"borrow_mut","","",59,[[]]],[11,"try_from","","",59,[[],["result",4]]],[11,"try_into","","",59,[[],["result",4]]],[11,"type_id","","",59,[[],["typeid",3]]],[11,"vzip","","",59,[[]]],[11,"from","","",60,[[]]],[11,"into","","",60,[[]]],[11,"to_owned","","",60,[[]]],[11,"clone_into","","",60,[[]]],[11,"borrow","","",60,[[]]],[11,"borrow_mut","","",60,[[]]],[11,"try_from","","",60,[[],["result",4]]],[11,"try_into","","",60,[[],["result",4]]],[11,"type_id","","",60,[[],["typeid",3]]],[11,"vzip","","",60,[[]]],[11,"from","map_model::objects::traffic_signals","",61,[[]]],[11,"into","","",61,[[]]],[11,"to_owned","","",61,[[]]],[11,"clone_into","","",61,[[]]],[11,"borrow","","",61,[[]]],[11,"borrow_mut","","",61,[[]]],[11,"try_from","","",61,[[],["result",4]]],[11,"try_into","","",61,[[],["result",4]]],[11,"type_id","","",61,[[],["typeid",3]]],[11,"vzip","","",61,[[]]],[11,"from","","",62,[[]]],[11,"into","","",62,[[]]],[11,"to_owned","","",62,[[]]],[11,"clone_into","","",62,[[]]],[11,"borrow","","",62,[[]]],[11,"borrow_mut","","",62,[[]]],[11,"try_from","","",62,[[],["result",4]]],[11,"try_into","","",62,[[],["result",4]]],[11,"type_id","","",62,[[],["typeid",3]]],[11,"vzip","","",62,[[]]],[11,"from","","",63,[[]]],[11,"into","","",63,[[]]],[11,"to_owned","","",63,[[]]],[11,"clone_into","","",63,[[]]],[11,"borrow","","",63,[[]]],[11,"borrow_mut","","",63,[[]]],[11,"try_from","","",63,[[],["result",4]]],[11,"try_into","","",63,[[],["result",4]]],[11,"type_id","","",63,[[],["typeid",3]]],[11,"vzip","","",63,[[]]],[11,"from","map_model::objects::turn","",64,[[]]],[11,"into","","",64,[[]]],[11,"to_owned","","",64,[[]]],[11,"clone_into","","",64,[[]]],[11,"to_string","","",64,[[],["string",3]]],[11,"borrow","","",64,[[]]],[11,"borrow_mut","","",64,[[]]],[11,"try_from","","",64,[[],["result",4]]],[11,"try_into","","",64,[[],["result",4]]],[11,"type_id","","",64,[[],["typeid",3]]],[11,"equivalent","","",64,[[]]],[11,"get_hash","","",64,[[]]],[11,"vzip","","",64,[[]]],[11,"from","","",65,[[]]],[11,"into","","",65,[[]]],[11,"to_owned","","",65,[[]]],[11,"clone_into","","",65,[[]]],[11,"borrow","","",65,[[]]],[11,"borrow_mut","","",65,[[]]],[11,"try_from","","",65,[[],["result",4]]],[11,"try_into","","",65,[[],["result",4]]],[11,"type_id","","",65,[[],["typeid",3]]],[11,"equivalent","","",65,[[]]],[11,"vzip","","",65,[[]]],[11,"from","","",66,[[]]],[11,"into","","",66,[[]]],[11,"to_owned","","",66,[[]]],[11,"clone_into","","",66,[[]]],[11,"borrow","","",66,[[]]],[11,"borrow_mut","","",66,[[]]],[11,"try_from","","",66,[[],["result",4]]],[11,"try_into","","",66,[[],["result",4]]],[11,"type_id","","",66,[[],["typeid",3]]],[11,"vzip","","",66,[[]]],[11,"from","","",67,[[]]],[11,"into","","",67,[[]]],[11,"to_owned","","",67,[[]]],[11,"clone_into","","",67,[[]]],[11,"borrow","","",67,[[]]],[11,"borrow_mut","","",67,[[]]],[11,"try_from","","",67,[[],["result",4]]],[11,"try_into","","",67,[[],["result",4]]],[11,"type_id","","",67,[[],["typeid",3]]],[11,"vzip","","",67,[[]]],[11,"from","","",68,[[]]],[11,"into","","",68,[[]]],[11,"to_owned","","",68,[[]]],[11,"clone_into","","",68,[[]]],[11,"borrow","","",68,[[]]],[11,"borrow_mut","","",68,[[]]],[11,"try_from","","",68,[[],["result",4]]],[11,"try_into","","",68,[[],["result",4]]],[11,"type_id","","",68,[[],["typeid",3]]],[11,"equivalent","","",68,[[]]],[11,"get_hash","","",68,[[]]],[11,"vzip","","",68,[[]]],[11,"from","","",69,[[]]],[11,"into","","",69,[[]]],[11,"to_owned","","",69,[[]]],[11,"clone_into","","",69,[[]]],[11,"borrow","","",69,[[]]],[11,"borrow_mut","","",69,[[]]],[11,"try_from","","",69,[[],["result",4]]],[11,"try_into","","",69,[[],["result",4]]],[11,"type_id","","",69,[[],["typeid",3]]],[11,"equivalent","","",69,[[]]],[11,"get_hash","","",69,[[]]],[11,"vzip","","",69,[[]]],[11,"from","","",70,[[]]],[11,"into","","",70,[[]]],[11,"to_owned","","",70,[[]]],[11,"clone_into","","",70,[[]]],[11,"borrow","","",70,[[]]],[11,"borrow_mut","","",70,[[]]],[11,"try_from","","",70,[[],["result",4]]],[11,"try_into","","",70,[[],["result",4]]],[11,"type_id","","",70,[[],["typeid",3]]],[11,"vzip","","",70,[[]]],[11,"from","map_model::objects::zone","",71,[[]]],[11,"into","","",71,[[]]],[11,"to_owned","","",71,[[]]],[11,"clone_into","","",71,[[]]],[11,"borrow","","",71,[[]]],[11,"borrow_mut","","",71,[[]]],[11,"try_from","","",71,[[],["result",4]]],[11,"try_into","","",71,[[],["result",4]]],[11,"type_id","","",71,[[],["typeid",3]]],[11,"vzip","","",71,[[]]],[11,"from","","",72,[[]]],[11,"into","","",72,[[]]],[11,"borrow","","",72,[[]]],[11,"borrow_mut","","",72,[[]]],[11,"try_from","","",72,[[],["result",4]]],[11,"try_into","","",72,[[],["result",4]]],[11,"type_id","","",72,[[],["typeid",3]]],[11,"vzip","","",72,[[]]],[11,"from","map_model::osm","",73,[[]]],[11,"into","","",73,[[]]],[11,"to_owned","","",73,[[]]],[11,"clone_into","","",73,[[]]],[11,"borrow","","",73,[[]]],[11,"borrow_mut","","",73,[[]]],[11,"try_from","","",73,[[],["result",4]]],[11,"try_into","","",73,[[],["result",4]]],[11,"type_id","","",73,[[],["typeid",3]]],[11,"equivalent","","",73,[[]]],[11,"vzip","","",73,[[]]],[11,"from","","",74,[[]]],[11,"into","","",74,[[]]],[11,"to_owned","","",74,[[]]],[11,"clone_into","","",74,[[]]],[11,"to_string","","",74,[[],["string",3]]],[11,"borrow","","",74,[[]]],[11,"borrow_mut","","",74,[[]]],[11,"try_from","","",74,[[],["result",4]]],[11,"try_into","","",74,[[],["result",4]]],[11,"type_id","","",74,[[],["typeid",3]]],[11,"equivalent","","",74,[[]]],[11,"get_hash","","",74,[[]]],[11,"vzip","","",74,[[]]],[11,"from","","",75,[[]]],[11,"into","","",75,[[]]],[11,"to_owned","","",75,[[]]],[11,"clone_into","","",75,[[]]],[11,"to_string","","",75,[[],["string",3]]],[11,"borrow","","",75,[[]]],[11,"borrow_mut","","",75,[[]]],[11,"try_from","","",75,[[],["result",4]]],[11,"try_into","","",75,[[],["result",4]]],[11,"type_id","","",75,[[],["typeid",3]]],[11,"equivalent","","",75,[[]]],[11,"get_hash","","",75,[[]]],[11,"vzip","","",75,[[]]],[11,"from","","",76,[[]]],[11,"into","","",76,[[]]],[11,"to_owned","","",76,[[]]],[11,"clone_into","","",76,[[]]],[11,"to_string","","",76,[[],["string",3]]],[11,"borrow","","",76,[[]]],[11,"borrow_mut","","",76,[[]]],[11,"try_from","","",76,[[],["result",4]]],[11,"try_into","","",76,[[],["result",4]]],[11,"type_id","","",76,[[],["typeid",3]]],[11,"equivalent","","",76,[[]]],[11,"get_hash","","",76,[[]]],[11,"vzip","","",76,[[]]],[11,"from","","",77,[[]]],[11,"into","","",77,[[]]],[11,"to_owned","","",77,[[]]],[11,"clone_into","","",77,[[]]],[11,"to_string","","",77,[[],["string",3]]],[11,"borrow","","",77,[[]]],[11,"borrow_mut","","",77,[[]]],[11,"try_from","","",77,[[],["result",4]]],[11,"try_into","","",77,[[],["result",4]]],[11,"type_id","","",77,[[],["typeid",3]]],[11,"equivalent","","",77,[[]]],[11,"get_hash","","",77,[[]]],[11,"vzip","","",77,[[]]],[11,"from","map_model::pathfind::ch","",78,[[]]],[11,"into","","",78,[[]]],[11,"borrow","","",78,[[]]],[11,"borrow_mut","","",78,[[]]],[11,"try_from","","",78,[[],["result",4]]],[11,"try_into","","",78,[[],["result",4]]],[11,"type_id","","",78,[[],["typeid",3]]],[11,"vzip","","",78,[[]]],[11,"from","map_model::pathfind::node_map","",79,[[]]],[11,"into","","",79,[[]]],[11,"borrow","","",79,[[]]],[11,"borrow_mut","","",79,[[]]],[11,"try_from","","",79,[[],["result",4]]],[11,"try_into","","",79,[[],["result",4]]],[11,"type_id","","",79,[[],["typeid",3]]],[11,"vzip","","",79,[[]]],[11,"from","","",80,[[]]],[11,"into","","",80,[[]]],[11,"borrow","","",80,[[]]],[11,"borrow_mut","","",80,[[]]],[11,"try_from","","",80,[[],["result",4]]],[11,"try_into","","",80,[[],["result",4]]],[11,"type_id","","",80,[[],["typeid",3]]],[11,"vzip","","",80,[[]]],[11,"from","map_model::pathfind::pathfinder","",81,[[]]],[11,"into","","",81,[[]]],[11,"borrow","","",81,[[]]],[11,"borrow_mut","","",81,[[]]],[11,"try_from","","",81,[[],["result",4]]],[11,"try_into","","",81,[[],["result",4]]],[11,"type_id","","",81,[[],["typeid",3]]],[11,"vzip","","",81,[[]]],[11,"from","map_model::pathfind::uber_turns","",82,[[]]],[11,"into","","",82,[[]]],[11,"to_owned","","",82,[[]]],[11,"clone_into","","",82,[[]]],[11,"borrow","","",82,[[]]],[11,"borrow_mut","","",82,[[]]],[11,"try_from","","",82,[[],["result",4]]],[11,"try_into","","",82,[[],["result",4]]],[11,"type_id","","",82,[[],["typeid",3]]],[11,"vzip","","",82,[[]]],[11,"from","","",83,[[]]],[11,"into","","",83,[[]]],[11,"to_owned","","",83,[[]]],[11,"clone_into","","",83,[[]]],[11,"borrow","","",83,[[]]],[11,"borrow_mut","","",83,[[]]],[11,"try_from","","",83,[[],["result",4]]],[11,"try_into","","",83,[[],["result",4]]],[11,"type_id","","",83,[[],["typeid",3]]],[11,"vzip","","",83,[[]]],[11,"from","","",84,[[]]],[11,"into","","",84,[[]]],[11,"borrow","","",84,[[]]],[11,"borrow_mut","","",84,[[]]],[11,"try_from","","",84,[[],["result",4]]],[11,"try_into","","",84,[[],["result",4]]],[11,"type_id","","",84,[[],["typeid",3]]],[11,"vzip","","",84,[[]]],[11,"from","map_model::pathfind::vehicles","",85,[[]]],[11,"into","","",85,[[]]],[11,"borrow","","",85,[[]]],[11,"borrow_mut","","",85,[[]]],[11,"try_from","","",85,[[],["result",4]]],[11,"try_into","","",85,[[],["result",4]]],[11,"type_id","","",85,[[],["typeid",3]]],[11,"vzip","","",85,[[]]],[11,"from","","",86,[[]]],[11,"into","","",86,[[]]],[11,"to_owned","","",86,[[]]],[11,"clone_into","","",86,[[]]],[11,"borrow","","",86,[[]]],[11,"borrow_mut","","",86,[[]]],[11,"try_from","","",86,[[],["result",4]]],[11,"try_into","","",86,[[],["result",4]]],[11,"type_id","","",86,[[],["typeid",3]]],[11,"equivalent","","",86,[[]]],[11,"vzip","","",86,[[]]],[11,"from","map_model::pathfind::walking","",87,[[]]],[11,"into","","",87,[[]]],[11,"borrow","","",87,[[]]],[11,"borrow_mut","","",87,[[]]],[11,"try_from","","",87,[[],["result",4]]],[11,"try_into","","",87,[[],["result",4]]],[11,"type_id","","",87,[[],["typeid",3]]],[11,"vzip","","",87,[[]]],[11,"from","map_model::pathfind","",88,[[]]],[11,"into","","",88,[[]]],[11,"to_owned","","",88,[[]]],[11,"clone_into","","",88,[[]]],[11,"borrow","","",88,[[]]],[11,"borrow_mut","","",88,[[]]],[11,"try_from","","",88,[[],["result",4]]],[11,"try_into","","",88,[[],["result",4]]],[11,"type_id","","",88,[[],["typeid",3]]],[11,"equivalent","","",88,[[]]],[11,"get_hash","","",88,[[]]],[11,"vzip","","",88,[[]]],[11,"from","","",89,[[]]],[11,"into","","",89,[[]]],[11,"to_owned","","",89,[[]]],[11,"clone_into","","",89,[[]]],[11,"borrow","","",89,[[]]],[11,"borrow_mut","","",89,[[]]],[11,"try_from","","",89,[[],["result",4]]],[11,"try_into","","",89,[[],["result",4]]],[11,"type_id","","",89,[[],["typeid",3]]],[11,"vzip","","",89,[[]]],[11,"from","","",90,[[]]],[11,"into","","",90,[[]]],[11,"to_owned","","",90,[[]]],[11,"clone_into","","",90,[[]]],[11,"borrow","","",90,[[]]],[11,"borrow_mut","","",90,[[]]],[11,"try_from","","",90,[[],["result",4]]],[11,"try_into","","",90,[[],["result",4]]],[11,"type_id","","",90,[[],["typeid",3]]],[11,"equivalent","","",90,[[]]],[11,"vzip","","",90,[[]]],[11,"from","","",91,[[]]],[11,"into","","",91,[[]]],[11,"to_owned","","",91,[[]]],[11,"clone_into","","",91,[[]]],[11,"to_string","","",91,[[],["string",3]]],[11,"borrow","","",91,[[]]],[11,"borrow_mut","","",91,[[]]],[11,"try_from","","",91,[[],["result",4]]],[11,"try_into","","",91,[[],["result",4]]],[11,"type_id","","",91,[[],["typeid",3]]],[11,"equivalent","","",91,[[]]],[11,"vzip","","",91,[[]]],[11,"from","","",92,[[]]],[11,"into","","",92,[[]]],[11,"borrow","","",92,[[]]],[11,"borrow_mut","","",92,[[]]],[11,"try_from","","",92,[[],["result",4]]],[11,"try_into","","",92,[[],["result",4]]],[11,"type_id","","",92,[[],["typeid",3]]],[11,"vzip","","",92,[[]]],[11,"from","map_model::raw","",93,[[]]],[11,"into","","",93,[[]]],[11,"borrow","","",93,[[]]],[11,"borrow_mut","","",93,[[]]],[11,"try_from","","",93,[[],["result",4]]],[11,"try_into","","",93,[[],["result",4]]],[11,"type_id","","",93,[[],["typeid",3]]],[11,"vzip","","",93,[[]]],[11,"from","","",94,[[]]],[11,"into","","",94,[[]]],[11,"to_owned","","",94,[[]]],[11,"clone_into","","",94,[[]]],[11,"to_string","","",94,[[],["string",3]]],[11,"borrow","","",94,[[]]],[11,"borrow_mut","","",94,[[]]],[11,"try_from","","",94,[[],["result",4]]],[11,"try_into","","",94,[[],["result",4]]],[11,"type_id","","",94,[[],["typeid",3]]],[11,"equivalent","","",94,[[]]],[11,"get_hash","","",94,[[]]],[11,"vzip","","",94,[[]]],[11,"from","","",95,[[]]],[11,"into","","",95,[[]]],[11,"to_owned","","",95,[[]]],[11,"clone_into","","",95,[[]]],[11,"borrow","","",95,[[]]],[11,"borrow_mut","","",95,[[]]],[11,"try_from","","",95,[[],["result",4]]],[11,"try_into","","",95,[[],["result",4]]],[11,"type_id","","",95,[[],["typeid",3]]],[11,"vzip","","",95,[[]]],[11,"from","","",96,[[]]],[11,"into","","",96,[[]]],[11,"to_owned","","",96,[[]]],[11,"clone_into","","",96,[[]]],[11,"borrow","","",96,[[]]],[11,"borrow_mut","","",96,[[]]],[11,"try_from","","",96,[[],["result",4]]],[11,"try_into","","",96,[[],["result",4]]],[11,"type_id","","",96,[[],["typeid",3]]],[11,"vzip","","",96,[[]]],[11,"from","","",97,[[]]],[11,"into","","",97,[[]]],[11,"to_owned","","",97,[[]]],[11,"clone_into","","",97,[[]]],[11,"borrow","","",97,[[]]],[11,"borrow_mut","","",97,[[]]],[11,"try_from","","",97,[[],["result",4]]],[11,"try_into","","",97,[[],["result",4]]],[11,"type_id","","",97,[[],["typeid",3]]],[11,"vzip","","",97,[[]]],[11,"from","","",98,[[]]],[11,"into","","",98,[[]]],[11,"to_owned","","",98,[[]]],[11,"clone_into","","",98,[[]]],[11,"borrow","","",98,[[]]],[11,"borrow_mut","","",98,[[]]],[11,"try_from","","",98,[[],["result",4]]],[11,"try_into","","",98,[[],["result",4]]],[11,"type_id","","",98,[[],["typeid",3]]],[11,"vzip","","",98,[[]]],[11,"from","","",99,[[]]],[11,"into","","",99,[[]]],[11,"to_owned","","",99,[[]]],[11,"clone_into","","",99,[[]]],[11,"borrow","","",99,[[]]],[11,"borrow_mut","","",99,[[]]],[11,"try_from","","",99,[[],["result",4]]],[11,"try_into","","",99,[[],["result",4]]],[11,"type_id","","",99,[[],["typeid",3]]],[11,"vzip","","",99,[[]]],[11,"from","","",100,[[]]],[11,"into","","",100,[[]]],[11,"to_owned","","",100,[[]]],[11,"clone_into","","",100,[[]]],[11,"borrow","","",100,[[]]],[11,"borrow_mut","","",100,[[]]],[11,"try_from","","",100,[[],["result",4]]],[11,"try_into","","",100,[[],["result",4]]],[11,"type_id","","",100,[[],["typeid",3]]],[11,"equivalent","","",100,[[]]],[11,"get_hash","","",100,[[]]],[11,"vzip","","",100,[[]]],[11,"from","","",101,[[]]],[11,"into","","",101,[[]]],[11,"to_owned","","",101,[[]]],[11,"clone_into","","",101,[[]]],[11,"borrow","","",101,[[]]],[11,"borrow_mut","","",101,[[]]],[11,"try_from","","",101,[[],["result",4]]],[11,"try_into","","",101,[[],["result",4]]],[11,"type_id","","",101,[[],["typeid",3]]],[11,"equivalent","","",101,[[]]],[11,"get_hash","","",101,[[]]],[11,"vzip","","",101,[[]]],[11,"from","","",102,[[]]],[11,"into","","",102,[[]]],[11,"borrow","","",102,[[]]],[11,"borrow_mut","","",102,[[]]],[11,"try_from","","",102,[[],["result",4]]],[11,"try_into","","",102,[[],["result",4]]],[11,"type_id","","",102,[[],["typeid",3]]],[11,"vzip","","",102,[[]]],[11,"from","","",103,[[]]],[11,"into","","",103,[[]]],[11,"borrow","","",103,[[]]],[11,"borrow_mut","","",103,[[]]],[11,"try_from","","",103,[[],["result",4]]],[11,"try_into","","",103,[[],["result",4]]],[11,"type_id","","",103,[[],["typeid",3]]],[11,"vzip","","",103,[[]]],[11,"from","map_model::traversable","",104,[[]]],[11,"into","","",104,[[]]],[11,"to_owned","","",104,[[]]],[11,"clone_into","","",104,[[]]],[11,"to_string","","",104,[[],["string",3]]],[11,"borrow","","",104,[[]]],[11,"borrow_mut","","",104,[[]]],[11,"try_from","","",104,[[],["result",4]]],[11,"try_into","","",104,[[],["result",4]]],[11,"type_id","","",104,[[],["typeid",3]]],[11,"equivalent","","",104,[[]]],[11,"vzip","","",104,[[]]],[11,"from","","",105,[[]]],[11,"into","","",105,[[]]],[11,"to_owned","","",105,[[]]],[11,"clone_into","","",105,[[]]],[11,"to_string","","",105,[[],["string",3]]],[11,"borrow","","",105,[[]]],[11,"borrow_mut","","",105,[[]]],[11,"try_from","","",105,[[],["result",4]]],[11,"try_into","","",105,[[],["result",4]]],[11,"type_id","","",105,[[],["typeid",3]]],[11,"equivalent","","",105,[[]]],[11,"get_hash","","",105,[[]]],[11,"vzip","","",105,[[]]],[11,"from","map_model","",106,[[]]],[11,"into","","",106,[[]]],[11,"borrow","","",106,[[]]],[11,"borrow_mut","","",106,[[]]],[11,"try_from","","",106,[[],["result",4]]],[11,"try_into","","",106,[[],["result",4]]],[11,"type_id","","",106,[[],["typeid",3]]],[11,"vzip","","",106,[[]]],[11,"clone","map_model::connectivity::walking","",1,[[],["walkingoptions",3]]],[11,"clone","map_model::edits::perma","",9,[[],["permanentmapedits",3]]],[11,"clone","","",10,[[],["permanenteditintersection",4]]],[11,"clone","","",12,[[],["permanenteditcmd",4]]],[11,"clone","map_model::edits","",16,[[],["mapedits",3]]],[11,"clone","","",17,[[],["editintersection",4]]],[11,"clone","","",18,[[],["editroad",3]]],[11,"clone","","",19,[[],["editcmd",4]]],[11,"clone","map_model::map","",30,[[],["mapconfig",3]]],[11,"clone","","",31,[[],["drivingside",4]]],[11,"clone","map_model::objects::area","",32,[[],["areaid",3]]],[11,"clone","","",33,[[],["areatype",4]]],[11,"clone","map_model::objects::building","",35,[[],["buildingid",3]]],[11,"clone","","",37,[[],["amenity",3]]],[11,"clone","","",38,[[],["offstreetparking",4]]],[11,"clone","","",39,[[],["buildingtype",4]]],[11,"clone","","",41,[[],["nameperlanguage",3]]],[11,"clone","","",42,[[],["amenitytype",4]]],[11,"clone","map_model::objects::bus_stop","",43,[[],["busstopid",3]]],[11,"clone","","",44,[[],["busrouteid",3]]],[11,"clone","","",45,[[],["busstop",3]]],[11,"clone","map_model::objects::intersection","",47,[[],["intersectionid",3]]],[11,"clone","","",48,[[],["intersectiontype",4]]],[11,"clone","map_model::objects::lane","",50,[[],["laneid",3]]],[11,"clone","","",51,[[],["lanetype",4]]],[11,"clone","map_model::objects::parking_lot","",53,[[],["parkinglotid",3]]],[11,"clone","map_model::objects::road","",55,[[],["roadid",3]]],[11,"clone","","",56,[[],["direction",4]]],[11,"clone","","",57,[[],["directedroadid",3]]],[11,"clone","map_model::objects::stop_signs","",59,[[],["controlstopsign",3]]],[11,"clone","","",60,[[],["roadwithstopsign",3]]],[11,"clone","map_model::objects::traffic_signals","",61,[[],["controltrafficsignal",3]]],[11,"clone","","",62,[[],["stage",3]]],[11,"clone","","",63,[[],["stagetype",4]]],[11,"clone","map_model::objects::turn","",64,[[],["turnid",3]]],[11,"clone","","",65,[[],["turntype",4]]],[11,"clone","","",66,[[],["turnpriority",4]]],[11,"clone","","",67,[[],["turn",3]]],[11,"clone","","",68,[[],["movementid",3]]],[11,"clone","","",69,[[],["compressedmovementid",3]]],[11,"clone","","",70,[[],["movement",3]]],[11,"clone","map_model::objects::zone","",71,[[],["accessrestrictions",3]]],[11,"clone","map_model::osm","",73,[[],["roadrank",4]]],[11,"clone","","",74,[[],["nodeid",3]]],[11,"clone","","",75,[[],["wayid",3]]],[11,"clone","","",76,[[],["relationid",3]]],[11,"clone","","",77,[[],["osmid",4]]],[11,"clone","map_model::pathfind::uber_turns","",82,[[],["intersectioncluster",3]]],[11,"clone","","",83,[[],["uberturn",3]]],[11,"clone","map_model::pathfind::vehicles","",86,[[],["node",4]]],[11,"clone","map_model::connectivity","",3,[[],["walkingnode",4]]],[11,"clone","map_model::pathfind","",88,[[],["pathstep",4]]],[11,"clone","","",89,[[],["path",3]]],[11,"clone","","",90,[[]]],[11,"clone","","",91,[[],["pathrequest",3]]],[11,"clone","map_model::raw","",94,[[],["originalroad",3]]],[11,"clone","","",95,[[],["rawroad",3]]],[11,"clone","","",96,[[],["rawintersection",3]]],[11,"clone","","",97,[[],["rawbuilding",3]]],[11,"clone","","",98,[[],["rawarea",3]]],[11,"clone","","",99,[[],["rawparkinglot",3]]],[11,"clone","","",100,[[],["restrictiontype",4]]],[11,"clone","","",101,[[],["turnrestriction",3]]],[11,"clone","map_model::traversable","",104,[[],["position",3]]],[11,"clone","","",105,[[],["traversable",4]]],[11,"default","map_model::edits","",16,[[],["mapedits",3]]],[11,"cmp","map_model::connectivity::walking","",2,[[["item",3]],["ordering",4]]],[11,"cmp","map_model::objects::area","",32,[[["areaid",3]],["ordering",4]]],[11,"cmp","map_model::objects::building","",35,[[["buildingid",3]],["ordering",4]]],[11,"cmp","","",41,[[["nameperlanguage",3]],["ordering",4]]],[11,"cmp","","",42,[[["amenitytype",4]],["ordering",4]]],[11,"cmp","map_model::objects::bus_stop","",43,[[["busstopid",3]],["ordering",4]]],[11,"cmp","","",44,[[["busrouteid",3]],["ordering",4]]],[11,"cmp","map_model::objects::intersection","",47,[[["intersectionid",3]],["ordering",4]]],[11,"cmp","map_model::objects::lane","",50,[[["laneid",3]],["ordering",4]]],[11,"cmp","","",51,[[["lanetype",4]],["ordering",4]]],[11,"cmp","map_model::objects::parking_lot","",53,[[["parkinglotid",3]],["ordering",4]]],[11,"cmp","map_model::objects::road","",55,[[["roadid",3]],["ordering",4]]],[11,"cmp","","",56,[[["direction",4]],["ordering",4]]],[11,"cmp","","",57,[[["directedroadid",3]],["ordering",4]]],[11,"cmp","map_model::objects::turn","",64,[[["turnid",3]],["ordering",4]]],[11,"cmp","","",65,[[["turntype",4]],["ordering",4]]],[11,"cmp","","",68,[[["movementid",3]],["ordering",4]]],[11,"cmp","","",69,[[["compressedmovementid",3]],["ordering",4]]],[11,"cmp","map_model::osm","",73,[[["roadrank",4]],["ordering",4]]],[11,"cmp","","",74,[[["nodeid",3]],["ordering",4]]],[11,"cmp","","",75,[[["wayid",3]],["ordering",4]]],[11,"cmp","","",76,[[["relationid",3]],["ordering",4]]],[11,"cmp","","",77,[[["osmid",4]],["ordering",4]]],[11,"cmp","map_model::pathfind::vehicles","",86,[[["node",4]],["ordering",4]]],[11,"cmp","map_model::connectivity","",3,[[["walkingnode",4]],["ordering",4]]],[11,"cmp","map_model::pathfind","",88,[[["pathstep",4]],["ordering",4]]],[11,"cmp","","",90,[[["pathconstraints",4]],["ordering",4]]],[11,"cmp","map_model::raw","",94,[[["originalroad",3]],["ordering",4]]],[11,"cmp","","",100,[[["restrictiontype",4]],["ordering",4]]],[11,"cmp","","",101,[[["turnrestriction",3]],["ordering",4]]],[11,"cmp","map_model::traversable","",104,[[["position",3]],["ordering",4]]],[11,"cmp","","",105,[[["traversable",4]],["ordering",4]]],[11,"eq","map_model::connectivity::walking","",2,[[["item",3]]]],[11,"ne","","",2,[[["item",3]]]],[11,"eq","map_model::edits","",16,[[["mapedits",3]]]],[11,"ne","","",16,[[["mapedits",3]]]],[11,"eq","","",17,[[["editintersection",4]]]],[11,"ne","","",17,[[["editintersection",4]]]],[11,"eq","","",18,[[["editroad",3]]]],[11,"ne","","",18,[[["editroad",3]]]],[11,"eq","","",19,[[["editcmd",4]]]],[11,"ne","","",19,[[["editcmd",4]]]],[11,"eq","map_model::make::initial::lane_specs","",25,[[["lanespec",3]]]],[11,"ne","","",25,[[["lanespec",3]]]],[11,"eq","map_model::map","",31,[[["drivingside",4]]]],[11,"eq","map_model::objects::area","",32,[[["areaid",3]]]],[11,"ne","","",32,[[["areaid",3]]]],[11,"eq","","",33,[[["areatype",4]]]],[11,"eq","map_model::objects::building","",35,[[["buildingid",3]]]],[11,"ne","","",35,[[["buildingid",3]]]],[11,"eq","","",38,[[["offstreetparking",4]]]],[11,"ne","","",38,[[["offstreetparking",4]]]],[11,"eq","","",41,[[["nameperlanguage",3]]]],[11,"ne","","",41,[[["nameperlanguage",3]]]],[11,"eq","","",42,[[["amenitytype",4]]]],[11,"eq","map_model::objects::bus_stop","",43,[[["busstopid",3]]]],[11,"ne","","",43,[[["busstopid",3]]]],[11,"eq","","",44,[[["busrouteid",3]]]],[11,"ne","","",44,[[["busrouteid",3]]]],[11,"eq","","",45,[[["busstop",3]]]],[11,"ne","","",45,[[["busstop",3]]]],[11,"eq","map_model::objects::intersection","",47,[[["intersectionid",3]]]],[11,"ne","","",47,[[["intersectionid",3]]]],[11,"eq","","",48,[[["intersectiontype",4]]]],[11,"eq","map_model::objects::lane","",50,[[["laneid",3]]]],[11,"ne","","",50,[[["laneid",3]]]],[11,"eq","","",51,[[["lanetype",4]]]],[11,"eq","map_model::objects::parking_lot","",53,[[["parkinglotid",3]]]],[11,"ne","","",53,[[["parkinglotid",3]]]],[11,"eq","map_model::objects::road","",55,[[["roadid",3]]]],[11,"ne","","",55,[[["roadid",3]]]],[11,"eq","","",56,[[["direction",4]]]],[11,"eq","","",57,[[["directedroadid",3]]]],[11,"ne","","",57,[[["directedroadid",3]]]],[11,"eq","map_model::objects::stop_signs","",59,[[["controlstopsign",3]]]],[11,"ne","","",59,[[["controlstopsign",3]]]],[11,"eq","","",60,[[["roadwithstopsign",3]]]],[11,"ne","","",60,[[["roadwithstopsign",3]]]],[11,"eq","map_model::objects::traffic_signals","",61,[[["controltrafficsignal",3]]]],[11,"ne","","",61,[[["controltrafficsignal",3]]]],[11,"eq","","",62,[[["stage",3]]]],[11,"ne","","",62,[[["stage",3]]]],[11,"eq","","",63,[[["stagetype",4]]]],[11,"ne","","",63,[[["stagetype",4]]]],[11,"eq","map_model::objects::turn","",64,[[["turnid",3]]]],[11,"ne","","",64,[[["turnid",3]]]],[11,"eq","","",65,[[["turntype",4]]]],[11,"eq","","",66,[[["turnpriority",4]]]],[11,"eq","","",67,[[["turn",3]]]],[11,"ne","","",67,[[["turn",3]]]],[11,"eq","","",68,[[["movementid",3]]]],[11,"ne","","",68,[[["movementid",3]]]],[11,"eq","","",69,[[["compressedmovementid",3]]]],[11,"ne","","",69,[[["compressedmovementid",3]]]],[11,"eq","","",70,[[["movement",3]]]],[11,"ne","","",70,[[["movement",3]]]],[11,"eq","map_model::objects::zone","",71,[[["accessrestrictions",3]]]],[11,"ne","","",71,[[["accessrestrictions",3]]]],[11,"eq","","",72,[[["zone",3]]]],[11,"ne","","",72,[[["zone",3]]]],[11,"eq","map_model::osm","",73,[[["roadrank",4]]]],[11,"eq","","",74,[[["nodeid",3]]]],[11,"ne","","",74,[[["nodeid",3]]]],[11,"eq","","",75,[[["wayid",3]]]],[11,"ne","","",75,[[["wayid",3]]]],[11,"eq","","",76,[[["relationid",3]]]],[11,"ne","","",76,[[["relationid",3]]]],[11,"eq","","",77,[[["osmid",4]]]],[11,"ne","","",77,[[["osmid",4]]]],[11,"eq","map_model::pathfind::uber_turns","",83,[[["uberturn",3]]]],[11,"ne","","",83,[[["uberturn",3]]]],[11,"eq","map_model::pathfind::vehicles","",86,[[["node",4]]]],[11,"ne","","",86,[[["node",4]]]],[11,"eq","map_model::connectivity","",3,[[["walkingnode",4]]]],[11,"ne","","",3,[[["walkingnode",4]]]],[11,"eq","map_model::pathfind","",88,[[["pathstep",4]]]],[11,"ne","","",88,[[["pathstep",4]]]],[11,"eq","","",89,[[["path",3]]]],[11,"ne","","",89,[[["path",3]]]],[11,"eq","","",90,[[]]],[11,"eq","","",90,[[["enumset",3]]]],[11,"eq","","",91,[[["pathrequest",3]]]],[11,"ne","","",91,[[["pathrequest",3]]]],[11,"eq","","",92,[[["routingparams",3]]]],[11,"ne","","",92,[[["routingparams",3]]]],[11,"eq","map_model::raw","",94,[[["originalroad",3]]]],[11,"ne","","",94,[[["originalroad",3]]]],[11,"eq","","",95,[[["rawroad",3]]]],[11,"ne","","",95,[[["rawroad",3]]]],[11,"eq","","",96,[[["rawintersection",3]]]],[11,"ne","","",96,[[["rawintersection",3]]]],[11,"eq","","",100,[[["restrictiontype",4]]]],[11,"eq","","",101,[[["turnrestriction",3]]]],[11,"ne","","",101,[[["turnrestriction",3]]]],[11,"eq","map_model::traversable","",104,[[["position",3]]]],[11,"ne","","",104,[[["position",3]]]],[11,"eq","","",105,[[["traversable",4]]]],[11,"ne","","",105,[[["traversable",4]]]],[11,"partial_cmp","map_model::connectivity::walking","",2,[[["item",3]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::objects::area","",32,[[["areaid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",32,[[["areaid",3]]]],[11,"le","","",32,[[["areaid",3]]]],[11,"gt","","",32,[[["areaid",3]]]],[11,"ge","","",32,[[["areaid",3]]]],[11,"partial_cmp","map_model::objects::building","",35,[[["buildingid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",35,[[["buildingid",3]]]],[11,"le","","",35,[[["buildingid",3]]]],[11,"gt","","",35,[[["buildingid",3]]]],[11,"ge","","",35,[[["buildingid",3]]]],[11,"partial_cmp","","",41,[[["nameperlanguage",3]],[["option",4],["ordering",4]]]],[11,"lt","","",41,[[["nameperlanguage",3]]]],[11,"le","","",41,[[["nameperlanguage",3]]]],[11,"gt","","",41,[[["nameperlanguage",3]]]],[11,"ge","","",41,[[["nameperlanguage",3]]]],[11,"partial_cmp","","",42,[[["amenitytype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::objects::bus_stop","",43,[[["busstopid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",43,[[["busstopid",3]]]],[11,"le","","",43,[[["busstopid",3]]]],[11,"gt","","",43,[[["busstopid",3]]]],[11,"ge","","",43,[[["busstopid",3]]]],[11,"partial_cmp","","",44,[[["busrouteid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",44,[[["busrouteid",3]]]],[11,"le","","",44,[[["busrouteid",3]]]],[11,"gt","","",44,[[["busrouteid",3]]]],[11,"ge","","",44,[[["busrouteid",3]]]],[11,"partial_cmp","map_model::objects::intersection","",47,[[["intersectionid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",47,[[["intersectionid",3]]]],[11,"le","","",47,[[["intersectionid",3]]]],[11,"gt","","",47,[[["intersectionid",3]]]],[11,"ge","","",47,[[["intersectionid",3]]]],[11,"partial_cmp","map_model::objects::lane","",50,[[["laneid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",50,[[["laneid",3]]]],[11,"le","","",50,[[["laneid",3]]]],[11,"gt","","",50,[[["laneid",3]]]],[11,"ge","","",50,[[["laneid",3]]]],[11,"partial_cmp","","",51,[[["lanetype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::objects::parking_lot","",53,[[["parkinglotid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",53,[[["parkinglotid",3]]]],[11,"le","","",53,[[["parkinglotid",3]]]],[11,"gt","","",53,[[["parkinglotid",3]]]],[11,"ge","","",53,[[["parkinglotid",3]]]],[11,"partial_cmp","map_model::objects::road","",55,[[["roadid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",55,[[["roadid",3]]]],[11,"le","","",55,[[["roadid",3]]]],[11,"gt","","",55,[[["roadid",3]]]],[11,"ge","","",55,[[["roadid",3]]]],[11,"partial_cmp","","",56,[[["direction",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",57,[[["directedroadid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",57,[[["directedroadid",3]]]],[11,"le","","",57,[[["directedroadid",3]]]],[11,"gt","","",57,[[["directedroadid",3]]]],[11,"ge","","",57,[[["directedroadid",3]]]],[11,"partial_cmp","map_model::objects::turn","",64,[[["turnid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",64,[[["turnid",3]]]],[11,"le","","",64,[[["turnid",3]]]],[11,"gt","","",64,[[["turnid",3]]]],[11,"ge","","",64,[[["turnid",3]]]],[11,"partial_cmp","","",65,[[["turntype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",66,[[["turnpriority",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",68,[[["movementid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",68,[[["movementid",3]]]],[11,"le","","",68,[[["movementid",3]]]],[11,"gt","","",68,[[["movementid",3]]]],[11,"ge","","",68,[[["movementid",3]]]],[11,"partial_cmp","","",69,[[["compressedmovementid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",69,[[["compressedmovementid",3]]]],[11,"le","","",69,[[["compressedmovementid",3]]]],[11,"gt","","",69,[[["compressedmovementid",3]]]],[11,"ge","","",69,[[["compressedmovementid",3]]]],[11,"partial_cmp","map_model::osm","",73,[[["roadrank",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",74,[[["nodeid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",74,[[["nodeid",3]]]],[11,"le","","",74,[[["nodeid",3]]]],[11,"gt","","",74,[[["nodeid",3]]]],[11,"ge","","",74,[[["nodeid",3]]]],[11,"partial_cmp","","",75,[[["wayid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",75,[[["wayid",3]]]],[11,"le","","",75,[[["wayid",3]]]],[11,"gt","","",75,[[["wayid",3]]]],[11,"ge","","",75,[[["wayid",3]]]],[11,"partial_cmp","","",76,[[["relationid",3]],[["option",4],["ordering",4]]]],[11,"lt","","",76,[[["relationid",3]]]],[11,"le","","",76,[[["relationid",3]]]],[11,"gt","","",76,[[["relationid",3]]]],[11,"ge","","",76,[[["relationid",3]]]],[11,"partial_cmp","","",77,[[["osmid",4]],[["option",4],["ordering",4]]]],[11,"lt","","",77,[[["osmid",4]]]],[11,"le","","",77,[[["osmid",4]]]],[11,"gt","","",77,[[["osmid",4]]]],[11,"ge","","",77,[[["osmid",4]]]],[11,"partial_cmp","map_model::pathfind::vehicles","",86,[[["node",4]],[["option",4],["ordering",4]]]],[11,"lt","","",86,[[["node",4]]]],[11,"le","","",86,[[["node",4]]]],[11,"gt","","",86,[[["node",4]]]],[11,"ge","","",86,[[["node",4]]]],[11,"partial_cmp","map_model::connectivity","",3,[[["walkingnode",4]],[["option",4],["ordering",4]]]],[11,"lt","","",3,[[["walkingnode",4]]]],[11,"le","","",3,[[["walkingnode",4]]]],[11,"gt","","",3,[[["walkingnode",4]]]],[11,"ge","","",3,[[["walkingnode",4]]]],[11,"partial_cmp","map_model::pathfind","",88,[[["pathstep",4]],[["option",4],["ordering",4]]]],[11,"lt","","",88,[[["pathstep",4]]]],[11,"le","","",88,[[["pathstep",4]]]],[11,"gt","","",88,[[["pathstep",4]]]],[11,"ge","","",88,[[["pathstep",4]]]],[11,"partial_cmp","","",90,[[["pathconstraints",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","map_model::raw","",94,[[["originalroad",3]],[["option",4],["ordering",4]]]],[11,"lt","","",94,[[["originalroad",3]]]],[11,"le","","",94,[[["originalroad",3]]]],[11,"gt","","",94,[[["originalroad",3]]]],[11,"ge","","",94,[[["originalroad",3]]]],[11,"partial_cmp","","",100,[[["restrictiontype",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",101,[[["turnrestriction",3]],[["option",4],["ordering",4]]]],[11,"lt","","",101,[[["turnrestriction",3]]]],[11,"le","","",101,[[["turnrestriction",3]]]],[11,"gt","","",101,[[["turnrestriction",3]]]],[11,"ge","","",101,[[["turnrestriction",3]]]],[11,"partial_cmp","map_model::traversable","",104,[[["position",3]],[["option",4],["ordering",4]]]],[11,"lt","","",104,[[["position",3]]]],[11,"le","","",104,[[["position",3]]]],[11,"gt","","",104,[[["position",3]]]],[11,"ge","","",104,[[["position",3]]]],[11,"partial_cmp","","",105,[[["traversable",4]],[["option",4],["ordering",4]]]],[11,"lt","","",105,[[["traversable",4]]]],[11,"le","","",105,[[["traversable",4]]]],[11,"gt","","",105,[[["traversable",4]]]],[11,"ge","","",105,[[["traversable",4]]]],[11,"fmt","map_model::edits::compat","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","","",6,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::edits","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",17,[[["formatter",3]],["result",6]]],[11,"fmt","","",18,[[["formatter",3]],["result",6]]],[11,"fmt","","",19,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::map","",30,[[["formatter",3]],["result",6]]],[11,"fmt","","",31,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::area","",32,[[["formatter",3]],["result",6]]],[11,"fmt","","",33,[[["formatter",3]],["result",6]]],[11,"fmt","","",34,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::building","",35,[[["formatter",3]],["result",6]]],[11,"fmt","","",36,[[["formatter",3]],["result",6]]],[11,"fmt","","",37,[[["formatter",3]],["result",6]]],[11,"fmt","","",38,[[["formatter",3]],["result",6]]],[11,"fmt","","",39,[[["formatter",3]],["result",6]]],[11,"fmt","","",41,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::bus_stop","",43,[[["formatter",3]],["result",6]]],[11,"fmt","","",44,[[["formatter",3]],["result",6]]],[11,"fmt","","",45,[[["formatter",3]],["result",6]]],[11,"fmt","","",46,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::intersection","",47,[[["formatter",3]],["result",6]]],[11,"fmt","","",48,[[["formatter",3]],["result",6]]],[11,"fmt","","",49,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::lane","",50,[[["formatter",3]],["result",6]]],[11,"fmt","","",51,[[["formatter",3]],["result",6]]],[11,"fmt","","",52,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::parking_lot","",53,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::road","",55,[[["formatter",3]],["result",6]]],[11,"fmt","","",56,[[["formatter",3]],["result",6]]],[11,"fmt","","",57,[[["formatter",3]],["result",6]]],[11,"fmt","","",58,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::stop_signs","",59,[[["formatter",3]],["result",6]]],[11,"fmt","","",60,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::traffic_signals","",61,[[["formatter",3]],["result",6]]],[11,"fmt","","",62,[[["formatter",3]],["result",6]]],[11,"fmt","","",63,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::turn","",64,[[["formatter",3]],["result",6]]],[11,"fmt","","",65,[[["formatter",3]],["result",6]]],[11,"fmt","","",66,[[["formatter",3]],["result",6]]],[11,"fmt","","",67,[[["formatter",3]],["result",6]]],[11,"fmt","","",68,[[["formatter",3]],["result",6]]],[11,"fmt","","",69,[[["formatter",3]],["result",6]]],[11,"fmt","","",70,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::zone","",71,[[["formatter",3]],["result",6]]],[11,"fmt","","",72,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::osm","",73,[[["formatter",3]],["result",6]]],[11,"fmt","","",74,[[["formatter",3]],["result",6]]],[11,"fmt","","",75,[[["formatter",3]],["result",6]]],[11,"fmt","","",76,[[["formatter",3]],["result",6]]],[11,"fmt","","",77,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind::uber_turns","",83,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind::vehicles","",86,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::connectivity","",3,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind","",88,[[["formatter",3]],["result",6]]],[11,"fmt","","",89,[[["formatter",3]],["result",6]]],[11,"fmt","","",90,[[["formatter",3]],["result",6]]],[11,"fmt","","",91,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::raw","",93,[[["formatter",3]],["result",6]]],[11,"fmt","","",94,[[["formatter",3]],["result",6]]],[11,"fmt","","",95,[[["formatter",3]],["result",6]]],[11,"fmt","","",96,[[["formatter",3]],["result",6]]],[11,"fmt","","",97,[[["formatter",3]],["result",6]]],[11,"fmt","","",98,[[["formatter",3]],["result",6]]],[11,"fmt","","",99,[[["formatter",3]],["result",6]]],[11,"fmt","","",100,[[["formatter",3]],["result",6]]],[11,"fmt","","",101,[[["formatter",3]],["result",6]]],[11,"fmt","","",102,[[["formatter",3]],["result",6]]],[11,"fmt","","",103,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::traversable","",104,[[["formatter",3]],["result",6]]],[11,"fmt","","",105,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::area","",32,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::building","",35,[[["formatter",3]],["result",6]]],[11,"fmt","","",42,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::bus_stop","",43,[[["formatter",3]],["result",6]]],[11,"fmt","","",44,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::intersection","",47,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::lane","",50,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::parking_lot","",53,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::road","",55,[[["formatter",3]],["result",6]]],[11,"fmt","","",56,[[["formatter",3]],["result",6]]],[11,"fmt","","",57,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::objects::turn","",64,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::osm","",74,[[["formatter",3]],["result",6]]],[11,"fmt","","",75,[[["formatter",3]],["result",6]]],[11,"fmt","","",76,[[["formatter",3]],["result",6]]],[11,"fmt","","",77,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::pathfind","",91,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::raw","",94,[[["formatter",3]],["result",6]]],[11,"fmt","map_model::traversable","",104,[[["formatter",3]],["result",6]]],[11,"fmt","","",105,[[["formatter",3]],["result",6]]],[11,"sub","map_model::pathfind","",90,[[]]],[11,"not","","",90,[[]]],[11,"bitand","","",90,[[]]],[11,"bitor","","",90,[[]]],[11,"bitxor","","",90,[[]]],[11,"hash","map_model::objects::area","",32,[[]]],[11,"hash","","",33,[[]]],[11,"hash","map_model::objects::building","",35,[[]]],[11,"hash","map_model::objects::bus_stop","",43,[[]]],[11,"hash","","",44,[[]]],[11,"hash","map_model::objects::intersection","",47,[[]]],[11,"hash","","",48,[[]]],[11,"hash","map_model::objects::lane","",50,[[]]],[11,"hash","","",51,[[]]],[11,"hash","map_model::objects::parking_lot","",53,[[]]],[11,"hash","map_model::objects::road","",55,[[]]],[11,"hash","","",56,[[]]],[11,"hash","","",57,[[]]],[11,"hash","map_model::objects::turn","",64,[[]]],[11,"hash","","",68,[[]]],[11,"hash","","",69,[[]]],[11,"hash","map_model::osm","",74,[[]]],[11,"hash","","",75,[[]]],[11,"hash","","",76,[[]]],[11,"hash","","",77,[[]]],[11,"hash","map_model::connectivity","",3,[[]]],[11,"hash","map_model::pathfind","",88,[[]]],[11,"hash","map_model::raw","",94,[[]]],[11,"hash","","",100,[[]]],[11,"hash","","",101,[[]]],[11,"hash","map_model::traversable","",105,[[]]],[11,"serialize","map_model::city","",0,[[],["result",4]]],[11,"serialize","map_model::edits::perma","",9,[[],["result",4]]],[11,"serialize","","",10,[[],["result",4]]],[11,"serialize","","",12,[[],["result",4]]],[11,"serialize","map_model::edits","",18,[[],["result",4]]],[11,"serialize","map_model::map","",30,[[],["result",4]]],[11,"serialize","","",31,[[],["result",4]]],[11,"serialize","map_model::objects::area","",32,[[],["result",4]]],[11,"serialize","","",33,[[],["result",4]]],[11,"serialize","","",34,[[],["result",4]]],[11,"serialize","map_model::objects::building","",35,[[],["result",4]]],[11,"serialize","","",36,[[],["result",4]]],[11,"serialize","","",37,[[],["result",4]]],[11,"serialize","","",38,[[],["result",4]]],[11,"serialize","","",39,[[],["result",4]]],[11,"serialize","","",41,[[],["result",4]]],[11,"serialize","map_model::objects::bus_stop","",43,[[],["result",4]]],[11,"serialize","","",44,[[],["result",4]]],[11,"serialize","","",45,[[],["result",4]]],[11,"serialize","","",46,[[],["result",4]]],[11,"serialize","map_model::objects::intersection","",47,[[],["result",4]]],[11,"serialize","","",48,[[],["result",4]]],[11,"serialize","","",49,[[],["result",4]]],[11,"serialize","map_model::objects::lane","",50,[[],["result",4]]],[11,"serialize","","",51,[[],["result",4]]],[11,"serialize","","",52,[[],["result",4]]],[11,"serialize","map_model::objects::parking_lot","",53,[[],["result",4]]],[11,"serialize","","",54,[[],["result",4]]],[11,"serialize","map_model::objects::road","",55,[[],["result",4]]],[11,"serialize","","",56,[[],["result",4]]],[11,"serialize","","",57,[[],["result",4]]],[11,"serialize","","",58,[[],["result",4]]],[11,"serialize","map_model::objects::stop_signs","",59,[[],["result",4]]],[11,"serialize","","",60,[[],["result",4]]],[11,"serialize","map_model::objects::traffic_signals","",61,[[],["result",4]]],[11,"serialize","","",62,[[],["result",4]]],[11,"serialize","","",63,[[],["result",4]]],[11,"serialize","map_model::objects::turn","",64,[[],["result",4]]],[11,"serialize","","",65,[[],["result",4]]],[11,"serialize","","",66,[[],["result",4]]],[11,"serialize","","",67,[[],["result",4]]],[11,"serialize","","",68,[[],["result",4]]],[11,"serialize","","",69,[[],["result",4]]],[11,"serialize","","",70,[[],["result",4]]],[11,"serialize","map_model::objects::zone","",71,[[],["result",4]]],[11,"serialize","","",72,[[],["result",4]]],[11,"serialize","map_model::osm","",74,[[],["result",4]]],[11,"serialize","","",75,[[],["result",4]]],[11,"serialize","","",76,[[],["result",4]]],[11,"serialize","","",77,[[],["result",4]]],[11,"serialize","map_model::pathfind::ch","",78,[[],["result",4]]],[11,"serialize","map_model::pathfind::node_map","",79,[[],["result",4]]],[11,"serialize","map_model::pathfind::pathfinder","",81,[[],["result",4]]],[11,"serialize","map_model::pathfind::uber_turns","",82,[[],["result",4]]],[11,"serialize","","",83,[[],["result",4]]],[11,"serialize","map_model::pathfind::vehicles","",85,[[],["result",4]]],[11,"serialize","","",86,[[],["result",4]]],[11,"serialize","map_model::pathfind::walking","",87,[[],["result",4]]],[11,"serialize","map_model::connectivity","",3,[[],["result",4]]],[11,"serialize","map_model::pathfind","",88,[[],["result",4]]],[11,"serialize","","",89,[[],["result",4]]],[11,"serialize","","",90,[[],["result",4]]],[11,"serialize","","",91,[[],["result",4]]],[11,"serialize","","",92,[[],["result",4]]],[11,"serialize","map_model::raw","",93,[[],["result",4]]],[11,"serialize","","",94,[[],["result",4]]],[11,"serialize","","",95,[[],["result",4]]],[11,"serialize","","",96,[[],["result",4]]],[11,"serialize","","",97,[[],["result",4]]],[11,"serialize","","",98,[[],["result",4]]],[11,"serialize","","",99,[[],["result",4]]],[11,"serialize","","",100,[[],["result",4]]],[11,"serialize","","",102,[[],["result",4]]],[11,"serialize","","",103,[[],["result",4]]],[11,"serialize","map_model::traversable","",104,[[],["result",4]]],[11,"serialize","","",105,[[],["result",4]]],[11,"serialize","map_model","",106,[[],["result",4]]],[11,"deserialize","map_model::city","",0,[[],["result",4]]],[11,"deserialize","map_model::edits::compat","",4,[[],["result",4]]],[11,"deserialize","","",5,[[],["result",4]]],[11,"deserialize","","",6,[[],["result",4]]],[11,"deserialize","","",7,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","map_model::edits::perma","",9,[[],["result",4]]],[11,"deserialize","","",10,[[],["result",4]]],[11,"deserialize","","",12,[[],["result",4]]],[11,"deserialize","map_model::edits","",18,[[],["result",4]]],[11,"deserialize","map_model::map","",30,[[],["result",4]]],[11,"deserialize","","",31,[[],["result",4]]],[11,"deserialize","map_model::objects::area","",32,[[],["result",4]]],[11,"deserialize","","",33,[[],["result",4]]],[11,"deserialize","","",34,[[],["result",4]]],[11,"deserialize","map_model::objects::building","",35,[[],["result",4]]],[11,"deserialize","","",36,[[],["result",4]]],[11,"deserialize","","",37,[[],["result",4]]],[11,"deserialize","","",38,[[],["result",4]]],[11,"deserialize","","",39,[[],["result",4]]],[11,"deserialize","","",41,[[],["result",4]]],[11,"deserialize","map_model::objects::bus_stop","",43,[[],["result",4]]],[11,"deserialize","","",44,[[],["result",4]]],[11,"deserialize","","",45,[[],["result",4]]],[11,"deserialize","","",46,[[],["result",4]]],[11,"deserialize","map_model::objects::intersection","",47,[[],["result",4]]],[11,"deserialize","","",48,[[],["result",4]]],[11,"deserialize","","",49,[[],["result",4]]],[11,"deserialize","map_model::objects::lane","",50,[[],["result",4]]],[11,"deserialize","","",51,[[],["result",4]]],[11,"deserialize","","",52,[[],["result",4]]],[11,"deserialize","map_model::objects::parking_lot","",53,[[],["result",4]]],[11,"deserialize","","",54,[[],["result",4]]],[11,"deserialize","map_model::objects::road","",55,[[],["result",4]]],[11,"deserialize","","",56,[[],["result",4]]],[11,"deserialize","","",57,[[],["result",4]]],[11,"deserialize","","",58,[[],["result",4]]],[11,"deserialize","map_model::objects::stop_signs","",59,[[],["result",4]]],[11,"deserialize","","",60,[[],["result",4]]],[11,"deserialize","map_model::objects::traffic_signals","",61,[[],["result",4]]],[11,"deserialize","","",62,[[],["result",4]]],[11,"deserialize","","",63,[[],["result",4]]],[11,"deserialize","map_model::objects::turn","",64,[[],["result",4]]],[11,"deserialize","","",65,[[],["result",4]]],[11,"deserialize","","",66,[[],["result",4]]],[11,"deserialize","","",67,[[],["result",4]]],[11,"deserialize","","",68,[[],["result",4]]],[11,"deserialize","","",69,[[],["result",4]]],[11,"deserialize","","",70,[[],["result",4]]],[11,"deserialize","map_model::objects::zone","",71,[[],["result",4]]],[11,"deserialize","","",72,[[],["result",4]]],[11,"deserialize","map_model::osm","",74,[[],["result",4]]],[11,"deserialize","","",75,[[],["result",4]]],[11,"deserialize","","",76,[[],["result",4]]],[11,"deserialize","","",77,[[],["result",4]]],[11,"deserialize","map_model::pathfind::ch","",78,[[],["result",4]]],[11,"deserialize","map_model::pathfind::node_map","",80,[[],["result",4]]],[11,"deserialize","map_model::pathfind::pathfinder","",81,[[],["result",4]]],[11,"deserialize","map_model::pathfind::uber_turns","",82,[[],["result",4]]],[11,"deserialize","","",83,[[],["result",4]]],[11,"deserialize","map_model::pathfind::vehicles","",85,[[],["result",4]]],[11,"deserialize","","",86,[[],["result",4]]],[11,"deserialize","map_model::pathfind::walking","",87,[[],["result",4]]],[11,"deserialize","map_model::connectivity","",3,[[],["result",4]]],[11,"deserialize","map_model::pathfind","",88,[[],["result",4]]],[11,"deserialize","","",89,[[],["result",4]]],[11,"deserialize","","",90,[[],["result",4]]],[11,"deserialize","","",91,[[],["result",4]]],[11,"deserialize","","",92,[[],["result",4]]],[11,"deserialize","map_model::raw","",93,[[],["result",4]]],[11,"deserialize","","",94,[[],["result",4]]],[11,"deserialize","","",95,[[],["result",4]]],[11,"deserialize","","",96,[[],["result",4]]],[11,"deserialize","","",97,[[],["result",4]]],[11,"deserialize","","",98,[[],["result",4]]],[11,"deserialize","","",99,[[],["result",4]]],[11,"deserialize","","",100,[[],["result",4]]],[11,"deserialize","","",102,[[],["result",4]]],[11,"deserialize","","",103,[[],["result",4]]],[11,"deserialize","map_model::traversable","",104,[[],["result",4]]],[11,"deserialize","","",105,[[],["result",4]]],[11,"deserialize","map_model","",106,[[],["result",4]]],[11,"enum_into_u32","map_model::pathfind","",90,[[]]],[11,"enum_from_u32","","",90,[[]]],[11,"serialize","","",90,[[["enumset",3],["serializer",8],["pathconstraints",4]],["result",4]]],[11,"deserialize","","",90,[[["deserializer",8]],[["enumset",3],["result",4]]]],[11,"to_perma","map_model::edits","",19,[[["map",3]],["permanenteditcmd",4]]],[11,"to_permanent","","Encode the edits in a permanent format, referring to …",16,[[["map",3]],["permanentmapedits",3]]],[11,"to_permanent","","",17,[[["map",3]],["permanenteditintersection",4]]],[11,"new_edits","map_model","",106,[[],["mapedits",3]]],[11,"get_edits","","",106,[[],["mapedits",3]]],[11,"unsaved_edits","","",106,[[]]],[11,"get_r_edit","","",106,[[["roadid",3]],["editroad",3]]],[11,"edit_road_cmd","","",106,[[["roadid",3],["fn",8]],["editcmd",4]]],[11,"get_i_edit","","Panics on borders",106,[[["intersectionid",3]],["editintersection",4]]],[11,"save_edits","","",106,[[]]],[11,"must_apply_edits","","",106,[[["mapedits",3]]]],[11,"try_apply_edits","","",106,[[["mapedits",3]]]],[11,"apply_edits","","",106,[[["mapedits",3]]]],[11,"recalculate_pathfinding_after_edits","","This can expensive, so don\'t constantly do it while …",106,[[["timer",3]]]],[11,"incremental_edit_traffic_signal","","Since the player is in the middle of editing, the signal …",106,[[["controltrafficsignal",3]]]],[11,"create_from_raw","","",106,[[["timer",3],["rawmap",3]],["map",3]]],[11,"import_minimal","","Use for creating a map directly from some external …",106,[[["gpsbounds",3],["vec",3],["bounds",3],["vec",3],["intersection",3],["lane",3],["turn",3],["mapname",3],["vec",3],["vec",3],["road",3]],["map",3]]],[11,"load_synchronously","","Load a map from a local serialized Map or RawMap. Note …",106,[[["timer",3],["string",3]],["map",3]]],[11,"map_loaded_directly","","After deserializing a map directly, call this after.",106,[[]]],[11,"blank","","Just for temporary std::mem::replace tricks.",106,[[],["map",3]]],[11,"all_roads","","",106,[[],["vec",3]]],[11,"all_lanes","","",106,[[],["vec",3]]],[11,"all_intersections","","",106,[[],["vec",3]]],[11,"all_turns","","",106,[[],["btreemap",3]]],[11,"all_buildings","","",106,[[],["vec",3]]],[11,"all_areas","","",106,[[],["vec",3]]],[11,"all_parking_lots","","",106,[[],["vec",3]]],[11,"all_zones","","",106,[[],["vec",3]]],[11,"maybe_get_r","","",106,[[["roadid",3]],[["road",3],["option",4]]]],[11,"maybe_get_l","","",106,[[["laneid",3]],[["lane",3],["option",4]]]],[11,"maybe_get_i","","",106,[[["intersectionid",3]],[["option",4],["intersection",3]]]],[11,"maybe_get_t","","",106,[[["turnid",3]],[["option",4],["turn",3]]]],[11,"maybe_get_b","","",106,[[["buildingid",3]],[["option",4],["building",3]]]],[11,"maybe_get_pl","","",106,[[["parkinglotid",3]],[["option",4],["parkinglot",3]]]],[11,"maybe_get_a","","",106,[[["areaid",3]],[["area",3],["option",4]]]],[11,"maybe_get_bs","","",106,[[["busstopid",3]],[["busstop",3],["option",4]]]],[11,"maybe_get_stop_sign","","",106,[[["intersectionid",3]],[["option",4],["controlstopsign",3]]]],[11,"maybe_get_traffic_signal","","",106,[[["intersectionid",3]],[["option",4],["controltrafficsignal",3]]]],[11,"maybe_get_br","","",106,[[["busrouteid",3]],[["busroute",3],["option",4]]]],[11,"get_r","","",106,[[["roadid",3]],["road",3]]],[11,"get_l","","",106,[[["laneid",3]],["lane",3]]],[11,"get_i","","",106,[[["intersectionid",3]],["intersection",3]]],[11,"get_t","","",106,[[["turnid",3]],["turn",3]]],[11,"get_b","","",106,[[["buildingid",3]],["building",3]]],[11,"get_a","","",106,[[["areaid",3]],["area",3]]],[11,"get_pl","","",106,[[["parkinglotid",3]],["parkinglot",3]]],[11,"get_stop_sign","","",106,[[["intersectionid",3]],["controlstopsign",3]]],[11,"get_traffic_signal","","",106,[[["intersectionid",3]],["controltrafficsignal",3]]],[11,"get_turns_in_intersection","","",106,[[["intersectionid",3]],[["vec",3],["turn",3]]]],[11,"get_turns_from_lane","","The turns may belong to two different intersections!",106,[[["laneid",3]],[["vec",3],["turn",3]]]],[11,"get_turns_to_lane","","",106,[[["laneid",3]],[["vec",3],["turn",3]]]],[11,"get_turn_between","","",106,[[["intersectionid",3],["laneid",3]],[["option",4],["turnid",3]]]],[11,"get_next_turns_and_lanes","","",106,[[["intersectionid",3],["laneid",3]],["vec",3]]],[11,"get_turns_for","","",106,[[["pathconstraints",4],["laneid",3]],[["vec",3],["turn",3]]]],[11,"get_next_roads","","",106,[[["roadid",3]],[["btreeset",3],["roadid",3]]]],[11,"get_parent","","",106,[[["laneid",3]],["road",3]]],[11,"get_gps_bounds","","",106,[[],["gpsbounds",3]]],[11,"get_bounds","","",106,[[],["bounds",3]]],[11,"get_city_name","","",106,[[],["cityname",3]]],[11,"get_name","","",106,[[],["mapname",3]]],[11,"all_bus_stops","","",106,[[],["btreemap",3]]],[11,"get_bs","","",106,[[["busstopid",3]],["busstop",3]]],[11,"get_br","","",106,[[["busrouteid",3]],["busroute",3]]],[11,"all_bus_routes","","",106,[[],["vec",3]]],[11,"get_bus_route","","",106,[[],[["busroute",3],["option",4]]]],[11,"get_routes_serving_stop","","",106,[[["busstopid",3]],[["busroute",3],["vec",3]]]],[11,"building_to_road","","",106,[[["buildingid",3]],["road",3]]],[11,"all_incoming_borders","","This and all_outgoing_borders are expensive to constantly …",106,[[],[["vec",3],["intersection",3]]]],[11,"all_outgoing_borders","","",106,[[],[["vec",3],["intersection",3]]]],[11,"save","","",106,[[]]],[11,"find_driving_lane_near_building","","Cars trying to park near this building should head for …",106,[[["buildingid",3]],["laneid",3]]],[11,"get_boundary_polygon","","",106,[[],["polygon",3]]],[11,"pathfind","","",106,[[["pathrequest",3]],[["result",6],["path",3]]]],[11,"pathfind_avoiding_lanes","","",106,[[["laneid",3],["btreeset",3],["pathrequest",3]],[["option",4],["path",3]]]],[11,"pathfind_with_params","","",106,[[["routingparams",3],["pathrequest",3]],[["result",6],["path",3]]]],[11,"should_use_transit","","",106,[[["position",3]],["option",4]]],[11,"get_movement","","",106,[[["turnid",3]],[["option",4],["movementid",3]]]],[11,"find_r_by_osm_id","","",106,[[["originalroad",3]],[["roadid",3],["result",6]]]],[11,"find_i_by_osm_id","","",106,[[["nodeid",3]],[["intersectionid",3],["result",6]]]],[11,"find_b_by_osm_id","","",106,[[["osmid",4]],[["option",4],["buildingid",3]]]],[11,"find_br","","",106,[[["relationid",3]],[["option",4],["busrouteid",3]]]],[11,"hack_override_offstreet_spots","","",106,[[]]],[11,"hack_override_offstreet_spots_individ","","",106,[[["buildingid",3]]]],[11,"hack_override_bldg_type","","",106,[[["buildingtype",4],["buildingid",3]]]],[11,"hack_override_orig_spawn_times","","",106,[[["vec",3],["busrouteid",3],["time",3]]]],[11,"hack_add_area","","",106,[[["areatype",4],["polygon",3],["tags",3]]]],[11,"hack_override_routing_params","","",106,[[["routingparams",3],["timer",3]]]],[11,"get_languages","","",106,[[],["btreeset",3]]],[11,"get_config","","",106,[[],["mapconfig",3]]],[11,"simple_path_btwn","","Simple search along undirected roads",106,[[["intersectionid",3]],[["vec",3],["option",4]]]],[11,"routing_params","","Returns the routing params baked into the map.",106,[[],["routingparams",3]]]],"p":[[3,"City"],[3,"WalkingOptions"],[3,"Item"],[4,"WalkingNode"],[3,"OriginalLane"],[3,"ChangeLaneType"],[3,"ReverseLane"],[3,"ChangeSpeedLimit"],[3,"ChangeAccessRestrictions"],[3,"PermanentMapEdits"],[4,"PermanentEditIntersection"],[13,"StopSign"],[4,"PermanentEditCmd"],[13,"ChangeRoad"],[13,"ChangeIntersection"],[13,"ChangeRouteSchedule"],[3,"MapEdits"],[4,"EditIntersection"],[3,"EditRoad"],[4,"EditCmd"],[13,"ChangeRoad"],[13,"ChangeIntersection"],[13,"ChangeRouteSchedule"],[3,"EditEffects"],[3,"Piece"],[3,"LaneSpec"],[3,"InitialMap"],[3,"Road"],[3,"Intersection"],[3,"Matcher"],[3,"MapConfig"],[4,"DrivingSide"],[3,"AreaID"],[4,"AreaType"],[3,"Area"],[3,"BuildingID"],[3,"Building"],[3,"Amenity"],[4,"OffstreetParking"],[4,"BuildingType"],[13,"Residential"],[3,"NamePerLanguage"],[4,"AmenityType"],[3,"BusStopID"],[3,"BusRouteID"],[3,"BusStop"],[3,"BusRoute"],[3,"IntersectionID"],[4,"IntersectionType"],[3,"Intersection"],[3,"LaneID"],[4,"LaneType"],[3,"Lane"],[3,"ParkingLotID"],[3,"ParkingLot"],[3,"RoadID"],[4,"Direction"],[3,"DirectedRoadID"],[3,"Road"],[3,"ControlStopSign"],[3,"RoadWithStopSign"],[3,"ControlTrafficSignal"],[3,"Stage"],[4,"StageType"],[3,"TurnID"],[4,"TurnType"],[4,"TurnPriority"],[3,"Turn"],[3,"MovementID"],[3,"CompressedMovementID"],[3,"Movement"],[3,"AccessRestrictions"],[3,"Zone"],[4,"RoadRank"],[3,"NodeID"],[3,"WayID"],[3,"RelationID"],[4,"OsmID"],[3,"ContractionHierarchyPathfinder"],[3,"NodeMap"],[3,"InnerNodeMap"],[4,"Pathfinder"],[3,"IntersectionCluster"],[3,"UberTurn"],[3,"UberTurnGroup"],[3,"VehiclePathfinder"],[4,"Node"],[3,"SidewalkPathfinder"],[4,"PathStep"],[3,"Path"],[4,"PathConstraints"],[3,"PathRequest"],[3,"RoutingParams"],[3,"RawMap"],[3,"OriginalRoad"],[3,"RawRoad"],[3,"RawIntersection"],[3,"RawBuilding"],[3,"RawArea"],[3,"RawParkingLot"],[4,"RestrictionType"],[3,"TurnRestriction"],[3,"RawBusRoute"],[3,"RawBusStop"],[3,"Position"],[4,"Traversable"],[3,"Map"]]},\ "one_step_import":{"doc":"","i":[[5,"main","one_step_import","Import a one-shot A/B Street map in a single command. …",null,[[],["result",6]]]],"p":[]},\ "osm_viewer":{"doc":"","i":[[0,"viewer","osm_viewer","",null,null],[6,"App","osm_viewer::viewer","",null,null],[3,"Viewer","","",null,null],[12,"top_panel","","",0,null],[12,"fixed_object_outline","","",0,null],[12,"minimap","","",0,null],[12,"businesses","","",0,null],[11,"new","","",0,[[["eventctx",3],["simpleapp",3]],[["box",3],["state",8]]]],[11,"recalculate_top_panel","","",0,[[["eventctx",3],["simpleapp",3],["widget",3],["option",4]]]],[11,"calculate_tags","","",0,[[["simpleapp",3],["eventctx",3]],["widget",3]]],[3,"BusinessSearch","","",null,null],[12,"counts","","",1,null],[12,"show","","",1,null],[12,"highlight","","",1,null],[12,"hovering_on_amenity","","",1,null],[11,"new","","",1,[[["eventctx",3],["simpleapp",3]],["businesssearch",3]]],[11,"update","","",1,[[["eventctx",3],["simpleapp",3]]]],[11,"hovering_on_amenity","","",1,[[["eventctx",3],["simpleapp",3],["option",4],["string",3]]]],[11,"render","","",1,[[["eventctx",3]],["widget",3]]],[3,"MinimapController","","",null,null],[5,"main","osm_viewer","",null,[[]]],[11,"from","osm_viewer::viewer","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"into_any","","",0,[[["global",3],["box",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",0,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",0,[[],["any",8]]],[11,"as_any_mut","","",0,[[],["any",8]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"into_any","","",1,[[["global",3],["box",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",1,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",1,[[],["any",8]]],[11,"as_any_mut","","",1,[[],["any",8]]],[11,"into_any_arc","","",1,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"into_any","","",2,[[["global",3],["box",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",2,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",2,[[],["any",8]]],[11,"as_any_mut","","",2,[[],["any",8]]],[11,"into_any_arc","","",2,[[["arc",3]],[["arc",3],["any",8]]]],[11,"event","","",0,[[["eventctx",3],["simpleapp",3]],[["transition",4],["simpleapp",3]]]],[11,"draw_baselayer","","",0,[[],["drawbaselayer",4]]],[11,"draw","","",0,[[["gfxctx",3],["simpleapp",3]]]],[11,"has_zorder","","",2,[[["simpleapp",3]]]],[11,"make_legend","","",2,[[["eventctx",3],["simpleapp",3]],["widget",3]]]],"p":[[3,"Viewer"],[3,"BusinessSearch"],[3,"MinimapController"]]},\ "parking_mapper":{"doc":"","i":[[0,"mapper","parking_mapper","",null,null],[6,"App","parking_mapper::mapper","",null,null],[3,"ParkingMapper","","",null,null],[12,"panel","","",0,null],[12,"draw_layer","","",0,null],[12,"show","","",0,null],[12,"selected","","",0,null],[12,"data","","",0,null],[4,"Show","","",null,null],[13,"TODO","","",1,null],[13,"Done","","",1,null],[13,"DividedHighways","","",1,null],[13,"UnmappedDividedHighways","","",1,null],[13,"OverlappingStuff","","",1,null],[4,"Value","","",null,null],[13,"BothSides","","",2,null],[13,"NoStopping","","",2,null],[13,"RightOnly","","",2,null],[13,"LeftOnly","","",2,null],[13,"Complicated","","",2,null],[11,"new","","",0,[[["eventctx",3],["simpleapp",3]],[["box",3],["state",8]]]],[11,"make","","",0,[[["wayid",3],["btreemap",3],["eventctx",3],["show",4],["value",4],["simpleapp",3]],[["box",3],["state",8]]]],[3,"ChangeWay","","",null,null],[12,"panel","","",3,null],[12,"draw","","",3,null],[12,"osm_way_id","","",3,null],[12,"data","","",3,null],[12,"show","","",3,null],[11,"new","","",3,[[["wayid",3],["btreemap",3],["eventctx",3],["hashset",3],["show",4],["value",4],["simpleapp",3]],[["box",3],["state",8]]]],[5,"generate_osmc","","",null,[[["btreemap",3],["timer",3]],["result",6]]],[5,"find_divided_highways","","",null,[[["simpleapp",3]],[["roadid",3],["hashset",3]]]],[5,"find_overlapping_stuff","","",null,[[["timer",3],["simpleapp",3]],[["polygon",3],["vec",3]]]],[5,"main","parking_mapper","",null,[[]]],[11,"from","parking_mapper::mapper","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"into_any","","",0,[[["global",3],["box",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",0,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",0,[[],["any",8]]],[11,"as_any_mut","","",0,[[],["any",8]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_owned","","",1,[[]]],[11,"clone_into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"into_any","","",1,[[["global",3],["box",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",1,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",1,[[],["any",8]]],[11,"as_any_mut","","",1,[[],["any",8]]],[11,"into_any_arc","","",1,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"to_owned","","",2,[[]]],[11,"clone_into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"into_any","","",2,[[["global",3],["box",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",2,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",2,[[],["any",8]]],[11,"as_any_mut","","",2,[[],["any",8]]],[11,"into_any_arc","","",2,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"into_any","","",3,[[["global",3],["box",3]],[["box",3],["any",8],["global",3]]]],[11,"into_any_rc","","",3,[[["rc",3]],[["rc",3],["any",8]]]],[11,"as_any","","",3,[[],["any",8]]],[11,"as_any_mut","","",3,[[],["any",8]]],[11,"clone","","",1,[[],["show",4]]],[11,"clone","","",2,[[],["value",4]]],[11,"eq","","",1,[[["show",4]]]],[11,"eq","","",2,[[["value",4]]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"event","","",0,[[["simpleapp",3],["eventctx",3]],[["simpleapp",3],["transition",4]]]],[11,"draw","","",0,[[["simpleapp",3],["gfxctx",3]]]],[11,"event","","",3,[[["simpleapp",3],["eventctx",3]],[["simpleapp",3],["transition",4]]]],[11,"draw","","",3,[[["simpleapp",3],["gfxctx",3]]]]],"p":[[3,"ParkingMapper"],[4,"Show"],[4,"Value"],[3,"ChangeWay"]]},\ diff --git a/rustdoc/src/convert_osm/extract.rs.html b/rustdoc/src/convert_osm/extract.rs.html index 84b69ff3f5..bd3031f09c 100644 --- a/rustdoc/src/convert_osm/extract.rs.html +++ b/rustdoc/src/convert_osm/extract.rs.html @@ -639,6 +639,13 @@ 636 637 638 +639 +640 +641 +642 +643 +644 +645

 use std::collections::{BTreeSet, HashMap};
 
@@ -1093,6 +1100,13 @@
             return false;
         }
     }
+    if highway == "pedestrian"
+        && tags.is("bicycle", "dismount")
+        && opts.map_config.inferred_sidewalks
+    {
+        return false;
+    }
+
     // Import most service roads. Always ignore driveways, golf cart paths, and always reserve
     // parking_aisles for parking lots.
     if highway == "service" && tags.is_any("service", vec!["driveway", "parking_aisle"]) {
diff --git a/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html b/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html
index e75164fb28..485df707b4 100644
--- a/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html
+++ b/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html
@@ -122,7 +122,7 @@
 /// The output of `rustdoc -V`
 pub const RUSTDOC_VERSION: &str = "rustdoc 1.50.0 (cb75ad5db 2021-02-10)";
 /// The built-time in RFC2822, UTC
-pub const BUILT_TIME_UTC: &str = "Mon, 22 Mar 2021 23:42:04 +0000";
+pub const BUILT_TIME_UTC: &str = "Tue, 23 Mar 2021 04:39:14 +0000";
 /// The target architecture, given by `cfg!(target_arch)`.
 pub const CFG_TARGET_ARCH: &str = "x86_64";
 /// The endianness, given by `cfg!(target_endian)`.
diff --git a/rustdoc/src/map_model/objects/turn.rs.html b/rustdoc/src/map_model/objects/turn.rs.html
index 499f49a109..56e37e9ab0 100644
--- a/rustdoc/src/map_model/objects/turn.rs.html
+++ b/rustdoc/src/map_model/objects/turn.rs.html
@@ -358,6 +358,7 @@
 355
 356
 357
+358
 
 use std::collections::{BTreeMap, BTreeSet};
 use std::fmt;
@@ -700,10 +701,11 @@
     let num_pts = polylines[0].points().len();
     for pl in &polylines {
         if num_pts != pl.points().len() {
-            warn!(
-                "Movement between {} and {} can't make nice geometry",
-                from, to
-            );
+            // Kiiiiinda spammy
+            /*warn!(
+                "Movement between {} and {} can't make nice geometry",
+                from, to
+            );*/
             return Ok(polylines[0].clone());
         }
     }