This method tests for !=
.
diff --git a/rustdoc/search-index.js b/rustdoc/search-index.js
index 62af99b096..96a24b5866 100644
--- a/rustdoc/search-index.js
+++ b/rustdoc/search-index.js
@@ -4,12 +4,12 @@ var searchIndex = JSON.parse('{\
"convert_osm":{"doc":"","i":[[3,"Options","convert_osm","",null,null],[12,"osm_input","","",0,null],[12,"name","","",0,null],[12,"clip","","The path to an osmosis boundary polygon. Highly recommended.",0,null],[12,"map_config","","",0,null],[12,"onstreet_parking","","",0,null],[12,"public_offstreet_parking","","",0,null],[12,"private_offstreet_parking","","",0,null],[12,"elevation","","If provided, pull elevation data from this SRTM file. The…",0,null],[12,"include_railroads","","OSM railway=rail will be included as light rail if so.…",0,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.",1,null],[13,"Blockface","","If OSM data is missing, then try to match data from…",1,null],[13,"SomeAdditionalWhereNoData","","If OSM data is missing, then infer parking lanes on some…",1,null],[12,"pct","convert_osm::OnstreetParking","[0, 100]",2,null],[4,"PublicOffstreetParking","convert_osm","How many spots are available in public parking garages?",null,null],[13,"None","","",3,null],[13,"GIS","","Pull data from…",3,null],[4,"PrivateOffstreetParking","","If a building doesn\'t have anything from…",null,null],[13,"FixedPerBldg","","",4,null],[5,"convert","","",null,[[["options",3],["timer",3]],["rawmap",3]]],[5,"use_amenities","","",null,[[["timer",3],["rawmap",3],["vec",3]]]],[5,"use_elevation","","",null,[[["timer",3],["rawmap",3]]]],[0,"clip","","",null,null],[5,"clip_map","convert_osm::clip","",null,[[["timer",3],["rawmap",3]]]],[0,"extract","convert_osm","",null,null],[3,"OsmExtract","convert_osm::extract","",null,null],[12,"roads","","Unsplit roads",5,null],[12,"traffic_signals","","Traffic signals to the direction they apply (or just true…",5,null],[12,"osm_node_ids","","",5,null],[12,"simple_turn_restrictions","","(ID, restriction type, from way ID, via node ID, to way ID)",5,null],[12,"complicated_turn_restrictions","","(relation ID, from way ID, via way ID, to way ID)",5,null],[12,"amenities","","(location, amenity)",5,null],[5,"extract_osm","","",null,[[["timer",3],["rawmap",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]]]],[0,"osm_geom","convert_osm","Utilities for extracting concrete geometry from OSM objects.",null,null],[5,"get_multipolygon_members","convert_osm::osm_geom","",null,[[["relation",3],["document",3],["relationid",3]],["vec",3]]],[5,"glue_multipolygon","","Take a bunch of partial PolyLines and attempt to glue them…",null,[[["relationid",3],["option",4],["ring",3],["timer",3],["vec",3]],[["vec",3],["polygon",3]]]],[5,"glue_to_boundary","","",null,[[["polyline",3],["ring",3]],[["polygon",3],["option",4]]]],[5,"multipoly_geometry","","",null,[[["relation",3],["document",3],["relationid",3]],[["polygon",3],["result",4],["string",3]]]],[0,"parking","convert_osm","",null,null],[5,"apply_parking","convert_osm::parking","",null,[[["timer",3],["rawmap",3],["options",3]]]],[5,"use_parking_hints","","",null,[[["timer",3],["string",3],["rawmap",3]]]],[5,"use_offstreet_parking","","",null,[[["timer",3],["string",3],["rawmap",3]]]],[5,"apply_private_offstreet_parking","","",null,[[["privateoffstreetparking",4],["rawmap",3]]]],[17,"DIRECTED_ROAD_THICKNESS","","",null,null],[0,"reader","convert_osm","",null,null],[3,"Document","convert_osm::reader","",null,null],[12,"gps_bounds","","",6,null],[12,"nodes","","",6,null],[12,"ways","","",6,null],[12,"relations","","",6,null],[3,"Node","","",null,null],[12,"pt","","",7,null],[12,"tags","","",7,null],[3,"Way","","",null,null],[12,"nodes","","",8,null],[12,"pts","","",8,null],[12,"tags","","",8,null],[3,"Relation","","",null,null],[12,"tags","","",9,null],[12,"members","","Role, member",9,null],[5,"read","","",null,[[["timer",3],["gpsbounds",3]],[["result",4],["document",3],["box",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 roads.…",null,[[["timer",3],["rawmap",3]]]],[5,"dump_output","","",null,[[["btreemap",3],["wayid",3],["hashmap",3],["multimap",3],["rawmap",3]]]],[5,"v1","","",null,[[["btreemap",3],["rawmap",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,[[["osmextract",3],["timer",3],["rawmap",3]]]],[5,"dedupe_angles","","",null,[[["vec",3],["pt2d",3]],[["vec",3],["pt2d",3]]]],[0,"srtm","convert_osm","",null,null],[3,"Elevation","convert_osm::srtm","",null,null],[12,"lon_offset","","",10,null],[12,"lat_offset","","",10,null],[12,"data","","",10,null],[17,"GRID_DIM","","",null,null],[11,"load","","",10,[[],[["result",4],["elevation",3],["error",3]]]],[11,"get","","",10,[[["lonlat",3]],["distance",3]]],[0,"transit","convert_osm","",null,null],[5,"extract_route","convert_osm::transit","",null,[[["relationid",3],["polygon",3],["relation",3],["timer",3],["document",3]],[["option",4],["rawbusroute",3]]]],[5,"glue_route","","",null,[[["vec",3],["wayid",3],["document",3]],[["vec",3],["result",4],["string",3]]]],[5,"snap_bus_stops","","",null,[[["rawmap",3],["hashmap",3],["timer",3],["rawbusroute",3]],[["rawbusroute",3],["string",3],["result",4]]]],[11,"from","convert_osm","",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","","",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","","",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,"vzip","","",3,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"to_owned","","",4,[[]]],[11,"clone_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::extract","",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","convert_osm::reader","",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","","",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,"from","convert_osm::srtm","",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,"clone","convert_osm","",1,[[],["onstreetparking",4]]],[11,"clone","","",3,[[],["publicoffstreetparking",4]]],[11,"clone","","",4,[[],["privateoffstreetparking",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"serialize","","",3,[[],["result",4]]],[11,"serialize","","",4,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]],[11,"deserialize","","",3,[[],["result",4]]],[11,"deserialize","","",4,[[],["result",4]]]],"p":[[3,"Options"],[4,"OnstreetParking"],[13,"SomeAdditionalWhereNoData"],[4,"PublicOffstreetParking"],[4,"PrivateOffstreetParking"],[3,"OsmExtract"],[3,"Document"],[3,"Node"],[3,"Way"],[3,"Relation"],[3,"Elevation"]]},\
"dump_map":{"doc":"","i":[[5,"main","dump_map","",null,[[]]]],"p":[]},\
"dump_scenario":{"doc":"","i":[[5,"main","dump_scenario","",null,[[]]]],"p":[]},\
-"experiment":{"doc":"","i":[[5,"main","experiment","",null,[[]]],[0,"after_level","","",null,null],[3,"Results","experiment::after_level","",null,null],[12,"panel","","",0,null],[12,"unlock_messages","","",0,null],[17,"ZOOM","","",null,null],[11,"new","","",0,[[["level",3],["eventctx",3],["simpleapp",3]],[["state",8],["box",3]]]],[0,"animation","experiment","",null,null],[3,"Animator","experiment::animation","",null,null],[12,"active","","",1,null],[12,"draw_current","","",1,null],[3,"Animation","","",null,null],[12,"start","","",2,null],[12,"end","","",2,null],[12,"effect","","",2,null],[3,"SnowEffect","","",null,null],[12,"rng","","",3,null],[12,"flakes","","",3,null],[12,"draw","","",3,null],[3,"Snowflake","","",null,null],[12,"start","","",4,null],[12,"initial_pos","","",4,null],[12,"fall_speed","","",4,null],[12,"swoop_period","","",4,null],[12,"max_swoop","","",4,null],[4,"Effect","","",null,null],[13,"Scale","","",5,null],[12,"orig","experiment::animation::Effect","",6,null],[12,"center","","",6,null],[12,"lerp_scale","","",6,null],[13,"FollowPath","experiment::animation","",5,null],[12,"color","experiment::animation::Effect","",7,null],[12,"width","","",7,null],[12,"pl","","",7,null],[11,"new","experiment::animation","",1,[[["eventctx",3]],["animator",3]]],[11,"add","","Pass in a future value for `now` to schedule a delayed…",1,[[["time",3],["duration",3],["effect",4]]]],[11,"event","","",1,[[["time",3],["eventctx",3]]]],[11,"draw","","",1,[[["gfxctx",3]]]],[11,"render","","",5,[[["geombatch",3]]]],[11,"pos","","",4,[[["time",3]],["pt2d",3]]],[11,"new","","",3,[[["eventctx",3]],["snoweffect",3]]],[11,"spawn_new","","",3,[[["time",3],["pt2d",3]],["snowflake",3]]],[11,"event","","",3,[[["time",3],["eventctx",3]]]],[11,"draw","","",3,[[["gfxctx",3]]]],[0,"before_level","experiment","",null,null],[3,"Picker","experiment::before_level","",null,null],[12,"panel","","",8,null],[12,"level","","",8,null],[12,"bldgs","","",8,null],[12,"current_picks","","",8,null],[17,"ZOOM","","",null,null],[11,"new","","",8,[[["simpleapp",3],["eventctx",3],["level",3]],[["state",8],["box",3]]]],[0,"buildings","experiment","",null,null],[3,"Buildings","experiment::buildings","",null,null],[12,"buildings","","",9,null],[12,"draw_all","","",9,null],[12,"total_housing_units","","",9,null],[4,"BldgState","","",null,null],[13,"Undelivered","","",10,null],[13,"Store","","",10,null],[13,"Done","","",10,null],[11,"new","","",9,[[["eventctx",3],["simpleapp",3],["hashset",3],["buildingid",3]],["buildings",3]]],[11,"all_stores","","",9,[[],[["buildingid",3],["vec",3]]]],[0,"controls","experiment","",null,null],[3,"InstantController","experiment::controls","",null,null],[12,"facing","","Which of the 8 directions are we facing, based on the last…",11,null],[17,"HACK","","",null,null],[11,"new","","",11,[[],["instantcontroller",3]]],[11,"displacement","","",11,[[["eventctx",3],["speed",3]]]],[0,"game","experiment","",null,null],[3,"Game","experiment::game","",null,null],[12,"title_panel","","",12,null],[12,"status_panel","","",12,null],[12,"time_panel","","",12,null],[12,"boost_panel","","",12,null],[12,"minimap","","",12,null],[12,"animator","","",12,null],[12,"snow","","",12,null],[12,"time","","",12,null],[12,"state","","",12,null],[12,"player","","",12,null],[3,"GameState","","",null,null],[12,"level","","",13,null],[12,"vehicle","","",13,null],[12,"bldgs","","",13,null],[12,"score","","",13,null],[12,"energy","","",13,null],[12,"boost","","",13,null],[12,"draw_done_houses","","",13,null],[12,"energyless_arrow","","",13,null],[3,"EnergylessArrow","","",null,null],[12,"draw","","",14,null],[12,"started","","",14,null],[12,"last_update","","",14,null],[17,"ACQUIRE_BOOST_RATE","","",null,null],[17,"BOOST_SPEED_MULTIPLIER","","",null,null],[11,"new","","",12,[[["level",3],["eventctx",3],["simpleapp",3],["vehicle",3],["hashset",3],["buildingid",3]],[["state",8],["box",3]]]],[11,"update_panels","","",12,[[["eventctx",3]]]],[11,"new","","",13,[[["eventctx",3],["level",3],["simpleapp",3],["vehicle",3],["buildings",3]],["gamestate",3]]],[11,"recalc_deliveries","","",13,[[["simpleapp",3],["eventctx",3]]]],[11,"present_dropped","","",13,[[["simpleapp",3],["eventctx",3],["buildingid",3]],["option",4]]],[11,"has_energy","","",13,[[]]],[11,"new","","",14,[[["eventctx",3],["time",3]],["energylessarrow",3]]],[11,"update","","",14,[[["eventctx",3],["pt2d",3],["simpleapp",3],["time",3],["buildingid",3],["vec",3]]]],[0,"levels","experiment","",null,null],[3,"Level","experiment::levels","",null,null],[12,"title","","",15,null],[12,"map","","",15,null],[12,"start","","",15,null],[12,"minimap_zoom","","",15,null],[12,"time_limit","","",15,null],[12,"goal","","",15,null],[12,"unlock_upzones","","",15,null],[12,"unlock_vehicles","","",15,null],[11,"all","","",15,[[],[["level",3],["vec",3]]]],[0,"meters","experiment","",null,null],[5,"custom_bar","experiment::meters","",null,[[["text",3],["eventctx",3],["color",3]],["widget",3]]],[5,"make_bar","","",null,[[["eventctx",3],["color",3]],["widget",3]]],[0,"movement","experiment","",null,null],[3,"Player","experiment::movement","",null,null],[12,"pos","","",16,null],[12,"on","","",16,null],[12,"bldgs_along_road","","",16,null],[12,"controls","","",16,null],[3,"BuildingsAlongRoad","","",null,null],[12,"per_road","","",17,null],[4,"On","","",null,null],[13,"Intersection","","",18,null],[13,"Road","","",18,null],[17,"ZOOM","","",null,null],[11,"new","","",16,[[["simpleapp",3],["eventctx",3],["intersectionid",3]],["player",3]]],[11,"update_with_speed","","Returns any buildings we passed",16,[[["simpleapp",3],["eventctx",3],["speed",3]],[["buildingid",3],["vec",3]]]],[11,"apply_displacement","","",16,[[["simpleapp",3],["eventctx",3]],[["buildingid",3],["vec",3]]]],[11,"get_pos","","",16,[[],["pt2d",3]]],[11,"get_angle","","",16,[[],["angle",3]]],[11,"on_good_road","","Is the player currently on a road with a bus or bike lane?",16,[[["simpleapp",3]]]],[11,"get_connections","","",18,[[["simpleapp",3]]]],[11,"new","","",17,[[["simpleapp",3]],["buildingsalongroad",3]]],[11,"query_range","","",17,[[["distance",3],["roadid",3]],[["buildingid",3],["vec",3]]]],[0,"session","experiment","",null,null],[3,"Session","experiment::session","Persistent state that lasts across levels.",null,null],[12,"levels","","",19,null],[12,"high_scores","","Level title -> the top 3 scores",19,null],[12,"levels_unlocked","","",19,null],[12,"current_vehicle","","",19,null],[12,"vehicles_unlocked","","",19,null],[12,"upzones_unlocked","","",19,null],[11,"new","","",19,[[],["session",3]]],[11,"record_score","","If a message is returned, a new level and some powers were…",19,[[],[["vec",3],["option",4]]]],[11,"unlock_all","","",19,[[]]],[0,"title","experiment","",null,null],[3,"TitleScreen","experiment::title","",null,null],[12,"panel","","",20,null],[11,"new","","",20,[[["simpleapp",3],["eventctx",3]],[["state",8],["box",3]]]],[0,"vehicles","experiment","",null,null],[3,"Vehicle","experiment::vehicles","",null,null],[12,"name","","",21,null],[12,"normal_speed","","",21,null],[12,"tired_speed","","",21,null],[12,"max_energy","","",21,null],[12,"max_boost","","",21,null],[12,"draw_frames","","",21,null],[12,"scale","","",21,null],[11,"get","","",21,[[],["vehicle",3]]],[11,"animate","","",21,[[["time",3],["gfxctx",3]],["geombatch",3]]],[6,"App","experiment","",null,null],[6,"Transition","","",null,null],[11,"from","experiment::after_level","",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]],[["any",8],["box",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,"from","experiment::animation","",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]],[["any",8],["box",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,"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]],[["any",8],["box",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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",3,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",3,[[],["any",8]]],[11,"as_any_mut","","",3,[[],["any",8]]],[11,"into_any_arc","","",3,[[["arc",3]],[["arc",3],["any",8]]]],[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,"into_any","","",4,[[["box",3]],[["any",8],["box",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]],[["any",8],["box",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","experiment::before_level","",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]],[["any",8],["box",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","experiment::buildings","",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]],[["any",8],["box",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,"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,"into_any","","",10,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",10,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",10,[[],["any",8]]],[11,"as_any_mut","","",10,[[],["any",8]]],[11,"into_any_arc","","",10,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","experiment::controls","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",11,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",11,[[],["any",8]]],[11,"as_any_mut","","",11,[[],["any",8]]],[11,"into_any_arc","","",11,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","experiment::game","",12,[[]]],[11,"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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",12,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",12,[[],["any",8]]],[11,"as_any_mut","","",12,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",13,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",14,[[["rc",3]],[["any",8],["rc",3]]]],[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","experiment::levels","",15,[[]]],[11,"into","","",15,[[]]],[11,"to_owned","","",15,[[]]],[11,"clone_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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",15,[[["rc",3]],[["any",8],["rc",3]]]],[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","experiment::movement","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",16,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",17,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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,"into_any","","",18,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",18,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",18,[[],["any",8]]],[11,"as_any_mut","","",18,[[],["any",8]]],[11,"into_any_arc","","",18,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","experiment::session","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",19,[[["rc",3]],[["any",8],["rc",3]]]],[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","experiment::title","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",20,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",20,[[],["any",8]]],[11,"as_any_mut","","",20,[[],["any",8]]],[11,"from","experiment::vehicles","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",21,[[["rc",3]],[["any",8],["rc",3]]]],[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,"clone","experiment::buildings","",10,[[],["bldgstate",4]]],[11,"clone","experiment::levels","",15,[[],["level",3]]],[11,"clone","experiment::movement","",18,[[],["on",4]]],[11,"eq","","",18,[[["on",4]]]],[11,"ne","","",18,[[["on",4]]]],[11,"event","experiment::after_level","",0,[[["eventctx",3],["simpleapp",3]],[["transition",4],["simpleapp",3]]]],[11,"draw","","",0,[[["simpleapp",3],["gfxctx",3]]]],[11,"event","experiment::before_level","",8,[[["eventctx",3],["simpleapp",3]],[["transition",4],["simpleapp",3]]]],[11,"draw","","",8,[[["simpleapp",3],["gfxctx",3]]]],[11,"event","experiment::game","",12,[[["eventctx",3],["simpleapp",3]],[["transition",4],["simpleapp",3]]]],[11,"draw","","",12,[[["simpleapp",3],["gfxctx",3]]]],[11,"event","experiment::title","",20,[[["eventctx",3],["simpleapp",3]],[["transition",4],["simpleapp",3]]]],[11,"draw_baselayer","","",20,[[],["drawbaselayer",4]]],[11,"draw","","",20,[[["simpleapp",3],["gfxctx",3]]]]],"p":[[3,"Results"],[3,"Animator"],[3,"Animation"],[3,"SnowEffect"],[3,"Snowflake"],[4,"Effect"],[13,"Scale"],[13,"FollowPath"],[3,"Picker"],[3,"Buildings"],[4,"BldgState"],[3,"InstantController"],[3,"Game"],[3,"GameState"],[3,"EnergylessArrow"],[3,"Level"],[3,"Player"],[3,"BuildingsAlongRoad"],[4,"On"],[3,"Session"],[3,"TitleScreen"],[3,"Vehicle"]]},\
+"experiment":{"doc":"","i":[[5,"main","experiment","",null,[[]]],[0,"after_level","","",null,null],[3,"Results","experiment::after_level","",null,null],[12,"panel","","",0,null],[12,"unlock_messages","","",0,null],[17,"ZOOM","","",null,null],[11,"new","","",0,[[["simpleapp",3],["level",3],["eventctx",3]],[["box",3],["state",8]]]],[0,"animation","experiment","",null,null],[3,"Animator","experiment::animation","",null,null],[12,"active","","",1,null],[12,"draw_current","","",1,null],[3,"Animation","","",null,null],[12,"start","","",2,null],[12,"end","","",2,null],[12,"effect","","",2,null],[3,"SnowEffect","","",null,null],[12,"rng","","",3,null],[12,"flakes","","",3,null],[12,"draw","","",3,null],[3,"Snowflake","","",null,null],[12,"start","","",4,null],[12,"initial_pos","","",4,null],[12,"fall_speed","","",4,null],[12,"swoop_period","","",4,null],[12,"max_swoop","","",4,null],[4,"Effect","","",null,null],[13,"Scale","","",5,null],[12,"orig","experiment::animation::Effect","",6,null],[12,"center","","",6,null],[12,"lerp_scale","","",6,null],[13,"FollowPath","experiment::animation","",5,null],[12,"color","experiment::animation::Effect","",7,null],[12,"width","","",7,null],[12,"pl","","",7,null],[11,"new","experiment::animation","",1,[[["eventctx",3]],["animator",3]]],[11,"add","","Pass in a future value for `now` to schedule a delayed…",1,[[["time",3],["duration",3],["effect",4]]]],[11,"event","","",1,[[["time",3],["eventctx",3]]]],[11,"draw","","",1,[[["gfxctx",3]]]],[11,"render","","",5,[[["geombatch",3]]]],[11,"pos","","",4,[[["time",3]],["pt2d",3]]],[11,"new","","",3,[[["eventctx",3]],["snoweffect",3]]],[11,"spawn_new","","",3,[[["time",3],["pt2d",3]],["snowflake",3]]],[11,"event","","",3,[[["time",3],["eventctx",3]]]],[11,"draw","","",3,[[["gfxctx",3]]]],[0,"before_level","experiment","",null,null],[3,"Picker","experiment::before_level","",null,null],[12,"panel","","",8,null],[12,"level","","",8,null],[12,"bldgs","","",8,null],[12,"current_picks","","",8,null],[17,"ZOOM","","",null,null],[11,"new","","",8,[[["level",3],["eventctx",3],["simpleapp",3]],[["box",3],["state",8]]]],[0,"buildings","experiment","",null,null],[3,"Buildings","experiment::buildings","",null,null],[12,"buildings","","",9,null],[12,"draw_all","","",9,null],[12,"total_housing_units","","",9,null],[4,"BldgState","","",null,null],[13,"Undelivered","","",10,null],[13,"Store","","",10,null],[13,"Done","","",10,null],[11,"new","","",9,[[["eventctx",3],["simpleapp",3],["hashset",3],["buildingid",3]],["buildings",3]]],[11,"all_stores","","",9,[[],[["buildingid",3],["vec",3]]]],[0,"controls","experiment","",null,null],[3,"InstantController","experiment::controls","",null,null],[12,"facing","","Which of the 8 directions are we facing, based on the last…",11,null],[17,"HACK","","",null,null],[11,"new","","",11,[[],["instantcontroller",3]]],[11,"displacement","","",11,[[["eventctx",3],["speed",3]]]],[0,"game","experiment","",null,null],[3,"Game","experiment::game","",null,null],[12,"title_panel","","",12,null],[12,"status_panel","","",12,null],[12,"time_panel","","",12,null],[12,"boost_panel","","",12,null],[12,"minimap","","",12,null],[12,"animator","","",12,null],[12,"snow","","",12,null],[12,"time","","",12,null],[12,"state","","",12,null],[12,"player","","",12,null],[3,"GameState","","",null,null],[12,"level","","",13,null],[12,"vehicle","","",13,null],[12,"bldgs","","",13,null],[12,"score","","",13,null],[12,"energy","","",13,null],[12,"boost","","",13,null],[12,"draw_done_houses","","",13,null],[12,"energyless_arrow","","",13,null],[3,"EnergylessArrow","","",null,null],[12,"draw","","",14,null],[12,"started","","",14,null],[12,"last_update","","",14,null],[17,"ACQUIRE_BOOST_RATE","","",null,null],[17,"BOOST_SPEED_MULTIPLIER","","",null,null],[11,"new","","",12,[[["level",3],["eventctx",3],["vehicle",3],["simpleapp",3],["hashset",3],["buildingid",3]],[["box",3],["state",8]]]],[11,"update_panels","","",12,[[["eventctx",3]]]],[11,"new","","",13,[[["level",3],["eventctx",3],["simpleapp",3],["vehicle",3],["buildings",3]],["gamestate",3]]],[11,"recalc_deliveries","","",13,[[["eventctx",3],["simpleapp",3]]]],[11,"present_dropped","","",13,[[["buildingid",3],["eventctx",3],["simpleapp",3]],["option",4]]],[11,"has_energy","","",13,[[]]],[11,"new","","",14,[[["eventctx",3],["time",3]],["energylessarrow",3]]],[11,"update","","",14,[[["eventctx",3],["simpleapp",3],["pt2d",3],["time",3],["buildingid",3],["vec",3]]]],[0,"levels","experiment","",null,null],[3,"Level","experiment::levels","",null,null],[12,"title","","",15,null],[12,"map","","",15,null],[12,"start","","",15,null],[12,"minimap_zoom","","",15,null],[12,"time_limit","","",15,null],[12,"goal","","",15,null],[12,"unlock_upzones","","",15,null],[12,"unlock_vehicles","","",15,null],[11,"all","","",15,[[],[["level",3],["vec",3]]]],[0,"meters","experiment","",null,null],[5,"custom_bar","experiment::meters","",null,[[["text",3],["eventctx",3],["color",3]],["widget",3]]],[5,"make_bar","","",null,[[["eventctx",3],["color",3]],["widget",3]]],[0,"movement","experiment","",null,null],[3,"Player","experiment::movement","",null,null],[12,"pos","","",16,null],[12,"on","","",16,null],[12,"bldgs_along_road","","",16,null],[12,"controls","","",16,null],[3,"BuildingsAlongRoad","","",null,null],[12,"per_road","","",17,null],[4,"On","","",null,null],[13,"Intersection","","",18,null],[13,"Road","","",18,null],[17,"ZOOM","","",null,null],[11,"new","","",16,[[["intersectionid",3],["eventctx",3],["simpleapp",3]],["player",3]]],[11,"update_with_speed","","Returns any buildings we passed",16,[[["speed",3],["eventctx",3],["simpleapp",3]],[["buildingid",3],["vec",3]]]],[11,"pos_to_on","","",16,[[["simpleapp",3],["pt2d",3]],[["option",4],["on",4]]]],[11,"apply_displacement","","",16,[[["eventctx",3],["simpleapp",3]],[["buildingid",3],["vec",3]]]],[11,"get_pos","","",16,[[],["pt2d",3]]],[11,"get_angle","","",16,[[],["angle",3]]],[11,"on_good_road","","Is the player currently on a road with a bus or bike lane?",16,[[["simpleapp",3]]]],[11,"get_connections","","",18,[[["simpleapp",3]]]],[11,"new","","",17,[[["simpleapp",3]],["buildingsalongroad",3]]],[11,"query_range","","",17,[[["distance",3],["roadid",3]],[["buildingid",3],["vec",3]]]],[0,"session","experiment","",null,null],[3,"Session","experiment::session","Persistent state that lasts across levels.",null,null],[12,"levels","","",19,null],[12,"high_scores","","Level title -> the top 3 scores",19,null],[12,"levels_unlocked","","",19,null],[12,"current_vehicle","","",19,null],[12,"vehicles_unlocked","","",19,null],[12,"upzones_unlocked","","",19,null],[11,"new","","",19,[[],["session",3]]],[11,"record_score","","If a message is returned, a new level and some powers were…",19,[[],[["vec",3],["option",4]]]],[11,"unlock_all","","",19,[[]]],[0,"title","experiment","",null,null],[3,"TitleScreen","experiment::title","",null,null],[12,"panel","","",20,null],[11,"new","","",20,[[["eventctx",3],["simpleapp",3]],[["box",3],["state",8]]]],[0,"vehicles","experiment","",null,null],[3,"Vehicle","experiment::vehicles","",null,null],[12,"name","","",21,null],[12,"normal_speed","","",21,null],[12,"tired_speed","","",21,null],[12,"max_energy","","",21,null],[12,"max_boost","","",21,null],[12,"draw_frames","","",21,null],[12,"scale","","",21,null],[11,"get","","",21,[[],["vehicle",3]]],[11,"animate","","",21,[[["time",3],["gfxctx",3]],["geombatch",3]]],[6,"App","experiment","",null,null],[6,"Transition","","",null,null],[11,"from","experiment::after_level","",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]],[["any",8],["box",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,"from","experiment::animation","",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]],[["any",8],["box",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,"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]],[["any",8],["box",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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",3,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",3,[[],["any",8]]],[11,"as_any_mut","","",3,[[],["any",8]]],[11,"into_any_arc","","",3,[[["arc",3]],[["arc",3],["any",8]]]],[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,"into_any","","",4,[[["box",3]],[["any",8],["box",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]],[["any",8],["box",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","experiment::before_level","",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]],[["any",8],["box",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","experiment::buildings","",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]],[["any",8],["box",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,"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,"into_any","","",10,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",10,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",10,[[],["any",8]]],[11,"as_any_mut","","",10,[[],["any",8]]],[11,"into_any_arc","","",10,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","experiment::controls","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",11,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",11,[[],["any",8]]],[11,"as_any_mut","","",11,[[],["any",8]]],[11,"into_any_arc","","",11,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","experiment::game","",12,[[]]],[11,"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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",12,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",12,[[],["any",8]]],[11,"as_any_mut","","",12,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",13,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",14,[[["rc",3]],[["any",8],["rc",3]]]],[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","experiment::levels","",15,[[]]],[11,"into","","",15,[[]]],[11,"to_owned","","",15,[[]]],[11,"clone_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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",15,[[["rc",3]],[["any",8],["rc",3]]]],[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","experiment::movement","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",16,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",17,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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,"into_any","","",18,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",18,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",18,[[],["any",8]]],[11,"as_any_mut","","",18,[[],["any",8]]],[11,"into_any_arc","","",18,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","experiment::session","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",19,[[["rc",3]],[["any",8],["rc",3]]]],[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","experiment::title","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",20,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",20,[[],["any",8]]],[11,"as_any_mut","","",20,[[],["any",8]]],[11,"from","experiment::vehicles","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",21,[[["rc",3]],[["any",8],["rc",3]]]],[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,"clone","experiment::buildings","",10,[[],["bldgstate",4]]],[11,"clone","experiment::levels","",15,[[],["level",3]]],[11,"clone","experiment::movement","",18,[[],["on",4]]],[11,"eq","","",18,[[["on",4]]]],[11,"ne","","",18,[[["on",4]]]],[11,"event","experiment::after_level","",0,[[["simpleapp",3],["eventctx",3]],[["transition",4],["simpleapp",3]]]],[11,"draw","","",0,[[["gfxctx",3],["simpleapp",3]]]],[11,"event","experiment::before_level","",8,[[["simpleapp",3],["eventctx",3]],[["transition",4],["simpleapp",3]]]],[11,"draw","","",8,[[["gfxctx",3],["simpleapp",3]]]],[11,"event","experiment::game","",12,[[["simpleapp",3],["eventctx",3]],[["transition",4],["simpleapp",3]]]],[11,"draw","","",12,[[["gfxctx",3],["simpleapp",3]]]],[11,"event","experiment::title","",20,[[["simpleapp",3],["eventctx",3]],[["transition",4],["simpleapp",3]]]],[11,"draw_baselayer","","",20,[[],["drawbaselayer",4]]],[11,"draw","","",20,[[["gfxctx",3],["simpleapp",3]]]]],"p":[[3,"Results"],[3,"Animator"],[3,"Animation"],[3,"SnowEffect"],[3,"Snowflake"],[4,"Effect"],[13,"Scale"],[13,"FollowPath"],[3,"Picker"],[3,"Buildings"],[4,"BldgState"],[3,"InstantController"],[3,"Game"],[3,"GameState"],[3,"EnergylessArrow"],[3,"Level"],[3,"Player"],[3,"BuildingsAlongRoad"],[4,"On"],[3,"Session"],[3,"TitleScreen"],[3,"Vehicle"]]},\
"extract_cities":{"doc":"Extracts all cities from a large .osm file.","i":[[5,"main","extract_cities","",null,[[]]]],"p":[]},\
"fifteen_min":{"doc":"","i":[[5,"main","fifteen_min","",null,[[]]],[0,"isochrone","","",null,null],[3,"Isochrone","fifteen_min::isochrone","Represents the area reachable from a single building.",null,null],[12,"start","","The center of the isochrone",0,null],[12,"constraints","","What mode of travel we\'re using",0,null],[12,"draw","","Colored polygon contours, uploaded to the GPU and ready…",0,null],[12,"time_to_reach_building","","How far away is each building from the start?",0,null],[12,"amenities_reachable","","Per category of amenity (defined by…",0,null],[5,"draw_isochrone","","",null,[[["simpleapp",3],["hashmap",3]],["geombatch",3]]],[11,"new","","",0,[[["pathconstraints",4],["eventctx",3],["simpleapp",3],["buildingid",3]],["isochrone",3]]],[11,"path_to","","",0,[[["map",3],["buildingid",3]],[["path",3],["option",4]]]],[0,"viewer","fifteen_min","This is a tool to experiment with the concept of 15-minute…",null,null],[3,"Viewer","fifteen_min::viewer","This is the UI state for exploring the isochrone/walkshed…",null,null],[12,"panel","","",1,null],[12,"highlight_start","","",1,null],[12,"isochrone","","",1,null],[12,"hovering_on_bldg","","",1,null],[3,"HoverOnBuilding","","",null,null],[12,"tooltip","","",2,null],[12,"drawn_route","","",2,null],[5,"draw_star","","Draw a star on the start building.",null,[[["eventctx",3],["pt2d",3]],["drawable",3]]],[5,"build_panel","","",null,[[["eventctx",3],["simpleapp",3],["isochrone",3],["building",3]],["panel",3]]],[6,"HoverKey","","(building, scale factor)",null,null],[11,"random_start","","Start with a random building",1,[[["simpleapp",3],["eventctx",3]],[["state",8],["box",3]]]],[11,"new","","",1,[[["simpleapp",3],["eventctx",3],["buildingid",3]],[["state",8],["box",3]]]],[11,"key","","",2,[[["eventctx",3],["simpleapp",3]],["option",4]]],[11,"value","","",2,[[["simpleapp",3],["eventctx",3],["isochrone",3]],["hoveronbuilding",3]]],[6,"App","fifteen_min","",null,null],[11,"from","fifteen_min::isochrone","",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]],[["any",8],["box",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","fifteen_min::viewer","",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]],[["any",8],["box",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,"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,[[["box",3]],[["any",8],["box",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,"event","","",1,[[["simpleapp",3],["eventctx",3]],[["transition",4],["simpleapp",3]]]],[11,"draw","","",1,[[["simpleapp",3],["gfxctx",3]]]]],"p":[[3,"Isochrone"],[3,"Viewer"],[3,"HoverOnBuilding"]]},\
"game":{"doc":"","i":[[5,"main","game","",null,[[]]],[5,"setup_app","","",null,[[["flags",3],["options",3],["eventctx",3],["string",3],["option",4],["option",4],["gameplaymode",4]]]],[0,"app","","",null,null],[3,"App","game::app","The top-level data that lasts through the entire game, no…",null,null],[12,"primary","","",0,null],[12,"cs","","",0,null],[12,"opts","","",0,null],[12,"per_obj","","",0,null],[12,"session","","Static data that lasts the entire session. Use sparingly.",0,null],[3,"ShowLayers","","",null,null],[12,"show_buildings","","",1,null],[12,"show_parking_lots","","",1,null],[12,"show_intersections","","",1,null],[12,"show_lanes","","",1,null],[12,"show_areas","","",1,null],[12,"show_labels","","",1,null],[3,"ShowEverything","","",null,null],[12,"layers","","",2,null],[3,"Flags","","",null,null],[12,"sim_flags","","",3,null],[12,"live_map_edits","","If true, all map edits immediately apply to the live…",3,null],[3,"PerMap","","All of the state that\'s bound to a specific map.",null,null],[12,"map","","",4,null],[12,"draw_map","","",4,null],[12,"sim","","",4,null],[12,"agents","","",4,null],[12,"current_selection","","",4,null],[12,"current_flags","","",4,null],[12,"last_warped_from","","",4,null],[12,"sim_cb","","",4,null],[12,"dirty_from_edits","","If we ever left edit mode and resumed without restarting…",4,null],[12,"has_modified_trips","","Any ScenarioModifiers in effect?",4,null],[12,"unedited_map","","Sometimes we need the map before any edits have been…",4,null],[12,"layer","","",4,null],[12,"suspended_sim","","Only filled out in edit mode. Stored here once to avoid…",4,null],[12,"prebaked","","Only exists in some gameplay modes. Must be carefully…",4,null],[12,"scenario","","The most recent Scenario loaded from a file. Don\'t depend…",4,null],[3,"SessionState","","",null,null],[12,"tutorial","","",5,null],[12,"high_scores","","",5,null],[12,"info_panel_tab","","",5,null],[3,"PerObjectActions","","",null,null],[12,"click_action","","",6,null],[3,"FindDelayedIntersections","","",null,null],[12,"halt_limit","","",7,null],[12,"report_limit","","",7,null],[12,"currently_delayed","","",7,null],[6,"Transition","","",null,null],[8,"ShowObject","","",null,null],[10,"show","","",8,[[["id",4]]]],[10,"layers","","",8,[[],["showlayers",3]]],[11,"new","","",0,[[["flags",3],["options",3],["eventctx",3]],["app",3]]],[11,"has_prebaked","","",0,[[],["option",4]]],[11,"prebaked","","",0,[[],["analytics",3]]],[11,"set_prebaked","","",0,[[["option",4]]]],[11,"draw","","",0,[[["drawoptions",3],["showobject",8],["gfxctx",3]]]],[11,"recalculate_current_selection","","Assumes some defaults.",0,[[["eventctx",3]]]],[11,"mouseover_unzoomed_roads_and_intersections","","",0,[[["eventctx",3]],[["id",4],["option",4]]]],[11,"mouseover_unzoomed_intersections","","",0,[[["eventctx",3]],[["id",4],["option",4]]]],[11,"mouseover_unzoomed_buildings","","",0,[[["eventctx",3]],[["id",4],["option",4]]]],[11,"mouseover_unzoomed_everything","","",0,[[["eventctx",3]],[["id",4],["option",4]]]],[11,"mouseover_debug_mode","","",0,[[["eventctx",3],["showobject",8]],[["id",4],["option",4]]]],[11,"calculate_current_selection","","",0,[[["eventctx",3],["showobject",8]],[["id",4],["option",4]]]],[11,"get_renderables_back_to_front","","",0,[[["showobject",8],["prerender",3],["bounds",3],["agentcache",3]],[["renderable",8],["vec",3]]]],[11,"clear_everything","","Ensure the map edits are blank, reset the simulation, and…",0,[[["eventctx",3]]]],[11,"click_on_intersection","","If an intersection was clicked, return its ID.",0,[[["into",8],["string",3],["eventctx",3]],[["option",4],["intersectionid",3]]]],[11,"click_on_lane","","If a lane was clicked, return its ID.",0,[[["into",8],["string",3],["eventctx",3]],[["option",4],["laneid",3]]]],[11,"new","","",1,[[],["showlayers",3]]],[11,"new","","",2,[[],["showeverything",3]]],[11,"map_loaded","","",4,[[["flags",3],["colorscheme",3],["eventctx",3],["timer",3],["sim",3],["options",3],["map",3]],["permap",3]]],[11,"clear_sim","","Returns whatever was there",4,[[],["sim",3]]],[11,"calculate_unedited_map","","If needed, makes sure the unedited_map is populated.…",4,[[]]],[11,"canonical_point","","",4,[[["id",4]],[["pt2d",3],["option",4]]]],[11,"empty","","",5,[[],["sessionstate",3]]],[11,"new","","",6,[[],["perobjectactions",3]]],[11,"reset","","",6,[[]]],[11,"left_click","","",6,[[["into",8],["string",3],["eventctx",3]]]],[0,"challenges","game","",null,null],[3,"Challenge","game::challenges","",null,null],[12,"title","","",9,null],[12,"description","","",9,null],[12,"alias","","",9,null],[12,"gameplay","","",9,null],[12,"cutscene","","",9,null],[3,"HighScore","","",null,null],[12,"goal","","",10,null],[12,"score","","",10,null],[12,"edits_name","","",10,null],[3,"ChallengesPicker","","",null,null],[12,"panel","","",11,null],[12,"links","","",11,null],[12,"challenge","","",11,null],[0,"cutscene","","",null,null],[3,"CutsceneBuilder","game::challenges::cutscene","",null,null],[12,"name","","",12,null],[12,"scenes","","",12,null],[3,"Scene","","",null,null],[12,"layout","","",13,null],[12,"msg","","",13,null],[3,"CutscenePlayer","","",null,null],[12,"name","","",14,null],[12,"scenes","","",14,null],[12,"idx","","",14,null],[12,"panel","","",14,null],[12,"make_task","","",14,null],[3,"FYI","","",null,null],[12,"panel","","",15,null],[4,"Layout","","",null,null],[13,"PlayerSpeaking","","",16,null],[13,"BossSpeaking","","",16,null],[13,"Extra","","",16,null],[5,"make_panel","","",null,[[["app",3],["eventctx",3],["vec",3],["box",3]],["panel",3]]],[11,"new","","",12,[[],["cutscenebuilder",3]]],[11,"player","","",12,[[["into",8],["string",3]],["cutscenebuilder",3]]],[11,"boss","","",12,[[["into",8],["string",3]],["cutscenebuilder",3]]],[11,"extra","","",12,[[["into",8],["string",3]],["cutscenebuilder",3]]],[11,"build","","",12,[[["fn",8],["app",3],["eventctx",3],["box",3]],[["box",3],["state",8]]]],[11,"new","","",15,[[["widget",3],["eventctx",3],["color",3]],[["box",3],["state",8]]]],[0,"prebake","game::challenges","",null,null],[5,"prebake_all","game::challenges::prebake","Simulate a curated list of scenarios to completion, and…",null,[[]]],[5,"prebake","","",null,[[["scenario",3],["option",4],["timer",3],["duration",3],["map",3]]]],[11,"record","game::challenges","",10,[[["gameplaymode",4],["app",3]]]],[11,"all","","",9,[[],[["btreemap",3],["string",3],["vec",3]]]],[11,"find","","",9,[[["gameplaymode",4]]]],[11,"new","","",11,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"make","","",11,[[["app",3],["eventctx",3],["option",4]],[["box",3],["state",8]]]],[0,"common","game","",null,null],[3,"CommonState","game::common","",null,null],[12,"info_panel","","",17,null],[12,"cached_actions","","",17,null],[3,"SimpleStateWrapper","","",null,null],[12,"panel","","",18,null],[12,"inner","","",18,null],[5,"tool_panel","","",null,[[["eventctx",3]],["panel",3]]],[5,"list_names","","",null,[[["fn",8],["string",3],["btreeset",3],["text",3]]]],[5,"cmp_duration_shorter","","",null,[[["app",3],["duration",3]],[["vec",3],["textspan",3]]]],[5,"color_for_mode","","",null,[[["app",3],["tripmode",4]],["color",3]]],[5,"color_for_agent_type","","",null,[[["app",3],["agenttype",4]],["color",3]]],[5,"color_for_trip_phase","","",null,[[["app",3],["tripphasetype",4]],["color",3]]],[5,"hotkey_btn","","",null,[[["eventctx",3],["app",3],["string",3],["key",4],["into",8]],["widget",3]]],[5,"intersections_from_roads","","",null,[[["map",3],["btreeset",3]],[["btreeset",3],["intersectionid",3]]]],[5,"checkbox_per_mode","","",null,[[["app",3],["eventctx",3],["btreeset",3]],["widget",3]]],[0,"minimap","","",null,null],[3,"Minimap","game::common::minimap","",null,null],[12,"dragging","","",19,null],[12,"panel","","",19,null],[12,"zoomed","","",19,null],[12,"layer","","",19,null],[12,"zoom_lvl","","",19,null],[12,"base_zoom","","",19,null],[12,"zoom","","",19,null],[12,"offset_x","","",19,null],[12,"offset_y","","",19,null],[5,"make_tool_panel","","",null,[[["app",3],["eventctx",3]],["widget",3]]],[11,"new","","",19,[[["app",3],["eventctx",3]],["minimap",3]]],[11,"recreate_panel","","",19,[[["app",3],["eventctx",3]]]],[11,"map_to_minimap_pct","","",19,[[["pt2d",3]]]],[11,"set_zoom","","",19,[[["app",3],["eventctx",3]]]],[11,"recenter","","",19,[[["eventctx",3],["app",3]]]],[11,"event","","",19,[[["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"draw","","",19,[[["app",3],["gfxctx",3]]]],[0,"warp","game::common","",null,null],[3,"Warping","game::common::warp","",null,null],[12,"warper","","",20,null],[12,"id","","",20,null],[3,"DebugWarp","","",null,null],[12,"panel","","",21,null],[5,"warp_to_id","","",null,[[["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[17,"WARP_TO_CAM_ZOOM","","",null,null],[11,"new","","",20,[[["eventctx",3],["option",4],["pt2d",3],["id",4],["option",4],["permap",3]],[["box",3],["state",8]]]],[11,"new","","",21,[[["eventctx",3]],[["box",3],["state",8]]]],[8,"SimpleState","game::common","Many game states fit a pattern of managing a single panel,…",null,null],[10,"on_click","","Called when something on the panel has been clicked. Since…",22,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"panel_changed","","Called when something on the panel has changed. If a…",22,[[["panel",3],["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"on_mouseover","","Called when the mouse has moved.",22,[[["eventctx",3],["app",3]]]],[11,"other_event","","If a panel `on_click` event didn\'t occur and…",22,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",22,[[["app",3],["gfxctx",3]]]],[11,"draw_baselayer","","",22,[[],["drawbaselayer",4]]],[11,"new","","",17,[[],["commonstate",3]]],[11,"event","","",17,[[["contextualactions",8],["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"draw","","",17,[[["app",3],["gfxctx",3]]]],[11,"osd_for","","",17,[[["app",3],["id",4]],["text",3]]],[11,"draw_osd","","",17,[[["app",3],["gfxctx",3]]]],[11,"draw_custom_osd","","",17,[[["text",3],["app",3],["gfxctx",3]]]],[11,"launch_info_panel","","",17,[[["contextualactions",8],["tab",4],["eventctx",3],["app",3]]]],[11,"info_panel_open","","",17,[[["app",3]],[["id",4],["option",4]]]],[11,"new","","",22,[[["box",3],["panel",3],["simplestate",8]],[["box",3],["state",8]]]],[0,"debug","game","",null,null],[3,"DebugMode","game::debug","",null,null],[12,"panel","","",23,null],[12,"common","","",23,null],[12,"tool_panel","","",23,null],[12,"objects","","",23,null],[12,"hidden","","",23,null],[12,"layers","","",23,null],[12,"search_results","","",23,null],[12,"all_routes","","",23,null],[12,"highlighted_agents","","",23,null],[3,"SearchResults","","",null,null],[12,"query","","",24,null],[12,"num_matches","","",24,null],[12,"draw","","",24,null],[3,"Actions","","",null,null],[3,"ScreenshotTest","","",null,null],[12,"todo_maps","","",25,null],[12,"screenshot_done","","",25,null],[5,"search_osm","","",null,[[["string",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[5,"calc_all_routes","","",null,[[["eventctx",3],["app",3]]]],[5,"find_bad_signals","","",null,[[["app",3]]]],[5,"find_degenerate_roads","","",null,[[["app",3]]]],[5,"diff_tags","","",null,[[["tags",3]]]],[5,"find_large_intersections","","",null,[[["app",3]]]],[5,"screenshot_everything","","",null,[[["app",3],["eventctx",3]]]],[0,"blocked_by","","",null,null],[3,"Viewer","game::debug::blocked_by","Visualize the graph of what agents are blocked by others.",null,null],[12,"panel","","",26,null],[12,"graph","","",26,null],[12,"agent_positions","","",26,null],[12,"arrows","","",26,null],[12,"root_cause","","",26,null],[11,"new","","",26,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"arrow_for","","",26,[[["app",3],["agentid",4]],["option",4]]],[11,"trace_root_cause","","Figure out why some agent is blocked. Draws an arrow for…",26,[[["app",3],["agentid",4]]]],[11,"find_worst_problems","","Trace the root cause for everyone, find the most common…",26,[[["app",3]]]],[11,"simple_root_cause","","",26,[[["agentid",4]],["delaycause",4]]],[0,"floodfill","game::debug","",null,null],[3,"Floodfiller","game::debug::floodfill","",null,null],[12,"panel","","",27,null],[12,"unzoomed","","",27,null],[12,"zoomed","","",27,null],[12,"source","","",27,null],[4,"Source","","",null,null],[13,"Floodfill","","",28,null],[13,"SCC","","",28,null],[11,"floodfill","","",27,[[["app",3],["eventctx",3],["laneid",3]],[["box",3],["state",8]]]],[11,"scc","","",27,[[["app",3],["eventctx",3],["laneid",3]],[["box",3],["state",8]]]],[11,"new","","",27,[[["app",3],["eventctx",3],["pathconstraints",4],["source",4]],[["box",3],["state",8]]]],[11,"calculate","","",28,[[["pathconstraints",4],["map",3]]]],[0,"objects","game::debug","",null,null],[3,"ObjectDebugger","game::debug::objects","",null,null],[11,"draw","","",29,[[["app",3],["gfxctx",3]]]],[11,"dump_debug","","",29,[[["id",4],["map",3],["sim",3]]]],[0,"path_counter","game::debug","",null,null],[3,"PathCounter","game::debug::path_counter","A state to count the number of trips that will cross…",null,null],[12,"panel","","",30,null],[12,"unzoomed","","",30,null],[12,"zoomed","","",30,null],[12,"cnt","","",30,null],[12,"tooltip","","",30,null],[11,"demand_across_intersection","","",30,[[["app",3],["eventctx",3],["intersectionid",3]],[["box",3],["state",8]]]],[0,"polygons","game::debug","",null,null],[3,"PolygonDebugger","game::debug::polygons","",null,null],[12,"panel","","",31,null],[12,"noun","","",31,null],[12,"items","","",31,null],[12,"idx","","",31,null],[12,"center","","",31,null],[4,"Item","","",null,null],[13,"Point","","",32,null],[13,"Triangle","","",32,null],[13,"Polygon","","",32,null],[11,"new","","",31,[[["vec",3],["eventctx",3],["pt2d",3],["item",4],["option",4]],[["box",3],["state",8]]]],[0,"shared_row","game::debug","",null,null],[5,"export","game::debug::shared_row","Exports to https://github.com/d-wasserman/shared-row/,…",null,[[["roadid",3],["map",3],["vec",3]],["string",3]]],[5,"road","","",null,[[["roadid",3],["map",3]],["feature",3]]],[5,"lane","","",null,[[["lane",3]],[["option",4],["map",3]]]],[0,"streetmix","game::debug","",null,null],[5,"export","game::debug::streetmix","Exports a single road to Streetmix\'s format, returns the…",null,[[["roadid",3],["map",3]],["string",3]]],[5,"road","","",null,[[["roadid",3],["map",3]],[["map",3],["string",3],["value",4]]]],[5,"lane","","",null,[[["lane",3],["direction",4]],[["map",3],["string",3],["value",4]]]],[11,"new","game::debug","",23,[[["eventctx",3]],[["box",3],["state",8]]]],[11,"reset_info","","",23,[[["eventctx",3]]]],[11,"new","","",25,[[["app",3],["eventctx",3],["mapname",3],["vec",3]],[["box",3],["state",8]]]],[0,"devtools","game","This directory contains extra/experimental tools not…",null,null],[3,"DevToolsMode","game::devtools","",null,null],[12,"panel","","",33,null],[0,"collisions","","",null,null],[3,"CollisionsViewer","game::devtools::collisions","",null,null],[12,"data","","",34,null],[12,"dataviz","","",34,null],[12,"tooltips","","",34,null],[12,"panel","","",34,null],[3,"Filters","","",null,null],[12,"show_individual","","",35,null],[12,"time_range","","",35,null],[12,"severity","","",35,null],[3,"MapspaceTooltips","","",null,null],[12,"tooltips","","",36,null],[12,"hover","","",36,null],[12,"selected","","",36,null],[4,"Dataviz","","",null,null],[13,"Individual","","",37,null],[12,"draw_all_circles","game::devtools::collisions::Dataviz","",38,null],[13,"Aggregated","game::devtools::collisions","",37,null],[12,"unzoomed","game::devtools::collisions::Dataviz","",39,null],[12,"zoomed","","",39,null],[11,"new","game::devtools::collisions","",34,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"new","","",35,[[],["filters",3]]],[11,"apply","","Returns the indices of all matching collisions",35,[[["collisiondataset",3]],["vec",3]]],[11,"to_controls","","",35,[[["eventctx",3]],["widget",3]]],[11,"from_controls","","",35,[[["panel",3]],["filters",3]]],[11,"aggregated","","",37,[[["app",3],["eventctx",3],["collisiondataset",3],["vec",3]]]],[11,"individual","","",37,[[["app",3],["eventctx",3],["collisiondataset",3],["vec",3]]]],[11,"new","","",36,[[["vec",3],["box",3],["fn",8]],["mapspacetooltips",3]]],[11,"event","","",36,[[["eventctx",3]]]],[11,"draw","","",36,[[["gfxctx",3]]]],[0,"destinations","game::devtools","",null,null],[3,"PopularDestinations","game::devtools::destinations","",null,null],[12,"per_bldg","","",40,null],[12,"panel","","",40,null],[12,"draw","","",40,null],[11,"new","","",40,[[["app",3],["eventctx",3],["scenario",3]],[["box",3],["state",8]]]],[11,"make","","",40,[[["counter",3],["app",3],["eventctx",3],["option",4],["buildingid",3],["heatmapoptions",3]],[["box",3],["state",8]]]],[0,"kml","game::devtools","",null,null],[3,"ViewKML","game::devtools::kml","",null,null],[12,"panel","","",41,null],[12,"objects","","",41,null],[12,"draw","","",41,null],[12,"selected","","",41,null],[12,"quadtree","","",41,null],[12,"draw_query","","",41,null],[3,"Object","","",null,null],[12,"polygon","","",42,null],[12,"color","","",42,null],[12,"attribs","","",42,null],[12,"osm_bldg","","",42,null],[5,"load_objects","","Loads and clips objects to the current map. Also returns…",null,[[["app",3],["string",3],["option",4],["timer",3]]]],[5,"make_object","","",null,[[["colorscheme",3],["btreemap",3],["string",3],["hashmap",3],["pt2d",3],["vec",3]],["object",3]]],[5,"make_query","","",null,[[["app",3],["vec",3]]]],[17,"RADIUS","","",null,null],[17,"THICKNESS","","",null,null],[11,"new","","",41,[[["app",3],["eventctx",3],["string",3],["option",4]],[["box",3],["state",8]]]],[0,"polygon","game::devtools","",null,null],[3,"PolygonEditor","game::devtools::polygon","",null,null],[12,"panel","","",43,null],[12,"name","","",43,null],[12,"points","","",43,null],[12,"mouseover_pt","","",43,null],[12,"moving_pt","","",43,null],[17,"POINT_RADIUS","","",null,null],[17,"POINT_COLOR","","",null,null],[17,"POLYGON_COLOR","","",null,null],[17,"POINT_TO_MOVE","","",null,null],[17,"LAST_PLACED_POINT","","",null,null],[11,"new","","",43,[[["string",3],["eventctx",3],["vec",3],["lonlat",3]],[["box",3],["state",8]]]],[0,"scenario","game::devtools","",null,null],[3,"ScenarioManager","game::devtools::scenario","",null,null],[12,"panel","","",44,null],[12,"scenario","","",44,null],[12,"unzoomed","","",44,null],[12,"zoomed","","",44,null],[11,"new","","",44,[[["app",3],["scenario",3],["eventctx",3]],[["box",3],["state",8]]]],[0,"story","game::devtools","",null,null],[3,"StoryMapEditor","game::devtools::story","",null,null],[12,"panel","","",45,null],[12,"story","","",45,null],[12,"mode","","",45,null],[12,"dirty","","",45,null],[12,"hovering","","",45,null],[3,"RecordedStoryMap","","",null,null],[12,"name","","",46,null],[12,"markers","","",46,null],[3,"StoryMap","","",null,null],[12,"name","","",47,null],[12,"markers","","",47,null],[3,"Marker","","",null,null],[12,"pts","","",48,null],[12,"event","","",48,null],[12,"hitbox","","",48,null],[12,"draw","","",48,null],[3,"Lasso","","",null,null],[12,"pl","","",49,null],[4,"Mode","","",null,null],[13,"View","","",50,null],[13,"PlacingMarker","","",50,null],[13,"Dragging","","",50,null],[13,"Editing","","",50,null],[13,"Freehand","","",50,null],[5,"make_panel","","",null,[[["mode",4],["eventctx",3],["storymap",3]],["panel",3]]],[5,"simplify","","",null,[[["vec",3],["pt2d",3]],["ring",3]]],[11,"new","","",45,[[["eventctx",3]],[["box",3],["state",8]]]],[11,"redo_panel","","",45,[[["eventctx",3]]]],[11,"new","","",47,[[],["storymap",3]]],[11,"load","","",47,[[["recordedstorymap",3],["app",3],["eventctx",3]],[["storymap",3],["option",4]]]],[11,"save","","",47,[[["app",3]]]],[11,"new","","",48,[[["string",3],["eventctx",3],["pt2d",3],["vec",3]],["marker",3]]],[11,"draw_hovered","","",48,[[["app",3],["gfxctx",3]]]],[11,"make_editor","","",48,[[["eventctx",3]],["panel",3]]],[11,"new","","",49,[[["pt2d",3]],["lasso",3]]],[11,"event","","",49,[[["eventctx",3]],[["option",4],["ring",3]]]],[11,"draw","","",49,[[["gfxctx",3]]]],[11,"new","game::devtools","",33,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[0,"edit","game","",null,null],[3,"EditMode","game::edit","",null,null],[12,"tool_panel","","",51,null],[12,"top_center","","",51,null],[12,"changelist","","",51,null],[12,"orig_edits","","",51,null],[12,"orig_dirty","","",51,null],[12,"mode","","",51,null],[12,"changelist_key","","",51,null],[12,"unzoomed","","",51,null],[12,"zoomed","","",51,null],[3,"SaveEdits","","",null,null],[12,"panel","","",52,null],[12,"current_name","","",52,null],[12,"cancel","","",52,null],[12,"on_success","","",52,null],[12,"reset","","",52,null],[3,"LoadEdits","","",null,null],[12,"panel","","",53,null],[12,"mode","","",53,null],[3,"ConfirmDiscard","","",null,null],[12,"panel","","",54,null],[12,"discard","","",54,null],[5,"make_topcenter","","",null,[[["app",3],["eventctx",3]],["panel",3]]],[5,"apply_map_edits","","",null,[[["mapedits",3],["eventctx",3],["app",3]]]],[5,"can_edit_lane","","",null,[[["laneid",3],["app",3],["gameplaymode",4]]]],[5,"speed_limit_choices","","",null,[[["app",3]],[["vec",3],["choice",3]]]],[5,"maybe_edit_intersection","","",null,[[["eventctx",3],["intersectionid",3],["gameplaymode",4],["app",3]],[["option",4],["box",3]]]],[5,"make_changelist","","",null,[[["app",3],["eventctx",3]],["panel",3]]],[5,"cmd_to_id","","",null,[[["editcmd",4]],[["id",4],["option",4]]]],[0,"bulk","","",null,null],[3,"BulkSelect","game::edit::bulk","",null,null],[12,"panel","","",55,null],[12,"selector","","",55,null],[3,"BulkEdit","","",null,null],[12,"panel","","",56,null],[12,"roads","","",56,null],[12,"preview","","",56,null],[5,"make_select_panel","","",null,[[["roadselector",3],["eventctx",3]],["panel",3]]],[5,"get_lt_transformations","","",null,[[["panel",3]],["vec",3]]],[5,"make_lt_switcher","","",null,[[["vec",3],["eventctx",3]],["widget",3]]],[5,"make_bulk_edits","","",null,[[["vec",3],["eventctx",3],["option",4],["vec",3],["app",3],["speed",3]],[["box",3],["state",8]]]],[11,"new","","",55,[[["roadid",3],["eventctx",3],["app",3]],[["box",3],["state",8]]]],[11,"new","","",56,[[["app",3],["eventctx",3],["roadid",3],["drawable",3],["vec",3]],[["box",3],["state",8]]]],[0,"cluster_traffic_signals","game::edit","",null,null],[3,"ClusterTrafficSignalEditor","game::edit::cluster_traffic_signals","",null,null],[12,"panel","","",57,null],[12,"members","","",57,null],[12,"groups","","",57,null],[12,"group_selected","","",57,null],[11,"new","","",57,[[["intersectioncluster",3],["eventctx",3],["app",3]],[["box",3],["state",8]]]],[0,"lanes","game::edit","",null,null],[3,"LaneEditor","game::edit::lanes","",null,null],[12,"l","","",58,null],[12,"mode","","",58,null],[5,"reverse_lane","","",null,[[["map",3],["laneid",3]],["editcmd",4]]],[11,"new","","",58,[[["app",3],["eventctx",3],["gameplaymode",4],["laneid",3]],[["box",3],["state",8]]]],[0,"routes","game::edit","",null,null],[3,"RouteEditor","game::edit::routes","",null,null],[12,"panel","","",59,null],[12,"route","","",59,null],[11,"new","","",59,[[["busrouteid",3],["eventctx",3],["app",3]],[["box",3],["state",8]]]],[0,"select","game::edit","",null,null],[3,"RoadSelector","game::edit::select","",null,null],[12,"roads","","",60,null],[12,"preview","","",60,null],[12,"mode","","",60,null],[12,"dragging","","",60,null],[4,"Mode","","",null,null],[13,"Pan","","",61,null],[13,"Route","","",61,null],[12,"i1","game::edit::select::Mode","",62,null],[12,"preview_path","","",62,null],[13,"Paint","game::edit::select","",61,null],[13,"Erase","","",61,null],[11,"new","","",60,[[["roadid",3],["eventctx",3],["app",3],["btreeset",3]],["roadselector",3]]],[11,"make_controls","","",60,[[["eventctx",3]],["widget",3]]],[11,"roads_changed","","",60,[[["app",3],["eventctx",3]]]],[11,"event","","",60,[[["option",4],["eventctx",3],["app",3]]]],[11,"draw","","",60,[[["app",3],["gfxctx",3]]]],[0,"stop_signs","game::edit","",null,null],[3,"StopSignEditor","game::edit::stop_signs","",null,null],[12,"id","","",63,null],[12,"mode","","",63,null],[12,"geom","","",63,null],[12,"selected_sign","","",63,null],[11,"new","","",63,[[["gameplaymode",4],["eventctx",3],["intersectionid",3],["app",3]],[["box",3],["state",8]]]],[0,"traffic_signals","game::edit","",null,null],[3,"TrafficSignalEditor","game::edit::traffic_signals","",null,null],[12,"side_panel","","",64,null],[12,"top_panel","","",64,null],[12,"mode","","",64,null],[12,"members","","",64,null],[12,"current_stage","","",64,null],[12,"movements","","",64,null],[12,"movement_selected","","",64,null],[12,"draw_current","","",64,null],[12,"command_stack","","",64,null],[12,"redo_stack","","",64,null],[12,"original","","",64,null],[12,"warn_changed","","",64,null],[12,"fade_irrelevant","","",64,null],[3,"BundleEdits","","",null,null],[12,"signals","","",65,null],[5,"make_top_panel","","",null,[[["app",3],["eventctx",3]],["panel",3]]],[5,"make_side_panel","","",null,[[["app",3],["eventctx",3],["btreeset",3]],["panel",3]]],[5,"check_for_missing_turns","","",null,[[["app",3],["btreeset",3]],[["option",4],["bundleedits",3]]]],[5,"draw_multiple_signals","","",null,[[["app",3],["eventctx",3],["btreeset",3],["vec",3]],["widget",3]]],[5,"squish_polygons_together","","",null,[[["polygon",3],["vec",3]],["vec",3]]],[5,"fade_irrelevant","","",null,[[["app",3],["btreeset",3]],["geombatch",3]]],[0,"edits","","",null,null],[3,"ChangeDuration","game::edit::traffic_signals::edits","",null,null],[12,"idx","","",66,null],[5,"edit_entire_signal","","",null,[[["app",3],["eventctx",3],["intersectionid",3],["gameplaymode",4],["bundleedits",3]],[["box",3],["state",8]]]],[11,"new","","",66,[[["eventctx",3],["controltrafficsignal",3]],[["box",3],["state",8]]]],[0,"offsets","game::edit::traffic_signals","",null,null],[3,"ShowAbsolute","game::edit::traffic_signals::offsets","",null,null],[12,"members","","",67,null],[12,"labels","","",67,null],[3,"ShowRelative","","",null,null],[12,"base","","",68,null],[12,"members","","",68,null],[12,"labels","","",68,null],[3,"TuneRelative","","",null,null],[12,"i1","","",69,null],[12,"i2","","",69,null],[12,"members","","",69,null],[12,"labels","","",69,null],[11,"new","","",67,[[["app",3],["eventctx",3],["intersectionid",3],["btreeset",3]],[["box",3],["state",8]]]],[11,"new","","",68,[[["app",3],["eventctx",3],["intersectionid",3],["btreeset",3]],[["box",3],["state",8]]]],[11,"new","","",69,[[["app",3],["eventctx",3],["intersectionid",3],["btreeset",3]],[["box",3],["state",8]]]],[0,"picker","game::edit::traffic_signals","",null,null],[3,"SignalPicker","game::edit::traffic_signals::picker","",null,null],[12,"members","","",70,null],[12,"panel","","",70,null],[12,"mode","","",70,null],[5,"make_btn","","",null,[[["eventctx",3]],["widget",3]]],[11,"new","","",70,[[["gameplaymode",4],["eventctx",3],["intersectionid",3],["btreeset",3]],[["box",3],["state",8]]]],[0,"preview","game::edit::traffic_signals","",null,null],[3,"PreviewTrafficSignal","game::edit::traffic_signals::preview","",null,null],[12,"panel","","",71,null],[12,"speed","","",71,null],[12,"time_panel","","",71,null],[5,"make_previewer","","",null,[[["app",3],["eventctx",3],["intersectionid",3],["btreeset",3]],[["box",3],["state",8]]]],[11,"new","","",71,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"new","game::edit::traffic_signals","",64,[[["gameplaymode",4],["eventctx",3],["intersectionid",3],["btreeset",3],["app",3]],[["box",3],["state",8]]]],[11,"change_stage","","",64,[[["app",3],["eventctx",3]]]],[11,"add_new_edit","","",64,[[["fn",8],["eventctx",3],["app",3]]]],[11,"recalc_draw_current","","",64,[[["app",3],["eventctx",3]]]],[11,"apply","","",65,[[["app",3]]]],[11,"commit","","",65,[[["eventctx",3],["app",3]]]],[11,"get_current","","",65,[[["app",3],["btreeset",3]],["bundleedits",3]]],[11,"synchronize","","",65,[[["app",3],["btreeset",3]],["bundleedits",3]]],[0,"validate","game::edit","",null,null],[5,"check_sidewalk_connectivity","game::edit::validate","",null,[[["editcmd",4],["eventctx",3],["app",3]],[["option",4],["box",3]]]],[5,"check_blackholes","","",null,[[["editcmd",4],["eventctx",3],["app",3]],[["option",4],["box",3]]]],[5,"try_change_lt","","",null,[[["lanetype",4],["eventctx",3],["map",3],["laneid",3]],[["result",4],["editcmd",4],["box",3]]]],[0,"zones","game::edit","",null,null],[3,"ZoneEditor","game::edit::zones","",null,null],[12,"panel","","",72,null],[12,"selector","","",72,null],[12,"allow_through_traffic","","",72,null],[12,"unzoomed","","",72,null],[12,"zoomed","","",72,null],[12,"orig_members","","",72,null],[5,"draw_zone","","",null,[[["app",3],["eventctx",3],["btreeset",3]]]],[5,"make_instructions","","",null,[[["eventctx",3],["btreeset",3]],["widget",3]]],[11,"new","","",72,[[["roadid",3],["eventctx",3],["app",3]],[["box",3],["state",8]]]],[11,"new","game::edit","",51,[[["gameplaymode",4],["eventctx",3],["app",3]],[["box",3],["state",8]]]],[11,"quit","","",51,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"new","","",52,[[["app",3],["fn",8],["string",3],["eventctx",3],["box",3],["into",8],["option",4],["transition",4]],[["box",3],["state",8]]]],[11,"recalc_btn","","",52,[[["app",3],["eventctx",3]]]],[11,"new","","",53,[[["app",3],["eventctx",3],["gameplaymode",4]],[["box",3],["state",8]]]],[11,"new","","",54,[[["box",3],["fn",8],["eventctx",3]],[["box",3],["state",8]]]],[0,"info","game","",null,null],[3,"InfoPanel","game::info","",null,null],[12,"tab","","",73,null],[12,"time","","",73,null],[12,"is_paused","","",73,null],[12,"panel","","",73,null],[12,"unzoomed","","",73,null],[12,"zoomed","","",73,null],[12,"hyperlinks","","",73,null],[12,"warpers","","",73,null],[12,"time_warpers","","",73,null],[12,"cached_actions","","",73,null],[3,"Details","","",null,null],[12,"unzoomed","","",74,null],[12,"zoomed","","",74,null],[12,"hyperlinks","","",74,null],[12,"warpers","","",74,null],[12,"time_warpers","","",74,null],[12,"can_jump_to_time","","",74,null],[3,"DataOptions","","",null,null],[12,"show_before","","",75,null],[12,"show_end_of_day","","",75,null],[12,"disabled_types","","",75,null],[4,"Tab","","",null,null],[13,"PersonTrips","","",76,null],[13,"PersonBio","","",76,null],[13,"PersonSchedule","","",76,null],[13,"BusStatus","","",76,null],[13,"BusStop","","",76,null],[13,"BusRoute","","",76,null],[13,"ParkedCar","","",76,null],[13,"BldgInfo","","",76,null],[13,"BldgPeople","","",76,null],[13,"ParkingLot","","",76,null],[13,"Crowd","","",76,null],[13,"Area","","",76,null],[13,"IntersectionInfo","","",76,null],[13,"IntersectionTraffic","","",76,null],[13,"IntersectionDelay","","",76,null],[13,"IntersectionDemand","","",76,null],[13,"IntersectionArrivals","","",76,null],[13,"IntersectionTrafficSignal","","",76,null],[13,"LaneInfo","","",76,null],[13,"LaneDebug","","",76,null],[13,"LaneTraffic","","",76,null],[5,"make_table","","",null,[[["eventctx",3],["vec",3]],[["widget",3],["vec",3]]]],[5,"throughput","","",null,[[["eventctx",3],["app",3],["dataoptions",3],["fn",8]],["widget",3]]],[5,"make_tabs","","",null,[[["eventctx",3],["tab",4],["vec",3],["hashmap",3]],["widget",3]]],[5,"header_btns","","",null,[[["eventctx",3]],["widget",3]]],[0,"building","","",null,null],[5,"info","game::info::building","",null,[[["app",3],["eventctx",3],["details",3],["buildingid",3]],[["widget",3],["vec",3]]]],[5,"people","","",null,[[["app",3],["eventctx",3],["details",3],["buildingid",3]],[["widget",3],["vec",3]]]],[5,"header","","",null,[[["eventctx",3],["app",3],["tab",4],["details",3],["buildingid",3]],[["widget",3],["vec",3]]]],[5,"draw_occupants","","",null,[[["personid",3],["app",3],["option",4],["details",3],["buildingid",3]]]],[0,"bus","game::info","",null,null],[5,"stop","game::info::bus","",null,[[["app",3],["eventctx",3],["busstopid",3],["details",3]],[["widget",3],["vec",3]]]],[5,"bus_status","","",null,[[["app",3],["eventctx",3],["details",3],["carid",3]],[["widget",3],["vec",3]]]],[5,"bus_header","","",null,[[["app",3],["eventctx",3],["tab",4],["details",3],["carid",3]],[["widget",3],["vec",3]]]],[5,"route","","",null,[[["app",3],["eventctx",3],["busrouteid",3],["details",3]],[["widget",3],["vec",3]]]],[5,"describe_schedule","","",null,[[["busroute",3]],["text",3]]],[0,"debug","game::info","",null,null],[5,"area","game::info::debug","",null,[[["eventctx",3],["app",3],["details",3],["areaid",3]],[["widget",3],["vec",3]]]],[0,"intersection","game::info","",null,null],[5,"info","game::info::intersection","",null,[[["eventctx",3],["app",3],["intersectionid",3],["details",3]],[["widget",3],["vec",3]]]],[5,"traffic","","",null,[[["app",3],["eventctx",3],["intersectionid",3],["dataoptions",3],["details",3]],[["widget",3],["vec",3]]]],[5,"delay","","",null,[[["app",3],["eventctx",3],["intersectionid",3],["dataoptions",3],["details",3]],[["widget",3],["vec",3]]]],[5,"current_demand","","",null,[[["app",3],["eventctx",3],["intersectionid",3],["details",3]],[["widget",3],["vec",3]]]],[5,"arrivals","","",null,[[["app",3],["eventctx",3],["intersectionid",3],["dataoptions",3],["details",3]],[["widget",3],["vec",3]]]],[5,"traffic_signal","","",null,[[["app",3],["eventctx",3],["intersectionid",3],["details",3]],[["widget",3],["vec",3]]]],[5,"delay_plot","","",null,[[["eventctx",3],["app",3],["dataoptions",3],["intersectionid",3]],["widget",3]]],[5,"header","","",null,[[["eventctx",3],["app",3],["tab",4],["intersectionid",3],["details",3]],[["widget",3],["vec",3]]]],[0,"lane","game::info","",null,null],[5,"info","game::info::lane","",null,[[["eventctx",3],["app",3],["details",3],["laneid",3]],[["widget",3],["vec",3]]]],[5,"debug","","",null,[[["eventctx",3],["app",3],["details",3],["laneid",3]],[["widget",3],["vec",3]]]],[5,"traffic","","",null,[[["app",3],["eventctx",3],["dataoptions",3],["details",3],["laneid",3]],[["widget",3],["vec",3]]]],[5,"header","","",null,[[["eventctx",3],["app",3],["tab",4],["details",3],["laneid",3]],[["widget",3],["vec",3]]]],[0,"parking_lot","game::info","",null,null],[5,"info","game::info::parking_lot","",null,[[["app",3],["eventctx",3],["details",3],["parkinglotid",3]],[["widget",3],["vec",3]]]],[5,"header","","",null,[[["eventctx",3],["tab",4],["details",3],["parkinglotid",3]],[["widget",3],["vec",3]]]],[0,"person","game::info","",null,null],[5,"trips","game::info::person","",null,[[["personid",3],["app",3],["eventctx",3],["details",3],["btreemap",3]],[["widget",3],["vec",3]]]],[5,"bio","","",null,[[["personid",3],["app",3],["eventctx",3],["details",3]],[["widget",3],["vec",3]]]],[5,"schedule","","",null,[[["personid",3],["app",3],["eventctx",3],["details",3]],[["widget",3],["vec",3]]]],[5,"crowd","","",null,[[["eventctx",3],["app",3],["details",3],["vec",3]],[["widget",3],["vec",3]]]],[5,"parked_car","","",null,[[["app",3],["eventctx",3],["details",3],["carid",3]],[["widget",3],["vec",3]]]],[5,"header","","",null,[[["personid",3],["app",3],["eventctx",3],["tab",4],["details",3]],[["widget",3],["vec",3]]]],[5,"current_status","","",null,[[["eventctx",3],["person",3],["map",3]],["widget",3]]],[5,"cmp_duration_shorter","","",null,[[["duration",3]],["textspan",3]]],[0,"trip","game::info","",null,null],[3,"OpenTrip","game::info::trip","",null,null],[12,"show_after","","",77,null],[12,"cached_routes","","",77,null],[5,"ongoing","","",null,[[["agentid",4],["app",3],["eventctx",3],["opentrip",3],["details",3],["tripid",3]],["widget",3]]],[5,"future","","",null,[[["app",3],["eventctx",3],["opentrip",3],["details",3],["tripid",3]],["widget",3]]],[5,"finished","","",null,[[["personid",3],["app",3],["eventctx",3],["tripid",3],["details",3],["btreemap",3]],["widget",3]]],[5,"cancelled","","",null,[[["app",3],["eventctx",3],["opentrip",3],["details",3],["tripid",3]],["widget",3]]],[5,"highlight_slow_intersections","","Highlights intersections which were \\\"slow\\\" on the map",null,[[["eventctx",3],["app",3],["details",3],["tripid",3]]]],[5,"highlight_slow_lanes","","Highlights lanes which were \\\"slow\\\" on the map",null,[[["eventctx",3],["app",3],["details",3],["tripid",3]]]],[5,"make_timeline","","Draws the timeline for a single trip, with tooltips",null,[[["app",3],["eventctx",3],["vec",3],["option",4],["tripid",3]],["widget",3]]],[5,"make_trip_details","","Creates the timeline, location warp, and time warp buttons…",null,[[["app",3],["opentrip",3],["tripphase",3],["option",4],["details",3],["eventctx",3],["vec",3],["map",3],["tripid",3]],["widget",3]]],[5,"make_elevation","","",null,[[["eventctx",3],["color",3],["path",3],["map",3]],["widget",3]]],[5,"endpoint","","",null,[[["app",3],["tripendpoint",4]]]],[11,"single","","",77,[[["tripid",3]],[["opentrip",3],["btreemap",3],["tripid",3]]]],[11,"new","","",77,[[],["opentrip",3]]],[8,"ContextualActions","game::info","",null,null],[10,"actions","","",78,[[["app",3],["id",4]],["vec",3]]],[10,"execute","","",78,[[["string",3],["eventctx",3],["id",4],["app",3]],[["transition",4],["app",3]]]],[10,"is_paused","","",78,[[]]],[10,"gameplay_mode","","",78,[[],["gameplaymode",4]]],[11,"from_id","","",76,[[["app",3],["id",4]],["tab",4]]],[11,"to_id","","",76,[[["app",3]],[["id",4],["option",4]]]],[11,"changed_settings","","",76,[[["panel",3]],[["tab",4],["option",4]]]],[11,"variant","","",76,[[]]],[11,"new","","",73,[[["contextualactions",8],["tab",4],["eventctx",3],["app",3]],["infopanel",3]]],[11,"event","","",73,[[["contextualactions",8],["eventctx",3],["app",3]]]],[11,"draw","","",73,[[["app",3],["gfxctx",3]]]],[11,"active_keys","","",73,[[],["vec",3]]],[11,"active_id","","",73,[[["app",3]],[["id",4],["option",4]]]],[11,"new","","",75,[[],["dataoptions",3]]],[11,"to_controls","","",75,[[["app",3],["eventctx",3]],["widget",3]]],[11,"from_controls","","",75,[[["panel",3]],["dataoptions",3]]],[11,"disabled_series","","",75,[[],[["string",3],["hashset",3]]]],[0,"layer","game","",null,null],[3,"PickLayer","game::layer","",null,null],[12,"panel","","",79,null],[4,"LayerOutcome","","",null,null],[13,"Close","","",80,null],[13,"Replace","","",80,null],[0,"elevation","","",null,null],[3,"Elevation","game::layer::elevation","",null,null],[12,"unzoomed","","",81,null],[12,"zoomed","","",81,null],[12,"panel","","",81,null],[11,"new","","",81,[[["app",3],["eventctx",3]],["elevation",3]]],[0,"map","game::layer","",null,null],[3,"BikeNetwork","game::layer::map","",null,null],[12,"panel","","",82,null],[12,"time","","",82,null],[12,"unzoomed","","",82,null],[12,"zoomed","","",82,null],[3,"Static","","",null,null],[12,"panel","","",83,null],[12,"unzoomed","","",83,null],[12,"zoomed","","",83,null],[12,"name","","",83,null],[3,"CongestionCaps","","",null,null],[12,"panel","","",84,null],[12,"time","","",84,null],[12,"unzoomed","","",84,null],[12,"zoomed","","",84,null],[12,"tooltip","","",84,null],[11,"new","","",82,[[["app",3],["eventctx",3]],["bikenetwork",3]]],[11,"new","","",83,[[["colordiscrete",3],["string",3],["eventctx",3],["widget",3]],["static",3]]],[11,"edits","","",83,[[["app",3],["eventctx",3]],["static",3]]],[11,"amenities","","",83,[[["app",3],["eventctx",3]],["static",3]]],[11,"no_sidewalks","","",83,[[["app",3],["eventctx",3]],["static",3]]],[11,"blackholes","","",83,[[["app",3],["eventctx",3]],["static",3]]],[11,"new","","",84,[[["app",3],["eventctx",3]],["congestioncaps",3]]],[0,"pandemic","game::layer","",null,null],[3,"Pandemic","game::layer::pandemic","",null,null],[12,"time","","",85,null],[12,"opts","","",85,null],[12,"draw","","",85,null],[12,"panel","","",85,null],[3,"Options","","",null,null],[12,"heatmap","","",86,null],[12,"state","","",86,null],[4,"SEIR","","",null,null],[13,"Sane","","",87,null],[13,"Exposed","","",87,null],[13,"Infected","","",87,null],[13,"Recovered","","",87,null],[13,"Dead","","",87,null],[5,"make_controls","","",null,[[["app",3],["eventctx",3],["widget",3],["options",3],["option",4]],["panel",3]]],[11,"new","","",85,[[["app",3],["eventctx",3],["options",3]],["pandemic",3]]],[11,"options","","",85,[[],["options",3]]],[0,"parking","game::layer","",null,null],[3,"Occupancy","game::layer::parking","",null,null],[12,"time","","",88,null],[12,"onstreet","","",88,null],[12,"garages","","",88,null],[12,"lots","","",88,null],[12,"private_bldgs","","",88,null],[12,"looking_for_parking","","",88,null],[12,"unzoomed","","",88,null],[12,"zoomed","","",88,null],[12,"panel","","",88,null],[3,"Efficiency","","",null,null],[12,"time","","",89,null],[12,"unzoomed","","",89,null],[12,"zoomed","","",89,null],[12,"panel","","",89,null],[4,"Loc","","",null,null],[13,"Road","","",90,null],[13,"Bldg","","",90,null],[13,"Lot","","",90,null],[11,"new","","",88,[[["app",3],["eventctx",3]],["occupancy",3]]],[11,"new","","",90,[[["parkingspot",4],["map",3]],["loc",4]]],[11,"new","","",89,[[["app",3],["eventctx",3]],["efficiency",3]]],[0,"population","game::layer","",null,null],[3,"PopulationMap","game::layer::population","",null,null],[12,"time","","",91,null],[12,"opts","","",91,null],[12,"draw","","",91,null],[12,"panel","","",91,null],[3,"Options","","",null,null],[12,"heatmap","","",92,null],[5,"make_controls","","",null,[[["app",3],["eventctx",3],["widget",3],["options",3],["option",4]],["panel",3]]],[11,"new","","",91,[[["app",3],["eventctx",3],["options",3]],["populationmap",3]]],[11,"options","","",91,[[],["options",3]]],[0,"traffic","game::layer","",null,null],[3,"Backpressure","game::layer::traffic","",null,null],[12,"time","","",93,null],[12,"unzoomed","","",93,null],[12,"zoomed","","",93,null],[12,"panel","","",93,null],[3,"Throughput","","",null,null],[12,"time","","",94,null],[12,"tooltip","","",94,null],[12,"unzoomed","","",94,null],[12,"zoomed","","",94,null],[12,"panel","","",94,null],[3,"CompareThroughput","","",null,null],[12,"time","","",95,null],[12,"unzoomed","","",95,null],[12,"zoomed","","",95,null],[12,"panel","","",95,null],[3,"TrafficJams","","",null,null],[12,"time","","",96,null],[12,"unzoomed","","",96,null],[12,"zoomed","","",96,null],[12,"panel","","",96,null],[3,"Jam","","",null,null],[12,"epicenter","","",97,null],[12,"members","","",97,null],[3,"Delay","","",null,null],[12,"time","","",98,null],[12,"unzoomed","","",98,null],[12,"panel","","",98,null],[5,"cluster_jams","","",null,[[["map",3],["vec",3]],["vec",3]]],[11,"new","","",93,[[["app",3],["eventctx",3]],["backpressure",3]]],[11,"new","","",94,[[["app",3],["eventctx",3]],["throughput",3]]],[11,"new","","",95,[[["app",3],["eventctx",3]],["comparethroughput",3]]],[11,"new","","",96,[[["app",3],["eventctx",3]],["trafficjams",3]]],[11,"adjacent_to","","",97,[[["map",3],["intersectionid",3]]]],[11,"all_polygons","","",97,[[["map",3]],[["polygon",3],["vec",3]]]],[11,"new","","",98,[[["app",3],["eventctx",3]],["delay",3]]],[0,"transit","game::layer","",null,null],[3,"TransitNetwork","game::layer::transit","",null,null],[12,"panel","","",99,null],[12,"unzoomed","","",99,null],[12,"zoomed","","",99,null],[11,"new","","",99,[[["app",3],["eventctx",3]],["transitnetwork",3]]],[8,"Layer","game::layer","",null,null],[10,"name","","",100,[[],["option",4]]],[10,"event","","",100,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[10,"draw","","",100,[[["app",3],["gfxctx",3]]]],[10,"draw_minimap","","",100,[[["gfxctx",3]]]],[11,"simple_event","","",100,[[["panel",3],["eventctx",3],["panel",3]],[["layeroutcome",4],["option",4]]]],[11,"update","","",79,[[["panel",3],["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"pick","","",79,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[0,"pregame","game","",null,null],[3,"TitleScreen","game::pregame","",null,null],[12,"panel","","",101,null],[12,"screensaver","","",101,null],[12,"rng","","",101,null],[3,"MainMenu","","",null,null],[12,"panel","","",102,null],[3,"About","","",null,null],[12,"panel","","",103,null],[3,"Proposals","","",null,null],[12,"panel","","",104,null],[12,"proposals","","",104,null],[12,"current","","",104,null],[3,"Screensaver","","",null,null],[12,"line","","",105,null],[12,"started","","",105,null],[0,"built_info","","",null,null],[5,"time","game::pregame::built_info","",null,[[],["text",3]]],[17,"CI_PLATFORM","","The Continuous Integration platform detected during…",null,null],[17,"PKG_VERSION","","The full version.",null,null],[17,"PKG_VERSION_MAJOR","","The major version.",null,null],[17,"PKG_VERSION_MINOR","","The minor version.",null,null],[17,"PKG_VERSION_PATCH","","The patch version.",null,null],[17,"PKG_VERSION_PRE","","The pre-release version.",null,null],[17,"PKG_AUTHORS","","A colon-separated list of authors.",null,null],[17,"PKG_NAME","","The name of the package.",null,null],[17,"PKG_DESCRIPTION","","The description.",null,null],[17,"PKG_HOMEPAGE","","The homepage.",null,null],[17,"TARGET","","The target triple that was being compiled for.",null,null],[17,"HOST","","The host triple of the rust compiler.",null,null],[17,"PROFILE","","`release` for release builds, `debug` for other builds.",null,null],[17,"RUSTC","","The compiler that cargo resolved to use.",null,null],[17,"RUSTDOC","","The documentation generator that cargo resolved to use.",null,null],[17,"OPT_LEVEL","","Value of OPT_LEVEL for the profile used during compilation.",null,null],[17,"NUM_JOBS","","The parallelism that was specified during compilation.",null,null],[17,"DEBUG","","Value of DEBUG for the profile used during compilation.",null,null],[17,"FEATURES","","The features that were enabled during compilation.",null,null],[17,"FEATURES_STR","","The features as a comma-separated string.",null,null],[17,"RUSTC_VERSION","","The output of `rustc -V`",null,null],[17,"RUSTDOC_VERSION","","The output of `rustdoc -V`",null,null],[17,"BUILT_TIME_UTC","","The built-time in RFC2822, UTC",null,null],[17,"CFG_TARGET_ARCH","","The target architecture, given by `cfg!(target_arch)`.",null,null],[17,"CFG_ENDIAN","","The endianness, given by `cfg!(target_endian)`.",null,null],[17,"CFG_ENV","","The toolchain-environment, given by `cfg!(target_env)`.",null,null],[17,"CFG_FAMILY","","The OS-family, given by `cfg!(target_family)`.",null,null],[17,"CFG_OS","","The operating system, given by `cfg!(target_os)`.",null,null],[17,"CFG_POINTER_WIDTH","","The pointer width, given by `cfg!(target_pointer_width)`.",null,null],[11,"new","game::pregame","",101,[[["eventctx",3],["app",3]],["titlescreen",3]]],[11,"new","","",102,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"new","","",103,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"new","","",104,[[["app",3],["eventctx",3],["string",3],["option",4]],[["box",3],["state",8]]]],[11,"bounce","","",105,[[["xorshiftrng",3],["eventctx",3],["app",3]],["screensaver",3]]],[11,"update","","",105,[[["xorshiftrng",3],["eventctx",3],["app",3]]]],[0,"sandbox","game","",null,null],[3,"SandboxMode","game::sandbox","",null,null],[12,"gameplay","","",106,null],[12,"gameplay_mode","","",106,null],[12,"controls","","",106,null],[12,"recalc_unzoomed_agent","","",106,null],[3,"SandboxControls","","",null,null],[12,"common","","",107,null],[12,"route_preview","","",107,null],[12,"tool_panel","","",107,null],[12,"time_panel","","",107,null],[12,"speed","","",107,null],[12,"agent_meter","","",107,null],[12,"minimap","","",107,null],[3,"BackToMainMenu","","",null,null],[3,"AgentMeter","","",null,null],[12,"time","","",108,null],[12,"panel","","",108,null],[3,"Actions","","",null,null],[12,"is_paused","","",109,null],[12,"can_interact","","",109,null],[12,"gameplay","","",109,null],[3,"SandboxLoader","","",null,null],[12,"stage","","",110,null],[12,"mode","","",110,null],[12,"finalize","","",110,null],[4,"LoadStage","","",null,null],[13,"LoadingMap","","",111,null],[13,"LoadingScenario","","",111,null],[13,"GotScenario","","",111,null],[13,"LoadingPrebaked","","",111,null],[13,"GotPrebaked","","",111,null],[13,"Finalizing","","",111,null],[5,"maybe_exit_sandbox","","",null,[[["eventctx",3]],[["transition",4],["app",3]]]],[5,"mouseover_unzoomed_agent_circle","","",null,[[["eventctx",3],["app",3]]]],[5,"is_daytime","","",null,[[["app",3]]]],[0,"dashboards","","",null,null],[4,"DashTab","game::sandbox::dashboards","",null,null],[13,"FinishedTripTable","","",112,null],[13,"CancelledTripTable","","",112,null],[13,"UnfinishedTripTable","","",112,null],[13,"TripSummaries","","",112,null],[13,"ParkingOverhead","","",112,null],[13,"ActiveTraffic","","",112,null],[13,"TransitRoutes","","",112,null],[13,"CommuterPatterns","","",112,null],[13,"TrafficSignals","","",112,null],[0,"commuter","","",null,null],[3,"CommuterPatterns","game::sandbox::dashboards::commuter","",null,null],[12,"bldg_to_block","","",113,null],[12,"border_to_block","","",113,null],[12,"blocks","","",113,null],[12,"current_block","","",113,null],[12,"filter","","",113,null],[12,"trips_from_block","","",113,null],[12,"trips_to_block","","",113,null],[12,"panel","","",113,null],[12,"draw_all_blocks","","",113,null],[3,"PanelState","","",null,null],[12,"building_counts","","",114,null],[12,"max_count","","",114,null],[12,"total_trips","","",114,null],[3,"Block","","",null,null],[12,"id","","",115,null],[12,"bldgs","","",115,null],[12,"borders","","",115,null],[12,"shape","","",115,null],[3,"Filter","","",null,null],[12,"from_block","","",116,null],[12,"include_borders","","",116,null],[12,"depart_from","","",116,null],[12,"depart_until","","",116,null],[12,"modes","","",116,null],[3,"Loop","","",null,null],[12,"bldgs","","",117,null],[12,"proper","","",117,null],[12,"roads","","",117,null],[4,"BlockSelection","","",null,null],[13,"NothingSelected","","",118,null],[13,"Unlocked","","",118,null],[13,"Locked","","",118,null],[12,"base","game::sandbox::dashboards::commuter::BlockSelection","",119,null],[12,"compare_to","","",119,null],[4,"BorderType","game::sandbox::dashboards::commuter","",null,null],[13,"Incoming","","",120,null],[13,"Outgoing","","",120,null],[13,"Both","","",120,null],[5,"group_bldgs","","",null,[[["app",3]]]],[5,"build_shape_for_border","","",null,[[["intersection",3],["bordertype",4],["map",3]],["polygon",3]]],[5,"partition_sidewalk_loops","","",null,[[["app",3]],[["loop",3],["vec",3]]]],[5,"make_panel","","",null,[[["app",3],["eventctx",3]],["panel",3]]],[6,"BlockID","","",null,null],[11,"new","","",113,[[["eventctx",3],["app",3]],[["box",3],["state",8]]]],[11,"count_per_block","","",113,[[["block",3]],["vec",3]]],[11,"build_block_drawable","","",113,[[["eventctx",3],["app",3],["blockselection",4]]]],[11,"redraw_panel","","",113,[[["app",3],["option",4],["eventctx",3],["panelstate",3]]]],[0,"generic_trip_table","game::sandbox::dashboards","",null,null],[3,"GenericTripTable","game::sandbox::dashboards::generic_trip_table","",null,null],[12,"table","","",121,null],[12,"panel","","",121,null],[12,"make_panel","","",121,null],[12,"tab","","",121,null],[5,"preview_trip","","",null,[[["app",3],["gfxctx",3],["panel",3]]]],[5,"preview_route","","",null,[[["app",3],["gfxctx",3],["tripid",3]],["geombatch",3]]],[11,"new","","",121,[[["dashtab",4],["app",3],["eventctx",3],["table",3]],[["box",3],["state",8]]]],[11,"recalc","","",121,[[["app",3],["eventctx",3]]]],[0,"misc","game::sandbox::dashboards","",null,null],[3,"ActiveTraffic","game::sandbox::dashboards::misc","",null,null],[12,"panel","","",122,null],[3,"TransitRoutes","","",null,null],[12,"panel","","",123,null],[5,"downsample","","",null,[[["vec",3]],["vec",3]]],[11,"new","","",122,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"new","","",123,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[0,"parking_overhead","game::sandbox::dashboards","",null,null],[3,"ParkingOverhead","game::sandbox::dashboards::parking_overhead","",null,null],[3,"Entry","","",null,null],[12,"trip","","",124,null],[12,"total_duration","","",124,null],[12,"driving_duration","","",124,null],[12,"parking_duration","","",124,null],[12,"walking_duration","","",124,null],[12,"percent_overhead","","",124,null],[12,"starts_off_map","","",124,null],[12,"ends_off_map","","",124,null],[3,"Filters","","",null,null],[12,"starts_off_map","","",125,null],[12,"ends_off_map","","",125,null],[5,"produce_raw_data","","",null,[[["app",3]],[["vec",3],["entry",3]]]],[5,"make_table","","",null,[[["app",3]],[["filters",3],["table",3],["entry",3]]]],[5,"make_panel","","",null,[[["app",3],["eventctx",3],["table",3]],["panel",3]]],[11,"new","","",126,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[0,"summaries","game::sandbox::dashboards","",null,null],[3,"TripSummaries","game::sandbox::dashboards::summaries","",null,null],[12,"panel","","",127,null],[3,"Filter","","",null,null],[12,"changes_pct","","",128,null],[12,"modes","","",128,null],[5,"summary_boxes","","",null,[[["app",3],["eventctx",3],["filter",3]],["widget",3]]],[5,"scatter_plot","","",null,[[["app",3],["eventctx",3],["filter",3]],["widget",3]]],[5,"contingency_table","","",null,[[["app",3],["eventctx",3],["filter",3]],["widget",3]]],[5,"pct_diff","","",null,[[["duration",3]]]],[5,"export_times","","",null,[[["app",3]],[["result",4],["string",3],["error",3]]]],[11,"new","","",127,[[["app",3],["eventctx",3],["filter",3]],[["box",3],["state",8]]]],[11,"new","","",128,[[],["filter",3]]],[11,"get_trips","","",128,[[["app",3]],["vec",3]]],[0,"table","game::sandbox::dashboards","",null,null],[3,"Table","game::sandbox::dashboards::table","",null,null],[12,"data","","",129,null],[12,"label_per_row","","",129,null],[12,"columns","","",129,null],[12,"filter","","",129,null],[12,"sort_by","","",129,null],[12,"descending","","",129,null],[12,"skip","","",129,null],[3,"Column","","",null,null],[12,"name","","",130,null],[12,"render","","",130,null],[12,"col","","",130,null],[3,"Filter","","",null,null],[12,"state","","",131,null],[12,"to_controls","","",131,null],[12,"from_controls","","",131,null],[12,"apply","","",131,null],[4,"Col","","",null,null],[13,"Static","","",132,null],[13,"Sortable","","",132,null],[5,"make_pagination","","",null,[[["eventctx",3]],["widget",3]]],[5,"make_table","","",null,[[["eventctx",3],["widget",3],["vec",3],["vec",3]],["widget",3]]],[17,"ROWS","","",null,null],[11,"new","","",129,[[["box",3],["fn",8],["filter",3],["vec",3]],["table",3]]],[11,"column","","",129,[[["box",3],["col",4],["fn",8]]]],[11,"render","","",129,[[["app",3],["eventctx",3]],["widget",3]]],[11,"clicked","","",129,[[]]],[11,"panel_changed","","",129,[[["panel",3]]]],[11,"static_col","","",129,[[["box",3],["fn",8]]]],[0,"traffic_signals","game::sandbox::dashboards","",null,null],[3,"TrafficSignalDemand","game::sandbox::dashboards::traffic_signals","",null,null],[12,"panel","","",133,null],[12,"all_demand","","",133,null],[12,"hour","","",133,null],[12,"draw_all","","",133,null],[12,"selected","","",133,null],[3,"Demand","","",null,null],[12,"raw","","",134,null],[11,"new","","",133,[[["eventctx",3],["app",3]],[["box",3],["state",8]]]],[11,"all_demand","","",134,[[["timer",3],["app",3]],[["demand",3],["hashmap",3],["intersectionid",3]]]],[11,"count","","",134,[[["time",3]],[["counter",3],["movementid",3]]]],[11,"make_arrows","","",134,[[["time",3],["controltrafficsignal",3]],["vec",3]]],[11,"draw_demand","","",134,[[["app",3],["eventctx",3],["hashmap",3],["time",3]],["drawable",3]]],[0,"trip_table","game::sandbox::dashboards","",null,null],[3,"FinishedTripTable","game::sandbox::dashboards::trip_table","",null,null],[3,"CancelledTripTable","","",null,null],[3,"UnfinishedTripTable","","",null,null],[3,"FinishedTrip","","",null,null],[12,"id","","",135,null],[12,"mode","","",135,null],[12,"modified","","",135,null],[12,"capped","","",135,null],[12,"starts_off_map","","",135,null],[12,"ends_off_map","","",135,null],[12,"departure","","",135,null],[12,"duration_after","","",135,null],[12,"duration_before","","",135,null],[12,"waiting","","",135,null],[12,"percent_waiting","","",135,null],[3,"CancelledTrip","","",null,null],[12,"id","","",136,null],[12,"mode","","",136,null],[12,"departure","","",136,null],[12,"starts_off_map","","",136,null],[12,"ends_off_map","","",136,null],[12,"duration_before","","",136,null],[12,"reason","","",136,null],[3,"UnfinishedTrip","","",null,null],[12,"id","","",137,null],[12,"mode","","",137,null],[12,"departure","","",137,null],[12,"duration_before","","",137,null],[3,"Filters","","",null,null],[12,"modes","","",138,null],[12,"off_map_starts","","",138,null],[12,"off_map_ends","","",138,null],[12,"unmodified_trips","","",138,null],[12,"modified_trips","","",138,null],[12,"uncapped_trips","","",138,null],[12,"capped_trips","","",138,null],[5,"produce_raw_data","","",null,[[["app",3]]]],[5,"make_table_finished_trips","","",null,[[["app",3]],[["filters",3],["table",3],["finishedtrip",3]]]],[5,"make_table_cancelled_trips","","",null,[[["app",3]],[["table",3],["cancelledtrip",3],["filters",3]]]],[5,"make_table_unfinished_trips","","",null,[[["app",3]],[["filters",3],["table",3],["unfinishedtrip",3]]]],[5,"trip_category_selector","","",null,[[["dashtab",4],["app",3],["eventctx",3]],["widget",3]]],[5,"make_panel_finished_trips","","",null,[[["app",3],["eventctx",3],["table",3]],["panel",3]]],[5,"make_panel_cancelled_trips","","",null,[[["app",3],["eventctx",3],["table",3]],["panel",3]]],[5,"make_panel_unfinished_trips","","",null,[[["app",3],["eventctx",3],["table",3]],["panel",3]]],[11,"new","","",139,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"new","","",140,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"new","","",141,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[11,"picker","game::sandbox::dashboards","",112,[[["eventctx",3],["app",3]],["widget",3]]],[11,"transition","","",112,[[["panel",3],["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[0,"gameplay","game::sandbox","",null,null],[3,"FinalScore","game::sandbox::gameplay","",null,null],[12,"panel","","",142,null],[12,"retry","","",142,null],[12,"next_mode","","",142,null],[12,"chose_next","","",142,null],[12,"chose_back_to_challenges","","",142,null],[4,"GameplayMode","","",null,null],[13,"Freeform","","",143,null],[13,"PlayScenario","","",143,null],[13,"FixTrafficSignals","","",143,null],[13,"OptimizeCommute","","",143,null],[13,"Tutorial","","",143,null],[4,"LoadScenario","","",null,null],[13,"Nothing","","",144,null],[13,"Path","","",144,null],[13,"Scenario","","",144,null],[5,"challenge_header","","",null,[[["eventctx",3]],["widget",3]]],[0,"commute","","",null,null],[3,"OptimizeCommute","game::sandbox::gameplay::commute","",null,null],[12,"top_center","","",145,null],[12,"meter","","",145,null],[12,"person","","",145,null],[12,"mode","","",145,null],[12,"goal","","",145,null],[12,"time","","",145,null],[12,"done","","",145,null],[12,"trips","","",145,null],[12,"once","","",145,null],[5,"get_score","","",null,[[["app",3],["vec",3]]]],[5,"make_meter","","",null,[[["app",3],["eventctx",3],["duration",3]],["panel",3]]],[5,"final_score","","",null,[[["gameplaymode",4],["eventctx",3],["app",3],["duration",3]],[["box",3],["state",8]]]],[5,"cutscene_task","","",null,[[["gameplaymode",4]],[["fn",8],["box",3]]]],[17,"METER_HACK","","",null,null],[11,"new","","",145,[[["app",3],["eventctx",3],["origpersonid",3],["duration",3]],[["box",3],["gameplaystate",8]]]],[11,"cutscene_pt1","","",145,[[["app",3],["eventctx",3],["gameplaymode",4]],[["box",3],["state",8]]]],[11,"cutscene_pt2","","",145,[[["app",3],["eventctx",3],["gameplaymode",4]],[["box",3],["state",8]]]],[0,"fix_traffic_signals","game::sandbox::gameplay","",null,null],[3,"FixTrafficSignals","game::sandbox::gameplay::fix_traffic_signals","",null,null],[12,"top_center","","",146,null],[12,"meter","","",146,null],[12,"time","","",146,null],[12,"done_at","","",146,null],[12,"mode","","",146,null],[5,"make_meter","","",null,[[["app",3],["eventctx",3],["option",4]],["panel",3]]],[5,"final_score","","",null,[[["gameplaymode",4],["eventctx",3],["app",3]],[["box",3],["state",8]]]],[5,"cutscene_pt1_task","","",null,[[["eventctx",3]],["widget",3]]],[17,"THRESHOLD","","",null,null],[17,"METER_HACK","","",null,null],[11,"new","","",146,[[["app",3],["eventctx",3]],[["box",3],["gameplaystate",8]]]],[11,"cutscene_pt1","","",146,[[["app",3],["eventctx",3],["gameplaymode",4]],[["box",3],["state",8]]]],[0,"freeform","game::sandbox::gameplay","",null,null],[3,"Freeform","game::sandbox::gameplay::freeform","",null,null],[12,"top_center","","",147,null],[3,"AgentSpawner","","",null,null],[12,"panel","","",148,null],[12,"source","","",148,null],[12,"goal","","",148,null],[12,"confirmed","","",148,null],[5,"make_change_traffic","","",null,[[["app",3],["eventctx",3],["string",3],["screenrectangle",3]],[["box",3],["state",8]]]],[5,"spawn_agents_around","","",null,[[["app",3],["intersectionid",3]]]],[5,"actions","","",null,[[["app",3],["id",4]],["vec",3]]],[5,"execute","","",null,[[["id",4],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"new","","",147,[[["eventctx",3]],[["box",3],["gameplaystate",8]]]],[11,"new","","",148,[[["option",4],["eventctx",3],["buildingid",3]],[["box",3],["state",8]]]],[0,"play_scenario","game::sandbox::gameplay","",null,null],[3,"PlayScenario","game::sandbox::gameplay::play_scenario","",null,null],[12,"top_center","","",149,null],[12,"scenario_name","","",149,null],[12,"modifiers","","",149,null],[3,"EditScenarioModifiers","","",null,null],[12,"scenario_name","","",150,null],[12,"modifiers","","",150,null],[12,"panel","","",150,null],[3,"ChangeMode","","",null,null],[12,"panel","","",151,null],[12,"scenario_name","","",151,null],[12,"modifiers","","",151,null],[11,"new","","",149,[[["vec",3],["eventctx",3],["string",3],["scenariomodifier",4]],[["box",3],["gameplaystate",8]]]],[11,"new","","",150,[[["vec",3],["string",3],["eventctx",3],["scenariomodifier",4]],[["box",3],["state",8]]]],[11,"new","","",151,[[["vec",3],["app",3],["eventctx",3],["string",3],["scenariomodifier",4]],[["box",3],["state",8]]]],[0,"tutorial","game::sandbox::gameplay","",null,null],[3,"Tutorial","game::sandbox::gameplay::tutorial","",null,null],[12,"top_center","","",152,null],[12,"last_finished_task","","",152,null],[12,"msg_panel","","",152,null],[12,"warped","","",152,null],[3,"TutorialPointer","","",null,null],[12,"stage","","",153,null],[12,"part","","",153,null],[3,"Stage","","",null,null],[12,"messages","","",154,null],[12,"task","","",154,null],[12,"warp_to","","",154,null],[12,"custom_spawn","","",154,null],[12,"make_scenario","","",154,null],[3,"TutorialState","","",null,null],[12,"stages","","",155,null],[12,"current","","",155,null],[12,"window_dims","","",155,null],[12,"inspected_bike_lane","","",155,null],[12,"inspected_building","","",155,null],[12,"inspected_stop_sign","","",155,null],[12,"inspected_border","","",155,null],[12,"was_paused","","",155,null],[12,"num_pauses","","",155,null],[12,"following_car","","",155,null],[12,"car_parked","","",155,null],[12,"prank_done","","",155,null],[12,"parking_found","","",155,null],[12,"score_delivered","","",155,null],[12,"fire_station","","",155,null],[4,"Task","","",null,null],[13,"Nil","","",156,null],[13,"Camera","","",156,null],[13,"InspectObjects","","",156,null],[13,"TimeControls","","",156,null],[13,"PauseResume","","",156,null],[13,"Escort","","",156,null],[13,"LowParking","","",156,null],[13,"WatchBikes","","",156,null],[13,"FixBikes","","",156,null],[13,"Done","","",156,null],[5,"arrow","","",null,[[["screenpt",3]],[["box",3],["option",4]]]],[5,"make_bike_lane_scenario","","",null,[[["map",3]],["scenariogenerator",3]]],[5,"transition","","",null,[[["tutorialstate",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[5,"actions","","",null,[[["app",3],["id",4]],["vec",3]]],[5,"execute","","",null,[[["id",4],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[5,"intro_story","","",null,[[["app",3],["eventctx",3]],[["box",3],["state",8]]]],[5,"bldg","","",null,[[],["osmid",4]]],[17,"ESCORT","","",null,null],[17,"CAR_BIKE_CONTENTION_GOAL","","",null,null],[11,"new","","",153,[[],["tutorialpointer",3]]],[11,"start","","Launches the tutorial gameplay along with its cutscene",152,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"initialize","","Idempotent. This must be called before `make_gameplay` or…",152,[[["eventctx",3],["app",3]]]],[11,"make_gameplay","","",152,[[["tutorialpointer",3],["eventctx",3],["app",3]],[["box",3],["gameplaystate",8]]]],[11,"scenario","","",152,[[["app",3],["tutorialpointer",3]],[["scenariogenerator",3],["option",4]]]],[11,"inner_event","","",152,[[["eventctx",3],["tutorialstate",3],["sandboxcontrols",3],["app",3]],[["option",4],["transition",4]]]],[11,"top_txt","","",156,[[["tutorialstate",3]],["text",3]]],[11,"label","","",156,[[]]],[11,"new","","",154,[[["task",4]],["stage",3]]],[11,"msg","","",154,[[["string",3],["box",3],["option",4],["into",8],["vec",3]],["stage",3]]],[11,"left_aligned_msg","","",154,[[["string",3],["box",3],["option",4],["into",8],["vec",3]],["stage",3]]],[11,"warp_to","","",154,[[["id",4],["option",4]],["stage",3]]],[11,"custom_spawn","","",154,[[["box",3],["fn",8]],["stage",3]]],[11,"scenario","","",154,[[["scenariogenerator",3]],["stage",3]]],[11,"reset_state","","",155,[[]]],[11,"stage","","",155,[[],["stage",3]]],[11,"interaction","","",155,[[],["task",4]]],[11,"lines","","",155,[[],["option",4]]],[11,"next","","",155,[[]]],[11,"prev","","",155,[[]]],[11,"make_top_center","","",155,[[["eventctx",3]],["panel",3]]],[11,"make_state","","",155,[[["eventctx",3],["app",3]],[["box",3],["gameplaystate",8]]]],[11,"new","","",155,[[["app",3],["eventctx",3]],["tutorialstate",3]]],[11,"scenarios_to_prebake","","",155,[[["map",3]],[["vec",3],["scenariogenerator",3]]]],[8,"GameplayState","game::sandbox::gameplay","",null,null],[10,"event","","",157,[[["eventctx",3],["sandboxcontrols",3],["app",3],["actions",3]],[["option",4],["transition",4]]]],[10,"draw","","",157,[[["app",3],["gfxctx",3]]]],[11,"on_destroy","","",157,[[["app",3]]]],[10,"recreate_panels","","",157,[[["app",3],["eventctx",3]]]],[11,"can_move_canvas","","",157,[[]]],[11,"can_examine_objects","","",157,[[]]],[11,"has_common","","",157,[[]]],[11,"has_tool_panel","","",157,[[]]],[11,"has_time_panel","","",157,[[]]],[11,"has_speed","","",157,[[]]],[11,"has_agent_meter","","",157,[[]]],[11,"has_minimap","","",157,[[]]],[11,"is","","Returns true if the trait object wraps an object of type…",157,[[]]],[11,"downcast","","Returns a boxed object from a boxed trait object if the…",157,[[["box",3]],[["box",3],["box",3],["result",4]]]],[11,"downcast_rc","","Returns an `Rc`-ed object from an `Rc`-ed trait object if…",157,[[["rc",3]],[["rc",3],["result",4],["rc",3]]]],[11,"downcast_ref","","Returns a reference to the object within the trait object…",157,[[],["option",4]]],[11,"downcast_mut","","Returns a mutable reference to the object within the trait…",157,[[],["option",4]]],[11,"map_name","","",143,[[],["mapname",3]]],[11,"scenario","","",143,[[["timer",3],["app",3],["xorshiftrng",3]],["loadscenario",4]]],[11,"can_edit_lanes","","",143,[[]]],[11,"can_edit_stop_signs","","",143,[[]]],[11,"can_jump_to_time","","",143,[[]]],[11,"allows","","",143,[[["mapedits",3]]]],[11,"initialize","","Must be called after the scenario has been setup. The…",143,[[["eventctx",3],["app",3]],[["box",3],["gameplaystate",8]]]],[11,"new","","",142,[[["app",3],["eventctx",3],["string",3],["gameplaymode",4],["option",4]],[["box",3],["state",8]]]],[0,"misc_tools","game::sandbox","",null,null],[3,"RoutePreview","game::sandbox::misc_tools","Draws a preview of the path for the agent under the mouse…",null,null],[12,"preview","","",158,null],[3,"TrafficRecorder","","",null,null],[12,"members","","",159,null],[12,"panel","","",159,null],[5,"make_btn","","",null,[[["eventctx",3]],["widget",3]]],[11,"new","","",158,[[],["routepreview",3]]],[11,"event","","",158,[[["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"draw","","",158,[[["gfxctx",3]]]],[11,"new","","",159,[[["intersectionid",3],["eventctx",3],["btreeset",3]],[["box",3],["state",8]]]],[0,"speed","game::sandbox","",null,null],[3,"SpeedControls","game::sandbox::speed","",null,null],[12,"panel","","",160,null],[12,"paused","","",160,null],[12,"setting","","",160,null],[3,"TimePanel","","",null,null],[12,"time","","",161,null],[12,"panel","","",161,null],[4,"SpeedSetting","","",null,null],[13,"Realtime","","",162,null],[13,"Fast","","",162,null],[13,"Faster","","",162,null],[13,"Fastest","","",162,null],[11,"new","","",160,[[["app",3],["eventctx",3]],["speedcontrols",3]]],[11,"recreate_panel","","",160,[[["app",3],["eventctx",3]]]],[11,"event","","",160,[[["eventctx",3],["gameplaymode",4],["option",4],["app",3]],[["option",4],["transition",4]]]],[11,"draw","","",160,[[["gfxctx",3]]]],[11,"pause","","",160,[[["app",3],["eventctx",3]]]],[11,"resume_realtime","","",160,[[["app",3],["eventctx",3]]]],[11,"is_paused","","",160,[[]]],[11,"new","","",161,[[["app",3],["eventctx",3]],["timepanel",3]]],[11,"event","","",161,[[["eventctx",3],["app",3]]]],[11,"draw","","",161,[[["gfxctx",3]]]],[0,"time_warp","game::sandbox","",null,null],[3,"JumpToTime","game::sandbox::time_warp","",null,null],[12,"panel","","",163,null],[12,"target","","",163,null],[12,"maybe_mode","","",163,null],[3,"JumpToDelay","","",null,null],[12,"panel","","",164,null],[12,"maybe_mode","","",164,null],[3,"TimeWarpScreen","","",null,null],[12,"target","","",165,null],[12,"wall_time_started","","",165,null],[12,"sim_time_started","","",165,null],[12,"halt_upon_delay","","",165,null],[12,"panel","","",165,null],[5,"area_under_curve","","",null,[[["vec",3]],["polygon",3]]],[5,"compare_count","","",null,[[],["string",3]]],[5,"build_jump_to_time_btn","","",null,[[["eventctx",3],["time",3]],["widget",3]]],[5,"build_jump_to_delay_button","","",null,[[["eventctx",3],["duration",3]],["widget",3]]],[11,"new","","",163,[[["app",3],["eventctx",3],["gameplaymode",4],["option",4]],[["box",3],["state",8]]]],[11,"new","","",164,[[["app",3],["eventctx",3],["gameplaymode",4],["option",4]],[["box",3],["state",8]]]],[11,"new","","",165,[[["eventctx",3],["option",4],["time",3],["app",3],["duration",3]],[["box",3],["state",8]]]],[0,"uber_turns","game::sandbox","",null,null],[3,"UberTurnPicker","game::sandbox::uber_turns","",null,null],[12,"members","","",166,null],[3,"UberTurnViewer","","",null,null],[12,"draw","","",167,null],[12,"ic","","",167,null],[12,"idx","","",167,null],[12,"legal_turns","","",167,null],[11,"new","","",166,[[["app",3],["eventctx",3],["intersectionid",3]],[["box",3],["state",8]]]],[11,"new","","",167,[[["eventctx",3],["intersectionid",3],["btreeset",3],["app",3]],[["box",3],["state",8]]]],[11,"simple_new","game::sandbox","If you don\'t need to chain any transitions after the…",106,[[["gameplaymode",4],["eventctx",3],["app",3]],[["box",3],["state",8]]]],[11,"async_new","","This does not immediately initialize anything (like…",106,[[["gameplaymode",4],["eventctx",3],["fnonce",8],["box",3],["app",3]],[["box",3],["state",8]]]],[11,"contextual_actions","","",106,[[],["actions",3]]],[11,"new","","",108,[[["app",3],["eventctx",3]],["agentmeter",3]]],[11,"event","","",108,[[["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"draw","","",108,[[["gfxctx",3]]]],[11,"new","","",107,[[["app",3],["eventctx",3],["box",3]],["sandboxcontrols",3]]],[11,"recreate_panels","","",107,[[["app",3],["eventctx",3]]]],[11,"from","game::app","",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]],[["any",8],["box",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,"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]],[["any",8],["box",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,"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]],[["any",8],["box",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","","",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,"vzip","","",3,[[]]],[11,"into_any","","",3,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",3,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",3,[[],["any",8]]],[11,"as_any_mut","","",3,[[],["any",8]]],[11,"into_any_arc","","",3,[[["arc",3]],[["arc",3],["any",8]]]],[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,"into_any","","",4,[[["box",3]],[["any",8],["box",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,"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]],[["any",8],["box",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,"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]],[["any",8],["box",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,"into_any_arc","","",6,[[["arc",3]],[["arc",3],["any",8]]]],[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,"into_any","","",7,[[["box",3]],[["any",8],["box",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","game::challenges","",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]],[["any",8],["box",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,"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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",10,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",10,[[],["any",8]]],[11,"as_any_mut","","",10,[[],["any",8]]],[11,"into_any_arc","","",10,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",11,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",11,[[],["any",8]]],[11,"as_any_mut","","",11,[[],["any",8]]],[11,"from","game::challenges::cutscene","",12,[[]]],[11,"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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",12,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",13,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",14,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",14,[[],["any",8]]],[11,"as_any_mut","","",14,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",15,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",15,[[],["any",8]]],[11,"as_any_mut","","",15,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",16,[[["rc",3]],[["any",8],["rc",3]]]],[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","game::common","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",17,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",17,[[],["any",8]]],[11,"as_any_mut","","",17,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",18,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",18,[[],["any",8]]],[11,"as_any_mut","","",18,[[],["any",8]]],[11,"from","game::common::minimap","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",19,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",19,[[],["any",8]]],[11,"as_any_mut","","",19,[[],["any",8]]],[11,"from","game::common::warp","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",20,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",20,[[],["any",8]]],[11,"as_any_mut","","",20,[[],["any",8]]],[11,"into_any_arc","","",20,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",21,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",21,[[],["any",8]]],[11,"as_any_mut","","",21,[[],["any",8]]],[11,"from","game::debug","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",23,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",23,[[],["any",8]]],[11,"as_any_mut","","",23,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",24,[[["rc",3]],[["any",8],["rc",3]]]],[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","","",168,[[]]],[11,"into","","",168,[[]]],[11,"borrow","","",168,[[]]],[11,"borrow_mut","","",168,[[]]],[11,"try_from","","",168,[[],["result",4]]],[11,"try_into","","",168,[[],["result",4]]],[11,"type_id","","",168,[[],["typeid",3]]],[11,"vzip","","",168,[[]]],[11,"into_any","","",168,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",168,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",168,[[],["any",8]]],[11,"as_any_mut","","",168,[[],["any",8]]],[11,"into_any_arc","","",168,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",25,[[["rc",3]],[["any",8],["rc",3]]]],[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","game::debug::blocked_by","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",26,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",26,[[],["any",8]]],[11,"as_any_mut","","",26,[[],["any",8]]],[11,"from","game::debug::floodfill","",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,"into_any","","",27,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",27,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",27,[[],["any",8]]],[11,"as_any_mut","","",27,[[],["any",8]]],[11,"from","","",28,[[]]],[11,"into","","",28,[[]]],[11,"to_owned","","",28,[[]]],[11,"clone_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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",28,[[["rc",3]],[["any",8],["rc",3]]]],[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","game::debug::objects","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",29,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",29,[[],["any",8]]],[11,"as_any_mut","","",29,[[],["any",8]]],[11,"into_any_arc","","",29,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::debug::path_counter","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",30,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",30,[[],["any",8]]],[11,"as_any_mut","","",30,[[],["any",8]]],[11,"from","game::debug::polygons","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",31,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",31,[[],["any",8]]],[11,"as_any_mut","","",31,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",32,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",32,[[],["any",8]]],[11,"as_any_mut","","",32,[[],["any",8]]],[11,"into_any_arc","","",32,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::devtools","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",33,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",33,[[],["any",8]]],[11,"as_any_mut","","",33,[[],["any",8]]],[11,"from","game::devtools::collisions","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",34,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",34,[[],["any",8]]],[11,"as_any_mut","","",34,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",35,[[["rc",3]],[["any",8],["rc",3]]]],[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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",36,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",36,[[],["any",8]]],[11,"as_any_mut","","",36,[[],["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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",37,[[["rc",3]],[["any",8],["rc",3]]]],[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","game::devtools::destinations","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",40,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",40,[[],["any",8]]],[11,"as_any_mut","","",40,[[],["any",8]]],[11,"from","game::devtools::kml","",41,[[]]],[11,"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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",41,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",41,[[],["any",8]]],[11,"as_any_mut","","",41,[[],["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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",42,[[["rc",3]],[["any",8],["rc",3]]]],[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","game::devtools::polygon","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",43,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",43,[[],["any",8]]],[11,"as_any_mut","","",43,[[],["any",8]]],[11,"from","game::devtools::scenario","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",44,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",44,[[],["any",8]]],[11,"as_any_mut","","",44,[[],["any",8]]],[11,"from","game::devtools::story","",45,[[]]],[11,"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,"into_any","","",45,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",45,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",45,[[],["any",8]]],[11,"as_any_mut","","",45,[[],["any",8]]],[11,"from","","",46,[[]]],[11,"into","","",46,[[]]],[11,"to_owned","","",46,[[]]],[11,"clone_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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",46,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",46,[[],["any",8]]],[11,"as_any_mut","","",46,[[],["any",8]]],[11,"into_any_arc","","",46,[[["arc",3]],[["arc",3],["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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",47,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",47,[[],["any",8]]],[11,"as_any_mut","","",47,[[],["any",8]]],[11,"into_any_arc","","",47,[[["arc",3]],[["arc",3],["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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",48,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",48,[[],["any",8]]],[11,"as_any_mut","","",48,[[],["any",8]]],[11,"into_any_arc","","",48,[[["arc",3]],[["arc",3],["any",8]]]],[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,"into_any","","",49,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",49,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",49,[[],["any",8]]],[11,"as_any_mut","","",49,[[],["any",8]]],[11,"into_any_arc","","",49,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",50,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",50,[[],["any",8]]],[11,"as_any_mut","","",50,[[],["any",8]]],[11,"from","game::edit","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",51,[[["rc",3]],[["any",8],["rc",3]]]],[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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",52,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",52,[[],["any",8]]],[11,"as_any_mut","","",52,[[],["any",8]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",53,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",53,[[],["any",8]]],[11,"as_any_mut","","",53,[[],["any",8]]],[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,"into_any","","",54,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",54,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",54,[[],["any",8]]],[11,"as_any_mut","","",54,[[],["any",8]]],[11,"from","game::edit::bulk","",55,[[]]],[11,"into","","",55,[[]]],[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,"vzip","","",55,[[]]],[11,"into_any","","",55,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",55,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",55,[[],["any",8]]],[11,"as_any_mut","","",55,[[],["any",8]]],[11,"from","","",56,[[]]],[11,"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,"vzip","","",56,[[]]],[11,"into_any","","",56,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",56,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",56,[[],["any",8]]],[11,"as_any_mut","","",56,[[],["any",8]]],[11,"from","game::edit::cluster_traffic_signals","",57,[[]]],[11,"into","","",57,[[]]],[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,"vzip","","",57,[[]]],[11,"into_any","","",57,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",57,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",57,[[],["any",8]]],[11,"as_any_mut","","",57,[[],["any",8]]],[11,"from","game::edit::lanes","",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,"into_any","","",58,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",58,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",58,[[],["any",8]]],[11,"as_any_mut","","",58,[[],["any",8]]],[11,"into_any_arc","","",58,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::edit::routes","",59,[[]]],[11,"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,"into_any","","",59,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",59,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",59,[[],["any",8]]],[11,"as_any_mut","","",59,[[],["any",8]]],[11,"from","game::edit::select","",60,[[]]],[11,"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,"into_any","","",60,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",60,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",60,[[],["any",8]]],[11,"as_any_mut","","",60,[[],["any",8]]],[11,"into_any_arc","","",60,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",61,[[]]],[11,"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,"into_any","","",61,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",61,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",61,[[],["any",8]]],[11,"as_any_mut","","",61,[[],["any",8]]],[11,"into_any_arc","","",61,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::edit::stop_signs","",63,[[]]],[11,"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,"into_any","","",63,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",63,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",63,[[],["any",8]]],[11,"as_any_mut","","",63,[[],["any",8]]],[11,"into_any_arc","","",63,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::edit::traffic_signals","",64,[[]]],[11,"into","","",64,[[]]],[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,"vzip","","",64,[[]]],[11,"into_any","","",64,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",64,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",64,[[],["any",8]]],[11,"as_any_mut","","",64,[[],["any",8]]],[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,"vzip","","",65,[[]]],[11,"into_any","","",65,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",65,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",65,[[],["any",8]]],[11,"as_any_mut","","",65,[[],["any",8]]],[11,"into_any_arc","","",65,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::edit::traffic_signals::edits","",66,[[]]],[11,"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,"into_any","","",66,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",66,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",66,[[],["any",8]]],[11,"as_any_mut","","",66,[[],["any",8]]],[11,"into_any_arc","","",66,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::edit::traffic_signals::offsets","",67,[[]]],[11,"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,"into_any","","",67,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",67,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",67,[[],["any",8]]],[11,"as_any_mut","","",67,[[],["any",8]]],[11,"into_any_arc","","",67,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",68,[[]]],[11,"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,"vzip","","",68,[[]]],[11,"into_any","","",68,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",68,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",68,[[],["any",8]]],[11,"as_any_mut","","",68,[[],["any",8]]],[11,"into_any_arc","","",68,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",69,[[]]],[11,"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,"vzip","","",69,[[]]],[11,"into_any","","",69,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",69,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",69,[[],["any",8]]],[11,"as_any_mut","","",69,[[],["any",8]]],[11,"into_any_arc","","",69,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::edit::traffic_signals::picker","",70,[[]]],[11,"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,"into_any","","",70,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",70,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",70,[[],["any",8]]],[11,"as_any_mut","","",70,[[],["any",8]]],[11,"from","game::edit::traffic_signals::preview","",71,[[]]],[11,"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,"into_any","","",71,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",71,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",71,[[],["any",8]]],[11,"as_any_mut","","",71,[[],["any",8]]],[11,"from","game::edit::zones","",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,"into_any","","",72,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",72,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",72,[[],["any",8]]],[11,"as_any_mut","","",72,[[],["any",8]]],[11,"from","game::info","",73,[[]]],[11,"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,"vzip","","",73,[[]]],[11,"into_any","","",73,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",73,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",73,[[],["any",8]]],[11,"as_any_mut","","",73,[[],["any",8]]],[11,"from","","",74,[[]]],[11,"into","","",74,[[]]],[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,"vzip","","",74,[[]]],[11,"into_any","","",74,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",74,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",74,[[],["any",8]]],[11,"as_any_mut","","",74,[[],["any",8]]],[11,"into_any_arc","","",74,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",75,[[]]],[11,"into","","",75,[[]]],[11,"to_owned","","",75,[[]]],[11,"clone_into","","",75,[[]]],[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,"vzip","","",75,[[]]],[11,"into_any","","",75,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",75,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",75,[[],["any",8]]],[11,"as_any_mut","","",75,[[],["any",8]]],[11,"into_any_arc","","",75,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",76,[[]]],[11,"into","","",76,[[]]],[11,"to_owned","","",76,[[]]],[11,"clone_into","","",76,[[]]],[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,"vzip","","",76,[[]]],[11,"into_any","","",76,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",76,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",76,[[],["any",8]]],[11,"as_any_mut","","",76,[[],["any",8]]],[11,"into_any_arc","","",76,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::info::trip","",77,[[]]],[11,"into","","",77,[[]]],[11,"to_owned","","",77,[[]]],[11,"clone_into","","",77,[[]]],[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,"vzip","","",77,[[]]],[11,"into_any","","",77,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",77,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",77,[[],["any",8]]],[11,"as_any_mut","","",77,[[],["any",8]]],[11,"into_any_arc","","",77,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::layer","",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,"into_any","","",79,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",79,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",79,[[],["any",8]]],[11,"as_any_mut","","",79,[[],["any",8]]],[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,"into_any","","",80,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",80,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",80,[[],["any",8]]],[11,"as_any_mut","","",80,[[],["any",8]]],[11,"from","game::layer::elevation","",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,"into_any","","",81,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",81,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",81,[[],["any",8]]],[11,"as_any_mut","","",81,[[],["any",8]]],[11,"from","game::layer::map","",82,[[]]],[11,"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,"into_any","","",82,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",82,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",82,[[],["any",8]]],[11,"as_any_mut","","",82,[[],["any",8]]],[11,"from","","",83,[[]]],[11,"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,"into_any","","",83,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",83,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",83,[[],["any",8]]],[11,"as_any_mut","","",83,[[],["any",8]]],[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,"into_any","","",84,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",84,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",84,[[],["any",8]]],[11,"as_any_mut","","",84,[[],["any",8]]],[11,"from","game::layer::pandemic","",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,"into_any","","",85,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",85,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",85,[[],["any",8]]],[11,"as_any_mut","","",85,[[],["any",8]]],[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,"vzip","","",86,[[]]],[11,"into_any","","",86,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",86,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",86,[[],["any",8]]],[11,"as_any_mut","","",86,[[],["any",8]]],[11,"into_any_arc","","",86,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",87,[[]]],[11,"into","","",87,[[]]],[11,"to_owned","","",87,[[]]],[11,"clone_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,"into_any","","",87,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",87,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",87,[[],["any",8]]],[11,"as_any_mut","","",87,[[],["any",8]]],[11,"into_any_arc","","",87,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::layer::parking","",88,[[]]],[11,"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,"vzip","","",88,[[]]],[11,"into_any","","",88,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",88,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",88,[[],["any",8]]],[11,"as_any_mut","","",88,[[],["any",8]]],[11,"from","","",89,[[]]],[11,"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,"into_any","","",89,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",89,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",89,[[],["any",8]]],[11,"as_any_mut","","",89,[[],["any",8]]],[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,"into_any","","",90,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",90,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",90,[[],["any",8]]],[11,"as_any_mut","","",90,[[],["any",8]]],[11,"into_any_arc","","",90,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::layer::population","",91,[[]]],[11,"into","","",91,[[]]],[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,"vzip","","",91,[[]]],[11,"into_any","","",91,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",91,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",91,[[],["any",8]]],[11,"as_any_mut","","",91,[[],["any",8]]],[11,"from","","",92,[[]]],[11,"into","","",92,[[]]],[11,"to_owned","","",92,[[]]],[11,"clone_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,"into_any","","",92,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",92,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",92,[[],["any",8]]],[11,"as_any_mut","","",92,[[],["any",8]]],[11,"into_any_arc","","",92,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::layer::traffic","",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,"into_any","","",93,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",93,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",93,[[],["any",8]]],[11,"as_any_mut","","",93,[[],["any",8]]],[11,"from","","",94,[[]]],[11,"into","","",94,[[]]],[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,"vzip","","",94,[[]]],[11,"into_any","","",94,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",94,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",94,[[],["any",8]]],[11,"as_any_mut","","",94,[[],["any",8]]],[11,"from","","",95,[[]]],[11,"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,"into_any","","",95,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",95,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",95,[[],["any",8]]],[11,"as_any_mut","","",95,[[],["any",8]]],[11,"from","","",96,[[]]],[11,"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,"into_any","","",96,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",96,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",96,[[],["any",8]]],[11,"as_any_mut","","",96,[[],["any",8]]],[11,"from","","",97,[[]]],[11,"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,"into_any","","",97,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",97,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",97,[[],["any",8]]],[11,"as_any_mut","","",97,[[],["any",8]]],[11,"into_any_arc","","",97,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",98,[[]]],[11,"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,"into_any","","",98,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",98,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",98,[[],["any",8]]],[11,"as_any_mut","","",98,[[],["any",8]]],[11,"from","game::layer::transit","",99,[[]]],[11,"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,"into_any","","",99,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",99,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",99,[[],["any",8]]],[11,"as_any_mut","","",99,[[],["any",8]]],[11,"from","game::pregame","",101,[[]]],[11,"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,"vzip","","",101,[[]]],[11,"into_any","","",101,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",101,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",101,[[],["any",8]]],[11,"as_any_mut","","",101,[[],["any",8]]],[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,"into_any","","",102,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",102,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",102,[[],["any",8]]],[11,"as_any_mut","","",102,[[],["any",8]]],[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,"into_any","","",103,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",103,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",103,[[],["any",8]]],[11,"as_any_mut","","",103,[[],["any",8]]],[11,"from","","",104,[[]]],[11,"into","","",104,[[]]],[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,"vzip","","",104,[[]]],[11,"into_any","","",104,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",104,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",104,[[],["any",8]]],[11,"as_any_mut","","",104,[[],["any",8]]],[11,"from","","",105,[[]]],[11,"into","","",105,[[]]],[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,"vzip","","",105,[[]]],[11,"into_any","","",105,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",105,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",105,[[],["any",8]]],[11,"as_any_mut","","",105,[[],["any",8]]],[11,"into_any_arc","","",105,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox","",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,"into_any","","",106,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",106,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",106,[[],["any",8]]],[11,"as_any_mut","","",106,[[],["any",8]]],[11,"from","","",107,[[]]],[11,"into","","",107,[[]]],[11,"borrow","","",107,[[]]],[11,"borrow_mut","","",107,[[]]],[11,"try_from","","",107,[[],["result",4]]],[11,"try_into","","",107,[[],["result",4]]],[11,"type_id","","",107,[[],["typeid",3]]],[11,"vzip","","",107,[[]]],[11,"into_any","","",107,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",107,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",107,[[],["any",8]]],[11,"as_any_mut","","",107,[[],["any",8]]],[11,"from","","",169,[[]]],[11,"into","","",169,[[]]],[11,"borrow","","",169,[[]]],[11,"borrow_mut","","",169,[[]]],[11,"try_from","","",169,[[],["result",4]]],[11,"try_into","","",169,[[],["result",4]]],[11,"type_id","","",169,[[],["typeid",3]]],[11,"vzip","","",169,[[]]],[11,"into_any","","",169,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",169,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",169,[[],["any",8]]],[11,"as_any_mut","","",169,[[],["any",8]]],[11,"into_any_arc","","",169,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",108,[[]]],[11,"into","","",108,[[]]],[11,"borrow","","",108,[[]]],[11,"borrow_mut","","",108,[[]]],[11,"try_from","","",108,[[],["result",4]]],[11,"try_into","","",108,[[],["result",4]]],[11,"type_id","","",108,[[],["typeid",3]]],[11,"vzip","","",108,[[]]],[11,"into_any","","",108,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",108,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",108,[[],["any",8]]],[11,"as_any_mut","","",108,[[],["any",8]]],[11,"from","","",109,[[]]],[11,"into","","",109,[[]]],[11,"borrow","","",109,[[]]],[11,"borrow_mut","","",109,[[]]],[11,"try_from","","",109,[[],["result",4]]],[11,"try_into","","",109,[[],["result",4]]],[11,"type_id","","",109,[[],["typeid",3]]],[11,"vzip","","",109,[[]]],[11,"into_any","","",109,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",109,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",109,[[],["any",8]]],[11,"as_any_mut","","",109,[[],["any",8]]],[11,"into_any_arc","","",109,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",110,[[]]],[11,"into","","",110,[[]]],[11,"borrow","","",110,[[]]],[11,"borrow_mut","","",110,[[]]],[11,"try_from","","",110,[[],["result",4]]],[11,"try_into","","",110,[[],["result",4]]],[11,"type_id","","",110,[[],["typeid",3]]],[11,"vzip","","",110,[[]]],[11,"into_any","","",110,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",110,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",110,[[],["any",8]]],[11,"as_any_mut","","",110,[[],["any",8]]],[11,"from","","",111,[[]]],[11,"into","","",111,[[]]],[11,"borrow","","",111,[[]]],[11,"borrow_mut","","",111,[[]]],[11,"try_from","","",111,[[],["result",4]]],[11,"try_into","","",111,[[],["result",4]]],[11,"type_id","","",111,[[],["typeid",3]]],[11,"vzip","","",111,[[]]],[11,"into_any","","",111,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",111,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",111,[[],["any",8]]],[11,"as_any_mut","","",111,[[],["any",8]]],[11,"into_any_arc","","",111,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::dashboards","",112,[[]]],[11,"into","","",112,[[]]],[11,"to_owned","","",112,[[]]],[11,"clone_into","","",112,[[]]],[11,"borrow","","",112,[[]]],[11,"borrow_mut","","",112,[[]]],[11,"try_from","","",112,[[],["result",4]]],[11,"try_into","","",112,[[],["result",4]]],[11,"type_id","","",112,[[],["typeid",3]]],[11,"vzip","","",112,[[]]],[11,"into_any","","",112,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",112,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",112,[[],["any",8]]],[11,"as_any_mut","","",112,[[],["any",8]]],[11,"into_any_arc","","",112,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::dashboards::commuter","",113,[[]]],[11,"into","","",113,[[]]],[11,"borrow","","",113,[[]]],[11,"borrow_mut","","",113,[[]]],[11,"try_from","","",113,[[],["result",4]]],[11,"try_into","","",113,[[],["result",4]]],[11,"type_id","","",113,[[],["typeid",3]]],[11,"vzip","","",113,[[]]],[11,"into_any","","",113,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",113,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",113,[[],["any",8]]],[11,"as_any_mut","","",113,[[],["any",8]]],[11,"from","","",114,[[]]],[11,"into","","",114,[[]]],[11,"borrow","","",114,[[]]],[11,"borrow_mut","","",114,[[]]],[11,"try_from","","",114,[[],["result",4]]],[11,"try_into","","",114,[[],["result",4]]],[11,"type_id","","",114,[[],["typeid",3]]],[11,"vzip","","",114,[[]]],[11,"into_any","","",114,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",114,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",114,[[],["any",8]]],[11,"as_any_mut","","",114,[[],["any",8]]],[11,"into_any_arc","","",114,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",115,[[]]],[11,"into","","",115,[[]]],[11,"borrow","","",115,[[]]],[11,"borrow_mut","","",115,[[]]],[11,"try_from","","",115,[[],["result",4]]],[11,"try_into","","",115,[[],["result",4]]],[11,"type_id","","",115,[[],["typeid",3]]],[11,"vzip","","",115,[[]]],[11,"into_any","","",115,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",115,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",115,[[],["any",8]]],[11,"as_any_mut","","",115,[[],["any",8]]],[11,"into_any_arc","","",115,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",116,[[]]],[11,"into","","",116,[[]]],[11,"borrow","","",116,[[]]],[11,"borrow_mut","","",116,[[]]],[11,"try_from","","",116,[[],["result",4]]],[11,"try_into","","",116,[[],["result",4]]],[11,"type_id","","",116,[[],["typeid",3]]],[11,"vzip","","",116,[[]]],[11,"into_any","","",116,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",116,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",116,[[],["any",8]]],[11,"as_any_mut","","",116,[[],["any",8]]],[11,"into_any_arc","","",116,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",117,[[]]],[11,"into","","",117,[[]]],[11,"borrow","","",117,[[]]],[11,"borrow_mut","","",117,[[]]],[11,"try_from","","",117,[[],["result",4]]],[11,"try_into","","",117,[[],["result",4]]],[11,"type_id","","",117,[[],["typeid",3]]],[11,"vzip","","",117,[[]]],[11,"into_any","","",117,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",117,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",117,[[],["any",8]]],[11,"as_any_mut","","",117,[[],["any",8]]],[11,"into_any_arc","","",117,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",118,[[]]],[11,"into","","",118,[[]]],[11,"to_owned","","",118,[[]]],[11,"clone_into","","",118,[[]]],[11,"borrow","","",118,[[]]],[11,"borrow_mut","","",118,[[]]],[11,"try_from","","",118,[[],["result",4]]],[11,"try_into","","",118,[[],["result",4]]],[11,"type_id","","",118,[[],["typeid",3]]],[11,"vzip","","",118,[[]]],[11,"into_any","","",118,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",118,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",118,[[],["any",8]]],[11,"as_any_mut","","",118,[[],["any",8]]],[11,"into_any_arc","","",118,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",120,[[]]],[11,"into","","",120,[[]]],[11,"borrow","","",120,[[]]],[11,"borrow_mut","","",120,[[]]],[11,"try_from","","",120,[[],["result",4]]],[11,"try_into","","",120,[[],["result",4]]],[11,"type_id","","",120,[[],["typeid",3]]],[11,"vzip","","",120,[[]]],[11,"into_any","","",120,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",120,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",120,[[],["any",8]]],[11,"as_any_mut","","",120,[[],["any",8]]],[11,"into_any_arc","","",120,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::dashboards::generic_trip_table","",121,[[]]],[11,"into","","",121,[[]]],[11,"borrow","","",121,[[]]],[11,"borrow_mut","","",121,[[]]],[11,"try_from","","",121,[[],["result",4]]],[11,"try_into","","",121,[[],["result",4]]],[11,"type_id","","",121,[[],["typeid",3]]],[11,"vzip","","",121,[[]]],[11,"into_any","","",121,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",121,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",121,[[],["any",8]]],[11,"as_any_mut","","",121,[[],["any",8]]],[11,"from","game::sandbox::dashboards::misc","",122,[[]]],[11,"into","","",122,[[]]],[11,"borrow","","",122,[[]]],[11,"borrow_mut","","",122,[[]]],[11,"try_from","","",122,[[],["result",4]]],[11,"try_into","","",122,[[],["result",4]]],[11,"type_id","","",122,[[],["typeid",3]]],[11,"vzip","","",122,[[]]],[11,"into_any","","",122,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",122,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",122,[[],["any",8]]],[11,"as_any_mut","","",122,[[],["any",8]]],[11,"from","","",123,[[]]],[11,"into","","",123,[[]]],[11,"borrow","","",123,[[]]],[11,"borrow_mut","","",123,[[]]],[11,"try_from","","",123,[[],["result",4]]],[11,"try_into","","",123,[[],["result",4]]],[11,"type_id","","",123,[[],["typeid",3]]],[11,"vzip","","",123,[[]]],[11,"into_any","","",123,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",123,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",123,[[],["any",8]]],[11,"as_any_mut","","",123,[[],["any",8]]],[11,"from","game::sandbox::dashboards::parking_overhead","",126,[[]]],[11,"into","","",126,[[]]],[11,"borrow","","",126,[[]]],[11,"borrow_mut","","",126,[[]]],[11,"try_from","","",126,[[],["result",4]]],[11,"try_into","","",126,[[],["result",4]]],[11,"type_id","","",126,[[],["typeid",3]]],[11,"vzip","","",126,[[]]],[11,"into_any","","",126,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",126,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",126,[[],["any",8]]],[11,"as_any_mut","","",126,[[],["any",8]]],[11,"into_any_arc","","",126,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",124,[[]]],[11,"into","","",124,[[]]],[11,"borrow","","",124,[[]]],[11,"borrow_mut","","",124,[[]]],[11,"try_from","","",124,[[],["result",4]]],[11,"try_into","","",124,[[],["result",4]]],[11,"type_id","","",124,[[],["typeid",3]]],[11,"vzip","","",124,[[]]],[11,"into_any","","",124,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",124,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",124,[[],["any",8]]],[11,"as_any_mut","","",124,[[],["any",8]]],[11,"into_any_arc","","",124,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",125,[[]]],[11,"into","","",125,[[]]],[11,"borrow","","",125,[[]]],[11,"borrow_mut","","",125,[[]]],[11,"try_from","","",125,[[],["result",4]]],[11,"try_into","","",125,[[],["result",4]]],[11,"type_id","","",125,[[],["typeid",3]]],[11,"vzip","","",125,[[]]],[11,"into_any","","",125,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",125,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",125,[[],["any",8]]],[11,"as_any_mut","","",125,[[],["any",8]]],[11,"into_any_arc","","",125,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::dashboards::summaries","",127,[[]]],[11,"into","","",127,[[]]],[11,"borrow","","",127,[[]]],[11,"borrow_mut","","",127,[[]]],[11,"try_from","","",127,[[],["result",4]]],[11,"try_into","","",127,[[],["result",4]]],[11,"type_id","","",127,[[],["typeid",3]]],[11,"vzip","","",127,[[]]],[11,"into_any","","",127,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",127,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",127,[[],["any",8]]],[11,"as_any_mut","","",127,[[],["any",8]]],[11,"from","","",128,[[]]],[11,"into","","",128,[[]]],[11,"borrow","","",128,[[]]],[11,"borrow_mut","","",128,[[]]],[11,"try_from","","",128,[[],["result",4]]],[11,"try_into","","",128,[[],["result",4]]],[11,"type_id","","",128,[[],["typeid",3]]],[11,"vzip","","",128,[[]]],[11,"into_any","","",128,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",128,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",128,[[],["any",8]]],[11,"as_any_mut","","",128,[[],["any",8]]],[11,"into_any_arc","","",128,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::dashboards::table","",129,[[]]],[11,"into","","",129,[[]]],[11,"borrow","","",129,[[]]],[11,"borrow_mut","","",129,[[]]],[11,"try_from","","",129,[[],["result",4]]],[11,"try_into","","",129,[[],["result",4]]],[11,"type_id","","",129,[[],["typeid",3]]],[11,"vzip","","",129,[[]]],[11,"into_any","","",129,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",129,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",129,[[],["any",8]]],[11,"as_any_mut","","",129,[[],["any",8]]],[11,"from","","",130,[[]]],[11,"into","","",130,[[]]],[11,"borrow","","",130,[[]]],[11,"borrow_mut","","",130,[[]]],[11,"try_from","","",130,[[],["result",4]]],[11,"try_into","","",130,[[],["result",4]]],[11,"type_id","","",130,[[],["typeid",3]]],[11,"vzip","","",130,[[]]],[11,"into_any","","",130,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",130,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",130,[[],["any",8]]],[11,"as_any_mut","","",130,[[],["any",8]]],[11,"from","","",131,[[]]],[11,"into","","",131,[[]]],[11,"borrow","","",131,[[]]],[11,"borrow_mut","","",131,[[]]],[11,"try_from","","",131,[[],["result",4]]],[11,"try_into","","",131,[[],["result",4]]],[11,"type_id","","",131,[[],["typeid",3]]],[11,"vzip","","",131,[[]]],[11,"into_any","","",131,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",131,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",131,[[],["any",8]]],[11,"as_any_mut","","",131,[[],["any",8]]],[11,"from","","",132,[[]]],[11,"into","","",132,[[]]],[11,"borrow","","",132,[[]]],[11,"borrow_mut","","",132,[[]]],[11,"try_from","","",132,[[],["result",4]]],[11,"try_into","","",132,[[],["result",4]]],[11,"type_id","","",132,[[],["typeid",3]]],[11,"vzip","","",132,[[]]],[11,"into_any","","",132,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",132,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",132,[[],["any",8]]],[11,"as_any_mut","","",132,[[],["any",8]]],[11,"from","game::sandbox::dashboards::traffic_signals","",133,[[]]],[11,"into","","",133,[[]]],[11,"borrow","","",133,[[]]],[11,"borrow_mut","","",133,[[]]],[11,"try_from","","",133,[[],["result",4]]],[11,"try_into","","",133,[[],["result",4]]],[11,"type_id","","",133,[[],["typeid",3]]],[11,"vzip","","",133,[[]]],[11,"into_any","","",133,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",133,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",133,[[],["any",8]]],[11,"as_any_mut","","",133,[[],["any",8]]],[11,"from","","",134,[[]]],[11,"into","","",134,[[]]],[11,"borrow","","",134,[[]]],[11,"borrow_mut","","",134,[[]]],[11,"try_from","","",134,[[],["result",4]]],[11,"try_into","","",134,[[],["result",4]]],[11,"type_id","","",134,[[],["typeid",3]]],[11,"vzip","","",134,[[]]],[11,"into_any","","",134,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",134,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",134,[[],["any",8]]],[11,"as_any_mut","","",134,[[],["any",8]]],[11,"into_any_arc","","",134,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::dashboards::trip_table","",139,[[]]],[11,"into","","",139,[[]]],[11,"borrow","","",139,[[]]],[11,"borrow_mut","","",139,[[]]],[11,"try_from","","",139,[[],["result",4]]],[11,"try_into","","",139,[[],["result",4]]],[11,"type_id","","",139,[[],["typeid",3]]],[11,"vzip","","",139,[[]]],[11,"into_any","","",139,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",139,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",139,[[],["any",8]]],[11,"as_any_mut","","",139,[[],["any",8]]],[11,"into_any_arc","","",139,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",140,[[]]],[11,"into","","",140,[[]]],[11,"borrow","","",140,[[]]],[11,"borrow_mut","","",140,[[]]],[11,"try_from","","",140,[[],["result",4]]],[11,"try_into","","",140,[[],["result",4]]],[11,"type_id","","",140,[[],["typeid",3]]],[11,"vzip","","",140,[[]]],[11,"into_any","","",140,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",140,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",140,[[],["any",8]]],[11,"as_any_mut","","",140,[[],["any",8]]],[11,"into_any_arc","","",140,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",141,[[]]],[11,"into","","",141,[[]]],[11,"borrow","","",141,[[]]],[11,"borrow_mut","","",141,[[]]],[11,"try_from","","",141,[[],["result",4]]],[11,"try_into","","",141,[[],["result",4]]],[11,"type_id","","",141,[[],["typeid",3]]],[11,"vzip","","",141,[[]]],[11,"into_any","","",141,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",141,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",141,[[],["any",8]]],[11,"as_any_mut","","",141,[[],["any",8]]],[11,"into_any_arc","","",141,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",135,[[]]],[11,"into","","",135,[[]]],[11,"borrow","","",135,[[]]],[11,"borrow_mut","","",135,[[]]],[11,"try_from","","",135,[[],["result",4]]],[11,"try_into","","",135,[[],["result",4]]],[11,"type_id","","",135,[[],["typeid",3]]],[11,"vzip","","",135,[[]]],[11,"into_any","","",135,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",135,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",135,[[],["any",8]]],[11,"as_any_mut","","",135,[[],["any",8]]],[11,"into_any_arc","","",135,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",136,[[]]],[11,"into","","",136,[[]]],[11,"borrow","","",136,[[]]],[11,"borrow_mut","","",136,[[]]],[11,"try_from","","",136,[[],["result",4]]],[11,"try_into","","",136,[[],["result",4]]],[11,"type_id","","",136,[[],["typeid",3]]],[11,"vzip","","",136,[[]]],[11,"into_any","","",136,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",136,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",136,[[],["any",8]]],[11,"as_any_mut","","",136,[[],["any",8]]],[11,"into_any_arc","","",136,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",137,[[]]],[11,"into","","",137,[[]]],[11,"borrow","","",137,[[]]],[11,"borrow_mut","","",137,[[]]],[11,"try_from","","",137,[[],["result",4]]],[11,"try_into","","",137,[[],["result",4]]],[11,"type_id","","",137,[[],["typeid",3]]],[11,"vzip","","",137,[[]]],[11,"into_any","","",137,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",137,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",137,[[],["any",8]]],[11,"as_any_mut","","",137,[[],["any",8]]],[11,"into_any_arc","","",137,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",138,[[]]],[11,"into","","",138,[[]]],[11,"borrow","","",138,[[]]],[11,"borrow_mut","","",138,[[]]],[11,"try_from","","",138,[[],["result",4]]],[11,"try_into","","",138,[[],["result",4]]],[11,"type_id","","",138,[[],["typeid",3]]],[11,"vzip","","",138,[[]]],[11,"into_any","","",138,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",138,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",138,[[],["any",8]]],[11,"as_any_mut","","",138,[[],["any",8]]],[11,"into_any_arc","","",138,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::gameplay","",142,[[]]],[11,"into","","",142,[[]]],[11,"borrow","","",142,[[]]],[11,"borrow_mut","","",142,[[]]],[11,"try_from","","",142,[[],["result",4]]],[11,"try_into","","",142,[[],["result",4]]],[11,"type_id","","",142,[[],["typeid",3]]],[11,"vzip","","",142,[[]]],[11,"into_any","","",142,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",142,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",142,[[],["any",8]]],[11,"as_any_mut","","",142,[[],["any",8]]],[11,"from","","",143,[[]]],[11,"into","","",143,[[]]],[11,"to_owned","","",143,[[]]],[11,"clone_into","","",143,[[]]],[11,"borrow","","",143,[[]]],[11,"borrow_mut","","",143,[[]]],[11,"try_from","","",143,[[],["result",4]]],[11,"try_into","","",143,[[],["result",4]]],[11,"type_id","","",143,[[],["typeid",3]]],[11,"equivalent","","",143,[[]]],[11,"vzip","","",143,[[]]],[11,"into_any","","",143,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",143,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",143,[[],["any",8]]],[11,"as_any_mut","","",143,[[],["any",8]]],[11,"into_any_arc","","",143,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",144,[[]]],[11,"into","","",144,[[]]],[11,"borrow","","",144,[[]]],[11,"borrow_mut","","",144,[[]]],[11,"try_from","","",144,[[],["result",4]]],[11,"try_into","","",144,[[],["result",4]]],[11,"type_id","","",144,[[],["typeid",3]]],[11,"vzip","","",144,[[]]],[11,"into_any","","",144,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",144,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",144,[[],["any",8]]],[11,"as_any_mut","","",144,[[],["any",8]]],[11,"into_any_arc","","",144,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::gameplay::commute","",145,[[]]],[11,"into","","",145,[[]]],[11,"borrow","","",145,[[]]],[11,"borrow_mut","","",145,[[]]],[11,"try_from","","",145,[[],["result",4]]],[11,"try_into","","",145,[[],["result",4]]],[11,"type_id","","",145,[[],["typeid",3]]],[11,"vzip","","",145,[[]]],[11,"into_any","","",145,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",145,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",145,[[],["any",8]]],[11,"as_any_mut","","",145,[[],["any",8]]],[11,"from","game::sandbox::gameplay::fix_traffic_signals","",146,[[]]],[11,"into","","",146,[[]]],[11,"borrow","","",146,[[]]],[11,"borrow_mut","","",146,[[]]],[11,"try_from","","",146,[[],["result",4]]],[11,"try_into","","",146,[[],["result",4]]],[11,"type_id","","",146,[[],["typeid",3]]],[11,"vzip","","",146,[[]]],[11,"into_any","","",146,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",146,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",146,[[],["any",8]]],[11,"as_any_mut","","",146,[[],["any",8]]],[11,"from","game::sandbox::gameplay::freeform","",147,[[]]],[11,"into","","",147,[[]]],[11,"borrow","","",147,[[]]],[11,"borrow_mut","","",147,[[]]],[11,"try_from","","",147,[[],["result",4]]],[11,"try_into","","",147,[[],["result",4]]],[11,"type_id","","",147,[[],["typeid",3]]],[11,"vzip","","",147,[[]]],[11,"into_any","","",147,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",147,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",147,[[],["any",8]]],[11,"as_any_mut","","",147,[[],["any",8]]],[11,"from","","",148,[[]]],[11,"into","","",148,[[]]],[11,"borrow","","",148,[[]]],[11,"borrow_mut","","",148,[[]]],[11,"try_from","","",148,[[],["result",4]]],[11,"try_into","","",148,[[],["result",4]]],[11,"type_id","","",148,[[],["typeid",3]]],[11,"vzip","","",148,[[]]],[11,"into_any","","",148,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",148,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",148,[[],["any",8]]],[11,"as_any_mut","","",148,[[],["any",8]]],[11,"from","game::sandbox::gameplay::play_scenario","",149,[[]]],[11,"into","","",149,[[]]],[11,"borrow","","",149,[[]]],[11,"borrow_mut","","",149,[[]]],[11,"try_from","","",149,[[],["result",4]]],[11,"try_into","","",149,[[],["result",4]]],[11,"type_id","","",149,[[],["typeid",3]]],[11,"vzip","","",149,[[]]],[11,"into_any","","",149,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",149,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",149,[[],["any",8]]],[11,"as_any_mut","","",149,[[],["any",8]]],[11,"from","","",150,[[]]],[11,"into","","",150,[[]]],[11,"borrow","","",150,[[]]],[11,"borrow_mut","","",150,[[]]],[11,"try_from","","",150,[[],["result",4]]],[11,"try_into","","",150,[[],["result",4]]],[11,"type_id","","",150,[[],["typeid",3]]],[11,"vzip","","",150,[[]]],[11,"into_any","","",150,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",150,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",150,[[],["any",8]]],[11,"as_any_mut","","",150,[[],["any",8]]],[11,"from","","",151,[[]]],[11,"into","","",151,[[]]],[11,"borrow","","",151,[[]]],[11,"borrow_mut","","",151,[[]]],[11,"try_from","","",151,[[],["result",4]]],[11,"try_into","","",151,[[],["result",4]]],[11,"type_id","","",151,[[],["typeid",3]]],[11,"vzip","","",151,[[]]],[11,"into_any","","",151,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",151,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",151,[[],["any",8]]],[11,"as_any_mut","","",151,[[],["any",8]]],[11,"from","game::sandbox::gameplay::tutorial","",152,[[]]],[11,"into","","",152,[[]]],[11,"borrow","","",152,[[]]],[11,"borrow_mut","","",152,[[]]],[11,"try_from","","",152,[[],["result",4]]],[11,"try_into","","",152,[[],["result",4]]],[11,"type_id","","",152,[[],["typeid",3]]],[11,"vzip","","",152,[[]]],[11,"into_any","","",152,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",152,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",152,[[],["any",8]]],[11,"as_any_mut","","",152,[[],["any",8]]],[11,"from","","",153,[[]]],[11,"into","","",153,[[]]],[11,"to_owned","","",153,[[]]],[11,"clone_into","","",153,[[]]],[11,"borrow","","",153,[[]]],[11,"borrow_mut","","",153,[[]]],[11,"try_from","","",153,[[],["result",4]]],[11,"try_into","","",153,[[],["result",4]]],[11,"type_id","","",153,[[],["typeid",3]]],[11,"equivalent","","",153,[[]]],[11,"vzip","","",153,[[]]],[11,"into_any","","",153,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",153,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",153,[[],["any",8]]],[11,"as_any_mut","","",153,[[],["any",8]]],[11,"into_any_arc","","",153,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",154,[[]]],[11,"into","","",154,[[]]],[11,"borrow","","",154,[[]]],[11,"borrow_mut","","",154,[[]]],[11,"try_from","","",154,[[],["result",4]]],[11,"try_into","","",154,[[],["result",4]]],[11,"type_id","","",154,[[],["typeid",3]]],[11,"vzip","","",154,[[]]],[11,"into_any","","",154,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",154,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",154,[[],["any",8]]],[11,"as_any_mut","","",154,[[],["any",8]]],[11,"from","","",155,[[]]],[11,"into","","",155,[[]]],[11,"borrow","","",155,[[]]],[11,"borrow_mut","","",155,[[]]],[11,"try_from","","",155,[[],["result",4]]],[11,"try_into","","",155,[[],["result",4]]],[11,"type_id","","",155,[[],["typeid",3]]],[11,"vzip","","",155,[[]]],[11,"into_any","","",155,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",155,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",155,[[],["any",8]]],[11,"as_any_mut","","",155,[[],["any",8]]],[11,"from","","",156,[[]]],[11,"into","","",156,[[]]],[11,"to_owned","","",156,[[]]],[11,"clone_into","","",156,[[]]],[11,"borrow","","",156,[[]]],[11,"borrow_mut","","",156,[[]]],[11,"try_from","","",156,[[],["result",4]]],[11,"try_into","","",156,[[],["result",4]]],[11,"type_id","","",156,[[],["typeid",3]]],[11,"vzip","","",156,[[]]],[11,"into_any","","",156,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",156,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",156,[[],["any",8]]],[11,"as_any_mut","","",156,[[],["any",8]]],[11,"into_any_arc","","",156,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::misc_tools","",158,[[]]],[11,"into","","",158,[[]]],[11,"borrow","","",158,[[]]],[11,"borrow_mut","","",158,[[]]],[11,"try_from","","",158,[[],["result",4]]],[11,"try_into","","",158,[[],["result",4]]],[11,"type_id","","",158,[[],["typeid",3]]],[11,"vzip","","",158,[[]]],[11,"into_any","","",158,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",158,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",158,[[],["any",8]]],[11,"as_any_mut","","",158,[[],["any",8]]],[11,"into_any_arc","","",158,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",159,[[]]],[11,"into","","",159,[[]]],[11,"borrow","","",159,[[]]],[11,"borrow_mut","","",159,[[]]],[11,"try_from","","",159,[[],["result",4]]],[11,"try_into","","",159,[[],["result",4]]],[11,"type_id","","",159,[[],["typeid",3]]],[11,"vzip","","",159,[[]]],[11,"into_any","","",159,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",159,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",159,[[],["any",8]]],[11,"as_any_mut","","",159,[[],["any",8]]],[11,"from","game::sandbox::speed","",160,[[]]],[11,"into","","",160,[[]]],[11,"borrow","","",160,[[]]],[11,"borrow_mut","","",160,[[]]],[11,"try_from","","",160,[[],["result",4]]],[11,"try_into","","",160,[[],["result",4]]],[11,"type_id","","",160,[[],["typeid",3]]],[11,"vzip","","",160,[[]]],[11,"into_any","","",160,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",160,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",160,[[],["any",8]]],[11,"as_any_mut","","",160,[[],["any",8]]],[11,"from","","",161,[[]]],[11,"into","","",161,[[]]],[11,"borrow","","",161,[[]]],[11,"borrow_mut","","",161,[[]]],[11,"try_from","","",161,[[],["result",4]]],[11,"try_into","","",161,[[],["result",4]]],[11,"type_id","","",161,[[],["typeid",3]]],[11,"vzip","","",161,[[]]],[11,"into_any","","",161,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",161,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",161,[[],["any",8]]],[11,"as_any_mut","","",161,[[],["any",8]]],[11,"from","","",162,[[]]],[11,"into","","",162,[[]]],[11,"to_owned","","",162,[[]]],[11,"clone_into","","",162,[[]]],[11,"borrow","","",162,[[]]],[11,"borrow_mut","","",162,[[]]],[11,"try_from","","",162,[[],["result",4]]],[11,"try_into","","",162,[[],["result",4]]],[11,"type_id","","",162,[[],["typeid",3]]],[11,"vzip","","",162,[[]]],[11,"into_any","","",162,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",162,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",162,[[],["any",8]]],[11,"as_any_mut","","",162,[[],["any",8]]],[11,"into_any_arc","","",162,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","game::sandbox::time_warp","",163,[[]]],[11,"into","","",163,[[]]],[11,"borrow","","",163,[[]]],[11,"borrow_mut","","",163,[[]]],[11,"try_from","","",163,[[],["result",4]]],[11,"try_into","","",163,[[],["result",4]]],[11,"type_id","","",163,[[],["typeid",3]]],[11,"vzip","","",163,[[]]],[11,"into_any","","",163,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",163,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",163,[[],["any",8]]],[11,"as_any_mut","","",163,[[],["any",8]]],[11,"from","","",164,[[]]],[11,"into","","",164,[[]]],[11,"borrow","","",164,[[]]],[11,"borrow_mut","","",164,[[]]],[11,"try_from","","",164,[[],["result",4]]],[11,"try_into","","",164,[[],["result",4]]],[11,"type_id","","",164,[[],["typeid",3]]],[11,"vzip","","",164,[[]]],[11,"into_any","","",164,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",164,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",164,[[],["any",8]]],[11,"as_any_mut","","",164,[[],["any",8]]],[11,"from","","",165,[[]]],[11,"into","","",165,[[]]],[11,"borrow","","",165,[[]]],[11,"borrow_mut","","",165,[[]]],[11,"try_from","","",165,[[],["result",4]]],[11,"try_into","","",165,[[],["result",4]]],[11,"type_id","","",165,[[],["typeid",3]]],[11,"vzip","","",165,[[]]],[11,"into_any","","",165,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",165,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",165,[[],["any",8]]],[11,"as_any_mut","","",165,[[],["any",8]]],[11,"from","game::sandbox::uber_turns","",166,[[]]],[11,"into","","",166,[[]]],[11,"borrow","","",166,[[]]],[11,"borrow_mut","","",166,[[]]],[11,"try_from","","",166,[[],["result",4]]],[11,"try_into","","",166,[[],["result",4]]],[11,"type_id","","",166,[[],["typeid",3]]],[11,"vzip","","",166,[[]]],[11,"into_any","","",166,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",166,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",166,[[],["any",8]]],[11,"as_any_mut","","",166,[[],["any",8]]],[11,"into_any_arc","","",166,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",167,[[]]],[11,"into","","",167,[[]]],[11,"borrow","","",167,[[]]],[11,"borrow_mut","","",167,[[]]],[11,"try_from","","",167,[[],["result",4]]],[11,"try_into","","",167,[[],["result",4]]],[11,"type_id","","",167,[[],["typeid",3]]],[11,"vzip","","",167,[[]]],[11,"into_any","","",167,[[["box",3]],[["any",8],["box",3]]]],[11,"into_any_rc","","",167,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",167,[[],["any",8]]],[11,"as_any_mut","","",167,[[],["any",8]]],[11,"into_any_arc","","",167,[[["arc",3]],[["arc",3],["any",8]]]],[11,"show","game::app","",2,[[["id",4]]]],[11,"layers","","",2,[[],["showlayers",3]]],[11,"show","game::debug","",23,[[["id",4]]]],[11,"layers","","",23,[[],["showlayers",3]]],[11,"on_click","game::edit::lanes","",58,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"panel_changed","","",58,[[["panel",3],["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"on_mouseover","","",58,[[["eventctx",3],["app",3]]]],[11,"other_event","","",58,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",58,[[["app",3],["gfxctx",3]]]],[11,"on_click","game::edit::stop_signs","",63,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"on_mouseover","","",63,[[["eventctx",3],["app",3]]]],[11,"other_event","","",63,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",63,[[["app",3],["gfxctx",3]]]],[11,"on_click","game::edit::traffic_signals::edits","",66,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"other_event","","",66,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",66,[[],["drawbaselayer",4]]],[11,"on_click","game::edit::traffic_signals::offsets","",67,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"on_mouseover","","",67,[[["eventctx",3],["app",3]]]],[11,"other_event","","",67,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",67,[[["app",3],["gfxctx",3]]]],[11,"on_click","","",68,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"on_mouseover","","",68,[[["eventctx",3],["app",3]]]],[11,"other_event","","",68,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",68,[[["app",3],["gfxctx",3]]]],[11,"on_click","","",69,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"other_event","","",69,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",69,[[["app",3],["gfxctx",3]]]],[11,"on_click","game::sandbox::uber_turns","",166,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"on_mouseover","","",166,[[["eventctx",3],["app",3]]]],[11,"other_event","","",166,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",166,[[["app",3],["gfxctx",3]]]],[11,"on_click","","",167,[[["panel",3],["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"panel_changed","","",167,[[["panel",3],["eventctx",3],["app",3]],[["option",4],["transition",4]]]],[11,"other_event","","",167,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",167,[[],["drawbaselayer",4]]],[11,"draw","","",167,[[["app",3],["gfxctx",3]]]],[11,"actions","game::debug","",168,[[["app",3],["id",4]],["vec",3]]],[11,"execute","","",168,[[["string",3],["eventctx",3],["id",4],["app",3]],[["transition",4],["app",3]]]],[11,"is_paused","","",168,[[]]],[11,"gameplay_mode","","",168,[[],["gameplaymode",4]]],[11,"actions","game::sandbox","",109,[[["app",3],["id",4]],["vec",3]]],[11,"execute","","",109,[[["string",3],["eventctx",3],["id",4],["app",3]],[["transition",4],["app",3]]]],[11,"is_paused","","",109,[[]]],[11,"gameplay_mode","","",109,[[],["gameplaymode",4]]],[11,"name","game::layer::elevation","",81,[[],["option",4]]],[11,"event","","",81,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",81,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",81,[[["gfxctx",3]]]],[11,"name","game::layer::map","",82,[[],["option",4]]],[11,"event","","",82,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",82,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",82,[[["gfxctx",3]]]],[11,"name","","",83,[[],["option",4]]],[11,"event","","",83,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",83,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",83,[[["gfxctx",3]]]],[11,"name","","",84,[[],["option",4]]],[11,"event","","",84,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",84,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",84,[[["gfxctx",3]]]],[11,"name","game::layer::pandemic","",85,[[],["option",4]]],[11,"event","","",85,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",85,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",85,[[["gfxctx",3]]]],[11,"name","game::layer::parking","",88,[[],["option",4]]],[11,"event","","",88,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",88,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",88,[[["gfxctx",3]]]],[11,"name","","",89,[[],["option",4]]],[11,"event","","",89,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",89,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",89,[[["gfxctx",3]]]],[11,"name","game::layer::population","",91,[[],["option",4]]],[11,"event","","",91,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",91,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",91,[[["gfxctx",3]]]],[11,"name","game::layer::traffic","",93,[[],["option",4]]],[11,"event","","",93,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",93,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",93,[[["gfxctx",3]]]],[11,"name","","",94,[[],["option",4]]],[11,"event","","",94,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",94,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",94,[[["gfxctx",3]]]],[11,"name","","",95,[[],["option",4]]],[11,"event","","",95,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",95,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",95,[[["gfxctx",3]]]],[11,"name","","",96,[[],["option",4]]],[11,"event","","",96,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",96,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",96,[[["gfxctx",3]]]],[11,"name","","",98,[[],["option",4]]],[11,"event","","",98,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",98,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",98,[[["gfxctx",3]]]],[11,"name","game::layer::transit","",99,[[],["option",4]]],[11,"event","","",99,[[["panel",3],["eventctx",3],["app",3]],[["layeroutcome",4],["option",4]]]],[11,"draw","","",99,[[["app",3],["gfxctx",3]]]],[11,"draw_minimap","","",99,[[["gfxctx",3]]]],[11,"event","game::sandbox::gameplay::commute","",145,[[["eventctx",3],["sandboxcontrols",3],["app",3],["actions",3]],[["option",4],["transition",4]]]],[11,"draw","","",145,[[["app",3],["gfxctx",3]]]],[11,"recreate_panels","","",145,[[["app",3],["eventctx",3]]]],[11,"event","game::sandbox::gameplay::fix_traffic_signals","",146,[[["eventctx",3],["sandboxcontrols",3],["app",3],["actions",3]],[["option",4],["transition",4]]]],[11,"draw","","",146,[[["app",3],["gfxctx",3]]]],[11,"recreate_panels","","",146,[[["app",3],["eventctx",3]]]],[11,"on_destroy","","",146,[[["app",3]]]],[11,"event","game::sandbox::gameplay::freeform","",147,[[["eventctx",3],["sandboxcontrols",3],["app",3],["actions",3]],[["option",4],["transition",4]]]],[11,"draw","","",147,[[["app",3],["gfxctx",3]]]],[11,"recreate_panels","","",147,[[["app",3],["eventctx",3]]]],[11,"event","game::sandbox::gameplay::play_scenario","",149,[[["eventctx",3],["sandboxcontrols",3],["app",3],["actions",3]],[["option",4],["transition",4]]]],[11,"draw","","",149,[[["app",3],["gfxctx",3]]]],[11,"on_destroy","","",149,[[["app",3]]]],[11,"recreate_panels","","",149,[[["app",3],["eventctx",3]]]],[11,"event","game::sandbox::gameplay::tutorial","",152,[[["eventctx",3],["sandboxcontrols",3],["app",3],["actions",3]],[["option",4],["transition",4]]]],[11,"draw","","",152,[[["app",3],["gfxctx",3]]]],[11,"recreate_panels","","",152,[[["app",3],["eventctx",3]]]],[11,"can_move_canvas","","",152,[[]]],[11,"can_examine_objects","","",152,[[]]],[11,"has_common","","",152,[[]]],[11,"has_tool_panel","","",152,[[]]],[11,"has_time_panel","","",152,[[]]],[11,"has_speed","","",152,[[]]],[11,"has_agent_meter","","",152,[[]]],[11,"has_minimap","","",152,[[]]],[11,"clone","game::app","",3,[[],["flags",3]]],[11,"clone","game::debug::floodfill","",28,[[],["source",4]]],[11,"clone","game::devtools::story","",46,[[],["recordedstorymap",3]]],[11,"clone","game::edit::traffic_signals","",65,[[],["bundleedits",3]]],[11,"clone","game::info::trip","",77,[[],["opentrip",3]]],[11,"clone","game::info","",76,[[],["tab",4]]],[11,"clone","","",75,[[],["dataoptions",3]]],[11,"clone","game::layer::pandemic","",87,[[],["seir",4]]],[11,"clone","","",86,[[],["options",3]]],[11,"clone","game::layer::parking","",90,[[],["loc",4]]],[11,"clone","game::layer::population","",92,[[],["options",3]]],[11,"clone","game::sandbox::dashboards::commuter","",118,[[],["blockselection",4]]],[11,"clone","game::sandbox::dashboards","",112,[[],["dashtab",4]]],[11,"clone","game::sandbox::gameplay::tutorial","",153,[[],["tutorialpointer",3]]],[11,"clone","","",156,[[],["task",4]]],[11,"clone","game::sandbox::gameplay","",143,[[],["gameplaymode",4]]],[11,"clone","game::sandbox::speed","",162,[[],["speedsetting",4]]],[11,"cmp","game::layer::parking","",90,[[["loc",4]],["ordering",4]]],[11,"cmp","game::sandbox::gameplay::tutorial","",153,[[["tutorialpointer",3]],["ordering",4]]],[11,"cmp","game::sandbox::gameplay","",143,[[["gameplaymode",4]],["ordering",4]]],[11,"eq","game::devtools::collisions","",35,[[["filters",3]]]],[11,"ne","","",35,[[["filters",3]]]],[11,"eq","game::edit::traffic_signals","",65,[[["bundleedits",3]]]],[11,"ne","","",65,[[["bundleedits",3]]]],[11,"eq","game::info::trip","",77,[[["opentrip",3]]]],[11,"eq","game::info","",75,[[["dataoptions",3]]]],[11,"ne","","",75,[[["dataoptions",3]]]],[11,"eq","game::layer::pandemic","",87,[[["seir",4]]]],[11,"eq","","",86,[[["options",3]]]],[11,"ne","","",86,[[["options",3]]]],[11,"eq","game::layer::parking","",90,[[["loc",4]]]],[11,"ne","","",90,[[["loc",4]]]],[11,"eq","game::layer::population","",92,[[["options",3]]]],[11,"ne","","",92,[[["options",3]]]],[11,"eq","game::sandbox::dashboards::commuter","",118,[[["blockselection",4]]]],[11,"ne","","",118,[[["blockselection",4]]]],[11,"eq","","",116,[[["filter",3]]]],[11,"ne","","",116,[[["filter",3]]]],[11,"eq","game::sandbox::dashboards","",112,[[["dashtab",4]]]],[11,"eq","game::sandbox::gameplay::tutorial","",153,[[["tutorialpointer",3]]]],[11,"ne","","",153,[[["tutorialpointer",3]]]],[11,"eq","","",156,[[["task",4]]]],[11,"eq","game::sandbox::gameplay","",143,[[["gameplaymode",4]]]],[11,"ne","","",143,[[["gameplaymode",4]]]],[11,"eq","game::sandbox::speed","",162,[[["speedsetting",4]]]],[11,"partial_cmp","game::layer::parking","",90,[[["loc",4]],[["ordering",4],["option",4]]]],[11,"lt","","",90,[[["loc",4]]]],[11,"le","","",90,[[["loc",4]]]],[11,"gt","","",90,[[["loc",4]]]],[11,"ge","","",90,[[["loc",4]]]],[11,"partial_cmp","game::sandbox::gameplay::tutorial","",153,[[["tutorialpointer",3]],[["ordering",4],["option",4]]]],[11,"lt","","",153,[[["tutorialpointer",3]]]],[11,"le","","",153,[[["tutorialpointer",3]]]],[11,"gt","","",153,[[["tutorialpointer",3]]]],[11,"ge","","",153,[[["tutorialpointer",3]]]],[11,"partial_cmp","","",156,[[["task",4]],[["ordering",4],["option",4]]]],[11,"partial_cmp","game::sandbox::gameplay","",143,[[["gameplaymode",4]],[["ordering",4],["option",4]]]],[11,"lt","","",143,[[["gameplaymode",4]]]],[11,"le","","",143,[[["gameplaymode",4]]]],[11,"gt","","",143,[[["gameplaymode",4]]]],[11,"ge","","",143,[[["gameplaymode",4]]]],[11,"partial_cmp","game::sandbox::speed","",162,[[["speedsetting",4]],[["ordering",4],["option",4]]]],[11,"fmt","game::layer::pandemic","",87,[[["formatter",3]],["result",6]]],[11,"fmt","game::sandbox::dashboards","",112,[[["formatter",3]],["result",6]]],[11,"serialize","game::devtools::story","",46,[[],["result",4]]],[11,"deserialize","","",46,[[],["result",4]]],[11,"event","game::challenges::cutscene","",14,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",14,[[],["drawbaselayer",4]]],[11,"draw","","",14,[[["app",3],["gfxctx",3]]]],[11,"event","","",15,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",15,[[["app",3],["gfxctx",3]]]],[11,"event","game::challenges","",11,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",11,[[],["drawbaselayer",4]]],[11,"draw","","",11,[[["app",3],["gfxctx",3]]]],[11,"event","game::common::warp","",20,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",20,[[["app",3],["gfxctx",3]]]],[11,"event","","",21,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",21,[[["app",3],["gfxctx",3]]]],[11,"event","game::common","",18,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",18,[[["app",3],["gfxctx",3]]]],[11,"draw_baselayer","","",18,[[],["drawbaselayer",4]]],[11,"event","game::debug::blocked_by","",26,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",26,[[["app",3],["gfxctx",3]]]],[11,"event","game::debug::floodfill","",27,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",27,[[["app",3],["gfxctx",3]]]],[11,"event","game::debug::path_counter","",30,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",30,[[["app",3],["gfxctx",3]]]],[11,"event","game::debug::polygons","",31,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",31,[[["app",3],["gfxctx",3]]]],[11,"event","game::debug","",23,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",23,[[],["drawbaselayer",4]]],[11,"draw","","",23,[[["app",3],["gfxctx",3]]]],[11,"event","","",25,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",25,[[["app",3],["gfxctx",3]]]],[11,"event","game::devtools::collisions","",34,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",34,[[["app",3],["gfxctx",3]]]],[11,"event","game::devtools::destinations","",40,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",40,[[["app",3],["gfxctx",3]]]],[11,"event","game::devtools::kml","",41,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",41,[[["app",3],["gfxctx",3]]]],[11,"event","game::devtools::polygon","",43,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",43,[[["app",3],["gfxctx",3]]]],[11,"event","game::devtools::scenario","",44,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",44,[[["app",3],["gfxctx",3]]]],[11,"event","game::devtools::story","",45,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",45,[[],["drawbaselayer",4]]],[11,"draw","","",45,[[["app",3],["gfxctx",3]]]],[11,"event","game::devtools","",33,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",33,[[],["drawbaselayer",4]]],[11,"draw","","",33,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit::bulk","",55,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",55,[[["app",3],["gfxctx",3]]]],[11,"event","","",56,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",56,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit::cluster_traffic_signals","",57,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",57,[[],["drawbaselayer",4]]],[11,"draw","","",57,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit::routes","",59,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",59,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit::traffic_signals::picker","",70,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",70,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit::traffic_signals::preview","",71,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",71,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit::traffic_signals","",64,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",64,[[],["drawbaselayer",4]]],[11,"draw","","",64,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit::zones","",72,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",72,[[["app",3],["gfxctx",3]]]],[11,"event","game::edit","",51,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",51,[[["app",3],["gfxctx",3]]]],[11,"event","","",52,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",52,[[["app",3],["gfxctx",3]]]],[11,"event","","",53,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",53,[[["app",3],["gfxctx",3]]]],[11,"event","","",54,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",54,[[["app",3],["gfxctx",3]]]],[11,"event","game::layer","",79,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",79,[[],["drawbaselayer",4]]],[11,"draw","","",79,[[["app",3],["gfxctx",3]]]],[11,"event","game::pregame","",101,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",101,[[["app",3],["gfxctx",3]]]],[11,"event","","",102,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",102,[[],["drawbaselayer",4]]],[11,"draw","","",102,[[["app",3],["gfxctx",3]]]],[11,"event","","",103,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",103,[[],["drawbaselayer",4]]],[11,"draw","","",103,[[["app",3],["gfxctx",3]]]],[11,"event","","",104,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",104,[[],["drawbaselayer",4]]],[11,"draw","","",104,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::dashboards::commuter","",113,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",113,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::dashboards::generic_trip_table","",121,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",121,[[],["drawbaselayer",4]]],[11,"draw","","",121,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::dashboards::misc","",122,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",122,[[],["drawbaselayer",4]]],[11,"draw","","",122,[[["app",3],["gfxctx",3]]]],[11,"event","","",123,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",123,[[],["drawbaselayer",4]]],[11,"draw","","",123,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::dashboards::summaries","",127,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",127,[[],["drawbaselayer",4]]],[11,"draw","","",127,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::dashboards::traffic_signals","",133,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",133,[[],["drawbaselayer",4]]],[11,"draw","","",133,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::gameplay::freeform","",148,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",148,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::gameplay::play_scenario","",150,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",150,[[["app",3],["gfxctx",3]]]],[11,"event","","",151,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",151,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::gameplay","",142,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",142,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::misc_tools","",159,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",159,[[["app",3],["gfxctx",3]]]],[11,"event","game::sandbox::time_warp","",163,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",163,[[["app",3],["gfxctx",3]]]],[11,"event","","",164,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",164,[[["app",3],["gfxctx",3]]]],[11,"event","","",165,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw_baselayer","","",165,[[],["drawbaselayer",4]]],[11,"draw","","",165,[[["app",3],["gfxctx",3]]]],[11,"on_destroy","","",165,[[["eventctx",3],["app",3]]]],[11,"event","game::sandbox","",106,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",106,[[["app",3],["gfxctx",3]]]],[11,"on_destroy","","",106,[[["eventctx",3],["app",3]]]],[11,"event","","",169,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",169,[[["app",3],["gfxctx",3]]]],[11,"event","","",110,[[["eventctx",3],["app",3]],[["transition",4],["app",3]]]],[11,"draw","","",110,[[["app",3],["gfxctx",3]]]],[11,"map","game::app","",0,[[],["map",3]]],[11,"sim","","",0,[[],["sim",3]]],[11,"cs","","",0,[[],["colorscheme",3]]],[11,"mut_cs","","",0,[[],["colorscheme",3]]],[11,"draw_map","","",0,[[],["drawmap",3]]],[11,"mut_draw_map","","",0,[[],["drawmap",3]]],[11,"opts","","",0,[[],["options",3]]],[11,"mut_opts","","",0,[[],["options",3]]],[11,"map_switched","","",0,[[["timer",3],["eventctx",3],["map",3]]]],[11,"draw_with_opts","","",0,[[["drawoptions",3],["gfxctx",3]]]],[11,"make_warper","","",0,[[["eventctx",3],["option",4],["pt2d",3],["id",4],["option",4]],[["box",3],["state",8]]]],[11,"before_event","","",0,[[]]],[11,"draw_default","","",0,[[["gfxctx",3]]]],[11,"dump_before_abort","","",0,[[["canvas",3]]]],[11,"before_quit","","",0,[[["canvas",3]]]],[11,"run","","",7,[[["map",3],["sim",3]]]]],"p":[[3,"App"],[3,"ShowLayers"],[3,"ShowEverything"],[3,"Flags"],[3,"PerMap"],[3,"SessionState"],[3,"PerObjectActions"],[3,"FindDelayedIntersections"],[8,"ShowObject"],[3,"Challenge"],[3,"HighScore"],[3,"ChallengesPicker"],[3,"CutsceneBuilder"],[3,"Scene"],[3,"CutscenePlayer"],[3,"FYI"],[4,"Layout"],[3,"CommonState"],[3,"SimpleStateWrapper"],[3,"Minimap"],[3,"Warping"],[3,"DebugWarp"],[8,"SimpleState"],[3,"DebugMode"],[3,"SearchResults"],[3,"ScreenshotTest"],[3,"Viewer"],[3,"Floodfiller"],[4,"Source"],[3,"ObjectDebugger"],[3,"PathCounter"],[3,"PolygonDebugger"],[4,"Item"],[3,"DevToolsMode"],[3,"CollisionsViewer"],[3,"Filters"],[3,"MapspaceTooltips"],[4,"Dataviz"],[13,"Individual"],[13,"Aggregated"],[3,"PopularDestinations"],[3,"ViewKML"],[3,"Object"],[3,"PolygonEditor"],[3,"ScenarioManager"],[3,"StoryMapEditor"],[3,"RecordedStoryMap"],[3,"StoryMap"],[3,"Marker"],[3,"Lasso"],[4,"Mode"],[3,"EditMode"],[3,"SaveEdits"],[3,"LoadEdits"],[3,"ConfirmDiscard"],[3,"BulkSelect"],[3,"BulkEdit"],[3,"ClusterTrafficSignalEditor"],[3,"LaneEditor"],[3,"RouteEditor"],[3,"RoadSelector"],[4,"Mode"],[13,"Route"],[3,"StopSignEditor"],[3,"TrafficSignalEditor"],[3,"BundleEdits"],[3,"ChangeDuration"],[3,"ShowAbsolute"],[3,"ShowRelative"],[3,"TuneRelative"],[3,"SignalPicker"],[3,"PreviewTrafficSignal"],[3,"ZoneEditor"],[3,"InfoPanel"],[3,"Details"],[3,"DataOptions"],[4,"Tab"],[3,"OpenTrip"],[8,"ContextualActions"],[3,"PickLayer"],[4,"LayerOutcome"],[3,"Elevation"],[3,"BikeNetwork"],[3,"Static"],[3,"CongestionCaps"],[3,"Pandemic"],[3,"Options"],[4,"SEIR"],[3,"Occupancy"],[3,"Efficiency"],[4,"Loc"],[3,"PopulationMap"],[3,"Options"],[3,"Backpressure"],[3,"Throughput"],[3,"CompareThroughput"],[3,"TrafficJams"],[3,"Jam"],[3,"Delay"],[3,"TransitNetwork"],[8,"Layer"],[3,"TitleScreen"],[3,"MainMenu"],[3,"About"],[3,"Proposals"],[3,"Screensaver"],[3,"SandboxMode"],[3,"SandboxControls"],[3,"AgentMeter"],[3,"Actions"],[3,"SandboxLoader"],[4,"LoadStage"],[4,"DashTab"],[3,"CommuterPatterns"],[3,"PanelState"],[3,"Block"],[3,"Filter"],[3,"Loop"],[4,"BlockSelection"],[13,"Locked"],[4,"BorderType"],[3,"GenericTripTable"],[3,"ActiveTraffic"],[3,"TransitRoutes"],[3,"Entry"],[3,"Filters"],[3,"ParkingOverhead"],[3,"TripSummaries"],[3,"Filter"],[3,"Table"],[3,"Column"],[3,"Filter"],[4,"Col"],[3,"TrafficSignalDemand"],[3,"Demand"],[3,"FinishedTrip"],[3,"CancelledTrip"],[3,"UnfinishedTrip"],[3,"Filters"],[3,"FinishedTripTable"],[3,"CancelledTripTable"],[3,"UnfinishedTripTable"],[3,"FinalScore"],[4,"GameplayMode"],[4,"LoadScenario"],[3,"OptimizeCommute"],[3,"FixTrafficSignals"],[3,"Freeform"],[3,"AgentSpawner"],[3,"PlayScenario"],[3,"EditScenarioModifiers"],[3,"ChangeMode"],[3,"Tutorial"],[3,"TutorialPointer"],[3,"Stage"],[3,"TutorialState"],[4,"Task"],[8,"GameplayState"],[3,"RoutePreview"],[3,"TrafficRecorder"],[3,"SpeedControls"],[3,"TimePanel"],[4,"SpeedSetting"],[3,"JumpToTime"],[3,"JumpToDelay"],[3,"TimeWarpScreen"],[3,"UberTurnPicker"],[3,"UberTurnViewer"],[3,"Actions"],[3,"BackToMainMenu"]]},\
"geojson_to_osmosis":{"doc":"","i":[[5,"main","geojson_to_osmosis","Reads GeoJSON input from STDIN, extracts a polygon from…",null,[[],[["result",4],["box",3]]]],[5,"extract_boundaries","","",null,[[["geojson",4]],[["result",4],["vec",3],["box",3]]]]],"p":[]},\
-"geom":{"doc":"","i":[[3,"Angle","geom","An angle, stored in radians.",null,null],[12,"0","","",0,null],[3,"Bounds","","Represents a rectangular boundary of `Pt2D` points.",null,null],[12,"min_x","","",1,null],[12,"min_y","","",1,null],[12,"max_x","","",1,null],[12,"max_y","","",1,null],[3,"GPSBounds","","Represents a rectangular boundary of `LonLat` points.…",null,null],[12,"min_lon","","",2,null],[12,"min_lat","","",2,null],[12,"max_lon","","",2,null],[12,"max_lat","","",2,null],[3,"Circle","","A circle, defined by a center and radius.",null,null],[12,"center","","",3,null],[12,"radius","","",3,null],[3,"Distance","","A distance, in meters. Can be negative.",null,null],[12,"0","","",4,null],[3,"Duration","","A duration, in seconds. Can be negative.",null,null],[12,"0","","",5,null],[3,"FindClosest","","A quad-tree to quickly find the closest points to some…",null,null],[12,"geometries","","",6,null],[12,"quadtree","","",6,null],[3,"LonLat","","Represents a (longitude, latitude) point.",null,null],[12,"longitude","","",7,null],[12,"latitude","","",7,null],[3,"InfiniteLine","","",null,null],[12,"0","","",8,null],[12,"1","","",8,null],[3,"Line","","A line segment.",null,null],[12,"0","","",9,null],[12,"1","","",9,null],[3,"Percent","","Most of the time, [0, 1]. But some callers may go outside…",null,null],[12,"0","","",10,null],[3,"Polygon","","",null,null],[12,"points","","",11,null],[12,"indices","","Groups of three indices make up the triangles",11,null],[12,"rings","","If the polygon has holes, explicitly store all the rings…",11,null],[3,"Triangle","","",null,null],[12,"pt1","","",12,null],[12,"pt2","","",12,null],[12,"pt3","","",12,null],[3,"PolyLine","","",null,null],[12,"pts","","",13,null],[12,"length","","",13,null],[3,"HashablePt2D","","This represents world space, NOT LonLat.",null,null],[12,"x_nan","","",14,null],[12,"y_nan","","",14,null],[3,"Pt2D","","This represents world-space in meters.",null,null],[12,"inner_x","","",15,null],[12,"inner_y","","",15,null],[3,"Ring","","Maybe a misnomer, but like a PolyLine, but closed.",null,null],[12,"pts","","",16,null],[3,"Speed","","In meters per second. Can be negative.",null,null],[12,"0","","",17,null],[3,"Histogram","","",null,null],[12,"count","","",18,null],[12,"histogram","","",18,null],[12,"min","","",18,null],[12,"max","","",18,null],[3,"Time","","In seconds since midnight. Can\'t be negative.",null,null],[12,"0","","",19,null],[3,"UnitFmt","","Specifies how to stringify different geom objects.",null,null],[12,"round_durations","","Round `Duration`s to a whole number of seconds.",20,null],[12,"metric","","Display in metric; US imperial otherwise.",20,null],[4,"ArrowCap","","",null,null],[13,"Triangle","","",21,null],[4,"Statistic","","",null,null],[13,"Min","","",22,null],[13,"Mean","","",22,null],[13,"P50","","",22,null],[13,"P90","","",22,null],[13,"P99","","",22,null],[13,"Max","","",22,null],[5,"trim_f64","","Reduce the precision of an f64. This helps ensure…",null,[[]]],[0,"angle","","",null,null],[3,"Angle","geom::angle","An angle, stored in radians.",null,null],[12,"0","","",0,null],[18,"ZERO","geom","",0,null],[11,"new_rads","","",0,[[],["angle",3]]],[11,"degrees","","Create an angle in degrees.",0,[[],["angle",3]]],[11,"opposite","","Invert the direction of this angle.",0,[[],["angle",3]]],[11,"invert_y","","",0,[[],["angle",3]]],[11,"rotate_degs","","Rotates this angle by some degrees.",0,[[],["angle",3]]],[11,"normalized_radians","","Returns [0, 2pi)",0,[[]]],[11,"normalized_degrees","","Returns [0, 360)",0,[[]]],[11,"shortest_rotation_towards","","Logically this returns [-180, 180], but keep in mind when…",0,[[["angle",3]],["angle",3]]],[11,"approx_eq","","True if this angle is within some degrees of another,…",0,[[["angle",3]]]],[11,"reorient","","I don\'t know how to describe what this does. Use for…",0,[[],["angle",3]]],[0,"bounds","","",null,null],[3,"Bounds","geom::bounds","Represents a rectangular boundary of `Pt2D` points.",null,null],[12,"min_x","","",1,null],[12,"min_y","","",1,null],[12,"max_x","","",1,null],[12,"max_y","","",1,null],[3,"GPSBounds","","Represents a rectangular boundary of `LonLat` points.…",null,null],[12,"min_lon","","",2,null],[12,"min_lat","","",2,null],[12,"max_lon","","",2,null],[12,"max_lat","","",2,null],[11,"new","geom","A boundary including no points.",1,[[],["bounds",3]]],[11,"from","","Create a boundary covering some points.",1,[[["vec",3]],["bounds",3]]],[11,"update","","Update the boundary to include this point.",1,[[["pt2d",3]]]],[11,"union","","Unions two boundaries.",1,[[["bounds",3]]]],[11,"contains","","True if the point is within the boundary.",1,[[["pt2d",3]]]],[11,"as_bbox","","Converts the boundary to the format used by `aabb_quadtree`.",1,[[],["rect",3]]],[11,"get_rectangle","","Creates a rectangle covering this boundary.",1,[[],["polygon",3]]],[11,"width","","The width of this boundary.",1,[[]]],[11,"height","","The height of this boundary.",1,[[]]],[11,"center","","The center point of this boundary.",1,[[],["pt2d",3]]],[11,"new","","A boundary including no points.",2,[[],["gpsbounds",3]]],[11,"from","","Create a boundary covering some points.",2,[[["vec",3],["lonlat",3]],["gpsbounds",3]]],[11,"update","","Update the boundary to include this point.",2,[[["lonlat",3]]]],[11,"contains","","True if the point is within the boundary.",2,[[["lonlat",3]]]],[11,"get_max_world_pt","","The bottom-right corner of the boundary, in map-space.",2,[[],["pt2d",3]]],[11,"to_bounds","","Converts the boundary to map-space.",2,[[],["bounds",3]]],[11,"try_convert","","Convert all points to map-space, failing if any points are…",2,[[["vec",3]],[["option",4],["vec",3]]]],[11,"convert","","Convert all points to map-space. The points may be outside…",2,[[["vec",3]],[["vec",3],["pt2d",3]]]],[11,"convert_back","","Convert map-space points back to `LonLat`s. This is only…",2,[[["vec",3]],[["vec",3],["lonlat",3]]]],[0,"circle","","",null,null],[3,"Circle","geom::circle","A circle, defined by a center and radius.",null,null],[12,"center","","",3,null],[12,"radius","","",3,null],[17,"TRIANGLES_PER_CIRCLE","","",null,null],[11,"new","geom","Creates a circle.",3,[[["pt2d",3],["distance",3]],["circle",3]]],[11,"contains_pt","","True if the point is inside the circle.",3,[[["pt2d",3]]]],[11,"get_bounds","","Get the boundary containing this circle.",3,[[],["bounds",3]]],[11,"to_polygon","","Renders the circle as a polygon.",3,[[],["polygon",3]]],[11,"to_partial_polygon","","Renders some percent, between [0, 1], of the circle as a…",3,[[],["polygon",3]]],[11,"to_ring","","Returns the ring around the circle.",3,[[],["ring",3]]],[11,"to_outline","","Creates an outline around the circle, strictly contained…",3,[[["distance",3]],[["polygon",3],["string",3],["result",4]]]],[0,"distance","","",null,null],[3,"Distance","geom::distance","A distance, in meters. Can be negative.",null,null],[12,"0","","",4,null],[18,"ZERO","geom","",4,null],[11,"meters","","Creates a distance in meters.",4,[[],["distance",3]]],[11,"const_meters","","",4,[[],["distance",3]]],[11,"inches","","Creates a distance in inches.",4,[[],["distance",3]]],[11,"miles","","Creates a distance in miles.",4,[[],["distance",3]]],[11,"centimeters","","Creates a distance in centimeters.",4,[[],["distance",3]]],[11,"abs","","Returns the absolute value of this distance.",4,[[],["distance",3]]],[11,"sqrt","","Returns the square root of this distance.",4,[[],["distance",3]]],[11,"inner_meters","","Returns the distance in meters. Prefer to work with…",4,[[]]],[11,"to_string","","Describes the distance according to formatting rules.",4,[[["unitfmt",3]],["string",3]]],[11,"max","","Returns the largest of the two inputs.",4,[[["distance",3]],["distance",3]]],[11,"min","","Returns the smallest of the two inputs.",4,[[["distance",3]],["distance",3]]],[0,"duration","","",null,null],[3,"Duration","geom::duration","A duration, in seconds. Can be negative.",null,null],[12,"0","","",5,null],[18,"ZERO","geom","",5,null],[18,"EPSILON","","",5,null],[11,"seconds","","Creates a duration in seconds.",5,[[],["duration",3]]],[11,"minutes","","Creates a duration in minutes.",5,[[],["duration",3]]],[11,"hours","","Creates a duration in hours.",5,[[],["duration",3]]],[11,"f64_minutes","","Creates a duration in minutes.",5,[[],["duration",3]]],[11,"const_seconds","","",5,[[],["duration",3]]],[11,"to_u64","","",5,[[]]],[11,"from_u64","","",5,[[],["duration",3]]],[11,"inner_seconds","","Returns the duration in seconds. Prefer working in…",5,[[]]],[11,"get_parts","","Splits the duration into (hours, minutes, seconds,…",5,[[]]],[11,"parse","","Parses a duration such as \\\"3:00\\\" to `Duration::minutes(3)`.",5,[[],[["result",4],["duration",3],["box",3]]]],[11,"epsilon_eq","","If two durations are within this amount, they\'ll print as…",5,[[["duration",3]]]],[11,"realtime_elapsed","","Returns the duration elapsed from this moment in real time.",5,[[["instant",6]],["duration",3]]],[11,"round_up","","Rounds a duration up to the nearest whole number multiple.",5,[[["duration",3]],["duration",3]]],[11,"num_minutes_rounded_up","","Returns the duration as a number of minutes, rounded up.",5,[[]]],[11,"make_intervals_for_max","","Returns (rounded max, the boundaries in number of minutes)",5,[[]]],[11,"to_string","","Describes the duration according to formatting rules.",5,[[["unitfmt",3]],["string",3]]],[0,"find_closest","","",null,null],[3,"FindClosest","geom::find_closest","A quad-tree to quickly find the closest points to some…",null,null],[12,"geometries","","",6,null],[12,"quadtree","","",6,null],[5,"pts_to_line_string","","",null,[[["vec",3]],["linestring",3]]],[11,"new","geom","Creates the quad-tree, limited to points contained in the…",6,[[["bounds",3]],["findclosest",3]]],[11,"add","","Add an object to the quadtree, remembering some key…",6,[[["vec",3]]]],[11,"all_close_pts","","For every object within some distance of a query point,…",6,[[["pt2d",3],["distance",3]],["vec",3]]],[11,"closest_pt","","Finds the closest point on the existing geometry to the…",6,[[["pt2d",3],["distance",3]],["option",4]]],[0,"gps","","",null,null],[3,"LonLat","geom::gps","Represents a (longitude, latitude) point.",null,null],[12,"longitude","","",7,null],[12,"latitude","","",7,null],[11,"new","geom","Note the order of arguments!",7,[[],["lonlat",3]]],[11,"x","","Returns the longitude of this point.",7,[[]]],[11,"y","","Returns the latitude of this point.",7,[[]]],[11,"to_pt","","Transform this to a world-space point. Can go out of bounds.",7,[[["gpsbounds",3]],["pt2d",3]]],[11,"gps_dist","","Returns the Haversine distance to another point.",7,[[["lonlat",3]],["distance",3]]],[11,"fast_dist","","Pretty meaningless units, for comparing distances very…",7,[[["lonlat",3]],["notnan",3]]],[11,"read_osmosis_polygon","","Parses a file in the…",7,[[],[["vec",3],["box",3],["result",4]]]],[11,"write_osmosis_polygon","","Writes a set of points to a file in the…",7,[[["vec",3]],[["box",3],["result",4]]]],[0,"line","","",null,null],[3,"Line","geom::line","A line segment.",null,null],[12,"0","","",9,null],[12,"1","","",9,null],[3,"InfiniteLine","","",null,null],[12,"0","","",8,null],[12,"1","","",8,null],[5,"is_counter_clockwise","","",null,[[["pt2d",3]]]],[11,"new","geom","Creates a line segment between two points. None if the…",9,[[["pt2d",3]],[["option",4],["line",3]]]],[11,"must_new","","Equivalent to `Line::new(pt1, pt2).unwrap()`. Use this to…",9,[[["pt2d",3]],["line",3]]],[11,"infinite","","Returns an infinite line passing through this line\'s two…",9,[[],["infiniteline",3]]],[11,"pt1","","Returns the first point in this line segment.",9,[[],["pt2d",3]]],[11,"pt2","","Returns the second point in this line segment.",9,[[],["pt2d",3]]],[11,"points","","Returns the two points in this line segment.",9,[[],[["vec",3],["pt2d",3]]]],[11,"to_polyline","","Returns a polyline containing these two points.",9,[[],["polyline",3]]],[11,"make_polygons","","Returns a thick line segment.",9,[[["distance",3]],["polygon",3]]],[11,"length","","Length of the line segment",9,[[],["distance",3]]],[11,"intersection","","If two line segments intersect -- including endpoints --…",9,[[["line",3]],[["pt2d",3],["option",4]]]],[11,"crosses","","Determine if two line segments intersect, but more so than…",9,[[["line",3]]]],[11,"intersection_infinite","","If the line segment intersects with an infinite line --…",9,[[["infiniteline",3]],[["pt2d",3],["option",4]]]],[11,"shift_right","","Perpendicularly shifts the line over to the right. Width…",9,[[["distance",3]],["line",3]]],[11,"shift_left","","Perpendicularly shifts the line over to the left. Width…",9,[[["distance",3]],["line",3]]],[11,"shift_either_direction","","Perpendicularly shifts the line to the right if positive…",9,[[["distance",3]],["line",3]]],[11,"reverse","","Returns a reversed line segment",9,[[],["line",3]]],[11,"angle","","The angle of the line segment, from the first to the…",9,[[],["angle",3]]],[11,"dist_along","","Returns a point along the line segment, unless the…",9,[[["distance",3]],[["pt2d",3],["option",4]]]],[11,"must_dist_along","","Equivalent to `self.dist_along(dist).unwrap()`. Use this…",9,[[["distance",3]],["pt2d",3]]],[11,"unbounded_dist_along","","",9,[[["distance",3]],["pt2d",3]]],[11,"unbounded_percent_along","","",9,[[],["pt2d",3]]],[11,"percent_along","","",9,[[],[["pt2d",3],["option",4]]]],[11,"slice","","",9,[[["distance",3]],[["option",4],["line",3]]]],[11,"middle","","",9,[[],[["pt2d",3],["option",4]]]],[11,"contains_pt","","",9,[[["pt2d",3]]]],[11,"dist_along_of_point","","",9,[[["pt2d",3]],[["distance",3],["option",4]]]],[11,"percent_along_of_point","","",9,[[["pt2d",3]],["option",4]]],[11,"intersection","","Fails for parallel lines.",8,[[["infiniteline",3]],[["pt2d",3],["option",4]]]],[0,"percent","","",null,null],[3,"Percent","geom::percent","Most of the time, [0, 1]. But some callers may go outside…",null,null],[12,"0","","",10,null],[11,"inner","geom","",10,[[]]],[11,"int","","",10,[[],["percent",3]]],[11,"of","","",10,[[],["percent",3]]],[0,"polygon","","",null,null],[3,"Polygon","geom::polygon","",null,null],[12,"points","","",11,null],[12,"indices","","Groups of three indices make up the triangles",11,null],[12,"rings","","If the polygon has holes, explicitly store all the rings…",11,null],[3,"Triangle","","",null,null],[12,"pt1","","",12,null],[12,"pt2","","",12,null],[12,"pt3","","",12,null],[5,"to_geo","","",null,[[["vec",3]],["polygon",3]]],[5,"from_geo","","",null,[[["polygon",3]],["polygon",3]]],[5,"from_multi","","",null,[[["multipolygon",3]],[["polygon",3],["vec",3]]]],[5,"downsize","","",null,[[["vec",3]],["vec",3]]],[11,"buggy_new","geom","",11,[[["vec",3],["pt2d",3]],["polygon",3]]],[11,"with_holes","","",11,[[["ring",3],["vec",3]],["polygon",3]]],[11,"from_geojson","","",11,[[["vec",3]],["polygon",3]]],[11,"precomputed","","",11,[[["vec",3],["vec",3],["pt2d",3]],["polygon",3]]],[11,"from_triangle","","",11,[[["triangle",3]],["polygon",3]]],[11,"triangles","","",11,[[],[["vec",3],["triangle",3]]]],[11,"raw_for_rendering","","",11,[[]]],[11,"contains_pt","","",11,[[["pt2d",3]]]],[11,"get_bounds","","",11,[[],["bounds",3]]],[11,"transform","","",11,[[["fn",8]],["polygon",3]]],[11,"translate","","",11,[[],["polygon",3]]],[11,"scale","","",11,[[],["polygon",3]]],[11,"rotate","","",11,[[["angle",3]],["polygon",3]]],[11,"rotate_around","","",11,[[["angle",3],["pt2d",3]],["polygon",3]]],[11,"points","","The order of these points depends on the constructor! The…",11,[[],["vec",3]]],[11,"into_points","","",11,[[],[["vec",3],["pt2d",3]]]],[11,"into_ring","","",11,[[],["ring",3]]],[11,"center","","",11,[[],["pt2d",3]]],[11,"rectangle","","Top-left at the origin. Doesn\'t take Distance, because…",11,[[],["polygon",3]]],[11,"rectangle_centered","","",11,[[["pt2d",3],["distance",3]],["polygon",3]]],[11,"rectangle_two_corners","","",11,[[["pt2d",3]],[["option",4],["polygon",3]]]],[11,"maybe_rounded_rectangle","","Top-left at the origin. Doesn\'t take Distance, because…",11,[[["option",4]],[["option",4],["polygon",3]]]],[11,"rounded_rectangle","","Top-left at the origin. Doesn\'t take Distance, because…",11,[[["option",4]],["polygon",3]]],[11,"union","","",11,[[["polygon",3]],["polygon",3]]],[11,"union_all","","",11,[[["vec",3],["polygon",3]],["polygon",3]]],[11,"intersection","","",11,[[["polygon",3]],[["polygon",3],["vec",3]]]],[11,"convex_hull","","",11,[[["vec",3],["polygon",3]],["polygon",3]]],[11,"polylabel","","",11,[[],["pt2d",3]]],[11,"to_outline","","Creates the outline around the polygon, with the thickness…",11,[[["distance",3]],[["polygon",3],["string",3],["result",4]]]],[11,"strip_rings","","Remove the internal rings used for to_outline. This is…",11,[[],["polygon",3]]],[11,"area","","Usually m^2, unless the polygon is in screen-space",11,[[]]],[11,"clip_polyline","","Doesn\'t handle multiple crossings in and out.",11,[[["polyline",3]],[["option",4],["vec",3]]]],[11,"clip_ring","","",11,[[["ring",3]],[["option",4],["vec",3]]]],[11,"new","","",12,[[["pt2d",3]],["triangle",3]]],[11,"contains_pt","","",12,[[["pt2d",3]]]],[0,"polyline","","",null,null],[3,"PolyLine","geom::polyline","",null,null],[12,"pts","","",13,null],[12,"length","","",13,null],[4,"ArrowCap","","",null,null],[13,"Triangle","","",21,null],[5,"fix_angles","","",null,[[["polyline",3],["polyline",3]],[["string",3],["result",4],["polyline",3]]]],[5,"to_set","","",null,[[]]],[5,"pts_to_line_string","","",null,[[["vec",3]],["linestring",3]]],[17,"MITER_THRESHOLD","","",null,null],[11,"new","geom","",13,[[["vec",3],["pt2d",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_new","","",13,[[["vec",3],["pt2d",3]],["polyline",3]]],[11,"unchecked_new","","Doesn\'t check for duplicates. Use at your own risk.",13,[[["vec",3],["pt2d",3]],["polyline",3]]],[11,"deduping_new","","First dedupes adjacent points",13,[[["vec",3],["pt2d",3]],[["string",3],["result",4],["polyline",3]]]],[11,"to_thick_ring","","Like make_polygons, but make sure the points actually form…",13,[[["distance",3]],["ring",3]]],[11,"to_thick_boundary","","",13,[[["distance",3]],[["option",4],["polygon",3]]]],[11,"reversed","","",13,[[],["polyline",3]]],[11,"extend","","",13,[[["polyline",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_extend","","",13,[[["polyline",3]],["polyline",3]]],[11,"must_push","","",13,[[["pt2d",3]],["polyline",3]]],[11,"append","","One or both args might be empty.",13,[[["vec",3],["pt2d",3]],[["result",4],["vec",3],["string",3]]]],[11,"points","","",13,[[],["vec",3]]],[11,"into_points","","",13,[[],[["vec",3],["pt2d",3]]]],[11,"lines","","",13,[[]]],[11,"length","","",13,[[],["distance",3]]],[11,"slice","","Returns the excess distance left over from the end",13,[[["distance",3]],[["result",4],["string",3]]]],[11,"exact_slice","","No excess leftover distance allowed.",13,[[["distance",3]],["polyline",3]]],[11,"maybe_exact_slice","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"first_half","","",13,[[],["polyline",3]]],[11,"second_half","","",13,[[],["polyline",3]]],[11,"dist_along","","",13,[[["distance",3]],[["string",3],["result",4]]]],[11,"must_dist_along","","",13,[[["distance",3]]]],[11,"middle","","",13,[[],["pt2d",3]]],[11,"first_pt","","",13,[[],["pt2d",3]]],[11,"last_pt","","",13,[[],["pt2d",3]]],[11,"first_line","","",13,[[],["line",3]]],[11,"last_line","","",13,[[],["line",3]]],[11,"shift_right","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_shift_right","","",13,[[["distance",3]],["polyline",3]]],[11,"shift_left","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_shift_left","","",13,[[["distance",3]],["polyline",3]]],[11,"shift_with_corrections","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"shift_with_sharp_angles","","",13,[[["distance",3]],[["vec",3],["pt2d",3]]]],[11,"make_polygons","","",13,[[["distance",3]],["polygon",3]]],[11,"make_polygons_with_miter_threshold","","",13,[[["distance",3]],["polygon",3]]],[11,"exact_dashed_polygons","","",13,[[["distance",3]],[["polygon",3],["vec",3]]]],[11,"dashed_lines","","Don\'t draw the dashes too close to the ends.",13,[[["distance",3]],[["polygon",3],["vec",3]]]],[11,"make_arrow","","",13,[[["distance",3],["arrowcap",4]],["polygon",3]]],[11,"make_double_arrow","","",13,[[["distance",3],["arrowcap",4]],["polygon",3]]],[11,"dashed_arrow","","",13,[[["distance",3],["arrowcap",4]],[["polygon",3],["vec",3]]]],[11,"intersection","","Also return the angle of the line where the hit was found",13,[[["polyline",3]],["option",4]]],[11,"intersection_infinite","","",13,[[["infiniteline",3]],[["pt2d",3],["option",4]]]],[11,"get_slice_ending_at","","Panics if the pt is not on the polyline. Returns None if…",13,[[["pt2d",3]],[["option",4],["polyline",3]]]],[11,"get_slice_starting_at","","Returns None if the point is the last point.",13,[[["pt2d",3]],[["option",4],["polyline",3]]]],[11,"dist_along_of_point","","",13,[[["pt2d",3]],["option",4]]],[11,"trim_to_endpts","","",13,[[["pt2d",3]],["polyline",3]]],[11,"get_bounds","","",13,[[],["bounds",3]]],[11,"extend_to_length","","If the current line is at least this long, return it.…",13,[[["distance",3]],["polyline",3]]],[11,"to_geojson","","Produces a GeoJSON linestring, optionally mapping the…",13,[[["option",4],["gpsbounds",3]],["geometry",3]]],[11,"project_pt","","Returns the point on the polyline closest to the query.",13,[[["pt2d",3]],["pt2d",3]]],[0,"pt","","",null,null],[3,"Pt2D","geom::pt","This represents world-space in meters.",null,null],[12,"inner_x","","",15,null],[12,"inner_y","","",15,null],[3,"HashablePt2D","","This represents world space, NOT LonLat.",null,null],[12,"x_nan","","",14,null],[12,"y_nan","","",14,null],[11,"new","geom","",15,[[],["pt2d",3]]],[11,"approx_eq","","",15,[[["pt2d",3],["distance",3]]]],[11,"to_gps","","Can go out of bounds.",15,[[["gpsbounds",3]],["lonlat",3]]],[11,"x","","",15,[[]]],[11,"y","","",15,[[]]],[11,"project_away","","",15,[[["angle",3],["distance",3]],["pt2d",3]]],[11,"raw_dist_to","","",15,[[["pt2d",3]]]],[11,"dist_to","","",15,[[["pt2d",3]],["distance",3]]],[11,"fast_dist","","Pretty meaningless units, for comparing distances very…",15,[[["pt2d",3]],["notnan",3]]],[11,"angle_to","","",15,[[["pt2d",3]],["angle",3]]],[11,"offset","","",15,[[],["pt2d",3]]],[11,"center","","",15,[[["vec",3]],["pt2d",3]]],[11,"approx_dedupe","","",15,[[["vec",3],["pt2d",3],["distance",3]],[["vec",3],["pt2d",3]]]],[11,"find_pts_between","","",15,[[["distance",3],["vec",3],["pt2d",3]],[["option",4],["vec",3]]]],[11,"to_hashable","","",15,[[],["hashablept2d",3]]],[11,"to_pt2d","","",14,[[],["pt2d",3]]],[0,"ring","","",null,null],[3,"Ring","geom::ring","Maybe a misnomer, but like a PolyLine, but closed.",null,null],[12,"pts","","",16,null],[11,"new","geom","",16,[[["vec",3],["pt2d",3]],[["result",4],["ring",3],["string",3]]]],[11,"must_new","","",16,[[["vec",3],["pt2d",3]],["ring",3]]],[11,"to_outline","","Draws the ring with some thickness, with half of it…",16,[[["distance",3]],["polygon",3]]],[11,"to_polygon","","",16,[[],["polygon",3]]],[11,"points","","",16,[[],["vec",3]]],[11,"into_points","","",16,[[],[["vec",3],["pt2d",3]]]],[11,"all_intersections","","Be careful with the order of results. Hits on an earlier…",16,[[["polyline",3]],[["vec",3],["pt2d",3]]]],[11,"get_both_slices_btwn","","",16,[[["pt2d",3]],["option",4]]],[11,"get_shorter_slice_btwn","","",16,[[["pt2d",3]],[["option",4],["polyline",3]]]],[11,"split_points","","Extract all PolyLines and Rings. Doesn\'t handle crazy…",16,[[["vec",3]],[["result",4],["string",3]]]],[11,"contains_pt","","",16,[[["pt2d",3]]]],[11,"to_geojson","","Produces a GeoJSON polygon, optionally mapping the…",16,[[["option",4],["gpsbounds",3]],["geometry",3]]],[11,"translate","","Translates the ring by a fixed offset.",16,[[],["ring",3]]],[0,"speed","","",null,null],[3,"Speed","geom::speed","In meters per second. Can be negative.",null,null],[12,"0","","",17,null],[18,"ZERO","geom","",17,null],[11,"meters_per_second","","",17,[[],["speed",3]]],[11,"const_meters_per_second","","",17,[[],["speed",3]]],[11,"miles_per_hour","","",17,[[],["speed",3]]],[11,"km_per_hour","","",17,[[],["speed",3]]],[11,"from_dist_time","","",17,[[["duration",3],["distance",3]],["speed",3]]],[11,"inner_meters_per_second","","",17,[[]]],[11,"max","","",17,[[["speed",3]],["speed",3]]],[11,"min","","",17,[[["speed",3]],["speed",3]]],[11,"to_string","","Describes the speed according to formatting rules.",17,[[["unitfmt",3]],["string",3]]],[0,"stats","","",null,null],[3,"Histogram","geom::stats","",null,null],[12,"count","","",18,null],[12,"histogram","","",18,null],[12,"min","","",18,null],[12,"max","","",18,null],[4,"Statistic","","",null,null],[13,"Min","","",22,null],[13,"Mean","","",22,null],[13,"P50","","",22,null],[13,"P90","","",22,null],[13,"P99","","",22,null],[13,"Max","","",22,null],[8,"HgramValue","","",null,null],[10,"hgram_zero","","",23,[[]]],[10,"to_u64","","",23,[[]]],[10,"from_u64","","",23,[[]]],[11,"all","geom","",22,[[],[["vec",3],["statistic",4]]]],[11,"new","","",18,[[],["histogram",3]]],[11,"add","","",18,[[]]],[11,"remove","","",18,[[]]],[11,"describe","","",18,[[],["string",3]]],[11,"percentile","","None if empty",18,[[],["option",4]]],[11,"select","","",18,[[["statistic",4]],["option",4]]],[11,"count","","",18,[[]]],[11,"seems_eq","","Could implement PartialEq, but be a bit more clear how…",18,[[["histogram",3]]]],[0,"time","","",null,null],[3,"Time","geom::time","In seconds since midnight. Can\'t be negative.",null,null],[12,"0","","",19,null],[18,"START_OF_DAY","geom","",19,null],[11,"seconds_since_midnight","","",19,[[],["time",3]]],[11,"get_parts","","(hours, minutes, seconds, centiseconds)",19,[[]]],[11,"get_hours","","Rounded up",19,[[]]],[11,"ampm_tostring","","",19,[[],["string",3]]],[11,"as_filename","","",19,[[],["string",3]]],[11,"parse","","",19,[[],[["time",3],["box",3],["result",4]]]],[11,"min","","",19,[[["time",3]],["time",3]]],[11,"max","","",19,[[["time",3]],["time",3]]],[11,"percent_of","","",19,[[],["time",3]]],[11,"to_percent","","",19,[[["time",3]]]],[11,"inner_seconds","","For RNG range generation. Don\'t abuse.",19,[[]]],[11,"clamped_sub","","",19,[[["duration",3]],["time",3]]],[11,"round_seconds","","",19,[[],["time",3]]],[17,"EPSILON_DIST","","",null,null],[8,"HgramValue","","",null,null],[10,"hgram_zero","","",23,[[]]],[10,"to_u64","","",23,[[]]],[10,"from_u64","","",23,[[]]],[11,"from","","",0,[[]]],[11,"into","","",0,[[]]],[11,"to_owned","","",0,[[]]],[11,"clone_into","","",0,[[]]],[11,"to_string","","",0,[[],["string",3]]],[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,"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,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"to_owned","","",3,[[]]],[11,"clone_into","","",3,[[]]],[11,"to_string","","",3,[[],["string",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,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"to_owned","","",4,[[]]],[11,"clone_into","","",4,[[]]],[11,"to_string","","",4,[[],["string",3]]],[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,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"to_owned","","",5,[[]]],[11,"clone_into","","",5,[[]]],[11,"to_string","","",5,[[],["string",3]]],[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,"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,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"to_owned","","",7,[[]]],[11,"clone_into","","",7,[[]]],[11,"to_string","","",7,[[],["string",3]]],[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,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"to_string","","",8,[[],["string",3]]],[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,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"to_string","","",9,[[],["string",3]]],[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,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"to_string","","",10,[[],["string",3]]],[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,"from","","",11,[[]]],[11,"into","","",11,[[]]],[11,"to_owned","","",11,[[]]],[11,"clone_into","","",11,[[]]],[11,"to_string","","",11,[[],["string",3]]],[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,"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,"from","","",13,[[]]],[11,"into","","",13,[[]]],[11,"to_owned","","",13,[[]]],[11,"clone_into","","",13,[[]]],[11,"to_string","","",13,[[],["string",3]]],[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,"from","","",14,[[]]],[11,"into","","",14,[[]]],[11,"to_owned","","",14,[[]]],[11,"clone_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,"from","","",15,[[]]],[11,"into","","",15,[[]]],[11,"to_owned","","",15,[[]]],[11,"clone_into","","",15,[[]]],[11,"to_string","","",15,[[],["string",3]]],[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,"from","","",16,[[]]],[11,"into","","",16,[[]]],[11,"to_owned","","",16,[[]]],[11,"clone_into","","",16,[[]]],[11,"to_string","","",16,[[],["string",3]]],[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,"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,"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,"from","","",19,[[]]],[11,"into","","",19,[[]]],[11,"to_owned","","",19,[[]]],[11,"clone_into","","",19,[[]]],[11,"to_string","","",19,[[],["string",3]]],[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,"from","","",20,[[]]],[11,"into","","",20,[[]]],[11,"to_owned","","",20,[[]]],[11,"clone_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,"from","","",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,"from","","",22,[[]]],[11,"into","","",22,[[]]],[11,"to_owned","","",22,[[]]],[11,"clone_into","","",22,[[]]],[11,"to_string","","",22,[[],["string",3]]],[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,"hgram_zero","","",5,[[],["duration",3]]],[11,"to_u64","","",5,[[]]],[11,"from_u64","","",5,[[],["duration",3]]],[11,"clone","","",0,[[],["angle",3]]],[11,"clone","","",1,[[],["bounds",3]]],[11,"clone","","",2,[[],["gpsbounds",3]]],[11,"clone","","",3,[[],["circle",3]]],[11,"clone","","",4,[[],["distance",3]]],[11,"clone","","",5,[[],["duration",3]]],[11,"clone","","",7,[[],["lonlat",3]]],[11,"clone","","",9,[[],["line",3]]],[11,"clone","","",8,[[],["infiniteline",3]]],[11,"clone","","",10,[[],["percent",3]]],[11,"clone","","",11,[[],["polygon",3]]],[11,"clone","","",12,[[],["triangle",3]]],[11,"clone","","",13,[[],["polyline",3]]],[11,"clone","","",15,[[],["pt2d",3]]],[11,"clone","","",14,[[],["hashablept2d",3]]],[11,"clone","","",16,[[],["ring",3]]],[11,"clone","","",17,[[],["speed",3]]],[11,"clone","","",22,[[],["statistic",4]]],[11,"clone","","",18,[[],["histogram",3]]],[11,"clone","","",19,[[],["time",3]]],[11,"clone","","",20,[[],["unitfmt",3]]],[11,"default","","",4,[[],["distance",3]]],[11,"default","","",5,[[],["duration",3]]],[11,"default","","",18,[[],["histogram",3]]],[11,"cmp","","",4,[[["distance",3]],["ordering",4]]],[11,"cmp","","",5,[[["duration",3]],["ordering",4]]],[11,"cmp","","",7,[[["lonlat",3]],["ordering",4]]],[11,"cmp","","",14,[[["hashablept2d",3]],["ordering",4]]],[11,"cmp","","",22,[[["statistic",4]],["ordering",4]]],[11,"cmp","","",19,[[["time",3]],["ordering",4]]],[11,"eq","","",0,[[["angle",3]]]],[11,"ne","","",0,[[["angle",3]]]],[11,"eq","","",2,[[["gpsbounds",3]]]],[11,"ne","","",2,[[["gpsbounds",3]]]],[11,"eq","","",4,[[["distance",3]]]],[11,"ne","","",4,[[["distance",3]]]],[11,"eq","","",5,[[["duration",3]]]],[11,"ne","","",5,[[["duration",3]]]],[11,"eq","","",7,[[["lonlat",3]]]],[11,"ne","","",7,[[["lonlat",3]]]],[11,"eq","","",9,[[["line",3]]]],[11,"ne","","",9,[[["line",3]]]],[11,"eq","","",10,[[["percent",3]]]],[11,"ne","","",10,[[["percent",3]]]],[11,"eq","","",13,[[["polyline",3]]]],[11,"ne","","",13,[[["polyline",3]]]],[11,"eq","","",15,[[["pt2d",3]]]],[11,"eq","","",14,[[["hashablept2d",3]]]],[11,"ne","","",14,[[["hashablept2d",3]]]],[11,"eq","","",16,[[["ring",3]]]],[11,"ne","","",16,[[["ring",3]]]],[11,"eq","","",17,[[["speed",3]]]],[11,"ne","","",17,[[["speed",3]]]],[11,"eq","","",22,[[["statistic",4]]]],[11,"eq","","",19,[[["time",3]]]],[11,"ne","","",19,[[["time",3]]]],[11,"partial_cmp","","",0,[[["angle",3]],[["ordering",4],["option",4]]]],[11,"lt","","",0,[[["angle",3]]]],[11,"le","","",0,[[["angle",3]]]],[11,"gt","","",0,[[["angle",3]]]],[11,"ge","","",0,[[["angle",3]]]],[11,"partial_cmp","","",4,[[["distance",3]],[["ordering",4],["option",4]]]],[11,"lt","","",4,[[["distance",3]]]],[11,"le","","",4,[[["distance",3]]]],[11,"gt","","",4,[[["distance",3]]]],[11,"ge","","",4,[[["distance",3]]]],[11,"partial_cmp","","",5,[[["duration",3]],[["ordering",4],["option",4]]]],[11,"lt","","",5,[[["duration",3]]]],[11,"le","","",5,[[["duration",3]]]],[11,"gt","","",5,[[["duration",3]]]],[11,"ge","","",5,[[["duration",3]]]],[11,"partial_cmp","","",7,[[["lonlat",3]],[["ordering",4],["option",4]]]],[11,"lt","","",7,[[["lonlat",3]]]],[11,"le","","",7,[[["lonlat",3]]]],[11,"gt","","",7,[[["lonlat",3]]]],[11,"ge","","",7,[[["lonlat",3]]]],[11,"partial_cmp","","",14,[[["hashablept2d",3]],[["ordering",4],["option",4]]]],[11,"lt","","",14,[[["hashablept2d",3]]]],[11,"le","","",14,[[["hashablept2d",3]]]],[11,"gt","","",14,[[["hashablept2d",3]]]],[11,"ge","","",14,[[["hashablept2d",3]]]],[11,"partial_cmp","","",17,[[["speed",3]],[["ordering",4],["option",4]]]],[11,"lt","","",17,[[["speed",3]]]],[11,"le","","",17,[[["speed",3]]]],[11,"gt","","",17,[[["speed",3]]]],[11,"ge","","",17,[[["speed",3]]]],[11,"partial_cmp","","",22,[[["statistic",4]],[["ordering",4],["option",4]]]],[11,"partial_cmp","","",19,[[["time",3]],[["ordering",4],["option",4]]]],[11,"lt","","",19,[[["time",3]]]],[11,"le","","",19,[[["time",3]]]],[11,"gt","","",19,[[["time",3]]]],[11,"ge","","",19,[[["time",3]]]],[11,"fmt","","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","","",2,[[["formatter",3]],["result",6]]],[11,"fmt","","",3,[[["formatter",3]],["result",6]]],[11,"fmt","","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",12,[[["formatter",3]],["result",6]]],[11,"fmt","","",13,[[["formatter",3]],["result",6]]],[11,"fmt","","",15,[[["formatter",3]],["result",6]]],[11,"fmt","","",14,[[["formatter",3]],["result",6]]],[11,"fmt","","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",17,[[["formatter",3]],["result",6]]],[11,"fmt","","",19,[[["formatter",3]],["result",6]]],[11,"fmt","","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",3,[[["formatter",3]],["result",6]]],[11,"fmt","","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",10,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",13,[[["formatter",3]],["result",6]]],[11,"fmt","","",15,[[["formatter",3]],["result",6]]],[11,"fmt","","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",22,[[["formatter",3]],["result",6]]],[11,"fmt","","",19,[[["formatter",3]],["result",6]]],[11,"div","","",0,[[],["angle",3]]],[11,"div","","",4,[[["distance",3]]]],[11,"div","","",4,[[],["distance",3]]],[11,"div","","",4,[[["speed",3]],["duration",3]]],[11,"div","","",5,[[["duration",3]]]],[11,"div","","",5,[[],["duration",3]]],[11,"div","","",17,[[["speed",3]]]],[11,"rem","","",5,[[["duration",3]],["duration",3]]],[11,"sub","","",4,[[["distance",3]],["distance",3]]],[11,"sub","","",5,[[["duration",3]],["duration",3]]],[11,"sub","","",17,[[["speed",3]],["speed",3]]],[11,"sub","","",19,[[["duration",3]],["time",3]]],[11,"sub","","",19,[[["time",3]],["duration",3]]],[11,"add","","",0,[[["angle",3]],["angle",3]]],[11,"add","","",4,[[["distance",3]],["distance",3]]],[11,"add","","",5,[[["duration",3]],["duration",3]]],[11,"add","","",17,[[["speed",3]],["speed",3]]],[11,"add","","",19,[[["duration",3]],["time",3]]],[11,"mul","","",4,[[],["distance",3]]],[11,"mul","","",5,[[],["duration",3]]],[11,"mul","","",5,[[["speed",3]],["distance",3]]],[11,"mul","","",17,[[],["speed",3]]],[11,"mul","","",17,[[["duration",3]],["distance",3]]],[11,"neg","","",0,[[],["angle",3]]],[11,"neg","","",4,[[],["distance",3]]],[11,"neg","","",17,[[],["speed",3]]],[11,"add_assign","","",4,[[["distance",3]]]],[11,"add_assign","","",5,[[["duration",3]]]],[11,"add_assign","","",19,[[["duration",3]]]],[11,"sub_assign","","",4,[[["distance",3]]]],[11,"sub_assign","","",5,[[["duration",3]]]],[11,"hash","","",14,[[]]],[11,"hash","","",19,[[]]],[11,"sum","","",0,[[],["angle",3]]],[11,"sum","","",4,[[],["distance",3]]],[11,"sum","","",5,[[],["duration",3]]],[11,"serialize","","",0,[[],["result",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"serialize","","",2,[[],["result",4]]],[11,"serialize","","",3,[[],["result",4]]],[11,"serialize","","",4,[[],["result",4]]],[11,"serialize","","",5,[[],["result",4]]],[11,"serialize","","",7,[[],["result",4]]],[11,"serialize","","",9,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","","",11,[[],["result",4]]],[11,"serialize","","",13,[[],["result",4]]],[11,"serialize","","",15,[[],["result",4]]],[11,"serialize","","",16,[[],["result",4]]],[11,"serialize","","",17,[[],["result",4]]],[11,"serialize","","",22,[[],["result",4]]],[11,"serialize","","",19,[[],["result",4]]],[11,"deserialize","","",0,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]],[11,"deserialize","","",2,[[],["result",4]]],[11,"deserialize","","",3,[[],["result",4]]],[11,"deserialize","","",4,[[],["result",4]]],[11,"deserialize","","",5,[[],["result",4]]],[11,"deserialize","","",7,[[],["result",4]]],[11,"deserialize","","",9,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","","",11,[[],["result",4]]],[11,"deserialize","","",13,[[],["result",4]]],[11,"deserialize","","",15,[[],["result",4]]],[11,"deserialize","","",16,[[],["result",4]]],[11,"deserialize","","",17,[[],["result",4]]],[11,"deserialize","","",22,[[],["result",4]]],[11,"deserialize","","",19,[[],["result",4]]]],"p":[[3,"Angle"],[3,"Bounds"],[3,"GPSBounds"],[3,"Circle"],[3,"Distance"],[3,"Duration"],[3,"FindClosest"],[3,"LonLat"],[3,"InfiniteLine"],[3,"Line"],[3,"Percent"],[3,"Polygon"],[3,"Triangle"],[3,"PolyLine"],[3,"HashablePt2D"],[3,"Pt2D"],[3,"Ring"],[3,"Speed"],[3,"Histogram"],[3,"Time"],[3,"UnitFmt"],[4,"ArrowCap"],[4,"Statistic"],[8,"HgramValue"]]},\
+"geom":{"doc":"","i":[[3,"Angle","geom","An angle, stored in radians.",null,null],[12,"0","","",0,null],[3,"Bounds","","Represents a rectangular boundary of `Pt2D` points.",null,null],[12,"min_x","","",1,null],[12,"min_y","","",1,null],[12,"max_x","","",1,null],[12,"max_y","","",1,null],[3,"GPSBounds","","Represents a rectangular boundary of `LonLat` points.…",null,null],[12,"min_lon","","",2,null],[12,"min_lat","","",2,null],[12,"max_lon","","",2,null],[12,"max_lat","","",2,null],[3,"Circle","","A circle, defined by a center and radius.",null,null],[12,"center","","",3,null],[12,"radius","","",3,null],[3,"Distance","","A distance, in meters. Can be negative.",null,null],[12,"0","","",4,null],[3,"Duration","","A duration, in seconds. Can be negative.",null,null],[12,"0","","",5,null],[3,"FindClosest","","A quad-tree to quickly find the closest points to some…",null,null],[12,"geometries","","",6,null],[12,"quadtree","","",6,null],[3,"LonLat","","Represents a (longitude, latitude) point.",null,null],[12,"longitude","","",7,null],[12,"latitude","","",7,null],[3,"InfiniteLine","","",null,null],[12,"0","","",8,null],[12,"1","","",8,null],[3,"Line","","A line segment.",null,null],[12,"0","","",9,null],[12,"1","","",9,null],[3,"Percent","","Most of the time, [0, 1]. But some callers may go outside…",null,null],[12,"0","","",10,null],[3,"Polygon","","",null,null],[12,"points","","",11,null],[12,"indices","","Groups of three indices make up the triangles",11,null],[12,"rings","","If the polygon has holes, explicitly store all the rings…",11,null],[3,"Triangle","","",null,null],[12,"pt1","","",12,null],[12,"pt2","","",12,null],[12,"pt3","","",12,null],[3,"PolyLine","","",null,null],[12,"pts","","",13,null],[12,"length","","",13,null],[3,"HashablePt2D","","This represents world space, NOT LonLat.",null,null],[12,"x_nan","","",14,null],[12,"y_nan","","",14,null],[3,"Pt2D","","This represents world-space in meters.",null,null],[12,"inner_x","","",15,null],[12,"inner_y","","",15,null],[3,"Ring","","Maybe a misnomer, but like a PolyLine, but closed.",null,null],[12,"pts","","",16,null],[3,"Speed","","In meters per second. Can be negative.",null,null],[12,"0","","",17,null],[3,"Histogram","","",null,null],[12,"count","","",18,null],[12,"histogram","","",18,null],[12,"min","","",18,null],[12,"max","","",18,null],[3,"Time","","In seconds since midnight. Can\'t be negative.",null,null],[12,"0","","",19,null],[3,"UnitFmt","","Specifies how to stringify different geom objects.",null,null],[12,"round_durations","","Round `Duration`s to a whole number of seconds.",20,null],[12,"metric","","Display in metric; US imperial otherwise.",20,null],[4,"ArrowCap","","",null,null],[13,"Triangle","","",21,null],[4,"Statistic","","",null,null],[13,"Min","","",22,null],[13,"Mean","","",22,null],[13,"P50","","",22,null],[13,"P90","","",22,null],[13,"P99","","",22,null],[13,"Max","","",22,null],[5,"trim_f64","","Reduce the precision of an f64. This helps ensure…",null,[[]]],[0,"angle","","",null,null],[3,"Angle","geom::angle","An angle, stored in radians.",null,null],[12,"0","","",0,null],[18,"ZERO","geom","",0,null],[11,"new_rads","","",0,[[],["angle",3]]],[11,"degrees","","Create an angle in degrees.",0,[[],["angle",3]]],[11,"opposite","","Invert the direction of this angle.",0,[[],["angle",3]]],[11,"invert_y","","",0,[[],["angle",3]]],[11,"rotate_degs","","Rotates this angle by some degrees.",0,[[],["angle",3]]],[11,"normalized_radians","","Returns [0, 2pi)",0,[[]]],[11,"normalized_degrees","","Returns [0, 360)",0,[[]]],[11,"shortest_rotation_towards","","Logically this returns [-180, 180], but keep in mind when…",0,[[["angle",3]],["angle",3]]],[11,"approx_eq","","True if this angle is within some degrees of another,…",0,[[["angle",3]]]],[11,"reorient","","I don\'t know how to describe what this does. Use for…",0,[[],["angle",3]]],[0,"bounds","","",null,null],[3,"Bounds","geom::bounds","Represents a rectangular boundary of `Pt2D` points.",null,null],[12,"min_x","","",1,null],[12,"min_y","","",1,null],[12,"max_x","","",1,null],[12,"max_y","","",1,null],[3,"GPSBounds","","Represents a rectangular boundary of `LonLat` points.…",null,null],[12,"min_lon","","",2,null],[12,"min_lat","","",2,null],[12,"max_lon","","",2,null],[12,"max_lat","","",2,null],[11,"new","geom","A boundary including no points.",1,[[],["bounds",3]]],[11,"from","","Create a boundary covering some points.",1,[[["vec",3]],["bounds",3]]],[11,"update","","Update the boundary to include this point.",1,[[["pt2d",3]]]],[11,"union","","Unions two boundaries.",1,[[["bounds",3]]]],[11,"contains","","True if the point is within the boundary.",1,[[["pt2d",3]]]],[11,"as_bbox","","Converts the boundary to the format used by `aabb_quadtree`.",1,[[],["rect",3]]],[11,"get_rectangle","","Creates a rectangle covering this boundary.",1,[[],["polygon",3]]],[11,"width","","The width of this boundary.",1,[[]]],[11,"height","","The height of this boundary.",1,[[]]],[11,"center","","The center point of this boundary.",1,[[],["pt2d",3]]],[11,"new","","A boundary including no points.",2,[[],["gpsbounds",3]]],[11,"from","","Create a boundary covering some points.",2,[[["vec",3],["lonlat",3]],["gpsbounds",3]]],[11,"update","","Update the boundary to include this point.",2,[[["lonlat",3]]]],[11,"contains","","True if the point is within the boundary.",2,[[["lonlat",3]]]],[11,"get_max_world_pt","","The bottom-right corner of the boundary, in map-space.",2,[[],["pt2d",3]]],[11,"to_bounds","","Converts the boundary to map-space.",2,[[],["bounds",3]]],[11,"try_convert","","Convert all points to map-space, failing if any points are…",2,[[["vec",3]],[["option",4],["vec",3]]]],[11,"convert","","Convert all points to map-space. The points may be outside…",2,[[["vec",3]],[["vec",3],["pt2d",3]]]],[11,"convert_back","","Convert map-space points back to `LonLat`s. This is only…",2,[[["vec",3]],[["vec",3],["lonlat",3]]]],[0,"circle","","",null,null],[3,"Circle","geom::circle","A circle, defined by a center and radius.",null,null],[12,"center","","",3,null],[12,"radius","","",3,null],[17,"TRIANGLES_PER_CIRCLE","","",null,null],[11,"new","geom","Creates a circle.",3,[[["pt2d",3],["distance",3]],["circle",3]]],[11,"contains_pt","","True if the point is inside the circle.",3,[[["pt2d",3]]]],[11,"get_bounds","","Get the boundary containing this circle.",3,[[],["bounds",3]]],[11,"to_polygon","","Renders the circle as a polygon.",3,[[],["polygon",3]]],[11,"to_partial_polygon","","Renders some percent, between [0, 1], of the circle as a…",3,[[],["polygon",3]]],[11,"to_ring","","Returns the ring around the circle.",3,[[],["ring",3]]],[11,"to_outline","","Creates an outline around the circle, strictly contained…",3,[[["distance",3]],[["polygon",3],["string",3],["result",4]]]],[0,"distance","","",null,null],[3,"Distance","geom::distance","A distance, in meters. Can be negative.",null,null],[12,"0","","",4,null],[18,"ZERO","geom","",4,null],[11,"meters","","Creates a distance in meters.",4,[[],["distance",3]]],[11,"const_meters","","",4,[[],["distance",3]]],[11,"inches","","Creates a distance in inches.",4,[[],["distance",3]]],[11,"miles","","Creates a distance in miles.",4,[[],["distance",3]]],[11,"centimeters","","Creates a distance in centimeters.",4,[[],["distance",3]]],[11,"abs","","Returns the absolute value of this distance.",4,[[],["distance",3]]],[11,"sqrt","","Returns the square root of this distance.",4,[[],["distance",3]]],[11,"inner_meters","","Returns the distance in meters. Prefer to work with…",4,[[]]],[11,"to_string","","Describes the distance according to formatting rules.",4,[[["unitfmt",3]],["string",3]]],[11,"max","","Returns the largest of the two inputs.",4,[[["distance",3]],["distance",3]]],[11,"min","","Returns the smallest of the two inputs.",4,[[["distance",3]],["distance",3]]],[0,"duration","","",null,null],[3,"Duration","geom::duration","A duration, in seconds. Can be negative.",null,null],[12,"0","","",5,null],[18,"ZERO","geom","",5,null],[18,"EPSILON","","",5,null],[11,"seconds","","Creates a duration in seconds.",5,[[],["duration",3]]],[11,"minutes","","Creates a duration in minutes.",5,[[],["duration",3]]],[11,"hours","","Creates a duration in hours.",5,[[],["duration",3]]],[11,"f64_minutes","","Creates a duration in minutes.",5,[[],["duration",3]]],[11,"const_seconds","","",5,[[],["duration",3]]],[11,"to_u64","","",5,[[]]],[11,"from_u64","","",5,[[],["duration",3]]],[11,"inner_seconds","","Returns the duration in seconds. Prefer working in…",5,[[]]],[11,"get_parts","","Splits the duration into (hours, minutes, seconds,…",5,[[]]],[11,"parse","","Parses a duration such as \\\"3:00\\\" to `Duration::minutes(3)`.",5,[[],[["result",4],["duration",3],["box",3]]]],[11,"epsilon_eq","","If two durations are within this amount, they\'ll print as…",5,[[["duration",3]]]],[11,"realtime_elapsed","","Returns the duration elapsed from this moment in real time.",5,[[["instant",6]],["duration",3]]],[11,"round_up","","Rounds a duration up to the nearest whole number multiple.",5,[[["duration",3]],["duration",3]]],[11,"num_minutes_rounded_up","","Returns the duration as a number of minutes, rounded up.",5,[[]]],[11,"make_intervals_for_max","","Returns (rounded max, the boundaries in number of minutes)",5,[[]]],[11,"to_string","","Describes the duration according to formatting rules.",5,[[["unitfmt",3]],["string",3]]],[0,"find_closest","","",null,null],[3,"FindClosest","geom::find_closest","A quad-tree to quickly find the closest points to some…",null,null],[12,"geometries","","",6,null],[12,"quadtree","","",6,null],[5,"pts_to_line_string","","",null,[[["vec",3]],["linestring",3]]],[11,"new","geom","Creates the quad-tree, limited to points contained in the…",6,[[["bounds",3]],["findclosest",3]]],[11,"add","","Add an object to the quadtree, remembering some key…",6,[[["vec",3]]]],[11,"all_close_pts","","For every object within some distance of a query point,…",6,[[["pt2d",3],["distance",3]],["vec",3]]],[11,"closest_pt","","Finds the closest point on the existing geometry to the…",6,[[["pt2d",3],["distance",3]],["option",4]]],[0,"gps","","",null,null],[3,"LonLat","geom::gps","Represents a (longitude, latitude) point.",null,null],[12,"longitude","","",7,null],[12,"latitude","","",7,null],[11,"new","geom","Note the order of arguments!",7,[[],["lonlat",3]]],[11,"x","","Returns the longitude of this point.",7,[[]]],[11,"y","","Returns the latitude of this point.",7,[[]]],[11,"to_pt","","Transform this to a world-space point. Can go out of bounds.",7,[[["gpsbounds",3]],["pt2d",3]]],[11,"gps_dist","","Returns the Haversine distance to another point.",7,[[["lonlat",3]],["distance",3]]],[11,"fast_dist","","Pretty meaningless units, for comparing distances very…",7,[[["lonlat",3]],["notnan",3]]],[11,"read_osmosis_polygon","","Parses a file in the…",7,[[],[["vec",3],["box",3],["result",4]]]],[11,"write_osmosis_polygon","","Writes a set of points to a file in the…",7,[[["vec",3]],[["box",3],["result",4]]]],[0,"line","","",null,null],[3,"Line","geom::line","A line segment.",null,null],[12,"0","","",9,null],[12,"1","","",9,null],[3,"InfiniteLine","","",null,null],[12,"0","","",8,null],[12,"1","","",8,null],[5,"is_counter_clockwise","","",null,[[["pt2d",3]]]],[11,"new","geom","Creates a line segment between two points. None if the…",9,[[["pt2d",3]],[["option",4],["line",3]]]],[11,"must_new","","Equivalent to `Line::new(pt1, pt2).unwrap()`. Use this to…",9,[[["pt2d",3]],["line",3]]],[11,"infinite","","Returns an infinite line passing through this line\'s two…",9,[[],["infiniteline",3]]],[11,"pt1","","Returns the first point in this line segment.",9,[[],["pt2d",3]]],[11,"pt2","","Returns the second point in this line segment.",9,[[],["pt2d",3]]],[11,"points","","Returns the two points in this line segment.",9,[[],[["vec",3],["pt2d",3]]]],[11,"to_polyline","","Returns a polyline containing these two points.",9,[[],["polyline",3]]],[11,"make_polygons","","Returns a thick line segment.",9,[[["distance",3]],["polygon",3]]],[11,"length","","Length of the line segment",9,[[],["distance",3]]],[11,"intersection","","If two line segments intersect -- including endpoints --…",9,[[["line",3]],[["pt2d",3],["option",4]]]],[11,"crosses","","Determine if two line segments intersect, but more so than…",9,[[["line",3]]]],[11,"intersection_infinite","","If the line segment intersects with an infinite line --…",9,[[["infiniteline",3]],[["pt2d",3],["option",4]]]],[11,"shift_right","","Perpendicularly shifts the line over to the right. Width…",9,[[["distance",3]],["line",3]]],[11,"shift_left","","Perpendicularly shifts the line over to the left. Width…",9,[[["distance",3]],["line",3]]],[11,"shift_either_direction","","Perpendicularly shifts the line to the right if positive…",9,[[["distance",3]],["line",3]]],[11,"reverse","","Returns a reversed line segment",9,[[],["line",3]]],[11,"angle","","The angle of the line segment, from the first to the…",9,[[],["angle",3]]],[11,"dist_along","","Returns a point along the line segment, unless the…",9,[[["distance",3]],[["pt2d",3],["option",4]]]],[11,"must_dist_along","","Equivalent to `self.dist_along(dist).unwrap()`. Use this…",9,[[["distance",3]],["pt2d",3]]],[11,"unbounded_dist_along","","",9,[[["distance",3]],["pt2d",3]]],[11,"unbounded_percent_along","","",9,[[],["pt2d",3]]],[11,"percent_along","","",9,[[],[["pt2d",3],["option",4]]]],[11,"slice","","",9,[[["distance",3]],[["option",4],["line",3]]]],[11,"middle","","",9,[[],[["pt2d",3],["option",4]]]],[11,"contains_pt","","",9,[[["pt2d",3]]]],[11,"dist_along_of_point","","",9,[[["pt2d",3]],[["distance",3],["option",4]]]],[11,"percent_along_of_point","","",9,[[["pt2d",3]],["option",4]]],[11,"intersection","","Fails for parallel lines.",8,[[["infiniteline",3]],[["pt2d",3],["option",4]]]],[0,"percent","","",null,null],[3,"Percent","geom::percent","Most of the time, [0, 1]. But some callers may go outside…",null,null],[12,"0","","",10,null],[11,"inner","geom","",10,[[]]],[11,"int","","",10,[[],["percent",3]]],[11,"of","","",10,[[],["percent",3]]],[0,"polygon","","",null,null],[3,"Polygon","geom::polygon","",null,null],[12,"points","","",11,null],[12,"indices","","Groups of three indices make up the triangles",11,null],[12,"rings","","If the polygon has holes, explicitly store all the rings…",11,null],[3,"Triangle","","",null,null],[12,"pt1","","",12,null],[12,"pt2","","",12,null],[12,"pt3","","",12,null],[5,"to_geo","","",null,[[["vec",3]],["polygon",3]]],[5,"from_geo","","",null,[[["polygon",3]],["polygon",3]]],[5,"from_multi","","",null,[[["multipolygon",3]],[["polygon",3],["vec",3]]]],[5,"downsize","","",null,[[["vec",3]],["vec",3]]],[11,"buggy_new","geom","",11,[[["vec",3],["pt2d",3]],["polygon",3]]],[11,"with_holes","","",11,[[["ring",3],["vec",3]],["polygon",3]]],[11,"from_geojson","","",11,[[["vec",3]],["polygon",3]]],[11,"precomputed","","",11,[[["vec",3],["vec",3],["pt2d",3]],["polygon",3]]],[11,"from_triangle","","",11,[[["triangle",3]],["polygon",3]]],[11,"triangles","","",11,[[],[["vec",3],["triangle",3]]]],[11,"raw_for_rendering","","",11,[[]]],[11,"contains_pt","","",11,[[["pt2d",3]]]],[11,"get_bounds","","",11,[[],["bounds",3]]],[11,"transform","","",11,[[["fn",8]],["polygon",3]]],[11,"translate","","",11,[[],["polygon",3]]],[11,"scale","","",11,[[],["polygon",3]]],[11,"rotate","","",11,[[["angle",3]],["polygon",3]]],[11,"rotate_around","","",11,[[["angle",3],["pt2d",3]],["polygon",3]]],[11,"points","","The order of these points depends on the constructor! The…",11,[[],["vec",3]]],[11,"into_points","","",11,[[],[["vec",3],["pt2d",3]]]],[11,"into_ring","","",11,[[],["ring",3]]],[11,"center","","",11,[[],["pt2d",3]]],[11,"rectangle","","Top-left at the origin. Doesn\'t take Distance, because…",11,[[],["polygon",3]]],[11,"rectangle_centered","","",11,[[["pt2d",3],["distance",3]],["polygon",3]]],[11,"rectangle_two_corners","","",11,[[["pt2d",3]],[["option",4],["polygon",3]]]],[11,"maybe_rounded_rectangle","","Top-left at the origin. Doesn\'t take Distance, because…",11,[[["option",4]],[["option",4],["polygon",3]]]],[11,"rounded_rectangle","","Top-left at the origin. Doesn\'t take Distance, because…",11,[[["option",4]],["polygon",3]]],[11,"union","","",11,[[["polygon",3]],["polygon",3]]],[11,"union_all","","",11,[[["vec",3],["polygon",3]],["polygon",3]]],[11,"intersection","","",11,[[["polygon",3]],[["polygon",3],["vec",3]]]],[11,"convex_hull","","",11,[[["vec",3],["polygon",3]],["polygon",3]]],[11,"polylabel","","",11,[[],["pt2d",3]]],[11,"to_outline","","Creates the outline around the polygon, with the thickness…",11,[[["distance",3]],[["polygon",3],["string",3],["result",4]]]],[11,"strip_rings","","Remove the internal rings used for to_outline. This is…",11,[[],["polygon",3]]],[11,"area","","Usually m^2, unless the polygon is in screen-space",11,[[]]],[11,"clip_polyline","","Doesn\'t handle multiple crossings in and out.",11,[[["polyline",3]],[["option",4],["vec",3]]]],[11,"clip_ring","","",11,[[["ring",3]],[["option",4],["vec",3]]]],[11,"new","","",12,[[["pt2d",3]],["triangle",3]]],[11,"contains_pt","","",12,[[["pt2d",3]]]],[0,"polyline","","",null,null],[3,"PolyLine","geom::polyline","",null,null],[12,"pts","","",13,null],[12,"length","","",13,null],[4,"ArrowCap","","",null,null],[13,"Triangle","","",21,null],[5,"fix_angles","","",null,[[["polyline",3],["polyline",3]],[["string",3],["result",4],["polyline",3]]]],[5,"to_set","","",null,[[]]],[5,"pts_to_line_string","","",null,[[["vec",3]],["linestring",3]]],[17,"MITER_THRESHOLD","","",null,null],[11,"new","geom","",13,[[["vec",3],["pt2d",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_new","","",13,[[["vec",3],["pt2d",3]],["polyline",3]]],[11,"unchecked_new","","Doesn\'t check for duplicates. Use at your own risk.",13,[[["vec",3],["pt2d",3]],["polyline",3]]],[11,"deduping_new","","First dedupes adjacent points",13,[[["vec",3],["pt2d",3]],[["string",3],["result",4],["polyline",3]]]],[11,"to_thick_ring","","Like make_polygons, but make sure the points actually form…",13,[[["distance",3]],["ring",3]]],[11,"to_thick_boundary","","",13,[[["distance",3]],[["option",4],["polygon",3]]]],[11,"reversed","","",13,[[],["polyline",3]]],[11,"extend","","",13,[[["polyline",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_extend","","",13,[[["polyline",3]],["polyline",3]]],[11,"must_push","","",13,[[["pt2d",3]],["polyline",3]]],[11,"append","","One or both args might be empty.",13,[[["vec",3],["pt2d",3]],[["result",4],["vec",3],["string",3]]]],[11,"points","","",13,[[],["vec",3]]],[11,"into_points","","",13,[[],[["vec",3],["pt2d",3]]]],[11,"lines","","",13,[[]]],[11,"length","","",13,[[],["distance",3]]],[11,"slice","","Returns the excess distance left over from the end",13,[[["distance",3]],[["result",4],["string",3]]]],[11,"exact_slice","","No excess leftover distance allowed.",13,[[["distance",3]],["polyline",3]]],[11,"maybe_exact_slice","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"first_half","","",13,[[],["polyline",3]]],[11,"second_half","","",13,[[],["polyline",3]]],[11,"dist_along","","",13,[[["distance",3]],[["string",3],["result",4]]]],[11,"must_dist_along","","",13,[[["distance",3]]]],[11,"middle","","",13,[[],["pt2d",3]]],[11,"first_pt","","",13,[[],["pt2d",3]]],[11,"last_pt","","",13,[[],["pt2d",3]]],[11,"first_line","","",13,[[],["line",3]]],[11,"last_line","","",13,[[],["line",3]]],[11,"shift_right","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_shift_right","","",13,[[["distance",3]],["polyline",3]]],[11,"shift_left","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"must_shift_left","","",13,[[["distance",3]],["polyline",3]]],[11,"shift_with_corrections","","",13,[[["distance",3]],[["string",3],["result",4],["polyline",3]]]],[11,"shift_with_sharp_angles","","",13,[[["distance",3]],[["vec",3],["pt2d",3]]]],[11,"make_polygons","","The resulting polygon is manually triangulated and doesn\'t…",13,[[["distance",3]],["polygon",3]]],[11,"make_polygons_with_miter_threshold","","The resulting polygon is manually triangulated and doesn\'t…",13,[[["distance",3]],["polygon",3]]],[11,"exact_dashed_polygons","","",13,[[["distance",3]],[["polygon",3],["vec",3]]]],[11,"dashed_lines","","Don\'t draw the dashes too close to the ends.",13,[[["distance",3]],[["polygon",3],["vec",3]]]],[11,"make_arrow","","",13,[[["distance",3],["arrowcap",4]],["polygon",3]]],[11,"make_double_arrow","","",13,[[["distance",3],["arrowcap",4]],["polygon",3]]],[11,"dashed_arrow","","",13,[[["distance",3],["arrowcap",4]],[["polygon",3],["vec",3]]]],[11,"intersection","","Also return the angle of the line where the hit was found",13,[[["polyline",3]],["option",4]]],[11,"intersection_infinite","","",13,[[["infiniteline",3]],[["pt2d",3],["option",4]]]],[11,"get_slice_ending_at","","Panics if the pt is not on the polyline. Returns None if…",13,[[["pt2d",3]],[["option",4],["polyline",3]]]],[11,"get_slice_starting_at","","Returns None if the point is the last point.",13,[[["pt2d",3]],[["option",4],["polyline",3]]]],[11,"dist_along_of_point","","",13,[[["pt2d",3]],["option",4]]],[11,"trim_to_endpts","","",13,[[["pt2d",3]],["polyline",3]]],[11,"get_bounds","","",13,[[],["bounds",3]]],[11,"extend_to_length","","If the current line is at least this long, return it.…",13,[[["distance",3]],["polyline",3]]],[11,"to_geojson","","Produces a GeoJSON linestring, optionally mapping the…",13,[[["option",4],["gpsbounds",3]],["geometry",3]]],[11,"project_pt","","Returns the point on the polyline closest to the query.",13,[[["pt2d",3]],["pt2d",3]]],[0,"pt","","",null,null],[3,"Pt2D","geom::pt","This represents world-space in meters.",null,null],[12,"inner_x","","",15,null],[12,"inner_y","","",15,null],[3,"HashablePt2D","","This represents world space, NOT LonLat.",null,null],[12,"x_nan","","",14,null],[12,"y_nan","","",14,null],[11,"new","geom","",15,[[],["pt2d",3]]],[11,"approx_eq","","",15,[[["pt2d",3],["distance",3]]]],[11,"to_gps","","Can go out of bounds.",15,[[["gpsbounds",3]],["lonlat",3]]],[11,"x","","",15,[[]]],[11,"y","","",15,[[]]],[11,"project_away","","",15,[[["angle",3],["distance",3]],["pt2d",3]]],[11,"raw_dist_to","","",15,[[["pt2d",3]]]],[11,"dist_to","","",15,[[["pt2d",3]],["distance",3]]],[11,"fast_dist","","Pretty meaningless units, for comparing distances very…",15,[[["pt2d",3]],["notnan",3]]],[11,"angle_to","","",15,[[["pt2d",3]],["angle",3]]],[11,"offset","","",15,[[],["pt2d",3]]],[11,"center","","",15,[[["vec",3]],["pt2d",3]]],[11,"approx_dedupe","","",15,[[["vec",3],["pt2d",3],["distance",3]],[["vec",3],["pt2d",3]]]],[11,"find_pts_between","","",15,[[["distance",3],["vec",3],["pt2d",3]],[["option",4],["vec",3]]]],[11,"to_hashable","","",15,[[],["hashablept2d",3]]],[11,"to_pt2d","","",14,[[],["pt2d",3]]],[0,"ring","","",null,null],[3,"Ring","geom::ring","Maybe a misnomer, but like a PolyLine, but closed.",null,null],[12,"pts","","",16,null],[11,"new","geom","",16,[[["vec",3],["pt2d",3]],[["result",4],["ring",3],["string",3]]]],[11,"must_new","","",16,[[["vec",3],["pt2d",3]],["ring",3]]],[11,"to_outline","","Draws the ring with some thickness, with half of it…",16,[[["distance",3]],["polygon",3]]],[11,"to_polygon","","",16,[[],["polygon",3]]],[11,"points","","",16,[[],["vec",3]]],[11,"into_points","","",16,[[],[["vec",3],["pt2d",3]]]],[11,"all_intersections","","Be careful with the order of results. Hits on an earlier…",16,[[["polyline",3]],[["vec",3],["pt2d",3]]]],[11,"get_both_slices_btwn","","",16,[[["pt2d",3]],["option",4]]],[11,"get_shorter_slice_btwn","","",16,[[["pt2d",3]],[["option",4],["polyline",3]]]],[11,"split_points","","Extract all PolyLines and Rings. Doesn\'t handle crazy…",16,[[["vec",3]],[["result",4],["string",3]]]],[11,"contains_pt","","",16,[[["pt2d",3]]]],[11,"to_geojson","","Produces a GeoJSON polygon, optionally mapping the…",16,[[["option",4],["gpsbounds",3]],["geometry",3]]],[11,"translate","","Translates the ring by a fixed offset.",16,[[],["ring",3]]],[0,"speed","","",null,null],[3,"Speed","geom::speed","In meters per second. Can be negative.",null,null],[12,"0","","",17,null],[18,"ZERO","geom","",17,null],[11,"meters_per_second","","",17,[[],["speed",3]]],[11,"const_meters_per_second","","",17,[[],["speed",3]]],[11,"miles_per_hour","","",17,[[],["speed",3]]],[11,"km_per_hour","","",17,[[],["speed",3]]],[11,"from_dist_time","","",17,[[["duration",3],["distance",3]],["speed",3]]],[11,"inner_meters_per_second","","",17,[[]]],[11,"max","","",17,[[["speed",3]],["speed",3]]],[11,"min","","",17,[[["speed",3]],["speed",3]]],[11,"to_string","","Describes the speed according to formatting rules.",17,[[["unitfmt",3]],["string",3]]],[0,"stats","","",null,null],[3,"Histogram","geom::stats","",null,null],[12,"count","","",18,null],[12,"histogram","","",18,null],[12,"min","","",18,null],[12,"max","","",18,null],[4,"Statistic","","",null,null],[13,"Min","","",22,null],[13,"Mean","","",22,null],[13,"P50","","",22,null],[13,"P90","","",22,null],[13,"P99","","",22,null],[13,"Max","","",22,null],[8,"HgramValue","","",null,null],[10,"hgram_zero","","",23,[[]]],[10,"to_u64","","",23,[[]]],[10,"from_u64","","",23,[[]]],[11,"all","geom","",22,[[],[["vec",3],["statistic",4]]]],[11,"new","","",18,[[],["histogram",3]]],[11,"add","","",18,[[]]],[11,"remove","","",18,[[]]],[11,"describe","","",18,[[],["string",3]]],[11,"percentile","","None if empty",18,[[],["option",4]]],[11,"select","","",18,[[["statistic",4]],["option",4]]],[11,"count","","",18,[[]]],[11,"seems_eq","","Could implement PartialEq, but be a bit more clear how…",18,[[["histogram",3]]]],[0,"time","","",null,null],[3,"Time","geom::time","In seconds since midnight. Can\'t be negative.",null,null],[12,"0","","",19,null],[18,"START_OF_DAY","geom","",19,null],[11,"seconds_since_midnight","","",19,[[],["time",3]]],[11,"get_parts","","(hours, minutes, seconds, centiseconds)",19,[[]]],[11,"get_hours","","Rounded up",19,[[]]],[11,"ampm_tostring","","",19,[[],["string",3]]],[11,"as_filename","","",19,[[],["string",3]]],[11,"parse","","",19,[[],[["time",3],["box",3],["result",4]]]],[11,"min","","",19,[[["time",3]],["time",3]]],[11,"max","","",19,[[["time",3]],["time",3]]],[11,"percent_of","","",19,[[],["time",3]]],[11,"to_percent","","",19,[[["time",3]]]],[11,"inner_seconds","","For RNG range generation. Don\'t abuse.",19,[[]]],[11,"clamped_sub","","",19,[[["duration",3]],["time",3]]],[11,"round_seconds","","",19,[[],["time",3]]],[17,"EPSILON_DIST","","",null,null],[8,"HgramValue","","",null,null],[10,"hgram_zero","","",23,[[]]],[10,"to_u64","","",23,[[]]],[10,"from_u64","","",23,[[]]],[11,"from","","",0,[[]]],[11,"into","","",0,[[]]],[11,"to_owned","","",0,[[]]],[11,"clone_into","","",0,[[]]],[11,"to_string","","",0,[[],["string",3]]],[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,"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,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"to_owned","","",3,[[]]],[11,"clone_into","","",3,[[]]],[11,"to_string","","",3,[[],["string",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,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"to_owned","","",4,[[]]],[11,"clone_into","","",4,[[]]],[11,"to_string","","",4,[[],["string",3]]],[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,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"to_owned","","",5,[[]]],[11,"clone_into","","",5,[[]]],[11,"to_string","","",5,[[],["string",3]]],[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,"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,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"to_owned","","",7,[[]]],[11,"clone_into","","",7,[[]]],[11,"to_string","","",7,[[],["string",3]]],[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,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"to_string","","",8,[[],["string",3]]],[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,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"to_string","","",9,[[],["string",3]]],[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,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"to_string","","",10,[[],["string",3]]],[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,"from","","",11,[[]]],[11,"into","","",11,[[]]],[11,"to_owned","","",11,[[]]],[11,"clone_into","","",11,[[]]],[11,"to_string","","",11,[[],["string",3]]],[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,"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,"from","","",13,[[]]],[11,"into","","",13,[[]]],[11,"to_owned","","",13,[[]]],[11,"clone_into","","",13,[[]]],[11,"to_string","","",13,[[],["string",3]]],[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,"from","","",14,[[]]],[11,"into","","",14,[[]]],[11,"to_owned","","",14,[[]]],[11,"clone_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,"from","","",15,[[]]],[11,"into","","",15,[[]]],[11,"to_owned","","",15,[[]]],[11,"clone_into","","",15,[[]]],[11,"to_string","","",15,[[],["string",3]]],[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,"from","","",16,[[]]],[11,"into","","",16,[[]]],[11,"to_owned","","",16,[[]]],[11,"clone_into","","",16,[[]]],[11,"to_string","","",16,[[],["string",3]]],[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,"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,"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,"from","","",19,[[]]],[11,"into","","",19,[[]]],[11,"to_owned","","",19,[[]]],[11,"clone_into","","",19,[[]]],[11,"to_string","","",19,[[],["string",3]]],[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,"from","","",20,[[]]],[11,"into","","",20,[[]]],[11,"to_owned","","",20,[[]]],[11,"clone_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,"from","","",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,"from","","",22,[[]]],[11,"into","","",22,[[]]],[11,"to_owned","","",22,[[]]],[11,"clone_into","","",22,[[]]],[11,"to_string","","",22,[[],["string",3]]],[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,"hgram_zero","","",5,[[],["duration",3]]],[11,"to_u64","","",5,[[]]],[11,"from_u64","","",5,[[],["duration",3]]],[11,"clone","","",0,[[],["angle",3]]],[11,"clone","","",1,[[],["bounds",3]]],[11,"clone","","",2,[[],["gpsbounds",3]]],[11,"clone","","",3,[[],["circle",3]]],[11,"clone","","",4,[[],["distance",3]]],[11,"clone","","",5,[[],["duration",3]]],[11,"clone","","",7,[[],["lonlat",3]]],[11,"clone","","",9,[[],["line",3]]],[11,"clone","","",8,[[],["infiniteline",3]]],[11,"clone","","",10,[[],["percent",3]]],[11,"clone","","",11,[[],["polygon",3]]],[11,"clone","","",12,[[],["triangle",3]]],[11,"clone","","",13,[[],["polyline",3]]],[11,"clone","","",15,[[],["pt2d",3]]],[11,"clone","","",14,[[],["hashablept2d",3]]],[11,"clone","","",16,[[],["ring",3]]],[11,"clone","","",17,[[],["speed",3]]],[11,"clone","","",22,[[],["statistic",4]]],[11,"clone","","",18,[[],["histogram",3]]],[11,"clone","","",19,[[],["time",3]]],[11,"clone","","",20,[[],["unitfmt",3]]],[11,"default","","",4,[[],["distance",3]]],[11,"default","","",5,[[],["duration",3]]],[11,"default","","",18,[[],["histogram",3]]],[11,"cmp","","",4,[[["distance",3]],["ordering",4]]],[11,"cmp","","",5,[[["duration",3]],["ordering",4]]],[11,"cmp","","",7,[[["lonlat",3]],["ordering",4]]],[11,"cmp","","",14,[[["hashablept2d",3]],["ordering",4]]],[11,"cmp","","",22,[[["statistic",4]],["ordering",4]]],[11,"cmp","","",19,[[["time",3]],["ordering",4]]],[11,"eq","","",0,[[["angle",3]]]],[11,"ne","","",0,[[["angle",3]]]],[11,"eq","","",2,[[["gpsbounds",3]]]],[11,"ne","","",2,[[["gpsbounds",3]]]],[11,"eq","","",4,[[["distance",3]]]],[11,"ne","","",4,[[["distance",3]]]],[11,"eq","","",5,[[["duration",3]]]],[11,"ne","","",5,[[["duration",3]]]],[11,"eq","","",7,[[["lonlat",3]]]],[11,"ne","","",7,[[["lonlat",3]]]],[11,"eq","","",9,[[["line",3]]]],[11,"ne","","",9,[[["line",3]]]],[11,"eq","","",10,[[["percent",3]]]],[11,"ne","","",10,[[["percent",3]]]],[11,"eq","","",13,[[["polyline",3]]]],[11,"ne","","",13,[[["polyline",3]]]],[11,"eq","","",15,[[["pt2d",3]]]],[11,"eq","","",14,[[["hashablept2d",3]]]],[11,"ne","","",14,[[["hashablept2d",3]]]],[11,"eq","","",16,[[["ring",3]]]],[11,"ne","","",16,[[["ring",3]]]],[11,"eq","","",17,[[["speed",3]]]],[11,"ne","","",17,[[["speed",3]]]],[11,"eq","","",22,[[["statistic",4]]]],[11,"eq","","",19,[[["time",3]]]],[11,"ne","","",19,[[["time",3]]]],[11,"partial_cmp","","",0,[[["angle",3]],[["ordering",4],["option",4]]]],[11,"lt","","",0,[[["angle",3]]]],[11,"le","","",0,[[["angle",3]]]],[11,"gt","","",0,[[["angle",3]]]],[11,"ge","","",0,[[["angle",3]]]],[11,"partial_cmp","","",4,[[["distance",3]],[["ordering",4],["option",4]]]],[11,"lt","","",4,[[["distance",3]]]],[11,"le","","",4,[[["distance",3]]]],[11,"gt","","",4,[[["distance",3]]]],[11,"ge","","",4,[[["distance",3]]]],[11,"partial_cmp","","",5,[[["duration",3]],[["ordering",4],["option",4]]]],[11,"lt","","",5,[[["duration",3]]]],[11,"le","","",5,[[["duration",3]]]],[11,"gt","","",5,[[["duration",3]]]],[11,"ge","","",5,[[["duration",3]]]],[11,"partial_cmp","","",7,[[["lonlat",3]],[["ordering",4],["option",4]]]],[11,"lt","","",7,[[["lonlat",3]]]],[11,"le","","",7,[[["lonlat",3]]]],[11,"gt","","",7,[[["lonlat",3]]]],[11,"ge","","",7,[[["lonlat",3]]]],[11,"partial_cmp","","",14,[[["hashablept2d",3]],[["ordering",4],["option",4]]]],[11,"lt","","",14,[[["hashablept2d",3]]]],[11,"le","","",14,[[["hashablept2d",3]]]],[11,"gt","","",14,[[["hashablept2d",3]]]],[11,"ge","","",14,[[["hashablept2d",3]]]],[11,"partial_cmp","","",17,[[["speed",3]],[["ordering",4],["option",4]]]],[11,"lt","","",17,[[["speed",3]]]],[11,"le","","",17,[[["speed",3]]]],[11,"gt","","",17,[[["speed",3]]]],[11,"ge","","",17,[[["speed",3]]]],[11,"partial_cmp","","",22,[[["statistic",4]],[["ordering",4],["option",4]]]],[11,"partial_cmp","","",19,[[["time",3]],[["ordering",4],["option",4]]]],[11,"lt","","",19,[[["time",3]]]],[11,"le","","",19,[[["time",3]]]],[11,"gt","","",19,[[["time",3]]]],[11,"ge","","",19,[[["time",3]]]],[11,"fmt","","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","","",2,[[["formatter",3]],["result",6]]],[11,"fmt","","",3,[[["formatter",3]],["result",6]]],[11,"fmt","","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",12,[[["formatter",3]],["result",6]]],[11,"fmt","","",13,[[["formatter",3]],["result",6]]],[11,"fmt","","",15,[[["formatter",3]],["result",6]]],[11,"fmt","","",14,[[["formatter",3]],["result",6]]],[11,"fmt","","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",17,[[["formatter",3]],["result",6]]],[11,"fmt","","",19,[[["formatter",3]],["result",6]]],[11,"fmt","","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",3,[[["formatter",3]],["result",6]]],[11,"fmt","","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",10,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",13,[[["formatter",3]],["result",6]]],[11,"fmt","","",15,[[["formatter",3]],["result",6]]],[11,"fmt","","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",22,[[["formatter",3]],["result",6]]],[11,"fmt","","",19,[[["formatter",3]],["result",6]]],[11,"div","","",0,[[],["angle",3]]],[11,"div","","",4,[[["distance",3]]]],[11,"div","","",4,[[],["distance",3]]],[11,"div","","",4,[[["speed",3]],["duration",3]]],[11,"div","","",5,[[["duration",3]]]],[11,"div","","",5,[[],["duration",3]]],[11,"div","","",17,[[["speed",3]]]],[11,"rem","","",5,[[["duration",3]],["duration",3]]],[11,"sub","","",4,[[["distance",3]],["distance",3]]],[11,"sub","","",5,[[["duration",3]],["duration",3]]],[11,"sub","","",17,[[["speed",3]],["speed",3]]],[11,"sub","","",19,[[["duration",3]],["time",3]]],[11,"sub","","",19,[[["time",3]],["duration",3]]],[11,"add","","",0,[[["angle",3]],["angle",3]]],[11,"add","","",4,[[["distance",3]],["distance",3]]],[11,"add","","",5,[[["duration",3]],["duration",3]]],[11,"add","","",17,[[["speed",3]],["speed",3]]],[11,"add","","",19,[[["duration",3]],["time",3]]],[11,"mul","","",4,[[],["distance",3]]],[11,"mul","","",5,[[],["duration",3]]],[11,"mul","","",5,[[["speed",3]],["distance",3]]],[11,"mul","","",17,[[],["speed",3]]],[11,"mul","","",17,[[["duration",3]],["distance",3]]],[11,"neg","","",0,[[],["angle",3]]],[11,"neg","","",4,[[],["distance",3]]],[11,"neg","","",17,[[],["speed",3]]],[11,"add_assign","","",4,[[["distance",3]]]],[11,"add_assign","","",5,[[["duration",3]]]],[11,"add_assign","","",19,[[["duration",3]]]],[11,"sub_assign","","",4,[[["distance",3]]]],[11,"sub_assign","","",5,[[["duration",3]]]],[11,"hash","","",14,[[]]],[11,"hash","","",19,[[]]],[11,"sum","","",0,[[],["angle",3]]],[11,"sum","","",4,[[],["distance",3]]],[11,"sum","","",5,[[],["duration",3]]],[11,"serialize","","",0,[[],["result",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"serialize","","",2,[[],["result",4]]],[11,"serialize","","",3,[[],["result",4]]],[11,"serialize","","",4,[[],["result",4]]],[11,"serialize","","",5,[[],["result",4]]],[11,"serialize","","",7,[[],["result",4]]],[11,"serialize","","",9,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","","",11,[[],["result",4]]],[11,"serialize","","",13,[[],["result",4]]],[11,"serialize","","",15,[[],["result",4]]],[11,"serialize","","",16,[[],["result",4]]],[11,"serialize","","",17,[[],["result",4]]],[11,"serialize","","",22,[[],["result",4]]],[11,"serialize","","",19,[[],["result",4]]],[11,"deserialize","","",0,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]],[11,"deserialize","","",2,[[],["result",4]]],[11,"deserialize","","",3,[[],["result",4]]],[11,"deserialize","","",4,[[],["result",4]]],[11,"deserialize","","",5,[[],["result",4]]],[11,"deserialize","","",7,[[],["result",4]]],[11,"deserialize","","",9,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","","",11,[[],["result",4]]],[11,"deserialize","","",13,[[],["result",4]]],[11,"deserialize","","",15,[[],["result",4]]],[11,"deserialize","","",16,[[],["result",4]]],[11,"deserialize","","",17,[[],["result",4]]],[11,"deserialize","","",22,[[],["result",4]]],[11,"deserialize","","",19,[[],["result",4]]]],"p":[[3,"Angle"],[3,"Bounds"],[3,"GPSBounds"],[3,"Circle"],[3,"Distance"],[3,"Duration"],[3,"FindClosest"],[3,"LonLat"],[3,"InfiniteLine"],[3,"Line"],[3,"Percent"],[3,"Polygon"],[3,"Triangle"],[3,"PolyLine"],[3,"HashablePt2D"],[3,"Pt2D"],[3,"Ring"],[3,"Speed"],[3,"Histogram"],[3,"Time"],[3,"UnitFmt"],[4,"ArrowCap"],[4,"Statistic"],[8,"HgramValue"]]},\
"headless":{"doc":"","i":[[3,"MAP","headless","",null,null],[12,"__private_field","","",0,null],[3,"SIM","","",null,null],[12,"__private_field","","",1,null],[3,"LOAD","","",null,null],[12,"__private_field","","",2,null],[3,"FinishedTrip","","",null,null],[12,"id","","",3,null],[12,"duration","","",3,null],[12,"distance_crossed","","",3,null],[12,"mode","","",3,null],[12,"capped","","",3,null],[3,"Delays","","",null,null],[12,"per_direction","","",4,null],[3,"Throughput","","",null,null],[12,"per_direction","","",5,null],[3,"AgentPositions","","",null,null],[12,"agents","","",6,null],[3,"AgentPosition","","",null,null],[12,"vehicle_type","","None for pedestrians",7,null],[12,"pos","","The agent\'s current position. For pedestrians, this is…",7,null],[12,"distance_crossed","","The distance crossed so far by the agent, in meters. There…",7,null],[12,"person","","None for buses",7,null],[3,"RoadThroughput","","",null,null],[12,"counts","","",8,null],[3,"TrafficSignalState","","",null,null],[12,"current_stage_idx","","",9,null],[12,"remaining_time","","",9,null],[12,"accepted","","",9,null],[12,"waiting","","",9,null],[3,"BlockedByGraph","","",null,null],[12,"blocked_by","","Each entry indicates that some agent has been stuck in one…",10,null],[3,"LoadSim","","",null,null],[12,"scenario","","",11,null],[12,"modifiers","","",11,null],[12,"edits","","",11,null],[12,"rng_seed","","",11,null],[12,"opts","","",11,null],[5,"main","","",null,[[]]],[5,"serve_req","","",null,[[["body",3],["request",3]]]],[5,"handle_command","","",null,[[["vec",3],["hashmap",3],["loadsim",3],["sim",3],["map",3]],[["result",4],["string",3],["box",3]]]],[5,"export_geometry","","",null,[[["map",3],["intersectionid",3]],["geojson",4]]],[5,"export_all_geometry","","",null,[[["map",3]],["geojson",4]]],[11,"setup","","",11,[[["timer",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,"vzip","","",0,[[]]],[11,"into_any","","",0,[[["box",3]],[["any",8],["box",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","","",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]],[["any",8],["box",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,"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]],[["any",8],["box",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","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",3,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",3,[[],["any",8]]],[11,"as_any_mut","","",3,[[],["any",8]]],[11,"into_any_arc","","",3,[[["arc",3]],[["arc",3],["any",8]]]],[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,"into_any","","",4,[[["box",3]],[["any",8],["box",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]],[["any",8],["box",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]],[["any",8],["box",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,"into_any_arc","","",6,[[["arc",3]],[["arc",3],["any",8]]]],[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,"into_any","","",7,[[["box",3]],[["any",8],["box",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]],[["any",8],["box",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,"into_any_arc","","",8,[[["arc",3]],[["arc",3],["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]],[["any",8],["box",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,"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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",10,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",10,[[],["any",8]]],[11,"as_any_mut","","",10,[[],["any",8]]],[11,"into_any_arc","","",10,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",11,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",11,[[],["any",8]]],[11,"as_any_mut","","",11,[[],["any",8]]],[11,"into_any_arc","","",11,[[["arc",3]],[["arc",3],["any",8]]]],[11,"deref","","",0,[[],["rwlock",3]]],[11,"deref","","",1,[[],["rwlock",3]]],[11,"deref","","",2,[[],["rwlock",3]]],[11,"initialize","","",0,[[]]],[11,"initialize","","",1,[[]]],[11,"initialize","","",2,[[]]],[11,"serialize","","",3,[[],["result",4]]],[11,"serialize","","",4,[[],["result",4]]],[11,"serialize","","",5,[[],["result",4]]],[11,"serialize","","",6,[[],["result",4]]],[11,"serialize","","",7,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","","",9,[[],["result",4]]],[11,"serialize","","",10,[[],["result",4]]],[11,"deserialize","","",11,[[],["result",4]]]],"p":[[3,"MAP"],[3,"SIM"],[3,"LOAD"],[3,"FinishedTrip"],[3,"Delays"],[3,"Throughput"],[3,"AgentPositions"],[3,"AgentPosition"],[3,"RoadThroughput"],[3,"TrafficSignalState"],[3,"BlockedByGraph"],[3,"LoadSim"]]},\
"import_traffic":{"doc":"","i":[[3,"Input","import_traffic","",null,null],[12,"scenario_name","","",0,null],[12,"people","","",0,null],[5,"main","","",null,[[]]],[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,"vzip","","",0,[[]]],[11,"into_any","","",0,[[["box",3]],[["any",8],["box",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,"deserialize","","",0,[[],["result",4]]]],"p":[[3,"Input"]]},\
"importer":{"doc":"It\'s assumed that the importer is run with the current…","i":[[3,"Job","importer","",null,null],[12,"city","","",0,null],[12,"osm_to_raw","","",0,null],[12,"raw_to_map","","",0,null],[12,"scenario","","",0,null],[12,"city_overview","","",0,null],[12,"skip_ch","","",0,null],[12,"keep_bldg_tags","","",0,null],[12,"only_map","","",0,null],[12,"oneshot","","",0,null],[12,"oneshot_clip","","",0,null],[12,"oneshot_drive_on_left","","",0,null],[12,"oneshot_dont_infer_sidewalks","","",0,null],[5,"main","","",null,[[]]],[5,"oneshot","","",null,[[["option",4],["string",3]]]],[0,"berlin","","",null,null],[3,"Record","importer::berlin","",null,null],[12,"raumid","","",1,null],[12,"e_e","","",1,null],[5,"input","","",null,[[["importerconfiguration",3],["timer",3]]]],[5,"osm_to_raw","","",null,[[["importerconfiguration",3],["timer",3]]]],[5,"correlate_population","","",null,[[["timer",3]]]],[5,"distribute_residents","","",null,[[["timer",3],["map",3]]]],[0,"configuration","importer","",null,null],[3,"ImporterConfiguration","importer::configuration","",null,null],[12,"curl","","",2,null],[12,"osmconvert","","",2,null],[12,"unzip","","",2,null],[12,"gunzip","","",2,null],[12,"gunzip_args","","",2,null],[5,"load_configuration","","",null,[[],["importerconfiguration",3]]],[0,"dependencies","importer","",null,null],[5,"are_dependencies_callable","importer::dependencies","",null,[[["importerconfiguration",3]]]],[5,"is_program_callable","","",null,[[["asref",8],["osstr",3]]]],[0,"generic","importer","",null,null],[3,"GenericCityImporter","importer::generic","Importing a new city can be done just by filling out this…",null,null],[12,"osm_url","","The URL to a .osm or .osm.pbf file containing the entire…",3,null],[12,"map_config","","",3,null],[12,"onstreet_parking","","",3,null],[12,"public_offstreet_parking","","",3,null],[12,"private_offstreet_parking","","",3,null],[12,"elevation","","If provided, pull elevation data from this SRTM file. The…",3,null],[12,"include_railroads","","OSM railway=rail will be included as light rail if so.…",3,null],[11,"osm_to_raw","","",3,[[["importerconfiguration",3],["mapname",3],["timer",3]]]],[0,"leeds","importer","",null,null],[5,"input","importer::leeds","",null,[[["importerconfiguration",3]]]],[5,"osm_to_raw","","",null,[[["importerconfiguration",3],["timer",3]]]],[0,"london","importer","",null,null],[5,"input","importer::london","",null,[[["importerconfiguration",3]]]],[5,"osm_to_raw","","",null,[[["importerconfiguration",3],["timer",3]]]],[0,"seattle","importer","",null,null],[3,"TripRecord","importer::seattle","",null,null],[12,"shape_id","","",4,null],[12,"trip_id","","",4,null],[3,"StopTimeRecord","","",null,null],[12,"trip_id","","",5,null],[12,"arrival_time","","",5,null],[5,"input","","",null,[[["importerconfiguration",3],["timer",3]]]],[5,"osm_to_raw","","",null,[[["importerconfiguration",3],["timer",3]]]],[5,"adjust_private_parking","","",null,[[["scenario",3],["map",3]]]],[5,"add_gtfs_schedules","","This import from GTFS:",null,[[["map",3]]]],[5,"match_parcels_to_buildings","","Match OSM buildings to parcels, scraping the number of…",null,[[["timer",3],["map",3]]]],[0,"utils","importer","",null,null],[5,"download","importer::utils","",null,[[["importerconfiguration",3]]]],[5,"download_kml","","",null,[[["gpsbounds",3],["timer",3]]]],[5,"osmconvert","","",null,[[["importerconfiguration",3],["string",3]]]],[5,"raw_to_map","","",null,[[["mapname",3],["timer",3]],["map",3]]],[11,"from","importer","",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]],[["any",8],["box",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","importer::berlin","",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]],[["any",8],["box",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","importer::configuration","",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]],[["any",8],["box",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","importer::generic","",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]],[["any",8],["box",3]]]],[11,"into_any_rc","","",3,[[["rc",3]],[["any",8],["rc",3]]]],[11,"as_any","","",3,[[],["any",8]]],[11,"as_any_mut","","",3,[[],["any",8]]],[11,"into_any_arc","","",3,[[["arc",3]],[["arc",3],["any",8]]]],[11,"from","importer::seattle","",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]],[["any",8],["box",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]],[["any",8],["box",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,"default","importer::configuration","",2,[[],["importerconfiguration",3]]],[11,"fmt","importer::berlin","",1,[[["formatter",3]],["result",6]]],[11,"fmt","importer::seattle","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"serialize","importer::generic","",3,[[],["result",4]]],[11,"deserialize","importer::berlin","",1,[[],["result",4]]],[11,"deserialize","importer::configuration","",2,[[],["result",4]]],[11,"deserialize","importer::generic","",3,[[],["result",4]]],[11,"deserialize","importer::seattle","",4,[[],["result",4]]],[11,"deserialize","","",5,[[],["result",4]]]],"p":[[3,"Job"],[3,"Record"],[3,"ImporterConfiguration"],[3,"GenericCityImporter"],[3,"TripRecord"],[3,"StopTimeRecord"]]},\
diff --git a/rustdoc/src/experiment/movement.rs.html b/rustdoc/src/experiment/movement.rs.html
index 7f2dc95cdf..2051eda5f6 100644
--- a/rustdoc/src/experiment/movement.rs.html
+++ b/rustdoc/src/experiment/movement.rs.html
@@ -240,11 +240,35 @@
237
238
239
+
240
+
241
+
242
+
243
+
244
+
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+
260
+
261
+
262
+
263
use std::collections::{HashMap, HashSet};
use abstutil::MultiMap;
-use geom::{Angle, Circle, Distance, Pt2D, Speed};
+use geom::{Angle, Circle, Distance, PolyLine, Pt2D, Speed};
use map_gui::ID;
use map_model::{BuildingID, Direction, IntersectionID, LaneType, RoadID};
use widgetry::EventCtx;
@@ -293,6 +317,44 @@
}
}
+ fn pos_to_on(&self, app: &App, pos: Pt2D) -> Option<On> {
+
+
+ let (valid_roads, valid_intersections) = self.on.get_connections(app);
+
+
+ for id in app
+ .draw_map
+ .get_matching_objects(Circle::new(pos, Distance::meters(3.0)).get_bounds())
+ {
+ if let ID::Intersection(i) = id {
+ if valid_intersections.contains(&i) && app.map.get_i(i).polygon.contains_pt(pos) {
+ return Some(On::Intersection(i));
+ }
+ } else if let ID::Road(r) = id {
+ let road = app.map.get_r(r);
+ if valid_roads.contains(&r)
+ && !road.is_light_rail()
+ && road.get_thick_polygon(&app.map).contains_pt(pos)
+ {
+
+ let pt_on_center_line = road.center_pts.project_pt(pos);
+ if let Some((dist, _)) = road.center_pts.dist_along_of_point(pt_on_center_line)
+ {
+ return Some(On::Road(r, dist));
+ } else {
+ error!(
+ "{} snapped to {} on {}, but dist_along_of_point failed",
+ pos, pt_on_center_line, r
+ );
+ return None;
+ }
+ }
+ }
+ }
+ None
+ }
+
fn apply_displacement(
&mut self,
ctx: &mut EventCtx,
@@ -302,47 +364,8 @@
recurse: bool,
) -> Vec<BuildingID> {
let new_pos = self.pos.offset(dx, dy);
-
-
-
- let (valid_roads, valid_intersections) = self.on.get_connections(app);
-
-
- let mut on = None;
- for id in app
- .draw_map
- .get_matching_objects(Circle::new(self.pos, Distance::meters(3.0)).get_bounds())
- {
- if let ID::Intersection(i) = id {
- if valid_intersections.contains(&i) && app.map.get_i(i).polygon.contains_pt(new_pos)
- {
- on = Some(On::Intersection(i));
- break;
- }
- } else if let ID::Road(r) = id {
- let road = app.map.get_r(r);
- if valid_roads.contains(&r)
- && !road.is_light_rail()
- && road.get_thick_polygon(&app.map).contains_pt(new_pos)
- {
-
- let pt_on_center_line = road.center_pts.project_pt(new_pos);
- if let Some((dist, _)) = road.center_pts.dist_along_of_point(pt_on_center_line)
- {
- on = Some(On::Road(r, dist));
- } else {
- error!(
- "{} snapped to {} on {}, but dist_along_of_point failed",
- new_pos, pt_on_center_line, r
- );
- }
- break;
- }
- }
- }
-
let mut buildings_passed = Vec::new();
- if let Some(new_on) = on {
+ if let Some(new_on) = self.pos_to_on(app, new_pos) {
self.pos = new_pos;
ctx.canvas.center_on_map_pt(self.pos);
@@ -355,8 +378,6 @@
self.on = new_on;
} else {
-
-
@@ -369,10 +390,37 @@
buildings_passed.extend(self.apply_displacement(ctx, app, 0.0, dy, false));
}
-
-
+
if self.pos == orig {
- buildings_passed.extend(self.apply_displacement(ctx, app, -dx, -dy, false));
+ if true {
+
+
+ buildings_passed.extend(self.apply_displacement(ctx, app, -dx, -dy, false));
+ } else {
+
+ let old_ring = match self.on {
+ On::Intersection(i) => app.map.get_i(i).polygon.clone().into_ring(),
+ On::Road(r, _) => {
+ let road = app.map.get_r(r);
+ road.center_pts
+ .to_thick_ring(2.0 * road.get_half_width(&app.map))
+ }
+ };
+
+
+ if let Some(pt) = old_ring
+ .all_intersections(&PolyLine::must_new(vec![self.pos, new_pos]))
+ .get(0)
+ {
+ buildings_passed.extend(self.apply_displacement(
+ ctx,
+ app,
+ pt.x() - self.pos.x(),
+ pt.y() - self.pos.y(),
+ false,
+ ));
+ }
+ }
}
}
}
diff --git a/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-f38555f90777146b/out/built.rs.html b/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-f38555f90777146b/out/built.rs.html
index 3e85f2db63..7fc885da8d 100644
--- a/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-f38555f90777146b/out/built.rs.html
+++ b/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-f38555f90777146b/out/built.rs.html
@@ -114,7 +114,7 @@
pub const RUSTDOC_VERSION: &str = "rustdoc 1.48.0 (7eac88abb 2020-11-16)";
-pub const BUILT_TIME_UTC: &str = "Sun, 06 Dec 2020 05:10:43 +0000";
+pub const BUILT_TIME_UTC: &str = "Mon, 07 Dec 2020 03:44:42 +0000";
pub const CFG_TARGET_ARCH: &str = "x86_64";
diff --git a/rustdoc/src/geom/polyline.rs.html b/rustdoc/src/geom/polyline.rs.html
index c0c4009a78..50a76cb0e3 100644
--- a/rustdoc/src/geom/polyline.rs.html
+++ b/rustdoc/src/geom/polyline.rs.html
@@ -866,6 +866,8 @@
863
864
865
+866
+867
use std::collections::HashSet;
use std::fmt;
@@ -1314,11 +1316,13 @@
result
}
+
pub fn make_polygons(&self, width: Distance) -> Polygon {
self.make_polygons_with_miter_threshold(width, MITER_THRESHOLD)
}
+
pub fn make_polygons_with_miter_threshold(
&self,
width: Distance,